diff --git a/src/google/adk/cli/browser/assets/audio-processor.js b/src/google/adk/cli/browser/assets/audio-processor.js index 4a5628923f..cec74f8304 100644 --- a/src/google/adk/cli/browser/assets/audio-processor.js +++ b/src/google/adk/cli/browser/assets/audio-processor.js @@ -1,5 +1,5 @@ /** - * Copyright 2026 Google LLC + * Copyright 2025 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,7 +26,7 @@ class AudioProcessor extends AudioWorkletProcessor { const input = inputs[0]; if (input.length > 0) { let audioData = input[0]; // Get first channel's data - + if (this.resampleRatio !== 1) { audioData = this.resample(audioData); } diff --git a/src/google/adk/cli/browser/assets/config/runtime-config.json b/src/google/adk/cli/browser/assets/config/runtime-config.json index e2628ca7cd..c8f49d882d 100644 --- a/src/google/adk/cli/browser/assets/config/runtime-config.json +++ b/src/google/adk/cli/browser/assets/config/runtime-config.json @@ -1,3 +1,3 @@ { "backendUrl": "" -} +} \ No newline at end of file diff --git a/src/google/adk/cli/browser/chunk-2LZ42ZOW.js b/src/google/adk/cli/browser/chunk-2LZ42ZOW.js deleted file mode 100644 index 5e2e957a6a..0000000000 --- a/src/google/adk/cli/browser/chunk-2LZ42ZOW.js +++ /dev/null @@ -1 +0,0 @@ -import{a as _,c as N,d as F}from"./chunk-LI24J5PW.js";import{a as U}from"./chunk-JDPVSVO4.js";import{a as C}from"./chunk-XMBKBASC.js";import"./chunk-APNCZOFE.js";import"./chunk-ST54LLJ3.js";import"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import{m as P}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{H as A,M as z,N as R,Y as t}from"./chunk-QFMJV7VH.js";import{M as W,Q as G,a as T,g as u,i as S}from"./chunk-JRNAXTJ7.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";var D=u(e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),"drawStartState"),Y=u(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),I=u((e,i)=>{let s=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),g=s.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",g.width+2*t().state.padding).attr("height",g.height+2*t().state.padding).attr("rx",t().state.radius),s},"drawSimpleState"),$=u((e,i)=>{let s=u(function(c,m,w){let E=c.append("tspan").attr("x",2*t().state.padding).text(m);w||E.attr("dy",t().state.textHeight)},"addTspan"),n=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),h=n.height,x=e.append("text").attr("x",t().state.padding).attr("y",h+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description"),a=!0,d=!0;i.descriptions.forEach(function(c){a||(s(x,c,d),d=!1),a=!1});let y=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+h+t().state.dividerMargin/2).attr("y2",t().state.padding+h+t().state.dividerMargin/2).attr("class","descr-divider"),p=x.node().getBBox(),o=Math.max(p.width,n.width);return y.attr("x2",o+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",o+2*t().state.padding).attr("height",p.height+h+2*t().state.padding).attr("rx",t().state.radius),e},"drawDescrState"),q=u((e,i,s)=>{let g=t().state.padding,n=2*t().state.padding,h=e.node().getBBox(),x=h.width,a=h.x,d=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),p=d.node().getBBox().width+n,o=Math.max(p,x);o===x&&(o=o+n);let c,m=e.node().getBBox();i.doc,c=a-g,p>x&&(c=(x-o)/2+g),Math.abs(a-m.x)x&&(c=a-(p-x)/2);let w=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",c).attr("y",w).attr("class",s?"alt-composit":"composit").attr("width",o).attr("height",m.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),d.attr("x",c+g),p<=x&&d.attr("x",a+(o-n)/2-p/2+g),e.insert("rect",":first-child").attr("x",c).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",c).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",o).attr("height",m.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},"addTitleAndBox"),Z=u(e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),"drawEndState"),j=u((e,i)=>{let s=t().state.forkWidth,g=t().state.forkHeight;if(i.parentId){let n=s;s=g,g=n}return e.append("rect").style("stroke","black").style("fill","black").attr("width",s).attr("height",g).attr("x",t().state.padding).attr("y",t().state.padding)},"drawForkJoinState"),K=u((e,i,s,g)=>{let n=0,h=g.append("text");h.style("text-anchor","start"),h.attr("class","noteText");let x=e.replace(/\r\n/g,"
");x=x.replace(/\n/g,"
");let a=x.split(z.lineBreakRegex),d=1.25*t().state.noteMargin;for(let y of a){let p=y.trim();if(p.length>0){let o=h.append("tspan");if(o.text(p),d===0){let c=o.node().getBBox();d+=c.height}n+=d,o.attr("x",i+t().state.noteMargin),o.attr("y",s+n+1.25*t().state.noteMargin)}}return{textWidth:h.node().getBBox().width,textHeight:n}},"_drawLongText"),Q=u((e,i)=>{i.attr("class","state-note");let s=i.append("rect").attr("x",0).attr("y",t().state.padding),g=i.append("g"),{textWidth:n,textHeight:h}=K(e,0,0,g);return s.attr("height",h+2*t().state.noteMargin),s.attr("width",n+t().state.noteMargin*2),s},"drawNote"),O=u(function(e,i){let s=i.id,g={id:s,label:i.id,width:0,height:0},n=e.append("g").attr("id",s).attr("class","stateGroup");i.type==="start"&&D(n),i.type==="end"&&Z(n),(i.type==="fork"||i.type==="join")&&j(n,i),i.type==="note"&&Q(i.note.text,n),i.type==="divider"&&Y(n),i.type==="default"&&i.descriptions.length===0&&I(n,i),i.type==="default"&&i.descriptions.length>0&&$(n,i);let h=n.node().getBBox();return g.width=h.width+2*t().state.padding,g.height=h.height+2*t().state.padding,g},"drawState"),J=0,V=u(function(e,i,s){let g=u(function(d){switch(d){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}},"getRelationType");i.points=i.points.filter(d=>!Number.isNaN(d.y));let n=i.points,h=W().x(function(d){return d.x}).y(function(d){return d.y}).curve(G),x=e.append("path").attr("d",h(n)).attr("id","edge"+J).attr("class","transition"),a="";if(t().state.arrowMarkerAbsolute&&(a=A(!0)),x.attr("marker-end","url("+a+"#"+g(N.relationType.DEPENDENCY)+"End)"),s.title!==void 0){let d=e.append("g").attr("class","stateLabel"),{x:y,y:p}=P.calcLabelPosition(i.points),o=z.getRows(s.title),c=0,m=[],w=0,E=0;for(let r=0;r<=o.length;r++){let f=d.append("text").attr("text-anchor","middle").text(o[r]).attr("x",y).attr("y",p+c),l=f.node().getBBox();w=Math.max(w,l.width),E=Math.min(E,l.x),S.info(l.x,y,p+c),c===0&&(c=f.node().getBBox().height,S.info("Title height",c,p)),m.push(f)}let k=c*o.length;if(o.length>1){let r=(o.length-1)*c*.5;m.forEach((f,l)=>f.attr("y",p+l*c-r)),k=c*o.length}let M=d.node().getBBox();d.insert("rect",":first-child").attr("class","box").attr("x",y-w/2-t().state.padding/2).attr("y",p-k/2-t().state.padding/2-3.5).attr("width",w+t().state.padding).attr("height",k+t().state.padding),S.info(M)}J++},"drawEdge"),b,L={},tt=u(function(){},"setConf"),et=u(function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),at=u(function(e,i,s,g){b=t().state;let n=t().securityLevel,h;n==="sandbox"&&(h=T("#i"+i));let x=n==="sandbox"?T(h.nodes()[0].contentDocument.body):T("body"),a=n==="sandbox"?h.nodes()[0].contentDocument:document;S.debug("Rendering diagram "+e);let d=x.select(`[id='${i}']`);et(d);let y=g.db.getRootDoc();X(y,d,void 0,!1,x,a,g);let p=b.padding,o=d.node().getBBox(),c=o.width+p*2,m=o.height+p*2,w=c*1.75;R(d,m,w,b.useMaxWidth),d.attr("viewBox",`${o.x-b.padding} ${o.y-b.padding} `+c+" "+m)},"draw"),it=u(e=>e?e.length*b.fontSizeFactor:1,"getLabelWidth"),X=u((e,i,s,g,n,h,x)=>{let a=new C({compound:!0,multigraph:!0}),d,y=!0;for(d=0;d{let B=l.parentElement,v=0,H=0;B&&(B.parentElement&&(v=B.parentElement.getBBox().width),H=parseInt(B.getAttribute("data-x-shift"),10),Number.isNaN(H)&&(H=0)),l.setAttribute("x1",0-H+8),l.setAttribute("x2",v-H-8)})):S.debug("No Node "+r+": "+JSON.stringify(a.node(r)))});let k=E.getBBox();a.edges().forEach(function(r){r!==void 0&&a.edge(r)!==void 0&&(S.debug("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(a.edge(r))),V(i,a.edge(r),a.edge(r).relation))}),k=E.getBBox();let M={id:s||"root",label:s||"root",width:0,height:0};return M.width=k.width+2*b.padding,M.height=k.height+2*b.padding,S.debug("Doc rendered",M,a),M},"renderDoc"),rt={setConf:tt,draw:at},St={parser:_,get db(){return new N(1)},renderer:rt,styles:F,init:u(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{St as diagram}; diff --git a/src/google/adk/cli/browser/chunk-2RGIIJSP.js b/src/google/adk/cli/browser/chunk-2RGIIJSP.js new file mode 100644 index 0000000000..6e1eae1b18 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-2RGIIJSP.js @@ -0,0 +1 @@ +import{a as e,b as r}from"./chunk-GO6ZTN3G.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{e as ArchitectureModule,r as createArchitectureServices}; diff --git a/src/google/adk/cli/browser/chunk-2UTQOSKI.js b/src/google/adk/cli/browser/chunk-2UTQOSKI.js new file mode 100644 index 0000000000..af04becf75 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-2UTQOSKI.js @@ -0,0 +1,36 @@ +import{a as Ke}from"./chunk-DMWOYWYQ.js";import{a as je}from"./chunk-SRCUB3EX.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import{a as Ne}from"./chunk-YVVLWU7S.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{a as ke}from"./chunk-PDRDFWTH.js";import{b as Qe,c as Je,d as ce,f as ge}from"./chunk-4V3PIBXT.js";import{C as Ze,G as qe}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as Ge,G as Ue,O as Ye,R as Xe,S as He,T as We,U as Ve,V as ze,W as Be,X as $e,Y as fe,r as Pe}from"./chunk-37QI3DOO.js";import{a as be,g as ct,i as Te}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as ee,b as le,e as Ee,h as pr,j as Zt}from"./chunk-RMXJBC7V.js";var Ce=Ee((ne,Le)=>{"use strict";(function(w,N){typeof ne=="object"&&typeof Le=="object"?Le.exports=N():typeof define=="function"&&define.amd?define([],N):typeof ne=="object"?ne.layoutBase=N():w.layoutBase=N()})(ne,function(){return(function(E){var w={};function N(u){if(w[u])return w[u].exports;var l=w[u]={i:u,l:!1,exports:{}};return E[u].call(l.exports,l,l.exports,N),l.l=!0,l.exports}return N.m=E,N.c=w,N.i=function(u){return u},N.d=function(u,l,a){N.o(u,l)||Object.defineProperty(u,l,{configurable:!1,enumerable:!0,get:a})},N.n=function(u){var l=u&&u.__esModule?function(){return u.default}:function(){return u};return N.d(l,"a",l),l},N.o=function(u,l){return Object.prototype.hasOwnProperty.call(u,l)},N.p="",N(N.s=28)})([(function(E,w,N){"use strict";function u(){}u.QUALITY=1,u.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,u.DEFAULT_INCREMENTAL=!1,u.DEFAULT_ANIMATION_ON_LAYOUT=!0,u.DEFAULT_ANIMATION_DURING_LAYOUT=!1,u.DEFAULT_ANIMATION_PERIOD=50,u.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,u.DEFAULT_GRAPH_MARGIN=15,u.NODE_DIMENSIONS_INCLUDE_LABELS=!1,u.SIMPLE_NODE_SIZE=40,u.SIMPLE_NODE_HALF_SIZE=u.SIMPLE_NODE_SIZE/2,u.EMPTY_COMPOUND_NODE_SIZE=40,u.MIN_EDGE_LENGTH=1,u.WORLD_BOUNDARY=1e6,u.INITIAL_WORLD_BOUNDARY=u.WORLD_BOUNDARY/1e3,u.WORLD_CENTER_X=1200,u.WORLD_CENTER_Y=900,E.exports=u}),(function(E,w,N){"use strict";var u=N(2),l=N(8),a=N(9);function r(f,e,g){u.call(this,g),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=g,this.bendpoints=[],this.source=f,this.target=e}r.prototype=Object.create(u.prototype);for(var n in u)r[n]=u[n];r.prototype.getSource=function(){return this.source},r.prototype.getTarget=function(){return this.target},r.prototype.isInterGraph=function(){return this.isInterGraph},r.prototype.getLength=function(){return this.length},r.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},r.prototype.getBendpoints=function(){return this.bendpoints},r.prototype.getLca=function(){return this.lca},r.prototype.getSourceInLca=function(){return this.sourceInLca},r.prototype.getTargetInLca=function(){return this.targetInLca},r.prototype.getOtherEnd=function(f){if(this.source===f)return this.target;if(this.target===f)return this.source;throw"Node is not incident with this edge"},r.prototype.getOtherEndInGraph=function(f,e){for(var g=this.getOtherEnd(f),t=e.getGraphManager().getRoot();;){if(g.getOwner()==e)return g;if(g.getOwner()==t)break;g=g.getOwner().getParent()}return null},r.prototype.updateLength=function(){var f=new Array(4);this.isOverlapingSourceAndTarget=l.getIntersection(this.target.getRect(),this.source.getRect(),f),this.isOverlapingSourceAndTarget||(this.lengthX=f[0]-f[2],this.lengthY=f[1]-f[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},r.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},E.exports=r}),(function(E,w,N){"use strict";function u(l){this.vGraphObject=l}E.exports=u}),(function(E,w,N){"use strict";var u=N(2),l=N(10),a=N(13),r=N(0),n=N(16),f=N(5);function e(t,i,s,c){s==null&&c==null&&(c=i),u.call(this,c),t.graphManager!=null&&(t=t.graphManager),this.estimatedSize=l.MIN_VALUE,this.inclusionTreeDepth=l.MAX_VALUE,this.vGraphObject=c,this.edges=[],this.graphManager=t,s!=null&&i!=null?this.rect=new a(i.x,i.y,s.width,s.height):this.rect=new a}e.prototype=Object.create(u.prototype);for(var g in u)e[g]=u[g];e.prototype.getEdges=function(){return this.edges},e.prototype.getChild=function(){return this.child},e.prototype.getOwner=function(){return this.owner},e.prototype.getWidth=function(){return this.rect.width},e.prototype.setWidth=function(t){this.rect.width=t},e.prototype.getHeight=function(){return this.rect.height},e.prototype.setHeight=function(t){this.rect.height=t},e.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},e.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},e.prototype.getCenter=function(){return new f(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},e.prototype.getLocation=function(){return new f(this.rect.x,this.rect.y)},e.prototype.getRect=function(){return this.rect},e.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},e.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},e.prototype.setRect=function(t,i){this.rect.x=t.x,this.rect.y=t.y,this.rect.width=i.width,this.rect.height=i.height},e.prototype.setCenter=function(t,i){this.rect.x=t-this.rect.width/2,this.rect.y=i-this.rect.height/2},e.prototype.setLocation=function(t,i){this.rect.x=t,this.rect.y=i},e.prototype.moveBy=function(t,i){this.rect.x+=t,this.rect.y+=i},e.prototype.getEdgeListToNode=function(t){var i=[],s,c=this;return c.edges.forEach(function(o){if(o.target==t){if(o.source!=c)throw"Incorrect edge source!";i.push(o)}}),i},e.prototype.getEdgesBetween=function(t){var i=[],s,c=this;return c.edges.forEach(function(o){if(!(o.source==c||o.target==c))throw"Incorrect edge source and/or target";(o.target==t||o.source==t)&&i.push(o)}),i},e.prototype.getNeighborsList=function(){var t=new Set,i=this;return i.edges.forEach(function(s){if(s.source==i)t.add(s.target);else{if(s.target!=i)throw"Incorrect incidency!";t.add(s.source)}}),t},e.prototype.withChildren=function(){var t=new Set,i,s;if(t.add(this),this.child!=null)for(var c=this.child.getNodes(),o=0;oi?(this.rect.x-=(this.labelWidth-i)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(i+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(s+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>s?(this.rect.y-=(this.labelHeight-s)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(s+this.labelHeight))}}},e.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==l.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},e.prototype.transform=function(t){var i=this.rect.x;i>r.WORLD_BOUNDARY?i=r.WORLD_BOUNDARY:i<-r.WORLD_BOUNDARY&&(i=-r.WORLD_BOUNDARY);var s=this.rect.y;s>r.WORLD_BOUNDARY?s=r.WORLD_BOUNDARY:s<-r.WORLD_BOUNDARY&&(s=-r.WORLD_BOUNDARY);var c=new f(i,s),o=t.inverseTransformPoint(c);this.setLocation(o.x,o.y)},e.prototype.getLeft=function(){return this.rect.x},e.prototype.getRight=function(){return this.rect.x+this.rect.width},e.prototype.getTop=function(){return this.rect.y},e.prototype.getBottom=function(){return this.rect.y+this.rect.height},e.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},E.exports=e}),(function(E,w,N){"use strict";var u=N(0);function l(){}for(var a in u)l[a]=u[a];l.MAX_ITERATIONS=2500,l.DEFAULT_EDGE_LENGTH=50,l.DEFAULT_SPRING_STRENGTH=.45,l.DEFAULT_REPULSION_STRENGTH=4500,l.DEFAULT_GRAVITY_STRENGTH=.4,l.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,l.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,l.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,l.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,l.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,l.COOLING_ADAPTATION_FACTOR=.33,l.ADAPTATION_LOWER_NODE_LIMIT=1e3,l.ADAPTATION_UPPER_NODE_LIMIT=5e3,l.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,l.MAX_NODE_DISPLACEMENT=l.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,l.MIN_REPULSION_DIST=l.DEFAULT_EDGE_LENGTH/10,l.CONVERGENCE_CHECK_PERIOD=100,l.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,l.MIN_EDGE_LENGTH=1,l.GRID_CALCULATION_CHECK_PERIOD=10,E.exports=l}),(function(E,w,N){"use strict";function u(l,a){l==null&&a==null?(this.x=0,this.y=0):(this.x=l,this.y=a)}u.prototype.getX=function(){return this.x},u.prototype.getY=function(){return this.y},u.prototype.setX=function(l){this.x=l},u.prototype.setY=function(l){this.y=l},u.prototype.getDifference=function(l){return new DimensionD(this.x-l.x,this.y-l.y)},u.prototype.getCopy=function(){return new u(this.x,this.y)},u.prototype.translate=function(l){return this.x+=l.width,this.y+=l.height,this},E.exports=u}),(function(E,w,N){"use strict";var u=N(2),l=N(10),a=N(0),r=N(7),n=N(3),f=N(1),e=N(13),g=N(12),t=N(11);function i(c,o,L){u.call(this,L),this.estimatedSize=l.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=c,o!=null&&o instanceof r?this.graphManager=o:o!=null&&o instanceof Layout&&(this.graphManager=o.graphManager)}i.prototype=Object.create(u.prototype);for(var s in u)i[s]=u[s];i.prototype.getNodes=function(){return this.nodes},i.prototype.getEdges=function(){return this.edges},i.prototype.getGraphManager=function(){return this.graphManager},i.prototype.getParent=function(){return this.parent},i.prototype.getLeft=function(){return this.left},i.prototype.getRight=function(){return this.right},i.prototype.getTop=function(){return this.top},i.prototype.getBottom=function(){return this.bottom},i.prototype.isConnected=function(){return this.isConnected},i.prototype.add=function(c,o,L){if(o==null&&L==null){var p=c;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(p)>-1)throw"Node already in graph!";return p.owner=this,this.getNodes().push(p),p}else{var y=c;if(!(this.getNodes().indexOf(o)>-1&&this.getNodes().indexOf(L)>-1))throw"Source or target not in graph!";if(!(o.owner==L.owner&&o.owner==this))throw"Both owners must be this graph!";return o.owner!=L.owner?null:(y.source=o,y.target=L,y.isInterGraph=!1,this.getEdges().push(y),o.edges.push(y),L!=o&&L.edges.push(y),y)}},i.prototype.remove=function(c){var o=c;if(c instanceof n){if(o==null)throw"Node is null!";if(!(o.owner!=null&&o.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var L=o.edges.slice(),p,y=L.length,C=0;C-1&&b>-1))throw"Source and/or target doesn't know this edge!";p.source.edges.splice(A,1),p.target!=p.source&&p.target.edges.splice(b,1);var R=p.source.owner.getEdges().indexOf(p);if(R==-1)throw"Not in owner's edge list!";p.source.owner.getEdges().splice(R,1)}},i.prototype.updateLeftTop=function(){for(var c=l.MAX_VALUE,o=l.MAX_VALUE,L,p,y,C=this.getNodes(),R=C.length,A=0;AL&&(c=L),o>p&&(o=p)}return c==l.MAX_VALUE?null:(C[0].getParent().paddingLeft!=null?y=C[0].getParent().paddingLeft:y=this.margin,this.left=o-y,this.top=c-y,new g(this.left,this.top))},i.prototype.updateBounds=function(c){for(var o=l.MAX_VALUE,L=-l.MAX_VALUE,p=l.MAX_VALUE,y=-l.MAX_VALUE,C,R,A,b,B,Y=this.nodes,j=Y.length,I=0;IC&&(o=C),LA&&(p=A),yC&&(o=C),LA&&(p=A),y=this.nodes.length){var j=0;L.forEach(function(I){I.owner==c&&j++}),j==this.nodes.length&&(this.isConnected=!0)}},E.exports=i}),(function(E,w,N){"use strict";var u,l=N(1);function a(r){u=N(6),this.layout=r,this.graphs=[],this.edges=[]}a.prototype.addRoot=function(){var r=this.layout.newGraph(),n=this.layout.newNode(null),f=this.add(r,n);return this.setRootGraph(f),this.rootGraph},a.prototype.add=function(r,n,f,e,g){if(f==null&&e==null&&g==null){if(r==null)throw"Graph is null!";if(n==null)throw"Parent node is null!";if(this.graphs.indexOf(r)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(r),r.parent!=null)throw"Already has a parent!";if(n.child!=null)throw"Already has a child!";return r.parent=n,n.child=r,r}else{g=f,e=n,f=r;var t=e.getOwner(),i=g.getOwner();if(!(t!=null&&t.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(i!=null&&i.getGraphManager()==this))throw"Target not in this graph mgr!";if(t==i)return f.isInterGraph=!1,t.add(f,e,g);if(f.isInterGraph=!0,f.source=e,f.target=g,this.edges.indexOf(f)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(f),!(f.source!=null&&f.target!=null))throw"Edge source and/or target is null!";if(!(f.source.edges.indexOf(f)==-1&&f.target.edges.indexOf(f)==-1))throw"Edge already in source and/or target incidency list!";return f.source.edges.push(f),f.target.edges.push(f),f}},a.prototype.remove=function(r){if(r instanceof u){var n=r;if(n.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(n==this.rootGraph||n.parent!=null&&n.parent.graphManager==this))throw"Invalid parent node!";var f=[];f=f.concat(n.getEdges());for(var e,g=f.length,t=0;t=r.getRight()?n[0]+=Math.min(r.getX()-a.getX(),a.getRight()-r.getRight()):r.getX()<=a.getX()&&r.getRight()>=a.getRight()&&(n[0]+=Math.min(a.getX()-r.getX(),r.getRight()-a.getRight())),a.getY()<=r.getY()&&a.getBottom()>=r.getBottom()?n[1]+=Math.min(r.getY()-a.getY(),a.getBottom()-r.getBottom()):r.getY()<=a.getY()&&r.getBottom()>=a.getBottom()&&(n[1]+=Math.min(a.getY()-r.getY(),r.getBottom()-a.getBottom()));var g=Math.abs((r.getCenterY()-a.getCenterY())/(r.getCenterX()-a.getCenterX()));r.getCenterY()===a.getCenterY()&&r.getCenterX()===a.getCenterX()&&(g=1);var t=g*n[0],i=n[1]/g;n[0]t)return n[0]=f,n[1]=s,n[2]=g,n[3]=Y,!1;if(eg)return n[0]=i,n[1]=e,n[2]=b,n[3]=t,!1;if(fg?(n[0]=o,n[1]=L,h=!0):(n[0]=c,n[1]=s,h=!0):v===d&&(f>g?(n[0]=i,n[1]=s,h=!0):(n[0]=p,n[1]=L,h=!0)),-T===d?g>f?(n[2]=B,n[3]=Y,m=!0):(n[2]=b,n[3]=A,m=!0):T===d&&(g>f?(n[2]=R,n[3]=A,m=!0):(n[2]=j,n[3]=Y,m=!0)),h&&m)return!1;if(f>g?e>t?(D=this.getCardinalDirection(v,d,4),O=this.getCardinalDirection(T,d,2)):(D=this.getCardinalDirection(-v,d,3),O=this.getCardinalDirection(-T,d,1)):e>t?(D=this.getCardinalDirection(-v,d,1),O=this.getCardinalDirection(-T,d,3)):(D=this.getCardinalDirection(v,d,2),O=this.getCardinalDirection(T,d,4)),!h)switch(D){case 1:S=s,P=f+-C/d,n[0]=P,n[1]=S;break;case 2:P=p,S=e+y*d,n[0]=P,n[1]=S;break;case 3:S=L,P=f+C/d,n[0]=P,n[1]=S;break;case 4:P=o,S=e+-y*d,n[0]=P,n[1]=S;break}if(!m)switch(O){case 1:k=A,x=g+-Z/d,n[2]=x,n[3]=k;break;case 2:x=j,k=t+I*d,n[2]=x,n[3]=k;break;case 3:k=Y,x=g+Z/d,n[2]=x,n[3]=k;break;case 4:x=B,k=t+-I*d,n[2]=x,n[3]=k;break}}return!1},l.getCardinalDirection=function(a,r,n){return a>r?n:1+n%4},l.getIntersection=function(a,r,n,f){if(f==null)return this.getIntersection2(a,r,n);var e=a.x,g=a.y,t=r.x,i=r.y,s=n.x,c=n.y,o=f.x,L=f.y,p=void 0,y=void 0,C=void 0,R=void 0,A=void 0,b=void 0,B=void 0,Y=void 0,j=void 0;return C=i-g,A=e-t,B=t*g-e*i,R=L-c,b=s-o,Y=o*c-s*L,j=C*b-R*A,j===0?null:(p=(A*Y-b*B)/j,y=(R*B-C*Y)/j,new u(p,y))},l.angleOfVector=function(a,r,n,f){var e=void 0;return a!==n?(e=Math.atan((f-r)/(n-a)),n=0){var L=(-s+Math.sqrt(s*s-4*i*c))/(2*i),p=(-s-Math.sqrt(s*s-4*i*c))/(2*i),y=null;return L>=0&&L<=1?[L]:p>=0&&p<=1?[p]:y}else return null},l.HALF_PI=.5*Math.PI,l.ONE_AND_HALF_PI=1.5*Math.PI,l.TWO_PI=2*Math.PI,l.THREE_PI=3*Math.PI,E.exports=l}),(function(E,w,N){"use strict";function u(){}u.sign=function(l){return l>0?1:l<0?-1:0},u.floor=function(l){return l<0?Math.ceil(l):Math.floor(l)},u.ceil=function(l){return l<0?Math.floor(l):Math.ceil(l)},E.exports=u}),(function(E,w,N){"use strict";function u(){}u.MAX_VALUE=2147483647,u.MIN_VALUE=-2147483648,E.exports=u}),(function(E,w,N){"use strict";var u=(function(){function e(g,t){for(var i=0;i"u"?"undefined":u(a);return a==null||r!="object"&&r!="function"},E.exports=l}),(function(E,w,N){"use strict";function u(s){if(Array.isArray(s)){for(var c=0,o=Array(s.length);c0&&c;){for(C.push(A[0]);C.length>0&&c;){var b=C[0];C.splice(0,1),y.add(b);for(var B=b.getEdges(),p=0;p-1&&A.splice(Z,1)}y=new Set,R=new Map}}return s},i.prototype.createDummyNodesForBendpoints=function(s){for(var c=[],o=s.source,L=this.graphManager.calcLowestCommonAncestor(s.source,s.target),p=0;p0){for(var L=this.edgeToDummyNodes.get(o),p=0;p=0&&c.splice(Y,1);var j=R.getNeighborsList();j.forEach(function(h){if(o.indexOf(h)<0){var m=L.get(h),v=m-1;v==1&&b.push(h),L.set(h,v)}})}o=o.concat(b),(c.length==1||c.length==2)&&(p=!0,y=c[0])}return y},i.prototype.setGraphManager=function(s){this.graphManager=s},E.exports=i}),(function(E,w,N){"use strict";function u(){}u.seed=1,u.x=0,u.nextDouble=function(){return u.x=Math.sin(u.seed++)*1e4,u.x-Math.floor(u.x)},E.exports=u}),(function(E,w,N){"use strict";var u=N(5);function l(a,r){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}l.prototype.getWorldOrgX=function(){return this.lworldOrgX},l.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},l.prototype.getWorldOrgY=function(){return this.lworldOrgY},l.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},l.prototype.getWorldExtX=function(){return this.lworldExtX},l.prototype.setWorldExtX=function(a){this.lworldExtX=a},l.prototype.getWorldExtY=function(){return this.lworldExtY},l.prototype.setWorldExtY=function(a){this.lworldExtY=a},l.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},l.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},l.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},l.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},l.prototype.getDeviceExtX=function(){return this.ldeviceExtX},l.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},l.prototype.getDeviceExtY=function(){return this.ldeviceExtY},l.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},l.prototype.transformX=function(a){var r=0,n=this.lworldExtX;return n!=0&&(r=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/n),r},l.prototype.transformY=function(a){var r=0,n=this.lworldExtY;return n!=0&&(r=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/n),r},l.prototype.inverseTransformX=function(a){var r=0,n=this.ldeviceExtX;return n!=0&&(r=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/n),r},l.prototype.inverseTransformY=function(a){var r=0,n=this.ldeviceExtY;return n!=0&&(r=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/n),r},l.prototype.inverseTransformPoint=function(a){var r=new u(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return r},E.exports=l}),(function(E,w,N){"use strict";function u(t){if(Array.isArray(t)){for(var i=0,s=Array(t.length);ia.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(t-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(t>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(t-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},e.prototype.calcSpringForces=function(){for(var t=this.getAllEdges(),i,s=0;s0&&arguments[0]!==void 0?arguments[0]:!0,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,s,c,o,L,p=this.getAllNodes(),y;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&t&&this.updateGrid(),y=new Set,s=0;sC||y>C)&&(t.gravitationForceX=-this.gravityConstant*o,t.gravitationForceY=-this.gravityConstant*L)):(C=i.getEstimatedSize()*this.compoundGravityRangeFactor,(p>C||y>C)&&(t.gravitationForceX=-this.gravityConstant*o*this.compoundGravityConstant,t.gravitationForceY=-this.gravityConstant*L*this.compoundGravityConstant))},e.prototype.isConverged=function(){var t,i=!1;return this.totalIterations>this.maxIterations/3&&(i=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),t=this.totalDisplacement=p.length||C>=p[0].length)){for(var R=0;Re}}]),n})();E.exports=r}),(function(E,w,N){"use strict";function u(){}u.svd=function(l){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=l.length,this.n=l[0].length;var a=Math.min(this.m,this.n);this.s=(function(Dt){for(var Nt=[];Dt-- >0;)Nt.push(0);return Nt})(Math.min(this.m+1,this.n)),this.U=(function(Dt){var Nt=function $t(Rt){if(Rt.length==0)return 0;for(var Xt=[],zt=0;zt0;)Nt.push(0);return Nt})(this.n),n=(function(Dt){for(var Nt=[];Dt-- >0;)Nt.push(0);return Nt})(this.m),f=!0,e=!0,g=Math.min(this.m-1,this.n),t=Math.max(0,Math.min(this.n-2,this.m)),i=0;i=0;d--)if(this.s[d]!==0){for(var D=d+1;D=0;F--){if((function(Dt,Nt){return Dt&&Nt})(F0;){var Q=void 0,Ut=void 0;for(Q=m-2;Q>=-1&&Q!==-1;Q--)if(Math.abs(r[Q])<=St+Lt*(Math.abs(this.s[Q])+Math.abs(this.s[Q+1]))){r[Q]=0;break}if(Q===m-2)Ut=4;else{var Mt=void 0;for(Mt=m-1;Mt>=Q&&Mt!==Q;Mt--){var at=(Mt!==m?Math.abs(r[Mt]):0)+(Mt!==Q+1?Math.abs(r[Mt-1]):0);if(Math.abs(this.s[Mt])<=St+Lt*at){this.s[Mt]=0;break}}Mt===Q?Ut=3:Mt===m-1?Ut=1:(Ut=2,Q=Mt)}switch(Q++,Ut){case 1:{var et=r[m-2];r[m-2]=0;for(var pt=m-2;pt>=Q;pt--){var mt=u.hypot(this.s[pt],et),Ct=this.s[pt]/mt,Et=et/mt;if(this.s[pt]=mt,pt!==Q&&(et=-Et*r[pt-1],r[pt-1]=Ct*r[pt-1]),e)for(var Tt=0;Tt=this.s[Q+1]);){var lt=this.s[Q];if(this.s[Q]=this.s[Q+1],this.s[Q+1]=lt,e&&QMath.abs(a)?(r=a/l,r=Math.abs(l)*Math.sqrt(1+r*r)):a!=0?(r=l/a,r=Math.abs(a)*Math.sqrt(1+r*r)):r=0,r},E.exports=u}),(function(E,w,N){"use strict";var u=(function(){function r(n,f){for(var e=0;e2&&arguments[2]!==void 0?arguments[2]:1,g=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,t=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;l(this,r),this.sequence1=n,this.sequence2=f,this.match_score=e,this.mismatch_penalty=g,this.gap_penalty=t,this.iMax=n.length+1,this.jMax=f.length+1,this.grid=new Array(this.iMax);for(var i=0;i=0;n--){var f=this.listeners[n];f.event===a&&f.callback===r&&this.listeners.splice(n,1)}},l.emit=function(a,r){for(var n=0;n{"use strict";(function(w,N){typeof ae=="object"&&typeof Ae=="object"?Ae.exports=N(Ce()):typeof define=="function"&&define.amd?define(["layout-base"],N):typeof ae=="object"?ae.coseBase=N(Ce()):w.coseBase=N(w.layoutBase)})(ae,function(E){return(()=>{"use strict";var w={45:((a,r,n)=>{var f={};f.layoutBase=n(551),f.CoSEConstants=n(806),f.CoSEEdge=n(767),f.CoSEGraph=n(880),f.CoSEGraphManager=n(578),f.CoSELayout=n(765),f.CoSENode=n(991),f.ConstraintHandler=n(902),a.exports=f}),806:((a,r,n)=>{var f=n(551).FDLayoutConstants;function e(){}for(var g in f)e[g]=f[g];e.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,e.DEFAULT_RADIAL_SEPARATION=f.DEFAULT_EDGE_LENGTH,e.DEFAULT_COMPONENT_SEPERATION=60,e.TILE=!0,e.TILING_PADDING_VERTICAL=10,e.TILING_PADDING_HORIZONTAL=10,e.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,e.ENFORCE_CONSTRAINTS=!0,e.APPLY_LAYOUT=!0,e.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,e.TREE_REDUCTION_ON_INCREMENTAL=!0,e.PURE_INCREMENTAL=e.DEFAULT_INCREMENTAL,a.exports=e}),767:((a,r,n)=>{var f=n(551).FDLayoutEdge;function e(t,i,s){f.call(this,t,i,s)}e.prototype=Object.create(f.prototype);for(var g in f)e[g]=f[g];a.exports=e}),880:((a,r,n)=>{var f=n(551).LGraph;function e(t,i,s){f.call(this,t,i,s)}e.prototype=Object.create(f.prototype);for(var g in f)e[g]=f[g];a.exports=e}),578:((a,r,n)=>{var f=n(551).LGraphManager;function e(t){f.call(this,t)}e.prototype=Object.create(f.prototype);for(var g in f)e[g]=f[g];a.exports=e}),765:((a,r,n)=>{var f=n(551).FDLayout,e=n(578),g=n(880),t=n(991),i=n(767),s=n(806),c=n(902),o=n(551).FDLayoutConstants,L=n(551).LayoutConstants,p=n(551).Point,y=n(551).PointD,C=n(551).DimensionD,R=n(551).Layout,A=n(551).Integer,b=n(551).IGeometry,B=n(551).LGraph,Y=n(551).Transform,j=n(551).LinkedList;function I(){f.call(this),this.toBeTiled={},this.constraints={}}I.prototype=Object.create(f.prototype);for(var Z in f)I[Z]=f[Z];I.prototype.newGraphManager=function(){var h=new e(this);return this.graphManager=h,h},I.prototype.newGraph=function(h){return new g(null,this.graphManager,h)},I.prototype.newNode=function(h){return new t(this.graphManager,h)},I.prototype.newEdge=function(h){return new i(null,null,h)},I.prototype.initParameters=function(){f.prototype.initParameters.call(this,arguments),this.isSubLayout||(s.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=s.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=s.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=o.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=o.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=o.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=o.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},I.prototype.initSpringEmbedder=function(){f.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/o.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},I.prototype.layout=function(){var h=L.DEFAULT_CREATE_BENDS_AS_NEEDED;return h&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},I.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(s.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var m=new Set(this.getAllNodes()),v=this.nodesWithGravity.filter(function(D){return m.has(D)});this.graphManager.setAllNodesToApplyGravitation(v)}}else{var h=this.getFlatForest();if(h.length>0)this.positionNodesRadially(h);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var m=new Set(this.getAllNodes()),v=this.nodesWithGravity.filter(function(T){return m.has(T)});this.graphManager.setAllNodesToApplyGravitation(v),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(c.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),s.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},I.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%o.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var h=new Set(this.getAllNodes()),m=this.nodesWithGravity.filter(function(d){return h.has(d)});this.graphManager.setAllNodesToApplyGravitation(m),this.graphManager.updateBounds(),this.updateGrid(),s.PURE_INCREMENTAL?this.coolingFactor=o.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=o.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),s.PURE_INCREMENTAL?this.coolingFactor=o.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=o.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var v=!this.isTreeGrowing&&!this.isGrowthFinished,T=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(v,T),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},I.prototype.getPositionsData=function(){for(var h=this.graphManager.getAllNodes(),m={},v=0;v0&&this.updateDisplacements();for(var v=0;v0&&(T.fixedNodeWeight=D)}}if(this.constraints.relativePlacementConstraint){var O=new Map,P=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(M){h.fixedNodesOnHorizontal.add(M),h.fixedNodesOnVertical.add(M)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var S=this.constraints.alignmentConstraint.vertical,v=0;v=2*M.length/3;J--)U=Math.floor(Math.random()*(J+1)),X=M[J],M[J]=M[U],M[U]=X;return M},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(M){if(M.left){var U=O.has(M.left)?O.get(M.left):M.left,X=O.has(M.right)?O.get(M.right):M.right;h.nodesInRelativeHorizontal.includes(U)||(h.nodesInRelativeHorizontal.push(U),h.nodeToRelativeConstraintMapHorizontal.set(U,[]),h.dummyToNodeForVerticalAlignment.has(U)?h.nodeToTempPositionMapHorizontal.set(U,h.idToNodeMap.get(h.dummyToNodeForVerticalAlignment.get(U)[0]).getCenterX()):h.nodeToTempPositionMapHorizontal.set(U,h.idToNodeMap.get(U).getCenterX())),h.nodesInRelativeHorizontal.includes(X)||(h.nodesInRelativeHorizontal.push(X),h.nodeToRelativeConstraintMapHorizontal.set(X,[]),h.dummyToNodeForVerticalAlignment.has(X)?h.nodeToTempPositionMapHorizontal.set(X,h.idToNodeMap.get(h.dummyToNodeForVerticalAlignment.get(X)[0]).getCenterX()):h.nodeToTempPositionMapHorizontal.set(X,h.idToNodeMap.get(X).getCenterX())),h.nodeToRelativeConstraintMapHorizontal.get(U).push({right:X,gap:M.gap}),h.nodeToRelativeConstraintMapHorizontal.get(X).push({left:U,gap:M.gap})}else{var J=P.has(M.top)?P.get(M.top):M.top,st=P.has(M.bottom)?P.get(M.bottom):M.bottom;h.nodesInRelativeVertical.includes(J)||(h.nodesInRelativeVertical.push(J),h.nodeToRelativeConstraintMapVertical.set(J,[]),h.dummyToNodeForHorizontalAlignment.has(J)?h.nodeToTempPositionMapVertical.set(J,h.idToNodeMap.get(h.dummyToNodeForHorizontalAlignment.get(J)[0]).getCenterY()):h.nodeToTempPositionMapVertical.set(J,h.idToNodeMap.get(J).getCenterY())),h.nodesInRelativeVertical.includes(st)||(h.nodesInRelativeVertical.push(st),h.nodeToRelativeConstraintMapVertical.set(st,[]),h.dummyToNodeForHorizontalAlignment.has(st)?h.nodeToTempPositionMapVertical.set(st,h.idToNodeMap.get(h.dummyToNodeForHorizontalAlignment.get(st)[0]).getCenterY()):h.nodeToTempPositionMapVertical.set(st,h.idToNodeMap.get(st).getCenterY())),h.nodeToRelativeConstraintMapVertical.get(J).push({bottom:st,gap:M.gap}),h.nodeToRelativeConstraintMapVertical.get(st).push({top:J,gap:M.gap})}});else{var k=new Map,tt=new Map;this.constraints.relativePlacementConstraint.forEach(function(M){if(M.left){var U=O.has(M.left)?O.get(M.left):M.left,X=O.has(M.right)?O.get(M.right):M.right;k.has(U)?k.get(U).push(X):k.set(U,[X]),k.has(X)?k.get(X).push(U):k.set(X,[U])}else{var J=P.has(M.top)?P.get(M.top):M.top,st=P.has(M.bottom)?P.get(M.bottom):M.bottom;tt.has(J)?tt.get(J).push(st):tt.set(J,[st]),tt.has(st)?tt.get(st).push(J):tt.set(st,[J])}});var F=function(U,X){var J=[],st=[],Lt=new j,St=new Set,Q=0;return U.forEach(function(Ut,Mt){if(!St.has(Mt)){J[Q]=[],st[Q]=!1;var at=Mt;for(Lt.push(at),St.add(at),J[Q].push(at);Lt.length!=0;){at=Lt.shift(),X.has(at)&&(st[Q]=!0);var et=U.get(at);et.forEach(function(pt){St.has(pt)||(Lt.push(pt),St.add(pt),J[Q].push(pt))})}Q++}}),{components:J,isFixed:st}},_=F(k,h.fixedNodesOnHorizontal);this.componentsOnHorizontal=_.components,this.fixedComponentsOnHorizontal=_.isFixed;var V=F(tt,h.fixedNodesOnVertical);this.componentsOnVertical=V.components,this.fixedComponentsOnVertical=V.isFixed}}},I.prototype.updateDisplacements=function(){var h=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(V){var M=h.idToNodeMap.get(V.nodeId);M.displacementX=0,M.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var m=this.constraints.alignmentConstraint.vertical,v=0;v1){var P;for(P=0;PT&&(T=Math.floor(O.y)),D=Math.floor(O.x+s.DEFAULT_COMPONENT_SEPERATION)}this.transform(new y(L.WORLD_CENTER_X-O.x/2,L.WORLD_CENTER_Y-O.y/2))},I.radialLayout=function(h,m,v){var T=Math.max(this.maxDiagonalInTree(h),s.DEFAULT_RADIAL_SEPARATION);I.branchRadialLayout(m,null,0,359,0,T);var d=B.calculateBounds(h),D=new Y;D.setDeviceOrgX(d.getMinX()),D.setDeviceOrgY(d.getMinY()),D.setWorldOrgX(v.x),D.setWorldOrgY(v.y);for(var O=0;O1;){var J=X[0];X.splice(0,1);var st=F.indexOf(J);st>=0&&F.splice(st,1),M--,_--}m!=null?U=(F.indexOf(X[0])+1)%M:U=0;for(var Lt=Math.abs(T-v)/_,St=U;V!=_;St=++St%M){var Q=F[St].getOtherEnd(h);if(Q!=m){var Ut=(v+V*Lt)%360,Mt=(Ut+Lt)%360;I.branchRadialLayout(Q,h,Ut,Mt,d+D,D),V++}}},I.maxDiagonalInTree=function(h){for(var m=A.MIN_VALUE,v=0;vm&&(m=d)}return m},I.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},I.prototype.groupZeroDegreeMembers=function(){var h=this,m={};this.memberGroups={},this.idToDummyNode={};for(var v=[],T=this.graphManager.getAllNodes(),d=0;d"u"&&(m[P]=[]),m[P]=m[P].concat(D)}Object.keys(m).forEach(function(S){if(m[S].length>1){var x="DummyCompound_"+S;h.memberGroups[x]=m[S];var k=m[S][0].getParent(),tt=new t(h.graphManager);tt.id=x,tt.paddingLeft=k.paddingLeft||0,tt.paddingRight=k.paddingRight||0,tt.paddingBottom=k.paddingBottom||0,tt.paddingTop=k.paddingTop||0,h.idToDummyNode[x]=tt;var F=h.getGraphManager().add(h.newGraph(),tt),_=k.getChild();_.add(tt);for(var V=0;Vd?(T.rect.x-=(T.labelWidth-d)/2,T.setWidth(T.labelWidth),T.labelMarginLeft=(T.labelWidth-d)/2):T.labelPosHorizontal=="right"&&T.setWidth(d+T.labelWidth)),T.labelHeight&&(T.labelPosVertical=="top"?(T.rect.y-=T.labelHeight,T.setHeight(D+T.labelHeight),T.labelMarginTop=T.labelHeight):T.labelPosVertical=="center"&&T.labelHeight>D?(T.rect.y-=(T.labelHeight-D)/2,T.setHeight(T.labelHeight),T.labelMarginTop=(T.labelHeight-D)/2):T.labelPosVertical=="bottom"&&T.setHeight(D+T.labelHeight))}})},I.prototype.repopulateCompounds=function(){for(var h=this.compoundOrder.length-1;h>=0;h--){var m=this.compoundOrder[h],v=m.id,T=m.paddingLeft,d=m.paddingTop,D=m.labelMarginLeft,O=m.labelMarginTop;this.adjustLocations(this.tiledMemberPack[v],m.rect.x,m.rect.y,T,d,D,O)}},I.prototype.repopulateZeroDegreeMembers=function(){var h=this,m=this.tiledZeroDegreePack;Object.keys(m).forEach(function(v){var T=h.idToDummyNode[v],d=T.paddingLeft,D=T.paddingTop,O=T.labelMarginLeft,P=T.labelMarginTop;h.adjustLocations(m[v],T.rect.x,T.rect.y,d,D,O,P)})},I.prototype.getToBeTiled=function(h){var m=h.id;if(this.toBeTiled[m]!=null)return this.toBeTiled[m];var v=h.getChild();if(v==null)return this.toBeTiled[m]=!1,!1;for(var T=v.getNodes(),d=0;d0)return this.toBeTiled[m]=!1,!1;if(D.getChild()==null){this.toBeTiled[D.id]=!1;continue}if(!this.getToBeTiled(D))return this.toBeTiled[m]=!1,!1}return this.toBeTiled[m]=!0,!0},I.prototype.getNodeDegree=function(h){for(var m=h.id,v=h.getEdges(),T=0,d=0;dk&&(k=F.rect.height)}v+=k+h.verticalPadding}},I.prototype.tileCompoundMembers=function(h,m){var v=this;this.tiledMemberPack=[],Object.keys(h).forEach(function(T){var d=m[T];if(v.tiledMemberPack[T]=v.tileNodes(h[T],d.paddingLeft+d.paddingRight),d.rect.width=v.tiledMemberPack[T].width,d.rect.height=v.tiledMemberPack[T].height,d.setCenter(v.tiledMemberPack[T].centerX,v.tiledMemberPack[T].centerY),d.labelMarginLeft=0,d.labelMarginTop=0,s.NODE_DIMENSIONS_INCLUDE_LABELS){var D=d.rect.width,O=d.rect.height;d.labelWidth&&(d.labelPosHorizontal=="left"?(d.rect.x-=d.labelWidth,d.setWidth(D+d.labelWidth),d.labelMarginLeft=d.labelWidth):d.labelPosHorizontal=="center"&&d.labelWidth>D?(d.rect.x-=(d.labelWidth-D)/2,d.setWidth(d.labelWidth),d.labelMarginLeft=(d.labelWidth-D)/2):d.labelPosHorizontal=="right"&&d.setWidth(D+d.labelWidth)),d.labelHeight&&(d.labelPosVertical=="top"?(d.rect.y-=d.labelHeight,d.setHeight(O+d.labelHeight),d.labelMarginTop=d.labelHeight):d.labelPosVertical=="center"&&d.labelHeight>O?(d.rect.y-=(d.labelHeight-O)/2,d.setHeight(d.labelHeight),d.labelMarginTop=(d.labelHeight-O)/2):d.labelPosVertical=="bottom"&&d.setHeight(O+d.labelHeight))}})},I.prototype.tileNodes=function(h,m){var v=this.tileNodesByFavoringDim(h,m,!0),T=this.tileNodesByFavoringDim(h,m,!1),d=this.getOrgRatio(v),D=this.getOrgRatio(T),O;return DP&&(P=V.getWidth())});var S=D/d,x=O/d,k=Math.pow(v-T,2)+4*(S+T)*(x+v)*d,tt=(T-v+Math.sqrt(k))/(2*(S+T)),F;m?(F=Math.ceil(tt),F==tt&&F++):F=Math.floor(tt);var _=F*(S+T)-T;return P>_&&(_=P),_+=T*2,_},I.prototype.tileNodesByFavoringDim=function(h,m,v){var T=s.TILING_PADDING_VERTICAL,d=s.TILING_PADDING_HORIZONTAL,D=s.TILING_COMPARE_BY,O={rows:[],rowWidth:[],rowHeight:[],width:0,height:m,verticalPadding:T,horizontalPadding:d,centerX:0,centerY:0};D&&(O.idealRowWidth=this.calcIdealRowWidth(h,v));var P=function(M){return M.rect.width*M.rect.height},S=function(M,U){return P(U)-P(M)};h.sort(function(V,M){var U=S;return O.idealRowWidth?(U=D,U(V.id,M.id)):U(V,M)});for(var x=0,k=0,tt=0;tt0&&(O+=h.horizontalPadding),h.rowWidth[v]=O,h.width0&&(P+=h.verticalPadding);var S=0;P>h.rowHeight[v]&&(S=h.rowHeight[v],h.rowHeight[v]=P,S=h.rowHeight[v]-S),h.height+=S,h.rows[v].push(m)},I.prototype.getShortestRowIndex=function(h){for(var m=-1,v=Number.MAX_VALUE,T=0;Tv&&(m=T,v=h.rowWidth[T]);return m},I.prototype.canAddHorizontal=function(h,m,v){if(h.idealRowWidth){var T=h.rows.length-1,d=h.rowWidth[T];return d+m+h.horizontalPadding<=h.idealRowWidth}var D=this.getShortestRowIndex(h);if(D<0)return!0;var O=h.rowWidth[D];if(O+h.horizontalPadding+m<=h.width)return!0;var P=0;h.rowHeight[D]0&&(P=v+h.verticalPadding-h.rowHeight[D]);var S;h.width-O>=m+h.horizontalPadding?S=(h.height+P)/(O+m+h.horizontalPadding):S=(h.height+P)/h.width,P=v+h.verticalPadding;var x;return h.widthD&&m!=v){T.splice(-1,1),h.rows[v].push(d),h.rowWidth[m]=h.rowWidth[m]-D,h.rowWidth[v]=h.rowWidth[v]+D,h.width=h.rowWidth[instance.getLongestRowIndex(h)];for(var O=Number.MIN_VALUE,P=0;PO&&(O=T[P].height);m>0&&(O+=h.verticalPadding);var S=h.rowHeight[m]+h.rowHeight[v];h.rowHeight[m]=O,h.rowHeight[v]0)for(var _=d;_<=D;_++)F[0]+=this.grid[_][O-1].length+this.grid[_][O].length-1;if(D0)for(var _=O;_<=P;_++)F[3]+=this.grid[d-1][_].length+this.grid[d][_].length-1;for(var V=A.MAX_VALUE,M,U,X=0;X{var f=n(551).FDLayoutNode,e=n(551).IMath;function g(i,s,c,o){f.call(this,i,s,c,o)}g.prototype=Object.create(f.prototype);for(var t in f)g[t]=f[t];g.prototype.calculateDisplacement=function(){var i=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=i.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=i.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=i.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=i.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>i.coolingFactor*i.maxNodeDisplacement&&(this.displacementX=i.coolingFactor*i.maxNodeDisplacement*e.sign(this.displacementX)),Math.abs(this.displacementY)>i.coolingFactor*i.maxNodeDisplacement&&(this.displacementY=i.coolingFactor*i.maxNodeDisplacement*e.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},g.prototype.propogateDisplacementToChildren=function(i,s){for(var c=this.getChild().getNodes(),o,L=0;L{function f(c){if(Array.isArray(c)){for(var o=0,L=Array(c.length);o0){var dt=0;it.forEach(function(lt){W=="horizontal"?(q.set(lt,p.has(lt)?y[p.get(lt)]:$.get(lt)),dt+=q.get(lt)):(q.set(lt,p.has(lt)?C[p.get(lt)]:$.get(lt)),dt+=q.get(lt))}),dt=dt/it.length,ot.forEach(function(lt){z.has(lt)||q.set(lt,dt)})}else{var nt=0;ot.forEach(function(lt){W=="horizontal"?nt+=p.has(lt)?y[p.get(lt)]:$.get(lt):nt+=p.has(lt)?C[p.get(lt)]:$.get(lt)}),nt=nt/ot.length,ot.forEach(function(lt){q.set(lt,nt)})}});for(var rt=function(){var it=gt.shift(),dt=H.get(it);dt.forEach(function(nt){if(q.get(nt.id)lt&&(lt=Xt),ztFt&&(Ft=zt)}}catch(te){Vt=!0,Dt=te}finally{try{!xt&&Nt.return&&Nt.return()}finally{if(Vt)throw Dt}}var de=(dt+lt)/2-(nt+Ft)/2,Qt=!0,Kt=!1,jt=void 0;try{for(var Jt=ot[Symbol.iterator](),he;!(Qt=(he=Jt.next()).done);Qt=!0){var _t=he.value;q.set(_t,q.get(_t)+de)}}catch(te){Kt=!0,jt=te}finally{try{!Qt&&Jt.return&&Jt.return()}finally{if(Kt)throw jt}}})}return q},Z=function(H){var W=0,z=0,$=0,K=0;if(H.forEach(function(ht){ht.left?y[p.get(ht.left)]-y[p.get(ht.right)]>=0?W++:z++:C[p.get(ht.top)]-C[p.get(ht.bottom)]>=0?$++:K++}),W>z&&$>K)for(var ut=0;utz)for(var ft=0;ftK)for(var q=0;q1)o.fixedNodeConstraint.forEach(function(G,H){T[H]=[G.position.x,G.position.y],d[H]=[y[p.get(G.nodeId)],C[p.get(G.nodeId)]]}),D=!0;else if(o.alignmentConstraint)(function(){var G=0;if(o.alignmentConstraint.vertical){for(var H=o.alignmentConstraint.vertical,W=function(q){var ht=new Set;H[q].forEach(function(vt){ht.add(vt)});var gt=new Set([].concat(f(ht)).filter(function(vt){return P.has(vt)})),rt=void 0;gt.size>0?rt=y[p.get(gt.values().next().value)]:rt=j(ht).x,H[q].forEach(function(vt){T[G]=[rt,C[p.get(vt)]],d[G]=[y[p.get(vt)],C[p.get(vt)]],G++})},z=0;z0?rt=y[p.get(gt.values().next().value)]:rt=j(ht).y,$[q].forEach(function(vt){T[G]=[y[p.get(vt)],rt],d[G]=[y[p.get(vt)],C[p.get(vt)]],G++})},ut=0;ut<$.length;ut++)K(ut);D=!0}o.relativePlacementConstraint&&(O=!0)})();else if(o.relativePlacementConstraint){for(var tt=0,F=0,_=0;_tt&&(tt=k[_].length,F=_);if(tt0){var Ct={x:0,y:0};o.fixedNodeConstraint.forEach(function(G,H){var W={x:y[p.get(G.nodeId)],y:C[p.get(G.nodeId)]},z=G.position,$=Y(z,W);Ct.x+=$.x,Ct.y+=$.y}),Ct.x/=o.fixedNodeConstraint.length,Ct.y/=o.fixedNodeConstraint.length,y.forEach(function(G,H){y[H]+=Ct.x}),C.forEach(function(G,H){C[H]+=Ct.y}),o.fixedNodeConstraint.forEach(function(G){y[p.get(G.nodeId)]=G.position.x,C[p.get(G.nodeId)]=G.position.y})}if(o.alignmentConstraint){if(o.alignmentConstraint.vertical)for(var Et=o.alignmentConstraint.vertical,Tt=function(H){var W=new Set;Et[H].forEach(function(K){W.add(K)});var z=new Set([].concat(f(W)).filter(function(K){return P.has(K)})),$=void 0;z.size>0?$=y[p.get(z.values().next().value)]:$=j(W).x,W.forEach(function(K){P.has(K)||(y[p.get(K)]=$)})},Ot=0;Ot0?$=C[p.get(z.values().next().value)]:$=j(W).y,W.forEach(function(K){P.has(K)||(C[p.get(K)]=$)})},Pt=0;Pt{a.exports=E})},N={};function u(a){var r=N[a];if(r!==void 0)return r.exports;var n=N[a]={exports:{}};return w[a](n,n.exports,u),n.exports}var l=u(45);return l})()})});var _e=Ee((oe,Me)=>{"use strict";(function(w,N){typeof oe=="object"&&typeof Me=="object"?Me.exports=N(we()):typeof define=="function"&&define.amd?define(["cose-base"],N):typeof oe=="object"?oe.cytoscapeFcose=N(we()):w.cytoscapeFcose=N(w.coseBase)})(oe,function(E){return(()=>{"use strict";var w={658:(a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(r){for(var n=arguments.length,f=Array(n>1?n-1:0),e=1;e{var f=(function(){function t(i,s){var c=[],o=!0,L=!1,p=void 0;try{for(var y=i[Symbol.iterator](),C;!(o=(C=y.next()).done)&&(c.push(C.value),!(s&&c.length===s));o=!0);}catch(R){L=!0,p=R}finally{try{!o&&y.return&&y.return()}finally{if(L)throw p}}return c}return function(i,s){if(Array.isArray(i))return i;if(Symbol.iterator in Object(i))return t(i,s);throw new TypeError("Invalid attempt to destructure non-iterable instance")}})(),e=n(140).layoutBase.LinkedList,g={};g.getTopMostNodes=function(t){for(var i={},s=0;s0&&D.merge(x)});for(var O=0;O1){C=p[0],R=C.connectedEdges().length,p.forEach(function(d){d.connectedEdges().length0&&c.set("dummy"+(c.size+1),B),Y},g.relocateComponent=function(t,i,s){if(!s.fixedNodeConstraint){var c=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,L=Number.POSITIVE_INFINITY,p=Number.NEGATIVE_INFINITY;if(s.quality=="draft"){var y=!0,C=!1,R=void 0;try{for(var A=i.nodeIndexes[Symbol.iterator](),b;!(y=(b=A.next()).done);y=!0){var B=b.value,Y=f(B,2),j=Y[0],I=Y[1],Z=s.cy.getElementById(j);if(Z){var h=Z.boundingBox(),m=i.xCoords[I]-h.w/2,v=i.xCoords[I]+h.w/2,T=i.yCoords[I]-h.h/2,d=i.yCoords[I]+h.h/2;mo&&(o=v),Tp&&(p=d)}}}catch(x){C=!0,R=x}finally{try{!y&&A.return&&A.return()}finally{if(C)throw R}}var D=t.x-(o+c)/2,O=t.y-(p+L)/2;i.xCoords=i.xCoords.map(function(x){return x+D}),i.yCoords=i.yCoords.map(function(x){return x+O})}else{Object.keys(i).forEach(function(x){var k=i[x],tt=k.getRect().x,F=k.getRect().x+k.getRect().width,_=k.getRect().y,V=k.getRect().y+k.getRect().height;tto&&(o=F),_p&&(p=V)});var P=t.x-(o+c)/2,S=t.y-(p+L)/2;Object.keys(i).forEach(function(x){var k=i[x];k.setCenter(k.getCenterX()+P,k.getCenterY()+S)})}}},g.calcBoundingBox=function(t,i,s,c){for(var o=Number.MAX_SAFE_INTEGER,L=Number.MIN_SAFE_INTEGER,p=Number.MAX_SAFE_INTEGER,y=Number.MIN_SAFE_INTEGER,C=void 0,R=void 0,A=void 0,b=void 0,B=t.descendants().not(":parent"),Y=B.length,j=0;jC&&(o=C),LA&&(p=A),y{var f=n(548),e=n(140).CoSELayout,g=n(140).CoSENode,t=n(140).layoutBase.PointD,i=n(140).layoutBase.DimensionD,s=n(140).layoutBase.LayoutConstants,c=n(140).layoutBase.FDLayoutConstants,o=n(140).CoSEConstants,L=function(y,C){var R=y.cy,A=y.eles,b=A.nodes(),B=A.edges(),Y=void 0,j=void 0,I=void 0,Z={};y.randomize&&(Y=C.nodeIndexes,j=C.xCoords,I=C.yCoords);var h=function(x){return typeof x=="function"},m=function(x,k){return h(x)?x(k):x},v=f.calcParentsWithoutChildren(R,A),T=function S(x,k,tt,F){for(var _=k.length,V=0;V<_;V++){var M=k[V],U=null;M.intersection(v).length==0&&(U=M.children());var X=void 0,J=M.layoutDimensions({nodeDimensionsIncludeLabels:F.nodeDimensionsIncludeLabels});if(M.outerWidth()!=null&&M.outerHeight()!=null)if(F.randomize)if(!M.isParent())X=x.add(new g(tt.graphManager,new t(j[Y.get(M.id())]-J.w/2,I[Y.get(M.id())]-J.h/2),new i(parseFloat(J.w),parseFloat(J.h))));else{var st=f.calcBoundingBox(M,j,I,Y);M.intersection(v).length==0?X=x.add(new g(tt.graphManager,new t(st.topLeftX,st.topLeftY),new i(st.width,st.height))):X=x.add(new g(tt.graphManager,new t(st.topLeftX,st.topLeftY),new i(parseFloat(J.w),parseFloat(J.h))))}else X=x.add(new g(tt.graphManager,new t(M.position("x")-J.w/2,M.position("y")-J.h/2),new i(parseFloat(J.w),parseFloat(J.h))));else X=x.add(new g(this.graphManager));if(X.id=M.data("id"),X.nodeRepulsion=m(F.nodeRepulsion,M),X.paddingLeft=parseInt(M.css("padding")),X.paddingTop=parseInt(M.css("padding")),X.paddingRight=parseInt(M.css("padding")),X.paddingBottom=parseInt(M.css("padding")),F.nodeDimensionsIncludeLabels&&(X.labelWidth=M.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).w,X.labelHeight=M.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).h,X.labelPosVertical=M.css("text-valign"),X.labelPosHorizontal=M.css("text-halign")),Z[M.data("id")]=X,isNaN(X.rect.x)&&(X.rect.x=0),isNaN(X.rect.y)&&(X.rect.y=0),U!=null&&U.length>0){var Lt=void 0;Lt=tt.getGraphManager().add(tt.newGraph(),X),S(Lt,U,tt,F)}}},d=function(x,k,tt){for(var F=0,_=0,V=0;V0?o.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=F/_:h(y.idealEdgeLength)?o.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=50:o.DEFAULT_EDGE_LENGTH=c.DEFAULT_EDGE_LENGTH=y.idealEdgeLength,o.MIN_REPULSION_DIST=c.MIN_REPULSION_DIST=c.DEFAULT_EDGE_LENGTH/10,o.DEFAULT_RADIAL_SEPARATION=c.DEFAULT_EDGE_LENGTH)},D=function(x,k){k.fixedNodeConstraint&&(x.constraints.fixedNodeConstraint=k.fixedNodeConstraint),k.alignmentConstraint&&(x.constraints.alignmentConstraint=k.alignmentConstraint),k.relativePlacementConstraint&&(x.constraints.relativePlacementConstraint=k.relativePlacementConstraint)};y.nestingFactor!=null&&(o.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=c.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=y.nestingFactor),y.gravity!=null&&(o.DEFAULT_GRAVITY_STRENGTH=c.DEFAULT_GRAVITY_STRENGTH=y.gravity),y.numIter!=null&&(o.MAX_ITERATIONS=c.MAX_ITERATIONS=y.numIter),y.gravityRange!=null&&(o.DEFAULT_GRAVITY_RANGE_FACTOR=c.DEFAULT_GRAVITY_RANGE_FACTOR=y.gravityRange),y.gravityCompound!=null&&(o.DEFAULT_COMPOUND_GRAVITY_STRENGTH=c.DEFAULT_COMPOUND_GRAVITY_STRENGTH=y.gravityCompound),y.gravityRangeCompound!=null&&(o.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=c.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=y.gravityRangeCompound),y.initialEnergyOnIncremental!=null&&(o.DEFAULT_COOLING_FACTOR_INCREMENTAL=c.DEFAULT_COOLING_FACTOR_INCREMENTAL=y.initialEnergyOnIncremental),y.tilingCompareBy!=null&&(o.TILING_COMPARE_BY=y.tilingCompareBy),y.quality=="proof"?s.QUALITY=2:s.QUALITY=0,o.NODE_DIMENSIONS_INCLUDE_LABELS=c.NODE_DIMENSIONS_INCLUDE_LABELS=s.NODE_DIMENSIONS_INCLUDE_LABELS=y.nodeDimensionsIncludeLabels,o.DEFAULT_INCREMENTAL=c.DEFAULT_INCREMENTAL=s.DEFAULT_INCREMENTAL=!y.randomize,o.ANIMATE=c.ANIMATE=s.ANIMATE=y.animate,o.TILE=y.tile,o.TILING_PADDING_VERTICAL=typeof y.tilingPaddingVertical=="function"?y.tilingPaddingVertical.call():y.tilingPaddingVertical,o.TILING_PADDING_HORIZONTAL=typeof y.tilingPaddingHorizontal=="function"?y.tilingPaddingHorizontal.call():y.tilingPaddingHorizontal,o.DEFAULT_INCREMENTAL=c.DEFAULT_INCREMENTAL=s.DEFAULT_INCREMENTAL=!0,o.PURE_INCREMENTAL=!y.randomize,s.DEFAULT_UNIFORM_LEAF_NODE_SIZES=y.uniformNodeDimensions,y.step=="transformed"&&(o.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,o.ENFORCE_CONSTRAINTS=!1,o.APPLY_LAYOUT=!1),y.step=="enforced"&&(o.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,o.ENFORCE_CONSTRAINTS=!0,o.APPLY_LAYOUT=!1),y.step=="cose"&&(o.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,o.ENFORCE_CONSTRAINTS=!1,o.APPLY_LAYOUT=!0),y.step=="all"&&(y.randomize?o.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:o.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,o.ENFORCE_CONSTRAINTS=!0,o.APPLY_LAYOUT=!0),y.fixedNodeConstraint||y.alignmentConstraint||y.relativePlacementConstraint?o.TREE_REDUCTION_ON_INCREMENTAL=!1:o.TREE_REDUCTION_ON_INCREMENTAL=!0;var O=new e,P=O.newGraphManager();return T(P.addRoot(),f.getTopMostNodes(b),O,y),d(O,P,B),D(O,y),O.runLayout(),Z};a.exports={coseLayout:L}}),212:((a,r,n)=>{var f=(function(){function y(C,R){for(var A=0;A0)if(d){var P=t.getTopMostNodes(A.eles.nodes());if(h=t.connectComponents(b,A.eles,P),h.forEach(function(at){var et=at.boundingBox();m.push({x:et.x1+et.w/2,y:et.y1+et.h/2})}),A.randomize&&h.forEach(function(at){A.eles=at,Y.push(s(A))}),A.quality=="default"||A.quality=="proof"){var S=b.collection();if(A.tile){var x=new Map,k=[],tt=[],F=0,_={nodeIndexes:x,xCoords:k,yCoords:tt},V=[];if(h.forEach(function(at,et){at.edges().length==0&&(at.nodes().forEach(function(pt,mt){S.merge(at.nodes()[mt]),pt.isParent()||(_.nodeIndexes.set(at.nodes()[mt].id(),F++),_.xCoords.push(at.nodes()[0].position().x),_.yCoords.push(at.nodes()[0].position().y))}),V.push(et))}),S.length>1){var M=S.boundingBox();m.push({x:M.x1+M.w/2,y:M.y1+M.h/2}),h.push(S),Y.push(_);for(var U=V.length-1;U>=0;U--)h.splice(V[U],1),Y.splice(V[U],1),m.splice(V[U],1)}}h.forEach(function(at,et){A.eles=at,Z.push(o(A,Y[et])),t.relocateComponent(m[et],Z[et],A)})}else h.forEach(function(at,et){t.relocateComponent(m[et],Y[et],A)});var X=new Set;if(h.length>1){var J=[],st=B.filter(function(at){return at.css("display")=="none"});h.forEach(function(at,et){var pt=void 0;if(A.quality=="draft"&&(pt=Y[et].nodeIndexes),at.nodes().not(st).length>0){var mt={};mt.edges=[],mt.nodes=[];var Ct=void 0;at.nodes().not(st).forEach(function(Et){if(A.quality=="draft")if(!Et.isParent())Ct=pt.get(Et.id()),mt.nodes.push({x:Y[et].xCoords[Ct]-Et.boundingbox().w/2,y:Y[et].yCoords[Ct]-Et.boundingbox().h/2,width:Et.boundingbox().w,height:Et.boundingbox().h});else{var Tt=t.calcBoundingBox(Et,Y[et].xCoords,Y[et].yCoords,pt);mt.nodes.push({x:Tt.topLeftX,y:Tt.topLeftY,width:Tt.width,height:Tt.height})}else Z[et][Et.id()]&&mt.nodes.push({x:Z[et][Et.id()].getLeft(),y:Z[et][Et.id()].getTop(),width:Z[et][Et.id()].getWidth(),height:Z[et][Et.id()].getHeight()})}),at.edges().forEach(function(Et){var Tt=Et.source(),Ot=Et.target();if(Tt.css("display")!="none"&&Ot.css("display")!="none")if(A.quality=="draft"){var It=pt.get(Tt.id()),Wt=pt.get(Ot.id()),Pt=[],Yt=[];if(Tt.isParent()){var bt=t.calcBoundingBox(Tt,Y[et].xCoords,Y[et].yCoords,pt);Pt.push(bt.topLeftX+bt.width/2),Pt.push(bt.topLeftY+bt.height/2)}else Pt.push(Y[et].xCoords[It]),Pt.push(Y[et].yCoords[It]);if(Ot.isParent()){var G=t.calcBoundingBox(Ot,Y[et].xCoords,Y[et].yCoords,pt);Yt.push(G.topLeftX+G.width/2),Yt.push(G.topLeftY+G.height/2)}else Yt.push(Y[et].xCoords[Wt]),Yt.push(Y[et].yCoords[Wt]);mt.edges.push({startX:Pt[0],startY:Pt[1],endX:Yt[0],endY:Yt[1]})}else Z[et][Tt.id()]&&Z[et][Ot.id()]&&mt.edges.push({startX:Z[et][Tt.id()].getCenterX(),startY:Z[et][Tt.id()].getCenterY(),endX:Z[et][Ot.id()].getCenterX(),endY:Z[et][Ot.id()].getCenterY()})}),mt.nodes.length>0&&(J.push(mt),X.add(et))}});var Lt=T.packComponents(J,A.randomize).shifts;if(A.quality=="draft")Y.forEach(function(at,et){var pt=at.xCoords.map(function(Ct){return Ct+Lt[et].dx}),mt=at.yCoords.map(function(Ct){return Ct+Lt[et].dy});at.xCoords=pt,at.yCoords=mt});else{var St=0;X.forEach(function(at){Object.keys(Z[at]).forEach(function(et){var pt=Z[at][et];pt.setCenter(pt.getCenterX()+Lt[St].dx,pt.getCenterY()+Lt[St].dy)}),St++})}}}else{var D=A.eles.boundingBox();if(m.push({x:D.x1+D.w/2,y:D.y1+D.h/2}),A.randomize){var O=s(A);Y.push(O)}A.quality=="default"||A.quality=="proof"?(Z.push(o(A,Y[0])),t.relocateComponent(m[0],Z[0],A)):t.relocateComponent(m[0],Y[0],A)}var Q=function(et,pt){if(A.quality=="default"||A.quality=="proof"){typeof et=="number"&&(et=pt);var mt=void 0,Ct=void 0,Et=et.data("id");return Z.forEach(function(Ot){Et in Ot&&(mt={x:Ot[Et].getRect().getCenterX(),y:Ot[Et].getRect().getCenterY()},Ct=Ot[Et])}),A.nodeDimensionsIncludeLabels&&(Ct.labelWidth&&(Ct.labelPosHorizontal=="left"?mt.x+=Ct.labelWidth/2:Ct.labelPosHorizontal=="right"&&(mt.x-=Ct.labelWidth/2)),Ct.labelHeight&&(Ct.labelPosVertical=="top"?mt.y+=Ct.labelHeight/2:Ct.labelPosVertical=="bottom"&&(mt.y-=Ct.labelHeight/2))),mt==null&&(mt={x:et.position("x"),y:et.position("y")}),{x:mt.x,y:mt.y}}else{var Tt=void 0;return Y.forEach(function(Ot){var It=Ot.nodeIndexes.get(et.id());It!=null&&(Tt={x:Ot.xCoords[It],y:Ot.yCoords[It]})}),Tt==null&&(Tt={x:et.position("x"),y:et.position("y")}),{x:Tt.x,y:Tt.y}}};if(A.quality=="default"||A.quality=="proof"||A.randomize){var Ut=t.calcParentsWithoutChildren(b,B),Mt=B.filter(function(at){return at.css("display")=="none"});A.eles=B.not(Mt),B.nodes().not(":parent").not(Mt).layoutPositions(R,A,Q),Ut.length>0&&Ut.forEach(function(at){at.position(Q(at))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),y})();a.exports=p}),657:((a,r,n)=>{var f=n(548),e=n(140).layoutBase.Matrix,g=n(140).layoutBase.SVD,t=function(s){var c=s.cy,o=s.eles,L=o.nodes(),p=o.nodes(":parent"),y=new Map,C=new Map,R=new Map,A=[],b=[],B=[],Y=[],j=[],I=[],Z=[],h=[],m=void 0,v=void 0,T=1e8,d=1e-9,D=s.piTol,O=s.samplingType,P=s.nodeSeparation,S=void 0,x=function(){for(var W=0,z=0,$=!1;z=ut;){q=K[ut++];for(var ot=A[q],it=0;itrt&&(rt=j[nt],vt=nt)}return vt},tt=function(W){var z=void 0;if(W){z=Math.floor(Math.random()*v),m=z;for(var K=0;K=1)break;rt=gt}for(var ot=0;ot=1)break;rt=gt}for(var dt=0;dt0&&(z.isParent()?A[W].push(R.get(z.id())):A[W].push(z.id()))})});var Ut=function(W){var z=C.get(W),$=void 0;y.get(W).forEach(function(K){c.getElementById(K).isParent()?$=R.get(K):$=K,A[z].push($),A[C.get($)].push(W)})},Mt=!0,at=!1,et=void 0;try{for(var pt=y.keys()[Symbol.iterator](),mt;!(Mt=(mt=pt.next()).done);Mt=!0){var Ct=mt.value;Ut(Ct)}}catch(H){at=!0,et=H}finally{try{!Mt&&pt.return&&pt.return()}finally{if(at)throw et}}v=C.size;var Et=void 0;if(v>2){S=v{var f=n(212),e=function(t){t&&t("layout","fcose",f)};typeof cytoscape<"u"&&e(cytoscape),a.exports=e}),140:(a=>{a.exports=E})},N={};function u(a){var r=N[a];if(r!==void 0)return r.exports;var n=N[a]={exports:{}};return w[a](n,n.exports,u),n.exports}var l=u(579);return l})()})});var or=pr(_e(),1);var tr={L:"left",R:"right",T:"top",B:"bottom"},er={L:ct(E=>`${E},${E/2} 0,${E} 0,0`,"L"),R:ct(E=>`0,${E/2} ${E},0 ${E},${E}`,"R"),T:ct(E=>`0,0 ${E},0 ${E/2},${E}`,"T"),B:ct(E=>`${E/2},0 ${E},${E} 0,${E}`,"B")},ue={L:ct((E,w)=>E-w+2,"L"),R:ct((E,w)=>E-2,"R"),T:ct((E,w)=>E-w+2,"T"),B:ct((E,w)=>E-2,"B")},yr=ct(function(E){return Ht(E)?E==="L"?"R":"L":E==="T"?"B":"T"},"getOppositeArchitectureDirection"),rr=ct(function(E){let w=E;return w==="L"||w==="R"||w==="T"||w==="B"},"isArchitectureDirection"),Ht=ct(function(E){let w=E;return w==="L"||w==="R"},"isArchitectureDirectionX"),qt=ct(function(E){let w=E;return w==="T"||w==="B"},"isArchitectureDirectionY"),De=ct(function(E,w){let N=Ht(E)&&qt(w),u=qt(E)&&Ht(w);return N||u},"isArchitectureDirectionXY"),mr=ct(function(E){let w=E[0],N=E[1],u=Ht(w)&&qt(N),l=qt(w)&&Ht(N);return u||l},"isArchitecturePairXY"),Er=ct(function(E){return E!=="LL"&&E!=="RR"&&E!=="TT"&&E!=="BB"},"isValidArchitectureDirectionPair"),Oe=ct(function(E,w){let N=`${E}${w}`;return Er(N)?N:void 0},"getArchitectureDirectionPair"),Tr=ct(function([E,w],N){let u=N[0],l=N[1];return Ht(u)?qt(l)?[E+(u==="L"?-1:1),w+(l==="T"?1:-1)]:[E+(u==="L"?-1:1),w]:Ht(l)?[E+(l==="L"?1:-1),w+(u==="T"?1:-1)]:[E,w+(u==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),Nr=ct(function(E){return E==="LT"||E==="TL"?[1,1]:E==="BL"||E==="LB"?[1,-1]:E==="BR"||E==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),Lr=ct(function(E,w){return De(E,w)?"bend":Ht(E)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),Cr=ct(function(E){return E.type==="service"},"isArchitectureService"),Ar=ct(function(E){return E.type==="junction"},"isArchitectureJunction"),ir=ct(E=>E.data(),"edgeData"),ie=ct(E=>E.data(),"nodeData"),wr=Pe.architecture,nr=class{constructor(){this.nodes={},this.groups={},this.edges=[],this.registeredIds={},this.elements={},this.diagramId="",this.setAccTitle=He,this.getAccTitle=We,this.setDiagramTitle=Be,this.getDiagramTitle=$e,this.getAccDescription=ze,this.setAccDescription=Ve,this.clear()}static{ct(this,"ArchitectureDB")}setDiagramId(E){this.diagramId=E}getDiagramId(){return this.diagramId}clear(){this.nodes={},this.groups={},this.edges=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},this.diagramId="",Xe()}addService({id:E,icon:w,in:N,title:u,iconText:l}){if(this.registeredIds[E]!==void 0)throw new Error(`The service id [${E}] is already in use by another ${this.registeredIds[E]}`);if(N!==void 0){if(E===N)throw new Error(`The service [${E}] cannot be placed within itself`);if(this.registeredIds[N]===void 0)throw new Error(`The service [${E}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[N]==="node")throw new Error(`The service [${E}]'s parent is not a group`)}this.registeredIds[E]="node",this.nodes[E]={id:E,type:"service",icon:w,iconText:l,title:u,edges:[],in:N}}getServices(){return Object.values(this.nodes).filter(Cr)}addJunction({id:E,in:w}){if(this.registeredIds[E]!==void 0)throw new Error(`The junction id [${E}] is already in use by another ${this.registeredIds[E]}`);if(w!==void 0){if(E===w)throw new Error(`The junction [${E}] cannot be placed within itself`);if(this.registeredIds[w]===void 0)throw new Error(`The junction [${E}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds[w]==="node")throw new Error(`The junction [${E}]'s parent is not a group`)}this.registeredIds[E]="node",this.nodes[E]={id:E,type:"junction",edges:[],in:w}}getJunctions(){return Object.values(this.nodes).filter(Ar)}getNodes(){return Object.values(this.nodes)}getNode(E){return this.nodes[E]??null}addGroup({id:E,icon:w,in:N,title:u}){if(this.registeredIds?.[E]!==void 0)throw new Error(`The group id [${E}] is already in use by another ${this.registeredIds[E]}`);if(N!==void 0){if(E===N)throw new Error(`The group [${E}] cannot be placed within itself`);if(this.registeredIds?.[N]===void 0)throw new Error(`The group [${E}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds?.[N]==="node")throw new Error(`The group [${E}]'s parent is not a group`)}this.registeredIds[E]="group",this.groups[E]={id:E,icon:w,title:u,in:N}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:E,rhsId:w,lhsDir:N,rhsDir:u,lhsInto:l,rhsInto:a,lhsGroup:r,rhsGroup:n,title:f}){if(!rr(N))throw new Error(`Invalid direction given for left hand side of edge ${E}--${w}. Expected (L,R,T,B) got ${String(N)}`);if(!rr(u))throw new Error(`Invalid direction given for right hand side of edge ${E}--${w}. Expected (L,R,T,B) got ${String(u)}`);if(this.nodes[E]===void 0&&this.groups[E]===void 0)throw new Error(`The left-hand id [${E}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[w]===void 0&&this.groups[w]===void 0)throw new Error(`The right-hand id [${w}] does not yet exist. Please create the service/group before declaring an edge to it.`);let e=this.nodes[E].in,g=this.nodes[w].in;if(r&&e&&g&&e==g)throw new Error(`The left-hand id [${E}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(n&&e&&g&&e==g)throw new Error(`The right-hand id [${w}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let t={lhsId:E,lhsDir:N,lhsInto:l,lhsGroup:r,rhsId:w,rhsDir:u,rhsInto:a,rhsGroup:n,title:f};this.edges.push(t),this.nodes[E]&&this.nodes[w]&&(this.nodes[E].edges.push(this.edges[this.edges.length-1]),this.nodes[w].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}getDataStructures(){if(this.dataStructures===void 0){let E={},w=Object.entries(this.nodes).reduce((n,[f,e])=>(n[f]=e.edges.reduce((g,t)=>{let i=this.getNode(t.lhsId)?.in,s=this.getNode(t.rhsId)?.in;if(i&&s&&i!==s){let c=Lr(t.lhsDir,t.rhsDir);c!=="bend"&&(E[i]??={},E[i][s]=c,E[s]??={},E[s][i]=c)}if(t.lhsId===f){let c=Oe(t.lhsDir,t.rhsDir);c&&(g[c]=t.rhsId)}else{let c=Oe(t.rhsDir,t.lhsDir);c&&(g[c]=t.lhsId)}return g},{}),n),{}),N=Object.keys(w)[0],u={[N]:1},l=Object.keys(w).reduce((n,f)=>f===N?n:le(ee({},n),{[f]:1}),{}),a=ct(n=>{let f={[n]:[0,0]},e=[n];for(;e.length>0;){let g=e.shift();if(g){u[g]=1,delete l[g];let t=w[g],[i,s]=f[g];Object.entries(t).forEach(([c,o])=>{u[o]||(f[o]=Tr([i,s],c),e.push(o))})}}return f},"BFS"),r=[a(N)];for(;Object.keys(l).length>0;)r.push(a(Object.keys(l)[0]));this.dataStructures={adjList:w,spatialMaps:r,groupAlignments:E}}return this.dataStructures}setElementForId(E,w){this.elements[E]=w}getElementById(E){return this.elements[E]}getConfig(){return Ze(ee(ee({},wr),Ge().architecture))}getConfigField(E){return this.getConfig()[E]}},Mr=ct((E,w)=>{Ke(E,w),E.groups.map(N=>w.addGroup(N)),E.services.map(N=>w.addService(le(ee({},N),{type:"service"}))),E.junctions.map(N=>w.addJunction(le(ee({},N),{type:"junction"}))),E.edges.map(N=>w.addEdge(N))},"populateDb"),ar={parser:{yy:void 0},parse:ct(E=>Zt(null,null,function*(){let w=yield je("architecture",E);Te.debug(w);let N=ar.parser?.yy;if(!(N instanceof nr))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Mr(w,N)}),"parse")},Or=ct(E=>` + .edge { + stroke-width: ${E.archEdgeWidth}; + stroke: ${E.archEdgeColor}; + fill: none; + } + + .arrow { + fill: ${E.archEdgeArrowColor}; + } + + .node-bkg { + fill: none; + stroke: ${E.archGroupBorderColor}; + stroke-width: ${E.archGroupBorderWidth}; + stroke-dasharray: 8; + } + .node-icon-text { + display: flex; + align-items: center; + } + + .node-icon-text > div { + color: #fff; + margin: 1px; + height: fit-content; + text-align: center; + overflow: hidden; + display: -webkit-box; + -webkit-box-orient: vertical; + } +`,"getStyles"),Dr=Or,re=ct(E=>`${E}`,"wrapIcon"),se={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:re('')},server:{body:re('')},disk:{body:re('')},internet:{body:re('')},cloud:{body:re('')},unknown:Qe,blank:{body:re("")}}},xr=ct(function(E,w,N,u){return Zt(this,null,function*(){let l=N.getConfigField("padding"),a=N.getConfigField("iconSize"),r=a/2,n=a/6,f=n/2;yield Promise.all(w.edges().map(e=>Zt(null,null,function*(){let{source:g,sourceDir:t,sourceArrow:i,sourceGroup:s,target:c,targetDir:o,targetArrow:L,targetGroup:p,label:y}=ir(e),{x:C,y:R}=e[0].sourceEndpoint(),{x:A,y:b}=e[0].midpoint(),{x:B,y:Y}=e[0].targetEndpoint(),j=l+4;if(s&&(Ht(t)?C+=t==="L"?-j:j:R+=t==="T"?-j:j+18),p&&(Ht(o)?B+=o==="L"?-j:j:Y+=o==="T"?-j:j+18),!s&&N.getNode(g)?.type==="junction"&&(Ht(t)?C+=t==="L"?r:-r:R+=t==="T"?r:-r),!p&&N.getNode(c)?.type==="junction"&&(Ht(o)?B+=o==="L"?r:-r:Y+=o==="T"?r:-r),e[0]._private.rscratch){let I=E.insert("g");if(I.insert("path").attr("d",`M ${C},${R} L ${A},${b} L${B},${Y} `).attr("class","edge").attr("id",`${u}-${qe(g,c,{prefix:"L"})}`),i){let Z=Ht(t)?ue[t](C,n):C-f,h=qt(t)?ue[t](R,n):R-f;I.insert("polygon").attr("points",er[t](n)).attr("transform",`translate(${Z},${h})`).attr("class","arrow")}if(L){let Z=Ht(o)?ue[o](B,n):B-f,h=qt(o)?ue[o](Y,n):Y-f;I.insert("polygon").attr("points",er[o](n)).attr("transform",`translate(${Z},${h})`).attr("class","arrow")}if(y){let Z=De(t,o)?"XY":Ht(t)?"X":"Y",h=0;Z==="X"?h=Math.abs(C-B):Z==="Y"?h=Math.abs(R-Y)/1.5:h=Math.abs(C-B)/2;let m=I.append("g");if(yield ge(m,y,{useHtmlLabels:!1,width:h,classes:"architecture-service-label"},fe()),m.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),Z==="X")m.attr("transform","translate("+A+", "+b+")");else if(Z==="Y")m.attr("transform","translate("+A+", "+b+") rotate(-90)");else if(Z==="XY"){let v=Oe(t,o);if(v&&mr(v)){let T=m.node().getBoundingClientRect(),[d,D]=Nr(v);m.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*d*D*45})`);let O=m.node().getBoundingClientRect();m.attr("transform",` + translate(${A}, ${b-T.height/2}) + translate(${d*O.width/2}, ${D*O.height/2}) + rotate(${-1*d*D*45}, 0, ${T.height/2}) + `)}}}}})))})},"drawEdges"),Ir=ct(function(E,w,N,u){return Zt(this,null,function*(){let a=N.getConfigField("padding")*.75,r=N.getConfigField("fontSize"),f=N.getConfigField("iconSize")/2;yield Promise.all(w.nodes().map(e=>Zt(null,null,function*(){let g=ie(e);if(g.type==="group"){let{h:t,w:i,x1:s,y1:c}=e.boundingBox(),o=E.append("rect");o.attr("id",`${u}-group-${g.id}`).attr("x",s+f).attr("y",c+f).attr("width",i).attr("height",t).attr("class","node-bkg");let L=E.append("g"),p=s,y=c;if(g.icon){let C=L.append("g");C.html(`${yield ce(g.icon,{height:a,width:a,fallbackPrefix:se.prefix})}`),C.attr("transform","translate("+(p+f+1)+", "+(y+f+1)+")"),p+=a,y+=r/2-1-2}if(g.label){let C=L.append("g");yield ge(C,g.label,{useHtmlLabels:!1,width:i,classes:"architecture-service-label"},fe()),C.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),C.attr("transform","translate("+(p+f+4)+", "+(y+f+2)+")")}N.setElementForId(g.id,o)}})))})},"drawGroups"),Rr=ct(function(E,w,N,u){return Zt(this,null,function*(){let l=fe();for(let a of N){let r=w.append("g"),n=E.getConfigField("iconSize");if(a.title){let t=r.append("g");yield ge(t,a.title,{useHtmlLabels:!1,width:n*1.5,classes:"architecture-service-label"},l),t.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),t.attr("transform","translate("+n/2+", "+n+")")}let f=r.append("g");if(a.icon)f.html(`${yield ce(a.icon,{height:n,width:n,fallbackPrefix:se.prefix})}`);else if(a.iconText){f.html(`${yield ce("blank",{height:n,width:n,fallbackPrefix:se.prefix})}`);let s=f.append("g").append("foreignObject").attr("width",n).attr("height",n).append("div").attr("class","node-icon-text").attr("style",`height: ${n}px;`).append("div").html(Ue(a.iconText,l)),c=parseInt(window.getComputedStyle(s.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;s.attr("style",`-webkit-line-clamp: ${Math.floor((n-2)/c)};`)}else f.append("path").attr("class","node-bkg").attr("id",`${u}-node-${a.id}`).attr("d",`M0,${n} V5 Q0,0 5,0 H${n-5} Q${n},0 ${n},5 V${n} Z`);r.attr("id",`${u}-service-${a.id}`).attr("class","architecture-service");let{width:e,height:g}=r.node().getBBox();a.width=e,a.height=g,E.setElementForId(a.id,r)}return 0})},"drawServices"),Sr=ct(function(E,w,N,u){N.forEach(l=>{let a=w.append("g"),r=E.getConfigField("iconSize");a.append("g").append("rect").attr("id",`${u}-node-${l.id}`).attr("fill-opacity","0").attr("width",r).attr("height",r),a.attr("class","architecture-junction");let{width:f,height:e}=a._groups[0][0].getBBox();a.width=f,a.height=e,E.setElementForId(l.id,a)})},"drawJunctions");Je([{name:se.prefix,icons:se}]);Ne.use(or.default);function sr(E,w,N){E.forEach(u=>{w.add({group:"nodes",data:{type:"service",id:u.id,icon:u.icon,label:u.title,parent:u.in,width:N.getConfigField("iconSize"),height:N.getConfigField("iconSize")},classes:"node-service"})})}ct(sr,"addServices");function hr(E,w,N){E.forEach(u=>{w.add({group:"nodes",data:{type:"junction",id:u.id,parent:u.in,width:N.getConfigField("iconSize"),height:N.getConfigField("iconSize")},classes:"node-junction"})})}ct(hr,"addJunctions");function lr(E,w){w.nodes().map(N=>{let u=ie(N);if(u.type==="group")return;u.x=N.position().x,u.y=N.position().y,E.getElementById(u.id).attr("transform","translate("+(u.x||0)+","+(u.y||0)+")")})}ct(lr,"positionNodes");function fr(E,w){E.forEach(N=>{w.add({group:"nodes",data:{type:"group",id:N.id,icon:N.icon,label:N.title,parent:N.in},classes:"node-group"})})}ct(fr,"addGroups");function cr(E,w){E.forEach(N=>{let{lhsId:u,rhsId:l,lhsInto:a,lhsGroup:r,rhsInto:n,lhsDir:f,rhsDir:e,rhsGroup:g,title:t}=N,i=De(N.lhsDir,N.rhsDir)?"segments":"straight",s={id:`${u}-${l}`,label:t,source:u,sourceDir:f,sourceArrow:a,sourceGroup:r,sourceEndpoint:f==="L"?"0 50%":f==="R"?"100% 50%":f==="T"?"50% 0":"50% 100%",target:l,targetDir:e,targetArrow:n,targetGroup:g,targetEndpoint:e==="L"?"0 50%":e==="R"?"100% 50%":e==="T"?"50% 0":"50% 100%"};w.add({group:"edges",data:s,classes:i})})}ct(cr,"addEdges");function gr(E,w,N){let u=ct((n,f)=>Object.entries(n).reduce((e,[g,t])=>{let i=0,s=Object.entries(t);if(s.length===1)return e[g]=s[0][1],e;for(let c=0;c{let f={},e={};return Object.entries(n).forEach(([g,[t,i]])=>{let s=E.getNode(g)?.in??"default";f[i]??={},f[i][s]??=[],f[i][s].push(g),e[t]??={},e[t][s]??=[],e[t][s].push(g)}),{horiz:Object.values(u(f,"horizontal")).filter(g=>g.length>1),vert:Object.values(u(e,"vertical")).filter(g=>g.length>1)}}),[a,r]=l.reduce(([n,f],{horiz:e,vert:g})=>[[...n,...e],[...f,...g]],[[],[]]);return{horizontal:a,vertical:r}}ct(gr,"getAlignments");function ur(E,w){let N=[],u=ct(a=>`${a[0]},${a[1]}`,"posToStr"),l=ct(a=>a.split(",").map(r=>parseInt(r)),"strToPos");return E.forEach(a=>{let r=Object.fromEntries(Object.entries(a).map(([g,t])=>[u(t),g])),n=[u([0,0])],f={},e={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;n.length>0;){let g=n.shift();if(g){f[g]=1;let t=r[g];if(t){let i=l(g);Object.entries(e).forEach(([s,c])=>{let o=u([i[0]+c[0],i[1]+c[1]]),L=r[o];L&&!f[o]&&(n.push(o),N.push({[tr[s]]:L,[tr[yr(s)]]:t,gap:1.5*w.getConfigField("iconSize")}))})}}}}),N}ct(ur,"getRelativeConstraints");function dr(E,w,N,u,l,{spatialMaps:a,groupAlignments:r}){return new Promise(n=>{let f=be("body").append("div").attr("id","cy").attr("style","display:none"),e=Ne({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge[label]",style:{label:"data(label)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${l.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${l.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});f.remove(),fr(N,e),sr(E,e,l),hr(w,e,l),cr(u,e);let g=gr(l,a,r),t=ur(a,l),i=e.layout({name:"fcose",quality:"proof",randomize:l.getConfigField("randomize"),styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(s){let[c,o]=s.connectedNodes(),{parent:L}=ie(c),{parent:p}=ie(o);return L===p?1.5*l.getConfigField("iconSize"):.5*l.getConfigField("iconSize")},edgeElasticity(s){let[c,o]=s.connectedNodes(),{parent:L}=ie(c),{parent:p}=ie(o);return L===p?.45:.001},alignmentConstraint:g,relativePlacementConstraint:t});i.one("layoutstop",()=>{function s(c,o,L,p){let y,C,{x:R,y:A}=c,{x:b,y:B}=o;C=(p-A+(R-L)*(A-B)/(R-b))/Math.sqrt(1+Math.pow((A-B)/(R-b),2)),y=Math.sqrt(Math.pow(p-A,2)+Math.pow(L-R,2)-Math.pow(C,2));let Y=Math.sqrt(Math.pow(b-R,2)+Math.pow(B-A,2));y=y/Y;let j=(b-R)*(p-A)-(B-A)*(L-R);switch(!0){case j>=0:j=1;break;case j<0:j=-1;break}let I=(b-R)*(L-R)+(B-A)*(p-A);switch(!0){case I>=0:I=1;break;case I<0:I=-1;break}return C=Math.abs(C)*j,y=y*I,{distances:C,weights:y}}ct(s,"getSegmentWeights"),e.startBatch();for(let c of Object.values(e.edges()))if(c.data?.()){let{x:o,y:L}=c.source().position(),{x:p,y}=c.target().position();if(o!==p&&L!==y){let C=c.sourceEndpoint(),R=c.targetEndpoint(),{sourceDir:A}=ir(c),[b,B]=qt(A)?[C.x,R.y]:[R.x,C.y],{weights:Y,distances:j}=s(C,R,b,B);c.style("segment-distances",j),c.style("segment-weights",Y)}}e.endBatch(),i.run()}),i.run(),e.ready(s=>{Te.info("Ready",s),n(e)})})}ct(dr,"layoutArchitecture");var Fr=ct((E,w,N,u)=>Zt(null,null,function*(){let l=u.db;l.setDiagramId(w);let a=l.getServices(),r=l.getJunctions(),n=l.getGroups(),f=l.getEdges(),e=l.getDataStructures(),g=ke(w),t=g.append("g");t.attr("class","architecture-edges");let i=g.append("g");i.attr("class","architecture-services");let s=g.append("g");s.attr("class","architecture-groups"),yield Rr(l,i,a,w),Sr(l,i,r,w);let c=yield dr(a,r,n,f,l,e);yield xr(t,c,l,w),yield Ir(s,c,l,w),lr(l,c),Ye(void 0,g,l.getConfigField("padding"),l.getConfigField("useMaxWidth"))}),"draw"),br={draw:Fr},Br={parser:ar,get db(){return new nr},renderer:br,styles:Dr};export{Br as diagram}; diff --git a/src/google/adk/cli/browser/chunk-37QI3DOO.js b/src/google/adk/cli/browser/chunk-37QI3DOO.js new file mode 100644 index 0000000000..a115ffce0b --- /dev/null +++ b/src/google/adk/cli/browser/chunk-37QI3DOO.js @@ -0,0 +1,122 @@ +import{g as c,h as mr,i as D,j as xr}from"./chunk-JRNAXTJ7.js";import{a as I,b as j,j as Yt}from"./chunk-RMXJBC7V.js";var Xt={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{let i=t/255;return t>.03928?Math.pow((i+.055)/1.055,2.4):i/12.92},hue2rgb:(t,i,e)=>(e<0&&(e+=1),e>1&&(e-=1),e<.16666666666666666?t+(i-t)*6*e:e<.5?i:e<.6666666666666666?t+(i-t)*(.6666666666666666-e)*6:t),hsl2rgb:({h:t,s:i,l:e},l)=>{if(!i)return e*2.55;t/=360,i/=100,e/=100;let o=e<.5?e*(1+i):e+i-e*i,C=2*e-o;switch(l){case"r":return Xt.hue2rgb(C,o,t+.3333333333333333)*255;case"g":return Xt.hue2rgb(C,o,t)*255;case"b":return Xt.hue2rgb(C,o,t-.3333333333333333)*255}},rgb2hsl:({r:t,g:i,b:e},l)=>{t/=255,i/=255,e/=255;let o=Math.max(t,i,e),C=Math.min(t,i,e),y=(o+C)/2;if(l==="l")return y*100;if(o===C)return 0;let T=o-C,v=y>.5?T/(2-o-C):T/(o+C);if(l==="s")return v*100;switch(o){case t:return((i-e)/T+(ii>e?Math.min(i,Math.max(e,t)):Math.min(e,Math.max(i,t)),round:t=>Math.round(t*1e10)/1e10},Tr=Te;var fe={dec2hex:t=>{let i=Math.round(t).toString(16);return i.length>1?i:`0${i}`}},fr=fe;var ke={channel:yr,lang:Tr,unit:fr},u=ke;var et={};for(let t=0;t<=255;t++)et[t]=u.unit.dec2hex(t);var F={ALL:0,RGB:1,HSL:2};var _i=class{constructor(){this.type=F.ALL}get(){return this.type}set(i){if(this.type&&this.type!==i)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=i}reset(){this.type=F.ALL}is(i){return this.type===i}},kr=_i;var vi=class{constructor(i,e){this.color=e,this.changed=!1,this.data=i,this.type=new kr}set(i,e){return this.color=e,this.changed=!1,this.data=i,this.type.type=F.ALL,this}_ensureHSL(){let i=this.data,{h:e,s:l,l:o}=i;e===void 0&&(i.h=u.channel.rgb2hsl(i,"h")),l===void 0&&(i.s=u.channel.rgb2hsl(i,"s")),o===void 0&&(i.l=u.channel.rgb2hsl(i,"l"))}_ensureRGB(){let i=this.data,{r:e,g:l,b:o}=i;e===void 0&&(i.r=u.channel.hsl2rgb(i,"r")),l===void 0&&(i.g=u.channel.hsl2rgb(i,"g")),o===void 0&&(i.b=u.channel.hsl2rgb(i,"b"))}get r(){let i=this.data,e=i.r;return!this.type.is(F.HSL)&&e!==void 0?e:(this._ensureHSL(),u.channel.hsl2rgb(i,"r"))}get g(){let i=this.data,e=i.g;return!this.type.is(F.HSL)&&e!==void 0?e:(this._ensureHSL(),u.channel.hsl2rgb(i,"g"))}get b(){let i=this.data,e=i.b;return!this.type.is(F.HSL)&&e!==void 0?e:(this._ensureHSL(),u.channel.hsl2rgb(i,"b"))}get h(){let i=this.data,e=i.h;return!this.type.is(F.RGB)&&e!==void 0?e:(this._ensureRGB(),u.channel.rgb2hsl(i,"h"))}get s(){let i=this.data,e=i.s;return!this.type.is(F.RGB)&&e!==void 0?e:(this._ensureRGB(),u.channel.rgb2hsl(i,"s"))}get l(){let i=this.data,e=i.l;return!this.type.is(F.RGB)&&e!==void 0?e:(this._ensureRGB(),u.channel.rgb2hsl(i,"l"))}get a(){return this.data.a}set r(i){this.type.set(F.RGB),this.changed=!0,this.data.r=i}set g(i){this.type.set(F.RGB),this.changed=!0,this.data.g=i}set b(i){this.type.set(F.RGB),this.changed=!0,this.data.b=i}set h(i){this.type.set(F.HSL),this.changed=!0,this.data.h=i}set s(i){this.type.set(F.HSL),this.changed=!0,this.data.s=i}set l(i){this.type.set(F.HSL),this.changed=!0,this.data.l=i}set a(i){this.changed=!0,this.data.a=i}},Br=vi;var Be=new Br({r:0,g:0,b:0,a:0},"transparent"),at=Be;var br={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(t.charCodeAt(0)!==35)return;let i=t.match(br.re);if(!i)return;let e=i[1],l=parseInt(e,16),o=e.length,C=o%4===0,y=o>4,T=y?1:17,v=y?8:4,E=C?0:-1,Y=y?255:15;return at.set({r:(l>>v*(E+3)&Y)*T,g:(l>>v*(E+2)&Y)*T,b:(l>>v*(E+1)&Y)*T,a:C?(l&Y)*T/255:1},t)},stringify:t=>{let{r:i,g:e,b:l,a:o}=t;return o<1?`#${et[Math.round(i)]}${et[Math.round(e)]}${et[Math.round(l)]}${et[Math.round(o*255)]}`:`#${et[Math.round(i)]}${et[Math.round(e)]}${et[Math.round(l)]}`}},nt=br;var Kt={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{let i=t.match(Kt.hueRe);if(i){let[,e,l]=i;switch(l){case"grad":return u.channel.clamp.h(parseFloat(e)*.9);case"rad":return u.channel.clamp.h(parseFloat(e)*180/Math.PI);case"turn":return u.channel.clamp.h(parseFloat(e)*360)}}return u.channel.clamp.h(parseFloat(t))},parse:t=>{let i=t.charCodeAt(0);if(i!==104&&i!==72)return;let e=t.match(Kt.re);if(!e)return;let[,l,o,C,y,T]=e;return at.set({h:Kt._hue2deg(l),s:u.channel.clamp.s(parseFloat(o)),l:u.channel.clamp.l(parseFloat(C)),a:y?u.channel.clamp.a(T?parseFloat(y)/100:parseFloat(y)):1},t)},stringify:t=>{let{h:i,s:e,l,a:o}=t;return o<1?`hsla(${u.lang.round(i)}, ${u.lang.round(e)}%, ${u.lang.round(l)}%, ${o})`:`hsl(${u.lang.round(i)}, ${u.lang.round(e)}%, ${u.lang.round(l)}%)`}},qt=Kt;var Zt={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();let i=Zt.colors[t];if(i)return nt.parse(i)},stringify:t=>{let i=nt.stringify(t);for(let e in Zt.colors)if(Zt.colors[e]===i)return e}},Ei=Zt;var Sr={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{let i=t.charCodeAt(0);if(i!==114&&i!==82)return;let e=t.match(Sr.re);if(!e)return;let[,l,o,C,y,T,v,E,Y]=e;return at.set({r:u.channel.clamp.r(o?parseFloat(l)*2.55:parseFloat(l)),g:u.channel.clamp.g(y?parseFloat(C)*2.55:parseFloat(C)),b:u.channel.clamp.b(v?parseFloat(T)*2.55:parseFloat(T)),a:E?u.channel.clamp.a(Y?parseFloat(E)/100:parseFloat(E)):1},t)},stringify:t=>{let{r:i,g:e,b:l,a:o}=t;return o<1?`rgba(${u.lang.round(i)}, ${u.lang.round(e)}, ${u.lang.round(l)}, ${u.lang.round(o)})`:`rgb(${u.lang.round(i)}, ${u.lang.round(e)}, ${u.lang.round(l)})`}},Ot=Sr;var be={format:{keyword:Ei,hex:nt,rgb:Ot,rgba:Ot,hsl:qt,hsla:qt},parse:t=>{if(typeof t!="string")return t;let i=nt.parse(t)||Ot.parse(t)||qt.parse(t)||Ei.parse(t);if(i)return i;throw new Error(`Unsupported color format: "${t}"`)},stringify:t=>!t.changed&&t.color?t.color:t.type.is(F.HSL)||t.data.r===void 0?qt.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?Ot.stringify(t):nt.stringify(t)},L=be;var Se=(t,i)=>{let e=L.parse(t);for(let l in i)e[l]=u.channel.clamp[l](i[l]);return L.stringify(e)},Jt=Se;var Fe=(t,i,e=0,l=1)=>{if(typeof t!="number")return Jt(t,{a:i});let o=at.set({r:u.channel.clamp.r(t),g:u.channel.clamp.g(i),b:u.channel.clamp.b(e),a:u.channel.clamp.a(l)});return L.stringify(o)},W=Fe;var Le=(t,i)=>u.lang.round(L.parse(t)[i]),_e=Le;var ve=t=>{let{r:i,g:e,b:l}=L.parse(t),o=.2126*u.channel.toLinear(i)+.7152*u.channel.toLinear(e)+.0722*u.channel.toLinear(l);return u.lang.round(o)},Fr=ve;var Ee=t=>Fr(t)>=.5,Lr=Ee;var Ae=t=>!Lr(t),k=Ae;var qe=(t,i,e)=>{let l=L.parse(t),o=l[i],C=u.channel.clamp[i](o+e);return o!==C&&(l[i]=C),L.stringify(l)},kt=qe;var Oe=(t,i)=>kt(t,"l",i),n=Oe;var Me=(t,i)=>kt(t,"l",-i),h=Me;var Ie=(t,i)=>kt(t,"a",-i),De=Ie;var we=(t,i)=>{let e=L.parse(t),l={};for(let o in i)i[o]&&(l[o]=e[o]+i[o]);return Jt(t,l)},r=we;var ze=(t,i,e=50)=>{let{r:l,g:o,b:C,a:y}=L.parse(t),{r:T,g:v,b:E,a:Y}=L.parse(i),Ft=e/100,dt=Ft*2-1,ot=y-Y,gt=((dt*ot===-1?dt:(dt+ot)/(1+dt*ot))+1)/2,Lt=1-gt,ci=l*gt+T*Lt,di=o*gt+v*Lt,ut=C*gt+E*Lt,A=y*Ft+Y*(1-Ft);return W(ci,di,ut,A)},_r=ze;var We=(t,i=100)=>{let e=L.parse(t);return e.r=255-e.r,e.g=255-e.g,e.b=255-e.b,_r(e,t,i)},a=We;var{entries:wr,setPrototypeOf:vr,isFrozen:Re,getPrototypeOf:Pe,getOwnPropertyDescriptor:Ne}=Object,{freeze:P,seal:V,create:ii}=Object,{apply:wi,construct:zi}=typeof Reflect<"u"&&Reflect;P||(P=function(i){return i});V||(V=function(i){return i});wi||(wi=function(i,e){for(var l=arguments.length,o=new Array(l>2?l-2:0),C=2;C1?e-1:0),o=1;o1?e-1:0),o=1;o2&&arguments[2]!==void 0?arguments[2]:ri;vr&&vr(t,null);let l=i.length;for(;l--;){let o=i[l];if(typeof o=="string"){let C=e(o);C!==o&&(Re(i)||(i[l]=C),o=C)}t[o]=!0}return t}function Ve(t){for(let i=0;i/gm),Je=V(/\$\{[\w\W]*/gm),Qe=V(/^data-[\-\w.\u00B7-\uFFFF]+$/),to=V(/^aria-[\-\w]+$/),zr=V(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),io=V(/^(?:\w+script|data):/i),ro=V(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Wr=V(/^html$/i),eo=V(/^[a-z][.\w]*(-[.\w]+)+$/i),Ir=Object.freeze({__proto__:null,ARIA_ATTR:to,ATTR_WHITESPACE:ro,CUSTOM_ELEMENT:eo,DATA_ATTR:Qe,DOCTYPE_NAME:Wr,ERB_EXPR:Ze,IS_ALLOWED_URI:zr,IS_SCRIPT_OR_DATA:io,MUSTACHE_EXPR:Ke,TMPLIT_EXPR:Je}),zt={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},oo=function(){return typeof window>"u"?null:window},so=function(i,e){if(typeof i!="object"||typeof i.createPolicy!="function")return null;let l=null,o="data-tt-policy-suffix";e&&e.hasAttribute(o)&&(l=e.getAttribute(o));let C="dompurify"+(l?"#"+l:"");try{return i.createPolicy(C,{createHTML(y){return y},createScriptURL(y){return y}})}catch(y){return console.warn("TrustedTypes policy "+C+" could not be created."),null}},Dr=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function Rr(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:oo(),i=p=>Rr(p);if(i.version="3.3.3",i.removed=[],!t||!t.document||t.document.nodeType!==zt.document||!t.Element)return i.isSupported=!1,i;let{document:e}=t,l=e,o=l.currentScript,{DocumentFragment:C,HTMLTemplateElement:y,Node:T,Element:v,NodeFilter:E,NamedNodeMap:Y=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:Ft,DOMParser:dt,trustedTypes:ot}=t,Ct=v.prototype,gt=wt(Ct,"cloneNode"),Lt=wt(Ct,"remove"),ci=wt(Ct,"nextSibling"),di=wt(Ct,"childNodes"),ut=wt(Ct,"parentNode");if(typeof y=="function"){let p=e.createElement("template");p.content&&p.content.ownerDocument&&(e=p.content.ownerDocument)}let A,_t="",{implementation:Ci,createNodeIterator:ee,createDocumentFragment:oe,getElementsByTagName:se}=e,{importNode:ae}=l,z=Dr();i.isSupported=typeof wr=="function"&&typeof ut=="function"&&Ci&&Ci.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:gi,ERB_EXPR:ui,TMPLIT_EXPR:pi,DATA_ATTR:le,ARIA_ATTR:he,IS_SCRIPT_OR_DATA:ne,ATTR_WHITESPACE:ji,CUSTOM_ELEMENT:ce}=Ir,{IS_ALLOWED_URI:Vi}=Ir,_=null,Yi=x({},[...Ar,...Oi,...Mi,...Ii,...qr]),q=null,Xi=x({},[...Or,...Di,...Mr,...ti]),B=Object.seal(ii(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),vt=null,Pt=null,st=Object.seal(ii(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Ki=!0,mi=!0,Zi=!1,Ji=!0,pt=!1,Nt=!0,lt=!1,xi=!1,yi=!1,mt=!1,Ht=!1,Gt=!1,Qi=!0,tr=!1,de="user-content-",Ti=!0,Et=!1,xt={},X=null,fi=x({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),ir=null,rr=x({},["audio","video","img","source","image","track"]),ki=null,er=x({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ut="http://www.w3.org/1998/Math/MathML",$t="http://www.w3.org/2000/svg",tt="http://www.w3.org/1999/xhtml",yt=tt,Bi=!1,bi=null,Ce=x({},[Ut,$t,tt],Ai),jt=x({},["mi","mo","mn","ms","mtext"]),Vt=x({},["annotation-xml"]),ge=x({},["title","style","font","a","script"]),At=null,ue=["application/xhtml+xml","text/html"],pe="text/html",S=null,Tt=null,me=e.createElement("form"),or=function(s){return s instanceof RegExp||s instanceof Function},Si=function(){let s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Tt&&Tt===s)){if((!s||typeof s!="object")&&(s={}),s=Z(s),At=ue.indexOf(s.PARSER_MEDIA_TYPE)===-1?pe:s.PARSER_MEDIA_TYPE,S=At==="application/xhtml+xml"?Ai:ri,_=U(s,"ALLOWED_TAGS")?x({},s.ALLOWED_TAGS,S):Yi,q=U(s,"ALLOWED_ATTR")?x({},s.ALLOWED_ATTR,S):Xi,bi=U(s,"ALLOWED_NAMESPACES")?x({},s.ALLOWED_NAMESPACES,Ai):Ce,ki=U(s,"ADD_URI_SAFE_ATTR")?x(Z(er),s.ADD_URI_SAFE_ATTR,S):er,ir=U(s,"ADD_DATA_URI_TAGS")?x(Z(rr),s.ADD_DATA_URI_TAGS,S):rr,X=U(s,"FORBID_CONTENTS")?x({},s.FORBID_CONTENTS,S):fi,vt=U(s,"FORBID_TAGS")?x({},s.FORBID_TAGS,S):Z({}),Pt=U(s,"FORBID_ATTR")?x({},s.FORBID_ATTR,S):Z({}),xt=U(s,"USE_PROFILES")?s.USE_PROFILES:!1,Ki=s.ALLOW_ARIA_ATTR!==!1,mi=s.ALLOW_DATA_ATTR!==!1,Zi=s.ALLOW_UNKNOWN_PROTOCOLS||!1,Ji=s.ALLOW_SELF_CLOSE_IN_ATTR!==!1,pt=s.SAFE_FOR_TEMPLATES||!1,Nt=s.SAFE_FOR_XML!==!1,lt=s.WHOLE_DOCUMENT||!1,mt=s.RETURN_DOM||!1,Ht=s.RETURN_DOM_FRAGMENT||!1,Gt=s.RETURN_TRUSTED_TYPE||!1,yi=s.FORCE_BODY||!1,Qi=s.SANITIZE_DOM!==!1,tr=s.SANITIZE_NAMED_PROPS||!1,Ti=s.KEEP_CONTENT!==!1,Et=s.IN_PLACE||!1,Vi=s.ALLOWED_URI_REGEXP||zr,yt=s.NAMESPACE||tt,jt=s.MATHML_TEXT_INTEGRATION_POINTS||jt,Vt=s.HTML_INTEGRATION_POINTS||Vt,B=s.CUSTOM_ELEMENT_HANDLING||{},s.CUSTOM_ELEMENT_HANDLING&&or(s.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(B.tagNameCheck=s.CUSTOM_ELEMENT_HANDLING.tagNameCheck),s.CUSTOM_ELEMENT_HANDLING&&or(s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(B.attributeNameCheck=s.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),s.CUSTOM_ELEMENT_HANDLING&&typeof s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(B.allowCustomizedBuiltInElements=s.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),pt&&(mi=!1),Ht&&(mt=!0),xt&&(_=x({},qr),q=ii(null),xt.html===!0&&(x(_,Ar),x(q,Or)),xt.svg===!0&&(x(_,Oi),x(q,Di),x(q,ti)),xt.svgFilters===!0&&(x(_,Mi),x(q,Di),x(q,ti)),xt.mathMl===!0&&(x(_,Ii),x(q,Mr),x(q,ti))),U(s,"ADD_TAGS")||(st.tagCheck=null),U(s,"ADD_ATTR")||(st.attributeCheck=null),s.ADD_TAGS&&(typeof s.ADD_TAGS=="function"?st.tagCheck=s.ADD_TAGS:(_===Yi&&(_=Z(_)),x(_,s.ADD_TAGS,S))),s.ADD_ATTR&&(typeof s.ADD_ATTR=="function"?st.attributeCheck=s.ADD_ATTR:(q===Xi&&(q=Z(q)),x(q,s.ADD_ATTR,S))),s.ADD_URI_SAFE_ATTR&&x(ki,s.ADD_URI_SAFE_ATTR,S),s.FORBID_CONTENTS&&(X===fi&&(X=Z(X)),x(X,s.FORBID_CONTENTS,S)),s.ADD_FORBID_CONTENTS&&(X===fi&&(X=Z(X)),x(X,s.ADD_FORBID_CONTENTS,S)),Ti&&(_["#text"]=!0),lt&&x(_,["html","head","body"]),_.table&&(x(_,["tbody"]),delete vt.tbody),s.TRUSTED_TYPES_POLICY){if(typeof s.TRUSTED_TYPES_POLICY.createHTML!="function")throw Dt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof s.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Dt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');A=s.TRUSTED_TYPES_POLICY,_t=A.createHTML("")}else A===void 0&&(A=so(ot,o)),A!==null&&typeof _t=="string"&&(_t=A.createHTML(""));P&&P(s),Tt=s}},sr=x({},[...Oi,...Mi,...Ye]),ar=x({},[...Ii,...Xe]),xe=function(s){let d=ut(s);(!d||!d.tagName)&&(d={namespaceURI:yt,tagName:"template"});let g=ri(s.tagName),f=ri(d.tagName);return bi[s.namespaceURI]?s.namespaceURI===$t?d.namespaceURI===tt?g==="svg":d.namespaceURI===Ut?g==="svg"&&(f==="annotation-xml"||jt[f]):!!sr[g]:s.namespaceURI===Ut?d.namespaceURI===tt?g==="math":d.namespaceURI===$t?g==="math"&&Vt[f]:!!ar[g]:s.namespaceURI===tt?d.namespaceURI===$t&&!Vt[f]||d.namespaceURI===Ut&&!jt[f]?!1:!ar[g]&&(ge[g]||!sr[g]):!!(At==="application/xhtml+xml"&&bi[s.namespaceURI]):!1},K=function(s){Mt(i.removed,{element:s});try{ut(s).removeChild(s)}catch(d){Lt(s)}},ht=function(s,d){try{Mt(i.removed,{attribute:d.getAttributeNode(s),from:d})}catch(g){Mt(i.removed,{attribute:null,from:d})}if(d.removeAttribute(s),s==="is")if(mt||Ht)try{K(d)}catch(g){}else try{d.setAttribute(s,"")}catch(g){}},lr=function(s){let d=null,g=null;if(yi)s=""+s;else{let b=qi(s,/^[\r\n\t ]+/);g=b&&b[0]}At==="application/xhtml+xml"&&yt===tt&&(s=''+s+"");let f=A?A.createHTML(s):s;if(yt===tt)try{d=new dt().parseFromString(f,At)}catch(b){}if(!d||!d.documentElement){d=Ci.createDocument(yt,"template",null);try{d.documentElement.innerHTML=Bi?_t:f}catch(b){}}let M=d.body||d.documentElement;return s&&g&&M.insertBefore(e.createTextNode(g),M.childNodes[0]||null),yt===tt?se.call(d,lt?"html":"body")[0]:lt?d.documentElement:M},hr=function(s){return ee.call(s.ownerDocument||s,s,E.SHOW_ELEMENT|E.SHOW_COMMENT|E.SHOW_TEXT|E.SHOW_PROCESSING_INSTRUCTION|E.SHOW_CDATA_SECTION,null)},Fi=function(s){return s instanceof Ft&&(typeof s.nodeName!="string"||typeof s.textContent!="string"||typeof s.removeChild!="function"||!(s.attributes instanceof Y)||typeof s.removeAttribute!="function"||typeof s.setAttribute!="function"||typeof s.namespaceURI!="string"||typeof s.insertBefore!="function"||typeof s.hasChildNodes!="function")},nr=function(s){return typeof T=="function"&&s instanceof T};function it(p,s,d){Qt(p,g=>{g.call(i,s,d,Tt)})}let cr=function(s){let d=null;if(it(z.beforeSanitizeElements,s,null),Fi(s))return K(s),!0;let g=S(s.nodeName);if(it(z.uponSanitizeElement,s,{tagName:g,allowedTags:_}),Nt&&s.hasChildNodes()&&!nr(s.firstElementChild)&&R(/<[/\w!]/g,s.innerHTML)&&R(/<[/\w!]/g,s.textContent)||s.nodeType===zt.progressingInstruction||Nt&&s.nodeType===zt.comment&&R(/<[/\w]/g,s.data))return K(s),!0;if(!(st.tagCheck instanceof Function&&st.tagCheck(g))&&(!_[g]||vt[g])){if(!vt[g]&&Cr(g)&&(B.tagNameCheck instanceof RegExp&&R(B.tagNameCheck,g)||B.tagNameCheck instanceof Function&&B.tagNameCheck(g)))return!1;if(Ti&&!X[g]){let f=ut(s)||s.parentNode,M=di(s)||s.childNodes;if(M&&f){let b=M.length;for(let H=b-1;H>=0;--H){let rt=gt(M[H],!0);rt.__removalCount=(s.__removalCount||0)+1,f.insertBefore(rt,ci(s))}}}return K(s),!0}return s instanceof v&&!xe(s)||(g==="noscript"||g==="noembed"||g==="noframes")&&R(/<\/no(script|embed|frames)/i,s.innerHTML)?(K(s),!0):(pt&&s.nodeType===zt.text&&(d=s.textContent,Qt([gi,ui,pi],f=>{d=It(d,f," ")}),s.textContent!==d&&(Mt(i.removed,{element:s.cloneNode()}),s.textContent=d)),it(z.afterSanitizeElements,s,null),!1)},dr=function(s,d,g){if(Pt[d]||Qi&&(d==="id"||d==="name")&&(g in e||g in me))return!1;if(!(mi&&!Pt[d]&&R(le,d))){if(!(Ki&&R(he,d))){if(!(st.attributeCheck instanceof Function&&st.attributeCheck(d,s))){if(!q[d]||Pt[d]){if(!(Cr(s)&&(B.tagNameCheck instanceof RegExp&&R(B.tagNameCheck,s)||B.tagNameCheck instanceof Function&&B.tagNameCheck(s))&&(B.attributeNameCheck instanceof RegExp&&R(B.attributeNameCheck,d)||B.attributeNameCheck instanceof Function&&B.attributeNameCheck(d,s))||d==="is"&&B.allowCustomizedBuiltInElements&&(B.tagNameCheck instanceof RegExp&&R(B.tagNameCheck,g)||B.tagNameCheck instanceof Function&&B.tagNameCheck(g))))return!1}else if(!ki[d]){if(!R(Vi,It(g,ji,""))){if(!((d==="src"||d==="xlink:href"||d==="href")&&s!=="script"&&Ue(g,"data:")===0&&ir[s])){if(!(Zi&&!R(ne,It(g,ji,"")))){if(g)return!1}}}}}}}return!0},Cr=function(s){return s!=="annotation-xml"&&qi(s,ce)},gr=function(s){it(z.beforeSanitizeAttributes,s,null);let{attributes:d}=s;if(!d||Fi(s))return;let g={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:q,forceKeepAttr:void 0},f=d.length;for(;f--;){let M=d[f],{name:b,namespaceURI:H,value:rt}=M,ft=S(b),Li=rt,O=b==="value"?Li:$e(Li);if(g.attrName=ft,g.attrValue=O,g.keepAttr=!0,g.forceKeepAttr=void 0,it(z.uponSanitizeAttribute,s,g),O=g.attrValue,tr&&(ft==="id"||ft==="name")&&(ht(b,s),O=de+O),Nt&&R(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,O)){ht(b,s);continue}if(ft==="attributename"&&qi(O,"href")){ht(b,s);continue}if(g.forceKeepAttr)continue;if(!g.keepAttr){ht(b,s);continue}if(!Ji&&R(/\/>/i,O)){ht(b,s);continue}pt&&Qt([gi,ui,pi],pr=>{O=It(O,pr," ")});let ur=S(s.nodeName);if(!dr(ur,ft,O)){ht(b,s);continue}if(A&&typeof ot=="object"&&typeof ot.getAttributeType=="function"&&!H)switch(ot.getAttributeType(ur,ft)){case"TrustedHTML":{O=A.createHTML(O);break}case"TrustedScriptURL":{O=A.createScriptURL(O);break}}if(O!==Li)try{H?s.setAttributeNS(H,b,O):s.setAttribute(b,O),Fi(s)?K(s):Er(i.removed)}catch(pr){ht(b,s)}}it(z.afterSanitizeAttributes,s,null)},ye=function p(s){let d=null,g=hr(s);for(it(z.beforeSanitizeShadowDOM,s,null);d=g.nextNode();)it(z.uponSanitizeShadowNode,d,null),cr(d),gr(d),d.content instanceof C&&p(d.content);it(z.afterSanitizeShadowDOM,s,null)};return i.sanitize=function(p){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},d=null,g=null,f=null,M=null;if(Bi=!p,Bi&&(p=""),typeof p!="string"&&!nr(p))if(typeof p.toString=="function"){if(p=p.toString(),typeof p!="string")throw Dt("dirty is not a string, aborting")}else throw Dt("toString is not a function");if(!i.isSupported)return p;if(xi||Si(s),i.removed=[],typeof p=="string"&&(Et=!1),Et){if(p.nodeName){let rt=S(p.nodeName);if(!_[rt]||vt[rt])throw Dt("root node is forbidden and cannot be sanitized in-place")}}else if(p instanceof T)d=lr(""),g=d.ownerDocument.importNode(p,!0),g.nodeType===zt.element&&g.nodeName==="BODY"||g.nodeName==="HTML"?d=g:d.appendChild(g);else{if(!mt&&!pt&&!lt&&p.indexOf("<")===-1)return A&&Gt?A.createHTML(p):p;if(d=lr(p),!d)return mt?null:Gt?_t:""}d&&yi&&K(d.firstChild);let b=hr(Et?p:d);for(;f=b.nextNode();)cr(f),gr(f),f.content instanceof C&&ye(f.content);if(Et)return p;if(mt){if(Ht)for(M=oe.call(d.ownerDocument);d.firstChild;)M.appendChild(d.firstChild);else M=d;return(q.shadowroot||q.shadowrootmode)&&(M=ae.call(l,M,!0)),M}let H=lt?d.outerHTML:d.innerHTML;return lt&&_["!doctype"]&&d.ownerDocument&&d.ownerDocument.doctype&&d.ownerDocument.doctype.name&&R(Wr,d.ownerDocument.doctype.name)&&(H=" +`+H),pt&&Qt([gi,ui,pi],rt=>{H=It(H,rt," ")}),A&&Gt?A.createHTML(H):H},i.setConfig=function(){let p=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Si(p),xi=!0},i.clearConfig=function(){Tt=null,xi=!1},i.isValidAttribute=function(p,s,d){Tt||Si({});let g=S(p),f=S(s);return dr(g,f,d)},i.addHook=function(p,s){typeof s=="function"&&Mt(z[p],s)},i.removeHook=function(p,s){if(s!==void 0){let d=He(z[p],s);return d===-1?void 0:Ge(z[p],d,1)[0]}return Er(z[p])},i.removeHooks=function(p){z[p]=[]},i.removeAllHooks=function(){z=Dr()},i}var Bt=Rr();var ao=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,lo=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,ho=/\s*%%.*\n/gm,no=class extends Error{static{c(this,"UnknownDiagramError")}constructor(t){super(t),this.name="UnknownDiagramError"}},si={},Ga=c(function(t,i){t=t.replace(ao,"").replace(lo,"").replace(ho,` +`);for(let[e,{detector:l}]of Object.entries(si))if(l(t,i))return e;throw new no(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),Ua=c((...t)=>{for(let{id:i,detector:e,loader:l}of t)$r(i,e,l)},"registerLazyLoadedDiagrams"),$r=c((t,i,e)=>{si[t]&&D.warn(`Detector with key ${t} already exists. Overwriting.`),si[t]={detector:i,loader:e},D.debug(`Detector with key ${t} added${e?" with loader":""}`)},"addDetector"),$a=c(t=>si[t].loader,"getDiagramLoader"),Wi=c((t,i,{depth:e=2,clobber:l=!1}={})=>{let o={depth:e,clobber:l};return Array.isArray(i)&&!Array.isArray(t)?(i.forEach(C=>Wi(t,C,o)),t):Array.isArray(i)&&Array.isArray(t)?(i.forEach(C=>{t.includes(C)||t.push(C)}),t):t===void 0||e<=0?t!=null&&typeof t=="object"&&typeof i=="object"?Object.assign(t,i):i:(i!==void 0&&typeof t=="object"&&typeof i=="object"&&Object.keys(i).forEach(C=>{typeof i[C]=="object"&&i[C]!==null&&(t[C]===void 0||typeof t[C]=="object")?(t[C]===void 0&&(t[C]=Array.isArray(i[C])?[]:{}),t[C]=Wi(t[C],i[C],{depth:e-1,clobber:l})):(l||typeof t[C]!="object"&&typeof i[C]!="object")&&(t[C]=i[C])}),t)},"assignWithDepth"),w=Wi,J="#ffffff",Q="#f2f2f2",m=c((t,i)=>i?r(t,{s:-40,l:10}):r(t,{s:-40,l:-10}),"mkBorder"),co=class{static{c(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.useGradient=!0,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||r(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||r(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||m(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||m(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||m(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||a(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||a(this.tertiaryColor),this.lineColor=this.lineColor||a(this.background),this.arrowheadColor=this.arrowheadColor||a(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?h(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||h(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||a(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||n(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||"navy",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.darkMode?(this.rowOdd=this.rowOdd||h(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||h(this.mainBkg,10)):(this.rowOdd=this.rowOdd||n(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||n(this.mainBkg,5)),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||r(this.primaryColor,{h:30}),this.cScale4=this.cScale4||r(this.primaryColor,{h:60}),this.cScale5=this.cScale5||r(this.primaryColor,{h:90}),this.cScale6=this.cScale6||r(this.primaryColor,{h:120}),this.cScale7=this.cScale7||r(this.primaryColor,{h:150}),this.cScale8=this.cScale8||r(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||r(this.primaryColor,{h:270}),this.cScale10=this.cScale10||r(this.primaryColor,{h:300}),this.cScale11=this.cScale11||r(this.primaryColor,{h:330}),this.darkMode)for(let i=0;i{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},Co=c(t=>{let i=new co;return i.calculate(t),i},"getThemeVariables"),go=class{static{c(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=n(this.primaryColor,16),this.tertiaryColor=r(this.primaryColor,{h:-160}),this.primaryBorderColor=a(this.background),this.secondaryBorderColor=m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=m(this.tertiaryColor,this.darkMode),this.primaryTextColor=a(this.primaryColor),this.secondaryTextColor=a(this.secondaryColor),this.tertiaryTextColor=a(this.tertiaryColor),this.lineColor=a(this.background),this.textColor=a(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=n(a("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=W(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.clusterBkg="#302F3D",this.sectionBkgColor=h("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=h(this.sectionBkgColor,10),this.taskBorderColor=W(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=W(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||n(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||h(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal"}updateColors(){this.secondBkg=n(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=n(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=n(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=a(this.doneTaskBkgColor),this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=r(this.primaryColor,{h:64}),this.fillType3=r(this.secondaryColor,{h:64}),this.fillType4=r(this.primaryColor,{h:-64}),this.fillType5=r(this.secondaryColor,{h:-64}),this.fillType6=r(this.primaryColor,{h:128}),this.fillType7=r(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||r(this.primaryColor,{h:30}),this.cScale4=this.cScale4||r(this.primaryColor,{h:60}),this.cScale5=this.cScale5||r(this.primaryColor,{h:90}),this.cScale6=this.cScale6||r(this.primaryColor,{h:120}),this.cScale7=this.cScale7||r(this.primaryColor,{h:150}),this.cScale8=this.cScale8||r(this.primaryColor,{h:210}),this.cScale9=this.cScale9||r(this.primaryColor,{h:270}),this.cScale10=this.cScale10||r(this.primaryColor,{h:300}),this.cScale11=this.cScale11||r(this.primaryColor,{h:330});for(let t=0;t{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},uo=c(t=>{let i=new go;return i.calculate(t),i},"getThemeVariables"),po=class{static{c(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=r(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=r(this.primaryColor,{h:-160}),this.primaryBorderColor=m(this.primaryColor,this.darkMode),this.secondaryBorderColor=m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=m(this.tertiaryColor,this.darkMode),this.primaryTextColor=a(this.primaryColor),this.secondaryTextColor=a(this.secondaryColor),this.tertiaryTextColor=a(this.tertiaryColor),this.lineColor=a(this.background),this.textColor=a(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.primaryBorderColor=m(this.primaryColor,this.darkMode),this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.clusterBkg="#FBFBFF",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.sectionBkgColor=W(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="navy",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!1,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow(1px 2px 2px rgba(185, 185, 185, 1))",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||r(this.primaryColor,{h:30}),this.cScale4=this.cScale4||r(this.primaryColor,{h:60}),this.cScale5=this.cScale5||r(this.primaryColor,{h:90}),this.cScale6=this.cScale6||r(this.primaryColor,{h:120}),this.cScale7=this.cScale7||r(this.primaryColor,{h:150}),this.cScale8=this.cScale8||r(this.primaryColor,{h:210}),this.cScale9=this.cScale9||r(this.primaryColor,{h:270}),this.cScale10=this.cScale10||r(this.primaryColor,{h:300}),this.cScale11=this.cScale11||r(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||h(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||h(this.tertiaryColor,40);for(let t=0;t{this[e]==="calculated"&&(this[e]=void 0)}),typeof t!="object"){this.updateColors();return}let i=Object.keys(t);i.forEach(e=>{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},mo=c(t=>{let i=new po;return i.calculate(t),i},"getThemeVariables"),xo=class{static{c(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=n("#cde498",10),this.primaryBorderColor=m(this.primaryColor,this.darkMode),this.secondaryBorderColor=m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=m(this.tertiaryColor,this.darkMode),this.primaryTextColor=a(this.primaryColor),this.secondaryTextColor=a(this.secondaryColor),this.tertiaryTextColor=a(this.primaryColor),this.lineColor=a(this.background),this.textColor=a(this.background),this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,0.5))"}updateColors(){this.actorBorder=h(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||r(this.primaryColor,{h:30}),this.cScale4=this.cScale4||r(this.primaryColor,{h:60}),this.cScale5=this.cScale5||r(this.primaryColor,{h:90}),this.cScale6=this.cScale6||r(this.primaryColor,{h:120}),this.cScale7=this.cScale7||r(this.primaryColor,{h:150}),this.cScale8=this.cScale8||r(this.primaryColor,{h:210}),this.cScale9=this.cScale9||r(this.primaryColor,{h:270}),this.cScale10=this.cScale10||r(this.primaryColor,{h:300}),this.cScale11=this.cScale11||r(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||h(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||h(this.tertiaryColor,40);for(let t=0;t{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},yo=c(t=>{let i=new xo;return i.calculate(t),i},"getThemeVariables"),To=class{static{c(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=n(this.contrast,55),this.background="#ffffff",this.tertiaryColor=r(this.primaryColor,{h:-160}),this.primaryBorderColor=m(this.primaryColor,this.darkMode),this.secondaryBorderColor=m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=m(this.tertiaryColor,this.darkMode),this.primaryTextColor=a(this.primaryColor),this.secondaryTextColor=a(this.secondaryColor),this.tertiaryTextColor=a(this.tertiaryColor),this.lineColor=a(this.background),this.textColor=a(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal",this.rowOdd=this.rowOdd||n(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))"}updateColors(){this.secondBkg=n(this.contrast,55),this.border2=this.contrast,this.actorBorder=n(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let t=0;t{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},fo=c(t=>{let i=new To;return i.calculate(t),i},"getThemeVariables"),ko=class{static{c(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=3,this.strokeWidth=2,this.primaryBorderColor=m(this.primaryColor,this.darkMode),this.fontFamily="arial, sans-serif",this.fontSize="14px",this.nodeBorder="#000000",this.stateBorder="#000000",this.useGradient=!0,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="drop-shadow( 0px 1px 2px rgba(0, 0, 0, 0.25));",this.tertiaryColor="#ffffff",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||r(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||r(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||m(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||m(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||m(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||a(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||a(this.tertiaryColor),this.lineColor=this.lineColor||a(this.background),this.arrowheadColor=this.arrowheadColor||a(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?h(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||h(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||a(this.lineColor);let t="#ECECFE",i="#E9E9F1",e=r(t,{h:180,l:5});if(this.sectionBkgColor=this.sectionBkgColor||e,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||i,this.sectionBkgColor2=this.sectionBkgColor2||t,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||t,this.activeTaskBorderColor=this.activeTaskBorderColor||t,this.activeTaskBkgColor=this.activeTaskBkgColor||n(t,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||t,this.cScale1=this.cScale1||i,this.cScale2=this.cScale2||e,this.cScale3=this.cScale3||r(t,{h:30}),this.cScale4=this.cScale4||r(t,{h:60}),this.cScale5=this.cScale5||r(t,{h:90}),this.cScale6=this.cScale6||r(t,{h:120}),this.cScale7=this.cScale7||r(t,{h:150}),this.cScale8=this.cScale8||r(t,{h:210,l:150}),this.cScale9=this.cScale9||r(t,{h:270}),this.cScale10=this.cScale10||r(t,{h:300}),this.cScale11=this.cScale11||r(t,{h:330}),this.darkMode)for(let o=0;o{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},Bo=c(t=>{let i=new ko;return i.calculate(t),i},"getThemeVariables"),bo=class{static{c(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=n(this.primaryColor,16),this.tertiaryColor=r(this.primaryColor,{h:-160}),this.primaryBorderColor=a(this.background),this.secondaryBorderColor=m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=m(this.tertiaryColor,this.darkMode),this.primaryTextColor=a(this.primaryColor),this.secondaryTextColor=a(this.secondaryColor),this.tertiaryTextColor=a(this.tertiaryColor),this.mainBkg="#2a2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=n(a("#323D47"),10),this.border1="#ccc",this.border2=W(255,255,255,.25),this.arrowheadColor=a(this.background),this.fontFamily="arial, sans-serif",this.fontSize="14px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=3,this.strokeWidth=1,this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily="arial, sans-serif",this.fontSize="14px",this.useGradient=!0,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,0.2))",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||r(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||r(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||m(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||m(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||m(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||a(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||a(this.tertiaryColor),this.lineColor=this.lineColor||a(this.background),this.arrowheadColor=this.arrowheadColor||a(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?h(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||h(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||a(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||n(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||r(this.primaryColor,{h:30}),this.cScale4=this.cScale4||r(this.primaryColor,{h:60}),this.cScale5=this.cScale5||r(this.primaryColor,{h:90}),this.cScale6=this.cScale6||r(this.primaryColor,{h:120}),this.cScale7=this.cScale7||r(this.primaryColor,{h:150}),this.cScale8=this.cScale8||r(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||r(this.primaryColor,{h:270}),this.cScale10=this.cScale10||r(this.primaryColor,{h:300}),this.cScale11=this.cScale11||r(this.primaryColor,{h:330}),this.darkMode)for(let i=0;i{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},So=c(t=>{let i=new bo;return i.calculate(t),i},"getThemeVariables"),Fo=class{static{c(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#28253D",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.primaryBorderColor=m("#28253D",this.darkMode),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#28253D",this.stateBorder="#28253D",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.tertiaryColor="#ffffff",this.clusterBkg="#F9F9FB",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.actorBorder="#28253D",this.filterColor="#000000"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#28253D"),this.secondaryColor=this.secondaryColor||r(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||r(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||m(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||m(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||m(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#FEF9C3",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||a(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||a(this.tertiaryColor),this.lineColor=this.lineColor||a(this.background),this.arrowheadColor=this.arrowheadColor||a(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?h(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.noteFontWeight=600,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||h(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||a(this.lineColor);let t="#ECECFE",i="#E9E9F1",e=r(t,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||e,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||i,this.sectionBkgColor2=this.sectionBkgColor2||t,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||t,this.activeTaskBorderColor=this.activeTaskBorderColor||t,this.activeTaskBkgColor=this.activeTaskBkgColor||n(t,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.compositeTitleBackground="#F9F9FB",this.altBackground="#F9F9FB",this.stateEdgeLabelBackground="#FFFFFF",this.fontWeight=600,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor;for(let o=0;o{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},Lo=c(t=>{let i=new Fo;return i.calculate(t),i},"getThemeVariables"),_o=class{static{c(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=n(this.primaryColor,16),this.tertiaryColor=r(this.primaryColor,{h:-160}),this.primaryBorderColor=a(this.background),this.secondaryBorderColor=m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=m(this.tertiaryColor,this.darkMode),this.primaryTextColor=a(this.primaryColor),this.secondaryTextColor=a(this.secondaryColor),this.tertiaryTextColor=a(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=n(a("#323D47"),10),this.border1="#ccc",this.border2=W(255,255,255,.25),this.arrowheadColor=a(this.background),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.labelBackground="#111113",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.noteBkgColor=this.noteBkgColor??"#FEF9C3",this.noteTextColor=this.noteTextColor??"#28253D",this.THEME_COLOR_LIMIT=12,this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#FFFFFF",this.stateBorder="#FFFFFF",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.clusterBkg="#1E1A2E",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.filterColor="#FFFFFF"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#FFFFFF"),this.secondaryColor=this.secondaryColor||r(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||r(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||m(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||m(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||m(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||a(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||a(this.tertiaryColor),this.lineColor=this.lineColor||a(this.background),this.arrowheadColor=this.arrowheadColor||a(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?h(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder="#FFFFFF",this.signalColor="#FFFFFF",this.labelBoxBorderColor="#BDBCCC",this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||h(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||a(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||n(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.compositeBackground="#16141F",this.altBackground="#16141F",this.compositeTitleBackground="#16141F",this.stateEdgeLabelBackground="#16141F",this.fontWeight=600,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||r(this.primaryColor,{h:30}),this.cScale4=this.cScale4||r(this.primaryColor,{h:60}),this.cScale5=this.cScale5||r(this.primaryColor,{h:90}),this.cScale6=this.cScale6||r(this.primaryColor,{h:120}),this.cScale7=this.cScale7||r(this.primaryColor,{h:150}),this.cScale8=this.cScale8||r(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||r(this.primaryColor,{h:270}),this.cScale10=this.cScale10||r(this.primaryColor,{h:300}),this.cScale11=this.cScale11||r(this.primaryColor,{h:330}),this.darkMode)for(let i=0;i{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},vo=c(t=>{let i=new _o;return i.calculate(t),i},"getThemeVariables"),Eo=class{static{c(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#28253D",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.primaryBorderColor=m(this.primaryColor,this.darkMode),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#28253D",this.stateBorder="#28253D",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.tertiaryColor="#ffffff",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.actorBorder="#28253D",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.borderColorArray=["#E879F9","#2DD4BF","#FB923C","#22D3EE","#4ADE80","#A78BFA","#F87171","#FACC15","#818CF8","#A3E635 ","#38BDF8","#FB7185"],this.bkgColorArray=["#FDF4FF","#F0FDFA","#FFF7ED","#ECFEFF","#F0FDF4","#F5F3FF","#FEF2F2","#FEFCE8","#EEF2FF","#F7FEE7","#F0F9FF","#FFF1F2"],this.filterColor="#000000"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#28253D"),this.secondaryColor=this.secondaryColor||r(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||r(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||m(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||m(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||m(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||a(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||a(this.tertiaryColor),this.lineColor=this.lineColor||a(this.background),this.arrowheadColor=this.arrowheadColor||a(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?h(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||h(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||a(this.lineColor);let t="#ECECFE",i="#E9E9F1",e=r(t,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||e,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||i,this.sectionBkgColor2=this.sectionBkgColor2||t,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||t,this.activeTaskBorderColor=this.activeTaskBorderColor||t,this.activeTaskBkgColor=this.activeTaskBkgColor||n(t,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||"#f4a8ff",this.cScale1=this.cScale1||"#46ecd5",this.cScale2=this.cScale2||"#ffb86a",this.cScale3=this.cScale3||"#dab2ff",this.cScale4=this.cScale4||"#7bf1a8",this.cScale5=this.cScale5||"#c4b4ff",this.cScale6=this.cScale6||"#ffa2a2",this.cScale7=this.cScale7||"#ffdf20",this.cScale8=this.cScale8||"#a3b3ff",this.cScale9=this.cScale9||"#bbf451",this.cScale10=this.cScale10||"#74d4ff",this.cScale11=this.cScale11||"#ffa1ad";for(let o=0;o{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},Ao=c(t=>{let i=new Eo;return i.calculate(t),i},"getThemeVariables"),qo=class{static{c(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=n(this.primaryColor,16),this.tertiaryColor=r(this.primaryColor,{h:-160}),this.primaryBorderColor=a(this.background),this.secondaryBorderColor=m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=m(this.tertiaryColor,this.darkMode),this.primaryTextColor=a(this.primaryColor),this.secondaryTextColor=a(this.secondaryColor),this.tertiaryTextColor=a(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=n(a("#323D47"),10),this.border1="#ccc",this.border2=W(255,255,255,.25),this.arrowheadColor=a(this.background),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.labelBackground="#111113",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.noteBkgColor=this.noteBkgColor??"#FEF9C3",this.noteTextColor=this.noteTextColor??"#28253D",this.THEME_COLOR_LIMIT=12,this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#FFFFFF",this.stateBorder="#FFFFFF",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.clusterBkg="#1E1A2E",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.borderColorArray=["#E879F9","#2DD4BF","#FB923C","#22D3EE","#4ADE80","#A78BFA","#F87171","#FACC15","#818CF8","#A3E635 ","#38BDF8","#FB7185"],this.bkgColorArray=[],this.filterColor="#FFFFFF"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#FFFFFF"),this.secondaryColor=this.secondaryColor||r(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||r(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||m(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||m(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||m(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||m(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||a(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||a(this.tertiaryColor),this.lineColor=this.lineColor||a(this.background),this.arrowheadColor=this.arrowheadColor||a(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?h(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder="#FFFFFF",this.signalColor="#FFFFFF",this.labelBoxBorderColor="#BDBCCC",this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||h(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||a(this.lineColor),this.rootLabelColor="#FFFFFF",this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||n(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||"#f4a8ff",this.cScale1=this.cScale1||"#46ecd5",this.cScale2=this.cScale2||"#ffb86a",this.cScale3=this.cScale3||"#dab2ff",this.cScale4=this.cScale4||"#7bf1a8",this.cScale5=this.cScale5||"#c4b4ff",this.cScale6=this.cScale6||"#ffa2a2",this.cScale7=this.cScale7||"#ffdf20",this.cScale8=this.cScale8||"#a3b3ff",this.cScale9=this.cScale9||"#bbf451",this.cScale10=this.cScale10||"#74d4ff",this.cScale11=this.cScale11||"#ffa1ad";for(let i=0;i{this[e]=t[e]}),this.updateColors(),i.forEach(e=>{this[e]=t[e]})}},Oo=c(t=>{let i=new qo;return i.calculate(t),i},"getThemeVariables"),bt={base:{getThemeVariables:Co},dark:{getThemeVariables:uo},default:{getThemeVariables:mo},forest:{getThemeVariables:yo},neutral:{getThemeVariables:fo},neo:{getThemeVariables:Bo},"neo-dark":{getThemeVariables:So},redux:{getThemeVariables:Lo},"redux-dark":{getThemeVariables:vo},"redux-color":{getThemeVariables:Ao},"redux-dark-color":{getThemeVariables:Oo}},$={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:null,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200,inheritDir:!1},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,maxLabelWidth:360,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],titleColor:"",titleFontFamily:'"trebuchet ms", verdana, arial, sans-serif',titleFontSize:"4ex"},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,nodeSpacing:140,rankSpacing:80,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showDataLabel:!1,showDataLabelOutsideBar:!1,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200,layoutAlgorithm:"cose-bilkent"},ishikawa:{useMaxWidth:!0,diagramPadding:20},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},treeView:{useMaxWidth:!0,rowIndent:10,paddingX:5,paddingY:5,lineThickness:1},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16,randomize:!1},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:.17},venn:{useMaxWidth:!0,width:800,height:450,padding:8,useDebugLayout:!1},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1},jr=j(I({},$),{deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:bt.default.getThemeVariables(),sequence:j(I({},$.sequence),{messageFont:c(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:c(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:c(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")}),class:{hideEmptyMembersBox:!1},gantt:j(I({},$.gantt),{tickInterval:void 0,useWidth:void 0}),c4:j(I({},$.c4),{useWidth:void 0,personFont:c(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:j(I({},$.flowchart),{inheritDir:!1}),external_personFont:c(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:c(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:c(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:c(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:c(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:c(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:c(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:c(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:c(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:c(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:c(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:c(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:c(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:c(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:c(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:c(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:c(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:c(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:c(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:c(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:c(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")}),pie:j(I({},$.pie),{useWidth:984}),xyChart:j(I({},$.xyChart),{useWidth:void 0}),requirement:j(I({},$.requirement),{useWidth:void 0}),packet:I({},$.packet),treeView:j(I({},$.treeView),{useWidth:void 0}),radar:I({},$.radar),ishikawa:I({},$.ishikawa),treemap:{useMaxWidth:!0,padding:10,diagramPadding:8,showValues:!0,nodeWidth:100,nodeHeight:40,borderWidth:1,valueFontSize:12,labelFontSize:14,valueFormat:","},venn:I({},$.venn)}),Vr=c((t,i="")=>Object.keys(t).reduce((e,l)=>Array.isArray(t[l])?e:typeof t[l]=="object"&&t[l]!==null?[...e,i+l,...Vr(t[l],"")]:[...e,i+l],[]),"keyify"),Mo=new Set(Vr(jr,"")),Io=jr,Ri=c(t=>{if(D.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(i=>Ri(i));return}for(let i of Object.keys(t)){if(D.debug("Checking key",i),i.startsWith("__")||i.includes("proto")||i.includes("constr")||!Mo.has(i)||t[i]==null){D.debug("sanitize deleting key: ",i),delete t[i];continue}if(typeof t[i]=="object"){D.debug("sanitizing object",i),Ri(t[i]);continue}let e=["themeCSS","fontFamily","altFontFamily"];for(let l of e)i.includes(l)&&(D.debug("sanitizing css option",i),t[i]=Do(t[i]))}if(t.themeVariables)for(let i of Object.keys(t.themeVariables)){let e=t.themeVariables[i];e?.match&&!e.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[i]="")}D.debug("After sanitization",t)}},"sanitizeDirective"),Do=c(t=>{let i=0,e=0;for(let l of t){if(i!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),G=w({},hi),ai,ct=[],Wt=w({},hi),ni=c((t,i)=>{let e=w({},t),l={};for(let o of i)Xr(o),l=w(l,o);if(e=w(e,l),l.theme&&l.theme in bt){let o=w({},ai),C=w(o.themeVariables||{},l.themeVariables);e.theme&&e.theme in bt&&(e.themeVariables=bt[e.theme].getThemeVariables(C))}return Wt=e,Zr(Wt),Wt},"updateCurrentConfig"),ol=c(t=>(G=w({},hi),G=w(G,t),t.theme&&bt[t.theme]&&(G.themeVariables=bt[t.theme].getThemeVariables(t.themeVariables)),ni(G,ct),G),"setSiteConfig"),sl=c(t=>{ai=w({},t)},"saveConfigFromInitialize"),al=c(t=>(G=w(G,t),ni(G,ct),G),"updateSiteConfig"),ll=c(()=>w({},G),"getSiteConfig"),wo=c(t=>(Zr(t),w(Wt,t),Ni()),"setConfig"),Ni=c(()=>w({},Wt),"getConfig"),Xr=c(t=>{t&&(["secure",...G.secure??[]].forEach(i=>{Object.hasOwn(t,i)&&(D.debug(`Denied attempt to modify a secure key ${i}`,t[i]),delete t[i])}),Object.keys(t).forEach(i=>{i.startsWith("__")&&delete t[i]}),Object.keys(t).forEach(i=>{typeof t[i]=="string"&&(t[i].includes("<")||t[i].includes(">")||t[i].includes("url(data:"))&&delete t[i],typeof t[i]=="object"&&Xr(t[i])}))},"sanitize"),hl=c(t=>{Ri(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables=j(I({},t.themeVariables),{fontFamily:t.fontFamily})),ct.push(t),ni(G,ct)},"addDirective"),nl=c((t=G)=>{ct=[],ni(t,ct)},"reset"),zo={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead.",FLOWCHART_HTML_LABELS_DEPRECATED:"flowchart.htmlLabels is deprecated. Please use global htmlLabels instead."},Pr={},Kr=c(t=>{Pr[t]||(D.warn(zo[t]),Pr[t]=!0)},"issueWarning"),Zr=c(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&Kr("LAZY_LOAD_DEPRECATED")},"checkConfig"),cl=c(()=>{let t={};ai&&(t=w(t,ai));for(let i of ct)t=w(t,i);return t},"getUserDefinedConfig"),Wo=c(t=>(t.flowchart?.htmlLabels!=null&&Kr("FLOWCHART_HTML_LABELS_DEPRECATED"),Yr(t.htmlLabels??t.flowchart?.htmlLabels??!0)),"getEffectiveHtmlLabels"),Rt=//gi,Ro=c(t=>t?te(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),Po=(()=>{let t=!1;return()=>{t||(Jr(),t=!0)}})();function Jr(){let t="data-temp-href-target";Bt.addHook("beforeSanitizeAttributes",i=>{i.tagName==="A"&&i.hasAttribute("target")&&i.setAttribute(t,i.getAttribute("target")??"")}),Bt.addHook("afterSanitizeAttributes",i=>{i.tagName==="A"&&i.hasAttribute(t)&&(i.setAttribute("target",i.getAttribute(t)??""),i.removeAttribute(t),i.getAttribute("target")==="_blank"&&i.setAttribute("rel","noopener"))})}c(Jr,"setupDompurifyHooks");var Qr=c(t=>(Po(),Bt.sanitize(t)),"removeScript"),Nr=c((t,i)=>{if(Wo(i)){let e=i.securityLevel;e==="antiscript"||e==="strict"||e==="sandbox"?t=Qr(t):e!=="loose"&&(t=te(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=Uo(t))}return t},"sanitizeMore"),St=c((t,i)=>t&&(i.dompurifyConfig?t=Bt.sanitize(Nr(t,i),i.dompurifyConfig).toString():t=Bt.sanitize(Nr(t,i),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),No=c((t,i)=>typeof t=="string"?St(t,i):t.flat().map(e=>St(e,i)),"sanitizeTextOrArray"),Ho=c(t=>Rt.test(t),"hasBreaks"),Go=c(t=>t.split(Rt),"splitBreaks"),Uo=c(t=>t.replace(/#br#/g,"
"),"placeholderToBreak"),te=c(t=>t.replace(Rt,"#br#"),"breakToPlaceholder"),$o=c(t=>{let i="";return t&&(i=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,i=CSS.escape(i)),i},"getUrl"),jo=c(function(...t){let i=t.filter(e=>!isNaN(e));return Math.max(...i)},"getMax"),Vo=c(function(...t){let i=t.filter(e=>!isNaN(e));return Math.min(...i)},"getMin"),Cl=c(function(t){let i=t.split(/(,)/),e=[];for(let l=0;l0&&l+1Math.max(0,t.split(i).length-1),"countOccurrence"),Yo=c((t,i)=>{let e=Pi(t,"~"),l=Pi(i,"~");return e===1&&l===1},"shouldCombineSets"),Xo=c(t=>{let i=Pi(t,"~"),e=!1;if(i<=1)return t;i%2!==0&&t.startsWith("~")&&(t=t.substring(1),e=!0);let l=[...t],o=l.indexOf("~"),C=l.lastIndexOf("~");for(;o!==-1&&C!==-1&&o!==C;)l[o]="<",l[C]=">",o=l.indexOf("~"),C=l.lastIndexOf("~");return e&&l.unshift("~"),l.join("")},"processSet"),Hr=c(()=>window.MathMLElement!==void 0,"isMathMLSupported"),ei=/\$\$(.*)\$\$/g,Gr=c(t=>(t.match(ei)?.length??0)>0,"hasKatex"),gl=c((t,i)=>Yt(null,null,function*(){let e=document.createElement("div");e.innerHTML=yield Zo(t,i),e.id="katex-temp",e.style.visibility="hidden",e.style.position="absolute",e.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",e);let o={width:e.clientWidth,height:e.clientHeight};return e.remove(),o}),"calculateMathMLDimensions"),Ko=c((t,i)=>Yt(null,null,function*(){if(!Gr(t))return t;if(!(Hr()||i.legacyMathML||i.forceLegacyMathML))return t.replace(ei,"MathML is unsupported in this environment.");{let{default:e}=yield import("./chunk-27SWUPRL.js"),l=i.forceLegacyMathML||!Hr()&&i.legacyMathML?"htmlAndMathml":"mathml";return t.split(Rt).map(o=>Gr(o)?`
${o}
`:`
${o}
`).join("").replace(ei,(o,C)=>e.renderToString(C,{throwOnError:!0,displayMode:!0,output:l}).replace(/\n/g," ").replace(//g,""))}return t.replace(ei,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")}),"renderKatexUnsanitized"),Zo=c((t,i)=>Yt(null,null,function*(){return St(yield Ko(t,i),i)}),"renderKatexSanitized"),ul={getRows:Ro,sanitizeText:St,sanitizeTextOrArray:No,hasBreaks:Ho,splitBreaks:Go,lineBreakRegex:Rt,removeScript:Qr,getUrl:$o,evaluate:Yr,getMax:jo,getMin:Vo},Jo=c(function(t,i){for(let e of i)t.attr(e[0],e[1])},"d3Attrs"),Qo=c(function(t,i,e){let l=new Map;return e?(l.set("width","100%"),l.set("style",`max-width: ${i}px;`)):(l.set("height",t),l.set("width",i)),l},"calculateSvgSizeAttrs"),ts=c(function(t,i,e,l){let o=Qo(i,e,l);Jo(t,o)},"configureSvgSize"),is=c(function(t,i,e,l){let o=i.node().getBBox(),C=o.width,y=o.height;D.info(`SVG bounds: ${C}x${y}`,o);let T=0,v=0;D.info(`Graph bounds: ${T}x${v}`,t),T=C+e*2,v=y+e*2,D.info(`Calculated bounds: ${T}x${v}`),ts(i,v,T,l);let E=`${o.x-e} ${o.y-e} ${o.width+2*e} ${o.height+2*e}`;i.attr("viewBox",E)},"setupGraphViewbox"),oi={},rs=c((t,i,e,l)=>{let o="";return t in oi&&oi[t]?o=oi[t](j(I({},e),{svgId:l})):D.warn(`No theme found for ${t}`),` & { + font-family: ${e.fontFamily}; + font-size: ${e.fontSize}; + fill: ${e.textColor} + } + @keyframes edge-animation-frame { + from { + stroke-dashoffset: 0; + } + } + @keyframes dash { + to { + stroke-dashoffset: 0; + } + } + & .edge-animation-slow { + stroke-dasharray: 9,5 !important; + stroke-dashoffset: 900; + animation: dash 50s linear infinite; + stroke-linecap: round; + } + & .edge-animation-fast { + stroke-dasharray: 9,5 !important; + stroke-dashoffset: 900; + animation: dash 20s linear infinite; + stroke-linecap: round; + } + /* Classes common for multiple diagrams */ + + & .error-icon { + fill: ${e.errorBkgColor}; + } + & .error-text { + fill: ${e.errorTextColor}; + stroke: ${e.errorTextColor}; + } + + & .edge-thickness-normal { + stroke-width: ${e.strokeWidth??1}px; + } + & .edge-thickness-thick { + stroke-width: 3.5px + } + & .edge-pattern-solid { + stroke-dasharray: 0; + } + & .edge-thickness-invisible { + stroke-width: 0; + fill: none; + } + & .edge-pattern-dashed{ + stroke-dasharray: 3; + } + .edge-pattern-dotted { + stroke-dasharray: 2; + } + + & .marker { + fill: ${e.lineColor}; + stroke: ${e.lineColor}; + } + & .marker.cross { + stroke: ${e.lineColor}; + } + + & svg { + font-family: ${e.fontFamily}; + font-size: ${e.fontSize}; + } + & p { + margin: 0 + } + + ${o} + .node .neo-node { + stroke: ${e.nodeBorder}; + } + + [data-look="neo"].node rect, [data-look="neo"].cluster rect, [data-look="neo"].node polygon { + stroke: ${e.useGradient?"url("+l+"-gradient)":e.nodeBorder}; + filter: ${e.dropShadow?e.dropShadow.replace("url(#drop-shadow)",`url(${l}-drop-shadow)`):"none"}; + } + + + [data-look="neo"].node path { + stroke: ${e.useGradient?"url("+l+"-gradient)":e.nodeBorder}; + stroke-width: ${e.strokeWidth??1}px; + } + + [data-look="neo"].node .outer-path { + filter: ${e.dropShadow?e.dropShadow.replace("url(#drop-shadow)",`url(${l}-drop-shadow)`):"none"}; + } + + [data-look="neo"].node .neo-line path { + stroke: ${e.nodeBorder}; + filter: none; + } + + [data-look="neo"].node circle{ + stroke: ${e.useGradient?"url("+l+"-gradient)":e.nodeBorder}; + filter: ${e.dropShadow?e.dropShadow.replace("url(#drop-shadow)",`url(${l}-drop-shadow)`):"none"}; + } + + [data-look="neo"].node circle .state-start{ + fill: #000000; + } + + [data-look="neo"].icon-shape .icon { + fill: ${e.useGradient?"url("+l+"-gradient)":e.nodeBorder}; + filter: ${e.dropShadow?e.dropShadow.replace("url(#drop-shadow)",`url(${l}-drop-shadow)`):"none"}; + } + + [data-look="neo"].icon-shape .icon-neo path { + stroke: ${e.useGradient?"url("+l+"-gradient)":e.nodeBorder}; + filter: ${e.dropShadow?e.dropShadow.replace("url(#drop-shadow)",`url(${l}-drop-shadow)`):"none"}; + } + + ${i} +`},"getStyles"),es=c((t,i)=>{i!==void 0&&(oi[t]=i)},"addStylesForDiagram"),pl=rs,ie={};mr(ie,{clear:()=>os,getAccDescription:()=>hs,getAccTitle:()=>as,getDiagramTitle:()=>cs,setAccDescription:()=>ls,setAccTitle:()=>ss,setDiagramTitle:()=>ns});var Hi="",Gi="",Ui="",$i=c(t=>St(t,Ni()),"sanitizeText"),os=c(()=>{Hi="",Ui="",Gi=""},"clear"),ss=c(t=>{Hi=$i(t).replace(/^\s+/g,"")},"setAccTitle"),as=c(()=>Hi,"getAccTitle"),ls=c(t=>{Ui=$i(t).replace(/\n\s+/g,` +`)},"setAccDescription"),hs=c(()=>Ui,"getAccDescription"),ns=c(t=>{Gi=$i(t)},"setDiagramTitle"),cs=c(()=>Gi,"getDiagramTitle"),Ur=D,ds=xr,re=Ni,ml=wo,xl=hi,Cs=c(t=>St(t,re()),"sanitizeText"),gs=is,us=c(()=>ie,"getCommonDb"),li={},yl=c((t,i,e)=>{li[t]&&Ur.warn(`Diagram with id ${t} already registered. Overwriting.`),li[t]=i,e&&$r(t,e),es(t,i.styles),i.injectUtils?.(Ur,ds,re,Cs,gs,us(),()=>{})},"registerDiagram"),Tl=c(t=>{if(t in li)return li[t];throw new ps(t)},"getDiagram"),ps=class extends Error{static{c(this,"DiagramNotFoundError")}constructor(t){super(`Diagram ${t} not found.`)}};export{W as a,_e as b,k as c,n as d,h as e,De as f,Bt as g,ao as h,lo as i,no as j,si as k,Ga as l,Ua as m,$a as n,w as o,mo as p,bt as q,Io as r,Ri as s,hi as t,Yr as u,ol as v,sl as w,al as x,ll as y,wo as z,Ni as A,hl as B,nl as C,cl as D,Wo as E,Rt as F,St as G,$o as H,Cl as I,Gr as J,gl as K,Zo as L,ul as M,ts as N,is as O,pl as P,ie as Q,os as R,ss as S,as as T,ls as U,hs as V,ns as W,cs as X,re as Y,ml as Z,xl as _,Cs as $,gs as aa,yl as ba,Tl as ca}; diff --git a/src/google/adk/cli/browser/chunk-3BYZYP23.js b/src/google/adk/cli/browser/chunk-3BYZYP23.js new file mode 100644 index 0000000000..268f5bdf21 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-3BYZYP23.js @@ -0,0 +1,20 @@ +import{a as pt}from"./chunk-DMWOYWYQ.js";import{a as ft}from"./chunk-SRCUB3EX.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{a as ct}from"./chunk-PDRDFWTH.js";import{G as et,N as at,R as rt,S as ot,T as nt,U as st,V as it,W as dt,X as lt,Y as I}from"./chunk-37QI3DOO.js";import{g as y,i as Z}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as Y,b as Q,j as tt}from"./chunk-RMXJBC7V.js";var H=y((e,n)=>{let a=e<=1?e*100:e;if(a<0||a>100)throw new Error(`${n} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${e}`);return a},"toPercent"),E=y((e,n,a)=>({x:H(n,`${a} evolution`),y:H(e,`${a} visibility`)}),"toCoordinates"),ht=y(e=>{if(e){if(e==="+<>")return"bidirectional";if(e==="+<")return"backward";if(e==="+>")return"forward"}},"getFlowFromPort"),It=y(e=>{if(!e?.startsWith("+"))return{};let a=/^\+'([^']*)'/.exec(e)?.[1];return e.includes("<>")?{flow:"bidirectional",label:a}:e.includes("<")?{flow:"backward",label:a}:e.includes(">")?{flow:"forward",label:a}:{label:a}},"extractFlowFromArrow"),Wt=y((e,n)=>{if(pt(e,n),e.size&&n.setSize(e.size.width,e.size.height),e.evolution){let a=e.evolution.stages.map(o=>o.secondName?`${o.name.trim()} / ${o.secondName.trim()}`:o.name.trim()),x=e.evolution.stages.filter(o=>o.boundary!==void 0).map(o=>o.boundary);n.updateAxes({stages:a,stageBoundaries:x})}if(e.anchors.forEach(a=>{let x=E(a.visibility,a.evolution,`Anchor "${a.name}"`);n.addNode(a.name,a.name,x.x,x.y,"anchor")}),e.components.forEach(a=>{let x=E(a.visibility,a.evolution,`Component "${a.name}"`),o=a.label?(a.label.negX?-1:1)*a.label.offsetX:void 0,d=a.label?(a.label.negY?-1:1)*a.label.offsetY:void 0,m=a.decorator?.strategy;n.addNode(a.name,a.name,x.x,x.y,"component",o,d,a.inertia,m)}),e.notes.forEach(a=>{let x=E(a.visibility,a.evolution,`Note "${a.text}"`);n.addNote(a.text,x.x,x.y)}),e.pipelines.forEach(a=>{let x=n.getNode(a.parent);if(!x||typeof x.y!="number")throw new Error(`Pipeline "${a.parent}" must reference an existing component with coordinates.`);let o=x.y;n.startPipeline(a.parent),a.components.forEach(d=>{let m=`${a.parent}_${d.name}`,$=d.label?(d.label.negX?-1:1)*d.label.offsetX:void 0,g=d.label?(d.label.negY?-1:1)*d.label.offsetY:void 0,W=H(d.evolution,`Pipeline component "${d.name}" evolution`);n.addNode(m,d.name,W,o,"pipeline-component",$,g),n.addPipelineComponent(a.parent,m)})}),e.links.forEach(a=>{let x=!!a.arrow&&(a.arrow.includes("-.->")||a.arrow.includes(".-.")),o=ht(a.fromPort)??ht(a.toPort),{flow:d,label:m}=It(a.arrow);!o&&d&&(o=d);let $=a.linkLabel,g=m??$;n.addLink(a.from,a.to,x,g,o)}),e.evolves.forEach(a=>{let x=n.getNode(a.component);if(x?.y!==void 0){let o=H(a.target,`Evolve target for "${a.component}"`);n.addTrend(a.component,o,x.y)}}),e.annotations.length>0){let a=e.annotations[0],x=E(a.x,a.y,"Annotations box");n.setAnnotationsBox(x.x,x.y)}e.annotation.forEach(a=>{let x=E(a.x,a.y,`Annotation ${a.number}`);n.addAnnotation(a.number,[{x:x.x,y:x.y}],a.text)}),e.accelerators.forEach(a=>{let x=E(a.x,a.y,`Accelerator "${a.name}"`);n.addAccelerator(a.name,x.x,x.y)}),e.deaccelerators.forEach(a=>{let x=E(a.x,a.y,`Deaccelerator "${a.name}"`);n.addDeaccelerator(a.name,x.x,x.y)})},"populateDb"),xt={parser:{yy:void 0},parse:y(e=>tt(null,null,function*(){let n=yield ft("wardley",e);Z.debug(n);let a=xt.parser?.yy;if(!a||typeof a.addNode!="function")throw new Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Wt(n,a)}),"parse")},Dt=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{y(this,"WardleyBuilder")}addNode(e){let n=this.nodes.get(e.id)??{id:e.id,label:e.label},a=Q(Y(Y({},n),e),{className:e.className??n.className,labelOffsetX:e.labelOffsetX??n.labelOffsetX,labelOffsetY:e.labelOffsetY??n.labelOffsetY});this.nodes.set(e.id,a)}addLink(e){this.links.push(e)}addTrend(e){this.trends.set(e.nodeId,e)}startPipeline(e){this.pipelines.set(e,{nodeId:e,componentIds:[]});let n=this.nodes.get(e);n&&(n.isPipelineParent=!0)}addPipelineComponent(e,n){let a=this.pipelines.get(e);a&&a.componentIds.push(n);let x=this.nodes.get(n);x&&(x.inPipeline=!0)}addAnnotation(e){this.annotations.push(e)}addNote(e){this.notes.push(e)}addAccelerator(e){this.accelerators.push(e)}addDeaccelerator(e){this.deaccelerators.push(e)}setAnnotationsBox(e,n){this.annotationsBox={x:e,y:n}}setAxes(e){this.axes=Y(Y({},this.axes),e)}setSize(e,n){this.size={width:e,height:n}}getNode(e){return this.nodes.get(e)}build(){let e=[];for(let n of this.nodes.values()){if(typeof n.x!="number"||typeof n.y!="number")throw new Error(`Node "${n.label}" is missing coordinates`);e.push(n)}return{nodes:e,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:Y({},this.axes),size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},P=new Dt;function M(e){let n=I();return et(e.trim(),n)}y(M,"textSanitizer");function gt(){return I()["wardley-beta"]}y(gt,"getConfig");function ut(e,n,a,x,o,d,m,$,g){P.addNode({id:e,label:M(n),x:a,y:x,className:o,labelOffsetX:d,labelOffsetY:m,inertia:$,sourceStrategy:g})}y(ut,"addNode");function yt(e,n,a=!1,x,o){P.addLink({source:e,target:n,dashed:a,label:x,flow:o})}y(yt,"addLink");function mt(e,n,a){P.addTrend({nodeId:e,targetX:n,targetY:a})}y(mt,"addTrend");function wt(e,n,a){P.addAnnotation({number:e,coordinates:n,text:a?M(a):void 0})}y(wt,"addAnnotation");function bt(e,n,a){P.addNote({text:M(e),x:n,y:a})}y(bt,"addNote");function kt(e,n,a){P.addAccelerator({name:M(e),x:n,y:a})}y(kt,"addAccelerator");function Pt(e,n,a){P.addDeaccelerator({name:M(e),x:n,y:a})}y(Pt,"addDeaccelerator");function vt(e,n){P.setAnnotationsBox(e,n)}y(vt,"setAnnotationsBox");function St(e,n){P.setSize(e,n)}y(St,"setSize");function Mt(e){P.startPipeline(e)}y(Mt,"startPipeline");function $t(e,n){P.addPipelineComponent(e,n)}y($t,"addPipelineComponent");function Ct(e){let n={};e.xLabel&&(n.xLabel=M(e.xLabel)),e.yLabel&&(n.yLabel=M(e.yLabel)),e.stages&&(n.stages=e.stages.map(a=>M(a))),e.stageBoundaries&&(n.stageBoundaries=e.stageBoundaries),P.setAxes(n)}y(Ct,"updateAxes");function Nt(e){return P.getNode(e)}y(Nt,"getNode");function Lt(){return P.build()}y(Lt,"getWardleyData");function zt(){P.clear(),rt()}y(zt,"clear");var Gt={getConfig:gt,addNode:ut,addLink:yt,addTrend:mt,addAnnotation:wt,addNote:bt,addAccelerator:kt,addDeaccelerator:Pt,setAnnotationsBox:vt,setSize:St,startPipeline:Mt,addPipelineComponent:$t,updateAxes:Ct,getNode:Nt,getWardleyData:Lt,clear:zt,setAccTitle:ot,getAccTitle:nt,setDiagramTitle:dt,getDiagramTitle:lt,getAccDescription:it,setAccDescription:st},qt=["Genesis","Custom Built","Product","Commodity"],Ht=y(()=>{let{themeVariables:e}=I();return{backgroundColor:e.wardley?.backgroundColor??e.background??"#fff",axisColor:e.wardley?.axisColor??"#000",axisTextColor:e.wardley?.axisTextColor??e.primaryTextColor??"#222",gridColor:e.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:e.wardley?.componentFill??"#fff",componentStroke:e.wardley?.componentStroke??"#000",componentLabelColor:e.wardley?.componentLabelColor??e.primaryTextColor??"#222",linkStroke:e.wardley?.linkStroke??"#000",evolutionStroke:e.wardley?.evolutionStroke??"#dc3545",annotationStroke:e.wardley?.annotationStroke??"#000",annotationTextColor:e.wardley?.annotationTextColor??e.primaryTextColor??"#222",annotationFill:e.wardley?.annotationFill??e.background??"#fff"}},"getTheme"),jt=y(()=>{let e=I()["wardley-beta"];return{width:e?.width??900,height:e?.height??600,padding:e?.padding??48,nodeRadius:e?.nodeRadius??6,nodeLabelOffset:e?.nodeLabelOffset??8,axisFontSize:e?.axisFontSize??12,labelFontSize:e?.labelFontSize??10,showGrid:e?.showGrid??!1,useMaxWidth:e?.useMaxWidth??!0}},"getConfigValues"),_t=y((e,n,a,x)=>{Z.debug(`Rendering Wardley map +`+e);let o=jt(),d=Ht(),m=o.nodeRadius*1.6,$=x.db,g=$.getWardleyData(),W=$.getDiagramTitle(),C=g.size?.width??o.width,b=g.size?.height??o.height,B=ct(n);B.selectAll("*").remove(),at(B,b,C,o.useMaxWidth),B.attr("viewBox",`0 0 ${C} ${b}`);let v=B.append("g").attr("class","wardley-map"),j=B.append("defs");j.append("marker").attr("id",`arrow-${n}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.evolutionStroke).attr("stroke","none"),j.append("marker").attr("id",`link-arrow-end-${n}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",d.linkStroke).attr("stroke","none"),j.append("marker").attr("id",`link-arrow-start-${n}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",d.linkStroke).attr("stroke","none"),v.append("rect").attr("class","wardley-background").attr("width",C).attr("height",b).attr("fill",d.backgroundColor);let R=C-o.padding*2,F=b-o.padding*2;W&&v.append("text").attr("class","wardley-title").attr("x",C/2).attr("y",o.padding/2).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(W);let z=y(t=>o.padding+t/100*R,"projectX"),X=y(t=>b-o.padding-t/100*F,"projectY"),D=v.append("g").attr("class","wardley-axes");D.append("line").attr("x1",o.padding).attr("x2",C-o.padding).attr("y1",b-o.padding).attr("y2",b-o.padding).attr("stroke",d.axisColor).attr("stroke-width",1),D.append("line").attr("x1",o.padding).attr("x2",o.padding).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke",d.axisColor).attr("stroke-width",1);let Xt=g.axes.xLabel??"Evolution",At=g.axes.yLabel??"Visibility";D.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",o.padding+R/2).attr("y",b-o.padding/4).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(Xt),D.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",o.padding/3).attr("y",o.padding+F/2).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${o.padding/3} ${o.padding+F/2})`).text(At);let O=g.axes.stages&&g.axes.stages.length>0?g.axes.stages:qt;if(O.length>0){let t=v.append("g").attr("class","wardley-stages"),s=g.axes.stageBoundaries,r=[];if(s&&s.length===O.length){let i=0;s.forEach(p=>{r.push({start:i,end:p}),i=p})}else{let i=1/O.length;O.forEach((p,l)=>{r.push({start:l*i,end:(l+1)*i})})}O.forEach((i,p)=>{let l=r[p],f=o.padding+l.start*R,h=o.padding+l.end*R,u=(f+h)/2;p>0&&t.append("line").attr("x1",f).attr("x2",f).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",.8),t.append("text").attr("class","wardley-stage-label").attr("x",u).attr("y",b-o.padding/1.5).attr("fill",d.axisTextColor).attr("font-size",o.axisFontSize-2).attr("text-anchor","middle").text(i)})}if(o.showGrid){let t=v.append("g").attr("class","wardley-grid");for(let s=1;s<4;s++){let r=s/4,i=o.padding+R*r;t.append("line").attr("x1",i).attr("x2",i).attr("y1",o.padding).attr("y2",b-o.padding).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6"),t.append("line").attr("x1",o.padding).attr("x2",C-o.padding).attr("y1",b-o.padding-F*r).attr("y2",b-o.padding-F*r).attr("stroke",d.gridColor).attr("stroke-dasharray","2 6")}}let c=new Map;if(g.nodes.forEach(t=>{c.set(t.id,{x:z(t.x),y:X(t.y),node:t})}),g.pipelines.length>0){let t=v.append("g").attr("class","wardley-pipelines"),s=v.append("g").attr("class","wardley-pipeline-links");g.pipelines.forEach(r=>{if(r.componentIds.length===0)return;let i=r.componentIds.map(h=>({id:h,pos:c.get(h),node:g.nodes.find(u=>u.id===h)})).filter(h=>h.pos&&h.node).sort((h,u)=>h.node.x-u.node.x);for(let h=0;h{let u=c.get(h);u&&(p=Math.min(p,u.x),l=Math.max(l,u.x),f=u.y)}),p!==1/0&&l!==-1/0){let u=o.nodeRadius*4,w=f-u/2,S=c.get(r.nodeId);if(S){let L=(p+l)/2;S.x=L,S.y=w-m/6}t.append("rect").attr("class","wardley-pipeline-box").attr("x",p-15).attr("y",w).attr("width",l-p+30).attr("height",u).attr("fill","none").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let U=v.append("g").attr("class","wardley-links"),J=new Map;g.pipelines.forEach(t=>{J.set(t.nodeId,new Set(t.componentIds))});let K=g.links.filter(t=>!(!c.has(t.source)||!c.has(t.target)||J.get(t.target)?.has(t.source)));U.selectAll("line").data(K).enter().append("line").attr("class",t=>`wardley-link${t.dashed?" wardley-link--dashed":""}`).attr("x1",t=>{let s=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=r.x-s.x,f=r.y-s.y,h=Math.sqrt(l*l+f*f);return s.x+l/h*p}).attr("y1",t=>{let s=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.source).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=r.x-s.x,f=r.y-s.y,h=Math.sqrt(l*l+f*f);return s.y+f/h*p}).attr("x2",t=>{let s=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=s.x-r.x,f=s.y-r.y,h=Math.sqrt(l*l+f*f);return r.x+l/h*p}).attr("y2",t=>{let s=c.get(t.source),r=c.get(t.target),p=g.nodes.find(u=>u.id===t.target).isPipelineParent?m/Math.sqrt(2):o.nodeRadius,l=s.x-r.x,f=s.y-r.y,h=Math.sqrt(l*l+f*f);return r.y+f/h*p}).attr("stroke",d.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",t=>t.dashed?"6 6":null).attr("marker-end",t=>t.flow==="forward"||t.flow==="bidirectional"?`url(#link-arrow-end-${n})`:null).attr("marker-start",t=>t.flow==="backward"||t.flow==="bidirectional"?`url(#link-arrow-start-${n})`:null),U.selectAll("text").data(K.filter(t=>t.label)).enter().append("text").attr("class","wardley-link-label").attr("x",t=>{let s=c.get(t.source),r=c.get(t.target),i=(s.x+r.x)/2,p=r.y-s.y,l=r.x-s.x,f=Math.sqrt(l*l+p*p),h=8,u=p/f;return i+u*h}).attr("y",t=>{let s=c.get(t.source),r=c.get(t.target),i=(s.y+r.y)/2,p=r.x-s.x,l=r.y-s.y,f=Math.sqrt(p*p+l*l),h=8,u=-p/f;return i+u*h}).attr("fill",d.axisTextColor).attr("font-size",o.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",t=>{let s=c.get(t.source),r=c.get(t.target),i=(s.x+r.x)/2,p=(s.y+r.y)/2,l=r.x-s.x,f=r.y-s.y,h=Math.sqrt(l*l+f*f),u=8,w=f/h,S=-l/h,L=i+w*u,G=p+S*u,T=Math.atan2(f,l)*180/Math.PI;return(T>90||T<-90)&&(T+=180),`rotate(${T} ${L} ${G})`}).text(t=>t.label);let Et=v.append("g").attr("class","wardley-trends"),Tt=g.trends.map(t=>{let s=c.get(t.nodeId);if(!s)return null;let r=z(t.targetX),i=X(t.targetY),p=r-s.x,l=i-s.y,f=Math.sqrt(p*p+l*l),h=o.nodeRadius+2,u=f>h?r-p/f*h:r,w=f>h?i-l/f*h:i;return{origin:s,targetX:r,targetY:i,adjustedX2:u,adjustedY2:w}}).filter(t=>t!==null);Et.selectAll("line").data(Tt).enter().append("line").attr("class","wardley-trend").attr("x1",t=>t.origin.x).attr("y1",t=>t.origin.y).attr("x2",t=>t.adjustedX2).attr("y2",t=>t.adjustedY2).attr("stroke",d.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${n})`);let N=v.append("g").attr("class","wardley-nodes").selectAll("g").data(g.nodes).enter().append("g").attr("class",t=>["wardley-node",t.className?`wardley-node--${t.className}`:""].filter(Boolean).join(" "));N.filter(t=>t.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#666").attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>t.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#ccc").attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>t.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let A=N.filter(t=>t.sourceStrategy==="market");A.append("circle").attr("class","wardley-market-overlay").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius*2).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>!t.isPipelineParent&&t.sourceStrategy!=="market"&&t.className!=="anchor").append("circle").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y).attr("r",o.nodeRadius).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1);let _=o.nodeRadius*.7,k=o.nodeRadius*1.2;if(A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x).attr("y1",t=>c.get(t.id).y-k).attr("x2",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("y2",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("line").attr("class","wardley-market-line").attr("x1",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("y1",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("x2",t=>c.get(t.id).x).attr("y2",t=>c.get(t.id).y-k).attr("stroke",d.componentStroke).attr("stroke-width",1),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x).attr("cy",t=>c.get(t.id).y-k).attr("r",_).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x-k*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("r",_).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),A.append("circle").attr("class","wardley-market-dot").attr("cx",t=>c.get(t.id).x+k*Math.cos(Math.PI/6)).attr("cy",t=>c.get(t.id).y+k*Math.sin(Math.PI/6)).attr("r",_).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",2),N.filter(t=>t.isPipelineParent===!0).append("rect").attr("x",t=>c.get(t.id).x-m/2).attr("y",t=>c.get(t.id).y-m/2).attr("width",m).attr("height",m).attr("fill",d.componentFill).attr("stroke",d.componentStroke).attr("stroke-width",1),N.filter(t=>t.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",t=>{let s=c.get(t.id),r=t.isPipelineParent?m/2+15:o.nodeRadius+15;return t.sourceStrategy&&(r+=o.nodeRadius+10),s.x+r}).attr("y1",t=>{let s=c.get(t.id),r=t.isPipelineParent?m:o.nodeRadius*2;return s.y-r/2}).attr("x2",t=>{let s=c.get(t.id),r=t.isPipelineParent?m/2+15:o.nodeRadius+15;return t.sourceStrategy&&(r+=o.nodeRadius+10),s.x+r}).attr("y2",t=>{let s=c.get(t.id),r=t.isPipelineParent?m:o.nodeRadius*2;return s.y+r/2}).attr("stroke",d.componentStroke).attr("stroke-width",6),N.append("text").attr("x",t=>{let s=c.get(t.id);if(t.className==="anchor")return t.labelOffsetX!==void 0?s.x+t.labelOffsetX:s.x;let r=o.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetX===void 0&&(r+=10);let i=t.labelOffsetX??r;return s.x+i}).attr("y",t=>{let s=c.get(t.id);if(t.className==="anchor")return t.labelOffsetY!==void 0?s.y+t.labelOffsetY:s.y-3;let r=-o.nodeLabelOffset;t.sourceStrategy&&t.labelOffsetY===void 0&&(r-=10);let i=t.labelOffsetY??r;return s.y+i}).attr("class","wardley-node-label").attr("fill",t=>t.className==="evolved"?d.evolutionStroke:t.className==="anchor"?"#000":d.componentLabelColor).attr("font-size",o.labelFontSize).attr("font-weight",t=>t.className==="anchor"?"bold":"normal").attr("text-anchor",t=>t.className==="anchor"?"middle":"start").attr("dominant-baseline",t=>t.className==="anchor"?"middle":"auto").text(t=>t.label),g.annotations.length>0){let t=v.append("g").attr("class","wardley-annotations");if(g.annotations.forEach(s=>{let r=s.coordinates.map(i=>({x:z(i.x),y:X(i.y)}));if(r.length>1)for(let i=0;i{let p=t.append("g").attr("class","wardley-annotation");p.append("circle").attr("cx",i.x).attr("cy",i.y).attr("r",10).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5),p.append("text").attr("x",i.x).attr("y",i.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(s.number)})}),g.annotationsBox){let s=z(g.annotationsBox.x),r=X(g.annotationsBox.y),i=10,p=16,l=11,f=t.append("g").attr("class","wardley-annotations-box"),h=[...g.annotations].filter(w=>w.text).sort((w,S)=>w.number-S.number),u=[];if(h.forEach((w,S)=>{let L=f.append("text").attr("x",s+i).attr("y",r+i+(S+1)*p).attr("font-size",l).attr("fill",d.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${w.number}. ${w.text}`);u.push(L)}),u.length>0){let w=0,S=0;u.forEach(V=>{let q=V.node(),Ft=q.getComputedTextLength();w=Math.max(w,Ft);let Ot=q.getBBox();S=Math.max(S,Ot.height)});let L=w+i*2+105,G=h.length*p+i*2+S/2,T=o.padding,Yt=C-o.padding-L,Bt=o.padding,Rt=b-o.padding-G;s=Math.max(T,Math.min(s,Yt)),r=Math.max(Bt,Math.min(r,Rt)),u.forEach((V,q)=>{V.attr("x",s+i).attr("y",r+i+(q+1)*p)}),f.insert("rect","text").attr("x",s).attr("y",r).attr("width",L).attr("height",G).attr("fill","white").attr("stroke",d.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(g.notes.length>0){let t=v.append("g").attr("class","wardley-notes");g.notes.forEach(s=>{let r=z(s.x),i=X(s.y);t.append("text").attr("x",r).attr("y",i).attr("text-anchor","start").attr("font-size",11).attr("fill",d.axisTextColor).attr("font-weight","bold").text(s.text)})}if(g.accelerators.length>0){let t=v.append("g").attr("class","wardley-accelerators");g.accelerators.forEach(s=>{let r=z(s.x),i=X(s.y),p=60,l=30,f=20,h=` + M ${r} ${i-l/2} + L ${r+p-f} ${i-l/2} + L ${r+p-f} ${i-l/2-8} + L ${r+p} ${i} + L ${r+p-f} ${i+l/2+8} + L ${r+p-f} ${i+l/2} + L ${r} ${i+l/2} + Z + `;t.append("path").attr("d",h).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),t.append("text").attr("x",r+p/2).attr("y",i+l/2+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(s.name)})}if(g.deaccelerators.length>0){let t=v.append("g").attr("class","wardley-deaccelerators");g.deaccelerators.forEach(s=>{let r=z(s.x),i=X(s.y),p=60,l=30,f=20,h=` + M ${r+p} ${i-l/2} + L ${r+f} ${i-l/2} + L ${r+f} ${i-l/2-8} + L ${r} ${i} + L ${r+f} ${i+l/2+8} + L ${r+f} ${i+l/2} + L ${r+p} ${i+l/2} + Z + `;t.append("path").attr("d",h).attr("fill","white").attr("stroke",d.componentStroke).attr("stroke-width",1),t.append("text").attr("x",r+p/2).attr("y",i+l/2+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",d.axisTextColor).attr("font-weight","bold").text(s.name)})}},"draw"),Vt={draw:_t},ee={parser:xt,db:Gt,renderer:Vt,styles:y(()=>"","styles")};export{ee as diagram}; diff --git a/src/google/adk/cli/browser/chunk-3M7KSSAK.js b/src/google/adk/cli/browser/chunk-3M7KSSAK.js new file mode 100644 index 0000000000..afe16a3582 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-3M7KSSAK.js @@ -0,0 +1,24 @@ +import{a as he}from"./chunk-DMWOYWYQ.js";import{a as me}from"./chunk-SRCUB3EX.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import{a as de}from"./chunk-XB6MIIOW.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{a as ce}from"./chunk-PDRDFWTH.js";import{c as pe,d as T}from"./chunk-VWUZC4UJ.js";import{C as I}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as R,N as Z,R as ee,S as te,T as ae,U as le,V as se,W as re,X as ne,p as K,r as Q}from"./chunk-37QI3DOO.js";import{a as D,g as h,i as H,o as F,p as oe,q as ie,r as B}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as G,j as J}from"./chunk-RMXJBC7V.js";var ue=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=te,this.getAccTitle=ae,this.setDiagramTitle=re,this.getDiagramTitle=ne,this.getAccDescription=se,this.setAccDescription=le}static{h(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let s=Q,r=R();return I(G(G({},s.treemap),r.treemap??{}))}addNode(s,r){this.nodes.push(s),this.levels.set(s,r),r===0&&(this.outerNodes.push(s),this.root??=s)}getRoot(){return{name:"",children:this.outerNodes}}addClass(s,r){let i=this.classes.get(s)??{id:s,styles:[],textStyles:[]},c=r.replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");c&&c.forEach(l=>{pe(l)&&(i?.textStyles?i.textStyles.push(l):i.textStyles=[l]),i?.styles?i.styles.push(l):i.styles=[l]}),this.classes.set(s,i)}getClasses(){return this.classes}getStylesForClass(s){return this.classes.get(s)?.styles??[]}clear(){ee(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function fe(s){if(!s.length)return[];let r=[],i=[];return s.forEach(c=>{let l={name:c.name,children:c.type==="Leaf"?void 0:[]};for(l.classSelector=c?.classSelector,c?.cssCompiledStyles&&(l.cssCompiledStyles=c.cssCompiledStyles),c.type==="Leaf"&&c.value!==void 0&&(l.value=c.value);i.length>0&&i[i.length-1].level>=c.level;)i.pop();if(i.length===0)r.push(l);else{let n=i[i.length-1].node;n.children?n.children.push(l):n.children=[l]}c.type!=="Leaf"&&i.push({node:l,level:c.level})}),r}h(fe,"buildHierarchy");var Te=h((s,r)=>{he(s,r);let i=[];for(let n of s.TreemapRows??[])n.$type==="ClassDefStatement"&&r.addClass(n.className??"",n.styleText??"");for(let n of s.TreemapRows??[]){let d=n.item;if(!d)continue;let m=n.indent?parseInt(n.indent):0,k=Le(d),a=d.classSelector?r.getStylesForClass(d.classSelector):[],N=a.length>0?a:void 0,v={level:m,name:k,type:d.$type,value:d.value,classSelector:d.classSelector,cssCompiledStyles:N};i.push(v)}let c=fe(i),l=h((n,d)=>{for(let m of n)r.addNode(m,d),m.children&&m.children.length>0&&l(m.children,d+1)},"addNodesRecursively");l(c,0)},"populate"),Le=h(s=>s.name?String(s.name):"","getItemName"),ye={parser:{yy:void 0},parse:h(s=>J(null,null,function*(){try{let i=yield me("treemap",s);H.debug("Treemap AST:",i);let c=ye.parser?.yy;if(!(c instanceof ue))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Te(i,c)}catch(r){throw H.error("Error parsing treemap:",r),r}}),"parse")},$e=10,z=10,M=25,Fe=h((s,r,i,c)=>{let l=c.db,n=l.getConfig(),d=n.padding??$e,m=l.getDiagramTitle(),k=l.getRoot(),{themeVariables:a}=R();if(!k)return;let N=m?30:0,v=ce(r),X=n.nodeWidth?n.nodeWidth*z:960,Y=n.nodeHeight?n.nodeHeight*z:500,O=X,j=Y+N;v.attr("viewBox",`0 0 ${O} ${j}`),Z(v,j,O,n.useMaxWidth);let C;try{let e=n.valueFormat||",";if(e==="$0,0")C=h(t=>"$"+F(",")(t),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){let t=/\.\d+/.exec(e),o=t?t[0]:"";C=h(u=>"$"+F(","+o)(u),"valueFormat")}else if(e.startsWith("$")){let t=e.substring(1);C=h(o=>"$"+F(t||"")(o),"valueFormat")}else C=F(e)}catch(e){H.error("Error creating format function:",e),C=F(",")}let A=B().range(["transparent",a.cScale0,a.cScale1,a.cScale2,a.cScale3,a.cScale4,a.cScale5,a.cScale6,a.cScale7,a.cScale8,a.cScale9,a.cScale10,a.cScale11]),ge=B().range(["transparent",a.cScalePeer0,a.cScalePeer1,a.cScalePeer2,a.cScalePeer3,a.cScalePeer4,a.cScalePeer5,a.cScalePeer6,a.cScalePeer7,a.cScalePeer8,a.cScalePeer9,a.cScalePeer10,a.cScalePeer11]),W=B().range([a.cScaleLabel0,a.cScaleLabel1,a.cScaleLabel2,a.cScaleLabel3,a.cScaleLabel4,a.cScaleLabel5,a.cScaleLabel6,a.cScaleLabel7,a.cScaleLabel8,a.cScaleLabel9,a.cScaleLabel10,a.cScaleLabel11]);m&&v.append("text").attr("x",O/2).attr("y",N/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(m);let U=v.append("g").attr("transform",`translate(0, ${N})`).attr("class","treemapContainer"),Se=oe(k).sum(e=>e.value??0).sort((e,t)=>(t.value??0)-(e.value??0)),q=ie().size([X,Y]).paddingTop(e=>e.children&&e.children.length>0?M+z:0).paddingInner(d).paddingLeft(e=>e.children&&e.children.length>0?z:0).paddingRight(e=>e.children&&e.children.length>0?z:0).paddingBottom(e=>e.children&&e.children.length>0?z:0).round(!0)(Se),xe=q.descendants().filter(e=>e.children&&e.children.length>0),V=U.selectAll(".treemapSection").data(xe).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);V.append("rect").attr("width",e=>e.x1-e.x0).attr("height",M).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),V.append("clipPath").attr("id",(e,t)=>`clip-section-${r}-${t}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",M),V.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,t)=>`treemapSection section${t}`).attr("fill",e=>A(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>ge(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";let t=T({cssCompiledStyles:e.data.cssCompiledStyles});return t.nodeStyles+";"+t.borderStyles.join(";")}),V.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",M/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("style",e=>{if(e.depth===0)return"display: none;";let t="dominant-baseline: middle; font-size: 12px; fill:"+W(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",o=T({cssCompiledStyles:e.data.cssCompiledStyles});return t+o.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;let t=D(this),o=e.data.name;t.text(o);let u=e.x1-e.x0,g=6,S;n.showValues!==!1&&e.value?S=u-10-30-10-g:S=u-g-6;let f=Math.max(15,S),p=t.node();if(p.getComputedTextLength()>f){let y=o;for(;y.length>0;){if(y=o.substring(0,y.length-1),y.length===0){t.text("..."),p.getComputedTextLength()>f&&t.text("");break}if(t.text(y+"..."),p.getComputedTextLength()<=f)break}}}),n.showValues!==!1&&V.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",M/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?C(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";let t="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+W(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",o=T({cssCompiledStyles:e.data.cssCompiledStyles});return t+o.labelStyles.replace("color:","fill:")});let be=q.leaves(),E=U.selectAll(".treemapLeafGroup").data(be).enter().append("g").attr("class",(e,t)=>`treemapNode treemapLeafGroup leaf${t}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);E.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?A(e.parent.data.name):A(e.data.name)).attr("style",e=>T({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?A(e.parent.data.name):A(e.data.name)).attr("stroke-width",3),E.append("clipPath").attr("id",(e,t)=>`clip-${r}-${t}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),E.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{let t="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+W(e.data.name)+";",o=T({cssCompiledStyles:e.data.cssCompiledStyles});return t+o.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,t)=>`url(#clip-${r}-${t})`).text(e=>e.data.name).each(function(e){let t=D(this),o=e.x1-e.x0,u=e.y1-e.y0,g=t.node(),S=4,L=o-2*S,f=u-2*S;if(L<10||f<10){t.style("display","none");return}let p=parseInt(t.style("font-size"),10),w=8,x=28,y=.6,b=6,P=2;for(;g.getComputedTextLength()>L&&p>w;)p--,t.style("font-size",`${p}px`);let $=Math.max(b,Math.min(x,Math.round(p*y))),_=p+P+$;for(;_>f&&p>w&&(p--,$=Math.max(b,Math.min(x,Math.round(p*y))),!($f;t.style("font-size",`${p}px`),(g.getComputedTextLength()>L||p(t.x1-t.x0)/2).attr("y",function(t){return(t.y1-t.y0)/2}).attr("style",t=>{let o="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+W(t.data.name)+";",u=T({cssCompiledStyles:t.data.cssCompiledStyles});return o+u.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,o)=>`url(#clip-${r}-${o})`).text(t=>t.value?C(t.value):"").each(function(t){let o=D(this),u=this.parentNode;if(!u){o.style("display","none");return}let g=D(u).select(".treemapLabel");if(g.empty()||g.style("display")==="none"){o.style("display","none");return}let S=parseFloat(g.style("font-size")),L=28,f=.6,p=6,w=2,x=Math.max(p,Math.min(L,Math.round(S*f)));o.style("font-size",`${x}px`);let b=(t.y1-t.y0)/2+S/2+w;o.attr("y",b);let P=t.x1-t.x0,Ce=t.y1-t.y0-4,we=P-8;o.node().getComputedTextLength()>we||b+x>Ce||x{let r=K(),i=R(),c=I(r,i.themeVariables),l=I(Ae,s),n=l.titleColor??c.titleColor,d=l.labelColor??c.textColor,m=l.valueColor??c.textColor;return` + .treemapNode.section { + stroke: ${l.sectionStrokeColor}; + stroke-width: ${l.sectionStrokeWidth}; + fill: ${l.sectionFillColor}; + } + .treemapNode.leaf { + stroke: ${l.leafStrokeColor}; + stroke-width: ${l.leafStrokeWidth}; + fill: ${l.leafFillColor}; + } + .treemapLabel { + fill: ${d}; + font-size: ${l.labelFontSize}; + } + .treemapValue { + fill: ${m}; + font-size: ${l.valueFontSize}; + } + .treemapTitle { + fill: ${n}; + font-size: ${l.titleFontSize}; + } + `},"getStyles"),Pe=Ve,Ge={parser:ye,get db(){return new ue},renderer:Ne,styles:Pe};export{Ge as diagram}; diff --git a/src/google/adk/cli/browser/chunk-DRBE27N3.js b/src/google/adk/cli/browser/chunk-3TW5HJSC.js similarity index 87% rename from src/google/adk/cli/browser/chunk-DRBE27N3.js rename to src/google/adk/cli/browser/chunk-3TW5HJSC.js index 47caf1de8e..6eea6954f8 100644 --- a/src/google/adk/cli/browser/chunk-DRBE27N3.js +++ b/src/google/adk/cli/browser/chunk-3TW5HJSC.js @@ -1 +1 @@ -import{k as m}from"./chunk-WBLSVR3V.js";import{Y as s,r as p}from"./chunk-QFMJV7VH.js";import{g as a}from"./chunk-JRNAXTJ7.js";import{j as g}from"./chunk-RMXJBC7V.js";var S=a(({flowchart:o})=>{let n=o?.subGraphTitleMargin?.top??0,t=o?.subGraphTitleMargin?.bottom??0,r=n+t;return{subGraphTitleTopMargin:n,subGraphTitleBottomMargin:t,subGraphTitleTotalMargin:r}},"getSubGraphTitleMargins");function b(o,n){return g(this,null,function*(){let t=o.getElementsByTagName("img");if(!t||t.length===0)return;let r=n.replace(/]*>/g,"").trim()==="";yield Promise.all([...t].map(e=>new Promise(u=>{function i(){if(e.style.display="flex",e.style.flexDirection="column",r){let f=s().fontSize?s().fontSize:window.getComputedStyle(document.body).fontSize,c=5,[d=p.fontSize]=m(f),l=d*c+"px";e.style.minWidth=l,e.style.maxWidth=l}else e.style.width="100%";u(e)}a(i,"setupImage"),setTimeout(()=>{e.complete&&i()}),e.addEventListener("error",i),e.addEventListener("load",i)})))})}a(b,"configureLabelImages");export{S as a,b}; +import{B as m}from"./chunk-UKZIEWH5.js";import{Y as s,r as p}from"./chunk-37QI3DOO.js";import{g as a}from"./chunk-JRNAXTJ7.js";import{j as g}from"./chunk-RMXJBC7V.js";var S=a(({flowchart:o})=>{let n=o?.subGraphTitleMargin?.top??0,t=o?.subGraphTitleMargin?.bottom??0,r=n+t;return{subGraphTitleTopMargin:n,subGraphTitleBottomMargin:t,subGraphTitleTotalMargin:r}},"getSubGraphTitleMargins");function b(o,n){return g(this,null,function*(){let t=o.getElementsByTagName("img");if(!t||t.length===0)return;let r=n.replace(/]*>/g,"").trim()==="";yield Promise.all([...t].map(e=>new Promise(u=>{function i(){if(e.style.display="flex",e.style.flexDirection="column",r){let f=s().fontSize?s().fontSize:window.getComputedStyle(document.body).fontSize,c=5,[d=p.fontSize]=m(f),l=d*c+"px";e.style.minWidth=l,e.style.maxWidth=l}else e.style.width="100%";u(e)}a(i,"setupImage"),setTimeout(()=>{e.complete&&i()}),e.addEventListener("error",i),e.addEventListener("load",i)})))})}a(b,"configureLabelImages");export{S as a,b}; diff --git a/src/google/adk/cli/browser/chunk-3YZ77ADE.js b/src/google/adk/cli/browser/chunk-3YZ77ADE.js deleted file mode 100644 index 08b10f4c24..0000000000 --- a/src/google/adk/cli/browser/chunk-3YZ77ADE.js +++ /dev/null @@ -1,36 +0,0 @@ -import{a as Ke}from"./chunk-DMWOYWYQ.js";import{a as je}from"./chunk-T3Q3QCCV.js";import"./chunk-NQKWI5EB.js";import"./chunk-WR6HISGZ.js";import"./chunk-I4UDKKN5.js";import"./chunk-2DLZXFEQ.js";import"./chunk-JNY2YWG7.js";import"./chunk-XULIXUQL.js";import{a as Ne}from"./chunk-YVVLWU7S.js";import"./chunk-3NJNOY56.js";import"./chunk-NALL4A3P.js";import{a as ke}from"./chunk-TPDTRWWV.js";import{b as Qe,c as Je,d as ce,f as ge}from"./chunk-WXI2IBAH.js";import{l as Ze,p as qe}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{A as Ge,G as Ue,O as Ye,R as Xe,S as He,T as We,U as Ve,V as ze,W as Be,X as $e,Y as fe,r as Pe}from"./chunk-QFMJV7VH.js";import{a as be,g as ct,i as Te}from"./chunk-JRNAXTJ7.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{a as ee,b as le,e as me,h as pr,j as Zt}from"./chunk-RMXJBC7V.js";var Ce=me((ne,Le)=>{"use strict";(function(w,N){typeof ne=="object"&&typeof Le=="object"?Le.exports=N():typeof define=="function"&&define.amd?define([],N):typeof ne=="object"?ne.layoutBase=N():w.layoutBase=N()})(ne,function(){return(function(E){var w={};function N(u){if(w[u])return w[u].exports;var o=w[u]={i:u,l:!1,exports:{}};return E[u].call(o.exports,o,o.exports,N),o.l=!0,o.exports}return N.m=E,N.c=w,N.i=function(u){return u},N.d=function(u,o,a){N.o(u,o)||Object.defineProperty(u,o,{configurable:!1,enumerable:!0,get:a})},N.n=function(u){var o=u&&u.__esModule?function(){return u.default}:function(){return u};return N.d(o,"a",o),o},N.o=function(u,o){return Object.prototype.hasOwnProperty.call(u,o)},N.p="",N(N.s=28)})([(function(E,w,N){"use strict";function u(){}u.QUALITY=1,u.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,u.DEFAULT_INCREMENTAL=!1,u.DEFAULT_ANIMATION_ON_LAYOUT=!0,u.DEFAULT_ANIMATION_DURING_LAYOUT=!1,u.DEFAULT_ANIMATION_PERIOD=50,u.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,u.DEFAULT_GRAPH_MARGIN=15,u.NODE_DIMENSIONS_INCLUDE_LABELS=!1,u.SIMPLE_NODE_SIZE=40,u.SIMPLE_NODE_HALF_SIZE=u.SIMPLE_NODE_SIZE/2,u.EMPTY_COMPOUND_NODE_SIZE=40,u.MIN_EDGE_LENGTH=1,u.WORLD_BOUNDARY=1e6,u.INITIAL_WORLD_BOUNDARY=u.WORLD_BOUNDARY/1e3,u.WORLD_CENTER_X=1200,u.WORLD_CENTER_Y=900,E.exports=u}),(function(E,w,N){"use strict";var u=N(2),o=N(8),a=N(9);function e(c,t,g){u.call(this,g),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=g,this.bendpoints=[],this.source=c,this.target=t}e.prototype=Object.create(u.prototype);for(var n in u)e[n]=u[n];e.prototype.getSource=function(){return this.source},e.prototype.getTarget=function(){return this.target},e.prototype.isInterGraph=function(){return this.isInterGraph},e.prototype.getLength=function(){return this.length},e.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},e.prototype.getBendpoints=function(){return this.bendpoints},e.prototype.getLca=function(){return this.lca},e.prototype.getSourceInLca=function(){return this.sourceInLca},e.prototype.getTargetInLca=function(){return this.targetInLca},e.prototype.getOtherEnd=function(c){if(this.source===c)return this.target;if(this.target===c)return this.source;throw"Node is not incident with this edge"},e.prototype.getOtherEndInGraph=function(c,t){for(var g=this.getOtherEnd(c),i=t.getGraphManager().getRoot();;){if(g.getOwner()==t)return g;if(g.getOwner()==i)break;g=g.getOwner().getParent()}return null},e.prototype.updateLength=function(){var c=new Array(4);this.isOverlapingSourceAndTarget=o.getIntersection(this.target.getRect(),this.source.getRect(),c),this.isOverlapingSourceAndTarget||(this.lengthX=c[0]-c[2],this.lengthY=c[1]-c[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},e.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},E.exports=e}),(function(E,w,N){"use strict";function u(o){this.vGraphObject=o}E.exports=u}),(function(E,w,N){"use strict";var u=N(2),o=N(10),a=N(13),e=N(0),n=N(16),c=N(5);function t(i,r,h,f){h==null&&f==null&&(f=r),u.call(this,f),i.graphManager!=null&&(i=i.graphManager),this.estimatedSize=o.MIN_VALUE,this.inclusionTreeDepth=o.MAX_VALUE,this.vGraphObject=f,this.edges=[],this.graphManager=i,h!=null&&r!=null?this.rect=new a(r.x,r.y,h.width,h.height):this.rect=new a}t.prototype=Object.create(u.prototype);for(var g in u)t[g]=u[g];t.prototype.getEdges=function(){return this.edges},t.prototype.getChild=function(){return this.child},t.prototype.getOwner=function(){return this.owner},t.prototype.getWidth=function(){return this.rect.width},t.prototype.setWidth=function(i){this.rect.width=i},t.prototype.getHeight=function(){return this.rect.height},t.prototype.setHeight=function(i){this.rect.height=i},t.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},t.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},t.prototype.getCenter=function(){return new c(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},t.prototype.getLocation=function(){return new c(this.rect.x,this.rect.y)},t.prototype.getRect=function(){return this.rect},t.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},t.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},t.prototype.setRect=function(i,r){this.rect.x=i.x,this.rect.y=i.y,this.rect.width=r.width,this.rect.height=r.height},t.prototype.setCenter=function(i,r){this.rect.x=i-this.rect.width/2,this.rect.y=r-this.rect.height/2},t.prototype.setLocation=function(i,r){this.rect.x=i,this.rect.y=r},t.prototype.moveBy=function(i,r){this.rect.x+=i,this.rect.y+=r},t.prototype.getEdgeListToNode=function(i){var r=[],h,f=this;return f.edges.forEach(function(l){if(l.target==i){if(l.source!=f)throw"Incorrect edge source!";r.push(l)}}),r},t.prototype.getEdgesBetween=function(i){var r=[],h,f=this;return f.edges.forEach(function(l){if(!(l.source==f||l.target==f))throw"Incorrect edge source and/or target";(l.target==i||l.source==i)&&r.push(l)}),r},t.prototype.getNeighborsList=function(){var i=new Set,r=this;return r.edges.forEach(function(h){if(h.source==r)i.add(h.target);else{if(h.target!=r)throw"Incorrect incidency!";i.add(h.source)}}),i},t.prototype.withChildren=function(){var i=new Set,r,h;if(i.add(this),this.child!=null)for(var f=this.child.getNodes(),l=0;lr?(this.rect.x-=(this.labelWidth-r)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(r+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(h+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>h?(this.rect.y-=(this.labelHeight-h)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(h+this.labelHeight))}}},t.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==o.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},t.prototype.transform=function(i){var r=this.rect.x;r>e.WORLD_BOUNDARY?r=e.WORLD_BOUNDARY:r<-e.WORLD_BOUNDARY&&(r=-e.WORLD_BOUNDARY);var h=this.rect.y;h>e.WORLD_BOUNDARY?h=e.WORLD_BOUNDARY:h<-e.WORLD_BOUNDARY&&(h=-e.WORLD_BOUNDARY);var f=new c(r,h),l=i.inverseTransformPoint(f);this.setLocation(l.x,l.y)},t.prototype.getLeft=function(){return this.rect.x},t.prototype.getRight=function(){return this.rect.x+this.rect.width},t.prototype.getTop=function(){return this.rect.y},t.prototype.getBottom=function(){return this.rect.y+this.rect.height},t.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},E.exports=t}),(function(E,w,N){"use strict";var u=N(0);function o(){}for(var a in u)o[a]=u[a];o.MAX_ITERATIONS=2500,o.DEFAULT_EDGE_LENGTH=50,o.DEFAULT_SPRING_STRENGTH=.45,o.DEFAULT_REPULSION_STRENGTH=4500,o.DEFAULT_GRAVITY_STRENGTH=.4,o.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,o.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,o.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,o.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,o.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,o.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,o.COOLING_ADAPTATION_FACTOR=.33,o.ADAPTATION_LOWER_NODE_LIMIT=1e3,o.ADAPTATION_UPPER_NODE_LIMIT=5e3,o.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,o.MAX_NODE_DISPLACEMENT=o.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,o.MIN_REPULSION_DIST=o.DEFAULT_EDGE_LENGTH/10,o.CONVERGENCE_CHECK_PERIOD=100,o.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,o.MIN_EDGE_LENGTH=1,o.GRID_CALCULATION_CHECK_PERIOD=10,E.exports=o}),(function(E,w,N){"use strict";function u(o,a){o==null&&a==null?(this.x=0,this.y=0):(this.x=o,this.y=a)}u.prototype.getX=function(){return this.x},u.prototype.getY=function(){return this.y},u.prototype.setX=function(o){this.x=o},u.prototype.setY=function(o){this.y=o},u.prototype.getDifference=function(o){return new DimensionD(this.x-o.x,this.y-o.y)},u.prototype.getCopy=function(){return new u(this.x,this.y)},u.prototype.translate=function(o){return this.x+=o.width,this.y+=o.height,this},E.exports=u}),(function(E,w,N){"use strict";var u=N(2),o=N(10),a=N(0),e=N(7),n=N(3),c=N(1),t=N(13),g=N(12),i=N(11);function r(f,l,L){u.call(this,L),this.estimatedSize=o.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=f,l!=null&&l instanceof e?this.graphManager=l:l!=null&&l instanceof Layout&&(this.graphManager=l.graphManager)}r.prototype=Object.create(u.prototype);for(var h in u)r[h]=u[h];r.prototype.getNodes=function(){return this.nodes},r.prototype.getEdges=function(){return this.edges},r.prototype.getGraphManager=function(){return this.graphManager},r.prototype.getParent=function(){return this.parent},r.prototype.getLeft=function(){return this.left},r.prototype.getRight=function(){return this.right},r.prototype.getTop=function(){return this.top},r.prototype.getBottom=function(){return this.bottom},r.prototype.isConnected=function(){return this.isConnected},r.prototype.add=function(f,l,L){if(l==null&&L==null){var y=f;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(y)>-1)throw"Node already in graph!";return y.owner=this,this.getNodes().push(y),y}else{var p=f;if(!(this.getNodes().indexOf(l)>-1&&this.getNodes().indexOf(L)>-1))throw"Source or target not in graph!";if(!(l.owner==L.owner&&l.owner==this))throw"Both owners must be this graph!";return l.owner!=L.owner?null:(p.source=l,p.target=L,p.isInterGraph=!1,this.getEdges().push(p),l.edges.push(p),L!=l&&L.edges.push(p),p)}},r.prototype.remove=function(f){var l=f;if(f instanceof n){if(l==null)throw"Node is null!";if(!(l.owner!=null&&l.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var L=l.edges.slice(),y,p=L.length,C=0;C-1&&S>-1))throw"Source and/or target doesn't know this edge!";y.source.edges.splice(A,1),y.target!=y.source&&y.target.edges.splice(S,1);var R=y.source.owner.getEdges().indexOf(y);if(R==-1)throw"Not in owner's edge list!";y.source.owner.getEdges().splice(R,1)}},r.prototype.updateLeftTop=function(){for(var f=o.MAX_VALUE,l=o.MAX_VALUE,L,y,p,C=this.getNodes(),R=C.length,A=0;AL&&(f=L),l>y&&(l=y)}return f==o.MAX_VALUE?null:(C[0].getParent().paddingLeft!=null?p=C[0].getParent().paddingLeft:p=this.margin,this.left=l-p,this.top=f-p,new g(this.left,this.top))},r.prototype.updateBounds=function(f){for(var l=o.MAX_VALUE,L=-o.MAX_VALUE,y=o.MAX_VALUE,p=-o.MAX_VALUE,C,R,A,S,B,Y=this.nodes,tt=Y.length,x=0;xC&&(l=C),LA&&(y=A),pC&&(l=C),LA&&(y=A),p=this.nodes.length){var tt=0;L.forEach(function(x){x.owner==f&&tt++}),tt==this.nodes.length&&(this.isConnected=!0)}},E.exports=r}),(function(E,w,N){"use strict";var u,o=N(1);function a(e){u=N(6),this.layout=e,this.graphs=[],this.edges=[]}a.prototype.addRoot=function(){var e=this.layout.newGraph(),n=this.layout.newNode(null),c=this.add(e,n);return this.setRootGraph(c),this.rootGraph},a.prototype.add=function(e,n,c,t,g){if(c==null&&t==null&&g==null){if(e==null)throw"Graph is null!";if(n==null)throw"Parent node is null!";if(this.graphs.indexOf(e)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(e),e.parent!=null)throw"Already has a parent!";if(n.child!=null)throw"Already has a child!";return e.parent=n,n.child=e,e}else{g=c,t=n,c=e;var i=t.getOwner(),r=g.getOwner();if(!(i!=null&&i.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(r!=null&&r.getGraphManager()==this))throw"Target not in this graph mgr!";if(i==r)return c.isInterGraph=!1,i.add(c,t,g);if(c.isInterGraph=!0,c.source=t,c.target=g,this.edges.indexOf(c)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(c),!(c.source!=null&&c.target!=null))throw"Edge source and/or target is null!";if(!(c.source.edges.indexOf(c)==-1&&c.target.edges.indexOf(c)==-1))throw"Edge already in source and/or target incidency list!";return c.source.edges.push(c),c.target.edges.push(c),c}},a.prototype.remove=function(e){if(e instanceof u){var n=e;if(n.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(n==this.rootGraph||n.parent!=null&&n.parent.graphManager==this))throw"Invalid parent node!";var c=[];c=c.concat(n.getEdges());for(var t,g=c.length,i=0;i=e.getRight()?n[0]+=Math.min(e.getX()-a.getX(),a.getRight()-e.getRight()):e.getX()<=a.getX()&&e.getRight()>=a.getRight()&&(n[0]+=Math.min(a.getX()-e.getX(),e.getRight()-a.getRight())),a.getY()<=e.getY()&&a.getBottom()>=e.getBottom()?n[1]+=Math.min(e.getY()-a.getY(),a.getBottom()-e.getBottom()):e.getY()<=a.getY()&&e.getBottom()>=a.getBottom()&&(n[1]+=Math.min(a.getY()-e.getY(),e.getBottom()-a.getBottom()));var g=Math.abs((e.getCenterY()-a.getCenterY())/(e.getCenterX()-a.getCenterX()));e.getCenterY()===a.getCenterY()&&e.getCenterX()===a.getCenterX()&&(g=1);var i=g*n[0],r=n[1]/g;n[0]i)return n[0]=c,n[1]=h,n[2]=g,n[3]=Y,!1;if(tg)return n[0]=r,n[1]=t,n[2]=S,n[3]=i,!1;if(cg?(n[0]=l,n[1]=L,s=!0):(n[0]=f,n[1]=h,s=!0):v===d&&(c>g?(n[0]=r,n[1]=h,s=!0):(n[0]=y,n[1]=L,s=!0)),-T===d?g>c?(n[2]=B,n[3]=Y,m=!0):(n[2]=S,n[3]=A,m=!0):T===d&&(g>c?(n[2]=R,n[3]=A,m=!0):(n[2]=tt,n[3]=Y,m=!0)),s&&m)return!1;if(c>g?t>i?(D=this.getCardinalDirection(v,d,4),O=this.getCardinalDirection(T,d,2)):(D=this.getCardinalDirection(-v,d,3),O=this.getCardinalDirection(-T,d,1)):t>i?(D=this.getCardinalDirection(-v,d,1),O=this.getCardinalDirection(-T,d,3)):(D=this.getCardinalDirection(v,d,2),O=this.getCardinalDirection(T,d,4)),!s)switch(D){case 1:F=h,P=c+-C/d,n[0]=P,n[1]=F;break;case 2:P=y,F=t+p*d,n[0]=P,n[1]=F;break;case 3:F=L,P=c+C/d,n[0]=P,n[1]=F;break;case 4:P=l,F=t+-p*d,n[0]=P,n[1]=F;break}if(!m)switch(O){case 1:k=A,I=g+-Z/d,n[2]=I,n[3]=k;break;case 2:I=tt,k=i+x*d,n[2]=I,n[3]=k;break;case 3:k=Y,I=g+Z/d,n[2]=I,n[3]=k;break;case 4:I=B,k=i+-x*d,n[2]=I,n[3]=k;break}}return!1},o.getCardinalDirection=function(a,e,n){return a>e?n:1+n%4},o.getIntersection=function(a,e,n,c){if(c==null)return this.getIntersection2(a,e,n);var t=a.x,g=a.y,i=e.x,r=e.y,h=n.x,f=n.y,l=c.x,L=c.y,y=void 0,p=void 0,C=void 0,R=void 0,A=void 0,S=void 0,B=void 0,Y=void 0,tt=void 0;return C=r-g,A=t-i,B=i*g-t*r,R=L-f,S=h-l,Y=l*f-h*L,tt=C*S-R*A,tt===0?null:(y=(A*Y-S*B)/tt,p=(R*B-C*Y)/tt,new u(y,p))},o.angleOfVector=function(a,e,n,c){var t=void 0;return a!==n?(t=Math.atan((c-e)/(n-a)),n=0){var L=(-h+Math.sqrt(h*h-4*r*f))/(2*r),y=(-h-Math.sqrt(h*h-4*r*f))/(2*r),p=null;return L>=0&&L<=1?[L]:y>=0&&y<=1?[y]:p}else return null},o.HALF_PI=.5*Math.PI,o.ONE_AND_HALF_PI=1.5*Math.PI,o.TWO_PI=2*Math.PI,o.THREE_PI=3*Math.PI,E.exports=o}),(function(E,w,N){"use strict";function u(){}u.sign=function(o){return o>0?1:o<0?-1:0},u.floor=function(o){return o<0?Math.ceil(o):Math.floor(o)},u.ceil=function(o){return o<0?Math.floor(o):Math.ceil(o)},E.exports=u}),(function(E,w,N){"use strict";function u(){}u.MAX_VALUE=2147483647,u.MIN_VALUE=-2147483648,E.exports=u}),(function(E,w,N){"use strict";var u=(function(){function t(g,i){for(var r=0;r"u"?"undefined":u(a);return a==null||e!="object"&&e!="function"},E.exports=o}),(function(E,w,N){"use strict";function u(h){if(Array.isArray(h)){for(var f=0,l=Array(h.length);f0&&f;){for(C.push(A[0]);C.length>0&&f;){var S=C[0];C.splice(0,1),p.add(S);for(var B=S.getEdges(),y=0;y-1&&A.splice(Z,1)}p=new Set,R=new Map}}return h},r.prototype.createDummyNodesForBendpoints=function(h){for(var f=[],l=h.source,L=this.graphManager.calcLowestCommonAncestor(h.source,h.target),y=0;y0){for(var L=this.edgeToDummyNodes.get(l),y=0;y=0&&f.splice(Y,1);var tt=R.getNeighborsList();tt.forEach(function(s){if(l.indexOf(s)<0){var m=L.get(s),v=m-1;v==1&&S.push(s),L.set(s,v)}})}l=l.concat(S),(f.length==1||f.length==2)&&(y=!0,p=f[0])}return p},r.prototype.setGraphManager=function(h){this.graphManager=h},E.exports=r}),(function(E,w,N){"use strict";function u(){}u.seed=1,u.x=0,u.nextDouble=function(){return u.x=Math.sin(u.seed++)*1e4,u.x-Math.floor(u.x)},E.exports=u}),(function(E,w,N){"use strict";var u=N(5);function o(a,e){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}o.prototype.getWorldOrgX=function(){return this.lworldOrgX},o.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},o.prototype.getWorldOrgY=function(){return this.lworldOrgY},o.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},o.prototype.getWorldExtX=function(){return this.lworldExtX},o.prototype.setWorldExtX=function(a){this.lworldExtX=a},o.prototype.getWorldExtY=function(){return this.lworldExtY},o.prototype.setWorldExtY=function(a){this.lworldExtY=a},o.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},o.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},o.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},o.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},o.prototype.getDeviceExtX=function(){return this.ldeviceExtX},o.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},o.prototype.getDeviceExtY=function(){return this.ldeviceExtY},o.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},o.prototype.transformX=function(a){var e=0,n=this.lworldExtX;return n!=0&&(e=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/n),e},o.prototype.transformY=function(a){var e=0,n=this.lworldExtY;return n!=0&&(e=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/n),e},o.prototype.inverseTransformX=function(a){var e=0,n=this.ldeviceExtX;return n!=0&&(e=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/n),e},o.prototype.inverseTransformY=function(a){var e=0,n=this.ldeviceExtY;return n!=0&&(e=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/n),e},o.prototype.inverseTransformPoint=function(a){var e=new u(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return e},E.exports=o}),(function(E,w,N){"use strict";function u(i){if(Array.isArray(i)){for(var r=0,h=Array(i.length);ra.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(i-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(i>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(i-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},t.prototype.calcSpringForces=function(){for(var i=this.getAllEdges(),r,h=0;h0&&arguments[0]!==void 0?arguments[0]:!0,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,h,f,l,L,y=this.getAllNodes(),p;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&i&&this.updateGrid(),p=new Set,h=0;hC||p>C)&&(i.gravitationForceX=-this.gravityConstant*l,i.gravitationForceY=-this.gravityConstant*L)):(C=r.getEstimatedSize()*this.compoundGravityRangeFactor,(y>C||p>C)&&(i.gravitationForceX=-this.gravityConstant*l*this.compoundGravityConstant,i.gravitationForceY=-this.gravityConstant*L*this.compoundGravityConstant))},t.prototype.isConverged=function(){var i,r=!1;return this.totalIterations>this.maxIterations/3&&(r=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),i=this.totalDisplacement=y.length||C>=y[0].length)){for(var R=0;Rt}}]),n})();E.exports=e}),(function(E,w,N){"use strict";function u(){}u.svd=function(o){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=o.length,this.n=o[0].length;var a=Math.min(this.m,this.n);this.s=(function(Dt){for(var Nt=[];Dt-- >0;)Nt.push(0);return Nt})(Math.min(this.m+1,this.n)),this.U=(function(Dt){var Nt=function $t(Rt){if(Rt.length==0)return 0;for(var Xt=[],zt=0;zt0;)Nt.push(0);return Nt})(this.n),n=(function(Dt){for(var Nt=[];Dt-- >0;)Nt.push(0);return Nt})(this.m),c=!0,t=!0,g=Math.min(this.m-1,this.n),i=Math.max(0,Math.min(this.n-2,this.m)),r=0;r=0;d--)if(this.s[d]!==0){for(var D=d+1;D=0;b--){if((function(Dt,Nt){return Dt&&Nt})(b0;){var Q=void 0,Ut=void 0;for(Q=m-2;Q>=-1&&Q!==-1;Q--)if(Math.abs(e[Q])<=St+Lt*(Math.abs(this.s[Q])+Math.abs(this.s[Q+1]))){e[Q]=0;break}if(Q===m-2)Ut=4;else{var Mt=void 0;for(Mt=m-1;Mt>=Q&&Mt!==Q;Mt--){var at=(Mt!==m?Math.abs(e[Mt]):0)+(Mt!==Q+1?Math.abs(e[Mt-1]):0);if(Math.abs(this.s[Mt])<=St+Lt*at){this.s[Mt]=0;break}}Mt===Q?Ut=3:Mt===m-1?Ut=1:(Ut=2,Q=Mt)}switch(Q++,Ut){case 1:{var et=e[m-2];e[m-2]=0;for(var pt=m-2;pt>=Q;pt--){var Et=u.hypot(this.s[pt],et),Ct=this.s[pt]/Et,mt=et/Et;if(this.s[pt]=Et,pt!==Q&&(et=-mt*e[pt-1],e[pt-1]=Ct*e[pt-1]),t)for(var Tt=0;Tt=this.s[Q+1]);){var lt=this.s[Q];if(this.s[Q]=this.s[Q+1],this.s[Q+1]=lt,t&&QMath.abs(a)?(e=a/o,e=Math.abs(o)*Math.sqrt(1+e*e)):a!=0?(e=o/a,e=Math.abs(a)*Math.sqrt(1+e*e)):e=0,e},E.exports=u}),(function(E,w,N){"use strict";var u=(function(){function e(n,c){for(var t=0;t2&&arguments[2]!==void 0?arguments[2]:1,g=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;o(this,e),this.sequence1=n,this.sequence2=c,this.match_score=t,this.mismatch_penalty=g,this.gap_penalty=i,this.iMax=n.length+1,this.jMax=c.length+1,this.grid=new Array(this.iMax);for(var r=0;r=0;n--){var c=this.listeners[n];c.event===a&&c.callback===e&&this.listeners.splice(n,1)}},o.emit=function(a,e){for(var n=0;n{"use strict";(function(w,N){typeof ae=="object"&&typeof Ae=="object"?Ae.exports=N(Ce()):typeof define=="function"&&define.amd?define(["layout-base"],N):typeof ae=="object"?ae.coseBase=N(Ce()):w.coseBase=N(w.layoutBase)})(ae,function(E){return(()=>{"use strict";var w={45:((a,e,n)=>{var c={};c.layoutBase=n(551),c.CoSEConstants=n(806),c.CoSEEdge=n(767),c.CoSEGraph=n(880),c.CoSEGraphManager=n(578),c.CoSELayout=n(765),c.CoSENode=n(991),c.ConstraintHandler=n(902),a.exports=c}),806:((a,e,n)=>{var c=n(551).FDLayoutConstants;function t(){}for(var g in c)t[g]=c[g];t.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,t.DEFAULT_RADIAL_SEPARATION=c.DEFAULT_EDGE_LENGTH,t.DEFAULT_COMPONENT_SEPERATION=60,t.TILE=!0,t.TILING_PADDING_VERTICAL=10,t.TILING_PADDING_HORIZONTAL=10,t.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,t.ENFORCE_CONSTRAINTS=!0,t.APPLY_LAYOUT=!0,t.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,t.TREE_REDUCTION_ON_INCREMENTAL=!0,t.PURE_INCREMENTAL=t.DEFAULT_INCREMENTAL,a.exports=t}),767:((a,e,n)=>{var c=n(551).FDLayoutEdge;function t(i,r,h){c.call(this,i,r,h)}t.prototype=Object.create(c.prototype);for(var g in c)t[g]=c[g];a.exports=t}),880:((a,e,n)=>{var c=n(551).LGraph;function t(i,r,h){c.call(this,i,r,h)}t.prototype=Object.create(c.prototype);for(var g in c)t[g]=c[g];a.exports=t}),578:((a,e,n)=>{var c=n(551).LGraphManager;function t(i){c.call(this,i)}t.prototype=Object.create(c.prototype);for(var g in c)t[g]=c[g];a.exports=t}),765:((a,e,n)=>{var c=n(551).FDLayout,t=n(578),g=n(880),i=n(991),r=n(767),h=n(806),f=n(902),l=n(551).FDLayoutConstants,L=n(551).LayoutConstants,y=n(551).Point,p=n(551).PointD,C=n(551).DimensionD,R=n(551).Layout,A=n(551).Integer,S=n(551).IGeometry,B=n(551).LGraph,Y=n(551).Transform,tt=n(551).LinkedList;function x(){c.call(this),this.toBeTiled={},this.constraints={}}x.prototype=Object.create(c.prototype);for(var Z in c)x[Z]=c[Z];x.prototype.newGraphManager=function(){var s=new t(this);return this.graphManager=s,s},x.prototype.newGraph=function(s){return new g(null,this.graphManager,s)},x.prototype.newNode=function(s){return new i(this.graphManager,s)},x.prototype.newEdge=function(s){return new r(null,null,s)},x.prototype.initParameters=function(){c.prototype.initParameters.call(this,arguments),this.isSubLayout||(h.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=h.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=h.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=l.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=l.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=l.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},x.prototype.initSpringEmbedder=function(){c.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/l.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},x.prototype.layout=function(){var s=L.DEFAULT_CREATE_BENDS_AS_NEEDED;return s&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},x.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(h.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var m=new Set(this.getAllNodes()),v=this.nodesWithGravity.filter(function(D){return m.has(D)});this.graphManager.setAllNodesToApplyGravitation(v)}}else{var s=this.getFlatForest();if(s.length>0)this.positionNodesRadially(s);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var m=new Set(this.getAllNodes()),v=this.nodesWithGravity.filter(function(T){return m.has(T)});this.graphManager.setAllNodesToApplyGravitation(v),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(f.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),h.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},x.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%l.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var s=new Set(this.getAllNodes()),m=this.nodesWithGravity.filter(function(d){return s.has(d)});this.graphManager.setAllNodesToApplyGravitation(m),this.graphManager.updateBounds(),this.updateGrid(),h.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),h.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var v=!this.isTreeGrowing&&!this.isGrowthFinished,T=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(v,T),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},x.prototype.getPositionsData=function(){for(var s=this.graphManager.getAllNodes(),m={},v=0;v0&&this.updateDisplacements();for(var v=0;v0&&(T.fixedNodeWeight=D)}}if(this.constraints.relativePlacementConstraint){var O=new Map,P=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(M){s.fixedNodesOnHorizontal.add(M),s.fixedNodesOnVertical.add(M)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var F=this.constraints.alignmentConstraint.vertical,v=0;v=2*M.length/3;J--)U=Math.floor(Math.random()*(J+1)),X=M[J],M[J]=M[U],M[U]=X;return M},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(M){if(M.left){var U=O.has(M.left)?O.get(M.left):M.left,X=O.has(M.right)?O.get(M.right):M.right;s.nodesInRelativeHorizontal.includes(U)||(s.nodesInRelativeHorizontal.push(U),s.nodeToRelativeConstraintMapHorizontal.set(U,[]),s.dummyToNodeForVerticalAlignment.has(U)?s.nodeToTempPositionMapHorizontal.set(U,s.idToNodeMap.get(s.dummyToNodeForVerticalAlignment.get(U)[0]).getCenterX()):s.nodeToTempPositionMapHorizontal.set(U,s.idToNodeMap.get(U).getCenterX())),s.nodesInRelativeHorizontal.includes(X)||(s.nodesInRelativeHorizontal.push(X),s.nodeToRelativeConstraintMapHorizontal.set(X,[]),s.dummyToNodeForVerticalAlignment.has(X)?s.nodeToTempPositionMapHorizontal.set(X,s.idToNodeMap.get(s.dummyToNodeForVerticalAlignment.get(X)[0]).getCenterX()):s.nodeToTempPositionMapHorizontal.set(X,s.idToNodeMap.get(X).getCenterX())),s.nodeToRelativeConstraintMapHorizontal.get(U).push({right:X,gap:M.gap}),s.nodeToRelativeConstraintMapHorizontal.get(X).push({left:U,gap:M.gap})}else{var J=P.has(M.top)?P.get(M.top):M.top,st=P.has(M.bottom)?P.get(M.bottom):M.bottom;s.nodesInRelativeVertical.includes(J)||(s.nodesInRelativeVertical.push(J),s.nodeToRelativeConstraintMapVertical.set(J,[]),s.dummyToNodeForHorizontalAlignment.has(J)?s.nodeToTempPositionMapVertical.set(J,s.idToNodeMap.get(s.dummyToNodeForHorizontalAlignment.get(J)[0]).getCenterY()):s.nodeToTempPositionMapVertical.set(J,s.idToNodeMap.get(J).getCenterY())),s.nodesInRelativeVertical.includes(st)||(s.nodesInRelativeVertical.push(st),s.nodeToRelativeConstraintMapVertical.set(st,[]),s.dummyToNodeForHorizontalAlignment.has(st)?s.nodeToTempPositionMapVertical.set(st,s.idToNodeMap.get(s.dummyToNodeForHorizontalAlignment.get(st)[0]).getCenterY()):s.nodeToTempPositionMapVertical.set(st,s.idToNodeMap.get(st).getCenterY())),s.nodeToRelativeConstraintMapVertical.get(J).push({bottom:st,gap:M.gap}),s.nodeToRelativeConstraintMapVertical.get(st).push({top:J,gap:M.gap})}});else{var k=new Map,_=new Map;this.constraints.relativePlacementConstraint.forEach(function(M){if(M.left){var U=O.has(M.left)?O.get(M.left):M.left,X=O.has(M.right)?O.get(M.right):M.right;k.has(U)?k.get(U).push(X):k.set(U,[X]),k.has(X)?k.get(X).push(U):k.set(X,[U])}else{var J=P.has(M.top)?P.get(M.top):M.top,st=P.has(M.bottom)?P.get(M.bottom):M.bottom;_.has(J)?_.get(J).push(st):_.set(J,[st]),_.has(st)?_.get(st).push(J):_.set(st,[J])}});var b=function(U,X){var J=[],st=[],Lt=new tt,St=new Set,Q=0;return U.forEach(function(Ut,Mt){if(!St.has(Mt)){J[Q]=[],st[Q]=!1;var at=Mt;for(Lt.push(at),St.add(at),J[Q].push(at);Lt.length!=0;){at=Lt.shift(),X.has(at)&&(st[Q]=!0);var et=U.get(at);et.forEach(function(pt){St.has(pt)||(Lt.push(pt),St.add(pt),J[Q].push(pt))})}Q++}}),{components:J,isFixed:st}},j=b(k,s.fixedNodesOnHorizontal);this.componentsOnHorizontal=j.components,this.fixedComponentsOnHorizontal=j.isFixed;var V=b(_,s.fixedNodesOnVertical);this.componentsOnVertical=V.components,this.fixedComponentsOnVertical=V.isFixed}}},x.prototype.updateDisplacements=function(){var s=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(V){var M=s.idToNodeMap.get(V.nodeId);M.displacementX=0,M.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var m=this.constraints.alignmentConstraint.vertical,v=0;v1){var P;for(P=0;PT&&(T=Math.floor(O.y)),D=Math.floor(O.x+h.DEFAULT_COMPONENT_SEPERATION)}this.transform(new p(L.WORLD_CENTER_X-O.x/2,L.WORLD_CENTER_Y-O.y/2))},x.radialLayout=function(s,m,v){var T=Math.max(this.maxDiagonalInTree(s),h.DEFAULT_RADIAL_SEPARATION);x.branchRadialLayout(m,null,0,359,0,T);var d=B.calculateBounds(s),D=new Y;D.setDeviceOrgX(d.getMinX()),D.setDeviceOrgY(d.getMinY()),D.setWorldOrgX(v.x),D.setWorldOrgY(v.y);for(var O=0;O1;){var J=X[0];X.splice(0,1);var st=b.indexOf(J);st>=0&&b.splice(st,1),M--,j--}m!=null?U=(b.indexOf(X[0])+1)%M:U=0;for(var Lt=Math.abs(T-v)/j,St=U;V!=j;St=++St%M){var Q=b[St].getOtherEnd(s);if(Q!=m){var Ut=(v+V*Lt)%360,Mt=(Ut+Lt)%360;x.branchRadialLayout(Q,s,Ut,Mt,d+D,D),V++}}},x.maxDiagonalInTree=function(s){for(var m=A.MIN_VALUE,v=0;vm&&(m=d)}return m},x.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},x.prototype.groupZeroDegreeMembers=function(){var s=this,m={};this.memberGroups={},this.idToDummyNode={};for(var v=[],T=this.graphManager.getAllNodes(),d=0;d"u"&&(m[P]=[]),m[P]=m[P].concat(D)}Object.keys(m).forEach(function(F){if(m[F].length>1){var I="DummyCompound_"+F;s.memberGroups[I]=m[F];var k=m[F][0].getParent(),_=new i(s.graphManager);_.id=I,_.paddingLeft=k.paddingLeft||0,_.paddingRight=k.paddingRight||0,_.paddingBottom=k.paddingBottom||0,_.paddingTop=k.paddingTop||0,s.idToDummyNode[I]=_;var b=s.getGraphManager().add(s.newGraph(),_),j=k.getChild();j.add(_);for(var V=0;Vd?(T.rect.x-=(T.labelWidth-d)/2,T.setWidth(T.labelWidth),T.labelMarginLeft=(T.labelWidth-d)/2):T.labelPosHorizontal=="right"&&T.setWidth(d+T.labelWidth)),T.labelHeight&&(T.labelPosVertical=="top"?(T.rect.y-=T.labelHeight,T.setHeight(D+T.labelHeight),T.labelMarginTop=T.labelHeight):T.labelPosVertical=="center"&&T.labelHeight>D?(T.rect.y-=(T.labelHeight-D)/2,T.setHeight(T.labelHeight),T.labelMarginTop=(T.labelHeight-D)/2):T.labelPosVertical=="bottom"&&T.setHeight(D+T.labelHeight))}})},x.prototype.repopulateCompounds=function(){for(var s=this.compoundOrder.length-1;s>=0;s--){var m=this.compoundOrder[s],v=m.id,T=m.paddingLeft,d=m.paddingTop,D=m.labelMarginLeft,O=m.labelMarginTop;this.adjustLocations(this.tiledMemberPack[v],m.rect.x,m.rect.y,T,d,D,O)}},x.prototype.repopulateZeroDegreeMembers=function(){var s=this,m=this.tiledZeroDegreePack;Object.keys(m).forEach(function(v){var T=s.idToDummyNode[v],d=T.paddingLeft,D=T.paddingTop,O=T.labelMarginLeft,P=T.labelMarginTop;s.adjustLocations(m[v],T.rect.x,T.rect.y,d,D,O,P)})},x.prototype.getToBeTiled=function(s){var m=s.id;if(this.toBeTiled[m]!=null)return this.toBeTiled[m];var v=s.getChild();if(v==null)return this.toBeTiled[m]=!1,!1;for(var T=v.getNodes(),d=0;d0)return this.toBeTiled[m]=!1,!1;if(D.getChild()==null){this.toBeTiled[D.id]=!1;continue}if(!this.getToBeTiled(D))return this.toBeTiled[m]=!1,!1}return this.toBeTiled[m]=!0,!0},x.prototype.getNodeDegree=function(s){for(var m=s.id,v=s.getEdges(),T=0,d=0;dk&&(k=b.rect.height)}v+=k+s.verticalPadding}},x.prototype.tileCompoundMembers=function(s,m){var v=this;this.tiledMemberPack=[],Object.keys(s).forEach(function(T){var d=m[T];if(v.tiledMemberPack[T]=v.tileNodes(s[T],d.paddingLeft+d.paddingRight),d.rect.width=v.tiledMemberPack[T].width,d.rect.height=v.tiledMemberPack[T].height,d.setCenter(v.tiledMemberPack[T].centerX,v.tiledMemberPack[T].centerY),d.labelMarginLeft=0,d.labelMarginTop=0,h.NODE_DIMENSIONS_INCLUDE_LABELS){var D=d.rect.width,O=d.rect.height;d.labelWidth&&(d.labelPosHorizontal=="left"?(d.rect.x-=d.labelWidth,d.setWidth(D+d.labelWidth),d.labelMarginLeft=d.labelWidth):d.labelPosHorizontal=="center"&&d.labelWidth>D?(d.rect.x-=(d.labelWidth-D)/2,d.setWidth(d.labelWidth),d.labelMarginLeft=(d.labelWidth-D)/2):d.labelPosHorizontal=="right"&&d.setWidth(D+d.labelWidth)),d.labelHeight&&(d.labelPosVertical=="top"?(d.rect.y-=d.labelHeight,d.setHeight(O+d.labelHeight),d.labelMarginTop=d.labelHeight):d.labelPosVertical=="center"&&d.labelHeight>O?(d.rect.y-=(d.labelHeight-O)/2,d.setHeight(d.labelHeight),d.labelMarginTop=(d.labelHeight-O)/2):d.labelPosVertical=="bottom"&&d.setHeight(O+d.labelHeight))}})},x.prototype.tileNodes=function(s,m){var v=this.tileNodesByFavoringDim(s,m,!0),T=this.tileNodesByFavoringDim(s,m,!1),d=this.getOrgRatio(v),D=this.getOrgRatio(T),O;return DP&&(P=V.getWidth())});var F=D/d,I=O/d,k=Math.pow(v-T,2)+4*(F+T)*(I+v)*d,_=(T-v+Math.sqrt(k))/(2*(F+T)),b;m?(b=Math.ceil(_),b==_&&b++):b=Math.floor(_);var j=b*(F+T)-T;return P>j&&(j=P),j+=T*2,j},x.prototype.tileNodesByFavoringDim=function(s,m,v){var T=h.TILING_PADDING_VERTICAL,d=h.TILING_PADDING_HORIZONTAL,D=h.TILING_COMPARE_BY,O={rows:[],rowWidth:[],rowHeight:[],width:0,height:m,verticalPadding:T,horizontalPadding:d,centerX:0,centerY:0};D&&(O.idealRowWidth=this.calcIdealRowWidth(s,v));var P=function(M){return M.rect.width*M.rect.height},F=function(M,U){return P(U)-P(M)};s.sort(function(V,M){var U=F;return O.idealRowWidth?(U=D,U(V.id,M.id)):U(V,M)});for(var I=0,k=0,_=0;_0&&(O+=s.horizontalPadding),s.rowWidth[v]=O,s.width0&&(P+=s.verticalPadding);var F=0;P>s.rowHeight[v]&&(F=s.rowHeight[v],s.rowHeight[v]=P,F=s.rowHeight[v]-F),s.height+=F,s.rows[v].push(m)},x.prototype.getShortestRowIndex=function(s){for(var m=-1,v=Number.MAX_VALUE,T=0;Tv&&(m=T,v=s.rowWidth[T]);return m},x.prototype.canAddHorizontal=function(s,m,v){if(s.idealRowWidth){var T=s.rows.length-1,d=s.rowWidth[T];return d+m+s.horizontalPadding<=s.idealRowWidth}var D=this.getShortestRowIndex(s);if(D<0)return!0;var O=s.rowWidth[D];if(O+s.horizontalPadding+m<=s.width)return!0;var P=0;s.rowHeight[D]0&&(P=v+s.verticalPadding-s.rowHeight[D]);var F;s.width-O>=m+s.horizontalPadding?F=(s.height+P)/(O+m+s.horizontalPadding):F=(s.height+P)/s.width,P=v+s.verticalPadding;var I;return s.widthD&&m!=v){T.splice(-1,1),s.rows[v].push(d),s.rowWidth[m]=s.rowWidth[m]-D,s.rowWidth[v]=s.rowWidth[v]+D,s.width=s.rowWidth[instance.getLongestRowIndex(s)];for(var O=Number.MIN_VALUE,P=0;PO&&(O=T[P].height);m>0&&(O+=s.verticalPadding);var F=s.rowHeight[m]+s.rowHeight[v];s.rowHeight[m]=O,s.rowHeight[v]0)for(var j=d;j<=D;j++)b[0]+=this.grid[j][O-1].length+this.grid[j][O].length-1;if(D0)for(var j=O;j<=P;j++)b[3]+=this.grid[d-1][j].length+this.grid[d][j].length-1;for(var V=A.MAX_VALUE,M,U,X=0;X{var c=n(551).FDLayoutNode,t=n(551).IMath;function g(r,h,f,l){c.call(this,r,h,f,l)}g.prototype=Object.create(c.prototype);for(var i in c)g[i]=c[i];g.prototype.calculateDisplacement=function(){var r=this.graphManager.getLayout();this.getChild()!=null&&this.fixedNodeWeight?(this.displacementX+=r.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=r.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight):(this.displacementX+=r.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=r.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren),Math.abs(this.displacementX)>r.coolingFactor*r.maxNodeDisplacement&&(this.displacementX=r.coolingFactor*r.maxNodeDisplacement*t.sign(this.displacementX)),Math.abs(this.displacementY)>r.coolingFactor*r.maxNodeDisplacement&&(this.displacementY=r.coolingFactor*r.maxNodeDisplacement*t.sign(this.displacementY)),this.child&&this.child.getNodes().length>0&&this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},g.prototype.propogateDisplacementToChildren=function(r,h){for(var f=this.getChild().getNodes(),l,L=0;L{function c(f){if(Array.isArray(f)){for(var l=0,L=Array(f.length);l0){var dt=0;it.forEach(function(lt){W=="horizontal"?(q.set(lt,y.has(lt)?p[y.get(lt)]:$.get(lt)),dt+=q.get(lt)):(q.set(lt,y.has(lt)?C[y.get(lt)]:$.get(lt)),dt+=q.get(lt))}),dt=dt/it.length,ot.forEach(function(lt){z.has(lt)||q.set(lt,dt)})}else{var nt=0;ot.forEach(function(lt){W=="horizontal"?nt+=y.has(lt)?p[y.get(lt)]:$.get(lt):nt+=y.has(lt)?C[y.get(lt)]:$.get(lt)}),nt=nt/ot.length,ot.forEach(function(lt){q.set(lt,nt)})}});for(var rt=function(){var it=gt.shift(),dt=H.get(it);dt.forEach(function(nt){if(q.get(nt.id)lt&&(lt=Xt),ztFt&&(Ft=zt)}}catch(te){Vt=!0,Dt=te}finally{try{!xt&&Nt.return&&Nt.return()}finally{if(Vt)throw Dt}}var de=(dt+lt)/2-(nt+Ft)/2,Qt=!0,Kt=!1,jt=void 0;try{for(var Jt=ot[Symbol.iterator](),he;!(Qt=(he=Jt.next()).done);Qt=!0){var _t=he.value;q.set(_t,q.get(_t)+de)}}catch(te){Kt=!0,jt=te}finally{try{!Qt&&Jt.return&&Jt.return()}finally{if(Kt)throw jt}}})}return q},Z=function(H){var W=0,z=0,$=0,K=0;if(H.forEach(function(ht){ht.left?p[y.get(ht.left)]-p[y.get(ht.right)]>=0?W++:z++:C[y.get(ht.top)]-C[y.get(ht.bottom)]>=0?$++:K++}),W>z&&$>K)for(var ut=0;utz)for(var ft=0;ftK)for(var q=0;q1)l.fixedNodeConstraint.forEach(function(G,H){T[H]=[G.position.x,G.position.y],d[H]=[p[y.get(G.nodeId)],C[y.get(G.nodeId)]]}),D=!0;else if(l.alignmentConstraint)(function(){var G=0;if(l.alignmentConstraint.vertical){for(var H=l.alignmentConstraint.vertical,W=function(q){var ht=new Set;H[q].forEach(function(vt){ht.add(vt)});var gt=new Set([].concat(c(ht)).filter(function(vt){return P.has(vt)})),rt=void 0;gt.size>0?rt=p[y.get(gt.values().next().value)]:rt=tt(ht).x,H[q].forEach(function(vt){T[G]=[rt,C[y.get(vt)]],d[G]=[p[y.get(vt)],C[y.get(vt)]],G++})},z=0;z0?rt=p[y.get(gt.values().next().value)]:rt=tt(ht).y,$[q].forEach(function(vt){T[G]=[p[y.get(vt)],rt],d[G]=[p[y.get(vt)],C[y.get(vt)]],G++})},ut=0;ut<$.length;ut++)K(ut);D=!0}l.relativePlacementConstraint&&(O=!0)})();else if(l.relativePlacementConstraint){for(var _=0,b=0,j=0;j_&&(_=k[j].length,b=j);if(_0){var Ct={x:0,y:0};l.fixedNodeConstraint.forEach(function(G,H){var W={x:p[y.get(G.nodeId)],y:C[y.get(G.nodeId)]},z=G.position,$=Y(z,W);Ct.x+=$.x,Ct.y+=$.y}),Ct.x/=l.fixedNodeConstraint.length,Ct.y/=l.fixedNodeConstraint.length,p.forEach(function(G,H){p[H]+=Ct.x}),C.forEach(function(G,H){C[H]+=Ct.y}),l.fixedNodeConstraint.forEach(function(G){p[y.get(G.nodeId)]=G.position.x,C[y.get(G.nodeId)]=G.position.y})}if(l.alignmentConstraint){if(l.alignmentConstraint.vertical)for(var mt=l.alignmentConstraint.vertical,Tt=function(H){var W=new Set;mt[H].forEach(function(K){W.add(K)});var z=new Set([].concat(c(W)).filter(function(K){return P.has(K)})),$=void 0;z.size>0?$=p[y.get(z.values().next().value)]:$=tt(W).x,W.forEach(function(K){P.has(K)||(p[y.get(K)]=$)})},Ot=0;Ot0?$=C[y.get(z.values().next().value)]:$=tt(W).y,W.forEach(function(K){P.has(K)||(C[y.get(K)]=$)})},Pt=0;Pt{a.exports=E})},N={};function u(a){var e=N[a];if(e!==void 0)return e.exports;var n=N[a]={exports:{}};return w[a](n,n.exports,u),n.exports}var o=u(45);return o})()})});var _e=me((oe,Me)=>{"use strict";(function(w,N){typeof oe=="object"&&typeof Me=="object"?Me.exports=N(we()):typeof define=="function"&&define.amd?define(["cose-base"],N):typeof oe=="object"?oe.cytoscapeFcose=N(we()):w.cytoscapeFcose=N(w.coseBase)})(oe,function(E){return(()=>{"use strict";var w={658:(a=>{a.exports=Object.assign!=null?Object.assign.bind(Object):function(e){for(var n=arguments.length,c=Array(n>1?n-1:0),t=1;t{var c=(function(){function i(r,h){var f=[],l=!0,L=!1,y=void 0;try{for(var p=r[Symbol.iterator](),C;!(l=(C=p.next()).done)&&(f.push(C.value),!(h&&f.length===h));l=!0);}catch(R){L=!0,y=R}finally{try{!l&&p.return&&p.return()}finally{if(L)throw y}}return f}return function(r,h){if(Array.isArray(r))return r;if(Symbol.iterator in Object(r))return i(r,h);throw new TypeError("Invalid attempt to destructure non-iterable instance")}})(),t=n(140).layoutBase.LinkedList,g={};g.getTopMostNodes=function(i){for(var r={},h=0;h0&&D.merge(I)});for(var O=0;O1){C=y[0],R=C.connectedEdges().length,y.forEach(function(d){d.connectedEdges().length0&&f.set("dummy"+(f.size+1),B),Y},g.relocateComponent=function(i,r,h){if(!h.fixedNodeConstraint){var f=Number.POSITIVE_INFINITY,l=Number.NEGATIVE_INFINITY,L=Number.POSITIVE_INFINITY,y=Number.NEGATIVE_INFINITY;if(h.quality=="draft"){var p=!0,C=!1,R=void 0;try{for(var A=r.nodeIndexes[Symbol.iterator](),S;!(p=(S=A.next()).done);p=!0){var B=S.value,Y=c(B,2),tt=Y[0],x=Y[1],Z=h.cy.getElementById(tt);if(Z){var s=Z.boundingBox(),m=r.xCoords[x]-s.w/2,v=r.xCoords[x]+s.w/2,T=r.yCoords[x]-s.h/2,d=r.yCoords[x]+s.h/2;ml&&(l=v),Ty&&(y=d)}}}catch(I){C=!0,R=I}finally{try{!p&&A.return&&A.return()}finally{if(C)throw R}}var D=i.x-(l+f)/2,O=i.y-(y+L)/2;r.xCoords=r.xCoords.map(function(I){return I+D}),r.yCoords=r.yCoords.map(function(I){return I+O})}else{Object.keys(r).forEach(function(I){var k=r[I],_=k.getRect().x,b=k.getRect().x+k.getRect().width,j=k.getRect().y,V=k.getRect().y+k.getRect().height;_l&&(l=b),jy&&(y=V)});var P=i.x-(l+f)/2,F=i.y-(y+L)/2;Object.keys(r).forEach(function(I){var k=r[I];k.setCenter(k.getCenterX()+P,k.getCenterY()+F)})}}},g.calcBoundingBox=function(i,r,h,f){for(var l=Number.MAX_SAFE_INTEGER,L=Number.MIN_SAFE_INTEGER,y=Number.MAX_SAFE_INTEGER,p=Number.MIN_SAFE_INTEGER,C=void 0,R=void 0,A=void 0,S=void 0,B=i.descendants().not(":parent"),Y=B.length,tt=0;ttC&&(l=C),LA&&(y=A),p{var c=n(548),t=n(140).CoSELayout,g=n(140).CoSENode,i=n(140).layoutBase.PointD,r=n(140).layoutBase.DimensionD,h=n(140).layoutBase.LayoutConstants,f=n(140).layoutBase.FDLayoutConstants,l=n(140).CoSEConstants,L=function(p,C){var R=p.cy,A=p.eles,S=A.nodes(),B=A.edges(),Y=void 0,tt=void 0,x=void 0,Z={};p.randomize&&(Y=C.nodeIndexes,tt=C.xCoords,x=C.yCoords);var s=function(I){return typeof I=="function"},m=function(I,k){return s(I)?I(k):I},v=c.calcParentsWithoutChildren(R,A),T=function F(I,k,_,b){for(var j=k.length,V=0;V0){var Lt=void 0;Lt=_.getGraphManager().add(_.newGraph(),X),F(Lt,U,_,b)}}},d=function(I,k,_){for(var b=0,j=0,V=0;V<_.length;V++){var M=_[V],U=Z[M.data("source")],X=Z[M.data("target")];if(U&&X&&U!==X&&U.getEdgesBetween(X).length==0){var J=k.add(I.newEdge(),U,X);J.id=M.id(),J.idealLength=m(p.idealEdgeLength,M),J.edgeElasticity=m(p.edgeElasticity,M),b+=J.idealLength,j++}}p.idealEdgeLength!=null&&(j>0?l.DEFAULT_EDGE_LENGTH=f.DEFAULT_EDGE_LENGTH=b/j:s(p.idealEdgeLength)?l.DEFAULT_EDGE_LENGTH=f.DEFAULT_EDGE_LENGTH=50:l.DEFAULT_EDGE_LENGTH=f.DEFAULT_EDGE_LENGTH=p.idealEdgeLength,l.MIN_REPULSION_DIST=f.MIN_REPULSION_DIST=f.DEFAULT_EDGE_LENGTH/10,l.DEFAULT_RADIAL_SEPARATION=f.DEFAULT_EDGE_LENGTH)},D=function(I,k){k.fixedNodeConstraint&&(I.constraints.fixedNodeConstraint=k.fixedNodeConstraint),k.alignmentConstraint&&(I.constraints.alignmentConstraint=k.alignmentConstraint),k.relativePlacementConstraint&&(I.constraints.relativePlacementConstraint=k.relativePlacementConstraint)};p.nestingFactor!=null&&(l.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=f.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=p.nestingFactor),p.gravity!=null&&(l.DEFAULT_GRAVITY_STRENGTH=f.DEFAULT_GRAVITY_STRENGTH=p.gravity),p.numIter!=null&&(l.MAX_ITERATIONS=f.MAX_ITERATIONS=p.numIter),p.gravityRange!=null&&(l.DEFAULT_GRAVITY_RANGE_FACTOR=f.DEFAULT_GRAVITY_RANGE_FACTOR=p.gravityRange),p.gravityCompound!=null&&(l.DEFAULT_COMPOUND_GRAVITY_STRENGTH=f.DEFAULT_COMPOUND_GRAVITY_STRENGTH=p.gravityCompound),p.gravityRangeCompound!=null&&(l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=f.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=p.gravityRangeCompound),p.initialEnergyOnIncremental!=null&&(l.DEFAULT_COOLING_FACTOR_INCREMENTAL=f.DEFAULT_COOLING_FACTOR_INCREMENTAL=p.initialEnergyOnIncremental),p.tilingCompareBy!=null&&(l.TILING_COMPARE_BY=p.tilingCompareBy),p.quality=="proof"?h.QUALITY=2:h.QUALITY=0,l.NODE_DIMENSIONS_INCLUDE_LABELS=f.NODE_DIMENSIONS_INCLUDE_LABELS=h.NODE_DIMENSIONS_INCLUDE_LABELS=p.nodeDimensionsIncludeLabels,l.DEFAULT_INCREMENTAL=f.DEFAULT_INCREMENTAL=h.DEFAULT_INCREMENTAL=!p.randomize,l.ANIMATE=f.ANIMATE=h.ANIMATE=p.animate,l.TILE=p.tile,l.TILING_PADDING_VERTICAL=typeof p.tilingPaddingVertical=="function"?p.tilingPaddingVertical.call():p.tilingPaddingVertical,l.TILING_PADDING_HORIZONTAL=typeof p.tilingPaddingHorizontal=="function"?p.tilingPaddingHorizontal.call():p.tilingPaddingHorizontal,l.DEFAULT_INCREMENTAL=f.DEFAULT_INCREMENTAL=h.DEFAULT_INCREMENTAL=!0,l.PURE_INCREMENTAL=!p.randomize,h.DEFAULT_UNIFORM_LEAF_NODE_SIZES=p.uniformNodeDimensions,p.step=="transformed"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,l.ENFORCE_CONSTRAINTS=!1,l.APPLY_LAYOUT=!1),p.step=="enforced"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!0,l.APPLY_LAYOUT=!1),p.step=="cose"&&(l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!1,l.APPLY_LAYOUT=!0),p.step=="all"&&(p.randomize?l.TRANSFORM_ON_CONSTRAINT_HANDLING=!0:l.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,l.ENFORCE_CONSTRAINTS=!0,l.APPLY_LAYOUT=!0),p.fixedNodeConstraint||p.alignmentConstraint||p.relativePlacementConstraint?l.TREE_REDUCTION_ON_INCREMENTAL=!1:l.TREE_REDUCTION_ON_INCREMENTAL=!0;var O=new t,P=O.newGraphManager();return T(P.addRoot(),c.getTopMostNodes(S),O,p),d(O,P,B),D(O,p),O.runLayout(),Z};a.exports={coseLayout:L}}),212:((a,e,n)=>{var c=(function(){function p(C,R){for(var A=0;A0)if(d){var P=i.getTopMostNodes(A.eles.nodes());if(s=i.connectComponents(S,A.eles,P),s.forEach(function(at){var et=at.boundingBox();m.push({x:et.x1+et.w/2,y:et.y1+et.h/2})}),A.randomize&&s.forEach(function(at){A.eles=at,Y.push(h(A))}),A.quality=="default"||A.quality=="proof"){var F=S.collection();if(A.tile){var I=new Map,k=[],_=[],b=0,j={nodeIndexes:I,xCoords:k,yCoords:_},V=[];if(s.forEach(function(at,et){at.edges().length==0&&(at.nodes().forEach(function(pt,Et){F.merge(at.nodes()[Et]),pt.isParent()||(j.nodeIndexes.set(at.nodes()[Et].id(),b++),j.xCoords.push(at.nodes()[0].position().x),j.yCoords.push(at.nodes()[0].position().y))}),V.push(et))}),F.length>1){var M=F.boundingBox();m.push({x:M.x1+M.w/2,y:M.y1+M.h/2}),s.push(F),Y.push(j);for(var U=V.length-1;U>=0;U--)s.splice(V[U],1),Y.splice(V[U],1),m.splice(V[U],1)}}s.forEach(function(at,et){A.eles=at,Z.push(l(A,Y[et])),i.relocateComponent(m[et],Z[et],A)})}else s.forEach(function(at,et){i.relocateComponent(m[et],Y[et],A)});var X=new Set;if(s.length>1){var J=[],st=B.filter(function(at){return at.css("display")=="none"});s.forEach(function(at,et){var pt=void 0;if(A.quality=="draft"&&(pt=Y[et].nodeIndexes),at.nodes().not(st).length>0){var Et={};Et.edges=[],Et.nodes=[];var Ct=void 0;at.nodes().not(st).forEach(function(mt){if(A.quality=="draft")if(!mt.isParent())Ct=pt.get(mt.id()),Et.nodes.push({x:Y[et].xCoords[Ct]-mt.boundingbox().w/2,y:Y[et].yCoords[Ct]-mt.boundingbox().h/2,width:mt.boundingbox().w,height:mt.boundingbox().h});else{var Tt=i.calcBoundingBox(mt,Y[et].xCoords,Y[et].yCoords,pt);Et.nodes.push({x:Tt.topLeftX,y:Tt.topLeftY,width:Tt.width,height:Tt.height})}else Z[et][mt.id()]&&Et.nodes.push({x:Z[et][mt.id()].getLeft(),y:Z[et][mt.id()].getTop(),width:Z[et][mt.id()].getWidth(),height:Z[et][mt.id()].getHeight()})}),at.edges().forEach(function(mt){var Tt=mt.source(),Ot=mt.target();if(Tt.css("display")!="none"&&Ot.css("display")!="none")if(A.quality=="draft"){var It=pt.get(Tt.id()),Wt=pt.get(Ot.id()),Pt=[],Yt=[];if(Tt.isParent()){var bt=i.calcBoundingBox(Tt,Y[et].xCoords,Y[et].yCoords,pt);Pt.push(bt.topLeftX+bt.width/2),Pt.push(bt.topLeftY+bt.height/2)}else Pt.push(Y[et].xCoords[It]),Pt.push(Y[et].yCoords[It]);if(Ot.isParent()){var G=i.calcBoundingBox(Ot,Y[et].xCoords,Y[et].yCoords,pt);Yt.push(G.topLeftX+G.width/2),Yt.push(G.topLeftY+G.height/2)}else Yt.push(Y[et].xCoords[Wt]),Yt.push(Y[et].yCoords[Wt]);Et.edges.push({startX:Pt[0],startY:Pt[1],endX:Yt[0],endY:Yt[1]})}else Z[et][Tt.id()]&&Z[et][Ot.id()]&&Et.edges.push({startX:Z[et][Tt.id()].getCenterX(),startY:Z[et][Tt.id()].getCenterY(),endX:Z[et][Ot.id()].getCenterX(),endY:Z[et][Ot.id()].getCenterY()})}),Et.nodes.length>0&&(J.push(Et),X.add(et))}});var Lt=T.packComponents(J,A.randomize).shifts;if(A.quality=="draft")Y.forEach(function(at,et){var pt=at.xCoords.map(function(Ct){return Ct+Lt[et].dx}),Et=at.yCoords.map(function(Ct){return Ct+Lt[et].dy});at.xCoords=pt,at.yCoords=Et});else{var St=0;X.forEach(function(at){Object.keys(Z[at]).forEach(function(et){var pt=Z[at][et];pt.setCenter(pt.getCenterX()+Lt[St].dx,pt.getCenterY()+Lt[St].dy)}),St++})}}}else{var D=A.eles.boundingBox();if(m.push({x:D.x1+D.w/2,y:D.y1+D.h/2}),A.randomize){var O=h(A);Y.push(O)}A.quality=="default"||A.quality=="proof"?(Z.push(l(A,Y[0])),i.relocateComponent(m[0],Z[0],A)):i.relocateComponent(m[0],Y[0],A)}var Q=function(et,pt){if(A.quality=="default"||A.quality=="proof"){typeof et=="number"&&(et=pt);var Et=void 0,Ct=void 0,mt=et.data("id");return Z.forEach(function(Ot){mt in Ot&&(Et={x:Ot[mt].getRect().getCenterX(),y:Ot[mt].getRect().getCenterY()},Ct=Ot[mt])}),A.nodeDimensionsIncludeLabels&&(Ct.labelWidth&&(Ct.labelPosHorizontal=="left"?Et.x+=Ct.labelWidth/2:Ct.labelPosHorizontal=="right"&&(Et.x-=Ct.labelWidth/2)),Ct.labelHeight&&(Ct.labelPosVertical=="top"?Et.y+=Ct.labelHeight/2:Ct.labelPosVertical=="bottom"&&(Et.y-=Ct.labelHeight/2))),Et==null&&(Et={x:et.position("x"),y:et.position("y")}),{x:Et.x,y:Et.y}}else{var Tt=void 0;return Y.forEach(function(Ot){var It=Ot.nodeIndexes.get(et.id());It!=null&&(Tt={x:Ot.xCoords[It],y:Ot.yCoords[It]})}),Tt==null&&(Tt={x:et.position("x"),y:et.position("y")}),{x:Tt.x,y:Tt.y}}};if(A.quality=="default"||A.quality=="proof"||A.randomize){var Ut=i.calcParentsWithoutChildren(S,B),Mt=B.filter(function(at){return at.css("display")=="none"});A.eles=B.not(Mt),B.nodes().not(":parent").not(Mt).layoutPositions(R,A,Q),Ut.length>0&&Ut.forEach(function(at){at.position(Q(at))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),p})();a.exports=y}),657:((a,e,n)=>{var c=n(548),t=n(140).layoutBase.Matrix,g=n(140).layoutBase.SVD,i=function(h){var f=h.cy,l=h.eles,L=l.nodes(),y=l.nodes(":parent"),p=new Map,C=new Map,R=new Map,A=[],S=[],B=[],Y=[],tt=[],x=[],Z=[],s=[],m=void 0,v=void 0,T=1e8,d=1e-9,D=h.piTol,O=h.samplingType,P=h.nodeSeparation,F=void 0,I=function(){for(var W=0,z=0,$=!1;z=ut;){q=K[ut++];for(var ot=A[q],it=0;itrt&&(rt=tt[nt],vt=nt)}return vt},_=function(W){var z=void 0;if(W){z=Math.floor(Math.random()*v),m=z;for(var K=0;K=1)break;rt=gt}for(var ot=0;ot=1)break;rt=gt}for(var dt=0;dt0&&(z.isParent()?A[W].push(R.get(z.id())):A[W].push(z.id()))})});var Ut=function(W){var z=C.get(W),$=void 0;p.get(W).forEach(function(K){f.getElementById(K).isParent()?$=R.get(K):$=K,A[z].push($),A[C.get($)].push(W)})},Mt=!0,at=!1,et=void 0;try{for(var pt=p.keys()[Symbol.iterator](),Et;!(Mt=(Et=pt.next()).done);Mt=!0){var Ct=Et.value;Ut(Ct)}}catch(H){at=!0,et=H}finally{try{!Mt&&pt.return&&pt.return()}finally{if(at)throw et}}v=C.size;var mt=void 0;if(v>2){F=v{var c=n(212),t=function(i){i&&i("layout","fcose",c)};typeof cytoscape<"u"&&t(cytoscape),a.exports=t}),140:(a=>{a.exports=E})},N={};function u(a){var e=N[a];if(e!==void 0)return e.exports;var n=N[a]={exports:{}};return w[a](n,n.exports,u),n.exports}var o=u(579);return o})()})});var or=pr(_e(),1);var tr={L:"left",R:"right",T:"top",B:"bottom"},er={L:ct(E=>`${E},${E/2} 0,${E} 0,0`,"L"),R:ct(E=>`0,${E/2} ${E},0 ${E},${E}`,"R"),T:ct(E=>`0,0 ${E},0 ${E/2},${E}`,"T"),B:ct(E=>`${E/2},0 ${E},${E} 0,${E}`,"B")},ue={L:ct((E,w)=>E-w+2,"L"),R:ct((E,w)=>E-2,"R"),T:ct((E,w)=>E-w+2,"T"),B:ct((E,w)=>E-2,"B")},yr=ct(function(E){return Ht(E)?E==="L"?"R":"L":E==="T"?"B":"T"},"getOppositeArchitectureDirection"),rr=ct(function(E){let w=E;return w==="L"||w==="R"||w==="T"||w==="B"},"isArchitectureDirection"),Ht=ct(function(E){let w=E;return w==="L"||w==="R"},"isArchitectureDirectionX"),qt=ct(function(E){let w=E;return w==="T"||w==="B"},"isArchitectureDirectionY"),De=ct(function(E,w){let N=Ht(E)&&qt(w),u=qt(E)&&Ht(w);return N||u},"isArchitectureDirectionXY"),Er=ct(function(E){let w=E[0],N=E[1],u=Ht(w)&&qt(N),o=qt(w)&&Ht(N);return u||o},"isArchitecturePairXY"),mr=ct(function(E){return E!=="LL"&&E!=="RR"&&E!=="TT"&&E!=="BB"},"isValidArchitectureDirectionPair"),Oe=ct(function(E,w){let N=`${E}${w}`;return mr(N)?N:void 0},"getArchitectureDirectionPair"),Tr=ct(function([E,w],N){let u=N[0],o=N[1];return Ht(u)?qt(o)?[E+(u==="L"?-1:1),w+(o==="T"?1:-1)]:[E+(u==="L"?-1:1),w]:Ht(o)?[E+(o==="L"?1:-1),w+(u==="T"?1:-1)]:[E,w+(u==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),Nr=ct(function(E){return E==="LT"||E==="TL"?[1,1]:E==="BL"||E==="LB"?[1,-1]:E==="BR"||E==="RB"?[-1,-1]:[-1,1]},"getArchitectureDirectionXYFactors"),Lr=ct(function(E,w){return De(E,w)?"bend":Ht(E)?"horizontal":"vertical"},"getArchitectureDirectionAlignment"),Cr=ct(function(E){return E.type==="service"},"isArchitectureService"),Ar=ct(function(E){return E.type==="junction"},"isArchitectureJunction"),ir=ct(E=>E.data(),"edgeData"),ie=ct(E=>E.data(),"nodeData"),wr=Pe.architecture,nr=class{constructor(){this.nodes={},this.groups={},this.edges=[],this.registeredIds={},this.elements={},this.setAccTitle=He,this.getAccTitle=We,this.setDiagramTitle=Be,this.getDiagramTitle=$e,this.getAccDescription=ze,this.setAccDescription=Ve,this.clear()}static{ct(this,"ArchitectureDB")}clear(){this.nodes={},this.groups={},this.edges=[],this.registeredIds={},this.dataStructures=void 0,this.elements={},Xe()}addService({id:E,icon:w,in:N,title:u,iconText:o}){if(this.registeredIds[E]!==void 0)throw new Error(`The service id [${E}] is already in use by another ${this.registeredIds[E]}`);if(N!==void 0){if(E===N)throw new Error(`The service [${E}] cannot be placed within itself`);if(this.registeredIds[N]===void 0)throw new Error(`The service [${E}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds[N]==="node")throw new Error(`The service [${E}]'s parent is not a group`)}this.registeredIds[E]="node",this.nodes[E]={id:E,type:"service",icon:w,iconText:o,title:u,edges:[],in:N}}getServices(){return Object.values(this.nodes).filter(Cr)}addJunction({id:E,in:w}){if(this.registeredIds[E]!==void 0)throw new Error(`The junction id [${E}] is already in use by another ${this.registeredIds[E]}`);if(w!==void 0){if(E===w)throw new Error(`The junction [${E}] cannot be placed within itself`);if(this.registeredIds[w]===void 0)throw new Error(`The junction [${E}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds[w]==="node")throw new Error(`The junction [${E}]'s parent is not a group`)}this.registeredIds[E]="node",this.nodes[E]={id:E,type:"junction",edges:[],in:w}}getJunctions(){return Object.values(this.nodes).filter(Ar)}getNodes(){return Object.values(this.nodes)}getNode(E){return this.nodes[E]??null}addGroup({id:E,icon:w,in:N,title:u}){if(this.registeredIds?.[E]!==void 0)throw new Error(`The group id [${E}] is already in use by another ${this.registeredIds[E]}`);if(N!==void 0){if(E===N)throw new Error(`The group [${E}] cannot be placed within itself`);if(this.registeredIds?.[N]===void 0)throw new Error(`The group [${E}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds?.[N]==="node")throw new Error(`The group [${E}]'s parent is not a group`)}this.registeredIds[E]="group",this.groups[E]={id:E,icon:w,title:u,in:N}}getGroups(){return Object.values(this.groups)}addEdge({lhsId:E,rhsId:w,lhsDir:N,rhsDir:u,lhsInto:o,rhsInto:a,lhsGroup:e,rhsGroup:n,title:c}){if(!rr(N))throw new Error(`Invalid direction given for left hand side of edge ${E}--${w}. Expected (L,R,T,B) got ${String(N)}`);if(!rr(u))throw new Error(`Invalid direction given for right hand side of edge ${E}--${w}. Expected (L,R,T,B) got ${String(u)}`);if(this.nodes[E]===void 0&&this.groups[E]===void 0)throw new Error(`The left-hand id [${E}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(this.nodes[w]===void 0&&this.groups[w]===void 0)throw new Error(`The right-hand id [${w}] does not yet exist. Please create the service/group before declaring an edge to it.`);let t=this.nodes[E].in,g=this.nodes[w].in;if(e&&t&&g&&t==g)throw new Error(`The left-hand id [${E}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(n&&t&&g&&t==g)throw new Error(`The right-hand id [${w}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let i={lhsId:E,lhsDir:N,lhsInto:o,lhsGroup:e,rhsId:w,rhsDir:u,rhsInto:a,rhsGroup:n,title:c};this.edges.push(i),this.nodes[E]&&this.nodes[w]&&(this.nodes[E].edges.push(this.edges[this.edges.length-1]),this.nodes[w].edges.push(this.edges[this.edges.length-1]))}getEdges(){return this.edges}getDataStructures(){if(this.dataStructures===void 0){let E={},w=Object.entries(this.nodes).reduce((n,[c,t])=>(n[c]=t.edges.reduce((g,i)=>{let r=this.getNode(i.lhsId)?.in,h=this.getNode(i.rhsId)?.in;if(r&&h&&r!==h){let f=Lr(i.lhsDir,i.rhsDir);f!=="bend"&&(E[r]??={},E[r][h]=f,E[h]??={},E[h][r]=f)}if(i.lhsId===c){let f=Oe(i.lhsDir,i.rhsDir);f&&(g[f]=i.rhsId)}else{let f=Oe(i.rhsDir,i.lhsDir);f&&(g[f]=i.lhsId)}return g},{}),n),{}),N=Object.keys(w)[0],u={[N]:1},o=Object.keys(w).reduce((n,c)=>c===N?n:le(ee({},n),{[c]:1}),{}),a=ct(n=>{let c={[n]:[0,0]},t=[n];for(;t.length>0;){let g=t.shift();if(g){u[g]=1,delete o[g];let i=w[g],[r,h]=c[g];Object.entries(i).forEach(([f,l])=>{u[l]||(c[l]=Tr([r,h],f),t.push(l))})}}return c},"BFS"),e=[a(N)];for(;Object.keys(o).length>0;)e.push(a(Object.keys(o)[0]));this.dataStructures={adjList:w,spatialMaps:e,groupAlignments:E}}return this.dataStructures}setElementForId(E,w){this.elements[E]=w}getElementById(E){return this.elements[E]}getConfig(){return Ze(ee(ee({},wr),Ge().architecture))}getConfigField(E){return this.getConfig()[E]}},Mr=ct((E,w)=>{Ke(E,w),E.groups.map(N=>w.addGroup(N)),E.services.map(N=>w.addService(le(ee({},N),{type:"service"}))),E.junctions.map(N=>w.addJunction(le(ee({},N),{type:"junction"}))),E.edges.map(N=>w.addEdge(N))},"populateDb"),ar={parser:{yy:void 0},parse:ct(E=>Zt(null,null,function*(){let w=yield je("architecture",E);Te.debug(w);let N=ar.parser?.yy;if(!(N instanceof nr))throw new Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Mr(w,N)}),"parse")},Or=ct(E=>` - .edge { - stroke-width: ${E.archEdgeWidth}; - stroke: ${E.archEdgeColor}; - fill: none; - } - - .arrow { - fill: ${E.archEdgeArrowColor}; - } - - .node-bkg { - fill: none; - stroke: ${E.archGroupBorderColor}; - stroke-width: ${E.archGroupBorderWidth}; - stroke-dasharray: 8; - } - .node-icon-text { - display: flex; - align-items: center; - } - - .node-icon-text > div { - color: #fff; - margin: 1px; - height: fit-content; - text-align: center; - overflow: hidden; - display: -webkit-box; - -webkit-box-orient: vertical; - } -`,"getStyles"),Dr=Or,re=ct(E=>`${E}`,"wrapIcon"),se={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:re('')},server:{body:re('')},disk:{body:re('')},internet:{body:re('')},cloud:{body:re('')},unknown:Qe,blank:{body:re("")}}},xr=ct(function(E,w,N){return Zt(this,null,function*(){let u=N.getConfigField("padding"),o=N.getConfigField("iconSize"),a=o/2,e=o/6,n=e/2;yield Promise.all(w.edges().map(c=>Zt(null,null,function*(){let{source:t,sourceDir:g,sourceArrow:i,sourceGroup:r,target:h,targetDir:f,targetArrow:l,targetGroup:L,label:y}=ir(c),{x:p,y:C}=c[0].sourceEndpoint(),{x:R,y:A}=c[0].midpoint(),{x:S,y:B}=c[0].targetEndpoint(),Y=u+4;if(r&&(Ht(g)?p+=g==="L"?-Y:Y:C+=g==="T"?-Y:Y+18),L&&(Ht(f)?S+=f==="L"?-Y:Y:B+=f==="T"?-Y:Y+18),!r&&N.getNode(t)?.type==="junction"&&(Ht(g)?p+=g==="L"?a:-a:C+=g==="T"?a:-a),!L&&N.getNode(h)?.type==="junction"&&(Ht(f)?S+=f==="L"?a:-a:B+=f==="T"?a:-a),c[0]._private.rscratch){let tt=E.insert("g");if(tt.insert("path").attr("d",`M ${p},${C} L ${R},${A} L${S},${B} `).attr("class","edge").attr("id",qe(t,h,{prefix:"L"})),i){let x=Ht(g)?ue[g](p,e):p-n,Z=qt(g)?ue[g](C,e):C-n;tt.insert("polygon").attr("points",er[g](e)).attr("transform",`translate(${x},${Z})`).attr("class","arrow")}if(l){let x=Ht(f)?ue[f](S,e):S-n,Z=qt(f)?ue[f](B,e):B-n;tt.insert("polygon").attr("points",er[f](e)).attr("transform",`translate(${x},${Z})`).attr("class","arrow")}if(y){let x=De(g,f)?"XY":Ht(g)?"X":"Y",Z=0;x==="X"?Z=Math.abs(p-S):x==="Y"?Z=Math.abs(C-B)/1.5:Z=Math.abs(p-S)/2;let s=tt.append("g");if(yield ge(s,y,{useHtmlLabels:!1,width:Z,classes:"architecture-service-label"},fe()),s.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),x==="X")s.attr("transform","translate("+R+", "+A+")");else if(x==="Y")s.attr("transform","translate("+R+", "+A+") rotate(-90)");else if(x==="XY"){let m=Oe(g,f);if(m&&Er(m)){let v=s.node().getBoundingClientRect(),[T,d]=Nr(m);s.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*T*d*45})`);let D=s.node().getBoundingClientRect();s.attr("transform",` - translate(${R}, ${A-v.height/2}) - translate(${T*D.width/2}, ${d*D.height/2}) - rotate(${-1*T*d*45}, 0, ${v.height/2}) - `)}}}}})))})},"drawEdges"),Ir=ct(function(E,w,N){return Zt(this,null,function*(){let o=N.getConfigField("padding")*.75,a=N.getConfigField("fontSize"),n=N.getConfigField("iconSize")/2;yield Promise.all(w.nodes().map(c=>Zt(null,null,function*(){let t=ie(c);if(t.type==="group"){let{h:g,w:i,x1:r,y1:h}=c.boundingBox(),f=E.append("rect");f.attr("id",`group-${t.id}`).attr("x",r+n).attr("y",h+n).attr("width",i).attr("height",g).attr("class","node-bkg");let l=E.append("g"),L=r,y=h;if(t.icon){let p=l.append("g");p.html(`${yield ce(t.icon,{height:o,width:o,fallbackPrefix:se.prefix})}`),p.attr("transform","translate("+(L+n+1)+", "+(y+n+1)+")"),L+=o,y+=a/2-1-2}if(t.label){let p=l.append("g");yield ge(p,t.label,{useHtmlLabels:!1,width:i,classes:"architecture-service-label"},fe()),p.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),p.attr("transform","translate("+(L+n+4)+", "+(y+n+2)+")")}N.setElementForId(t.id,f)}})))})},"drawGroups"),Rr=ct(function(E,w,N){return Zt(this,null,function*(){let u=fe();for(let o of N){let a=w.append("g"),e=E.getConfigField("iconSize");if(o.title){let g=a.append("g");yield ge(g,o.title,{useHtmlLabels:!1,width:e*1.5,classes:"architecture-service-label"},u),g.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),g.attr("transform","translate("+e/2+", "+e+")")}let n=a.append("g");if(o.icon)n.html(`${yield ce(o.icon,{height:e,width:e,fallbackPrefix:se.prefix})}`);else if(o.iconText){n.html(`${yield ce("blank",{height:e,width:e,fallbackPrefix:se.prefix})}`);let r=n.append("g").append("foreignObject").attr("width",e).attr("height",e).append("div").attr("class","node-icon-text").attr("style",`height: ${e}px;`).append("div").html(Ue(o.iconText,u)),h=parseInt(window.getComputedStyle(r.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;r.attr("style",`-webkit-line-clamp: ${Math.floor((e-2)/h)};`)}else n.append("path").attr("class","node-bkg").attr("id","node-"+o.id).attr("d",`M0,${e} V5 Q0,0 5,0 H${e-5} Q${e},0 ${e},5 V${e} Z`);a.attr("id",`service-${o.id}`).attr("class","architecture-service");let{width:c,height:t}=a.node().getBBox();o.width=c,o.height=t,E.setElementForId(o.id,a)}return 0})},"drawServices"),Sr=ct(function(E,w,N){N.forEach(u=>{let o=w.append("g"),a=E.getConfigField("iconSize");o.append("g").append("rect").attr("id","node-"+u.id).attr("fill-opacity","0").attr("width",a).attr("height",a),o.attr("class","architecture-junction");let{width:n,height:c}=o._groups[0][0].getBBox();o.width=n,o.height=c,E.setElementForId(u.id,o)})},"drawJunctions");Je([{name:se.prefix,icons:se}]);Ne.use(or.default);function sr(E,w,N){E.forEach(u=>{w.add({group:"nodes",data:{type:"service",id:u.id,icon:u.icon,label:u.title,parent:u.in,width:N.getConfigField("iconSize"),height:N.getConfigField("iconSize")},classes:"node-service"})})}ct(sr,"addServices");function hr(E,w,N){E.forEach(u=>{w.add({group:"nodes",data:{type:"junction",id:u.id,parent:u.in,width:N.getConfigField("iconSize"),height:N.getConfigField("iconSize")},classes:"node-junction"})})}ct(hr,"addJunctions");function lr(E,w){w.nodes().map(N=>{let u=ie(N);if(u.type==="group")return;u.x=N.position().x,u.y=N.position().y,E.getElementById(u.id).attr("transform","translate("+(u.x||0)+","+(u.y||0)+")")})}ct(lr,"positionNodes");function fr(E,w){E.forEach(N=>{w.add({group:"nodes",data:{type:"group",id:N.id,icon:N.icon,label:N.title,parent:N.in},classes:"node-group"})})}ct(fr,"addGroups");function cr(E,w){E.forEach(N=>{let{lhsId:u,rhsId:o,lhsInto:a,lhsGroup:e,rhsInto:n,lhsDir:c,rhsDir:t,rhsGroup:g,title:i}=N,r=De(N.lhsDir,N.rhsDir)?"segments":"straight",h={id:`${u}-${o}`,label:i,source:u,sourceDir:c,sourceArrow:a,sourceGroup:e,sourceEndpoint:c==="L"?"0 50%":c==="R"?"100% 50%":c==="T"?"50% 0":"50% 100%",target:o,targetDir:t,targetArrow:n,targetGroup:g,targetEndpoint:t==="L"?"0 50%":t==="R"?"100% 50%":t==="T"?"50% 0":"50% 100%"};w.add({group:"edges",data:h,classes:r})})}ct(cr,"addEdges");function gr(E,w,N){let u=ct((n,c)=>Object.entries(n).reduce((t,[g,i])=>{let r=0,h=Object.entries(i);if(h.length===1)return t[g]=h[0][1],t;for(let f=0;f{let c={},t={};return Object.entries(n).forEach(([g,[i,r]])=>{let h=E.getNode(g)?.in??"default";c[r]??={},c[r][h]??=[],c[r][h].push(g),t[i]??={},t[i][h]??=[],t[i][h].push(g)}),{horiz:Object.values(u(c,"horizontal")).filter(g=>g.length>1),vert:Object.values(u(t,"vertical")).filter(g=>g.length>1)}}),[a,e]=o.reduce(([n,c],{horiz:t,vert:g})=>[[...n,...t],[...c,...g]],[[],[]]);return{horizontal:a,vertical:e}}ct(gr,"getAlignments");function ur(E,w){let N=[],u=ct(a=>`${a[0]},${a[1]}`,"posToStr"),o=ct(a=>a.split(",").map(e=>parseInt(e)),"strToPos");return E.forEach(a=>{let e=Object.fromEntries(Object.entries(a).map(([g,i])=>[u(i),g])),n=[u([0,0])],c={},t={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};for(;n.length>0;){let g=n.shift();if(g){c[g]=1;let i=e[g];if(i){let r=o(g);Object.entries(t).forEach(([h,f])=>{let l=u([r[0]+f[0],r[1]+f[1]]),L=e[l];L&&!c[l]&&(n.push(l),N.push({[tr[h]]:L,[tr[yr(h)]]:i,gap:1.5*w.getConfigField("iconSize")}))})}}}}),N}ct(ur,"getRelativeConstraints");function dr(E,w,N,u,o,{spatialMaps:a,groupAlignments:e}){return new Promise(n=>{let c=be("body").append("div").attr("id","cy").attr("style","display:none"),t=Ne({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight",label:"data(label)","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${o.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${o.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});c.remove(),fr(N,t),sr(E,t,o),hr(w,t,o),cr(u,t);let g=gr(o,a,e),i=ur(a,o),r=t.layout({name:"fcose",quality:"proof",styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(h){let[f,l]=h.connectedNodes(),{parent:L}=ie(f),{parent:y}=ie(l);return L===y?1.5*o.getConfigField("iconSize"):.5*o.getConfigField("iconSize")},edgeElasticity(h){let[f,l]=h.connectedNodes(),{parent:L}=ie(f),{parent:y}=ie(l);return L===y?.45:.001},alignmentConstraint:g,relativePlacementConstraint:i});r.one("layoutstop",()=>{function h(f,l,L,y){let p,C,{x:R,y:A}=f,{x:S,y:B}=l;C=(y-A+(R-L)*(A-B)/(R-S))/Math.sqrt(1+Math.pow((A-B)/(R-S),2)),p=Math.sqrt(Math.pow(y-A,2)+Math.pow(L-R,2)-Math.pow(C,2));let Y=Math.sqrt(Math.pow(S-R,2)+Math.pow(B-A,2));p=p/Y;let tt=(S-R)*(y-A)-(B-A)*(L-R);switch(!0){case tt>=0:tt=1;break;case tt<0:tt=-1;break}let x=(S-R)*(L-R)+(B-A)*(y-A);switch(!0){case x>=0:x=1;break;case x<0:x=-1;break}return C=Math.abs(C)*tt,p=p*x,{distances:C,weights:p}}ct(h,"getSegmentWeights"),t.startBatch();for(let f of Object.values(t.edges()))if(f.data?.()){let{x:l,y:L}=f.source().position(),{x:y,y:p}=f.target().position();if(l!==y&&L!==p){let C=f.sourceEndpoint(),R=f.targetEndpoint(),{sourceDir:A}=ir(f),[S,B]=qt(A)?[C.x,R.y]:[R.x,C.y],{weights:Y,distances:tt}=h(C,R,S,B);f.style("segment-distances",tt),f.style("segment-weights",Y)}}t.endBatch(),r.run()}),r.run(),t.ready(h=>{Te.info("Ready",h),n(t)})})}ct(dr,"layoutArchitecture");var Fr=ct((E,w,N,u)=>Zt(null,null,function*(){let o=u.db,a=o.getServices(),e=o.getJunctions(),n=o.getGroups(),c=o.getEdges(),t=o.getDataStructures(),g=ke(w),i=g.append("g");i.attr("class","architecture-edges");let r=g.append("g");r.attr("class","architecture-services");let h=g.append("g");h.attr("class","architecture-groups"),yield Rr(o,r,a),Sr(o,r,e);let f=yield dr(a,e,n,c,o,t);yield xr(i,f,o),yield Ir(h,f,o),lr(o,f),Ye(void 0,g,o.getConfigField("padding"),o.getConfigField("useMaxWidth"))}),"draw"),br={draw:Fr},Br={parser:ar,get db(){return new nr},renderer:br,styles:Dr};export{Br as diagram}; diff --git a/src/google/adk/cli/browser/chunk-46YSBSFN.js b/src/google/adk/cli/browser/chunk-46YSBSFN.js deleted file mode 100644 index 38b07a71e3..0000000000 --- a/src/google/adk/cli/browser/chunk-46YSBSFN.js +++ /dev/null @@ -1 +0,0 @@ -import{a as i,b as e,c as o,d as a}from"./chunk-TIJO3EOA.js";import"./chunk-B2DSW4QB.js";import"./chunk-NMKTPNXE.js";import"./chunk-APNCZOFE.js";import"./chunk-ST54LLJ3.js";import"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import"./chunk-QFMJV7VH.js";import{g as t}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";var y={parser:i,get db(){return new e},renderer:a,styles:o,init:t(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{y as diagram}; diff --git a/src/google/adk/cli/browser/chunk-47TAWZZ5.js b/src/google/adk/cli/browser/chunk-47TAWZZ5.js new file mode 100644 index 0000000000..3dc4eb94f2 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-47TAWZZ5.js @@ -0,0 +1,43 @@ +import{a as D}from"./chunk-DMWOYWYQ.js";import{a as z}from"./chunk-SRCUB3EX.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{a as _}from"./chunk-PDRDFWTH.js";import{C as y}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as w,N as T,R as S,S as O,T as k,U as R,V as I,W as E,X as F,p as A,r as L}from"./chunk-37QI3DOO.js";import{g as o,i as M}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as C,j as b}from"./chunk-RMXJBC7V.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},G={axes:[],curves:[],options:x},g=structuredClone(G),U=L.radar,X=o(()=>y(C(C({},U),w().radar)),"getConfig"),P=o(()=>g.axes,"getAxes"),Y=o(()=>g.curves,"getCurves"),Z=o(()=>g.options,"getOptions"),q=o(a=>{g.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),J=o(a=>{g.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:K(t.entries)}))},"setCurves"),K=o(a=>{if(a[0].axis==null)return a.map(e=>e.value);let t=P();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{let r=a.find(n=>n.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),Q=o(a=>{let t=a.reduce((e,r)=>(e[r.name]=r,e),{});g.options={showLegend:t.showLegend?.value??x.showLegend,ticks:t.ticks?.value??x.ticks,max:t.max?.value??x.max,min:t.min?.value??x.min,graticule:t.graticule?.value??x.graticule}},"setOptions"),tt=o(()=>{S(),g=structuredClone(G)},"clear"),$={getAxes:P,getCurves:Y,getOptions:Z,setAxes:q,setCurves:J,setOptions:Q,getConfig:X,clear:tt,setAccTitle:O,getAccTitle:k,setDiagramTitle:E,getDiagramTitle:F,getAccDescription:I,setAccDescription:R},et=o(a=>{D(a,$);let{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),at={parse:o(a=>b(null,null,function*(){let t=yield z("radar",a);M.debug(t),et(t)}),"parse")},rt=o((a,t,e,r)=>{let n=r.db,i=n.getAxes(),l=n.getCurves(),s=n.getOptions(),c=n.getConfig(),d=n.getDiagramTitle(),p=_(t),u=nt(p,c),m=s.max??Math.max(...l.map(f=>Math.max(...f.entries))),h=s.min,v=Math.min(c.width,c.height)/2;st(u,i,v,s.ticks,s.graticule),ot(u,i,v,c),W(u,i,l,h,m,s.graticule,c),H(u,l,s.showLegend,c),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),nt=o((a,t)=>{let e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,n={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return T(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`),a.append("g").attr("transform",`translate(${n.x}, ${n.y})`)},"drawFrame"),st=o((a,t,e,r,n)=>{if(n==="circle")for(let i=0;i{let u=2*p*Math.PI/i-Math.PI/2,m=s*Math.cos(u),h=s*Math.sin(u);return`${m},${h}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),ot=o((a,t,e,r)=>{let n=t.length;for(let i=0;i{if(d.entries.length!==s)return;let u=d.entries.map((m,h)=>{let v=2*Math.PI*h/s-Math.PI/2,f=B(m,r,n,c),j=f*Math.cos(v),N=f*Math.sin(v);return{x:j,y:N}});i==="circle"?a.append("path").attr("d",V(u,l.curveTension)).attr("class",`radarCurve-${p}`):i==="polygon"&&a.append("polygon").attr("points",u.map(m=>`${m.x},${m.y}`).join(" ")).attr("class",`radarCurve-${p}`)})}o(W,"drawCurves");function B(a,t,e,r){let n=Math.min(Math.max(a,t),e);return r*(n-t)/(e-t)}o(B,"relativeRadius");function V(a,t){let e=a.length,r=`M${a[0].x},${a[0].y}`;for(let n=0;n{let d=a.append("g").attr("transform",`translate(${n}, ${i+c*l})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(s.label)})}o(H,"drawLegend");var it={draw:rt},lt=o((a,t)=>{let e="";for(let r=0;r{let t=A(),e=w(),r=y(t,e.themeVariables),n=y(r.radar,a);return{themeVariables:r,radarOptions:n}},"buildRadarStyleOptions"),dt=o(({radar:a}={})=>{let{themeVariables:t,radarOptions:e}=ct(a);return` + .radarTitle { + font-size: ${t.fontSize}; + color: ${t.titleColor}; + dominant-baseline: hanging; + text-anchor: middle; + } + .radarAxisLine { + stroke: ${e.axisColor}; + stroke-width: ${e.axisStrokeWidth}; + } + .radarAxisLabel { + dominant-baseline: middle; + text-anchor: middle; + font-size: ${e.axisLabelFontSize}px; + color: ${e.axisColor}; + } + .radarGraticule { + fill: ${e.graticuleColor}; + fill-opacity: ${e.graticuleOpacity}; + stroke: ${e.graticuleColor}; + stroke-width: ${e.graticuleStrokeWidth}; + } + .radarLegendText { + text-anchor: start; + font-size: ${e.legendFontSize}px; + dominant-baseline: hanging; + } + ${lt(t,e)} + `},"styles"),vt={parser:at,db:$,renderer:it,styles:dt};export{vt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-WXI2IBAH.js b/src/google/adk/cli/browser/chunk-4V3PIBXT.js similarity index 75% rename from src/google/adk/cli/browser/chunk-WXI2IBAH.js rename to src/google/adk/cli/browser/chunk-4V3PIBXT.js index 5a61e20bc3..dcc5fce7ff 100644 --- a/src/google/adk/cli/browser/chunk-WXI2IBAH.js +++ b/src/google/adk/cli/browser/chunk-4V3PIBXT.js @@ -1,9 +1,9 @@ -import{o as ze}from"./chunk-WBLSVR3V.js";import{A as ee,G as W,J as te,L as Ie,M as Re}from"./chunk-QFMJV7VH.js";import{a as P,g as b,i as E}from"./chunk-JRNAXTJ7.js";import{a as x,b as z,j as T}from"./chunk-RMXJBC7V.js";var dt=Object.freeze({left:0,top:0,width:16,height:16}),_=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),ne=Object.freeze(x(x({},dt),_)),ve=Object.freeze(z(x({},ne),{body:"",hidden:!1}));var mt=Object.freeze({width:null,height:null}),Ae=Object.freeze(x(x({},mt),_));var re=(n,e,r,s="")=>{let t=n.split(":");if(n.slice(0,1)==="@"){if(t.length<2||t.length>3)return null;s=t.shift().slice(1)}if(t.length>3||!t.length)return null;if(t.length>1){let l=t.pop(),a=t.pop(),p={provider:t.length>0?t[0]:s,prefix:a,name:l};return e&&!G(p)?null:p}let o=t[0],i=o.split("-");if(i.length>1){let l={provider:s,prefix:i.shift(),name:i.join("-")};return e&&!G(l)?null:l}if(r&&s===""){let l={provider:s,prefix:"",name:o};return e&&!G(l,r)?null:l}return null},G=(n,e)=>n?!!((e&&n.prefix===""||n.prefix)&&n.name):!1;function Ee(n,e){let r={};!n.hFlip!=!e.hFlip&&(r.hFlip=!0),!n.vFlip!=!e.vFlip&&(r.vFlip=!0);let s=((n.rotate||0)+(e.rotate||0))%4;return s&&(r.rotate=s),r}function se(n,e){let r=Ee(n,e);for(let s in ve)s in _?s in n&&!(s in r)&&(r[s]=_[s]):s in e?r[s]=e[s]:s in n&&(r[s]=n[s]);return r}function Le(n,e){let r=n.icons,s=n.aliases||Object.create(null),t=Object.create(null);function o(i){if(r[i])return t[i]=[];if(!(i in t)){t[i]=null;let l=s[i]&&s[i].parent,a=l&&o(l);a&&(t[i]=[l].concat(a))}return t[i]}return(e||Object.keys(r).concat(Object.keys(s))).forEach(o),t}function Ce(n,e,r){let s=n.icons,t=n.aliases||Object.create(null),o={};function i(l){o=se(s[l]||t[l],o)}return i(e),r.forEach(i),se(n,o)}function ie(n,e){if(n.icons[e])return Ce(n,e,[]);let r=Le(n,[e])[e];return r?Ce(n,e,r):null}var kt=/(-?[0-9.]*[0-9]+[0-9.]*)/g,xt=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function oe(n,e,r){if(e===1)return n;if(r=r||100,typeof n=="number")return Math.ceil(n*e*r)/r;if(typeof n!="string")return n;let s=n.split(kt);if(s===null||!s.length)return n;let t=[],o=s.shift(),i=xt.test(o);for(;;){if(i){let l=parseFloat(o);isNaN(l)?t.push(o):t.push(Math.ceil(l*e*r)/r)}else t.push(o);if(o=s.shift(),o===void 0)return t.join("");i=!i}}function bt(n,e="defs"){let r="",s=n.indexOf("<"+e);for(;s>=0;){let t=n.indexOf(">",s),o=n.indexOf("",o);if(i===-1)break;r+=n.slice(t+1,o).trim(),n=n.slice(0,s).trim()+n.slice(i+1)}return{defs:r,content:n}}function wt(n,e){return n?""+n+""+e:e}function Pe(n,e,r){let s=bt(n);return wt(s.defs,e+s.content+r)}var yt=n=>n==="unset"||n==="undefined"||n==="none";function le(n,e){let r=x(x({},ne),n),s=x(x({},Ae),e),t={left:r.left,top:r.top,width:r.width,height:r.height},o=r.body;[r,s].forEach(k=>{let w=[],A=k.hFlip,j=k.vFlip,$=k.rotate;A?j?$+=2:(w.push("translate("+(t.width+t.left).toString()+" "+(0-t.top).toString()+")"),w.push("scale(-1 1)"),t.top=t.left=0):j&&(w.push("translate("+(0-t.left).toString()+" "+(t.height+t.top).toString()+")"),w.push("scale(1 -1)"),t.top=t.left=0);let S;switch($<0&&($-=Math.floor($/4)*4),$=$%4,$){case 1:S=t.height/2+t.top,w.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:w.unshift("rotate(180 "+(t.width/2+t.left).toString()+" "+(t.height/2+t.top).toString()+")");break;case 3:S=t.width/2+t.left,w.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}$%2===1&&(t.left!==t.top&&(S=t.left,t.left=t.top,t.top=S),t.width!==t.height&&(S=t.width,t.width=t.height,t.height=S)),w.length&&(o=Pe(o,'',""))});let i=s.width,l=s.height,a=t.width,p=t.height,c,h;i===null?(h=l===null?"1em":l==="auto"?p:l,c=oe(h,a/p)):(c=i==="auto"?a:i,h=l===null?oe(c,p/a):l==="auto"?p:l);let u={},g=(k,w)=>{yt(w)||(u[k]=w.toString())};g("width",c),g("height",h);let f=[t.left,t.top,a,p];return u.viewBox=f.join(" "),{attributes:u,viewBox:f,body:o}}var St=/\sid="(\S+)"/g,_e=new Map;function Tt(n){n=n.replace(/[0-9]+$/,"")||"a";let e=_e.get(n)||0;return _e.set(n,e+1),e?`${n}${e}`:n}function ae(n){let e=[],r;for(;r=St.exec(n);)e.push(r[1]);if(!e.length)return n;let s="suffix"+(Math.random()*16777216|Date.now()).toString(16);return e.forEach(t=>{let o=Tt(t),i=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n=n.replace(new RegExp('([#;"])('+i+')([")]|\\.[a-z])',"g"),"$1"+o+s+"$3")}),n=n.replace(new RegExp(s,"g"),""),n}function ce(n,e){let r=n.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let s in e)r+=" "+s+'="'+e[s]+'"';return'"+n+""}function fe(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var C=fe();function Oe(n){C=n}var F={exec:()=>null};function d(n,e=""){let r=typeof n=="string"?n:n.source,s={replace:(t,o)=>{let i=typeof o=="string"?o:o.source;return i=i.replace(y.caret,"$1"),r=r.replace(t,i),s},getRegex:()=>new RegExp(r,e)};return s}var $t=(()=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i")},It=/^(?:[ \t]*(?:\n|$))+/,Rt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,zt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,O=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,vt=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,ge=/(?:[*+-]|\d{1,9}[.)])/,We=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Ge=d(We).replace(/bull/g,ge).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),At=d(We).replace(/bull/g,ge).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),de=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Et=/^[^\n]+/,me=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Lt=d(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",me).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Ct=d(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,ge).getRegex(),U="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ke=/|$))/,Pt=d("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",ke).replace("tag",U).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),He=d(de).replace("hr",O).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",U).getRegex(),_t=d(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",He).getRegex(),xe={blockquote:_t,code:Rt,def:Lt,fences:zt,heading:vt,hr:O,html:Pt,lheading:Ge,list:Ct,newline:It,paragraph:He,table:F,text:Et},je=d("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",O).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",U).getRegex(),jt=z(x({},xe),{lheading:At,table:je,paragraph:d(de).replace("hr",O).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",je).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",U).getRegex()}),Bt=z(x({},xe),{html:d(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",ke).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:F,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:d(de).replace("hr",O).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",Ge).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),Dt=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Mt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Ze=/^( {2,}|\\)\n(?!\s*$)/,qt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",$t?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Ue=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Ht=d(Ue,"u").replace(/punct/g,Q).getRegex(),Zt=d(Ue,"u").replace(/punct/g,Ve).getRegex(),Qe="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Nt=d(Qe,"gu").replace(/notPunctSpace/g,Ne).replace(/punctSpace/g,be).replace(/punct/g,Q).getRegex(),Vt=d(Qe,"gu").replace(/notPunctSpace/g,Wt).replace(/punctSpace/g,Ot).replace(/punct/g,Ve).getRegex(),Ut=d("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Ne).replace(/punctSpace/g,be).replace(/punct/g,Q).getRegex(),Qt=d(/\\(punct)/,"gu").replace(/punct/g,Q).getRegex(),Kt=d(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Xt=d(ke).replace("(?:-->|$)","-->").getRegex(),Yt=d("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Xt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Z=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,Jt=d(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Z).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Ke=d(/^!?\[(label)\]\[(ref)\]/).replace("label",Z).replace("ref",me).getRegex(),Xe=d(/^!?\[(ref)\](?:\[\])?/).replace("ref",me).getRegex(),en=d("reflink|nolink(?!\\()","g").replace("reflink",Ke).replace("nolink",Xe).getRegex(),Be=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,we={_backpedal:F,anyPunctuation:Qt,autolink:Kt,blockSkip:Gt,br:Ze,code:Mt,del:F,emStrongLDelim:Ht,emStrongRDelimAst:Nt,emStrongRDelimUnd:Ut,escape:Dt,link:Jt,nolink:Xe,punctuation:Ft,reflink:Ke,reflinkSearch:en,tag:Yt,text:qt,url:F},tn=z(x({},we),{link:d(/^!?\[(label)\]\((.*?)\)/).replace("label",Z).getRegex(),reflink:d(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Z).getRegex()}),pe=z(x({},we),{emStrongRDelimAst:Vt,emStrongLDelim:Zt,url:d(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Be).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:d(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},De=n=>rn[n];function v(n,e){if(e){if(y.escapeTest.test(n))return n.replace(y.escapeReplace,De)}else if(y.escapeTestNoEncode.test(n))return n.replace(y.escapeReplaceNoEncode,De);return n}function Me(n){try{n=encodeURI(n).replace(y.percentDecode,"%")}catch(e){return null}return n}function qe(n,e){let r=n.replace(y.findPipe,(o,i,l)=>{let a=!1,p=i;for(;--p>=0&&l[p]==="\\";)a=!a;return a?"|":" |"}),s=r.split(y.splitPipe),t=0;if(s[0].trim()||s.shift(),s.length>0&&!s.at(-1)?.trim()&&s.pop(),e)if(s.length>e)s.splice(e);else for(;s.length0?-2:-1}function Fe(n,e,r,s,t){let o=e.href,i=e.title||null,l=n[1].replace(t.other.outputLinkReplace,"$1");s.state.inLink=!0;let a={type:n[0].charAt(0)==="!"?"image":"link",raw:r,href:o,title:i,text:l,tokens:s.inlineTokens(l)};return s.state.inLink=!1,a}function on(n,e,r){let s=n.match(r.other.indentCodeCompensation);if(s===null)return e;let t=s[1];return e.split(` +import{F as ne}from"./chunk-UKZIEWH5.js";import{A as ee,G as W,J as te,L as ze,M as ve}from"./chunk-37QI3DOO.js";import{a as P,g as b,i as E}from"./chunk-JRNAXTJ7.js";import{a as x,b as z,j as T}from"./chunk-RMXJBC7V.js";var mt=Object.freeze({left:0,top:0,width:16,height:16}),_=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),re=Object.freeze(x(x({},mt),_)),Ae=Object.freeze(z(x({},re),{body:"",hidden:!1}));var kt=Object.freeze({width:null,height:null}),Ee=Object.freeze(x(x({},kt),_));var se=(n,e,r,s="")=>{let t=n.split(":");if(n.slice(0,1)==="@"){if(t.length<2||t.length>3)return null;s=t.shift().slice(1)}if(t.length>3||!t.length)return null;if(t.length>1){let l=t.pop(),a=t.pop(),p={provider:t.length>0?t[0]:s,prefix:a,name:l};return e&&!G(p)?null:p}let o=t[0],i=o.split("-");if(i.length>1){let l={provider:s,prefix:i.shift(),name:i.join("-")};return e&&!G(l)?null:l}if(r&&s===""){let l={provider:s,prefix:"",name:o};return e&&!G(l,r)?null:l}return null},G=(n,e)=>n?!!((e&&n.prefix===""||n.prefix)&&n.name):!1;function Le(n,e){let r={};!n.hFlip!=!e.hFlip&&(r.hFlip=!0),!n.vFlip!=!e.vFlip&&(r.vFlip=!0);let s=((n.rotate||0)+(e.rotate||0))%4;return s&&(r.rotate=s),r}function ie(n,e){let r=Le(n,e);for(let s in Ae)s in _?s in n&&!(s in r)&&(r[s]=_[s]):s in e?r[s]=e[s]:s in n&&(r[s]=n[s]);return r}function Ce(n,e){let r=n.icons,s=n.aliases||Object.create(null),t=Object.create(null);function o(i){if(r[i])return t[i]=[];if(!(i in t)){t[i]=null;let l=s[i]&&s[i].parent,a=l&&o(l);a&&(t[i]=[l].concat(a))}return t[i]}return(e||Object.keys(r).concat(Object.keys(s))).forEach(o),t}function Pe(n,e,r){let s=n.icons,t=n.aliases||Object.create(null),o={};function i(l){o=ie(s[l]||t[l],o)}return i(e),r.forEach(i),ie(n,o)}function oe(n,e){if(n.icons[e])return Pe(n,e,[]);let r=Ce(n,[e])[e];return r?Pe(n,e,r):null}var xt=/(-?[0-9.]*[0-9]+[0-9.]*)/g,bt=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function le(n,e,r){if(e===1)return n;if(r=r||100,typeof n=="number")return Math.ceil(n*e*r)/r;if(typeof n!="string")return n;let s=n.split(xt);if(s===null||!s.length)return n;let t=[],o=s.shift(),i=bt.test(o);for(;;){if(i){let l=parseFloat(o);isNaN(l)?t.push(o):t.push(Math.ceil(l*e*r)/r)}else t.push(o);if(o=s.shift(),o===void 0)return t.join("");i=!i}}function wt(n,e="defs"){let r="",s=n.indexOf("<"+e);for(;s>=0;){let t=n.indexOf(">",s),o=n.indexOf("",o);if(i===-1)break;r+=n.slice(t+1,o).trim(),n=n.slice(0,s).trim()+n.slice(i+1)}return{defs:r,content:n}}function yt(n,e){return n?""+n+""+e:e}function _e(n,e,r){let s=wt(n);return yt(s.defs,e+s.content+r)}var St=n=>n==="unset"||n==="undefined"||n==="none";function ae(n,e){let r=x(x({},re),n),s=x(x({},Ee),e),t={left:r.left,top:r.top,width:r.width,height:r.height},o=r.body;[r,s].forEach(k=>{let w=[],A=k.hFlip,j=k.vFlip,$=k.rotate;A?j?$+=2:(w.push("translate("+(t.width+t.left).toString()+" "+(0-t.top).toString()+")"),w.push("scale(-1 1)"),t.top=t.left=0):j&&(w.push("translate("+(0-t.left).toString()+" "+(t.height+t.top).toString()+")"),w.push("scale(1 -1)"),t.top=t.left=0);let S;switch($<0&&($-=Math.floor($/4)*4),$=$%4,$){case 1:S=t.height/2+t.top,w.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:w.unshift("rotate(180 "+(t.width/2+t.left).toString()+" "+(t.height/2+t.top).toString()+")");break;case 3:S=t.width/2+t.left,w.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}$%2===1&&(t.left!==t.top&&(S=t.left,t.left=t.top,t.top=S),t.width!==t.height&&(S=t.width,t.width=t.height,t.height=S)),w.length&&(o=_e(o,'',""))});let i=s.width,l=s.height,a=t.width,p=t.height,c,h;i===null?(h=l===null?"1em":l==="auto"?p:l,c=le(h,a/p)):(c=i==="auto"?a:i,h=l===null?le(c,p/a):l==="auto"?p:l);let u={},g=(k,w)=>{St(w)||(u[k]=w.toString())};g("width",c),g("height",h);let f=[t.left,t.top,a,p];return u.viewBox=f.join(" "),{attributes:u,viewBox:f,body:o}}var Tt=/\sid="(\S+)"/g,je=new Map;function $t(n){n=n.replace(/[0-9]+$/,"")||"a";let e=je.get(n)||0;return je.set(n,e+1),e?`${n}${e}`:n}function ce(n){let e=[],r;for(;r=Tt.exec(n);)e.push(r[1]);if(!e.length)return n;let s="suffix"+(Math.random()*16777216|Date.now()).toString(16);return e.forEach(t=>{let o=$t(t),i=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n=n.replace(new RegExp('([#;"])('+i+')([")]|\\.[a-z])',"g"),"$1"+o+s+"$3")}),n=n.replace(new RegExp(s,"g"),""),n}function pe(n,e){let r=n.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let s in e)r+=" "+s+'="'+e[s]+'"';return'"+n+""}function ge(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var C=ge();function We(n){C=n}var F={exec:()=>null};function d(n,e=""){let r=typeof n=="string"?n:n.source,s={replace:(t,o)=>{let i=typeof o=="string"?o:o.source;return i=i.replace(y.caret,"$1"),r=r.replace(t,i),s},getRegex:()=>new RegExp(r,e)};return s}var It=(()=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i")},Rt=/^(?:[ \t]*(?:\n|$))+/,zt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,vt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,O=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,At=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,de=/(?:[*+-]|\d{1,9}[.)])/,Ge=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,He=d(Ge).replace(/bull/g,de).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Et=d(Ge).replace(/bull/g,de).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),me=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Lt=/^[^\n]+/,ke=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Ct=d(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",ke).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Pt=d(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,de).getRegex(),U="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",xe=/|$))/,_t=d("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",xe).replace("tag",U).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Ze=d(me).replace("hr",O).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",U).getRegex(),jt=d(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Ze).getRegex(),be={blockquote:jt,code:zt,def:Ct,fences:vt,heading:At,hr:O,html:_t,lheading:He,list:Pt,newline:Rt,paragraph:Ze,table:F,text:Lt},Me=d("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",O).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",U).getRegex(),Mt=z(x({},be),{lheading:Et,table:Me,paragraph:d(me).replace("hr",O).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Me).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",U).getRegex()}),Bt=z(x({},be),{html:d(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",xe).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:F,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:d(me).replace("hr",O).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",He).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),Dt=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,qt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Ne=/^( {2,}|\\)\n(?!\s*$)/,Ft=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",It?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Qe=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Zt=d(Qe,"u").replace(/punct/g,Q).getRegex(),Nt=d(Qe,"u").replace(/punct/g,Ue).getRegex(),Ke="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Vt=d(Ke,"gu").replace(/notPunctSpace/g,Ve).replace(/punctSpace/g,we).replace(/punct/g,Q).getRegex(),Ut=d(Ke,"gu").replace(/notPunctSpace/g,Gt).replace(/punctSpace/g,Wt).replace(/punct/g,Ue).getRegex(),Qt=d("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Ve).replace(/punctSpace/g,we).replace(/punct/g,Q).getRegex(),Kt=d(/\\(punct)/,"gu").replace(/punct/g,Q).getRegex(),Xt=d(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Yt=d(xe).replace("(?:-->|$)","-->").getRegex(),Jt=d("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",Yt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Z=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,en=d(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",Z).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Xe=d(/^!?\[(label)\]\[(ref)\]/).replace("label",Z).replace("ref",ke).getRegex(),Ye=d(/^!?\[(ref)\](?:\[\])?/).replace("ref",ke).getRegex(),tn=d("reflink|nolink(?!\\()","g").replace("reflink",Xe).replace("nolink",Ye).getRegex(),Be=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,ye={_backpedal:F,anyPunctuation:Kt,autolink:Xt,blockSkip:Ht,br:Ne,code:qt,del:F,emStrongLDelim:Zt,emStrongRDelimAst:Vt,emStrongRDelimUnd:Qt,escape:Dt,link:en,nolink:Ye,punctuation:Ot,reflink:Xe,reflinkSearch:tn,tag:Jt,text:Ft,url:F},nn=z(x({},ye),{link:d(/^!?\[(label)\]\((.*?)\)/).replace("label",Z).getRegex(),reflink:d(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Z).getRegex()}),he=z(x({},ye),{emStrongRDelimAst:Ut,emStrongLDelim:Nt,url:d(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Be).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:d(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},De=n=>sn[n];function v(n,e){if(e){if(y.escapeTest.test(n))return n.replace(y.escapeReplace,De)}else if(y.escapeTestNoEncode.test(n))return n.replace(y.escapeReplaceNoEncode,De);return n}function qe(n){try{n=encodeURI(n).replace(y.percentDecode,"%")}catch(e){return null}return n}function Fe(n,e){let r=n.replace(y.findPipe,(o,i,l)=>{let a=!1,p=i;for(;--p>=0&&l[p]==="\\";)a=!a;return a?"|":" |"}),s=r.split(y.splitPipe),t=0;if(s[0].trim()||s.shift(),s.length>0&&!s.at(-1)?.trim()&&s.pop(),e)if(s.length>e)s.splice(e);else for(;s.length0?-2:-1}function Oe(n,e,r,s,t){let o=e.href,i=e.title||null,l=n[1].replace(t.other.outputLinkReplace,"$1");s.state.inLink=!0;let a={type:n[0].charAt(0)==="!"?"image":"link",raw:r,href:o,title:i,text:l,tokens:s.inlineTokens(l)};return s.state.inLink=!1,a}function ln(n,e,r){let s=n.match(r.other.indentCodeCompensation);if(s===null)return e;let t=s[1];return e.split(` `).map(o=>{let i=o.match(r.other.beginningSpace);if(i===null)return o;let[l]=i;return l.length>=t.length?o.slice(t.length):o}).join(` -`)}var N=class{options;rules;lexer;constructor(n){this.options=n||C}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let r=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?r:M(r,` -`)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let r=e[0],s=on(r,e[3]||"",this.rules);return{type:"code",raw:r,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:s}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let r=e[2].trim();if(this.rules.other.endingHash.test(r)){let s=M(r,"#");(this.options.pedantic||!s||this.rules.other.endingSpaceChar.test(s))&&(r=s.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:M(e[0],` -`)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let r=M(e[0],` +`)}var N=class{options;rules;lexer;constructor(n){this.options=n||C}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let r=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?r:D(r,` +`)}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let r=e[0],s=ln(r,e[3]||"",this.rules);return{type:"code",raw:r,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:s}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let r=e[2].trim();if(this.rules.other.endingHash.test(r)){let s=D(r,"#");(this.options.pedantic||!s||this.rules.other.endingSpaceChar.test(s))&&(r=s.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:D(e[0],` +`)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let r=D(e[0],` `).split(` `),s="",t="",o=[];for(;r.length>0;){let i=!1,l=[],a;for(a=0;a1,t={type:"list",raw:"",ordered:s,start:s?+r.slice(0,-1):"",loose:!1,items:[]};r=s?`\\d{1,9}\\${r.slice(-1)}`:`\\${r}`,this.options.pedantic&&(r=s?r:"[*+-]");let o=this.rules.other.listItemRegex(r),i=!1;for(;n;){let a=!1,p="",c="";if(!(e=o.exec(n))||this.rules.block.hr.test(n))break;p=e[0],n=n.substring(p.length);let h=e[2].split(` `,1)[0].replace(this.rules.other.listReplaceTabs,A=>" ".repeat(3*A.length)),u=n.split(` `,1)[0],g=!h.trim(),f=0;if(this.options.pedantic?(f=2,c=h.trimStart()):g?f=e[1].length+1:(f=e[2].search(this.rules.other.nonSpaceChar),f=f>4?1:f,c=h.slice(f),f+=e[1].length),g&&this.rules.other.blankLine.test(u)&&(p+=u+` -`,n=n.substring(u.length+1),a=!0),!a){let A=this.rules.other.nextBulletRegex(f),j=this.rules.other.hrRegex(f),$=this.rules.other.fencesBeginRegex(f),S=this.rules.other.headingBeginRegex(f),gt=this.rules.other.htmlBeginRegex(f);for(;n;){let J=n.split(` -`,1)[0],B;if(u=J,this.options.pedantic?(u=u.replace(this.rules.other.listReplaceNesting," "),B=u):B=u.replace(this.rules.other.tabCharGlobal," "),$.test(u)||S.test(u)||gt.test(u)||A.test(u)||j.test(u))break;if(B.search(this.rules.other.nonSpaceChar)>=f||!u.trim())c+=` -`+B.slice(f);else{if(g||h.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||$.test(h)||S.test(h)||j.test(h))break;c+=` +`,n=n.substring(u.length+1),a=!0),!a){let A=this.rules.other.nextBulletRegex(f),j=this.rules.other.hrRegex(f),$=this.rules.other.fencesBeginRegex(f),S=this.rules.other.headingBeginRegex(f),dt=this.rules.other.htmlBeginRegex(f);for(;n;){let J=n.split(` +`,1)[0],M;if(u=J,this.options.pedantic?(u=u.replace(this.rules.other.listReplaceNesting," "),M=u):M=u.replace(this.rules.other.tabCharGlobal," "),$.test(u)||S.test(u)||dt.test(u)||A.test(u)||j.test(u))break;if(M.search(this.rules.other.nonSpaceChar)>=f||!u.trim())c+=` +`+M.slice(f);else{if(g||h.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||$.test(h)||S.test(h)||j.test(h))break;c+=` `+u}!g&&!u.trim()&&(g=!0),p+=J+` -`,n=n.substring(J.length+1),h=B.slice(f)}}t.loose||(i?t.loose=!0:this.rules.other.doubleBlankLine.test(p)&&(i=!0));let k=null,w;this.options.gfm&&(k=this.rules.other.listIsTask.exec(c),k&&(w=k[0]!=="[ ] ",c=c.replace(this.rules.other.listReplaceTask,""))),t.items.push({type:"list_item",raw:p,task:!!k,checked:w,loose:!1,text:c,tokens:[]}),t.raw+=p}let l=t.items.at(-1);if(l)l.raw=l.raw.trimEnd(),l.text=l.text.trimEnd();else return;t.raw=t.raw.trimEnd();for(let a=0;ah.type==="space"),c=p.length>0&&p.some(h=>this.rules.other.anyLine.test(h.raw));t.loose=c}if(t.loose)for(let a=0;a({text:l,tokens:this.lexer.inline(l),header:!1,align:o.align[a]})));return o}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let r=e[1].charAt(e[1].length-1)===` -`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:r,tokens:this.lexer.inline(r)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let r=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(r)){if(!this.rules.other.endAngleBracket.test(r))return;let o=M(r.slice(0,-1),"\\");if((r.length-o.length)%2===0)return}else{let o=sn(e[2],"()");if(o===-2)return;if(o>-1){let i=(e[0].indexOf("!")===0?5:4)+e[1].length+o;e[2]=e[2].substring(0,o),e[0]=e[0].substring(0,i).trim(),e[3]=""}}let s=e[2],t="";if(this.options.pedantic){let o=this.rules.other.pedanticHrefTitle.exec(s);o&&(s=o[1],t=o[3])}else t=e[3]?e[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(r)?s=s.slice(1):s=s.slice(1,-1)),Fe(e,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:t&&t.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let r;if((r=this.rules.inline.reflink.exec(n))||(r=this.rules.inline.nolink.exec(n))){let s=(r[2]||r[1]).replace(this.rules.other.multipleSpaceGlobal," "),t=e[s.toLowerCase()];if(!t){let o=r[0].charAt(0);return{type:"text",raw:o,text:o}}return Fe(r,t,r[0],this.lexer,this.rules)}}emStrong(n,e,r=""){let s=this.rules.inline.emStrongLDelim.exec(n);if(!(!s||s[3]&&r.match(this.rules.other.unicodeAlphaNumeric))&&(!(s[1]||s[2])||!r||this.rules.inline.punctuation.exec(r))){let t=[...s[0]].length-1,o,i,l=t,a=0,p=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(p.lastIndex=0,e=e.slice(-1*n.length+t);(s=p.exec(e))!=null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(i=[...o].length,s[3]||s[4]){l+=i;continue}else if((s[5]||s[6])&&t%3&&!((t+i)%3)){a+=i;continue}if(l-=i,l>0)continue;i=Math.min(i,i+l+a);let c=[...s[0]][0].length,h=n.slice(0,t+s.index+c+i);if(Math.min(t,i)%2){let g=h.slice(1,-1);return{type:"em",raw:h,text:g,tokens:this.lexer.inlineTokens(g)}}let u=h.slice(2,-2);return{type:"strong",raw:h,text:u,tokens:this.lexer.inlineTokens(u)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let r=e[2].replace(this.rules.other.newLineCharGlobal," "),s=this.rules.other.nonSpaceChar.test(r),t=this.rules.other.startingSpaceChar.test(r)&&this.rules.other.endingSpaceChar.test(r);return s&&t&&(r=r.substring(1,r.length-1)),{type:"codespan",raw:e[0],text:r}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n){let e=this.rules.inline.del.exec(n);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let r,s;return e[2]==="@"?(r=e[1],s="mailto:"+r):(r=e[1],s=r),{type:"link",raw:e[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}url(n){let e;if(e=this.rules.inline.url.exec(n)){let r,s;if(e[2]==="@")r=e[0],s="mailto:"+r;else{let t;do t=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(t!==e[0]);r=e[0],e[1]==="www."?s="http://"+e[0]:s=e[0]}return{type:"link",raw:e[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let r=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:r}}}},I=class he{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||C,this.options.tokenizer=this.options.tokenizer||new N,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let r={other:y,block:H.normal,inline:D.normal};this.options.pedantic?(r.block=H.pedantic,r.inline=D.pedantic):this.options.gfm&&(r.block=H.gfm,this.options.breaks?r.inline=D.breaks:r.inline=D.gfm),this.tokenizer.rules=r}static get rules(){return{block:H,inline:D}}static lex(e,r){return new he(r).lex(e)}static lexInline(e,r){return new he(r).inlineTokens(e)}lex(e){e=e.replace(y.carriageReturn,` +`,n=n.substring(J.length+1),h=M.slice(f)}}t.loose||(i?t.loose=!0:this.rules.other.doubleBlankLine.test(p)&&(i=!0));let k=null,w;this.options.gfm&&(k=this.rules.other.listIsTask.exec(c),k&&(w=k[0]!=="[ ] ",c=c.replace(this.rules.other.listReplaceTask,""))),t.items.push({type:"list_item",raw:p,task:!!k,checked:w,loose:!1,text:c,tokens:[]}),t.raw+=p}let l=t.items.at(-1);if(l)l.raw=l.raw.trimEnd(),l.text=l.text.trimEnd();else return;t.raw=t.raw.trimEnd();for(let a=0;ah.type==="space"),c=p.length>0&&p.some(h=>this.rules.other.anyLine.test(h.raw));t.loose=c}if(t.loose)for(let a=0;a({text:l,tokens:this.lexer.inline(l),header:!1,align:o.align[a]})));return o}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let r=e[1].charAt(e[1].length-1)===` +`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:r,tokens:this.lexer.inline(r)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let r=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(r)){if(!this.rules.other.endAngleBracket.test(r))return;let o=D(r.slice(0,-1),"\\");if((r.length-o.length)%2===0)return}else{let o=on(e[2],"()");if(o===-2)return;if(o>-1){let i=(e[0].indexOf("!")===0?5:4)+e[1].length+o;e[2]=e[2].substring(0,o),e[0]=e[0].substring(0,i).trim(),e[3]=""}}let s=e[2],t="";if(this.options.pedantic){let o=this.rules.other.pedanticHrefTitle.exec(s);o&&(s=o[1],t=o[3])}else t=e[3]?e[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(r)?s=s.slice(1):s=s.slice(1,-1)),Oe(e,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:t&&t.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let r;if((r=this.rules.inline.reflink.exec(n))||(r=this.rules.inline.nolink.exec(n))){let s=(r[2]||r[1]).replace(this.rules.other.multipleSpaceGlobal," "),t=e[s.toLowerCase()];if(!t){let o=r[0].charAt(0);return{type:"text",raw:o,text:o}}return Oe(r,t,r[0],this.lexer,this.rules)}}emStrong(n,e,r=""){let s=this.rules.inline.emStrongLDelim.exec(n);if(!(!s||s[3]&&r.match(this.rules.other.unicodeAlphaNumeric))&&(!(s[1]||s[2])||!r||this.rules.inline.punctuation.exec(r))){let t=[...s[0]].length-1,o,i,l=t,a=0,p=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(p.lastIndex=0,e=e.slice(-1*n.length+t);(s=p.exec(e))!=null;){if(o=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!o)continue;if(i=[...o].length,s[3]||s[4]){l+=i;continue}else if((s[5]||s[6])&&t%3&&!((t+i)%3)){a+=i;continue}if(l-=i,l>0)continue;i=Math.min(i,i+l+a);let c=[...s[0]][0].length,h=n.slice(0,t+s.index+c+i);if(Math.min(t,i)%2){let g=h.slice(1,-1);return{type:"em",raw:h,text:g,tokens:this.lexer.inlineTokens(g)}}let u=h.slice(2,-2);return{type:"strong",raw:h,text:u,tokens:this.lexer.inlineTokens(u)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let r=e[2].replace(this.rules.other.newLineCharGlobal," "),s=this.rules.other.nonSpaceChar.test(r),t=this.rules.other.startingSpaceChar.test(r)&&this.rules.other.endingSpaceChar.test(r);return s&&t&&(r=r.substring(1,r.length-1)),{type:"codespan",raw:e[0],text:r}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n){let e=this.rules.inline.del.exec(n);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let r,s;return e[2]==="@"?(r=e[1],s="mailto:"+r):(r=e[1],s=r),{type:"link",raw:e[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}url(n){let e;if(e=this.rules.inline.url.exec(n)){let r,s;if(e[2]==="@")r=e[0],s="mailto:"+r;else{let t;do t=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(t!==e[0]);r=e[0],e[1]==="www."?s="http://"+e[0]:s=e[0]}return{type:"link",raw:e[0],text:r,href:s,tokens:[{type:"text",raw:r,text:r}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let r=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:r}}}},I=class ue{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||C,this.options.tokenizer=this.options.tokenizer||new N,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let r={other:y,block:H.normal,inline:B.normal};this.options.pedantic?(r.block=H.pedantic,r.inline=B.pedantic):this.options.gfm&&(r.block=H.gfm,this.options.breaks?r.inline=B.breaks:r.inline=B.gfm),this.tokenizer.rules=r}static get rules(){return{block:H,inline:B}}static lex(e,r){return new ue(r).lex(e)}static lexInline(e,r){return new ue(r).inlineTokens(e)}lex(e){e=e.replace(y.carriageReturn,` `),this.blockTokens(e,this.tokens);for(let r=0;r(t=i.call({lexer:this},e,r))?(e=e.substring(t.raw.length),r.push(t),!0):!1))continue;if(t=this.tokenizer.space(e)){e=e.substring(t.raw.length);let i=r.at(-1);t.raw.length===1&&i!==void 0?i.raw+=` `:r.push(t);continue}if(t=this.tokenizer.code(e)){e=e.substring(t.raw.length);let i=r.at(-1);i?.type==="paragraph"||i?.type==="text"?(i.raw+=(i.raw.endsWith(` `)?"":` @@ -55,16 +55,16 @@ ${this.parser.parse(n)} `}tablerow({text:n}){return` ${n} `}tablecell(n){let e=this.parser.parseInline(n.tokens),r=n.header?"th":"td";return(n.align?`<${r} align="${n.align}">`:`<${r}>`)+e+` -`}strong({tokens:n}){return`${this.parser.parseInline(n)}`}em({tokens:n}){return`${this.parser.parseInline(n)}`}codespan({text:n}){return`${v(n,!0)}`}br(n){return"
"}del({tokens:n}){return`${this.parser.parseInline(n)}`}link({href:n,title:e,tokens:r}){let s=this.parser.parseInline(r),t=Me(n);if(t===null)return s;n=t;let o='
",o}image({href:n,title:e,text:r,tokens:s}){s&&(r=this.parser.parseInline(s,this.parser.textRenderer));let t=Me(n);if(t===null)return v(r);n=t;let o=`${r}{let i=t[o].flat(1/0);r=r.concat(this.walkTokens(i,e))}):t.tokens&&(r=r.concat(this.walkTokens(t.tokens,e)))}}return r}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(r=>{let s=x({},r);if(s.async=this.defaults.async||s.async||!1,r.extensions&&(r.extensions.forEach(t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){let o=e.renderers[t.name];o?e.renderers[t.name]=function(...i){let l=t.renderer.apply(this,i);return l===!1&&(l=o.apply(this,i)),l}:e.renderers[t.name]=t.renderer}if("tokenizer"in t){if(!t.level||t.level!=="block"&&t.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let o=e[t.level];o?o.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&(t.level==="block"?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:t.level==="inline"&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]))}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens)}),s.extensions=e),r.renderer){let t=this.defaults.renderer||new V(this.defaults);for(let o in r.renderer){if(!(o in t))throw new Error(`renderer '${o}' does not exist`);if(["options","parser"].includes(o))continue;let i=o,l=r.renderer[i],a=t[i];t[i]=(...p)=>{let c=l.apply(t,p);return c===!1&&(c=a.apply(t,p)),c||""}}s.renderer=t}if(r.tokenizer){let t=this.defaults.tokenizer||new N(this.defaults);for(let o in r.tokenizer){if(!(o in t))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;let i=o,l=r.tokenizer[i],a=t[i];t[i]=(...p)=>{let c=l.apply(t,p);return c===!1&&(c=a.apply(t,p)),c}}s.tokenizer=t}if(r.hooks){let t=this.defaults.hooks||new q;for(let o in r.hooks){if(!(o in t))throw new Error(`hook '${o}' does not exist`);if(["options","block"].includes(o))continue;let i=o,l=r.hooks[i],a=t[i];q.passThroughHooks.has(o)?t[i]=p=>{if(this.defaults.async&&q.passThroughHooksRespectAsync.has(o))return T(this,null,function*(){let h=yield l.call(t,p);return a.call(t,h)});let c=l.call(t,p);return a.call(t,c)}:t[i]=(...p)=>{if(this.defaults.async)return T(this,null,function*(){let h=yield l.apply(t,p);return h===!1&&(h=yield a.apply(t,p)),h});let c=l.apply(t,p);return c===!1&&(c=a.apply(t,p)),c}}s.hooks=t}if(r.walkTokens){let t=this.defaults.walkTokens,o=r.walkTokens;s.walkTokens=function(i){let l=[];return l.push(o.call(this,i)),t&&(l=l.concat(t.call(this,i))),l}}this.defaults=x(x({},this.defaults),s)}),this}setOptions(n){return this.defaults=x(x({},this.defaults),n),this}lexer(n,e){return I.lex(n,e??this.defaults)}parser(n,e){return R.parse(n,e??this.defaults)}parseMarkdown(n){return(e,r)=>{let s=x({},r),t=x(x({},this.defaults),s),o=this.onError(!!t.silent,!!t.async);if(this.defaults.async===!0&&s.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(t.hooks&&(t.hooks.options=t,t.hooks.block=n),t.async)return T(this,null,function*(){let i=t.hooks?yield t.hooks.preprocess(e):e,l=yield(t.hooks?yield t.hooks.provideLexer():n?I.lex:I.lexInline)(i,t),a=t.hooks?yield t.hooks.processAllTokens(l):l;t.walkTokens&&(yield Promise.all(this.walkTokens(a,t.walkTokens)));let p=yield(t.hooks?yield t.hooks.provideParser():n?R.parse:R.parseInline)(a,t);return t.hooks?yield t.hooks.postprocess(p):p}).catch(o);try{t.hooks&&(e=t.hooks.preprocess(e));let i=(t.hooks?t.hooks.provideLexer():n?I.lex:I.lexInline)(e,t);t.hooks&&(i=t.hooks.processAllTokens(i)),t.walkTokens&&this.walkTokens(i,t.walkTokens);let l=(t.hooks?t.hooks.provideParser():n?R.parse:R.parseInline)(i,t);return t.hooks&&(l=t.hooks.postprocess(l)),l}catch(i){return o(i)}}}onError(n,e){return r=>{if(r.message+=` -Please report this to https://github.com/markedjs/marked.`,n){let s="

An error occurred:

"+v(r.message+"",!0)+"
";return e?Promise.resolve(s):s}if(e)return Promise.reject(r);throw r}}},L=new ln;function m(n,e){return L.parse(n,e)}m.options=m.setOptions=function(n){return L.setOptions(n),m.defaults=L.defaults,Oe(m.defaults),m};m.getDefaults=fe;m.defaults=C;m.use=function(...n){return L.use(...n),m.defaults=L.defaults,Oe(m.defaults),m};m.walkTokens=function(n,e){return L.walkTokens(n,e)};m.parseInline=L.parseInline;m.Parser=R;m.parser=R.parse;m.Renderer=V;m.TextRenderer=ye;m.Lexer=I;m.lexer=I.lex;m.Tokenizer=N;m.Hooks=q;m.parse=m;var Hn=m.options,Zn=m.setOptions,Nn=m.use,Vn=m.walkTokens,Un=m.parseInline;var Qn=R.parse,Kn=I.lex;function Ye(n){for(var e=[],r=1;r${this.parser.parseInline(n)}`}em({tokens:n}){return`${this.parser.parseInline(n)}`}codespan({text:n}){return`${v(n,!0)}`}br(n){return"
"}del({tokens:n}){return`${this.parser.parseInline(n)}`}link({href:n,title:e,tokens:r}){let s=this.parser.parseInline(r),t=qe(n);if(t===null)return s;n=t;let o='
",o}image({href:n,title:e,text:r,tokens:s}){s&&(r=this.parser.parseInline(s,this.parser.textRenderer));let t=qe(n);if(t===null)return v(r);n=t;let o=`${r}{let i=t[o].flat(1/0);r=r.concat(this.walkTokens(i,e))}):t.tokens&&(r=r.concat(this.walkTokens(t.tokens,e)))}}return r}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(r=>{let s=x({},r);if(s.async=this.defaults.async||s.async||!1,r.extensions&&(r.extensions.forEach(t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){let o=e.renderers[t.name];o?e.renderers[t.name]=function(...i){let l=t.renderer.apply(this,i);return l===!1&&(l=o.apply(this,i)),l}:e.renderers[t.name]=t.renderer}if("tokenizer"in t){if(!t.level||t.level!=="block"&&t.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let o=e[t.level];o?o.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&(t.level==="block"?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:t.level==="inline"&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]))}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens)}),s.extensions=e),r.renderer){let t=this.defaults.renderer||new V(this.defaults);for(let o in r.renderer){if(!(o in t))throw new Error(`renderer '${o}' does not exist`);if(["options","parser"].includes(o))continue;let i=o,l=r.renderer[i],a=t[i];t[i]=(...p)=>{let c=l.apply(t,p);return c===!1&&(c=a.apply(t,p)),c||""}}s.renderer=t}if(r.tokenizer){let t=this.defaults.tokenizer||new N(this.defaults);for(let o in r.tokenizer){if(!(o in t))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;let i=o,l=r.tokenizer[i],a=t[i];t[i]=(...p)=>{let c=l.apply(t,p);return c===!1&&(c=a.apply(t,p)),c}}s.tokenizer=t}if(r.hooks){let t=this.defaults.hooks||new q;for(let o in r.hooks){if(!(o in t))throw new Error(`hook '${o}' does not exist`);if(["options","block"].includes(o))continue;let i=o,l=r.hooks[i],a=t[i];q.passThroughHooks.has(o)?t[i]=p=>{if(this.defaults.async&&q.passThroughHooksRespectAsync.has(o))return T(this,null,function*(){let h=yield l.call(t,p);return a.call(t,h)});let c=l.call(t,p);return a.call(t,c)}:t[i]=(...p)=>{if(this.defaults.async)return T(this,null,function*(){let h=yield l.apply(t,p);return h===!1&&(h=yield a.apply(t,p)),h});let c=l.apply(t,p);return c===!1&&(c=a.apply(t,p)),c}}s.hooks=t}if(r.walkTokens){let t=this.defaults.walkTokens,o=r.walkTokens;s.walkTokens=function(i){let l=[];return l.push(o.call(this,i)),t&&(l=l.concat(t.call(this,i))),l}}this.defaults=x(x({},this.defaults),s)}),this}setOptions(n){return this.defaults=x(x({},this.defaults),n),this}lexer(n,e){return I.lex(n,e??this.defaults)}parser(n,e){return R.parse(n,e??this.defaults)}parseMarkdown(n){return(e,r)=>{let s=x({},r),t=x(x({},this.defaults),s),o=this.onError(!!t.silent,!!t.async);if(this.defaults.async===!0&&s.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(t.hooks&&(t.hooks.options=t,t.hooks.block=n),t.async)return T(this,null,function*(){let i=t.hooks?yield t.hooks.preprocess(e):e,l=yield(t.hooks?yield t.hooks.provideLexer():n?I.lex:I.lexInline)(i,t),a=t.hooks?yield t.hooks.processAllTokens(l):l;t.walkTokens&&(yield Promise.all(this.walkTokens(a,t.walkTokens)));let p=yield(t.hooks?yield t.hooks.provideParser():n?R.parse:R.parseInline)(a,t);return t.hooks?yield t.hooks.postprocess(p):p}).catch(o);try{t.hooks&&(e=t.hooks.preprocess(e));let i=(t.hooks?t.hooks.provideLexer():n?I.lex:I.lexInline)(e,t);t.hooks&&(i=t.hooks.processAllTokens(i)),t.walkTokens&&this.walkTokens(i,t.walkTokens);let l=(t.hooks?t.hooks.provideParser():n?R.parse:R.parseInline)(i,t);return t.hooks&&(l=t.hooks.postprocess(l)),l}catch(i){return o(i)}}}onError(n,e){return r=>{if(r.message+=` +Please report this to https://github.com/markedjs/marked.`,n){let s="

An error occurred:

"+v(r.message+"",!0)+"
";return e?Promise.resolve(s):s}if(e)return Promise.reject(r);throw r}}},L=new an;function m(n,e){return L.parse(n,e)}m.options=m.setOptions=function(n){return L.setOptions(n),m.defaults=L.defaults,We(m.defaults),m};m.getDefaults=ge;m.defaults=C;m.use=function(...n){return L.use(...n),m.defaults=L.defaults,We(m.defaults),m};m.walkTokens=function(n,e){return L.walkTokens(n,e)};m.parseInline=L.parseInline;m.Parser=R;m.parser=R.parse;m.Renderer=V;m.TextRenderer=Se;m.Lexer=I;m.lexer=I.lex;m.Tokenizer=N;m.Hooks=q;m.parse=m;var Zn=m.options,Nn=m.setOptions,Vn=m.use,Un=m.walkTokens,Qn=m.parseInline;var Kn=R.parse,Xn=I.lex;function Je(n){for(var e=[],r=1;r?',height:80,width:80},Se=new Map,et=new Map,cr=b(n=>{for(let e of n){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(E.debug("Registering icon pack:",e.name),"loader"in e)et.set(e.name,e.loader);else if("icons"in e)Se.set(e.name,e.icons);else throw E.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),tt=b((n,e)=>T(null,null,function*(){let r=re(n,!0,e!==void 0);if(!r)throw new Error(`Invalid icon name: ${n}`);let s=r.prefix||e;if(!s)throw new Error(`Icon name must contain a prefix: ${n}`);let t=Se.get(s);if(!t){let i=et.get(s);if(!i)throw new Error(`Icon set not found: ${r.prefix}`);try{let l=yield i();t=z(x({},l),{prefix:s}),Se.set(s,t)}catch(l){throw E.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let o=ie(t,r.name);if(!o)throw new Error(`Icon not found: ${n}`);return o}),"getRegisteredIconData"),cn=b(n=>T(null,null,function*(){try{return yield tt(n),!0}catch(e){return!1}}),"isIconAvailable"),pn=b((n,e,r)=>T(null,null,function*(){let s;try{s=yield tt(n,e?.fallbackPrefix)}catch(i){E.error(i),s=an}let t=le(s,e),o=ce(ae(t.body),x(x({},t.attributes),r));return W(o,ee())}),"getIconSVG");function nt(n,{markdownAutoWrap:e}){let s=n.replace(//g,` +`)),i+=h+s[a+1]}),i}var cn={body:'?',height:80,width:80},Te=new Map,tt=new Map,pr=b(n=>{for(let e of n){if(!e.name)throw new Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(E.debug("Registering icon pack:",e.name),"loader"in e)tt.set(e.name,e.loader);else if("icons"in e)Te.set(e.name,e.icons);else throw E.error("Invalid icon loader:",e),new Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),nt=b((n,e)=>T(null,null,function*(){let r=se(n,!0,e!==void 0);if(!r)throw new Error(`Invalid icon name: ${n}`);let s=r.prefix||e;if(!s)throw new Error(`Icon name must contain a prefix: ${n}`);let t=Te.get(s);if(!t){let i=tt.get(s);if(!i)throw new Error(`Icon set not found: ${r.prefix}`);try{let l=yield i();t=z(x({},l),{prefix:s}),Te.set(s,t)}catch(l){throw E.error(l),new Error(`Failed to load icon set: ${r.prefix}`)}}let o=oe(t,r.name);if(!o)throw new Error(`Icon not found: ${n}`);return o}),"getRegisteredIconData"),pn=b(n=>T(null,null,function*(){try{return yield nt(n),!0}catch(e){return!1}}),"isIconAvailable"),hn=b((n,e,r)=>T(null,null,function*(){let s;try{s=yield nt(n,e?.fallbackPrefix)}catch(i){E.error(i),s=cn}let t=ae(s,e),o=pe(ce(t.body),x(x({},t.attributes),r));return W(o,ee())}),"getIconSVG");function rt(n,{markdownAutoWrap:e}){let s=n.replace(//g,` `).replace(/\n{2,}/g,` -`);return Ye(s)}b(nt,"preprocessMarkdown");function rt(n){return n.split(/\\n|\n|/gi).map(e=>e.trim().match(/<[^>]+>|[^\s<>]+/g)?.map(r=>({content:r,type:"normal"}))??[])}b(rt,"nonMarkdownToLines");function st(n,e={}){let r=nt(n,e),s=m.lexer(r),t=[[]],o=0;function i(l,a="normal"){l.type==="text"?l.text.split(` -`).forEach((c,h)=>{h!==0&&(o++,t.push([])),c.split(" ").forEach(u=>{u=u.replace(/'/g,"'"),u&&t[o].push({content:u,type:a})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(p=>{i(p,l.type)}):l.type==="html"&&t[o].push({content:l.text,type:"normal"})}return b(i,"processNode"),s.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(a=>{i(a)}):l.type==="html"?t[o].push({content:l.text,type:"normal"}):t[o].push({content:l.raw,type:"normal"})}),t}b(st,"markdownToLines");function it(n){return n?`

${n.replace(/\\n|\n/g,"
")}

`:""}b(it,"nonMarkdownToHTML");function ot(n,{markdownAutoWrap:e}={}){let r=m.lexer(n);function s(t){return t.type==="text"?e===!1?t.text.replace(/\n */g,"
").replace(/ /g," "):t.text.replace(/\n */g,"
"):t.type==="strong"?`${t.tokens?.map(s).join("")}`:t.type==="em"?`${t.tokens?.map(s).join("")}`:t.type==="paragraph"?`

${t.tokens?.map(s).join("")}

`:t.type==="space"?"":t.type==="html"?`${t.text}`:t.type==="escape"?t.text:(E.warn(`Unsupported markdown: ${t.type}`),t.raw)}return b(s,"output"),r.map(s).join("")}b(ot,"markdownToHTML");function lt(n){return Intl.Segmenter?[...new Intl.Segmenter().segment(n)].map(e=>e.segment):[...n]}b(lt,"splitTextToChars");function at(n,e){let r=lt(e.content);return $e(n,[],r,e.type)}b(at,"splitWordToFitWidth");function $e(n,e,r,s){if(r.length===0)return[{content:e.join(""),type:s},{content:"",type:s}];let[t,...o]=r,i=[...e,t];return n([{content:i.join(""),type:s}])?$e(n,i,o,s):(e.length===0&&t&&(e.push(t),r.shift()),[{content:e.join(""),type:s},{content:r.join(""),type:s}])}b($e,"splitWordToFitWidthRecursion");function ct(n,e){if(n.some(({content:r})=>r.includes(` -`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return K(n,e)}b(ct,"splitLineToFitWidth");function K(n,e,r=[],s=[]){if(n.length===0)return s.length>0&&r.push(s),r.length>0?r:[];let t="";n[0].content===" "&&(t=" ",n.shift());let o=n.shift()??{content:" ",type:"normal"},i=[...s];if(t!==""&&i.push({content:t,type:"normal"}),i.push(o),e(i))return K(n,e,r,i);if(s.length>0)r.push(s),n.unshift(o);else if(o.content){let[l,a]=at(e,o);r.push([l]),a.content&&n.unshift(a)}return K(n,e,r)}b(K,"splitLineToFitWidthRecursion");function Te(n,e){e&&n.attr("style",e)}b(Te,"applyStyle");var Je=16384;function pt(i,l,a,p){return T(this,arguments,function*(n,e,r,s,t=!1,o=ee()){let c=n.append("foreignObject");c.attr("width",`${Math.min(10*r,Je)}px`),c.attr("height",`${Math.min(10*r,Je)}px`);let h=c.append("xhtml:div"),u=te(e.label)?yield Ie(e.label.replace(Re.lineBreakRegex,` -`),o):W(e.label,o),g=e.isNode?"nodeLabel":"edgeLabel",f=h.append("span");f.html(u),Te(f,e.labelStyle),f.attr("class",`${g} ${s}`),Te(h,e.labelStyle),h.style("display","table-cell"),h.style("white-space","nowrap"),h.style("line-height","1.5"),r!==Number.POSITIVE_INFINITY&&(h.style("max-width",r+"px"),h.style("text-align","center")),h.attr("xmlns","http://www.w3.org/1999/xhtml"),t&&h.attr("class","labelBkg");let k=h.node().getBoundingClientRect();return k.width===r&&(h.style("display","table"),h.style("white-space","break-spaces"),h.style("width",r+"px"),k=h.node().getBoundingClientRect()),c.node()})}b(pt,"addHtmlSpan");function X(n,e,r,s=!1){let t=n.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em");return s&&t.attr("text-anchor","middle"),t}b(X,"createTspan");function ht(n,e,r){let s=n.append("text"),t=X(s,1,e);Y(t,r);let o=t.node().getComputedTextLength();return s.remove(),o}b(ht,"computeWidthOfText");function hn(n,e,r){let s=n.append("text"),t=X(s,1,e);Y(t,[{content:r,type:"normal"}]);let o=t.node()?.getBoundingClientRect();return o&&s.remove(),o}b(hn,"computeDimensionOfText");function ut(n,e,r,s=!1,t=!1){let i=e.append("g"),l=i.insert("rect").attr("class","background").attr("style","stroke: none"),a=i.append("text").attr("y","-10.1");t&&a.attr("text-anchor","middle");let p=0;for(let c of r){let h=b(g=>ht(i,1.1,g)<=n,"checkWidth"),u=h(c)?[c]:ct(c,h);for(let g of u){let f=X(a,p,1.1,t);Y(f,g),p++}}if(s){let c=a.node().getBBox(),h=2;return l.attr("x",c.x-h).attr("y",c.y-h).attr("width",c.width+2*h).attr("height",c.height+2*h),i.node()}else return a.node()}b(ut,"createFormattedText");function Y(n,e){n.text(""),e.forEach((r,s)=>{let t=n.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");s===0?t.text(r.content):t.text(" "+r.content)})}b(Y,"updateTextContentAndStyles");function ft(r){return T(this,arguments,function*(n,e={}){let s=[];n.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(o,i,l)=>(s.push(T(null,null,function*(){let a=`${i}:${l}`;return(yield cn(a))?yield pn(a,void 0,{class:"label-icon"}):``})),o));let t=yield Promise.all(s);return n.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>t.shift()??"")})}b(ft,"replaceIconSubstring");var fr=b((h,...u)=>T(null,[h,...u],function*(n,e="",{style:r="",isTitle:s=!1,classes:t="",useHtmlLabels:o=!0,markdown:i=!0,isNode:l=!0,width:a=200,addSvgBackground:p=!1}={},c){if(E.debug("XYZ createText",e,r,s,t,o,l,"addSvgBackground: ",p),o){let g=i?ot(e,c):it(e),f=yield ft(ze(g),c),k=e.replace(/\\\\/g,"\\"),w={isNode:l,label:te(e)?k:f,labelStyle:r.replace("fill:","color:")};return yield pt(n,w,a,t,p,c)}else{let g=e.replace(//g,"
"),f=i?st(g.replace("
","
"),c):rt(g),k=ut(a,n,f,e?p:!1,!l);if(l){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let w=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");P(k).attr("style",w)}else{let w=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");P(k).select("rect").attr("style",w.replace(/background:/g,"fill:"));let A=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");P(k).select("text").attr("style",A)}return s?P(k).selectAll("tspan.text-outer-tspan").classed("title-row",!0):P(k).selectAll("tspan.text-outer-tspan").classed("row",!0),k}}),"createText");export{Ye as a,an as b,cr as c,pn as d,hn as e,fr as f}; +`);return Je(s)}b(rt,"preprocessMarkdown");function st(n){return n.split(/\\n|\n|/gi).map(e=>e.trim().match(/<[^>]+>|[^\s<>]+/g)?.map(r=>({content:r,type:"normal"}))??[])}b(st,"nonMarkdownToLines");function it(n,e={}){let r=rt(n,e),s=m.lexer(r),t=[[]],o=0;function i(l,a="normal"){l.type==="text"?l.text.split(` +`).forEach((c,h)=>{h!==0&&(o++,t.push([])),c.split(" ").forEach(u=>{u=u.replace(/'/g,"'"),u&&t[o].push({content:u,type:a})})}):l.type==="strong"||l.type==="em"?l.tokens.forEach(p=>{i(p,l.type)}):l.type==="html"&&t[o].push({content:l.text,type:"normal"})}return b(i,"processNode"),s.forEach(l=>{l.type==="paragraph"?l.tokens?.forEach(a=>{i(a)}):l.type==="html"?t[o].push({content:l.text,type:"normal"}):t[o].push({content:l.raw,type:"normal"})}),t}b(it,"markdownToLines");function ot(n){return n?`

${n.replace(/\\n|\n/g,"
")}

`:""}b(ot,"nonMarkdownToHTML");function lt(n,{markdownAutoWrap:e}={}){let r=m.lexer(n);function s(t){return t.type==="text"?e===!1?t.text.replace(/\n */g,"
").replace(/ /g," "):t.text.replace(/\n */g,"
"):t.type==="strong"?`${t.tokens?.map(s).join("")}`:t.type==="em"?`${t.tokens?.map(s).join("")}`:t.type==="paragraph"?`

${t.tokens?.map(s).join("")}

`:t.type==="space"?"":t.type==="html"?`${t.text}`:t.type==="escape"?t.text:(E.warn(`Unsupported markdown: ${t.type}`),t.raw)}return b(s,"output"),r.map(s).join("")}b(lt,"markdownToHTML");function at(n){return Intl.Segmenter?[...new Intl.Segmenter().segment(n)].map(e=>e.segment):[...n]}b(at,"splitTextToChars");function ct(n,e){let r=at(e.content);return Re(n,[],r,e.type)}b(ct,"splitWordToFitWidth");function Re(n,e,r,s){if(r.length===0)return[{content:e.join(""),type:s},{content:"",type:s}];let[t,...o]=r,i=[...e,t];return n([{content:i.join(""),type:s}])?Re(n,i,o,s):(e.length===0&&t&&(e.push(t),r.shift()),[{content:e.join(""),type:s},{content:r.join(""),type:s}])}b(Re,"splitWordToFitWidthRecursion");function pt(n,e){if(n.some(({content:r})=>r.includes(` +`)))throw new Error("splitLineToFitWidth does not support newlines in the line");return K(n,e)}b(pt,"splitLineToFitWidth");function K(n,e,r=[],s=[]){if(n.length===0)return s.length>0&&r.push(s),r.length>0?r:[];let t="";n[0].content===" "&&(t=" ",n.shift());let o=n.shift()??{content:" ",type:"normal"},i=[...s];if(t!==""&&i.push({content:t,type:"normal"}),i.push(o),e(i))return K(n,e,r,i);if(s.length>0)r.push(s),n.unshift(o);else if(o.content){let[l,a]=ct(e,o);r.push([l]),a.content&&n.unshift(a)}return K(n,e,r)}b(K,"splitLineToFitWidthRecursion");function $e(n,e){e&&n.attr("style",e)}b($e,"applyStyle");var et=16384;function ht(i,l,a,p){return T(this,arguments,function*(n,e,r,s,t=!1,o=ee()){let c=n.append("foreignObject");c.attr("width",`${Math.min(10*r,et)}px`),c.attr("height",`${Math.min(10*r,et)}px`);let h=c.append("xhtml:div"),u=te(e.label)?yield ze(e.label.replace(ve.lineBreakRegex,` +`),o):W(e.label,o),g=e.isNode?"nodeLabel":"edgeLabel",f=h.append("span");f.html(u),$e(f,e.labelStyle),f.attr("class",`${g} ${s}`),$e(h,e.labelStyle),h.style("display","table-cell"),h.style("white-space","nowrap"),h.style("line-height","1.5"),r!==Number.POSITIVE_INFINITY&&(h.style("max-width",r+"px"),h.style("text-align","center")),h.attr("xmlns","http://www.w3.org/1999/xhtml"),t&&h.attr("class","labelBkg");let k=h.node().getBoundingClientRect();return k.width===r&&(h.style("display","table"),h.style("white-space","break-spaces"),h.style("width",r+"px"),k=h.node().getBoundingClientRect()),c.node()})}b(ht,"addHtmlSpan");function X(n,e,r,s=!1){let t=n.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*r-.1+"em").attr("dy",r+"em");return s&&t.attr("text-anchor","middle"),t}b(X,"createTspan");function ut(n,e,r){let s=n.append("text"),t=X(s,1,e);Y(t,r);let o=t.node().getComputedTextLength();return s.remove(),o}b(ut,"computeWidthOfText");function un(n,e,r){let s=n.append("text"),t=X(s,1,e);Y(t,[{content:r,type:"normal"}]);let o=t.node()?.getBoundingClientRect();return o&&s.remove(),o}b(un,"computeDimensionOfText");function ft(n,e,r,s=!1,t=!1){let i=e.append("g"),l=i.insert("rect").attr("class","background").attr("style","stroke: none"),a=i.append("text").attr("y","-10.1");t&&a.attr("text-anchor","middle");let p=0;for(let c of r){let h=b(g=>ut(i,1.1,g)<=n,"checkWidth"),u=h(c)?[c]:pt(c,h);for(let g of u){let f=X(a,p,1.1,t);Y(f,g),p++}}if(s){let c=a.node().getBBox(),h=2;return l.attr("x",c.x-h).attr("y",c.y-h).attr("width",c.width+2*h).attr("height",c.height+2*h),i.node()}else return a.node()}b(ft,"createFormattedText");function Ie(n){let e=/&(amp|lt|gt);/g;return n.replace(e,(r,s)=>{switch(s){case"amp":return"&";case"lt":return"<";case"gt":return">";default:return r}})}b(Ie,"decodeHTMLEntities");function Y(n,e){n.text(""),e.forEach((r,s)=>{let t=n.append("tspan").attr("font-style",r.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",r.type==="strong"?"bold":"normal");s===0?t.text(Ie(r.content)):t.text(" "+Ie(r.content))})}b(Y,"updateTextContentAndStyles");function gt(r){return T(this,arguments,function*(n,e={}){let s=[];n.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(o,i,l)=>(s.push(T(null,null,function*(){let a=`${i}:${l}`;return(yield pn(a))?yield hn(a,void 0,{class:"label-icon"}):``})),o));let t=yield Promise.all(s);return n.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>t.shift()??"")})}b(gt,"replaceIconSubstring");var gr=b((h,...u)=>T(null,[h,...u],function*(n,e="",{style:r="",isTitle:s=!1,classes:t="",useHtmlLabels:o=!0,markdown:i=!0,isNode:l=!0,width:a=200,addSvgBackground:p=!1}={},c){if(E.debug("XYZ createText",e,r,s,t,o,l,"addSvgBackground: ",p),o){let g=i?lt(e,c):ot(e),f=yield gt(ne(g),c),k=e.replace(/\\\\/g,"\\"),w={isNode:l,label:te(e)?k:f,labelStyle:r.replace("fill:","color:")};return yield ht(n,w,a,t,p,c)}else{let g=ne(e.replace(//g,"
")),f=i?it(g.replace("
","
"),c):st(g),k=ft(a,n,f,e?p:!1,!l);if(l){/stroke:/.exec(r)&&(r=r.replace("stroke:","lineColor:"));let w=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");P(k).attr("style",w)}else{let w=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");P(k).select("rect").attr("style",w.replace(/background:/g,"fill:"));let A=r.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");P(k).select("text").attr("style",A)}return s?P(k).selectAll("tspan.text-outer-tspan").classed("title-row",!0):P(k).selectAll("tspan.text-outer-tspan").classed("row",!0),k}}),"createText");export{Je as a,cn as b,pr as c,hn as d,un as e,gr as f}; diff --git a/src/google/adk/cli/browser/chunk-4WEIDHEA.js b/src/google/adk/cli/browser/chunk-4WEIDHEA.js new file mode 100644 index 0000000000..af91a8f1f8 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-4WEIDHEA.js @@ -0,0 +1 @@ +import{a as i,b as e,c as o,d as a}from"./chunk-M4CFRGUH.js";import"./chunk-B2DSW4QB.js";import"./chunk-LT3WOUUJ.js";import"./chunk-APNCZOFE.js";import"./chunk-XB6MIIOW.js";import"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import"./chunk-37QI3DOO.js";import{g as t}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";var y={parser:i,get db(){return new e},renderer:a,styles:o,init:t(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{y as diagram}; diff --git a/src/google/adk/cli/browser/chunk-4ZQ24APY.js b/src/google/adk/cli/browser/chunk-4ZQ24APY.js new file mode 100644 index 0000000000..fb1c1512d7 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-4ZQ24APY.js @@ -0,0 +1 @@ +import{a as o,b as e}from"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{o as InfoModule,e as createInfoServices}; diff --git a/src/google/adk/cli/browser/chunk-5JNRF4JL.js b/src/google/adk/cli/browser/chunk-5JNRF4JL.js new file mode 100644 index 0000000000..72679de4c6 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-5JNRF4JL.js @@ -0,0 +1 @@ +import{a as d,b as l,c as o,d as n,e as c,f as r,g as s,p as u,q as i}from"./chunk-7ZGKZ6HH.js";var m=class extends i{static{r(this,"WardleyValueConverter")}runCustomConverter(t,e,a){if(t.name.toUpperCase()==="LINK_LABEL")return e.substring(1).trim()}},v={parser:{ValueConverter:r(()=>new m,"ValueConverter")}};function y(t=n){let e=o(l(t),s),a=o(d({shared:e}),u,v);return e.ServiceRegistry.register(a),{shared:e,Wardley:a}}r(y,"createWardleyServices");export{v as a,y as b}; diff --git a/src/google/adk/cli/browser/chunk-5PR7OWPD.js b/src/google/adk/cli/browser/chunk-5PR7OWPD.js deleted file mode 100644 index 22e4ffa1d8..0000000000 --- a/src/google/adk/cli/browser/chunk-5PR7OWPD.js +++ /dev/null @@ -1,43 +0,0 @@ -import{a as D}from"./chunk-DMWOYWYQ.js";import{a as z}from"./chunk-T3Q3QCCV.js";import"./chunk-NQKWI5EB.js";import"./chunk-WR6HISGZ.js";import"./chunk-I4UDKKN5.js";import"./chunk-2DLZXFEQ.js";import"./chunk-JNY2YWG7.js";import"./chunk-XULIXUQL.js";import"./chunk-3NJNOY56.js";import"./chunk-NALL4A3P.js";import{a as _}from"./chunk-TPDTRWWV.js";import{l as y}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{A as w,N as T,R as S,S as O,T as k,U as R,V as I,W as E,X as F,p as A,r as L}from"./chunk-QFMJV7VH.js";import{g as o,i as M}from"./chunk-JRNAXTJ7.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{a as C,j as b}from"./chunk-RMXJBC7V.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},G={axes:[],curves:[],options:x},g=structuredClone(G),U=L.radar,X=o(()=>y(C(C({},U),w().radar)),"getConfig"),P=o(()=>g.axes,"getAxes"),Y=o(()=>g.curves,"getCurves"),Z=o(()=>g.options,"getOptions"),q=o(a=>{g.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),J=o(a=>{g.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:K(t.entries)}))},"setCurves"),K=o(a=>{if(a[0].axis==null)return a.map(e=>e.value);let t=P();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{let r=a.find(n=>n.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),Q=o(a=>{let t=a.reduce((e,r)=>(e[r.name]=r,e),{});g.options={showLegend:t.showLegend?.value??x.showLegend,ticks:t.ticks?.value??x.ticks,max:t.max?.value??x.max,min:t.min?.value??x.min,graticule:t.graticule?.value??x.graticule}},"setOptions"),tt=o(()=>{S(),g=structuredClone(G)},"clear"),$={getAxes:P,getCurves:Y,getOptions:Z,setAxes:q,setCurves:J,setOptions:Q,getConfig:X,clear:tt,setAccTitle:O,getAccTitle:k,setDiagramTitle:E,getDiagramTitle:F,getAccDescription:I,setAccDescription:R},et=o(a=>{D(a,$);let{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),at={parse:o(a=>b(null,null,function*(){let t=yield z("radar",a);M.debug(t),et(t)}),"parse")},rt=o((a,t,e,r)=>{let n=r.db,i=n.getAxes(),l=n.getCurves(),s=n.getOptions(),c=n.getConfig(),d=n.getDiagramTitle(),p=_(t),u=nt(p,c),m=s.max??Math.max(...l.map(f=>Math.max(...f.entries))),h=s.min,v=Math.min(c.width,c.height)/2;st(u,i,v,s.ticks,s.graticule),ot(u,i,v,c),W(u,i,l,h,m,s.graticule,c),H(u,l,s.showLegend,c),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),nt=o((a,t)=>{let e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,n={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return T(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`),a.append("g").attr("transform",`translate(${n.x}, ${n.y})`)},"drawFrame"),st=o((a,t,e,r,n)=>{if(n==="circle")for(let i=0;i{let u=2*p*Math.PI/i-Math.PI/2,m=s*Math.cos(u),h=s*Math.sin(u);return`${m},${h}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),ot=o((a,t,e,r)=>{let n=t.length;for(let i=0;i{if(d.entries.length!==s)return;let u=d.entries.map((m,h)=>{let v=2*Math.PI*h/s-Math.PI/2,f=B(m,r,n,c),j=f*Math.cos(v),N=f*Math.sin(v);return{x:j,y:N}});i==="circle"?a.append("path").attr("d",V(u,l.curveTension)).attr("class",`radarCurve-${p}`):i==="polygon"&&a.append("polygon").attr("points",u.map(m=>`${m.x},${m.y}`).join(" ")).attr("class",`radarCurve-${p}`)})}o(W,"drawCurves");function B(a,t,e,r){let n=Math.min(Math.max(a,t),e);return r*(n-t)/(e-t)}o(B,"relativeRadius");function V(a,t){let e=a.length,r=`M${a[0].x},${a[0].y}`;for(let n=0;n{let d=a.append("g").attr("transform",`translate(${n}, ${i+c*l})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(s.label)})}o(H,"drawLegend");var it={draw:rt},lt=o((a,t)=>{let e="";for(let r=0;r{let t=A(),e=w(),r=y(t,e.themeVariables),n=y(r.radar,a);return{themeVariables:r,radarOptions:n}},"buildRadarStyleOptions"),dt=o(({radar:a}={})=>{let{themeVariables:t,radarOptions:e}=ct(a);return` - .radarTitle { - font-size: ${t.fontSize}; - color: ${t.titleColor}; - dominant-baseline: hanging; - text-anchor: middle; - } - .radarAxisLine { - stroke: ${e.axisColor}; - stroke-width: ${e.axisStrokeWidth}; - } - .radarAxisLabel { - dominant-baseline: middle; - text-anchor: middle; - font-size: ${e.axisLabelFontSize}px; - color: ${e.axisColor}; - } - .radarGraticule { - fill: ${e.graticuleColor}; - fill-opacity: ${e.graticuleOpacity}; - stroke: ${e.graticuleColor}; - stroke-width: ${e.graticuleStrokeWidth}; - } - .radarLegendText { - text-anchor: start; - font-size: ${e.legendFontSize}px; - dominant-baseline: hanging; - } - ${lt(t,e)} - `},"styles"),vt={parser:at,db:$,renderer:it,styles:dt};export{vt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-5YCXLBRD.js b/src/google/adk/cli/browser/chunk-5YCXLBRD.js new file mode 100644 index 0000000000..391b7f112c --- /dev/null +++ b/src/google/adk/cli/browser/chunk-5YCXLBRD.js @@ -0,0 +1,106 @@ +import{a as ye}from"./chunk-DMWOYWYQ.js";import{a as ue}from"./chunk-SRCUB3EX.js";import{a as xe}from"./chunk-4R6SYGKS.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{C as $e,D as pe,w as fe}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as z,M as E,R as ne,S as ce,T as ie,U as de,V as he,W as le,X as me,Y as q,aa as ge,r as se}from"./chunk-37QI3DOO.js";import{a as oe,g as l,i as w}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as F,b as re,j as ae}from"./chunk-RMXJBC7V.js";var x={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},Me=se.gitGraph,D=l(()=>$e(F(F({},Me),z().gitGraph)),"getConfig"),d=new xe(()=>{let e=D(),t=e.mainBranchName,r=e.mainBranchOrder;return{mainBranchName:t,commits:new Map,head:null,branchConfig:new Map([[t,{name:t,order:r}]]),branches:new Map([[t,null]]),currBranch:t,direction:"LR",seq:0,options:{}}});function K(){return fe({length:7})}l(K,"getID");function we(e,t){let r=Object.create(null);return e.reduce((s,n)=>{let i=t(n);return r[i]||(r[i]=!0,s.push(n)),s},[])}l(we,"uniqBy");var Pe=l(function(e){d.records.direction=e},"setDirection"),Re=l(function(e){w.debug("options str",e),e=e?.trim(),e=e||"{}";try{d.records.options=JSON.parse(e)}catch(t){w.error("error while parsing gitGraph options",t.message)}},"setOptions"),Oe=l(function(){return d.records.options},"getOptions"),Ie=l(function(e){let t=e.msg,r=e.id,s=e.type,n=e.tags;w.info("commit",t,r,s,n),w.debug("Entering commit:",t,r,s,n);let i=D();r=E.sanitizeText(r,i),t=E.sanitizeText(t,i),n=n?.map(a=>E.sanitizeText(a,i));let o={id:r||d.records.seq+"-"+K(),message:t,seq:d.records.seq++,type:s??x.NORMAL,tags:n??[],parents:d.records.head==null?[]:[d.records.head.id],branch:d.records.currBranch};d.records.head=o,w.info("main branch",i.mainBranchName),d.records.commits.has(o.id)&&w.warn(`Commit ID ${o.id} already exists`),d.records.commits.set(o.id,o),d.records.branches.set(d.records.currBranch,o.id),w.debug("in pushCommit "+o.id)},"commit"),_e=l(function(e){let t=e.name,r=e.order;if(t=E.sanitizeText(t,D()),d.records.branches.has(t))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${t}")`);d.records.branches.set(t,d.records.head!=null?d.records.head.id:null),d.records.branchConfig.set(t,{name:t,order:r}),Be(t),w.debug("in createBranch")},"branch"),Ge=l(e=>{let t=e.branch,r=e.id,s=e.type,n=e.tags,i=D();t=E.sanitizeText(t,i),r&&(r=E.sanitizeText(r,i));let o=d.records.branches.get(d.records.currBranch),a=d.records.branches.get(t),h=o?d.records.commits.get(o):void 0,g=a?d.records.commits.get(a):void 0;if(h&&g&&h.branch===t)throw new Error(`Cannot merge branch '${t}' into itself.`);if(d.records.currBranch===t){let c=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw c.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["branch abc"]},c}if(h===void 0||!h){let c=new Error(`Incorrect usage of "merge". Current branch (${d.records.currBranch})has no commits`);throw c.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["commit"]},c}if(!d.records.branches.has(t)){let c=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") does not exist");throw c.hash={text:`merge ${t}`,token:`merge ${t}`,expected:[`branch ${t}`]},c}if(g===void 0||!g){let c=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") has no commits");throw c.hash={text:`merge ${t}`,token:`merge ${t}`,expected:['"commit"']},c}if(h===g){let c=new Error('Incorrect usage of "merge". Both branches have same head');throw c.hash={text:`merge ${t}`,token:`merge ${t}`,expected:["branch abc"]},c}if(r&&d.records.commits.has(r)){let c=new Error('Incorrect usage of "merge". Commit with id:'+r+" already exists, use different custom id");throw c.hash={text:`merge ${t} ${r} ${s} ${n?.join(" ")}`,token:`merge ${t} ${r} ${s} ${n?.join(" ")}`,expected:[`merge ${t} ${r}_UNIQUE ${s} ${n?.join(" ")}`]},c}let f=a||"",m={id:r||`${d.records.seq}-${K()}`,message:`merged branch ${t} into ${d.records.currBranch}`,seq:d.records.seq++,parents:d.records.head==null?[]:[d.records.head.id,f],branch:d.records.currBranch,type:x.MERGE,customType:s,customId:!!r,tags:n??[]};d.records.head=m,d.records.commits.set(m.id,m),d.records.branches.set(d.records.currBranch,m.id),w.debug(d.records.branches),w.debug("in mergeBranch")},"merge"),De=l(function(e){let t=e.id,r=e.targetId,s=e.tags,n=e.parent;w.debug("Entering cherryPick:",t,r,s);let i=D();if(t=E.sanitizeText(t,i),r=E.sanitizeText(r,i),s=s?.map(h=>E.sanitizeText(h,i)),n=E.sanitizeText(n,i),!t||!d.records.commits.has(t)){let h=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw h.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},h}let o=d.records.commits.get(t);if(o===void 0||!o)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(n&&!(Array.isArray(o.parents)&&o.parents.includes(n)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let a=o.branch;if(o.type===x.MERGE&&!n)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!r||!d.records.commits.has(r)){if(a===d.records.currBranch){let m=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw m.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},m}let h=d.records.branches.get(d.records.currBranch);if(h===void 0||!h){let m=new Error(`Incorrect usage of "cherry-pick". Current branch (${d.records.currBranch})has no commits`);throw m.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},m}let g=d.records.commits.get(h);if(g===void 0||!g){let m=new Error(`Incorrect usage of "cherry-pick". Current branch (${d.records.currBranch})has no commits`);throw m.hash={text:`cherryPick ${t} ${r}`,token:`cherryPick ${t} ${r}`,expected:["cherry-pick abc"]},m}let f={id:d.records.seq+"-"+K(),message:`cherry-picked ${o?.message} into ${d.records.currBranch}`,seq:d.records.seq++,parents:d.records.head==null?[]:[d.records.head.id,o.id],branch:d.records.currBranch,type:x.CHERRY_PICK,tags:s?s.filter(Boolean):[`cherry-pick:${o.id}${o.type===x.MERGE?`|parent:${n}`:""}`]};d.records.head=f,d.records.commits.set(f.id,f),d.records.branches.set(d.records.currBranch,f.id),w.debug(d.records.branches),w.debug("in cherryPick")}},"cherryPick"),Be=l(function(e){if(e=E.sanitizeText(e,D()),d.records.branches.has(e)){d.records.currBranch=e;let t=d.records.branches.get(d.records.currBranch);t===void 0||!t?d.records.head=null:d.records.head=d.records.commits.get(t)??null}else{let t=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${e}")`);throw t.hash={text:`checkout ${e}`,token:`checkout ${e}`,expected:[`branch ${e}`]},t}},"checkout");function X(e,t,r){let s=e.indexOf(t);s===-1?e.push(r):e.splice(s,1,r)}l(X,"upsert");function Q(e){let t=e.reduce((n,i)=>n.seq>i.seq?n:i,e[0]),r="";e.forEach(function(n){n===t?r+=" *":r+=" |"});let s=[r,t.id,t.seq];for(let n in d.records.branches)d.records.branches.get(n)===t.id&&s.push(n);if(w.debug(s.join(" ")),t.parents&&t.parents.length==2&&t.parents[0]&&t.parents[1]){let n=d.records.commits.get(t.parents[0]);X(e,t,n),t.parents[1]&&e.push(d.records.commits.get(t.parents[1]))}else{if(t.parents.length==0)return;if(t.parents[0]){let n=d.records.commits.get(t.parents[0]);X(e,t,n)}}e=we(e,n=>n.id),Q(e)}l(Q,"prettyPrintCommitHistory");var We=l(function(){w.debug(d.records.commits);let e=ke()[0];Q([e])},"prettyPrint"),qe=l(function(){d.reset(),ne()},"clear"),Ae=l(function(){return[...d.records.branchConfig.values()].map((t,r)=>t.order!==null&&t.order!==void 0?t:re(F({},t),{order:parseFloat(`0.${r}`)})).sort((t,r)=>(t.order??0)-(r.order??0)).map(({name:t})=>({name:t}))},"getBranchesAsObjArray"),He=l(function(){return d.records.branches},"getBranches"),Se=l(function(){return d.records.commits},"getCommits"),ke=l(function(){let e=[...d.records.commits.values()];return e.forEach(function(t){w.debug(t.id)}),e.sort((t,r)=>t.seq-r.seq),e},"getCommitsArray"),Ne=l(function(){return d.records.currBranch},"getCurrentBranch"),Fe=l(function(){return d.records.direction},"getDirection"),ze=l(function(){return d.records.head},"getHead"),Ce={commitType:x,getConfig:D,setDirection:Pe,setOptions:Re,getOptions:Oe,commit:Ie,branch:_e,merge:Ge,cherryPick:De,checkout:Be,prettyPrint:We,clear:qe,getBranchesAsObjArray:Ae,getBranches:He,getCommits:Se,getCommitsArray:ke,getCurrentBranch:Ne,getDirection:Fe,getHead:ze,setAccTitle:ce,getAccTitle:ie,getAccDescription:he,setAccDescription:de,setDiagramTitle:le,getDiagramTitle:me},Ye=l((e,t)=>{ye(e,t),e.dir&&t.setDirection(e.dir);for(let r of e.statements)je(r,t)},"populate"),je=l((e,t)=>{let s={Commit:l(n=>t.commit(Ke(n)),"Commit"),Branch:l(n=>t.branch(Ue(n)),"Branch"),Merge:l(n=>t.merge(Ve(n)),"Merge"),Checkout:l(n=>t.checkout(Ze(n)),"Checkout"),CherryPicking:l(n=>t.cherryPick(Xe(n)),"CherryPicking")}[e.$type];s?s(e):w.error(`Unknown statement type: ${e.$type}`)},"parseStatement"),Ke=l(e=>({id:e.id,msg:e.message??"",type:e.type!==void 0?x[e.type]:x.NORMAL,tags:e.tags??void 0}),"parseCommit"),Ue=l(e=>({name:e.name,order:e.order??0}),"parseBranch"),Ve=l(e=>({branch:e.branch,id:e.id??"",type:e.type!==void 0?x[e.type]:void 0,tags:e.tags??void 0}),"parseMerge"),Ze=l(e=>e.branch,"parseCheckout"),Xe=l(e=>({id:e.id,targetId:"",tags:e.tags?.length===0?void 0:e.tags,parent:e.parent}),"parseCherryPicking"),Je={parse:l(e=>ae(null,null,function*(){let t=yield ue("gitGraph",e);w.debug(t),Ye(t,Ce)}),"parse")},O=10,I=40,L=4,P=2,_=8,U=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),J=12,ee=new Set(["redux-color","redux-dark-color"]),Qe=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),G=l((e,t,r=!1)=>r&&e>0?(e-1)%(t-1)+1:e%t,"calcColorIndex"),C=new Map,v=new Map,Y=30,H=new Map,j=[],R=0,p="LR",et=l(()=>{C.clear(),v.clear(),H.clear(),R=0,j=[],p="LR"},"clear"),ve=l(e=>{let t=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof e=="string"?e.split(/\\n|\n|/gi):e).forEach(s=>{let n=document.createElementNS("http://www.w3.org/2000/svg","tspan");n.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),n.setAttribute("dy","1em"),n.setAttribute("x","0"),n.setAttribute("class","row"),n.textContent=s.trim(),t.appendChild(n)}),t},"drawText"),Ee=l(e=>{let t,r,s;return p==="BT"?(r=l((n,i)=>n<=i,"comparisonFunc"),s=1/0):(r=l((n,i)=>n>=i,"comparisonFunc"),s=0),e.forEach(n=>{let i=p==="TB"||p=="BT"?v.get(n)?.y:v.get(n)?.x;i!==void 0&&r(i,s)&&(t=n,s=i)}),t},"findClosestParent"),tt=l(e=>{let t="",r=1/0;return e.forEach(s=>{let n=v.get(s).y;n<=r&&(t=s,r=n)}),t||void 0},"findClosestParentBT"),rt=l((e,t,r)=>{let s=r,n=r,i=[];e.forEach(o=>{let a=t.get(o);if(!a)throw new Error(`Commit not found for key ${o}`);a.parents.length?(s=ot(a),n=Math.max(s,n)):i.push(a),st(a,s)}),s=n,i.forEach(o=>{nt(o,s,r)}),e.forEach(o=>{let a=t.get(o);if(a?.parents.length){let h=tt(a.parents);s=v.get(h).y-I,s<=n&&(n=s);let g=C.get(a.branch).pos,f=s-O;v.set(a.id,{x:g,y:f})}})},"setParallelBTPos"),at=l(e=>{let t=Ee(e.parents.filter(s=>s!==null));if(!t)throw new Error(`Closest parent not found for commit ${e.id}`);let r=v.get(t)?.y;if(r===void 0)throw new Error(`Closest parent position not found for commit ${e.id}`);return r},"findClosestParentPos"),ot=l(e=>at(e)+I,"calculateCommitPosition"),st=l((e,t)=>{let r=C.get(e.branch);if(!r)throw new Error(`Branch not found for commit ${e.id}`);let s=r.pos,n=t+O;return v.set(e.id,{x:s,y:n}),{x:s,y:n}},"setCommitPosition"),nt=l((e,t,r)=>{let s=C.get(e.branch);if(!s)throw new Error(`Branch not found for commit ${e.id}`);let n=t+r,i=s.pos;v.set(e.id,{x:i,y:n})},"setRootPosition"),ct=l((e,t,r,s,n,i)=>{let{theme:o}=q(),a=U.has(o??""),h=ee.has(o??""),g=Qe.has(o??"");if(i===x.HIGHLIGHT)e.append("rect").attr("x",r.x-10+(a?3:0)).attr("y",r.y-10+(a?3:0)).attr("width",a?14:20).attr("height",a?14:20).attr("class",`commit ${t.id} commit-highlight${G(n,_,h)} ${s}-outer`),e.append("rect").attr("x",r.x-6+(a?2:0)).attr("y",r.y-6+(a?2:0)).attr("width",a?8:12).attr("height",a?8:12).attr("class",`commit ${t.id} commit${G(n,_,h)} ${s}-inner`);else if(i===x.CHERRY_PICK)e.append("circle").attr("cx",r.x).attr("cy",r.y).attr("r",a?7:10).attr("class",`commit ${t.id} ${s}`),e.append("circle").attr("cx",r.x-3).attr("cy",r.y+2).attr("r",a?2.5:2.75).attr("fill",g?"#000000":"#fff").attr("class",`commit ${t.id} ${s}`),e.append("circle").attr("cx",r.x+3).attr("cy",r.y+2).attr("r",a?2.5:2.75).attr("fill",g?"#000000":"#fff").attr("class",`commit ${t.id} ${s}`),e.append("line").attr("x1",r.x+3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke",g?"#000000":"#fff").attr("class",`commit ${t.id} ${s}`),e.append("line").attr("x1",r.x-3).attr("y1",r.y+1).attr("x2",r.x).attr("y2",r.y-5).attr("stroke",g?"#000000":"#fff").attr("class",`commit ${t.id} ${s}`);else{let f=e.append("circle");if(f.attr("cx",r.x),f.attr("cy",r.y),f.attr("r",a?7:10),f.attr("class",`commit ${t.id} commit${G(n,_,h)}`),i===x.MERGE){let m=e.append("circle");m.attr("cx",r.x),m.attr("cy",r.y),m.attr("r",a?5:6),m.attr("class",`commit ${s} ${t.id} commit${G(n,_,h)}`)}if(i===x.REVERSE){let m=e.append("path"),c=a?4:5;m.attr("d",`M ${r.x-c},${r.y-c}L${r.x+c},${r.y+c}M${r.x-c},${r.y+c}L${r.x+c},${r.y-c}`).attr("class",`commit ${s} ${t.id} commit${G(n,_,h)}`)}}},"drawCommitBullet"),it=l((e,t,r,s,n)=>{if(t.type!==x.CHERRY_PICK&&(t.customId&&t.type===x.MERGE||t.type!==x.MERGE)&&n.showCommitLabel){let i=e.append("g"),o=i.insert("rect").attr("class","commit-label-bkg"),a=i.append("text").attr("x",s).attr("y",r.y+25).attr("class","commit-label").text(t.id),h=a.node()?.getBBox();if(h&&(o.attr("x",r.posWithOffset-h.width/2-P).attr("y",r.y+13.5).attr("width",h.width+2*P).attr("height",h.height+2*P),p==="TB"||p==="BT"?(o.attr("x",r.x-(h.width+4*L+5)).attr("y",r.y-12),a.attr("x",r.x-(h.width+4*L)).attr("y",r.y+h.height-12)):a.attr("x",r.posWithOffset-h.width/2),n.rotateCommitLabel))if(p==="TB"||p==="BT")a.attr("transform","rotate(-45, "+r.x+", "+r.y+")"),o.attr("transform","rotate(-45, "+r.x+", "+r.y+")");else{let g=-7.5-(h.width+10)/25*9.5,f=10+h.width/25*8.5;i.attr("transform","translate("+g+", "+f+") rotate(-45, "+s+", "+r.y+")")}}},"drawCommitLabel"),dt=l((e,t,r,s)=>{if(t.tags.length>0){let n=0,i=0,o=0,a=[];for(let h of t.tags.reverse()){let g=e.insert("polygon"),f=e.append("circle"),m=e.append("text").attr("y",r.y-16-n).attr("class","tag-label").text(h),c=m.node()?.getBBox();if(!c)throw new Error("Tag bbox not found");i=Math.max(i,c.width),o=Math.max(o,c.height),m.attr("x",r.posWithOffset-c.width/2),a.push({tag:m,hole:f,rect:g,yOffset:n}),n+=20}for(let{tag:h,hole:g,rect:f,yOffset:m}of a){let c=o/2,y=r.y-19.2-m;if(f.attr("class","tag-label-bkg").attr("points",` + ${s-i/2-L/2},${y+P} + ${s-i/2-L/2},${y-P} + ${r.posWithOffset-i/2-L},${y-c-P} + ${r.posWithOffset+i/2+L},${y-c-P} + ${r.posWithOffset+i/2+L},${y+c+P} + ${r.posWithOffset-i/2-L},${y+c+P}`),g.attr("cy",y).attr("cx",s-i/2+L/2).attr("r",1.5).attr("class","tag-hole"),p==="TB"||p==="BT"){let $=s+m;f.attr("class","tag-label-bkg").attr("points",` + ${r.x},${$+2} + ${r.x},${$-2} + ${r.x+O},${$-c-2} + ${r.x+O+i+4},${$-c-2} + ${r.x+O+i+4},${$+c+2} + ${r.x+O},${$+c+2}`).attr("transform","translate(12,12) rotate(45, "+r.x+","+s+")"),g.attr("cx",r.x+L/2).attr("cy",$).attr("transform","translate(12,12) rotate(45, "+r.x+","+s+")"),h.attr("x",r.x+5).attr("y",$+3).attr("transform","translate(14,14) rotate(45, "+r.x+","+s+")")}}}},"drawCommitTags"),ht=l(e=>{switch(e.customType??e.type){case x.NORMAL:return"commit-normal";case x.REVERSE:return"commit-reverse";case x.HIGHLIGHT:return"commit-highlight";case x.MERGE:return"commit-merge";case x.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),lt=l((e,t,r,s)=>{let n={x:0,y:0};if(e.parents.length>0){let i=Ee(e.parents);if(i){let o=s.get(i)??n;return t==="TB"?o.y+I:t==="BT"?(s.get(e.id)??n).y-I:o.x+I}}else return t==="TB"?Y:t==="BT"?(s.get(e.id)??n).y-I:0;return 0},"calculatePosition"),mt=l((e,t,r)=>{let s=p==="BT"&&r?t:t+O,n=C.get(e.branch)?.pos,i=p==="TB"||p==="BT"?C.get(e.branch)?.pos:s;if(i===void 0||n===void 0)throw new Error(`Position were undefined for commit ${e.id}`);let o=U.has(q().theme??""),a=p==="TB"||p==="BT"?s:n+(o?J/2+1:-2);return{x:i,y:a,posWithOffset:s}},"getCommitPosition"),be=l((e,t,r,s)=>{let n=e.append("g").attr("class","commit-bullets"),i=e.append("g").attr("class","commit-labels"),o=p==="TB"||p==="BT"?Y:0,a=[...t.keys()],h=s.parallelCommits??!1,g=l((m,c)=>{let y=t.get(m)?.seq,$=t.get(c)?.seq;return y!==void 0&&$!==void 0?y-$:0},"sortKeys"),f=a.sort(g);p==="BT"&&(h&&rt(f,t,o),f=f.reverse()),f.forEach(m=>{let c=t.get(m);if(!c)throw new Error(`Commit not found for key ${m}`);h&&(o=lt(c,p,o,v));let y=mt(c,o,h);if(r){let $=ht(c),u=c.customType??c.type,b=C.get(c.branch)?.index??0;ct(n,c,y,$,b,u),it(i,c,y,o,s),dt(i,c,y,o)}p==="TB"||p==="BT"?v.set(c.id,{x:y.x,y:y.posWithOffset}):v.set(c.id,{x:y.posWithOffset,y:y.y}),o=p==="BT"&&h?o+I:o+I+O,o>R&&(R=o)})},"drawCommits"),gt=l((e,t,r,s,n)=>{let o=(p==="TB"||p==="BT"?r.xg.branch===o,"isOnBranchToGetCurve"),h=l(g=>g.seq>e.seq&&g.seqh(g)&&a(g))},"shouldRerouteArrow"),S=l((e,t,r=0)=>{let s=e+Math.abs(e-t)/2;if(r>5)return s;if(j.every(o=>Math.abs(o-s)>=10))return j.push(s),s;let i=Math.abs(e-t);return S(e,t-i/5,r+1)},"findLane"),ft=l((e,t,r,s)=>{let{theme:n}=q(),i=ee.has(n??""),o=v.get(t.id),a=v.get(r.id);if(o===void 0||a===void 0)throw new Error(`Commit positions not found for commits ${t.id} and ${r.id}`);let h=gt(t,r,o,a,s),g="",f="",m=0,c=0,y=C.get(r.branch)?.index;r.type===x.MERGE&&t.id!==r.parents[0]&&(y=C.get(t.branch)?.index);let $;if(h){g="A 10 10, 0, 0, 0,",f="A 10 10, 0, 0, 1,",m=10,c=10;let u=o.ya.x&&(g="A 20 20, 0, 0, 0,",f="A 20 20, 0, 0, 1,",m=20,c=20,r.type===x.MERGE&&t.id!==r.parents[0]?$=`M ${o.x} ${o.y} L ${o.x} ${a.y-m} ${f} ${o.x-c} ${a.y} L ${a.x} ${a.y}`:$=`M ${o.x} ${o.y} L ${a.x+m} ${o.y} ${g} ${a.x} ${o.y+c} L ${a.x} ${a.y}`),o.x===a.x&&($=`M ${o.x} ${o.y} L ${a.x} ${a.y}`)):p==="BT"?(o.xa.x&&(g="A 20 20, 0, 0, 0,",f="A 20 20, 0, 0, 1,",m=20,c=20,r.type===x.MERGE&&t.id!==r.parents[0]?$=`M ${o.x} ${o.y} L ${o.x} ${a.y+m} ${g} ${o.x-c} ${a.y} L ${a.x} ${a.y}`:$=`M ${o.x} ${o.y} L ${a.x+m} ${o.y} ${f} ${a.x} ${o.y-c} L ${a.x} ${a.y}`),o.x===a.x&&($=`M ${o.x} ${o.y} L ${a.x} ${a.y}`)):(o.ya.y&&(r.type===x.MERGE&&t.id!==r.parents[0]?$=`M ${o.x} ${o.y} L ${a.x-m} ${o.y} ${g} ${a.x} ${o.y-c} L ${a.x} ${a.y}`:$=`M ${o.x} ${o.y} L ${o.x} ${a.y+m} ${f} ${o.x+c} ${a.y} L ${a.x} ${a.y}`),o.y===a.y&&($=`M ${o.x} ${o.y} L ${a.x} ${a.y}`));if($===void 0)throw new Error("Line definition not found");e.append("path").attr("d",$).attr("class","arrow arrow"+G(y,_,i))},"drawArrow"),$t=l((e,t)=>{let r=e.append("g").attr("class","commit-arrows");[...t.keys()].forEach(s=>{let n=t.get(s);n.parents&&n.parents.length>0&&n.parents.forEach(i=>{ft(r,t.get(i),n,t)})})},"drawArrows"),pt=l((e,t,r,s)=>{let{look:n,theme:i,themeVariables:o}=q(),{dropShadow:a,THEME_COLOR_LIMIT:h}=o,g=U.has(i??""),f=ee.has(i??""),m=e.append("g");t.forEach((c,y)=>{let $=G(y,g?h:_,f),u=C.get(c.name)?.pos;if(u===void 0)throw new Error(`Position not found for branch ${c.name}`);let b=p==="TB"||p==="BT"?u:g?u+J/2+1:u-2,B=m.append("line");B.attr("x1",0),B.attr("y1",b),B.attr("x2",R),B.attr("y2",b),B.attr("class","branch branch"+$),p==="TB"?(B.attr("y1",Y),B.attr("x1",u),B.attr("y2",R),B.attr("x2",u)):p==="BT"&&(B.attr("y1",R),B.attr("x1",u),B.attr("y2",Y),B.attr("x2",u)),j.push(b);let V=c.name,A=ve(V),T=m.insert("rect"),M=m.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+$);M.node().appendChild(A);let k=A.getBBox(),te=g?0:4,N=g?16:0,W=g?J:0;n==="neo"&&T.attr("data-look","neo"),T.attr("class","branchLabelBkg label"+$).attr("style",n==="neo"?`filter:${g?`url(#${s}-drop-shadow)`:a}`:"").attr("rx",te).attr("ry",te).attr("x",-k.width-4-(r.rotateCommitLabel===!0?30:0)).attr("y",-k.height/2+10).attr("width",k.width+18+N).attr("height",k.height+4+W),M.attr("transform","translate("+(-k.width-14-(r.rotateCommitLabel===!0?30:0)+N/2)+", "+(b-k.height/2-2)+")"),p==="TB"?(T.attr("x",u-k.width/2-10).attr("y",0),M.attr("transform","translate("+(u-k.width/2-5)+", 0)"),g&&(T.attr("transform",`translate(${-N/2-3}, ${-W-10})`),M.attr("transform","translate("+(u-k.width/2-5)+", "+(-W*2+7)+")"))):p==="BT"?(T.attr("x",u-k.width/2-10).attr("y",R),M.attr("transform","translate("+(u-k.width/2-5)+", "+R+")"),g&&(T.attr("transform",`translate(${-N/2-3}, ${W+10})`),M.attr("transform","translate("+(u-k.width/2-5)+", "+(R+W*2+4)+")"))):T.attr("transform","translate(-19, "+(b-12-W/2)+")")})},"drawBranches"),yt=l(function(e,t,r,s,n){return C.set(e,{pos:t,index:r}),t+=50+(n?40:0)+(p==="TB"||p==="BT"?s.width/2:0),t},"setBranchPosition"),xt=l(function(e,t,r,s){et(),w.debug("in gitgraph renderer",e+` +`,"id:",t,r);let n=s.db;if(!n.getConfig){w.error("getConfig method is not available on db");return}let i=n.getConfig(),o=i.rotateCommitLabel??!1;H=n.getCommits();let a=n.getBranchesAsObjArray();p=n.getDirection();let h=oe(`[id="${t}"]`),{look:g,theme:f,themeVariables:m}=q(),{useGradient:c,gradientStart:y,gradientStop:$,filterColor:u}=m;if(c){let B=h.append("defs").append("linearGradient").attr("id",t+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");B.append("stop").attr("offset","0%").attr("stop-color",y).attr("stop-opacity",1),B.append("stop").attr("offset","100%").attr("stop-color",$).attr("stop-opacity",1)}g==="neo"&&U.has(f??"")&&h.append("defs").append("filter").attr("id",t+"-drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",u);let b=0;a.forEach((B,V)=>{let A=ve(B.name),T=h.append("g"),Z=T.insert("g").attr("class","branchLabel"),M=Z.insert("g").attr("class","label branch-label");M.node()?.appendChild(A);let k=A.getBBox();b=yt(B.name,b,V,k,o),M.remove(),Z.remove(),T.remove()}),be(h,H,!1,i),i.showBranches&&pt(h,a,i,t),$t(h,H),be(h,H,!0,i),pe.insertTitle(h,"gitTitleText",i.titleTopMargin??0,n.getDiagramTitle()),ge(void 0,h,i.diagramPadding,i.useMaxWidth)},"draw"),ut={draw:xt},Te=8,Le=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),bt=new Set(["redux-color","redux-dark-color"]),wt=new Set(["neo","neo-dark"]),Bt=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),kt=new Set(["redux","redux-dark","redux-color","redux-dark-color","neo","neo-dark"]),Ct=l(e=>{let{svgId:t}=e,r="";if(e.useGradient&&t)for(let s=0;s{let t=z(),{theme:r,themeVariables:s}=t,{borderColorArray:n}=s,i=Le.has(r);if(wt.has(r)){let o="";for(let a=0;a`${Array.from({length:e.THEME_COLOR_LIMIT},(t,r)=>r).map(t=>{let r=t%Te;return` + .branch-label${t} { fill: ${e["gitBranchLabel"+r]}; } + .commit${t} { stroke: ${e["git"+r]}; fill: ${e["git"+r]}; } + .commit-highlight${t} { stroke: ${e["gitInv"+r]}; fill: ${e["gitInv"+r]}; } + .label${t} { fill: ${e["git"+r]}; } + .arrow${t} { stroke: ${e["git"+r]}; } + `}).join(` +`)}`,"normalTheme"),Tt=l(e=>{let t=z(),{theme:r}=t,s=kt.has(r);return` + .commit-id, + .commit-msg, + .branch-label { + fill: lightgrey; + color: lightgrey; + font-family: 'trebuchet ms', verdana, arial, sans-serif; + font-family: var(--mermaid-font-family); + } + + ${s?vt(e):Et(e)} + + .branch { + stroke-width: ${e.strokeWidth}; + stroke: ${e.commitLineColor??e.lineColor}; + stroke-dasharray: ${s?"4 2":"2"}; + } + .commit-label { font-size: ${e.commitLabelFontSize}; fill: ${s?e.nodeBorder:e.commitLabelColor}; ${s?`font-weight:${e.noteFontWeight};`:""}} + .commit-label-bkg { font-size: ${e.commitLabelFontSize}; fill: ${s?"transparent":e.commitLabelBackground}; opacity: ${s?"":.5}; } + .tag-label { font-size: ${e.tagLabelFontSize}; fill: ${e.tagLabelColor};} + .tag-label-bkg { fill: ${s?e.mainBkg:e.tagLabelBackground}; stroke: ${s?e.nodeBorder:e.tagLabelBorder}; ${s?`filter:${e.dropShadow}`:""} } + .tag-hole { fill: ${e.textColor}; } + + .commit-merge { + stroke: ${s?e.mainBkg:e.primaryColor}; + fill: ${s?e.mainBkg:e.primaryColor}; + } + .commit-reverse { + stroke: ${s?e.mainBkg:e.primaryColor}; + fill: ${s?e.mainBkg:e.primaryColor}; + stroke-width: ${s?e.strokeWidth:3}; + } + .commit-highlight-outer { + } + .commit-highlight-inner { + stroke: ${s?e.mainBkg:e.primaryColor}; + fill: ${s?e.mainBkg:e.primaryColor}; + } + + .arrow { + /* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */ + stroke-width: ${Le.has(r)?e.strokeWidth:8}; + stroke-linecap: round; + fill: none + } + .gitTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; + } +`},"getStyles"),Lt=Tt,Dt={parser:Je,db:Ce,renderer:ut,styles:Lt};export{Dt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-V2DCVTQX.js b/src/google/adk/cli/browser/chunk-6HSYUS5O.js similarity index 99% rename from src/google/adk/cli/browser/chunk-V2DCVTQX.js rename to src/google/adk/cli/browser/chunk-6HSYUS5O.js index 0b2c747212..95b72290d0 100644 --- a/src/google/adk/cli/browser/chunk-V2DCVTQX.js +++ b/src/google/adk/cli/browser/chunk-6HSYUS5O.js @@ -1,4 +1,4 @@ -import{G as re,N as se,R as oe,S as le,T as he,U as ce,V as de,W as ue,X as Dt,Y as qt,p as ne,r as L}from"./chunk-QFMJV7VH.js";import{a as mt,g as s,i as dt,t as zt}from"./chunk-JRNAXTJ7.js";import{a as Q}from"./chunk-RMXJBC7V.js";var Vt=(function(){var t=s(function(Y,r,l,u){for(l=l||{},u=Y.length;u--;l[Y[u]]=r);return l},"o"),a=[1,3],p=[1,4],f=[1,5],o=[1,6],x=[1,7],_=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],h=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],c=[55,56,57],k=[2,36],m=[1,37],q=[1,36],y=[1,38],b=[1,35],T=[1,43],g=[1,41],ot=[1,14],ut=[1,23],xt=[1,18],ft=[1,19],gt=[1,20],lt=[1,21],_t=[1,22],ht=[1,24],i=[1,25],wt=[1,26],Bt=[1,27],Rt=[1,28],Nt=[1,29],W=[1,32],U=[1,33],A=[1,34],F=[1,39],P=[1,40],v=[1,42],C=[1,44],H=[1,62],X=[1,61],E=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],Wt=[1,65],Ut=[1,66],Qt=[1,67],Ot=[1,68],Ht=[1,69],Xt=[1,70],Mt=[1,71],Yt=[1,72],jt=[1,73],Gt=[1,74],Kt=[1,75],Zt=[1,76],w=[4,5,6,7,8,9,10,11,12,13,14,15,18],K=[1,90],Z=[1,91],J=[1,92],$=[1,99],tt=[1,93],et=[1,96],it=[1,94],at=[1,95],nt=[1,97],rt=[1,98],At=[1,102],Jt=[10,55,56,57],R=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],Ft={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:s(function(r,l,u,d,S,e,ct){var n=e.length-1;switch(S){case 23:this.$=e[n];break;case 24:this.$=e[n-1]+""+e[n];break;case 26:this.$=e[n-1]+e[n];break;case 27:this.$=[e[n].trim()];break;case 28:e[n-2].push(e[n].trim()),this.$=e[n-2];break;case 29:this.$=e[n-4],d.addClass(e[n-2],e[n]);break;case 37:this.$=[];break;case 42:this.$=e[n].trim(),d.setDiagramTitle(this.$);break;case 43:this.$=e[n].trim(),d.setAccTitle(this.$);break;case 44:case 45:this.$=e[n].trim(),d.setAccDescription(this.$);break;case 46:d.addSection(e[n].substr(8)),this.$=e[n].substr(8);break;case 47:d.addPoint(e[n-3],"",e[n-1],e[n],[]);break;case 48:d.addPoint(e[n-4],e[n-3],e[n-1],e[n],[]);break;case 49:d.addPoint(e[n-4],"",e[n-2],e[n-1],e[n]);break;case 50:d.addPoint(e[n-5],e[n-4],e[n-2],e[n-1],e[n]);break;case 51:d.setXAxisLeftText(e[n-2]),d.setXAxisRightText(e[n]);break;case 52:e[n-1].text+=" \u27F6 ",d.setXAxisLeftText(e[n-1]);break;case 53:d.setXAxisLeftText(e[n]);break;case 54:d.setYAxisBottomText(e[n-2]),d.setYAxisTopText(e[n]);break;case 55:e[n-1].text+=" \u27F6 ",d.setYAxisBottomText(e[n-1]);break;case 56:d.setYAxisBottomText(e[n]);break;case 57:d.setQuadrant1Text(e[n]);break;case 58:d.setQuadrant2Text(e[n]);break;case 59:d.setQuadrant3Text(e[n]);break;case 60:d.setQuadrant4Text(e[n]);break;case 64:this.$={text:e[n],type:"text"};break;case 65:this.$={text:e[n-1].text+""+e[n],type:e[n-1].type};break;case 66:this.$={text:e[n],type:"text"};break;case 67:this.$={text:e[n],type:"markdown"};break;case 68:this.$=e[n];break;case 69:this.$=e[n-1]+""+e[n];break}},"anonymous"),table:[{18:a,26:1,27:2,28:p,55:f,56:o,57:x},{1:[3]},{18:a,26:8,27:2,28:p,55:f,56:o,57:x},{18:a,26:9,27:2,28:p,55:f,56:o,57:x},t(_,[2,33],{29:10}),t(h,[2,61]),t(h,[2,62]),t(h,[2,63]),{1:[2,30]},{1:[2,31]},t(c,k,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:m,5:q,10:y,12:b,13:T,14:g,18:ot,25:ut,35:xt,37:ft,39:gt,41:lt,42:_t,48:ht,50:i,51:wt,52:Bt,53:Rt,54:Nt,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),t(_,[2,34]),{27:45,55:f,56:o,57:x},t(c,[2,37]),t(c,k,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:m,5:q,10:y,12:b,13:T,14:g,18:ot,25:ut,35:xt,37:ft,39:gt,41:lt,42:_t,48:ht,50:i,51:wt,52:Bt,53:Rt,54:Nt,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),t(c,[2,39]),t(c,[2,40]),t(c,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(c,[2,45]),t(c,[2,46]),{18:[1,50]},{4:m,5:q,10:y,12:b,13:T,14:g,43:51,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:52,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:53,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:54,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:55,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:56,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,44:[1,57],47:[1,58],58:60,59:59,63:A,64:F,65:P,66:v,67:C},t(E,[2,64]),t(E,[2,66]),t(E,[2,67]),t(E,[2,70]),t(E,[2,71]),t(E,[2,72]),t(E,[2,73]),t(E,[2,74]),t(E,[2,75]),t(E,[2,76]),t(E,[2,77]),t(E,[2,78]),t(E,[2,79]),t(E,[2,80]),t(_,[2,35]),t(c,[2,38]),t(c,[2,42]),t(c,[2,43]),t(c,[2,44]),{3:64,4:Wt,5:Ut,6:Qt,7:Ot,8:Ht,9:Xt,10:Mt,11:Yt,12:jt,13:Gt,14:Kt,15:Zt,21:63},t(c,[2,53],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,49:[1,77],63:A,64:F,65:P,66:v,67:C}),t(c,[2,56],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,49:[1,78],63:A,64:F,65:P,66:v,67:C}),t(c,[2,57],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,58],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,59],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,60],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),{45:[1,79]},{44:[1,80]},t(E,[2,65]),t(E,[2,81]),t(E,[2,82]),t(E,[2,83]),{3:82,4:Wt,5:Ut,6:Qt,7:Ot,8:Ht,9:Xt,10:Mt,11:Yt,12:jt,13:Gt,14:Kt,15:Zt,18:[1,81]},t(w,[2,23]),t(w,[2,1]),t(w,[2,2]),t(w,[2,3]),t(w,[2,4]),t(w,[2,5]),t(w,[2,6]),t(w,[2,7]),t(w,[2,8]),t(w,[2,9]),t(w,[2,10]),t(w,[2,11]),t(w,[2,12]),t(c,[2,52],{58:31,43:83,4:m,5:q,10:y,12:b,13:T,14:g,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),t(c,[2,55],{58:31,43:84,4:m,5:q,10:y,12:b,13:T,14:g,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),{46:[1,85]},{45:[1,86]},{4:K,5:Z,6:J,8:$,11:tt,13:et,16:89,17:it,18:at,19:nt,20:rt,22:88,23:87},t(w,[2,24]),t(c,[2,51],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,54],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,47],{22:88,16:89,23:100,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt}),{46:[1,101]},t(c,[2,29],{10:At}),t(Jt,[2,27],{16:103,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt}),t(R,[2,25]),t(R,[2,13]),t(R,[2,14]),t(R,[2,15]),t(R,[2,16]),t(R,[2,17]),t(R,[2,18]),t(R,[2,19]),t(R,[2,20]),t(R,[2,21]),t(R,[2,22]),t(c,[2,49],{10:At}),t(c,[2,48],{22:88,16:89,23:104,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt}),{4:K,5:Z,6:J,8:$,11:tt,13:et,16:89,17:it,18:at,19:nt,20:rt,22:105},t(R,[2,26]),t(c,[2,50],{10:At}),t(Jt,[2,28],{16:103,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt})],defaultActions:{8:[2,30],9:[2,31]},parseError:s(function(r,l){if(l.recoverable)this.trace(r);else{var u=new Error(r);throw u.hash=l,u}},"parseError"),parse:s(function(r){var l=this,u=[0],d=[],S=[null],e=[],ct=this.table,n="",yt=0,$t=0,te=0,Ce=2,ee=1,Le=e.slice.call(arguments,1),D=Object.create(this.lexer),j={yy:{}};for(var Pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Pt)&&(j.yy[Pt]=this.yy[Pt]);D.setInput(r,j.yy),j.yy.lexer=D,j.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var vt=D.yylloc;e.push(vt);var Ee=D.options&&D.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function De(B){u.length=u.length-2*B,S.length=S.length-B,e.length=e.length-B}s(De,"popStack");function ie(){var B;return B=d.pop()||D.lex()||ee,typeof B!="number"&&(B instanceof Array&&(d=B,B=d.pop()),B=l.symbols_[B]||B),B}s(ie,"lex");for(var V,Ct,G,N,We,Lt,st={},bt,M,ae,Tt;;){if(G=u[u.length-1],this.defaultActions[G]?N=this.defaultActions[G]:((V===null||typeof V>"u")&&(V=ie()),N=ct[G]&&ct[G][V]),typeof N>"u"||!N.length||!N[0]){var Et="";Tt=[];for(bt in ct[G])this.terminals_[bt]&&bt>Ce&&Tt.push("'"+this.terminals_[bt]+"'");D.showPosition?Et="Parse error on line "+(yt+1)+`: +import{G as re,N as se,R as oe,S as le,T as he,U as ce,V as de,W as ue,X as Dt,Y as qt,p as ne,r as L}from"./chunk-37QI3DOO.js";import{a as mt,g as s,i as dt,t as zt}from"./chunk-JRNAXTJ7.js";import{a as Q}from"./chunk-RMXJBC7V.js";var Vt=(function(){var t=s(function(Y,r,l,u){for(l=l||{},u=Y.length;u--;l[Y[u]]=r);return l},"o"),a=[1,3],p=[1,4],f=[1,5],o=[1,6],x=[1,7],_=[1,4,5,10,12,13,14,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],h=[1,4,5,10,12,13,14,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],c=[55,56,57],k=[2,36],m=[1,37],q=[1,36],y=[1,38],b=[1,35],T=[1,43],g=[1,41],ot=[1,14],ut=[1,23],xt=[1,18],ft=[1,19],gt=[1,20],lt=[1,21],_t=[1,22],ht=[1,24],i=[1,25],wt=[1,26],Bt=[1,27],Rt=[1,28],Nt=[1,29],W=[1,32],U=[1,33],A=[1,34],F=[1,39],P=[1,40],v=[1,42],C=[1,44],H=[1,62],X=[1,61],E=[4,5,8,10,12,13,14,18,44,47,49,55,56,57,63,64,65,66,67],Wt=[1,65],Ut=[1,66],Qt=[1,67],Ot=[1,68],Ht=[1,69],Xt=[1,70],Mt=[1,71],Yt=[1,72],jt=[1,73],Gt=[1,74],Kt=[1,75],Zt=[1,76],w=[4,5,6,7,8,9,10,11,12,13,14,15,18],K=[1,90],Z=[1,91],J=[1,92],$=[1,99],tt=[1,93],et=[1,96],it=[1,94],at=[1,95],nt=[1,97],rt=[1,98],At=[1,102],Jt=[10,55,56,57],R=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],Ft={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:s(function(r,l,u,d,S,e,ct){var n=e.length-1;switch(S){case 23:this.$=e[n];break;case 24:this.$=e[n-1]+""+e[n];break;case 26:this.$=e[n-1]+e[n];break;case 27:this.$=[e[n].trim()];break;case 28:e[n-2].push(e[n].trim()),this.$=e[n-2];break;case 29:this.$=e[n-4],d.addClass(e[n-2],e[n]);break;case 37:this.$=[];break;case 42:this.$=e[n].trim(),d.setDiagramTitle(this.$);break;case 43:this.$=e[n].trim(),d.setAccTitle(this.$);break;case 44:case 45:this.$=e[n].trim(),d.setAccDescription(this.$);break;case 46:d.addSection(e[n].substr(8)),this.$=e[n].substr(8);break;case 47:d.addPoint(e[n-3],"",e[n-1],e[n],[]);break;case 48:d.addPoint(e[n-4],e[n-3],e[n-1],e[n],[]);break;case 49:d.addPoint(e[n-4],"",e[n-2],e[n-1],e[n]);break;case 50:d.addPoint(e[n-5],e[n-4],e[n-2],e[n-1],e[n]);break;case 51:d.setXAxisLeftText(e[n-2]),d.setXAxisRightText(e[n]);break;case 52:e[n-1].text+=" \u27F6 ",d.setXAxisLeftText(e[n-1]);break;case 53:d.setXAxisLeftText(e[n]);break;case 54:d.setYAxisBottomText(e[n-2]),d.setYAxisTopText(e[n]);break;case 55:e[n-1].text+=" \u27F6 ",d.setYAxisBottomText(e[n-1]);break;case 56:d.setYAxisBottomText(e[n]);break;case 57:d.setQuadrant1Text(e[n]);break;case 58:d.setQuadrant2Text(e[n]);break;case 59:d.setQuadrant3Text(e[n]);break;case 60:d.setQuadrant4Text(e[n]);break;case 64:this.$={text:e[n],type:"text"};break;case 65:this.$={text:e[n-1].text+""+e[n],type:e[n-1].type};break;case 66:this.$={text:e[n],type:"text"};break;case 67:this.$={text:e[n],type:"markdown"};break;case 68:this.$=e[n];break;case 69:this.$=e[n-1]+""+e[n];break}},"anonymous"),table:[{18:a,26:1,27:2,28:p,55:f,56:o,57:x},{1:[3]},{18:a,26:8,27:2,28:p,55:f,56:o,57:x},{18:a,26:9,27:2,28:p,55:f,56:o,57:x},t(_,[2,33],{29:10}),t(h,[2,61]),t(h,[2,62]),t(h,[2,63]),{1:[2,30]},{1:[2,31]},t(c,k,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:m,5:q,10:y,12:b,13:T,14:g,18:ot,25:ut,35:xt,37:ft,39:gt,41:lt,42:_t,48:ht,50:i,51:wt,52:Bt,53:Rt,54:Nt,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),t(_,[2,34]),{27:45,55:f,56:o,57:x},t(c,[2,37]),t(c,k,{24:13,32:15,33:16,34:17,43:30,58:31,31:46,4:m,5:q,10:y,12:b,13:T,14:g,18:ot,25:ut,35:xt,37:ft,39:gt,41:lt,42:_t,48:ht,50:i,51:wt,52:Bt,53:Rt,54:Nt,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),t(c,[2,39]),t(c,[2,40]),t(c,[2,41]),{36:[1,47]},{38:[1,48]},{40:[1,49]},t(c,[2,45]),t(c,[2,46]),{18:[1,50]},{4:m,5:q,10:y,12:b,13:T,14:g,43:51,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:52,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:53,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:54,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:55,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,10:y,12:b,13:T,14:g,43:56,58:31,60:W,61:U,63:A,64:F,65:P,66:v,67:C},{4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,44:[1,57],47:[1,58],58:60,59:59,63:A,64:F,65:P,66:v,67:C},t(E,[2,64]),t(E,[2,66]),t(E,[2,67]),t(E,[2,70]),t(E,[2,71]),t(E,[2,72]),t(E,[2,73]),t(E,[2,74]),t(E,[2,75]),t(E,[2,76]),t(E,[2,77]),t(E,[2,78]),t(E,[2,79]),t(E,[2,80]),t(_,[2,35]),t(c,[2,38]),t(c,[2,42]),t(c,[2,43]),t(c,[2,44]),{3:64,4:Wt,5:Ut,6:Qt,7:Ot,8:Ht,9:Xt,10:Mt,11:Yt,12:jt,13:Gt,14:Kt,15:Zt,21:63},t(c,[2,53],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,49:[1,77],63:A,64:F,65:P,66:v,67:C}),t(c,[2,56],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,49:[1,78],63:A,64:F,65:P,66:v,67:C}),t(c,[2,57],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,58],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,59],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,60],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),{45:[1,79]},{44:[1,80]},t(E,[2,65]),t(E,[2,81]),t(E,[2,82]),t(E,[2,83]),{3:82,4:Wt,5:Ut,6:Qt,7:Ot,8:Ht,9:Xt,10:Mt,11:Yt,12:jt,13:Gt,14:Kt,15:Zt,18:[1,81]},t(w,[2,23]),t(w,[2,1]),t(w,[2,2]),t(w,[2,3]),t(w,[2,4]),t(w,[2,5]),t(w,[2,6]),t(w,[2,7]),t(w,[2,8]),t(w,[2,9]),t(w,[2,10]),t(w,[2,11]),t(w,[2,12]),t(c,[2,52],{58:31,43:83,4:m,5:q,10:y,12:b,13:T,14:g,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),t(c,[2,55],{58:31,43:84,4:m,5:q,10:y,12:b,13:T,14:g,60:W,61:U,63:A,64:F,65:P,66:v,67:C}),{46:[1,85]},{45:[1,86]},{4:K,5:Z,6:J,8:$,11:tt,13:et,16:89,17:it,18:at,19:nt,20:rt,22:88,23:87},t(w,[2,24]),t(c,[2,51],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,54],{59:59,58:60,4:m,5:q,8:H,10:y,12:b,13:T,14:g,18:X,63:A,64:F,65:P,66:v,67:C}),t(c,[2,47],{22:88,16:89,23:100,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt}),{46:[1,101]},t(c,[2,29],{10:At}),t(Jt,[2,27],{16:103,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt}),t(R,[2,25]),t(R,[2,13]),t(R,[2,14]),t(R,[2,15]),t(R,[2,16]),t(R,[2,17]),t(R,[2,18]),t(R,[2,19]),t(R,[2,20]),t(R,[2,21]),t(R,[2,22]),t(c,[2,49],{10:At}),t(c,[2,48],{22:88,16:89,23:104,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt}),{4:K,5:Z,6:J,8:$,11:tt,13:et,16:89,17:it,18:at,19:nt,20:rt,22:105},t(R,[2,26]),t(c,[2,50],{10:At}),t(Jt,[2,28],{16:103,4:K,5:Z,6:J,8:$,11:tt,13:et,17:it,18:at,19:nt,20:rt})],defaultActions:{8:[2,30],9:[2,31]},parseError:s(function(r,l){if(l.recoverable)this.trace(r);else{var u=new Error(r);throw u.hash=l,u}},"parseError"),parse:s(function(r){var l=this,u=[0],d=[],S=[null],e=[],ct=this.table,n="",yt=0,$t=0,te=0,Ce=2,ee=1,Le=e.slice.call(arguments,1),D=Object.create(this.lexer),j={yy:{}};for(var Pt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Pt)&&(j.yy[Pt]=this.yy[Pt]);D.setInput(r,j.yy),j.yy.lexer=D,j.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var vt=D.yylloc;e.push(vt);var Ee=D.options&&D.options.ranges;typeof j.yy.parseError=="function"?this.parseError=j.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function De(B){u.length=u.length-2*B,S.length=S.length-B,e.length=e.length-B}s(De,"popStack");function ie(){var B;return B=d.pop()||D.lex()||ee,typeof B!="number"&&(B instanceof Array&&(d=B,B=d.pop()),B=l.symbols_[B]||B),B}s(ie,"lex");for(var V,Ct,G,N,We,Lt,st={},bt,M,ae,Tt;;){if(G=u[u.length-1],this.defaultActions[G]?N=this.defaultActions[G]:((V===null||typeof V>"u")&&(V=ie()),N=ct[G]&&ct[G][V]),typeof N>"u"||!N.length||!N[0]){var Et="";Tt=[];for(bt in ct[G])this.terminals_[bt]&&bt>Ce&&Tt.push("'"+this.terminals_[bt]+"'");D.showPosition?Et="Parse error on line "+(yt+1)+`: `+D.showPosition()+` Expecting `+Tt.join(", ")+", got '"+(this.terminals_[V]||V)+"'":Et="Parse error on line "+(yt+1)+": Unexpected "+(V==ee?"end of input":"'"+(this.terminals_[V]||V)+"'"),this.parseError(Et,{text:D.match,token:this.terminals_[V]||V,line:D.yylineno,loc:vt,expected:Tt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+G+", token: "+V);switch(N[0]){case 1:u.push(V),S.push(D.yytext),e.push(D.yylloc),u.push(N[1]),V=null,Ct?(V=Ct,Ct=null):($t=D.yyleng,n=D.yytext,yt=D.yylineno,vt=D.yylloc,te>0&&te--);break;case 2:if(M=this.productions_[N[1]][1],st.$=S[S.length-M],st._$={first_line:e[e.length-(M||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(M||1)].first_column,last_column:e[e.length-1].last_column},Ee&&(st._$.range=[e[e.length-(M||1)].range[0],e[e.length-1].range[1]]),Lt=this.performAction.apply(st,[n,$t,yt,j.yy,N[1],S,e].concat(Le)),typeof Lt<"u")return Lt;M&&(u=u.slice(0,-1*M*2),S=S.slice(0,-1*M),e=e.slice(0,-1*M)),u.push(this.productions_[N[1]][0]),S.push(st.$),e.push(st._$),ae=ct[u[u.length-2]][u[u.length-1]],u.push(ae);break;case 3:return!0}}return!0},"parse")},ve=(function(){var Y={EOF:1,parseError:s(function(l,u){if(this.yy.parser)this.yy.parser.parseError(l,u);else throw new Error(l)},"parseError"),setInput:s(function(r,l){return this.yy=l||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:s(function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var l=r.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},"input"),unput:s(function(r){var l=r.length,u=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var d=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),u.length-1&&(this.yylineno-=u.length-1);var S=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:u?(u.length===d.length?this.yylloc.first_column:0)+d[d.length-u.length].length-u[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[S[0],S[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},"unput"),more:s(function(){return this._more=!0,this},"more"),reject:s(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:s(function(r){this.unput(this.match.slice(r))},"less"),pastInput:s(function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:s(function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:s(function(){var r=this.pastInput(),l=new Array(r.length+1).join("-");return r+this.upcomingInput()+` diff --git a/src/google/adk/cli/browser/chunk-75WMU75S.js b/src/google/adk/cli/browser/chunk-75WMU75S.js deleted file mode 100644 index 38b07a71e3..0000000000 --- a/src/google/adk/cli/browser/chunk-75WMU75S.js +++ /dev/null @@ -1 +0,0 @@ -import{a as i,b as e,c as o,d as a}from"./chunk-TIJO3EOA.js";import"./chunk-B2DSW4QB.js";import"./chunk-NMKTPNXE.js";import"./chunk-APNCZOFE.js";import"./chunk-ST54LLJ3.js";import"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import"./chunk-QFMJV7VH.js";import{g as t}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";var y={parser:i,get db(){return new e},renderer:a,styles:o,init:t(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{y as diagram}; diff --git a/src/google/adk/cli/browser/chunk-2DLZXFEQ.js b/src/google/adk/cli/browser/chunk-7BGAJP6A.js similarity index 72% rename from src/google/adk/cli/browser/chunk-2DLZXFEQ.js rename to src/google/adk/cli/browser/chunk-7BGAJP6A.js index d133e1e057..8bac93d46a 100644 --- a/src/google/adk/cli/browser/chunk-2DLZXFEQ.js +++ b/src/google/adk/cli/browser/chunk-7BGAJP6A.js @@ -1 +1 @@ -import{a as i,b as o,c as t,d as n,e as c,f as e,g as u,i as d,p as G,q as l}from"./chunk-NALL4A3P.js";var p=class extends l{static{e(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},m={parser:{TokenBuilder:e(()=>new p,"TokenBuilder"),ValueConverter:e(()=>new G,"ValueConverter")}};function h(s=n){let r=t(o(s),u),a=t(i({shared:r}),d,m);return r.ServiceRegistry.register(a),{shared:r,GitGraph:a}}e(h,"createGitGraphServices");export{m as a,h as b}; +import{a as i,b as o,c as t,d as n,e as c,f as e,g as u,i as d,r as G,s as l}from"./chunk-7ZGKZ6HH.js";var p=class extends l{static{e(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},m={parser:{TokenBuilder:e(()=>new p,"TokenBuilder"),ValueConverter:e(()=>new G,"ValueConverter")}};function h(s=n){let r=t(o(s),u),a=t(i({shared:r}),d,m);return r.ServiceRegistry.register(a),{shared:r,GitGraph:a}}e(h,"createGitGraphServices");export{m as a,h as b}; diff --git a/src/google/adk/cli/browser/chunk-7CNYU4WA.js b/src/google/adk/cli/browser/chunk-7CNYU4WA.js new file mode 100644 index 0000000000..d0d255ac10 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-7CNYU4WA.js @@ -0,0 +1 @@ +import{a as e,b as r}from"./chunk-BWRTTESZ.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{e as TreemapModule,r as createTreemapServices}; diff --git a/src/google/adk/cli/browser/chunk-7UW26RYS.js b/src/google/adk/cli/browser/chunk-7UW26RYS.js deleted file mode 100644 index b1e248b6c7..0000000000 --- a/src/google/adk/cli/browser/chunk-7UW26RYS.js +++ /dev/null @@ -1 +0,0 @@ -import{a as e,b as r}from"./chunk-XULIXUQL.js";import"./chunk-NALL4A3P.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";export{e as TreemapModule,r as createTreemapServices}; diff --git a/src/google/adk/cli/browser/chunk-7ZGKZ6HH.js b/src/google/adk/cli/browser/chunk-7ZGKZ6HH.js new file mode 100644 index 0000000000..50dd9caa30 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-7ZGKZ6HH.js @@ -0,0 +1,161 @@ +import{C as mo,D as Nm,F as Ft,G as km,H as wm,K as bm,L as Xu,N as Im,n as Sm}from"./chunk-F57K64GP.js";import{a as ue,b as Mt,d as J$,e as H,f as _r,g as re,h as Vu,i as Hu,j as O}from"./chunk-RMXJBC7V.js";var Ol={};_r(Ol,{AnnotatedTextEdit:()=>kr,ChangeAnnotation:()=>_n,ChangeAnnotationIdentifier:()=>Ye,CodeAction:()=>jf,CodeActionContext:()=>Uf,CodeActionKind:()=>wg,CodeActionTriggerKind:()=>bl,CodeDescription:()=>Af,CodeLens:()=>zf,Color:()=>Cl,ColorInformation:()=>vf,ColorPresentation:()=>xf,Command:()=>On,CompletionItem:()=>If,CompletionItemKind:()=>xg,CompletionItemLabelDetails:()=>bf,CompletionItemTag:()=>Ag,CompletionList:()=>_f,CreateFile:()=>Oi,DeleteFile:()=>Li,Diagnostic:()=>fa,DiagnosticRelatedInformation:()=>Sl,DiagnosticSeverity:()=>$g,DiagnosticTag:()=>vg,DocumentHighlight:()=>Df,DocumentHighlightKind:()=>Sg,DocumentLink:()=>Bf,DocumentSymbol:()=>Gf,DocumentUri:()=>Tf,EOL:()=>CE,FoldingRange:()=>Ef,FoldingRangeKind:()=>Rg,FormattingOptions:()=>qf,Hover:()=>Of,InlayHint:()=>Jf,InlayHintKind:()=>Il,InlayHintLabelPart:()=>_l,InlineCompletionContext:()=>rd,InlineCompletionItem:()=>Qf,InlineCompletionList:()=>ed,InlineCompletionTriggerKind:()=>_g,InlineValueContext:()=>Yf,InlineValueEvaluatableExpression:()=>Xf,InlineValueText:()=>Vf,InlineValueVariableLookup:()=>Hf,InsertReplaceEdit:()=>wf,InsertTextFormat:()=>Eg,InsertTextMode:()=>Cg,Location:()=>ca,LocationLink:()=>$f,MarkedString:()=>ma,MarkupContent:()=>Di,MarkupKind:()=>wl,OptionalVersionedTextDocumentIdentifier:()=>pa,ParameterInformation:()=>Pf,Position:()=>ie,Range:()=>ee,RenameFile:()=>Pi,SelectedCompletionInfo:()=>td,SelectionRange:()=>Wf,SemanticTokenModifiers:()=>Ig,SemanticTokenTypes:()=>bg,SemanticTokens:()=>Kf,SignatureInformation:()=>Lf,StringValue:()=>Zf,SymbolInformation:()=>Mf,SymbolKind:()=>Ng,SymbolTag:()=>kg,TextDocument:()=>id,TextDocumentEdit:()=>da,TextDocumentIdentifier:()=>Sf,TextDocumentItem:()=>kf,TextEdit:()=>nr,URI:()=>Al,VersionedTextDocumentIdentifier:()=>Nf,WorkspaceChange:()=>Cf,WorkspaceEdit:()=>Nl,WorkspaceFolder:()=>nd,WorkspaceSymbol:()=>Ff,integer:()=>Rf,uinteger:()=>ua});var Tf,Al,Rf,ua,ie,ee,ca,$f,Cl,vf,xf,Rg,Ef,Sl,$g,vg,Af,fa,On,nr,_n,Ye,kr,da,Oi,Pi,Li,Nl,_i,kl,Cf,Sf,Nf,pa,kf,wl,Di,xg,Eg,Ag,wf,Cg,bf,If,_f,ma,Of,Pf,Lf,Sg,Df,Ng,kg,Mf,Ff,Gf,wg,bl,Uf,jf,zf,qf,Bf,Wf,bg,Ig,Kf,Vf,Hf,Xf,Yf,Il,_l,Jf,Zf,Qf,ed,_g,td,rd,nd,CE,id,sd,h,Mi=J$(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}t.is=e})(Tf||(Tf={}));(function(t){function e(r){return typeof r=="string"}t.is=e})(Al||(Al={}));(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(Rf||(Rf={}));(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(ua||(ua={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=ua.MAX_VALUE),i===Number.MAX_VALUE&&(i=ua.MAX_VALUE),{line:n,character:i}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&h.uinteger(i.line)&&h.uinteger(i.character)}t.is=r})(ie||(ie={}));(function(t){function e(n,i,s,a){if(h.uinteger(n)&&h.uinteger(i)&&h.uinteger(s)&&h.uinteger(a))return{start:ie.create(n,i),end:ie.create(s,a)};if(ie.is(n)&&ie.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${s}, ${a}]`)}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&ie.is(i.start)&&ie.is(i.end)}t.is=r})(ee||(ee={}));(function(t){function e(n,i){return{uri:n,range:i}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&ee.is(i.range)&&(h.string(i.uri)||h.undefined(i.uri))}t.is=r})(ca||(ca={}));(function(t){function e(n,i,s,a){return{targetUri:n,targetRange:i,targetSelectionRange:s,originSelectionRange:a}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&ee.is(i.targetRange)&&h.string(i.targetUri)&&ee.is(i.targetSelectionRange)&&(ee.is(i.originSelectionRange)||h.undefined(i.originSelectionRange))}t.is=r})($f||($f={}));(function(t){function e(n,i,s,a){return{red:n,green:i,blue:s,alpha:a}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&h.numberRange(i.red,0,1)&&h.numberRange(i.green,0,1)&&h.numberRange(i.blue,0,1)&&h.numberRange(i.alpha,0,1)}t.is=r})(Cl||(Cl={}));(function(t){function e(n,i){return{range:n,color:i}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&ee.is(i.range)&&Cl.is(i.color)}t.is=r})(vf||(vf={}));(function(t){function e(n,i,s){return{label:n,textEdit:i,additionalTextEdits:s}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&h.string(i.label)&&(h.undefined(i.textEdit)||nr.is(i))&&(h.undefined(i.additionalTextEdits)||h.typedArray(i.additionalTextEdits,nr.is))}t.is=r})(xf||(xf={}));Rg=(function(t){return t.Comment="comment",t.Imports="imports",t.Region="region",t})(Rg||{});(function(t){function e(n,i,s,a,o,l){let u={startLine:n,endLine:i};return h.defined(s)&&(u.startCharacter=s),h.defined(a)&&(u.endCharacter=a),h.defined(o)&&(u.kind=o),h.defined(l)&&(u.collapsedText=l),u}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&h.uinteger(i.startLine)&&h.uinteger(i.startLine)&&(h.undefined(i.startCharacter)||h.uinteger(i.startCharacter))&&(h.undefined(i.endCharacter)||h.uinteger(i.endCharacter))&&(h.undefined(i.kind)||h.string(i.kind))}t.is=r})(Ef||(Ef={}));(function(t){function e(n,i){return{location:n,message:i}}t.create=e;function r(n){let i=n;return h.defined(i)&&ca.is(i.location)&&h.string(i.message)}t.is=r})(Sl||(Sl={}));$g=(function(t){return t.Error=1,t.Warning=2,t.Information=3,t.Hint=4,t})($g||{}),vg=(function(t){return t.Unnecessary=1,t.Deprecated=2,t})(vg||{});(function(t){function e(r){let n=r;return h.objectLiteral(n)&&h.string(n.href)}t.is=e})(Af||(Af={}));(function(t){function e(n,i,s,a,o,l){let u={range:n,message:i};return h.defined(s)&&(u.severity=s),h.defined(a)&&(u.code=a),h.defined(o)&&(u.source=o),h.defined(l)&&(u.relatedInformation=l),u}t.create=e;function r(n){var i;let s=n;return h.defined(s)&&ee.is(s.range)&&h.string(s.message)&&(h.number(s.severity)||h.undefined(s.severity))&&(h.integer(s.code)||h.string(s.code)||h.undefined(s.code))&&(h.undefined(s.codeDescription)||h.string((i=s.codeDescription)===null||i===void 0?void 0:i.href))&&(h.string(s.source)||h.undefined(s.source))&&(h.undefined(s.relatedInformation)||h.typedArray(s.relatedInformation,Sl.is))}t.is=r})(fa||(fa={}));(function(t){function e(n,i,...s){let a={title:n,command:i};return h.defined(s)&&s.length>0&&(a.arguments=s),a}t.create=e;function r(n){let i=n;return h.defined(i)&&h.string(i.title)&&h.string(i.command)}t.is=r})(On||(On={}));(function(t){function e(s,a){return{range:s,newText:a}}t.replace=e;function r(s,a){return{range:{start:s,end:s},newText:a}}t.insert=r;function n(s){return{range:s,newText:""}}t.del=n;function i(s){let a=s;return h.objectLiteral(a)&&h.string(a.newText)&&ee.is(a.range)}t.is=i})(nr||(nr={}));(function(t){function e(n,i,s){let a={label:n};return i!==void 0&&(a.needsConfirmation=i),s!==void 0&&(a.description=s),a}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&h.string(i.label)&&(h.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(h.string(i.description)||i.description===void 0)}t.is=r})(_n||(_n={}));(function(t){function e(r){let n=r;return h.string(n)}t.is=e})(Ye||(Ye={}));(function(t){function e(s,a,o){return{range:s,newText:a,annotationId:o}}t.replace=e;function r(s,a,o){return{range:{start:s,end:s},newText:a,annotationId:o}}t.insert=r;function n(s,a){return{range:s,newText:"",annotationId:a}}t.del=n;function i(s){let a=s;return nr.is(a)&&(_n.is(a.annotationId)||Ye.is(a.annotationId))}t.is=i})(kr||(kr={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}t.create=e;function r(n){let i=n;return h.defined(i)&&pa.is(i.textDocument)&&Array.isArray(i.edits)}t.is=r})(da||(da={}));(function(t){function e(n,i,s){let a={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&h.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||h.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||h.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Ye.is(i.annotationId))}t.is=r})(Oi||(Oi={}));(function(t){function e(n,i,s,a){let o={kind:"rename",oldUri:n,newUri:i};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(o.options=s),a!==void 0&&(o.annotationId=a),o}t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&h.string(i.oldUri)&&h.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||h.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||h.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||Ye.is(i.annotationId))}t.is=r})(Pi||(Pi={}));(function(t){function e(n,i,s){let a={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&h.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||h.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||h.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||Ye.is(i.annotationId))}t.is=r})(Li||(Li={}));(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>h.string(i.kind)?Oi.is(i)||Pi.is(i)||Li.is(i):da.is(i)))}t.is=e})(Nl||(Nl={}));_i=class{constructor(e,r){this.edits=e,this.changeAnnotations=r}insert(e,r,n){let i,s;if(n===void 0?i=nr.insert(e,r):Ye.is(n)?(s=n,i=kr.insert(e,r,n)):(this.assertChangeAnnotations(this.changeAnnotations),s=this.changeAnnotations.manage(n),i=kr.insert(e,r,s)),this.edits.push(i),s!==void 0)return s}replace(e,r,n){let i,s;if(n===void 0?i=nr.replace(e,r):Ye.is(n)?(s=n,i=kr.replace(e,r,n)):(this.assertChangeAnnotations(this.changeAnnotations),s=this.changeAnnotations.manage(n),i=kr.replace(e,r,s)),this.edits.push(i),s!==void 0)return s}delete(e,r){let n,i;if(r===void 0?n=nr.del(e):Ye.is(r)?(i=r,n=kr.del(e,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=kr.del(e,i)),this.edits.push(n),i!==void 0)return i}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},kl=class{constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,r){let n;if(Ye.is(e)?n=e:(n=this.nextId(),r=e),this._annotations[n]!==void 0)throw new Error(`Id ${n} is already in use.`);if(r===void 0)throw new Error(`No annotation provided for id ${n}`);return this._annotations[n]=r,this._size++,n}nextId(){return this._counter++,this._counter.toString()}},Cf=class{constructor(e){this._textEditChanges=Object.create(null),e!==void 0?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new kl(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(r=>{if(da.is(r)){let n=new _i(r.edits,this._changeAnnotations);this._textEditChanges[r.textDocument.uri]=n}})):e.changes&&Object.keys(e.changes).forEach(r=>{let n=new _i(e.changes[r]);this._textEditChanges[r]=n})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(pa.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let r={uri:e.uri,version:e.version},n=this._textEditChanges[r.uri];if(!n){let i=[],s={textDocument:r,edits:i};this._workspaceEdit.documentChanges.push(s),n=new _i(i,this._changeAnnotations),this._textEditChanges[r.uri]=n}return n}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let r=this._textEditChanges[e];if(!r){let n=[];this._workspaceEdit.changes[e]=n,r=new _i(n),this._textEditChanges[e]=r}return r}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new kl,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;_n.is(r)||Ye.is(r)?i=r:n=r;let s,a;if(i===void 0?s=Oi.create(e,n):(a=Ye.is(i)?i:this._changeAnnotations.manage(i),s=Oi.create(e,n,a)),this._workspaceEdit.documentChanges.push(s),a!==void 0)return a}renameFile(e,r,n,i){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let s;_n.is(n)||Ye.is(n)?s=n:i=n;let a,o;if(s===void 0?a=Pi.create(e,r,i):(o=Ye.is(s)?s:this._changeAnnotations.manage(s),a=Pi.create(e,r,i,o)),this._workspaceEdit.documentChanges.push(a),o!==void 0)return o}deleteFile(e,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;_n.is(r)||Ye.is(r)?i=r:n=r;let s,a;if(i===void 0?s=Li.create(e,n):(a=Ye.is(i)?i:this._changeAnnotations.manage(i),s=Li.create(e,n,a)),this._workspaceEdit.documentChanges.push(s),a!==void 0)return a}};(function(t){function e(n){return{uri:n}}t.create=e;function r(n){let i=n;return h.defined(i)&&h.string(i.uri)}t.is=r})(Sf||(Sf={}));(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return h.defined(i)&&h.string(i.uri)&&h.integer(i.version)}t.is=r})(Nf||(Nf={}));(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return h.defined(i)&&h.string(i.uri)&&(i.version===null||h.integer(i.version))}t.is=r})(pa||(pa={}));(function(t){function e(n,i,s,a){return{uri:n,languageId:i,version:s,text:a}}t.create=e;function r(n){let i=n;return h.defined(i)&&h.string(i.uri)&&h.string(i.languageId)&&h.integer(i.version)&&h.string(i.text)}t.is=r})(kf||(kf={}));(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}t.is=e})(wl||(wl={}));(function(t){function e(r){let n=r;return h.objectLiteral(r)&&wl.is(n.kind)&&h.string(n.value)}t.is=e})(Di||(Di={}));xg=(function(t){return t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25,t})(xg||{}),Eg=(function(t){return t.PlainText=1,t.Snippet=2,t})(Eg||{}),Ag=(function(t){return t.Deprecated=1,t})(Ag||{});(function(t){function e(n,i,s){return{newText:n,insert:i,replace:s}}t.create=e;function r(n){let i=n;return i&&h.string(i.newText)&&ee.is(i.insert)&&ee.is(i.replace)}t.is=r})(wf||(wf={}));Cg=(function(t){return t.asIs=1,t.adjustIndentation=2,t})(Cg||{});(function(t){function e(r){let n=r;return n&&(h.string(n.detail)||n.detail===void 0)&&(h.string(n.description)||n.description===void 0)}t.is=e})(bf||(bf={}));(function(t){function e(r){return{label:r}}t.create=e})(If||(If={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}t.create=e})(_f||(_f={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}t.fromPlainText=e;function r(n){let i=n;return h.string(i)||h.objectLiteral(i)&&h.string(i.language)&&h.string(i.value)}t.is=r})(ma||(ma={}));(function(t){function e(r){let n=r;return!!n&&h.objectLiteral(n)&&(Di.is(n.contents)||ma.is(n.contents)||h.typedArray(n.contents,ma.is))&&(r.range===void 0||ee.is(r.range))}t.is=e})(Of||(Of={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}t.create=e})(Pf||(Pf={}));(function(t){function e(r,n,...i){let s={label:r};return h.defined(n)&&(s.documentation=n),h.defined(i)?s.parameters=i:s.parameters=[],s}t.create=e})(Lf||(Lf={}));Sg=(function(t){return t.Text=1,t.Read=2,t.Write=3,t})(Sg||{});(function(t){function e(r,n){let i={range:r};return h.number(n)&&(i.kind=n),i}t.create=e})(Df||(Df={}));Ng=(function(t){return t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26,t})(Ng||{}),kg=(function(t){return t.Deprecated=1,t})(kg||{});(function(t){function e(r,n,i,s,a){let o={name:r,kind:n,location:{uri:s,range:i}};return a&&(o.containerName=a),o}t.create=e})(Mf||(Mf={}));(function(t){function e(r,n,i,s){return s!==void 0?{name:r,kind:n,location:{uri:i,range:s}}:{name:r,kind:n,location:{uri:i}}}t.create=e})(Ff||(Ff={}));(function(t){function e(n,i,s,a,o,l){let u={name:n,detail:i,kind:s,range:a,selectionRange:o};return l!==void 0&&(u.children=l),u}t.create=e;function r(n){let i=n;return i&&h.string(i.name)&&h.number(i.kind)&&ee.is(i.range)&&ee.is(i.selectionRange)&&(i.detail===void 0||h.string(i.detail))&&(i.deprecated===void 0||h.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}t.is=r})(Gf||(Gf={}));wg=(function(t){return t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll",t})(wg||{}),bl=(function(t){return t.Invoked=1,t.Automatic=2,t})(bl||{});(function(t){function e(n,i,s){let a={diagnostics:n};return i!=null&&(a.only=i),s!=null&&(a.triggerKind=s),a}t.create=e;function r(n){let i=n;return h.defined(i)&&h.typedArray(i.diagnostics,fa.is)&&(i.only===void 0||h.typedArray(i.only,h.string))&&(i.triggerKind===void 0||i.triggerKind===bl.Invoked||i.triggerKind===bl.Automatic)}t.is=r})(Uf||(Uf={}));(function(t){function e(n,i,s){let a={title:n},o=!0;return typeof i=="string"?(o=!1,a.kind=i):On.is(i)?a.command=i:a.edit=i,o&&s!==void 0&&(a.kind=s),a}t.create=e;function r(n){let i=n;return i&&h.string(i.title)&&(i.diagnostics===void 0||h.typedArray(i.diagnostics,fa.is))&&(i.kind===void 0||h.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||On.is(i.command))&&(i.isPreferred===void 0||h.boolean(i.isPreferred))&&(i.edit===void 0||Nl.is(i.edit))}t.is=r})(jf||(jf={}));(function(t){function e(n,i){let s={range:n};return h.defined(i)&&(s.data=i),s}t.create=e;function r(n){let i=n;return h.defined(i)&&ee.is(i.range)&&(h.undefined(i.command)||On.is(i.command))}t.is=r})(zf||(zf={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}t.create=e;function r(n){let i=n;return h.defined(i)&&h.uinteger(i.tabSize)&&h.boolean(i.insertSpaces)}t.is=r})(qf||(qf={}));(function(t){function e(n,i,s){return{range:n,target:i,data:s}}t.create=e;function r(n){let i=n;return h.defined(i)&&ee.is(i.range)&&(h.undefined(i.target)||h.string(i.target))}t.is=r})(Bf||(Bf={}));(function(t){function e(n,i){return{range:n,parent:i}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&ee.is(i.range)&&(i.parent===void 0||t.is(i.parent))}t.is=r})(Wf||(Wf={}));bg=(function(t){return t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator",t})(bg||{}),Ig=(function(t){return t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary",t})(Ig||{});(function(t){function e(r){let n=r;return h.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}t.is=e})(Kf||(Kf={}));(function(t){function e(n,i){return{range:n,text:i}}t.create=e;function r(n){let i=n;return i!=null&&ee.is(i.range)&&h.string(i.text)}t.is=r})(Vf||(Vf={}));(function(t){function e(n,i,s){return{range:n,variableName:i,caseSensitiveLookup:s}}t.create=e;function r(n){let i=n;return i!=null&&ee.is(i.range)&&h.boolean(i.caseSensitiveLookup)&&(h.string(i.variableName)||i.variableName===void 0)}t.is=r})(Hf||(Hf={}));(function(t){function e(n,i){return{range:n,expression:i}}t.create=e;function r(n){let i=n;return i!=null&&ee.is(i.range)&&(h.string(i.expression)||i.expression===void 0)}t.is=r})(Xf||(Xf={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}t.create=e;function r(n){let i=n;return h.defined(i)&&ee.is(n.stoppedLocation)}t.is=r})(Yf||(Yf={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}t.is=e})(Il||(Il={}));(function(t){function e(n){return{value:n}}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&(i.tooltip===void 0||h.string(i.tooltip)||Di.is(i.tooltip))&&(i.location===void 0||ca.is(i.location))&&(i.command===void 0||On.is(i.command))}t.is=r})(_l||(_l={}));(function(t){function e(n,i,s){let a={position:n,label:i};return s!==void 0&&(a.kind=s),a}t.create=e;function r(n){let i=n;return h.objectLiteral(i)&&ie.is(i.position)&&(h.string(i.label)||h.typedArray(i.label,_l.is))&&(i.kind===void 0||Il.is(i.kind))&&i.textEdits===void 0||h.typedArray(i.textEdits,nr.is)&&(i.tooltip===void 0||h.string(i.tooltip)||Di.is(i.tooltip))&&(i.paddingLeft===void 0||h.boolean(i.paddingLeft))&&(i.paddingRight===void 0||h.boolean(i.paddingRight))}t.is=r})(Jf||(Jf={}));(function(t){function e(r){return{kind:"snippet",value:r}}t.createSnippet=e})(Zf||(Zf={}));(function(t){function e(r,n,i,s){return{insertText:r,filterText:n,range:i,command:s}}t.create=e})(Qf||(Qf={}));(function(t){function e(r){return{items:r}}t.create=e})(ed||(ed={}));_g=(function(t){return t.Invoked=0,t.Automatic=1,t})(_g||{});(function(t){function e(r,n){return{range:r,text:n}}t.create=e})(td||(td={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}t.create=e})(rd||(rd={}));(function(t){function e(r){let n=r;return h.objectLiteral(n)&&Al.is(n.uri)&&h.string(n.name)}t.is=e})(nd||(nd={}));CE=[` +`,`\r +`,"\r"];(function(t){function e(s,a,o,l){return new sd(s,a,o,l)}t.create=e;function r(s){let a=s;return!!(h.defined(a)&&h.string(a.uri)&&(h.undefined(a.languageId)||h.string(a.languageId))&&h.uinteger(a.lineCount)&&h.func(a.getText)&&h.func(a.positionAt)&&h.func(a.offsetAt))}t.is=r;function n(s,a){let o=s.getText(),l=i(a,(c,p)=>{let m=c.range.start.line-p.range.start.line;return m===0?c.range.start.character-p.range.start.character:m}),u=o.length;for(let c=l.length-1;c>=0;c--){let p=l[c],m=s.offsetAt(p.range.start),g=s.offsetAt(p.range.end);if(g<=u)o=o.substring(0,m)+p.newText+o.substring(g,o.length);else throw new Error("Overlapping edit");u=m}return o}t.applyEdits=n;function i(s,a){if(s.length<=1)return s;let o=s.length/2|0,l=s.slice(0,o),u=s.slice(o);i(l,a),i(u,a);let c=0,p=0,m=0;for(;c0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return ie.create(0,e);for(;ne?i=a:n=a+1}let s=n-1;return ie.create(s,e-r[s])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1"u"}t.undefined=n;function i(g){return g===!0||g===!1}t.boolean=i;function s(g){return e.call(g)==="[object String]"}t.string=s;function a(g){return e.call(g)==="[object Number]"}t.number=a;function o(g,C,b){return e.call(g)==="[object Number]"&&C<=g&&g<=b}t.numberRange=o;function l(g){return e.call(g)==="[object Number]"&&-2147483648<=g&&g<=2147483647}t.integer=l;function u(g){return e.call(g)==="[object Number]"&&0<=g&&g<=2147483647}t.uinteger=u;function c(g){return e.call(g)==="[object Function]"}t.func=c;function p(g){return g!==null&&typeof g=="object"}t.objectLiteral=p;function m(g,C){return Array.isArray(g)&&g.every(C)}t.typedArray=m})(h||(h={}))});var Xr=H(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var pd;function md(){if(pd===void 0)throw new Error("No runtime abstraction layer installed");return pd}(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");pd=r}t.install=e})(md||(md={}));hd.default=md});var Ui=H(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.stringArray=rt.array=rt.func=rt.error=rt.number=rt.string=rt.boolean=void 0;function ME(t){return t===!0||t===!1}rt.boolean=ME;function Fg(t){return typeof t=="string"||t instanceof String}rt.string=Fg;function FE(t){return typeof t=="number"||t instanceof Number}rt.number=FE;function GE(t){return t instanceof Error}rt.error=GE;function UE(t){return typeof t=="function"}rt.func=UE;function Gg(t){return Array.isArray(t)}rt.array=Gg;function jE(t){return Gg(t)&&t.every(e=>Fg(e))}rt.stringArray=jE});var Fn=H(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.Emitter=ji.Event=void 0;var zE=Xr(),Ug;(function(t){let e={dispose(){}};t.None=function(){return e}})(Ug||(ji.Event=Ug={}));var gd=class{add(e,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:()=>this.remove(e,r)})}remove(e,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,s=this._callbacks.length;i{this._callbacks||(this._callbacks=new gd),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,r);let i={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,r),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};ji.Emitter=Fl;Fl._noop=function(){}});var va=H(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.CancellationTokenSource=zi.CancellationToken=void 0;var qE=Xr(),BE=Ui(),yd=Fn(),Gl;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:yd.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:yd.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||BE.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}t.is=e})(Gl||(zi.CancellationToken=Gl={}));var WE=Object.freeze(function(t,e){let r=(0,qE.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),Ul=class{constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?WE:(this._emitter||(this._emitter=new yd.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},Td=class{get token(){return this._token||(this._token=new Ul),this._token}cancel(){this._token?this._token.cancel():this._token=Gl.Cancelled}dispose(){this._token?this._token instanceof Ul&&this._token.dispose():this._token=Gl.None}};zi.CancellationTokenSource=Td});var Vd=H(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.Message=U.NotificationType9=U.NotificationType8=U.NotificationType7=U.NotificationType6=U.NotificationType5=U.NotificationType4=U.NotificationType3=U.NotificationType2=U.NotificationType1=U.NotificationType0=U.NotificationType=U.RequestType9=U.RequestType8=U.RequestType7=U.RequestType6=U.RequestType5=U.RequestType4=U.RequestType3=U.RequestType2=U.RequestType1=U.RequestType=U.RequestType0=U.AbstractMessageSignature=U.ParameterStructures=U.ResponseError=U.ErrorCodes=void 0;var qn=Ui(),Ed=(function(t){return t.ParseError=-32700,t.InvalidRequest=-32600,t.MethodNotFound=-32601,t.InvalidParams=-32602,t.InternalError=-32603,t.jsonrpcReservedErrorRangeStart=-32099,t.serverErrorStart=-32099,t.MessageWriteError=-32099,t.MessageReadError=-32098,t.PendingResponseRejected=-32097,t.ConnectionInactive=-32096,t.ServerNotInitialized=-32002,t.UnknownErrorCode=-32001,t.jsonrpcReservedErrorRangeEnd=-32e3,t.serverErrorEnd=-32e3,t})(Ed||(U.ErrorCodes=Ed={})),Ad=class t extends Error{constructor(e,r,n){super(r),this.code=qn.number(e)?e:Ed.UnknownErrorCode,this.data=n,Object.setPrototypeOf(this,t.prototype)}toJson(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}};U.ResponseError=Ad;var Tt=class t{constructor(e){this.kind=e}static is(e){return e===t.auto||e===t.byName||e===t.byPosition}toString(){return this.kind}};U.ParameterStructures=Tt;Tt.auto=new Tt("auto");Tt.byPosition=new Tt("byPosition");Tt.byName=new Tt("byName");var Ae=class{constructor(e,r){this.method=e,this.numberOfParams=r}get parameterStructures(){return Tt.auto}};U.AbstractMessageSignature=Ae;var Cd=class extends Ae{constructor(e){super(e,0)}};U.RequestType0=Cd;var Sd=class extends Ae{constructor(e,r=Tt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};U.RequestType=Sd;var Nd=class extends Ae{constructor(e,r=Tt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};U.RequestType1=Nd;var kd=class extends Ae{constructor(e){super(e,2)}};U.RequestType2=kd;var wd=class extends Ae{constructor(e){super(e,3)}};U.RequestType3=wd;var bd=class extends Ae{constructor(e){super(e,4)}};U.RequestType4=bd;var Id=class extends Ae{constructor(e){super(e,5)}};U.RequestType5=Id;var _d=class extends Ae{constructor(e){super(e,6)}};U.RequestType6=_d;var Od=class extends Ae{constructor(e){super(e,7)}};U.RequestType7=Od;var Pd=class extends Ae{constructor(e){super(e,8)}};U.RequestType8=Pd;var Ld=class extends Ae{constructor(e){super(e,9)}};U.RequestType9=Ld;var Dd=class extends Ae{constructor(e,r=Tt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};U.NotificationType=Dd;var Md=class extends Ae{constructor(e){super(e,0)}};U.NotificationType0=Md;var Fd=class extends Ae{constructor(e,r=Tt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};U.NotificationType1=Fd;var Gd=class extends Ae{constructor(e){super(e,2)}};U.NotificationType2=Gd;var Ud=class extends Ae{constructor(e){super(e,3)}};U.NotificationType3=Ud;var jd=class extends Ae{constructor(e){super(e,4)}};U.NotificationType4=jd;var zd=class extends Ae{constructor(e){super(e,5)}};U.NotificationType5=zd;var qd=class extends Ae{constructor(e){super(e,6)}};U.NotificationType6=qd;var Bd=class extends Ae{constructor(e){super(e,7)}};U.NotificationType7=Bd;var Wd=class extends Ae{constructor(e){super(e,8)}};U.NotificationType8=Wd;var Kd=class extends Ae{constructor(e){super(e,9)}};U.NotificationType9=Kd;var Zg;(function(t){function e(i){let s=i;return s&&qn.string(s.method)&&(qn.string(s.id)||qn.number(s.id))}t.isRequest=e;function r(i){let s=i;return s&&qn.string(s.method)&&i.id===void 0}t.isNotification=r;function n(i){let s=i;return s&&(s.result!==void 0||!!s.error)&&(qn.string(s.id)||qn.number(s.id)||s.id===null)}t.isResponse=n})(Zg||(U.Message=Zg={}))});var Xd=H(Yr=>{"use strict";var Qg;Object.defineProperty(Yr,"__esModule",{value:!0});Yr.LRUCache=Yr.LinkedMap=Yr.Touch=void 0;var it;(function(t){t.None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last})(it||(Yr.Touch=it={}));var Vl=class{constructor(){this[Qg]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,r=it.None){let n=this._map.get(e);if(n)return r!==it.None&&this.touch(n,r),n.value}set(e,r,n=it.None){let i=this._map.get(e);if(i)i.value=r,n!==it.None&&this.touch(i,n);else{switch(i={key:e,value:r,next:void 0,previous:void 0},n){case it.None:this.addItemLast(i);break;case it.First:this.addItemFirst(i);break;case it.Last:this.addItemLast(i);break;default:this.addItemLast(i);break}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let r=this._map.get(e);if(r)return this._map.delete(e),this.removeItem(r),this._size--,r.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,r){let n=this._state,i=this._head;for(;i;){if(r?e.bind(r)(i.value,i.key,this):e(i.value,i.key,this),this._state!==n)throw new Error("LinkedMap got modified during iteration.");i=i.next}}keys(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:r.key,done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return n}values(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:r.value,done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return n}entries(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:[r.key,r.value],done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return n}[(Qg=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let r=this._head,n=this.size;for(;r&&n>e;)this._map.delete(r.key),r=r.next,n--;this._head=r,this._size=n,r&&(r.previous=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let r=e.next,n=e.previous;if(!r||!n)throw new Error("Invalid list");r.previous=n,n.next=r}e.next=void 0,e.previous=void 0,this._state++}touch(e,r){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(r!==it.First&&r!==it.Last)){if(r===it.First){if(e===this._head)return;let n=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(n.previous=i,i.next=n),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(r===it.Last){if(e===this._tail)return;let n=e.next,i=e.previous;e===this._head?(n.previous=void 0,this._head=n):(n.previous=i,i.next=n),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((r,n)=>{e.push([n,r])}),e}fromJSON(e){this.clear();for(let[r,n]of e)this.set(r,n)}};Yr.LinkedMap=Vl;var Hd=class extends Vl{constructor(e,r=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,r),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,r=it.AsNew){return super.get(e,r)}peek(e){return super.get(e,it.None)}set(e,r){return super.set(e,r,it.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};Yr.LRUCache=Hd});var ty=H(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});Hl.Disposable=void 0;var ey;(function(t){function e(r){return{dispose:r}}t.create=e})(ey||(Hl.Disposable=ey={}))});var ry=H(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.SharedArrayReceiverStrategy=Xi.SharedArraySenderStrategy=void 0;var HE=va(),Xl=(function(t){return t.Continue=0,t.Cancelled=1,t})(Xl||{}),Yd=class{constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;let r=new SharedArrayBuffer(4),n=new Int32Array(r,0,1);n[0]=Xl.Continue,this.buffers.set(e.id,r),e.$cancellationData=r}sendCancellation(e,r){return O(this,null,function*(){let n=this.buffers.get(r);if(n===void 0)return;let i=new Int32Array(n,0,1);Atomics.store(i,0,Xl.Cancelled)})}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};Xi.SharedArraySenderStrategy=Yd;var Jd=class{constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===Xl.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},Zd=class{constructor(e){this.token=new Jd(e)}cancel(){}dispose(){}},Qd=class{constructor(){this.kind="request"}createCancellationTokenSource(e){let r=e.$cancellationData;return r===void 0?new HE.CancellationTokenSource:new Zd(r)}};Xi.SharedArrayReceiverStrategy=Qd});var tp=H(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});Yl.Semaphore=void 0;var XE=Xr(),ep=class{constructor(e=1){if(e<=0)throw new Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((r,n)=>{this._waiting.push({thunk:e,resolve:r,reject:n}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,XE.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{let r=e.thunk();r instanceof Promise?r.then(n=>{this._active--,e.resolve(n),this.runNext()},n=>{this._active--,e.reject(n),this.runNext()}):(this._active--,e.resolve(r),this.runNext())}catch(r){this._active--,e.reject(r),this.runNext()}}};Yl.Semaphore=ep});var iy=H(Jr=>{"use strict";Object.defineProperty(Jr,"__esModule",{value:!0});Jr.ReadableStreamMessageReader=Jr.AbstractMessageReader=Jr.MessageReader=void 0;var np=Xr(),Yi=Ui(),rp=Fn(),YE=tp(),ny;(function(t){function e(r){let n=r;return n&&Yi.func(n.listen)&&Yi.func(n.dispose)&&Yi.func(n.onError)&&Yi.func(n.onClose)&&Yi.func(n.onPartialMessage)}t.is=e})(ny||(Jr.MessageReader=ny={}));var Jl=class{constructor(){this.errorEmitter=new rp.Emitter,this.closeEmitter=new rp.Emitter,this.partialMessageEmitter=new rp.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:new Error(`Reader received error. Reason: ${Yi.string(e.message)?e.message:"unknown"}`)}};Jr.AbstractMessageReader=Jl;var ip;(function(t){function e(r){let n,i,s,a=new Map,o,l=new Map;if(r===void 0||typeof r=="string")n=r??"utf-8";else{if(n=r.charset??"utf-8",r.contentDecoder!==void 0&&(s=r.contentDecoder,a.set(s.name,s)),r.contentDecoders!==void 0)for(let u of r.contentDecoders)a.set(u.name,u);if(r.contentTypeDecoder!==void 0&&(o=r.contentTypeDecoder,l.set(o.name,o)),r.contentTypeDecoders!==void 0)for(let u of r.contentTypeDecoders)l.set(u.name,u)}return o===void 0&&(o=(0,np.default)().applicationJson.decoder,l.set(o.name,o)),{charset:n,contentDecoder:s,contentDecoders:a,contentTypeDecoder:o,contentTypeDecoders:l}}t.fromOptions=e})(ip||(ip={}));var sp=class extends Jl{constructor(e,r){super(),this.readable=e,this.options=ip.fromOptions(r),this.buffer=(0,np.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new YE.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;let r=this.readable.onData(n=>{this.onData(n)});return this.readable.onError(n=>this.fireError(n)),this.readable.onClose(()=>this.fireClose()),r}onData(e){try{for(this.buffer.append(e);;){if(this.nextMessageLength===-1){let n=this.buffer.tryReadHeaders(!0);if(!n)return;let i=n.get("content-length");if(!i){this.fireError(new Error(`Header must provide a Content-Length property. +${JSON.stringify(Object.fromEntries(n))}`));return}let s=parseInt(i);if(isNaN(s)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));return}this.nextMessageLength=s}let r=this.buffer.tryReadBody(this.nextMessageLength);if(r===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(()=>O(this,null,function*(){let n=this.options.contentDecoder!==void 0?yield this.options.contentDecoder.decode(r):r,i=yield this.options.contentTypeDecoder.decode(n,this.options);this.callback(i)})).catch(n=>{this.fireError(n)})}}catch(r){this.fireError(r)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,np.default)().timer.setTimeout((e,r)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:r}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};Jr.ReadableStreamMessageReader=sp});var uy=H(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.WriteableStreamMessageWriter=Zr.AbstractMessageWriter=Zr.MessageWriter=void 0;var sy=Xr(),Ga=Ui(),JE=tp(),ay=Fn(),ZE="Content-Length: ",oy=`\r +`,ly;(function(t){function e(r){let n=r;return n&&Ga.func(n.dispose)&&Ga.func(n.onClose)&&Ga.func(n.onError)&&Ga.func(n.write)}t.is=e})(ly||(Zr.MessageWriter=ly={}));var Zl=class{constructor(){this.errorEmitter=new ay.Emitter,this.closeEmitter=new ay.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,r,n){this.errorEmitter.fire([this.asError(e),r,n])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:new Error(`Writer received error. Reason: ${Ga.string(e.message)?e.message:"unknown"}`)}};Zr.AbstractMessageWriter=Zl;var ap;(function(t){function e(r){return r===void 0||typeof r=="string"?{charset:r??"utf-8",contentTypeEncoder:(0,sy.default)().applicationJson.encoder}:{charset:r.charset??"utf-8",contentEncoder:r.contentEncoder,contentTypeEncoder:r.contentTypeEncoder??(0,sy.default)().applicationJson.encoder}}t.fromOptions=e})(ap||(ap={}));var op=class extends Zl{constructor(e,r){super(),this.writable=e,this.options=ap.fromOptions(r),this.errorCount=0,this.writeSemaphore=new JE.Semaphore(1),this.writable.onError(n=>this.fireError(n)),this.writable.onClose(()=>this.fireClose())}write(e){return O(this,null,function*(){return this.writeSemaphore.lock(()=>O(this,null,function*(){return this.options.contentTypeEncoder.encode(e,this.options).then(n=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(n):n).then(n=>{let i=[];return i.push(ZE,n.byteLength.toString(),oy),i.push(oy),this.doWrite(e,i,n)},n=>{throw this.fireError(n),n})}))})}doWrite(e,r,n){return O(this,null,function*(){try{return yield this.writable.write(r.join(""),"ascii"),this.writable.write(n)}catch(i){return this.handleError(i,e),Promise.reject(i)}})}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){this.writable.end()}};Zr.WriteableStreamMessageWriter=op});var cy=H(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});Ql.AbstractMessageBuffer=void 0;var QE=13,eA=10,tA=`\r +`,lp=class{constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let r=typeof e=="string"?this.fromString(e,this._encoding):e;this._chunks.push(r),this._totalLength+=r.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let r=0,n=0,i=0,s=0;e:for(;nthis._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let s=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(s)}if(this._chunks[0].byteLength>e){let s=this._chunks[0],a=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,a}let r=this.allocNative(e),n=0,i=0;for(;e>0;){let s=this._chunks[i];if(s.byteLength>e){let a=s.slice(0,e);r.set(a,n),n+=e,this._chunks[i]=s.slice(e),this._totalLength-=e,e-=e}else r.set(s,n),n+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return r}};Ql.AbstractMessageBuffer=lp});var hy=H(X=>{"use strict";Object.defineProperty(X,"__esModule",{value:!0});X.createMessageConnection=X.ConnectionOptions=X.MessageStrategy=X.CancellationStrategy=X.CancellationSenderStrategy=X.CancellationReceiverStrategy=X.RequestCancellationReceiverStrategy=X.IdCancellationReceiverStrategy=X.ConnectionStrategy=X.ConnectionError=X.ConnectionErrors=X.LogTraceNotification=X.SetTraceNotification=X.TraceFormat=X.TraceValues=X.Trace=X.NullLogger=X.ProgressType=X.ProgressToken=void 0;var fy=Xr(),Ie=Ui(),B=Vd(),dy=Xd(),Ua=Fn(),up=va(),qa;(function(t){t.type=new B.NotificationType("$/cancelRequest")})(qa||(qa={}));var cp;(function(t){function e(r){return typeof r=="string"||typeof r=="number"}t.is=e})(cp||(X.ProgressToken=cp={}));var ja;(function(t){t.type=new B.NotificationType("$/progress")})(ja||(ja={}));var fp=class{constructor(){}};X.ProgressType=fp;var dp;(function(t){function e(r){return Ie.func(r)}t.is=e})(dp||(dp={}));X.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var oe=(function(t){return t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose",t})(oe||(X.Trace=oe={})),py=(function(t){return t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose",t})(py||(X.TraceValues=py={}));(function(t){function e(n){if(!Ie.string(n))return t.Off;switch(n=n.toLowerCase(),n){case"off":return t.Off;case"messages":return t.Messages;case"compact":return t.Compact;case"verbose":return t.Verbose;default:return t.Off}}t.fromString=e;function r(n){switch(n){case t.Off:return"off";case t.Messages:return"messages";case t.Compact:return"compact";case t.Verbose:return"verbose";default:return"off"}}t.toString=r})(oe||(X.Trace=oe={}));var St=(function(t){return t.Text="text",t.JSON="json",t})(St||(X.TraceFormat=St={}));(function(t){function e(r){return Ie.string(r)?(r=r.toLowerCase(),r==="json"?t.JSON:t.Text):t.Text}t.fromString=e})(St||(X.TraceFormat=St={}));var pp;(function(t){t.type=new B.NotificationType("$/setTrace")})(pp||(X.SetTraceNotification=pp={}));var eu;(function(t){t.type=new B.NotificationType("$/logTrace")})(eu||(X.LogTraceNotification=eu={}));var za=(function(t){return t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening",t})(za||(X.ConnectionErrors=za={})),Ji=class t extends Error{constructor(e,r){super(r),this.code=e,Object.setPrototypeOf(this,t.prototype)}};X.ConnectionError=Ji;var mp;(function(t){function e(r){let n=r;return n&&Ie.func(n.cancelUndispatched)}t.is=e})(mp||(X.ConnectionStrategy=mp={}));var tu;(function(t){function e(r){let n=r;return n&&(n.kind===void 0||n.kind==="id")&&Ie.func(n.createCancellationTokenSource)&&(n.dispose===void 0||Ie.func(n.dispose))}t.is=e})(tu||(X.IdCancellationReceiverStrategy=tu={}));var hp;(function(t){function e(r){let n=r;return n&&n.kind==="request"&&Ie.func(n.createCancellationTokenSource)&&(n.dispose===void 0||Ie.func(n.dispose))}t.is=e})(hp||(X.RequestCancellationReceiverStrategy=hp={}));var ru;(function(t){t.Message=Object.freeze({createCancellationTokenSource(r){return new up.CancellationTokenSource}});function e(r){return tu.is(r)||hp.is(r)}t.is=e})(ru||(X.CancellationReceiverStrategy=ru={}));var nu;(function(t){t.Message=Object.freeze({sendCancellation(r,n){return r.sendNotification(qa.type,{id:n})},cleanup(r){}});function e(r){let n=r;return n&&Ie.func(n.sendCancellation)&&Ie.func(n.cleanup)}t.is=e})(nu||(X.CancellationSenderStrategy=nu={}));var iu;(function(t){t.Message=Object.freeze({receiver:ru.Message,sender:nu.Message});function e(r){let n=r;return n&&ru.is(n.receiver)&&nu.is(n.sender)}t.is=e})(iu||(X.CancellationStrategy=iu={}));var su;(function(t){function e(r){let n=r;return n&&Ie.func(n.handleMessage)}t.is=e})(su||(X.MessageStrategy=su={}));var my;(function(t){function e(r){let n=r;return n&&(iu.is(n.cancellationStrategy)||mp.is(n.connectionStrategy)||su.is(n.messageStrategy))}t.is=e})(my||(X.ConnectionOptions=my={}));var or=(function(t){return t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed",t})(or||{});function rA(t,e,r,n){let i=r!==void 0?r:X.NullLogger,s=0,a=0,o=0,l="2.0",u,c=new Map,p,m=new Map,g=new Map,C,b=new dy.LinkedMap,F=new Map,_=new Set,N=new Map,x=oe.Off,W=St.Text,D,pe=or.New,Ht=new Ua.Emitter,je=new Ua.Emitter,Lt=new Ua.Emitter,kt=new Ua.Emitter,A=new Ua.Emitter,y=n&&n.cancellationStrategy?n.cancellationStrategy:iu.Message;function L(d){if(d===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+d.toString()}function P(d){return d===null?"res-unknown-"+(++o).toString():"res-"+d.toString()}function T(){return"not-"+(++a).toString()}function $(d,v){B.Message.isRequest(v)?d.set(L(v.id),v):B.Message.isResponse(v)?d.set(P(v.id),v):d.set(T(),v)}function E(d){}function I(){return pe===or.Listening}function M(){return pe===or.Closed}function k(){return pe===or.Disposed}function V(){(pe===or.New||pe===or.Listening)&&(pe=or.Closed,je.fire(void 0))}function Y(d){Ht.fire([d,void 0,void 0])}function le(d){Ht.fire(d)}t.onClose(V),t.onError(Y),e.onClose(V),e.onError(le);function ae(){C||b.size===0||(C=(0,fy.default)().timer.setImmediate(()=>{C=void 0,Me()}))}function ye(d){B.Message.isRequest(d)?Xe(d):B.Message.isNotification(d)?Xt(d):B.Message.isResponse(d)?mt(d):Dt(d)}function Me(){if(b.size===0)return;let d=b.shift();try{let v=n?.messageStrategy;su.is(v)?v.handleMessage(d,ye):ye(d)}finally{ae()}}let $s=d=>{try{if(B.Message.isNotification(d)&&d.method===qa.type.method){let v=d.params.id,w=L(v),G=b.get(w);if(B.Message.isRequest(G)){let me=n?.connectionStrategy,_e=me&&me.cancelUndispatched?me.cancelUndispatched(G,E):void 0;if(_e&&(_e.error!==void 0||_e.result!==void 0)){b.delete(w),N.delete(v),_e.id=G.id,po(_e,d.method,Date.now()),e.write(_e).catch(()=>i.error("Sending response for canceled message failed."));return}}let xe=N.get(v);if(xe!==void 0){xe.cancel(),Wu(d);return}else _.add(v)}$(b,d)}finally{ae()}};function Xe(d){if(k())return;function v(ne,Se,de){let ze={jsonrpc:l,id:d.id};ne instanceof B.ResponseError?ze.error=ne.toJson():ze.result=ne===void 0?null:ne,po(ze,Se,de),e.write(ze).catch(()=>i.error("Sending response failed."))}function w(ne,Se,de){let ze={jsonrpc:l,id:d.id,error:ne.toJson()};po(ze,Se,de),e.write(ze).catch(()=>i.error("Sending response failed."))}function G(ne,Se,de){ne===void 0&&(ne=null);let ze={jsonrpc:l,id:d.id,result:ne};po(ze,Se,de),e.write(ze).catch(()=>i.error("Sending response failed."))}K$(d);let xe=c.get(d.method),me,_e;xe&&(me=xe.type,_e=xe.handler);let Le=Date.now();if(_e||u){let ne=d.id??String(Date.now()),Se=tu.is(y.receiver)?y.receiver.createCancellationTokenSource(ne):y.receiver.createCancellationTokenSource(d);d.id!==null&&_.has(d.id)&&Se.cancel(),d.id!==null&&N.set(ne,Se);try{let de;if(_e)if(d.params===void 0){if(me!==void 0&&me.numberOfParams!==0){w(new B.ResponseError(B.ErrorCodes.InvalidParams,`Request ${d.method} defines ${me.numberOfParams} params but received none.`),d.method,Le);return}de=_e(Se.token)}else if(Array.isArray(d.params)){if(me!==void 0&&me.parameterStructures===B.ParameterStructures.byName){w(new B.ResponseError(B.ErrorCodes.InvalidParams,`Request ${d.method} defines parameters by name but received parameters by position`),d.method,Le);return}de=_e(...d.params,Se.token)}else{if(me!==void 0&&me.parameterStructures===B.ParameterStructures.byPosition){w(new B.ResponseError(B.ErrorCodes.InvalidParams,`Request ${d.method} defines parameters by position but received parameters by name`),d.method,Le);return}de=_e(d.params,Se.token)}else u&&(de=u(d.method,d.params,Se.token));let ze=de;de?ze.then?ze.then(at=>{N.delete(ne),v(at,d.method,Le)},at=>{N.delete(ne),at instanceof B.ResponseError?w(at,d.method,Le):at&&Ie.string(at.message)?w(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${d.method} failed with message: ${at.message}`),d.method,Le):w(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${d.method} failed unexpectedly without providing any details.`),d.method,Le)}):(N.delete(ne),v(de,d.method,Le)):(N.delete(ne),G(de,d.method,Le))}catch(de){N.delete(ne),de instanceof B.ResponseError?v(de,d.method,Le):de&&Ie.string(de.message)?w(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${d.method} failed with message: ${de.message}`),d.method,Le):w(new B.ResponseError(B.ErrorCodes.InternalError,`Request ${d.method} failed unexpectedly without providing any details.`),d.method,Le)}}else w(new B.ResponseError(B.ErrorCodes.MethodNotFound,`Unhandled method ${d.method}`),d.method,Le)}function mt(d){if(!k())if(d.id===null)d.error?i.error(`Received response message without id: Error is: +${JSON.stringify(d.error,void 0,4)}`):i.error("Received response message without id. No further error information provided.");else{let v=d.id,w=F.get(v);if(V$(d,w),w!==void 0){F.delete(v);try{if(d.error){let G=d.error;w.reject(new B.ResponseError(G.code,G.message,G.data))}else if(d.result!==void 0)w.resolve(d.result);else throw new Error("Should never happen.")}catch(G){G.message?i.error(`Response handler '${w.method}' failed with message: ${G.message}`):i.error(`Response handler '${w.method}' failed unexpectedly.`)}}}}function Xt(d){if(k())return;let v,w;if(d.method===qa.type.method){let G=d.params.id;_.delete(G),Wu(d);return}else{let G=m.get(d.method);G&&(w=G.handler,v=G.type)}if(w||p)try{if(Wu(d),w)if(d.params===void 0)v!==void 0&&v.numberOfParams!==0&&v.parameterStructures!==B.ParameterStructures.byName&&i.error(`Notification ${d.method} defines ${v.numberOfParams} params but received none.`),w();else if(Array.isArray(d.params)){let G=d.params;d.method===ja.type.method&&G.length===2&&cp.is(G[0])?w({token:G[0],value:G[1]}):(v!==void 0&&(v.parameterStructures===B.ParameterStructures.byName&&i.error(`Notification ${d.method} defines parameters by name but received parameters by position`),v.numberOfParams!==d.params.length&&i.error(`Notification ${d.method} defines ${v.numberOfParams} params but received ${G.length} arguments`)),w(...G))}else v!==void 0&&v.parameterStructures===B.ParameterStructures.byPosition&&i.error(`Notification ${d.method} defines parameters by position but received parameters by name`),w(d.params);else p&&p(d.method,d.params)}catch(G){G.message?i.error(`Notification handler '${d.method}' failed with message: ${G.message}`):i.error(`Notification handler '${d.method}' failed unexpectedly.`)}else Lt.fire(d)}function Dt(d){if(!d){i.error("Received empty message.");return}i.error(`Received message which is neither a response nor a notification message: +${JSON.stringify(d,null,4)}`);let v=d;if(Ie.string(v.id)||Ie.number(v.id)){let w=v.id,G=F.get(w);G&&G.reject(new Error("The received response has neither a result nor an error property."))}}function Qe(d){if(d!=null)switch(x){case oe.Verbose:return JSON.stringify(d,null,4);case oe.Compact:return JSON.stringify(d);default:return}}function vs(d){if(!(x===oe.Off||!D))if(W===St.Text){let v;(x===oe.Verbose||x===oe.Compact)&&d.params&&(v=`Params: ${Qe(d.params)} + +`),D.log(`Sending request '${d.method} - (${d.id})'.`,v)}else Zn("send-request",d)}function fo(d){if(!(x===oe.Off||!D))if(W===St.Text){let v;(x===oe.Verbose||x===oe.Compact)&&(d.params?v=`Params: ${Qe(d.params)} + +`:v=`No parameters provided. + +`),D.log(`Sending notification '${d.method}'.`,v)}else Zn("send-notification",d)}function po(d,v,w){if(!(x===oe.Off||!D))if(W===St.Text){let G;(x===oe.Verbose||x===oe.Compact)&&(d.error&&d.error.data?G=`Error data: ${Qe(d.error.data)} + +`:d.result?G=`Result: ${Qe(d.result)} + +`:d.error===void 0&&(G=`No result returned. + +`)),D.log(`Sending response '${v} - (${d.id})'. Processing request took ${Date.now()-w}ms`,G)}else Zn("send-response",d)}function K$(d){if(!(x===oe.Off||!D))if(W===St.Text){let v;(x===oe.Verbose||x===oe.Compact)&&d.params&&(v=`Params: ${Qe(d.params)} + +`),D.log(`Received request '${d.method} - (${d.id})'.`,v)}else Zn("receive-request",d)}function Wu(d){if(!(x===oe.Off||!D||d.method===eu.type.method))if(W===St.Text){let v;(x===oe.Verbose||x===oe.Compact)&&(d.params?v=`Params: ${Qe(d.params)} + +`:v=`No parameters provided. + +`),D.log(`Received notification '${d.method}'.`,v)}else Zn("receive-notification",d)}function V$(d,v){if(!(x===oe.Off||!D))if(W===St.Text){let w;if((x===oe.Verbose||x===oe.Compact)&&(d.error&&d.error.data?w=`Error data: ${Qe(d.error.data)} + +`:d.result?w=`Result: ${Qe(d.result)} + +`:d.error===void 0&&(w=`No result returned. + +`)),v){let G=d.error?` Request failed: ${d.error.message} (${d.error.code}).`:"";D.log(`Received response '${v.method} - (${d.id})' in ${Date.now()-v.timerStart}ms.${G}`,w)}else D.log(`Received response ${d.id} without active response promise.`,w)}else Zn("receive-response",d)}function Zn(d,v){if(!D||x===oe.Off)return;let w={isLSPMessage:!0,type:d,message:v,timestamp:Date.now()};D.log(w)}function xs(){if(M())throw new Ji(za.Closed,"Connection is closed.");if(k())throw new Ji(za.Disposed,"Connection is disposed.")}function H$(){if(I())throw new Ji(za.AlreadyListening,"Connection is already listening")}function X$(){if(!I())throw new Error("Call listen() first.")}function Es(d){return d===void 0?null:d}function Em(d){if(d!==null)return d}function Am(d){return d!=null&&!Array.isArray(d)&&typeof d=="object"}function Ku(d,v){switch(d){case B.ParameterStructures.auto:return Am(v)?Em(v):[Es(v)];case B.ParameterStructures.byName:if(!Am(v))throw new Error("Received parameters by name but param is not an object literal.");return Em(v);case B.ParameterStructures.byPosition:return[Es(v)];default:throw new Error(`Unknown parameter structure ${d.toString()}`)}}function Cm(d,v){let w,G=d.numberOfParams;switch(G){case 0:w=void 0;break;case 1:w=Ku(d.parameterStructures,v[0]);break;default:w=[];for(let xe=0;xe{xs();let w,G;if(Ie.string(d)){w=d;let me=v[0],_e=0,Le=B.ParameterStructures.auto;B.ParameterStructures.is(me)&&(_e=1,Le=me);let ne=v.length,Se=ne-_e;switch(Se){case 0:G=void 0;break;case 1:G=Ku(Le,v[_e]);break;default:if(Le===B.ParameterStructures.byName)throw new Error(`Received ${Se} parameters for 'by Name' notification parameter structure.`);G=v.slice(_e,ne).map(de=>Es(de));break}}else{let me=v;w=d.method,G=Cm(d,me)}let xe={jsonrpc:l,method:w,params:G};return fo(xe),e.write(xe).catch(me=>{throw i.error("Sending notification failed."),me})},onNotification:(d,v)=>{xs();let w;return Ie.func(d)?p=d:v&&(Ie.string(d)?(w=d,m.set(d,{type:void 0,handler:v})):(w=d.method,m.set(d.method,{type:d,handler:v}))),{dispose:()=>{w!==void 0?m.delete(w):p=void 0}}},onProgress:(d,v,w)=>{if(g.has(v))throw new Error(`Progress handler for token ${v} already registered`);return g.set(v,w),{dispose:()=>{g.delete(v)}}},sendProgress:(d,v,w)=>Qn.sendNotification(ja.type,{token:v,value:w}),onUnhandledProgress:kt.event,sendRequest:(d,...v)=>{xs(),X$();let w,G,xe;if(Ie.string(d)){w=d;let ne=v[0],Se=v[v.length-1],de=0,ze=B.ParameterStructures.auto;B.ParameterStructures.is(ne)&&(de=1,ze=ne);let at=v.length;up.CancellationToken.is(Se)&&(at=at-1,xe=Se);let Yt=at-de;switch(Yt){case 0:G=void 0;break;case 1:G=Ku(ze,v[de]);break;default:if(ze===B.ParameterStructures.byName)throw new Error(`Received ${Yt} parameters for 'by Name' request parameter structure.`);G=v.slice(de,at).map(Y$=>Es(Y$));break}}else{let ne=v;w=d.method,G=Cm(d,ne);let Se=d.numberOfParams;xe=up.CancellationToken.is(ne[Se])?ne[Se]:void 0}let me=s++,_e;xe&&(_e=xe.onCancellationRequested(()=>{let ne=y.sender.sendCancellation(Qn,me);return ne===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${me}`),Promise.resolve()):ne.catch(()=>{i.log(`Sending cancellation messages for id ${me} failed`)})}));let Le={jsonrpc:l,id:me,method:w,params:G};return vs(Le),typeof y.sender.enableCancellation=="function"&&y.sender.enableCancellation(Le),new Promise((ne,Se)=>O(null,null,function*(){let de=Yt=>{ne(Yt),y.sender.cleanup(me),_e?.dispose()},ze=Yt=>{Se(Yt),y.sender.cleanup(me),_e?.dispose()},at={method:w,timerStart:Date.now(),resolve:de,reject:ze};try{yield e.write(Le),F.set(me,at)}catch(Yt){throw i.error("Sending request failed."),at.reject(new B.ResponseError(B.ErrorCodes.MessageWriteError,Yt.message?Yt.message:"Unknown reason")),Yt}}))},onRequest:(d,v)=>{xs();let w=null;return dp.is(d)?(w=void 0,u=d):Ie.string(d)?(w=null,v!==void 0&&(w=d,c.set(d,{handler:v,type:void 0}))):v!==void 0&&(w=d.method,c.set(d.method,{type:d,handler:v})),{dispose:()=>{w!==null&&(w!==void 0?c.delete(w):u=void 0)}}},hasPendingResponse:()=>F.size>0,trace:(d,v,w)=>O(null,null,function*(){let G=!1,xe=St.Text;w!==void 0&&(Ie.boolean(w)?G=w:(G=w.sendNotification||!1,xe=w.traceFormat||St.Text)),x=d,W=xe,x===oe.Off?D=void 0:D=v,G&&!M()&&!k()&&(yield Qn.sendNotification(pp.type,{value:oe.toString(d)}))}),onError:Ht.event,onClose:je.event,onUnhandledNotification:Lt.event,onDispose:A.event,end:()=>{e.end()},dispose:()=>{if(k())return;pe=or.Disposed,A.fire(void 0);let d=new B.ResponseError(B.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let v of F.values())v.reject(d);F=new Map,N=new Map,_=new Set,b=new dy.LinkedMap,Ie.func(e.dispose)&&e.dispose(),Ie.func(t.dispose)&&t.dispose()},listen:()=>{xs(),H$(),pe=or.Listening,t.listen($s)},inspect:()=>{(0,fy.default)().console.log("inspect")}};return Qn.onNotification(eu.type,d=>{if(x===oe.Off||!D)return;let v=x===oe.Verbose||x===oe.Compact;D.log(d.message,v?d.verbose:void 0)}),Qn.onNotification(ja.type,d=>{let v=g.get(d.token);v?v(d.value):kt.fire(d)}),Qn}X.createMessageConnection=rA});var au=H(R=>{"use strict";Object.defineProperty(R,"__esModule",{value:!0});R.ProgressType=R.ProgressToken=R.createMessageConnection=R.NullLogger=R.ConnectionOptions=R.ConnectionStrategy=R.AbstractMessageBuffer=R.WriteableStreamMessageWriter=R.AbstractMessageWriter=R.MessageWriter=R.ReadableStreamMessageReader=R.AbstractMessageReader=R.MessageReader=R.SharedArrayReceiverStrategy=R.SharedArraySenderStrategy=R.CancellationToken=R.CancellationTokenSource=R.Emitter=R.Event=R.Disposable=R.LRUCache=R.Touch=R.LinkedMap=R.ParameterStructures=R.NotificationType9=R.NotificationType8=R.NotificationType7=R.NotificationType6=R.NotificationType5=R.NotificationType4=R.NotificationType3=R.NotificationType2=R.NotificationType1=R.NotificationType0=R.NotificationType=R.ErrorCodes=R.ResponseError=R.RequestType9=R.RequestType8=R.RequestType7=R.RequestType6=R.RequestType5=R.RequestType4=R.RequestType3=R.RequestType2=R.RequestType1=R.RequestType0=R.RequestType=R.Message=R.RAL=void 0;R.MessageStrategy=R.CancellationStrategy=R.CancellationSenderStrategy=R.CancellationReceiverStrategy=R.ConnectionError=R.ConnectionErrors=R.LogTraceNotification=R.SetTraceNotification=R.TraceFormat=R.TraceValues=R.Trace=void 0;var ve=Vd();Object.defineProperty(R,"Message",{enumerable:!0,get:function(){return ve.Message}});Object.defineProperty(R,"RequestType",{enumerable:!0,get:function(){return ve.RequestType}});Object.defineProperty(R,"RequestType0",{enumerable:!0,get:function(){return ve.RequestType0}});Object.defineProperty(R,"RequestType1",{enumerable:!0,get:function(){return ve.RequestType1}});Object.defineProperty(R,"RequestType2",{enumerable:!0,get:function(){return ve.RequestType2}});Object.defineProperty(R,"RequestType3",{enumerable:!0,get:function(){return ve.RequestType3}});Object.defineProperty(R,"RequestType4",{enumerable:!0,get:function(){return ve.RequestType4}});Object.defineProperty(R,"RequestType5",{enumerable:!0,get:function(){return ve.RequestType5}});Object.defineProperty(R,"RequestType6",{enumerable:!0,get:function(){return ve.RequestType6}});Object.defineProperty(R,"RequestType7",{enumerable:!0,get:function(){return ve.RequestType7}});Object.defineProperty(R,"RequestType8",{enumerable:!0,get:function(){return ve.RequestType8}});Object.defineProperty(R,"RequestType9",{enumerable:!0,get:function(){return ve.RequestType9}});Object.defineProperty(R,"ResponseError",{enumerable:!0,get:function(){return ve.ResponseError}});Object.defineProperty(R,"ErrorCodes",{enumerable:!0,get:function(){return ve.ErrorCodes}});Object.defineProperty(R,"NotificationType",{enumerable:!0,get:function(){return ve.NotificationType}});Object.defineProperty(R,"NotificationType0",{enumerable:!0,get:function(){return ve.NotificationType0}});Object.defineProperty(R,"NotificationType1",{enumerable:!0,get:function(){return ve.NotificationType1}});Object.defineProperty(R,"NotificationType2",{enumerable:!0,get:function(){return ve.NotificationType2}});Object.defineProperty(R,"NotificationType3",{enumerable:!0,get:function(){return ve.NotificationType3}});Object.defineProperty(R,"NotificationType4",{enumerable:!0,get:function(){return ve.NotificationType4}});Object.defineProperty(R,"NotificationType5",{enumerable:!0,get:function(){return ve.NotificationType5}});Object.defineProperty(R,"NotificationType6",{enumerable:!0,get:function(){return ve.NotificationType6}});Object.defineProperty(R,"NotificationType7",{enumerable:!0,get:function(){return ve.NotificationType7}});Object.defineProperty(R,"NotificationType8",{enumerable:!0,get:function(){return ve.NotificationType8}});Object.defineProperty(R,"NotificationType9",{enumerable:!0,get:function(){return ve.NotificationType9}});Object.defineProperty(R,"ParameterStructures",{enumerable:!0,get:function(){return ve.ParameterStructures}});var gp=Xd();Object.defineProperty(R,"LinkedMap",{enumerable:!0,get:function(){return gp.LinkedMap}});Object.defineProperty(R,"LRUCache",{enumerable:!0,get:function(){return gp.LRUCache}});Object.defineProperty(R,"Touch",{enumerable:!0,get:function(){return gp.Touch}});var nA=ty();Object.defineProperty(R,"Disposable",{enumerable:!0,get:function(){return nA.Disposable}});var gy=Fn();Object.defineProperty(R,"Event",{enumerable:!0,get:function(){return gy.Event}});Object.defineProperty(R,"Emitter",{enumerable:!0,get:function(){return gy.Emitter}});var yy=va();Object.defineProperty(R,"CancellationTokenSource",{enumerable:!0,get:function(){return yy.CancellationTokenSource}});Object.defineProperty(R,"CancellationToken",{enumerable:!0,get:function(){return yy.CancellationToken}});var Ty=ry();Object.defineProperty(R,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return Ty.SharedArraySenderStrategy}});Object.defineProperty(R,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return Ty.SharedArrayReceiverStrategy}});var yp=iy();Object.defineProperty(R,"MessageReader",{enumerable:!0,get:function(){return yp.MessageReader}});Object.defineProperty(R,"AbstractMessageReader",{enumerable:!0,get:function(){return yp.AbstractMessageReader}});Object.defineProperty(R,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return yp.ReadableStreamMessageReader}});var Tp=uy();Object.defineProperty(R,"MessageWriter",{enumerable:!0,get:function(){return Tp.MessageWriter}});Object.defineProperty(R,"AbstractMessageWriter",{enumerable:!0,get:function(){return Tp.AbstractMessageWriter}});Object.defineProperty(R,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return Tp.WriteableStreamMessageWriter}});var iA=cy();Object.defineProperty(R,"AbstractMessageBuffer",{enumerable:!0,get:function(){return iA.AbstractMessageBuffer}});var Je=hy();Object.defineProperty(R,"ConnectionStrategy",{enumerable:!0,get:function(){return Je.ConnectionStrategy}});Object.defineProperty(R,"ConnectionOptions",{enumerable:!0,get:function(){return Je.ConnectionOptions}});Object.defineProperty(R,"NullLogger",{enumerable:!0,get:function(){return Je.NullLogger}});Object.defineProperty(R,"createMessageConnection",{enumerable:!0,get:function(){return Je.createMessageConnection}});Object.defineProperty(R,"ProgressToken",{enumerable:!0,get:function(){return Je.ProgressToken}});Object.defineProperty(R,"ProgressType",{enumerable:!0,get:function(){return Je.ProgressType}});Object.defineProperty(R,"Trace",{enumerable:!0,get:function(){return Je.Trace}});Object.defineProperty(R,"TraceValues",{enumerable:!0,get:function(){return Je.TraceValues}});Object.defineProperty(R,"TraceFormat",{enumerable:!0,get:function(){return Je.TraceFormat}});Object.defineProperty(R,"SetTraceNotification",{enumerable:!0,get:function(){return Je.SetTraceNotification}});Object.defineProperty(R,"LogTraceNotification",{enumerable:!0,get:function(){return Je.LogTraceNotification}});Object.defineProperty(R,"ConnectionErrors",{enumerable:!0,get:function(){return Je.ConnectionErrors}});Object.defineProperty(R,"ConnectionError",{enumerable:!0,get:function(){return Je.ConnectionError}});Object.defineProperty(R,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return Je.CancellationReceiverStrategy}});Object.defineProperty(R,"CancellationSenderStrategy",{enumerable:!0,get:function(){return Je.CancellationSenderStrategy}});Object.defineProperty(R,"CancellationStrategy",{enumerable:!0,get:function(){return Je.CancellationStrategy}});Object.defineProperty(R,"MessageStrategy",{enumerable:!0,get:function(){return Je.MessageStrategy}});var sA=Xr();R.RAL=sA.default});var $y=H(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});var lr=au(),ou=class t extends lr.AbstractMessageBuffer{constructor(e="utf-8"){super(e),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return t.emptyBuffer}fromString(e,r){return new TextEncoder().encode(e)}toString(e,r){return r==="ascii"?this.asciiDecoder.decode(e):new TextDecoder(r).decode(e)}asNative(e,r){return r===void 0?e:e.slice(0,r)}allocNative(e){return new Uint8Array(e)}};ou.emptyBuffer=new Uint8Array(0);var Rp=class{constructor(e){this.socket=e,this._onData=new lr.Emitter,this._messageListener=r=>{r.data.arrayBuffer().then(i=>{this._onData.fire(new Uint8Array(i))},()=>{(0,lr.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(e){return this.socket.addEventListener("close",e),lr.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),lr.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),lr.Disposable.create(()=>this.socket.removeEventListener("end",e))}onData(e){return this._onData.event(e)}},$p=class{constructor(e){this.socket=e}onClose(e){return this.socket.addEventListener("close",e),lr.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),lr.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),lr.Disposable.create(()=>this.socket.removeEventListener("end",e))}write(e,r){if(typeof e=="string"){if(r!==void 0&&r!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${r}`);this.socket.send(e)}else this.socket.send(e);return Promise.resolve()}end(){this.socket.close()}},aA=new TextEncoder,Ry=Object.freeze({messageBuffer:Object.freeze({create:t=>new ou(t)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(t,e)=>{if(e.charset!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${e.charset}`);return Promise.resolve(aA.encode(JSON.stringify(t,void 0,0)))}}),decoder:Object.freeze({name:"application/json",decode:(t,e)=>{if(!(t instanceof Uint8Array))throw new Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(e.charset).decode(t)))}})}),stream:Object.freeze({asReadableStream:t=>new Rp(t),asWritableStream:t=>new $p(t)}),console,timer:Object.freeze({setTimeout(t,e,...r){let n=setTimeout(t,e,...r);return{dispose:()=>clearTimeout(n)}},setImmediate(t,...e){let r=setTimeout(t,0,...e);return{dispose:()=>clearTimeout(r)}},setInterval(t,e,...r){let n=setInterval(t,e,...r);return{dispose:()=>clearInterval(n)}}})});function vp(){return Ry}(function(t){function e(){lr.RAL.install(Ry)}t.install=e})(vp||(vp={}));xp.default=vp});var Bn=H(Nt=>{"use strict";var oA=Nt&&Nt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),lA=Nt&&Nt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&oA(e,t,r)};Object.defineProperty(Nt,"__esModule",{value:!0});Nt.createMessageConnection=Nt.BrowserMessageWriter=Nt.BrowserMessageReader=void 0;var uA=$y();uA.default.install();var Zi=au();lA(au(),Nt);var Ep=class extends Zi.AbstractMessageReader{constructor(e){super(),this._onData=new Zi.Emitter,this._messageListener=r=>{this._onData.fire(r.data)},e.addEventListener("error",r=>this.fireError(r)),e.onmessage=this._messageListener}listen(e){return this._onData.event(e)}};Nt.BrowserMessageReader=Ep;var Ap=class extends Zi.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.addEventListener("error",r=>this.fireError(r))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){}};Nt.BrowserMessageWriter=Ap;function cA(t,e,r,n){return r===void 0&&(r=Zi.NullLogger),Zi.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,Zi.createMessageConnection)(t,e,r,n)}Nt.createMessageConnection=cA});var Cp=H((E_,vy)=>{"use strict";vy.exports=Bn()});var Ce=H(Rt=>{"use strict";Object.defineProperty(Rt,"__esModule",{value:!0});Rt.ProtocolNotificationType=Rt.ProtocolNotificationType0=Rt.ProtocolRequestType=Rt.ProtocolRequestType0=Rt.RegistrationType=Rt.MessageDirection=void 0;var Qi=Bn(),xy=(function(t){return t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both",t})(xy||(Rt.MessageDirection=xy={})),Sp=class{constructor(e){this.method=e}};Rt.RegistrationType=Sp;var Np=class extends Qi.RequestType0{constructor(e){super(e)}};Rt.ProtocolRequestType0=Np;var kp=class extends Qi.RequestType{constructor(e){super(e,Qi.ParameterStructures.byName)}};Rt.ProtocolRequestType=kp;var wp=class extends Qi.NotificationType0{constructor(e){super(e)}};Rt.ProtocolNotificationType0=wp;var bp=class extends Qi.NotificationType{constructor(e){super(e,Qi.ParameterStructures.byName)}};Rt.ProtocolNotificationType=bp});var lu=H(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});Ue.objectLiteral=Ue.typedArray=Ue.stringArray=Ue.array=Ue.func=Ue.error=Ue.number=Ue.string=Ue.boolean=void 0;function fA(t){return t===!0||t===!1}Ue.boolean=fA;function Ey(t){return typeof t=="string"||t instanceof String}Ue.string=Ey;function dA(t){return typeof t=="number"||t instanceof Number}Ue.number=dA;function pA(t){return t instanceof Error}Ue.error=pA;function mA(t){return typeof t=="function"}Ue.func=mA;function Ay(t){return Array.isArray(t)}Ue.array=Ay;function hA(t){return Ay(t)&&t.every(e=>Ey(e))}Ue.stringArray=hA;function gA(t,e){return Array.isArray(t)&&t.every(e)}Ue.typedArray=gA;function yA(t){return t!==null&&typeof t=="object"}Ue.objectLiteral=yA});var Ny=H(uu=>{"use strict";Object.defineProperty(uu,"__esModule",{value:!0});uu.ImplementationRequest=void 0;var Cy=Ce(),Sy;(function(t){t.method="textDocument/implementation",t.messageDirection=Cy.MessageDirection.clientToServer,t.type=new Cy.ProtocolRequestType(t.method)})(Sy||(uu.ImplementationRequest=Sy={}))});var by=H(cu=>{"use strict";Object.defineProperty(cu,"__esModule",{value:!0});cu.TypeDefinitionRequest=void 0;var ky=Ce(),wy;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=ky.MessageDirection.clientToServer,t.type=new ky.ProtocolRequestType(t.method)})(wy||(cu.TypeDefinitionRequest=wy={}))});var Oy=H(es=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});es.DidChangeWorkspaceFoldersNotification=es.WorkspaceFoldersRequest=void 0;var fu=Ce(),Iy;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=fu.MessageDirection.serverToClient,t.type=new fu.ProtocolRequestType0(t.method)})(Iy||(es.WorkspaceFoldersRequest=Iy={}));var _y;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=fu.MessageDirection.clientToServer,t.type=new fu.ProtocolNotificationType(t.method)})(_y||(es.DidChangeWorkspaceFoldersNotification=_y={}))});var Dy=H(du=>{"use strict";Object.defineProperty(du,"__esModule",{value:!0});du.ConfigurationRequest=void 0;var Py=Ce(),Ly;(function(t){t.method="workspace/configuration",t.messageDirection=Py.MessageDirection.serverToClient,t.type=new Py.ProtocolRequestType(t.method)})(Ly||(du.ConfigurationRequest=Ly={}))});var Gy=H(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.ColorPresentationRequest=ts.DocumentColorRequest=void 0;var pu=Ce(),My;(function(t){t.method="textDocument/documentColor",t.messageDirection=pu.MessageDirection.clientToServer,t.type=new pu.ProtocolRequestType(t.method)})(My||(ts.DocumentColorRequest=My={}));var Fy;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=pu.MessageDirection.clientToServer,t.type=new pu.ProtocolRequestType(t.method)})(Fy||(ts.ColorPresentationRequest=Fy={}))});var zy=H(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});rs.FoldingRangeRefreshRequest=rs.FoldingRangeRequest=void 0;var mu=Ce(),Uy;(function(t){t.method="textDocument/foldingRange",t.messageDirection=mu.MessageDirection.clientToServer,t.type=new mu.ProtocolRequestType(t.method)})(Uy||(rs.FoldingRangeRequest=Uy={}));var jy;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=mu.MessageDirection.serverToClient,t.type=new mu.ProtocolRequestType0(t.method)})(jy||(rs.FoldingRangeRefreshRequest=jy={}))});var Wy=H(hu=>{"use strict";Object.defineProperty(hu,"__esModule",{value:!0});hu.DeclarationRequest=void 0;var qy=Ce(),By;(function(t){t.method="textDocument/declaration",t.messageDirection=qy.MessageDirection.clientToServer,t.type=new qy.ProtocolRequestType(t.method)})(By||(hu.DeclarationRequest=By={}))});var Hy=H(gu=>{"use strict";Object.defineProperty(gu,"__esModule",{value:!0});gu.SelectionRangeRequest=void 0;var Ky=Ce(),Vy;(function(t){t.method="textDocument/selectionRange",t.messageDirection=Ky.MessageDirection.clientToServer,t.type=new Ky.ProtocolRequestType(t.method)})(Vy||(gu.SelectionRangeRequest=Vy={}))});var Zy=H(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.WorkDoneProgressCancelNotification=Qr.WorkDoneProgressCreateRequest=Qr.WorkDoneProgress=void 0;var TA=Bn(),yu=Ce(),Xy;(function(t){t.type=new TA.ProgressType;function e(r){return r===t.type}t.is=e})(Xy||(Qr.WorkDoneProgress=Xy={}));var Yy;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=yu.MessageDirection.serverToClient,t.type=new yu.ProtocolRequestType(t.method)})(Yy||(Qr.WorkDoneProgressCreateRequest=Yy={}));var Jy;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=yu.MessageDirection.clientToServer,t.type=new yu.ProtocolNotificationType(t.method)})(Jy||(Qr.WorkDoneProgressCancelNotification=Jy={}))});var rT=H(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.CallHierarchyOutgoingCallsRequest=en.CallHierarchyIncomingCallsRequest=en.CallHierarchyPrepareRequest=void 0;var ns=Ce(),Qy;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=ns.MessageDirection.clientToServer,t.type=new ns.ProtocolRequestType(t.method)})(Qy||(en.CallHierarchyPrepareRequest=Qy={}));var eT;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=ns.MessageDirection.clientToServer,t.type=new ns.ProtocolRequestType(t.method)})(eT||(en.CallHierarchyIncomingCallsRequest=eT={}));var tT;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=ns.MessageDirection.clientToServer,t.type=new ns.ProtocolRequestType(t.method)})(tT||(en.CallHierarchyOutgoingCallsRequest=tT={}))});var lT=H($t=>{"use strict";Object.defineProperty($t,"__esModule",{value:!0});$t.SemanticTokensRefreshRequest=$t.SemanticTokensRangeRequest=$t.SemanticTokensDeltaRequest=$t.SemanticTokensRequest=$t.SemanticTokensRegistrationType=$t.TokenFormat=void 0;var br=Ce(),nT=(function(t){return t.Relative="relative",t})(nT||($t.TokenFormat=nT={})),Ba;(function(t){t.method="textDocument/semanticTokens",t.type=new br.RegistrationType(t.method)})(Ba||($t.SemanticTokensRegistrationType=Ba={}));var iT;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=br.MessageDirection.clientToServer,t.type=new br.ProtocolRequestType(t.method),t.registrationMethod=Ba.method})(iT||($t.SemanticTokensRequest=iT={}));var sT;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=br.MessageDirection.clientToServer,t.type=new br.ProtocolRequestType(t.method),t.registrationMethod=Ba.method})(sT||($t.SemanticTokensDeltaRequest=sT={}));var aT;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=br.MessageDirection.clientToServer,t.type=new br.ProtocolRequestType(t.method),t.registrationMethod=Ba.method})(aT||($t.SemanticTokensRangeRequest=aT={}));var oT;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=br.MessageDirection.serverToClient,t.type=new br.ProtocolRequestType0(t.method)})(oT||($t.SemanticTokensRefreshRequest=oT={}))});var fT=H(Tu=>{"use strict";Object.defineProperty(Tu,"__esModule",{value:!0});Tu.ShowDocumentRequest=void 0;var uT=Ce(),cT;(function(t){t.method="window/showDocument",t.messageDirection=uT.MessageDirection.serverToClient,t.type=new uT.ProtocolRequestType(t.method)})(cT||(Tu.ShowDocumentRequest=cT={}))});var mT=H(Ru=>{"use strict";Object.defineProperty(Ru,"__esModule",{value:!0});Ru.LinkedEditingRangeRequest=void 0;var dT=Ce(),pT;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=dT.MessageDirection.clientToServer,t.type=new dT.ProtocolRequestType(t.method)})(pT||(Ru.LinkedEditingRangeRequest=pT={}))});var xT=H(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.WillDeleteFilesRequest=st.DidDeleteFilesNotification=st.DidRenameFilesNotification=st.WillRenameFilesRequest=st.DidCreateFilesNotification=st.WillCreateFilesRequest=st.FileOperationPatternKind=void 0;var It=Ce(),hT=(function(t){return t.file="file",t.folder="folder",t})(hT||(st.FileOperationPatternKind=hT={})),gT;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=It.MessageDirection.clientToServer,t.type=new It.ProtocolRequestType(t.method)})(gT||(st.WillCreateFilesRequest=gT={}));var yT;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=It.MessageDirection.clientToServer,t.type=new It.ProtocolNotificationType(t.method)})(yT||(st.DidCreateFilesNotification=yT={}));var TT;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=It.MessageDirection.clientToServer,t.type=new It.ProtocolRequestType(t.method)})(TT||(st.WillRenameFilesRequest=TT={}));var RT;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=It.MessageDirection.clientToServer,t.type=new It.ProtocolNotificationType(t.method)})(RT||(st.DidRenameFilesNotification=RT={}));var $T;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=It.MessageDirection.clientToServer,t.type=new It.ProtocolNotificationType(t.method)})($T||(st.DidDeleteFilesNotification=$T={}));var vT;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=It.MessageDirection.clientToServer,t.type=new It.ProtocolRequestType(t.method)})(vT||(st.WillDeleteFilesRequest=vT={}))});var NT=H(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.MonikerRequest=tn.MonikerKind=tn.UniquenessLevel=void 0;var ET=Ce(),AT=(function(t){return t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global",t})(AT||(tn.UniquenessLevel=AT={})),CT=(function(t){return t.$import="import",t.$export="export",t.local="local",t})(CT||(tn.MonikerKind=CT={})),ST;(function(t){t.method="textDocument/moniker",t.messageDirection=ET.MessageDirection.clientToServer,t.type=new ET.ProtocolRequestType(t.method)})(ST||(tn.MonikerRequest=ST={}))});var IT=H(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.TypeHierarchySubtypesRequest=rn.TypeHierarchySupertypesRequest=rn.TypeHierarchyPrepareRequest=void 0;var is=Ce(),kT;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=is.MessageDirection.clientToServer,t.type=new is.ProtocolRequestType(t.method)})(kT||(rn.TypeHierarchyPrepareRequest=kT={}));var wT;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=is.MessageDirection.clientToServer,t.type=new is.ProtocolRequestType(t.method)})(wT||(rn.TypeHierarchySupertypesRequest=wT={}));var bT;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=is.MessageDirection.clientToServer,t.type=new is.ProtocolRequestType(t.method)})(bT||(rn.TypeHierarchySubtypesRequest=bT={}))});var PT=H(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.InlineValueRefreshRequest=ss.InlineValueRequest=void 0;var $u=Ce(),_T;(function(t){t.method="textDocument/inlineValue",t.messageDirection=$u.MessageDirection.clientToServer,t.type=new $u.ProtocolRequestType(t.method)})(_T||(ss.InlineValueRequest=_T={}));var OT;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=$u.MessageDirection.serverToClient,t.type=new $u.ProtocolRequestType0(t.method)})(OT||(ss.InlineValueRefreshRequest=OT={}))});var FT=H(nn=>{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.InlayHintRefreshRequest=nn.InlayHintResolveRequest=nn.InlayHintRequest=void 0;var as=Ce(),LT;(function(t){t.method="textDocument/inlayHint",t.messageDirection=as.MessageDirection.clientToServer,t.type=new as.ProtocolRequestType(t.method)})(LT||(nn.InlayHintRequest=LT={}));var DT;(function(t){t.method="inlayHint/resolve",t.messageDirection=as.MessageDirection.clientToServer,t.type=new as.ProtocolRequestType(t.method)})(DT||(nn.InlayHintResolveRequest=DT={}));var MT;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=as.MessageDirection.serverToClient,t.type=new as.ProtocolRequestType0(t.method)})(MT||(nn.InlayHintRefreshRequest=MT={}))});var WT=H(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.DiagnosticRefreshRequest=_t.WorkspaceDiagnosticRequest=_t.DocumentDiagnosticRequest=_t.DocumentDiagnosticReportKind=_t.DiagnosticServerCancellationData=void 0;var BT=Bn(),RA=lu(),os=Ce(),GT;(function(t){function e(r){let n=r;return n&&RA.boolean(n.retriggerRequest)}t.is=e})(GT||(_t.DiagnosticServerCancellationData=GT={}));var UT=(function(t){return t.Full="full",t.Unchanged="unchanged",t})(UT||(_t.DocumentDiagnosticReportKind=UT={})),jT;(function(t){t.method="textDocument/diagnostic",t.messageDirection=os.MessageDirection.clientToServer,t.type=new os.ProtocolRequestType(t.method),t.partialResult=new BT.ProgressType})(jT||(_t.DocumentDiagnosticRequest=jT={}));var zT;(function(t){t.method="workspace/diagnostic",t.messageDirection=os.MessageDirection.clientToServer,t.type=new os.ProtocolRequestType(t.method),t.partialResult=new BT.ProgressType})(zT||(_t.WorkspaceDiagnosticRequest=zT={}));var qT;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=os.MessageDirection.serverToClient,t.type=new os.ProtocolRequestType0(t.method)})(qT||(_t.DiagnosticRefreshRequest=qT={}))});var ZT=H(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.DidCloseNotebookDocumentNotification=Pe.DidSaveNotebookDocumentNotification=Pe.DidChangeNotebookDocumentNotification=Pe.NotebookCellArrayChange=Pe.DidOpenNotebookDocumentNotification=Pe.NotebookDocumentSyncRegistrationType=Pe.NotebookDocument=Pe.NotebookCell=Pe.ExecutionSummary=Pe.NotebookCellKind=void 0;var Wa=(Mi(),Hu(Ol)),Vt=lu(),ur=Ce(),Ip;(function(t){t.Markup=1,t.Code=2;function e(r){return r===1||r===2}t.is=e})(Ip||(Pe.NotebookCellKind=Ip={}));var _p;(function(t){function e(i,s){let a={executionOrder:i};return(s===!0||s===!1)&&(a.success=s),a}t.create=e;function r(i){let s=i;return Vt.objectLiteral(s)&&Wa.uinteger.is(s.executionOrder)&&(s.success===void 0||Vt.boolean(s.success))}t.is=r;function n(i,s){return i===s?!0:i==null||s===null||s===void 0?!1:i.executionOrder===s.executionOrder&&i.success===s.success}t.equals=n})(_p||(Pe.ExecutionSummary=_p={}));var vu;(function(t){function e(s,a){return{kind:s,document:a}}t.create=e;function r(s){let a=s;return Vt.objectLiteral(a)&&Ip.is(a.kind)&&Wa.DocumentUri.is(a.document)&&(a.metadata===void 0||Vt.objectLiteral(a.metadata))}t.is=r;function n(s,a){let o=new Set;return s.document!==a.document&&o.add("document"),s.kind!==a.kind&&o.add("kind"),s.executionSummary!==a.executionSummary&&o.add("executionSummary"),(s.metadata!==void 0||a.metadata!==void 0)&&!i(s.metadata,a.metadata)&&o.add("metadata"),(s.executionSummary!==void 0||a.executionSummary!==void 0)&&!_p.equals(s.executionSummary,a.executionSummary)&&o.add("executionSummary"),o}t.diff=n;function i(s,a){if(s===a)return!0;if(s==null||a===null||a===void 0||typeof s!=typeof a||typeof s!="object")return!1;let o=Array.isArray(s),l=Array.isArray(a);if(o!==l)return!1;if(o&&l){if(s.length!==a.length)return!1;for(let u=0;u{"use strict";Object.defineProperty(xu,"__esModule",{value:!0});xu.InlineCompletionRequest=void 0;var QT=Ce(),eR;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=QT.MessageDirection.clientToServer,t.type=new QT.ProtocolRequestType(t.method)})(eR||(xu.InlineCompletionRequest=eR={}))});var m$=H(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.WorkspaceSymbolRequest=f.CodeActionResolveRequest=f.CodeActionRequest=f.DocumentSymbolRequest=f.DocumentHighlightRequest=f.ReferencesRequest=f.DefinitionRequest=f.SignatureHelpRequest=f.SignatureHelpTriggerKind=f.HoverRequest=f.CompletionResolveRequest=f.CompletionRequest=f.CompletionTriggerKind=f.PublishDiagnosticsNotification=f.WatchKind=f.RelativePattern=f.FileChangeType=f.DidChangeWatchedFilesNotification=f.WillSaveTextDocumentWaitUntilRequest=f.WillSaveTextDocumentNotification=f.TextDocumentSaveReason=f.DidSaveTextDocumentNotification=f.DidCloseTextDocumentNotification=f.DidChangeTextDocumentNotification=f.TextDocumentContentChangeEvent=f.DidOpenTextDocumentNotification=f.TextDocumentSyncKind=f.TelemetryEventNotification=f.LogMessageNotification=f.ShowMessageRequest=f.ShowMessageNotification=f.MessageType=f.DidChangeConfigurationNotification=f.ExitNotification=f.ShutdownRequest=f.InitializedNotification=f.InitializeErrorCodes=f.InitializeRequest=f.WorkDoneProgressOptions=f.TextDocumentRegistrationOptions=f.StaticRegistrationOptions=f.PositionEncodingKind=f.FailureHandlingKind=f.ResourceOperationKind=f.UnregistrationRequest=f.RegistrationRequest=f.DocumentSelector=f.NotebookCellTextDocumentFilter=f.NotebookDocumentFilter=f.TextDocumentFilter=void 0;f.MonikerRequest=f.MonikerKind=f.UniquenessLevel=f.WillDeleteFilesRequest=f.DidDeleteFilesNotification=f.WillRenameFilesRequest=f.DidRenameFilesNotification=f.WillCreateFilesRequest=f.DidCreateFilesNotification=f.FileOperationPatternKind=f.LinkedEditingRangeRequest=f.ShowDocumentRequest=f.SemanticTokensRegistrationType=f.SemanticTokensRefreshRequest=f.SemanticTokensRangeRequest=f.SemanticTokensDeltaRequest=f.SemanticTokensRequest=f.TokenFormat=f.CallHierarchyPrepareRequest=f.CallHierarchyOutgoingCallsRequest=f.CallHierarchyIncomingCallsRequest=f.WorkDoneProgressCancelNotification=f.WorkDoneProgressCreateRequest=f.WorkDoneProgress=f.SelectionRangeRequest=f.DeclarationRequest=f.FoldingRangeRefreshRequest=f.FoldingRangeRequest=f.ColorPresentationRequest=f.DocumentColorRequest=f.ConfigurationRequest=f.DidChangeWorkspaceFoldersNotification=f.WorkspaceFoldersRequest=f.TypeDefinitionRequest=f.ImplementationRequest=f.ApplyWorkspaceEditRequest=f.ExecuteCommandRequest=f.PrepareRenameRequest=f.RenameRequest=f.PrepareSupportDefaultBehavior=f.DocumentOnTypeFormattingRequest=f.DocumentRangesFormattingRequest=f.DocumentRangeFormattingRequest=f.DocumentFormattingRequest=f.DocumentLinkResolveRequest=f.DocumentLinkRequest=f.CodeLensRefreshRequest=f.CodeLensResolveRequest=f.CodeLensRequest=f.WorkspaceSymbolResolveRequest=void 0;f.InlineCompletionRequest=f.DidCloseNotebookDocumentNotification=f.DidSaveNotebookDocumentNotification=f.DidChangeNotebookDocumentNotification=f.NotebookCellArrayChange=f.DidOpenNotebookDocumentNotification=f.NotebookDocumentSyncRegistrationType=f.NotebookDocument=f.NotebookCell=f.ExecutionSummary=f.NotebookCellKind=f.DiagnosticRefreshRequest=f.WorkspaceDiagnosticRequest=f.DocumentDiagnosticRequest=f.DocumentDiagnosticReportKind=f.DiagnosticServerCancellationData=f.InlayHintRefreshRequest=f.InlayHintResolveRequest=f.InlayHintRequest=f.InlineValueRefreshRequest=f.InlineValueRequest=f.TypeHierarchySupertypesRequest=f.TypeHierarchySubtypesRequest=f.TypeHierarchyPrepareRequest=void 0;var S=Ce(),rR=(Mi(),Hu(Ol)),He=lu(),$A=Ny();Object.defineProperty(f,"ImplementationRequest",{enumerable:!0,get:function(){return $A.ImplementationRequest}});var vA=by();Object.defineProperty(f,"TypeDefinitionRequest",{enumerable:!0,get:function(){return vA.TypeDefinitionRequest}});var c$=Oy();Object.defineProperty(f,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return c$.WorkspaceFoldersRequest}});Object.defineProperty(f,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return c$.DidChangeWorkspaceFoldersNotification}});var xA=Dy();Object.defineProperty(f,"ConfigurationRequest",{enumerable:!0,get:function(){return xA.ConfigurationRequest}});var f$=Gy();Object.defineProperty(f,"DocumentColorRequest",{enumerable:!0,get:function(){return f$.DocumentColorRequest}});Object.defineProperty(f,"ColorPresentationRequest",{enumerable:!0,get:function(){return f$.ColorPresentationRequest}});var d$=zy();Object.defineProperty(f,"FoldingRangeRequest",{enumerable:!0,get:function(){return d$.FoldingRangeRequest}});Object.defineProperty(f,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return d$.FoldingRangeRefreshRequest}});var EA=Wy();Object.defineProperty(f,"DeclarationRequest",{enumerable:!0,get:function(){return EA.DeclarationRequest}});var AA=Hy();Object.defineProperty(f,"SelectionRangeRequest",{enumerable:!0,get:function(){return AA.SelectionRangeRequest}});var Mp=Zy();Object.defineProperty(f,"WorkDoneProgress",{enumerable:!0,get:function(){return Mp.WorkDoneProgress}});Object.defineProperty(f,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return Mp.WorkDoneProgressCreateRequest}});Object.defineProperty(f,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return Mp.WorkDoneProgressCancelNotification}});var Fp=rT();Object.defineProperty(f,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return Fp.CallHierarchyIncomingCallsRequest}});Object.defineProperty(f,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return Fp.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(f,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return Fp.CallHierarchyPrepareRequest}});var us=lT();Object.defineProperty(f,"TokenFormat",{enumerable:!0,get:function(){return us.TokenFormat}});Object.defineProperty(f,"SemanticTokensRequest",{enumerable:!0,get:function(){return us.SemanticTokensRequest}});Object.defineProperty(f,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return us.SemanticTokensDeltaRequest}});Object.defineProperty(f,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return us.SemanticTokensRangeRequest}});Object.defineProperty(f,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return us.SemanticTokensRefreshRequest}});Object.defineProperty(f,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return us.SemanticTokensRegistrationType}});var CA=fT();Object.defineProperty(f,"ShowDocumentRequest",{enumerable:!0,get:function(){return CA.ShowDocumentRequest}});var SA=mT();Object.defineProperty(f,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return SA.LinkedEditingRangeRequest}});var Wn=xT();Object.defineProperty(f,"FileOperationPatternKind",{enumerable:!0,get:function(){return Wn.FileOperationPatternKind}});Object.defineProperty(f,"DidCreateFilesNotification",{enumerable:!0,get:function(){return Wn.DidCreateFilesNotification}});Object.defineProperty(f,"WillCreateFilesRequest",{enumerable:!0,get:function(){return Wn.WillCreateFilesRequest}});Object.defineProperty(f,"DidRenameFilesNotification",{enumerable:!0,get:function(){return Wn.DidRenameFilesNotification}});Object.defineProperty(f,"WillRenameFilesRequest",{enumerable:!0,get:function(){return Wn.WillRenameFilesRequest}});Object.defineProperty(f,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return Wn.DidDeleteFilesNotification}});Object.defineProperty(f,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return Wn.WillDeleteFilesRequest}});var Gp=NT();Object.defineProperty(f,"UniquenessLevel",{enumerable:!0,get:function(){return Gp.UniquenessLevel}});Object.defineProperty(f,"MonikerKind",{enumerable:!0,get:function(){return Gp.MonikerKind}});Object.defineProperty(f,"MonikerRequest",{enumerable:!0,get:function(){return Gp.MonikerRequest}});var Up=IT();Object.defineProperty(f,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return Up.TypeHierarchyPrepareRequest}});Object.defineProperty(f,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return Up.TypeHierarchySubtypesRequest}});Object.defineProperty(f,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return Up.TypeHierarchySupertypesRequest}});var p$=PT();Object.defineProperty(f,"InlineValueRequest",{enumerable:!0,get:function(){return p$.InlineValueRequest}});Object.defineProperty(f,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return p$.InlineValueRefreshRequest}});var jp=FT();Object.defineProperty(f,"InlayHintRequest",{enumerable:!0,get:function(){return jp.InlayHintRequest}});Object.defineProperty(f,"InlayHintResolveRequest",{enumerable:!0,get:function(){return jp.InlayHintResolveRequest}});Object.defineProperty(f,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return jp.InlayHintRefreshRequest}});var Ka=WT();Object.defineProperty(f,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return Ka.DiagnosticServerCancellationData}});Object.defineProperty(f,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return Ka.DocumentDiagnosticReportKind}});Object.defineProperty(f,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return Ka.DocumentDiagnosticRequest}});Object.defineProperty(f,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return Ka.WorkspaceDiagnosticRequest}});Object.defineProperty(f,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return Ka.DiagnosticRefreshRequest}});var cr=ZT();Object.defineProperty(f,"NotebookCellKind",{enumerable:!0,get:function(){return cr.NotebookCellKind}});Object.defineProperty(f,"ExecutionSummary",{enumerable:!0,get:function(){return cr.ExecutionSummary}});Object.defineProperty(f,"NotebookCell",{enumerable:!0,get:function(){return cr.NotebookCell}});Object.defineProperty(f,"NotebookDocument",{enumerable:!0,get:function(){return cr.NotebookDocument}});Object.defineProperty(f,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return cr.NotebookDocumentSyncRegistrationType}});Object.defineProperty(f,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return cr.DidOpenNotebookDocumentNotification}});Object.defineProperty(f,"NotebookCellArrayChange",{enumerable:!0,get:function(){return cr.NotebookCellArrayChange}});Object.defineProperty(f,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return cr.DidChangeNotebookDocumentNotification}});Object.defineProperty(f,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return cr.DidSaveNotebookDocumentNotification}});Object.defineProperty(f,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return cr.DidCloseNotebookDocumentNotification}});var NA=tR();Object.defineProperty(f,"InlineCompletionRequest",{enumerable:!0,get:function(){return NA.InlineCompletionRequest}});var Op;(function(t){function e(r){let n=r;return He.string(n)||He.string(n.language)||He.string(n.scheme)||He.string(n.pattern)}t.is=e})(Op||(f.TextDocumentFilter=Op={}));var Pp;(function(t){function e(r){let n=r;return He.objectLiteral(n)&&(He.string(n.notebookType)||He.string(n.scheme)||He.string(n.pattern))}t.is=e})(Pp||(f.NotebookDocumentFilter=Pp={}));var Lp;(function(t){function e(r){let n=r;return He.objectLiteral(n)&&(He.string(n.notebook)||Pp.is(n.notebook))&&(n.language===void 0||He.string(n.language))}t.is=e})(Lp||(f.NotebookCellTextDocumentFilter=Lp={}));var Dp;(function(t){function e(r){if(!Array.isArray(r))return!1;for(let n of r)if(!He.string(n)&&!Op.is(n)&&!Lp.is(n))return!1;return!0}t.is=e})(Dp||(f.DocumentSelector=Dp={}));var nR;(function(t){t.method="client/registerCapability",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType(t.method)})(nR||(f.RegistrationRequest=nR={}));var iR;(function(t){t.method="client/unregisterCapability",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType(t.method)})(iR||(f.UnregistrationRequest=iR={}));var sR=(function(t){return t.Create="create",t.Rename="rename",t.Delete="delete",t})(sR||(f.ResourceOperationKind=sR={})),aR=(function(t){return t.Abort="abort",t.Transactional="transactional",t.TextOnlyTransactional="textOnlyTransactional",t.Undo="undo",t})(aR||(f.FailureHandlingKind=aR={})),oR=(function(t){return t.UTF8="utf-8",t.UTF16="utf-16",t.UTF32="utf-32",t})(oR||(f.PositionEncodingKind=oR={})),lR;(function(t){function e(r){let n=r;return n&&He.string(n.id)&&n.id.length>0}t.hasId=e})(lR||(f.StaticRegistrationOptions=lR={}));var uR;(function(t){function e(r){let n=r;return n&&(n.documentSelector===null||Dp.is(n.documentSelector))}t.is=e})(uR||(f.TextDocumentRegistrationOptions=uR={}));var cR;(function(t){function e(n){let i=n;return He.objectLiteral(i)&&(i.workDoneProgress===void 0||He.boolean(i.workDoneProgress))}t.is=e;function r(n){let i=n;return i&&He.boolean(i.workDoneProgress)}t.hasWorkDoneProgress=r})(cR||(f.WorkDoneProgressOptions=cR={}));var fR;(function(t){t.method="initialize",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(fR||(f.InitializeRequest=fR={}));var dR=(function(t){return t.unknownProtocolVersion=1,t})(dR||(f.InitializeErrorCodes=dR={})),pR;(function(t){t.method="initialized",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(pR||(f.InitializedNotification=pR={}));var mR;(function(t){t.method="shutdown",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType0(t.method)})(mR||(f.ShutdownRequest=mR={}));var hR;(function(t){t.method="exit",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType0(t.method)})(hR||(f.ExitNotification=hR={}));var gR;(function(t){t.method="workspace/didChangeConfiguration",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(gR||(f.DidChangeConfigurationNotification=gR={}));var yR=(function(t){return t.Error=1,t.Warning=2,t.Info=3,t.Log=4,t.Debug=5,t})(yR||(f.MessageType=yR={})),TR;(function(t){t.method="window/showMessage",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})(TR||(f.ShowMessageNotification=TR={}));var RR;(function(t){t.method="window/showMessageRequest",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType(t.method)})(RR||(f.ShowMessageRequest=RR={}));var $R;(function(t){t.method="window/logMessage",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})($R||(f.LogMessageNotification=$R={}));var vR;(function(t){t.method="telemetry/event",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})(vR||(f.TelemetryEventNotification=vR={}));var xR=(function(t){return t.None=0,t.Full=1,t.Incremental=2,t})(xR||(f.TextDocumentSyncKind=xR={})),ER;(function(t){t.method="textDocument/didOpen",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(ER||(f.DidOpenTextDocumentNotification=ER={}));var AR;(function(t){function e(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}t.isIncremental=e;function r(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}t.isFull=r})(AR||(f.TextDocumentContentChangeEvent=AR={}));var CR;(function(t){t.method="textDocument/didChange",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(CR||(f.DidChangeTextDocumentNotification=CR={}));var SR;(function(t){t.method="textDocument/didClose",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(SR||(f.DidCloseTextDocumentNotification=SR={}));var NR;(function(t){t.method="textDocument/didSave",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(NR||(f.DidSaveTextDocumentNotification=NR={}));var kR=(function(t){return t.Manual=1,t.AfterDelay=2,t.FocusOut=3,t})(kR||(f.TextDocumentSaveReason=kR={})),wR;(function(t){t.method="textDocument/willSave",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(wR||(f.WillSaveTextDocumentNotification=wR={}));var bR;(function(t){t.method="textDocument/willSaveWaitUntil",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(bR||(f.WillSaveTextDocumentWaitUntilRequest=bR={}));var IR;(function(t){t.method="workspace/didChangeWatchedFiles",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(IR||(f.DidChangeWatchedFilesNotification=IR={}));var _R=(function(t){return t.Created=1,t.Changed=2,t.Deleted=3,t})(_R||(f.FileChangeType=_R={})),OR;(function(t){function e(r){let n=r;return He.objectLiteral(n)&&(rR.URI.is(n.baseUri)||rR.WorkspaceFolder.is(n.baseUri))&&He.string(n.pattern)}t.is=e})(OR||(f.RelativePattern=OR={}));var PR=(function(t){return t.Create=1,t.Change=2,t.Delete=4,t})(PR||(f.WatchKind=PR={})),LR;(function(t){t.method="textDocument/publishDiagnostics",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})(LR||(f.PublishDiagnosticsNotification=LR={}));var DR=(function(t){return t.Invoked=1,t.TriggerCharacter=2,t.TriggerForIncompleteCompletions=3,t})(DR||(f.CompletionTriggerKind=DR={})),MR;(function(t){t.method="textDocument/completion",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(MR||(f.CompletionRequest=MR={}));var FR;(function(t){t.method="completionItem/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(FR||(f.CompletionResolveRequest=FR={}));var GR;(function(t){t.method="textDocument/hover",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(GR||(f.HoverRequest=GR={}));var UR=(function(t){return t.Invoked=1,t.TriggerCharacter=2,t.ContentChange=3,t})(UR||(f.SignatureHelpTriggerKind=UR={})),jR;(function(t){t.method="textDocument/signatureHelp",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(jR||(f.SignatureHelpRequest=jR={}));var zR;(function(t){t.method="textDocument/definition",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(zR||(f.DefinitionRequest=zR={}));var qR;(function(t){t.method="textDocument/references",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(qR||(f.ReferencesRequest=qR={}));var BR;(function(t){t.method="textDocument/documentHighlight",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(BR||(f.DocumentHighlightRequest=BR={}));var WR;(function(t){t.method="textDocument/documentSymbol",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(WR||(f.DocumentSymbolRequest=WR={}));var KR;(function(t){t.method="textDocument/codeAction",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(KR||(f.CodeActionRequest=KR={}));var VR;(function(t){t.method="codeAction/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(VR||(f.CodeActionResolveRequest=VR={}));var HR;(function(t){t.method="workspace/symbol",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(HR||(f.WorkspaceSymbolRequest=HR={}));var XR;(function(t){t.method="workspaceSymbol/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(XR||(f.WorkspaceSymbolResolveRequest=XR={}));var YR;(function(t){t.method="textDocument/codeLens",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(YR||(f.CodeLensRequest=YR={}));var JR;(function(t){t.method="codeLens/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(JR||(f.CodeLensResolveRequest=JR={}));var ZR;(function(t){t.method="workspace/codeLens/refresh",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType0(t.method)})(ZR||(f.CodeLensRefreshRequest=ZR={}));var QR;(function(t){t.method="textDocument/documentLink",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(QR||(f.DocumentLinkRequest=QR={}));var e$;(function(t){t.method="documentLink/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(e$||(f.DocumentLinkResolveRequest=e$={}));var t$;(function(t){t.method="textDocument/formatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(t$||(f.DocumentFormattingRequest=t$={}));var r$;(function(t){t.method="textDocument/rangeFormatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(r$||(f.DocumentRangeFormattingRequest=r$={}));var n$;(function(t){t.method="textDocument/rangesFormatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(n$||(f.DocumentRangesFormattingRequest=n$={}));var i$;(function(t){t.method="textDocument/onTypeFormatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(i$||(f.DocumentOnTypeFormattingRequest=i$={}));var s$=(function(t){return t.Identifier=1,t})(s$||(f.PrepareSupportDefaultBehavior=s$={})),a$;(function(t){t.method="textDocument/rename",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(a$||(f.RenameRequest=a$={}));var o$;(function(t){t.method="textDocument/prepareRename",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(o$||(f.PrepareRenameRequest=o$={}));var l$;(function(t){t.method="workspace/executeCommand",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(l$||(f.ExecuteCommandRequest=l$={}));var u$;(function(t){t.method="workspace/applyEdit",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType("workspace/applyEdit")})(u$||(f.ApplyWorkspaceEditRequest=u$={}))});var g$=H(Eu=>{"use strict";Object.defineProperty(Eu,"__esModule",{value:!0});Eu.createProtocolConnection=void 0;var h$=Bn();function kA(t,e,r,n){return h$.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,h$.createMessageConnection)(t,e,r,n)}Eu.createProtocolConnection=kA});var T$=H(vt=>{"use strict";var wA=vt&&vt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Au=vt&&vt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&wA(e,t,r)};Object.defineProperty(vt,"__esModule",{value:!0});vt.LSPErrorCodes=vt.createProtocolConnection=void 0;Au(Bn(),vt);Au((Mi(),Hu(Ol)),vt);Au(Ce(),vt);Au(m$(),vt);var bA=g$();Object.defineProperty(vt,"createProtocolConnection",{enumerable:!0,get:function(){return bA.createProtocolConnection}});var y$=(function(t){return t.lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800,t})(y$||(vt.LSPErrorCodes=y$={}))});var $$=H(fr=>{"use strict";var IA=fr&&fr.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),R$=fr&&fr.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&IA(e,t,r)};Object.defineProperty(fr,"__esModule",{value:!0});fr.createProtocolConnection=void 0;var _A=Cp();R$(Cp(),fr);R$(T$(),fr);function OA(t,e,r,n){return(0,_A.createMessageConnection)(t,e,r,n)}fr.createProtocolConnection=OA});var Oe={};_r(Oe,{AbstractAstReflection:()=>an,AbstractCstNode:()=>ga,AbstractLangiumParser:()=>ya,AbstractParserErrorMessageProvider:()=>Ll,AbstractThreadedAsyncParser:()=>Xp,AstUtils:()=>yo,BiMap:()=>Un,Cancellation:()=>z,CompositeCstNodeImpl:()=>Ln,ContextCache:()=>jn,CstNodeBuilder:()=>ha,CstUtils:()=>Mo,DEFAULT_TOKENIZE_OPTIONS:()=>Cu,DONE_RESULT:()=>et,DatatypeSymbol:()=>Pl,DefaultAstNodeDescriptionProvider:()=>La,DefaultAstNodeLocator:()=>Ma,DefaultAsyncParser:()=>to,DefaultCommentProvider:()=>eo,DefaultConfigurationProvider:()=>Fa,DefaultDocumentBuilder:()=>Va,DefaultDocumentValidator:()=>Pa,DefaultHydrator:()=>no,DefaultIndexManager:()=>Ha,DefaultJsonSerializer:()=>Ia,DefaultLangiumDocumentFactory:()=>xa,DefaultLangiumDocuments:()=>Ea,DefaultLangiumProfiler:()=>rm,DefaultLexer:()=>Kn,DefaultLexerErrorMessageProvider:()=>Ya,DefaultLinker:()=>Aa,DefaultNameProvider:()=>Ca,DefaultReferenceDescriptionProvider:()=>Da,DefaultReferences:()=>Sa,DefaultScopeComputation:()=>Na,DefaultScopeProvider:()=>ba,DefaultServiceRegistry:()=>_a,DefaultTokenBuilder:()=>wr,DefaultValueConverter:()=>Mn,DefaultWorkspaceLock:()=>ro,DefaultWorkspaceManager:()=>Xa,Deferred:()=>pt,Disposable:()=>sn,DisposableCache:()=>Vi,DocumentCache:()=>Bl,DocumentState:()=>Q,DocumentValidator:()=>Kt,EMPTY_SCOPE:()=>VE,EMPTY_STREAM:()=>Pr,EmptyFileSystem:()=>tm,EmptyFileSystemProvider:()=>Iu,ErrorWithLocation:()=>vn,GrammarAST:()=>Ds,GrammarUtils:()=>qo,IndentationAwareLexer:()=>em,IndentationAwareTokenBuilder:()=>bu,JSDocDocumentationProvider:()=>Qa,LangiumCompletionParser:()=>Ra,LangiumParser:()=>Ta,LangiumParserErrorMessageProvider:()=>Gi,LeafCstNodeImpl:()=>Pn,LexingMode:()=>fs,MapScope:()=>vd,Module:()=>w$,MultiMap:()=>nt,MultiMapScope:()=>ka,OperationCancelled:()=>bt,ParserWorker:()=>Yp,ProfilingTask:()=>_u,Reduction:()=>ei,RefResolving:()=>Gn,RegExpUtils:()=>Uo,RootCstNodeImpl:()=>Fi,SimpleCache:()=>wa,StreamImpl:()=>Et,StreamScope:()=>Ki,TextDocument:()=>qi,TreeStreamImpl:()=>Jt,URI:()=>Be,UriTrie:()=>Wi,UriUtils:()=>De,VALIDATE_EACH_NODE:()=>Xg,ValidationCategory:()=>Wl,ValidationRegistry:()=>Oa,ValueConverter:()=>sr,WorkspaceCache:()=>Hi,assertCondition:()=>Fm,assertUnreachable:()=>Qt,createCompletionParser:()=>fd,createDefaultCoreModule:()=>Jp,createDefaultSharedCoreModule:()=>Zp,createGrammarConfig:()=>Uc,createLangiumParser:()=>dd,createParser:()=>$a,delayNextTick:()=>Rd,diagnosticData:()=>zn,eagerLoad:()=>I$,getDiagnosticRange:()=>Yg,indentationBuilderDefaultOptions:()=>Qp,inject:()=>wu,interruptAndCheck:()=>be,isAstNode:()=>Ne,isAstNodeDescription:()=>Yu,isAstNodeWithComment:()=>xd,isCompositeCstNode:()=>Gt,isIMultiModeLexerDefinition:()=>qp,isJSDoc:()=>Vp,isLeafCstNode:()=>Or,isLinkingError:()=>on,isMultiReference:()=>xt,isNamed:()=>Vg,isOperationCancelled:()=>ar,isReference:()=>qe,isRootCstNode:()=>As,isTokenTypeArray:()=>Su,isTokenTypeDictionary:()=>zp,loadGrammarFromJson:()=>Ot,parseJSDoc:()=>Kp,prepareLangiumParser:()=>Mg,setInterruptionPeriod:()=>zg,startCancelableOperation:()=>zl,stream:()=>J,toDiagnosticData:()=>Jg,toDiagnosticSeverity:()=>Kl});var Mo={};_r(Mo,{DefaultNameRegexp:()=>Do,RangeComparison:()=>Tr,compareRange:()=>Pm,findCommentNode:()=>vc,findDeclarationNodeAtOffset:()=>$v,findLeafNodeAtOffset:()=>xc,findLeafNodeBeforeOffset:()=>Lm,flattenCst:()=>Rv,getDatatypeNode:()=>Tv,getInteriorNodes:()=>Ev,getNextNode:()=>vv,getPreviousNode:()=>Mm,getStartlineNode:()=>xv,inRange:()=>ec,isChildNode:()=>$c,isCommentNode:()=>Rc,streamCst:()=>Rn,toDocumentSegment:()=>$n,tokenToRange:()=>fi});function Ne(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function qe(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function xt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function Yu(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function on(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}var an=class{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){let r=this.types[e.container.$type];if(!r)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);let n=r.properties[e.property]?.referenceType;if(!n)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return n}getTypeMetaData(e){let r=this.types[e];return r||{name:e,properties:{},superTypes:[]}}isInstance(e,r){return Ne(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let s=this.types[e],a=s?s.superTypes.some(o=>this.isSubtype(o,r)):!1;return n[r]=a,a}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let s of n)this.isSubtype(s,e)&&i.push(s);return this.allSubtypes[e]=i,i}}};function Gt(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function Or(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function As(t){return Gt(t)&&typeof t.fullText=="string"}var Et=class t{constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new t(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return et})}join(e=","){let r=this.iterator(),n="",i,s=!1;do i=r.next(),i.done||(s&&(n+=e),n+=Q$(i.value)),s=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,s=n.next();for(;!s.done;){if(i>=r&&s.value===e)return i;s=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?et:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return et})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,s=n.next();for(;!s.done;)i===void 0?i=s.value:i=e(i,s.value),s=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let s=this.recursiveReduce(e,r,n);return s===void 0?i.value:r(s,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let s=r.iterator.next();if(s.done)r.iterator=void 0;else return s}let{done:n,value:i}=this.nextFn(r.this);if(!n){let s=e(i);if(ho(s))r.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}}while(r.iterator);return et})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let a=n.iterator.next();if(a.done)n.iterator=void 0;else return a}let{done:i,value:s}=r.nextFn(n.this);if(!i)if(ho(s))n.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}while(n.iterator);return et})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?et:this.nextFn(r.state)))}distinct(e){return new t(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return et})}exclude(e,r){let n=new Set;for(let i of e){let s=r?r(i):i;n.add(s)}return this.filter(i=>{let s=r?r(i):i;return!n.has(s)})}};function Q$(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function ho(t){return!!t&&typeof t[Symbol.iterator]=="function"}var Pr=new Et(()=>{},()=>et),et=Object.freeze({done:!0,value:void 0});function J(...t){if(t.length===1){let e=t[0];if(e instanceof Et)return e;if(ho(e))return new Et(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new Et(()=>({index:0}),r=>r.index1?new Et(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let a=i.iterators[i.iterators.length-1].next();if(a.done)i.iterators.pop();else return i.iterators.push(r(a.value)[Symbol.iterator]()),a}return et})}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}},ei;(function(t){function e(s){return s.reduce((a,o)=>a+o,0)}t.sum=e;function r(s){return s.reduce((a,o)=>a*o,0)}t.product=r;function n(s){return s.reduce((a,o)=>Math.min(a,o))}t.min=n;function i(s){return s.reduce((a,o)=>Math.max(a,o))}t.max=i})(ei||(ei={}));var yo={};_r(yo,{assignMandatoryProperties:()=>Qu,copyAstNode:()=>Zu,findRootNode:()=>ri,getContainerOfType:()=>pr,getDocument:()=>tt,getReferenceNodes:()=>go,hasContainerOfType:()=>ev,linkContentToContainer:()=>ti,streamAllContents:()=>Ut,streamAst:()=>ot,streamContents:()=>Cs,streamReferences:()=>Lr});function ti(t,e={}){for(let[r,n]of Object.entries(t))r.startsWith("$")||(Array.isArray(n)?n.forEach((i,s)=>{Ne(i)&&(i.$container=t,i.$containerProperty=r,i.$containerIndex=s,e.deep&&ti(i,e))}):Ne(n)&&(n.$container=t,n.$containerProperty=r,e.deep&&ti(n,e)))}function pr(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function ev(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function tt(t){let r=ri(t).$document;if(!r)throw new Error("AST node has no document.");return r}function ri(t){for(;t.$container;)t=t.$container;return t}function go(t){return qe(t)?t.ref?[t.ref]:[]:xt(t)?t.items.map(e=>e.ref):[]}function Cs(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new Et(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexCs(r,e))}function ot(t,e){if(t){if(e?.range&&!Ju(t,e.range))return new Jt(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new Jt(t,r=>Cs(r,e),{includeRoot:!0})}function Ju(t,e){if(!e)return!0;let r=t.$cstNode?.range;return r?ec(r,e):!1}function Lr(t){return new Et(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndexht,AbstractParserRule:()=>Ss,AbstractRule:()=>ni,AbstractType:()=>At,Action:()=>Dr,Alternatives:()=>Ns,ArrayLiteral:()=>To,ArrayType:()=>Ro,Assignment:()=>Mr,BooleanLiteral:()=>$o,CharacterRange:()=>Fr,Condition:()=>Gr,Conjunction:()=>ks,CrossReference:()=>Ur,Disjunction:()=>ws,EndOfFile:()=>vo,Grammar:()=>mr,GrammarImport:()=>xo,Group:()=>ln,InferredType:()=>Eo,InfixRule:()=>Zt,InfixRuleOperatorList:()=>bs,InfixRuleOperators:()=>Ao,Interface:()=>ii,Keyword:()=>si,LangiumGrammarAstReflection:()=>ci,LangiumGrammarTerminals:()=>tv,NamedArgument:()=>ai,NegatedToken:()=>un,Negation:()=>Co,NumberLiteral:()=>So,Parameter:()=>oi,ParameterReference:()=>No,ParserRule:()=>jt,ReferenceType:()=>Is,RegexToken:()=>cn,ReturnType:()=>ko,RuleCall:()=>fn,SimpleType:()=>li,StringLiteral:()=>wo,TerminalAlternatives:()=>dn,TerminalElement:()=>gt,TerminalGroup:()=>pn,TerminalRule:()=>hr,TerminalRuleCall:()=>mn,Type:()=>_s,TypeAttribute:()=>hn,TypeDefinition:()=>gn,UnionType:()=>bo,UnorderedGroup:()=>Os,UntilToken:()=>yn,ValueLiteral:()=>Tn,Wildcard:()=>ui,isAbstractElement:()=>Ps,isAbstractParserRule:()=>gr,isAbstractRule:()=>rv,isAbstractType:()=>nv,isAction:()=>yr,isAlternatives:()=>Io,isArrayLiteral:()=>iv,isArrayType:()=>tc,isAssignment:()=>zt,isBooleanLiteral:()=>rc,isCharacterRange:()=>nc,isCondition:()=>sv,isConjunction:()=>ic,isCrossReference:()=>qt,isDisjunction:()=>sc,isEndOfFile:()=>ac,isGrammar:()=>av,isGrammarImport:()=>ov,isGroup:()=>jr,isInferredType:()=>Ls,isInfixRule:()=>zr,isInfixRuleOperatorList:()=>lv,isInfixRuleOperators:()=>uv,isInterface:()=>oc,isKeyword:()=>wt,isNamedArgument:()=>cv,isNegatedToken:()=>lc,isNegation:()=>uc,isNumberLiteral:()=>fv,isParameter:()=>dv,isParameterReference:()=>cc,isParserRule:()=>We,isReferenceType:()=>fc,isRegexToken:()=>dc,isReturnType:()=>pc,isRuleCall:()=>Bt,isSimpleType:()=>_o,isStringLiteral:()=>pv,isTerminalAlternatives:()=>mc,isTerminalElement:()=>mv,isTerminalGroup:()=>hc,isTerminalRule:()=>lt,isTerminalRuleCall:()=>Oo,isType:()=>Po,isTypeAttribute:()=>hv,isTypeDefinition:()=>gv,isUnionType:()=>gc,isUnorderedGroup:()=>Lo,isUntilToken:()=>yc,isValueLiteral:()=>yv,isWildcard:()=>Tc,reflection:()=>j});var tv={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},ht={$type:"AbstractElement",cardinality:"cardinality"};function Ps(t){return j.isInstance(t,ht.$type)}var Ss={$type:"AbstractParserRule"};function gr(t){return j.isInstance(t,Ss.$type)}var ni={$type:"AbstractRule"};function rv(t){return j.isInstance(t,ni.$type)}var At={$type:"AbstractType"};function nv(t){return j.isInstance(t,At.$type)}var Dr={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function yr(t){return j.isInstance(t,Dr.$type)}var Ns={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function Io(t){return j.isInstance(t,Ns.$type)}var To={$type:"ArrayLiteral",elements:"elements"};function iv(t){return j.isInstance(t,To.$type)}var Ro={$type:"ArrayType",elementType:"elementType"};function tc(t){return j.isInstance(t,Ro.$type)}var Mr={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function zt(t){return j.isInstance(t,Mr.$type)}var $o={$type:"BooleanLiteral",true:"true"};function rc(t){return j.isInstance(t,$o.$type)}var Fr={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function nc(t){return j.isInstance(t,Fr.$type)}var Gr={$type:"Condition"};function sv(t){return j.isInstance(t,Gr.$type)}var ks={$type:"Conjunction",left:"left",right:"right"};function ic(t){return j.isInstance(t,ks.$type)}var Ur={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function qt(t){return j.isInstance(t,Ur.$type)}var ws={$type:"Disjunction",left:"left",right:"right"};function sc(t){return j.isInstance(t,ws.$type)}var vo={$type:"EndOfFile",cardinality:"cardinality"};function ac(t){return j.isInstance(t,vo.$type)}var mr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};function av(t){return j.isInstance(t,mr.$type)}var xo={$type:"GrammarImport",path:"path"};function ov(t){return j.isInstance(t,xo.$type)}var ln={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function jr(t){return j.isInstance(t,ln.$type)}var Eo={$type:"InferredType",name:"name"};function Ls(t){return j.isInstance(t,Eo.$type)}var Zt={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function zr(t){return j.isInstance(t,Zt.$type)}var bs={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};function lv(t){return j.isInstance(t,bs.$type)}var Ao={$type:"InfixRuleOperators",precedences:"precedences"};function uv(t){return j.isInstance(t,Ao.$type)}var ii={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function oc(t){return j.isInstance(t,ii.$type)}var si={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function wt(t){return j.isInstance(t,si.$type)}var ai={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};function cv(t){return j.isInstance(t,ai.$type)}var un={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function lc(t){return j.isInstance(t,un.$type)}var Co={$type:"Negation",value:"value"};function uc(t){return j.isInstance(t,Co.$type)}var So={$type:"NumberLiteral",value:"value"};function fv(t){return j.isInstance(t,So.$type)}var oi={$type:"Parameter",name:"name"};function dv(t){return j.isInstance(t,oi.$type)}var No={$type:"ParameterReference",parameter:"parameter"};function cc(t){return j.isInstance(t,No.$type)}var jt={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function We(t){return j.isInstance(t,jt.$type)}var Is={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};function fc(t){return j.isInstance(t,Is.$type)}var cn={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function dc(t){return j.isInstance(t,cn.$type)}var ko={$type:"ReturnType",name:"name"};function pc(t){return j.isInstance(t,ko.$type)}var fn={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function Bt(t){return j.isInstance(t,fn.$type)}var li={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function _o(t){return j.isInstance(t,li.$type)}var wo={$type:"StringLiteral",value:"value"};function pv(t){return j.isInstance(t,wo.$type)}var dn={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function mc(t){return j.isInstance(t,dn.$type)}var gt={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function mv(t){return j.isInstance(t,gt.$type)}var pn={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function hc(t){return j.isInstance(t,pn.$type)}var hr={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function lt(t){return j.isInstance(t,hr.$type)}var mn={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function Oo(t){return j.isInstance(t,mn.$type)}var _s={$type:"Type",name:"name",type:"type"};function Po(t){return j.isInstance(t,_s.$type)}var hn={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};function hv(t){return j.isInstance(t,hn.$type)}var gn={$type:"TypeDefinition"};function gv(t){return j.isInstance(t,gn.$type)}var bo={$type:"UnionType",types:"types"};function gc(t){return j.isInstance(t,bo.$type)}var Os={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function Lo(t){return j.isInstance(t,Os.$type)}var yn={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function yc(t){return j.isInstance(t,yn.$type)}var Tn={$type:"ValueLiteral"};function yv(t){return j.isInstance(t,Tn.$type)}var ui={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Tc(t){return j.isInstance(t,ui.$type)}var ci=class extends an{constructor(){super(...arguments),this.types={AbstractElement:{name:ht.$type,properties:{cardinality:{name:ht.cardinality}},superTypes:[]},AbstractParserRule:{name:Ss.$type,properties:{},superTypes:[ni.$type,At.$type]},AbstractRule:{name:ni.$type,properties:{},superTypes:[]},AbstractType:{name:At.$type,properties:{},superTypes:[]},Action:{name:Dr.$type,properties:{cardinality:{name:Dr.cardinality},feature:{name:Dr.feature},inferredType:{name:Dr.inferredType},operator:{name:Dr.operator},type:{name:Dr.type,referenceType:At.$type}},superTypes:[ht.$type]},Alternatives:{name:Ns.$type,properties:{cardinality:{name:Ns.cardinality},elements:{name:Ns.elements,defaultValue:[]}},superTypes:[ht.$type]},ArrayLiteral:{name:To.$type,properties:{elements:{name:To.elements,defaultValue:[]}},superTypes:[Tn.$type]},ArrayType:{name:Ro.$type,properties:{elementType:{name:Ro.elementType}},superTypes:[gn.$type]},Assignment:{name:Mr.$type,properties:{cardinality:{name:Mr.cardinality},feature:{name:Mr.feature},operator:{name:Mr.operator},predicate:{name:Mr.predicate},terminal:{name:Mr.terminal}},superTypes:[ht.$type]},BooleanLiteral:{name:$o.$type,properties:{true:{name:$o.true,defaultValue:!1}},superTypes:[Gr.$type,Tn.$type]},CharacterRange:{name:Fr.$type,properties:{cardinality:{name:Fr.cardinality},left:{name:Fr.left},lookahead:{name:Fr.lookahead},parenthesized:{name:Fr.parenthesized,defaultValue:!1},right:{name:Fr.right}},superTypes:[gt.$type]},Condition:{name:Gr.$type,properties:{},superTypes:[]},Conjunction:{name:ks.$type,properties:{left:{name:ks.left},right:{name:ks.right}},superTypes:[Gr.$type]},CrossReference:{name:Ur.$type,properties:{cardinality:{name:Ur.cardinality},deprecatedSyntax:{name:Ur.deprecatedSyntax,defaultValue:!1},isMulti:{name:Ur.isMulti,defaultValue:!1},terminal:{name:Ur.terminal},type:{name:Ur.type,referenceType:At.$type}},superTypes:[ht.$type]},Disjunction:{name:ws.$type,properties:{left:{name:ws.left},right:{name:ws.right}},superTypes:[Gr.$type]},EndOfFile:{name:vo.$type,properties:{cardinality:{name:vo.cardinality}},superTypes:[ht.$type]},Grammar:{name:mr.$type,properties:{imports:{name:mr.imports,defaultValue:[]},interfaces:{name:mr.interfaces,defaultValue:[]},isDeclared:{name:mr.isDeclared,defaultValue:!1},name:{name:mr.name},rules:{name:mr.rules,defaultValue:[]},types:{name:mr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:xo.$type,properties:{path:{name:xo.path}},superTypes:[]},Group:{name:ln.$type,properties:{cardinality:{name:ln.cardinality},elements:{name:ln.elements,defaultValue:[]},guardCondition:{name:ln.guardCondition},predicate:{name:ln.predicate}},superTypes:[ht.$type]},InferredType:{name:Eo.$type,properties:{name:{name:Eo.name}},superTypes:[At.$type]},InfixRule:{name:Zt.$type,properties:{call:{name:Zt.call},dataType:{name:Zt.dataType},inferredType:{name:Zt.inferredType},name:{name:Zt.name},operators:{name:Zt.operators},parameters:{name:Zt.parameters,defaultValue:[]},returnType:{name:Zt.returnType,referenceType:At.$type}},superTypes:[Ss.$type]},InfixRuleOperatorList:{name:bs.$type,properties:{associativity:{name:bs.associativity},operators:{name:bs.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:Ao.$type,properties:{precedences:{name:Ao.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ii.$type,properties:{attributes:{name:ii.attributes,defaultValue:[]},name:{name:ii.name},superTypes:{name:ii.superTypes,defaultValue:[],referenceType:At.$type}},superTypes:[At.$type]},Keyword:{name:si.$type,properties:{cardinality:{name:si.cardinality},predicate:{name:si.predicate},value:{name:si.value}},superTypes:[ht.$type]},NamedArgument:{name:ai.$type,properties:{calledByName:{name:ai.calledByName,defaultValue:!1},parameter:{name:ai.parameter,referenceType:oi.$type},value:{name:ai.value}},superTypes:[]},NegatedToken:{name:un.$type,properties:{cardinality:{name:un.cardinality},lookahead:{name:un.lookahead},parenthesized:{name:un.parenthesized,defaultValue:!1},terminal:{name:un.terminal}},superTypes:[gt.$type]},Negation:{name:Co.$type,properties:{value:{name:Co.value}},superTypes:[Gr.$type]},NumberLiteral:{name:So.$type,properties:{value:{name:So.value}},superTypes:[Tn.$type]},Parameter:{name:oi.$type,properties:{name:{name:oi.name}},superTypes:[]},ParameterReference:{name:No.$type,properties:{parameter:{name:No.parameter,referenceType:oi.$type}},superTypes:[Gr.$type]},ParserRule:{name:jt.$type,properties:{dataType:{name:jt.dataType},definition:{name:jt.definition},entry:{name:jt.entry,defaultValue:!1},fragment:{name:jt.fragment,defaultValue:!1},inferredType:{name:jt.inferredType},name:{name:jt.name},parameters:{name:jt.parameters,defaultValue:[]},returnType:{name:jt.returnType,referenceType:At.$type}},superTypes:[Ss.$type]},ReferenceType:{name:Is.$type,properties:{isMulti:{name:Is.isMulti,defaultValue:!1},referenceType:{name:Is.referenceType}},superTypes:[gn.$type]},RegexToken:{name:cn.$type,properties:{cardinality:{name:cn.cardinality},lookahead:{name:cn.lookahead},parenthesized:{name:cn.parenthesized,defaultValue:!1},regex:{name:cn.regex}},superTypes:[gt.$type]},ReturnType:{name:ko.$type,properties:{name:{name:ko.name}},superTypes:[]},RuleCall:{name:fn.$type,properties:{arguments:{name:fn.arguments,defaultValue:[]},cardinality:{name:fn.cardinality},predicate:{name:fn.predicate},rule:{name:fn.rule,referenceType:ni.$type}},superTypes:[ht.$type]},SimpleType:{name:li.$type,properties:{primitiveType:{name:li.primitiveType},stringType:{name:li.stringType},typeRef:{name:li.typeRef,referenceType:At.$type}},superTypes:[gn.$type]},StringLiteral:{name:wo.$type,properties:{value:{name:wo.value}},superTypes:[Tn.$type]},TerminalAlternatives:{name:dn.$type,properties:{cardinality:{name:dn.cardinality},elements:{name:dn.elements,defaultValue:[]},lookahead:{name:dn.lookahead},parenthesized:{name:dn.parenthesized,defaultValue:!1}},superTypes:[gt.$type]},TerminalElement:{name:gt.$type,properties:{cardinality:{name:gt.cardinality},lookahead:{name:gt.lookahead},parenthesized:{name:gt.parenthesized,defaultValue:!1}},superTypes:[ht.$type]},TerminalGroup:{name:pn.$type,properties:{cardinality:{name:pn.cardinality},elements:{name:pn.elements,defaultValue:[]},lookahead:{name:pn.lookahead},parenthesized:{name:pn.parenthesized,defaultValue:!1}},superTypes:[gt.$type]},TerminalRule:{name:hr.$type,properties:{definition:{name:hr.definition},fragment:{name:hr.fragment,defaultValue:!1},hidden:{name:hr.hidden,defaultValue:!1},name:{name:hr.name},type:{name:hr.type}},superTypes:[ni.$type]},TerminalRuleCall:{name:mn.$type,properties:{cardinality:{name:mn.cardinality},lookahead:{name:mn.lookahead},parenthesized:{name:mn.parenthesized,defaultValue:!1},rule:{name:mn.rule,referenceType:hr.$type}},superTypes:[gt.$type]},Type:{name:_s.$type,properties:{name:{name:_s.name},type:{name:_s.type}},superTypes:[At.$type]},TypeAttribute:{name:hn.$type,properties:{defaultValue:{name:hn.defaultValue},isOptional:{name:hn.isOptional,defaultValue:!1},name:{name:hn.name},type:{name:hn.type}},superTypes:[]},TypeDefinition:{name:gn.$type,properties:{},superTypes:[]},UnionType:{name:bo.$type,properties:{types:{name:bo.types,defaultValue:[]}},superTypes:[gn.$type]},UnorderedGroup:{name:Os.$type,properties:{cardinality:{name:Os.cardinality},elements:{name:Os.elements,defaultValue:[]}},superTypes:[ht.$type]},UntilToken:{name:yn.$type,properties:{cardinality:{name:yn.cardinality},lookahead:{name:yn.lookahead},parenthesized:{name:yn.parenthesized,defaultValue:!1},terminal:{name:yn.terminal}},superTypes:[gt.$type]},ValueLiteral:{name:Tn.$type,properties:{},superTypes:[]},Wildcard:{name:ui.$type,properties:{cardinality:{name:ui.cardinality},lookahead:{name:ui.lookahead},parenthesized:{name:ui.parenthesized,defaultValue:!1}},superTypes:[gt.$type]}}}},j=new ci;function Tv(t){let e=t,r=!1;for(;e;){let n=pr(e.grammarSource,We);if(n&&n.dataType)e=e.container,r=!0;else return r?e:void 0}}function Rn(t){return new Jt(t,e=>Gt(e)?e.content:[],{includeRoot:!0})}function Rv(t){return Rn(t).filter(Or)}function $c(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function fi(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function $n(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}var Tr=(function(t){return t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside",t})(Tr||{});function Pm(t,e){if(t.end.linee.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return Tr.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.lineTr.After}var Do=/^[\w\p{L}]$/u;function $v(t,e,r=Do){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return xc(t,e)}}function vc(t,e){if(t){let r=Mm(t,!0);if(r&&Rc(r,e))return r;if(As(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let s=t.content[i];if(Rc(s,e))return s}}}}function Rc(t,e){return Or(t)&&e.includes(t.tokenType.name)}function xc(t,e){if(Or(t))return t;if(Gt(t)){let r=Dm(t,e,!1);if(r)return xc(r,e)}}function Lm(t,e){if(Or(t))return t;if(Gt(t)){let r=Dm(t,e,!0);if(r)return Lm(r,e)}}function Dm(t,e,r){let n=0,i=t.content.length-1,s;for(;n<=i;){let a=Math.floor((n+i)/2),o=t.content[a];if(o.offset<=e&&o.end>e)return o;o.end<=e?(s=r?o:void 0,n=a+1):i=a-1}return s}function Mm(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function vv(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;nMc,findNameAssignment:()=>jo,findNodeForKeyword:()=>Lc,findNodeForProperty:()=>zs,findNodesForKeyword:()=>wv,findNodesForKeywordInternal:()=>Dc,findNodesForProperty:()=>Oc,getActionAtElement:()=>Km,getActionType:()=>Hm,getAllReachableRules:()=>js,getAllRulesUsedForCrossReferences:()=>kv,getCrossReferenceTerminal:()=>Ic,getEntryRule:()=>zm,getExplicitRuleType:()=>zo,getHiddenRules:()=>qm,getRuleType:()=>Fc,getRuleTypeName:()=>Pv,getTypeName:()=>Br,isArrayCardinality:()=>Iv,isArrayOperator:()=>_v,isCommentTerminal:()=>_c,isDataType:()=>Ov,isDataTypeRule:()=>qs,isOptionalCardinality:()=>bv,terminalRegex:()=>pi});var vn=class extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};function Qt(t,e="Error: Got unexpected value."){throw new Error(e)}function Fm(t,e="Error: Condition is violated."){if(!t)throw new Error(e)}var Uo={};_r(Uo,{NEWLINE_REGEXP:()=>Sc,escapeRegExp:()=>qr,getTerminalParts:()=>Nv,isMultilineComment:()=>Nc,isWhitespace:()=>Us,partialMatches:()=>kc,partialRegExp:()=>jm,whitespaceCharacters:()=>Um});function q(t){return t.charCodeAt(0)}function Fo(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function di(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function xn(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function Ms(){throw Error("Internal Error - Should never get here!")}function Ec(t){return t.type==="Character"}var Fs=[];for(let t=q("0");t<=q("9");t++)Fs.push(t);var Gs=[q("_")].concat(Fs);for(let t=q("a");t<=q("z");t++)Gs.push(t);for(let t=q("A");t<=q("Z");t++)Gs.push(t);var Ac=[q(" "),q("\f"),q(` +`),q("\r"),q(" "),q("\v"),q(" "),q("\xA0"),q("\u1680"),q("\u2000"),q("\u2001"),q("\u2002"),q("\u2003"),q("\u2004"),q("\u2005"),q("\u2006"),q("\u2007"),q("\u2008"),q("\u2009"),q("\u200A"),q("\u2028"),q("\u2029"),q("\u202F"),q("\u205F"),q("\u3000"),q("\uFEFF")];var Cv=/[0-9a-fA-F]/,Go=/[0-9]/,Sv=/[1-9]/,En=class{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":di(n,"global");break;case"i":di(n,"ignoreCase");break;case"m":di(n,"multiLine");break;case"u":di(n,"unicode");break;case"y":di(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":r="Lookbehind";break;case"!":r="NegativeLookbehind"}break}}xn(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return Ms()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),r={atLeast:i,atMost:s}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;xn(r);break}if(!(e===!0&&r===void 0)&&xn(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),xn(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):Ms()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[q(` +`),q("\r"),q("\u2028"),q("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=Fs;break;case"D":e=Fs,r=!0;break;case"s":e=Ac;break;case"S":e=Ac,r=!0;break;case"w":e=Gs;break;case"W":e=Gs,r=!0;break}return xn(e)?{type:"Set",value:e,complement:r}:Ms()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=q("\f");break;case"n":e=q(` +`);break;case"r":e=q("\r");break;case"t":e=q(" ");break;case"v":e=q("\v");break}return xn(e)?{type:"Character",value:e}:Ms()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:q("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:q(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case` +`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:q(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(Ec(n)&&this.isRangeDash()){this.consumeChar("-");let s=this.classAtom(),a=s.type==="Character";if(Ec(s)){if(s.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}};var er=class{visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Lookbehind":this.visitLookbehind(e);break;case"NegativeLookbehind":this.visitNegativeLookbehind(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}};var Sc=/\r?\n/gm,Gm=new En,Cc=class extends er{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let r=String.fromCharCode(e.value);if(!this.multiline&&r===` +`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=qr(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!` +`.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},An=new Cc;function Nv(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=Gm.pattern(t),r=[];for(let n of e.value.value)An.reset(t),An.visit(n),r.push({start:An.startRegexp,end:An.endRegex});return r}catch(e){return[]}}function Nc(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),An.reset(t),An.visit(Gm.pattern(t)),An.multiline}catch(e){return!1}}var Um=`\f +\r \v \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF`.split("");function Us(t){let e=typeof t=="string"?new RegExp(t):t;return Um.some(r=>e.test(r))}function qr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function kc(t,e){let r=jm(t),n=e.match(r);return!!n&&n[0].length>0}function jm(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let s="",a;function o(u){s+=r.substr(n,u),n+=u}function l(u){s+="(?:"+r.substr(n,u)+"|$)",n+=u}for(;n",n)-n+1);break;default:l(2);break}break;case"[":a=/\[(?:\\.|.)*?\]/g,a.lastIndex=n,a=a.exec(r)||[],l(a[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":o(1);break;case"{":a=/\{\d+,?\d*\}/g,a.lastIndex=n,a=a.exec(r),a?o(a[0].length):l(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":s+="(?:",n+=3,s+=i()+"|$)";break;case"=":s+="(?=",n+=3,s+=i()+")";break;case"!":a=n,n+=3,i(),s+=r.substr(a,n-a);break;case"<":switch(r[n+3]){case"=":case"!":a=n,n+=4,i(),s+=r.substr(a,n-a);break;default:o(r.indexOf(">",n)-n+1),s+=i()+"|$)";break}break}else o(1),s+=i()+"|$)";break;case")":return++n,s;default:l(1);break}return s}return new RegExp(i(),t.flags)}function zm(t){return t.rules.find(e=>We(e)&&e.entry)}function qm(t){return t.rules.filter(e=>lt(e)&&e.hidden)}function js(t,e){let r=new Set,n=zm(t);if(!n)return new Set(t.rules);let i=[n].concat(qm(t));for(let a of i)Bm(a,r,e);let s=new Set;for(let a of t.rules)(r.has(a.name)||lt(a)&&a.hidden)&&s.add(a);return s}function Bm(t,e,r){e.add(t.name),Ut(t).forEach(n=>{if(Bt(n)||r&&Oo(n)){let i=n.rule.ref;i&&!e.has(i.name)&&Bm(i,e,r)}})}function kv(t){let e=new Set;return Ut(t).forEach(r=>{qt(r)&&(We(r.type.ref)&&e.add(r.type.ref),Ls(r.type.ref)&&We(r.type.ref.$container)&&e.add(r.type.ref.$container))}),e}function Ic(t){if(t.terminal)return t.terminal;if(t.type.ref)return jo(t.type.ref)?.terminal}function _c(t){return t.hidden&&!Us(pi(t))}function Oc(t,e){return!t||!e?[]:Pc(t,e,t.astNode,!0)}function zs(t,e,r){if(!t||!e)return;let n=Pc(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function Pc(t,e,r,n){if(!n){let i=pr(t.grammarSource,zt);if(i&&i.feature===e)return[t]}return Gt(t)&&t.astNode===r?t.content.flatMap(i=>Pc(i,e,r,!1)):[]}function wv(t,e){return t?Dc(t,e,t?.astNode):[]}function Lc(t,e,r){if(!t)return;let n=Dc(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function Dc(t,e,r){if(t.astNode!==r)return[];if(wt(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=Rn(t).iterator(),i,s=[];do if(i=n.next(),!i.done){let a=i.value;a.astNode===r?wt(a.grammarSource)&&a.grammarSource.value===e&&s.push(a):n.prune()}while(!i.done);return s}function Mc(t){let e=t.astNode;for(;e===t.container?.astNode;){let r=pr(t.grammarSource,zt);if(r)return r;t=t.container}}function jo(t){let e=t;return Ls(e)&&(yr(e.$container)?e=e.$container.$container:gr(e.$container)?e=e.$container:Qt(e.$container)),Wm(t,e,new Map)}function Wm(t,e,r){function n(i,s){let a;return pr(i,zt)||(a=Wm(s,s,r)),r.set(t,a),a}if(r.has(t))return r.get(t);r.set(t,void 0);for(let i of Ut(e)){if(zt(i)&&i.feature.toLowerCase()==="name")return r.set(t,i),i;if(Bt(i)&&We(i.rule.ref))return n(i,i.rule.ref);if(_o(i)&&i.typeRef?.ref)return n(i,i.typeRef.ref)}}function Km(t){let e=t.$container;if(jr(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let s=r[i];if(yr(s))return s;{let a=Ut(r[i]).find(yr);if(a)return a}}}if(Ps(e))return Km(e)}function bv(t,e){return t==="?"||t==="*"||jr(e)&&!!e.guardCondition}function Iv(t){return t==="*"||t==="+"}function _v(t){return t==="+="}function qs(t){return Vm(t,new Set)}function Vm(t,e){if(e.has(t))return!0;e.add(t);for(let r of Ut(t))if(Bt(r)){if(!r.rule.ref||We(r.rule.ref)&&!Vm(r.rule.ref,e)||zr(r.rule.ref))return!1}else{if(zt(r))return!1;if(yr(r))return!1}return!!t.definition}function Ov(t){return bc(t.type,new Set)}function bc(t,e){if(e.has(t))return!0;if(e.add(t),tc(t))return!1;if(fc(t))return!1;if(gc(t))return t.types.every(r=>bc(r,e));if(_o(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return Po(r)?bc(r.type,e):!1}else return!1}else return!1}function zo(t){if(!lt(t)){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e)return e.name}}}function Br(t){if(gr(t))return We(t)&&qs(t)?t.name:zo(t)??t.name;if(oc(t)||Po(t)||pc(t))return t.name;if(yr(t)){let e=Hm(t);if(e)return e}else if(Ls(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function Hm(t){if(t.inferredType)return t.inferredType.name;if(t.type?.ref)return Br(t.type.ref)}function Pv(t){return lt(t)?t.type?.name??"string":We(t)&&qs(t)?t.name:zo(t)??t.name}function Fc(t){return lt(t)?t.type?.name??"string":zo(t)??t.name}function pi(t){let e={s:!1,i:!1,u:!1},r=mi(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}var Gc=/[\s\S]/.source;function mi(t,e){if(mc(t))return Lv(t);if(hc(t))return Dv(t);if(nc(t))return Gv(t);if(Oo(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return Rr(mi(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}else{if(lc(t))return Fv(t);if(yc(t))return Mv(t);if(dc(t)){let r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),Rr(n,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}else{if(Tc(t))return Rr(Gc,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized});throw new Error(`Invalid terminal element: ${t?.$type}, ${t?.$cstNode?.text}`)}}}function Lv(t){return Rr(t.elements.map(e=>mi(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function Dv(t){return Rr(t.elements.map(e=>mi(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function Mv(t){return Rr(`${Gc}*?${mi(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function Fv(t){return Rr(`(?!${mi(t.terminal)})${Gc}*?`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function Gv(t){return t.right?Rr(`[${wc(t.left)}-${wc(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1}):Rr(wc(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function wc(t){return qr(t.value)}function Rr(t,e){return(e.parenthesized||e.lookahead||e.wrap!==!1)&&(t=`(${e.lookahead??(e.parenthesized?"":"?:")}${t})`),e.cardinality?`${t}${e.cardinality}`:t}function Uc(t){let e=[],r=t.Grammar;for(let n of r.rules)lt(n)&&_c(n)&&Nc(pi(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:Do}}function hi(t){console&&console.error&&console.error(`Error: ${t}`)}function Bs(t){console&&console.warn&&console.warn(`Warning: ${t}`)}function Ws(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}function Ks(t){function e(){}e.prototype=t;let r=new e;function n(){return typeof r.bar}return n(),n(),t;(0,eval)(t)}function Uv(t){return jv(t)?t.LABEL:t.name}function jv(t){return typeof t.LABEL=="string"&&t.LABEL!==""}var Ct=class{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),this.definition.forEach(r=>{r.accept(e)})}},ce=class extends Ct{constructor(e){super([]),this.idx=1,Object.assign(this,tr(e))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},ut=class extends Ct{constructor(e){super(e.definition),this.orgText="",Object.assign(this,tr(e))}},Te=class extends Ct{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,Object.assign(this,tr(e))}},fe=class extends Ct{constructor(e){super(e.definition),this.idx=1,Object.assign(this,tr(e))}},Re=class extends Ct{constructor(e){super(e.definition),this.idx=1,Object.assign(this,tr(e))}},$e=class extends Ct{constructor(e){super(e.definition),this.idx=1,Object.assign(this,tr(e))}},te=class extends Ct{constructor(e){super(e.definition),this.idx=1,Object.assign(this,tr(e))}},he=class extends Ct{constructor(e){super(e.definition),this.idx=1,Object.assign(this,tr(e))}},ge=class extends Ct{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Object.assign(this,tr(e))}},Z=class{constructor(e){this.idx=1,Object.assign(this,tr(e))}accept(e){e.visit(this)}};function Bo(t){return t.map(gi)}function gi(t){function e(r){return r.map(gi)}if(t instanceof ce){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return typeof t.label=="string"&&(r.label=t.label),r}else{if(t instanceof Te)return{type:"Alternative",definition:e(t.definition)};if(t instanceof fe)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof Re)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof $e)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:gi(new Z({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof he)return{type:"RepetitionWithSeparator",idx:t.idx,separator:gi(new Z({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof te)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof ge)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof Z){let r={type:"Terminal",name:t.terminalType.name,label:Uv(t.terminalType),idx:t.idx};typeof t.label=="string"&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=n instanceof RegExp?n.source:n),r}else{if(t instanceof ut)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}function tr(t){return Object.fromEntries(Object.entries(t).filter(([,e])=>e!==void 0))}var ct=class{visit(e){let r=e;switch(r.constructor){case ce:return this.visitNonTerminal(r);case Te:return this.visitAlternative(r);case fe:return this.visitOption(r);case Re:return this.visitRepetitionMandatory(r);case $e:return this.visitRepetitionMandatoryWithSeparator(r);case he:return this.visitRepetitionWithSeparator(r);case te:return this.visitRepetition(r);case ge:return this.visitAlternation(r);case Z:return this.visitTerminal(r);case ut:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}};function jc(t){return t instanceof Te||t instanceof fe||t instanceof te||t instanceof Re||t instanceof $e||t instanceof he||t instanceof Z||t instanceof ut}function Cn(t,e=[]){return t instanceof fe||t instanceof te||t instanceof he?!0:t instanceof ge?t.definition.some(n=>Cn(n,e)):t instanceof ce&&e.includes(t)?!1:t instanceof Ct?(t instanceof ce&&e.push(t),t.definition.every(n=>Cn(n,e))):!1}function zc(t){return t instanceof ge}function yt(t){if(t instanceof ce)return"SUBRULE";if(t instanceof fe)return"OPTION";if(t instanceof ge)return"OR";if(t instanceof Re)return"AT_LEAST_ONE";if(t instanceof $e)return"AT_LEAST_ONE_SEP";if(t instanceof he)return"MANY_SEP";if(t instanceof te)return"MANY";if(t instanceof Z)return"CONSUME";throw Error("non exhaustive match")}var $r=class{walk(e,r=[]){e.definition.forEach((n,i)=>{let s=e.definition.slice(i+1);if(n instanceof ce)this.walkProdRef(n,s,r);else if(n instanceof Z)this.walkTerminal(n,s,r);else if(n instanceof Te)this.walkFlat(n,s,r);else if(n instanceof fe)this.walkOption(n,s,r);else if(n instanceof Re)this.walkAtLeastOne(n,s,r);else if(n instanceof $e)this.walkAtLeastOneSep(n,s,r);else if(n instanceof he)this.walkManySep(n,s,r);else if(n instanceof te)this.walkMany(n,s,r);else if(n instanceof ge)this.walkOr(n,s,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new fe({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=Xm(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new fe({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=Xm(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);e.definition.forEach(s=>{let a=new Te({definition:[s]});this.walk(a,i)})}};function Xm(t,e,r){return[new fe({definition:[new Z({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}function Sn(t){if(t instanceof ce)return Sn(t.referencedRule);if(t instanceof Z)return Bv(t);if(jc(t))return zv(t);if(zc(t))return qv(t);throw Error("non exhaustive match")}function zv(t){let e=[],r=t.definition,n=0,i=r.length>n,s,a=!0;for(;i&&a;)s=r[n],a=Cn(s),e=e.concat(Sn(s)),n=n+1,i=r.length>n;return[...new Set(e)]}function qv(t){let e=t.definition.map(r=>Sn(r));return[...new Set(e.flat())]}function Bv(t){return[t.terminalType]}var Wo="_~IN~_";var qc=class extends $r{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=Wv(e.referencedRule,e.idx)+this.topProd.name,s=r.concat(n),a=new Te({definition:s}),o=Sn(a);this.follows[i]=o}};function Ym(t){let e={};return t.forEach(r=>{let n=new qc(r).startWalking();Object.assign(e,n)}),e}function Wv(t,e){return t.name+e+Wo}var Ko={},Kv=new En;function yi(t){let e=t.toString();if(Ko.hasOwnProperty(e))return Ko[e];{let r=Kv.pattern(e);return Ko[e]=r,r}}function Jm(){Ko={}}var Qm="Complement Sets are not supported for first char optimization",Vs=`Unable to use "first char" lexer optimizations: +`;function eh(t,e=!1){try{let r=yi(t);return Bc(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===Qm)e&&Bs(`${Vs} Unable to optimize: < ${t.toString()} > + Complement Sets cannot be automatically optimized. + This will disable the lexer's first char optimizations. + See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=` + This will disable the lexer's first char optimizations. + See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),hi(`${Vs} + Failed parsing: < ${t.toString()} > + Using the @chevrotain/regexp-to-ast library + Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function Bc(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i{if(typeof l=="number")Vo(l,e,r);else{let u=l;if(r===!0)for(let c=u.from;c<=u.to;c++)Vo(c,e,r);else{for(let c=u.from;c<=u.to&&c=Ti){let c=u.from>=Ti?u.from:Ti,p=u.to,m=rr(c),g=rr(p);for(let C=m;C<=g;C++)e[C]=C}}}});break;case"Group":Bc(a.value,e,r);break;default:throw Error("Non Exhaustive Match")}let o=a.quantifier!==void 0&&a.quantifier.atLeast===0;if(a.type==="Group"&&Wc(a)===!1||a.type!=="Group"&&o===!1)break}break;default:throw Error("non exhaustive match!")}return Object.values(e)}function Vo(t,e,r){let n=rr(t);e[n]=n,r===!0&&Vv(t,e)}function Vv(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=rr(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let s=rr(i.charCodeAt(0));e[s]=s}}}function Zm(t,e){return t.value.find(r=>{if(typeof r=="number")return e.includes(r);{let n=r;return e.find(i=>n.from<=i&&i<=n.to)!==void 0}})}function Wc(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?Array.isArray(t.value)?t.value.every(Wc):Wc(t.value):!1}var Kc=class extends er{constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return;case"Lookbehind":this.visitLookbehind(e);return;case"NegativeLookbehind":this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){this.targetCharCodes.includes(e.value)&&(this.found=!0)}visitSet(e){e.complement?Zm(e,this.targetCharCodes)===void 0&&(this.found=!0):Zm(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};function Ho(t,e){if(e instanceof RegExp){let r=yi(e),n=new Kc(t);return n.visit(r),n.found}else{for(let r of e){let n=r.charCodeAt(0);if(t.includes(n))return!0}return!1}}var Nn="PATTERN",Ri="defaultMode",Xo="modes";function rh(t,e){e=Object.assign({safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` +`],tracer:(N,x)=>x()},e);let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{dx()});let n;r("Reject Lexer.NA",()=>{n=t.filter(N=>N[Nn]!==Fe.NA)});let i=!1,s;r("Transform Patterns",()=>{i=!1,s=n.map(N=>{let x=N[Nn];if(x instanceof RegExp){let W=x.source;return W.length===1&&W!=="^"&&W!=="$"&&W!=="."&&!x.ignoreCase?W:W.length===2&&W[0]==="\\"&&!["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"].includes(W[1])?W[1]:th(x)}else{if(typeof x=="function")return i=!0,{exec:x};if(typeof x=="object")return i=!0,x;if(typeof x=="string"){if(x.length===1)return x;{let W=x.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),D=new RegExp(W);return th(D)}}else throw Error("non exhaustive match")}})});let a,o,l,u,c;r("misc mapping",()=>{a=n.map(N=>N.tokenTypeIdx),o=n.map(N=>{let x=N.GROUP;if(x!==Fe.SKIPPED){if(typeof x=="string")return x;if(x===void 0)return!1;throw Error("non exhaustive match")}}),l=n.map(N=>{let x=N.LONGER_ALT;if(x)return Array.isArray(x)?x.map(D=>n.indexOf(D)):[n.indexOf(x)]}),u=n.map(N=>N.PUSH_MODE),c=n.map(N=>Object.hasOwn(N,"POP_MODE"))});let p;r("Line Terminator Handling",()=>{let N=ch(e.lineTerminatorCharacters);p=n.map(x=>!1),e.positionTracking!=="onlyOffset"&&(p=n.map(x=>Object.hasOwn(x,"LINE_BREAKS")?!!x.LINE_BREAKS:uh(x,N)===!1&&Ho(N,x.PATTERN)))});let m,g,C,b;r("Misc Mapping #2",()=>{m=n.map(oh),g=s.map(cx),C=n.reduce((N,x)=>{let W=x.GROUP;return typeof W=="string"&&W!==Fe.SKIPPED&&(N[W]=[]),N},{}),b=s.map((N,x)=>({pattern:s[x],longerAlt:l[x],canLineTerminator:p[x],isCustom:m[x],short:g[x],group:o[x],push:u[x],pop:c[x],tokenTypeIdx:a[x],tokenType:n[x]}))});let F=!0,_=[];return e.safeMode||r("First Char Optimization",()=>{_=n.reduce((N,x,W)=>{if(typeof x.PATTERN=="string"){let D=x.PATTERN.charCodeAt(0),pe=rr(D);Vc(N,pe,b[W])}else if(Array.isArray(x.START_CHARS_HINT)){let D;x.START_CHARS_HINT.forEach(pe=>{let Ht=typeof pe=="string"?pe.charCodeAt(0):pe,je=rr(Ht);D!==je&&(D=je,Vc(N,je,b[W]))})}else if(x.PATTERN instanceof RegExp)if(x.PATTERN.unicode)F=!1,e.ensureOptimizations&&hi(`${Vs} Unable to analyze < ${x.PATTERN.toString()} > pattern. + The regexp unicode flag is not currently supported by the regexp-to-ast library. + This will disable the lexer's first char optimizations. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let D=eh(x.PATTERN,e.ensureOptimizations);D.length===0&&(F=!1),D.forEach(pe=>{Vc(N,pe,b[W])})}else e.ensureOptimizations&&hi(`${Vs} TokenType: <${x.name}> is using a custom token pattern without providing parameter. + This will disable the lexer's first char optimizations. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),F=!1;return N},[])}),{emptyGroups:C,patternIdxToConfig:b,charCodeToPatternIdxToConfig:_,hasCustom:i,canBeOptimized:F}}function nh(t,e){let r=[],n=Xv(t);r=r.concat(n.errors);let i=Yv(n.valid),s=i.valid;return r=r.concat(i.errors),r=r.concat(Hv(s)),r=r.concat(ix(s)),r=r.concat(sx(s,e)),r=r.concat(ax(s)),r}function Hv(t){let e=[],r=t.filter(n=>n[Nn]instanceof RegExp);return e=e.concat(Zv(r)),e=e.concat(tx(r)),e=e.concat(rx(r)),e=e.concat(nx(r)),e=e.concat(Qv(r)),e}function Xv(t){let e=t.filter(i=>!Object.hasOwn(i,Nn)),r=e.map(i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:ke.MISSING_PATTERN,tokenTypes:[i]})),n=t.filter(i=>!e.includes(i));return{errors:r,valid:n}}function Yv(t){let e=t.filter(i=>{let s=i[Nn];return!(s instanceof RegExp)&&typeof s!="function"&&!Object.hasOwn(s,"exec")&&typeof s!="string"}),r=e.map(i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:ke.INVALID_PATTERN,tokenTypes:[i]})),n=t.filter(i=>!e.includes(i));return{errors:r,valid:n}}var Jv=/[^\\][$]/;function Zv(t){class e extends er{constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}return t.filter(i=>{let s=i.PATTERN;try{let a=yi(s),o=new e;return o.visit(a),o.found}catch(a){return Jv.test(s.source)}}).map(i=>({message:`Unexpected RegExp Anchor Error: + Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$' + See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ke.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function Qv(t){return t.filter(n=>n.PATTERN.test("")).map(n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:ke.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}var ex=/[^\\[][\^]|^\^/;function tx(t){class e extends er{constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}return t.filter(i=>{let s=i.PATTERN;try{let a=yi(s),o=new e;return o.visit(a),o.found}catch(a){return ex.test(s.source)}}).map(i=>({message:`Unexpected RegExp Anchor Error: + Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^' + See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ke.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function rx(t){return t.filter(n=>{let i=n[Nn];return i instanceof RegExp&&(i.multiline||i.global)}).map(n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:ke.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function nx(t){let e=[],r=t.map(s=>t.reduce((a,o)=>(s.PATTERN.source===o.PATTERN.source&&!e.includes(o)&&o.PATTERN!==Fe.NA&&(e.push(o),a.push(o)),a),[]));return r=r.filter(Boolean),r.filter(s=>s.length>1).map(s=>{let a=s.map(l=>l.name);return{message:`The same RegExp pattern ->${s[0].PATTERN}<-has been used in all of the following Token Types: ${a.join(", ")} <-`,type:ke.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}})}function ix(t){return t.filter(n=>{if(!Object.hasOwn(n,"GROUP"))return!1;let i=n.GROUP;return i!==Fe.SKIPPED&&i!==Fe.NA&&typeof i!="string"}).map(n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:ke.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function sx(t,e){return t.filter(i=>i.PUSH_MODE!==void 0&&!e.includes(i.PUSH_MODE)).map(i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:ke.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function ax(t){let e=[],r=t.reduce((n,i,s)=>{let a=i.PATTERN;return a===Fe.NA||(typeof a=="string"?n.push({str:a,idx:s,tokenType:i}):a instanceof RegExp&&lx(a)&&n.push({str:a.source,idx:s,tokenType:i})),n},[]);return t.forEach((n,i)=>{r.forEach(({str:s,idx:a,tokenType:o})=>{if(i${o.name}<- can never be matched. +Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition. +See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:l,type:ke.UNREACHABLE_PATTERN,tokenTypes:[n,o]})}})}),e}function ox(t,e){if(e instanceof RegExp){if(ux(e))return!1;let r=e.exec(t);return r!==null&&r.index===0}else{if(typeof e=="function")return e(t,0,[],{});if(Object.hasOwn(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function lx(t){return[".","\\","[","]","|","^","$","(",")","?","*","+","{"].find(r=>t.source.indexOf(r)!==-1)===void 0}function ux(t){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\? property in its definition +`,type:ke.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),Object.hasOwn(t,Xo)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Xo+`> property in its definition +`,type:ke.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),Object.hasOwn(t,Xo)&&Object.hasOwn(t,Ri)&&!Object.hasOwn(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${Ri}: <${t.defaultMode}>which does not exist +`,type:ke.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),Object.hasOwn(t,Xo)&&Object.keys(t.modes).forEach(i=>{let s=t.modes[i];s.forEach((a,o)=>{a===void 0?n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${i}> at index: <${o}> +`,type:ke.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED}):Object.hasOwn(a,"LONGER_ALT")&&(Array.isArray(a.LONGER_ALT)?a.LONGER_ALT:[a.LONGER_ALT]).forEach(u=>{u!==void 0&&!s.includes(u)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${u.name}> on token <${a.name}> outside of mode <${i}> +`,type:ke.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})})}),n}function sh(t,e,r){let n=[],i=!1,a=Object.values(t.modes||{}).flat().filter(Boolean).filter(l=>l[Nn]!==Fe.NA),o=ch(r);return e&&a.forEach(l=>{let u=uh(l,o);if(u!==!1){let p={message:fx(l,u),type:u.issue,tokenType:l};n.push(p)}else Object.hasOwn(l,"LINE_BREAKS")?l.LINE_BREAKS===!0&&(i=!0):Ho(o,l.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found. + This Lexer has been defined to track line and column information, + But none of the Token Types can be identified as matching a line terminator. + See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS + for details.`,type:ke.NO_LINE_BREAKS_FLAGS}),n}function ah(t){let e={};return Object.keys(t).forEach(n=>{let i=t[n];if(Array.isArray(i))e[n]=[];else throw Error("non exhaustive match")}),e}function oh(t){let e=t.PATTERN;if(e instanceof RegExp)return!1;if(typeof e=="function")return!0;if(Object.hasOwn(e,"exec"))return!0;if(typeof e=="string")return!1;throw Error("non exhaustive match")}function cx(t){return typeof t=="string"&&t.length===1?t.charCodeAt(0):!1}var lh={test:function(t){let e=t.length;for(let r=this.lastIndex;r Token Type + Root cause: ${e.errMsg}. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===ke.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. + The problem is in the <${t.name}> Token Type + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function ch(t){return t.map(r=>typeof r=="string"?r.charCodeAt(0):r)}function Vc(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}var Ti=256,Yo=[];function rr(t){return t255?255+~~(t/255):t}}function vr(t,e){let r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}function $i(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}var fh=1,ph={};function xr(t){let e=px(t);mx(e),gx(e),hx(e),e.forEach(r=>{r.isParent=r.categoryMatches.length>0})}function px(t){let e=[...t],r=t,n=!0;for(;n;){r=r.map(s=>s.CATEGORIES).flat().filter(Boolean);let i=r.filter(s=>!e.includes(s));e=e.concat(i),i.length===0?n=!1:r=i}return e}function mx(t){t.forEach(e=>{Hc(e)||(ph[fh]=e,e.tokenTypeIdx=fh++),dh(e)&&!Array.isArray(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),dh(e)||(e.CATEGORIES=[]),yx(e)||(e.categoryMatches=[]),Tx(e)||(e.categoryMatchesMap={})})}function hx(t){t.forEach(e=>{e.categoryMatches=[],Object.keys(e.categoryMatchesMap).forEach(r=>{e.categoryMatches.push(ph[r].tokenTypeIdx)})})}function gx(t){t.forEach(e=>{mh([],e)})}function mh(t,e){t.forEach(r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),e.CATEGORIES.forEach(r=>{let n=t.concat(e);n.includes(r)||mh(n,r)})}function Hc(t){return Object.hasOwn(t??{},"tokenTypeIdx")}function dh(t){return Object.hasOwn(t??{},"CATEGORIES")}function yx(t){return Object.hasOwn(t??{},"categoryMatches")}function Tx(t){return Object.hasOwn(t??{},"categoryMatchesMap")}function hh(t){return Object.hasOwn(t??{},"tokenTypeIdx")}var vi={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i,s){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}};var ke=(function(t){return t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE",t})(ke||{}),Hs={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` +`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:vi,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(Hs);var Fe=(()=>{class t{constructor(r,n=Hs){if(this.lexerDefinition=r,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(s,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let o=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${s}>`);let{time:l,value:u}=Ws(a),c=l>10?console.warn:console.log;return this.traceInitIndent time: ${l}ms`),this.traceInitIndent--,u}else return a()},typeof n=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. +a boolean 2nd argument is no longer supported`);this.config=Object.assign({},Hs,n);let i=this.config.traceInitPerf;i===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof i=="number"&&(this.traceInitMaxIdent=i,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let s,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===Hs.lineTerminatorsPattern)this.config.lineTerminatorsPattern=lh;else if(this.config.lineTerminatorCharacters===Hs.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. + For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(n.safeMode&&n.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Array.isArray(r)?s={modes:{defaultMode:[...r]},defaultMode:Ri}:(a=!1,s=Object.assign({},r))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(ih(s,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(sh(s,this.trackStartLines,this.config.lineTerminatorCharacters))})),s.modes=s.modes?s.modes:{},Object.entries(s.modes).forEach(([l,u])=>{s.modes[l]=u.filter(c=>c!==void 0)});let o=Object.keys(s.modes);if(Object.entries(s.modes).forEach(([l,u])=>{this.TRACE_INIT(`Mode: <${l}> processing`,()=>{if(this.modes.push(l),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(nh(u,o))}),this.lexerDefinitionErrors.length===0){xr(u);let c;this.TRACE_INIT("analyzeTokenTypes",()=>{c=rh(u,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:n.positionTracking,ensureOptimizations:n.ensureOptimizations,safeMode:n.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[l]=c.patternIdxToConfig,this.charCodeToPatternIdxToConfig[l]=c.charCodeToPatternIdxToConfig,this.emptyGroups=Object.assign({},this.emptyGroups,c.emptyGroups),this.hasCustom=c.hasCustom||this.hasCustom,this.canModeBeOptimized[l]=c.canBeOptimized}})}),this.defaultMode=s.defaultMode,this.lexerDefinitionErrors.length>0&&!this.config.deferDefinitionErrorsHandling){let u=this.lexerDefinitionErrors.map(c=>c.message).join(`----------------------- +`);throw new Error(`Errors detected in definition of Lexer: +`+u)}this.lexerDefinitionWarning.forEach(l=>{Bs(l.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(a&&(this.handleModes=()=>{}),this.trackStartLines===!1&&(this.computeNewColumn=l=>l),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=()=>{}),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let l=Object.entries(this.canModeBeOptimized).reduce((u,[c,p])=>(p===!1&&u.push(c),u),[]);if(n.ensureOptimizations&&l.length>0)throw Error(`Lexer Modes: < ${l.join(", ")} > cannot be optimized. + Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. + Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{Jm()}),this.TRACE_INIT("toFastProperties",()=>{Ks(this)})})}tokenize(r,n=this.defaultMode){if(this.lexerDefinitionErrors.length>0){let s=this.lexerDefinitionErrors.map(a=>a.message).join(`----------------------- +`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: +`+s)}return this.tokenizeInternal(r,n)}tokenizeInternal(r,n){let i,s,a,o,l,u,c,p,m,g,C,b,F,_,N,x=r,W=x.length,D=0,pe=0,Ht=this.hasCustom?0:Math.floor(r.length/10),je=new Array(Ht),Lt=[],kt=this.trackStartLines?1:void 0,A=this.trackStartLines?1:void 0,y=ah(this.emptyGroups),L=this.trackStartLines,P=this.config.lineTerminatorsPattern,T=0,$=[],E=[],I=[],M=[];Object.freeze(M);let k=!1,V=ye=>{if(I.length===1&&ye.tokenType.PUSH_MODE===void 0){let Me=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(ye);Lt.push({offset:ye.startOffset,line:ye.startLine,column:ye.startColumn,length:ye.image.length,message:Me})}else{I.pop();let Me=I.at(-1);$=this.patternIdxToConfig[Me],E=this.charCodeToPatternIdxToConfig[Me],T=$.length;let $s=this.canModeBeOptimized[Me]&&this.config.safeMode===!1;E&&$s?k=!0:k=!1}};function Y(ye){I.push(ye),E=this.charCodeToPatternIdxToConfig[ye],$=this.patternIdxToConfig[ye],T=$.length,T=$.length;let Me=this.canModeBeOptimized[ye]&&this.config.safeMode===!1;E&&Me?k=!0:k=!1}Y.call(this,n);let le,ae=this.config.recoveryEnabled;for(;Du.length){u=o,m=o.length,c=p,le=Dt;break}}}break}}if(m!==-1){if(g=le.group,g!==void 0&&(u=u!==null?u:r.substring(D,D+m),C=le.tokenTypeIdx,b=this.createTokenInstance(u,D,C,le.tokenType,kt,A,m),this.handlePayload(b,c),g===!1?pe=this.addToken(je,pe,b):y[g].push(b)),L===!0&&le.canLineTerminator===!0){let Xe=0,mt,Xt;P.lastIndex=0;do u=u!==null?u:r.substring(D,D+m),mt=P.test(u),mt===!0&&(Xt=P.lastIndex-1,Xe++);while(mt===!0);Xe!==0?(kt=kt+Xe,A=m-Xt,this.updateTokenEndLineColumnLocation(b,g,Xt,Xe,kt,A,m)):A=this.computeNewColumn(A,m)}else A=this.computeNewColumn(A,m);D=D+m,this.handleModes(le,V,Y,b)}else{let Xe=D,mt=kt,Xt=A,Dt=ae===!1;for(;Dt===!1&&D ${Er(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let s="Expecting: ",o=` +but found: '`+e[0].image+"'";if(n)return s+n+o;{let p=`one of these possible Token sequences: +${t.reduce((m,g)=>m.concat(g),[]).map(m=>`[${m.map(g=>Er(g)).join(", ")}]`).map((m,g)=>` ${g+1}. ${m}`).join(` +`)}`;return s+p+o}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){let i="Expecting: ",a=` +but found: '`+e[0].image+"'";if(r)return i+r+a;{let l=`expecting at least one iteration which starts with one of these possible Token sequences:: + <${t.map(u=>`[${u.map(c=>Er(c)).join(",")}]`).join(" ,")}>`;return i+l+a}}};Object.freeze(Cr);var Ah={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- +inside top level rule: ->`+t.name+"<-"}},Wt={buildDuplicateFoundError(t,e){function r(c){return c instanceof Z?c.terminalType.name:c instanceof ce?c.nonTerminalName:""}let n=t.name,i=e[0],s=i.idx,a=yt(i),o=r(i),l=s>0,u=`->${a}${l?s:""}<- ${o?`with argument: ->${o}<-`:""} + appears more than once (${e.length} times) in the top level rule: ->${n}<-. + For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES + `;return u=u.replace(/[ \t]+/g," "),u=u.replace(/\s\s+/g,` +`),u},buildNamespaceConflictError(t){return`Namespace conflict found in grammar. +The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>. +To resolve this make sure each Terminal and Non-Terminal names are unique +This is easy to accomplish by using the convention that Terminal names start with an uppercase letter +and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=t.prefixPath.map(i=>Er(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix +in inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX +For Further details.`},buildAlternationAmbiguityError(t){let e=t.alternation.idx===0?"":t.alternation.idx,r=t.prefixPath.length===0,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in inside <${t.topLevelRule.name}> Rule, +`;if(r)n+=`These alternatives are all empty (match no tokens), making them indistinguishable. +Only the last alternative may be empty. +`;else{let i=t.prefixPath.map(s=>Er(s)).join(", ");n+=`<${i}> may appears as a prefix path in all these alternatives. +`}return n+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES +For Further details.`,n},buildEmptyRepetitionError(t){let e=yt(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens. +This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in inside <${t.topLevelRule.name}> Rule. +Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives: + inside <${t.topLevelRule.name}> Rule. + has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=t.leftRecursionPath.map(s=>s.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar. +rule: <${e}> can be invoked from itself (directly or indirectly) +without consuming any Tokens. The grammar path that causes this is: + ${n} + To fix this refactor your grammar to remove the left recursion. +see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof ut?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}};function Ch(t,e){let r=new Yc(t,e);return r.resolveRefs(),r.errors}var Yc=class extends ct{constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){Object.values(this.nameToTopRule).forEach(e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:Ke.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}};var Jc=class extends $r{constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=[...this.path.ruleStack].reverse(),this.occurrenceStack=[...this.path.occurrenceStack].reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){this.ruleStack.length===0?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},Jo=class extends Jc{constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),s=new Te({definition:i});this.possibleTokTypes=Sn(s),this.found=!0}}},Ei=class extends $r{constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Zo=class extends Ei{walkMany(e,r,n){if(e.idx===this.occurrence){let i=r.concat(n)[0];this.result.isEndOfRule=i===void 0,i instanceof Z&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},Xs=class extends Ei{walkManySep(e,r,n){if(e.idx===this.occurrence){let i=r.concat(n)[0];this.result.isEndOfRule=i===void 0,i instanceof Z&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},Qo=class extends Ei{walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=r.concat(n)[0];this.result.isEndOfRule=i===void 0,i instanceof Z&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},Ys=class extends Ei{walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=r.concat(n)[0];this.result.isEndOfRule=i===void 0,i instanceof Z&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};function el(t,e,r=[]){r=[...r];let n=[],i=0;function s(o){return o.concat(t.slice(i+1))}function a(o){let l=el(s(o),e,r);return n.concat(l)}for(;r.length{l.definition.length!==0&&(n=a(l.definition))}),n;if(o instanceof Z)r.push(o.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:t.slice(i)}),n}function Sh(t,e,r,n){let i="EXIT_NONE_TERMINAL",s=[i],a="EXIT_ALTERNATIVE",o=!1,l=e.length,u=l-n-1,c=[],p=[];for(p.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});p.length!==0;){let m=p.pop();if(m===a){o&&p.at(-1).idx<=u&&p.pop();continue}let g=m.def,C=m.idx,b=m.ruleStack,F=m.occurrenceStack;if(g.length===0)continue;let _=g[0];if(_===i){let N={idx:C,def:g.slice(1),ruleStack:b.slice(0,-1),occurrenceStack:F.slice(0,-1)};p.push(N)}else if(_ instanceof Z)if(C=0;N--){let x=_.definition[N],W={idx:C,def:x.definition.concat(g.slice(1)),ruleStack:b,occurrenceStack:F};p.push(W),p.push(a)}else if(_ instanceof Te)p.push({idx:C,def:_.definition.concat(g.slice(1)),ruleStack:b,occurrenceStack:F});else if(_ instanceof ut)p.push(vx(_,C,b,F));else throw Error("non exhaustive match")}return c}function vx(t,e,r,n){let i=[...r];i.push(t.name);let s=[...n];return s.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:s}}var we=(function(t){return t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION",t})(we||{});function Js(t){if(t instanceof fe||t==="Option")return we.OPTION;if(t instanceof te||t==="Repetition")return we.REPETITION;if(t instanceof Re||t==="RepetitionMandatory")return we.REPETITION_MANDATORY;if(t instanceof $e||t==="RepetitionMandatoryWithSeparator")return we.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof he||t==="RepetitionWithSeparator")return we.REPETITION_WITH_SEPARATOR;if(t instanceof ge||t==="Alternation")return we.ALTERNATION;throw Error("non exhaustive match")}function rl(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,s=Js(n);return s===we.ALTERNATION?Ai(e,r,i):Ci(e,r,s,i)}function kh(t,e,r,n,i,s){let a=Ai(t,e,r),o=Ph(a)?$i:vr;return s(a,n,o,i)}function wh(t,e,r,n,i,s){let a=Ci(t,e,i,r),o=Ph(a)?$i:vr;return s(a[0],o,n)}function bh(t,e,r,n){let i=t.length,s=t.every(a=>a.every(o=>o.length===1));if(e)return function(a){let o=a.map(l=>l.GATE);for(let l=0;ll.flat()).reduce((l,u,c)=>(u.forEach(p=>{p.tokenTypeIdx in l||(l[p.tokenTypeIdx]=c),p.categoryMatches.forEach(m=>{Object.hasOwn(l,m)||(l[m]=c)})}),l),{});return function(){let l=this.LA_FAST(1);return o[l.tokenTypeIdx]}}else return function(){for(let a=0;as.length===1),i=t.length;if(n&&!r){let s=t.flat();if(s.length===1&&s[0].categoryMatches.length===0){let o=s[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===o}}else{let a=s.reduce((o,l,u)=>(o[l.tokenTypeIdx]=!0,l.categoryMatches.forEach(c=>{o[c]=!0}),o),[]);return function(){let o=this.LA_FAST(1);return a[o.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;sel([a],1)),n=Nh(r.length),i=r.map(a=>{let o={};return a.forEach(l=>{Zc(l.partialPath).forEach(c=>{o[c]=!0})}),o}),s=r;for(let a=1;a<=e;a++){let o=s;s=Nh(o.length);for(let l=0;l{Zc(F.partialPath).forEach(N=>{i[l][N]=!0})})}}}}return n}function Ai(t,e,r,n){let i=new tl(t,we.ALTERNATION,n);return e.accept(i),_h(i.result,r)}function Ci(t,e,r,n){let i=new tl(t,r);e.accept(i);let s=i.result,o=new Qc(e,t,r).startWalking(),l=new Te({definition:s}),u=new Te({definition:o});return _h([l,u],n)}function nl(t,e){e:for(let r=0;r{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function Ph(t){return t.every(e=>e.every(r=>r.every(n=>n.categoryMatches.length===0)))}function Lh(t){return t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName}).map(r=>Object.assign({type:Ke.CUSTOM_LOOKAHEAD_VALIDATION},r))}function Dh(t,e,r,n){let i=t.flatMap(l=>Ex(l,r)),s=wx(t,e,r),a=t.flatMap(l=>Sx(l,r)),o=t.flatMap(l=>Cx(l,t,n,r));return i.concat(s,a,o)}function Ex(t,e){let r=new ef;t.accept(r);let n=r.allProductions,i=Object.groupBy(n,Ax),s=Object.fromEntries(Object.entries(i).filter(([o,l])=>l.length>1));return Object.values(s).map(o=>{let l=o[0],u=e.buildDuplicateFoundError(t,o),c=yt(l),p={message:u,type:Ke.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:c,occurrence:l.idx},m=Mh(l);return m&&(p.parameter=m),p})}function Ax(t){return`${yt(t)}_#_${t.idx}_#_${Mh(t)}`}function Mh(t){return t instanceof Z?t.terminalType.name:t instanceof ce?t.nonTerminalName:""}var ef=class extends ct{constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};function Cx(t,e,r,n){let i=[];if(e.reduce((a,o)=>o.name===t.name?a+1:a,0)>1){let a=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:a,type:Ke.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function Fh(t,e,r){let n=[],i;return e.includes(t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:Ke.INVALID_RULE_OVERRIDE,ruleName:t})),n}function rf(t,e,r,n=[]){let i=[],s=il(e.definition);if(s.length===0)return[];{let a=t.name;s.includes(t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:Ke.LEFT_RECURSION,ruleName:a});let l=n.concat([t]),c=s.filter(p=>!l.includes(p)).flatMap(p=>{let m=[...n];return m.push(p),rf(t,p,r,m)});return i.concat(c)}}function il(t){let e=[];if(t.length===0)return e;let r=t[0];if(r instanceof ce)e.push(r.referencedRule);else if(r instanceof Te||r instanceof fe||r instanceof Re||r instanceof $e||r instanceof he||r instanceof te)e=e.concat(il(r.definition));else if(r instanceof ge)e=r.definition.map(s=>il(s.definition)).flat();else if(!(r instanceof Z))throw Error("non exhaustive match");let n=Cn(r),i=t.length>1;if(n&&i){let s=t.slice(1);return e.concat(il(s))}else return e}var Zs=class extends ct{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};function Gh(t,e){let r=new Zs;return t.accept(r),r.alternations.flatMap(s=>s.definition.slice(0,-1).flatMap((o,l)=>Sh([o],[],vr,1).length===0?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:s,emptyChoiceIdx:l}),type:Ke.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:s.idx,alternative:l+1}]:[]))}function Uh(t,e,r){let n=new Zs;t.accept(n);let i=n.alternations;return i=i.filter(a=>a.ignoreAmbiguities!==!0),i.flatMap(a=>{let o=a.idx,l=a.maxLookahead||e,u=Ai(o,t,l,a),c=Nx(u,a,t,r),p=kx(u,a,t,r);return c.concat(p)})}var tf=class extends ct{constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};function Sx(t,e){let r=new Zs;return t.accept(r),r.alternations.flatMap(s=>s.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:s}),type:Ke.TOO_MANY_ALTS,ruleName:t.name,occurrence:s.idx}]:[])}function jh(t,e,r){let n=[];return t.forEach(i=>{let s=new tf;i.accept(s),s.allProductions.forEach(o=>{let l=Js(o),u=o.maxLookahead||e,c=o.idx;if(Ci(c,i,l,u)[0].flat().length===0){let g=r.buildEmptyRepetitionError({topLevelRule:i,repetition:o});n.push({message:g,type:Ke.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function Nx(t,e,r,n){let i=[];return t.reduce((o,l,u)=>(e.definition[u].ignoreAmbiguities===!0||l.forEach(c=>{let p=[u];t.forEach((m,g)=>{u!==g&&nl(m,c)&&e.definition[g].ignoreAmbiguities!==!0&&p.push(g)}),p.length>1&&!nl(i,c)&&(i.push(c),o.push({alts:p,path:c}))}),o),[]).map(o=>{let l=o.alts.map(c=>c+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:l,prefixPath:o.path}),type:Ke.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:o.alts}})}function kx(t,e,r,n){let i=t.reduce((a,o,l)=>{let u=o.map(c=>({idx:l,path:c}));return a.concat(u)},[]);return i.flatMap(a=>{if(e.definition[a.idx].ignoreAmbiguities===!0)return[];let l=a.idx,u=a.path;return i.filter(m=>e.definition[m.idx].ignoreAmbiguities!==!0&&m.idx{let g=[m.idx+1,l+1],C=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:g,prefixPath:m.path}),type:Ke.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:C,alternatives:g}})})}function wx(t,e,r){let n=[],i=e.map(s=>s.name);return t.forEach(s=>{let a=s.name;if(i.includes(a)){let o=r.buildNamespaceConflictError(s);n.push({message:o,type:Ke.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:a})}}),n}function zh(t){let e=Object.assign({errMsgProvider:Ah},t),r={};return t.rules.forEach(n=>{r[n.name]=n}),Ch(r,e.errMsgProvider)}function qh(t){var e;let r=(e=t.errMsgProvider)!==null&&e!==void 0?e:Wt;return Dh(t.rules,t.tokenTypes,r,t.grammarName)}var Bh="MismatchedTokenException",Wh="NoViableAltException",Kh="EarlyExitException",Vh="NotAllInputParsedException",Hh=[Bh,Wh,Kh,Vh];Object.freeze(Hh);function Kr(t){return Hh.includes(t.name)}var Si=class extends Error{constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},kn=class extends Si{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Bh}},Qs=class extends Si{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Wh}},ea=class extends Si{constructor(e,r){super(e,r),this.name=Vh}},ta=class extends Si{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=Kh}};var nf={},af="InRuleRecoveryException",sf=class extends Error{constructor(e){super(e),this.name=af}},sl=class{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=Object.hasOwn(e,"recoveryEnabled")?e.recoveryEnabled:dt.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=bx)}getTokenToInsert(e){let r=Ar(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let s=this.findReSyncTokenType(),a=this.exportLexerState(),o=[],l=!1,u=this.LA_FAST(1),c=this.LA_FAST(1),p=()=>{let m=this.LA(0),g=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:u,previous:m,ruleName:this.getCurrRuleFullName()}),C=new kn(g,u,this.LA(0));C.resyncedTokens=o.slice(0,-1),this.SAVE_ERROR(C)};for(;!l;)if(this.tokenMatcher(c,i)){p();return}else if(n.call(this)){p(),e.apply(this,r);return}else this.tokenMatcher(c,s)?l=!0:(c=this.SKIP_TOKEN(),this.addToResyncTokens(c,o));this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA_FAST(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getNextPossibleTokenTypes(e){let r=e.ruleStack[0],i=this.getGAstProductions()[r];return new Jo(i,e).startWalking()}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new sf("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||r.length===0)return!1;let n=this.LA_FAST(1);return r.find(s=>this.tokenMatcher(n,s))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey();return this.getFollowSetFromFollowKey(r).includes(e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA_FAST(1),n=2;for(;;){let i=e.find(s=>xi(r,s));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK_IDX===0)return nf;let e=this.currRuleShortName,r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK,n=this.RULE_STACK_IDX+1,i=new Array(n);for(let s=0;sthis.getFollowSetFromFollowKey(r)).flat()}getFollowSetFromFollowKey(e){if(e===nf)return[ft];let r=e.ruleName+e.idxInCallingRule+Wo+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,ft)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA_FAST(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return r.slice(0,-1)}attemptInRepetitionRecovery(e,r,n,i,s,a,o){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=this.RULE_OCCURRENCE_STACK.slice(0,this.RULE_OCCURRENCE_STACK_IDX+1);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){let e=this.RULE_STACK_IDX+1,r=new Array(e);for(let n=0;nrf(r,r,Wt))}validateEmptyOrAlternatives(e){return e.flatMap(r=>Gh(r,Wt))}validateAmbiguousAlternationAlternatives(e,r){return e.flatMap(n=>Uh(n,r,Wt))}validateSomeNonEmptyLookaheadPath(e,r){return jh(e,r,Wt)}buildLookaheadForAlternation(e){return kh(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,bh)}buildLookaheadForOptional(e){return wh(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,Js(e.prodType),Ih)}};var ll=class{initLooksAhead(e){this.dynamicTokensEnabled=Object.hasOwn(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:dt.dynamicTokensEnabled,this.maxLookahead=Object.hasOwn(e,"maxLookahead")?e.maxLookahead:dt.maxLookahead,this.lookaheadStrategy=Object.hasOwn(e,"lookaheadStrategy")?e.lookaheadStrategy:new Sr({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){e.forEach(r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:s,repetitionMandatory:a,repetitionMandatoryWithSeparator:o,repetitionWithSeparator:l}=Ix(r);n.forEach(u=>{let c=u.idx===0?"":u.idx;this.TRACE_INIT(`${yt(u)}${c}`,()=>{let p=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:u.idx,rule:r,maxLookahead:u.maxLookahead||this.maxLookahead,hasPredicates:u.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),m=al(this.fullRuleNameToShort[r.name],256,u.idx);this.setLaFuncCache(m,p)})}),i.forEach(u=>{this.computeLookaheadFunc(r,u.idx,768,"Repetition",u.maxLookahead,yt(u))}),s.forEach(u=>{this.computeLookaheadFunc(r,u.idx,512,"Option",u.maxLookahead,yt(u))}),a.forEach(u=>{this.computeLookaheadFunc(r,u.idx,1024,"RepetitionMandatory",u.maxLookahead,yt(u))}),o.forEach(u=>{this.computeLookaheadFunc(r,u.idx,1536,"RepetitionMandatoryWithSeparator",u.maxLookahead,yt(u))}),l.forEach(u=>{this.computeLookaheadFunc(r,u.idx,1280,"RepetitionWithSeparator",u.maxLookahead,yt(u))})})})}computeLookaheadFunc(e,r,n,i,s,a){this.TRACE_INIT(`${a}${r===0?"":r}`,()=>{let o=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:s||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),l=al(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(l,o)})}getKeyForAutomaticLookahead(e,r){return al(this.currRuleShortName,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},of=class extends ct{constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},ol=new of;function Ix(t){ol.reset(),t.accept(ol);let e=ol.dslMethods;return ol.reset(),e}function cf(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffseta.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: + ${s.join(` + +`).replace(/\n/g,` + `)}`)}}};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function Zh(t,e,r){let n=function(){};df(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return e.forEach(s=>{i[s]=Ox}),n.prototype=i,n.prototype.constructor=n,n}var Qh=(function(t){return t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD",t})(Qh||{});function Px(t,e){return Lx(t,e)}function Lx(t,e){return e.filter(i=>typeof t[i]!="function").map(i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:Qh.MISSING_METHOD,methodName:i})).filter(Boolean)}var dl=class{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=Object.hasOwn(e,"nodeLocationTracking")?e.nodeLocationTracking:dt.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=()=>{},this.cstFinallyStateUpdate=()=>{},this.cstPostTerminal=()=>{},this.cstPostNonTerminal=()=>{},this.cstPostRule=()=>{};else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=ff,this.setNodeLocationFromNode=ff,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=cf,this.setNodeLocationFromNode=cf,this.cstPostRule=()=>{},this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=()=>{},this.setNodeLocationFromNode=()=>{},this.cstPostRule=()=>{},this.setInitialNodeLocation=()=>{};else throw Error(`Invalid config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA_FAST(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let r=this.LA_FAST(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];Xh(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];Yh(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if(this.baseCstVisitorConstructor===void 0){let e=Jh(this.className,Object.keys(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(this.baseCstVisitorWithDefaultsConstructor===void 0){let e=Zh(this.className,Object.keys(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getPreviousExplicitRuleShortName(){return this.RULE_STACK[this.RULE_STACK_IDX-1]}getLastExplicitRuleOccurrenceIndex(){return this.RULE_OCCURRENCE_STACK[this.RULE_OCCURRENCE_STACK_IDX]}};var pl=class{initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVectorLength-2?(this.consumeToken(),this.LA_FAST(1)):Nr}LA_FAST(e){let r=this.currIdx+e;return this.tokVector[r]}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?Nr:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVectorLength-1}getLexerPosition(){return this.exportLexerState()}};var ml=class{ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,r,n=Ni){if(this.definedRulesNames.includes(e)){let a={message:Wt.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:Ke.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(a)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=Ni){let i=Fh(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let s=this.defineRule(e,r,n);return this[e]=s,s}BACKTRACK(e,r){var n;let i=(n=e.coreRule)!==null&&n!==void 0?n:e;return function(){this.isBackTrackingStack.push(1);let s=this.saveRecogState();try{return i.apply(this,r),!0}catch(a){if(Kr(a))return!1;throw a}finally{this.reloadRecogState(s),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return Bo(Object.values(this.gastProductionsCache))}};var hl=class{initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=$i,this.subruleIdx=0,this.currRuleShortName=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK=[],this.RULE_OCCURRENCE_STACK_IDX=-1,this.gastProductionsCache={},Object.hasOwn(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. + See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 + For Further details.`);if(Array.isArray(e)){if(e.length===0)throw Error(`A Token Vocabulary cannot be empty. + Note that the first argument for the parser constructor + is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. + See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 + For Further details.`)}if(Array.isArray(e))this.tokensMap=e.reduce((s,a)=>(s[a.name]=a,s),{});else if(Object.hasOwn(e,"modes")&&Object.values(e.modes).flat().every(hh)){let s=Object.values(e.modes).flat(),a=[...new Set(s)];this.tokensMap=a.reduce((o,l)=>(o[l.name]=l,o),{})}else if(typeof e=="object"&&e!==null)this.tokensMap=Object.assign({},e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=ft;let i=(Object.hasOwn(e,"modes")?Object.values(e.modes).flat():Object.values(e)).every(s=>{var a;return((a=s.categoryMatches)===null||a===void 0?void 0:a.length)==0});this.tokenMatcher=i?$i:vr,xr(Object.values(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called' +Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=Object.hasOwn(n,"resyncEnabled")?n.resyncEnabled:Ni.resyncEnabled,s=Object.hasOwn(n,"recoveryValueFunc")?n.recoveryValueFunc:Ni.recoveryValueFunc,a=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a;let o;return this.outputCst===!0?o=function(...p){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),r.apply(this,p);let m=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(m),m}catch(m){return this.invokeRuleCatch(m,i,s)}finally{this.ruleFinallyStateUpdate()}}:o=function(...p){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),r.apply(this,p)}catch(m){return this.invokeRuleCatch(m,i,s)}finally{this.ruleFinallyStateUpdate()}},Object.assign(function(...p){this.onBeforeParse(e);try{return o.apply(this,p)}finally{this.onAfterParse(e)}},{ruleName:e,originalGrammarAction:r,coreRule:o})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK_IDX===0,s=r&&!this.isBackTracking()&&this.recoveryEnabled;if(Kr(e)){let a=e;if(s){let o=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(o))if(a.resyncedTokens=this.reSyncTo(o),this.outputCst){let l=this.CST_STACK[this.CST_STACK.length-1];return l.recoveredNode=!0,l}else return n(e);else{if(this.outputCst){let l=this.CST_STACK[this.CST_STACK.length-1];l.recoveredNode=!0,a.partialCstResult=l}throw a}}else{if(i)return this.moveToTerminatedState(),n(e);throw a}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof e!="function"){s=e.DEF;let a=e.GATE;if(a!==void 0){let o=i;i=()=>a.call(this)&&o.call(this)}}else s=e;if(i.call(this)===!0)return s.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof r!="function"){s=r.DEF;let a=r.GATE;if(a!==void 0){let o=i;i=()=>a.call(this)&&o.call(this)}}else s=r;if(i.call(this)===!0){let a=this.doSingleRepetition(s);for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s)}else throw this.raiseEarlyExitException(e,we.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,Qo)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,s=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let o=()=>this.tokenMatcher(this.LA_FAST(1),s);for(;this.tokenMatcher(this.LA_FAST(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,o,i,Ys],o,1536,e,Ys)}else throw this.raiseEarlyExitException(e,we.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof r!="function"){s=r.DEF;let o=r.GATE;if(o!==void 0){let l=i;i=()=>o.call(this)&&l.call(this)}}else s=r;let a=!0;for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,768,e,Zo,a)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,s=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let o=()=>this.tokenMatcher(this.LA_FAST(1),s);for(;this.tokenMatcher(this.LA_FAST(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,o,i,Xs],o,1280,e,Xs)}}repetitionSepSecondInternal(e,r,n,i,s){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,s],n,1536,e,s)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Array.isArray(e)?e:e.DEF,a=this.getLaFuncFromCache(n).call(this,i);if(a!==void 0)return i[a].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){this.RULE_STACK_IDX--,this.RULE_OCCURRENCE_STACK_IDX--,this.RULE_STACK_IDX>=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX]),this.cstFinallyStateUpdate()}subruleInternal(e,r,n){let i;try{let s=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.coreRule.apply(this,s),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(s){throw this.subruleInternalError(s,n,e.ruleName)}}subruleInternalError(e,r,n){throw Kr(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let s=this.LA_FAST(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),i=s):this.consumeInternalError(e,s,n)}catch(s){i=this.consumeInternalRecovery(e,r,s)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,s=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new kn(i,r,s))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(s){throw s.name===af?n:s}}else throw n}saveRecogState(){let e=this.errors,r=this.RULE_STACK.slice(0,this.RULE_STACK_IDX+1);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState);let r=e.RULE_STACK;for(let n=0;n=0&&(this.currRuleShortName=this.RULE_STACK[this.RULE_STACK_IDX])}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK[++this.RULE_OCCURRENCE_STACK_IDX]=n,this.RULE_STACK[++this.RULE_STACK_IDX]=e,this.currRuleShortName=e,this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.currRuleShortName;return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),ft)}reset(){this.resetLexerState(),this.subruleIdx=0,this.currRuleShortName=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK_IDX=-1,this.RULE_OCCURRENCE_STACK_IDX=-1,this.CST_STACK=[]}onBeforeParse(e){for(let r=0;r{for(let e=0;e<10;e++){let r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return Nr}topLevelRuleRecord(e,r){try{let n=new ut({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` + This error was thrown during the "grammar recording phase" For more info see: + https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch(i){throw n}throw n}}optionInternalRecord(e,r){return na.call(this,fe,e,r)}atLeastOneInternalRecord(e,r){na.call(this,Re,r,e)}atLeastOneSepFirstInternalRecord(e,r){na.call(this,$e,r,e,eg)}manyInternalRecord(e,r){na.call(this,te,r,e)}manySepFirstInternalRecord(e,r){na.call(this,he,r,e,eg)}orInternalRecord(e,r){return Fx.call(this,e,r)}subruleInternalRecord(e,r,n){if(Tl(r),!e||!Object.hasOwn(e,"ruleName")){let o=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw o.KNOWN_RECORDER_ERROR=!0,o}let i=this.recordingProdStack.at(-1),s=e.ruleName,a=new ce({idx:r,nonTerminalName:s,label:n?.LABEL,referencedRule:void 0});return i.definition.push(a),this.outputCst?Mx:Rl}consumeInternalRecord(e,r,n){if(Tl(r),!Hc(e)){let a=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}> + inside top level rule: <${this.recordingProdStack[0].name}>`);throw a.KNOWN_RECORDER_ERROR=!0,a}let i=this.recordingProdStack.at(-1),s=new Z({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(s),ig}};function na(t,e,r,n=!1){Tl(r);let i=this.recordingProdStack.at(-1),s=typeof e=="function"?e:e.DEF,a=new t({definition:[],idx:r});return n&&(a.separator=e.SEP),Object.hasOwn(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(a),s.call(this),i.definition.push(a),this.recordingProdStack.pop(),Rl}function Fx(t,e){Tl(e);let r=this.recordingProdStack.at(-1),n=Array.isArray(t)===!1,i=n===!1?t:t.DEF,s=new ge({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});Object.hasOwn(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD);let a=i.some(o=>typeof o.GATE=="function");return s.hasPredicates=a,r.definition.push(s),i.forEach(o=>{let l=new Te({definition:[]});s.definition.push(l),Object.hasOwn(o,"IGNORE_AMBIGUITIES")?l.ignoreAmbiguities=o.IGNORE_AMBIGUITIES:Object.hasOwn(o,"GATE")&&(l.ignoreAmbiguities=!0),this.recordingProdStack.push(l),o.ALT.call(this),this.recordingProdStack.pop()}),Rl}function rg(t){return t===0?"":`${t}`}function Tl(t){if(t<0||t>tg){let e=new Error(`Invalid DSL Method idx value: <${t}> + Idx value must be a none negative value smaller than ${tg+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var $l=class{initPerformanceTracer(e){if(Object.hasOwn(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=dt.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${e}>`);let{time:i,value:s}=Ws(r),a=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,s}else return r()}};function sg(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let s=Object.getOwnPropertyDescriptor(n,i);s&&(s.get||s.set)?Object.defineProperty(t.prototype,i,s):t.prototype[i]=r.prototype[i]})})}var Nr=Ar(ft,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Nr);var dt=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Cr,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Ni=Object.freeze({recoveryValueFunc:()=>{},resyncEnabled:!0}),Ke=(function(t){return t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION",t})(Ke||{});function vl(t=void 0){return function(){return t}}var ag=(()=>{class t{static performSelfAnalysis(r){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let r;this.selfAnalysisDone=!0;let n=this.className;this.TRACE_INIT("toFastProps",()=>{Ks(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),this.definedRulesNames.forEach(s=>{let o=this[s].originalGrammarAction,l;this.TRACE_INIT(`${s} Rule`,()=>{l=this.topLevelRuleRecord(s,o)}),this.gastProductionsCache[s]=l})}finally{this.disableRecording()}});let i=[];if(this.TRACE_INIT("Grammar Resolving",()=>{i=zh({rules:Object.values(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(i)}),this.TRACE_INIT("Grammar Validations",()=>{if(i.length===0&&this.skipValidations===!1){let s=qh({rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),errMsgProvider:Wt,grammarName:n}),a=Lh({lookaheadStrategy:this.lookaheadStrategy,rules:Object.values(this.gastProductionsCache),tokenTypes:Object.values(this.tokensMap),grammarName:n});this.definitionErrors=this.definitionErrors.concat(s,a)}}),this.definitionErrors.length===0&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let s=Ym(Object.values(this.gastProductionsCache));this.resyncFollows=s}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var s,a;(a=(s=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(s,{rules:Object.values(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Object.values(this.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&this.definitionErrors.length!==0)throw r=this.definitionErrors.map(s=>s.message),new Error(`Parser Definition Errors detected: + ${r.join(` +------------------------------- +`)}`)})}constructor(r,n){this.definitionErrors=[],this.selfAnalysisDone=!1;let i=this;if(i.initErrorHandler(n),i.initLexerAdapter(),i.initLooksAhead(n),i.initRecognizerEngine(r,n),i.initRecoverable(n),i.initTreeBuilder(n),i.initGastRecorder(n),i.initPerformanceTracer(n),Object.hasOwn(n,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. + Please use the flag on the relevant DSL method instead. + See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES + For further details.`);this.skipValidations=Object.hasOwn(n,"skipValidations")?n.skipValidations:dt.skipValidations}}return t.DEFER_DEFINITION_ERRORS_HANDLING=!1,t})();sg(ag,[sl,ll,dl,pl,hl,ml,gl,yl,$l]);var ia=class extends ag{constructor(e,r=dt){let n=Object.assign({},r);n.outputCst=!1,super(e,n)}};function wn(t,e,r){return`${t.name}_${e}_${r}`}var Vr=1,Ux=2,og=4,lg=5;var bn=7,jx=8,zx=9,qx=10,Bx=11,ug=12,sa=class{constructor(e){this.target=e}isEpsilon(){return!1}},ki=class extends sa{constructor(e,r){super(e),this.tokenType=r}},aa=class extends sa{constructor(e){super(e)}isEpsilon(){return!0}},wi=class extends sa{constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};function cg(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};Wx(e,t);let r=t.length;for(let n=0;nfg(t,e,a));return bi(t,e,n,r,...i)}function Jx(t,e,r){let n=Ve(t,e,r,{type:Vr});Hr(t,n);let i=bi(t,e,n,r,In(t,e,r));return Zx(t,e,r,i)}function In(t,e,r){let n=Nm(Ft(r.definition,i=>fg(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:eE(t,n)}function dg(t,e,r,n,i){let s=n.left,a=n.right,o=Ve(t,e,r,{type:Bx});Hr(t,o);let l=Ve(t,e,r,{type:ug});return s.loopback=o,l.loopback=o,t.decisionMap[wn(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,Ge(a,o),i===void 0?(Ge(o,s),Ge(o,l)):(Ge(o,l),Ge(o,i.left),Ge(i.right,s)),{left:s,right:l}}function pg(t,e,r,n,i){let s=n.left,a=n.right,o=Ve(t,e,r,{type:qx});Hr(t,o);let l=Ve(t,e,r,{type:ug}),u=Ve(t,e,r,{type:zx});return o.loopback=u,l.loopback=u,Ge(o,s),Ge(o,l),Ge(a,u),i!==void 0?(Ge(u,l),Ge(u,i.left),Ge(i.right,s)):Ge(u,o),t.decisionMap[wn(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:l}}function Zx(t,e,r,n){let i=n.left,s=n.right;return Ge(i,s),t.decisionMap[wn(e,"Option",r.idx)]=i,n}function Hr(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function bi(t,e,r,n,...i){let s=Ve(t,e,n,{type:jx,start:r});r.end=s;for(let o of i)o!==void 0?(Ge(r,o.left),Ge(o.right,s)):Ge(r,s);let a={left:r,right:s};return t.decisionMap[wn(e,Qx(n),n.idx)]=r,a}function Qx(t){if(t instanceof ge)return"Alternation";if(t instanceof fe)return"Option";if(t instanceof te)return"Repetition";if(t instanceof he)return"RepetitionWithSeparator";if(t instanceof Re)return"RepetitionMandatory";if(t instanceof $e)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function eE(t,e){let r=e.length;for(let s=0;se.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};function gf(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}function iE(t,e){let r={};return n=>{let i=n.toString(),s=r[i];return s!==void 0||(s={atnStartState:t,decision:e,states:{}},r[i]=s),s}}var xl=class{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;nconsole.log(i),this.incomplete=(n=e?.incomplete)!==null&&n!==void 0?n:!1}initialize(e){this.atn=cg(e.rules),this.dfas=sE(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:s}=e,a=this.dfas,o=this.logging,l=this.incomplete,u=wn(n,"Alternation",r),p=this.atn.decisionMap[u].decision,m=Ft(rl({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),g=>Ft(g,C=>C[0]));if(hg(m,!1)&&!s){let g=Xu(m,(C,b,F)=>(mo(b,_=>{_&&(C[_.tokenTypeIdx]=F,mo(_.categoryMatches,N=>{C[N]=F}))}),C),{});return i?function(C){var b;let F=this.LA_FAST(1),_=g[F.tokenTypeIdx];if(C!==void 0&&_!==void 0){let N=(b=C[_])===null||b===void 0?void 0:b.GATE;if(N!==void 0&&N.call(this)===!1)return}return _}:function(){let C=this.LA_FAST(1);return g[C.tokenTypeIdx]}}else return i?function(g){let C=new xl,b=g===void 0?0:g.length;for(let _=0;_Ft(g,C=>C[0]));if(hg(m)&&m[0][0]&&!s){let g=m[0],C=Sm(g);if(C.length===1&&wm(C[0].categoryMatches)){let F=C[0].tokenTypeIdx;return function(){return this.LA_FAST(1).tokenTypeIdx===F}}else{let b=Xu(C,(F,_)=>(_!==void 0&&(F[_.tokenTypeIdx]=!0,mo(_.categoryMatches,N=>{F[N]=!0})),F),{});return function(){let F=this.LA_FAST(1);return b[F.tokenTypeIdx]===!0}}}return function(){let g=yf.call(this,a,p,mg,o,l);return typeof g=="object"?!1:g===0}}};function hg(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let s of n){if(s===void 0){if(e)break;return!1}let a=[s.tokenTypeIdx].concat(s.categoryMatches);for(let o of a)if(r.has(o)){if(!i.has(o))return!1}else r.add(o),i.add(o)}}return!0}function sE(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;nEr(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${cE(t.production)}${r}> inside <${t.topLevelRule.name}> Rule, +<${e}> may appears as a prefix path in all these alternatives. +`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES +For Further details.`,n}function cE(t){if(t instanceof ce)return"SUBRULE";if(t instanceof fe)return"OPTION";if(t instanceof ge)return"OR";if(t instanceof Re)return"AT_LEAST_ONE";if(t instanceof $e)return"AT_LEAST_ONE_SEP";if(t instanceof he)return"MANY_SEP";if(t instanceof te)return"MANY";if(t instanceof Z)return"CONSUME";throw Error("non exhaustive match")}function fE(t,e,r){let n=km(e.configs.elements,s=>s.state.transitions),i=Im(n.filter(s=>s instanceof ki).map(s=>s.tokenType),s=>s.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function dE(t,e){return t.edges[e.tokenTypeIdx]}function pE(t,e,r){let n=new Ii,i=[];for(let a of t.elements){if(r.is(a.alt)===!1)continue;if(a.state.type===bn){i.push(a);continue}let o=a.state.transitions.length;for(let l=0;l0&&!TE(s))for(let a of i)s.add(a);return s}function mE(t,e){if(t instanceof ki&&xi(e,t.tokenType))return t.target}function hE(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function yg(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function gg(t,e,r,n){return n=Tg(t,n),e.edges[r.tokenTypeIdx]=n,n}function Tg(t,e){if(e===oa)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function gE(t){let e=new Ii,r=t.transitions.length;for(let n=0;n0){let i=[...t.stack],a={state:i.pop(),alt:t.alt,stack:i};El(a,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function EE(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}function AE(t,e){let r;for(let n of t.configs.elements)if(!(e.is(n.alt)===!1||n.state.type===bn)){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}Mi();var ha=class{constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new Fi(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new Ln;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new Pn(e.startOffset,e.image.length,fi(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){let r=[];for(let s of e){let a=new Pn(s.startOffset,s.image.length,fi(s),s.tokenType,!0);a.root=this.rootNode,r.push(a)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){let s=n.container.content.indexOf(n);if(s>0){n.container.content.splice(s,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){let r=this.current;typeof e.$type=="string"&&!e.$infixName&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}},ga=class{get hidden(){return!1}get astNode(){let e=typeof this._astNode?.$type=="string"?this._astNode:this.container?.astNode;if(!e)throw new Error("This node has no associated AST element");return e}set astNode(e){this._astNode=e}get text(){return this.root.fullText.substring(this.offset,this.end)}},Pn=class extends ga{get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,r,n,i,s=!1){super(),this._hidden=s,this._offset=e,this._tokenType=i,this._length=r,this._range=n}},Ln=class extends ga{constructor(){super(...arguments),this.content=new ad(this)}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){let{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line=0;e--){let r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},ad=class t extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,t.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},Fi=class extends Ln{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}};var Pl=Symbol("Datatype");function od(t){return t.$type===Pl}var Og="\u200B",Pg=t=>t.endsWith(Og)?t:t+Og,ya=class{constructor(e,r){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let n=this.lexer.definition,i=e.LanguageMetaData.mode==="production";e.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new ld(n,Mt(ue({},e.parser.ParserConfig),{skipValidations:i,errorMessageProvider:e.parser.ParserErrorMessageProvider}),r,e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new Dl(n,Mt(ue({},e.parser.ParserConfig),{skipValidations:i,errorMessageProvider:e.parser.ParserErrorMessageProvider}),r)}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Ta=class extends ya{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e,!1),this.nodeBuilder=new ha,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){let n=this.computeRuleType(e),i;zr(e)&&(i=e.name,this.registerPrecedenceMap(e));let s=this.wrapper.DEFINE_RULE(Pg(e.name),this.startImplementation(n,i,r).bind(this));return this.allRules.set(e.name,s),We(e)&&e.entry&&(this.mainRule=s),s}registerPrecedenceMap(e){let r=e.name,n=new Map;for(let i=0;i0&&(r=this.construct()),r===void 0)throw new Error("No result from parser");if(this.stack.length>0)throw new Error("Parser stack is not empty after parsing");return r}startImplementation(e,r,n){return i=>{let s=!this.isRecording()&&e!==void 0;if(s){let a={$type:e};this.stack.push(a),e===Pl?a.value="":r!==void 0&&(a.$infixName=r)}return n(i),s?this.construct():void 0}}extractHiddenTokens(e){let r=this.lexerResult.hidden;if(!r.length)return[];let n=e.startOffset;for(let i=0;in)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let s=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(s);let a=this.nodeBuilder.buildLeafNode(i,n),{assignment:o,crossRef:l}=this.getAssignment(n),u=this.current;if(o){let c=wt(n)?i.image:this.converter.convert(i.image,a);this.assign(o.operator,o.feature,c,a,l)}else if(od(u)){let c=i.image;wt(n)||(c=this.converter.convert(c,a).toString()),u.value+=c}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,s){let a;!this.isRecording()&&!n&&(a=this.nodeBuilder.buildCompositeNode(i));let o;try{o=this.wrapper.wrapSubrule(e,r,s)}finally{this.isRecording()||(o===void 0&&!n&&(o=this.construct()),o!==void 0&&a&&a.length>0&&this.performSubruleAssignment(o,i,a))}}performSubruleAssignment(e,r,n){let{assignment:i,crossRef:s}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,s);else if(!i){let a=this.current;if(od(a))a.value+=e.toString();else if(typeof e=="object"&&e){let l=this.assignWithoutOverride(e,a);this.stack.pop(),this.stack.push(l)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);let s={$type:e};this.stack.push(s),this.assign(r.operator,r.feature,n,n.$cstNode)}else n.$type=e}}construct(){if(this.isRecording())return;let e=this.stack.pop();return this.nodeBuilder.construct(e),"$infixName"in e?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):od(e)?this.converter.convert(e.value,e.$cstNode):(Qu(this.astReflection,e),e)}constructInfix(e,r){let n=e.parts;if(!Array.isArray(n)||n.length===0)return;let i=e.operators;if(!Array.isArray(i)||n.length<2)return n[0];let s=0,a=-1;for(let b=0;ba?(a=_.precedence,s=b):_.precedence===a&&(_.rightAssoc||(s=b))}let o=i.slice(0,s),l=i.slice(s+1),u=n.slice(0,s+1),c=n.slice(s+1),p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:u,operators:o},m={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:c,operators:l},g=this.constructInfix(p,r),C=this.constructInfix(m,r);return{$type:e.$type,$cstNode:e.$cstNode,left:g,operator:i[s],right:C}}getAssignment(e){if(!this.assignmentMap.has(e)){let r=pr(e,zt);this.assignmentMap.set(e,{assignment:r,crossRef:r&&qt(r.terminal)?r.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,r,n,i,s){let a=this.current,o;switch(s==="single"&&typeof n=="string"?o=this.linker.buildReference(a,r,i,n):s==="multi"&&typeof n=="string"?o=this.linker.buildMultiReference(a,r,i,n):o=n,e){case"=":{a[r]=o;break}case"?=":{a[r]=!0;break}case"+=":Array.isArray(a[r])||(a[r]=[]),a[r].push(o)}}assignWithoutOverride(e,r){for(let[i,s]of Object.entries(r)){let a=e[i];a===void 0?e[i]=s:Array.isArray(a)&&Array.isArray(s)&&(s.push(...a),e[i]=s)}let n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},Ll=class{buildMismatchTokenMessage(e){return Cr.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return Cr.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return Cr.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return Cr.buildEarlyExitMessage(e)}},Gi=class extends Ll{buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},Ra=class extends ya{constructor(e){super(e,!0),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){let n=this.wrapper.DEFINE_RULE(Pg(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,s){this.before(i),this.wrapper.wrapSubrule(e,r,s),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},SE={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new Gi},Dl=class extends ia{constructor(e,r,n){let i=r&&"maxLookahead"in r;super(e,ue(Mt(ue({},SE),{lookaheadStrategy:i?new Sr({maxLookahead:r.maxLookahead}):new la({logging:r.skipValidations?()=>{}:void 0,incomplete:n})}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r,n){return this.RULE(e,r,n)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r,void 0)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}rule(e){return e.call(this,{})}},ld=class extends Dl{constructor(e,r,n,i){super(e,r,n),this.task=i}rule(e){this.task.start(),this.task.startSubTask(this.ruleName(e));try{return super.rule(e)}finally{this.task.stopSubTask(this.ruleName(e)),this.task.stop()}}ruleName(e){return e.ruleName}subrule(e,r,n){this.task.startSubTask(this.ruleName(r));try{return super.subrule(e,r,n)}finally{this.task.stopSubTask(this.ruleName(r))}}};function $a(t,e,r){return NE({parser:e,tokens:r,ruleNames:new Map},t),e}function NE(t,e){let r=js(e,!1),n=J(e.rules).filter(We).filter(s=>r.has(s));for(let s of n){let a=Mt(ue({},t),{consume:1,optional:1,subrule:1,many:1,or:1});t.parser.rule(s,Dn(a,s.definition))}let i=J(e.rules).filter(zr).filter(s=>r.has(s));for(let s of i)t.parser.rule(s,kE(t,s))}function kE(t,e){let r=e.call.rule.ref;if(!r)throw new Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(lt(r))throw new Error("Cannot use terminal rule in infix expression");let n=e.operators.precedences.flatMap(g=>g.operators),i={$type:"Group",elements:[]},s={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},a={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(s,a);let l={$container:a,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:n}},u=Mt(ue({},s),{$container:a});a.elements.push(l,u);let p=n.map(g=>t.tokens[g.value]).map((g,C)=>({ALT:()=>t.parser.consume(C,g,l)})),m;return g=>{m??(m=cd(t,r)),t.parser.subrule(0,m,!1,s,g),t.parser.many(0,{DEF:()=>{t.parser.alternatives(0,p),t.parser.subrule(1,m,!1,u,g)}})}}function Dn(t,e,r=!1){let n;if(wt(e))n=LE(t,e);else if(yr(e))n=wE(t,e);else if(zt(e))n=Dn(t,e.terminal);else if(qt(e))n=Lg(t,e);else if(Bt(e))n=bE(t,e);else if(Io(e))n=_E(t,e);else if(Lo(e))n=OE(t,e);else if(jr(e))n=PE(t,e);else if(ac(e)){let i=t.consume++;n=()=>t.parser.consume(i,ft,e)}else throw new vn(e.$cstNode,`Unexpected element type: ${e.$type}`);return Dg(t,r?void 0:Ml(e),n,e.cardinality)}function wE(t,e){let r=Br(e);return()=>t.parser.action(r,e)}function bE(t,e){let r=e.rule.ref;if(gr(r)){let n=t.subrule++,i=We(r)&&r.fragment,s=e.arguments.length>0?IE(r,e.arguments):()=>({}),a;return o=>{a??(a=cd(t,r)),t.parser.subrule(n,a,i,e,s(o))}}else if(lt(r)){let n=t.consume++,i=ud(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)Qt(r);else throw new vn(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function IE(t,e){if(e.some(n=>n.calledByName)){let n=e.map(i=>({parameterName:i.parameter?.ref?.name,predicate:ir(i.value)}));return i=>{let s={};for(let{parameterName:a,predicate:o}of n)a&&(s[a]=o(i));return s}}else{let n=e.map(i=>ir(i.value));return i=>{let s={};for(let a=0;ae(n)||r(n)}else if(ic(t)){let e=ir(t.left),r=ir(t.right);return n=>e(n)&&r(n)}else if(uc(t)){let e=ir(t.value);return r=>!e(r)}else if(cc(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(rc(t)){let e=!!t.true;return()=>e}Qt(t)}function _E(t,e){if(e.elements.length===1)return Dn(t,e.elements[0]);{let r=[];for(let i of e.elements){let s={ALT:Dn(t,i,!0)},a=Ml(i);a&&(s.GATE=ir(a)),r.push(s)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(s=>{let a={ALT:()=>s.ALT(i)},o=s.GATE;return o&&(a.GATE=()=>o(i)),a}))}}function OE(t,e){if(e.elements.length===1)return Dn(t,e.elements[0]);let r=[];for(let o of e.elements){let l={ALT:Dn(t,o,!0)},u=Ml(o);u&&(l.GATE=ir(u)),r.push(l)}let n=t.or++,i=(o,l)=>{let u=l.getRuleStack().join("-");return`uGroup_${o}_${u}`},s=o=>t.parser.alternatives(n,r.map((l,u)=>{let c={ALT:()=>!0},p=t.parser;c.ALT=()=>{if(l.ALT(o),!p.isRecording()){let g=i(n,p);p.unorderedGroups.get(g)||p.unorderedGroups.set(g,[]);let C=p.unorderedGroups.get(g);typeof C?.[u]>"u"&&(C[u]=!0)}};let m=l.GATE;return m?c.GATE=()=>m(o):c.GATE=()=>!p.unorderedGroups.get(i(n,p))?.[u],c})),a=Dg(t,Ml(e),s,"*");return o=>{a(o),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function PE(t,e){let r=e.elements.map(n=>Dn(t,n));return n=>r.forEach(i=>i(n))}function Ml(t){if(jr(t))return t.guardCondition}function Lg(t,e,r=e.terminal){if(r)if(Bt(r)&&We(r.rule.ref)){let n=r.rule.ref,i=t.subrule++,s;return a=>{s??(s=cd(t,n)),t.parser.subrule(i,s,!1,e,a)}}else if(Bt(r)&<(r.rule.ref)){let n=t.consume++,i=ud(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(wt(r)){let n=t.consume++,i=ud(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let i=jo(e.type.ref)?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+Br(e.type.ref));return Lg(t,e,i)}}function LE(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function Dg(t,e,r,n){let i=e&&ir(e);if(!n)if(i){let s=t.or++;return a=>t.parser.alternatives(s,[{ALT:()=>r(a),GATE:()=>i(a)},{ALT:vl(),GATE:()=>!i(a)}])}else return r;if(n==="*"){let s=t.many++;return a=>t.parser.many(s,{DEF:()=>r(a),GATE:i?()=>i(a):void 0})}else if(n==="+"){let s=t.many++;if(i){let a=t.or++;return o=>t.parser.alternatives(a,[{ALT:()=>t.parser.atLeastOne(s,{DEF:()=>r(o)}),GATE:()=>i(o)},{ALT:vl(),GATE:()=>!i(o)}])}else return a=>t.parser.atLeastOne(s,{DEF:()=>r(a)})}else if(n==="?"){let s=t.optional++;return a=>t.parser.optional(s,{DEF:()=>r(a),GATE:i?()=>i(a):void 0})}else Qt(n)}function cd(t,e){let r=DE(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function DE(t,e){if(gr(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!We(n);)(jr(n)||Io(n)||Lo(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function ud(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}function fd(t){let e=t.Grammar,r=t.parser.Lexer,n=new Ra(t);return $a(e,n,r.definition),n.finalize(),n}function dd(t){let e=Mg(t);return e.finalize(),e}function Mg(t){let e=t.Grammar,r=t.parser.Lexer,n=new Ta(t);return $a(e,n,r.definition)}var wr=class{constructor(){this.diagnostics=[]}buildTokens(e,r){let n=J(js(e,!1)),i=this.buildTerminalTokens(n),s=this.buildKeywordTokens(n,i,r);return s.push(...i),s}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(lt).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=pi(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=Us(r)?Fe.SKIPPED:"hidden"),i}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){let r=new RegExp(e,e.flags+"y");return(n,i)=>(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(gr).flatMap(i=>Ut(i).filter(wt)).distinct(i=>i.value).toArray().sort((i,s)=>s.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(e,r,n){let i=this.buildKeywordPattern(e,n),s={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(s.LINE_BREAKS=!0),s}buildKeywordPattern(e,r){return r?new RegExp(qr(e.value),"i"):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let s=i?.PATTERN;return s?.source&&kc("^"+s.source+"$",e.value)&&n.push(i),n},[])}};var Mn=class{convert(e,r){let n=r.grammarSource;if(qt(n)&&(n=Ic(n)),Bt(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){switch(e.name.toUpperCase()){case"INT":return sr.convertInt(r);case"STRING":return sr.convertString(r);case"ID":return sr.convertID(r)}switch(Fc(e)?.toLowerCase()){case"number":return sr.convertNumber(r);case"boolean":return sr.convertBoolean(r);case"bigint":return sr.convertBigint(r);case"date":return sr.convertDate(r);default:return r}}},sr;(function(t){function e(u){let c="";for(let p=1;p{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}var jl=0,jg=10;function zl(){return jl=performance.now(),new z.CancellationTokenSource}function zg(t){jg=t}var bt=Symbol("OperationCancelled");function ar(t){return t===bt}function be(t){return O(this,null,function*(){if(t===z.CancellationToken.None)return;let e=performance.now();if(e-jl>=jg&&(jl=e,yield Rd(),jl=performance.now()),t.isCancellationRequested)throw bt})}var pt=class{constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}};var ql=class t{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=Wg(n.range),s=this.offsetAt(i.start),a=this.offsetAt(i.end);this._content=this._content.substring(0,s)+n.text+this._content.substring(a,this._content.length);let o=Math.max(i.start.line,0),l=Math.max(i.end.line,0),u=this._lineOffsets,c=qg(n.text,!1,s);if(l-o===c.length)for(let m=0,g=c.length;me?i=a:n=a+1}let s=n-1;return e=this.ensureBeforeEOL(e,r[s]),{line:s,character:e-r[s]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1r&&Bg(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}},qi;(function(t){function e(i,s,a,o){return new ql(i,s,a,o)}t.create=e;function r(i,s,a){if(i instanceof ql)return i.update(s,a),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=r;function n(i,s){let a=i.getText(),o=$d(s.map(KE),(c,p)=>{let m=c.range.start.line-p.range.start.line;return m===0?c.range.start.character-p.range.start.character:m}),l=0,u=[];for(let c of o){let p=i.offsetAt(c.range.start);if(pl&&u.push(a.substring(l,p)),c.newText.length&&u.push(c.newText),l=i.offsetAt(c.range.end)}return u.push(a.substr(l)),u.join("")}t.applyEdits=n})(qi||(qi={}));function $d(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);$d(n,e),$d(i,e);let s=0,a=0,o=0;for(;sr.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function KE(t){let e=Wg(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var Kg;(()=>{"use strict";var t={975:A=>{function y(T){if(typeof T!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(T))}function L(T,$){for(var E,I="",M=0,k=-1,V=0,Y=0;Y<=T.length;++Y){if(Y2){var le=I.lastIndexOf("/");if(le!==I.length-1){le===-1?(I="",M=0):M=(I=I.slice(0,le)).length-1-I.lastIndexOf("/"),k=Y,V=0;continue}}else if(I.length===2||I.length===1){I="",M=0,k=Y,V=0;continue}}$&&(I.length>0?I+="/..":I="..",M=2)}else I.length>0?I+="/"+T.slice(k+1,Y):I=T.slice(k+1,Y),M=Y-k-1;k=Y,V=0}else E===46&&V!==-1?++V:V=-1}return I}var P={resolve:function(){for(var T,$="",E=!1,I=arguments.length-1;I>=-1&&!E;I--){var M;I>=0?M=arguments[I]:(T===void 0&&(T=process.cwd()),M=T),y(M),M.length!==0&&($=M+"/"+$,E=M.charCodeAt(0)===47)}return $=L($,!E),E?$.length>0?"/"+$:"/":$.length>0?$:"."},normalize:function(T){if(y(T),T.length===0)return".";var $=T.charCodeAt(0)===47,E=T.charCodeAt(T.length-1)===47;return(T=L(T,!$)).length!==0||$||(T="."),T.length>0&&E&&(T+="/"),$?"/"+T:T},isAbsolute:function(T){return y(T),T.length>0&&T.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var T,$=0;$0&&(T===void 0?T=E:T+="/"+E)}return T===void 0?".":P.normalize(T)},relative:function(T,$){if(y(T),y($),T===$||(T=P.resolve(T))===($=P.resolve($)))return"";for(var E=1;EY){if($.charCodeAt(k+ae)===47)return $.slice(k+ae+1);if(ae===0)return $.slice(k+ae)}else M>Y&&(T.charCodeAt(E+ae)===47?le=ae:ae===0&&(le=0));break}var ye=T.charCodeAt(E+ae);if(ye!==$.charCodeAt(k+ae))break;ye===47&&(le=ae)}var Me="";for(ae=E+le+1;ae<=I;++ae)ae!==I&&T.charCodeAt(ae)!==47||(Me.length===0?Me+="..":Me+="/..");return Me.length>0?Me+$.slice(k+le):(k+=le,$.charCodeAt(k)===47&&++k,$.slice(k))},_makeLong:function(T){return T},dirname:function(T){if(y(T),T.length===0)return".";for(var $=T.charCodeAt(0),E=$===47,I=-1,M=!0,k=T.length-1;k>=1;--k)if(($=T.charCodeAt(k))===47){if(!M){I=k;break}}else M=!1;return I===-1?E?"/":".":E&&I===1?"//":T.slice(0,I)},basename:function(T,$){if($!==void 0&&typeof $!="string")throw new TypeError('"ext" argument must be a string');y(T);var E,I=0,M=-1,k=!0;if($!==void 0&&$.length>0&&$.length<=T.length){if($.length===T.length&&$===T)return"";var V=$.length-1,Y=-1;for(E=T.length-1;E>=0;--E){var le=T.charCodeAt(E);if(le===47){if(!k){I=E+1;break}}else Y===-1&&(k=!1,Y=E+1),V>=0&&(le===$.charCodeAt(V)?--V==-1&&(M=E):(V=-1,M=Y))}return I===M?M=Y:M===-1&&(M=T.length),T.slice(I,M)}for(E=T.length-1;E>=0;--E)if(T.charCodeAt(E)===47){if(!k){I=E+1;break}}else M===-1&&(k=!1,M=E+1);return M===-1?"":T.slice(I,M)},extname:function(T){y(T);for(var $=-1,E=0,I=-1,M=!0,k=0,V=T.length-1;V>=0;--V){var Y=T.charCodeAt(V);if(Y!==47)I===-1&&(M=!1,I=V+1),Y===46?$===-1?$=V:k!==1&&(k=1):$!==-1&&(k=-1);else if(!M){E=V+1;break}}return $===-1||I===-1||k===0||k===1&&$===I-1&&$===E+1?"":T.slice($,I)},format:function(T){if(T===null||typeof T!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof T);return(function($,E){var I=E.dir||E.root,M=E.base||(E.name||"")+(E.ext||"");return I?I===E.root?I+M:I+"/"+M:M})(0,T)},parse:function(T){y(T);var $={root:"",dir:"",base:"",ext:"",name:""};if(T.length===0)return $;var E,I=T.charCodeAt(0),M=I===47;M?($.root="/",E=1):E=0;for(var k=-1,V=0,Y=-1,le=!0,ae=T.length-1,ye=0;ae>=E;--ae)if((I=T.charCodeAt(ae))!==47)Y===-1&&(le=!1,Y=ae+1),I===46?k===-1?k=ae:ye!==1&&(ye=1):k!==-1&&(ye=-1);else if(!le){V=ae+1;break}return k===-1||Y===-1||ye===0||ye===1&&k===Y-1&&k===V+1?Y!==-1&&($.base=$.name=V===0&&M?T.slice(1,Y):T.slice(V,Y)):(V===0&&M?($.name=T.slice(1,k),$.base=T.slice(1,Y)):($.name=T.slice(V,k),$.base=T.slice(V,Y)),$.ext=T.slice(k,Y)),V>0?$.dir=T.slice(0,V-1):M&&($.dir="/"),$},sep:"/",delimiter:":",win32:null,posix:null};P.posix=P,A.exports=P}},e={};function r(A){var y=e[A];if(y!==void 0)return y.exports;var L=e[A]={exports:{}};return t[A](L,L.exports,r),L.exports}r.d=(A,y)=>{for(var L in y)r.o(y,L)&&!r.o(A,L)&&Object.defineProperty(A,L,{enumerable:!0,get:y[L]})},r.o=(A,y)=>Object.prototype.hasOwnProperty.call(A,y),r.r=A=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(A,"__esModule",{value:!0})};var n={};let i;r.r(n),r.d(n,{URI:()=>m,Utils:()=>kt}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let s=/^\w[\w\d+.-]*$/,a=/^\//,o=/^\/\//;function l(A,y){if(!A.scheme&&y)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${A.authority}", path: "${A.path}", query: "${A.query}", fragment: "${A.fragment}"}`);if(A.scheme&&!s.test(A.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(A.path){if(A.authority){if(!a.test(A.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(o.test(A.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let u="",c="/",p=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class m{static isUri(y){return y instanceof m||!!y&&typeof y.authority=="string"&&typeof y.fragment=="string"&&typeof y.path=="string"&&typeof y.query=="string"&&typeof y.scheme=="string"&&typeof y.fsPath=="string"&&typeof y.with=="function"&&typeof y.toString=="function"}scheme;authority;path;query;fragment;constructor(y,L,P,T,$,E=!1){typeof y=="object"?(this.scheme=y.scheme||u,this.authority=y.authority||u,this.path=y.path||u,this.query=y.query||u,this.fragment=y.fragment||u):(this.scheme=(function(I,M){return I||M?I:"file"})(y,E),this.authority=L||u,this.path=(function(I,M){switch(I){case"https":case"http":case"file":M?M[0]!==c&&(M=c+M):M=c}return M})(this.scheme,P||u),this.query=T||u,this.fragment=$||u,l(this,E))}get fsPath(){return N(this,!1)}with(y){if(!y)return this;let{scheme:L,authority:P,path:T,query:$,fragment:E}=y;return L===void 0?L=this.scheme:L===null&&(L=u),P===void 0?P=this.authority:P===null&&(P=u),T===void 0?T=this.path:T===null&&(T=u),$===void 0?$=this.query:$===null&&($=u),E===void 0?E=this.fragment:E===null&&(E=u),L===this.scheme&&P===this.authority&&T===this.path&&$===this.query&&E===this.fragment?this:new C(L,P,T,$,E)}static parse(y,L=!1){let P=p.exec(y);return P?new C(P[2]||u,pe(P[4]||u),pe(P[5]||u),pe(P[7]||u),pe(P[9]||u),L):new C(u,u,u,u,u)}static file(y){let L=u;if(i&&(y=y.replace(/\\/g,c)),y[0]===c&&y[1]===c){let P=y.indexOf(c,2);P===-1?(L=y.substring(2),y=c):(L=y.substring(2,P),y=y.substring(P)||c)}return new C("file",L,y,u,u)}static from(y){let L=new C(y.scheme,y.authority,y.path,y.query,y.fragment);return l(L,!0),L}toString(y=!1){return x(this,y)}toJSON(){return this}static revive(y){if(y){if(y instanceof m)return y;{let L=new C(y);return L._formatted=y.external,L._fsPath=y._sep===g?y.fsPath:null,L}}return y}}let g=i?1:void 0;class C extends m{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=N(this,!1)),this._fsPath}toString(y=!1){return y?x(this,!0):(this._formatted||(this._formatted=x(this,!1)),this._formatted)}toJSON(){let y={$mid:1};return this._fsPath&&(y.fsPath=this._fsPath,y._sep=g),this._formatted&&(y.external=this._formatted),this.path&&(y.path=this.path),this.scheme&&(y.scheme=this.scheme),this.authority&&(y.authority=this.authority),this.query&&(y.query=this.query),this.fragment&&(y.fragment=this.fragment),y}}let b={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function F(A,y,L){let P,T=-1;for(let $=0;$=97&&E<=122||E>=65&&E<=90||E>=48&&E<=57||E===45||E===46||E===95||E===126||y&&E===47||L&&E===91||L&&E===93||L&&E===58)T!==-1&&(P+=encodeURIComponent(A.substring(T,$)),T=-1),P!==void 0&&(P+=A.charAt($));else{P===void 0&&(P=A.substr(0,$));let I=b[E];I!==void 0?(T!==-1&&(P+=encodeURIComponent(A.substring(T,$)),T=-1),P+=I):T===-1&&(T=$)}}return T!==-1&&(P+=encodeURIComponent(A.substring(T))),P!==void 0?P:A}function _(A){let y;for(let L=0;L1&&A.scheme==="file"?`//${A.authority}${A.path}`:A.path.charCodeAt(0)===47&&(A.path.charCodeAt(1)>=65&&A.path.charCodeAt(1)<=90||A.path.charCodeAt(1)>=97&&A.path.charCodeAt(1)<=122)&&A.path.charCodeAt(2)===58?y?A.path.substr(1):A.path[1].toLowerCase()+A.path.substr(2):A.path,i&&(L=L.replace(/\//g,"\\")),L}function x(A,y){let L=y?_:F,P="",{scheme:T,authority:$,path:E,query:I,fragment:M}=A;if(T&&(P+=T,P+=":"),($||T==="file")&&(P+=c,P+=c),$){let k=$.indexOf("@");if(k!==-1){let V=$.substr(0,k);$=$.substr(k+1),k=V.lastIndexOf(":"),k===-1?P+=L(V,!1,!1):(P+=L(V.substr(0,k),!1,!1),P+=":",P+=L(V.substr(k+1),!1,!0)),P+="@"}$=$.toLowerCase(),k=$.lastIndexOf(":"),k===-1?P+=L($,!1,!0):(P+=L($.substr(0,k),!1,!0),P+=$.substr(k))}if(E){if(E.length>=3&&E.charCodeAt(0)===47&&E.charCodeAt(2)===58){let k=E.charCodeAt(1);k>=65&&k<=90&&(E=`/${String.fromCharCode(k+32)}:${E.substr(3)}`)}else if(E.length>=2&&E.charCodeAt(1)===58){let k=E.charCodeAt(0);k>=65&&k<=90&&(E=`${String.fromCharCode(k+32)}:${E.substr(2)}`)}P+=L(E,!0,!1)}return I&&(P+="?",P+=L(I,!1,!1)),M&&(P+="#",P+=y?M:F(M,!1,!1)),P}function W(A){try{return decodeURIComponent(A)}catch(y){return A.length>3?A.substr(0,3)+W(A.substr(3)):A}}let D=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function pe(A){return A.match(D)?A.replace(D,y=>W(y)):A}var Ht=r(975);let je=Ht.posix||Ht,Lt="/";var kt;(function(A){A.joinPath=function(y,...L){return y.with({path:je.join(y.path,...L)})},A.resolvePath=function(y,...L){let P=y.path,T=!1;P[0]!==Lt&&(P=Lt+P,T=!0);let $=je.resolve(P,...L);return T&&$[0]===Lt&&!y.authority&&($=$.substring(1)),y.with({path:$})},A.dirname=function(y){if(y.path.length===0||y.path===Lt)return y;let L=je.dirname(y.path);return L.length===1&&L.charCodeAt(0)===46&&(L=""),y.with({path:L})},A.basename=function(y){return je.basename(y.path)},A.extname=function(y){return je.extname(y.path)}})(kt||(kt={})),Kg=n})();var{URI:Be,Utils:Bi}=Kg;var De;(function(t){t.basename=Bi.basename,t.dirname=Bi.dirname,t.extname=Bi.extname,t.joinPath=Bi.joinPath,t.resolvePath=Bi.resolvePath;let e=typeof process=="object"&&process?.platform==="win32";function r(a,o){return a?.toString()===o?.toString()}t.equals=r;function n(a,o){let l=typeof a=="string"?Be.parse(a).path:a.path,u=typeof o=="string"?Be.parse(o).path:o.path,c=l.split("/").filter(b=>b.length>0),p=u.split("/").filter(b=>b.length>0);if(e){let b=/^[A-Z]:$/;if(c[0]&&b.test(c[0])&&(c[0]=c[0].toLowerCase()),p[0]&&b.test(p[0])&&(p[0]=p[0].toLowerCase()),c[0]!==p[0])return u.substring(1)}let m=0;for(;m({name:i.name,uri:De.joinPath(Be.parse(r),i.name).toString(),element:i.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let r=this.getNode(De.normalize(e),!1);return r?this.collectValues(r):[]}getNode(e,r){let n=e.split("/");e.charAt(e.length-1)==="/"&&n.pop();let i=this.root;for(let s of n){let a=i.children.get(s);if(!a)if(r)a={name:s,children:new Map,parent:i},i.children.set(s,a);else return;i=a}return i}collectValues(e){let r=[];e.element&&r.push(e.element);for(let n of e.children.values())r.push(...this.collectValues(n));return r}};var Q=(function(t){return t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated",t})(Q||{}),xa=class{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}fromUri(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){let i=yield this.fileSystemProvider.readFile(e);return this.createAsync(e,i,r)})}fromTextDocument(e,r,n){return r=r??Be.parse(e.uri),z.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return z.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){let i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){let i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{let i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createAsync(e,r,n){return O(this,null,function*(){if(typeof r=="string"){let i=yield this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=yield this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}})}createLangiumDocument(e,r,n,i){let s;if(n)s={parseResult:e,uri:r,state:Q.Parsed,references:[],textDocument:n};else{let a=this.createTextDocumentGetter(r,i);s={parseResult:e,uri:r,state:Q.Parsed,references:[],get textDocument(){return a()}}}return e.value.$document=s,s}update(e,r){return O(this,null,function*(){let n=e.parseResult.value.$cstNode?.root.fullText,i=this.textDocuments?.get(e.uri.toString()),s=i?i.getText():yield this.fileSystemProvider.readFile(e.uri);if(i)Object.defineProperty(e,"textDocument",{value:i});else{let a=this.createTextDocumentGetter(e.uri,s);Object.defineProperty(e,"textDocument",{get:a})}return n!==s&&(e.parseResult=yield this.parseAsync(e.uri,s,r),e.parseResult.value.$document=e),e.state=Q.Parsed,e})}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=qi.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},Ea=class{constructor(e){this.documentTrie=new Wi,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return J(this.documentTrie.all())}addDocument(e){let r=e.uri.toString();if(this.documentTrie.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentTrie.insert(r,e)}getDocument(e){let r=e.toString();return this.documentTrie.find(r)}getDocuments(e){let r=e.toString();return this.documentTrie.findAll(r)}getOrCreateDocument(e,r){return O(this,null,function*(){let n=this.getDocument(e);return n||(n=yield this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)})}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&this.documentBuilder().resetToState(n,Q.Changed),n}deleteDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&(n.state=Q.Changed,this.documentTrie.delete(r)),n}deleteDocuments(e){let r=e.toString(),n=this.documentTrie.findAll(r);for(let i of n)i.state=Q.Changed;return this.documentTrie.delete(r),n}};var Gn=Symbol("RefResolving"),Aa=class{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}link(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){if(this.profiler?.isActive("linking")){let i=this.profiler.createTask("linking",this.languageId);i.start();try{for(let s of ot(e.parseResult.value))yield be(r),Lr(s).forEach(a=>{let o=`${s.$type}:${a.property}`;i.startSubTask(o);try{this.doLink(a,e)}finally{i.stopSubTask(o)}})}finally{i.stop()}}else for(let i of ot(e.parseResult.value))yield be(r),Lr(i).forEach(s=>this.doLink(s,e))})}doLink(e,r){let n=e.reference;if("_ref"in n&&n._ref===void 0){n._ref=Gn;try{let i=this.getCandidate(e);if(on(i))n._ref=i;else{n._nodeDescription=i;let s=this.loadAstNode(i);n._ref=s??this.createLinkingError(e,i)}}catch(i){console.error(`An error occurred while resolving reference to '${n.$refText}':`,i);let s=i.message??String(i);n._ref={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${s}`}}r.references.push(n)}else if("_items"in n&&n._items===void 0){n._items=Gn;try{let i=this.getCandidates(e),s=[];if(on(i))n._linkingError=i;else for(let a of i){let o=this.loadAstNode(a);o&&s.push({ref:o,$nodeDescription:a})}n._items=s}catch(i){n._linkingError={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${i}`},n._items=[]}r.references.push(n)}}unlink(e){for(let r of e.references)"_ref"in r?(r._ref=void 0,delete r._nodeDescription):"_items"in r&&(r._items=void 0,delete r._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){let n=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(i=>`${i.documentUri}#${i.path}`).toArray();return n.length>0?n:this.createLinkingError(e)}buildReference(e,r,n,i){let s=this,a={$refNode:n,$refText:i,_ref:void 0,get ref(){if(Ne(this._ref))return this._ref;if(Yu(this._nodeDescription)){let o=s.loadAstNode(this._nodeDescription);this._ref=o??s.createLinkingError({reference:a,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=Gn;let o=ri(e).$document,l=s.getLinkedNode({reference:a,container:e,property:r});if(l.error&&o&&o.state0))return this._linkingError=s.createLinkingError({reference:a,container:e,property:r})}};return a}throwCyclicReferenceError(e,r,n){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${r} (symbol '${n}')`)}getLinkedNode(e){try{let r=this.getCandidate(e);if(on(r))return{error:r};let n=this.loadAstNode(r);return n?{node:n,descr:r}:{descr:r,error:this.createLinkingError(e,r)}}catch(r){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,r);let n=r.message??String(r);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${n}`}}}}loadAstNode(e){if(e.node)return e.node;let r=this.langiumDocuments().getDocument(e.documentUri);if(r)return this.astNodeLocator.getAstNode(r.parseResult.value,e.path)}createLinkingError(e,r){let n=ri(e.container).$document;n&&n.stateqt(r)&&r.isMulti)}findDeclarations(e){if(e){let r=Mc(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(qe(i)||xt(i))return go(i);if(Array.isArray(i)){for(let s of i)if((qe(s)||xt(s))&&s.$refNode&&s.$refNode.offset<=e.offset&&s.$refNode.end>=e.end)return go(s)}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||$c(e,i)))return this.getSelfNodes(n)}}return[]}getSelfNodes(e){if(this.hasMultiReference){let r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),n=this.getNodeFromReferenceDescription(r.head());if(n){for(let i of Lr(n))if(xt(i.reference)&&i.reference.items.some(s=>s.ref===e))return i.reference.items.map(s=>s.ref)}return[e]}else return[e]}getNodeFromReferenceDescription(e){if(!e)return;let r=this.documents.getDocument(e.sourceUri);if(r)return this.nodeLocator.getAstNode(r.parseResult.value,e.sourcePath)}findDeclarationNodes(e){let r=this.findDeclarations(e),n=[];for(let i of r){let s=this.nameProvider.getNameNode(i)??i.$cstNode;s&&n.push(s)}return n}findReferences(e,r){let n=[];r.includeDeclaration&&n.push(...this.getSelfReferences(e));let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(s=>De.equals(s.sourceUri,r.documentUri))),n.push(...i),J(n)}getSelfReferences(e){let r=this.getSelfNodes(e),n=[];for(let i of r){let s=this.nameProvider.getNameNode(i);if(s){let a=tt(i),o=this.nodeLocator.getAstNodePath(i);n.push({sourceUri:a.uri,sourcePath:o,targetUri:a.uri,targetPath:o,segment:$n(s),local:!0})}}return n}};var nt=class{constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return ei.sum(J(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let r=this.map.get(e);return r?J(r):Pr}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return J(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return J(this.map.keys())}values(){return J(this.map.values()).flat()}entriesGroupedByKey(){return J(this.map.entries())}},Un=class{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}};var Na=class{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}collectExportedSymbols(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,r)})}collectExportedSymbolsForNode(s,a){return O(this,arguments,function*(e,r,n=Cs,i=z.CancellationToken.None){let o=[];this.addExportedSymbol(e,o,r);for(let l of n(e))yield be(i),this.addExportedSymbol(l,o,r);return o})}addExportedSymbol(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}collectLocalSymbols(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){let i=e.parseResult.value,s=new nt;for(let a of Ut(i))yield be(r),this.addLocalSymbol(a,e,s);return s})}addLocalSymbol(e,r,n){let i=e.$container;if(i){let s=this.nameProvider.getName(e);s&&n.add(i,this.descriptions.createDescription(e,s,r))}}};var Ki=class{constructor(e,r,n){this.elements=e,this.outerScope=r,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.find(i=>i.name.toLowerCase()===r):this.elements.find(i=>i.name===e);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.filter(i=>i.name.toLowerCase()===r):this.elements.filter(i=>i.name===e);return(this.concatOuterScope||n.isEmpty())&&this.outerScope?n.concat(this.outerScope.getElements(e)):n}},vd=class{constructor(e,r,n){this.elements=new Map,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0;for(let i of e){let s=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.set(s,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r),i=n?[n]:[];return(this.concatOuterScope||i.length>0)&&this.outerScope?J(i).concat(this.outerScope.getElements(e)):J(i)}getAllElements(){let e=J(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},ka=class{constructor(e,r,n){this.elements=new nt,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0;for(let i of e){let s=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.add(s,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r)[0];if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);return(this.concatOuterScope||n.length===0)&&this.outerScope?J(n).concat(this.outerScope.getElements(e)):J(n)}getAllElements(){let e=J(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},VE={getElement(){},getElements(){return Pr},getAllElements(){return Pr}};var Vi=class{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},wa=class extends Vi{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},jn=class extends Vi{constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let s=n();return i.set(r,s),s}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},Bl=class extends jn{constructor(e,r){super(n=>n.toString()),r?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(r,n=>{this.clear(n.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{for(let s of i)this.clear(s)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{let s=n.concat(i);for(let a of s)this.clear(a)}))}},Hi=class extends wa{constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}};var ba=class{constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new Hi(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=tt(e.container).localSymbols;if(i){let a=e.container;do i.has(a)&&r.push(i.getStream(a).filter(o=>this.reflection.isSubtype(o.type,n))),a=a.$container;while(a)}let s=this.getGlobalScope(n,e);for(let a=r.length-1;a>=0;a--)s=this.createScope(r[a],s);return s}createScope(e,r,n){return new Ki(J(e),r,n)}createScopeForNodes(e,r,n){let i=J(e).map(s=>{let a=this.nameProvider.getName(s);if(a)return this.descriptions.createDescription(s,a)}).nonNullable();return new Ki(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new ka(this.indexManager.allElements(e)))}};function xd(t){return typeof t.$comment=="string"}function Hg(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var Ia=class{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,r){let n=r??{},i=r?.replacer,s=(o,l)=>this.replacer(o,l,n),a=i?(o,l)=>i(o,l,s):s;try{return this.currentDocument=tt(e),JSON.stringify(e,a,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r){let n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:s,comments:a,uriConverter:o}){if(!this.ignoreProperties.has(e))if(qe(r)){let l=r.ref,u=n?r.$refText:void 0;if(l){let c=tt(l),p="";this.currentDocument&&this.currentDocument!==c&&(o?p=o(c.uri,l):p=c.uri.toString());let m=this.astNodeLocator.getAstNodePath(l);return{$ref:`${p}#${m}`,$refText:u}}else return{$error:r.error?.message??"Could not resolve reference",$refText:u}}else if(xt(r)){let l=n?r.$refText:void 0,u=[];for(let c of r.items){let p=c.ref,m=tt(c.ref),g="";this.currentDocument&&this.currentDocument!==m&&(o?g=o(m.uri,p):g=m.uri.toString());let C=this.astNodeLocator.getAstNodePath(p);u.push(`${g}#${C}`)}return{$refs:u,$refText:l}}else if(Ne(r)){let l;if(s&&(l=this.addAstNodeRegionWithAssignmentsTo(ue({},r)),(!e||r.$document)&&l?.$textRegion&&(l.$textRegion.documentURI=this.currentDocument?.uri.toString())),i&&!e&&(l??(l=ue({},r)),l.$sourceText=r.$cstNode?.text),a){l??(l=ue({},r));let u=this.commentProvider.getComment(r);u&&(l.$comment=u.replace(/\r/g,""))}return l??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=n=>({offset:n.offset,end:n.end,length:n.length,range:n.range});if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(s=>!s.startsWith("$")).forEach(s=>{let a=Oc(e.$cstNode,s).map(r);a.length!==0&&(i[s]=a)}),e}}linkNode(e,r,n,i,s,a){for(let[l,u]of Object.entries(e))if(Array.isArray(u))for(let c=0;cO(this,null,function*(){yield this.handleException(()=>e.call(r,n,i,s),"An error occurred during validation",i,n)})}handleException(e,r,n,i){return O(this,null,function*(){try{yield e()}catch(s){if(ar(s))throw s;console.error(`${r}:`,s),s instanceof Error&&s.stack&&console.error(s.stack);let a=s instanceof Error?s.message:String(s);n("error",`${r}: ${a}`,{node:i})}})}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=J(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return(i,s,a,o)=>O(this,null,function*(){yield this.handleException(()=>e.call(n,i,s,a,o),r,s,i)})}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}};var Xg=Object.freeze({validateNode:!0,validateChildren:!0}),Pa=class{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}validateDocument(i){return O(this,arguments,function*(e,r={},n=z.CancellationToken.None){let s=e.parseResult,a=[];if(yield be(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(s,a,r),r.stopAfterLexingErrors&&a.some(o=>o.data?.code===Kt.LexingError)||(this.processParsingErrors(s,a,r),r.stopAfterParsingErrors&&a.some(o=>o.data?.code===Kt.ParsingError))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(o=>o.data?.code===Kt.LinkingError))))return a;try{a.push(...yield this.validateAst(s.value,r,n))}catch(o){if(ar(o))throw o;console.error("An error occurred during validation:",o)}return yield be(n),a})}processLexingErrors(e,r,n){let i=[...e.lexerErrors,...e.lexerReport?.diagnostics??[]];for(let s of i){let a=s.severity??"error",o={severity:Kl(a),range:{start:{line:s.line-1,character:s.column-1},end:{line:s.line-1,character:s.column+s.length-1}},message:s.message,data:Jg(a),source:this.getSource()};r.push(o)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let s;if(isNaN(i.token.startOffset)){if("previousToken"in i){let a=i.previousToken;if(isNaN(a.startOffset)){let o={line:0,character:0};s={start:o,end:o}}else{let o={line:a.endLine-1,character:a.endColumn};s={start:o,end:o}}}}else s=fi(i.token);if(s){let a={severity:Kl("error"),range:s,message:i.message,data:zn(Kt.ParsingError),source:this.getSource()};r.push(a)}}}processLinkingErrors(e,r,n){for(let i of e.references){let s=i.error;if(s){let a={node:s.info.container,range:i.$refNode?.range,property:s.info.property,index:s.info.index,data:{code:Kt.LinkingError,containerType:s.info.container.$type,property:s.info.property,refText:s.info.reference.$refText}};r.push(this.toDiagnostic("error",s.message,a))}}}validateAst(i,s){return O(this,arguments,function*(e,r,n=z.CancellationToken.None){let a=[],o=(l,u,c)=>{a.push(this.toDiagnostic(l,u,c))};return yield this.validateAstBefore(e,r,o,n),yield this.validateAstNodes(e,r,o,n),yield this.validateAstAfter(e,r,o,n),a})}validateAstBefore(s,a,o){return O(this,arguments,function*(e,r,n,i=z.CancellationToken.None){let l=this.validationRegistry.checksBefore;for(let u of l)yield be(i),yield u(e,n,r.categories??[],i)})}validateAstNodes(s,a,o){return O(this,arguments,function*(e,r,n,i=z.CancellationToken.None){if(this.profiler?.isActive("validating")){let l=this.profiler.createTask("validating",this.languageId);l.start();try{let u=ot(e).iterator();for(let c of u){l.startSubTask(c.$type);let p=this.validateSingleNodeOptions(c,r);if(p.validateNode)try{let m=this.validationRegistry.getChecks(c.$type,r.categories);for(let g of m)yield g(c,n,i)}finally{l.stopSubTask(c.$type)}p.validateChildren||u.prune()}}finally{l.stop()}}else{let l=ot(e).iterator();for(let u of l){yield be(i);let c=this.validateSingleNodeOptions(u,r);if(c.validateNode){let p=this.validationRegistry.getChecks(u.$type,r.categories);for(let m of p)yield m(u,n,i)}c.validateChildren||l.prune()}}})}validateSingleNodeOptions(e,r){return Xg}validateAstAfter(s,a,o){return O(this,arguments,function*(e,r,n,i=z.CancellationToken.None){let l=this.validationRegistry.checksAfter;for(let u of l)yield be(i),yield u(e,n,r.categories??[],i)})}toDiagnostic(e,r,n){return{message:r,range:Yg(n),severity:Kl(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function Yg(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=zs(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=Lc(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function Kl(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function Jg(t){switch(t){case"error":return zn(Kt.LexingError);case"warning":return zn(Kt.LexingWarning);case"info":return zn(Kt.LexingInfo);case"hint":return zn(Kt.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var Kt=(function(t){return t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error",t})(Kt||{});var La=class{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){let i=n??tt(e);r??(r=this.nameProvider.getName(e));let s=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${s} has no name.`);let a,o=()=>a??(a=$n(this.nameProvider.getNameNode(e)??e.$cstNode));return{node:e,name:r,get nameSegment(){return o()},selectionSegment:$n(e.$cstNode),type:e.$type,documentUri:i.uri,path:s}}},Da=class{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}createDescriptions(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){let i=[],s=e.parseResult.value;for(let a of ot(s))yield be(r),Lr(a).forEach(o=>{o.reference.error||i.push(...this.createInfoDescriptions(o))});return i})}createInfoDescriptions(e){let r=e.reference;if(r.error||!r.$refNode)return[];let n=[];qe(r)&&r.$nodeDescription?n=[r.$nodeDescription]:xt(r)&&(n=r.items.map(l=>l.$nodeDescription).filter(l=>l!==void 0));let i=tt(e.container).uri,s=this.nodeLocator.getAstNodePath(e.container),a=[],o=$n(r.$refNode);for(let l of n)a.push({sourceUri:i,sourcePath:s,targetUri:l.documentUri,targetPath:l.path,segment:o,local:De.equals(l.documentUri,i)});return a}};var Ma=class{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((i,s)=>{if(!i||s.length===0)return i;let a=s.indexOf(this.indexSeparator);if(a>0){let o=s.substring(0,a),l=parseInt(s.substring(a+1));return i[o]?.[l]}return i[s]},e)}};var Ee={};re(Ee,Vu(Fn(),1));var Fa=class{constructor(e){this._ready=new pt,this.onConfigurationSectionUpdateEmitter=new Ee.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){this.workspaceConfig=e.capabilities.workspace?.configuration??!1}initialized(e){return O(this,null,function*(){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=yield e.fetchConfiguration(r);r.forEach((i,s)=>{this.updateSectionConfiguration(i.section,n[s])})}}this._ready.resolve()})}updateConfiguration(e){typeof e.settings!="object"||e.settings===null||Object.entries(e.settings).forEach(([r,n])=>{this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}getConfiguration(e,r){return O(this,null,function*(){yield this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]})}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}};var cs=Vu($$(),1);var sn;(function(t){function e(r){return{dispose:()=>O(null,null,function*(){return yield r()})}}t.create=e})(sn||(sn={}));var Va=class{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new nt,this.documentPhaseListeners=new nt,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=Q.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}build(i){return O(this,arguments,function*(e,r={},n=z.CancellationToken.None){for(let s of e){let a=s.uri.toString();if(s.state===Q.Validated){if(typeof r.validation=="boolean"&&r.validation)this.resetToState(s,Q.IndexedReferences);else if(typeof r.validation=="object"){let o=this.findMissingValidationCategories(s,r);o.length>0&&(this.buildState.set(a,{completed:!1,options:{validation:{categories:o}},result:this.buildState.get(a)?.result}),s.state=Q.IndexedReferences)}}else this.buildState.delete(a)}this.currentState=Q.Changed,yield this.emitUpdate(e.map(s=>s.uri),[]),yield this.buildDocuments(e,r,n)})}update(i,s){return O(this,arguments,function*(e,r,n=z.CancellationToken.None){this.currentState=Q.Changed;let a=[];for(let c of r){let p=this.langiumDocuments.deleteDocuments(c);for(let m of p)a.push(m.uri),this.cleanUpDeleted(m)}let o=(yield Promise.all(e.map(c=>this.findChangedUris(c)))).flat();for(let c of o){let p=this.langiumDocuments.getDocument(c);p===void 0&&(p=this.langiumDocumentFactory.fromModel({$type:"INVALID"},c),p.state=Q.Changed,this.langiumDocuments.addDocument(p)),this.resetToState(p,Q.Changed)}let l=J(o).concat(a).map(c=>c.toString()).toSet();this.langiumDocuments.all.filter(c=>!l.has(c.uri.toString())&&this.shouldRelink(c,l)).forEach(c=>this.resetToState(c,Q.ComputedScopes)),yield this.emitUpdate(o,a),yield be(n);let u=this.sortDocuments(this.langiumDocuments.all.filter(c=>c.state=1}findMissingValidationCategories(e,r){let n=this.buildState.get(e.uri.toString()),i=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),s=n?.result?.validationChecks?new Set(n?.result?.validationChecks):n?.completed?i:new Set,a=r===void 0||r.validation===!0?i:typeof r.validation=="object"?r.validation.categories??i:[];return J(a).filter(o=>!s.has(o)).toArray()}findChangedUris(e){return O(this,null,function*(){if(this.langiumDocuments.getDocument(e)??this.textDocuments?.get(e))return[e];try{let n=yield this.fileSystemProvider.stat(e);if(n.isDirectory)return yield this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(n))return[e]}catch(n){}return[]})}emitUpdate(e,r){return O(this,null,function*(){yield Promise.all(this.updateListeners.map(n=>n(e,r)))})}sortDocuments(e){let r=0,n=e.length-1;for(;r=0&&!this.hasTextDocument(e[n]);)n--;rn.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),sn.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}resetToState(e,r){switch(r){case Q.Changed:case Q.Parsed:this.indexManager.removeContent(e.uri);case Q.IndexedContent:e.localSymbols=void 0;case Q.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case Q.Linked:this.indexManager.removeReferences(e.uri);case Q.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case Q.Validated:}e.state>r&&(e.state=r)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=Q.Changed}buildDocuments(e,r,n){return O(this,null,function*(){this.prepareBuild(e,r),yield this.runCancelable(e,Q.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),yield this.runCancelable(e,Q.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),yield this.runCancelable(e,Q.ComputedScopes,n,a=>O(this,null,function*(){let o=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.localSymbols=yield o.collectLocalSymbols(a,n)}));let i=e.filter(a=>this.shouldLink(a));yield this.runCancelable(i,Q.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),yield this.runCancelable(i,Q.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let s=e.filter(a=>this.shouldValidate(a)?!0:(this.markAsCompleted(a),!1));yield this.runCancelable(s,Q.Validated,n,a=>O(this,null,function*(){yield this.validate(a,n),this.markAsCompleted(a)}))})}markAsCompleted(e){let r=this.buildState.get(e.uri.toString());r&&(r.completed=!0)}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),s=this.buildState.get(i);(!s||s.completed)&&this.buildState.set(i,{completed:!1,options:r,result:s?.result})}}runCancelable(e,r,n,i){return O(this,null,function*(){for(let a of e)a.statea.state===r);yield this.notifyBuildPhase(s,r,n),this.currentState=r})}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),sn.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),sn.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;return r&&"path"in r?i=r:n=r,n??(n=z.CancellationToken.None),i?this.awaitDocumentState(e,i,n):this.awaitBuilderState(e,n)}awaitDocumentState(e,r,n){let i=this.langiumDocuments.getDocument(r);if(i){if(i.state>=e)return Promise.resolve(r);if(n.isCancellationRequested)return Promise.reject(bt);if(this.currentState>=e&&e>i.state)return Promise.reject(new cs.ResponseError(cs.LSPErrorCodes.RequestFailed,`Document state of ${r.toString()} is ${Q[i.state]}, requiring ${Q[e]}, but workspace state is already ${Q[this.currentState]}. Returning undefined.`))}else return Promise.reject(new cs.ResponseError(cs.LSPErrorCodes.ServerCancelled,`No document found for URI: ${r.toString()}`));return new Promise((s,a)=>{let o=this.onDocumentPhase(e,u=>{De.equals(u.uri,r)&&(o.dispose(),l.dispose(),s(u.uri))}),l=n.onCancellationRequested(()=>{o.dispose(),l.dispose(),a(bt)})})}awaitBuilderState(e,r){return this.currentState>=e?Promise.resolve():r.isCancellationRequested?Promise.reject(bt):new Promise((n,i)=>{let s=this.onBuildPhase(e,()=>{s.dispose(),a.dispose(),n()}),a=r.onCancellationRequested(()=>{s.dispose(),a.dispose(),i(bt)})})}notifyDocumentPhase(e,r,n){return O(this,null,function*(){let s=this.documentPhaseListeners.get(r).slice();for(let a of s)try{yield be(n),yield a(e,n)}catch(o){if(!ar(o))throw o}})}notifyBuildPhase(e,r,n){return O(this,null,function*(){if(e.length===0)return;let s=this.buildPhaseListeners.get(r).slice();for(let a of s)yield be(n),yield a(e,n)})}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}validate(e,r){return O(this,null,function*(){let n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,i=this.getBuildOptions(e),s=typeof i.validation=="object"?ue({},i.validation):{};s.categories=this.findMissingValidationCategories(e,i);let a=yield n.validateDocument(e,s,r);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;let o=this.buildState.get(e.uri.toString());o&&(o.result??(o.result={}),o.result.validationChecks?o.result.validationChecks=J(o.result.validationChecks).concat(s.categories).distinct().toArray():o.result.validationChecks=[...s.categories])})}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}};var Ha=class{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new jn,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=tt(e).uri,i=[];return this.referenceIndex.forEach(s=>{s.forEach(a=>{De.equals(a.targetUri,n)&&a.targetPath===r&&i.push(a)})}),J(i)}allElements(e,r){let n=J(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){return r?this.symbolByTypeIndex.get(e,r,()=>(this.symbolIndex.get(e)??[]).filter(s=>this.astReflection.isSubtype(s.type,r))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r)}removeReferences(e){let r=e.toString();this.referenceIndex.delete(r)}updateContent(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){let s=yield this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,r),a=e.uri.toString();this.symbolIndex.set(a,s),this.symbolByTypeIndex.clear(a)})}updateReferences(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){let s=yield this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),s)})}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}};var Xa=class{constructor(e){this.initialBuildOptions={},this._ready=new pt,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){this.folders=e.workspaceFolders??void 0}initialized(e){return this.mutex.write(r=>this.initializeWorkspace(this.folders??[],r))}initializeWorkspace(n){return O(this,arguments,function*(e,r=z.CancellationToken.None){let i=yield this.performStartup(e);yield be(r),yield this.documentBuilder.build(i,this.initialBuildOptions,r)})}performStartup(e){return O(this,null,function*(){let r=[],n=a=>{r.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)};yield this.loadAdditionalDocuments(e,n);let i=[];yield Promise.all(e.map(a=>this.getRootFolder(a)).map(a=>O(this,null,function*(){return this.traverseFolder(a,i)})));let s=J(i).distinct(a=>a.toString()).filter(a=>!this.langiumDocuments.hasDocument(a));return yield this.loadWorkspaceDocuments(s,n),this._ready.resolve(),r})}loadWorkspaceDocuments(e,r){return O(this,null,function*(){yield Promise.all(e.map(n=>O(this,null,function*(){let i=yield this.langiumDocuments.getOrCreateDocument(n);r(i)})))})}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return Be.parse(e.uri)}traverseFolder(e,r){return O(this,null,function*(){try{let n=yield this.fileSystemProvider.readDirectory(e);yield Promise.all(n.map(i=>O(this,null,function*(){this.shouldIncludeEntry(i)&&(i.isDirectory?yield this.traverseFolder(i.uri,r):i.isFile&&r.push(i.uri))})))}catch(n){console.error("Failure to read directory content of "+e.toString(!0),n)}})}searchFolder(e){return O(this,null,function*(){let r=[];return yield this.traverseFolder(e,r),r})}shouldIncludeEntry(e){let r=De.basename(e.uri);return r.startsWith(".")?!1:e.isDirectory?r!=="node_modules"&&r!=="out":e.isFile?this.serviceRegistry.hasServices(e.uri):!1}};var Ya=class{buildUnexpectedCharactersMessage(e,r,n,i,s){return vi.buildUnexpectedCharactersMessage(e,r,n,i,s)}buildUnableToPopLexerModeMessage(e){return vi.buildUnableToPopLexerModeMessage(e)}},Cu={mode:"full"},Kn=class{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=zp(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new Fe(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=Cu){let n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:n.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(zp(e))return e;let r=qp(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};function Su(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function qp(t){return t&&"modes"in t&&"defaultMode"in t}function zp(t){return!Su(t)&&!qp(t)}Mi();function Kp(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=ie.create(0,0));let s=E$(t),a=Hp(n),o=LA({lines:s,position:i,options:a});return UA({index:0,tokens:o,position:i})}function Vp(t,e){let r=Hp(e),n=E$(t);if(n.length===0)return!1;let i=n[0],s=n[n.length-1],a=r.start,o=r.end;return!!a?.exec(i)&&!!o?.exec(s)}function E$(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(Sc)}var v$=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,PA=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function LA(t){let e=[],r=t.position.line,n=t.position.character;for(let i=0;i=o.length){if(e.length>0){let c=ie.create(r,n);e.push({type:"break",content:"",range:ee.create(c,c)})}}else{v$.lastIndex=l;let c=v$.exec(o);if(c){let p=c[0],m=c[1],g=ie.create(r,n+l),C=ie.create(r,n+l+p.length);e.push({type:"tag",content:m,range:ee.create(g,C)}),l+=p.length,l=Wp(o,l)}if(l0&&e[e.length-1].type==="break"?e.slice(0,-1):e}function DA(t,e,r,n){let i=[];if(t.length===0){let s=ie.create(r,n),a=ie.create(r,n+e.length);i.push({type:"text",content:e,range:ee.create(s,a)})}else{let s=0;for(let o of t){let l=o.index,u=e.substring(s,l);u.length>0&&i.push({type:"text",content:e.substring(s,l),range:ee.create(ie.create(r,s+n),ie.create(r,l+n))});let c=u.length+1,p=o[1];if(i.push({type:"inline-tag",content:p,range:ee.create(ie.create(r,s+c+n),ie.create(r,s+c+p.length+n))}),c+=p.length,o.length===4){c+=o[2].length;let m=o[3];i.push({type:"text",content:m,range:ee.create(ie.create(r,s+c+n),ie.create(r,s+c+m.length+n))})}else i.push({type:"text",content:"",range:ee.create(ie.create(r,s+c+n),ie.create(r,s+c+n))});s=l+o[0].length}let a=e.substring(s);a.length>0&&i.push({type:"text",content:a,range:ee.create(ie.create(r,s+n),ie.create(r,s+n+a.length))})}return i}var MA=/\S/,FA=/\s*$/;function Wp(t,e){let r=t.substring(e).match(MA);return r?e+r.index:t.length}function GA(t){let e=t.match(FA);if(e&&typeof e.index=="number")return e.index}function UA(t){let e=ie.create(t.position.line,t.position.character);if(t.tokens.length===0)return new Nu([],ee.create(e,e));let r=[];for(;t.indexr.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=x$(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=x$(r)+i}return r.trim()}},Ja=class{constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e} +${r}`),this.inline?`{${e}}`:e}toMarkdown(e){return e?.renderTag?.(this)??this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let s=BA(this.name,r,e??{});if(typeof s=="string")return s}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i} +${r}`),this.inline?`{${i}}`:i}};function BA(t,e,r){if(t==="linkplain"||t==="linkcode"||t==="link"){let n=e.indexOf(" "),i=e;if(n>0){let a=Wp(e,n);i=e.substring(a),e=e.substring(0,n)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(i=`\`${i}\``),r.renderLink?.(e,i)??WA(e,i)}}function WA(t,e){try{return Be.parse(t,!0),`[${e}](${t})`}catch(r){return t}}var Za=class{constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;rn.range.start.line&&(e+=` +`)}return e}toMarkdown(e){let r="";for(let n=0;ni.range.start.line&&(r+=` +`)}return r}},ku=class{constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};function x$(t){return t.endsWith(` +`)?` +`:` + +`}var Qa=class{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&Vp(r))return Kp(r).toMarkdown({renderLink:(i,s)=>this.documentationLinkRenderer(e,i,s),renderTag:i=>this.documentationTagRenderer(e,i)})}documentationLinkRenderer(e,r,n){let i=this.findNameInLocalSymbols(e,r)??this.findNameInGlobalScope(e,r);if(i&&i.nameSegment){let s=i.nameSegment.range.start.line+1,a=i.nameSegment.range.start.character+1,o=i.documentUri.with({fragment:`L${s},${a}`});return`[${n}](${o.toString()})`}else return}documentationTagRenderer(e,r){}findNameInLocalSymbols(e,r){let i=tt(e).localSymbols;if(!i)return;let s=e;do{let o=i.getStream(s).find(l=>l.name===r);if(o)return o;s=s.$container}while(s)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(i=>i.name===r)}};var eo=class{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return xd(e)?e.$comment:vc(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}};var to=class{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},Xp=class{constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}parse(e,r){return O(this,null,function*(){let n=yield this.acquireParserWorker(r),i=new pt,s,a=r.onCancellationRequested(()=>{s=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(o=>{let l=this.hydrator.hydrate(o);i.resolve(l)}).catch(o=>{i.reject(o)}).finally(()=>{a.dispose(),clearTimeout(s)}),i.promise})}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}acquireParserWorker(e){return O(this,null,function*(){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new pt;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(bt)}),this.queue.push(r),r.promise})}},Yp=class{get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new Ee.Emitter,this.deferred=new pt,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(s=>{let a=s;this.deferred.resolve(a),this.unlock()}),n(s=>{this.deferred.reject(s),this.unlock()})}terminate(){this.deferred.reject(bt),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new pt,this.sendMessage(e),this.deferred.promise}};var ro=class{constructor(){this.previousTokenSource=new z.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=zl();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=z.CancellationToken.None){let i=new pt,s={action:r,deferred:i,cancellationToken:n};return e.push(s),this.performNextOperation(),i.promise}performNextOperation(){return O(this,null,function*(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,yield Promise.all(e.map(s=>O(this,[s],function*({action:r,deferred:n,cancellationToken:i}){try{let a=yield Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){ar(a)?n.resolve(void 0):n.reject(a)}}))),this.done=!0,this.performNextOperation()})}cancelWrite(){this.previousTokenSource.cancel()}};var no=class{constructor(e){this.grammarElementIdMap=new Un,this.tokenTypeIdMap=new Un,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(r=>Mt(ue({},r),{message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of ot(e))r.set(i,{});if(e.$cstNode)for(let i of Rn(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){let a=[];n[i]=a;for(let o of s)Ne(o)?a.push(this.dehydrateAstNode(o,r)):qe(o)?a.push(this.dehydrateReference(o,r)):a.push(o)}else Ne(s)?n[i]=this.dehydrateAstNode(s,r):qe(s)?n[i]=this.dehydrateReference(s,r):s!==void 0&&(n[i]=s);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return As(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),Gt(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):Or(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let s of ot(e))r.set(s,{});let i;if(e.$cstNode)for(let s of Rn(e.$cstNode)){let a;"fullText"in s?(a=new Fi(s.fullText),i=a):"content"in s?a=new Ln:"tokenType"in s&&(a=this.hydrateCstLeafNode(s)),a&&(n.set(s,a),a.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){let a=[];n[i]=a;for(let o of s)Ne(o)?a.push(this.setParent(this.hydrateAstNode(o,r),n)):qe(o)?a.push(this.hydrateReference(o,n,i,r)):a.push(o)}else Ne(s)?n[i]=this.setParent(this.hydrateAstNode(s,r),n):qe(s)?n[i]=this.hydrateReference(s,n,i,r):s!==void 0&&(n[i]=s);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),Gt(i))for(let s of e.content){let a=this.hydrateCstNode(s,r,n++);i.content.push(a)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,s=e.startLine,a=e.startColumn,o=e.endLine,l=e.endColumn,u=e.hidden;return new Pn(n,i,{start:{line:s,character:a},end:{line:o,character:l}},r,u)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let r of ot(this.grammar))Ps(r)&&this.grammarElementIdMap.set(r,e++)}};function Jp(t){return{documentation:{CommentProvider:e=>new eo(e),DocumentationProvider:e=>new Qa(e)},parser:{AsyncParser:e=>new to(e),GrammarConfig:e=>Uc(e),LangiumParser:e=>dd(e),CompletionParser:e=>fd(e),ValueConverter:()=>new Mn,TokenBuilder:()=>new wr,Lexer:e=>new Kn(e),ParserErrorMessageProvider:()=>new Gi,LexerErrorMessageProvider:()=>new Ya},workspace:{AstNodeLocator:()=>new Ma,AstNodeDescriptionProvider:e=>new La(e),ReferenceDescriptionProvider:e=>new Da(e)},references:{Linker:e=>new Aa(e),NameProvider:()=>new Ca,ScopeProvider:e=>new ba(e),ScopeComputation:e=>new Na(e),References:e=>new Sa(e)},serializer:{Hydrator:e=>new no(e),JsonSerializer:e=>new Ia(e)},validation:{DocumentValidator:e=>new Pa(e),ValidationRegistry:e=>new Oa(e)},shared:()=>t.shared}}function Zp(t){return{ServiceRegistry:e=>new _a(e),workspace:{LangiumDocuments:e=>new Ea(e),LangiumDocumentFactory:e=>new xa(e),DocumentBuilder:e=>new Va(e),IndexManager:e=>new Ha(e),WorkspaceManager:e=>new Xa(e),FileSystemProvider:e=>t.fileSystemProvider(e),WorkspaceLock:()=>new ro,ConfigurationProvider:e=>new Fa(e)},profilers:{}}}var w$=(function(t){return t.merge=(e,r)=>io(io({},e),r),t})(w$||{});function wu(t,e,r,n,i,s,a,o,l){let u=[t,e,r,n,i,s,a,o,l].reduce(io,{});return _$(u)}var b$=Symbol("isProxy");function I$(t){if(t&&t[b$])for(let e of Object.values(t))I$(e);return t}function _$(t,e){let r=new Proxy({},{deleteProperty:()=>!1,set:()=>{throw new Error("Cannot set property on injected service container")},get:(n,i)=>i===b$?!0:k$(n,i,t,e||r),getOwnPropertyDescriptor:(n,i)=>(k$(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),has:(n,i)=>i in t,ownKeys:()=>[...Object.getOwnPropertyNames(t)]});return r}var N$=Symbol();function k$(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+t[e]);if(t[e]===N$)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=N$;try{t[e]=typeof i=="function"?i(n):_$(i,n)}catch(s){throw t[e]=s instanceof Error?s:void 0,s}return t[e]}else return}function io(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!=null)if(typeof n=="object"){let i=t[r];typeof i=="object"&&i!==null?t[r]=io(i,n):t[r]=io({},n)}else t[r]=n}return t}var Qp={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]},fs=(function(t){return t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation",t})(fs||{}),bu=class extends wr{constructor(e=Qp){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options=ue(ue({},Qp),e),this.indentTokenType=Wr({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=Wr({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){let n=super.buildTokens(e,r);if(!Su(n))throw new Error("Invalid tokens built by default builder");let{indentTokenName:i,dedentTokenName:s,whitespaceTokenName:a,ignoreIndentationDelimiters:o}=this.options,l,u,c,p=[];for(let m of n){for(let[g,C]of o)m.name===g?m.PUSH_MODE=fs.IGNORE_INDENTATION:m.name===C&&(m.POP_MODE=!0);m.name===s?l=m:m.name===i?u=m:m.name===a?c=m:p.push(m)}if(!l||!u||!c)throw new Error("Some indentation/whitespace tokens not found!");return o.length>0?{modes:{[fs.REGULAR]:[l,u,...p,c],[fs.IGNORE_INDENTATION]:[...p,c]},defaultMode:fs.REGULAR}:[l,u,c,...p]}flushLexingReport(e){let r=super.flushLexingReport(e);return Mt(ue({},r),{remainingDedents:this.flushRemainingDedents(e)})}isStartOfLine(e,r){return r===0||`\r +`.includes(e[r-1])}matchWhitespace(e,r,n,i){this.whitespaceRegExp.lastIndex=r;let s=this.whitespaceRegExp.exec(e);return{currIndentLevel:s?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:s}}createIndentationTokenInstance(e,r,n,i){let s=this.getLineNumber(r,i);return Ar(e,n,i,i+n.length,s,s,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:s,prevIndentLevel:a,match:o}=this.matchWhitespace(e,r,n,i);return s<=a?null:(this.indentationStack.push(s),o)}dedentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:s,prevIndentLevel:a,match:o}=this.matchWhitespace(e,r,n,i);if(s>=a)return null;let l=this.indentationStack.lastIndexOf(s);if(l===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${s} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:o?.[0]?.length??0,line:this.getLineNumber(e,r),column:1}),null;let u=this.indentationStack.length-l-1,c=e.substring(0,r).match(/[\r\n]+$/)?.[0].length??1;for(let p=0;p1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},em=class extends Kn{constructor(e){if(super(e),e.parser.TokenBuilder instanceof bu)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=Cu){let n=super.tokenize(e),i=n.report;r?.mode==="full"&&n.tokens.push(...i.remainingDedents),i.remainingDedents=[];let{indentTokenType:s,dedentTokenType:a}=this.indentationTokenBuilder,o=s.tokenTypeIdx,l=a.tokenTypeIdx,u=[],c=n.tokens.length-1;for(let p=0;p=0&&u.push(n.tokens[c]),n.tokens=u,n}};var se={};_r(se,{AstUtils:()=>yo,BiMap:()=>Un,Cancellation:()=>z,ContextCache:()=>jn,CstUtils:()=>Mo,DONE_RESULT:()=>et,Deferred:()=>pt,Disposable:()=>sn,DisposableCache:()=>Vi,DocumentCache:()=>Bl,EMPTY_STREAM:()=>Pr,ErrorWithLocation:()=>vn,GrammarUtils:()=>qo,MultiMap:()=>nt,OperationCancelled:()=>bt,Reduction:()=>ei,RegExpUtils:()=>Uo,SimpleCache:()=>wa,StreamImpl:()=>Et,TreeStreamImpl:()=>Jt,URI:()=>Be,UriTrie:()=>Wi,UriUtils:()=>De,WorkspaceCache:()=>Hi,assertCondition:()=>Fm,assertUnreachable:()=>Qt,delayNextTick:()=>Rd,interruptAndCheck:()=>be,isOperationCancelled:()=>ar,loadGrammarFromJson:()=>Ot,setInterruptionPeriod:()=>zg,startCancelableOperation:()=>zl,stream:()=>J});re(se,Ee);var Iu=class{stat(e){throw new Error("No file system is available.")}statSync(e){throw new Error("No file system is available.")}exists(){return O(this,null,function*(){return!1})}existsSync(){return!1}readBinary(){throw new Error("No file system is available.")}readBinarySync(){throw new Error("No file system is available.")}readFile(){throw new Error("No file system is available.")}readFileSync(){throw new Error("No file system is available.")}readDirectory(){return O(this,null,function*(){return[]})}readDirectorySync(){return[]}},tm={fileSystemProvider:()=>new Iu};var KA={Grammar:()=>{},LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},VA={AstReflection:()=>new ci};function HA(){let t=wu(Zp(tm),VA),e=wu(Jp({shared:t}),KA);return t.ServiceRegistry.register(e),e}function Ot(t){let e=HA(),r=e.serializer.JsonSerializer.deserialize(t);return e.shared.workspace.LangiumDocumentFactory.fromModel(r,Be.parse(`memory:/${r.name??"grammar"}.langium`)),r}re(Oe,se);var rm=class{constructor(e){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=e??new Set(this.allCategories),this.records=new nt}isActive(e){return this.activeCategories.has(e)}start(...e){e?e.forEach(r=>this.activeCategories.add(r)):this.activeCategories=new Set(this.allCategories)}stop(...e){e?e.forEach(r=>this.activeCategories.delete(r)):this.activeCategories.clear()}createTask(e,r){if(!this.isActive(e))throw new Error(`Category "${e}" is not active.`);return console.log(`Creating profiling task for '${e}.${r}'.`),new _u(n=>this.records.add(e,this.dumpRecord(e,n)),r)}dumpRecord(e,r){console.info(`Task ${e}.${r.identifier} executed in ${r.duration.toFixed(2)}ms and ended at ${r.date.toISOString()}`);let n=[];for(let a of r.entries.keys()){let o=r.entries.get(a),l=o.reduce((u,c)=>u+c);n.push({name:`${r.identifier}.${a}`,count:o.length,duration:l})}let i=r.duration-n.map(a=>a.duration).reduce((a,o)=>a+o,0);n.push({name:r.identifier,count:1,duration:i}),n.sort((a,o)=>o.duration-a.duration);function s(a){return Math.round(100*a)/100}return console.table(n.map(a=>({Element:a.name,Count:a.count,"Self %":s(100*a.duration/r.duration),"Time (ms)":s(a.duration)}))),r}getRecords(...e){return e.length===0?this.records.values():this.records.entries().filter(r=>e.some(n=>n===r[0])).flatMap(r=>r[1])}},_u=class{constructor(e,r){this.stack=[],this.entries=new nt,this.addRecord=e,this.identifier=r}start(){if(this.startTime!==void 0)throw new Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(this.startTime===void 0)throw new Error(`Task "${this.identifier}" was not started.`);if(this.stack.length!==0)throw new Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map(r=>r.id).join(", ")}.`);let e={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(e),this.startTime=void 0,this.entries.clear()}startSubTask(e){this.stack.push({id:e,start:performance.now(),content:0})}stopSubTask(e){let r=this.stack.pop();if(!r)throw new Error(`Task "${this.identifier}.${e}" was not started.`);if(r.id!==e)throw new Error(`Sub-Task "${r.id}" is not already stopped.`);let n=performance.now()-r.start;this.stack.at(-1)!==void 0&&(this.stack[this.stack.length-1].content+=n);let i=n-r.content;this.entries.add(e,i)}};var XA=Object.defineProperty,K=(t,e)=>XA(t,"name",{value:e,configurable:!0}),mm;(t=>{t.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[\w ]+)\]/}})(mm||(mm={}));var hm;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/}})(hm||(hm={}));var gm;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(gm||(gm={}));var ym;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(ym||(ym={}));var Tm;(t=>{t.Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Tm||(Tm={}));var Rm;(t=>{t.Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Rm||(Rm={}));var $m;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/}})($m||($m={}));var vm;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,STRING2:/"[^"]*"|'[^']*'/}})(vm||(vm={}));var xm;(t=>{t.Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z][A-Za-z0-9_()&]*(?:[ \t]+[A-Za-z(][A-Za-z0-9_()&]*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(xm||(xm={}));var oL=ue(ue(ue(ue(ue(ue(ue(ue(ue({},mm.Terminals),hm.Terminals),gm.Terminals),ym.Terminals),Tm.Terminals),Rm.Terminals),vm.Terminals),$m.Terminals),xm.Terminals),Ou={$type:"Accelerator",name:"name",x:"x",y:"y"},Pu={$type:"Anchor",evolution:"evolution",name:"name",visibility:"visibility"},so={$type:"Annotation",number:"number",text:"text",x:"x",y:"y"},nm={$type:"Annotations",x:"x",y:"y"},Ir={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};function YA(t){return Pt.isInstance(t,Ir.$type)}K(YA,"isArchitecture");var Lu={$type:"Axis",label:"label",name:"name"},qu={$type:"Branch",name:"name",order:"order"};function JA(t){return Pt.isInstance(t,qu.$type)}K(JA,"isBranch");var O$={$type:"Checkout",branch:"branch"},Du={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},im={$type:"ClassDefStatement",className:"className",styleText:"styleText"},hs={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};function ZA(t){return Pt.isInstance(t,hs.$type)}K(ZA,"isCommit");var Vn={$type:"Component",decorator:"decorator",evolution:"evolution",inertia:"inertia",label:"label",name:"name",visibility:"visibility"},Mu={$type:"Curve",entries:"entries",label:"label",name:"name"},Fu={$type:"Deaccelerator",name:"name",x:"x",y:"y"},P$={$type:"Decorator",strategy:"strategy"},ds={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},dr={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},sm={$type:"Entry",axis:"axis",value:"value"},L$={$type:"Evolution",stages:"stages"},Gu={$type:"EvolutionStage",boundary:"boundary",name:"name",secondName:"secondName"},am={$type:"Evolve",component:"component",target:"target"},Yn={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};function QA(t){return Pt.isInstance(t,Yn.$type)}K(QA,"isGitGraph");var ao={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},co={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};function eC(t){return Pt.isInstance(t,co.$type)}K(eC,"isInfo");var oo={$type:"Item",classSelector:"classSelector",name:"name"},om={$type:"Junction",id:"id",in:"in"},lo={$type:"Label",negX:"negX",negY:"negY",offsetX:"offsetX",offsetY:"offsetY"},Uu={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},Hn={$type:"Link",arrow:"arrow",from:"from",fromPort:"fromPort",linkLabel:"linkLabel",to:"to",toPort:"toPort"},gs={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};function tC(t){return Pt.isInstance(t,gs.$type)}K(tC,"isMerge");var ju={$type:"Note",evolution:"evolution",text:"text",visibility:"visibility"},lm={$type:"Option",name:"name",value:"value"},ys={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};function rC(t){return Pt.isInstance(t,ys.$type)}K(rC,"isPacket");var Ts={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};function nC(t){return Pt.isInstance(t,Ts.$type)}K(nC,"isPacketBlock");var Jn={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};function iC(t){return Pt.isInstance(t,Jn.$type)}K(iC,"isPie");var Bu={$type:"PieSection",label:"label",value:"value"};function sC(t){return Pt.isInstance(t,Bu.$type)}K(sC,"isPieSection");var um={$type:"Pipeline",components:"components",parent:"parent"},zu={$type:"PipelineComponent",evolution:"evolution",label:"label",name:"name"},Xn={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},cm={$type:"Section",classSelector:"classSelector",name:"name"},ps={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},fm={$type:"Size",height:"height",width:"width"},ms={$type:"Statement"},Rs={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};function aC(t){return Pt.isInstance(t,Rs.$type)}K(aC,"isTreemap");var dm={$type:"TreemapRow",indent:"indent",item:"item"},pm={$type:"TreeNode",indent:"indent",name:"name"},uo={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},Ze={$type:"Wardley",accDescr:"accDescr",accelerators:"accelerators",accTitle:"accTitle",anchors:"anchors",annotation:"annotation",annotations:"annotations",components:"components",deaccelerators:"deaccelerators",evolution:"evolution",evolves:"evolves",links:"links",notes:"notes",pipelines:"pipelines",size:"size",title:"title"};function oC(t){return Pt.isInstance(t,Ze.$type)}K(oC,"isWardley");var W$=class extends an{constructor(){super(...arguments),this.types={Accelerator:{name:Ou.$type,properties:{name:{name:Ou.name},x:{name:Ou.x},y:{name:Ou.y}},superTypes:[]},Anchor:{name:Pu.$type,properties:{evolution:{name:Pu.evolution},name:{name:Pu.name},visibility:{name:Pu.visibility}},superTypes:[]},Annotation:{name:so.$type,properties:{number:{name:so.number},text:{name:so.text},x:{name:so.x},y:{name:so.y}},superTypes:[]},Annotations:{name:nm.$type,properties:{x:{name:nm.x},y:{name:nm.y}},superTypes:[]},Architecture:{name:Ir.$type,properties:{accDescr:{name:Ir.accDescr},accTitle:{name:Ir.accTitle},edges:{name:Ir.edges,defaultValue:[]},groups:{name:Ir.groups,defaultValue:[]},junctions:{name:Ir.junctions,defaultValue:[]},services:{name:Ir.services,defaultValue:[]},title:{name:Ir.title}},superTypes:[]},Axis:{name:Lu.$type,properties:{label:{name:Lu.label},name:{name:Lu.name}},superTypes:[]},Branch:{name:qu.$type,properties:{name:{name:qu.name},order:{name:qu.order}},superTypes:[ms.$type]},Checkout:{name:O$.$type,properties:{branch:{name:O$.branch}},superTypes:[ms.$type]},CherryPicking:{name:Du.$type,properties:{id:{name:Du.id},parent:{name:Du.parent},tags:{name:Du.tags,defaultValue:[]}},superTypes:[ms.$type]},ClassDefStatement:{name:im.$type,properties:{className:{name:im.className},styleText:{name:im.styleText}},superTypes:[]},Commit:{name:hs.$type,properties:{id:{name:hs.id},message:{name:hs.message},tags:{name:hs.tags,defaultValue:[]},type:{name:hs.type}},superTypes:[ms.$type]},Component:{name:Vn.$type,properties:{decorator:{name:Vn.decorator},evolution:{name:Vn.evolution},inertia:{name:Vn.inertia,defaultValue:!1},label:{name:Vn.label},name:{name:Vn.name},visibility:{name:Vn.visibility}},superTypes:[]},Curve:{name:Mu.$type,properties:{entries:{name:Mu.entries,defaultValue:[]},label:{name:Mu.label},name:{name:Mu.name}},superTypes:[]},Deaccelerator:{name:Fu.$type,properties:{name:{name:Fu.name},x:{name:Fu.x},y:{name:Fu.y}},superTypes:[]},Decorator:{name:P$.$type,properties:{strategy:{name:P$.strategy}},superTypes:[]},Direction:{name:ds.$type,properties:{accDescr:{name:ds.accDescr},accTitle:{name:ds.accTitle},dir:{name:ds.dir},statements:{name:ds.statements,defaultValue:[]},title:{name:ds.title}},superTypes:[Yn.$type]},Edge:{name:dr.$type,properties:{lhsDir:{name:dr.lhsDir},lhsGroup:{name:dr.lhsGroup,defaultValue:!1},lhsId:{name:dr.lhsId},lhsInto:{name:dr.lhsInto,defaultValue:!1},rhsDir:{name:dr.rhsDir},rhsGroup:{name:dr.rhsGroup,defaultValue:!1},rhsId:{name:dr.rhsId},rhsInto:{name:dr.rhsInto,defaultValue:!1},title:{name:dr.title}},superTypes:[]},Entry:{name:sm.$type,properties:{axis:{name:sm.axis,referenceType:Lu.$type},value:{name:sm.value}},superTypes:[]},Evolution:{name:L$.$type,properties:{stages:{name:L$.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:Gu.$type,properties:{boundary:{name:Gu.boundary},name:{name:Gu.name},secondName:{name:Gu.secondName}},superTypes:[]},Evolve:{name:am.$type,properties:{component:{name:am.component},target:{name:am.target}},superTypes:[]},GitGraph:{name:Yn.$type,properties:{accDescr:{name:Yn.accDescr},accTitle:{name:Yn.accTitle},statements:{name:Yn.statements,defaultValue:[]},title:{name:Yn.title}},superTypes:[]},Group:{name:ao.$type,properties:{icon:{name:ao.icon},id:{name:ao.id},in:{name:ao.in},title:{name:ao.title}},superTypes:[]},Info:{name:co.$type,properties:{accDescr:{name:co.accDescr},accTitle:{name:co.accTitle},title:{name:co.title}},superTypes:[]},Item:{name:oo.$type,properties:{classSelector:{name:oo.classSelector},name:{name:oo.name}},superTypes:[]},Junction:{name:om.$type,properties:{id:{name:om.id},in:{name:om.in}},superTypes:[]},Label:{name:lo.$type,properties:{negX:{name:lo.negX,defaultValue:!1},negY:{name:lo.negY,defaultValue:!1},offsetX:{name:lo.offsetX},offsetY:{name:lo.offsetY}},superTypes:[]},Leaf:{name:Uu.$type,properties:{classSelector:{name:Uu.classSelector},name:{name:Uu.name},value:{name:Uu.value}},superTypes:[oo.$type]},Link:{name:Hn.$type,properties:{arrow:{name:Hn.arrow},from:{name:Hn.from},fromPort:{name:Hn.fromPort},linkLabel:{name:Hn.linkLabel},to:{name:Hn.to},toPort:{name:Hn.toPort}},superTypes:[]},Merge:{name:gs.$type,properties:{branch:{name:gs.branch},id:{name:gs.id},tags:{name:gs.tags,defaultValue:[]},type:{name:gs.type}},superTypes:[ms.$type]},Note:{name:ju.$type,properties:{evolution:{name:ju.evolution},text:{name:ju.text},visibility:{name:ju.visibility}},superTypes:[]},Option:{name:lm.$type,properties:{name:{name:lm.name},value:{name:lm.value,defaultValue:!1}},superTypes:[]},Packet:{name:ys.$type,properties:{accDescr:{name:ys.accDescr},accTitle:{name:ys.accTitle},blocks:{name:ys.blocks,defaultValue:[]},title:{name:ys.title}},superTypes:[]},PacketBlock:{name:Ts.$type,properties:{bits:{name:Ts.bits},end:{name:Ts.end},label:{name:Ts.label},start:{name:Ts.start}},superTypes:[]},Pie:{name:Jn.$type,properties:{accDescr:{name:Jn.accDescr},accTitle:{name:Jn.accTitle},sections:{name:Jn.sections,defaultValue:[]},showData:{name:Jn.showData,defaultValue:!1},title:{name:Jn.title}},superTypes:[]},PieSection:{name:Bu.$type,properties:{label:{name:Bu.label},value:{name:Bu.value}},superTypes:[]},Pipeline:{name:um.$type,properties:{components:{name:um.components,defaultValue:[]},parent:{name:um.parent}},superTypes:[]},PipelineComponent:{name:zu.$type,properties:{evolution:{name:zu.evolution},label:{name:zu.label},name:{name:zu.name}},superTypes:[]},Radar:{name:Xn.$type,properties:{accDescr:{name:Xn.accDescr},accTitle:{name:Xn.accTitle},axes:{name:Xn.axes,defaultValue:[]},curves:{name:Xn.curves,defaultValue:[]},options:{name:Xn.options,defaultValue:[]},title:{name:Xn.title}},superTypes:[]},Section:{name:cm.$type,properties:{classSelector:{name:cm.classSelector},name:{name:cm.name}},superTypes:[oo.$type]},Service:{name:ps.$type,properties:{icon:{name:ps.icon},iconText:{name:ps.iconText},id:{name:ps.id},in:{name:ps.in},title:{name:ps.title}},superTypes:[]},Size:{name:fm.$type,properties:{height:{name:fm.height},width:{name:fm.width}},superTypes:[]},Statement:{name:ms.$type,properties:{},superTypes:[]},TreeNode:{name:pm.$type,properties:{indent:{name:pm.indent},name:{name:pm.name}},superTypes:[]},TreeView:{name:uo.$type,properties:{accDescr:{name:uo.accDescr},accTitle:{name:uo.accTitle},nodes:{name:uo.nodes,defaultValue:[]},title:{name:uo.title}},superTypes:[]},Treemap:{name:Rs.$type,properties:{accDescr:{name:Rs.accDescr},accTitle:{name:Rs.accTitle},title:{name:Rs.title},TreemapRows:{name:Rs.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:dm.$type,properties:{indent:{name:dm.indent},item:{name:dm.item}},superTypes:[]},Wardley:{name:Ze.$type,properties:{accDescr:{name:Ze.accDescr},accelerators:{name:Ze.accelerators,defaultValue:[]},accTitle:{name:Ze.accTitle},anchors:{name:Ze.anchors,defaultValue:[]},annotation:{name:Ze.annotation,defaultValue:[]},annotations:{name:Ze.annotations,defaultValue:[]},components:{name:Ze.components,defaultValue:[]},deaccelerators:{name:Ze.deaccelerators,defaultValue:[]},evolution:{name:Ze.evolution},evolves:{name:Ze.evolves,defaultValue:[]},links:{name:Ze.links,defaultValue:[]},notes:{name:Ze.notes,defaultValue:[]},pipelines:{name:Ze.pipelines,defaultValue:[]},size:{name:Ze.size},title:{name:Ze.title}},superTypes:[]}}}static{K(this,"MermaidAstReflection")}},Pt=new W$,D$,lC=K(()=>D$??(D$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'|[\\\\w ]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"ArchitectureGrammarGrammar"),M$,uC=K(()=>M$??(M$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"GitGraphGrammarGrammar"),F$,cC=K(()=>F$??(F$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"InfoGrammarGrammar"),G$,fC=K(()=>G$??(G$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PacketGrammarGrammar"),U$,dC=K(()=>U$??(U$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PieGrammarGrammar"),j$,pC=K(()=>j$??(j$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}`)),"RadarGrammarGrammar"),z$,mC=K(()=>z$??(z$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammarGrammar"),q$,hC=K(()=>q$??(q$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@9"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n * Converted from treemap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}`)),"TreeViewGrammarGrammar"),B$,gC=K(()=>B$??(B$=Ot(`{"$type":"Grammar","isDeclared":true,"name":"WardleyGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Wardley","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@42"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"size","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"anchors","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"links","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"evolves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"pipelines","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"notes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"annotations","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Assignment","feature":"annotation","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"deaccelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Size","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"width","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"height","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolution","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EvolutionStage","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"@"},{"$type":"Assignment","feature":"boundary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}],"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"secondName","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Anchor","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Component","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"decorator","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Keyword","value":")"}]}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Label","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"negX","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetX","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"negY","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetY","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Decorator","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"strategy","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Link","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"fromPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"arrow","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"cardinality":"?"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"toPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"linkLabel","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolve","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@32"},"arguments":[]},{"$type":"Assignment","feature":"component","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"target","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Pipeline","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@33"},"arguments":[]},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"+"},{"$type":"Keyword","value":"}"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PipelineComponent","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Note","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@34"},"arguments":[]},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotations","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@35"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotation","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@36"},"arguments":[]},{"$type":"Assignment","feature":"number","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CoordinateValue","dataType":"number","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Accelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@37"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Deaccelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@38"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"WARDLEY_NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"->"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_PORT","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<>"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+>"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_ARROW","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-->"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-.->"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":">"},"parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+'[^']*'<>/","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+'[^']*'/","parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_LABEL","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRATEGY","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"build"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"buy"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"outsource"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"market"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_WARDLEY","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"wardley-beta"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_SIZE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"size"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLUTION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolution"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANCHOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"anchor"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_COMPONENT","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"component"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_LABEL","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"label"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_INERTIA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"inertia"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLVE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolve"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_PIPELINE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"pipeline"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_NOTE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"note"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATIONS","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotations"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotation"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"accelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_DEACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"deaccelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NAME_WITH_SPACES","definition":{"$type":"RegexToken","regex":"/(?!title\\\\s|accTitle|accDescr)[A-Za-z][A-Za-z0-9_()&]*(?:[ \\\\t]+[A-Za-z(][A-Za-z0-9_()&]*)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@44"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@45"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@46"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@47"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@48"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"WardleyGrammarGrammar"),yC={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},TC={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},RC={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$C={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vC={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},xC={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},EC={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},AC={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},CC={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},uL={AstReflection:K(()=>new W$,"AstReflection")},cL={Grammar:K(()=>lC(),"Grammar"),LanguageMetaData:K(()=>yC,"LanguageMetaData"),parser:{}},fL={Grammar:K(()=>uC(),"Grammar"),LanguageMetaData:K(()=>TC,"LanguageMetaData"),parser:{}},dL={Grammar:K(()=>cC(),"Grammar"),LanguageMetaData:K(()=>RC,"LanguageMetaData"),parser:{}},pL={Grammar:K(()=>fC(),"Grammar"),LanguageMetaData:K(()=>$C,"LanguageMetaData"),parser:{}},mL={Grammar:K(()=>dC(),"Grammar"),LanguageMetaData:K(()=>vC,"LanguageMetaData"),parser:{}},hL={Grammar:K(()=>pC(),"Grammar"),LanguageMetaData:K(()=>xC,"LanguageMetaData"),parser:{}},gL={Grammar:K(()=>mC(),"Grammar"),LanguageMetaData:K(()=>EC,"LanguageMetaData"),parser:{}},yL={Grammar:K(()=>hC(),"Grammar"),LanguageMetaData:K(()=>AC,"LanguageMetaData"),parser:{}},TL={Grammar:K(()=>gC(),"Grammar"),LanguageMetaData:K(()=>CC,"LanguageMetaData"),parser:{}},SC=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,NC=/accTitle[\t ]*:([^\n\r]*)/,kC=/title([\t ][^\n\r]*|)/,wC={ACC_DESCR:SC,ACC_TITLE:NC,TITLE:kC},bC=class extends Mn{static{K(this,"AbstractMermaidValueConverter")}runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){let n=wC[t.name];if(n===void 0)return;let i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,` +`)}}},$L=class extends bC{static{K(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},IC=class extends wr{static{K(this,"AbstractMermaidTokenBuilder")}constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){let n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},xL=class extends IC{static{K(this,"CommonTokenBuilder")}};export{Jp as a,Zp as b,wu as c,tm as d,Oe as e,K as f,uL as g,cL as h,fL as i,dL as j,pL as k,mL as l,hL as m,gL as n,yL as o,TL as p,bC as q,$L as r,IC as s}; diff --git a/src/google/adk/cli/browser/chunk-ASJUXEUE.js b/src/google/adk/cli/browser/chunk-ASJUXEUE.js deleted file mode 100644 index 72d655ef2f..0000000000 --- a/src/google/adk/cli/browser/chunk-ASJUXEUE.js +++ /dev/null @@ -1 +0,0 @@ -import{A as fr,B as rr,C as D,D as q,E as Lr,F as wt,G as Et,H as W,I as Cr,J as Pt,K as Rt,L as Mt,M as $,N as Lt,O as ut,P as _r,Q as Ct,R as _t,S as Ft,T as Fr,U as Or,a as B,b as M,c as K,d as w,e as p,f as E,g as C,i as V,j as k,k as At,m as vt,n as Pr,o as Rr,p as Mr,q as Z,r as N,s as Ot,t as z,u as Tt,v as T,w as _,x as St,y as or,z as It}from"./chunk-EGBSMT36.js";function _o(r,t){for(var e=-1,o=r==null?0:r.length;++e2?t[2]:void 0;for(f&&_(t[0],t[1],f)&&(o=1);++ei))return!1;var u=a.get(r),s=a.get(t);if(u&&s)return u==t&&s==r;var l=-1,d=!0,A=e&Na?new sr:void 0;for(a.set(r,t),a.set(t,r);++lt}var Be=ni;function ii(r){return r&&r.length?cr(r,C,Be):void 0}var mi=ii;function ui(r,t,e,o){if(!E(r))return r;t=J(t,r);for(var f=-1,a=t.length,n=a-1,i=r;i!=null&&++f0&&e(i)?t>1?Ue(i,t-1,e,o,f):mr(f,i):o||(f[f.length]=i)}return f}var j=Ue;function di(r){var t=r==null?0:r.length;return t?j(r,1):[]}var xt=di;function xi(r){return vt(Ot(r,void 0,xt),r+"")}var je=xi;var gi=je(function(r,t){return r==null?{}:De(r,t)}),ci=gi;function bi(r,t,e,o){var f=-1,a=r==null?0:r.length;for(o&&a&&(e=r[++f]);++f-1}var at=Ii;function wi(r,t,e){for(var o=-1,f=r==null?0:r.length;++o=Mi){var u=t?null:ke(r);if(u)return dr(u);n=!1,f=lr,m=new sr}else m=t?[]:i;r:for(;++of?0:f+t),e=e>f?f:e,e<0&&(e+=f),f=t>e?0:e-t>>>0,t>>>=0;for(var a=Array(f);++o=t||Y<0||l&&vr>=a}function b(){var h=Ir();if(c(h))return F(h);i=setTimeout(b,O(h))}function F(h){return i=void 0,d&&o?A(h):(o=f=void 0,n)}function Er(){i!==void 0&&clearTimeout(i),u=0,o=m=f=i=void 0}function er(){return i===void 0?n:F(Ir())}function H(){var h=Ir(),Y=c(h);if(o=arguments,f=this,m=h,Y){if(i===void 0)return v(m);if(l)return clearTimeout(i),i=setTimeout(b,t),A(m)}return i===void 0&&(i=setTimeout(b,t)),n}return H.cancel=Er,H.flush=er,H}var Sm=Tm;var Im=200;function wm(r,t,e,o){var f=-1,a=at,n=!0,i=r.length,m=[],u=t.length;if(!i)return m;e&&(t=I(t,D(e))),o?(a=nt,n=!1):t.length>=Im&&(a=lr,n=!1,t=new sr(t));r:for(;++f-1?f[a?t[n]:n]:void 0}}var io=qm;var Hm=Math.max;function Ym(r,t,e){var o=r==null?0:r.length;if(!o)return-1;var f=e==null?0:L(e);return f<0&&(f=Hm(o+f,0)),ft(r,x(t,3),f)}var mo=Ym;var km=io(mo),Zm=km;function zm(r){return r&&r.length?r[0]:void 0}var uo=zm;function $m(r,t){return j(lt(r,t),1)}var Xm=$m;function Jm(r,t){return r==null?r:Fr(r,G(t),W)}var Qm=Jm;function Vm(r,t){return r&&pr(r,G(t))}var ru=Vm;var tu=Object.prototype,eu=tu.hasOwnProperty,ou=it(function(r,t,e){eu.call(r,e)?r[e].push(t):Rr(r,e,[t])}),fu=ou;var au=Object.prototype,nu=au.hasOwnProperty;function iu(r,t){return r!=null&&nu.call(r,t)}var po=iu;function mu(r,t){return r!=null&&Vr(r,t,po)}var uu=mu;var pu="[object String]";function su(r){return typeof r=="string"||!p(r)&&w(r)&&K(r)==pu}var wr=su;var lu=Math.max;function du(r,t,e,o){r=T(r)?r:dt(r),e=e&&!o?L(e):0;var f=r.length;return e<0&&(e=lu(f+e,0)),wr(r)?e<=f&&r.indexOf(t,e)>-1:!!f&&br(r,t,e)>-1}var xu=du;var gu=Math.max;function cu(r,t,e){var o=r==null?0:r.length;if(!o)return-1;var f=e==null?0:L(e);return f<0&&(f=gu(o+f,0)),br(r,t,f)}var bu=cu;function hu(r){var t=r==null?0:r.length;return t?Ar(r,0,-1):[]}var yu=hu;function Au(r,t){return xr(r,t)}var vu=Au;var Ou="[object RegExp]";function Tu(r){return w(r)&&K(r)==Ou}var so=Tu;var lo=q&&q.isRegExp,Su=lo?D(lo):so,Iu=Su;function wu(r,t){return rt||a&&n&&m&&!i&&!u||o&&n&&m||!e&&m||!f)return 1;if(!o&&!a&&!u&&r=i)return m;var u=e[o];return m*(u=="desc"?-1:1)}}return r.index-t.index}var bo=Du;function Wu(r,t,e){t.length?t=I(t,function(a){return p(a)?function(n){return Q(n,a.length===1?a[0]:a)}:a}):t=[C];var o=-1;t=I(t,D(x));var f=et(r,function(a,n,i){var m=I(t,function(u){return u(a)});return{criteria:m,index:++o,value:a}});return go(f,function(a,n){return bo(a,n,e)})}var ho=Wu;var Gu=tt("length"),yo=Gu;var vo="\\ud800-\\udfff",Uu="\\u0300-\\u036f",ju="\\ufe20-\\ufe2f",Ku="\\u20d0-\\u20ff",qu=Uu+ju+Ku,Hu="\\ufe0e\\ufe0f",Yu="["+vo+"]",ct="["+qu+"]",bt="\\ud83c[\\udffb-\\udfff]",ku="(?:"+ct+"|"+bt+")",Oo="[^"+vo+"]",To="(?:\\ud83c[\\udde6-\\uddff]){2}",So="[\\ud800-\\udbff][\\udc00-\\udfff]",Zu="\\u200d",Io=ku+"?",wo="["+Hu+"]?",zu="(?:"+Zu+"(?:"+[Oo,To,So].join("|")+")"+wo+Io+")*",$u=wo+Io+zu,Xu="(?:"+[Oo+ct+"?",ct,To,So,Yu].join("|")+")",Ao=RegExp(bt+"(?="+bt+")|"+Xu+$u,"g");function Ju(r){for(var t=Ao.lastIndex=0;Ao.test(r);)++t;return t}var Eo=Ju;function Qu(r){return Je(r)?Eo(r):yo(r)}var Po=Qu;var Vu=it(function(r,t,e){r[e?0:1].push(t)},function(){return[[],[]]}),rp=Vu;var tp=Math.ceil,ep=Math.max;function op(r,t,e,o){for(var f=-1,a=ep(tp((t-r)/(e||1)),0),n=Array(a);a--;)n[o?a:++f]=r,r+=e;return n}var Ro=op;function fp(r){return function(t,e,o){return o&&typeof o!="number"&&_(t,e,o)&&(e=o=void 0),t=yr(t),e===void 0?(e=t,t=0):e=yr(e),o=o===void 0?t1&&_(r,t[0],t[1])?t=[]:e>2&&_(t[0],t[1],t[2])&&(t=[t[0]]),ho(r,j(t,1),[])}),bp=cp;var hp=9007199254740991,ht=4294967295,yp=Math.min;function Ap(r,t){if(r=L(r),r<1||r>hp)return[];var e=ht,o=yp(r,ht);t=G(t),r-=ht;for(var f=It(o,t);++eee(I(I({},me),j().gitGraph)),"getConfig"),n=new ae(()=>{let r=M(),e=r.mainBranchName,a=r.mainBranchOrder;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:a}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});function A(){return Q({length:7})}l(A,"getID");function ce(r,e){let a=Object.create(null);return r.reduce((o,t)=>{let s=e(t);return a[s]||(a[s]=!0,o.push(t)),o},[])}l(ce,"uniqBy");var pe=l(function(r){n.records.direction=r},"setDirection"),ge=l(function(r){u.debug("options str",r),r=r?.trim(),r=r||"{}";try{n.records.options=JSON.parse(r)}catch(e){u.error("error while parsing gitGraph options",e.message)}},"setOptions"),fe=l(function(){return n.records.options},"getOptions"),ye=l(function(r){let e=r.msg,a=r.id,o=r.type,t=r.tags;u.info("commit",e,a,o,t),u.debug("Entering commit:",e,a,o,t);let s=M();a=C.sanitizeText(a,s),e=C.sanitizeText(e,s),t=t?.map(d=>C.sanitizeText(d,s));let h={id:a||n.records.seq+"-"+A(),message:e,seq:n.records.seq++,type:o??x.NORMAL,tags:t??[],parents:n.records.head==null?[]:[n.records.head.id],branch:n.records.currBranch};n.records.head=h,u.info("main branch",s.mainBranchName),n.records.commits.has(h.id)&&u.warn(`Commit ID ${h.id} already exists`),n.records.commits.set(h.id,h),n.records.branches.set(n.records.currBranch,h.id),u.debug("in pushCommit "+h.id)},"commit"),$e=l(function(r){let e=r.name,a=r.order;if(e=C.sanitizeText(e,M()),n.records.branches.has(e))throw new Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${e}")`);n.records.branches.set(e,n.records.head!=null?n.records.head.id:null),n.records.branchConfig.set(e,{name:e,order:a}),ne(e),u.debug("in createBranch")},"branch"),xe=l(r=>{let e=r.branch,a=r.id,o=r.type,t=r.tags,s=M();e=C.sanitizeText(e,s),a&&(a=C.sanitizeText(a,s));let h=n.records.branches.get(n.records.currBranch),d=n.records.branches.get(e),c=h?n.records.commits.get(h):void 0,m=d?n.records.commits.get(d):void 0;if(c&&m&&c.branch===e)throw new Error(`Cannot merge branch '${e}' into itself.`);if(n.records.currBranch===e){let i=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw i.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},i}if(c===void 0||!c){let i=new Error(`Incorrect usage of "merge". Current branch (${n.records.currBranch})has no commits`);throw i.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},i}if(!n.records.branches.has(e)){let i=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw i.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},i}if(m===void 0||!m){let i=new Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw i.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},i}if(c===m){let i=new Error('Incorrect usage of "merge". Both branches have same head');throw i.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},i}if(a&&n.records.commits.has(a)){let i=new Error('Incorrect usage of "merge". Commit with id:'+a+" already exists, use different custom id");throw i.hash={text:`merge ${e} ${a} ${o} ${t?.join(" ")}`,token:`merge ${e} ${a} ${o} ${t?.join(" ")}`,expected:[`merge ${e} ${a}_UNIQUE ${o} ${t?.join(" ")}`]},i}let p=d||"",f={id:a||`${n.records.seq}-${A()}`,message:`merged branch ${e} into ${n.records.currBranch}`,seq:n.records.seq++,parents:n.records.head==null?[]:[n.records.head.id,p],branch:n.records.currBranch,type:x.MERGE,customType:o,customId:!!a,tags:t??[]};n.records.head=f,n.records.commits.set(f.id,f),n.records.branches.set(n.records.currBranch,f.id),u.debug(n.records.branches),u.debug("in mergeBranch")},"merge"),ue=l(function(r){let e=r.id,a=r.targetId,o=r.tags,t=r.parent;u.debug("Entering cherryPick:",e,a,o);let s=M();if(e=C.sanitizeText(e,s),a=C.sanitizeText(a,s),o=o?.map(c=>C.sanitizeText(c,s)),t=C.sanitizeText(t,s),!e||!n.records.commits.has(e)){let c=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw c.hash={text:`cherryPick ${e} ${a}`,token:`cherryPick ${e} ${a}`,expected:["cherry-pick abc"]},c}let h=n.records.commits.get(e);if(h===void 0||!h)throw new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(t&&!(Array.isArray(h.parents)&&h.parents.includes(t)))throw new Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let d=h.branch;if(h.type===x.MERGE&&!t)throw new Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!a||!n.records.commits.has(a)){if(d===n.records.currBranch){let f=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw f.hash={text:`cherryPick ${e} ${a}`,token:`cherryPick ${e} ${a}`,expected:["cherry-pick abc"]},f}let c=n.records.branches.get(n.records.currBranch);if(c===void 0||!c){let f=new Error(`Incorrect usage of "cherry-pick". Current branch (${n.records.currBranch})has no commits`);throw f.hash={text:`cherryPick ${e} ${a}`,token:`cherryPick ${e} ${a}`,expected:["cherry-pick abc"]},f}let m=n.records.commits.get(c);if(m===void 0||!m){let f=new Error(`Incorrect usage of "cherry-pick". Current branch (${n.records.currBranch})has no commits`);throw f.hash={text:`cherryPick ${e} ${a}`,token:`cherryPick ${e} ${a}`,expected:["cherry-pick abc"]},f}let p={id:n.records.seq+"-"+A(),message:`cherry-picked ${h?.message} into ${n.records.currBranch}`,seq:n.records.seq++,parents:n.records.head==null?[]:[n.records.head.id,h.id],branch:n.records.currBranch,type:x.CHERRY_PICK,tags:o?o.filter(Boolean):[`cherry-pick:${h.id}${h.type===x.MERGE?`|parent:${t}`:""}`]};n.records.head=p,n.records.commits.set(p.id,p),n.records.branches.set(n.records.currBranch,p.id),u.debug(n.records.branches),u.debug("in cherryPick")}},"cherryPick"),ne=l(function(r){if(r=C.sanitizeText(r,M()),n.records.branches.has(r)){n.records.currBranch=r;let e=n.records.branches.get(n.records.currBranch);e===void 0||!e?n.records.head=null:n.records.head=n.records.commits.get(e)??null}else{let e=new Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${r}")`);throw e.hash={text:`checkout ${r}`,token:`checkout ${r}`,expected:[`branch ${r}`]},e}},"checkout");function W(r,e,a){let o=r.indexOf(e);o===-1?r.push(a):r.splice(o,1,a)}l(W,"upsert");function H(r){let e=r.reduce((t,s)=>t.seq>s.seq?t:s,r[0]),a="";r.forEach(function(t){t===e?a+=" *":a+=" |"});let o=[a,e.id,e.seq];for(let t in n.records.branches)n.records.branches.get(t)===e.id&&o.push(t);if(u.debug(o.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let t=n.records.commits.get(e.parents[0]);W(r,e,t),e.parents[1]&&r.push(n.records.commits.get(e.parents[1]))}else{if(e.parents.length==0)return;if(e.parents[0]){let t=n.records.commits.get(e.parents[0]);W(r,e,t)}}r=ce(r,t=>t.id),H(r)}l(H,"prettyPrintCommitHistory");var be=l(function(){u.debug(n.records.commits);let r=ie()[0];H([r])},"prettyPrint"),we=l(function(){n.reset(),F()},"clear"),Ce=l(function(){return[...n.records.branchConfig.values()].map((e,a)=>e.order!==null&&e.order!==void 0?e:_(I({},e),{order:parseFloat(`0.${a}`)})).sort((e,a)=>(e.order??0)-(a.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),Be=l(function(){return n.records.branches},"getBranches"),ve=l(function(){return n.records.commits},"getCommits"),ie=l(function(){let r=[...n.records.commits.values()];return r.forEach(function(e){u.debug(e.id)}),r.sort((e,a)=>e.seq-a.seq),r},"getCommitsArray"),ke=l(function(){return n.records.currBranch},"getCurrentBranch"),Te=l(function(){return n.records.direction},"getDirection"),Ee=l(function(){return n.records.head},"getHead"),de={commitType:x,getConfig:M,setDirection:pe,setOptions:ge,getOptions:fe,commit:ye,branch:$e,merge:xe,cherryPick:ue,checkout:ne,prettyPrint:be,clear:we,getBranchesAsObjArray:Ce,getBranches:Be,getCommits:ve,getCommitsArray:ie,getCurrentBranch:ke,getDirection:Te,getHead:Ee,setAccTitle:K,getAccTitle:Y,getAccDescription:U,setAccDescription:Z,setDiagramTitle:V,getDiagramTitle:J},Le=l((r,e)=>{re(r,e),r.dir&&e.setDirection(r.dir);for(let a of r.statements)Me(a,e)},"populate"),Me=l((r,e)=>{let o={Commit:l(t=>e.commit(Pe(t)),"Commit"),Branch:l(t=>e.branch(Re(t)),"Branch"),Merge:l(t=>e.merge(Oe(t)),"Merge"),Checkout:l(t=>e.checkout(Ie(t)),"Checkout"),CherryPicking:l(t=>e.cherryPick(qe(t)),"CherryPicking")}[r.$type];o?o(r):u.error(`Unknown statement type: ${r.$type}`)},"parseStatement"),Pe=l(r=>({id:r.id,msg:r.message??"",type:r.type!==void 0?x[r.type]:x.NORMAL,tags:r.tags??void 0}),"parseCommit"),Re=l(r=>({name:r.name,order:r.order??0}),"parseBranch"),Oe=l(r=>({branch:r.branch,id:r.id??"",type:r.type!==void 0?x[r.type]:void 0,tags:r.tags??void 0}),"parseMerge"),Ie=l(r=>r.branch,"parseCheckout"),qe=l(r=>({id:r.id,targetId:"",tags:r.tags?.length===0?void 0:r.tags,parent:r.parent}),"parseCherryPicking"),Ge={parse:l(r=>N(null,null,function*(){let e=yield se("gitGraph",r);u.debug(e),Le(e,de)}),"parse")},T=10,E=40,B=4,v=2,L=8,b=new Map,w=new Map,q=30,P=new Map,G=[],k=0,$="LR",Ae=l(()=>{b.clear(),w.clear(),P.clear(),k=0,G=[],$="LR"},"clear"),he=l(r=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof r=="string"?r.split(/\\n|\n|/gi):r).forEach(o=>{let t=document.createElementNS("http://www.w3.org/2000/svg","tspan");t.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),t.setAttribute("dy","1em"),t.setAttribute("x","0"),t.setAttribute("class","row"),t.textContent=o.trim(),e.appendChild(t)}),e},"drawText"),le=l(r=>{let e,a,o;return $==="BT"?(a=l((t,s)=>t<=s,"comparisonFunc"),o=1/0):(a=l((t,s)=>t>=s,"comparisonFunc"),o=0),r.forEach(t=>{let s=$==="TB"||$=="BT"?w.get(t)?.y:w.get(t)?.x;s!==void 0&&a(s,o)&&(e=t,o=s)}),e},"findClosestParent"),De=l(r=>{let e="",a=1/0;return r.forEach(o=>{let t=w.get(o).y;t<=a&&(e=o,a=t)}),e||void 0},"findClosestParentBT"),We=l((r,e,a)=>{let o=a,t=a,s=[];r.forEach(h=>{let d=e.get(h);if(!d)throw new Error(`Commit not found for key ${h}`);d.parents.length?(o=_e(d),t=Math.max(o,t)):s.push(d),Ne(d,o)}),o=t,s.forEach(h=>{Se(h,o,a)}),r.forEach(h=>{let d=e.get(h);if(d?.parents.length){let c=De(d.parents);o=w.get(c).y-E,o<=t&&(t=o);let m=b.get(d.branch).pos,p=o-T;w.set(d.id,{x:m,y:p})}})},"setParallelBTPos"),He=l(r=>{let e=le(r.parents.filter(o=>o!==null));if(!e)throw new Error(`Closest parent not found for commit ${r.id}`);let a=w.get(e)?.y;if(a===void 0)throw new Error(`Closest parent position not found for commit ${r.id}`);return a},"findClosestParentPos"),_e=l(r=>He(r)+E,"calculateCommitPosition"),Ne=l((r,e)=>{let a=b.get(r.branch);if(!a)throw new Error(`Branch not found for commit ${r.id}`);let o=a.pos,t=e+T;return w.set(r.id,{x:o,y:t}),{x:o,y:t}},"setCommitPosition"),Se=l((r,e,a)=>{let o=b.get(r.branch);if(!o)throw new Error(`Branch not found for commit ${r.id}`);let t=e+a,s=o.pos;w.set(r.id,{x:s,y:t})},"setRootPosition"),ze=l((r,e,a,o,t,s)=>{if(s===x.HIGHLIGHT)r.append("rect").attr("x",a.x-10).attr("y",a.y-10).attr("width",20).attr("height",20).attr("class",`commit ${e.id} commit-highlight${t%L} ${o}-outer`),r.append("rect").attr("x",a.x-6).attr("y",a.y-6).attr("width",12).attr("height",12).attr("class",`commit ${e.id} commit${t%L} ${o}-inner`);else if(s===x.CHERRY_PICK)r.append("circle").attr("cx",a.x).attr("cy",a.y).attr("r",10).attr("class",`commit ${e.id} ${o}`),r.append("circle").attr("cx",a.x-3).attr("cy",a.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${o}`),r.append("circle").attr("cx",a.x+3).attr("cy",a.y+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${e.id} ${o}`),r.append("line").attr("x1",a.x+3).attr("y1",a.y+1).attr("x2",a.x).attr("y2",a.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${o}`),r.append("line").attr("x1",a.x-3).attr("y1",a.y+1).attr("x2",a.x).attr("y2",a.y-5).attr("stroke","#fff").attr("class",`commit ${e.id} ${o}`);else{let h=r.append("circle");if(h.attr("cx",a.x),h.attr("cy",a.y),h.attr("r",e.type===x.MERGE?9:10),h.attr("class",`commit ${e.id} commit${t%L}`),s===x.MERGE){let d=r.append("circle");d.attr("cx",a.x),d.attr("cy",a.y),d.attr("r",6),d.attr("class",`commit ${o} ${e.id} commit${t%L}`)}s===x.REVERSE&&r.append("path").attr("d",`M ${a.x-5},${a.y-5}L${a.x+5},${a.y+5}M${a.x-5},${a.y+5}L${a.x+5},${a.y-5}`).attr("class",`commit ${o} ${e.id} commit${t%L}`)}},"drawCommitBullet"),je=l((r,e,a,o,t)=>{if(e.type!==x.CHERRY_PICK&&(e.customId&&e.type===x.MERGE||e.type!==x.MERGE)&&t.showCommitLabel){let s=r.append("g"),h=s.insert("rect").attr("class","commit-label-bkg"),d=s.append("text").attr("x",o).attr("y",a.y+25).attr("class","commit-label").text(e.id),c=d.node()?.getBBox();if(c&&(h.attr("x",a.posWithOffset-c.width/2-v).attr("y",a.y+13.5).attr("width",c.width+2*v).attr("height",c.height+2*v),$==="TB"||$==="BT"?(h.attr("x",a.x-(c.width+4*B+5)).attr("y",a.y-12),d.attr("x",a.x-(c.width+4*B)).attr("y",a.y+c.height-12)):d.attr("x",a.posWithOffset-c.width/2),t.rotateCommitLabel))if($==="TB"||$==="BT")d.attr("transform","rotate(-45, "+a.x+", "+a.y+")"),h.attr("transform","rotate(-45, "+a.x+", "+a.y+")");else{let m=-7.5-(c.width+10)/25*9.5,p=10+c.width/25*8.5;s.attr("transform","translate("+m+", "+p+") rotate(-45, "+o+", "+a.y+")")}}},"drawCommitLabel"),Fe=l((r,e,a,o)=>{if(e.tags.length>0){let t=0,s=0,h=0,d=[];for(let c of e.tags.reverse()){let m=r.insert("polygon"),p=r.append("circle"),f=r.append("text").attr("y",a.y-16-t).attr("class","tag-label").text(c),i=f.node()?.getBBox();if(!i)throw new Error("Tag bbox not found");s=Math.max(s,i.width),h=Math.max(h,i.height),f.attr("x",a.posWithOffset-i.width/2),d.push({tag:f,hole:p,rect:m,yOffset:t}),t+=20}for(let{tag:c,hole:m,rect:p,yOffset:f}of d){let i=h/2,y=a.y-19.2-f;if(p.attr("class","tag-label-bkg").attr("points",` - ${o-s/2-B/2},${y+v} - ${o-s/2-B/2},${y-v} - ${a.posWithOffset-s/2-B},${y-i-v} - ${a.posWithOffset+s/2+B},${y-i-v} - ${a.posWithOffset+s/2+B},${y+i+v} - ${a.posWithOffset-s/2-B},${y+i+v}`),m.attr("cy",y).attr("cx",o-s/2+B/2).attr("r",1.5).attr("class","tag-hole"),$==="TB"||$==="BT"){let g=o+f;p.attr("class","tag-label-bkg").attr("points",` - ${a.x},${g+2} - ${a.x},${g-2} - ${a.x+T},${g-i-2} - ${a.x+T+s+4},${g-i-2} - ${a.x+T+s+4},${g+i+2} - ${a.x+T},${g+i+2}`).attr("transform","translate(12,12) rotate(45, "+a.x+","+o+")"),m.attr("cx",a.x+B/2).attr("cy",g).attr("transform","translate(12,12) rotate(45, "+a.x+","+o+")"),c.attr("x",a.x+5).attr("y",g+3).attr("transform","translate(14,14) rotate(45, "+a.x+","+o+")")}}}},"drawCommitTags"),Ke=l(r=>{switch(r.customType??r.type){case x.NORMAL:return"commit-normal";case x.REVERSE:return"commit-reverse";case x.HIGHLIGHT:return"commit-highlight";case x.MERGE:return"commit-merge";case x.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),Ye=l((r,e,a,o)=>{let t={x:0,y:0};if(r.parents.length>0){let s=le(r.parents);if(s){let h=o.get(s)??t;return e==="TB"?h.y+E:e==="BT"?(o.get(r.id)??t).y-E:h.x+E}}else return e==="TB"?q:e==="BT"?(o.get(r.id)??t).y-E:0;return 0},"calculatePosition"),Ze=l((r,e,a)=>{let o=$==="BT"&&a?e:e+T,t=$==="TB"||$==="BT"?o:b.get(r.branch)?.pos,s=$==="TB"||$==="BT"?b.get(r.branch)?.pos:o;if(s===void 0||t===void 0)throw new Error(`Position were undefined for commit ${r.id}`);return{x:s,y:t,posWithOffset:o}},"getCommitPosition"),oe=l((r,e,a,o)=>{let t=r.append("g").attr("class","commit-bullets"),s=r.append("g").attr("class","commit-labels"),h=$==="TB"||$==="BT"?q:0,d=[...e.keys()],c=o.parallelCommits??!1,m=l((f,i)=>{let y=e.get(f)?.seq,g=e.get(i)?.seq;return y!==void 0&&g!==void 0?y-g:0},"sortKeys"),p=d.sort(m);$==="BT"&&(c&&We(p,e,h),p=p.reverse()),p.forEach(f=>{let i=e.get(f);if(!i)throw new Error(`Commit not found for key ${f}`);c&&(h=Ye(i,$,h,w));let y=Ze(i,h,c);if(a){let g=Ke(i),O=i.customType??i.type,D=b.get(i.branch)?.index??0;ze(t,i,y,g,D,O),je(s,i,y,h,o),Fe(s,i,y,h)}$==="TB"||$==="BT"?w.set(i.id,{x:y.x,y:y.posWithOffset}):w.set(i.id,{x:y.posWithOffset,y:y.y}),h=$==="BT"&&c?h+E:h+E+T,h>k&&(k=h)})},"drawCommits"),Ue=l((r,e,a,o,t)=>{let h=($==="TB"||$==="BT"?a.xm.branch===h,"isOnBranchToGetCurve"),c=l(m=>m.seq>r.seq&&m.seqc(m)&&d(m))},"shouldRerouteArrow"),R=l((r,e,a=0)=>{let o=r+Math.abs(r-e)/2;if(a>5)return o;if(G.every(h=>Math.abs(h-o)>=10))return G.push(o),o;let s=Math.abs(r-e);return R(r,e-s/5,a+1)},"findLane"),Ve=l((r,e,a,o)=>{let t=w.get(e.id),s=w.get(a.id);if(t===void 0||s===void 0)throw new Error(`Commit positions not found for commits ${e.id} and ${a.id}`);let h=Ue(e,a,t,s,o),d="",c="",m=0,p=0,f=b.get(a.branch)?.index;a.type===x.MERGE&&e.id!==a.parents[0]&&(f=b.get(e.branch)?.index);let i;if(h){d="A 10 10, 0, 0, 0,",c="A 10 10, 0, 0, 1,",m=10,p=10;let y=t.ys.x&&(d="A 20 20, 0, 0, 0,",c="A 20 20, 0, 0, 1,",m=20,p=20,a.type===x.MERGE&&e.id!==a.parents[0]?i=`M ${t.x} ${t.y} L ${t.x} ${s.y-m} ${c} ${t.x-p} ${s.y} L ${s.x} ${s.y}`:i=`M ${t.x} ${t.y} L ${s.x+m} ${t.y} ${d} ${s.x} ${t.y+p} L ${s.x} ${s.y}`),t.x===s.x&&(i=`M ${t.x} ${t.y} L ${s.x} ${s.y}`)):$==="BT"?(t.xs.x&&(d="A 20 20, 0, 0, 0,",c="A 20 20, 0, 0, 1,",m=20,p=20,a.type===x.MERGE&&e.id!==a.parents[0]?i=`M ${t.x} ${t.y} L ${t.x} ${s.y+m} ${d} ${t.x-p} ${s.y} L ${s.x} ${s.y}`:i=`M ${t.x} ${t.y} L ${s.x+m} ${t.y} ${c} ${s.x} ${t.y-p} L ${s.x} ${s.y}`),t.x===s.x&&(i=`M ${t.x} ${t.y} L ${s.x} ${s.y}`)):(t.ys.y&&(a.type===x.MERGE&&e.id!==a.parents[0]?i=`M ${t.x} ${t.y} L ${s.x-m} ${t.y} ${d} ${s.x} ${t.y-p} L ${s.x} ${s.y}`:i=`M ${t.x} ${t.y} L ${t.x} ${s.y+m} ${c} ${t.x+p} ${s.y} L ${s.x} ${s.y}`),t.y===s.y&&(i=`M ${t.x} ${t.y} L ${s.x} ${s.y}`));if(i===void 0)throw new Error("Line definition not found");r.append("path").attr("d",i).attr("class","arrow arrow"+f%L)},"drawArrow"),Je=l((r,e)=>{let a=r.append("g").attr("class","commit-arrows");[...e.keys()].forEach(o=>{let t=e.get(o);t.parents&&t.parents.length>0&&t.parents.forEach(s=>{Ve(a,e.get(s),t,e)})})},"drawArrows"),Xe=l((r,e,a)=>{let o=r.append("g");e.forEach((t,s)=>{let h=s%L,d=b.get(t.name)?.pos;if(d===void 0)throw new Error(`Position not found for branch ${t.name}`);let c=o.append("line");c.attr("x1",0),c.attr("y1",d),c.attr("x2",k),c.attr("y2",d),c.attr("class","branch branch"+h),$==="TB"?(c.attr("y1",q),c.attr("x1",d),c.attr("y2",k),c.attr("x2",d)):$==="BT"&&(c.attr("y1",k),c.attr("x1",d),c.attr("y2",q),c.attr("x2",d)),G.push(d);let m=t.name,p=he(m),f=o.insert("rect"),y=o.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+h);y.node().appendChild(p);let g=p.getBBox();f.attr("class","branchLabelBkg label"+h).attr("rx",4).attr("ry",4).attr("x",-g.width-4-(a.rotateCommitLabel===!0?30:0)).attr("y",-g.height/2+8).attr("width",g.width+18).attr("height",g.height+4),y.attr("transform","translate("+(-g.width-14-(a.rotateCommitLabel===!0?30:0))+", "+(d-g.height/2-1)+")"),$==="TB"?(f.attr("x",d-g.width/2-10).attr("y",0),y.attr("transform","translate("+(d-g.width/2-5)+", 0)")):$==="BT"?(f.attr("x",d-g.width/2-10).attr("y",k),y.attr("transform","translate("+(d-g.width/2-5)+", "+k+")")):f.attr("transform","translate(-19, "+(d-g.height/2)+")")})},"drawBranches"),Qe=l(function(r,e,a,o,t){return b.set(r,{pos:e,index:a}),e+=50+(t?40:0)+($==="TB"||$==="BT"?o.width/2:0),e},"setBranchPosition"),et=l(function(r,e,a,o){Ae(),u.debug("in gitgraph renderer",r+` -`,"id:",e,a);let t=o.db;if(!t.getConfig){u.error("getConfig method is not available on db");return}let s=t.getConfig(),h=s.rotateCommitLabel??!1;P=t.getCommits();let d=t.getBranchesAsObjArray();$=t.getDirection();let c=S(`[id="${e}"]`),m=0;d.forEach((p,f)=>{let i=he(p.name),y=c.append("g"),g=y.insert("g").attr("class","branchLabel"),O=g.insert("g").attr("class","label branch-label");O.node()?.appendChild(i);let D=i.getBBox();m=Qe(p.name,m,f,D,h),O.remove(),g.remove(),y.remove()}),oe(c,P,!1,s),s.showBranches&&Xe(c,d,s),Je(c,P),oe(c,P,!0,s),te.insertTitle(c,"gitTitleText",s.titleTopMargin??0,t.getDiagramTitle()),X(void 0,c,s.diagramPadding,s.useMaxWidth)},"draw"),tt={draw:et},rt=l(r=>` - .commit-id, - .commit-msg, - .branch-label { - fill: lightgrey; - color: lightgrey; - font-family: 'trebuchet ms', verdana, arial, sans-serif; - font-family: var(--mermaid-font-family); - } - ${[0,1,2,3,4,5,6,7].map(e=>` - .branch-label${e} { fill: ${r["gitBranchLabel"+e]}; } - .commit${e} { stroke: ${r["git"+e]}; fill: ${r["git"+e]}; } - .commit-highlight${e} { stroke: ${r["gitInv"+e]}; fill: ${r["gitInv"+e]}; } - .label${e} { fill: ${r["git"+e]}; } - .arrow${e} { stroke: ${r["git"+e]}; } - `).join(` -`)} - - .branch { - stroke-width: 1; - stroke: ${r.lineColor}; - stroke-dasharray: 2; - } - .commit-label { font-size: ${r.commitLabelFontSize}; fill: ${r.commitLabelColor};} - .commit-label-bkg { font-size: ${r.commitLabelFontSize}; fill: ${r.commitLabelBackground}; opacity: 0.5; } - .tag-label { font-size: ${r.tagLabelFontSize}; fill: ${r.tagLabelColor};} - .tag-label-bkg { fill: ${r.tagLabelBackground}; stroke: ${r.tagLabelBorder}; } - .tag-hole { fill: ${r.textColor}; } - - .commit-merge { - stroke: ${r.primaryColor}; - fill: ${r.primaryColor}; - } - .commit-reverse { - stroke: ${r.primaryColor}; - fill: ${r.primaryColor}; - stroke-width: 3; - } - .commit-highlight-outer { - } - .commit-highlight-inner { - stroke: ${r.primaryColor}; - fill: ${r.primaryColor}; - } - - .arrow { stroke-width: 8; stroke-linecap: round; fill: none} - .gitTitleText { - text-anchor: middle; - font-size: 18px; - fill: ${r.textColor}; - } -`,"getStyles"),at=rt,lt={parser:Ge,db:de,renderer:tt,styles:at};export{lt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-XULIXUQL.js b/src/google/adk/cli/browser/chunk-BWRTTESZ.js similarity index 91% rename from src/google/adk/cli/browser/chunk-XULIXUQL.js rename to src/google/adk/cli/browser/chunk-BWRTTESZ.js index bc72b77899..3fb1ffb8f3 100644 --- a/src/google/adk/cli/browser/chunk-XULIXUQL.js +++ b/src/google/adk/cli/browser/chunk-BWRTTESZ.js @@ -1 +1 @@ -import{a as n,b as s,c as i,d as l,e as f,f as o,g as d,n as m,o as c,q as p}from"./chunk-NALL4A3P.js";var u=class extends p{static{o(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},v=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,g=class extends c{static{o(this,"TreemapValueConverter")}runCustomConverter(r,e,t){if(r.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));if(r.name==="SEPARATOR")return e.substring(1,e.length-1);if(r.name==="STRING2")return e.substring(1,e.length-1);if(r.name==="INDENTATION")return e.length;if(r.name==="ClassDef"){if(typeof e!="string")return e;let a=v.exec(e);if(a)return{$type:"ClassDefStatement",className:a[1],styleText:a[2]||void 0}}}};function T(r){let e=r.validation.TreemapValidator,t=r.validation.ValidationRegistry;if(t){let a={Treemap:e.checkSingleRoot.bind(e)};t.register(a,e)}}o(T,"registerValidationChecks");var h=class{static{o(this,"TreemapValidator")}checkSingleRoot(r,e){let t;for(let a of r.TreemapRows)a.item&&(t===void 0&&a.indent===void 0?t=0:a.indent===void 0?e("error","Multiple root nodes are not allowed in a treemap.",{node:a,property:"item"}):t!==void 0&&t>=parseInt(a.indent,10)&&e("error","Multiple root nodes are not allowed in a treemap.",{node:a,property:"item"}))}},C={parser:{TokenBuilder:o(()=>new u,"TokenBuilder"),ValueConverter:o(()=>new g,"ValueConverter")},validation:{TreemapValidator:o(()=>new h,"TreemapValidator")}};function V(r=l){let e=i(s(r),d),t=i(n({shared:e}),m,C);return e.ServiceRegistry.register(t),T(t),{shared:e,Treemap:t}}o(V,"createTreemapServices");export{C as a,V as b}; +import{a as n,b as s,c as i,d as l,e as f,f as o,g as d,n as m,q as c,s as p}from"./chunk-7ZGKZ6HH.js";var u=class extends p{static{o(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},v=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,g=class extends c{static{o(this,"TreemapValueConverter")}runCustomConverter(r,e,t){if(r.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));if(r.name==="SEPARATOR")return e.substring(1,e.length-1);if(r.name==="STRING2")return e.substring(1,e.length-1);if(r.name==="INDENTATION")return e.length;if(r.name==="ClassDef"){if(typeof e!="string")return e;let a=v.exec(e);if(a)return{$type:"ClassDefStatement",className:a[1],styleText:a[2]||void 0}}}};function T(r){let e=r.validation.TreemapValidator,t=r.validation.ValidationRegistry;if(t){let a={Treemap:e.checkSingleRoot.bind(e)};t.register(a,e)}}o(T,"registerValidationChecks");var h=class{static{o(this,"TreemapValidator")}checkSingleRoot(r,e){let t;for(let a of r.TreemapRows)a.item&&(t===void 0&&a.indent===void 0?t=0:a.indent===void 0?e("error","Multiple root nodes are not allowed in a treemap.",{node:a,property:"item"}):t!==void 0&&t>=parseInt(a.indent,10)&&e("error","Multiple root nodes are not allowed in a treemap.",{node:a,property:"item"}))}},C={parser:{TokenBuilder:o(()=>new u,"TokenBuilder"),ValueConverter:o(()=>new g,"ValueConverter")},validation:{TreemapValidator:o(()=>new h,"TreemapValidator")}};function V(r=l){let e=i(s(r),d),t=i(n({shared:e}),m,C);return e.ServiceRegistry.register(t),T(t),{shared:e,Treemap:t}}o(V,"createTreemapServices");export{C as a,V as b}; diff --git a/src/google/adk/cli/browser/chunk-DGO6DRJY.js b/src/google/adk/cli/browser/chunk-DGO6DRJY.js new file mode 100644 index 0000000000..0000f54931 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-DGO6DRJY.js @@ -0,0 +1 @@ +import{a as e,b as r}from"./chunk-5JNRF4JL.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{e as WardleyModule,r as createWardleyServices}; diff --git a/src/google/adk/cli/browser/chunk-DIR2LWLP.js b/src/google/adk/cli/browser/chunk-DIR2LWLP.js deleted file mode 100644 index 9529d256b9..0000000000 --- a/src/google/adk/cli/browser/chunk-DIR2LWLP.js +++ /dev/null @@ -1 +0,0 @@ -import{a as o,b as e}from"./chunk-3NJNOY56.js";import"./chunk-NALL4A3P.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";export{o as InfoModule,e as createInfoServices}; diff --git a/src/google/adk/cli/browser/chunk-DLZFLWPV.js b/src/google/adk/cli/browser/chunk-DLZFLWPV.js new file mode 100644 index 0000000000..247d875037 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-DLZFLWPV.js @@ -0,0 +1,10 @@ +import{a as $}from"./chunk-DMWOYWYQ.js";import{a as X}from"./chunk-SRCUB3EX.js";import{a as A}from"./chunk-4R6SYGKS.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{a as D}from"./chunk-PDRDFWTH.js";import{C as u}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as x,N as C,R as B,S as T,T as y,U as V,V as N,W as S,X as _,r as k}from"./chunk-37QI3DOO.js";import{g as o,i as w}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{j as f}from"./chunk-RMXJBC7V.js";var l=new A(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",children:[]}]})),H=o(()=>{l.reset(),B()},"clear"),I=o(()=>l.records.stack[0],"getRoot"),L=o(()=>l.records.cnt,"getCount"),R=k.treeView,W=o(()=>u(R,x().treeView),"getConfig"),E=o((e,t)=>{for(;e<=l.records.stack[l.records.stack.length-1].level;)l.records.stack.pop();let r={id:l.records.cnt++,level:e,name:t,children:[]};l.records.stack[l.records.stack.length-1].children.push(r),l.records.stack.push(r)},"addNode"),M={clear:H,addNode:E,getRoot:I,getCount:L,getConfig:W,getAccTitle:y,getAccDescription:N,getDiagramTitle:_,setAccDescription:V,setAccTitle:T,setDiagramTitle:S},b=M,F=o(e=>{$(e,b),e.nodes.map(t=>b.addNode(t.indent?parseInt(t.indent):0,t.name))},"populate"),Y={parse:o(e=>f(null,null,function*(){let t=yield X("treeView",e);w.debug(t),F(t)}),"parse")},j=o((e,t,r,n,s)=>{let c=n.append("text").text(r.name).attr("dominant-baseline","middle").attr("class","treeView-node-label"),{height:g,width:a}=c.node().getBBox(),d=g+s.paddingY*2,i=a+s.paddingX*2;c.attr("x",e+s.paddingX),c.attr("y",t+d/2),r.BBox={x:e,y:t,width:i,height:d}},"positionLabel"),z=o((e,t,r,n,s,c)=>e.append("line").attr("x1",t).attr("y1",r).attr("x2",n).attr("y2",s).attr("stroke-width",c).attr("class","treeView-node-line"),"positionLine"),q=o((e,t,r)=>{let n=0,s=0,c=o((a,d,i,h)=>{let m=h*(i.rowIndent+i.paddingX);j(m,n,d,a,i);let{height:p,width:v}=d.BBox;z(a,m-i.rowIndent,n+p/2,m,n+p/2,i.lineThickness),s=Math.max(s,m+v),n+=p},"drawNode"),g=o((a,d=0)=>{c(e,a,r,d),a.children.forEach(p=>{g(p,d+1)});let{x:i,y:h,height:m}=a.BBox;if(a.children.length){let{y:p,height:v}=a.children[a.children.length-1].BBox;z(e,i+r.paddingX,h+m,i+r.paddingX,p+v/2+r.lineThickness/2,r.lineThickness)}},"processNode");return g(t),{totalHeight:n,totalWidth:s}},"drawTree"),G=o((e,t,r,n)=>{w.debug(`Rendering treeView diagram +`+e);let s=n.db,c=s.getRoot(),g=s.getConfig(),a=D(t),d=a.append("g");d.attr("class","tree-view");let{totalHeight:i,totalWidth:h}=q(d,c,g);a.attr("viewBox",`-${g.lineThickness/2} 0 ${h} ${i}`),C(a,i,h,g.useMaxWidth)},"draw"),J={draw:G},K=J,O={labelFontSize:"16px",labelColor:"black",lineColor:"black"},P=o(({treeView:e})=>{let{labelFontSize:t,labelColor:r,lineColor:n}=u(O,e);return` + .treeView-node-label { + font-size: ${t}; + fill: ${r}; + } + .treeView-node-line { + stroke: ${n}; + } + `},"styles"),Q=P,ne={db:b,renderer:K,parser:Y,styles:Q};export{ne as diagram}; diff --git a/src/google/adk/cli/browser/chunk-LA76DWZL.js b/src/google/adk/cli/browser/chunk-DS3WV6GO.js similarity index 65% rename from src/google/adk/cli/browser/chunk-LA76DWZL.js rename to src/google/adk/cli/browser/chunk-DS3WV6GO.js index d2277db602..4225ff6e03 100644 --- a/src/google/adk/cli/browser/chunk-LA76DWZL.js +++ b/src/google/adk/cli/browser/chunk-DS3WV6GO.js @@ -1,9 +1,9 @@ -import{a as dt}from"./chunk-TPDTRWWV.js";import{a as ft}from"./chunk-PRKFGJVH.js";import{k as yt}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{M as nt,N as at,R as rt,S as lt,T as ot,U as ht,V as ct,W as Q,X as ut,Y as J}from"./chunk-QFMJV7VH.js";import{g as l}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";var et=(function(){var t=l(function(M,e,s,i){for(s=s||{},i=M.length;i--;s[M[i]]=e);return s},"o"),d=[1,4],a=[1,14],r=[1,12],o=[1,13],y=[6,7,8],p=[1,20],u=[1,18],w=[1,19],c=[6,7,11],m=[1,6,13,14],k=[1,23],_=[1,24],x=[1,6,7,11,13,14],N={trace:l(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ishikawa:4,spaceLines:5,SPACELINE:6,NL:7,ISHIKAWA:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,TEXT:14,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"ISHIKAWA",11:"EOF",13:"SPACELIST",14:"TEXT"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,1],[12,1],[12,1]],performAction:l(function(e,s,i,h,f,n,v){var b=n.length-1;switch(f){case 6:case 7:return h;case 15:h.addNode(n[b-1].length,n[b].trim());break;case 16:h.addNode(0,n[b].trim());break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:d},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:d},{6:a,7:[1,10],9:9,12:11,13:r,14:o},t(y,[2,3]),{1:[2,2]},t(y,[2,4]),t(y,[2,5]),{1:[2,6],6:a,12:15,13:r,14:o},{6:a,9:16,12:11,13:r,14:o},{6:p,7:u,10:17,11:w},t(c,[2,18],{14:[1,21]}),t(c,[2,16]),t(c,[2,17]),{6:p,7:u,10:22,11:w},{1:[2,7],6:a,12:15,13:r,14:o},t(m,[2,14],{7:k,11:_}),t(x,[2,8]),t(x,[2,9]),t(x,[2,10]),t(c,[2,15]),t(m,[2,13],{7:k,11:_}),t(x,[2,11]),t(x,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:l(function(e,s){if(s.recoverable)this.trace(e);else{var i=new Error(e);throw i.hash=s,i}},"parseError"),parse:l(function(e){var s=this,i=[0],h=[],f=[null],n=[],v=this.table,b="",I=0,S=0,A=0,L=2,O=1,Z=n.slice.call(arguments,1),g=Object.create(this.lexer),E={yy:{}};for(var V in this.yy)Object.prototype.hasOwnProperty.call(this.yy,V)&&(E.yy[V]=this.yy[V]);g.setInput(e,E.yy),E.yy.lexer=g,E.yy.parser=this,typeof g.yylloc>"u"&&(g.yylloc={});var R=g.yylloc;n.push(R);var X=g.options&&g.options.ranges;typeof E.yy.parseError=="function"?this.parseError=E.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(P){i.length=i.length-2*P,f.length=f.length-P,n.length=n.length-P}l(xt,"popStack");function it(){var P;return P=h.pop()||g.lex()||O,typeof P!="number"&&(P instanceof Array&&(h=P,P=h.pop()),P=s.symbols_[P]||P),P}l(it,"lex");for(var T,Y,W,B,Vt,K,F={},H,C,st,G;;){if(W=i[i.length-1],this.defaultActions[W]?B=this.defaultActions[W]:((T===null||typeof T>"u")&&(T=it()),B=v[W]&&v[W][T]),typeof B>"u"||!B.length||!B[0]){var q="";G=[];for(H in v[W])this.terminals_[H]&&H>L&&G.push("'"+this.terminals_[H]+"'");g.showPosition?q="Parse error on line "+(I+1)+`: +import{a as dt}from"./chunk-PDRDFWTH.js";import{a as ft}from"./chunk-PRKFGJVH.js";import{B as yt}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{M as nt,N as at,R as rt,S as lt,T as ot,U as ht,V as ct,W as Q,X as ut,Y as J}from"./chunk-37QI3DOO.js";import{g as l}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";var et=(function(){var t=l(function(M,e,s,i){for(s=s||{},i=M.length;i--;s[M[i]]=e);return s},"o"),d=[1,4],a=[1,14],r=[1,12],o=[1,13],y=[6,7,8],p=[1,20],u=[1,18],w=[1,19],c=[6,7,11],m=[1,6,13,14],k=[1,23],_=[1,24],x=[1,6,7,11,13,14],N={trace:l(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ishikawa:4,spaceLines:5,SPACELINE:6,NL:7,ISHIKAWA:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,TEXT:14,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"ISHIKAWA",11:"EOF",13:"SPACELIST",14:"TEXT"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,1],[12,1],[12,1]],performAction:l(function(e,s,i,h,f,n,v){var b=n.length-1;switch(f){case 6:case 7:return h;case 15:h.addNode(n[b-1].length,n[b].trim());break;case 16:h.addNode(0,n[b].trim());break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:d},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:d},{6:a,7:[1,10],9:9,12:11,13:r,14:o},t(y,[2,3]),{1:[2,2]},t(y,[2,4]),t(y,[2,5]),{1:[2,6],6:a,12:15,13:r,14:o},{6:a,9:16,12:11,13:r,14:o},{6:p,7:u,10:17,11:w},t(c,[2,18],{14:[1,21]}),t(c,[2,16]),t(c,[2,17]),{6:p,7:u,10:22,11:w},{1:[2,7],6:a,12:15,13:r,14:o},t(m,[2,14],{7:k,11:_}),t(x,[2,8]),t(x,[2,9]),t(x,[2,10]),t(c,[2,15]),t(m,[2,13],{7:k,11:_}),t(x,[2,11]),t(x,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:l(function(e,s){if(s.recoverable)this.trace(e);else{var i=new Error(e);throw i.hash=s,i}},"parseError"),parse:l(function(e){var s=this,i=[0],h=[],f=[null],n=[],v=this.table,b="",I=0,S=0,A=0,L=2,O=1,Z=n.slice.call(arguments,1),g=Object.create(this.lexer),E={yy:{}};for(var V in this.yy)Object.prototype.hasOwnProperty.call(this.yy,V)&&(E.yy[V]=this.yy[V]);g.setInput(e,E.yy),E.yy.lexer=g,E.yy.parser=this,typeof g.yylloc>"u"&&(g.yylloc={});var R=g.yylloc;n.push(R);var X=g.options&&g.options.ranges;typeof E.yy.parseError=="function"?this.parseError=E.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xt(P){i.length=i.length-2*P,f.length=f.length-P,n.length=n.length-P}l(xt,"popStack");function it(){var P;return P=h.pop()||g.lex()||O,typeof P!="number"&&(P instanceof Array&&(h=P,P=h.pop()),P=s.symbols_[P]||P),P}l(it,"lex");for(var T,Y,W,B,Vt,K,F={},H,C,st,G;;){if(W=i[i.length-1],this.defaultActions[W]?B=this.defaultActions[W]:((T===null||typeof T>"u")&&(T=it()),B=v[W]&&v[W][T]),typeof B>"u"||!B.length||!B[0]){var q="";G=[];for(H in v[W])this.terminals_[H]&&H>L&&G.push("'"+this.terminals_[H]+"'");g.showPosition?q="Parse error on line "+(I+1)+`: `+g.showPosition()+` Expecting `+G.join(", ")+", got '"+(this.terminals_[T]||T)+"'":q="Parse error on line "+(I+1)+": Unexpected "+(T==O?"end of input":"'"+(this.terminals_[T]||T)+"'"),this.parseError(q,{text:g.match,token:this.terminals_[T]||T,line:g.yylineno,loc:R,expected:G})}if(B[0]instanceof Array&&B.length>1)throw new Error("Parse Error: multiple actions possible at state: "+W+", token: "+T);switch(B[0]){case 1:i.push(T),f.push(g.yytext),n.push(g.yylloc),i.push(B[1]),T=null,Y?(T=Y,Y=null):(S=g.yyleng,b=g.yytext,I=g.yylineno,R=g.yylloc,A>0&&A--);break;case 2:if(C=this.productions_[B[1]][1],F.$=f[f.length-C],F._$={first_line:n[n.length-(C||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(C||1)].first_column,last_column:n[n.length-1].last_column},X&&(F._$.range=[n[n.length-(C||1)].range[0],n[n.length-1].range[1]]),K=this.performAction.apply(F,[b,S,I,E.yy,B[1],f,n].concat(Z)),typeof K<"u")return K;C&&(i=i.slice(0,-1*C*2),f=f.slice(0,-1*C),n=n.slice(0,-1*C)),i.push(this.productions_[B[1]][0]),f.push(F.$),n.push(F._$),st=v[i[i.length-2]][i[i.length-1]],i.push(st);break;case 3:return!0}}return!0},"parse")},D=(function(){var M={EOF:1,parseError:l(function(s,i){if(this.yy.parser)this.yy.parser.parseError(s,i);else throw new Error(s)},"parseError"),setInput:l(function(e,s){return this.yy=s||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:l(function(){var e=this._input[0];this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e;var s=e.match(/(?:\r\n?|\n).*/g);return s?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},"input"),unput:l(function(e){var s=e.length,i=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-s),this.offset-=s;var h=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),i.length-1&&(this.yylineno-=i.length-1);var f=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:i?(i.length===h.length?this.yylloc.first_column:0)+h[h.length-i.length].length-i[0].length:this.yylloc.first_column-s},this.options.ranges&&(this.yylloc.range=[f[0],f[0]+this.yyleng-s]),this.yyleng=this.yytext.length,this},"unput"),more:l(function(){return this._more=!0,this},"more"),reject:l(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:l(function(e){this.unput(this.match.slice(e))},"less"),pastInput:l(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?"...":"")+e.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:l(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:l(function(){var e=this.pastInput(),s=new Array(e.length+1).join("-");return e+this.upcomingInput()+` `+s+"^"},"showPosition"),test_match:l(function(e,s){var i,h,f;if(this.options.backtrack_lexer&&(f={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(f.yylloc.range=this.yylloc.range.slice(0))),h=e[0].match(/(?:\r\n?|\n).*/g),h&&(this.yylineno+=h.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:h?h[h.length-1].length-h[h.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+e[0].length},this.yytext+=e[0],this.match+=e[0],this.matches=e,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(e[0].length),this.matched+=e[0],i=this.performAction.call(this,this.yy,this,s,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack){for(var n in f)this[n]=f[n];return!1}return!1},"test_match"),next:l(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var e,s,i,h;this._more||(this.yytext="",this.match="");for(var f=this._currentRules(),n=0;ns[0].length)){if(s=i,h=n,this.options.backtrack_lexer){if(e=this.test_match(i,f[n]),e!==!1)return e;if(this._backtrack){s=!1;continue}else return!1}else if(!this.options.flex)break}return s?(e=this.test_match(s,f[h]),e!==!1?e:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:l(function(){var s=this.next();return s||this.lex()},"lex"),begin:l(function(s){this.conditionStack.push(s)},"begin"),popState:l(function(){var s=this.conditionStack.length-1;return s>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:l(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:l(function(s){return s=this.conditionStack.length-1-Math.abs(s||0),s>=0?this.conditionStack[s]:"INITIAL"},"topState"),pushState:l(function(s){this.begin(s)},"pushState"),stateStackSize:l(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:l(function(s,i,h,f){var n=f;switch(h){case 0:return 6;case 1:return 8;case 2:return 8;case 3:return 6;case 4:return 7;case 5:return 13;case 6:return 14;case 7:return 11}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:ishikawa-beta\b)/i,/^(?:ishikawa\b)/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:[^\n]+)/i,/^(?:$)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return M})();N.lexer=D;function $(){this.yy={}}return l($,"Parser"),$.prototype=N,N.Parser=$,new $})();et.parser=et;var vt=et,St=class{constructor(){this.stack=[],this.clear=this.clear.bind(this),this.addNode=this.addNode.bind(this),this.getRoot=this.getRoot.bind(this)}static{l(this,"IshikawaDB")}clear(){this.root=void 0,this.stack=[],this.baseLevel=void 0,rt()}getRoot(){return this.root}addNode(t,d){let a=nt.sanitizeText(d,J());if(!this.root){this.baseLevel=t,this.root={text:a,children:[]},this.stack=[{level:0,node:this.root}],Q(a);return}let r=t-(this.baseLevel??0);for(r<=0&&(r=1);this.stack.length>1&&this.stack[this.stack.length-1].level>=r;)this.stack.pop();let o=this.stack[this.stack.length-1].node,y={text:a,children:[]};o.children.push(y),this.stack.push({level:r,node:y})}getAccTitle(){return ot()}setAccTitle(t){lt(t)}getAccDescription(){return ct()}setAccDescription(t){ht(t)}getDiagramTitle(){return ut()}setDiagramTitle(t){Q(t)}},Et=14,j=250,$t=30,At=60,It=5,bt=82*Math.PI/180,pt=Math.cos(bt),gt=Math.sin(bt),kt=l((t,d,a)=>{let r=t.node().getBBox(),o=r.width+d*2,y=r.height+d*2;at(t,y,o,a),t.attr("viewBox",`${r.x-d} ${r.y-d} ${o} ${y}`)},"applyPaddedViewBox"),Lt=l((t,d,a,r)=>{let y=r.db.getRoot();if(!y)return;let p=J(),{look:u,handDrawnSeed:w,themeVariables:c}=p,m=yt(p.fontSize)[0]??Et,k=u==="handDrawn",_=y.children??[],x=p.ishikawa?.diagramPadding??20,N=p.ishikawa?.useMaxWidth??!1,D=dt(d),$=D.append("g").attr("class","ishikawa"),M=k?ft.svg(D.node()):void 0,e=M?{roughSvg:M,seed:w??0,lineColor:c?.lineColor??"#333",fillColor:c?.mainBkg??"#fff"}:void 0,s=`ishikawa-arrow-${d}`;k||$.append("defs").append("marker").attr("id",s).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 Z").attr("class","ishikawa-arrow");let i=0,h=j,f=k?void 0:z($,i,h,i,h,"ishikawa-spine");if(Tt($,i,h,y.text,m,e),!_.length){k&&z($,i,h,i,h,"ishikawa-spine",e),kt(D,x,N);return}i-=20;let n=_.filter((g,E)=>E%2===0),v=_.filter((g,E)=>E%2===1),b=mt(n),I=mt(v),S=b.total+I.total,A=j,L=j;if(S>0){let g=j*2,E=j*.3;A=Math.max(E,g*(b.total/S)),L=Math.max(E,g*(I.total/S))}let O=m*2;A=Math.max(A,b.max*O),L=Math.max(L,I.max*O),h=Math.max(A,j),f&&f.attr("y1",h).attr("y2",h),$.select(".ishikawa-head-group").attr("transform",`translate(0,${h})`);let Z=Math.ceil(_.length/2);for(let g=0;gMath.min(V,R.getBBox().x),1/0)}if(k)z($,i,h,0,h,"ishikawa-spine",e);else{f.attr("x1",i);let g=`url(#${s})`;$.selectAll("line.ishikawa-branch, line.ishikawa-sub-branch").attr("marker-start",g)}kt(D,x,N)},"draw"),mt=l(t=>{let d=l(a=>a.children.reduce((r,o)=>r+1+d(o),0),"countDescendants");return t.reduce((a,r)=>{let o=d(r);return a.total+=o,a.max=Math.max(a.max,o),a},{total:0,max:0})},"sideStats"),Tt=l((t,d,a,r,o,y)=>{let p=Math.max(6,Math.floor(110/(o*.6))),u=t.append("g").attr("class","ishikawa-head-group").attr("transform",`translate(${d},${a})`),w=U(u,_t(r,p),0,0,"ishikawa-head-label","start",o),c=w.node().getBBox(),m=Math.max(60,c.width+6),k=Math.max(40,c.height*2+40),_=`M 0 ${-k/2} L 0 ${k/2} Q ${m*2.4} 0 0 ${-k/2} Z`;if(y){let x=y.roughSvg.path(_,{roughness:1.5,seed:y.seed,fill:y.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:y.lineColor,strokeWidth:2});u.insert(()=>x,":first-child").attr("class","ishikawa-head")}else u.insert("path",":first-child").attr("class","ishikawa-head").attr("d",_);w.attr("transform",`translate(${(m-c.width)/2-c.x+3},${-c.y-c.height/2})`)},"drawHead"),Mt=l((t,d)=>{let a=[],r=[],o=l((y,p,u)=>{let w=d===-1?[...y].reverse():y;for(let c of w){let m=a.length,k=c.children??[];a.push({depth:u,text:_t(c.text,15),parentIndex:p,childCount:k.length}),u%2===0?(r.push(m),k.length&&o(k,m,u+1)):(k.length&&o(k,m,u+1),r.push(m))}},"walk");return o(t,-1,2),{entries:a,yOrder:r}},"flattenTree"),Pt=l((t,d,a,r,o,y,p)=>{let u=t.append("g").attr("class","ishikawa-label-group"),c=U(u,d,a,r+11*o,"ishikawa-label cause","middle",y).node().getBBox();if(p){let m=p.roughSvg.rectangle(c.x-20,c.y-2,c.width+40,c.height+4,{roughness:1.5,seed:p.seed,fill:p.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:p.lineColor,strokeWidth:2});u.insert(()=>m,":first-child").attr("class","ishikawa-label-box")}else u.insert("rect",":first-child").attr("class","ishikawa-label-box").attr("x",c.x-20).attr("y",c.y-2).attr("width",c.width+40).attr("height",c.height+4)},"drawCauseLabel"),tt=l((t,d,a,r,o,y)=>{let p=Math.sqrt(r*r+o*o);if(p===0)return;let u=r/p,w=o/p,c=6,m=-w*c,k=u*c,_=d,x=a,N=`M ${_} ${x} L ${_-u*c*2+m} ${x-w*c*2+k} L ${_-u*c*2-m} ${x-w*c*2-k} Z`,D=y.roughSvg.path(N,{roughness:1,seed:y.seed,fill:y.lineColor,fillStyle:"solid",stroke:y.lineColor,strokeWidth:1});t.append(()=>D)},"drawArrowMarker"),Bt=l((t,d,a,r,o,y,p,u)=>{let w=d.children??[],c=y*(w.length?1:.2),m=-pt*c,k=gt*c*o,_=a+m,x=r+k;if(z(t,a,r,_,x,"ishikawa-branch",u),u&&tt(t,a,r,a-_,r-x,u),Pt(t,d.text,_,x,o,p,u),!w.length)return;let{entries:N,yOrder:D}=Mt(w,o),$=N.length,M=new Array($);for(let[f,n]of D.entries())M[n]=r+k*((f+1)/($+1));let e=new Map;e.set(-1,{x0:a,y0:r,x1:_,y1:x,childCount:w.length,childrenDrawn:0});let s=-pt,i=gt*o,h=o<0?"ishikawa-label up":"ishikawa-label down";for(let[f,n]of N.entries()){let v=M[f],b=e.get(n.parentIndex),I=t.append("g").attr("class","ishikawa-sub-group"),S=0,A=0,L=0;if(n.depth%2===0){let O=b.y1-b.y0;S=wt(b.x0,b.x1,O?(v-b.y0)/O:.5),A=v,L=S-(n.childCount>0?At+n.childCount*It:$t),z(I,S,v,L,v,"ishikawa-sub-branch",u),u&&tt(I,S,v,1,0,u),U(I,n.text,L,v,"ishikawa-label align","end",p)}else{let O=b.childrenDrawn++;S=wt(b.x0,b.x1,(b.childCount-O)/(b.childCount+1)),A=b.y0,L=S+s*((v-A)/i),z(I,S,A,L,v,"ishikawa-sub-branch",u),u&&tt(I,S,A,S-L,A-v,u),U(I,n.text,L,v,h,"end",p)}n.childCount>0&&e.set(f,{x0:S,y0:A,x1:L,y1:v,childCount:n.childCount,childrenDrawn:0})}},"drawBranch"),Nt=l(t=>t.split(/|\n/),"splitLines"),_t=l((t,d)=>{if(t.length<=d)return t;let a=[];for(let r of t.split(/\s+/)){let o=a.length-1;o>=0&&a[o].length+1+r.length<=d?a[o]+=" "+r:a.push(r)}return a.join(` +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:l(function(){var s=this.next();return s||this.lex()},"lex"),begin:l(function(s){this.conditionStack.push(s)},"begin"),popState:l(function(){var s=this.conditionStack.length-1;return s>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:l(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:l(function(s){return s=this.conditionStack.length-1-Math.abs(s||0),s>=0?this.conditionStack[s]:"INITIAL"},"topState"),pushState:l(function(s){this.begin(s)},"pushState"),stateStackSize:l(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:l(function(s,i,h,f){var n=f;switch(h){case 0:return 6;case 1:return 8;case 2:return 8;case 3:return 6;case 4:return 7;case 5:return 13;case 6:return 14;case 7:return 11}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:ishikawa-beta\b)/i,/^(?:ishikawa\b)/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:[^\n]+)/i,/^(?:$)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return M})();N.lexer=D;function $(){this.yy={}}return l($,"Parser"),$.prototype=N,N.Parser=$,new $})();et.parser=et;var vt=et,St=class{constructor(){this.stack=[],this.clear=this.clear.bind(this),this.addNode=this.addNode.bind(this),this.getRoot=this.getRoot.bind(this)}static{l(this,"IshikawaDB")}clear(){this.root=void 0,this.stack=[],this.baseLevel=void 0,rt()}getRoot(){return this.root}addNode(t,d){let a=nt.sanitizeText(d,J());if(!this.root){this.root={text:a,children:[]},this.stack=[{level:0,node:this.root}],Q(a);return}this.baseLevel??=t;let r=t-this.baseLevel+1;for(r<=0&&(r=1);this.stack.length>1&&this.stack[this.stack.length-1].level>=r;)this.stack.pop();let o=this.stack[this.stack.length-1].node,y={text:a,children:[]};o.children.push(y),this.stack.push({level:r,node:y})}getAccTitle(){return ot()}setAccTitle(t){lt(t)}getAccDescription(){return ct()}setAccDescription(t){ht(t)}getDiagramTitle(){return ut()}setDiagramTitle(t){Q(t)}},Et=14,j=250,$t=30,At=60,It=5,bt=82*Math.PI/180,pt=Math.cos(bt),gt=Math.sin(bt),kt=l((t,d,a)=>{let r=t.node().getBBox(),o=r.width+d*2,y=r.height+d*2;at(t,y,o,a),t.attr("viewBox",`${r.x-d} ${r.y-d} ${o} ${y}`)},"applyPaddedViewBox"),Lt=l((t,d,a,r)=>{let y=r.db.getRoot();if(!y)return;let p=J(),{look:u,handDrawnSeed:w,themeVariables:c}=p,m=yt(p.fontSize)[0]??Et,k=u==="handDrawn",_=y.children??[],x=p.ishikawa?.diagramPadding??20,N=p.ishikawa?.useMaxWidth??!1,D=dt(d),$=D.append("g").attr("class","ishikawa"),M=k?ft.svg(D.node()):void 0,e=M?{roughSvg:M,seed:w??0,lineColor:c?.lineColor??"#333",fillColor:c?.mainBkg??"#fff"}:void 0,s=`ishikawa-arrow-${d}`;k||$.append("defs").append("marker").attr("id",s).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 Z").attr("class","ishikawa-arrow");let i=0,h=j,f=k?void 0:z($,i,h,i,h,"ishikawa-spine");if(Tt($,i,h,y.text,m,e),!_.length){k&&z($,i,h,i,h,"ishikawa-spine",e),kt(D,x,N);return}i-=20;let n=_.filter((g,E)=>E%2===0),v=_.filter((g,E)=>E%2===1),b=mt(n),I=mt(v),S=b.total+I.total,A=j,L=j;if(S>0){let g=j*2,E=j*.3;A=Math.max(E,g*(b.total/S)),L=Math.max(E,g*(I.total/S))}let O=m*2;A=Math.max(A,b.max*O),L=Math.max(L,I.max*O),h=Math.max(A,j),f&&f.attr("y1",h).attr("y2",h),$.select(".ishikawa-head-group").attr("transform",`translate(0,${h})`);let Z=Math.ceil(_.length/2);for(let g=0;gMath.min(V,R.getBBox().x),1/0)}if(k)z($,i,h,0,h,"ishikawa-spine",e);else{f.attr("x1",i);let g=`url(#${s})`;$.selectAll("line.ishikawa-branch, line.ishikawa-sub-branch").attr("marker-start",g)}kt(D,x,N)},"draw"),mt=l(t=>{let d=l(a=>a.children.reduce((r,o)=>r+1+d(o),0),"countDescendants");return t.reduce((a,r)=>{let o=d(r);return a.total+=o,a.max=Math.max(a.max,o),a},{total:0,max:0})},"sideStats"),Tt=l((t,d,a,r,o,y)=>{let p=Math.max(6,Math.floor(110/(o*.6))),u=t.append("g").attr("class","ishikawa-head-group").attr("transform",`translate(${d},${a})`),w=U(u,_t(r,p),0,0,"ishikawa-head-label","start",o),c=w.node().getBBox(),m=Math.max(60,c.width+6),k=Math.max(40,c.height*2+40),_=`M 0 ${-k/2} L 0 ${k/2} Q ${m*2.4} 0 0 ${-k/2} Z`;if(y){let x=y.roughSvg.path(_,{roughness:1.5,seed:y.seed,fill:y.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:y.lineColor,strokeWidth:2});u.insert(()=>x,":first-child").attr("class","ishikawa-head")}else u.insert("path",":first-child").attr("class","ishikawa-head").attr("d",_);w.attr("transform",`translate(${(m-c.width)/2-c.x+3},${-c.y-c.height/2})`)},"drawHead"),Mt=l((t,d)=>{let a=[],r=[],o=l((y,p,u)=>{let w=d===-1?[...y].reverse():y;for(let c of w){let m=a.length,k=c.children??[];a.push({depth:u,text:_t(c.text,15),parentIndex:p,childCount:k.length}),u%2===0?(r.push(m),k.length&&o(k,m,u+1)):(k.length&&o(k,m,u+1),r.push(m))}},"walk");return o(t,-1,2),{entries:a,yOrder:r}},"flattenTree"),Pt=l((t,d,a,r,o,y,p)=>{let u=t.append("g").attr("class","ishikawa-label-group"),c=U(u,d,a,r+11*o,"ishikawa-label cause","middle",y).node().getBBox();if(p){let m=p.roughSvg.rectangle(c.x-20,c.y-2,c.width+40,c.height+4,{roughness:1.5,seed:p.seed,fill:p.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:p.lineColor,strokeWidth:2});u.insert(()=>m,":first-child").attr("class","ishikawa-label-box")}else u.insert("rect",":first-child").attr("class","ishikawa-label-box").attr("x",c.x-20).attr("y",c.y-2).attr("width",c.width+40).attr("height",c.height+4)},"drawCauseLabel"),tt=l((t,d,a,r,o,y)=>{let p=Math.sqrt(r*r+o*o);if(p===0)return;let u=r/p,w=o/p,c=6,m=-w*c,k=u*c,_=d,x=a,N=`M ${_} ${x} L ${_-u*c*2+m} ${x-w*c*2+k} L ${_-u*c*2-m} ${x-w*c*2-k} Z`,D=y.roughSvg.path(N,{roughness:1,seed:y.seed,fill:y.lineColor,fillStyle:"solid",stroke:y.lineColor,strokeWidth:1});t.append(()=>D)},"drawArrowMarker"),Bt=l((t,d,a,r,o,y,p,u)=>{let w=d.children??[],c=y*(w.length?1:.2),m=-pt*c,k=gt*c*o,_=a+m,x=r+k;if(z(t,a,r,_,x,"ishikawa-branch",u),u&&tt(t,a,r,a-_,r-x,u),Pt(t,d.text,_,x,o,p,u),!w.length)return;let{entries:N,yOrder:D}=Mt(w,o),$=N.length,M=new Array($);for(let[f,n]of D.entries())M[n]=r+k*((f+1)/($+1));let e=new Map;e.set(-1,{x0:a,y0:r,x1:_,y1:x,childCount:w.length,childrenDrawn:0});let s=-pt,i=gt*o,h=o<0?"ishikawa-label up":"ishikawa-label down";for(let[f,n]of N.entries()){let v=M[f],b=e.get(n.parentIndex),I=t.append("g").attr("class","ishikawa-sub-group"),S=0,A=0,L=0;if(n.depth%2===0){let O=b.y1-b.y0;S=wt(b.x0,b.x1,O?(v-b.y0)/O:.5),A=v,L=S-(n.childCount>0?At+n.childCount*It:$t),z(I,S,v,L,v,"ishikawa-sub-branch",u),u&&tt(I,S,v,1,0,u),U(I,n.text,L,v,"ishikawa-label align","end",p)}else{let O=b.childrenDrawn++;S=wt(b.x0,b.x1,(b.childCount-O)/(b.childCount+1)),A=b.y0,L=S+s*((v-A)/i),z(I,S,A,L,v,"ishikawa-sub-branch",u),u&&tt(I,S,A,S-L,A-v,u),U(I,n.text,L,v,h,"end",p)}n.childCount>0&&e.set(f,{x0:S,y0:A,x1:L,y1:v,childCount:n.childCount,childrenDrawn:0})}},"drawBranch"),Nt=l(t=>t.split(/|\n/),"splitLines"),_t=l((t,d)=>{if(t.length<=d)return t;let a=[];for(let r of t.split(/\s+/)){let o=a.length-1;o>=0&&a[o].length+1+r.length<=d?a[o]+=" "+r:a.push(r)}return a.join(` `)},"wrapText"),U=l((t,d,a,r,o,y,p)=>{let u=Nt(d),w=p*1.05,c=t.append("text").attr("class",o).attr("text-anchor",y).attr("x",a).attr("y",r-(u.length-1)*w/2);for(let[m,k]of u.entries())c.append("tspan").attr("x",a).attr("dy",m===0?0:w).text(k);return c},"drawMultilineText"),wt=l((t,d,a)=>t+(d-t)*a,"lerp"),z=l((t,d,a,r,o,y,p)=>{if(p){let u=p.roughSvg.line(d,a,r,o,{roughness:1.5,seed:p.seed,stroke:p.lineColor,strokeWidth:2});t.append(()=>u).attr("class",y);return}return t.append("line").attr("class",y).attr("x1",d).attr("y1",a).attr("x2",r).attr("y2",o)},"drawLine"),Dt={draw:Lt},Ot=l(t=>` .ishikawa .ishikawa-spine, .ishikawa .ishikawa-branch, diff --git a/src/google/adk/cli/browser/chunk-WR6HISGZ.js b/src/google/adk/cli/browser/chunk-DZQRYCWR.js similarity index 78% rename from src/google/adk/cli/browser/chunk-WR6HISGZ.js rename to src/google/adk/cli/browser/chunk-DZQRYCWR.js index 7aae439561..795e50b41d 100644 --- a/src/google/adk/cli/browser/chunk-WR6HISGZ.js +++ b/src/google/adk/cli/browser/chunk-DZQRYCWR.js @@ -1 +1 @@ -import{a as o,b as n,c as i,d as s,e as m,f as e,g as u,l as d,o as c,q as l}from"./chunk-NALL4A3P.js";var v=class extends l{static{e(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},C=class extends c{static{e(this,"PieValueConverter")}runCustomConverter(t,r,a){if(t.name==="PIE_SECTION_LABEL")return r.replace(/"/g,"").trim()}},P={parser:{TokenBuilder:e(()=>new v,"TokenBuilder"),ValueConverter:e(()=>new C,"ValueConverter")}};function p(t=s){let r=i(n(t),u),a=i(o({shared:r}),d,P);return r.ServiceRegistry.register(a),{shared:r,Pie:a}}e(p,"createPieServices");export{P as a,p as b}; +import{a as o,b as n,c as i,d as s,e as m,f as e,g as u,l as d,q as c,s as l}from"./chunk-7ZGKZ6HH.js";var v=class extends l{static{e(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},C=class extends c{static{e(this,"PieValueConverter")}runCustomConverter(t,r,a){if(t.name==="PIE_SECTION_LABEL")return r.replace(/"/g,"").trim()}},P={parser:{TokenBuilder:e(()=>new v,"TokenBuilder"),ValueConverter:e(()=>new C,"ValueConverter")}};function p(t=s){let r=i(n(t),u),a=i(o({shared:r}),d,P);return r.ServiceRegistry.register(a),{shared:r,Pie:a}}e(p,"createPieServices");export{P as a,p as b}; diff --git a/src/google/adk/cli/browser/chunk-EGBSMT36.js b/src/google/adk/cli/browser/chunk-EGBSMT36.js deleted file mode 100644 index d272229d61..0000000000 --- a/src/google/adk/cli/browser/chunk-EGBSMT36.js +++ /dev/null @@ -1 +0,0 @@ -var Pr=typeof global=="object"&&global&&global.Object===Object&&global,U=Pr;var Sr=typeof self=="object"&&self&&self.Object===Object&&self,Ir=U||Sr||Function("return this")(),c=Ir;var Mr=c.Symbol,_=Mr;var nt=Object.prototype,Er=nt.hasOwnProperty,Fr=nt.toString,E=_?_.toStringTag:void 0;function Lr(t){var r=Er.call(t,E),e=t[E];try{t[E]=void 0;var o=!0}catch(i){}var a=Fr.call(t);return o&&(r?t[E]=e:delete t[E]),a}var it=Lr;var Dr=Object.prototype,Gr=Dr.toString;function Nr(t){return Gr.call(t)}var ft=Nr;var zr="[object Null]",Ur="[object Undefined]",pt=_?_.toStringTag:void 0;function Rr(t){return t==null?t===void 0?Ur:zr:pt&&pt in Object(t)?it(t):ft(t)}var g=Rr;function Hr(t){var r=typeof t;return t!=null&&(r=="object"||r=="function")}var s=Hr;var Br="[object AsyncFunction]",Vr="[object Function]",Kr="[object GeneratorFunction]",qr="[object Proxy]";function $r(t){if(!s(t))return!1;var r=g(t);return r==Vr||r==Kr||r==Br||r==qr}var O=$r;function Xr(t){return function(){return t}}var ut=Xr;var Jr=c["__core-js_shared__"],R=Jr;var st=(function(){var t=/[^.]+$/.exec(R&&R.keys&&R.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function Wr(t){return!!st&&st in t}var mt=Wr;var Yr=Function.prototype,Zr=Yr.toString;function Qr(t){if(t!=null){try{return Zr.call(t)}catch(r){}try{return t+""}catch(r){}}return""}var lt=Qr;var kr=/[\\^$.*+?()[\]{}|]/g,te=/^\[object .+?Constructor\]$/,re=Function.prototype,ee=Object.prototype,oe=re.toString,ae=ee.hasOwnProperty,ne=RegExp("^"+oe.call(ae).replace(kr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ie(t){if(!s(t)||mt(t))return!1;var r=O(t)?ne:te;return r.test(lt(t))}var ct=ie;function fe(t,r){return t?.[r]}var dt=fe;function pe(t,r){var e=dt(t,r);return ct(e)?e:void 0}var T=pe;var ue=T(Object,"create"),h=ue;function se(){this.__data__=h?h(null):{},this.size=0}var ht=se;function me(t){var r=this.has(t)&&delete this.__data__[t];return this.size-=r?1:0,r}var gt=me;var le="__lodash_hash_undefined__",ce=Object.prototype,de=ce.hasOwnProperty;function he(t){var r=this.__data__;if(h){var e=r[t];return e===le?void 0:e}return de.call(r,t)?r[t]:void 0}var yt=he;var ge=Object.prototype,ye=ge.hasOwnProperty;function be(t){var r=this.__data__;return h?r[t]!==void 0:ye.call(r,t)}var bt=be;var xe="__lodash_hash_undefined__";function ve(t,r){var e=this.__data__;return this.size+=this.has(t)?0:1,e[t]=h&&r===void 0?xe:r,this}var xt=ve;function j(t){var r=-1,e=t==null?0:t.length;for(this.clear();++r-1}var Tt=Pe;function Se(t,r){var e=this.__data__,o=b(e,t);return o<0?(++this.size,e.push([t,r])):e[o][1]=r,this}var jt=Se;function A(t){var r=-1,e=t==null?0:t.length;for(this.clear();++r-1&&t%1==0&&t<=go}var K=yo;function bo(t){return t!=null&&K(t.length)&&!O(t)}var I=bo;function xo(t){return d(t)&&I(t)}var Qt=xo;function vo(){return!1}var kt=vo;var er=typeof exports=="object"&&exports&&!exports.nodeType&&exports,tr=er&&typeof module=="object"&&module&&!module.nodeType&&module,_o=tr&&tr.exports===er,rr=_o?c.Buffer:void 0,Oo=rr?rr.isBuffer:void 0,To=Oo||kt,q=To;var jo="[object Object]",Ao=Function.prototype,Co=Object.prototype,or=Ao.toString,wo=Co.hasOwnProperty,Po=or.call(Object);function So(t){if(!d(t)||g(t)!=jo)return!1;var r=B(t);if(r===null)return!0;var e=wo.call(r,"constructor")&&r.constructor;return typeof e=="function"&&e instanceof e&&or.call(e)==Po}var ar=So;var Io="[object Arguments]",Mo="[object Array]",Eo="[object Boolean]",Fo="[object Date]",Lo="[object Error]",Do="[object Function]",Go="[object Map]",No="[object Number]",zo="[object Object]",Uo="[object RegExp]",Ro="[object Set]",Ho="[object String]",Bo="[object WeakMap]",Vo="[object ArrayBuffer]",Ko="[object DataView]",qo="[object Float32Array]",$o="[object Float64Array]",Xo="[object Int8Array]",Jo="[object Int16Array]",Wo="[object Int32Array]",Yo="[object Uint8Array]",Zo="[object Uint8ClampedArray]",Qo="[object Uint16Array]",ko="[object Uint32Array]",p={};p[qo]=p[$o]=p[Xo]=p[Jo]=p[Wo]=p[Yo]=p[Zo]=p[Qo]=p[ko]=!0;p[Io]=p[Mo]=p[Vo]=p[Eo]=p[Ko]=p[Fo]=p[Lo]=p[Do]=p[Go]=p[No]=p[zo]=p[Uo]=p[Ro]=p[Ho]=p[Bo]=!1;function ta(t){return d(t)&&K(t.length)&&!!p[g(t)]}var nr=ta;function ra(t){return function(r){return t(r)}}var ir=ra;var fr=typeof exports=="object"&&exports&&!exports.nodeType&&exports,N=fr&&typeof module=="object"&&module&&!module.nodeType&&module,ea=N&&N.exports===fr,et=ea&&U.process,oa=(function(){try{var t=N&&N.require&&N.require("util").types;return t||et&&et.binding&&et.binding("util")}catch(r){}})(),ot=oa;var pr=ot&&ot.isTypedArray,aa=pr?ir(pr):nr,$=aa;function na(t,r){if(!(r==="constructor"&&typeof t[r]=="function")&&r!="__proto__")return t[r]}var z=na;var ia=Object.prototype,fa=ia.hasOwnProperty;function pa(t,r,e){var o=t[r];(!(fa.call(t,r)&&y(o,e))||e===void 0&&!(r in t))&&S(t,r,e)}var ur=pa;function ua(t,r,e,o){var a=!e;e||(e={});for(var i=-1,f=r.length;++i-1&&t%1==0&&t0){if(++r>=Pa)return arguments[0]}else r=0;return t.apply(void 0,arguments)}}var Tr=Ma;var Ea=Tr(Or),jr=Ea;function Fa(t,r){return jr(_r(t,r,W),t+"")}var Ar=Fa;function La(t,r,e){if(!s(e))return!1;var o=typeof r;return(o=="number"?I(e)&&X(r,e.length):o=="string"&&r in e)?y(e[r],t):!1}var Cr=La;function Da(t){return Ar(function(r,e){var o=-1,a=e.length,i=a>1?e[a-1]:void 0,f=a>2?e[2]:void 0;for(i=t.length>3&&typeof i=="function"?(a--,i):void 0,f&&Cr(e[0],e[1],f)&&(i=a<3?void 0:i,a=1),r=Object(r);++oa))return!1;var d=i.get(r),l=i.get(t);if(d&&l)return d==t&&l==r;var s=-1,u=!0,y=e&Vt?new Q:void 0;for(i.set(r,t),i.set(t,r);++s0&&e(a)?t>1?wt(a,t-1,e,n,o):j(o,a):n||(o[o.length]=a)}return o}var pr=wt;function Fn(r){var t=r==null?0:r.length;return t?pr(r,1):[]}var za=Fn;function Dn(r,t){return pr(xt(r,t),1)}var rm=Dn;function Nn(r,t,e){for(var n=-1,o=r.length;++n-1}var _t=Wn;function Yn(r,t,e){for(var n=-1,o=r==null?0:r.length;++n=Xn){var d=t?null:Mt(r);if(d)return D(d);f=!1,o=z,m=new Q}else m=t?[]:a;r:for(;++n{for(let e of r)t[e.name]=e},"registerLayoutLoaders"),c=o(()=>{w([{name:"dagre",loader:o(()=>a(null,null,function*(){return yield import("./chunk-TNYN2TVW.js")}),"loader")},{name:"cose-bilkent",loader:o(()=>a(null,null,function*(){return yield import("./chunk-HD4LLD2O.js")}),"loader")}])},"registerDefaultLayoutLoaders");c();var C=o((r,e)=>a(null,null,function*(){if(!(r.layoutAlgorithm in t))throw new Error(`Unknown layout algorithm: ${r.layoutAlgorithm}`);let n=t[r.layoutAlgorithm];return(yield n.loader()).render(r,e,L,{algorithm:n.algorithm})}),"render"),D=o((r="",{fallback:e="dagre"}={})=>{if(r in t)return r;if(e in t)return i.warn(`Layout algorithm ${r} is not registered. Using ${e} as fallback.`),e;throw new Error(`Both layout algorithms ${r} and ${e} are not registered.`)},"getRegisteredLayoutAlgorithm");export{w as a,C as b,D as c}; diff --git a/src/google/adk/cli/browser/chunk-FDH623K7.js b/src/google/adk/cli/browser/chunk-FDH623K7.js deleted file mode 100644 index 1b0ae81555..0000000000 --- a/src/google/adk/cli/browser/chunk-FDH623K7.js +++ /dev/null @@ -1 +0,0 @@ -import{a as r,b as e}from"./chunk-JNY2YWG7.js";import"./chunk-NALL4A3P.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";export{r as RadarModule,e as createRadarServices}; diff --git a/src/google/adk/cli/browser/chunk-FDMPUWDP.js b/src/google/adk/cli/browser/chunk-FDMPUWDP.js new file mode 100644 index 0000000000..eb7993c90d --- /dev/null +++ b/src/google/adk/cli/browser/chunk-FDMPUWDP.js @@ -0,0 +1 @@ +import{g as y}from"./chunk-JRNAXTJ7.js";var A=y((t,r)=>{if(r)return"translate("+-t.width/2+", "+-t.height/2+")";let s=t.x??0,e=t.y??0;return"translate("+-(s+t.width/2)+", "+-(e+t.height/2)+")"},"computeLabelTransform"),c={aggregation:17.25,extension:17.25,composition:17.25,dependency:6,lollipop:13.5,arrow_point:4,arrow_barb:0,arrow_barb_neo:5.5},M={arrow_point:4,arrow_cross:12.5,arrow_circle:12.5};function w(t,r){if(t===void 0||r===void 0)return{angle:0,deltaX:0,deltaY:0};t=n(t),r=n(r);let[s,e]=[t.x,t.y],[a,i]=[r.x,r.y],o=a-s,x=i-e;return{angle:Math.atan(x/o),deltaX:o,deltaY:x}}y(w,"calculateDeltaAndAngle");var n=y(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),m=y(t=>({x:y(function(r,s,e){let a=0,i=n(e[0]).x=0?1:-1)}else if(s===e.length-1&&Object.hasOwn(c,t.arrowTypeEnd)){let{angle:l,deltaX:g}=w(e[e.length-1],e[e.length-2]);a=c[t.arrowTypeEnd]*Math.cos(l)*(g>=0?1:-1)}let o=Math.abs(n(r).x-n(e[e.length-1]).x),x=Math.abs(n(r).y-n(e[e.length-1]).y),f=Math.abs(n(r).x-n(e[0]).x),d=Math.abs(n(r).y-n(e[0]).y),h=c[t.arrowTypeStart],u=c[t.arrowTypeEnd],p=1;if(o0&&x0&&d=0?1:-1)}else if(s===e.length-1&&Object.hasOwn(c,t.arrowTypeEnd)){let{angle:l,deltaY:g}=w(e[e.length-1],e[e.length-2]);a=c[t.arrowTypeEnd]*Math.abs(Math.sin(l))*(g>=0?1:-1)}let o=Math.abs(n(r).y-n(e[e.length-1]).y),x=Math.abs(n(r).x-n(e[e.length-1]).x),f=Math.abs(n(r).y-n(e[0]).y),d=Math.abs(n(r).x-n(e[0]).x),h=c[t.arrowTypeStart],u=c[t.arrowTypeEnd],p=1;if(o0&&x0&&dnew A,"TokenBuilder"),ValueConverter:t(()=>new C,"ValueConverter")}};function f(c=n){let r=i(u(c),o),a=i(s({shared:r}),l,v);return r.ServiceRegistry.register(a),{shared:r,Architecture:a}}t(f,"createArchitectureServices");export{v as a,f as b}; +import{a as s,b as u,c as i,d as n,e as m,f as t,g as o,h as l,q as d,s as h}from"./chunk-7ZGKZ6HH.js";var A=class extends h{static{t(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},C=class extends d{static{t(this,"ArchitectureValueConverter")}runCustomConverter(c,r,a){if(c.name==="ARCH_ICON")return r.replace(/[()]/g,"").trim();if(c.name==="ARCH_TEXT_ICON")return r.replace(/["()]/g,"");if(c.name==="ARCH_TITLE"){let e=r.replace(/^\[|]$/g,"").trim();return(e.startsWith('"')&&e.endsWith('"')||e.startsWith("'")&&e.endsWith("'"))&&(e=e.slice(1,-1),e=e.replace(/\\"/g,'"').replace(/\\'/g,"'")),e.trim()}}},v={parser:{TokenBuilder:t(()=>new A,"TokenBuilder"),ValueConverter:t(()=>new C,"ValueConverter")}};function f(c=n){let r=i(u(c),o),a=i(s({shared:r}),l,v);return r.ServiceRegistry.register(a),{shared:r,Architecture:a}}t(f,"createArchitectureServices");export{v as a,f as b}; diff --git a/src/google/adk/cli/browser/chunk-GQUNXJBP.js b/src/google/adk/cli/browser/chunk-GQUNXJBP.js new file mode 100644 index 0000000000..4bec8ca41e --- /dev/null +++ b/src/google/adk/cli/browser/chunk-GQUNXJBP.js @@ -0,0 +1 @@ +import{a as r,b as e}from"./chunk-PNXCYZAZ.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{r as RadarModule,e as createRadarServices}; diff --git a/src/google/adk/cli/browser/chunk-HDC4PFPG.js b/src/google/adk/cli/browser/chunk-HDC4PFPG.js deleted file mode 100644 index 072b0cc4ff..0000000000 --- a/src/google/adk/cli/browser/chunk-HDC4PFPG.js +++ /dev/null @@ -1 +0,0 @@ -import{a as e,b as r}from"./chunk-WR6HISGZ.js";import"./chunk-NALL4A3P.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";export{e as PieModule,r as createPieServices}; diff --git a/src/google/adk/cli/browser/chunk-ICVZGLGO.js b/src/google/adk/cli/browser/chunk-ICVZGLGO.js deleted file mode 100644 index 030253ee3b..0000000000 --- a/src/google/adk/cli/browser/chunk-ICVZGLGO.js +++ /dev/null @@ -1,68 +0,0 @@ -import{a as pe}from"./chunk-APNCZOFE.js";import{a as fe}from"./chunk-ST54LLJ3.js";import{b as ge,c as ue}from"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{D as de,G as w,Y as V,c as ce,d as le,e as he,r as R}from"./chunk-QFMJV7VH.js";import{g as c,i as T}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{j as ae}from"./chunk-RMXJBC7V.js";var y=[];for(let e=0;e<256;++e)y.push((e+256).toString(16).slice(1));function me(e,n=0){return(y[e[n+0]]+y[e[n+1]]+y[e[n+2]]+y[e[n+3]]+"-"+y[e[n+4]]+y[e[n+5]]+"-"+y[e[n+6]]+y[e[n+7]]+"-"+y[e[n+8]]+y[e[n+9]]+"-"+y[e[n+10]]+y[e[n+11]]+y[e[n+12]]+y[e[n+13]]+y[e[n+14]]+y[e[n+15]]).toLowerCase()}var X,Se=new Uint8Array(16);function z(){if(!X){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");X=crypto.getRandomValues.bind(crypto)}return X(Se)}var xe=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),W={randomUUID:xe};function De(e,n,i){if(W.randomUUID&&!n&&!e)return W.randomUUID();e=e||{};let l=e.random??e.rng?.()??z();if(l.length<16)throw new Error("Random bytes length must be >= 16");if(l[6]=l[6]&15|64,l[8]=l[8]&63|128,n){if(i=i||0,i<0||i+16>n.length)throw new RangeError(`UUID byte range ${i}:${i+15} is out of buffer bounds`);for(let g=0;g<16;++g)n[i+g]=l[g];return n}return me(l)}var Y=De;var q=(function(){var e=c(function(N,r,t,o){for(t=t||{},o=N.length;o--;t[N[o]]=r);return t},"o"),n=[1,4],i=[1,13],l=[1,12],g=[1,15],h=[1,16],f=[1,20],E=[1,19],p=[6,7,8],J=[1,26],K=[1,24],Q=[1,25],_=[6,7,11],Z=[1,6,13,15,16,19,22],ee=[1,33],te=[1,34],I=[1,6,7,11,13,15,16,19,22],B={trace:c(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:c(function(r,t,o,a,u,s,C){var d=s.length-1;switch(u){case 6:case 7:return a;case 8:a.getLogger().trace("Stop NL ");break;case 9:a.getLogger().trace("Stop EOF ");break;case 11:a.getLogger().trace("Stop NL2 ");break;case 12:a.getLogger().trace("Stop EOF2 ");break;case 15:a.getLogger().info("Node: ",s[d].id),a.addNode(s[d-1].length,s[d].id,s[d].descr,s[d].type);break;case 16:a.getLogger().trace("Icon: ",s[d]),a.decorateNode({icon:s[d]});break;case 17:case 21:a.decorateNode({class:s[d]});break;case 18:a.getLogger().trace("SPACELIST");break;case 19:a.getLogger().trace("Node: ",s[d].id),a.addNode(0,s[d].id,s[d].descr,s[d].type);break;case 20:a.decorateNode({icon:s[d]});break;case 25:a.getLogger().trace("node found ..",s[d-2]),this.$={id:s[d-1],descr:s[d-1],type:a.getType(s[d-2],s[d])};break;case 26:this.$={id:s[d],descr:s[d],type:a.nodeType.DEFAULT};break;case 27:a.getLogger().trace("node found ..",s[d-3]),this.$={id:s[d-3],descr:s[d-1],type:a.getType(s[d-2],s[d])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:n},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:n},{6:i,7:[1,10],9:9,12:11,13:l,14:14,15:g,16:h,17:17,18:18,19:f,22:E},e(p,[2,3]),{1:[2,2]},e(p,[2,4]),e(p,[2,5]),{1:[2,6],6:i,12:21,13:l,14:14,15:g,16:h,17:17,18:18,19:f,22:E},{6:i,9:22,12:11,13:l,14:14,15:g,16:h,17:17,18:18,19:f,22:E},{6:J,7:K,10:23,11:Q},e(_,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:f,22:E}),e(_,[2,18]),e(_,[2,19]),e(_,[2,20]),e(_,[2,21]),e(_,[2,23]),e(_,[2,24]),e(_,[2,26],{19:[1,30]}),{20:[1,31]},{6:J,7:K,10:32,11:Q},{1:[2,7],6:i,12:21,13:l,14:14,15:g,16:h,17:17,18:18,19:f,22:E},e(Z,[2,14],{7:ee,11:te}),e(I,[2,8]),e(I,[2,9]),e(I,[2,10]),e(_,[2,15]),e(_,[2,16]),e(_,[2,17]),{20:[1,35]},{21:[1,36]},e(Z,[2,13],{7:ee,11:te}),e(I,[2,11]),e(I,[2,12]),{21:[1,37]},e(_,[2,25]),e(_,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:c(function(r,t){if(t.recoverable)this.trace(r);else{var o=new Error(r);throw o.hash=t,o}},"parseError"),parse:c(function(r){var t=this,o=[0],a=[],u=[null],s=[],C=this.table,d="",U=0,ie=0,ne=0,be=2,se=1,Ee=s.slice.call(arguments,1),m=Object.create(this.lexer),v={yy:{}};for(var F in this.yy)Object.prototype.hasOwnProperty.call(this.yy,F)&&(v.yy[F]=this.yy[F]);m.setInput(r,v.yy),v.yy.lexer=m,v.yy.parser=this,typeof m.yylloc>"u"&&(m.yylloc={});var j=m.yylloc;s.push(j);var _e=m.options&&m.options.ranges;typeof v.yy.parseError=="function"?this.parseError=v.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ke(k){o.length=o.length-2*k,u.length=u.length-k,s.length=s.length-k}c(ke,"popStack");function re(){var k;return k=a.pop()||m.lex()||se,typeof k!="number"&&(k instanceof Array&&(a=k,k=a.pop()),k=t.symbols_[k]||k),k}c(re,"lex");for(var b,G,L,S,we,$,O={},P,x,oe,M;;){if(L=o[o.length-1],this.defaultActions[L]?S=this.defaultActions[L]:((b===null||typeof b>"u")&&(b=re()),S=C[L]&&C[L][b]),typeof S>"u"||!S.length||!S[0]){var H="";M=[];for(P in C[L])this.terminals_[P]&&P>be&&M.push("'"+this.terminals_[P]+"'");m.showPosition?H="Parse error on line "+(U+1)+`: -`+m.showPosition()+` -Expecting `+M.join(", ")+", got '"+(this.terminals_[b]||b)+"'":H="Parse error on line "+(U+1)+": Unexpected "+(b==se?"end of input":"'"+(this.terminals_[b]||b)+"'"),this.parseError(H,{text:m.match,token:this.terminals_[b]||b,line:m.yylineno,loc:j,expected:M})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+L+", token: "+b);switch(S[0]){case 1:o.push(b),u.push(m.yytext),s.push(m.yylloc),o.push(S[1]),b=null,G?(b=G,G=null):(ie=m.yyleng,d=m.yytext,U=m.yylineno,j=m.yylloc,ne>0&&ne--);break;case 2:if(x=this.productions_[S[1]][1],O.$=u[u.length-x],O._$={first_line:s[s.length-(x||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(x||1)].first_column,last_column:s[s.length-1].last_column},_e&&(O._$.range=[s[s.length-(x||1)].range[0],s[s.length-1].range[1]]),$=this.performAction.apply(O,[d,ie,U,v.yy,S[1],u,s].concat(Ee)),typeof $<"u")return $;x&&(o=o.slice(0,-1*x*2),u=u.slice(0,-1*x),s=s.slice(0,-1*x)),o.push(this.productions_[S[1]][0]),u.push(O.$),s.push(O._$),oe=C[o[o.length-2]][o[o.length-1]],o.push(oe);break;case 3:return!0}}return!0},"parse")},ye=(function(){var N={EOF:1,parseError:c(function(t,o){if(this.yy.parser)this.yy.parser.parseError(t,o);else throw new Error(t)},"parseError"),setInput:c(function(r,t){return this.yy=t||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:c(function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var t=r.match(/(?:\r\n?|\n).*/g);return t?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},"input"),unput:c(function(r){var t=r.length,o=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),o.length-1&&(this.yylineno-=o.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:o?(o.length===a.length?this.yylloc.first_column:0)+a[a.length-o.length].length-o[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},"unput"),more:c(function(){return this._more=!0,this},"more"),reject:c(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:c(function(r){this.unput(this.match.slice(r))},"less"),pastInput:c(function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:c(function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:c(function(){var r=this.pastInput(),t=new Array(r.length+1).join("-");return r+this.upcomingInput()+` -`+t+"^"},"showPosition"),test_match:c(function(r,t){var o,a,u;if(this.options.backtrack_lexer&&(u={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(u.yylloc.range=this.yylloc.range.slice(0))),a=r[0].match(/(?:\r\n?|\n).*/g),a&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+r[0].length},this.yytext+=r[0],this.match+=r[0],this.matches=r,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(r[0].length),this.matched+=r[0],o=this.performAction.call(this,this.yy,this,t,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o)return o;if(this._backtrack){for(var s in u)this[s]=u[s];return!1}return!1},"test_match"),next:c(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var r,t,o,a;this._more||(this.yytext="",this.match="");for(var u=this._currentRules(),s=0;st[0].length)){if(t=o,a=s,this.options.backtrack_lexer){if(r=this.test_match(o,u[s]),r!==!1)return r;if(this._backtrack){t=!1;continue}else return!1}else if(!this.options.flex)break}return t?(r=this.test_match(t,u[a]),r!==!1?r:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:c(function(){var t=this.next();return t||this.lex()},"lex"),begin:c(function(t){this.conditionStack.push(t)},"begin"),popState:c(function(){var t=this.conditionStack.length-1;return t>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:c(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:c(function(t){return t=this.conditionStack.length-1-Math.abs(t||0),t>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:c(function(t){this.begin(t)},"pushState"),stateStackSize:c(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:c(function(t,o,a,u){var s=u;switch(a){case 0:return t.getLogger().trace("Found comment",o.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:t.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return t.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:t.getLogger().trace("end icon"),this.popState();break;case 10:return t.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return t.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return t.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return t.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:t.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return t.getLogger().trace("description:",o.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),t.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),t.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),t.getLogger().trace("node end ...",o.yytext),"NODE_DEND";break;case 30:return this.popState(),t.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),t.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),t.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),t.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),t.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return t.getLogger().trace("Long description:",o.yytext),20;break;case 36:return t.getLogger().trace("Long description:",o.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return N})();B.lexer=ye;function A(){this.yy={}}return c(A,"Parser"),A.prototype=B,B.Parser=A,new A})();q.parser=q;var Ne=q,ve=12,D={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Le=class{constructor(){this.nodes=[],this.count=0,this.elements={},this.getLogger=this.getLogger.bind(this),this.nodeType=D,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{c(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(e){for(let n=this.nodes.length-1;n>=0;n--)if(this.nodes[n].level0?this.nodes[0]:null}addNode(e,n,i,l){T.info("addNode",e,n,i,l);let g=!1;this.nodes.length===0?(this.baseLevel=e,e=0,g=!0):this.baseLevel!==void 0&&(e=e-this.baseLevel,g=!1);let h=V(),f=h.mindmap?.padding??R.mindmap.padding;switch(l){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:f*=2;break}let E={id:this.count++,nodeId:w(n,h),level:e,descr:w(i,h),type:l,children:[],width:h.mindmap?.maxNodeWidth??R.mindmap.maxNodeWidth,padding:f,isRoot:g},p=this.getParent(e);if(p)p.children.push(E),this.nodes.push(E);else if(g)this.nodes.push(E);else throw new Error(`There can be only one root. No parent could be found for ("${E.descr}")`)}getType(e,n){switch(T.debug("In get type",e,n),e){case"[":return this.nodeType.RECT;case"(":return n===")"?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(e,n){this.elements[e]=n}getElementById(e){return this.elements[e]}decorateNode(e){if(!e)return;let n=V(),i=this.nodes[this.nodes.length-1];e.icon&&(i.icon=w(e.icon,n)),e.class&&(i.class=w(e.class,n))}type2Str(e){switch(e){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(e,n){if(e.level===0?e.section=void 0:e.section=n,e.children)for(let[i,l]of e.children.entries()){let g=e.level===0?i%(ve-1):n;this.assignSections(l,g)}}flattenNodes(e,n){let i=["mindmap-node"];e.isRoot===!0?i.push("section-root","section--1"):e.section!==void 0&&i.push(`section-${e.section}`),e.class&&i.push(e.class);let l=i.join(" "),g=c(f=>{switch(f){case D.CIRCLE:return"mindmapCircle";case D.RECT:return"rect";case D.ROUNDED_RECT:return"rounded";case D.CLOUD:return"cloud";case D.BANG:return"bang";case D.HEXAGON:return"hexagon";case D.DEFAULT:return"defaultMindmapNode";case D.NO_BORDER:default:return"rect"}},"getShapeFromType"),h={id:e.id.toString(),domId:"node_"+e.id.toString(),label:e.descr,labelType:"markdown",isGroup:!1,shape:g(e.type),width:e.width,height:e.height??0,padding:e.padding,cssClasses:l,cssStyles:[],look:"default",icon:e.icon,x:e.x,y:e.y,level:e.level,nodeId:e.nodeId,type:e.type,section:e.section};if(n.push(h),e.children)for(let f of e.children)this.flattenNodes(f,n)}generateEdges(e,n){if(e.children)for(let i of e.children){let l="edge";i.section!==void 0&&(l+=` section-edge-${i.section}`);let g=e.level+1;l+=` edge-depth-${g}`;let h={id:`edge_${e.id}_${i.id}`,start:e.id.toString(),end:i.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:"default",classes:l,depth:e.level,section:i.section};n.push(h),this.generateEdges(i,n)}}getData(){let e=this.getMindmap(),n=V(),l=de().layout!==void 0,g=n;if(l||(g.layout="cose-bilkent"),!e)return{nodes:[],edges:[],config:g};T.debug("getData: mindmapRoot",e,n),this.assignSections(e);let h=[],f=[];this.flattenNodes(e,h),this.generateEdges(e,f),T.debug(`getData: processed ${h.length} nodes and ${f.length} edges`);let E=new Map;for(let p of h)E.set(p.id,{shape:p.shape,width:p.width,height:p.height,padding:p.padding});return{nodes:h,edges:f,config:g,rootNode:e,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(E),type:"mindmap",diagramId:"mindmap-"+Y()}}getLogger(){return T}},Te=c((e,n,i,l)=>ae(null,null,function*(){T.debug(`Rendering mindmap diagram -`+e);let g=l.db,h=g.getData(),f=pe(n,h.config.securityLevel);h.type=l.type,h.layoutAlgorithm=ue(h.config.layout,{fallback:"cose-bilkent"}),h.diagramId=n,g.getMindmap()&&(h.nodes.forEach(p=>{p.shape==="rounded"?(p.radius=15,p.taper=15,p.stroke="none",p.width=0,p.padding=15):p.shape==="circle"?p.padding=10:p.shape==="rect"&&(p.width=0,p.padding=10)}),yield ge(h,f),fe(f,h.config.mindmap?.padding??R.mindmap.padding,"mindmapDiagram",h.config.mindmap?.useMaxWidth??R.mindmap.useMaxWidth))}),"draw"),Oe={draw:Te},Ie=c(e=>{let n="";for(let i=0;i` - .edge { - stroke-width: 3; - } - ${Ie(e)} - .section-root rect, .section-root path, .section-root circle, .section-root polygon { - fill: ${e.git0}; - } - .section-root text { - fill: ${e.gitBranchLabel0}; - } - .section-root span { - color: ${e.gitBranchLabel0}; - } - .section-2 span { - color: ${e.gitBranchLabel0}; - } - .icon-container { - height:100%; - display: flex; - justify-content: center; - align-items: center; - } - .edge { - fill: none; - } - .mindmap-node-label { - dy: 1em; - alignment-baseline: middle; - text-anchor: middle; - dominant-baseline: middle; - text-align: center; - } -`,"getStyles"),Re=Ce,nt={get db(){return new Le},renderer:Oe,parser:Ne,styles:Re};export{nt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-IHY23QJP.js b/src/google/adk/cli/browser/chunk-IHY23QJP.js deleted file mode 100644 index 6d72da771b..0000000000 --- a/src/google/adk/cli/browser/chunk-IHY23QJP.js +++ /dev/null @@ -1 +0,0 @@ -import{a as e,b as r}from"./chunk-I4UDKKN5.js";import"./chunk-NALL4A3P.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";export{e as ArchitectureModule,r as createArchitectureServices}; diff --git a/src/google/adk/cli/browser/chunk-J4R5U4YL.js b/src/google/adk/cli/browser/chunk-J4R5U4YL.js deleted file mode 100644 index b153718475..0000000000 --- a/src/google/adk/cli/browser/chunk-J4R5U4YL.js +++ /dev/null @@ -1,7 +0,0 @@ -import{a as Ht}from"./chunk-TPDTRWWV.js";import{e as Ut}from"./chunk-WXI2IBAH.js";import{l as pt}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{A as st,G as Bt,N as Wt,R as zt,S as Ft,T as Ot,U as Xt,V as Nt,W as Yt,X as gt,p as Vt,r as Mt}from"./chunk-QFMJV7VH.js";import{M as ft,g as a,i as ut,s as xt,t as dt}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";var mt=(function(){var t=a(function(N,o,l,u){for(l=l||{},u=N.length;u--;l[N[u]]=o);return l},"o"),i=[1,10,12,14,16,18,19,21,23],e=[2,6],s=[1,3],r=[1,5],p=[1,6],x=[1,7],A=[1,5,10,12,14,16,18,19,21,23,34,35,36],L=[1,25],W=[1,26],V=[1,28],T=[1,29],E=[1,30],z=[1,31],F=[1,32],R=[1,33],M=[1,34],O=[1,35],X=[1,36],f=[1,37],D=[1,43],h=[1,42],B=[1,47],v=[1,50],b=[1,10,12,14,16,18,19,21,23,34,35,36],H=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],c=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],C=[1,64],_={trace:a(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:a(function(o,l,u,g,y,n,Q){var d=n.length-1;switch(y){case 5:g.setOrientation(n[d]);break;case 9:g.setDiagramTitle(n[d].text.trim());break;case 12:g.setLineData({text:"",type:"text"},n[d]);break;case 13:g.setLineData(n[d-1],n[d]);break;case 14:g.setBarData({text:"",type:"text"},n[d]);break;case 15:g.setBarData(n[d-1],n[d]);break;case 16:this.$=n[d].trim(),g.setAccTitle(this.$);break;case 17:case 18:this.$=n[d].trim(),g.setAccDescription(this.$);break;case 19:this.$=n[d-1];break;case 20:this.$=[Number(n[d-2]),...n[d]];break;case 21:this.$=[Number(n[d])];break;case 22:g.setXAxisTitle(n[d]);break;case 23:g.setXAxisTitle(n[d-1]);break;case 24:g.setXAxisTitle({type:"text",text:""});break;case 25:g.setXAxisBand(n[d]);break;case 26:g.setXAxisRangeData(Number(n[d-2]),Number(n[d]));break;case 27:this.$=n[d-1];break;case 28:this.$=[n[d-2],...n[d]];break;case 29:this.$=[n[d]];break;case 30:g.setYAxisTitle(n[d]);break;case 31:g.setYAxisTitle(n[d-1]);break;case 32:g.setYAxisTitle({type:"text",text:""});break;case 33:g.setYAxisRangeData(Number(n[d-2]),Number(n[d]));break;case 37:this.$={text:n[d],type:"text"};break;case 38:this.$={text:n[d],type:"text"};break;case 39:this.$={text:n[d],type:"markdown"};break;case 40:this.$=n[d];break;case 41:this.$=n[d-1]+""+n[d];break}},"anonymous"),table:[t(i,e,{3:1,4:2,7:4,5:s,34:r,35:p,36:x}),{1:[3]},t(i,e,{4:2,7:4,3:8,5:s,34:r,35:p,36:x}),t(i,e,{4:2,7:4,6:9,3:10,5:s,8:[1,11],34:r,35:p,36:x}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(A,[2,34]),t(A,[2,35]),t(A,[2,36]),{1:[2,1]},t(i,e,{4:2,7:4,3:21,5:s,34:r,35:p,36:x}),{1:[2,3]},t(A,[2,5]),t(i,[2,7],{4:22,34:r,35:p,36:x}),{11:23,37:24,38:L,39:W,40:27,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f},{11:39,13:38,24:D,27:h,29:40,30:41,37:24,38:L,39:W,40:27,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f},{11:45,15:44,27:B,33:46,37:24,38:L,39:W,40:27,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f},{11:49,17:48,24:v,37:24,38:L,39:W,40:27,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f},{11:52,17:51,24:v,37:24,38:L,39:W,40:27,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f},{20:[1,53]},{22:[1,54]},t(b,[2,18]),{1:[2,2]},t(b,[2,8]),t(b,[2,9]),t(H,[2,37],{40:55,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f}),t(H,[2,38]),t(H,[2,39]),t(c,[2,40]),t(c,[2,42]),t(c,[2,43]),t(c,[2,44]),t(c,[2,45]),t(c,[2,46]),t(c,[2,47]),t(c,[2,48]),t(c,[2,49]),t(c,[2,50]),t(c,[2,51]),t(b,[2,10]),t(b,[2,22],{30:41,29:56,24:D,27:h}),t(b,[2,24]),t(b,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:L,39:W,40:27,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f},t(b,[2,11]),t(b,[2,30],{33:60,27:B}),t(b,[2,32]),{31:[1,61]},t(b,[2,12]),{17:62,24:v},{25:63,27:C},t(b,[2,14]),{17:65,24:v},t(b,[2,16]),t(b,[2,17]),t(c,[2,41]),t(b,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(b,[2,31]),{27:[1,69]},t(b,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(b,[2,15]),t(b,[2,26]),t(b,[2,27]),{11:59,32:72,37:24,38:L,39:W,40:27,41:V,42:T,43:E,44:z,45:F,46:R,47:M,48:O,49:X,50:f},t(b,[2,33]),t(b,[2,19]),{25:73,27:C},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:a(function(o,l){if(l.recoverable)this.trace(o);else{var u=new Error(o);throw u.hash=l,u}},"parseError"),parse:a(function(o){var l=this,u=[0],g=[],y=[null],n=[],Q=this.table,d="",tt=0,vt=0,Pt=0,gi=2,Lt=1,xi=n.slice.call(arguments,1),k=Object.create(this.lexer),$={yy:{}};for(var rt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,rt)&&($.yy[rt]=this.yy[rt]);k.setInput(o,$.yy),$.yy.lexer=k,$.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var ot=k.yylloc;n.push(ot);var di=k.options&&k.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function fi(P){u.length=u.length-2*P,y.length=y.length-P,n.length=n.length-P}a(fi,"popStack");function Et(){var P;return P=g.pop()||k.lex()||Lt,typeof P!="number"&&(P instanceof Array&&(g=P,P=g.pop()),P=l.symbols_[P]||P),P}a(Et,"lex");for(var S,ht,q,I,vi,lt,G={},it,Y,It,et;;){if(q=u[u.length-1],this.defaultActions[q]?I=this.defaultActions[q]:((S===null||typeof S>"u")&&(S=Et()),I=Q[q]&&Q[q][S]),typeof I>"u"||!I.length||!I[0]){var ct="";et=[];for(it in Q[q])this.terminals_[it]&&it>gi&&et.push("'"+this.terminals_[it]+"'");k.showPosition?ct="Parse error on line "+(tt+1)+`: -`+k.showPosition()+` -Expecting `+et.join(", ")+", got '"+(this.terminals_[S]||S)+"'":ct="Parse error on line "+(tt+1)+": Unexpected "+(S==Lt?"end of input":"'"+(this.terminals_[S]||S)+"'"),this.parseError(ct,{text:k.match,token:this.terminals_[S]||S,line:k.yylineno,loc:ot,expected:et})}if(I[0]instanceof Array&&I.length>1)throw new Error("Parse Error: multiple actions possible at state: "+q+", token: "+S);switch(I[0]){case 1:u.push(S),y.push(k.yytext),n.push(k.yylloc),u.push(I[1]),S=null,ht?(S=ht,ht=null):(vt=k.yyleng,d=k.yytext,tt=k.yylineno,ot=k.yylloc,Pt>0&&Pt--);break;case 2:if(Y=this.productions_[I[1]][1],G.$=y[y.length-Y],G._$={first_line:n[n.length-(Y||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(Y||1)].first_column,last_column:n[n.length-1].last_column},di&&(G._$.range=[n[n.length-(Y||1)].range[0],n[n.length-1].range[1]]),lt=this.performAction.apply(G,[d,vt,tt,$.yy,I[1],y,n].concat(xi)),typeof lt<"u")return lt;Y&&(u=u.slice(0,-1*Y*2),y=y.slice(0,-1*Y),n=n.slice(0,-1*Y)),u.push(this.productions_[I[1]][0]),y.push(G.$),n.push(G._$),It=Q[u[u.length-2]][u[u.length-1]],u.push(It);break;case 3:return!0}}return!0},"parse")},w=(function(){var N={EOF:1,parseError:a(function(l,u){if(this.yy.parser)this.yy.parser.parseError(l,u);else throw new Error(l)},"parseError"),setInput:a(function(o,l){return this.yy=l||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:a(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var l=o.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:a(function(o){var l=o.length,u=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),u.length-1&&(this.yylineno-=u.length-1);var y=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:u?(u.length===g.length?this.yylloc.first_column:0)+g[g.length-u.length].length-u[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[y[0],y[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},"unput"),more:a(function(){return this._more=!0,this},"more"),reject:a(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:a(function(o){this.unput(this.match.slice(o))},"less"),pastInput:a(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:a(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:a(function(){var o=this.pastInput(),l=new Array(o.length+1).join("-");return o+this.upcomingInput()+` -`+l+"^"},"showPosition"),test_match:a(function(o,l){var u,g,y;if(this.options.backtrack_lexer&&(y={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(y.yylloc.range=this.yylloc.range.slice(0))),g=o[0].match(/(?:\r\n?|\n).*/g),g&&(this.yylineno+=g.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],u=this.performAction.call(this,this.yy,this,l,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),u)return u;if(this._backtrack){for(var n in y)this[n]=y[n];return!1}return!1},"test_match"),next:a(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,l,u,g;this._more||(this.yytext="",this.match="");for(var y=this._currentRules(),n=0;nl[0].length)){if(l=u,g=n,this.options.backtrack_lexer){if(o=this.test_match(u,y[n]),o!==!1)return o;if(this._backtrack){l=!1;continue}else return!1}else if(!this.options.flex)break}return l?(o=this.test_match(l,y[g]),o!==!1?o:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:a(function(){var l=this.next();return l||this.lex()},"lex"),begin:a(function(l){this.conditionStack.push(l)},"begin"),popState:a(function(){var l=this.conditionStack.length-1;return l>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:a(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:a(function(l){return l=this.conditionStack.length-1-Math.abs(l||0),l>=0?this.conditionStack[l]:"INITIAL"},"topState"),pushState:a(function(l){this.begin(l)},"pushState"),stateStackSize:a(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:a(function(l,u,g,y){var n=y;switch(g){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState("axis_data"),"X_AXIS";break;case 18:return this.pushState("axis_data"),"Y_AXIS";break;case 19:return this.pushState("axis_band_data"),24;break;case 20:return 31;case 21:return this.pushState("data"),16;break;case 22:return this.pushState("data"),18;break;case 23:return this.pushState("data_inner"),24;break;case 24:return 27;case 25:return this.popState(),26;break;case 26:this.popState();break;case 27:this.pushState("string");break;case 28:this.popState();break;case 29:return"STR";case 30:return 24;case 31:return 26;case 32:return 43;case 33:return"COLON";case 34:return 44;case 35:return 28;case 36:return 45;case 37:return 46;case 38:return 48;case 39:return 50;case 40:return 47;case 41:return 41;case 42:return 49;case 43:return 42;case 44:break;case 45:return 35;case 46:return 36}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\})/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}};return N})();_.lexer=w;function U(){this.yy={}}return a(U,"Parser"),U.prototype=_,_.Parser=U,new U})();mt.parser=mt;var pi=mt;function yt(t){return t.type==="bar"}a(yt,"isBarPlot");function kt(t){return t.type==="band"}a(kt,"isBandAxisData");function j(t){return t.type==="linear"}a(j,"isLinearAxisData");var Gt=class{constructor(t){this.parentGroup=t}static{a(this,"TextDimensionCalculatorWithFont")}getMaxDimension(t,i){if(!this.parentGroup)return{width:t.reduce((r,p)=>Math.max(p.length,r),0)*i,height:i};let e={width:0,height:0},s=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",i);for(let r of t){let p=Ut(s,1,r),x=p?p.width:r.length*i,A=p?p.height:i;e.width=Math.max(e.width,x),e.height=Math.max(e.height,A)}return s.remove(),e}},$t=.7,qt=.2,jt=class{constructor(t,i,e,s){this.axisConfig=t,this.title=i,this.textDimensionCalculator=e,this.axisThemeConfig=s,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{a(this,"BaseAxis")}setRange(t){this.range=t,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=t[1]-t[0]:this.boundingRect.width=t[1]-t[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(t){this.axisPosition=t,this.setRange(this.range)}getTickDistance(){let t=this.getRange();return Math.abs(t[0]-t[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(t=>t.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){$t*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor($t*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(t){let i=t.height;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let e=this.getLabelDimension(),s=qt*t.width;this.outerPadding=Math.min(e.width/2,s);let r=e.height+this.axisConfig.labelPadding*2;this.labelTextHeight=e.height,r<=i&&(i-=r,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),s=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,s<=i&&(i-=s,this.showTitle=!0)}this.boundingRect.width=t.width,this.boundingRect.height=t.height-i}calculateSpaceIfDrawnVertical(t){let i=t.width;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let e=this.getLabelDimension(),s=qt*t.height;this.outerPadding=Math.min(e.height/2,s);let r=e.width+this.axisConfig.labelPadding*2;r<=i&&(i-=r,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),s=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,s<=i&&(i-=s,this.showTitle=!0)}this.boundingRect.width=t.width-i,this.boundingRect.height=t.height}calculateSpace(t){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(t):this.calculateSpaceIfDrawnHorizontally(t),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}getDrawableElementsForLeftAxis(){let t=[];if(this.showAxisLine){let i=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${i},${this.boundingRect.y} L ${i},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(i=>({text:i.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(i),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let i=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(e=>({path:`M ${i},${this.getScaleValue(e)} L ${i-this.axisConfig.tickLength},${this.getScaleValue(e)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForBottomAxis(){let t=[];if(this.showAxisLine){let i=this.boundingRect.y+this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(i=>({text:i.toString(),x:this.getScaleValue(i),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let i=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${i} L ${this.getScaleValue(e)},${i+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForTopAxis(){let t=[];if(this.showAxisLine){let i=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(i=>({text:i.toString(),x:this.getScaleValue(i),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let i=this.boundingRect.y;t.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${i+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(e)},${i+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}},mi=class extends jt{static{a(this,"BandAxis")}constructor(t,i,e,s,r){super(t,s,r,i),this.categories=e,this.scale=xt().domain(this.categories).range(this.getRange())}setRange(t){super.setRange(t)}recalculateScale(){this.scale=xt().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),ut.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(t){return this.scale(t)??this.getRange()[0]}},yi=class extends jt{static{a(this,"LinearAxis")}constructor(t,i,e,s,r){super(t,s,r,i),this.domain=e,this.scale=dt().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let t=[...this.domain];this.axisPosition==="left"&&t.reverse(),this.scale=dt().domain(t).range(this.getRange())}getScaleValue(t){return this.scale(t)}};function bt(t,i,e,s){let r=new Gt(s);return kt(t)?new mi(i,e,t.categories,t.title,r):new yi(i,e,[t.min,t.max],t.title,r)}a(bt,"getAxis");var bi=class{constructor(t,i,e,s){this.textDimensionCalculator=t,this.chartConfig=i,this.chartData=e,this.chartThemeConfig=s,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{a(this,"ChartTitle")}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){let i=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),e=Math.max(i.width,t.width),s=i.height+2*this.chartConfig.titlePadding;return i.width<=e&&i.height<=s&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=e,this.boundingRect.height=s,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let t=[];return this.showChartTitle&&t.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),t}};function Qt(t,i,e,s){let r=new Gt(s);return new bi(r,t,i,e)}a(Qt,"getChartTitleComponent");var Ai=class{constructor(t,i,e,s,r){this.plotData=t,this.xAxis=i,this.yAxis=e,this.orientation=s,this.plotIndex=r}static{a(this,"LinePlot")}getDrawableElement(){let t=this.plotData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),i;return this.orientation==="horizontal"?i=ft().y(e=>e[0]).x(e=>e[1])(t):i=ft().x(e=>e[0]).y(e=>e[1])(t),i?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:i,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}},ki=class{constructor(t,i,e,s,r,p){this.barData=t,this.boundingRect=i,this.xAxis=e,this.yAxis=s,this.orientation=r,this.plotIndex=p}static{a(this,"BarPlot")}getDrawableElement(){let t=this.barData.data.map(r=>[this.xAxis.getScaleValue(r[0]),this.yAxis.getScaleValue(r[1])]),e=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),s=e/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map(r=>({x:this.boundingRect.x,y:r[0]-s,height:e,width:r[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map(r=>({x:r[0]-s,y:r[1],width:e,height:this.boundingRect.y+this.boundingRect.height-r[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},wi=class{constructor(t,i,e){this.chartConfig=t,this.chartData=i,this.chartThemeConfig=e,this.boundingRect={x:0,y:0,width:0,height:0}}static{a(this,"BasePlot")}setAxes(t,i){this.xAxis=t,this.yAxis=i}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){return this.boundingRect.width=t.width,this.boundingRect.height=t.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let t=[];for(let[i,e]of this.chartData.plots.entries())switch(e.type){case"line":{let s=new Ai(e,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...s.getDrawableElement())}break;case"bar":{let s=new ki(e,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...s.getDrawableElement())}break}return t}};function Kt(t,i,e){return new wi(t,i,e)}a(Kt,"getPlotComponent");var Ci=class{constructor(t,i,e,s){this.chartConfig=t,this.chartData=i,this.componentStore={title:Qt(t,i,e,s),plot:Kt(t,i,e),xAxis:bt(i.xAxis,t.xAxis,{titleColor:e.xAxisTitleColor,labelColor:e.xAxisLabelColor,tickColor:e.xAxisTickColor,axisLineColor:e.xAxisLineColor},s),yAxis:bt(i.yAxis,t.yAxis,{titleColor:e.yAxisTitleColor,labelColor:e.yAxisLabelColor,tickColor:e.yAxisTickColor,axisLineColor:e.yAxisLineColor},s)}}static{a(this,"Orchestrator")}calculateVerticalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,s=0,r=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),p=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),x=this.componentStore.plot.calculateSpace({width:r,height:p});t-=x.width,i-=x.height,x=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),s=x.height,i-=x.height,this.componentStore.xAxis.setAxisPosition("bottom"),x=this.componentStore.xAxis.calculateSpace({width:t,height:i}),i-=x.height,this.componentStore.yAxis.setAxisPosition("left"),x=this.componentStore.yAxis.calculateSpace({width:t,height:i}),e=x.width,t-=x.width,t>0&&(r+=t,t=0),i>0&&(p+=i,i=0),this.componentStore.plot.calculateSpace({width:r,height:p}),this.componentStore.plot.setBoundingBoxXY({x:e,y:s}),this.componentStore.xAxis.setRange([e,e+r]),this.componentStore.xAxis.setBoundingBoxXY({x:e,y:s+p}),this.componentStore.yAxis.setRange([s,s+p]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:s}),this.chartData.plots.some(A=>yt(A))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,s=0,r=0,p=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),x=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),A=this.componentStore.plot.calculateSpace({width:p,height:x});t-=A.width,i-=A.height,A=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),e=A.height,i-=A.height,this.componentStore.xAxis.setAxisPosition("left"),A=this.componentStore.xAxis.calculateSpace({width:t,height:i}),t-=A.width,s=A.width,this.componentStore.yAxis.setAxisPosition("top"),A=this.componentStore.yAxis.calculateSpace({width:t,height:i}),i-=A.height,r=e+A.height,t>0&&(p+=t,t=0),i>0&&(x+=i,i=0),this.componentStore.plot.calculateSpace({width:p,height:x}),this.componentStore.plot.setBoundingBoxXY({x:s,y:r}),this.componentStore.yAxis.setRange([s,s+p]),this.componentStore.yAxis.setBoundingBoxXY({x:s,y:e}),this.componentStore.xAxis.setRange([r,r+x]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:r}),this.chartData.plots.some(L=>yt(L))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let t=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let i of Object.values(this.componentStore))t.push(...i.getDrawableElements());return t}},Si=class{static{a(this,"XYChartBuilder")}static build(t,i,e,s){return new Ci(t,i,e,s).getDrawableElement()}},K=0,Zt,Z=St(),J=Ct(),m=_t(),At=J.plotColorPalette.split(",").map(t=>t.trim()),at=!1,wt=!1;function Ct(){let t=Vt(),i=st();return pt(t.xyChart,i.themeVariables.xyChart)}a(Ct,"getChartDefaultThemeConfig");function St(){let t=st();return pt(Mt.xyChart,t.xyChart)}a(St,"getChartDefaultConfig");function _t(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}a(_t,"getChartDefaultData");function nt(t){let i=st();return Bt(t.trim(),i)}a(nt,"textSanitizer");function Jt(t){Zt=t}a(Jt,"setTmpSVGG");function ti(t){t==="horizontal"?Z.chartOrientation="horizontal":Z.chartOrientation="vertical"}a(ti,"setOrientation");function ii(t){m.xAxis.title=nt(t.text)}a(ii,"setXAxisTitle");function Tt(t,i){m.xAxis={type:"linear",title:m.xAxis.title,min:t,max:i},at=!0}a(Tt,"setXAxisRangeData");function ei(t){m.xAxis={type:"band",title:m.xAxis.title,categories:t.map(i=>nt(i.text))},at=!0}a(ei,"setXAxisBand");function si(t){m.yAxis.title=nt(t.text)}a(si,"setYAxisTitle");function ai(t,i){m.yAxis={type:"linear",title:m.yAxis.title,min:t,max:i},wt=!0}a(ai,"setYAxisRangeData");function ni(t){let i=Math.min(...t),e=Math.max(...t),s=j(m.yAxis)?m.yAxis.min:1/0,r=j(m.yAxis)?m.yAxis.max:-1/0;m.yAxis={type:"linear",title:m.yAxis.title,min:Math.min(s,i),max:Math.max(r,e)}}a(ni,"setYAxisRangeFromPlotData");function Rt(t){let i=[];if(t.length===0)return i;if(!at){let e=j(m.xAxis)?m.xAxis.min:1/0,s=j(m.xAxis)?m.xAxis.max:-1/0;Tt(Math.min(e,1),Math.max(s,t.length))}if(wt||ni(t),kt(m.xAxis)&&(i=m.xAxis.categories.map((e,s)=>[e,t[s]])),j(m.xAxis)){let e=m.xAxis.min,s=m.xAxis.max,r=(s-e)/(t.length-1),p=[];for(let x=e;x<=s;x+=r)p.push(`${x}`);i=p.map((x,A)=>[x,t[A]])}return i}a(Rt,"transformDataWithoutCategory");function Dt(t){return At[t===0?0:t%At.length]}a(Dt,"getPlotColorFromPalette");function ri(t,i){let e=Rt(i);m.plots.push({type:"line",strokeFill:Dt(K),strokeWidth:2,data:e}),K++}a(ri,"setLineData");function oi(t,i){let e=Rt(i);m.plots.push({type:"bar",fill:Dt(K),data:e}),K++}a(oi,"setBarData");function hi(){if(m.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return m.title=gt(),Si.build(Z,m,J,Zt)}a(hi,"getDrawableElem");function li(){return J}a(li,"getChartThemeConfig");function ci(){return Z}a(ci,"getChartConfig");function ui(){return m}a(ui,"getXYChartData");var _i=a(function(){zt(),K=0,Z=St(),m=_t(),J=Ct(),At=J.plotColorPalette.split(",").map(t=>t.trim()),at=!1,wt=!1},"clear"),Ti={getDrawableElem:hi,clear:_i,setAccTitle:Ft,getAccTitle:Ot,setDiagramTitle:Yt,getDiagramTitle:gt,getAccDescription:Nt,setAccDescription:Xt,setOrientation:ti,setXAxisTitle:ii,setXAxisRangeData:Tt,setXAxisBand:ei,setYAxisTitle:si,setYAxisRangeData:ai,setLineData:ri,setBarData:oi,setTmpSVGG:Jt,getChartThemeConfig:li,getChartConfig:ci,getXYChartData:ui},Ri=a((t,i,e,s)=>{let r=s.db,p=r.getChartThemeConfig(),x=r.getChartConfig(),A=r.getXYChartData().plots[0].data.map(f=>f[1]);function L(f){return f==="top"?"text-before-edge":"middle"}a(L,"getDominantBaseLine");function W(f){return f==="left"?"start":f==="right"?"end":"middle"}a(W,"getTextAnchor");function V(f){return`translate(${f.x}, ${f.y}) rotate(${f.rotation||0})`}a(V,"getTextTransformation"),ut.debug(`Rendering xychart chart -`+t);let T=Ht(i),E=T.append("g").attr("class","main"),z=E.append("rect").attr("width",x.width).attr("height",x.height).attr("class","background");Wt(T,x.height,x.width,!0),T.attr("viewBox",`0 0 ${x.width} ${x.height}`),z.attr("fill",p.backgroundColor),r.setTmpSVGG(T.append("g").attr("class","mermaid-tmp-group"));let F=r.getDrawableElem(),R={};function M(f){let D=E,h="";for(let[B]of f.entries()){let v=E;B>0&&R[h]&&(v=R[h]),h+=f[B],D=R[h],D||(D=R[h]=v.append("g").attr("class",f[B]))}return D}a(M,"getGroup");for(let f of F){if(f.data.length===0)continue;let D=M(f.groupTexts);switch(f.type){case"rect":if(D.selectAll("rect").data(f.data).enter().append("rect").attr("x",h=>h.x).attr("y",h=>h.y).attr("width",h=>h.width).attr("height",h=>h.height).attr("fill",h=>h.fill).attr("stroke",h=>h.strokeFill).attr("stroke-width",h=>h.strokeWidth),x.showDataLabel)if(x.chartOrientation==="horizontal"){let h=function(c,C){let{data:_,label:w}=c;return C*w.length*B<=_.width-10};var O=h;a(h,"fitsHorizontally");let B=.7,v=f.data.map((c,C)=>({data:c,label:A[C].toString()})).filter(c=>c.data.width>0&&c.data.height>0),b=v.map(c=>{let{data:C}=c,_=C.height*.7;for(;!h(c,_)&&_>0;)_-=1;return _}),H=Math.floor(Math.min(...b));D.selectAll("text").data(v).enter().append("text").attr("x",c=>c.data.x+c.data.width-10).attr("y",c=>c.data.y+c.data.height/2).attr("text-anchor","end").attr("dominant-baseline","middle").attr("fill","black").attr("font-size",`${H}px`).text(c=>c.label)}else{let h=function(c,C,_){let{data:w,label:U}=c,o=C*U.length*.7,l=w.x+w.width/2,u=l-o/2,g=l+o/2,y=u>=w.x&&g<=w.x+w.width,n=w.y+_+C<=w.y+w.height;return y&&n};var X=h;a(h,"fitsInBar");let B=10,v=f.data.map((c,C)=>({data:c,label:A[C].toString()})).filter(c=>c.data.width>0&&c.data.height>0),b=v.map(c=>{let{data:C,label:_}=c,w=C.width/(_.length*.7);for(;!h(c,w,B)&&w>0;)w-=1;return w}),H=Math.floor(Math.min(...b));D.selectAll("text").data(v).enter().append("text").attr("x",c=>c.data.x+c.data.width/2).attr("y",c=>c.data.y+B).attr("text-anchor","middle").attr("dominant-baseline","hanging").attr("fill","black").attr("font-size",`${H}px`).text(c=>c.label)}break;case"text":D.selectAll("text").data(f.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",h=>h.fill).attr("font-size",h=>h.fontSize).attr("dominant-baseline",h=>L(h.verticalPos)).attr("text-anchor",h=>W(h.horizontalPos)).attr("transform",h=>V(h)).text(h=>h.text);break;case"path":D.selectAll("path").data(f.data).enter().append("path").attr("d",h=>h.path).attr("fill",h=>h.fill?h.fill:"none").attr("stroke",h=>h.strokeFill).attr("stroke-width",h=>h.strokeWidth);break}}},"draw"),Di={draw:Ri},zi={parser:pi,db:Ti,renderer:Di};export{zi as diagram}; diff --git a/src/google/adk/cli/browser/chunk-JDPVSVO4.js b/src/google/adk/cli/browser/chunk-JDPVSVO4.js deleted file mode 100644 index ecf7c3c02e..0000000000 --- a/src/google/adk/cli/browser/chunk-JDPVSVO4.js +++ /dev/null @@ -1 +0,0 @@ -import{a as b}from"./chunk-XMBKBASC.js";import{$ as B,A as W,C as I,J as E,K as F,L as y,M as P,N as G,Q as V,R as x,S as R,U as Er,W as O,aa as Q,d as g,f as vr,i as K,k as _r,m as T,p as f,s as N,t as D,v,x as wr,y as br}from"./chunk-ASJUXEUE.js";import{V as Y,e as mr,l as M}from"./chunk-EGBSMT36.js";function k(r,e,n,t){var o;do o=B(t);while(r.hasNode(o));return n.dummy=e,r.setNode(o,n),o}function yr(r){var e=new b().setGraph(r.graph());return f(r.nodes(),function(n){e.setNode(n,r.node(n))}),f(r.edges(),function(n){var t=e.edge(n.v,n.w)||{weight:0,minlen:1},o=r.edge(n);e.setEdge(n.v,n.w,{weight:t.weight+o.weight,minlen:Math.max(t.minlen,o.minlen)})}),e}function q(r){var e=new b({multigraph:r.isMultigraph()}).setGraph(r.graph());return f(r.nodes(),function(n){r.children(n).length||e.setNode(n,r.node(n))}),f(r.edges(),function(n){e.setEdge(n,r.edge(n))}),e}function Z(r,e){var n=r.x,t=r.y,o=e.x-n,a=e.y-t,i=r.width/2,s=r.height/2;if(!o&&!a)throw new Error("Not possible to find intersection inside of the rectangle");var u,d;return Math.abs(a)*i>Math.abs(o)*s?(a<0&&(s=-s),u=s*o/a,d=s):(o<0&&(i=-i),u=i,d=i*a/o),{x:n+u,y:t+d}}function L(r){var e=v(x(rr(r)+1),function(){return[]});return f(r.nodes(),function(n){var t=r.node(n),o=t.rank;E(o)||(e[o][t.order]=n)}),e}function xr(r){var e=P(v(r.nodes(),function(n){return r.node(n).rank}));f(r.nodes(),function(n){var t=r.node(n);W(t,"rank")&&(t.rank-=e)})}function kr(r){var e=P(v(r.nodes(),function(a){return r.node(a).rank})),n=[];f(r.nodes(),function(a){var i=r.node(a).rank-e;n[i]||(n[i]=[]),n[i].push(a)});var t=0,o=r.graph().nodeRankFactor;f(n,function(a,i){E(a)&&i%o!==0?--t:t&&f(a,function(s){r.node(s).rank+=t})})}function $(r,e,n,t){var o={width:0,height:0};return arguments.length>=4&&(o.rank=n,o.order=t),k(r,"border",o,e)}function rr(r){return y(v(r.nodes(),function(e){var n=r.node(e).rank;if(!E(n))return n}))}function gr(r,e){var n={lhs:[],rhs:[]};return f(r,function(t){e(t)?n.lhs.push(t):n.rhs.push(t)}),n}function Nr(r,e){var n=K();try{return e()}finally{console.log(r+" time: "+(K()-n)+"ms")}}function Or(r,e){return e()}function Pr(r){function e(n){var t=r.children(n),o=r.node(n);if(t.length&&f(t,e),Object.prototype.hasOwnProperty.call(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var a=o.minRank,i=o.maxRank+1;a0;--s)if(i=e[s].dequeue(),i){t=t.concat(tr(r,e,n,i,!0));break}}}return t}function tr(r,e,n,t,o){var a=o?[]:void 0;return f(r.inEdges(t.v),function(i){var s=r.edge(i),u=r.node(i.v);o&&a.push({v:i.v,w:i.w}),u.out-=s,or(e,n,u)}),f(r.outEdges(t.v),function(i){var s=r.edge(i),u=i.w,d=r.node(u);d.in-=s,or(e,n,d)}),r.removeNode(t.v),a}function be(r,e){var n=new b,t=0,o=0;f(r.nodes(),function(s){n.setNode(s,{v:s,in:0,out:0})}),f(r.edges(),function(s){var u=n.edge(s.v,s.w)||0,d=e(s),c=u+d;n.setEdge(s.v,s.w,c),o=Math.max(o,n.node(s.v).out+=d),t=Math.max(t,n.node(s.w).in+=d)});var a=x(o+t+3).map(function(){return new X}),i=t+1;return f(n.nodes(),function(s){or(a,i,n.node(s))}),{graph:n,buckets:a,zeroIdx:i}}function or(r,e,n){n.out?n.in?r[n.out-n.in+e].enqueue(n):r[r.length-1].enqueue(n):r[0].enqueue(n)}function Mr(r){var e=r.graph().acyclicer==="greedy"?Sr(r,n(r)):Ee(r);f(e,function(t){var o=r.edge(t);r.removeEdge(t),o.forwardName=t.name,o.reversed=!0,r.setEdge(t.w,t.v,o,B("rev"))});function n(t){return function(o){return t.edge(o).weight}}}function Ee(r){var e=[],n={},t={};function o(a){Object.prototype.hasOwnProperty.call(t,a)||(t[a]=!0,n[a]=!0,f(r.outEdges(a),function(i){Object.prototype.hasOwnProperty.call(n,i.w)?e.push(i):o(i.w)}),delete n[a])}return f(r.nodes(),o),e}function Fr(r){f(r.edges(),function(e){var n=r.edge(e);if(n.reversed){r.removeEdge(e);var t=n.forwardName;delete n.reversed,delete n.forwardName,r.setEdge(e.w,e.v,n,t)}})}function Vr(r){r.graph().dummyChains=[],f(r.edges(),function(e){ye(r,e)})}function ye(r,e){var n=e.v,t=r.node(n).rank,o=e.w,a=r.node(o).rank,i=e.name,s=r.edge(e),u=s.labelRank;if(a!==t+1){r.removeEdge(e);var d=void 0,c,h;for(h=0,++t;ti.lim&&(s=i,u=!0);var d=N(e.edges(),function(c){return u===Yr(r,r.node(c.v),s)&&u!==Yr(r,r.node(c.w),s)});return G(d,function(c){return S(e,c)})}function Xr(r,e,n,t){var o=n.v,a=n.w;r.removeEdge(o,a),r.setEdge(t.v,t.w,{}),ur(r),fr(r,e),Ce(r,e)}function Ce(r,e){var n=D(r.nodes(),function(o){return!e.node(o).parent}),t=sr(r,n);t=t.slice(1),f(t,function(o){var a=r.node(o).parent,i=e.edge(o,a),s=!1;i||(i=e.edge(a,o),s=!0),e.node(o).rank=e.node(a).rank+(s?i.minlen:-i.minlen)})}function je(r,e,n){return r.hasEdge(e,n)}function Yr(r,e,n){return n.low<=e.lim&&e.lim<=n.lim}function dr(r){switch(r.graph().ranker){case"network-simplex":Hr(r);break;case"tight-tree":Re(r);break;case"longest-path":Te(r);break;default:Hr(r)}}var Te=z;function Re(r){z(r),H(r)}function Hr(r){j(r)}function Jr(r){var e=k(r,"root",{},"_root"),n=Se(r),t=y(I(n))-1,o=2*t+1;r.graph().nestingRoot=e,f(r.edges(),function(i){r.edge(i).minlen*=o});var a=Me(r)+1;f(r.children(),function(i){Kr(r,e,o,a,t,n,i)}),r.graph().nodeRankFactor=o}function Kr(r,e,n,t,o,a,i){var s=r.children(i);if(!s.length){i!==e&&r.setEdge(e,i,{weight:0,minlen:n});return}var u=$(r,"_bt"),d=$(r,"_bb"),c=r.node(i);r.setParent(u,i),c.borderTop=u,r.setParent(d,i),c.borderBottom=d,f(s,function(h){Kr(r,e,n,t,o,a,h);var l=r.node(h),p=l.borderTop?l.borderTop:h,m=l.borderBottom?l.borderBottom:h,w=l.borderTop?t:2*t,A=p!==m?1:o-a[i]+1;r.setEdge(u,p,{weight:w,minlen:A,nestingEdge:!0}),r.setEdge(m,d,{weight:w,minlen:A,nestingEdge:!0})}),r.parent(i)||r.setEdge(e,u,{weight:0,minlen:o+a[i]})}function Se(r){var e={};function n(t,o){var a=r.children(t);a&&a.length&&f(a,function(i){n(i,o+1)}),e[t]=o}return f(r.children(),function(t){n(t,1)}),e}function Me(r){return R(r.edges(),function(e,n){return e+r.edge(n).weight},0)}function Qr(r){var e=r.graph();r.removeNode(e.nestingRoot),delete e.nestingRoot,f(r.edges(),function(n){var t=r.edge(n);t.nestingEdge&&r.removeEdge(n)})}function Zr(r,e,n){var t={},o;f(n,function(a){for(var i=r.parent(a),s,u;i;){if(s=r.parent(i),s?(u=t[s],t[s]=i):(u=o,o=i),u&&u!==i){e.setEdge(u,i);return}i=s}})}function $r(r,e,n){var t=Ge(r),o=new b({compound:!0}).setGraph({root:t}).setDefaultNodeLabel(function(a){return r.node(a)});return f(r.nodes(),function(a){var i=r.node(a),s=r.parent(a);(i.rank===e||i.minRank<=e&&e<=i.maxRank)&&(o.setNode(a),o.setParent(a,s||t),f(r[n](a),function(u){var d=u.v===a?u.w:u.v,c=o.edge(d,a),h=E(c)?0:c.weight;o.setEdge(d,a,{weight:r.edge(u).weight+h})}),Object.prototype.hasOwnProperty.call(i,"minRank")&&o.setNode(a,{borderLeft:i.borderLeft[e],borderRight:i.borderRight[e]}))}),o}function Ge(r){for(var e;r.hasNode(e=B("_root")););return e}function re(r,e){for(var n=0,t=1;t0;)c%2&&(h+=s[c+1]),c=c-1>>1,s[c]+=d.weight;u+=d.weight*h})),u}function ee(r){var e={},n=N(r.nodes(),function(s){return!r.children(s).length}),t=y(v(n,function(s){return r.node(s).rank})),o=v(x(t+1),function(){return[]});function a(s){if(!W(e,s)){e[s]=!0;var u=r.node(s);o[u.rank].push(s),f(r.successors(s),a)}}var i=O(n,function(s){return r.node(s).rank});return f(i,a),o}function ne(r,e){return v(e,function(n){var t=r.inEdges(n);if(t.length){var o=R(t,function(a,i){var s=r.edge(i),u=r.node(i.v);return{sum:a.sum+s.weight*u.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:n,barycenter:o.sum/o.weight,weight:o.weight}}else return{v:n}})}function te(r,e){var n={};f(r,function(o,a){var i=n[o.v]={indegree:0,in:[],out:[],vs:[o.v],i:a};E(o.barycenter)||(i.barycenter=o.barycenter,i.weight=o.weight)}),f(e.edges(),function(o){var a=n[o.v],i=n[o.w];!E(a)&&!E(i)&&(i.indegree++,a.out.push(n[o.w]))});var t=N(n,function(o){return!o.indegree});return Be(t)}function Be(r){var e=[];function n(a){return function(i){i.merged||(E(i.barycenter)||E(a.barycenter)||i.barycenter>=a.barycenter)&&Ae(a,i)}}function t(a){return function(i){i.in.push(a),--i.indegree===0&&r.push(i)}}for(;r.length;){var o=r.pop();e.push(o),f(o.in.reverse(),n(o)),f(o.out,t(o))}return v(N(e,function(a){return!a.merged}),function(a){return V(a,["vs","i","barycenter","weight"])})}function Ae(r,e){var n=0,t=0;r.weight&&(n+=r.barycenter*r.weight,t+=r.weight),e.weight&&(n+=e.barycenter*e.weight,t+=e.weight),r.vs=e.vs.concat(r.vs),r.barycenter=n/t,r.weight=t,r.i=Math.min(e.i,r.i),e.merged=!0}function ae(r,e){var n=gr(r,function(c){return Object.prototype.hasOwnProperty.call(c,"barycenter")}),t=n.lhs,o=O(n.rhs,function(c){return-c.i}),a=[],i=0,s=0,u=0;t.sort(De(!!e)),u=oe(a,o,u),f(t,function(c){u+=c.vs.length,a.push(c.vs),i+=c.barycenter*c.weight,s+=c.weight,u=oe(a,o,u)});var d={vs:g(a)};return s&&(d.barycenter=i/s,d.weight=s),d}function oe(r,e,n){for(var t;e.length&&(t=T(e)).i<=n;)e.pop(),r.push(t.vs),n++;return n}function De(r){return function(e,n){return e.barycentern.barycenter?1:r?n.i-e.i:e.i-n.i}}function cr(r,e,n,t){var o=r.children(e),a=r.node(e),i=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,u={};i&&(o=N(o,function(m){return m!==i&&m!==s}));var d=ne(r,o);f(d,function(m){if(r.children(m.v).length){var w=cr(r,m.v,n,t);u[m.v]=w,Object.prototype.hasOwnProperty.call(w,"barycenter")&&ze(m,w)}});var c=te(d,n);Ye(c,u);var h=ae(c,t);if(i&&(h.vs=g([i,h.vs,s]),r.predecessors(i).length)){var l=r.node(r.predecessors(i)[0]),p=r.node(r.predecessors(s)[0]);Object.prototype.hasOwnProperty.call(h,"barycenter")||(h.barycenter=0,h.weight=0),h.barycenter=(h.barycenter*h.weight+l.order+p.order)/(h.weight+2),h.weight+=2}return h}function Ye(r,e){f(r,function(n){n.vs=g(n.vs.map(function(t){return e[t]?e[t].vs:t}))})}function ze(r,e){E(r.barycenter)?(r.barycenter=e.barycenter,r.weight=e.weight):(r.barycenter=(r.barycenter*r.weight+e.barycenter*e.weight)/(r.weight+e.weight),r.weight+=e.weight)}function fe(r){var e=rr(r),n=ie(r,x(1,e+1),"inEdges"),t=ie(r,x(e-1,-1,-1),"outEdges"),o=ee(r);se(r,o);for(var a=Number.POSITIVE_INFINITY,i,s=0,u=0;u<4;++s,++u){Ue(s%2?n:t,s%4>=2),o=L(r);var d=re(r,o);di||s>e[u].lim));for(d=u,u=t;(u=r.parent(u))!==d;)a.push(u);return{path:o.concat(a.reverse()),lca:d}}function qe(r){var e={},n=0;function t(o){var a=n;f(r.children(o),t),e[o]={low:a,lim:n++}}return f(r.children(),t),e}function Xe(r,e){var n={};function t(o,a){var i=0,s=0,u=o.length,d=T(a);return f(a,function(c,h){var l=Je(r,c),p=l?r.node(l).order:u;(l||c===d)&&(f(a.slice(s,h+1),function(m){f(r.predecessors(m),function(w){var A=r.node(w),pr=A.order;(prd)&&de(n,l,c)})})}function o(a,i){var s=-1,u,d=0;return f(i,function(c,h){if(r.node(c).dummy==="border"){var l=r.predecessors(c);l.length&&(u=r.node(l[0]).order,t(i,d,h,s,u),d=h,s=u)}t(i,d,i.length,u,a.length)}),i}return R(e,o),n}function Je(r,e){if(r.node(e).dummy)return D(r.predecessors(e),function(n){return r.node(n).dummy})}function de(r,e,n){if(e>n){var t=e;e=n,n=t}Object.prototype.hasOwnProperty.call(r,e)||Object.defineProperty(r,e,{enumerable:!0,configurable:!0,value:{},writable:!0});var o=r[e];Object.defineProperty(o,n,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function Ke(r,e,n){if(e>n){var t=e;e=n,n=t}return!!r[e]&&Object.prototype.hasOwnProperty.call(r[e],n)}function Qe(r,e,n,t){var o={},a={},i={};return f(e,function(s){f(s,function(u,d){o[u]=u,a[u]=u,i[u]=d})}),f(e,function(s){var u=-1;f(s,function(d){var c=t(d);if(c.length){c=O(c,function(w){return i[w]});for(var h=(c.length-1)/2,l=Math.floor(h),p=Math.ceil(h);l<=p;++l){var m=c[l];a[d]===d&&u{var t=n(" buildLayoutGraph",()=>wn(r));n(" runLayout",()=>fn(t,n)),n(" updateInputGraph",()=>un(r,t))})}function fn(r,e){e(" makeSpaceForEdgeLabels",()=>bn(r)),e(" removeSelfEdges",()=>Pn(r)),e(" acyclic",()=>Mr(r)),e(" nestingGraph.run",()=>Jr(r)),e(" rank",()=>dr(q(r))),e(" injectEdgeLabelProxies",()=>En(r)),e(" removeEmptyRanks",()=>kr(r)),e(" nestingGraph.cleanup",()=>Qr(r)),e(" normalizeRanks",()=>xr(r)),e(" assignRankMinMax",()=>yn(r)),e(" removeEdgeLabelProxies",()=>xn(r)),e(" normalize.run",()=>Vr(r)),e(" parentDummyChains",()=>ue(r)),e(" addBorderSegments",()=>Pr(r)),e(" order",()=>fe(r)),e(" insertSelfEdges",()=>Ln(r)),e(" adjustCoordinateSystem",()=>Cr(r)),e(" position",()=>he(r)),e(" positionSelfEdges",()=>Cn(r)),e(" removeBorderNodes",()=>In(r)),e(" normalize.undo",()=>Br(r)),e(" fixupEdgeLabelCoords",()=>Nn(r)),e(" undoCoordinateSystem",()=>jr(r)),e(" translateGraph",()=>kn(r)),e(" assignNodeIntersects",()=>gn(r)),e(" reversePoints",()=>On(r)),e(" acyclic.undo",()=>Fr(r))}function un(r,e){f(r.nodes(),function(n){var t=r.node(n),o=e.node(n);t&&(t.x=o.x,t.y=o.y,e.children(n).length&&(t.width=o.width,t.height=o.height))}),f(r.edges(),function(n){var t=r.edge(n),o=e.edge(n);t.points=o.points,Object.prototype.hasOwnProperty.call(o,"x")&&(t.x=o.x,t.y=o.y)}),r.graph().width=e.graph().width,r.graph().height=e.graph().height}var dn=["nodesep","edgesep","ranksep","marginx","marginy"],cn={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},hn=["acyclicer","ranker","rankdir","align"],ln=["width","height"],pn={width:0,height:0},mn=["minlen","weight","width","height","labeloffset"],vn={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},_n=["labelpos"];function wn(r){var e=new b({multigraph:!0,compound:!0}),n=lr(r.graph());return e.setGraph(Y({},cn,hr(n,dn),V(n,hn))),f(r.nodes(),function(t){var o=lr(r.node(t));e.setNode(t,_r(hr(o,ln),pn)),e.setParent(t,r.parent(t))}),f(r.edges(),function(t){var o=lr(r.edge(t));e.setEdge(t,Y({},vn,hr(o,mn),V(o,_n)))}),e}function bn(r){var e=r.graph();e.ranksep/=2,f(r.edges(),function(n){var t=r.edge(n);t.minlen*=2,t.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?t.width+=t.labeloffset:t.height+=t.labeloffset)})}function En(r){f(r.edges(),function(e){var n=r.edge(e);if(n.width&&n.height){var t=r.node(e.v),o=r.node(e.w),a={rank:(o.rank-t.rank)/2+t.rank,e};k(r,"edge-proxy",a,"_ep")}})}function yn(r){var e=0;f(r.nodes(),function(n){var t=r.node(n);t.borderTop&&(t.minRank=r.node(t.borderTop).rank,t.maxRank=r.node(t.borderBottom).rank,e=y(e,t.maxRank))}),r.graph().maxRank=e}function xn(r){f(r.nodes(),function(e){var n=r.node(e);n.dummy==="edge-proxy"&&(r.edge(n.e).labelRank=n.rank,r.removeNode(e))})}function kn(r){var e=Number.POSITIVE_INFINITY,n=0,t=Number.POSITIVE_INFINITY,o=0,a=r.graph(),i=a.marginx||0,s=a.marginy||0;function u(d){var c=d.x,h=d.y,l=d.width,p=d.height;e=Math.min(e,c-l/2),n=Math.max(n,c+l/2),t=Math.min(t,h-p/2),o=Math.max(o,h+p/2)}f(r.nodes(),function(d){u(r.node(d))}),f(r.edges(),function(d){var c=r.edge(d);Object.prototype.hasOwnProperty.call(c,"x")&&u(c)}),e-=i,t-=s,f(r.nodes(),function(d){var c=r.node(d);c.x-=e,c.y-=t}),f(r.edges(),function(d){var c=r.edge(d);f(c.points,function(h){h.x-=e,h.y-=t}),Object.prototype.hasOwnProperty.call(c,"x")&&(c.x-=e),Object.prototype.hasOwnProperty.call(c,"y")&&(c.y-=t)}),a.width=n-e+i,a.height=o-t+s}function gn(r){f(r.edges(),function(e){var n=r.edge(e),t=r.node(e.v),o=r.node(e.w),a,i;n.points?(a=n.points[0],i=n.points[n.points.length-1]):(n.points=[],a=o,i=t),n.points.unshift(Z(t,a)),n.points.push(Z(o,i))})}function Nn(r){f(r.edges(),function(e){var n=r.edge(e);if(Object.prototype.hasOwnProperty.call(n,"x"))switch((n.labelpos==="l"||n.labelpos==="r")&&(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset;break}})}function On(r){f(r.edges(),function(e){var n=r.edge(e);n.reversed&&n.points.reverse()})}function In(r){f(r.nodes(),function(e){if(r.children(e).length){var n=r.node(e),t=r.node(n.borderTop),o=r.node(n.borderBottom),a=r.node(T(n.borderLeft)),i=r.node(T(n.borderRight));n.width=Math.abs(i.x-a.x),n.height=Math.abs(o.y-t.y),n.x=a.x+n.width/2,n.y=t.y+n.height/2}}),f(r.nodes(),function(e){r.node(e).dummy==="border"&&r.removeNode(e)})}function Pn(r){f(r.edges(),function(e){if(e.v===e.w){var n=r.node(e.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e,label:r.edge(e)}),r.removeEdge(e)}})}function Ln(r){var e=L(r);f(e,function(n){var t=0;f(n,function(o,a){var i=r.node(o);i.order=a+t,f(i.selfEdges,function(s){k(r,"selfedge",{width:s.label.width,height:s.label.height,rank:i.rank,order:a+ ++t,e:s.e,label:s.label},"_se")}),delete i.selfEdges})})}function Cn(r){f(r.nodes(),function(e){var n=r.node(e);if(n.dummy==="selfedge"){var t=r.node(n.e.v),o=t.x+t.width/2,a=t.y,i=n.x-o,s=t.height/2;r.setEdge(n.e,n.label),r.removeNode(e),n.label.points=[{x:o+2*i/3,y:a-s},{x:o+5*i/6,y:a-s},{x:o+i,y:a},{x:o+5*i/6,y:a+s},{x:o+2*i/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}})}function hr(r,e){return F(V(r,e),Number)}function lr(r){var e={};return f(r,function(n,t){e[t.toLowerCase()]=n}),e}export{sn as a}; diff --git a/src/google/adk/cli/browser/chunk-JHZIBEJC.js b/src/google/adk/cli/browser/chunk-JHZIBEJC.js deleted file mode 100644 index eb52947847..0000000000 --- a/src/google/adk/cli/browser/chunk-JHZIBEJC.js +++ /dev/null @@ -1 +0,0 @@ -import{g as y}from"./chunk-JRNAXTJ7.js";var A=y((t,r)=>{if(r)return"translate("+-t.width/2+", "+-t.height/2+")";let s=t.x??0,e=t.y??0;return"translate("+-(s+t.width/2)+", "+-(e+t.height/2)+")"},"computeLabelTransform"),c={aggregation:17.25,extension:17.25,composition:17.25,dependency:6,lollipop:13.5,arrow_point:4},M={arrow_point:9,arrow_cross:12.5,arrow_circle:12.5};function w(t,r){if(t===void 0||r===void 0)return{angle:0,deltaX:0,deltaY:0};t=n(t),r=n(r);let[s,e]=[t.x,t.y],[a,i]=[r.x,r.y],o=a-s,x=i-e;return{angle:Math.atan(x/o),deltaX:o,deltaY:x}}y(w,"calculateDeltaAndAngle");var n=y(t=>Array.isArray(t)?{x:t[0],y:t[1]}:t,"pointTransformer"),m=y(t=>({x:y(function(r,s,e){let a=0,i=n(e[0]).x=0?1:-1)}else if(s===e.length-1&&Object.hasOwn(c,t.arrowTypeEnd)){let{angle:l,deltaX:g}=w(e[e.length-1],e[e.length-2]);a=c[t.arrowTypeEnd]*Math.cos(l)*(g>=0?1:-1)}let o=Math.abs(n(r).x-n(e[e.length-1]).x),x=Math.abs(n(r).y-n(e[e.length-1]).y),f=Math.abs(n(r).x-n(e[0]).x),d=Math.abs(n(r).y-n(e[0]).y),h=c[t.arrowTypeStart],u=c[t.arrowTypeEnd],p=1;if(o0&&x0&&d=0?1:-1)}else if(s===e.length-1&&Object.hasOwn(c,t.arrowTypeEnd)){let{angle:l,deltaY:g}=w(e[e.length-1],e[e.length-2]);a=c[t.arrowTypeEnd]*Math.abs(Math.sin(l))*(g>=0?1:-1)}let o=Math.abs(n(r).y-n(e[e.length-1]).y),x=Math.abs(n(r).x-n(e[e.length-1]).x),f=Math.abs(n(r).y-n(e[0]).y),d=Math.abs(n(r).x-n(e[0]).x),h=c[t.arrowTypeStart],u=c[t.arrowTypeEnd],p=1;if(o0&&x0&&dnew v,"TokenBuilder"),ValueConverter:e(()=>new l,"ValueConverter")}};function M(c=n){let r=a(d(c),i),t=a(o({shared:r}),u,R);return r.ServiceRegistry.register(t),{shared:r,Radar:t}}e(M,"createRadarServices");export{R as a,M as b}; diff --git a/src/google/adk/cli/browser/chunk-JUE6OUNA.js b/src/google/adk/cli/browser/chunk-JUE6OUNA.js new file mode 100644 index 0000000000..83199bc54f --- /dev/null +++ b/src/google/adk/cli/browser/chunk-JUE6OUNA.js @@ -0,0 +1,7 @@ +import{a as Ht}from"./chunk-PDRDFWTH.js";import{e as Ut}from"./chunk-4V3PIBXT.js";import{C as pt}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as st,G as Mt,N as Wt,R as zt,S as Ft,T as Ot,U as Xt,V as Yt,W as Nt,X as gt,p as Vt,r as Bt}from"./chunk-37QI3DOO.js";import{M as ft,g as s,i as ut,s as xt,t as dt}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";var mt=(function(){var t=s(function(y,o,h,c){for(h=h||{},c=y.length;c--;h[y[c]]=o);return h},"o"),i=[1,10,12,14,16,18,19,21,23],e=[2,6],a=[1,3],r=[1,5],d=[1,6],g=[1,7],k=[1,5,10,12,14,16,18,19,21,23,34,35,36],I=[1,25],z=[1,26],M=[1,28],D=[1,29],V=[1,30],F=[1,31],O=[1,32],v=[1,33],W=[1,34],X=[1,35],Y=[1,36],f=[1,37],P=[1,43],l=[1,42],T=[1,47],L=[1,50],m=[1,10,12,14,16,18,19,21,23,34,35,36],H=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36],S=[1,10,12,14,16,18,19,21,23,24,26,27,28,34,35,36,41,42,43,44,45,46,47,48,49,50],G=[1,64],w={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,commaSeparatedNumbers:25,SQUARE_BRACES_END:26,NUMBER_WITH_DECIMAL:27,COMMA:28,xAxisData:29,bandData:30,ARROW_DELIMITER:31,commaSeparatedTexts:32,yAxisData:33,NEWLINE:34,SEMI:35,EOF:36,alphaNum:37,STR:38,MD_STR:39,alphaNumToken:40,AMP:41,NUM:42,ALPHA:43,PLUS:44,EQUALS:45,MULT:46,DOT:47,BRKT:48,MINUS:49,UNDERSCORE:50,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",27:"NUMBER_WITH_DECIMAL",28:"COMMA",31:"ARROW_DELIMITER",34:"NEWLINE",35:"SEMI",36:"EOF",38:"STR",39:"MD_STR",41:"AMP",42:"NUM",43:"ALPHA",44:"PLUS",45:"EQUALS",46:"MULT",47:"DOT",48:"BRKT",49:"MINUS",50:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[13,1],[13,2],[13,1],[29,1],[29,3],[30,3],[32,3],[32,1],[15,1],[15,2],[15,1],[33,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[37,1],[37,2],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1],[40,1]],performAction:s(function(o,h,c,u,A,n,U){var x=n.length-1;switch(A){case 5:u.setOrientation(n[x]);break;case 9:u.setDiagramTitle(n[x].text.trim());break;case 12:u.setLineData({text:"",type:"text"},n[x]);break;case 13:u.setLineData(n[x-1],n[x]);break;case 14:u.setBarData({text:"",type:"text"},n[x]);break;case 15:u.setBarData(n[x-1],n[x]);break;case 16:this.$=n[x].trim(),u.setAccTitle(this.$);break;case 17:case 18:this.$=n[x].trim(),u.setAccDescription(this.$);break;case 19:this.$=n[x-1];break;case 20:this.$=[Number(n[x-2]),...n[x]];break;case 21:this.$=[Number(n[x])];break;case 22:u.setXAxisTitle(n[x]);break;case 23:u.setXAxisTitle(n[x-1]);break;case 24:u.setXAxisTitle({type:"text",text:""});break;case 25:u.setXAxisBand(n[x]);break;case 26:u.setXAxisRangeData(Number(n[x-2]),Number(n[x]));break;case 27:this.$=n[x-1];break;case 28:this.$=[n[x-2],...n[x]];break;case 29:this.$=[n[x]];break;case 30:u.setYAxisTitle(n[x]);break;case 31:u.setYAxisTitle(n[x-1]);break;case 32:u.setYAxisTitle({type:"text",text:""});break;case 33:u.setYAxisRangeData(Number(n[x-2]),Number(n[x]));break;case 37:this.$={text:n[x],type:"text"};break;case 38:this.$={text:n[x],type:"text"};break;case 39:this.$={text:n[x],type:"markdown"};break;case 40:this.$=n[x];break;case 41:this.$=n[x-1]+""+n[x];break}},"anonymous"),table:[t(i,e,{3:1,4:2,7:4,5:a,34:r,35:d,36:g}),{1:[3]},t(i,e,{4:2,7:4,3:8,5:a,34:r,35:d,36:g}),t(i,e,{4:2,7:4,6:9,3:10,5:a,8:[1,11],34:r,35:d,36:g}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},t(k,[2,34]),t(k,[2,35]),t(k,[2,36]),{1:[2,1]},t(i,e,{4:2,7:4,3:21,5:a,34:r,35:d,36:g}),{1:[2,3]},t(k,[2,5]),t(i,[2,7],{4:22,34:r,35:d,36:g}),{11:23,37:24,38:I,39:z,40:27,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f},{11:39,13:38,24:P,27:l,29:40,30:41,37:24,38:I,39:z,40:27,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f},{11:45,15:44,27:T,33:46,37:24,38:I,39:z,40:27,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f},{11:49,17:48,24:L,37:24,38:I,39:z,40:27,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f},{11:52,17:51,24:L,37:24,38:I,39:z,40:27,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f},{20:[1,53]},{22:[1,54]},t(m,[2,18]),{1:[2,2]},t(m,[2,8]),t(m,[2,9]),t(H,[2,37],{40:55,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f}),t(H,[2,38]),t(H,[2,39]),t(S,[2,40]),t(S,[2,42]),t(S,[2,43]),t(S,[2,44]),t(S,[2,45]),t(S,[2,46]),t(S,[2,47]),t(S,[2,48]),t(S,[2,49]),t(S,[2,50]),t(S,[2,51]),t(m,[2,10]),t(m,[2,22],{30:41,29:56,24:P,27:l}),t(m,[2,24]),t(m,[2,25]),{31:[1,57]},{11:59,32:58,37:24,38:I,39:z,40:27,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f},t(m,[2,11]),t(m,[2,30],{33:60,27:T}),t(m,[2,32]),{31:[1,61]},t(m,[2,12]),{17:62,24:L},{25:63,27:G},t(m,[2,14]),{17:65,24:L},t(m,[2,16]),t(m,[2,17]),t(S,[2,41]),t(m,[2,23]),{27:[1,66]},{26:[1,67]},{26:[2,29],28:[1,68]},t(m,[2,31]),{27:[1,69]},t(m,[2,13]),{26:[1,70]},{26:[2,21],28:[1,71]},t(m,[2,15]),t(m,[2,26]),t(m,[2,27]),{11:59,32:72,37:24,38:I,39:z,40:27,41:M,42:D,43:V,44:F,45:O,46:v,47:W,48:X,49:Y,50:f},t(m,[2,33]),t(m,[2,19]),{25:73,27:G},{26:[2,28]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],72:[2,28],73:[2,20]},parseError:s(function(o,h){if(h.recoverable)this.trace(o);else{var c=new Error(o);throw c.hash=h,c}},"parseError"),parse:s(function(o){var h=this,c=[0],u=[],A=[null],n=[],U=this.table,x="",tt=0,vt=0,Pt=0,gi=2,Lt=1,xi=n.slice.call(arguments,1),C=Object.create(this.lexer),$={yy:{}};for(var rt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,rt)&&($.yy[rt]=this.yy[rt]);C.setInput(o,$.yy),$.yy.lexer=C,$.yy.parser=this,typeof C.yylloc>"u"&&(C.yylloc={});var ot=C.yylloc;n.push(ot);var di=C.options&&C.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function fi(E){c.length=c.length-2*E,A.length=A.length-E,n.length=n.length-E}s(fi,"popStack");function Et(){var E;return E=u.pop()||C.lex()||Lt,typeof E!="number"&&(E instanceof Array&&(u=E,E=u.pop()),E=h.symbols_[E]||E),E}s(Et,"lex");for(var _,ht,q,B,vi,lt,j={},it,N,It,et;;){if(q=c[c.length-1],this.defaultActions[q]?B=this.defaultActions[q]:((_===null||typeof _>"u")&&(_=Et()),B=U[q]&&U[q][_]),typeof B>"u"||!B.length||!B[0]){var ct="";et=[];for(it in U[q])this.terminals_[it]&&it>gi&&et.push("'"+this.terminals_[it]+"'");C.showPosition?ct="Parse error on line "+(tt+1)+`: +`+C.showPosition()+` +Expecting `+et.join(", ")+", got '"+(this.terminals_[_]||_)+"'":ct="Parse error on line "+(tt+1)+": Unexpected "+(_==Lt?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(ct,{text:C.match,token:this.terminals_[_]||_,line:C.yylineno,loc:ot,expected:et})}if(B[0]instanceof Array&&B.length>1)throw new Error("Parse Error: multiple actions possible at state: "+q+", token: "+_);switch(B[0]){case 1:c.push(_),A.push(C.yytext),n.push(C.yylloc),c.push(B[1]),_=null,ht?(_=ht,ht=null):(vt=C.yyleng,x=C.yytext,tt=C.yylineno,ot=C.yylloc,Pt>0&&Pt--);break;case 2:if(N=this.productions_[B[1]][1],j.$=A[A.length-N],j._$={first_line:n[n.length-(N||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(N||1)].first_column,last_column:n[n.length-1].last_column},di&&(j._$.range=[n[n.length-(N||1)].range[0],n[n.length-1].range[1]]),lt=this.performAction.apply(j,[x,vt,tt,$.yy,B[1],A,n].concat(xi)),typeof lt<"u")return lt;N&&(c=c.slice(0,-1*N*2),A=A.slice(0,-1*N),n=n.slice(0,-1*N)),c.push(this.productions_[B[1]][0]),A.push(j.$),n.push(j._$),It=U[c[c.length-2]][c[c.length-1]],c.push(It);break;case 3:return!0}}return!0},"parse")},b=(function(){var y={EOF:1,parseError:s(function(h,c){if(this.yy.parser)this.yy.parser.parseError(h,c);else throw new Error(h)},"parseError"),setInput:s(function(o,h){return this.yy=h||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:s(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var h=o.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:s(function(o){var h=o.length,c=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var A=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===u.length?this.yylloc.first_column:0)+u[u.length-c.length].length-c[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:s(function(){return this._more=!0,this},"more"),reject:s(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:s(function(o){this.unput(this.match.slice(o))},"less"),pastInput:s(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:s(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:s(function(){var o=this.pastInput(),h=new Array(o.length+1).join("-");return o+this.upcomingInput()+` +`+h+"^"},"showPosition"),test_match:s(function(o,h){var c,u,A;if(this.options.backtrack_lexer&&(A={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(A.yylloc.range=this.yylloc.range.slice(0))),u=o[0].match(/(?:\r\n?|\n).*/g),u&&(this.yylineno+=u.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:u?u[u.length-1].length-u[u.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],c=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack){for(var n in A)this[n]=A[n];return!1}return!1},"test_match"),next:s(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,h,c,u;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),n=0;nh[0].length)){if(h=c,u=n,this.options.backtrack_lexer){if(o=this.test_match(c,A[n]),o!==!1)return o;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(o=this.test_match(h,A[u]),o!==!1?o:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:s(function(){var h=this.next();return h||this.lex()},"lex"),begin:s(function(h){this.conditionStack.push(h)},"begin"),popState:s(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:s(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:s(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:s(function(h){this.begin(h)},"pushState"),stateStackSize:s(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:s(function(h,c,u,A){var n=A;switch(u){case 0:break;case 1:break;case 2:return this.popState(),34;break;case 3:return this.popState(),34;break;case 4:return 34;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState("axis_data"),"X_AXIS";break;case 18:return this.pushState("axis_data"),"Y_AXIS";break;case 19:return this.pushState("axis_band_data"),24;break;case 20:return 31;case 21:return this.pushState("data"),16;break;case 22:return this.pushState("data"),18;break;case 23:return this.pushState("data_inner"),24;break;case 24:return 27;case 25:return this.popState(),26;break;case 26:this.popState();break;case 27:this.pushState("string");break;case 28:this.popState();break;case 29:return"STR";case 30:return 24;case 31:return 26;case 32:return 43;case 33:return"COLON";case 34:return 44;case 35:return 28;case 36:return 45;case 37:return 46;case 38:return 48;case 39:return 50;case 40:return 47;case 41:return 41;case 42:return 49;case 43:return 42;case 44:break;case 45:return 35;case 46:return 36}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\})/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}};return y})();w.lexer=b;function R(){this.yy={}}return s(R,"Parser"),R.prototype=w,w.Parser=R,new R})();mt.parser=mt;var pi=mt;function yt(t){return t.type==="bar"}s(yt,"isBarPlot");function kt(t){return t.type==="band"}s(kt,"isBandAxisData");function Q(t){return t.type==="linear"}s(Q,"isLinearAxisData");var Gt=class{constructor(t){this.parentGroup=t}static{s(this,"TextDimensionCalculatorWithFont")}getMaxDimension(t,i){if(!this.parentGroup)return{width:t.reduce((r,d)=>Math.max(d.length,r),0)*i,height:i};let e={width:0,height:0},a=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",i);for(let r of t){let d=Ut(a,1,r),g=d?d.width:r.length*i,k=d?d.height:i;e.width=Math.max(e.width,g),e.height=Math.max(e.height,k)}return a.remove(),e}},$t=.7,qt=.2,jt=class{constructor(t,i,e,a){this.axisConfig=t,this.title=i,this.textDimensionCalculator=e,this.axisThemeConfig=a,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left"}static{s(this,"BaseAxis")}setRange(t){this.range=t,this.axisPosition==="left"||this.axisPosition==="right"?this.boundingRect.height=t[1]-t[0]:this.boundingRect.width=t[1]-t[0],this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(t){this.axisPosition=t,this.setRange(this.range)}getTickDistance(){let t=this.getRange();return Math.abs(t[0]-t[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map(t=>t.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){$t*this.getTickDistance()>this.outerPadding*2&&(this.outerPadding=Math.floor($t*this.getTickDistance()/2)),this.recalculateScale()}calculateSpaceIfDrawnHorizontally(t){let i=t.height;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let e=this.getLabelDimension(),a=qt*t.width;this.outerPadding=Math.min(e.width/2,a);let r=e.height+this.axisConfig.labelPadding*2;this.labelTextHeight=e.height,r<=i&&(i-=r,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),a=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,a<=i&&(i-=a,this.showTitle=!0)}this.boundingRect.width=t.width,this.boundingRect.height=t.height-i}calculateSpaceIfDrawnVertical(t){let i=t.width;if(this.axisConfig.showAxisLine&&i>this.axisConfig.axisLineWidth&&(i-=this.axisConfig.axisLineWidth,this.showAxisLine=!0),this.axisConfig.showLabel){let e=this.getLabelDimension(),a=qt*t.height;this.outerPadding=Math.min(e.height/2,a);let r=e.width+this.axisConfig.labelPadding*2;r<=i&&(i-=r,this.showLabel=!0)}if(this.axisConfig.showTick&&i>=this.axisConfig.tickLength&&(this.showTick=!0,i-=this.axisConfig.tickLength),this.axisConfig.showTitle&&this.title){let e=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),a=e.height+this.axisConfig.titlePadding*2;this.titleTextHeight=e.height,a<=i&&(i-=a,this.showTitle=!0)}this.boundingRect.width=t.width-i,this.boundingRect.height=t.height}calculateSpace(t){return this.axisPosition==="left"||this.axisPosition==="right"?this.calculateSpaceIfDrawnVertical(t):this.calculateSpaceIfDrawnHorizontally(t),this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}getDrawableElementsForLeftAxis(){let t=[];if(this.showAxisLine){let i=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${i},${this.boundingRect.y} L ${i},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map(i=>({text:i.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(i),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))}),this.showTick){let i=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map(e=>({path:`M ${i},${this.getScaleValue(e)} L ${i-this.axisConfig.tickLength},${this.getScaleValue(e)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForBottomAxis(){let t=[];if(this.showAxisLine){let i=this.boundingRect.y+this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map(i=>({text:i.toString(),x:this.getScaleValue(i),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let i=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);t.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${i} L ${this.getScaleValue(e)},${i+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElementsForTopAxis(){let t=[];if(this.showAxisLine){let i=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;t.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${i} L ${this.boundingRect.x+this.boundingRect.width},${i}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel&&t.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map(i=>({text:i.toString(),x:this.getScaleValue(i),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))}),this.showTick){let i=this.boundingRect.y;t.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map(e=>({path:`M ${this.getScaleValue(e)},${i+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(e)},${i+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}return this.showTitle&&t.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]}),t}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");return this.axisPosition==="bottom"?this.getDrawableElementsForBottomAxis():this.axisPosition==="top"?this.getDrawableElementsForTopAxis():[]}},mi=class extends jt{static{s(this,"BandAxis")}constructor(t,i,e,a,r){super(t,a,r,i),this.categories=e,this.scale=xt().domain(this.categories).range(this.getRange())}setRange(t){super.setRange(t)}recalculateScale(){this.scale=xt().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(.5),ut.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(t){return this.scale(t)??this.getRange()[0]}},yi=class extends jt{static{s(this,"LinearAxis")}constructor(t,i,e,a,r){super(t,a,r,i),this.domain=e,this.scale=dt().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let t=[...this.domain];this.axisPosition==="left"&&t.reverse(),this.scale=dt().domain(t).range(this.getRange())}getScaleValue(t){return this.scale(t)}};function bt(t,i,e,a){let r=new Gt(a);return kt(t)?new mi(i,e,t.categories,t.title,r):new yi(i,e,[t.min,t.max],t.title,r)}s(bt,"getAxis");var bi=class{constructor(t,i,e,a){this.textDimensionCalculator=t,this.chartConfig=i,this.chartData=e,this.chartThemeConfig=a,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{s(this,"ChartTitle")}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){let i=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),e=Math.max(i.width,t.width),a=i.height+2*this.chartConfig.titlePadding;return i.width<=e&&i.height<=a&&this.chartConfig.showTitle&&this.chartData.title&&(this.boundingRect.width=e,this.boundingRect.height=a,this.showChartTitle=!0),{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let t=[];return this.showChartTitle&&t.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]}),t}};function Qt(t,i,e,a){let r=new Gt(a);return new bi(r,t,i,e)}s(Qt,"getChartTitleComponent");var Ai=class{constructor(t,i,e,a,r){this.plotData=t,this.xAxis=i,this.yAxis=e,this.orientation=a,this.plotIndex=r}static{s(this,"LinePlot")}getDrawableElement(){let t=this.plotData.data.map(e=>[this.xAxis.getScaleValue(e[0]),this.yAxis.getScaleValue(e[1])]),i;return this.orientation==="horizontal"?i=ft().y(e=>e[0]).x(e=>e[1])(t):i=ft().x(e=>e[0]).y(e=>e[1])(t),i?[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:i,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}]:[]}},ki=class{constructor(t,i,e,a,r,d){this.barData=t,this.boundingRect=i,this.xAxis=e,this.yAxis=a,this.orientation=r,this.plotIndex=d}static{s(this,"BarPlot")}getDrawableElement(){let t=this.barData.data.map(r=>[this.xAxis.getScaleValue(r[0]),this.yAxis.getScaleValue(r[1])]),e=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*(1-.05),a=e/2;return this.orientation==="horizontal"?[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map(r=>({x:this.boundingRect.x,y:r[0]-a,height:e,width:r[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]:[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:t.map(r=>({x:r[0]-a,y:r[1],width:e,height:this.boundingRect.y+this.boundingRect.height-r[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},wi=class{constructor(t,i,e){this.chartConfig=t,this.chartData=i,this.chartThemeConfig=e,this.boundingRect={x:0,y:0,width:0,height:0}}static{s(this,"BasePlot")}setAxes(t,i){this.xAxis=t,this.yAxis=i}setBoundingBoxXY(t){this.boundingRect.x=t.x,this.boundingRect.y=t.y}calculateSpace(t){return this.boundingRect.width=t.width,this.boundingRect.height=t.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let t=[];for(let[i,e]of this.chartData.plots.entries())switch(e.type){case"line":{let a=new Ai(e,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...a.getDrawableElement())}break;case"bar":{let a=new ki(e,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,i);t.push(...a.getDrawableElement())}break}return t}};function Kt(t,i,e){return new wi(t,i,e)}s(Kt,"getPlotComponent");var Ci=class{constructor(t,i,e,a){this.chartConfig=t,this.chartData=i,this.componentStore={title:Qt(t,i,e,a),plot:Kt(t,i,e),xAxis:bt(i.xAxis,t.xAxis,{titleColor:e.xAxisTitleColor,labelColor:e.xAxisLabelColor,tickColor:e.xAxisTickColor,axisLineColor:e.xAxisLineColor},a),yAxis:bt(i.yAxis,t.yAxis,{titleColor:e.yAxisTitleColor,labelColor:e.yAxisLabelColor,tickColor:e.yAxisTickColor,axisLineColor:e.yAxisLineColor},a)}}static{s(this,"Orchestrator")}calculateVerticalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,a=0,r=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),d=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),g=this.componentStore.plot.calculateSpace({width:r,height:d});t-=g.width,i-=g.height,g=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),a=g.height,i-=g.height,this.componentStore.xAxis.setAxisPosition("bottom"),g=this.componentStore.xAxis.calculateSpace({width:t,height:i}),i-=g.height,this.componentStore.yAxis.setAxisPosition("left"),g=this.componentStore.yAxis.calculateSpace({width:t,height:i}),e=g.width,t-=g.width,t>0&&(r+=t,t=0),i>0&&(d+=i,i=0),this.componentStore.plot.calculateSpace({width:r,height:d}),this.componentStore.plot.setBoundingBoxXY({x:e,y:a}),this.componentStore.xAxis.setRange([e,e+r]),this.componentStore.xAxis.setBoundingBoxXY({x:e,y:a+d}),this.componentStore.yAxis.setRange([a,a+d]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:a}),this.chartData.plots.some(k=>yt(k))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let t=this.chartConfig.width,i=this.chartConfig.height,e=0,a=0,r=0,d=Math.floor(t*this.chartConfig.plotReservedSpacePercent/100),g=Math.floor(i*this.chartConfig.plotReservedSpacePercent/100),k=this.componentStore.plot.calculateSpace({width:d,height:g});t-=k.width,i-=k.height,k=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:i}),e=k.height,i-=k.height,this.componentStore.xAxis.setAxisPosition("left"),k=this.componentStore.xAxis.calculateSpace({width:t,height:i}),t-=k.width,a=k.width,this.componentStore.yAxis.setAxisPosition("top"),k=this.componentStore.yAxis.calculateSpace({width:t,height:i}),i-=k.height,r=e+k.height,t>0&&(d+=t,t=0),i>0&&(g+=i,i=0),this.componentStore.plot.calculateSpace({width:d,height:g}),this.componentStore.plot.setBoundingBoxXY({x:a,y:r}),this.componentStore.yAxis.setRange([a,a+d]),this.componentStore.yAxis.setBoundingBoxXY({x:a,y:e}),this.componentStore.xAxis.setRange([r,r+g]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:r}),this.chartData.plots.some(I=>yt(I))&&this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){this.chartConfig.chartOrientation==="horizontal"?this.calculateHorizontalSpace():this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let t=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let i of Object.values(this.componentStore))t.push(...i.getDrawableElements());return t}},Si=class{static{s(this,"XYChartBuilder")}static build(t,i,e,a){return new Ci(t,i,e,a).getDrawableElement()}},K=0,Zt,Z=St(),J=Ct(),p=_t(),At=J.plotColorPalette.split(",").map(t=>t.trim()),at=!1,wt=!1;function Ct(){let t=Vt(),i=st();return pt(t.xyChart,i.themeVariables.xyChart)}s(Ct,"getChartDefaultThemeConfig");function St(){let t=st();return pt(Bt.xyChart,t.xyChart)}s(St,"getChartDefaultConfig");function _t(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}s(_t,"getChartDefaultData");function nt(t){let i=st();return Mt(t.trim(),i)}s(nt,"textSanitizer");function Jt(t){Zt=t}s(Jt,"setTmpSVGG");function ti(t){t==="horizontal"?Z.chartOrientation="horizontal":Z.chartOrientation="vertical"}s(ti,"setOrientation");function ii(t){p.xAxis.title=nt(t.text)}s(ii,"setXAxisTitle");function Tt(t,i){p.xAxis={type:"linear",title:p.xAxis.title,min:t,max:i},at=!0}s(Tt,"setXAxisRangeData");function ei(t){p.xAxis={type:"band",title:p.xAxis.title,categories:t.map(i=>nt(i.text))},at=!0}s(ei,"setXAxisBand");function si(t){p.yAxis.title=nt(t.text)}s(si,"setYAxisTitle");function ai(t,i){p.yAxis={type:"linear",title:p.yAxis.title,min:t,max:i},wt=!0}s(ai,"setYAxisRangeData");function ni(t){let i=Math.min(...t),e=Math.max(...t),a=Q(p.yAxis)?p.yAxis.min:1/0,r=Q(p.yAxis)?p.yAxis.max:-1/0;p.yAxis={type:"linear",title:p.yAxis.title,min:Math.min(a,i),max:Math.max(r,e)}}s(ni,"setYAxisRangeFromPlotData");function Rt(t){let i=[];if(t.length===0)return i;if(!at){let e=Q(p.xAxis)?p.xAxis.min:1/0,a=Q(p.xAxis)?p.xAxis.max:-1/0;Tt(Math.min(e,1),Math.max(a,t.length))}if(wt||ni(t),kt(p.xAxis)&&(i=p.xAxis.categories.map((e,a)=>[e,t[a]])),Q(p.xAxis)){let e=p.xAxis.min,a=p.xAxis.max,r=(a-e)/(t.length-1),d=[];for(let g=e;g<=a;g+=r)d.push(`${g}`);i=d.map((g,k)=>[g,t[k]])}return i}s(Rt,"transformDataWithoutCategory");function Dt(t){return At[t===0?0:t%At.length]}s(Dt,"getPlotColorFromPalette");function ri(t,i){let e=Rt(i);p.plots.push({type:"line",strokeFill:Dt(K),strokeWidth:2,data:e}),K++}s(ri,"setLineData");function oi(t,i){let e=Rt(i);p.plots.push({type:"bar",fill:Dt(K),data:e}),K++}s(oi,"setBarData");function hi(){if(p.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return p.title=gt(),Si.build(Z,p,J,Zt)}s(hi,"getDrawableElem");function li(){return J}s(li,"getChartThemeConfig");function ci(){return Z}s(ci,"getChartConfig");function ui(){return p}s(ui,"getXYChartData");var _i=s(function(){zt(),K=0,Z=St(),p=_t(),J=Ct(),At=J.plotColorPalette.split(",").map(t=>t.trim()),at=!1,wt=!1},"clear"),Ti={getDrawableElem:hi,clear:_i,setAccTitle:Ft,getAccTitle:Ot,setDiagramTitle:Nt,getDiagramTitle:gt,getAccDescription:Yt,setAccDescription:Xt,setOrientation:ti,setXAxisTitle:ii,setXAxisRangeData:Tt,setXAxisBand:ei,setYAxisTitle:si,setYAxisRangeData:ai,setLineData:ri,setBarData:oi,setTmpSVGG:Jt,getChartThemeConfig:li,getChartConfig:ci,getXYChartData:ui},Ri=s((t,i,e,a)=>{let r=a.db,d=r.getChartThemeConfig(),g=r.getChartConfig(),k=r.getXYChartData().plots[0].data.map(f=>f[1]);function I(f){return f==="top"?"text-before-edge":"middle"}s(I,"getDominantBaseLine");function z(f){return f==="left"?"start":f==="right"?"end":"middle"}s(z,"getTextAnchor");function M(f){return`translate(${f.x}, ${f.y}) rotate(${f.rotation||0})`}s(M,"getTextTransformation"),ut.debug(`Rendering xychart chart +`+t);let D=Ht(i),V=D.append("g").attr("class","main"),F=V.append("rect").attr("width",g.width).attr("height",g.height).attr("class","background");Wt(D,g.height,g.width,!0),D.attr("viewBox",`0 0 ${g.width} ${g.height}`),F.attr("fill",d.backgroundColor),r.setTmpSVGG(D.append("g").attr("class","mermaid-tmp-group"));let O=r.getDrawableElem(),v={};function W(f){let P=V,l="";for(let[T]of f.entries()){let L=V;T>0&&v[l]&&(L=v[l]),l+=f[T],P=v[l],P||(P=v[l]=L.append("g").attr("class",f[T]))}return P}s(W,"getGroup");for(let f of O){if(f.data.length===0)continue;let P=W(f.groupTexts);switch(f.type){case"rect":if(P.selectAll("rect").data(f.data).enter().append("rect").attr("x",l=>l.x).attr("y",l=>l.y).attr("width",l=>l.width).attr("height",l=>l.height).attr("fill",l=>l.fill).attr("stroke",l=>l.strokeFill).attr("stroke-width",l=>l.strokeWidth),g.showDataLabel){let l=g.showDataLabelOutsideBar;if(g.chartOrientation==="horizontal"){let T=function(b,R){let{data:y,label:o}=b;return R*o.length*L<=y.width-m};var X=T;s(T,"fitsHorizontally");let L=.7,m=10,H=f.data.map((b,R)=>({data:b,label:k[R].toString()})).filter(b=>b.data.width>0&&b.data.height>0),S=H.map(b=>{let{data:R}=b,y=R.height*.7;for(;!T(b,y)&&y>0;)y-=1;return y}),G=Math.floor(Math.min(...S)),w=s(b=>l?b.data.x+b.data.width+m:b.data.x+b.data.width-m,"determineLabelXPosition");P.selectAll("text").data(H).enter().append("text").attr("x",w).attr("y",b=>b.data.y+b.data.height/2).attr("text-anchor",l?"start":"end").attr("dominant-baseline","middle").attr("fill",d.dataLabelColor).attr("font-size",`${G}px`).text(b=>b.label)}else{let T=function(w,b,R){let{data:y,label:o}=w,c=b*o.length*.7,u=y.x+y.width/2,A=u-c/2,n=u+c/2,U=A>=y.x&&n<=y.x+y.width,x=y.y+R+b<=y.y+y.height;return U&&x};var Y=T;s(T,"fitsInBar");let L=10,m=f.data.map((w,b)=>({data:w,label:k[b].toString()})).filter(w=>w.data.width>0&&w.data.height>0),H=m.map(w=>{let{data:b,label:R}=w,y=b.width/(R.length*.7);for(;!T(w,y,L)&&y>0;)y-=1;return y}),S=Math.floor(Math.min(...H)),G=s(w=>l?w.data.y-L:w.data.y+L,"determineLabelYPosition");P.selectAll("text").data(m).enter().append("text").attr("x",w=>w.data.x+w.data.width/2).attr("y",G).attr("text-anchor","middle").attr("dominant-baseline",l?"auto":"hanging").attr("fill",d.dataLabelColor).attr("font-size",`${S}px`).text(w=>w.label)}}break;case"text":P.selectAll("text").data(f.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",l=>l.fill).attr("font-size",l=>l.fontSize).attr("dominant-baseline",l=>I(l.verticalPos)).attr("text-anchor",l=>z(l.horizontalPos)).attr("transform",l=>M(l)).text(l=>l.text);break;case"path":P.selectAll("path").data(f.data).enter().append("path").attr("d",l=>l.path).attr("fill",l=>l.fill?l.fill:"none").attr("stroke",l=>l.strokeFill).attr("stroke-width",l=>l.strokeWidth);break}}},"draw"),Di={draw:Ri},zi={parser:pi,db:Ti,renderer:Di};export{zi as diagram}; diff --git a/src/google/adk/cli/browser/chunk-KDOJMYWA.js b/src/google/adk/cli/browser/chunk-KDOJMYWA.js new file mode 100644 index 0000000000..d9c4c801fb --- /dev/null +++ b/src/google/adk/cli/browser/chunk-KDOJMYWA.js @@ -0,0 +1,139 @@ +import{a as mt}from"./chunk-B2DSW4QB.js";import{a as ft,b as pt,c as gt,f as Z}from"./chunk-LT3WOUUJ.js";import"./chunk-GP6TCC26.js";import{N as at,R as lt,S as ot,T as ct,U as ht,V as ut,W as yt,X as dt,Y as F}from"./chunk-37QI3DOO.js";import{K as U,a as W,g as s}from"./chunk-JRNAXTJ7.js";import"./chunk-RMXJBC7V.js";var K=(function(){var t=s(function(h,i,n,l){for(n=n||{},l=h.length;l--;n[h[l]]=i);return n},"o"),e=[6,8,10,11,12,14,16,17,18],a=[1,9],f=[1,10],r=[1,11],u=[1,12],p=[1,13],o=[1,14],g={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:s(function(i,n,l,y,d,c,_){var k=c.length-1;switch(d){case 1:return c[k-1];case 2:this.$=[];break;case 3:c[k-1].push(c[k]),this.$=c[k-1];break;case 4:case 5:this.$=c[k];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(c[k].substr(6)),this.$=c[k].substr(6);break;case 9:this.$=c[k].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=c[k].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(c[k].substr(8)),this.$=c[k].substr(8);break;case 13:y.addTask(c[k-1],c[k]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:a,12:f,14:r,16:u,17:p,18:o},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:a,12:f,14:r,16:u,17:p,18:o},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:s(function(i,n){if(n.recoverable)this.trace(i);else{var l=new Error(i);throw l.hash=n,l}},"parseError"),parse:s(function(i){var n=this,l=[0],y=[],d=[null],c=[],_=this.table,k="",C=0,et=0,rt=0,$t=2,it=1,Mt=c.slice.call(arguments,1),b=Object.create(this.lexer),I={yy:{}};for(var Y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Y)&&(I.yy[Y]=this.yy[Y]);b.setInput(i,I.yy),I.yy.lexer=b,I.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var q=b.yylloc;c.push(q);var Et=b.options&&b.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ct(w){l.length=l.length-2*w,d.length=d.length-w,c.length=c.length-w}s(Ct,"popStack");function nt(){var w;return w=y.pop()||b.lex()||it,typeof w!="number"&&(w instanceof Array&&(y=w,w=y.pop()),w=n.symbols_[w]||w),w}s(nt,"lex");for(var v,H,A,T,Jt,X,V={},N,M,st,z;;){if(A=l[l.length-1],this.defaultActions[A]?T=this.defaultActions[A]:((v===null||typeof v>"u")&&(v=nt()),T=_[A]&&_[A][v]),typeof T>"u"||!T.length||!T[0]){var G="";z=[];for(N in _[A])this.terminals_[N]&&N>$t&&z.push("'"+this.terminals_[N]+"'");b.showPosition?G="Parse error on line "+(C+1)+`: +`+b.showPosition()+` +Expecting `+z.join(", ")+", got '"+(this.terminals_[v]||v)+"'":G="Parse error on line "+(C+1)+": Unexpected "+(v==it?"end of input":"'"+(this.terminals_[v]||v)+"'"),this.parseError(G,{text:b.match,token:this.terminals_[v]||v,line:b.yylineno,loc:q,expected:z})}if(T[0]instanceof Array&&T.length>1)throw new Error("Parse Error: multiple actions possible at state: "+A+", token: "+v);switch(T[0]){case 1:l.push(v),d.push(b.yytext),c.push(b.yylloc),l.push(T[1]),v=null,H?(v=H,H=null):(et=b.yyleng,k=b.yytext,C=b.yylineno,q=b.yylloc,rt>0&&rt--);break;case 2:if(M=this.productions_[T[1]][1],V.$=d[d.length-M],V._$={first_line:c[c.length-(M||1)].first_line,last_line:c[c.length-1].last_line,first_column:c[c.length-(M||1)].first_column,last_column:c[c.length-1].last_column},Et&&(V._$.range=[c[c.length-(M||1)].range[0],c[c.length-1].range[1]]),X=this.performAction.apply(V,[k,et,C,I.yy,T[1],d,c].concat(Mt)),typeof X<"u")return X;M&&(l=l.slice(0,-1*M*2),d=d.slice(0,-1*M),c=c.slice(0,-1*M)),l.push(this.productions_[T[1]][0]),d.push(V.$),c.push(V._$),st=_[l[l.length-2]][l[l.length-1]],l.push(st);break;case 3:return!0}}return!0},"parse")},m=(function(){var h={EOF:1,parseError:s(function(n,l){if(this.yy.parser)this.yy.parser.parseError(n,l);else throw new Error(n)},"parseError"),setInput:s(function(i,n){return this.yy=n||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:s(function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var n=i.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},"input"),unput:s(function(i){var n=i.length,l=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1&&(this.yylineno-=l.length-1);var d=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===y.length?this.yylloc.first_column:0)+y[y.length-l.length].length-l[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[d[0],d[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:s(function(){return this._more=!0,this},"more"),reject:s(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:s(function(i){this.unput(this.match.slice(i))},"less"),pastInput:s(function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:s(function(){var i=this.match;return i.length<20&&(i+=this._input.substr(0,20-i.length)),(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:s(function(){var i=this.pastInput(),n=new Array(i.length+1).join("-");return i+this.upcomingInput()+` +`+n+"^"},"showPosition"),test_match:s(function(i,n){var l,y,d;if(this.options.backtrack_lexer&&(d={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(d.yylloc.range=this.yylloc.range.slice(0))),y=i[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+i[0].length},this.yytext+=i[0],this.match+=i[0],this.matches=i,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(i[0].length),this.matched+=i[0],l=this.performAction.call(this,this.yy,this,n,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),l)return l;if(this._backtrack){for(var c in d)this[c]=d[c];return!1}return!1},"test_match"),next:s(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var i,n,l,y;this._more||(this.yytext="",this.match="");for(var d=this._currentRules(),c=0;cn[0].length)){if(n=l,y=c,this.options.backtrack_lexer){if(i=this.test_match(l,d[c]),i!==!1)return i;if(this._backtrack){n=!1;continue}else return!1}else if(!this.options.flex)break}return n?(i=this.test_match(n,d[y]),i!==!1?i:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:s(function(){var n=this.next();return n||this.lex()},"lex"),begin:s(function(n){this.conditionStack.push(n)},"begin"),popState:s(function(){var n=this.conditionStack.length-1;return n>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:s(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:s(function(n){return n=this.conditionStack.length-1-Math.abs(n||0),n>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:s(function(n){this.begin(n)},"pushState"),stateStackSize:s(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:s(function(n,l,y,d){var c=d;switch(y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return h})();g.lexer=m;function x(){this.yy={}}return s(x,"Parser"),x.prototype=g,g.Parser=x,new x})();K.parser=K;var Pt=K,R="",D=[],L=[],B=[],It=s(function(){D.length=0,L.length=0,R="",B.length=0,lt()},"clear"),At=s(function(t){R=t,D.push(t)},"addSection"),Ft=s(function(){return D},"getSections"),Vt=s(function(){let t=xt(),e=100,a=0;for(;!t&&a{a.people&&t.push(...a.people)}),[...new Set(t)].sort()},"updateActors"),Lt=s(function(t,e){let a=e.substr(1).split(":"),f=0,r=[];a.length===1?(f=Number(a[0]),r=[]):(f=Number(a[0]),r=a[1].split(","));let u=r.map(o=>o.trim()),p={section:R,type:R,people:u,task:t,score:f};B.push(p)},"addTask"),Bt=s(function(t){let e={section:R,type:R,description:t,task:t,classes:[]};L.push(e)},"addTaskOrg"),xt=s(function(){let t=s(function(a){return B[a].processed},"compileTask"),e=!0;for(let[a,f]of B.entries())t(a),e=e&&f.processed;return e},"compileTasks"),jt=s(function(){return Rt()},"getActors"),kt={getConfig:s(()=>F().journey,"getConfig"),clear:It,setDiagramTitle:yt,getDiagramTitle:dt,setAccTitle:ot,getAccTitle:ct,setAccDescription:ht,getAccDescription:ut,addSection:At,getSections:Ft,getTasks:Vt,addTask:Lt,addTaskOrg:Bt,getActors:jt},Nt=s(t=>`.label { + font-family: ${t.fontFamily}; + color: ${t.textColor}; + } + .mouth { + stroke: #666; + } + + line { + stroke: ${t.textColor} + } + + .legend { + fill: ${t.textColor}; + font-family: ${t.fontFamily}; + } + + .label text { + fill: #333; + } + .label { + color: ${t.textColor} + } + + .face { + ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"}; + stroke: #999; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: 1px; + } + + .node .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + .arrowheadPath { + fill: ${t.arrowheadColor}; + } + + .edgePath .path { + stroke: ${t.lineColor}; + stroke-width: 1.5px; + } + + .flowchart-link { + stroke: ${t.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${t.edgeLabelBackground}; + rect { + opacity: 0.5; + } + text-align: center; + } + + .cluster rect { + } + + .cluster text { + fill: ${t.titleColor}; + } + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${t.fontFamily}; + font-size: 12px; + background: ${t.tertiaryColor}; + border: 1px solid ${t.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .task-type-0, .section-type-0 { + ${t.fillType0?`fill: ${t.fillType0}`:""}; + } + .task-type-1, .section-type-1 { + ${t.fillType0?`fill: ${t.fillType1}`:""}; + } + .task-type-2, .section-type-2 { + ${t.fillType0?`fill: ${t.fillType2}`:""}; + } + .task-type-3, .section-type-3 { + ${t.fillType0?`fill: ${t.fillType3}`:""}; + } + .task-type-4, .section-type-4 { + ${t.fillType0?`fill: ${t.fillType4}`:""}; + } + .task-type-5, .section-type-5 { + ${t.fillType0?`fill: ${t.fillType5}`:""}; + } + .task-type-6, .section-type-6 { + ${t.fillType0?`fill: ${t.fillType6}`:""}; + } + .task-type-7, .section-type-7 { + ${t.fillType0?`fill: ${t.fillType7}`:""}; + } + + .actor-0 { + ${t.actor0?`fill: ${t.actor0}`:""}; + } + .actor-1 { + ${t.actor1?`fill: ${t.actor1}`:""}; + } + .actor-2 { + ${t.actor2?`fill: ${t.actor2}`:""}; + } + .actor-3 { + ${t.actor3?`fill: ${t.actor3}`:""}; + } + .actor-4 { + ${t.actor4?`fill: ${t.actor4}`:""}; + } + .actor-5 { + ${t.actor5?`fill: ${t.actor5}`:""}; + } + ${mt()} +`,"getStyles"),zt=Nt,tt=s(function(t,e){return ft(t,e)},"drawRect"),Wt=s(function(t,e){let f=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),r=t.append("g");r.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),r.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function u(g){let m=U().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);g.append("path").attr("class","mouth").attr("d",m).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}s(u,"smile");function p(g){let m=U().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);g.append("path").attr("class","mouth").attr("d",m).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}s(p,"sad");function o(g){g.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return s(o,"ambivalent"),e.score>3?u(r):e.score<3?p(r):o(r),f},"drawFace"),vt=s(function(t,e){let a=t.append("circle");return a.attr("cx",e.cx),a.attr("cy",e.cy),a.attr("class","actor-"+e.pos),a.attr("fill",e.fill),a.attr("stroke",e.stroke),a.attr("r",e.r),a.class!==void 0&&a.attr("class",a.class),e.title!==void 0&&a.append("title").text(e.title),a},"drawCircle"),wt=s(function(t,e){return gt(t,e)},"drawText"),Ot=s(function(t,e){function a(r,u,p,o,g){return r+","+u+" "+(r+p)+","+u+" "+(r+p)+","+(u+o-g)+" "+(r+p-g*1.2)+","+(u+o)+" "+r+","+(u+o)}s(a,"genPoints");let f=t.append("polygon");f.attr("points",a(e.x,e.y,50,20,7)),f.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,wt(t,e)},"drawLabel"),Yt=s(function(t,e,a){let f=t.append("g"),r=Z();r.x=e.x,r.y=e.y,r.fill=e.fill,r.width=a.width*e.taskCount+a.diagramMarginX*(e.taskCount-1),r.height=a.height,r.class="journey-section section-type-"+e.num,r.rx=3,r.ry=3,tt(f,r),Tt(a)(e.text,f,r.x,r.y,r.width,r.height,{class:"journey-section section-type-"+e.num},a,e.colour)},"drawSection"),Q=-1,qt=s(function(t,e,a,f){let r=e.x+a.width/2,u=t.append("g");Q++,u.append("line").attr("id",f+"-task"+Q).attr("x1",r).attr("y1",e.y).attr("x2",r).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Wt(u,{cx:r,cy:300+(5-e.score)*30,score:e.score});let o=Z();o.x=e.x,o.y=e.y,o.fill=e.fill,o.width=a.width,o.height=a.height,o.class="task task-type-"+e.num,o.rx=3,o.ry=3,tt(u,o);let g=e.x+14;e.people.forEach(m=>{let x=e.actors[m].color,h={cx:g,cy:e.y,r:7,fill:x,stroke:"#000",title:m,pos:e.actors[m].position};vt(u,h),g+=10}),Tt(a)(e.task,u,o.x,o.y,o.width,o.height,{class:"task"},a,e.colour)},"drawTask"),Ht=s(function(t,e){pt(t,e)},"drawBackgroundRect"),Tt=(function(){function t(r,u,p,o,g,m,x,h){let i=u.append("text").attr("x",p+g/2).attr("y",o+m/2+5).style("font-color",h).style("text-anchor","middle").text(r);f(i,x)}s(t,"byText");function e(r,u,p,o,g,m,x,h,i){let{taskFontSize:n,taskFontFamily:l}=h,y=r.split(//gi);for(let d=0;d{let u=E[r].color,p={cx:20,cy:f,r:7,fill:u,stroke:"#000",pos:E[r].position};j.drawCircle(t,p);let o=t.append("text").attr("visibility","hidden").text(r),g=o.node().getBoundingClientRect().width;o.remove();let m=[];if(g<=a)m=[r];else{let x=r.split(" "),h="";o=t.append("text").attr("visibility","hidden"),x.forEach(i=>{let n=h?`${h} ${i}`:i;if(o.text(n),o.node().getBoundingClientRect().width>a){if(h&&m.push(h),h=i,o.text(i),o.node().getBoundingClientRect().width>a){let y="";for(let d of i)y+=d,o.text(y+"-"),o.node().getBoundingClientRect().width>a&&(m.push(y.slice(0,-1)+"-"),y=d);h=y}}else h=n}),h&&m.push(h),o.remove()}m.forEach((x,h)=>{let i={x:40,y:f+7+h*20,fill:"#666",text:x,textMargin:e.boxTextMargin??5},l=j.drawText(t,i).node().getBoundingClientRect().width;l>O&&l>e.leftMargin-l&&(O=l)}),f+=Math.max(20,m.length*20)})}s(St,"drawActorLegend");var $=F().journey,P=0,Ut=s(function(t,e,a,f){let r=F(),u=r.journey.titleColor,p=r.journey.titleFontSize,o=r.journey.titleFontFamily,g=r.securityLevel,m;g==="sandbox"&&(m=W("#i"+e));let x=g==="sandbox"?W(m.nodes()[0].contentDocument.body):W("body");S.init();let h=x.select("#"+e);j.initGraphics(h,e);let i=f.db.getTasks(),n=f.db.getDiagramTitle(),l=f.db.getActors();for(let C in E)delete E[C];let y=0;l.forEach(C=>{E[C]={color:$.actorColours[y%$.actorColours.length],position:y},y++}),St(h),P=$.leftMargin+O,S.insert(0,0,P,Object.keys(E).length*50),Zt(h,i,0,e);let d=S.getBounds();n&&h.append("text").text(n).attr("x",P).attr("font-size",p).attr("font-weight","bold").attr("y",25).attr("fill",u).attr("font-family",o);let c=d.stopy-d.starty+2*$.diagramMarginY,_=P+d.stopx+2*$.diagramMarginX;at(h,c,_,$.useMaxWidth),h.append("line").attr("x1",P).attr("y1",$.height*4).attr("x2",_-P-4).attr("y2",$.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#"+e+"-arrowhead)");let k=n?70:0;h.attr("viewBox",`${d.startx} -25 ${_} ${c+k}`),h.attr("preserveAspectRatio","xMinYMin meet"),h.attr("height",c+k+25)},"draw"),S={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:s(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:s(function(t,e,a,f){t[e]===void 0?t[e]=a:t[e]=f(a,t[e])},"updateVal"),updateBounds:s(function(t,e,a,f){let r=F().journey,u=this,p=0;function o(g){return s(function(x){p++;let h=u.sequenceItems.length-p+1;u.updateVal(x,"starty",e-h*r.boxMargin,Math.min),u.updateVal(x,"stopy",f+h*r.boxMargin,Math.max),u.updateVal(S.data,"startx",t-h*r.boxMargin,Math.min),u.updateVal(S.data,"stopx",a+h*r.boxMargin,Math.max),g!=="activation"&&(u.updateVal(x,"startx",t-h*r.boxMargin,Math.min),u.updateVal(x,"stopx",a+h*r.boxMargin,Math.max),u.updateVal(S.data,"starty",e-h*r.boxMargin,Math.min),u.updateVal(S.data,"stopy",f+h*r.boxMargin,Math.max))},"updateItemBounds")}s(o,"updateFn"),this.sequenceItems.forEach(o())},"updateBounds"),insert:s(function(t,e,a,f){let r=Math.min(t,a),u=Math.max(t,a),p=Math.min(e,f),o=Math.max(e,f);this.updateVal(S.data,"startx",r,Math.min),this.updateVal(S.data,"starty",p,Math.min),this.updateVal(S.data,"stopx",u,Math.max),this.updateVal(S.data,"stopy",o,Math.max),this.updateBounds(r,p,u,o)},"insert"),bumpVerticalPos:s(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:s(function(){return this.verticalPos},"getVerticalPos"),getBounds:s(function(){return this.data},"getBounds")},J=$.sectionFills,bt=$.sectionColours,Zt=s(function(t,e,a,f){let r=F().journey,u="",p=r.height*2+r.diagramMarginY,o=a+p,g=0,m="#CCC",x="black",h=0;for(let[i,n]of e.entries()){if(u!==n.section){m=J[g%J.length],h=g%J.length,x=bt[g%bt.length];let y=0,d=n.section;for(let _=i;_(E[d]&&(y[d]=E[d]),y),{});n.x=i*r.taskMargin+i*r.width+P,n.y=o,n.width=r.diagramMarginX,n.height=r.diagramMarginY,n.colour=x,n.fill=m,n.num=h,n.actors=l,j.drawTask(t,n,r,f),S.insert(n.x,n.y,n.x+n.width+r.taskMargin,450)}},"drawTasks"),_t={setConf:Gt,draw:Ut},ie={parser:Pt,db:kt,renderer:_t,styles:zt,init:s(t=>{_t.setConf(t.journey),kt.clear()},"init")};export{ie as diagram}; diff --git a/src/google/adk/cli/browser/chunk-LI24J5PW.js b/src/google/adk/cli/browser/chunk-LI24J5PW.js deleted file mode 100644 index 1290de323d..0000000000 --- a/src/google/adk/cli/browser/chunk-LI24J5PW.js +++ /dev/null @@ -1,220 +0,0 @@ -import{a as Mt}from"./chunk-APNCZOFE.js";import{a as Ut}from"./chunk-ST54LLJ3.js";import{b as Vt}from"./chunk-F57TI45K.js";import{e as Bt,m as Gt}from"./chunk-WBLSVR3V.js";import{M as B,R as Rt,S as Nt,T as wt,U as $t,V as Pt,W as Ft,X as Yt,Y as w}from"./chunk-QFMJV7VH.js";import{g as h,i as k}from"./chunk-JRNAXTJ7.js";import{j as Ot}from"./chunk-RMXJBC7V.js";var vt=(function(){var t=h(function(Y,o,c,n){for(c=c||{},n=Y.length;n--;c[Y[n]]=o);return c},"o"),e=[1,2],s=[1,3],a=[1,4],r=[2,4],u=[1,9],d=[1,11],S=[1,16],f=[1,17],T=[1,18],E=[1,19],_=[1,33],x=[1,20],v=[1,21],p=[1,22],D=[1,23],R=[1,24],L=[1,26],$=[1,27],I=[1,28],P=[1,29],et=[1,30],st=[1,31],it=[1,32],rt=[1,35],at=[1,36],nt=[1,37],ot=[1,38],j=[1,34],y=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],gt={trace:h(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:h(function(o,c,n,g,b,i,X){var l=i.length-1;switch(b){case 3:return g.setRootDoc(i[l]),i[l];break;case 4:this.$=[];break;case 5:i[l]!="nl"&&(i[l-1].push(i[l]),this.$=i[l-1]);break;case 6:case 7:this.$=i[l];break;case 8:this.$="nl";break;case 12:this.$=i[l];break;case 13:let ht=i[l-1];ht.description=g.trimColon(i[l]),this.$=ht;break;case 14:this.$={stmt:"relation",state1:i[l-2],state2:i[l]};break;case 15:let ut=g.trimColon(i[l]);this.$={stmt:"relation",state1:i[l-3],state2:i[l-1],description:ut};break;case 19:this.$={stmt:"state",id:i[l-3],type:"default",description:"",doc:i[l-1]};break;case 20:var V=i[l],H=i[l-2].trim();if(i[l].match(":")){var J=i[l].split(":");V=J[0],H=[H,J[1]]}this.$={stmt:"state",id:V,type:"default",description:H};break;case 21:this.$={stmt:"state",id:i[l-3],type:"default",description:i[l-5],doc:i[l-1]};break;case 22:this.$={stmt:"state",id:i[l],type:"fork"};break;case 23:this.$={stmt:"state",id:i[l],type:"join"};break;case 24:this.$={stmt:"state",id:i[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:i[l-1].trim(),note:{position:i[l-2].trim(),text:i[l].trim()}};break;case 29:this.$=i[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=i[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:i[l-3],url:i[l-2],tooltip:i[l-1]};break;case 33:this.$={stmt:"click",id:i[l-3],url:i[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:i[l-1].trim(),classes:i[l].trim()};break;case 36:this.$={stmt:"style",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 37:this.$={stmt:"applyClass",id:i[l-1].trim(),styleClass:i[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:i[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:i[l-2].trim(),classes:[i[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:s,6:a},{1:[3]},{3:5,4:e,5:s,6:a},{3:6,4:e,5:s,6:a},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],r,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:u,5:d,8:8,9:10,10:12,11:13,12:14,13:15,16:S,17:f,19:T,22:E,24:_,25:x,26:v,27:p,28:D,29:R,32:25,33:L,35:$,37:I,38:P,41:et,45:st,48:it,51:rt,52:at,53:nt,54:ot,57:j},t(y,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:S,17:f,19:T,22:E,24:_,25:x,26:v,27:p,28:D,29:R,32:25,33:L,35:$,37:I,38:P,41:et,45:st,48:it,51:rt,52:at,53:nt,54:ot,57:j},t(y,[2,7]),t(y,[2,8]),t(y,[2,9]),t(y,[2,10]),t(y,[2,11]),t(y,[2,12],{14:[1,40],15:[1,41]}),t(y,[2,16]),{18:[1,42]},t(y,[2,18],{20:[1,43]}),{23:[1,44]},t(y,[2,22]),t(y,[2,23]),t(y,[2,24]),t(y,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(y,[2,28]),{34:[1,49]},{36:[1,50]},t(y,[2,31]),{13:51,24:_,57:j},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(y,[2,38]),t(y,[2,39]),t(y,[2,40]),t(y,[2,41]),t(y,[2,6]),t(y,[2,13]),{13:58,24:_,57:j},t(y,[2,17]),t(xt,r,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(y,[2,29]),t(y,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(y,[2,14],{14:[1,71]}),{4:u,5:d,8:8,9:10,10:12,11:13,12:14,13:15,16:S,17:f,19:T,21:[1,72],22:E,24:_,25:x,26:v,27:p,28:D,29:R,32:25,33:L,35:$,37:I,38:P,41:et,45:st,48:it,51:rt,52:at,53:nt,54:ot,57:j},t(y,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(y,[2,34]),t(y,[2,35]),t(y,[2,36]),t(y,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(y,[2,15]),t(y,[2,19]),t(xt,r,{7:78}),t(y,[2,26]),t(y,[2,27]),{5:[1,79]},{5:[1,80]},{4:u,5:d,8:8,9:10,10:12,11:13,12:14,13:15,16:S,17:f,19:T,21:[1,81],22:E,24:_,25:x,26:v,27:p,28:D,29:R,32:25,33:L,35:$,37:I,38:P,41:et,45:st,48:it,51:rt,52:at,53:nt,54:ot,57:j},t(y,[2,32]),t(y,[2,33]),t(y,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:h(function(o,c){if(c.recoverable)this.trace(o);else{var n=new Error(o);throw n.hash=c,n}},"parseError"),parse:h(function(o){var c=this,n=[0],g=[],b=[null],i=[],X=this.table,l="",V=0,H=0,J=0,ht=2,ut=1,ue=i.slice.call(arguments,1),m=Object.create(this.lexer),M={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(M.yy[Tt]=this.yy[Tt]);m.setInput(o,M.yy),M.yy.lexer=m,M.yy.parser=this,typeof m.yylloc>"u"&&(m.yylloc={});var bt=m.yylloc;i.push(bt);var de=m.options&&m.options.ranges;typeof M.yy.parseError=="function"?this.parseError=M.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function fe(O){n.length=n.length-2*O,b.length=b.length-O,i.length=i.length-O}h(fe,"popStack");function Lt(){var O;return O=g.pop()||m.lex()||ut,typeof O!="number"&&(O instanceof Array&&(g=O,O=g.pop()),O=c.symbols_[O]||O),O}h(Lt,"lex");for(var C,Et,U,N,Be,_t,W={},dt,F,It,ft;;){if(U=n[n.length-1],this.defaultActions[U]?N=this.defaultActions[U]:((C===null||typeof C>"u")&&(C=Lt()),N=X[U]&&X[U][C]),typeof N>"u"||!N.length||!N[0]){var kt="";ft=[];for(dt in X[U])this.terminals_[dt]&&dt>ht&&ft.push("'"+this.terminals_[dt]+"'");m.showPosition?kt="Parse error on line "+(V+1)+`: -`+m.showPosition()+` -Expecting `+ft.join(", ")+", got '"+(this.terminals_[C]||C)+"'":kt="Parse error on line "+(V+1)+": Unexpected "+(C==ut?"end of input":"'"+(this.terminals_[C]||C)+"'"),this.parseError(kt,{text:m.match,token:this.terminals_[C]||C,line:m.yylineno,loc:bt,expected:ft})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+U+", token: "+C);switch(N[0]){case 1:n.push(C),b.push(m.yytext),i.push(m.yylloc),n.push(N[1]),C=null,Et?(C=Et,Et=null):(H=m.yyleng,l=m.yytext,V=m.yylineno,bt=m.yylloc,J>0&&J--);break;case 2:if(F=this.productions_[N[1]][1],W.$=b[b.length-F],W._$={first_line:i[i.length-(F||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(F||1)].first_column,last_column:i[i.length-1].last_column},de&&(W._$.range=[i[i.length-(F||1)].range[0],i[i.length-1].range[1]]),_t=this.performAction.apply(W,[l,H,V,M.yy,N[1],b,i].concat(ue)),typeof _t<"u")return _t;F&&(n=n.slice(0,-1*F*2),b=b.slice(0,-1*F),i=i.slice(0,-1*F)),n.push(this.productions_[N[1]][0]),b.push(W.$),i.push(W._$),It=X[n[n.length-2]][n[n.length-1]],n.push(It);break;case 3:return!0}}return!0},"parse")},he=(function(){var Y={EOF:1,parseError:h(function(c,n){if(this.yy.parser)this.yy.parser.parseError(c,n);else throw new Error(c)},"parseError"),setInput:h(function(o,c){return this.yy=c||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:h(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var c=o.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:h(function(o){var c=o.length,n=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===g.length?this.yylloc.first_column:0)+g[g.length-n.length].length-n[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},"unput"),more:h(function(){return this._more=!0,this},"more"),reject:h(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:h(function(o){this.unput(this.match.slice(o))},"less"),pastInput:h(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:h(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:h(function(){var o=this.pastInput(),c=new Array(o.length+1).join("-");return o+this.upcomingInput()+` -`+c+"^"},"showPosition"),test_match:h(function(o,c){var n,g,b;if(this.options.backtrack_lexer&&(b={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(b.yylloc.range=this.yylloc.range.slice(0))),g=o[0].match(/(?:\r\n?|\n).*/g),g&&(this.yylineno+=g.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],n=this.performAction.call(this,this.yy,this,c,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var i in b)this[i]=b[i];return!1}return!1},"test_match"),next:h(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,c,n,g;this._more||(this.yytext="",this.match="");for(var b=this._currentRules(),i=0;ic[0].length)){if(c=n,g=i,this.options.backtrack_lexer){if(o=this.test_match(n,b[i]),o!==!1)return o;if(this._backtrack){c=!1;continue}else return!1}else if(!this.options.flex)break}return c?(o=this.test_match(c,b[g]),o!==!1?o:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:h(function(){var c=this.next();return c||this.lex()},"lex"),begin:h(function(c){this.conditionStack.push(c)},"begin"),popState:h(function(){var c=this.conditionStack.length-1;return c>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:h(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:h(function(c){return c=this.conditionStack.length-1-Math.abs(c||0),c>=0?this.conditionStack[c]:"INITIAL"},"topState"),pushState:h(function(c){this.begin(c)},"pushState"),stateStackSize:h(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:h(function(c,n,g,b){var i=b;switch(g){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:break;case 9:break;case 10:return 5;case 11:break;case 12:break;case 13:break;case 14:break;case 15:return this.pushState("SCALE"),17;break;case 16:return 18;case 17:this.popState();break;case 18:return this.begin("acc_title"),33;break;case 19:return this.popState(),"acc_title_value";break;case 20:return this.begin("acc_descr"),35;break;case 21:return this.popState(),"acc_descr_value";break;case 22:this.begin("acc_descr_multiline");break;case 23:this.popState();break;case 24:return"acc_descr_multiline_value";case 25:return this.pushState("CLASSDEF"),41;break;case 26:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 27:return this.popState(),this.pushState("CLASSDEFID"),42;break;case 28:return this.popState(),43;break;case 29:return this.pushState("CLASS"),48;break;case 30:return this.popState(),this.pushState("CLASS_STYLE"),49;break;case 31:return this.popState(),50;break;case 32:return this.pushState("STYLE"),45;break;case 33:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;break;case 34:return this.popState(),47;break;case 35:return this.pushState("SCALE"),17;break;case 36:return 18;case 37:this.popState();break;case 38:this.pushState("STATE");break;case 39:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;break;case 42:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;break;case 43:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;break;case 44:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;break;case 45:return 51;case 46:return 52;case 47:return 53;case 48:return 54;case 49:this.pushState("STATE_STRING");break;case 50:return this.pushState("STATE_ID"),"AS";break;case 51:return this.popState(),"ID";break;case 52:this.popState();break;case 53:return"STATE_DESCR";case 54:return 19;case 55:this.popState();break;case 56:return this.popState(),this.pushState("struct"),20;break;case 57:break;case 58:return this.popState(),21;break;case 59:break;case 60:return this.begin("NOTE"),29;break;case 61:return this.popState(),this.pushState("NOTE_ID"),59;break;case 62:return this.popState(),this.pushState("NOTE_ID"),60;break;case 63:this.popState(),this.pushState("FLOATING_NOTE");break;case 64:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 65:break;case 66:return"NOTE_TEXT";case 67:return this.popState(),"ID";break;case 68:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 69:return this.popState(),n.yytext=n.yytext.substr(2).trim(),31;break;case 70:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),31;break;case 71:return 6;case 72:return 6;case 73:return 16;case 74:return 57;case 75:return 24;case 76:return n.yytext=n.yytext.trim(),14;break;case 77:return 15;case 78:return 28;case 79:return 58;case 80:return 5;case 81:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[12,13],inclusive:!1},struct:{rules:[12,13,25,29,32,38,45,46,47,48,57,58,59,60,74,75,76,77,78],inclusive:!1},FLOATING_NOTE_ID:{rules:[67],inclusive:!1},FLOATING_NOTE:{rules:[64,65,66],inclusive:!1},NOTE_TEXT:{rules:[69,70],inclusive:!1},NOTE_ID:{rules:[68],inclusive:!1},NOTE:{rules:[61,62,63],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[34],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[33],inclusive:!1},CLASS_STYLE:{rules:[31],inclusive:!1},CLASS:{rules:[30],inclusive:!1},CLASSDEFID:{rules:[28],inclusive:!1},CLASSDEF:{rules:[26,27],inclusive:!1},acc_descr_multiline:{rules:[23,24],inclusive:!1},acc_descr:{rules:[21],inclusive:!1},acc_title:{rules:[19],inclusive:!1},SCALE:{rules:[16,17,36,37],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[51],inclusive:!1},STATE_STRING:{rules:[52,53],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[12,13,39,40,41,42,43,44,49,50,54,55,56],inclusive:!1},ID:{rules:[12,13],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,18,20,22,25,29,32,35,38,56,60,71,72,73,74,75,76,77,79,80,81],inclusive:!0}}};return Y})();gt.lexer=he;function ct(){this.yy={}}return h(ct,"Parser"),ct.prototype=gt,gt.Parser=ct,new ct})();vt.parser=vt;var We=vt,pe="TB",qt="TB",jt="dir",K="state",z="root",Ct="relation",Se="classDef",ye="style",ge="applyClass",Z="default",Qt="divider",Zt="fill:none",te="fill: #333",ee="c",se="markdown",ie="normal",mt="rect",Dt="rectWithTitle",Te="stateStart",be="stateEnd",Ht="divider",Wt="roundedWithTitle",Ee="note",_e="noteGroup",tt="statediagram",ke="state",me=`${tt}-${ke}`,re="transition",De="note",ve="note-edge",Ce=`${re} ${ve}`,Ae=`${tt}-${De}`,xe="cluster",Le=`${tt}-${xe}`,Ie="cluster-alt",Oe=`${tt}-${Ie}`,ae="parent",ne="note",Re="state",At="----",Ne=`${At}${ne}`,zt=`${At}${ae}`,oe=h((t,e=qt)=>{if(!t.doc)return e;let s=e;for(let a of t.doc)a.stmt==="dir"&&(s=a.value);return s},"getDir"),we=h(function(t,e){return e.db.getClasses()},"getClasses"),$e=h(function(t,e,s,a){return Ot(this,null,function*(){k.info("REF0:"),k.info("Drawing state diagram (v2)",e);let{securityLevel:r,state:u,layout:d}=w();a.db.extract(a.db.getRootDocV2());let S=a.db.getData(),f=Mt(e,r);S.type=a.type,S.layoutAlgorithm=d,S.nodeSpacing=u?.nodeSpacing||50,S.rankSpacing=u?.rankSpacing||50,S.markers=["barb"],S.diagramId=e,yield Vt(S,f);let T=8;try{(typeof a.db.getLinks=="function"?a.db.getLinks():new Map).forEach((_,x)=>{let v=typeof x=="string"?x:typeof x?.id=="string"?x.id:"";if(!v){k.warn("\u26A0\uFE0F Invalid or missing stateId from key:",JSON.stringify(x));return}let p=f.node()?.querySelectorAll("g"),D;if(p?.forEach(I=>{I.textContent?.trim()===v&&(D=I)}),!D){k.warn("\u26A0\uFE0F Could not find node matching text:",v);return}let R=D.parentNode;if(!R){k.warn("\u26A0\uFE0F Node has no parent, cannot wrap:",v);return}let L=document.createElementNS("http://www.w3.org/2000/svg","a"),$=_.url.replace(/^"+|"+$/g,"");if(L.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",$),L.setAttribute("target","_blank"),_.tooltip){let I=_.tooltip.replace(/^"+|"+$/g,"");L.setAttribute("title",I)}R.replaceChild(L,D),L.appendChild(D),k.info("\u{1F517} Wrapped node in
tag for:",v,_.url)})}catch(E){k.error("\u274C Error injecting clickable links:",E)}Gt.insertTitle(f,"statediagramTitleText",u?.titleTopMargin??25,a.db.getDiagramTitle()),Ut(f,T,tt,u?.useMaxWidth??!0)})},"draw"),ze={getClasses:we,draw:$e,getDir:oe},St=new Map,G=0;function yt(t="",e=0,s="",a=At){let r=s!==null&&s.length>0?`${a}${s}`:"";return`${Re}-${t}${r}-${e}`}h(yt,"stateDomId");var Pe=h((t,e,s,a,r,u,d,S)=>{k.trace("items",e),e.forEach(f=>{switch(f.stmt){case K:Q(t,f,s,a,r,u,d,S);break;case Z:Q(t,f,s,a,r,u,d,S);break;case Ct:{Q(t,f.state1,s,a,r,u,d,S),Q(t,f.state2,s,a,r,u,d,S);let T={id:"edge"+G,start:f.state1.id,end:f.state2.id,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:Zt,labelStyle:"",label:B.sanitizeText(f.description??"",w()),arrowheadStyle:te,labelpos:ee,labelType:se,thickness:ie,classes:re,look:d};r.push(T),G++}break}})},"setupDoc"),Kt=h((t,e=qt)=>{let s=e;if(t.doc)for(let a of t.doc)a.stmt==="dir"&&(s=a.value);return s},"getDir");function q(t,e,s){if(!e.id||e.id===""||e.id==="")return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(r=>{let u=s.get(r);u&&(e.cssCompiledStyles=[...e.cssCompiledStyles??[],...u.styles])}));let a=t.find(r=>r.id===e.id);a?Object.assign(a,e):t.push(e)}h(q,"insertOrUpdateNode");function le(t){return t?.classes?.join(" ")??""}h(le,"getClassesFromDbInfo");function ce(t){return t?.styles??[]}h(ce,"getStylesFromDbInfo");var Q=h((t,e,s,a,r,u,d,S)=>{let f=e.id,T=s.get(f),E=le(T),_=ce(T),x=w();if(k.info("dataFetcher parsedItem",e,T,_),f!=="root"){let v=mt;e.start===!0?v=Te:e.start===!1&&(v=be),e.type!==Z&&(v=e.type),St.get(f)||St.set(f,{id:f,shape:v,description:B.sanitizeText(f,x),cssClasses:`${E} ${me}`,cssStyles:_});let p=St.get(f);e.description&&(Array.isArray(p.description)?(p.shape=Dt,p.description.push(e.description)):p.description?.length&&p.description.length>0?(p.shape=Dt,p.description===f?p.description=[e.description]:p.description=[p.description,e.description]):(p.shape=mt,p.description=e.description),p.description=B.sanitizeTextOrArray(p.description,x)),p.description?.length===1&&p.shape===Dt&&(p.type==="group"?p.shape=Wt:p.shape=mt),!p.type&&e.doc&&(k.info("Setting cluster for XCX",f,Kt(e)),p.type="group",p.isGroup=!0,p.dir=Kt(e),p.shape=e.type===Qt?Ht:Wt,p.cssClasses=`${p.cssClasses} ${Le} ${u?Oe:""}`);let D={labelStyle:"",shape:p.shape,label:p.description,cssClasses:p.cssClasses,cssCompiledStyles:[],cssStyles:p.cssStyles,id:f,dir:p.dir,domId:yt(f,G),type:p.type,isGroup:p.type==="group",padding:8,rx:10,ry:10,look:d,labelType:"markdown"};if(D.shape===Ht&&(D.label=""),t&&t.id!=="root"&&(k.trace("Setting node ",f," to be child of its parent ",t.id),D.parentId=t.id),D.centerLabel=!0,e.note){let R={labelStyle:"",shape:Ee,label:e.note.text,labelType:"markdown",cssClasses:Ae,cssStyles:[],cssCompiledStyles:[],id:f+Ne+"-"+G,domId:yt(f,G,ne),type:p.type,isGroup:p.type==="group",padding:x.flowchart?.padding,look:d,position:e.note.position},L=f+zt,$={labelStyle:"",shape:_e,label:e.note.text,cssClasses:p.cssClasses,cssStyles:[],id:f+zt,domId:yt(f,G,ae),type:"group",isGroup:!0,padding:16,look:d,position:e.note.position};G++,$.id=L,R.parentId=L,q(a,$,S),q(a,R,S),q(a,D,S);let I=f,P=R.id;e.note.position==="left of"&&(I=R.id,P=f),r.push({id:I+"-"+P,start:I,end:P,arrowhead:"none",arrowTypeEnd:"",style:Zt,labelStyle:"",classes:Ce,arrowheadStyle:te,labelpos:ee,labelType:se,thickness:ie,look:d})}else q(a,D,S)}e.doc&&(k.trace("Adding nodes children "),Pe(e,e.doc,s,a,r,!u,d,S))},"dataFetcher"),Fe=h(()=>{St.clear(),G=0},"reset"),A={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},Xt=h(()=>new Map,"newClassesList"),Jt=h(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),pt=h(t=>JSON.parse(JSON.stringify(t)),"clone"),Ke=class{constructor(e){this.version=e,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=Xt(),this.documents={root:Jt()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.getAccTitle=wt,this.setAccTitle=Nt,this.getAccDescription=Pt,this.setAccDescription=$t,this.setDiagramTitle=Ft,this.getDiagramTitle=Yt,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this)}static{h(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(e){this.clear(!0);for(let r of Array.isArray(e)?e:e.doc)switch(r.stmt){case K:this.addState(r.id.trim(),r.type,r.doc,r.description,r.note);break;case Ct:this.addRelation(r.state1,r.state2,r.description);break;case Se:this.addStyleClass(r.id.trim(),r.classes);break;case ye:this.handleStyleDef(r);break;case ge:this.setCssClass(r.id.trim(),r.styleClass);break;case"click":this.addLink(r.id,r.url,r.tooltip);break}let s=this.getStates(),a=w();Fe(),Q(void 0,this.getRootDocV2(),s,this.nodes,this.edges,!0,a.look,this.classes);for(let r of this.nodes)if(Array.isArray(r.label)){if(r.description=r.label.slice(1),r.isGroup&&r.description.length>0)throw new Error(`Group nodes can only have label. Remove the additional description for node [${r.id}]`);r.label=r.label[0]}}handleStyleDef(e){let s=e.id.trim().split(","),a=e.styleClass.split(",");for(let r of s){let u=this.getState(r);if(!u){let d=r.trim();this.addState(d),u=this.getState(d)}u&&(u.styles=a.map(d=>d.replace(/;/g,"")?.trim()))}}setRootDoc(e){k.info("Setting root doc",e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}docTranslator(e,s,a){if(s.stmt===Ct){this.docTranslator(e,s.state1,!0),this.docTranslator(e,s.state2,!1);return}if(s.stmt===K&&(s.id===A.START_NODE?(s.id=e.id+(a?"_start":"_end"),s.start=a):s.id=s.id.trim()),s.stmt!==z&&s.stmt!==K||!s.doc)return;let r=[],u=[];for(let d of s.doc)if(d.type===Qt){let S=pt(d);S.doc=pt(u),r.push(S),u=[]}else u.push(d);if(r.length>0&&u.length>0){let d={stmt:K,id:Bt(),type:"divider",doc:pt(u)};r.push(pt(d)),s.doc=r}s.doc.forEach(d=>this.docTranslator(s,d,!0))}getRootDocV2(){return this.docTranslator({id:z,stmt:z},{id:z,stmt:z,doc:this.rootDoc},!0),{id:z,doc:this.rootDoc}}addState(e,s=Z,a=void 0,r=void 0,u=void 0,d=void 0,S=void 0,f=void 0){let T=e?.trim();if(!this.currentDocument.states.has(T))k.info("Adding state ",T,r),this.currentDocument.states.set(T,{stmt:K,id:T,descriptions:[],type:s,doc:a,note:u,classes:[],styles:[],textStyles:[]});else{let E=this.currentDocument.states.get(T);if(!E)throw new Error(`State not found: ${T}`);E.doc||(E.doc=a),E.type||(E.type=s)}if(r&&(k.info("Setting state description",T,r),(Array.isArray(r)?r:[r]).forEach(_=>this.addDescription(T,_.trim()))),u){let E=this.currentDocument.states.get(T);if(!E)throw new Error(`State not found: ${T}`);E.note=u,E.note.text=B.sanitizeText(E.note.text,w())}d&&(k.info("Setting state classes",T,d),(Array.isArray(d)?d:[d]).forEach(_=>this.setCssClass(T,_.trim()))),S&&(k.info("Setting state styles",T,S),(Array.isArray(S)?S:[S]).forEach(_=>this.setStyle(T,_.trim()))),f&&(k.info("Setting state styles",T,S),(Array.isArray(f)?f:[f]).forEach(_=>this.setTextStyle(T,_.trim())))}clear(e){this.nodes=[],this.edges=[],this.documents={root:Jt()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=Xt(),e||(this.links=new Map,Rt())}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){k.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(e,s,a){this.links.set(e,{url:s,tooltip:a}),k.warn("Adding link",e,s,a)}getLinks(){return this.links}startIdIfNeeded(e=""){return e===A.START_NODE?(this.startEndCount++,`${A.START_TYPE}${this.startEndCount}`):e}startTypeIfNeeded(e="",s=Z){return e===A.START_NODE?A.START_TYPE:s}endIdIfNeeded(e=""){return e===A.END_NODE?(this.startEndCount++,`${A.END_TYPE}${this.startEndCount}`):e}endTypeIfNeeded(e="",s=Z){return e===A.END_NODE?A.END_TYPE:s}addRelationObjs(e,s,a=""){let r=this.startIdIfNeeded(e.id.trim()),u=this.startTypeIfNeeded(e.id.trim(),e.type),d=this.startIdIfNeeded(s.id.trim()),S=this.startTypeIfNeeded(s.id.trim(),s.type);this.addState(r,u,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(d,S,s.doc,s.description,s.note,s.classes,s.styles,s.textStyles),this.currentDocument.relations.push({id1:r,id2:d,relationTitle:B.sanitizeText(a,w())})}addRelation(e,s,a){if(typeof e=="object"&&typeof s=="object")this.addRelationObjs(e,s,a);else if(typeof e=="string"&&typeof s=="string"){let r=this.startIdIfNeeded(e.trim()),u=this.startTypeIfNeeded(e),d=this.endIdIfNeeded(s.trim()),S=this.endTypeIfNeeded(s);this.addState(r,u),this.addState(d,S),this.currentDocument.relations.push({id1:r,id2:d,relationTitle:a?B.sanitizeText(a,w()):void 0})}}addDescription(e,s){let a=this.currentDocument.states.get(e),r=s.startsWith(":")?s.replace(":","").trim():s;a?.descriptions?.push(B.sanitizeText(r,w()))}cleanupLabel(e){return e.startsWith(":")?e.slice(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(e,s=""){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let a=this.classes.get(e);s&&a&&s.split(A.STYLECLASS_SEP).forEach(r=>{let u=r.replace(/([^;]*);/,"$1").trim();if(RegExp(A.COLOR_KEYWORD).exec(r)){let S=u.replace(A.FILL_KEYWORD,A.BG_FILL).replace(A.COLOR_KEYWORD,A.FILL_KEYWORD);a.textStyles.push(S)}a.styles.push(u)})}getClasses(){return this.classes}setCssClass(e,s){e.split(",").forEach(a=>{let r=this.getState(a);if(!r){let u=a.trim();this.addState(u),r=this.getState(u)}r?.classes?.push(s)})}setStyle(e,s){this.getState(e)?.styles?.push(s)}setTextStyle(e,s){this.getState(e)?.textStyles?.push(s)}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt===jt)}getDirection(){return this.getDirectionStatement()?.value??pe}setDirection(e){let s=this.getDirectionStatement();s?s.value=e:this.rootDoc.unshift({stmt:jt,value:e})}trimColon(e){return e.startsWith(":")?e.slice(1).trim():e.trim()}getData(){let e=w();return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:oe(this.getRootDocV2())}}getConfig(){return w().state}},Ye=h(t=>` -defs #statediagram-barbEnd { - fill: ${t.transitionColor}; - stroke: ${t.transitionColor}; - } -g.stateGroup text { - fill: ${t.nodeBorder}; - stroke: none; - font-size: 10px; -} -g.stateGroup text { - fill: ${t.textColor}; - stroke: none; - font-size: 10px; - -} -g.stateGroup .state-title { - font-weight: bolder; - fill: ${t.stateLabelColor}; -} - -g.stateGroup rect { - fill: ${t.mainBkg}; - stroke: ${t.nodeBorder}; -} - -g.stateGroup line { - stroke: ${t.lineColor}; - stroke-width: 1; -} - -.transition { - stroke: ${t.transitionColor}; - stroke-width: 1; - fill: none; -} - -.stateGroup .composit { - fill: ${t.background}; - border-bottom: 1px -} - -.stateGroup .alt-composit { - fill: #e0e0e0; - border-bottom: 1px -} - -.state-note { - stroke: ${t.noteBorderColor}; - fill: ${t.noteBkgColor}; - - text { - fill: ${t.noteTextColor}; - stroke: none; - font-size: 10px; - } -} - -.stateLabel .box { - stroke: none; - stroke-width: 0; - fill: ${t.mainBkg}; - opacity: 0.5; -} - -.edgeLabel .label rect { - fill: ${t.labelBackgroundColor}; - opacity: 0.5; -} -.edgeLabel { - background-color: ${t.edgeLabelBackground}; - p { - background-color: ${t.edgeLabelBackground}; - } - rect { - opacity: 0.5; - background-color: ${t.edgeLabelBackground}; - fill: ${t.edgeLabelBackground}; - } - text-align: center; -} -.edgeLabel .label text { - fill: ${t.transitionLabelColor||t.tertiaryTextColor}; -} -.label div .edgeLabel { - color: ${t.transitionLabelColor||t.tertiaryTextColor}; -} - -.stateLabel text { - fill: ${t.stateLabelColor}; - font-size: 10px; - font-weight: bold; -} - -.node circle.state-start { - fill: ${t.specialStateColor}; - stroke: ${t.specialStateColor}; -} - -.node .fork-join { - fill: ${t.specialStateColor}; - stroke: ${t.specialStateColor}; -} - -.node circle.state-end { - fill: ${t.innerEndBackground}; - stroke: ${t.background}; - stroke-width: 1.5 -} -.end-state-inner { - fill: ${t.compositeBackground||t.background}; - // stroke: ${t.background}; - stroke-width: 1.5 -} - -.node rect { - fill: ${t.stateBkg||t.mainBkg}; - stroke: ${t.stateBorder||t.nodeBorder}; - stroke-width: 1px; -} -.node polygon { - fill: ${t.mainBkg}; - stroke: ${t.stateBorder||t.nodeBorder};; - stroke-width: 1px; -} -#statediagram-barbEnd { - fill: ${t.lineColor}; -} - -.statediagram-cluster rect { - fill: ${t.compositeTitleBackground}; - stroke: ${t.stateBorder||t.nodeBorder}; - stroke-width: 1px; -} - -.cluster-label, .nodeLabel { - color: ${t.stateLabelColor}; - // line-height: 1; -} - -.statediagram-cluster rect.outer { - rx: 5px; - ry: 5px; -} -.statediagram-state .divider { - stroke: ${t.stateBorder||t.nodeBorder}; -} - -.statediagram-state .title-state { - rx: 5px; - ry: 5px; -} -.statediagram-cluster.statediagram-cluster .inner { - fill: ${t.compositeBackground||t.background}; -} -.statediagram-cluster.statediagram-cluster-alt .inner { - fill: ${t.altBackground?t.altBackground:"#efefef"}; -} - -.statediagram-cluster .inner { - rx:0; - ry:0; -} - -.statediagram-state rect.basic { - rx: 5px; - ry: 5px; -} -.statediagram-state rect.divider { - stroke-dasharray: 10,10; - fill: ${t.altBackground?t.altBackground:"#efefef"}; -} - -.note-edge { - stroke-dasharray: 5; -} - -.statediagram-note rect { - fill: ${t.noteBkgColor}; - stroke: ${t.noteBorderColor}; - stroke-width: 1px; - rx: 0; - ry: 0; -} -.statediagram-note rect { - fill: ${t.noteBkgColor}; - stroke: ${t.noteBorderColor}; - stroke-width: 1px; - rx: 0; - ry: 0; -} - -.statediagram-note text { - fill: ${t.noteTextColor}; -} - -.statediagram-note .nodeLabel { - color: ${t.noteTextColor}; -} -.statediagram .edgeLabel { - color: red; // ${t.noteTextColor}; -} - -#dependencyStart, #dependencyEnd { - fill: ${t.lineColor}; - stroke: ${t.lineColor}; - stroke-width: 1; -} - -.statediagramTitleText { - text-anchor: middle; - font-size: 18px; - fill: ${t.textColor}; -} -`,"getStyles"),Xe=Ye;export{We as a,ze as b,Ke as c,Xe as d}; diff --git a/src/google/adk/cli/browser/chunk-NMKTPNXE.js b/src/google/adk/cli/browser/chunk-LT3WOUUJ.js similarity index 96% rename from src/google/adk/cli/browser/chunk-NMKTPNXE.js rename to src/google/adk/cli/browser/chunk-LT3WOUUJ.js index 7bf7241223..70d4386dc2 100644 --- a/src/google/adk/cli/browser/chunk-NMKTPNXE.js +++ b/src/google/adk/cli/browser/chunk-LT3WOUUJ.js @@ -1 +1 @@ -import{a as x}from"./chunk-GP6TCC26.js";import{F as d}from"./chunk-QFMJV7VH.js";import{a as o,g as i}from"./chunk-JRNAXTJ7.js";import{h as p}from"./chunk-RMXJBC7V.js";var l=p(x(),1);var c=i((r,t)=>{let e=r.append("rect");if(e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),t.name&&e.attr("name",t.name),t.rx&&e.attr("rx",t.rx),t.ry&&e.attr("ry",t.ry),t.attrs!==void 0)for(let s in t.attrs)e.attr(s,t.attrs[s]);return t.class&&e.attr("class",t.class),e},"drawRect"),f=i((r,t)=>{let e={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};c(r,e).lower()},"drawBackgroundRect"),h=i((r,t)=>{let e=t.text.replace(d," "),s=r.append("text");s.attr("x",t.x),s.attr("y",t.y),s.attr("class","legend"),s.style("text-anchor",t.anchor),t.class&&s.attr("class",t.class);let a=s.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.text(e),s},"drawText"),w=i((r,t,e,s)=>{let a=r.append("image");a.attr("x",t),a.attr("y",e);let n=(0,l.sanitizeUrl)(s);a.attr("xlink:href",n)},"drawImage"),k=i((r,t,e,s)=>{let a=r.append("use");a.attr("x",t),a.attr("y",e);let n=(0,l.sanitizeUrl)(s);a.attr("xlink:href",`#${n}`)},"drawEmbeddedImage"),v=i(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),E=i(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),R=i(()=>{let r=o(".mermaidTooltip");return r.empty()&&(r=o("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),r},"createTooltip");export{c as a,f as b,h as c,w as d,k as e,v as f,E as g,R as h}; +import{a as x}from"./chunk-GP6TCC26.js";import{F as d}from"./chunk-37QI3DOO.js";import{a as o,g as i}from"./chunk-JRNAXTJ7.js";import{h as p}from"./chunk-RMXJBC7V.js";var l=p(x(),1);var c=i((r,t)=>{let e=r.append("rect");if(e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),t.name&&e.attr("name",t.name),t.rx&&e.attr("rx",t.rx),t.ry&&e.attr("ry",t.ry),t.attrs!==void 0)for(let s in t.attrs)e.attr(s,t.attrs[s]);return t.class&&e.attr("class",t.class),e},"drawRect"),f=i((r,t)=>{let e={x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,stroke:t.stroke,class:"rect"};c(r,e).lower()},"drawBackgroundRect"),h=i((r,t)=>{let e=t.text.replace(d," "),s=r.append("text");s.attr("x",t.x),s.attr("y",t.y),s.attr("class","legend"),s.style("text-anchor",t.anchor),t.class&&s.attr("class",t.class);let a=s.append("tspan");return a.attr("x",t.x+t.textMargin*2),a.text(e),s},"drawText"),w=i((r,t,e,s)=>{let a=r.append("image");a.attr("x",t),a.attr("y",e);let n=(0,l.sanitizeUrl)(s);a.attr("xlink:href",n)},"drawImage"),k=i((r,t,e,s)=>{let a=r.append("use");a.attr("x",t),a.attr("y",e);let n=(0,l.sanitizeUrl)(s);a.attr("xlink:href",`#${n}`)},"drawEmbeddedImage"),v=i(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),E=i(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),R=i(()=>{let r=o(".mermaidTooltip");return r.empty()&&(r=o("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),r},"createTooltip");export{c as a,f as b,h as c,w as d,k as e,v as f,E as g,R as h}; diff --git a/src/google/adk/cli/browser/chunk-6UL33SIT.js b/src/google/adk/cli/browser/chunk-LVMBETIL.js similarity index 77% rename from src/google/adk/cli/browser/chunk-6UL33SIT.js rename to src/google/adk/cli/browser/chunk-LVMBETIL.js index 21d3afb53d..4dd2518c44 100644 --- a/src/google/adk/cli/browser/chunk-6UL33SIT.js +++ b/src/google/adk/cli/browser/chunk-LVMBETIL.js @@ -1,14 +1,14 @@ -import{a as _e}from"./chunk-B2DSW4QB.js";import{a as fe}from"./chunk-TPDTRWWV.js";import{a as be,b as ye}from"./chunk-ZMOC4H7T.js";import{d as ke,g as me,j as Ee}from"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{G as B,O as pe,Y as M,c as de,d as te,e as ne,r as W}from"./chunk-QFMJV7VH.js";import{g as o,i as Y}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{j as ge}from"./chunk-RMXJBC7V.js";var ie=(function(){var e=o(function(O,i,n,s){for(n=n||{},s=O.length;s--;n[O[s]]=i);return n},"o"),u=[1,4],p=[1,13],r=[1,12],d=[1,15],_=[1,16],y=[1,20],l=[1,19],D=[6,7,8],I=[1,26],g=[1,24],w=[1,25],m=[6,7,11],U=[1,31],N=[6,7,11,24],j=[1,6,13,16,17,20,23],k=[1,35],A=[1,36],L=[1,6,7,11,13,16,17,20,23],H=[1,38],T={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:o(function(i,n,s,a,h,t,R){var c=t.length-1;switch(h){case 6:case 7:return a;case 8:a.getLogger().trace("Stop NL ");break;case 9:a.getLogger().trace("Stop EOF ");break;case 11:a.getLogger().trace("Stop NL2 ");break;case 12:a.getLogger().trace("Stop EOF2 ");break;case 15:a.getLogger().info("Node: ",t[c-1].id),a.addNode(t[c-2].length,t[c-1].id,t[c-1].descr,t[c-1].type,t[c]);break;case 16:a.getLogger().info("Node: ",t[c].id),a.addNode(t[c-1].length,t[c].id,t[c].descr,t[c].type);break;case 17:a.getLogger().trace("Icon: ",t[c]),a.decorateNode({icon:t[c]});break;case 18:case 23:a.decorateNode({class:t[c]});break;case 19:a.getLogger().trace("SPACELIST");break;case 20:a.getLogger().trace("Node: ",t[c-1].id),a.addNode(0,t[c-1].id,t[c-1].descr,t[c-1].type,t[c]);break;case 21:a.getLogger().trace("Node: ",t[c].id),a.addNode(0,t[c].id,t[c].descr,t[c].type);break;case 22:a.decorateNode({icon:t[c]});break;case 27:a.getLogger().trace("node found ..",t[c-2]),this.$={id:t[c-1],descr:t[c-1],type:a.getType(t[c-2],t[c])};break;case 28:this.$={id:t[c],descr:t[c],type:0};break;case 29:a.getLogger().trace("node found ..",t[c-3]),this.$={id:t[c-3],descr:t[c-1],type:a.getType(t[c-2],t[c])};break;case 30:this.$=t[c-1]+t[c];break;case 31:this.$=t[c];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:u},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:u},{6:p,7:[1,10],9:9,12:11,13:r,14:14,16:d,17:_,18:17,19:18,20:y,23:l},e(D,[2,3]),{1:[2,2]},e(D,[2,4]),e(D,[2,5]),{1:[2,6],6:p,12:21,13:r,14:14,16:d,17:_,18:17,19:18,20:y,23:l},{6:p,9:22,12:11,13:r,14:14,16:d,17:_,18:17,19:18,20:y,23:l},{6:I,7:g,10:23,11:w},e(m,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:y,23:l}),e(m,[2,19]),e(m,[2,21],{15:30,24:U}),e(m,[2,22]),e(m,[2,23]),e(N,[2,25]),e(N,[2,26]),e(N,[2,28],{20:[1,32]}),{21:[1,33]},{6:I,7:g,10:34,11:w},{1:[2,7],6:p,12:21,13:r,14:14,16:d,17:_,18:17,19:18,20:y,23:l},e(j,[2,14],{7:k,11:A}),e(L,[2,8]),e(L,[2,9]),e(L,[2,10]),e(m,[2,16],{15:37,24:U}),e(m,[2,17]),e(m,[2,18]),e(m,[2,20],{24:H}),e(N,[2,31]),{21:[1,39]},{22:[1,40]},e(j,[2,13],{7:k,11:A}),e(L,[2,11]),e(L,[2,12]),e(m,[2,15],{24:H}),e(N,[2,30]),{22:[1,41]},e(N,[2,27]),e(N,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(i,n){if(n.recoverable)this.trace(i);else{var s=new Error(i);throw s.hash=n,s}},"parseError"),parse:o(function(i){var n=this,s=[0],a=[],h=[null],t=[],R=this.table,c="",z=0,oe=0,ce=0,Ne=2,le=1,xe=t.slice.call(arguments,1),b=Object.create(this.lexer),P={yy:{}};for(var q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,q)&&(P.yy[q]=this.yy[q]);b.setInput(i,P.yy),P.yy.lexer=b,P.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var Q=b.yylloc;t.push(Q);var ve=b.options&&b.options.ranges;typeof P.yy.parseError=="function"?this.parseError=P.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function De(S){s.length=s.length-2*S,h.length=h.length-S,t.length=t.length-S}o(De,"popStack");function he(){var S;return S=a.pop()||b.lex()||le,typeof S!="number"&&(S instanceof Array&&(a=S,S=a.pop()),S=n.symbols_[S]||S),S}o(he,"lex");for(var E,Z,V,x,ze,$,G={},X,C,ue,K;;){if(V=s[s.length-1],this.defaultActions[V]?x=this.defaultActions[V]:((E===null||typeof E>"u")&&(E=he()),x=R[V]&&R[V][E]),typeof x>"u"||!x.length||!x[0]){var ee="";K=[];for(X in R[V])this.terminals_[X]&&X>Ne&&K.push("'"+this.terminals_[X]+"'");b.showPosition?ee="Parse error on line "+(z+1)+`: -`+b.showPosition()+` -Expecting `+K.join(", ")+", got '"+(this.terminals_[E]||E)+"'":ee="Parse error on line "+(z+1)+": Unexpected "+(E==le?"end of input":"'"+(this.terminals_[E]||E)+"'"),this.parseError(ee,{text:b.match,token:this.terminals_[E]||E,line:b.yylineno,loc:Q,expected:K})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+V+", token: "+E);switch(x[0]){case 1:s.push(E),h.push(b.yytext),t.push(b.yylloc),s.push(x[1]),E=null,Z?(E=Z,Z=null):(oe=b.yyleng,c=b.yytext,z=b.yylineno,Q=b.yylloc,ce>0&&ce--);break;case 2:if(C=this.productions_[x[1]][1],G.$=h[h.length-C],G._$={first_line:t[t.length-(C||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(C||1)].first_column,last_column:t[t.length-1].last_column},ve&&(G._$.range=[t[t.length-(C||1)].range[0],t[t.length-1].range[1]]),$=this.performAction.apply(G,[c,oe,z,P.yy,x[1],h,t].concat(xe)),typeof $<"u")return $;C&&(s=s.slice(0,-1*C*2),h=h.slice(0,-1*C),t=t.slice(0,-1*C)),s.push(this.productions_[x[1]][0]),h.push(G.$),t.push(G._$),ue=R[s[s.length-2]][s[s.length-1]],s.push(ue);break;case 3:return!0}}return!0},"parse")},J=(function(){var O={EOF:1,parseError:o(function(n,s){if(this.yy.parser)this.yy.parser.parseError(n,s);else throw new Error(n)},"parseError"),setInput:o(function(i,n){return this.yy=n||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var n=i.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},"input"),unput:o(function(i){var n=i.length,s=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var h=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===a.length?this.yylloc.first_column:0)+a[a.length-s.length].length-s[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[h[0],h[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +import{a as _e}from"./chunk-B2DSW4QB.js";import{a as fe}from"./chunk-PDRDFWTH.js";import{a as be,b as ye}from"./chunk-ZMOC4H7T.js";import{d as ke,g as me,j as Ee}from"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{G as B,O as pe,Y as M,c as de,d as te,e as ne,r as W}from"./chunk-37QI3DOO.js";import{g as o,i as Y}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{j as ge}from"./chunk-RMXJBC7V.js";var ie=(function(){var e=o(function(O,i,n,s){for(n=n||{},s=O.length;s--;n[O[s]]=i);return n},"o"),u=[1,4],p=[1,13],r=[1,12],d=[1,15],m=[1,16],k=[1,20],l=[1,19],D=[6,7,8],I=[1,26],g=[1,24],w=[1,25],E=[6,7,11],U=[1,31],N=[6,7,11,24],j=[1,6,13,16,17,20,23],f=[1,35],A=[1,36],L=[1,6,7,11,13,16,17,20,23],H=[1,38],T={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:o(function(i,n,s,a,h,t,R){var c=t.length-1;switch(h){case 6:case 7:return a;case 8:a.getLogger().trace("Stop NL ");break;case 9:a.getLogger().trace("Stop EOF ");break;case 11:a.getLogger().trace("Stop NL2 ");break;case 12:a.getLogger().trace("Stop EOF2 ");break;case 15:a.getLogger().info("Node: ",t[c-1].id),a.addNode(t[c-2].length,t[c-1].id,t[c-1].descr,t[c-1].type,t[c]);break;case 16:a.getLogger().info("Node: ",t[c].id),a.addNode(t[c-1].length,t[c].id,t[c].descr,t[c].type);break;case 17:a.getLogger().trace("Icon: ",t[c]),a.decorateNode({icon:t[c]});break;case 18:case 23:a.decorateNode({class:t[c]});break;case 19:a.getLogger().trace("SPACELIST");break;case 20:a.getLogger().trace("Node: ",t[c-1].id),a.addNode(0,t[c-1].id,t[c-1].descr,t[c-1].type,t[c]);break;case 21:a.getLogger().trace("Node: ",t[c].id),a.addNode(0,t[c].id,t[c].descr,t[c].type);break;case 22:a.decorateNode({icon:t[c]});break;case 27:a.getLogger().trace("node found ..",t[c-2]),this.$={id:t[c-1],descr:t[c-1],type:a.getType(t[c-2],t[c])};break;case 28:this.$={id:t[c],descr:t[c],type:0};break;case 29:a.getLogger().trace("node found ..",t[c-3]),this.$={id:t[c-3],descr:t[c-1],type:a.getType(t[c-2],t[c])};break;case 30:this.$=t[c-1]+t[c];break;case 31:this.$=t[c];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:u},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:u},{6:p,7:[1,10],9:9,12:11,13:r,14:14,16:d,17:m,18:17,19:18,20:k,23:l},e(D,[2,3]),{1:[2,2]},e(D,[2,4]),e(D,[2,5]),{1:[2,6],6:p,12:21,13:r,14:14,16:d,17:m,18:17,19:18,20:k,23:l},{6:p,9:22,12:11,13:r,14:14,16:d,17:m,18:17,19:18,20:k,23:l},{6:I,7:g,10:23,11:w},e(E,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:k,23:l}),e(E,[2,19]),e(E,[2,21],{15:30,24:U}),e(E,[2,22]),e(E,[2,23]),e(N,[2,25]),e(N,[2,26]),e(N,[2,28],{20:[1,32]}),{21:[1,33]},{6:I,7:g,10:34,11:w},{1:[2,7],6:p,12:21,13:r,14:14,16:d,17:m,18:17,19:18,20:k,23:l},e(j,[2,14],{7:f,11:A}),e(L,[2,8]),e(L,[2,9]),e(L,[2,10]),e(E,[2,16],{15:37,24:U}),e(E,[2,17]),e(E,[2,18]),e(E,[2,20],{24:H}),e(N,[2,31]),{21:[1,39]},{22:[1,40]},e(j,[2,13],{7:f,11:A}),e(L,[2,11]),e(L,[2,12]),e(E,[2,15],{24:H}),e(N,[2,30]),{22:[1,41]},e(N,[2,27]),e(N,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:o(function(i,n){if(n.recoverable)this.trace(i);else{var s=new Error(i);throw s.hash=n,s}},"parseError"),parse:o(function(i){var n=this,s=[0],a=[],h=[null],t=[],R=this.table,c="",z=0,oe=0,ce=0,Ne=2,le=1,xe=t.slice.call(arguments,1),y=Object.create(this.lexer),P={yy:{}};for(var q in this.yy)Object.prototype.hasOwnProperty.call(this.yy,q)&&(P.yy[q]=this.yy[q]);y.setInput(i,P.yy),P.yy.lexer=y,P.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var Q=y.yylloc;t.push(Q);var ve=y.options&&y.options.ranges;typeof P.yy.parseError=="function"?this.parseError=P.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function De(S){s.length=s.length-2*S,h.length=h.length-S,t.length=t.length-S}o(De,"popStack");function he(){var S;return S=a.pop()||y.lex()||le,typeof S!="number"&&(S instanceof Array&&(a=S,S=a.pop()),S=n.symbols_[S]||S),S}o(he,"lex");for(var _,Z,V,x,ze,$,G={},X,C,ue,K;;){if(V=s[s.length-1],this.defaultActions[V]?x=this.defaultActions[V]:((_===null||typeof _>"u")&&(_=he()),x=R[V]&&R[V][_]),typeof x>"u"||!x.length||!x[0]){var ee="";K=[];for(X in R[V])this.terminals_[X]&&X>Ne&&K.push("'"+this.terminals_[X]+"'");y.showPosition?ee="Parse error on line "+(z+1)+`: +`+y.showPosition()+` +Expecting `+K.join(", ")+", got '"+(this.terminals_[_]||_)+"'":ee="Parse error on line "+(z+1)+": Unexpected "+(_==le?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(ee,{text:y.match,token:this.terminals_[_]||_,line:y.yylineno,loc:Q,expected:K})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+V+", token: "+_);switch(x[0]){case 1:s.push(_),h.push(y.yytext),t.push(y.yylloc),s.push(x[1]),_=null,Z?(_=Z,Z=null):(oe=y.yyleng,c=y.yytext,z=y.yylineno,Q=y.yylloc,ce>0&&ce--);break;case 2:if(C=this.productions_[x[1]][1],G.$=h[h.length-C],G._$={first_line:t[t.length-(C||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(C||1)].first_column,last_column:t[t.length-1].last_column},ve&&(G._$.range=[t[t.length-(C||1)].range[0],t[t.length-1].range[1]]),$=this.performAction.apply(G,[c,oe,z,P.yy,x[1],h,t].concat(xe)),typeof $<"u")return $;C&&(s=s.slice(0,-1*C*2),h=h.slice(0,-1*C),t=t.slice(0,-1*C)),s.push(this.productions_[x[1]][0]),h.push(G.$),t.push(G._$),ue=R[s[s.length-2]][s[s.length-1]],s.push(ue);break;case 3:return!0}}return!0},"parse")},J=(function(){var O={EOF:1,parseError:o(function(n,s){if(this.yy.parser)this.yy.parser.parseError(n,s);else throw new Error(n)},"parseError"),setInput:o(function(i,n){return this.yy=n||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var n=i.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},"input"),unput:o(function(i){var n=i.length,s=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var a=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),s.length-1&&(this.yylineno-=s.length-1);var h=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:s?(s.length===a.length?this.yylloc.first_column:0)+a[a.length-s.length].length-s[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[h[0],h[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(i){this.unput(this.match.slice(i))},"less"),pastInput:o(function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var i=this.match;return i.length<20&&(i+=this._input.substr(0,20-i.length)),(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var i=this.pastInput(),n=new Array(i.length+1).join("-");return i+this.upcomingInput()+` `+n+"^"},"showPosition"),test_match:o(function(i,n){var s,a,h;if(this.options.backtrack_lexer&&(h={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(h.yylloc.range=this.yylloc.range.slice(0))),a=i[0].match(/(?:\r\n?|\n).*/g),a&&(this.yylineno+=a.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:a?a[a.length-1].length-a[a.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+i[0].length},this.yytext+=i[0],this.match+=i[0],this.matches=i,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(i[0].length),this.matched+=i[0],s=this.performAction.call(this,this.yy,this,n,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),s)return s;if(this._backtrack){for(var t in h)this[t]=h[t];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var i,n,s,a;this._more||(this.yytext="",this.match="");for(var h=this._currentRules(),t=0;tn[0].length)){if(n=s,a=t,this.options.backtrack_lexer){if(i=this.test_match(s,h[t]),i!==!1)return i;if(this._backtrack){n=!1;continue}else return!1}else if(!this.options.flex)break}return n?(i=this.test_match(n,h[a]),i!==!1?i:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var n=this.next();return n||this.lex()},"lex"),begin:o(function(n){this.conditionStack.push(n)},"begin"),popState:o(function(){var n=this.conditionStack.length-1;return n>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(n){return n=this.conditionStack.length-1-Math.abs(n||0),n>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:o(function(n){this.begin(n)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(n,s,a,h){var t=h;switch(a){case 0:return this.pushState("shapeData"),s.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let R=/\n\s*/g;return s.yytext=s.yytext.replace(R,"
"),24;break;case 4:return 24;case 5:this.popState();break;case 6:return n.getLogger().trace("Found comment",s.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:n.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return n.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:n.getLogger().trace("end icon"),this.popState();break;case 16:return n.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return n.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return n.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return n.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:n.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return n.getLogger().trace("description:",s.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),n.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),n.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),n.getLogger().trace("node end ...",s.yytext),"NODE_DEND";break;case 36:return this.popState(),n.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),n.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),n.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),n.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),n.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return n.getLogger().trace("Long description:",s.yytext),21;break;case 42:return n.getLogger().trace("Long description:",s.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return O})();T.lexer=J;function F(){this.yy={}}return o(F,"Parser"),F.prototype=T,T.Parser=F,new F})();ie.parser=ie;var Le=ie,v=[],se=[],re=0,ae={},Oe=o(()=>{v=[],se=[],re=0,ae={}},"clear"),Ie=o(e=>{if(v.length===0)return null;let u=v[0].level,p=null;for(let r=v.length-1;r>=0;r--)if(v[r].level===u&&!p&&(p=v[r]),v[r].levell.parentId===d.id);for(let l of y){let D={id:l.id,parentId:d.id,label:B(l.label??"",r),labelType:"markdown",isGroup:!1,ticket:l?.ticket,priority:l?.priority,assigned:l?.assigned,icon:l?.icon,shape:"kanbanItem",level:l.level,rx:5,ry:5,cssStyles:["text-align: left"]};u.push(D)}}return{nodes:u,edges:e,other:{},config:M()}},"getData"),we=o((e,u,p,r,d)=>{let _=M(),y=_.mindmap?.padding??W.mindmap.padding;switch(r){case f.ROUNDED_RECT:case f.RECT:case f.HEXAGON:y*=2}let l={id:B(u,_)||"kbn"+re++,level:e,label:B(p,_),width:_.mindmap?.maxNodeWidth??W.mindmap.maxNodeWidth,padding:y,isGroup:!1};if(d!==void 0){let I;d.includes(` +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var n=this.next();return n||this.lex()},"lex"),begin:o(function(n){this.conditionStack.push(n)},"begin"),popState:o(function(){var n=this.conditionStack.length-1;return n>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(n){return n=this.conditionStack.length-1-Math.abs(n||0),n>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:o(function(n){this.begin(n)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(n,s,a,h){var t=h;switch(a){case 0:return this.pushState("shapeData"),s.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let R=/\n\s*/g;return s.yytext=s.yytext.replace(R,"
"),24;break;case 4:return 24;case 5:this.popState();break;case 6:return n.getLogger().trace("Found comment",s.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:n.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return n.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:n.getLogger().trace("end icon"),this.popState();break;case 16:return n.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return n.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return n.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return n.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:n.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return n.getLogger().trace("description:",s.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),n.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),n.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),n.getLogger().trace("node end ...",s.yytext),"NODE_DEND";break;case 36:return this.popState(),n.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),n.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),n.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),n.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),n.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return n.getLogger().trace("Long description:",s.yytext),21;break;case 42:return n.getLogger().trace("Long description:",s.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return O})();T.lexer=J;function F(){this.yy={}}return o(F,"Parser"),F.prototype=T,T.Parser=F,new F})();ie.parser=ie;var Le=ie,v=[],se=[],re=0,ae={},Oe=o(()=>{v=[],se=[],re=0,ae={}},"clear"),Ie=o(e=>{if(v.length===0)return null;let u=v[0].level,p=null;for(let r=v.length-1;r>=0;r--)if(v[r].level===u&&!p&&(p=v[r]),v[r].levell.parentId===d.id);for(let l of k){let D={id:l.id,parentId:d.id,label:B(l.label??"",r),labelType:"markdown",isGroup:!1,ticket:l?.ticket,priority:l?.priority,assigned:l?.assigned,icon:l?.icon,shape:"kanbanItem",level:l.level,rx:5,ry:5,cssStyles:["text-align: left"]};u.push(D)}}return{nodes:u,edges:e,other:{},config:M()}},"getData"),we=o((e,u,p,r,d)=>{let m=M(),k=m.mindmap?.padding??W.mindmap.padding;switch(r){case b.ROUNDED_RECT:case b.RECT:case b.HEXAGON:k*=2}let l={id:B(u,m)||"kbn"+re++,level:e,label:B(p,m),width:m.mindmap?.maxNodeWidth??W.mindmap.maxNodeWidth,padding:k,isGroup:!1};if(d!==void 0){let I;d.includes(` `)?I=d+` `:I=`{ `+d+` -}`;let g=ye(I,{schema:be});if(g.shape&&(g.shape!==g.shape.toLowerCase()||g.shape.includes("_")))throw new Error(`No such shape: ${g.shape}. Shape names should be lowercase.`);g?.shape&&g.shape==="kanbanItem"&&(l.shape=g?.shape),g?.label&&(l.label=g?.label),g?.icon&&(l.icon=g?.icon.toString()),g?.assigned&&(l.assigned=g?.assigned.toString()),g?.ticket&&(l.ticket=g?.ticket.toString()),g?.priority&&(l.priority=g?.priority)}let D=Ie(e);D?l.parentId=D.id||"kbn"+re++:se.push(l),v.push(l)},"addNode"),f={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Ae=o((e,u)=>{switch(Y.debug("In get type",e,u),e){case"[":return f.RECT;case"(":return u===")"?f.ROUNDED_RECT:f.CLOUD;case"((":return f.CIRCLE;case")":return f.CLOUD;case"))":return f.BANG;case"{{":return f.HEXAGON;default:return f.DEFAULT}},"getType"),Te=o((e,u)=>{ae[e]=u},"setElementForId"),Re=o(e=>{if(!e)return;let u=M(),p=v[v.length-1];e.icon&&(p.icon=B(e.icon,u)),e.class&&(p.cssClasses=B(e.class,u))},"decorateNode"),Pe=o(e=>{switch(e){case f.DEFAULT:return"no-border";case f.RECT:return"rect";case f.ROUNDED_RECT:return"rounded-rect";case f.CIRCLE:return"circle";case f.CLOUD:return"cloud";case f.BANG:return"bang";case f.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),Ve=o(()=>Y,"getLogger"),Be=o(e=>ae[e],"getElementById"),je={clear:Oe,addNode:we,getSections:Se,getData:Ce,nodeType:f,getType:Ae,setElementForId:Te,decorateNode:Re,type2Str:Pe,getLogger:Ve,getElementById:Be},Fe=je,Ge=o((e,u,p,r)=>ge(null,null,function*(){Y.debug(`Rendering kanban diagram -`+e);let _=r.db.getData(),y=M();y.htmlLabels=!1;let l=fe(u),D=l.append("g");D.attr("class","sections");let I=l.append("g");I.attr("class","items");let g=_.nodes.filter(k=>k.isGroup),w=0,m=10,U=[],N=25;for(let k of g){let A=y?.kanban?.sectionWidth||200;w=w+1,k.x=A*w+(w-1)*m/2,k.width=A,k.y=0,k.height=A*3,k.rx=5,k.ry=5,k.cssClasses=k.cssClasses+" section-"+w;let L=yield ke(D,k);N=Math.max(N,L?.labelBBox?.height),U.push(L)}let j=0;for(let k of g){let A=U[j];j=j+1;let L=y?.kanban?.sectionWidth||200,H=-L*3/2+N,T=H,J=_.nodes.filter(i=>i.parentId===k.id);for(let i of J){if(i.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");i.x=k.x,i.width=L-1.5*m;let s=(yield me(I,i,{config:y})).node().getBBox();i.y=T+s.height/2,yield Ee(i),T=i.y+s.height/2+m/2}let F=A.cluster.select("rect"),O=Math.max(T-H+3*m,50)+(N-25);F.attr("height",O)}pe(void 0,l,y.mindmap?.padding??W.kanban.padding,y.mindmap?.useMaxWidth??W.kanban.useMaxWidth)}),"draw"),Me={draw:Ge},Ue=o(e=>{let u="";for(let r=0;re.darkMode?ne(r,d):te(r,d),"adjuster");for(let r=0;r{switch(Y.debug("In get type",e,u),e){case"[":return b.RECT;case"(":return u===")"?b.ROUNDED_RECT:b.CLOUD;case"((":return b.CIRCLE;case")":return b.CLOUD;case"))":return b.BANG;case"{{":return b.HEXAGON;default:return b.DEFAULT}},"getType"),Te=o((e,u)=>{ae[e]=u},"setElementForId"),Re=o(e=>{if(!e)return;let u=M(),p=v[v.length-1];e.icon&&(p.icon=B(e.icon,u)),e.class&&(p.cssClasses=B(e.class,u))},"decorateNode"),Pe=o(e=>{switch(e){case b.DEFAULT:return"no-border";case b.RECT:return"rect";case b.ROUNDED_RECT:return"rounded-rect";case b.CIRCLE:return"circle";case b.CLOUD:return"cloud";case b.BANG:return"bang";case b.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),Ve=o(()=>Y,"getLogger"),Be=o(e=>ae[e],"getElementById"),je={clear:Oe,addNode:we,getSections:Se,getData:Ce,nodeType:b,getType:Ae,setElementForId:Te,decorateNode:Re,type2Str:Pe,getLogger:Ve,getElementById:Be},Fe=je,Ge=o((e,u,p,r)=>ge(null,null,function*(){Y.debug(`Rendering kanban diagram +`+e);let m=r.db.getData(),k=M();k.htmlLabels=!1;let l=fe(u);for(let f of m.nodes)f.domId=`${u}-${f.id}`;let D=l.append("g");D.attr("class","sections");let I=l.append("g");I.attr("class","items");let g=m.nodes.filter(f=>f.isGroup),w=0,E=10,U=[],N=25;for(let f of g){let A=k?.kanban?.sectionWidth||200;w=w+1,f.x=A*w+(w-1)*E/2,f.width=A,f.y=0,f.height=A*3,f.rx=5,f.ry=5,f.cssClasses=f.cssClasses+" section-"+w;let L=yield ke(D,f);N=Math.max(N,L?.labelBBox?.height),U.push(L)}let j=0;for(let f of g){let A=U[j];j=j+1;let L=k?.kanban?.sectionWidth||200,H=-L*3/2+N,T=H,J=m.nodes.filter(i=>i.parentId===f.id);for(let i of J){if(i.isGroup)throw new Error("Groups within groups are not allowed in Kanban diagrams");i.x=f.x,i.width=L-1.5*E;let s=(yield me(I,i,{config:k})).node().getBBox();i.y=T+s.height/2,yield Ee(i),T=i.y+s.height/2+E/2}let F=A.cluster.select("rect"),O=Math.max(T-H+3*E,50)+(N-25);F.attr("height",O)}pe(void 0,l,k.mindmap?.padding??W.kanban.padding,k.mindmap?.useMaxWidth??W.kanban.useMaxWidth)}),"draw"),Me={draw:Ge},Ue=o(e=>{let u="";for(let r=0;re.darkMode?ne(r,d):te(r,d),"adjuster");for(let r=0;r"u"&&(T.yylloc={});var xe=T.yylloc;t.push(xe);var kt=T.options&&T.options.ranges;typeof w.yy.parseError=="function"?this.parseError=w.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gt(B){d.length=d.length-2*B,b.length=b.length-B,t.length=t.length-B}p(gt,"popStack");function Ke(){var B;return B=r.pop()||T.lex()||Ye,typeof B!="number"&&(B instanceof Array&&(r=B,B=r.pop()),B=o.symbols_[B]||B),B}p(Ke,"lex");for(var F,ve,M,_,yt,Ie,G={},ce,v,We,he;;){if(M=d[d.length-1],this.defaultActions[M]?_=this.defaultActions[M]:((F===null||typeof F>"u")&&(F=Ke()),_=J[M]&&J[M][F]),typeof _>"u"||!_.length||!_[0]){var Oe="";he=[];for(ce in J[M])this.terminals_[ce]&&ce>bt&&he.push("'"+this.terminals_[ce]+"'");T.showPosition?Oe="Parse error on line "+(oe+1)+`: +`+T.showPosition()+` +Expecting `+he.join(", ")+", got '"+(this.terminals_[F]||F)+"'":Oe="Parse error on line "+(oe+1)+": Unexpected "+(F==Ye?"end of input":"'"+(this.terminals_[F]||F)+"'"),this.parseError(Oe,{text:T.match,token:this.terminals_[F]||F,line:T.yylineno,loc:xe,expected:he})}if(_[0]instanceof Array&&_.length>1)throw new Error("Parse Error: multiple actions possible at state: "+M+", token: "+F);switch(_[0]){case 1:d.push(F),b.push(T.yytext),t.push(T.yylloc),d.push(_[1]),F=null,ve?(F=ve,ve=null):(Ue=T.yyleng,s=T.yytext,oe=T.yylineno,xe=T.yylloc,ze>0&&ze--);break;case 2:if(v=this.productions_[_[1]][1],G.$=b[b.length-v],G._$={first_line:t[t.length-(v||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(v||1)].first_column,last_column:t[t.length-1].last_column},kt&&(G._$.range=[t[t.length-(v||1)].range[0],t[t.length-1].range[1]]),Ie=this.performAction.apply(G,[s,Ue,oe,w.yy,_[1],b,t].concat(ft)),typeof Ie<"u")return Ie;v&&(d=d.slice(0,-1*v*2),b=b.slice(0,-1*v),t=t.slice(0,-1*v)),d.push(this.productions_[_[1]][0]),b.push(G.$),t.push(G._$),We=J[d[d.length-2]][d[d.length-1]],d.push(We);break;case 3:return!0}}return!0},"parse")},At=(function(){var I={EOF:1,parseError:p(function(o,d){if(this.yy.parser)this.yy.parser.parseError(o,d);else throw new Error(o)},"parseError"),setInput:p(function(l,o){return this.yy=o||this.yy||{},this._input=l,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:p(function(){var l=this._input[0];this.yytext+=l,this.yyleng++,this.offset++,this.match+=l,this.matched+=l;var o=l.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),l},"input"),unput:p(function(l){var o=l.length,d=l.split(/(?:\r\n?|\n)/g);this._input=l+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1&&(this.yylineno-=d.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===r.length?this.yylloc.first_column:0)+r[r.length-d.length].length-d[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},"unput"),more:p(function(){return this._more=!0,this},"more"),reject:p(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:p(function(l){this.unput(this.match.slice(l))},"less"),pastInput:p(function(){var l=this.matched.substr(0,this.matched.length-this.match.length);return(l.length>20?"...":"")+l.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:p(function(){var l=this.match;return l.length<20&&(l+=this._input.substr(0,20-l.length)),(l.substr(0,20)+(l.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:p(function(){var l=this.pastInput(),o=new Array(l.length+1).join("-");return l+this.upcomingInput()+` +`+o+"^"},"showPosition"),test_match:p(function(l,o){var d,r,b;if(this.options.backtrack_lexer&&(b={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(b.yylloc.range=this.yylloc.range.slice(0))),r=l[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+l[0].length},this.yytext+=l[0],this.match+=l[0],this.matches=l,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(l[0].length),this.matched+=l[0],d=this.performAction.call(this,this.yy,this,o,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),d)return d;if(this._backtrack){for(var t in b)this[t]=b[t];return!1}return!1},"test_match"),next:p(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var l,o,d,r;this._more||(this.yytext="",this.match="");for(var b=this._currentRules(),t=0;to[0].length)){if(o=d,r=t,this.options.backtrack_lexer){if(l=this.test_match(d,b[t]),l!==!1)return l;if(this._backtrack){o=!1;continue}else return!1}else if(!this.options.flex)break}return o?(l=this.test_match(o,b[r]),l!==!1?l:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:p(function(){var o=this.next();return o||this.lex()},"lex"),begin:p(function(o){this.conditionStack.push(o)},"begin"),popState:p(function(){var o=this.conditionStack.length-1;return o>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:p(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:p(function(o){return o=this.conditionStack.length-1-Math.abs(o||0),o>=0?this.conditionStack[o]:"INITIAL"},"topState"),pushState:p(function(o){this.begin(o)},"pushState"),stateStackSize:p(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:p(function(o,d,r,b){var t=b;switch(r){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:return this.popState(),41;break;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),48;break;case 39:return this.popState(),8;break;case 40:break;case 41:return this.popState(),this.popState(),41;break;case 42:return this.begin("class-body"),39;break;case 43:return this.popState(),41;break;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 83;case 50:return 75;case 51:return 76;case 52:return 78;case 53:return 54;case 54:return 56;case 55:return 46;case 56:return 47;case 57:return 81;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 77;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 69;case 69:return 69;case 70:return 71;case 71:return 71;case 72:return 70;case 73:return 68;case 74:return 72;case 75:return 73;case 76:return 74;case 77:return 22;case 78:return 44;case 79:return 100;case 80:return 18;case 81:return"PLUS";case 82:return 87;case 83:return 61;case 84:return 89;case 85:return 89;case 86:return 90;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 60;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 86;case 94:return 102;case 95:return 50;case 96:return 50;case 97:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97],inclusive:!0}}};return I})();Ne.lexer=At;function le(){this.yy={}}return p(le,"Parser"),le.prototype=Ne,Ne.Parser=le,new le})();we.parser=we;var vt=we,ht=["#","+","~","-",""],dt=class{static{p(this,"ClassMember")}constructor(e,i){this.memberType=i,this.visibility="",this.classifier="",this.text="";let n=qe(e,D());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+V(this.id);this.memberType==="method"&&(e+=`(${V(this.parameters.trim())})`,this.returnType&&(e+=" : "+V(this.returnType))),e=e.trim();let i=this.parseClassifier();return{displayText:e,cssStyle:i}}parseMember(e){let i="";if(this.memberType==="method"){let a=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(e);if(a){let h=a[1]?a[1].trim():"";if(ht.includes(h)&&(this.visibility=h),this.id=a[2],this.parameters=a[3]?a[3].trim():"",i=a[4]?a[4].trim():"",this.returnType=a[5]?a[5].trim():"",i===""){let A=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(A)&&(i=A,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let u=e.length,a=e.substring(0,1),h=e.substring(u-1);ht.includes(a)&&(this.visibility=a),/[$*]/.exec(h)&&(i=h),this.id=e.substring(this.visibility===""?0:1,i===""?u:u-1)}this.classifier=i,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let n=`${this.visibility?"\\"+this.visibility:""}${V(this.id)}${this.memberType==="method"?`(${V(this.parameters)})${this.returnType?" : "+V(this.returnType):""}`:""}`;this.text=n.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},Ae="classId-",pt=0,P=p(e=>L.sanitizeText(e,D()),"sanitizeText"),wt=class{constructor(){this.relations=[],this.classes=new Map,this.styleClasses=new Map,this.notes=new Map,this.interfaces=[],this.namespaces=new Map,this.namespaceCounter=0,this.diagramId="",this.functions=[],this.lineType={LINE:0,DOTTED_LINE:1},this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},this.setupToolTips=p(e=>{let i=ut();Z(e).select("svg").selectAll("g").filter(function(){return Z(this).attr("title")!==null}).on("mouseover",a=>{let h=Z(a.currentTarget),A=h.attr("title");if(!A)return;let f=a.currentTarget.getBoundingClientRect();i.transition().duration(200).style("opacity",".9"),i.html(He.sanitize(A)).style("left",`${window.scrollX+f.left+f.width/2}px`).style("top",`${window.scrollY+f.bottom+4}px`),h.classed("hover",!0)}).on("mouseout",a=>{i.transition().duration(500).style("opacity",0),Z(a.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=Ze,this.getAccTitle=$e,this.setAccDescription=et,this.getAccDescription=tt,this.setDiagramTitle=st,this.getDiagramTitle=it,this.getConfig=p(()=>D().class,"getConfig"),this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{p(this,"ClassDB")}splitClassNameAndType(e){let i=L.sanitizeText(e,D()),n="",u=i;if(i.indexOf("~")>0){let a=i.split("~");u=P(a[0]),n=P(a[1])}return{className:u,type:n}}setClassLabel(e,i){let n=L.sanitizeText(e,D());i&&(i=P(i));let{className:u}=this.splitClassNameAndType(n);this.classes.get(u).label=i,this.classes.get(u).text=`${i}${this.classes.get(u).type?`<${this.classes.get(u).type}>`:""}`}addClass(e){let i=L.sanitizeText(e,D()),{className:n,type:u}=this.splitClassNameAndType(i);if(this.classes.has(n))return;let a=L.sanitizeText(n,D());this.classes.set(a,{id:a,type:u,label:a,text:`${a}${u?`<${u}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:Ae+a+"-"+pt}),pt++}addInterface(e,i){let n={id:`interface${this.interfaces.length}`,label:e,classId:i};this.interfaces.push(n)}setDiagramId(e){this.diagramId=e}lookUpDomId(e){let i=L.sanitizeText(e,D());if(this.classes.has(i)){let n=this.classes.get(i).domId;return this.diagramId?`${this.diagramId}-${n}`:n}throw new Error("Class not found: "+i)}clear(){this.relations=[],this.classes=new Map,this.notes=new Map,this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.diagramId="",this.direction="TB",Je()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(e){let i=typeof e=="number"?`note${e}`:e;return this.notes.get(i)}getNotes(){return this.notes}addRelation(e){de.debug("Adding relation: "+JSON.stringify(e));let i=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];e.relation.type1===this.relationType.LOLLIPOP&&!i.includes(e.relation.type2)?(this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`):e.relation.type2===this.relationType.LOLLIPOP&&!i.includes(e.relation.type1)?(this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`):(this.addClass(e.id1),this.addClass(e.id2)),e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=L.sanitizeText(e.relationTitle1.trim(),D()),e.relationTitle2=L.sanitizeText(e.relationTitle2.trim(),D()),this.relations.push(e)}addAnnotation(e,i){let n=this.splitClassNameAndType(e).className;this.classes.get(n).annotations.push(i)}addMember(e,i){this.addClass(e);let n=this.splitClassNameAndType(e).className,u=this.classes.get(n);if(typeof i=="string"){let a=i.trim();a.startsWith("<<")&&a.endsWith(">>")?u.annotations.push(P(a.substring(2,a.length-2))):a.indexOf(")")>0?u.methods.push(new dt(a,"method")):a&&u.members.push(new dt(a,"attribute"))}}addMembers(e,i){Array.isArray(i)&&(i.reverse(),i.forEach(n=>this.addMember(e,n)))}addNote(e,i){let n=this.notes.size,u={id:`note${n}`,class:i,text:e,index:n};return this.notes.set(u.id,u),u.id}cleanupLabel(e){return e.startsWith(":")&&(e=e.substring(1)),P(e.trim())}setCssClass(e,i){e.split(",").forEach(n=>{let u=n;/\d/.exec(n[0])&&(u=Ae+u);let a=this.classes.get(u);a&&(a.cssClasses+=" "+i)})}defineClass(e,i){for(let n of e){let u=this.styleClasses.get(n);u===void 0&&(u={id:n,styles:[],textStyles:[]},this.styleClasses.set(n,u)),i&&i.forEach(a=>{if(/color/.exec(a)){let h=a.replace("fill","bgFill");u.textStyles.push(h)}u.styles.push(a)}),this.classes.forEach(a=>{a.cssClasses.includes(n)&&a.styles.push(...i.flatMap(h=>h.split(",")))})}}setTooltip(e,i){e.split(",").forEach(n=>{i!==void 0&&(this.classes.get(n).tooltip=P(i))})}getTooltip(e,i){return i&&this.namespaces.has(i)?this.namespaces.get(i).classes.get(e).tooltip:this.classes.get(e).tooltip}setLink(e,i,n){let u=D();e.split(",").forEach(a=>{let h=a;/\d/.exec(a[0])&&(h=Ae+h);let A=this.classes.get(h);A&&(A.link=pe.formatUrl(i,u),u.securityLevel==="sandbox"?A.linkTarget="_top":typeof n=="string"?A.linkTarget=P(n):A.linkTarget="_blank")}),this.setCssClass(e,"clickable")}setClickEvent(e,i,n){e.split(",").forEach(u=>{this.setClickFunc(u,i,n),this.classes.get(u).haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,i,n){let u=L.sanitizeText(e,D());if(D().securityLevel!=="loose"||i===void 0)return;let h=u;if(this.classes.has(h)){let A=[];if(typeof n=="string"){A=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let f=0;f{let f=this.lookUpDomId(h),y=document.querySelector(`[id="${f}"]`);y!==null&&y.addEventListener("click",()=>{pe.runFunc(i,...A)},!1)})}}bindFunctions(e){this.functions.forEach(i=>{i(e)})}escapeHtml(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}getDirection(){return this.direction}setDirection(e){this.direction=e}addNamespace(e){this.namespaces.has(e)||(this.namespaces.set(e,{id:e,classes:new Map,notes:new Map,children:new Map,domId:Ae+e+"-"+this.namespaceCounter}),this.namespaceCounter++)}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,i,n){if(this.namespaces.has(e)){for(let u of i){let{className:a}=this.splitClassNameAndType(u),h=this.getClass(a);h.parent=e,this.namespaces.get(e).classes.set(a,h)}for(let u of n){let a=this.getNote(u);a.parent=e,this.namespaces.get(e).notes.set(u,a)}}}setCssStyle(e,i){let n=this.classes.get(e);if(!(!i||!n))for(let u of i)u.includes(",")?n.styles.push(...u.split(",")):n.styles.push(u)}getArrowMarker(e){let i;switch(e){case 0:i="aggregation";break;case 1:i="extension";break;case 2:i="composition";break;case 3:i="dependency";break;case 4:i="lollipop";break;default:i="none"}return i}getData(){let e=[],i=[],n=D();for(let a of this.namespaces.values()){let h={id:a.id,label:a.id,isGroup:!0,padding:n.class.padding??16,shape:"rect",cssStyles:[],look:n.look};e.push(h)}for(let a of this.classes.values()){let h=je(Qe({},a),{type:void 0,isGroup:!1,parentId:a.parent,look:n.look});e.push(h)}for(let a of this.notes.values()){let h={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:n.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${n.themeVariables.noteBkgColor}`,`stroke: ${n.themeVariables.noteBorderColor}`],look:n.look,parentId:a.parent,labelType:"markdown"};e.push(h);let A=this.classes.get(a.class)?.id;if(A){let f={id:`edgeNote${a.index}`,start:a.id,end:A,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:n.look};i.push(f)}}for(let a of this.interfaces){let h={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:n.look};e.push(h)}let u=0;for(let a of this.relations){u++;let h={id:at(a.id1,a.id2,{prefix:"id",counter:u}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:n.look,labelType:"markdown"};i.push(h)}return{nodes:e,edges:i,other:{},config:n,direction:this.getDirection()}}},mt=p(e=>`g.classGroup text { + fill: ${e.nodeBorder||e.classText}; + stroke: none; + font-family: ${e.fontFamily}; + font-size: 10px; + + .title { + font-weight: bolder; + } + +} + + .cluster-label text { + fill: ${e.titleColor}; + } + .cluster-label span { + color: ${e.titleColor}; + } + .cluster-label span p { + background-color: transparent; + } + + .cluster rect { + fill: ${e.clusterBkg}; + stroke: ${e.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${e.titleColor}; + } + + .cluster span { + color: ${e.titleColor}; + } + +.nodeLabel, .edgeLabel { + color: ${e.classText}; +} + +.noteLabel .nodeLabel, .noteLabel .edgeLabel { + color: ${e.noteTextColor}; +} +.edgeLabel .label rect { + fill: ${e.mainBkg}; +} +.label text { + fill: ${e.classText}; +} + +.labelBkg { + background: ${e.mainBkg}; +} +.edgeLabel .label span { + background: ${e.mainBkg}; +} + +.classTitle { + font-weight: bolder; +} +.node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; + stroke-width: ${e.strokeWidth}; + } + + +.divider { + stroke: ${e.nodeBorder}; + stroke-width: 1; +} + +g.clickable { + cursor: pointer; +} + +g.classGroup rect { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; +} + +g.classGroup line { + stroke: ${e.nodeBorder}; + stroke-width: 1; +} + +.classLabel .box { + stroke: none; + stroke-width: 0; + fill: ${e.mainBkg}; + opacity: 0.5; +} + +.classLabel .label { + fill: ${e.nodeBorder}; + font-size: 10px; +} + +.relation { + stroke: ${e.lineColor}; + stroke-width: ${e.strokeWidth}; + fill: none; +} + +.dashed-line{ + stroke-dasharray: 3; +} + +.dotted-line{ + stroke-dasharray: 1 2; +} + +[id$="-compositionStart"], .composition { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-compositionEnd"], .composition { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-dependencyStart"], .dependency { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-dependencyEnd"], .dependency { + fill: ${e.lineColor} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-extensionStart"], .extension { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-extensionEnd"], .extension { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-aggregationStart"], .aggregation { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-aggregationEnd"], .aggregation { + fill: transparent !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-lollipopStart"], .lollipop { + fill: ${e.mainBkg} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +[id$="-lollipopEnd"], .lollipop { + fill: ${e.mainBkg} !important; + stroke: ${e.lineColor} !important; + stroke-width: 1; +} + +.edgeTerminals { + font-size: 11px; + line-height: initial; +} + +.classTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; +} + +.edgeLabel[data-look="neo"] { + background-color: ${e.edgeLabelBackground}; + p { + background-color: ${e.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${e.edgeLabelBackground}; + fill: ${e.edgeLabelBackground}; + } + text-align: center; +} + ${lt()} +`,"getStyles"),Mt=mt,Ct=p((e,i="TB")=>{if(!e.doc)return i;let n=i;for(let u of e.doc)u.stmt==="dir"&&(n=u.value);return n},"getDir"),Et=p(function(e,i){return i.db.getClasses()},"getClasses"),Tt=p(function(e,i,n,u){return Xe(this,null,function*(){de.info("REF0:"),de.info("Drawing class diagram (v3)",i);let{securityLevel:a,state:h,layout:A}=D();u.db.setDiagramId(i);let f=u.db.getData(),y=ot(i,a);f.type=u.type,f.layoutAlgorithm=nt(A),f.nodeSpacing=h?.nodeSpacing||50,f.rankSpacing=h?.rankSpacing||50,f.markers=["aggregation","extension","composition","dependency","lollipop"],f.diagramId=i,yield rt(f,y);let x=8;pe.insertTitle(y,"classDiagramTitleText",h?.titleTopMargin??25,u.db.getDiagramTitle()),ct(y,x,"classDiagram",h?.useMaxWidth??!0)})},"draw"),Vt={getClasses:Et,draw:Tt,getDir:Ct};export{vt as a,wt as b,Mt as c,Vt as d}; diff --git a/src/google/adk/cli/browser/chunk-MP6JNF5U.js b/src/google/adk/cli/browser/chunk-MP6JNF5U.js new file mode 100644 index 0000000000..487f78b7cc --- /dev/null +++ b/src/google/adk/cli/browser/chunk-MP6JNF5U.js @@ -0,0 +1 @@ +import{a as e,b as r}from"./chunk-DZQRYCWR.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{e as PieModule,r as createPieServices}; diff --git a/src/google/adk/cli/browser/chunk-N5S45BK4.js b/src/google/adk/cli/browser/chunk-N5S45BK4.js deleted file mode 100644 index 4f22e6ea24..0000000000 --- a/src/google/adk/cli/browser/chunk-N5S45BK4.js +++ /dev/null @@ -1 +0,0 @@ -import{a as e,b as i,c as a,d as o}from"./chunk-LI24J5PW.js";import"./chunk-APNCZOFE.js";import"./chunk-ST54LLJ3.js";import"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import"./chunk-QFMJV7VH.js";import{g as r}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";var v={parser:e,get db(){return new a(2)},renderer:i,styles:o,init:r(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")};export{v as diagram}; diff --git a/src/google/adk/cli/browser/chunk-NALL4A3P.js b/src/google/adk/cli/browser/chunk-NALL4A3P.js deleted file mode 100644 index 8970e67502..0000000000 --- a/src/google/adk/cli/browser/chunk-NALL4A3P.js +++ /dev/null @@ -1,161 +0,0 @@ -import{A as q,B as mt,C as Ce,D as Pe,E as hu,G as Z,I as tr,J as $t,M as qh,O as Gt,S as Ue,T as In,V as Mo,Z as Hs,_ as zh,a as et,b as Pr,c as dt,d as Ve,e as Ne,h as Or,k as Ks,l as wn,m as gr,n as Ke,o as tn,p as D,r as At,s as ct,t as Lr,u as pt,v as I,w as ht,z as Uh}from"./chunk-ASJUXEUE.js";import{e as Ze,f as Fh,g as Gh,h as mr}from"./chunk-EGBSMT36.js";import{a as ge,b as er,d as nv,e as X,f as en,g as ae,h as du,i as pu,j as P}from"./chunk-RMXJBC7V.js";var il={};en(il,{AnnotatedTextEdit:()=>Xr,ChangeAnnotation:()=>ri,ChangeAnnotationIdentifier:()=>lt,CodeAction:()=>ad,CodeActionContext:()=>sd,CodeActionKind:()=>Gg,CodeActionTriggerKind:()=>tl,CodeDescription:()=>jf,CodeLens:()=>od,Color:()=>Xc,ColorInformation:()=>Uf,ColorPresentation:()=>qf,Command:()=>ni,CompletionItem:()=>Xf,CompletionItemKind:()=>bg,CompletionItemLabelDetails:()=>Yf,CompletionItemTag:()=>Og,CompletionList:()=>Jf,CreateFile:()=>rs,DeleteFile:()=>is,Diagnostic:()=>Ma,DiagnosticRelatedInformation:()=>Jc,DiagnosticSeverity:()=>Ig,DiagnosticTag:()=>_g,DocumentHighlight:()=>td,DocumentHighlightKind:()=>Dg,DocumentLink:()=>ld,DocumentSymbol:()=>id,DocumentUri:()=>Mf,EOL:()=>IA,FoldingRange:()=>zf,FoldingRangeKind:()=>wg,FormattingOptions:()=>cd,Hover:()=>Qf,InlayHint:()=>gd,InlayHintKind:()=>rl,InlayHintLabelPart:()=>nl,InlineCompletionContext:()=>vd,InlineCompletionItem:()=>Td,InlineCompletionList:()=>Rd,InlineCompletionTriggerKind:()=>zg,InlineValueContext:()=>md,InlineValueEvaluatableExpression:()=>hd,InlineValueText:()=>dd,InlineValueVariableLookup:()=>pd,InsertReplaceEdit:()=>Hf,InsertTextFormat:()=>Pg,InsertTextMode:()=>Lg,Location:()=>Da,LocationLink:()=>Gf,MarkedString:()=>Ua,MarkupContent:()=>ss,MarkupKind:()=>el,OptionalVersionedTextDocumentIdentifier:()=>Ga,ParameterInformation:()=>Zf,Position:()=>ce,Range:()=>ie,RenameFile:()=>ns,SelectedCompletionInfo:()=>xd,SelectionRange:()=>ud,SemanticTokenModifiers:()=>qg,SemanticTokenTypes:()=>Ug,SemanticTokens:()=>fd,SignatureInformation:()=>ed,StringValue:()=>yd,SymbolInformation:()=>rd,SymbolKind:()=>Mg,SymbolTag:()=>Fg,TextDocument:()=>Ad,TextDocumentEdit:()=>Fa,TextDocumentIdentifier:()=>Wf,TextDocumentItem:()=>Kf,TextEdit:()=>Er,URI:()=>Yc,VersionedTextDocumentIdentifier:()=>Vf,WorkspaceChange:()=>Bf,WorkspaceEdit:()=>Qc,WorkspaceFolder:()=>Ed,WorkspaceSymbol:()=>nd,integer:()=>Ff,uinteger:()=>La});var Mf,Yc,Ff,La,ce,ie,Da,Gf,Xc,Uf,qf,wg,zf,Jc,Ig,_g,jf,Ma,ni,Er,ri,lt,Xr,Fa,rs,ns,is,Qc,ts,Zc,Bf,Wf,Vf,Ga,Kf,el,ss,bg,Pg,Og,Hf,Lg,Yf,Xf,Jf,Ua,Qf,Zf,ed,Dg,td,Mg,Fg,rd,nd,id,Gg,tl,sd,ad,od,cd,ld,ud,Ug,qg,fd,dd,pd,hd,md,rl,nl,gd,yd,Td,Rd,zg,xd,vd,Ed,IA,Ad,$d,m,as=nv(()=>{"use strict";(function(t){function e(r){return typeof r=="string"}t.is=e})(Mf||(Mf={}));(function(t){function e(r){return typeof r=="string"}t.is=e})(Yc||(Yc={}));(function(t){t.MIN_VALUE=-2147483648,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(Ff||(Ff={}));(function(t){t.MIN_VALUE=0,t.MAX_VALUE=2147483647;function e(r){return typeof r=="number"&&t.MIN_VALUE<=r&&r<=t.MAX_VALUE}t.is=e})(La||(La={}));(function(t){function e(n,i){return n===Number.MAX_VALUE&&(n=La.MAX_VALUE),i===Number.MAX_VALUE&&(i=La.MAX_VALUE),{line:n,character:i}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&m.uinteger(i.line)&&m.uinteger(i.character)}t.is=r})(ce||(ce={}));(function(t){function e(n,i,s,a){if(m.uinteger(n)&&m.uinteger(i)&&m.uinteger(s)&&m.uinteger(a))return{start:ce.create(n,i),end:ce.create(s,a)};if(ce.is(n)&&ce.is(i))return{start:n,end:i};throw new Error(`Range#create called with invalid arguments[${n}, ${i}, ${s}, ${a}]`)}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&ce.is(i.start)&&ce.is(i.end)}t.is=r})(ie||(ie={}));(function(t){function e(n,i){return{uri:n,range:i}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&ie.is(i.range)&&(m.string(i.uri)||m.undefined(i.uri))}t.is=r})(Da||(Da={}));(function(t){function e(n,i,s,a){return{targetUri:n,targetRange:i,targetSelectionRange:s,originSelectionRange:a}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&ie.is(i.targetRange)&&m.string(i.targetUri)&&ie.is(i.targetSelectionRange)&&(ie.is(i.originSelectionRange)||m.undefined(i.originSelectionRange))}t.is=r})(Gf||(Gf={}));(function(t){function e(n,i,s,a){return{red:n,green:i,blue:s,alpha:a}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&m.numberRange(i.red,0,1)&&m.numberRange(i.green,0,1)&&m.numberRange(i.blue,0,1)&&m.numberRange(i.alpha,0,1)}t.is=r})(Xc||(Xc={}));(function(t){function e(n,i){return{range:n,color:i}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&ie.is(i.range)&&Xc.is(i.color)}t.is=r})(Uf||(Uf={}));(function(t){function e(n,i,s){return{label:n,textEdit:i,additionalTextEdits:s}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&m.string(i.label)&&(m.undefined(i.textEdit)||Er.is(i))&&(m.undefined(i.additionalTextEdits)||m.typedArray(i.additionalTextEdits,Er.is))}t.is=r})(qf||(qf={}));wg=(function(t){return t.Comment="comment",t.Imports="imports",t.Region="region",t})(wg||{});(function(t){function e(n,i,s,a,o,c){let l={startLine:n,endLine:i};return m.defined(s)&&(l.startCharacter=s),m.defined(a)&&(l.endCharacter=a),m.defined(o)&&(l.kind=o),m.defined(c)&&(l.collapsedText=c),l}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&m.uinteger(i.startLine)&&m.uinteger(i.startLine)&&(m.undefined(i.startCharacter)||m.uinteger(i.startCharacter))&&(m.undefined(i.endCharacter)||m.uinteger(i.endCharacter))&&(m.undefined(i.kind)||m.string(i.kind))}t.is=r})(zf||(zf={}));(function(t){function e(n,i){return{location:n,message:i}}t.create=e;function r(n){let i=n;return m.defined(i)&&Da.is(i.location)&&m.string(i.message)}t.is=r})(Jc||(Jc={}));Ig=(function(t){return t.Error=1,t.Warning=2,t.Information=3,t.Hint=4,t})(Ig||{}),_g=(function(t){return t.Unnecessary=1,t.Deprecated=2,t})(_g||{});(function(t){function e(r){let n=r;return m.objectLiteral(n)&&m.string(n.href)}t.is=e})(jf||(jf={}));(function(t){function e(n,i,s,a,o,c){let l={range:n,message:i};return m.defined(s)&&(l.severity=s),m.defined(a)&&(l.code=a),m.defined(o)&&(l.source=o),m.defined(c)&&(l.relatedInformation=c),l}t.create=e;function r(n){var i;let s=n;return m.defined(s)&&ie.is(s.range)&&m.string(s.message)&&(m.number(s.severity)||m.undefined(s.severity))&&(m.integer(s.code)||m.string(s.code)||m.undefined(s.code))&&(m.undefined(s.codeDescription)||m.string((i=s.codeDescription)===null||i===void 0?void 0:i.href))&&(m.string(s.source)||m.undefined(s.source))&&(m.undefined(s.relatedInformation)||m.typedArray(s.relatedInformation,Jc.is))}t.is=r})(Ma||(Ma={}));(function(t){function e(n,i,...s){let a={title:n,command:i};return m.defined(s)&&s.length>0&&(a.arguments=s),a}t.create=e;function r(n){let i=n;return m.defined(i)&&m.string(i.title)&&m.string(i.command)}t.is=r})(ni||(ni={}));(function(t){function e(s,a){return{range:s,newText:a}}t.replace=e;function r(s,a){return{range:{start:s,end:s},newText:a}}t.insert=r;function n(s){return{range:s,newText:""}}t.del=n;function i(s){let a=s;return m.objectLiteral(a)&&m.string(a.newText)&&ie.is(a.range)}t.is=i})(Er||(Er={}));(function(t){function e(n,i,s){let a={label:n};return i!==void 0&&(a.needsConfirmation=i),s!==void 0&&(a.description=s),a}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&m.string(i.label)&&(m.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(m.string(i.description)||i.description===void 0)}t.is=r})(ri||(ri={}));(function(t){function e(r){let n=r;return m.string(n)}t.is=e})(lt||(lt={}));(function(t){function e(s,a,o){return{range:s,newText:a,annotationId:o}}t.replace=e;function r(s,a,o){return{range:{start:s,end:s},newText:a,annotationId:o}}t.insert=r;function n(s,a){return{range:s,newText:"",annotationId:a}}t.del=n;function i(s){let a=s;return Er.is(a)&&(ri.is(a.annotationId)||lt.is(a.annotationId))}t.is=i})(Xr||(Xr={}));(function(t){function e(n,i){return{textDocument:n,edits:i}}t.create=e;function r(n){let i=n;return m.defined(i)&&Ga.is(i.textDocument)&&Array.isArray(i.edits)}t.is=r})(Fa||(Fa={}));(function(t){function e(n,i,s){let a={kind:"create",uri:n};return i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function r(n){let i=n;return i&&i.kind==="create"&&m.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||m.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||m.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||lt.is(i.annotationId))}t.is=r})(rs||(rs={}));(function(t){function e(n,i,s,a){let o={kind:"rename",oldUri:n,newUri:i};return s!==void 0&&(s.overwrite!==void 0||s.ignoreIfExists!==void 0)&&(o.options=s),a!==void 0&&(o.annotationId=a),o}t.create=e;function r(n){let i=n;return i&&i.kind==="rename"&&m.string(i.oldUri)&&m.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||m.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||m.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||lt.is(i.annotationId))}t.is=r})(ns||(ns={}));(function(t){function e(n,i,s){let a={kind:"delete",uri:n};return i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0)&&(a.options=i),s!==void 0&&(a.annotationId=s),a}t.create=e;function r(n){let i=n;return i&&i.kind==="delete"&&m.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||m.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||m.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||lt.is(i.annotationId))}t.is=r})(is||(is={}));(function(t){function e(r){let n=r;return n&&(n.changes!==void 0||n.documentChanges!==void 0)&&(n.documentChanges===void 0||n.documentChanges.every(i=>m.string(i.kind)?rs.is(i)||ns.is(i)||is.is(i):Fa.is(i)))}t.is=e})(Qc||(Qc={}));ts=class{constructor(e,r){this.edits=e,this.changeAnnotations=r}insert(e,r,n){let i,s;if(n===void 0?i=Er.insert(e,r):lt.is(n)?(s=n,i=Xr.insert(e,r,n)):(this.assertChangeAnnotations(this.changeAnnotations),s=this.changeAnnotations.manage(n),i=Xr.insert(e,r,s)),this.edits.push(i),s!==void 0)return s}replace(e,r,n){let i,s;if(n===void 0?i=Er.replace(e,r):lt.is(n)?(s=n,i=Xr.replace(e,r,n)):(this.assertChangeAnnotations(this.changeAnnotations),s=this.changeAnnotations.manage(n),i=Xr.replace(e,r,s)),this.edits.push(i),s!==void 0)return s}delete(e,r){let n,i;if(r===void 0?n=Er.del(e):lt.is(r)?(i=r,n=Xr.del(e,r)):(this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(r),n=Xr.del(e,i)),this.edits.push(n),i!==void 0)return i}add(e){this.edits.push(e)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(e){if(e===void 0)throw new Error("Text edit change is not configured to manage change annotations.")}},Zc=class{constructor(e){this._annotations=e===void 0?Object.create(null):e,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(e,r){let n;if(lt.is(e)?n=e:(n=this.nextId(),r=e),this._annotations[n]!==void 0)throw new Error(`Id ${n} is already in use.`);if(r===void 0)throw new Error(`No annotation provided for id ${n}`);return this._annotations[n]=r,this._size++,n}nextId(){return this._counter++,this._counter.toString()}},Bf=class{constructor(e){this._textEditChanges=Object.create(null),e!==void 0?(this._workspaceEdit=e,e.documentChanges?(this._changeAnnotations=new Zc(e.changeAnnotations),e.changeAnnotations=this._changeAnnotations.all(),e.documentChanges.forEach(r=>{if(Fa.is(r)){let n=new ts(r.edits,this._changeAnnotations);this._textEditChanges[r.textDocument.uri]=n}})):e.changes&&Object.keys(e.changes).forEach(r=>{let n=new ts(e.changes[r]);this._textEditChanges[r]=n})):this._workspaceEdit={}}get edit(){return this.initDocumentChanges(),this._changeAnnotations!==void 0&&(this._changeAnnotations.size===0?this._workspaceEdit.changeAnnotations=void 0:this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()),this._workspaceEdit}getTextEditChange(e){if(Ga.is(e)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let r={uri:e.uri,version:e.version},n=this._textEditChanges[r.uri];if(!n){let i=[],s={textDocument:r,edits:i};this._workspaceEdit.documentChanges.push(s),n=new ts(i,this._changeAnnotations),this._textEditChanges[r.uri]=n}return n}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw new Error("Workspace edit is not configured for normal text edit changes.");let r=this._textEditChanges[e];if(!r){let n=[];this._workspaceEdit.changes[e]=n,r=new ts(n),this._textEditChanges[e]=r}return r}}initDocumentChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._changeAnnotations=new Zc,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all())}initChanges(){this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0&&(this._workspaceEdit.changes=Object.create(null))}createFile(e,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;ri.is(r)||lt.is(r)?i=r:n=r;let s,a;if(i===void 0?s=rs.create(e,n):(a=lt.is(i)?i:this._changeAnnotations.manage(i),s=rs.create(e,n,a)),this._workspaceEdit.documentChanges.push(s),a!==void 0)return a}renameFile(e,r,n,i){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let s;ri.is(n)||lt.is(n)?s=n:i=n;let a,o;if(s===void 0?a=ns.create(e,r,i):(o=lt.is(s)?s:this._changeAnnotations.manage(s),a=ns.create(e,r,i,o)),this._workspaceEdit.documentChanges.push(a),o!==void 0)return o}deleteFile(e,r,n){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw new Error("Workspace edit is not configured for document changes.");let i;ri.is(r)||lt.is(r)?i=r:n=r;let s,a;if(i===void 0?s=is.create(e,n):(a=lt.is(i)?i:this._changeAnnotations.manage(i),s=is.create(e,n,a)),this._workspaceEdit.documentChanges.push(s),a!==void 0)return a}};(function(t){function e(n){return{uri:n}}t.create=e;function r(n){let i=n;return m.defined(i)&&m.string(i.uri)}t.is=r})(Wf||(Wf={}));(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return m.defined(i)&&m.string(i.uri)&&m.integer(i.version)}t.is=r})(Vf||(Vf={}));(function(t){function e(n,i){return{uri:n,version:i}}t.create=e;function r(n){let i=n;return m.defined(i)&&m.string(i.uri)&&(i.version===null||m.integer(i.version))}t.is=r})(Ga||(Ga={}));(function(t){function e(n,i,s,a){return{uri:n,languageId:i,version:s,text:a}}t.create=e;function r(n){let i=n;return m.defined(i)&&m.string(i.uri)&&m.string(i.languageId)&&m.integer(i.version)&&m.string(i.text)}t.is=r})(Kf||(Kf={}));(function(t){t.PlainText="plaintext",t.Markdown="markdown";function e(r){let n=r;return n===t.PlainText||n===t.Markdown}t.is=e})(el||(el={}));(function(t){function e(r){let n=r;return m.objectLiteral(r)&&el.is(n.kind)&&m.string(n.value)}t.is=e})(ss||(ss={}));bg=(function(t){return t.Text=1,t.Method=2,t.Function=3,t.Constructor=4,t.Field=5,t.Variable=6,t.Class=7,t.Interface=8,t.Module=9,t.Property=10,t.Unit=11,t.Value=12,t.Enum=13,t.Keyword=14,t.Snippet=15,t.Color=16,t.File=17,t.Reference=18,t.Folder=19,t.EnumMember=20,t.Constant=21,t.Struct=22,t.Event=23,t.Operator=24,t.TypeParameter=25,t})(bg||{}),Pg=(function(t){return t.PlainText=1,t.Snippet=2,t})(Pg||{}),Og=(function(t){return t.Deprecated=1,t})(Og||{});(function(t){function e(n,i,s){return{newText:n,insert:i,replace:s}}t.create=e;function r(n){let i=n;return i&&m.string(i.newText)&&ie.is(i.insert)&&ie.is(i.replace)}t.is=r})(Hf||(Hf={}));Lg=(function(t){return t.asIs=1,t.adjustIndentation=2,t})(Lg||{});(function(t){function e(r){let n=r;return n&&(m.string(n.detail)||n.detail===void 0)&&(m.string(n.description)||n.description===void 0)}t.is=e})(Yf||(Yf={}));(function(t){function e(r){return{label:r}}t.create=e})(Xf||(Xf={}));(function(t){function e(r,n){return{items:r||[],isIncomplete:!!n}}t.create=e})(Jf||(Jf={}));(function(t){function e(n){return n.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}t.fromPlainText=e;function r(n){let i=n;return m.string(i)||m.objectLiteral(i)&&m.string(i.language)&&m.string(i.value)}t.is=r})(Ua||(Ua={}));(function(t){function e(r){let n=r;return!!n&&m.objectLiteral(n)&&(ss.is(n.contents)||Ua.is(n.contents)||m.typedArray(n.contents,Ua.is))&&(r.range===void 0||ie.is(r.range))}t.is=e})(Qf||(Qf={}));(function(t){function e(r,n){return n?{label:r,documentation:n}:{label:r}}t.create=e})(Zf||(Zf={}));(function(t){function e(r,n,...i){let s={label:r};return m.defined(n)&&(s.documentation=n),m.defined(i)?s.parameters=i:s.parameters=[],s}t.create=e})(ed||(ed={}));Dg=(function(t){return t.Text=1,t.Read=2,t.Write=3,t})(Dg||{});(function(t){function e(r,n){let i={range:r};return m.number(n)&&(i.kind=n),i}t.create=e})(td||(td={}));Mg=(function(t){return t.File=1,t.Module=2,t.Namespace=3,t.Package=4,t.Class=5,t.Method=6,t.Property=7,t.Field=8,t.Constructor=9,t.Enum=10,t.Interface=11,t.Function=12,t.Variable=13,t.Constant=14,t.String=15,t.Number=16,t.Boolean=17,t.Array=18,t.Object=19,t.Key=20,t.Null=21,t.EnumMember=22,t.Struct=23,t.Event=24,t.Operator=25,t.TypeParameter=26,t})(Mg||{}),Fg=(function(t){return t.Deprecated=1,t})(Fg||{});(function(t){function e(r,n,i,s,a){let o={name:r,kind:n,location:{uri:s,range:i}};return a&&(o.containerName=a),o}t.create=e})(rd||(rd={}));(function(t){function e(r,n,i,s){return s!==void 0?{name:r,kind:n,location:{uri:i,range:s}}:{name:r,kind:n,location:{uri:i}}}t.create=e})(nd||(nd={}));(function(t){function e(n,i,s,a,o,c){let l={name:n,detail:i,kind:s,range:a,selectionRange:o};return c!==void 0&&(l.children=c),l}t.create=e;function r(n){let i=n;return i&&m.string(i.name)&&m.number(i.kind)&&ie.is(i.range)&&ie.is(i.selectionRange)&&(i.detail===void 0||m.string(i.detail))&&(i.deprecated===void 0||m.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}t.is=r})(id||(id={}));Gg=(function(t){return t.Empty="",t.QuickFix="quickfix",t.Refactor="refactor",t.RefactorExtract="refactor.extract",t.RefactorInline="refactor.inline",t.RefactorRewrite="refactor.rewrite",t.Source="source",t.SourceOrganizeImports="source.organizeImports",t.SourceFixAll="source.fixAll",t})(Gg||{}),tl=(function(t){return t.Invoked=1,t.Automatic=2,t})(tl||{});(function(t){function e(n,i,s){let a={diagnostics:n};return i!=null&&(a.only=i),s!=null&&(a.triggerKind=s),a}t.create=e;function r(n){let i=n;return m.defined(i)&&m.typedArray(i.diagnostics,Ma.is)&&(i.only===void 0||m.typedArray(i.only,m.string))&&(i.triggerKind===void 0||i.triggerKind===tl.Invoked||i.triggerKind===tl.Automatic)}t.is=r})(sd||(sd={}));(function(t){function e(n,i,s){let a={title:n},o=!0;return typeof i=="string"?(o=!1,a.kind=i):ni.is(i)?a.command=i:a.edit=i,o&&s!==void 0&&(a.kind=s),a}t.create=e;function r(n){let i=n;return i&&m.string(i.title)&&(i.diagnostics===void 0||m.typedArray(i.diagnostics,Ma.is))&&(i.kind===void 0||m.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||ni.is(i.command))&&(i.isPreferred===void 0||m.boolean(i.isPreferred))&&(i.edit===void 0||Qc.is(i.edit))}t.is=r})(ad||(ad={}));(function(t){function e(n,i){let s={range:n};return m.defined(i)&&(s.data=i),s}t.create=e;function r(n){let i=n;return m.defined(i)&&ie.is(i.range)&&(m.undefined(i.command)||ni.is(i.command))}t.is=r})(od||(od={}));(function(t){function e(n,i){return{tabSize:n,insertSpaces:i}}t.create=e;function r(n){let i=n;return m.defined(i)&&m.uinteger(i.tabSize)&&m.boolean(i.insertSpaces)}t.is=r})(cd||(cd={}));(function(t){function e(n,i,s){return{range:n,target:i,data:s}}t.create=e;function r(n){let i=n;return m.defined(i)&&ie.is(i.range)&&(m.undefined(i.target)||m.string(i.target))}t.is=r})(ld||(ld={}));(function(t){function e(n,i){return{range:n,parent:i}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&ie.is(i.range)&&(i.parent===void 0||t.is(i.parent))}t.is=r})(ud||(ud={}));Ug=(function(t){return t.namespace="namespace",t.type="type",t.class="class",t.enum="enum",t.interface="interface",t.struct="struct",t.typeParameter="typeParameter",t.parameter="parameter",t.variable="variable",t.property="property",t.enumMember="enumMember",t.event="event",t.function="function",t.method="method",t.macro="macro",t.keyword="keyword",t.modifier="modifier",t.comment="comment",t.string="string",t.number="number",t.regexp="regexp",t.operator="operator",t.decorator="decorator",t})(Ug||{}),qg=(function(t){return t.declaration="declaration",t.definition="definition",t.readonly="readonly",t.static="static",t.deprecated="deprecated",t.abstract="abstract",t.async="async",t.modification="modification",t.documentation="documentation",t.defaultLibrary="defaultLibrary",t})(qg||{});(function(t){function e(r){let n=r;return m.objectLiteral(n)&&(n.resultId===void 0||typeof n.resultId=="string")&&Array.isArray(n.data)&&(n.data.length===0||typeof n.data[0]=="number")}t.is=e})(fd||(fd={}));(function(t){function e(n,i){return{range:n,text:i}}t.create=e;function r(n){let i=n;return i!=null&&ie.is(i.range)&&m.string(i.text)}t.is=r})(dd||(dd={}));(function(t){function e(n,i,s){return{range:n,variableName:i,caseSensitiveLookup:s}}t.create=e;function r(n){let i=n;return i!=null&&ie.is(i.range)&&m.boolean(i.caseSensitiveLookup)&&(m.string(i.variableName)||i.variableName===void 0)}t.is=r})(pd||(pd={}));(function(t){function e(n,i){return{range:n,expression:i}}t.create=e;function r(n){let i=n;return i!=null&&ie.is(i.range)&&(m.string(i.expression)||i.expression===void 0)}t.is=r})(hd||(hd={}));(function(t){function e(n,i){return{frameId:n,stoppedLocation:i}}t.create=e;function r(n){let i=n;return m.defined(i)&&ie.is(n.stoppedLocation)}t.is=r})(md||(md={}));(function(t){t.Type=1,t.Parameter=2;function e(r){return r===1||r===2}t.is=e})(rl||(rl={}));(function(t){function e(n){return{value:n}}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&(i.tooltip===void 0||m.string(i.tooltip)||ss.is(i.tooltip))&&(i.location===void 0||Da.is(i.location))&&(i.command===void 0||ni.is(i.command))}t.is=r})(nl||(nl={}));(function(t){function e(n,i,s){let a={position:n,label:i};return s!==void 0&&(a.kind=s),a}t.create=e;function r(n){let i=n;return m.objectLiteral(i)&&ce.is(i.position)&&(m.string(i.label)||m.typedArray(i.label,nl.is))&&(i.kind===void 0||rl.is(i.kind))&&i.textEdits===void 0||m.typedArray(i.textEdits,Er.is)&&(i.tooltip===void 0||m.string(i.tooltip)||ss.is(i.tooltip))&&(i.paddingLeft===void 0||m.boolean(i.paddingLeft))&&(i.paddingRight===void 0||m.boolean(i.paddingRight))}t.is=r})(gd||(gd={}));(function(t){function e(r){return{kind:"snippet",value:r}}t.createSnippet=e})(yd||(yd={}));(function(t){function e(r,n,i,s){return{insertText:r,filterText:n,range:i,command:s}}t.create=e})(Td||(Td={}));(function(t){function e(r){return{items:r}}t.create=e})(Rd||(Rd={}));zg=(function(t){return t.Invoked=0,t.Automatic=1,t})(zg||{});(function(t){function e(r,n){return{range:r,text:n}}t.create=e})(xd||(xd={}));(function(t){function e(r,n){return{triggerKind:r,selectedCompletionInfo:n}}t.create=e})(vd||(vd={}));(function(t){function e(r){let n=r;return m.objectLiteral(n)&&Yc.is(n.uri)&&m.string(n.name)}t.is=e})(Ed||(Ed={}));IA=[` -`,`\r -`,"\r"];(function(t){function e(s,a,o,c){return new $d(s,a,o,c)}t.create=e;function r(s){let a=s;return!!(m.defined(a)&&m.string(a.uri)&&(m.undefined(a.languageId)||m.string(a.languageId))&&m.uinteger(a.lineCount)&&m.func(a.getText)&&m.func(a.positionAt)&&m.func(a.offsetAt))}t.is=r;function n(s,a){let o=s.getText(),c=i(a,(u,p)=>{let h=u.range.start.line-p.range.start.line;return h===0?u.range.start.character-p.range.start.character:h}),l=o.length;for(let u=c.length-1;u>=0;u--){let p=c[u],h=s.offsetAt(p.range.start),g=s.offsetAt(p.range.end);if(g<=l)o=o.substring(0,h)+p.newText+o.substring(g,o.length);else throw new Error("Overlapping edit");l=h}return o}t.applyEdits=n;function i(s,a){if(s.length<=1)return s;let o=s.length/2|0,c=s.slice(0,o),l=s.slice(o);i(c,a),i(l,a);let u=0,p=0,h=0;for(;u0&&e.push(r.length),this._lineOffsets=e}return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let r=this.getLineOffsets(),n=0,i=r.length;if(i===0)return ce.create(0,e);for(;ne?i=a:n=a+1}let s=n-1;return ce.create(s,e-r[s])}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line],i=e.line+1"u"}t.undefined=n;function i(g){return g===!0||g===!1}t.boolean=i;function s(g){return e.call(g)==="[object String]"}t.string=s;function a(g){return e.call(g)==="[object Number]"}t.number=a;function o(g,C,k){return e.call(g)==="[object Number]"&&C<=g&&g<=k}t.numberRange=o;function c(g){return e.call(g)==="[object Number]"&&-2147483648<=g&&g<=2147483647}t.integer=c;function l(g){return e.call(g)==="[object Number]"&&0<=g&&g<=2147483647}t.uinteger=l;function u(g){return e.call(g)==="[object Function]"}t.func=u;function p(g){return g!==null&&typeof g=="object"}t.objectLiteral=p;function h(g,C){return Array.isArray(g)&&g.every(C)}t.typedArray=h})(m||(m={}))});var Rn=X(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var bd;function Pd(){if(bd===void 0)throw new Error("No runtime abstraction layer installed");return bd}(function(t){function e(r){if(r===void 0)throw new Error("No runtime abstraction layer provided");bd=r}t.install=e})(Pd||(Pd={}));Od.default=Pd});var ls=X(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.stringArray=Tt.array=Tt.func=Tt.error=Tt.number=Tt.string=Tt.boolean=void 0;function zA(t){return t===!0||t===!1}Tt.boolean=zA;function Hg(t){return typeof t=="string"||t instanceof String}Tt.string=Hg;function jA(t){return typeof t=="number"||t instanceof Number}Tt.number=jA;function BA(t){return t instanceof Error}Tt.error=BA;function WA(t){return typeof t=="function"}Tt.func=WA;function Yg(t){return Array.isArray(t)}Tt.array=Yg;function VA(t){return Yg(t)&&t.every(e=>Hg(e))}Tt.stringArray=VA});var ci=X(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.Emitter=us.Event=void 0;var KA=Rn(),Xg;(function(t){let e={dispose(){}};t.None=function(){return e}})(Xg||(us.Event=Xg={}));var Ld=class{add(e,r=null,n){this._callbacks||(this._callbacks=[],this._contexts=[]),this._callbacks.push(e),this._contexts.push(r),Array.isArray(n)&&n.push({dispose:()=>this.remove(e,r)})}remove(e,r=null){if(!this._callbacks)return;let n=!1;for(let i=0,s=this._callbacks.length;i{this._callbacks||(this._callbacks=new Ld),this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty()&&this._options.onFirstListenerAdd(this),this._callbacks.add(e,r);let i={dispose:()=>{this._callbacks&&(this._callbacks.remove(e,r),i.dispose=t._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty()&&this._options.onLastListenerRemove(this))}};return Array.isArray(n)&&n.push(i),i}),this._event}fire(e){this._callbacks&&this._callbacks.invoke.call(this._callbacks,e)}dispose(){this._callbacks&&(this._callbacks.dispose(),this._callbacks=void 0)}};us.Emitter=ll;ll._noop=function(){}});var Ka=X(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.CancellationTokenSource=fs.CancellationToken=void 0;var HA=Rn(),YA=ls(),Dd=ci(),ul;(function(t){t.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:Dd.Event.None}),t.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:Dd.Event.None});function e(r){let n=r;return n&&(n===t.None||n===t.Cancelled||YA.boolean(n.isCancellationRequested)&&!!n.onCancellationRequested)}t.is=e})(ul||(fs.CancellationToken=ul={}));var XA=Object.freeze(function(t,e){let r=(0,HA.default)().timer.setTimeout(t.bind(e),0);return{dispose(){r.dispose()}}}),fl=class{constructor(){this._isCancelled=!1}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?XA:(this._emitter||(this._emitter=new Dd.Emitter),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=void 0)}},Md=class{get token(){return this._token||(this._token=new fl),this._token}cancel(){this._token?this._token.cancel():this._token=ul.Cancelled}dispose(){this._token?this._token instanceof fl&&this._token.dispose():this._token=ul.None}};fs.CancellationTokenSource=Md});var dp=X(j=>{"use strict";Object.defineProperty(j,"__esModule",{value:!0});j.Message=j.NotificationType9=j.NotificationType8=j.NotificationType7=j.NotificationType6=j.NotificationType5=j.NotificationType4=j.NotificationType3=j.NotificationType2=j.NotificationType1=j.NotificationType0=j.NotificationType=j.RequestType9=j.RequestType8=j.RequestType7=j.RequestType6=j.RequestType5=j.RequestType4=j.RequestType3=j.RequestType2=j.RequestType1=j.RequestType=j.RequestType0=j.AbstractMessageSignature=j.ParameterStructures=j.ResponseError=j.ErrorCodes=void 0;var pi=ls(),zd=(function(t){return t.ParseError=-32700,t.InvalidRequest=-32600,t.MethodNotFound=-32601,t.InvalidParams=-32602,t.InternalError=-32603,t.jsonrpcReservedErrorRangeStart=-32099,t.serverErrorStart=-32099,t.MessageWriteError=-32099,t.MessageReadError=-32098,t.PendingResponseRejected=-32097,t.ConnectionInactive=-32096,t.ServerNotInitialized=-32002,t.UnknownErrorCode=-32001,t.jsonrpcReservedErrorRangeEnd=-32e3,t.serverErrorEnd=-32e3,t})(zd||(j.ErrorCodes=zd={})),jd=class t extends Error{constructor(e,r,n){super(r),this.code=pi.number(e)?e:zd.UnknownErrorCode,this.data=n,Object.setPrototypeOf(this,t.prototype)}toJson(){let e={code:this.code,message:this.message};return this.data!==void 0&&(e.data=this.data),e}};j.ResponseError=jd;var Lt=class t{constructor(e){this.kind=e}static is(e){return e===t.auto||e===t.byName||e===t.byPosition}toString(){return this.kind}};j.ParameterStructures=Lt;Lt.auto=new Lt("auto");Lt.byPosition=new Lt("byPosition");Lt.byName=new Lt("byName");var Ie=class{constructor(e,r){this.method=e,this.numberOfParams=r}get parameterStructures(){return Lt.auto}};j.AbstractMessageSignature=Ie;var Bd=class extends Ie{constructor(e){super(e,0)}};j.RequestType0=Bd;var Wd=class extends Ie{constructor(e,r=Lt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};j.RequestType=Wd;var Vd=class extends Ie{constructor(e,r=Lt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};j.RequestType1=Vd;var Kd=class extends Ie{constructor(e){super(e,2)}};j.RequestType2=Kd;var Hd=class extends Ie{constructor(e){super(e,3)}};j.RequestType3=Hd;var Yd=class extends Ie{constructor(e){super(e,4)}};j.RequestType4=Yd;var Xd=class extends Ie{constructor(e){super(e,5)}};j.RequestType5=Xd;var Jd=class extends Ie{constructor(e){super(e,6)}};j.RequestType6=Jd;var Qd=class extends Ie{constructor(e){super(e,7)}};j.RequestType7=Qd;var Zd=class extends Ie{constructor(e){super(e,8)}};j.RequestType8=Zd;var ep=class extends Ie{constructor(e){super(e,9)}};j.RequestType9=ep;var tp=class extends Ie{constructor(e,r=Lt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};j.NotificationType=tp;var rp=class extends Ie{constructor(e){super(e,0)}};j.NotificationType0=rp;var np=class extends Ie{constructor(e,r=Lt.auto){super(e,1),this._parameterStructures=r}get parameterStructures(){return this._parameterStructures}};j.NotificationType1=np;var ip=class extends Ie{constructor(e){super(e,2)}};j.NotificationType2=ip;var sp=class extends Ie{constructor(e){super(e,3)}};j.NotificationType3=sp;var ap=class extends Ie{constructor(e){super(e,4)}};j.NotificationType4=ap;var op=class extends Ie{constructor(e){super(e,5)}};j.NotificationType5=op;var cp=class extends Ie{constructor(e){super(e,6)}};j.NotificationType6=cp;var lp=class extends Ie{constructor(e){super(e,7)}};j.NotificationType7=lp;var up=class extends Ie{constructor(e){super(e,8)}};j.NotificationType8=up;var fp=class extends Ie{constructor(e){super(e,9)}};j.NotificationType9=fp;var cy;(function(t){function e(i){let s=i;return s&&pi.string(s.method)&&(pi.string(s.id)||pi.number(s.id))}t.isRequest=e;function r(i){let s=i;return s&&pi.string(s.method)&&i.id===void 0}t.isNotification=r;function n(i){let s=i;return s&&(s.result!==void 0||!!s.error)&&(pi.string(s.id)||pi.number(s.id)||s.id===null)}t.isResponse=n})(cy||(j.Message=cy={}))});var hp=X(xn=>{"use strict";var ly;Object.defineProperty(xn,"__esModule",{value:!0});xn.LRUCache=xn.LinkedMap=xn.Touch=void 0;var xt;(function(t){t.None=0,t.First=1,t.AsOld=t.First,t.Last=2,t.AsNew=t.Last})(xt||(xn.Touch=xt={}));var Tl=class{constructor(){this[ly]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(e){return this._map.has(e)}get(e,r=xt.None){let n=this._map.get(e);if(n)return r!==xt.None&&this.touch(n,r),n.value}set(e,r,n=xt.None){let i=this._map.get(e);if(i)i.value=r,n!==xt.None&&this.touch(i,n);else{switch(i={key:e,value:r,next:void 0,previous:void 0},n){case xt.None:this.addItemLast(i);break;case xt.First:this.addItemFirst(i);break;case xt.Last:this.addItemLast(i);break;default:this.addItemLast(i);break}this._map.set(e,i),this._size++}return this}delete(e){return!!this.remove(e)}remove(e){let r=this._map.get(e);if(r)return this._map.delete(e),this.removeItem(r),this._size--,r.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");let e=this._head;return this._map.delete(e.key),this.removeItem(e),this._size--,e.value}forEach(e,r){let n=this._state,i=this._head;for(;i;){if(r?e.bind(r)(i.value,i.key,this):e(i.value,i.key,this),this._state!==n)throw new Error("LinkedMap got modified during iteration.");i=i.next}}keys(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:r.key,done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return n}values(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:r.value,done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return n}entries(){let e=this._state,r=this._head,n={[Symbol.iterator]:()=>n,next:()=>{if(this._state!==e)throw new Error("LinkedMap got modified during iteration.");if(r){let i={value:[r.key,r.value],done:!1};return r=r.next,i}else return{value:void 0,done:!0}}};return n}[(ly=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(e){if(e>=this.size)return;if(e===0){this.clear();return}let r=this._head,n=this.size;for(;r&&n>e;)this._map.delete(r.key),r=r.next,n--;this._head=r,this._size=n,r&&(r.previous=void 0),this._state++}addItemFirst(e){if(!this._head&&!this._tail)this._tail=e;else if(this._head)e.next=this._head,this._head.previous=e;else throw new Error("Invalid list");this._head=e,this._state++}addItemLast(e){if(!this._head&&!this._tail)this._head=e;else if(this._tail)e.previous=this._tail,this._tail.next=e;else throw new Error("Invalid list");this._tail=e,this._state++}removeItem(e){if(e===this._head&&e===this._tail)this._head=void 0,this._tail=void 0;else if(e===this._head){if(!e.next)throw new Error("Invalid list");e.next.previous=void 0,this._head=e.next}else if(e===this._tail){if(!e.previous)throw new Error("Invalid list");e.previous.next=void 0,this._tail=e.previous}else{let r=e.next,n=e.previous;if(!r||!n)throw new Error("Invalid list");r.previous=n,n.next=r}e.next=void 0,e.previous=void 0,this._state++}touch(e,r){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(r!==xt.First&&r!==xt.Last)){if(r===xt.First){if(e===this._head)return;let n=e.next,i=e.previous;e===this._tail?(i.next=void 0,this._tail=i):(n.previous=i,i.next=n),e.previous=void 0,e.next=this._head,this._head.previous=e,this._head=e,this._state++}else if(r===xt.Last){if(e===this._tail)return;let n=e.next,i=e.previous;e===this._head?(n.previous=void 0,this._head=n):(n.previous=i,i.next=n),e.next=void 0,e.previous=this._tail,this._tail.next=e,this._tail=e,this._state++}}}toJSON(){let e=[];return this.forEach((r,n)=>{e.push([n,r])}),e}fromJSON(e){this.clear();for(let[r,n]of e)this.set(r,n)}};xn.LinkedMap=Tl;var pp=class extends Tl{constructor(e,r=1){super(),this._limit=e,this._ratio=Math.min(Math.max(0,r),1)}get limit(){return this._limit}set limit(e){this._limit=e,this.checkTrim()}get ratio(){return this._ratio}set ratio(e){this._ratio=Math.min(Math.max(0,e),1),this.checkTrim()}get(e,r=xt.AsNew){return super.get(e,r)}peek(e){return super.get(e,xt.None)}set(e,r){return super.set(e,r,xt.Last),this.checkTrim(),this}checkTrim(){this.size>this._limit&&this.trimOld(Math.round(this._limit*this._ratio))}};xn.LRUCache=pp});var fy=X(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});Rl.Disposable=void 0;var uy;(function(t){function e(r){return{dispose:r}}t.create=e})(uy||(Rl.Disposable=uy={}))});var dy=X(Ts=>{"use strict";Object.defineProperty(Ts,"__esModule",{value:!0});Ts.SharedArrayReceiverStrategy=Ts.SharedArraySenderStrategy=void 0;var ZA=Ka(),xl=(function(t){return t.Continue=0,t.Cancelled=1,t})(xl||{}),mp=class{constructor(){this.buffers=new Map}enableCancellation(e){if(e.id===null)return;let r=new SharedArrayBuffer(4),n=new Int32Array(r,0,1);n[0]=xl.Continue,this.buffers.set(e.id,r),e.$cancellationData=r}sendCancellation(e,r){return P(this,null,function*(){let n=this.buffers.get(r);if(n===void 0)return;let i=new Int32Array(n,0,1);Atomics.store(i,0,xl.Cancelled)})}cleanup(e){this.buffers.delete(e)}dispose(){this.buffers.clear()}};Ts.SharedArraySenderStrategy=mp;var gp=class{constructor(e){this.data=new Int32Array(e,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===xl.Cancelled}get onCancellationRequested(){throw new Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},yp=class{constructor(e){this.token=new gp(e)}cancel(){}dispose(){}},Tp=class{constructor(){this.kind="request"}createCancellationTokenSource(e){let r=e.$cancellationData;return r===void 0?new ZA.CancellationTokenSource:new yp(r)}};Ts.SharedArrayReceiverStrategy=Tp});var xp=X(vl=>{"use strict";Object.defineProperty(vl,"__esModule",{value:!0});vl.Semaphore=void 0;var e$=Rn(),Rp=class{constructor(e=1){if(e<=0)throw new Error("Capacity must be greater than 0");this._capacity=e,this._active=0,this._waiting=[]}lock(e){return new Promise((r,n)=>{this._waiting.push({thunk:e,resolve:r,reject:n}),this.runNext()})}get active(){return this._active}runNext(){this._waiting.length===0||this._active===this._capacity||(0,e$.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let e=this._waiting.shift();if(this._active++,this._active>this._capacity)throw new Error("To many thunks active");try{let r=e.thunk();r instanceof Promise?r.then(n=>{this._active--,e.resolve(n),this.runNext()},n=>{this._active--,e.reject(n),this.runNext()}):(this._active--,e.resolve(r),this.runNext())}catch(r){this._active--,e.reject(r),this.runNext()}}};vl.Semaphore=Rp});var hy=X(vn=>{"use strict";Object.defineProperty(vn,"__esModule",{value:!0});vn.ReadableStreamMessageReader=vn.AbstractMessageReader=vn.MessageReader=void 0;var Ep=Rn(),Rs=ls(),vp=ci(),t$=xp(),py;(function(t){function e(r){let n=r;return n&&Rs.func(n.listen)&&Rs.func(n.dispose)&&Rs.func(n.onError)&&Rs.func(n.onClose)&&Rs.func(n.onPartialMessage)}t.is=e})(py||(vn.MessageReader=py={}));var El=class{constructor(){this.errorEmitter=new vp.Emitter,this.closeEmitter=new vp.Emitter,this.partialMessageEmitter=new vp.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e){this.errorEmitter.fire(this.asError(e))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(e){this.partialMessageEmitter.fire(e)}asError(e){return e instanceof Error?e:new Error(`Reader received error. Reason: ${Rs.string(e.message)?e.message:"unknown"}`)}};vn.AbstractMessageReader=El;var Ap;(function(t){function e(r){let n,i,s,a=new Map,o,c=new Map;if(r===void 0||typeof r=="string")n=r??"utf-8";else{if(n=r.charset??"utf-8",r.contentDecoder!==void 0&&(s=r.contentDecoder,a.set(s.name,s)),r.contentDecoders!==void 0)for(let l of r.contentDecoders)a.set(l.name,l);if(r.contentTypeDecoder!==void 0&&(o=r.contentTypeDecoder,c.set(o.name,o)),r.contentTypeDecoders!==void 0)for(let l of r.contentTypeDecoders)c.set(l.name,l)}return o===void 0&&(o=(0,Ep.default)().applicationJson.decoder,c.set(o.name,o)),{charset:n,contentDecoder:s,contentDecoders:a,contentTypeDecoder:o,contentTypeDecoders:c}}t.fromOptions=e})(Ap||(Ap={}));var $p=class extends El{constructor(e,r){super(),this.readable=e,this.options=Ap.fromOptions(r),this.buffer=(0,Ep.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new t$.Semaphore(1)}set partialMessageTimeout(e){this._partialMessageTimeout=e}get partialMessageTimeout(){return this._partialMessageTimeout}listen(e){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=e;let r=this.readable.onData(n=>{this.onData(n)});return this.readable.onError(n=>this.fireError(n)),this.readable.onClose(()=>this.fireClose()),r}onData(e){try{for(this.buffer.append(e);;){if(this.nextMessageLength===-1){let n=this.buffer.tryReadHeaders(!0);if(!n)return;let i=n.get("content-length");if(!i){this.fireError(new Error(`Header must provide a Content-Length property. -${JSON.stringify(Object.fromEntries(n))}`));return}let s=parseInt(i);if(isNaN(s)){this.fireError(new Error(`Content-Length value must be a number. Got ${i}`));return}this.nextMessageLength=s}let r=this.buffer.tryReadBody(this.nextMessageLength);if(r===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(()=>P(this,null,function*(){let n=this.options.contentDecoder!==void 0?yield this.options.contentDecoder.decode(r):r,i=yield this.options.contentTypeDecoder.decode(n,this.options);this.callback(i)})).catch(n=>{this.fireError(n)})}}catch(r){this.fireError(r)}}clearPartialMessageTimer(){this.partialMessageTimer&&(this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0)}setPartialMessageTimer(){this.clearPartialMessageTimer(),!(this._partialMessageTimeout<=0)&&(this.partialMessageTimer=(0,Ep.default)().timer.setTimeout((e,r)=>{this.partialMessageTimer=void 0,e===this.messageToken&&(this.firePartialMessage({messageToken:e,waitingTime:r}),this.setPartialMessageTimer())},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout))}};vn.ReadableStreamMessageReader=$p});var Ry=X(En=>{"use strict";Object.defineProperty(En,"__esModule",{value:!0});En.WriteableStreamMessageWriter=En.AbstractMessageWriter=En.MessageWriter=void 0;var my=Rn(),fo=ls(),r$=xp(),gy=ci(),n$="Content-Length: ",yy=`\r -`,Ty;(function(t){function e(r){let n=r;return n&&fo.func(n.dispose)&&fo.func(n.onClose)&&fo.func(n.onError)&&fo.func(n.write)}t.is=e})(Ty||(En.MessageWriter=Ty={}));var Al=class{constructor(){this.errorEmitter=new gy.Emitter,this.closeEmitter=new gy.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(e,r,n){this.errorEmitter.fire([this.asError(e),r,n])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(e){return e instanceof Error?e:new Error(`Writer received error. Reason: ${fo.string(e.message)?e.message:"unknown"}`)}};En.AbstractMessageWriter=Al;var Sp;(function(t){function e(r){return r===void 0||typeof r=="string"?{charset:r??"utf-8",contentTypeEncoder:(0,my.default)().applicationJson.encoder}:{charset:r.charset??"utf-8",contentEncoder:r.contentEncoder,contentTypeEncoder:r.contentTypeEncoder??(0,my.default)().applicationJson.encoder}}t.fromOptions=e})(Sp||(Sp={}));var kp=class extends Al{constructor(e,r){super(),this.writable=e,this.options=Sp.fromOptions(r),this.errorCount=0,this.writeSemaphore=new r$.Semaphore(1),this.writable.onError(n=>this.fireError(n)),this.writable.onClose(()=>this.fireClose())}write(e){return P(this,null,function*(){return this.writeSemaphore.lock(()=>P(this,null,function*(){return this.options.contentTypeEncoder.encode(e,this.options).then(n=>this.options.contentEncoder!==void 0?this.options.contentEncoder.encode(n):n).then(n=>{let i=[];return i.push(n$,n.byteLength.toString(),yy),i.push(yy),this.doWrite(e,i,n)},n=>{throw this.fireError(n),n})}))})}doWrite(e,r,n){return P(this,null,function*(){try{return yield this.writable.write(r.join(""),"ascii"),this.writable.write(n)}catch(i){return this.handleError(i,e),Promise.reject(i)}})}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){this.writable.end()}};En.WriteableStreamMessageWriter=kp});var xy=X($l=>{"use strict";Object.defineProperty($l,"__esModule",{value:!0});$l.AbstractMessageBuffer=void 0;var i$=13,s$=10,a$=`\r -`,Np=class{constructor(e="utf-8"){this._encoding=e,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(e){let r=typeof e=="string"?this.fromString(e,this._encoding):e;this._chunks.push(r),this._totalLength+=r.byteLength}tryReadHeaders(e=!1){if(this._chunks.length===0)return;let r=0,n=0,i=0,s=0;e:for(;nthis._totalLength)throw new Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===e){let s=this._chunks[0];return this._chunks.shift(),this._totalLength-=e,this.asNative(s)}if(this._chunks[0].byteLength>e){let s=this._chunks[0],a=this.asNative(s,e);return this._chunks[0]=s.slice(e),this._totalLength-=e,a}let r=this.allocNative(e),n=0,i=0;for(;e>0;){let s=this._chunks[i];if(s.byteLength>e){let a=s.slice(0,e);r.set(a,n),n+=e,this._chunks[i]=s.slice(e),this._totalLength-=e,e-=e}else r.set(s,n),n+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,e-=s.byteLength}return r}};$l.AbstractMessageBuffer=Np});var Sy=X(J=>{"use strict";Object.defineProperty(J,"__esModule",{value:!0});J.createMessageConnection=J.ConnectionOptions=J.MessageStrategy=J.CancellationStrategy=J.CancellationSenderStrategy=J.CancellationReceiverStrategy=J.RequestCancellationReceiverStrategy=J.IdCancellationReceiverStrategy=J.ConnectionStrategy=J.ConnectionError=J.ConnectionErrors=J.LogTraceNotification=J.SetTraceNotification=J.TraceFormat=J.TraceValues=J.Trace=J.NullLogger=J.ProgressType=J.ProgressToken=void 0;var vy=Rn(),Fe=ls(),K=dp(),Ey=hp(),po=ci(),Cp=Ka(),go;(function(t){t.type=new K.NotificationType("$/cancelRequest")})(go||(go={}));var wp;(function(t){function e(r){return typeof r=="string"||typeof r=="number"}t.is=e})(wp||(J.ProgressToken=wp={}));var ho;(function(t){t.type=new K.NotificationType("$/progress")})(ho||(ho={}));var Ip=class{constructor(){}};J.ProgressType=Ip;var _p;(function(t){function e(r){return Fe.func(r)}t.is=e})(_p||(_p={}));J.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}});var fe=(function(t){return t[t.Off=0]="Off",t[t.Messages=1]="Messages",t[t.Compact=2]="Compact",t[t.Verbose=3]="Verbose",t})(fe||(J.Trace=fe={})),Ay=(function(t){return t.Off="off",t.Messages="messages",t.Compact="compact",t.Verbose="verbose",t})(Ay||(J.TraceValues=Ay={}));(function(t){function e(n){if(!Fe.string(n))return t.Off;switch(n=n.toLowerCase(),n){case"off":return t.Off;case"messages":return t.Messages;case"compact":return t.Compact;case"verbose":return t.Verbose;default:return t.Off}}t.fromString=e;function r(n){switch(n){case t.Off:return"off";case t.Messages:return"messages";case t.Compact:return"compact";case t.Verbose:return"verbose";default:return"off"}}t.toString=r})(fe||(J.Trace=fe={}));var Wt=(function(t){return t.Text="text",t.JSON="json",t})(Wt||(J.TraceFormat=Wt={}));(function(t){function e(r){return Fe.string(r)?(r=r.toLowerCase(),r==="json"?t.JSON:t.Text):t.Text}t.fromString=e})(Wt||(J.TraceFormat=Wt={}));var bp;(function(t){t.type=new K.NotificationType("$/setTrace")})(bp||(J.SetTraceNotification=bp={}));var Sl;(function(t){t.type=new K.NotificationType("$/logTrace")})(Sl||(J.LogTraceNotification=Sl={}));var mo=(function(t){return t[t.Closed=1]="Closed",t[t.Disposed=2]="Disposed",t[t.AlreadyListening=3]="AlreadyListening",t})(mo||(J.ConnectionErrors=mo={})),xs=class t extends Error{constructor(e,r){super(r),this.code=e,Object.setPrototypeOf(this,t.prototype)}};J.ConnectionError=xs;var Pp;(function(t){function e(r){let n=r;return n&&Fe.func(n.cancelUndispatched)}t.is=e})(Pp||(J.ConnectionStrategy=Pp={}));var kl;(function(t){function e(r){let n=r;return n&&(n.kind===void 0||n.kind==="id")&&Fe.func(n.createCancellationTokenSource)&&(n.dispose===void 0||Fe.func(n.dispose))}t.is=e})(kl||(J.IdCancellationReceiverStrategy=kl={}));var Op;(function(t){function e(r){let n=r;return n&&n.kind==="request"&&Fe.func(n.createCancellationTokenSource)&&(n.dispose===void 0||Fe.func(n.dispose))}t.is=e})(Op||(J.RequestCancellationReceiverStrategy=Op={}));var Nl;(function(t){t.Message=Object.freeze({createCancellationTokenSource(r){return new Cp.CancellationTokenSource}});function e(r){return kl.is(r)||Op.is(r)}t.is=e})(Nl||(J.CancellationReceiverStrategy=Nl={}));var Cl;(function(t){t.Message=Object.freeze({sendCancellation(r,n){return r.sendNotification(go.type,{id:n})},cleanup(r){}});function e(r){let n=r;return n&&Fe.func(n.sendCancellation)&&Fe.func(n.cleanup)}t.is=e})(Cl||(J.CancellationSenderStrategy=Cl={}));var wl;(function(t){t.Message=Object.freeze({receiver:Nl.Message,sender:Cl.Message});function e(r){let n=r;return n&&Nl.is(n.receiver)&&Cl.is(n.sender)}t.is=e})(wl||(J.CancellationStrategy=wl={}));var Il;(function(t){function e(r){let n=r;return n&&Fe.func(n.handleMessage)}t.is=e})(Il||(J.MessageStrategy=Il={}));var $y;(function(t){function e(r){let n=r;return n&&(wl.is(n.cancellationStrategy)||Pp.is(n.connectionStrategy)||Il.is(n.messageStrategy))}t.is=e})($y||(J.ConnectionOptions=$y={}));var kr=(function(t){return t[t.New=1]="New",t[t.Listening=2]="Listening",t[t.Closed=3]="Closed",t[t.Disposed=4]="Disposed",t})(kr||{});function o$(t,e,r,n){let i=r!==void 0?r:J.NullLogger,s=0,a=0,o=0,c="2.0",l,u=new Map,p,h=new Map,g=new Map,C,k=new Ey.LinkedMap,G=new Map,M=new Set,b=new Map,E=fe.Off,H=Wt.Text,F,ye=kr.New,dr=new po.Emitter,Je=new po.Emitter,Qt=new po.Emitter,Kt=new po.Emitter,$=new po.Emitter,y=n&&n.cancellationStrategy?n.cancellationStrategy:wl.Message;function L(d){if(d===null)throw new Error("Can't send requests with id null since the response can't be correlated.");return"req-"+d.toString()}function O(d){return d===null?"res-unknown-"+(++o).toString():"res-"+d.toString()}function T(){return"not-"+(++a).toString()}function x(d,v){K.Message.isRequest(v)?d.set(L(v.id),v):K.Message.isResponse(v)?d.set(O(v.id),v):d.set(T(),v)}function A(d){}function _(){return ye===kr.Listening}function U(){return ye===kr.Closed}function N(){return ye===kr.Disposed}function Y(){(ye===kr.New||ye===kr.Listening)&&(ye=kr.Closed,Je.fire(void 0))}function Q(d){dr.fire([d,void 0,void 0])}function de(d){dr.fire(d)}t.onClose(Y),t.onError(Q),e.onClose(Y),e.onError(de);function ue(){C||k.size===0||(C=(0,vy.default)().timer.setImmediate(()=>{C=void 0,We()}))}function ve(d){K.Message.isRequest(d)?ot(d):K.Message.isNotification(d)?pr(d):K.Message.isResponse(d)?_t(d):Zt(d)}function We(){if(k.size===0)return;let d=k.shift();try{let v=n?.messageStrategy;Il.is(v)?v.handleMessage(d,ve):ve(d)}finally{ue()}}let js=d=>{try{if(K.Message.isNotification(d)&&d.method===go.type.method){let v=d.params.id,w=L(v),z=k.get(w);if(K.Message.isRequest(z)){let Te=n?.connectionStrategy,Ge=Te&&Te.cancelUndispatched?Te.cancelUndispatched(z,A):void 0;if(Ge&&(Ge.error!==void 0||Ge.result!==void 0)){k.delete(w),b.delete(v),Ge.id=z.id,Do(Ge,d.method,Date.now()),e.write(Ge).catch(()=>i.error("Sending response for canceled message failed."));return}}let ke=b.get(v);if(ke!==void 0){ke.cancel(),uu(d);return}else M.add(v)}x(k,d)}finally{ue()}};function ot(d){if(N())return;function v(oe,be,me){let Qe={jsonrpc:c,id:d.id};oe instanceof K.ResponseError?Qe.error=oe.toJson():Qe.result=oe===void 0?null:oe,Do(Qe,be,me),e.write(Qe).catch(()=>i.error("Sending response failed."))}function w(oe,be,me){let Qe={jsonrpc:c,id:d.id,error:oe.toJson()};Do(Qe,be,me),e.write(Qe).catch(()=>i.error("Sending response failed."))}function z(oe,be,me){oe===void 0&&(oe=null);let Qe={jsonrpc:c,id:d.id,result:oe};Do(Qe,be,me),e.write(Qe).catch(()=>i.error("Sending response failed."))}Qx(d);let ke=u.get(d.method),Te,Ge;ke&&(Te=ke.type,Ge=ke.handler);let je=Date.now();if(Ge||l){let oe=d.id??String(Date.now()),be=kl.is(y.receiver)?y.receiver.createCancellationTokenSource(oe):y.receiver.createCancellationTokenSource(d);d.id!==null&&M.has(d.id)&&be.cancel(),d.id!==null&&b.set(oe,be);try{let me;if(Ge)if(d.params===void 0){if(Te!==void 0&&Te.numberOfParams!==0){w(new K.ResponseError(K.ErrorCodes.InvalidParams,`Request ${d.method} defines ${Te.numberOfParams} params but received none.`),d.method,je);return}me=Ge(be.token)}else if(Array.isArray(d.params)){if(Te!==void 0&&Te.parameterStructures===K.ParameterStructures.byName){w(new K.ResponseError(K.ErrorCodes.InvalidParams,`Request ${d.method} defines parameters by name but received parameters by position`),d.method,je);return}me=Ge(...d.params,be.token)}else{if(Te!==void 0&&Te.parameterStructures===K.ParameterStructures.byPosition){w(new K.ResponseError(K.ErrorCodes.InvalidParams,`Request ${d.method} defines parameters by position but received parameters by name`),d.method,je);return}me=Ge(d.params,be.token)}else l&&(me=l(d.method,d.params,be.token));let Qe=me;me?Qe.then?Qe.then(Et=>{b.delete(oe),v(Et,d.method,je)},Et=>{b.delete(oe),Et instanceof K.ResponseError?w(Et,d.method,je):Et&&Fe.string(Et.message)?w(new K.ResponseError(K.ErrorCodes.InternalError,`Request ${d.method} failed with message: ${Et.message}`),d.method,je):w(new K.ResponseError(K.ErrorCodes.InternalError,`Request ${d.method} failed unexpectedly without providing any details.`),d.method,je)}):(b.delete(oe),v(me,d.method,je)):(b.delete(oe),z(me,d.method,je))}catch(me){b.delete(oe),me instanceof K.ResponseError?v(me,d.method,je):me&&Fe.string(me.message)?w(new K.ResponseError(K.ErrorCodes.InternalError,`Request ${d.method} failed with message: ${me.message}`),d.method,je):w(new K.ResponseError(K.ErrorCodes.InternalError,`Request ${d.method} failed unexpectedly without providing any details.`),d.method,je)}}else w(new K.ResponseError(K.ErrorCodes.MethodNotFound,`Unhandled method ${d.method}`),d.method,je)}function _t(d){if(!N())if(d.id===null)d.error?i.error(`Received response message without id: Error is: -${JSON.stringify(d.error,void 0,4)}`):i.error("Received response message without id. No further error information provided.");else{let v=d.id,w=G.get(v);if(Zx(d,w),w!==void 0){G.delete(v);try{if(d.error){let z=d.error;w.reject(new K.ResponseError(z.code,z.message,z.data))}else if(d.result!==void 0)w.resolve(d.result);else throw new Error("Should never happen.")}catch(z){z.message?i.error(`Response handler '${w.method}' failed with message: ${z.message}`):i.error(`Response handler '${w.method}' failed unexpectedly.`)}}}}function pr(d){if(N())return;let v,w;if(d.method===go.type.method){let z=d.params.id;M.delete(z),uu(d);return}else{let z=h.get(d.method);z&&(w=z.handler,v=z.type)}if(w||p)try{if(uu(d),w)if(d.params===void 0)v!==void 0&&v.numberOfParams!==0&&v.parameterStructures!==K.ParameterStructures.byName&&i.error(`Notification ${d.method} defines ${v.numberOfParams} params but received none.`),w();else if(Array.isArray(d.params)){let z=d.params;d.method===ho.type.method&&z.length===2&&wp.is(z[0])?w({token:z[0],value:z[1]}):(v!==void 0&&(v.parameterStructures===K.ParameterStructures.byName&&i.error(`Notification ${d.method} defines parameters by name but received parameters by position`),v.numberOfParams!==d.params.length&&i.error(`Notification ${d.method} defines ${v.numberOfParams} params but received ${z.length} arguments`)),w(...z))}else v!==void 0&&v.parameterStructures===K.ParameterStructures.byPosition&&i.error(`Notification ${d.method} defines parameters by position but received parameters by name`),w(d.params);else p&&p(d.method,d.params)}catch(z){z.message?i.error(`Notification handler '${d.method}' failed with message: ${z.message}`):i.error(`Notification handler '${d.method}' failed unexpectedly.`)}else Qt.fire(d)}function Zt(d){if(!d){i.error("Received empty message.");return}i.error(`Received message which is neither a response nor a notification message: -${JSON.stringify(d,null,4)}`);let v=d;if(Fe.string(v.id)||Fe.number(v.id)){let w=v.id,z=G.get(w);z&&z.reject(new Error("The received response has neither a result nor an error property."))}}function ft(d){if(d!=null)switch(E){case fe.Verbose:return JSON.stringify(d,null,4);case fe.Compact:return JSON.stringify(d);default:return}}function Bs(d){if(!(E===fe.Off||!F))if(H===Wt.Text){let v;(E===fe.Verbose||E===fe.Compact)&&d.params&&(v=`Params: ${ft(d.params)} - -`),F.log(`Sending request '${d.method} - (${d.id})'.`,v)}else xi("send-request",d)}function Lo(d){if(!(E===fe.Off||!F))if(H===Wt.Text){let v;(E===fe.Verbose||E===fe.Compact)&&(d.params?v=`Params: ${ft(d.params)} - -`:v=`No parameters provided. - -`),F.log(`Sending notification '${d.method}'.`,v)}else xi("send-notification",d)}function Do(d,v,w){if(!(E===fe.Off||!F))if(H===Wt.Text){let z;(E===fe.Verbose||E===fe.Compact)&&(d.error&&d.error.data?z=`Error data: ${ft(d.error.data)} - -`:d.result?z=`Result: ${ft(d.result)} - -`:d.error===void 0&&(z=`No result returned. - -`)),F.log(`Sending response '${v} - (${d.id})'. Processing request took ${Date.now()-w}ms`,z)}else xi("send-response",d)}function Qx(d){if(!(E===fe.Off||!F))if(H===Wt.Text){let v;(E===fe.Verbose||E===fe.Compact)&&d.params&&(v=`Params: ${ft(d.params)} - -`),F.log(`Received request '${d.method} - (${d.id})'.`,v)}else xi("receive-request",d)}function uu(d){if(!(E===fe.Off||!F||d.method===Sl.type.method))if(H===Wt.Text){let v;(E===fe.Verbose||E===fe.Compact)&&(d.params?v=`Params: ${ft(d.params)} - -`:v=`No parameters provided. - -`),F.log(`Received notification '${d.method}'.`,v)}else xi("receive-notification",d)}function Zx(d,v){if(!(E===fe.Off||!F))if(H===Wt.Text){let w;if((E===fe.Verbose||E===fe.Compact)&&(d.error&&d.error.data?w=`Error data: ${ft(d.error.data)} - -`:d.result?w=`Result: ${ft(d.result)} - -`:d.error===void 0&&(w=`No result returned. - -`)),v){let z=d.error?` Request failed: ${d.error.message} (${d.error.code}).`:"";F.log(`Received response '${v.method} - (${d.id})' in ${Date.now()-v.timerStart}ms.${z}`,w)}else F.log(`Received response ${d.id} without active response promise.`,w)}else xi("receive-response",d)}function xi(d,v){if(!F||E===fe.Off)return;let w={isLSPMessage:!0,type:d,message:v,timestamp:Date.now()};F.log(w)}function Ws(){if(U())throw new xs(mo.Closed,"Connection is closed.");if(N())throw new xs(mo.Disposed,"Connection is disposed.")}function ev(){if(_())throw new xs(mo.AlreadyListening,"Connection is already listening")}function tv(){if(!_())throw new Error("Call listen() first.")}function Vs(d){return d===void 0?null:d}function Lh(d){if(d!==null)return d}function Dh(d){return d!=null&&!Array.isArray(d)&&typeof d=="object"}function fu(d,v){switch(d){case K.ParameterStructures.auto:return Dh(v)?Lh(v):[Vs(v)];case K.ParameterStructures.byName:if(!Dh(v))throw new Error("Received parameters by name but param is not an object literal.");return Lh(v);case K.ParameterStructures.byPosition:return[Vs(v)];default:throw new Error(`Unknown parameter structure ${d.toString()}`)}}function Mh(d,v){let w,z=d.numberOfParams;switch(z){case 0:w=void 0;break;case 1:w=fu(d.parameterStructures,v[0]);break;default:w=[];for(let ke=0;ke{Ws();let w,z;if(Fe.string(d)){w=d;let Te=v[0],Ge=0,je=K.ParameterStructures.auto;K.ParameterStructures.is(Te)&&(Ge=1,je=Te);let oe=v.length,be=oe-Ge;switch(be){case 0:z=void 0;break;case 1:z=fu(je,v[Ge]);break;default:if(je===K.ParameterStructures.byName)throw new Error(`Received ${be} parameters for 'by Name' notification parameter structure.`);z=v.slice(Ge,oe).map(me=>Vs(me));break}}else{let Te=v;w=d.method,z=Mh(d,Te)}let ke={jsonrpc:c,method:w,params:z};return Lo(ke),e.write(ke).catch(Te=>{throw i.error("Sending notification failed."),Te})},onNotification:(d,v)=>{Ws();let w;return Fe.func(d)?p=d:v&&(Fe.string(d)?(w=d,h.set(d,{type:void 0,handler:v})):(w=d.method,h.set(d.method,{type:d,handler:v}))),{dispose:()=>{w!==void 0?h.delete(w):p=void 0}}},onProgress:(d,v,w)=>{if(g.has(v))throw new Error(`Progress handler for token ${v} already registered`);return g.set(v,w),{dispose:()=>{g.delete(v)}}},sendProgress:(d,v,w)=>vi.sendNotification(ho.type,{token:v,value:w}),onUnhandledProgress:Kt.event,sendRequest:(d,...v)=>{Ws(),tv();let w,z,ke;if(Fe.string(d)){w=d;let oe=v[0],be=v[v.length-1],me=0,Qe=K.ParameterStructures.auto;K.ParameterStructures.is(oe)&&(me=1,Qe=oe);let Et=v.length;Cp.CancellationToken.is(be)&&(Et=Et-1,ke=be);let hr=Et-me;switch(hr){case 0:z=void 0;break;case 1:z=fu(Qe,v[me]);break;default:if(Qe===K.ParameterStructures.byName)throw new Error(`Received ${hr} parameters for 'by Name' request parameter structure.`);z=v.slice(me,Et).map(rv=>Vs(rv));break}}else{let oe=v;w=d.method,z=Mh(d,oe);let be=d.numberOfParams;ke=Cp.CancellationToken.is(oe[be])?oe[be]:void 0}let Te=s++,Ge;ke&&(Ge=ke.onCancellationRequested(()=>{let oe=y.sender.sendCancellation(vi,Te);return oe===void 0?(i.log(`Received no promise from cancellation strategy when cancelling id ${Te}`),Promise.resolve()):oe.catch(()=>{i.log(`Sending cancellation messages for id ${Te} failed`)})}));let je={jsonrpc:c,id:Te,method:w,params:z};return Bs(je),typeof y.sender.enableCancellation=="function"&&y.sender.enableCancellation(je),new Promise((oe,be)=>P(null,null,function*(){let me=hr=>{oe(hr),y.sender.cleanup(Te),Ge?.dispose()},Qe=hr=>{be(hr),y.sender.cleanup(Te),Ge?.dispose()},Et={method:w,timerStart:Date.now(),resolve:me,reject:Qe};try{yield e.write(je),G.set(Te,Et)}catch(hr){throw i.error("Sending request failed."),Et.reject(new K.ResponseError(K.ErrorCodes.MessageWriteError,hr.message?hr.message:"Unknown reason")),hr}}))},onRequest:(d,v)=>{Ws();let w=null;return _p.is(d)?(w=void 0,l=d):Fe.string(d)?(w=null,v!==void 0&&(w=d,u.set(d,{handler:v,type:void 0}))):v!==void 0&&(w=d.method,u.set(d.method,{type:d,handler:v})),{dispose:()=>{w!==null&&(w!==void 0?u.delete(w):l=void 0)}}},hasPendingResponse:()=>G.size>0,trace:(d,v,w)=>P(null,null,function*(){let z=!1,ke=Wt.Text;w!==void 0&&(Fe.boolean(w)?z=w:(z=w.sendNotification||!1,ke=w.traceFormat||Wt.Text)),E=d,H=ke,E===fe.Off?F=void 0:F=v,z&&!U()&&!N()&&(yield vi.sendNotification(bp.type,{value:fe.toString(d)}))}),onError:dr.event,onClose:Je.event,onUnhandledNotification:Qt.event,onDispose:$.event,end:()=>{e.end()},dispose:()=>{if(N())return;ye=kr.Disposed,$.fire(void 0);let d=new K.ResponseError(K.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let v of G.values())v.reject(d);G=new Map,b=new Map,M=new Set,k=new Ey.LinkedMap,Fe.func(e.dispose)&&e.dispose(),Fe.func(t.dispose)&&t.dispose()},listen:()=>{Ws(),ev(),ye=kr.Listening,t.listen(js)},inspect:()=>{(0,vy.default)().console.log("inspect")}};return vi.onNotification(Sl.type,d=>{if(E===fe.Off||!F)return;let v=E===fe.Verbose||E===fe.Compact;F.log(d.message,v?d.verbose:void 0)}),vi.onNotification(ho.type,d=>{let v=g.get(d.token);v?v(d.value):Kt.fire(d)}),vi}J.createMessageConnection=o$});var _l=X(R=>{"use strict";Object.defineProperty(R,"__esModule",{value:!0});R.ProgressType=R.ProgressToken=R.createMessageConnection=R.NullLogger=R.ConnectionOptions=R.ConnectionStrategy=R.AbstractMessageBuffer=R.WriteableStreamMessageWriter=R.AbstractMessageWriter=R.MessageWriter=R.ReadableStreamMessageReader=R.AbstractMessageReader=R.MessageReader=R.SharedArrayReceiverStrategy=R.SharedArraySenderStrategy=R.CancellationToken=R.CancellationTokenSource=R.Emitter=R.Event=R.Disposable=R.LRUCache=R.Touch=R.LinkedMap=R.ParameterStructures=R.NotificationType9=R.NotificationType8=R.NotificationType7=R.NotificationType6=R.NotificationType5=R.NotificationType4=R.NotificationType3=R.NotificationType2=R.NotificationType1=R.NotificationType0=R.NotificationType=R.ErrorCodes=R.ResponseError=R.RequestType9=R.RequestType8=R.RequestType7=R.RequestType6=R.RequestType5=R.RequestType4=R.RequestType3=R.RequestType2=R.RequestType1=R.RequestType0=R.RequestType=R.Message=R.RAL=void 0;R.MessageStrategy=R.CancellationStrategy=R.CancellationSenderStrategy=R.CancellationReceiverStrategy=R.ConnectionError=R.ConnectionErrors=R.LogTraceNotification=R.SetTraceNotification=R.TraceFormat=R.TraceValues=R.Trace=void 0;var Se=dp();Object.defineProperty(R,"Message",{enumerable:!0,get:function(){return Se.Message}});Object.defineProperty(R,"RequestType",{enumerable:!0,get:function(){return Se.RequestType}});Object.defineProperty(R,"RequestType0",{enumerable:!0,get:function(){return Se.RequestType0}});Object.defineProperty(R,"RequestType1",{enumerable:!0,get:function(){return Se.RequestType1}});Object.defineProperty(R,"RequestType2",{enumerable:!0,get:function(){return Se.RequestType2}});Object.defineProperty(R,"RequestType3",{enumerable:!0,get:function(){return Se.RequestType3}});Object.defineProperty(R,"RequestType4",{enumerable:!0,get:function(){return Se.RequestType4}});Object.defineProperty(R,"RequestType5",{enumerable:!0,get:function(){return Se.RequestType5}});Object.defineProperty(R,"RequestType6",{enumerable:!0,get:function(){return Se.RequestType6}});Object.defineProperty(R,"RequestType7",{enumerable:!0,get:function(){return Se.RequestType7}});Object.defineProperty(R,"RequestType8",{enumerable:!0,get:function(){return Se.RequestType8}});Object.defineProperty(R,"RequestType9",{enumerable:!0,get:function(){return Se.RequestType9}});Object.defineProperty(R,"ResponseError",{enumerable:!0,get:function(){return Se.ResponseError}});Object.defineProperty(R,"ErrorCodes",{enumerable:!0,get:function(){return Se.ErrorCodes}});Object.defineProperty(R,"NotificationType",{enumerable:!0,get:function(){return Se.NotificationType}});Object.defineProperty(R,"NotificationType0",{enumerable:!0,get:function(){return Se.NotificationType0}});Object.defineProperty(R,"NotificationType1",{enumerable:!0,get:function(){return Se.NotificationType1}});Object.defineProperty(R,"NotificationType2",{enumerable:!0,get:function(){return Se.NotificationType2}});Object.defineProperty(R,"NotificationType3",{enumerable:!0,get:function(){return Se.NotificationType3}});Object.defineProperty(R,"NotificationType4",{enumerable:!0,get:function(){return Se.NotificationType4}});Object.defineProperty(R,"NotificationType5",{enumerable:!0,get:function(){return Se.NotificationType5}});Object.defineProperty(R,"NotificationType6",{enumerable:!0,get:function(){return Se.NotificationType6}});Object.defineProperty(R,"NotificationType7",{enumerable:!0,get:function(){return Se.NotificationType7}});Object.defineProperty(R,"NotificationType8",{enumerable:!0,get:function(){return Se.NotificationType8}});Object.defineProperty(R,"NotificationType9",{enumerable:!0,get:function(){return Se.NotificationType9}});Object.defineProperty(R,"ParameterStructures",{enumerable:!0,get:function(){return Se.ParameterStructures}});var Lp=hp();Object.defineProperty(R,"LinkedMap",{enumerable:!0,get:function(){return Lp.LinkedMap}});Object.defineProperty(R,"LRUCache",{enumerable:!0,get:function(){return Lp.LRUCache}});Object.defineProperty(R,"Touch",{enumerable:!0,get:function(){return Lp.Touch}});var c$=fy();Object.defineProperty(R,"Disposable",{enumerable:!0,get:function(){return c$.Disposable}});var ky=ci();Object.defineProperty(R,"Event",{enumerable:!0,get:function(){return ky.Event}});Object.defineProperty(R,"Emitter",{enumerable:!0,get:function(){return ky.Emitter}});var Ny=Ka();Object.defineProperty(R,"CancellationTokenSource",{enumerable:!0,get:function(){return Ny.CancellationTokenSource}});Object.defineProperty(R,"CancellationToken",{enumerable:!0,get:function(){return Ny.CancellationToken}});var Cy=dy();Object.defineProperty(R,"SharedArraySenderStrategy",{enumerable:!0,get:function(){return Cy.SharedArraySenderStrategy}});Object.defineProperty(R,"SharedArrayReceiverStrategy",{enumerable:!0,get:function(){return Cy.SharedArrayReceiverStrategy}});var Dp=hy();Object.defineProperty(R,"MessageReader",{enumerable:!0,get:function(){return Dp.MessageReader}});Object.defineProperty(R,"AbstractMessageReader",{enumerable:!0,get:function(){return Dp.AbstractMessageReader}});Object.defineProperty(R,"ReadableStreamMessageReader",{enumerable:!0,get:function(){return Dp.ReadableStreamMessageReader}});var Mp=Ry();Object.defineProperty(R,"MessageWriter",{enumerable:!0,get:function(){return Mp.MessageWriter}});Object.defineProperty(R,"AbstractMessageWriter",{enumerable:!0,get:function(){return Mp.AbstractMessageWriter}});Object.defineProperty(R,"WriteableStreamMessageWriter",{enumerable:!0,get:function(){return Mp.WriteableStreamMessageWriter}});var l$=xy();Object.defineProperty(R,"AbstractMessageBuffer",{enumerable:!0,get:function(){return l$.AbstractMessageBuffer}});var ut=Sy();Object.defineProperty(R,"ConnectionStrategy",{enumerable:!0,get:function(){return ut.ConnectionStrategy}});Object.defineProperty(R,"ConnectionOptions",{enumerable:!0,get:function(){return ut.ConnectionOptions}});Object.defineProperty(R,"NullLogger",{enumerable:!0,get:function(){return ut.NullLogger}});Object.defineProperty(R,"createMessageConnection",{enumerable:!0,get:function(){return ut.createMessageConnection}});Object.defineProperty(R,"ProgressToken",{enumerable:!0,get:function(){return ut.ProgressToken}});Object.defineProperty(R,"ProgressType",{enumerable:!0,get:function(){return ut.ProgressType}});Object.defineProperty(R,"Trace",{enumerable:!0,get:function(){return ut.Trace}});Object.defineProperty(R,"TraceValues",{enumerable:!0,get:function(){return ut.TraceValues}});Object.defineProperty(R,"TraceFormat",{enumerable:!0,get:function(){return ut.TraceFormat}});Object.defineProperty(R,"SetTraceNotification",{enumerable:!0,get:function(){return ut.SetTraceNotification}});Object.defineProperty(R,"LogTraceNotification",{enumerable:!0,get:function(){return ut.LogTraceNotification}});Object.defineProperty(R,"ConnectionErrors",{enumerable:!0,get:function(){return ut.ConnectionErrors}});Object.defineProperty(R,"ConnectionError",{enumerable:!0,get:function(){return ut.ConnectionError}});Object.defineProperty(R,"CancellationReceiverStrategy",{enumerable:!0,get:function(){return ut.CancellationReceiverStrategy}});Object.defineProperty(R,"CancellationSenderStrategy",{enumerable:!0,get:function(){return ut.CancellationSenderStrategy}});Object.defineProperty(R,"CancellationStrategy",{enumerable:!0,get:function(){return ut.CancellationStrategy}});Object.defineProperty(R,"MessageStrategy",{enumerable:!0,get:function(){return ut.MessageStrategy}});var u$=Rn();R.RAL=u$.default});var Iy=X(qp=>{"use strict";Object.defineProperty(qp,"__esModule",{value:!0});var Nr=_l(),bl=class t extends Nr.AbstractMessageBuffer{constructor(e="utf-8"){super(e),this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return t.emptyBuffer}fromString(e,r){return new TextEncoder().encode(e)}toString(e,r){return r==="ascii"?this.asciiDecoder.decode(e):new TextDecoder(r).decode(e)}asNative(e,r){return r===void 0?e:e.slice(0,r)}allocNative(e){return new Uint8Array(e)}};bl.emptyBuffer=new Uint8Array(0);var Fp=class{constructor(e){this.socket=e,this._onData=new Nr.Emitter,this._messageListener=r=>{r.data.arrayBuffer().then(i=>{this._onData.fire(new Uint8Array(i))},()=>{(0,Nr.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(e){return this.socket.addEventListener("close",e),Nr.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),Nr.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),Nr.Disposable.create(()=>this.socket.removeEventListener("end",e))}onData(e){return this._onData.event(e)}},Gp=class{constructor(e){this.socket=e}onClose(e){return this.socket.addEventListener("close",e),Nr.Disposable.create(()=>this.socket.removeEventListener("close",e))}onError(e){return this.socket.addEventListener("error",e),Nr.Disposable.create(()=>this.socket.removeEventListener("error",e))}onEnd(e){return this.socket.addEventListener("end",e),Nr.Disposable.create(()=>this.socket.removeEventListener("end",e))}write(e,r){if(typeof e=="string"){if(r!==void 0&&r!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${r}`);this.socket.send(e)}else this.socket.send(e);return Promise.resolve()}end(){this.socket.close()}},f$=new TextEncoder,wy=Object.freeze({messageBuffer:Object.freeze({create:t=>new bl(t)}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:(t,e)=>{if(e.charset!=="utf-8")throw new Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${e.charset}`);return Promise.resolve(f$.encode(JSON.stringify(t,void 0,0)))}}),decoder:Object.freeze({name:"application/json",decode:(t,e)=>{if(!(t instanceof Uint8Array))throw new Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(e.charset).decode(t)))}})}),stream:Object.freeze({asReadableStream:t=>new Fp(t),asWritableStream:t=>new Gp(t)}),console,timer:Object.freeze({setTimeout(t,e,...r){let n=setTimeout(t,e,...r);return{dispose:()=>clearTimeout(n)}},setImmediate(t,...e){let r=setTimeout(t,0,...e);return{dispose:()=>clearTimeout(r)}},setInterval(t,e,...r){let n=setInterval(t,e,...r);return{dispose:()=>clearInterval(n)}}})});function Up(){return wy}(function(t){function e(){Nr.RAL.install(wy)}t.install=e})(Up||(Up={}));qp.default=Up});var hi=X(Vt=>{"use strict";var d$=Vt&&Vt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),p$=Vt&&Vt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&d$(e,t,r)};Object.defineProperty(Vt,"__esModule",{value:!0});Vt.createMessageConnection=Vt.BrowserMessageWriter=Vt.BrowserMessageReader=void 0;var h$=Iy();h$.default.install();var vs=_l();p$(_l(),Vt);var zp=class extends vs.AbstractMessageReader{constructor(e){super(),this._onData=new vs.Emitter,this._messageListener=r=>{this._onData.fire(r.data)},e.addEventListener("error",r=>this.fireError(r)),e.onmessage=this._messageListener}listen(e){return this._onData.event(e)}};Vt.BrowserMessageReader=zp;var jp=class extends vs.AbstractMessageWriter{constructor(e){super(),this.port=e,this.errorCount=0,e.addEventListener("error",r=>this.fireError(r))}write(e){try{return this.port.postMessage(e),Promise.resolve()}catch(r){return this.handleError(r,e),Promise.reject(r)}}handleError(e,r){this.errorCount++,this.fireError(e,r,this.errorCount)}end(){}};Vt.BrowserMessageWriter=jp;function m$(t,e,r,n){return r===void 0&&(r=vs.NullLogger),vs.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,vs.createMessageConnection)(t,e,r,n)}Vt.createMessageConnection=m$});var Bp=X((eP,_y)=>{"use strict";_y.exports=hi()});var _e=X(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.ProtocolNotificationType=Dt.ProtocolNotificationType0=Dt.ProtocolRequestType=Dt.ProtocolRequestType0=Dt.RegistrationType=Dt.MessageDirection=void 0;var Es=hi(),by=(function(t){return t.clientToServer="clientToServer",t.serverToClient="serverToClient",t.both="both",t})(by||(Dt.MessageDirection=by={})),Wp=class{constructor(e){this.method=e}};Dt.RegistrationType=Wp;var Vp=class extends Es.RequestType0{constructor(e){super(e)}};Dt.ProtocolRequestType0=Vp;var Kp=class extends Es.RequestType{constructor(e){super(e,Es.ParameterStructures.byName)}};Dt.ProtocolRequestType=Kp;var Hp=class extends Es.NotificationType0{constructor(e){super(e)}};Dt.ProtocolNotificationType0=Hp;var Yp=class extends Es.NotificationType{constructor(e){super(e,Es.ParameterStructures.byName)}};Dt.ProtocolNotificationType=Yp});var Pl=X(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.objectLiteral=Xe.typedArray=Xe.stringArray=Xe.array=Xe.func=Xe.error=Xe.number=Xe.string=Xe.boolean=void 0;function g$(t){return t===!0||t===!1}Xe.boolean=g$;function Py(t){return typeof t=="string"||t instanceof String}Xe.string=Py;function y$(t){return typeof t=="number"||t instanceof Number}Xe.number=y$;function T$(t){return t instanceof Error}Xe.error=T$;function R$(t){return typeof t=="function"}Xe.func=R$;function Oy(t){return Array.isArray(t)}Xe.array=Oy;function x$(t){return Oy(t)&&t.every(e=>Py(e))}Xe.stringArray=x$;function v$(t,e){return Array.isArray(t)&&t.every(e)}Xe.typedArray=v$;function E$(t){return t!==null&&typeof t=="object"}Xe.objectLiteral=E$});var My=X(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});Ol.ImplementationRequest=void 0;var Ly=_e(),Dy;(function(t){t.method="textDocument/implementation",t.messageDirection=Ly.MessageDirection.clientToServer,t.type=new Ly.ProtocolRequestType(t.method)})(Dy||(Ol.ImplementationRequest=Dy={}))});var Uy=X(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});Ll.TypeDefinitionRequest=void 0;var Fy=_e(),Gy;(function(t){t.method="textDocument/typeDefinition",t.messageDirection=Fy.MessageDirection.clientToServer,t.type=new Fy.ProtocolRequestType(t.method)})(Gy||(Ll.TypeDefinitionRequest=Gy={}))});var jy=X(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});As.DidChangeWorkspaceFoldersNotification=As.WorkspaceFoldersRequest=void 0;var Dl=_e(),qy;(function(t){t.method="workspace/workspaceFolders",t.messageDirection=Dl.MessageDirection.serverToClient,t.type=new Dl.ProtocolRequestType0(t.method)})(qy||(As.WorkspaceFoldersRequest=qy={}));var zy;(function(t){t.method="workspace/didChangeWorkspaceFolders",t.messageDirection=Dl.MessageDirection.clientToServer,t.type=new Dl.ProtocolNotificationType(t.method)})(zy||(As.DidChangeWorkspaceFoldersNotification=zy={}))});var Vy=X(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});Ml.ConfigurationRequest=void 0;var By=_e(),Wy;(function(t){t.method="workspace/configuration",t.messageDirection=By.MessageDirection.serverToClient,t.type=new By.ProtocolRequestType(t.method)})(Wy||(Ml.ConfigurationRequest=Wy={}))});var Yy=X($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});$s.ColorPresentationRequest=$s.DocumentColorRequest=void 0;var Fl=_e(),Ky;(function(t){t.method="textDocument/documentColor",t.messageDirection=Fl.MessageDirection.clientToServer,t.type=new Fl.ProtocolRequestType(t.method)})(Ky||($s.DocumentColorRequest=Ky={}));var Hy;(function(t){t.method="textDocument/colorPresentation",t.messageDirection=Fl.MessageDirection.clientToServer,t.type=new Fl.ProtocolRequestType(t.method)})(Hy||($s.ColorPresentationRequest=Hy={}))});var Qy=X(Ss=>{"use strict";Object.defineProperty(Ss,"__esModule",{value:!0});Ss.FoldingRangeRefreshRequest=Ss.FoldingRangeRequest=void 0;var Gl=_e(),Xy;(function(t){t.method="textDocument/foldingRange",t.messageDirection=Gl.MessageDirection.clientToServer,t.type=new Gl.ProtocolRequestType(t.method)})(Xy||(Ss.FoldingRangeRequest=Xy={}));var Jy;(function(t){t.method="workspace/foldingRange/refresh",t.messageDirection=Gl.MessageDirection.serverToClient,t.type=new Gl.ProtocolRequestType0(t.method)})(Jy||(Ss.FoldingRangeRefreshRequest=Jy={}))});var tT=X(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});Ul.DeclarationRequest=void 0;var Zy=_e(),eT;(function(t){t.method="textDocument/declaration",t.messageDirection=Zy.MessageDirection.clientToServer,t.type=new Zy.ProtocolRequestType(t.method)})(eT||(Ul.DeclarationRequest=eT={}))});var iT=X(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});ql.SelectionRangeRequest=void 0;var rT=_e(),nT;(function(t){t.method="textDocument/selectionRange",t.messageDirection=rT.MessageDirection.clientToServer,t.type=new rT.ProtocolRequestType(t.method)})(nT||(ql.SelectionRangeRequest=nT={}))});var cT=X(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.WorkDoneProgressCancelNotification=An.WorkDoneProgressCreateRequest=An.WorkDoneProgress=void 0;var A$=hi(),zl=_e(),sT;(function(t){t.type=new A$.ProgressType;function e(r){return r===t.type}t.is=e})(sT||(An.WorkDoneProgress=sT={}));var aT;(function(t){t.method="window/workDoneProgress/create",t.messageDirection=zl.MessageDirection.serverToClient,t.type=new zl.ProtocolRequestType(t.method)})(aT||(An.WorkDoneProgressCreateRequest=aT={}));var oT;(function(t){t.method="window/workDoneProgress/cancel",t.messageDirection=zl.MessageDirection.clientToServer,t.type=new zl.ProtocolNotificationType(t.method)})(oT||(An.WorkDoneProgressCancelNotification=oT={}))});var dT=X($n=>{"use strict";Object.defineProperty($n,"__esModule",{value:!0});$n.CallHierarchyOutgoingCallsRequest=$n.CallHierarchyIncomingCallsRequest=$n.CallHierarchyPrepareRequest=void 0;var ks=_e(),lT;(function(t){t.method="textDocument/prepareCallHierarchy",t.messageDirection=ks.MessageDirection.clientToServer,t.type=new ks.ProtocolRequestType(t.method)})(lT||($n.CallHierarchyPrepareRequest=lT={}));var uT;(function(t){t.method="callHierarchy/incomingCalls",t.messageDirection=ks.MessageDirection.clientToServer,t.type=new ks.ProtocolRequestType(t.method)})(uT||($n.CallHierarchyIncomingCallsRequest=uT={}));var fT;(function(t){t.method="callHierarchy/outgoingCalls",t.messageDirection=ks.MessageDirection.clientToServer,t.type=new ks.ProtocolRequestType(t.method)})(fT||($n.CallHierarchyOutgoingCallsRequest=fT={}))});var TT=X(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.SemanticTokensRefreshRequest=Mt.SemanticTokensRangeRequest=Mt.SemanticTokensDeltaRequest=Mt.SemanticTokensRequest=Mt.SemanticTokensRegistrationType=Mt.TokenFormat=void 0;var Qr=_e(),pT=(function(t){return t.Relative="relative",t})(pT||(Mt.TokenFormat=pT={})),yo;(function(t){t.method="textDocument/semanticTokens",t.type=new Qr.RegistrationType(t.method)})(yo||(Mt.SemanticTokensRegistrationType=yo={}));var hT;(function(t){t.method="textDocument/semanticTokens/full",t.messageDirection=Qr.MessageDirection.clientToServer,t.type=new Qr.ProtocolRequestType(t.method),t.registrationMethod=yo.method})(hT||(Mt.SemanticTokensRequest=hT={}));var mT;(function(t){t.method="textDocument/semanticTokens/full/delta",t.messageDirection=Qr.MessageDirection.clientToServer,t.type=new Qr.ProtocolRequestType(t.method),t.registrationMethod=yo.method})(mT||(Mt.SemanticTokensDeltaRequest=mT={}));var gT;(function(t){t.method="textDocument/semanticTokens/range",t.messageDirection=Qr.MessageDirection.clientToServer,t.type=new Qr.ProtocolRequestType(t.method),t.registrationMethod=yo.method})(gT||(Mt.SemanticTokensRangeRequest=gT={}));var yT;(function(t){t.method="workspace/semanticTokens/refresh",t.messageDirection=Qr.MessageDirection.serverToClient,t.type=new Qr.ProtocolRequestType0(t.method)})(yT||(Mt.SemanticTokensRefreshRequest=yT={}))});var vT=X(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});jl.ShowDocumentRequest=void 0;var RT=_e(),xT;(function(t){t.method="window/showDocument",t.messageDirection=RT.MessageDirection.serverToClient,t.type=new RT.ProtocolRequestType(t.method)})(xT||(jl.ShowDocumentRequest=xT={}))});var $T=X(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});Bl.LinkedEditingRangeRequest=void 0;var ET=_e(),AT;(function(t){t.method="textDocument/linkedEditingRange",t.messageDirection=ET.MessageDirection.clientToServer,t.type=new ET.ProtocolRequestType(t.method)})(AT||(Bl.LinkedEditingRangeRequest=AT={}))});var bT=X(vt=>{"use strict";Object.defineProperty(vt,"__esModule",{value:!0});vt.WillDeleteFilesRequest=vt.DidDeleteFilesNotification=vt.DidRenameFilesNotification=vt.WillRenameFilesRequest=vt.DidCreateFilesNotification=vt.WillCreateFilesRequest=vt.FileOperationPatternKind=void 0;var Xt=_e(),ST=(function(t){return t.file="file",t.folder="folder",t})(ST||(vt.FileOperationPatternKind=ST={})),kT;(function(t){t.method="workspace/willCreateFiles",t.messageDirection=Xt.MessageDirection.clientToServer,t.type=new Xt.ProtocolRequestType(t.method)})(kT||(vt.WillCreateFilesRequest=kT={}));var NT;(function(t){t.method="workspace/didCreateFiles",t.messageDirection=Xt.MessageDirection.clientToServer,t.type=new Xt.ProtocolNotificationType(t.method)})(NT||(vt.DidCreateFilesNotification=NT={}));var CT;(function(t){t.method="workspace/willRenameFiles",t.messageDirection=Xt.MessageDirection.clientToServer,t.type=new Xt.ProtocolRequestType(t.method)})(CT||(vt.WillRenameFilesRequest=CT={}));var wT;(function(t){t.method="workspace/didRenameFiles",t.messageDirection=Xt.MessageDirection.clientToServer,t.type=new Xt.ProtocolNotificationType(t.method)})(wT||(vt.DidRenameFilesNotification=wT={}));var IT;(function(t){t.method="workspace/didDeleteFiles",t.messageDirection=Xt.MessageDirection.clientToServer,t.type=new Xt.ProtocolNotificationType(t.method)})(IT||(vt.DidDeleteFilesNotification=IT={}));var _T;(function(t){t.method="workspace/willDeleteFiles",t.messageDirection=Xt.MessageDirection.clientToServer,t.type=new Xt.ProtocolRequestType(t.method)})(_T||(vt.WillDeleteFilesRequest=_T={}))});var MT=X(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.MonikerRequest=Sn.MonikerKind=Sn.UniquenessLevel=void 0;var PT=_e(),OT=(function(t){return t.document="document",t.project="project",t.group="group",t.scheme="scheme",t.global="global",t})(OT||(Sn.UniquenessLevel=OT={})),LT=(function(t){return t.$import="import",t.$export="export",t.local="local",t})(LT||(Sn.MonikerKind=LT={})),DT;(function(t){t.method="textDocument/moniker",t.messageDirection=PT.MessageDirection.clientToServer,t.type=new PT.ProtocolRequestType(t.method)})(DT||(Sn.MonikerRequest=DT={}))});var qT=X(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.TypeHierarchySubtypesRequest=kn.TypeHierarchySupertypesRequest=kn.TypeHierarchyPrepareRequest=void 0;var Ns=_e(),FT;(function(t){t.method="textDocument/prepareTypeHierarchy",t.messageDirection=Ns.MessageDirection.clientToServer,t.type=new Ns.ProtocolRequestType(t.method)})(FT||(kn.TypeHierarchyPrepareRequest=FT={}));var GT;(function(t){t.method="typeHierarchy/supertypes",t.messageDirection=Ns.MessageDirection.clientToServer,t.type=new Ns.ProtocolRequestType(t.method)})(GT||(kn.TypeHierarchySupertypesRequest=GT={}));var UT;(function(t){t.method="typeHierarchy/subtypes",t.messageDirection=Ns.MessageDirection.clientToServer,t.type=new Ns.ProtocolRequestType(t.method)})(UT||(kn.TypeHierarchySubtypesRequest=UT={}))});var BT=X(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.InlineValueRefreshRequest=Cs.InlineValueRequest=void 0;var Wl=_e(),zT;(function(t){t.method="textDocument/inlineValue",t.messageDirection=Wl.MessageDirection.clientToServer,t.type=new Wl.ProtocolRequestType(t.method)})(zT||(Cs.InlineValueRequest=zT={}));var jT;(function(t){t.method="workspace/inlineValue/refresh",t.messageDirection=Wl.MessageDirection.serverToClient,t.type=new Wl.ProtocolRequestType0(t.method)})(jT||(Cs.InlineValueRefreshRequest=jT={}))});var HT=X(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.InlayHintRefreshRequest=Nn.InlayHintResolveRequest=Nn.InlayHintRequest=void 0;var ws=_e(),WT;(function(t){t.method="textDocument/inlayHint",t.messageDirection=ws.MessageDirection.clientToServer,t.type=new ws.ProtocolRequestType(t.method)})(WT||(Nn.InlayHintRequest=WT={}));var VT;(function(t){t.method="inlayHint/resolve",t.messageDirection=ws.MessageDirection.clientToServer,t.type=new ws.ProtocolRequestType(t.method)})(VT||(Nn.InlayHintResolveRequest=VT={}));var KT;(function(t){t.method="workspace/inlayHint/refresh",t.messageDirection=ws.MessageDirection.serverToClient,t.type=new ws.ProtocolRequestType0(t.method)})(KT||(Nn.InlayHintRefreshRequest=KT={}))});var tR=X(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.DiagnosticRefreshRequest=Jt.WorkspaceDiagnosticRequest=Jt.DocumentDiagnosticRequest=Jt.DocumentDiagnosticReportKind=Jt.DiagnosticServerCancellationData=void 0;var eR=hi(),$$=Pl(),Is=_e(),YT;(function(t){function e(r){let n=r;return n&&$$.boolean(n.retriggerRequest)}t.is=e})(YT||(Jt.DiagnosticServerCancellationData=YT={}));var XT=(function(t){return t.Full="full",t.Unchanged="unchanged",t})(XT||(Jt.DocumentDiagnosticReportKind=XT={})),JT;(function(t){t.method="textDocument/diagnostic",t.messageDirection=Is.MessageDirection.clientToServer,t.type=new Is.ProtocolRequestType(t.method),t.partialResult=new eR.ProgressType})(JT||(Jt.DocumentDiagnosticRequest=JT={}));var QT;(function(t){t.method="workspace/diagnostic",t.messageDirection=Is.MessageDirection.clientToServer,t.type=new Is.ProtocolRequestType(t.method),t.partialResult=new eR.ProgressType})(QT||(Jt.WorkspaceDiagnosticRequest=QT={}));var ZT;(function(t){t.method="workspace/diagnostic/refresh",t.messageDirection=Is.MessageDirection.serverToClient,t.type=new Is.ProtocolRequestType0(t.method)})(ZT||(Jt.DiagnosticRefreshRequest=ZT={}))});var cR=X(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.DidCloseNotebookDocumentNotification=ze.DidSaveNotebookDocumentNotification=ze.DidChangeNotebookDocumentNotification=ze.NotebookCellArrayChange=ze.DidOpenNotebookDocumentNotification=ze.NotebookDocumentSyncRegistrationType=ze.NotebookDocument=ze.NotebookCell=ze.ExecutionSummary=ze.NotebookCellKind=void 0;var To=(as(),pu(il)),ur=Pl(),Cr=_e(),Xp;(function(t){t.Markup=1,t.Code=2;function e(r){return r===1||r===2}t.is=e})(Xp||(ze.NotebookCellKind=Xp={}));var Jp;(function(t){function e(i,s){let a={executionOrder:i};return(s===!0||s===!1)&&(a.success=s),a}t.create=e;function r(i){let s=i;return ur.objectLiteral(s)&&To.uinteger.is(s.executionOrder)&&(s.success===void 0||ur.boolean(s.success))}t.is=r;function n(i,s){return i===s?!0:i==null||s===null||s===void 0?!1:i.executionOrder===s.executionOrder&&i.success===s.success}t.equals=n})(Jp||(ze.ExecutionSummary=Jp={}));var Vl;(function(t){function e(s,a){return{kind:s,document:a}}t.create=e;function r(s){let a=s;return ur.objectLiteral(a)&&Xp.is(a.kind)&&To.DocumentUri.is(a.document)&&(a.metadata===void 0||ur.objectLiteral(a.metadata))}t.is=r;function n(s,a){let o=new Set;return s.document!==a.document&&o.add("document"),s.kind!==a.kind&&o.add("kind"),s.executionSummary!==a.executionSummary&&o.add("executionSummary"),(s.metadata!==void 0||a.metadata!==void 0)&&!i(s.metadata,a.metadata)&&o.add("metadata"),(s.executionSummary!==void 0||a.executionSummary!==void 0)&&!Jp.equals(s.executionSummary,a.executionSummary)&&o.add("executionSummary"),o}t.diff=n;function i(s,a){if(s===a)return!0;if(s==null||a===null||a===void 0||typeof s!=typeof a||typeof s!="object")return!1;let o=Array.isArray(s),c=Array.isArray(a);if(o!==c)return!1;if(o&&c){if(s.length!==a.length)return!1;for(let l=0;l{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});Kl.InlineCompletionRequest=void 0;var lR=_e(),uR;(function(t){t.method="textDocument/inlineCompletion",t.messageDirection=lR.MessageDirection.clientToServer,t.type=new lR.ProtocolRequestType(t.method)})(uR||(Kl.InlineCompletionRequest=uR={}))});var $x=X(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.WorkspaceSymbolRequest=f.CodeActionResolveRequest=f.CodeActionRequest=f.DocumentSymbolRequest=f.DocumentHighlightRequest=f.ReferencesRequest=f.DefinitionRequest=f.SignatureHelpRequest=f.SignatureHelpTriggerKind=f.HoverRequest=f.CompletionResolveRequest=f.CompletionRequest=f.CompletionTriggerKind=f.PublishDiagnosticsNotification=f.WatchKind=f.RelativePattern=f.FileChangeType=f.DidChangeWatchedFilesNotification=f.WillSaveTextDocumentWaitUntilRequest=f.WillSaveTextDocumentNotification=f.TextDocumentSaveReason=f.DidSaveTextDocumentNotification=f.DidCloseTextDocumentNotification=f.DidChangeTextDocumentNotification=f.TextDocumentContentChangeEvent=f.DidOpenTextDocumentNotification=f.TextDocumentSyncKind=f.TelemetryEventNotification=f.LogMessageNotification=f.ShowMessageRequest=f.ShowMessageNotification=f.MessageType=f.DidChangeConfigurationNotification=f.ExitNotification=f.ShutdownRequest=f.InitializedNotification=f.InitializeErrorCodes=f.InitializeRequest=f.WorkDoneProgressOptions=f.TextDocumentRegistrationOptions=f.StaticRegistrationOptions=f.PositionEncodingKind=f.FailureHandlingKind=f.ResourceOperationKind=f.UnregistrationRequest=f.RegistrationRequest=f.DocumentSelector=f.NotebookCellTextDocumentFilter=f.NotebookDocumentFilter=f.TextDocumentFilter=void 0;f.MonikerRequest=f.MonikerKind=f.UniquenessLevel=f.WillDeleteFilesRequest=f.DidDeleteFilesNotification=f.WillRenameFilesRequest=f.DidRenameFilesNotification=f.WillCreateFilesRequest=f.DidCreateFilesNotification=f.FileOperationPatternKind=f.LinkedEditingRangeRequest=f.ShowDocumentRequest=f.SemanticTokensRegistrationType=f.SemanticTokensRefreshRequest=f.SemanticTokensRangeRequest=f.SemanticTokensDeltaRequest=f.SemanticTokensRequest=f.TokenFormat=f.CallHierarchyPrepareRequest=f.CallHierarchyOutgoingCallsRequest=f.CallHierarchyIncomingCallsRequest=f.WorkDoneProgressCancelNotification=f.WorkDoneProgressCreateRequest=f.WorkDoneProgress=f.SelectionRangeRequest=f.DeclarationRequest=f.FoldingRangeRefreshRequest=f.FoldingRangeRequest=f.ColorPresentationRequest=f.DocumentColorRequest=f.ConfigurationRequest=f.DidChangeWorkspaceFoldersNotification=f.WorkspaceFoldersRequest=f.TypeDefinitionRequest=f.ImplementationRequest=f.ApplyWorkspaceEditRequest=f.ExecuteCommandRequest=f.PrepareRenameRequest=f.RenameRequest=f.PrepareSupportDefaultBehavior=f.DocumentOnTypeFormattingRequest=f.DocumentRangesFormattingRequest=f.DocumentRangeFormattingRequest=f.DocumentFormattingRequest=f.DocumentLinkResolveRequest=f.DocumentLinkRequest=f.CodeLensRefreshRequest=f.CodeLensResolveRequest=f.CodeLensRequest=f.WorkspaceSymbolResolveRequest=void 0;f.InlineCompletionRequest=f.DidCloseNotebookDocumentNotification=f.DidSaveNotebookDocumentNotification=f.DidChangeNotebookDocumentNotification=f.NotebookCellArrayChange=f.DidOpenNotebookDocumentNotification=f.NotebookDocumentSyncRegistrationType=f.NotebookDocument=f.NotebookCell=f.ExecutionSummary=f.NotebookCellKind=f.DiagnosticRefreshRequest=f.WorkspaceDiagnosticRequest=f.DocumentDiagnosticRequest=f.DocumentDiagnosticReportKind=f.DiagnosticServerCancellationData=f.InlayHintRefreshRequest=f.InlayHintResolveRequest=f.InlayHintRequest=f.InlineValueRefreshRequest=f.InlineValueRequest=f.TypeHierarchySupertypesRequest=f.TypeHierarchySubtypesRequest=f.TypeHierarchyPrepareRequest=void 0;var S=_e(),dR=(as(),pu(il)),at=Pl(),S$=My();Object.defineProperty(f,"ImplementationRequest",{enumerable:!0,get:function(){return S$.ImplementationRequest}});var k$=Uy();Object.defineProperty(f,"TypeDefinitionRequest",{enumerable:!0,get:function(){return k$.TypeDefinitionRequest}});var xx=jy();Object.defineProperty(f,"WorkspaceFoldersRequest",{enumerable:!0,get:function(){return xx.WorkspaceFoldersRequest}});Object.defineProperty(f,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:function(){return xx.DidChangeWorkspaceFoldersNotification}});var N$=Vy();Object.defineProperty(f,"ConfigurationRequest",{enumerable:!0,get:function(){return N$.ConfigurationRequest}});var vx=Yy();Object.defineProperty(f,"DocumentColorRequest",{enumerable:!0,get:function(){return vx.DocumentColorRequest}});Object.defineProperty(f,"ColorPresentationRequest",{enumerable:!0,get:function(){return vx.ColorPresentationRequest}});var Ex=Qy();Object.defineProperty(f,"FoldingRangeRequest",{enumerable:!0,get:function(){return Ex.FoldingRangeRequest}});Object.defineProperty(f,"FoldingRangeRefreshRequest",{enumerable:!0,get:function(){return Ex.FoldingRangeRefreshRequest}});var C$=tT();Object.defineProperty(f,"DeclarationRequest",{enumerable:!0,get:function(){return C$.DeclarationRequest}});var w$=iT();Object.defineProperty(f,"SelectionRangeRequest",{enumerable:!0,get:function(){return w$.SelectionRangeRequest}});var rh=cT();Object.defineProperty(f,"WorkDoneProgress",{enumerable:!0,get:function(){return rh.WorkDoneProgress}});Object.defineProperty(f,"WorkDoneProgressCreateRequest",{enumerable:!0,get:function(){return rh.WorkDoneProgressCreateRequest}});Object.defineProperty(f,"WorkDoneProgressCancelNotification",{enumerable:!0,get:function(){return rh.WorkDoneProgressCancelNotification}});var nh=dT();Object.defineProperty(f,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:function(){return nh.CallHierarchyIncomingCallsRequest}});Object.defineProperty(f,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:function(){return nh.CallHierarchyOutgoingCallsRequest}});Object.defineProperty(f,"CallHierarchyPrepareRequest",{enumerable:!0,get:function(){return nh.CallHierarchyPrepareRequest}});var bs=TT();Object.defineProperty(f,"TokenFormat",{enumerable:!0,get:function(){return bs.TokenFormat}});Object.defineProperty(f,"SemanticTokensRequest",{enumerable:!0,get:function(){return bs.SemanticTokensRequest}});Object.defineProperty(f,"SemanticTokensDeltaRequest",{enumerable:!0,get:function(){return bs.SemanticTokensDeltaRequest}});Object.defineProperty(f,"SemanticTokensRangeRequest",{enumerable:!0,get:function(){return bs.SemanticTokensRangeRequest}});Object.defineProperty(f,"SemanticTokensRefreshRequest",{enumerable:!0,get:function(){return bs.SemanticTokensRefreshRequest}});Object.defineProperty(f,"SemanticTokensRegistrationType",{enumerable:!0,get:function(){return bs.SemanticTokensRegistrationType}});var I$=vT();Object.defineProperty(f,"ShowDocumentRequest",{enumerable:!0,get:function(){return I$.ShowDocumentRequest}});var _$=$T();Object.defineProperty(f,"LinkedEditingRangeRequest",{enumerable:!0,get:function(){return _$.LinkedEditingRangeRequest}});var mi=bT();Object.defineProperty(f,"FileOperationPatternKind",{enumerable:!0,get:function(){return mi.FileOperationPatternKind}});Object.defineProperty(f,"DidCreateFilesNotification",{enumerable:!0,get:function(){return mi.DidCreateFilesNotification}});Object.defineProperty(f,"WillCreateFilesRequest",{enumerable:!0,get:function(){return mi.WillCreateFilesRequest}});Object.defineProperty(f,"DidRenameFilesNotification",{enumerable:!0,get:function(){return mi.DidRenameFilesNotification}});Object.defineProperty(f,"WillRenameFilesRequest",{enumerable:!0,get:function(){return mi.WillRenameFilesRequest}});Object.defineProperty(f,"DidDeleteFilesNotification",{enumerable:!0,get:function(){return mi.DidDeleteFilesNotification}});Object.defineProperty(f,"WillDeleteFilesRequest",{enumerable:!0,get:function(){return mi.WillDeleteFilesRequest}});var ih=MT();Object.defineProperty(f,"UniquenessLevel",{enumerable:!0,get:function(){return ih.UniquenessLevel}});Object.defineProperty(f,"MonikerKind",{enumerable:!0,get:function(){return ih.MonikerKind}});Object.defineProperty(f,"MonikerRequest",{enumerable:!0,get:function(){return ih.MonikerRequest}});var sh=qT();Object.defineProperty(f,"TypeHierarchyPrepareRequest",{enumerable:!0,get:function(){return sh.TypeHierarchyPrepareRequest}});Object.defineProperty(f,"TypeHierarchySubtypesRequest",{enumerable:!0,get:function(){return sh.TypeHierarchySubtypesRequest}});Object.defineProperty(f,"TypeHierarchySupertypesRequest",{enumerable:!0,get:function(){return sh.TypeHierarchySupertypesRequest}});var Ax=BT();Object.defineProperty(f,"InlineValueRequest",{enumerable:!0,get:function(){return Ax.InlineValueRequest}});Object.defineProperty(f,"InlineValueRefreshRequest",{enumerable:!0,get:function(){return Ax.InlineValueRefreshRequest}});var ah=HT();Object.defineProperty(f,"InlayHintRequest",{enumerable:!0,get:function(){return ah.InlayHintRequest}});Object.defineProperty(f,"InlayHintResolveRequest",{enumerable:!0,get:function(){return ah.InlayHintResolveRequest}});Object.defineProperty(f,"InlayHintRefreshRequest",{enumerable:!0,get:function(){return ah.InlayHintRefreshRequest}});var Ro=tR();Object.defineProperty(f,"DiagnosticServerCancellationData",{enumerable:!0,get:function(){return Ro.DiagnosticServerCancellationData}});Object.defineProperty(f,"DocumentDiagnosticReportKind",{enumerable:!0,get:function(){return Ro.DocumentDiagnosticReportKind}});Object.defineProperty(f,"DocumentDiagnosticRequest",{enumerable:!0,get:function(){return Ro.DocumentDiagnosticRequest}});Object.defineProperty(f,"WorkspaceDiagnosticRequest",{enumerable:!0,get:function(){return Ro.WorkspaceDiagnosticRequest}});Object.defineProperty(f,"DiagnosticRefreshRequest",{enumerable:!0,get:function(){return Ro.DiagnosticRefreshRequest}});var wr=cR();Object.defineProperty(f,"NotebookCellKind",{enumerable:!0,get:function(){return wr.NotebookCellKind}});Object.defineProperty(f,"ExecutionSummary",{enumerable:!0,get:function(){return wr.ExecutionSummary}});Object.defineProperty(f,"NotebookCell",{enumerable:!0,get:function(){return wr.NotebookCell}});Object.defineProperty(f,"NotebookDocument",{enumerable:!0,get:function(){return wr.NotebookDocument}});Object.defineProperty(f,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:function(){return wr.NotebookDocumentSyncRegistrationType}});Object.defineProperty(f,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:function(){return wr.DidOpenNotebookDocumentNotification}});Object.defineProperty(f,"NotebookCellArrayChange",{enumerable:!0,get:function(){return wr.NotebookCellArrayChange}});Object.defineProperty(f,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:function(){return wr.DidChangeNotebookDocumentNotification}});Object.defineProperty(f,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:function(){return wr.DidSaveNotebookDocumentNotification}});Object.defineProperty(f,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:function(){return wr.DidCloseNotebookDocumentNotification}});var b$=fR();Object.defineProperty(f,"InlineCompletionRequest",{enumerable:!0,get:function(){return b$.InlineCompletionRequest}});var Qp;(function(t){function e(r){let n=r;return at.string(n)||at.string(n.language)||at.string(n.scheme)||at.string(n.pattern)}t.is=e})(Qp||(f.TextDocumentFilter=Qp={}));var Zp;(function(t){function e(r){let n=r;return at.objectLiteral(n)&&(at.string(n.notebookType)||at.string(n.scheme)||at.string(n.pattern))}t.is=e})(Zp||(f.NotebookDocumentFilter=Zp={}));var eh;(function(t){function e(r){let n=r;return at.objectLiteral(n)&&(at.string(n.notebook)||Zp.is(n.notebook))&&(n.language===void 0||at.string(n.language))}t.is=e})(eh||(f.NotebookCellTextDocumentFilter=eh={}));var th;(function(t){function e(r){if(!Array.isArray(r))return!1;for(let n of r)if(!at.string(n)&&!Qp.is(n)&&!eh.is(n))return!1;return!0}t.is=e})(th||(f.DocumentSelector=th={}));var pR;(function(t){t.method="client/registerCapability",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType(t.method)})(pR||(f.RegistrationRequest=pR={}));var hR;(function(t){t.method="client/unregisterCapability",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType(t.method)})(hR||(f.UnregistrationRequest=hR={}));var mR=(function(t){return t.Create="create",t.Rename="rename",t.Delete="delete",t})(mR||(f.ResourceOperationKind=mR={})),gR=(function(t){return t.Abort="abort",t.Transactional="transactional",t.TextOnlyTransactional="textOnlyTransactional",t.Undo="undo",t})(gR||(f.FailureHandlingKind=gR={})),yR=(function(t){return t.UTF8="utf-8",t.UTF16="utf-16",t.UTF32="utf-32",t})(yR||(f.PositionEncodingKind=yR={})),TR;(function(t){function e(r){let n=r;return n&&at.string(n.id)&&n.id.length>0}t.hasId=e})(TR||(f.StaticRegistrationOptions=TR={}));var RR;(function(t){function e(r){let n=r;return n&&(n.documentSelector===null||th.is(n.documentSelector))}t.is=e})(RR||(f.TextDocumentRegistrationOptions=RR={}));var xR;(function(t){function e(n){let i=n;return at.objectLiteral(i)&&(i.workDoneProgress===void 0||at.boolean(i.workDoneProgress))}t.is=e;function r(n){let i=n;return i&&at.boolean(i.workDoneProgress)}t.hasWorkDoneProgress=r})(xR||(f.WorkDoneProgressOptions=xR={}));var vR;(function(t){t.method="initialize",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(vR||(f.InitializeRequest=vR={}));var ER=(function(t){return t.unknownProtocolVersion=1,t})(ER||(f.InitializeErrorCodes=ER={})),AR;(function(t){t.method="initialized",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(AR||(f.InitializedNotification=AR={}));var $R;(function(t){t.method="shutdown",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType0(t.method)})($R||(f.ShutdownRequest=$R={}));var SR;(function(t){t.method="exit",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType0(t.method)})(SR||(f.ExitNotification=SR={}));var kR;(function(t){t.method="workspace/didChangeConfiguration",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(kR||(f.DidChangeConfigurationNotification=kR={}));var NR=(function(t){return t.Error=1,t.Warning=2,t.Info=3,t.Log=4,t.Debug=5,t})(NR||(f.MessageType=NR={})),CR;(function(t){t.method="window/showMessage",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})(CR||(f.ShowMessageNotification=CR={}));var wR;(function(t){t.method="window/showMessageRequest",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType(t.method)})(wR||(f.ShowMessageRequest=wR={}));var IR;(function(t){t.method="window/logMessage",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})(IR||(f.LogMessageNotification=IR={}));var _R;(function(t){t.method="telemetry/event",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})(_R||(f.TelemetryEventNotification=_R={}));var bR=(function(t){return t.None=0,t.Full=1,t.Incremental=2,t})(bR||(f.TextDocumentSyncKind=bR={})),PR;(function(t){t.method="textDocument/didOpen",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(PR||(f.DidOpenTextDocumentNotification=PR={}));var OR;(function(t){function e(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range!==void 0&&(i.rangeLength===void 0||typeof i.rangeLength=="number")}t.isIncremental=e;function r(n){let i=n;return i!=null&&typeof i.text=="string"&&i.range===void 0&&i.rangeLength===void 0}t.isFull=r})(OR||(f.TextDocumentContentChangeEvent=OR={}));var LR;(function(t){t.method="textDocument/didChange",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(LR||(f.DidChangeTextDocumentNotification=LR={}));var DR;(function(t){t.method="textDocument/didClose",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(DR||(f.DidCloseTextDocumentNotification=DR={}));var MR;(function(t){t.method="textDocument/didSave",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(MR||(f.DidSaveTextDocumentNotification=MR={}));var FR=(function(t){return t.Manual=1,t.AfterDelay=2,t.FocusOut=3,t})(FR||(f.TextDocumentSaveReason=FR={})),GR;(function(t){t.method="textDocument/willSave",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(GR||(f.WillSaveTextDocumentNotification=GR={}));var UR;(function(t){t.method="textDocument/willSaveWaitUntil",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(UR||(f.WillSaveTextDocumentWaitUntilRequest=UR={}));var qR;(function(t){t.method="workspace/didChangeWatchedFiles",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolNotificationType(t.method)})(qR||(f.DidChangeWatchedFilesNotification=qR={}));var zR=(function(t){return t.Created=1,t.Changed=2,t.Deleted=3,t})(zR||(f.FileChangeType=zR={})),jR;(function(t){function e(r){let n=r;return at.objectLiteral(n)&&(dR.URI.is(n.baseUri)||dR.WorkspaceFolder.is(n.baseUri))&&at.string(n.pattern)}t.is=e})(jR||(f.RelativePattern=jR={}));var BR=(function(t){return t.Create=1,t.Change=2,t.Delete=4,t})(BR||(f.WatchKind=BR={})),WR;(function(t){t.method="textDocument/publishDiagnostics",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolNotificationType(t.method)})(WR||(f.PublishDiagnosticsNotification=WR={}));var VR=(function(t){return t.Invoked=1,t.TriggerCharacter=2,t.TriggerForIncompleteCompletions=3,t})(VR||(f.CompletionTriggerKind=VR={})),KR;(function(t){t.method="textDocument/completion",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(KR||(f.CompletionRequest=KR={}));var HR;(function(t){t.method="completionItem/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(HR||(f.CompletionResolveRequest=HR={}));var YR;(function(t){t.method="textDocument/hover",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(YR||(f.HoverRequest=YR={}));var XR=(function(t){return t.Invoked=1,t.TriggerCharacter=2,t.ContentChange=3,t})(XR||(f.SignatureHelpTriggerKind=XR={})),JR;(function(t){t.method="textDocument/signatureHelp",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(JR||(f.SignatureHelpRequest=JR={}));var QR;(function(t){t.method="textDocument/definition",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(QR||(f.DefinitionRequest=QR={}));var ZR;(function(t){t.method="textDocument/references",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(ZR||(f.ReferencesRequest=ZR={}));var ex;(function(t){t.method="textDocument/documentHighlight",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(ex||(f.DocumentHighlightRequest=ex={}));var tx;(function(t){t.method="textDocument/documentSymbol",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(tx||(f.DocumentSymbolRequest=tx={}));var rx;(function(t){t.method="textDocument/codeAction",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(rx||(f.CodeActionRequest=rx={}));var nx;(function(t){t.method="codeAction/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(nx||(f.CodeActionResolveRequest=nx={}));var ix;(function(t){t.method="workspace/symbol",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(ix||(f.WorkspaceSymbolRequest=ix={}));var sx;(function(t){t.method="workspaceSymbol/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(sx||(f.WorkspaceSymbolResolveRequest=sx={}));var ax;(function(t){t.method="textDocument/codeLens",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(ax||(f.CodeLensRequest=ax={}));var ox;(function(t){t.method="codeLens/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(ox||(f.CodeLensResolveRequest=ox={}));var cx;(function(t){t.method="workspace/codeLens/refresh",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType0(t.method)})(cx||(f.CodeLensRefreshRequest=cx={}));var lx;(function(t){t.method="textDocument/documentLink",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(lx||(f.DocumentLinkRequest=lx={}));var ux;(function(t){t.method="documentLink/resolve",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(ux||(f.DocumentLinkResolveRequest=ux={}));var fx;(function(t){t.method="textDocument/formatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(fx||(f.DocumentFormattingRequest=fx={}));var dx;(function(t){t.method="textDocument/rangeFormatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(dx||(f.DocumentRangeFormattingRequest=dx={}));var px;(function(t){t.method="textDocument/rangesFormatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(px||(f.DocumentRangesFormattingRequest=px={}));var hx;(function(t){t.method="textDocument/onTypeFormatting",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(hx||(f.DocumentOnTypeFormattingRequest=hx={}));var mx=(function(t){return t.Identifier=1,t})(mx||(f.PrepareSupportDefaultBehavior=mx={})),gx;(function(t){t.method="textDocument/rename",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(gx||(f.RenameRequest=gx={}));var yx;(function(t){t.method="textDocument/prepareRename",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(yx||(f.PrepareRenameRequest=yx={}));var Tx;(function(t){t.method="workspace/executeCommand",t.messageDirection=S.MessageDirection.clientToServer,t.type=new S.ProtocolRequestType(t.method)})(Tx||(f.ExecuteCommandRequest=Tx={}));var Rx;(function(t){t.method="workspace/applyEdit",t.messageDirection=S.MessageDirection.serverToClient,t.type=new S.ProtocolRequestType("workspace/applyEdit")})(Rx||(f.ApplyWorkspaceEditRequest=Rx={}))});var kx=X(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});Hl.createProtocolConnection=void 0;var Sx=hi();function P$(t,e,r,n){return Sx.ConnectionStrategy.is(n)&&(n={connectionStrategy:n}),(0,Sx.createMessageConnection)(t,e,r,n)}Hl.createProtocolConnection=P$});var Cx=X(Ft=>{"use strict";var O$=Ft&&Ft.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Yl=Ft&&Ft.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&O$(e,t,r)};Object.defineProperty(Ft,"__esModule",{value:!0});Ft.LSPErrorCodes=Ft.createProtocolConnection=void 0;Yl(hi(),Ft);Yl((as(),pu(il)),Ft);Yl(_e(),Ft);Yl($x(),Ft);var L$=kx();Object.defineProperty(Ft,"createProtocolConnection",{enumerable:!0,get:function(){return L$.createProtocolConnection}});var Nx=(function(t){return t.lspReservedErrorRangeStart=-32899,t.RequestFailed=-32803,t.ServerCancelled=-32802,t.ContentModified=-32801,t.RequestCancelled=-32800,t.lspReservedErrorRangeEnd=-32800,t})(Nx||(Ft.LSPErrorCodes=Nx={}))});var Ix=X(Ir=>{"use strict";var D$=Ir&&Ir.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var i=Object.getOwnPropertyDescriptor(e,r);(!i||("get"in i?!e.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,i)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),wx=Ir&&Ir.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&D$(e,t,r)};Object.defineProperty(Ir,"__esModule",{value:!0});Ir.createProtocolConnection=void 0;var M$=Bp();wx(Bp(),Ir);wx(Cx(),Ir);function F$(t,e,r,n){return(0,M$.createMessageConnection)(t,e,r,n)}Ir.createProtocolConnection=F$});var qe={};en(qe,{AbstractAstReflection:()=>_n,AbstractCstNode:()=>za,AbstractLangiumParser:()=>ja,AbstractParserErrorMessageProvider:()=>al,AbstractThreadedAsyncParser:()=>hh,AstUtils:()=>Uo,BiMap:()=>ui,Cancellation:()=>W,CompositeCstNodeImpl:()=>si,ContextCache:()=>fi,CstNodeBuilder:()=>qa,CstUtils:()=>ac,DEFAULT_TOKENIZE_OPTIONS:()=>Xl,DONE_RESULT:()=>gt,DatatypeSymbol:()=>sl,DefaultAstNodeDescriptionProvider:()=>oo,DefaultAstNodeLocator:()=>lo,DefaultAsyncParser:()=>Co,DefaultCommentProvider:()=>No,DefaultConfigurationProvider:()=>uo,DefaultDocumentBuilder:()=>xo,DefaultDocumentValidator:()=>ao,DefaultHydrator:()=>Io,DefaultIndexManager:()=>vo,DefaultJsonSerializer:()=>no,DefaultLangiumDocumentFactory:()=>Ha,DefaultLangiumDocuments:()=>Ya,DefaultLangiumProfiler:()=>vh,DefaultLexer:()=>gi,DefaultLexerErrorMessageProvider:()=>Ao,DefaultLinker:()=>Xa,DefaultNameProvider:()=>Ja,DefaultReferenceDescriptionProvider:()=>co,DefaultReferences:()=>Qa,DefaultScopeComputation:()=>Za,DefaultScopeProvider:()=>ro,DefaultServiceRegistry:()=>io,DefaultTokenBuilder:()=>Jr,DefaultValueConverter:()=>oi,DefaultWorkspaceLock:()=>wo,DefaultWorkspaceManager:()=>Eo,Deferred:()=>It,Disposable:()=>Cn,DisposableCache:()=>gs,DocumentCache:()=>ml,DocumentState:()=>re,DocumentValidator:()=>lr,EMPTY_SCOPE:()=>QA,EMPTY_STREAM:()=>nn,EmptyFileSystem:()=>xh,EmptyFileSystemProvider:()=>ru,ErrorWithLocation:()=>Vn,GrammarAST:()=>oa,GrammarUtils:()=>dc,IndentationAwareLexer:()=>Rh,IndentationAwareTokenBuilder:()=>tu,JSDocDocumentationProvider:()=>ko,LangiumCompletionParser:()=>Wa,LangiumParser:()=>Ba,LangiumParserErrorMessageProvider:()=>cs,LeafCstNodeImpl:()=>ii,LexingMode:()=>Os,MapScope:()=>Ud,Module:()=>Gx,MultiMap:()=>Rt,MultiMapScope:()=>eo,OperationCancelled:()=>Yt,ParserWorker:()=>mh,ProfilingTask:()=>nu,Reduction:()=>Ei,RefResolving:()=>li,RegExpUtils:()=>lc,RootCstNodeImpl:()=>os,SimpleCache:()=>to,StreamImpl:()=>qt,StreamScope:()=>ms,TextDocument:()=>ds,TreeStreamImpl:()=>yr,URI:()=>rt,UriTrie:()=>hs,UriUtils:()=>Be,VALIDATE_EACH_NODE:()=>sy,ValidationCategory:()=>gl,ValidationRegistry:()=>so,ValueConverter:()=>$r,WorkspaceCache:()=>ys,assertCondition:()=>Yh,assertUnreachable:()=>Rr,createCompletionParser:()=>Id,createDefaultCoreModule:()=>gh,createDefaultSharedCoreModule:()=>yh,createGrammarConfig:()=>af,createLangiumParser:()=>_d,createParser:()=>Va,delayNextTick:()=>Fd,diagnosticData:()=>di,eagerLoad:()=>qx,getDiagnosticRange:()=>ay,indentationBuilderDefaultOptions:()=>Th,inject:()=>eu,interruptAndCheck:()=>Me,isAstNode:()=>Oe,isAstNodeDescription:()=>mu,isAstNodeWithComment:()=>qd,isCompositeCstNode:()=>rr,isIMultiModeLexerDefinition:()=>ch,isJSDoc:()=>dh,isLeafCstNode:()=>rn,isLinkingError:()=>bn,isMultiReference:()=>Ut,isNamed:()=>ny,isOperationCancelled:()=>Sr,isReference:()=>tt,isRootCstNode:()=>Ys,isTokenTypeArray:()=>Jl,isTokenTypeDictionary:()=>oh,loadGrammarFromJson:()=>_r,parseJSDoc:()=>fh,prepareLangiumParser:()=>Kg,setInterruptionPeriod:()=>Qg,startCancelableOperation:()=>pl,stream:()=>ee,toDiagnosticData:()=>oy,toDiagnosticSeverity:()=>yl});var ac={};en(ac,{DefaultNameRegexp:()=>sc,RangeComparison:()=>qr,compareRange:()=>Wh,findCommentNode:()=>Uu,findDeclarationNodeAtOffset:()=>kv,findLeafNodeAtOffset:()=>qu,findLeafNodeBeforeOffset:()=>Vh,flattenCst:()=>Sv,getDatatypeNode:()=>$v,getInteriorNodes:()=>wv,getNextNode:()=>Nv,getPreviousNode:()=>Hh,getStartlineNode:()=>Cv,inRange:()=>Ru,isChildNode:()=>Gu,isCommentNode:()=>Fu,streamCst:()=>Bn,toDocumentSegment:()=>Wn,tokenToRange:()=>Pi});function Oe(t){return typeof t=="object"&&t!==null&&typeof t.$type=="string"}function tt(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"ref"in t}function Ut(t){return typeof t=="object"&&t!==null&&typeof t.$refText=="string"&&"items"in t}function mu(t){return typeof t=="object"&&t!==null&&typeof t.name=="string"&&typeof t.type=="string"&&typeof t.path=="string"}function bn(t){return typeof t=="object"&&t!==null&&typeof t.info=="object"&&typeof t.message=="string"}var _n=class{constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(e){let r=this.types[e.container.$type];if(!r)throw new Error(`Type ${e.container.$type||"undefined"} not found.`);let n=r.properties[e.property]?.referenceType;if(!n)throw new Error(`Property ${e.property||"undefined"} of type ${e.container.$type} is not a reference.`);return n}getTypeMetaData(e){let r=this.types[e];return r||{name:e,properties:{},superTypes:[]}}isInstance(e,r){return Oe(e)&&this.isSubtype(e.$type,r)}isSubtype(e,r){if(e===r)return!0;let n=this.subtypes[e];n||(n=this.subtypes[e]={});let i=n[r];if(i!==void 0)return i;{let s=this.types[e],a=s?s.superTypes.some(o=>this.isSubtype(o,r)):!1;return n[r]=a,a}}getAllSubTypes(e){let r=this.allSubtypes[e];if(r)return r;{let n=this.getAllTypes(),i=[];for(let s of n)this.isSubtype(s,e)&&i.push(s);return this.allSubtypes[e]=i,i}}};function rr(t){return typeof t=="object"&&t!==null&&Array.isArray(t.content)}function rn(t){return typeof t=="object"&&t!==null&&typeof t.tokenType=="object"}function Ys(t){return rr(t)&&typeof t.fullText=="string"}var qt=class t{constructor(e,r){this.startFn=e,this.nextFn=r}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){return!!this.iterator().next().done}count(){let e=this.iterator(),r=0,n=e.next();for(;!n.done;)r++,n=e.next();return r}toArray(){let e=[],r=this.iterator(),n;do n=r.next(),n.value!==void 0&&e.push(n.value);while(!n.done);return e}toSet(){return new Set(this)}toMap(e,r){let n=this.map(i=>[e?e(i):i,r?r(i):i]);return new Map(n)}toString(){return this.join()}concat(e){return new t(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),r=>{let n;if(!r.firstDone){do if(n=this.nextFn(r.first),!n.done)return n;while(!n.done);r.firstDone=!0}do if(n=r.iterator.next(),!n.done)return n;while(!n.done);return gt})}join(e=","){let r=this.iterator(),n="",i,s=!1;do i=r.next(),i.done||(s&&(n+=e),n+=sv(i.value)),s=!0;while(!i.done);return n}indexOf(e,r=0){let n=this.iterator(),i=0,s=n.next();for(;!s.done;){if(i>=r&&s.value===e)return i;s=n.next(),i++}return-1}every(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(!e(n.value))return!1;n=r.next()}return!0}some(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return!0;n=r.next()}return!1}forEach(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;)e(i.value,n),i=r.next(),n++}map(e){return new t(this.startFn,r=>{let{done:n,value:i}=this.nextFn(r);return n?gt:{done:!1,value:e(i)}})}filter(e){return new t(this.startFn,r=>{let n;do if(n=this.nextFn(r),!n.done&&e(n.value))return n;while(!n.done);return gt})}nonNullable(){return this.filter(e=>e!=null)}reduce(e,r){let n=this.iterator(),i=r,s=n.next();for(;!s.done;)i===void 0?i=s.value:i=e(i,s.value),s=n.next();return i}reduceRight(e,r){return this.recursiveReduce(this.iterator(),e,r)}recursiveReduce(e,r,n){let i=e.next();if(i.done)return n;let s=this.recursiveReduce(e,r,n);return s===void 0?i.value:r(s,i.value)}find(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(e(n.value))return n.value;n=r.next()}}findIndex(e){let r=this.iterator(),n=0,i=r.next();for(;!i.done;){if(e(i.value))return n;i=r.next(),n++}return-1}includes(e){let r=this.iterator(),n=r.next();for(;!n.done;){if(n.value===e)return!0;n=r.next()}return!1}flatMap(e){return new t(()=>({this:this.startFn()}),r=>{do{if(r.iterator){let s=r.iterator.next();if(s.done)r.iterator=void 0;else return s}let{done:n,value:i}=this.nextFn(r.this);if(!n){let s=e(i);if(Fo(s))r.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}}while(r.iterator);return gt})}flat(e){if(e===void 0&&(e=1),e<=0)return this;let r=e>1?this.flat(e-1):this;return new t(()=>({this:r.startFn()}),n=>{do{if(n.iterator){let a=n.iterator.next();if(a.done)n.iterator=void 0;else return a}let{done:i,value:s}=r.nextFn(n.this);if(!i)if(Fo(s))n.iterator=s[Symbol.iterator]();else return{done:!1,value:s}}while(n.iterator);return gt})}head(){let r=this.iterator().next();if(!r.done)return r.value}tail(e=1){return new t(()=>{let r=this.startFn();for(let n=0;n({size:0,state:this.startFn()}),r=>(r.size++,r.size>e?gt:this.nextFn(r.state)))}distinct(e){return new t(()=>({set:new Set,internalState:this.startFn()}),r=>{let n;do if(n=this.nextFn(r.internalState),!n.done){let i=e?e(n.value):n.value;if(!r.set.has(i))return r.set.add(i),n}while(!n.done);return gt})}exclude(e,r){let n=new Set;for(let i of e){let s=r?r(i):i;n.add(s)}return this.filter(i=>{let s=r?r(i):i;return!n.has(s)})}};function sv(t){return typeof t=="string"?t:typeof t>"u"?"undefined":typeof t.toString=="function"?t.toString():Object.prototype.toString.call(t)}function Fo(t){return!!t&&typeof t[Symbol.iterator]=="function"}var nn=new qt(()=>{},()=>gt),gt=Object.freeze({done:!0,value:void 0});function ee(...t){if(t.length===1){let e=t[0];if(e instanceof qt)return e;if(Fo(e))return new qt(()=>e[Symbol.iterator](),r=>r.next());if(typeof e.length=="number")return new qt(()=>({index:0}),r=>r.index1?new qt(()=>({collIndex:0,arrIndex:0}),e=>{do{if(e.iterator){let r=e.iterator.next();if(!r.done)return r;e.iterator=void 0}if(e.array){if(e.arrIndex({iterators:n?.includeRoot?[[e][Symbol.iterator]()]:[r(e)[Symbol.iterator]()],pruned:!1}),i=>{for(i.pruned&&(i.iterators.pop(),i.pruned=!1);i.iterators.length>0;){let a=i.iterators[i.iterators.length-1].next();if(a.done)i.iterators.pop();else return i.iterators.push(r(a.value)[Symbol.iterator]()),a}return gt})}iterator(){let e={state:this.startFn(),next:()=>this.nextFn(e.state),prune:()=>{e.state.pruned=!0},[Symbol.iterator]:()=>e};return e}},Ei;(function(t){function e(s){return s.reduce((a,o)=>a+o,0)}t.sum=e;function r(s){return s.reduce((a,o)=>a*o,0)}t.product=r;function n(s){return s.reduce((a,o)=>Math.min(a,o))}t.min=n;function i(s){return s.reduce((a,o)=>Math.max(a,o))}t.max=i})(Ei||(Ei={}));var Uo={};en(Uo,{assignMandatoryProperties:()=>Tu,copyAstNode:()=>yu,findRootNode:()=>$i,getContainerOfType:()=>Dr,getDocument:()=>yt,getReferenceNodes:()=>Go,hasContainerOfType:()=>av,linkContentToContainer:()=>Ai,streamAllContents:()=>nr,streamAst:()=>St,streamContents:()=>Xs,streamReferences:()=>sn});function Ai(t,e={}){for(let[r,n]of Object.entries(t))r.startsWith("$")||(Array.isArray(n)?n.forEach((i,s)=>{Oe(i)&&(i.$container=t,i.$containerProperty=r,i.$containerIndex=s,e.deep&&Ai(i,e))}):Oe(n)&&(n.$container=t,n.$containerProperty=r,e.deep&&Ai(n,e)))}function Dr(t,e){let r=t;for(;r;){if(e(r))return r;r=r.$container}}function av(t,e){let r=t;for(;r;){if(e(r))return!0;r=r.$container}return!1}function yt(t){let r=$i(t).$document;if(!r)throw new Error("AST node has no document.");return r}function $i(t){for(;t.$container;)t=t.$container;return t}function Go(t){return tt(t)?t.ref?[t.ref]:[]:Ut(t)?t.items.map(e=>e.ref):[]}function Xs(t,e){if(!t)throw new Error("Node must be an AstNode.");let r=e?.range;return new qt(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),n=>{for(;n.keyIndexXs(r,e))}function St(t,e){if(t){if(e?.range&&!gu(t,e.range))return new yr(t,()=>[])}else throw new Error("Root node must be an AstNode.");return new yr(t,r=>Xs(r,e),{includeRoot:!0})}function gu(t,e){if(!e)return!0;let r=t.$cstNode?.range;return r?Ru(r,e):!1}function sn(t){return new qt(()=>({keys:Object.keys(t),keyIndex:0,arrayIndex:0}),e=>{for(;e.keyIndexbt,AbstractParserRule:()=>Js,AbstractRule:()=>Si,AbstractType:()=>zt,Action:()=>an,Alternatives:()=>Qs,ArrayLiteral:()=>qo,ArrayType:()=>zo,Assignment:()=>on,BooleanLiteral:()=>jo,CharacterRange:()=>cn,Condition:()=>ln,Conjunction:()=>Zs,CrossReference:()=>un,Disjunction:()=>ea,EndOfFile:()=>Bo,Grammar:()=>Mr,GrammarImport:()=>Wo,Group:()=>Pn,InferredType:()=>Vo,InfixRule:()=>Tr,InfixRuleOperatorList:()=>ta,InfixRuleOperators:()=>Ko,Interface:()=>ki,Keyword:()=>Ni,LangiumGrammarAstReflection:()=>bi,LangiumGrammarTerminals:()=>ov,NamedArgument:()=>Ci,NegatedToken:()=>On,Negation:()=>Ho,NumberLiteral:()=>Yo,Parameter:()=>wi,ParameterReference:()=>Xo,ParserRule:()=>ir,ReferenceType:()=>ra,RegexToken:()=>Ln,ReturnType:()=>Jo,RuleCall:()=>Dn,SimpleType:()=>Ii,StringLiteral:()=>Qo,TerminalAlternatives:()=>Mn,TerminalElement:()=>Pt,TerminalGroup:()=>Fn,TerminalRule:()=>Fr,TerminalRuleCall:()=>Gn,Type:()=>na,TypeAttribute:()=>Un,TypeDefinition:()=>qn,UnionType:()=>Zo,UnorderedGroup:()=>ia,UntilToken:()=>zn,ValueLiteral:()=>jn,Wildcard:()=>_i,isAbstractElement:()=>sa,isAbstractParserRule:()=>Gr,isAbstractRule:()=>cv,isAbstractType:()=>lv,isAction:()=>Ur,isAlternatives:()=>ec,isArrayLiteral:()=>uv,isArrayType:()=>xu,isAssignment:()=>sr,isBooleanLiteral:()=>vu,isCharacterRange:()=>Eu,isCondition:()=>fv,isConjunction:()=>Au,isCrossReference:()=>ar,isDisjunction:()=>$u,isEndOfFile:()=>Su,isGrammar:()=>dv,isGrammarImport:()=>pv,isGroup:()=>fn,isInferredType:()=>aa,isInfixRule:()=>dn,isInfixRuleOperatorList:()=>hv,isInfixRuleOperators:()=>mv,isInterface:()=>ku,isKeyword:()=>Ht,isNamedArgument:()=>gv,isNegatedToken:()=>Nu,isNegation:()=>Cu,isNumberLiteral:()=>yv,isParameter:()=>Tv,isParameterReference:()=>wu,isParserRule:()=>nt,isReferenceType:()=>Iu,isRegexToken:()=>_u,isReturnType:()=>bu,isRuleCall:()=>or,isSimpleType:()=>tc,isStringLiteral:()=>Rv,isTerminalAlternatives:()=>Pu,isTerminalElement:()=>xv,isTerminalGroup:()=>Ou,isTerminalRule:()=>kt,isTerminalRuleCall:()=>rc,isType:()=>nc,isTypeAttribute:()=>vv,isTypeDefinition:()=>Ev,isUnionType:()=>Lu,isUnorderedGroup:()=>ic,isUntilToken:()=>Du,isValueLiteral:()=>Av,isWildcard:()=>Mu,reflection:()=>B});var ov={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},bt={$type:"AbstractElement",cardinality:"cardinality"};function sa(t){return B.isInstance(t,bt.$type)}var Js={$type:"AbstractParserRule"};function Gr(t){return B.isInstance(t,Js.$type)}var Si={$type:"AbstractRule"};function cv(t){return B.isInstance(t,Si.$type)}var zt={$type:"AbstractType"};function lv(t){return B.isInstance(t,zt.$type)}var an={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};function Ur(t){return B.isInstance(t,an.$type)}var Qs={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};function ec(t){return B.isInstance(t,Qs.$type)}var qo={$type:"ArrayLiteral",elements:"elements"};function uv(t){return B.isInstance(t,qo.$type)}var zo={$type:"ArrayType",elementType:"elementType"};function xu(t){return B.isInstance(t,zo.$type)}var on={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};function sr(t){return B.isInstance(t,on.$type)}var jo={$type:"BooleanLiteral",true:"true"};function vu(t){return B.isInstance(t,jo.$type)}var cn={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};function Eu(t){return B.isInstance(t,cn.$type)}var ln={$type:"Condition"};function fv(t){return B.isInstance(t,ln.$type)}var Zs={$type:"Conjunction",left:"left",right:"right"};function Au(t){return B.isInstance(t,Zs.$type)}var un={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};function ar(t){return B.isInstance(t,un.$type)}var ea={$type:"Disjunction",left:"left",right:"right"};function $u(t){return B.isInstance(t,ea.$type)}var Bo={$type:"EndOfFile",cardinality:"cardinality"};function Su(t){return B.isInstance(t,Bo.$type)}var Mr={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};function dv(t){return B.isInstance(t,Mr.$type)}var Wo={$type:"GrammarImport",path:"path"};function pv(t){return B.isInstance(t,Wo.$type)}var Pn={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};function fn(t){return B.isInstance(t,Pn.$type)}var Vo={$type:"InferredType",name:"name"};function aa(t){return B.isInstance(t,Vo.$type)}var Tr={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};function dn(t){return B.isInstance(t,Tr.$type)}var ta={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};function hv(t){return B.isInstance(t,ta.$type)}var Ko={$type:"InfixRuleOperators",precedences:"precedences"};function mv(t){return B.isInstance(t,Ko.$type)}var ki={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};function ku(t){return B.isInstance(t,ki.$type)}var Ni={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};function Ht(t){return B.isInstance(t,Ni.$type)}var Ci={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};function gv(t){return B.isInstance(t,Ci.$type)}var On={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Nu(t){return B.isInstance(t,On.$type)}var Ho={$type:"Negation",value:"value"};function Cu(t){return B.isInstance(t,Ho.$type)}var Yo={$type:"NumberLiteral",value:"value"};function yv(t){return B.isInstance(t,Yo.$type)}var wi={$type:"Parameter",name:"name"};function Tv(t){return B.isInstance(t,wi.$type)}var Xo={$type:"ParameterReference",parameter:"parameter"};function wu(t){return B.isInstance(t,Xo.$type)}var ir={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};function nt(t){return B.isInstance(t,ir.$type)}var ra={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};function Iu(t){return B.isInstance(t,ra.$type)}var Ln={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};function _u(t){return B.isInstance(t,Ln.$type)}var Jo={$type:"ReturnType",name:"name"};function bu(t){return B.isInstance(t,Jo.$type)}var Dn={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};function or(t){return B.isInstance(t,Dn.$type)}var Ii={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};function tc(t){return B.isInstance(t,Ii.$type)}var Qo={$type:"StringLiteral",value:"value"};function Rv(t){return B.isInstance(t,Qo.$type)}var Mn={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Pu(t){return B.isInstance(t,Mn.$type)}var Pt={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function xv(t){return B.isInstance(t,Pt.$type)}var Fn={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};function Ou(t){return B.isInstance(t,Fn.$type)}var Fr={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};function kt(t){return B.isInstance(t,Fr.$type)}var Gn={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};function rc(t){return B.isInstance(t,Gn.$type)}var na={$type:"Type",name:"name",type:"type"};function nc(t){return B.isInstance(t,na.$type)}var Un={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};function vv(t){return B.isInstance(t,Un.$type)}var qn={$type:"TypeDefinition"};function Ev(t){return B.isInstance(t,qn.$type)}var Zo={$type:"UnionType",types:"types"};function Lu(t){return B.isInstance(t,Zo.$type)}var ia={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};function ic(t){return B.isInstance(t,ia.$type)}var zn={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};function Du(t){return B.isInstance(t,zn.$type)}var jn={$type:"ValueLiteral"};function Av(t){return B.isInstance(t,jn.$type)}var _i={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};function Mu(t){return B.isInstance(t,_i.$type)}var bi=class extends _n{constructor(){super(...arguments),this.types={AbstractElement:{name:bt.$type,properties:{cardinality:{name:bt.cardinality}},superTypes:[]},AbstractParserRule:{name:Js.$type,properties:{},superTypes:[Si.$type,zt.$type]},AbstractRule:{name:Si.$type,properties:{},superTypes:[]},AbstractType:{name:zt.$type,properties:{},superTypes:[]},Action:{name:an.$type,properties:{cardinality:{name:an.cardinality},feature:{name:an.feature},inferredType:{name:an.inferredType},operator:{name:an.operator},type:{name:an.type,referenceType:zt.$type}},superTypes:[bt.$type]},Alternatives:{name:Qs.$type,properties:{cardinality:{name:Qs.cardinality},elements:{name:Qs.elements,defaultValue:[]}},superTypes:[bt.$type]},ArrayLiteral:{name:qo.$type,properties:{elements:{name:qo.elements,defaultValue:[]}},superTypes:[jn.$type]},ArrayType:{name:zo.$type,properties:{elementType:{name:zo.elementType}},superTypes:[qn.$type]},Assignment:{name:on.$type,properties:{cardinality:{name:on.cardinality},feature:{name:on.feature},operator:{name:on.operator},predicate:{name:on.predicate},terminal:{name:on.terminal}},superTypes:[bt.$type]},BooleanLiteral:{name:jo.$type,properties:{true:{name:jo.true,defaultValue:!1}},superTypes:[ln.$type,jn.$type]},CharacterRange:{name:cn.$type,properties:{cardinality:{name:cn.cardinality},left:{name:cn.left},lookahead:{name:cn.lookahead},parenthesized:{name:cn.parenthesized,defaultValue:!1},right:{name:cn.right}},superTypes:[Pt.$type]},Condition:{name:ln.$type,properties:{},superTypes:[]},Conjunction:{name:Zs.$type,properties:{left:{name:Zs.left},right:{name:Zs.right}},superTypes:[ln.$type]},CrossReference:{name:un.$type,properties:{cardinality:{name:un.cardinality},deprecatedSyntax:{name:un.deprecatedSyntax,defaultValue:!1},isMulti:{name:un.isMulti,defaultValue:!1},terminal:{name:un.terminal},type:{name:un.type,referenceType:zt.$type}},superTypes:[bt.$type]},Disjunction:{name:ea.$type,properties:{left:{name:ea.left},right:{name:ea.right}},superTypes:[ln.$type]},EndOfFile:{name:Bo.$type,properties:{cardinality:{name:Bo.cardinality}},superTypes:[bt.$type]},Grammar:{name:Mr.$type,properties:{imports:{name:Mr.imports,defaultValue:[]},interfaces:{name:Mr.interfaces,defaultValue:[]},isDeclared:{name:Mr.isDeclared,defaultValue:!1},name:{name:Mr.name},rules:{name:Mr.rules,defaultValue:[]},types:{name:Mr.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:Wo.$type,properties:{path:{name:Wo.path}},superTypes:[]},Group:{name:Pn.$type,properties:{cardinality:{name:Pn.cardinality},elements:{name:Pn.elements,defaultValue:[]},guardCondition:{name:Pn.guardCondition},predicate:{name:Pn.predicate}},superTypes:[bt.$type]},InferredType:{name:Vo.$type,properties:{name:{name:Vo.name}},superTypes:[zt.$type]},InfixRule:{name:Tr.$type,properties:{call:{name:Tr.call},dataType:{name:Tr.dataType},inferredType:{name:Tr.inferredType},name:{name:Tr.name},operators:{name:Tr.operators},parameters:{name:Tr.parameters,defaultValue:[]},returnType:{name:Tr.returnType,referenceType:zt.$type}},superTypes:[Js.$type]},InfixRuleOperatorList:{name:ta.$type,properties:{associativity:{name:ta.associativity},operators:{name:ta.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:Ko.$type,properties:{precedences:{name:Ko.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:ki.$type,properties:{attributes:{name:ki.attributes,defaultValue:[]},name:{name:ki.name},superTypes:{name:ki.superTypes,defaultValue:[],referenceType:zt.$type}},superTypes:[zt.$type]},Keyword:{name:Ni.$type,properties:{cardinality:{name:Ni.cardinality},predicate:{name:Ni.predicate},value:{name:Ni.value}},superTypes:[bt.$type]},NamedArgument:{name:Ci.$type,properties:{calledByName:{name:Ci.calledByName,defaultValue:!1},parameter:{name:Ci.parameter,referenceType:wi.$type},value:{name:Ci.value}},superTypes:[]},NegatedToken:{name:On.$type,properties:{cardinality:{name:On.cardinality},lookahead:{name:On.lookahead},parenthesized:{name:On.parenthesized,defaultValue:!1},terminal:{name:On.terminal}},superTypes:[Pt.$type]},Negation:{name:Ho.$type,properties:{value:{name:Ho.value}},superTypes:[ln.$type]},NumberLiteral:{name:Yo.$type,properties:{value:{name:Yo.value}},superTypes:[jn.$type]},Parameter:{name:wi.$type,properties:{name:{name:wi.name}},superTypes:[]},ParameterReference:{name:Xo.$type,properties:{parameter:{name:Xo.parameter,referenceType:wi.$type}},superTypes:[ln.$type]},ParserRule:{name:ir.$type,properties:{dataType:{name:ir.dataType},definition:{name:ir.definition},entry:{name:ir.entry,defaultValue:!1},fragment:{name:ir.fragment,defaultValue:!1},inferredType:{name:ir.inferredType},name:{name:ir.name},parameters:{name:ir.parameters,defaultValue:[]},returnType:{name:ir.returnType,referenceType:zt.$type}},superTypes:[Js.$type]},ReferenceType:{name:ra.$type,properties:{isMulti:{name:ra.isMulti,defaultValue:!1},referenceType:{name:ra.referenceType}},superTypes:[qn.$type]},RegexToken:{name:Ln.$type,properties:{cardinality:{name:Ln.cardinality},lookahead:{name:Ln.lookahead},parenthesized:{name:Ln.parenthesized,defaultValue:!1},regex:{name:Ln.regex}},superTypes:[Pt.$type]},ReturnType:{name:Jo.$type,properties:{name:{name:Jo.name}},superTypes:[]},RuleCall:{name:Dn.$type,properties:{arguments:{name:Dn.arguments,defaultValue:[]},cardinality:{name:Dn.cardinality},predicate:{name:Dn.predicate},rule:{name:Dn.rule,referenceType:Si.$type}},superTypes:[bt.$type]},SimpleType:{name:Ii.$type,properties:{primitiveType:{name:Ii.primitiveType},stringType:{name:Ii.stringType},typeRef:{name:Ii.typeRef,referenceType:zt.$type}},superTypes:[qn.$type]},StringLiteral:{name:Qo.$type,properties:{value:{name:Qo.value}},superTypes:[jn.$type]},TerminalAlternatives:{name:Mn.$type,properties:{cardinality:{name:Mn.cardinality},elements:{name:Mn.elements,defaultValue:[]},lookahead:{name:Mn.lookahead},parenthesized:{name:Mn.parenthesized,defaultValue:!1}},superTypes:[Pt.$type]},TerminalElement:{name:Pt.$type,properties:{cardinality:{name:Pt.cardinality},lookahead:{name:Pt.lookahead},parenthesized:{name:Pt.parenthesized,defaultValue:!1}},superTypes:[bt.$type]},TerminalGroup:{name:Fn.$type,properties:{cardinality:{name:Fn.cardinality},elements:{name:Fn.elements,defaultValue:[]},lookahead:{name:Fn.lookahead},parenthesized:{name:Fn.parenthesized,defaultValue:!1}},superTypes:[Pt.$type]},TerminalRule:{name:Fr.$type,properties:{definition:{name:Fr.definition},fragment:{name:Fr.fragment,defaultValue:!1},hidden:{name:Fr.hidden,defaultValue:!1},name:{name:Fr.name},type:{name:Fr.type}},superTypes:[Si.$type]},TerminalRuleCall:{name:Gn.$type,properties:{cardinality:{name:Gn.cardinality},lookahead:{name:Gn.lookahead},parenthesized:{name:Gn.parenthesized,defaultValue:!1},rule:{name:Gn.rule,referenceType:Fr.$type}},superTypes:[Pt.$type]},Type:{name:na.$type,properties:{name:{name:na.name},type:{name:na.type}},superTypes:[zt.$type]},TypeAttribute:{name:Un.$type,properties:{defaultValue:{name:Un.defaultValue},isOptional:{name:Un.isOptional,defaultValue:!1},name:{name:Un.name},type:{name:Un.type}},superTypes:[]},TypeDefinition:{name:qn.$type,properties:{},superTypes:[]},UnionType:{name:Zo.$type,properties:{types:{name:Zo.types,defaultValue:[]}},superTypes:[qn.$type]},UnorderedGroup:{name:ia.$type,properties:{cardinality:{name:ia.cardinality},elements:{name:ia.elements,defaultValue:[]}},superTypes:[bt.$type]},UntilToken:{name:zn.$type,properties:{cardinality:{name:zn.cardinality},lookahead:{name:zn.lookahead},parenthesized:{name:zn.parenthesized,defaultValue:!1},terminal:{name:zn.terminal}},superTypes:[Pt.$type]},ValueLiteral:{name:jn.$type,properties:{},superTypes:[]},Wildcard:{name:_i.$type,properties:{cardinality:{name:_i.cardinality},lookahead:{name:_i.lookahead},parenthesized:{name:_i.parenthesized,defaultValue:!1}},superTypes:[Pt.$type]}}}},B=new bi;function $v(t){let e=t,r=!1;for(;e;){let n=Dr(e.grammarSource,nt);if(n&&n.dataType)e=e.container,r=!0;else return r?e:void 0}}function Bn(t){return new yr(t,e=>rr(e)?e.content:[],{includeRoot:!0})}function Sv(t){return Bn(t).filter(rn)}function Gu(t,e){for(;t.container;)if(t=t.container,t===e)return!0;return!1}function Pi(t){return{start:{character:t.startColumn-1,line:t.startLine-1},end:{character:t.endColumn,line:t.endLine-1}}}function Wn(t){if(!t)return;let{offset:e,end:r,range:n}=t;return{range:n,offset:e,end:r,length:r-e}}var qr=(function(t){return t[t.Before=0]="Before",t[t.After=1]="After",t[t.OverlapFront=2]="OverlapFront",t[t.OverlapBack=3]="OverlapBack",t[t.Inside=4]="Inside",t[t.Outside=5]="Outside",t})(qr||{});function Wh(t,e){if(t.end.linee.end.line||t.start.line===e.end.line&&t.start.character>=e.end.character)return qr.After;let r=t.start.line>e.start.line||t.start.line===e.start.line&&t.start.character>=e.start.character,n=t.end.lineqr.After}var sc=/^[\w\p{L}]$/u;function kv(t,e,r=sc){if(t){if(e>0){let n=e-t.offset,i=t.text.charAt(n);r.test(i)||e--}return qu(t,e)}}function Uu(t,e){if(t){let r=Hh(t,!0);if(r&&Fu(r,e))return r;if(Ys(t)){let n=t.content.findIndex(i=>!i.hidden);for(let i=n-1;i>=0;i--){let s=t.content[i];if(Fu(s,e))return s}}}}function Fu(t,e){return rn(t)&&e.includes(t.tokenType.name)}function qu(t,e){if(rn(t))return t;if(rr(t)){let r=Kh(t,e,!1);if(r)return qu(r,e)}}function Vh(t,e){if(rn(t))return t;if(rr(t)){let r=Kh(t,e,!0);if(r)return Vh(r,e)}}function Kh(t,e,r){let n=0,i=t.content.length-1,s;for(;n<=i;){let a=Math.floor((n+i)/2),o=t.content[a];if(o.offset<=e&&o.end>e)return o;o.end<=e?(s=r?o:void 0,n=a+1):i=a-1}return s}function Hh(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t);for(;n>0;){n--;let i=r.content[n];if(e||!i.hidden)return i}t=r}}function Nv(t,e=!0){for(;t.container;){let r=t.container,n=r.content.indexOf(t),i=r.content.length-1;for(;nrf,findNameAssignment:()=>uc,findNodeForKeyword:()=>ef,findNodeForProperty:()=>pa,findNodesForKeyword:()=>Lv,findNodesForKeywordInternal:()=>tf,findNodesForProperty:()=>Qu,getActionAtElement:()=>nm,getActionType:()=>sm,getAllReachableRules:()=>da,getAllRulesUsedForCrossReferences:()=>Ov,getCrossReferenceTerminal:()=>Xu,getEntryRule:()=>Zh,getExplicitRuleType:()=>fc,getHiddenRules:()=>em,getRuleType:()=>nf,getRuleTypeName:()=>Uv,getTypeName:()=>hn,isArrayCardinality:()=>Mv,isArrayOperator:()=>Fv,isCommentTerminal:()=>Ju,isDataType:()=>Gv,isDataTypeRule:()=>ha,isOptionalCardinality:()=>Dv,terminalRegex:()=>Li});var Vn=class extends Error{constructor(e,r){super(e?`${r} at ${e.range.start.line}:${e.range.start.character}`:r)}};function Rr(t,e="Error: Got unexpected value."){throw new Error(e)}function Yh(t,e="Error: Condition is violated."){if(!t)throw new Error(e)}var lc={};en(lc,{NEWLINE_REGEXP:()=>Wu,escapeRegExp:()=>pn,getTerminalParts:()=>Pv,isMultilineComment:()=>Vu,isWhitespace:()=>fa,partialMatches:()=>Ku,partialRegExp:()=>Qh,whitespaceCharacters:()=>Jh});function V(t){return t.charCodeAt(0)}function oc(t,e){Array.isArray(t)?t.forEach(function(r){e.push(r)}):e.push(t)}function Oi(t,e){if(t[e]===!0)throw"duplicate flag "+e;let r=t[e];t[e]=!0}function Kn(t){if(t===void 0)throw Error("Internal Error - Should never get here!");return!0}function ca(){throw Error("Internal Error - Should never get here!")}function zu(t){return t.type==="Character"}var la=[];for(let t=V("0");t<=V("9");t++)la.push(t);var ua=[V("_")].concat(la);for(let t=V("a");t<=V("z");t++)ua.push(t);for(let t=V("A");t<=V("Z");t++)ua.push(t);var ju=[V(" "),V("\f"),V(` -`),V("\r"),V(" "),V("\v"),V(" "),V("\xA0"),V("\u1680"),V("\u2000"),V("\u2001"),V("\u2002"),V("\u2003"),V("\u2004"),V("\u2005"),V("\u2006"),V("\u2007"),V("\u2008"),V("\u2009"),V("\u200A"),V("\u2028"),V("\u2029"),V("\u202F"),V("\u205F"),V("\u3000"),V("\uFEFF")];var _v=/[0-9a-fA-F]/,cc=/[0-9]/,bv=/[1-9]/,Hn=class{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");let r=this.disjunction();this.consumeChar("/");let n={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":Oi(n,"global");break;case"i":Oi(n,"ignoreCase");break;case"m":Oi(n,"multiLine");break;case"u":Oi(n,"unicode");break;case"y":Oi(n,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:n,value:r,loc:this.loc(0)}}disjunction(){let e=[],r=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(r)}}alternative(){let e=[],r=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(r)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){let e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let r;switch(this.popChar()){case"=":r="Lookahead";break;case"!":r="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":r="Lookbehind";break;case"!":r="NegativeLookbehind"}break}}Kn(r);let n=this.disjunction();return this.consumeChar(")"),{type:r,value:n,loc:this.loc(e)}}return ca()}quantifier(e=!1){let r,n=this.idx;switch(this.popChar()){case"*":r={atLeast:0,atMost:1/0};break;case"+":r={atLeast:1,atMost:1/0};break;case"?":r={atLeast:0,atMost:1};break;case"{":let i=this.integerIncludingZero();switch(this.popChar()){case"}":r={atLeast:i,atMost:i};break;case",":let s;this.isDigit()?(s=this.integerIncludingZero(),r={atLeast:i,atMost:s}):r={atLeast:i,atMost:1/0},this.consumeChar("}");break}if(e===!0&&r===void 0)return;Kn(r);break}if(!(e===!0&&r===void 0)&&Kn(r))return this.peekChar(0)==="?"?(this.consumeChar("?"),r.greedy=!1):r.greedy=!0,r.type="Quantifier",r.loc=this.loc(n),r}atom(){let e,r=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}return e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),Kn(e)?(e.loc=this.loc(r),this.isQuantifier()&&(e.quantifier=this.quantifier()),e):ca()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[V(` -`),V("\r"),V("\u2028"),V("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let e,r=!1;switch(this.popChar()){case"d":e=la;break;case"D":e=la,r=!0;break;case"s":e=ju;break;case"S":e=ju,r=!0;break;case"w":e=ua;break;case"W":e=ua,r=!0;break}return Kn(e)?{type:"Set",value:e,complement:r}:ca()}controlEscapeAtom(){let e;switch(this.popChar()){case"f":e=V("\f");break;case"n":e=V(` -`);break;case"r":e=V("\r");break;case"t":e=V(" ");break;case"v":e=V("\v");break}return Kn(e)?{type:"Character",value:e}:ca()}controlLetterEscapeAtom(){this.consumeChar("c");let e=this.popChar();if(/[a-zA-Z]/.test(e)===!1)throw Error("Invalid ");return{type:"Character",value:e.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:V("\0")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let e=this.popChar();return{type:"Character",value:V(e)}}classPatternCharacterAtom(){switch(this.peekChar()){case` -`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let e=this.popChar();return{type:"Character",value:V(e)}}}characterClass(){let e=[],r=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),r=!0);this.isClassAtom();){let n=this.classAtom(),i=n.type==="Character";if(zu(n)&&this.isRangeDash()){this.consumeChar("-");let s=this.classAtom(),a=s.type==="Character";if(zu(s)){if(s.value=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(e){return{begin:e,end:this.idx}}};var xr=class{visitChildren(e){for(let r in e){let n=e[r];e.hasOwnProperty(r)&&(n.type!==void 0?this.visit(n):Array.isArray(n)&&n.forEach(i=>{this.visit(i)},this))}}visit(e){switch(e.type){case"Pattern":this.visitPattern(e);break;case"Flags":this.visitFlags(e);break;case"Disjunction":this.visitDisjunction(e);break;case"Alternative":this.visitAlternative(e);break;case"StartAnchor":this.visitStartAnchor(e);break;case"EndAnchor":this.visitEndAnchor(e);break;case"WordBoundary":this.visitWordBoundary(e);break;case"NonWordBoundary":this.visitNonWordBoundary(e);break;case"Lookahead":this.visitLookahead(e);break;case"NegativeLookahead":this.visitNegativeLookahead(e);break;case"Lookbehind":this.visitLookbehind(e);break;case"NegativeLookbehind":this.visitNegativeLookbehind(e);break;case"Character":this.visitCharacter(e);break;case"Set":this.visitSet(e);break;case"Group":this.visitGroup(e);break;case"GroupBackReference":this.visitGroupBackReference(e);break;case"Quantifier":this.visitQuantifier(e);break}this.visitChildren(e)}visitPattern(e){}visitFlags(e){}visitDisjunction(e){}visitAlternative(e){}visitStartAnchor(e){}visitEndAnchor(e){}visitWordBoundary(e){}visitNonWordBoundary(e){}visitLookahead(e){}visitNegativeLookahead(e){}visitLookbehind(e){}visitNegativeLookbehind(e){}visitCharacter(e){}visitSet(e){}visitGroup(e){}visitGroupBackReference(e){}visitQuantifier(e){}};var Wu=/\r?\n/gm,Xh=new Hn,Bu=class extends xr{constructor(){super(...arguments),this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(e){this.multiline=!1,this.regex=e,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(e){e.quantifier&&(this.isStarting=!1,this.endRegexpStack=[])}visitCharacter(e){let r=String.fromCharCode(e.value);if(!this.multiline&&r===` -`&&(this.multiline=!0),e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let n=pn(r);this.endRegexpStack.push(n),this.isStarting&&(this.startRegexp+=n)}}visitSet(e){if(!this.multiline){let r=this.regex.substring(e.loc.begin,e.loc.end),n=new RegExp(r);this.multiline=!!` -`.match(n)}if(e.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let r=this.regex.substring(e.loc.begin,e.loc.end);this.endRegexpStack.push(r),this.isStarting&&(this.startRegexp+=r)}}visitChildren(e){e.type==="Group"&&e.quantifier||super.visitChildren(e)}},Yn=new Bu;function Pv(t){try{typeof t!="string"&&(t=t.source),t=`/${t}/`;let e=Xh.pattern(t),r=[];for(let n of e.value.value)Yn.reset(t),Yn.visit(n),r.push({start:Yn.startRegexp,end:Yn.endRegex});return r}catch(e){return[]}}function Vu(t){try{return typeof t=="string"&&(t=new RegExp(t)),t=t.toString(),Yn.reset(t),Yn.visit(Xh.pattern(t)),Yn.multiline}catch(e){return!1}}var Jh=`\f -\r \v \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF`.split("");function fa(t){let e=typeof t=="string"?new RegExp(t):t;return Jh.some(r=>e.test(r))}function pn(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ku(t,e){let r=Qh(t),n=e.match(r);return!!n&&n[0].length>0}function Qh(t){typeof t=="string"&&(t=new RegExp(t));let e=t,r=t.source,n=0;function i(){let s="",a;function o(l){s+=r.substr(n,l),n+=l}function c(l){s+="(?:"+r.substr(n,l)+"|$)",n+=l}for(;n",n)-n+1);break;default:c(2);break}break;case"[":a=/\[(?:\\.|.)*?\]/g,a.lastIndex=n,a=a.exec(r)||[],c(a[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":o(1);break;case"{":a=/\{\d+,?\d*\}/g,a.lastIndex=n,a=a.exec(r),a?o(a[0].length):c(1);break;case"(":if(r[n+1]==="?")switch(r[n+2]){case":":s+="(?:",n+=3,s+=i()+"|$)";break;case"=":s+="(?=",n+=3,s+=i()+")";break;case"!":a=n,n+=3,i(),s+=r.substr(a,n-a);break;case"<":switch(r[n+3]){case"=":case"!":a=n,n+=4,i(),s+=r.substr(a,n-a);break;default:o(r.indexOf(">",n)-n+1),s+=i()+"|$)";break}break}else o(1),s+=i()+"|$)";break;case")":return++n,s;default:c(1);break}return s}return new RegExp(i(),t.flags)}function Zh(t){return t.rules.find(e=>nt(e)&&e.entry)}function em(t){return t.rules.filter(e=>kt(e)&&e.hidden)}function da(t,e){let r=new Set,n=Zh(t);if(!n)return new Set(t.rules);let i=[n].concat(em(t));for(let a of i)tm(a,r,e);let s=new Set;for(let a of t.rules)(r.has(a.name)||kt(a)&&a.hidden)&&s.add(a);return s}function tm(t,e,r){e.add(t.name),nr(t).forEach(n=>{if(or(n)||r&&rc(n)){let i=n.rule.ref;i&&!e.has(i.name)&&tm(i,e,r)}})}function Ov(t){let e=new Set;return nr(t).forEach(r=>{ar(r)&&(nt(r.type.ref)&&e.add(r.type.ref),aa(r.type.ref)&&nt(r.type.ref.$container)&&e.add(r.type.ref.$container))}),e}function Xu(t){if(t.terminal)return t.terminal;if(t.type.ref)return uc(t.type.ref)?.terminal}function Ju(t){return t.hidden&&!fa(Li(t))}function Qu(t,e){return!t||!e?[]:Zu(t,e,t.astNode,!0)}function pa(t,e,r){if(!t||!e)return;let n=Zu(t,e,t.astNode,!0);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function Zu(t,e,r,n){if(!n){let i=Dr(t.grammarSource,sr);if(i&&i.feature===e)return[t]}return rr(t)&&t.astNode===r?t.content.flatMap(i=>Zu(i,e,r,!1)):[]}function Lv(t,e){return t?tf(t,e,t?.astNode):[]}function ef(t,e,r){if(!t)return;let n=tf(t,e,t?.astNode);if(n.length!==0)return r!==void 0?r=Math.max(0,Math.min(r,n.length-1)):r=0,n[r]}function tf(t,e,r){if(t.astNode!==r)return[];if(Ht(t.grammarSource)&&t.grammarSource.value===e)return[t];let n=Bn(t).iterator(),i,s=[];do if(i=n.next(),!i.done){let a=i.value;a.astNode===r?Ht(a.grammarSource)&&a.grammarSource.value===e&&s.push(a):n.prune()}while(!i.done);return s}function rf(t){let e=t.astNode;for(;e===t.container?.astNode;){let r=Dr(t.grammarSource,sr);if(r)return r;t=t.container}}function uc(t){let e=t;return aa(e)&&(Ur(e.$container)?e=e.$container.$container:Gr(e.$container)?e=e.$container:Rr(e.$container)),rm(t,e,new Map)}function rm(t,e,r){function n(i,s){let a;return Dr(i,sr)||(a=rm(s,s,r)),r.set(t,a),a}if(r.has(t))return r.get(t);r.set(t,void 0);for(let i of nr(e)){if(sr(i)&&i.feature.toLowerCase()==="name")return r.set(t,i),i;if(or(i)&&nt(i.rule.ref))return n(i,i.rule.ref);if(tc(i)&&i.typeRef?.ref)return n(i,i.typeRef.ref)}}function nm(t){let e=t.$container;if(fn(e)){let r=e.elements,n=r.indexOf(t);for(let i=n-1;i>=0;i--){let s=r[i];if(Ur(s))return s;{let a=nr(r[i]).find(Ur);if(a)return a}}}if(sa(e))return nm(e)}function Dv(t,e){return t==="?"||t==="*"||fn(e)&&!!e.guardCondition}function Mv(t){return t==="*"||t==="+"}function Fv(t){return t==="+="}function ha(t){return im(t,new Set)}function im(t,e){if(e.has(t))return!0;e.add(t);for(let r of nr(t))if(or(r)){if(!r.rule.ref||nt(r.rule.ref)&&!im(r.rule.ref,e)||dn(r.rule.ref))return!1}else{if(sr(r))return!1;if(Ur(r))return!1}return!!t.definition}function Gv(t){return Yu(t.type,new Set)}function Yu(t,e){if(e.has(t))return!0;if(e.add(t),xu(t))return!1;if(Iu(t))return!1;if(Lu(t))return t.types.every(r=>Yu(r,e));if(tc(t)){if(t.primitiveType!==void 0)return!0;if(t.stringType!==void 0)return!0;if(t.typeRef!==void 0){let r=t.typeRef.ref;return nc(r)?Yu(r.type,e):!1}else return!1}else return!1}function fc(t){if(!kt(t)){if(t.inferredType)return t.inferredType.name;if(t.dataType)return t.dataType;if(t.returnType){let e=t.returnType.ref;if(e)return e.name}}}function hn(t){if(Gr(t))return nt(t)&&ha(t)?t.name:fc(t)??t.name;if(ku(t)||nc(t)||bu(t))return t.name;if(Ur(t)){let e=sm(t);if(e)return e}else if(aa(t))return t.name;throw new Error("Cannot get name of Unknown Type")}function sm(t){if(t.inferredType)return t.inferredType.name;if(t.type?.ref)return hn(t.type.ref)}function Uv(t){return kt(t)?t.type?.name??"string":nt(t)&&ha(t)?t.name:fc(t)??t.name}function nf(t){return kt(t)?t.type?.name??"string":fc(t)??t.name}function Li(t){let e={s:!1,i:!1,u:!1},r=Di(t.definition,e),n=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(r,n)}var sf=/[\s\S]/.source;function Di(t,e){if(Pu(t))return qv(t);if(Ou(t))return zv(t);if(Eu(t))return Wv(t);if(rc(t)){let r=t.rule.ref;if(!r)throw new Error("Missing rule reference.");return zr(Di(r.definition),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}else{if(Nu(t))return Bv(t);if(Du(t))return jv(t);if(_u(t)){let r=t.regex.lastIndexOf("/"),n=t.regex.substring(1,r),i=t.regex.substring(r+1);return e&&(e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u")),zr(n,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}else{if(Mu(t))return zr(sf,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized});throw new Error(`Invalid terminal element: ${t?.$type}, ${t?.$cstNode?.text}`)}}}function qv(t){return zr(t.elements.map(e=>Di(e)).join("|"),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function zv(t){return zr(t.elements.map(e=>Di(e)).join(""),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function jv(t){return zr(`${sf}*?${Di(t.terminal)}`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function Bv(t){return zr(`(?!${Di(t.terminal)})${sf}*?`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized})}function Wv(t){return t.right?zr(`[${Hu(t.left)}-${Hu(t.right)}]`,{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1}):zr(Hu(t.left),{cardinality:t.cardinality,lookahead:t.lookahead,parenthesized:t.parenthesized,wrap:!1})}function Hu(t){return pn(t.value)}function zr(t,e){return(e.parenthesized||e.lookahead||e.wrap!==!1)&&(t=`(${e.lookahead??(e.parenthesized?"":"?:")}${t})`),e.cardinality?`${t}${e.cardinality}`:t}function af(t){let e=[],r=t.Grammar;for(let n of r.rules)kt(n)&&Ju(n)&&Vu(Li(n))&&e.push(n.name);return{multilineCommentRules:e,nameRegexp:sc}}function Mi(t){console&&console.error&&console.error(`Error: ${t}`)}function ma(t){console&&console.warn&&console.warn(`Warning: ${t}`)}function ga(t){let e=new Date().getTime(),r=t();return{time:new Date().getTime()-e,value:r}}function ya(t){function e(){}e.prototype=t;let r=new e;function n(){return typeof r.bar}return n(),n(),t;(0,eval)(t)}function Vv(t){return Kv(t)?t.LABEL:t.name}function Kv(t){return mt(t.LABEL)&&t.LABEL!==""}var jt=class{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),D(this.definition,r=>{r.accept(e)})}},pe=class extends jt{constructor(e){super([]),this.idx=1,dt(this,Gt(e,r=>r!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}},Nt=class extends jt{constructor(e){super(e.definition),this.orgText="",dt(this,Gt(e,r=>r!==void 0))}},Ee=class extends jt{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,dt(this,Gt(e,r=>r!==void 0))}},he=class extends jt{constructor(e){super(e.definition),this.idx=1,dt(this,Gt(e,r=>r!==void 0))}},Ae=class extends jt{constructor(e){super(e.definition),this.idx=1,dt(this,Gt(e,r=>r!==void 0))}},$e=class extends jt{constructor(e){super(e.definition),this.idx=1,dt(this,Gt(e,r=>r!==void 0))}},se=class extends jt{constructor(e){super(e.definition),this.idx=1,dt(this,Gt(e,r=>r!==void 0))}},Re=class extends jt{constructor(e){super(e.definition),this.idx=1,dt(this,Gt(e,r=>r!==void 0))}},xe=class extends jt{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,dt(this,Gt(e,r=>r!==void 0))}},te=class{constructor(e){this.idx=1,dt(this,Gt(e,r=>r!==void 0))}accept(e){e.visit(this)}};function pc(t){return I(t,Fi)}function Fi(t){function e(r){return I(r,Fi)}if(t instanceof pe){let r={type:"NonTerminal",name:t.nonTerminalName,idx:t.idx};return mt(t.label)&&(r.label=t.label),r}else{if(t instanceof Ee)return{type:"Alternative",definition:e(t.definition)};if(t instanceof he)return{type:"Option",idx:t.idx,definition:e(t.definition)};if(t instanceof Ae)return{type:"RepetitionMandatory",idx:t.idx,definition:e(t.definition)};if(t instanceof $e)return{type:"RepetitionMandatoryWithSeparator",idx:t.idx,separator:Fi(new te({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof Re)return{type:"RepetitionWithSeparator",idx:t.idx,separator:Fi(new te({terminalType:t.separator})),definition:e(t.definition)};if(t instanceof se)return{type:"Repetition",idx:t.idx,definition:e(t.definition)};if(t instanceof xe)return{type:"Alternation",idx:t.idx,definition:e(t.definition)};if(t instanceof te){let r={type:"Terminal",name:t.terminalType.name,label:Vv(t.terminalType),idx:t.idx};mt(t.label)&&(r.terminalLabel=t.label);let n=t.terminalType.PATTERN;return t.terminalType.PATTERN&&(r.pattern=tr(n)?n.source:n),r}else{if(t instanceof Nt)return{type:"Rule",name:t.name,orgText:t.orgText,definition:e(t.definition)};throw Error("non exhaustive match")}}}var Ct=class{visit(e){let r=e;switch(r.constructor){case pe:return this.visitNonTerminal(r);case Ee:return this.visitAlternative(r);case he:return this.visitOption(r);case Ae:return this.visitRepetitionMandatory(r);case $e:return this.visitRepetitionMandatoryWithSeparator(r);case Re:return this.visitRepetitionWithSeparator(r);case se:return this.visitRepetition(r);case xe:return this.visitAlternation(r);case te:return this.visitTerminal(r);case Nt:return this.visitRule(r);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}};function of(t){return t instanceof Ee||t instanceof he||t instanceof se||t instanceof Ae||t instanceof $e||t instanceof Re||t instanceof te||t instanceof Nt}function Xn(t,e=[]){return t instanceof he||t instanceof se||t instanceof Re?!0:t instanceof xe?Mo(t.definition,n=>Xn(n,e)):t instanceof pe&&Pe(e,t)?!1:t instanceof jt?(t instanceof pe&&e.push(t),At(t.definition,n=>Xn(n,e))):!1}function cf(t){return t instanceof xe}function Ot(t){if(t instanceof pe)return"SUBRULE";if(t instanceof he)return"OPTION";if(t instanceof xe)return"OR";if(t instanceof Ae)return"AT_LEAST_ONE";if(t instanceof $e)return"AT_LEAST_ONE_SEP";if(t instanceof Re)return"MANY_SEP";if(t instanceof se)return"MANY";if(t instanceof te)return"CONSUME";throw Error("non exhaustive match")}var jr=class{walk(e,r=[]){D(e.definition,(n,i)=>{let s=Ke(e.definition,i+1);if(n instanceof pe)this.walkProdRef(n,s,r);else if(n instanceof te)this.walkTerminal(n,s,r);else if(n instanceof Ee)this.walkFlat(n,s,r);else if(n instanceof he)this.walkOption(n,s,r);else if(n instanceof Ae)this.walkAtLeastOne(n,s,r);else if(n instanceof $e)this.walkAtLeastOneSep(n,s,r);else if(n instanceof Re)this.walkManySep(n,s,r);else if(n instanceof se)this.walkMany(n,s,r);else if(n instanceof xe)this.walkOr(n,s,r);else throw Error("non exhaustive match")})}walkTerminal(e,r,n){}walkProdRef(e,r,n){}walkFlat(e,r,n){let i=r.concat(n);this.walk(e,i)}walkOption(e,r,n){let i=r.concat(n);this.walk(e,i)}walkAtLeastOne(e,r,n){let i=[new he({definition:e.definition})].concat(r,n);this.walk(e,i)}walkAtLeastOneSep(e,r,n){let i=am(e,r,n);this.walk(e,i)}walkMany(e,r,n){let i=[new he({definition:e.definition})].concat(r,n);this.walk(e,i)}walkManySep(e,r,n){let i=am(e,r,n);this.walk(e,i)}walkOr(e,r,n){let i=r.concat(n);D(e.definition,s=>{let a=new Ee({definition:[s]});this.walk(a,i)})}};function am(t,e,r){return[new he({definition:[new te({terminalType:t.separator})].concat(t.definition)})].concat(e,r)}function Jn(t){if(t instanceof pe)return Jn(t.referencedRule);if(t instanceof te)return Xv(t);if(of(t))return Hv(t);if(cf(t))return Yv(t);throw Error("non exhaustive match")}function Hv(t){let e=[],r=t.definition,n=0,i=r.length>n,s,a=!0;for(;i&&a;)s=r[n],a=Xn(s),e=e.concat(Jn(s)),n=n+1,i=r.length>n;return Hs(e)}function Yv(t){let e=I(t.definition,r=>Jn(r));return Hs(Ve(e))}function Xv(t){return[t.terminalType]}var hc="_~IN~_";var lf=class extends jr{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,r,n){}walkProdRef(e,r,n){let i=Jv(e.referencedRule,e.idx)+this.topProd.name,s=r.concat(n),a=new Ee({definition:s}),o=Jn(a);this.follows[i]=o}};function om(t){let e={};return D(t,r=>{let n=new lf(r).startWalking();dt(e,n)}),e}function Jv(t,e){return t.name+e+hc}var mc={},Qv=new Hn;function Gi(t){let e=t.toString();if(mc.hasOwnProperty(e))return mc[e];{let r=Qv.pattern(e);return mc[e]=r,r}}function cm(){mc={}}var um="Complement Sets are not supported for first char optimization",Ta=`Unable to use "first char" lexer optimizations: -`;function fm(t,e=!1){try{let r=Gi(t);return uf(r.value,{},r.flags.ignoreCase)}catch(r){if(r.message===um)e&&ma(`${Ta} Unable to optimize: < ${t.toString()} > - Complement Sets cannot be automatically optimized. - This will disable the lexer's first char optimizations. - See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{let n="";e&&(n=` - This will disable the lexer's first char optimizations. - See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),Mi(`${Ta} - Failed parsing: < ${t.toString()} > - Using the @chevrotain/regexp-to-ast library - Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+n)}}return[]}function uf(t,e,r){switch(t.type){case"Disjunction":for(let i=0;i{if(typeof c=="number")gc(c,e,r);else{let l=c;if(r===!0)for(let u=l.from;u<=l.to;u++)gc(u,e,r);else{for(let u=l.from;u<=l.to&&u=Ui){let u=l.from>=Ui?l.from:Ui,p=l.to,h=vr(u),g=vr(p);for(let C=h;C<=g;C++)e[C]=C}}}});break;case"Group":uf(a.value,e,r);break;default:throw Error("Non Exhaustive Match")}let o=a.quantifier!==void 0&&a.quantifier.atLeast===0;if(a.type==="Group"&&ff(a)===!1||a.type!=="Group"&&o===!1)break}break;default:throw Error("non exhaustive match!")}return Ce(e)}function gc(t,e,r){let n=vr(t);e[n]=n,r===!0&&Zv(t,e)}function Zv(t,e){let r=String.fromCharCode(t),n=r.toUpperCase();if(n!==r){let i=vr(n.charCodeAt(0));e[i]=i}else{let i=r.toLowerCase();if(i!==r){let s=vr(i.charCodeAt(0));e[s]=s}}}function lm(t,e){return Lr(t.value,r=>{if(typeof r=="number")return Pe(e,r);{let n=r;return Lr(e,i=>n.from<=i&&i<=n.to)!==void 0}})}function ff(t){let e=t.quantifier;return e&&e.atLeast===0?!0:t.value?Ze(t.value)?At(t.value,ff):ff(t.value):!1}var df=class extends xr{constructor(e){super(),this.targetCharCodes=e,this.found=!1}visitChildren(e){if(this.found!==!0){switch(e.type){case"Lookahead":this.visitLookahead(e);return;case"NegativeLookahead":this.visitNegativeLookahead(e);return;case"Lookbehind":this.visitLookbehind(e);return;case"NegativeLookbehind":this.visitNegativeLookbehind(e);return}super.visitChildren(e)}}visitCharacter(e){Pe(this.targetCharCodes,e.value)&&(this.found=!0)}visitSet(e){e.complement?lm(e,this.targetCharCodes)===void 0&&(this.found=!0):lm(e,this.targetCharCodes)!==void 0&&(this.found=!0)}};function yc(t,e){if(e instanceof RegExp){let r=Gi(e),n=new df(t);return n.visit(r),n.found}else return Lr(e,r=>Pe(t,r.charCodeAt(0)))!==void 0}var Qn="PATTERN",qi="defaultMode",Tc="modes";function pm(t,e){e=Ks(e,{debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` -`],tracer:(b,E)=>E()});let r=e.tracer;r("initCharCodeToOptimizedIndexMap",()=>{TE()});let n;r("Reject Lexer.NA",()=>{n=In(t,b=>b[Qn]===He.NA)});let i=!1,s;r("Transform Patterns",()=>{i=!1,s=I(n,b=>{let E=b[Qn];if(tr(E)){let H=E.source;return H.length===1&&H!=="^"&&H!=="$"&&H!=="."&&!E.ignoreCase?H:H.length===2&&H[0]==="\\"&&!Pe(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],H[1])?H[1]:dm(E)}else{if(mr(E))return i=!0,{exec:E};if(typeof E=="object")return i=!0,E;if(typeof E=="string"){if(E.length===1)return E;{let H=E.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),F=new RegExp(H);return dm(F)}}else throw Error("non exhaustive match")}})});let a,o,c,l,u;r("misc mapping",()=>{a=I(n,b=>b.tokenTypeIdx),o=I(n,b=>{let E=b.GROUP;if(E!==He.SKIPPED){if(mt(E))return E;if($t(E))return!1;throw Error("non exhaustive match")}}),c=I(n,b=>{let E=b.LONGER_ALT;if(E)return Ze(E)?I(E,F=>hu(n,F)):[hu(n,E)]}),l=I(n,b=>b.PUSH_MODE),u=I(n,b=>q(b,"POP_MODE"))});let p;r("Line Terminator Handling",()=>{let b=vm(e.lineTerminatorCharacters);p=I(n,E=>!1),e.positionTracking!=="onlyOffset"&&(p=I(n,E=>q(E,"LINE_BREAKS")?!!E.LINE_BREAKS:xm(E,b)===!1&&yc(b,E.PATTERN)))});let h,g,C,k;r("Misc Mapping #2",()=>{h=I(n,Tm),g=I(s,gE),C=Ue(n,(b,E)=>{let H=E.GROUP;return mt(H)&&H!==He.SKIPPED&&(b[H]=[]),b},{}),k=I(s,(b,E)=>({pattern:s[E],longerAlt:c[E],canLineTerminator:p[E],isCustom:h[E],short:g[E],group:o[E],push:l[E],pop:u[E],tokenTypeIdx:a[E],tokenType:n[E]}))});let G=!0,M=[];return e.safeMode||r("First Char Optimization",()=>{M=Ue(n,(b,E,H)=>{if(typeof E.PATTERN=="string"){let F=E.PATTERN.charCodeAt(0),ye=vr(F);pf(b,ye,k[H])}else if(Ze(E.START_CHARS_HINT)){let F;D(E.START_CHARS_HINT,ye=>{let dr=typeof ye=="string"?ye.charCodeAt(0):ye,Je=vr(dr);F!==Je&&(F=Je,pf(b,Je,k[H]))})}else if(tr(E.PATTERN))if(E.PATTERN.unicode)G=!1,e.ensureOptimizations&&Mi(`${Ta} Unable to analyze < ${E.PATTERN.toString()} > pattern. - The regexp unicode flag is not currently supported by the regexp-to-ast library. - This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{let F=fm(E.PATTERN,e.ensureOptimizations);Z(F)&&(G=!1),D(F,ye=>{pf(b,ye,k[H])})}else e.ensureOptimizations&&Mi(`${Ta} TokenType: <${E.name}> is using a custom token pattern without providing parameter. - This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),G=!1;return b},[])}),{emptyGroups:C,patternIdxToConfig:k,charCodeToPatternIdxToConfig:M,hasCustom:i,canBeOptimized:G}}function hm(t,e){let r=[],n=tE(t);r=r.concat(n.errors);let i=rE(n.valid),s=i.valid;return r=r.concat(i.errors),r=r.concat(eE(s)),r=r.concat(uE(s)),r=r.concat(fE(s,e)),r=r.concat(dE(s)),r}function eE(t){let e=[],r=ct(t,n=>tr(n[Qn]));return e=e.concat(iE(r)),e=e.concat(oE(r)),e=e.concat(cE(r)),e=e.concat(lE(r)),e=e.concat(sE(r)),e}function tE(t){let e=ct(t,i=>!q(i,Qn)),r=I(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Le.MISSING_PATTERN,tokenTypes:[i]})),n=wn(t,e);return{errors:r,valid:n}}function rE(t){let e=ct(t,i=>{let s=i[Qn];return!tr(s)&&!mr(s)&&!q(s,"exec")&&!mt(s)}),r=I(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Le.INVALID_PATTERN,tokenTypes:[i]})),n=wn(t,e);return{errors:r,valid:n}}var nE=/[^\\][$]/;function iE(t){class e extends xr{constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}let r=ct(t,i=>{let s=i.PATTERN;try{let a=Gi(s),o=new e;return o.visit(a),o.found}catch(a){return nE.test(s.source)}});return I(r,i=>({message:`Unexpected RegExp Anchor Error: - Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$' - See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Le.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function sE(t){let e=ct(t,n=>n.PATTERN.test(""));return I(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:Le.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}var aE=/[^\\[][\^]|^\^/;function oE(t){class e extends xr{constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}let r=ct(t,i=>{let s=i.PATTERN;try{let a=Gi(s),o=new e;return o.visit(a),o.found}catch(a){return aE.test(s.source)}});return I(r,i=>({message:`Unexpected RegExp Anchor Error: - Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^' - See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Le.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function cE(t){let e=ct(t,n=>{let i=n[Qn];return i instanceof RegExp&&(i.multiline||i.global)});return I(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:Le.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[n]}))}function lE(t){let e=[],r=I(t,s=>Ue(t,(a,o)=>(s.PATTERN.source===o.PATTERN.source&&!Pe(e,o)&&o.PATTERN!==He.NA&&(e.push(o),a.push(o)),a),[]));r=Or(r);let n=ct(r,s=>s.length>1);return I(n,s=>{let a=I(s,c=>c.name);return{message:`The same RegExp pattern ->${pt(s).PATTERN}<-has been used in all of the following Token Types: ${a.join(", ")} <-`,type:Le.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}})}function uE(t){let e=ct(t,n=>{if(!q(n,"GROUP"))return!1;let i=n.GROUP;return i!==He.SKIPPED&&i!==He.NA&&!mt(i)});return I(e,n=>({message:"Token Type: ->"+n.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:Le.INVALID_GROUP_TYPE_FOUND,tokenTypes:[n]}))}function fE(t,e){let r=ct(t,i=>i.PUSH_MODE!==void 0&&!Pe(e,i.PUSH_MODE));return I(r,i=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:Le.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function dE(t){let e=[],r=Ue(t,(n,i,s)=>{let a=i.PATTERN;return a===He.NA||(mt(a)?n.push({str:a,idx:s,tokenType:i}):tr(a)&&hE(a)&&n.push({str:a.source,idx:s,tokenType:i})),n},[]);return D(t,(n,i)=>{D(r,({str:s,idx:a,tokenType:o})=>{if(i${o.name}<- can never be matched. -Because it appears AFTER the Token Type ->${n.name}<-in the lexer's definition. -See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:c,type:Le.UNREACHABLE_PATTERN,tokenTypes:[n,o]})}})}),e}function pE(t,e){if(tr(e)){if(mE(e))return!1;let r=e.exec(t);return r!==null&&r.index===0}else{if(mr(e))return e(t,0,[],{});if(q(e,"exec"))return e.exec(t,0,[],{});if(typeof e=="string")return e===t;throw Error("non exhaustive match")}}function hE(t){return Lr([".","\\","[","]","|","^","$","(",")","?","*","+","{"],r=>t.source.indexOf(r)!==-1)===void 0}function mE(t){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\? property in its definition -`,type:Le.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),q(t,Tc)||n.push({message:"A MultiMode Lexer cannot be initialized without a <"+Tc+`> property in its definition -`,type:Le.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),q(t,Tc)&&q(t,qi)&&!q(t.modes,t.defaultMode)&&n.push({message:`A MultiMode Lexer cannot be initialized with a ${qi}: <${t.defaultMode}>which does not exist -`,type:Le.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),q(t,Tc)&&D(t.modes,(i,s)=>{D(i,(a,o)=>{if($t(a))n.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${s}> at index: <${o}> -`,type:Le.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(q(a,"LONGER_ALT")){let c=Ze(a.LONGER_ALT)?a.LONGER_ALT:[a.LONGER_ALT];D(c,l=>{!$t(l)&&!Pe(i,l)&&n.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${l.name}> on token <${a.name}> outside of mode <${s}> -`,type:Le.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})}),n}function gm(t,e,r){let n=[],i=!1,s=Or(Ve(Ce(t.modes))),a=In(s,c=>c[Qn]===He.NA),o=vm(r);return e&&D(a,c=>{let l=xm(c,o);if(l!==!1){let p={message:yE(c,l),type:l.issue,tokenType:c};n.push(p)}else q(c,"LINE_BREAKS")?c.LINE_BREAKS===!0&&(i=!0):yc(o,c.PATTERN)&&(i=!0)}),e&&!i&&n.push({message:`Warning: No LINE_BREAKS Found. - This Lexer has been defined to track line and column information, - But none of the Token Types can be identified as matching a line terminator. - See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS - for details.`,type:Le.NO_LINE_BREAKS_FLAGS}),n}function ym(t){let e={},r=Pr(t);return D(r,n=>{let i=t[n];if(Ze(i))e[n]=[];else throw Error("non exhaustive match")}),e}function Tm(t){let e=t.PATTERN;if(tr(e))return!1;if(mr(e))return!0;if(q(e,"exec"))return!0;if(mt(e))return!1;throw Error("non exhaustive match")}function gE(t){return mt(t)&&t.length===1?t.charCodeAt(0):!1}var Rm={test:function(t){let e=t.length;for(let r=this.lastIndex;r Token Type - Root cause: ${e.errMsg}. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;if(e.issue===Le.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. - The problem is in the <${t.name}> Token Type - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;throw Error("non exhaustive match")}function vm(t){return I(t,r=>mt(r)?r.charCodeAt(0):r)}function pf(t,e,r){t[e]===void 0?t[e]=[r]:t[e].push(r)}var Ui=256,Rc=[];function vr(t){return t255?255+~~(t/255):t}}function Br(t,e){let r=t.tokenTypeIdx;return r===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[r]===!0}function zi(t,e){return t.tokenTypeIdx===e.tokenTypeIdx}var Em=1,$m={};function Wr(t){let e=RE(t);xE(e),EE(e),vE(e),D(e,r=>{r.isParent=r.categoryMatches.length>0})}function RE(t){let e=Ne(t),r=t,n=!0;for(;n;){r=Or(Ve(I(r,s=>s.CATEGORIES)));let i=wn(r,e);e=e.concat(i),Z(i)?n=!1:r=i}return e}function xE(t){D(t,e=>{hf(e)||($m[Em]=e,e.tokenTypeIdx=Em++),Am(e)&&!Ze(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),Am(e)||(e.CATEGORIES=[]),AE(e)||(e.categoryMatches=[]),$E(e)||(e.categoryMatchesMap={})})}function vE(t){D(t,e=>{e.categoryMatches=[],D(e.categoryMatchesMap,(r,n)=>{e.categoryMatches.push($m[n].tokenTypeIdx)})})}function EE(t){D(t,e=>{Sm([],e)})}function Sm(t,e){D(t,r=>{e.categoryMatchesMap[r.tokenTypeIdx]=!0}),D(e.CATEGORIES,r=>{let n=t.concat(e);Pe(n,r)||Sm(n,r)})}function hf(t){return q(t,"tokenTypeIdx")}function Am(t){return q(t,"CATEGORIES")}function AE(t){return q(t,"categoryMatches")}function $E(t){return q(t,"categoryMatchesMap")}function km(t){return q(t,"tokenTypeIdx")}var ji={buildUnableToPopLexerModeMessage(t){return`Unable to pop Lexer Mode after encountering Token ->${t.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(t,e,r,n,i,s){return`unexpected character: ->${t.charAt(e)}<- at offset: ${e}, skipped ${r} characters.`}};var Le=(function(t){return t[t.MISSING_PATTERN=0]="MISSING_PATTERN",t[t.INVALID_PATTERN=1]="INVALID_PATTERN",t[t.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",t[t.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",t[t.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",t[t.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",t[t.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",t[t.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",t[t.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",t[t.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",t[t.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",t[t.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",t[t.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",t[t.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",t[t.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",t[t.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",t[t.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",t[t.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE",t})(Le||{}),Ra={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` -`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:ji,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(Ra);var He=(()=>{class t{constructor(r,n=Ra){if(this.lexerDefinition=r,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(s,a)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let o=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${s}>`);let{time:c,value:l}=ga(a),u=c>10?console.warn:console.log;return this.traceInitIndent time: ${c}ms`),this.traceInitIndent--,l}else return a()},typeof n=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. -a boolean 2nd argument is no longer supported`);this.config=dt({},Ra,n);let i=this.config.traceInitPerf;i===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof i=="number"&&(this.traceInitMaxIdent=i,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let s,a=!0;this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===Ra.lineTerminatorsPattern)this.config.lineTerminatorsPattern=Rm;else if(this.config.lineTerminatorCharacters===Ra.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(n.safeMode&&n.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Ze(r)?s={modes:{defaultMode:Ne(r)},defaultMode:qi}:(a=!1,s=Ne(r))}),this.config.skipValidations===!1&&(this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(mm(s,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(gm(s,this.trackStartLines,this.config.lineTerminatorCharacters))})),s.modes=s.modes?s.modes:{},D(s.modes,(c,l)=>{s.modes[l]=In(c,u=>$t(u))});let o=Pr(s.modes);if(D(s.modes,(c,l)=>{this.TRACE_INIT(`Mode: <${l}> processing`,()=>{if(this.modes.push(l),this.config.skipValidations===!1&&this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(hm(c,o))}),Z(this.lexerDefinitionErrors)){Wr(c);let u;this.TRACE_INIT("analyzeTokenTypes",()=>{u=pm(c,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:n.positionTracking,ensureOptimizations:n.ensureOptimizations,safeMode:n.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[l]=u.patternIdxToConfig,this.charCodeToPatternIdxToConfig[l]=u.charCodeToPatternIdxToConfig,this.emptyGroups=dt({},this.emptyGroups,u.emptyGroups),this.hasCustom=u.hasCustom||this.hasCustom,this.canModeBeOptimized[l]=u.canBeOptimized}})}),this.defaultMode=s.defaultMode,!Z(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let l=I(this.lexerDefinitionErrors,u=>u.message).join(`----------------------- -`);throw new Error(`Errors detected in definition of Lexer: -`+l)}D(this.lexerDefinitionWarning,c=>{ma(c.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(a&&(this.handleModes=et),this.trackStartLines===!1&&(this.computeNewColumn=Gh),this.trackEndLines===!1&&(this.updateTokenEndLineColumnLocation=et),/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid config option: "${this.config.positionTracking}"`);this.hasCustom?(this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom):(this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom)}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let c=Ue(this.canModeBeOptimized,(l,u,p)=>(u===!1&&l.push(p),l),[]);if(n.ensureOptimizations&&!Z(c))throw Error(`Lexer Modes: < ${c.join(", ")} > cannot be optimized. - Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. - Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{cm()}),this.TRACE_INIT("toFastProperties",()=>{ya(this)})})}tokenize(r,n=this.defaultMode){if(!Z(this.lexerDefinitionErrors)){let s=I(this.lexerDefinitionErrors,a=>a.message).join(`----------------------- -`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: -`+s)}return this.tokenizeInternal(r,n)}tokenizeInternal(r,n){let i,s,a,o,c,l,u,p,h,g,C,k,G,M,b,E=r,H=E.length,F=0,ye=0,dr=this.hasCustom?0:Math.floor(r.length/10),Je=new Array(dr),Qt=[],Kt=this.trackStartLines?1:void 0,$=this.trackStartLines?1:void 0,y=ym(this.emptyGroups),L=this.trackStartLines,O=this.config.lineTerminatorsPattern,T=0,x=[],A=[],_=[],U=[];Object.freeze(U);let N=!1,Y=ve=>{if(_.length===1&&ve.tokenType.PUSH_MODE===void 0){let We=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(ve);Qt.push({offset:ve.startOffset,line:ve.startLine,column:ve.startColumn,length:ve.image.length,message:We})}else{_.pop();let We=gr(_);x=this.patternIdxToConfig[We],A=this.charCodeToPatternIdxToConfig[We],T=x.length;let js=this.canModeBeOptimized[We]&&this.config.safeMode===!1;A&&js?N=!0:N=!1}};function Q(ve){_.push(ve),A=this.charCodeToPatternIdxToConfig[ve],x=this.patternIdxToConfig[ve],T=x.length,T=x.length;let We=this.canModeBeOptimized[ve]&&this.config.safeMode===!1;A&&We?N=!0:N=!1}Q.call(this,n);let de,ue=this.config.recoveryEnabled;for(;Fl.length){l=o,h=o.length,u=p,de=Zt;break}}}break}}if(h!==-1){if(g=de.group,g!==void 0&&(l=l!==null?l:r.substring(F,F+h),C=de.tokenTypeIdx,k=this.createTokenInstance(l,F,C,de.tokenType,Kt,$,h),this.handlePayload(k,u),g===!1?ye=this.addToken(Je,ye,k):y[g].push(k)),L===!0&&de.canLineTerminator===!0){let ot=0,_t,pr;O.lastIndex=0;do l=l!==null?l:r.substring(F,F+h),_t=O.test(l),_t===!0&&(pr=O.lastIndex-1,ot++);while(_t===!0);ot!==0?(Kt=Kt+ot,$=h-pr,this.updateTokenEndLineColumnLocation(k,g,pr,ot,Kt,$,h)):$=this.computeNewColumn($,h)}else $=this.computeNewColumn($,h);F=F+h,this.handleModes(de,Y,Q,k)}else{let ot=F,_t=Kt,pr=$,Zt=ue===!1;for(;Zt===!1&&F ${Vr(t)} <--`:`token of type --> ${t.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:t,ruleName:e}){return"Redundant input, expecting EOF but found: "+t.image},buildNoViableAltMessage({expectedPathsPerAlt:t,actual:e,previous:r,customUserDescription:n,ruleName:i}){let s="Expecting: ",o=` -but found: '`+pt(e).image+"'";if(n)return s+n+o;{let c=Ue(t,(h,g)=>h.concat(g),[]),l=I(c,h=>`[${I(h,g=>Vr(g)).join(", ")}]`),p=`one of these possible Token sequences: -${I(l,(h,g)=>` ${g+1}. ${h}`).join(` -`)}`;return s+p+o}},buildEarlyExitMessage({expectedIterationPaths:t,actual:e,customUserDescription:r,ruleName:n}){let i="Expecting: ",a=` -but found: '`+pt(e).image+"'";if(r)return i+r+a;{let c=`expecting at least one iteration which starts with one of these possible Token sequences:: - <${I(t,l=>`[${I(l,u=>Vr(u)).join(",")}]`).join(" ,")}>`;return i+c+a}}};Object.freeze(Hr);var Lm={buildRuleNotFoundError(t,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- -inside top level rule: ->`+t.name+"<-"}},cr={buildDuplicateFoundError(t,e){function r(u){return u instanceof te?u.terminalType.name:u instanceof pe?u.nonTerminalName:""}let n=t.name,i=pt(e),s=i.idx,a=Ot(i),o=r(i),c=s>0,l=`->${a}${c?s:""}<- ${o?`with argument: ->${o}<-`:""} - appears more than once (${e.length} times) in the top level rule: ->${n}<-. - For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES - `;return l=l.replace(/[ \t]+/g," "),l=l.replace(/\s\s+/g,` -`),l},buildNamespaceConflictError(t){return`Namespace conflict found in grammar. -The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${t.name}>. -To resolve this make sure each Terminal and Non-Terminal names are unique -This is easy to accomplish by using the convention that Terminal names start with an uppercase letter -and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(t){let e=I(t.prefixPath,i=>Vr(i)).join(", "),r=t.alternation.idx===0?"":t.alternation.idx;return`Ambiguous alternatives: <${t.ambiguityIndices.join(" ,")}> due to common lookahead prefix -in inside <${t.topLevelRule.name}> Rule, -<${e}> may appears as a prefix path in all these alternatives. -See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX -For Further details.`},buildAlternationAmbiguityError(t){let e=t.alternation.idx===0?"":t.alternation.idx,r=t.prefixPath.length===0,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(" ,")}> in inside <${t.topLevelRule.name}> Rule, -`;if(r)n+=`These alternatives are all empty (match no tokens), making them indistinguishable. -Only the last alternative may be empty. -`;else{let i=I(t.prefixPath,s=>Vr(s)).join(", ");n+=`<${i}> may appears as a prefix path in all these alternatives. -`}return n+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES -For Further details.`,n},buildEmptyRepetitionError(t){let e=Ot(t.repetition);return t.repetition.idx!==0&&(e+=t.repetition.idx),`The repetition <${e}> within Rule <${t.topLevelRule.name}> can never consume any tokens. -This could lead to an infinite loop.`},buildTokenNameError(t){return"deprecated"},buildEmptyAlternationError(t){return`Ambiguous empty alternative: <${t.emptyChoiceIdx+1}> in inside <${t.topLevelRule.name}> Rule. -Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(t){return`An Alternation cannot have more than 256 alternatives: - inside <${t.topLevelRule.name}> Rule. - has ${t.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(t){let e=t.topLevelRule.name,r=I(t.leftRecursionPath,s=>s.name),n=`${e} --> ${r.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar. -rule: <${e}> can be invoked from itself (directly or indirectly) -without consuming any Tokens. The grammar path that causes this is: - ${n} - To fix this refactor your grammar to remove the left recursion. -see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(t){return"deprecated"},buildDuplicateRuleNameError(t){let e;return t.topLevelRule instanceof Nt?e=t.topLevelRule.name:e=t.topLevelRule,`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${t.grammarName}<-`}};function Dm(t,e){let r=new gf(t,e);return r.resolveRefs(),r.errors}var gf=class extends Ct{constructor(e,r){super(),this.nameToTopRule=e,this.errMsgProvider=r,this.errors=[]}resolveRefs(){D(Ce(this.nameToTopRule),e=>{this.currTopLevel=e,e.accept(this)})}visitNonTerminal(e){let r=this.nameToTopRule[e.nonTerminalName];if(r)e.referencedRule=r;else{let n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,e);this.errors.push({message:n,type:it.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:e.nonTerminalName})}}};var yf=class extends jr{constructor(e,r){super(),this.topProd=e,this.path=r,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=Ne(this.path.ruleStack).reverse(),this.occurrenceStack=Ne(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(e,r=[]){this.found||super.walk(e,r)}walkProdRef(e,r,n){if(e.referencedRule.name===this.nextProductionName&&e.idx===this.nextProductionOccurrence){let i=r.concat(n);this.updateExpectedNext(),this.walk(e.referencedRule,i)}}updateExpectedNext(){Z(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())}},xc=class extends yf{constructor(e,r){super(e,r),this.path=r,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(e,r,n){if(this.isAtEndOfPath&&e.terminalType.name===this.nextTerminalName&&e.idx===this.nextTerminalOccurrence&&!this.found){let i=r.concat(n),s=new Ee({definition:i});this.possibleTokTypes=Jn(s),this.found=!0}}},Bi=class extends jr{constructor(e,r){super(),this.topRule=e,this.occurrence=r,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},vc=class extends Bi{walkMany(e,r,n){if(e.idx===this.occurrence){let i=pt(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof te&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkMany(e,r,n)}},va=class extends Bi{walkManySep(e,r,n){if(e.idx===this.occurrence){let i=pt(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof te&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkManySep(e,r,n)}},Ec=class extends Bi{walkAtLeastOne(e,r,n){if(e.idx===this.occurrence){let i=pt(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof te&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOne(e,r,n)}},Ea=class extends Bi{walkAtLeastOneSep(e,r,n){if(e.idx===this.occurrence){let i=pt(r.concat(n));this.result.isEndOfRule=i===void 0,i instanceof te&&(this.result.token=i.terminalType,this.result.occurrence=i.idx)}else super.walkAtLeastOneSep(e,r,n)}};function Ac(t,e,r=[]){r=Ne(r);let n=[],i=0;function s(o){return o.concat(Ke(t,i+1))}function a(o){let c=Ac(s(o),e,r);return n.concat(c)}for(;r.length{Z(c.definition)===!1&&(n=a(c.definition))}),n;if(o instanceof te)r.push(o.terminalType);else throw Error("non exhaustive match")}i++}return n.push({partialPath:r,suffixDef:Ke(t,i)}),n}function $c(t,e,r,n){let i="EXIT_NONE_TERMINAL",s=[i],a="EXIT_ALTERNATIVE",o=!1,c=e.length,l=c-n-1,u=[],p=[];for(p.push({idx:-1,def:t,ruleStack:[],occurrenceStack:[]});!Z(p);){let h=p.pop();if(h===a){o&&gr(p).idx<=l&&p.pop();continue}let g=h.def,C=h.idx,k=h.ruleStack,G=h.occurrenceStack;if(Z(g))continue;let M=g[0];if(M===i){let b={idx:C,def:Ke(g),ruleStack:tn(k),occurrenceStack:tn(G)};p.push(b)}else if(M instanceof te)if(C=0;b--){let E=M.definition[b],H={idx:C,def:E.definition.concat(Ke(g)),ruleStack:k,occurrenceStack:G};p.push(H),p.push(a)}else if(M instanceof Ee)p.push({idx:C,def:M.definition.concat(Ke(g)),ruleStack:k,occurrenceStack:G});else if(M instanceof Nt)p.push(NE(M,C,k,G));else throw Error("non exhaustive match")}return u}function NE(t,e,r,n){let i=Ne(r);i.push(t.name);let s=Ne(n);return s.push(1),{idx:e,def:t.definition,ruleStack:i,occurrenceStack:s}}var De=(function(t){return t[t.OPTION=0]="OPTION",t[t.REPETITION=1]="REPETITION",t[t.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",t[t.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",t[t.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",t[t.ALTERNATION=5]="ALTERNATION",t})(De||{});function Aa(t){if(t instanceof he||t==="Option")return De.OPTION;if(t instanceof se||t==="Repetition")return De.REPETITION;if(t instanceof Ae||t==="RepetitionMandatory")return De.REPETITION_MANDATORY;if(t instanceof $e||t==="RepetitionMandatoryWithSeparator")return De.REPETITION_MANDATORY_WITH_SEPARATOR;if(t instanceof Re||t==="RepetitionWithSeparator")return De.REPETITION_WITH_SEPARATOR;if(t instanceof xe||t==="Alternation")return De.ALTERNATION;throw Error("non exhaustive match")}function kc(t){let{occurrence:e,rule:r,prodType:n,maxLookahead:i}=t,s=Aa(n);return s===De.ALTERNATION?Wi(e,r,i):Vi(e,r,s,i)}function Fm(t,e,r,n,i,s){let a=Wi(t,e,r),o=Bm(a)?zi:Br;return s(a,n,o,i)}function Gm(t,e,r,n,i,s){let a=Vi(t,e,i,r),o=Bm(a)?zi:Br;return s(a[0],o,n)}function Um(t,e,r,n){let i=t.length,s=At(t,a=>At(a,o=>o.length===1));if(e)return function(a){let o=I(a,c=>c.GATE);for(let c=0;cVe(c)),o=Ue(a,(c,l,u)=>(D(l,p=>{q(c,p.tokenTypeIdx)||(c[p.tokenTypeIdx]=u),D(p.categoryMatches,h=>{q(c,h)||(c[h]=u)})}),c),{});return function(){let c=this.LA(1);return o[c.tokenTypeIdx]}}else return function(){for(let a=0;as.length===1),i=t.length;if(n&&!r){let s=Ve(t);if(s.length===1&&Z(s[0].categoryMatches)){let o=s[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===o}}else{let a=Ue(s,(o,c,l)=>(o[c.tokenTypeIdx]=!0,D(c.categoryMatches,u=>{o[u]=!0}),o),[]);return function(){let o=this.LA(1);return a[o.tokenTypeIdx]===!0}}}else return function(){e:for(let s=0;sAc([a],1)),n=Mm(r.length),i=I(r,a=>{let o={};return D(a,c=>{let l=Tf(c.partialPath);D(l,u=>{o[u]=!0})}),o}),s=r;for(let a=1;a<=e;a++){let o=s;s=Mm(o.length);for(let c=0;c{let M=Tf(G.partialPath);D(M,b=>{i[c][b]=!0})})}}}}return n}function Wi(t,e,r,n){let i=new Sc(t,De.ALTERNATION,n);return e.accept(i),zm(i.result,r)}function Vi(t,e,r,n){let i=new Sc(t,r);e.accept(i);let s=i.result,o=new Rf(e,t,r).startWalking(),c=new Ee({definition:s}),l=new Ee({definition:o});return zm([c,l],n)}function Nc(t,e){e:for(let r=0;r{let i=e[n];return r===i||i.categoryMatchesMap[r.tokenTypeIdx]})}function Bm(t){return At(t,e=>At(e,r=>At(r,n=>Z(n.categoryMatches))))}function Wm(t){let e=t.lookaheadStrategy.validate({rules:t.rules,tokenTypes:t.tokenTypes,grammarName:t.grammarName});return I(e,r=>Object.assign({type:it.CUSTOM_LOOKAHEAD_VALIDATION},r))}function Vm(t,e,r,n){let i=ht(t,c=>wE(c,r)),s=LE(t,e,r),a=ht(t,c=>bE(c,r)),o=ht(t,c=>_E(c,t,n,r));return i.concat(s,a,o)}function wE(t,e){let r=new xf;t.accept(r);let n=r.allProductions,i=Uh(n,IE),s=Gt(i,o=>o.length>1);return I(Ce(s),o=>{let c=pt(o),l=e.buildDuplicateFoundError(t,o),u=Ot(c),p={message:l,type:it.DUPLICATE_PRODUCTIONS,ruleName:t.name,dslName:u,occurrence:c.idx},h=Km(c);return h&&(p.parameter=h),p})}function IE(t){return`${Ot(t)}_#_${t.idx}_#_${Km(t)}`}function Km(t){return t instanceof te?t.terminalType.name:t instanceof pe?t.nonTerminalName:""}var xf=class extends Ct{constructor(){super(...arguments),this.allProductions=[]}visitNonTerminal(e){this.allProductions.push(e)}visitOption(e){this.allProductions.push(e)}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}visitAlternation(e){this.allProductions.push(e)}visitTerminal(e){this.allProductions.push(e)}};function _E(t,e,r,n){let i=[];if(Ue(e,(a,o)=>o.name===t.name?a+1:a,0)>1){let a=n.buildDuplicateRuleNameError({topLevelRule:t,grammarName:r});i.push({message:a,type:it.DUPLICATE_RULE_NAME,ruleName:t.name})}return i}function Hm(t,e,r){let n=[],i;return Pe(e,t)||(i=`Invalid rule override, rule: ->${t}<- cannot be overridden in the grammar: ->${r}<-as it is not defined in any of the super grammars `,n.push({message:i,type:it.INVALID_RULE_OVERRIDE,ruleName:t})),n}function Ef(t,e,r,n=[]){let i=[],s=Cc(e.definition);if(Z(s))return[];{let a=t.name;Pe(s,t)&&i.push({message:r.buildLeftRecursionError({topLevelRule:t,leftRecursionPath:n}),type:it.LEFT_RECURSION,ruleName:a});let c=wn(s,n.concat([t])),l=ht(c,u=>{let p=Ne(n);return p.push(u),Ef(t,u,r,p)});return i.concat(l)}}function Cc(t){let e=[];if(Z(t))return e;let r=pt(t);if(r instanceof pe)e.push(r.referencedRule);else if(r instanceof Ee||r instanceof he||r instanceof Ae||r instanceof $e||r instanceof Re||r instanceof se)e=e.concat(Cc(r.definition));else if(r instanceof xe)e=Ve(I(r.definition,s=>Cc(s.definition)));else if(!(r instanceof te))throw Error("non exhaustive match");let n=Xn(r),i=t.length>1;if(n&&i){let s=Ke(t);return e.concat(Cc(s))}else return e}var $a=class extends Ct{constructor(){super(...arguments),this.alternations=[]}visitAlternation(e){this.alternations.push(e)}};function Ym(t,e){let r=new $a;t.accept(r);let n=r.alternations;return ht(n,s=>{let a=tn(s.definition);return ht(a,(o,c)=>{let l=$c([o],[],Br,1);return Z(l)?[{message:e.buildEmptyAlternationError({topLevelRule:t,alternation:s,emptyChoiceIdx:c}),type:it.NONE_LAST_EMPTY_ALT,ruleName:t.name,occurrence:s.idx,alternative:c+1}]:[]})})}function Xm(t,e,r){let n=new $a;t.accept(n);let i=n.alternations;return i=In(i,a=>a.ignoreAmbiguities===!0),ht(i,a=>{let o=a.idx,c=a.maxLookahead||e,l=Wi(o,t,c,a),u=PE(l,a,t,r),p=OE(l,a,t,r);return u.concat(p)})}var vf=class extends Ct{constructor(){super(...arguments),this.allProductions=[]}visitRepetitionWithSeparator(e){this.allProductions.push(e)}visitRepetitionMandatory(e){this.allProductions.push(e)}visitRepetitionMandatoryWithSeparator(e){this.allProductions.push(e)}visitRepetition(e){this.allProductions.push(e)}};function bE(t,e){let r=new $a;t.accept(r);let n=r.alternations;return ht(n,s=>s.definition.length>255?[{message:e.buildTooManyAlternativesError({topLevelRule:t,alternation:s}),type:it.TOO_MANY_ALTS,ruleName:t.name,occurrence:s.idx}]:[])}function Jm(t,e,r){let n=[];return D(t,i=>{let s=new vf;i.accept(s);let a=s.allProductions;D(a,o=>{let c=Aa(o),l=o.maxLookahead||e,u=o.idx,h=Vi(u,i,c,l)[0];if(Z(Ve(h))){let g=r.buildEmptyRepetitionError({topLevelRule:i,repetition:o});n.push({message:g,type:it.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),n}function PE(t,e,r,n){let i=[],s=Ue(t,(o,c,l)=>(e.definition[l].ignoreAmbiguities===!0||D(c,u=>{let p=[l];D(t,(h,g)=>{l!==g&&Nc(h,u)&&e.definition[g].ignoreAmbiguities!==!0&&p.push(g)}),p.length>1&&!Nc(i,u)&&(i.push(u),o.push({alts:p,path:u}))}),o),[]);return I(s,o=>{let c=I(o.alts,u=>u+1);return{message:n.buildAlternationAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:c,prefixPath:o.path}),type:it.AMBIGUOUS_ALTS,ruleName:r.name,occurrence:e.idx,alternatives:o.alts}})}function OE(t,e,r,n){let i=Ue(t,(a,o,c)=>{let l=I(o,u=>({idx:c,path:u}));return a.concat(l)},[]);return Or(ht(i,a=>{if(e.definition[a.idx].ignoreAmbiguities===!0)return[];let c=a.idx,l=a.path,u=ct(i,h=>e.definition[h.idx].ignoreAmbiguities!==!0&&h.idx{let g=[h.idx+1,c+1],C=e.idx===0?"":e.idx;return{message:n.buildAlternationPrefixAmbiguityError({topLevelRule:r,alternation:e,ambiguityIndices:g,prefixPath:h.path}),type:it.AMBIGUOUS_PREFIX_ALTS,ruleName:r.name,occurrence:C,alternatives:g}})}))}function LE(t,e,r){let n=[],i=I(e,s=>s.name);return D(t,s=>{let a=s.name;if(Pe(i,a)){let o=r.buildNamespaceConflictError(s);n.push({message:o,type:it.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:a})}}),n}function Qm(t){let e=Ks(t,{errMsgProvider:Lm}),r={};return D(t.rules,n=>{r[n.name]=n}),Dm(r,e.errMsgProvider)}function Zm(t){return t=Ks(t,{errMsgProvider:cr}),Vm(t.rules,t.tokenTypes,t.errMsgProvider,t.grammarName)}var eg="MismatchedTokenException",tg="NoViableAltException",rg="EarlyExitException",ng="NotAllInputParsedException",ig=[eg,tg,rg,ng];Object.freeze(ig);function gn(t){return Pe(ig,t.name)}var Ki=class extends Error{constructor(e,r){super(e),this.token=r,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}},Zn=class extends Ki{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=eg}},Sa=class extends Ki{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=tg}},ka=class extends Ki{constructor(e,r){super(e,r),this.name=ng}},Na=class extends Ki{constructor(e,r,n){super(e,r),this.previousToken=n,this.name=rg}};var Af={},Sf="InRuleRecoveryException",$f=class extends Error{constructor(e){super(e),this.name=Sf}},wc=class{initRecoverable(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=q(e,"recoveryEnabled")?e.recoveryEnabled:wt.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=DE)}getTokenToInsert(e){let r=Kr(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return r.isInsertedInRecovery=!0,r}canTokenTypeBeInsertedInRecovery(e){return!0}canTokenTypeBeDeletedInRecovery(e){return!0}tryInRepetitionRecovery(e,r,n,i){let s=this.findReSyncTokenType(),a=this.exportLexerState(),o=[],c=!1,l=this.LA(1),u=this.LA(1),p=()=>{let h=this.LA(0),g=this.errorMessageProvider.buildMismatchTokenMessage({expected:i,actual:l,previous:h,ruleName:this.getCurrRuleFullName()}),C=new Zn(g,l,this.LA(0));C.resyncedTokens=tn(o),this.SAVE_ERROR(C)};for(;!c;)if(this.tokenMatcher(u,i)){p();return}else if(n.call(this)){p(),e.apply(this,r);return}else this.tokenMatcher(u,s)?c=!0:(u=this.SKIP_TOKEN(),this.addToResyncTokens(u,o));this.importLexerState(a)}shouldInRepetitionRecoveryBeTried(e,r,n){return!(n===!1||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,r)))}getFollowsForInRuleRecovery(e,r){let n=this.getCurrentGrammarPath(e,r);return this.getNextPossibleTokenTypes(n)}tryInRuleRecovery(e,r){if(this.canRecoverWithSingleTokenInsertion(e,r))return this.getTokenToInsert(e);if(this.canRecoverWithSingleTokenDeletion(e)){let n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new $f("sad sad panda")}canPerformInRuleRecovery(e,r){return this.canRecoverWithSingleTokenInsertion(e,r)||this.canRecoverWithSingleTokenDeletion(e)}canRecoverWithSingleTokenInsertion(e,r){if(!this.canTokenTypeBeInsertedInRecovery(e)||Z(r))return!1;let n=this.LA(1);return Lr(r,s=>this.tokenMatcher(n,s))!==void 0}canRecoverWithSingleTokenDeletion(e){return this.canTokenTypeBeDeletedInRecovery(e)?this.tokenMatcher(this.LA(2),e):!1}isInCurrentRuleReSyncSet(e){let r=this.getCurrFollowKey(),n=this.getFollowSetFromFollowKey(r);return Pe(n,e)}findReSyncTokenType(){let e=this.flattenFollowSet(),r=this.LA(1),n=2;for(;;){let i=Lr(e,s=>xa(r,s));if(i!==void 0)return i;r=this.LA(n),n++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return Af;let e=this.getLastExplicitRuleShortName(),r=this.getLastExplicitRuleOccurrenceIndex(),n=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:r,inRule:this.shortRuleNameToFullName(n)}}buildFullFollowKeyStack(){let e=this.RULE_STACK,r=this.RULE_OCCURRENCE_STACK;return I(e,(n,i)=>i===0?Af:{ruleName:this.shortRuleNameToFullName(n),idxInCallingRule:r[i],inRule:this.shortRuleNameToFullName(e[i-1])})}flattenFollowSet(){let e=I(this.buildFullFollowKeyStack(),r=>this.getFollowSetFromFollowKey(r));return Ve(e)}getFollowSetFromFollowKey(e){if(e===Af)return[Bt];let r=e.ruleName+e.idxInCallingRule+hc+e.inRule;return this.resyncFollows[r]}addToResyncTokens(e,r){return this.tokenMatcher(e,Bt)||r.push(e),r}reSyncTo(e){let r=[],n=this.LA(1);for(;this.tokenMatcher(n,e)===!1;)n=this.SKIP_TOKEN(),this.addToResyncTokens(n,r);return tn(r)}attemptInRepetitionRecovery(e,r,n,i,s,a,o){}getCurrentGrammarPath(e,r){let n=this.getHumanReadableRuleStack(),i=Ne(this.RULE_OCCURRENCE_STACK);return{ruleStack:n,occurrenceStack:i,lastTok:e,lastTokOccurrence:r}}getHumanReadableRuleStack(){return I(this.RULE_STACK,e=>this.shortRuleNameToFullName(e))}};function DE(t,e,r,n,i,s,a){let o=this.getKeyForAutomaticLookahead(n,i),c=this.firstAfterRepMap[o];if(c===void 0){let h=this.getCurrRuleFullName(),g=this.getGAstProductions()[h];c=new s(g,i).startWalking(),this.firstAfterRepMap[o]=c}let l=c.token,u=c.occurrence,p=c.isEndOfRule;this.RULE_STACK.length===1&&p&&l===void 0&&(l=Bt,u=1),!(l===void 0||u===void 0)&&this.shouldInRepetitionRecoveryBeTried(l,u,a)&&this.tryInRepetitionRecovery(t,e,r,l)}function Ic(t,e,r){return r|e|t}var Yr=class{constructor(e){var r;this.maxLookahead=(r=e?.maxLookahead)!==null&&r!==void 0?r:wt.maxLookahead}validate(e){let r=this.validateNoLeftRecursion(e.rules);if(Z(r)){let n=this.validateEmptyOrAlternatives(e.rules),i=this.validateAmbiguousAlternationAlternatives(e.rules,this.maxLookahead),s=this.validateSomeNonEmptyLookaheadPath(e.rules,this.maxLookahead);return[...r,...n,...i,...s]}return r}validateNoLeftRecursion(e){return ht(e,r=>Ef(r,r,cr))}validateEmptyOrAlternatives(e){return ht(e,r=>Ym(r,cr))}validateAmbiguousAlternationAlternatives(e,r){return ht(e,n=>Xm(n,r,cr))}validateSomeNonEmptyLookaheadPath(e,r){return Jm(e,r,cr)}buildLookaheadForAlternation(e){return Fm(e.prodOccurrence,e.rule,e.maxLookahead,e.hasPredicates,e.dynamicTokensEnabled,Um)}buildLookaheadForOptional(e){return Gm(e.prodOccurrence,e.rule,e.maxLookahead,e.dynamicTokensEnabled,Aa(e.prodType),qm)}};var bc=class{initLooksAhead(e){this.dynamicTokensEnabled=q(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:wt.dynamicTokensEnabled,this.maxLookahead=q(e,"maxLookahead")?e.maxLookahead:wt.maxLookahead,this.lookaheadStrategy=q(e,"lookaheadStrategy")?e.lookaheadStrategy:new Yr({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(e){D(e,r=>{this.TRACE_INIT(`${r.name} Rule Lookahead`,()=>{let{alternation:n,repetition:i,option:s,repetitionMandatory:a,repetitionMandatoryWithSeparator:o,repetitionWithSeparator:c}=ME(r);D(n,l=>{let u=l.idx===0?"":l.idx;this.TRACE_INIT(`${Ot(l)}${u}`,()=>{let p=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:l.idx,rule:r,maxLookahead:l.maxLookahead||this.maxLookahead,hasPredicates:l.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),h=Ic(this.fullRuleNameToShort[r.name],256,l.idx);this.setLaFuncCache(h,p)})}),D(i,l=>{this.computeLookaheadFunc(r,l.idx,768,"Repetition",l.maxLookahead,Ot(l))}),D(s,l=>{this.computeLookaheadFunc(r,l.idx,512,"Option",l.maxLookahead,Ot(l))}),D(a,l=>{this.computeLookaheadFunc(r,l.idx,1024,"RepetitionMandatory",l.maxLookahead,Ot(l))}),D(o,l=>{this.computeLookaheadFunc(r,l.idx,1536,"RepetitionMandatoryWithSeparator",l.maxLookahead,Ot(l))}),D(c,l=>{this.computeLookaheadFunc(r,l.idx,1280,"RepetitionWithSeparator",l.maxLookahead,Ot(l))})})})}computeLookaheadFunc(e,r,n,i,s,a){this.TRACE_INIT(`${a}${r===0?"":r}`,()=>{let o=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:r,rule:e,maxLookahead:s||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:i}),c=Ic(this.fullRuleNameToShort[e.name],n,r);this.setLaFuncCache(c,o)})}getKeyForAutomaticLookahead(e,r){let n=this.getLastExplicitRuleShortName();return Ic(n,e,r)}getLaFuncFromCache(e){return this.lookAheadFuncsCache.get(e)}setLaFuncCache(e,r){this.lookAheadFuncsCache.set(e,r)}},kf=class extends Ct{constructor(){super(...arguments),this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(e){this.dslMethods.option.push(e)}visitRepetitionWithSeparator(e){this.dslMethods.repetitionWithSeparator.push(e)}visitRepetitionMandatory(e){this.dslMethods.repetitionMandatory.push(e)}visitRepetitionMandatoryWithSeparator(e){this.dslMethods.repetitionMandatoryWithSeparator.push(e)}visitRepetition(e){this.dslMethods.repetition.push(e)}visitAlternation(e){this.dslMethods.alternation.push(e)}},_c=new kf;function ME(t){_c.reset(),t.accept(_c);let e=_c.dslMethods;return _c.reset(),e}function wf(t,e){isNaN(t.startOffset)===!0?(t.startOffset=e.startOffset,t.endOffset=e.endOffset):t.endOffseta.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>: - ${s.join(` - -`).replace(/\n/g,` - `)}`)}}};return r.prototype=n,r.prototype.constructor=r,r._RULE_NAMES=e,r}function cg(t,e,r){let n=function(){};_f(n,t+"BaseSemanticsWithDefaults");let i=Object.create(r.prototype);return D(e,s=>{i[s]=GE}),n.prototype=i,n.prototype.constructor=n,n}var lg=(function(t){return t[t.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",t[t.MISSING_METHOD=1]="MISSING_METHOD",t})(lg||{});function UE(t,e){return qE(t,e)}function qE(t,e){let r=ct(e,i=>mr(t[i])===!1),n=I(r,i=>({msg:`Missing visitor method: <${i}> on ${t.constructor.name} CST Visitor.`,type:lg.MISSING_METHOD,methodName:i}));return Or(n)}var Dc=class{initTreeBuilder(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=q(e,"nodeLocationTracking")?e.nodeLocationTracking:wt.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=et,this.cstFinallyStateUpdate=et,this.cstPostTerminal=et,this.cstPostNonTerminal=et,this.cstPostRule=et;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=If,this.setNodeLocationFromNode=If,this.cstPostRule=et,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=et,this.setNodeLocationFromNode=et,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=wf,this.setNodeLocationFromNode=wf,this.cstPostRule=et,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=et,this.setNodeLocationFromNode=et,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=et,this.setNodeLocationFromNode=et,this.cstPostRule=et,this.setInitialNodeLocation=et;else throw Error(`Invalid config option: "${e.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(e){e.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(e){let r=this.LA(1);e.location={startOffset:r.startOffset,startLine:r.startLine,startColumn:r.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(e){let r={name:e,children:Object.create(null)};this.setInitialNodeLocation(r),this.CST_STACK.push(r)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?(n.endOffset=r.endOffset,n.endLine=r.endLine,n.endColumn=r.endColumn):(n.startOffset=NaN,n.startLine=NaN,n.startColumn=NaN)}cstPostRuleOnlyOffset(e){let r=this.LA(0),n=e.location;n.startOffset<=r.startOffset?n.endOffset=r.endOffset:n.startOffset=NaN}cstPostTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];sg(n,r,e),this.setNodeLocationFromToken(n.location,r)}cstPostNonTerminal(e,r){let n=this.CST_STACK[this.CST_STACK.length-1];ag(n,r,e),this.setNodeLocationFromNode(n.location,e.location)}getBaseCstVisitorConstructor(){if($t(this.baseCstVisitorConstructor)){let e=og(this.className,Pr(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if($t(this.baseCstVisitorWithDefaultsConstructor)){let e=cg(this.className,Pr(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-1]}getPreviousExplicitRuleShortName(){let e=this.RULE_STACK;return e[e.length-2]}getLastExplicitRuleOccurrenceIndex(){let e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]}};var Mc=class{initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(e){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length}get input(){return this.tokVector}SKIP_TOKEN(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):Hi}LA(e){let r=this.currIdx+e;return r<0||this.tokVectorLength<=r?Hi:this.tokVector[r]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(e){this.currIdx=e}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}};var Fc=class{ACTION(e){return e.call(this)}consume(e,r,n){return this.consumeInternal(r,e,n)}subrule(e,r,n){return this.subruleInternal(r,e,n)}option(e,r){return this.optionInternal(r,e)}or(e,r){return this.orInternal(r,e)}many(e,r){return this.manyInternal(e,r)}atLeastOne(e,r){return this.atLeastOneInternal(e,r)}CONSUME(e,r){return this.consumeInternal(e,0,r)}CONSUME1(e,r){return this.consumeInternal(e,1,r)}CONSUME2(e,r){return this.consumeInternal(e,2,r)}CONSUME3(e,r){return this.consumeInternal(e,3,r)}CONSUME4(e,r){return this.consumeInternal(e,4,r)}CONSUME5(e,r){return this.consumeInternal(e,5,r)}CONSUME6(e,r){return this.consumeInternal(e,6,r)}CONSUME7(e,r){return this.consumeInternal(e,7,r)}CONSUME8(e,r){return this.consumeInternal(e,8,r)}CONSUME9(e,r){return this.consumeInternal(e,9,r)}SUBRULE(e,r){return this.subruleInternal(e,0,r)}SUBRULE1(e,r){return this.subruleInternal(e,1,r)}SUBRULE2(e,r){return this.subruleInternal(e,2,r)}SUBRULE3(e,r){return this.subruleInternal(e,3,r)}SUBRULE4(e,r){return this.subruleInternal(e,4,r)}SUBRULE5(e,r){return this.subruleInternal(e,5,r)}SUBRULE6(e,r){return this.subruleInternal(e,6,r)}SUBRULE7(e,r){return this.subruleInternal(e,7,r)}SUBRULE8(e,r){return this.subruleInternal(e,8,r)}SUBRULE9(e,r){return this.subruleInternal(e,9,r)}OPTION(e){return this.optionInternal(e,0)}OPTION1(e){return this.optionInternal(e,1)}OPTION2(e){return this.optionInternal(e,2)}OPTION3(e){return this.optionInternal(e,3)}OPTION4(e){return this.optionInternal(e,4)}OPTION5(e){return this.optionInternal(e,5)}OPTION6(e){return this.optionInternal(e,6)}OPTION7(e){return this.optionInternal(e,7)}OPTION8(e){return this.optionInternal(e,8)}OPTION9(e){return this.optionInternal(e,9)}OR(e){return this.orInternal(e,0)}OR1(e){return this.orInternal(e,1)}OR2(e){return this.orInternal(e,2)}OR3(e){return this.orInternal(e,3)}OR4(e){return this.orInternal(e,4)}OR5(e){return this.orInternal(e,5)}OR6(e){return this.orInternal(e,6)}OR7(e){return this.orInternal(e,7)}OR8(e){return this.orInternal(e,8)}OR9(e){return this.orInternal(e,9)}MANY(e){this.manyInternal(0,e)}MANY1(e){this.manyInternal(1,e)}MANY2(e){this.manyInternal(2,e)}MANY3(e){this.manyInternal(3,e)}MANY4(e){this.manyInternal(4,e)}MANY5(e){this.manyInternal(5,e)}MANY6(e){this.manyInternal(6,e)}MANY7(e){this.manyInternal(7,e)}MANY8(e){this.manyInternal(8,e)}MANY9(e){this.manyInternal(9,e)}MANY_SEP(e){this.manySepFirstInternal(0,e)}MANY_SEP1(e){this.manySepFirstInternal(1,e)}MANY_SEP2(e){this.manySepFirstInternal(2,e)}MANY_SEP3(e){this.manySepFirstInternal(3,e)}MANY_SEP4(e){this.manySepFirstInternal(4,e)}MANY_SEP5(e){this.manySepFirstInternal(5,e)}MANY_SEP6(e){this.manySepFirstInternal(6,e)}MANY_SEP7(e){this.manySepFirstInternal(7,e)}MANY_SEP8(e){this.manySepFirstInternal(8,e)}MANY_SEP9(e){this.manySepFirstInternal(9,e)}AT_LEAST_ONE(e){this.atLeastOneInternal(0,e)}AT_LEAST_ONE1(e){return this.atLeastOneInternal(1,e)}AT_LEAST_ONE2(e){this.atLeastOneInternal(2,e)}AT_LEAST_ONE3(e){this.atLeastOneInternal(3,e)}AT_LEAST_ONE4(e){this.atLeastOneInternal(4,e)}AT_LEAST_ONE5(e){this.atLeastOneInternal(5,e)}AT_LEAST_ONE6(e){this.atLeastOneInternal(6,e)}AT_LEAST_ONE7(e){this.atLeastOneInternal(7,e)}AT_LEAST_ONE8(e){this.atLeastOneInternal(8,e)}AT_LEAST_ONE9(e){this.atLeastOneInternal(9,e)}AT_LEAST_ONE_SEP(e){this.atLeastOneSepFirstInternal(0,e)}AT_LEAST_ONE_SEP1(e){this.atLeastOneSepFirstInternal(1,e)}AT_LEAST_ONE_SEP2(e){this.atLeastOneSepFirstInternal(2,e)}AT_LEAST_ONE_SEP3(e){this.atLeastOneSepFirstInternal(3,e)}AT_LEAST_ONE_SEP4(e){this.atLeastOneSepFirstInternal(4,e)}AT_LEAST_ONE_SEP5(e){this.atLeastOneSepFirstInternal(5,e)}AT_LEAST_ONE_SEP6(e){this.atLeastOneSepFirstInternal(6,e)}AT_LEAST_ONE_SEP7(e){this.atLeastOneSepFirstInternal(7,e)}AT_LEAST_ONE_SEP8(e){this.atLeastOneSepFirstInternal(8,e)}AT_LEAST_ONE_SEP9(e){this.atLeastOneSepFirstInternal(9,e)}RULE(e,r,n=Yi){if(Pe(this.definedRulesNames,e)){let a={message:cr.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),type:it.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(a)}this.definedRulesNames.push(e);let i=this.defineRule(e,r,n);return this[e]=i,i}OVERRIDE_RULE(e,r,n=Yi){let i=Hm(e,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(i);let s=this.defineRule(e,r,n);return this[e]=s,s}BACKTRACK(e,r){return function(){this.isBackTrackingStack.push(1);let n=this.saveRecogState();try{return e.apply(this,r),!0}catch(i){if(gn(i))return!1;throw i}finally{this.reloadRecogState(n),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return pc(Ce(this.gastProductionsCache))}};var Gc=class{initRecognizerEngine(e,r){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=zi,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},q(r,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. - See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 - For Further details.`);if(Ze(e)){if(Z(e))throw Error(`A Token Vocabulary cannot be empty. - Note that the first argument for the parser constructor - is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. - See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 - For Further details.`)}if(Ze(e))this.tokensMap=Ue(e,(s,a)=>(s[a.name]=a,s),{});else if(q(e,"modes")&&At(Ve(Ce(e.modes)),km)){let s=Ve(Ce(e.modes)),a=Hs(s);this.tokensMap=Ue(a,(o,c)=>(o[c.name]=c,o),{})}else if(Fh(e))this.tokensMap=Ne(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=Bt;let n=q(e,"modes")?Ve(Ce(e.modes)):Ce(e),i=At(n,s=>Z(s.categoryMatches));this.tokenMatcher=i?zi:Br,Wr(Ce(this.tokensMap))}defineRule(e,r,n){if(this.selfAnalysisDone)throw Error(`Grammar rule <${e}> may not be defined after the 'performSelfAnalysis' method has been called' -Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let i=q(n,"resyncEnabled")?n.resyncEnabled:Yi.resyncEnabled,s=q(n,"recoveryValueFunc")?n.recoveryValueFunc:Yi.recoveryValueFunc,a=this.ruleShortNameIdx<<12;this.ruleShortNameIdx++,this.shortRuleNameToFull[a]=e,this.fullRuleNameToShort[e]=a;let o;return this.outputCst===!0?o=function(...u){try{this.ruleInvocationStateUpdate(a,e,this.subruleIdx),r.apply(this,u);let p=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(p),p}catch(p){return this.invokeRuleCatch(p,i,s)}finally{this.ruleFinallyStateUpdate()}}:o=function(...u){try{return this.ruleInvocationStateUpdate(a,e,this.subruleIdx),r.apply(this,u)}catch(p){return this.invokeRuleCatch(p,i,s)}finally{this.ruleFinallyStateUpdate()}},Object.assign(o,{ruleName:e,originalGrammarAction:r})}invokeRuleCatch(e,r,n){let i=this.RULE_STACK.length===1,s=r&&!this.isBackTracking()&&this.recoveryEnabled;if(gn(e)){let a=e;if(s){let o=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(o))if(a.resyncedTokens=this.reSyncTo(o),this.outputCst){let c=this.CST_STACK[this.CST_STACK.length-1];return c.recoveredNode=!0,c}else return n(e);else{if(this.outputCst){let c=this.CST_STACK[this.CST_STACK.length-1];c.recoveredNode=!0,a.partialCstResult=c}throw a}}else{if(i)return this.moveToTerminatedState(),n(e);throw a}}else throw e}optionInternal(e,r){let n=this.getKeyForAutomaticLookahead(512,r);return this.optionInternalLogic(e,r,n)}optionInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof e!="function"){s=e.DEF;let a=e.GATE;if(a!==void 0){let o=i;i=()=>a.call(this)&&o.call(this)}}else s=e;if(i.call(this)===!0)return s.call(this)}atLeastOneInternal(e,r){let n=this.getKeyForAutomaticLookahead(1024,e);return this.atLeastOneInternalLogic(e,r,n)}atLeastOneInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof r!="function"){s=r.DEF;let a=r.GATE;if(a!==void 0){let o=i;i=()=>a.call(this)&&o.call(this)}}else s=r;if(i.call(this)===!0){let a=this.doSingleRepetition(s);for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s)}else throw this.raiseEarlyExitException(e,De.REPETITION_MANDATORY,r.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[e,r],i,1024,e,Ec)}atLeastOneSepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1536,e);this.atLeastOneSepFirstInternalLogic(e,r,n)}atLeastOneSepFirstInternalLogic(e,r,n){let i=r.DEF,s=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let o=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,o,i,Ea],o,1536,e,Ea)}else throw this.raiseEarlyExitException(e,De.REPETITION_MANDATORY_WITH_SEPARATOR,r.ERR_MSG)}manyInternal(e,r){let n=this.getKeyForAutomaticLookahead(768,e);return this.manyInternalLogic(e,r,n)}manyInternalLogic(e,r,n){let i=this.getLaFuncFromCache(n),s;if(typeof r!="function"){s=r.DEF;let o=r.GATE;if(o!==void 0){let c=i;i=()=>o.call(this)&&c.call(this)}}else s=r;let a=!0;for(;i.call(this)===!0&&a===!0;)a=this.doSingleRepetition(s);this.attemptInRepetitionRecovery(this.manyInternal,[e,r],i,768,e,vc,a)}manySepFirstInternal(e,r){let n=this.getKeyForAutomaticLookahead(1280,e);this.manySepFirstInternalLogic(e,r,n)}manySepFirstInternalLogic(e,r,n){let i=r.DEF,s=r.SEP;if(this.getLaFuncFromCache(n).call(this)===!0){i.call(this);let o=()=>this.tokenMatcher(this.LA(1),s);for(;this.tokenMatcher(this.LA(1),s)===!0;)this.CONSUME(s),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,s,o,i,va],o,1280,e,va)}}repetitionSepSecondInternal(e,r,n,i,s){for(;n();)this.CONSUME(r),i.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[e,r,n,i,s],n,1536,e,s)}doSingleRepetition(e){let r=this.getLexerPosition();return e.call(this),this.getLexerPosition()>r}orInternal(e,r){let n=this.getKeyForAutomaticLookahead(256,r),i=Ze(e)?e:e.DEF,a=this.getLaFuncFromCache(n).call(this,i);if(a!==void 0)return i[a].ALT.call(this);this.raiseNoAltException(r,e.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let e=this.LA(1),r=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new ka(r,e))}}subruleInternal(e,r,n){let i;try{let s=n!==void 0?n.ARGS:void 0;return this.subruleIdx=r,i=e.apply(this,s),this.cstPostNonTerminal(i,n!==void 0&&n.LABEL!==void 0?n.LABEL:e.ruleName),i}catch(s){throw this.subruleInternalError(s,n,e.ruleName)}}subruleInternalError(e,r,n){throw gn(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,r!==void 0&&r.LABEL!==void 0?r.LABEL:n),delete e.partialCstResult),e}consumeInternal(e,r,n){let i;try{let s=this.LA(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),i=s):this.consumeInternalError(e,s,n)}catch(s){i=this.consumeInternalRecovery(e,r,s)}return this.cstPostTerminal(n!==void 0&&n.LABEL!==void 0?n.LABEL:e.name,i),i}consumeInternalError(e,r,n){let i,s=this.LA(0);throw n!==void 0&&n.ERR_MSG?i=n.ERR_MSG:i=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:r,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Zn(i,r,s))}consumeInternalRecovery(e,r,n){if(this.recoveryEnabled&&n.name==="MismatchedTokenException"&&!this.isBackTracking()){let i=this.getFollowsForInRuleRecovery(e,r);try{return this.tryInRuleRecovery(e,i)}catch(s){throw s.name===Sf?n:s}}else throw n}saveRecogState(){let e=this.errors,r=Ne(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:r,CST_STACK:this.CST_STACK}}reloadRecogState(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK}ruleInvocationStateUpdate(e,r,n){this.RULE_OCCURRENCE_STACK.push(n),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(r)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]}shortRuleNameToFullName(e){return this.shortRuleNameToFull[e]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),Bt)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}};var Uc=class{initErrorHandler(e){this._errors=[],this.errorMessageProvider=q(e,"errorMessageProvider")?e.errorMessageProvider:wt.errorMessageProvider}SAVE_ERROR(e){if(gn(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:Ne(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return Ne(this._errors)}set errors(e){this._errors=e}raiseEarlyExitException(e,r,n){let i=this.getCurrRuleFullName(),s=this.getGAstProductions()[i],o=Vi(e,s,r,this.maxLookahead)[0],c=[];for(let u=1;u<=this.maxLookahead;u++)c.push(this.LA(u));let l=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:o,actual:c,previous:this.LA(0),customUserDescription:n,ruleName:i});throw this.SAVE_ERROR(new Na(l,this.LA(1),this.LA(0)))}raiseNoAltException(e,r){let n=this.getCurrRuleFullName(),i=this.getGAstProductions()[n],s=Wi(e,i,this.maxLookahead),a=[];for(let l=1;l<=this.maxLookahead;l++)a.push(this.LA(l));let o=this.LA(0),c=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:a,previous:o,customUserDescription:r,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Sa(c,this.LA(1),o))}};var qc=class{initContentAssist(){}computeContentAssist(e,r){let n=this.gastProductionsCache[e];if($t(n))throw Error(`Rule ->${e}<- does not exist in this grammar.`);return $c([n],r,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(e){let r=pt(e.ruleStack),i=this.getGAstProductions()[r];return new xc(i,e).startWalking()}};var Bc={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(Bc);var ug=!0,fg=Math.pow(2,8)-1,pg=mn({name:"RECORDING_PHASE_TOKEN",pattern:He.NA});Wr([pg]);var hg=Kr(pg,`This IToken indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(hg);var jE={name:`This CSTNode indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},zc=class{initGastRecorder(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let e=0;e<10;e++){let r=e>0?e:"";this[`CONSUME${r}`]=function(n,i){return this.consumeInternalRecord(n,e,i)},this[`SUBRULE${r}`]=function(n,i){return this.subruleInternalRecord(n,e,i)},this[`OPTION${r}`]=function(n){return this.optionInternalRecord(n,e)},this[`OR${r}`]=function(n){return this.orInternalRecord(n,e)},this[`MANY${r}`]=function(n){this.manyInternalRecord(e,n)},this[`MANY_SEP${r}`]=function(n){this.manySepFirstInternalRecord(e,n)},this[`AT_LEAST_ONE${r}`]=function(n){this.atLeastOneInternalRecord(e,n)},this[`AT_LEAST_ONE_SEP${r}`]=function(n){this.atLeastOneSepFirstInternalRecord(e,n)}}this.consume=function(e,r,n){return this.consumeInternalRecord(r,e,n)},this.subrule=function(e,r,n){return this.subruleInternalRecord(r,e,n)},this.option=function(e,r){return this.optionInternalRecord(r,e)},this.or=function(e,r){return this.orInternalRecord(r,e)},this.many=function(e,r){this.manyInternalRecord(e,r)},this.atLeastOne=function(e,r){this.atLeastOneInternalRecord(e,r)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let e=this;for(let r=0;r<10;r++){let n=r>0?r:"";delete e[`CONSUME${n}`],delete e[`SUBRULE${n}`],delete e[`OPTION${n}`],delete e[`OR${n}`],delete e[`MANY${n}`],delete e[`MANY_SEP${n}`],delete e[`AT_LEAST_ONE${n}`],delete e[`AT_LEAST_ONE_SEP${n}`]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})}ACTION_RECORD(e){}BACKTRACK_RECORD(e,r){return()=>!0}LA_RECORD(e){return Hi}topLevelRuleRecord(e,r){try{let n=new Nt({definition:[],name:e});return n.name=e,this.recordingProdStack.push(n),r.call(this),this.recordingProdStack.pop(),n}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` - This error was thrown during the "grammar recording phase" For more info see: - https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch(i){throw n}throw n}}optionInternalRecord(e,r){return wa.call(this,he,e,r)}atLeastOneInternalRecord(e,r){wa.call(this,Ae,r,e)}atLeastOneSepFirstInternalRecord(e,r){wa.call(this,$e,r,e,ug)}manyInternalRecord(e,r){wa.call(this,se,r,e)}manySepFirstInternalRecord(e,r){wa.call(this,Re,r,e,ug)}orInternalRecord(e,r){return BE.call(this,e,r)}subruleInternalRecord(e,r,n){if(jc(r),!e||q(e,"ruleName")===!1){let o=new Error(` argument is invalid expecting a Parser method reference but got: <${JSON.stringify(e)}> - inside top level rule: <${this.recordingProdStack[0].name}>`);throw o.KNOWN_RECORDER_ERROR=!0,o}let i=gr(this.recordingProdStack),s=e.ruleName,a=new pe({idx:r,nonTerminalName:s,label:n?.LABEL,referencedRule:void 0});return i.definition.push(a),this.outputCst?jE:Bc}consumeInternalRecord(e,r,n){if(jc(r),!hf(e)){let a=new Error(` argument is invalid expecting a TokenType reference but got: <${JSON.stringify(e)}> - inside top level rule: <${this.recordingProdStack[0].name}>`);throw a.KNOWN_RECORDER_ERROR=!0,a}let i=gr(this.recordingProdStack),s=new te({idx:r,terminalType:e,label:n?.LABEL});return i.definition.push(s),hg}};function wa(t,e,r,n=!1){jc(r);let i=gr(this.recordingProdStack),s=mr(e)?e:e.DEF,a=new t({definition:[],idx:r});return n&&(a.separator=e.SEP),q(e,"MAX_LOOKAHEAD")&&(a.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(a),s.call(this),i.definition.push(a),this.recordingProdStack.pop(),Bc}function BE(t,e){jc(e);let r=gr(this.recordingProdStack),n=Ze(t)===!1,i=n===!1?t:t.DEF,s=new xe({definition:[],idx:e,ignoreAmbiguities:n&&t.IGNORE_AMBIGUITIES===!0});q(t,"MAX_LOOKAHEAD")&&(s.maxLookahead=t.MAX_LOOKAHEAD);let a=Mo(i,o=>mr(o.GATE));return s.hasPredicates=a,r.definition.push(s),D(i,o=>{let c=new Ee({definition:[]});s.definition.push(c),q(o,"IGNORE_AMBIGUITIES")?c.ignoreAmbiguities=o.IGNORE_AMBIGUITIES:q(o,"GATE")&&(c.ignoreAmbiguities=!0),this.recordingProdStack.push(c),o.ALT.call(this),this.recordingProdStack.pop()}),Bc}function dg(t){return t===0?"":`${t}`}function jc(t){if(t<0||t>fg){let e=new Error(`Invalid DSL Method idx value: <${t}> - Idx value must be a none negative value smaller than ${fg+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}var Wc=class{initPerformanceTracer(e){if(q(e,"traceInitPerf")){let r=e.traceInitPerf,n=typeof r=="number";this.traceInitMaxIdent=n?r:1/0,this.traceInitPerf=n?r>0:r}else this.traceInitMaxIdent=0,this.traceInitPerf=wt.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(e,r){if(this.traceInitPerf===!0){this.traceInitIndent++;let n=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <${e}>`);let{time:i,value:s}=ga(r),a=i>10?console.warn:console.log;return this.traceInitIndent time: ${i}ms`),this.traceInitIndent--,s}else return r()}};function mg(t,e){e.forEach(r=>{let n=r.prototype;Object.getOwnPropertyNames(n).forEach(i=>{if(i==="constructor")return;let s=Object.getOwnPropertyDescriptor(n,i);s&&(s.get||s.set)?Object.defineProperty(t.prototype,i,s):t.prototype[i]=r.prototype[i]})})}var Hi=Kr(Bt,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Hi);var wt=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Hr,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),Yi=Object.freeze({recoveryValueFunc:()=>{},resyncEnabled:!0}),it=(function(t){return t[t.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",t[t.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",t[t.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",t[t.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",t[t.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",t[t.LEFT_RECURSION=5]="LEFT_RECURSION",t[t.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",t[t.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",t[t.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",t[t.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",t[t.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",t[t.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",t[t.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",t[t.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION",t})(it||{});function Vc(t=void 0){return function(){return t}}var gg=(()=>{class t{static performSelfAnalysis(r){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let r;this.selfAnalysisDone=!0;let n=this.className;this.TRACE_INIT("toFastProps",()=>{ya(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),D(this.definedRulesNames,s=>{let o=this[s].originalGrammarAction,c;this.TRACE_INIT(`${s} Rule`,()=>{c=this.topLevelRuleRecord(s,o)}),this.gastProductionsCache[s]=c})}finally{this.disableRecording()}});let i=[];if(this.TRACE_INIT("Grammar Resolving",()=>{i=Qm({rules:Ce(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(i)}),this.TRACE_INIT("Grammar Validations",()=>{if(Z(i)&&this.skipValidations===!1){let s=Zm({rules:Ce(this.gastProductionsCache),tokenTypes:Ce(this.tokensMap),errMsgProvider:cr,grammarName:n}),a=Wm({lookaheadStrategy:this.lookaheadStrategy,rules:Ce(this.gastProductionsCache),tokenTypes:Ce(this.tokensMap),grammarName:n});this.definitionErrors=this.definitionErrors.concat(s,a)}}),Z(this.definitionErrors)&&(this.recoveryEnabled&&this.TRACE_INIT("computeAllProdsFollows",()=>{let s=om(Ce(this.gastProductionsCache));this.resyncFollows=s}),this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var s,a;(a=(s=this.lookaheadStrategy).initialize)===null||a===void 0||a.call(s,{rules:Ce(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(Ce(this.gastProductionsCache))})),!t.DEFER_DEFINITION_ERRORS_HANDLING&&!Z(this.definitionErrors))throw r=I(this.definitionErrors,s=>s.message),new Error(`Parser Definition Errors detected: - ${r.join(` -------------------------------- -`)}`)})}constructor(r,n){this.definitionErrors=[],this.selfAnalysisDone=!1;let i=this;if(i.initErrorHandler(n),i.initLexerAdapter(),i.initLooksAhead(n),i.initRecognizerEngine(r,n),i.initRecoverable(n),i.initTreeBuilder(n),i.initContentAssist(),i.initGastRecorder(n),i.initPerformanceTracer(n),q(n,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. - Please use the flag on the relevant DSL method instead. - See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES - For further details.`);this.skipValidations=q(n,"skipValidations")?n.skipValidations:wt.skipValidations}}return t.DEFER_DEFINITION_ERRORS_HANDLING=!1,t})();mg(gg,[wc,bc,Dc,Mc,Gc,Fc,Uc,qc,zc,Wc]);var Ia=class extends gg{constructor(e,r=wt){let n=Ne(r);n.outputCst=!1,super(e,n)}};function ei(t,e,r){return`${t.name}_${e}_${r}`}var yn=1,VE=2,yg=4,Tg=5;var Qi=7,KE=8,HE=9,YE=10,XE=11,Rg=12,_a=class{constructor(e){this.target=e}isEpsilon(){return!1}},Xi=class extends _a{constructor(e,r){super(e),this.tokenType=r}},ba=class extends _a{constructor(e){super(e)}isEpsilon(){return!0}},Ji=class extends _a{constructor(e,r,n){super(e),this.rule=r,this.followState=n}isEpsilon(){return!0}};function xg(t){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};JE(e,t);let r=t.length;for(let n=0;nvg(t,e,a));return Zi(t,e,n,r,...i)}function nA(t,e,r){let n=st(t,e,r,{type:yn});Tn(t,n);let i=Zi(t,e,n,r,ti(t,e,r));return iA(t,e,r,i)}function ti(t,e,r){let n=ct(I(r.definition,i=>vg(t,e,i)),i=>i!==void 0);return n.length===1?n[0]:n.length===0?void 0:aA(t,n)}function Eg(t,e,r,n,i){let s=n.left,a=n.right,o=st(t,e,r,{type:XE});Tn(t,o);let c=st(t,e,r,{type:Rg});return s.loopback=o,c.loopback=o,t.decisionMap[ei(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",r.idx)]=o,Ye(a,o),i===void 0?(Ye(o,s),Ye(o,c)):(Ye(o,c),Ye(o,i.left),Ye(i.right,s)),{left:s,right:c}}function Ag(t,e,r,n,i){let s=n.left,a=n.right,o=st(t,e,r,{type:YE});Tn(t,o);let c=st(t,e,r,{type:Rg}),l=st(t,e,r,{type:HE});return o.loopback=l,c.loopback=l,Ye(o,s),Ye(o,c),Ye(a,l),i!==void 0?(Ye(l,c),Ye(l,i.left),Ye(i.right,s)):Ye(l,o),t.decisionMap[ei(e,i?"RepetitionWithSeparator":"Repetition",r.idx)]=o,{left:o,right:c}}function iA(t,e,r,n){let i=n.left,s=n.right;return Ye(i,s),t.decisionMap[ei(e,"Option",r.idx)]=i,n}function Tn(t,e){return t.decisionStates.push(e),e.decision=t.decisionStates.length-1,e.decision}function Zi(t,e,r,n,...i){let s=st(t,e,n,{type:KE,start:r});r.end=s;for(let o of i)o!==void 0?(Ye(r,o.left),Ye(o.right,s)):Ye(r,s);let a={left:r,right:s};return t.decisionMap[ei(e,sA(n),n.idx)]=r,a}function sA(t){if(t instanceof xe)return"Alternation";if(t instanceof he)return"Option";if(t instanceof se)return"Repetition";if(t instanceof Re)return"RepetitionWithSeparator";if(t instanceof Ae)return"RepetitionMandatory";if(t instanceof $e)return"RepetitionMandatoryWithSeparator";throw new Error("Invalid production type encountered")}function aA(t,e){let r=e.length;for(let s=0;se.alt)}get key(){let e="";for(let r in this.map)e+=r+":";return e}};function Lf(t,e=!0){return`${e?`a${t.alt}`:""}s${t.state.stateNumber}:${t.stack.map(r=>r.stateNumber.toString()).join("_")}`}function uA(t,e){let r={};return n=>{let i=n.toString(),s=r[i];return s!==void 0||(s={atnStartState:t,decision:e,states:{}},r[i]=s),s}}var Kc=class{constructor(){this.predicates=[]}is(e){return e>=this.predicates.length||this.predicates[e]}set(e,r){this.predicates[e]=r}toString(){let e="",r=this.predicates.length;for(let n=0;nconsole.log(n)}initialize(e){this.atn=xg(e.rules),this.dfas=fA(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(e){let{prodOccurrence:r,rule:n,hasPredicates:i,dynamicTokensEnabled:s}=e,a=this.dfas,o=this.logging,c=ei(n,"Alternation",r),u=this.atn.decisionMap[c].decision,p=I(kc({maxLookahead:1,occurrence:r,prodType:"Alternation",rule:n}),h=>I(h,g=>g[0]));if(Sg(p,!1)&&!s){let h=Ue(p,(g,C,k)=>(D(C,G=>{G&&(g[G.tokenTypeIdx]=k,D(G.categoryMatches,M=>{g[M]=k}))}),g),{});return i?function(g){var C;let k=this.LA(1),G=h[k.tokenTypeIdx];if(g!==void 0&&G!==void 0){let M=(C=g[G])===null||C===void 0?void 0:C.GATE;if(M!==void 0&&M.call(this)===!1)return}return G}:function(){let g=this.LA(1);return h[g.tokenTypeIdx]}}else return i?function(h){let g=new Kc,C=h===void 0?0:h.length;for(let G=0;GI(h,g=>g[0]));if(Sg(p)&&p[0][0]&&!s){let h=p[0],g=Ve(h);if(g.length===1&&Z(g[0].categoryMatches)){let k=g[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===k}}else{let C=Ue(g,(k,G)=>(G!==void 0&&(k[G.tokenTypeIdx]=!0,D(G.categoryMatches,M=>{k[M]=!0})),k),{});return function(){let k=this.LA(1);return C[k.tokenTypeIdx]===!0}}}return function(){let h=Df.call(this,a,u,$g,o);return typeof h=="object"?!1:h===0}}};function Sg(t,e=!0){let r=new Set;for(let n of t){let i=new Set;for(let s of n){if(s===void 0){if(e)break;return!1}let a=[s.tokenTypeIdx].concat(s.categoryMatches);for(let o of a)if(r.has(o)){if(!i.has(o))return!1}else r.add(o),i.add(o)}}return!0}function fA(t){let e=t.decisionStates.length,r=Array(e);for(let n=0;nVr(i)).join(", "),r=t.production.idx===0?"":t.production.idx,n=`Ambiguous Alternatives Detected: <${t.ambiguityIndices.join(", ")}> in <${gA(t.production)}${r}> inside <${t.topLevelRule.name}> Rule, -<${e}> may appears as a prefix path in all these alternatives. -`;return n=n+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES -For Further details.`,n}function gA(t){if(t instanceof pe)return"SUBRULE";if(t instanceof he)return"OPTION";if(t instanceof xe)return"OR";if(t instanceof Ae)return"AT_LEAST_ONE";if(t instanceof $e)return"AT_LEAST_ONE_SEP";if(t instanceof Re)return"MANY_SEP";if(t instanceof se)return"MANY";if(t instanceof te)return"CONSUME";throw Error("non exhaustive match")}function yA(t,e,r){let n=ht(e.configs.elements,s=>s.state.transitions),i=zh(n.filter(s=>s instanceof Xi).map(s=>s.tokenType),s=>s.tokenTypeIdx);return{actualToken:r,possibleTokenTypes:i,tokenPath:t}}function TA(t,e){return t.edges[e.tokenTypeIdx]}function RA(t,e,r){let n=new es,i=[];for(let a of t.elements){if(r.is(a.alt)===!1)continue;if(a.state.type===Qi){i.push(a);continue}let o=a.state.transitions.length;for(let c=0;c0&&!$A(s))for(let a of i)s.add(a);return s}function xA(t,e){if(t instanceof Xi&&xa(e,t.tokenType))return t.target}function vA(t,e){let r;for(let n of t.elements)if(e.is(n.alt)===!0){if(r===void 0)r=n.alt;else if(r!==n.alt)return}return r}function Ng(t){return{configs:t,edges:{},isAcceptState:!1,prediction:-1}}function kg(t,e,r,n){return n=Cg(t,n),e.edges[r.tokenTypeIdx]=n,n}function Cg(t,e){if(e===Pa)return e;let r=e.configs.key,n=t.states[r];return n!==void 0?n:(e.configs.finalize(),t.states[r]=e,e)}function EA(t){let e=new es,r=t.transitions.length;for(let n=0;n0){let i=[...t.stack],a={state:i.pop(),alt:t.alt,stack:i};Hc(a,e)}else e.add(t);return}r.epsilonOnlyTransitions||e.add(t);let n=r.transitions.length;for(let i=0;i1)return!0;return!1}function wA(t){for(let e of Array.from(t.values()))if(Object.keys(e).length===1)return!0;return!1}as();var qa=class{constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(e){return this.rootNode=new os(e),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(e){let r=new si;return r.grammarSource=e,r.root=this.rootNode,this.current.content.push(r),this.nodeStack.push(r),r}buildLeafNode(e,r){let n=new ii(e.startOffset,e.image.length,Pi(e),e.tokenType,!r);return n.grammarSource=r,n.root=this.rootNode,this.current.content.push(n),n}removeNode(e){let r=e.container;if(r){let n=r.content.indexOf(e);n>=0&&r.content.splice(n,1)}}addHiddenNodes(e){let r=[];for(let s of e){let a=new ii(s.startOffset,s.image.length,Pi(s),s.tokenType,!0);a.root=this.rootNode,r.push(a)}let n=this.current,i=!1;if(n.content.length>0){n.content.push(...r);return}for(;n.container;){let s=n.container.content.indexOf(n);if(s>0){n.container.content.splice(s,0,...r),i=!0;break}n=n.container}i||this.rootNode.content.unshift(...r)}construct(e){let r=this.current;typeof e.$type=="string"&&!e.$infixName&&(this.current.astNode=e),e.$cstNode=r;let n=this.nodeStack.pop();n?.content.length===0&&this.removeNode(n)}},za=class{get hidden(){return!1}get astNode(){let e=typeof this._astNode?.$type=="string"?this._astNode:this.container?.astNode;if(!e)throw new Error("This node has no associated AST element");return e}set astNode(e){this._astNode=e}get text(){return this.root.fullText.substring(this.offset,this.end)}},ii=class extends za{get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(e,r,n,i,s=!1){super(),this._hidden=s,this._offset=e,this._tokenType=i,this._length=r,this._range=n}},si=class extends za{constructor(){super(...arguments),this.content=new Sd(this)}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let e=this.firstNonHiddenNode,r=this.lastNonHiddenNode;if(e&&r){if(this._rangeCache===void 0){let{range:n}=e,{range:i}=r;this._rangeCache={start:n.start,end:i.end.line=0;e--){let r=this.content[e];if(!r.hidden)return r}return this.content[this.content.length-1]}},Sd=class t extends Array{constructor(e){super(),this.parent=e,Object.setPrototypeOf(this,t.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,r,...n){return this.addParents(n),super.splice(e,r,...n)}addParents(e){for(let r of e)r.container=this.parent}},os=class extends si{get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(e){super(),this._text="",this._text=e??""}};var sl=Symbol("Datatype");function kd(t){return t.$type===sl}var jg="\u200B",Bg=t=>t.endsWith(jg)?t:t+jg,ja=class{constructor(e){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=e.parser.Lexer;let r=this.lexer.definition,n=e.LanguageMetaData.mode==="production";e.shared.profilers.LangiumProfiler?.isActive("parsing")?this.wrapper=new Nd(r,er(ge({},e.parser.ParserConfig),{skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider}),e.shared.profilers.LangiumProfiler.createTask("parsing",e.LanguageMetaData.languageId)):this.wrapper=new ol(r,er(ge({},e.parser.ParserConfig),{skipValidations:n,errorMessageProvider:e.parser.ParserErrorMessageProvider}))}alternatives(e,r){this.wrapper.wrapOr(e,r)}optional(e,r){this.wrapper.wrapOption(e,r)}many(e,r){this.wrapper.wrapMany(e,r)}atLeastOne(e,r){this.wrapper.wrapAtLeastOne(e,r)}getRule(e){return this.allRules.get(e)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Ba=class extends ja{get current(){return this.stack[this.stack.length-1]}constructor(e){super(e),this.nodeBuilder=new qa,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=e.references.Linker,this.converter=e.parser.ValueConverter,this.astReflection=e.shared.AstReflection}rule(e,r){let n=this.computeRuleType(e),i;dn(e)&&(i=e.name,this.registerPrecedenceMap(e));let s=this.wrapper.DEFINE_RULE(Bg(e.name),this.startImplementation(n,i,r).bind(this));return this.allRules.set(e.name,s),nt(e)&&e.entry&&(this.mainRule=s),s}registerPrecedenceMap(e){let r=e.name,n=new Map;for(let i=0;i0&&(r=this.construct()),r===void 0)throw new Error("No result from parser");if(this.stack.length>0)throw new Error("Parser stack is not empty after parsing");return r}startImplementation(e,r,n){return i=>{let s=!this.isRecording()&&e!==void 0;if(s){let a={$type:e};this.stack.push(a),e===sl?a.value="":r!==void 0&&(a.$infixName=r)}return n(i),s?this.construct():void 0}}extractHiddenTokens(e){let r=this.lexerResult.hidden;if(!r.length)return[];let n=e.startOffset;for(let i=0;in)return r.splice(0,i);return r.splice(0,r.length)}consume(e,r,n){let i=this.wrapper.wrapConsume(e,r);if(!this.isRecording()&&this.isValidToken(i)){let s=this.extractHiddenTokens(i);this.nodeBuilder.addHiddenNodes(s);let a=this.nodeBuilder.buildLeafNode(i,n),{assignment:o,crossRef:c}=this.getAssignment(n),l=this.current;if(o){let u=Ht(n)?i.image:this.converter.convert(i.image,a);this.assign(o.operator,o.feature,u,a,c)}else if(kd(l)){let u=i.image;Ht(n)||(u=this.converter.convert(u,a).toString()),l.value+=u}}}isValidToken(e){return!e.isInsertedInRecovery&&!isNaN(e.startOffset)&&typeof e.endOffset=="number"&&!isNaN(e.endOffset)}subrule(e,r,n,i,s){let a;!this.isRecording()&&!n&&(a=this.nodeBuilder.buildCompositeNode(i));let o;try{o=this.wrapper.wrapSubrule(e,r,s)}finally{this.isRecording()||(o===void 0&&!n&&(o=this.construct()),o!==void 0&&a&&a.length>0&&this.performSubruleAssignment(o,i,a))}}performSubruleAssignment(e,r,n){let{assignment:i,crossRef:s}=this.getAssignment(r);if(i)this.assign(i.operator,i.feature,e,n,s);else if(!i){let a=this.current;if(kd(a))a.value+=e.toString();else if(typeof e=="object"&&e){let c=this.assignWithoutOverride(e,a);this.stack.pop(),this.stack.push(c)}}}action(e,r){if(!this.isRecording()){let n=this.current;if(r.feature&&r.operator){n=this.construct(),this.nodeBuilder.removeNode(n.$cstNode),this.nodeBuilder.buildCompositeNode(r).content.push(n.$cstNode);let s={$type:e};this.stack.push(s),this.assign(r.operator,r.feature,n,n.$cstNode)}else n.$type=e}}construct(){if(this.isRecording())return;let e=this.stack.pop();return this.nodeBuilder.construct(e),"$infixName"in e?this.constructInfix(e,this.operatorPrecedence.get(e.$infixName)):kd(e)?this.converter.convert(e.value,e.$cstNode):(Tu(this.astReflection,e),e)}constructInfix(e,r){let n=e.parts;if(!Array.isArray(n)||n.length===0)return;let i=e.operators;if(!Array.isArray(i)||n.length<2)return n[0];let s=0,a=-1;for(let k=0;ka?(a=M.precedence,s=k):M.precedence===a&&(M.rightAssoc||(s=k))}let o=i.slice(0,s),c=i.slice(s+1),l=n.slice(0,s+1),u=n.slice(s+1),p={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:l,operators:o},h={$infixName:e.$infixName,$type:e.$type,$cstNode:e.$cstNode,parts:u,operators:c},g=this.constructInfix(p,r),C=this.constructInfix(h,r);return{$type:e.$type,$cstNode:e.$cstNode,left:g,operator:i[s],right:C}}getAssignment(e){if(!this.assignmentMap.has(e)){let r=Dr(e,sr);this.assignmentMap.set(e,{assignment:r,crossRef:r&&ar(r.terminal)?r.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(e)}assign(e,r,n,i,s){let a=this.current,o;switch(s==="single"&&typeof n=="string"?o=this.linker.buildReference(a,r,i,n):s==="multi"&&typeof n=="string"?o=this.linker.buildMultiReference(a,r,i,n):o=n,e){case"=":{a[r]=o;break}case"?=":{a[r]=!0;break}case"+=":Array.isArray(a[r])||(a[r]=[]),a[r].push(o)}}assignWithoutOverride(e,r){for(let[i,s]of Object.entries(r)){let a=e[i];a===void 0?e[i]=s:Array.isArray(a)&&Array.isArray(s)&&(s.push(...a),e[i]=s)}let n=e.$cstNode;return n&&(n.astNode=void 0,e.$cstNode=void 0),e}get definitionErrors(){return this.wrapper.definitionErrors}},al=class{buildMismatchTokenMessage(e){return Hr.buildMismatchTokenMessage(e)}buildNotAllInputParsedMessage(e){return Hr.buildNotAllInputParsedMessage(e)}buildNoViableAltMessage(e){return Hr.buildNoViableAltMessage(e)}buildEarlyExitMessage(e){return Hr.buildEarlyExitMessage(e)}},cs=class extends al{buildMismatchTokenMessage({expected:e,actual:r}){return`Expecting ${e.LABEL?"`"+e.LABEL+"`":e.name.endsWith(":KW")?`keyword '${e.name.substring(0,e.name.length-3)}'`:`token of type '${e.name}'`} but found \`${r.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:e}){return`Expecting end of file but found \`${e.image}\`.`}},Wa=class extends ja{constructor(){super(...arguments),this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){}parse(e){this.resetState();let r=this.lexer.tokenize(e,{mode:"partial"});return this.tokens=r.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(e,r){let n=this.wrapper.DEFINE_RULE(Bg(e.name),this.startImplementation(r).bind(this));return this.allRules.set(e.name,n),e.entry&&(this.mainRule=n),n}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(e){return r=>{let n=this.keepStackSize();try{e(r)}finally{this.resetStackSize(n)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let e=this.elementStack.length;return this.stackSize=e,e}resetStackSize(e){this.removeUnexpectedElements(),this.stackSize=e}consume(e,r,n){this.wrapper.wrapConsume(e,r),this.isRecording()||(this.lastElementStack=[...this.elementStack,n],this.nextTokenIndex=this.currIdx+1)}subrule(e,r,n,i,s){this.before(i),this.wrapper.wrapSubrule(e,r,s),this.after(i)}before(e){this.isRecording()||this.elementStack.push(e)}after(e){if(!this.isRecording()){let r=this.elementStack.lastIndexOf(e);r>=0&&this.elementStack.splice(r)}}get currIdx(){return this.wrapper.currIdx}},_A={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new cs},ol=class extends Ia{constructor(e,r){let n=r&&"maxLookahead"in r;super(e,ge(er(ge({},_A),{lookaheadStrategy:n?new Yr({maxLookahead:r.maxLookahead}):new Oa({logging:r.skipValidations?()=>{}:void 0})}),r))}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(e,r,n){return this.RULE(e,r,n)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(e,r){return this.consume(e,r,void 0)}wrapSubrule(e,r,n){return this.subrule(e,r,{ARGS:[n]})}wrapOr(e,r){this.or(e,r)}wrapOption(e,r){this.option(e,r)}wrapMany(e,r){this.many(e,r)}wrapAtLeastOne(e,r){this.atLeastOne(e,r)}rule(e){return e.call(this,{})}},Nd=class extends ol{constructor(e,r,n){super(e,r),this.task=n}rule(e){this.task.start(),this.task.startSubTask(this.ruleName(e));try{return super.rule(e)}finally{this.task.stopSubTask(this.ruleName(e)),this.task.stop()}}ruleName(e){return e.ruleName}subrule(e,r,n){this.task.startSubTask(this.ruleName(r));try{return super.subrule(e,r,n)}finally{this.task.stopSubTask(this.ruleName(r))}}};function Va(t,e,r){return bA({parser:e,tokens:r,ruleNames:new Map},t),e}function bA(t,e){let r=da(e,!1),n=ee(e.rules).filter(nt).filter(s=>r.has(s));for(let s of n){let a=er(ge({},t),{consume:1,optional:1,subrule:1,many:1,or:1});t.parser.rule(s,ai(a,s.definition))}let i=ee(e.rules).filter(dn).filter(s=>r.has(s));for(let s of i)t.parser.rule(s,PA(t,s))}function PA(t,e){let r=e.call.rule.ref;if(!r)throw new Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(kt(r))throw new Error("Cannot use terminal rule in infix expression");let n=e.operators.precedences.flatMap(g=>g.operators),i={$type:"Group",elements:[]},s={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},a={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(s,a);let c={$container:a,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:n}},l=er(ge({},s),{$container:a});a.elements.push(c,l);let p=n.map(g=>t.tokens[g.value]).map((g,C)=>({ALT:()=>t.parser.consume(C,g,c)})),h;return g=>{h??(h=wd(t,r)),t.parser.subrule(0,h,!1,s,g),t.parser.many(0,{DEF:()=>{t.parser.alternatives(0,p),t.parser.subrule(1,h,!1,l,g)}})}}function ai(t,e,r=!1){let n;if(Ht(e))n=UA(t,e);else if(Ur(e))n=OA(t,e);else if(sr(e))n=ai(t,e.terminal);else if(ar(e))n=Wg(t,e);else if(or(e))n=LA(t,e);else if(ec(e))n=MA(t,e);else if(ic(e))n=FA(t,e);else if(fn(e))n=GA(t,e);else if(Su(e)){let i=t.consume++;n=()=>t.parser.consume(i,Bt,e)}else throw new Vn(e.$cstNode,`Unexpected element type: ${e.$type}`);return Vg(t,r?void 0:cl(e),n,e.cardinality)}function OA(t,e){let r=hn(e);return()=>t.parser.action(r,e)}function LA(t,e){let r=e.rule.ref;if(Gr(r)){let n=t.subrule++,i=nt(r)&&r.fragment,s=e.arguments.length>0?DA(r,e.arguments):()=>({}),a;return o=>{a??(a=wd(t,r)),t.parser.subrule(n,a,i,e,s(o))}}else if(kt(r)){let n=t.consume++,i=Cd(t,r.name);return()=>t.parser.consume(n,i,e)}else if(r)Rr(r);else throw new Vn(e.$cstNode,`Undefined rule: ${e.rule.$refText}`)}function DA(t,e){if(e.some(n=>n.calledByName)){let n=e.map(i=>({parameterName:i.parameter?.ref?.name,predicate:Ar(i.value)}));return i=>{let s={};for(let{parameterName:a,predicate:o}of n)a&&(s[a]=o(i));return s}}else{let n=e.map(i=>Ar(i.value));return i=>{let s={};for(let a=0;ae(n)||r(n)}else if(Au(t)){let e=Ar(t.left),r=Ar(t.right);return n=>e(n)&&r(n)}else if(Cu(t)){let e=Ar(t.value);return r=>!e(r)}else if(wu(t)){let e=t.parameter.ref.name;return r=>r!==void 0&&r[e]===!0}else if(vu(t)){let e=!!t.true;return()=>e}Rr(t)}function MA(t,e){if(e.elements.length===1)return ai(t,e.elements[0]);{let r=[];for(let i of e.elements){let s={ALT:ai(t,i,!0)},a=cl(i);a&&(s.GATE=Ar(a)),r.push(s)}let n=t.or++;return i=>t.parser.alternatives(n,r.map(s=>{let a={ALT:()=>s.ALT(i)},o=s.GATE;return o&&(a.GATE=()=>o(i)),a}))}}function FA(t,e){if(e.elements.length===1)return ai(t,e.elements[0]);let r=[];for(let o of e.elements){let c={ALT:ai(t,o,!0)},l=cl(o);l&&(c.GATE=Ar(l)),r.push(c)}let n=t.or++,i=(o,c)=>{let l=c.getRuleStack().join("-");return`uGroup_${o}_${l}`},s=o=>t.parser.alternatives(n,r.map((c,l)=>{let u={ALT:()=>!0},p=t.parser;u.ALT=()=>{if(c.ALT(o),!p.isRecording()){let g=i(n,p);p.unorderedGroups.get(g)||p.unorderedGroups.set(g,[]);let C=p.unorderedGroups.get(g);typeof C?.[l]>"u"&&(C[l]=!0)}};let h=c.GATE;return h?u.GATE=()=>h(o):u.GATE=()=>!p.unorderedGroups.get(i(n,p))?.[l],u})),a=Vg(t,cl(e),s,"*");return o=>{a(o),t.parser.isRecording()||t.parser.unorderedGroups.delete(i(n,t.parser))}}function GA(t,e){let r=e.elements.map(n=>ai(t,n));return n=>r.forEach(i=>i(n))}function cl(t){if(fn(t))return t.guardCondition}function Wg(t,e,r=e.terminal){if(r)if(or(r)&&nt(r.rule.ref)){let n=r.rule.ref,i=t.subrule++,s;return a=>{s??(s=wd(t,n)),t.parser.subrule(i,s,!1,e,a)}}else if(or(r)&&kt(r.rule.ref)){let n=t.consume++,i=Cd(t,r.rule.ref.name);return()=>t.parser.consume(n,i,e)}else if(Ht(r)){let n=t.consume++,i=Cd(t,r.value);return()=>t.parser.consume(n,i,e)}else throw new Error("Could not build cross reference parser");else{if(!e.type.ref)throw new Error("Could not resolve reference to type: "+e.type.$refText);let i=uc(e.type.ref)?.terminal;if(!i)throw new Error("Could not find name assignment for type: "+hn(e.type.ref));return Wg(t,e,i)}}function UA(t,e){let r=t.consume++,n=t.tokens[e.value];if(!n)throw new Error("Could not find token for keyword: "+e.value);return()=>t.parser.consume(r,n,e)}function Vg(t,e,r,n){let i=e&&Ar(e);if(!n)if(i){let s=t.or++;return a=>t.parser.alternatives(s,[{ALT:()=>r(a),GATE:()=>i(a)},{ALT:Vc(),GATE:()=>!i(a)}])}else return r;if(n==="*"){let s=t.many++;return a=>t.parser.many(s,{DEF:()=>r(a),GATE:i?()=>i(a):void 0})}else if(n==="+"){let s=t.many++;if(i){let a=t.or++;return o=>t.parser.alternatives(a,[{ALT:()=>t.parser.atLeastOne(s,{DEF:()=>r(o)}),GATE:()=>i(o)},{ALT:Vc(),GATE:()=>!i(o)}])}else return a=>t.parser.atLeastOne(s,{DEF:()=>r(a)})}else if(n==="?"){let s=t.optional++;return a=>t.parser.optional(s,{DEF:()=>r(a),GATE:i?()=>i(a):void 0})}else Rr(n)}function wd(t,e){let r=qA(t,e),n=t.parser.getRule(r);if(!n)throw new Error(`Rule "${r}" not found."`);return n}function qA(t,e){if(Gr(e))return e.name;if(t.ruleNames.has(e))return t.ruleNames.get(e);{let r=e,n=r.$container,i=e.$type;for(;!nt(n);)(fn(n)||ec(n)||ic(n))&&(i=n.elements.indexOf(r).toString()+":"+i),r=n,n=n.$container;return i=n.name+":"+i,t.ruleNames.set(e,i),i}}function Cd(t,e){let r=t.tokens[e];if(!r)throw new Error(`Token "${e}" not found."`);return r}function Id(t){let e=t.Grammar,r=t.parser.Lexer,n=new Wa(t);return Va(e,n,r.definition),n.finalize(),n}function _d(t){let e=Kg(t);return e.finalize(),e}function Kg(t){let e=t.Grammar,r=t.parser.Lexer,n=new Ba(t);return Va(e,n,r.definition)}var Jr=class{constructor(){this.diagnostics=[]}buildTokens(e,r){let n=ee(da(e,!1)),i=this.buildTerminalTokens(n),s=this.buildKeywordTokens(n,i,r);return s.push(...i),s}flushLexingReport(e){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let e=[...this.diagnostics];return this.diagnostics=[],e}buildTerminalTokens(e){return e.filter(kt).filter(r=>!r.fragment).map(r=>this.buildTerminalToken(r)).toArray()}buildTerminalToken(e){let r=Li(e),n=this.requiresCustomPattern(r)?this.regexPatternFunction(r):r,i={name:e.name,PATTERN:n};return typeof n=="function"&&(i.LINE_BREAKS=!0),e.hidden&&(i.GROUP=fa(r)?He.SKIPPED:"hidden"),i}requiresCustomPattern(e){return!!(e.flags.includes("u")||e.flags.includes("s"))}regexPatternFunction(e){let r=new RegExp(e,e.flags+"y");return(n,i)=>(r.lastIndex=i,r.exec(n))}buildKeywordTokens(e,r,n){return e.filter(Gr).flatMap(i=>nr(i).filter(Ht)).distinct(i=>i.value).toArray().sort((i,s)=>s.value.length-i.value.length).map(i=>this.buildKeywordToken(i,r,!!n?.caseInsensitive))}buildKeywordToken(e,r,n){let i=this.buildKeywordPattern(e,n),s={name:e.value,PATTERN:i,LONGER_ALT:this.findLongerAlt(e,r)};return typeof i=="function"&&(s.LINE_BREAKS=!0),s}buildKeywordPattern(e,r){return r?new RegExp(pn(e.value),"i"):e.value}findLongerAlt(e,r){return r.reduce((n,i)=>{let s=i?.PATTERN;return s?.source&&Ku("^"+s.source+"$",e.value)&&n.push(i),n},[])}};var oi=class{convert(e,r){let n=r.grammarSource;if(ar(n)&&(n=Xu(n)),or(n)){let i=n.rule.ref;if(!i)throw new Error("This cst node was not parsed by a rule.");return this.runConverter(i,e,r)}return e}runConverter(e,r,n){switch(e.name.toUpperCase()){case"INT":return $r.convertInt(r);case"STRING":return $r.convertString(r);case"ID":return $r.convertID(r)}switch(nf(e)?.toLowerCase()){case"number":return $r.convertNumber(r);case"boolean":return $r.convertBoolean(r);case"bigint":return $r.convertBigint(r);case"date":return $r.convertDate(r);default:return r}}},$r;(function(t){function e(l){let u="";for(let p=1;p{typeof setImmediate>"u"?setTimeout(t,0):setImmediate(t)})}var dl=0,Jg=10;function pl(){return dl=performance.now(),new W.CancellationTokenSource}function Qg(t){Jg=t}var Yt=Symbol("OperationCancelled");function Sr(t){return t===Yt}function Me(t){return P(this,null,function*(){if(t===W.CancellationToken.None)return;let e=performance.now();if(e-dl>=Jg&&(dl=e,yield Fd(),dl=performance.now()),t.isCancellationRequested)throw Yt})}var It=class{constructor(){this.promise=new Promise((e,r)=>{this.resolve=n=>(e(n),this),this.reject=n=>(r(n),this)})}};var hl=class t{constructor(e,r,n,i){this._uri=e,this._languageId=r,this._version=n,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let r=this.offsetAt(e.start),n=this.offsetAt(e.end);return this._content.substring(r,n)}return this._content}update(e,r){for(let n of e)if(t.isIncremental(n)){let i=ty(n.range),s=this.offsetAt(i.start),a=this.offsetAt(i.end);this._content=this._content.substring(0,s)+n.text+this._content.substring(a,this._content.length);let o=Math.max(i.start.line,0),c=Math.max(i.end.line,0),l=this._lineOffsets,u=Zg(n.text,!1,s);if(c-o===u.length)for(let h=0,g=u.length;he?i=a:n=a+1}let s=n-1;return e=this.ensureBeforeEOL(e,r[s]),{line:s,character:e-r[s]}}offsetAt(e){let r=this.getLineOffsets();if(e.line>=r.length)return this._content.length;if(e.line<0)return 0;let n=r[e.line];if(e.character<=0)return n;let i=e.line+1r&&ey(this._content.charCodeAt(e-1));)e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range!==void 0&&(r.rangeLength===void 0||typeof r.rangeLength=="number")}static isFull(e){let r=e;return r!=null&&typeof r.text=="string"&&r.range===void 0&&r.rangeLength===void 0}},ds;(function(t){function e(i,s,a,o){return new hl(i,s,a,o)}t.create=e;function r(i,s,a){if(i instanceof hl)return i.update(s,a),i;throw new Error("TextDocument.update: document must be created by TextDocument.create")}t.update=r;function n(i,s){let a=i.getText(),o=Gd(s.map(JA),(u,p)=>{let h=u.range.start.line-p.range.start.line;return h===0?u.range.start.character-p.range.start.character:h}),c=0,l=[];for(let u of o){let p=i.offsetAt(u.range.start);if(pc&&l.push(a.substring(c,p)),u.newText.length&&l.push(u.newText),c=i.offsetAt(u.range.end)}return l.push(a.substr(c)),l.join("")}t.applyEdits=n})(ds||(ds={}));function Gd(t,e){if(t.length<=1)return t;let r=t.length/2|0,n=t.slice(0,r),i=t.slice(r);Gd(n,e),Gd(i,e);let s=0,a=0,o=0;for(;sr.line||e.line===r.line&&e.character>r.character?{start:r,end:e}:t}function JA(t){let e=ty(t.range);return e!==t.range?{newText:t.newText,range:e}:t}var ry;(()=>{"use strict";var t={975:$=>{function y(T){if(typeof T!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(T))}function L(T,x){for(var A,_="",U=0,N=-1,Y=0,Q=0;Q<=T.length;++Q){if(Q2){var de=_.lastIndexOf("/");if(de!==_.length-1){de===-1?(_="",U=0):U=(_=_.slice(0,de)).length-1-_.lastIndexOf("/"),N=Q,Y=0;continue}}else if(_.length===2||_.length===1){_="",U=0,N=Q,Y=0;continue}}x&&(_.length>0?_+="/..":_="..",U=2)}else _.length>0?_+="/"+T.slice(N+1,Q):_=T.slice(N+1,Q),U=Q-N-1;N=Q,Y=0}else A===46&&Y!==-1?++Y:Y=-1}return _}var O={resolve:function(){for(var T,x="",A=!1,_=arguments.length-1;_>=-1&&!A;_--){var U;_>=0?U=arguments[_]:(T===void 0&&(T=process.cwd()),U=T),y(U),U.length!==0&&(x=U+"/"+x,A=U.charCodeAt(0)===47)}return x=L(x,!A),A?x.length>0?"/"+x:"/":x.length>0?x:"."},normalize:function(T){if(y(T),T.length===0)return".";var x=T.charCodeAt(0)===47,A=T.charCodeAt(T.length-1)===47;return(T=L(T,!x)).length!==0||x||(T="."),T.length>0&&A&&(T+="/"),x?"/"+T:T},isAbsolute:function(T){return y(T),T.length>0&&T.charCodeAt(0)===47},join:function(){if(arguments.length===0)return".";for(var T,x=0;x0&&(T===void 0?T=A:T+="/"+A)}return T===void 0?".":O.normalize(T)},relative:function(T,x){if(y(T),y(x),T===x||(T=O.resolve(T))===(x=O.resolve(x)))return"";for(var A=1;AQ){if(x.charCodeAt(N+ue)===47)return x.slice(N+ue+1);if(ue===0)return x.slice(N+ue)}else U>Q&&(T.charCodeAt(A+ue)===47?de=ue:ue===0&&(de=0));break}var ve=T.charCodeAt(A+ue);if(ve!==x.charCodeAt(N+ue))break;ve===47&&(de=ue)}var We="";for(ue=A+de+1;ue<=_;++ue)ue!==_&&T.charCodeAt(ue)!==47||(We.length===0?We+="..":We+="/..");return We.length>0?We+x.slice(N+de):(N+=de,x.charCodeAt(N)===47&&++N,x.slice(N))},_makeLong:function(T){return T},dirname:function(T){if(y(T),T.length===0)return".";for(var x=T.charCodeAt(0),A=x===47,_=-1,U=!0,N=T.length-1;N>=1;--N)if((x=T.charCodeAt(N))===47){if(!U){_=N;break}}else U=!1;return _===-1?A?"/":".":A&&_===1?"//":T.slice(0,_)},basename:function(T,x){if(x!==void 0&&typeof x!="string")throw new TypeError('"ext" argument must be a string');y(T);var A,_=0,U=-1,N=!0;if(x!==void 0&&x.length>0&&x.length<=T.length){if(x.length===T.length&&x===T)return"";var Y=x.length-1,Q=-1;for(A=T.length-1;A>=0;--A){var de=T.charCodeAt(A);if(de===47){if(!N){_=A+1;break}}else Q===-1&&(N=!1,Q=A+1),Y>=0&&(de===x.charCodeAt(Y)?--Y==-1&&(U=A):(Y=-1,U=Q))}return _===U?U=Q:U===-1&&(U=T.length),T.slice(_,U)}for(A=T.length-1;A>=0;--A)if(T.charCodeAt(A)===47){if(!N){_=A+1;break}}else U===-1&&(N=!1,U=A+1);return U===-1?"":T.slice(_,U)},extname:function(T){y(T);for(var x=-1,A=0,_=-1,U=!0,N=0,Y=T.length-1;Y>=0;--Y){var Q=T.charCodeAt(Y);if(Q!==47)_===-1&&(U=!1,_=Y+1),Q===46?x===-1?x=Y:N!==1&&(N=1):x!==-1&&(N=-1);else if(!U){A=Y+1;break}}return x===-1||_===-1||N===0||N===1&&x===_-1&&x===A+1?"":T.slice(x,_)},format:function(T){if(T===null||typeof T!="object")throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof T);return(function(x,A){var _=A.dir||A.root,U=A.base||(A.name||"")+(A.ext||"");return _?_===A.root?_+U:_+"/"+U:U})(0,T)},parse:function(T){y(T);var x={root:"",dir:"",base:"",ext:"",name:""};if(T.length===0)return x;var A,_=T.charCodeAt(0),U=_===47;U?(x.root="/",A=1):A=0;for(var N=-1,Y=0,Q=-1,de=!0,ue=T.length-1,ve=0;ue>=A;--ue)if((_=T.charCodeAt(ue))!==47)Q===-1&&(de=!1,Q=ue+1),_===46?N===-1?N=ue:ve!==1&&(ve=1):N!==-1&&(ve=-1);else if(!de){Y=ue+1;break}return N===-1||Q===-1||ve===0||ve===1&&N===Q-1&&N===Y+1?Q!==-1&&(x.base=x.name=Y===0&&U?T.slice(1,Q):T.slice(Y,Q)):(Y===0&&U?(x.name=T.slice(1,N),x.base=T.slice(1,Q)):(x.name=T.slice(Y,N),x.base=T.slice(Y,Q)),x.ext=T.slice(N,Q)),Y>0?x.dir=T.slice(0,Y-1):U&&(x.dir="/"),x},sep:"/",delimiter:":",win32:null,posix:null};O.posix=O,$.exports=O}},e={};function r($){var y=e[$];if(y!==void 0)return y.exports;var L=e[$]={exports:{}};return t[$](L,L.exports,r),L.exports}r.d=($,y)=>{for(var L in y)r.o(y,L)&&!r.o($,L)&&Object.defineProperty($,L,{enumerable:!0,get:y[L]})},r.o=($,y)=>Object.prototype.hasOwnProperty.call($,y),r.r=$=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty($,Symbol.toStringTag,{value:"Module"}),Object.defineProperty($,"__esModule",{value:!0})};var n={};let i;r.r(n),r.d(n,{URI:()=>h,Utils:()=>Kt}),typeof process=="object"?i=process.platform==="win32":typeof navigator=="object"&&(i=navigator.userAgent.indexOf("Windows")>=0);let s=/^\w[\w\d+.-]*$/,a=/^\//,o=/^\/\//;function c($,y){if(!$.scheme&&y)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${$.authority}", path: "${$.path}", query: "${$.query}", fragment: "${$.fragment}"}`);if($.scheme&&!s.test($.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if($.path){if($.authority){if(!a.test($.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(o.test($.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}let l="",u="/",p=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class h{static isUri(y){return y instanceof h||!!y&&typeof y.authority=="string"&&typeof y.fragment=="string"&&typeof y.path=="string"&&typeof y.query=="string"&&typeof y.scheme=="string"&&typeof y.fsPath=="string"&&typeof y.with=="function"&&typeof y.toString=="function"}scheme;authority;path;query;fragment;constructor(y,L,O,T,x,A=!1){typeof y=="object"?(this.scheme=y.scheme||l,this.authority=y.authority||l,this.path=y.path||l,this.query=y.query||l,this.fragment=y.fragment||l):(this.scheme=(function(_,U){return _||U?_:"file"})(y,A),this.authority=L||l,this.path=(function(_,U){switch(_){case"https":case"http":case"file":U?U[0]!==u&&(U=u+U):U=u}return U})(this.scheme,O||l),this.query=T||l,this.fragment=x||l,c(this,A))}get fsPath(){return b(this,!1)}with(y){if(!y)return this;let{scheme:L,authority:O,path:T,query:x,fragment:A}=y;return L===void 0?L=this.scheme:L===null&&(L=l),O===void 0?O=this.authority:O===null&&(O=l),T===void 0?T=this.path:T===null&&(T=l),x===void 0?x=this.query:x===null&&(x=l),A===void 0?A=this.fragment:A===null&&(A=l),L===this.scheme&&O===this.authority&&T===this.path&&x===this.query&&A===this.fragment?this:new C(L,O,T,x,A)}static parse(y,L=!1){let O=p.exec(y);return O?new C(O[2]||l,ye(O[4]||l),ye(O[5]||l),ye(O[7]||l),ye(O[9]||l),L):new C(l,l,l,l,l)}static file(y){let L=l;if(i&&(y=y.replace(/\\/g,u)),y[0]===u&&y[1]===u){let O=y.indexOf(u,2);O===-1?(L=y.substring(2),y=u):(L=y.substring(2,O),y=y.substring(O)||u)}return new C("file",L,y,l,l)}static from(y){let L=new C(y.scheme,y.authority,y.path,y.query,y.fragment);return c(L,!0),L}toString(y=!1){return E(this,y)}toJSON(){return this}static revive(y){if(y){if(y instanceof h)return y;{let L=new C(y);return L._formatted=y.external,L._fsPath=y._sep===g?y.fsPath:null,L}}return y}}let g=i?1:void 0;class C extends h{_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=b(this,!1)),this._fsPath}toString(y=!1){return y?E(this,!0):(this._formatted||(this._formatted=E(this,!1)),this._formatted)}toJSON(){let y={$mid:1};return this._fsPath&&(y.fsPath=this._fsPath,y._sep=g),this._formatted&&(y.external=this._formatted),this.path&&(y.path=this.path),this.scheme&&(y.scheme=this.scheme),this.authority&&(y.authority=this.authority),this.query&&(y.query=this.query),this.fragment&&(y.fragment=this.fragment),y}}let k={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function G($,y,L){let O,T=-1;for(let x=0;x<$.length;x++){let A=$.charCodeAt(x);if(A>=97&&A<=122||A>=65&&A<=90||A>=48&&A<=57||A===45||A===46||A===95||A===126||y&&A===47||L&&A===91||L&&A===93||L&&A===58)T!==-1&&(O+=encodeURIComponent($.substring(T,x)),T=-1),O!==void 0&&(O+=$.charAt(x));else{O===void 0&&(O=$.substr(0,x));let _=k[A];_!==void 0?(T!==-1&&(O+=encodeURIComponent($.substring(T,x)),T=-1),O+=_):T===-1&&(T=x)}}return T!==-1&&(O+=encodeURIComponent($.substring(T))),O!==void 0?O:$}function M($){let y;for(let L=0;L<$.length;L++){let O=$.charCodeAt(L);O===35||O===63?(y===void 0&&(y=$.substr(0,L)),y+=k[O]):y!==void 0&&(y+=$[L])}return y!==void 0?y:$}function b($,y){let L;return L=$.authority&&$.path.length>1&&$.scheme==="file"?`//${$.authority}${$.path}`:$.path.charCodeAt(0)===47&&($.path.charCodeAt(1)>=65&&$.path.charCodeAt(1)<=90||$.path.charCodeAt(1)>=97&&$.path.charCodeAt(1)<=122)&&$.path.charCodeAt(2)===58?y?$.path.substr(1):$.path[1].toLowerCase()+$.path.substr(2):$.path,i&&(L=L.replace(/\//g,"\\")),L}function E($,y){let L=y?M:G,O="",{scheme:T,authority:x,path:A,query:_,fragment:U}=$;if(T&&(O+=T,O+=":"),(x||T==="file")&&(O+=u,O+=u),x){let N=x.indexOf("@");if(N!==-1){let Y=x.substr(0,N);x=x.substr(N+1),N=Y.lastIndexOf(":"),N===-1?O+=L(Y,!1,!1):(O+=L(Y.substr(0,N),!1,!1),O+=":",O+=L(Y.substr(N+1),!1,!0)),O+="@"}x=x.toLowerCase(),N=x.lastIndexOf(":"),N===-1?O+=L(x,!1,!0):(O+=L(x.substr(0,N),!1,!0),O+=x.substr(N))}if(A){if(A.length>=3&&A.charCodeAt(0)===47&&A.charCodeAt(2)===58){let N=A.charCodeAt(1);N>=65&&N<=90&&(A=`/${String.fromCharCode(N+32)}:${A.substr(3)}`)}else if(A.length>=2&&A.charCodeAt(1)===58){let N=A.charCodeAt(0);N>=65&&N<=90&&(A=`${String.fromCharCode(N+32)}:${A.substr(2)}`)}O+=L(A,!0,!1)}return _&&(O+="?",O+=L(_,!1,!1)),U&&(O+="#",O+=y?U:G(U,!1,!1)),O}function H($){try{return decodeURIComponent($)}catch(y){return $.length>3?$.substr(0,3)+H($.substr(3)):$}}let F=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function ye($){return $.match(F)?$.replace(F,y=>H(y)):$}var dr=r(975);let Je=dr.posix||dr,Qt="/";var Kt;(function($){$.joinPath=function(y,...L){return y.with({path:Je.join(y.path,...L)})},$.resolvePath=function(y,...L){let O=y.path,T=!1;O[0]!==Qt&&(O=Qt+O,T=!0);let x=Je.resolve(O,...L);return T&&x[0]===Qt&&!y.authority&&(x=x.substring(1)),y.with({path:x})},$.dirname=function(y){if(y.path.length===0||y.path===Qt)return y;let L=Je.dirname(y.path);return L.length===1&&L.charCodeAt(0)===46&&(L=""),y.with({path:L})},$.basename=function(y){return Je.basename(y.path)},$.extname=function(y){return Je.extname(y.path)}})(Kt||(Kt={})),ry=n})();var{URI:rt,Utils:ps}=ry;var Be;(function(t){t.basename=ps.basename,t.dirname=ps.dirname,t.extname=ps.extname,t.joinPath=ps.joinPath,t.resolvePath=ps.resolvePath;let e=typeof process=="object"&&process?.platform==="win32";function r(a,o){return a?.toString()===o?.toString()}t.equals=r;function n(a,o){let c=typeof a=="string"?rt.parse(a).path:a.path,l=typeof o=="string"?rt.parse(o).path:o.path,u=c.split("/").filter(k=>k.length>0),p=l.split("/").filter(k=>k.length>0);if(e){let k=/^[A-Z]:$/;if(u[0]&&k.test(u[0])&&(u[0]=u[0].toLowerCase()),p[0]&&k.test(p[0])&&(p[0]=p[0].toLowerCase()),u[0]!==p[0])return l.substring(1)}let h=0;for(;h({name:i.name,uri:Be.joinPath(rt.parse(r),i.name).toString(),element:i.element})):[]}all(){return this.collectValues(this.root)}findAll(e){let r=this.getNode(Be.normalize(e),!1);return r?this.collectValues(r):[]}getNode(e,r){let n=e.split("/");e.charAt(e.length-1)==="/"&&n.pop();let i=this.root;for(let s of n){let a=i.children.get(s);if(!a)if(r)a={name:s,children:new Map,parent:i},i.children.set(s,a);else return;i=a}return i}collectValues(e){let r=[];e.element&&r.push(e.element);for(let n of e.children.values())r.push(...this.collectValues(n));return r}};var re=(function(t){return t[t.Changed=0]="Changed",t[t.Parsed=1]="Parsed",t[t.IndexedContent=2]="IndexedContent",t[t.ComputedScopes=3]="ComputedScopes",t[t.Linked=4]="Linked",t[t.IndexedReferences=5]="IndexedReferences",t[t.Validated=6]="Validated",t})(re||{}),Ha=class{constructor(e){this.serviceRegistry=e.ServiceRegistry,this.textDocuments=e.workspace.TextDocuments,this.fileSystemProvider=e.workspace.FileSystemProvider}fromUri(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){let i=yield this.fileSystemProvider.readFile(e);return this.createAsync(e,i,r)})}fromTextDocument(e,r,n){return r=r??rt.parse(e.uri),W.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromString(e,r,n){return W.CancellationToken.is(n)?this.createAsync(r,e,n):this.create(r,e,n)}fromModel(e,r){return this.create(r,{$model:e})}create(e,r,n){if(typeof r=="string"){let i=this.parse(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else if("$model"in r){let i={value:r.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(i,e)}else{let i=this.parse(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}}createAsync(e,r,n){return P(this,null,function*(){if(typeof r=="string"){let i=yield this.parseAsync(e,r,n);return this.createLangiumDocument(i,e,void 0,r)}else{let i=yield this.parseAsync(e,r.getText(),n);return this.createLangiumDocument(i,e,r)}})}createLangiumDocument(e,r,n,i){let s;if(n)s={parseResult:e,uri:r,state:re.Parsed,references:[],textDocument:n};else{let a=this.createTextDocumentGetter(r,i);s={parseResult:e,uri:r,state:re.Parsed,references:[],get textDocument(){return a()}}}return e.value.$document=s,s}update(e,r){return P(this,null,function*(){let n=e.parseResult.value.$cstNode?.root.fullText,i=this.textDocuments?.get(e.uri.toString()),s=i?i.getText():yield this.fileSystemProvider.readFile(e.uri);if(i)Object.defineProperty(e,"textDocument",{value:i});else{let a=this.createTextDocumentGetter(e.uri,s);Object.defineProperty(e,"textDocument",{get:a})}return n!==s&&(e.parseResult=yield this.parseAsync(e.uri,s,r),e.parseResult.value.$document=e),e.state=re.Parsed,e})}parse(e,r,n){return this.serviceRegistry.getServices(e).parser.LangiumParser.parse(r,n)}parseAsync(e,r,n){return this.serviceRegistry.getServices(e).parser.AsyncParser.parse(r,n)}createTextDocumentGetter(e,r){let n=this.serviceRegistry,i;return()=>i??(i=ds.create(e.toString(),n.getServices(e).LanguageMetaData.languageId,0,r??""))}},Ya=class{constructor(e){this.documentTrie=new hs,this.services=e,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.documentBuilder=()=>e.workspace.DocumentBuilder}get all(){return ee(this.documentTrie.all())}addDocument(e){let r=e.uri.toString();if(this.documentTrie.has(r))throw new Error(`A document with the URI '${r}' is already present.`);this.documentTrie.insert(r,e)}getDocument(e){let r=e.toString();return this.documentTrie.find(r)}getDocuments(e){let r=e.toString();return this.documentTrie.findAll(r)}getOrCreateDocument(e,r){return P(this,null,function*(){let n=this.getDocument(e);return n||(n=yield this.langiumDocumentFactory.fromUri(e,r),this.addDocument(n),n)})}createDocument(e,r,n){if(n)return this.langiumDocumentFactory.fromString(r,e,n).then(i=>(this.addDocument(i),i));{let i=this.langiumDocumentFactory.fromString(r,e);return this.addDocument(i),i}}hasDocument(e){return this.documentTrie.has(e.toString())}invalidateDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&this.documentBuilder().resetToState(n,re.Changed),n}deleteDocument(e){let r=e.toString(),n=this.documentTrie.find(r);return n&&(n.state=re.Changed,this.documentTrie.delete(r)),n}deleteDocuments(e){let r=e.toString(),n=this.documentTrie.findAll(r);for(let i of n)i.state=re.Changed;return this.documentTrie.delete(r),n}};var li=Symbol("RefResolving"),Xa=class{constructor(e){this.reflection=e.shared.AstReflection,this.langiumDocuments=()=>e.shared.workspace.LangiumDocuments,this.scopeProvider=e.references.ScopeProvider,this.astNodeLocator=e.workspace.AstNodeLocator,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}link(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){if(this.profiler?.isActive("linking")){let i=this.profiler.createTask("linking",this.languageId);i.start();try{for(let s of St(e.parseResult.value))yield Me(r),sn(s).forEach(a=>{let o=`${s.$type}:${a.property}`;i.startSubTask(o);try{this.doLink(a,e)}finally{i.stopSubTask(o)}})}finally{i.stop()}}else for(let i of St(e.parseResult.value))yield Me(r),sn(i).forEach(s=>this.doLink(s,e))})}doLink(e,r){let n=e.reference;if("_ref"in n&&n._ref===void 0){n._ref=li;try{let i=this.getCandidate(e);if(bn(i))n._ref=i;else{n._nodeDescription=i;let s=this.loadAstNode(i);n._ref=s??this.createLinkingError(e,i)}}catch(i){console.error(`An error occurred while resolving reference to '${n.$refText}':`,i);let s=i.message??String(i);n._ref={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${s}`}}r.references.push(n)}else if("_items"in n&&n._items===void 0){n._items=li;try{let i=this.getCandidates(e),s=[];if(bn(i))n._linkingError=i;else for(let a of i){let o=this.loadAstNode(a);o&&s.push({ref:o,$nodeDescription:a})}n._items=s}catch(i){n._linkingError={info:e,message:`An error occurred while resolving reference to '${n.$refText}': ${i}`},n._items=[]}r.references.push(n)}}unlink(e){for(let r of e.references)"_ref"in r?(r._ref=void 0,delete r._nodeDescription):"_items"in r&&(r._items=void 0,delete r._linkingError);e.references=[]}getCandidate(e){return this.scopeProvider.getScope(e).getElement(e.reference.$refText)??this.createLinkingError(e)}getCandidates(e){let n=this.scopeProvider.getScope(e).getElements(e.reference.$refText).distinct(i=>`${i.documentUri}#${i.path}`).toArray();return n.length>0?n:this.createLinkingError(e)}buildReference(e,r,n,i){let s=this,a={$refNode:n,$refText:i,_ref:void 0,get ref(){if(Oe(this._ref))return this._ref;if(mu(this._nodeDescription)){let o=s.loadAstNode(this._nodeDescription);this._ref=o??s.createLinkingError({reference:a,container:e,property:r},this._nodeDescription)}else if(this._ref===void 0){this._ref=li;let o=$i(e).$document,c=s.getLinkedNode({reference:a,container:e,property:r});if(c.error&&o&&o.state0))return this._linkingError=s.createLinkingError({reference:a,container:e,property:r})}};return a}throwCyclicReferenceError(e,r,n){throw new Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(e)}/${r} (symbol '${n}')`)}getLinkedNode(e){try{let r=this.getCandidate(e);if(bn(r))return{error:r};let n=this.loadAstNode(r);return n?{node:n,descr:r}:{descr:r,error:this.createLinkingError(e,r)}}catch(r){console.error(`An error occurred while resolving reference to '${e.reference.$refText}':`,r);let n=r.message??String(r);return{error:{info:e,message:`An error occurred while resolving reference to '${e.reference.$refText}': ${n}`}}}}loadAstNode(e){if(e.node)return e.node;let r=this.langiumDocuments().getDocument(e.documentUri);if(r)return this.astNodeLocator.getAstNode(r.parseResult.value,e.path)}createLinkingError(e,r){let n=$i(e.container).$document;n&&n.statear(r)&&r.isMulti)}findDeclarations(e){if(e){let r=rf(e),n=e.astNode;if(r&&n){let i=n[r.feature];if(tt(i)||Ut(i))return Go(i);if(Array.isArray(i)){for(let s of i)if((tt(s)||Ut(s))&&s.$refNode&&s.$refNode.offset<=e.offset&&s.$refNode.end>=e.end)return Go(s)}}if(n){let i=this.nameProvider.getNameNode(n);if(i&&(i===e||Gu(e,i)))return this.getSelfNodes(n)}}return[]}getSelfNodes(e){if(this.hasMultiReference){let r=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e)),n=this.getNodeFromReferenceDescription(r.head());if(n){for(let i of sn(n))if(Ut(i.reference)&&i.reference.items.some(s=>s.ref===e))return i.reference.items.map(s=>s.ref)}return[e]}else return[e]}getNodeFromReferenceDescription(e){if(!e)return;let r=this.documents.getDocument(e.sourceUri);if(r)return this.nodeLocator.getAstNode(r.parseResult.value,e.sourcePath)}findDeclarationNodes(e){let r=this.findDeclarations(e),n=[];for(let i of r){let s=this.nameProvider.getNameNode(i)??i.$cstNode;s&&n.push(s)}return n}findReferences(e,r){let n=[];r.includeDeclaration&&n.push(...this.getSelfReferences(e));let i=this.index.findAllReferences(e,this.nodeLocator.getAstNodePath(e));return r.documentUri&&(i=i.filter(s=>Be.equals(s.sourceUri,r.documentUri))),n.push(...i),ee(n)}getSelfReferences(e){let r=this.getSelfNodes(e),n=[];for(let i of r){let s=this.nameProvider.getNameNode(i);if(s){let a=yt(i),o=this.nodeLocator.getAstNodePath(i);n.push({sourceUri:a.uri,sourcePath:o,targetUri:a.uri,targetPath:o,segment:Wn(s),local:!0})}}return n}};var Rt=class{constructor(e){if(this.map=new Map,e)for(let[r,n]of e)this.add(r,n)}get size(){return Ei.sum(ee(this.map.values()).map(e=>e.length))}clear(){this.map.clear()}delete(e,r){if(r===void 0)return this.map.delete(e);{let n=this.map.get(e);if(n){let i=n.indexOf(r);if(i>=0)return n.length===1?this.map.delete(e):n.splice(i,1),!0}return!1}}get(e){return this.map.get(e)??[]}getStream(e){let r=this.map.get(e);return r?ee(r):nn}has(e,r){if(r===void 0)return this.map.has(e);{let n=this.map.get(e);return n?n.indexOf(r)>=0:!1}}add(e,r){return this.map.has(e)?this.map.get(e).push(r):this.map.set(e,[r]),this}addAll(e,r){return this.map.has(e)?this.map.get(e).push(...r):this.map.set(e,Array.from(r)),this}forEach(e){this.map.forEach((r,n)=>r.forEach(i=>e(i,n,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return ee(this.map.entries()).flatMap(([e,r])=>r.map(n=>[e,n]))}keys(){return ee(this.map.keys())}values(){return ee(this.map.values()).flat()}entriesGroupedByKey(){return ee(this.map.entries())}},ui=class{get size(){return this.map.size}constructor(e){if(this.map=new Map,this.inverse=new Map,e)for(let[r,n]of e)this.set(r,n)}clear(){this.map.clear(),this.inverse.clear()}set(e,r){return this.map.set(e,r),this.inverse.set(r,e),this}get(e){return this.map.get(e)}getKey(e){return this.inverse.get(e)}delete(e){let r=this.map.get(e);return r!==void 0?(this.map.delete(e),this.inverse.delete(r),!0):!1}};var Za=class{constructor(e){this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider}collectExportedSymbols(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){return this.collectExportedSymbolsForNode(e.parseResult.value,e,void 0,r)})}collectExportedSymbolsForNode(s,a){return P(this,arguments,function*(e,r,n=Xs,i=W.CancellationToken.None){let o=[];this.addExportedSymbol(e,o,r);for(let c of n(e))yield Me(i),this.addExportedSymbol(c,o,r);return o})}addExportedSymbol(e,r,n){let i=this.nameProvider.getName(e);i&&r.push(this.descriptions.createDescription(e,i,n))}collectLocalSymbols(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){let i=e.parseResult.value,s=new Rt;for(let a of nr(i))yield Me(r),this.addLocalSymbol(a,e,s);return s})}addLocalSymbol(e,r,n){let i=e.$container;if(i){let s=this.nameProvider.getName(e);s&&n.add(i,this.descriptions.createDescription(e,s,r))}}};var ms=class{constructor(e,r,n){this.elements=e,this.outerScope=r,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0}getAllElements(){return this.outerScope?this.elements.concat(this.outerScope.getAllElements()):this.elements}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.find(i=>i.name.toLowerCase()===r):this.elements.find(i=>i.name===e);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.caseInsensitive?this.elements.filter(i=>i.name.toLowerCase()===r):this.elements.filter(i=>i.name===e);return(this.concatOuterScope||n.isEmpty())&&this.outerScope?n.concat(this.outerScope.getElements(e)):n}},Ud=class{constructor(e,r,n){this.elements=new Map,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0;for(let i of e){let s=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.set(s,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r),i=n?[n]:[];return(this.concatOuterScope||i.length>0)&&this.outerScope?ee(i).concat(this.outerScope.getElements(e)):ee(i)}getAllElements(){let e=ee(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},eo=class{constructor(e,r,n){this.elements=new Rt,this.caseInsensitive=n?.caseInsensitive??!1,this.concatOuterScope=n?.concatOuterScope??!0;for(let i of e){let s=this.caseInsensitive?i.name.toLowerCase():i.name;this.elements.add(s,i)}this.outerScope=r}getElement(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r)[0];if(n)return n;if(this.outerScope)return this.outerScope.getElement(e)}getElements(e){let r=this.caseInsensitive?e.toLowerCase():e,n=this.elements.get(r);return(this.concatOuterScope||n.length===0)&&this.outerScope?ee(n).concat(this.outerScope.getElements(e)):ee(n)}getAllElements(){let e=ee(this.elements.values());return this.outerScope&&(e=e.concat(this.outerScope.getAllElements())),e}},QA={getElement(){},getElements(){return nn},getAllElements(){return nn}};var gs=class{constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(e){this.toDispose.push(e)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach(e=>e.dispose())}throwIfDisposed(){if(this.isDisposed)throw new Error("This cache has already been disposed")}},to=class extends gs{constructor(){super(...arguments),this.cache=new Map}has(e){return this.throwIfDisposed(),this.cache.has(e)}set(e,r){this.throwIfDisposed(),this.cache.set(e,r)}get(e,r){if(this.throwIfDisposed(),this.cache.has(e))return this.cache.get(e);if(r){let n=r();return this.cache.set(e,n),n}else return}delete(e){return this.throwIfDisposed(),this.cache.delete(e)}clear(){this.throwIfDisposed(),this.cache.clear()}},fi=class extends gs{constructor(e){super(),this.cache=new Map,this.converter=e??(r=>r)}has(e,r){return this.throwIfDisposed(),this.cacheForContext(e).has(r)}set(e,r,n){this.throwIfDisposed(),this.cacheForContext(e).set(r,n)}get(e,r,n){this.throwIfDisposed();let i=this.cacheForContext(e);if(i.has(r))return i.get(r);if(n){let s=n();return i.set(r,s),s}else return}delete(e,r){return this.throwIfDisposed(),this.cacheForContext(e).delete(r)}clear(e){if(this.throwIfDisposed(),e){let r=this.converter(e);this.cache.delete(r)}else this.cache.clear()}cacheForContext(e){let r=this.converter(e),n=this.cache.get(r);return n||(n=new Map,this.cache.set(r,n)),n}},ml=class extends fi{constructor(e,r){super(n=>n.toString()),r?(this.toDispose.push(e.workspace.DocumentBuilder.onDocumentPhase(r,n=>{this.clear(n.uri.toString())})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{for(let s of i)this.clear(s)}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{let s=n.concat(i);for(let a of s)this.clear(a)}))}},ys=class extends to{constructor(e,r){super(),r?(this.toDispose.push(e.workspace.DocumentBuilder.onBuildPhase(r,()=>{this.clear()})),this.toDispose.push(e.workspace.DocumentBuilder.onUpdate((n,i)=>{i.length>0&&this.clear()}))):this.toDispose.push(e.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}};var ro=class{constructor(e){this.reflection=e.shared.AstReflection,this.nameProvider=e.references.NameProvider,this.descriptions=e.workspace.AstNodeDescriptionProvider,this.indexManager=e.shared.workspace.IndexManager,this.globalScopeCache=new ys(e.shared)}getScope(e){let r=[],n=this.reflection.getReferenceType(e),i=yt(e.container).localSymbols;if(i){let a=e.container;do i.has(a)&&r.push(i.getStream(a).filter(o=>this.reflection.isSubtype(o.type,n))),a=a.$container;while(a)}let s=this.getGlobalScope(n,e);for(let a=r.length-1;a>=0;a--)s=this.createScope(r[a],s);return s}createScope(e,r,n){return new ms(ee(e),r,n)}createScopeForNodes(e,r,n){let i=ee(e).map(s=>{let a=this.nameProvider.getName(s);if(a)return this.descriptions.createDescription(s,a)}).nonNullable();return new ms(i,r,n)}getGlobalScope(e,r){return this.globalScopeCache.get(e,()=>new eo(this.indexManager.allElements(e)))}};function qd(t){return typeof t.$comment=="string"}function iy(t){return typeof t=="object"&&!!t&&("$ref"in t||"$error"in t)}var no=class{constructor(e){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=e.shared.workspace.LangiumDocuments,this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider,this.commentProvider=e.documentation.CommentProvider}serialize(e,r){let n=r??{},i=r?.replacer,s=(o,c)=>this.replacer(o,c,n),a=i?(o,c)=>i(o,c,s):s;try{return this.currentDocument=yt(e),JSON.stringify(e,a,r?.space)}finally{this.currentDocument=void 0}}deserialize(e,r){let n=r??{},i=JSON.parse(e);return this.linkNode(i,i,n),i}replacer(e,r,{refText:n,sourceText:i,textRegions:s,comments:a,uriConverter:o}){if(!this.ignoreProperties.has(e))if(tt(r)){let c=r.ref,l=n?r.$refText:void 0;if(c){let u=yt(c),p="";this.currentDocument&&this.currentDocument!==u&&(o?p=o(u.uri,c):p=u.uri.toString());let h=this.astNodeLocator.getAstNodePath(c);return{$ref:`${p}#${h}`,$refText:l}}else return{$error:r.error?.message??"Could not resolve reference",$refText:l}}else if(Ut(r)){let c=n?r.$refText:void 0,l=[];for(let u of r.items){let p=u.ref,h=yt(u.ref),g="";this.currentDocument&&this.currentDocument!==h&&(o?g=o(h.uri,p):g=h.uri.toString());let C=this.astNodeLocator.getAstNodePath(p);l.push(`${g}#${C}`)}return{$refs:l,$refText:c}}else if(Oe(r)){let c;if(s&&(c=this.addAstNodeRegionWithAssignmentsTo(ge({},r)),(!e||r.$document)&&c?.$textRegion&&(c.$textRegion.documentURI=this.currentDocument?.uri.toString())),i&&!e&&(c??(c=ge({},r)),c.$sourceText=r.$cstNode?.text),a){c??(c=ge({},r));let l=this.commentProvider.getComment(r);l&&(c.$comment=l.replace(/\r/g,""))}return c??r}else return r}addAstNodeRegionWithAssignmentsTo(e){let r=n=>({offset:n.offset,end:n.end,length:n.length,range:n.range});if(e.$cstNode){let n=e.$textRegion=r(e.$cstNode),i=n.assignments={};return Object.keys(e).filter(s=>!s.startsWith("$")).forEach(s=>{let a=Qu(e.$cstNode,s).map(r);a.length!==0&&(i[s]=a)}),e}}linkNode(e,r,n,i,s,a){for(let[c,l]of Object.entries(e))if(Array.isArray(l))for(let u=0;uP(this,null,function*(){yield this.handleException(()=>e.call(r,n,i,s),"An error occurred during validation",i,n)})}handleException(e,r,n,i){return P(this,null,function*(){try{yield e()}catch(s){if(Sr(s))throw s;console.error(`${r}:`,s),s instanceof Error&&s.stack&&console.error(s.stack);let a=s instanceof Error?s.message:String(s);n("error",`${r}: ${a}`,{node:i})}})}addEntry(e,r){if(e==="AstNode"){this.entries.add("AstNode",r);return}for(let n of this.reflection.getAllSubTypes(e))this.entries.add(n,r)}getChecks(e,r){let n=ee(this.entries.get(e)).concat(this.entries.get("AstNode"));return r&&(n=n.filter(i=>r.includes(i.category))),n.map(i=>i.check)}registerBeforeDocument(e,r=this){this.entriesBefore.push(this.wrapPreparationException(e,"An error occurred during set-up of the validation",r))}registerAfterDocument(e,r=this){this.entriesAfter.push(this.wrapPreparationException(e,"An error occurred during tear-down of the validation",r))}wrapPreparationException(e,r,n){return(i,s,a,o)=>P(this,null,function*(){yield this.handleException(()=>e.call(n,i,s,a,o),r,s,i)})}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(e){return this.knownCategories}};var sy=Object.freeze({validateNode:!0,validateChildren:!0}),ao=class{constructor(e){this.validationRegistry=e.validation.ValidationRegistry,this.metadata=e.LanguageMetaData,this.profiler=e.shared.profilers.LangiumProfiler,this.languageId=e.LanguageMetaData.languageId}validateDocument(i){return P(this,arguments,function*(e,r={},n=W.CancellationToken.None){let s=e.parseResult,a=[];if(yield Me(n),(!r.categories||r.categories.includes("built-in"))&&(this.processLexingErrors(s,a,r),r.stopAfterLexingErrors&&a.some(o=>o.data?.code===lr.LexingError)||(this.processParsingErrors(s,a,r),r.stopAfterParsingErrors&&a.some(o=>o.data?.code===lr.ParsingError))||(this.processLinkingErrors(e,a,r),r.stopAfterLinkingErrors&&a.some(o=>o.data?.code===lr.LinkingError))))return a;try{a.push(...yield this.validateAst(s.value,r,n))}catch(o){if(Sr(o))throw o;console.error("An error occurred during validation:",o)}return yield Me(n),a})}processLexingErrors(e,r,n){let i=[...e.lexerErrors,...e.lexerReport?.diagnostics??[]];for(let s of i){let a=s.severity??"error",o={severity:yl(a),range:{start:{line:s.line-1,character:s.column-1},end:{line:s.line-1,character:s.column+s.length-1}},message:s.message,data:oy(a),source:this.getSource()};r.push(o)}}processParsingErrors(e,r,n){for(let i of e.parserErrors){let s;if(isNaN(i.token.startOffset)){if("previousToken"in i){let a=i.previousToken;if(isNaN(a.startOffset)){let o={line:0,character:0};s={start:o,end:o}}else{let o={line:a.endLine-1,character:a.endColumn};s={start:o,end:o}}}}else s=Pi(i.token);if(s){let a={severity:yl("error"),range:s,message:i.message,data:di(lr.ParsingError),source:this.getSource()};r.push(a)}}}processLinkingErrors(e,r,n){for(let i of e.references){let s=i.error;if(s){let a={node:s.info.container,range:i.$refNode?.range,property:s.info.property,index:s.info.index,data:{code:lr.LinkingError,containerType:s.info.container.$type,property:s.info.property,refText:s.info.reference.$refText}};r.push(this.toDiagnostic("error",s.message,a))}}}validateAst(i,s){return P(this,arguments,function*(e,r,n=W.CancellationToken.None){let a=[],o=(c,l,u)=>{a.push(this.toDiagnostic(c,l,u))};return yield this.validateAstBefore(e,r,o,n),yield this.validateAstNodes(e,r,o,n),yield this.validateAstAfter(e,r,o,n),a})}validateAstBefore(s,a,o){return P(this,arguments,function*(e,r,n,i=W.CancellationToken.None){let c=this.validationRegistry.checksBefore;for(let l of c)yield Me(i),yield l(e,n,r.categories??[],i)})}validateAstNodes(s,a,o){return P(this,arguments,function*(e,r,n,i=W.CancellationToken.None){if(this.profiler?.isActive("validating")){let c=this.profiler.createTask("validating",this.languageId);c.start();try{let l=St(e).iterator();for(let u of l){c.startSubTask(u.$type);let p=this.validateSingleNodeOptions(u,r);if(p.validateNode)try{let h=this.validationRegistry.getChecks(u.$type,r.categories);for(let g of h)yield g(u,n,i)}finally{c.stopSubTask(u.$type)}p.validateChildren||l.prune()}}finally{c.stop()}}else{let c=St(e).iterator();for(let l of c){yield Me(i);let u=this.validateSingleNodeOptions(l,r);if(u.validateNode){let p=this.validationRegistry.getChecks(l.$type,r.categories);for(let h of p)yield h(l,n,i)}u.validateChildren||c.prune()}}})}validateSingleNodeOptions(e,r){return sy}validateAstAfter(s,a,o){return P(this,arguments,function*(e,r,n,i=W.CancellationToken.None){let c=this.validationRegistry.checksAfter;for(let l of c)yield Me(i),yield l(e,n,r.categories??[],i)})}toDiagnostic(e,r,n){return{message:r,range:ay(n),severity:yl(e),code:n.code,codeDescription:n.codeDescription,tags:n.tags,relatedInformation:n.relatedInformation,data:n.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};function ay(t){if(t.range)return t.range;let e;return typeof t.property=="string"?e=pa(t.node.$cstNode,t.property,t.index):typeof t.keyword=="string"&&(e=ef(t.node.$cstNode,t.keyword,t.index)),e??(e=t.node.$cstNode),e?e.range:{start:{line:0,character:0},end:{line:0,character:0}}}function yl(t){switch(t){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw new Error("Invalid diagnostic severity: "+t)}}function oy(t){switch(t){case"error":return di(lr.LexingError);case"warning":return di(lr.LexingWarning);case"info":return di(lr.LexingInfo);case"hint":return di(lr.LexingHint);default:throw new Error("Invalid diagnostic severity: "+t)}}var lr=(function(t){return t.LexingError="lexing-error",t.LexingWarning="lexing-warning",t.LexingInfo="lexing-info",t.LexingHint="lexing-hint",t.ParsingError="parsing-error",t.LinkingError="linking-error",t})(lr||{});var oo=class{constructor(e){this.astNodeLocator=e.workspace.AstNodeLocator,this.nameProvider=e.references.NameProvider}createDescription(e,r,n){let i=n??yt(e);r??(r=this.nameProvider.getName(e));let s=this.astNodeLocator.getAstNodePath(e);if(!r)throw new Error(`Node at path ${s} has no name.`);let a,o=()=>a??(a=Wn(this.nameProvider.getNameNode(e)??e.$cstNode));return{node:e,name:r,get nameSegment(){return o()},selectionSegment:Wn(e.$cstNode),type:e.$type,documentUri:i.uri,path:s}}},co=class{constructor(e){this.nodeLocator=e.workspace.AstNodeLocator}createDescriptions(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){let i=[],s=e.parseResult.value;for(let a of St(s))yield Me(r),sn(a).forEach(o=>{o.reference.error||i.push(...this.createInfoDescriptions(o))});return i})}createInfoDescriptions(e){let r=e.reference;if(r.error||!r.$refNode)return[];let n=[];tt(r)&&r.$nodeDescription?n=[r.$nodeDescription]:Ut(r)&&(n=r.items.map(c=>c.$nodeDescription).filter(c=>c!==void 0));let i=yt(e.container).uri,s=this.nodeLocator.getAstNodePath(e.container),a=[],o=Wn(r.$refNode);for(let c of n)a.push({sourceUri:i,sourcePath:s,targetUri:c.documentUri,targetPath:c.path,segment:o,local:Be.equals(c.documentUri,i)});return a}};var lo=class{constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(e){if(e.$container){let r=this.getAstNodePath(e.$container),n=this.getPathSegment(e);return r+this.segmentSeparator+n}return""}getPathSegment({$containerProperty:e,$containerIndex:r}){if(!e)throw new Error("Missing '$containerProperty' in AST node.");return r!==void 0?e+this.indexSeparator+r:e}getAstNode(e,r){return r.split(this.segmentSeparator).reduce((i,s)=>{if(!i||s.length===0)return i;let a=s.indexOf(this.indexSeparator);if(a>0){let o=s.substring(0,a),c=parseInt(s.substring(a+1));return i[o]?.[c]}return i[s]},e)}};var we={};ae(we,du(ci(),1));var uo=class{constructor(e){this._ready=new It,this.onConfigurationSectionUpdateEmitter=new we.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=e.ServiceRegistry}get ready(){return this._ready.promise}initialize(e){this.workspaceConfig=e.capabilities.workspace?.configuration??!1}initialized(e){return P(this,null,function*(){if(this.workspaceConfig){if(e.register){let r=this.serviceRegistry.all;e.register({section:r.map(n=>this.toSectionName(n.LanguageMetaData.languageId))})}if(e.fetchConfiguration){let r=this.serviceRegistry.all.map(i=>({section:this.toSectionName(i.LanguageMetaData.languageId)})),n=yield e.fetchConfiguration(r);r.forEach((i,s)=>{this.updateSectionConfiguration(i.section,n[s])})}}this._ready.resolve()})}updateConfiguration(e){typeof e.settings!="object"||e.settings===null||Object.entries(e.settings).forEach(([r,n])=>{this.updateSectionConfiguration(r,n),this.onConfigurationSectionUpdateEmitter.fire({section:r,configuration:n})})}updateSectionConfiguration(e,r){this.settings[e]=r}getConfiguration(e,r){return P(this,null,function*(){yield this.ready;let n=this.toSectionName(e);if(this.settings[n])return this.settings[n][r]})}toSectionName(e){return`${e}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}};var Ps=du(Ix(),1);var Cn;(function(t){function e(r){return{dispose:()=>P(null,null,function*(){return yield r()})}}t.create=e})(Cn||(Cn={}));var xo=class{constructor(e){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new Rt,this.documentPhaseListeners=new Rt,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=re.Changed,this.langiumDocuments=e.workspace.LangiumDocuments,this.langiumDocumentFactory=e.workspace.LangiumDocumentFactory,this.textDocuments=e.workspace.TextDocuments,this.indexManager=e.workspace.IndexManager,this.fileSystemProvider=e.workspace.FileSystemProvider,this.workspaceManager=()=>e.workspace.WorkspaceManager,this.serviceRegistry=e.ServiceRegistry}build(i){return P(this,arguments,function*(e,r={},n=W.CancellationToken.None){for(let s of e){let a=s.uri.toString();if(s.state===re.Validated){if(typeof r.validation=="boolean"&&r.validation)this.resetToState(s,re.IndexedReferences);else if(typeof r.validation=="object"){let o=this.findMissingValidationCategories(s,r);o.length>0&&(this.buildState.set(a,{completed:!1,options:{validation:{categories:o}},result:this.buildState.get(a)?.result}),s.state=re.IndexedReferences)}}else this.buildState.delete(a)}this.currentState=re.Changed,yield this.emitUpdate(e.map(s=>s.uri),[]),yield this.buildDocuments(e,r,n)})}update(i,s){return P(this,arguments,function*(e,r,n=W.CancellationToken.None){this.currentState=re.Changed;let a=[];for(let u of r){let p=this.langiumDocuments.deleteDocuments(u);for(let h of p)a.push(h.uri),this.cleanUpDeleted(h)}let o=(yield Promise.all(e.map(u=>this.findChangedUris(u)))).flat();for(let u of o){let p=this.langiumDocuments.getDocument(u);p===void 0&&(p=this.langiumDocumentFactory.fromModel({$type:"INVALID"},u),p.state=re.Changed,this.langiumDocuments.addDocument(p)),this.resetToState(p,re.Changed)}let c=ee(o).concat(a).map(u=>u.toString()).toSet();this.langiumDocuments.all.filter(u=>!c.has(u.uri.toString())&&this.shouldRelink(u,c)).forEach(u=>this.resetToState(u,re.ComputedScopes)),yield this.emitUpdate(o,a),yield Me(n);let l=this.sortDocuments(this.langiumDocuments.all.filter(u=>u.state=1}findMissingValidationCategories(e,r){let n=this.buildState.get(e.uri.toString()),i=this.serviceRegistry.getServices(e.uri).validation.ValidationRegistry.getAllValidationCategories(e),s=n?.result?.validationChecks?new Set(n?.result?.validationChecks):n?.completed?i:new Set,a=r===void 0||r.validation===!0?i:typeof r.validation=="object"?r.validation.categories??i:[];return ee(a).filter(o=>!s.has(o)).toArray()}findChangedUris(e){return P(this,null,function*(){if(this.langiumDocuments.getDocument(e)??this.textDocuments?.get(e))return[e];try{let n=yield this.fileSystemProvider.stat(e);if(n.isDirectory)return yield this.workspaceManager().searchFolder(e);if(this.workspaceManager().shouldIncludeEntry(n))return[e]}catch(n){}return[]})}emitUpdate(e,r){return P(this,null,function*(){yield Promise.all(this.updateListeners.map(n=>n(e,r)))})}sortDocuments(e){let r=0,n=e.length-1;for(;r=0&&!this.hasTextDocument(e[n]);)n--;rn.error!==void 0)?!0:this.indexManager.isAffected(e,r)}onUpdate(e){return this.updateListeners.push(e),Cn.create(()=>{let r=this.updateListeners.indexOf(e);r>=0&&this.updateListeners.splice(r,1)})}resetToState(e,r){switch(r){case re.Changed:case re.Parsed:this.indexManager.removeContent(e.uri);case re.IndexedContent:e.localSymbols=void 0;case re.ComputedScopes:this.serviceRegistry.getServices(e.uri).references.Linker.unlink(e);case re.Linked:this.indexManager.removeReferences(e.uri);case re.IndexedReferences:e.diagnostics=void 0,this.buildState.delete(e.uri.toString());case re.Validated:}e.state>r&&(e.state=r)}cleanUpDeleted(e){this.buildState.delete(e.uri.toString()),this.indexManager.remove(e.uri),e.state=re.Changed}buildDocuments(e,r,n){return P(this,null,function*(){this.prepareBuild(e,r),yield this.runCancelable(e,re.Parsed,n,a=>this.langiumDocumentFactory.update(a,n)),yield this.runCancelable(e,re.IndexedContent,n,a=>this.indexManager.updateContent(a,n)),yield this.runCancelable(e,re.ComputedScopes,n,a=>P(this,null,function*(){let o=this.serviceRegistry.getServices(a.uri).references.ScopeComputation;a.localSymbols=yield o.collectLocalSymbols(a,n)}));let i=e.filter(a=>this.shouldLink(a));yield this.runCancelable(i,re.Linked,n,a=>this.serviceRegistry.getServices(a.uri).references.Linker.link(a,n)),yield this.runCancelable(i,re.IndexedReferences,n,a=>this.indexManager.updateReferences(a,n));let s=e.filter(a=>this.shouldValidate(a)?!0:(this.markAsCompleted(a),!1));yield this.runCancelable(s,re.Validated,n,a=>P(this,null,function*(){yield this.validate(a,n),this.markAsCompleted(a)}))})}markAsCompleted(e){let r=this.buildState.get(e.uri.toString());r&&(r.completed=!0)}prepareBuild(e,r){for(let n of e){let i=n.uri.toString(),s=this.buildState.get(i);(!s||s.completed)&&this.buildState.set(i,{completed:!1,options:r,result:s?.result})}}runCancelable(e,r,n,i){return P(this,null,function*(){for(let a of e)a.statea.state===r);yield this.notifyBuildPhase(s,r,n),this.currentState=r})}onBuildPhase(e,r){return this.buildPhaseListeners.add(e,r),Cn.create(()=>{this.buildPhaseListeners.delete(e,r)})}onDocumentPhase(e,r){return this.documentPhaseListeners.add(e,r),Cn.create(()=>{this.documentPhaseListeners.delete(e,r)})}waitUntil(e,r,n){let i;return r&&"path"in r?i=r:n=r,n??(n=W.CancellationToken.None),i?this.awaitDocumentState(e,i,n):this.awaitBuilderState(e,n)}awaitDocumentState(e,r,n){let i=this.langiumDocuments.getDocument(r);if(i){if(i.state>=e)return Promise.resolve(r);if(n.isCancellationRequested)return Promise.reject(Yt);if(this.currentState>=e&&e>i.state)return Promise.reject(new Ps.ResponseError(Ps.LSPErrorCodes.RequestFailed,`Document state of ${r.toString()} is ${re[i.state]}, requiring ${re[e]}, but workspace state is already ${re[this.currentState]}. Returning undefined.`))}else return Promise.reject(new Ps.ResponseError(Ps.LSPErrorCodes.ServerCancelled,`No document found for URI: ${r.toString()}`));return new Promise((s,a)=>{let o=this.onDocumentPhase(e,l=>{Be.equals(l.uri,r)&&(o.dispose(),c.dispose(),s(l.uri))}),c=n.onCancellationRequested(()=>{o.dispose(),c.dispose(),a(Yt)})})}awaitBuilderState(e,r){return this.currentState>=e?Promise.resolve():r.isCancellationRequested?Promise.reject(Yt):new Promise((n,i)=>{let s=this.onBuildPhase(e,()=>{s.dispose(),a.dispose(),n()}),a=r.onCancellationRequested(()=>{s.dispose(),a.dispose(),i(Yt)})})}notifyDocumentPhase(e,r,n){return P(this,null,function*(){let s=this.documentPhaseListeners.get(r).slice();for(let a of s)try{yield Me(n),yield a(e,n)}catch(o){if(!Sr(o))throw o}})}notifyBuildPhase(e,r,n){return P(this,null,function*(){if(e.length===0)return;let s=this.buildPhaseListeners.get(r).slice();for(let a of s)yield Me(n),yield a(e,n)})}shouldLink(e){return this.getBuildOptions(e).eagerLinking??!0}shouldValidate(e){return!!this.getBuildOptions(e).validation}validate(e,r){return P(this,null,function*(){let n=this.serviceRegistry.getServices(e.uri).validation.DocumentValidator,i=this.getBuildOptions(e),s=typeof i.validation=="object"?ge({},i.validation):{};s.categories=this.findMissingValidationCategories(e,i);let a=yield n.validateDocument(e,s,r);e.diagnostics?e.diagnostics.push(...a):e.diagnostics=a;let o=this.buildState.get(e.uri.toString());o&&(o.result??(o.result={}),o.result.validationChecks?o.result.validationChecks=ee(o.result.validationChecks).concat(s.categories).distinct().toArray():o.result.validationChecks=[...s.categories])})}getBuildOptions(e){return this.buildState.get(e.uri.toString())?.options??{}}};var vo=class{constructor(e){this.symbolIndex=new Map,this.symbolByTypeIndex=new fi,this.referenceIndex=new Map,this.documents=e.workspace.LangiumDocuments,this.serviceRegistry=e.ServiceRegistry,this.astReflection=e.AstReflection}findAllReferences(e,r){let n=yt(e).uri,i=[];return this.referenceIndex.forEach(s=>{s.forEach(a=>{Be.equals(a.targetUri,n)&&a.targetPath===r&&i.push(a)})}),ee(i)}allElements(e,r){let n=ee(this.symbolIndex.keys());return r&&(n=n.filter(i=>!r||r.has(i))),n.map(i=>this.getFileDescriptions(i,e)).flat()}getFileDescriptions(e,r){return r?this.symbolByTypeIndex.get(e,r,()=>(this.symbolIndex.get(e)??[]).filter(s=>this.astReflection.isSubtype(s.type,r))):this.symbolIndex.get(e)??[]}remove(e){this.removeContent(e),this.removeReferences(e)}removeContent(e){let r=e.toString();this.symbolIndex.delete(r),this.symbolByTypeIndex.clear(r)}removeReferences(e){let r=e.toString();this.referenceIndex.delete(r)}updateContent(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){let s=yield this.serviceRegistry.getServices(e.uri).references.ScopeComputation.collectExportedSymbols(e,r),a=e.uri.toString();this.symbolIndex.set(a,s),this.symbolByTypeIndex.clear(a)})}updateReferences(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){let s=yield this.serviceRegistry.getServices(e.uri).workspace.ReferenceDescriptionProvider.createDescriptions(e,r);this.referenceIndex.set(e.uri.toString(),s)})}isAffected(e,r){let n=this.referenceIndex.get(e.uri.toString());return n?n.some(i=>!i.local&&r.has(i.targetUri.toString())):!1}};var Eo=class{constructor(e){this.initialBuildOptions={},this._ready=new It,this.serviceRegistry=e.ServiceRegistry,this.langiumDocuments=e.workspace.LangiumDocuments,this.documentBuilder=e.workspace.DocumentBuilder,this.fileSystemProvider=e.workspace.FileSystemProvider,this.mutex=e.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(e){this.folders=e.workspaceFolders??void 0}initialized(e){return this.mutex.write(r=>this.initializeWorkspace(this.folders??[],r))}initializeWorkspace(n){return P(this,arguments,function*(e,r=W.CancellationToken.None){let i=yield this.performStartup(e);yield Me(r),yield this.documentBuilder.build(i,this.initialBuildOptions,r)})}performStartup(e){return P(this,null,function*(){let r=[],n=a=>{r.push(a),this.langiumDocuments.hasDocument(a.uri)||this.langiumDocuments.addDocument(a)};yield this.loadAdditionalDocuments(e,n);let i=[];yield Promise.all(e.map(a=>this.getRootFolder(a)).map(a=>P(this,null,function*(){return this.traverseFolder(a,i)})));let s=ee(i).distinct(a=>a.toString()).filter(a=>!this.langiumDocuments.hasDocument(a));return yield this.loadWorkspaceDocuments(s,n),this._ready.resolve(),r})}loadWorkspaceDocuments(e,r){return P(this,null,function*(){yield Promise.all(e.map(n=>P(this,null,function*(){let i=yield this.langiumDocuments.getOrCreateDocument(n);r(i)})))})}loadAdditionalDocuments(e,r){return Promise.resolve()}getRootFolder(e){return rt.parse(e.uri)}traverseFolder(e,r){return P(this,null,function*(){try{let n=yield this.fileSystemProvider.readDirectory(e);yield Promise.all(n.map(i=>P(this,null,function*(){this.shouldIncludeEntry(i)&&(i.isDirectory?yield this.traverseFolder(i.uri,r):i.isFile&&r.push(i.uri))})))}catch(n){console.error("Failure to read directory content of "+e.toString(!0),n)}})}searchFolder(e){return P(this,null,function*(){let r=[];return yield this.traverseFolder(e,r),r})}shouldIncludeEntry(e){let r=Be.basename(e.uri);return r.startsWith(".")?!1:e.isDirectory?r!=="node_modules"&&r!=="out":e.isFile?this.serviceRegistry.hasServices(e.uri):!1}};var Ao=class{buildUnexpectedCharactersMessage(e,r,n,i,s){return ji.buildUnexpectedCharactersMessage(e,r,n,i,s)}buildUnableToPopLexerModeMessage(e){return ji.buildUnableToPopLexerModeMessage(e)}},Xl={mode:"full"},gi=class{constructor(e){this.errorMessageProvider=e.parser.LexerErrorMessageProvider,this.tokenBuilder=e.parser.TokenBuilder;let r=this.tokenBuilder.buildTokens(e.Grammar,{caseInsensitive:e.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(r);let n=oh(r)?Object.values(r):r,i=e.LanguageMetaData.mode==="production";this.chevrotainLexer=new He(n,{positionTracking:"full",skipValidations:i,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(e,r=Xl){let n=this.chevrotainLexer.tokenize(e);return{tokens:n.tokens,errors:n.errors,hidden:n.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(e)}}toTokenTypeDictionary(e){if(oh(e))return e;let r=ch(e)?Object.values(e.modes).flat():e,n={};return r.forEach(i=>n[i.name]=i),n}};function Jl(t){return Array.isArray(t)&&(t.length===0||"name"in t[0])}function ch(t){return t&&"modes"in t&&"defaultMode"in t}function oh(t){return!Jl(t)&&!ch(t)}as();function fh(t,e,r){let n,i;typeof t=="string"?(i=e,n=r):(i=t.range.start,n=e),i||(i=ce.create(0,0));let s=Px(t),a=ph(n),o=U$({lines:s,position:i,options:a});return W$({index:0,tokens:o,position:i})}function dh(t,e){let r=ph(e),n=Px(t);if(n.length===0)return!1;let i=n[0],s=n[n.length-1],a=r.start,o=r.end;return!!a?.exec(i)&&!!o?.exec(s)}function Px(t){let e="";return typeof t=="string"?e=t:e=t.text,e.split(Wu)}var _x=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,G$=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;function U$(t){let e=[],r=t.position.line,n=t.position.character;for(let i=0;i=o.length){if(e.length>0){let u=ce.create(r,n);e.push({type:"break",content:"",range:ie.create(u,u)})}}else{_x.lastIndex=c;let u=_x.exec(o);if(u){let p=u[0],h=u[1],g=ce.create(r,n+c),C=ce.create(r,n+c+p.length);e.push({type:"tag",content:h,range:ie.create(g,C)}),c+=p.length,c=uh(o,c)}if(c0&&e[e.length-1].type==="break"?e.slice(0,-1):e}function q$(t,e,r,n){let i=[];if(t.length===0){let s=ce.create(r,n),a=ce.create(r,n+e.length);i.push({type:"text",content:e,range:ie.create(s,a)})}else{let s=0;for(let o of t){let c=o.index,l=e.substring(s,c);l.length>0&&i.push({type:"text",content:e.substring(s,c),range:ie.create(ce.create(r,s+n),ce.create(r,c+n))});let u=l.length+1,p=o[1];if(i.push({type:"inline-tag",content:p,range:ie.create(ce.create(r,s+u+n),ce.create(r,s+u+p.length+n))}),u+=p.length,o.length===4){u+=o[2].length;let h=o[3];i.push({type:"text",content:h,range:ie.create(ce.create(r,s+u+n),ce.create(r,s+u+h.length+n))})}else i.push({type:"text",content:"",range:ie.create(ce.create(r,s+u+n),ce.create(r,s+u+n))});s=c+o[0].length}let a=e.substring(s);a.length>0&&i.push({type:"text",content:a,range:ie.create(ce.create(r,s+n),ce.create(r,s+n+a.length))})}return i}var z$=/\S/,j$=/\s*$/;function uh(t,e){let r=t.substring(e).match(z$);return r?e+r.index:t.length}function B$(t){let e=t.match(j$);if(e&&typeof e.index=="number")return e.index}function W$(t){let e=ce.create(t.position.line,t.position.character);if(t.tokens.length===0)return new Ql([],ie.create(e,e));let r=[];for(;t.indexr.name===e)}getTags(e){return this.getAllTags().filter(r=>r.name===e)}getAllTags(){return this.elements.filter(e=>"name"in e)}toString(){let e="";for(let r of this.elements)if(e.length===0)e=r.toString();else{let n=r.toString();e+=bx(e)+n}return e.trim()}toMarkdown(e){let r="";for(let n of this.elements)if(r.length===0)r=n.toMarkdown(e);else{let i=n.toMarkdown(e);r+=bx(r)+i}return r.trim()}},$o=class{constructor(e,r,n,i){this.name=e,this.content=r,this.inline=n,this.range=i}toString(){let e=`@${this.name}`,r=this.content.toString();return this.content.inlines.length===1?e=`${e} ${r}`:this.content.inlines.length>1&&(e=`${e} -${r}`),this.inline?`{${e}}`:e}toMarkdown(e){return e?.renderTag?.(this)??this.toMarkdownDefault(e)}toMarkdownDefault(e){let r=this.content.toMarkdown(e);if(this.inline){let s=Y$(this.name,r,e??{});if(typeof s=="string")return s}let n="";e?.tag==="italic"||e?.tag===void 0?n="*":e?.tag==="bold"?n="**":e?.tag==="bold-italic"&&(n="***");let i=`${n}@${this.name}${n}`;return this.content.inlines.length===1?i=`${i} \u2014 ${r}`:this.content.inlines.length>1&&(i=`${i} -${r}`),this.inline?`{${i}}`:i}};function Y$(t,e,r){if(t==="linkplain"||t==="linkcode"||t==="link"){let n=e.indexOf(" "),i=e;if(n>0){let a=uh(e,n);i=e.substring(a),e=e.substring(0,n)}return(t==="linkcode"||t==="link"&&r.link==="code")&&(i=`\`${i}\``),r.renderLink?.(e,i)??X$(e,i)}}function X$(t,e){try{return rt.parse(t,!0),`[${e}](${t})`}catch(r){return t}}var So=class{constructor(e,r){this.inlines=e,this.range=r}toString(){let e="";for(let r=0;rn.range.start.line&&(e+=` -`)}return e}toMarkdown(e){let r="";for(let n=0;ni.range.start.line&&(r+=` -`)}return r}},Zl=class{constructor(e,r){this.text=e,this.range=r}toString(){return this.text}toMarkdown(){return this.text}};function bx(t){return t.endsWith(` -`)?` -`:` - -`}var ko=class{constructor(e){this.indexManager=e.shared.workspace.IndexManager,this.commentProvider=e.documentation.CommentProvider}getDocumentation(e){let r=this.commentProvider.getComment(e);if(r&&dh(r))return fh(r).toMarkdown({renderLink:(i,s)=>this.documentationLinkRenderer(e,i,s),renderTag:i=>this.documentationTagRenderer(e,i)})}documentationLinkRenderer(e,r,n){let i=this.findNameInLocalSymbols(e,r)??this.findNameInGlobalScope(e,r);if(i&&i.nameSegment){let s=i.nameSegment.range.start.line+1,a=i.nameSegment.range.start.character+1,o=i.documentUri.with({fragment:`L${s},${a}`});return`[${n}](${o.toString()})`}else return}documentationTagRenderer(e,r){}findNameInLocalSymbols(e,r){let i=yt(e).localSymbols;if(!i)return;let s=e;do{let o=i.getStream(s).find(c=>c.name===r);if(o)return o;s=s.$container}while(s)}findNameInGlobalScope(e,r){return this.indexManager.allElements().find(i=>i.name===r)}};var No=class{constructor(e){this.grammarConfig=()=>e.parser.GrammarConfig}getComment(e){return qd(e)?e.$comment:Uu(e.$cstNode,this.grammarConfig().multilineCommentRules)?.text}};var Co=class{constructor(e){this.syncParser=e.parser.LangiumParser}parse(e,r){return Promise.resolve(this.syncParser.parse(e))}},hh=class{constructor(e){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=e.serializer.Hydrator}initializeWorkers(){for(;this.workerPool.length{if(this.queue.length>0){let r=this.queue.shift();r&&(e.lock(),r.resolve(e))}}),this.workerPool.push(e)}}parse(e,r){return P(this,null,function*(){let n=yield this.acquireParserWorker(r),i=new It,s,a=r.onCancellationRequested(()=>{s=setTimeout(()=>{this.terminateWorker(n)},this.terminationDelay)});return n.parse(e).then(o=>{let c=this.hydrator.hydrate(o);i.resolve(c)}).catch(o=>{i.reject(o)}).finally(()=>{a.dispose(),clearTimeout(s)}),i.promise})}terminateWorker(e){e.terminate();let r=this.workerPool.indexOf(e);r>=0&&this.workerPool.splice(r,1)}acquireParserWorker(e){return P(this,null,function*(){this.initializeWorkers();for(let n of this.workerPool)if(n.ready)return n.lock(),n;let r=new It;return e.onCancellationRequested(()=>{let n=this.queue.indexOf(r);n>=0&&this.queue.splice(n,1),r.reject(Yt)}),this.queue.push(r),r.promise})}},mh=class{get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(e,r,n,i){this.onReadyEmitter=new we.Emitter,this.deferred=new It,this._ready=!0,this._parsing=!1,this.sendMessage=e,this._terminate=i,r(s=>{let a=s;this.deferred.resolve(a),this.unlock()}),n(s=>{this.deferred.reject(s),this.unlock()})}terminate(){this.deferred.reject(Yt),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(e){if(this._parsing)throw new Error("Parser worker is busy");return this._parsing=!0,this.deferred=new It,this.sendMessage(e),this.deferred.promise}};var wo=class{constructor(){this.previousTokenSource=new W.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(e){this.cancelWrite();let r=pl();return this.previousTokenSource=r,this.enqueue(this.writeQueue,e,r.token)}read(e){return this.enqueue(this.readQueue,e)}enqueue(e,r,n=W.CancellationToken.None){let i=new It,s={action:r,deferred:i,cancellationToken:n};return e.push(s),this.performNextOperation(),i.promise}performNextOperation(){return P(this,null,function*(){if(!this.done)return;let e=[];if(this.writeQueue.length>0)e.push(this.writeQueue.shift());else if(this.readQueue.length>0)e.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,yield Promise.all(e.map(s=>P(this,[s],function*({action:r,deferred:n,cancellationToken:i}){try{let a=yield Promise.resolve().then(()=>r(i));n.resolve(a)}catch(a){Sr(a)?n.resolve(void 0):n.reject(a)}}))),this.done=!0,this.performNextOperation()})}cancelWrite(){this.previousTokenSource.cancel()}};var Io=class{constructor(e){this.grammarElementIdMap=new ui,this.tokenTypeIdMap=new ui,this.grammar=e.Grammar,this.lexer=e.parser.Lexer,this.linker=e.references.Linker}dehydrate(e){return{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport?this.dehydrateLexerReport(e.lexerReport):void 0,parserErrors:e.parserErrors.map(r=>er(ge({},r),{message:r.message})),value:this.dehydrateAstNode(e.value,this.createDehyrationContext(e.value))}}dehydrateLexerReport(e){return e}createDehyrationContext(e){let r=new Map,n=new Map;for(let i of St(e))r.set(i,{});if(e.$cstNode)for(let i of Bn(e.$cstNode))n.set(i,{});return{astNodes:r,cstNodes:n}}dehydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode!==void 0&&(n.$cstNode=this.dehydrateCstNode(e.$cstNode,r));for(let[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){let a=[];n[i]=a;for(let o of s)Oe(o)?a.push(this.dehydrateAstNode(o,r)):tt(o)?a.push(this.dehydrateReference(o,r)):a.push(o)}else Oe(s)?n[i]=this.dehydrateAstNode(s,r):tt(s)?n[i]=this.dehydrateReference(s,r):s!==void 0&&(n[i]=s);return n}dehydrateReference(e,r){let n={};return n.$refText=e.$refText,e.$refNode&&(n.$refNode=r.cstNodes.get(e.$refNode)),n}dehydrateCstNode(e,r){let n=r.cstNodes.get(e);return Ys(e)?n.fullText=e.fullText:n.grammarSource=this.getGrammarElementId(e.grammarSource),n.hidden=e.hidden,n.astNode=r.astNodes.get(e.astNode),rr(e)?n.content=e.content.map(i=>this.dehydrateCstNode(i,r)):rn(e)&&(n.tokenType=e.tokenType.name,n.offset=e.offset,n.length=e.length,n.startLine=e.range.start.line,n.startColumn=e.range.start.character,n.endLine=e.range.end.line,n.endColumn=e.range.end.character),n}hydrate(e){let r=e.value,n=this.createHydrationContext(r);return"$cstNode"in r&&this.hydrateCstNode(r.$cstNode,n),{lexerErrors:e.lexerErrors,lexerReport:e.lexerReport,parserErrors:e.parserErrors,value:this.hydrateAstNode(r,n)}}createHydrationContext(e){let r=new Map,n=new Map;for(let s of St(e))r.set(s,{});let i;if(e.$cstNode)for(let s of Bn(e.$cstNode)){let a;"fullText"in s?(a=new os(s.fullText),i=a):"content"in s?a=new si:"tokenType"in s&&(a=this.hydrateCstLeafNode(s)),a&&(n.set(s,a),a.root=i)}return{astNodes:r,cstNodes:n}}hydrateAstNode(e,r){let n=r.astNodes.get(e);n.$type=e.$type,n.$containerIndex=e.$containerIndex,n.$containerProperty=e.$containerProperty,e.$cstNode&&(n.$cstNode=r.cstNodes.get(e.$cstNode));for(let[i,s]of Object.entries(e))if(!i.startsWith("$"))if(Array.isArray(s)){let a=[];n[i]=a;for(let o of s)Oe(o)?a.push(this.setParent(this.hydrateAstNode(o,r),n)):tt(o)?a.push(this.hydrateReference(o,n,i,r)):a.push(o)}else Oe(s)?n[i]=this.setParent(this.hydrateAstNode(s,r),n):tt(s)?n[i]=this.hydrateReference(s,n,i,r):s!==void 0&&(n[i]=s);return n}setParent(e,r){return e.$container=r,e}hydrateReference(e,r,n,i){return this.linker.buildReference(r,n,i.cstNodes.get(e.$refNode),e.$refText)}hydrateCstNode(e,r,n=0){let i=r.cstNodes.get(e);if(typeof e.grammarSource=="number"&&(i.grammarSource=this.getGrammarElement(e.grammarSource)),i.astNode=r.astNodes.get(e.astNode),rr(i))for(let s of e.content){let a=this.hydrateCstNode(s,r,n++);i.content.push(a)}return i}hydrateCstLeafNode(e){let r=this.getTokenType(e.tokenType),n=e.offset,i=e.length,s=e.startLine,a=e.startColumn,o=e.endLine,c=e.endColumn,l=e.hidden;return new ii(n,i,{start:{line:s,character:a},end:{line:o,character:c}},r,l)}getTokenType(e){return this.lexer.definition[e]}getGrammarElementId(e){if(e)return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.get(e)}getGrammarElement(e){return this.grammarElementIdMap.size===0&&this.createGrammarElementIdMap(),this.grammarElementIdMap.getKey(e)}createGrammarElementIdMap(){let e=0;for(let r of St(this.grammar))sa(r)&&this.grammarElementIdMap.set(r,e++)}};function gh(t){return{documentation:{CommentProvider:e=>new No(e),DocumentationProvider:e=>new ko(e)},parser:{AsyncParser:e=>new Co(e),GrammarConfig:e=>af(e),LangiumParser:e=>_d(e),CompletionParser:e=>Id(e),ValueConverter:()=>new oi,TokenBuilder:()=>new Jr,Lexer:e=>new gi(e),ParserErrorMessageProvider:()=>new cs,LexerErrorMessageProvider:()=>new Ao},workspace:{AstNodeLocator:()=>new lo,AstNodeDescriptionProvider:e=>new oo(e),ReferenceDescriptionProvider:e=>new co(e)},references:{Linker:e=>new Xa(e),NameProvider:()=>new Ja,ScopeProvider:e=>new ro(e),ScopeComputation:e=>new Za(e),References:e=>new Qa(e)},serializer:{Hydrator:e=>new Io(e),JsonSerializer:e=>new no(e)},validation:{DocumentValidator:e=>new ao(e),ValidationRegistry:e=>new so(e)},shared:()=>t.shared}}function yh(t){return{ServiceRegistry:e=>new io(e),workspace:{LangiumDocuments:e=>new Ya(e),LangiumDocumentFactory:e=>new Ha(e),DocumentBuilder:e=>new xo(e),IndexManager:e=>new vo(e),WorkspaceManager:e=>new Eo(e),FileSystemProvider:e=>t.fileSystemProvider(e),WorkspaceLock:()=>new wo,ConfigurationProvider:e=>new uo(e)},profilers:{}}}var Gx=(function(t){return t.merge=(e,r)=>_o(_o({},e),r),t})(Gx||{});function eu(t,e,r,n,i,s,a,o,c){let l=[t,e,r,n,i,s,a,o,c].reduce(_o,{});return zx(l)}var Ux=Symbol("isProxy");function qx(t){if(t&&t[Ux])for(let e of Object.values(t))qx(e);return t}function zx(t,e){let r=new Proxy({},{deleteProperty:()=>!1,set:()=>{throw new Error("Cannot set property on injected service container")},get:(n,i)=>i===Ux?!0:Fx(n,i,t,e||r),getOwnPropertyDescriptor:(n,i)=>(Fx(n,i,t,e||r),Object.getOwnPropertyDescriptor(n,i)),has:(n,i)=>i in t,ownKeys:()=>[...Object.getOwnPropertyNames(t)]});return r}var Mx=Symbol();function Fx(t,e,r,n){if(e in t){if(t[e]instanceof Error)throw new Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+t[e]);if(t[e]===Mx)throw new Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return t[e]}else if(e in r){let i=r[e];t[e]=Mx;try{t[e]=typeof i=="function"?i(n):zx(i,n)}catch(s){throw t[e]=s instanceof Error?s:void 0,s}return t[e]}else return}function _o(t,e){if(e){for(let[r,n]of Object.entries(e))if(n!=null)if(typeof n=="object"){let i=t[r];typeof i=="object"&&i!==null?t[r]=_o(i,n):t[r]=_o({},n)}else t[r]=n}return t}var Th={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]},Os=(function(t){return t.REGULAR="indentation-sensitive",t.IGNORE_INDENTATION="ignore-indentation",t})(Os||{}),tu=class extends Jr{constructor(e=Th){super(),this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options=ge(ge({},Th),e),this.indentTokenType=mn({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=mn({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(e,r){let n=super.buildTokens(e,r);if(!Jl(n))throw new Error("Invalid tokens built by default builder");let{indentTokenName:i,dedentTokenName:s,whitespaceTokenName:a,ignoreIndentationDelimiters:o}=this.options,c,l,u,p=[];for(let h of n){for(let[g,C]of o)h.name===g?h.PUSH_MODE=Os.IGNORE_INDENTATION:h.name===C&&(h.POP_MODE=!0);h.name===s?c=h:h.name===i?l=h:h.name===a?u=h:p.push(h)}if(!c||!l||!u)throw new Error("Some indentation/whitespace tokens not found!");return o.length>0?{modes:{[Os.REGULAR]:[c,l,...p,u],[Os.IGNORE_INDENTATION]:[...p,u]},defaultMode:Os.REGULAR}:[c,l,u,...p]}flushLexingReport(e){let r=super.flushLexingReport(e);return er(ge({},r),{remainingDedents:this.flushRemainingDedents(e)})}isStartOfLine(e,r){return r===0||`\r -`.includes(e[r-1])}matchWhitespace(e,r,n,i){this.whitespaceRegExp.lastIndex=r;let s=this.whitespaceRegExp.exec(e);return{currIndentLevel:s?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:s}}createIndentationTokenInstance(e,r,n,i){let s=this.getLineNumber(r,i);return Kr(e,n,i,i+n.length,s,s,1,n.length)}getLineNumber(e,r){return e.substring(0,r).split(/\r\n|\r|\n/).length}indentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:s,prevIndentLevel:a,match:o}=this.matchWhitespace(e,r,n,i);return s<=a?null:(this.indentationStack.push(s),o)}dedentMatcher(e,r,n,i){if(!this.isStartOfLine(e,r))return null;let{currIndentLevel:s,prevIndentLevel:a,match:o}=this.matchWhitespace(e,r,n,i);if(s>=a)return null;let c=this.indentationStack.lastIndexOf(s);if(c===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${s} at offset: ${r}. Current indentation stack: ${this.indentationStack}`,offset:r,length:o?.[0]?.length??0,line:this.getLineNumber(e,r),column:1}),null;let l=this.indentationStack.length-c-1,u=e.substring(0,r).match(/[\r\n]+$/)?.[0].length??1;for(let p=0;p1;)r.push(this.createIndentationTokenInstance(this.dedentTokenType,e,"",e.length)),this.indentationStack.pop();return this.indentationStack=[0],r}},Rh=class extends gi{constructor(e){if(super(e),e.parser.TokenBuilder instanceof tu)this.indentationTokenBuilder=e.parser.TokenBuilder;else throw new Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(e,r=Xl){let n=super.tokenize(e),i=n.report;r?.mode==="full"&&n.tokens.push(...i.remainingDedents),i.remainingDedents=[];let{indentTokenType:s,dedentTokenType:a}=this.indentationTokenBuilder,o=s.tokenTypeIdx,c=a.tokenTypeIdx,l=[],u=n.tokens.length-1;for(let p=0;p=0&&l.push(n.tokens[u]),n.tokens=l,n}};var le={};en(le,{AstUtils:()=>Uo,BiMap:()=>ui,Cancellation:()=>W,ContextCache:()=>fi,CstUtils:()=>ac,DONE_RESULT:()=>gt,Deferred:()=>It,Disposable:()=>Cn,DisposableCache:()=>gs,DocumentCache:()=>ml,EMPTY_STREAM:()=>nn,ErrorWithLocation:()=>Vn,GrammarUtils:()=>dc,MultiMap:()=>Rt,OperationCancelled:()=>Yt,Reduction:()=>Ei,RegExpUtils:()=>lc,SimpleCache:()=>to,StreamImpl:()=>qt,TreeStreamImpl:()=>yr,URI:()=>rt,UriTrie:()=>hs,UriUtils:()=>Be,WorkspaceCache:()=>ys,assertCondition:()=>Yh,assertUnreachable:()=>Rr,delayNextTick:()=>Fd,interruptAndCheck:()=>Me,isOperationCancelled:()=>Sr,loadGrammarFromJson:()=>_r,setInterruptionPeriod:()=>Qg,startCancelableOperation:()=>pl,stream:()=>ee});ae(le,we);var ru=class{stat(e){throw new Error("No file system is available.")}statSync(e){throw new Error("No file system is available.")}exists(){return P(this,null,function*(){return!1})}existsSync(){return!1}readBinary(){throw new Error("No file system is available.")}readBinarySync(){throw new Error("No file system is available.")}readFile(){throw new Error("No file system is available.")}readFileSync(){throw new Error("No file system is available.")}readDirectory(){return P(this,null,function*(){return[]})}readDirectorySync(){return[]}},xh={fileSystemProvider:()=>new ru};var J$={Grammar:()=>{},LanguageMetaData:()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"})},Q$={AstReflection:()=>new bi};function Z$(){let t=eu(yh(xh),Q$),e=eu(gh({shared:t}),J$);return t.ServiceRegistry.register(e),e}function _r(t){let e=Z$(),r=e.serializer.JsonSerializer.deserialize(t);return e.shared.workspace.LangiumDocumentFactory.fromModel(r,rt.parse(`memory:/${r.name??"grammar"}.langium`)),r}ae(qe,le);var vh=class{constructor(e){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=e??new Set(this.allCategories),this.records=new Rt}isActive(e){return this.activeCategories.has(e)}start(...e){e?e.forEach(r=>this.activeCategories.add(r)):this.activeCategories=new Set(this.allCategories)}stop(...e){e?e.forEach(r=>this.activeCategories.delete(r)):this.activeCategories.clear()}createTask(e,r){if(!this.isActive(e))throw new Error(`Category "${e}" is not active.`);return console.log(`Creating profiling task for '${e}.${r}'.`),new nu(n=>this.records.add(e,this.dumpRecord(e,n)),r)}dumpRecord(e,r){console.info(`Task ${e}.${r.identifier} executed in ${r.duration.toFixed(2)}ms and ended at ${r.date.toISOString()}`);let n=[];for(let a of r.entries.keys()){let o=r.entries.get(a),c=o.reduce((l,u)=>l+u);n.push({name:`${r.identifier}.${a}`,count:o.length,duration:c})}let i=r.duration-n.map(a=>a.duration).reduce((a,o)=>a+o,0);n.push({name:r.identifier,count:1,duration:i}),n.sort((a,o)=>o.duration-a.duration);function s(a){return Math.round(100*a)/100}return console.table(n.map(a=>({Element:a.name,Count:a.count,"Self %":s(100*a.duration/r.duration),"Time (ms)":s(a.duration)}))),r}getRecords(...e){return e.length===0?this.records.values():this.records.entries().filter(r=>e.some(n=>n===r[0])).flatMap(r=>r[1])}},nu=class{constructor(e,r){this.stack=[],this.entries=new Rt,this.addRecord=e,this.identifier=r}start(){if(this.startTime!==void 0)throw new Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(this.startTime===void 0)throw new Error(`Task "${this.identifier}" was not started.`);if(this.stack.length!==0)throw new Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map(r=>r.id).join(", ")}.`);let e={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(e),this.startTime=void 0,this.entries.clear()}startSubTask(e){this.stack.push({id:e,start:performance.now(),content:0})}stopSubTask(e){let r=this.stack.pop();if(!r)throw new Error(`Task "${this.identifier}.${e}" was not started.`);if(r.id!==e)throw new Error(`Sub-Task "${r.id}" is not already stopped.`);let n=performance.now()-r.start;this.stack.at(-1)!==void 0&&(this.stack[this.stack.length-1].content+=n);let i=n-r.content;this.entries.add(e,i)}};var eS=Object.defineProperty,ne=(t,e)=>eS(t,"name",{value:e,configurable:!0}),Ch;(t=>{t.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[\w ]+)\]/}})(Ch||(Ch={}));var wh;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/}})(wh||(wh={}));var Ih;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Ih||(Ih={}));var _h;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(_h||(_h={}));var bh;(t=>{t.Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(bh||(bh={}));var Ph;(t=>{t.Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(Ph||(Ph={}));var Oh;(t=>{t.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/}})(Oh||(Oh={}));var FL=ge(ge(ge(ge(ge(ge(ge({},Ch.Terminals),wh.Terminals),Ih.Terminals),_h.Terminals),bh.Terminals),Ph.Terminals),Oh.Terminals),Zr={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};function tS(t){return fr.isInstance(t,Zr.$type)}ne(tS,"isArchitecture");var iu={$type:"Axis",label:"label",name:"name"},cu={$type:"Branch",name:"name",order:"order"};function rS(t){return fr.isInstance(t,cu.$type)}ne(rS,"isBranch");var jx={$type:"Checkout",branch:"branch"},su={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},Eh={$type:"ClassDefStatement",className:"className",styleText:"styleText"},Fs={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};function nS(t){return fr.isInstance(t,Fs.$type)}ne(nS,"isCommit");var au={$type:"Curve",entries:"entries",label:"label",name:"name"},Ls={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},br={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},Ah={$type:"Entry",axis:"axis",value:"value"},Ti={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};function iS(t){return fr.isInstance(t,Ti.$type)}ne(iS,"isGitGraph");var bo={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},Oo={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};function sS(t){return fr.isInstance(t,Oo.$type)}ne(sS,"isInfo");var Po={$type:"Item",classSelector:"classSelector",name:"name"},$h={$type:"Junction",id:"id",in:"in"},ou={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},Gs={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};function aS(t){return fr.isInstance(t,Gs.$type)}ne(aS,"isMerge");var Sh={$type:"Option",name:"name",value:"value"},Us={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};function oS(t){return fr.isInstance(t,Us.$type)}ne(oS,"isPacket");var qs={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};function cS(t){return fr.isInstance(t,qs.$type)}ne(cS,"isPacketBlock");var Ri={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};function lS(t){return fr.isInstance(t,Ri.$type)}ne(lS,"isPie");var lu={$type:"PieSection",label:"label",value:"value"};function uS(t){return fr.isInstance(t,lu.$type)}ne(uS,"isPieSection");var yi={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},kh={$type:"Section",classSelector:"classSelector",name:"name"},Ds={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},Ms={$type:"Statement"},zs={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};function fS(t){return fr.isInstance(t,zs.$type)}ne(fS,"isTreemap");var Nh={$type:"TreemapRow",indent:"indent",item:"item"},Jx=class extends _n{constructor(){super(...arguments),this.types={Architecture:{name:Zr.$type,properties:{accDescr:{name:Zr.accDescr},accTitle:{name:Zr.accTitle},edges:{name:Zr.edges,defaultValue:[]},groups:{name:Zr.groups,defaultValue:[]},junctions:{name:Zr.junctions,defaultValue:[]},services:{name:Zr.services,defaultValue:[]},title:{name:Zr.title}},superTypes:[]},Axis:{name:iu.$type,properties:{label:{name:iu.label},name:{name:iu.name}},superTypes:[]},Branch:{name:cu.$type,properties:{name:{name:cu.name},order:{name:cu.order}},superTypes:[Ms.$type]},Checkout:{name:jx.$type,properties:{branch:{name:jx.branch}},superTypes:[Ms.$type]},CherryPicking:{name:su.$type,properties:{id:{name:su.id},parent:{name:su.parent},tags:{name:su.tags,defaultValue:[]}},superTypes:[Ms.$type]},ClassDefStatement:{name:Eh.$type,properties:{className:{name:Eh.className},styleText:{name:Eh.styleText}},superTypes:[]},Commit:{name:Fs.$type,properties:{id:{name:Fs.id},message:{name:Fs.message},tags:{name:Fs.tags,defaultValue:[]},type:{name:Fs.type}},superTypes:[Ms.$type]},Curve:{name:au.$type,properties:{entries:{name:au.entries,defaultValue:[]},label:{name:au.label},name:{name:au.name}},superTypes:[]},Direction:{name:Ls.$type,properties:{accDescr:{name:Ls.accDescr},accTitle:{name:Ls.accTitle},dir:{name:Ls.dir},statements:{name:Ls.statements,defaultValue:[]},title:{name:Ls.title}},superTypes:[Ti.$type]},Edge:{name:br.$type,properties:{lhsDir:{name:br.lhsDir},lhsGroup:{name:br.lhsGroup,defaultValue:!1},lhsId:{name:br.lhsId},lhsInto:{name:br.lhsInto,defaultValue:!1},rhsDir:{name:br.rhsDir},rhsGroup:{name:br.rhsGroup,defaultValue:!1},rhsId:{name:br.rhsId},rhsInto:{name:br.rhsInto,defaultValue:!1},title:{name:br.title}},superTypes:[]},Entry:{name:Ah.$type,properties:{axis:{name:Ah.axis,referenceType:iu.$type},value:{name:Ah.value}},superTypes:[]},GitGraph:{name:Ti.$type,properties:{accDescr:{name:Ti.accDescr},accTitle:{name:Ti.accTitle},statements:{name:Ti.statements,defaultValue:[]},title:{name:Ti.title}},superTypes:[]},Group:{name:bo.$type,properties:{icon:{name:bo.icon},id:{name:bo.id},in:{name:bo.in},title:{name:bo.title}},superTypes:[]},Info:{name:Oo.$type,properties:{accDescr:{name:Oo.accDescr},accTitle:{name:Oo.accTitle},title:{name:Oo.title}},superTypes:[]},Item:{name:Po.$type,properties:{classSelector:{name:Po.classSelector},name:{name:Po.name}},superTypes:[]},Junction:{name:$h.$type,properties:{id:{name:$h.id},in:{name:$h.in}},superTypes:[]},Leaf:{name:ou.$type,properties:{classSelector:{name:ou.classSelector},name:{name:ou.name},value:{name:ou.value}},superTypes:[Po.$type]},Merge:{name:Gs.$type,properties:{branch:{name:Gs.branch},id:{name:Gs.id},tags:{name:Gs.tags,defaultValue:[]},type:{name:Gs.type}},superTypes:[Ms.$type]},Option:{name:Sh.$type,properties:{name:{name:Sh.name},value:{name:Sh.value,defaultValue:!1}},superTypes:[]},Packet:{name:Us.$type,properties:{accDescr:{name:Us.accDescr},accTitle:{name:Us.accTitle},blocks:{name:Us.blocks,defaultValue:[]},title:{name:Us.title}},superTypes:[]},PacketBlock:{name:qs.$type,properties:{bits:{name:qs.bits},end:{name:qs.end},label:{name:qs.label},start:{name:qs.start}},superTypes:[]},Pie:{name:Ri.$type,properties:{accDescr:{name:Ri.accDescr},accTitle:{name:Ri.accTitle},sections:{name:Ri.sections,defaultValue:[]},showData:{name:Ri.showData,defaultValue:!1},title:{name:Ri.title}},superTypes:[]},PieSection:{name:lu.$type,properties:{label:{name:lu.label},value:{name:lu.value}},superTypes:[]},Radar:{name:yi.$type,properties:{accDescr:{name:yi.accDescr},accTitle:{name:yi.accTitle},axes:{name:yi.axes,defaultValue:[]},curves:{name:yi.curves,defaultValue:[]},options:{name:yi.options,defaultValue:[]},title:{name:yi.title}},superTypes:[]},Section:{name:kh.$type,properties:{classSelector:{name:kh.classSelector},name:{name:kh.name}},superTypes:[Po.$type]},Service:{name:Ds.$type,properties:{icon:{name:Ds.icon},iconText:{name:Ds.iconText},id:{name:Ds.id},in:{name:Ds.in},title:{name:Ds.title}},superTypes:[]},Statement:{name:Ms.$type,properties:{},superTypes:[]},Treemap:{name:zs.$type,properties:{accDescr:{name:zs.accDescr},accTitle:{name:zs.accTitle},title:{name:zs.title},TreemapRows:{name:zs.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:Nh.$type,properties:{indent:{name:Nh.indent},item:{name:Nh.item}},superTypes:[]}}}static{ne(this,"MermaidAstReflection")}},fr=new Jx,Bx,dS=ne(()=>Bx??(Bx=_r(`{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@18"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'|[\\\\w ]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"ArchitectureGrammarGrammar"),Wx,pS=ne(()=>Wx??(Wx=_r(`{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}`)),"GitGraphGrammarGrammar"),Vx,hS=ne(()=>Vx??(Vx=_r(`{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"InfoGrammarGrammar"),Kx,mS=ne(()=>Kx??(Kx=_r(`{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PacketGrammarGrammar"),Hx,gS=ne(()=>Hx??(Hx=_r(`{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}`)),"PieGrammarGrammar"),Yx,yS=ne(()=>Yx??(Yx=_r(`{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|'([^'\\\\\\\\]|\\\\\\\\.)*'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}`)),"RadarGrammarGrammar"),Xx,TS=ne(()=>Xx??(Xx=_r(`{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|'[^']*'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}`)),"TreemapGrammarGrammar"),RS={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},xS={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},vS={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},ES={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},AS={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$S={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},SS={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},UL={AstReflection:ne(()=>new Jx,"AstReflection")},qL={Grammar:ne(()=>dS(),"Grammar"),LanguageMetaData:ne(()=>RS,"LanguageMetaData"),parser:{}},zL={Grammar:ne(()=>pS(),"Grammar"),LanguageMetaData:ne(()=>xS,"LanguageMetaData"),parser:{}},jL={Grammar:ne(()=>hS(),"Grammar"),LanguageMetaData:ne(()=>vS,"LanguageMetaData"),parser:{}},BL={Grammar:ne(()=>mS(),"Grammar"),LanguageMetaData:ne(()=>ES,"LanguageMetaData"),parser:{}},WL={Grammar:ne(()=>gS(),"Grammar"),LanguageMetaData:ne(()=>AS,"LanguageMetaData"),parser:{}},VL={Grammar:ne(()=>yS(),"Grammar"),LanguageMetaData:ne(()=>$S,"LanguageMetaData"),parser:{}},KL={Grammar:ne(()=>TS(),"Grammar"),LanguageMetaData:ne(()=>SS,"LanguageMetaData"),parser:{}},kS=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,NS=/accTitle[\t ]*:([^\n\r]*)/,CS=/title([\t ][^\n\r]*|)/,wS={ACC_DESCR:kS,ACC_TITLE:NS,TITLE:CS},IS=class extends oi{static{ne(this,"AbstractMermaidValueConverter")}runConverter(t,e,r){let n=this.runCommonConverter(t,e,r);return n===void 0&&(n=this.runCustomConverter(t,e,r)),n===void 0?super.runConverter(t,e,r):n}runCommonConverter(t,e,r){let n=wS[t.name];if(n===void 0)return;let i=n.exec(e);if(i!==null){if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,` -`)}}},YL=class extends IS{static{ne(this,"CommonValueConverter")}runCustomConverter(t,e,r){}},_S=class extends Jr{static{ne(this,"AbstractMermaidTokenBuilder")}constructor(t){super(),this.keywords=new Set(t)}buildKeywordTokens(t,e,r){let n=super.buildKeywordTokens(t,e,r);return n.forEach(i=>{this.keywords.has(i.name)&&i.PATTERN!==void 0&&(i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))"))}),n}},JL=class extends _S{static{ne(this,"CommonTokenBuilder")}};export{gh as a,yh as b,eu as c,xh as d,qe as e,ne as f,UL as g,qL as h,zL as i,jL as j,BL as k,WL as l,VL as m,KL as n,IS as o,YL as p,_S as q}; diff --git a/src/google/adk/cli/browser/chunk-NOA45LO2.js b/src/google/adk/cli/browser/chunk-NOA45LO2.js new file mode 100644 index 0000000000..af91a8f1f8 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-NOA45LO2.js @@ -0,0 +1 @@ +import{a as i,b as e,c as o,d as a}from"./chunk-M4CFRGUH.js";import"./chunk-B2DSW4QB.js";import"./chunk-LT3WOUUJ.js";import"./chunk-APNCZOFE.js";import"./chunk-XB6MIIOW.js";import"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import"./chunk-37QI3DOO.js";import{g as t}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";var y={parser:i,get db(){return new e},renderer:a,styles:o,init:t(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{y as diagram}; diff --git a/src/google/adk/cli/browser/chunk-NRMNZ7EH.js b/src/google/adk/cli/browser/chunk-NRMNZ7EH.js new file mode 100644 index 0000000000..41cf6294f3 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-NRMNZ7EH.js @@ -0,0 +1,62 @@ +import{a as Ut,b as Nt,d as E,e as I}from"./chunk-VWUZC4UJ.js";import{a as Yt,b as Qt}from"./chunk-3TW5HJSC.js";import{a as k}from"./chunk-PRKFGJVH.js";import{d as Ct,f as ft}from"./chunk-4V3PIBXT.js";import{F as Mt,H as et,z as Bt}from"./chunk-UKZIEWH5.js";import{$ as Xt,A as $t,E as ct,G as Tt,I as _t,J as Jt,Y as st,u as bt}from"./chunk-37QI3DOO.js";import{a as Q,g as v,i as Z}from"./chunk-JRNAXTJ7.js";import{a as rt,b as nt,j as C}from"./chunk-RMXJBC7V.js";var j=v((p,t,h)=>C(null,null,function*(){let f,c=t.useHtmlLabels||bt(st()?.htmlLabels);h?f=h:f="node default";let l=p.insert("g").attr("class",f).attr("id",t.domId||t.id),m=l.insert("g").attr("class","label").attr("style",et(t.labelStyle)),r;t.label===void 0?r="":r=typeof t.label=="string"?t.label:t.label[0];let o=!!t.icon||!!t.img,i=t.labelType==="markdown",a=yield ft(m,Tt(Mt(r),st()),{useHtmlLabels:c,width:t.width||st().flowchart?.wrappingWidth,classes:i?"markdown-node-label":"",style:t.labelStyle,addSvgBackground:o,markdown:i},st()),s=a.getBBox(),n=(t?.padding??0)/2;if(c){let e=a.children[0],y=Q(a);yield Qt(e,r),s=e.getBoundingClientRect(),y.attr("width",s.width),y.attr("height",s.height)}return c?m.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"):m.attr("transform","translate(0, "+-s.height/2+")"),t.centerLabel&&m.attr("transform","translate("+-s.width/2+", "+-s.height/2+")"),m.insert("rect",":first-child"),{shapeSvg:l,bbox:s,halfPadding:n,label:m}}),"labelHelper"),Ot=v((p,t,h)=>C(null,null,function*(){let f=h.useHtmlLabels??ct(st()),c=p.insert("g").attr("class","label").attr("style",h.labelStyle||""),l=yield ft(c,Tt(Mt(t),st()),{useHtmlLabels:f,width:h.width||st()?.flowchart?.wrappingWidth,style:h.labelStyle,addSvgBackground:!!h.icon||!!h.img}),m=l.getBBox(),r=h.padding/2;if(ct(st())){let o=l.children[0],i=Q(l);m=o.getBoundingClientRect(),i.attr("width",m.width),i.attr("height",m.height)}return f?c.attr("transform","translate("+-m.width/2+", "+-m.height/2+")"):c.attr("transform","translate(0, "+-m.height/2+")"),h.centerLabel&&c.attr("transform","translate("+-m.width/2+", "+-m.height/2+")"),c.insert("rect",":first-child"),{shapeSvg:p,bbox:m,halfPadding:r,label:c}}),"insertLabel"),T=v((p,t)=>{let h=t.node().getBBox();p.width=h.width,p.height=h.height},"updateNodeBounds"),O=v((p,t)=>(p.look==="handDrawn"?"rough-node":"node")+" "+p.cssClasses+" "+(t||""),"getNodeClasses");function z(p){let t=p.map((h,f)=>`${f===0?"M":"L"}${h.x},${h.y}`);return t.push("Z"),t.join(" ")}v(z,"createPathFromPoints");function mt(p,t,h,f,c,l){let m=[],o=h-p,i=f-t,a=o/l,s=2*Math.PI/a,n=t+i/2;for(let e=0;e<=50;e++){let y=e/50,g=p+y*o,d=n+c*Math.sin(s*(g-p));m.push({x:g,y:d})}return m}v(mt,"generateFullSineWavePoints");function At(p,t,h,f,c,l){let m=[],r=c*Math.PI/180,a=(l*Math.PI/180-r)/(f-1);for(let s=0;so.tagName==="path"),h=document.createElementNS("http://www.w3.org/2000/svg","path"),f=t.map(o=>o.getAttribute("d")).filter(o=>o!==null).join(" ");h.setAttribute("d",f);let c=t.find(o=>o.getAttribute("fill")!=="none"),l=t.find(o=>o.getAttribute("stroke")!=="none"),m=v((o,i)=>o?.getAttribute(i)??void 0,"getAttr");if(c){let o={fill:m(c,"fill"),"fill-opacity":m(c,"fill-opacity")??"1"};Object.entries(o).forEach(([i,a])=>{a&&h.setAttribute(i,a)})}if(l){let o={stroke:m(l,"stroke"),"stroke-width":m(l,"stroke-width")??"1","stroke-opacity":m(l,"stroke-opacity")??"1"};Object.entries(o).forEach(([i,a])=>{a&&h.setAttribute(i,a)})}let r=document.createElementNS("http://www.w3.org/2000/svg","g");return r.appendChild(h),r}v(Gt,"mergePaths");var Ca=v((p,t)=>{var h=p.x,f=p.y,c=t.x-h,l=t.y-f,m=p.width/2,r=p.height/2,o,i;return Math.abs(l)*m>Math.abs(c)*r?(l<0&&(r=-r),o=l===0?0:r*c/l,i=r):(c<0&&(m=-m),o=m,i=c===0?0:m*l/c),{x:h+o,y:f+i}},"intersectRect"),Dt=Ca,Ra=v((p,t,h,f=!1,c=!1)=>C(null,null,function*(){let l=t||"";typeof l=="object"&&(l=l[0]);let m=st(),r=ct(m);return yield ft(p,l,{style:h,isTitle:f,useHtmlLabels:r,markdown:!1,isNode:c,width:Number.POSITIVE_INFINITY},m)}),"createLabel"),Lt=Ra,wt=v((p,t,h,f,c)=>["M",p+c,t,"H",p+h-c,"A",c,c,0,0,1,p+h,t+c,"V",t+f-c,"A",c,c,0,0,1,p+h-c,t+f,"H",p+c,"A",c,c,0,0,1,p,t+f-c,"V",t+c,"A",c,c,0,0,1,p+c,t,"Z"].join(" "),"createRoundedRectPathD"),hs=v((p,t)=>C(null,null,function*(){Z.info("Creating subgraph rect for ",t.id,t);let h=st(),{themeVariables:f,handDrawnSeed:c}=h,{clusterBkg:l,clusterBorder:m}=f,{labelStyles:r,nodeStyles:o,borderStyles:i,backgroundStyles:a}=E(t),s=p.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.domId).attr("data-look",t.look),n=ct(h),e=s.insert("g").attr("class","cluster-label "),y;t.labelType==="markdown"?y=yield ft(e,t.label,{style:t.labelStyle,useHtmlLabels:n,isNode:!0,width:t.width}):y=yield Lt(e,t.label,t.labelStyle||"",!1,!0);let g=y.getBBox();if(ct(h)){let D=y.children[0],P=Q(y);g=D.getBoundingClientRect(),P.attr("width",g.width),P.attr("height",g.height)}let d=t.width<=g.width+t.padding?g.width+t.padding:t.width;t.width<=g.width+t.padding?t.diff=(d-t.width)/2-t.padding:t.diff=-t.padding;let u=t.height,w=t.x-d/2,x=t.y-u/2;Z.trace("Data ",t,JSON.stringify(t));let b;if(t.look==="handDrawn"){let D=k.svg(s),P=I(t,{roughness:.7,fill:l,stroke:m,fillWeight:3,seed:c}),B=D.path(wt(w,x,d,u,0),P);b=s.insert(()=>(Z.debug("Rough node insert CXC",B),B),":first-child"),b.select("path:nth-child(2)").attr("style",i.join(";")),b.select("path").attr("style",a.join(";").replace("fill","stroke"))}else b=s.insert("rect",":first-child"),b.attr("style",o).attr("rx",t.rx).attr("ry",t.ry).attr("x",w).attr("y",x).attr("width",d).attr("height",u);let{subGraphTitleTopMargin:S}=Yt(h);if(e.attr("transform",`translate(${t.x-g.width/2}, ${t.y-t.height/2+S})`),r){let D=e.select("span");D&&D.attr("style",r)}let $=b.node().getBBox();return t.offsetX=0,t.width=$.width,t.height=$.height,t.offsetY=g.height-t.padding/2,t.intersect=function(D){return Dt(t,D)},{cluster:s,labelBBox:g}}),"rect"),Aa=v((p,t)=>{let h=p.insert("g").attr("class","note-cluster").attr("id",t.domId),f=h.insert("rect",":first-child"),c=0*t.padding,l=c/2;f.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-l).attr("y",t.y-t.height/2-l).attr("width",t.width+c).attr("height",t.height+c).attr("fill","none");let m=f.node().getBBox();return t.width=m.width,t.height=m.height,t.intersect=function(r){return Dt(t,r)},{cluster:h,labelBBox:{width:0,height:0}}},"noteGroup"),Ha=v((p,t)=>C(null,null,function*(){let h=st(),{themeVariables:f,handDrawnSeed:c}=h,{altBackground:l,compositeBackground:m,compositeTitleBackground:r,nodeBorder:o}=f,i=p.insert("g").attr("class",t.cssClasses).attr("id",t.domId).attr("data-id",t.id).attr("data-look",t.look),a=i.insert("g",":first-child"),s=i.insert("g").attr("class","cluster-label"),n=i.append("rect"),e=yield Lt(s,t.label,t.labelStyle,void 0,!0),y=e.getBBox();if(ct(h)){let B=e.children[0],M=Q(e);y=B.getBoundingClientRect(),M.attr("width",y.width),M.attr("height",y.height)}let g=0*t.padding,d=g/2,u=(t.width<=y.width+t.padding?y.width+t.padding:t.width)+g;t.width<=y.width+t.padding?t.diff=(u-t.width)/2-t.padding:t.diff=-t.padding;let w=t.height+g,x=t.height+g-y.height-6,b=t.x-u/2,S=t.y-w/2;t.width=u;let $=t.y-t.height/2-d+y.height+2,D;if(t.look==="handDrawn"){let B=t.cssClasses.includes("statediagram-cluster-alt"),M=k.svg(i),_=t.rx||t.ry?M.path(wt(b,S,u,w,10),{roughness:.7,fill:r,fillStyle:"solid",stroke:o,seed:c}):M.rectangle(b,S,u,w,{seed:c});D=i.insert(()=>_,":first-child");let V=M.rectangle(b,$,u,x,{fill:B?l:m,fillStyle:B?"hachure":"solid",stroke:o,seed:c});D=i.insert(()=>_,":first-child"),n=i.insert(()=>V)}else D=a.insert("rect",":first-child"),D.attr("class","outer").attr("x",b).attr("y",S).attr("width",u).attr("height",w).attr("data-look",t.look),n.attr("class","inner").attr("x",b).attr("y",$).attr("width",u).attr("height",x);s.attr("transform",`translate(${t.x-y.width/2}, ${S+1-(ct(h)?0:3)})`);let P=D.node().getBBox();return t.height=P.height,t.offsetX=0,t.offsetY=y.height-t.padding/2,t.labelBBox=y,t.intersect=function(B){return Dt(t,B)},{cluster:i,labelBBox:y}}),"roundedWithTitle"),Ia=v((p,t)=>C(null,null,function*(){Z.info("Creating subgraph rect for ",t.id,t);let h=st(),{themeVariables:f,handDrawnSeed:c}=h,{clusterBkg:l,clusterBorder:m}=f,{labelStyles:r,nodeStyles:o,borderStyles:i,backgroundStyles:a}=E(t),s=p.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.domId).attr("data-look",t.look),n=ct(h),e=s.insert("g").attr("class","cluster-label "),y=yield ft(e,t.label,{style:t.labelStyle,useHtmlLabels:n,isNode:!0,width:t.width}),g=y.getBBox();if(ct(h)){let D=y.children[0],P=Q(y);g=D.getBoundingClientRect(),P.attr("width",g.width),P.attr("height",g.height)}let d=t.width<=g.width+t.padding?g.width+t.padding:t.width;t.width<=g.width+t.padding?t.diff=(d-t.width)/2-t.padding:t.diff=-t.padding;let u=t.height,w=t.x-d/2,x=t.y-u/2;Z.trace("Data ",t,JSON.stringify(t));let b;if(t.look==="handDrawn"){let D=k.svg(s),P=I(t,{roughness:.7,fill:l,stroke:m,fillWeight:4,seed:c}),B=D.path(wt(w,x,d,u,t.rx),P);b=s.insert(()=>(Z.debug("Rough node insert CXC",B),B),":first-child"),b.select("path:nth-child(2)").attr("style",i.join(";")),b.select("path").attr("style",a.join(";").replace("fill","stroke"))}else b=s.insert("rect",":first-child"),b.attr("style",o).attr("rx",t.rx).attr("ry",t.ry).attr("x",w).attr("y",x).attr("width",d).attr("height",u);let{subGraphTitleTopMargin:S}=Yt(h);if(e.attr("transform",`translate(${t.x-g.width/2}, ${t.y-t.height/2+S})`),r){let D=e.select("span");D&&D.attr("style",r)}let $=b.node().getBBox();return t.offsetX=0,t.width=$.width,t.height=$.height,t.offsetY=g.height-t.padding/2,t.intersect=function(D){return Dt(t,D)},{cluster:s,labelBBox:g}}),"kanbanSection"),La=v((p,t)=>{let h=st(),{themeVariables:f,handDrawnSeed:c}=h,{nodeBorder:l}=f,m=p.insert("g").attr("class",t.cssClasses).attr("id",t.domId).attr("data-look",t.look),r=m.insert("g",":first-child"),o=0*t.padding,i=t.width+o;t.diff=-t.padding;let a=t.height+o,s=t.x-i/2,n=t.y-a/2;t.width=i;let e;if(t.look==="handDrawn"){let d=k.svg(m).rectangle(s,n,i,a,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:l,seed:c});e=m.insert(()=>d,":first-child")}else{e=r.insert("rect",":first-child");let g="outer";t.look,g="divider",e.attr("class",g).attr("x",s).attr("y",n).attr("width",i).attr("height",a).attr("data-look",t.look)}let y=e.node().getBBox();return t.height=y.height,t.offsetX=0,t.offsetY=0,t.intersect=function(g){return Dt(t,g)},{cluster:m,labelBBox:{}}},"divider"),Wa=hs,Ea={rect:hs,squareRect:Wa,roundedWithTitle:Ha,noteGroup:Aa,divider:La,kanbanSection:Ia},gs=new Map,ue=v((p,t)=>C(null,null,function*(){let h=t.shape||"rect",f=yield Ea[h](p,t);return gs.set(t.id,f),f}),"insertCluster"),de=v(()=>{gs=new Map},"clear");function fs(p,t){return p.intersect(t)}v(fs,"intersectNode");var Ta=fs;function ys(p,t,h,f){var c=p.x,l=p.y,m=c-f.x,r=l-f.y,o=Math.sqrt(t*t*r*r+h*h*m*m),i=Math.abs(t*h*m/o);f.x0}v(Ft,"sameSign");var Xa=ds;function ms(p,t,h){let f=p.x,c=p.y,l=[],m=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(a){m=Math.min(m,a.x),r=Math.min(r,a.y)}):(m=Math.min(m,t.x),r=Math.min(r,t.y));let o=f-p.width/2-m,i=c-p.height/2-r;for(let a=0;a1&&l.sort(function(a,s){let n=a.x-h.x,e=a.y-h.y,y=Math.sqrt(n*n+e*e),g=s.x-h.x,d=s.y-h.y,u=Math.sqrt(g*g+d*d);return ya,":first-child");return s.attr("class","anchor").attr("style",et(r)),T(t,s),t.intersect=function(n){return Z.info("Circle intersect",t,m,n),R.circle(t,m,n)},l}v(ws,"anchor");function qt(p,t,h,f,c,l,m){let o=(p+h)/2,i=(t+f)/2,a=Math.atan2(f-t,h-p),s=(h-p)/2,n=(f-t)/2,e=s/c,y=n/l,g=Math.sqrt(e**2+y**2);if(g>1)throw new Error("The given radii are too small to create an arc between the points.");let d=Math.sqrt(1-g**2),u=o+d*l*Math.sin(a)*(m?-1:1),w=i-d*c*Math.cos(a)*(m?-1:1),x=Math.atan2((t-w)/l,(p-u)/c),S=Math.atan2((f-w)/l,(h-u)/c)-x;m&&S<0&&(S+=2*Math.PI),!m&&S>0&&(S-=2*Math.PI);let $=[];for(let D=0;D<20;D++){let P=D/19,B=x+P*S,M=u+c*Math.cos(B),_=w+l*Math.sin(B);$.push({x:M,y:_})}return $}v(qt,"generateArcPoints");function xs(p,t,h){let[f,c]=[t,h].sort((l,m)=>m-l);return c*(1-Math.sqrt(1-(p/f/2)**2))}v(xs,"calculateArcSagitta");function bs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c,r=v(B=>B+m,"calcTotalHeight"),o=v(B=>{let M=B/2;return[M/(2.5+B/50),M]},"calcEllipseRadius"),{shapeSvg:i,bbox:a}=yield j(p,t,O(t)),s=r(t?.height?t?.height:a.height),[n,e]=o(s),y=xs(s,n,e),d=(t?.width?t?.width:a.width)+l*2+y-y,u=s,{cssStyles:w}=t,x=[{x:d/2,y:-u/2},{x:-d/2,y:-u/2},...qt(-d/2,-u/2,-d/2,u/2,n,e,!1),{x:d/2,y:u/2},...qt(d/2,u/2,d/2,-u/2,n,e,!0)],b=k.svg(i),S=I(t,{});t.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let $=z(x),D=b.path($,S),P=i.insert(()=>D,":first-child");return P.attr("class","basic label-container outer-path"),w&&t.look!=="handDrawn"&&P.selectAll("path").attr("style",w),f&&t.look!=="handDrawn"&&P.selectAll("path").attr("style",f),P.attr("transform",`translate(${n/2}, 0)`),T(t,P),t.intersect=function(B){return R.polygon(t,x,B)},i})}v(bs,"bowTieRect");function ut(p,t,h,f){return p.insert("polygon",":first-child").attr("points",f.map(function(c){return c.x+","+c.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+h/2+")")}v(ut,"insertPolygonShape");var It=12;function Ss(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?28:c,m=t.look==="neo"?24:c,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.width??o.width)+(t.look==="neo"?l*2:l+It),a=(t?.height??o.height)+(t.look==="neo"?m*2:m),s=0,n=i,e=-a,y=0,g=[{x:s+It,y:e},{x:n,y:e},{x:n,y},{x:s,y},{x:s,y:e+It},{x:s+It,y:e}],d,{cssStyles:u}=t;if(t.look==="handDrawn"){let w=k.svg(r),x=I(t,{}),b=z(g),S=w.path(b,x);d=r.insert(()=>S,":first-child").attr("transform",`translate(${-i/2}, ${a/2})`),u&&d.attr("style",u)}else d=ut(r,i,a,g);return f&&d.attr("style",f),T(t,d),t.intersect=function(w){return R.polygon(t,g,w)},r})}v(Ss,"card");function $s(p,t){let{nodeStyles:h}=E(t);t.label="";let f=p.insert("g").attr("class",O(t)).attr("id",t.domId??t.id),{cssStyles:c}=t,l=Math.max(28,t.width??0),m=[{x:0,y:l/2},{x:l/2,y:0},{x:0,y:-l/2},{x:-l/2,y:0}],r=k.svg(f),o=I(t,{});t.look!=="handDrawn"&&(o.roughness=0,o.fillStyle="solid");let i=z(m),a=r.path(i,o),s=f.insert(()=>a,":first-child");return c&&t.look!=="handDrawn"&&s.selectAll("path").attr("style",c),h&&t.look!=="handDrawn"&&s.selectAll("path").attr("style",h),t.width=28,t.height=28,t.intersect=function(n){return R.polygon(t,m,n)},f}v($s,"choice");function zt(p,t,h){return C(this,null,function*(){let{labelStyles:f,nodeStyles:c}=E(t);t.labelStyle=f;let{shapeSvg:l,bbox:m,halfPadding:r}=yield j(p,t,O(t)),o=16,i=h?.padding??r,a=t.look==="neo"?m.width/2+o*2:m.width/2+i,s,{cssStyles:n}=t;if(t.look==="handDrawn"){let e=k.svg(l),y=I(t,{}),g=e.circle(0,0,a*2,y);s=l.insert(()=>g,":first-child"),s.attr("class","basic label-container").attr("style",et(n))}else s=l.insert("circle",":first-child").attr("class","basic label-container").attr("style",c).attr("r",a).attr("cx",0).attr("cy",0);return T(t,s),t.calcIntersect=function(e,y){let g=e.width/2;return R.circle(e,g,y)},t.intersect=function(e){return Z.info("Circle intersect",t,a,e),R.circle(t,a,e)},l})}v(zt,"circle");function vs(p){let t=Math.cos(Math.PI/4),h=Math.sin(Math.PI/4),f=p*2,c={x:f/2*t,y:f/2*h},l={x:-(f/2)*t,y:f/2*h},m={x:-(f/2)*t,y:-(f/2)*h},r={x:f/2*t,y:-(f/2)*h};return`M ${l.x},${l.y} L ${r.x},${r.y} + M ${c.x},${c.y} L ${m.x},${m.y}`}v(vs,"createLine");function ks(p,t){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h,t.label="";let c=p.insert("g").attr("class",O(t)).attr("id",t.domId??t.id),l=Math.max(30,t?.width??0),{cssStyles:m}=t,r=k.svg(c),o=I(t,{});t.look!=="handDrawn"&&(o.roughness=0,o.fillStyle="solid");let i=r.circle(0,0,l*2,o),a=vs(l),s=r.path(a,o),n=c.insert(()=>i,":first-child");return n.insert(()=>s),n.attr("class","outer-path"),m&&t.look!=="handDrawn"&&n.selectAll("path").attr("style",m),f&&t.look!=="handDrawn"&&n.selectAll("path").attr("style",f),T(t,n),t.intersect=function(e){return Z.info("crossedCircle intersect",t,{radius:l,point:e}),R.circle(t,l,e)},c}v(ks,"crossedCircle");function yt(p,t,h,f=100,c=0,l=180){let m=[],r=c*Math.PI/180,a=(l*Math.PI/180-r)/(f-1);for(let s=0;sS,":first-child").attr("stroke-opacity",0),$.insert(()=>x,":first-child"),$.attr("class","text"),n&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",n),f&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",f),$.attr("transform",`translate(${s}, 0)`),m.attr("transform",`translate(${-i/2+s-(l.x-(l.left??0))},${-a/2+(t.padding??0)/2-(l.y-(l.top??0))})`),T(t,$),t.intersect=function(D){return R.polygon(t,y,D)},c})}v(Ps,"curlyBraceLeft");function pt(p,t,h,f=100,c=0,l=180){let m=[],r=c*Math.PI/180,a=(l*Math.PI/180-r)/(f-1);for(let s=0;sS,":first-child").attr("stroke-opacity",0),$.insert(()=>x,":first-child"),$.attr("class","text"),n&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",n),f&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",f),$.attr("transform",`translate(${-s}, 0)`),m.attr("transform",`translate(${-i/2+(t.padding??0)/2-(l.x-(l.left??0))},${-a/2+(t.padding??0)/2-(l.y-(l.top??0))})`),T(t,$),t.intersect=function(D){return R.polygon(t,y,D)},c})}v(Ds,"curlyBraceRight");function it(p,t,h,f=100,c=0,l=180){let m=[],r=c*Math.PI/180,a=(l*Math.PI/180-r)/(f-1);for(let s=0;sB,":first-child").attr("stroke-opacity",0),M.insert(()=>b,":first-child"),M.insert(()=>D,":first-child"),M.attr("class","text"),n&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",n),f&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",f),M.attr("transform",`translate(${s-s/4}, 0)`),m.attr("transform",`translate(${-i/2+(t.padding??0)/2-(l.x-(l.left??0))},${-a/2+(t.padding??0)/2-(l.y-(l.top??0))})`),T(t,M),t.intersect=function(_){return R.polygon(t,g,_)},c})}v(Bs,"curlyBraces");function Ms(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c,r=20,o=5,{shapeSvg:i,bbox:a}=yield j(p,t,O(t)),s=Math.max(r,(a.width+l*2)*1.25,t?.width??0),n=Math.max(o,a.height+m*2,t?.height??0),e=n/2,{cssStyles:y}=t,g=k.svg(i),d=I(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let u=s,w=n,x=u-e,b=w/4,S=[{x,y:0},{x:b,y:0},{x:0,y:w/2},{x:b,y:w},{x,y:w},...At(-x,-w/2,e,50,270,90)],$=z(S),D=g.path($,d),P=i.insert(()=>D,":first-child");return P.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&P.selectChildren("path").attr("style",y),f&&t.look!=="handDrawn"&&P.selectChildren("path").attr("style",f),P.attr("transform",`translate(${-s/2}, ${-n/2})`),T(t,P),t.intersect=function(B){return R.polygon(t,S,B)},i})}v(Ms,"curvedTrapezoid");var Oa=v((p,t,h,f,c,l)=>[`M${p},${t+l}`,`a${c},${l} 0,0,0 ${h},0`,`a${c},${l} 0,0,0 ${-h},0`,`l0,${f}`,`a${c},${l} 0,0,0 ${h},0`,`l0,${-f}`].join(" "),"createCylinderPathD"),ja=v((p,t,h,f,c,l)=>[`M${p},${t+l}`,`M${p+h},${t+l}`,`a${c},${l} 0,0,0 ${-h},0`,`l0,${f}`,`a${c},${l} 0,0,0 ${h},0`,`l0,${-f}`].join(" "),"createOuterCylinderPathD"),Ga=v((p,t,h,f,c,l)=>[`M${p-h/2},${-f/2}`,`a${c},${l} 0,0,0 ${h},0`].join(" "),"createInnerCylinderPathD"),Kt=8,ts=8;function Ns(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?24:c,m=t.look==="neo"?24:c;if(t.width||t.height){let d=t.width??0;t.width=(t.width??0)-m,t.widthS,":first-child"),y=r.insert(()=>b,":first-child"),y.attr("class","basic label-container"),g&&y.attr("style",g)}else{let d=Oa(0,0,a,e,s,n);y=r.insert("path",":first-child").attr("d",d).attr("class","basic label-container outer-path").attr("style",et(g)).attr("style",f)}return y.attr("label-offset-y",n),y.attr("transform",`translate(${-a/2}, ${-(e/2+n)})`),T(t,y),i.attr("transform",`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${-(o.height/2)+(t.padding??0)/1.5-(o.y-(o.top??0))})`),t.intersect=function(d){let u=R.rect(t,d),w=u.x-(t.x??0);if(s!=0&&(Math.abs(w)<(t.width??0)/2||Math.abs(w)==(t.width??0)/2&&Math.abs(u.y-(t.y??0))>(t.height??0)/2-n)){let x=n*n*(1-w*w/(s*s));x>0&&(x=Math.sqrt(x)),x=n-x,d.y-(t.y??0)>0&&(x=-x),u.y+=x}return u},r})}v(Ns,"cylinder");function Cs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.look==="neo"?16:t.padding??0,l=t.look==="neo"?16:t.padding??0,{shapeSvg:m,bbox:r,label:o}=yield j(p,t,O(t)),i=r.width+c,a=r.height+l,s=a*.2,n=-i/2,e=-a/2-s/2,{cssStyles:y}=t,g=k.svg(m),d=I(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let u=[{x:n,y:e+s},{x:-n,y:e+s},{x:-n,y:-e},{x:n,y:-e},{x:n,y:e},{x:-n,y:e},{x:-n,y:e+s}],w=g.polygon(u.map(b=>[b.x,b.y]),d),x=m.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",y),f&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",f),o.attr("transform",`translate(${n+(t.padding??0)/2-(r.x-(r.left??0))}, ${e+s+(t.padding??0)/2-(r.y-(r.top??0))})`),T(t,x),t.intersect=function(b){return R.rect(t,b)},m})}v(Cs,"dividedRectangle");function Rs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t),c=t.look==="neo"?12:5;t.labelStyle=h;let l=t.padding??0,m=t.look==="neo"?16:l,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.width?t?.width/2:o.width/2)+(m??0),a=i-c,s,{cssStyles:n}=t;if(t.look==="handDrawn"){let e=k.svg(r),y=I(t,{roughness:.2,strokeWidth:2.5}),g=I(t,{roughness:.2,strokeWidth:1.5}),d=e.circle(0,0,i*2,y),u=e.circle(0,0,a*2,g);s=r.insert("g",":first-child"),s.attr("class",et(t.cssClasses)).attr("style",et(n)),s.node()?.appendChild(d),s.node()?.appendChild(u)}else{s=r.insert("g",":first-child");let e=s.insert("circle",":first-child"),y=s.insert("circle");s.attr("class","basic label-container").attr("style",f),e.attr("class","outer-circle").attr("style",f).attr("r",i).attr("cx",0).attr("cy",0),y.attr("class","inner-circle").attr("style",f).attr("r",a).attr("cx",0).attr("cy",0)}return T(t,s),t.intersect=function(e){return Z.info("DoubleCircle intersect",t,i,e),R.circle(t,i,e)},r})}v(Rs,"doublecircle");function As(p,t,{config:{themeVariables:h}}){let{labelStyles:f,nodeStyles:c}=E(t);t.label="",t.labelStyle=f;let l=p.insert("g").attr("class",O(t)).attr("id",t.domId??t.id),m=7,{cssStyles:r}=t,o=k.svg(l),{nodeBorder:i}=h,a=I(t,{fillStyle:"solid"});t.look!=="handDrawn"&&(a.roughness=0);let s=o.circle(0,0,m*2,a),n=l.insert(()=>s,":first-child");return n.selectAll("path").attr("style",`fill: ${i} !important;`),r&&r.length>0&&t.look!=="handDrawn"&&n.selectAll("path").attr("style",r),c&&t.look!=="handDrawn"&&n.selectAll("path").attr("style",c),T(t,n),t.intersect=function(e){return Z.info("filledCircle intersect",t,{radius:m,point:e}),R.circle(t,m,e)},l}v(As,"filledCircle");var ss=10,as=10;function Hs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?c*2:c;(t.width||t.height)&&(t.height=t?.height??0,t.heightu,":first-child").attr("transform",`translate(${-a/2}, ${a/2})`).attr("class","outer-path");return e&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",e),f&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",f),t.width=i,t.height=a,T(t,w),o.attr("transform",`translate(${-r.width/2-(r.x-(r.left??0))}, ${-a/2+(t.padding??0)/2+(r.y-(r.top??0))})`),t.intersect=function(x){return Z.info("Triangle intersect",t,n,x),R.polygon(t,n,x)},m})}v(Hs,"flippedTriangle");function Is(p,t,{dir:h,config:{state:f,themeVariables:c}}){let{nodeStyles:l}=E(t);t.label="";let m=p.insert("g").attr("class",O(t)).attr("id",t.domId??t.id),{cssStyles:r}=t,o=Math.max(70,t?.width??0),i=Math.max(10,t?.height??0);h==="LR"&&(o=Math.max(10,t?.width??0),i=Math.max(70,t?.height??0));let a=-1*o/2,s=-1*i/2,n=k.svg(m),e=I(t,{stroke:c.lineColor,fill:c.lineColor});t.look!=="handDrawn"&&(e.roughness=0,e.fillStyle="solid");let y=n.rectangle(a,s,o,i,e),g=m.insert(()=>y,":first-child");r&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",r),l&&t.look!=="handDrawn"&&g.selectAll("path").attr("style",l),T(t,g);let d=f?.padding??0;return t.width&&t.height&&(t.width+=d/2||0,t.height+=d/2||0),t.intersect=function(u){return R.rect(t,u)},m}v(Is,"forkJoin");function Ls(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=15,l=10,m=t.look==="neo"?16:t.padding??0,r=t.look==="neo"?12:t.padding??0;(t.width||t.height)&&(t.height=(t?.height??0)-r*2,t.heightw,":first-child");return x.attr("class","basic label-container outer-path"),e&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",e),f&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",f),T(t,x),t.intersect=function(b){return Z.info("Pill intersect",t,{radius:n,point:b}),R.polygon(t,d,b)},o})}v(Ls,"halfRoundedRectangle");var Fa=v((p,t,h,f,c)=>[`M${p+c},${t}`,`L${p+h-c},${t}`,`L${p+h},${t-f/2}`,`L${p+h-c},${t-f}`,`L${p+c},${t-f}`,`L${p},${t-f/2}`,"Z"].join(" "),"createHexagonPathD");function Ws(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t),c=t.look==="neo"?3.5:4;t.labelStyle=h;let l=t.padding??0,m=70,r=32,o=t.look==="neo"?m:l,i=t.look==="neo"?r:l;if(t.width||t.height){let x=(t.height??0)/c;t.width=(t?.width??0)-2*x-i,t.height=(t.height??0)-o}let{shapeSvg:a,bbox:s}=yield j(p,t,O(t)),n=(t?.height?t?.height:s.height)+o,e=n/c,y=(t?.width?t?.width:s.width)+2*e+i,g=[{x:e,y:0},{x:y-e,y:0},{x:y,y:-n/2},{x:y-e,y:-n},{x:e,y:-n},{x:0,y:-n/2}],d,{cssStyles:u}=t;if(t.look==="handDrawn"){let w=k.svg(a),x=I(t,{}),b=Fa(0,0,y,n,e),S=w.path(b,x);d=a.insert(()=>S,":first-child").attr("transform",`translate(${-y/2}, ${n/2})`),u&&d.attr("style",u)}else d=ut(a,y,n,g);return f&&d.attr("style",f),t.width=y,t.height=n,T(t,d),t.intersect=function(w){return R.polygon(t,g,w)},a})}v(Ws,"hexagon");function Es(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.label="",t.labelStyle=h;let{shapeSvg:c}=yield j(p,t,O(t)),l=Math.max(30,t?.width??0),m=Math.max(30,t?.height??0),{cssStyles:r}=t,o=k.svg(c),i=I(t,{});t.look!=="handDrawn"&&(i.roughness=0,i.fillStyle="solid");let a=[{x:0,y:0},{x:l,y:0},{x:0,y:m},{x:l,y:m}],s=z(a),n=o.path(s,i),e=c.insert(()=>n,":first-child");return e.attr("class","basic label-container outer-path"),r&&t.look!=="handDrawn"&&e.selectChildren("path").attr("style",r),f&&t.look!=="handDrawn"&&e.selectChildren("path").attr("style",f),e.attr("transform",`translate(${-l/2}, ${-m/2})`),T(t,e),t.intersect=function(y){return Z.info("Pill intersect",t,{points:a}),R.polygon(t,a,y)},c})}v(Es,"hourglass");function Ts(c,l,m){return C(this,arguments,function*(p,t,{config:{themeVariables:h,flowchart:f}}){let{labelStyles:r}=E(t);t.labelStyle=r;let o=t.assetHeight??48,i=t.assetWidth??48,a=Math.max(o,i),s=f?.wrappingWidth;t.width=Math.max(a,s??0);let{shapeSvg:n,bbox:e,label:y}=yield j(p,t,"icon-shape default"),g=t.pos==="t",d=a,u=a,{nodeBorder:w}=h,{stylesMap:x}=Nt(t),b=-u/2,S=-d/2,$=t.label?8:0,D=k.svg(n),P=I(t,{stroke:"none",fill:"none"});t.look!=="handDrawn"&&(P.roughness=0,P.fillStyle="solid");let B=D.rectangle(b,S,u,d,P),M=Math.max(u,e.width),_=d+e.height+$,V=D.rectangle(-M/2,-_/2,M,_,nt(rt({},P),{fill:"transparent",stroke:"none"})),F=n.insert(()=>B,":first-child"),L=n.insert(()=>V);if(t.icon){let W=n.append("g");W.html(`${yield Ct(t.icon,{height:a,width:a,fallbackPrefix:""})}`);let A=W.node().getBBox(),X=A.width,Y=A.height,N=A.x,H=A.y;W.attr("transform",`translate(${-X/2-N},${g?e.height/2+$/2-Y/2-H:-e.height/2-$/2-Y/2-H})`),W.attr("style",`color: ${x.get("stroke")??w};`)}return y.attr("transform",`translate(${-e.width/2-(e.x-(e.left??0))},${g?-_/2:_/2-e.height})`),F.attr("transform",`translate(0,${g?e.height/2+$/2:-e.height/2-$/2})`),T(t,L),t.intersect=function(W){if(Z.info("iconSquare intersect",t,W),!t.label)return R.rect(t,W);let A=t.x??0,X=t.y??0,Y=t.height??0,N=[];return g?N=[{x:A-e.width/2,y:X-Y/2},{x:A+e.width/2,y:X-Y/2},{x:A+e.width/2,y:X-Y/2+e.height+$},{x:A+u/2,y:X-Y/2+e.height+$},{x:A+u/2,y:X+Y/2},{x:A-u/2,y:X+Y/2},{x:A-u/2,y:X-Y/2+e.height+$},{x:A-e.width/2,y:X-Y/2+e.height+$}]:N=[{x:A-u/2,y:X-Y/2},{x:A+u/2,y:X-Y/2},{x:A+u/2,y:X-Y/2+d},{x:A+e.width/2,y:X-Y/2+d},{x:A+e.width/2/2,y:X+Y/2},{x:A-e.width/2,y:X+Y/2},{x:A-e.width/2,y:X-Y/2+d},{x:A-u/2,y:X-Y/2+d}],R.polygon(t,N,W)},n})}v(Ts,"icon");function _s(c,l,m){return C(this,arguments,function*(p,t,{config:{themeVariables:h,flowchart:f}}){let{labelStyles:r}=E(t);t.labelStyle=r;let o=t.assetHeight??48,i=t.assetWidth??48,a=Math.max(o,i),s=f?.wrappingWidth;t.width=Math.max(a,s??0);let{shapeSvg:n,bbox:e,label:y}=yield j(p,t,"icon-shape default"),g=20,d=t.label?8:0,u=t.pos==="t",{nodeBorder:w,mainBkg:x}=h,{stylesMap:b}=Nt(t),S=k.svg(n),$=I(t,{});t.look!=="handDrawn"&&($.roughness=0,$.fillStyle="solid");let D=b.get("fill");$.stroke=D??x;let P=n.append("g");t.icon&&P.html(`${yield Ct(t.icon,{height:a,width:a,fallbackPrefix:""})}`);let B=P.node().getBBox(),M=B.width,_=B.height,V=B.x,F=B.y,L=Math.max(M,_)*Math.SQRT2+g*2,W=S.circle(0,0,L,$),A=Math.max(L,e.width),X=L+e.height+d,Y=S.rectangle(-A/2,-X/2,A,X,nt(rt({},$),{fill:"transparent",stroke:"none"})),N=n.insert(()=>W,":first-child"),H=n.insert(()=>Y);return P.attr("transform",`translate(${-M/2-V},${u?e.height/2+d/2-_/2-F:-e.height/2-d/2-_/2-F})`),P.attr("style",`color: ${b.get("stroke")??w};`),y.attr("transform",`translate(${-e.width/2-(e.x-(e.left??0))},${u?-X/2:X/2-e.height})`),N.attr("transform",`translate(0,${u?e.height/2+d/2:-e.height/2-d/2})`),T(t,H),t.intersect=function(G){return Z.info("iconSquare intersect",t,G),R.rect(t,G)},n})}v(_s,"iconCircle");function Xs(c,l,m){return C(this,arguments,function*(p,t,{config:{themeVariables:h,flowchart:f}}){let{labelStyles:r}=E(t);t.labelStyle=r;let o=t.assetHeight??48,i=t.assetWidth??48,a=Math.max(o,i),s=f?.wrappingWidth;t.width=Math.max(a,s??0);let{shapeSvg:n,bbox:e,halfPadding:y,label:g}=yield j(p,t,"icon-shape default"),d=t.pos==="t",u=a+y*2,w=a+y*2,{nodeBorder:x,mainBkg:b}=h,{stylesMap:S}=Nt(t),$=-w/2,D=-u/2,P=t.label?8:0,B=k.svg(n),M=I(t,{});t.look!=="handDrawn"&&(M.roughness=0,M.fillStyle="solid");let _=S.get("fill");M.stroke=_??b;let V=B.path(wt($,D,w,u,5),M),F=Math.max(w,e.width),L=u+e.height+P,W=B.rectangle(-F/2,-L/2,F,L,nt(rt({},M),{fill:"transparent",stroke:"none"})),A=n.insert(()=>V,":first-child").attr("class","icon-shape2"),X=n.insert(()=>W);if(t.icon){let Y=n.append("g");Y.html(`${yield Ct(t.icon,{height:a,width:a,fallbackPrefix:""})}`);let N=Y.node().getBBox(),H=N.width,G=N.height,K=N.x,at=N.y;Y.attr("transform",`translate(${-H/2-K},${d?e.height/2+P/2-G/2-at:-e.height/2-P/2-G/2-at})`),Y.attr("style",`color: ${S.get("stroke")??x};`)}return g.attr("transform",`translate(${-e.width/2-(e.x-(e.left??0))},${d?-L/2:L/2-e.height})`),A.attr("transform",`translate(0,${d?e.height/2+P/2:-e.height/2-P/2})`),T(t,X),t.intersect=function(Y){if(Z.info("iconSquare intersect",t,Y),!t.label)return R.rect(t,Y);let N=t.x??0,H=t.y??0,G=t.height??0,K=[];return d?K=[{x:N-e.width/2,y:H-G/2},{x:N+e.width/2,y:H-G/2},{x:N+e.width/2,y:H-G/2+e.height+P},{x:N+w/2,y:H-G/2+e.height+P},{x:N+w/2,y:H+G/2},{x:N-w/2,y:H+G/2},{x:N-w/2,y:H-G/2+e.height+P},{x:N-e.width/2,y:H-G/2+e.height+P}]:K=[{x:N-w/2,y:H-G/2},{x:N+w/2,y:H-G/2},{x:N+w/2,y:H-G/2+u},{x:N+e.width/2,y:H-G/2+u},{x:N+e.width/2/2,y:H+G/2},{x:N-e.width/2,y:H+G/2},{x:N-e.width/2,y:H-G/2+u},{x:N-w/2,y:H-G/2+u}],R.polygon(t,K,Y)},n})}v(Xs,"iconRounded");function Ys(c,l,m){return C(this,arguments,function*(p,t,{config:{themeVariables:h,flowchart:f}}){let{labelStyles:r}=E(t);t.labelStyle=r;let o=t.assetHeight??48,i=t.assetWidth??48,a=Math.max(o,i),s=f?.wrappingWidth;t.width=Math.max(a,s??0);let{shapeSvg:n,bbox:e,halfPadding:y,label:g}=yield j(p,t,"icon-shape default"),d=t.pos==="t",u=a+y*2,w=a+y*2,{nodeBorder:x,mainBkg:b}=h,{stylesMap:S}=Nt(t),$=-w/2,D=-u/2,P=t.label?8:0,B=k.svg(n),M=I(t,{});t.look!=="handDrawn"&&(M.roughness=0,M.fillStyle="solid");let _=S.get("fill");M.stroke=_??b;let V=B.path(wt($,D,w,u,.1),M),F=Math.max(w,e.width),L=u+e.height+P,W=B.rectangle(-F/2,-L/2,F,L,nt(rt({},M),{fill:"transparent",stroke:"none"})),A=n.insert(()=>V,":first-child"),X=n.insert(()=>W);if(t.icon){let Y=n.append("g");Y.html(`${yield Ct(t.icon,{height:a,width:a,fallbackPrefix:""})}`);let N=Y.node().getBBox(),H=N.width,G=N.height,K=N.x,at=N.y;Y.attr("transform",`translate(${-H/2-K},${d?e.height/2+P/2-G/2-at:-e.height/2-P/2-G/2-at})`),Y.attr("style",`color: ${S.get("stroke")??x};`)}return g.attr("transform",`translate(${-e.width/2-(e.x-(e.left??0))},${d?-L/2:L/2-e.height})`),A.attr("transform",`translate(0,${d?e.height/2+P/2:-e.height/2-P/2})`),T(t,X),t.intersect=function(Y){if(Z.info("iconSquare intersect",t,Y),!t.label)return R.rect(t,Y);let N=t.x??0,H=t.y??0,G=t.height??0,K=[];return d?K=[{x:N-e.width/2,y:H-G/2},{x:N+e.width/2,y:H-G/2},{x:N+e.width/2,y:H-G/2+e.height+P},{x:N+w/2,y:H-G/2+e.height+P},{x:N+w/2,y:H+G/2},{x:N-w/2,y:H+G/2},{x:N-w/2,y:H-G/2+e.height+P},{x:N-e.width/2,y:H-G/2+e.height+P}]:K=[{x:N-w/2,y:H-G/2},{x:N+w/2,y:H-G/2},{x:N+w/2,y:H-G/2+u},{x:N+e.width/2,y:H-G/2+u},{x:N+e.width/2/2,y:H+G/2},{x:N-e.width/2,y:H+G/2},{x:N-e.width/2,y:H-G/2+u},{x:N-w/2,y:H-G/2+u}],R.polygon(t,K,Y)},n})}v(Ys,"iconSquare");function Os(f,c,l){return C(this,arguments,function*(p,t,{config:{flowchart:h}}){let m=new Image;m.src=t?.img??"",yield m.decode();let r=Number(m.naturalWidth.toString().replace("px","")),o=Number(m.naturalHeight.toString().replace("px",""));t.imageAspectRatio=r/o;let{labelStyles:i}=E(t);t.labelStyle=i;let a=h?.wrappingWidth;t.defaultWidth=h?.wrappingWidth;let s=Math.max(t.label?a??0:0,t?.assetWidth??r),n=t.constraint==="on"&&t?.assetHeight?t.assetHeight*t.imageAspectRatio:s,e=t.constraint==="on"?n/t.imageAspectRatio:t?.assetHeight??o;t.width=Math.max(n,a??0);let{shapeSvg:y,bbox:g,label:d}=yield j(p,t,"image-shape default"),u=t.pos==="t",w=-n/2,x=-e/2,b=t.label?8:0,S=k.svg(y),$=I(t,{});t.look!=="handDrawn"&&($.roughness=0,$.fillStyle="solid");let D=S.rectangle(w,x,n,e,$),P=Math.max(n,g.width),B=e+g.height+b,M=S.rectangle(-P/2,-B/2,P,B,nt(rt({},$),{fill:"none",stroke:"none"})),_=y.insert(()=>D,":first-child"),V=y.insert(()=>M);if(t.img){let F=y.append("image");F.attr("href",t.img),F.attr("width",n),F.attr("height",e),F.attr("preserveAspectRatio","none"),F.attr("transform",`translate(${-n/2},${u?B/2-e:-B/2})`)}return d.attr("transform",`translate(${-g.width/2-(g.x-(g.left??0))},${u?-e/2-g.height/2-b/2:e/2-g.height/2+b/2})`),_.attr("transform",`translate(0,${u?g.height/2+b/2:-g.height/2-b/2})`),T(t,V),t.intersect=function(F){if(Z.info("iconSquare intersect",t,F),!t.label)return R.rect(t,F);let L=t.x??0,W=t.y??0,A=t.height??0,X=[];return u?X=[{x:L-g.width/2,y:W-A/2},{x:L+g.width/2,y:W-A/2},{x:L+g.width/2,y:W-A/2+g.height+b},{x:L+n/2,y:W-A/2+g.height+b},{x:L+n/2,y:W+A/2},{x:L-n/2,y:W+A/2},{x:L-n/2,y:W-A/2+g.height+b},{x:L-g.width/2,y:W-A/2+g.height+b}]:X=[{x:L-n/2,y:W-A/2},{x:L+n/2,y:W-A/2},{x:L+n/2,y:W-A/2+e},{x:L+g.width/2,y:W-A/2+e},{x:L+g.width/2/2,y:W+A/2},{x:L-g.width/2,y:W+A/2},{x:L-g.width/2,y:W-A/2+e},{x:L-n/2,y:W-A/2+e}],R.polygon(t,X,F)},y})}v(Os,"imageSquare");function js(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=c,m=t.look==="neo"?c*2:c,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=Math.max(o.width+(m??0)*2,t?.width??0),a=Math.max(o.height+(l??0)*2,t?.height??0),s=[{x:0,y:0},{x:i,y:0},{x:i+3*a/6,y:-a},{x:-3*a/6,y:-a}],n,{cssStyles:e}=t;if(t.look==="handDrawn"){let y=k.svg(r),g=I(t,{}),d=z(s),u=y.path(d,g);n=r.insert(()=>u,":first-child").attr("transform",`translate(${-i/2}, ${a/2})`),e&&n.attr("style",e)}else n=ut(r,i,a,s);return f&&n.attr("style",f),t.width=i,t.height=a,T(t,n),t.intersect=function(y){return R.polygon(t,s,y)},r})}v(js,"inv_trapezoid");function Ht(p,t,h){return C(this,null,function*(){let{labelStyles:f,nodeStyles:c}=E(t);t.labelStyle=f;let{shapeSvg:l,bbox:m}=yield j(p,t,O(t)),r=Math.max(m.width+h.labelPaddingX*2,t?.width||0),o=Math.max(m.height+h.labelPaddingY*2,t?.height||0),i=-r/2,a=-o/2,s,{rx:n,ry:e}=t,{cssStyles:y}=t;if(h?.rx&&h.ry&&(n=h.rx,e=h.ry),t.look==="handDrawn"){let g=k.svg(l),d=I(t,{}),u=n||e?g.path(wt(i,a,r,o,n||0),d):g.rectangle(i,a,r,o,d);s=l.insert(()=>u,":first-child"),s.attr("class","basic label-container").attr("style",et(y))}else s=l.insert("rect",":first-child"),s.attr("class","basic label-container").attr("style",c).attr("rx",et(n)).attr("ry",et(e)).attr("x",i).attr("y",a).attr("width",r).attr("height",o);return T(t,s),t.calcIntersect=function(g,d){return R.rect(g,d)},t.intersect=function(g){return R.rect(t,g)},l})}v(Ht,"drawRect");function Gs(p,t){return C(this,null,function*(){let{shapeSvg:h,bbox:f,label:c}=yield j(p,t,"label"),l=h.insert("rect",":first-child");return l.attr("width",.1).attr("height",.1),h.attr("class","label edgeLabel"),c.attr("transform",`translate(${-(f.width/2)-(f.x-(f.left??0))}, ${-(f.height/2)-(f.y-(f.top??0))})`),T(t,l),t.intersect=function(o){return R.rect(t,o)},h})}v(Gs,"labelRect");function Fs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=c,m=t.look==="neo"?c*2:c,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.height??o.height)+l,a=(t?.width??o.width)+m,s=[{x:0,y:0},{x:a+3*i/6,y:0},{x:a,y:-i},{x:-(3*i)/6,y:-i}],n,{cssStyles:e}=t;if(t.look==="handDrawn"){let y=k.svg(r),g=I(t,{}),d=z(s),u=y.path(d,g);n=r.insert(()=>u,":first-child").attr("transform",`translate(${-a/2}, ${i/2})`),e&&n.attr("style",e)}else n=ut(r,a,i,s);return f&&n.attr("style",f),t.width=a,t.height=i,T(t,n),t.intersect=function(y){return R.polygon(t,s,y)},r})}v(Fs,"lean_left");function qs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=c,m=t.look==="neo"?c*2:c,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.height??o.height)+l,a=(t?.width??o.width)+m,s=[{x:-3*i/6,y:0},{x:a,y:0},{x:a+3*i/6,y:-i},{x:0,y:-i}],n,{cssStyles:e}=t;if(t.look==="handDrawn"){let y=k.svg(r),g=I(t,{}),d=z(s),u=y.path(d,g);n=r.insert(()=>u,":first-child").attr("transform",`translate(${-a/2}, ${i/2})`),e&&n.attr("style",e)}else n=ut(r,a,i,s);return f&&n.attr("style",f),t.width=a,t.height=i,T(t,n),t.intersect=function(y){return R.polygon(t,s,y)},r})}v(qs,"lean_right");function zs(p,t){let{labelStyles:h,nodeStyles:f}=E(t);t.label="",t.labelStyle=h;let c=p.insert("g").attr("class",O(t)).attr("id",t.domId??t.id),{cssStyles:l}=t,m=Math.max(35,t?.width??0),r=Math.max(35,t?.height??0),o=7,i=[{x:m,y:0},{x:0,y:r+o/2},{x:m-2*o,y:r+o/2},{x:0,y:2*r},{x:m,y:r-o/2},{x:2*o,y:r-o/2}],a=k.svg(c),s=I(t,{});t.look!=="handDrawn"&&(s.roughness=0,s.fillStyle="solid");let n=z(i),e=a.path(n,s),y=c.insert(()=>e,":first-child");return y.attr("class","outer-path"),l&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",l),f&&t.look!=="handDrawn"&&y.selectAll("path").attr("style",f),y.attr("transform",`translate(-${m/2},${-r})`),T(t,y),t.intersect=function(g){return Z.info("lightningBolt intersect",t,g),R.polygon(t,i,g)},c}v(zs,"lightningBolt");var qa=v((p,t,h,f,c,l,m)=>[`M${p},${t+l}`,`a${c},${l} 0,0,0 ${h},0`,`a${c},${l} 0,0,0 ${-h},0`,`l0,${f}`,`a${c},${l} 0,0,0 ${h},0`,`l0,${-f}`,`M${p},${t+l+m}`,`a${c},${l} 0,0,0 ${h},0`].join(" "),"createCylinderPathD"),za=v((p,t,h,f,c,l,m)=>[`M${p},${t+l}`,`M${p+h},${t+l}`,`a${c},${l} 0,0,0 ${-h},0`,`l0,${f}`,`a${c},${l} 0,0,0 ${h},0`,`l0,${-f}`,`M${p},${t+l+m}`,`a${c},${l} 0,0,0 ${h},0`].join(" "),"createOuterCylinderPathD"),Va=v((p,t,h,f,c,l)=>[`M${p-h/2},${-f/2}`,`a${c},${l} 0,0,0 ${h},0`].join(" "),"createInnerCylinderPathD"),es=10,is=10;function Vs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?24:c;if(t.width||t.height){let u=t.width??0;t.width=(t.width??0)-l,t.width$,":first-child").attr("class","line"),g=r.insert(()=>S,":first-child"),g.attr("class","basic label-container"),d&&g.attr("style",d)}else{let u=qa(0,0,a,e,s,n,y);g=r.insert("path",":first-child").attr("d",u).attr("class","basic label-container outer-path").attr("style",et(d)).attr("style",f)}return g.attr("label-offset-y",n),g.attr("transform",`translate(${-a/2}, ${-(e/2+n)})`),T(t,g),i.attr("transform",`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${-(o.height/2)+n-(o.y-(o.top??0))})`),t.intersect=function(u){let w=R.rect(t,u),x=w.x-(t.x??0);if(s!=0&&(Math.abs(x)<(t.width??0)/2||Math.abs(x)==(t.width??0)/2&&Math.abs(w.y-(t.y??0))>(t.height??0)/2-n)){let b=n*n*(1-x*x/(s*s));b>0&&(b=Math.sqrt(b)),b=n-b,u.y-(t.y??0)>0&&(b=-b),w.y+=b}return w},r})}v(Vs,"linedCylinder");function Zs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c;if(t.width||t.height){let b=t.width;t.width=(b??0)*10/11-l*2,t.width<10&&(t.width=10),t.height=(t?.height??0)-m*2,t.height<10&&(t.height=10)}let{shapeSvg:r,bbox:o,label:i}=yield j(p,t,O(t)),a=(t?.width?t?.width:o.width)+(l??0)*2,s=(t?.height?t?.height:o.height)+(m??0)*2,n=t.look==="neo"?s/4:s/8,e=s+n,{cssStyles:y}=t,g=k.svg(r),d=I(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let u=[{x:-a/2-a/2*.1,y:-e/2},{x:-a/2-a/2*.1,y:e/2},...mt(-a/2-a/2*.1,e/2,a/2+a/2*.1,e/2,n,.8),{x:a/2+a/2*.1,y:-e/2},{x:-a/2-a/2*.1,y:-e/2},{x:-a/2,y:-e/2},{x:-a/2,y:e/2*1.1},{x:-a/2,y:-e/2}],w=g.polygon(u.map(b=>[b.x,b.y]),d),x=r.insert(()=>w,":first-child");return x.attr("class","basic label-container outer-path"),y&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",y),f&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",f),x.attr("transform",`translate(0,${-n/2})`),i.attr("transform",`translate(${-a/2+(t.padding??0)+a/2*.1/2-(o.x-(o.left??0))},${-s/2+(t.padding??0)-n/2-(o.y-(o.top??0))})`),T(t,x),t.intersect=function(b){return R.polygon(t,u,b)},r})}v(Zs,"linedWaveEdgedRect");function Js(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c,r=t.look==="neo"?10:5;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-l*2-2*r,10),t.height=Math.max((t?.height??0)-m*2-2*r,10));let{shapeSvg:o,bbox:i,label:a}=yield j(p,t,O(t)),s=(t?.width?t?.width:i.width)+l*2+2*r,n=(t?.height?t?.height:i.height)+m*2+2*r,e=s-2*r,y=n-2*r,g=-e/2,d=-y/2,{cssStyles:u}=t,w=k.svg(o),x=I(t,{}),b=[{x:g-r,y:d+r},{x:g-r,y:d+y+r},{x:g+e-r,y:d+y+r},{x:g+e-r,y:d+y},{x:g+e,y:d+y},{x:g+e,y:d+y-r},{x:g+e+r,y:d+y-r},{x:g+e+r,y:d-r},{x:g+r,y:d-r},{x:g+r,y:d},{x:g,y:d},{x:g,y:d+r}],S=[{x:g,y:d+r},{x:g+e-r,y:d+r},{x:g+e-r,y:d+y},{x:g+e,y:d+y},{x:g+e,y:d},{x:g,y:d}];t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let $=z(b),D=w.path($,x),P=z(S),B=w.path(P,x);t.look!=="handDrawn"&&(D=Gt(D),B=Gt(B));let M=o.insert("g",":first-child");return M.insert(()=>D),M.insert(()=>B),M.attr("class","basic label-container outer-path"),u&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",u),f&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",f),a.attr("transform",`translate(${-(i.width/2)-r-(i.x-(i.left??0))}, ${-(i.height/2)+r-(i.y-(i.top??0))})`),T(t,M),t.intersect=function(_){return R.polygon(t,b,_)},o})}v(Js,"multiRect");function Qs(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let{shapeSvg:c,bbox:l,label:m}=yield j(p,t,O(t)),r=t.padding??0,o=t.look==="neo"?16:r,i=t.look==="neo"?12:r,a=!0;(t.width||t.height)&&(a=!1,t.width=(t?.width??0)-o*2,t.height=(t?.height??0)-i*3);let s=Math.max(l.width,t?.width??0)+o*2,n=Math.max(l.height,t?.height??0)+i*3,e=t.look==="neo"?n/4:n/8,y=n+(a?e/2:-e/2),g=-s/2,d=-y/2,u=10,{cssStyles:w}=t,x=mt(g-u,d+y+u,g+s-u,d+y+u,e,.8),b=x?.[x.length-1],S=[{x:g-u,y:d+u},{x:g-u,y:d+y+u},...x,{x:g+s-u,y:b.y-u},{x:g+s,y:b.y-u},{x:g+s,y:b.y-2*u},{x:g+s+u,y:b.y-2*u},{x:g+s+u,y:d-u},{x:g+u,y:d-u},{x:g+u,y:d},{x:g,y:d},{x:g,y:d+u}],$=[{x:g,y:d+u},{x:g+s-u,y:d+u},{x:g+s-u,y:b.y-u},{x:g+s,y:b.y-u},{x:g+s,y:d},{x:g,y:d}],D=k.svg(c),P=I(t,{});t.look!=="handDrawn"&&(P.roughness=0,P.fillStyle="solid");let B=z(S),M=D.path(B,P),_=z($),V=D.path(_,P),F=c.insert(()=>M,":first-child");return F.insert(()=>V),F.attr("class","basic label-container outer-path"),w&&t.look!=="handDrawn"&&F.selectAll("path").attr("style",w),f&&t.look!=="handDrawn"&&F.selectAll("path").attr("style",f),F.attr("transform",`translate(0,${-e/2})`),m.attr("transform",`translate(${-(l.width/2)-u-(l.x-(l.left??0))}, ${-(l.height/2)+u-e/2-(l.y-(l.top??0))})`),T(t,F),t.intersect=function(L){return R.polygon(t,S,L)},c})}v(Qs,"multiWaveEdgedRectangle");function Us(f,c,l){return C(this,arguments,function*(p,t,{config:{themeVariables:h}}){let{labelStyles:m,nodeStyles:r}=E(t);t.labelStyle=m,t.useHtmlLabels||ct($t())||(t.centerLabel=!0);let{shapeSvg:i,bbox:a,label:s}=yield j(p,t,O(t)),n=Math.max(a.width+(t.padding??0)*2,t?.width??0),e=Math.max(a.height+(t.padding??0)*2,t?.height??0),y=-n/2,g=-e/2,{cssStyles:d}=t,u=k.svg(i),w=I(t,{fill:h.noteBkgColor,stroke:h.noteBorderColor});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let x=u.rectangle(y,g,n,e,w),b=i.insert(()=>x,":first-child");return b.attr("class","basic label-container outer-path"),s.attr("class","label noteLabel"),d&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",d),r&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",r),s.attr("transform",`translate(${-a.width/2-(a.x-(a.left??0))}, ${-(a.height/2)-(a.y-(a.top??0))})`),T(t,b),t.intersect=function(S){return R.rect(t,S)},i})}v(Us,"note");var Za=v((p,t,h)=>[`M${p+h/2},${t}`,`L${p+h},${t-h/2}`,`L${p+h/2},${t-h}`,`L${p},${t-h/2}`,"Z"].join(" "),"createDecisionBoxPathD");function Ks(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let{shapeSvg:c,bbox:l}=yield j(p,t,O(t)),m=l.width+(t.padding??0),r=l.height+(t.padding??0),o=m+r,i=.5,a=[{x:o/2,y:0},{x:o,y:-o/2},{x:o/2,y:-o},{x:0,y:-o/2}],s,{cssStyles:n}=t;if(t.look==="handDrawn"){let e=k.svg(c),y=I(t,{}),g=Za(0,0,o),d=e.path(g,y);s=c.insert(()=>d,":first-child").attr("transform",`translate(${-o/2+i}, ${o/2})`),n&&s.attr("style",n)}else s=ut(c,o,o,a),s.attr("transform",`translate(${-o/2+i}, ${o/2})`);return f&&s.attr("style",f),T(t,s),t.calcIntersect=function(e,y){let g=e.width,d=[{x:g/2,y:0},{x:g,y:-g/2},{x:g/2,y:-g},{x:0,y:-g/2}],u=R.polygon(e,d,y);return{x:u.x-.5,y:u.y-.5}},t.intersect=function(e){return this.calcIntersect(t,e)},c})}v(Ks,"question");function ta(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?21:c??0,m=t.look==="neo"?12:c??0,{shapeSvg:r,bbox:o,label:i}=yield j(p,t,O(t)),a=(t?.width??o.width)+(t.look==="neo"?l*2:l),s=(t?.height??o.height)+(t.look==="neo"?m*2:m),n=-a/2,e=-s/2,y=e/2,g=[{x:n+y,y:e},{x:n,y:0},{x:n+y,y:-e},{x:-n,y:-e},{x:-n,y:e}],{cssStyles:d}=t,u=k.svg(r),w=I(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let x=z(g),b=u.path(x,w),S=r.insert(()=>b,":first-child");return S.attr("class","basic label-container outer-path"),d&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",d),f&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",f),S.attr("transform",`translate(${-y/2},0)`),i.attr("transform",`translate(${-y/2-o.width/2-(o.x-(o.left??0))}, ${-(o.height/2)-(o.y-(o.top??0))})`),T(t,S),t.intersect=function($){return R.polygon(t,g,$)},r})}v(ta,"rect_left_inv_arrow");function sa(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c;t.cssClasses?c="node "+t.cssClasses:c="node default";let l=p.insert("g").attr("class",c).attr("id",t.domId||t.id),m=l.insert("g"),r=l.insert("g").attr("class","label").attr("style",f),o=t.description,i=t.label,a=yield Lt(r,i,t.labelStyle,!0,!0),s={width:0,height:0};if(ct(st())){let P=a.children[0],B=Q(a);s=P.getBoundingClientRect(),B.attr("width",s.width),B.attr("height",s.height)}Z.info("Text 2",o);let n=o||[],e=a.getBBox(),y=yield Lt(r,Array.isArray(n)?n.join("
"):n,t.labelStyle,!0,!0),g=y.children[0],d=Q(y);s=g.getBoundingClientRect(),d.attr("width",s.width),d.attr("height",s.height);let u=(t.padding||0)/2;Q(y).attr("transform","translate( "+(s.width>e.width?0:(e.width-s.width)/2)+", "+(e.height+u+5)+")"),Q(a).attr("transform","translate( "+(s.width(Z.debug("Rough node insert CXC",M),_),":first-child"),$=l.insert(()=>(Z.debug("Rough node insert CXC",M),M),":first-child")}else $=m.insert("rect",":first-child"),D=m.insert("line"),$.attr("class","outer title-state").attr("style",f).attr("x",-s.width/2-u).attr("y",-s.height/2-u).attr("width",s.width+(t.padding||0)).attr("height",s.height+(t.padding||0)),D.attr("class","divider").attr("x1",-s.width/2-u).attr("x2",s.width/2+u).attr("y1",-s.height/2-u+e.height+u).attr("y2",-s.height/2-u+e.height+u);return T(t,$),t.intersect=function(P){return R.rect(t,P)},l})}v(sa,"rectWithTitle");function aa(f,c,l){return C(this,arguments,function*(p,t,{config:{themeVariables:h}}){let m=h?.radius??5,r={rx:m,ry:m,classes:"",labelPaddingX:(t?.padding??0)*1,labelPaddingY:(t?.padding??0)*1};return Ht(p,t,r)})}v(aa,"roundedRect");var St=8;function ea(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.look==="neo"?16:t.padding??0,l=t.look==="neo"?12:t.padding??0,{shapeSvg:m,bbox:r,label:o}=yield j(p,t,O(t)),i=(t?.width??r.width)+c*2+(t.look==="neo"?St:St*2),a=(t?.height??r.height)+l*2,s=i-St,n=a,e=St-i/2,y=-a/2,{cssStyles:g}=t,d=k.svg(m),u=I(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let w=[{x:e,y},{x:e+s,y},{x:e+s,y:y+n},{x:e-St,y:y+n},{x:e-St,y},{x:e,y},{x:e,y:y+n}],x=d.polygon(w.map(S=>[S.x,S.y]),u),b=m.insert(()=>x,":first-child");return b.attr("class","basic label-container outer-path").attr("style",et(g)),f&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",f),g&&t.look!=="handDrawn"&&b.selectAll("path").attr("style",f),o.attr("transform",`translate(${St/2-r.width/2-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),T(t,b),t.intersect=function(S){return R.rect(t,S)},m})}v(ea,"shadedProcess");function ia(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-l*2,10),t.height=Math.max((t?.height??0)/1.5-m*2,10));let{shapeSvg:r,bbox:o,label:i}=yield j(p,t,O(t)),a=(t?.width?t?.width:o.width)+l*2,s=((t?.height?t?.height:o.height)+m*2)*1.5,n=a,e=s/1.5,y=-n/2,g=-e/2,{cssStyles:d}=t,u=k.svg(r),w=I(t,{});t.look!=="handDrawn"&&(w.roughness=0,w.fillStyle="solid");let x=[{x:y,y:g},{x:y,y:g+e},{x:y+n,y:g+e},{x:y+n,y:g-e/2}],b=z(x),S=u.path(b,w),$=r.insert(()=>S,":first-child");return $.attr("class","basic label-container outer-path"),d&&t.look!=="handDrawn"&&$.selectChildren("path").attr("style",d),f&&t.look!=="handDrawn"&&$.selectChildren("path").attr("style",f),$.attr("transform",`translate(0, ${e/4})`),i.attr("transform",`translate(${-n/2+(t.padding??0)-(o.x-(o.left??0))}, ${-e/4+(t.padding??0)-(o.y-(o.top??0))})`),T(t,$),t.intersect=function(D){return R.polygon(t,x,D)},r})}v(ia,"slopedRect");function ra(p,t){return C(this,null,function*(){let h=t.padding??0,f=t.look==="neo"?16:h*2,c=t.look==="neo"?12:h,l={rx:0,ry:0,classes:"",labelPaddingX:t.labelPaddingX??f,labelPaddingY:c};return Ht(p,t,l)})}v(ra,"squareRect");function la(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?20:c,m=t.look==="neo"?12:c,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=o.height+(t.look==="neo"?m*2:m),a=o.width+i/4+(t.look==="neo"?l*2:l),s=i/2,{cssStyles:n}=t,e=k.svg(r),y=I(t,{});t.look!=="handDrawn"&&(y.roughness=0,y.fillStyle="solid");let g=[{x:-a/2+s,y:-i/2},{x:a/2-s,y:-i/2},...At(-a/2+s,0,s,50,90,270),{x:a/2-s,y:i/2},...At(a/2-s,0,s,50,270,450)],d=z(g),u=e.path(d,y),w=r.insert(()=>u,":first-child");return w.attr("class","basic label-container outer-path"),n&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",n),f&&t.look!=="handDrawn"&&w.selectChildren("path").attr("style",f),T(t,w),t.intersect=function(x){return R.polygon(t,g,x)},r})}v(la,"stadium");function na(p,t){return C(this,null,function*(){let h={rx:t.look==="neo"?3:5,ry:t.look==="neo"?3:5,classes:"flowchart-node"};return Ht(p,t,h)})}v(na,"state");function ca(p,t,{config:{themeVariables:h}}){let{labelStyles:f,nodeStyles:c}=E(t);t.labelStyle=f;let{cssStyles:l}=t,{lineColor:m,stateBorder:r,nodeBorder:o,nodeShadow:i}=h;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||(t.width=14),t.height||(t.height=14);let a=p.insert("g").attr("class","node default").attr("id",t.domId??t.id),s=k.svg(a),n=I(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let e=s.circle(0,0,t.width,nt(rt({},n),{stroke:m,strokeWidth:2})),y=r??o,g=(t.width??0)*5/14,d=s.circle(0,0,g,nt(rt({},n),{fill:y,stroke:y,strokeWidth:2,fillStyle:"solid"})),u=a.insert(()=>e,":first-child");if(u.insert(()=>d),t.look!=="handDrawn"&&u.attr("class","outer-path"),l&&u.selectAll("path").attr("style",l),c&&u.selectAll("path").attr("style",c),t.width<25&&i&&t.look!=="handDrawn"){let w=p.node()?.ownerSVGElement?.id??"",x=w?`${w}-drop-shadow-small`:"drop-shadow-small";u.attr("style",`filter:url(#${x})`)}return T(t,u),t.intersect=function(w){return R.circle(t,(t.width??0)/2,w)},a}v(ca,"stateEnd");function oa(p,t,{config:{themeVariables:h}}){let{lineColor:f,nodeShadow:c}=h;(t.width||t.height)&&((t.width??0)<14&&(t.width=14),(t.height??0)<14&&(t.height=14)),t.width||(t.width=14),t.height||(t.height=14);let l=p.insert("g").attr("class","node default").attr("id",t.domId||t.id),m;if(t.look==="handDrawn"){let o=k.svg(l).circle(0,0,t.width,Ut(f));m=l.insert(()=>o),m.attr("class","state-start").attr("r",(t.width??7)/2).attr("width",t.width??14).attr("height",t.height??14)}else m=l.insert("circle",":first-child"),m.attr("class","state-start").attr("r",(t.width??7)/2).attr("width",t.width??14).attr("height",t.height??14);if(t.width<25&&c&&t.look!=="handDrawn"){let r=p.node()?.ownerSVGElement?.id??"",o=r?`${r}-drop-shadow-small`:"drop-shadow-small";m.attr("style",`filter:url(#${o})`)}return T(t,m),t.intersect=function(r){return R.circle(t,(t.width??7)/2,r)},l}v(oa,"stateStart");var vt=8;function ha(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t?.padding??8,l=t.look==="neo"?28:c,m=t.look==="neo"?12:c,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.width??o.width)+2*vt+l,a=(t?.height??o.height)+m,s=i-2*vt,n=a,e=-i/2,y=-a/2,g=[{x:0,y:0},{x:s,y:0},{x:s,y:-n},{x:0,y:-n},{x:0,y:0},{x:-8,y:0},{x:s+8,y:0},{x:s+8,y:-n},{x:-8,y:-n},{x:-8,y:0}];if(t.look==="handDrawn"){let d=k.svg(r),u=I(t,{}),w=d.rectangle(e,y,s+16,n,u),x=d.line(e+vt,y,e+vt,y+n,u),b=d.line(e+vt+s,y,e+vt+s,y+n,u);r.insert(()=>x,":first-child"),r.insert(()=>b,":first-child");let S=r.insert(()=>w,":first-child"),{cssStyles:$}=t;S.attr("class","basic label-container").attr("style",et($)),T(t,S)}else{let d=ut(r,s,n,g);f&&d.attr("style",f),T(t,d)}return t.intersect=function(d){return R.polygon(t,g,d)},r})}v(ha,"subroutine");var jt=.2;function ga(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c;(t.width||t.height)&&(t.height=Math.max((t?.height??0)-m*2,10),t.width=Math.max((t?.width??0)-l*2-jt*(t.height+m*2),10));let{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.height?t?.height:o.height)+m*2,a=jt*i,s=jt*i,e=(t?.width?t?.width:o.width)+l*2+a-a,y=i,g=-e/2,d=-y/2,{cssStyles:u}=t,w=k.svg(r),x=I(t,{}),b=[{x:g-a/2,y:d},{x:g+e+a/2,y:d},{x:g+e+a/2,y:d+y},{x:g-a/2,y:d+y}],S=[{x:g+e-a/2,y:d+y},{x:g+e+a/2,y:d+y},{x:g+e+a/2,y:d+y-s}];t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let $=z(b),D=w.path($,x),P=z(S),B=w.path(P,nt(rt({},x),{fillStyle:"solid"})),M=r.insert(()=>B,":first-child");return M.insert(()=>D,":first-child"),M.attr("class","basic label-container outer-path"),u&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",u),f&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",f),T(t,M),t.intersect=function(_){return R.polygon(t,b,_)},r})}v(ga,"taggedRect");function fa(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let{shapeSvg:c,bbox:l,label:m}=yield j(p,t,O(t)),r=Math.max(l.width+(t.padding??0)*2,t?.width??0),o=Math.max(l.height+(t.padding??0)*2,t?.height??0),i=o/8,a=.2*r,s=.2*o,n=o+i,{cssStyles:e}=t,y=k.svg(c),g=I(t,{});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let d=[{x:-r/2-r/2*.1,y:n/2},...mt(-r/2-r/2*.1,n/2,r/2+r/2*.1,n/2,i,.8),{x:r/2+r/2*.1,y:-n/2},{x:-r/2-r/2*.1,y:-n/2}],u=-r/2+r/2*.1,w=-n/2-s*.4,x=[{x:u+r-a,y:(w+o)*1.3},{x:u+r,y:w+o-s},{x:u+r,y:(w+o)*.9},...mt(u+r,(w+o)*1.25,u+r-a,(w+o)*1.3,-o*.02,.5)],b=z(d),S=y.path(b,g),$=z(x),D=y.path($,nt(rt({},g),{fillStyle:"solid"})),P=c.insert(()=>D,":first-child");return P.insert(()=>S,":first-child"),P.attr("class","basic label-container outer-path"),e&&t.look!=="handDrawn"&&P.selectAll("path").attr("style",e),f&&t.look!=="handDrawn"&&P.selectAll("path").attr("style",f),P.attr("transform",`translate(0,${-i/2})`),m.attr("transform",`translate(${-r/2+(t.padding??0)-(l.x-(l.left??0))},${-o/2+(t.padding??0)-i/2-(l.y-(l.top??0))})`),T(t,P),t.intersect=function(B){return R.polygon(t,d,B)},c})}v(fa,"taggedWaveEdgedRectangle");function ya(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let{shapeSvg:c,bbox:l}=yield j(p,t,O(t)),m=Math.max(l.width+(t.padding??0),t?.width||0),r=Math.max(l.height+(t.padding??0),t?.height||0),o=-m/2,i=-r/2,a=c.insert("rect",":first-child");return a.attr("class","text").attr("style",f).attr("rx",0).attr("ry",0).attr("x",o).attr("y",i).attr("width",m).attr("height",r),T(t,a),t.intersect=function(s){return R.rect(t,s)},c})}v(ya,"text");var Ja=v((p,t,h,f,c,l)=>`M${p},${t} + a${c},${l} 0,0,1 0,${-f} + l${h},0 + a${c},${l} 0,0,1 0,${f} + M${h},${-f} + a${c},${l} 0,0,0 0,${f} + l${-h},0`,"createCylinderPathD"),Qa=v((p,t,h,f,c,l)=>[`M${p},${t}`,`M${p+h},${t}`,`a${c},${l} 0,0,0 0,${-f}`,`l${-h},0`,`a${c},${l} 0,0,0 0,${f}`,`l${h},0`].join(" "),"createOuterCylinderPathD"),Ua=v((p,t,h,f,c,l)=>[`M${p+h/2},${-f/2}`,`a${c},${l} 0,0,0 0,${f}`].join(" "),"createInnerCylinderPathD"),rs=5,ls=10;function pa(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?12:c/2;if(t.width||t.height){let g=t.height??0;t.height=(t.height??0)-l,t.heightx,":first-child"),y=m.insert(()=>w,":first-child"),y.attr("class","basic label-container"),e&&y.attr("style",e)}else{let g=Ja(0,0,n,i,s,a);y=m.insert("path",":first-child").attr("d",g).attr("class","basic label-container").attr("style",et(e)).attr("style",f),y.attr("class","basic label-container outer-path"),e&&y.selectAll("path").attr("style",e),f&&y.selectAll("path").attr("style",f)}return y.attr("label-offset-x",s),y.attr("transform",`translate(${-n/2}, ${i/2} )`),o.attr("transform",`translate(${-(r.width/2)-s-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),T(t,y),t.intersect=function(g){let d=R.rect(t,g),u=d.y-(t.y??0);if(a!=0&&(Math.abs(u)<(t.height??0)/2||Math.abs(u)==(t.height??0)/2&&Math.abs(d.x-(t.x??0))>(t.width??0)/2-s)){let w=s*s*(1-u*u/(a*a));w!=0&&(w=Math.sqrt(Math.abs(w))),w=s-w,g.x-(t.x??0)>0&&(w=-w),d.x+=w}return d},m})}v(pa,"tiltedCylinder");function ua(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=(t.look==="neo",c),m=t.look==="neo"?c*2:c,{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.height??o.height)+l,a=(t?.width??o.width)+m,s=[{x:-3*i/6,y:0},{x:a+3*i/6,y:0},{x:a,y:-i},{x:0,y:-i}],n,{cssStyles:e}=t;if(t.look==="handDrawn"){let y=k.svg(r),g=I(t,{}),d=z(s),u=y.path(d,g);n=r.insert(()=>u,":first-child").attr("transform",`translate(${-a/2}, ${i/2})`),e&&n.attr("style",e)}else n=ut(r,a,i,s);return f&&n.attr("style",f),t.width=a,t.height=i,T(t,n),t.intersect=function(y){return R.polygon(t,s,y)},r})}v(ua,"trapezoid");function da(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c,r=15,o=5;(t.width||t.height)&&(t.height=(t.height??0)-m*2,t.heightw,":first-child");return x.attr("class","basic label-container outer-path"),e&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",e),f&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",f),T(t,x),t.intersect=function(b){return R.polygon(t,d,b)},i})}v(da,"trapezoidalPentagon");var ns=10,cs=10;function ma(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?c*2:c;(t.width||t.height)&&(t.width=((t?.width??0)-l)/2,t.widthw,":first-child").attr("transform",`translate(${-s/2}, ${s/2})`).attr("class","outer-path");return y&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",y),f&&t.look!=="handDrawn"&&x.selectChildren("path").attr("style",f),t.width=a,t.height=s,T(t,x),o.attr("transform",`translate(${-r.width/2-(r.x-(r.left??0))}, ${s/2-(r.height+(t.padding??0)/(i?2:1)-(r.y-(r.top??0)))})`),t.intersect=function(b){return Z.info("Triangle intersect",t,e,b),R.polygon(t,e,b)},m})}v(ma,"triangle");function wa(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?12:c,r=!0;(t.width||t.height)&&(r=!1,t.width=(t?.width??0)-l*2,t.width<10&&(t.width=10),t.height=(t?.height??0)-m*2,t.height<10&&(t.height=10));let{shapeSvg:o,bbox:i,label:a}=yield j(p,t,O(t)),s=(t?.width?t?.width:i.width)+(l??0)*2,n=(t?.height?t?.height:i.height)+(m??0)*2,e=t.look==="neo"?n/4:n/8,y=n+(r?e:-e),{cssStyles:g}=t,u=14-s,w=u>0?u/2:0,x=k.svg(o),b=I(t,{});t.look!=="handDrawn"&&(b.roughness=0,b.fillStyle="solid");let S=[{x:-s/2-w,y:y/2},...mt(-s/2-w,y/2,s/2+w,y/2,e,.8),{x:s/2+w,y:-y/2},{x:-s/2-w,y:-y/2}],$=z(S),D=x.path($,b),P=o.insert(()=>D,":first-child");return P.attr("class","basic label-container outer-path"),g&&t.look!=="handDrawn"&&P.selectAll("path").attr("style",g),f&&t.look!=="handDrawn"&&P.selectAll("path").attr("style",f),P.attr("transform",`translate(0,${-e/2})`),a.attr("transform",`translate(${-s/2+(t.padding??0)-(i.x-(i.left??0))},${-n/2+(t.padding??0)-e-(i.y-(i.top??0))})`),T(t,P),t.intersect=function(B){return R.polygon(t,S,B)},o})}v(wa,"waveEdgedRectangle");function xa(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.padding??0,l=t.look==="neo"?16:c,m=t.look==="neo"?20:c;if(t.width||t.height){t.width=t?.width??0,t.width<20&&(t.width=20),t.height=t?.height??0,t.height<10&&(t.height=10);let b=Math.min(t.height*.2,t.height/4);t.height=Math.ceil(t.height-m-b*(20/9)),t.width=t.width-l*2}let{shapeSvg:r,bbox:o}=yield j(p,t,O(t)),i=(t?.width?t?.width:o.width)+l*2,a=(t?.height?t?.height:o.height)+m,s=a/8,n=a+s*2,{cssStyles:e}=t,y=k.svg(r),g=I(t,{});t.look!=="handDrawn"&&(g.roughness=0,g.fillStyle="solid");let d=[{x:-i/2,y:n/2},...mt(-i/2,n/2,i/2,n/2,s,1),{x:i/2,y:-n/2},...mt(i/2,-n/2,-i/2,-n/2,s,-1)],u=z(d),w=y.path(u,g),x=r.insert(()=>w,":first-child");return x.attr("class","basic label-container"),e&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",e),f&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",f),T(t,x),t.intersect=function(b){return R.polygon(t,d,b)},r})}v(xa,"waveRectangle");var U=10;function ba(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t.look==="neo"?16:t.padding??0,l=t.look==="neo"?12:t.padding??0;(t.width||t.height)&&(t.width=Math.max((t?.width??0)-c*2-U,10),t.height=Math.max((t?.height??0)-l*2-U,10));let{shapeSvg:m,bbox:r,label:o}=yield j(p,t,O(t)),i=(t?.width?t?.width:r.width)+c*2+U,a=(t?.height?t?.height:r.height)+l*2+U,s=i-U,n=a-U,e=-s/2,y=-n/2,{cssStyles:g}=t,d=k.svg(m),u=I(t,{}),w=[{x:e-U,y:y-U},{x:e-U,y:y+n},{x:e+s,y:y+n},{x:e+s,y:y-U}],x=`M${e-U},${y-U} L${e+s},${y-U} L${e+s},${y+n} L${e-U},${y+n} L${e-U},${y-U} + M${e-U},${y} L${e+s},${y} + M${e},${y-U} L${e},${y+n}`;t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let b=d.path(x,u),S=m.insert(()=>b,":first-child");return S.attr("transform",`translate(${U/2}, ${U/2})`),S.attr("class","basic label-container outer-path"),g&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",g),f&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",f),o.attr("transform",`translate(${-(r.width/2)+U/2-(r.x-(r.left??0))}, ${-(r.height/2)+U/2-(r.y-(r.top??0))})`),T(t,S),t.intersect=function($){return R.polygon(t,w,$)},m})}v(ba,"windowPane");var os=new Set(["redux-color","redux-dark-color"]),Ka=new Set(["redux","redux-dark","redux-color","redux-dark-color"]);function Vt(p,t){return C(this,null,function*(){let h=t;h.alias&&(t.label=h.alias);let{theme:f,themeVariables:c}=$t(),{rowEven:l,rowOdd:m,nodeBorder:r,borderColorArray:o}=c;if(t.look==="handDrawn"){let{themeVariables:q}=$t(),{background:J}=q,tt=nt(rt({},t),{id:t.id+"-background",domId:(t.domId||t.id)+"-background",look:"default",cssStyles:["stroke: none",`fill: ${J}`]});yield Vt(p,tt)}let i=$t();t.useHtmlLabels=i.htmlLabels;let a=i.er?.diagramPadding??10,s=i.er?.entityPadding??6,{cssStyles:n}=t,{labelStyles:e,nodeStyles:y}=E(t);if(h.attributes.length===0&&t.label){let q={rx:0,ry:0,labelPaddingX:a,labelPaddingY:a*1.5,classes:""};Bt(t.label,i)+q.labelPaddingX*20){let q=u.width+a*2-(S+$+D+P);S+=q/_,$+=q/_,D>0&&(D+=q/_),P>0&&(P+=q/_)}let F=S+$+D+P,L=k.svg(d),W=I(t,{});t.look!=="handDrawn"&&(W.roughness=0,W.fillStyle="solid");let A=0;b.length>0&&(A=b.reduce((q,J)=>q+(J?.rowHeight??0),0));let X=Math.max(V.width+a*2,t?.width||0,F),Y=Math.max((A??0)+u.height,t?.height||0),N=-X/2,H=-Y/2;if(d.selectAll("g:not(:first-child)").each((q,J,tt)=>{let lt=Q(tt[J]),xt=lt.attr("transform"),dt=0,Zt=0;if(xt){let Et=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(xt);Et&&(dt=parseFloat(Et[1]),Zt=parseFloat(Et[2]),lt.attr("class").includes("attribute-name")?dt+=S:lt.attr("class").includes("attribute-keys")?dt+=S+$:lt.attr("class").includes("attribute-comment")&&(dt+=S+$+D))}lt.attr("transform",`translate(${N+a/2+dt}, ${Zt+H+u.height+s/2})`)}),d.select(".name").attr("transform","translate("+-u.width/2+", "+(H+s/2)+")"),f!=null&&os.has(f)){let q=h.colorIndex??0;d.attr("data-color-id",`color-${q%o.length}`)}let G=L.rectangle(N,H,X,Y,W),K=d.insert(()=>G,":first-child").attr("class","outer-path").attr("style",n.join(""));x.push(0);for(let[q,J]of b.entries()){let lt=(q+1)%2===0&&J.yOffset!==0,xt=L.rectangle(N,u.height+H+J?.yOffset,X,J?.rowHeight,nt(rt({},W),{fill:lt?l:m,stroke:r}));d.insert(()=>xt,"g.label").attr("style",n.join("")).attr("class",`row-rect-${lt?"even":"odd"}`)}let at=1e-4,ot=Pt(N,u.height+H,X+N,u.height+H,at),gt=L.polygon(ot.map(q=>[q.x,q.y]),W);if(d.insert(()=>gt).attr("class","divider"),ot=Pt(S+N,u.height+H,S+N,Y+H,at),gt=L.polygon(ot.map(q=>[q.x,q.y]),W),d.insert(()=>gt).attr("class","divider"),B){let q=S+$+N;ot=Pt(q,u.height+H,q,Y+H,at),gt=L.polygon(ot.map(J=>[J.x,J.y]),W),d.insert(()=>gt).attr("class","divider")}if(M){let q=S+$+D+N;ot=Pt(q,u.height+H,q,Y+H,at),gt=L.polygon(ot.map(J=>[J.x,J.y]),W),d.insert(()=>gt).attr("class","divider")}for(let q of x){let J=u.height+H+q;ot=Pt(N,J,X+N,J,at),gt=L.polygon(ot.map(tt=>[tt.x,tt.y]),W),d.insert(()=>gt).attr("class","divider")}if(T(t,K),y&&t.look!=="handDrawn")if(f!=null&&Ka.has(f))d.selectAll("path").attr("style",y);else{let J=y.split(";")?.filter(tt=>tt.includes("stroke"))?.map(tt=>`${tt}`).join("; ");d.selectAll("path").attr("style",J??""),d.selectAll(".row-rect-even path").attr("style",y)}return t.intersect=function(q){return R.rect(t,q)},d})}v(Vt,"erBox");function kt(r,o,i){return C(this,arguments,function*(p,t,h,f=0,c=0,l=[],m=""){let a=p.insert("g").attr("class",`label ${l.join(" ")}`).attr("transform",`translate(${f}, ${c})`).attr("style",m);t!==_t(t)&&(t=_t(t),t=t.replaceAll("<","<").replaceAll(">",">"));let s=a.node().appendChild(yield ft(a,t,{width:Bt(t,h)+100,style:m,useHtmlLabels:h.htmlLabels},h));if(t.includes("<")||t.includes(">")){let e=s.children[0];for(e.textContent=e.textContent.replaceAll("<","<").replaceAll(">",">");e.childNodes[0];)e=e.childNodes[0],e.textContent=e.textContent.replaceAll("<","<").replaceAll(">",">")}let n=s.getBBox();if(bt(h.htmlLabels)){let e=s.children[0];e.style.textAlign="start";let y=Q(s);n=e.getBoundingClientRect(),y.attr("width",n.width),y.attr("height",n.height)}return n})}v(kt,"addText");function Pt(p,t,h,f,c){return p===h?[{x:p-c/2,y:t},{x:p+c/2,y:t},{x:h+c/2,y:f},{x:h-c/2,y:f}]:[{x:p,y:t-c/2},{x:p,y:t+c/2},{x:h,y:f+c/2},{x:h,y:f-c/2}]}v(Pt,"lineToPolygon");function Sa(l,m,r,o){return C(this,arguments,function*(p,t,h,f,c=h.class.padding??12){let i=f?0:3,a=p.insert("g").attr("class",O(t)).attr("id",t.domId||t.id),s=null,n=null,e=null,y=null,g=0,d=0,u=0;if(s=a.insert("g").attr("class","annotation-group text"),t.annotations.length>0){let $=t.annotations[0];yield Rt(s,{text:`\xAB${$}\xBB`},0),g=s.node().getBBox().height}n=a.insert("g").attr("class","label-group text"),yield Rt(n,t,0,["font-weight: bolder"]);let w=n.node().getBBox();d=w.height,e=a.insert("g").attr("class","members-group text");let x=0;for(let $ of t.members){let D=yield Rt(e,$,x,[$.parseClassifier()]);x+=D+i}u=e.node().getBBox().height,u<=0&&(u=c/2),y=a.insert("g").attr("class","methods-group text");let b=0;for(let $ of t.methods){let D=yield Rt(y,$,b,[$.parseClassifier()]);b+=D+i}let S=a.node().getBBox();if(s!==null){let $=s.node().getBBox();s.attr("transform",`translate(${-$.width/2})`)}return n.attr("transform",`translate(${-w.width/2}, ${g})`),S=a.node().getBBox(),e.attr("transform",`translate(0, ${g+d+c*2})`),S=a.node().getBBox(),y.attr("transform",`translate(0, ${g+d+(u?u+c*4:c*2)})`),S=a.node().getBBox(),{shapeSvg:a,bbox:S}})}v(Sa,"textHelper");function Rt(c,l,m){return C(this,arguments,function*(p,t,h,f=[]){let r=p.insert("g").attr("class","label").attr("style",f.join("; ")),o=$t(),i="useHtmlLabels"in t?t.useHtmlLabels:bt(o.htmlLabels)??!0,a="";"text"in t?a=t.text:a=t.label,!i&&a.startsWith("\\")&&(a=a.substring(1)),Jt(a)&&(i=!0);let s=yield ft(r,Xt(Mt(a)),{width:Bt(a,o)+50,classes:"markdown-node-label",useHtmlLabels:i},o),n,e=1;if(i){let y=s.children[0],g=Q(s);e=y.innerHTML.split("
").length,y.innerHTML.includes("")&&(e+=y.innerHTML.split("").length-1);let d=y.getElementsByTagName("img");if(d){let u=a.replace(/]*>/g,"").trim()==="";yield Promise.all([...d].map(w=>new Promise(x=>{function b(){if(w.style.display="flex",w.style.flexDirection="column",u){let S=o.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,D=parseInt(S,10)*5+"px";w.style.minWidth=D,w.style.maxWidth=D}else w.style.width="100%";x(w)}v(b,"setupImage"),setTimeout(()=>{w.complete&&b()}),w.addEventListener("error",b),w.addEventListener("load",b)})))}n=y.getBoundingClientRect(),g.attr("width",n.width),g.attr("height",n.height)}else{f.includes("font-weight: bolder")&&Q(s).selectAll("tspan").attr("font-weight",""),e=s.children.length;let y=s.children[0];(s.textContent===""||s.textContent.includes(">"))&&(y.textContent=a[0]+a.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),a[1]===" "&&(y.textContent=y.textContent[0]+" "+y.textContent.substring(1))),y.textContent==="undefined"&&(y.textContent=""),n=s.getBBox()}return r.attr("transform","translate(0,"+(-n.height/(2*e)+h)+")"),n.height})}v(Rt,"addText");function $a(p,t){return C(this,null,function*(){let h=st(),{themeVariables:f}=h,{useGradient:c}=f,l=h.class.padding??12,m=l,r=t.useHtmlLabels??bt(h.htmlLabels)??!0,o=t;o.annotations=o.annotations??[],o.members=o.members??[],o.methods=o.methods??[];let{shapeSvg:i,bbox:a}=yield Sa(p,t,h,r,m),{labelStyles:s,nodeStyles:n}=E(t);t.labelStyle=s,t.cssStyles=o.styles||"";let e=o.styles?.join(";")||n||"";t.cssStyles||(t.cssStyles=e.replaceAll("!important","").split(";"));let y=o.members.length===0&&o.methods.length===0&&!h.class?.hideEmptyMembersBox,g=k.svg(i),d=I(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let u=Math.max(t.width??0,a.width),w=Math.max(t.height??0,a.height),x=(t.height??0)>a.height;o.members.length===0&&o.methods.length===0?w+=m:o.members.length>0&&o.methods.length===0&&(w+=m*2);let b=-u/2,S=-w/2,$=y?l*2:o.members.length===0&&o.methods.length===0?-l:0;x&&($=l*2);let D=g.rectangle(b-l,S-l-(y?l:o.members.length===0&&o.methods.length===0?-l/2:0),u+2*l,w+2*l+$,d),P=i.insert(()=>D,":first-child");P.attr("class","basic label-container outer-path");let B=P.node().getBBox(),M=i.select(".annotation-group").node().getBBox().height-(y?l/2:0)||0,_=i.select(".label-group").node().getBBox().height-(y?l/2:0)||0,V=i.select(".members-group").node().getBBox().height-(y?l/2:0)||0,F=(M+_+S+l-(S-l-(y?l:o.members.length===0&&o.methods.length===0?-l/2:0)))/2;if(i.selectAll(".text").each((L,W,A)=>{let X=Q(A[W]),Y=X.attr("transform"),N=0;if(Y){let at=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(Y);at&&(N=parseFloat(at[2]))}let H=N+S+l-(y?l:o.members.length===0&&o.methods.length===0?-l/2:0);if(X.attr("class").includes("methods-group")){let K=Math.max(V,m/2);x?H=Math.max(F,M+_+K+S+m*2+l)+m*2:H=M+_+K+S+m*4+l}o.members.length===0&&o.methods.length===0&&h.class?.hideEmptyMembersBox&&(o.annotations.length>0?H=N-m:H=N),r||(H-=4);let G=b;(X.attr("class").includes("label-group")||X.attr("class").includes("annotation-group"))&&(G=-X.node()?.getBBox().width/2||0,i.selectAll("text").each(function(K,at,ot){window.getComputedStyle(ot[at]).textAnchor==="middle"&&(G=0)})),X.attr("transform",`translate(${G}, ${H})`)}),o.members.length>0||o.methods.length>0||y){let L=M+_+S+l,W=g.line(B.x,L,B.x+B.width,L+.001,d);i.insert(()=>W).attr("class",`divider${t.look==="neo"&&!c?" neo-line":""}`).attr("style",e)}if(y||o.members.length>0||o.methods.length>0){let L=M+_+V+S+m*2+l,W=g.line(B.x,x?Math.max(F,L):L,B.x+B.width,(x?Math.max(F,L):L)+.001,d);i.insert(()=>W).attr("class",`divider${t.look==="neo"&&!c?" neo-line":""}`).attr("style",e)}if(o.look!=="handDrawn"&&i.selectAll("path").attr("style",e),P.select(":nth-child(2)").attr("style",e),i.selectAll(".divider").select("path").attr("style",e),t.labelStyle?i.selectAll("span").attr("style",t.labelStyle):i.selectAll("span").attr("style",e),!r){let L=RegExp(/color\s*:\s*([^;]*)/),W=L.exec(e);if(W){let A=W[0].replace("color","fill");i.selectAll("tspan").attr("style",A)}else if(s){let A=L.exec(s);if(A){let X=A[0].replace("color","fill");i.selectAll("tspan").attr("style",X)}}}return T(t,P),t.intersect=function(L){return R.rect(t,L)},i})}v($a,"classBox");function va(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let c=t,l=t,m=20,r=20,o="verifyMethod"in t,i=O(t),{themeVariables:a}=st(),{borderColorArray:s,requirementEdgeLabelBackground:n}=a,e=p.insert("g").attr("class",i).attr("id",t.domId??t.id),y;o?y=yield ht(e,`<<${c.type}>>`,0,t.labelStyle):y=yield ht(e,"<<Element>>",0,t.labelStyle);let g=y,d=yield ht(e,c.name,g,t.labelStyle+"; font-weight: bold;");if(g+=d+r,o){let B=yield ht(e,`${c.requirementId?`ID: ${c.requirementId}`:""}`,g,t.labelStyle);g+=B;let M=yield ht(e,`${c.text?`Text: ${c.text}`:""}`,g,t.labelStyle);g+=M;let _=yield ht(e,`${c.risk?`Risk: ${c.risk}`:""}`,g,t.labelStyle);g+=_,yield ht(e,`${c.verifyMethod?`Verification: ${c.verifyMethod}`:""}`,g,t.labelStyle)}else{let B=yield ht(e,`${l.type?`Type: ${l.type}`:""}`,g,t.labelStyle);g+=B,yield ht(e,`${l.docRef?`Doc Ref: ${l.docRef}`:""}`,g,t.labelStyle)}let u=(e.node()?.getBBox().width??200)+m,w=(e.node()?.getBBox().height??200)+m,x=-u/2,b=-w/2,S=k.svg(e),$=I(t,{});t.look!=="handDrawn"&&($.roughness=0,$.fillStyle="solid");let D=S.rectangle(x,b,u,w,$),P=e.insert(()=>D,":first-child");if(P.attr("class","basic label-container outer-path").attr("style",f),s?.length){let B=t.colorIndex??0;e.attr("data-color-id",`color-${B%s.length}`)}if(e.selectAll(".label").each((B,M,_)=>{let V=Q(_[M]),F=V.attr("transform"),L=0,W=0;if(F){let N=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(F);N&&(L=parseFloat(N[1]),W=parseFloat(N[2]))}let A=W-w/2,X=x+m/2;(M===0||M===1)&&(X=L),V.attr("transform",`translate(${X}, ${A+m})`)}),g>y+d+r){let B=b+y+d+r,M;if(t.look==="neo"){let F=[[x,B],[x+u,B],[x+u,B+.001],[x,B+.001]];M=S.polygon(F,$)}else M=S.line(x,B,x+u,B,$);e.insert(()=>M).attr("class","divider")}return T(t,P),t.intersect=function(B){return R.rect(t,B)},f&&t.look!=="handDrawn"&&(n||s?.length)&&e.selectAll("path").attr("style",f),e})}v(va,"requirementBox");function ht(p,t,h,f=""){return C(this,null,function*(){if(t==="")return 0;let c=p.insert("g").attr("class","label").attr("style",f),l=st(),m=l.htmlLabels??!0,r=yield ft(c,Xt(Mt(t)),{width:Bt(t,l)+50,classes:"markdown-node-label",useHtmlLabels:m,style:f},l),o;if(m){let i=r.children[0],a=Q(r);o=i.getBoundingClientRect(),a.attr("width",o.width),a.attr("height",o.height)}else{let i=r.children[0];for(let a of i.children)f&&a.setAttribute("style",f);o=r.getBBox(),o.height+=6}return c.attr("transform",`translate(${-o.width/2},${-o.height/2+h})`),o.height})}v(ht,"addText");var te=v(p=>{switch(p){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");function ka(f,c,l){return C(this,arguments,function*(p,t,{config:h}){let{labelStyles:m,nodeStyles:r}=E(t);t.labelStyle=m||"";let o=10,i=t.width;t.width=(t.width??200)-10;let{shapeSvg:a,bbox:s,label:n}=yield j(p,t,O(t)),e=t.padding||10,y="",g;"ticket"in t&&t.ticket&&h?.kanban?.ticketBaseUrl&&(y=h?.kanban?.ticketBaseUrl.replace("#TICKET#",t.ticket),g=a.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",y).attr("target","_blank"));let d={useHtmlLabels:t.useHtmlLabels,labelStyle:t.labelStyle||"",width:t.width,img:t.img,padding:t.padding||8,centerLabel:!1},u,w;g?{label:u,bbox:w}=yield Ot(g,"ticket"in t&&t.ticket||"",d):{label:u,bbox:w}=yield Ot(a,"ticket"in t&&t.ticket||"",d);let{label:x,bbox:b}=yield Ot(a,"assigned"in t&&t.assigned||"",d);t.width=i;let S=10,$=t?.width||0,D=Math.max(w.height,b.height)/2,P=Math.max(s.height+S*2,t?.height||0)+D,B=-$/2,M=-P/2;n.attr("transform","translate("+(e-$/2)+", "+(-D-s.height/2)+")"),u.attr("transform","translate("+(e-$/2)+", "+(-D+s.height/2)+")"),x.attr("transform","translate("+(e+$/2-b.width-2*o)+", "+(-D+s.height/2)+")");let _,{rx:V,ry:F}=t,{cssStyles:L}=t;if(t.look==="handDrawn"){let W=k.svg(a),A=I(t,{}),X=V||F?W.path(wt(B,M,$,P,V||0),A):W.rectangle(B,M,$,P,A);_=a.insert(()=>X,":first-child"),_.attr("class","basic label-container").attr("style",L||null)}else{_=a.insert("rect",":first-child"),_.attr("class","basic label-container __APA__").attr("style",r).attr("rx",V??5).attr("ry",F??5).attr("x",B).attr("y",M).attr("width",$).attr("height",P);let W="priority"in t&&t.priority;if(W){let A=a.append("line"),X=B+2,Y=M+Math.floor((V??0)/2),N=M+P-Math.floor((V??0)/2);A.attr("x1",X).attr("y1",Y).attr("x2",X).attr("y2",N).attr("stroke-width","4").attr("stroke",te(W))}}return T(t,_),t.height=P,t.intersect=function(W){return R.rect(t,W)},a})}v(ka,"kanbanItem");function Pa(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let{shapeSvg:c,bbox:l,halfPadding:m,label:r}=yield j(p,t,O(t)),o=l.width+10*m,i=l.height+8*m,a=.15*o,{cssStyles:s}=t,n=l.width+20,e=l.height+20,y=Math.max(o,n),g=Math.max(i,e);r.attr("transform",`translate(${-l.width/2}, ${-l.height/2})`);let d,u=`M0 0 + a${a},${a} 1 0,0 ${y*.25},${-1*g*.1} + a${a},${a} 1 0,0 ${y*.25},0 + a${a},${a} 1 0,0 ${y*.25},0 + a${a},${a} 1 0,0 ${y*.25},${g*.1} + + a${a},${a} 1 0,0 ${y*.15},${g*.33} + a${a*.8},${a*.8} 1 0,0 0,${g*.34} + a${a},${a} 1 0,0 ${-1*y*.15},${g*.33} + + a${a},${a} 1 0,0 ${-1*y*.25},${g*.15} + a${a},${a} 1 0,0 ${-1*y*.25},0 + a${a},${a} 1 0,0 ${-1*y*.25},0 + a${a},${a} 1 0,0 ${-1*y*.25},${-1*g*.15} + + a${a},${a} 1 0,0 ${-1*y*.1},${-1*g*.33} + a${a*.8},${a*.8} 1 0,0 0,${-1*g*.34} + a${a},${a} 1 0,0 ${y*.1},${-1*g*.33} + H0 V0 Z`;if(t.look==="handDrawn"){let w=k.svg(c),x=I(t,{}),b=w.path(u,x);d=c.insert(()=>b,":first-child"),d.attr("class","basic label-container").attr("style",et(s))}else d=c.insert("path",":first-child").attr("class","basic label-container").attr("style",f).attr("d",u);return d.attr("transform",`translate(${-y/2}, ${-g/2})`),T(t,d),t.calcIntersect=function(w,x){return R.rect(w,x)},t.intersect=function(w){return Z.info("Bang intersect",t,w),R.rect(t,w)},c})}v(Pa,"bang");function Da(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let{shapeSvg:c,bbox:l,halfPadding:m,label:r}=yield j(p,t,O(t)),o=l.width+2*m,i=l.height+2*m,a=.15*o,s=.25*o,n=.35*o,e=.2*o,{cssStyles:y}=t,g,d=`M0 0 + a${a},${a} 0 0,1 ${o*.25},${-1*o*.1} + a${n},${n} 1 0,1 ${o*.4},${-1*o*.1} + a${s},${s} 1 0,1 ${o*.35},${o*.2} + + a${a},${a} 1 0,1 ${o*.15},${i*.35} + a${e},${e} 1 0,1 ${-1*o*.15},${i*.65} + + a${s},${a} 1 0,1 ${-1*o*.25},${o*.15} + a${n},${n} 1 0,1 ${-1*o*.5},0 + a${a},${a} 1 0,1 ${-1*o*.25},${-1*o*.15} + + a${a},${a} 1 0,1 ${-1*o*.1},${-1*i*.35} + a${e},${e} 1 0,1 ${o*.1},${-1*i*.65} + H0 V0 Z`;if(t.look==="handDrawn"){let u=k.svg(c),w=I(t,{}),x=u.path(d,w);g=c.insert(()=>x,":first-child"),g.attr("class","basic label-container").attr("style",et(y))}else g=c.insert("path",":first-child").attr("class","basic label-container").attr("style",f).attr("d",d);return r.attr("transform",`translate(${-l.width/2}, ${-l.height/2})`),g.attr("transform",`translate(${-o/2}, ${-i/2})`),T(t,g),t.calcIntersect=function(u,w){return R.rect(u,w)},t.intersect=function(u){return Z.info("Cloud intersect",t,u),R.rect(t,u)},c})}v(Da,"cloud");function Ba(p,t){return C(this,null,function*(){let{labelStyles:h,nodeStyles:f}=E(t);t.labelStyle=h;let{shapeSvg:c,bbox:l,halfPadding:m,label:r}=yield j(p,t,O(t)),o=l.width+8*m,i=l.height+2*m,a=5,s=t.look==="neo"?` + M${-o/2} ${i/2-a} + v${-i+2*a} + q0,-${a} ${a},-${a} + h${o-2*a} + q${a},0 ${a},${a} + v${i-a} + H${-o/2} + Z + `:` + M${-o/2} ${i/2-a} + v${-i+2*a} + q0,-${a} ${a},-${a} + h${o-2*a} + q${a},0 ${a},${a} + v${i-2*a} + q0,${a} ${-a},${a} + h${-(o-2*a)} + q${-a},0 ${-a},${-a} + Z + `;if(!t.domId)throw new Error(`defaultMindmapNode: node "${t.id}" is missing a domId \u2014 was render.ts domId prefixing skipped?`);let n=c.append("path").attr("id",t.domId).attr("class","node-bkg node-"+t.type).attr("style",f).attr("d",s);return c.append("line").attr("class","node-line-").attr("x1",-o/2).attr("y1",i/2).attr("x2",o/2).attr("y2",i/2),r.attr("transform",`translate(${-l.width/2}, ${-l.height/2})`),c.append(()=>r.node()),T(t,n),t.calcIntersect=function(e,y){return R.rect(e,y)},t.intersect=function(e){return R.rect(t,e)},c})}v(Ba,"defaultMindmapNode");function Ma(p,t){return C(this,null,function*(){let h={padding:t.padding??0};return zt(p,t,h)})}v(Ma,"mindmapCircle");var se=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:ra},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:aa},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:la},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:ha},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:Ns},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:zt},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:Pa},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:Da},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:Ks},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:Ws},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:qs},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:Fs},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:ua},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:js},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:Rs},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:ya},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:Ss},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:ea},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:oa},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:ca},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:Is},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:Es},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:Ps},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:Ds},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:Bs},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:zs},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:wa},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:Ls},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:pa},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:Vs},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:Ms},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:Cs},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:ma},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:ba},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:As},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:da},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:Hs},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:ia},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:Qs},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:Js},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:bs},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:ks},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:fa},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:ga},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:xa},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:ta},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:Zs}],ae=v(()=>{let t=[...Object.entries({state:na,choice:$s,note:Us,rectWithTitle:sa,labelRect:Gs,iconSquare:Ys,iconCircle:_s,icon:Ts,iconRounded:Xs,imageSquare:Os,anchor:ws,kanbanItem:ka,mindmapCircle:Ma,defaultMindmapNode:Ba,classBox:$a,erBox:Vt,requirementBox:va}),...se.flatMap(h=>[h.shortName,..."aliases"in h?h.aliases:[],..."internalAliases"in h?h.internalAliases:[]].map(c=>[c,h.handler]))];return Object.fromEntries(t)},"generateShapeMap"),Na=ae();function ee(p){return p in Na}v(ee,"isValidShape");var Wt=new Map;function ie(p,t,h){return C(this,null,function*(){let f,c;t.shape==="rect"&&(t.rx&&t.ry?t.shape="roundedRect":t.shape="squareRect");let l=t.shape?Na[t.shape]:void 0;if(!l)throw new Error(`No such shape: ${t.shape}. Please check your syntax.`);if(t.link){let m;h.config.securityLevel==="sandbox"?m="_top":t.linkTarget&&(m=t.linkTarget||"_blank"),f=p.insert("svg:a").attr("xlink:href",t.link).attr("target",m??null),c=yield l(f,t,h)}else c=yield l(p,t,h),f=c;return f.attr("data-look",et(t.look)),t.tooltip&&c.attr("title",t.tooltip),Wt.set(t.id,f),t.haveCallback&&f.attr("class",f.attr("class")+" clickable"),f})}v(ie,"insertNode");var Di=v((p,t)=>{Wt.set(t.id,p)},"setNodeElem"),Bi=v(()=>{Wt.clear()},"clear"),Mi=v(p=>{let t=Wt.get(p.id);Z.trace("Transforming node",p.diff,p,"translate("+(p.x-p.width/2-5)+", "+p.width/2+")");let h=8,f=p.diff||0;return p.clusterNode?t.attr("transform","translate("+(p.x+f-p.width/2)+", "+(p.y-p.height/2-h)+")"):t.attr("transform","translate("+p.x+", "+p.y+")"),f},"positionNode");export{j as a,T as b,Lt as c,ue as d,de as e,ee as f,ie as g,Di as h,Bi as i,Mi as j}; diff --git a/src/google/adk/cli/browser/chunk-NRR3JWGL.js b/src/google/adk/cli/browser/chunk-NRR3JWGL.js new file mode 100644 index 0000000000..dd7068af50 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-NRR3JWGL.js @@ -0,0 +1,120 @@ +import{a as bt}from"./chunk-PDRDFWTH.js";import{B as vt}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as rt,O as nt,Q as xt,R as kt,Y as st,c as ft,d as yt,e as mt}from"./chunk-37QI3DOO.js";import{K as it,a as K,g as o,h as gt,i as _}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";var at=(function(){var e=o(function(k,s,d,l){for(d=d||{},l=k.length;l--;d[k[l]]=s);return d},"o"),t=[6,11,13,14,15,17,19,20,23,24],r=[1,12],i=[1,13],n=[1,14],h=[1,15],c=[1,16],a=[1,19],f=[1,20],g={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",7:"timeline",8:"timeline_lr",9:"timeline_td",11:"SPACE",13:"NEWLINE",14:"title",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",23:"period",24:"event"},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:o(function(s,d,l,p,m,u,w){var b=u.length-1;switch(m){case 1:return u[b-1];case 3:p.setDirection("LR");break;case 4:p.setDirection("TD");break;case 5:this.$=[];break;case 6:u[b-1].push(u[b]),this.$=u[b-1];break;case 7:case 8:this.$=u[b];break;case 9:case 10:this.$=[];break;case 11:p.getCommonDb().setDiagramTitle(u[b].substr(6)),this.$=u[b].substr(6);break;case 12:this.$=u[b].trim(),p.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=u[b].trim(),p.getCommonDb().setAccDescription(this.$);break;case 15:p.addSection(u[b].substr(8)),this.$=u[b].substr(8);break;case 18:p.addTask(u[b],0,""),this.$=u[b];break;case 19:p.addEvent(u[b].substr(2)),this.$=u[b];break}},"anonymous"),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},e(t,[2,5],{5:6}),e(t,[2,2]),e(t,[2,3]),e(t,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:r,15:i,17:n,19:h,20:c,21:17,22:18,23:a,24:f},e(t,[2,10],{1:[2,1]}),e(t,[2,6]),{12:21,14:r,15:i,17:n,19:h,20:c,21:17,22:18,23:a,24:f},e(t,[2,8]),e(t,[2,9]),e(t,[2,11]),{16:[1,22]},{18:[1,23]},e(t,[2,14]),e(t,[2,15]),e(t,[2,16]),e(t,[2,17]),e(t,[2,18]),e(t,[2,19]),e(t,[2,7]),e(t,[2,12]),e(t,[2,13])],defaultActions:{},parseError:o(function(s,d){if(d.recoverable)this.trace(s);else{var l=new Error(s);throw l.hash=d,l}},"parseError"),parse:o(function(s){var d=this,l=[0],p=[],m=[null],u=[],w=this.table,b="",I=0,P=0,B=0,G=2,L=1,R=u.slice.call(arguments,1),E=Object.create(this.lexer),A={yy:{}};for(var V in this.yy)Object.prototype.hasOwnProperty.call(this.yy,V)&&(A.yy[V]=this.yy[V]);E.setInput(s,A.yy),A.yy.lexer=E,A.yy.parser=this,typeof E.yylloc>"u"&&(E.yylloc={});var D=E.yylloc;u.push(D);var $=E.options&&E.options.ranges;typeof A.yy.parseError=="function"?this.parseError=A.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function v(W){l.length=l.length-2*W,m.length=m.length-W,u.length=u.length-W}o(v,"popStack");function T(){var W;return W=p.pop()||E.lex()||L,typeof W!="number"&&(W instanceof Array&&(p=W,W=p.pop()),W=d.symbols_[W]||W),W}o(T,"lex");for(var S,H,M,N,tt,Z,O={},j,F,pt,q;;){if(M=l[l.length-1],this.defaultActions[M]?N=this.defaultActions[M]:((S===null||typeof S>"u")&&(S=T()),N=w[M]&&w[M][S]),typeof N>"u"||!N.length||!N[0]){var et="";q=[];for(j in w[M])this.terminals_[j]&&j>G&&q.push("'"+this.terminals_[j]+"'");E.showPosition?et="Parse error on line "+(I+1)+`: +`+E.showPosition()+` +Expecting `+q.join(", ")+", got '"+(this.terminals_[S]||S)+"'":et="Parse error on line "+(I+1)+": Unexpected "+(S==L?"end of input":"'"+(this.terminals_[S]||S)+"'"),this.parseError(et,{text:E.match,token:this.terminals_[S]||S,line:E.yylineno,loc:D,expected:q})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+M+", token: "+S);switch(N[0]){case 1:l.push(S),m.push(E.yytext),u.push(E.yylloc),l.push(N[1]),S=null,H?(S=H,H=null):(P=E.yyleng,b=E.yytext,I=E.yylineno,D=E.yylloc,B>0&&B--);break;case 2:if(F=this.productions_[N[1]][1],O.$=m[m.length-F],O._$={first_line:u[u.length-(F||1)].first_line,last_line:u[u.length-1].last_line,first_column:u[u.length-(F||1)].first_column,last_column:u[u.length-1].last_column},$&&(O._$.range=[u[u.length-(F||1)].range[0],u[u.length-1].range[1]]),Z=this.performAction.apply(O,[b,P,I,A.yy,N[1],m,u].concat(R)),typeof Z<"u")return Z;F&&(l=l.slice(0,-1*F*2),m=m.slice(0,-1*F),u=u.slice(0,-1*F)),l.push(this.productions_[N[1]][0]),m.push(O.$),u.push(O._$),pt=w[l[l.length-2]][l[l.length-1]],l.push(pt);break;case 3:return!0}}return!0},"parse")},x=(function(){var k={EOF:1,parseError:o(function(d,l){if(this.yy.parser)this.yy.parser.parseError(d,l);else throw new Error(d)},"parseError"),setInput:o(function(s,d){return this.yy=d||this.yy||{},this._input=s,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var s=this._input[0];this.yytext+=s,this.yyleng++,this.offset++,this.match+=s,this.matched+=s;var d=s.match(/(?:\r\n?|\n).*/g);return d?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),s},"input"),unput:o(function(s){var d=s.length,l=s.split(/(?:\r\n?|\n)/g);this._input=s+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-d),this.offset-=d;var p=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1&&(this.yylineno-=l.length-1);var m=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===p.length?this.yylloc.first_column:0)+p[p.length-l.length].length-l[0].length:this.yylloc.first_column-d},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-d]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(s){this.unput(this.match.slice(s))},"less"),pastInput:o(function(){var s=this.matched.substr(0,this.matched.length-this.match.length);return(s.length>20?"...":"")+s.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var s=this.match;return s.length<20&&(s+=this._input.substr(0,20-s.length)),(s.substr(0,20)+(s.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var s=this.pastInput(),d=new Array(s.length+1).join("-");return s+this.upcomingInput()+` +`+d+"^"},"showPosition"),test_match:o(function(s,d){var l,p,m;if(this.options.backtrack_lexer&&(m={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(m.yylloc.range=this.yylloc.range.slice(0))),p=s[0].match(/(?:\r\n?|\n).*/g),p&&(this.yylineno+=p.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:p?p[p.length-1].length-p[p.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+s[0].length},this.yytext+=s[0],this.match+=s[0],this.matches=s,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(s[0].length),this.matched+=s[0],l=this.performAction.call(this,this.yy,this,d,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),l)return l;if(this._backtrack){for(var u in m)this[u]=m[u];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var s,d,l,p;this._more||(this.yytext="",this.match="");for(var m=this._currentRules(),u=0;ud[0].length)){if(d=l,p=u,this.options.backtrack_lexer){if(s=this.test_match(l,m[u]),s!==!1)return s;if(this._backtrack){d=!1;continue}else return!1}else if(!this.options.flex)break}return d?(s=this.test_match(d,m[p]),s!==!1?s:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var d=this.next();return d||this.lex()},"lex"),begin:o(function(d){this.conditionStack.push(d)},"begin"),popState:o(function(){var d=this.conditionStack.length-1;return d>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(d){return d=this.conditionStack.length-1-Math.abs(d||0),d>=0?this.conditionStack[d]:"INITIAL"},"topState"),pushState:o(function(d){this.begin(d)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(d,l,p,m){var u=m;switch(p){case 0:break;case 1:break;case 2:return 13;case 3:break;case 4:break;case 5:return 8;case 6:return 9;case 7:return 7;case 8:return 14;case 9:return this.begin("acc_title"),15;break;case 10:return this.popState(),"acc_title_value";break;case 11:return this.begin("acc_descr"),17;break;case 12:return this.popState(),"acc_descr_value";break;case 13:this.begin("acc_descr_multiline");break;case 14:this.popState();break;case 15:return"acc_descr_multiline_value";case 16:return 20;case 17:return 24;case 18:return 23;case 19:return 6;case 20:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline[ \t]+LR\b)/i,/^(?:timeline[ \t]+TD\b)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[14,15],inclusive:!1},acc_descr:{rules:[12],inclusive:!1},acc_title:{rules:[10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,13,16,17,18,19,20],inclusive:!0}}};return k})();g.lexer=x;function y(){this.yy={}}return o(y,"Parser"),y.prototype=g,g.Parser=y,new y})();at.parser=at;var Kt=at,$t={};gt($t,{addEvent:()=>Pt,addSection:()=>At,addTask:()=>Wt,addTaskOrg:()=>Bt,clear:()=>Ht,default:()=>Ut,getCommonDb:()=>It,getDirection:()=>Mt,getSections:()=>Ct,getTasks:()=>Rt,setDirection:()=>Lt});var U="",Nt=0,ct="LR",lt=[],J=[],X=[],It=o(()=>xt,"getCommonDb"),Ht=o(function(){lt.length=0,J.length=0,U="",X.length=0,ct="LR",kt()},"clear"),Lt=o(function(e){ct=e},"setDirection"),Mt=o(function(){return ct},"getDirection"),At=o(function(e){U=e,lt.push(e)},"addSection"),Ct=o(function(){return lt},"getSections"),Rt=o(function(){let e=_t(),t=100,r=0;for(;!e&&rr.id===Nt-1).events.push(e)},"addEvent"),Bt=o(function(e){let t={section:U,type:U,description:e,task:e,classes:[]};J.push(t)},"addTaskOrg"),_t=o(function(){let e=o(function(r){return X[r].processed},"compileTask"),t=!0;for(let[r,i]of X.entries())e(r),t=t&&i.processed;return t},"compileTasks"),Ut={clear:Ht,getCommonDb:It,getDirection:Mt,setDirection:Lt,addSection:At,getSections:Ct,getTasks:Rt,addTask:Wt,addTaskOrg:Bt,addEvent:Pt},Vt=0,Q=o(function(e,t){let r=e.append("rect");return r.attr("x",t.x),r.attr("y",t.y),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("width",t.width),r.attr("height",t.height),r.attr("rx",t.rx),r.attr("ry",t.ry),t.class!==void 0&&r.attr("class",t.class),r},"drawRect"),Xt=o(function(e,t){let i=e.append("circle").attr("cx",t.cx).attr("cy",t.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),n=e.append("g");n.append("circle").attr("cx",t.cx-15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),n.append("circle").attr("cx",t.cx+15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function h(f){let g=it().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);f.append("path").attr("class","mouth").attr("d",g).attr("transform","translate("+t.cx+","+(t.cy+2)+")")}o(h,"smile");function c(f){let g=it().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);f.append("path").attr("class","mouth").attr("d",g).attr("transform","translate("+t.cx+","+(t.cy+7)+")")}o(c,"sad");function a(f){f.append("line").attr("class","mouth").attr("stroke",2).attr("x1",t.cx-5).attr("y1",t.cy+7).attr("x2",t.cx+5).attr("y2",t.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return o(a,"ambivalent"),t.score>3?h(n):t.score<3?c(n):a(n),i},"drawFace"),Zt=o(function(e,t){let r=e.append("circle");return r.attr("cx",t.cx),r.attr("cy",t.cy),r.attr("class","actor-"+t.pos),r.attr("fill",t.fill),r.attr("stroke",t.stroke),r.attr("r",t.r),r.class!==void 0&&r.attr("class",r.class),t.title!==void 0&&r.append("title").text(t.title),r},"drawCircle"),Ft=o(function(e,t){let r=t.text.replace(//gi," "),i=e.append("text");i.attr("x",t.x),i.attr("y",t.y),i.attr("class","legend"),i.style("text-anchor",t.anchor),t.class!==void 0&&i.attr("class",t.class);let n=i.append("tspan");return n.attr("x",t.x+t.textMargin*2),n.text(r),i},"drawText"),jt=o(function(e,t){function r(n,h,c,a,f){return n+","+h+" "+(n+c)+","+h+" "+(n+c)+","+(h+a-f)+" "+(n+c-f*1.2)+","+(h+a)+" "+n+","+(h+a)}o(r,"genPoints");let i=e.append("polygon");i.attr("points",r(t.x,t.y,50,20,7)),i.attr("class","labelBox"),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,Ft(e,t)},"drawLabel"),qt=o(function(e,t,r){let i=e.append("g"),n=ht();n.x=t.x,n.y=t.y,n.fill=t.fill,n.width=r.width,n.height=r.height,n.class="journey-section section-type-"+t.num,n.rx=3,n.ry=3,Q(i,n),zt(r)(t.text,i,n.x,n.y,n.width,n.height,{class:"journey-section section-type-"+t.num},r,t.colour)},"drawSection"),ot=-1,Jt=o(function(e,t,r,i){let n=t.x+r.width/2,h=e.append("g");ot++,h.append("line").attr("id",i+"-task"+ot).attr("x1",n).attr("y1",t.y).attr("x2",n).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Xt(h,{cx:n,cy:300+(5-t.score)*30,score:t.score});let a=ht();a.x=t.x,a.y=t.y,a.fill=t.fill,a.width=r.width,a.height=r.height,a.class="task task-type-"+t.num,a.rx=3,a.ry=3,Q(h,a),zt(r)(t.task,h,a.x,a.y,a.width,a.height,{class:"task"},r,t.colour)},"drawTask"),Qt=o(function(e,t){Q(e,{x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,class:"rect"}).lower()},"drawBackgroundRect"),Yt=o(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),ht=o(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),zt=(function(){function e(n,h,c,a,f,g,x,y){let k=h.append("text").attr("x",c+f/2).attr("y",a+g/2+5).style("font-color",y).style("text-anchor","middle").text(n);i(k,x)}o(e,"byText");function t(n,h,c,a,f,g,x,y,k){let{taskFontSize:s,taskFontFamily:d}=y,l=n.split(//gi);for(let p=0;p)/).reverse(),n,h=[],c=1.1,a=r.attr("y"),f=parseFloat(r.attr("dy")),g=r.text(null).append("tspan").attr("x",0).attr("y",a).attr("dy",f+"em");for(let x=0;xt||n==="
")&&(h.pop(),g.text(h.join(" ").trim()),n==="
"?h=[""]:h=[n],g=r.append("tspan").attr("x",0).attr("y",a).attr("dy",c+"em").text(n))})}o(dt,"wrap");var ee=o(function(e,t,r,i,n,h=!1){let{theme:c,look:a}=i,f=c?.includes("redux"),g=i?.themeVariables?.THEME_COLOR_LIMIT??12,x=r%g-1,y=e.append("g");t.section=x,y.attr("class",(t.class?t.class+" ":"")+"timeline-node "+("section-"+x));let k=y.append("g"),s=y.append("g"),l=s.append("text").text(t.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(dt,t.width).node().getBBox(),p=i.fontSize?.replace?i.fontSize.replace("px",""):i.fontSize;if(t.height=l.height+p*1.1*.5+t.padding,t.height=Math.max(t.height,t.maxHeight),t.width=t.width+2*t.padding,s.attr("transform","translate("+t.width/2+", "+t.padding/2+")"),f&&s.attr("transform",`translate(${t.width/2}, ${h?t.padding/2+3:t.padding})`),ne(k,t,x,n,i),a==="neo"&&(y.attr("data-look","neo"),f)){let m=c.includes("dark"),u=e.node()?.ownerSVGElement??e.node(),w=K(u),b=w.attr("id")??"",I=b?`${b}-drop-shadow`:"drop-shadow";if(w.select(`#${I}`).empty()){let P=w.select("defs");(P.empty()?w.append("defs"):P).append("filter").attr("id",I).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity",m?"0.2":"0.06").attr("flood-color",m?"#FFFFFF":"#000000")}}return t},"drawNode"),re=o(function(e,t,r){let i=e.append("g"),h=i.append("text").text(t.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(dt,t.width).node().getBBox(),c=r.fontSize?.replace?r.fontSize.replace("px",""):r.fontSize;return i.remove(),h.height+c*1.1*.5+t.padding},"getVirtualNodeHeight"),ne=o(function(e,t,r,i,n){let{theme:h}=n,c=h?.includes("redux")?0:5,a=5,f=c>0?`M0 ${t.height-a} v${-t.height+2*a} q0,-${c},${c},-${c} h${t.width-2*a} q${c},0,${c},${c} v${t.height-a} H0 Z`:`M0 ${t.height-a} v${-(t.height-a)} h${t.width} v${t.height} H0 Z`;e.append("path").attr("id",i+"-node-"+Vt++).attr("class","node-bkg node-"+t.type).attr("d",f),h?.includes("redux")||e.append("line").attr("class","node-line-"+r).attr("x1",0).attr("y1",t.height).attr("x2",t.width).attr("y2",t.height)},"defaultBkg"),C={drawRect:Q,drawCircle:Zt,drawSection:qt,drawText:Ft,drawLabel:jt,drawTask:Jt,drawBackgroundRect:Qt,getTextObj:Yt,getNoteRect:ht,initGraphics:te,drawNode:ee,getVirtualNodeHeight:re},se=o(function(e,t,r,i){let n=st(),{look:h,theme:c,themeVariables:a}=n,{useGradient:f,gradientStart:g,gradientStop:x}=a,y=n.timeline?.leftMargin??50;_.debug("timeline",i.db);let k=n.securityLevel,s;k==="sandbox"&&(s=K("#i"+t));let l=(k==="sandbox"?K(s.nodes()[0].contentDocument.body):K("body")).select("#"+t);l.append("g");let p=i.db.getTasks(),m=i.db.getCommonDb().getDiagramTitle();_.debug("task",p),C.initGraphics(l,t);let u=i.db.getSections();_.debug("sections",u);let w=0,b=0,I=0,P=0,B=50+y,G=50;P=50;let L=0,R=!0;u.forEach(function($){let v={number:L,descr:$,section:L,width:150,padding:20,maxHeight:w},T=C.getVirtualNodeHeight(l,v,n);_.debug("sectionHeight before draw",T),w=Math.max(w,T+20)});let E=0,A=0;_.debug("tasks.length",p.length);for(let[$,v]of p.entries()){let T={number:$,descr:v,section:v.section,width:150,padding:20,maxHeight:b},S=C.getVirtualNodeHeight(l,T,n);_.debug("taskHeight before draw",S),b=Math.max(b,S+20),E=Math.max(E,v.events.length);let H=0;for(let M of v.events){let N={descr:M,section:v.section,number:v.section,width:150,padding:20,maxHeight:50};H+=C.getVirtualNodeHeight(l,N,n)}v.events.length>0&&(H+=(v.events.length-1)*10),A=Math.max(A,H)}_.debug("maxSectionHeight before draw",w),_.debug("maxTaskHeight before draw",b),u&&u.length>0?u.forEach($=>{let v=p.filter(M=>M.section===$),T={number:L,descr:$,section:L,width:200*Math.max(v.length,1)-50,padding:20,maxHeight:w};_.debug("sectionNode",T);let S=l.append("g"),H=C.drawNode(S,T,L,n,t);_.debug("sectionNode output",H),S.attr("transform",`translate(${B}, ${P})`),G+=w+50,v.length>0&&wt(l,v,L,B,G,b,n,E,A,w,!1,t),B+=200*Math.max(v.length,1),G=P,L++}):(R=!1,wt(l,p,L,B,G,b,n,E,A,w,!0,t));let V=l.node().getBBox();if(_.debug("bounds",V),m&&l.append("text").text(m).attr("x",h==="neo"?V.x*2+y:V.width/2-y).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),I=R?w+b+150:b+100,l.append("g").attr("class","lineWrapper").append("line").attr("x1",y).attr("y1",I).attr("x2",V.width+3*y).attr("y2",I).attr("stroke-width",4).attr("stroke","black").attr("marker-end",`url(#${t}-arrowhead)`),h==="neo"&&f&&c!=="neutral"){let $=l.select("defs"),T=($.empty()?l.append("defs"):$).append("linearGradient").attr("id",l.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");T.append("stop").attr("offset","0%").attr("stop-color",g).attr("stop-opacity",1),T.append("stop").attr("offset","100%").attr("stop-color",x).attr("stop-opacity",1)}nt(void 0,l,n.timeline?.padding??50,n.timeline?.useMaxWidth??!1)},"draw"),wt=o(function(e,t,r,i,n,h,c,a,f,g,x,y){for(let k of t){let s={descr:k.task,section:r,number:r,width:150,padding:20,maxHeight:h};_.debug("taskNode",s);let d=e.append("g").attr("class","taskWrapper"),p=C.drawNode(d,s,r,c,y).height;if(_.debug("taskHeight after draw",p),d.attr("transform",`translate(${i}, ${n})`),h=Math.max(h,p),k.events){let m=e.append("g").attr("class","lineWrapper"),u=h;n+=100,u=u+ie(e,k.events,r,i,n,c,y),n-=100,m.append("line").attr("x1",i+190/2).attr("y1",n+h).attr("x2",i+190/2).attr("y2",n+h+100+f+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end",`url(#${y}-arrowhead)`).attr("stroke-dasharray","5,5")}i=i+200,x&&!c.timeline?.disableMulticolor&&r++}n=n-10},"drawTasks"),ie=o(function(e,t,r,i,n,h,c){let a=0,f=n;n=n+100;for(let g of t){let x={descr:g,section:r,number:r,width:150,padding:20,maxHeight:50};_.debug("eventNode",x);let y=e.append("g").attr("class","eventWrapper"),s=C.drawNode(y,x,r,h,c,!0).height;a=a+s,y.attr("transform",`translate(${i}, ${n})`),n=n+10+s}return n=f,a},"drawEvents"),ae={setConf:o(()=>{},"setConf"),draw:se},Y=200,z=5,oe=Y+z*2,ut=Y+100,ce=ut+z*2,Ot=10,le=0,St=20,Gt=20,Et=30,Dt=50,he=o(function(e,t,r,i){let n=st(),h=n.timeline?.leftMargin??50;_.debug("timeline",i.db);let c=bt(t);c.append("g");let a=i.db.getTasks(),f=i.db.getCommonDb().getDiagramTitle();_.debug("task",a),C.initGraphics(c);let g=i.db.getSections();_.debug("sections",g);let x=0,y=0,k=50+h,s=50,d=s,l=k,p=oe+Gt,m=ce+Dt,u=l+p,w=0,b=g&&g.length>0,I=b?u:k+p,P=Math.max(50,p+m-z*2);g.forEach(function($){let v={number:w,descr:$,section:w,width:P,padding:z,maxHeight:x},T=C.getVirtualNodeHeight(c,v,n);_.debug("sectionHeight before draw",T),x=Math.max(x,T)});let B=0;_.debug("tasks.length",a.length);for(let[$,v]of a.entries()){let T={number:$,descr:v,section:v.section,width:Y,padding:z,maxHeight:y},S=C.getVirtualNodeHeight(c,T,n);_.debug("taskHeight before draw",S),y=Math.max(y,S);let H=0;for(let M of v.events){let N={descr:M,section:v.section,number:v.section,width:ut,padding:z,maxHeight:50};H+=C.getVirtualNodeHeight(c,N,n)}v.events.length>0&&(H+=(v.events.length-1)*Ot),B=Math.max(B,H)+le}_.debug("maxSectionHeight before draw",x),_.debug("maxTaskHeight before draw",y);let L=Math.max(y,B)+Et;b?g.forEach($=>{let v=a.filter(O=>O.section===$),T={number:w,descr:$,section:w,width:P,padding:z,maxHeight:x};_.debug("sectionNode",T);let S=c.append("g"),H=C.drawNode(S,T,w,n);_.debug("sectionNode output",H);let M=I-p;S.attr("transform",`translate(${M}, ${s})`);let N=s+H.height+St;v.length>0&&Tt(c,v,w,I,N,y,n,L,!1);let tt=v.length,Z=H.height+St+L*Math.max(tt,1)-(tt>0?Et*2:0);s+=Z,w++}):Tt(c,a,w,I,s,y,n,L,!0);let R=c.node()?.getBBox();if(!R)throw new Error("bbox not found");if(_.debug("bounds",R),f){if(c.append("text").text(f).attr("x",R.width/2-h).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),R=c.node()?.getBBox(),!R)throw new Error("bbox not found");_.debug("bounds after title",R)}let[E]=vt(n.fontSize),A=(E??16)*2,V=(E??16)*.5+20,D=c.append("g").attr("class","lineWrapper");D.append("line").attr("x1",I).attr("y1",d-A).attr("x2",I).attr("y2",R.y+R.height+V).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),D.lower(),nt(void 0,c,n.timeline?.padding??50,n.timeline?.useMaxWidth??!1)},"draw"),Tt=o(function(e,t,r,i,n,h,c,a,f){for(let g of t){let x={descr:g.task,section:r,number:r,width:Y,padding:z,maxHeight:h};_.debug("taskNode",x);let y=e.append("g").attr("class","taskWrapper"),k=C.drawNode(y,x,r,c),s=k.height;_.debug("taskHeight after draw",s);let d=i-Gt-k.width;if(y.attr("transform",`translate(${d}, ${n})`),h=Math.max(h,s),g.events&&g.events.length>0){let l=n,p=i+Dt;de(e,g.events,r,i,p,l,c)}n=n+a,f&&!c.timeline?.disableMulticolor&&r++}},"drawTasks"),de=o(function(e,t,r,i,n,h,c){let a=h;for(let f of t){let g={descr:f,section:r,number:r,width:ut,padding:z,maxHeight:0};_.debug("eventNode",g);let x=e.append("g").attr("class","eventWrapper"),k=C.drawNode(x,g,r,c).height;x.attr("transform",`translate(${n}, ${a})`);let s=e.append("g").attr("class","lineWrapper"),d=a+k/2;s.append("line").attr("x1",i).attr("y1",d).attr("x2",n).attr("y2",d).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5"),a=a+k+Ot}return a-h},"drawEvents"),ue={setConf:o(()=>{},"setConf"),draw:he},pe=o(e=>{let{theme:t}=rt(),r=t?.includes("dark"),i=t?.includes("color"),n=e.svgId?.replace(/^#/,"")??"",h=n?`url(#${n}-drop-shadow)`:e.dropShadow??"none",c="";for(let a=0;a{let t="";for(let r=0;r{let{theme:t}=rt(),r=t?.includes("redux"),i=t==="neutral",n=e.svgId?.replace(/^#/,"")??"",h="";if(e.useGradient&&n&&e.THEME_COLOR_LIMIT&&!i)for(let c=0;c{},"setConf"),draw:o((e,t,r,i)=>(i?.db?.getDirection?.()??"LR")==="TD"?ue.draw(e,t,r,i):ae.draw(e,t,r,i),"draw")},Ee={db:$t,renderer:me,parser:Kt,styles:ye};export{Ee as diagram}; diff --git a/src/google/adk/cli/browser/chunk-OCQO4LX3.js b/src/google/adk/cli/browser/chunk-OCQO4LX3.js new file mode 100644 index 0000000000..fa5a3a2af2 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-OCQO4LX3.js @@ -0,0 +1,231 @@ +import{a as Mt}from"./chunk-APNCZOFE.js";import{a as Ut}from"./chunk-XB6MIIOW.js";import{b as Vt}from"./chunk-QL2SWWYM.js";import{D as Yt,v as Gt}from"./chunk-UKZIEWH5.js";import{M as G,R as Ot,S as Rt,T as wt,U as $t,V as Pt,W as Bt,X as Ft,Y as w}from"./chunk-37QI3DOO.js";import{g as u,i as k}from"./chunk-JRNAXTJ7.js";import{j as Nt}from"./chunk-RMXJBC7V.js";var vt=(function(){var t=u(function(F,o,c,n){for(c=c||{},n=F.length;n--;c[F[n]]=o);return c},"o"),e=[1,2],s=[1,3],a=[1,4],i=[2,4],d=[1,9],f=[1,11],S=[1,16],p=[1,17],T=[1,18],E=[1,19],_=[1,33],x=[1,20],D=[1,21],h=[1,22],L=[1,23],v=[1,24],$=[1,26],I=[1,27],P=[1,28],N=[1,29],X=[1,30],st=[1,31],rt=[1,32],it=[1,35],at=[1,36],nt=[1,37],ot=[1,38],W=[1,34],y=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],lt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],xt=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],gt={trace:u(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:u(function(o,c,n,g,b,r,J){var l=r.length-1;switch(b){case 3:return g.setRootDoc(r[l]),r[l];break;case 4:this.$=[];break;case 5:r[l]!="nl"&&(r[l-1].push(r[l]),this.$=r[l-1]);break;case 6:case 7:this.$=r[l];break;case 8:this.$="nl";break;case 12:this.$=r[l];break;case 13:let ht=r[l-1];ht.description=g.trimColon(r[l]),this.$=ht;break;case 14:this.$={stmt:"relation",state1:r[l-2],state2:r[l]};break;case 15:let ut=g.trimColon(r[l]);this.$={stmt:"relation",state1:r[l-3],state2:r[l-1],description:ut};break;case 19:this.$={stmt:"state",id:r[l-3],type:"default",description:"",doc:r[l-1]};break;case 20:var V=r[l],j=r[l-2].trim();if(r[l].match(":")){var q=r[l].split(":");V=q[0],j=[j,q[1]]}this.$={stmt:"state",id:V,type:"default",description:j};break;case 21:this.$={stmt:"state",id:r[l-3],type:"default",description:r[l-5],doc:r[l-1]};break;case 22:this.$={stmt:"state",id:r[l],type:"fork"};break;case 23:this.$={stmt:"state",id:r[l],type:"join"};break;case 24:this.$={stmt:"state",id:r[l],type:"choice"};break;case 25:this.$={stmt:"state",id:g.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:r[l-1].trim(),note:{position:r[l-2].trim(),text:r[l].trim()}};break;case 29:this.$=r[l].trim(),g.setAccTitle(this.$);break;case 30:case 31:this.$=r[l].trim(),g.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:r[l-3],url:r[l-2],tooltip:r[l-1]};break;case 33:this.$={stmt:"click",id:r[l-3],url:r[l-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:r[l-1].trim(),classes:r[l].trim()};break;case 36:this.$={stmt:"style",id:r[l-1].trim(),styleClass:r[l].trim()};break;case 37:this.$={stmt:"applyClass",id:r[l-1].trim(),styleClass:r[l].trim()};break;case 38:g.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:g.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:g.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:g.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:r[l].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:r[l-2].trim(),classes:[r[l].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:r[l-2].trim(),classes:[r[l].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:s,6:a},{1:[3]},{3:5,4:e,5:s,6:a},{3:6,4:e,5:s,6:a},t([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:d,5:f,8:8,9:10,10:12,11:13,12:14,13:15,16:S,17:p,19:T,22:E,24:_,25:x,26:D,27:h,28:L,29:v,32:25,33:$,35:I,37:P,38:N,41:X,45:st,48:rt,51:it,52:at,53:nt,54:ot,57:W},t(y,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:S,17:p,19:T,22:E,24:_,25:x,26:D,27:h,28:L,29:v,32:25,33:$,35:I,37:P,38:N,41:X,45:st,48:rt,51:it,52:at,53:nt,54:ot,57:W},t(y,[2,7]),t(y,[2,8]),t(y,[2,9]),t(y,[2,10]),t(y,[2,11]),t(y,[2,12],{14:[1,40],15:[1,41]}),t(y,[2,16]),{18:[1,42]},t(y,[2,18],{20:[1,43]}),{23:[1,44]},t(y,[2,22]),t(y,[2,23]),t(y,[2,24]),t(y,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},t(y,[2,28]),{34:[1,49]},{36:[1,50]},t(y,[2,31]),{13:51,24:_,57:W},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},t(lt,[2,44],{58:[1,56]}),t(lt,[2,45],{58:[1,57]}),t(y,[2,38]),t(y,[2,39]),t(y,[2,40]),t(y,[2,41]),t(y,[2,6]),t(y,[2,13]),{13:58,24:_,57:W},t(y,[2,17]),t(xt,i,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},t(y,[2,29]),t(y,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},t(y,[2,14],{14:[1,71]}),{4:d,5:f,8:8,9:10,10:12,11:13,12:14,13:15,16:S,17:p,19:T,21:[1,72],22:E,24:_,25:x,26:D,27:h,28:L,29:v,32:25,33:$,35:I,37:P,38:N,41:X,45:st,48:rt,51:it,52:at,53:nt,54:ot,57:W},t(y,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},t(y,[2,34]),t(y,[2,35]),t(y,[2,36]),t(y,[2,37]),t(lt,[2,46]),t(lt,[2,47]),t(y,[2,15]),t(y,[2,19]),t(xt,i,{7:78}),t(y,[2,26]),t(y,[2,27]),{5:[1,79]},{5:[1,80]},{4:d,5:f,8:8,9:10,10:12,11:13,12:14,13:15,16:S,17:p,19:T,21:[1,81],22:E,24:_,25:x,26:D,27:h,28:L,29:v,32:25,33:$,35:I,37:P,38:N,41:X,45:st,48:rt,51:it,52:at,53:nt,54:ot,57:W},t(y,[2,32]),t(y,[2,33]),t(y,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:u(function(o,c){if(c.recoverable)this.trace(o);else{var n=new Error(o);throw n.hash=c,n}},"parseError"),parse:u(function(o){var c=this,n=[0],g=[],b=[null],r=[],J=this.table,l="",V=0,j=0,q=0,ht=2,ut=1,ue=r.slice.call(arguments,1),m=Object.create(this.lexer),M={yy:{}};for(var Tt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Tt)&&(M.yy[Tt]=this.yy[Tt]);m.setInput(o,M.yy),M.yy.lexer=m,M.yy.parser=this,typeof m.yylloc>"u"&&(m.yylloc={});var bt=m.yylloc;r.push(bt);var de=m.options&&m.options.ranges;typeof M.yy.parseError=="function"?this.parseError=M.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function fe(O){n.length=n.length-2*O,b.length=b.length-O,r.length=r.length-O}u(fe,"popStack");function Lt(){var O;return O=g.pop()||m.lex()||ut,typeof O!="number"&&(O instanceof Array&&(g=O,O=g.pop()),O=c.symbols_[O]||O),O}u(Lt,"lex");for(var C,Et,U,R,Ge,kt,H={},dt,B,It,ft;;){if(U=n[n.length-1],this.defaultActions[U]?R=this.defaultActions[U]:((C===null||typeof C>"u")&&(C=Lt()),R=J[U]&&J[U][C]),typeof R>"u"||!R.length||!R[0]){var _t="";ft=[];for(dt in J[U])this.terminals_[dt]&&dt>ht&&ft.push("'"+this.terminals_[dt]+"'");m.showPosition?_t="Parse error on line "+(V+1)+`: +`+m.showPosition()+` +Expecting `+ft.join(", ")+", got '"+(this.terminals_[C]||C)+"'":_t="Parse error on line "+(V+1)+": Unexpected "+(C==ut?"end of input":"'"+(this.terminals_[C]||C)+"'"),this.parseError(_t,{text:m.match,token:this.terminals_[C]||C,line:m.yylineno,loc:bt,expected:ft})}if(R[0]instanceof Array&&R.length>1)throw new Error("Parse Error: multiple actions possible at state: "+U+", token: "+C);switch(R[0]){case 1:n.push(C),b.push(m.yytext),r.push(m.yylloc),n.push(R[1]),C=null,Et?(C=Et,Et=null):(j=m.yyleng,l=m.yytext,V=m.yylineno,bt=m.yylloc,q>0&&q--);break;case 2:if(B=this.productions_[R[1]][1],H.$=b[b.length-B],H._$={first_line:r[r.length-(B||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(B||1)].first_column,last_column:r[r.length-1].last_column},de&&(H._$.range=[r[r.length-(B||1)].range[0],r[r.length-1].range[1]]),kt=this.performAction.apply(H,[l,j,V,M.yy,R[1],b,r].concat(ue)),typeof kt<"u")return kt;B&&(n=n.slice(0,-1*B*2),b=b.slice(0,-1*B),r=r.slice(0,-1*B)),n.push(this.productions_[R[1]][0]),b.push(H.$),r.push(H._$),It=J[n[n.length-2]][n[n.length-1]],n.push(It);break;case 3:return!0}}return!0},"parse")},he=(function(){var F={EOF:1,parseError:u(function(c,n){if(this.yy.parser)this.yy.parser.parseError(c,n);else throw new Error(c)},"parseError"),setInput:u(function(o,c){return this.yy=c||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:u(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var c=o.match(/(?:\r\n?|\n).*/g);return c?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:u(function(o){var c=o.length,n=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-c),this.offset-=c;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===g.length?this.yylloc.first_column:0)+g[g.length-n.length].length-n[0].length:this.yylloc.first_column-c},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-c]),this.yyleng=this.yytext.length,this},"unput"),more:u(function(){return this._more=!0,this},"more"),reject:u(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:u(function(o){this.unput(this.match.slice(o))},"less"),pastInput:u(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:u(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:u(function(){var o=this.pastInput(),c=new Array(o.length+1).join("-");return o+this.upcomingInput()+` +`+c+"^"},"showPosition"),test_match:u(function(o,c){var n,g,b;if(this.options.backtrack_lexer&&(b={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(b.yylloc.range=this.yylloc.range.slice(0))),g=o[0].match(/(?:\r\n?|\n).*/g),g&&(this.yylineno+=g.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],n=this.performAction.call(this,this.yy,this,c,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var r in b)this[r]=b[r];return!1}return!1},"test_match"),next:u(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,c,n,g;this._more||(this.yytext="",this.match="");for(var b=this._currentRules(),r=0;rc[0].length)){if(c=n,g=r,this.options.backtrack_lexer){if(o=this.test_match(n,b[r]),o!==!1)return o;if(this._backtrack){c=!1;continue}else return!1}else if(!this.options.flex)break}return c?(o=this.test_match(c,b[g]),o!==!1?o:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:u(function(){var c=this.next();return c||this.lex()},"lex"),begin:u(function(c){this.conditionStack.push(c)},"begin"),popState:u(function(){var c=this.conditionStack.length-1;return c>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:u(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:u(function(c){return c=this.conditionStack.length-1-Math.abs(c||0),c>=0?this.conditionStack[c]:"INITIAL"},"topState"),pushState:u(function(c){this.begin(c)},"pushState"),stateStackSize:u(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:u(function(c,n,g,b){var r=b;switch(g){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:break;case 9:break;case 10:return 5;case 11:break;case 12:break;case 13:break;case 14:break;case 15:return this.pushState("SCALE"),17;break;case 16:return 18;case 17:this.popState();break;case 18:return this.begin("acc_title"),33;break;case 19:return this.popState(),"acc_title_value";break;case 20:return this.begin("acc_descr"),35;break;case 21:return this.popState(),"acc_descr_value";break;case 22:this.begin("acc_descr_multiline");break;case 23:this.popState();break;case 24:return"acc_descr_multiline_value";case 25:return this.pushState("CLASSDEF"),41;break;case 26:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 27:return this.popState(),this.pushState("CLASSDEFID"),42;break;case 28:return this.popState(),43;break;case 29:return this.pushState("CLASS"),48;break;case 30:return this.popState(),this.pushState("CLASS_STYLE"),49;break;case 31:return this.popState(),50;break;case 32:return this.pushState("STYLE"),45;break;case 33:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;break;case 34:return this.popState(),47;break;case 35:return this.pushState("SCALE"),17;break;case 36:return 18;case 37:this.popState();break;case 38:this.pushState("STATE");break;case 39:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;break;case 40:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;break;case 41:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;break;case 42:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),25;break;case 43:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),26;break;case 44:return this.popState(),n.yytext=n.yytext.slice(0,-10).trim(),27;break;case 45:return 51;case 46:return 52;case 47:return 53;case 48:return 54;case 49:this.pushState("STATE_STRING");break;case 50:return this.pushState("STATE_ID"),"AS";break;case 51:return this.popState(),"ID";break;case 52:this.popState();break;case 53:return"STATE_DESCR";case 54:return 19;case 55:this.popState();break;case 56:return this.popState(),this.pushState("struct"),20;break;case 57:break;case 58:return this.popState(),21;break;case 59:break;case 60:return this.begin("NOTE"),29;break;case 61:return this.popState(),this.pushState("NOTE_ID"),59;break;case 62:return this.popState(),this.pushState("NOTE_ID"),60;break;case 63:this.popState(),this.pushState("FLOATING_NOTE");break;case 64:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 65:break;case 66:return"NOTE_TEXT";case 67:return this.popState(),"ID";break;case 68:return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 69:return this.popState(),n.yytext=n.yytext.substr(2).trim(),31;break;case 70:return this.popState(),n.yytext=n.yytext.slice(0,-8).trim(),31;break;case 71:return 6;case 72:return 6;case 73:return 16;case 74:return 57;case 75:return 24;case 76:return n.yytext=n.yytext.trim(),14;break;case 77:return 15;case 78:return 28;case 79:return 58;case 80:return 5;case 81:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[12,13],inclusive:!1},struct:{rules:[12,13,25,29,32,38,45,46,47,48,57,58,59,60,74,75,76,77,78,79],inclusive:!1},FLOATING_NOTE_ID:{rules:[67],inclusive:!1},FLOATING_NOTE:{rules:[64,65,66],inclusive:!1},NOTE_TEXT:{rules:[69,70],inclusive:!1},NOTE_ID:{rules:[68],inclusive:!1},NOTE:{rules:[61,62,63],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[34],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[33],inclusive:!1},CLASS_STYLE:{rules:[31],inclusive:!1},CLASS:{rules:[30],inclusive:!1},CLASSDEFID:{rules:[28],inclusive:!1},CLASSDEF:{rules:[26,27],inclusive:!1},acc_descr_multiline:{rules:[23,24],inclusive:!1},acc_descr:{rules:[21],inclusive:!1},acc_title:{rules:[19],inclusive:!1},SCALE:{rules:[16,17,36,37],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[51],inclusive:!1},STATE_STRING:{rules:[52,53],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[12,13,39,40,41,42,43,44,49,50,54,55,56],inclusive:!1},ID:{rules:[12,13],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,13,14,15,18,20,22,25,29,32,35,38,56,60,71,72,73,74,75,76,77,79,80,81],inclusive:!0}}};return F})();gt.lexer=he;function ct(){this.yy={}}return u(ct,"Parser"),ct.prototype=gt,gt.Parser=ct,new ct})();vt.parser=vt;var He=vt,pe="TB",qt="TB",Wt="dir",K="state",z="root",Ct="relation",Se="classDef",ye="style",ge="applyClass",tt="default",Qt="divider",Zt="fill:none",te="fill: #333",ee="c",se="markdown",re="normal",mt="rect",Dt="rectWithTitle",Te="stateStart",be="stateEnd",jt="divider",Ht="roundedWithTitle",Ee="note",ke="noteGroup",et="statediagram",_e="state",me=`${et}-${_e}`,ie="transition",De="note",ve="note-edge",Ce=`${ie} ${ve}`,Ae=`${et}-${De}`,xe="cluster",Le=`${et}-${xe}`,Ie="cluster-alt",Ne=`${et}-${Ie}`,ae="parent",ne="note",Oe="state",At="----",Re=`${At}${ne}`,zt=`${At}${ae}`,oe=u((t,e=qt)=>{if(!t.doc)return e;let s=e;for(let a of t.doc)a.stmt==="dir"&&(s=a.value);return s},"getDir"),we=u(function(t,e){return e.db.getClasses()},"getClasses"),$e=u(function(t,e,s,a){return Nt(this,null,function*(){k.info("REF0:"),k.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:d,layout:f}=w();a.db.extract(a.db.getRootDocV2());let S=a.db.getData(),p=Mt(e,i);S.type=a.type,S.layoutAlgorithm=f,S.nodeSpacing=d?.nodeSpacing||50,S.rankSpacing=d?.rankSpacing||50,w().look==="neo"?S.markers=["barbNeo"]:S.markers=["barb"],S.diagramId=e,yield Vt(S,p);let E=8;try{(typeof a.db.getLinks=="function"?a.db.getLinks():new Map).forEach((x,D)=>{let h=typeof D=="string"?D:typeof D?.id=="string"?D.id:"";if(!h){k.warn("\u26A0\uFE0F Invalid or missing stateId from key:",JSON.stringify(D));return}let L=p.node()?.querySelectorAll("g"),v;if(L?.forEach(N=>{N.textContent?.trim()===h&&(v=N)}),!v){k.warn("\u26A0\uFE0F Could not find node matching text:",h);return}let $=v.parentNode;if(!$){k.warn("\u26A0\uFE0F Node has no parent, cannot wrap:",h);return}let I=document.createElementNS("http://www.w3.org/2000/svg","a"),P=x.url.replace(/^"+|"+$/g,"");if(I.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",P),I.setAttribute("target","_blank"),x.tooltip){let N=x.tooltip.replace(/^"+|"+$/g,"");I.setAttribute("title",N)}$.replaceChild(I,v),I.appendChild(v),k.info("\u{1F517} Wrapped node in
tag for:",h,x.url)})}catch(_){k.error("\u274C Error injecting clickable links:",_)}Yt.insertTitle(p,"statediagramTitleText",d?.titleTopMargin??25,a.db.getDiagramTitle()),Ut(p,E,et,d?.useMaxWidth??!0)})},"draw"),ze={getClasses:we,draw:$e,getDir:oe},St=new Map,Y=0;function yt(t="",e=0,s="",a=At){let i=s!==null&&s.length>0?`${a}${s}`:"";return`${Oe}-${t}${i}-${e}`}u(yt,"stateDomId");var Pe=u((t,e,s,a,i,d,f,S)=>{k.trace("items",e),e.forEach(p=>{switch(p.stmt){case K:Z(t,p,s,a,i,d,f,S);break;case tt:Z(t,p,s,a,i,d,f,S);break;case Ct:{Z(t,p.state1,s,a,i,d,f,S),Z(t,p.state2,s,a,i,d,f,S);let T=f==="neo",E={id:"edge"+Y,start:p.state1.id,end:p.state2.id,arrowhead:"normal",arrowTypeEnd:T?"arrow_barb_neo":"arrow_barb",style:Zt,labelStyle:"",label:G.sanitizeText(p.description??"",w()),arrowheadStyle:te,labelpos:ee,labelType:se,thickness:re,classes:ie,look:f};i.push(E),Y++}break}})},"setupDoc"),Kt=u((t,e=qt)=>{let s=e;if(t.doc)for(let a of t.doc)a.stmt==="dir"&&(s=a.value);return s},"getDir");function Q(t,e,s){if(!e.id||e.id===""||e.id==="")return;e.cssClasses&&(Array.isArray(e.cssCompiledStyles)||(e.cssCompiledStyles=[]),e.cssClasses.split(" ").forEach(i=>{let d=s.get(i);d&&(e.cssCompiledStyles=[...e.cssCompiledStyles??[],...d.styles])}));let a=t.find(i=>i.id===e.id);a?Object.assign(a,e):t.push(e)}u(Q,"insertOrUpdateNode");function le(t){return t?.classes?.join(" ")??""}u(le,"getClassesFromDbInfo");function ce(t){return t?.styles??[]}u(ce,"getStylesFromDbInfo");var Z=u((t,e,s,a,i,d,f,S)=>{let p=e.id,T=s.get(p),E=le(T),_=ce(T),x=w();if(k.info("dataFetcher parsedItem",e,T,_),p!=="root"){let D=mt;e.start===!0?D=Te:e.start===!1&&(D=be),e.type!==tt&&(D=e.type),St.get(p)||St.set(p,{id:p,shape:D,description:G.sanitizeText(p,x),cssClasses:`${E} ${me}`,cssStyles:_});let h=St.get(p);e.description&&(Array.isArray(h.description)?(h.shape=Dt,h.description.push(e.description)):h.description?.length&&h.description.length>0?(h.shape=Dt,h.description===p?h.description=[e.description]:h.description=[h.description,e.description]):(h.shape=mt,h.description=e.description),h.description=G.sanitizeTextOrArray(h.description,x)),h.description?.length===1&&h.shape===Dt&&(h.type==="group"?h.shape=Ht:h.shape=mt),!h.type&&e.doc&&(k.info("Setting cluster for XCX",p,Kt(e)),h.type="group",h.isGroup=!0,h.dir=Kt(e),h.shape=e.type===Qt?jt:Ht,h.cssClasses=`${h.cssClasses} ${Le} ${d?Ne:""}`);let L={labelStyle:"",shape:h.shape,label:h.description,cssClasses:h.cssClasses,cssCompiledStyles:[],cssStyles:h.cssStyles,id:p,dir:h.dir,domId:yt(p,Y),type:h.type,isGroup:h.type==="group",padding:8,rx:10,ry:10,look:f,labelType:"markdown"};if(L.shape===jt&&(L.label=""),t&&t.id!=="root"&&(k.trace("Setting node ",p," to be child of its parent ",t.id),L.parentId=t.id),L.centerLabel=!0,e.note){let v={labelStyle:"",shape:Ee,label:e.note.text,labelType:"markdown",cssClasses:Ae,cssStyles:[],cssCompiledStyles:[],id:p+Re+"-"+Y,domId:yt(p,Y,ne),type:h.type,isGroup:h.type==="group",padding:x.flowchart?.padding,look:f,position:e.note.position},$=p+zt,I={labelStyle:"",shape:ke,label:e.note.text,cssClasses:h.cssClasses,cssStyles:[],id:p+zt,domId:yt(p,Y,ae),type:"group",isGroup:!0,padding:16,look:f,position:e.note.position};Y++,I.id=$,v.parentId=$,Q(a,I,S),Q(a,v,S),Q(a,L,S);let P=p,N=v.id;e.note.position==="left of"&&(P=v.id,N=p),i.push({id:P+"-"+N,start:P,end:N,arrowhead:"none",arrowTypeEnd:"",style:Zt,labelStyle:"",classes:Ce,arrowheadStyle:te,labelpos:ee,labelType:se,thickness:re,look:f})}else Q(a,L,S)}e.doc&&(k.trace("Adding nodes children "),Pe(e,e.doc,s,a,i,!d,f,S))},"dataFetcher"),Be=u(()=>{St.clear(),Y=0},"reset"),A={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},Xt=u(()=>new Map,"newClassesList"),Jt=u(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),pt=u(t=>JSON.parse(JSON.stringify(t)),"clone"),Ke=class{constructor(e){this.version=e,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=Xt(),this.documents={root:Jt()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.getAccTitle=wt,this.setAccTitle=Rt,this.getAccDescription=Pt,this.setAccDescription=$t,this.setDiagramTitle=Bt,this.getDiagramTitle=Ft,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this)}static{u(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(e){this.clear(!0);for(let i of Array.isArray(e)?e:e.doc)switch(i.stmt){case K:this.addState(i.id.trim(),i.type,i.doc,i.description,i.note);break;case Ct:this.addRelation(i.state1,i.state2,i.description);break;case Se:this.addStyleClass(i.id.trim(),i.classes);break;case ye:this.handleStyleDef(i);break;case ge:this.setCssClass(i.id.trim(),i.styleClass);break;case"click":this.addLink(i.id,i.url,i.tooltip);break}let s=this.getStates(),a=w();Be(),Z(void 0,this.getRootDocV2(),s,this.nodes,this.edges,!0,a.look,this.classes);for(let i of this.nodes)if(Array.isArray(i.label)){if(i.description=i.label.slice(1),i.isGroup&&i.description.length>0)throw new Error(`Group nodes can only have label. Remove the additional description for node [${i.id}]`);i.label=i.label[0]}}handleStyleDef(e){let s=e.id.trim().split(","),a=e.styleClass.split(",");for(let i of s){let d=this.getState(i);if(!d){let f=i.trim();this.addState(f),d=this.getState(f)}d&&(d.styles=a.map(f=>f.replace(/;/g,"")?.trim()))}}setRootDoc(e){k.info("Setting root doc",e),this.rootDoc=e,this.version===1?this.extract(e):this.extract(this.getRootDocV2())}docTranslator(e,s,a){if(s.stmt===Ct){this.docTranslator(e,s.state1,!0),this.docTranslator(e,s.state2,!1);return}if(s.stmt===K&&(s.id===A.START_NODE?(s.id=e.id+(a?"_start":"_end"),s.start=a):s.id=s.id.trim()),s.stmt!==z&&s.stmt!==K||!s.doc)return;let i=[],d=[];for(let f of s.doc)if(f.type===Qt){let S=pt(f);S.doc=pt(d),i.push(S),d=[]}else d.push(f);if(i.length>0&&d.length>0){let f={stmt:K,id:Gt(),type:"divider",doc:pt(d)};i.push(pt(f)),s.doc=i}s.doc.forEach(f=>this.docTranslator(s,f,!0))}getRootDocV2(){return this.docTranslator({id:z,stmt:z},{id:z,stmt:z,doc:this.rootDoc},!0),{id:z,doc:this.rootDoc}}addState(e,s=tt,a=void 0,i=void 0,d=void 0,f=void 0,S=void 0,p=void 0){let T=e?.trim();if(!this.currentDocument.states.has(T))k.info("Adding state ",T,i),this.currentDocument.states.set(T,{stmt:K,id:T,descriptions:[],type:s,doc:a,note:d,classes:[],styles:[],textStyles:[]});else{let E=this.currentDocument.states.get(T);if(!E)throw new Error(`State not found: ${T}`);E.doc||(E.doc=a),E.type||(E.type=s)}if(i&&(k.info("Setting state description",T,i),(Array.isArray(i)?i:[i]).forEach(_=>this.addDescription(T,_.trim()))),d){let E=this.currentDocument.states.get(T);if(!E)throw new Error(`State not found: ${T}`);E.note=d,E.note.text=G.sanitizeText(E.note.text,w())}f&&(k.info("Setting state classes",T,f),(Array.isArray(f)?f:[f]).forEach(_=>this.setCssClass(T,_.trim()))),S&&(k.info("Setting state styles",T,S),(Array.isArray(S)?S:[S]).forEach(_=>this.setStyle(T,_.trim()))),p&&(k.info("Setting state styles",T,S),(Array.isArray(p)?p:[p]).forEach(_=>this.setTextStyle(T,_.trim())))}clear(e){this.nodes=[],this.edges=[],this.documents={root:Jt()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=Xt(),e||(this.links=new Map,Ot())}getState(e){return this.currentDocument.states.get(e)}getStates(){return this.currentDocument.states}logDocuments(){k.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(e,s,a){this.links.set(e,{url:s,tooltip:a}),k.warn("Adding link",e,s,a)}getLinks(){return this.links}startIdIfNeeded(e=""){return e===A.START_NODE?(this.startEndCount++,`${A.START_TYPE}${this.startEndCount}`):e}startTypeIfNeeded(e="",s=tt){return e===A.START_NODE?A.START_TYPE:s}endIdIfNeeded(e=""){return e===A.END_NODE?(this.startEndCount++,`${A.END_TYPE}${this.startEndCount}`):e}endTypeIfNeeded(e="",s=tt){return e===A.END_NODE?A.END_TYPE:s}addRelationObjs(e,s,a=""){let i=this.startIdIfNeeded(e.id.trim()),d=this.startTypeIfNeeded(e.id.trim(),e.type),f=this.startIdIfNeeded(s.id.trim()),S=this.startTypeIfNeeded(s.id.trim(),s.type);this.addState(i,d,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.addState(f,S,s.doc,s.description,s.note,s.classes,s.styles,s.textStyles),this.currentDocument.relations.push({id1:i,id2:f,relationTitle:G.sanitizeText(a,w())})}addRelation(e,s,a){if(typeof e=="object"&&typeof s=="object")this.addRelationObjs(e,s,a);else if(typeof e=="string"&&typeof s=="string"){let i=this.startIdIfNeeded(e.trim()),d=this.startTypeIfNeeded(e),f=this.endIdIfNeeded(s.trim()),S=this.endTypeIfNeeded(s);this.addState(i,d),this.addState(f,S),this.currentDocument.relations.push({id1:i,id2:f,relationTitle:a?G.sanitizeText(a,w()):void 0})}}addDescription(e,s){let a=this.currentDocument.states.get(e),i=s.startsWith(":")?s.replace(":","").trim():s;a?.descriptions?.push(G.sanitizeText(i,w()))}cleanupLabel(e){return e.startsWith(":")?e.slice(2).trim():e.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(e,s=""){this.classes.has(e)||this.classes.set(e,{id:e,styles:[],textStyles:[]});let a=this.classes.get(e);s&&a&&s.split(A.STYLECLASS_SEP).forEach(i=>{let d=i.replace(/([^;]*);/,"$1").trim();if(RegExp(A.COLOR_KEYWORD).exec(i)){let S=d.replace(A.FILL_KEYWORD,A.BG_FILL).replace(A.COLOR_KEYWORD,A.FILL_KEYWORD);a.textStyles.push(S)}a.styles.push(d)})}getClasses(){return this.classes}setCssClass(e,s){e.split(",").forEach(a=>{let i=this.getState(a);if(!i){let d=a.trim();this.addState(d),i=this.getState(d)}i?.classes?.push(s)})}setStyle(e,s){this.getState(e)?.styles?.push(s)}setTextStyle(e,s){this.getState(e)?.textStyles?.push(s)}getDirectionStatement(){return this.rootDoc.find(e=>e.stmt===Wt)}getDirection(){return this.getDirectionStatement()?.value??pe}setDirection(e){let s=this.getDirectionStatement();s?s.value=e:this.rootDoc.unshift({stmt:Wt,value:e})}trimColon(e){return e.startsWith(":")?e.slice(1).trim():e.trim()}getData(){let e=w();return{nodes:this.nodes,edges:this.edges,other:{},config:e,direction:oe(this.getRootDocV2())}}getConfig(){return w().state}},Fe=u(t=>` +defs [id$="-barbEnd"] { + fill: ${t.transitionColor}; + stroke: ${t.transitionColor}; + } +g.stateGroup text { + fill: ${t.nodeBorder}; + stroke: none; + font-size: 10px; +} +g.stateGroup text { + fill: ${t.textColor}; + stroke: none; + font-size: 10px; + +} +g.stateGroup .state-title { + font-weight: bolder; + fill: ${t.stateLabelColor}; +} + +g.stateGroup rect { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; +} + +g.stateGroup line { + stroke: ${t.lineColor}; + stroke-width: ${t.strokeWidth||1}; +} + +.transition { + stroke: ${t.transitionColor}; + stroke-width: ${t.strokeWidth||1}; + fill: none; +} + +.stateGroup .composit { + fill: ${t.background}; + border-bottom: 1px +} + +.stateGroup .alt-composit { + fill: #e0e0e0; + border-bottom: 1px +} + +.state-note { + stroke: ${t.noteBorderColor}; + fill: ${t.noteBkgColor}; + + text { + fill: ${t.noteTextColor}; + stroke: none; + font-size: 10px; + } +} + +.stateLabel .box { + stroke: none; + stroke-width: 0; + fill: ${t.mainBkg}; + opacity: 0.5; +} + +.edgeLabel .label rect { + fill: ${t.labelBackgroundColor}; + opacity: 0.5; +} +.edgeLabel { + background-color: ${t.edgeLabelBackground}; + p { + background-color: ${t.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${t.edgeLabelBackground}; + fill: ${t.edgeLabelBackground}; + } + text-align: center; +} +.edgeLabel .label text { + fill: ${t.transitionLabelColor||t.tertiaryTextColor}; +} +.label div .edgeLabel { + color: ${t.transitionLabelColor||t.tertiaryTextColor}; +} + +.stateLabel text { + fill: ${t.stateLabelColor}; + font-size: 10px; + font-weight: bold; +} + +.node circle.state-start { + fill: ${t.specialStateColor}; + stroke: ${t.specialStateColor}; +} + +.node .fork-join { + fill: ${t.specialStateColor}; + stroke: ${t.specialStateColor}; +} + +.node circle.state-end { + fill: ${t.innerEndBackground}; + stroke: ${t.background}; + stroke-width: 1.5 +} +.end-state-inner { + fill: ${t.compositeBackground||t.background}; + // stroke: ${t.background}; + stroke-width: 1.5 +} + +.node rect { + fill: ${t.stateBkg||t.mainBkg}; + stroke: ${t.stateBorder||t.nodeBorder}; + stroke-width: ${t.strokeWidth||1}px; +} +.node polygon { + fill: ${t.mainBkg}; + stroke: ${t.stateBorder||t.nodeBorder};; + stroke-width: ${t.strokeWidth||1}px; +} +[id$="-barbEnd"] { + fill: ${t.lineColor}; +} + +.statediagram-cluster rect { + fill: ${t.compositeTitleBackground}; + stroke: ${t.stateBorder||t.nodeBorder}; + stroke-width: ${t.strokeWidth||1}px; +} + +.cluster-label, .nodeLabel { + color: ${t.stateLabelColor}; + // line-height: 1; +} + +.statediagram-cluster rect.outer { + rx: 5px; + ry: 5px; +} +.statediagram-state .divider { + stroke: ${t.stateBorder||t.nodeBorder}; +} + +.statediagram-state .title-state { + rx: 5px; + ry: 5px; +} +.statediagram-cluster.statediagram-cluster .inner { + fill: ${t.compositeBackground||t.background}; +} +.statediagram-cluster.statediagram-cluster-alt .inner { + fill: ${t.altBackground?t.altBackground:"#efefef"}; +} + +.statediagram-cluster .inner { + rx:0; + ry:0; +} + +.statediagram-state rect.basic { + rx: 5px; + ry: 5px; +} +.statediagram-state rect.divider { + stroke-dasharray: 10,10; + fill: ${t.altBackground?t.altBackground:"#efefef"}; +} + +.note-edge { + stroke-dasharray: 5; +} + +.statediagram-note rect { + fill: ${t.noteBkgColor}; + stroke: ${t.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} +.statediagram-note rect { + fill: ${t.noteBkgColor}; + stroke: ${t.noteBorderColor}; + stroke-width: 1px; + rx: 0; + ry: 0; +} + +.statediagram-note text { + fill: ${t.noteTextColor}; +} + +.statediagram-note .nodeLabel { + color: ${t.noteTextColor}; +} +.statediagram .edgeLabel { + color: red; // ${t.noteTextColor}; +} + +[id$="-dependencyStart"], [id$="-dependencyEnd"] { + fill: ${t.lineColor}; + stroke: ${t.lineColor}; + stroke-width: ${t.strokeWidth||1}; +} + +.statediagramTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.textColor}; +} + +[data-look="neo"].statediagram-cluster rect { + fill: ${t.mainBkg}; + stroke: ${t.useGradient?"url("+t.svgId+"-gradient)":t.stateBorder||t.nodeBorder}; + stroke-width: ${t.strokeWidth??1}; +} +[data-look="neo"].statediagram-cluster rect.outer { + rx: ${t.radius}px; + ry: ${t.radius}px; + filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${t.svgId}-drop-shadow)`):"none"} +} +`,"getStyles"),Xe=Fe;export{He as a,ze as b,Ke as c,Xe as d}; diff --git a/src/google/adk/cli/browser/chunk-OGD5RHV2.js b/src/google/adk/cli/browser/chunk-OGD5RHV2.js new file mode 100644 index 0000000000..131317478c --- /dev/null +++ b/src/google/adk/cli/browser/chunk-OGD5RHV2.js @@ -0,0 +1,10 @@ +import{a as ke,f as Ee}from"./chunk-LT3WOUUJ.js";import{x as ve,y as ee,z as Ct}from"./chunk-UKZIEWH5.js";import{a as Fe}from"./chunk-GP6TCC26.js";import{G as te,M as Yt,N as be,S as ge,T as _e,U as xe,V as me,Y as Ot,o as ye}from"./chunk-37QI3DOO.js";import{a as Dt,g as y,i as $t}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{h as Ue}from"./chunk-RMXJBC7V.js";var Re=Ue(Fe(),1),Ut=(function(){var e=y(function(_t,x,v,k){for(v=v||{},k=_t.length;k--;v[_t[k]]=x);return v},"o"),t=[1,24],n=[1,25],o=[1,26],l=[1,27],s=[1,28],a=[1,63],r=[1,64],i=[1,65],u=[1,66],d=[1,67],p=[1,68],b=[1,69],m=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],rt=[1,46],nt=[1,47],st=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],bt=[1,59],gt=[1,60],wt=[14,42],Wt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Rt=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],E=[1,82],A=[1,83],C=[1,84],w=[1,85],T=[12,14,42],ce=[12,14,33,42],It=[12,14,33,42,76,77,79,80],vt=[12,33],Qt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ht={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:y(function(x,v,k,g,R,h,St){var f=h.length-1;switch(R){case 3:g.setDirection("TB");break;case 4:g.setDirection("BT");break;case 5:g.setDirection("RL");break;case 6:g.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:g.setC4Type(h[f-3]);break;case 19:g.setTitle(h[f].substring(6)),this.$=h[f].substring(6);break;case 20:g.setAccDescription(h[f].substring(15)),this.$=h[f].substring(15);break;case 21:this.$=h[f].trim(),g.setTitle(this.$);break;case 22:case 23:this.$=h[f].trim(),g.setAccDescription(this.$);break;case 28:h[f].splice(2,0,"ENTERPRISE"),g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 29:h[f].splice(2,0,"SYSTEM"),g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 30:g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 31:h[f].splice(2,0,"CONTAINER"),g.addContainerBoundary(...h[f]),this.$=h[f];break;case 32:g.addDeploymentNode("node",...h[f]),this.$=h[f];break;case 33:g.addDeploymentNode("nodeL",...h[f]),this.$=h[f];break;case 34:g.addDeploymentNode("nodeR",...h[f]),this.$=h[f];break;case 35:g.popBoundaryParseStack();break;case 39:g.addPersonOrSystem("person",...h[f]),this.$=h[f];break;case 40:g.addPersonOrSystem("external_person",...h[f]),this.$=h[f];break;case 41:g.addPersonOrSystem("system",...h[f]),this.$=h[f];break;case 42:g.addPersonOrSystem("system_db",...h[f]),this.$=h[f];break;case 43:g.addPersonOrSystem("system_queue",...h[f]),this.$=h[f];break;case 44:g.addPersonOrSystem("external_system",...h[f]),this.$=h[f];break;case 45:g.addPersonOrSystem("external_system_db",...h[f]),this.$=h[f];break;case 46:g.addPersonOrSystem("external_system_queue",...h[f]),this.$=h[f];break;case 47:g.addContainer("container",...h[f]),this.$=h[f];break;case 48:g.addContainer("container_db",...h[f]),this.$=h[f];break;case 49:g.addContainer("container_queue",...h[f]),this.$=h[f];break;case 50:g.addContainer("external_container",...h[f]),this.$=h[f];break;case 51:g.addContainer("external_container_db",...h[f]),this.$=h[f];break;case 52:g.addContainer("external_container_queue",...h[f]),this.$=h[f];break;case 53:g.addComponent("component",...h[f]),this.$=h[f];break;case 54:g.addComponent("component_db",...h[f]),this.$=h[f];break;case 55:g.addComponent("component_queue",...h[f]),this.$=h[f];break;case 56:g.addComponent("external_component",...h[f]),this.$=h[f];break;case 57:g.addComponent("external_component_db",...h[f]),this.$=h[f];break;case 58:g.addComponent("external_component_queue",...h[f]),this.$=h[f];break;case 60:g.addRel("rel",...h[f]),this.$=h[f];break;case 61:g.addRel("birel",...h[f]),this.$=h[f];break;case 62:g.addRel("rel_u",...h[f]),this.$=h[f];break;case 63:g.addRel("rel_d",...h[f]),this.$=h[f];break;case 64:g.addRel("rel_l",...h[f]),this.$=h[f];break;case 65:g.addRel("rel_r",...h[f]),this.$=h[f];break;case 66:g.addRel("rel_b",...h[f]),this.$=h[f];break;case 67:h[f].splice(0,1),g.addRel("rel",...h[f]),this.$=h[f];break;case 68:g.updateElStyle("update_el_style",...h[f]),this.$=h[f];break;case 69:g.updateRelStyle("update_rel_style",...h[f]),this.$=h[f];break;case 70:g.updateLayoutConfig("update_layout_config",...h[f]),this.$=h[f];break;case 71:this.$=[h[f]];break;case 72:h[f].unshift(h[f-1]),this.$=h[f];break;case 73:case 75:this.$=h[f].trim();break;case 74:let kt={};kt[h[f-1].trim()]=h[f].trim(),this.$=kt;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:n,24:o,26:l,28:s,29:49,30:61,32:62,34:a,36:r,37:i,38:u,39:d,40:p,41:b,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:70,19:20,20:21,21:22,22:t,23:n,24:o,26:l,28:s,29:49,30:61,32:62,34:a,36:r,37:i,38:u,39:d,40:p,41:b,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:71,19:20,20:21,21:22,22:t,23:n,24:o,26:l,28:s,29:49,30:61,32:62,34:a,36:r,37:i,38:u,39:d,40:p,41:b,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:72,19:20,20:21,21:22,22:t,23:n,24:o,26:l,28:s,29:49,30:61,32:62,34:a,36:r,37:i,38:u,39:d,40:p,41:b,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:73,19:20,20:21,21:22,22:t,23:n,24:o,26:l,28:s,29:49,30:61,32:62,34:a,36:r,37:i,38:u,39:d,40:p,41:b,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{14:[1,74]},e(wt,[2,13],{43:23,29:49,30:61,32:62,20:75,34:a,36:r,37:i,38:u,39:d,40:p,41:b,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt}),e(wt,[2,14]),e(Wt,[2,16],{12:[1,76]}),e(wt,[2,36],{12:[1,77]}),e(Rt,[2,19]),e(Rt,[2,20]),{25:[1,78]},{27:[1,79]},e(Rt,[2,23]),{35:80,75:81,76:E,77:A,79:C,80:w},{35:86,75:81,76:E,77:A,79:C,80:w},{35:87,75:81,76:E,77:A,79:C,80:w},{35:88,75:81,76:E,77:A,79:C,80:w},{35:89,75:81,76:E,77:A,79:C,80:w},{35:90,75:81,76:E,77:A,79:C,80:w},{35:91,75:81,76:E,77:A,79:C,80:w},{35:92,75:81,76:E,77:A,79:C,80:w},{35:93,75:81,76:E,77:A,79:C,80:w},{35:94,75:81,76:E,77:A,79:C,80:w},{35:95,75:81,76:E,77:A,79:C,80:w},{35:96,75:81,76:E,77:A,79:C,80:w},{35:97,75:81,76:E,77:A,79:C,80:w},{35:98,75:81,76:E,77:A,79:C,80:w},{35:99,75:81,76:E,77:A,79:C,80:w},{35:100,75:81,76:E,77:A,79:C,80:w},{35:101,75:81,76:E,77:A,79:C,80:w},{35:102,75:81,76:E,77:A,79:C,80:w},{35:103,75:81,76:E,77:A,79:C,80:w},{35:104,75:81,76:E,77:A,79:C,80:w},e(T,[2,59]),{35:105,75:81,76:E,77:A,79:C,80:w},{35:106,75:81,76:E,77:A,79:C,80:w},{35:107,75:81,76:E,77:A,79:C,80:w},{35:108,75:81,76:E,77:A,79:C,80:w},{35:109,75:81,76:E,77:A,79:C,80:w},{35:110,75:81,76:E,77:A,79:C,80:w},{35:111,75:81,76:E,77:A,79:C,80:w},{35:112,75:81,76:E,77:A,79:C,80:w},{35:113,75:81,76:E,77:A,79:C,80:w},{35:114,75:81,76:E,77:A,79:C,80:w},{35:115,75:81,76:E,77:A,79:C,80:w},{20:116,29:49,30:61,32:62,34:a,36:r,37:i,38:u,39:d,40:p,41:b,43:23,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{12:[1,118],33:[1,117]},{35:119,75:81,76:E,77:A,79:C,80:w},{35:120,75:81,76:E,77:A,79:C,80:w},{35:121,75:81,76:E,77:A,79:C,80:w},{35:122,75:81,76:E,77:A,79:C,80:w},{35:123,75:81,76:E,77:A,79:C,80:w},{35:124,75:81,76:E,77:A,79:C,80:w},{35:125,75:81,76:E,77:A,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(wt,[2,15]),e(Wt,[2,17],{21:22,19:130,22:t,23:n,24:o,26:l,28:s}),e(wt,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:n,24:o,26:l,28:s,34:a,36:r,37:i,38:u,39:d,40:p,41:b,44:m,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt}),e(Rt,[2,21]),e(Rt,[2,22]),e(T,[2,39]),e(ce,[2,71],{75:81,35:132,76:E,77:A,79:C,80:w}),e(It,[2,73]),{78:[1,133]},e(It,[2,75]),e(It,[2,76]),e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(T,[2,43]),e(T,[2,44]),e(T,[2,45]),e(T,[2,46]),e(T,[2,47]),e(T,[2,48]),e(T,[2,49]),e(T,[2,50]),e(T,[2,51]),e(T,[2,52]),e(T,[2,53]),e(T,[2,54]),e(T,[2,55]),e(T,[2,56]),e(T,[2,57]),e(T,[2,58]),e(T,[2,60]),e(T,[2,61]),e(T,[2,62]),e(T,[2,63]),e(T,[2,64]),e(T,[2,65]),e(T,[2,66]),e(T,[2,67]),e(T,[2,68]),e(T,[2,69]),e(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(vt,[2,28]),e(vt,[2,29]),e(vt,[2,30]),e(vt,[2,31]),e(vt,[2,32]),e(vt,[2,33]),e(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(Wt,[2,18]),e(wt,[2,38]),e(ce,[2,72]),e(It,[2,74]),e(T,[2,24]),e(T,[2,35]),e(Qt,[2,25]),e(Qt,[2,26],{12:[1,138]}),e(Qt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:y(function(x,v){if(v.recoverable)this.trace(x);else{var k=new Error(x);throw k.hash=v,k}},"parseError"),parse:y(function(x){var v=this,k=[0],g=[],R=[null],h=[],St=this.table,f="",kt=0,he=0,ue=0,Le=2,de=1,Ne=h.slice.call(arguments,1),D=Object.create(this.lexer),Et={yy:{}};for(var qt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,qt)&&(Et.yy[qt]=this.yy[qt]);D.setInput(x,Et.yy),Et.yy.lexer=D,Et.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var Gt=D.yylloc;h.push(Gt);var Ye=D.options&&D.options.ranges;typeof Et.yy.parseError=="function"?this.parseError=Et.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function je(L){k.length=k.length-2*L,R.length=R.length-L,h.length=h.length-L}y(je,"popStack");function fe(){var L;return L=g.pop()||D.lex()||de,typeof L!="number"&&(L instanceof Array&&(g=L,L=g.pop()),L=v.symbols_[L]||L),L}y(fe,"lex");for(var B,Kt,At,N,I0,Jt,Tt={},Lt,W,pe,Nt;;){if(At=k[k.length-1],this.defaultActions[At]?N=this.defaultActions[At]:((B===null||typeof B>"u")&&(B=fe()),N=St[At]&&St[At][B]),typeof N>"u"||!N.length||!N[0]){var Zt="";Nt=[];for(Lt in St[At])this.terminals_[Lt]&&Lt>Le&&Nt.push("'"+this.terminals_[Lt]+"'");D.showPosition?Zt="Parse error on line "+(kt+1)+`: +`+D.showPosition()+` +Expecting `+Nt.join(", ")+", got '"+(this.terminals_[B]||B)+"'":Zt="Parse error on line "+(kt+1)+": Unexpected "+(B==de?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(Zt,{text:D.match,token:this.terminals_[B]||B,line:D.yylineno,loc:Gt,expected:Nt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+At+", token: "+B);switch(N[0]){case 1:k.push(B),R.push(D.yytext),h.push(D.yylloc),k.push(N[1]),B=null,Kt?(B=Kt,Kt=null):(he=D.yyleng,f=D.yytext,kt=D.yylineno,Gt=D.yylloc,ue>0&&ue--);break;case 2:if(W=this.productions_[N[1]][1],Tt.$=R[R.length-W],Tt._$={first_line:h[h.length-(W||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(W||1)].first_column,last_column:h[h.length-1].last_column},Ye&&(Tt._$.range=[h[h.length-(W||1)].range[0],h[h.length-1].range[1]]),Jt=this.performAction.apply(Tt,[f,he,kt,Et.yy,N[1],R,h].concat(Ne)),typeof Jt<"u")return Jt;W&&(k=k.slice(0,-1*W*2),R=R.slice(0,-1*W),h=h.slice(0,-1*W)),k.push(this.productions_[N[1]][0]),R.push(Tt.$),h.push(Tt._$),pe=St[k[k.length-2]][k[k.length-1]],k.push(pe);break;case 3:return!0}}return!0},"parse")},Me=(function(){var _t={EOF:1,parseError:y(function(v,k){if(this.yy.parser)this.yy.parser.parseError(v,k);else throw new Error(v)},"parseError"),setInput:y(function(x,v){return this.yy=v||this.yy||{},this._input=x,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:y(function(){var x=this._input[0];this.yytext+=x,this.yyleng++,this.offset++,this.match+=x,this.matched+=x;var v=x.match(/(?:\r\n?|\n).*/g);return v?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),x},"input"),unput:y(function(x){var v=x.length,k=x.split(/(?:\r\n?|\n)/g);this._input=x+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-v),this.offset-=v;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),k.length-1&&(this.yylineno-=k.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:k?(k.length===g.length?this.yylloc.first_column:0)+g[g.length-k.length].length-k[0].length:this.yylloc.first_column-v},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-v]),this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(x){this.unput(this.match.slice(x))},"less"),pastInput:y(function(){var x=this.matched.substr(0,this.matched.length-this.match.length);return(x.length>20?"...":"")+x.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var x=this.match;return x.length<20&&(x+=this._input.substr(0,20-x.length)),(x.substr(0,20)+(x.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var x=this.pastInput(),v=new Array(x.length+1).join("-");return x+this.upcomingInput()+` +`+v+"^"},"showPosition"),test_match:y(function(x,v){var k,g,R;if(this.options.backtrack_lexer&&(R={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(R.yylloc.range=this.yylloc.range.slice(0))),g=x[0].match(/(?:\r\n?|\n).*/g),g&&(this.yylineno+=g.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+x[0].length},this.yytext+=x[0],this.match+=x[0],this.matches=x,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(x[0].length),this.matched+=x[0],k=this.performAction.call(this,this.yy,this,v,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),k)return k;if(this._backtrack){for(var h in R)this[h]=R[h];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var x,v,k,g;this._more||(this.yytext="",this.match="");for(var R=this._currentRules(),h=0;hv[0].length)){if(v=k,g=h,this.options.backtrack_lexer){if(x=this.test_match(k,R[h]),x!==!1)return x;if(this._backtrack){v=!1;continue}else return!1}else if(!this.options.flex)break}return v?(x=this.test_match(v,R[g]),x!==!1?x:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var v=this.next();return v||this.lex()},"lex"),begin:y(function(v){this.conditionStack.push(v)},"begin"),popState:y(function(){var v=this.conditionStack.length-1;return v>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:y(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(v){return v=this.conditionStack.length-1-Math.abs(v||0),v>=0?this.conditionStack[v]:"INITIAL"},"topState"),pushState:y(function(v){this.begin(v)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(v,k,g,R){var h=R;switch(g){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[65,66,67,68],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return _t})();Ht.lexer=Me;function Mt(){this.yy={}}return y(Mt,"Parser"),Mt.prototype=Ht,Ht.Parser=Mt,new Mt})();Ut.parser=Ut;var Ve=Ut,V=[],xt=[""],I="global",F="",X=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Bt=[],ne="",se=!1,Ft=4,Vt=2,we,ze=y(function(){return we},"getC4Type"),Xe=y(function(e){we=te(e,Ot())},"setC4Type"),We=y(function(e,t,n,o,l,s,a,r,i){if(e==null||t===void 0||t===null||n===void 0||n===null||o===void 0||o===null)return;let u={},d=Bt.find(p=>p.from===t&&p.to===n);if(d?u=d:Bt.push(u),u.type=e,u.from=t,u.to=n,u.label={text:o},l==null)u.techn={text:""};else if(typeof l=="object"){let[p,b]=Object.entries(l)[0];u[p]={text:b}}else u.techn={text:l};if(s==null)u.descr={text:""};else if(typeof s=="object"){let[p,b]=Object.entries(s)[0];u[p]={text:b}}else u.descr={text:s};if(typeof a=="object"){let[p,b]=Object.entries(a)[0];u[p]=b}else u.sprite=a;if(typeof r=="object"){let[p,b]=Object.entries(r)[0];u[p]=b}else u.tags=r;if(typeof i=="object"){let[p,b]=Object.entries(i)[0];u[p]=b}else u.link=i;u.wrap=mt()},"addRel"),Qe=y(function(e,t,n,o,l,s,a){if(t===null||n===null)return;let r={},i=V.find(u=>u.alias===t);if(i&&t===i.alias?r=i:(r.alias=t,V.push(r)),n==null?r.label={text:""}:r.label={text:n},o==null)r.descr={text:""};else if(typeof o=="object"){let[u,d]=Object.entries(o)[0];r[u]={text:d}}else r.descr={text:o};if(typeof l=="object"){let[u,d]=Object.entries(l)[0];r[u]=d}else r.sprite=l;if(typeof s=="object"){let[u,d]=Object.entries(s)[0];r[u]=d}else r.tags=s;if(typeof a=="object"){let[u,d]=Object.entries(a)[0];r[u]=d}else r.link=a;r.typeC4Shape={text:e},r.parentBoundary=I,r.wrap=mt()},"addPersonOrSystem"),He=y(function(e,t,n,o,l,s,a,r){if(t===null||n===null)return;let i={},u=V.find(d=>d.alias===t);if(u&&t===u.alias?i=u:(i.alias=t,V.push(i)),n==null?i.label={text:""}:i.label={text:n},o==null)i.techn={text:""};else if(typeof o=="object"){let[d,p]=Object.entries(o)[0];i[d]={text:p}}else i.techn={text:o};if(l==null)i.descr={text:""};else if(typeof l=="object"){let[d,p]=Object.entries(l)[0];i[d]={text:p}}else i.descr={text:l};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];i[d]=p}else i.sprite=s;if(typeof a=="object"){let[d,p]=Object.entries(a)[0];i[d]=p}else i.tags=a;if(typeof r=="object"){let[d,p]=Object.entries(r)[0];i[d]=p}else i.link=r;i.wrap=mt(),i.typeC4Shape={text:e},i.parentBoundary=I},"addContainer"),qe=y(function(e,t,n,o,l,s,a,r){if(t===null||n===null)return;let i={},u=V.find(d=>d.alias===t);if(u&&t===u.alias?i=u:(i.alias=t,V.push(i)),n==null?i.label={text:""}:i.label={text:n},o==null)i.techn={text:""};else if(typeof o=="object"){let[d,p]=Object.entries(o)[0];i[d]={text:p}}else i.techn={text:o};if(l==null)i.descr={text:""};else if(typeof l=="object"){let[d,p]=Object.entries(l)[0];i[d]={text:p}}else i.descr={text:l};if(typeof s=="object"){let[d,p]=Object.entries(s)[0];i[d]=p}else i.sprite=s;if(typeof a=="object"){let[d,p]=Object.entries(a)[0];i[d]=p}else i.tags=a;if(typeof r=="object"){let[d,p]=Object.entries(r)[0];i[d]=p}else i.link=r;i.wrap=mt(),i.typeC4Shape={text:e},i.parentBoundary=I},"addComponent"),Ge=y(function(e,t,n,o,l){if(e===null||t===null)return;let s={},a=X.find(r=>r.alias===e);if(a&&e===a.alias?s=a:(s.alias=e,X.push(s)),t==null?s.label={text:""}:s.label={text:t},n==null)s.type={text:"system"};else if(typeof n=="object"){let[r,i]=Object.entries(n)[0];s[r]={text:i}}else s.type={text:n};if(typeof o=="object"){let[r,i]=Object.entries(o)[0];s[r]=i}else s.tags=o;if(typeof l=="object"){let[r,i]=Object.entries(l)[0];s[r]=i}else s.link=l;s.parentBoundary=I,s.wrap=mt(),F=I,I=e,xt.push(F)},"addPersonOrSystemBoundary"),Ke=y(function(e,t,n,o,l){if(e===null||t===null)return;let s={},a=X.find(r=>r.alias===e);if(a&&e===a.alias?s=a:(s.alias=e,X.push(s)),t==null?s.label={text:""}:s.label={text:t},n==null)s.type={text:"container"};else if(typeof n=="object"){let[r,i]=Object.entries(n)[0];s[r]={text:i}}else s.type={text:n};if(typeof o=="object"){let[r,i]=Object.entries(o)[0];s[r]=i}else s.tags=o;if(typeof l=="object"){let[r,i]=Object.entries(l)[0];s[r]=i}else s.link=l;s.parentBoundary=I,s.wrap=mt(),F=I,I=e,xt.push(F)},"addContainerBoundary"),Je=y(function(e,t,n,o,l,s,a,r){if(t===null||n===null)return;let i={},u=X.find(d=>d.alias===t);if(u&&t===u.alias?i=u:(i.alias=t,X.push(i)),n==null?i.label={text:""}:i.label={text:n},o==null)i.type={text:"node"};else if(typeof o=="object"){let[d,p]=Object.entries(o)[0];i[d]={text:p}}else i.type={text:o};if(l==null)i.descr={text:""};else if(typeof l=="object"){let[d,p]=Object.entries(l)[0];i[d]={text:p}}else i.descr={text:l};if(typeof a=="object"){let[d,p]=Object.entries(a)[0];i[d]=p}else i.tags=a;if(typeof r=="object"){let[d,p]=Object.entries(r)[0];i[d]=p}else i.link=r;i.nodeType=e,i.parentBoundary=I,i.wrap=mt(),F=I,I=t,xt.push(F)},"addDeploymentNode"),Ze=y(function(){I=F,xt.pop(),F=xt.pop(),xt.push(F)},"popBoundaryParseStack"),$e=y(function(e,t,n,o,l,s,a,r,i,u,d){let p=V.find(b=>b.alias===t);if(!(p===void 0&&(p=X.find(b=>b.alias===t),p===void 0))){if(n!=null)if(typeof n=="object"){let[b,m]=Object.entries(n)[0];p[b]=m}else p.bgColor=n;if(o!=null)if(typeof o=="object"){let[b,m]=Object.entries(o)[0];p[b]=m}else p.fontColor=o;if(l!=null)if(typeof l=="object"){let[b,m]=Object.entries(l)[0];p[b]=m}else p.borderColor=l;if(s!=null)if(typeof s=="object"){let[b,m]=Object.entries(s)[0];p[b]=m}else p.shadowing=s;if(a!=null)if(typeof a=="object"){let[b,m]=Object.entries(a)[0];p[b]=m}else p.shape=a;if(r!=null)if(typeof r=="object"){let[b,m]=Object.entries(r)[0];p[b]=m}else p.sprite=r;if(i!=null)if(typeof i=="object"){let[b,m]=Object.entries(i)[0];p[b]=m}else p.techn=i;if(u!=null)if(typeof u=="object"){let[b,m]=Object.entries(u)[0];p[b]=m}else p.legendText=u;if(d!=null)if(typeof d=="object"){let[b,m]=Object.entries(d)[0];p[b]=m}else p.legendSprite=d}},"updateElStyle"),t0=y(function(e,t,n,o,l,s,a){let r=Bt.find(i=>i.from===t&&i.to===n);if(r!==void 0){if(o!=null)if(typeof o=="object"){let[i,u]=Object.entries(o)[0];r[i]=u}else r.textColor=o;if(l!=null)if(typeof l=="object"){let[i,u]=Object.entries(l)[0];r[i]=u}else r.lineColor=l;if(s!=null)if(typeof s=="object"){let[i,u]=Object.entries(s)[0];r[i]=parseInt(u)}else r.offsetX=parseInt(s);if(a!=null)if(typeof a=="object"){let[i,u]=Object.entries(a)[0];r[i]=parseInt(u)}else r.offsetY=parseInt(a)}},"updateRelStyle"),e0=y(function(e,t,n){let o=Ft,l=Vt;if(typeof t=="object"){let s=Object.values(t)[0];o=parseInt(s)}else o=parseInt(t);if(typeof n=="object"){let s=Object.values(n)[0];l=parseInt(s)}else l=parseInt(n);o>=1&&(Ft=o),l>=1&&(Vt=l)},"updateLayoutConfig"),a0=y(function(){return Ft},"getC4ShapeInRow"),i0=y(function(){return Vt},"getC4BoundaryInRow"),r0=y(function(){return I},"getCurrentBoundaryParse"),n0=y(function(){return F},"getParentBoundaryParse"),Te=y(function(e){return e==null?V:V.filter(t=>t.parentBoundary===e)},"getC4ShapeArray"),s0=y(function(e){return V.find(t=>t.alias===e)},"getC4Shape"),l0=y(function(e){return Object.keys(Te(e))},"getC4ShapeKeys"),Oe=y(function(e){return e==null?X:X.filter(t=>t.parentBoundary===e)},"getBoundaries"),o0=Oe,c0=y(function(){return Bt},"getRels"),h0=y(function(){return ne},"getTitle"),u0=y(function(e){se=e},"setWrap"),mt=y(function(){return se},"autoWrap"),d0=y(function(){V=[],X=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],F="",I="global",xt=[""],Bt=[],xt=[""],ne="",se=!1,Ft=4,Vt=2},"clear"),f0={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},p0={FILLED:0,OPEN:1},y0={LEFTOF:0,RIGHTOF:1,OVER:2},b0=y(function(e){ne=te(e,Ot())},"setTitle"),ae={addPersonOrSystem:Qe,addPersonOrSystemBoundary:Ge,addContainer:He,addContainerBoundary:Ke,addComponent:qe,addDeploymentNode:Je,popBoundaryParseStack:Ze,addRel:We,updateElStyle:$e,updateRelStyle:t0,updateLayoutConfig:e0,autoWrap:mt,setWrap:u0,getC4ShapeArray:Te,getC4Shape:s0,getC4ShapeKeys:l0,getBoundaries:Oe,getBoundarys:o0,getCurrentBoundaryParse:r0,getParentBoundaryParse:n0,getRels:c0,getTitle:h0,getC4Type:ze,getC4ShapeInRow:a0,getC4BoundaryInRow:i0,setAccTitle:ge,getAccTitle:_e,getAccDescription:me,setAccDescription:xe,getConfig:y(()=>Ot().c4,"getConfig"),clear:d0,LINETYPE:f0,ARROWTYPE:p0,PLACEMENT:y0,setTitle:b0,setC4Type:Xe},le=y(function(e,t){return ke(e,t)},"drawRect"),Se=y(function(e,t,n,o,l,s){let a=e.append("image");a.attr("width",t),a.attr("height",n),a.attr("x",o),a.attr("y",l);let r=s.startsWith("data:image/png;base64")?s:(0,Re.sanitizeUrl)(s);a.attr("xlink:href",r)},"drawImage"),g0=y((e,t,n,o)=>{let l=e.append("g"),s=0;for(let a of t){let r=a.textColor?a.textColor:"#444444",i=a.lineColor?a.lineColor:"#444444",u=a.offsetX?parseInt(a.offsetX):0,d=a.offsetY?parseInt(a.offsetY):0,p="";if(s===0){let m=l.append("line");m.attr("x1",a.startPoint.x),m.attr("y1",a.startPoint.y),m.attr("x2",a.endPoint.x),m.attr("y2",a.endPoint.y),m.attr("stroke-width","1"),m.attr("stroke",i),m.style("fill","none"),a.type!=="rel_b"&&m.attr("marker-end","url("+p+"#"+o+"-arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&m.attr("marker-start","url("+p+"#"+o+"-arrowend)"),s=-1}else{let m=l.append("path");m.attr("fill","none").attr("stroke-width","1").attr("stroke",i).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&m.attr("marker-end","url("+p+"#"+o+"-arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&m.attr("marker-start","url("+p+"#"+o+"-arrowend)")}let b=n.messageFont();Q(n)(a.label.text,l,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+d,a.label.width,a.label.height,{fill:r},b),a.techn&&a.techn.text!==""&&(b=n.messageFont(),Q(n)("["+a.techn.text+"]",l,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+u,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+n.messageFontSize+5+d,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:r,"font-style":"italic"},b))}},"drawRels"),_0=y(function(e,t,n){let o=e.append("g"),l=t.bgColor?t.bgColor:"none",s=t.borderColor?t.borderColor:"#444444",a=t.fontColor?t.fontColor:"black",r={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};t.nodeType&&(r={"stroke-width":1});let i={x:t.x,y:t.y,fill:l,stroke:s,width:t.width,height:t.height,rx:2.5,ry:2.5,attrs:r};le(o,i);let u=n.boundaryFont();u.fontWeight="bold",u.fontSize=u.fontSize+2,u.fontColor=a,Q(n)(t.label.text,o,t.x,t.y+t.label.Y,t.width,t.height,{fill:"#444444"},u),t.type&&t.type.text!==""&&(u=n.boundaryFont(),u.fontColor=a,Q(n)(t.type.text,o,t.x,t.y+t.type.Y,t.width,t.height,{fill:"#444444"},u)),t.descr&&t.descr.text!==""&&(u=n.boundaryFont(),u.fontSize=u.fontSize-2,u.fontColor=a,Q(n)(t.descr.text,o,t.x,t.y+t.descr.Y,t.width,t.height,{fill:"#444444"},u))},"drawBoundary"),x0=y(function(e,t,n){let o=t.bgColor?t.bgColor:n[t.typeC4Shape.text+"_bg_color"],l=t.borderColor?t.borderColor:n[t.typeC4Shape.text+"_border_color"],s=t.fontColor?t.fontColor:"#FFFFFF",a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(t.typeC4Shape.text){case"person":a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let r=e.append("g");r.attr("class","person-man");let i=Ee();switch(t.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":i.x=t.x,i.y=t.y,i.fill=o,i.width=t.width,i.height=t.height,i.stroke=l,i.rx=2.5,i.ry=2.5,i.attrs={"stroke-width":.5},le(r,i);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":r.append("path").attr("fill",o).attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2).replaceAll("height",t.height)),r.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":r.append("path").attr("fill",o).attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("width",t.width).replaceAll("half",t.height/2)),r.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",t.x+t.width).replaceAll("starty",t.y).replaceAll("half",t.height/2));break}let u=T0(n,t.typeC4Shape.text);switch(r.append("text").attr("fill",s).attr("font-family",u.fontFamily).attr("font-size",u.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",t.typeC4Shape.width).attr("x",t.x+t.width/2-t.typeC4Shape.width/2).attr("y",t.y+t.typeC4Shape.Y).text("<<"+t.typeC4Shape.text+">>"),t.typeC4Shape.text){case"person":case"external_person":Se(r,48,48,t.x+t.width/2-24,t.y+t.image.Y,a);break}let d=n[t.typeC4Shape.text+"Font"]();return d.fontWeight="bold",d.fontSize=d.fontSize+2,d.fontColor=s,Q(n)(t.label.text,r,t.x,t.y+t.label.Y,t.width,t.height,{fill:s},d),d=n[t.typeC4Shape.text+"Font"](),d.fontColor=s,t.techn&&t.techn?.text!==""?Q(n)(t.techn.text,r,t.x,t.y+t.techn.Y,t.width,t.height,{fill:s,"font-style":"italic"},d):t.type&&t.type.text!==""&&Q(n)(t.type.text,r,t.x,t.y+t.type.Y,t.width,t.height,{fill:s,"font-style":"italic"},d),t.descr&&t.descr.text!==""&&(d=n.personFont(),d.fontColor=s,Q(n)(t.descr.text,r,t.x,t.y+t.descr.Y,t.width,t.height,{fill:s},d)),t.height},"drawC4Shape"),m0=y(function(e,t){e.append("defs").append("symbol").attr("id",t+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),v0=y(function(e,t){e.append("defs").append("symbol").attr("id",t+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),k0=y(function(e,t){e.append("defs").append("symbol").attr("id",t+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),E0=y(function(e,t){e.append("defs").append("marker").attr("id",t+"-arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),A0=y(function(e,t){e.append("defs").append("marker").attr("id",t+"-arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),C0=y(function(e,t){e.append("defs").append("marker").attr("id",t+"-filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),w0=y(function(e,t){let o=e.append("defs").append("marker").attr("id",t+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);o.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),o.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),T0=y((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"getC4ShapeFont"),Q=(function(){function e(l,s,a,r,i,u,d){let p=s.append("text").attr("x",a+i/2).attr("y",r+u/2+5).style("text-anchor","middle").text(l);o(p,d)}y(e,"byText");function t(l,s,a,r,i,u,d,p){let{fontSize:b,fontFamily:m,fontWeight:O}=p,S=l.split(Yt.lineBreakRegex);for(let P=0;P=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>De)&&(t=this.nextData.startx+e.margin+_.nextLinePaddingX,o=this.nextData.stopy+e.margin*2,this.nextData.stopx=n=t+e.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=l=o+e.height,this.nextData.cnt=1),e.x=t,e.y=o,this.updateVal(this.data,"startx",t,Math.min),this.updateVal(this.data,"starty",o,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",l,Math.max),this.updateVal(this.nextData,"startx",t,Math.min),this.updateVal(this.nextData,"starty",o,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",l,Math.max)}init(e){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},re(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},re=y(function(e){ye(_,e),e.fontFamily&&(_.personFontFamily=_.systemFontFamily=_.messageFontFamily=e.fontFamily),e.fontSize&&(_.personFontSize=_.systemFontSize=_.messageFontSize=e.fontSize),e.fontWeight&&(_.personFontWeight=_.systemFontWeight=_.messageFontWeight=e.fontWeight)},"setConf"),Pt=y((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"c4ShapeFont"),jt=y(e=>({fontFamily:e.boundaryFontFamily,fontSize:e.boundaryFontSize,fontWeight:e.boundaryFontWeight}),"boundaryFont"),O0=y(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont");function j(e,t,n,o,l){if(!t[e].width)if(n)t[e].text=ve(t[e].text,l,o),t[e].textLines=t[e].text.split(Yt.lineBreakRegex).length,t[e].width=l,t[e].height=ee(t[e].text,o);else{let s=t[e].text.split(Yt.lineBreakRegex);t[e].textLines=s.length;let a=0;t[e].height=0,t[e].width=0;for(let r of s)t[e].width=Math.max(Ct(r,o),t[e].width),a=ee(r,o),t[e].height=t[e].height+a}}y(j,"calcC4ShapeTextWH");var Be=y(function(e,t,n){t.x=n.data.startx,t.y=n.data.starty,t.width=n.data.stopx-n.data.startx,t.height=n.data.stopy-n.data.starty,t.label.y=_.c4ShapeMargin-35;let o=t.wrap&&_.wrap,l=jt(_);l.fontSize=l.fontSize+2,l.fontWeight="bold";let s=Ct(t.label.text,l);j("label",t,o,l,s),z.drawBoundary(e,t,_)},"drawBoundary"),Ie=y(function(e,t,n,o){let l=0;for(let s of o){l=0;let a=n[s],r=Pt(_,a.typeC4Shape.text);switch(r.fontSize=r.fontSize-2,a.typeC4Shape.width=Ct("\xAB"+a.typeC4Shape.text+"\xBB",r),a.typeC4Shape.height=r.fontSize+2,a.typeC4Shape.Y=_.c4ShapePadding,l=a.typeC4Shape.Y+a.typeC4Shape.height-4,a.image={width:0,height:0,Y:0},a.typeC4Shape.text){case"person":case"external_person":a.image.width=48,a.image.height=48,a.image.Y=l,l=a.image.Y+a.image.height;break}a.sprite&&(a.image.width=48,a.image.height=48,a.image.Y=l,l=a.image.Y+a.image.height);let i=a.wrap&&_.wrap,u=_.width-_.c4ShapePadding*2,d=Pt(_,a.typeC4Shape.text);if(d.fontSize=d.fontSize+2,d.fontWeight="bold",j("label",a,i,d,u),a.label.Y=l+8,l=a.label.Y+a.label.height,a.type&&a.type.text!==""){a.type.text="["+a.type.text+"]";let m=Pt(_,a.typeC4Shape.text);j("type",a,i,m,u),a.type.Y=l+5,l=a.type.Y+a.type.height}else if(a.techn&&a.techn.text!==""){a.techn.text="["+a.techn.text+"]";let m=Pt(_,a.techn.text);j("techn",a,i,m,u),a.techn.Y=l+5,l=a.techn.Y+a.techn.height}let p=l,b=a.label.width;if(a.descr&&a.descr.text!==""){let m=Pt(_,a.typeC4Shape.text);j("descr",a,i,m,u),a.descr.Y=l+20,l=a.descr.Y+a.descr.height,b=Math.max(a.label.width,a.descr.width),p=l-a.descr.textLines*5}b=b+_.c4ShapePadding,a.width=Math.max(a.width||_.width,b,_.width),a.height=Math.max(a.height||_.height,p,_.height),a.margin=a.margin||_.c4ShapeMargin,e.insert(a),z.drawC4Shape(t,a,_)}e.bumpLastMargin(_.c4ShapeMargin)},"drawC4ShapeArray"),Y=class{static{y(this,"Point")}constructor(e,t){this.x=e,this.y=t}},Ae=y(function(e,t){let n=e.x,o=e.y,l=t.x,s=t.y,a=n+e.width/2,r=o+e.height/2,i=Math.abs(n-l),u=Math.abs(o-s),d=u/i,p=e.height/e.width,b=null;return o==s&&nl?b=new Y(n,r):n==l&&os&&(b=new Y(a,o)),n>l&&o=d?b=new Y(n,r+d*e.width/2):b=new Y(a-i/u*e.height/2,o+e.height):n=d?b=new Y(n+e.width,r+d*e.width/2):b=new Y(a+i/u*e.height/2,o+e.height):ns?p>=d?b=new Y(n+e.width,r-d*e.width/2):b=new Y(a+e.height/2*i/u,o):n>l&&o>s&&(p>=d?b=new Y(n,r-e.width/2*d):b=new Y(a-e.height/2*i/u,o)),b},"getIntersectPoint"),R0=y(function(e,t){let n={x:0,y:0};n.x=t.x+t.width/2,n.y=t.y+t.height/2;let o=Ae(e,n);n.x=e.x+e.width/2,n.y=e.y+e.height/2;let l=Ae(t,n);return{startPoint:o,endPoint:l}},"getIntersectPoints"),S0=y(function(e,t,n,o,l){let s=0;for(let a of t){s=s+1;let r=a.wrap&&_.wrap,i=O0(_);o.db.getC4Type()==="C4Dynamic"&&(a.label.text=s+": "+a.label.text);let d=Ct(a.label.text,i);j("label",a,r,i,d),a.techn&&a.techn.text!==""&&(d=Ct(a.techn.text,i),j("techn",a,r,i,d)),a.descr&&a.descr.text!==""&&(d=Ct(a.descr.text,i),j("descr",a,r,i,d));let p=n(a.from),b=n(a.to),m=R0(p,b);a.startPoint=m.startPoint,a.endPoint=m.endPoint}z.drawRels(e,t,_,l)},"drawRels");function oe(e,t,n,o,l){let s=new Pe(l);s.data.widthLimit=n.data.widthLimit/Math.min(ie,o.length);for(let[a,r]of o.entries()){let i=0;r.image={width:0,height:0,Y:0},r.sprite&&(r.image.width=48,r.image.height=48,r.image.Y=i,i=r.image.Y+r.image.height);let u=r.wrap&&_.wrap,d=jt(_);if(d.fontSize=d.fontSize+2,d.fontWeight="bold",j("label",r,u,d,s.data.widthLimit),r.label.Y=i+8,i=r.label.Y+r.label.height,r.type&&r.type.text!==""){r.type.text="["+r.type.text+"]";let O=jt(_);j("type",r,u,O,s.data.widthLimit),r.type.Y=i+5,i=r.type.Y+r.type.height}if(r.descr&&r.descr.text!==""){let O=jt(_);O.fontSize=O.fontSize-2,j("descr",r,u,O,s.data.widthLimit),r.descr.Y=i+20,i=r.descr.Y+r.descr.height}if(a==0||a%ie===0){let O=n.data.startx+_.diagramMarginX,S=n.data.stopy+_.diagramMarginY+i;s.setData(O,O,S,S)}else{let O=s.data.stopx!==s.data.startx?s.data.stopx+_.diagramMarginX:s.data.startx,S=s.data.starty;s.setData(O,O,S,S)}s.name=r.alias;let p=l.db.getC4ShapeArray(r.alias),b=l.db.getC4ShapeKeys(r.alias);b.length>0&&Ie(s,e,p,b),t=r.alias;let m=l.db.getBoundaries(t);m.length>0&&oe(e,t,s,m,l),r.alias!=="global"&&Be(e,r,s),n.data.stopy=Math.max(s.data.stopy+_.c4ShapeMargin,n.data.stopy),n.data.stopx=Math.max(s.data.stopx+_.c4ShapeMargin,n.data.stopx),zt=Math.max(zt,n.data.stopx),Xt=Math.max(Xt,n.data.stopy)}}y(oe,"drawInsideBoundary");var D0=y(function(e,t,n,o){_=Ot().c4;let l=Ot().securityLevel,s;l==="sandbox"&&(s=Dt("#i"+t));let a=l==="sandbox"?Dt(s.nodes()[0].contentDocument.body):Dt("body"),r=o.db;o.db.setWrap(_.wrap),De=r.getC4ShapeInRow(),ie=r.getC4BoundaryInRow(),$t.debug(`C:${JSON.stringify(_,null,2)}`);let i=l==="sandbox"?a.select(`[id="${t}"]`):Dt(`[id="${t}"]`);z.insertComputerIcon(i,t),z.insertDatabaseIcon(i,t),z.insertClockIcon(i,t);let u=new Pe(o);u.setData(_.diagramMarginX,_.diagramMarginX,_.diagramMarginY,_.diagramMarginY),u.data.widthLimit=screen.availWidth,zt=_.diagramMarginX,Xt=_.diagramMarginY;let d=o.db.getTitle(),p=o.db.getBoundaries("");oe(i,"",u,p,o),z.insertArrowHead(i,t),z.insertArrowEnd(i,t),z.insertArrowCrossHead(i,t),z.insertArrowFilledHead(i,t),S0(i,o.db.getRels(),o.db.getC4Shape,o,t),u.data.stopx=zt,u.data.stopy=Xt;let b=u.data,O=b.stopy-b.starty+2*_.diagramMarginY,P=b.stopx-b.startx+2*_.diagramMarginX;d&&i.append("text").text(d).attr("x",(b.stopx-b.startx)/2-4*_.diagramMarginX).attr("y",b.starty+_.diagramMarginY),be(i,O,P,_.useMaxWidth);let M=d?60:0;i.attr("viewBox",b.startx-_.diagramMarginX+" -"+(_.diagramMarginY+M)+" "+P+" "+(O+M)),$t.debug("models:",b)},"draw"),Ce={drawPersonOrSystemArray:Ie,drawBoundary:Be,setConf:re,draw:D0},P0=y(e=>`.person { + stroke: ${e.personBorder}; + fill: ${e.personBkg}; + } +`,"getStyles"),B0=P0,U0={parser:Ve,db:ae,renderer:Ce,styles:B0,init:y(({c4:e,wrap:t})=>{Ce.setConf(e),ae.setWrap(t)},"init")};export{U0 as diagram}; diff --git a/src/google/adk/cli/browser/chunk-OUY2PG7F.js b/src/google/adk/cli/browser/chunk-OUY2PG7F.js new file mode 100644 index 0000000000..4f248d3e12 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-OUY2PG7F.js @@ -0,0 +1 @@ +import{a as r,b as e}from"./chunk-7BGAJP6A.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{r as GitGraphModule,e as createGitGraphServices}; diff --git a/src/google/adk/cli/browser/chunk-OYPVNJ6H.js b/src/google/adk/cli/browser/chunk-OYPVNJ6H.js new file mode 100644 index 0000000000..4e3192591e --- /dev/null +++ b/src/google/adk/cli/browser/chunk-OYPVNJ6H.js @@ -0,0 +1,24 @@ +import{a as F}from"./chunk-DMWOYWYQ.js";import{a as A}from"./chunk-SRCUB3EX.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{a as E}from"./chunk-PDRDFWTH.js";import{C as w}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as y,N as $,R as B,S as C,T as S,U as D,V as T,W as P,X as z,r as x}from"./chunk-37QI3DOO.js";import{g as h,i as u}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as m,j as v}from"./chunk-RMXJBC7V.js";var M=x.packet,W=class{constructor(){this.packet=[],this.setAccTitle=C,this.getAccTitle=S,this.setDiagramTitle=P,this.getDiagramTitle=z,this.getAccDescription=T,this.setAccDescription=D}static{h(this,"PacketDB")}getConfig(){let t=w(m(m({},M),y().packet));return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){B(),this.packet=[]}},Y=1e4,I=h((t,e)=>{F(t,e);let a=-1,o=[],n=1,{bitsPerRow:l}=e.getConfig();for(let{start:r,end:s,bits:d,label:c}of t.blocks){if(r!==void 0&&s!==void 0&&s{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*a)return[t,void 0];let o=e*a-1,n=e*a;return[{start:t.start,end:o,label:t.label,bits:o-t.start},{start:n,end:t.end,label:t.label,bits:t.end-n}]},"getNextFittingBlock"),_={parser:{yy:void 0},parse:h(t=>v(null,null,function*(){let e=yield A("packet",t),a=_.parser?.yy;if(!(a instanceof W))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");u.debug(e),I(e,a)}),"parse")},j=h((t,e,a,o)=>{let n=o.db,l=n.getConfig(),{rowHeight:r,paddingY:s,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),i=n.getDiagramTitle(),f=r+s,g=f*(p.length+1)-(i?0:r),k=d*c+2,b=E(e);b.attr("viewBox",`0 0 ${k} ${g}`),$(b,g,k,l.useMaxWidth);for(let[N,L]of p.entries())G(b,L,N,l);b.append("text").text(i).attr("x",k/2).attr("y",g-f/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),G=h((t,e,a,{rowHeight:o,paddingX:n,paddingY:l,bitWidth:r,bitsPerRow:s,showBits:d})=>{let c=t.append("g"),p=a*(o+l)+l;for(let i of e){let f=i.start%s*r+1,g=(i.end-i.start+1)*r-n;if(c.append("rect").attr("x",f).attr("y",p).attr("width",g).attr("height",o).attr("class","packetBlock"),c.append("text").attr("x",f+g/2).attr("y",p+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(i.label),!d)continue;let k=i.end===i.start,b=p-2;c.append("text").attr("x",f+(k?g/2:0)).attr("y",b).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(i.start),k||c.append("text").attr("x",f+g).attr("y",b).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(i.end)}},"drawWord"),H={draw:j},K={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},R=h(({packet:t}={})=>{let e=w(K,t);return` + .packetByte { + font-size: ${e.byteFontSize}; + } + .packetByte.start { + fill: ${e.startByteColor}; + } + .packetByte.end { + fill: ${e.endByteColor}; + } + .packetLabel { + fill: ${e.labelColor}; + font-size: ${e.labelFontSize}; + } + .packetTitle { + fill: ${e.titleColor}; + font-size: ${e.titleFontSize}; + } + .packetBlock { + stroke: ${e.blockStrokeColor}; + stroke-width: ${e.blockStrokeWidth}; + fill: ${e.blockFillColor}; + } + `},"styles"),Z={parser:_,get db(){return new W},renderer:H,styles:R};export{Z as diagram}; diff --git a/src/google/adk/cli/browser/chunk-TPDTRWWV.js b/src/google/adk/cli/browser/chunk-PDRDFWTH.js similarity index 76% rename from src/google/adk/cli/browser/chunk-TPDTRWWV.js rename to src/google/adk/cli/browser/chunk-PDRDFWTH.js index c404234de4..e4ad175b7d 100644 --- a/src/google/adk/cli/browser/chunk-TPDTRWWV.js +++ b/src/google/adk/cli/browser/chunk-PDRDFWTH.js @@ -1 +1 @@ -import{Y as s}from"./chunk-QFMJV7VH.js";import{a as e,g as n}from"./chunk-JRNAXTJ7.js";var a=n(t=>{let{securityLevel:c}=s(),o=e("body");if(c==="sandbox"){let m=e(`#i${t}`).node()?.contentDocument??document;o=e(m.body)}return o.select(`#${t}`)},"selectSvgElement");export{a}; +import{Y as s}from"./chunk-37QI3DOO.js";import{a as e,g as n}from"./chunk-JRNAXTJ7.js";var a=n(t=>{let{securityLevel:c}=s(),o=e("body");if(c==="sandbox"){let m=e(`#i${t}`).node()?.contentDocument??document;o=e(m.body)}return o.select(`#${t}`)},"selectSvgElement");export{a}; diff --git a/src/google/adk/cli/browser/chunk-3NJNOY56.js b/src/google/adk/cli/browser/chunk-PKSFXE6N.js similarity index 72% rename from src/google/adk/cli/browser/chunk-3NJNOY56.js rename to src/google/adk/cli/browser/chunk-PKSFXE6N.js index 60df62ef40..0c099591ed 100644 --- a/src/google/adk/cli/browser/chunk-3NJNOY56.js +++ b/src/google/adk/cli/browser/chunk-PKSFXE6N.js @@ -1 +1 @@ -import{a as t,b as a,c as o,d as i,e as f,f as e,g as u,j as d,p as s,q as l}from"./chunk-NALL4A3P.js";var m=class extends l{static{e(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},v={parser:{TokenBuilder:e(()=>new m,"TokenBuilder"),ValueConverter:e(()=>new s,"ValueConverter")}};function I(c=i){let r=o(a(c),u),n=o(t({shared:r}),d,v);return r.ServiceRegistry.register(n),{shared:r,Info:n}}e(I,"createInfoServices");export{v as a,I as b}; +import{a as t,b as a,c as o,d as i,e as f,f as e,g as u,j as d,r as s,s as l}from"./chunk-7ZGKZ6HH.js";var m=class extends l{static{e(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},v={parser:{TokenBuilder:e(()=>new m,"TokenBuilder"),ValueConverter:e(()=>new s,"ValueConverter")}};function I(c=i){let r=o(a(c),u),n=o(t({shared:r}),d,v);return r.ServiceRegistry.register(n),{shared:r,Info:n}}e(I,"createInfoServices");export{v as a,I as b}; diff --git a/src/google/adk/cli/browser/chunk-PM3FQFTD.js b/src/google/adk/cli/browser/chunk-PM3FQFTD.js deleted file mode 100644 index 86263463ff..0000000000 --- a/src/google/adk/cli/browser/chunk-PM3FQFTD.js +++ /dev/null @@ -1,30 +0,0 @@ -import{a as K}from"./chunk-DMWOYWYQ.js";import{a as Q}from"./chunk-T3Q3QCCV.js";import"./chunk-NQKWI5EB.js";import"./chunk-WR6HISGZ.js";import"./chunk-I4UDKKN5.js";import"./chunk-2DLZXFEQ.js";import"./chunk-JNY2YWG7.js";import"./chunk-XULIXUQL.js";import"./chunk-3NJNOY56.js";import"./chunk-NALL4A3P.js";import{a as q}from"./chunk-TPDTRWWV.js";import{k as H,l as J}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{N as M,R as P,S as R,T as I,U as L,V as N,W as B,X as U,Y as V,r as W}from"./chunk-QFMJV7VH.js";import{K as C,N as j,g as o,i as g,r as Z}from"./chunk-JRNAXTJ7.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{j as O}from"./chunk-RMXJBC7V.js";var X=W.pie,D={sections:new Map,showData:!1,config:X},f=D.sections,y=D.showData,se=structuredClone(X),ce=o(()=>structuredClone(se),"getConfig"),de=o(()=>{f=new Map,y=D.showData,P()},"clear"),pe=o(({label:e,value:a})=>{if(a<0)throw new Error(`"${e}" has invalid value: ${a}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);f.has(e)||(f.set(e,a),g.debug(`added new section: ${e}, with value: ${a}`))},"addSection"),ge=o(()=>f,"getSections"),fe=o(e=>{y=e},"setShowData"),ue=o(()=>y,"getShowData"),Y={getConfig:ce,clear:de,setDiagramTitle:B,getDiagramTitle:U,setAccTitle:R,getAccTitle:I,setAccDescription:L,getAccDescription:N,addSection:pe,getSections:ge,setShowData:fe,getShowData:ue},me=o((e,a)=>{K(e,a),a.setShowData(e.showData),e.sections.map(a.addSection)},"populateDb"),he={parse:o(e=>O(null,null,function*(){let a=yield Q("pie",e);g.debug(a),me(a,Y)}),"parse")},ve=o(e=>` - .pieCircle{ - stroke: ${e.pieStrokeColor}; - stroke-width : ${e.pieStrokeWidth}; - opacity : ${e.pieOpacity}; - } - .pieOuterCircle{ - stroke: ${e.pieOuterStrokeColor}; - stroke-width: ${e.pieOuterStrokeWidth}; - fill: none; - } - .pieTitleText { - text-anchor: middle; - font-size: ${e.pieTitleTextSize}; - fill: ${e.pieTitleTextColor}; - font-family: ${e.fontFamily}; - } - .slice { - font-family: ${e.fontFamily}; - fill: ${e.pieSectionTextColor}; - font-size:${e.pieSectionTextSize}; - // fill: white; - } - .legend text { - fill: ${e.pieLegendTextColor}; - font-family: ${e.fontFamily}; - font-size: ${e.pieLegendTextSize}; - } -`,"getStyles"),Se=ve,xe=o(e=>{let a=[...e.values()].reduce((r,l)=>r+l,0),$=[...e.entries()].map(([r,l])=>({label:r,value:l})).filter(r=>r.value/a*100>=1).sort((r,l)=>l.value-r.value);return j().value(r=>r.value)($)},"createPieArcs"),we=o((e,a,$,T)=>{g.debug(`rendering pie chart -`+e);let r=T.db,l=V(),A=J(r.getConfig(),l.pie),b=40,n=18,d=4,s=450,u=s,m=q(a),c=m.append("g");c.attr("transform","translate("+u/2+","+s/2+")");let{themeVariables:i}=l,[E]=H(i.pieOuterStrokeWidth);E??=2;let _=A.textPosition,p=Math.min(u,s)/2-b,ee=C().innerRadius(0).outerRadius(p),te=C().innerRadius(p*_).outerRadius(p*_);c.append("circle").attr("cx",0).attr("cy",0).attr("r",p+E/2).attr("class","pieOuterCircle");let h=r.getSections(),ae=xe(h),re=[i.pie1,i.pie2,i.pie3,i.pie4,i.pie5,i.pie6,i.pie7,i.pie8,i.pie9,i.pie10,i.pie11,i.pie12],v=0;h.forEach(t=>{v+=t});let k=ae.filter(t=>(t.data.value/v*100).toFixed(0)!=="0"),S=Z(re);c.selectAll("mySlices").data(k).enter().append("path").attr("d",ee).attr("fill",t=>S(t.data.label)).attr("class","pieCircle"),c.selectAll("mySlices").data(k).enter().append("text").text(t=>(t.data.value/v*100).toFixed(0)+"%").attr("transform",t=>"translate("+te.centroid(t)+")").style("text-anchor","middle").attr("class","slice"),c.append("text").text(r.getDiagramTitle()).attr("x",0).attr("y",-(s-50)/2).attr("class","pieTitleText");let z=[...h.entries()].map(([t,w])=>({label:t,value:w})),x=c.selectAll(".legend").data(z).enter().append("g").attr("class","legend").attr("transform",(t,w)=>{let G=n+d,oe=G*z.length/2,le=12*n,ne=w*G-oe;return"translate("+le+","+ne+")"});x.append("rect").attr("width",n).attr("height",n).style("fill",t=>S(t.label)).style("stroke",t=>S(t.label)),x.append("text").attr("x",n+d).attr("y",n-d).text(t=>r.getShowData()?`${t.label} [${t.value}]`:t.label);let ie=Math.max(...x.selectAll("text").nodes().map(t=>t?.getBoundingClientRect().width??0)),F=u+b+n+d+ie;m.attr("viewBox",`0 0 ${F} ${s}`),M(m,s,F,A.useMaxWidth)},"draw"),Ce={draw:we},_e={parser:he,db:Y,renderer:Ce,styles:Se};export{_e as diagram}; diff --git a/src/google/adk/cli/browser/chunk-PNXCYZAZ.js b/src/google/adk/cli/browser/chunk-PNXCYZAZ.js new file mode 100644 index 0000000000..5f78563e85 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-PNXCYZAZ.js @@ -0,0 +1 @@ +import{a as o,b as d,c as a,d as n,e as m,f as e,g as i,m as u,r as l,s}from"./chunk-7ZGKZ6HH.js";var v=class extends s{static{e(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},R={parser:{TokenBuilder:e(()=>new v,"TokenBuilder"),ValueConverter:e(()=>new l,"ValueConverter")}};function M(c=n){let r=a(d(c),i),t=a(o({shared:r}),u,R);return r.ServiceRegistry.register(t),{shared:r,Radar:t}}e(M,"createRadarServices");export{R as a,M as b}; diff --git a/src/google/adk/cli/browser/chunk-PVEI6UQ6.js b/src/google/adk/cli/browser/chunk-PVEI6UQ6.js new file mode 100644 index 0000000000..6b63199246 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-PVEI6UQ6.js @@ -0,0 +1,84 @@ +import{a as it}from"./chunk-APNCZOFE.js";import{a as rt}from"./chunk-XB6MIIOW.js";import{b as tt,c as st}from"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import{D as et}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as Ce,R as We,S as je,T as Ge,U as ze,V as Xe,W as Je,X as Ze,Y as ye}from"./chunk-37QI3DOO.js";import{g as h,h as Ke,i as ke}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{j as He}from"./chunk-RMXJBC7V.js";var Ae=(function(){var e=h(function($,r,a,c){for(a=a||{},c=$.length;c--;a[$[c]]=r);return a},"o"),u=[1,3],o=[1,4],n=[1,5],i=[1,6],f=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],k=[1,22],E=[2,7],R=[1,26],_=[1,27],I=[1,28],q=[1,29],C=[1,33],A=[1,34],V=[1,35],v=[1,36],L=[1,37],x=[1,38],O=[1,24],w=[1,31],D=[1,32],M=[1,30],p=[1,39],b=[1,40],d=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],P=[1,61],X=[89,90],Ve=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],de=[27,29],ve=[1,70],Le=[1,71],xe=[1,72],Oe=[1,73],we=[1,74],De=[1,75],Me=[1,76],Z=[1,83],U=[1,80],ee=[1,84],te=[1,85],se=[1,86],ie=[1,87],re=[1,88],ne=[1,89],ae=[1,90],le=[1,91],ce=[1,92],Ee=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],Y=[63,64],Fe=[1,101],$e=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],T=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],B=[1,110],Q=[1,106],H=[1,107],K=[1,108],W=[1,109],j=[1,111],oe=[1,116],he=[1,117],ue=[1,114],fe=[1,115],_e={trace:h(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:h(function(r,a,c,s,m,t,me){var l=t.length-1;switch(m){case 4:this.$=t[l].trim(),s.setAccTitle(this.$);break;case 5:case 6:this.$=t[l].trim(),s.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:s.setDirection("TB");break;case 18:s.setDirection("BT");break;case 19:s.setDirection("RL");break;case 20:s.setDirection("LR");break;case 21:s.addRequirement(t[l-3],t[l-4]);break;case 22:s.addRequirement(t[l-5],t[l-6]),s.setClass([t[l-5]],t[l-3]);break;case 23:s.setNewReqId(t[l-2]);break;case 24:s.setNewReqText(t[l-2]);break;case 25:s.setNewReqRisk(t[l-2]);break;case 26:s.setNewReqVerifyMethod(t[l-2]);break;case 29:this.$=s.RequirementType.REQUIREMENT;break;case 30:this.$=s.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=s.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=s.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=s.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=s.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=s.RiskLevel.LOW_RISK;break;case 36:this.$=s.RiskLevel.MED_RISK;break;case 37:this.$=s.RiskLevel.HIGH_RISK;break;case 38:this.$=s.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=s.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=s.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=s.VerifyType.VERIFY_TEST;break;case 42:s.addElement(t[l-3]);break;case 43:s.addElement(t[l-5]),s.setClass([t[l-5]],t[l-3]);break;case 44:s.setNewElementType(t[l-2]);break;case 45:s.setNewElementDocRef(t[l-2]);break;case 48:s.addRelationship(t[l-2],t[l],t[l-4]);break;case 49:s.addRelationship(t[l-2],t[l-4],t[l]);break;case 50:this.$=s.Relationships.CONTAINS;break;case 51:this.$=s.Relationships.COPIES;break;case 52:this.$=s.Relationships.DERIVES;break;case 53:this.$=s.Relationships.SATISFIES;break;case 54:this.$=s.Relationships.VERIFIES;break;case 55:this.$=s.Relationships.REFINES;break;case 56:this.$=s.Relationships.TRACES;break;case 57:this.$=t[l-2],s.defineClass(t[l-1],t[l]);break;case 58:s.setClass(t[l-1],t[l]);break;case 59:s.setClass([t[l-2]],t[l]);break;case 60:case 62:this.$=[t[l]];break;case 61:case 63:this.$=t[l-2].concat([t[l]]);break;case 64:this.$=t[l-2],s.setCssStyle(t[l-1],t[l]);break;case 65:this.$=[t[l]];break;case 66:t[l-2].push(t[l]),this.$=t[l-2];break;case 68:this.$=t[l-1]+t[l];break}},"anonymous"),table:[{3:1,4:2,6:u,9:o,11:n,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:u,9:o,11:n,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(f,[2,6]),{3:12,4:2,6:u,9:o,11:n,13:i},{1:[2,2]},{4:17,5:k,7:13,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},e(f,[2,4]),e(f,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:k,7:42,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:43,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:44,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:45,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:46,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:47,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:48,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:49,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{4:17,5:k,7:50,8:E,9:o,11:n,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:R,22:_,23:I,24:q,25:23,33:25,41:C,42:A,43:V,44:v,45:L,46:x,54:O,72:w,74:D,77:M,89:p,90:b},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},e(d,[2,17]),e(d,[2,18]),e(d,[2,19]),e(d,[2,20]),{30:60,33:62,75:P,89:p,90:b},{30:63,33:62,75:P,89:p,90:b},{30:64,33:62,75:P,89:p,90:b},e(X,[2,29]),e(X,[2,30]),e(X,[2,31]),e(X,[2,32]),e(X,[2,33]),e(X,[2,34]),e(Ve,[2,81]),e(Ve,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},e(de,[2,79]),e(de,[2,80]),{27:[1,67],29:[1,68]},e(de,[2,85]),e(de,[2,86]),{62:69,65:ve,66:Le,67:xe,68:Oe,69:we,70:De,71:Me},{62:77,65:ve,66:Le,67:xe,68:Oe,69:we,70:De,71:Me},{30:78,33:62,75:P,89:p,90:b},{73:79,75:Z,76:U,78:81,79:82,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce},e(Ee,[2,60]),e(Ee,[2,62]),{73:93,75:Z,76:U,78:81,79:82,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce},{30:94,33:62,75:P,76:U,89:p,90:b},{5:[1,95]},{30:96,33:62,75:P,89:p,90:b},{5:[1,97]},{30:98,33:62,75:P,89:p,90:b},{63:[1,99]},e(Y,[2,50]),e(Y,[2,51]),e(Y,[2,52]),e(Y,[2,53]),e(Y,[2,54]),e(Y,[2,55]),e(Y,[2,56]),{64:[1,100]},e(d,[2,59],{76:U}),e(d,[2,64],{76:Fe}),{33:103,75:[1,102],89:p,90:b},e($e,[2,65],{79:104,75:Z,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce}),e(T,[2,67]),e(T,[2,69]),e(T,[2,70]),e(T,[2,71]),e(T,[2,72]),e(T,[2,73]),e(T,[2,74]),e(T,[2,75]),e(T,[2,76]),e(T,[2,77]),e(T,[2,78]),e(d,[2,57],{76:Fe}),e(d,[2,58],{76:U}),{5:B,28:105,31:Q,34:H,36:K,38:W,40:j},{27:[1,112],76:U},{5:oe,40:he,56:113,57:ue,59:fe},{27:[1,118],76:U},{33:119,89:p,90:b},{33:120,89:p,90:b},{75:Z,78:121,79:82,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce},e(Ee,[2,61]),e(Ee,[2,63]),e(T,[2,68]),e(d,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:B,28:126,31:Q,34:H,36:K,38:W,40:j},e(d,[2,28]),{5:[1,127]},e(d,[2,42]),{32:[1,128]},{32:[1,129]},{5:oe,40:he,56:130,57:ue,59:fe},e(d,[2,47]),{5:[1,131]},e(d,[2,48]),e(d,[2,49]),e($e,[2,66],{79:104,75:Z,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce}),{33:132,89:p,90:b},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},e(d,[2,27]),{5:B,28:145,31:Q,34:H,36:K,38:W,40:j},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},e(d,[2,46]),{5:oe,40:he,56:152,57:ue,59:fe},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},e(d,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},e(d,[2,43]),{5:B,28:159,31:Q,34:H,36:K,38:W,40:j},{5:B,28:160,31:Q,34:H,36:K,38:W,40:j},{5:B,28:161,31:Q,34:H,36:K,38:W,40:j},{5:B,28:162,31:Q,34:H,36:K,38:W,40:j},{5:oe,40:he,56:163,57:ue,59:fe},{5:oe,40:he,56:164,57:ue,59:fe},e(d,[2,23]),e(d,[2,24]),e(d,[2,25]),e(d,[2,26]),e(d,[2,44]),e(d,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:h(function(r,a){if(a.recoverable)this.trace(r);else{var c=new Error(r);throw c.hash=a,c}},"parseError"),parse:h(function(r){var a=this,c=[0],s=[],m=[null],t=[],me=this.table,l="",be=0,Pe=0,Ue=0,lt=2,Ye=1,ct=t.slice.call(arguments,1),g=Object.create(this.lexer),G={yy:{}};for(var Se in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Se)&&(G.yy[Se]=this.yy[Se]);g.setInput(r,G.yy),G.yy.lexer=g,G.yy.parser=this,typeof g.yylloc>"u"&&(g.yylloc={});var Ie=g.yylloc;t.push(Ie);var ot=g.options&&g.options.ranges;typeof G.yy.parseError=="function"?this.parseError=G.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ht(S){c.length=c.length-2*S,m.length=m.length-S,t.length=t.length-S}h(ht,"popStack");function Be(){var S;return S=s.pop()||g.lex()||Ye,typeof S!="number"&&(S instanceof Array&&(s=S,S=s.pop()),S=a.symbols_[S]||S),S}h(Be,"lex");for(var y,Te,z,N,bt,Ne,J={},Re,F,Qe,ge;;){if(z=c[c.length-1],this.defaultActions[z]?N=this.defaultActions[z]:((y===null||typeof y>"u")&&(y=Be()),N=me[z]&&me[z][y]),typeof N>"u"||!N.length||!N[0]){var qe="";ge=[];for(Re in me[z])this.terminals_[Re]&&Re>lt&&ge.push("'"+this.terminals_[Re]+"'");g.showPosition?qe="Parse error on line "+(be+1)+`: +`+g.showPosition()+` +Expecting `+ge.join(", ")+", got '"+(this.terminals_[y]||y)+"'":qe="Parse error on line "+(be+1)+": Unexpected "+(y==Ye?"end of input":"'"+(this.terminals_[y]||y)+"'"),this.parseError(qe,{text:g.match,token:this.terminals_[y]||y,line:g.yylineno,loc:Ie,expected:ge})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+y);switch(N[0]){case 1:c.push(y),m.push(g.yytext),t.push(g.yylloc),c.push(N[1]),y=null,Te?(y=Te,Te=null):(Pe=g.yyleng,l=g.yytext,be=g.yylineno,Ie=g.yylloc,Ue>0&&Ue--);break;case 2:if(F=this.productions_[N[1]][1],J.$=m[m.length-F],J._$={first_line:t[t.length-(F||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(F||1)].first_column,last_column:t[t.length-1].last_column},ot&&(J._$.range=[t[t.length-(F||1)].range[0],t[t.length-1].range[1]]),Ne=this.performAction.apply(J,[l,Pe,be,G.yy,N[1],m,t].concat(ct)),typeof Ne<"u")return Ne;F&&(c=c.slice(0,-1*F*2),m=m.slice(0,-1*F),t=t.slice(0,-1*F)),c.push(this.productions_[N[1]][0]),m.push(J.$),t.push(J._$),Qe=me[c[c.length-2]][c[c.length-1]],c.push(Qe);break;case 3:return!0}}return!0},"parse")},at=(function(){var $={EOF:1,parseError:h(function(a,c){if(this.yy.parser)this.yy.parser.parseError(a,c);else throw new Error(a)},"parseError"),setInput:h(function(r,a){return this.yy=a||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:h(function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var a=r.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},"input"),unput:h(function(r){var a=r.length,c=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var s=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var m=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===s.length?this.yylloc.first_column:0)+s[s.length-c.length].length-c[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[m[0],m[0]+this.yyleng-a]),this.yyleng=this.yytext.length,this},"unput"),more:h(function(){return this._more=!0,this},"more"),reject:h(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:h(function(r){this.unput(this.match.slice(r))},"less"),pastInput:h(function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:h(function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:h(function(){var r=this.pastInput(),a=new Array(r.length+1).join("-");return r+this.upcomingInput()+` +`+a+"^"},"showPosition"),test_match:h(function(r,a){var c,s,m;if(this.options.backtrack_lexer&&(m={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(m.yylloc.range=this.yylloc.range.slice(0))),s=r[0].match(/(?:\r\n?|\n).*/g),s&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+r[0].length},this.yytext+=r[0],this.match+=r[0],this.matches=r,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(r[0].length),this.matched+=r[0],c=this.performAction.call(this,this.yy,this,a,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack){for(var t in m)this[t]=m[t];return!1}return!1},"test_match"),next:h(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var r,a,c,s;this._more||(this.yytext="",this.match="");for(var m=this._currentRules(),t=0;ta[0].length)){if(a=c,s=t,this.options.backtrack_lexer){if(r=this.test_match(c,m[t]),r!==!1)return r;if(this._backtrack){a=!1;continue}else return!1}else if(!this.options.flex)break}return a?(r=this.test_match(a,m[s]),r!==!1?r:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:h(function(){var a=this.next();return a||this.lex()},"lex"),begin:h(function(a){this.conditionStack.push(a)},"begin"),popState:h(function(){var a=this.conditionStack.length-1;return a>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:h(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:h(function(a){return a=this.conditionStack.length-1-Math.abs(a||0),a>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:h(function(a){this.begin(a)},"pushState"),stateStackSize:h(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:h(function(a,c,s,m){var t=m;switch(s){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return c.yytext=c.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return $})();_e.lexer=at;function pe(){this.yy={}}return h(pe,"Parser"),pe.prototype=_e,_e.Parser=pe,new pe})();Ae.parser=Ae;var ut=Ae,ft=class{constructor(){this.relations=[],this.latestRequirement=this.getInitialRequirement(),this.requirements=new Map,this.latestElement=this.getInitialElement(),this.elements=new Map,this.classes=new Map,this.direction="TB",this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},this.setAccTitle=je,this.getAccTitle=Ge,this.setAccDescription=ze,this.getAccDescription=Xe,this.setDiagramTitle=Je,this.getDiagramTitle=Ze,this.getConfig=h(()=>ye().requirement,"getConfig"),this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{h(this,"RequirementDB")}getDirection(){return this.direction}setDirection(e){this.direction=e}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(e,u){return this.requirements.has(e)||this.requirements.set(e,{name:e,type:u,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(e)}getRequirements(){return this.requirements}setNewReqId(e){this.latestRequirement!==void 0&&(this.latestRequirement.requirementId=e)}setNewReqText(e){this.latestRequirement!==void 0&&(this.latestRequirement.text=e)}setNewReqRisk(e){this.latestRequirement!==void 0&&(this.latestRequirement.risk=e)}setNewReqVerifyMethod(e){this.latestRequirement!==void 0&&(this.latestRequirement.verifyMethod=e)}addElement(e){return this.elements.has(e)||(this.elements.set(e,{name:e,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),ke.info("Added new element: ",e)),this.resetLatestElement(),this.elements.get(e)}getElements(){return this.elements}setNewElementType(e){this.latestElement!==void 0&&(this.latestElement.type=e)}setNewElementDocRef(e){this.latestElement!==void 0&&(this.latestElement.docRef=e)}addRelationship(e,u,o){this.relations.push({type:e,src:u,dst:o})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,We()}setCssStyle(e,u){for(let o of e){let n=this.requirements.get(o)??this.elements.get(o);if(!u||!n)return;for(let i of u)i.includes(",")?n.cssStyles.push(...i.split(",")):n.cssStyles.push(i)}}setClass(e,u){for(let o of e){let n=this.requirements.get(o)??this.elements.get(o);if(n)for(let i of u){n.classes.push(i);let f=this.classes.get(i)?.styles;f&&n.cssStyles.push(...f)}}}defineClass(e,u){for(let o of e){let n=this.classes.get(o);n===void 0&&(n={id:o,styles:[],textStyles:[]},this.classes.set(o,n)),u&&u.forEach(function(i){if(/color/.exec(i)){let f=i.replace("fill","bgFill");n.textStyles.push(f)}n.styles.push(i)}),this.requirements.forEach(i=>{i.classes.includes(o)&&i.cssStyles.push(...u.flatMap(f=>f.split(",")))}),this.elements.forEach(i=>{i.classes.includes(o)&&i.cssStyles.push(...u.flatMap(f=>f.split(",")))})}}getClasses(){return this.classes}getData(){let e=ye(),u=[],o=[];for(let n of this.requirements.values()){let i=n;i.id=n.name,i.cssStyles=n.cssStyles,i.cssClasses=n.classes.join(" "),i.shape="requirementBox",i.look=e.look,i.colorIndex=u.length,u.push(i)}for(let n of this.elements.values()){let i=n;i.shape="requirementBox",i.look=e.look,i.id=n.name,i.cssStyles=n.cssStyles,i.cssClasses=n.classes.join(" "),i.colorIndex=u.length,u.push(i)}for(let n of this.relations){let i=0,f=n.type===this.Relationships.CONTAINS,k={id:`${n.src}-${n.dst}-${i}`,start:this.requirements.get(n.src)?.name??this.elements.get(n.src)?.name,end:this.requirements.get(n.dst)?.name??this.elements.get(n.dst)?.name,label:`<<${n.type}>>`,classes:"relationshipLine",style:["fill:none",f?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:f?"normal":"dashed",arrowTypeStart:f?"requirement_contains":"",arrowTypeEnd:f?"":"requirement_arrow",look:e.look,labelType:"markdown"};o.push(k),i++}return{nodes:u,edges:o,other:{},config:e,direction:this.getDirection()}}},mt=h(e=>{let u=Ce(),{themeVariables:o,look:n}=u,{bkgColorArray:i,borderColorArray:f}=o;if(!f?.length)return"";let k="";for(let E=0;E{let u=Ce(),{look:o,themeVariables:n}=u,{requirementEdgeLabelBackground:i}=n;return` + ${mt(e)} + marker { + fill: ${e.relationColor}; + stroke: ${e.relationColor}; + } + + marker.cross { + stroke: ${e.lineColor}; + } + + svg { + font-family: ${e.fontFamily}; + font-size: ${e.fontSize}; + } + + .reqBox { + fill: ${e.requirementBackground}; + fill-opacity: 1.0; + stroke: ${e.requirementBorderColor}; + stroke-width: ${e.requirementBorderSize}; + } + + .reqTitle, .reqLabel{ + fill: ${e.requirementTextColor}; + } + .reqLabelBox { + fill: ${e.relationLabelBackground}; + fill-opacity: 1.0; + } + + .req-title-line { + stroke: ${e.requirementBorderColor}; + stroke-width: ${e.requirementBorderSize}; + } + .relationshipLine { + stroke: ${e.relationColor}; + stroke-width: ${o==="neo"?e.strokeWidth:"1px"}; + } + .relationshipLabel { + fill: ${e.relationLabelColor}; + } + .edgeLabel { + background-color: ${e.edgeLabelBackground}; + } + .edgeLabel .label rect { + fill: ${e.edgeLabelBackground}; + } + .edgeLabel .label text { + fill: ${e.relationLabelColor}; + } + .divider { + stroke: ${e.nodeBorder}; + stroke-width: 1; + } + .label { + font-family: ${e.fontFamily}; + color: ${e.nodeTextColor||e.textColor}; + } + .label text,span { + fill: ${e.nodeTextColor||e.textColor}; + color: ${e.nodeTextColor||e.textColor}; + } + .labelBkg { + background-color: ${i??e.edgeLabelBackground}; + } + +`},"getStyles"),Et=dt,nt={};Ke(nt,{draw:()=>pt});var pt=h(function(e,u,o,n){return He(this,null,function*(){ke.info("REF0:"),ke.info("Drawing requirement diagram (unified)",u);let{securityLevel:i,state:f,layout:k,look:E}=ye(),R=n.db.getData(),_=it(u,i);R.type=n.type,R.layoutAlgorithm=st(k),R.nodeSpacing=f?.nodeSpacing??50,R.rankSpacing=f?.rankSpacing??50,R.markers=E==="neo"?["requirement_contains_neo","requirement_arrow_neo"]:["requirement_contains","requirement_arrow"],R.diagramId=u,yield tt(R,_);let I=8;et.insertTitle(_,"requirementDiagramTitleText",f?.titleTopMargin??25,n.db.getDiagramTitle()),rt(_,I,"requirementDiagram",f?.useMaxWidth??!0)})},"draw"),Vt={parser:ut,get db(){return new ft},renderer:nt,styles:Et};export{Vt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-QFMJV7VH.js b/src/google/adk/cli/browser/chunk-QFMJV7VH.js deleted file mode 100644 index b7cb38a78b..0000000000 --- a/src/google/adk/cli/browser/chunk-QFMJV7VH.js +++ /dev/null @@ -1,80 +0,0 @@ -import{g as l,h as pi,i as M,j as fi}from"./chunk-JRNAXTJ7.js";import{a as P,b as X,j as jt}from"./chunk-RMXJBC7V.js";var Vt={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{let e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,i)=>(i<0&&(i+=1),i>1&&(i-=1),i<.16666666666666666?t+(e-t)*6*i:i<.5?e:i<.6666666666666666?t+(e-t)*(.6666666666666666-i)*6:t),hsl2rgb:({h:t,s:e,l:i},a)=>{if(!e)return i*2.55;t/=360,e/=100,i/=100;let s=i<.5?i*(1+e):i+e-i*e,c=2*i-s;switch(a){case"r":return Vt.hue2rgb(c,s,t+.3333333333333333)*255;case"g":return Vt.hue2rgb(c,s,t)*255;case"b":return Vt.hue2rgb(c,s,t-.3333333333333333)*255}},rgb2hsl:({r:t,g:e,b:i},a)=>{t/=255,e/=255,i/=255;let s=Math.max(t,e,i),c=Math.min(t,e,i),f=(s+c)/2;if(a==="l")return f*100;if(s===c)return 0;let x=s-c,_=f>.5?x/(2-s-c):x/(s+c);if(a==="s")return _*100;switch(s){case t:return((e-i)/x+(ee>i?Math.min(e,Math.max(i,t)):Math.min(i,Math.max(e,t)),round:t=>Math.round(t*1e10)/1e10},yi=yr;var br={dec2hex:t=>{let e=Math.round(t).toString(16);return e.length>1?e:`0${e}`}},bi=br;var Tr={channel:xi,lang:yi,unit:bi},C=Tr;var tt={};for(let t=0;t<=255;t++)tt[t]=C.unit.dec2hex(t);var S={ALL:0,RGB:1,HSL:2};var Le=class{constructor(){this.type=S.ALL}get(){return this.type}set(e){if(this.type&&this.type!==e)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=e}reset(){this.type=S.ALL}is(e){return this.type===e}},Ti=Le;var ve=class{constructor(e,i){this.color=i,this.changed=!1,this.data=e,this.type=new Ti}set(e,i){return this.color=i,this.changed=!1,this.data=e,this.type.type=S.ALL,this}_ensureHSL(){let e=this.data,{h:i,s:a,l:s}=e;i===void 0&&(e.h=C.channel.rgb2hsl(e,"h")),a===void 0&&(e.s=C.channel.rgb2hsl(e,"s")),s===void 0&&(e.l=C.channel.rgb2hsl(e,"l"))}_ensureRGB(){let e=this.data,{r:i,g:a,b:s}=e;i===void 0&&(e.r=C.channel.hsl2rgb(e,"r")),a===void 0&&(e.g=C.channel.hsl2rgb(e,"g")),s===void 0&&(e.b=C.channel.hsl2rgb(e,"b"))}get r(){let e=this.data,i=e.r;return!this.type.is(S.HSL)&&i!==void 0?i:(this._ensureHSL(),C.channel.hsl2rgb(e,"r"))}get g(){let e=this.data,i=e.g;return!this.type.is(S.HSL)&&i!==void 0?i:(this._ensureHSL(),C.channel.hsl2rgb(e,"g"))}get b(){let e=this.data,i=e.b;return!this.type.is(S.HSL)&&i!==void 0?i:(this._ensureHSL(),C.channel.hsl2rgb(e,"b"))}get h(){let e=this.data,i=e.h;return!this.type.is(S.RGB)&&i!==void 0?i:(this._ensureRGB(),C.channel.rgb2hsl(e,"h"))}get s(){let e=this.data,i=e.s;return!this.type.is(S.RGB)&&i!==void 0?i:(this._ensureRGB(),C.channel.rgb2hsl(e,"s"))}get l(){let e=this.data,i=e.l;return!this.type.is(S.RGB)&&i!==void 0?i:(this._ensureRGB(),C.channel.rgb2hsl(e,"l"))}get a(){return this.data.a}set r(e){this.type.set(S.RGB),this.changed=!0,this.data.r=e}set g(e){this.type.set(S.RGB),this.changed=!0,this.data.g=e}set b(e){this.type.set(S.RGB),this.changed=!0,this.data.b=e}set h(e){this.type.set(S.HSL),this.changed=!0,this.data.h=e}set s(e){this.type.set(S.HSL),this.changed=!0,this.data.s=e}set l(e){this.type.set(S.HSL),this.changed=!0,this.data.l=e}set a(e){this.changed=!0,this.data.a=e}},ki=ve;var kr=new ki({r:0,g:0,b:0,a:0},"transparent"),ot=kr;var Si={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(t.charCodeAt(0)!==35)return;let e=t.match(Si.re);if(!e)return;let i=e[1],a=parseInt(i,16),s=i.length,c=s%4===0,f=s>4,x=f?1:17,_=f?8:4,L=c?0:-1,$=f?255:15;return ot.set({r:(a>>_*(L+3)&$)*x,g:(a>>_*(L+2)&$)*x,b:(a>>_*(L+1)&$)*x,a:c?(a&$)*x/255:1},t)},stringify:t=>{let{r:e,g:i,b:a,a:s}=t;return s<1?`#${tt[Math.round(e)]}${tt[Math.round(i)]}${tt[Math.round(a)]}${tt[Math.round(s*255)]}`:`#${tt[Math.round(e)]}${tt[Math.round(i)]}${tt[Math.round(a)]}`}},lt=Si;var Yt={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{let e=t.match(Yt.hueRe);if(e){let[,i,a]=e;switch(a){case"grad":return C.channel.clamp.h(parseFloat(i)*.9);case"rad":return C.channel.clamp.h(parseFloat(i)*180/Math.PI);case"turn":return C.channel.clamp.h(parseFloat(i)*360)}}return C.channel.clamp.h(parseFloat(t))},parse:t=>{let e=t.charCodeAt(0);if(e!==104&&e!==72)return;let i=t.match(Yt.re);if(!i)return;let[,a,s,c,f,x]=i;return ot.set({h:Yt._hue2deg(a),s:C.channel.clamp.s(parseFloat(s)),l:C.channel.clamp.l(parseFloat(c)),a:f?C.channel.clamp.a(x?parseFloat(f)/100:parseFloat(f)):1},t)},stringify:t=>{let{h:e,s:i,l:a,a:s}=t;return s<1?`hsla(${C.lang.round(e)}, ${C.lang.round(i)}%, ${C.lang.round(a)}%, ${s})`:`hsl(${C.lang.round(e)}, ${C.lang.round(i)}%, ${C.lang.round(a)}%)`}},At=Yt;var Xt={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();let e=Xt.colors[t];if(e)return lt.parse(e)},stringify:t=>{let e=lt.stringify(t);for(let i in Xt.colors)if(Xt.colors[i]===e)return i}},Ae=Xt;var Bi={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{let e=t.charCodeAt(0);if(e!==114&&e!==82)return;let i=t.match(Bi.re);if(!i)return;let[,a,s,c,f,x,_,L,$]=i;return ot.set({r:C.channel.clamp.r(s?parseFloat(a)*2.55:parseFloat(a)),g:C.channel.clamp.g(f?parseFloat(c)*2.55:parseFloat(c)),b:C.channel.clamp.b(_?parseFloat(x)*2.55:parseFloat(x)),a:L?C.channel.clamp.a($?parseFloat(L)/100:parseFloat(L)):1},t)},stringify:t=>{let{r:e,g:i,b:a,a:s}=t;return s<1?`rgba(${C.lang.round(e)}, ${C.lang.round(i)}, ${C.lang.round(a)}, ${C.lang.round(s)})`:`rgb(${C.lang.round(e)}, ${C.lang.round(i)}, ${C.lang.round(a)})`}},Et=Bi;var Sr={format:{keyword:Ae,hex:lt,rgb:Et,rgba:Et,hsl:At,hsla:At},parse:t=>{if(typeof t!="string")return t;let e=lt.parse(t)||Et.parse(t)||At.parse(t)||Ae.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},stringify:t=>!t.changed&&t.color?t.color:t.type.is(S.HSL)||t.data.r===void 0?At.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?Et.stringify(t):lt.stringify(t)},B=Sr;var Br=(t,e)=>{let i=B.parse(t);for(let a in e)i[a]=C.channel.clamp[a](e[a]);return B.stringify(i)},Kt=Br;var Fr=(t,e,i=0,a=1)=>{if(typeof t!="number")return Kt(t,{a:e});let s=ot.set({r:C.channel.clamp.r(t),g:C.channel.clamp.g(e),b:C.channel.clamp.b(i),a:C.channel.clamp.a(a)});return B.stringify(s)},et=Fr;var _r=(t,e)=>C.lang.round(B.parse(t)[e]),Lr=_r;var vr=t=>{let{r:e,g:i,b:a}=B.parse(t),s=.2126*C.channel.toLinear(e)+.7152*C.channel.toLinear(i)+.0722*C.channel.toLinear(a);return C.lang.round(s)},Fi=vr;var Ar=t=>Fi(t)>=.5,_i=Ar;var Er=t=>!_i(t),j=Er;var Or=(t,e,i)=>{let a=B.parse(t),s=a[e],c=C.channel.clamp[e](s+i);return s!==c&&(a[e]=c),B.stringify(a)},yt=Or;var Mr=(t,e)=>yt(t,"l",e),d=Mr;var Dr=(t,e)=>yt(t,"l",-e),g=Dr;var wr=(t,e)=>yt(t,"a",-e),Ir=wr;var zr=(t,e)=>{let i=B.parse(t),a={};for(let s in e)e[s]&&(a[s]=i[s]+e[s]);return Kt(t,a)},o=zr;var qr=(t,e,i=50)=>{let{r:a,g:s,b:c,a:f}=B.parse(t),{r:x,g:_,b:L,a:$}=B.parse(e),St=i/100,ht=St*2-1,it=f-$,dt=((ht*it===-1?ht:(ht+it)/(1+ht*it))+1)/2,Bt=1-dt,ce=a*dt+x*Bt,de=s*dt+_*Bt,ut=c*dt+L*Bt,v=f*St+$*(1-St);return et(ce,de,ut,v)},Li=qr;var Rr=(t,e=100)=>{let i=B.parse(t);return i.r=255-i.r,i.g=255-i.g,i.b=255-i.b,Li(i,t,e)},h=Rr;var{entries:zi,setPrototypeOf:vi,isFrozen:Wr,getPrototypeOf:Pr,getOwnPropertyDescriptor:Nr}=Object,{freeze:z,seal:U,create:Qt}=Object,{apply:ze,construct:qe}=typeof Reflect<"u"&&Reflect;z||(z=function(e){return e});U||(U=function(e){return e});ze||(ze=function(e,i){for(var a=arguments.length,s=new Array(a>2?a-2:0),c=2;c1?i-1:0),s=1;s1?i-1:0),s=1;s2&&arguments[2]!==void 0?arguments[2]:te;vi&&vi(t,null);let a=e.length;for(;a--;){let s=e[a];if(typeof s=="string"){let c=i(s);c!==s&&(Wr(e)||(e[a]=c),s=c)}t[s]=!0}return t}function Vr(t){for(let e=0;e/gm),Jr=U(/\$\{[\w\W]*/gm),Qr=U(/^data-[\-\w.\u00B7-\uFFFF]+$/),to=U(/^aria-[\-\w]+$/),qi=U(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),eo=U(/^(?:\w+script|data):/i),io=U(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Ri=U(/^html$/i),ro=U(/^[a-z][.\w]*(-[.\w]+)+$/i),wi=Object.freeze({__proto__:null,ARIA_ATTR:to,ATTR_WHITESPACE:io,CUSTOM_ELEMENT:ro,DATA_ATTR:Qr,DOCTYPE_NAME:Ri,ERB_EXPR:Zr,IS_ALLOWED_URI:qi,IS_SCRIPT_OR_DATA:eo,MUSTACHE_EXPR:Kr,TMPLIT_EXPR:Jr}),It={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},oo=function(){return typeof window>"u"?null:window},ao=function(e,i){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let a=null,s="data-tt-policy-suffix";i&&i.hasAttribute(s)&&(a=i.getAttribute(s));let c="dompurify"+(a?"#"+a:"");try{return e.createPolicy(c,{createHTML(f){return f},createScriptURL(f){return f}})}catch(f){return console.warn("TrustedTypes policy "+c+" could not be created."),null}},Ii=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function Wi(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:oo(),e=m=>Wi(m);if(e.version="3.3.3",e.removed=[],!t||!t.document||t.document.nodeType!==It.document||!t.Element)return e.isSupported=!1,e;let{document:i}=t,a=i,s=a.currentScript,{DocumentFragment:c,HTMLTemplateElement:f,Node:x,Element:_,NodeFilter:L,NamedNodeMap:$=t.NamedNodeMap||t.MozNamedAttrMap,HTMLFormElement:St,DOMParser:ht,trustedTypes:it}=t,ct=_.prototype,dt=wt(ct,"cloneNode"),Bt=wt(ct,"remove"),ce=wt(ct,"nextSibling"),de=wt(ct,"childNodes"),ut=wt(ct,"parentNode");if(typeof f=="function"){let m=i.createElement("template");m.content&&m.content.ownerDocument&&(i=m.content.ownerDocument)}let v,Ft="",{implementation:ue,createNodeIterator:rr,createDocumentFragment:or,getElementsByTagName:ar}=i,{importNode:sr}=a,w=Ii();e.isSupported=typeof zi=="function"&&typeof ut=="function"&&ue&&ue.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:ge,ERB_EXPR:Ce,TMPLIT_EXPR:me,DATA_ATTR:lr,ARIA_ATTR:nr,IS_SCRIPT_OR_DATA:hr,ATTR_WHITESPACE:je,CUSTOM_ELEMENT:cr}=wi,{IS_ALLOWED_URI:Ve}=wi,F=null,Ye=p({},[...Ei,...Me,...De,...we,...Oi]),A=null,Xe=p({},[...Mi,...Ie,...Di,...Jt]),b=Object.seal(Qt(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),_t=null,Rt=null,rt=Object.seal(Qt(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Ke=!0,pe=!0,Ze=!1,Je=!0,gt=!1,Wt=!0,at=!1,fe=!1,xe=!1,Ct=!1,Pt=!1,Nt=!1,Qe=!0,ti=!1,dr="user-content-",ye=!0,Lt=!1,mt={},V=null,be=p({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),ei=null,ii=p({},["audio","video","img","source","image","track"]),Te=null,ri=p({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ht="http://www.w3.org/1998/Math/MathML",Ut="http://www.w3.org/2000/svg",Z="http://www.w3.org/1999/xhtml",pt=Z,ke=!1,Se=null,ur=p({},[Ht,Ut,Z],Ee),Gt=p({},["mi","mo","mn","ms","mtext"]),$t=p({},["annotation-xml"]),gr=p({},["title","style","font","a","script"]),vt=null,Cr=["application/xhtml+xml","text/html"],mr="text/html",k=null,ft=null,pr=i.createElement("form"),oi=function(r){return r instanceof RegExp||r instanceof Function},Be=function(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(ft&&ft===r)){if((!r||typeof r!="object")&&(r={}),r=K(r),vt=Cr.indexOf(r.PARSER_MEDIA_TYPE)===-1?mr:r.PARSER_MEDIA_TYPE,k=vt==="application/xhtml+xml"?Ee:te,F=H(r,"ALLOWED_TAGS")?p({},r.ALLOWED_TAGS,k):Ye,A=H(r,"ALLOWED_ATTR")?p({},r.ALLOWED_ATTR,k):Xe,Se=H(r,"ALLOWED_NAMESPACES")?p({},r.ALLOWED_NAMESPACES,Ee):ur,Te=H(r,"ADD_URI_SAFE_ATTR")?p(K(ri),r.ADD_URI_SAFE_ATTR,k):ri,ei=H(r,"ADD_DATA_URI_TAGS")?p(K(ii),r.ADD_DATA_URI_TAGS,k):ii,V=H(r,"FORBID_CONTENTS")?p({},r.FORBID_CONTENTS,k):be,_t=H(r,"FORBID_TAGS")?p({},r.FORBID_TAGS,k):K({}),Rt=H(r,"FORBID_ATTR")?p({},r.FORBID_ATTR,k):K({}),mt=H(r,"USE_PROFILES")?r.USE_PROFILES:!1,Ke=r.ALLOW_ARIA_ATTR!==!1,pe=r.ALLOW_DATA_ATTR!==!1,Ze=r.ALLOW_UNKNOWN_PROTOCOLS||!1,Je=r.ALLOW_SELF_CLOSE_IN_ATTR!==!1,gt=r.SAFE_FOR_TEMPLATES||!1,Wt=r.SAFE_FOR_XML!==!1,at=r.WHOLE_DOCUMENT||!1,Ct=r.RETURN_DOM||!1,Pt=r.RETURN_DOM_FRAGMENT||!1,Nt=r.RETURN_TRUSTED_TYPE||!1,xe=r.FORCE_BODY||!1,Qe=r.SANITIZE_DOM!==!1,ti=r.SANITIZE_NAMED_PROPS||!1,ye=r.KEEP_CONTENT!==!1,Lt=r.IN_PLACE||!1,Ve=r.ALLOWED_URI_REGEXP||qi,pt=r.NAMESPACE||Z,Gt=r.MATHML_TEXT_INTEGRATION_POINTS||Gt,$t=r.HTML_INTEGRATION_POINTS||$t,b=r.CUSTOM_ELEMENT_HANDLING||{},r.CUSTOM_ELEMENT_HANDLING&&oi(r.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(b.tagNameCheck=r.CUSTOM_ELEMENT_HANDLING.tagNameCheck),r.CUSTOM_ELEMENT_HANDLING&&oi(r.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(b.attributeNameCheck=r.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),r.CUSTOM_ELEMENT_HANDLING&&typeof r.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(b.allowCustomizedBuiltInElements=r.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),gt&&(pe=!1),Pt&&(Ct=!0),mt&&(F=p({},Oi),A=Qt(null),mt.html===!0&&(p(F,Ei),p(A,Mi)),mt.svg===!0&&(p(F,Me),p(A,Ie),p(A,Jt)),mt.svgFilters===!0&&(p(F,De),p(A,Ie),p(A,Jt)),mt.mathMl===!0&&(p(F,we),p(A,Di),p(A,Jt))),H(r,"ADD_TAGS")||(rt.tagCheck=null),H(r,"ADD_ATTR")||(rt.attributeCheck=null),r.ADD_TAGS&&(typeof r.ADD_TAGS=="function"?rt.tagCheck=r.ADD_TAGS:(F===Ye&&(F=K(F)),p(F,r.ADD_TAGS,k))),r.ADD_ATTR&&(typeof r.ADD_ATTR=="function"?rt.attributeCheck=r.ADD_ATTR:(A===Xe&&(A=K(A)),p(A,r.ADD_ATTR,k))),r.ADD_URI_SAFE_ATTR&&p(Te,r.ADD_URI_SAFE_ATTR,k),r.FORBID_CONTENTS&&(V===be&&(V=K(V)),p(V,r.FORBID_CONTENTS,k)),r.ADD_FORBID_CONTENTS&&(V===be&&(V=K(V)),p(V,r.ADD_FORBID_CONTENTS,k)),ye&&(F["#text"]=!0),at&&p(F,["html","head","body"]),F.table&&(p(F,["tbody"]),delete _t.tbody),r.TRUSTED_TYPES_POLICY){if(typeof r.TRUSTED_TYPES_POLICY.createHTML!="function")throw Dt('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof r.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Dt('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');v=r.TRUSTED_TYPES_POLICY,Ft=v.createHTML("")}else v===void 0&&(v=ao(it,s)),v!==null&&typeof Ft=="string"&&(Ft=v.createHTML(""));z&&z(r),ft=r}},ai=p({},[...Me,...De,...Yr]),si=p({},[...we,...Xr]),fr=function(r){let n=ut(r);(!n||!n.tagName)&&(n={namespaceURI:pt,tagName:"template"});let u=te(r.tagName),y=te(n.tagName);return Se[r.namespaceURI]?r.namespaceURI===Ut?n.namespaceURI===Z?u==="svg":n.namespaceURI===Ht?u==="svg"&&(y==="annotation-xml"||Gt[y]):!!ai[u]:r.namespaceURI===Ht?n.namespaceURI===Z?u==="math":n.namespaceURI===Ut?u==="math"&&$t[y]:!!si[u]:r.namespaceURI===Z?n.namespaceURI===Ut&&!$t[y]||n.namespaceURI===Ht&&!Gt[y]?!1:!si[u]&&(gr[u]||!ai[u]):!!(vt==="application/xhtml+xml"&&Se[r.namespaceURI]):!1},Y=function(r){Ot(e.removed,{element:r});try{ut(r).removeChild(r)}catch(n){Bt(r)}},st=function(r,n){try{Ot(e.removed,{attribute:n.getAttributeNode(r),from:n})}catch(u){Ot(e.removed,{attribute:null,from:n})}if(n.removeAttribute(r),r==="is")if(Ct||Pt)try{Y(n)}catch(u){}else try{n.setAttribute(r,"")}catch(u){}},li=function(r){let n=null,u=null;if(xe)r=""+r;else{let T=Oe(r,/^[\r\n\t ]+/);u=T&&T[0]}vt==="application/xhtml+xml"&&pt===Z&&(r=''+r+"");let y=v?v.createHTML(r):r;if(pt===Z)try{n=new ht().parseFromString(y,vt)}catch(T){}if(!n||!n.documentElement){n=ue.createDocument(pt,"template",null);try{n.documentElement.innerHTML=ke?Ft:y}catch(T){}}let O=n.body||n.documentElement;return r&&u&&O.insertBefore(i.createTextNode(u),O.childNodes[0]||null),pt===Z?ar.call(n,at?"html":"body")[0]:at?n.documentElement:O},ni=function(r){return rr.call(r.ownerDocument||r,r,L.SHOW_ELEMENT|L.SHOW_COMMENT|L.SHOW_TEXT|L.SHOW_PROCESSING_INSTRUCTION|L.SHOW_CDATA_SECTION,null)},Fe=function(r){return r instanceof St&&(typeof r.nodeName!="string"||typeof r.textContent!="string"||typeof r.removeChild!="function"||!(r.attributes instanceof $)||typeof r.removeAttribute!="function"||typeof r.setAttribute!="function"||typeof r.namespaceURI!="string"||typeof r.insertBefore!="function"||typeof r.hasChildNodes!="function")},hi=function(r){return typeof x=="function"&&r instanceof x};function J(m,r,n){Zt(m,u=>{u.call(e,r,n,ft)})}let ci=function(r){let n=null;if(J(w.beforeSanitizeElements,r,null),Fe(r))return Y(r),!0;let u=k(r.nodeName);if(J(w.uponSanitizeElement,r,{tagName:u,allowedTags:F}),Wt&&r.hasChildNodes()&&!hi(r.firstElementChild)&&I(/<[/\w!]/g,r.innerHTML)&&I(/<[/\w!]/g,r.textContent)||r.nodeType===It.progressingInstruction||Wt&&r.nodeType===It.comment&&I(/<[/\w]/g,r.data))return Y(r),!0;if(!(rt.tagCheck instanceof Function&&rt.tagCheck(u))&&(!F[u]||_t[u])){if(!_t[u]&&ui(u)&&(b.tagNameCheck instanceof RegExp&&I(b.tagNameCheck,u)||b.tagNameCheck instanceof Function&&b.tagNameCheck(u)))return!1;if(ye&&!V[u]){let y=ut(r)||r.parentNode,O=de(r)||r.childNodes;if(O&&y){let T=O.length;for(let W=T-1;W>=0;--W){let Q=dt(O[W],!0);Q.__removalCount=(r.__removalCount||0)+1,y.insertBefore(Q,ce(r))}}}return Y(r),!0}return r instanceof _&&!fr(r)||(u==="noscript"||u==="noembed"||u==="noframes")&&I(/<\/no(script|embed|frames)/i,r.innerHTML)?(Y(r),!0):(gt&&r.nodeType===It.text&&(n=r.textContent,Zt([ge,Ce,me],y=>{n=Mt(n,y," ")}),r.textContent!==n&&(Ot(e.removed,{element:r.cloneNode()}),r.textContent=n)),J(w.afterSanitizeElements,r,null),!1)},di=function(r,n,u){if(Rt[n]||Qe&&(n==="id"||n==="name")&&(u in i||u in pr))return!1;if(!(pe&&!Rt[n]&&I(lr,n))){if(!(Ke&&I(nr,n))){if(!(rt.attributeCheck instanceof Function&&rt.attributeCheck(n,r))){if(!A[n]||Rt[n]){if(!(ui(r)&&(b.tagNameCheck instanceof RegExp&&I(b.tagNameCheck,r)||b.tagNameCheck instanceof Function&&b.tagNameCheck(r))&&(b.attributeNameCheck instanceof RegExp&&I(b.attributeNameCheck,n)||b.attributeNameCheck instanceof Function&&b.attributeNameCheck(n,r))||n==="is"&&b.allowCustomizedBuiltInElements&&(b.tagNameCheck instanceof RegExp&&I(b.tagNameCheck,u)||b.tagNameCheck instanceof Function&&b.tagNameCheck(u))))return!1}else if(!Te[n]){if(!I(Ve,Mt(u,je,""))){if(!((n==="src"||n==="xlink:href"||n==="href")&&r!=="script"&&Gr(u,"data:")===0&&ei[r])){if(!(Ze&&!I(hr,Mt(u,je,"")))){if(u)return!1}}}}}}}return!0},ui=function(r){return r!=="annotation-xml"&&Oe(r,cr)},gi=function(r){J(w.beforeSanitizeAttributes,r,null);let{attributes:n}=r;if(!n||Fe(r))return;let u={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:A,forceKeepAttr:void 0},y=n.length;for(;y--;){let O=n[y],{name:T,namespaceURI:W,value:Q}=O,xt=k(T),_e=Q,E=T==="value"?_e:$r(_e);if(u.attrName=xt,u.attrValue=E,u.keepAttr=!0,u.forceKeepAttr=void 0,J(w.uponSanitizeAttribute,r,u),E=u.attrValue,ti&&(xt==="id"||xt==="name")&&(st(T,r),E=dr+E),Wt&&I(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,E)){st(T,r);continue}if(xt==="attributename"&&Oe(E,"href")){st(T,r);continue}if(u.forceKeepAttr)continue;if(!u.keepAttr){st(T,r);continue}if(!Je&&I(/\/>/i,E)){st(T,r);continue}gt&&Zt([ge,Ce,me],mi=>{E=Mt(E,mi," ")});let Ci=k(r.nodeName);if(!di(Ci,xt,E)){st(T,r);continue}if(v&&typeof it=="object"&&typeof it.getAttributeType=="function"&&!W)switch(it.getAttributeType(Ci,xt)){case"TrustedHTML":{E=v.createHTML(E);break}case"TrustedScriptURL":{E=v.createScriptURL(E);break}}if(E!==_e)try{W?r.setAttributeNS(W,T,E):r.setAttribute(T,E),Fe(r)?Y(r):Ai(e.removed)}catch(mi){st(T,r)}}J(w.afterSanitizeAttributes,r,null)},xr=function m(r){let n=null,u=ni(r);for(J(w.beforeSanitizeShadowDOM,r,null);n=u.nextNode();)J(w.uponSanitizeShadowNode,n,null),ci(n),gi(n),n.content instanceof c&&m(n.content);J(w.afterSanitizeShadowDOM,r,null)};return e.sanitize=function(m){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=null,u=null,y=null,O=null;if(ke=!m,ke&&(m=""),typeof m!="string"&&!hi(m))if(typeof m.toString=="function"){if(m=m.toString(),typeof m!="string")throw Dt("dirty is not a string, aborting")}else throw Dt("toString is not a function");if(!e.isSupported)return m;if(fe||Be(r),e.removed=[],typeof m=="string"&&(Lt=!1),Lt){if(m.nodeName){let Q=k(m.nodeName);if(!F[Q]||_t[Q])throw Dt("root node is forbidden and cannot be sanitized in-place")}}else if(m instanceof x)n=li(""),u=n.ownerDocument.importNode(m,!0),u.nodeType===It.element&&u.nodeName==="BODY"||u.nodeName==="HTML"?n=u:n.appendChild(u);else{if(!Ct&&!gt&&!at&&m.indexOf("<")===-1)return v&&Nt?v.createHTML(m):m;if(n=li(m),!n)return Ct?null:Nt?Ft:""}n&&xe&&Y(n.firstChild);let T=ni(Lt?m:n);for(;y=T.nextNode();)ci(y),gi(y),y.content instanceof c&&xr(y.content);if(Lt)return m;if(Ct){if(Pt)for(O=or.call(n.ownerDocument);n.firstChild;)O.appendChild(n.firstChild);else O=n;return(A.shadowroot||A.shadowrootmode)&&(O=sr.call(a,O,!0)),O}let W=at?n.outerHTML:n.innerHTML;return at&&F["!doctype"]&&n.ownerDocument&&n.ownerDocument.doctype&&n.ownerDocument.doctype.name&&I(Ri,n.ownerDocument.doctype.name)&&(W=" -`+W),gt&&Zt([ge,Ce,me],Q=>{W=Mt(W,Q," ")}),v&&Nt?v.createHTML(W):W},e.setConfig=function(){let m=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Be(m),fe=!0},e.clearConfig=function(){ft=null,fe=!1},e.isValidAttribute=function(m,r,n){ft||Be({});let u=k(m),y=k(r);return di(u,y,n)},e.addHook=function(m,r){typeof r=="function"&&Ot(w[m],r)},e.removeHook=function(m,r){if(r!==void 0){let n=Hr(w[m],r);return n===-1?void 0:Ur(w[m],n,1)[0]}return Ai(w[m])},e.removeHooks=function(m){w[m]=[]},e.removeAllHooks=function(){w=Ii()},e}var bt=Wi();var so=/^-{3}\s*[\n\r](.*?)[\n\r]-{3}\s*[\n\r]+/s,lo=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,no=/\s*%%.*\n/gm,ho=class extends Error{static{l(this,"UnknownDiagramError")}constructor(t){super(t),this.name="UnknownDiagramError"}},re={},Os=l(function(t,e){t=t.replace(so,"").replace(lo,"").replace(no,` -`);for(let[i,{detector:a}]of Object.entries(re))if(a(t,e))return i;throw new ho(`No diagram type detected matching given configuration for text: ${t}`)},"detectType"),Ms=l((...t)=>{for(let{id:e,detector:i,loader:a}of t)$i(e,i,a)},"registerLazyLoadedDiagrams"),$i=l((t,e,i)=>{re[t]&&M.warn(`Detector with key ${t} already exists. Overwriting.`),re[t]={detector:e,loader:i},M.debug(`Detector with key ${t} added${i?" with loader":""}`)},"addDetector"),Ds=l(t=>re[t].loader,"getDiagramLoader"),Re=l((t,e,{depth:i=2,clobber:a=!1}={})=>{let s={depth:i,clobber:a};return Array.isArray(e)&&!Array.isArray(t)?(e.forEach(c=>Re(t,c,s)),t):Array.isArray(e)&&Array.isArray(t)?(e.forEach(c=>{t.includes(c)||t.push(c)}),t):t===void 0||i<=0?t!=null&&typeof t=="object"&&typeof e=="object"?Object.assign(t,e):e:(e!==void 0&&typeof t=="object"&&typeof e=="object"&&Object.keys(e).forEach(c=>{typeof e[c]=="object"&&e[c]!==null&&(t[c]===void 0||typeof t[c]=="object")?(t[c]===void 0&&(t[c]=Array.isArray(e[c])?[]:{}),t[c]=Re(t[c],e[c],{depth:i-1,clobber:a})):(a||typeof t[c]!="object"&&typeof e[c]!="object")&&(t[c]=e[c])}),t)},"assignWithDepth"),D=Re,se="#ffffff",le="#f2f2f2",R=l((t,e)=>e?o(t,{s:-40,l:10}):o(t,{s:-40,l:-10}),"mkBorder"),co=class{static{l(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||o(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||o(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||R(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||R(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||R(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||R(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||h(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||h(this.tertiaryColor),this.lineColor=this.lineColor||h(this.background),this.arrowheadColor=this.arrowheadColor||h(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?g(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||g(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||h(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||d(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||"navy",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.darkMode?(this.rowOdd=this.rowOdd||g(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||g(this.mainBkg,10)):(this.rowOdd=this.rowOdd||d(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||d(this.mainBkg,5)),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||o(this.primaryColor,{h:30}),this.cScale4=this.cScale4||o(this.primaryColor,{h:60}),this.cScale5=this.cScale5||o(this.primaryColor,{h:90}),this.cScale6=this.cScale6||o(this.primaryColor,{h:120}),this.cScale7=this.cScale7||o(this.primaryColor,{h:150}),this.cScale8=this.cScale8||o(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||o(this.primaryColor,{h:270}),this.cScale10=this.cScale10||o(this.primaryColor,{h:300}),this.cScale11=this.cScale11||o(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e{this[i]=t[i]}),this.updateColors(),e.forEach(i=>{this[i]=t[i]})}},uo=l(t=>{let e=new co;return e.calculate(t),e},"getThemeVariables"),go=class{static{l(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=d(this.primaryColor,16),this.tertiaryColor=o(this.primaryColor,{h:-160}),this.primaryBorderColor=h(this.background),this.secondaryBorderColor=R(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=R(this.tertiaryColor,this.darkMode),this.primaryTextColor=h(this.primaryColor),this.secondaryTextColor=h(this.secondaryColor),this.tertiaryTextColor=h(this.tertiaryColor),this.lineColor=h(this.background),this.textColor=h(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=d(h("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=et(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=g("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=g(this.sectionBkgColor,10),this.taskBorderColor=et(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=et(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||d(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||g(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=d(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=d(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=d(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=h(this.doneTaskBkgColor),this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=o(this.primaryColor,{h:64}),this.fillType3=o(this.secondaryColor,{h:64}),this.fillType4=o(this.primaryColor,{h:-64}),this.fillType5=o(this.secondaryColor,{h:-64}),this.fillType6=o(this.primaryColor,{h:128}),this.fillType7=o(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||o(this.primaryColor,{h:30}),this.cScale4=this.cScale4||o(this.primaryColor,{h:60}),this.cScale5=this.cScale5||o(this.primaryColor,{h:90}),this.cScale6=this.cScale6||o(this.primaryColor,{h:120}),this.cScale7=this.cScale7||o(this.primaryColor,{h:150}),this.cScale8=this.cScale8||o(this.primaryColor,{h:210}),this.cScale9=this.cScale9||o(this.primaryColor,{h:270}),this.cScale10=this.cScale10||o(this.primaryColor,{h:300}),this.cScale11=this.cScale11||o(this.primaryColor,{h:330});for(let t=0;t{this[i]=t[i]}),this.updateColors(),e.forEach(i=>{this[i]=t[i]})}},Co=l(t=>{let e=new go;return e.calculate(t),e},"getThemeVariables"),mo=class{static{l(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=o(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=o(this.primaryColor,{h:-160}),this.primaryBorderColor=R(this.primaryColor,this.darkMode),this.secondaryBorderColor=R(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=R(this.tertiaryColor,this.darkMode),this.primaryTextColor=h(this.primaryColor),this.secondaryTextColor=h(this.secondaryColor),this.tertiaryTextColor=h(this.tertiaryColor),this.lineColor=h(this.background),this.textColor=h(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.sectionBkgColor=et(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="navy",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||o(this.primaryColor,{h:30}),this.cScale4=this.cScale4||o(this.primaryColor,{h:60}),this.cScale5=this.cScale5||o(this.primaryColor,{h:90}),this.cScale6=this.cScale6||o(this.primaryColor,{h:120}),this.cScale7=this.cScale7||o(this.primaryColor,{h:150}),this.cScale8=this.cScale8||o(this.primaryColor,{h:210}),this.cScale9=this.cScale9||o(this.primaryColor,{h:270}),this.cScale10=this.cScale10||o(this.primaryColor,{h:300}),this.cScale11=this.cScale11||o(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||g(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||g(this.tertiaryColor,40);for(let t=0;t{this[i]==="calculated"&&(this[i]=void 0)}),typeof t!="object"){this.updateColors();return}let e=Object.keys(t);e.forEach(i=>{this[i]=t[i]}),this.updateColors(),e.forEach(i=>{this[i]=t[i]})}},po=l(t=>{let e=new mo;return e.calculate(t),e},"getThemeVariables"),fo=class{static{l(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=d("#cde498",10),this.primaryBorderColor=R(this.primaryColor,this.darkMode),this.secondaryBorderColor=R(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=R(this.tertiaryColor,this.darkMode),this.primaryTextColor=h(this.primaryColor),this.secondaryTextColor=h(this.secondaryColor),this.tertiaryTextColor=h(this.primaryColor),this.lineColor=h(this.background),this.textColor=h(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.actorBorder=g(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||o(this.primaryColor,{h:30}),this.cScale4=this.cScale4||o(this.primaryColor,{h:60}),this.cScale5=this.cScale5||o(this.primaryColor,{h:90}),this.cScale6=this.cScale6||o(this.primaryColor,{h:120}),this.cScale7=this.cScale7||o(this.primaryColor,{h:150}),this.cScale8=this.cScale8||o(this.primaryColor,{h:210}),this.cScale9=this.cScale9||o(this.primaryColor,{h:270}),this.cScale10=this.cScale10||o(this.primaryColor,{h:300}),this.cScale11=this.cScale11||o(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||g(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||g(this.tertiaryColor,40);for(let t=0;t{this[i]=t[i]}),this.updateColors(),e.forEach(i=>{this[i]=t[i]})}},xo=l(t=>{let e=new fo;return e.calculate(t),e},"getThemeVariables"),yo=class{static{l(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=d(this.contrast,55),this.background="#ffffff",this.tertiaryColor=o(this.primaryColor,{h:-160}),this.primaryBorderColor=R(this.primaryColor,this.darkMode),this.secondaryBorderColor=R(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=R(this.tertiaryColor,this.darkMode),this.primaryTextColor=h(this.primaryColor),this.secondaryTextColor=h(this.secondaryColor),this.tertiaryTextColor=h(this.tertiaryColor),this.lineColor=h(this.background),this.textColor=h(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||d(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=d(this.contrast,55),this.border2=this.contrast,this.actorBorder=d(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let t=0;t{this[i]=t[i]}),this.updateColors(),e.forEach(i=>{this[i]=t[i]})}},bo=l(t=>{let e=new yo;return e.calculate(t),e},"getThemeVariables"),Tt={base:{getThemeVariables:uo},dark:{getThemeVariables:Co},default:{getThemeVariables:po},forest:{getThemeVariables:xo},neutral:{getThemeVariables:bo}},G={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:null,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200,inheritDir:!1},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,maxLabelWidth:360,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],titleColor:"",titleFontFamily:'"trebuchet ms", verdana, arial, sans-serif',titleFontSize:"4ex"},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!1},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,nodeSpacing:140,rankSpacing:80,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:.75},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showDataLabel:!1,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200,layoutAlgorithm:"cose-bilkent"},ishikawa:{useMaxWidth:!0,diagramPadding:20},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:""},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:.17},venn:{useMaxWidth:!0,width:800,height:450,padding:8,useDebugLayout:!1},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:5e4,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1},ji=X(P({},G),{deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:Tt.default.getThemeVariables(),sequence:X(P({},G.sequence),{messageFont:l(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:l(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:l(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")}),class:{hideEmptyMembersBox:!1},gantt:X(P({},G.gantt),{tickInterval:void 0,useWidth:void 0}),c4:X(P({},G.c4),{useWidth:void 0,personFont:l(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:X(P({},G.flowchart),{inheritDir:!1}),external_personFont:l(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:l(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:l(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:l(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:l(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:l(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:l(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:l(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:l(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:l(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:l(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:l(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:l(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:l(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:l(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:l(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:l(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:l(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:l(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:l(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:l(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")}),pie:X(P({},G.pie),{useWidth:984}),xyChart:X(P({},G.xyChart),{useWidth:void 0}),requirement:X(P({},G.requirement),{useWidth:void 0}),packet:P({},G.packet),radar:P({},G.radar),ishikawa:P({},G.ishikawa),treemap:{useMaxWidth:!0,padding:10,diagramPadding:8,showValues:!0,nodeWidth:100,nodeHeight:40,borderWidth:1,valueFontSize:12,labelFontSize:14,valueFormat:","},venn:P({},G.venn)}),Vi=l((t,e="")=>Object.keys(t).reduce((i,a)=>Array.isArray(t[a])?i:typeof t[a]=="object"&&t[a]!==null?[...i,e+a,...Vi(t[a],"")]:[...i,e+a],[]),"keyify"),To=new Set(Vi(ji,"")),ko=ji,We=l(t=>{if(M.debug("sanitizeDirective called with",t),!(typeof t!="object"||t==null)){if(Array.isArray(t)){t.forEach(e=>We(e));return}for(let e of Object.keys(t)){if(M.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!To.has(e)||t[e]==null){M.debug("sanitize deleting key: ",e),delete t[e];continue}if(typeof t[e]=="object"){M.debug("sanitizing object",e),We(t[e]);continue}let i=["themeCSS","fontFamily","altFontFamily"];for(let a of i)e.includes(a)&&(M.debug("sanitizing css option",e),t[e]=So(t[e]))}if(t.themeVariables)for(let e of Object.keys(t.themeVariables)){let i=t.themeVariables[e];i?.match&&!i.match(/^[\d "#%(),.;A-Za-z]+$/)&&(t.themeVariables[e]="")}M.debug("After sanitization",t)}},"sanitizeDirective"),So=l(t=>{let e=0,i=0;for(let a of t){if(e!(t===!1||["false","null","0"].includes(String(t).trim().toLowerCase())),"evaluate"),N=D({},ne),oe,nt=[],zt=D({},ne),he=l((t,e)=>{let i=D({},t),a={};for(let s of e)Xi(s),a=D(a,s);if(i=D(i,a),a.theme&&a.theme in Tt){let s=D({},oe),c=D(s.themeVariables||{},a.themeVariables);i.theme&&i.theme in Tt&&(i.themeVariables=Tt[i.theme].getThemeVariables(c))}return zt=i,Zi(zt),zt},"updateCurrentConfig"),Ps=l(t=>(N=D({},ne),N=D(N,t),t.theme&&Tt[t.theme]&&(N.themeVariables=Tt[t.theme].getThemeVariables(t.themeVariables)),he(N,nt),N),"setSiteConfig"),Ns=l(t=>{oe=D({},t)},"saveConfigFromInitialize"),Hs=l(t=>(N=D(N,t),he(N,nt),N),"updateSiteConfig"),Us=l(()=>D({},N),"getSiteConfig"),Bo=l(t=>(Zi(t),D(zt,t),Ne()),"setConfig"),Ne=l(()=>D({},zt),"getConfig"),Xi=l(t=>{t&&(["secure",...N.secure??[]].forEach(e=>{Object.hasOwn(t,e)&&(M.debug(`Denied attempt to modify a secure key ${e}`,t[e]),delete t[e])}),Object.keys(t).forEach(e=>{e.startsWith("__")&&delete t[e]}),Object.keys(t).forEach(e=>{typeof t[e]=="string"&&(t[e].includes("<")||t[e].includes(">")||t[e].includes("url(data:"))&&delete t[e],typeof t[e]=="object"&&Xi(t[e])}))},"sanitize"),Gs=l(t=>{We(t),t.fontFamily&&!t.themeVariables?.fontFamily&&(t.themeVariables=X(P({},t.themeVariables),{fontFamily:t.fontFamily})),nt.push(t),he(N,nt)},"addDirective"),$s=l((t=N)=>{nt=[],he(t,nt)},"reset"),Fo={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead.",FLOWCHART_HTML_LABELS_DEPRECATED:"flowchart.htmlLabels is deprecated. Please use global htmlLabels instead."},Pi={},Ki=l(t=>{Pi[t]||(M.warn(Fo[t]),Pi[t]=!0)},"issueWarning"),Zi=l(t=>{t&&(t.lazyLoadedDiagrams||t.loadExternalDiagramsAtStartup)&&Ki("LAZY_LOAD_DEPRECATED")},"checkConfig"),js=l(()=>{let t={};oe&&(t=D(t,oe));for(let e of nt)t=D(t,e);return t},"getUserDefinedConfig"),_o=l(t=>(t.flowchart?.htmlLabels!=null&&Ki("FLOWCHART_HTML_LABELS_DEPRECATED"),Yi(t.htmlLabels??t.flowchart?.htmlLabels??!0)),"getEffectiveHtmlLabels"),qt=//gi,Lo=l(t=>t?tr(t).replace(/\\n/g,"#br#").split("#br#"):[""],"getRows"),vo=(()=>{let t=!1;return()=>{t||(Ji(),t=!0)}})();function Ji(){let t="data-temp-href-target";bt.addHook("beforeSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute("target")&&e.setAttribute(t,e.getAttribute("target")??"")}),bt.addHook("afterSanitizeAttributes",e=>{e.tagName==="A"&&e.hasAttribute(t)&&(e.setAttribute("target",e.getAttribute(t)??""),e.removeAttribute(t),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener"))})}l(Ji,"setupDompurifyHooks");var Qi=l(t=>(vo(),bt.sanitize(t)),"removeScript"),Ni=l((t,e)=>{if(_o(e)){let i=e.securityLevel;i==="antiscript"||i==="strict"||i==="sandbox"?t=Qi(t):i!=="loose"&&(t=tr(t),t=t.replace(//g,">"),t=t.replace(/=/g,"="),t=Mo(t))}return t},"sanitizeMore"),kt=l((t,e)=>t&&(e.dompurifyConfig?t=bt.sanitize(Ni(t,e),e.dompurifyConfig).toString():t=bt.sanitize(Ni(t,e),{FORBID_TAGS:["style"]}).toString(),t),"sanitizeText"),Ao=l((t,e)=>typeof t=="string"?kt(t,e):t.flat().map(i=>kt(i,e)),"sanitizeTextOrArray"),Eo=l(t=>qt.test(t),"hasBreaks"),Oo=l(t=>t.split(qt),"splitBreaks"),Mo=l(t=>t.replace(/#br#/g,"
"),"placeholderToBreak"),tr=l(t=>t.replace(qt,"#br#"),"breakToPlaceholder"),Do=l(t=>{let e="";return t&&(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=CSS.escape(e)),e},"getUrl"),wo=l(function(...t){let e=t.filter(i=>!isNaN(i));return Math.max(...e)},"getMax"),Io=l(function(...t){let e=t.filter(i=>!isNaN(i));return Math.min(...e)},"getMin"),Ys=l(function(t){let e=t.split(/(,)/),i=[];for(let a=0;a0&&a+1Math.max(0,t.split(e).length-1),"countOccurrence"),zo=l((t,e)=>{let i=Pe(t,"~"),a=Pe(e,"~");return i===1&&a===1},"shouldCombineSets"),qo=l(t=>{let e=Pe(t,"~"),i=!1;if(e<=1)return t;e%2!==0&&t.startsWith("~")&&(t=t.substring(1),i=!0);let a=[...t],s=a.indexOf("~"),c=a.lastIndexOf("~");for(;s!==-1&&c!==-1&&s!==c;)a[s]="<",a[c]=">",s=a.indexOf("~"),c=a.lastIndexOf("~");return i&&a.unshift("~"),a.join("")},"processSet"),Hi=l(()=>window.MathMLElement!==void 0,"isMathMLSupported"),ee=/\$\$(.*)\$\$/g,Ui=l(t=>(t.match(ee)?.length??0)>0,"hasKatex"),Xs=l((t,e)=>jt(null,null,function*(){let i=document.createElement("div");i.innerHTML=yield Wo(t,e),i.id="katex-temp",i.style.visibility="hidden",i.style.position="absolute",i.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",i);let s={width:i.clientWidth,height:i.clientHeight};return i.remove(),s}),"calculateMathMLDimensions"),Ro=l((t,e)=>jt(null,null,function*(){if(!Ui(t))return t;if(!(Hi()||e.legacyMathML||e.forceLegacyMathML))return t.replace(ee,"MathML is unsupported in this environment.");{let{default:i}=yield import("./chunk-27SWUPRL.js"),a=e.forceLegacyMathML||!Hi()&&e.legacyMathML?"htmlAndMathml":"mathml";return t.split(qt).map(s=>Ui(s)?`
${s}
`:`
${s}
`).join("").replace(ee,(s,c)=>i.renderToString(c,{throwOnError:!0,displayMode:!0,output:a}).replace(/\n/g," ").replace(//g,""))}return t.replace(ee,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")}),"renderKatexUnsanitized"),Wo=l((t,e)=>jt(null,null,function*(){return kt(yield Ro(t,e),e)}),"renderKatexSanitized"),Ks={getRows:Lo,sanitizeText:kt,sanitizeTextOrArray:Ao,hasBreaks:Eo,splitBreaks:Oo,lineBreakRegex:qt,removeScript:Qi,getUrl:Do,evaluate:Yi,getMax:wo,getMin:Io},Po=l(function(t,e){for(let i of e)t.attr(i[0],i[1])},"d3Attrs"),No=l(function(t,e,i){let a=new Map;return i?(a.set("width","100%"),a.set("style",`max-width: ${e}px;`)):(a.set("height",t),a.set("width",e)),a},"calculateSvgSizeAttrs"),Ho=l(function(t,e,i,a){let s=No(e,i,a);Po(t,s)},"configureSvgSize"),Uo=l(function(t,e,i,a){let s=e.node().getBBox(),c=s.width,f=s.height;M.info(`SVG bounds: ${c}x${f}`,s);let x=0,_=0;M.info(`Graph bounds: ${x}x${_}`,t),x=c+i*2,_=f+i*2,M.info(`Calculated bounds: ${x}x${_}`),Ho(e,_,x,a);let L=`${s.x-i} ${s.y-i} ${s.width+2*i} ${s.height+2*i}`;e.attr("viewBox",L)},"setupGraphViewbox"),ie={},Go=l((t,e,i)=>{let a="";return t in ie&&ie[t]?a=ie[t](i):M.warn(`No theme found for ${t}`),` & { - font-family: ${i.fontFamily}; - font-size: ${i.fontSize}; - fill: ${i.textColor} - } - @keyframes edge-animation-frame { - from { - stroke-dashoffset: 0; - } - } - @keyframes dash { - to { - stroke-dashoffset: 0; - } - } - & .edge-animation-slow { - stroke-dasharray: 9,5 !important; - stroke-dashoffset: 900; - animation: dash 50s linear infinite; - stroke-linecap: round; - } - & .edge-animation-fast { - stroke-dasharray: 9,5 !important; - stroke-dashoffset: 900; - animation: dash 20s linear infinite; - stroke-linecap: round; - } - /* Classes common for multiple diagrams */ - - & .error-icon { - fill: ${i.errorBkgColor}; - } - & .error-text { - fill: ${i.errorTextColor}; - stroke: ${i.errorTextColor}; - } - - & .edge-thickness-normal { - stroke-width: 1px; - } - & .edge-thickness-thick { - stroke-width: 3.5px - } - & .edge-pattern-solid { - stroke-dasharray: 0; - } - & .edge-thickness-invisible { - stroke-width: 0; - fill: none; - } - & .edge-pattern-dashed{ - stroke-dasharray: 3; - } - .edge-pattern-dotted { - stroke-dasharray: 2; - } - - & .marker { - fill: ${i.lineColor}; - stroke: ${i.lineColor}; - } - & .marker.cross { - stroke: ${i.lineColor}; - } - - & svg { - font-family: ${i.fontFamily}; - font-size: ${i.fontSize}; - } - & p { - margin: 0 - } - - ${a} - - ${e} -`},"getStyles"),$o=l((t,e)=>{e!==void 0&&(ie[t]=e)},"addStylesForDiagram"),Zs=Go,er={};pi(er,{clear:()=>jo,getAccDescription:()=>Ko,getAccTitle:()=>Yo,getDiagramTitle:()=>Jo,setAccDescription:()=>Xo,setAccTitle:()=>Vo,setDiagramTitle:()=>Zo});var He="",Ue="",Ge="",$e=l(t=>kt(t,Ne()),"sanitizeText"),jo=l(()=>{He="",Ge="",Ue=""},"clear"),Vo=l(t=>{He=$e(t).replace(/^\s+/g,"")},"setAccTitle"),Yo=l(()=>He,"getAccTitle"),Xo=l(t=>{Ge=$e(t).replace(/\n\s+/g,` -`)},"setAccDescription"),Ko=l(()=>Ge,"getAccDescription"),Zo=l(t=>{Ue=$e(t)},"setDiagramTitle"),Jo=l(()=>Ue,"getDiagramTitle"),Gi=M,Qo=fi,ir=Ne,Js=Bo,Qs=ne,ta=l(t=>kt(t,ir()),"sanitizeText"),ea=Uo,ia=l(()=>er,"getCommonDb"),ae={},tl=l((t,e,i)=>{ae[t]&&Gi.warn(`Diagram with id ${t} already registered. Overwriting.`),ae[t]=e,i&&$i(t,i),$o(t,e.styles),e.injectUtils?.(Gi,Qo,ir,ta,ea,ia(),()=>{})},"registerDiagram"),el=l(t=>{if(t in ae)return ae[t];throw new ra(t)},"getDiagram"),ra=class extends Error{static{l(this,"DiagramNotFoundError")}constructor(t){super(`Diagram ${t} not found.`)}};export{et as a,Lr as b,j as c,d,g as e,Ir as f,bt as g,so as h,lo as i,ho as j,re as k,Os as l,Ms as m,Ds as n,D as o,po as p,Tt as q,ko as r,We as s,ne as t,Yi as u,Ps as v,Ns as w,Hs as x,Us as y,Bo as z,Ne as A,Gs as B,$s as C,js as D,_o as E,qt as F,kt as G,Do as H,Ys as I,Ui as J,Xs as K,Wo as L,Ks as M,Ho as N,Uo as O,Zs as P,er as Q,jo as R,Vo as S,Yo as T,Xo as U,Ko as V,Zo as W,Jo as X,ir as Y,Js as Z,Qs as _,ta as $,ea as aa,tl as ba,el as ca}; diff --git a/src/google/adk/cli/browser/chunk-QGHEW6NO.js b/src/google/adk/cli/browser/chunk-QGHEW6NO.js deleted file mode 100644 index 82b5b010fa..0000000000 --- a/src/google/adk/cli/browser/chunk-QGHEW6NO.js +++ /dev/null @@ -1,70 +0,0 @@ -import{a as je}from"./chunk-APNCZOFE.js";import{a as We}from"./chunk-ST54LLJ3.js";import{b as Ue,c as Ze}from"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import{m as Ge,p as Ke}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{R as Ve,S as Me,T as Be,U as Fe,V as Ye,W as Pe,X as ze,Y as j,a as Le,b as we}from"./chunk-QFMJV7VH.js";import{a as ve,g as l,h as De,i as v}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{j as Ce}from"./chunk-RMXJBC7V.js";var ye=(function(){var t=l(function(A,a,n,c){for(n=n||{},c=A.length;c--;n[A[c]]=a);return n},"o"),i=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],d=[1,10],o=[1,11],h=[1,12],b=[1,13],R=[1,23],k=[1,24],_=[1,25],w=[1,26],W=[1,27],E=[1,19],ie=[1,28],Q=[1,29],S=[1,20],I=[1,18],V=[1,21],M=[1,22],re=[1,36],ae=[1,37],ne=[1,38],ce=[1,39],oe=[1,40],B=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,65,66,67,68,69],T=[1,45],O=[1,46],F=[1,55],Y=[40,48,50,51,52,70,71],P=[1,66],z=[1,64],N=[1,61],G=[1,65],K=[1,67],X=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,65,66,67,68,69],ke=[65,66,67,68,69],ge=[1,84],_e=[1,83],me=[1,81],Ee=[1,82],Se=[6,10,42,47],D=[6,10,13,41,42,47,48,49],q=[1,92],H=[1,91],J=[1,90],U=[19,58],Te=[1,101],Oe=[1,100],le=[19,58,60,62],he={trace:l(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,attributeKeyType:59,",":60,ATTRIBUTE_KEY:61,COMMENT:62,cardinality:63,relType:64,ZERO_OR_ONE:65,ZERO_OR_MORE:66,ONE_OR_MORE:67,ONLY_ONE:68,MD_PARENT:69,NON_IDENTIFYING:70,IDENTIFYING:71,WORD:72,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",60:",",61:"ATTRIBUTE_KEY",62:"COMMENT",65:"ZERO_OR_ONE",66:"ZERO_OR_MORE",67:"ONE_OR_MORE",68:"ONLY_ONE",69:"MD_PARENT",70:"NON_IDENTIFYING",71:"IDENTIFYING",72:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[55,1],[56,1],[56,3],[59,1],[57,1],[12,3],[63,1],[63,1],[63,1],[63,1],[63,1],[64,1],[64,1],[14,1],[14,1],[14,1]],performAction:l(function(a,n,c,r,u,e,Z){var s=e.length-1;switch(u){case 1:break;case 2:this.$=[];break;case 3:e[s-1].push(e[s]),this.$=e[s-1];break;case 4:case 5:this.$=e[s];break;case 6:case 7:this.$=[];break;case 8:r.addEntity(e[s-4]),r.addEntity(e[s-2]),r.addRelationship(e[s-4],e[s],e[s-2],e[s-3]);break;case 9:r.addEntity(e[s-8]),r.addEntity(e[s-4]),r.addRelationship(e[s-8],e[s],e[s-4],e[s-5]),r.setClass([e[s-8]],e[s-6]),r.setClass([e[s-4]],e[s-2]);break;case 10:r.addEntity(e[s-6]),r.addEntity(e[s-2]),r.addRelationship(e[s-6],e[s],e[s-2],e[s-3]),r.setClass([e[s-6]],e[s-4]);break;case 11:r.addEntity(e[s-6]),r.addEntity(e[s-4]),r.addRelationship(e[s-6],e[s],e[s-4],e[s-5]),r.setClass([e[s-4]],e[s-2]);break;case 12:r.addEntity(e[s-3]),r.addAttributes(e[s-3],e[s-1]);break;case 13:r.addEntity(e[s-5]),r.addAttributes(e[s-5],e[s-1]),r.setClass([e[s-5]],e[s-3]);break;case 14:r.addEntity(e[s-2]);break;case 15:r.addEntity(e[s-4]),r.setClass([e[s-4]],e[s-2]);break;case 16:r.addEntity(e[s]);break;case 17:r.addEntity(e[s-2]),r.setClass([e[s-2]],e[s]);break;case 18:r.addEntity(e[s-6],e[s-4]),r.addAttributes(e[s-6],e[s-1]);break;case 19:r.addEntity(e[s-8],e[s-6]),r.addAttributes(e[s-8],e[s-1]),r.setClass([e[s-8]],e[s-3]);break;case 20:r.addEntity(e[s-5],e[s-3]);break;case 21:r.addEntity(e[s-7],e[s-5]),r.setClass([e[s-7]],e[s-2]);break;case 22:r.addEntity(e[s-3],e[s-1]);break;case 23:r.addEntity(e[s-5],e[s-3]),r.setClass([e[s-5]],e[s]);break;case 24:case 25:this.$=e[s].trim(),r.setAccTitle(this.$);break;case 26:case 27:this.$=e[s].trim(),r.setAccDescription(this.$);break;case 32:r.setDirection("TB");break;case 33:r.setDirection("BT");break;case 34:r.setDirection("RL");break;case 35:r.setDirection("LR");break;case 36:this.$=e[s-3],r.addClass(e[s-2],e[s-1]);break;case 37:case 38:case 59:case 67:this.$=[e[s]];break;case 39:case 40:this.$=e[s-2].concat([e[s]]);break;case 41:this.$=e[s-2],r.setClass(e[s-1],e[s]);break;case 42:this.$=e[s-3],r.addCssStyles(e[s-2],e[s-1]);break;case 43:this.$=[e[s]];break;case 44:e[s-2].push(e[s]),this.$=e[s-2];break;case 46:this.$=e[s-1]+e[s];break;case 54:case 79:case 80:this.$=e[s].replace(/"/g,"");break;case 55:case 56:case 57:case 58:case 81:this.$=e[s];break;case 60:e[s].push(e[s-1]),this.$=e[s];break;case 61:this.$={type:e[s-1],name:e[s]};break;case 62:this.$={type:e[s-2],name:e[s-1],keys:e[s]};break;case 63:this.$={type:e[s-2],name:e[s-1],comment:e[s]};break;case 64:this.$={type:e[s-3],name:e[s-2],keys:e[s-1],comment:e[s]};break;case 65:case 66:case 69:this.$=e[s];break;case 68:e[s-2].push(e[s]),this.$=e[s-2];break;case 70:this.$=e[s].replace(/"/g,"");break;case 71:this.$={cardA:e[s],relType:e[s-1],cardB:e[s-2]};break;case 72:this.$=r.Cardinality.ZERO_OR_ONE;break;case 73:this.$=r.Cardinality.ZERO_OR_MORE;break;case 74:this.$=r.Cardinality.ONE_OR_MORE;break;case 75:this.$=r.Cardinality.ONLY_ONE;break;case 76:this.$=r.Cardinality.MD_PARENT;break;case 77:this.$=r.Identification.NON_IDENTIFYING;break;case 78:this.$=r.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(i,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:d,24:o,26:h,28:b,29:14,30:15,31:16,32:17,33:R,34:k,35:_,36:w,37:W,40:E,43:ie,44:Q,48:S,50:I,51:V,52:M},t(i,[2,7],{1:[2,1]}),t(i,[2,3]),{9:30,11:9,22:d,24:o,26:h,28:b,29:14,30:15,31:16,32:17,33:R,34:k,35:_,36:w,37:W,40:E,43:ie,44:Q,48:S,50:I,51:V,52:M},t(i,[2,5]),t(i,[2,6]),t(i,[2,16],{12:31,63:35,15:[1,32],17:[1,33],20:[1,34],65:re,66:ae,67:ne,68:ce,69:oe}),{23:[1,41]},{25:[1,42]},{27:[1,43]},t(i,[2,27]),t(i,[2,28]),t(i,[2,29]),t(i,[2,30]),t(i,[2,31]),t(B,[2,54]),t(B,[2,55]),t(B,[2,56]),t(B,[2,57]),t(B,[2,58]),t(i,[2,32]),t(i,[2,33]),t(i,[2,34]),t(i,[2,35]),{16:44,40:T,41:O},{16:47,40:T,41:O},{16:48,40:T,41:O},t(i,[2,4]),{11:49,40:E,48:S,50:I,51:V,52:M},{16:50,40:T,41:O},{18:51,19:[1,52],53:53,54:54,58:F},{11:56,40:E,48:S,50:I,51:V,52:M},{64:57,70:[1,58],71:[1,59]},t(Y,[2,72]),t(Y,[2,73]),t(Y,[2,74]),t(Y,[2,75]),t(Y,[2,76]),t(i,[2,24]),t(i,[2,25]),t(i,[2,26]),{13:P,38:60,41:z,42:N,45:62,46:63,48:G,49:K},t(X,[2,37]),t(X,[2,38]),{16:68,40:T,41:O,42:N},{13:P,38:69,41:z,42:N,45:62,46:63,48:G,49:K},{13:[1,70],15:[1,71]},t(i,[2,17],{63:35,12:72,17:[1,73],42:N,65:re,66:ae,67:ne,68:ce,69:oe}),{19:[1,74]},t(i,[2,14]),{18:75,19:[2,59],53:53,54:54,58:F},{55:76,58:[1,77]},{58:[2,65]},{21:[1,78]},{63:79,65:re,66:ae,67:ne,68:ce,69:oe},t(ke,[2,77]),t(ke,[2,78]),{6:ge,10:_e,39:80,42:me,47:Ee},{40:[1,85],41:[1,86]},t(Se,[2,43],{46:87,13:P,41:z,48:G,49:K}),t(D,[2,45]),t(D,[2,50]),t(D,[2,51]),t(D,[2,52]),t(D,[2,53]),t(i,[2,41],{42:N}),{6:ge,10:_e,39:88,42:me,47:Ee},{14:89,40:q,50:H,72:J},{16:93,40:T,41:O},{11:94,40:E,48:S,50:I,51:V,52:M},{18:95,19:[1,96],53:53,54:54,58:F},t(i,[2,12]),{19:[2,60]},t(U,[2,61],{56:97,57:98,59:99,61:Te,62:Oe}),t([19,58,61,62],[2,66]),t(i,[2,22],{15:[1,103],17:[1,102]}),t([40,48,50,51,52],[2,71]),t(i,[2,36]),{13:P,41:z,45:104,46:63,48:G,49:K},t(i,[2,47]),t(i,[2,48]),t(i,[2,49]),t(X,[2,39]),t(X,[2,40]),t(D,[2,46]),t(i,[2,42]),t(i,[2,8]),t(i,[2,79]),t(i,[2,80]),t(i,[2,81]),{13:[1,105],42:N},{13:[1,107],15:[1,106]},{19:[1,108]},t(i,[2,15]),t(U,[2,62],{57:109,60:[1,110],62:Oe}),t(U,[2,63]),t(le,[2,67]),t(U,[2,70]),t(le,[2,69]),{18:111,19:[1,112],53:53,54:54,58:F},{16:113,40:T,41:O},t(Se,[2,44],{46:87,13:P,41:z,48:G,49:K}),{14:114,40:q,50:H,72:J},{16:115,40:T,41:O},{14:116,40:q,50:H,72:J},t(i,[2,13]),t(U,[2,64]),{59:117,61:Te},{19:[1,118]},t(i,[2,20]),t(i,[2,23],{17:[1,119],42:N}),t(i,[2,11]),{13:[1,120],42:N},t(i,[2,10]),t(le,[2,68]),t(i,[2,18]),{18:121,19:[1,122],53:53,54:54,58:F},{14:123,40:q,50:H,72:J},{19:[1,124]},t(i,[2,21]),t(i,[2,9]),t(i,[2,19])],defaultActions:{55:[2,65],75:[2,60]},parseError:l(function(a,n){if(n.recoverable)this.trace(a);else{var c=new Error(a);throw c.hash=n,c}},"parseError"),parse:l(function(a){var n=this,c=[0],r=[],u=[null],e=[],Z=this.table,s="",ee=0,Ne=0,Ae=0,qe=2,Re=1,He=e.slice.call(arguments,1),p=Object.create(this.lexer),x={yy:{}};for(var ue in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ue)&&(x.yy[ue]=this.yy[ue]);p.setInput(a,x.yy),x.yy.lexer=p,x.yy.parser=this,typeof p.yylloc>"u"&&(p.yylloc={});var de=p.yylloc;e.push(de);var Je=p.options&&p.options.ranges;typeof x.yy.parseError=="function"?this.parseError=x.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function $e(y){c.length=c.length-2*y,u.length=u.length-y,e.length=e.length-y}l($e,"popStack");function Ie(){var y;return y=r.pop()||p.lex()||Re,typeof y!="number"&&(y instanceof Array&&(r=y,y=r.pop()),y=n.symbols_[y]||y),y}l(Ie,"lex");for(var f,be,C,g,nt,pe,L={},te,m,xe,se;;){if(C=c[c.length-1],this.defaultActions[C]?g=this.defaultActions[C]:((f===null||typeof f>"u")&&(f=Ie()),g=Z[C]&&Z[C][f]),typeof g>"u"||!g.length||!g[0]){var fe="";se=[];for(te in Z[C])this.terminals_[te]&&te>qe&&se.push("'"+this.terminals_[te]+"'");p.showPosition?fe="Parse error on line "+(ee+1)+`: -`+p.showPosition()+` -Expecting `+se.join(", ")+", got '"+(this.terminals_[f]||f)+"'":fe="Parse error on line "+(ee+1)+": Unexpected "+(f==Re?"end of input":"'"+(this.terminals_[f]||f)+"'"),this.parseError(fe,{text:p.match,token:this.terminals_[f]||f,line:p.yylineno,loc:de,expected:se})}if(g[0]instanceof Array&&g.length>1)throw new Error("Parse Error: multiple actions possible at state: "+C+", token: "+f);switch(g[0]){case 1:c.push(f),u.push(p.yytext),e.push(p.yylloc),c.push(g[1]),f=null,be?(f=be,be=null):(Ne=p.yyleng,s=p.yytext,ee=p.yylineno,de=p.yylloc,Ae>0&&Ae--);break;case 2:if(m=this.productions_[g[1]][1],L.$=u[u.length-m],L._$={first_line:e[e.length-(m||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(m||1)].first_column,last_column:e[e.length-1].last_column},Je&&(L._$.range=[e[e.length-(m||1)].range[0],e[e.length-1].range[1]]),pe=this.performAction.apply(L,[s,Ne,ee,x.yy,g[1],u,e].concat(He)),typeof pe<"u")return pe;m&&(c=c.slice(0,-1*m*2),u=u.slice(0,-1*m),e=e.slice(0,-1*m)),c.push(this.productions_[g[1]][0]),u.push(L.$),e.push(L._$),xe=Z[c[c.length-2]][c[c.length-1]],c.push(xe);break;case 3:return!0}}return!0},"parse")},Xe=(function(){var A={EOF:1,parseError:l(function(n,c){if(this.yy.parser)this.yy.parser.parseError(n,c);else throw new Error(n)},"parseError"),setInput:l(function(a,n){return this.yy=n||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:l(function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var n=a.match(/(?:\r\n?|\n).*/g);return n?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:l(function(a){var n=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-n),this.offset-=n;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===r.length?this.yylloc.first_column:0)+r[r.length-c.length].length-c[0].length:this.yylloc.first_column-n},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-n]),this.yyleng=this.yytext.length,this},"unput"),more:l(function(){return this._more=!0,this},"more"),reject:l(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:l(function(a){this.unput(this.match.slice(a))},"less"),pastInput:l(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:l(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:l(function(){var a=this.pastInput(),n=new Array(a.length+1).join("-");return a+this.upcomingInput()+` -`+n+"^"},"showPosition"),test_match:l(function(a,n){var c,r,u;if(this.options.backtrack_lexer&&(u={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(u.yylloc.range=this.yylloc.range.slice(0))),r=a[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,n,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack){for(var e in u)this[e]=u[e];return!1}return!1},"test_match"),next:l(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,n,c,r;this._more||(this.yytext="",this.match="");for(var u=this._currentRules(),e=0;en[0].length)){if(n=c,r=e,this.options.backtrack_lexer){if(a=this.test_match(c,u[e]),a!==!1)return a;if(this._backtrack){n=!1;continue}else return!1}else if(!this.options.flex)break}return n?(a=this.test_match(n,u[r]),a!==!1?a:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:l(function(){var n=this.next();return n||this.lex()},"lex"),begin:l(function(n){this.conditionStack.push(n)},"begin"),popState:l(function(){var n=this.conditionStack.length-1;return n>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:l(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:l(function(n){return n=this.conditionStack.length-1-Math.abs(n||0),n>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:l(function(n){this.begin(n)},"pushState"),stateStackSize:l(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:l(function(n,c,r,u){var e=u;switch(r){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 72;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 61;case 25:return 58;case 26:return 58;case 27:return 62;case 28:break;case 29:return this.popState(),19;break;case 30:return c.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;break;case 34:return this.popState(),10;break;case 35:break;case 36:return 13;case 37:return 42;case 38:return 49;case 39:return this.begin("style"),37;break;case 40:return 43;case 41:return 65;case 42:return 67;case 43:return 67;case 44:return 67;case 45:return 65;case 46:return 65;case 47:return 66;case 48:return 66;case 49:return 66;case 50:return 66;case 51:return 66;case 52:return 67;case 53:return 66;case 54:return 67;case 55:return 68;case 56:return 68;case 57:return 51;case 58:return 68;case 59:return 68;case 60:return 52;case 61:return 48;case 62:return 68;case 63:return 65;case 64:return 66;case 65:return 67;case 66:return 69;case 67:return 70;case 68:return 71;case 69:return 71;case 70:return 70;case 71:return 70;case 72:return 70;case 73:return 41;case 74:return 47;case 75:return 40;case 76:return c.yytext[0];case 77:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,73,74],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,75,76,77],inclusive:!0}}};return A})();he.lexer=Xe;function $(){this.yy={}}return l($,"Parser"),$.prototype=he,he.Parser=$,new $})();ye.parser=ye;var et=ye,tt=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.direction="TB",this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},this.setAccTitle=Me,this.getAccTitle=Be,this.setAccDescription=Fe,this.getAccDescription=Ye,this.setDiagramTitle=Pe,this.getDiagramTitle=ze,this.getConfig=l(()=>j().er,"getConfig"),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{l(this,"ErDB")}addEntity(t,i=""){return this.entities.has(t)?!this.entities.get(t)?.alias&&i&&(this.entities.get(t).alias=i,v.info(`Add alias '${i}' to entity '${t}'`)):(this.entities.set(t,{id:`entity-${t}-${this.entities.size}`,label:t,attributes:[],alias:i,shape:"erBox",look:j().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),v.info("Added new entity :",t)),this.entities.get(t)}getEntity(t){return this.entities.get(t)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(t,i){let d=this.addEntity(t),o;for(o=i.length-1;o>=0;o--)i[o].keys||(i[o].keys=[]),i[o].comment||(i[o].comment=""),d.attributes.push(i[o]),v.debug("Added attribute ",i[o].name)}addRelationship(t,i,d,o){let h=this.entities.get(t),b=this.entities.get(d);if(!h||!b)return;let R={entityA:h.id,roleA:i,entityB:b.id,relSpec:o};this.relationships.push(R),v.debug("Added new relationship :",R)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(t){this.direction=t}getCompiledStyles(t){let i=[];for(let d of t){let o=this.classes.get(d);o?.styles&&(i=[...i,...o.styles??[]].map(h=>h.trim())),o?.textStyles&&(i=[...i,...o.textStyles??[]].map(h=>h.trim()))}return i}addCssStyles(t,i){for(let d of t){let o=this.entities.get(d);if(!i||!o)return;for(let h of i)o.cssStyles.push(h)}}addClass(t,i){t.forEach(d=>{let o=this.classes.get(d);o===void 0&&(o={id:d,styles:[],textStyles:[]},this.classes.set(d,o)),i&&i.forEach(function(h){if(/color/.exec(h)){let b=h.replace("fill","bgFill");o.textStyles.push(b)}o.styles.push(h)})})}setClass(t,i){for(let d of t){let o=this.entities.get(d);if(o)for(let h of i)o.cssClasses+=" "+h}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],Ve()}getData(){let t=[],i=[],d=j();for(let h of this.entities.keys()){let b=this.entities.get(h);b&&(b.cssCompiledStyles=this.getCompiledStyles(b.cssClasses.split(" ")),t.push(b))}let o=0;for(let h of this.relationships){let b={id:Ke(h.entityA,h.entityB,{prefix:"id",counter:o++}),type:"normal",curve:"basis",start:h.entityA,end:h.entityB,label:h.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:h.relSpec.cardB.toLowerCase(),arrowTypeEnd:h.relSpec.cardA.toLowerCase(),pattern:h.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:d.look,labelType:"markdown"};i.push(b)}return{nodes:t,edges:i,other:{},config:d,direction:"TB"}}},Qe={};De(Qe,{draw:()=>st});var st=l(function(t,i,d,o){return Ce(this,null,function*(){v.info("REF0:"),v.info("Drawing er diagram (unified)",i);let{securityLevel:h,er:b,layout:R}=j(),k=o.db.getData(),_=je(i,h);k.type=o.type,k.layoutAlgorithm=Ze(R),k.config.flowchart.nodeSpacing=b?.nodeSpacing||140,k.config.flowchart.rankSpacing=b?.rankSpacing||80,k.direction=o.db.getDirection(),k.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],k.diagramId=i,yield Ue(k,_),k.layoutAlgorithm==="elk"&&_.select(".edges").lower();let w=_.selectAll('[id*="-background"]');Array.from(w).length>0&&w.each(function(){let E=ve(this),Q=E.attr("id").replace("-background",""),S=_.select(`#${CSS.escape(Q)}`);if(!S.empty()){let I=S.attr("transform");E.attr("transform",I)}});let W=8;Ge.insertTitle(_,"erDiagramTitleText",b?.titleTopMargin??25,o.db.getDiagramTitle()),We(_,W,"erDiagram",b?.useMaxWidth??!0)})},"draw"),it=l((t,i)=>{let d=we,o=d(t,"r"),h=d(t,"g"),b=d(t,"b");return Le(o,h,b,i)},"fade"),rt=l(t=>` - .entityBox { - fill: ${t.mainBkg}; - stroke: ${t.nodeBorder}; - } - - .relationshipLabelBox { - fill: ${t.tertiaryColor}; - opacity: 0.7; - background-color: ${t.tertiaryColor}; - rect { - opacity: 0.5; - } - } - - .labelBkg { - background-color: ${it(t.tertiaryColor,.5)}; - } - - .edgeLabel .label { - fill: ${t.nodeBorder}; - font-size: 14px; - } - - .label { - font-family: ${t.fontFamily}; - color: ${t.nodeTextColor||t.textColor}; - } - - .edge-pattern-dashed { - stroke-dasharray: 8,8; - } - - .node rect, - .node circle, - .node ellipse, - .node polygon - { - fill: ${t.mainBkg}; - stroke: ${t.nodeBorder}; - stroke-width: 1px; - } - - .relationshipLine { - stroke: ${t.lineColor}; - stroke-width: 1; - fill: none; - } - - .marker { - fill: none !important; - stroke: ${t.lineColor} !important; - stroke-width: 1; - } - - .edgeLabel { - background-color: ${t.edgeLabelBackground}; - } - .edgeLabel .label rect { - fill: ${t.edgeLabelBackground}; - } - .edgeLabel .label text { - fill: ${t.textColor}; - } -`,"getStyles"),at=rt,Et={parser:et,get db(){return new tt},renderer:Qe,styles:at};export{Et as diagram}; diff --git a/src/google/adk/cli/browser/chunk-QL2SWWYM.js b/src/google/adk/cli/browser/chunk-QL2SWWYM.js new file mode 100644 index 0000000000..2ac530e978 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-QL2SWWYM.js @@ -0,0 +1 @@ +import{b as u,c as y,d as w,e as F}from"./chunk-VZBWMYZM.js";import{a as f,d as c,g as h}from"./chunk-NRMNZ7EH.js";import{t as m}from"./chunk-UKZIEWH5.js";import{A as p,M as g}from"./chunk-37QI3DOO.js";import{g as e,i as d}from"./chunk-JRNAXTJ7.js";import{j as i}from"./chunk-RMXJBC7V.js";var L={common:g,getConfig:p,insertCluster:c,insertEdge:w,insertEdgeLabel:u,insertMarkers:F,insertNode:h,interpolateToCurve:m,labelHelper:f,log:d,positionEdgeLabel:y},a={},E=e(t=>{for(let r of t)a[r.name]=r},"registerLayoutLoaders"),b=e(()=>{E([{name:"dagre",loader:e(()=>i(null,null,function*(){return yield import("./chunk-Y55XRFJI.js")}),"loader")},{name:"cose-bilkent",loader:e(()=>i(null,null,function*(){return yield import("./chunk-HD4LLD2O.js")}),"loader")}])},"registerDefaultLayoutLoaders");b();var R=e((t,r)=>i(null,null,function*(){if(!(t.layoutAlgorithm in a))throw new Error(`Unknown layout algorithm: ${t.layoutAlgorithm}`);if(t.diagramId)for(let o of t.nodes){let I=o.domId||o.id;o.domId=`${t.diagramId}-${I}`}let n=a[t.layoutAlgorithm],$=yield n.loader(),{theme:s,themeVariables:D}=t.config,{useGradient:v,gradientStart:x,gradientStop:A}=D,l=r.attr("id");if(r.append("defs").append("filter").attr("id",`${l}-drop-shadow`).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${s?.includes("dark")?"#FFFFFF":"#000000"}`),r.append("defs").append("filter").attr("id",`${l}-drop-shadow-small`).attr("height","150%").attr("width","150%").append("feDropShadow").attr("dx","2").attr("dy","2").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${s?.includes("dark")?"#FFFFFF":"#000000"}`),v){let o=r.append("linearGradient").attr("id",r.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");o.append("svg:stop").attr("offset","0%").attr("stop-color",x).attr("stop-opacity",1),o.append("svg:stop").attr("offset","100%").attr("stop-color",A).attr("stop-opacity",1)}return $.render(t,r,L,{algorithm:n.algorithm})}),"render"),U=e((t="",{fallback:r="dagre"}={})=>{if(t in a)return t;if(r in a)return d.warn(`Layout algorithm ${t} is not registered. Using ${r} as fallback.`),r;throw new Error(`Both layout algorithms ${t} and ${r} are not registered.`)},"getRegisteredLayoutAlgorithm");export{E as a,R as b,U as c}; diff --git a/src/google/adk/cli/browser/chunk-QMDHABEH.js b/src/google/adk/cli/browser/chunk-QMDHABEH.js deleted file mode 100644 index 7dbba58b45..0000000000 --- a/src/google/adk/cli/browser/chunk-QMDHABEH.js +++ /dev/null @@ -1,139 +0,0 @@ -import{a as gt}from"./chunk-B2DSW4QB.js";import{a as dt,b as ft,c as pt,f as Z}from"./chunk-NMKTPNXE.js";import"./chunk-GP6TCC26.js";import{N as st,R as at,S as lt,T as ot,U as ct,V as ht,W as ut,X as yt,Y as F}from"./chunk-QFMJV7VH.js";import{K as U,a as W,g as n}from"./chunk-JRNAXTJ7.js";import"./chunk-RMXJBC7V.js";var K=(function(){var t=n(function(h,r,a,l){for(a=a||{},l=h.length;l--;a[h[l]]=r);return a},"o"),e=[6,8,10,11,12,14,16,17,18],s=[1,9],c=[1,10],i=[1,11],f=[1,12],u=[1,13],d=[1,14],g={trace:n(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:n(function(r,a,l,y,p,o,v){var k=o.length-1;switch(p){case 1:return o[k-1];case 2:this.$=[];break;case 3:o[k-1].push(o[k]),this.$=o[k-1];break;case 4:case 5:this.$=o[k];break;case 6:case 7:this.$=[];break;case 8:y.setDiagramTitle(o[k].substr(6)),this.$=o[k].substr(6);break;case 9:this.$=o[k].trim(),y.setAccTitle(this.$);break;case 10:case 11:this.$=o[k].trim(),y.setAccDescription(this.$);break;case 12:y.addSection(o[k].substr(8)),this.$=o[k].substr(8);break;case 13:y.addTask(o[k-1],o[k]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:s,12:c,14:i,16:f,17:u,18:d},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:15,11:s,12:c,14:i,16:f,17:u,18:d},t(e,[2,5]),t(e,[2,6]),t(e,[2,8]),{13:[1,16]},{15:[1,17]},t(e,[2,11]),t(e,[2,12]),{19:[1,18]},t(e,[2,4]),t(e,[2,9]),t(e,[2,10]),t(e,[2,13])],defaultActions:{},parseError:n(function(r,a){if(a.recoverable)this.trace(r);else{var l=new Error(r);throw l.hash=a,l}},"parseError"),parse:n(function(r){var a=this,l=[0],y=[],p=[null],o=[],v=this.table,k="",C=0,tt=0,et=0,$t=2,rt=1,Mt=o.slice.call(arguments,1),b=Object.create(this.lexer),I={yy:{}};for(var Y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Y)&&(I.yy[Y]=this.yy[Y]);b.setInput(r,I.yy),I.yy.lexer=b,I.yy.parser=this,typeof b.yylloc>"u"&&(b.yylloc={});var q=b.yylloc;o.push(q);var Et=b.options&&b.options.ranges;typeof I.yy.parseError=="function"?this.parseError=I.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ct(w){l.length=l.length-2*w,p.length=p.length-w,o.length=o.length-w}n(Ct,"popStack");function it(){var w;return w=y.pop()||b.lex()||rt,typeof w!="number"&&(w instanceof Array&&(y=w,w=y.pop()),w=a.symbols_[w]||w),w}n(it,"lex");for(var _,H,A,T,Jt,X,V={},N,M,nt,z;;){if(A=l[l.length-1],this.defaultActions[A]?T=this.defaultActions[A]:((_===null||typeof _>"u")&&(_=it()),T=v[A]&&v[A][_]),typeof T>"u"||!T.length||!T[0]){var G="";z=[];for(N in v[A])this.terminals_[N]&&N>$t&&z.push("'"+this.terminals_[N]+"'");b.showPosition?G="Parse error on line "+(C+1)+`: -`+b.showPosition()+` -Expecting `+z.join(", ")+", got '"+(this.terminals_[_]||_)+"'":G="Parse error on line "+(C+1)+": Unexpected "+(_==rt?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(G,{text:b.match,token:this.terminals_[_]||_,line:b.yylineno,loc:q,expected:z})}if(T[0]instanceof Array&&T.length>1)throw new Error("Parse Error: multiple actions possible at state: "+A+", token: "+_);switch(T[0]){case 1:l.push(_),p.push(b.yytext),o.push(b.yylloc),l.push(T[1]),_=null,H?(_=H,H=null):(tt=b.yyleng,k=b.yytext,C=b.yylineno,q=b.yylloc,et>0&&et--);break;case 2:if(M=this.productions_[T[1]][1],V.$=p[p.length-M],V._$={first_line:o[o.length-(M||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(M||1)].first_column,last_column:o[o.length-1].last_column},Et&&(V._$.range=[o[o.length-(M||1)].range[0],o[o.length-1].range[1]]),X=this.performAction.apply(V,[k,tt,C,I.yy,T[1],p,o].concat(Mt)),typeof X<"u")return X;M&&(l=l.slice(0,-1*M*2),p=p.slice(0,-1*M),o=o.slice(0,-1*M)),l.push(this.productions_[T[1]][0]),p.push(V.$),o.push(V._$),nt=v[l[l.length-2]][l[l.length-1]],l.push(nt);break;case 3:return!0}}return!0},"parse")},m=(function(){var h={EOF:1,parseError:n(function(a,l){if(this.yy.parser)this.yy.parser.parseError(a,l);else throw new Error(a)},"parseError"),setInput:n(function(r,a){return this.yy=a||this.yy||{},this._input=r,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:n(function(){var r=this._input[0];this.yytext+=r,this.yyleng++,this.offset++,this.match+=r,this.matched+=r;var a=r.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),r},"input"),unput:n(function(r){var a=r.length,l=r.split(/(?:\r\n?|\n)/g);this._input=r+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var y=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1&&(this.yylineno-=l.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===y.length?this.yylloc.first_column:0)+y[y.length-l.length].length-l[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-a]),this.yyleng=this.yytext.length,this},"unput"),more:n(function(){return this._more=!0,this},"more"),reject:n(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:n(function(r){this.unput(this.match.slice(r))},"less"),pastInput:n(function(){var r=this.matched.substr(0,this.matched.length-this.match.length);return(r.length>20?"...":"")+r.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:n(function(){var r=this.match;return r.length<20&&(r+=this._input.substr(0,20-r.length)),(r.substr(0,20)+(r.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:n(function(){var r=this.pastInput(),a=new Array(r.length+1).join("-");return r+this.upcomingInput()+` -`+a+"^"},"showPosition"),test_match:n(function(r,a){var l,y,p;if(this.options.backtrack_lexer&&(p={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(p.yylloc.range=this.yylloc.range.slice(0))),y=r[0].match(/(?:\r\n?|\n).*/g),y&&(this.yylineno+=y.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:y?y[y.length-1].length-y[y.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+r[0].length},this.yytext+=r[0],this.match+=r[0],this.matches=r,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(r[0].length),this.matched+=r[0],l=this.performAction.call(this,this.yy,this,a,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),l)return l;if(this._backtrack){for(var o in p)this[o]=p[o];return!1}return!1},"test_match"),next:n(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var r,a,l,y;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),o=0;oa[0].length)){if(a=l,y=o,this.options.backtrack_lexer){if(r=this.test_match(l,p[o]),r!==!1)return r;if(this._backtrack){a=!1;continue}else return!1}else if(!this.options.flex)break}return a?(r=this.test_match(a,p[y]),r!==!1?r:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:n(function(){var a=this.next();return a||this.lex()},"lex"),begin:n(function(a){this.conditionStack.push(a)},"begin"),popState:n(function(){var a=this.conditionStack.length-1;return a>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:n(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:n(function(a){return a=this.conditionStack.length-1-Math.abs(a||0),a>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:n(function(a){this.begin(a)},"pushState"),stateStackSize:n(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:n(function(a,l,y,p){var o=p;switch(y){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return h})();g.lexer=m;function x(){this.yy={}}return n(x,"Parser"),x.prototype=g,g.Parser=x,new x})();K.parser=K;var Pt=K,R="",Q=[],L=[],B=[],It=n(function(){Q.length=0,L.length=0,R="",B.length=0,at()},"clear"),At=n(function(t){R=t,Q.push(t)},"addSection"),Ft=n(function(){return Q},"getSections"),Vt=n(function(){let t=mt(),e=100,s=0;for(;!t&&s{s.people&&t.push(...s.people)}),[...new Set(t)].sort()},"updateActors"),Lt=n(function(t,e){let s=e.substr(1).split(":"),c=0,i=[];s.length===1?(c=Number(s[0]),i=[]):(c=Number(s[0]),i=s[1].split(","));let f=i.map(d=>d.trim()),u={section:R,type:R,people:f,task:t,score:c};B.push(u)},"addTask"),Bt=n(function(t){let e={section:R,type:R,description:t,task:t,classes:[]};L.push(e)},"addTaskOrg"),mt=n(function(){let t=n(function(s){return B[s].processed},"compileTask"),e=!0;for(let[s,c]of B.entries())t(s),e=e&&c.processed;return e},"compileTasks"),jt=n(function(){return Rt()},"getActors"),xt={getConfig:n(()=>F().journey,"getConfig"),clear:It,setDiagramTitle:ut,getDiagramTitle:yt,setAccTitle:lt,getAccTitle:ot,setAccDescription:ct,getAccDescription:ht,addSection:At,getSections:Ft,getTasks:Vt,addTask:Lt,addTaskOrg:Bt,getActors:jt},Nt=n(t=>`.label { - font-family: ${t.fontFamily}; - color: ${t.textColor}; - } - .mouth { - stroke: #666; - } - - line { - stroke: ${t.textColor} - } - - .legend { - fill: ${t.textColor}; - font-family: ${t.fontFamily}; - } - - .label text { - fill: #333; - } - .label { - color: ${t.textColor} - } - - .face { - ${t.faceColor?`fill: ${t.faceColor}`:"fill: #FFF8DC"}; - stroke: #999; - } - - .node rect, - .node circle, - .node ellipse, - .node polygon, - .node path { - fill: ${t.mainBkg}; - stroke: ${t.nodeBorder}; - stroke-width: 1px; - } - - .node .label { - text-align: center; - } - .node.clickable { - cursor: pointer; - } - - .arrowheadPath { - fill: ${t.arrowheadColor}; - } - - .edgePath .path { - stroke: ${t.lineColor}; - stroke-width: 1.5px; - } - - .flowchart-link { - stroke: ${t.lineColor}; - fill: none; - } - - .edgeLabel { - background-color: ${t.edgeLabelBackground}; - rect { - opacity: 0.5; - } - text-align: center; - } - - .cluster rect { - } - - .cluster text { - fill: ${t.titleColor}; - } - - div.mermaidTooltip { - position: absolute; - text-align: center; - max-width: 200px; - padding: 2px; - font-family: ${t.fontFamily}; - font-size: 12px; - background: ${t.tertiaryColor}; - border: 1px solid ${t.border2}; - border-radius: 2px; - pointer-events: none; - z-index: 100; - } - - .task-type-0, .section-type-0 { - ${t.fillType0?`fill: ${t.fillType0}`:""}; - } - .task-type-1, .section-type-1 { - ${t.fillType0?`fill: ${t.fillType1}`:""}; - } - .task-type-2, .section-type-2 { - ${t.fillType0?`fill: ${t.fillType2}`:""}; - } - .task-type-3, .section-type-3 { - ${t.fillType0?`fill: ${t.fillType3}`:""}; - } - .task-type-4, .section-type-4 { - ${t.fillType0?`fill: ${t.fillType4}`:""}; - } - .task-type-5, .section-type-5 { - ${t.fillType0?`fill: ${t.fillType5}`:""}; - } - .task-type-6, .section-type-6 { - ${t.fillType0?`fill: ${t.fillType6}`:""}; - } - .task-type-7, .section-type-7 { - ${t.fillType0?`fill: ${t.fillType7}`:""}; - } - - .actor-0 { - ${t.actor0?`fill: ${t.actor0}`:""}; - } - .actor-1 { - ${t.actor1?`fill: ${t.actor1}`:""}; - } - .actor-2 { - ${t.actor2?`fill: ${t.actor2}`:""}; - } - .actor-3 { - ${t.actor3?`fill: ${t.actor3}`:""}; - } - .actor-4 { - ${t.actor4?`fill: ${t.actor4}`:""}; - } - .actor-5 { - ${t.actor5?`fill: ${t.actor5}`:""}; - } - ${gt()} -`,"getStyles"),zt=Nt,D=n(function(t,e){return dt(t,e)},"drawRect"),Wt=n(function(t,e){let c=t.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=t.append("g");i.append("circle").attr("cx",e.cx-15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+15/3).attr("cy",e.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function f(g){let m=U().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);g.append("path").attr("class","mouth").attr("d",m).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}n(f,"smile");function u(g){let m=U().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);g.append("path").attr("class","mouth").attr("d",m).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}n(u,"sad");function d(g){g.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return n(d,"ambivalent"),e.score>3?f(i):e.score<3?u(i):d(i),c},"drawFace"),vt=n(function(t,e){let s=t.append("circle");return s.attr("cx",e.cx),s.attr("cy",e.cy),s.attr("class","actor-"+e.pos),s.attr("fill",e.fill),s.attr("stroke",e.stroke),s.attr("r",e.r),s.class!==void 0&&s.attr("class",s.class),e.title!==void 0&&s.append("title").text(e.title),s},"drawCircle"),wt=n(function(t,e){return pt(t,e)},"drawText"),Ot=n(function(t,e){function s(i,f,u,d,g){return i+","+f+" "+(i+u)+","+f+" "+(i+u)+","+(f+d-g)+" "+(i+u-g*1.2)+","+(f+d)+" "+i+","+(f+d)}n(s,"genPoints");let c=t.append("polygon");c.attr("points",s(e.x,e.y,50,20,7)),c.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+.5*e.labelMargin,wt(t,e)},"drawLabel"),Yt=n(function(t,e,s){let c=t.append("g"),i=Z();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=s.width*e.taskCount+s.diagramMarginX*(e.taskCount-1),i.height=s.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,D(c,i),Tt(s)(e.text,c,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},s,e.colour)},"drawSection"),kt=-1,qt=n(function(t,e,s){let c=e.x+s.width/2,i=t.append("g");kt++,i.append("line").attr("id","task"+kt).attr("x1",c).attr("y1",e.y).attr("x2",c).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),Wt(i,{cx:c,cy:300+(5-e.score)*30,score:e.score});let u=Z();u.x=e.x,u.y=e.y,u.fill=e.fill,u.width=s.width,u.height=s.height,u.class="task task-type-"+e.num,u.rx=3,u.ry=3,D(i,u);let d=e.x+14;e.people.forEach(g=>{let m=e.actors[g].color,x={cx:d,cy:e.y,r:7,fill:m,stroke:"#000",title:g,pos:e.actors[g].position};vt(i,x),d+=10}),Tt(s)(e.task,i,u.x,u.y,u.width,u.height,{class:"task"},s,e.colour)},"drawTask"),Ht=n(function(t,e){ft(t,e)},"drawBackgroundRect"),Tt=(function(){function t(i,f,u,d,g,m,x,h){let r=f.append("text").attr("x",u+g/2).attr("y",d+m/2+5).style("font-color",h).style("text-anchor","middle").text(i);c(r,x)}n(t,"byText");function e(i,f,u,d,g,m,x,h,r){let{taskFontSize:a,taskFontFamily:l}=h,y=i.split(//gi);for(let p=0;p{let f=E[i].color,u={cx:20,cy:c,r:7,fill:f,stroke:"#000",pos:E[i].position};j.drawCircle(t,u);let d=t.append("text").attr("visibility","hidden").text(i),g=d.node().getBoundingClientRect().width;d.remove();let m=[];if(g<=s)m=[i];else{let x=i.split(" "),h="";d=t.append("text").attr("visibility","hidden"),x.forEach(r=>{let a=h?`${h} ${r}`:r;if(d.text(a),d.node().getBoundingClientRect().width>s){if(h&&m.push(h),h=r,d.text(r),d.node().getBoundingClientRect().width>s){let y="";for(let p of r)y+=p,d.text(y+"-"),d.node().getBoundingClientRect().width>s&&(m.push(y.slice(0,-1)+"-"),y=p);h=y}}else h=a}),h&&m.push(h),d.remove()}m.forEach((x,h)=>{let r={x:40,y:c+7+h*20,fill:"#666",text:x,textMargin:e.boxTextMargin??5},l=j.drawText(t,r).node().getBoundingClientRect().width;l>O&&l>e.leftMargin-l&&(O=l)}),c+=Math.max(20,m.length*20)})}n(St,"drawActorLegend");var $=F().journey,P=0,Ut=n(function(t,e,s,c){let i=F(),f=i.journey.titleColor,u=i.journey.titleFontSize,d=i.journey.titleFontFamily,g=i.securityLevel,m;g==="sandbox"&&(m=W("#i"+e));let x=g==="sandbox"?W(m.nodes()[0].contentDocument.body):W("body");S.init();let h=x.select("#"+e);j.initGraphics(h);let r=c.db.getTasks(),a=c.db.getDiagramTitle(),l=c.db.getActors();for(let C in E)delete E[C];let y=0;l.forEach(C=>{E[C]={color:$.actorColours[y%$.actorColours.length],position:y},y++}),St(h),P=$.leftMargin+O,S.insert(0,0,P,Object.keys(E).length*50),Zt(h,r,0);let p=S.getBounds();a&&h.append("text").text(a).attr("x",P).attr("font-size",u).attr("font-weight","bold").attr("y",25).attr("fill",f).attr("font-family",d);let o=p.stopy-p.starty+2*$.diagramMarginY,v=P+p.stopx+2*$.diagramMarginX;st(h,o,v,$.useMaxWidth),h.append("line").attr("x1",P).attr("y1",$.height*4).attr("x2",v-P-4).attr("y2",$.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");let k=a?70:0;h.attr("viewBox",`${p.startx} -25 ${v} ${o+k}`),h.attr("preserveAspectRatio","xMinYMin meet"),h.attr("height",o+k+25)},"draw"),S={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:n(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:n(function(t,e,s,c){t[e]===void 0?t[e]=s:t[e]=c(s,t[e])},"updateVal"),updateBounds:n(function(t,e,s,c){let i=F().journey,f=this,u=0;function d(g){return n(function(x){u++;let h=f.sequenceItems.length-u+1;f.updateVal(x,"starty",e-h*i.boxMargin,Math.min),f.updateVal(x,"stopy",c+h*i.boxMargin,Math.max),f.updateVal(S.data,"startx",t-h*i.boxMargin,Math.min),f.updateVal(S.data,"stopx",s+h*i.boxMargin,Math.max),g!=="activation"&&(f.updateVal(x,"startx",t-h*i.boxMargin,Math.min),f.updateVal(x,"stopx",s+h*i.boxMargin,Math.max),f.updateVal(S.data,"starty",e-h*i.boxMargin,Math.min),f.updateVal(S.data,"stopy",c+h*i.boxMargin,Math.max))},"updateItemBounds")}n(d,"updateFn"),this.sequenceItems.forEach(d())},"updateBounds"),insert:n(function(t,e,s,c){let i=Math.min(t,s),f=Math.max(t,s),u=Math.min(e,c),d=Math.max(e,c);this.updateVal(S.data,"startx",i,Math.min),this.updateVal(S.data,"starty",u,Math.min),this.updateVal(S.data,"stopx",f,Math.max),this.updateVal(S.data,"stopy",d,Math.max),this.updateBounds(i,u,f,d)},"insert"),bumpVerticalPos:n(function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:n(function(){return this.verticalPos},"getVerticalPos"),getBounds:n(function(){return this.data},"getBounds")},J=$.sectionFills,bt=$.sectionColours,Zt=n(function(t,e,s){let c=F().journey,i="",f=c.height*2+c.diagramMarginY,u=s+f,d=0,g="#CCC",m="black",x=0;for(let[h,r]of e.entries()){if(i!==r.section){g=J[d%J.length],x=d%J.length,m=bt[d%bt.length];let l=0,y=r.section;for(let o=h;o(E[y]&&(l[y]=E[y]),l),{});r.x=h*c.taskMargin+h*c.width+P,r.y=u,r.width=c.diagramMarginX,r.height=c.diagramMarginY,r.colour=m,r.fill=g,r.num=x,r.actors=a,j.drawTask(t,r,c),S.insert(r.x,r.y,r.x+r.width+c.taskMargin,450)}},"drawTasks"),_t={setConf:Gt,draw:Ut},ie={parser:Pt,db:xt,renderer:_t,styles:zt,init:n(t=>{_t.setConf(t.journey),xt.clear()},"init")};export{ie as diagram}; diff --git a/src/google/adk/cli/browser/chunk-QXIJPCUK.js b/src/google/adk/cli/browser/chunk-QXIJPCUK.js new file mode 100644 index 0000000000..ab0e79178c --- /dev/null +++ b/src/google/adk/cli/browser/chunk-QXIJPCUK.js @@ -0,0 +1 @@ +import{a as n,b as o,c as i,d as s,e as T,f as r,g as u,o as d,q as l,s as c}from"./chunk-7ZGKZ6HH.js";var m=class extends l{static{r(this,"TreeViewValueConverter")}runCustomConverter(t,e,a){if(t.name==="INDENTATION")return e?.length||0;if(t.name==="STRING2")return e.substring(1,e.length-1)}},V=class extends c{static{r(this,"TreeViewTokenBuilder")}constructor(){super(["treeView-beta"])}},v={parser:{TokenBuilder:r(()=>new V,"TokenBuilder"),ValueConverter:r(()=>new m,"ValueConverter")}};function w(t=s){let e=i(o(t),u),a=i(n({shared:e}),d,v);return e.ServiceRegistry.register(a),{shared:e,TreeView:a}}r(w,"createTreeViewServices");export{v as a,w as b}; diff --git a/src/google/adk/cli/browser/chunk-W67OU2Q2.js b/src/google/adk/cli/browser/chunk-R7A5HXMQ.js similarity index 99% rename from src/google/adk/cli/browser/chunk-W67OU2Q2.js rename to src/google/adk/cli/browser/chunk-R7A5HXMQ.js index 7f141bceba..5436b9e45c 100644 --- a/src/google/adk/cli/browser/chunk-W67OU2Q2.js +++ b/src/google/adk/cli/browser/chunk-R7A5HXMQ.js @@ -1,4 +1,4 @@ -import{M as xt,O as kt,R as _t,S as vt,T as bt,U as St,V as wt,W as Lt,X as Et,Y as Q,_ as At}from"./chunk-QFMJV7VH.js";import{J as Ct,a as q,g as y,r as Tt}from"./chunk-JRNAXTJ7.js";import"./chunk-RMXJBC7V.js";function X(t,n){let r;if(n===void 0)for(let l of t)l!=null&&(r=l)&&(r=l);else{let l=-1;for(let f of t)(f=n(f,++l,t))!=null&&(r=f)&&(r=f)}return r}function F(t,n){let r;if(n===void 0)for(let l of t)l!=null&&(r>l||r===void 0&&l>=l)&&(r=l);else{let l=-1;for(let f of t)(f=n(f,++l,t))!=null&&(r>f||r===void 0&&f>=f)&&(r=f)}return r}function U(t,n){let r=0;if(n===void 0)for(let l of t)(l=+l)&&(r+=l);else{let l=-1;for(let f of t)(f=+n(f,++l,t))&&(r+=f)}return r}function Bt(t){return t.target.depth}function st(t){return t.depth}function it(t,n){return n-1-t.height}function G(t,n){return t.sourceLinks.length?t.depth:n-1}function at(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?F(t.sourceLinks,Bt)-1:0}function W(t){return function(){return t}}function Mt(t,n){return K(t.source,n.source)||t.index-n.index}function Ot(t,n){return K(t.target,n.target)||t.index-n.index}function K(t,n){return t.y0-n.y0}function lt(t){return t.value}function $t(t){return t.index}function Vt(t){return t.nodes}function Ft(t){return t.links}function It(t,n){let r=t.get(n);if(!r)throw new Error("missing: "+n);return r}function Nt({nodes:t}){for(let n of t){let r=n.y0,l=r;for(let f of n.sourceLinks)f.y0=r+f.width/2,r+=f.width;for(let f of n.targetLinks)f.y1=l+f.width/2,l+=f.width}}function Z(){let t=0,n=0,r=1,l=1,f=24,S=8,m,x=$t,o=G,i,a,k=Vt,_=Ft,d=6;function v(){let e={nodes:k.apply(null,arguments),links:_.apply(null,arguments)};return C(e),T(e),M(e),P(e),z(e),Nt(e),e}v.update=function(e){return Nt(e),e},v.nodeId=function(e){return arguments.length?(x=typeof e=="function"?e:W(e),v):x},v.nodeAlign=function(e){return arguments.length?(o=typeof e=="function"?e:W(e),v):o},v.nodeSort=function(e){return arguments.length?(i=e,v):i},v.nodeWidth=function(e){return arguments.length?(f=+e,v):f},v.nodePadding=function(e){return arguments.length?(S=m=+e,v):S},v.nodes=function(e){return arguments.length?(k=typeof e=="function"?e:W(e),v):k},v.links=function(e){return arguments.length?(_=typeof e=="function"?e:W(e),v):_},v.linkSort=function(e){return arguments.length?(a=e,v):a},v.size=function(e){return arguments.length?(t=n=0,r=+e[0],l=+e[1],v):[r-t,l-n]},v.extent=function(e){return arguments.length?(t=+e[0][0],r=+e[1][0],n=+e[0][1],l=+e[1][1],v):[[t,n],[r,l]]},v.iterations=function(e){return arguments.length?(d=+e,v):d};function C({nodes:e,links:u}){for(let[h,s]of e.entries())s.index=h,s.sourceLinks=[],s.targetLinks=[];let c=new Map(e.map((h,s)=>[x(h,s,e),h]));for(let[h,s]of u.entries()){s.index=h;let{source:g,target:b}=s;typeof g!="object"&&(g=s.source=It(c,g)),typeof b!="object"&&(b=s.target=It(c,b)),g.sourceLinks.push(s),b.targetLinks.push(s)}if(a!=null)for(let{sourceLinks:h,targetLinks:s}of e)h.sort(a),s.sort(a)}function T({nodes:e}){for(let u of e)u.value=u.fixedValue===void 0?Math.max(U(u.sourceLinks,lt),U(u.targetLinks,lt)):u.fixedValue}function M({nodes:e}){let u=e.length,c=new Set(e),h=new Set,s=0;for(;c.size;){for(let g of c){g.depth=s;for(let{target:b}of g.sourceLinks)h.add(b)}if(++s>u)throw new Error("circular link");c=h,h=new Set}}function P({nodes:e}){let u=e.length,c=new Set(e),h=new Set,s=0;for(;c.size;){for(let g of c){g.height=s;for(let{source:b}of g.targetLinks)h.add(b)}if(++s>u)throw new Error("circular link");c=h,h=new Set}}function j({nodes:e}){let u=X(e,s=>s.depth)+1,c=(r-t-f)/(u-1),h=new Array(u);for(let s of e){let g=Math.max(0,Math.min(u-1,Math.floor(o.call(null,s,u))));s.layer=g,s.x0=t+g*c,s.x1=s.x0+f,h[g]?h[g].push(s):h[g]=[s]}if(i)for(let s of h)s.sort(i);return h}function B(e){let u=F(e,c=>(l-n-(c.length-1)*m)/U(c,lt));for(let c of e){let h=n;for(let s of c){s.y0=h,s.y1=h+s.value*u,h=s.y1+m;for(let g of s.sourceLinks)g.width=g.value*u}h=(l-h+m)/(c.length+1);for(let s=0;sc.length)-1)),B(u);for(let c=0;c0))continue;let D=($/N-b.y0)*u;b.y0+=D,b.y1+=D,A(b)}i===void 0&&g.sort(K),R(g,c)}}function O(e,u,c){for(let h=e.length,s=h-2;s>=0;--s){let g=e[s];for(let b of g){let $=0,N=0;for(let{target:L,value:ot}of b.sourceLinks){let Y=ot*(L.layer-b.layer);$+=H(b,L)*Y,N+=Y}if(!(N>0))continue;let D=($/N-b.y0)*u;b.y0+=D,b.y1+=D,A(b)}i===void 0&&g.sort(K),R(g,c)}}function R(e,u){let c=e.length>>1,h=e[c];p(e,h.y0-m,c-1,u),I(e,h.y1+m,c+1,u),p(e,l,e.length-1,u),I(e,n,0,u)}function I(e,u,c,h){for(;c1e-6&&(s.y0+=g,s.y1+=g),u=s.y1+m}}function p(e,u,c,h){for(;c>=0;--c){let s=e[c],g=(s.y1-u)*h;g>1e-6&&(s.y0-=g,s.y1-=g),u=s.y0-m}}function A({sourceLinks:e,targetLinks:u}){if(a===void 0){for(let{source:{sourceLinks:c}}of u)c.sort(Ot);for(let{target:{targetLinks:c}}of e)c.sort(Mt)}}function J(e){if(a===void 0)for(let{sourceLinks:u,targetLinks:c}of e)u.sort(Ot),c.sort(Mt)}function E(e,u){let c=e.y0-(e.sourceLinks.length-1)*m/2;for(let{target:h,width:s}of e.sourceLinks){if(h===u)break;c+=s+m}for(let{source:h,width:s}of u.targetLinks){if(h===e)break;c-=s}return c}function H(e,u){let c=u.y0-(u.targetLinks.length-1)*m/2;for(let{source:h,width:s}of u.targetLinks){if(h===e)break;c+=s+m}for(let{target:h,width:s}of e.sourceLinks){if(h===u)break;c-=s}return c}return v}var ut=Math.PI,ft=2*ut,V=1e-6,Ut=ft-V;function ct(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Pt(){return new ct}ct.prototype=Pt.prototype={constructor:ct,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,r,l){this._+="Q"+ +t+","+ +n+","+(this._x1=+r)+","+(this._y1=+l)},bezierCurveTo:function(t,n,r,l,f,S){this._+="C"+ +t+","+ +n+","+ +r+","+ +l+","+(this._x1=+f)+","+(this._y1=+S)},arcTo:function(t,n,r,l,f){t=+t,n=+n,r=+r,l=+l,f=+f;var S=this._x1,m=this._y1,x=r-t,o=l-n,i=S-t,a=m-n,k=i*i+a*a;if(f<0)throw new Error("negative radius: "+f);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(k>V)if(!(Math.abs(a*x-o*i)>V)||!f)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var _=r-S,d=l-m,v=x*x+o*o,C=_*_+d*d,T=Math.sqrt(v),M=Math.sqrt(k),P=f*Math.tan((ut-Math.acos((v+k-C)/(2*T*M)))/2),j=P/M,B=P/T;Math.abs(j-1)>V&&(this._+="L"+(t+j*i)+","+(n+j*a)),this._+="A"+f+","+f+",0,0,"+ +(a*_>i*d)+","+(this._x1=t+B*x)+","+(this._y1=n+B*o)}},arc:function(t,n,r,l,f,S){t=+t,n=+n,r=+r,S=!!S;var m=r*Math.cos(l),x=r*Math.sin(l),o=t+m,i=n+x,a=1^S,k=S?l-f:f-l;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+o+","+i:(Math.abs(this._x1-o)>V||Math.abs(this._y1-i)>V)&&(this._+="L"+o+","+i),r&&(k<0&&(k=k%ft+ft),k>Ut?this._+="A"+r+","+r+",0,1,"+a+","+(t-m)+","+(n-x)+"A"+r+","+r+",0,1,"+a+","+(this._x1=o)+","+(this._y1=i):k>V&&(this._+="A"+r+","+r+",0,"+ +(k>=ut)+","+a+","+(this._x1=t+r*Math.cos(f))+","+(this._y1=n+r*Math.sin(f))))},rect:function(t,n,r,l){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +r+"v"+ +l+"h"+-r+"Z"},toString:function(){return this._}};var ht=Pt;function dt(t){return function(){return t}}function Rt(t){return t[0]}function zt(t){return t[1]}var Dt=Array.prototype.slice;function Wt(t){return t.source}function Ht(t){return t.target}function Yt(t){var n=Wt,r=Ht,l=Rt,f=zt,S=null;function m(){var x,o=Dt.call(arguments),i=n.apply(this,o),a=r.apply(this,o);if(S||(S=x=ht()),t(S,+l.apply(this,(o[0]=i,o)),+f.apply(this,o),+l.apply(this,(o[0]=a,o)),+f.apply(this,o)),x)return S=null,x+""||null}return m.source=function(x){return arguments.length?(n=x,m):n},m.target=function(x){return arguments.length?(r=x,m):r},m.x=function(x){return arguments.length?(l=typeof x=="function"?x:dt(+x),m):l},m.y=function(x){return arguments.length?(f=typeof x=="function"?x:dt(+x),m):f},m.context=function(x){return arguments.length?(S=x??null,m):S},m}function qt(t,n,r,l,f){t.moveTo(n,r),t.bezierCurveTo(n=(n+l)/2,r,n,f,l,f)}function pt(){return Yt(qt)}function Xt(t){return[t.source.x1,t.y0]}function Gt(t){return[t.target.x0,t.y1]}function yt(){return pt().source(Xt).target(Gt)}var mt=(function(){var t=y(function(x,o,i,a){for(i=i||{},a=x.length;a--;i[x[a]]=o);return i},"o"),n=[1,9],r=[1,10],l=[1,5,10,12],f={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:y(function(o,i,a,k,_,d,v){var C=d.length-1;switch(_){case 7:let T=k.findOrCreateNode(d[C-4].trim().replaceAll('""','"')),M=k.findOrCreateNode(d[C-2].trim().replaceAll('""','"')),P=parseFloat(d[C].trim());k.addLink(T,M,P);break;case 8:case 9:case 11:this.$=d[C];break;case 10:this.$=d[C-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:r},{1:[2,6],7:11,10:[1,12]},t(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(l,[2,8]),t(l,[2,9]),{19:[1,16]},t(l,[2,11]),{1:[2,1]},{1:[2,5]},t(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:r},{15:18,16:7,17:8,18:n,20:r},{18:[1,19]},t(r,[2,3]),{12:[1,20]},t(l,[2,10]),{15:21,16:7,17:8,18:n,20:r},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:y(function(o,i){if(i.recoverable)this.trace(o);else{var a=new Error(o);throw a.hash=i,a}},"parseError"),parse:y(function(o){var i=this,a=[0],k=[],_=[null],d=[],v=this.table,C="",T=0,M=0,P=0,j=2,B=1,z=d.slice.call(arguments,1),w=Object.create(this.lexer),O={yy:{}};for(var R in this.yy)Object.prototype.hasOwnProperty.call(this.yy,R)&&(O.yy[R]=this.yy[R]);w.setInput(o,O.yy),O.yy.lexer=w,O.yy.parser=this,typeof w.yylloc>"u"&&(w.yylloc={});var I=w.yylloc;d.push(I);var p=w.options&&w.options.ranges;typeof O.yy.parseError=="function"?this.parseError=O.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function A(L){a.length=a.length-2*L,_.length=_.length-L,d.length=d.length-L}y(A,"popStack");function J(){var L;return L=k.pop()||w.lex()||B,typeof L!="number"&&(L instanceof Array&&(k=L,L=k.pop()),L=i.symbols_[L]||L),L}y(J,"lex");for(var E,H,e,u,c,h,s={},g,b,$,N;;){if(e=a[a.length-1],this.defaultActions[e]?u=this.defaultActions[e]:((E===null||typeof E>"u")&&(E=J()),u=v[e]&&v[e][E]),typeof u>"u"||!u.length||!u[0]){var D="";N=[];for(g in v[e])this.terminals_[g]&&g>j&&N.push("'"+this.terminals_[g]+"'");w.showPosition?D="Parse error on line "+(T+1)+`: +import{M as xt,O as kt,R as _t,S as vt,T as bt,U as St,V as wt,W as Lt,X as Et,Y as Q,_ as At}from"./chunk-37QI3DOO.js";import{J as Ct,a as q,g as y,r as Tt}from"./chunk-JRNAXTJ7.js";import"./chunk-RMXJBC7V.js";function X(t,n){let r;if(n===void 0)for(let l of t)l!=null&&(r=l)&&(r=l);else{let l=-1;for(let f of t)(f=n(f,++l,t))!=null&&(r=f)&&(r=f)}return r}function F(t,n){let r;if(n===void 0)for(let l of t)l!=null&&(r>l||r===void 0&&l>=l)&&(r=l);else{let l=-1;for(let f of t)(f=n(f,++l,t))!=null&&(r>f||r===void 0&&f>=f)&&(r=f)}return r}function U(t,n){let r=0;if(n===void 0)for(let l of t)(l=+l)&&(r+=l);else{let l=-1;for(let f of t)(f=+n(f,++l,t))&&(r+=f)}return r}function Bt(t){return t.target.depth}function st(t){return t.depth}function it(t,n){return n-1-t.height}function G(t,n){return t.sourceLinks.length?t.depth:n-1}function at(t){return t.targetLinks.length?t.depth:t.sourceLinks.length?F(t.sourceLinks,Bt)-1:0}function W(t){return function(){return t}}function Mt(t,n){return K(t.source,n.source)||t.index-n.index}function Ot(t,n){return K(t.target,n.target)||t.index-n.index}function K(t,n){return t.y0-n.y0}function lt(t){return t.value}function $t(t){return t.index}function Vt(t){return t.nodes}function Ft(t){return t.links}function It(t,n){let r=t.get(n);if(!r)throw new Error("missing: "+n);return r}function Nt({nodes:t}){for(let n of t){let r=n.y0,l=r;for(let f of n.sourceLinks)f.y0=r+f.width/2,r+=f.width;for(let f of n.targetLinks)f.y1=l+f.width/2,l+=f.width}}function Z(){let t=0,n=0,r=1,l=1,f=24,S=8,m,x=$t,o=G,i,a,k=Vt,_=Ft,d=6;function v(){let e={nodes:k.apply(null,arguments),links:_.apply(null,arguments)};return C(e),T(e),M(e),P(e),z(e),Nt(e),e}v.update=function(e){return Nt(e),e},v.nodeId=function(e){return arguments.length?(x=typeof e=="function"?e:W(e),v):x},v.nodeAlign=function(e){return arguments.length?(o=typeof e=="function"?e:W(e),v):o},v.nodeSort=function(e){return arguments.length?(i=e,v):i},v.nodeWidth=function(e){return arguments.length?(f=+e,v):f},v.nodePadding=function(e){return arguments.length?(S=m=+e,v):S},v.nodes=function(e){return arguments.length?(k=typeof e=="function"?e:W(e),v):k},v.links=function(e){return arguments.length?(_=typeof e=="function"?e:W(e),v):_},v.linkSort=function(e){return arguments.length?(a=e,v):a},v.size=function(e){return arguments.length?(t=n=0,r=+e[0],l=+e[1],v):[r-t,l-n]},v.extent=function(e){return arguments.length?(t=+e[0][0],r=+e[1][0],n=+e[0][1],l=+e[1][1],v):[[t,n],[r,l]]},v.iterations=function(e){return arguments.length?(d=+e,v):d};function C({nodes:e,links:u}){for(let[h,s]of e.entries())s.index=h,s.sourceLinks=[],s.targetLinks=[];let c=new Map(e.map((h,s)=>[x(h,s,e),h]));for(let[h,s]of u.entries()){s.index=h;let{source:g,target:b}=s;typeof g!="object"&&(g=s.source=It(c,g)),typeof b!="object"&&(b=s.target=It(c,b)),g.sourceLinks.push(s),b.targetLinks.push(s)}if(a!=null)for(let{sourceLinks:h,targetLinks:s}of e)h.sort(a),s.sort(a)}function T({nodes:e}){for(let u of e)u.value=u.fixedValue===void 0?Math.max(U(u.sourceLinks,lt),U(u.targetLinks,lt)):u.fixedValue}function M({nodes:e}){let u=e.length,c=new Set(e),h=new Set,s=0;for(;c.size;){for(let g of c){g.depth=s;for(let{target:b}of g.sourceLinks)h.add(b)}if(++s>u)throw new Error("circular link");c=h,h=new Set}}function P({nodes:e}){let u=e.length,c=new Set(e),h=new Set,s=0;for(;c.size;){for(let g of c){g.height=s;for(let{source:b}of g.targetLinks)h.add(b)}if(++s>u)throw new Error("circular link");c=h,h=new Set}}function j({nodes:e}){let u=X(e,s=>s.depth)+1,c=(r-t-f)/(u-1),h=new Array(u);for(let s of e){let g=Math.max(0,Math.min(u-1,Math.floor(o.call(null,s,u))));s.layer=g,s.x0=t+g*c,s.x1=s.x0+f,h[g]?h[g].push(s):h[g]=[s]}if(i)for(let s of h)s.sort(i);return h}function B(e){let u=F(e,c=>(l-n-(c.length-1)*m)/U(c,lt));for(let c of e){let h=n;for(let s of c){s.y0=h,s.y1=h+s.value*u,h=s.y1+m;for(let g of s.sourceLinks)g.width=g.value*u}h=(l-h+m)/(c.length+1);for(let s=0;sc.length)-1)),B(u);for(let c=0;c0))continue;let D=($/N-b.y0)*u;b.y0+=D,b.y1+=D,A(b)}i===void 0&&g.sort(K),R(g,c)}}function O(e,u,c){for(let h=e.length,s=h-2;s>=0;--s){let g=e[s];for(let b of g){let $=0,N=0;for(let{target:L,value:ot}of b.sourceLinks){let Y=ot*(L.layer-b.layer);$+=H(b,L)*Y,N+=Y}if(!(N>0))continue;let D=($/N-b.y0)*u;b.y0+=D,b.y1+=D,A(b)}i===void 0&&g.sort(K),R(g,c)}}function R(e,u){let c=e.length>>1,h=e[c];p(e,h.y0-m,c-1,u),I(e,h.y1+m,c+1,u),p(e,l,e.length-1,u),I(e,n,0,u)}function I(e,u,c,h){for(;c1e-6&&(s.y0+=g,s.y1+=g),u=s.y1+m}}function p(e,u,c,h){for(;c>=0;--c){let s=e[c],g=(s.y1-u)*h;g>1e-6&&(s.y0-=g,s.y1-=g),u=s.y0-m}}function A({sourceLinks:e,targetLinks:u}){if(a===void 0){for(let{source:{sourceLinks:c}}of u)c.sort(Ot);for(let{target:{targetLinks:c}}of e)c.sort(Mt)}}function J(e){if(a===void 0)for(let{sourceLinks:u,targetLinks:c}of e)u.sort(Ot),c.sort(Mt)}function E(e,u){let c=e.y0-(e.sourceLinks.length-1)*m/2;for(let{target:h,width:s}of e.sourceLinks){if(h===u)break;c+=s+m}for(let{source:h,width:s}of u.targetLinks){if(h===e)break;c-=s}return c}function H(e,u){let c=u.y0-(u.targetLinks.length-1)*m/2;for(let{source:h,width:s}of u.targetLinks){if(h===e)break;c+=s+m}for(let{target:h,width:s}of e.sourceLinks){if(h===u)break;c-=s}return c}return v}var ut=Math.PI,ft=2*ut,V=1e-6,Ut=ft-V;function ct(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Pt(){return new ct}ct.prototype=Pt.prototype={constructor:ct,moveTo:function(t,n){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,n){this._+="L"+(this._x1=+t)+","+(this._y1=+n)},quadraticCurveTo:function(t,n,r,l){this._+="Q"+ +t+","+ +n+","+(this._x1=+r)+","+(this._y1=+l)},bezierCurveTo:function(t,n,r,l,f,S){this._+="C"+ +t+","+ +n+","+ +r+","+ +l+","+(this._x1=+f)+","+(this._y1=+S)},arcTo:function(t,n,r,l,f){t=+t,n=+n,r=+r,l=+l,f=+f;var S=this._x1,m=this._y1,x=r-t,o=l-n,i=S-t,a=m-n,k=i*i+a*a;if(f<0)throw new Error("negative radius: "+f);if(this._x1===null)this._+="M"+(this._x1=t)+","+(this._y1=n);else if(k>V)if(!(Math.abs(a*x-o*i)>V)||!f)this._+="L"+(this._x1=t)+","+(this._y1=n);else{var _=r-S,d=l-m,v=x*x+o*o,C=_*_+d*d,T=Math.sqrt(v),M=Math.sqrt(k),P=f*Math.tan((ut-Math.acos((v+k-C)/(2*T*M)))/2),j=P/M,B=P/T;Math.abs(j-1)>V&&(this._+="L"+(t+j*i)+","+(n+j*a)),this._+="A"+f+","+f+",0,0,"+ +(a*_>i*d)+","+(this._x1=t+B*x)+","+(this._y1=n+B*o)}},arc:function(t,n,r,l,f,S){t=+t,n=+n,r=+r,S=!!S;var m=r*Math.cos(l),x=r*Math.sin(l),o=t+m,i=n+x,a=1^S,k=S?l-f:f-l;if(r<0)throw new Error("negative radius: "+r);this._x1===null?this._+="M"+o+","+i:(Math.abs(this._x1-o)>V||Math.abs(this._y1-i)>V)&&(this._+="L"+o+","+i),r&&(k<0&&(k=k%ft+ft),k>Ut?this._+="A"+r+","+r+",0,1,"+a+","+(t-m)+","+(n-x)+"A"+r+","+r+",0,1,"+a+","+(this._x1=o)+","+(this._y1=i):k>V&&(this._+="A"+r+","+r+",0,"+ +(k>=ut)+","+a+","+(this._x1=t+r*Math.cos(f))+","+(this._y1=n+r*Math.sin(f))))},rect:function(t,n,r,l){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+n)+"h"+ +r+"v"+ +l+"h"+-r+"Z"},toString:function(){return this._}};var ht=Pt;function dt(t){return function(){return t}}function Rt(t){return t[0]}function zt(t){return t[1]}var Dt=Array.prototype.slice;function Wt(t){return t.source}function Ht(t){return t.target}function Yt(t){var n=Wt,r=Ht,l=Rt,f=zt,S=null;function m(){var x,o=Dt.call(arguments),i=n.apply(this,o),a=r.apply(this,o);if(S||(S=x=ht()),t(S,+l.apply(this,(o[0]=i,o)),+f.apply(this,o),+l.apply(this,(o[0]=a,o)),+f.apply(this,o)),x)return S=null,x+""||null}return m.source=function(x){return arguments.length?(n=x,m):n},m.target=function(x){return arguments.length?(r=x,m):r},m.x=function(x){return arguments.length?(l=typeof x=="function"?x:dt(+x),m):l},m.y=function(x){return arguments.length?(f=typeof x=="function"?x:dt(+x),m):f},m.context=function(x){return arguments.length?(S=x??null,m):S},m}function qt(t,n,r,l,f){t.moveTo(n,r),t.bezierCurveTo(n=(n+l)/2,r,n,f,l,f)}function pt(){return Yt(qt)}function Xt(t){return[t.source.x1,t.y0]}function Gt(t){return[t.target.x0,t.y1]}function yt(){return pt().source(Xt).target(Gt)}var mt=(function(){var t=y(function(x,o,i,a){for(i=i||{},a=x.length;a--;i[x[a]]=o);return i},"o"),n=[1,9],r=[1,10],l=[1,5,10,12],f={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:y(function(o,i,a,k,_,d,v){var C=d.length-1;switch(_){case 7:let T=k.findOrCreateNode(d[C-4].trim().replaceAll('""','"')),M=k.findOrCreateNode(d[C-2].trim().replaceAll('""','"')),P=parseFloat(d[C].trim());k.addLink(T,M,P);break;case 8:case 9:case 11:this.$=d[C];break;case 10:this.$=d[C-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:n,20:r},{1:[2,6],7:11,10:[1,12]},t(r,[2,4],{9:13,5:[1,14]}),{12:[1,15]},t(l,[2,8]),t(l,[2,9]),{19:[1,16]},t(l,[2,11]),{1:[2,1]},{1:[2,5]},t(r,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:n,20:r},{15:18,16:7,17:8,18:n,20:r},{18:[1,19]},t(r,[2,3]),{12:[1,20]},t(l,[2,10]),{15:21,16:7,17:8,18:n,20:r},t([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:y(function(o,i){if(i.recoverable)this.trace(o);else{var a=new Error(o);throw a.hash=i,a}},"parseError"),parse:y(function(o){var i=this,a=[0],k=[],_=[null],d=[],v=this.table,C="",T=0,M=0,P=0,j=2,B=1,z=d.slice.call(arguments,1),w=Object.create(this.lexer),O={yy:{}};for(var R in this.yy)Object.prototype.hasOwnProperty.call(this.yy,R)&&(O.yy[R]=this.yy[R]);w.setInput(o,O.yy),O.yy.lexer=w,O.yy.parser=this,typeof w.yylloc>"u"&&(w.yylloc={});var I=w.yylloc;d.push(I);var p=w.options&&w.options.ranges;typeof O.yy.parseError=="function"?this.parseError=O.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function A(L){a.length=a.length-2*L,_.length=_.length-L,d.length=d.length-L}y(A,"popStack");function J(){var L;return L=k.pop()||w.lex()||B,typeof L!="number"&&(L instanceof Array&&(k=L,L=k.pop()),L=i.symbols_[L]||L),L}y(J,"lex");for(var E,H,e,u,c,h,s={},g,b,$,N;;){if(e=a[a.length-1],this.defaultActions[e]?u=this.defaultActions[e]:((E===null||typeof E>"u")&&(E=J()),u=v[e]&&v[e][E]),typeof u>"u"||!u.length||!u[0]){var D="";N=[];for(g in v[e])this.terminals_[g]&&g>j&&N.push("'"+this.terminals_[g]+"'");w.showPosition?D="Parse error on line "+(T+1)+`: `+w.showPosition()+` Expecting `+N.join(", ")+", got '"+(this.terminals_[E]||E)+"'":D="Parse error on line "+(T+1)+": Unexpected "+(E==B?"end of input":"'"+(this.terminals_[E]||E)+"'"),this.parseError(D,{text:w.match,token:this.terminals_[E]||E,line:w.yylineno,loc:I,expected:N})}if(u[0]instanceof Array&&u.length>1)throw new Error("Parse Error: multiple actions possible at state: "+e+", token: "+E);switch(u[0]){case 1:a.push(E),_.push(w.yytext),d.push(w.yylloc),a.push(u[1]),E=null,H?(E=H,H=null):(M=w.yyleng,C=w.yytext,T=w.yylineno,I=w.yylloc,P>0&&P--);break;case 2:if(b=this.productions_[u[1]][1],s.$=_[_.length-b],s._$={first_line:d[d.length-(b||1)].first_line,last_line:d[d.length-1].last_line,first_column:d[d.length-(b||1)].first_column,last_column:d[d.length-1].last_column},p&&(s._$.range=[d[d.length-(b||1)].range[0],d[d.length-1].range[1]]),h=this.performAction.apply(s,[C,M,T,O.yy,u[1],_,d].concat(z)),typeof h<"u")return h;b&&(a=a.slice(0,-1*b*2),_=_.slice(0,-1*b),d=d.slice(0,-1*b)),a.push(this.productions_[u[1]][0]),_.push(s.$),d.push(s._$),$=v[a[a.length-2]][a[a.length-1]],a.push($);break;case 3:return!0}}return!0},"parse")},S=(function(){var x={EOF:1,parseError:y(function(i,a){if(this.yy.parser)this.yy.parser.parseError(i,a);else throw new Error(i)},"parseError"),setInput:y(function(o,i){return this.yy=i||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:y(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var i=o.match(/(?:\r\n?|\n).*/g);return i?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:y(function(o){var i=o.length,a=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var k=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var _=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===k.length?this.yylloc.first_column:0)+k[k.length-a.length].length-a[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[_[0],_[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(o){this.unput(this.match.slice(o))},"less"),pastInput:y(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var o=this.pastInput(),i=new Array(o.length+1).join("-");return o+this.upcomingInput()+` diff --git a/src/google/adk/cli/browser/chunk-RCKFX6QR.js b/src/google/adk/cli/browser/chunk-RCKFX6QR.js deleted file mode 100644 index 8ca9f21d72..0000000000 --- a/src/google/adk/cli/browser/chunk-RCKFX6QR.js +++ /dev/null @@ -1,162 +0,0 @@ -import{a as lt}from"./chunk-B2DSW4QB.js";import{h as ot}from"./chunk-NMKTPNXE.js";import{a as ct}from"./chunk-APNCZOFE.js";import{a as ht}from"./chunk-ST54LLJ3.js";import{a as it,b as rt}from"./chunk-ZMOC4H7T.js";import{b as nt,c as ut}from"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import{f as at}from"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import{m as Qe,p as Je}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{M as q1,R as X1,S as Q1,T as J1,U as Z1,V as $1,W as et,X as tt,Y as de,Z as u1,_ as st,a as K1,b as Y1,g as H1}from"./chunk-QFMJV7VH.js";import{a as Ee,g,i as Z}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{a as a1,b as n1,j as j1}from"./chunk-RMXJBC7V.js";var mt="flowchart-",Ct=class{constructor(){this.vertexCounter=0,this.config=de(),this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=Q1,this.setAccDescription=Z1,this.setDiagramTitle=et,this.getAccTitle=J1,this.getAccDescription=$1,this.getDiagramTitle=tt,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{g(this,"FlowDB")}sanitizeText(e){return q1.sanitizeText(e,this.config)}sanitizeNodeLabelType(e){switch(e){case"markdown":case"string":case"text":return e;default:return"markdown"}}lookUpDomId(e){for(let i of this.vertices.values())if(i.id===e)return i.domId;return e}addVertex(e,i,r,a,o,d,l={},k){if(!e||e.trim().length===0)return;let n;if(k!==void 0){let D;k.includes(` -`)?D=k+` -`:D=`{ -`+k+` -}`,n=rt(D,{schema:it})}let p=this.edges.find(D=>D.id===e);if(p){let D=n;D?.animate!==void 0&&(p.animate=D.animate),D?.animation!==void 0&&(p.animation=D.animation),D?.curve!==void 0&&(p.interpolate=D.curve);return}let S,b=this.vertices.get(e);if(b===void 0&&(b={id:e,labelType:"text",domId:mt+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,b)),this.vertexCounter++,i!==void 0?(this.config=de(),S=this.sanitizeText(i.text.trim()),b.labelType=i.type,S.startsWith('"')&&S.endsWith('"')&&(S=S.substring(1,S.length-1)),b.text=S):b.text===void 0&&(b.text=e),r!==void 0&&(b.type=r),a?.forEach(D=>{b.styles.push(D)}),o?.forEach(D=>{b.classes.push(D)}),d!==void 0&&(b.dir=d),b.props===void 0?b.props=l:l!==void 0&&Object.assign(b.props,l),n!==void 0){if(n.shape){if(n.shape!==n.shape.toLowerCase()||n.shape.includes("_"))throw new Error(`No such shape: ${n.shape}. Shape names should be lowercase.`);if(!at(n.shape))throw new Error(`No such shape: ${n.shape}.`);b.type=n?.shape}n?.label&&(b.text=n?.label,b.labelType=this.sanitizeNodeLabelType(n?.labelType)),n?.icon&&(b.icon=n?.icon,!n.label?.trim()&&b.text===e&&(b.text="")),n?.form&&(b.form=n?.form),n?.pos&&(b.pos=n?.pos),n?.img&&(b.img=n?.img,!n.label?.trim()&&b.text===e&&(b.text="")),n?.constraint&&(b.constraint=n.constraint),n.w&&(b.assetWidth=Number(n.w)),n.h&&(b.assetHeight=Number(n.h))}}addSingleLink(e,i,r,a){let l={start:e,end:i,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};Z.info("abc78 Got edge...",l);let k=r.text;if(k!==void 0&&(l.text=this.sanitizeText(k.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=this.sanitizeNodeLabelType(k.type)),r!==void 0&&(l.type=r.type,l.stroke=r.stroke,l.length=r.length>10?10:r.length),a&&!this.edges.some(n=>n.id===a))l.id=a,l.isUserDefinedId=!0;else{let n=this.edges.filter(p=>p.start===l.start&&p.end===l.end);n.length===0?l.id=Je(l.start,l.end,{counter:0,prefix:"L"}):l.id=Je(l.start,l.end,{counter:n.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))Z.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}. - -Initialize mermaid with maxEdges set to a higher number to allow more edges. -You cannot set this config via configuration inside the diagram as it is a secure config. -You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,i,r){let a=this.isLinkData(r)?r.id.replace("@",""):void 0;Z.info("addLink",e,i,a);for(let o of e)for(let d of i){let l=o===e[e.length-1],k=d===i[0];l&&k?this.addSingleLink(o,d,r,a):this.addSingleLink(o,d,r,void 0)}}updateLinkInterpolate(e,i){e.forEach(r=>{r==="default"?this.edges.defaultInterpolate=i:this.edges[r].interpolate=i})}updateLink(e,i){e.forEach(r=>{if(typeof r=="number"&&r>=this.edges.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?this.edges.defaultStyle=i:(this.edges[r].style=i,(this.edges[r]?.style?.length??0)>0&&!this.edges[r]?.style?.some(a=>a?.startsWith("fill"))&&this.edges[r]?.style?.push("fill:none"))})}addClass(e,i){let r=i.join().replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(a=>{let o=this.classes.get(a);o===void 0&&(o={id:a,styles:[],textStyles:[]},this.classes.set(a,o)),r?.forEach(d=>{if(/color/.exec(d)){let l=d.replace("fill","bgFill");o.textStyles.push(l)}o.styles.push(d)})})}setDirection(e){this.direction=e.trim(),/.*/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,i){for(let r of e.split(",")){let a=this.vertices.get(r);a&&a.classes.push(i);let o=this.edges.find(l=>l.id===r);o&&o.classes.push(i);let d=this.subGraphLookup.get(r);d&&d.classes.push(i)}}setTooltip(e,i){if(i!==void 0){i=this.sanitizeText(i);for(let r of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(r):r,i)}}setClickFun(e,i,r){let a=this.lookUpDomId(e);if(de().securityLevel!=="loose"||i===void 0)return;let o=[];if(typeof r=="string"){o=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let l=0;l{let l=document.querySelector(`[id="${a}"]`);l!==null&&l.addEventListener("click",()=>{Qe.runFunc(i,...o)},!1)}))}setLink(e,i,r){e.split(",").forEach(a=>{let o=this.vertices.get(a);o!==void 0&&(o.link=Qe.formatUrl(i,this.config),o.linkTarget=r)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,i,r){e.split(",").forEach(a=>{this.setClickFun(a,i,r)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(i=>{i(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){let i=ot();Ee(e).select("svg").selectAll("g.node").on("mouseover",o=>{let d=Ee(o.currentTarget),l=d.attr("title");if(l===null)return;let k=o.currentTarget?.getBoundingClientRect();i.transition().duration(200).style("opacity",".9"),i.text(d.attr("title")).style("left",window.scrollX+k.left+(k.right-k.left)/2+"px").style("top",window.scrollY+k.bottom+"px"),i.html(H1.sanitize(l)),d.classed("hover",!0)}).on("mouseout",o=>{i.transition().duration(500).style("opacity",0),Ee(o.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=de(),X1()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,i,r){let a=e.text.trim(),o=r.text;e===r&&/\s/.exec(r.text)&&(a=void 0);let l=g(b=>{let D={boolean:{},number:{},string:{}},K=[],x;return{nodeList:b.filter(function(U){let J=typeof U;return U.stmt&&U.stmt==="dir"?(x=U.value,!1):U.trim()===""?!1:J in D?D[J].hasOwnProperty(U)?!1:D[J][U]=!0:K.includes(U)?!1:K.push(U)}),dir:x}},"uniq")(i.flat()),k=l.nodeList,n=l.dir,p=de().flowchart??{};if(n=n??(p.inheritDir?this.getDirection()??de().direction??void 0:void 0),this.version==="gen-1")for(let b=0;b2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=i,this.subGraphs[i].id===e)return{result:!0,count:0};let a=0,o=1;for(;a=0){let l=this.indexNodes2(e,d);if(l.result)return{result:!0,count:o+l.count};o=o+l.count}a=a+1}return{result:!1,count:o}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let i=e.trim(),r="arrow_open";switch(i[0]){case"<":r="arrow_point",i=i.slice(1);break;case"x":r="arrow_cross",i=i.slice(1);break;case"o":r="arrow_circle",i=i.slice(1);break}let a="normal";return i.includes("=")&&(a="thick"),i.includes(".")&&(a="dotted"),{type:r,stroke:a}}countChar(e,i){let r=i.length,a=0;for(let o=0;o":a="arrow_point",i.startsWith("<")&&(a="double_"+a,r=r.slice(1));break;case"o":a="arrow_circle",i.startsWith("o")&&(a="double_"+a,r=r.slice(1));break}let o="normal",d=r.length-1;r.startsWith("=")&&(o="thick"),r.startsWith("~")&&(o="invisible");let l=this.countChar(".",r);return l&&(o="dotted",d=l),{type:a,stroke:o,length:d}}destructLink(e,i){let r=this.destructEndLink(e),a;if(i){if(a=this.destructStartLink(i),a.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(a.type==="arrow_open")a.type=r.type;else{if(a.type!==r.type)return{type:"INVALID",stroke:"INVALID"};a.type="double_"+a.type}return a.type==="double_arrow"&&(a.type="double_arrow_point"),a.length=r.length,a}return r}exists(e,i){for(let r of e)if(r.nodes.includes(i))return!0;return!1}makeUniq(e,i){let r=[];return e.nodes.forEach((a,o)=>{this.exists(i,a)||r.push(e.nodes[o])}),{nodes:r}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,i){return e.find(r=>r.id===i)}destructEdgeType(e){let i="none",r="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":r=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":i=e.replace("double_",""),r=i;break}return{arrowTypeStart:i,arrowTypeEnd:r}}addNodeFromVertex(e,i,r,a,o,d){let l=r.get(e.id),k=a.get(e.id)??!1,n=this.findNode(i,e.id);if(n)n.cssStyles=e.styles,n.cssCompiledStyles=this.getCompiledStyles(e.classes),n.cssClasses=e.classes.join(" ");else{let p={id:e.id,label:e.text,labelType:e.labelType,labelStyle:"",parentId:l,padding:o.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:d,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};k?i.push(n1(a1({},p),{isGroup:!0,shape:"rect"})):i.push(n1(a1({},p),{isGroup:!1,shape:this.getTypeFromVertex(e)}))}}getCompiledStyles(e){let i=[];for(let r of e){let a=this.classes.get(r);a?.styles&&(i=[...i,...a.styles??[]].map(o=>o.trim())),a?.textStyles&&(i=[...i,...a.textStyles??[]].map(o=>o.trim()))}return i}getData(){let e=de(),i=[],r=[],a=this.getSubGraphs(),o=new Map,d=new Map;for(let n=a.length-1;n>=0;n--){let p=a[n];p.nodes.length>0&&d.set(p.id,!0);for(let S of p.nodes)o.set(S,p.id)}for(let n=a.length-1;n>=0;n--){let p=a[n];i.push({id:p.id,label:p.title,labelStyle:"",labelType:p.labelType,parentId:o.get(p.id),padding:8,cssCompiledStyles:this.getCompiledStyles(p.classes),cssClasses:p.classes.join(" "),shape:"rect",dir:p.dir,isGroup:!0,look:e.look})}this.getVertices().forEach(n=>{this.addNodeFromVertex(n,i,o,d,e,e.look||"classic")});let k=this.getEdges();return k.forEach((n,p)=>{let{arrowTypeStart:S,arrowTypeEnd:b}=this.destructEdgeType(n.type),D=[...k.defaultStyle??[]];n.style&&D.push(...n.style);let K={id:Je(n.start,n.end,{counter:p,prefix:"L"},n.id),isUserDefinedId:n.isUserDefinedId,start:n.start,end:n.end,type:n.type??"normal",label:n.text,labelType:n.labelType,labelpos:"c",thickness:n.stroke,minlen:n.length,classes:n?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":S,arrowTypeEnd:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":b,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(n.classes),labelStyle:D,style:D,pattern:n.stroke,look:e.look,animate:n.animate,animation:n.animation,curve:n.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};r.push(K)}),{nodes:i,edges:r,other:{},config:e}}defaultConfig(){return st.flowchart}},Et=g(function(e,i){return i.db.getClasses()},"getClasses"),Dt=g(function(e,i,r,a){return j1(this,null,function*(){Z.info("REF0:"),Z.info("Drawing state diagram (v2)",i);let{securityLevel:o,flowchart:d,layout:l}=de(),k;o==="sandbox"&&(k=Ee("#i"+i));let n=o==="sandbox"?k.nodes()[0].contentDocument:document;Z.debug("Before getData: ");let p=a.db.getData();Z.debug("Data: ",p);let S=ct(i,o),b=a.db.getDirection();p.type=a.type,p.layoutAlgorithm=ut(l),p.layoutAlgorithm==="dagre"&&l==="elk"&&Z.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),p.direction=b,p.nodeSpacing=d?.nodeSpacing||50,p.rankSpacing=d?.rankSpacing||50,p.markers=["point","circle","cross"],p.diagramId=i,Z.debug("REF1:",p),yield nt(p,S);let D=p.config.flowchart?.diagramPadding??8;Qe.insertTitle(S,"flowchartTitleText",d?.titleTopMargin||0,a.db.getDiagramTitle()),ht(S,D,"flowchart",d?.useMaxWidth||!1);for(let K of p.nodes){let x=Ee(`#${i} [id="${K.id}"]`);if(!x||!K.link)continue;let _=n.createElementNS("http://www.w3.org/2000/svg","a");_.setAttributeNS("http://www.w3.org/2000/svg","class",K.cssClasses),_.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),o==="sandbox"?_.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):K.linkTarget&&_.setAttributeNS("http://www.w3.org/2000/svg","target",K.linkTarget);let U=x.insert(function(){return _},":first-child"),J=x.select(".label-container");J&&U.append(function(){return J.node()});let ke=x.select(".label");ke&&U.append(function(){return ke.node()})}})},"draw"),St={getClasses:Et,draw:Dt},o1=(function(){var e=g(function(be,c,h,f){for(h=h||{},f=be.length;f--;h[be[f]]=c);return h},"o"),i=[1,4],r=[1,3],a=[1,5],o=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],d=[2,2],l=[1,13],k=[1,14],n=[1,15],p=[1,16],S=[1,23],b=[1,25],D=[1,26],K=[1,27],x=[1,50],_=[1,49],U=[1,29],J=[1,30],ke=[1,31],Pe=[1,32],Oe=[1,33],L=[1,45],V=[1,47],w=[1,43],I=[1,48],R=[1,44],N=[1,51],G=[1,46],P=[1,52],O=[1,53],Me=[1,34],Ue=[1,35],ze=[1,36],We=[1,37],je=[1,38],pe=[1,58],T=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],ee=[1,62],te=[1,61],se=[1,63],De=[8,9,11,75,77,78],l1=[1,79],Se=[1,92],Te=[1,97],xe=[1,96],ye=[1,93],Fe=[1,89],_e=[1,95],Be=[1,91],ve=[1,98],Le=[1,94],Ve=[1,99],we=[1,90],ge=[8,9,10,11,40,75,77,78],z=[8,9,10,11,40,46,75,77,78],H=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],c1=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],Ie=[44,60,89,102,105,106,109,111,114,115,116],h1=[1,122],d1=[1,123],Ke=[1,125],Ye=[1,124],p1=[44,60,62,74,89,102,105,106,109,111,114,115,116],f1=[1,134],b1=[1,148],k1=[1,149],g1=[1,150],A1=[1,151],m1=[1,136],C1=[1,138],E1=[1,142],D1=[1,143],S1=[1,144],T1=[1,145],x1=[1,146],y1=[1,147],F1=[1,152],_1=[1,153],B1=[1,132],v1=[1,133],L1=[1,140],V1=[1,135],w1=[1,139],I1=[1,137],Ze=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],R1=[1,155],N1=[1,157],B=[8,9,11],q=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],A=[1,177],W=[1,173],j=[1,174],m=[1,178],C=[1,175],E=[1,176],Re=[77,116,119],y=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],G1=[10,106],fe=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],ie=[1,248],re=[1,246],ae=[1,250],ne=[1,244],ue=[1,245],oe=[1,247],le=[1,249],ce=[1,251],Ne=[1,269],P1=[8,9,11,106],$=[8,9,10,11,60,84,105,106,109,110,111,112],$e={trace:g(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,direction_td:125,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr",125:"direction_td"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1],[33,1]],performAction:g(function(c,h,f,u,F,t,Ae){var s=t.length-1;switch(F){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 183:this.$=t[s];break;case 11:u.setDirection("TB"),this.$="TB";break;case 12:u.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=u.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=u.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=u.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),u.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),u.setAccDescription(this.$);break;case 43:this.$=t[s-1]+t[s];break;case 44:this.$=t[s];break;case 45:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 46:u.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 47:u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 48:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 49:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),this.$={stmt:t[s-1],nodes:t[s-1],shapeData:t[s]};break;case 50:this.$={stmt:t[s],nodes:t[s]};break;case 51:this.$=[t[s]];break;case 52:u.addVertex(t[s-5][t[s-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s-4]),this.$=t[s-5].concat(t[s]);break;case 53:this.$=t[s-4].concat(t[s]);break;case 54:this.$=t[s];break;case 55:this.$=t[s-2],u.setClass(t[s-2],t[s]);break;case 56:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"square");break;case 57:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"doublecircle");break;case 58:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"circle");break;case 59:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"ellipse");break;case 60:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"stadium");break;case 61:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"subroutine");break;case 62:this.$=t[s-7],u.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 63:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"cylinder");break;case 64:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"round");break;case 65:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"diamond");break;case 66:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"hexagon");break;case 67:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"odd");break;case 68:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"trapezoid");break;case 69:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 70:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_right");break;case 71:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_left");break;case 72:this.$=t[s],u.addVertex(t[s]);break;case 73:t[s-1].text=t[s],this.$=t[s-1];break;case 74:case 75:t[s-2].text=t[s-1],this.$=t[s-2];break;case 76:this.$=t[s];break;case 77:var v=u.destructLink(t[s],t[s-2]);this.$={type:v.type,stroke:v.stroke,length:v.length,text:t[s-1]};break;case 78:var v=u.destructLink(t[s],t[s-2]);this.$={type:v.type,stroke:v.stroke,length:v.length,text:t[s-1],id:t[s-3]};break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:this.$={text:t[s],type:"markdown"};break;case 83:var v=u.destructLink(t[s]);this.$={type:v.type,stroke:v.stroke,length:v.length};break;case 84:var v=u.destructLink(t[s]);this.$={type:v.type,stroke:v.stroke,length:v.length,id:t[s-1]};break;case 85:this.$=t[s-1];break;case 86:this.$={text:t[s],type:"text"};break;case 87:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 88:this.$={text:t[s],type:"string"};break;case 89:case 104:this.$={text:t[s],type:"markdown"};break;case 101:this.$={text:t[s],type:"text"};break;case 102:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 103:this.$={text:t[s],type:"text"};break;case 105:this.$=t[s-4],u.addClass(t[s-2],t[s]);break;case 106:this.$=t[s-4],u.setClass(t[s-2],t[s]);break;case 107:case 115:this.$=t[s-1],u.setClickEvent(t[s-1],t[s]);break;case 108:case 116:this.$=t[s-3],u.setClickEvent(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 109:this.$=t[s-2],u.setClickEvent(t[s-2],t[s-1],t[s]);break;case 110:this.$=t[s-4],u.setClickEvent(t[s-4],t[s-3],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 111:this.$=t[s-2],u.setLink(t[s-2],t[s]);break;case 112:this.$=t[s-4],u.setLink(t[s-4],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 113:this.$=t[s-4],u.setLink(t[s-4],t[s-2],t[s]);break;case 114:this.$=t[s-6],u.setLink(t[s-6],t[s-4],t[s]),u.setTooltip(t[s-6],t[s-2]);break;case 117:this.$=t[s-1],u.setLink(t[s-1],t[s]);break;case 118:this.$=t[s-3],u.setLink(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 119:this.$=t[s-3],u.setLink(t[s-3],t[s-2],t[s]);break;case 120:this.$=t[s-5],u.setLink(t[s-5],t[s-4],t[s]),u.setTooltip(t[s-5],t[s-2]);break;case 121:this.$=t[s-4],u.addVertex(t[s-2],void 0,void 0,t[s]);break;case 122:this.$=t[s-4],u.updateLink([t[s-2]],t[s]);break;case 123:this.$=t[s-4],u.updateLink(t[s-2],t[s]);break;case 124:this.$=t[s-8],u.updateLinkInterpolate([t[s-6]],t[s-2]),u.updateLink([t[s-6]],t[s]);break;case 125:this.$=t[s-8],u.updateLinkInterpolate(t[s-6],t[s-2]),u.updateLink(t[s-6],t[s]);break;case 126:this.$=t[s-6],u.updateLinkInterpolate([t[s-4]],t[s]);break;case 127:this.$=t[s-6],u.updateLinkInterpolate(t[s-4],t[s]);break;case 128:case 130:this.$=[t[s]];break;case 129:case 131:t[s-2].push(t[s]),this.$=t[s-2];break;case 133:this.$=t[s-1]+t[s];break;case 181:this.$=t[s];break;case 182:this.$=t[s-1]+""+t[s];break;case 184:this.$=t[s-1]+""+t[s];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break;case 189:this.$={stmt:"dir",value:"TD"};break}},"anonymous"),table:[{3:1,4:2,9:i,10:r,12:a},{1:[3]},e(o,d,{5:6}),{4:7,9:i,10:r,12:a},{4:8,9:i,10:r,12:a},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:l,9:k,10:n,11:p,20:17,22:18,23:19,24:20,25:21,26:22,27:S,33:24,34:b,36:D,38:K,42:28,43:39,44:x,45:40,47:41,60:_,84:U,85:J,86:ke,87:Pe,88:Oe,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O,121:Me,122:Ue,123:ze,124:We,125:je},e(o,[2,9]),e(o,[2,10]),e(o,[2,11]),{8:[1,55],9:[1,56],10:pe,15:54,18:57},e(T,[2,3]),e(T,[2,4]),e(T,[2,5]),e(T,[2,6]),e(T,[2,7]),e(T,[2,8]),{8:ee,9:te,11:se,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:ee,9:te,11:se,21:68},{8:ee,9:te,11:se,21:69},{8:ee,9:te,11:se,21:70},{8:ee,9:te,11:se,21:71},{8:ee,9:te,11:se,21:72},{8:ee,9:te,10:[1,73],11:se,21:74},e(T,[2,36]),{35:[1,75]},{37:[1,76]},e(T,[2,39]),e(De,[2,50],{18:77,39:78,10:pe,40:l1}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:Se,44:Te,60:xe,80:[1,87],89:ye,95:[1,84],97:[1,85],101:86,105:Fe,106:_e,109:Be,111:ve,114:Le,115:Ve,116:we,120:88},e(T,[2,185]),e(T,[2,186]),e(T,[2,187]),e(T,[2,188]),e(T,[2,189]),e(ge,[2,51]),e(ge,[2,54],{46:[1,100]}),e(z,[2,72],{113:113,29:[1,101],44:x,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:_,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:L,102:V,105:w,106:I,109:R,111:N,114:G,115:P,116:O}),e(H,[2,181]),e(H,[2,142]),e(H,[2,143]),e(H,[2,144]),e(H,[2,145]),e(H,[2,146]),e(H,[2,147]),e(H,[2,148]),e(H,[2,149]),e(H,[2,150]),e(H,[2,151]),e(H,[2,152]),e(o,[2,12]),e(o,[2,18]),e(o,[2,19]),{9:[1,114]},e(c1,[2,26],{18:115,10:pe}),e(T,[2,27]),{42:116,43:39,44:x,45:40,47:41,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(Ie,[2,76],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:h1,81:d1,116:Ke,119:Ye},{75:[1,126],77:[1,127]},e(p1,[2,83]),e(T,[2,28]),e(T,[2,29]),e(T,[2,30]),e(T,[2,31]),e(T,[2,32]),{10:f1,12:b1,14:k1,27:g1,28:128,32:A1,44:m1,60:C1,75:E1,80:[1,130],81:[1,131],83:141,84:D1,85:S1,86:T1,87:x1,88:y1,89:F1,90:_1,91:129,105:B1,109:v1,111:L1,114:V1,115:w1,116:I1},e(Ze,d,{5:154}),e(T,[2,37]),e(T,[2,38]),e(De,[2,48],{44:R1}),e(De,[2,49],{18:156,10:pe,40:N1}),e(ge,[2,44]),{44:x,47:158,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},{102:[1,159],103:160,105:[1,161]},{44:x,47:162,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},{44:x,47:163,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},e(B,[2,107],{10:[1,164],96:[1,165]}),{80:[1,166]},e(B,[2,115],{120:168,10:[1,167],14:Se,44:Te,60:xe,89:ye,105:Fe,106:_e,109:Be,111:ve,114:Le,115:Ve,116:we}),e(B,[2,117],{10:[1,169]}),e(q,[2,183]),e(q,[2,170]),e(q,[2,171]),e(q,[2,172]),e(q,[2,173]),e(q,[2,174]),e(q,[2,175]),e(q,[2,176]),e(q,[2,177]),e(q,[2,178]),e(q,[2,179]),e(q,[2,180]),{44:x,47:170,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},{30:171,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:179,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:181,50:[1,180],67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:182,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:183,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:184,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{109:[1,185]},{30:186,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:187,65:[1,188],67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:189,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:190,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{30:191,67:A,80:W,81:j,82:172,116:m,117:C,118:E},e(H,[2,182]),e(o,[2,20]),e(c1,[2,25]),e(De,[2,46],{39:192,18:193,10:pe,40:l1}),e(Ie,[2,73],{10:[1,194]}),{10:[1,195]},{30:196,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{77:[1,197],79:198,116:Ke,119:Ye},e(Re,[2,79]),e(Re,[2,81]),e(Re,[2,82]),e(Re,[2,168]),e(Re,[2,169]),{76:199,79:121,80:h1,81:d1,116:Ke,119:Ye},e(p1,[2,84]),{8:ee,9:te,10:f1,11:se,12:b1,14:k1,21:201,27:g1,29:[1,200],32:A1,44:m1,60:C1,75:E1,83:141,84:D1,85:S1,86:T1,87:x1,88:y1,89:F1,90:_1,91:202,105:B1,109:v1,111:L1,114:V1,115:w1,116:I1},e(y,[2,101]),e(y,[2,103]),e(y,[2,104]),e(y,[2,157]),e(y,[2,158]),e(y,[2,159]),e(y,[2,160]),e(y,[2,161]),e(y,[2,162]),e(y,[2,163]),e(y,[2,164]),e(y,[2,165]),e(y,[2,166]),e(y,[2,167]),e(y,[2,90]),e(y,[2,91]),e(y,[2,92]),e(y,[2,93]),e(y,[2,94]),e(y,[2,95]),e(y,[2,96]),e(y,[2,97]),e(y,[2,98]),e(y,[2,99]),e(y,[2,100]),{6:11,7:12,8:l,9:k,10:n,11:p,20:17,22:18,23:19,24:20,25:21,26:22,27:S,32:[1,203],33:24,34:b,36:D,38:K,42:28,43:39,44:x,45:40,47:41,60:_,84:U,85:J,86:ke,87:Pe,88:Oe,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O,121:Me,122:Ue,123:ze,124:We,125:je},{10:pe,18:204},{44:[1,205]},e(ge,[2,43]),{10:[1,206],44:x,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,207]},{10:[1,208],106:[1,209]},e(G1,[2,128]),{10:[1,210],44:x,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,211],44:x,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:113,114:G,115:P,116:O},{80:[1,212]},e(B,[2,109],{10:[1,213]}),e(B,[2,111],{10:[1,214]}),{80:[1,215]},e(q,[2,184]),{80:[1,216],98:[1,217]},e(ge,[2,55],{113:113,44:x,60:_,89:L,102:V,105:w,106:I,109:R,111:N,114:G,115:P,116:O}),{31:[1,218],67:A,82:219,116:m,117:C,118:E},e(fe,[2,86]),e(fe,[2,88]),e(fe,[2,89]),e(fe,[2,153]),e(fe,[2,154]),e(fe,[2,155]),e(fe,[2,156]),{49:[1,220],67:A,82:219,116:m,117:C,118:E},{30:221,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{51:[1,222],67:A,82:219,116:m,117:C,118:E},{53:[1,223],67:A,82:219,116:m,117:C,118:E},{55:[1,224],67:A,82:219,116:m,117:C,118:E},{57:[1,225],67:A,82:219,116:m,117:C,118:E},{60:[1,226]},{64:[1,227],67:A,82:219,116:m,117:C,118:E},{66:[1,228],67:A,82:219,116:m,117:C,118:E},{30:229,67:A,80:W,81:j,82:172,116:m,117:C,118:E},{31:[1,230],67:A,82:219,116:m,117:C,118:E},{67:A,69:[1,231],71:[1,232],82:219,116:m,117:C,118:E},{67:A,69:[1,234],71:[1,233],82:219,116:m,117:C,118:E},e(De,[2,45],{18:156,10:pe,40:N1}),e(De,[2,47],{44:R1}),e(Ie,[2,75]),e(Ie,[2,74]),{62:[1,235],67:A,82:219,116:m,117:C,118:E},e(Ie,[2,77]),e(Re,[2,80]),{77:[1,236],79:198,116:Ke,119:Ye},{30:237,67:A,80:W,81:j,82:172,116:m,117:C,118:E},e(Ze,d,{5:238}),e(y,[2,102]),e(T,[2,35]),{43:239,44:x,45:40,47:41,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},{10:pe,18:240},{10:ie,60:re,84:ae,92:241,105:ne,107:242,108:243,109:ue,110:oe,111:le,112:ce},{10:ie,60:re,84:ae,92:252,104:[1,253],105:ne,107:242,108:243,109:ue,110:oe,111:le,112:ce},{10:ie,60:re,84:ae,92:254,104:[1,255],105:ne,107:242,108:243,109:ue,110:oe,111:le,112:ce},{105:[1,256]},{10:ie,60:re,84:ae,92:257,105:ne,107:242,108:243,109:ue,110:oe,111:le,112:ce},{44:x,47:258,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},e(B,[2,108]),{80:[1,259]},{80:[1,260],98:[1,261]},e(B,[2,116]),e(B,[2,118],{10:[1,262]}),e(B,[2,119]),e(z,[2,56]),e(fe,[2,87]),e(z,[2,57]),{51:[1,263],67:A,82:219,116:m,117:C,118:E},e(z,[2,64]),e(z,[2,59]),e(z,[2,60]),e(z,[2,61]),{109:[1,264]},e(z,[2,63]),e(z,[2,65]),{66:[1,265],67:A,82:219,116:m,117:C,118:E},e(z,[2,67]),e(z,[2,68]),e(z,[2,70]),e(z,[2,69]),e(z,[2,71]),e([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),e(Ie,[2,78]),{31:[1,266],67:A,82:219,116:m,117:C,118:E},{6:11,7:12,8:l,9:k,10:n,11:p,20:17,22:18,23:19,24:20,25:21,26:22,27:S,32:[1,267],33:24,34:b,36:D,38:K,42:28,43:39,44:x,45:40,47:41,60:_,84:U,85:J,86:ke,87:Pe,88:Oe,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O,121:Me,122:Ue,123:ze,124:We,125:je},e(ge,[2,53]),{43:268,44:x,45:40,47:41,60:_,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O},e(B,[2,121],{106:Ne}),e(P1,[2,130],{108:270,10:ie,60:re,84:ae,105:ne,109:ue,110:oe,111:le,112:ce}),e($,[2,132]),e($,[2,134]),e($,[2,135]),e($,[2,136]),e($,[2,137]),e($,[2,138]),e($,[2,139]),e($,[2,140]),e($,[2,141]),e(B,[2,122],{106:Ne}),{10:[1,271]},e(B,[2,123],{106:Ne}),{10:[1,272]},e(G1,[2,129]),e(B,[2,105],{106:Ne}),e(B,[2,106],{113:113,44:x,60:_,89:L,102:V,105:w,106:I,109:R,111:N,114:G,115:P,116:O}),e(B,[2,110]),e(B,[2,112],{10:[1,273]}),e(B,[2,113]),{98:[1,274]},{51:[1,275]},{62:[1,276]},{66:[1,277]},{8:ee,9:te,11:se,21:278},e(T,[2,34]),e(ge,[2,52]),{10:ie,60:re,84:ae,105:ne,107:279,108:243,109:ue,110:oe,111:le,112:ce},e($,[2,133]),{14:Se,44:Te,60:xe,89:ye,101:280,105:Fe,106:_e,109:Be,111:ve,114:Le,115:Ve,116:we,120:88},{14:Se,44:Te,60:xe,89:ye,101:281,105:Fe,106:_e,109:Be,111:ve,114:Le,115:Ve,116:we,120:88},{98:[1,282]},e(B,[2,120]),e(z,[2,58]),{30:283,67:A,80:W,81:j,82:172,116:m,117:C,118:E},e(z,[2,66]),e(Ze,d,{5:284}),e(P1,[2,131],{108:270,10:ie,60:re,84:ae,105:ne,109:ue,110:oe,111:le,112:ce}),e(B,[2,126],{120:168,10:[1,285],14:Se,44:Te,60:xe,89:ye,105:Fe,106:_e,109:Be,111:ve,114:Le,115:Ve,116:we}),e(B,[2,127],{120:168,10:[1,286],14:Se,44:Te,60:xe,89:ye,105:Fe,106:_e,109:Be,111:ve,114:Le,115:Ve,116:we}),e(B,[2,114]),{31:[1,287],67:A,82:219,116:m,117:C,118:E},{6:11,7:12,8:l,9:k,10:n,11:p,20:17,22:18,23:19,24:20,25:21,26:22,27:S,32:[1,288],33:24,34:b,36:D,38:K,42:28,43:39,44:x,45:40,47:41,60:_,84:U,85:J,86:ke,87:Pe,88:Oe,89:L,102:V,105:w,106:I,109:R,111:N,113:42,114:G,115:P,116:O,121:Me,122:Ue,123:ze,124:We,125:je},{10:ie,60:re,84:ae,92:289,105:ne,107:242,108:243,109:ue,110:oe,111:le,112:ce},{10:ie,60:re,84:ae,92:290,105:ne,107:242,108:243,109:ue,110:oe,111:le,112:ce},e(z,[2,62]),e(T,[2,33]),e(B,[2,124],{106:Ne}),e(B,[2,125],{106:Ne})],defaultActions:{},parseError:g(function(c,h){if(h.recoverable)this.trace(c);else{var f=new Error(c);throw f.hash=h,f}},"parseError"),parse:g(function(c){var h=this,f=[0],u=[],F=[null],t=[],Ae=this.table,s="",v=0,O1=0,M1=0,bt=2,U1=1,kt=t.slice.call(arguments,1),M=Object.create(this.lexer),me={yy:{}};for(var e1 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,e1)&&(me.yy[e1]=this.yy[e1]);M.setInput(c,me.yy),me.yy.lexer=M,me.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var t1=M.yylloc;t.push(t1);var gt=M.options&&M.options.ranges;typeof me.yy.parseError=="function"?this.parseError=me.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function At(X){f.length=f.length-2*X,F.length=F.length-X,t.length=t.length-X}g(At,"popStack");function z1(){var X;return X=u.pop()||M.lex()||U1,typeof X!="number"&&(X instanceof Array&&(u=X,X=u.pop()),X=h.symbols_[X]||X),X}g(z1,"lex");for(var Y,s1,Ce,Q,_t,i1,Ge={},qe,he,W1,Xe;;){if(Ce=f[f.length-1],this.defaultActions[Ce]?Q=this.defaultActions[Ce]:((Y===null||typeof Y>"u")&&(Y=z1()),Q=Ae[Ce]&&Ae[Ce][Y]),typeof Q>"u"||!Q.length||!Q[0]){var r1="";Xe=[];for(qe in Ae[Ce])this.terminals_[qe]&&qe>bt&&Xe.push("'"+this.terminals_[qe]+"'");M.showPosition?r1="Parse error on line "+(v+1)+`: -`+M.showPosition()+` -Expecting `+Xe.join(", ")+", got '"+(this.terminals_[Y]||Y)+"'":r1="Parse error on line "+(v+1)+": Unexpected "+(Y==U1?"end of input":"'"+(this.terminals_[Y]||Y)+"'"),this.parseError(r1,{text:M.match,token:this.terminals_[Y]||Y,line:M.yylineno,loc:t1,expected:Xe})}if(Q[0]instanceof Array&&Q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ce+", token: "+Y);switch(Q[0]){case 1:f.push(Y),F.push(M.yytext),t.push(M.yylloc),f.push(Q[1]),Y=null,s1?(Y=s1,s1=null):(O1=M.yyleng,s=M.yytext,v=M.yylineno,t1=M.yylloc,M1>0&&M1--);break;case 2:if(he=this.productions_[Q[1]][1],Ge.$=F[F.length-he],Ge._$={first_line:t[t.length-(he||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(he||1)].first_column,last_column:t[t.length-1].last_column},gt&&(Ge._$.range=[t[t.length-(he||1)].range[0],t[t.length-1].range[1]]),i1=this.performAction.apply(Ge,[s,O1,v,me.yy,Q[1],F,t].concat(kt)),typeof i1<"u")return i1;he&&(f=f.slice(0,-1*he*2),F=F.slice(0,-1*he),t=t.slice(0,-1*he)),f.push(this.productions_[Q[1]][0]),F.push(Ge.$),t.push(Ge._$),W1=Ae[f[f.length-2]][f[f.length-1]],f.push(W1);break;case 3:return!0}}return!0},"parse")},ft=(function(){var be={EOF:1,parseError:g(function(h,f){if(this.yy.parser)this.yy.parser.parseError(h,f);else throw new Error(h)},"parseError"),setInput:g(function(c,h){return this.yy=h||this.yy||{},this._input=c,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:g(function(){var c=this._input[0];this.yytext+=c,this.yyleng++,this.offset++,this.match+=c,this.matched+=c;var h=c.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),c},"input"),unput:g(function(c){var h=c.length,f=c.split(/(?:\r\n?|\n)/g);this._input=c+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1&&(this.yylineno-=f.length-1);var F=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===u.length?this.yylloc.first_column:0)+u[u.length-f.length].length-f[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[F[0],F[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:g(function(){return this._more=!0,this},"more"),reject:g(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:g(function(c){this.unput(this.match.slice(c))},"less"),pastInput:g(function(){var c=this.matched.substr(0,this.matched.length-this.match.length);return(c.length>20?"...":"")+c.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:g(function(){var c=this.match;return c.length<20&&(c+=this._input.substr(0,20-c.length)),(c.substr(0,20)+(c.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:g(function(){var c=this.pastInput(),h=new Array(c.length+1).join("-");return c+this.upcomingInput()+` -`+h+"^"},"showPosition"),test_match:g(function(c,h){var f,u,F;if(this.options.backtrack_lexer&&(F={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(F.yylloc.range=this.yylloc.range.slice(0))),u=c[0].match(/(?:\r\n?|\n).*/g),u&&(this.yylineno+=u.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:u?u[u.length-1].length-u[u.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+c[0].length},this.yytext+=c[0],this.match+=c[0],this.matches=c,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(c[0].length),this.matched+=c[0],f=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),f)return f;if(this._backtrack){for(var t in F)this[t]=F[t];return!1}return!1},"test_match"),next:g(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var c,h,f,u;this._more||(this.yytext="",this.match="");for(var F=this._currentRules(),t=0;th[0].length)){if(h=f,u=t,this.options.backtrack_lexer){if(c=this.test_match(f,F[t]),c!==!1)return c;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(c=this.test_match(h,F[u]),c!==!1?c:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:g(function(){var h=this.next();return h||this.lex()},"lex"),begin:g(function(h){this.conditionStack.push(h)},"begin"),popState:g(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:g(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:g(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:g(function(h){this.begin(h)},"pushState"),stateStackSize:g(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:g(function(h,f,u,F){var t=F;switch(u){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),f.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let Ae=/\n\s*/g;return f.yytext=f.yytext.replace(Ae,"
"),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:return h.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return h.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return h.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 98;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return this.popState(),13;break;case 45:return this.popState(),14;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return 121;case 56:return 122;case 57:return 123;case 58:return 124;case 59:return 125;case 60:return 78;case 61:return 105;case 62:return 111;case 63:return 46;case 64:return 60;case 65:return 44;case 66:return 8;case 67:return 106;case 68:return 115;case 69:return this.popState(),77;break;case 70:return this.pushState("edgeText"),75;break;case 71:return 119;case 72:return this.popState(),77;break;case 73:return this.pushState("thickEdgeText"),75;break;case 74:return 119;case 75:return this.popState(),77;break;case 76:return this.pushState("dottedEdgeText"),75;break;case 77:return 119;case 78:return 77;case 79:return this.popState(),53;break;case 80:return"TEXT";case 81:return this.pushState("ellipseText"),52;break;case 82:return this.popState(),55;break;case 83:return this.pushState("text"),54;break;case 84:return this.popState(),57;break;case 85:return this.pushState("text"),56;break;case 86:return 58;case 87:return this.pushState("text"),67;break;case 88:return this.popState(),64;break;case 89:return this.pushState("text"),63;break;case 90:return this.popState(),49;break;case 91:return this.pushState("text"),48;break;case 92:return this.popState(),69;break;case 93:return this.popState(),71;break;case 94:return 117;case 95:return this.pushState("trapText"),68;break;case 96:return this.pushState("trapText"),70;break;case 97:return 118;case 98:return 67;case 99:return 90;case 100:return"SEP";case 101:return 89;case 102:return 115;case 103:return 111;case 104:return 44;case 105:return 109;case 106:return 114;case 107:return 116;case 108:return this.popState(),62;break;case 109:return this.pushState("text"),62;break;case 110:return this.popState(),51;break;case 111:return this.pushState("text"),50;break;case 112:return this.popState(),31;break;case 113:return this.pushState("text"),29;break;case 114:return this.popState(),66;break;case 115:return this.pushState("text"),65;break;case 116:return"TEXT";case 117:return"QUOTE";case 118:return 9;case 119:return 10;case 120:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:.*direction\s+TD[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},shapeData:{rules:[8,11,12,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},callbackargs:{rules:[17,18,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},callbackname:{rules:[14,15,16,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},href:{rules:[21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},click:{rules:[21,24,33,34,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},dottedEdgeText:{rules:[21,24,75,77,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},thickEdgeText:{rules:[21,24,72,74,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},edgeText:{rules:[21,24,69,71,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},trapText:{rules:[21,24,78,81,83,85,89,91,92,93,94,95,96,109,111,113,115],inclusive:!1},ellipseText:{rules:[21,24,78,79,80,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},text:{rules:[21,24,78,81,82,83,84,85,88,89,90,91,95,96,108,109,110,111,112,113,114,115,116],inclusive:!1},vertex:{rules:[21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},acc_descr:{rules:[3,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},acc_title:{rules:[1,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},md_string:{rules:[19,20,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},string:{rules:[21,22,23,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,72,73,75,76,78,81,83,85,86,87,89,91,95,96,97,98,99,100,101,102,103,104,105,106,107,109,111,113,115,117,118,119,120],inclusive:!0}}};return be})();$e.lexer=ft;function He(){this.yy={}}return g(He,"Parser"),He.prototype=$e,$e.Parser=He,new He})();o1.parser=o1;var dt=o1,pt=Object.assign({},dt);pt.parse=e=>{let i=e.replace(/}\s*\n/g,`} -`);return dt.parse(i)};var Tt=pt,xt=g((e,i)=>{let r=Y1,a=r(e,"r"),o=r(e,"g"),d=r(e,"b");return K1(a,o,d,i)},"fade"),yt=g(e=>`.label { - font-family: ${e.fontFamily}; - color: ${e.nodeTextColor||e.textColor}; - } - .cluster-label text { - fill: ${e.titleColor}; - } - .cluster-label span { - color: ${e.titleColor}; - } - .cluster-label span p { - background-color: transparent; - } - - .label text,span { - fill: ${e.nodeTextColor||e.textColor}; - color: ${e.nodeTextColor||e.textColor}; - } - - .node rect, - .node circle, - .node ellipse, - .node polygon, - .node path { - fill: ${e.mainBkg}; - stroke: ${e.nodeBorder}; - stroke-width: 1px; - } - .rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label { - text-anchor: middle; - } - // .flowchart-label .text-outer-tspan { - // text-anchor: middle; - // } - // .flowchart-label .text-inner-tspan { - // text-anchor: start; - // } - - .node .katex path { - fill: #000; - stroke: #000; - stroke-width: 1px; - } - - .rough-node .label,.node .label, .image-shape .label, .icon-shape .label { - text-align: center; - } - .node.clickable { - cursor: pointer; - } - - - .root .anchor path { - fill: ${e.lineColor} !important; - stroke-width: 0; - stroke: ${e.lineColor}; - } - - .arrowheadPath { - fill: ${e.arrowheadColor}; - } - - .edgePath .path { - stroke: ${e.lineColor}; - stroke-width: 2.0px; - } - - .flowchart-link { - stroke: ${e.lineColor}; - fill: none; - } - - .edgeLabel { - background-color: ${e.edgeLabelBackground}; - p { - background-color: ${e.edgeLabelBackground}; - } - rect { - opacity: 0.5; - background-color: ${e.edgeLabelBackground}; - fill: ${e.edgeLabelBackground}; - } - text-align: center; - } - - /* For html labels only */ - .labelBkg { - background-color: ${xt(e.edgeLabelBackground,.5)}; - // background-color: - } - - .cluster rect { - fill: ${e.clusterBkg}; - stroke: ${e.clusterBorder}; - stroke-width: 1px; - } - - .cluster text { - fill: ${e.titleColor}; - } - - .cluster span { - color: ${e.titleColor}; - } - /* .cluster div { - color: ${e.titleColor}; - } */ - - div.mermaidTooltip { - position: absolute; - text-align: center; - max-width: 200px; - padding: 2px; - font-family: ${e.fontFamily}; - font-size: 12px; - background: ${e.tertiaryColor}; - border: 1px solid ${e.border2}; - border-radius: 2px; - pointer-events: none; - z-index: 100; - } - - .flowchartTitleText { - text-anchor: middle; - font-size: 18px; - fill: ${e.textColor}; - } - - rect.text { - fill: none; - stroke-width: 0; - } - - .icon-shape, .image-shape { - background-color: ${e.edgeLabelBackground}; - p { - background-color: ${e.edgeLabelBackground}; - padding: 2px; - } - .label rect { - opacity: 0.5; - background-color: ${e.edgeLabelBackground}; - fill: ${e.edgeLabelBackground}; - } - text-align: center; - } - ${lt()} -`,"getStyles"),Ft=yt,qt={parser:Tt,get db(){return new Ct},renderer:St,styles:Ft,init:g(e=>{e.flowchart||(e.flowchart={}),e.layout&&u1({layout:e.layout}),e.flowchart.arrowMarkerAbsolute=e.arrowMarkerAbsolute,u1({flowchart:{arrowMarkerAbsolute:e.arrowMarkerAbsolute}})},"init")};export{qt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-RNTHHQWK.js b/src/google/adk/cli/browser/chunk-RNTHHQWK.js new file mode 100644 index 0000000000..413dee9e51 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-RNTHHQWK.js @@ -0,0 +1,292 @@ +import{D as $e}from"./chunk-UKZIEWH5.js";import{a as Ke}from"./chunk-GP6TCC26.js";import{M as le,N as ue,R as de,S as fe,T as he,U as me,V as ke,W as ye,X as ge,Y as ot}from"./chunk-37QI3DOO.js";import{A as _e,B as De,C as Se,D as Ce,E as Me,F as Ee,G as Ft,H as Ot,I as Ie,a as gt,c as oe,f as ce,g as c,i as it,k as pe,l as ve,m as Te,n as be,t as xe,u as It,v as $t,w as Lt,x as Yt,y as At,z as we}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{e as wt,h as at}from"./chunk-RMXJBC7V.js";var Le=wt((Wt,Pt)=>{"use strict";(function(t,i){typeof Wt=="object"&&typeof Pt<"u"?Pt.exports=i():typeof define=="function"&&define.amd?define(i):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_isoWeek=i()})(Wt,function(){"use strict";var t="day";return function(i,a,n){var r=function(D){return D.add(4-D.isoWeekday(),t)},u=a.prototype;u.isoWeekYear=function(){return r(this).year()},u.isoWeek=function(D){if(!this.$utils().u(D))return this.add(7*(D-this.isoWeek()),t);var S,P,C,W,z=r(this),R=(S=this.isoWeekYear(),P=this.$u,C=(P?n.utc:n)().year(S).startOf("year"),W=4-C.isoWeekday(),C.isoWeekday()>4&&(W+=7),C.add(W,t));return z.diff(R,"week")+1},u.isoWeekday=function(D){return this.$utils().u(D)?this.day()||7:this.day(this.day()%7?D:D-7)};var b=u.startOf;u.startOf=function(D,S){var P=this.$utils(),C=!!P.u(S)||S;return P.p(D)==="isoweek"?C?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):b.bind(this)(D,S)}}})});var Ye=wt((Vt,Nt)=>{"use strict";(function(t,i){typeof Vt=="object"&&typeof Nt<"u"?Nt.exports=i():typeof define=="function"&&define.amd?define(i):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_customParseFormat=i()})(Vt,function(){"use strict";var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},i=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,a=/\d/,n=/\d\d/,r=/\d\d?/,u=/\d*[^-_:/,()\s\d]+/,b={},D=function(x){return(x=+x)+(x>68?1900:2e3)},S=function(x){return function(k){this[x]=+k}},P=[/[+-]\d\d:?(\d\d)?|Z/,function(x){(this.zone||(this.zone={})).offset=(function(k){if(!k||k==="Z")return 0;var F=k.match(/([+-]|\d\d)/g),L=60*F[1]+(+F[2]||0);return L===0?0:F[0]==="+"?-L:L})(x)}],C=function(x){var k=b[x];return k&&(k.indexOf?k:k.s.concat(k.f))},W=function(x,k){var F,L=b.meridiem;if(L){for(var G=1;G<=24;G+=1)if(x.indexOf(L(G,0,k))>-1){F=G>12;break}}else F=x===(k?"pm":"PM");return F},z={A:[u,function(x){this.afternoon=W(x,!1)}],a:[u,function(x){this.afternoon=W(x,!0)}],Q:[a,function(x){this.month=3*(x-1)+1}],S:[a,function(x){this.milliseconds=100*+x}],SS:[n,function(x){this.milliseconds=10*+x}],SSS:[/\d{3}/,function(x){this.milliseconds=+x}],s:[r,S("seconds")],ss:[r,S("seconds")],m:[r,S("minutes")],mm:[r,S("minutes")],H:[r,S("hours")],h:[r,S("hours")],HH:[r,S("hours")],hh:[r,S("hours")],D:[r,S("day")],DD:[n,S("day")],Do:[u,function(x){var k=b.ordinal,F=x.match(/\d+/);if(this.day=F[0],k)for(var L=1;L<=31;L+=1)k(L).replace(/\[|\]/g,"")===x&&(this.day=L)}],w:[r,S("week")],ww:[n,S("week")],M:[r,S("month")],MM:[n,S("month")],MMM:[u,function(x){var k=C("months"),F=(C("monthsShort")||k.map(function(L){return L.slice(0,3)})).indexOf(x)+1;if(F<1)throw new Error;this.month=F%12||F}],MMMM:[u,function(x){var k=C("months").indexOf(x)+1;if(k<1)throw new Error;this.month=k%12||k}],Y:[/[+-]?\d+/,S("year")],YY:[n,function(x){this.year=D(x)}],YYYY:[/\d{4}/,S("year")],Z:P,ZZ:P};function R(x){var k,F;k=x,F=b&&b.formats;for(var L=(x=k.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(Y,f,y){var g=y&&y.toUpperCase();return f||F[y]||t[y]||F[g].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(T,p,o){return p||o.slice(1)})})).match(i),G=L.length,X=0;X-1)return new Date((h==="X"?1e3:1)*l);var s=R(h)(l),O=s.year,e=s.month,_=s.day,A=s.hours,I=s.minutes,$=s.seconds,H=s.milliseconds,V=s.zone,N=s.week,U=new Date,st=_||(O||e?1:U.getDate()),rt=O||U.getFullYear(),lt=0;O&&!e||(lt=e>0?e-1:U.getMonth());var ut,dt=A||0,B=I||0,nt=$||0,K=H||0;return V?new Date(Date.UTC(rt,lt,st,dt,B,nt,K+60*V.offset*1e3)):m?new Date(Date.UTC(rt,lt,st,dt,B,nt,K)):(ut=new Date(rt,lt,st,dt,B,nt,K),N&&(ut=w(ut).week(N).toDate()),ut)}catch(q){return new Date("")}})(E,M,v,F),this.init(),g&&g!==!0&&(this.$L=this.locale(g).$L),y&&E!=this.format(M)&&(this.$d=new Date("")),b={}}else if(M instanceof Array)for(var T=M.length,p=1;p<=T;p+=1){d[1]=M[p-1];var o=F.apply(this,d);if(o.isValid()){this.$d=o.$d,this.$L=o.$L,this.init();break}p===T&&(this.$d=new Date(""))}else G.call(this,X)}}})});var Ae=wt((Rt,zt)=>{"use strict";(function(t,i){typeof Rt=="object"&&typeof zt<"u"?zt.exports=i():typeof define=="function"&&define.amd?define(i):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=i()})(Rt,function(){"use strict";return function(t,i){var a=i.prototype,n=a.format;a.format=function(r){var u=this,b=this.$locale();if(!this.isValid())return n.bind(this)(r);var D=this.$utils(),S=(r||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(P){switch(P){case"Q":return Math.ceil((u.$M+1)/3);case"Do":return b.ordinal(u.$D);case"gggg":return u.weekYear();case"GGGG":return u.isoWeekYear();case"wo":return b.ordinal(u.week(),"W");case"w":case"ww":return D.s(u.week(),P==="w"?1:2,"0");case"W":case"WW":return D.s(u.isoWeek(),P==="W"?1:2,"0");case"k":case"kk":return D.s(String(u.$H===0?24:u.$H),P==="k"?1:2,"0");case"X":return Math.floor(u.$d.getTime()/1e3);case"x":return u.$d.getTime();case"z":return"["+u.offsetName()+"]";case"zzz":return"["+u.offsetName("long")+"]";default:return P}});return n.bind(this)(S)}}})});var Fe=wt((Ht,Bt)=>{"use strict";(function(t,i){typeof Ht=="object"&&typeof Bt<"u"?Bt.exports=i():typeof define=="function"&&define.amd?define(i):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_duration=i()})(Ht,function(){"use strict";var t,i,a=1e3,n=6e4,r=36e5,u=864e5,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,D=31536e6,S=2628e6,P=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,C={years:D,months:S,days:u,hours:r,minutes:n,seconds:a,milliseconds:1,weeks:6048e5},W=function(E){return E instanceof G},z=function(E,v,d){return new G(E,d,v.$l)},R=function(E){return i.p(E)+"s"},x=function(E){return E<0},k=function(E){return x(E)?Math.ceil(E):Math.floor(E)},F=function(E){return Math.abs(E)},L=function(E,v){return E?x(E)?{negative:!0,format:""+F(E)+v}:{negative:!1,format:""+E+v}:{negative:!1,format:""}},G=(function(){function E(d,M,Y){var f=this;if(this.$d={},this.$l=Y,d===void 0&&(this.$ms=0,this.parseFromMilliseconds()),M)return z(d*C[R(M)],this);if(typeof d=="number")return this.$ms=d,this.parseFromMilliseconds(),this;if(typeof d=="object")return Object.keys(d).forEach(function(T){f.$d[R(T)]=d[T]}),this.calMilliseconds(),this;if(typeof d=="string"){var y=d.match(P);if(y){var g=y.slice(2).map(function(T){return T!=null?Number(T):0});return this.$d.years=g[0],this.$d.months=g[1],this.$d.weeks=g[2],this.$d.days=g[3],this.$d.hours=g[4],this.$d.minutes=g[5],this.$d.seconds=g[6],this.calMilliseconds(),this}}return this}var v=E.prototype;return v.calMilliseconds=function(){var d=this;this.$ms=Object.keys(this.$d).reduce(function(M,Y){return M+(d.$d[Y]||0)*C[Y]},0)},v.parseFromMilliseconds=function(){var d=this.$ms;this.$d.years=k(d/D),d%=D,this.$d.months=k(d/S),d%=S,this.$d.days=k(d/u),d%=u,this.$d.hours=k(d/r),d%=r,this.$d.minutes=k(d/n),d%=n,this.$d.seconds=k(d/a),d%=a,this.$d.milliseconds=d},v.toISOString=function(){var d=L(this.$d.years,"Y"),M=L(this.$d.months,"M"),Y=+this.$d.days||0;this.$d.weeks&&(Y+=7*this.$d.weeks);var f=L(Y,"D"),y=L(this.$d.hours,"H"),g=L(this.$d.minutes,"M"),T=this.$d.seconds||0;this.$d.milliseconds&&(T+=this.$d.milliseconds/1e3,T=Math.round(1e3*T)/1e3);var p=L(T,"S"),o=d.negative||M.negative||f.negative||y.negative||g.negative||p.negative,l=y.format||g.format||p.format?"T":"",h=(o?"-":"")+"P"+d.format+M.format+f.format+l+y.format+g.format+p.format;return h==="P"||h==="-P"?"P0D":h},v.toJSON=function(){return this.toISOString()},v.format=function(d){var M=d||"YYYY-MM-DDTHH:mm:ss",Y={Y:this.$d.years,YY:i.s(this.$d.years,2,"0"),YYYY:i.s(this.$d.years,4,"0"),M:this.$d.months,MM:i.s(this.$d.months,2,"0"),D:this.$d.days,DD:i.s(this.$d.days,2,"0"),H:this.$d.hours,HH:i.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:i.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:i.s(this.$d.seconds,2,"0"),SSS:i.s(this.$d.milliseconds,3,"0")};return M.replace(b,function(f,y){return y||String(Y[f])})},v.as=function(d){return this.$ms/C[R(d)]},v.get=function(d){var M=this.$ms,Y=R(d);return Y==="milliseconds"?M%=1e3:M=Y==="weeks"?k(M/C[Y]):this.$d[Y],M||0},v.add=function(d,M,Y){var f;return f=M?d*C[R(M)]:W(d)?d.$ms:z(d,this).$ms,z(this.$ms+f*(Y?-1:1),this)},v.subtract=function(d,M){return this.add(d,M,!0)},v.locale=function(d){var M=this.clone();return M.$l=d,M},v.clone=function(){return z(this.$ms,this)},v.humanize=function(d){return t().add(this.$ms,"ms").locale(this.$l).fromNow(!d)},v.valueOf=function(){return this.asMilliseconds()},v.milliseconds=function(){return this.get("milliseconds")},v.asMilliseconds=function(){return this.as("milliseconds")},v.seconds=function(){return this.get("seconds")},v.asSeconds=function(){return this.as("seconds")},v.minutes=function(){return this.get("minutes")},v.asMinutes=function(){return this.as("minutes")},v.hours=function(){return this.get("hours")},v.asHours=function(){return this.as("hours")},v.days=function(){return this.get("days")},v.asDays=function(){return this.as("days")},v.weeks=function(){return this.get("weeks")},v.asWeeks=function(){return this.as("weeks")},v.months=function(){return this.get("months")},v.asMonths=function(){return this.as("months")},v.years=function(){return this.get("years")},v.asYears=function(){return this.as("years")},E})(),X=function(E,v,d){return E.add(v.years()*d,"y").add(v.months()*d,"M").add(v.days()*d,"d").add(v.hours()*d,"h").add(v.minutes()*d,"m").add(v.seconds()*d,"s").add(v.milliseconds()*d,"ms")};return function(E,v,d){t=d,i=d().$utils(),d.duration=function(f,y){var g=d.locale();return z(f,{$l:g},y)},d.isDuration=W;var M=v.prototype.add,Y=v.prototype.subtract;v.prototype.add=function(f,y){return W(f)?X(this,f,1):M.bind(this)(f,y)},v.prototype.subtract=function(f,y){return W(f)?X(this,f,-1):Y.bind(this)(f,y)}}})});var Ve=at(Ke(),1),Q=at(ce(),1),Ne=at(Le(),1),Re=at(Ye(),1),ze=at(Ae(),1),mt=at(ce(),1),Qe=at(Fe(),1);var Gt=(function(){var t=c(function(p,o,l,h){for(l=l||{},h=p.length;h--;l[p[h]]=o);return l},"o"),i=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],a=[1,26],n=[1,27],r=[1,28],u=[1,29],b=[1,30],D=[1,31],S=[1,32],P=[1,33],C=[1,34],W=[1,9],z=[1,10],R=[1,11],x=[1,12],k=[1,13],F=[1,14],L=[1,15],G=[1,16],X=[1,19],E=[1,20],v=[1,21],d=[1,22],M=[1,23],Y=[1,25],f=[1,35],y={trace:c(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:c(function(o,l,h,m,w,s,O){var e=s.length-1;switch(w){case 1:return s[e-1];case 2:this.$=[];break;case 3:s[e-1].push(s[e]),this.$=s[e-1];break;case 4:case 5:this.$=s[e];break;case 6:case 7:this.$=[];break;case 8:m.setWeekday("monday");break;case 9:m.setWeekday("tuesday");break;case 10:m.setWeekday("wednesday");break;case 11:m.setWeekday("thursday");break;case 12:m.setWeekday("friday");break;case 13:m.setWeekday("saturday");break;case 14:m.setWeekday("sunday");break;case 15:m.setWeekend("friday");break;case 16:m.setWeekend("saturday");break;case 17:m.setDateFormat(s[e].substr(11)),this.$=s[e].substr(11);break;case 18:m.enableInclusiveEndDates(),this.$=s[e].substr(18);break;case 19:m.TopAxis(),this.$=s[e].substr(8);break;case 20:m.setAxisFormat(s[e].substr(11)),this.$=s[e].substr(11);break;case 21:m.setTickInterval(s[e].substr(13)),this.$=s[e].substr(13);break;case 22:m.setExcludes(s[e].substr(9)),this.$=s[e].substr(9);break;case 23:m.setIncludes(s[e].substr(9)),this.$=s[e].substr(9);break;case 24:m.setTodayMarker(s[e].substr(12)),this.$=s[e].substr(12);break;case 27:m.setDiagramTitle(s[e].substr(6)),this.$=s[e].substr(6);break;case 28:this.$=s[e].trim(),m.setAccTitle(this.$);break;case 29:case 30:this.$=s[e].trim(),m.setAccDescription(this.$);break;case 31:m.addSection(s[e].substr(8)),this.$=s[e].substr(8);break;case 33:m.addTask(s[e-1],s[e]),this.$="task";break;case 34:this.$=s[e-1],m.setClickEvent(s[e-1],s[e],null);break;case 35:this.$=s[e-2],m.setClickEvent(s[e-2],s[e-1],s[e]);break;case 36:this.$=s[e-2],m.setClickEvent(s[e-2],s[e-1],null),m.setLink(s[e-2],s[e]);break;case 37:this.$=s[e-3],m.setClickEvent(s[e-3],s[e-2],s[e-1]),m.setLink(s[e-3],s[e]);break;case 38:this.$=s[e-2],m.setClickEvent(s[e-2],s[e],null),m.setLink(s[e-2],s[e-1]);break;case 39:this.$=s[e-3],m.setClickEvent(s[e-3],s[e-1],s[e]),m.setLink(s[e-3],s[e-2]);break;case 40:this.$=s[e-1],m.setLink(s[e-1],s[e]);break;case 41:case 47:this.$=s[e-1]+" "+s[e];break;case 42:case 43:case 45:this.$=s[e-2]+" "+s[e-1]+" "+s[e];break;case 44:case 46:this.$=s[e-3]+" "+s[e-2]+" "+s[e-1]+" "+s[e];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(i,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:a,13:n,14:r,15:u,16:b,17:D,18:S,19:18,20:P,21:C,22:W,23:z,24:R,25:x,26:k,27:F,28:L,29:G,30:X,31:E,33:v,35:d,36:M,37:24,38:Y,40:f},t(i,[2,7],{1:[2,1]}),t(i,[2,3]),{9:36,11:17,12:a,13:n,14:r,15:u,16:b,17:D,18:S,19:18,20:P,21:C,22:W,23:z,24:R,25:x,26:k,27:F,28:L,29:G,30:X,31:E,33:v,35:d,36:M,37:24,38:Y,40:f},t(i,[2,5]),t(i,[2,6]),t(i,[2,17]),t(i,[2,18]),t(i,[2,19]),t(i,[2,20]),t(i,[2,21]),t(i,[2,22]),t(i,[2,23]),t(i,[2,24]),t(i,[2,25]),t(i,[2,26]),t(i,[2,27]),{32:[1,37]},{34:[1,38]},t(i,[2,30]),t(i,[2,31]),t(i,[2,32]),{39:[1,39]},t(i,[2,8]),t(i,[2,9]),t(i,[2,10]),t(i,[2,11]),t(i,[2,12]),t(i,[2,13]),t(i,[2,14]),t(i,[2,15]),t(i,[2,16]),{41:[1,40],43:[1,41]},t(i,[2,4]),t(i,[2,28]),t(i,[2,29]),t(i,[2,33]),t(i,[2,34],{42:[1,42],43:[1,43]}),t(i,[2,40],{41:[1,44]}),t(i,[2,35],{43:[1,45]}),t(i,[2,36]),t(i,[2,38],{42:[1,46]}),t(i,[2,37]),t(i,[2,39])],defaultActions:{},parseError:c(function(o,l){if(l.recoverable)this.trace(o);else{var h=new Error(o);throw h.hash=l,h}},"parseError"),parse:c(function(o){var l=this,h=[0],m=[],w=[null],s=[],O=this.table,e="",_=0,A=0,I=0,$=2,H=1,V=s.slice.call(arguments,1),N=Object.create(this.lexer),U={yy:{}};for(var st in this.yy)Object.prototype.hasOwnProperty.call(this.yy,st)&&(U.yy[st]=this.yy[st]);N.setInput(o,U.yy),U.yy.lexer=N,U.yy.parser=this,typeof N.yylloc>"u"&&(N.yylloc={});var rt=N.yylloc;s.push(rt);var lt=N.options&&N.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ut(Z){h.length=h.length-2*Z,w.length=w.length-Z,s.length=s.length-Z}c(ut,"popStack");function dt(){var Z;return Z=m.pop()||N.lex()||H,typeof Z!="number"&&(Z instanceof Array&&(m=Z,Z=m.pop()),Z=l.symbols_[Z]||Z),Z}c(dt,"lex");for(var B,nt,K,q,Hi,Mt,ft={},bt,tt,ae,xt;;){if(K=h[h.length-1],this.defaultActions[K]?q=this.defaultActions[K]:((B===null||typeof B>"u")&&(B=dt()),q=O[K]&&O[K][B]),typeof q>"u"||!q.length||!q[0]){var Et="";xt=[];for(bt in O[K])this.terminals_[bt]&&bt>$&&xt.push("'"+this.terminals_[bt]+"'");N.showPosition?Et="Parse error on line "+(_+1)+`: +`+N.showPosition()+` +Expecting `+xt.join(", ")+", got '"+(this.terminals_[B]||B)+"'":Et="Parse error on line "+(_+1)+": Unexpected "+(B==H?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(Et,{text:N.match,token:this.terminals_[B]||B,line:N.yylineno,loc:rt,expected:xt})}if(q[0]instanceof Array&&q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+K+", token: "+B);switch(q[0]){case 1:h.push(B),w.push(N.yytext),s.push(N.yylloc),h.push(q[1]),B=null,nt?(B=nt,nt=null):(A=N.yyleng,e=N.yytext,_=N.yylineno,rt=N.yylloc,I>0&&I--);break;case 2:if(tt=this.productions_[q[1]][1],ft.$=w[w.length-tt],ft._$={first_line:s[s.length-(tt||1)].first_line,last_line:s[s.length-1].last_line,first_column:s[s.length-(tt||1)].first_column,last_column:s[s.length-1].last_column},lt&&(ft._$.range=[s[s.length-(tt||1)].range[0],s[s.length-1].range[1]]),Mt=this.performAction.apply(ft,[e,A,_,U.yy,q[1],w,s].concat(V)),typeof Mt<"u")return Mt;tt&&(h=h.slice(0,-1*tt*2),w=w.slice(0,-1*tt),s=s.slice(0,-1*tt)),h.push(this.productions_[q[1]][0]),w.push(ft.$),s.push(ft._$),ae=O[h[h.length-2]][h[h.length-1]],h.push(ae);break;case 3:return!0}}return!0},"parse")},g=(function(){var p={EOF:1,parseError:c(function(l,h){if(this.yy.parser)this.yy.parser.parseError(l,h);else throw new Error(l)},"parseError"),setInput:c(function(o,l){return this.yy=l||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:c(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var l=o.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:c(function(o){var l=o.length,h=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var m=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),h.length-1&&(this.yylineno-=h.length-1);var w=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:h?(h.length===m.length?this.yylloc.first_column:0)+m[m.length-h.length].length-h[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[w[0],w[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},"unput"),more:c(function(){return this._more=!0,this},"more"),reject:c(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:c(function(o){this.unput(this.match.slice(o))},"less"),pastInput:c(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:c(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:c(function(){var o=this.pastInput(),l=new Array(o.length+1).join("-");return o+this.upcomingInput()+` +`+l+"^"},"showPosition"),test_match:c(function(o,l){var h,m,w;if(this.options.backtrack_lexer&&(w={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(w.yylloc.range=this.yylloc.range.slice(0))),m=o[0].match(/(?:\r\n?|\n).*/g),m&&(this.yylineno+=m.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:m?m[m.length-1].length-m[m.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],h=this.performAction.call(this,this.yy,this,l,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),h)return h;if(this._backtrack){for(var s in w)this[s]=w[s];return!1}return!1},"test_match"),next:c(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,l,h,m;this._more||(this.yytext="",this.match="");for(var w=this._currentRules(),s=0;sl[0].length)){if(l=h,m=s,this.options.backtrack_lexer){if(o=this.test_match(h,w[s]),o!==!1)return o;if(this._backtrack){l=!1;continue}else return!1}else if(!this.options.flex)break}return l?(o=this.test_match(l,w[m]),o!==!1?o:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:c(function(){var l=this.next();return l||this.lex()},"lex"),begin:c(function(l){this.conditionStack.push(l)},"begin"),popState:c(function(){var l=this.conditionStack.length-1;return l>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:c(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:c(function(l){return l=this.conditionStack.length-1-Math.abs(l||0),l>=0?this.conditionStack[l]:"INITIAL"},"topState"),pushState:c(function(l){this.begin(l)},"pushState"),stateStackSize:c(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:c(function(l,h,m,w){var s=w;switch(m){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return p})();y.lexer=g;function T(){this.yy={}}return c(T,"Parser"),T.prototype=y,y.Parser=T,new T})();Gt.parser=Gt;var Je=Gt;Q.default.extend(Ne.default);Q.default.extend(Re.default);Q.default.extend(ze.default);var Oe={friday:5,saturday:6},J="",Zt="",Qt=void 0,Kt="",pt=[],vt=[],Jt=new Map,te=[],St=[],yt="",ee="",He=["active","done","crit","milestone","vert"],ie=[],ht="",Tt=!1,se=!1,re="sunday",Ct="saturday",Xt=0,ti=c(function(){te=[],St=[],yt="",ie=[],_t=0,qt=void 0,Dt=void 0,j=[],J="",Zt="",ee="",Qt=void 0,Kt="",pt=[],vt=[],Tt=!1,se=!1,Xt=0,Jt=new Map,ht="",de(),re="sunday",Ct="saturday"},"clear"),ei=c(function(t){ht=t},"setDiagramId"),ii=c(function(t){Zt=t},"setAxisFormat"),si=c(function(){return Zt},"getAxisFormat"),ri=c(function(t){Qt=t},"setTickInterval"),ni=c(function(){return Qt},"getTickInterval"),ai=c(function(t){Kt=t},"setTodayMarker"),oi=c(function(){return Kt},"getTodayMarker"),ci=c(function(t){J=t},"setDateFormat"),li=c(function(){Tt=!0},"enableInclusiveEndDates"),ui=c(function(){return Tt},"endDatesAreInclusive"),di=c(function(){se=!0},"enableTopAxis"),fi=c(function(){return se},"topAxisEnabled"),hi=c(function(t){ee=t},"setDisplayMode"),mi=c(function(){return ee},"getDisplayMode"),ki=c(function(){return J},"getDateFormat"),yi=c(function(t){pt=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),gi=c(function(){return pt},"getIncludes"),pi=c(function(t){vt=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),vi=c(function(){return vt},"getExcludes"),Ti=c(function(){return Jt},"getLinks"),bi=c(function(t){yt=t,te.push(t)},"addSection"),xi=c(function(){return te},"getSections"),wi=c(function(){let t=We(),i=10,a=0;for(;!t&&a{let S=D.trim();return S==="x"||S==="X"},"isTimestampFormat")(i)&&/^\d+$/.test(a))return new Date(Number(a));let u=/^after\s+(?[\d\w- ]+)/.exec(a);if(u!==null){let D=null;for(let P of u.groups.ids.split(" ")){let C=ct(P);C!==void 0&&(!D||C.endTime>D.endTime)&&(D=C)}if(D)return D.endTime;let S=new Date;return S.setHours(0,0,0,0),S}let b=(0,Q.default)(a,i.trim(),!0);if(b.isValid())return b.toDate();{it.debug("Invalid date:"+a),it.debug("With date format:"+i.trim());let D=new Date(a);if(D===void 0||isNaN(D.getTime())||D.getFullYear()<-1e4||D.getFullYear()>1e4)throw new Error("Invalid date:"+a);return D}},"getStartDate"),Ge=c(function(t){let i=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return i!==null?[Number.parseFloat(i[1]),i[2]]:[NaN,"ms"]},"parseDuration"),Xe=c(function(t,i,a,n=!1){a=a.trim();let u=/^until\s+(?[\d\w- ]+)/.exec(a);if(u!==null){let C=null;for(let z of u.groups.ids.split(" ")){let R=ct(z);R!==void 0&&(!C||R.startTime{window.open(a,"_self")}),Jt.set(n,a))}),qe(t,"clickable")},"setLink"),qe=c(function(t,i){t.split(",").forEach(function(a){let n=ct(a);n!==void 0&&n.classes.push(i)})},"setClass"),Yi=c(function(t,i,a){if(ot().securityLevel!=="loose"||i===void 0)return;let n=[];if(typeof a=="string"){n=a.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u{$e.runFunc(i,...n)})},"setClickFun"),Ze=c(function(t,i){ie.push(function(){let a=ht?`${ht}-${t}`:t,n=document.querySelector(`[id="${a}"]`);n!==null&&n.addEventListener("click",function(){i()})},function(){let a=ht?`${ht}-${t}`:t,n=document.querySelector(`[id="${a}-text"]`);n!==null&&n.addEventListener("click",function(){i()})})},"pushFun"),Ai=c(function(t,i,a){t.split(",").forEach(function(n){Yi(n,i,a)}),qe(t,"clickable")},"setClickEvent"),Fi=c(function(t){ie.forEach(function(i){i(t)})},"bindFunctions"),Oi={getConfig:c(()=>ot().gantt,"getConfig"),clear:ti,setDateFormat:ci,getDateFormat:ki,enableInclusiveEndDates:li,endDatesAreInclusive:ui,enableTopAxis:di,topAxisEnabled:fi,setAxisFormat:ii,getAxisFormat:si,setTickInterval:ri,getTickInterval:ni,setTodayMarker:ai,getTodayMarker:oi,setAccTitle:fe,getAccTitle:he,setDiagramTitle:ye,getDiagramTitle:ge,setDiagramId:ei,setDisplayMode:hi,getDisplayMode:mi,setAccDescription:me,getAccDescription:ke,addSection:bi,getSections:xi,getTasks:wi,addTask:Ii,findTaskById:ct,addTaskOrg:$i,setIncludes:yi,getIncludes:gi,setExcludes:pi,getExcludes:vi,setClickEvent:Ai,setLink:Li,getLinks:Ti,bindFunctions:Fi,parseDuration:Ge,isInvalidDate:Be,setWeekday:_i,getWeekday:Di,setWeekend:Si};function ne(t,i,a){let n=!0;for(;n;)n=!1,a.forEach(function(r){let u="^\\s*"+r+"\\s*$",b=new RegExp(u);t[0].match(b)&&(i[r]=!0,t.shift(1),n=!0)})}c(ne,"getTaskTags");mt.default.extend(Qe.default);var Wi=c(function(){it.debug("Something is calling, setConf, remove the call")},"setConf"),Pe={monday:_e,tuesday:De,wednesday:Se,thursday:Ce,friday:Me,saturday:Ee,sunday:we},Pi=c((t,i)=>{let a=[...t].map(()=>-1/0),n=[...t].sort((u,b)=>u.startTime-b.startTime||u.order-b.order),r=0;for(let u of n)for(let b=0;b=a[b]){a[b]=u.endTime,u.order=b+i,b>r&&(r=b);break}return r},"getMaxIntersections"),et,jt=1e4,Vi=c(function(t,i,a,n){let r=ot().gantt;n.db.setDiagramId(i);let u=ot().securityLevel,b;u==="sandbox"&&(b=gt("#i"+i));let D=u==="sandbox"?gt(b.nodes()[0].contentDocument.body):gt("body"),S=u==="sandbox"?b.nodes()[0].contentDocument:document,P=S.getElementById(i);et=P.parentElement.offsetWidth,et===void 0&&(et=1200),r.useWidth!==void 0&&(et=r.useWidth);let C=n.db.getTasks(),W=[];for(let f of C)W.push(f.type);W=Y(W);let z={},R=2*r.topPadding;if(n.db.getDisplayMode()==="compact"||r.displayMode==="compact"){let f={};for(let g of C)f[g.section]===void 0?f[g.section]=[g]:f[g.section].push(g);let y=0;for(let g of Object.keys(f)){let T=Pi(f[g],y)+1;y+=T,R+=T*(r.barHeight+r.barGap),z[g]=T}}else{R+=C.length*(r.barHeight+r.barGap);for(let f of W)z[f]=C.filter(y=>y.type===f).length}P.setAttribute("viewBox","0 0 "+et+" "+R);let x=D.select(`[id="${i}"]`),k=Ie().domain([ve(C,function(f){return f.startTime}),pe(C,function(f){return f.endTime})]).rangeRound([0,et-r.leftPadding-r.rightPadding]);function F(f,y){let g=f.startTime,T=y.startTime,p=0;return g>T?p=1:ge.vert===_.vert?0:e.vert?1:-1);let m=[...new Set(f.map(e=>e.order))].map(e=>f.find(_=>_.order===e));x.append("g").selectAll("rect").data(m).enter().append("rect").attr("x",0).attr("y",function(e,_){return _=e.order,_*y+g-2}).attr("width",function(){return l-r.rightPadding/2}).attr("height",y).attr("class",function(e){for(let[_,A]of W.entries())if(e.type===A)return"section section"+_%r.numberSectionStyles;return"section section0"}).enter();let w=x.append("g").selectAll("rect").data(f).enter(),s=n.db.getLinks();if(w.append("rect").attr("id",function(e){return i+"-"+e.id}).attr("rx",3).attr("ry",3).attr("x",function(e){return e.milestone?k(e.startTime)+T+.5*(k(e.endTime)-k(e.startTime))-.5*p:k(e.startTime)+T}).attr("y",function(e,_){return _=e.order,e.vert?r.gridLineStartPadding:_*y+g}).attr("width",function(e){return e.milestone?p:e.vert?.08*p:k(e.renderEndTime||e.endTime)-k(e.startTime)}).attr("height",function(e){return e.vert?C.length*(r.barHeight+r.barGap)+r.barHeight*2:p}).attr("transform-origin",function(e,_){return _=e.order,(k(e.startTime)+T+.5*(k(e.endTime)-k(e.startTime))).toString()+"px "+(_*y+g+.5*p).toString()+"px"}).attr("class",function(e){let _="task",A="";e.classes.length>0&&(A=e.classes.join(" "));let I=0;for(let[H,V]of W.entries())e.type===V&&(I=H%r.numberSectionStyles);let $="";return e.active?e.crit?$+=" activeCrit":$=" active":e.done?e.crit?$=" doneCrit":$=" done":e.crit&&($+=" crit"),$.length===0&&($=" task"),e.milestone&&($=" milestone "+$),e.vert&&($=" vert "+$),$+=I,$+=" "+A,_+$}),w.append("text").attr("id",function(e){return i+"-"+e.id+"-text"}).text(function(e){return e.task}).attr("font-size",r.fontSize).attr("x",function(e){let _=k(e.startTime),A=k(e.renderEndTime||e.endTime);if(e.milestone&&(_+=.5*(k(e.endTime)-k(e.startTime))-.5*p,A=_+p),e.vert)return k(e.startTime)+T;let I=this.getBBox().width;return I>A-_?A+I+1.5*r.leftPadding>l?_+T-5:A+T+5:(A-_)/2+_+T}).attr("y",function(e,_){return e.vert?r.gridLineStartPadding+C.length*(r.barHeight+r.barGap)+60:(_=e.order,_*y+r.barHeight/2+(r.fontSize/2-2)+g)}).attr("text-height",p).attr("class",function(e){let _=k(e.startTime),A=k(e.endTime);e.milestone&&(A=_+p);let I=this.getBBox().width,$="";e.classes.length>0&&($=e.classes.join(" "));let H=0;for(let[N,U]of W.entries())e.type===U&&(H=N%r.numberSectionStyles);let V="";return e.active&&(e.crit?V="activeCritText"+H:V="activeText"+H),e.done?e.crit?V=V+" doneCritText"+H:V=V+" doneText"+H:e.crit&&(V=V+" critText"+H),e.milestone&&(V+=" milestoneText"),e.vert&&(V+=" vertText"),I>A-_?A+I+1.5*r.leftPadding>l?$+" taskTextOutsideLeft taskTextOutside"+H+" "+V:$+" taskTextOutsideRight taskTextOutside"+H+" "+V+" width-"+I:$+" taskText taskText"+H+" "+V+" width-"+I}),ot().securityLevel==="sandbox"){let e;e=gt("#i"+i);let _=e.nodes()[0].contentDocument;w.filter(function(A){return s.has(A.id)}).each(function(A){var I=_.querySelector("#"+CSS.escape(i+"-"+A.id)),$=_.querySelector("#"+CSS.escape(i+"-"+A.id+"-text"));let H=I.parentNode;var V=_.createElement("a");V.setAttribute("xlink:href",s.get(A.id)),V.setAttribute("target","_top"),H.appendChild(V),V.appendChild(I),V.appendChild($)})}}c(G,"drawRects");function X(f,y,g,T,p,o,l,h){if(l.length===0&&h.length===0)return;let m,w;for(let{startTime:I,endTime:$}of o)(m===void 0||Iw)&&(w=$);if(!m||!w)return;if((0,mt.default)(w).diff((0,mt.default)(m),"year")>5){it.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let s=n.db.getDateFormat(),O=[],e=null,_=(0,mt.default)(m);for(;_.valueOf()<=w;)n.db.isInvalidDate(_,s,l,h)?e?e.end=_:e={start:_,end:_}:e&&(O.push(e),e=null),_=_.add(1,"d");x.append("g").selectAll("rect").data(O).enter().append("rect").attr("id",I=>i+"-exclude-"+I.start.format("YYYY-MM-DD")).attr("x",I=>k(I.start.startOf("day"))+g).attr("y",r.gridLineStartPadding).attr("width",I=>k(I.end.endOf("day"))-k(I.start.startOf("day"))).attr("height",p-y-r.gridLineStartPadding).attr("transform-origin",function(I,$){return(k(I.start)+g+.5*(k(I.end)-k(I.start))).toString()+"px "+($*f+.5*p).toString()+"px"}).attr("class","exclude-range")}c(X,"drawExcludeDays");function E(f,y,g,T){if(g<=0||f>y)return 1/0;let p=y-f,o=mt.default.duration({[T??"day"]:g}).asMilliseconds();return o<=0?1/0:Math.ceil(p/o)}c(E,"getEstimatedTickCount");function v(f,y,g,T){let p=n.db.getDateFormat(),o=n.db.getAxisFormat(),l;o?l=o:p==="D"?l="%d":l=r.axisFormat??"%Y-%m-%d";let h=be(k).tickSize(-T+y+r.gridLineStartPadding).tickFormat(Ot(l)),w=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(n.db.getTickInterval()||r.tickInterval);if(w!==null){let s=parseInt(w[1],10);if(isNaN(s)||s<=0)it.warn(`Invalid tick interval value: "${w[1]}". Skipping custom tick interval.`);else{let O=w[2],e=n.db.getWeekday()||r.weekday,_=k.domain(),A=_[0],I=_[1],$=E(A,I,s,O);if($>jt)it.warn(`The tick interval "${s}${O}" would generate ${$} ticks, which exceeds the maximum allowed (${jt}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(O){case"millisecond":h.ticks(It.every(s));break;case"second":h.ticks($t.every(s));break;case"minute":h.ticks(Lt.every(s));break;case"hour":h.ticks(Yt.every(s));break;case"day":h.ticks(At.every(s));break;case"week":h.ticks(Pe[e].every(s));break;case"month":h.ticks(Ft.every(s));break}}}if(x.append("g").attr("class","grid").attr("transform","translate("+f+", "+(T-50)+")").call(h).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),n.db.topAxisEnabled()||r.topAxis){let s=Te(k).tickSize(-T+y+r.gridLineStartPadding).tickFormat(Ot(l));if(w!==null){let O=parseInt(w[1],10);if(isNaN(O)||O<=0)it.warn(`Invalid tick interval value: "${w[1]}". Skipping custom tick interval.`);else{let e=w[2],_=n.db.getWeekday()||r.weekday,A=k.domain(),I=A[0],$=A[1];if(E(I,$,O,e)<=jt)switch(e){case"millisecond":s.ticks(It.every(O));break;case"second":s.ticks($t.every(O));break;case"minute":s.ticks(Lt.every(O));break;case"hour":s.ticks(Yt.every(O));break;case"day":s.ticks(At.every(O));break;case"week":s.ticks(Pe[_].every(O));break;case"month":s.ticks(Ft.every(O));break}}}x.append("g").attr("class","grid").attr("transform","translate("+f+", "+y+")").call(s).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}c(v,"makeGrid");function d(f,y){let g=0,T=Object.keys(z).map(p=>[p,z[p]]);x.append("g").selectAll("text").data(T).enter().append(function(p){let o=p[0].split(le.lineBreakRegex),l=-(o.length-1)/2,h=S.createElementNS("http://www.w3.org/2000/svg","text");h.setAttribute("dy",l+"em");for(let[m,w]of o.entries()){let s=S.createElementNS("http://www.w3.org/2000/svg","tspan");s.setAttribute("alignment-baseline","central"),s.setAttribute("x","10"),m>0&&s.setAttribute("dy","1em"),s.textContent=w,h.appendChild(s)}return h}).attr("x",10).attr("y",function(p,o){if(o>0)for(let l=0;l` + .mermaid-main-font { + font-family: ${t.fontFamily}; + } + + .exclude-range { + fill: ${t.excludeBkgColor}; + } + + .section { + stroke: none; + opacity: 0.2; + } + + .section0 { + fill: ${t.sectionBkgColor}; + } + + .section2 { + fill: ${t.sectionBkgColor2}; + } + + .section1, + .section3 { + fill: ${t.altSectionBkgColor}; + opacity: 0.2; + } + + .sectionTitle0 { + fill: ${t.titleColor}; + } + + .sectionTitle1 { + fill: ${t.titleColor}; + } + + .sectionTitle2 { + fill: ${t.titleColor}; + } + + .sectionTitle3 { + fill: ${t.titleColor}; + } + + .sectionTitle { + text-anchor: start; + font-family: ${t.fontFamily}; + } + + + /* Grid and axis */ + + .grid .tick { + stroke: ${t.gridColor}; + opacity: 0.8; + shape-rendering: crispEdges; + } + + .grid .tick text { + font-family: ${t.fontFamily}; + fill: ${t.textColor}; + } + + .grid path { + stroke-width: 0; + } + + + /* Today line */ + + .today { + fill: none; + stroke: ${t.todayLineColor}; + stroke-width: 2px; + } + + + /* Task styling */ + + /* Default task */ + + .task { + stroke-width: 2; + } + + .taskText { + text-anchor: middle; + font-family: ${t.fontFamily}; + } + + .taskTextOutsideRight { + fill: ${t.taskTextDarkColor}; + text-anchor: start; + font-family: ${t.fontFamily}; + } + + .taskTextOutsideLeft { + fill: ${t.taskTextDarkColor}; + text-anchor: end; + } + + + /* Special case clickable */ + + .task.clickable { + cursor: pointer; + } + + .taskText.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideLeft.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + .taskTextOutsideRight.clickable { + cursor: pointer; + fill: ${t.taskTextClickableColor} !important; + font-weight: bold; + } + + + /* Specific task settings for the sections*/ + + .taskText0, + .taskText1, + .taskText2, + .taskText3 { + fill: ${t.taskTextColor}; + } + + .task0, + .task1, + .task2, + .task3 { + fill: ${t.taskBkgColor}; + stroke: ${t.taskBorderColor}; + } + + .taskTextOutside0, + .taskTextOutside2 + { + fill: ${t.taskTextOutsideColor}; + } + + .taskTextOutside1, + .taskTextOutside3 { + fill: ${t.taskTextOutsideColor}; + } + + + /* Active task */ + + .active0, + .active1, + .active2, + .active3 { + fill: ${t.activeTaskBkgColor}; + stroke: ${t.activeTaskBorderColor}; + } + + .activeText0, + .activeText1, + .activeText2, + .activeText3 { + fill: ${t.taskTextDarkColor} !important; + } + + + /* Completed task */ + + .done0, + .done1, + .done2, + .done3 { + stroke: ${t.doneTaskBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + } + + .doneText0, + .doneText1, + .doneText2, + .doneText3 { + fill: ${t.taskTextDarkColor} !important; + } + + /* Done task text displayed outside the bar sits against the diagram background, + not against the done-task bar, so it must use the outside/contrast color. */ + .doneText0.taskTextOutsideLeft, + .doneText0.taskTextOutsideRight, + .doneText1.taskTextOutsideLeft, + .doneText1.taskTextOutsideRight, + .doneText2.taskTextOutsideLeft, + .doneText2.taskTextOutsideRight, + .doneText3.taskTextOutsideLeft, + .doneText3.taskTextOutsideRight { + fill: ${t.taskTextOutsideColor} !important; + } + + + /* Tasks on the critical line */ + + .crit0, + .crit1, + .crit2, + .crit3 { + stroke: ${t.critBorderColor}; + fill: ${t.critBkgColor}; + stroke-width: 2; + } + + .activeCrit0, + .activeCrit1, + .activeCrit2, + .activeCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.activeTaskBkgColor}; + stroke-width: 2; + } + + .doneCrit0, + .doneCrit1, + .doneCrit2, + .doneCrit3 { + stroke: ${t.critBorderColor}; + fill: ${t.doneTaskBkgColor}; + stroke-width: 2; + cursor: pointer; + shape-rendering: crispEdges; + } + + .milestone { + transform: rotate(45deg) scale(0.8,0.8); + } + + .milestoneText { + font-style: italic; + } + .doneCritText0, + .doneCritText1, + .doneCritText2, + .doneCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + /* Done-crit task text outside the bar \u2014 same reasoning as doneText above. */ + .doneCritText0.taskTextOutsideLeft, + .doneCritText0.taskTextOutsideRight, + .doneCritText1.taskTextOutsideLeft, + .doneCritText1.taskTextOutsideRight, + .doneCritText2.taskTextOutsideLeft, + .doneCritText2.taskTextOutsideRight, + .doneCritText3.taskTextOutsideLeft, + .doneCritText3.taskTextOutsideRight { + fill: ${t.taskTextOutsideColor} !important; + } + + .vert { + stroke: ${t.vertLineColor}; + } + + .vertText { + font-size: 15px; + text-anchor: middle; + fill: ${t.vertLineColor} !important; + } + + .activeCritText0, + .activeCritText1, + .activeCritText2, + .activeCritText3 { + fill: ${t.taskTextDarkColor} !important; + } + + .titleText { + text-anchor: middle; + font-size: 18px; + fill: ${t.titleColor||t.textColor}; + font-family: ${t.fontFamily}; + } +`,"getStyles"),zi=Ri,Ui={parser:Je,db:Oi,renderer:Ni,styles:zi};export{Ui as diagram}; diff --git a/src/google/adk/cli/browser/chunk-ROA6Y7BN.js b/src/google/adk/cli/browser/chunk-ROA6Y7BN.js new file mode 100644 index 0000000000..d28bff96b3 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-ROA6Y7BN.js @@ -0,0 +1 @@ +import{a as _,c as N,d as F}from"./chunk-OCQO4LX3.js";import{a as U}from"./chunk-YEJ3ZE5E.js";import{a as C}from"./chunk-VS3KHVTS.js";import"./chunk-APNCZOFE.js";import"./chunk-XB6MIIOW.js";import"./chunk-UFYCV57Y.js";import"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import{D as P}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{H as A,M as z,N as G,Y as t}from"./chunk-37QI3DOO.js";import{M as R,Q as W,a as T,g as u,i as v}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";var D=u(e=>e.append("circle").attr("class","start-state").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit).attr("cy",t().state.padding+t().state.sizeUnit),"drawStartState"),Y=u(e=>e.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",t().state.textHeight).attr("class","divider").attr("x2",t().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),I=u((e,i)=>{let s=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+2*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),g=s.node().getBBox();return e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",g.width+2*t().state.padding).attr("height",g.height+2*t().state.padding).attr("rx",t().state.radius),s},"drawSimpleState"),$=u((e,i)=>{let s=u(function(o,w,m){let S=o.append("tspan").attr("x",2*t().state.padding).text(w);m||S.attr("dy",t().state.textHeight)},"addTspan"),n=e.append("text").attr("x",2*t().state.padding).attr("y",t().state.textHeight+1.3*t().state.padding).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),h=n.height,p=e.append("text").attr("x",t().state.padding).attr("y",h+t().state.padding*.4+t().state.dividerMargin+t().state.textHeight).attr("class","state-description"),a=!0,d=!0;i.descriptions.forEach(function(o){a||(s(p,o,d),d=!1),a=!1});let y=e.append("line").attr("x1",t().state.padding).attr("y1",t().state.padding+h+t().state.dividerMargin/2).attr("y2",t().state.padding+h+t().state.dividerMargin/2).attr("class","descr-divider"),x=p.node().getBBox(),c=Math.max(x.width,n.width);return y.attr("x2",c+3*t().state.padding),e.insert("rect",":first-child").attr("x",t().state.padding).attr("y",t().state.padding).attr("width",c+2*t().state.padding).attr("height",x.height+h+2*t().state.padding).attr("rx",t().state.radius),e},"drawDescrState"),q=u((e,i,s)=>{let g=t().state.padding,n=2*t().state.padding,h=e.node().getBBox(),p=h.width,a=h.x,d=e.append("text").attr("x",0).attr("y",t().state.titleShift).attr("font-size",t().state.fontSize).attr("class","state-title").text(i.id),x=d.node().getBBox().width+n,c=Math.max(x,p);c===p&&(c=c+n);let o,w=e.node().getBBox();i.doc,o=a-g,x>p&&(o=(p-c)/2+g),Math.abs(a-w.x)p&&(o=a-(x-p)/2);let m=1-t().state.textHeight;return e.insert("rect",":first-child").attr("x",o).attr("y",m).attr("class",s?"alt-composit":"composit").attr("width",c).attr("height",w.height+t().state.textHeight+t().state.titleShift+1).attr("rx","0"),d.attr("x",o+g),x<=p&&d.attr("x",a+(c-n)/2-x/2+g),e.insert("rect",":first-child").attr("x",o).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",c).attr("height",t().state.textHeight*3).attr("rx",t().state.radius),e.insert("rect",":first-child").attr("x",o).attr("y",t().state.titleShift-t().state.textHeight-t().state.padding).attr("width",c).attr("height",w.height+3+2*t().state.textHeight).attr("rx",t().state.radius),e},"addTitleAndBox"),Z=u(e=>(e.append("circle").attr("class","end-state-outer").attr("r",t().state.sizeUnit+t().state.miniPadding).attr("cx",t().state.padding+t().state.sizeUnit+t().state.miniPadding).attr("cy",t().state.padding+t().state.sizeUnit+t().state.miniPadding),e.append("circle").attr("class","end-state-inner").attr("r",t().state.sizeUnit).attr("cx",t().state.padding+t().state.sizeUnit+2).attr("cy",t().state.padding+t().state.sizeUnit+2)),"drawEndState"),j=u((e,i)=>{let s=t().state.forkWidth,g=t().state.forkHeight;if(i.parentId){let n=s;s=g,g=n}return e.append("rect").style("stroke","black").style("fill","black").attr("width",s).attr("height",g).attr("x",t().state.padding).attr("y",t().state.padding)},"drawForkJoinState"),K=u((e,i,s,g)=>{let n=0,h=g.append("text");h.style("text-anchor","start"),h.attr("class","noteText");let p=e.replace(/\r\n/g,"
");p=p.replace(/\n/g,"
");let a=p.split(z.lineBreakRegex),d=1.25*t().state.noteMargin;for(let y of a){let x=y.trim();if(x.length>0){let c=h.append("tspan");if(c.text(x),d===0){let o=c.node().getBBox();d+=o.height}n+=d,c.attr("x",i+t().state.noteMargin),c.attr("y",s+n+1.25*t().state.noteMargin)}}return{textWidth:h.node().getBBox().width,textHeight:n}},"_drawLongText"),Q=u((e,i)=>{i.attr("class","state-note");let s=i.append("rect").attr("x",0).attr("y",t().state.padding),g=i.append("g"),{textWidth:n,textHeight:h}=K(e,0,0,g);return s.attr("height",h+2*t().state.noteMargin),s.attr("width",n+t().state.noteMargin*2),s},"drawNote"),O=u(function(e,i){let s=i.id,g={id:s,label:i.id,width:0,height:0},n=e.append("g").attr("id",s).attr("class","stateGroup");i.type==="start"&&D(n),i.type==="end"&&Z(n),(i.type==="fork"||i.type==="join")&&j(n,i),i.type==="note"&&Q(i.note.text,n),i.type==="divider"&&Y(n),i.type==="default"&&i.descriptions.length===0&&I(n,i),i.type==="default"&&i.descriptions.length>0&&$(n,i);let h=n.node().getBBox();return g.width=h.width+2*t().state.padding,g.height=h.height+2*t().state.padding,g},"drawState"),J=0,V=u(function(e,i,s){let g=u(function(d){switch(d){case N.relationType.AGGREGATION:return"aggregation";case N.relationType.EXTENSION:return"extension";case N.relationType.COMPOSITION:return"composition";case N.relationType.DEPENDENCY:return"dependency"}},"getRelationType");i.points=i.points.filter(d=>!Number.isNaN(d.y));let n=i.points,h=R().x(function(d){return d.x}).y(function(d){return d.y}).curve(W),p=e.append("path").attr("d",h(n)).attr("id","edge"+J).attr("class","transition"),a="";if(t().state.arrowMarkerAbsolute&&(a=A(!0)),p.attr("marker-end","url("+a+"#"+g(N.relationType.DEPENDENCY)+"End)"),s.title!==void 0){let d=e.append("g").attr("class","stateLabel"),{x:y,y:x}=P.calcLabelPosition(i.points),c=z.getRows(s.title),o=0,w=[],m=0,S=0;for(let r=0;r<=c.length;r++){let f=d.append("text").attr("text-anchor","middle").text(c[r]).attr("x",y).attr("y",x+o),l=f.node().getBBox();m=Math.max(m,l.width),S=Math.min(S,l.x),v.info(l.x,y,x+o),o===0&&(o=f.node().getBBox().height,v.info("Title height",o,x)),w.push(f)}let k=o*c.length;if(c.length>1){let r=(c.length-1)*o*.5;w.forEach((f,l)=>f.attr("y",x+l*o-r)),k=o*c.length}let M=d.node().getBBox();d.insert("rect",":first-child").attr("class","box").attr("x",y-m/2-t().state.padding/2).attr("y",x-k/2-t().state.padding/2-3.5).attr("width",m+t().state.padding).attr("height",k+t().state.padding),v.info(M)}J++},"drawEdge"),b,L={},tt=u(function(){},"setConf"),et=u(function(e){e.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),at=u(function(e,i,s,g){b=t().state;let n=t().securityLevel,h;n==="sandbox"&&(h=T("#i"+i));let p=n==="sandbox"?T(h.nodes()[0].contentDocument.body):T("body"),a=n==="sandbox"?h.nodes()[0].contentDocument:document;v.debug("Rendering diagram "+e);let d=p.select(`[id='${i}']`);et(d);let y=g.db.getRootDoc(),x=d.append("g").attr("id",i+"-root");X(y,x,void 0,!1,p,a,g);let c=b.padding,o=d.node().getBBox(),w=o.width+c*2,m=o.height+c*2,S=w*1.75;G(d,m,S,b.useMaxWidth),d.attr("viewBox",`${o.x-b.padding} ${o.y-b.padding} `+w+" "+m)},"draw"),it=u(e=>e?e.length*b.fontSizeFactor:1,"getLabelWidth"),X=u((e,i,s,g,n,h,p)=>{let a=new C({compound:!0,multigraph:!0}),d,y=!0;for(d=0;d{let B=l.parentElement,E=0,H=0;B&&(B.parentElement&&(E=B.parentElement.getBBox().width),H=parseInt(B.getAttribute("data-x-shift"),10),Number.isNaN(H)&&(H=0)),l.setAttribute("x1",0-H+8),l.setAttribute("x2",E-H-8)})):v.debug("No Node "+r+": "+JSON.stringify(a.node(r)))});let k=S.getBBox();a.edges().forEach(function(r){r!==void 0&&a.edge(r)!==void 0&&(v.debug("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(a.edge(r))),V(i,a.edge(r),a.edge(r).relation))}),k=S.getBBox();let M={id:s||"root",label:s||"root",width:0,height:0};return M.width=k.width+2*b.padding,M.height=k.height+2*b.padding,v.debug("Doc rendered",M,a),M},"renderDoc"),rt={setConf:tt,draw:at},St={parser:_,get db(){return new N(1)},renderer:rt,styles:F,init:u(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{St as diagram}; diff --git a/src/google/adk/cli/browser/chunk-S22PTQH2.js b/src/google/adk/cli/browser/chunk-S22PTQH2.js deleted file mode 100644 index 3bea5f3ccf..0000000000 --- a/src/google/adk/cli/browser/chunk-S22PTQH2.js +++ /dev/null @@ -1,73 +0,0 @@ -import{a as st}from"./chunk-APNCZOFE.js";import{a as it}from"./chunk-ST54LLJ3.js";import{b as et,c as tt}from"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import{m as Ze}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{R as Ke,S as We,T as je,U as Ge,V as ze,W as Xe,X as Je,Y as ge}from"./chunk-QFMJV7VH.js";import{g as o,h as He,i as ke}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{j as Qe}from"./chunk-RMXJBC7V.js";var Ae=(function(){var e=o(function(P,i,a,c){for(a=a||{},c=P.length;c--;a[P[c]]=i);return a},"o"),f=[1,3],h=[1,4],r=[1,5],n=[1,6],d=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],k=[1,22],b=[2,7],g=[1,26],S=[1,27],N=[1,28],q=[1,29],A=[1,33],C=[1,34],V=[1,35],v=[1,36],x=[1,37],L=[1,38],w=[1,24],D=[1,31],O=[1,32],M=[1,30],E=[1,39],p=[1,40],m=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],$=[1,61],X=[89,90],Ce=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],de=[27,29],Ve=[1,70],ve=[1,71],xe=[1,72],Le=[1,73],we=[1,74],De=[1,75],Oe=[1,76],Z=[1,83],U=[1,80],ee=[1,84],te=[1,85],se=[1,86],ie=[1,87],re=[1,88],ne=[1,89],ae=[1,90],le=[1,91],ce=[1,92],Ee=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],Y=[63,64],Me=[1,101],Fe=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],I=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],B=[1,110],Q=[1,106],H=[1,107],K=[1,108],W=[1,109],j=[1,111],oe=[1,116],he=[1,117],ue=[1,114],fe=[1,115],_e={trace:o(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:o(function(i,a,c,s,u,t,me){var l=t.length-1;switch(u){case 4:this.$=t[l].trim(),s.setAccTitle(this.$);break;case 5:case 6:this.$=t[l].trim(),s.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:s.setDirection("TB");break;case 18:s.setDirection("BT");break;case 19:s.setDirection("RL");break;case 20:s.setDirection("LR");break;case 21:s.addRequirement(t[l-3],t[l-4]);break;case 22:s.addRequirement(t[l-5],t[l-6]),s.setClass([t[l-5]],t[l-3]);break;case 23:s.setNewReqId(t[l-2]);break;case 24:s.setNewReqText(t[l-2]);break;case 25:s.setNewReqRisk(t[l-2]);break;case 26:s.setNewReqVerifyMethod(t[l-2]);break;case 29:this.$=s.RequirementType.REQUIREMENT;break;case 30:this.$=s.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=s.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=s.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=s.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=s.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=s.RiskLevel.LOW_RISK;break;case 36:this.$=s.RiskLevel.MED_RISK;break;case 37:this.$=s.RiskLevel.HIGH_RISK;break;case 38:this.$=s.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=s.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=s.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=s.VerifyType.VERIFY_TEST;break;case 42:s.addElement(t[l-3]);break;case 43:s.addElement(t[l-5]),s.setClass([t[l-5]],t[l-3]);break;case 44:s.setNewElementType(t[l-2]);break;case 45:s.setNewElementDocRef(t[l-2]);break;case 48:s.addRelationship(t[l-2],t[l],t[l-4]);break;case 49:s.addRelationship(t[l-2],t[l-4],t[l]);break;case 50:this.$=s.Relationships.CONTAINS;break;case 51:this.$=s.Relationships.COPIES;break;case 52:this.$=s.Relationships.DERIVES;break;case 53:this.$=s.Relationships.SATISFIES;break;case 54:this.$=s.Relationships.VERIFIES;break;case 55:this.$=s.Relationships.REFINES;break;case 56:this.$=s.Relationships.TRACES;break;case 57:this.$=t[l-2],s.defineClass(t[l-1],t[l]);break;case 58:s.setClass(t[l-1],t[l]);break;case 59:s.setClass([t[l-2]],t[l]);break;case 60:case 62:this.$=[t[l]];break;case 61:case 63:this.$=t[l-2].concat([t[l]]);break;case 64:this.$=t[l-2],s.setCssStyle(t[l-1],t[l]);break;case 65:this.$=[t[l]];break;case 66:t[l-2].push(t[l]),this.$=t[l-2];break;case 68:this.$=t[l-1]+t[l];break}},"anonymous"),table:[{3:1,4:2,6:f,9:h,11:r,13:n},{1:[3]},{3:8,4:2,5:[1,7],6:f,9:h,11:r,13:n},{5:[1,9]},{10:[1,10]},{12:[1,11]},e(d,[2,6]),{3:12,4:2,6:f,9:h,11:r,13:n},{1:[2,2]},{4:17,5:k,7:13,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},e(d,[2,4]),e(d,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:k,7:42,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:43,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:44,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:45,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:46,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:47,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:48,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:49,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{4:17,5:k,7:50,8:b,9:h,11:r,13:n,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:g,22:S,23:N,24:q,25:23,33:25,41:A,42:C,43:V,44:v,45:x,46:L,54:w,72:D,74:O,77:M,89:E,90:p},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},e(m,[2,17]),e(m,[2,18]),e(m,[2,19]),e(m,[2,20]),{30:60,33:62,75:$,89:E,90:p},{30:63,33:62,75:$,89:E,90:p},{30:64,33:62,75:$,89:E,90:p},e(X,[2,29]),e(X,[2,30]),e(X,[2,31]),e(X,[2,32]),e(X,[2,33]),e(X,[2,34]),e(Ce,[2,81]),e(Ce,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},e(de,[2,79]),e(de,[2,80]),{27:[1,67],29:[1,68]},e(de,[2,85]),e(de,[2,86]),{62:69,65:Ve,66:ve,67:xe,68:Le,69:we,70:De,71:Oe},{62:77,65:Ve,66:ve,67:xe,68:Le,69:we,70:De,71:Oe},{30:78,33:62,75:$,89:E,90:p},{73:79,75:Z,76:U,78:81,79:82,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce},e(Ee,[2,60]),e(Ee,[2,62]),{73:93,75:Z,76:U,78:81,79:82,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce},{30:94,33:62,75:$,76:U,89:E,90:p},{5:[1,95]},{30:96,33:62,75:$,89:E,90:p},{5:[1,97]},{30:98,33:62,75:$,89:E,90:p},{63:[1,99]},e(Y,[2,50]),e(Y,[2,51]),e(Y,[2,52]),e(Y,[2,53]),e(Y,[2,54]),e(Y,[2,55]),e(Y,[2,56]),{64:[1,100]},e(m,[2,59],{76:U}),e(m,[2,64],{76:Me}),{33:103,75:[1,102],89:E,90:p},e(Fe,[2,65],{79:104,75:Z,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce}),e(I,[2,67]),e(I,[2,69]),e(I,[2,70]),e(I,[2,71]),e(I,[2,72]),e(I,[2,73]),e(I,[2,74]),e(I,[2,75]),e(I,[2,76]),e(I,[2,77]),e(I,[2,78]),e(m,[2,57],{76:Me}),e(m,[2,58],{76:U}),{5:B,28:105,31:Q,34:H,36:K,38:W,40:j},{27:[1,112],76:U},{5:oe,40:he,56:113,57:ue,59:fe},{27:[1,118],76:U},{33:119,89:E,90:p},{33:120,89:E,90:p},{75:Z,78:121,79:82,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce},e(Ee,[2,61]),e(Ee,[2,63]),e(I,[2,68]),e(m,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:B,28:126,31:Q,34:H,36:K,38:W,40:j},e(m,[2,28]),{5:[1,127]},e(m,[2,42]),{32:[1,128]},{32:[1,129]},{5:oe,40:he,56:130,57:ue,59:fe},e(m,[2,47]),{5:[1,131]},e(m,[2,48]),e(m,[2,49]),e(Fe,[2,66],{79:104,75:Z,80:ee,81:te,82:se,83:ie,84:re,85:ne,86:ae,87:le,88:ce}),{33:132,89:E,90:p},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},e(m,[2,27]),{5:B,28:145,31:Q,34:H,36:K,38:W,40:j},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},e(m,[2,46]),{5:oe,40:he,56:152,57:ue,59:fe},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},e(m,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},e(m,[2,43]),{5:B,28:159,31:Q,34:H,36:K,38:W,40:j},{5:B,28:160,31:Q,34:H,36:K,38:W,40:j},{5:B,28:161,31:Q,34:H,36:K,38:W,40:j},{5:B,28:162,31:Q,34:H,36:K,38:W,40:j},{5:oe,40:he,56:163,57:ue,59:fe},{5:oe,40:he,56:164,57:ue,59:fe},e(m,[2,23]),e(m,[2,24]),e(m,[2,25]),e(m,[2,26]),e(m,[2,44]),e(m,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:o(function(i,a){if(a.recoverable)this.trace(i);else{var c=new Error(i);throw c.hash=a,c}},"parseError"),parse:o(function(i){var a=this,c=[0],s=[],u=[null],t=[],me=this.table,l="",be=0,Pe=0,$e=0,at=2,Ue=1,lt=t.slice.call(arguments,1),R=Object.create(this.lexer),G={yy:{}};for(var Se in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Se)&&(G.yy[Se]=this.yy[Se]);R.setInput(i,G.yy),G.yy.lexer=R,G.yy.parser=this,typeof R.yylloc>"u"&&(R.yylloc={});var Ie=R.yylloc;t.push(Ie);var ct=R.options&&R.options.ranges;typeof G.yy.parseError=="function"?this.parseError=G.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ot(_){c.length=c.length-2*_,u.length=u.length-_,t.length=t.length-_}o(ot,"popStack");function Ye(){var _;return _=s.pop()||R.lex()||Ue,typeof _!="number"&&(_ instanceof Array&&(s=_,_=s.pop()),_=a.symbols_[_]||_),_}o(Ye,"lex");for(var y,Te,z,T,Et,Ne,J={},Re,F,Be,ye;;){if(z=c[c.length-1],this.defaultActions[z]?T=this.defaultActions[z]:((y===null||typeof y>"u")&&(y=Ye()),T=me[z]&&me[z][y]),typeof T>"u"||!T.length||!T[0]){var qe="";ye=[];for(Re in me[z])this.terminals_[Re]&&Re>at&&ye.push("'"+this.terminals_[Re]+"'");R.showPosition?qe="Parse error on line "+(be+1)+`: -`+R.showPosition()+` -Expecting `+ye.join(", ")+", got '"+(this.terminals_[y]||y)+"'":qe="Parse error on line "+(be+1)+": Unexpected "+(y==Ue?"end of input":"'"+(this.terminals_[y]||y)+"'"),this.parseError(qe,{text:R.match,token:this.terminals_[y]||y,line:R.yylineno,loc:Ie,expected:ye})}if(T[0]instanceof Array&&T.length>1)throw new Error("Parse Error: multiple actions possible at state: "+z+", token: "+y);switch(T[0]){case 1:c.push(y),u.push(R.yytext),t.push(R.yylloc),c.push(T[1]),y=null,Te?(y=Te,Te=null):(Pe=R.yyleng,l=R.yytext,be=R.yylineno,Ie=R.yylloc,$e>0&&$e--);break;case 2:if(F=this.productions_[T[1]][1],J.$=u[u.length-F],J._$={first_line:t[t.length-(F||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(F||1)].first_column,last_column:t[t.length-1].last_column},ct&&(J._$.range=[t[t.length-(F||1)].range[0],t[t.length-1].range[1]]),Ne=this.performAction.apply(J,[l,Pe,be,G.yy,T[1],u,t].concat(lt)),typeof Ne<"u")return Ne;F&&(c=c.slice(0,-1*F*2),u=u.slice(0,-1*F),t=t.slice(0,-1*F)),c.push(this.productions_[T[1]][0]),u.push(J.$),t.push(J._$),Be=me[c[c.length-2]][c[c.length-1]],c.push(Be);break;case 3:return!0}}return!0},"parse")},nt=(function(){var P={EOF:1,parseError:o(function(a,c){if(this.yy.parser)this.yy.parser.parseError(a,c);else throw new Error(a)},"parseError"),setInput:o(function(i,a){return this.yy=a||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:o(function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var a=i.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},"input"),unput:o(function(i){var a=i.length,c=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var s=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===s.length?this.yylloc.first_column:0)+s[s.length-c.length].length-c[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-a]),this.yyleng=this.yytext.length,this},"unput"),more:o(function(){return this._more=!0,this},"more"),reject:o(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:o(function(i){this.unput(this.match.slice(i))},"less"),pastInput:o(function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:o(function(){var i=this.match;return i.length<20&&(i+=this._input.substr(0,20-i.length)),(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:o(function(){var i=this.pastInput(),a=new Array(i.length+1).join("-");return i+this.upcomingInput()+` -`+a+"^"},"showPosition"),test_match:o(function(i,a){var c,s,u;if(this.options.backtrack_lexer&&(u={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(u.yylloc.range=this.yylloc.range.slice(0))),s=i[0].match(/(?:\r\n?|\n).*/g),s&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+i[0].length},this.yytext+=i[0],this.match+=i[0],this.matches=i,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(i[0].length),this.matched+=i[0],c=this.performAction.call(this,this.yy,this,a,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack){for(var t in u)this[t]=u[t];return!1}return!1},"test_match"),next:o(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var i,a,c,s;this._more||(this.yytext="",this.match="");for(var u=this._currentRules(),t=0;ta[0].length)){if(a=c,s=t,this.options.backtrack_lexer){if(i=this.test_match(c,u[t]),i!==!1)return i;if(this._backtrack){a=!1;continue}else return!1}else if(!this.options.flex)break}return a?(i=this.test_match(a,u[s]),i!==!1?i:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:o(function(){var a=this.next();return a||this.lex()},"lex"),begin:o(function(a){this.conditionStack.push(a)},"begin"),popState:o(function(){var a=this.conditionStack.length-1;return a>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:o(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:o(function(a){return a=this.conditionStack.length-1-Math.abs(a||0),a>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:o(function(a){this.begin(a)},"pushState"),stateStackSize:o(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:o(function(a,c,s,u){var t=u;switch(s){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return c.yytext=c.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return P})();_e.lexer=nt;function pe(){this.yy={}}return o(pe,"Parser"),pe.prototype=_e,_e.Parser=pe,new pe})();Ae.parser=Ae;var ht=Ae,ut=class{constructor(){this.relations=[],this.latestRequirement=this.getInitialRequirement(),this.requirements=new Map,this.latestElement=this.getInitialElement(),this.elements=new Map,this.classes=new Map,this.direction="TB",this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},this.setAccTitle=We,this.getAccTitle=je,this.setAccDescription=Ge,this.getAccDescription=ze,this.setDiagramTitle=Xe,this.getDiagramTitle=Je,this.getConfig=o(()=>ge().requirement,"getConfig"),this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{o(this,"RequirementDB")}getDirection(){return this.direction}setDirection(e){this.direction=e}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(e,f){return this.requirements.has(e)||this.requirements.set(e,{name:e,type:f,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]}),this.resetLatestRequirement(),this.requirements.get(e)}getRequirements(){return this.requirements}setNewReqId(e){this.latestRequirement!==void 0&&(this.latestRequirement.requirementId=e)}setNewReqText(e){this.latestRequirement!==void 0&&(this.latestRequirement.text=e)}setNewReqRisk(e){this.latestRequirement!==void 0&&(this.latestRequirement.risk=e)}setNewReqVerifyMethod(e){this.latestRequirement!==void 0&&(this.latestRequirement.verifyMethod=e)}addElement(e){return this.elements.has(e)||(this.elements.set(e,{name:e,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),ke.info("Added new element: ",e)),this.resetLatestElement(),this.elements.get(e)}getElements(){return this.elements}setNewElementType(e){this.latestElement!==void 0&&(this.latestElement.type=e)}setNewElementDocRef(e){this.latestElement!==void 0&&(this.latestElement.docRef=e)}addRelationship(e,f,h){this.relations.push({type:e,src:f,dst:h})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,Ke()}setCssStyle(e,f){for(let h of e){let r=this.requirements.get(h)??this.elements.get(h);if(!f||!r)return;for(let n of f)n.includes(",")?r.cssStyles.push(...n.split(",")):r.cssStyles.push(n)}}setClass(e,f){for(let h of e){let r=this.requirements.get(h)??this.elements.get(h);if(r)for(let n of f){r.classes.push(n);let d=this.classes.get(n)?.styles;d&&r.cssStyles.push(...d)}}}defineClass(e,f){for(let h of e){let r=this.classes.get(h);r===void 0&&(r={id:h,styles:[],textStyles:[]},this.classes.set(h,r)),f&&f.forEach(function(n){if(/color/.exec(n)){let d=n.replace("fill","bgFill");r.textStyles.push(d)}r.styles.push(n)}),this.requirements.forEach(n=>{n.classes.includes(h)&&n.cssStyles.push(...f.flatMap(d=>d.split(",")))}),this.elements.forEach(n=>{n.classes.includes(h)&&n.cssStyles.push(...f.flatMap(d=>d.split(",")))})}}getClasses(){return this.classes}getData(){let e=ge(),f=[],h=[];for(let r of this.requirements.values()){let n=r;n.id=r.name,n.cssStyles=r.cssStyles,n.cssClasses=r.classes.join(" "),n.shape="requirementBox",n.look=e.look,f.push(n)}for(let r of this.elements.values()){let n=r;n.shape="requirementBox",n.look=e.look,n.id=r.name,n.cssStyles=r.cssStyles,n.cssClasses=r.classes.join(" "),f.push(n)}for(let r of this.relations){let n=0,d=r.type===this.Relationships.CONTAINS,k={id:`${r.src}-${r.dst}-${n}`,start:this.requirements.get(r.src)?.name??this.elements.get(r.src)?.name,end:this.requirements.get(r.dst)?.name??this.elements.get(r.dst)?.name,label:`\xAB${r.type}\xBB`,classes:"relationshipLine",style:["fill:none",d?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:d?"normal":"dashed",arrowTypeStart:d?"requirement_contains":"",arrowTypeEnd:d?"":"requirement_arrow",look:e.look,labelType:"markdown"};h.push(k),n++}return{nodes:f,edges:h,other:{},config:e,direction:this.getDirection()}}},ft=o(e=>` - - marker { - fill: ${e.relationColor}; - stroke: ${e.relationColor}; - } - - marker.cross { - stroke: ${e.lineColor}; - } - - svg { - font-family: ${e.fontFamily}; - font-size: ${e.fontSize}; - } - - .reqBox { - fill: ${e.requirementBackground}; - fill-opacity: 1.0; - stroke: ${e.requirementBorderColor}; - stroke-width: ${e.requirementBorderSize}; - } - - .reqTitle, .reqLabel{ - fill: ${e.requirementTextColor}; - } - .reqLabelBox { - fill: ${e.relationLabelBackground}; - fill-opacity: 1.0; - } - - .req-title-line { - stroke: ${e.requirementBorderColor}; - stroke-width: ${e.requirementBorderSize}; - } - .relationshipLine { - stroke: ${e.relationColor}; - stroke-width: 1; - } - .relationshipLabel { - fill: ${e.relationLabelColor}; - } - .edgeLabel { - background-color: ${e.edgeLabelBackground}; - } - .edgeLabel .label rect { - fill: ${e.edgeLabelBackground}; - } - .edgeLabel .label text { - fill: ${e.relationLabelColor}; - } - .divider { - stroke: ${e.nodeBorder}; - stroke-width: 1; - } - .label { - font-family: ${e.fontFamily}; - color: ${e.nodeTextColor||e.textColor}; - } - .label text,span { - fill: ${e.nodeTextColor||e.textColor}; - color: ${e.nodeTextColor||e.textColor}; - } - .labelBkg { - background-color: ${e.edgeLabelBackground}; - } - -`,"getStyles"),mt=ft,rt={};He(rt,{draw:()=>dt});var dt=o(function(e,f,h,r){return Qe(this,null,function*(){ke.info("REF0:"),ke.info("Drawing requirement diagram (unified)",f);let{securityLevel:n,state:d,layout:k}=ge(),b=r.db.getData(),g=st(f,n);b.type=r.type,b.layoutAlgorithm=tt(k),b.nodeSpacing=d?.nodeSpacing??50,b.rankSpacing=d?.rankSpacing??50,b.markers=["requirement_contains","requirement_arrow"],b.diagramId=f,yield et(b,g);let S=8;Ze.insertTitle(g,"requirementDiagramTitleText",d?.titleTopMargin??25,r.db.getDiagramTitle()),it(g,S,"requirementDiagram",d?.useMaxWidth??!0)})},"draw"),At={parser:ht,get db(){return new ut},renderer:rt,styles:mt};export{At as diagram}; diff --git a/src/google/adk/cli/browser/chunk-SMT27N2F.js b/src/google/adk/cli/browser/chunk-SMT27N2F.js deleted file mode 100644 index 8fcc01c426..0000000000 --- a/src/google/adk/cli/browser/chunk-SMT27N2F.js +++ /dev/null @@ -1 +0,0 @@ -import{a as e,b as r}from"./chunk-NQKWI5EB.js";import"./chunk-NALL4A3P.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";export{e as PacketModule,r as createPacketServices}; diff --git a/src/google/adk/cli/browser/chunk-SRCUB3EX.js b/src/google/adk/cli/browser/chunk-SRCUB3EX.js new file mode 100644 index 0000000000..73e7861a6e --- /dev/null +++ b/src/google/adk/cli/browser/chunk-SRCUB3EX.js @@ -0,0 +1,3 @@ +import{f as t}from"./chunk-7ZGKZ6HH.js";import{j as i}from"./chunk-RMXJBC7V.js";var s={},m={info:t(()=>i(null,null,function*(){let{createInfoServices:e}=yield import("./chunk-4ZQ24APY.js"),r=e().Info.parser.LangiumParser;s.info=r}),"info"),packet:t(()=>i(null,null,function*(){let{createPacketServices:e}=yield import("./chunk-UMUHBNGZ.js"),r=e().Packet.parser.LangiumParser;s.packet=r}),"packet"),pie:t(()=>i(null,null,function*(){let{createPieServices:e}=yield import("./chunk-MP6JNF5U.js"),r=e().Pie.parser.LangiumParser;s.pie=r}),"pie"),treeView:t(()=>i(null,null,function*(){let{createTreeViewServices:e}=yield import("./chunk-GBI7W3TG.js"),r=e().TreeView.parser.LangiumParser;s.treeView=r}),"treeView"),architecture:t(()=>i(null,null,function*(){let{createArchitectureServices:e}=yield import("./chunk-2RGIIJSP.js"),r=e().Architecture.parser.LangiumParser;s.architecture=r}),"architecture"),gitGraph:t(()=>i(null,null,function*(){let{createGitGraphServices:e}=yield import("./chunk-OUY2PG7F.js"),r=e().GitGraph.parser.LangiumParser;s.gitGraph=r}),"gitGraph"),radar:t(()=>i(null,null,function*(){let{createRadarServices:e}=yield import("./chunk-GQUNXJBP.js"),r=e().Radar.parser.LangiumParser;s.radar=r}),"radar"),treemap:t(()=>i(null,null,function*(){let{createTreemapServices:e}=yield import("./chunk-7CNYU4WA.js"),r=e().Treemap.parser.LangiumParser;s.treemap=r}),"treemap"),wardley:t(()=>i(null,null,function*(){let{createWardleyServices:e}=yield import("./chunk-DGO6DRJY.js"),r=e().Wardley.parser.LangiumParser;s.wardley=r}),"wardley")};function d(e,r){return i(this,null,function*(){let c=m[e];if(!c)throw new Error(`Unknown diagram type: ${e}`);s[e]||(yield c());let o=s[e].parse(r);if(o.lexerErrors.length>0||o.parserErrors.length>0)throw new p(o);return o.value})}t(d,"parse");var p=class extends Error{constructor(e){let r=e.lexerErrors.map(a=>{let o=a.line!==void 0&&!isNaN(a.line)?a.line:"?",n=a.column!==void 0&&!isNaN(a.column)?a.column:"?";return`Lexer error on line ${o}, column ${n}: ${a.message}`}).join(` +`),c=e.parserErrors.map(a=>{let o=a.token.startLine!==void 0&&!isNaN(a.token.startLine)?a.token.startLine:"?",n=a.token.startColumn!==void 0&&!isNaN(a.token.startColumn)?a.token.startColumn:"?";return`Parse error on line ${o}, column ${n}: ${a.message}`}).join(` +`);super(`Parsing failed: ${r} ${c}`),this.result=e}static{t(this,"MermaidParseError")}};export{d as a}; diff --git a/src/google/adk/cli/browser/chunk-T2UY75BD.js b/src/google/adk/cli/browser/chunk-T2UY75BD.js deleted file mode 100644 index 63a477b5e3..0000000000 --- a/src/google/adk/cli/browser/chunk-T2UY75BD.js +++ /dev/null @@ -1,145 +0,0 @@ -import{a as tr}from"./chunk-4R6SYGKS.js";import{a as $e,b as je,d as Mt,e as Bt,f as lt,g as Vt}from"./chunk-NMKTPNXE.js";import{a as Je,b as Qe}from"./chunk-ZMOC4H7T.js";import{a as Ze,k as te,m as F}from"./chunk-WBLSVR3V.js";import{a as Ir}from"./chunk-GP6TCC26.js";import{A as Ct,G as Nt,H as We,J as U,K as Rt,L as $t,M as S,N as Ke,R as Fe,S as jt,T as qe,U as He,V as ze,W as Ue,X as Ge,Y as j,Z as Xe,o as Ye}from"./chunk-QFMJV7VH.js";import{a as mt,g as _,i as Q}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{a as Be,b as Ve,h as xr,j as $}from"./chunk-RMXJBC7V.js";var ae=xr(Ir(),1);var ee=(function(){var e=_(function(Et,y,N,m){for(N=N||{},m=Et.length;m--;N[Et[m]]=y);return N},"o"),t=[1,2],a=[1,3],r=[1,4],i=[2,4],n=[1,9],c=[1,11],l=[1,12],h=[1,14],s=[1,15],E=[1,17],p=[1,18],f=[1,19],u=[1,25],O=[1,26],b=[1,27],L=[1,28],w=[1,29],A=[1,30],k=[1,31],D=[1,32],M=[1,33],W=[1,34],K=[1,35],H=[1,36],G=[1,37],X=[1,38],z=[1,39],v=[1,40],tt=[1,42],Z=[1,43],et=[1,44],st=[1,45],at=[1,46],R=[1,47],I=[1,4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,48,49,50,51,53,54,56,61,62,63,64,73],ot=[1,74],ct=[1,80],C=[1,81],ie=[1,82],ne=[1,83],oe=[1,84],ce=[1,85],le=[1,86],he=[1,87],de=[1,88],Te=[1,89],Ee=[1,90],pe=[1,91],ue=[1,92],_e=[1,93],fe=[1,94],ge=[1,95],xe=[1,96],Ie=[1,97],be=[1,98],Re=[1,99],Oe=[1,100],ye=[1,101],Le=[1,102],Se=[1,103],me=[1,104],Ne=[1,105],Ae=[2,78],Lt=[4,5,17,51,53,54],wt=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,51,53,54,56,61,62,63,64,73],we=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,50,51,53,54,56,61,62,63,64,73],Ht=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,49,51,53,54,56,61,62,63,64,73],Pe=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,48,51,53,54,56,61,62,63,64,73],zt=[5,52],B=[70,71,72,73],it=[1,151],Ut={trace:_(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,INVALID:10,box_section:11,box_line:12,participant_statement:13,create:14,box:15,restOfLine:16,end:17,signal:18,autonumber:19,NUM:20,off:21,activate:22,actor:23,deactivate:24,note_statement:25,links_statement:26,link_statement:27,properties_statement:28,details_statement:29,title:30,legacy_title:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,loop:37,rect:38,opt:39,alt:40,else_sections:41,par:42,par_sections:43,par_over:44,critical:45,option_sections:46,break:47,option:48,and:49,else:50,participant:51,AS:52,participant_actor:53,destroy:54,actor_with_config:55,note:56,placement:57,text2:58,over:59,actor_pair:60,links:61,link:62,properties:63,details:64,spaceList:65,",":66,left_of:67,right_of:68,signaltype:69,"+":70,"-":71,"()":72,ACTOR:73,config_object:74,CONFIG_START:75,CONFIG_CONTENT:76,CONFIG_END:77,SOLID_OPEN_ARROW:78,DOTTED_OPEN_ARROW:79,SOLID_ARROW:80,SOLID_ARROW_TOP:81,SOLID_ARROW_BOTTOM:82,STICK_ARROW_TOP:83,STICK_ARROW_BOTTOM:84,SOLID_ARROW_TOP_DOTTED:85,SOLID_ARROW_BOTTOM_DOTTED:86,STICK_ARROW_TOP_DOTTED:87,STICK_ARROW_BOTTOM_DOTTED:88,SOLID_ARROW_TOP_REVERSE:89,SOLID_ARROW_BOTTOM_REVERSE:90,STICK_ARROW_TOP_REVERSE:91,STICK_ARROW_BOTTOM_REVERSE:92,SOLID_ARROW_TOP_REVERSE_DOTTED:93,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:94,STICK_ARROW_TOP_REVERSE_DOTTED:95,STICK_ARROW_BOTTOM_REVERSE_DOTTED:96,BIDIRECTIONAL_SOLID_ARROW:97,DOTTED_ARROW:98,BIDIRECTIONAL_DOTTED_ARROW:99,SOLID_CROSS:100,DOTTED_CROSS:101,SOLID_POINT:102,DOTTED_POINT:103,TXT:104,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",10:"INVALID",14:"create",15:"box",16:"restOfLine",17:"end",19:"autonumber",20:"NUM",21:"off",22:"activate",24:"deactivate",30:"title",31:"legacy_title",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"loop",38:"rect",39:"opt",40:"alt",42:"par",44:"par_over",45:"critical",47:"break",48:"option",49:"and",50:"else",51:"participant",52:"AS",53:"participant_actor",54:"destroy",56:"note",59:"over",61:"links",62:"link",63:"properties",64:"details",66:",",67:"left_of",68:"right_of",70:"+",71:"-",72:"()",73:"ACTOR",75:"CONFIG_START",76:"CONFIG_CONTENT",77:"CONFIG_END",78:"SOLID_OPEN_ARROW",79:"DOTTED_OPEN_ARROW",80:"SOLID_ARROW",81:"SOLID_ARROW_TOP",82:"SOLID_ARROW_BOTTOM",83:"STICK_ARROW_TOP",84:"STICK_ARROW_BOTTOM",85:"SOLID_ARROW_TOP_DOTTED",86:"SOLID_ARROW_BOTTOM_DOTTED",87:"STICK_ARROW_TOP_DOTTED",88:"STICK_ARROW_BOTTOM_DOTTED",89:"SOLID_ARROW_TOP_REVERSE",90:"SOLID_ARROW_BOTTOM_REVERSE",91:"STICK_ARROW_TOP_REVERSE",92:"STICK_ARROW_BOTTOM_REVERSE",93:"SOLID_ARROW_TOP_REVERSE_DOTTED",94:"SOLID_ARROW_BOTTOM_REVERSE_DOTTED",95:"STICK_ARROW_TOP_REVERSE_DOTTED",96:"STICK_ARROW_BOTTOM_REVERSE_DOTTED",97:"BIDIRECTIONAL_SOLID_ARROW",98:"DOTTED_ARROW",99:"BIDIRECTIONAL_DOTTED_ARROW",100:"SOLID_CROSS",101:"DOTTED_CROSS",102:"SOLID_POINT",103:"DOTTED_POINT",104:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[8,1],[11,0],[11,2],[12,2],[12,1],[12,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[46,1],[46,4],[43,1],[43,4],[41,1],[41,4],[13,5],[13,3],[13,5],[13,3],[13,3],[13,5],[13,3],[13,5],[13,3],[25,4],[25,4],[26,3],[27,3],[28,3],[29,3],[65,2],[65,1],[60,3],[60,1],[57,1],[57,1],[18,5],[18,5],[18,5],[18,5],[18,6],[18,4],[55,2],[74,3],[23,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[58,1]],performAction:_(function(y,N,m,g,V,o,St){var T=o.length-1;switch(V){case 3:return g.apply(o[T]),o[T];break;case 4:case 10:this.$=[];break;case 5:case 11:o[T-1].push(o[T]),this.$=o[T-1];break;case 6:case 7:case 12:case 13:this.$=o[T];break;case 8:case 9:case 14:this.$=[];break;case 16:o[T].type="createParticipant",this.$=o[T];break;case 17:o[T-1].unshift({type:"boxStart",boxData:g.parseBoxData(o[T-2])}),o[T-1].push({type:"boxEnd",boxText:o[T-2]}),this.$=o[T-1];break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(o[T-2]),sequenceIndexStep:Number(o[T-1]),sequenceVisible:!0,signalType:g.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceIndex:Number(o[T-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:g.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:g.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:g.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"activeStart",signalType:g.LINETYPE.ACTIVE_START,actor:o[T-1].actor};break;case 24:this.$={type:"activeEnd",signalType:g.LINETYPE.ACTIVE_END,actor:o[T-1].actor};break;case 30:g.setDiagramTitle(o[T].substring(6)),this.$=o[T].substring(6);break;case 31:g.setDiagramTitle(o[T].substring(7)),this.$=o[T].substring(7);break;case 32:this.$=o[T].trim(),g.setAccTitle(this.$);break;case 33:case 34:this.$=o[T].trim(),g.setAccDescription(this.$);break;case 35:o[T-1].unshift({type:"loopStart",loopText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.LOOP_START}),o[T-1].push({type:"loopEnd",loopText:o[T-2],signalType:g.LINETYPE.LOOP_END}),this.$=o[T-1];break;case 36:o[T-1].unshift({type:"rectStart",color:g.parseMessage(o[T-2]),signalType:g.LINETYPE.RECT_START}),o[T-1].push({type:"rectEnd",color:g.parseMessage(o[T-2]),signalType:g.LINETYPE.RECT_END}),this.$=o[T-1];break;case 37:o[T-1].unshift({type:"optStart",optText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.OPT_START}),o[T-1].push({type:"optEnd",optText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.OPT_END}),this.$=o[T-1];break;case 38:o[T-1].unshift({type:"altStart",altText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.ALT_START}),o[T-1].push({type:"altEnd",signalType:g.LINETYPE.ALT_END}),this.$=o[T-1];break;case 39:o[T-1].unshift({type:"parStart",parText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.PAR_START}),o[T-1].push({type:"parEnd",signalType:g.LINETYPE.PAR_END}),this.$=o[T-1];break;case 40:o[T-1].unshift({type:"parStart",parText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.PAR_OVER_START}),o[T-1].push({type:"parEnd",signalType:g.LINETYPE.PAR_END}),this.$=o[T-1];break;case 41:o[T-1].unshift({type:"criticalStart",criticalText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.CRITICAL_START}),o[T-1].push({type:"criticalEnd",signalType:g.LINETYPE.CRITICAL_END}),this.$=o[T-1];break;case 42:o[T-1].unshift({type:"breakStart",breakText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.BREAK_START}),o[T-1].push({type:"breakEnd",optText:g.parseMessage(o[T-2]),signalType:g.LINETYPE.BREAK_END}),this.$=o[T-1];break;case 44:this.$=o[T-3].concat([{type:"option",optionText:g.parseMessage(o[T-1]),signalType:g.LINETYPE.CRITICAL_OPTION},o[T]]);break;case 46:this.$=o[T-3].concat([{type:"and",parText:g.parseMessage(o[T-1]),signalType:g.LINETYPE.PAR_AND},o[T]]);break;case 48:this.$=o[T-3].concat([{type:"else",altText:g.parseMessage(o[T-1]),signalType:g.LINETYPE.ALT_ELSE},o[T]]);break;case 49:o[T-3].draw="participant",o[T-3].type="addParticipant",o[T-3].description=g.parseMessage(o[T-1]),this.$=o[T-3];break;case 50:o[T-1].draw="participant",o[T-1].type="addParticipant",this.$=o[T-1];break;case 51:o[T-3].draw="actor",o[T-3].type="addParticipant",o[T-3].description=g.parseMessage(o[T-1]),this.$=o[T-3];break;case 52:case 57:o[T-1].draw="actor",o[T-1].type="addParticipant",this.$=o[T-1];break;case 53:o[T-1].type="destroyParticipant",this.$=o[T-1];break;case 54:o[T-3].draw="participant",o[T-3].type="addParticipant",o[T-3].description=g.parseMessage(o[T-1]),this.$=o[T-3];break;case 55:o[T-1].draw="participant",o[T-1].type="addParticipant",this.$=o[T-1];break;case 56:o[T-3].draw="actor",o[T-3].type="addParticipant",o[T-3].description=g.parseMessage(o[T-1]),this.$=o[T-3];break;case 58:this.$=[o[T-1],{type:"addNote",placement:o[T-2],actor:o[T-1].actor,text:o[T]}];break;case 59:o[T-2]=[].concat(o[T-1],o[T-1]).slice(0,2),o[T-2][0]=o[T-2][0].actor,o[T-2][1]=o[T-2][1].actor,this.$=[o[T-1],{type:"addNote",placement:g.PLACEMENT.OVER,actor:o[T-2].slice(0,2),text:o[T]}];break;case 60:this.$=[o[T-1],{type:"addLinks",actor:o[T-1].actor,text:o[T]}];break;case 61:this.$=[o[T-1],{type:"addALink",actor:o[T-1].actor,text:o[T]}];break;case 62:this.$=[o[T-1],{type:"addProperties",actor:o[T-1].actor,text:o[T]}];break;case 63:this.$=[o[T-1],{type:"addDetails",actor:o[T-1].actor,text:o[T]}];break;case 66:this.$=[o[T-2],o[T]];break;case 67:this.$=o[T];break;case 68:this.$=g.PLACEMENT.LEFTOF;break;case 69:this.$=g.PLACEMENT.RIGHTOF;break;case 70:this.$=[o[T-4],o[T-1],{type:"addMessage",from:o[T-4].actor,to:o[T-1].actor,signalType:o[T-3],msg:o[T],activate:!0},{type:"activeStart",signalType:g.LINETYPE.ACTIVE_START,actor:o[T-1].actor}];break;case 71:this.$=[o[T-4],o[T-1],{type:"addMessage",from:o[T-4].actor,to:o[T-1].actor,signalType:o[T-3],msg:o[T]},{type:"activeEnd",signalType:g.LINETYPE.ACTIVE_END,actor:o[T-4].actor}];break;case 72:this.$=[o[T-4],o[T-1],{type:"addMessage",from:o[T-4].actor,to:o[T-1].actor,signalType:o[T-3],msg:o[T],activate:!0,centralConnection:g.LINETYPE.CENTRAL_CONNECTION},{type:"centralConnection",signalType:g.LINETYPE.CENTRAL_CONNECTION,actor:o[T-1].actor}];break;case 73:this.$=[o[T-4],o[T-1],{type:"addMessage",from:o[T-4].actor,to:o[T-1].actor,signalType:o[T-2],msg:o[T],activate:!1,centralConnection:g.LINETYPE.CENTRAL_CONNECTION_REVERSE},{type:"centralConnectionReverse",signalType:g.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:o[T-4].actor}];break;case 74:this.$=[o[T-5],o[T-1],{type:"addMessage",from:o[T-5].actor,to:o[T-1].actor,signalType:o[T-3],msg:o[T],activate:!0,centralConnection:g.LINETYPE.CENTRAL_CONNECTION_DUAL},{type:"centralConnection",signalType:g.LINETYPE.CENTRAL_CONNECTION,actor:o[T-1].actor},{type:"centralConnectionReverse",signalType:g.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:o[T-5].actor}];break;case 75:this.$=[o[T-3],o[T-1],{type:"addMessage",from:o[T-3].actor,to:o[T-1].actor,signalType:o[T-2],msg:o[T]}];break;case 76:this.$={type:"addParticipant",actor:o[T-1],config:o[T]};break;case 77:this.$=o[T-1].trim();break;case 78:this.$={type:"addParticipant",actor:o[T]};break;case 79:this.$=g.LINETYPE.SOLID_OPEN;break;case 80:this.$=g.LINETYPE.DOTTED_OPEN;break;case 81:this.$=g.LINETYPE.SOLID;break;case 82:this.$=g.LINETYPE.SOLID_TOP;break;case 83:this.$=g.LINETYPE.SOLID_BOTTOM;break;case 84:this.$=g.LINETYPE.STICK_TOP;break;case 85:this.$=g.LINETYPE.STICK_BOTTOM;break;case 86:this.$=g.LINETYPE.SOLID_TOP_DOTTED;break;case 87:this.$=g.LINETYPE.SOLID_BOTTOM_DOTTED;break;case 88:this.$=g.LINETYPE.STICK_TOP_DOTTED;break;case 89:this.$=g.LINETYPE.STICK_BOTTOM_DOTTED;break;case 90:this.$=g.LINETYPE.SOLID_ARROW_TOP_REVERSE;break;case 91:this.$=g.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE;break;case 92:this.$=g.LINETYPE.STICK_ARROW_TOP_REVERSE;break;case 93:this.$=g.LINETYPE.STICK_ARROW_BOTTOM_REVERSE;break;case 94:this.$=g.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED;break;case 95:this.$=g.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED;break;case 96:this.$=g.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED;break;case 97:this.$=g.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED;break;case 98:this.$=g.LINETYPE.BIDIRECTIONAL_SOLID;break;case 99:this.$=g.LINETYPE.DOTTED;break;case 100:this.$=g.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 101:this.$=g.LINETYPE.SOLID_CROSS;break;case 102:this.$=g.LINETYPE.DOTTED_CROSS;break;case 103:this.$=g.LINETYPE.SOLID_POINT;break;case 104:this.$=g.LINETYPE.DOTTED_POINT;break;case 105:this.$=g.parseMessage(o[T].trim().substring(1));break}},"anonymous"),table:[{3:1,4:t,5:a,6:r},{1:[3]},{3:5,4:t,5:a,6:r},{3:6,4:t,5:a,6:r},e([1,4,5,10,14,15,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,51,53,54,56,61,62,63,64,73],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},e(I,[2,5]),{9:48,13:13,14:h,15:s,18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},e(I,[2,7]),e(I,[2,8]),e(I,[2,9]),e(I,[2,15]),{13:49,51:X,53:z,54:v},{16:[1,50]},{5:[1,51]},{5:[1,54],20:[1,52],21:[1,53]},{23:55,73:R},{23:56,73:R},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},{5:[1,61]},e(I,[2,30]),e(I,[2,31]),{33:[1,62]},{35:[1,63]},e(I,[2,34]),{16:[1,64]},{16:[1,65]},{16:[1,66]},{16:[1,67]},{16:[1,68]},{16:[1,69]},{16:[1,70]},{16:[1,71]},{23:72,55:73,73:ot},{23:75,55:76,73:ot},{23:77,73:R},{69:78,72:[1,79],78:ct,79:C,80:ie,81:ne,82:oe,83:ce,84:le,85:he,86:de,87:Te,88:Ee,89:pe,90:ue,91:_e,92:fe,93:ge,94:xe,95:Ie,96:be,97:Re,98:Oe,99:ye,100:Le,101:Se,102:me,103:Ne},{57:106,59:[1,107],67:[1,108],68:[1,109]},{23:110,73:R},{23:111,73:R},{23:112,73:R},{23:113,73:R},e([5,66,72,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],Ae),e(I,[2,6]),e(I,[2,16]),e(Lt,[2,10],{11:114}),e(I,[2,18]),{5:[1,116],20:[1,115]},{5:[1,117]},e(I,[2,22]),{5:[1,118]},{5:[1,119]},e(I,[2,25]),e(I,[2,26]),e(I,[2,27]),e(I,[2,28]),e(I,[2,29]),e(I,[2,32]),e(I,[2,33]),e(wt,i,{7:120}),e(wt,i,{7:121}),e(wt,i,{7:122}),e(we,i,{41:123,7:124}),e(Ht,i,{43:125,7:126}),e(Ht,i,{7:126,43:127}),e(Pe,i,{46:128,7:129}),e(wt,i,{7:130}),{5:[1,132],52:[1,131]},{5:[1,134],52:[1,133]},e(zt,Ae,{74:135,75:[1,136]}),{5:[1,138],52:[1,137]},{5:[1,140],52:[1,139]},{5:[1,141]},{23:145,70:[1,142],71:[1,143],72:[1,144],73:R},{69:146,78:ct,79:C,80:ie,81:ne,82:oe,83:ce,84:le,85:he,86:de,87:Te,88:Ee,89:pe,90:ue,91:_e,92:fe,93:ge,94:xe,95:Ie,96:be,97:Re,98:Oe,99:ye,100:Le,101:Se,102:me,103:Ne},e(B,[2,79]),e(B,[2,80]),e(B,[2,81]),e(B,[2,82]),e(B,[2,83]),e(B,[2,84]),e(B,[2,85]),e(B,[2,86]),e(B,[2,87]),e(B,[2,88]),e(B,[2,89]),e(B,[2,90]),e(B,[2,91]),e(B,[2,92]),e(B,[2,93]),e(B,[2,94]),e(B,[2,95]),e(B,[2,96]),e(B,[2,97]),e(B,[2,98]),e(B,[2,99]),e(B,[2,100]),e(B,[2,101]),e(B,[2,102]),e(B,[2,103]),e(B,[2,104]),{23:147,73:R},{23:149,60:148,73:R},{73:[2,68]},{73:[2,69]},{58:150,104:it},{58:152,104:it},{58:153,104:it},{58:154,104:it},{4:[1,157],5:[1,159],12:156,13:158,17:[1,155],51:X,53:z,54:v},{5:[1,160]},e(I,[2,20]),e(I,[2,21]),e(I,[2,23]),e(I,[2,24]),{4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,17:[1,161],18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},{4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,17:[1,162],18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},{4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,17:[1,163],18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},{17:[1,164]},{4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,17:[2,47],18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,50:[1,165],51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},{17:[1,166]},{4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,17:[2,45],18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,49:[1,167],51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},{17:[1,168]},{17:[1,169]},{4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,17:[2,43],18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,48:[1,170],51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},{4:n,5:c,8:8,9:10,10:l,13:13,14:h,15:s,17:[1,171],18:16,19:E,22:p,23:41,24:f,25:20,26:21,27:22,28:23,29:24,30:u,31:O,32:b,34:L,36:w,37:A,38:k,39:D,40:M,42:W,44:K,45:H,47:G,51:X,53:z,54:v,56:tt,61:Z,62:et,63:st,64:at,73:R},{16:[1,172]},e(I,[2,50]),{16:[1,173]},e(I,[2,55]),e(zt,[2,76]),{76:[1,174]},{16:[1,175]},e(I,[2,52]),{16:[1,176]},e(I,[2,57]),e(I,[2,53]),{23:177,73:R},{23:178,73:R},{23:179,73:R},{58:180,104:it},{23:181,72:[1,182],73:R},{58:183,104:it},{58:184,104:it},{66:[1,185],104:[2,67]},{5:[2,60]},{5:[2,105]},{5:[2,61]},{5:[2,62]},{5:[2,63]},e(I,[2,17]),e(Lt,[2,11]),{13:186,51:X,53:z,54:v},e(Lt,[2,13]),e(Lt,[2,14]),e(I,[2,19]),e(I,[2,35]),e(I,[2,36]),e(I,[2,37]),e(I,[2,38]),{16:[1,187]},e(I,[2,39]),{16:[1,188]},e(I,[2,40]),e(I,[2,41]),{16:[1,189]},e(I,[2,42]),{5:[1,190]},{5:[1,191]},{77:[1,192]},{5:[1,193]},{5:[1,194]},{58:195,104:it},{58:196,104:it},{58:197,104:it},{5:[2,75]},{58:198,104:it},{23:199,73:R},{5:[2,58]},{5:[2,59]},{23:200,73:R},e(Lt,[2,12]),e(we,i,{7:124,41:201}),e(Ht,i,{7:126,43:202}),e(Pe,i,{7:129,46:203}),e(I,[2,49]),e(I,[2,54]),e(zt,[2,77]),e(I,[2,51]),e(I,[2,56]),{5:[2,70]},{5:[2,71]},{5:[2,72]},{5:[2,73]},{58:204,104:it},{104:[2,66]},{17:[2,48]},{17:[2,46]},{17:[2,44]},{5:[2,74]}],defaultActions:{5:[2,1],6:[2,2],108:[2,68],109:[2,69],150:[2,60],151:[2,105],152:[2,61],153:[2,62],154:[2,63],180:[2,75],183:[2,58],184:[2,59],195:[2,70],196:[2,71],197:[2,72],198:[2,73],200:[2,66],201:[2,48],202:[2,46],203:[2,44],204:[2,74]},parseError:_(function(y,N){if(N.recoverable)this.trace(y);else{var m=new Error(y);throw m.hash=N,m}},"parseError"),parse:_(function(y){var N=this,m=[0],g=[],V=[null],o=[],St=this.table,T="",kt=0,ke=0,De=0,ur=2,ve=1,_r=o.slice.call(arguments,1),q=Object.create(this.lexer),_t={yy:{}};for(var Gt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Gt)&&(_t.yy[Gt]=this.yy[Gt]);q.setInput(y,_t.yy),_t.yy.lexer=q,_t.yy.parser=this,typeof q.yylloc>"u"&&(q.yylloc={});var Xt=q.yylloc;o.push(Xt);var fr=q.options&&q.options.ranges;typeof _t.yy.parseError=="function"?this.parseError=_t.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gr(rt){m.length=m.length-2*rt,V.length=V.length-rt,o.length=o.length-rt}_(gr,"popStack");function Ce(){var rt;return rt=g.pop()||q.lex()||ve,typeof rt!="number"&&(rt instanceof Array&&(g=rt,rt=g.pop()),rt=N.symbols_[rt]||rt),rt}_(Ce,"lex");for(var J,Jt,ft,nt,us,Qt,bt={},Dt,dt,Me,vt;;){if(ft=m[m.length-1],this.defaultActions[ft]?nt=this.defaultActions[ft]:((J===null||typeof J>"u")&&(J=Ce()),nt=St[ft]&&St[ft][J]),typeof nt>"u"||!nt.length||!nt[0]){var Zt="";vt=[];for(Dt in St[ft])this.terminals_[Dt]&&Dt>ur&&vt.push("'"+this.terminals_[Dt]+"'");q.showPosition?Zt="Parse error on line "+(kt+1)+`: -`+q.showPosition()+` -Expecting `+vt.join(", ")+", got '"+(this.terminals_[J]||J)+"'":Zt="Parse error on line "+(kt+1)+": Unexpected "+(J==ve?"end of input":"'"+(this.terminals_[J]||J)+"'"),this.parseError(Zt,{text:q.match,token:this.terminals_[J]||J,line:q.yylineno,loc:Xt,expected:vt})}if(nt[0]instanceof Array&&nt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+ft+", token: "+J);switch(nt[0]){case 1:m.push(J),V.push(q.yytext),o.push(q.yylloc),m.push(nt[1]),J=null,Jt?(J=Jt,Jt=null):(ke=q.yyleng,T=q.yytext,kt=q.yylineno,Xt=q.yylloc,De>0&&De--);break;case 2:if(dt=this.productions_[nt[1]][1],bt.$=V[V.length-dt],bt._$={first_line:o[o.length-(dt||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(dt||1)].first_column,last_column:o[o.length-1].last_column},fr&&(bt._$.range=[o[o.length-(dt||1)].range[0],o[o.length-1].range[1]]),Qt=this.performAction.apply(bt,[T,ke,kt,_t.yy,nt[1],V,o].concat(_r)),typeof Qt<"u")return Qt;dt&&(m=m.slice(0,-1*dt*2),V=V.slice(0,-1*dt),o=o.slice(0,-1*dt)),m.push(this.productions_[nt[1]][0]),V.push(bt.$),o.push(bt._$),Me=St[m[m.length-2]][m[m.length-1]],m.push(Me);break;case 3:return!0}}return!0},"parse")},pr=(function(){var Et={EOF:1,parseError:_(function(N,m){if(this.yy.parser)this.yy.parser.parseError(N,m);else throw new Error(N)},"parseError"),setInput:_(function(y,N){return this.yy=N||this.yy||{},this._input=y,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:_(function(){var y=this._input[0];this.yytext+=y,this.yyleng++,this.offset++,this.match+=y,this.matched+=y;var N=y.match(/(?:\r\n?|\n).*/g);return N?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),y},"input"),unput:_(function(y){var N=y.length,m=y.split(/(?:\r\n?|\n)/g);this._input=y+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-N),this.offset-=N;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),m.length-1&&(this.yylineno-=m.length-1);var V=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:m?(m.length===g.length?this.yylloc.first_column:0)+g[g.length-m.length].length-m[0].length:this.yylloc.first_column-N},this.options.ranges&&(this.yylloc.range=[V[0],V[0]+this.yyleng-N]),this.yyleng=this.yytext.length,this},"unput"),more:_(function(){return this._more=!0,this},"more"),reject:_(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:_(function(y){this.unput(this.match.slice(y))},"less"),pastInput:_(function(){var y=this.matched.substr(0,this.matched.length-this.match.length);return(y.length>20?"...":"")+y.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:_(function(){var y=this.match;return y.length<20&&(y+=this._input.substr(0,20-y.length)),(y.substr(0,20)+(y.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:_(function(){var y=this.pastInput(),N=new Array(y.length+1).join("-");return y+this.upcomingInput()+` -`+N+"^"},"showPosition"),test_match:_(function(y,N){var m,g,V;if(this.options.backtrack_lexer&&(V={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(V.yylloc.range=this.yylloc.range.slice(0))),g=y[0].match(/(?:\r\n?|\n).*/g),g&&(this.yylineno+=g.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+y[0].length},this.yytext+=y[0],this.match+=y[0],this.matches=y,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(y[0].length),this.matched+=y[0],m=this.performAction.call(this,this.yy,this,N,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),m)return m;if(this._backtrack){for(var o in V)this[o]=V[o];return!1}return!1},"test_match"),next:_(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var y,N,m,g;this._more||(this.yytext="",this.match="");for(var V=this._currentRules(),o=0;oN[0].length)){if(N=m,g=o,this.options.backtrack_lexer){if(y=this.test_match(m,V[o]),y!==!1)return y;if(this._backtrack){N=!1;continue}else return!1}else if(!this.options.flex)break}return N?(y=this.test_match(N,V[g]),y!==!1?y:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:_(function(){var N=this.next();return N||this.lex()},"lex"),begin:_(function(N){this.conditionStack.push(N)},"begin"),popState:_(function(){var N=this.conditionStack.length-1;return N>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:_(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:_(function(N){return N=this.conditionStack.length-1-Math.abs(N||0),N>=0?this.conditionStack[N]:"INITIAL"},"topState"),pushState:_(function(N){this.begin(N)},"pushState"),stateStackSize:_(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:_(function(N,m,g,V){var o=V;switch(g){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 20;case 7:return this.begin("CONFIG"),75;break;case 8:return 76;case 9:return this.popState(),this.begin("ALIAS"),77;break;case 10:return this.popState(),this.popState(),77;break;case 11:return m.yytext=m.yytext.trim(),73;break;case 12:return m.yytext=m.yytext.trim(),this.begin("ALIAS"),73;break;case 13:return m.yytext=m.yytext.trim(),this.popState(),73;break;case 14:return this.popState(),10;break;case 15:return this.begin("LINE"),15;break;case 16:return this.begin("ID"),51;break;case 17:return this.begin("ID"),53;break;case 18:return 14;case 19:return this.begin("ID"),54;break;case 20:return this.popState(),this.popState(),this.begin("LINE"),52;break;case 21:return this.popState(),this.popState(),5;break;case 22:return this.begin("LINE"),37;break;case 23:return this.begin("LINE"),38;break;case 24:return this.begin("LINE"),39;break;case 25:return this.begin("LINE"),40;break;case 26:return this.begin("LINE"),50;break;case 27:return this.begin("LINE"),42;break;case 28:return this.begin("LINE"),44;break;case 29:return this.begin("LINE"),49;break;case 30:return this.begin("LINE"),45;break;case 31:return this.begin("LINE"),48;break;case 32:return this.begin("LINE"),47;break;case 33:return this.popState(),16;break;case 34:return 17;case 35:return 67;case 36:return 68;case 37:return 61;case 38:return 62;case 39:return 63;case 40:return 64;case 41:return 59;case 42:return 56;case 43:return this.begin("ID"),22;break;case 44:return this.begin("ID"),24;break;case 45:return 30;case 46:return 31;case 47:return this.begin("acc_title"),32;break;case 48:return this.popState(),"acc_title_value";break;case 49:return this.begin("acc_descr"),34;break;case 50:return this.popState(),"acc_descr_value";break;case 51:this.begin("acc_descr_multiline");break;case 52:this.popState();break;case 53:return"acc_descr_multiline_value";case 54:return 6;case 55:return 19;case 56:return 21;case 57:return 66;case 58:return 5;case 59:return m.yytext=m.yytext.trim(),73;break;case 60:return 80;case 61:return 97;case 62:return 98;case 63:return 99;case 64:return 78;case 65:return 79;case 66:return 100;case 67:return 101;case 68:return 102;case 69:return 103;case 70:return 85;case 71:return 86;case 72:return 87;case 73:return 88;case 74:return 93;case 75:return 94;case 76:return 95;case 77:return 96;case 78:return 81;case 79:return 82;case 80:return 83;case 81:return 84;case 82:return 89;case 83:return 90;case 84:return 91;case 85:return 92;case 86:return 104;case 87:return 104;case 88:return 70;case 89:return 71;case 90:return 72;case 91:return 5;case 92:return 10}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:@\{)/i,/^(?:[^\}]+)/i,/^(?:\}(?=\s+as\s))/i,/^(?:\})/i,/^(?:[^\<->\->:\n,;@\s]+(?=@\{))/i,/^(?:[^<>:\n,;@\s]+(?=\s+as\s))/i,/^(?:[^<>:\n,;@]+(?=\s*[\n;#]|$))/i,/^(?:[^<>:\n,;@]*<[^\n]*)/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\/\\\+\()\+<\->\->:\n,;]+((?!(-x|--x|-\)|--\)|-\|\\|-\\|-\/|-\/\/|-\|\/|\/\|-|\\\|-|\/\/-|\\\\-|\/\|-|--\|\\|--|\(\)))[\-]*[^\+<\->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?:--\|\\)/i,/^(?:--\|\/)/i,/^(?:--\\\\)/i,/^(?:--\/\/)/i,/^(?:\/\|--)/i,/^(?:\\\|--)/i,/^(?:\/\/--)/i,/^(?:\\\\--)/i,/^(?:-\|\\)/i,/^(?:-\|\/)/i,/^(?:-\\\\)/i,/^(?:-\/\/)/i,/^(?:\/\|-)/i,/^(?:\\\|-)/i,/^(?:\/\/-)/i,/^(?:\\\\-)/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\(\))/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[52,53],inclusive:!1},acc_descr:{rules:[50],inclusive:!1},acc_title:{rules:[48],inclusive:!1},ID:{rules:[2,3,7,11,12,13,14],inclusive:!1},ALIAS:{rules:[2,3,20,21],inclusive:!1},LINE:{rules:[2,3,33],inclusive:!1},CONFIG:{rules:[8,9,10],inclusive:!1},CONFIG_DATA:{rules:[],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,15,16,17,18,19,22,23,24,25,26,27,28,29,30,31,32,34,35,36,37,38,39,40,41,42,43,44,45,46,47,49,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92],inclusive:!0}}};return Et})();Ut.lexer=pr;function Pt(){this.yy={}}return _(Pt,"Parser"),Pt.prototype=Ut,Ut.Parser=Pt,new Pt})();ee.parser=ee;var br=ee,Rr={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34,SOLID_TOP:41,SOLID_BOTTOM:42,STICK_TOP:43,STICK_BOTTOM:44,SOLID_ARROW_TOP_REVERSE:45,SOLID_ARROW_BOTTOM_REVERSE:46,STICK_ARROW_TOP_REVERSE:47,STICK_ARROW_BOTTOM_REVERSE:48,SOLID_TOP_DOTTED:51,SOLID_BOTTOM_DOTTED:52,STICK_TOP_DOTTED:53,STICK_BOTTOM_DOTTED:54,SOLID_ARROW_TOP_REVERSE_DOTTED:55,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:56,STICK_ARROW_TOP_REVERSE_DOTTED:57,STICK_ARROW_BOTTOM_REVERSE_DOTTED:58,CENTRAL_CONNECTION:59,CENTRAL_CONNECTION_REVERSE:60,CENTRAL_CONNECTION_DUAL:61},Or={FILLED:0,OPEN:1},yr={LEFTOF:0,RIGHTOF:1,OVER:2},Yt={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},Lr=class{constructor(){this.state=new tr(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),this.setAccTitle=jt,this.setAccDescription=He,this.setDiagramTitle=Ue,this.getAccTitle=qe,this.getAccDescription=ze,this.getDiagramTitle=Ge,this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(j().wrap),this.LINETYPE=Rr,this.ARROWTYPE=Or,this.PLACEMENT=yr}static{_(this,"SequenceDB")}addBox(e){this.state.records.boxes.push({name:e.text,wrap:e.wrap??this.autoWrap(),fill:e.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(e,t,a,r,i){let n=this.state.records.currentBox,c;if(i!==void 0){let h;i.includes(` -`)?h=i+` -`:h=`{ -`+i+` -}`,c=Qe(h,{schema:Je})}r=c?.type??r,c?.alias&&(!a||a.text===t)&&(a={text:c.alias,wrap:a?.wrap,type:r});let l=this.state.records.actors.get(e);if(l){if(this.state.records.currentBox&&l.box&&this.state.records.currentBox!==l.box)throw new Error(`A same participant should only be defined in one Box: ${l.name} can't be in '${l.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(n=l.box?l.box:this.state.records.currentBox,l.box=n,l&&t===l.name&&a==null)return}if(a?.text==null&&(a={text:t,type:r}),(r==null||a.text==null)&&(a={text:t,type:r}),this.state.records.actors.set(e,{box:n,name:t,description:a.text,wrap:a.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:r??"participant"}),this.state.records.prevActor){let h=this.state.records.actors.get(this.state.records.prevActor);h&&(h.nextActor=e)}this.state.records.currentBox&&this.state.records.currentBox.actorKeys.push(e),this.state.records.prevActor=e}activationCount(e){let t,a=0;if(!e)return 0;for(t=0;t>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},l}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:e,to:t,message:a?.text??"",wrap:a?.wrap??this.autoWrap(),type:r,activate:i,centralConnection:n??0}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some(e=>e.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(e){return this.state.records.actors.get(e)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(e){this.state.records.wrapEnabled=e}extractWrap(e){if(e===void 0)return{};e=e.trim();let t=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(t===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:t}}autoWrap(){return this.state.records.wrapEnabled!==void 0?this.state.records.wrapEnabled:j().sequence?.wrap??!1}clear(){this.state.reset(),Fe()}parseMessage(e){let t=e.trim(),{wrap:a,cleanedText:r}=this.extractWrap(t),i={text:r,wrap:a};return Q.debug(`parseMessage: ${JSON.stringify(i)}`),i}parseBoxData(e){let t=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),a=t?.[1]?t[1].trim():"transparent",r=t?.[2]?t[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",a)||(a="transparent",r=e.trim());else{let c=new Option().style;c.color=a,c.color!==a&&(a="transparent",r=e.trim())}let{wrap:i,cleanedText:n}=this.extractWrap(r);return{text:n?Nt(n,j()):void 0,color:a,wrap:i}}addNote(e,t,a){let r={actor:e,placement:t,message:a.text,wrap:a.wrap??this.autoWrap()},i=[].concat(e,e);this.state.records.notes.push(r),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:i[0],to:i[1],message:a.text,wrap:a.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:t})}addLinks(e,t){let a=this.getActor(e);try{let r=Nt(t.text,j());r=r.replace(/=/g,"="),r=r.replace(/&/g,"&");let i=JSON.parse(r);this.insertLinks(a,i)}catch(r){Q.error("error while parsing actor link text",r)}}addALink(e,t){let a=this.getActor(e);try{let r={},i=Nt(t.text,j()),n=i.indexOf("@");i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");let c=i.slice(0,n-1).trim(),l=i.slice(n+1).trim();r[c]=l,this.insertLinks(a,r)}catch(r){Q.error("error while parsing actor link text",r)}}insertLinks(e,t){if(e.links==null)e.links=t;else for(let a in t)e.links[a]=t[a]}addProperties(e,t){let a=this.getActor(e);try{let r=Nt(t.text,j()),i=JSON.parse(r);this.insertProperties(a,i)}catch(r){Q.error("error while parsing actor properties text",r)}}insertProperties(e,t){if(e.properties==null)e.properties=t;else for(let a in t)e.properties[a]=t[a]}boxEnd(){this.state.records.currentBox=void 0}addDetails(e,t){let a=this.getActor(e),r=document.getElementById(t.text);try{let i=r.innerHTML,n=JSON.parse(i);n.properties&&this.insertProperties(a,n.properties),n.links&&this.insertLinks(a,n.links)}catch(i){Q.error("error while parsing actor details text",i)}}getActorProperty(e,t){if(e?.properties!==void 0)return e.properties[t]}apply(e){if(Array.isArray(e))e.forEach(t=>{this.apply(t)});else switch(e.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":this.addActor(e.actor,e.actor,e.description,e.draw,e.config);break;case"createParticipant":if(this.state.records.actors.has(e.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=e.actor,this.addActor(e.actor,e.actor,e.description,e.draw,e.config),this.state.records.createdActors.set(e.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=e.actor,this.state.records.destroyedActors.set(e.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"centralConnection":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"centralConnectionReverse":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"addNote":this.addNote(e.actor,e.placement,e.text);break;case"addLinks":this.addLinks(e.actor,e.text);break;case"addALink":this.addALink(e.actor,e.text);break;case"addProperties":this.addProperties(e.actor,e.text);break;case"addDetails":this.addDetails(e.actor,e.text);break;case"addMessage":if(this.state.records.lastCreated){if(e.to!==this.state.records.lastCreated)throw new Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");this.state.records.lastCreated=void 0}else if(this.state.records.lastDestroyed){if(e.to!==this.state.records.lastDestroyed&&e.from!==this.state.records.lastDestroyed)throw new Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");this.state.records.lastDestroyed=void 0}this.addSignal(e.from,e.to,e.msg,e.signalType,e.activate,e.centralConnection);break;case"boxStart":this.addBox(e.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"rectStart":this.addSignal(void 0,void 0,e.color,e.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":this.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":jt(e.text);break;case"parStart":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"and":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,e.criticalText,e.signalType);break;case"option":this.addSignal(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"breakStart":this.addSignal(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break}}getConfig(){return j().sequence}},Sr=_(e=>`.actor { - stroke: ${e.actorBorder}; - fill: ${e.actorBkg}; - } - - text.actor > tspan { - fill: ${e.actorTextColor}; - stroke: none; - } - - .actor-line { - stroke: ${e.actorLineColor}; - } - - .innerArc { - stroke-width: 1.5; - stroke-dasharray: none; - } - - .messageLine0 { - stroke-width: 1.5; - stroke-dasharray: none; - stroke: ${e.signalColor}; - } - - .messageLine1 { - stroke-width: 1.5; - stroke-dasharray: 2, 2; - stroke: ${e.signalColor}; - } - - #arrowhead path { - fill: ${e.signalColor}; - stroke: ${e.signalColor}; - } - - .sequenceNumber { - fill: ${e.sequenceNumberColor}; - } - - #sequencenumber { - fill: ${e.signalColor}; - } - - #crosshead path { - fill: ${e.signalColor}; - stroke: ${e.signalColor}; - } - - .messageText { - fill: ${e.signalTextColor}; - stroke: none; - } - - .labelBox { - stroke: ${e.labelBoxBorderColor}; - fill: ${e.labelBoxBkgColor}; - } - - .labelText, .labelText > tspan { - fill: ${e.labelTextColor}; - stroke: none; - } - - .loopText, .loopText > tspan { - fill: ${e.loopTextColor}; - stroke: none; - } - - .loopLine { - stroke-width: 2px; - stroke-dasharray: 2, 2; - stroke: ${e.labelBoxBorderColor}; - fill: ${e.labelBoxBorderColor}; - } - - .note { - //stroke: #decc93; - stroke: ${e.noteBorderColor}; - fill: ${e.noteBkgColor}; - } - - .noteText, .noteText > tspan { - fill: ${e.noteTextColor}; - stroke: none; - } - - .activation0 { - fill: ${e.activationBkgColor}; - stroke: ${e.activationBorderColor}; - } - - .activation1 { - fill: ${e.activationBkgColor}; - stroke: ${e.activationBorderColor}; - } - - .activation2 { - fill: ${e.activationBkgColor}; - stroke: ${e.activationBorderColor}; - } - - .actorPopupMenu { - position: absolute; - } - - .actorPopupMenuPanel { - position: absolute; - fill: ${e.actorBkg}; - box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); - filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4)); -} - .actor-man line { - stroke: ${e.actorBorder}; - fill: ${e.actorBkg}; - } - .actor-man circle, line { - stroke: ${e.actorBorder}; - fill: ${e.actorBkg}; - stroke-width: 2px; - } - -`,"getStyles"),mr=Sr,gt=36,pt="actor-top",ut="actor-bottom",Kt="actor-box",xt="actor-man",At=_(function(e,t){return $e(e,t)},"drawRect"),Nr=_(function(e,t,a,r,i){if(t.links===void 0||t.links===null||Object.keys(t.links).length===0)return{height:0,width:0};let n=t.links,c=t.actorCnt,l=t.rectData;var h="none";i&&(h="block !important");let s=e.append("g");s.attr("id","actor"+c+"_popup"),s.attr("class","actorPopupMenu"),s.attr("display",h);var E="";l.class!==void 0&&(E=" "+l.class);let p=l.width>a?l.width:a,f=s.append("rect");if(f.attr("class","actorPopupMenuPanel"+E),f.attr("x",l.x),f.attr("y",l.height),f.attr("fill",l.fill),f.attr("stroke",l.stroke),f.attr("width",p),f.attr("height",l.height),f.attr("rx",l.rx),f.attr("ry",l.ry),n!=null){var u=20;for(let L in n){var O=s.append("a"),b=(0,ae.sanitizeUrl)(n[L]);O.attr("xlink:href",b),O.attr("target","_blank"),Qr(r)(L,O,l.x+10,l.height+u,p,20,{class:"actor"},r),u+=30}}return f.attr("height",u),{height:l.height+u,width:p}},"drawPopup"),Ft=_(function(e){return"var pu = document.getElementById('"+e+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),Wt=_(function(e,t,a=null){return $(this,null,function*(){let r=e.append("foreignObject"),i=yield $t(t.text,Ct()),c=r.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(r.attr("height",Math.round(c.height)).attr("width",Math.round(c.width)),t.class==="noteText"){let l=e.node().firstChild;l.setAttribute("height",c.height+2*t.textMargin);let h=l.getBBox();r.attr("x",Math.round(h.x+h.width/2-c.width/2)).attr("y",Math.round(h.y+h.height/2-c.height/2))}else if(a){let{startx:l,stopx:h,starty:s}=a;if(l>h){let E=l;l=h,h=E}r.attr("x",Math.round(l+Math.abs(l-h)/2-c.width/2)),t.class==="loopText"?r.attr("y",Math.round(s)):r.attr("y",Math.round(s-c.height))}return[r]})},"drawKatex"),yt=_(function(e,t){let a=0,r=0,i=t.text.split(S.lineBreakRegex),[n,c]=te(t.fontSize),l=[],h=0,s=_(()=>t.y,"yfunc");if(t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0)switch(t.valign){case"top":case"start":s=_(()=>Math.round(t.y+t.textMargin),"yfunc");break;case"middle":case"center":s=_(()=>Math.round(t.y+(a+r+t.textMargin)/2),"yfunc");break;case"bottom":case"end":s=_(()=>Math.round(t.y+(a+r+2*t.textMargin)-t.textMargin),"yfunc");break}if(t.anchor!==void 0&&t.textMargin!==void 0&&t.width!==void 0)switch(t.anchor){case"left":case"start":t.x=Math.round(t.x+t.textMargin),t.anchor="start",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"middle":case"center":t.x=Math.round(t.x+t.width/2),t.anchor="middle",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"right":case"end":t.x=Math.round(t.x+t.width-t.textMargin),t.anchor="end",t.dominantBaseline="middle",t.alignmentBaseline="middle";break}for(let[E,p]of i.entries()){t.textMargin!==void 0&&t.textMargin===0&&n!==void 0&&(h=E*n);let f=e.append("text");f.attr("x",t.x),f.attr("y",s()),t.anchor!==void 0&&f.attr("text-anchor",t.anchor).attr("dominant-baseline",t.dominantBaseline).attr("alignment-baseline",t.alignmentBaseline),t.fontFamily!==void 0&&f.style("font-family",t.fontFamily),c!==void 0&&f.style("font-size",c),t.fontWeight!==void 0&&f.style("font-weight",t.fontWeight),t.fill!==void 0&&f.attr("fill",t.fill),t.class!==void 0&&f.attr("class",t.class),t.dy!==void 0?f.attr("dy",t.dy):h!==0&&f.attr("dy",h);let u=p||Ze;if(t.tspan){let O=f.append("tspan");O.attr("x",t.x),t.fill!==void 0&&O.attr("fill",t.fill),O.text(u)}else f.text(u);t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0&&(r+=(f._groups||f)[0][0].getBBox().height,a=r),l.push(f)}return l},"drawText"),sr=_(function(e,t){function a(i,n,c,l,h){return i+","+n+" "+(i+c)+","+n+" "+(i+c)+","+(n+l-h)+" "+(i+c-h*1.2)+","+(n+l)+" "+i+","+(n+l)}_(a,"genPoints");let r=e.append("polygon");return r.attr("points",a(t.x,t.y,t.width,t.height,7)),r.attr("class","labelBox"),t.y=t.y+t.height/2,yt(e,t),r},"drawLabel"),P=-1,ar=_((e,t,a,r)=>{e.select&&a.forEach(i=>{let n=t.get(i),c=e.select("#actor"+n.actorCnt);!r.mirrorActors&&n.stopy?c.attr("y2",n.stopy+n.height/2):r.mirrorActors&&c.attr("y2",n.stopy)})},"fixLifeLineHeights"),Ar=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+t.height,l=e.append("g").lower();var h=l;r||(P++,Object.keys(t.links||{}).length&&!a.forceMenus&&h.attr("onclick",Ft(`actor${P}_popup`)).attr("cursor","pointer"),h.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),h=l.append("g"),t.actorCnt=P,t.links!=null&&h.attr("id","root-"+P));let s=lt();var E="actor";t.properties?.class?E=t.properties.class:s.fill="#eaeaea",r?E+=` ${ut}`:E+=` ${pt}`,s.x=t.x,s.y=i,s.width=t.width,s.height=t.height,s.class=E,s.rx=3,s.ry=3,s.name=t.name;let p=At(h,s);if(t.rectData=s,t.properties?.icon){let u=t.properties.icon.trim();u.charAt(0)==="@"?Bt(h,s.x+s.width-20,s.y+10,u.substr(1)):Mt(h,s.x+s.width-20,s.y+10,u)}Tt(a,U(t.description))(t.description,h,s.x,s.y,s.width,s.height,{class:`actor ${Kt}`},a);let f=t.height;if(p.node){let u=p.node().getBBox();t.height=u.height,f=u.height}return f},"drawActorTypeParticipant"),wr=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+t.height,l=e.append("g").lower();var h=l;r||(P++,Object.keys(t.links||{}).length&&!a.forceMenus&&h.attr("onclick",Ft(`actor${P}_popup`)).attr("cursor","pointer"),h.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),h=l.append("g"),t.actorCnt=P,t.links!=null&&h.attr("id","root-"+P));let s=lt();var E="actor";t.properties?.class?E=t.properties.class:s.fill="#eaeaea",r?E+=` ${ut}`:E+=` ${pt}`,s.x=t.x,s.y=i,s.width=t.width,s.height=t.height,s.class=E,s.name=t.name;let p=6,f=Ve(Be({},s),{x:s.x+-p,y:s.y+ +p,class:"actor"}),u=At(h,s);if(At(h,f),t.rectData=s,t.properties?.icon){let b=t.properties.icon.trim();b.charAt(0)==="@"?Bt(h,s.x+s.width-20,s.y+10,b.substr(1)):Mt(h,s.x+s.width-20,s.y+10,b)}Tt(a,U(t.description))(t.description,h,s.x-p,s.y+p,s.width,s.height,{class:`actor ${Kt}`},a);let O=t.height;if(u.node){let b=u.node().getBBox();t.height=b.height,O=b.height}return O},"drawActorTypeCollections"),Pr=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+t.height,l=e.append("g").lower(),h=l;r||(P++,Object.keys(t.links||{}).length&&!a.forceMenus&&h.attr("onclick",Ft(`actor${P}_popup`)).attr("cursor","pointer"),h.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),h=l.append("g"),t.actorCnt=P,t.links!=null&&h.attr("id","root-"+P));let s=lt(),E="actor";t.properties?.class?E=t.properties.class:s.fill="#eaeaea",r?E+=` ${ut}`:E+=` ${pt}`,s.x=t.x,s.y=i,s.width=t.width,s.height=t.height,s.class=E,s.name=t.name;let p=s.height/2,f=p/(2.5+s.height/50),u=h.append("g"),O=h.append("g");if(u.append("path").attr("d",`M ${s.x},${s.y+p} - a ${f},${p} 0 0 0 0,${s.height} - h ${s.width-2*f} - a ${f},${p} 0 0 0 0,-${s.height} - Z - `).attr("class",E),O.append("path").attr("d",`M ${s.x},${s.y+p} - a ${f},${p} 0 0 0 0,${s.height}`).attr("stroke","#666").attr("stroke-width","1px").attr("class",E),u.attr("transform",`translate(${f}, ${-(s.height/2)})`),O.attr("transform",`translate(${s.width-f}, ${-s.height/2})`),t.rectData=s,t.properties?.icon){let w=t.properties.icon.trim(),A=s.x+s.width-20,k=s.y+10;w.charAt(0)==="@"?Bt(h,A,k,w.substr(1)):Mt(h,A,k,w)}Tt(a,U(t.description))(t.description,h,s.x,s.y,s.width,s.height,{class:`actor ${Kt}`},a);let b=t.height,L=u.select("path:last-child");if(L.node()){let w=L.node().getBBox();t.height=w.height,b=w.height}return b},"drawActorTypeQueue"),kr=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+75,l=e.append("g").lower();r||(P++,l.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),t.actorCnt=P);let h=e.append("g"),s=xt;r?s+=` ${ut}`:s+=` ${pt}`,h.attr("class",s),h.attr("name",t.name);let E=lt();E.x=t.x,E.y=i,E.fill="#eaeaea",E.width=t.width,E.height=t.height,E.class="actor";let p=t.x+t.width/2,f=i+32,u=22;h.append("defs").append("marker").attr("id","filled-head-control").attr("refX",11).attr("refY",5.8).attr("markerWidth",20).attr("markerHeight",28).attr("orient","172.5").append("path").attr("d","M 14.4 5.6 L 7.2 10.4 L 8.8 5.6 L 7.2 0.8 Z"),h.append("circle").attr("cx",p).attr("cy",f).attr("r",u).attr("fill","#eaeaf7").attr("stroke","#666").attr("stroke-width",1.2),h.append("line").attr("marker-end","url(#filled-head-control)").attr("transform",`translate(${p}, ${f-u})`);let O=h.node().getBBox();return t.height=O.height+2*(a?.sequence?.labelBoxHeight??0),Tt(a,U(t.description))(t.description,h,E.x,E.y+u+(r?5:12),E.width,E.height,{class:`actor ${xt}`},a),t.height},"drawActorTypeControl"),Dr=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+75,l=e.append("g").lower(),h=e.append("g"),s="actor";r?s+=` ${ut}`:s+=` ${pt}`,h.attr("class",s),h.attr("name",t.name);let E=lt();E.x=t.x,E.y=i,E.fill="#eaeaea",E.width=t.width,E.height=t.height,E.class="actor";let p=t.x+t.width/2,f=i+(r?10:25),u=22;h.append("circle").attr("cx",p).attr("cy",f).attr("r",u).attr("width",t.width).attr("height",t.height),h.append("line").attr("x1",p-u).attr("x2",p+u).attr("y1",f+u).attr("y2",f+u).attr("stroke-width",2);let O=h.node().getBBox();return t.height=O.height+(a?.sequence?.labelBoxHeight??0),r||(P++,l.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),t.actorCnt=P),Tt(a,U(t.description))(t.description,h,E.x,E.y+(r?15:30),E.width,E.height,{class:`actor ${xt}`},a),r?h.attr("transform",`translate(0, ${u})`):h.attr("transform",`translate(0, ${u/2-5})`),t.height},"drawActorTypeEntity"),vr=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+t.height+2*a.boxTextMargin,l=e.append("g").lower(),h=l;r||(P++,Object.keys(t.links||{}).length&&!a.forceMenus&&h.attr("onclick",Ft(`actor${P}_popup`)).attr("cursor","pointer"),h.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),h=l.append("g"),t.actorCnt=P,t.links!=null&&h.attr("id","root-"+P));let s=lt(),E="actor";t.properties?.class?E=t.properties.class:s.fill="#eaeaea",r?E+=` ${ut}`:E+=` ${pt}`,s.x=t.x,s.y=i,s.width=t.width,s.height=t.height,s.class=E,s.name=t.name,s.x=t.x,s.y=i;let p=s.width/3,f=s.width/3,u=p/2,O=u/(2.5+p/50),b=h.append("g"),L=` - M ${s.x},${s.y+O} - a ${u},${O} 0 0 0 ${p},0 - a ${u},${O} 0 0 0 -${p},0 - l 0,${f-2*O} - a ${u},${O} 0 0 0 ${p},0 - l 0,-${f-2*O} -`;b.append("path").attr("d",L).attr("fill","#eaeaea").attr("stroke","#000").attr("stroke-width",1).attr("class",E),b.attr("transform",`translate(${p}, ${O})`),t.rectData=s,Tt(a,U(t.description))(t.description,h,s.x,s.y+35,s.width,s.height,{class:`actor ${Kt}`},a);let w=b.select("path:last-child");if(w.node()){let A=w.node().getBBox();t.height=A.height+(a.sequence.labelBoxHeight??0)}return t.height},"drawActorTypeDatabase"),Cr=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+80,l=22,h=e.append("g").lower();r||(P++,h.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),t.actorCnt=P);let s=e.append("g"),E=xt;r?E+=` ${ut}`:E+=` ${pt}`,s.attr("class",E),s.attr("name",t.name);let p=lt();p.x=t.x,p.y=i,p.fill="#eaeaea",p.width=t.width,p.height=t.height,p.class="actor",s.append("line").attr("id","actor-man-torso"+P).attr("x1",t.x+t.width/2-l*2.5).attr("y1",i+12).attr("x2",t.x+t.width/2-15).attr("y2",i+12),s.append("line").attr("id","actor-man-arms"+P).attr("x1",t.x+t.width/2-l*2.5).attr("y1",i+2).attr("x2",t.x+t.width/2-l*2.5).attr("y2",i+22),s.append("circle").attr("cx",t.x+t.width/2).attr("cy",i+12).attr("r",l);let f=s.node().getBBox();return t.height=f.height+(a.sequence.labelBoxHeight??0),Tt(a,U(t.description))(t.description,s,p.x,p.y+15,p.width,p.height,{class:`actor ${xt}`},a),r?s.attr("transform",`translate(0,${l/2+10})`):s.attr("transform",`translate(0,${l/2+10})`),t.height},"drawActorTypeBoundary"),Mr=_(function(e,t,a,r){let i=r?t.stopy:t.starty,n=t.x+t.width/2,c=i+80,l=e.append("g").lower();r||(P++,l.append("line").attr("id","actor"+P).attr("x1",n).attr("y1",c).attr("x2",n).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name),t.actorCnt=P);let h=e.append("g"),s=xt;r?s+=` ${ut}`:s+=` ${pt}`,h.attr("class",s),h.attr("name",t.name);let E=lt();E.x=t.x,E.y=i,E.fill="#eaeaea",E.width=t.width,E.height=t.height,E.class="actor",E.rx=3,E.ry=3,h.append("line").attr("id","actor-man-torso"+P).attr("x1",n).attr("y1",i+25).attr("x2",n).attr("y2",i+45),h.append("line").attr("id","actor-man-arms"+P).attr("x1",n-gt/2).attr("y1",i+33).attr("x2",n+gt/2).attr("y2",i+33),h.append("line").attr("x1",n-gt/2).attr("y1",i+60).attr("x2",n).attr("y2",i+45),h.append("line").attr("x1",n).attr("y1",i+45).attr("x2",n+gt/2-2).attr("y2",i+60);let p=h.append("circle");p.attr("cx",t.x+t.width/2),p.attr("cy",i+10),p.attr("r",15),p.attr("width",t.width),p.attr("height",t.height);let f=h.node().getBBox();return t.height=f.height,Tt(a,U(t.description))(t.description,h,E.x,E.y+35,E.width,E.height,{class:`actor ${xt}`},a),t.height},"drawActorTypeActor"),Br=_(function(e,t,a,r){return $(this,null,function*(){switch(t.type){case"actor":return yield Mr(e,t,a,r);case"participant":return yield Ar(e,t,a,r);case"boundary":return yield Cr(e,t,a,r);case"control":return yield kr(e,t,a,r);case"entity":return yield Dr(e,t,a,r);case"database":return yield vr(e,t,a,r);case"collections":return yield wr(e,t,a,r);case"queue":return yield Pr(e,t,a,r)}})},"drawActor"),Vr=_(function(e,t,a){let i=e.append("g");ir(i,t),t.name&&Tt(a)(t.name,i,t.x,t.y+a.boxTextMargin+(t.textMaxHeight||0)/2,t.width,0,{class:"text"},a),i.lower()},"drawBox"),Yr=_(function(e){return e.append("g")},"anchorElement"),Wr=_(function(e,t,a,r,i){let n=lt(),c=t.anchored;n.x=t.startx,n.y=t.starty,n.class="activation"+i%3,n.width=t.stopx-t.startx,n.height=a-t.starty,At(c,n)},"drawActivation"),Kr=_(function(e,t,a,r){return $(this,null,function*(){let{boxMargin:i,boxTextMargin:n,labelBoxHeight:c,labelBoxWidth:l,messageFontFamily:h,messageFontSize:s,messageFontWeight:E}=r,p=e.append("g"),f=_(function(b,L,w,A){return p.append("line").attr("x1",b).attr("y1",L).attr("x2",w).attr("y2",A).attr("class","loopLine")},"drawLoopLine");f(t.startx,t.starty,t.stopx,t.starty),f(t.stopx,t.starty,t.stopx,t.stopy),f(t.startx,t.stopy,t.stopx,t.stopy),f(t.startx,t.starty,t.startx,t.stopy),t.sections!==void 0&&t.sections.forEach(function(b){f(t.startx,b.y,t.stopx,b.y).style("stroke-dasharray","3, 3")});let u=Vt();u.text=a,u.x=t.startx,u.y=t.starty,u.fontFamily=h,u.fontSize=s,u.fontWeight=E,u.anchor="middle",u.valign="middle",u.tspan=!1,u.width=l||50,u.height=c||20,u.textMargin=n,u.class="labelText",sr(p,u),u=nr(),u.text=t.title,u.x=t.startx+l/2+(t.stopx-t.startx)/2,u.y=t.starty+i+n,u.anchor="middle",u.valign="middle",u.textMargin=n,u.class="loopText",u.fontFamily=h,u.fontSize=s,u.fontWeight=E,u.wrap=!0;let O=U(u.text)?yield Wt(p,u,t):yt(p,u);if(t.sectionTitles!==void 0){for(let[b,L]of Object.entries(t.sectionTitles))if(L.message){u.text=L.message,u.x=t.startx+(t.stopx-t.startx)/2,u.y=t.sections[b].y+i+n,u.class="loopText",u.anchor="middle",u.valign="middle",u.tspan=!1,u.fontFamily=h,u.fontSize=s,u.fontWeight=E,u.wrap=t.wrap,U(u.text)?(t.starty=t.sections[b].y,yield Wt(p,u,t)):yt(p,u);let w=Math.round(O.map(A=>(A._groups||A)[0][0].getBBox().height).reduce((A,k)=>A+k));t.sections[b].height+=w-(i+n)}}return t.height=Math.round(t.stopy-t.starty),p})},"drawLoop"),ir=_(function(e,t){je(e,t)},"drawBackgroundRect"),Fr=_(function(e){e.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),qr=_(function(e){e.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),Hr=_(function(e){e.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),zr=_(function(e){e.append("defs").append("marker").attr("id","arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),Ur=_(function(e){e.append("defs").append("marker").attr("id","filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),Gr=_(function(e){e.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertSequenceNumber"),Xr=_(function(e){e.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},"insertArrowCrossHead"),nr=_(function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},"getTextObj"),Jr=_(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),Tt=(function(){function e(n,c,l,h,s,E,p){let f=c.append("text").attr("x",l+s/2).attr("y",h+E/2+5).style("text-anchor","middle").text(n);i(f,p)}_(e,"byText");function t(n,c,l,h,s,E,p,f){let{actorFontSize:u,actorFontFamily:O,actorFontWeight:b}=f,[L,w]=te(u),A=n.split(S.lineBreakRegex);for(let k=0;ke.height||0))+(this.loops.length===0?0:this.loops.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.messages.length===0?0:this.messages.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.notes.length===0?0:this.notes.map(e=>e.height||0).reduce((e,t)=>e+t))},"getHeight"),clear:_(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:_(function(e){this.boxes.push(e)},"addBox"),addActor:_(function(e){this.actors.push(e)},"addActor"),addLoop:_(function(e){this.loops.push(e)},"addLoop"),addMessage:_(function(e){this.messages.push(e)},"addMessage"),addNote:_(function(e){this.notes.push(e)},"addNote"),lastActor:_(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:_(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:_(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:_(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:_(function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,lr(j())},"init"),updateVal:_(function(e,t,a,r){e[t]===void 0?e[t]=a:e[t]=r(a,e[t])},"updateVal"),updateBounds:_(function(e,t,a,r){let i=this,n=0;function c(l){return _(function(s){n++;let E=i.sequenceItems.length-n+1;i.updateVal(s,"starty",t-E*d.boxMargin,Math.min),i.updateVal(s,"stopy",r+E*d.boxMargin,Math.max),i.updateVal(x.data,"startx",e-E*d.boxMargin,Math.min),i.updateVal(x.data,"stopx",a+E*d.boxMargin,Math.max),l!=="activation"&&(i.updateVal(s,"startx",e-E*d.boxMargin,Math.min),i.updateVal(s,"stopx",a+E*d.boxMargin,Math.max),i.updateVal(x.data,"starty",t-E*d.boxMargin,Math.min),i.updateVal(x.data,"stopy",r+E*d.boxMargin,Math.max))},"updateItemBounds")}_(c,"updateFn"),this.sequenceItems.forEach(c()),this.activations.forEach(c("activation"))},"updateBounds"),insert:_(function(e,t,a,r){let i=S.getMin(e,a),n=S.getMax(e,a),c=S.getMin(t,r),l=S.getMax(t,r);this.updateVal(x.data,"startx",i,Math.min),this.updateVal(x.data,"starty",c,Math.min),this.updateVal(x.data,"stopx",n,Math.max),this.updateVal(x.data,"stopy",l,Math.max),this.updateBounds(i,c,n,l)},"insert"),newActivation:_(function(e,t,a){let r=a.get(e.from),i=qt(e.from).length||0,n=r.x+r.width/2+(i-1)*d.activationWidth/2;this.activations.push({startx:n,starty:this.verticalPos+2,stopx:n+d.activationWidth,stopy:void 0,actor:e.from,anchored:Y.anchorElement(t)})},"newActivation"),endActivation:_(function(e){let t=this.activations.map(function(a){return a.actor}).lastIndexOf(e.from);return this.activations.splice(t,1)[0]},"endActivation"),createLoop:_(function(e={message:void 0,wrap:!1,width:void 0},t){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e.message,wrap:e.wrap,width:e.width,height:0,fill:t}},"createLoop"),newLoop:_(function(e={message:void 0,wrap:!1,width:void 0},t){this.sequenceItems.push(this.createLoop(e,t))},"newLoop"),endLoop:_(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:_(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:_(function(e){let t=this.sequenceItems.pop();t.sections=t.sections||[],t.sectionTitles=t.sectionTitles||[],t.sections.push({y:x.getVerticalPos(),height:0}),t.sectionTitles.push(e),this.sequenceItems.push(t)},"addSectionToLoop"),saveVerticalPos:_(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:_(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:_(function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=S.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:_(function(){return this.verticalPos},"getVerticalPos"),getBounds:_(function(){return{bounds:this.data,models:this.models}},"getBounds")},es=_(function(e,t){return $(this,null,function*(){x.bumpVerticalPos(d.boxMargin),t.height=d.boxMargin,t.starty=x.getVerticalPos();let a=lt();a.x=t.startx,a.y=t.starty,a.width=t.width||d.width,a.class="note";let r=e.append("g"),i=Y.drawRect(r,a),n=Vt();n.x=t.startx,n.y=t.starty,n.width=a.width,n.dy="1em",n.text=t.message,n.class="noteText",n.fontFamily=d.noteFontFamily,n.fontSize=d.noteFontSize,n.fontWeight=d.noteFontWeight,n.anchor=d.noteAlign,n.textMargin=d.noteMargin,n.valign="center";let c=U(n.text)?yield Wt(r,n):yt(r,n),l=Math.round(c.map(h=>(h._groups||h)[0][0].getBBox().height).reduce((h,s)=>h+s));i.attr("height",l+2*d.noteMargin),t.height+=l+2*d.noteMargin,x.bumpVerticalPos(l+2*d.noteMargin),t.stopy=t.starty+l+2*d.noteMargin,t.stopx=t.startx+a.width,x.insert(t.startx,t.starty,t.stopx,t.stopy),x.models.addNote(t)})},"drawNote"),rs=_(function(e,t,a,r,i,n,c){let l=r.db.getActors(),h=l.get(t.from),s=l.get(t.to),E=a.sequenceVisible,p=h.x+h.width/2,f=s.x+s.width/2,u=p<=f,O=Er(t,r),b=e.append("g"),L=16.5,w=_((W,K)=>{let H=W?L:-L;return K?-H:H},"getCircleOffset"),A=_(W=>{b.append("circle").attr("cx",W).attr("cy",c).attr("r",5).attr("width",10).attr("height",10)},"drawCircle"),{CENTRAL_CONNECTION:k,CENTRAL_CONNECTION_REVERSE:D,CENTRAL_CONNECTION_DUAL:M}=r.db.LINETYPE;if(E)switch(t.centralConnection){case k:O&&(f+=w(u,!0));break;case D:O||(p+=w(u,!1));break;case M:O?f+=w(u,!0):p+=w(u,!1);break}switch(t.centralConnection){case k:A(f);break;case D:A(p);break;case M:A(p),A(f);break}},"drawCentralConnection"),It=_(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont"),Ot=_(e=>({fontFamily:e.noteFontFamily,fontSize:e.noteFontSize,fontWeight:e.noteFontWeight}),"noteFont"),re=_(e=>({fontFamily:e.actorFontFamily,fontSize:e.actorFontSize,fontWeight:e.actorFontWeight}),"actorFont");function or(e,t){return $(this,null,function*(){x.bumpVerticalPos(10);let{startx:a,stopx:r,message:i}=t,n=S.splitBreaks(i).length,c=U(i),l=c?yield Rt(i,j()):F.calculateTextDimensions(i,It(d));if(!c){let p=l.height/n;t.height+=p,x.bumpVerticalPos(p)}let h,s=l.height-10,E=l.width;if(a===r){h=x.getVerticalPos()+s,d.rightAngles||(s+=d.boxMargin,h=x.getVerticalPos()+s),s+=30;let p=S.getMax(E/2,d.width/2);x.insert(a-p,x.getVerticalPos()-10+s,r+p,x.getVerticalPos()+30+s)}else s+=d.boxMargin,h=x.getVerticalPos()+s,x.insert(a,h-10,r,h);return x.bumpVerticalPos(s),t.height+=s,t.stopy=t.starty+t.height,x.insert(t.fromBounds,t.starty,t.toBounds,t.stopy),h})}_(or,"boundMessage");var ss=_(function(e,t,a,r,i){return $(this,null,function*(){let{startx:n,stopx:c,starty:l,message:h,type:s,sequenceIndex:E,sequenceVisible:p}=t,f=F.calculateTextDimensions(h,It(d)),u=Vt();u.x=n,u.y=l+10,u.width=c-n,u.class="messageText",u.dy="1em",u.text=h,u.fontFamily=d.messageFontFamily,u.fontSize=d.messageFontSize,u.fontWeight=d.messageFontWeight,u.anchor=d.messageAlign,u.valign="center",u.textMargin=d.wrapPadding,u.tspan=!1,U(u.text)?yield Wt(e,u,{startx:n,stopx:c,starty:a}):yt(e,u);let O=f.width,b;if(n===c){let w=p||d.showSequenceNumbers,A=Er(i,r),k=ds(i,r),D=n+(w&&(A||k)?10:0);d.rightAngles?b=e.append("path").attr("d",`M ${D},${a} H ${n+S.getMax(d.width/2,O/2)} V ${a+25} H ${n}`):b=e.append("path").attr("d","M "+D+","+a+" C "+(D+60)+","+(a-10)+" "+(n+60)+","+(a+30)+" "+n+","+(a+20))}else b=e.append("line"),b.attr("x1",n),b.attr("y1",a),b.attr("x2",c),b.attr("y2",a),rr(i,r)&&rs(e,i,t,r,n,c,a);s===r.db.LINETYPE.DOTTED||s===r.db.LINETYPE.DOTTED_CROSS||s===r.db.LINETYPE.DOTTED_POINT||s===r.db.LINETYPE.DOTTED_OPEN||s===r.db.LINETYPE.BIDIRECTIONAL_DOTTED||s===r.db.LINETYPE.SOLID_TOP_DOTTED||s===r.db.LINETYPE.SOLID_BOTTOM_DOTTED||s===r.db.LINETYPE.STICK_TOP_DOTTED||s===r.db.LINETYPE.STICK_BOTTOM_DOTTED||s===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||s===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||s===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||s===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED?(b.style("stroke-dasharray","3, 3"),b.attr("class","messageLine1")):b.attr("class","messageLine0");let L="";if(d.arrowMarkerAbsolute&&(L=We(!0)),b.attr("stroke-width",2),b.attr("stroke","none"),b.style("fill","none"),(s===r.db.LINETYPE.SOLID_TOP||s===r.db.LINETYPE.SOLID_TOP_DOTTED)&&b.attr("marker-end","url("+L+"#solidTopArrowHead)"),(s===r.db.LINETYPE.SOLID_BOTTOM||s===r.db.LINETYPE.SOLID_BOTTOM_DOTTED)&&b.attr("marker-end","url("+L+"#solidBottomArrowHead)"),(s===r.db.LINETYPE.STICK_TOP||s===r.db.LINETYPE.STICK_TOP_DOTTED)&&b.attr("marker-end","url("+L+"#stickTopArrowHead)"),(s===r.db.LINETYPE.STICK_BOTTOM||s===r.db.LINETYPE.STICK_BOTTOM_DOTTED)&&b.attr("marker-end","url("+L+"#stickBottomArrowHead)"),(s===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||s===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED)&&b.attr("marker-start","url("+L+"#solidBottomArrowHead)"),(s===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||s===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED)&&b.attr("marker-start","url("+L+"#solidTopArrowHead)"),(s===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||s===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED)&&b.attr("marker-start","url("+L+"#stickBottomArrowHead)"),(s===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||s===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)&&b.attr("marker-start","url("+L+"#stickTopArrowHead)"),(s===r.db.LINETYPE.SOLID||s===r.db.LINETYPE.DOTTED)&&b.attr("marker-end","url("+L+"#arrowhead)"),(s===r.db.LINETYPE.BIDIRECTIONAL_SOLID||s===r.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(b.attr("marker-start","url("+L+"#arrowhead)"),b.attr("marker-end","url("+L+"#arrowhead)")),(s===r.db.LINETYPE.SOLID_POINT||s===r.db.LINETYPE.DOTTED_POINT)&&b.attr("marker-end","url("+L+"#filled-head)"),(s===r.db.LINETYPE.SOLID_CROSS||s===r.db.LINETYPE.DOTTED_CROSS)&&b.attr("marker-end","url("+L+"#crosshead)"),p||d.showSequenceNumbers){let w=s===r.db.LINETYPE.BIDIRECTIONAL_SOLID||s===r.db.LINETYPE.BIDIRECTIONAL_DOTTED,A=s===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||s===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||s===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||s===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||s===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||s===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||s===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||s===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,k=6,D=rr(i,r),M=n,W=c;w?(nn?W=c-2*k:(W=c-k,M+=i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_DUAL||i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0),W+=D?15:0,b.attr("x2",W),b.attr("x1",M)):b.attr("x1",n+k);let K=0,H=n===c,G=n<=c;H?K=t.fromBounds+1:A?K=G?t.toBounds-1:t.fromBounds+1:K=G?t.fromBounds+1:t.toBounds-1,e.append("line").attr("x1",K).attr("y1",a).attr("x2",K).attr("y2",a).attr("stroke-width",0).attr("marker-start","url("+L+"#sequencenumber)"),e.append("text").attr("x",K).attr("y",a+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(E)}})},"drawMessage"),as=_(function(e,t,a,r,i,n,c){let l=0,h=0,s,E=0;for(let p of r){let f=t.get(p),u=f.box;s&&s!=u&&(c||x.models.addBox(s),h+=d.boxMargin+s.margin),u&&u!=s&&(c||(u.x=l+h,u.y=i),h+=u.margin),f.width=f.width||d.width,f.height=S.getMax(f.height||d.height,d.height),f.margin=f.margin||d.actorMargin,E=S.getMax(E,f.height),a.get(f.name)&&(h+=f.width/2),f.x=l+h,f.starty=x.getVerticalPos(),x.insert(f.x,i,f.x+f.width,f.height),l+=f.width+h,f.box&&(f.box.width=l+u.margin-f.box.x),h=f.margin,s=f.box,x.models.addActor(f)}s&&!c&&x.models.addBox(s),x.bumpVerticalPos(E)},"addActorRenderingData"),se=_(function(e,t,a,r){return $(this,null,function*(){if(r){let i=0;x.bumpVerticalPos(d.boxMargin*2);for(let n of a){let c=t.get(n);c.stopy||(c.stopy=x.getVerticalPos());let l=yield Y.drawActor(e,c,d,!0);i=S.getMax(i,l)}x.bumpVerticalPos(i+d.boxMargin)}else for(let i of a){let n=t.get(i);yield Y.drawActor(e,n,d,!1)}})},"drawActors"),cr=_(function(e,t,a,r){let i=0,n=0;for(let c of a){let l=t.get(c),h=ns(l),s=Y.drawPopup(e,l,h,d,d.forceMenus,r);s.height>i&&(i=s.height),s.width+l.x>n&&(n=s.width+l.x)}return{maxHeight:i,maxWidth:n}},"drawActorsPopup"),lr=_(function(e){Ye(d,e),e.fontFamily&&(d.actorFontFamily=d.noteFontFamily=d.messageFontFamily=e.fontFamily),e.fontSize&&(d.actorFontSize=d.noteFontSize=d.messageFontSize=e.fontSize),e.fontWeight&&(d.actorFontWeight=d.noteFontWeight=d.messageFontWeight=e.fontWeight)},"setConf"),qt=_(function(e){return x.activations.filter(function(t){return t.actor===e})},"actorActivations"),er=_(function(e,t){let a=t.get(e),r=qt(e),i=r.reduce(function(c,l){return S.getMin(c,l.startx)},a.x+a.width/2-1),n=r.reduce(function(c,l){return S.getMax(c,l.stopx)},a.x+a.width/2+1);return[i,n]},"activationBounds");function ht(e,t,a,r,i){x.bumpVerticalPos(a);let n=r;if(t.id&&t.message&&e[t.id]){let c=e[t.id].width,l=It(d);t.message=F.wrapLabel(`[${t.message}]`,c-2*d.wrapPadding,l),t.width=c,t.wrap=!0;let h=F.calculateTextDimensions(t.message,l),s=S.getMax(h.height,d.labelBoxHeight);n=r+s,Q.debug(`${s} - ${t.message}`)}i(t),x.bumpVerticalPos(n)}_(ht,"adjustLoopHeightForWrap");function hr(e,t,a,r,i,n,c){function l(E,p){E.x{R.add(I.from),R.add(I.to)}),O=O.filter(I=>R.has(I))}as(s,E,p,O,0,b,!1);let D=yield Es(b,E,k,r);Y.insertArrowHead(s),Y.insertArrowCrossHead(s),Y.insertArrowFilledHead(s),Y.insertSequenceNumber(s),Y.insertSolidTopArrowHead(s),Y.insertSolidBottomArrowHead(s),Y.insertStickTopArrowHead(s),Y.insertStickBottomArrowHead(s);function M(R,I){let ot=x.endActivation(R);ot.starty+18>I&&(ot.starty=I-6,I+=12),Y.drawActivation(s,ot,I,d,qt(R.from).length),x.insert(ot.startx,I-10,ot.stopx,I)}_(M,"activeEnd");let W=1,K=1,H=[],G=[],X=0;for(let R of b){let I,ot,ct;switch(R.type){case r.db.LINETYPE.NOTE:x.resetVerticalPos(),ot=R.noteModel,yield es(s,ot);break;case r.db.LINETYPE.ACTIVE_START:x.newActivation(R,s,E);break;case r.db.LINETYPE.CENTRAL_CONNECTION:x.newActivation(R,s,E);break;case r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE:x.newActivation(R,s,E);break;case r.db.LINETYPE.ACTIVE_END:M(R,x.getVerticalPos());break;case r.db.LINETYPE.LOOP_START:ht(D,R,d.boxMargin,d.boxMargin+d.boxTextMargin,C=>x.newLoop(C));break;case r.db.LINETYPE.LOOP_END:I=x.endLoop(),yield Y.drawLoop(s,I,"loop",d),x.bumpVerticalPos(I.stopy-x.getVerticalPos()),x.models.addLoop(I);break;case r.db.LINETYPE.RECT_START:ht(D,R,d.boxMargin,d.boxMargin,C=>x.newLoop(void 0,C.message));break;case r.db.LINETYPE.RECT_END:I=x.endLoop(),G.push(I),x.models.addLoop(I),x.bumpVerticalPos(I.stopy-x.getVerticalPos());break;case r.db.LINETYPE.OPT_START:ht(D,R,d.boxMargin,d.boxMargin+d.boxTextMargin,C=>x.newLoop(C));break;case r.db.LINETYPE.OPT_END:I=x.endLoop(),yield Y.drawLoop(s,I,"opt",d),x.bumpVerticalPos(I.stopy-x.getVerticalPos()),x.models.addLoop(I);break;case r.db.LINETYPE.ALT_START:ht(D,R,d.boxMargin,d.boxMargin+d.boxTextMargin,C=>x.newLoop(C));break;case r.db.LINETYPE.ALT_ELSE:ht(D,R,d.boxMargin+d.boxTextMargin,d.boxMargin,C=>x.addSectionToLoop(C));break;case r.db.LINETYPE.ALT_END:I=x.endLoop(),yield Y.drawLoop(s,I,"alt",d),x.bumpVerticalPos(I.stopy-x.getVerticalPos()),x.models.addLoop(I);break;case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:ht(D,R,d.boxMargin,d.boxMargin+d.boxTextMargin,C=>x.newLoop(C)),x.saveVerticalPos();break;case r.db.LINETYPE.PAR_AND:ht(D,R,d.boxMargin+d.boxTextMargin,d.boxMargin,C=>x.addSectionToLoop(C));break;case r.db.LINETYPE.PAR_END:I=x.endLoop(),yield Y.drawLoop(s,I,"par",d),x.bumpVerticalPos(I.stopy-x.getVerticalPos()),x.models.addLoop(I);break;case r.db.LINETYPE.AUTONUMBER:W=R.message.start||W,K=R.message.step||K,R.message.visible?r.db.enableSequenceNumbers():r.db.disableSequenceNumbers();break;case r.db.LINETYPE.CRITICAL_START:ht(D,R,d.boxMargin,d.boxMargin+d.boxTextMargin,C=>x.newLoop(C));break;case r.db.LINETYPE.CRITICAL_OPTION:ht(D,R,d.boxMargin+d.boxTextMargin,d.boxMargin,C=>x.addSectionToLoop(C));break;case r.db.LINETYPE.CRITICAL_END:I=x.endLoop(),yield Y.drawLoop(s,I,"critical",d),x.bumpVerticalPos(I.stopy-x.getVerticalPos()),x.models.addLoop(I);break;case r.db.LINETYPE.BREAK_START:ht(D,R,d.boxMargin,d.boxMargin+d.boxTextMargin,C=>x.newLoop(C));break;case r.db.LINETYPE.BREAK_END:I=x.endLoop(),yield Y.drawLoop(s,I,"break",d),x.bumpVerticalPos(I.stopy-x.getVerticalPos()),x.models.addLoop(I);break;default:try{ct=R.msgModel,ct.starty=x.getVerticalPos(),ct.sequenceIndex=W,ct.sequenceVisible=r.db.showSequenceNumbers();let C=yield or(s,ct);hr(R,ct,C,X,E,p,f),H.push({messageModel:ct,lineStartY:C,msg:R}),x.models.addMessage(ct)}catch(C){Q.error("error while drawing message",C)}}[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.SOLID_TOP,r.db.LINETYPE.SOLID_BOTTOM,r.db.LINETYPE.STICK_TOP,r.db.LINETYPE.STICK_BOTTOM,r.db.LINETYPE.SOLID_TOP_DOTTED,r.db.LINETYPE.SOLID_BOTTOM_DOTTED,r.db.LINETYPE.STICK_TOP_DOTTED,r.db.LINETYPE.STICK_BOTTOM_DOTTED,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT,r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(R.type)&&(W=W+K),X++}Q.debug("createdActors",p),Q.debug("destroyedActors",f),yield se(s,E,O,!1);for(let R of H)yield ss(s,R.messageModel,R.lineStartY,r,R.msg);d.mirrorActors&&(yield se(s,E,O,!0)),G.forEach(R=>Y.drawBackgroundRect(s,R)),ar(s,E,O,d);for(let R of x.models.boxes){R.height=x.getVerticalPos()-R.y,x.insert(R.x,R.y,R.x+R.width,R.height);let I=d.boxMargin*2;R.startx=R.x-I,R.starty=R.y-I*.25,R.stopx=R.startx+R.width+2*I,R.stopy=R.starty+R.height+I*.75,R.stroke="rgb(0,0,0, 0.5)",Y.drawBox(s,R,d)}w&&x.bumpVerticalPos(d.boxMargin);let z=cr(s,E,O,h),{bounds:v}=x.getBounds();v.startx===void 0&&(v.startx=0),v.starty===void 0&&(v.starty=0),v.stopx===void 0&&(v.stopx=0),v.stopy===void 0&&(v.stopy=0);let tt=v.stopy-v.starty;tt{let c=It(d),l=n.actorKeys.reduce((p,f)=>p+=e.get(f).width+(e.get(f).margin||0),0),h=d.boxMargin*8;l+=h,l-=2*d.boxTextMargin,n.wrap&&(n.name=F.wrapLabel(n.name,l-2*d.wrapPadding,c));let s=F.calculateTextDimensions(n.name,c);i=S.getMax(s.height,i);let E=S.getMax(l,s.width+2*d.wrapPadding);if(n.margin=d.boxTextMargin,ln.textMaxHeight=i),S.getMax(r,d.height)})}_(Tr,"calculateActorMargins");var os=_(function(e,t,a){return $(this,null,function*(){let r=t.get(e.from),i=t.get(e.to),n=r.x,c=i.x,l=e.wrap&&e.message,h=U(e.message)?yield Rt(e.message,j()):F.calculateTextDimensions(l?F.wrapLabel(e.message,d.width,Ot(d)):e.message,Ot(d)),s={width:l?d.width:S.getMax(d.width,h.width+2*d.noteMargin),height:0,startx:r.x,stopx:0,starty:0,stopy:0,message:e.message};return e.placement===a.db.PLACEMENT.RIGHTOF?(s.width=l?S.getMax(d.width,h.width):S.getMax(r.width/2+i.width/2,h.width+2*d.noteMargin),s.startx=n+(r.width+d.actorMargin)/2):e.placement===a.db.PLACEMENT.LEFTOF?(s.width=l?S.getMax(d.width,h.width+2*d.noteMargin):S.getMax(r.width/2+i.width/2,h.width+2*d.noteMargin),s.startx=n-s.width+(r.width-d.actorMargin)/2):e.to===e.from?(h=F.calculateTextDimensions(l?F.wrapLabel(e.message,S.getMax(d.width,r.width),Ot(d)):e.message,Ot(d)),s.width=l?S.getMax(d.width,r.width):S.getMax(r.width,d.width,h.width+2*d.noteMargin),s.startx=n+(r.width-s.width)/2):(s.width=Math.abs(n+r.width/2-(c+i.width/2))+d.actorMargin,s.startx=n2,p=_(b=>l?-b:b,"adjustValue");e.from===e.to?s=h:(e.activate&&!E&&(s+=p(d.activationWidth/2-1)),[a.db.LINETYPE.SOLID_OPEN,a.db.LINETYPE.DOTTED_OPEN,a.db.LINETYPE.STICK_TOP,a.db.LINETYPE.STICK_BOTTOM,a.db.LINETYPE.STICK_TOP_DOTTED,a.db.LINETYPE.STICK_BOTTOM_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,a.db.LINETYPE.STICK_ARROW_TOP_REVERSE,a.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,a.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,a.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(e.type)||(s+=p(3)),[a.db.LINETYPE.BIDIRECTIONAL_SOLID,a.db.LINETYPE.BIDIRECTIONAL_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(e.type)&&(h-=p(3)));let f=[r,i,n,c],u=Math.abs(h-s);e.wrap&&e.message&&(e.message=F.wrapLabel(e.message,S.getMax(u+2*d.wrapPadding,d.width),It(d)));let O=F.calculateTextDimensions(e.message,It(d));return{width:S.getMax(e.wrap?0:O.width+2*d.wrapPadding,u+2*d.wrapPadding,d.width),height:0,startx:h,stopx:s,starty:0,stopy:0,message:e.message,type:e.type,wrap:e.wrap,fromBounds:Math.min.apply(null,f),toBounds:Math.max.apply(null,f)}},"buildMessageModel"),Es=_(function(e,t,a,r){return $(this,null,function*(){let i={},n=[],c,l,h;for(let s of e){switch(s.type){case r.db.LINETYPE.LOOP_START:case r.db.LINETYPE.ALT_START:case r.db.LINETYPE.OPT_START:case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:case r.db.LINETYPE.CRITICAL_START:case r.db.LINETYPE.BREAK_START:n.push({id:s.id,msg:s.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case r.db.LINETYPE.ALT_ELSE:case r.db.LINETYPE.PAR_AND:case r.db.LINETYPE.CRITICAL_OPTION:s.message&&(c=n.pop(),i[c.id]=c,i[s.id]=c,n.push(c));break;case r.db.LINETYPE.LOOP_END:case r.db.LINETYPE.ALT_END:case r.db.LINETYPE.OPT_END:case r.db.LINETYPE.PAR_END:case r.db.LINETYPE.CRITICAL_END:case r.db.LINETYPE.BREAK_END:c=n.pop(),i[c.id]=c;break;case r.db.LINETYPE.ACTIVE_START:{let p=t.get(s.from?s.from:s.to.actor),f=qt(s.from?s.from:s.to.actor).length,u=p.x+p.width/2+(f-1)*d.activationWidth/2,O={startx:u,stopx:u+d.activationWidth,actor:s.from,enabled:!0};x.activations.push(O)}break;case r.db.LINETYPE.ACTIVE_END:{let p=x.activations.map(f=>f.actor).lastIndexOf(s.from);x.activations.splice(p,1).splice(0,1)}break}s.placement!==void 0?(l=yield os(s,t,r),s.noteModel=l,n.forEach(p=>{c=p,c.from=S.getMin(c.from,l.startx),c.to=S.getMax(c.to,l.startx+l.width),c.width=S.getMax(c.width,Math.abs(c.from-c.to))-d.labelBoxWidth})):(h=Ts(s,t,r),s.msgModel=h,h.startx&&h.stopx&&n.length>0&&n.forEach(p=>{if(c=p,h.startx===h.stopx){let f=t.get(s.from),u=t.get(s.to);c.from=S.getMin(f.x-h.width/2,f.x-f.width/2,c.from),c.to=S.getMax(u.x+h.width/2,u.x+f.width/2,c.to),c.width=S.getMax(c.width,Math.abs(c.to-c.from))-d.labelBoxWidth}else c.from=S.getMin(h.startx,c.from),c.to=S.getMax(h.stopx,c.to),c.width=S.getMax(c.width,h.width)-d.labelBoxWidth}))}return x.activations=[],Q.debug("Loop type widths:",i),i})},"calculateLoopBounds"),ps={bounds:x,drawActors:se,drawActorsPopup:cr,setConf:lr,draw:is},Os={parser:br,get db(){return new Lr},renderer:ps,styles:mr,init:_(e=>{e.sequence||(e.sequence={}),e.wrap&&(e.sequence.wrap=e.wrap,Xe({sequence:{wrap:e.wrap}}))},"init")};export{Os as diagram}; diff --git a/src/google/adk/cli/browser/chunk-T3Q3QCCV.js b/src/google/adk/cli/browser/chunk-T3Q3QCCV.js deleted file mode 100644 index 3b26d9edf3..0000000000 --- a/src/google/adk/cli/browser/chunk-T3Q3QCCV.js +++ /dev/null @@ -1,3 +0,0 @@ -import{f as t}from"./chunk-NALL4A3P.js";import{j as i}from"./chunk-RMXJBC7V.js";var o={},m={info:t(()=>i(null,null,function*(){let{createInfoServices:e}=yield import("./chunk-DIR2LWLP.js"),r=e().Info.parser.LangiumParser;o.info=r}),"info"),packet:t(()=>i(null,null,function*(){let{createPacketServices:e}=yield import("./chunk-SMT27N2F.js"),r=e().Packet.parser.LangiumParser;o.packet=r}),"packet"),pie:t(()=>i(null,null,function*(){let{createPieServices:e}=yield import("./chunk-HDC4PFPG.js"),r=e().Pie.parser.LangiumParser;o.pie=r}),"pie"),architecture:t(()=>i(null,null,function*(){let{createArchitectureServices:e}=yield import("./chunk-IHY23QJP.js"),r=e().Architecture.parser.LangiumParser;o.architecture=r}),"architecture"),gitGraph:t(()=>i(null,null,function*(){let{createGitGraphServices:e}=yield import("./chunk-XE4A3JWW.js"),r=e().GitGraph.parser.LangiumParser;o.gitGraph=r}),"gitGraph"),radar:t(()=>i(null,null,function*(){let{createRadarServices:e}=yield import("./chunk-FDH623K7.js"),r=e().Radar.parser.LangiumParser;o.radar=r}),"radar"),treemap:t(()=>i(null,null,function*(){let{createTreemapServices:e}=yield import("./chunk-7UW26RYS.js"),r=e().Treemap.parser.LangiumParser;o.treemap=r}),"treemap")};function p(e,r){return i(this,null,function*(){let c=m[e];if(!c)throw new Error(`Unknown diagram type: ${e}`);o[e]||(yield c());let s=o[e].parse(r);if(s.lexerErrors.length>0||s.parserErrors.length>0)throw new u(s);return s.value})}t(p,"parse");var u=class extends Error{constructor(e){let r=e.lexerErrors.map(a=>{let s=a.line!==void 0&&!isNaN(a.line)?a.line:"?",n=a.column!==void 0&&!isNaN(a.column)?a.column:"?";return`Lexer error on line ${s}, column ${n}: ${a.message}`}).join(` -`),c=e.parserErrors.map(a=>{let s=a.token.startLine!==void 0&&!isNaN(a.token.startLine)?a.token.startLine:"?",n=a.token.startColumn!==void 0&&!isNaN(a.token.startColumn)?a.token.startColumn:"?";return`Parse error on line ${s}, column ${n}: ${a.message}`}).join(` -`);super(`Parsing failed: ${r} ${c}`),this.result=e}static{t(this,"MermaidParseError")}};export{p as a}; diff --git a/src/google/adk/cli/browser/chunk-TIJO3EOA.js b/src/google/adk/cli/browser/chunk-TIJO3EOA.js deleted file mode 100644 index 3e13a70239..0000000000 --- a/src/google/adk/cli/browser/chunk-TIJO3EOA.js +++ /dev/null @@ -1,189 +0,0 @@ -import{a as lt}from"./chunk-B2DSW4QB.js";import{h as ut}from"./chunk-NMKTPNXE.js";import{a as ot}from"./chunk-APNCZOFE.js";import{a as ct}from"./chunk-ST54LLJ3.js";import{b as rt,c as nt}from"./chunk-F57TI45K.js";import{m as pe,p as at}from"./chunk-WBLSVR3V.js";import{G as qe,I as M,M as L,R as Je,S as Ze,T as $e,U as et,V as tt,W as st,X as it,Y as D,g as He}from"./chunk-QFMJV7VH.js";import{a as Z,g as d,i as he}from"./chunk-JRNAXTJ7.js";import{a as We,b as je,j as Xe}from"./chunk-RMXJBC7V.js";var we=(function(){var e=d(function(I,l,o,p){for(o=o||{},p=I.length;p--;o[I[p]]=l);return o},"o"),i=[1,18],n=[1,19],u=[1,20],a=[1,41],c=[1,42],f=[1,26],b=[1,24],F=[1,25],T=[1,32],O=[1,33],Ae=[1,34],k=[1,45],be=[1,35],fe=[1,36],ke=[1,37],ge=[1,38],me=[1,27],Ce=[1,28],Ee=[1,29],ye=[1,30],Te=[1,31],g=[1,44],m=[1,46],C=[1,43],E=[1,47],De=[1,9],h=[1,8,9],$=[1,58],ee=[1,59],te=[1,60],se=[1,61],ie=[1,62],Fe=[1,63],Be=[1,64],v=[1,8,9,41],Ve=[1,76],R=[1,8,9,12,13,22,39,41,44,68,69,70,71,72,73,74,79,81],ae=[1,8,9,12,13,18,20,22,39,41,44,50,60,68,69,70,71,72,73,74,79,81,86,100,102,103],re=[13,60,86,100,102,103],U=[13,60,73,74,86,100,102,103],Me=[13,60,68,69,70,71,72,86,100,102,103],_e=[1,101],z=[1,118],Y=[1,114],K=[1,110],Q=[1,116],W=[1,111],j=[1,112],X=[1,113],H=[1,115],q=[1,117],Pe=[22,48,60,61,82,86,87,88,89,90],Se=[1,8,9,39,41,44],ne=[1,8,9,22],Re=[1,147],Ge=[1,8,9,61],N=[1,8,9,22,48,60,61,82,86,87,88,89,90],Ne={trace:d(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,CLASS:46,emptyBody:47,SPACE:48,ANNOTATION_START:49,ANNOTATION_END:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"CLASS",48:"SPACE",49:"ANNOTATION_START",50:"ANNOTATION_END",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[43,2],[43,3],[47,0],[47,2],[47,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:d(function(l,o,p,r,A,t,J){var s=t.length-1;switch(A){case 8:this.$=t[s-1];break;case 9:case 10:case 13:case 15:this.$=t[s];break;case 11:case 14:this.$=t[s-2]+"."+t[s];break;case 12:case 16:this.$=t[s-1]+t[s];break;case 17:case 18:this.$=t[s-1]+"~"+t[s]+"~";break;case 19:r.addRelation(t[s]);break;case 20:t[s-1].title=r.cleanupLabel(t[s]),r.addRelation(t[s-1]);break;case 31:this.$=t[s].trim(),r.setAccTitle(this.$);break;case 32:case 33:this.$=t[s].trim(),r.setAccDescription(this.$);break;case 34:r.addClassesToNamespace(t[s-3],t[s-1][0],t[s-1][1]);break;case 35:r.addClassesToNamespace(t[s-4],t[s-1][0],t[s-1][1]);break;case 36:this.$=t[s],r.addNamespace(t[s]);break;case 37:this.$=[[t[s]],[]];break;case 38:this.$=[[t[s-1]],[]];break;case 39:t[s][0].unshift(t[s-2]),this.$=t[s];break;case 40:this.$=[[],[t[s]]];break;case 41:this.$=[[],[t[s-1]]];break;case 42:t[s][1].unshift(t[s-2]),this.$=t[s];break;case 44:r.setCssClass(t[s-2],t[s]);break;case 45:r.addMembers(t[s-3],t[s-1]);break;case 47:r.setCssClass(t[s-5],t[s-3]),r.addMembers(t[s-5],t[s-1]);break;case 48:this.$=t[s],r.addClass(t[s]);break;case 49:this.$=t[s-1],r.addClass(t[s-1]),r.setClassLabel(t[s-1],t[s]);break;case 53:r.addAnnotation(t[s],t[s-2]);break;case 54:case 67:this.$=[t[s]];break;case 55:t[s].push(t[s-1]),this.$=t[s];break;case 56:break;case 57:r.addMember(t[s-1],r.cleanupLabel(t[s]));break;case 58:break;case 59:break;case 60:this.$={id1:t[s-2],id2:t[s],relation:t[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 61:this.$={id1:t[s-3],id2:t[s],relation:t[s-1],relationTitle1:t[s-2],relationTitle2:"none"};break;case 62:this.$={id1:t[s-3],id2:t[s],relation:t[s-2],relationTitle1:"none",relationTitle2:t[s-1]};break;case 63:this.$={id1:t[s-4],id2:t[s],relation:t[s-2],relationTitle1:t[s-3],relationTitle2:t[s-1]};break;case 64:this.$=r.addNote(t[s],t[s-1]);break;case 65:this.$=r.addNote(t[s]);break;case 66:this.$=t[s-2],r.defineClass(t[s-1],t[s]);break;case 68:this.$=t[s-2].concat([t[s]]);break;case 69:r.setDirection("TB");break;case 70:r.setDirection("BT");break;case 71:r.setDirection("RL");break;case 72:r.setDirection("LR");break;case 73:this.$={type1:t[s-2],type2:t[s],lineType:t[s-1]};break;case 74:this.$={type1:"none",type2:t[s],lineType:t[s-1]};break;case 75:this.$={type1:t[s-1],type2:"none",lineType:t[s]};break;case 76:this.$={type1:"none",type2:"none",lineType:t[s]};break;case 77:this.$=r.relationType.AGGREGATION;break;case 78:this.$=r.relationType.EXTENSION;break;case 79:this.$=r.relationType.COMPOSITION;break;case 80:this.$=r.relationType.DEPENDENCY;break;case 81:this.$=r.relationType.LOLLIPOP;break;case 82:this.$=r.lineType.LINE;break;case 83:this.$=r.lineType.DOTTED_LINE;break;case 84:case 90:this.$=t[s-2],r.setClickEvent(t[s-1],t[s]);break;case 85:case 91:this.$=t[s-3],r.setClickEvent(t[s-2],t[s-1]),r.setTooltip(t[s-2],t[s]);break;case 86:this.$=t[s-2],r.setLink(t[s-1],t[s]);break;case 87:this.$=t[s-3],r.setLink(t[s-2],t[s-1],t[s]);break;case 88:this.$=t[s-3],r.setLink(t[s-2],t[s-1]),r.setTooltip(t[s-2],t[s]);break;case 89:this.$=t[s-4],r.setLink(t[s-3],t[s-2],t[s]),r.setTooltip(t[s-3],t[s-1]);break;case 92:this.$=t[s-3],r.setClickEvent(t[s-2],t[s-1],t[s]);break;case 93:this.$=t[s-4],r.setClickEvent(t[s-3],t[s-2],t[s-1]),r.setTooltip(t[s-3],t[s]);break;case 94:this.$=t[s-3],r.setLink(t[s-2],t[s]);break;case 95:this.$=t[s-4],r.setLink(t[s-3],t[s-1],t[s]);break;case 96:this.$=t[s-4],r.setLink(t[s-3],t[s-1]),r.setTooltip(t[s-3],t[s]);break;case 97:this.$=t[s-5],r.setLink(t[s-4],t[s-2],t[s]),r.setTooltip(t[s-4],t[s-1]);break;case 98:this.$=t[s-2],r.setCssStyle(t[s-1],t[s]);break;case 99:r.setCssClass(t[s-1],t[s]);break;case 100:this.$=[t[s]];break;case 101:t[s-2].push(t[s]),this.$=t[s-2];break;case 103:this.$=t[s-1]+t[s];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:n,37:u,38:22,42:a,43:23,46:c,49:f,51:b,52:F,54:T,56:O,57:Ae,60:k,62:be,63:fe,64:ke,65:ge,75:me,76:Ce,78:Ee,82:ye,83:Te,86:g,100:m,102:C,103:E},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},e(De,[2,5],{8:[1,48]}),{8:[1,49]},e(h,[2,19],{22:[1,50]}),e(h,[2,21]),e(h,[2,22]),e(h,[2,23]),e(h,[2,24]),e(h,[2,25]),e(h,[2,26]),e(h,[2,27]),e(h,[2,28]),e(h,[2,29]),e(h,[2,30]),{34:[1,51]},{36:[1,52]},e(h,[2,33]),e(h,[2,56],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:$,69:ee,70:te,71:se,72:ie,73:Fe,74:Be}),{39:[1,65]},e(v,[2,43],{39:[1,67],44:[1,66]}),e(h,[2,58]),e(h,[2,59]),{16:68,60:k,86:g,100:m,102:C},{16:39,17:40,19:69,60:k,86:g,100:m,102:C,103:E},{16:39,17:40,19:70,60:k,86:g,100:m,102:C,103:E},{16:39,17:40,19:71,60:k,86:g,100:m,102:C,103:E},{60:[1,72]},{13:[1,73]},{16:39,17:40,19:74,60:k,86:g,100:m,102:C,103:E},{13:Ve,55:75},{58:77,60:[1,78]},e(h,[2,69]),e(h,[2,70]),e(h,[2,71]),e(h,[2,72]),e(R,[2,13],{16:39,17:40,19:80,18:[1,79],20:[1,81],60:k,86:g,100:m,102:C,103:E}),e(R,[2,15],{20:[1,82]}),{15:83,16:84,17:85,60:k,86:g,100:m,102:C,103:E},{16:39,17:40,19:86,60:k,86:g,100:m,102:C,103:E},e(ae,[2,126]),e(ae,[2,127]),e(ae,[2,128]),e(ae,[2,129]),e([1,8,9,12,13,20,22,39,41,44,68,69,70,71,72,73,74,79,81],[2,130]),e(De,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:87,33:i,35:n,37:u,42:a,46:c,49:f,51:b,52:F,54:T,56:O,57:Ae,60:k,62:be,63:fe,64:ke,65:ge,75:me,76:Ce,78:Ee,82:ye,83:Te,86:g,100:m,102:C,103:E}),{5:88,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:i,35:n,37:u,38:22,42:a,43:23,46:c,49:f,51:b,52:F,54:T,56:O,57:Ae,60:k,62:be,63:fe,64:ke,65:ge,75:me,76:Ce,78:Ee,82:ye,83:Te,86:g,100:m,102:C,103:E},e(h,[2,20]),e(h,[2,31]),e(h,[2,32]),{13:[1,90],16:39,17:40,19:89,60:k,86:g,100:m,102:C,103:E},{53:91,66:56,67:57,68:$,69:ee,70:te,71:se,72:ie,73:Fe,74:Be},e(h,[2,57]),{67:92,73:Fe,74:Be},e(re,[2,76],{66:93,68:$,69:ee,70:te,71:se,72:ie}),e(U,[2,77]),e(U,[2,78]),e(U,[2,79]),e(U,[2,80]),e(U,[2,81]),e(Me,[2,82]),e(Me,[2,83]),{8:[1,95],24:96,30:97,40:94,43:23,46:c,54:T,56:O},{16:98,60:k,86:g,100:m,102:C},{41:[1,100],45:99,51:_e},{50:[1,102]},{13:[1,103]},{13:[1,104]},{79:[1,105],81:[1,106]},{22:z,48:Y,59:107,60:K,82:Q,84:108,85:109,86:W,87:j,88:X,89:H,90:q},{60:[1,119]},{13:Ve,55:120},e(v,[2,65]),e(v,[2,131]),{22:z,48:Y,59:121,60:K,61:[1,122],82:Q,84:108,85:109,86:W,87:j,88:X,89:H,90:q},e(Pe,[2,67]),{16:39,17:40,19:123,60:k,86:g,100:m,102:C,103:E},e(R,[2,16]),e(R,[2,17]),e(R,[2,18]),{39:[2,36]},{15:125,16:84,17:85,18:[1,124],39:[2,9],60:k,86:g,100:m,102:C,103:E},{39:[2,10]},e(Se,[2,48],{11:126,12:[1,127]}),e(De,[2,7]),{9:[1,128]},e(ne,[2,60]),{16:39,17:40,19:129,60:k,86:g,100:m,102:C,103:E},{13:[1,131],16:39,17:40,19:130,60:k,86:g,100:m,102:C,103:E},e(re,[2,75],{66:132,68:$,69:ee,70:te,71:se,72:ie}),e(re,[2,74]),{41:[1,133]},{24:96,30:97,40:134,43:23,46:c,54:T,56:O},{8:[1,135],41:[2,37]},{8:[1,136],41:[2,40]},e(v,[2,44],{39:[1,137]}),{41:[1,138]},e(v,[2,46]),{41:[2,54],45:139,51:_e},{16:39,17:40,19:140,60:k,86:g,100:m,102:C,103:E},e(h,[2,84],{13:[1,141]}),e(h,[2,86],{13:[1,143],77:[1,142]}),e(h,[2,90],{13:[1,144],80:[1,145]}),{13:[1,146]},e(h,[2,98],{61:Re}),e(Ge,[2,100],{85:148,22:z,48:Y,60:K,82:Q,86:W,87:j,88:X,89:H,90:q}),e(N,[2,102]),e(N,[2,104]),e(N,[2,105]),e(N,[2,106]),e(N,[2,107]),e(N,[2,108]),e(N,[2,109]),e(N,[2,110]),e(N,[2,111]),e(N,[2,112]),e(h,[2,99]),e(v,[2,64]),e(h,[2,66],{61:Re}),{60:[1,149]},e(R,[2,14]),{15:150,16:84,17:85,60:k,86:g,100:m,102:C,103:E},{39:[2,12]},e(Se,[2,49]),{13:[1,151]},{1:[2,4]},e(ne,[2,62]),e(ne,[2,61]),{16:39,17:40,19:152,60:k,86:g,100:m,102:C,103:E},e(re,[2,73]),e(h,[2,34]),{41:[1,153]},{24:96,30:97,40:154,41:[2,38],43:23,46:c,54:T,56:O},{24:96,30:97,40:155,41:[2,41],43:23,46:c,54:T,56:O},{45:156,51:_e},e(v,[2,45]),{41:[2,55]},e(h,[2,53]),e(h,[2,85]),e(h,[2,87]),e(h,[2,88],{77:[1,157]}),e(h,[2,91]),e(h,[2,92],{13:[1,158]}),e(h,[2,94],{13:[1,160],77:[1,159]}),{22:z,48:Y,60:K,82:Q,84:161,85:109,86:W,87:j,88:X,89:H,90:q},e(N,[2,103]),e(Pe,[2,68]),{39:[2,11]},{14:[1,162]},e(ne,[2,63]),e(h,[2,35]),{41:[2,39]},{41:[2,42]},{41:[1,163]},e(h,[2,89]),e(h,[2,93]),e(h,[2,95]),e(h,[2,96],{77:[1,164]}),e(Ge,[2,101],{85:148,22:z,48:Y,60:K,82:Q,86:W,87:j,88:X,89:H,90:q}),e(Se,[2,8]),e(v,[2,47]),e(h,[2,97])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],83:[2,36],85:[2,10],125:[2,12],128:[2,4],139:[2,55],150:[2,11],154:[2,39],155:[2,42]},parseError:d(function(l,o){if(o.recoverable)this.trace(l);else{var p=new Error(l);throw p.hash=o,p}},"parseError"),parse:d(function(l){var o=this,p=[0],r=[],A=[null],t=[],J=this.table,s="",le=0,Ue=0,ze=0,bt=2,Ye=1,ft=t.slice.call(arguments,1),y=Object.create(this.lexer),w={yy:{}};for(var Le in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Le)&&(w.yy[Le]=this.yy[Le]);y.setInput(l,w.yy),w.yy.lexer=y,w.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var xe=y.yylloc;t.push(xe);var kt=y.options&&y.options.ranges;typeof w.yy.parseError=="function"?this.parseError=w.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function gt(_){p.length=p.length-2*_,A.length=A.length-_,t.length=t.length-_}d(gt,"popStack");function Ke(){var _;return _=r.pop()||y.lex()||Ye,typeof _!="number"&&(_ instanceof Array&&(r=_,_=r.pop()),_=o.symbols_[_]||_),_}d(Ke,"lex");for(var B,ve,V,S,Tt,Ie,G={},oe,x,Qe,ce;;){if(V=p[p.length-1],this.defaultActions[V]?S=this.defaultActions[V]:((B===null||typeof B>"u")&&(B=Ke()),S=J[V]&&J[V][B]),typeof S>"u"||!S.length||!S[0]){var Oe="";ce=[];for(oe in J[V])this.terminals_[oe]&&oe>bt&&ce.push("'"+this.terminals_[oe]+"'");y.showPosition?Oe="Parse error on line "+(le+1)+`: -`+y.showPosition()+` -Expecting `+ce.join(", ")+", got '"+(this.terminals_[B]||B)+"'":Oe="Parse error on line "+(le+1)+": Unexpected "+(B==Ye?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(Oe,{text:y.match,token:this.terminals_[B]||B,line:y.yylineno,loc:xe,expected:ce})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+V+", token: "+B);switch(S[0]){case 1:p.push(B),A.push(y.yytext),t.push(y.yylloc),p.push(S[1]),B=null,ve?(B=ve,ve=null):(Ue=y.yyleng,s=y.yytext,le=y.yylineno,xe=y.yylloc,ze>0&&ze--);break;case 2:if(x=this.productions_[S[1]][1],G.$=A[A.length-x],G._$={first_line:t[t.length-(x||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(x||1)].first_column,last_column:t[t.length-1].last_column},kt&&(G._$.range=[t[t.length-(x||1)].range[0],t[t.length-1].range[1]]),Ie=this.performAction.apply(G,[s,Ue,le,w.yy,S[1],A,t].concat(ft)),typeof Ie<"u")return Ie;x&&(p=p.slice(0,-1*x*2),A=A.slice(0,-1*x),t=t.slice(0,-1*x)),p.push(this.productions_[S[1]][0]),A.push(G.$),t.push(G._$),Qe=J[p[p.length-2]][p[p.length-1]],p.push(Qe);break;case 3:return!0}}return!0},"parse")},At=(function(){var I={EOF:1,parseError:d(function(o,p){if(this.yy.parser)this.yy.parser.parseError(o,p);else throw new Error(o)},"parseError"),setInput:d(function(l,o){return this.yy=o||this.yy||{},this._input=l,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:d(function(){var l=this._input[0];this.yytext+=l,this.yyleng++,this.offset++,this.match+=l,this.matched+=l;var o=l.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),l},"input"),unput:d(function(l){var o=l.length,p=l.split(/(?:\r\n?|\n)/g);this._input=l+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),p.length-1&&(this.yylineno-=p.length-1);var A=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:p?(p.length===r.length?this.yylloc.first_column:0)+r[r.length-p.length].length-p[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[A[0],A[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},"unput"),more:d(function(){return this._more=!0,this},"more"),reject:d(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:d(function(l){this.unput(this.match.slice(l))},"less"),pastInput:d(function(){var l=this.matched.substr(0,this.matched.length-this.match.length);return(l.length>20?"...":"")+l.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:d(function(){var l=this.match;return l.length<20&&(l+=this._input.substr(0,20-l.length)),(l.substr(0,20)+(l.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:d(function(){var l=this.pastInput(),o=new Array(l.length+1).join("-");return l+this.upcomingInput()+` -`+o+"^"},"showPosition"),test_match:d(function(l,o){var p,r,A;if(this.options.backtrack_lexer&&(A={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(A.yylloc.range=this.yylloc.range.slice(0))),r=l[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+l[0].length},this.yytext+=l[0],this.match+=l[0],this.matches=l,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(l[0].length),this.matched+=l[0],p=this.performAction.call(this,this.yy,this,o,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),p)return p;if(this._backtrack){for(var t in A)this[t]=A[t];return!1}return!1},"test_match"),next:d(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var l,o,p,r;this._more||(this.yytext="",this.match="");for(var A=this._currentRules(),t=0;to[0].length)){if(o=p,r=t,this.options.backtrack_lexer){if(l=this.test_match(p,A[t]),l!==!1)return l;if(this._backtrack){o=!1;continue}else return!1}else if(!this.options.flex)break}return o?(l=this.test_match(o,A[r]),l!==!1?l:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:d(function(){var o=this.next();return o||this.lex()},"lex"),begin:d(function(o){this.conditionStack.push(o)},"begin"),popState:d(function(){var o=this.conditionStack.length-1;return o>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:d(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:d(function(o){return o=this.conditionStack.length-1-Math.abs(o||0),o>=0?this.conditionStack[o]:"INITIAL"},"topState"),pushState:d(function(o){this.begin(o)},"pushState"),stateStackSize:d(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:d(function(o,p,r,A){var t=A;switch(r){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:return this.popState(),41;break;case 34:return"EOF_IN_STRUCT";case 35:return 8;case 36:break;case 37:return"EDGE_STATE";case 38:return this.begin("class"),46;break;case 39:return this.popState(),8;break;case 40:break;case 41:return this.popState(),this.popState(),41;break;case 42:return this.begin("class-body"),39;break;case 43:return this.popState(),41;break;case 44:return"EOF_IN_STRUCT";case 45:return"EDGE_STATE";case 46:return"OPEN_IN_STRUCT";case 47:break;case 48:return"MEMBER";case 49:return 83;case 50:return 75;case 51:return 76;case 52:return 78;case 53:return 54;case 54:return 56;case 55:return 49;case 56:return 50;case 57:return 81;case 58:this.popState();break;case 59:return"GENERICTYPE";case 60:this.begin("generic");break;case 61:this.popState();break;case 62:return"BQUOTE_STR";case 63:this.begin("bqstring");break;case 64:return 77;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 69;case 69:return 69;case 70:return 71;case 71:return 71;case 72:return 70;case 73:return 68;case 74:return 72;case 75:return 73;case 76:return 74;case 77:return 22;case 78:return 44;case 79:return 100;case 80:return 18;case 81:return"PLUS";case 82:return 87;case 83:return 61;case 84:return 89;case 85:return 89;case 86:return 90;case 87:return"EQUALS";case 88:return"EQUALS";case 89:return 60;case 90:return 12;case 91:return 14;case 92:return"PUNCTUATION";case 93:return 86;case 94:return 102;case 95:return 48;case 96:return 48;case 97:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,33,34,35,36,37,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},namespace:{rules:[26,29,30,31,32,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},"class-body":{rules:[26,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},class:{rules:[26,39,40,41,42,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_descr:{rules:[9,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},acc_title:{rules:[7,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_args:{rules:[22,23,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},callback_name:{rules:[19,20,21,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},href:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},struct:{rules:[26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},generic:{rules:[26,49,50,51,52,53,54,55,56,57,58,59,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},bqstring:{rules:[26,49,50,51,52,53,54,55,56,57,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},string:{rules:[24,25,26,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,86,87,88,89,90,91,92,93,94,95,97],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,38,49,50,51,52,53,54,55,56,57,60,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97],inclusive:!0}}};return I})();Ne.lexer=At;function ue(){this.yy={}}return d(ue,"Parser"),ue.prototype=Ne,Ne.Parser=ue,new ue})();we.parser=we;var vt=we,ht=["#","+","~","-",""],pt=class{static{d(this,"ClassMember")}constructor(e,i){this.memberType=i,this.visibility="",this.classifier="",this.text="";let n=qe(e,D());this.parseMember(n)}getDisplayDetails(){let e=this.visibility+M(this.id);this.memberType==="method"&&(e+=`(${M(this.parameters.trim())})`,this.returnType&&(e+=" : "+M(this.returnType))),e=e.trim();let i=this.parseClassifier();return{displayText:e,cssStyle:i}}parseMember(e){let i="";if(this.memberType==="method"){let a=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(e);if(a){let c=a[1]?a[1].trim():"";if(ht.includes(c)&&(this.visibility=c),this.id=a[2],this.parameters=a[3]?a[3].trim():"",i=a[4]?a[4].trim():"",this.returnType=a[5]?a[5].trim():"",i===""){let f=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(f)&&(i=f,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{let u=e.length,a=e.substring(0,1),c=e.substring(u-1);ht.includes(a)&&(this.visibility=a),/[$*]/.exec(c)&&(i=c),this.id=e.substring(this.visibility===""?0:1,i===""?u:u-1)}this.classifier=i,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let n=`${this.visibility?"\\"+this.visibility:""}${M(this.id)}${this.memberType==="method"?`(${M(this.parameters)})${this.returnType?" : "+M(this.returnType):""}`:""}`;this.text=n.replaceAll("<","<").replaceAll(">",">"),this.text.startsWith("\\<")&&(this.text=this.text.replace("\\<","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},de="classId-",dt=0,P=d(e=>L.sanitizeText(e,D()),"sanitizeText"),wt=class{constructor(){this.relations=[],this.classes=new Map,this.styleClasses=new Map,this.notes=new Map,this.interfaces=[],this.namespaces=new Map,this.namespaceCounter=0,this.functions=[],this.lineType={LINE:0,DOTTED_LINE:1},this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},this.setupToolTips=d(e=>{let i=ut();Z(e).select("svg").selectAll("g").filter(function(){return Z(this).attr("title")!==null}).on("mouseover",a=>{let c=Z(a.currentTarget),f=c.attr("title");if(!f)return;let b=a.currentTarget.getBoundingClientRect();i.transition().duration(200).style("opacity",".9"),i.html(He.sanitize(f)).style("left",`${window.scrollX+b.left+b.width/2}px`).style("top",`${window.scrollY+b.bottom+4}px`),c.classed("hover",!0)}).on("mouseout",a=>{i.transition().duration(500).style("opacity",0),Z(a.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=Ze,this.getAccTitle=$e,this.setAccDescription=et,this.getAccDescription=tt,this.setDiagramTitle=st,this.getDiagramTitle=it,this.getConfig=d(()=>D().class,"getConfig"),this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{d(this,"ClassDB")}splitClassNameAndType(e){let i=L.sanitizeText(e,D()),n="",u=i;if(i.indexOf("~")>0){let a=i.split("~");u=P(a[0]),n=P(a[1])}return{className:u,type:n}}setClassLabel(e,i){let n=L.sanitizeText(e,D());i&&(i=P(i));let{className:u}=this.splitClassNameAndType(n);this.classes.get(u).label=i,this.classes.get(u).text=`${i}${this.classes.get(u).type?`<${this.classes.get(u).type}>`:""}`}addClass(e){let i=L.sanitizeText(e,D()),{className:n,type:u}=this.splitClassNameAndType(i);if(this.classes.has(n))return;let a=L.sanitizeText(n,D());this.classes.set(a,{id:a,type:u,label:a,text:`${a}${u?`<${u}>`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:de+a+"-"+dt}),dt++}addInterface(e,i){let n={id:`interface${this.interfaces.length}`,label:e,classId:i};this.interfaces.push(n)}lookUpDomId(e){let i=L.sanitizeText(e,D());if(this.classes.has(i))return this.classes.get(i).domId;throw new Error("Class not found: "+i)}clear(){this.relations=[],this.classes=new Map,this.notes=new Map,this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.direction="TB",Je()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(e){let i=typeof e=="number"?`note${e}`:e;return this.notes.get(i)}getNotes(){return this.notes}addRelation(e){he.debug("Adding relation: "+JSON.stringify(e));let i=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];e.relation.type1===this.relationType.LOLLIPOP&&!i.includes(e.relation.type2)?(this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`):e.relation.type2===this.relationType.LOLLIPOP&&!i.includes(e.relation.type1)?(this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`):(this.addClass(e.id1),this.addClass(e.id2)),e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=L.sanitizeText(e.relationTitle1.trim(),D()),e.relationTitle2=L.sanitizeText(e.relationTitle2.trim(),D()),this.relations.push(e)}addAnnotation(e,i){let n=this.splitClassNameAndType(e).className;this.classes.get(n).annotations.push(i)}addMember(e,i){this.addClass(e);let n=this.splitClassNameAndType(e).className,u=this.classes.get(n);if(typeof i=="string"){let a=i.trim();a.startsWith("<<")&&a.endsWith(">>")?u.annotations.push(P(a.substring(2,a.length-2))):a.indexOf(")")>0?u.methods.push(new pt(a,"method")):a&&u.members.push(new pt(a,"attribute"))}}addMembers(e,i){Array.isArray(i)&&(i.reverse(),i.forEach(n=>this.addMember(e,n)))}addNote(e,i){let n=this.notes.size,u={id:`note${n}`,class:i,text:e,index:n};return this.notes.set(u.id,u),u.id}cleanupLabel(e){return e.startsWith(":")&&(e=e.substring(1)),P(e.trim())}setCssClass(e,i){e.split(",").forEach(n=>{let u=n;/\d/.exec(n[0])&&(u=de+u);let a=this.classes.get(u);a&&(a.cssClasses+=" "+i)})}defineClass(e,i){for(let n of e){let u=this.styleClasses.get(n);u===void 0&&(u={id:n,styles:[],textStyles:[]},this.styleClasses.set(n,u)),i&&i.forEach(a=>{if(/color/.exec(a)){let c=a.replace("fill","bgFill");u.textStyles.push(c)}u.styles.push(a)}),this.classes.forEach(a=>{a.cssClasses.includes(n)&&a.styles.push(...i.flatMap(c=>c.split(",")))})}}setTooltip(e,i){e.split(",").forEach(n=>{i!==void 0&&(this.classes.get(n).tooltip=P(i))})}getTooltip(e,i){return i&&this.namespaces.has(i)?this.namespaces.get(i).classes.get(e).tooltip:this.classes.get(e).tooltip}setLink(e,i,n){let u=D();e.split(",").forEach(a=>{let c=a;/\d/.exec(a[0])&&(c=de+c);let f=this.classes.get(c);f&&(f.link=pe.formatUrl(i,u),u.securityLevel==="sandbox"?f.linkTarget="_top":typeof n=="string"?f.linkTarget=P(n):f.linkTarget="_blank")}),this.setCssClass(e,"clickable")}setClickEvent(e,i,n){e.split(",").forEach(u=>{this.setClickFunc(u,i,n),this.classes.get(u).haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,i,n){let u=L.sanitizeText(e,D());if(D().securityLevel!=="loose"||i===void 0)return;let c=u;if(this.classes.has(c)){let f=this.lookUpDomId(c),b=[];if(typeof n=="string"){b=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let F=0;F{let F=document.querySelector(`[id="${f}"]`);F!==null&&F.addEventListener("click",()=>{pe.runFunc(i,...b)},!1)})}}bindFunctions(e){this.functions.forEach(i=>{i(e)})}escapeHtml(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}getDirection(){return this.direction}setDirection(e){this.direction=e}addNamespace(e){this.namespaces.has(e)||(this.namespaces.set(e,{id:e,classes:new Map,notes:new Map,children:new Map,domId:de+e+"-"+this.namespaceCounter}),this.namespaceCounter++)}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,i,n){if(this.namespaces.has(e)){for(let u of i){let{className:a}=this.splitClassNameAndType(u),c=this.getClass(a);c.parent=e,this.namespaces.get(e).classes.set(a,c)}for(let u of n){let a=this.getNote(u);a.parent=e,this.namespaces.get(e).notes.set(u,a)}}}setCssStyle(e,i){let n=this.classes.get(e);if(!(!i||!n))for(let u of i)u.includes(",")?n.styles.push(...u.split(",")):n.styles.push(u)}getArrowMarker(e){let i;switch(e){case 0:i="aggregation";break;case 1:i="extension";break;case 2:i="composition";break;case 3:i="dependency";break;case 4:i="lollipop";break;default:i="none"}return i}getData(){let e=[],i=[],n=D();for(let a of this.namespaces.values()){let c={id:a.id,label:a.id,isGroup:!0,padding:n.class.padding??16,shape:"rect",cssStyles:[],look:n.look};e.push(c)}for(let a of this.classes.values()){let c=je(We({},a),{type:void 0,isGroup:!1,parentId:a.parent,look:n.look});e.push(c)}for(let a of this.notes.values()){let c={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:n.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${n.themeVariables.noteBkgColor}`,`stroke: ${n.themeVariables.noteBorderColor}`],look:n.look,parentId:a.parent,labelType:"markdown"};e.push(c);let f=this.classes.get(a.class)?.id;if(f){let b={id:`edgeNote${a.index}`,start:a.id,end:f,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:n.look};i.push(b)}}for(let a of this.interfaces){let c={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:n.look};e.push(c)}let u=0;for(let a of this.relations){u++;let c={id:at(a.id1,a.id2,{prefix:"id",counter:u}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:n.look,labelType:"markdown"};i.push(c)}return{nodes:e,edges:i,other:{},config:n,direction:this.getDirection()}}},mt=d(e=>`g.classGroup text { - fill: ${e.nodeBorder||e.classText}; - stroke: none; - font-family: ${e.fontFamily}; - font-size: 10px; - - .title { - font-weight: bolder; - } - -} - - .cluster-label text { - fill: ${e.titleColor}; - } - .cluster-label span { - color: ${e.titleColor}; - } - .cluster-label span p { - background-color: transparent; - } - - .cluster rect { - fill: ${e.clusterBkg}; - stroke: ${e.clusterBorder}; - stroke-width: 1px; - } - - .cluster text { - fill: ${e.titleColor}; - } - - .cluster span { - color: ${e.titleColor}; - } - -.nodeLabel, .edgeLabel { - color: ${e.classText}; -} -.edgeLabel .label rect { - fill: ${e.mainBkg}; -} -.label text { - fill: ${e.classText}; -} - -.labelBkg { - background: ${e.mainBkg}; -} -.edgeLabel .label span { - background: ${e.mainBkg}; -} - -.classTitle { - font-weight: bolder; -} -.node rect, - .node circle, - .node ellipse, - .node polygon, - .node path { - fill: ${e.mainBkg}; - stroke: ${e.nodeBorder}; - stroke-width: 1px; - } - - -.divider { - stroke: ${e.nodeBorder}; - stroke-width: 1; -} - -g.clickable { - cursor: pointer; -} - -g.classGroup rect { - fill: ${e.mainBkg}; - stroke: ${e.nodeBorder}; -} - -g.classGroup line { - stroke: ${e.nodeBorder}; - stroke-width: 1; -} - -.classLabel .box { - stroke: none; - stroke-width: 0; - fill: ${e.mainBkg}; - opacity: 0.5; -} - -.classLabel .label { - fill: ${e.nodeBorder}; - font-size: 10px; -} - -.relation { - stroke: ${e.lineColor}; - stroke-width: 1; - fill: none; -} - -.dashed-line{ - stroke-dasharray: 3; -} - -.dotted-line{ - stroke-dasharray: 1 2; -} - -#compositionStart, .composition { - fill: ${e.lineColor} !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#compositionEnd, .composition { - fill: ${e.lineColor} !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#dependencyStart, .dependency { - fill: ${e.lineColor} !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#dependencyStart, .dependency { - fill: ${e.lineColor} !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#extensionStart, .extension { - fill: transparent !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#extensionEnd, .extension { - fill: transparent !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#aggregationStart, .aggregation { - fill: transparent !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#aggregationEnd, .aggregation { - fill: transparent !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#lollipopStart, .lollipop { - fill: ${e.mainBkg} !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -#lollipopEnd, .lollipop { - fill: ${e.mainBkg} !important; - stroke: ${e.lineColor} !important; - stroke-width: 1; -} - -.edgeTerminals { - font-size: 11px; - line-height: initial; -} - -.classTitleText { - text-anchor: middle; - font-size: 18px; - fill: ${e.textColor}; -} - ${lt()} -`,"getStyles"),Vt=mt,Ct=d((e,i="TB")=>{if(!e.doc)return i;let n=i;for(let u of e.doc)u.stmt==="dir"&&(n=u.value);return n},"getDir"),Et=d(function(e,i){return i.db.getClasses()},"getClasses"),yt=d(function(e,i,n,u){return Xe(this,null,function*(){he.info("REF0:"),he.info("Drawing class diagram (v3)",i);let{securityLevel:a,state:c,layout:f}=D(),b=u.db.getData(),F=ot(i,a);b.type=u.type,b.layoutAlgorithm=nt(f),b.nodeSpacing=c?.nodeSpacing||50,b.rankSpacing=c?.rankSpacing||50,b.markers=["aggregation","extension","composition","dependency","lollipop"],b.diagramId=i,yield rt(b,F);let T=8;pe.insertTitle(F,"classDiagramTitleText",c?.titleTopMargin??25,u.db.getDiagramTitle()),ct(F,T,"classDiagram",c?.useMaxWidth??!0)})},"draw"),Mt={getClasses:Et,draw:yt,getDir:Ct};export{vt as a,wt as b,Vt as c,Mt as d}; diff --git a/src/google/adk/cli/browser/chunk-TNJPXCAB.js b/src/google/adk/cli/browser/chunk-TNJPXCAB.js deleted file mode 100644 index 1dde258711..0000000000 --- a/src/google/adk/cli/browser/chunk-TNJPXCAB.js +++ /dev/null @@ -1,7 +0,0 @@ -import{a as T,b as Y,c as K,d as yt}from"./chunk-JHZIBEJC.js";import{c as B}from"./chunk-W7PRDKNL.js";import{a as kt}from"./chunk-DRBE27N3.js";import{a as gt}from"./chunk-PRKFGJVH.js";import{c as ut,d as xt}from"./chunk-VDPKVNDJ.js";import{f as bt}from"./chunk-WXI2IBAH.js";import{m as O}from"./chunk-WBLSVR3V.js";import{E as F,Y as E}from"./chunk-QFMJV7VH.js";import{$ as ct,L as N,M as nt,O as st,P as ot,Q as G,U as it,X as lt,a as S,aa as dt,ba as ft,ca as pt,da as ht,ea as mt,g as p,i as b}from"./chunk-JRNAXTJ7.js";import{a as at,j as et}from"./chunk-RMXJBC7V.js";var Ot=p((r,t,a,n,i,s)=>{t.arrowTypeStart&&wt(r,"start",t.arrowTypeStart,a,n,i,s),t.arrowTypeEnd&&wt(r,"end",t.arrowTypeEnd,a,n,i,s)},"addEdgeMarkers"),Tt={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},wt=p((r,t,a,n,i,s,e)=>{let o=Tt[a];if(!o){b.warn(`Unknown arrow type: ${a}`);return}let c=o.type,m=`${i}_${s}-${c}${t==="start"?"Start":"End"}`;if(e&&e.trim()!==""){let y=e.replace(/[^\dA-Za-z]/g,"_"),f=`${m}_${y}`;if(!document.getElementById(f)){let d=document.getElementById(m);if(d){let u=d.cloneNode(!0);u.id=f,u.querySelectorAll("path, circle, line").forEach(k=>{k.setAttribute("stroke",e),o.fill&&k.setAttribute("fill",e)}),d.parentNode?.appendChild(u)}}r.attr(`marker-${t}`,`url(${n}#${f})`)}else r.attr(`marker-${t}`,`url(${n}#${m})`)},"addEdgeMarker"),Xt=p(r=>typeof r=="string"?r:E()?.flowchart?.curve,"resolveEdgeCurveType"),Q=new Map,w=new Map,cr=p(()=>{Q.clear(),w.clear()},"clear"),C=p(r=>r?typeof r=="string"?r:r.reduce((t,a)=>t+";"+a,""):"","getLabelStyles"),dr=p((r,t)=>et(null,null,function*(){let a=E(),n=F(a),{labelStyles:i}=xt(t);t.labelStyle=i;let s=r.insert("g").attr("class","edgeLabel"),e=s.insert("g").attr("class","label").attr("data-id",t.id),o=t.labelType==="markdown",l=yield bt(r,t.label,{style:C(t.labelStyle),useHtmlLabels:n,addSvgBackground:!0,isNode:!1,markdown:o,width:o?void 0:void 0},a);e.node().appendChild(l),b.info("abc82",t,t.labelType);let m=l.getBBox(),y=m;if(n){let d=l.children[0],u=S(l);m=d.getBoundingClientRect(),y=m,u.attr("width",m.width),u.attr("height",m.height)}else{let d=S(l).select("text").node();d&&typeof d.getBBox=="function"&&(y=d.getBBox())}e.attr("transform",T(y,n)),Q.set(t.id,s),t.width=m.width,t.height=m.height;let f;if(t.startLabelLeft){let d=r.insert("g").attr("class","edgeTerminals"),u=d.insert("g").attr("class","inner"),h=yield B(u,t.startLabelLeft,C(t.labelStyle)||"",!1,!1);f=h;let k=h.getBBox();if(n){let x=h.children[0],L=S(h);k=x.getBoundingClientRect(),L.attr("width",k.width),L.attr("height",k.height)}u.attr("transform",T(k,n)),w.get(t.id)||w.set(t.id,{}),w.get(t.id).startLeft=d,W(f,t.startLabelLeft)}if(t.startLabelRight){let d=r.insert("g").attr("class","edgeTerminals"),u=d.insert("g").attr("class","inner"),h=yield B(u,t.startLabelRight,C(t.labelStyle)||"",!1,!1);f=h,u.node().appendChild(h);let k=h.getBBox();if(n){let x=h.children[0],L=S(h);k=x.getBoundingClientRect(),L.attr("width",k.width),L.attr("height",k.height)}u.attr("transform",T(k,n)),w.get(t.id)||w.set(t.id,{}),w.get(t.id).startRight=d,W(f,t.startLabelRight)}if(t.endLabelLeft){let d=r.insert("g").attr("class","edgeTerminals"),u=d.insert("g").attr("class","inner"),h=yield B(u,t.endLabelLeft,C(t.labelStyle)||"",!1,!1);f=h;let k=h.getBBox();if(n){let x=h.children[0],L=S(h);k=x.getBoundingClientRect(),L.attr("width",k.width),L.attr("height",k.height)}u.attr("transform",T(k,n)),d.node().appendChild(h),w.get(t.id)||w.set(t.id,{}),w.get(t.id).endLeft=d,W(f,t.endLabelLeft)}if(t.endLabelRight){let d=r.insert("g").attr("class","edgeTerminals"),u=d.insert("g").attr("class","inner"),h=yield B(u,t.endLabelRight,C(t.labelStyle)||"",!1,!1);f=h;let k=h.getBBox();if(n){let x=h.children[0],L=S(h);k=x.getBoundingClientRect(),L.attr("width",k.width),L.attr("height",k.height)}u.attr("transform",T(k,n)),d.node().appendChild(h),w.get(t.id)||w.set(t.id,{}),w.get(t.id).endRight=d,W(f,t.endLabelRight)}return l}),"insertEdgeLabel");function W(r,t){F(E())&&r&&(r.style.width=t.length*9+"px",r.style.height="12px")}p(W,"setTerminalWidth");var fr=p((r,t)=>{b.debug("Moving label abc88 ",r.id,r.label,Q.get(r.id),t);let a=t.updatedPath?t.updatedPath:t.originalPath,n=E(),{subGraphTitleTotalMargin:i}=kt(n);if(r.label){let s=Q.get(r.id),e=r.x,o=r.y;if(a){let c=O.calcLabelPosition(a);b.debug("Moving label "+r.label+" from (",e,",",o,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(e=c.x,o=c.y)}s.attr("transform",`translate(${e}, ${o+i/2})`)}if(r.startLabelLeft){let s=w.get(r.id).startLeft,e=r.x,o=r.y;if(a){let c=O.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_left",a);e=c.x,o=c.y}s.attr("transform",`translate(${e}, ${o})`)}if(r.startLabelRight){let s=w.get(r.id).startRight,e=r.x,o=r.y;if(a){let c=O.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_right",a);e=c.x,o=c.y}s.attr("transform",`translate(${e}, ${o})`)}if(r.endLabelLeft){let s=w.get(r.id).endLeft,e=r.x,o=r.y;if(a){let c=O.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_left",a);e=c.x,o=c.y}s.attr("transform",`translate(${e}, ${o})`)}if(r.endLabelRight){let s=w.get(r.id).endRight,e=r.x,o=r.y;if(a){let c=O.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_right",a);e=c.x,o=c.y}s.attr("transform",`translate(${e}, ${o})`)}},"positionEdgeLabel"),Yt=p((r,t)=>{let a=r.x,n=r.y,i=Math.abs(t.x-a),s=Math.abs(t.y-n),e=r.width/2,o=r.height/2;return i>=e||s>=o},"outsideNode"),Bt=p((r,t,a)=>{b.debug(`intersection calc abc89: - outsidePoint: ${JSON.stringify(t)} - insidePoint : ${JSON.stringify(a)} - node : x:${r.x} y:${r.y} w:${r.width} h:${r.height}`);let n=r.x,i=r.y,s=Math.abs(n-a.x),e=r.width/2,o=a.xMath.abs(n-t.x)*c){let y=a.y{b.warn("abc88 cutPathAtIntersect",r,t);let a=[],n=r[0],i=!1;return r.forEach(s=>{if(b.info("abc88 checking point",s,t),!Yt(t,s)&&!i){let e=Bt(t,n,s);b.debug("abc88 inside",s,n,e),b.debug("abc88 intersection",e,t);let o=!1;a.forEach(c=>{o=o||c.x===e.x&&c.y===e.y}),a.some(c=>c.x===e.x&&c.y===e.y)?b.warn("abc88 no intersect",e,a):a.push(e),i=!0}else b.warn("abc88 outside",s,n),n=s,i||a.push(s)}),b.debug("returning points",a),a},"cutPathAtIntersect");function vt(r){let t=[],a=[];for(let n=1;n5&&Math.abs(s.y-i.y)>5||i.y===s.y&&s.x===e.x&&Math.abs(s.x-i.x)>5&&Math.abs(s.y-e.y)>5)&&(t.push(s),a.push(n))}return{cornerPoints:t,cornerPointPositions:a}}p(vt,"extractCornerPoints");var Mt=p(function(r,t,a){let n=t.x-r.x,i=t.y-r.y,s=Math.sqrt(n*n+i*i),e=a/s;return{x:t.x-e*n,y:t.y-e*i}},"findAdjacentPoint"),Ct=p(function(r){let{cornerPointPositions:t}=vt(r),a=[];for(let n=0;n10&&Math.abs(s.y-i.y)>=10){b.debug("Corner point fixing",Math.abs(s.x-i.x),Math.abs(s.y-i.y));let d=5;e.x===o.x?f={x:l<0?o.x-d+y:o.x+d-y,y:m<0?o.y-y:o.y+y}:f={x:l<0?o.x-y:o.x+y,y:m<0?o.y-d+y:o.y+d-y}}else b.debug("Corner point skipping fixing",Math.abs(s.x-i.x),Math.abs(s.y-i.y));a.push(f,c)}else a.push(r[n]);return a},"fixCorners"),Wt=p((r,t,a)=>{let n=r-t-a,i=2,s=2,e=i+s,o=Math.floor(n/e),c=Array(o).fill(`${i} ${s}`).join(" ");return`0 ${t} ${c} ${a}`},"generateDashArray"),pr=p(function(r,t,a,n,i,s,e,o=!1){let{handDrawnSeed:c}=E(),l=t.points,m=!1,y=i;var f=s;let d=[];for(let v in t.cssCompiledStyles)ut(v)||d.push(t.cssCompiledStyles[v]);b.debug("UIO intersect check",t.points,f.x,y.x),f.intersect&&y.intersect&&!o&&(l=l.slice(1,t.points.length-1),l.unshift(y.intersect(l[0])),b.debug("Last point UIO",t.start,"-->",t.end,l[l.length-1],f,f.intersect(l[l.length-1])),l.push(f.intersect(l[l.length-1])));let u=btoa(JSON.stringify(l));t.toCluster&&(b.info("to cluster abc88",a.get(t.toCluster)),l=Lt(t.points,a.get(t.toCluster).node),m=!0),t.fromCluster&&(b.debug("from cluster abc88",a.get(t.fromCluster),JSON.stringify(l,null,2)),l=Lt(l.reverse(),a.get(t.fromCluster).node).reverse(),m=!0);let h=l.filter(v=>!Number.isNaN(v.y)),k=Xt(t.curve);k!=="rounded"&&(h=Ct(h));let x=N;switch(k){case"linear":x=N;break;case"basis":x=G;break;case"cardinal":x=it;break;case"bumpX":x=st;break;case"bumpY":x=ot;break;case"catmullRom":x=lt;break;case"monotoneX":x=ct;break;case"monotoneY":x=dt;break;case"natural":x=ft;break;case"step":x=pt;break;case"stepAfter":x=mt;break;case"stepBefore":x=ht;break;case"rounded":x=N;break;default:x=G}let{x:L,y:Z}=yt(t),j=nt().x(L).y(Z).curve(x),M;switch(t.thickness){case"normal":M="edge-thickness-normal";break;case"thick":M="edge-thickness-thick";break;case"invisible":M="edge-thickness-invisible";break;default:M="edge-thickness-normal"}switch(t.pattern){case"solid":M+=" edge-pattern-solid";break;case"dotted":M+=" edge-pattern-dotted";break;case"dashed":M+=" edge-pattern-dashed";break;default:M+=" edge-pattern-solid"}let g,H=k==="rounded"?_t($t(h,t),5):j(h),_=Array.isArray(t.style)?t.style:[t.style],R=_.find(v=>v?.startsWith("stroke:")),$="";t.animate&&($="edge-animation-fast"),t.animation&&($="edge-animation-"+t.animation);let rt=!1;if(t.look==="handDrawn"){let v=gt.svg(r);Object.assign([],h);let z=v.path(H,{roughness:.3,seed:c});M+=" transition",g=S(z).select("path").attr("id",t.id).attr("class"," "+M+(t.classes?" "+t.classes:"")+($?" "+$:"")).attr("style",_?_.reduce((U,I)=>U+";"+I,""):"");let q=g.attr("d");g.attr("d",q),r.node().appendChild(g.node())}else{let v=d.join(";"),z=_?_.reduce((P,X)=>P+X+";",""):"",q=(v?v+";"+z+";":z)+";"+(_?_.reduce((P,X)=>P+";"+X,""):"");g=r.append("path").attr("d",H).attr("id",t.id).attr("class"," "+M+(t.classes?" "+t.classes:"")+($?" "+$:"")).attr("style",q),R=q.match(/stroke:([^;]+)/)?.[1],rt=t.animate===!0||!!t.animation||v.includes("animation");let U=g.node(),I=typeof U.getTotalLength=="function"?U.getTotalLength():0,J=K[t.arrowTypeStart]||0,V=K[t.arrowTypeEnd]||0;if(t.look==="neo"&&!rt){let X=`stroke-dasharray: ${t.pattern==="dotted"||t.pattern==="dashed"?Wt(I,J,V):`0 ${J} ${I-J-V} ${V}`}; stroke-dashoffset: 0;`;g.attr("style",X+g.attr("style"))}}g.attr("data-edge",!0),g.attr("data-et","edge"),g.attr("data-id",t.id),g.attr("data-points",u),t.showPoints&&h.forEach(v=>{r.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",v.x).attr("cy",v.y)});let A="";(E().flowchart.arrowMarkerAbsolute||E().state.arrowMarkerAbsolute)&&(A=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,A=A.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),b.info("arrowTypeStart",t.arrowTypeStart),b.info("arrowTypeEnd",t.arrowTypeEnd),Ot(g,t,A,e,n,R);let St=Math.floor(l.length/2),Et=l[St];O.isLabelCoordinateInPath(Et,g.attr("d"))||(m=!0);let D={};return m&&(D.updatedPath=l),D.originalPath=t.points,D},"insertEdge");function _t(r,t){if(r.length<2)return"";let a="",n=r.length,i=1e-5;for(let s=0;sat({},i));if(r.length>=2&&Y[t.arrowTypeStart]){let i=Y[t.arrowTypeStart],s=r[0],e=r[1],{angle:o}=tt(s,e),c=i*Math.cos(o),l=i*Math.sin(o);a[0].x=s.x+c,a[0].y=s.y+l}let n=r.length;if(n>=2&&Y[t.arrowTypeEnd]){let i=Y[t.arrowTypeEnd],s=r[n-1],e=r[n-2],{angle:o}=tt(e,s),c=i*Math.cos(o),l=i*Math.sin(o);a[n-1].x=s.x-c,a[n-1].y=s.y-l}return a}p($t,"applyMarkerOffsetsToPoints");var Ht=p((r,t,a,n)=>{t.forEach(i=>{Gt[i](r,a,n)})},"insertMarkers"),Rt=p((r,t,a)=>{b.trace("Making markers for ",a),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),At=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),zt=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),qt=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),Ut=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),It=p((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),Pt=p((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),Nt=p((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),Qt=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),Zt=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneStart").attr("class","marker onlyOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneEnd").attr("class","marker onlyOne "+t).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),jt=p((r,t,a)=>{let n=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneStart").attr("class","marker zeroOrOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),n.append("path").attr("d","M9,0 L9,18");let i=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+t).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),Dt=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreStart").attr("class","marker oneOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreEnd").attr("class","marker oneOrMore "+t).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),Jt=p((r,t,a)=>{let n=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");n.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let i=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+t).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),Vt=p((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0 - L20,10 - M20,10 - L0,20`)},"requirement_arrow"),Ft=p((r,t,a)=>{let n=r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");n.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),n.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),n.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),Gt={extension:Rt,composition:At,aggregation:zt,dependency:qt,lollipop:Ut,point:It,circle:Pt,cross:Nt,barb:Qt,only_one:Zt,zero_or_one:jt,one_or_more:Dt,zero_or_more:Jt,requirement_arrow:Vt,requirement_contains:Ft},hr=Ht;export{cr as a,dr as b,fr as c,pr as d,hr as e}; diff --git a/src/google/adk/cli/browser/chunk-TNYN2TVW.js b/src/google/adk/cli/browser/chunk-TNYN2TVW.js deleted file mode 100644 index f79ed23625..0000000000 --- a/src/google/adk/cli/browser/chunk-TNYN2TVW.js +++ /dev/null @@ -1,4 +0,0 @@ -import{a as W}from"./chunk-JDPVSVO4.js";import{a as S}from"./chunk-XMBKBASC.js";import{a as V,b as q,c as z,d as K,e as Q}from"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import{b as M,d as F,e as U,g as Y,h as H,i as j,j as B}from"./chunk-W7PRDKNL.js";import{a as T}from"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import"./chunk-WXI2IBAH.js";import"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{Y as R}from"./chunk-QFMJV7VH.js";import{g,i}from"./chunk-JRNAXTJ7.js";import{J as C,e as G,v as _}from"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{a as P,b as A,j as b}from"./chunk-RMXJBC7V.js";function p(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:re(e),edges:se(e)};return C(e.graph())||(t.value=G(e.graph())),t}function re(e){return _(e.nodes(),function(t){var n=e.node(t),a=e.parent(t),s={v:t};return C(n)||(s.value=n),C(a)||(s.parent=a),s})}function se(e){return _(e.edges(),function(t){var n=e.edge(t),a={v:t.v,w:t.w};return C(t.name)||(a.name=t.name),C(n)||(a.value=n),a})}var d=new Map,X=new Map,L=new Map,ae=g(()=>{X.clear(),L.clear(),d.clear()},"clear"),O=g((e,t)=>{let n=X.get(t)||[];return i.trace("In isDescendant",t," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),ce=g((e,t)=>{let n=X.get(t)||[];return i.info("Descendants of ",t," is ",n),i.info("Edge is ",e),e.v===t||e.w===t?!1:n?n.includes(e.v)||O(e.v,t)||O(e.w,t)||n.includes(e.w):(i.debug("Tilt, ",t,",not in descendants"),!1)},"edgeInCluster"),I=g((e,t,n,a)=>{i.warn("Copying children of ",e,"root",a,"data",t.node(e),a);let s=t.children(e)||[];e!==a&&s.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)I(o,t,n,a);else{let l=t.node(o);i.info("cp ",o," to ",a," with parent ",e),n.setNode(o,l),a!==t.parent(o)&&(i.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==a&&o!==e?(i.debug("Setting parent",o,e),n.setParent(o,e)):(i.info("In copy ",e,"root",a,"data",t.node(e),a),i.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==a,"node!==clusterId",o!==e));let u=t.edges(o);i.debug("Copying Edges",u),u.forEach(c=>{i.info("Edge",c);let m=t.edge(c.v,c.w,c.name);i.info("Edge data",m,a);try{ce(c,a)?(i.info("Copying as ",c.v,c.w,m,c.name),n.setEdge(c.v,c.w,m,c.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",c.v,"-->",c.w," rootId: ",a," clusterId:",e)}catch(h){i.error(h)}})}i.debug("Removing node",o),t.removeNode(o)})},"copy"),ee=g((e,t)=>{let n=t.children(e),a=[...n];for(let s of n)L.set(s,e),a=[...a,...ee(s,t)];return a},"extractDescendants"),de=g((e,t,n)=>{let a=e.edges().filter(c=>c.v===t||c.w===t),s=e.edges().filter(c=>c.v===n||c.w===n),o=a.map(c=>({v:c.v===t?n:c.v,w:c.w===t?t:c.w})),l=s.map(c=>({v:c.v,w:c.w}));return o.filter(c=>l.some(m=>c.v===m.v&&c.w===m.w))},"findCommonEdges"),x=g((e,t,n)=>{let a=t.children(e);if(i.trace("Searching children of id ",e,a),a.length<1)return e;let s;for(let o of a){let l=x(o,t,n),u=de(t,n,l);if(l)if(u.length>0)s=l;else return l}return s},"findNonClusterChild"),$=g(e=>!d.has(e)||!d.get(e).externalConnections?e:d.has(e)?d.get(e).id:e,"getAnchorId"),le=g((e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",x(n,e,n)),X.set(n,ee(n,e)),d.set(n,{id:x(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){let a=e.children(n),s=e.edges();a.length>0?(i.debug("Cluster identified",n,X),s.forEach(o=>{let l=O(o.v,n),u=O(o.w,n);l^u&&(i.warn("Edge: ",o," leaves cluster ",n),i.warn("Descendants of XXX ",n,": ",X.get(n)),d.get(n).externalConnections=!0)})):i.debug("Not a cluster ",n,X)});for(let n of d.keys()){let a=d.get(n).id,s=e.parent(a);s!==n&&d.has(s)&&!d.get(s).externalConnections&&(d.get(n).id=s)}e.edges().forEach(function(n){let a=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.warn("Fix XXX",d,"ids:",n.v,n.w,"Translating: ",d.get(n.v)," --- ",d.get(n.w)),d.get(n.v)||d.get(n.w)){if(i.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),s=$(n.v),o=$(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){let l=e.parent(s);d.get(l).externalConnections=!0,a.fromCluster=n.v}if(o!==n.w){let l=e.parent(o);d.get(l).externalConnections=!0,a.toCluster=n.w}i.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,a,n.name)}}),i.warn("Adjusted Graph",p(e)),ne(e,0),i.trace(d)},"adjustClustersAndEdges"),ne=g((e,t)=>{if(i.warn("extractor - ",t,p(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),a=!1;for(let s of n){let o=e.children(s);a=a||o.length>0}if(!a){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(let s of n)if(i.debug("Extracting node",s,d,d.has(s)&&!d.get(s).externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!d.has(s))i.debug("Not a cluster",s,t);else if(!d.get(s).externalConnections&&e.children(s)&&e.children(s).length>0){i.warn("Cluster without external connections, without a parent and with children",s,t);let l=e.graph().rankdir==="TB"?"LR":"TB";d.get(s)?.clusterData?.dir&&(l=d.get(s).clusterData.dir,i.warn("Fixing dir",d.get(s).clusterData.dir,l));let u=new S({multigraph:!0,compound:!0}).setGraph({rankdir:l,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",p(e)),I(s,e,u,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:d.get(s).clusterData,label:d.get(s).label,graph:u}),i.warn("New graph after copy node: (",s,")",p(u)),i.debug("Old graph after copy",p(e))}else i.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!d.get(s).externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.debug(d);n=e.nodes(),i.warn("New list of nodes",n);for(let s of n){let o=e.node(s);i.warn(" Now next level",s,o),o?.clusterNode&&ne(o.graph,t+1)}},"extractor"),te=g((e,t)=>{if(t.length===0)return[];let n=Object.assign([],t);return t.forEach(a=>{let s=e.children(a),o=te(e,s);n=[...n,...o]}),n},"sorter"),fe=g(e=>te(e,e.children()),"sortNodesByHierarchy"),ie=g((e,t,n,a,s,o)=>b(null,null,function*(){i.warn("Graph in recursive render:XAX",p(t),s);let l=t.graph().rankdir;i.trace("Dir in recursive render - dir:",l);let u=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.info("Recursive edges",t.edge(t.edges()[0]));let c=u.insert("g").attr("class","clusters"),m=u.insert("g").attr("class","edgePaths"),h=u.insert("g").attr("class","edgeLabels"),v=u.insert("g").attr("class","nodes");yield Promise.all(t.nodes().map(function(f){return b(this,null,function*(){let r=t.node(f);if(s!==void 0){let w=JSON.parse(JSON.stringify(s.clusterData));i.trace(`Setting data for parent cluster XXX - Node.id = `,f,` - data=`,w.height,` -Parent cluster`,s.height),t.setNode(s.id,w),t.parent(f)||(i.trace("Setting parent",f,s.id),t.setParent(f,s.id,w))}if(i.info("(Insert) Node XXX"+f+": "+JSON.stringify(t.node(f))),r?.clusterNode){i.info("Cluster identified XBX",f,r.width,t.node(f));let{ranksep:w,nodesep:N}=t.graph();r.graph.setGraph(A(P({},r.graph.graph()),{ranksep:w+25,nodesep:N}));let y=yield ie(v,r.graph,n,a,t.node(f),o),J=y.elem;M(r,J),r.diff=y.diff||0,i.info("New compound node after recursive render XAX",f,"width",r.width,"height",r.height),H(J,r)}else t.children(f).length>0?(i.trace("Cluster - the non recursive path XBX",f,r.id,r,r.width,"Graph:",t),i.trace(x(r.id,t)),d.set(r.id,{id:x(r.id,t),node:r})):(i.trace("Node - the non recursive path XAX",f,v,t.node(f),l),yield Y(v,t.node(f),{config:o,dir:l}))})})),yield g(()=>b(null,null,function*(){let f=t.edges().map(function(r){return b(this,null,function*(){let w=t.edge(r.v,r.w,r.name);i.info("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),i.info("Edge "+r.v+" -> "+r.w+": ",r," ",JSON.stringify(t.edge(r))),i.info("Fix",d,"ids:",r.v,r.w,"Translating: ",d.get(r.v),d.get(r.w)),yield q(h,w)})});yield Promise.all(f)}),"processEdges")(),i.info("Graph before layout:",JSON.stringify(p(t))),i.info("############################################# XXX"),i.info("### Layout ### XXX"),i.info("############################################# XXX"),W(t),i.info("Graph after layout:",JSON.stringify(p(t)));let k=0,{subGraphTitleTotalMargin:D}=T(o);return yield Promise.all(fe(t).map(function(f){return b(this,null,function*(){let r=t.node(f);if(i.info("Position XBX => "+f+": ("+r.x,","+r.y,") width: ",r.width," height: ",r.height),r?.clusterNode)r.y+=D,i.info("A tainted cluster node XBX1",f,r.id,r.width,r.height,r.x,r.y,t.parent(f)),d.get(r.id).node=r,B(r);else if(t.children(f).length>0){i.info("A pure cluster node XBX1",f,r.id,r.x,r.y,r.width,r.height,t.parent(f)),r.height+=D,t.node(r.parentId);let w=r?.padding/2||0,N=r?.labelBBox?.height||0,y=N-w||0;i.debug("OffsetY",y,"labelHeight",N,"halfPadding",w),yield F(c,r),d.get(r.id).node=r}else{let w=t.node(r.parentId);r.y+=D/2,i.info("A regular node XBX1 - using the padding",r.id,"parent",r.parentId,r.width,r.height,r.x,r.y,"offsetY",r.offsetY,"parent",w,w?.offsetY,r),B(r)}})})),t.edges().forEach(function(f){let r=t.edge(f);i.info("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(r),r),r.points.forEach(J=>J.y+=D/2);let w=t.node(f.v);var N=t.node(f.w);let y=K(m,r,d,n,w,N,a);z(r,y)}),t.nodes().forEach(function(f){let r=t.node(f);i.info(f,r.type,r.diff),r.isGroup&&(k=r.diff)}),i.warn("Returning from recursive render XAX",u,k),{elem:u,diff:k}}),"recursiveRender"),Se=g((e,t)=>b(null,null,function*(){let n=new S({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),a=t.select("g");Q(a,e.markers,e.type,e.diagramId),j(),V(),U(),ae(),e.nodes.forEach(o=>{n.setNode(o.id,P({},o)),o.parentId&&n.setParent(o.id,o.parentId)}),i.debug("Edges:",e.edges),e.edges.forEach(o=>{if(o.start===o.end){let l=o.start,u=l+"---"+l+"---1",c=l+"---"+l+"---2",m=n.node(l);n.setNode(u,{domId:u,id:u,parentId:m.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),n.setParent(u,m.parentId),n.setNode(c,{domId:c,id:c,parentId:m.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),n.setParent(c,m.parentId);let h=structuredClone(o),v=structuredClone(o),E=structuredClone(o);h.label="",h.arrowTypeEnd="none",h.id=l+"-cyclic-special-1",v.arrowTypeStart="none",v.arrowTypeEnd="none",v.id=l+"-cyclic-special-mid",E.label="",m.isGroup&&(h.fromCluster=l,E.toCluster=l),E.id=l+"-cyclic-special-2",E.arrowTypeStart="none",n.setEdge(l,u,h,l+"-cyclic-special-0"),n.setEdge(u,c,v,l+"-cyclic-special-1"),n.setEdge(c,l,E,l+"-cyc"u"&&(J.yylloc={});var $t=J.yylloc;n.push($t);var xr=J.options&&J.options.ranges;typeof xt.yy.parseError=="function"?this.parseError=xt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ir(ot){P.length=P.length-2*ot,F.length=F.length-ot,n.length=n.length-ot}g(Ir,"popStack");function Be(){var ot;return ot=b.pop()||J.lex()||Me,typeof ot!="number"&&(ot instanceof Array&&(b=ot,ot=b.pop()),ot=v.symbols_[ot]||ot),ot}g(Be,"lex");for(var j,jt,It,lt,_a,te,Ot={},Vt,pt,Ve,Yt;;){if(It=P[P.length-1],this.defaultActions[It]?lt=this.defaultActions[It]:((j===null||typeof j>"u")&&(j=Be()),lt=Nt[It]&&Nt[It][j]),typeof lt>"u"||!lt.length||!lt[0]){var ee="";Yt=[];for(Vt in Nt[It])this.terminals_[Vt]&&Vt>_r&&Yt.push("'"+this.terminals_[Vt]+"'");J.showPosition?ee="Parse error on line "+(Bt+1)+`: +`+J.showPosition()+` +Expecting `+Yt.join(", ")+", got '"+(this.terminals_[j]||j)+"'":ee="Parse error on line "+(Bt+1)+": Unexpected "+(j==Me?"end of input":"'"+(this.terminals_[j]||j)+"'"),this.parseError(ee,{text:J.match,token:this.terminals_[j]||j,line:J.yylineno,loc:$t,expected:Yt})}if(lt[0]instanceof Array&<.length>1)throw new Error("Parse Error: multiple actions possible at state: "+It+", token: "+j);switch(lt[0]){case 1:P.push(j),F.push(J.yytext),n.push(J.yylloc),P.push(lt[1]),j=null,jt?(j=jt,jt=null):(ve=J.yyleng,d=J.yytext,Bt=J.yylineno,$t=J.yylloc,Ce>0&&Ce--);break;case 2:if(pt=this.productions_[lt[1]][1],Ot.$=F[F.length-pt],Ot._$={first_line:n[n.length-(pt||1)].first_line,last_line:n[n.length-1].last_line,first_column:n[n.length-(pt||1)].first_column,last_column:n[n.length-1].last_column},xr&&(Ot._$.range=[n[n.length-(pt||1)].range[0],n[n.length-1].range[1]]),te=this.performAction.apply(Ot,[d,ve,Bt,xt.yy,lt[1],F,n].concat(gr)),typeof te<"u")return te;pt&&(P=P.slice(0,-1*pt*2),F=F.slice(0,-1*pt),n=n.slice(0,-1*pt)),P.push(this.productions_[lt[1]][0]),F.push(Ot.$),n.push(Ot._$),Ve=Nt[P[P.length-2]][P[P.length-1]],P.push(Ve);break;case 3:return!0}}return!0},"parse")},fr=(function(){var ft={EOF:1,parseError:g(function(v,P){if(this.yy.parser)this.yy.parser.parseError(v,P);else throw new Error(v)},"parseError"),setInput:g(function(N,v){return this.yy=v||this.yy||{},this._input=N,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:g(function(){var N=this._input[0];this.yytext+=N,this.yyleng++,this.offset++,this.match+=N,this.matched+=N;var v=N.match(/(?:\r\n?|\n).*/g);return v?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),N},"input"),unput:g(function(N){var v=N.length,P=N.split(/(?:\r\n?|\n)/g);this._input=N+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-v),this.offset-=v;var b=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),P.length-1&&(this.yylineno-=P.length-1);var F=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:P?(P.length===b.length?this.yylloc.first_column:0)+b[b.length-P.length].length-P[0].length:this.yylloc.first_column-v},this.options.ranges&&(this.yylloc.range=[F[0],F[0]+this.yyleng-v]),this.yyleng=this.yytext.length,this},"unput"),more:g(function(){return this._more=!0,this},"more"),reject:g(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:g(function(N){this.unput(this.match.slice(N))},"less"),pastInput:g(function(){var N=this.matched.substr(0,this.matched.length-this.match.length);return(N.length>20?"...":"")+N.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:g(function(){var N=this.match;return N.length<20&&(N+=this._input.substr(0,20-N.length)),(N.substr(0,20)+(N.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:g(function(){var N=this.pastInput(),v=new Array(N.length+1).join("-");return N+this.upcomingInput()+` +`+v+"^"},"showPosition"),test_match:g(function(N,v){var P,b,F;if(this.options.backtrack_lexer&&(F={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(F.yylloc.range=this.yylloc.range.slice(0))),b=N[0].match(/(?:\r\n?|\n).*/g),b&&(this.yylineno+=b.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:b?b[b.length-1].length-b[b.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+N[0].length},this.yytext+=N[0],this.match+=N[0],this.matches=N,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(N[0].length),this.matched+=N[0],P=this.performAction.call(this,this.yy,this,v,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),P)return P;if(this._backtrack){for(var n in F)this[n]=F[n];return!1}return!1},"test_match"),next:g(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var N,v,P,b;this._more||(this.yytext="",this.match="");for(var F=this._currentRules(),n=0;nv[0].length)){if(v=P,b=n,this.options.backtrack_lexer){if(N=this.test_match(P,F[n]),N!==!1)return N;if(this._backtrack){v=!1;continue}else return!1}else if(!this.options.flex)break}return v?(N=this.test_match(v,F[b]),N!==!1?N:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:g(function(){var v=this.next();return v||this.lex()},"lex"),begin:g(function(v){this.conditionStack.push(v)},"begin"),popState:g(function(){var v=this.conditionStack.length-1;return v>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:g(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:g(function(v){return v=this.conditionStack.length-1-Math.abs(v||0),v>=0?this.conditionStack[v]:"INITIAL"},"topState"),pushState:g(function(v){this.begin(v)},"pushState"),stateStackSize:g(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:g(function(v,P,b,F){var n=F;switch(b){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 20;case 7:return this.begin("CONFIG"),75;break;case 8:return 76;case 9:return this.popState(),this.begin("ALIAS"),77;break;case 10:return this.popState(),this.popState(),77;break;case 11:return P.yytext=P.yytext.trim(),73;break;case 12:return P.yytext=P.yytext.trim(),this.begin("ALIAS"),73;break;case 13:return P.yytext=P.yytext.trim(),this.popState(),73;break;case 14:return this.popState(),10;break;case 15:return P.yytext=P.yytext.trim(),this.popState(),10;break;case 16:return this.begin("LINE"),15;break;case 17:return this.begin("ID"),51;break;case 18:return this.begin("ID"),53;break;case 19:return 14;case 20:return this.begin("ID"),54;break;case 21:return this.popState(),this.popState(),this.begin("LINE"),52;break;case 22:return this.popState(),this.popState(),5;break;case 23:return this.begin("LINE"),37;break;case 24:return this.begin("LINE"),38;break;case 25:return this.begin("LINE"),39;break;case 26:return this.begin("LINE"),40;break;case 27:return this.begin("LINE"),50;break;case 28:return this.begin("LINE"),42;break;case 29:return this.begin("LINE"),44;break;case 30:return this.begin("LINE"),49;break;case 31:return this.begin("LINE"),45;break;case 32:return this.begin("LINE"),48;break;case 33:return this.begin("LINE"),47;break;case 34:return this.popState(),16;break;case 35:return 17;case 36:return 67;case 37:return 68;case 38:return 61;case 39:return 62;case 40:return 63;case 41:return 64;case 42:return 59;case 43:return 56;case 44:return this.begin("ID"),22;break;case 45:return this.begin("ID"),24;break;case 46:return 30;case 47:return 31;case 48:return this.begin("acc_title"),32;break;case 49:return this.popState(),"acc_title_value";break;case 50:return this.begin("acc_descr"),34;break;case 51:return this.popState(),"acc_descr_value";break;case 52:this.begin("acc_descr_multiline");break;case 53:this.popState();break;case 54:return"acc_descr_multiline_value";case 55:return 6;case 56:return 19;case 57:return 21;case 58:return 66;case 59:return 5;case 60:return P.yytext=P.yytext.trim(),73;break;case 61:return 80;case 62:return 97;case 63:return 98;case 64:return 99;case 65:return 78;case 66:return 79;case 67:return 100;case 68:return 101;case 69:return 102;case 70:return 103;case 71:return 85;case 72:return 86;case 73:return 87;case 74:return 88;case 75:return 93;case 76:return 94;case 77:return 95;case 78:return 96;case 79:return 81;case 80:return 82;case 81:return 83;case 82:return 84;case 83:return 89;case 84:return 90;case 85:return 91;case 86:return 92;case 87:return 104;case 88:return 104;case 89:return 70;case 90:return 71;case 91:return 72;case 92:return 5;case 93:return 10}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:@\{)/i,/^(?:[^\}]+)/i,/^(?:\}(?=\s+as\s))/i,/^(?:\})/i,/^(?:[^\<->\->:\n,;@\s]+(?=@\{))/i,/^(?:[^<>:\n,;@\s]+(?=\s+as\s))/i,/^(?:[^<>:\n,;@]+(?=\s*[\n;#]|$))/i,/^(?:[^<>:\n,;@]*<[^\n]*)/i,/^(?:[^\n]+)/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\/\\\+\()\+<\->\->:\n,;]+((?!(-x|--x|-\)|--\)|-\|\\|-\\|-\/|-\/\/|-\|\/|\/\|-|\\\|-|\/\/-|\\\\-|\/\|-|--\|\\|--|\(\)))[\-]*[^\+<\->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?:--\|\\)/i,/^(?:--\|\/)/i,/^(?:--\\\\)/i,/^(?:--\/\/)/i,/^(?:\/\|--)/i,/^(?:\\\|--)/i,/^(?:\/\/--)/i,/^(?:\\\\--)/i,/^(?:-\|\\)/i,/^(?:-\|\/)/i,/^(?:-\\\\)/i,/^(?:-\/\/)/i,/^(?:\/\|-)/i,/^(?:\\\|-)/i,/^(?:\/\/-)/i,/^(?:\\\\-)/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\(\))/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[53,54],inclusive:!1},acc_descr:{rules:[51],inclusive:!1},acc_title:{rules:[49],inclusive:!1},ID:{rules:[2,3,7,11,12,13,14,15],inclusive:!1},ALIAS:{rules:[2,3,21,22],inclusive:!1},LINE:{rules:[2,3,34],inclusive:!1},CONFIG:{rules:[8,9,10],inclusive:!1},CONFIG_DATA:{rules:[],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,16,17,18,19,20,23,24,25,26,27,28,29,30,31,32,33,35,36,37,38,39,40,41,42,43,44,45,46,47,48,50,52,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93],inclusive:!0}}};return ft})();Qt.lexer=fr;function Mt(){this.yy={}}return g(Mt,"Parser"),Mt.prototype=Qt,Qt.Parser=Mt,new Mt})();ne.parser=ne;var Rr=ne,Or={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34,SOLID_TOP:41,SOLID_BOTTOM:42,STICK_TOP:43,STICK_BOTTOM:44,SOLID_ARROW_TOP_REVERSE:45,SOLID_ARROW_BOTTOM_REVERSE:46,STICK_ARROW_TOP_REVERSE:47,STICK_ARROW_BOTTOM_REVERSE:48,SOLID_TOP_DOTTED:51,SOLID_BOTTOM_DOTTED:52,STICK_TOP_DOTTED:53,STICK_BOTTOM_DOTTED:54,SOLID_ARROW_TOP_REVERSE_DOTTED:55,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:56,STICK_ARROW_TOP_REVERSE_DOTTED:57,STICK_ARROW_BOTTOM_REVERSE_DOTTED:58,CENTRAL_CONNECTION:59,CENTRAL_CONNECTION_REVERSE:60,CENTRAL_CONNECTION_DUAL:61},Lr={FILLED:0,OPEN:1},mr={LEFTOF:0,RIGHTOF:1,OVER:2},Ht={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},Ar=class{constructor(){this.state=new rr(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),this.setAccTitle=ae,this.setAccDescription=Ue,this.setDiagramTitle=Xe,this.getAccTitle=ze,this.getAccDescription=Ge,this.getDiagramTitle=Je,this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(Z().wrap),this.LINETYPE=Or,this.ARROWTYPE=Lr,this.PLACEMENT=mr}static{g(this,"SequenceDB")}addBox(e){this.state.records.boxes.push({name:e.text,wrap:e.wrap??this.autoWrap(),fill:e.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(e,t,a,r,i){let o=this.state.records.currentBox,s;if(i!==void 0){let E;i.includes(` +`)?E=i+` +`:E=`{ +`+i+` +}`,s=$e(E,{schema:Ze})}r=s?.type??r,s?.alias&&(!a||a.text===t)&&(a={text:s.alias,wrap:a?.wrap,type:r});let c=this.state.records.actors.get(e);if(c){if(this.state.records.currentBox&&c.box&&this.state.records.currentBox!==c.box)throw new Error(`A same participant should only be defined in one Box: ${c.name} can't be in '${c.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(o=c.box?c.box:this.state.records.currentBox,c.box=o,c&&t===c.name&&a==null)return}if(a?.text==null&&(a={text:t,type:r}),(r==null||a.text==null)&&(a={text:t,type:r}),this.state.records.actors.set(e,{box:o,name:t,description:a.text,wrap:a.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:r??"participant"}),this.state.records.prevActor){let E=this.state.records.actors.get(this.state.records.prevActor);E&&(E.nextActor=e)}this.state.records.currentBox&&this.state.records.currentBox.actorKeys.push(e),this.state.records.prevActor=e}activationCount(e){let t,a=0;if(!e)return 0;for(t=0;t>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},c}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:e,to:t,message:a?.text??"",wrap:a?.wrap??this.autoWrap(),type:r,activate:i,centralConnection:o??0}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some(e=>e.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(e){return this.state.records.actors.get(e)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(e){this.state.records.wrapEnabled=e}extractWrap(e){if(e===void 0)return{};e=e.trim();let t=/^:?wrap:/.exec(e)!==null?!0:/^:?nowrap:/.exec(e)!==null?!1:void 0;return{cleanedText:(t===void 0?e:e.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:t}}autoWrap(){return this.state.records.wrapEnabled!==void 0?this.state.records.wrapEnabled:Z().sequence?.wrap??!1}clear(){this.state.reset(),qe()}parseMessage(e){let t=e.trim(),{wrap:a,cleanedText:r}=this.extractWrap(t),i={text:r,wrap:a};return tt.debug(`parseMessage: ${JSON.stringify(i)}`),i}parseBoxData(e){let t=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(e),a=t?.[1]?t[1].trim():"transparent",r=t?.[2]?t[2].trim():void 0;if(window?.CSS)window.CSS.supports("color",a)||(a="transparent",r=e.trim());else{let s=new Option().style;s.color=a,s.color!==a&&(a="transparent",r=e.trim())}let{wrap:i,cleanedText:o}=this.extractWrap(r);return{text:o?Pt(o,Z()):void 0,color:a,wrap:i}}addNote(e,t,a){let r={actor:e,placement:t,message:a.text,wrap:a.wrap??this.autoWrap()},i=[].concat(e,e);this.state.records.notes.push(r),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:i[0],to:i[1],message:a.text,wrap:a.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:t})}addLinks(e,t){let a=this.getActor(e);try{let r=Pt(t.text,Z());r=r.replace(/=/g,"="),r=r.replace(/&/g,"&");let i=JSON.parse(r);this.insertLinks(a,i)}catch(r){tt.error("error while parsing actor link text",r)}}addALink(e,t){let a=this.getActor(e);try{let r={},i=Pt(t.text,Z()),o=i.indexOf("@");i=i.replace(/=/g,"="),i=i.replace(/&/g,"&");let s=i.slice(0,o-1).trim(),c=i.slice(o+1).trim();r[s]=c,this.insertLinks(a,r)}catch(r){tt.error("error while parsing actor link text",r)}}insertLinks(e,t){if(e.links==null)e.links=t;else for(let a in t)e.links[a]=t[a]}addProperties(e,t){let a=this.getActor(e);try{let r=Pt(t.text,Z()),i=JSON.parse(r);this.insertProperties(a,i)}catch(r){tt.error("error while parsing actor properties text",r)}}insertProperties(e,t){if(e.properties==null)e.properties=t;else for(let a in t)e.properties[a]=t[a]}boxEnd(){this.state.records.currentBox=void 0}addDetails(e,t){let a=this.getActor(e),r=document.getElementById(t.text);try{let i=r.innerHTML,o=JSON.parse(i);o.properties&&this.insertProperties(a,o.properties),o.links&&this.insertLinks(a,o.links)}catch(i){tt.error("error while parsing actor details text",i)}}getActorProperty(e,t){if(e?.properties!==void 0)return e.properties[t]}apply(e){if(Array.isArray(e))e.forEach(t=>{this.apply(t)});else switch(e.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:e.sequenceIndex,step:e.sequenceIndexStep,visible:e.sequenceVisible},wrap:!1,type:e.signalType});break;case"addParticipant":this.addActor(e.actor,e.actor,e.description,e.draw,e.config);break;case"createParticipant":if(this.state.records.actors.has(e.actor))throw new Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=e.actor,this.addActor(e.actor,e.actor,e.description,e.draw,e.config),this.state.records.createdActors.set(e.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=e.actor,this.state.records.destroyedActors.set(e.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"centralConnection":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"centralConnectionReverse":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"activeEnd":this.addSignal(e.actor,void 0,void 0,e.signalType);break;case"addNote":this.addNote(e.actor,e.placement,e.text);break;case"addLinks":this.addLinks(e.actor,e.text);break;case"addALink":this.addALink(e.actor,e.text);break;case"addProperties":this.addProperties(e.actor,e.text);break;case"addDetails":this.addDetails(e.actor,e.text);break;case"addMessage":if(this.state.records.lastCreated){if(e.to!==this.state.records.lastCreated)throw new Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");this.state.records.lastCreated=void 0}else if(this.state.records.lastDestroyed){if(e.to!==this.state.records.lastDestroyed&&e.from!==this.state.records.lastDestroyed)throw new Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");this.state.records.lastDestroyed=void 0}this.addSignal(e.from,e.to,e.msg,e.signalType,e.activate,e.centralConnection);break;case"boxStart":this.addBox(e.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"rectStart":this.addSignal(void 0,void 0,e.color,e.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"optStart":this.addSignal(void 0,void 0,e.optText,e.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"altStart":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"else":this.addSignal(void 0,void 0,e.altText,e.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"setAccTitle":ae(e.text);break;case"parStart":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"and":this.addSignal(void 0,void 0,e.parText,e.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,e.criticalText,e.signalType);break;case"option":this.addSignal(void 0,void 0,e.optionText,e.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break;case"breakStart":this.addSignal(void 0,void 0,e.breakText,e.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,e.signalType);break}}getConfig(){return Z().sequence}},Sr=g(e=>{let t=e.dropShadow??"none",{look:a}=Z();return`.actor { + stroke: ${e.actorBorder}; + fill: ${e.actorBkg}; + stroke-width: ${e.strokeWidth??1}; + } + + rect.actor.outer-path[data-look="neo"] { + filter: ${t}; + } + + rect.note[data-look="neo"] { + stroke:${e.noteBorderColor}; + fill:${e.noteBkgColor}; + filter: ${t}; + } + + text.actor > tspan { + fill: ${e.actorTextColor}; + stroke: none; + } + + .actor-line { + stroke: ${e.actorLineColor}; + } + + .innerArc { + stroke-width: 1.5; + stroke-dasharray: none; + } + + .messageLine0 { + stroke-width: 1.5; + stroke-dasharray: none; + stroke: ${e.signalColor}; + } + + .messageLine1 { + stroke-width: 1.5; + stroke-dasharray: 2, 2; + stroke: ${e.signalColor}; + } + + [id$="-arrowhead"] path { + fill: ${e.signalColor}; + stroke: ${e.signalColor}; + } + + .sequenceNumber { + fill: ${e.sequenceNumberColor}; + } + + [id$="-sequencenumber"] { + fill: ${e.signalColor}; + } + + [id$="-crosshead"] path { + fill: ${e.signalColor}; + stroke: ${e.signalColor}; + } + + .messageText { + fill: ${e.signalTextColor}; + stroke: none; + } + + .labelBox { + stroke: ${e.labelBoxBorderColor}; + fill: ${e.labelBoxBkgColor}; + filter: ${a==="neo"?t:"none"}; + } + + .labelText, .labelText > tspan { + fill: ${e.labelTextColor}; + stroke: none; + } + + .loopText, .loopText > tspan { + fill: ${e.loopTextColor}; + stroke: none; + } + + .loopLine { + stroke-width: 2px; + stroke-dasharray: 2, 2; + stroke: ${e.labelBoxBorderColor}; + fill: ${e.labelBoxBorderColor}; + } + + .note { + //stroke: #decc93; + stroke: ${e.noteBorderColor}; + fill: ${e.noteBkgColor}; + } + + .noteText, .noteText > tspan { + fill: ${e.noteTextColor}; + stroke: none; + ${e.noteFontWeight?`font-weight: ${e.noteFontWeight};`:""} + } + + .activation0 { + fill: ${e.activationBkgColor}; + stroke: ${e.activationBorderColor}; + } + + .activation1 { + fill: ${e.activationBkgColor}; + stroke: ${e.activationBorderColor}; + } + + .activation2 { + fill: ${e.activationBkgColor}; + stroke: ${e.activationBorderColor}; + } + + .actorPopupMenu { + position: absolute; + } + + .actorPopupMenuPanel { + position: absolute; + fill: ${e.actorBkg}; + box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); + filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4)); +} + .actor-man circle, line { + fill: ${e.actorBkg}; + stroke-width: 2px; + } + + g rect.rect { + filter: ${t}; + stroke: ${e.nodeBorder}; + } +`},"getStyles"),Nr=Sr,bt=36,_t="actor-top",gt="actor-bottom",zt="actor-box",yt="actor-man",Et=new Set(["redux-color","redux-dark-color"]),Dt=g(function(e,t){let a=tr(e,t);return wt().look==="neo"&&a.attr("data-look","neo"),a},"drawRect"),kr=g(function(e,t,a,r,i){if(t.links===void 0||t.links===null||Object.keys(t.links).length===0)return{height:0,width:0};let o=t.links,s=t.actorCnt,c=t.rectData;var E="none";i&&(E="block !important");let T=e.append("g");T.attr("id","actor"+s+"_popup"),T.attr("class","actorPopupMenu"),T.attr("display",E);var l="";c.class!==void 0&&(l=" "+c.class);let x=c.width>a?c.width:a,u=T.append("rect");if(u.attr("class","actorPopupMenuPanel"+l),u.attr("x",c.x),u.attr("y",c.height),u.attr("fill",c.fill),u.attr("stroke",c.stroke),u.attr("width",x),u.attr("height",c.height),u.attr("rx",c.rx),u.attr("ry",c.ry),o!=null){var R=20;for(let _ in o){var p=T.append("a"),f=(0,le.sanitizeUrl)(o[_]);p.attr("xlink:href",f),p.attr("target","_blank"),jr(r)(_,p,c.x+10,c.height+R,x,20,{class:"actor"},r),R+=30}}return u.attr("height",R),{height:c.height+R,width:x}},"drawPopup"),Ut=g(function(e){return"var pu = document.getElementById('"+e+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),qt=g(function(e,t,a=null){return st(this,null,function*(){let r=e.append("foreignObject"),i=yield re(t.text,wt()),s=r.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(r.attr("height",Math.round(s.height)).attr("width",Math.round(s.width)),t.class==="noteText"){let c=e.node().firstChild;c.setAttribute("height",s.height+2*t.textMargin);let E=c.getBBox();r.attr("x",Math.round(E.x+E.width/2-s.width/2)).attr("y",Math.round(E.y+E.height/2-s.height/2))}else if(a){let{startx:c,stopx:E,starty:T}=a;if(c>E){let l=c;c=E,E=l}r.attr("x",Math.round(c+Math.abs(c-E)/2-s.width/2)),t.class==="loopText"?r.attr("y",Math.round(T)):r.attr("y",Math.round(T-s.height))}return[r]})},"drawKatex"),At=g(function(e,t){let a=0,r=0,i=t.text.split(w.lineBreakRegex),[o,s]=se(t.fontSize),c=[],E=0,T=g(()=>t.y,"yfunc");if(t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0)switch(t.valign){case"top":case"start":T=g(()=>Math.round(t.y+t.textMargin),"yfunc");break;case"middle":case"center":T=g(()=>Math.round(t.y+(a+r+t.textMargin)/2),"yfunc");break;case"bottom":case"end":T=g(()=>Math.round(t.y+(a+r+2*t.textMargin)-t.textMargin),"yfunc");break}if(t.anchor!==void 0&&t.textMargin!==void 0&&t.width!==void 0)switch(t.anchor){case"left":case"start":t.x=Math.round(t.x+t.textMargin),t.anchor="start",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"middle":case"center":t.x=Math.round(t.x+t.width/2),t.anchor="middle",t.dominantBaseline="middle",t.alignmentBaseline="middle";break;case"right":case"end":t.x=Math.round(t.x+t.width-t.textMargin),t.anchor="end",t.dominantBaseline="middle",t.alignmentBaseline="middle";break}for(let[l,x]of i.entries()){t.textMargin!==void 0&&t.textMargin===0&&o!==void 0&&(E=l*o);let u=e.append("text");u.attr("x",t.x),u.attr("y",T()),t.anchor!==void 0&&u.attr("text-anchor",t.anchor).attr("dominant-baseline",t.dominantBaseline).attr("alignment-baseline",t.alignmentBaseline),t.fontFamily!==void 0&&u.style("font-family",t.fontFamily),s!==void 0&&u.style("font-size",s),t.fontWeight!==void 0&&u.style("font-weight",t.fontWeight),t.fill!==void 0&&u.attr("fill",t.fill),t.class!==void 0&&u.attr("class",t.class),t.dy!==void 0?u.attr("dy",t.dy):E!==0&&u.attr("dy",E);let R=x||je;if(t.tspan){let p=u.append("tspan");p.attr("x",t.x),t.fill!==void 0&&p.attr("fill",t.fill),p.text(R)}else u.text(R);t.valign!==void 0&&t.textMargin!==void 0&&t.textMargin>0&&(r+=(u._groups||u)[0][0].getBBox().height,a=r),c.push(u)}return c},"drawText"),ir=g(function(e,t){function a(i,o,s,c,E){return i+","+o+" "+(i+s)+","+o+" "+(i+s)+","+(o+c-E)+" "+(i+s-E*1.2)+","+(o+c)+" "+i+","+(o+c)}g(a,"genPoints");let r=e.append("polygon");return r.attr("points",a(t.x,t.y,t.width,t.height,7)),r.attr("class","labelBox"),t.y=t.y+t.height/2,At(e,t),r},"drawLabel"),M=-1,nr=g((e,t,a,r)=>{e.select&&a.forEach(i=>{let o=t.get(i),s=e.select("#actor"+o.actorCnt);!r.mirrorActors&&o.stopy?s.attr("y2",o.stopy+o.height/2):r.mirrorActors&&s.attr("y2",o.stopy)})},"fixLifeLineHeights"),wr=g(function(e,t,a,r,i){let o=r?t.stopy:t.starty,s=t.x+t.width/2,c=o+t.height,{look:E,theme:T,themeVariables:l}=a,{bkgColorArray:x,borderColorArray:u}=l,R=e.append("g").lower();var p=R;r||(M++,Object.keys(t.links||{}).length&&!a.forceMenus&&p.attr("onclick",Ut(`actor${M}_popup`)).attr("cursor","pointer"),p.append("line").attr("id","actor"+M).attr("x1",s).attr("y1",c).attr("x2",s).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),p=R.append("g"),t.actorCnt=M,t.links!=null&&p.attr("id","root-"+M),E==="neo"&&p.attr("data-look","neo"));let f=dt();var _="actor";t.properties?.class?_=t.properties.class:f.fill="#eaeaea",r?_+=` ${gt}`:_+=` ${_t}`,f.x=t.x,f.y=o,f.width=t.width,f.height=t.height,f.class=_,f.rx=3,f.ry=3,f.name=t.name,E==="neo"&&(f.rx=6,f.ry=6);let I=Dt(p,f),O=i.get(t.name)??0;if(Et.has(T)&&(I.style("stroke",u[O%u.length]),I.style("fill",x[O%u.length])),E==="neo"&&I.attr("filter","url(#drop-shadow)"),t.rectData=f,t.properties?.icon){let S=t.properties.icon.trim();S.charAt(0)==="@"?Kt(p,f.x+f.width-20,f.y+10,S.substr(1)):Wt(p,f.x+f.width-20,f.y+10,S)}r||(p.attr("data-et","participant"),p.attr("data-type","participant"),p.attr("data-id",t.name)),ut(a,Q(t.description))(t.description,p,f.x,f.y,f.width,f.height,{class:`actor ${zt}`},a);let L=t.height;if(I.node){let S=I.node().getBBox();t.height=S.height,L=S.height}return L},"drawActorTypeParticipant"),Pr=g(function(e,t,a,r,i){let o=r?t.stopy:t.starty,s=t.x+t.width/2,c=o+t.height,{look:E,theme:T,themeVariables:l}=a,{bkgColorArray:x,borderColorArray:u}=l,R=e.append("g").lower();var p=R;r||(M++,Object.keys(t.links||{}).length&&!a.forceMenus&&p.attr("onclick",Ut(`actor${M}_popup`)).attr("cursor","pointer"),p.append("line").attr("id","actor"+M).attr("x1",s).attr("y1",c).attr("x2",s).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),p=R.append("g"),t.actorCnt=M,t.links!=null&&p.attr("id","root-"+M),E==="neo"&&p.attr("data-look","neo"));let f=dt();var _="actor";t.properties?.class?_=t.properties.class:f.fill="#eaeaea",r?_+=` ${gt}`:_+=` ${_t}`,f.x=t.x,f.y=o,f.width=t.width,f.height=t.height,f.class=_,f.name=t.name;let I=6,O=We(Ye({},f),{x:f.x+-I,y:f.y+ +I,class:"actor"}),L=Dt(p,f),S=Dt(p,O);t.rectData=f,E==="neo"&&p.attr("filter","url(#drop-shadow)");let A=i.get(t.name)??0;if(Et.has(T)&&(L.style("stroke",u[A%u.length]),L.style("fill",x[A%u.length]),S.style("stroke",u[A%u.length]),S.style("fill",x[A%u.length])),t.properties?.icon){let B=t.properties.icon.trim();B.charAt(0)==="@"?Kt(p,f.x+f.width-20,f.y+10,B.substr(1)):Wt(p,f.x+f.width-20,f.y+10,B)}ut(a,Q(t.description))(t.description,p,f.x-I,f.y+I,f.width,f.height,{class:`actor ${zt}`},a);let k=t.height;if(L.node){let B=L.node().getBBox();t.height=B.height,k=B.height}return r||(p.attr("data-et","participant"),p.attr("data-type","collections"),p.attr("data-id",t.name)),k},"drawActorTypeCollections"),Dr=g(function(e,t,a,r,i){let o=r?t.stopy:t.starty,s=t.x+t.width/2,c=o+t.height,{look:E,theme:T,themeVariables:l}=a,{bkgColorArray:x,borderColorArray:u}=l,R=e.append("g").lower(),p=R;r||(M++,Object.keys(t.links||{}).length&&!a.forceMenus&&p.attr("onclick",Ut(`actor${M}_popup`)).attr("cursor","pointer"),p.append("line").attr("id","actor"+M).attr("x1",s).attr("y1",c).attr("x2",s).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),p=R.append("g"),t.actorCnt=M,t.links!=null&&p.attr("id","root-"+M),E==="neo"&&p.attr("data-look","neo"));let f=dt(),_="actor";t.properties?.class?_=t.properties.class:f.fill="#eaeaea",r?_+=` ${gt}`:_+=` ${_t}`,p.attr("class",_),f.x=t.x,f.y=o,f.width=t.width,f.height=t.height,f.name=t.name;let I=f.height/2,O=I/(2.5+f.height/50),L=p.append("g"),S=p.append("g"),A=`M ${f.x},${f.y+I} + a ${O},${I} 0 0 0 0,${f.height} + h ${f.width-2*O} + a ${O},${I} 0 0 0 0,-${f.height} + Z + `;L.append("path").attr("d",A),S.append("path").attr("d",`M ${f.x},${f.y+I} + a ${O},${I} 0 0 0 0,${f.height}`),L.attr("transform",`translate(${O}, ${-(f.height/2)})`),S.attr("transform",`translate(${f.width-O}, ${-f.height/2})`),t.rectData=f,E==="neo"&&L.attr("filter","url(#drop-shadow)");let k=i.get(t.name)??0;if(Et.has(T)&&(L.style("stroke",u[k%u.length]),L.style("fill",x[k%u.length]),S.style("stroke",u[k%u.length]),S.style("fill",x[k%u.length])),t.properties?.icon){let q=t.properties.icon.trim(),U=f.x+f.width-20,X=f.y+10;q.charAt(0)==="@"?Kt(p,U,X,q.substr(1)):Wt(p,U,X,q)}ut(a,Q(t.description))(t.description,p,f.x,f.y,f.width,f.height,{class:`actor ${zt}`},a);let B=t.height,V=L.select("path:last-child");if(V.node()){let q=V.node().getBBox();t.height=q.height,B=q.height}return r||(p.attr("data-et","participant"),p.attr("data-type","queue"),p.attr("data-id",t.name)),B},"drawActorTypeQueue"),vr=g(function(e,t,a,r,i,o){let s=r?t.stopy:t.starty,c=t.x+t.width/2,E=s+75,{look:T,theme:l,themeVariables:x}=a,{bkgColorArray:u,borderColorArray:R,actorBorder:p,actorBkg:f}=x,_=e.append("g").lower();r||(M++,_.append("line").attr("id","actor"+M).attr("x1",c).attr("y1",E).attr("x2",c).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),t.actorCnt=M);let I=e.append("g"),O=yt;r?O+=` ${gt}`:O+=` ${_t}`,I.attr("class",O),I.attr("name",t.name);let L=dt();L.x=t.x,L.y=s,L.fill="#eaeaea",L.width=t.width,L.height=t.height,L.class="actor";let S=t.x+t.width/2,A=s+32,k=22;I.append("defs").append("marker").attr("id",i+"-filled-head-control").attr("refX",11).attr("refY",5.8).attr("markerWidth",20).attr("markerHeight",28).attr("orient","172.5").attr("stroke-width",1.2).append("path").attr("d","M 14.4 5.6 L 7.2 10.4 L 8.8 5.6 L 7.2 0.8 Z"),I.append("circle").attr("cx",S).attr("cy",A).attr("r",k).attr("filter",`${T==="neo"?"url(#drop-shadow)":""}`),I.append("line").attr("marker-end","url(#"+i+"-filled-head-control)").attr("transform",`translate(${S}, ${A-k})`);let B=o.get(t.name)??0;Et.has(l)?(I.style("stroke",R[B%R.length]),I.style("fill",u[B%R.length])):(I.style("stroke",p),I.style("fill",f));let V=I.node().getBBox();return t.height=V.height+2*(a?.sequence?.labelBoxHeight??0),ut(a,Q(t.description))(t.description,I,L.x,L.y+k+(r?5:12),L.width,L.height,{class:`actor ${yt}`},a),r||(I.attr("data-et","participant"),I.attr("data-type","control"),I.attr("data-id",t.name)),t.height},"drawActorTypeControl"),Cr=g(function(e,t,a,r,i){let o=r?t.stopy:t.starty,s=t.x+t.width/2,c=o+75,{look:E,theme:T,themeVariables:l}=a,{bkgColorArray:x,borderColorArray:u}=l,R=e.append("g").lower(),p=e.append("g"),f="actor";r?f+=` ${gt}`:f+=` ${_t}`,p.attr("class",f),p.attr("name",t.name);let _=dt();_.x=t.x,_.y=o,_.fill="#eaeaea",_.width=t.width,_.height=t.height,_.class="actor";let I=t.x+t.width/2,O=o+(r?10:25),L=22;p.append("circle").attr("cx",I).attr("cy",O).attr("r",L).attr("width",t.width).attr("height",t.height),p.append("line").attr("x1",I-L).attr("x2",I+L).attr("y1",O+L).attr("y2",O+L).attr("stroke-width",2),E==="neo"&&p.attr("filter","url(#drop-shadow)");let S=i.get(t.name)??0;Et.has(T)&&(p.style("stroke",u[S%u.length]),p.style("fill",x[S%u.length]));let A=p.node().getBBox();return t.height=A.height+(a?.sequence?.labelBoxHeight??0),r||(M++,R.append("line").attr("id","actor"+M).attr("x1",s).attr("y1",c).attr("x2",s).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),t.actorCnt=M),ut(a,Q(t.description))(t.description,p,_.x,_.y+(r?15:30),_.width,_.height,{class:`actor ${yt}`},a),r?p.attr("transform",`translate(0, ${L})`):(p.attr("transform",`translate(0, ${L/2-5})`),p.attr("data-et","participant"),p.attr("data-type","entity"),p.attr("data-id",t.name)),t.height},"drawActorTypeEntity"),Mr=g(function(e,t,a,r,i){let o=r?t.stopy:t.starty,s=t.x+t.width/2,c=o+t.height+2*a.boxTextMargin,{theme:E,themeVariables:T,look:l}=a,{bkgColorArray:x,borderColorArray:u,actorBorder:R}=T,p=e.append("g").lower(),f=p;r||(M++,Object.keys(t.links||{}).length&&!a.forceMenus&&f.attr("onclick",Ut(`actor${M}_popup`)).attr("cursor","pointer"),f.append("line").attr("id","actor"+M).attr("x1",s).attr("y1",c).attr("x2",s).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),f=p.append("g"),t.actorCnt=M,t.links!=null&&f.attr("id","root-"+M),l==="neo"&&f.attr("data-look","neo"));let _=dt(),I="actor";t.properties?.class?I=t.properties.class:_.fill="#eaeaea",r?I+=` ${gt}`:I+=` ${_t}`,_.x=t.x,_.y=o,_.width=t.width,_.height=t.height,_.class=I,_.name=t.name,_.x=t.x,_.y=o;let O=_.width/3,L=_.width/3,S=O/2,A=S/(2.5+O/50),k=f.append("g");k.attr("class",I);let B=` + M ${_.x},${_.y+A} + a ${S},${A} 0 0 0 ${O},0 + a ${S},${A} 0 0 0 -${O},0 + l 0,${L-2*A} + a ${S},${A} 0 0 0 ${O},0 + l 0,-${L-2*A} +`;k.append("path").attr("d",B),l==="neo"&&k.attr("filter","url(#drop-shadow)");let V=i.get(t.name)??0;Et.has(E)?(k.style("stroke",u[V%u.length]),k.style("fill",x[V%u.length])):k.style("stroke",R),k.attr("transform",`translate(${O}, ${A})`),t.rectData=_,ut(a,Q(t.description))(t.description,f,_.x,_.y+35,_.width,_.height,{class:`actor ${zt}`},a);let q=k.select("path:last-child");if(q.node()){let U=q.node().getBBox();t.height=U.height+(a.sequence.labelBoxHeight??0)}return r||(f.attr("data-et","participant"),f.attr("data-type","database"),f.attr("data-id",t.name)),t.height},"drawActorTypeDatabase"),Br=g(function(e,t,a,r,i){let o=r?t.stopy:t.starty,s=t.x+t.width/2,c=o+80,E=22,T=e.append("g").lower(),{look:l,theme:x,themeVariables:u}=a,{bkgColorArray:R,borderColorArray:p,actorBorder:f}=u;r||(M++,T.append("line").attr("id","actor"+M).attr("x1",s).attr("y1",c).attr("x2",s).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),t.actorCnt=M);let _=e.append("g"),I=yt;r?I+=` ${gt}`:I+=` ${_t}`,_.attr("class",I),_.attr("name",t.name);let O=dt();O.x=t.x,O.y=o,O.fill="#eaeaea",O.width=t.width,O.height=t.height,O.class="actor",_.append("line").attr("id","actor-man-torso"+M).attr("x1",t.x+t.width/2-E*2.5).attr("y1",o+12).attr("x2",t.x+t.width/2-15).attr("y2",o+12),_.append("line").attr("id","actor-man-arms"+M).attr("x1",t.x+t.width/2-E*2.5).attr("y1",o+2).attr("x2",t.x+t.width/2-E*2.5).attr("y2",o+22),_.append("circle").attr("cx",t.x+t.width/2).attr("cy",o+12).attr("r",E),l==="neo"&&_.attr("filter","url(#drop-shadow)");let L=i.get(t.name)??0;Et.has(x)?(_.style("stroke",p[L%p.length]),_.style("fill",R[L%p.length])):_.style("stroke",f);let S=_.node().getBBox();return t.height=S.height+(a.sequence.labelBoxHeight??0),ut(a,Q(t.description))(t.description,_,O.x,O.y+15,O.width,O.height,{class:`actor ${yt}`},a),_.attr("transform",`translate(0,${E/2+10})`),r||(_.attr("data-et","participant"),_.attr("data-type","boundary"),_.attr("data-id",t.name)),t.height},"drawActorTypeBoundary"),Vr=g(function(e,t,a,r,i){let o=r?t.stopy:t.starty,s=t.x+t.width/2,c=o+80,{look:E,theme:T,themeVariables:l}=a,{bkgColorArray:x,borderColorArray:u,actorBorder:R}=l,p=e.append("g").lower();r||(M++,p.append("line").attr("id","actor"+M).attr("x1",s).attr("y1",c).attr("x2",s).attr("y2",2e3).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",t.name).attr("data-et","life-line").attr("data-id",t.name),t.actorCnt=M);let f=e.append("g"),_=yt;r?_+=` ${gt}`:_+=` ${_t}`,f.attr("class",_),f.attr("name",t.name),r||f.attr("data-et","participant").attr("data-type","actor").attr("data-id",t.name);let I=E==="neo"?.5:1,O=E==="neo"?o+(1-I)*30:o;f.append("line").attr("id","actor-man-torso"+M).attr("x1",s).attr("y1",O+25*I).attr("x2",s).attr("y2",O+45*I),f.append("line").attr("id","actor-man-arms"+M).attr("x1",s-bt/2*I).attr("y1",O+33*I).attr("x2",s+bt/2*I).attr("y2",O+33*I),f.append("line").attr("x1",s-bt/2*I).attr("y1",O+60*I).attr("x2",s).attr("y2",O+45*I),f.append("line").attr("x1",s).attr("y1",O+45*I).attr("x2",s+(bt/2-2)*I).attr("y2",O+60*I);let L=f.append("circle");L.attr("cx",t.x+t.width/2),L.attr("cy",O+10*I),L.attr("r",15*I),L.attr("width",t.width*I),L.attr("height",t.height*I);let S=f.node().getBBox();t.height=S.height;let A=dt();A.x=t.x,A.y=O,A.fill="#eaeaea",A.width=t.width,A.height=t.height/I,A.class="actor",A.rx=3,A.ry=3;let k=i.get(t.name)??0;return Et.has(T)?(f.style("stroke",u[k%u.length]),f.style("fill",x[k%u.length])):f.style("stroke",R),ut(a,Q(t.description))(t.description,f,A.x,O+35*I-(E==="neo"?10:0),A.width,A.height,{class:`actor ${yt}`},a),t.height},"drawActorTypeActor"),Yr=g(function(e,t,a,r,i,o,s){return st(this,null,function*(){let c=s??new Map([...o.db.getActors().values()].map((E,T)=>[E.name,T]));switch(t.type){case"actor":return yield Vr(e,t,a,r,c);case"participant":return yield wr(e,t,a,r,c);case"boundary":return yield Br(e,t,a,r,c);case"control":return yield vr(e,t,a,r,i,c);case"entity":return yield Cr(e,t,a,r,c);case"database":return yield Mr(e,t,a,r,c);case"collections":return yield Pr(e,t,a,r,c);case"queue":return yield Dr(e,t,a,r,c)}})},"drawActor"),Wr=g(function(e,t,a){let i=e.append("g");or(i,t),t.name&&ut(a)(t.name,i,t.x,t.y+a.boxTextMargin+(t.textMaxHeight||0)/2,t.width,0,{class:"text"},a),i.lower()},"drawBox"),Kr=g(function(e){return e.append("g")},"anchorElement"),Fr=g(function(e,t,a,r,i,o,s){let{theme:c,themeVariables:E}=r,{bkgColorArray:T,borderColorArray:l,mainBkg:x}=E,u=dt(),R=t.anchored,p=t.actor;u.x=t.startx,u.y=t.starty,u.class="activation"+i%3,u.width=t.stopx-t.startx,u.height=a-t.starty;let f=Dt(R,u),I=(s??new Map([...o.db.getActors().values()].map((O,L)=>[O.name,L]))).get(p)??0;Et.has(c)&&(f.style("stroke",l[I%l.length]),f.style("fill",T[I%l.length]??x))},"drawActivation"),Hr=g(function(e,t,a,r,i){return st(this,null,function*(){let{boxMargin:o,boxTextMargin:s,labelBoxHeight:c,labelBoxWidth:E,messageFontFamily:T,messageFontSize:l,messageFontWeight:x}=r,u=e.append("g").attr("data-et","control-structure").attr("data-id","i"+i.id),R=g(function(_,I,O,L){return u.append("line").attr("x1",_).attr("y1",I).attr("x2",O).attr("y2",L).attr("class","loopLine")},"drawLoopLine");R(t.startx,t.starty,t.stopx,t.starty),R(t.stopx,t.starty,t.stopx,t.stopy),R(t.startx,t.stopy,t.stopx,t.stopy),R(t.startx,t.starty,t.startx,t.stopy),t.sections!==void 0&&t.sections.forEach(function(_){R(t.startx,_.y,t.stopx,_.y).style("stroke-dasharray","3, 3")});let p=Ft();p.text=a,p.x=t.startx,p.y=t.starty,p.fontFamily=T,p.fontSize=l,p.fontWeight=x,p.anchor="middle",p.valign="middle",p.tspan=!1,p.width=Math.max(E??0,50),p.height=c+(r.look==="neo"?15:0)||20,p.textMargin=s,p.class="labelText",ir(u,p),p=cr(),p.text=t.title,p.x=t.startx+E/2+(t.stopx-t.startx)/2,p.y=t.starty+o+s,p.anchor="middle",p.valign="middle",p.textMargin=s,p.class="loopText",p.fontFamily=T,p.fontSize=l,p.fontWeight=x,p.wrap=!0;let f=Q(p.text)?yield qt(u,p,t):At(u,p);if(t.sectionTitles!==void 0){for(let[_,I]of Object.entries(t.sectionTitles))if(I.message){p.text=I.message,p.x=t.startx+(t.stopx-t.startx)/2,p.y=t.sections[_].y+o+s,p.class="loopText",p.anchor="middle",p.valign="middle",p.tspan=!1,p.fontFamily=T,p.fontSize=l,p.fontWeight=x,p.wrap=t.wrap,Q(p.text)?(t.starty=t.sections[_].y,yield qt(u,p,t)):At(u,p);let O=Math.round(f.map(L=>(L._groups||L)[0][0].getBBox().height).reduce((L,S)=>L+S));t.sections[_].height+=O-(o+s)}}return t.height=Math.round(t.stopy-t.starty),u})},"drawLoop"),or=g(function(e,t){er(e,t)},"drawBackgroundRect"),qr=g(function(e,t){e.append("defs").append("symbol").attr("id",t+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),zr=g(function(e,t){e.append("defs").append("symbol").attr("id",t+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),Ur=g(function(e,t){e.append("defs").append("symbol").attr("id",t+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),Gr=g(function(e,t){e.append("defs").append("marker").attr("id",t+"-arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),Xr=g(function(e,t){e.append("defs").append("marker").attr("id",t+"-filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),Jr=g(function(e,t){e.append("defs").append("marker").attr("id",t+"-sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertSequenceNumber"),Qr=g(function(e,t){e.append("defs").append("marker").attr("id",t+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},"insertArrowCrossHead"),Zr=g(function(e,t){let{theme:a}=t;e.append("defs").append("filter").attr("id","drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${a==="redux"||a==="redux-color"?"#000000":"#FFFFFF"}`)},"insertDropShadow"),cr=g(function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},"getTextObj"),$r=g(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),ut=(function(){function e(o,s,c,E,T,l,x){let u=s.append("text").attr("x",c+T/2).attr("y",E+l/2+5).style("text-anchor","middle").text(o);i(u,x)}g(e,"byText");function t(o,s,c,E,T,l,x,u){let{actorFontSize:R,actorFontFamily:p,actorFontWeight:f}=u,[_,I]=se(R),O=o.split(w.lineBreakRegex);for(let L=0;Le.height||0))+(this.loops.length===0?0:this.loops.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.messages.length===0?0:this.messages.map(e=>e.height||0).reduce((e,t)=>e+t))+(this.notes.length===0?0:this.notes.map(e=>e.height||0).reduce((e,t)=>e+t))},"getHeight"),clear:g(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:g(function(e){this.boxes.push(e)},"addBox"),addActor:g(function(e){this.actors.push(e)},"addActor"),addLoop:g(function(e){this.loops.push(e)},"addLoop"),addMessage:g(function(e){this.messages.push(e)},"addMessage"),addNote:g(function(e){this.notes.push(e)},"addNote"),lastActor:g(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:g(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:g(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:g(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:g(function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,dr(Z())},"init"),updateVal:g(function(e,t,a,r){e[t]===void 0?e[t]=a:e[t]=r(a,e[t])},"updateVal"),updateBounds:g(function(e,t,a,r){let i=this,o=0;function s(c){return g(function(T){o++;let l=i.sequenceItems.length-o+1;i.updateVal(T,"starty",t-l*h.boxMargin,Math.min),i.updateVal(T,"stopy",r+l*h.boxMargin,Math.max),i.updateVal(y.data,"startx",e-l*h.boxMargin,Math.min),i.updateVal(y.data,"stopx",a+l*h.boxMargin,Math.max),c!=="activation"&&(i.updateVal(T,"startx",e-l*h.boxMargin,Math.min),i.updateVal(T,"stopx",a+l*h.boxMargin,Math.max),i.updateVal(y.data,"starty",t-l*h.boxMargin,Math.min),i.updateVal(y.data,"stopy",r+l*h.boxMargin,Math.max))},"updateItemBounds")}g(s,"updateFn"),this.sequenceItems.forEach(s()),this.activations.forEach(s("activation"))},"updateBounds"),insert:g(function(e,t,a,r){let i=w.getMin(e,a),o=w.getMax(e,a),s=w.getMin(t,r),c=w.getMax(t,r);this.updateVal(y.data,"startx",i,Math.min),this.updateVal(y.data,"starty",s,Math.min),this.updateVal(y.data,"stopx",o,Math.max),this.updateVal(y.data,"stopy",c,Math.max),this.updateBounds(i,s,o,c)},"insert"),newActivation:g(function(e,t,a){let r=a.get(e.from),i=Gt(e.from).length||0,o=r.x+r.width/2+(i-1)*h.activationWidth/2;this.activations.push({startx:o,starty:this.verticalPos+2,stopx:o+h.activationWidth,stopy:void 0,actor:e.from,anchored:H.anchorElement(t)})},"newActivation"),endActivation:g(function(e){let t=this.activations.map(function(a){return a.actor}).lastIndexOf(e.from);return this.activations.splice(t,1)[0]},"endActivation"),createLoop:g(function(e={message:void 0,wrap:!1,width:void 0},t){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:e.message,wrap:e.wrap,width:e.width,height:0,fill:t}},"createLoop"),newLoop:g(function(e={message:void 0,wrap:!1,width:void 0},t){this.sequenceItems.push(this.createLoop(e,t))},"newLoop"),endLoop:g(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:g(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:g(function(e){let t=this.sequenceItems.pop();t.sections=t.sections||[],t.sectionTitles=t.sectionTitles||[],t.sections.push({y:y.getVerticalPos(),height:0}),t.sectionTitles.push(e),this.sequenceItems.push(t)},"addSectionToLoop"),saveVerticalPos:g(function(){this.isLoopOverlap()&&(this.savedVerticalPos=this.verticalPos)},"saveVerticalPos"),resetVerticalPos:g(function(){this.isLoopOverlap()&&(this.verticalPos=this.savedVerticalPos)},"resetVerticalPos"),bumpVerticalPos:g(function(e){this.verticalPos=this.verticalPos+e,this.data.stopy=w.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:g(function(){return this.verticalPos},"getVerticalPos"),getBounds:g(function(){return{bounds:this.data,models:this.models}},"getBounds")},sa=g(function(e,t,a){return st(this,null,function*(){y.bumpVerticalPos(h.boxMargin),t.height=h.boxMargin,t.starty=y.getVerticalPos();let r=dt();r.x=t.startx,r.y=t.starty,r.width=t.width||h.width,r.class="note";let i=e.append("g");i.attr("data-et","note"),i.attr("data-id","i"+a);let o=H.drawRect(i,r),s=Ft();s.x=t.startx,s.y=t.starty,s.width=r.width,s.dy="1em",s.text=t.message,s.class="noteText",s.fontFamily=h.noteFontFamily,s.fontSize=h.noteFontSize,s.fontWeight=h.noteFontWeight,s.anchor=h.noteAlign,s.textMargin=h.noteMargin,s.valign="center";let c=Q(s.text)?yield qt(i,s):At(i,s),E=Math.round(c.map(T=>(T._groups||T)[0][0].getBBox().height).reduce((T,l)=>T+l));o.attr("height",E+2*h.noteMargin),t.height+=E+2*h.noteMargin,y.bumpVerticalPos(E+2*h.noteMargin),t.stopy=t.starty+E+2*h.noteMargin,t.stopx=t.startx+r.width,y.insert(t.startx,t.starty,t.stopx,t.stopy),y.models.addNote(t)})},"drawNote"),ar=g(function(e,t,a,r,i,o,s){let c=r.db.getActors(),E=c.get(t.from),T=c.get(t.to),l=a.sequenceVisible,x=E.x+E.width/2,u=T.x+T.width/2,R=x<=u,p=ur(t,r),f=e.append("g"),_=16.5,I=g((k,B)=>{let V=k?_:-_;return B?-V:V},"getCircleOffset"),O=g(k=>{f.append("circle").attr("cx",k).attr("cy",s).attr("r",5).attr("width",10).attr("height",10)},"drawCircle"),{CENTRAL_CONNECTION:L,CENTRAL_CONNECTION_REVERSE:S,CENTRAL_CONNECTION_DUAL:A}=r.db.LINETYPE;if(l)switch(t.centralConnection){case L:p&&(u+=I(R,!0));break;case S:p||(x+=I(R,!1));break;case A:p?u+=I(R,!0):x+=I(R,!1);break}switch(t.centralConnection){case L:O(u);break;case S:O(x);break;case A:O(x),O(u);break}},"drawCentralConnection"),Rt=g(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont"),mt=g(e=>({fontFamily:e.noteFontFamily,fontSize:e.noteFontSize,fontWeight:e.noteFontWeight}),"noteFont"),oe=g(e=>({fontFamily:e.actorFontFamily,fontSize:e.actorFontSize,fontWeight:e.actorFontWeight}),"actorFont");function lr(e,t){return st(this,null,function*(){y.bumpVerticalPos(10);let{startx:a,stopx:r,message:i}=t,o=w.splitBreaks(i).length,s=Q(i),c=s?yield Lt(i,Z()):G.calculateTextDimensions(i,Rt(h));if(!s){let x=c.height/o;t.height+=x,y.bumpVerticalPos(x)}let E,T=c.height-10,l=c.width;if(a===r){E=y.getVerticalPos()+T,h.rightAngles||(T+=h.boxMargin,E=y.getVerticalPos()+T),T+=30;let x=w.getMax(l/2,h.width/2);y.insert(a-x,y.getVerticalPos()-10+T,r+x,y.getVerticalPos()+30+T)}else T+=h.boxMargin,E=y.getVerticalPos()+T,y.insert(a,E-10,r,E);return y.bumpVerticalPos(T),t.height+=T,t.stopy=t.starty+t.height,y.insert(t.fromBounds,t.starty,t.toBounds,t.stopy),E})}g(lr,"boundMessage");var ia=g(function(e,t,a,r,i,o){return st(this,null,function*(){let{startx:s,stopx:c,starty:E,message:T,type:l,sequenceIndex:x,sequenceVisible:u}=t,R=G.calculateTextDimensions(T,Rt(h)),p=Ft();p.x=s,p.y=E+10,p.width=c-s,p.class="messageText",p.dy="1em",p.text=T,p.fontFamily=h.messageFontFamily,p.fontSize=h.messageFontSize,p.fontWeight=h.messageFontWeight,p.anchor=h.messageAlign,p.valign="center",p.textMargin=h.wrapPadding,p.tspan=!1,Q(p.text)?yield qt(e,p,{startx:s,stopx:c,starty:a}):At(e,p);let f=R.width,_;if(s===c){let O=u||h.showSequenceNumbers,L=ur(i,r),S=pa(i,r),A=s+(O&&(L||S)?10:0);h.rightAngles?_=e.append("path").attr("d",`M ${A},${a} H ${s+w.getMax(h.width/2,f/2)} V ${a+25} H ${s}`):_=e.append("path").attr("d","M "+A+","+a+" C "+(A+60)+","+(a-10)+" "+(s+60)+","+(a+30)+" "+s+","+(a+20)),ie(i,r)&&ar(e,i,t,r,s,c,a)}else _=e.append("line"),_.attr("x1",s),_.attr("y1",a),_.attr("x2",c),_.attr("y2",a),ie(i,r)&&ar(e,i,t,r,s,c,a);l===r.db.LINETYPE.DOTTED||l===r.db.LINETYPE.DOTTED_CROSS||l===r.db.LINETYPE.DOTTED_POINT||l===r.db.LINETYPE.DOTTED_OPEN||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED||l===r.db.LINETYPE.SOLID_TOP_DOTTED||l===r.db.LINETYPE.SOLID_BOTTOM_DOTTED||l===r.db.LINETYPE.STICK_TOP_DOTTED||l===r.db.LINETYPE.STICK_BOTTOM_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED?(_.style("stroke-dasharray","3, 3"),_.attr("class","messageLine1")):_.attr("class","messageLine0"),_.attr("data-et","message"),_.attr("data-id","i"+t.id),_.attr("data-from",t.from),_.attr("data-to",t.to);let I="";if(h.arrowMarkerAbsolute&&(I=Fe(!0)),_.attr("stroke-width",2),_.attr("stroke","none"),_.style("fill","none"),(l===r.db.LINETYPE.SOLID_TOP||l===r.db.LINETYPE.SOLID_TOP_DOTTED)&&_.attr("marker-end","url("+I+"#"+o+"-solidTopArrowHead)"),(l===r.db.LINETYPE.SOLID_BOTTOM||l===r.db.LINETYPE.SOLID_BOTTOM_DOTTED)&&_.attr("marker-end","url("+I+"#"+o+"-solidBottomArrowHead)"),(l===r.db.LINETYPE.STICK_TOP||l===r.db.LINETYPE.STICK_TOP_DOTTED)&&_.attr("marker-end","url("+I+"#"+o+"-stickTopArrowHead)"),(l===r.db.LINETYPE.STICK_BOTTOM||l===r.db.LINETYPE.STICK_BOTTOM_DOTTED)&&_.attr("marker-end","url("+I+"#"+o+"-stickBottomArrowHead)"),(l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED)&&_.attr("marker-start","url("+I+"#"+o+"-solidBottomArrowHead)"),(l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED)&&_.attr("marker-start","url("+I+"#"+o+"-solidTopArrowHead)"),(l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED)&&_.attr("marker-start","url("+I+"#"+o+"-stickBottomArrowHead)"),(l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)&&_.attr("marker-start","url("+I+"#"+o+"-stickTopArrowHead)"),(l===r.db.LINETYPE.SOLID||l===r.db.LINETYPE.DOTTED)&&_.attr("marker-end","url("+I+"#"+o+"-arrowhead)"),(l===r.db.LINETYPE.BIDIRECTIONAL_SOLID||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED)&&(_.attr("marker-start","url("+I+"#"+o+"-arrowhead)"),_.attr("marker-end","url("+I+"#"+o+"-arrowhead)")),(l===r.db.LINETYPE.SOLID_POINT||l===r.db.LINETYPE.DOTTED_POINT)&&_.attr("marker-end","url("+I+"#"+o+"-filled-head)"),(l===r.db.LINETYPE.SOLID_CROSS||l===r.db.LINETYPE.DOTTED_CROSS)&&_.attr("marker-end","url("+I+"#"+o+"-crosshead)"),u||h.showSequenceNumbers){let O=l===r.db.LINETYPE.BIDIRECTIONAL_SOLID||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED,L=l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,S=6,A=ie(i,r),k=s,B=c;O?(ss?B=c-2*S:(B=c-S,k+=i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_DUAL||i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0),B+=A?15:0,_.attr("x2",B),_.attr("x1",k)):_.attr("x1",s+S);let V=0,q=s===c,U=s<=c;q?V=t.fromBounds+1:L?V=U?t.toBounds-1:t.fromBounds+1:V=U?t.fromBounds+1:t.toBounds-1,e.append("line").attr("x1",V).attr("y1",a).attr("x2",V).attr("y2",a).attr("stroke-width",0).attr("marker-start","url("+I+"#"+o+"-sequencenumber)"),e.append("text").attr("x",V).attr("y",a+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(x)}})},"drawMessage"),na=g(function(e,t,a,r,i,o,s){let c=0,E=0,T,l=0;for(let x of r){let u=t.get(x),R=u.box;T&&T!=R&&(s||y.models.addBox(T),E+=h.boxMargin+T.margin),R&&R!=T&&(s||(R.x=c+E,R.y=i),E+=R.margin),u.width=w.getMax(u.width||h.width,h.width),u.height=w.getMax(u.height||h.height,h.height),u.margin=u.margin||h.actorMargin,l=w.getMax(l,u.height),a.get(u.name)&&(E+=u.width/2),u.x=c+E,u.starty=y.getVerticalPos(),y.insert(u.x,i,u.x+u.width,u.height),c+=u.width+E,u.box&&(u.box.width=c+R.margin-u.box.x),E=u.margin,T=u.box,y.models.addActor(u)}T&&!s&&y.models.addBox(T),y.bumpVerticalPos(l)},"addActorRenderingData"),ce=g(function(e,t,a,r,i,o,s){return st(this,null,function*(){if(r){let c=0;y.bumpVerticalPos(h.boxMargin*2);for(let E of a){let T=t.get(E);T.stopy||(T.stopy=y.getVerticalPos());let l=yield H.drawActor(e,T,h,!0,i,o,s);c=w.getMax(c,l)}y.bumpVerticalPos(c+h.boxMargin)}else for(let c of a){let E=t.get(c);yield H.drawActor(e,E,h,!1,i,o,s)}})},"drawActors"),hr=g(function(e,t,a,r){let i=0,o=0;for(let s of a){let c=t.get(s),E=ca(c),T=H.drawPopup(e,c,E,h,h.forceMenus,r);T.height>i&&(i=T.height),T.width+c.x>o&&(o=T.width+c.x)}return{maxHeight:i,maxWidth:o}},"drawActorsPopup"),dr=g(function(e){Ke(h,e),e.fontFamily&&(h.actorFontFamily=h.noteFontFamily=h.messageFontFamily=e.fontFamily),e.fontSize&&(h.actorFontSize=h.noteFontSize=h.messageFontSize=e.fontSize),e.fontWeight&&(h.actorFontWeight=h.noteFontWeight=h.messageFontWeight=e.fontWeight)},"setConf"),Gt=g(function(e){return y.activations.filter(function(t){return t.actor===e})},"actorActivations"),sr=g(function(e,t){let a=t.get(e),r=Gt(e),i=r.reduce(function(s,c){return w.getMin(s,c.startx)},a.x+a.width/2-1),o=r.reduce(function(s,c){return w.getMax(s,c.stopx)},a.x+a.width/2+1);return[i,o]},"activationBounds");function Tt(e,t,a,r,i){y.bumpVerticalPos(a);let o=r;if(t.id&&t.message&&e[t.id]){let s=e[t.id].width,c=Rt(h);t.message=G.wrapLabel(`[${t.message}]`,s-2*h.wrapPadding,c),t.width=s,t.wrap=!0;let E=G.calculateTextDimensions(t.message,c),T=w.getMax(E.height,h.labelBoxHeight);o=r+T,tt.debug(`${T} - ${t.message}`)}i(t),y.bumpVerticalPos(o)}g(Tt,"adjustLoopHeightForWrap");function Tr(e,t,a,r,i,o,s){function c(l,x){l.x{m.add(D.from),m.add(D.to)}),f=f.filter(D=>m.has(D))}let A=new Map(f.map((m,D)=>[x.get(m)?.name??m,D]));na(l,x,u,f,0,_,!1);let k=yield ua(_,x,S,r);H.insertArrowHead(l,t),H.insertArrowCrossHead(l,t),H.insertArrowFilledHead(l,t),H.insertSequenceNumber(l,t),H.insertSolidTopArrowHead(l,t),H.insertSolidBottomArrowHead(l,t),H.insertStickTopArrowHead(l,t),H.insertStickBottomArrowHead(l,t),s==="neo"&&H.insertDropShadow(l,h);function B(m,D){let ht=y.endActivation(m);ht.starty+18>D&&(ht.starty=D-6,D+=12),H.drawActivation(l,ht,D,h,Gt(m.from).length,r,A),y.insert(ht.startx,D-10,ht.stopx,D)}g(B,"activeEnd");let V=1,q=1,U=[],X=[],$=0;for(let m of _){let D,ht,at;switch(m.type){case r.db.LINETYPE.NOTE:y.resetVerticalPos(),ht=m.noteModel,yield sa(l,ht,m.id);break;case r.db.LINETYPE.ACTIVE_START:y.newActivation(m,l,x);break;case r.db.LINETYPE.CENTRAL_CONNECTION:y.newActivation(m,l,x);break;case r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE:y.newActivation(m,l,x);break;case r.db.LINETYPE.ACTIVE_END:B(m,y.getVerticalPos());break;case r.db.LINETYPE.LOOP_START:Tt(k,m,h.boxMargin,h.boxMargin+h.boxTextMargin,W=>y.newLoop(W));break;case r.db.LINETYPE.LOOP_END:D=y.endLoop(),yield H.drawLoop(l,D,"loop",h,m),y.bumpVerticalPos(D.stopy-y.getVerticalPos()),y.models.addLoop(D);break;case r.db.LINETYPE.RECT_START:Tt(k,m,h.boxMargin,h.boxMargin,W=>y.newLoop(void 0,W.message));break;case r.db.LINETYPE.RECT_END:D=y.endLoop(),X.push(D),y.models.addLoop(D),y.bumpVerticalPos(D.stopy-y.getVerticalPos());break;case r.db.LINETYPE.OPT_START:Tt(k,m,h.boxMargin,h.boxMargin+h.boxTextMargin,W=>y.newLoop(W));break;case r.db.LINETYPE.OPT_END:D=y.endLoop(),yield H.drawLoop(l,D,"opt",h,m),y.bumpVerticalPos(D.stopy-y.getVerticalPos()),y.models.addLoop(D);break;case r.db.LINETYPE.ALT_START:Tt(k,m,h.boxMargin,h.boxMargin+h.boxTextMargin,W=>y.newLoop(W));break;case r.db.LINETYPE.ALT_ELSE:Tt(k,m,h.boxMargin+h.boxTextMargin,h.boxMargin,W=>y.addSectionToLoop(W));break;case r.db.LINETYPE.ALT_END:D=y.endLoop(),yield H.drawLoop(l,D,"alt",h,m),y.bumpVerticalPos(D.stopy-y.getVerticalPos()),y.models.addLoop(D);break;case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:Tt(k,m,h.boxMargin,h.boxMargin+h.boxTextMargin,W=>y.newLoop(W)),y.saveVerticalPos();break;case r.db.LINETYPE.PAR_AND:Tt(k,m,h.boxMargin+h.boxTextMargin,h.boxMargin,W=>y.addSectionToLoop(W));break;case r.db.LINETYPE.PAR_END:D=y.endLoop(),yield H.drawLoop(l,D,"par",h,m),y.bumpVerticalPos(D.stopy-y.getVerticalPos()),y.models.addLoop(D);break;case r.db.LINETYPE.AUTONUMBER:V=m.message.start||V,q=m.message.step||q,m.message.visible?r.db.enableSequenceNumbers():r.db.disableSequenceNumbers();break;case r.db.LINETYPE.CRITICAL_START:Tt(k,m,h.boxMargin,h.boxMargin+h.boxTextMargin,W=>y.newLoop(W));break;case r.db.LINETYPE.CRITICAL_OPTION:Tt(k,m,h.boxMargin+h.boxTextMargin,h.boxMargin,W=>y.addSectionToLoop(W));break;case r.db.LINETYPE.CRITICAL_END:D=y.endLoop(),yield H.drawLoop(l,D,"critical",h,m),y.bumpVerticalPos(D.stopy-y.getVerticalPos()),y.models.addLoop(D);break;case r.db.LINETYPE.BREAK_START:Tt(k,m,h.boxMargin,h.boxMargin+h.boxTextMargin,W=>y.newLoop(W));break;case r.db.LINETYPE.BREAK_END:D=y.endLoop(),yield H.drawLoop(l,D,"break",h,m),y.bumpVerticalPos(D.stopy-y.getVerticalPos()),y.models.addLoop(D);break;default:try{at=m.msgModel,at.starty=y.getVerticalPos(),at.sequenceIndex=V,at.sequenceVisible=r.db.showSequenceNumbers(),at.id=m.id,at.from=m.from,at.to=m.to;let W=yield lr(l,at);Tr(m,at,W,$,x,u,R),U.push({messageModel:at,lineStartY:W,msg:m}),y.models.addMessage(at)}catch(W){tt.error("error while drawing message",W)}}[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.SOLID_TOP,r.db.LINETYPE.SOLID_BOTTOM,r.db.LINETYPE.STICK_TOP,r.db.LINETYPE.STICK_BOTTOM,r.db.LINETYPE.SOLID_TOP_DOTTED,r.db.LINETYPE.SOLID_BOTTOM_DOTTED,r.db.LINETYPE.STICK_TOP_DOTTED,r.db.LINETYPE.STICK_BOTTOM_DOTTED,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT,r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(m.type)&&(V=V+q),$++}tt.debug("createdActors",u),tt.debug("destroyedActors",R),yield ce(l,x,f,!1,t,r,A);for(let m of U)yield ia(l,m.messageModel,m.lineStartY,r,m.msg,t);h.mirrorActors&&(yield ce(l,x,f,!0,t,r,A)),X.forEach(m=>H.drawBackgroundRect(l,m)),nr(l,x,f,h);for(let m of y.models.boxes){m.height=y.getVerticalPos()-m.y,y.insert(m.x,m.y,m.x+m.width,m.height);let D=h.boxMargin*2;m.startx=m.x-D,m.starty=m.y-D*.25,m.stopx=m.startx+m.width+2*D,m.stopy=m.starty+m.height+D*.75,m.stroke="rgb(0,0,0, 0.5)",H.drawBox(l,m,h)}O&&y.bumpVerticalPos(h.boxMargin);let et=hr(l,x,f,T),{bounds:z}=y.getBounds();z.startx===void 0&&(z.startx=0),z.starty===void 0&&(z.starty=0),z.stopx===void 0&&(z.stopx=0),z.stopy===void 0&&(z.stopy=0);let it=z.stopy-z.starty;it{let s=Rt(h),c=o.actorKeys.reduce((x,u)=>x+=e.get(u).width+(e.get(u).margin||0),0),E=h.boxMargin*8;c+=E,c-=2*h.boxTextMargin,o.wrap&&(o.name=G.wrapLabel(o.name,c-2*h.wrapPadding,s));let T=G.calculateTextDimensions(o.name,s);i=w.getMax(T.height,i);let l=w.getMax(c,T.width+2*h.wrapPadding);if(o.margin=h.boxTextMargin,co.textMaxHeight=i),w.getMax(r,h.height)})}g(Er,"calculateActorMargins");var la=g(function(e,t,a){return st(this,null,function*(){let r=t.get(e.from),i=t.get(e.to),o=r.x,s=i.x,c=e.wrap&&e.message,E=Q(e.message)?yield Lt(e.message,Z()):G.calculateTextDimensions(c?G.wrapLabel(e.message,h.width,mt(h)):e.message,mt(h)),T={width:c?h.width:w.getMax(h.width,E.width+2*h.noteMargin),height:0,startx:r.x,stopx:0,starty:0,stopy:0,message:e.message};return e.placement===a.db.PLACEMENT.RIGHTOF?(T.width=c?w.getMax(h.width,E.width):w.getMax(r.width/2+i.width/2,E.width+2*h.noteMargin),T.startx=o+(r.width+h.actorMargin)/2):e.placement===a.db.PLACEMENT.LEFTOF?(T.width=c?w.getMax(h.width,E.width+2*h.noteMargin):w.getMax(r.width/2+i.width/2,E.width+2*h.noteMargin),T.startx=o-T.width+(r.width-h.actorMargin)/2):e.to===e.from?(E=G.calculateTextDimensions(c?G.wrapLabel(e.message,w.getMax(h.width,r.width),mt(h)):e.message,mt(h)),T.width=c?w.getMax(h.width,r.width):w.getMax(r.width,h.width,E.width+2*h.noteMargin),T.startx=o+(r.width-T.width)/2):(T.width=Math.abs(o+r.width/2-(s+i.width/2))+h.actorMargin,T.startx=o2,u=g(_=>E?-_:_,"adjustValue");e.from===e.to?l=T:(e.activate&&!x&&(l+=u(h.activationWidth/2-1)),[a.db.LINETYPE.SOLID_OPEN,a.db.LINETYPE.DOTTED_OPEN,a.db.LINETYPE.STICK_TOP,a.db.LINETYPE.STICK_BOTTOM,a.db.LINETYPE.STICK_TOP_DOTTED,a.db.LINETYPE.STICK_BOTTOM_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,a.db.LINETYPE.STICK_ARROW_TOP_REVERSE,a.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,a.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,a.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(e.type)||(l+=u(3)),[a.db.LINETYPE.BIDIRECTIONAL_SOLID,a.db.LINETYPE.BIDIRECTIONAL_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,a.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,a.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(e.type)&&(T-=u(3)));let R=[i,o,s,c],p=Math.abs(T-l);e.wrap&&e.message&&(e.message=G.wrapLabel(e.message,w.getMax(p+2*h.wrapPadding,h.width),Rt(h)));let f=G.calculateTextDimensions(e.message,Rt(h));return{width:w.getMax(e.wrap?0:f.width+2*h.wrapPadding,p+2*h.wrapPadding,h.width),height:0,startx:T,stopx:l,starty:0,stopy:0,message:e.message,type:e.type,wrap:e.wrap,fromBounds:Math.min.apply(null,R),toBounds:Math.max.apply(null,R)}},"buildMessageModel"),ua=g(function(e,t,a,r){return st(this,null,function*(){let i={},o=[],s,c,E;for(let T of e){switch(T.type){case r.db.LINETYPE.LOOP_START:case r.db.LINETYPE.ALT_START:case r.db.LINETYPE.OPT_START:case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:case r.db.LINETYPE.CRITICAL_START:case r.db.LINETYPE.BREAK_START:o.push({id:T.id,msg:T.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case r.db.LINETYPE.ALT_ELSE:case r.db.LINETYPE.PAR_AND:case r.db.LINETYPE.CRITICAL_OPTION:T.message&&(s=o.pop(),i[s.id]=s,i[T.id]=s,o.push(s));break;case r.db.LINETYPE.LOOP_END:case r.db.LINETYPE.ALT_END:case r.db.LINETYPE.OPT_END:case r.db.LINETYPE.PAR_END:case r.db.LINETYPE.CRITICAL_END:case r.db.LINETYPE.BREAK_END:s=o.pop(),i[s.id]=s;break;case r.db.LINETYPE.ACTIVE_START:{let x=t.get(T.from?T.from:T.to.actor),u=Gt(T.from?T.from:T.to.actor).length,R=x.x+x.width/2+(u-1)*h.activationWidth/2,p={startx:R,stopx:R+h.activationWidth,actor:T.from,enabled:!0};y.activations.push(p)}break;case r.db.LINETYPE.ACTIVE_END:{let x=y.activations.map(u=>u.actor).lastIndexOf(T.from);y.activations.splice(x,1).splice(0,1)}break}T.placement!==void 0?(c=yield la(T,t,r),T.noteModel=c,o.forEach(x=>{s=x,s.from=w.getMin(s.from,c.startx),s.to=w.getMax(s.to,c.startx+c.width),s.width=w.getMax(s.width,Math.abs(s.from-s.to))-h.labelBoxWidth})):(E=Ea(T,t,r),T.msgModel=E,E.startx&&E.stopx&&o.length>0&&o.forEach(x=>{if(s=x,E.startx===E.stopx){let u=t.get(T.from),R=t.get(T.to);s.from=w.getMin(u.x-E.width/2,u.x-u.width/2,s.from),s.to=w.getMax(R.x+E.width/2,R.x+u.width/2,s.to),s.width=w.getMax(s.width,Math.abs(s.to-s.from))-h.labelBoxWidth}else s.from=w.getMin(E.startx,s.from),s.to=w.getMax(E.stopx,s.to),s.width=w.getMax(s.width,E.width)-h.labelBoxWidth}))}return y.activations=[],tt.debug("Loop type widths:",i),i})},"calculateLoopBounds"),fa={bounds:y,drawActors:ce,drawActorsPopup:hr,setConf:dr,draw:oa},La={parser:Rr,get db(){return new Ar},renderer:fa,styles:Nr,init:g(e=>{e.sequence||(e.sequence={}),e.wrap&&(e.sequence.wrap=e.wrap,Qe({sequence:{wrap:e.wrap}}))},"init")};export{La as diagram}; diff --git a/src/google/adk/cli/browser/chunk-UFYCV57Y.js b/src/google/adk/cli/browser/chunk-UFYCV57Y.js new file mode 100644 index 0000000000..0340228772 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-UFYCV57Y.js @@ -0,0 +1 @@ +import{a as lr,c as dr,d as D,e as B,f as v,g as hr,h as C,i as I,j as A,k as Ir,l as wr,m as Y,n as Cr,o as Fr,p as Gr}from"./chunk-UKZIEWH5.js";import{A as Ur,B as S,E as Dr,I as qr,J as X,M as zr,a as k,b as j,d as xr,e as cr,f as Tr,g as h,h as vr,i as z,j as Or,k as K,l as Sr,m as V,n as ar,o as Rr,p as H,q as jr,r as Br,s as O,t as Lr,u as Mr,v as Pr,w as Wr,x as c,y as J,z as _r}from"./chunk-F57K64GP.js";import{A as Er,C as kr,D as Nr,a as pr,b as or,c as sr,d as R,e as b,f as y,g as G,k as gr,l as br,n as q,p as yr,r as Ar,s as F,t as L}from"./chunk-URMDZFG4.js";function ee(r,t){return r&&v(t,h(t),r)}var Kr=ee;function oe(r,t){return r&&v(t,A(t),r)}var Vr=oe;function ae(r,t){return v(r,H(r),t)}var Hr=ae;var fe=Object.getOwnPropertySymbols,ne=fe?function(r){for(var t=[];r;)Sr(t,H(r)),r=Ir(r);return t}:Rr,Z=ne;function me(r,t){return v(r,Z(r),t)}var Yr=me;function ue(r){return jr(r,A,Z)}var Jr=ue;var ie=Object.prototype,pe=ie.hasOwnProperty;function se(r){var t=r.length,e=new r.constructor(t);return t&&typeof r[0]=="string"&&pe.call(r,"index")&&(e.index=r.index,e.input=r.input),e}var Xr=se;function le(r,t){var e=t?Y(r.buffer):r.buffer;return new r.constructor(e,r.byteOffset,r.byteLength)}var Zr=le;var de=/\w*$/;function xe(r){var t=new r.constructor(r.source,de.exec(r));return t.lastIndex=r.lastIndex,t}var $r=xe;var Qr=or?or.prototype:void 0,rt=Qr?Qr.valueOf:void 0;function ce(r){return rt?Object(rt.call(r)):{}}var tt=ce;var ge="[object Boolean]",be="[object Date]",he="[object Map]",ye="[object Number]",Ae="[object RegExp]",Te="[object Set]",ve="[object String]",Oe="[object Symbol]",Se="[object ArrayBuffer]",Ie="[object DataView]",Ee="[object Float32Array]",we="[object Float64Array]",Re="[object Int8Array]",je="[object Int16Array]",Be="[object Int32Array]",Ce="[object Uint8Array]",Fe="[object Uint8ClampedArray]",Le="[object Uint16Array]",Me="[object Uint32Array]";function Pe(r,t,e){var o=r.constructor;switch(t){case Se:return Y(r);case ge:case be:return new o(+r);case Ie:return Zr(r,e);case Ee:case we:case Re:case je:case Be:case Ce:case Fe:case Le:case Me:return Cr(r,e);case he:return new o;case ye:case ve:return new o(r);case Ae:return $r(r);case Te:return new o;case Oe:return tt(r)}}var et=Pe;var We="[object Map]";function ke(r){return R(r)&&O(r)==We}var ot=ke;var at=L&&L.isMap,Ne=at?F(at):ot,ft=Ne;var _e="[object Set]";function Ue(r){return R(r)&&O(r)==_e}var nt=Ue;var mt=L&&L.isSet,Ge=mt?F(mt):nt,ut=Ge;var De=1,qe=2,ze=4,it="[object Arguments]",Ke="[object Array]",Ve="[object Boolean]",He="[object Date]",Ye="[object Error]",pt="[object Function]",Je="[object GeneratorFunction]",Xe="[object Map]",Ze="[object Number]",st="[object Object]",$e="[object RegExp]",Qe="[object Set]",ro="[object String]",to="[object Symbol]",eo="[object WeakMap]",oo="[object ArrayBuffer]",ao="[object DataView]",fo="[object Float32Array]",no="[object Float64Array]",mo="[object Int8Array]",uo="[object Int16Array]",io="[object Int32Array]",po="[object Uint8Array]",so="[object Uint8ClampedArray]",lo="[object Uint16Array]",xo="[object Uint32Array]",p={};p[it]=p[Ke]=p[oo]=p[ao]=p[Ve]=p[He]=p[fo]=p[no]=p[mo]=p[uo]=p[io]=p[Xe]=p[Ze]=p[st]=p[$e]=p[Qe]=p[ro]=p[to]=p[po]=p[so]=p[lo]=p[xo]=!0;p[Ye]=p[pt]=p[eo]=!1;function $(r,t,e,o,a,f){var n,m=t&De,u=t&qe,i=t&ze;if(e&&(n=a?e(r,o,a,f):e(r)),n!==void 0)return n;if(!y(r))return r;var l=b(r);if(l){if(n=Xr(r),!m)return lr(r,n)}else{var d=O(r),E=d==pt||d==Je;if(Ar(r))return wr(r,m);if(d==st||d==it||E&&!a){if(n=u||E?{}:Fr(r),!m)return u?Yr(r,Vr(n,r)):Hr(r,Kr(n,r))}else{if(!p[d])return a?r:{};n=et(r,d,m)}}f||(f=new Er);var w=f.get(r);if(w)return w;f.set(r,n),ut(r)?r.forEach(function(g){n.add($(g,t,e,g,r,f))}):ft(r)&&r.forEach(function(g,x){n.set(x,$(g,t,e,x,r,f))});var tr=i?u?Jr:Br:u?A:h,U=l?void 0:tr(r);return xr(U||r,function(g,x){U&&(x=g,g=r[x]),B(n,x,$(g,t,e,x,r,f))}),n}var M=$;var co=4;function go(r){return M(r,co)}var bo=go;var lt=Object.prototype,ho=lt.hasOwnProperty,yo=C(function(r,t){r=Object(r);var e=-1,o=t.length,a=o>2?t[2]:void 0;for(a&&I(t[0],t[1],a)&&(o=1);++et}var ct=Bo;function Co(r){return r&&r.length?X(r,G,ct):void 0}var Fo=Co;function Lo(r,t,e,o){if(!y(r))return r;t=z(t,r);for(var a=-1,f=t.length,n=f-1,m=r;m!=null&&++aa?0:a+t),e=e>a?a:e,e<0&&(e+=a),a=t>e?0:e-t>>>0,t>>>=0;for(var f=Array(a);++o=t||T<0||d&&W>=f}function x(){var s=_();if(g(s))return ur(s);m=setTimeout(x,U(s))}function ur(s){return m=void 0,E&&o?w(s):(o=a=void 0,n)}function re(){m!==void 0&&clearTimeout(m),i=0,o=u=a=m=void 0}function te(){return m===void 0?n:ur(_())}function er(){var s=_(),T=g(s);if(o=arguments,a=this,u=s,T){if(m===void 0)return tr(u);if(d)return clearTimeout(m),m=setTimeout(x,t),w(u)}return m===void 0&&(m=setTimeout(x,t)),n}return er.cancel=re,er.flush=te,er}var Ia=Sa;function Ea(r,t){for(var e=r==null?0:r.length;e--&&t(r[e],e,r)!==!1;);return r}var Rt=Ea;var wa=kr(!0),jt=wa;function Ra(r,t){return r&&jt(r,t,h)}var Bt=Ra;var ja=_r(Bt,!0),Ct=ja;function Ba(r,t){var e=b(r)?Rt:Ct;return e(r,S(t))}var Ca=Ba;function Fa(r){return function(t,e,o){var a=Object(t);if(!q(t)){var f=c(e,3);t=h(t),e=function(m){return f(a[m],m,a)}}var n=r(t,e,o);return n>-1?a[f?t[n]:n]:void 0}}var Ft=Fa;var La=Math.max;function Ma(r,t,e){var o=r==null?0:r.length;if(!o)return-1;var a=e==null?0:Q(e);return a<0&&(a=La(o+a,0)),cr(r,c(t,3),a)}var Lt=Ma;var Pa=Ft(Lt),Wa=Pa;function ka(r){return r&&r.length?r[0]:void 0}var Mt=ka;function Na(r,t){return r==null?r:Nr(r,S(t),A)}var _a=Na;function Ua(r,t){return r&&J(r,S(t))}var Ga=Ua;var Da=Object.prototype,qa=Da.hasOwnProperty,za=rr(function(r,t,e){qa.call(r,e)?r[e].push(t):D(r,e,[t])}),Ka=za;var Va=Object.prototype,Ha=Va.hasOwnProperty;function Ya(r,t){return r!=null&&Ha.call(r,t)}var Pt=Ya;function Ja(r,t){return r!=null&&Mr(r,t,Pt)}var Xa=Ja;var Za="[object String]";function $a(r){return typeof r=="string"||!b(r)&&R(r)&&sr(r)==Za}var Wt=$a;function Qa(r){var t=r==null?0:r.length;return t?St(r,0,-1):[]}var rf=Qa;function tf(r,t){return Lr(r,t)}var ef=tf;function of(r,t){return r&&r.length?X(r,c(t,2),qr):void 0}var af=of;function ff(r,t){var e=r.length;for(r.sort(t);e--;)r[e]=r[e].value;return r}var kt=ff;function nf(r,t){if(r!==t){var e=r!==void 0,o=r===null,a=r===r,f=k(r),n=t!==void 0,m=t===null,u=t===t,i=k(t);if(!m&&!i&&!f&&r>t||f&&n&&u&&!m&&!i||o&&n&&u||!e&&u||!a)return 1;if(!o&&!f&&!i&&r=m)return u;var i=e[o];return u*(i=="desc"?-1:1)}}return r.index-t.index}var _t=mf;function uf(r,t,e){t.length?t=j(t,function(f){return b(f)?function(n){return K(n,f.length===1?f[0]:f)}:f}):t=[G];var o=-1;t=j(t,F(c));var a=Dr(r,function(f,n,m){var u=j(t,function(i){return i(f)});return{criteria:u,index:++o,value:f}});return kt(a,function(f,n){return _t(f,n,e)})}var Ut=uf;var pf=Wr("length"),Gt=pf;var qt="\\ud800-\\udfff",sf="\\u0300-\\u036f",lf="\\ufe20-\\ufe2f",df="\\u20d0-\\u20ff",xf=sf+lf+df,cf="\\ufe0e\\ufe0f",gf="["+qt+"]",fr="["+xf+"]",nr="\\ud83c[\\udffb-\\udfff]",bf="(?:"+fr+"|"+nr+")",zt="[^"+qt+"]",Kt="(?:\\ud83c[\\udde6-\\uddff]){2}",Vt="[\\ud800-\\udbff][\\udc00-\\udfff]",hf="\\u200d",Ht=bf+"?",Yt="["+cf+"]?",yf="(?:"+hf+"(?:"+[zt,Kt,Vt].join("|")+")"+Yt+Ht+")*",Af=Yt+Ht+yf,Tf="(?:"+[zt+fr+"?",fr,Kt,Vt,gf].join("|")+")",Dt=RegExp(nr+"(?="+nr+")|"+Tf+Af,"g");function vf(r){for(var t=Dt.lastIndex=0;Dt.test(r);)++t;return t}var Jt=vf;function Of(r){return It(r)?Jt(r):Gt(r)}var Xt=Of;var Sf=rr(function(r,t,e){r[e?0:1].push(t)},function(){return[[],[]]}),If=Sf;var Ef=Math.ceil,wf=Math.max;function Rf(r,t,e,o){for(var a=-1,f=wf(Ef((t-r)/(e||1)),0),n=Array(f);f--;)n[o?f:++a]=r,r+=e;return n}var Zt=Rf;function jf(r){return function(t,e,o){return o&&typeof o!="number"&&I(t,e,o)&&(e=o=void 0),t=P(t),e===void 0?(e=t,t=0):e=P(e),o=o===void 0?t1&&I(r,t[0],t[1])?t=[]:e>2&&I(t[0],t[1],t[2])&&(t=[t[0]]),Ut(r,V(t,1),[])}),kf=Wf;var Nf=9007199254740991,mr=4294967295,_f=Math.min;function Uf(r,t){if(r=Q(r),r<1||r>Nf)return[];var e=mr,o=_f(r,mr);t=S(t),r-=mr;for(var a=yr(o,t);++en(null,null,function*(){let t=yield g("info",e);a.debug(t)}),"parse")},d={version:"11.14.0"},m=r(()=>d.version,"getVersion"),c={getVersion:m},f=r((e,t,p)=>{a.debug(`rendering info diagram +`+e);let o=s(t);i(o,100,400,!0),o.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${p}`)},"draw"),u={draw:f},w={parser:v,db:c,renderer:u};export{w as diagram}; diff --git a/src/google/adk/cli/browser/chunk-UKZIEWH5.js b/src/google/adk/cli/browser/chunk-UKZIEWH5.js new file mode 100644 index 0000000000..5c4f076d2e --- /dev/null +++ b/src/google/adk/cli/browser/chunk-UKZIEWH5.js @@ -0,0 +1,2 @@ +import{a as be}from"./chunk-GP6TCC26.js";import{M as L,i as O,l as nt,o as R,s as it}from"./chunk-37QI3DOO.js";import{$ as xt,L as ot,O as at,P as st,Q as lt,R as ft,S as ut,T as ct,U as dt,V as mt,W as pt,X as ht,Y as gt,Z as vt,_ as yt,a as rt,aa as bt,ba as wt,ca as Ot,da as Pt,ea as Mt,g as f,i as x}from"./chunk-JRNAXTJ7.js";import{A as tt,B as N,D as et,a as V,c as K,d as $,e as E,f as p,g as C,h as q,j as X,k as Y,l as v,n as y,o as A,q as F,r as J,u as Z,v as Q,w as k,z as I}from"./chunk-URMDZFG4.js";import{h as xe}from"./chunk-RMXJBC7V.js";var ae=xe(be(),1);var we=(function(){try{var t=X(Object,"defineProperty");return t({},"",{}),t}catch(e){}})(),b=we;function Oe(t,e,r){e=="__proto__"&&b?b(t,e,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[e]=r}var w=Oe;function Pe(t,e,r){(r!==void 0&&!v(t[e],r)||r===void 0&&!(e in t))&&w(t,e,r)}var P=Pe;var Ct=typeof exports=="object"&&exports&&!exports.nodeType&&exports,St=Ct&&typeof module=="object"&&module&&!module.nodeType&&module,Me=St&&St.exports===Ct,Tt=Me?V.Buffer:void 0,$t=Tt?Tt.allocUnsafe:void 0;function Se(t,e){if(e)return t.slice();var r=t.length,n=$t?$t(r):new t.constructor(r);return t.copy(n),n}var At=Se;function Te(t){var e=new t.constructor(t.byteLength);return new N(e).set(new N(t)),e}var It=Te;function $e(t,e){var r=e?It(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}var Lt=$e;function Ce(t,e){var r=-1,n=t.length;for(e||(e=Array(n));++r0){if(++e>=er)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var Qt=ir;var or=Qt(Zt),kt=or;function ar(t,e){return kt(Yt(t,e,C),t+"")}var te=ar;function sr(t,e,r){if(!p(r))return!1;var n=typeof e;return(n=="number"?y(r)&&Y(e,r.length):n=="string"&&e in r)?v(r[e],t):!1}var ee=sr;function lr(t){return te(function(e,r){var n=-1,i=r.length,o=i>1?r[i-1]:void 0,a=i>2?r[2]:void 0;for(o=t.length>3&&typeof o=="function"?(i--,o):void 0,a&&ee(r[0],r[1],a)&&(o=i<3?void 0:o,i=1),e=Object(e);++ns.args);it(a),n=R(n,[...a])}else n=r.args;if(!n)return;let i=nt(t,e),o="config";return n[o]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[o],delete n[o]),n},"detectInit"),se=f(function(t,e=null){try{let r=new RegExp(`[%]{2}(?![{]${dr.source})(?=[}][%]{2}).* +`,"ig");t=t.trim().replace(r,"").replace(/'/gm,'"'),x.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${t}`);let n,i=[];for(;(n=O.exec(t))!==null;)if(n.index===O.lastIndex&&O.lastIndex++,n&&!e||e&&n[1]?.match(e)||e&&n[2]?.match(e)){let o=n[1]?n[1]:n[2],a=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:o,args:a})}return i.length===0?{type:t,args:null}:i.length===1?i[0]:i}catch(r){return x.error(`ERROR: ${r.message} - Unable to parse directive type: '${e}' based on the text: '${t}'`),{type:void 0,args:null}}},"detectDirective"),Si=f(function(t){return t.replace(O,"")},"removeDirectives"),pr=f(function(t,e){for(let[r,n]of e.entries())if(n.match(t))return r;return-1},"isSubstringInArray");function le(t,e){if(!t)return e;let r=`curve${t.charAt(0).toUpperCase()+t.slice(1)}`;return cr[r]??e}f(le,"interpolateToCurve");function fe(t,e){let r=t.trim();if(r)return e.securityLevel!=="loose"?(0,ae.sanitizeUrl)(r):r}f(fe,"formatUrl");var hr=f((t,...e)=>{let r=t.split("."),n=r.length-1,i=r[n],o=window;for(let a=0;a{r+=D(i,e),e=i});let n=r/2;return H(t,n)}f(ue,"traverseEdge");function ce(t){return t.length===1?t[0]:ue(t)}f(ce,"calcLabelPosition");var ie=f((t,e=2)=>{let r=Math.pow(10,e);return Math.round(t*r)/r},"roundNumber"),H=f((t,e)=>{let r,n=e;for(let i of t){if(r){let o=D(i,r);if(o===0)return r;if(o=1)return{x:i.x,y:i.y};if(a>0&&a<1)return{x:ie((1-a)*r.x+a*i.x,5),y:ie((1-a)*r.y+a*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),gr=f((t,e,r)=>{x.info(`our points ${JSON.stringify(e)}`),e[0]!==r&&(e=e.reverse());let i=H(e,25),o=t?10:5,a=Math.atan2(e[0].y-i.y,e[0].x-i.x),s={x:0,y:0};return s.x=Math.sin(a)*o+(e[0].x+i.x)/2,s.y=-Math.cos(a)*o+(e[0].y+i.y)/2,s},"calcCardinalityPosition");function de(t,e,r){let n=structuredClone(r);x.info("our points",n),e!=="start_left"&&e!=="start_right"&&n.reverse();let i=25+t,o=H(n,i),a=10+t*.5,s=Math.atan2(n[0].y-o.y,n[0].x-o.x),l={x:0,y:0};return e==="start_left"?(l.x=Math.sin(s+Math.PI)*a+(n[0].x+o.x)/2,l.y=-Math.cos(s+Math.PI)*a+(n[0].y+o.y)/2):e==="end_right"?(l.x=Math.sin(s-Math.PI)*a+(n[0].x+o.x)/2-5,l.y=-Math.cos(s-Math.PI)*a+(n[0].y+o.y)/2-5):e==="end_left"?(l.x=Math.sin(s)*a+(n[0].x+o.x)/2-5,l.y=-Math.cos(s)*a+(n[0].y+o.y)/2-5):(l.x=Math.sin(s)*a+(n[0].x+o.x)/2,l.y=-Math.cos(s)*a+(n[0].y+o.y)/2),l}f(de,"calcTerminalLabelPosition");function me(t){let e="",r="";for(let n of t)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":e=e+n+";");return{style:e,labelStyle:r}}f(me,"getStylesFromArray");var oe=0,vr=f(()=>(oe++,"id-"+Math.random().toString(36).substr(2,12)+"-"+oe),"generateId");function pe(t){let e="",r="0123456789abcdef",n=r.length;for(let i=0;ipe(t.length),"random"),xr=f(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),br=f(function(t,e){let r=e.text.replace(L.lineBreakRegex," "),[,n]=U(e.fontSize),i=t.append("text");i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",n),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0&&i.attr("class",e.class);let o=i.append("tspan");return o.attr("x",e.x+e.textMargin*2),o.attr("fill",e.fill),o.text(r),i},"drawSimpleText"),wr=I((t,e,r)=>{if(!t||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),L.lineBreakRegex.test(t)))return t;let n=t.split(" ").filter(Boolean),i=[],o="";return n.forEach((a,s)=>{let l=S(`${a} `,r),c=S(o,r);if(l>e){let{hyphenatedStrings:h,remainingWord:d}=Or(a,e,"-",r);i.push(o,...h),o=d}else c+l>=e?(i.push(o),o=a):o=[o,a].filter(Boolean).join(" ");s+1===n.length&&i.push(o)}),i.filter(a=>a!=="").join(r.joinWith)},(t,e,r)=>`${t}${e}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),Or=I((t,e,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...t],o=[],a="";return i.forEach((s,l)=>{let c=`${a}${s}`;if(S(c,n)>=e){let m=l+1,h=i.length===m,d=`${c}${r}`;o.push(h?c:d),a=""}else a=c}),{hyphenatedStrings:o,remainingWord:a}},(t,e,r="-",n)=>`${t}${e}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);function he(t,e){return j(t,e).height}f(he,"calculateTextHeight");function S(t,e){return j(t,e).width}f(S,"calculateTextWidth");var j=I((t,e)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=e;if(!t)return{width:0,height:0};let[,o]=U(r),a=["sans-serif",n],s=t.split(L.lineBreakRegex),l=[],c=rt("body");if(!c.remove)return{width:0,height:0,lineHeight:0};let u=c.append("svg");for(let h of a){let d=0,g={width:0,height:0,lineHeight:0};for(let ye of s){let z=xr();z.text=ye||ur;let G=br(u,z).style("font-size",o).style("font-weight",i).style("font-family",h),T=(G._groups||G)[0][0].getBBox();if(T.width===0&&T.height===0)throw new Error("svg element not in render tree");g.width=Math.round(Math.max(g.width,T.width)),d=Math.round(T.height),g.height+=d,g.lineHeight=Math.round(Math.max(g.lineHeight,d))}l.push(g)}u.remove();let m=isNaN(l[1].height)||isNaN(l[1].width)||isNaN(l[1].lineHeight)||l[0].height>l[1].height&&l[0].width>l[1].width&&l[0].lineHeight>l[1].lineHeight?0:1;return l[m]},(t,e)=>`${t}${e.fontSize}${e.fontWeight}${e.fontFamily}`),Pr=class{constructor(t=!1,e){this.count=0,this.count=e?e.length:0,this.next=t?()=>this.count++:()=>Date.now()}static{f(this,"InitIDGenerator")}},W,Mr=f(function(t){return W=W||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),W.innerHTML=t,unescape(W.textContent)},"entityDecode");function Sr(t){return"str"in t}f(Sr,"isDetailedError");var Tr=f((t,e,r,n)=>{if(!n)return;let i=t.node()?.getBBox();i&&t.append("text").text(n).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-r).attr("class",e)},"insertTitle"),U=f(t=>{if(typeof t=="number")return[t,t+"px"];let e=parseInt(t??"",10);return Number.isNaN(e)?[void 0,void 0]:t===String(e)?[e,t+"px"]:[e,t]},"parseFontSize");function ge(t,e){return ne({},t,e)}f(ge,"cleanAndMerge");var Ti={assignWithDepth:R,wrapLabel:wr,calculateTextHeight:he,calculateTextWidth:S,calculateTextDimensions:j,cleanAndMerge:ge,detectInit:mr,detectDirective:se,isSubstringInArray:pr,interpolateToCurve:le,calcLabelPosition:ce,calcCardinalityPosition:gr,calcTerminalLabelPosition:de,formatUrl:fe,getStylesFromArray:me,generateId:vr,random:yr,runFunc:hr,entityDecode:Mr,insertTitle:Tr,isLabelCoordinateInPath:ve,parseFontSize:U,InitIDGenerator:Pr},$i=f(function(t){let e=t;return e=e.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),e=e.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),e},"encodeEntities"),Ci=f(function(t){return t.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),Ai=f((t,e,{counter:r=0,prefix:n,suffix:i},o)=>o||`${n?`${n}_`:""}${t}_${e}_${r}${i?`_${i}`:""}`,"getEdgeId");function $r(t){return t??null}f($r,"handleUndefinedAttr");function ve(t,e){let r=Math.round(t.x),n=Math.round(t.y),i=e.replace(/(\d+\.\d+)/g,o=>Math.round(parseFloat(o)).toString());return i.includes(r.toString())||i.includes(n.toString())}f(ve,"isLabelCoordinateInPath");export{Bt as a,Jt as b,kt as c,w as d,Dt as e,Ht as f,Yt as g,te as h,ee as i,_ as j,B as k,At as l,It as m,Lt as n,Et as o,Ft as p,ne as q,ur as r,Si as s,le as t,me as u,vr as v,yr as w,wr as x,he as y,S as z,Sr as A,U as B,ge as C,Ti as D,$i as E,Ci as F,Ai as G,$r as H}; diff --git a/src/google/adk/cli/browser/chunk-UMUHBNGZ.js b/src/google/adk/cli/browser/chunk-UMUHBNGZ.js new file mode 100644 index 0000000000..f9dc22690f --- /dev/null +++ b/src/google/adk/cli/browser/chunk-UMUHBNGZ.js @@ -0,0 +1 @@ +import{a as e,b as r}from"./chunk-X43UMWSZ.js";import"./chunk-7ZGKZ6HH.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";export{e as PacketModule,r as createPacketServices}; diff --git a/src/google/adk/cli/browser/chunk-URMDZFG4.js b/src/google/adk/cli/browser/chunk-URMDZFG4.js new file mode 100644 index 0000000000..9e57921dca --- /dev/null +++ b/src/google/adk/cli/browser/chunk-URMDZFG4.js @@ -0,0 +1 @@ +var Et=typeof global=="object"&&global&&global.Object===Object&&global,A=Et;var zt=typeof self=="object"&&self&&self.Object===Object&&self,Ft=A||zt||Function("return this")(),p=Ft;var Dt=p.Symbol,h=Dt;var H=Object.prototype,Mt=H.hasOwnProperty,Gt=H.toString,j=h?h.toStringTag:void 0;function Lt(t){var r=Mt.call(t,j),e=t[j];try{t[j]=void 0;var o=!0}catch(n){}var i=Gt.call(t);return o&&(r?t[j]=e:delete t[j]),i}var N=Lt;var Ht=Object.prototype,Nt=Ht.toString;function Ut(t){return Nt.call(t)}var U=Ut;var Rt="[object Null]",Bt="[object Undefined]",R=h?h.toStringTag:void 0;function $t(t){return t==null?t===void 0?Bt:Rt:R&&R in Object(t)?N(t):U(t)}var g=$t;function kt(t){var r=typeof t;return t!=null&&(r=="object"||r=="function")}var S=kt;var qt="[object AsyncFunction]",Kt="[object Function]",Vt="[object GeneratorFunction]",Xt="[object Proxy]";function Jt(t){if(!S(t))return!1;var r=g(t);return r==Kt||r==Vt||r==qt||r==Xt}var w=Jt;var Wt=p["__core-js_shared__"],I=Wt;var B=(function(){var t=/[^.]+$/.exec(I&&I.keys&&I.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function Yt(t){return!!B&&B in t}var $=Yt;var Zt=Function.prototype,Qt=Zt.toString;function tr(t){if(t!=null){try{return Qt.call(t)}catch(r){}try{return t+""}catch(r){}}return""}var k=tr;var rr=/[\\^$.*+?()[\]{}|]/g,er=/^\[object .+?Constructor\]$/,or=Function.prototype,ar=Object.prototype,ir=or.toString,nr=ar.hasOwnProperty,pr=RegExp("^"+ir.call(nr).replace(rr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function fr(t){if(!S(t)||$(t))return!1;var r=w(t)?pr:er;return r.test(k(t))}var q=fr;function sr(t,r){return t?.[r]}var K=sr;function ur(t,r){var e=K(t,r);return q(e)?e:void 0}var P=ur;var cr=P(Object,"create"),s=cr;function mr(){this.__data__=s?s(null):{},this.size=0}var V=mr;function lr(t){var r=this.has(t)&&delete this.__data__[t];return this.size-=r?1:0,r}var X=lr;var dr="__lodash_hash_undefined__",hr=Object.prototype,gr=hr.hasOwnProperty;function br(t){var r=this.__data__;if(s){var e=r[t];return e===dr?void 0:e}return gr.call(r,t)?r[t]:void 0}var J=br;var yr=Object.prototype,_r=yr.hasOwnProperty;function xr(t){var r=this.__data__;return s?r[t]!==void 0:_r.call(r,t)}var W=xr;var vr="__lodash_hash_undefined__";function jr(t,r){var e=this.__data__;return this.size+=this.has(t)?0:1,e[t]=s&&r===void 0?vr:r,this}var Y=jr;function b(t){var r=-1,e=t==null?0:t.length;for(this.clear();++r-1}var et=Pr;function Er(t,r){var e=this.__data__,o=c(e,t);return o<0?(++this.size,e.push([t,r])):e[o][1]=r,this}var ot=Er;function y(t){var r=-1,e=t==null?0:t.length;for(this.clear();++r-1&&t%1==0&&t<=kr}var z=qr;function Kr(t){return t!=null&&z(t.length)&&!w(t)}var Ba=Kr;var Vr=Object.prototype;function Xr(t){var r=t&&t.constructor,e=typeof r=="function"&&r.prototype||Vr;return t===e}var ka=Xr;var Jr="[object Arguments]";function Wr(t){return x(t)&&g(t)==Jr}var M=Wr;var ct=Object.prototype,Yr=ct.hasOwnProperty,Zr=ct.propertyIsEnumerable,Qr=M((function(){return arguments})())?M:function(t){return x(t)&&Yr.call(t,"callee")&&!Zr.call(t,"callee")},mt=Qr;function te(){return!1}var lt=te;var gt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,dt=gt&&typeof module=="object"&&module&&!module.nodeType&&module,re=dt&&dt.exports===gt,ht=re?p.Buffer:void 0,ee=ht?ht.isBuffer:void 0,oe=ee||lt,bt=oe;var ae="[object Arguments]",ie="[object Array]",ne="[object Boolean]",pe="[object Date]",fe="[object Error]",se="[object Function]",ue="[object Map]",ce="[object Number]",me="[object Object]",le="[object RegExp]",de="[object Set]",he="[object String]",ge="[object WeakMap]",be="[object ArrayBuffer]",ye="[object DataView]",_e="[object Float32Array]",xe="[object Float64Array]",ve="[object Int8Array]",je="[object Int16Array]",Te="[object Int32Array]",Ce="[object Uint8Array]",Oe="[object Uint8ClampedArray]",Ae="[object Uint16Array]",Se="[object Uint32Array]",a={};a[_e]=a[xe]=a[ve]=a[je]=a[Te]=a[Ce]=a[Oe]=a[Ae]=a[Se]=!0;a[ae]=a[ie]=a[be]=a[ne]=a[ye]=a[pe]=a[fe]=a[se]=a[ue]=a[ce]=a[me]=a[le]=a[de]=a[he]=a[ge]=!1;function we(t){return x(t)&&z(t.length)&&!!a[g(t)]}var yt=we;function Ie(t){return function(r){return t(r)}}var _t=Ie;var xt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,C=xt&&typeof module=="object"&&module&&!module.nodeType&&module,Pe=C&&C.exports===xt,G=Pe&&A.process,Ee=(function(){try{var t=C&&C.require&&C.require("util").types;return t||G&&G.binding&&G.binding("util")}catch(r){}})(),L=Ee;var vt=L&&L.isTypedArray,ze=vt?_t(vt):yt,jt=ze;function Fe(t,r){for(var e=-1,o=Array(t);++e-1&&t%1==0&&t{ce(p)&&(o?.textStyles?o.textStyles.push(p):o.textStyles=[p]),o?.styles?o.styles.push(p):o.styles=[p]}),this.classes.set(s,o)}getClasses(){return this.classes}getStylesForClass(s){return this.classes.get(s)?.styles??[]}clear(){Z(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function ue(s){if(!s.length)return[];let a=[],o=[];return s.forEach(i=>{let p={name:i.name,children:i.type==="Leaf"?void 0:[]};for(p.classSelector=i?.classSelector,i?.cssCompiledStyles&&(p.cssCompiledStyles=i.cssCompiledStyles),i.type==="Leaf"&&i.value!==void 0&&(p.value=i.value);o.length>0&&o[o.length-1].level>=i.level;)o.pop();if(o.length===0)a.push(p);else{let n=o[o.length-1].node;n.children?n.children.push(p):n.children=[p]}i.type!=="Leaf"&&o.push({node:p,level:i.level})}),a}d(ue,"buildHierarchy");var we=d((s,a)=>{de(s,a);let o=[];for(let n of s.TreemapRows??[])n.$type==="ClassDefStatement"&&a.addClass(n.className??"",n.styleText??"");for(let n of s.TreemapRows??[]){let h=n.item;if(!h)continue;let u=n.indent?parseInt(n.indent):0,V=Te(h),l=h.classSelector?a.getStylesForClass(h.classSelector):[],N=l.length>0?l:void 0,v={level:u,name:V,type:h.$type,value:h.value,classSelector:h.classSelector,cssCompiledStyles:N};o.push(v)}let i=ue(o),p=d((n,h)=>{for(let u of n)a.addNode(u,h),u.children&&u.children.length>0&&p(u.children,h+1)},"addNodesRecursively");p(i,0)},"populate"),Te=d(s=>s.name?String(s.name):"","getItemName"),fe={parser:{yy:void 0},parse:d(s=>J(null,null,function*(){try{let o=yield he("treemap",s);H.debug("Treemap AST:",o);let i=fe.parser?.yy;if(!(i instanceof me))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");we(o,i)}catch(a){throw H.error("Error parsing treemap:",a),a}}),"parse")},Le=10,z=10,M=25,$e=d((s,a,o,i)=>{let p=i.db,n=p.getConfig(),h=n.padding??Le,u=p.getDiagramTitle(),V=p.getRoot(),{themeVariables:l}=O();if(!V)return;let N=u?30:0,v=ie(a),X=n.nodeWidth?n.nodeWidth*z:960,Y=n.nodeHeight?n.nodeHeight*z:500,B=X,j=Y+N;v.attr("viewBox",`0 0 ${B} ${j}`),Q(v,j,B,n.useMaxWidth);let C;try{let e=n.valueFormat||",";if(e==="$0,0")C=d(t=>"$"+F(",")(t),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){let t=/\.\d+/.exec(e),r=t?t[0]:"";C=d(m=>"$"+F(","+r)(m),"valueFormat")}else if(e.startsWith("$")){let t=e.substring(1);C=d(r=>"$"+F(t||"")(r),"valueFormat")}else C=F(e)}catch(e){H.error("Error creating format function:",e),C=F(",")}let A=R().range(["transparent",l.cScale0,l.cScale1,l.cScale2,l.cScale3,l.cScale4,l.cScale5,l.cScale6,l.cScale7,l.cScale8,l.cScale9,l.cScale10,l.cScale11]),ye=R().range(["transparent",l.cScalePeer0,l.cScalePeer1,l.cScalePeer2,l.cScalePeer3,l.cScalePeer4,l.cScalePeer5,l.cScalePeer6,l.cScalePeer7,l.cScalePeer8,l.cScalePeer9,l.cScalePeer10,l.cScalePeer11]),W=R().range([l.cScaleLabel0,l.cScaleLabel1,l.cScaleLabel2,l.cScaleLabel3,l.cScaleLabel4,l.cScaleLabel5,l.cScaleLabel6,l.cScaleLabel7,l.cScaleLabel8,l.cScaleLabel9,l.cScaleLabel10,l.cScaleLabel11]);u&&v.append("text").attr("x",B/2).attr("y",N/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(u);let U=v.append("g").attr("transform",`translate(0, ${N})`).attr("class","treemapContainer"),ge=ne(V).sum(e=>e.value??0).sort((e,t)=>(t.value??0)-(e.value??0)),q=oe().size([X,Y]).paddingTop(e=>e.children&&e.children.length>0?M+z:0).paddingInner(h).paddingLeft(e=>e.children&&e.children.length>0?z:0).paddingRight(e=>e.children&&e.children.length>0?z:0).paddingBottom(e=>e.children&&e.children.length>0?z:0).round(!0)(ge),Se=q.descendants().filter(e=>e.children&&e.children.length>0),k=U.selectAll(".treemapSection").data(Se).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);k.append("rect").attr("width",e=>e.x1-e.x0).attr("height",M).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),k.append("clipPath").attr("id",(e,t)=>`clip-section-${a}-${t}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",M),k.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,t)=>`treemapSection section${t}`).attr("fill",e=>A(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>ye(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";let t=T({cssCompiledStyles:e.data.cssCompiledStyles});return t.nodeStyles+";"+t.borderStyles.join(";")}),k.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",M/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("style",e=>{if(e.depth===0)return"display: none;";let t="dominant-baseline: middle; font-size: 12px; fill:"+W(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",r=T({cssCompiledStyles:e.data.cssCompiledStyles});return t+r.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;let t=D(this),r=e.data.name;t.text(r);let m=e.x1-e.x0,g=6,S;n.showValues!==!1&&e.value?S=m-10-30-10-g:S=m-g-6;let f=Math.max(15,S),c=t.node();if(c.getComputedTextLength()>f){let y=r;for(;y.length>0;){if(y=r.substring(0,y.length-1),y.length===0){t.text("..."),c.getComputedTextLength()>f&&t.text("");break}if(t.text(y+"..."),c.getComputedTextLength()<=f)break}}}),n.showValues!==!1&&k.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",M/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?C(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";let t="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+W(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",r=T({cssCompiledStyles:e.data.cssCompiledStyles});return t+r.labelStyles.replace("color:","fill:")});let xe=q.leaves(),E=U.selectAll(".treemapLeafGroup").data(xe).enter().append("g").attr("class",(e,t)=>`treemapNode treemapLeafGroup leaf${t}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);E.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?A(e.parent.data.name):A(e.data.name)).attr("style",e=>T({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?A(e.parent.data.name):A(e.data.name)).attr("stroke-width",3),E.append("clipPath").attr("id",(e,t)=>`clip-${a}-${t}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),E.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{let t="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+W(e.data.name)+";",r=T({cssCompiledStyles:e.data.cssCompiledStyles});return t+r.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,t)=>`url(#clip-${a}-${t})`).text(e=>e.data.name).each(function(e){let t=D(this),r=e.x1-e.x0,m=e.y1-e.y0,g=t.node(),S=4,L=r-2*S,f=m-2*S;if(L<10||f<10){t.style("display","none");return}let c=parseInt(t.style("font-size"),10),w=8,x=28,y=.6,b=6,P=2;for(;g.getComputedTextLength()>L&&c>w;)c--,t.style("font-size",`${c}px`);let $=Math.max(b,Math.min(x,Math.round(c*y))),_=c+P+$;for(;_>f&&c>w&&(c--,$=Math.max(b,Math.min(x,Math.round(c*y))),!($f;t.style("font-size",`${c}px`),(g.getComputedTextLength()>L||c(t.x1-t.x0)/2).attr("y",function(t){return(t.y1-t.y0)/2}).attr("style",t=>{let r="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+W(t.data.name)+";",m=T({cssCompiledStyles:t.data.cssCompiledStyles});return r+m.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,r)=>`url(#clip-${a}-${r})`).text(t=>t.value?C(t.value):"").each(function(t){let r=D(this),m=this.parentNode;if(!m){r.style("display","none");return}let g=D(m).select(".treemapLabel");if(g.empty()||g.style("display")==="none"){r.style("display","none");return}let S=parseFloat(g.style("font-size")),L=28,f=.6,c=6,w=2,x=Math.max(c,Math.min(L,Math.round(S*f)));r.style("font-size",`${x}px`);let b=(t.y1-t.y0)/2+S/2+w;r.attr("y",b);let P=t.x1-t.x0,ve=t.y1-t.y0-4,Ce=P-8;r.node().getComputedTextLength()>Ce||b+x>ve||x{let a=G(Ne,s);return` - .treemapNode.section { - stroke: ${a.sectionStrokeColor}; - stroke-width: ${a.sectionStrokeWidth}; - fill: ${a.sectionFillColor}; - } - .treemapNode.leaf { - stroke: ${a.leafStrokeColor}; - stroke-width: ${a.leafStrokeWidth}; - fill: ${a.leafFillColor}; - } - .treemapLabel { - fill: ${a.labelColor}; - font-size: ${a.labelFontSize}; - } - .treemapValue { - fill: ${a.valueColor}; - font-size: ${a.valueFontSize}; - } - .treemapTitle { - fill: ${a.titleColor}; - font-size: ${a.titleFontSize}; - } - `},"getStyles"),ke=Ae,Oe={parser:fe,get db(){return new me},renderer:ze,styles:ke};export{Oe as diagram}; diff --git a/src/google/adk/cli/browser/chunk-VJTRHJAQ.js b/src/google/adk/cli/browser/chunk-VJTRHJAQ.js new file mode 100644 index 0000000000..8ae2553c8b --- /dev/null +++ b/src/google/adk/cli/browser/chunk-VJTRHJAQ.js @@ -0,0 +1,162 @@ +import{a as lt}from"./chunk-B2DSW4QB.js";import{h as ot}from"./chunk-LT3WOUUJ.js";import{a as ct}from"./chunk-APNCZOFE.js";import{a as ht}from"./chunk-XB6MIIOW.js";import{a as it,b as rt}from"./chunk-ZMOC4H7T.js";import{b as nt,c as ut}from"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import{f as at}from"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import{D as Qe,G as Je}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{M as q1,R as X1,S as Q1,T as J1,U as Z1,V as $1,W as et,X as tt,Y as he,Z as u1,_ as st,a as j1,b as Y1,g as H1}from"./chunk-37QI3DOO.js";import{a as Xe,g as k,i as Q}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{a as a1,b as n1,j as K1}from"./chunk-RMXJBC7V.js";var mt="flowchart-",Ct=class{constructor(){this.vertexCounter=0,this.config=he(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=Q1,this.setAccDescription=Z1,this.setDiagramTitle=et,this.getAccTitle=J1,this.getAccDescription=$1,this.getDiagramTitle=tt,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{k(this,"FlowDB")}sanitizeText(e){return q1.sanitizeText(e,this.config)}sanitizeNodeLabelType(e){switch(e){case"markdown":case"string":case"text":return e;default:return"markdown"}}setDiagramId(e){this.diagramId=e}lookUpDomId(e){for(let i of this.vertices.values())if(i.id===e)return this.diagramId?`${this.diagramId}-${i.domId}`:i.domId;return this.diagramId?`${this.diagramId}-${e}`:e}addVertex(e,i,r,a,o,d,l={},f){if(!e||e.trim().length===0)return;let n;if(f!==void 0){let E;f.includes(` +`)?E=f+` +`:E=`{ +`+f+` +}`,n=rt(E,{schema:it})}let g=this.edges.find(E=>E.id===e);if(g){let E=n;E?.animate!==void 0&&(g.animate=E.animate),E?.animation!==void 0&&(g.animation=E.animation),E?.curve!==void 0&&(g.interpolate=E.curve);return}let S,b=this.vertices.get(e);if(b===void 0&&(i===void 0&&r===void 0&&a!==void 0&&a!==null&&Q.warn(`Style applied to unknown node "${e}". This may indicate a typo. The node will be created automatically.`),b={id:e,labelType:"text",domId:mt+e+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(e,b)),this.vertexCounter++,i!==void 0?(this.config=he(),S=this.sanitizeText(i.text.trim()),b.labelType=i.type,S.startsWith('"')&&S.endsWith('"')&&(S=S.substring(1,S.length-1)),b.text=S):b.text===void 0&&(b.text=e),r!==void 0&&(b.type=r),a?.forEach(E=>{b.styles.push(E)}),o?.forEach(E=>{b.classes.push(E)}),d!==void 0&&(b.dir=d),b.props===void 0?b.props=l:l!==void 0&&Object.assign(b.props,l),n!==void 0){if(n.shape){if(n.shape!==n.shape.toLowerCase()||n.shape.includes("_"))throw new Error(`No such shape: ${n.shape}. Shape names should be lowercase.`);if(!at(n.shape))throw new Error(`No such shape: ${n.shape}.`);b.type=n?.shape}n?.label&&(b.text=n?.label,b.labelType=this.sanitizeNodeLabelType(n?.labelType)),n?.icon&&(b.icon=n?.icon,!n.label?.trim()&&b.text===e&&(b.text="")),n?.form&&(b.form=n?.form),n?.pos&&(b.pos=n?.pos),n?.img&&(b.img=n?.img,!n.label?.trim()&&b.text===e&&(b.text="")),n?.constraint&&(b.constraint=n.constraint),n.w&&(b.assetWidth=Number(n.w)),n.h&&(b.assetHeight=Number(n.h))}}addSingleLink(e,i,r,a){let l={start:e,end:i,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};Q.info("abc78 Got edge...",l);let f=r.text;if(f!==void 0&&(l.text=this.sanitizeText(f.text.trim()),l.text.startsWith('"')&&l.text.endsWith('"')&&(l.text=l.text.substring(1,l.text.length-1)),l.labelType=this.sanitizeNodeLabelType(f.type)),r!==void 0&&(l.type=r.type,l.stroke=r.stroke,l.length=r.length>10?10:r.length),a&&!this.edges.some(n=>n.id===a))l.id=a,l.isUserDefinedId=!0;else{let n=this.edges.filter(g=>g.start===l.start&&g.end===l.end);n.length===0?l.id=Je(l.start,l.end,{counter:0,prefix:"L"}):l.id=Je(l.start,l.end,{counter:n.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))Q.info("Pushing edge..."),this.edges.push(l);else throw new Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}. + +Initialize mermaid with maxEdges set to a higher number to allow more edges. +You cannot set this config via configuration inside the diagram as it is a secure config. +You have to call mermaid.initialize.`)}isLinkData(e){return e!==null&&typeof e=="object"&&"id"in e&&typeof e.id=="string"}addLink(e,i,r){let a=this.isLinkData(r)?r.id.replace("@",""):void 0;Q.info("addLink",e,i,a);for(let o of e)for(let d of i){let l=o===e[e.length-1],f=d===i[0];l&&f?this.addSingleLink(o,d,r,a):this.addSingleLink(o,d,r,void 0)}}updateLinkInterpolate(e,i){e.forEach(r=>{r==="default"?this.edges.defaultInterpolate=i:this.edges[r].interpolate=i})}updateLink(e,i){e.forEach(r=>{if(typeof r=="number"&&r>=this.edges.length)throw new Error(`The index ${r} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);r==="default"?this.edges.defaultStyle=i:(this.edges[r].style=i,(this.edges[r]?.style?.length??0)>0&&!this.edges[r]?.style?.some(a=>a?.startsWith("fill"))&&this.edges[r]?.style?.push("fill:none"))})}addClass(e,i){let r=i.join().replace(/\\,/g,"\xA7\xA7\xA7").replace(/,/g,";").replace(/§§§/g,",").split(";");e.split(",").forEach(a=>{let o=this.classes.get(a);o===void 0&&(o={id:a,styles:[],textStyles:[]},this.classes.set(a,o)),r?.forEach(d=>{if(/color/.exec(d)){let l=d.replace("fill","bgFill");o.textStyles.push(l)}o.styles.push(d)})})}setDirection(e){this.direction=e.trim(),/.*/.exec(this.direction)&&(this.direction="LR"),/.*v/.exec(this.direction)&&(this.direction="TB"),this.direction==="TD"&&(this.direction="TB")}setClass(e,i){for(let r of e.split(",")){let a=this.vertices.get(r);a&&a.classes.push(i);let o=this.edges.find(l=>l.id===r);o&&o.classes.push(i);let d=this.subGraphLookup.get(r);d&&d.classes.push(i)}}setTooltip(e,i){if(i!==void 0){i=this.sanitizeText(i);for(let r of e.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(r):r,i)}}setClickFun(e,i,r){if(he().securityLevel!=="loose"||i===void 0)return;let a=[];if(typeof r=="string"){a=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let d=0;d{let d=this.lookUpDomId(e),l=document.querySelector(`[id="${d}"]`);l!==null&&l.addEventListener("click",()=>{Qe.runFunc(i,...a)},!1)}))}setLink(e,i,r){e.split(",").forEach(a=>{let o=this.vertices.get(a);o!==void 0&&(o.link=Qe.formatUrl(i,this.config),o.linkTarget=r)}),this.setClass(e,"clickable")}getTooltip(e){return this.tooltips.get(e)}setClickEvent(e,i,r){e.split(",").forEach(a=>{this.setClickFun(a,i,r)}),this.setClass(e,"clickable")}bindFunctions(e){this.funs.forEach(i=>{i(e)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(e){let i=ot();Xe(e).select("svg").selectAll("g.node").on("mouseover",o=>{let d=Xe(o.currentTarget),l=d.attr("title");if(l===null)return;let f=o.currentTarget?.getBoundingClientRect();i.transition().duration(200).style("opacity",".9"),i.text(d.attr("title")).style("left",window.scrollX+f.left+(f.right-f.left)/2+"px").style("top",window.scrollY+f.bottom+"px"),i.html(H1.sanitize(l)),d.classed("hover",!0)}).on("mouseout",o=>{i.transition().duration(500).style("opacity",0),Xe(o.currentTarget).classed("hover",!1)})}clear(e="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.diagramId="",this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=e,this.config=he(),X1()}setGen(e){this.version=e||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(e,i,r){let a=e.text.trim(),o=r.text;e===r&&/\s/.exec(r.text)&&(a=void 0);let l=k(b=>{let E={boolean:{},number:{},string:{}},Z=[],_;return{nodeList:b.filter(function(j){let de=typeof j;return j.stmt&&j.stmt==="dir"?(_=j.value,!1):j.trim()===""?!1:de in E?E[de].hasOwnProperty(j)?!1:E[de][j]=!0:Z.includes(j)?!1:Z.push(j)}),dir:_}},"uniq")(i.flat()),f=l.nodeList,n=l.dir,g=he().flowchart??{};if(n=n??(g.inheritDir?this.getDirection()??he().direction??void 0:void 0),this.version==="gen-1")for(let b=0;b2e3)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=i,this.subGraphs[i].id===e)return{result:!0,count:0};let a=0,o=1;for(;a=0){let l=this.indexNodes2(e,d);if(l.result)return{result:!0,count:o+l.count};o=o+l.count}a=a+1}return{result:!1,count:o}}getDepthFirstPos(e){return this.posCrossRef[e]}indexNodes(){this.secCount=-1,this.subGraphs.length>0&&this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){return this.firstGraphFlag?(this.firstGraphFlag=!1,!0):!1}destructStartLink(e){let i=e.trim(),r="arrow_open";switch(i[0]){case"<":r="arrow_point",i=i.slice(1);break;case"x":r="arrow_cross",i=i.slice(1);break;case"o":r="arrow_circle",i=i.slice(1);break}let a="normal";return i.includes("=")&&(a="thick"),i.includes(".")&&(a="dotted"),{type:r,stroke:a}}countChar(e,i){let r=i.length,a=0;for(let o=0;o":a="arrow_point",i.startsWith("<")&&(a="double_"+a,r=r.slice(1));break;case"o":a="arrow_circle",i.startsWith("o")&&(a="double_"+a,r=r.slice(1));break}let o="normal",d=r.length-1;r.startsWith("=")&&(o="thick"),r.startsWith("~")&&(o="invisible");let l=this.countChar(".",r);return l&&(o="dotted",d=l),{type:a,stroke:o,length:d}}destructLink(e,i){let r=this.destructEndLink(e),a;if(i){if(a=this.destructStartLink(i),a.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if(a.type==="arrow_open")a.type=r.type;else{if(a.type!==r.type)return{type:"INVALID",stroke:"INVALID"};a.type="double_"+a.type}return a.type==="double_arrow"&&(a.type="double_arrow_point"),a.length=r.length,a}return r}exists(e,i){for(let r of e)if(r.nodes.includes(i))return!0;return!1}makeUniq(e,i){let r=[];return e.nodes.forEach((a,o)=>{this.exists(i,a)||r.push(e.nodes[o])}),{nodes:r}}getTypeFromVertex(e){if(e.img)return"imageSquare";if(e.icon)return e.form==="circle"?"iconCircle":e.form==="square"?"iconSquare":e.form==="rounded"?"iconRounded":"icon";switch(e.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return e.type}}findNode(e,i){return e.find(r=>r.id===i)}destructEdgeType(e){let i="none",r="arrow_point";switch(e){case"arrow_point":case"arrow_circle":case"arrow_cross":r=e;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":i=e.replace("double_",""),r=i;break}return{arrowTypeStart:i,arrowTypeEnd:r}}addNodeFromVertex(e,i,r,a,o,d){let l=r.get(e.id),f=a.get(e.id)??!1,n=this.findNode(i,e.id);if(n)n.cssStyles=e.styles,n.cssCompiledStyles=this.getCompiledStyles(e.classes),n.cssClasses=e.classes.join(" ");else{let g={id:e.id,label:e.text,labelType:e.labelType,labelStyle:"",parentId:l,padding:o.flowchart?.padding||8,cssStyles:e.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...e.classes]),cssClasses:"default "+e.classes.join(" "),dir:e.dir,domId:e.domId,look:d,link:e.link,linkTarget:e.linkTarget,tooltip:this.getTooltip(e.id),icon:e.icon,pos:e.pos,img:e.img,assetWidth:e.assetWidth,assetHeight:e.assetHeight,constraint:e.constraint};f?i.push(n1(a1({},g),{isGroup:!0,shape:"rect"})):i.push(n1(a1({},g),{isGroup:!1,shape:this.getTypeFromVertex(e)}))}}getCompiledStyles(e){let i=[];for(let r of e){let a=this.classes.get(r);a?.styles&&(i=[...i,...a.styles??[]].map(o=>o.trim())),a?.textStyles&&(i=[...i,...a.textStyles??[]].map(o=>o.trim()))}return i}getData(){let e=he(),i=[],r=[],a=this.getSubGraphs(),o=new Map,d=new Map;for(let n=a.length-1;n>=0;n--){let g=a[n];g.nodes.length>0&&d.set(g.id,!0);for(let S of g.nodes)o.set(S,g.id)}for(let n=a.length-1;n>=0;n--){let g=a[n];i.push({id:g.id,label:g.title,labelStyle:"",labelType:g.labelType,parentId:o.get(g.id),padding:8,cssCompiledStyles:this.getCompiledStyles(g.classes),cssClasses:g.classes.join(" "),shape:"rect",dir:g.dir,isGroup:!0,look:e.look})}this.getVertices().forEach(n=>{this.addNodeFromVertex(n,i,o,d,e,e.look||"classic")});let f=this.getEdges();return f.forEach((n,g)=>{let{arrowTypeStart:S,arrowTypeEnd:b}=this.destructEdgeType(n.type),E=[...f.defaultStyle??[]];n.style&&E.push(...n.style);let Z={id:Je(n.start,n.end,{counter:g,prefix:"L"},n.id),isUserDefinedId:n.isUserDefinedId,start:n.start,end:n.end,type:n.type??"normal",label:n.text,labelType:n.labelType,labelpos:"c",thickness:n.stroke,minlen:n.length,classes:n?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":S,arrowTypeEnd:n?.stroke==="invisible"||n?.type==="arrow_open"?"none":b,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(n.classes),labelStyle:E,style:E,pattern:n.stroke,look:e.look,animate:n.animate,animation:n.animation,curve:n.interpolate||this.edges.defaultInterpolate||e.flowchart?.curve};r.push(Z)}),{nodes:i,edges:r,other:{},config:e}}defaultConfig(){return st.flowchart}},Dt=k(function(e,i){return i.db.getClasses()},"getClasses"),Et=k(function(e,i,r,a){return K1(this,null,function*(){Q.info("REF0:"),Q.info("Drawing state diagram (v2)",i);let{securityLevel:o,flowchart:d,layout:l}=he();a.db.setDiagramId(i),Q.debug("Before getData: ");let f=a.db.getData();Q.debug("Data: ",f);let n=ct(i,o),g=a.db.getDirection();f.type=a.type,f.layoutAlgorithm=ut(l),f.layoutAlgorithm==="dagre"&&l==="elk"&&Q.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback."),f.direction=g,f.nodeSpacing=d?.nodeSpacing||50,f.rankSpacing=d?.rankSpacing||50,f.markers=["point","circle","cross"],f.diagramId=i,Q.debug("REF1:",f),yield nt(f,n);let S=f.config.flowchart?.diagramPadding??8;Qe.insertTitle(n,"flowchartTitleText",d?.titleTopMargin||0,a.db.getDiagramTitle()),ht(n,S,"flowchart",d?.useMaxWidth||!1)})},"draw"),Tt={getClasses:Dt,draw:Et},o1=(function(){var e=k(function(be,c,h,p){for(h=h||{},p=be.length;p--;h[be[p]]=c);return h},"o"),i=[1,4],r=[1,3],a=[1,5],o=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],d=[2,2],l=[1,13],f=[1,14],n=[1,15],g=[1,16],S=[1,23],b=[1,25],E=[1,26],Z=[1,27],_=[1,50],v=[1,49],j=[1,29],de=[1,30],Ne=[1,31],Ge=[1,32],Pe=[1,33],L=[1,45],V=[1,47],I=[1,43],w=[1,48],R=[1,44],N=[1,51],G=[1,46],P=[1,52],O=[1,53],Oe=[1,34],Me=[1,35],Ue=[1,36],ze=[1,37],We=[1,38],pe=[1,58],T=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],$=[1,62],ee=[1,61],te=[1,63],Ce=[8,9,11,75,77,78],l1=[1,79],De=[1,92],Ee=[1,97],Te=[1,96],Se=[1,93],ye=[1,89],xe=[1,95],Fe=[1,91],_e=[1,98],Be=[1,94],ve=[1,99],Le=[1,90],ke=[8,9,10,11,40,75,77,78],U=[8,9,10,11,40,46,75,77,78],Y=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],c1=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],Ve=[44,60,89,102,105,106,109,111,114,115,116],h1=[1,122],d1=[1,123],Ke=[1,125],je=[1,124],p1=[44,60,62,74,89,102,105,106,109,111,114,115,116],f1=[1,134],b1=[1,148],k1=[1,149],g1=[1,150],A1=[1,151],m1=[1,136],C1=[1,138],D1=[1,142],E1=[1,143],T1=[1,144],S1=[1,145],y1=[1,146],x1=[1,147],F1=[1,152],_1=[1,153],B1=[1,132],v1=[1,133],L1=[1,140],V1=[1,135],I1=[1,139],w1=[1,137],Ze=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],R1=[1,155],N1=[1,157],F=[8,9,11],H=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],A=[1,177],z=[1,173],W=[1,174],m=[1,178],C=[1,175],D=[1,176],Ie=[77,116,119],y=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],G1=[10,106],fe=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],se=[1,248],ie=[1,246],re=[1,250],ae=[1,244],ne=[1,245],ue=[1,247],oe=[1,249],le=[1,251],we=[1,269],P1=[8,9,11,106],J=[8,9,10,11,60,84,105,106,109,110,111,112],$e={trace:k(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,direction_td:125,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr",125:"direction_td"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1],[33,1]],performAction:k(function(c,h,p,u,x,t,ge){var s=t.length-1;switch(x){case 2:this.$=[];break;case 3:(!Array.isArray(t[s])||t[s].length>0)&&t[s-1].push(t[s]),this.$=t[s-1];break;case 4:case 183:this.$=t[s];break;case 11:u.setDirection("TB"),this.$="TB";break;case 12:u.setDirection(t[s-1]),this.$=t[s-1];break;case 27:this.$=t[s-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=u.addSubGraph(t[s-6],t[s-1],t[s-4]);break;case 34:this.$=u.addSubGraph(t[s-3],t[s-1],t[s-3]);break;case 35:this.$=u.addSubGraph(void 0,t[s-1],void 0);break;case 37:this.$=t[s].trim(),u.setAccTitle(this.$);break;case 38:case 39:this.$=t[s].trim(),u.setAccDescription(this.$);break;case 43:this.$=t[s-1]+t[s];break;case 44:this.$=t[s];break;case 45:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 46:u.addLink(t[s-2].stmt,t[s],t[s-1]),this.$={stmt:t[s],nodes:t[s].concat(t[s-2].nodes)};break;case 47:u.addLink(t[s-3].stmt,t[s-1],t[s-2]),this.$={stmt:t[s-1],nodes:t[s-1].concat(t[s-3].nodes)};break;case 48:this.$={stmt:t[s-1],nodes:t[s-1]};break;case 49:u.addVertex(t[s-1][t[s-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s]),this.$={stmt:t[s-1],nodes:t[s-1],shapeData:t[s]};break;case 50:this.$={stmt:t[s],nodes:t[s]};break;case 51:this.$=[t[s]];break;case 52:u.addVertex(t[s-5][t[s-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,t[s-4]),this.$=t[s-5].concat(t[s]);break;case 53:this.$=t[s-4].concat(t[s]);break;case 54:this.$=t[s];break;case 55:this.$=t[s-2],u.setClass(t[s-2],t[s]);break;case 56:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"square");break;case 57:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"doublecircle");break;case 58:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"circle");break;case 59:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"ellipse");break;case 60:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"stadium");break;case 61:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"subroutine");break;case 62:this.$=t[s-7],u.addVertex(t[s-7],t[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[t[s-5],t[s-3]]]));break;case 63:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"cylinder");break;case 64:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"round");break;case 65:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"diamond");break;case 66:this.$=t[s-5],u.addVertex(t[s-5],t[s-2],"hexagon");break;case 67:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"odd");break;case 68:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"trapezoid");break;case 69:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"inv_trapezoid");break;case 70:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_right");break;case 71:this.$=t[s-3],u.addVertex(t[s-3],t[s-1],"lean_left");break;case 72:this.$=t[s],u.addVertex(t[s]);break;case 73:t[s-1].text=t[s],this.$=t[s-1];break;case 74:case 75:t[s-2].text=t[s-1],this.$=t[s-2];break;case 76:this.$=t[s];break;case 77:var B=u.destructLink(t[s],t[s-2]);this.$={type:B.type,stroke:B.stroke,length:B.length,text:t[s-1]};break;case 78:var B=u.destructLink(t[s],t[s-2]);this.$={type:B.type,stroke:B.stroke,length:B.length,text:t[s-1],id:t[s-3]};break;case 79:this.$={text:t[s],type:"text"};break;case 80:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 81:this.$={text:t[s],type:"string"};break;case 82:this.$={text:t[s],type:"markdown"};break;case 83:var B=u.destructLink(t[s]);this.$={type:B.type,stroke:B.stroke,length:B.length};break;case 84:var B=u.destructLink(t[s]);this.$={type:B.type,stroke:B.stroke,length:B.length,id:t[s-1]};break;case 85:this.$=t[s-1];break;case 86:this.$={text:t[s],type:"text"};break;case 87:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 88:this.$={text:t[s],type:"string"};break;case 89:case 104:this.$={text:t[s],type:"markdown"};break;case 101:this.$={text:t[s],type:"text"};break;case 102:this.$={text:t[s-1].text+""+t[s],type:t[s-1].type};break;case 103:this.$={text:t[s],type:"text"};break;case 105:this.$=t[s-4],u.addClass(t[s-2],t[s]);break;case 106:this.$=t[s-4],u.setClass(t[s-2],t[s]);break;case 107:case 115:this.$=t[s-1],u.setClickEvent(t[s-1],t[s]);break;case 108:case 116:this.$=t[s-3],u.setClickEvent(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 109:this.$=t[s-2],u.setClickEvent(t[s-2],t[s-1],t[s]);break;case 110:this.$=t[s-4],u.setClickEvent(t[s-4],t[s-3],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 111:this.$=t[s-2],u.setLink(t[s-2],t[s]);break;case 112:this.$=t[s-4],u.setLink(t[s-4],t[s-2]),u.setTooltip(t[s-4],t[s]);break;case 113:this.$=t[s-4],u.setLink(t[s-4],t[s-2],t[s]);break;case 114:this.$=t[s-6],u.setLink(t[s-6],t[s-4],t[s]),u.setTooltip(t[s-6],t[s-2]);break;case 117:this.$=t[s-1],u.setLink(t[s-1],t[s]);break;case 118:this.$=t[s-3],u.setLink(t[s-3],t[s-2]),u.setTooltip(t[s-3],t[s]);break;case 119:this.$=t[s-3],u.setLink(t[s-3],t[s-2],t[s]);break;case 120:this.$=t[s-5],u.setLink(t[s-5],t[s-4],t[s]),u.setTooltip(t[s-5],t[s-2]);break;case 121:this.$=t[s-4],u.addVertex(t[s-2],void 0,void 0,t[s]);break;case 122:this.$=t[s-4],u.updateLink([t[s-2]],t[s]);break;case 123:this.$=t[s-4],u.updateLink(t[s-2],t[s]);break;case 124:this.$=t[s-8],u.updateLinkInterpolate([t[s-6]],t[s-2]),u.updateLink([t[s-6]],t[s]);break;case 125:this.$=t[s-8],u.updateLinkInterpolate(t[s-6],t[s-2]),u.updateLink(t[s-6],t[s]);break;case 126:this.$=t[s-6],u.updateLinkInterpolate([t[s-4]],t[s]);break;case 127:this.$=t[s-6],u.updateLinkInterpolate(t[s-4],t[s]);break;case 128:case 130:this.$=[t[s]];break;case 129:case 131:t[s-2].push(t[s]),this.$=t[s-2];break;case 133:this.$=t[s-1]+t[s];break;case 181:this.$=t[s];break;case 182:this.$=t[s-1]+""+t[s];break;case 184:this.$=t[s-1]+""+t[s];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break;case 189:this.$={stmt:"dir",value:"TD"};break}},"anonymous"),table:[{3:1,4:2,9:i,10:r,12:a},{1:[3]},e(o,d,{5:6}),{4:7,9:i,10:r,12:a},{4:8,9:i,10:r,12:a},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:l,9:f,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:S,33:24,34:b,36:E,38:Z,42:28,43:39,44:_,45:40,47:41,60:v,84:j,85:de,86:Ne,87:Ge,88:Pe,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:Oe,122:Me,123:Ue,124:ze,125:We},e(o,[2,9]),e(o,[2,10]),e(o,[2,11]),{8:[1,55],9:[1,56],10:pe,15:54,18:57},e(T,[2,3]),e(T,[2,4]),e(T,[2,5]),e(T,[2,6]),e(T,[2,7]),e(T,[2,8]),{8:$,9:ee,11:te,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:$,9:ee,11:te,21:68},{8:$,9:ee,11:te,21:69},{8:$,9:ee,11:te,21:70},{8:$,9:ee,11:te,21:71},{8:$,9:ee,11:te,21:72},{8:$,9:ee,10:[1,73],11:te,21:74},e(T,[2,36]),{35:[1,75]},{37:[1,76]},e(T,[2,39]),e(Ce,[2,50],{18:77,39:78,10:pe,40:l1}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:De,44:Ee,60:Te,80:[1,87],89:Se,95:[1,84],97:[1,85],101:86,105:ye,106:xe,109:Fe,111:_e,114:Be,115:ve,116:Le,120:88},e(T,[2,185]),e(T,[2,186]),e(T,[2,187]),e(T,[2,188]),e(T,[2,189]),e(ke,[2,51]),e(ke,[2,54],{46:[1,100]}),e(U,[2,72],{113:113,29:[1,101],44:_,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:v,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),e(Y,[2,181]),e(Y,[2,142]),e(Y,[2,143]),e(Y,[2,144]),e(Y,[2,145]),e(Y,[2,146]),e(Y,[2,147]),e(Y,[2,148]),e(Y,[2,149]),e(Y,[2,150]),e(Y,[2,151]),e(Y,[2,152]),e(o,[2,12]),e(o,[2,18]),e(o,[2,19]),{9:[1,114]},e(c1,[2,26],{18:115,10:pe}),e(T,[2,27]),{42:116,43:39,44:_,45:40,47:41,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(Ve,[2,76],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:h1,81:d1,116:Ke,119:je},{75:[1,126],77:[1,127]},e(p1,[2,83]),e(T,[2,28]),e(T,[2,29]),e(T,[2,30]),e(T,[2,31]),e(T,[2,32]),{10:f1,12:b1,14:k1,27:g1,28:128,32:A1,44:m1,60:C1,75:D1,80:[1,130],81:[1,131],83:141,84:E1,85:T1,86:S1,87:y1,88:x1,89:F1,90:_1,91:129,105:B1,109:v1,111:L1,114:V1,115:I1,116:w1},e(Ze,d,{5:154}),e(T,[2,37]),e(T,[2,38]),e(Ce,[2,48],{44:R1}),e(Ce,[2,49],{18:156,10:pe,40:N1}),e(ke,[2,44]),{44:_,47:158,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{102:[1,159],103:160,105:[1,161]},{44:_,47:162,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{44:_,47:163,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(F,[2,107],{10:[1,164],96:[1,165]}),{80:[1,166]},e(F,[2,115],{120:168,10:[1,167],14:De,44:Ee,60:Te,89:Se,105:ye,106:xe,109:Fe,111:_e,114:Be,115:ve,116:Le}),e(F,[2,117],{10:[1,169]}),e(H,[2,183]),e(H,[2,170]),e(H,[2,171]),e(H,[2,172]),e(H,[2,173]),e(H,[2,174]),e(H,[2,175]),e(H,[2,176]),e(H,[2,177]),e(H,[2,178]),e(H,[2,179]),e(H,[2,180]),{44:_,47:170,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{30:171,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:179,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:181,50:[1,180],67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:182,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:183,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:184,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{109:[1,185]},{30:186,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:187,65:[1,188],67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:189,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:190,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{30:191,67:A,80:z,81:W,82:172,116:m,117:C,118:D},e(Y,[2,182]),e(o,[2,20]),e(c1,[2,25]),e(Ce,[2,46],{39:192,18:193,10:pe,40:l1}),e(Ve,[2,73],{10:[1,194]}),{10:[1,195]},{30:196,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{77:[1,197],79:198,116:Ke,119:je},e(Ie,[2,79]),e(Ie,[2,81]),e(Ie,[2,82]),e(Ie,[2,168]),e(Ie,[2,169]),{76:199,79:121,80:h1,81:d1,116:Ke,119:je},e(p1,[2,84]),{8:$,9:ee,10:f1,11:te,12:b1,14:k1,21:201,27:g1,29:[1,200],32:A1,44:m1,60:C1,75:D1,83:141,84:E1,85:T1,86:S1,87:y1,88:x1,89:F1,90:_1,91:202,105:B1,109:v1,111:L1,114:V1,115:I1,116:w1},e(y,[2,101]),e(y,[2,103]),e(y,[2,104]),e(y,[2,157]),e(y,[2,158]),e(y,[2,159]),e(y,[2,160]),e(y,[2,161]),e(y,[2,162]),e(y,[2,163]),e(y,[2,164]),e(y,[2,165]),e(y,[2,166]),e(y,[2,167]),e(y,[2,90]),e(y,[2,91]),e(y,[2,92]),e(y,[2,93]),e(y,[2,94]),e(y,[2,95]),e(y,[2,96]),e(y,[2,97]),e(y,[2,98]),e(y,[2,99]),e(y,[2,100]),{6:11,7:12,8:l,9:f,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:S,32:[1,203],33:24,34:b,36:E,38:Z,42:28,43:39,44:_,45:40,47:41,60:v,84:j,85:de,86:Ne,87:Ge,88:Pe,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:Oe,122:Me,123:Ue,124:ze,125:We},{10:pe,18:204},{44:[1,205]},e(ke,[2,43]),{10:[1,206],44:_,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,207]},{10:[1,208],106:[1,209]},e(G1,[2,128]),{10:[1,210],44:_,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{10:[1,211],44:_,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:113,114:G,115:P,116:O},{80:[1,212]},e(F,[2,109],{10:[1,213]}),e(F,[2,111],{10:[1,214]}),{80:[1,215]},e(H,[2,184]),{80:[1,216],98:[1,217]},e(ke,[2,55],{113:113,44:_,60:v,89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),{31:[1,218],67:A,82:219,116:m,117:C,118:D},e(fe,[2,86]),e(fe,[2,88]),e(fe,[2,89]),e(fe,[2,153]),e(fe,[2,154]),e(fe,[2,155]),e(fe,[2,156]),{49:[1,220],67:A,82:219,116:m,117:C,118:D},{30:221,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{51:[1,222],67:A,82:219,116:m,117:C,118:D},{53:[1,223],67:A,82:219,116:m,117:C,118:D},{55:[1,224],67:A,82:219,116:m,117:C,118:D},{57:[1,225],67:A,82:219,116:m,117:C,118:D},{60:[1,226]},{64:[1,227],67:A,82:219,116:m,117:C,118:D},{66:[1,228],67:A,82:219,116:m,117:C,118:D},{30:229,67:A,80:z,81:W,82:172,116:m,117:C,118:D},{31:[1,230],67:A,82:219,116:m,117:C,118:D},{67:A,69:[1,231],71:[1,232],82:219,116:m,117:C,118:D},{67:A,69:[1,234],71:[1,233],82:219,116:m,117:C,118:D},e(Ce,[2,45],{18:156,10:pe,40:N1}),e(Ce,[2,47],{44:R1}),e(Ve,[2,75]),e(Ve,[2,74]),{62:[1,235],67:A,82:219,116:m,117:C,118:D},e(Ve,[2,77]),e(Ie,[2,80]),{77:[1,236],79:198,116:Ke,119:je},{30:237,67:A,80:z,81:W,82:172,116:m,117:C,118:D},e(Ze,d,{5:238}),e(y,[2,102]),e(T,[2,35]),{43:239,44:_,45:40,47:41,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},{10:pe,18:240},{10:se,60:ie,84:re,92:241,105:ae,107:242,108:243,109:ne,110:ue,111:oe,112:le},{10:se,60:ie,84:re,92:252,104:[1,253],105:ae,107:242,108:243,109:ne,110:ue,111:oe,112:le},{10:se,60:ie,84:re,92:254,104:[1,255],105:ae,107:242,108:243,109:ne,110:ue,111:oe,112:le},{105:[1,256]},{10:se,60:ie,84:re,92:257,105:ae,107:242,108:243,109:ne,110:ue,111:oe,112:le},{44:_,47:258,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(F,[2,108]),{80:[1,259]},{80:[1,260],98:[1,261]},e(F,[2,116]),e(F,[2,118],{10:[1,262]}),e(F,[2,119]),e(U,[2,56]),e(fe,[2,87]),e(U,[2,57]),{51:[1,263],67:A,82:219,116:m,117:C,118:D},e(U,[2,64]),e(U,[2,59]),e(U,[2,60]),e(U,[2,61]),{109:[1,264]},e(U,[2,63]),e(U,[2,65]),{66:[1,265],67:A,82:219,116:m,117:C,118:D},e(U,[2,67]),e(U,[2,68]),e(U,[2,70]),e(U,[2,69]),e(U,[2,71]),e([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),e(Ve,[2,78]),{31:[1,266],67:A,82:219,116:m,117:C,118:D},{6:11,7:12,8:l,9:f,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:S,32:[1,267],33:24,34:b,36:E,38:Z,42:28,43:39,44:_,45:40,47:41,60:v,84:j,85:de,86:Ne,87:Ge,88:Pe,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:Oe,122:Me,123:Ue,124:ze,125:We},e(ke,[2,53]),{43:268,44:_,45:40,47:41,60:v,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O},e(F,[2,121],{106:we}),e(P1,[2,130],{108:270,10:se,60:ie,84:re,105:ae,109:ne,110:ue,111:oe,112:le}),e(J,[2,132]),e(J,[2,134]),e(J,[2,135]),e(J,[2,136]),e(J,[2,137]),e(J,[2,138]),e(J,[2,139]),e(J,[2,140]),e(J,[2,141]),e(F,[2,122],{106:we}),{10:[1,271]},e(F,[2,123],{106:we}),{10:[1,272]},e(G1,[2,129]),e(F,[2,105],{106:we}),e(F,[2,106],{113:113,44:_,60:v,89:L,102:V,105:I,106:w,109:R,111:N,114:G,115:P,116:O}),e(F,[2,110]),e(F,[2,112],{10:[1,273]}),e(F,[2,113]),{98:[1,274]},{51:[1,275]},{62:[1,276]},{66:[1,277]},{8:$,9:ee,11:te,21:278},e(T,[2,34]),e(ke,[2,52]),{10:se,60:ie,84:re,105:ae,107:279,108:243,109:ne,110:ue,111:oe,112:le},e(J,[2,133]),{14:De,44:Ee,60:Te,89:Se,101:280,105:ye,106:xe,109:Fe,111:_e,114:Be,115:ve,116:Le,120:88},{14:De,44:Ee,60:Te,89:Se,101:281,105:ye,106:xe,109:Fe,111:_e,114:Be,115:ve,116:Le,120:88},{98:[1,282]},e(F,[2,120]),e(U,[2,58]),{30:283,67:A,80:z,81:W,82:172,116:m,117:C,118:D},e(U,[2,66]),e(Ze,d,{5:284}),e(P1,[2,131],{108:270,10:se,60:ie,84:re,105:ae,109:ne,110:ue,111:oe,112:le}),e(F,[2,126],{120:168,10:[1,285],14:De,44:Ee,60:Te,89:Se,105:ye,106:xe,109:Fe,111:_e,114:Be,115:ve,116:Le}),e(F,[2,127],{120:168,10:[1,286],14:De,44:Ee,60:Te,89:Se,105:ye,106:xe,109:Fe,111:_e,114:Be,115:ve,116:Le}),e(F,[2,114]),{31:[1,287],67:A,82:219,116:m,117:C,118:D},{6:11,7:12,8:l,9:f,10:n,11:g,20:17,22:18,23:19,24:20,25:21,26:22,27:S,32:[1,288],33:24,34:b,36:E,38:Z,42:28,43:39,44:_,45:40,47:41,60:v,84:j,85:de,86:Ne,87:Ge,88:Pe,89:L,102:V,105:I,106:w,109:R,111:N,113:42,114:G,115:P,116:O,121:Oe,122:Me,123:Ue,124:ze,125:We},{10:se,60:ie,84:re,92:289,105:ae,107:242,108:243,109:ne,110:ue,111:oe,112:le},{10:se,60:ie,84:re,92:290,105:ae,107:242,108:243,109:ne,110:ue,111:oe,112:le},e(U,[2,62]),e(T,[2,33]),e(F,[2,124],{106:we}),e(F,[2,125],{106:we})],defaultActions:{},parseError:k(function(c,h){if(h.recoverable)this.trace(c);else{var p=new Error(c);throw p.hash=h,p}},"parseError"),parse:k(function(c){var h=this,p=[0],u=[],x=[null],t=[],ge=this.table,s="",B=0,O1=0,M1=0,bt=2,U1=1,kt=t.slice.call(arguments,1),M=Object.create(this.lexer),Ae={yy:{}};for(var e1 in this.yy)Object.prototype.hasOwnProperty.call(this.yy,e1)&&(Ae.yy[e1]=this.yy[e1]);M.setInput(c,Ae.yy),Ae.yy.lexer=M,Ae.yy.parser=this,typeof M.yylloc>"u"&&(M.yylloc={});var t1=M.yylloc;t.push(t1);var gt=M.options&&M.options.ranges;typeof Ae.yy.parseError=="function"?this.parseError=Ae.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function At(q){p.length=p.length-2*q,x.length=x.length-q,t.length=t.length-q}k(At,"popStack");function z1(){var q;return q=u.pop()||M.lex()||U1,typeof q!="number"&&(q instanceof Array&&(u=q,q=u.pop()),q=h.symbols_[q]||q),q}k(z1,"lex");for(var K,s1,me,X,_t,i1,Re={},He,ce,W1,qe;;){if(me=p[p.length-1],this.defaultActions[me]?X=this.defaultActions[me]:((K===null||typeof K>"u")&&(K=z1()),X=ge[me]&&ge[me][K]),typeof X>"u"||!X.length||!X[0]){var r1="";qe=[];for(He in ge[me])this.terminals_[He]&&He>bt&&qe.push("'"+this.terminals_[He]+"'");M.showPosition?r1="Parse error on line "+(B+1)+`: +`+M.showPosition()+` +Expecting `+qe.join(", ")+", got '"+(this.terminals_[K]||K)+"'":r1="Parse error on line "+(B+1)+": Unexpected "+(K==U1?"end of input":"'"+(this.terminals_[K]||K)+"'"),this.parseError(r1,{text:M.match,token:this.terminals_[K]||K,line:M.yylineno,loc:t1,expected:qe})}if(X[0]instanceof Array&&X.length>1)throw new Error("Parse Error: multiple actions possible at state: "+me+", token: "+K);switch(X[0]){case 1:p.push(K),x.push(M.yytext),t.push(M.yylloc),p.push(X[1]),K=null,s1?(K=s1,s1=null):(O1=M.yyleng,s=M.yytext,B=M.yylineno,t1=M.yylloc,M1>0&&M1--);break;case 2:if(ce=this.productions_[X[1]][1],Re.$=x[x.length-ce],Re._$={first_line:t[t.length-(ce||1)].first_line,last_line:t[t.length-1].last_line,first_column:t[t.length-(ce||1)].first_column,last_column:t[t.length-1].last_column},gt&&(Re._$.range=[t[t.length-(ce||1)].range[0],t[t.length-1].range[1]]),i1=this.performAction.apply(Re,[s,O1,B,Ae.yy,X[1],x,t].concat(kt)),typeof i1<"u")return i1;ce&&(p=p.slice(0,-1*ce*2),x=x.slice(0,-1*ce),t=t.slice(0,-1*ce)),p.push(this.productions_[X[1]][0]),x.push(Re.$),t.push(Re._$),W1=ge[p[p.length-2]][p[p.length-1]],p.push(W1);break;case 3:return!0}}return!0},"parse")},ft=(function(){var be={EOF:1,parseError:k(function(h,p){if(this.yy.parser)this.yy.parser.parseError(h,p);else throw new Error(h)},"parseError"),setInput:k(function(c,h){return this.yy=h||this.yy||{},this._input=c,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:k(function(){var c=this._input[0];this.yytext+=c,this.yyleng++,this.offset++,this.match+=c,this.matched+=c;var h=c.match(/(?:\r\n?|\n).*/g);return h?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),c},"input"),unput:k(function(c){var h=c.length,p=c.split(/(?:\r\n?|\n)/g);this._input=c+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-h),this.offset-=h;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),p.length-1&&(this.yylineno-=p.length-1);var x=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:p?(p.length===u.length?this.yylloc.first_column:0)+u[u.length-p.length].length-p[0].length:this.yylloc.first_column-h},this.options.ranges&&(this.yylloc.range=[x[0],x[0]+this.yyleng-h]),this.yyleng=this.yytext.length,this},"unput"),more:k(function(){return this._more=!0,this},"more"),reject:k(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:k(function(c){this.unput(this.match.slice(c))},"less"),pastInput:k(function(){var c=this.matched.substr(0,this.matched.length-this.match.length);return(c.length>20?"...":"")+c.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:k(function(){var c=this.match;return c.length<20&&(c+=this._input.substr(0,20-c.length)),(c.substr(0,20)+(c.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:k(function(){var c=this.pastInput(),h=new Array(c.length+1).join("-");return c+this.upcomingInput()+` +`+h+"^"},"showPosition"),test_match:k(function(c,h){var p,u,x;if(this.options.backtrack_lexer&&(x={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(x.yylloc.range=this.yylloc.range.slice(0))),u=c[0].match(/(?:\r\n?|\n).*/g),u&&(this.yylineno+=u.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:u?u[u.length-1].length-u[u.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+c[0].length},this.yytext+=c[0],this.match+=c[0],this.matches=c,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(c[0].length),this.matched+=c[0],p=this.performAction.call(this,this.yy,this,h,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),p)return p;if(this._backtrack){for(var t in x)this[t]=x[t];return!1}return!1},"test_match"),next:k(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var c,h,p,u;this._more||(this.yytext="",this.match="");for(var x=this._currentRules(),t=0;th[0].length)){if(h=p,u=t,this.options.backtrack_lexer){if(c=this.test_match(p,x[t]),c!==!1)return c;if(this._backtrack){h=!1;continue}else return!1}else if(!this.options.flex)break}return h?(c=this.test_match(h,x[u]),c!==!1?c:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:k(function(){var h=this.next();return h||this.lex()},"lex"),begin:k(function(h){this.conditionStack.push(h)},"begin"),popState:k(function(){var h=this.conditionStack.length-1;return h>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:k(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:k(function(h){return h=this.conditionStack.length-1-Math.abs(h||0),h>=0?this.conditionStack[h]:"INITIAL"},"topState"),pushState:k(function(h){this.begin(h)},"pushState"),stateStackSize:k(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:k(function(h,p,u,x){var t=x;switch(u){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),p.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let ge=/\n\s*/g;return p.yytext=p.yytext.replace(ge,"
"),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:return h.lex.firstGraph()&&this.begin("dir"),12;break;case 36:return h.lex.firstGraph()&&this.begin("dir"),12;break;case 37:return h.lex.firstGraph()&&this.begin("dir"),12;break;case 38:return 27;case 39:return 32;case 40:return 98;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return this.popState(),13;break;case 45:return this.popState(),14;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return 121;case 56:return 122;case 57:return 123;case 58:return 124;case 59:return 125;case 60:return 78;case 61:return 105;case 62:return 111;case 63:return 46;case 64:return 60;case 65:return 44;case 66:return 8;case 67:return 106;case 68:return 115;case 69:return this.popState(),77;break;case 70:return this.pushState("edgeText"),75;break;case 71:return 119;case 72:return this.popState(),77;break;case 73:return this.pushState("thickEdgeText"),75;break;case 74:return 119;case 75:return this.popState(),77;break;case 76:return this.pushState("dottedEdgeText"),75;break;case 77:return 119;case 78:return 77;case 79:return this.popState(),53;break;case 80:return"TEXT";case 81:return this.pushState("ellipseText"),52;break;case 82:return this.popState(),55;break;case 83:return this.pushState("text"),54;break;case 84:return this.popState(),57;break;case 85:return this.pushState("text"),56;break;case 86:return 58;case 87:return this.pushState("text"),67;break;case 88:return this.popState(),64;break;case 89:return this.pushState("text"),63;break;case 90:return this.popState(),49;break;case 91:return this.pushState("text"),48;break;case 92:return this.popState(),69;break;case 93:return this.popState(),71;break;case 94:return 117;case 95:return this.pushState("trapText"),68;break;case 96:return this.pushState("trapText"),70;break;case 97:return 118;case 98:return 67;case 99:return 90;case 100:return"SEP";case 101:return 89;case 102:return 115;case 103:return 111;case 104:return 44;case 105:return 109;case 106:return 114;case 107:return 116;case 108:return this.popState(),62;break;case 109:return this.pushState("text"),62;break;case 110:return this.popState(),51;break;case 111:return this.pushState("text"),50;break;case 112:return this.popState(),31;break;case 113:return this.pushState("text"),29;break;case 114:return this.popState(),66;break;case 115:return this.pushState("text"),65;break;case 116:return"TEXT";case 117:return"QUOTE";case 118:return 9;case 119:return 10;case 120:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:.*direction\s+TD[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},shapeData:{rules:[8,11,12,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},callbackargs:{rules:[17,18,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},callbackname:{rules:[14,15,16,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},href:{rules:[21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},click:{rules:[21,24,33,34,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},dottedEdgeText:{rules:[21,24,75,77,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},thickEdgeText:{rules:[21,24,72,74,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},edgeText:{rules:[21,24,69,71,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},trapText:{rules:[21,24,78,81,83,85,89,91,92,93,94,95,96,109,111,113,115],inclusive:!1},ellipseText:{rules:[21,24,78,79,80,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},text:{rules:[21,24,78,81,82,83,84,85,88,89,90,91,95,96,108,109,110,111,112,113,114,115,116],inclusive:!1},vertex:{rules:[21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},dir:{rules:[21,24,44,45,46,47,48,49,50,51,52,53,54,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},acc_descr:{rules:[3,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},acc_title:{rules:[1,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},md_string:{rules:[19,20,21,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},string:{rules:[21,22,23,24,78,81,83,85,89,91,95,96,109,111,113,115],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,72,73,75,76,78,81,83,85,86,87,89,91,95,96,97,98,99,100,101,102,103,104,105,106,107,109,111,113,115,117,118,119,120],inclusive:!0}}};return be})();$e.lexer=ft;function Ye(){this.yy={}}return k(Ye,"Parser"),Ye.prototype=$e,$e.Parser=Ye,new Ye})();o1.parser=o1;var dt=o1,pt=Object.assign({},dt);pt.parse=e=>{let i=e.replace(/}\s*\n/g,`} +`);return dt.parse(i)};var St=pt,yt=k((e,i)=>{let r=Y1,a=r(e,"r"),o=r(e,"g"),d=r(e,"b");return j1(a,o,d,i)},"fade"),xt=k(e=>`.label { + font-family: ${e.fontFamily}; + color: ${e.nodeTextColor||e.textColor}; + } + .cluster-label text { + fill: ${e.titleColor}; + } + .cluster-label span { + color: ${e.titleColor}; + } + .cluster-label span p { + background-color: transparent; + } + + .label text,span { + fill: ${e.nodeTextColor||e.textColor}; + color: ${e.nodeTextColor||e.textColor}; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon, + .node path { + fill: ${e.mainBkg}; + stroke: ${e.nodeBorder}; + stroke-width: ${e.strokeWidth??1}px; + } + .rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label { + text-anchor: middle; + } + // .flowchart-label .text-outer-tspan { + // text-anchor: middle; + // } + // .flowchart-label .text-inner-tspan { + // text-anchor: start; + // } + + .node .katex path { + fill: #000; + stroke: #000; + stroke-width: 1px; + } + + .rough-node .label,.node .label, .image-shape .label, .icon-shape .label { + text-align: center; + } + .node.clickable { + cursor: pointer; + } + + + .root .anchor path { + fill: ${e.lineColor} !important; + stroke-width: 0; + stroke: ${e.lineColor}; + } + + .arrowheadPath { + fill: ${e.arrowheadColor}; + } + + .edgePath .path { + stroke: ${e.lineColor}; + stroke-width: ${e.strokeWidth??2}px; + } + + .flowchart-link { + stroke: ${e.lineColor}; + fill: none; + } + + .edgeLabel { + background-color: ${e.edgeLabelBackground}; + p { + background-color: ${e.edgeLabelBackground}; + } + rect { + opacity: 0.5; + background-color: ${e.edgeLabelBackground}; + fill: ${e.edgeLabelBackground}; + } + text-align: center; + } + + /* For html labels only */ + .labelBkg { + background-color: ${yt(e.edgeLabelBackground,.5)}; + // background-color: + } + + .cluster rect { + fill: ${e.clusterBkg}; + stroke: ${e.clusterBorder}; + stroke-width: 1px; + } + + .cluster text { + fill: ${e.titleColor}; + } + + .cluster span { + color: ${e.titleColor}; + } + /* .cluster div { + color: ${e.titleColor}; + } */ + + div.mermaidTooltip { + position: absolute; + text-align: center; + max-width: 200px; + padding: 2px; + font-family: ${e.fontFamily}; + font-size: 12px; + background: ${e.tertiaryColor}; + border: 1px solid ${e.border2}; + border-radius: 2px; + pointer-events: none; + z-index: 100; + } + + .flowchartTitleText { + text-anchor: middle; + font-size: 18px; + fill: ${e.textColor}; + } + + rect.text { + fill: none; + stroke-width: 0; + } + + .icon-shape, .image-shape { + background-color: ${e.edgeLabelBackground}; + p { + background-color: ${e.edgeLabelBackground}; + padding: 2px; + } + .label rect { + opacity: 0.5; + background-color: ${e.edgeLabelBackground}; + fill: ${e.edgeLabelBackground}; + } + text-align: center; + } + ${lt()} +`,"getStyles"),Ft=xt,Ht={parser:St,get db(){return new Ct},renderer:Tt,styles:Ft,init:k(e=>{e.flowchart||(e.flowchart={}),e.layout&&u1({layout:e.layout}),e.flowchart.arrowMarkerAbsolute=e.arrowMarkerAbsolute,u1({flowchart:{arrowMarkerAbsolute:e.arrowMarkerAbsolute}})},"init")};export{Ht as diagram}; diff --git a/src/google/adk/cli/browser/chunk-VRRZ3RU5.js b/src/google/adk/cli/browser/chunk-VRRZ3RU5.js new file mode 100644 index 0000000000..f9f65ec3ca --- /dev/null +++ b/src/google/adk/cli/browser/chunk-VRRZ3RU5.js @@ -0,0 +1,96 @@ +import{a as fe}from"./chunk-APNCZOFE.js";import{a as me}from"./chunk-XB6MIIOW.js";import{b as ge,c as pe}from"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as de,D as ue,G as M,Y as C,c as ce,d as le,e as he,r as B}from"./chunk-37QI3DOO.js";import{g as h,i as T}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{j as ae}from"./chunk-RMXJBC7V.js";var b=[];for(let e=0;e<256;++e)b.push((e+256).toString(16).slice(1));function ye(e,n=0){return(b[e[n+0]]+b[e[n+1]]+b[e[n+2]]+b[e[n+3]]+"-"+b[e[n+4]]+b[e[n+5]]+"-"+b[e[n+6]]+b[e[n+7]]+"-"+b[e[n+8]]+b[e[n+9]]+"-"+b[e[n+10]]+b[e[n+11]]+b[e[n+12]]+b[e[n+13]]+b[e[n+14]]+b[e[n+15]]).toLowerCase()}var q,xe=new Uint8Array(16);function J(){if(!q){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");q=crypto.getRandomValues.bind(crypto)}return q(xe)}var De=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),K={randomUUID:De};function Ne(e,n,l){if(K.randomUUID&&!n&&!e)return K.randomUUID();e=e||{};let a=e.random??e.rng?.()??J();if(a.length<16)throw new Error("Random bytes length must be >= 16");if(a[6]=a[6]&15|64,a[8]=a[8]&63|128,n){if(l=l||0,l<0||l+16>n.length)throw new RangeError(`UUID byte range ${l}:${l+15} is out of buffer bounds`);for(let t=0;t<16;++t)n[l+t]=a[t];return n}return ye(a)}var Q=Ne;var Z=(function(){var e=h(function(N,s,i,o){for(i=i||{},o=N.length;o--;i[N[o]]=s);return i},"o"),n=[1,4],l=[1,13],a=[1,12],t=[1,15],d=[1,16],f=[1,20],m=[1,19],k=[6,7,8],I=[1,26],w=[1,24],R=[1,25],u=[6,7,11],A=[1,6,13,15,16,19,22],ee=[1,33],te=[1,34],U=[1,6,7,11,13,15,16,19,22],j={trace:h(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:h(function(s,i,o,c,p,r,$){var g=r.length-1;switch(p){case 6:case 7:return c;case 8:c.getLogger().trace("Stop NL ");break;case 9:c.getLogger().trace("Stop EOF ");break;case 11:c.getLogger().trace("Stop NL2 ");break;case 12:c.getLogger().trace("Stop EOF2 ");break;case 15:c.getLogger().info("Node: ",r[g].id),c.addNode(r[g-1].length,r[g].id,r[g].descr,r[g].type);break;case 16:c.getLogger().trace("Icon: ",r[g]),c.decorateNode({icon:r[g]});break;case 17:case 21:c.decorateNode({class:r[g]});break;case 18:c.getLogger().trace("SPACELIST");break;case 19:c.getLogger().trace("Node: ",r[g].id),c.addNode(0,r[g].id,r[g].descr,r[g].type);break;case 20:c.decorateNode({icon:r[g]});break;case 25:c.getLogger().trace("node found ..",r[g-2]),this.$={id:r[g-1],descr:r[g-1],type:c.getType(r[g-2],r[g])};break;case 26:this.$={id:r[g],descr:r[g],type:c.nodeType.DEFAULT};break;case 27:c.getLogger().trace("node found ..",r[g-3]),this.$={id:r[g-3],descr:r[g-1],type:c.getType(r[g-2],r[g])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:n},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:n},{6:l,7:[1,10],9:9,12:11,13:a,14:14,15:t,16:d,17:17,18:18,19:f,22:m},e(k,[2,3]),{1:[2,2]},e(k,[2,4]),e(k,[2,5]),{1:[2,6],6:l,12:21,13:a,14:14,15:t,16:d,17:17,18:18,19:f,22:m},{6:l,9:22,12:11,13:a,14:14,15:t,16:d,17:17,18:18,19:f,22:m},{6:I,7:w,10:23,11:R},e(u,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:f,22:m}),e(u,[2,18]),e(u,[2,19]),e(u,[2,20]),e(u,[2,21]),e(u,[2,23]),e(u,[2,24]),e(u,[2,26],{19:[1,30]}),{20:[1,31]},{6:I,7:w,10:32,11:R},{1:[2,7],6:l,12:21,13:a,14:14,15:t,16:d,17:17,18:18,19:f,22:m},e(A,[2,14],{7:ee,11:te}),e(U,[2,8]),e(U,[2,9]),e(U,[2,10]),e(u,[2,15]),e(u,[2,16]),e(u,[2,17]),{20:[1,35]},{21:[1,36]},e(A,[2,13],{7:ee,11:te}),e(U,[2,11]),e(U,[2,12]),{21:[1,37]},e(u,[2,25]),e(u,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:h(function(s,i){if(i.recoverable)this.trace(s);else{var o=new Error(s);throw o.hash=i,o}},"parseError"),parse:h(function(s){var i=this,o=[0],c=[],p=[null],r=[],$=this.table,g="",V=0,ne=0,ie=0,ke=2,re=1,Ee=r.slice.call(arguments,1),y=Object.create(this.lexer),L={yy:{}};for(var H in this.yy)Object.prototype.hasOwnProperty.call(this.yy,H)&&(L.yy[H]=this.yy[H]);y.setInput(s,L.yy),L.yy.lexer=y,L.yy.parser=this,typeof y.yylloc>"u"&&(y.yylloc={});var W=y.yylloc;r.push(W);var _e=y.options&&y.options.ranges;typeof L.yy.parseError=="function"?this.parseError=L.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Se(_){o.length=o.length-2*_,p.length=p.length-_,r.length=r.length-_}h(Se,"popStack");function se(){var _;return _=c.pop()||y.lex()||re,typeof _!="number"&&(_ instanceof Array&&(c=_,_=c.pop()),_=i.symbols_[_]||_),_}h(se,"lex");for(var E,X,v,S,Ue,z,O={},F,x,oe,G;;){if(v=o[o.length-1],this.defaultActions[v]?S=this.defaultActions[v]:((E===null||typeof E>"u")&&(E=se()),S=$[v]&&$[v][E]),typeof S>"u"||!S.length||!S[0]){var Y="";G=[];for(F in $[v])this.terminals_[F]&&F>ke&&G.push("'"+this.terminals_[F]+"'");y.showPosition?Y="Parse error on line "+(V+1)+`: +`+y.showPosition()+` +Expecting `+G.join(", ")+", got '"+(this.terminals_[E]||E)+"'":Y="Parse error on line "+(V+1)+": Unexpected "+(E==re?"end of input":"'"+(this.terminals_[E]||E)+"'"),this.parseError(Y,{text:y.match,token:this.terminals_[E]||E,line:y.yylineno,loc:W,expected:G})}if(S[0]instanceof Array&&S.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+E);switch(S[0]){case 1:o.push(E),p.push(y.yytext),r.push(y.yylloc),o.push(S[1]),E=null,X?(E=X,X=null):(ne=y.yyleng,g=y.yytext,V=y.yylineno,W=y.yylloc,ie>0&&ie--);break;case 2:if(x=this.productions_[S[1]][1],O.$=p[p.length-x],O._$={first_line:r[r.length-(x||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(x||1)].first_column,last_column:r[r.length-1].last_column},_e&&(O._$.range=[r[r.length-(x||1)].range[0],r[r.length-1].range[1]]),z=this.performAction.apply(O,[g,ne,V,L.yy,S[1],p,r].concat(Ee)),typeof z<"u")return z;x&&(o=o.slice(0,-1*x*2),p=p.slice(0,-1*x),r=r.slice(0,-1*x)),o.push(this.productions_[S[1]][0]),p.push(O.$),r.push(O._$),oe=$[o[o.length-2]][o[o.length-1]],o.push(oe);break;case 3:return!0}}return!0},"parse")},be=(function(){var N={EOF:1,parseError:h(function(i,o){if(this.yy.parser)this.yy.parser.parseError(i,o);else throw new Error(i)},"parseError"),setInput:h(function(s,i){return this.yy=i||this.yy||{},this._input=s,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:h(function(){var s=this._input[0];this.yytext+=s,this.yyleng++,this.offset++,this.match+=s,this.matched+=s;var i=s.match(/(?:\r\n?|\n).*/g);return i?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),s},"input"),unput:h(function(s){var i=s.length,o=s.split(/(?:\r\n?|\n)/g);this._input=s+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i),this.offset-=i;var c=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),o.length-1&&(this.yylineno-=o.length-1);var p=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:o?(o.length===c.length?this.yylloc.first_column:0)+c[c.length-o.length].length-o[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[p[0],p[0]+this.yyleng-i]),this.yyleng=this.yytext.length,this},"unput"),more:h(function(){return this._more=!0,this},"more"),reject:h(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:h(function(s){this.unput(this.match.slice(s))},"less"),pastInput:h(function(){var s=this.matched.substr(0,this.matched.length-this.match.length);return(s.length>20?"...":"")+s.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:h(function(){var s=this.match;return s.length<20&&(s+=this._input.substr(0,20-s.length)),(s.substr(0,20)+(s.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:h(function(){var s=this.pastInput(),i=new Array(s.length+1).join("-");return s+this.upcomingInput()+` +`+i+"^"},"showPosition"),test_match:h(function(s,i){var o,c,p;if(this.options.backtrack_lexer&&(p={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(p.yylloc.range=this.yylloc.range.slice(0))),c=s[0].match(/(?:\r\n?|\n).*/g),c&&(this.yylineno+=c.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:c?c[c.length-1].length-c[c.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+s[0].length},this.yytext+=s[0],this.match+=s[0],this.matches=s,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(s[0].length),this.matched+=s[0],o=this.performAction.call(this,this.yy,this,i,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o)return o;if(this._backtrack){for(var r in p)this[r]=p[r];return!1}return!1},"test_match"),next:h(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var s,i,o,c;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),r=0;ri[0].length)){if(i=o,c=r,this.options.backtrack_lexer){if(s=this.test_match(o,p[r]),s!==!1)return s;if(this._backtrack){i=!1;continue}else return!1}else if(!this.options.flex)break}return i?(s=this.test_match(i,p[c]),s!==!1?s:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:h(function(){var i=this.next();return i||this.lex()},"lex"),begin:h(function(i){this.conditionStack.push(i)},"begin"),popState:h(function(){var i=this.conditionStack.length-1;return i>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:h(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:h(function(i){return i=this.conditionStack.length-1-Math.abs(i||0),i>=0?this.conditionStack[i]:"INITIAL"},"topState"),pushState:h(function(i){this.begin(i)},"pushState"),stateStackSize:h(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:h(function(i,o,c,p){var r=p;switch(c){case 0:return i.getLogger().trace("Found comment",o.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:i.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return i.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:i.getLogger().trace("end icon"),this.popState();break;case 10:return i.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return i.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return i.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return i.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:i.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return i.getLogger().trace("description:",o.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),i.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),i.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),i.getLogger().trace("node end ...",o.yytext),"NODE_DEND";break;case 30:return this.popState(),i.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),i.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),i.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),i.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),i.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return i.getLogger().trace("Long description:",o.yytext),20;break;case 36:return i.getLogger().trace("Long description:",o.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return N})();j.lexer=be;function P(){this.yy={}}return h(P,"Parser"),P.prototype=j,j.Parser=P,new P})();Z.parser=Z;var Le=Z,ve=12,D={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},Te=class{constructor(){this.nodes=[],this.count=0,this.elements={},this.getLogger=this.getLogger.bind(this),this.nodeType=D,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{h(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(e){for(let n=this.nodes.length-1;n>=0;n--)if(this.nodes[n].level0?this.nodes[0]:null}addNode(e,n,l,a){T.info("addNode",e,n,l,a);let t=!1;this.nodes.length===0?(this.baseLevel=e,e=0,t=!0):this.baseLevel!==void 0&&(e=e-this.baseLevel,t=!1);let d=C(),f=d.mindmap?.padding??B.mindmap.padding;switch(a){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:f*=2;break}let m={id:this.count++,nodeId:M(n,d),level:e,descr:M(l,d),type:a,children:[],width:d.mindmap?.maxNodeWidth??B.mindmap.maxNodeWidth,padding:f,isRoot:t},k=this.getParent(e);if(k)k.children.push(m),this.nodes.push(m);else if(t)this.nodes.push(m);else throw new Error(`There can be only one root. No parent could be found for ("${m.descr}")`)}getType(e,n){switch(T.debug("In get type",e,n),e){case"[":return this.nodeType.RECT;case"(":return n===")"?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(e,n){this.elements[e]=n}getElementById(e){return this.elements[e]}decorateNode(e){if(!e)return;let n=C(),l=this.nodes[this.nodes.length-1];e.icon&&(l.icon=M(e.icon,n)),e.class&&(l.class=M(e.class,n))}type2Str(e){switch(e){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(e,n){if(e.level===0?e.section=void 0:e.section=n,e.children)for(let[l,a]of e.children.entries()){let t=e.level===0?l%(ve-1):n;this.assignSections(a,t)}}flattenNodes(e,n){let l=C(),a=["mindmap-node"];e.isRoot===!0?a.push("section-root","section--1"):e.section!==void 0&&a.push(`section-${e.section}`),e.class&&a.push(e.class);let t=a.join(" "),d=h(m=>{let I=(l.theme?.toLowerCase()??"").includes("redux");switch(m){case D.CIRCLE:return"mindmapCircle";case D.RECT:return"rect";case D.ROUNDED_RECT:return"rounded";case D.CLOUD:return"cloud";case D.BANG:return"bang";case D.HEXAGON:return"hexagon";case D.DEFAULT:return I?"rounded":"defaultMindmapNode";case D.NO_BORDER:default:return"rect"}},"getShapeFromType"),f={id:e.id.toString(),domId:"node_"+e.id.toString(),label:e.descr,labelType:"markdown",isGroup:!1,shape:d(e.type),width:e.width,height:e.height??0,padding:e.padding,cssClasses:t,cssStyles:[],look:l.look,icon:e.icon,x:e.x,y:e.y,level:e.level,nodeId:e.nodeId,type:e.type,section:e.section};if(n.push(f),e.children)for(let m of e.children)this.flattenNodes(m,n)}generateEdges(e,n){if(!e.children)return;let l=C();for(let a of e.children){let t="edge";a.section!==void 0&&(t+=` section-edge-${a.section}`);let d=e.level+1;t+=` edge-depth-${d}`;let f={id:`edge_${e.id}_${a.id}`,start:e.id.toString(),end:a.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:l.look,classes:t,depth:e.level,section:a.section};n.push(f),this.generateEdges(a,n)}}getData(){let e=this.getMindmap(),n=C(),a=ue().layout!==void 0,t=n;if(a||(t.layout="cose-bilkent"),!e)return{nodes:[],edges:[],config:t};T.debug("getData: mindmapRoot",e,n),this.assignSections(e);let d=[],f=[];this.flattenNodes(e,d),this.generateEdges(e,f),T.debug(`getData: processed ${d.length} nodes and ${f.length} edges`);let m=new Map;for(let k of d)m.set(k.id,{shape:k.shape,width:k.width,height:k.height,padding:k.padding});return{nodes:d,edges:f,config:t,rootNode:e,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(m),type:"mindmap",diagramId:"mindmap-"+Q()}}getLogger(){return T}},Ie=h((e,n,l,a)=>ae(null,null,function*(){T.debug(`Rendering mindmap diagram +`+e);let t=a.db,d=t.getData(),f=fe(n,d.config.securityLevel);if(d.type=a.type,d.layoutAlgorithm=pe(d.config.layout,{fallback:"cose-bilkent"}),d.diagramId=n,!t.getMindmap())return;d.nodes.forEach(u=>{u.shape==="rounded"?(u.radius=15,u.taper=15,u.stroke="none",u.width=0,u.padding=15):u.shape==="circle"?u.padding=10:u.shape==="rect"?(u.width=0,u.padding=10):u.shape==="hexagon"&&(u.width=0,u.height=0)}),yield ge(d,f);let{themeVariables:k}=de(),{useGradient:I,gradientStart:w,gradientStop:R}=k;if(I&&w&&R){let u=f.attr("id"),A=f.append("defs").append("linearGradient").attr("id",`${u}-gradient`).attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");A.append("stop").attr("offset","0%").attr("stop-color",w).attr("stop-opacity",1),A.append("stop").attr("offset","100%").attr("stop-color",R).attr("stop-opacity",1)}me(f,d.config.mindmap?.padding??B.mindmap.padding,"mindmapDiagram",d.config.mindmap?.useMaxWidth??B.mindmap.useMaxWidth)}),"draw"),Oe={draw:Ie},Ce=h(e=>{let{theme:n,look:l}=e,a="";for(let t=0;t{let a="";for(let t=0;t{let{theme:n}=e,l=e.svgId,a=e.dropShadow?e.dropShadow.replace("url(#drop-shadow)",`url(${l}-drop-shadow)`):"none";return` + .edge { + stroke-width: 3; + } + ${Ce(e)} + .section-root rect, .section-root path, .section-root circle, .section-root polygon { + fill: ${e.git0}; + } + .section-root text { + fill: ${e.gitBranchLabel0}; + } + .section-root span { + color: ${n?.includes("redux")?e.nodeBorder:e.gitBranchLabel0}; + } + .icon-container { + height:100%; + display: flex; + justify-content: center; + align-items: center; + } + .edge { + fill: none; + } + .mindmap-node-label { + dy: 1em; + alignment-baseline: middle; + text-anchor: middle; + dominant-baseline: middle; + text-align: center; + } + [data-look="neo"].mindmap-node { + filter: ${a}; + } + [data-look="neo"].mindmap-node.section-root rect, [data-look="neo"].mindmap-node.section-root path, [data-look="neo"].mindmap-node.section-root circle, [data-look="neo"].mindmap-node.section-root polygon { + fill: ${n?.includes("redux")?e.mainBkg:e.git0}; + } + [data-look="neo"].mindmap-node.section-root .text-inner-tspan { + fill: ${n?.includes("redux")?e.nodeBorder:e["cScaleLabel"+(n==="neutral"?1:0)]}; + } + ${e.useGradient&&l&&e.mainBkg?we(e.THEME_COLOR_LIMIT,l,e.mainBkg):""} +`},"getStyles"),Ae=Re,st={get db(){return new Te},renderer:Oe,parser:Le,styles:Ae};export{st as diagram}; diff --git a/src/google/adk/cli/browser/chunk-VS3KHVTS.js b/src/google/adk/cli/browser/chunk-VS3KHVTS.js new file mode 100644 index 0000000000..853257b3f0 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-VS3KHVTS.js @@ -0,0 +1 @@ +import{B as C,o as m,r as a}from"./chunk-UFYCV57Y.js";import{b as c}from"./chunk-UKZIEWH5.js";import{C as o,D as f,H as E,L as O,g as u}from"./chunk-F57K64GP.js";import{h as b}from"./chunk-URMDZFG4.js";var j="\0",_="\0",N="",p=class{constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=c(void 0),this._defaultEdgeLabelFn=c(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[_]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return b(e)||(e=c(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return u(this._nodes)}sources(){var e=this;return f(this.nodes(),function(t){return E(e._in[t])})}sinks(){var e=this;return f(this.nodes(),function(t){return E(e._out[t])})}setNodes(e,t){var s=arguments,i=this;return o(e,function(r){s.length>1?i.setNode(r,t):i.setNode(r)}),this}setNode(e,t){return Object.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=_,this._children[e]={},this._children[_][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){var t=s=>this.removeEdge(this._edgeObjs[s]);delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],o(this.children(e),s=>{this.setParent(s)}),delete this._children[e]),o(u(this._in[e]),t),delete this._in[e],delete this._preds[e],o(u(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(a(t))t=_;else{t+="";for(var s=t;!a(s);s=this.parent(s))if(s===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var t=this._parent[e];if(t!==_)return t}}children(e){if(a(e)&&(e=_),this._isCompound){var t=this._children[e];if(t)return u(t)}else{if(e===_)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var t=this._preds[e];if(t)return u(t)}successors(e){var t=this._sucs[e];if(t)return u(t)}neighbors(e){var t=this.predecessors(e);if(t)return C(t,this.successors(e))}isLeaf(e){var t;return this.isDirected()?t=this.successors(e):t=this.neighbors(e),t.length===0}filterNodes(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var s=this;o(this._nodes,function(n,h){e(h)&&t.setNode(h,n)}),o(this._edgeObjs,function(n){t.hasNode(n.v)&&t.hasNode(n.w)&&t.setEdge(n,s.edge(n))});var i={};function r(n){var h=s.parent(n);return h===void 0||t.hasNode(h)?(i[n]=h,h):h in i?i[h]:r(h)}return this._isCompound&&o(t.nodes(),function(n){t.setParent(n,r(n))}),t}setDefaultEdgeLabel(e){return b(e)||(e=c(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return m(this._edgeObjs)}setPath(e,t){var s=this,i=arguments;return O(e,function(r,n){return i.length>1?s.setEdge(r,n,t):s.setEdge(r,n),n}),this}setEdge(){var e,t,s,i,r=!1,n=arguments[0];typeof n=="object"&&n!==null&&"v"in n?(e=n.v,t=n.w,s=n.name,arguments.length===2&&(i=arguments[1],r=!0)):(e=n,t=arguments[1],s=arguments[3],arguments.length>2&&(i=arguments[2],r=!0)),e=""+e,t=""+t,a(s)||(s=""+s);var h=g(this._isDirected,e,t,s);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,h))return r&&(this._edgeLabels[h]=i),this;if(!a(s)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[h]=r?i:this._defaultEdgeLabelFn(e,t,s);var l=P(this._isDirected,e,t,s);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[h]=l,v(this._preds[t],e),v(this._sucs[e],t),this._in[t][h]=l,this._out[e][h]=l,this._edgeCount++,this}edge(e,t,s){var i=arguments.length===1?y(this._isDirected,arguments[0]):g(this._isDirected,e,t,s);return this._edgeLabels[i]}hasEdge(e,t,s){var i=arguments.length===1?y(this._isDirected,arguments[0]):g(this._isDirected,e,t,s);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,t,s){var i=arguments.length===1?y(this._isDirected,arguments[0]):g(this._isDirected,e,t,s),r=this._edgeObjs[i];return r&&(e=r.v,t=r.w,delete this._edgeLabels[i],delete this._edgeObjs[i],L(this._preds[t],e),L(this._sucs[e],t),delete this._in[t][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,t){var s=this._in[e];if(s){var i=m(s);return t?f(i,function(r){return r.v===t}):i}}outEdges(e,t){var s=this._out[e];if(s){var i=m(s);return t?f(i,function(r){return r.w===t}):i}}nodeEdges(e,t){var s=this.inEdges(e,t);if(s)return s.concat(this.outEdges(e,t))}};p.prototype._nodeCount=0;p.prototype._edgeCount=0;function v(d,e){d[e]?d[e]++:d[e]=1}function L(d,e){--d[e]||delete d[e]}function g(d,e,t,s){var i=""+e,r=""+t;if(!d&&i>r){var n=i;i=r,r=n}return i+N+r+N+(a(s)?j:s)}function P(d,e,t,s){var i=""+e,r=""+t;if(!d&&i>r){var n=i;i=r,r=n}var h={v:i,w:r};return s&&(h.name=s),h}function y(d,e){return g(d,e.v,e.w,e.name)}export{p as a}; diff --git a/src/google/adk/cli/browser/chunk-VDPKVNDJ.js b/src/google/adk/cli/browser/chunk-VWUZC4UJ.js similarity index 96% rename from src/google/adk/cli/browser/chunk-VDPKVNDJ.js rename to src/google/adk/cli/browser/chunk-VWUZC4UJ.js index 9a47ca2ba8..608a093aff 100644 --- a/src/google/adk/cli/browser/chunk-VDPKVNDJ.js +++ b/src/google/adk/cli/browser/chunk-VWUZC4UJ.js @@ -1 +1 @@ -import{Y as c}from"./chunk-QFMJV7VH.js";import{g as l}from"./chunk-JRNAXTJ7.js";var m=l(t=>{let{handDrawnSeed:e}=c();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),h=l(t=>{let e=p([...t.cssCompiledStyles||[],...t.cssStyles||[],...t.labelStyle||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),p=l(t=>{let e=new Map;return t.forEach(o=>{let[a,r]=o.split(":");e.set(a.trim(),r?.trim())}),e},"styles2Map"),d=l(t=>t==="color"||t==="font-size"||t==="font-family"||t==="font-weight"||t==="font-style"||t==="text-decoration"||t==="text-align"||t==="text-transform"||t==="line-height"||t==="letter-spacing"||t==="word-spacing"||t==="text-shadow"||t==="text-overflow"||t==="white-space"||t==="word-wrap"||t==="word-break"||t==="overflow-wrap"||t==="hyphens","isLabelStyle"),S=l(t=>{let{stylesArray:e}=h(t),o=[],a=[],r=[],n=[];return e.forEach(s=>{let i=s[0];d(i)?o.push(s.join(":")+" !important"):(a.push(s.join(":")+" !important"),i.includes("stroke")&&r.push(s.join(":")+" !important"),i==="fill"&&n.push(s.join(":")+" !important"))}),{labelStyles:o.join(";"),nodeStyles:a.join(";"),stylesArray:e,borderStyles:r,backgroundStyles:n}},"styles2String"),w=l((t,e)=>{let{themeVariables:o,handDrawnSeed:a}=c(),{nodeBorder:r,mainBkg:n}=o,{stylesMap:s}=h(t);return Object.assign({roughness:.7,fill:s.get("fill")||n,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||r,seed:a,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:f(s.get("stroke-dasharray"))},e)},"userNodeOverrides"),f=l(t=>{if(!t)return[0,0];let e=t.trim().split(/\s+/).map(Number);if(e.length===1){let r=isNaN(e[0])?0:e[0];return[r,r]}let o=isNaN(e[0])?0:e[0],a=isNaN(e[1])?0:e[1];return[o,a]},"getStrokeDashArray");export{m as a,h as b,d as c,S as d,w as e}; +import{Y as c}from"./chunk-37QI3DOO.js";import{g as l}from"./chunk-JRNAXTJ7.js";var m=l(t=>{let{handDrawnSeed:e}=c();return{fill:t,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:.7,stroke:t,seed:e}},"solidStateFill"),h=l(t=>{let e=p([...t.cssCompiledStyles||[],...t.cssStyles||[],...t.labelStyle||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),p=l(t=>{let e=new Map;return t.forEach(o=>{let[a,r]=o.split(":");e.set(a.trim(),r?.trim())}),e},"styles2Map"),d=l(t=>t==="color"||t==="font-size"||t==="font-family"||t==="font-weight"||t==="font-style"||t==="text-decoration"||t==="text-align"||t==="text-transform"||t==="line-height"||t==="letter-spacing"||t==="word-spacing"||t==="text-shadow"||t==="text-overflow"||t==="white-space"||t==="word-wrap"||t==="word-break"||t==="overflow-wrap"||t==="hyphens","isLabelStyle"),S=l(t=>{let{stylesArray:e}=h(t),o=[],a=[],r=[],n=[];return e.forEach(s=>{let i=s[0];d(i)?o.push(s.join(":")+" !important"):(a.push(s.join(":")+" !important"),i.includes("stroke")&&r.push(s.join(":")+" !important"),i==="fill"&&n.push(s.join(":")+" !important"))}),{labelStyles:o.join(";"),nodeStyles:a.join(";"),stylesArray:e,borderStyles:r,backgroundStyles:n}},"styles2String"),w=l((t,e)=>{let{themeVariables:o,handDrawnSeed:a}=c(),{nodeBorder:r,mainBkg:n}=o,{stylesMap:s}=h(t);return Object.assign({roughness:.7,fill:s.get("fill")||n,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:s.get("stroke")||r,seed:a,strokeWidth:s.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:f(s.get("stroke-dasharray"))},e)},"userNodeOverrides"),f=l(t=>{if(!t)return[0,0];let e=t.trim().split(/\s+/).map(Number);if(e.length===1){let r=isNaN(e[0])?0:e[0];return[r,r]}let o=isNaN(e[0])?0:e[0],a=isNaN(e[1])?0:e[1];return[o,a]},"getStrokeDashArray");export{m as a,h as b,d as c,S as d,w as e}; diff --git a/src/google/adk/cli/browser/chunk-VYRVJDOJ.js b/src/google/adk/cli/browser/chunk-VYRVJDOJ.js new file mode 100644 index 0000000000..71c74c03ec --- /dev/null +++ b/src/google/adk/cli/browser/chunk-VYRVJDOJ.js @@ -0,0 +1,30 @@ +import{a as Q}from"./chunk-DMWOYWYQ.js";import{a as Y}from"./chunk-SRCUB3EX.js";import"./chunk-X43UMWSZ.js";import"./chunk-DZQRYCWR.js";import"./chunk-QXIJPCUK.js";import"./chunk-GO6ZTN3G.js";import"./chunk-7BGAJP6A.js";import"./chunk-PNXCYZAZ.js";import"./chunk-BWRTTESZ.js";import"./chunk-5JNRF4JL.js";import"./chunk-PKSFXE6N.js";import"./chunk-7ZGKZ6HH.js";import{a as H}from"./chunk-PDRDFWTH.js";import{B as J,C as K}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{N as O,R as B,S as P,T as I,U as N,V as U,W as V,X,Y as Z,r as L}from"./chunk-37QI3DOO.js";import{K as C,N as q,g as o,i as h,r as j}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{j as G}from"./chunk-RMXJBC7V.js";var ee=L.pie,D={sections:new Map,showData:!1,config:ee},u=D.sections,y=D.showData,he=structuredClone(ee),ue=o(()=>structuredClone(he),"getConfig"),me=o(()=>{u=new Map,y=D.showData,B()},"clear"),ve=o(({label:e,value:a})=>{if(a<0)throw new Error(`"${e}" has invalid value: ${a}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);u.has(e)||(u.set(e,a),h.debug(`added new section: ${e}, with value: ${a}`))},"addSection"),xe=o(()=>u,"getSections"),Se=o(e=>{y=e},"setShowData"),we=o(()=>y,"getShowData"),te={getConfig:ue,clear:me,setDiagramTitle:V,getDiagramTitle:X,setAccTitle:P,getAccTitle:I,setAccDescription:N,getAccDescription:U,addSection:ve,getSections:xe,setShowData:Se,getShowData:we},Ce=o((e,a)=>{Q(e,a),a.setShowData(e.showData),e.sections.map(a.addSection)},"populateDb"),De={parse:o(e=>G(null,null,function*(){let a=yield Y("pie",e);h.debug(a),Ce(a,te)}),"parse")},ye=o(e=>` + .pieCircle{ + stroke: ${e.pieStrokeColor}; + stroke-width : ${e.pieStrokeWidth}; + opacity : ${e.pieOpacity}; + } + .pieOuterCircle{ + stroke: ${e.pieOuterStrokeColor}; + stroke-width: ${e.pieOuterStrokeWidth}; + fill: none; + } + .pieTitleText { + text-anchor: middle; + font-size: ${e.pieTitleTextSize}; + fill: ${e.pieTitleTextColor}; + font-family: ${e.fontFamily}; + } + .slice { + font-family: ${e.fontFamily}; + fill: ${e.pieSectionTextColor}; + font-size:${e.pieSectionTextSize}; + // fill: white; + } + .legend text { + fill: ${e.pieLegendTextColor}; + font-family: ${e.fontFamily}; + font-size: ${e.pieLegendTextSize}; + } +`,"getStyles"),$e=ye,Te=o(e=>{let a=[...e.values()].reduce((r,l)=>r+l,0),$=[...e.entries()].map(([r,l])=>({label:r,value:l})).filter(r=>r.value/a*100>=1);return q().value(r=>r.value).sort(null)($)},"createPieArcs"),Ae=o((e,a,$,T)=>{h.debug(`rendering pie chart +`+e);let r=T.db,l=Z(),A=K(r.getConfig(),l.pie),b=40,n=18,p=4,s=450,d=s,m=H(a),c=m.append("g");c.attr("transform","translate("+d/2+","+s/2+")");let{themeVariables:i}=l,[E]=J(i.pieOuterStrokeWidth);E??=2;let _=A.textPosition,g=Math.min(d,s)/2-b,ae=C().innerRadius(0).outerRadius(g),ie=C().innerRadius(g*_).outerRadius(g*_);c.append("circle").attr("cx",0).attr("cy",0).attr("r",g+E/2).attr("class","pieOuterCircle");let f=r.getSections(),re=Te(f),oe=[i.pie1,i.pie2,i.pie3,i.pie4,i.pie5,i.pie6,i.pie7,i.pie8,i.pie9,i.pie10,i.pie11,i.pie12],v=0;f.forEach(t=>{v+=t});let k=re.filter(t=>(t.data.value/v*100).toFixed(0)!=="0"),x=j(oe).domain([...f.keys()]);c.selectAll("mySlices").data(k).enter().append("path").attr("d",ae).attr("fill",t=>x(t.data.label)).attr("class","pieCircle"),c.selectAll("mySlices").data(k).enter().append("text").text(t=>(t.data.value/v*100).toFixed(0)+"%").attr("transform",t=>"translate("+ie.centroid(t)+")").style("text-anchor","middle").attr("class","slice");let ne=c.append("text").text(r.getDiagramTitle()).attr("x",0).attr("y",-(s-50)/2).attr("class","pieTitleText"),R=[...f.entries()].map(([t,w])=>({label:t,value:w})),S=c.selectAll(".legend").data(R).enter().append("g").attr("class","legend").attr("transform",(t,w)=>{let M=n+p,pe=M*R.length/2,ge=12*n,fe=w*M-pe;return"translate("+ge+","+fe+")"});S.append("rect").attr("width",n).attr("height",n).style("fill",t=>x(t.label)).style("stroke",t=>x(t.label)),S.append("text").attr("x",n+p).attr("y",n-p).text(t=>r.getShowData()?`${t.label} [${t.value}]`:t.label);let le=Math.max(...S.selectAll("text").nodes().map(t=>t?.getBoundingClientRect().width??0)),se=d+b+n+p+le,W=ne.node()?.getBoundingClientRect().width??0,ce=d/2-W/2,de=d/2+W/2,z=Math.min(0,ce),F=Math.max(se,de)-z;m.attr("viewBox",`${z} 0 ${F} ${s}`),O(m,s,F,A.useMaxWidth)},"draw"),be={draw:Ae},Ge={parser:De,db:te,renderer:be,styles:$e};export{Ge as diagram}; diff --git a/src/google/adk/cli/browser/chunk-VZBWMYZM.js b/src/google/adk/cli/browser/chunk-VZBWMYZM.js new file mode 100644 index 0000000000..251872f961 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-VZBWMYZM.js @@ -0,0 +1,10 @@ +import{a as X,b as H,c as rt,d as ut}from"./chunk-FDMPUWDP.js";import{c as B}from"./chunk-NRMNZ7EH.js";import{c as xt,d as bt}from"./chunk-VWUZC4UJ.js";import{a as gt}from"./chunk-3TW5HJSC.js";import{a as Mt}from"./chunk-PRKFGJVH.js";import{f as wt}from"./chunk-4V3PIBXT.js";import{D as E,H as yt}from"./chunk-UKZIEWH5.js";import{A as $,E as K,Y as U}from"./chunk-37QI3DOO.js";import{$ as dt,L as I,M as st,O as ot,P as it,Q as tt,U as ct,X as lt,a as O,aa as pt,ba as ht,ca as ft,da as kt,ea as mt,g as d,i as x}from"./chunk-JRNAXTJ7.js";import{a as et,j as nt}from"./chunk-RMXJBC7V.js";var Xt=d((r,t,a,s,o,n=!1,e)=>{t.arrowTypeStart&&Lt(r,"start",t.arrowTypeStart,a,s,o,n,e),t.arrowTypeEnd&&Lt(r,"end",t.arrowTypeEnd,a,s,o,n,e)},"addEdgeMarkers"),Yt={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_barb_neo:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},Ht=["cross","point","circle","lollipop","aggregation","extension","composition","dependency","barb"],Lt=d((r,t,a,s,o,n,e=!1,i)=>{let c=Yt[a],l=c&&Ht.includes(c.type);if(!c){x.warn(`Unknown arrow type: ${a}`);return}let k=c.type,p=`${o}_${n}-${k}${t==="start"?"Start":"End"}${e&&l?"-margin":""}`;if(i&&i.trim()!==""){let g=i.replace(/[^\dA-Za-z]/g,"_"),h=`${p}_${g}`;if(!document.getElementById(h)){let m=document.getElementById(p);if(m){let u=m.cloneNode(!0);u.id=h,u.querySelectorAll("path, circle, line").forEach(W=>{W.setAttribute("stroke",i),c.fill&&W.setAttribute("fill",i)}),m.parentNode?.appendChild(u)}}r.attr(`marker-${t}`,`url(${s}#${h})`)}else r.attr(`marker-${t}`,`url(${s}#${p})`)},"addEdgeMarker"),Bt=d(r=>typeof r=="string"?r:U()?.flowchart?.curve,"resolveEdgeCurveType"),V=new Map,M=new Map,br=d(()=>{V.clear(),M.clear()},"clear"),T=d(r=>r?typeof r=="string"?r:r.reduce((t,a)=>t+";"+a,""):"","getLabelStyles"),wr=d((r,t)=>nt(null,null,function*(){let a=U(),s=K(a),{labelStyles:o}=bt(t);t.labelStyle=o;let n=r.insert("g").attr("class","edgeLabel"),e=n.insert("g").attr("class","label").attr("data-id",t.id),i=t.labelType==="markdown",l=yield wt(r,t.label,{style:T(t.labelStyle),useHtmlLabels:s,addSvgBackground:!0,isNode:!1,markdown:i,width:i?void 0:void 0},a);e.node().appendChild(l),x.info("abc82",t,t.labelType);let k=l.getBBox(),y=k;if(s){let p=l.children[0],g=O(l);k=p.getBoundingClientRect(),y=k,g.attr("width",k.width),g.attr("height",k.height)}else{let p=O(l).select("text").node();p&&typeof p.getBBox=="function"&&(y=p.getBBox())}e.attr("transform",X(y,s)),V.set(t.id,n),t.width=k.width,t.height=k.height;let f;if(t.startLabelLeft){let p=r.insert("g").attr("class","edgeTerminals"),g=p.insert("g").attr("class","inner"),h=yield B(g,t.startLabelLeft,T(t.labelStyle)||"",!1,!1);f=h;let m=h.getBBox();if(s){let u=h.children[0],w=O(h);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}g.attr("transform",X(m,s)),M.get(t.id)||M.set(t.id,{}),M.get(t.id).startLeft=p,C(f,t.startLabelLeft)}if(t.startLabelRight){let p=r.insert("g").attr("class","edgeTerminals"),g=p.insert("g").attr("class","inner"),h=yield B(g,t.startLabelRight,T(t.labelStyle)||"",!1,!1);f=h,g.node().appendChild(h);let m=h.getBBox();if(s){let u=h.children[0],w=O(h);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}g.attr("transform",X(m,s)),M.get(t.id)||M.set(t.id,{}),M.get(t.id).startRight=p,C(f,t.startLabelRight)}if(t.endLabelLeft){let p=r.insert("g").attr("class","edgeTerminals"),g=p.insert("g").attr("class","inner"),h=yield B(g,t.endLabelLeft,T(t.labelStyle)||"",!1,!1);f=h;let m=h.getBBox();if(s){let u=h.children[0],w=O(h);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}g.attr("transform",X(m,s)),p.node().appendChild(h),M.get(t.id)||M.set(t.id,{}),M.get(t.id).endLeft=p,C(f,t.endLabelLeft)}if(t.endLabelRight){let p=r.insert("g").attr("class","edgeTerminals"),g=p.insert("g").attr("class","inner"),h=yield B(g,t.endLabelRight,T(t.labelStyle)||"",!1,!1);f=h;let m=h.getBBox();if(s){let u=h.children[0],w=O(h);m=u.getBoundingClientRect(),w.attr("width",m.width),w.attr("height",m.height)}g.attr("transform",X(m,s)),p.node().appendChild(h),M.get(t.id)||M.set(t.id,{}),M.get(t.id).endRight=p,C(f,t.endLabelRight)}return l}),"insertEdgeLabel");function C(r,t){K(U())&&r&&(r.style.width=t.length*9+"px",r.style.height="12px")}d(C,"setTerminalWidth");var Mr=d((r,t)=>{x.debug("Moving label abc88 ",r.id,r.label,V.get(r.id),t);let a=t.updatedPath?t.updatedPath:t.originalPath,s=U(),{subGraphTitleTotalMargin:o}=gt(s);if(r.label){let n=V.get(r.id),e=r.x,i=r.y;if(a){let c=E.calcLabelPosition(a);x.debug("Moving label "+r.label+" from (",e,",",i,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(e=c.x,i=c.y)}n.attr("transform",`translate(${e}, ${i+o/2})`)}if(r.startLabelLeft){let n=M.get(r.id).startLeft,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_left",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}if(r.startLabelRight){let n=M.get(r.id).startRight,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_right",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}if(r.endLabelLeft){let n=M.get(r.id).endLeft,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_left",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}if(r.endLabelRight){let n=M.get(r.id).endRight,e=r.x,i=r.y;if(a){let c=E.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_right",a);e=c.x,i=c.y}n.attr("transform",`translate(${e}, ${i})`)}},"positionEdgeLabel"),Tt=d((r,t)=>{let a=r.x,s=r.y,o=Math.abs(t.x-a),n=Math.abs(t.y-s),e=r.width/2,i=r.height/2;return o>=e||n>=i},"outsideNode"),Ct=d((r,t,a)=>{x.debug(`intersection calc abc89: + outsidePoint: ${JSON.stringify(t)} + insidePoint : ${JSON.stringify(a)} + node : x:${r.x} y:${r.y} w:${r.width} h:${r.height}`);let s=r.x,o=r.y,n=Math.abs(s-a.x),e=r.width/2,i=a.xMath.abs(s-t.x)*c){let y=a.y{x.warn("abc88 cutPathAtIntersect",r,t);let a=[],s=r[0],o=!1;return r.forEach(n=>{if(x.info("abc88 checking point",n,t),!Tt(t,n)&&!o){let e=Ct(t,s,n);x.debug("abc88 inside",n,s,e),x.debug("abc88 intersection",e,t);let i=!1;a.forEach(c=>{i=i||c.x===e.x&&c.y===e.y}),a.some(c=>c.x===e.x&&c.y===e.y)?x.warn("abc88 no intersect",e,a):a.push(e),o=!0}else x.warn("abc88 outside",n,s),s=n,o||a.push(n)}),x.debug("returning points",a),a},"cutPathAtIntersect");function St(r){let t=[],a=[];for(let s=1;s5&&Math.abs(n.y-o.y)>5||o.y===n.y&&n.x===e.x&&Math.abs(n.x-o.x)>5&&Math.abs(n.y-e.y)>5)&&(t.push(n),a.push(s))}return{cornerPoints:t,cornerPointPositions:a}}d(St,"extractCornerPoints");var vt=d(function(r,t,a){let s=t.x-r.x,o=t.y-r.y,n=Math.sqrt(s*s+o*o),e=a/n;return{x:t.x-e*s,y:t.y-e*o}},"findAdjacentPoint"),zt=d(function(r){let{cornerPointPositions:t}=St(r),a=[];for(let s=0;s10&&Math.abs(n.y-o.y)>=10){x.debug("Corner point fixing",Math.abs(n.x-o.x),Math.abs(n.y-o.y));let p=5;e.x===i.x?f={x:l<0?i.x-p+y:i.x+p-y,y:k<0?i.y-y:i.y+y}:f={x:l<0?i.x-y:i.x+y,y:k<0?i.y-p+y:i.y+p-y}}else x.debug("Corner point skipping fixing",Math.abs(n.x-o.x),Math.abs(n.y-o.y));a.push(f,c)}else a.push(r[s]);return a},"fixCorners"),Rt=d((r,t,a)=>{let s=r-t-a,o=2,n=2,e=o+n,i=Math.floor(s/e),c=Array(i).fill(`${o} ${n}`).join(" ");return`0 ${t} ${c} ${a}`},"generateDashArray"),Lr=d(function(r,t,a,s,o,n,e,i=!1){if(!e)throw new Error(`insertEdge: missing diagramId for edge "${t.id}" \u2014 edge IDs require a diagram prefix for uniqueness`);let{handDrawnSeed:c}=U(),l=t.points,k=!1,y=o;var f=n;let p=[];for(let _ in t.cssCompiledStyles)xt(_)||p.push(t.cssCompiledStyles[_]);x.debug("UIO intersect check",t.points,f.x,y.x),f.intersect&&y.intersect&&!i&&(l=l.slice(1,t.points.length-1),l.unshift(y.intersect(l[0])),x.debug("Last point UIO",t.start,"-->",t.end,l[l.length-1],f,f.intersect(l[l.length-1])),l.push(f.intersect(l[l.length-1])));let g=btoa(JSON.stringify(l));t.toCluster&&(x.info("to cluster abc88",a.get(t.toCluster)),l=_t(t.points,a.get(t.toCluster).node),k=!0),t.fromCluster&&(x.debug("from cluster abc88",a.get(t.fromCluster),JSON.stringify(l,null,2)),l=_t(l.reverse(),a.get(t.fromCluster).node).reverse(),k=!0);let h=l.filter(_=>!Number.isNaN(_.y)),m=Bt(t.curve);m!=="rounded"&&(h=zt(h));let u=I;switch(m){case"linear":u=I;break;case"basis":u=tt;break;case"cardinal":u=ct;break;case"bumpX":u=ot;break;case"bumpY":u=it;break;case"catmullRom":u=lt;break;case"monotoneX":u=dt;break;case"monotoneY":u=pt;break;case"natural":u=ht;break;case"step":u=ft;break;case"stepAfter":u=mt;break;case"stepBefore":u=kt;break;case"rounded":u=I;break;default:u=tt}let{x:w,y:W}=ut(t),j=st().x(w).y(W).curve(u),L;switch(t.thickness){case"normal":L="edge-thickness-normal";break;case"thick":L="edge-thickness-thick";break;case"invisible":L="edge-thickness-invisible";break;default:L="edge-thickness-normal"}switch(t.pattern){case"solid":L+=" edge-pattern-solid";break;case"dotted":L+=" edge-pattern-dotted";break;case"dashed":L+=" edge-pattern-dashed";break;default:L+=" edge-pattern-solid"}let b,z=m==="rounded"?Ot($t(h,t),5):j(h),v=Array.isArray(t.style)?t.style:[t.style],R=v.find(_=>_?.startsWith("stroke:")),S="";t.animate&&(S="edge-animation-fast"),t.animation&&(S="edge-animation-"+t.animation);let D=!1;if(t.look==="handDrawn"){let _=Mt.svg(r);Object.assign([],h);let A=_.path(z,{roughness:.3,seed:c});L+=" transition",b=O(A).select("path").attr("id",`${e}-${t.id}`).attr("class"," "+L+(t.classes?" "+t.classes:"")+(S?" "+S:"")).attr("style",v?v.reduce((Q,Z)=>Q+";"+Z,""):"");let P=b.attr("d");b.attr("d",P),r.node().appendChild(b.node())}else{let _=p.join(";"),A=v?v.reduce((N,Y)=>N+Y+";",""):"",P=(_?_+";"+A+";":A)+";"+(v?v.reduce((N,Y)=>N+";"+Y,""):"");b=r.append("path").attr("d",z).attr("id",`${e}-${t.id}`).attr("class"," "+L+(t.classes?" "+t.classes:"")+(S?" "+S:"")).attr("style",P),R=P.match(/stroke:([^;]+)/)?.[1],D=t.animate===!0||!!t.animation||_.includes("animation");let Q=b.node(),Z=typeof Q.getTotalLength=="function"?Q.getTotalLength():0,F=rt[t.arrowTypeStart]||0,G=rt[t.arrowTypeEnd]||0;if(t.look==="neo"&&!D){let Y=`stroke-dasharray: ${t.pattern==="dotted"||t.pattern==="dashed"?Rt(Z,F,G):`0 ${F} ${Z-F-G} ${G}`}; stroke-dashoffset: 0;`;b.attr("style",Y+b.attr("style"))}}b.attr("data-edge",!0),b.attr("data-et","edge"),b.attr("data-id",t.id),b.attr("data-points",g),b.attr("data-look",yt(t.look)),t.showPoints&&h.forEach(_=>{r.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",_.x).attr("cy",_.y)});let q="";(U().flowchart.arrowMarkerAbsolute||U().state.arrowMarkerAbsolute)&&(q=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,q=q.replace(/\(/g,"\\(").replace(/\)/g,"\\)")),x.info("arrowTypeStart",t.arrowTypeStart),x.info("arrowTypeEnd",t.arrowTypeEnd);let Ut=!D&&t?.look==="neo";Xt(b,t,q,e,s,Ut,R);let Et=Math.floor(l.length/2),Wt=l[Et];E.isLabelCoordinateInPath(Wt,b.attr("d"))||(k=!0);let J={};return k&&(J.updatedPath=l),J.originalPath=t.points,J},"insertEdge");function Ot(r,t){if(r.length<2)return"";let a="",s=r.length,o=1e-5;for(let n=0;net({},o));if(r.length>=2&&H[t.arrowTypeStart]){let o=H[t.arrowTypeStart],n=r[0],e=r[1],{angle:i}=at(n,e),c=o*Math.cos(i),l=o*Math.sin(i);a[0].x=n.x+c,a[0].y=n.y+l}let s=r.length;if(s>=2&&H[t.arrowTypeEnd]){let o=H[t.arrowTypeEnd],n=r[s-1],e=r[s-2],{angle:i}=at(e,n),c=o*Math.cos(i),l=o*Math.sin(i);a[s-1].x=n.x-c,a[s-1].y=n.y-l}return a}d($t,"applyMarkerOffsetsToPoints");var qt=d((r,t,a,s)=>{t.forEach(o=>{lr[o](r,a,s)})},"insertMarkers"),At=d((r,t,a)=>{x.trace("Making markers for ",a),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M 1,7 L18,13 V 1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),r.append("marker").attr("id",a+"_"+t+"-extensionStart-margin").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,7 18,13 18,1").style("stroke-width",2).style("stroke-dasharray","0"),r.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd-margin").attr("class","marker extension "+t).attr("refX",9).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,1 10,13 18,7").style("stroke-width",2).style("stroke-dasharray","0")},"extension"),Pt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart-margin").attr("class","marker composition "+t).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("viewBox","0 0 15 15").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd-margin").attr("class","marker composition "+t).attr("refX",3.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),Qt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart-margin").attr("class","marker aggregation "+t).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd-margin").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),Zt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart-margin").attr("class","marker dependency "+t).attr("refX",4).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd-margin").attr("class","marker dependency "+t).attr("refX",16).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),Nt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart-margin").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2),r.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd-margin").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2)},"lollipop"),It=d((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-pointEnd-margin").attr("class","marker "+t).attr("viewBox","0 0 11.5 14").attr("refX",11.5).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",10.5).attr("markerHeight",14).attr("orient","auto").append("path").attr("d","M 0 0 L 11.5 7 L 0 14 z").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-pointStart-margin").attr("class","marker "+t).attr("viewBox","0 0 11.5 14").attr("refX",1).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11.5).attr("markerHeight",14).attr("orient","auto").append("polygon").attr("points","0,7 11.5,14 11.5,0").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"point"),Vt=d((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-circleEnd-margin").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refY",5).attr("refX",12.25).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-circleStart-margin").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-2).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"circle"),jt=d((r,t,a)=>{r.append("marker").attr("id",a+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",a+"_"+t+"-crossEnd-margin").attr("class","marker cross "+t).attr("viewBox","0 0 15 15").attr("refX",17.7).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5),r.append("marker").attr("id",a+"_"+t+"-crossStart-margin").attr("class","marker cross "+t).attr("viewBox","0 0 15 15").attr("refX",-3.5).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5).style("stroke-dasharray","1,0")},"cross"),Dt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),Jt=d((r,t,a)=>{let s=$(),{themeVariables:o}=s,{transitionColor:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z"),r.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd-margin").attr("refX",17).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z").attr("fill",`${n}`)},"barbNeo"),Ft=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneStart").attr("class","marker onlyOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneEnd").attr("class","marker onlyOne "+t).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),Gt=d((r,t,a)=>{let s=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneStart").attr("class","marker zeroOrOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");s.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),s.append("path").attr("d","M9,0 L9,18");let o=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+t).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");o.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),o.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),Kt=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreStart").attr("class","marker oneOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreEnd").attr("class","marker oneOrMore "+t).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),tr=d((r,t,a)=>{let s=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");s.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),s.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let o=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+t).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");o.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),o.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),rr=d((r,t,a)=>{let s=$(),{themeVariables:o}=s,{strokeWidth:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneStart").attr("class","marker onlyOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M9,0 L9,18 M15,0 L15,18").attr("stroke-width",`${n}`),r.append("defs").append("marker").attr("id",a+"_"+t+"-onlyOneEnd").attr("class","marker onlyOne "+t).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M3,0 L3,18 M9,0 L9,18").attr("stroke-width",`${n}`)},"only_one_neo"),ar=d((r,t,a)=>{let s=$(),{themeVariables:o}=s,{strokeWidth:n,mainBkg:e}=o,i=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneStart").attr("class","marker zeroOrOne "+t).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse");i.append("circle").attr("fill",e??"white").attr("cx",21).attr("cy",9).attr("stroke-width",`${n}`).attr("r",6),i.append("path").attr("d","M9,0 L9,18").attr("stroke-width",`${n}`);let c=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+t).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("markerUnits","userSpaceOnUse").attr("orient","auto");c.append("circle").attr("fill",e??"white").attr("cx",9).attr("cy",9).attr("stroke-width",`${n}`).attr("r",6),c.append("path").attr("d","M21,0 L21,18").attr("stroke-width",`${n}`)},"zero_or_one_neo"),er=d((r,t,a)=>{let s=$(),{themeVariables:o}=s,{strokeWidth:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreStart").attr("class","marker oneOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27").attr("stroke-width",`${n}`),r.append("defs").append("marker").attr("id",a+"_"+t+"-oneOrMoreEnd").attr("class","marker oneOrMore "+t).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18").attr("stroke-width",`${n}`)},"one_or_more_neo"),nr=d((r,t,a)=>{let s=$(),{themeVariables:o}=s,{strokeWidth:n,mainBkg:e}=o,i=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+t).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto");i.append("circle").attr("fill",e??"white").attr("cx",45.5).attr("cy",18).attr("r",6).attr("stroke-width",`${n}`),i.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18").attr("stroke-width",`${n}`);let c=r.append("defs").append("marker").attr("id",a+"_"+t+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+t).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse");c.append("circle").attr("fill",e??"white").attr("cx",11).attr("cy",18).attr("r",6).attr("stroke-width",`${n}`),c.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18").attr("stroke-width",`${n}`)},"zero_or_more_neo"),sr=d((r,t,a)=>{r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0 + L20,10 + M20,10 + L0,20`)},"requirement_arrow"),or=d((r,t,a)=>{let s=$(),{themeVariables:o}=s,{strokeWidth:n}=o;r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("stroke-width",`${n}`).attr("viewBox","0 0 25 20").append("path").attr("d",`M0,0 + L20,10 + M20,10 + L0,20`).attr("stroke-linejoin","miter")},"requirement_arrow_neo"),ir=d((r,t,a)=>{let s=r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");s.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),s.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),s.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),cr=d((r,t,a)=>{let s=$(),{themeVariables:o}=s,{strokeWidth:n}=o,e=r.append("defs").append("marker").attr("id",a+"_"+t+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("g");e.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),e.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),e.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10),e.selectAll("*").attr("stroke-width",`${n}`)},"requirement_contains_neo"),lr={extension:At,composition:Pt,aggregation:Qt,dependency:Zt,lollipop:Nt,point:It,circle:Vt,cross:jt,barb:Dt,barbNeo:Jt,only_one:Ft,zero_or_one:Gt,one_or_more:Kt,zero_or_more:tr,only_one_neo:rr,zero_or_one_neo:ar,one_or_more_neo:er,zero_or_more_neo:nr,requirement_arrow:sr,requirement_contains:ir,requirement_arrow_neo:or,requirement_contains_neo:cr},_r=qt;export{br as a,wr as b,Mr as c,Lr as d,_r as e}; diff --git a/src/google/adk/cli/browser/chunk-W7PRDKNL.js b/src/google/adk/cli/browser/chunk-W7PRDKNL.js deleted file mode 100644 index 6db8bd616f..0000000000 --- a/src/google/adk/cli/browser/chunk-W7PRDKNL.js +++ /dev/null @@ -1,53 +0,0 @@ -import{a as At,b as Ot}from"./chunk-DRBE27N3.js";import{a as w}from"./chunk-PRKFGJVH.js";import{a as jt,b as St,d as R,e as N}from"./chunk-VDPKVNDJ.js";import{d as $t,f as nt}from"./chunk-WXI2IBAH.js";import{i as wt,o as bt,q as st}from"./chunk-WBLSVR3V.js";import{$ as Rt,A as dt,E as it,G as Pt,I as Nt,J as _t,Y as U,u as ut}from"./chunk-QFMJV7VH.js";import{a as Q,g as b,i as Z}from"./chunk-JRNAXTJ7.js";import{a as tt,b as rt,j as C}from"./chunk-RMXJBC7V.js";var O=b((y,t,g)=>C(null,null,function*(){let o,l=t.useHtmlLabels||ut(U()?.htmlLabels);g?o=g:o="node default";let r=y.insert("g").attr("class",o).attr("id",t.domId||t.id),f=r.insert("g").attr("class","label").attr("style",st(t.labelStyle)),a;t.label===void 0?a="":a=typeof t.label=="string"?t.label:t.label[0];let c=!!t.icon||!!t.img,s=t.labelType==="markdown",e=yield nt(f,Pt(bt(a),U()),{useHtmlLabels:l,width:t.width||U().flowchart?.wrappingWidth,cssClasses:s?"markdown-node-label":void 0,style:t.labelStyle,addSvgBackground:c,markdown:s},U()),i=e.getBBox(),h=(t?.padding??0)/2;if(l){let n=e.children[0],p=Q(e);yield Ot(n,a),i=n.getBoundingClientRect(),p.attr("width",i.width),p.attr("height",i.height)}return l?f.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"):f.attr("transform","translate(0, "+-i.height/2+")"),t.centerLabel&&f.attr("transform","translate("+-i.width/2+", "+-i.height/2+")"),f.insert("rect",":first-child"),{shapeSvg:r,bbox:i,halfPadding:h,label:f}}),"labelHelper"),Lt=b((y,t,g)=>C(null,null,function*(){let o=g.useHtmlLabels??it(U()),l=y.insert("g").attr("class","label").attr("style",g.labelStyle||""),r=yield nt(l,Pt(bt(t),U()),{useHtmlLabels:o,width:g.width||U()?.flowchart?.wrappingWidth,style:g.labelStyle,addSvgBackground:!!g.icon||!!g.img}),f=r.getBBox(),a=g.padding/2;if(it(U())){let c=r.children[0],s=Q(r);f=c.getBoundingClientRect(),s.attr("width",f.width),s.attr("height",f.height)}return o?l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"):l.attr("transform","translate(0, "+-f.height/2+")"),g.centerLabel&&l.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),l.insert("rect",":first-child"),{shapeSvg:y,bbox:f,halfPadding:a,label:l}}),"insertLabel"),A=b((y,t)=>{let g=t.node().getBBox();y.width=g.width,y.height=g.height},"updateNodeBounds"),T=b((y,t)=>(y.look==="handDrawn"?"rough-node":"node")+" "+y.cssClasses+" "+(t||""),"getNodeClasses");function z(y){let t=y.map((g,o)=>`${o===0?"M":"L"}${g.x},${g.y}`);return t.push("Z"),t.join(" ")}b(z,"createPathFromPoints");function ft(y,t,g,o,l,r){let f=[],c=g-y,s=o-t,e=c/r,i=2*Math.PI/e,h=t+s/2;for(let n=0;n<=50;n++){let p=n/50,u=y+p*c,m=h+l*Math.sin(i*(u-y));f.push({x:u,y:m})}return f}b(ft,"generateFullSineWavePoints");function kt(y,t,g,o,l,r){let f=[],a=l*Math.PI/180,e=(r*Math.PI/180-a)/(o-1);for(let i=0;i{var g=y.x,o=y.y,l=t.x-g,r=t.y-o,f=y.width/2,a=y.height/2,c,s;return Math.abs(r)*f>Math.abs(l)*a?(r<0&&(a=-a),c=r===0?0:a*l/r,s=a):(l<0&&(f=-f),c=f,s=l===0?0:f*r/l),{x:g+c,y:o+s}},"intersectRect"),xt=ne,ce=b((y,t,g,o=!1,l=!1)=>C(null,null,function*(){let r=t||"";typeof r=="object"&&(r=r[0]);let f=U(),a=it(f);return yield nt(y,r,{style:g,isTitle:o,useHtmlLabels:a,markdown:!1,isNode:l,width:Number.POSITIVE_INFINITY},f)}),"createLabel"),Bt=ce,yt=b((y,t,g,o,l)=>["M",y+l,t,"H",y+g-l,"A",l,l,0,0,1,y+g,t+l,"V",t+o-l,"A",l,l,0,0,1,y+g-l,t+o,"H",y+l,"A",l,l,0,0,1,y,t+o-l,"V",t+l,"A",l,l,0,0,1,y+l,t,"Z"].join(" "),"createRoundedRectPathD"),Xt=b((y,t)=>C(null,null,function*(){Z.info("Creating subgraph rect for ",t.id,t);let g=U(),{themeVariables:o,handDrawnSeed:l}=g,{clusterBkg:r,clusterBorder:f}=o,{labelStyles:a,nodeStyles:c,borderStyles:s,backgroundStyles:e}=R(t),i=y.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.id).attr("data-look",t.look),h=it(g),n=i.insert("g").attr("class","cluster-label "),p;t.labelType==="markdown"?p=yield nt(n,t.label,{style:t.labelStyle,useHtmlLabels:h,isNode:!0,width:t.width}):p=yield Bt(n,t.label,t.labelStyle||"",!1,!0);let u=p.getBBox();if(it(g)){let B=p.children[0],k=Q(p);u=B.getBoundingClientRect(),k.attr("width",u.width),k.attr("height",u.height)}let m=t.width<=u.width+t.padding?u.width+t.padding:t.width;t.width<=u.width+t.padding?t.diff=(m-t.width)/2-t.padding:t.diff=-t.padding;let d=t.height,x=t.x-m/2,D=t.y-d/2;Z.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let B=w.svg(i),k=N(t,{roughness:.7,fill:r,stroke:f,fillWeight:3,seed:l}),M=B.path(yt(x,D,m,d,0),k);S=i.insert(()=>(Z.debug("Rough node insert CXC",M),M),":first-child"),S.select("path:nth-child(2)").attr("style",s.join(";")),S.select("path").attr("style",e.join(";").replace("fill","stroke"))}else S=i.insert("rect",":first-child"),S.attr("style",c).attr("rx",t.rx).attr("ry",t.ry).attr("x",x).attr("y",D).attr("width",m).attr("height",d);let{subGraphTitleTopMargin:$}=At(g);if(n.attr("transform",`translate(${t.x-u.width/2}, ${t.y-t.height/2+$})`),a){let B=n.select("span");B&&B.attr("style",a)}let v=S.node().getBBox();return t.offsetX=0,t.width=v.width,t.height=v.height,t.offsetY=u.height-t.padding/2,t.intersect=function(B){return xt(t,B)},{cluster:i,labelBBox:u}}),"rect"),oe=b((y,t)=>{let g=y.insert("g").attr("class","note-cluster").attr("id",t.id),o=g.insert("rect",":first-child"),l=0*t.padding,r=l/2;o.attr("rx",t.rx).attr("ry",t.ry).attr("x",t.x-t.width/2-r).attr("y",t.y-t.height/2-r).attr("width",t.width+l).attr("height",t.height+l).attr("fill","none");let f=o.node().getBBox();return t.width=f.width,t.height=f.height,t.intersect=function(a){return xt(t,a)},{cluster:g,labelBBox:{width:0,height:0}}},"noteGroup"),he=b((y,t)=>C(null,null,function*(){let g=U(),{themeVariables:o,handDrawnSeed:l}=g,{altBackground:r,compositeBackground:f,compositeTitleBackground:a,nodeBorder:c}=o,s=y.insert("g").attr("class",t.cssClasses).attr("id",t.id).attr("data-id",t.id).attr("data-look",t.look),e=s.insert("g",":first-child"),i=s.insert("g").attr("class","cluster-label"),h=s.append("rect"),n=yield Bt(i,t.label,t.labelStyle,void 0,!0),p=n.getBBox();if(it(g)){let M=n.children[0],I=Q(n);p=M.getBoundingClientRect(),I.attr("width",p.width),I.attr("height",p.height)}let u=0*t.padding,m=u/2,d=(t.width<=p.width+t.padding?p.width+t.padding:t.width)+u;t.width<=p.width+t.padding?t.diff=(d-t.width)/2-t.padding:t.diff=-t.padding;let x=t.height+u,D=t.height+u-p.height-6,S=t.x-d/2,$=t.y-x/2;t.width=d;let v=t.y-t.height/2-m+p.height+2,B;if(t.look==="handDrawn"){let M=t.cssClasses.includes("statediagram-cluster-alt"),I=w.svg(s),Y=t.rx||t.ry?I.path(yt(S,$,d,x,10),{roughness:.7,fill:a,fillStyle:"solid",stroke:c,seed:l}):I.rectangle(S,$,d,x,{seed:l});B=s.insert(()=>Y,":first-child");let V=I.rectangle(S,v,d,D,{fill:M?r:f,fillStyle:M?"hachure":"solid",stroke:c,seed:l});B=s.insert(()=>Y,":first-child"),h=s.insert(()=>V)}else B=e.insert("rect",":first-child"),B.attr("class","outer").attr("x",S).attr("y",$).attr("width",d).attr("height",x).attr("data-look",t.look),h.attr("class","inner").attr("x",S).attr("y",v).attr("width",d).attr("height",D);i.attr("transform",`translate(${t.x-p.width/2}, ${$+1-(it(g)?0:3)})`);let k=B.node().getBBox();return t.height=k.height,t.offsetX=0,t.offsetY=p.height-t.padding/2,t.labelBBox=p,t.intersect=function(M){return xt(t,M)},{cluster:s,labelBBox:p}}),"roundedWithTitle"),ge=b((y,t)=>C(null,null,function*(){Z.info("Creating subgraph rect for ",t.id,t);let g=U(),{themeVariables:o,handDrawnSeed:l}=g,{clusterBkg:r,clusterBorder:f}=o,{labelStyles:a,nodeStyles:c,borderStyles:s,backgroundStyles:e}=R(t),i=y.insert("g").attr("class","cluster "+t.cssClasses).attr("id",t.id).attr("data-look",t.look),h=it(g),n=i.insert("g").attr("class","cluster-label "),p=yield nt(n,t.label,{style:t.labelStyle,useHtmlLabels:h,isNode:!0,width:t.width}),u=p.getBBox();if(it(g)){let B=p.children[0],k=Q(p);u=B.getBoundingClientRect(),k.attr("width",u.width),k.attr("height",u.height)}let m=t.width<=u.width+t.padding?u.width+t.padding:t.width;t.width<=u.width+t.padding?t.diff=(m-t.width)/2-t.padding:t.diff=-t.padding;let d=t.height,x=t.x-m/2,D=t.y-d/2;Z.trace("Data ",t,JSON.stringify(t));let S;if(t.look==="handDrawn"){let B=w.svg(i),k=N(t,{roughness:.7,fill:r,stroke:f,fillWeight:4,seed:l}),M=B.path(yt(x,D,m,d,t.rx),k);S=i.insert(()=>(Z.debug("Rough node insert CXC",M),M),":first-child"),S.select("path:nth-child(2)").attr("style",s.join(";")),S.select("path").attr("style",e.join(";").replace("fill","stroke"))}else S=i.insert("rect",":first-child"),S.attr("style",c).attr("rx",t.rx).attr("ry",t.ry).attr("x",x).attr("y",D).attr("width",m).attr("height",d);let{subGraphTitleTopMargin:$}=At(g);if(n.attr("transform",`translate(${t.x-u.width/2}, ${t.y-t.height/2+$})`),a){let B=n.select("span");B&&B.attr("style",a)}let v=S.node().getBBox();return t.offsetX=0,t.width=v.width,t.height=v.height,t.offsetY=u.height-t.padding/2,t.intersect=function(B){return xt(t,B)},{cluster:i,labelBBox:u}}),"kanbanSection"),fe=b((y,t)=>{let g=U(),{themeVariables:o,handDrawnSeed:l}=g,{nodeBorder:r}=o,f=y.insert("g").attr("class",t.cssClasses).attr("id",t.id).attr("data-look",t.look),a=f.insert("g",":first-child"),c=0*t.padding,s=t.width+c;t.diff=-t.padding;let e=t.height+c,i=t.x-s/2,h=t.y-e/2;t.width=s;let n;if(t.look==="handDrawn"){let m=w.svg(f).rectangle(i,h,s,e,{fill:"lightgrey",roughness:.5,strokeLineDash:[5],stroke:r,seed:l});n=f.insert(()=>m,":first-child")}else n=a.insert("rect",":first-child"),n.attr("class","divider").attr("x",i).attr("y",h).attr("width",s).attr("height",e).attr("data-look",t.look);let p=n.node().getBBox();return t.height=p.height,t.offsetX=0,t.offsetY=0,t.intersect=function(u){return xt(t,u)},{cluster:f,labelBBox:{}}},"divider"),ye=Xt,pe={rect:Xt,squareRect:ye,roundedWithTitle:he,noteGroup:oe,divider:fe,kanbanSection:ge},Yt=new Map,Fe=b((y,t)=>C(null,null,function*(){let g=t.shape||"rect",o=yield pe[g](y,t);return Yt.set(t.id,o),o}),"insertCluster"),Ge=b(()=>{Yt=new Map},"clear");function qt(y,t){return y.intersect(t)}b(qt,"intersectNode");var ue=qt;function Ft(y,t,g,o){var l=y.x,r=y.y,f=l-o.x,a=r-o.y,c=Math.sqrt(t*t*a*a+g*g*f*f),s=Math.abs(t*g*f/c);o.x0}b(Ht,"sameSign");var me=Vt;function Zt(y,t,g){let o=y.x,l=y.y,r=[],f=Number.POSITIVE_INFINITY,a=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(e){f=Math.min(f,e.x),a=Math.min(a,e.y)}):(f=Math.min(f,t.x),a=Math.min(a,t.y));let c=o-y.width/2-f,s=l-y.height/2-a;for(let e=0;e1&&r.sort(function(e,i){let h=e.x-g.x,n=e.y-g.y,p=Math.sqrt(h*h+n*n),u=i.x-g.x,m=i.y-g.y,d=Math.sqrt(u*u+m*m);return pe,":first-child");return i.attr("class","anchor").attr("style",st(a)),A(t,i),t.intersect=function(h){return Z.info("Circle intersect",t,f,h),P.circle(t,f,h)},r}b(Jt,"anchor");function Wt(y,t,g,o,l,r,f){let c=(y+g)/2,s=(t+o)/2,e=Math.atan2(o-t,g-y),i=(g-y)/2,h=(o-t)/2,n=i/l,p=h/r,u=Math.sqrt(n**2+p**2);if(u>1)throw new Error("The given radii are too small to create an arc between the points.");let m=Math.sqrt(1-u**2),d=c+m*r*Math.sin(e)*(f?-1:1),x=s-m*l*Math.cos(e)*(f?-1:1),D=Math.atan2((t-x)/r,(y-d)/l),$=Math.atan2((o-x)/r,(g-d)/l)-D;f&&$<0&&($+=2*Math.PI),!f&&$>0&&($-=2*Math.PI);let v=[];for(let B=0;B<20;B++){let k=B/19,M=D+k*$,I=d+l*Math.cos(M),Y=x+r*Math.sin(M);v.push({x:I,y:Y})}return v}b(Wt,"generateArcPoints");function Qt(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=r.width+t.padding+20,a=r.height+t.padding,c=a/2,s=c/(2.5+a/50),{cssStyles:e}=t,i=[{x:f/2,y:-a/2},{x:-f/2,y:-a/2},...Wt(-f/2,-a/2,-f/2,a/2,s,c,!1),{x:f/2,y:a/2},...Wt(f/2,a/2,f/2,-a/2,s,c,!0)],h=w.svg(l),n=N(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let p=z(i),u=h.path(p,n),m=l.insert(()=>u,":first-child");return m.attr("class","basic label-container"),e&&t.look!=="handDrawn"&&m.selectAll("path").attr("style",e),o&&t.look!=="handDrawn"&&m.selectAll("path").attr("style",o),m.attr("transform",`translate(${s/2}, 0)`),A(t,m),t.intersect=function(d){return P.polygon(t,i,d)},l})}b(Qt,"bowTieRect");function ht(y,t,g,o){return y.insert("polygon",":first-child").attr("points",o.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+g/2+")")}b(ht,"insertPolygonShape");function Ut(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=r.height+t.padding,a=12,c=r.width+t.padding+a,s=0,e=c,i=-f,h=0,n=[{x:s+a,y:i},{x:e,y:i},{x:e,y:h},{x:s,y:h},{x:s,y:i+a},{x:s+a,y:i}],p,{cssStyles:u}=t;if(t.look==="handDrawn"){let m=w.svg(l),d=N(t,{}),x=z(n),D=m.path(x,d);p=l.insert(()=>D,":first-child").attr("transform",`translate(${-c/2}, ${f/2})`),u&&p.attr("style",u)}else p=ht(l,c,f,n);return o&&p.attr("style",o),A(t,p),t.intersect=function(m){return P.polygon(t,n,m)},l})}b(Ut,"card");function Kt(y,t){let{nodeStyles:g}=R(t);t.label="";let o=y.insert("g").attr("class",T(t)).attr("id",t.domId??t.id),{cssStyles:l}=t,r=Math.max(28,t.width??0),f=[{x:0,y:r/2},{x:r/2,y:0},{x:0,y:-r/2},{x:-r/2,y:0}],a=w.svg(o),c=N(t,{});t.look!=="handDrawn"&&(c.roughness=0,c.fillStyle="solid");let s=z(f),e=a.path(s,c),i=o.insert(()=>e,":first-child");return l&&t.look!=="handDrawn"&&i.selectAll("path").attr("style",l),g&&t.look!=="handDrawn"&&i.selectAll("path").attr("style",g),t.width=28,t.height=28,t.intersect=function(h){return P.polygon(t,f,h)},o}b(Kt,"choice");function It(y,t,g){return C(this,null,function*(){let{labelStyles:o,nodeStyles:l}=R(t);t.labelStyle=o;let{shapeSvg:r,bbox:f,halfPadding:a}=yield O(y,t,T(t)),c=g?.padding??a,s=f.width/2+c,e,{cssStyles:i}=t;if(t.look==="handDrawn"){let h=w.svg(r),n=N(t,{}),p=h.circle(0,0,s*2,n);e=r.insert(()=>p,":first-child"),e.attr("class","basic label-container").attr("style",st(i))}else e=r.insert("circle",":first-child").attr("class","basic label-container").attr("style",l).attr("r",s).attr("cx",0).attr("cy",0);return A(t,e),t.calcIntersect=function(h,n){let p=h.width/2;return P.circle(h,p,n)},t.intersect=function(h){return Z.info("Circle intersect",t,s,h),P.circle(t,s,h)},r})}b(It,"circle");function ts(y){let t=Math.cos(Math.PI/4),g=Math.sin(Math.PI/4),o=y*2,l={x:o/2*t,y:o/2*g},r={x:-(o/2)*t,y:o/2*g},f={x:-(o/2)*t,y:-(o/2)*g},a={x:o/2*t,y:-(o/2)*g};return`M ${r.x},${r.y} L ${a.x},${a.y} - M ${l.x},${l.y} L ${f.x},${f.y}`}b(ts,"createLine");function ss(y,t){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g,t.label="";let l=y.insert("g").attr("class",T(t)).attr("id",t.domId??t.id),r=Math.max(30,t?.width??0),{cssStyles:f}=t,a=w.svg(l),c=N(t,{});t.look!=="handDrawn"&&(c.roughness=0,c.fillStyle="solid");let s=a.circle(0,0,r*2,c),e=ts(r),i=a.path(e,c),h=l.insert(()=>s,":first-child");return h.insert(()=>i),f&&t.look!=="handDrawn"&&h.selectAll("path").attr("style",f),o&&t.look!=="handDrawn"&&h.selectAll("path").attr("style",o),A(t,h),t.intersect=function(n){return Z.info("crossedCircle intersect",t,{radius:r,point:n}),P.circle(t,r,n)},l}b(ss,"crossedCircle");function ct(y,t,g,o=100,l=0,r=180){let f=[],a=l*Math.PI/180,e=(r*Math.PI/180-a)/(o-1);for(let i=0;iD,":first-child").attr("stroke-opacity",0),S.insert(()=>d,":first-child"),S.attr("class","text"),e&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",e),o&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",o),S.attr("transform",`translate(${s}, 0)`),f.attr("transform",`translate(${-a/2+s-(r.x-(r.left??0))},${-c/2+(t.padding??0)/2-(r.y-(r.top??0))})`),A(t,S),t.intersect=function($){return P.polygon(t,h,$)},l})}b(es,"curlyBraceLeft");function ot(y,t,g,o=100,l=0,r=180){let f=[],a=l*Math.PI/180,e=(r*Math.PI/180-a)/(o-1);for(let i=0;iD,":first-child").attr("stroke-opacity",0),S.insert(()=>d,":first-child"),S.attr("class","text"),e&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",e),o&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",o),S.attr("transform",`translate(${-s}, 0)`),f.attr("transform",`translate(${-a/2+(t.padding??0)/2-(r.x-(r.left??0))},${-c/2+(t.padding??0)/2-(r.y-(r.top??0))})`),A(t,S),t.intersect=function($){return P.polygon(t,h,$)},l})}b(as,"curlyBraceRight");function K(y,t,g,o=100,l=0,r=180){let f=[],a=l*Math.PI/180,e=(r*Math.PI/180-a)/(o-1);for(let i=0;iB,":first-child").attr("stroke-opacity",0),k.insert(()=>x,":first-child"),k.insert(()=>$,":first-child"),k.attr("class","text"),e&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",e),o&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",o),k.attr("transform",`translate(${s-s/4}, 0)`),f.attr("transform",`translate(${-a/2+(t.padding??0)/2-(r.x-(r.left??0))},${-c/2+(t.padding??0)/2-(r.y-(r.top??0))})`),A(t,k),t.intersect=function(M){return P.polygon(t,n,M)},l})}b(rs,"curlyBraces");function is(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=80,a=20,c=Math.max(f,(r.width+(t.padding??0)*2)*1.25,t?.width??0),s=Math.max(a,r.height+(t.padding??0)*2,t?.height??0),e=s/2,{cssStyles:i}=t,h=w.svg(l),n=N(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let p=c,u=s,m=p-e,d=u/4,x=[{x:m,y:0},{x:d,y:0},{x:0,y:u/2},{x:d,y:u},{x:m,y:u},...kt(-m,-u/2,e,50,270,90)],D=z(x),S=h.path(D,n),$=l.insert(()=>S,":first-child");return $.attr("class","basic label-container"),i&&t.look!=="handDrawn"&&$.selectChildren("path").attr("style",i),o&&t.look!=="handDrawn"&&$.selectChildren("path").attr("style",o),$.attr("transform",`translate(${-c/2}, ${-s/2})`),A(t,$),t.intersect=function(v){return P.polygon(t,x,v)},l})}b(is,"curvedTrapezoid");var we=b((y,t,g,o,l,r)=>[`M${y},${t+r}`,`a${l},${r} 0,0,0 ${g},0`,`a${l},${r} 0,0,0 ${-g},0`,`l0,${o}`,`a${l},${r} 0,0,0 ${g},0`,`l0,${-o}`].join(" "),"createCylinderPathD"),be=b((y,t,g,o,l,r)=>[`M${y},${t+r}`,`M${y+g},${t+r}`,`a${l},${r} 0,0,0 ${-g},0`,`l0,${o}`,`a${l},${r} 0,0,0 ${g},0`,`l0,${-o}`].join(" "),"createOuterCylinderPathD"),Se=b((y,t,g,o,l,r)=>[`M${y-g/2},${-o/2}`,`a${l},${r} 0,0,0 ${g},0`].join(" "),"createInnerCylinderPathD");function ls(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+t.padding,t.width??0),c=a/2,s=c/(2.5+a/50),e=Math.max(r.height+s+t.padding,t.height??0),i,{cssStyles:h}=t;if(t.look==="handDrawn"){let n=w.svg(l),p=be(0,0,a,e,c,s),u=Se(0,s,a,e,c,s),m=n.path(p,N(t,{})),d=n.path(u,N(t,{fill:"none"}));i=l.insert(()=>d,":first-child"),i=l.insert(()=>m,":first-child"),i.attr("class","basic label-container"),h&&i.attr("style",h)}else{let n=we(0,0,a,e,c,s);i=l.insert("path",":first-child").attr("d",n).attr("class","basic label-container").attr("style",st(h)).attr("style",o)}return i.attr("label-offset-y",s),i.attr("transform",`translate(${-a/2}, ${-(e/2+s)})`),A(t,i),f.attr("transform",`translate(${-(r.width/2)-(r.x-(r.left??0))}, ${-(r.height/2)+(t.padding??0)/1.5-(r.y-(r.top??0))})`),t.intersect=function(n){let p=P.rect(t,n),u=p.x-(t.x??0);if(c!=0&&(Math.abs(u)<(t.width??0)/2||Math.abs(u)==(t.width??0)/2&&Math.abs(p.y-(t.y??0))>(t.height??0)/2-s)){let m=s*s*(1-u*u/(c*c));m>0&&(m=Math.sqrt(m)),m=s-m,n.y-(t.y??0)>0&&(m=-m),p.y+=m}return p},l})}b(ls,"cylinder");function ns(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=r.width+t.padding,c=r.height+t.padding,s=c*.2,e=-a/2,i=-c/2-s/2,{cssStyles:h}=t,n=w.svg(l),p=N(t,{});t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let u=[{x:e,y:i+s},{x:-e,y:i+s},{x:-e,y:-i},{x:e,y:-i},{x:e,y:i},{x:-e,y:i},{x:-e,y:i+s}],m=n.polygon(u.map(x=>[x.x,x.y]),p),d=l.insert(()=>m,":first-child");return d.attr("class","basic label-container"),h&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",h),o&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",o),f.attr("transform",`translate(${e+(t.padding??0)/2-(r.x-(r.left??0))}, ${i+s+(t.padding??0)/2-(r.y-(r.top??0))})`),A(t,d),t.intersect=function(x){return P.rect(t,x)},l})}b(ns,"dividedRectangle");function cs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,halfPadding:f}=yield O(y,t,T(t)),c=r.width/2+f+5,s=r.width/2+f,e,{cssStyles:i}=t;if(t.look==="handDrawn"){let h=w.svg(l),n=N(t,{roughness:.2,strokeWidth:2.5}),p=N(t,{roughness:.2,strokeWidth:1.5}),u=h.circle(0,0,c*2,n),m=h.circle(0,0,s*2,p);e=l.insert("g",":first-child"),e.attr("class",st(t.cssClasses)).attr("style",st(i)),e.node()?.appendChild(u),e.node()?.appendChild(m)}else{e=l.insert("g",":first-child");let h=e.insert("circle",":first-child"),n=e.insert("circle");e.attr("class","basic label-container").attr("style",o),h.attr("class","outer-circle").attr("style",o).attr("r",c).attr("cx",0).attr("cy",0),n.attr("class","inner-circle").attr("style",o).attr("r",s).attr("cx",0).attr("cy",0)}return A(t,e),t.intersect=function(h){return Z.info("DoubleCircle intersect",t,c,h),P.circle(t,c,h)},l})}b(cs,"doublecircle");function os(y,t,{config:{themeVariables:g}}){let{labelStyles:o,nodeStyles:l}=R(t);t.label="",t.labelStyle=o;let r=y.insert("g").attr("class",T(t)).attr("id",t.domId??t.id),f=7,{cssStyles:a}=t,c=w.svg(r),{nodeBorder:s}=g,e=N(t,{fillStyle:"solid"});t.look!=="handDrawn"&&(e.roughness=0);let i=c.circle(0,0,f*2,e),h=r.insert(()=>i,":first-child");return h.selectAll("path").attr("style",`fill: ${s} !important;`),a&&a.length>0&&t.look!=="handDrawn"&&h.selectAll("path").attr("style",a),l&&t.look!=="handDrawn"&&h.selectAll("path").attr("style",l),A(t,h),t.intersect=function(n){return Z.info("filledCircle intersect",t,{radius:f,point:n}),P.circle(t,f,n)},r}b(os,"filledCircle");function hs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=r.width+(t.padding??0),c=a+r.height,s=a+r.height,e=[{x:0,y:-c},{x:s,y:-c},{x:s/2,y:0}],{cssStyles:i}=t,h=w.svg(l),n=N(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let p=z(e),u=h.path(p,n),m=l.insert(()=>u,":first-child").attr("transform",`translate(${-c/2}, ${c/2})`);return i&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",i),o&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",o),t.width=a,t.height=c,A(t,m),f.attr("transform",`translate(${-r.width/2-(r.x-(r.left??0))}, ${-c/2+(t.padding??0)/2+(r.y-(r.top??0))})`),t.intersect=function(d){return Z.info("Triangle intersect",t,e,d),P.polygon(t,e,d)},l})}b(hs,"flippedTriangle");function gs(y,t,{dir:g,config:{state:o,themeVariables:l}}){let{nodeStyles:r}=R(t);t.label="";let f=y.insert("g").attr("class",T(t)).attr("id",t.domId??t.id),{cssStyles:a}=t,c=Math.max(70,t?.width??0),s=Math.max(10,t?.height??0);g==="LR"&&(c=Math.max(10,t?.width??0),s=Math.max(70,t?.height??0));let e=-1*c/2,i=-1*s/2,h=w.svg(f),n=N(t,{stroke:l.lineColor,fill:l.lineColor});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let p=h.rectangle(e,i,c,s,n),u=f.insert(()=>p,":first-child");a&&t.look!=="handDrawn"&&u.selectAll("path").attr("style",a),r&&t.look!=="handDrawn"&&u.selectAll("path").attr("style",r),A(t,u);let m=o?.padding??0;return t.width&&t.height&&(t.width+=m/2||0,t.height+=m/2||0),t.intersect=function(d){return P.rect(t,d)},f}b(gs,"forkJoin");function fs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let l=80,r=50,{shapeSvg:f,bbox:a}=yield O(y,t,T(t)),c=Math.max(l,a.width+(t.padding??0)*2,t?.width??0),s=Math.max(r,a.height+(t.padding??0)*2,t?.height??0),e=s/2,{cssStyles:i}=t,h=w.svg(f),n=N(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let p=[{x:-c/2,y:-s/2},{x:c/2-e,y:-s/2},...kt(-c/2+e,0,e,50,90,270),{x:c/2-e,y:s/2},{x:-c/2,y:s/2}],u=z(p),m=h.path(u,n),d=f.insert(()=>m,":first-child");return d.attr("class","basic label-container"),i&&t.look!=="handDrawn"&&d.selectChildren("path").attr("style",i),o&&t.look!=="handDrawn"&&d.selectChildren("path").attr("style",o),A(t,d),t.intersect=function(x){return Z.info("Pill intersect",t,{radius:e,point:x}),P.polygon(t,p,x)},f})}b(fs,"halfRoundedRectangle");var $e=b((y,t,g,o,l)=>[`M${y+l},${t}`,`L${y+g-l},${t}`,`L${y+g},${t-o/2}`,`L${y+g-l},${t-o}`,`L${y+l},${t-o}`,`L${y},${t-o/2}`,"Z"].join(" "),"createHexagonPathD");function ys(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=4,a=r.height+t.padding,c=a/f,s=r.width+2*c+t.padding,e=[{x:c,y:0},{x:s-c,y:0},{x:s,y:-a/2},{x:s-c,y:-a},{x:c,y:-a},{x:0,y:-a/2}],i,{cssStyles:h}=t;if(t.look==="handDrawn"){let n=w.svg(l),p=N(t,{}),u=$e(0,0,s,a,c),m=n.path(u,p);i=l.insert(()=>m,":first-child").attr("transform",`translate(${-s/2}, ${a/2})`),h&&i.attr("style",h)}else i=ht(l,s,a,e);return o&&i.attr("style",o),t.width=s,t.height=a,A(t,i),t.intersect=function(n){return P.polygon(t,e,n)},l})}b(ys,"hexagon");function ps(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.label="",t.labelStyle=g;let{shapeSvg:l}=yield O(y,t,T(t)),r=Math.max(30,t?.width??0),f=Math.max(30,t?.height??0),{cssStyles:a}=t,c=w.svg(l),s=N(t,{});t.look!=="handDrawn"&&(s.roughness=0,s.fillStyle="solid");let e=[{x:0,y:0},{x:r,y:0},{x:0,y:f},{x:r,y:f}],i=z(e),h=c.path(i,s),n=l.insert(()=>h,":first-child");return n.attr("class","basic label-container"),a&&t.look!=="handDrawn"&&n.selectChildren("path").attr("style",a),o&&t.look!=="handDrawn"&&n.selectChildren("path").attr("style",o),n.attr("transform",`translate(${-r/2}, ${-f/2})`),A(t,n),t.intersect=function(p){return Z.info("Pill intersect",t,{points:e}),P.polygon(t,e,p)},l})}b(ps,"hourglass");function us(l,r,f){return C(this,arguments,function*(y,t,{config:{themeVariables:g,flowchart:o}}){let{labelStyles:a}=R(t);t.labelStyle=a;let c=t.assetHeight??48,s=t.assetWidth??48,e=Math.max(c,s),i=o?.wrappingWidth;t.width=Math.max(e,i??0);let{shapeSvg:h,bbox:n,label:p}=yield O(y,t,"icon-shape default"),u=t.pos==="t",m=e,d=e,{nodeBorder:x}=g,{stylesMap:D}=St(t),S=-d/2,$=-m/2,v=t.label?8:0,B=w.svg(h),k=N(t,{stroke:"none",fill:"none"});t.look!=="handDrawn"&&(k.roughness=0,k.fillStyle="solid");let M=B.rectangle(S,$,d,m,k),I=Math.max(d,n.width),Y=m+n.height+v,V=B.rectangle(-I/2,-Y/2,I,Y,rt(tt({},k),{fill:"transparent",stroke:"none"})),q=h.insert(()=>M,":first-child"),W=h.insert(()=>V);if(t.icon){let j=h.append("g");j.html(`${yield $t(t.icon,{height:e,width:e,fallbackPrefix:""})}`);let L=j.node().getBBox(),F=L.width,_=L.height,H=L.x,X=L.y;j.attr("transform",`translate(${-F/2-H},${u?n.height/2+v/2-_/2-X:-n.height/2-v/2-_/2-X})`),j.attr("style",`color: ${D.get("stroke")??x};`)}return p.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))},${u?-Y/2:Y/2-n.height})`),q.attr("transform",`translate(0,${u?n.height/2+v/2:-n.height/2-v/2})`),A(t,W),t.intersect=function(j){if(Z.info("iconSquare intersect",t,j),!t.label)return P.rect(t,j);let L=t.x??0,F=t.y??0,_=t.height??0,H=[];return u?H=[{x:L-n.width/2,y:F-_/2},{x:L+n.width/2,y:F-_/2},{x:L+n.width/2,y:F-_/2+n.height+v},{x:L+d/2,y:F-_/2+n.height+v},{x:L+d/2,y:F+_/2},{x:L-d/2,y:F+_/2},{x:L-d/2,y:F-_/2+n.height+v},{x:L-n.width/2,y:F-_/2+n.height+v}]:H=[{x:L-d/2,y:F-_/2},{x:L+d/2,y:F-_/2},{x:L+d/2,y:F-_/2+m},{x:L+n.width/2,y:F-_/2+m},{x:L+n.width/2/2,y:F+_/2},{x:L-n.width/2,y:F+_/2},{x:L-n.width/2,y:F-_/2+m},{x:L-d/2,y:F-_/2+m}],P.polygon(t,H,j)},h})}b(us,"icon");function ds(l,r,f){return C(this,arguments,function*(y,t,{config:{themeVariables:g,flowchart:o}}){let{labelStyles:a}=R(t);t.labelStyle=a;let c=t.assetHeight??48,s=t.assetWidth??48,e=Math.max(c,s),i=o?.wrappingWidth;t.width=Math.max(e,i??0);let{shapeSvg:h,bbox:n,label:p}=yield O(y,t,"icon-shape default"),u=20,m=t.label?8:0,d=t.pos==="t",{nodeBorder:x,mainBkg:D}=g,{stylesMap:S}=St(t),$=w.svg(h),v=N(t,{});t.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let B=S.get("fill");v.stroke=B??D;let k=h.append("g");t.icon&&k.html(`${yield $t(t.icon,{height:e,width:e,fallbackPrefix:""})}`);let M=k.node().getBBox(),I=M.width,Y=M.height,V=M.x,q=M.y,W=Math.max(I,Y)*Math.SQRT2+u*2,j=$.circle(0,0,W,v),L=Math.max(W,n.width),F=W+n.height+m,_=$.rectangle(-L/2,-F/2,L,F,rt(tt({},v),{fill:"transparent",stroke:"none"})),H=h.insert(()=>j,":first-child"),X=h.insert(()=>_);return k.attr("transform",`translate(${-I/2-V},${d?n.height/2+m/2-Y/2-q:-n.height/2-m/2-Y/2-q})`),k.attr("style",`color: ${S.get("stroke")??x};`),p.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))},${d?-F/2:F/2-n.height})`),H.attr("transform",`translate(0,${d?n.height/2+m/2:-n.height/2-m/2})`),A(t,X),t.intersect=function(E){return Z.info("iconSquare intersect",t,E),P.rect(t,E)},h})}b(ds,"iconCircle");function ms(l,r,f){return C(this,arguments,function*(y,t,{config:{themeVariables:g,flowchart:o}}){let{labelStyles:a}=R(t);t.labelStyle=a;let c=t.assetHeight??48,s=t.assetWidth??48,e=Math.max(c,s),i=o?.wrappingWidth;t.width=Math.max(e,i??0);let{shapeSvg:h,bbox:n,halfPadding:p,label:u}=yield O(y,t,"icon-shape default"),m=t.pos==="t",d=e+p*2,x=e+p*2,{nodeBorder:D,mainBkg:S}=g,{stylesMap:$}=St(t),v=-x/2,B=-d/2,k=t.label?8:0,M=w.svg(h),I=N(t,{});t.look!=="handDrawn"&&(I.roughness=0,I.fillStyle="solid");let Y=$.get("fill");I.stroke=Y??S;let V=M.path(yt(v,B,x,d,5),I),q=Math.max(x,n.width),W=d+n.height+k,j=M.rectangle(-q/2,-W/2,q,W,rt(tt({},I),{fill:"transparent",stroke:"none"})),L=h.insert(()=>V,":first-child").attr("class","icon-shape2"),F=h.insert(()=>j);if(t.icon){let _=h.append("g");_.html(`${yield $t(t.icon,{height:e,width:e,fallbackPrefix:""})}`);let H=_.node().getBBox(),X=H.width,E=H.height,G=H.x,J=H.y;_.attr("transform",`translate(${-X/2-G},${m?n.height/2+k/2-E/2-J:-n.height/2-k/2-E/2-J})`),_.attr("style",`color: ${$.get("stroke")??D};`)}return u.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))},${m?-W/2:W/2-n.height})`),L.attr("transform",`translate(0,${m?n.height/2+k/2:-n.height/2-k/2})`),A(t,F),t.intersect=function(_){if(Z.info("iconSquare intersect",t,_),!t.label)return P.rect(t,_);let H=t.x??0,X=t.y??0,E=t.height??0,G=[];return m?G=[{x:H-n.width/2,y:X-E/2},{x:H+n.width/2,y:X-E/2},{x:H+n.width/2,y:X-E/2+n.height+k},{x:H+x/2,y:X-E/2+n.height+k},{x:H+x/2,y:X+E/2},{x:H-x/2,y:X+E/2},{x:H-x/2,y:X-E/2+n.height+k},{x:H-n.width/2,y:X-E/2+n.height+k}]:G=[{x:H-x/2,y:X-E/2},{x:H+x/2,y:X-E/2},{x:H+x/2,y:X-E/2+d},{x:H+n.width/2,y:X-E/2+d},{x:H+n.width/2/2,y:X+E/2},{x:H-n.width/2,y:X+E/2},{x:H-n.width/2,y:X-E/2+d},{x:H-x/2,y:X-E/2+d}],P.polygon(t,G,_)},h})}b(ms,"iconRounded");function xs(l,r,f){return C(this,arguments,function*(y,t,{config:{themeVariables:g,flowchart:o}}){let{labelStyles:a}=R(t);t.labelStyle=a;let c=t.assetHeight??48,s=t.assetWidth??48,e=Math.max(c,s),i=o?.wrappingWidth;t.width=Math.max(e,i??0);let{shapeSvg:h,bbox:n,halfPadding:p,label:u}=yield O(y,t,"icon-shape default"),m=t.pos==="t",d=e+p*2,x=e+p*2,{nodeBorder:D,mainBkg:S}=g,{stylesMap:$}=St(t),v=-x/2,B=-d/2,k=t.label?8:0,M=w.svg(h),I=N(t,{});t.look!=="handDrawn"&&(I.roughness=0,I.fillStyle="solid");let Y=$.get("fill");I.stroke=Y??S;let V=M.path(yt(v,B,x,d,.1),I),q=Math.max(x,n.width),W=d+n.height+k,j=M.rectangle(-q/2,-W/2,q,W,rt(tt({},I),{fill:"transparent",stroke:"none"})),L=h.insert(()=>V,":first-child"),F=h.insert(()=>j);if(t.icon){let _=h.append("g");_.html(`${yield $t(t.icon,{height:e,width:e,fallbackPrefix:""})}`);let H=_.node().getBBox(),X=H.width,E=H.height,G=H.x,J=H.y;_.attr("transform",`translate(${-X/2-G},${m?n.height/2+k/2-E/2-J:-n.height/2-k/2-E/2-J})`),_.attr("style",`color: ${$.get("stroke")??D};`)}return u.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))},${m?-W/2:W/2-n.height})`),L.attr("transform",`translate(0,${m?n.height/2+k/2:-n.height/2-k/2})`),A(t,F),t.intersect=function(_){if(Z.info("iconSquare intersect",t,_),!t.label)return P.rect(t,_);let H=t.x??0,X=t.y??0,E=t.height??0,G=[];return m?G=[{x:H-n.width/2,y:X-E/2},{x:H+n.width/2,y:X-E/2},{x:H+n.width/2,y:X-E/2+n.height+k},{x:H+x/2,y:X-E/2+n.height+k},{x:H+x/2,y:X+E/2},{x:H-x/2,y:X+E/2},{x:H-x/2,y:X-E/2+n.height+k},{x:H-n.width/2,y:X-E/2+n.height+k}]:G=[{x:H-x/2,y:X-E/2},{x:H+x/2,y:X-E/2},{x:H+x/2,y:X-E/2+d},{x:H+n.width/2,y:X-E/2+d},{x:H+n.width/2/2,y:X+E/2},{x:H-n.width/2,y:X+E/2},{x:H-n.width/2,y:X-E/2+d},{x:H-x/2,y:X-E/2+d}],P.polygon(t,G,_)},h})}b(xs,"iconSquare");function ws(o,l,r){return C(this,arguments,function*(y,t,{config:{flowchart:g}}){let f=new Image;f.src=t?.img??"",yield f.decode();let a=Number(f.naturalWidth.toString().replace("px","")),c=Number(f.naturalHeight.toString().replace("px",""));t.imageAspectRatio=a/c;let{labelStyles:s}=R(t);t.labelStyle=s;let e=g?.wrappingWidth;t.defaultWidth=g?.wrappingWidth;let i=Math.max(t.label?e??0:0,t?.assetWidth??a),h=t.constraint==="on"&&t?.assetHeight?t.assetHeight*t.imageAspectRatio:i,n=t.constraint==="on"?h/t.imageAspectRatio:t?.assetHeight??c;t.width=Math.max(h,e??0);let{shapeSvg:p,bbox:u,label:m}=yield O(y,t,"image-shape default"),d=t.pos==="t",x=-h/2,D=-n/2,S=t.label?8:0,$=w.svg(p),v=N(t,{});t.look!=="handDrawn"&&(v.roughness=0,v.fillStyle="solid");let B=$.rectangle(x,D,h,n,v),k=Math.max(h,u.width),M=n+u.height+S,I=$.rectangle(-k/2,-M/2,k,M,rt(tt({},v),{fill:"none",stroke:"none"})),Y=p.insert(()=>B,":first-child"),V=p.insert(()=>I);if(t.img){let q=p.append("image");q.attr("href",t.img),q.attr("width",h),q.attr("height",n),q.attr("preserveAspectRatio","none"),q.attr("transform",`translate(${-h/2},${d?M/2-n:-M/2})`)}return m.attr("transform",`translate(${-u.width/2-(u.x-(u.left??0))},${d?-n/2-u.height/2-S/2:n/2-u.height/2+S/2})`),Y.attr("transform",`translate(0,${d?u.height/2+S/2:-u.height/2-S/2})`),A(t,V),t.intersect=function(q){if(Z.info("iconSquare intersect",t,q),!t.label)return P.rect(t,q);let W=t.x??0,j=t.y??0,L=t.height??0,F=[];return d?F=[{x:W-u.width/2,y:j-L/2},{x:W+u.width/2,y:j-L/2},{x:W+u.width/2,y:j-L/2+u.height+S},{x:W+h/2,y:j-L/2+u.height+S},{x:W+h/2,y:j+L/2},{x:W-h/2,y:j+L/2},{x:W-h/2,y:j-L/2+u.height+S},{x:W-u.width/2,y:j-L/2+u.height+S}]:F=[{x:W-h/2,y:j-L/2},{x:W+h/2,y:j-L/2},{x:W+h/2,y:j-L/2+n},{x:W+u.width/2,y:j-L/2+n},{x:W+u.width/2/2,y:j+L/2},{x:W-u.width/2,y:j+L/2},{x:W-u.width/2,y:j-L/2+n},{x:W-h/2,y:j-L/2+n}],P.polygon(t,F,q)},p})}b(ws,"imageSquare");function bs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=Math.max(r.width+(t.padding??0)*2,t?.width??0),a=Math.max(r.height+(t.padding??0)*2,t?.height??0),c=[{x:0,y:0},{x:f,y:0},{x:f+3*a/6,y:-a},{x:-3*a/6,y:-a}],s,{cssStyles:e}=t;if(t.look==="handDrawn"){let i=w.svg(l),h=N(t,{}),n=z(c),p=i.path(n,h);s=l.insert(()=>p,":first-child").attr("transform",`translate(${-f/2}, ${a/2})`),e&&s.attr("style",e)}else s=ht(l,f,a,c);return o&&s.attr("style",o),t.width=f,t.height=a,A(t,s),t.intersect=function(i){return P.polygon(t,c,i)},l})}b(bs,"inv_trapezoid");function Dt(y,t,g){return C(this,null,function*(){let{labelStyles:o,nodeStyles:l}=R(t);t.labelStyle=o;let{shapeSvg:r,bbox:f}=yield O(y,t,T(t)),a=Math.max(f.width+g.labelPaddingX*2,t?.width||0),c=Math.max(f.height+g.labelPaddingY*2,t?.height||0),s=-a/2,e=-c/2,i,{rx:h,ry:n}=t,{cssStyles:p}=t;if(g?.rx&&g.ry&&(h=g.rx,n=g.ry),t.look==="handDrawn"){let u=w.svg(r),m=N(t,{}),d=h||n?u.path(yt(s,e,a,c,h||0),m):u.rectangle(s,e,a,c,m);i=r.insert(()=>d,":first-child"),i.attr("class","basic label-container").attr("style",st(p))}else i=r.insert("rect",":first-child"),i.attr("class","basic label-container").attr("style",l).attr("rx",st(h)).attr("ry",st(n)).attr("x",s).attr("y",e).attr("width",a).attr("height",c);return A(t,i),t.calcIntersect=function(u,m){return P.rect(u,m)},t.intersect=function(u){return P.rect(t,u)},r})}b(Dt,"drawRect");function Ss(y,t){return C(this,null,function*(){let{shapeSvg:g,bbox:o,label:l}=yield O(y,t,"label"),r=g.insert("rect",":first-child");return r.attr("width",.1).attr("height",.1),g.attr("class","label edgeLabel"),l.attr("transform",`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${-(o.height/2)-(o.y-(o.top??0))})`),A(t,r),t.intersect=function(c){return P.rect(t,c)},g})}b(Ss,"labelRect");function $s(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=Math.max(r.width+(t.padding??0),t?.width??0),a=Math.max(r.height+(t.padding??0),t?.height??0),c=[{x:0,y:0},{x:f+3*a/6,y:0},{x:f,y:-a},{x:-(3*a)/6,y:-a}],s,{cssStyles:e}=t;if(t.look==="handDrawn"){let i=w.svg(l),h=N(t,{}),n=z(c),p=i.path(n,h);s=l.insert(()=>p,":first-child").attr("transform",`translate(${-f/2}, ${a/2})`),e&&s.attr("style",e)}else s=ht(l,f,a,c);return o&&s.attr("style",o),t.width=f,t.height=a,A(t,s),t.intersect=function(i){return P.polygon(t,c,i)},l})}b($s,"lean_left");function vs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=Math.max(r.width+(t.padding??0),t?.width??0),a=Math.max(r.height+(t.padding??0),t?.height??0),c=[{x:-3*a/6,y:0},{x:f,y:0},{x:f+3*a/6,y:-a},{x:0,y:-a}],s,{cssStyles:e}=t;if(t.look==="handDrawn"){let i=w.svg(l),h=N(t,{}),n=z(c),p=i.path(n,h);s=l.insert(()=>p,":first-child").attr("transform",`translate(${-f/2}, ${a/2})`),e&&s.attr("style",e)}else s=ht(l,f,a,c);return o&&s.attr("style",o),t.width=f,t.height=a,A(t,s),t.intersect=function(i){return P.polygon(t,c,i)},l})}b(vs,"lean_right");function ks(y,t){let{labelStyles:g,nodeStyles:o}=R(t);t.label="",t.labelStyle=g;let l=y.insert("g").attr("class",T(t)).attr("id",t.domId??t.id),{cssStyles:r}=t,f=Math.max(35,t?.width??0),a=Math.max(35,t?.height??0),c=7,s=[{x:f,y:0},{x:0,y:a+c/2},{x:f-2*c,y:a+c/2},{x:0,y:2*a},{x:f,y:a-c/2},{x:2*c,y:a-c/2}],e=w.svg(l),i=N(t,{});t.look!=="handDrawn"&&(i.roughness=0,i.fillStyle="solid");let h=z(s),n=e.path(h,i),p=l.insert(()=>n,":first-child");return r&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",r),o&&t.look!=="handDrawn"&&p.selectAll("path").attr("style",o),p.attr("transform",`translate(-${f/2},${-a})`),A(t,p),t.intersect=function(u){return Z.info("lightningBolt intersect",t,u),P.polygon(t,s,u)},l}b(ks,"lightningBolt");var ve=b((y,t,g,o,l,r,f)=>[`M${y},${t+r}`,`a${l},${r} 0,0,0 ${g},0`,`a${l},${r} 0,0,0 ${-g},0`,`l0,${o}`,`a${l},${r} 0,0,0 ${g},0`,`l0,${-o}`,`M${y},${t+r+f}`,`a${l},${r} 0,0,0 ${g},0`].join(" "),"createCylinderPathD"),ke=b((y,t,g,o,l,r,f)=>[`M${y},${t+r}`,`M${y+g},${t+r}`,`a${l},${r} 0,0,0 ${-g},0`,`l0,${o}`,`a${l},${r} 0,0,0 ${g},0`,`l0,${-o}`,`M${y},${t+r+f}`,`a${l},${r} 0,0,0 ${g},0`].join(" "),"createOuterCylinderPathD"),De=b((y,t,g,o,l,r)=>[`M${y-g/2},${-o/2}`,`a${l},${r} 0,0,0 ${g},0`].join(" "),"createInnerCylinderPathD");function Ds(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0),t.width??0),c=a/2,s=c/(2.5+a/50),e=Math.max(r.height+s+(t.padding??0),t.height??0),i=e*.1,h,{cssStyles:n}=t;if(t.look==="handDrawn"){let p=w.svg(l),u=ke(0,0,a,e,c,s,i),m=De(0,s,a,e,c,s),d=N(t,{}),x=p.path(u,d),D=p.path(m,d);l.insert(()=>D,":first-child").attr("class","line"),h=l.insert(()=>x,":first-child"),h.attr("class","basic label-container"),n&&h.attr("style",n)}else{let p=ve(0,0,a,e,c,s,i);h=l.insert("path",":first-child").attr("d",p).attr("class","basic label-container").attr("style",st(n)).attr("style",o)}return h.attr("label-offset-y",s),h.attr("transform",`translate(${-a/2}, ${-(e/2+s)})`),A(t,h),f.attr("transform",`translate(${-(r.width/2)-(r.x-(r.left??0))}, ${-(r.height/2)+s-(r.y-(r.top??0))})`),t.intersect=function(p){let u=P.rect(t,p),m=u.x-(t.x??0);if(c!=0&&(Math.abs(m)<(t.width??0)/2||Math.abs(m)==(t.width??0)/2&&Math.abs(u.y-(t.y??0))>(t.height??0)/2-s)){let d=s*s*(1-m*m/(c*c));d>0&&(d=Math.sqrt(d)),d=s-d,p.y-(t.y??0)>0&&(d=-d),u.y+=d}return u},l})}b(Ds,"linedCylinder");function Bs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0)*2,t?.width??0),c=Math.max(r.height+(t.padding??0)*2,t?.height??0),s=c/4,e=c+s,{cssStyles:i}=t,h=w.svg(l),n=N(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let p=[{x:-a/2-a/2*.1,y:-e/2},{x:-a/2-a/2*.1,y:e/2},...ft(-a/2-a/2*.1,e/2,a/2+a/2*.1,e/2,s,.8),{x:a/2+a/2*.1,y:-e/2},{x:-a/2-a/2*.1,y:-e/2},{x:-a/2,y:-e/2},{x:-a/2,y:e/2*1.1},{x:-a/2,y:-e/2}],u=h.polygon(p.map(d=>[d.x,d.y]),n),m=l.insert(()=>u,":first-child");return m.attr("class","basic label-container"),i&&t.look!=="handDrawn"&&m.selectAll("path").attr("style",i),o&&t.look!=="handDrawn"&&m.selectAll("path").attr("style",o),m.attr("transform",`translate(0,${-s/2})`),f.attr("transform",`translate(${-a/2+(t.padding??0)+a/2*.1/2-(r.x-(r.left??0))},${-c/2+(t.padding??0)-s/2-(r.y-(r.top??0))})`),A(t,m),t.intersect=function(d){return P.polygon(t,p,d)},l})}b(Bs,"linedWaveEdgedRect");function Ms(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0)*2,t?.width??0),c=Math.max(r.height+(t.padding??0)*2,t?.height??0),s=5,e=-a/2,i=-c/2,{cssStyles:h}=t,n=w.svg(l),p=N(t,{}),u=[{x:e-s,y:i+s},{x:e-s,y:i+c+s},{x:e+a-s,y:i+c+s},{x:e+a-s,y:i+c},{x:e+a,y:i+c},{x:e+a,y:i+c-s},{x:e+a+s,y:i+c-s},{x:e+a+s,y:i-s},{x:e+s,y:i-s},{x:e+s,y:i},{x:e,y:i},{x:e,y:i+s}],m=[{x:e,y:i+s},{x:e+a-s,y:i+s},{x:e+a-s,y:i+c},{x:e+a,y:i+c},{x:e+a,y:i},{x:e,y:i}];t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let d=z(u),x=n.path(d,p),D=z(m),S=n.path(D,rt(tt({},p),{fill:"none"})),$=l.insert(()=>S,":first-child");return $.insert(()=>x,":first-child"),$.attr("class","basic label-container"),h&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",h),o&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",o),f.attr("transform",`translate(${-(r.width/2)-s-(r.x-(r.left??0))}, ${-(r.height/2)+s-(r.y-(r.top??0))})`),A(t,$),t.intersect=function(v){return P.polygon(t,u,v)},l})}b(Ms,"multiRect");function Cs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0)*2,t?.width??0),c=Math.max(r.height+(t.padding??0)*2,t?.height??0),s=c/4,e=c+s,i=-a/2,h=-e/2,n=5,{cssStyles:p}=t,u=ft(i-n,h+e+n,i+a-n,h+e+n,s,.8),m=u?.[u.length-1],d=[{x:i-n,y:h+n},{x:i-n,y:h+e+n},...u,{x:i+a-n,y:m.y-n},{x:i+a,y:m.y-n},{x:i+a,y:m.y-2*n},{x:i+a+n,y:m.y-2*n},{x:i+a+n,y:h-n},{x:i+n,y:h-n},{x:i+n,y:h},{x:i,y:h},{x:i,y:h+n}],x=[{x:i,y:h+n},{x:i+a-n,y:h+n},{x:i+a-n,y:m.y-n},{x:i+a,y:m.y-n},{x:i+a,y:h},{x:i,y:h}],D=w.svg(l),S=N(t,{});t.look!=="handDrawn"&&(S.roughness=0,S.fillStyle="solid");let $=z(d),v=D.path($,S),B=z(x),k=D.path(B,S),M=l.insert(()=>v,":first-child");return M.insert(()=>k),M.attr("class","basic label-container"),p&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",p),o&&t.look!=="handDrawn"&&M.selectAll("path").attr("style",o),M.attr("transform",`translate(0,${-s/2})`),f.attr("transform",`translate(${-(r.width/2)-n-(r.x-(r.left??0))}, ${-(r.height/2)+n-s/2-(r.y-(r.top??0))})`),A(t,M),t.intersect=function(I){return P.polygon(t,d,I)},l})}b(Cs,"multiWaveEdgedRectangle");function Ps(o,l,r){return C(this,arguments,function*(y,t,{config:{themeVariables:g}}){let{labelStyles:f,nodeStyles:a}=R(t);t.labelStyle=f,t.useHtmlLabels||it(dt())||(t.centerLabel=!0);let{shapeSvg:s,bbox:e,label:i}=yield O(y,t,T(t)),h=Math.max(e.width+(t.padding??0)*2,t?.width??0),n=Math.max(e.height+(t.padding??0)*2,t?.height??0),p=-h/2,u=-n/2,{cssStyles:m}=t,d=w.svg(s),x=N(t,{fill:g.noteBkgColor,stroke:g.noteBorderColor});t.look!=="handDrawn"&&(x.roughness=0,x.fillStyle="solid");let D=d.rectangle(p,u,h,n,x),S=s.insert(()=>D,":first-child");return S.attr("class","basic label-container"),m&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",m),a&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",a),i.attr("transform",`translate(${-e.width/2-(e.x-(e.left??0))}, ${-(e.height/2)-(e.y-(e.top??0))})`),A(t,S),t.intersect=function($){return P.rect(t,$)},s})}b(Ps,"note");var Be=b((y,t,g)=>[`M${y+g/2},${t}`,`L${y+g},${t-g/2}`,`L${y+g/2},${t-g}`,`L${y},${t-g/2}`,"Z"].join(" "),"createDecisionBoxPathD");function Ns(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=r.width+t.padding,a=r.height+t.padding,c=f+a,s=.5,e=[{x:c/2,y:0},{x:c,y:-c/2},{x:c/2,y:-c},{x:0,y:-c/2}],i,{cssStyles:h}=t;if(t.look==="handDrawn"){let n=w.svg(l),p=N(t,{}),u=Be(0,0,c),m=n.path(u,p);i=l.insert(()=>m,":first-child").attr("transform",`translate(${-c/2+s}, ${c/2})`),h&&i.attr("style",h)}else i=ht(l,c,c,e),i.attr("transform",`translate(${-c/2+s}, ${c/2})`);return o&&i.attr("style",o),A(t,i),t.calcIntersect=function(n,p){let u=n.width,m=[{x:u/2,y:0},{x:u,y:-u/2},{x:u/2,y:-u},{x:0,y:-u/2}],d=P.polygon(n,m,p);return{x:d.x-.5,y:d.y-.5}},t.intersect=function(n){return this.calcIntersect(t,n)},l})}b(Ns,"question");function Rs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0),t?.width??0),c=Math.max(r.height+(t.padding??0),t?.height??0),s=-a/2,e=-c/2,i=e/2,h=[{x:s+i,y:e},{x:s,y:0},{x:s+i,y:-e},{x:-s,y:-e},{x:-s,y:e}],{cssStyles:n}=t,p=w.svg(l),u=N(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let m=z(h),d=p.path(m,u),x=l.insert(()=>d,":first-child");return x.attr("class","basic label-container"),n&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",n),o&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",o),x.attr("transform",`translate(${-i/2},0)`),f.attr("transform",`translate(${-i/2-r.width/2-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),A(t,x),t.intersect=function(D){return P.polygon(t,h,D)},l})}b(Rs,"rect_left_inv_arrow");function As(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let l;t.cssClasses?l="node "+t.cssClasses:l="node default";let r=y.insert("g").attr("class",l).attr("id",t.domId||t.id),f=r.insert("g"),a=r.insert("g").attr("class","label").attr("style",o),c=t.description,s=t.label,e=yield Bt(a,s,t.labelStyle,!0,!0),i={width:0,height:0};if(it(U())){let k=e.children[0],M=Q(e);i=k.getBoundingClientRect(),M.attr("width",i.width),M.attr("height",i.height)}Z.info("Text 2",c);let h=c||[],n=e.getBBox(),p=yield Bt(a,Array.isArray(h)?h.join("
"):h,t.labelStyle,!0,!0),u=p.children[0],m=Q(p);i=u.getBoundingClientRect(),m.attr("width",i.width),m.attr("height",i.height);let d=(t.padding||0)/2;Q(p).attr("transform","translate( "+(i.width>n.width?0:(n.width-i.width)/2)+", "+(n.height+d+5)+")"),Q(e).attr("transform","translate( "+(i.width(Z.debug("Rough node insert CXC",I),Y),":first-child"),v=r.insert(()=>(Z.debug("Rough node insert CXC",I),I),":first-child")}else v=f.insert("rect",":first-child"),B=f.insert("line"),v.attr("class","outer title-state").attr("style",o).attr("x",-i.width/2-d).attr("y",-i.height/2-d).attr("width",i.width+(t.padding||0)).attr("height",i.height+(t.padding||0)),B.attr("class","divider").attr("x1",-i.width/2-d).attr("x2",i.width/2+d).attr("y1",-i.height/2-d+n.height+d).attr("y2",-i.height/2-d+n.height+d);return A(t,v),t.intersect=function(k){return P.rect(t,k)},r})}b(As,"rectWithTitle");function Ls(y,t){return C(this,null,function*(){let g={rx:5,ry:5,classes:"",labelPaddingX:(t?.padding||0)*1,labelPaddingY:(t?.padding||0)*1};return Dt(y,t,g)})}b(Ls,"roundedRect");function Hs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=t?.padding??0,c=Math.max(r.width+(t.padding??0)*2,t?.width??0),s=Math.max(r.height+(t.padding??0)*2,t?.height??0),e=-r.width/2-a,i=-r.height/2-a,{cssStyles:h}=t,n=w.svg(l),p=N(t,{});t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let u=[{x:e,y:i},{x:e+c+8,y:i},{x:e+c+8,y:i+s},{x:e-8,y:i+s},{x:e-8,y:i},{x:e,y:i},{x:e,y:i+s}],m=n.polygon(u.map(x=>[x.x,x.y]),p),d=l.insert(()=>m,":first-child");return d.attr("class","basic label-container").attr("style",st(h)),o&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",o),h&&t.look!=="handDrawn"&&d.selectAll("path").attr("style",o),f.attr("transform",`translate(${-c/2+4+(t.padding??0)-(r.x-(r.left??0))},${-s/2+(t.padding??0)-(r.y-(r.top??0))})`),A(t,d),t.intersect=function(x){return P.rect(t,x)},l})}b(Hs,"shadedProcess");function Ws(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0)*2,t?.width??0),c=Math.max(r.height+(t.padding??0)*2,t?.height??0),s=-a/2,e=-c/2,{cssStyles:i}=t,h=w.svg(l),n=N(t,{});t.look!=="handDrawn"&&(n.roughness=0,n.fillStyle="solid");let p=[{x:s,y:e},{x:s,y:e+c},{x:s+a,y:e+c},{x:s+a,y:e-c/2}],u=z(p),m=h.path(u,n),d=l.insert(()=>m,":first-child");return d.attr("class","basic label-container"),i&&t.look!=="handDrawn"&&d.selectChildren("path").attr("style",i),o&&t.look!=="handDrawn"&&d.selectChildren("path").attr("style",o),d.attr("transform",`translate(0, ${c/4})`),f.attr("transform",`translate(${-a/2+(t.padding??0)-(r.x-(r.left??0))}, ${-c/4+(t.padding??0)-(r.y-(r.top??0))})`),A(t,d),t.intersect=function(x){return P.polygon(t,p,x)},l})}b(Ws,"slopedRect");function Is(y,t){return C(this,null,function*(){let g={rx:0,ry:0,classes:"",labelPaddingX:t.labelPaddingX??(t?.padding||0)*2,labelPaddingY:(t?.padding||0)*1};return Dt(y,t,g)})}b(Is,"squareRect");function Es(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=r.height+t.padding,a=r.width+f/4+t.padding,c=f/2,{cssStyles:s}=t,e=w.svg(l),i=N(t,{});t.look!=="handDrawn"&&(i.roughness=0,i.fillStyle="solid");let h=[{x:-a/2+c,y:-f/2},{x:a/2-c,y:-f/2},...kt(-a/2+c,0,c,50,90,270),{x:a/2-c,y:f/2},...kt(a/2-c,0,c,50,270,450)],n=z(h),p=e.path(n,i),u=l.insert(()=>p,":first-child");return u.attr("class","basic label-container outer-path"),s&&t.look!=="handDrawn"&&u.selectChildren("path").attr("style",s),o&&t.look!=="handDrawn"&&u.selectChildren("path").attr("style",o),A(t,u),t.intersect=function(m){return P.polygon(t,h,m)},l})}b(Es,"stadium");function Ts(y,t){return C(this,null,function*(){return Dt(y,t,{rx:5,ry:5,classes:"flowchart-node"})})}b(Ts,"state");function _s(y,t,{config:{themeVariables:g}}){let{labelStyles:o,nodeStyles:l}=R(t);t.labelStyle=o;let{cssStyles:r}=t,{lineColor:f,stateBorder:a,nodeBorder:c}=g,s=y.insert("g").attr("class","node default").attr("id",t.domId||t.id),e=w.svg(s),i=N(t,{});t.look!=="handDrawn"&&(i.roughness=0,i.fillStyle="solid");let h=e.circle(0,0,14,rt(tt({},i),{stroke:f,strokeWidth:2})),n=a??c,p=e.circle(0,0,5,rt(tt({},i),{fill:n,stroke:n,strokeWidth:2,fillStyle:"solid"})),u=s.insert(()=>h,":first-child");return u.insert(()=>p),r&&u.selectAll("path").attr("style",r),l&&u.selectAll("path").attr("style",l),A(t,u),t.intersect=function(m){return P.circle(t,7,m)},s}b(_s,"stateEnd");function Os(y,t,{config:{themeVariables:g}}){let{lineColor:o}=g,l=y.insert("g").attr("class","node default").attr("id",t.domId||t.id),r;if(t.look==="handDrawn"){let a=w.svg(l).circle(0,0,14,jt(o));r=l.insert(()=>a),r.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14)}else r=l.insert("circle",":first-child"),r.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14);return A(t,r),t.intersect=function(f){return P.circle(t,7,f)},l}b(Os,"stateStart");function js(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=(t?.padding||0)/2,a=r.width+t.padding,c=r.height+t.padding,s=-r.width/2-f,e=-r.height/2-f,i=[{x:0,y:0},{x:a,y:0},{x:a,y:-c},{x:0,y:-c},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-c},{x:-8,y:-c},{x:-8,y:0}];if(t.look==="handDrawn"){let h=w.svg(l),n=N(t,{}),p=h.rectangle(s-8,e,a+16,c,n),u=h.line(s,e,s,e+c,n),m=h.line(s+a,e,s+a,e+c,n);l.insert(()=>u,":first-child"),l.insert(()=>m,":first-child");let d=l.insert(()=>p,":first-child"),{cssStyles:x}=t;d.attr("class","basic label-container").attr("style",st(x)),A(t,d)}else{let h=ht(l,a,c,i);o&&h.attr("style",o),A(t,h)}return t.intersect=function(h){return P.polygon(t,i,h)},l})}b(js,"subroutine");function Xs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=Math.max(r.width+(t.padding??0)*2,t?.width??0),a=Math.max(r.height+(t.padding??0)*2,t?.height??0),c=-f/2,s=-a/2,e=.2*a,i=.2*a,{cssStyles:h}=t,n=w.svg(l),p=N(t,{}),u=[{x:c-e/2,y:s},{x:c+f+e/2,y:s},{x:c+f+e/2,y:s+a},{x:c-e/2,y:s+a}],m=[{x:c+f-e/2,y:s+a},{x:c+f+e/2,y:s+a},{x:c+f+e/2,y:s+a-i}];t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let d=z(u),x=n.path(d,p),D=z(m),S=n.path(D,rt(tt({},p),{fillStyle:"solid"})),$=l.insert(()=>S,":first-child");return $.insert(()=>x,":first-child"),$.attr("class","basic label-container"),h&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",h),o&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",o),A(t,$),t.intersect=function(v){return P.polygon(t,u,v)},l})}b(Xs,"taggedRect");function Ys(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0)*2,t?.width??0),c=Math.max(r.height+(t.padding??0)*2,t?.height??0),s=c/4,e=.2*a,i=.2*c,h=c+s,{cssStyles:n}=t,p=w.svg(l),u=N(t,{});t.look!=="handDrawn"&&(u.roughness=0,u.fillStyle="solid");let m=[{x:-a/2-a/2*.1,y:h/2},...ft(-a/2-a/2*.1,h/2,a/2+a/2*.1,h/2,s,.8),{x:a/2+a/2*.1,y:-h/2},{x:-a/2-a/2*.1,y:-h/2}],d=-a/2+a/2*.1,x=-h/2-i*.4,D=[{x:d+a-e,y:(x+c)*1.4},{x:d+a,y:x+c-i},{x:d+a,y:(x+c)*.9},...ft(d+a,(x+c)*1.3,d+a-e,(x+c)*1.5,-c*.03,.5)],S=z(m),$=p.path(S,u),v=z(D),B=p.path(v,rt(tt({},u),{fillStyle:"solid"})),k=l.insert(()=>B,":first-child");return k.insert(()=>$,":first-child"),k.attr("class","basic label-container"),n&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",n),o&&t.look!=="handDrawn"&&k.selectAll("path").attr("style",o),k.attr("transform",`translate(0,${-s/2})`),f.attr("transform",`translate(${-a/2+(t.padding??0)-(r.x-(r.left??0))},${-c/2+(t.padding??0)-s/2-(r.y-(r.top??0))})`),A(t,k),t.intersect=function(M){return P.polygon(t,m,M)},l})}b(Ys,"taggedWaveEdgedRectangle");function qs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=Math.max(r.width+t.padding,t?.width||0),a=Math.max(r.height+t.padding,t?.height||0),c=-f/2,s=-a/2,e=l.insert("rect",":first-child");return e.attr("class","text").attr("style",o).attr("rx",0).attr("ry",0).attr("x",c).attr("y",s).attr("width",f).attr("height",a),A(t,e),t.intersect=function(i){return P.rect(t,i)},l})}b(qs,"text");var Me=b((y,t,g,o,l,r)=>`M${y},${t} - a${l},${r} 0,0,1 0,${-o} - l${g},0 - a${l},${r} 0,0,1 0,${o} - M${g},${-o} - a${l},${r} 0,0,0 0,${o} - l${-g},0`,"createCylinderPathD"),Ce=b((y,t,g,o,l,r)=>[`M${y},${t}`,`M${y+g},${t}`,`a${l},${r} 0,0,0 0,${-o}`,`l${-g},0`,`a${l},${r} 0,0,0 0,${o}`,`l${g},0`].join(" "),"createOuterCylinderPathD"),Pe=b((y,t,g,o,l,r)=>[`M${y+g/2},${-o/2}`,`a${l},${r} 0,0,0 0,${o}`].join(" "),"createInnerCylinderPathD");function Fs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f,halfPadding:a}=yield O(y,t,T(t)),c=t.look==="neo"?a*2:a,s=r.height+c,e=s/2,i=e/(2.5+s/50),h=r.width+i+c,{cssStyles:n}=t,p;if(t.look==="handDrawn"){let u=w.svg(l),m=Ce(0,0,h,s,i,e),d=Pe(0,0,h,s,i,e),x=u.path(m,N(t,{})),D=u.path(d,N(t,{fill:"none"}));p=l.insert(()=>D,":first-child"),p=l.insert(()=>x,":first-child"),p.attr("class","basic label-container"),n&&p.attr("style",n)}else{let u=Me(0,0,h,s,i,e);p=l.insert("path",":first-child").attr("d",u).attr("class","basic label-container").attr("style",st(n)).attr("style",o),p.attr("class","basic label-container"),n&&p.selectAll("path").attr("style",n),o&&p.selectAll("path").attr("style",o)}return p.attr("label-offset-x",i),p.attr("transform",`translate(${-h/2}, ${s/2} )`),f.attr("transform",`translate(${-(r.width/2)-i-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),A(t,p),t.intersect=function(u){let m=P.rect(t,u),d=m.y-(t.y??0);if(e!=0&&(Math.abs(d)<(t.height??0)/2||Math.abs(d)==(t.height??0)/2&&Math.abs(m.x-(t.x??0))>(t.width??0)/2-i)){let x=i*i*(1-d*d/(e*e));x!=0&&(x=Math.sqrt(Math.abs(x))),x=i-x,u.x-(t.x??0)>0&&(x=-x),m.x+=x}return m},l})}b(Fs,"tiltedCylinder");function Gs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=r.width+t.padding,a=r.height+t.padding,c=[{x:-3*a/6,y:0},{x:f+3*a/6,y:0},{x:f,y:-a},{x:0,y:-a}],s,{cssStyles:e}=t;if(t.look==="handDrawn"){let i=w.svg(l),h=N(t,{}),n=z(c),p=i.path(n,h);s=l.insert(()=>p,":first-child").attr("transform",`translate(${-f/2}, ${a/2})`),e&&s.attr("style",e)}else s=ht(l,f,a,c);return o&&s.attr("style",o),t.width=f,t.height=a,A(t,s),t.intersect=function(i){return P.polygon(t,c,i)},l})}b(Gs,"trapezoid");function zs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=60,a=20,c=Math.max(f,r.width+(t.padding??0)*2,t?.width??0),s=Math.max(a,r.height+(t.padding??0)*2,t?.height??0),{cssStyles:e}=t,i=w.svg(l),h=N(t,{});t.look!=="handDrawn"&&(h.roughness=0,h.fillStyle="solid");let n=[{x:-c/2*.8,y:-s/2},{x:c/2*.8,y:-s/2},{x:c/2,y:-s/2*.6},{x:c/2,y:s/2},{x:-c/2,y:s/2},{x:-c/2,y:-s/2*.6}],p=z(n),u=i.path(p,h),m=l.insert(()=>u,":first-child");return m.attr("class","basic label-container"),e&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",e),o&&t.look!=="handDrawn"&&m.selectChildren("path").attr("style",o),A(t,m),t.intersect=function(d){return P.polygon(t,n,d)},l})}b(zs,"trapezoidalPentagon");function Vs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=t.useHtmlLabels||it(U()),c=r.width+(t.padding??0),s=c+r.height,e=c+r.height,i=[{x:0,y:0},{x:e,y:0},{x:e/2,y:-s}],{cssStyles:h}=t,n=w.svg(l),p=N(t,{});t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let u=z(i),m=n.path(u,p),d=l.insert(()=>m,":first-child").attr("transform",`translate(${-s/2}, ${s/2})`);return h&&t.look!=="handDrawn"&&d.selectChildren("path").attr("style",h),o&&t.look!=="handDrawn"&&d.selectChildren("path").attr("style",o),t.width=c,t.height=s,A(t,d),f.attr("transform",`translate(${-r.width/2-(r.x-(r.left??0))}, ${s/2-(r.height+(t.padding??0)/(a?2:1)-(r.y-(r.top??0)))})`),t.intersect=function(x){return Z.info("Triangle intersect",t,i,x),P.polygon(t,i,x)},l})}b(Vs,"triangle");function Zs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0)*2,t?.width??0),c=Math.max(r.height+(t.padding??0)*2,t?.height??0),s=c/8,e=c+s,{cssStyles:i}=t,n=70-a,p=n>0?n/2:0,u=w.svg(l),m=N(t,{});t.look!=="handDrawn"&&(m.roughness=0,m.fillStyle="solid");let d=[{x:-a/2-p,y:e/2},...ft(-a/2-p,e/2,a/2+p,e/2,s,.8),{x:a/2+p,y:-e/2},{x:-a/2-p,y:-e/2}],x=z(d),D=u.path(x,m),S=l.insert(()=>D,":first-child");return S.attr("class","basic label-container"),i&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",i),o&&t.look!=="handDrawn"&&S.selectAll("path").attr("style",o),S.attr("transform",`translate(0,${-s/2})`),f.attr("transform",`translate(${-a/2+(t.padding??0)-(r.x-(r.left??0))},${-c/2+(t.padding??0)-s-(r.y-(r.top??0))})`),A(t,S),t.intersect=function($){return P.polygon(t,d,$)},l})}b(Zs,"waveEdgedRectangle");function Js(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r}=yield O(y,t,T(t)),f=100,a=50,c=Math.max(r.width+(t.padding??0)*2,t?.width??0),s=Math.max(r.height+(t.padding??0)*2,t?.height??0),e=c/s,i=c,h=s;i>h*e?h=i/e:i=h*e,i=Math.max(i,f),h=Math.max(h,a);let n=Math.min(h*.2,h/4),p=h+n*2,{cssStyles:u}=t,m=w.svg(l),d=N(t,{});t.look!=="handDrawn"&&(d.roughness=0,d.fillStyle="solid");let x=[{x:-i/2,y:p/2},...ft(-i/2,p/2,i/2,p/2,n,1),{x:i/2,y:-p/2},...ft(i/2,-p/2,-i/2,-p/2,n,-1)],D=z(x),S=m.path(D,d),$=l.insert(()=>S,":first-child");return $.attr("class","basic label-container"),u&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",u),o&&t.look!=="handDrawn"&&$.selectAll("path").attr("style",o),A(t,$),t.intersect=function(v){return P.polygon(t,x,v)},l})}b(Js,"waveRectangle");function Qs(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,label:f}=yield O(y,t,T(t)),a=Math.max(r.width+(t.padding??0)*2,t?.width??0),c=Math.max(r.height+(t.padding??0)*2,t?.height??0),s=5,e=-a/2,i=-c/2,{cssStyles:h}=t,n=w.svg(l),p=N(t,{}),u=[{x:e-s,y:i-s},{x:e-s,y:i+c},{x:e+a,y:i+c},{x:e+a,y:i-s}],m=`M${e-s},${i-s} L${e+a},${i-s} L${e+a},${i+c} L${e-s},${i+c} L${e-s},${i-s} - M${e-s},${i} L${e+a},${i} - M${e},${i-s} L${e},${i+c}`;t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let d=n.path(m,p),x=l.insert(()=>d,":first-child");return x.attr("transform",`translate(${s/2}, ${s/2})`),x.attr("class","basic label-container"),h&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",h),o&&t.look!=="handDrawn"&&x.selectAll("path").attr("style",o),f.attr("transform",`translate(${-(r.width/2)+s/2-(r.x-(r.left??0))}, ${-(r.height/2)+s/2-(r.y-(r.top??0))})`),A(t,x),t.intersect=function(D){return P.polygon(t,u,D)},l})}b(Qs,"windowPane");function Et(y,t){return C(this,null,function*(){let g=t;if(g.alias&&(t.label=g.alias),t.look==="handDrawn"){let{themeVariables:G}=dt(),{background:J}=G,et=rt(tt({},t),{id:t.id+"-background",look:"default",cssStyles:["stroke: none",`fill: ${J}`]});yield Et(y,et)}let o=dt();t.useHtmlLabels=o.htmlLabels;let l=o.er?.diagramPadding??10,r=o.er?.entityPadding??6,{cssStyles:f}=t,{labelStyles:a,nodeStyles:c}=R(t);if(g.attributes.length===0&&t.label){let G={rx:0,ry:0,labelPaddingX:l,labelPaddingY:l*1.5,classes:""};wt(t.label,o)+G.labelPaddingX*20){let G=i.width+l*2-(u+m+d+x);u+=G/$,m+=G/$,d>0&&(d+=G/$),x>0&&(x+=G/$)}let B=u+m+d+x,k=w.svg(e),M=N(t,{});t.look!=="handDrawn"&&(M.roughness=0,M.fillStyle="solid");let I=0;p.length>0&&(I=p.reduce((G,J)=>G+(J?.rowHeight??0),0));let Y=Math.max(v.width+l*2,t?.width||0,B),V=Math.max((I??0)+i.height,t?.height||0),q=-Y/2,W=-V/2;e.selectAll("g:not(:first-child)").each((G,J,et)=>{let at=Q(et[J]),pt=at.attr("transform"),gt=0,Tt=0;if(pt){let Ct=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(pt);Ct&&(gt=parseFloat(Ct[1]),Tt=parseFloat(Ct[2]),at.attr("class").includes("attribute-name")?gt+=u:at.attr("class").includes("attribute-keys")?gt+=u+m:at.attr("class").includes("attribute-comment")&&(gt+=u+m+d))}at.attr("transform",`translate(${q+l/2+gt}, ${Tt+W+i.height+r/2})`)}),e.select(".name").attr("transform","translate("+-i.width/2+", "+(W+r/2)+")");let j=k.rectangle(q,W,Y,V,M),L=e.insert(()=>j,":first-child").attr("style",f.join("")),{themeVariables:F}=dt(),{rowEven:_,rowOdd:H,nodeBorder:X}=F;n.push(0);for(let[G,J]of p.entries()){let at=(G+1)%2===0&&J.yOffset!==0,pt=k.rectangle(q,i.height+W+J?.yOffset,Y,J?.rowHeight,rt(tt({},M),{fill:at?_:H,stroke:X}));e.insert(()=>pt,"g.label").attr("style",f.join("")).attr("class",`row-rect-${at?"even":"odd"}`)}let E=k.line(q,i.height+W,Y+q,i.height+W,M);e.insert(()=>E).attr("class","divider"),E=k.line(u+q,i.height+W,u+q,V+W,M),e.insert(()=>E).attr("class","divider"),D&&(E=k.line(u+m+q,i.height+W,u+m+q,V+W,M),e.insert(()=>E).attr("class","divider")),S&&(E=k.line(u+m+d+q,i.height+W,u+m+d+q,V+W,M),e.insert(()=>E).attr("class","divider"));for(let G of n)E=k.line(q,i.height+W+G,Y+q,i.height+W+G,M),e.insert(()=>E).attr("class","divider");if(A(t,L),c&&t.look!=="handDrawn"){let J=c.split(";")?.filter(et=>et.includes("stroke"))?.map(et=>`${et}`).join("; ");e.selectAll("path").attr("style",J??""),e.selectAll(".row-rect-even path").attr("style",c)}return t.intersect=function(G){return P.rect(t,G)},e})}b(Et,"erBox");function mt(a,c,s){return C(this,arguments,function*(y,t,g,o=0,l=0,r=[],f=""){let e=y.insert("g").attr("class",`label ${r.join(" ")}`).attr("transform",`translate(${o}, ${l})`).attr("style",f);t!==Nt(t)&&(t=Nt(t),t=t.replaceAll("<","<").replaceAll(">",">"));let i=e.node().appendChild(yield nt(e,t,{width:wt(t,g)+100,style:f,useHtmlLabels:g.htmlLabels},g));if(t.includes("<")||t.includes(">")){let n=i.children[0];for(n.textContent=n.textContent.replaceAll("<","<").replaceAll(">",">");n.childNodes[0];)n=n.childNodes[0],n.textContent=n.textContent.replaceAll("<","<").replaceAll(">",">")}let h=i.getBBox();if(ut(g.htmlLabels)){let n=i.children[0];n.style.textAlign="start";let p=Q(i);h=n.getBoundingClientRect(),p.attr("width",h.width),p.attr("height",h.height)}return h})}b(mt,"addText");function Us(r,f,a,c){return C(this,arguments,function*(y,t,g,o,l=g.class.padding??12){let s=o?0:3,e=y.insert("g").attr("class",T(t)).attr("id",t.domId||t.id),i=null,h=null,n=null,p=null,u=0,m=0,d=0;if(i=e.insert("g").attr("class","annotation-group text"),t.annotations.length>0){let v=t.annotations[0];yield vt(i,{text:`\xAB${v}\xBB`},0),u=i.node().getBBox().height}h=e.insert("g").attr("class","label-group text"),yield vt(h,t,0,["font-weight: bolder"]);let x=h.node().getBBox();m=x.height,n=e.insert("g").attr("class","members-group text");let D=0;for(let v of t.members){let B=yield vt(n,v,D,[v.parseClassifier()]);D+=B+s}d=n.node().getBBox().height,d<=0&&(d=l/2),p=e.insert("g").attr("class","methods-group text");let S=0;for(let v of t.methods){let B=yield vt(p,v,S,[v.parseClassifier()]);S+=B+s}let $=e.node().getBBox();if(i!==null){let v=i.node().getBBox();i.attr("transform",`translate(${-v.width/2})`)}return h.attr("transform",`translate(${-x.width/2}, ${u})`),$=e.node().getBBox(),n.attr("transform",`translate(0, ${u+m+l*2})`),$=e.node().getBBox(),p.attr("transform",`translate(0, ${u+m+(d?d+l*4:l*2)})`),$=e.node().getBBox(),{shapeSvg:e,bbox:$}})}b(Us,"textHelper");function vt(l,r,f){return C(this,arguments,function*(y,t,g,o=[]){let a=y.insert("g").attr("class","label").attr("style",o.join("; ")),c=dt(),s="useHtmlLabels"in t?t.useHtmlLabels:ut(c.htmlLabels)??!0,e="";"text"in t?e=t.text:e=t.label,!s&&e.startsWith("\\")&&(e=e.substring(1)),_t(e)&&(s=!0);let i=yield nt(a,Rt(bt(e)),{width:wt(e,c)+50,classes:"markdown-node-label",useHtmlLabels:s},c),h,n=1;if(s){let p=i.children[0],u=Q(i);n=p.innerHTML.split("
").length,p.innerHTML.includes("")&&(n+=p.innerHTML.split("").length-1);let m=p.getElementsByTagName("img");if(m){let d=e.replace(/]*>/g,"").trim()==="";yield Promise.all([...m].map(x=>new Promise(D=>{function S(){if(x.style.display="flex",x.style.flexDirection="column",d){let $=c.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,B=parseInt($,10)*5+"px";x.style.minWidth=B,x.style.maxWidth=B}else x.style.width="100%";D(x)}b(S,"setupImage"),setTimeout(()=>{x.complete&&S()}),x.addEventListener("error",S),x.addEventListener("load",S)})))}h=p.getBoundingClientRect(),u.attr("width",h.width),u.attr("height",h.height)}else{o.includes("font-weight: bolder")&&Q(i).selectAll("tspan").attr("font-weight",""),n=i.children.length;let p=i.children[0];(i.textContent===""||i.textContent.includes(">"))&&(p.textContent=e[0]+e.substring(1).replaceAll(">",">").replaceAll("<","<").trim(),e[1]===" "&&(p.textContent=p.textContent[0]+" "+p.textContent.substring(1))),p.textContent==="undefined"&&(p.textContent=""),h=i.getBBox()}return a.attr("transform","translate(0,"+(-h.height/(2*n)+g)+")"),h.height})}b(vt,"addText");function Ks(y,t){return C(this,null,function*(){let g=U(),o=g.class.padding??12,l=o,r=t.useHtmlLabels??ut(g.htmlLabels)??!0,f=t;f.annotations=f.annotations??[],f.members=f.members??[],f.methods=f.methods??[];let{shapeSvg:a,bbox:c}=yield Us(y,t,g,r,l),{labelStyles:s,nodeStyles:e}=R(t);t.labelStyle=s,t.cssStyles=f.styles||"";let i=f.styles?.join(";")||e||"";t.cssStyles||(t.cssStyles=i.replaceAll("!important","").split(";"));let h=f.members.length===0&&f.methods.length===0&&!g.class?.hideEmptyMembersBox,n=w.svg(a),p=N(t,{});t.look!=="handDrawn"&&(p.roughness=0,p.fillStyle="solid");let u=c.width,m=c.height;f.members.length===0&&f.methods.length===0?m+=l:f.members.length>0&&f.methods.length===0&&(m+=l*2);let d=-u/2,x=-m/2,D=n.rectangle(d-o,x-o-(h?o:f.members.length===0&&f.methods.length===0?-o/2:0),u+2*o,m+2*o+(h?o*2:f.members.length===0&&f.methods.length===0?-o:0),p),S=a.insert(()=>D,":first-child");S.attr("class","basic label-container");let $=S.node().getBBox();a.selectAll(".text").each((M,I,Y)=>{let V=Q(Y[I]),q=V.attr("transform"),W=0;if(q){let _=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(q);_&&(W=parseFloat(_[2]))}let j=W+x+o-(h?o:f.members.length===0&&f.methods.length===0?-o/2:0);r||(j-=4);let L=d;(V.attr("class").includes("label-group")||V.attr("class").includes("annotation-group"))&&(L=-V.node()?.getBBox().width/2||0,a.selectAll("text").each(function(F,_,H){window.getComputedStyle(H[_]).textAnchor==="middle"&&(L=0)})),V.attr("transform",`translate(${L}, ${j})`)});let v=a.select(".annotation-group").node().getBBox().height-(h?o/2:0)||0,B=a.select(".label-group").node().getBBox().height-(h?o/2:0)||0,k=a.select(".members-group").node().getBBox().height-(h?o/2:0)||0;if(f.members.length>0||f.methods.length>0||h){let M=n.line($.x,v+B+x+o,$.x+$.width,v+B+x+o,p);a.insert(()=>M).attr("class","divider").attr("style",i)}if(h||f.members.length>0||f.methods.length>0){let M=n.line($.x,v+B+k+x+l*2+o,$.x+$.width,v+B+k+x+o+l*2,p);a.insert(()=>M).attr("class","divider").attr("style",i)}if(f.look!=="handDrawn"&&a.selectAll("path").attr("style",i),S.select(":nth-child(2)").attr("style",i),a.selectAll(".divider").select("path").attr("style",i),t.labelStyle?a.selectAll("span").attr("style",t.labelStyle):a.selectAll("span").attr("style",i),!r){let M=RegExp(/color\s*:\s*([^;]*)/),I=M.exec(i);if(I){let Y=I[0].replace("color","fill");a.selectAll("tspan").attr("style",Y)}else if(s){let Y=M.exec(s);if(Y){let V=Y[0].replace("color","fill");a.selectAll("tspan").attr("style",V)}}}return A(t,S),t.intersect=function(M){return P.rect(t,M)},a})}b(Ks,"classBox");function te(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let l=t,r=t,f=20,a=20,c="verifyMethod"in t,s=T(t),e=y.insert("g").attr("class",s).attr("id",t.domId??t.id),i;c?i=yield lt(e,`<<${l.type}>>`,0,t.labelStyle):i=yield lt(e,"<<Element>>",0,t.labelStyle);let h=i,n=yield lt(e,l.name,h,t.labelStyle+"; font-weight: bold;");if(h+=n+a,c){let v=yield lt(e,`${l.requirementId?`ID: ${l.requirementId}`:""}`,h,t.labelStyle);h+=v;let B=yield lt(e,`${l.text?`Text: ${l.text}`:""}`,h,t.labelStyle);h+=B;let k=yield lt(e,`${l.risk?`Risk: ${l.risk}`:""}`,h,t.labelStyle);h+=k,yield lt(e,`${l.verifyMethod?`Verification: ${l.verifyMethod}`:""}`,h,t.labelStyle)}else{let v=yield lt(e,`${r.type?`Type: ${r.type}`:""}`,h,t.labelStyle);h+=v,yield lt(e,`${r.docRef?`Doc Ref: ${r.docRef}`:""}`,h,t.labelStyle)}let p=(e.node()?.getBBox().width??200)+f,u=(e.node()?.getBBox().height??200)+f,m=-p/2,d=-u/2,x=w.svg(e),D=N(t,{});t.look!=="handDrawn"&&(D.roughness=0,D.fillStyle="solid");let S=x.rectangle(m,d,p,u,D),$=e.insert(()=>S,":first-child");if($.attr("class","basic label-container").attr("style",o),e.selectAll(".label").each((v,B,k)=>{let M=Q(k[B]),I=M.attr("transform"),Y=0,V=0;if(I){let L=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(I);L&&(Y=parseFloat(L[1]),V=parseFloat(L[2]))}let q=V-u/2,W=m+f/2;(B===0||B===1)&&(W=Y),M.attr("transform",`translate(${W}, ${q+f})`)}),h>i+n+a){let v=x.line(m,d+i+n+a,m+p,d+i+n+a,D);e.insert(()=>v).attr("style",o)}return A(t,$),t.intersect=function(v){return P.rect(t,v)},e})}b(te,"requirementBox");function lt(y,t,g,o=""){return C(this,null,function*(){if(t==="")return 0;let l=y.insert("g").attr("class","label").attr("style",o),r=U(),f=r.htmlLabels??!0,a=yield nt(l,Rt(bt(t)),{width:wt(t,r)+50,classes:"markdown-node-label",useHtmlLabels:f,style:o},r),c;if(f){let s=a.children[0],e=Q(a);c=s.getBoundingClientRect(),e.attr("width",c.width),e.attr("height",c.height)}else{let s=a.children[0];for(let e of s.children)e.textContent=e.textContent.replaceAll(">",">").replaceAll("<","<"),o&&e.setAttribute("style",o);c=a.getBBox(),c.height+=6}return l.attr("transform",`translate(${-c.width/2},${-c.height/2+g})`),c.height})}b(lt,"addText");var Ne=b(y=>{switch(y){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");function se(o,l,r){return C(this,arguments,function*(y,t,{config:g}){let{labelStyles:f,nodeStyles:a}=R(t);t.labelStyle=f||"";let c=10,s=t.width;t.width=(t.width??200)-10;let{shapeSvg:e,bbox:i,label:h}=yield O(y,t,T(t)),n=t.padding||10,p="",u;"ticket"in t&&t.ticket&&g?.kanban?.ticketBaseUrl&&(p=g?.kanban?.ticketBaseUrl.replace("#TICKET#",t.ticket),u=e.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",p).attr("target","_blank"));let m={useHtmlLabels:t.useHtmlLabels,labelStyle:t.labelStyle||"",width:t.width,img:t.img,padding:t.padding||8,centerLabel:!1},d,x;u?{label:d,bbox:x}=yield Lt(u,"ticket"in t&&t.ticket||"",m):{label:d,bbox:x}=yield Lt(e,"ticket"in t&&t.ticket||"",m);let{label:D,bbox:S}=yield Lt(e,"assigned"in t&&t.assigned||"",m);t.width=s;let $=10,v=t?.width||0,B=Math.max(x.height,S.height)/2,k=Math.max(i.height+$*2,t?.height||0)+B,M=-v/2,I=-k/2;h.attr("transform","translate("+(n-v/2)+", "+(-B-i.height/2)+")"),d.attr("transform","translate("+(n-v/2)+", "+(-B+i.height/2)+")"),D.attr("transform","translate("+(n+v/2-S.width-2*c)+", "+(-B+i.height/2)+")");let Y,{rx:V,ry:q}=t,{cssStyles:W}=t;if(t.look==="handDrawn"){let j=w.svg(e),L=N(t,{}),F=V||q?j.path(yt(M,I,v,k,V||0),L):j.rectangle(M,I,v,k,L);Y=e.insert(()=>F,":first-child"),Y.attr("class","basic label-container").attr("style",W||null)}else{Y=e.insert("rect",":first-child"),Y.attr("class","basic label-container __APA__").attr("style",a).attr("rx",V??5).attr("ry",q??5).attr("x",M).attr("y",I).attr("width",v).attr("height",k);let j="priority"in t&&t.priority;if(j){let L=e.append("line"),F=M+2,_=I+Math.floor((V??0)/2),H=I+k-Math.floor((V??0)/2);L.attr("x1",F).attr("y1",_).attr("x2",F).attr("y2",H).attr("stroke-width","4").attr("stroke",Ne(j))}}return A(t,Y),t.height=k,t.intersect=function(j){return P.rect(t,j)},e})}b(se,"kanbanItem");function ee(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,halfPadding:f,label:a}=yield O(y,t,T(t)),c=r.width+10*f,s=r.height+8*f,e=.15*c,{cssStyles:i}=t,h=r.width+20,n=r.height+20,p=Math.max(c,h),u=Math.max(s,n);a.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`);let m,d=`M0 0 - a${e},${e} 1 0,0 ${p*.25},${-1*u*.1} - a${e},${e} 1 0,0 ${p*.25},0 - a${e},${e} 1 0,0 ${p*.25},0 - a${e},${e} 1 0,0 ${p*.25},${u*.1} - - a${e},${e} 1 0,0 ${p*.15},${u*.33} - a${e*.8},${e*.8} 1 0,0 0,${u*.34} - a${e},${e} 1 0,0 ${-1*p*.15},${u*.33} - - a${e},${e} 1 0,0 ${-1*p*.25},${u*.15} - a${e},${e} 1 0,0 ${-1*p*.25},0 - a${e},${e} 1 0,0 ${-1*p*.25},0 - a${e},${e} 1 0,0 ${-1*p*.25},${-1*u*.15} - - a${e},${e} 1 0,0 ${-1*p*.1},${-1*u*.33} - a${e*.8},${e*.8} 1 0,0 0,${-1*u*.34} - a${e},${e} 1 0,0 ${p*.1},${-1*u*.33} - H0 V0 Z`;if(t.look==="handDrawn"){let x=w.svg(l),D=N(t,{}),S=x.path(d,D);m=l.insert(()=>S,":first-child"),m.attr("class","basic label-container").attr("style",st(i))}else m=l.insert("path",":first-child").attr("class","basic label-container").attr("style",o).attr("d",d);return m.attr("transform",`translate(${-p/2}, ${-u/2})`),A(t,m),t.calcIntersect=function(x,D){return P.rect(x,D)},t.intersect=function(x){return Z.info("Bang intersect",t,x),P.rect(t,x)},l})}b(ee,"bang");function ae(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,halfPadding:f,label:a}=yield O(y,t,T(t)),c=r.width+2*f,s=r.height+2*f,e=.15*c,i=.25*c,h=.35*c,n=.2*c,{cssStyles:p}=t,u,m=`M0 0 - a${e},${e} 0 0,1 ${c*.25},${-1*c*.1} - a${h},${h} 1 0,1 ${c*.4},${-1*c*.1} - a${i},${i} 1 0,1 ${c*.35},${c*.2} - - a${e},${e} 1 0,1 ${c*.15},${s*.35} - a${n},${n} 1 0,1 ${-1*c*.15},${s*.65} - - a${i},${e} 1 0,1 ${-1*c*.25},${c*.15} - a${h},${h} 1 0,1 ${-1*c*.5},0 - a${e},${e} 1 0,1 ${-1*c*.25},${-1*c*.15} - - a${e},${e} 1 0,1 ${-1*c*.1},${-1*s*.35} - a${n},${n} 1 0,1 ${c*.1},${-1*s*.65} - H0 V0 Z`;if(t.look==="handDrawn"){let d=w.svg(l),x=N(t,{}),D=d.path(m,x);u=l.insert(()=>D,":first-child"),u.attr("class","basic label-container").attr("style",st(p))}else u=l.insert("path",":first-child").attr("class","basic label-container").attr("style",o).attr("d",m);return a.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`),u.attr("transform",`translate(${-c/2}, ${-s/2})`),A(t,u),t.calcIntersect=function(d,x){return P.rect(d,x)},t.intersect=function(d){return Z.info("Cloud intersect",t,d),P.rect(t,d)},l})}b(ae,"cloud");function re(y,t){return C(this,null,function*(){let{labelStyles:g,nodeStyles:o}=R(t);t.labelStyle=g;let{shapeSvg:l,bbox:r,halfPadding:f,label:a}=yield O(y,t,T(t)),c=r.width+8*f,s=r.height+2*f,e=5,i=` - M${-c/2} ${s/2-e} - v${-s+2*e} - q0,-${e} ${e},-${e} - h${c-2*e} - q${e},0 ${e},${e} - v${s-2*e} - q0,${e} -${e},${e} - h${-c+2*e} - q-${e},0 -${e},-${e} - Z - `,h=l.append("path").attr("id","node-"+t.id).attr("class","node-bkg node-"+t.type).attr("style",o).attr("d",i);return l.append("line").attr("class","node-line-").attr("x1",-c/2).attr("y1",s/2).attr("x2",c/2).attr("y2",s/2),a.attr("transform",`translate(${-r.width/2}, ${-r.height/2})`),l.append(()=>a.node()),A(t,h),t.calcIntersect=function(n,p){return P.rect(n,p)},t.intersect=function(n){return P.rect(t,n)},l})}b(re,"defaultMindmapNode");function ie(y,t){return C(this,null,function*(){let g={padding:t.padding??0};return It(y,t,g)})}b(ie,"mindmapCircle");var Re=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:Is},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:Ls},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:Es},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:js},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:ls},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:It},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:ee},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:ae},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:Ns},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:ys},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:vs},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:$s},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:Gs},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:bs},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:cs},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:qs},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:Ut},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:Hs},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:Os},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:_s},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:gs},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:ps},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:es},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:as},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:rs},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:ks},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:Zs},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:fs},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:Fs},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:Ds},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:is},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:ns},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:Vs},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:Qs},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:os},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:zs},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:hs},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:Ws},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:Cs},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:Ms},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:Qt},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:ss},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:Ys},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:Xs},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:Js},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:Rs},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:Bs}],Ae=b(()=>{let t=[...Object.entries({state:Ts,choice:Kt,note:Ps,rectWithTitle:As,labelRect:Ss,iconSquare:xs,iconCircle:ds,icon:us,iconRounded:ms,imageSquare:ws,anchor:Jt,kanbanItem:se,mindmapCircle:ie,defaultMindmapNode:re,classBox:Ks,erBox:Et,requirementBox:te}),...Re.flatMap(g=>[g.shortName,..."aliases"in g?g.aliases:[],..."internalAliases"in g?g.internalAliases:[]].map(l=>[l,g.handler]))];return Object.fromEntries(t)},"generateShapeMap"),le=Ae();function Le(y){return y in le}b(Le,"isValidShape");var Mt=new Map;function He(y,t,g){return C(this,null,function*(){let o,l;t.shape==="rect"&&(t.rx&&t.ry?t.shape="roundedRect":t.shape="squareRect");let r=t.shape?le[t.shape]:void 0;if(!r)throw new Error(`No such shape: ${t.shape}. Please check your syntax.`);if(t.link){let f;g.config.securityLevel==="sandbox"?f="_top":t.linkTarget&&(f=t.linkTarget||"_blank"),o=y.insert("svg:a").attr("xlink:href",t.link).attr("target",f??null),l=yield r(o,t,g)}else l=yield r(y,t,g),o=l;return t.tooltip&&l.attr("title",t.tooltip),Mt.set(t.id,o),t.haveCallback&&o.attr("class",o.attr("class")+" clickable"),o})}b(He,"insertNode");var er=b((y,t)=>{Mt.set(t.id,y)},"setNodeElem"),ar=b(()=>{Mt.clear()},"clear"),rr=b(y=>{let t=Mt.get(y.id);Z.trace("Transforming node",y.diff,y,"translate("+(y.x-y.width/2-5)+", "+y.width/2+")");let g=8,o=y.diff||0;return y.clusterNode?t.attr("transform","translate("+(y.x+o-y.width/2)+", "+(y.y-y.height/2-g)+")"):t.attr("transform","translate("+y.x+", "+y.y+")"),o},"positionNode");export{O as a,A as b,Bt as c,Fe as d,Ge as e,Le as f,He as g,er as h,ar as i,rr as j}; diff --git a/src/google/adk/cli/browser/chunk-WAKWL6X3.js b/src/google/adk/cli/browser/chunk-WAKWL6X3.js deleted file mode 100644 index 94e5a71b6c..0000000000 --- a/src/google/adk/cli/browser/chunk-WAKWL6X3.js +++ /dev/null @@ -1,24 +0,0 @@ -import{a as F}from"./chunk-DMWOYWYQ.js";import{a as A}from"./chunk-T3Q3QCCV.js";import"./chunk-NQKWI5EB.js";import"./chunk-WR6HISGZ.js";import"./chunk-I4UDKKN5.js";import"./chunk-2DLZXFEQ.js";import"./chunk-JNY2YWG7.js";import"./chunk-XULIXUQL.js";import"./chunk-3NJNOY56.js";import"./chunk-NALL4A3P.js";import{a as E}from"./chunk-TPDTRWWV.js";import{l as w}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{A as y,N as $,R as B,S as C,T as S,U as D,V as T,W as P,X as z,r as x}from"./chunk-QFMJV7VH.js";import{g as h,i as u}from"./chunk-JRNAXTJ7.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{a as m,j as v}from"./chunk-RMXJBC7V.js";var M=x.packet,W=class{constructor(){this.packet=[],this.setAccTitle=C,this.getAccTitle=S,this.setDiagramTitle=P,this.getDiagramTitle=z,this.getAccDescription=T,this.setAccDescription=D}static{h(this,"PacketDB")}getConfig(){let t=w(m(m({},M),y().packet));return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){B(),this.packet=[]}},Y=1e4,I=h((t,e)=>{F(t,e);let a=-1,o=[],n=1,{bitsPerRow:l}=e.getConfig();for(let{start:r,end:s,bits:d,label:c}of t.blocks){if(r!==void 0&&s!==void 0&&s{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*a)return[t,void 0];let o=e*a-1,n=e*a;return[{start:t.start,end:o,label:t.label,bits:o-t.start},{start:n,end:t.end,label:t.label,bits:t.end-n}]},"getNextFittingBlock"),_={parser:{yy:void 0},parse:h(t=>v(null,null,function*(){let e=yield A("packet",t),a=_.parser?.yy;if(!(a instanceof W))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");u.debug(e),I(e,a)}),"parse")},j=h((t,e,a,o)=>{let n=o.db,l=n.getConfig(),{rowHeight:r,paddingY:s,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),i=n.getDiagramTitle(),f=r+s,g=f*(p.length+1)-(i?0:r),k=d*c+2,b=E(e);b.attr("viewBox",`0 0 ${k} ${g}`),$(b,g,k,l.useMaxWidth);for(let[N,L]of p.entries())G(b,L,N,l);b.append("text").text(i).attr("x",k/2).attr("y",g-f/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),G=h((t,e,a,{rowHeight:o,paddingX:n,paddingY:l,bitWidth:r,bitsPerRow:s,showBits:d})=>{let c=t.append("g"),p=a*(o+l)+l;for(let i of e){let f=i.start%s*r+1,g=(i.end-i.start+1)*r-n;if(c.append("rect").attr("x",f).attr("y",p).attr("width",g).attr("height",o).attr("class","packetBlock"),c.append("text").attr("x",f+g/2).attr("y",p+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(i.label),!d)continue;let k=i.end===i.start,b=p-2;c.append("text").attr("x",f+(k?g/2:0)).attr("y",b).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(i.start),k||c.append("text").attr("x",f+g).attr("y",b).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(i.end)}},"drawWord"),H={draw:j},K={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},R=h(({packet:t}={})=>{let e=w(K,t);return` - .packetByte { - font-size: ${e.byteFontSize}; - } - .packetByte.start { - fill: ${e.startByteColor}; - } - .packetByte.end { - fill: ${e.endByteColor}; - } - .packetLabel { - fill: ${e.labelColor}; - font-size: ${e.labelFontSize}; - } - .packetTitle { - fill: ${e.titleColor}; - font-size: ${e.titleFontSize}; - } - .packetBlock { - stroke: ${e.blockStrokeColor}; - stroke-width: ${e.blockStrokeWidth}; - fill: ${e.blockFillColor}; - } - `},"styles"),Z={parser:_,get db(){return new W},renderer:H,styles:R};export{Z as diagram}; diff --git a/src/google/adk/cli/browser/chunk-WBLSVR3V.js b/src/google/adk/cli/browser/chunk-WBLSVR3V.js deleted file mode 100644 index 98bd99d4f6..0000000000 --- a/src/google/adk/cli/browser/chunk-WBLSVR3V.js +++ /dev/null @@ -1,2 +0,0 @@ -import{a as vt}from"./chunk-GP6TCC26.js";import{M as $,i as m,l as E,o as b,s as F}from"./chunk-QFMJV7VH.js";import{$ as J,L as _,O as A,P as N,Q as R,R as D,S as H,T as O,U as z,V as j,W as U,X as k,Y as X,Z as Y,_ as G,a as T,aa as q,ba as Z,ca as K,da as Q,ea as V,g as s,i as f}from"./chunk-JRNAXTJ7.js";import{K as M,V as L}from"./chunk-EGBSMT36.js";import{h as mt}from"./chunk-RMXJBC7V.js";var nt=mt(vt(),1);var yt="\u200B",xt={curveBasis:R,curveBasisClosed:D,curveBasisOpen:H,curveBumpX:A,curveBumpY:N,curveBundle:O,curveCardinalClosed:j,curveCardinalOpen:U,curveCardinal:z,curveCatmullRomClosed:X,curveCatmullRomOpen:Y,curveCatmullRom:k,curveLinear:_,curveLinearClosed:G,curveMonotoneX:J,curveMonotoneY:q,curveNatural:Z,curveStep:K,curveStepAfter:V,curveStepBefore:Q},pt=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,Mt=s(function(e,t){let r=rt(e,/(?:init\b)|(?:initialize\b)/),n={};if(Array.isArray(r)){let a=r.map(l=>l.args);F(a),n=b(n,[...a])}else n=r.args;if(!n)return;let i=E(e,t),o="config";return n[o]!==void 0&&(i==="flowchart-v2"&&(i="flowchart"),n[i]=n[o],delete n[o]),n},"detectInit"),rt=s(function(e,t=null){try{let r=new RegExp(`[%]{2}(?![{]${pt.source})(?=[}][%]{2}).* -`,"ig");e=e.trim().replace(r,"").replace(/'/gm,'"'),f.debug(`Detecting diagram directive${t!==null?" type:"+t:""} based on the text:${e}`);let n,i=[];for(;(n=m.exec(e))!==null;)if(n.index===m.lastIndex&&m.lastIndex++,n&&!t||t&&n[1]?.match(t)||t&&n[2]?.match(t)){let o=n[1]?n[1]:n[2],a=n[3]?n[3].trim():n[4]?JSON.parse(n[4].trim()):null;i.push({type:o,args:a})}return i.length===0?{type:e,args:null}:i.length===1?i[0]:i}catch(r){return f.error(`ERROR: ${r.message} - Unable to parse directive type: '${t}' based on the text: '${e}'`),{type:void 0,args:null}}},"detectDirective"),Ot=s(function(e){return e.replace(m,"")},"removeDirectives"),$t=s(function(e,t){for(let[r,n]of t.entries())if(n.match(e))return r;return-1},"isSubstringInArray");function it(e,t){if(!e)return t;let r=`curve${e.charAt(0).toUpperCase()+e.slice(1)}`;return xt[r]??t}s(it,"interpolateToCurve");function ot(e,t){let r=e.trim();if(r)return t.securityLevel!=="loose"?(0,nt.sanitizeUrl)(r):r}s(ot,"formatUrl");var wt=s((e,...t)=>{let r=e.split("."),n=r.length-1,i=r[n],o=window;for(let a=0;a{r+=S(i,t),t=i});let n=r/2;return B(e,n)}s(at,"traverseEdge");function st(e){return e.length===1?e[0]:at(e)}s(st,"calcLabelPosition");var tt=s((e,t=2)=>{let r=Math.pow(10,t);return Math.round(e*r)/r},"roundNumber"),B=s((e,t)=>{let r,n=t;for(let i of e){if(r){let o=S(i,r);if(o===0)return r;if(o=1)return{x:i.x,y:i.y};if(a>0&&a<1)return{x:tt((1-a)*r.x+a*i.x,5),y:tt((1-a)*r.y+a*i.y,5)}}}r=i}throw new Error("Could not find a suitable point for the given distance")},"calculatePoint"),bt=s((e,t,r)=>{f.info(`our points ${JSON.stringify(t)}`),t[0]!==r&&(t=t.reverse());let i=B(t,25),o=e?10:5,a=Math.atan2(t[0].y-i.y,t[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(a)*o+(t[0].x+i.x)/2,l.y=-Math.cos(a)*o+(t[0].y+i.y)/2,l},"calcCardinalityPosition");function ct(e,t,r){let n=structuredClone(r);f.info("our points",n),t!=="start_left"&&t!=="start_right"&&n.reverse();let i=25+e,o=B(n,i),a=10+e*.5,l=Math.atan2(n[0].y-o.y,n[0].x-o.x),c={x:0,y:0};return t==="start_left"?(c.x=Math.sin(l+Math.PI)*a+(n[0].x+o.x)/2,c.y=-Math.cos(l+Math.PI)*a+(n[0].y+o.y)/2):t==="end_right"?(c.x=Math.sin(l-Math.PI)*a+(n[0].x+o.x)/2-5,c.y=-Math.cos(l-Math.PI)*a+(n[0].y+o.y)/2-5):t==="end_left"?(c.x=Math.sin(l)*a+(n[0].x+o.x)/2-5,c.y=-Math.cos(l)*a+(n[0].y+o.y)/2-5):(c.x=Math.sin(l)*a+(n[0].x+o.x)/2,c.y=-Math.cos(l)*a+(n[0].y+o.y)/2),c}s(ct,"calcTerminalLabelPosition");function lt(e){let t="",r="";for(let n of e)n!==void 0&&(n.startsWith("color:")||n.startsWith("text-align:")?r=r+n+";":t=t+n+";");return{style:t,labelStyle:r}}s(lt,"getStylesFromArray");var et=0,St=s(()=>(et++,"id-"+Math.random().toString(36).substr(2,12)+"-"+et),"generateId");function ut(e){let t="",r="0123456789abcdef",n=r.length;for(let i=0;iut(e.length),"random"),Ct=s(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),Pt=s(function(e,t){let r=t.text.replace($.lineBreakRegex," "),[,n]=P(t.fontSize),i=e.append("text");i.attr("x",t.x),i.attr("y",t.y),i.style("text-anchor",t.anchor),i.style("font-family",t.fontFamily),i.style("font-size",n),i.style("font-weight",t.fontWeight),i.attr("fill",t.fill),t.class!==void 0&&i.attr("class",t.class);let o=i.append("tspan");return o.attr("x",t.x+t.textMargin*2),o.attr("fill",t.fill),o.text(r),i},"drawSimpleText"),Wt=M((e,t,r)=>{if(!e||(r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},r),$.lineBreakRegex.test(e)))return e;let n=e.split(" ").filter(Boolean),i=[],o="";return n.forEach((a,l)=>{let c=v(`${a} `,r),u=v(o,r);if(c>t){let{hyphenatedStrings:g,remainingWord:h}=It(a,t,"-",r);i.push(o,...g),o=h}else u+c>=t?(i.push(o),o=a):o=[o,a].filter(Boolean).join(" ");l+1===n.length&&i.push(o)}),i.filter(a=>a!=="").join(r.joinWith)},(e,t,r)=>`${e}${t}${r.fontSize}${r.fontWeight}${r.fontFamily}${r.joinWith}`),It=M((e,t,r="-",n)=>{n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},n);let i=[...e],o=[],a="";return i.forEach((l,c)=>{let u=`${a}${l}`;if(v(u,n)>=t){let x=c+1,g=i.length===x,h=`${u}${r}`;o.push(g?u:h),a=""}else a=u}),{hyphenatedStrings:o,remainingWord:a}},(e,t,r="-",n)=>`${e}${t}${r}${n.fontSize}${n.fontWeight}${n.fontFamily}`);function ht(e,t){return C(e,t).height}s(ht,"calculateTextHeight");function v(e,t){return C(e,t).width}s(v,"calculateTextWidth");var C=M((e,t)=>{let{fontSize:r=12,fontFamily:n="Arial",fontWeight:i=400}=t;if(!e)return{width:0,height:0};let[,o]=P(r),a=["sans-serif",n],l=e.split($.lineBreakRegex),c=[],u=T("body");if(!u.remove)return{width:0,height:0,lineHeight:0};let y=u.append("svg");for(let g of a){let h=0,d={width:0,height:0,lineHeight:0};for(let gt of l){let W=Ct();W.text=gt||yt;let I=Pt(y,W).style("font-size",o).style("font-weight",i).style("font-family",g),p=(I._groups||I)[0][0].getBBox();if(p.width===0&&p.height===0)throw new Error("svg element not in render tree");d.width=Math.round(Math.max(d.width,p.width)),h=Math.round(p.height),d.height+=h,d.lineHeight=Math.round(Math.max(d.lineHeight,h))}c.push(d)}y.remove();let x=isNaN(c[1].height)||isNaN(c[1].width)||isNaN(c[1].lineHeight)||c[0].height>c[1].height&&c[0].width>c[1].width&&c[0].lineHeight>c[1].lineHeight?0:1;return c[x]},(e,t)=>`${e}${t.fontSize}${t.fontWeight}${t.fontFamily}`),Lt=class{constructor(e=!1,t){this.count=0,this.count=t?t.length:0,this.next=e?()=>this.count++:()=>Date.now()}static{s(this,"InitIDGenerator")}},w,Tt=s(function(e){return w=w||document.createElement("div"),e=escape(e).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),w.innerHTML=e,unescape(w.textContent)},"entityDecode");function Et(e){return"str"in e}s(Et,"isDetailedError");var Ft=s((e,t,r,n)=>{if(!n)return;let i=e.node()?.getBBox();i&&e.append("text").text(n).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-r).attr("class",t)},"insertTitle"),P=s(e=>{if(typeof e=="number")return[e,e+"px"];let t=parseInt(e??"",10);return Number.isNaN(t)?[void 0,void 0]:e===String(t)?[t,e+"px"]:[t,e]},"parseFontSize");function dt(e,t){return L({},e,t)}s(dt,"cleanAndMerge");var zt={assignWithDepth:b,wrapLabel:Wt,calculateTextHeight:ht,calculateTextWidth:v,calculateTextDimensions:C,cleanAndMerge:dt,detectInit:Mt,detectDirective:rt,isSubstringInArray:$t,interpolateToCurve:it,calcLabelPosition:st,calcCardinalityPosition:bt,calcTerminalLabelPosition:ct,formatUrl:ot,getStylesFromArray:lt,generateId:St,random:Bt,runFunc:wt,entityDecode:Tt,insertTitle:Ft,isLabelCoordinateInPath:ft,parseFontSize:P,InitIDGenerator:Lt},jt=s(function(e){let t=e;return t=t.replace(/style.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),t=t.replace(/classDef.*:\S*#.*;/g,function(r){return r.substring(0,r.length-1)}),t=t.replace(/#\w+;/g,function(r){let n=r.substring(1,r.length-1);return/^\+?\d+$/.test(n)?"\uFB02\xB0\xB0"+n+"\xB6\xDF":"\uFB02\xB0"+n+"\xB6\xDF"}),t},"encodeEntities"),Ut=s(function(e){return e.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),kt=s((e,t,{counter:r=0,prefix:n,suffix:i},o)=>o||`${n?`${n}_`:""}${e}_${t}_${r}${i?`_${i}`:""}`,"getEdgeId");function _t(e){return e??null}s(_t,"handleUndefinedAttr");function ft(e,t){let r=Math.round(e.x),n=Math.round(e.y),i=t.replace(/(\d+\.\d+)/g,o=>Math.round(parseFloat(o)).toString());return i.includes(r.toString())||i.includes(n.toString())}s(ft,"isLabelCoordinateInPath");export{yt as a,Ot as b,it as c,lt as d,St as e,Bt as f,Wt as g,ht as h,v as i,Et as j,P as k,dt as l,zt as m,jt as n,Ut as o,kt as p,_t as q}; diff --git a/src/google/adk/cli/browser/chunk-257HQBMN.js b/src/google/adk/cli/browser/chunk-WEKWG7SS.js similarity index 70% rename from src/google/adk/cli/browser/chunk-257HQBMN.js rename to src/google/adk/cli/browser/chunk-WEKWG7SS.js index 8ca8bd8847..9c9829b833 100644 --- a/src/google/adk/cli/browser/chunk-257HQBMN.js +++ b/src/google/adk/cli/browser/chunk-WEKWG7SS.js @@ -1,9 +1,9 @@ -import{a as qt}from"./chunk-XMBKBASC.js";import{a as Jt}from"./chunk-B2DSW4QB.js";import{a as et,d as jt}from"./chunk-JHZIBEJC.js";import{a as Zt,b as Gt}from"./chunk-DRBE27N3.js";import{f as ht}from"./chunk-WXI2IBAH.js";import{d as Vt,m as rt,o as Lt}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{A as tt,E as F,G as kt,H as Wt,M as Yt,N as Ht,R as Kt,Y as O,a as Ft,b as Pt}from"./chunk-QFMJV7VH.js";import{M as Ut,Q as Xt,a as D,g,i as L}from"./chunk-JRNAXTJ7.js";import{e as Mt}from"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{a as at,b as st,j as _}from"./chunk-RMXJBC7V.js";var vt=(function(){var e=g(function(B,m,d,b){for(d=d||{},b=B.length;b--;d[B[b]]=m);return d},"o"),t=[1,15],a=[1,7],i=[1,13],l=[1,14],s=[1,19],r=[1,16],n=[1,17],c=[1,18],x=[8,30],o=[8,10,21,28,29,30,31,39,43,46],u=[1,23],y=[1,24],f=[8,10,15,16,21,28,29,30,31,39,43,46],w=[8,10,15,16,21,27,28,29,30,31,39,43,46],v=[1,49],k={trace:g(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:g(function(m,d,b,S,E,h,Y){var p=h.length-1;switch(E){case 4:S.getLogger().debug("Rule: separator (NL) ");break;case 5:S.getLogger().debug("Rule: separator (Space) ");break;case 6:S.getLogger().debug("Rule: separator (EOF) ");break;case 7:S.getLogger().debug("Rule: hierarchy: ",h[p-1]),S.setHierarchy(h[p-1]);break;case 8:S.getLogger().debug("Stop NL ");break;case 9:S.getLogger().debug("Stop EOF ");break;case 10:S.getLogger().debug("Stop NL2 ");break;case 11:S.getLogger().debug("Stop EOF2 ");break;case 12:S.getLogger().debug("Rule: statement: ",h[p]),typeof h[p].length=="number"?this.$=h[p]:this.$=[h[p]];break;case 13:S.getLogger().debug("Rule: statement #2: ",h[p-1]),this.$=[h[p-1]].concat(h[p]);break;case 14:S.getLogger().debug("Rule: link: ",h[p],m),this.$={edgeTypeStr:h[p],label:""};break;case 15:S.getLogger().debug("Rule: LABEL link: ",h[p-3],h[p-1],h[p]),this.$={edgeTypeStr:h[p],label:h[p-1]};break;case 18:let z=parseInt(h[p]),q=S.generateId();this.$={id:q,type:"space",label:"",width:z,children:[]};break;case 23:S.getLogger().debug("Rule: (nodeStatement link node) ",h[p-2],h[p-1],h[p]," typestr: ",h[p-1].edgeTypeStr);let Z=S.edgeStrToEdgeData(h[p-1].edgeTypeStr);this.$=[{id:h[p-2].id,label:h[p-2].label,type:h[p-2].type,directions:h[p-2].directions},{id:h[p-2].id+"-"+h[p].id,start:h[p-2].id,end:h[p].id,label:h[p-1].label,type:"edge",directions:h[p].directions,arrowTypeEnd:Z,arrowTypeStart:"arrow_open"},{id:h[p].id,label:h[p].label,type:S.typeStr2Type(h[p].typeStr),directions:h[p].directions}];break;case 24:S.getLogger().debug("Rule: nodeStatement (abc88 node size) ",h[p-1],h[p]),this.$={id:h[p-1].id,label:h[p-1].label,type:S.typeStr2Type(h[p-1].typeStr),directions:h[p-1].directions,widthInColumns:parseInt(h[p],10)};break;case 25:S.getLogger().debug("Rule: nodeStatement (node) ",h[p]),this.$={id:h[p].id,label:h[p].label,type:S.typeStr2Type(h[p].typeStr),directions:h[p].directions,widthInColumns:1};break;case 26:S.getLogger().debug("APA123",this?this:"na"),S.getLogger().debug("COLUMNS: ",h[p]),this.$={type:"column-setting",columns:h[p]==="auto"?-1:parseInt(h[p])};break;case 27:S.getLogger().debug("Rule: id-block statement : ",h[p-2],h[p-1]);let Rt=S.generateId();this.$=st(at({},h[p-2]),{type:"composite",children:h[p-1]});break;case 28:S.getLogger().debug("Rule: blockStatement : ",h[p-2],h[p-1],h[p]);let lt=S.generateId();this.$={id:lt,type:"composite",label:"",children:h[p-1]};break;case 29:S.getLogger().debug("Rule: node (NODE_ID separator): ",h[p]),this.$={id:h[p]};break;case 30:S.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",h[p-1],h[p]),this.$={id:h[p-1],label:h[p].label,typeStr:h[p].typeStr,directions:h[p].directions};break;case 31:S.getLogger().debug("Rule: dirList: ",h[p]),this.$=[h[p]];break;case 32:S.getLogger().debug("Rule: dirList: ",h[p-1],h[p]),this.$=[h[p-1]].concat(h[p]);break;case 33:S.getLogger().debug("Rule: nodeShapeNLabel: ",h[p-2],h[p-1],h[p]),this.$={typeStr:h[p-2]+h[p],label:h[p-1]};break;case 34:S.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",h[p-3],h[p-2]," #3:",h[p-1],h[p]),this.$={typeStr:h[p-3]+h[p],label:h[p-2],directions:h[p-1]};break;case 35:case 36:this.$={type:"classDef",id:h[p-1].trim(),css:h[p].trim()};break;case 37:this.$={type:"applyClass",id:h[p-1].trim(),styleClass:h[p].trim()};break;case 38:this.$={type:"applyStyles",id:h[p-1].trim(),stylesStr:h[p].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{8:[1,20]},e(x,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:a,28:i,29:l,31:s,39:r,43:n,46:c}),e(o,[2,16],{14:22,15:u,16:y}),e(o,[2,17]),e(o,[2,18]),e(o,[2,19]),e(o,[2,20]),e(o,[2,21]),e(o,[2,22]),e(f,[2,25],{27:[1,25]}),e(o,[2,26]),{19:26,26:12,31:s},{10:t,11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(w,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(x,[2,13]),{26:35,31:s},{31:[2,14]},{17:[1,36]},e(f,[2,24]),{10:t,11:37,13:4,14:22,15:u,16:y,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(w,[2,30]),{18:[1,43]},{18:[1,44]},e(f,[2,23]),{18:[1,45]},{30:[1,46]},e(o,[2,28]),e(o,[2,35]),e(o,[2,36]),e(o,[2,37]),e(o,[2,38]),{36:[1,47]},{33:48,34:v},{15:[1,50]},e(o,[2,27]),e(w,[2,33]),{38:[1,51]},{33:52,34:v,38:[2,31]},{31:[2,15]},e(w,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:g(function(m,d){if(d.recoverable)this.trace(m);else{var b=new Error(m);throw b.hash=d,b}},"parseError"),parse:g(function(m){var d=this,b=[0],S=[],E=[null],h=[],Y=this.table,p="",z=0,q=0,Z=0,Rt=2,lt=1,Ee=h.slice.call(arguments,1),A=Object.create(this.lexer),J={yy:{}};for(var xt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xt)&&(J.yy[xt]=this.yy[xt]);A.setInput(m,J.yy),J.yy.lexer=A,J.yy.parser=this,typeof A.yylloc>"u"&&(A.yylloc={});var bt=A.yylloc;h.push(bt);var _e=A.options&&A.options.ranges;typeof J.yy.parseError=="function"?this.parseError=J.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function De(H){b.length=b.length-2*H,E.length=E.length-H,h.length=h.length-H}g(De,"popStack");function zt(){var H;return H=S.pop()||A.lex()||lt,typeof H!="number"&&(H instanceof Array&&(S=H,H=S.pop()),H=d.symbols_[H]||H),H}g(zt,"lex");for(var W,yt,Q,U,Qr,mt,$={},ct,G,At,ot;;){if(Q=b[b.length-1],this.defaultActions[Q]?U=this.defaultActions[Q]:((W===null||typeof W>"u")&&(W=zt()),U=Y[Q]&&Y[Q][W]),typeof U>"u"||!U.length||!U[0]){var wt="";ot=[];for(ct in Y[Q])this.terminals_[ct]&&ct>Rt&&ot.push("'"+this.terminals_[ct]+"'");A.showPosition?wt="Parse error on line "+(z+1)+`: +import{a as Jt}from"./chunk-VS3KHVTS.js";import{a as Qt}from"./chunk-B2DSW4QB.js";import{a as Ft}from"./chunk-UFYCV57Y.js";import{a as et,d as Vt}from"./chunk-FDMPUWDP.js";import{a as Gt,b as qt}from"./chunk-3TW5HJSC.js";import{f as ht}from"./chunk-4V3PIBXT.js";import{D as rt,F as Lt,u as Zt}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as tt,E as F,G as kt,H as Yt,M as Ht,N as Kt,R as Ut,Y as O,a as Pt,b as Wt}from"./chunk-37QI3DOO.js";import{M as Xt,Q as jt,a as D,g,i as L}from"./chunk-JRNAXTJ7.js";import"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as at,b as st,j as _}from"./chunk-RMXJBC7V.js";var vt=(function(){var e=g(function(B,m,d,b){for(d=d||{},b=B.length;b--;d[B[b]]=m);return d},"o"),t=[1,15],a=[1,7],i=[1,13],l=[1,14],s=[1,19],r=[1,16],n=[1,17],c=[1,18],x=[8,30],o=[8,10,21,28,29,30,31,39,43,46],u=[1,23],y=[1,24],f=[8,10,15,16,21,28,29,30,31,39,43,46],w=[8,10,15,16,21,27,28,29,30,31,39,43,46],v=[1,49],k={trace:g(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:g(function(m,d,b,S,E,h,Y){var p=h.length-1;switch(E){case 4:S.getLogger().debug("Rule: separator (NL) ");break;case 5:S.getLogger().debug("Rule: separator (Space) ");break;case 6:S.getLogger().debug("Rule: separator (EOF) ");break;case 7:S.getLogger().debug("Rule: hierarchy: ",h[p-1]),S.setHierarchy(h[p-1]);break;case 8:S.getLogger().debug("Stop NL ");break;case 9:S.getLogger().debug("Stop EOF ");break;case 10:S.getLogger().debug("Stop NL2 ");break;case 11:S.getLogger().debug("Stop EOF2 ");break;case 12:S.getLogger().debug("Rule: statement: ",h[p]),typeof h[p].length=="number"?this.$=h[p]:this.$=[h[p]];break;case 13:S.getLogger().debug("Rule: statement #2: ",h[p-1]),this.$=[h[p-1]].concat(h[p]);break;case 14:S.getLogger().debug("Rule: link: ",h[p],m),this.$={edgeTypeStr:h[p],label:""};break;case 15:S.getLogger().debug("Rule: LABEL link: ",h[p-3],h[p-1],h[p]),this.$={edgeTypeStr:h[p],label:h[p-1]};break;case 18:let z=parseInt(h[p]),q=S.generateId();this.$={id:q,type:"space",label:"",width:z,children:[]};break;case 23:S.getLogger().debug("Rule: (nodeStatement link node) ",h[p-2],h[p-1],h[p]," typestr: ",h[p-1].edgeTypeStr);let Z=S.edgeStrToEdgeData(h[p-1].edgeTypeStr);this.$=[{id:h[p-2].id,label:h[p-2].label,type:h[p-2].type,directions:h[p-2].directions},{id:h[p-2].id+"-"+h[p].id,start:h[p-2].id,end:h[p].id,label:h[p-1].label,type:"edge",directions:h[p].directions,arrowTypeEnd:Z,arrowTypeStart:"arrow_open"},{id:h[p].id,label:h[p].label,type:S.typeStr2Type(h[p].typeStr),directions:h[p].directions}];break;case 24:S.getLogger().debug("Rule: nodeStatement (abc88 node size) ",h[p-1],h[p]),this.$={id:h[p-1].id,label:h[p-1].label,type:S.typeStr2Type(h[p-1].typeStr),directions:h[p-1].directions,widthInColumns:parseInt(h[p],10)};break;case 25:S.getLogger().debug("Rule: nodeStatement (node) ",h[p]),this.$={id:h[p].id,label:h[p].label,type:S.typeStr2Type(h[p].typeStr),directions:h[p].directions,widthInColumns:1};break;case 26:S.getLogger().debug("APA123",this?this:"na"),S.getLogger().debug("COLUMNS: ",h[p]),this.$={type:"column-setting",columns:h[p]==="auto"?-1:parseInt(h[p])};break;case 27:S.getLogger().debug("Rule: id-block statement : ",h[p-2],h[p-1]);let zt=S.generateId();this.$=st(at({},h[p-2]),{type:"composite",children:h[p-1]});break;case 28:S.getLogger().debug("Rule: blockStatement : ",h[p-2],h[p-1],h[p]);let lt=S.generateId();this.$={id:lt,type:"composite",label:"",children:h[p-1]};break;case 29:S.getLogger().debug("Rule: node (NODE_ID separator): ",h[p]),this.$={id:h[p]};break;case 30:S.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",h[p-1],h[p]),this.$={id:h[p-1],label:h[p].label,typeStr:h[p].typeStr,directions:h[p].directions};break;case 31:S.getLogger().debug("Rule: dirList: ",h[p]),this.$=[h[p]];break;case 32:S.getLogger().debug("Rule: dirList: ",h[p-1],h[p]),this.$=[h[p-1]].concat(h[p]);break;case 33:S.getLogger().debug("Rule: nodeShapeNLabel: ",h[p-2],h[p-1],h[p]),this.$={typeStr:h[p-2]+h[p],label:h[p-1]};break;case 34:S.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",h[p-3],h[p-2]," #3:",h[p-1],h[p]),this.$={typeStr:h[p-3]+h[p],label:h[p-2],directions:h[p-1]};break;case 35:case 36:this.$={type:"classDef",id:h[p-1].trim(),css:h[p].trim()};break;case 37:this.$={type:"applyClass",id:h[p-1].trim(),styleClass:h[p].trim()};break;case 38:this.$={type:"applyStyles",id:h[p-1].trim(),stylesStr:h[p].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:t,11:3,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{8:[1,20]},e(x,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:t,21:a,28:i,29:l,31:s,39:r,43:n,46:c}),e(o,[2,16],{14:22,15:u,16:y}),e(o,[2,17]),e(o,[2,18]),e(o,[2,19]),e(o,[2,20]),e(o,[2,21]),e(o,[2,22]),e(f,[2,25],{27:[1,25]}),e(o,[2,26]),{19:26,26:12,31:s},{10:t,11:27,13:4,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},e(w,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},e(x,[2,13]),{26:35,31:s},{31:[2,14]},{17:[1,36]},e(f,[2,24]),{10:t,11:37,13:4,14:22,15:u,16:y,19:5,20:6,21:a,22:8,23:9,24:10,25:11,26:12,28:i,29:l,31:s,39:r,43:n,46:c},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},e(w,[2,30]),{18:[1,43]},{18:[1,44]},e(f,[2,23]),{18:[1,45]},{30:[1,46]},e(o,[2,28]),e(o,[2,35]),e(o,[2,36]),e(o,[2,37]),e(o,[2,38]),{36:[1,47]},{33:48,34:v},{15:[1,50]},e(o,[2,27]),e(w,[2,33]),{38:[1,51]},{33:52,34:v,38:[2,31]},{31:[2,15]},e(w,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:g(function(m,d){if(d.recoverable)this.trace(m);else{var b=new Error(m);throw b.hash=d,b}},"parseError"),parse:g(function(m){var d=this,b=[0],S=[],E=[null],h=[],Y=this.table,p="",z=0,q=0,Z=0,zt=2,lt=1,_e=h.slice.call(arguments,1),A=Object.create(this.lexer),J={yy:{}};for(var xt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,xt)&&(J.yy[xt]=this.yy[xt]);A.setInput(m,J.yy),J.yy.lexer=A,J.yy.parser=this,typeof A.yylloc>"u"&&(A.yylloc={});var bt=A.yylloc;h.push(bt);var De=A.options&&A.options.ranges;typeof J.yy.parseError=="function"?this.parseError=J.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Te(H){b.length=b.length-2*H,E.length=E.length-H,h.length=h.length-H}g(Te,"popStack");function At(){var H;return H=S.pop()||A.lex()||lt,typeof H!="number"&&(H instanceof Array&&(S=H,H=S.pop()),H=d.symbols_[H]||H),H}g(At,"lex");for(var W,yt,Q,U,ea,mt,$={},ct,G,Mt,ot;;){if(Q=b[b.length-1],this.defaultActions[Q]?U=this.defaultActions[Q]:((W===null||typeof W>"u")&&(W=At()),U=Y[Q]&&Y[Q][W]),typeof U>"u"||!U.length||!U[0]){var wt="";ot=[];for(ct in Y[Q])this.terminals_[ct]&&ct>zt&&ot.push("'"+this.terminals_[ct]+"'");A.showPosition?wt="Parse error on line "+(z+1)+`: `+A.showPosition()+` -Expecting `+ot.join(", ")+", got '"+(this.terminals_[W]||W)+"'":wt="Parse error on line "+(z+1)+": Unexpected "+(W==lt?"end of input":"'"+(this.terminals_[W]||W)+"'"),this.parseError(wt,{text:A.match,token:this.terminals_[W]||W,line:A.yylineno,loc:bt,expected:ot})}if(U[0]instanceof Array&&U.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Q+", token: "+W);switch(U[0]){case 1:b.push(W),E.push(A.yytext),h.push(A.yylloc),b.push(U[1]),W=null,yt?(W=yt,yt=null):(q=A.yyleng,p=A.yytext,z=A.yylineno,bt=A.yylloc,Z>0&&Z--);break;case 2:if(G=this.productions_[U[1]][1],$.$=E[E.length-G],$._$={first_line:h[h.length-(G||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(G||1)].first_column,last_column:h[h.length-1].last_column},_e&&($._$.range=[h[h.length-(G||1)].range[0],h[h.length-1].range[1]]),mt=this.performAction.apply($,[p,q,z,J.yy,U[1],E,h].concat(Ee)),typeof mt<"u")return mt;G&&(b=b.slice(0,-1*G*2),E=E.slice(0,-1*G),h=h.slice(0,-1*G)),b.push(this.productions_[U[1]][0]),E.push($.$),h.push($._$),At=Y[b[b.length-2]][b[b.length-1]],b.push(At);break;case 3:return!0}}return!0},"parse")},T=(function(){var B={EOF:1,parseError:g(function(d,b){if(this.yy.parser)this.yy.parser.parseError(d,b);else throw new Error(d)},"parseError"),setInput:g(function(m,d){return this.yy=d||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:g(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var d=m.match(/(?:\r\n?|\n).*/g);return d?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:g(function(m){var d=m.length,b=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-d),this.offset-=d;var S=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),b.length-1&&(this.yylineno-=b.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:b?(b.length===S.length?this.yylloc.first_column:0)+S[S.length-b.length].length-b[0].length:this.yylloc.first_column-d},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-d]),this.yyleng=this.yytext.length,this},"unput"),more:g(function(){return this._more=!0,this},"more"),reject:g(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +Expecting `+ot.join(", ")+", got '"+(this.terminals_[W]||W)+"'":wt="Parse error on line "+(z+1)+": Unexpected "+(W==lt?"end of input":"'"+(this.terminals_[W]||W)+"'"),this.parseError(wt,{text:A.match,token:this.terminals_[W]||W,line:A.yylineno,loc:bt,expected:ot})}if(U[0]instanceof Array&&U.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Q+", token: "+W);switch(U[0]){case 1:b.push(W),E.push(A.yytext),h.push(A.yylloc),b.push(U[1]),W=null,yt?(W=yt,yt=null):(q=A.yyleng,p=A.yytext,z=A.yylineno,bt=A.yylloc,Z>0&&Z--);break;case 2:if(G=this.productions_[U[1]][1],$.$=E[E.length-G],$._$={first_line:h[h.length-(G||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(G||1)].first_column,last_column:h[h.length-1].last_column},De&&($._$.range=[h[h.length-(G||1)].range[0],h[h.length-1].range[1]]),mt=this.performAction.apply($,[p,q,z,J.yy,U[1],E,h].concat(_e)),typeof mt<"u")return mt;G&&(b=b.slice(0,-1*G*2),E=E.slice(0,-1*G),h=h.slice(0,-1*G)),b.push(this.productions_[U[1]][0]),E.push($.$),h.push($._$),Mt=Y[b[b.length-2]][b[b.length-1]],b.push(Mt);break;case 3:return!0}}return!0},"parse")},T=(function(){var B={EOF:1,parseError:g(function(d,b){if(this.yy.parser)this.yy.parser.parseError(d,b);else throw new Error(d)},"parseError"),setInput:g(function(m,d){return this.yy=d||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:g(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var d=m.match(/(?:\r\n?|\n).*/g);return d?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),m},"input"),unput:g(function(m){var d=m.length,b=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-d),this.offset-=d;var S=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),b.length-1&&(this.yylineno-=b.length-1);var E=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:b?(b.length===S.length?this.yylloc.first_column:0)+S[S.length-b.length].length-b[0].length:this.yylloc.first_column-d},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-d]),this.yyleng=this.yytext.length,this},"unput"),more:g(function(){return this._more=!0,this},"more"),reject:g(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). `+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:g(function(m){this.unput(this.match.slice(m))},"less"),pastInput:g(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:g(function(){var m=this.match;return m.length<20&&(m+=this._input.substr(0,20-m.length)),(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:g(function(){var m=this.pastInput(),d=new Array(m.length+1).join("-");return m+this.upcomingInput()+` `+d+"^"},"showPosition"),test_match:g(function(m,d){var b,S,E;if(this.options.backtrack_lexer&&(E={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(E.yylloc.range=this.yylloc.range.slice(0))),S=m[0].match(/(?:\r\n?|\n).*/g),S&&(this.yylineno+=S.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:S?S[S.length-1].length-S[S.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(m[0].length),this.matched+=m[0],b=this.performAction.call(this,this.yy,this,d,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),b)return b;if(this._backtrack){for(var h in E)this[h]=E[h];return!1}return!1},"test_match"),next:g(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var m,d,b,S;this._more||(this.yytext="",this.match="");for(var E=this._currentRules(),h=0;hd[0].length)){if(d=b,S=h,this.options.backtrack_lexer){if(m=this.test_match(b,E[h]),m!==!1)return m;if(this._backtrack){d=!1;continue}else return!1}else if(!this.options.flex)break}return d?(m=this.test_match(d,E[S]),m!==!1?m:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:g(function(){var d=this.next();return d||this.lex()},"lex"),begin:g(function(d){this.conditionStack.push(d)},"begin"),popState:g(function(){var d=this.conditionStack.length-1;return d>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:g(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:g(function(d){return d=this.conditionStack.length-1-Math.abs(d||0),d>=0?this.conditionStack[d]:"INITIAL"},"topState"),pushState:g(function(d){this.begin(d)},"pushState"),stateStackSize:g(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:g(function(d,b,S,E){var h=E;switch(S){case 0:return d.getLogger().debug("Found block-beta"),10;break;case 1:return d.getLogger().debug("Found id-block"),29;break;case 2:return d.getLogger().debug("Found block"),10;break;case 3:d.getLogger().debug(".",b.yytext);break;case 4:d.getLogger().debug("_",b.yytext);break;case 5:return 5;case 6:return b.yytext=-1,28;break;case 7:return b.yytext=b.yytext.replace(/columns\s+/,""),d.getLogger().debug("COLUMNS (LEX)",b.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:d.getLogger().debug("LEX: POPPING STR:",b.yytext),this.popState();break;case 13:return d.getLogger().debug("LEX: STR end:",b.yytext),"STR";break;case 14:return b.yytext=b.yytext.replace(/space\:/,""),d.getLogger().debug("SPACE NUM (LEX)",b.yytext),21;break;case 15:return b.yytext="1",d.getLogger().debug("COLUMNS (LEX)",b.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),d.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),d.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),d.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),d.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),d.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),d.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),d.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),d.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),d.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),d.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),d.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),d.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return d.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return d.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return d.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return d.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return d.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return d.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return d.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),d.getLogger().debug("LEX ARR START"),37;break;case 74:return d.getLogger().debug("Lex: NODE_ID",b.yytext),31;break;case 75:return d.getLogger().debug("Lex: EOF",b.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:d.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:d.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return d.getLogger().debug("LEX: NODE_DESCR:",b.yytext),"NODE_DESCR";break;case 83:d.getLogger().debug("LEX POPPING"),this.popState();break;case 84:d.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (right): dir:",b.yytext),"DIR";break;case 86:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (left):",b.yytext),"DIR";break;case 87:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (x):",b.yytext),"DIR";break;case 88:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (y):",b.yytext),"DIR";break;case 89:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (up):",b.yytext),"DIR";break;case 90:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (down):",b.yytext),"DIR";break;case 91:return b.yytext="]>",d.getLogger().debug("Lex (ARROW_DIR end):",b.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return d.getLogger().debug("Lex: LINK","#"+b.yytext+"#"),15;break;case 93:return d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 94:return d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 95:return d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 96:return d.getLogger().debug("Lex: START_LINK",b.yytext),this.pushState("LLABEL"),16;break;case 97:return d.getLogger().debug("Lex: START_LINK",b.yytext),this.pushState("LLABEL"),16;break;case 98:return d.getLogger().debug("Lex: START_LINK",b.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return d.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),d.getLogger().debug("Lex: LINK","#"+b.yytext+"#"),15;break;case 102:return this.popState(),d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 103:return this.popState(),d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 104:return d.getLogger().debug("Lex: COLON",b.yytext),b.yytext=b.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return B})();k.lexer=T;function C(){this.yy={}}return g(C,"Parser"),C.prototype=k,k.Parser=C,new C})();vt.parser=vt;var Te=vt,j=new Map,Bt=[],Et=new Map,Qt="color",$t="fill",Be="bgFill",le=",",Ne=O(),dt=new Map,Ie=g(e=>Yt.sanitizeText(e,Ne),"sanitizeText"),Ce=g(function(e,t=""){let a=dt.get(e);a||(a={id:e,styles:[],textStyles:[]},dt.set(e,a)),t?.split(le).forEach(i=>{let l=i.replace(/([^;]*);/,"$1").trim();if(RegExp(Qt).exec(i)){let r=l.replace($t,Be).replace(Qt,$t);a.textStyles.push(r)}a.styles.push(l)})},"addStyleClass"),Oe=g(function(e,t=""){let a=j.get(e);t!=null&&(a.styles=t.split(le))},"addStyle2Node"),Re=g(function(e,t){e.split(",").forEach(function(a){let i=j.get(a);if(i===void 0){let l=a.trim();i={id:l,type:"na",children:[]},j.set(l,i)}i.classes||(i.classes=[]),i.classes.push(t)})},"setCssClass"),ce=g((e,t)=>{let a=e.flat(),i=[],s=a.find(r=>r?.type==="column-setting")?.columns??-1;for(let r of a){if(typeof s=="number"&&s>0&&r.type!=="column-setting"&&typeof r.widthInColumns=="number"&&r.widthInColumns>s&&L.warn(`Block ${r.id} width ${r.widthInColumns} exceeds configured column width ${s}`),r.label&&(r.label=Ie(r.label)),r.type==="classDef"){Ce(r.id,r.css);continue}if(r.type==="applyClass"){Re(r.id,r?.styleClass??"");continue}if(r.type==="applyStyles"){r?.stylesStr&&Oe(r.id,r?.stylesStr);continue}if(r.type==="column-setting")t.columns=r.columns??-1;else if(r.type==="edge"){let n=(Et.get(r.id)??0)+1;Et.set(r.id,n),r.id=n+"-"+r.id,Bt.push(r)}else{r.label||(r.type==="composite"?r.label="":r.label=r.id);let n=j.get(r.id);if(n===void 0?j.set(r.id,r):(r.type!=="na"&&(n.type=r.type),r.label!==r.id&&(n.label=r.label)),r.children&&ce(r.children,r),r.type==="space"){let c=r.width??1;for(let x=0;x{L.debug("Clear called"),Kt(),nt={id:"root",type:"composite",children:[],columns:-1},j=new Map([["root",nt]]),Nt=[],dt=new Map,Bt=[],Et=new Map},"clear");function oe(e){switch(L.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return L.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}g(oe,"typeStr2Type");function he(e){return L.debug("typeStr2Type",e),e==="=="?"thick":"normal"}g(he,"edgeTypeStr2Type");function ge(e){switch(e.replace(/^[\s-]+|[\s-]+$/g,"")){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}g(ge,"edgeStrToEdgeData");var te=0,Ae=g(()=>(te++,"id-"+Math.random().toString(36).substr(2,12)+"-"+te),"generateId"),Me=g(e=>{nt.children=e,ce(e,nt),Nt=nt.children},"setHierarchy"),Fe=g(e=>{let t=j.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1},"getColumns"),Pe=g(()=>[...j.values()],"getBlocksFlat"),We=g(()=>Nt||[],"getBlocks"),Ye=g(()=>Bt,"getEdges"),He=g(e=>j.get(e),"getBlock"),Ke=g(e=>{j.set(e.id,e)},"setBlock"),Ue=g(()=>L,"getLogger"),Xe=g(function(){return dt},"getClasses"),je={getConfig:g(()=>tt().block,"getConfig"),typeStr2Type:oe,edgeTypeStr2Type:he,edgeStrToEdgeData:ge,getLogger:Ue,getBlocksFlat:Pe,getBlocks:We,getEdges:Ye,setHierarchy:Me,getBlock:He,setBlock:Ke,getColumns:Fe,getClasses:Xe,clear:ze,generateId:Ae},Ve=je,St=g((e,t)=>{let a=Pt,i=a(e,"r"),l=a(e,"g"),s=a(e,"b");return Ft(i,l,s,t)},"fade"),Ze=g(e=>`.label { +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:g(function(){var d=this.next();return d||this.lex()},"lex"),begin:g(function(d){this.conditionStack.push(d)},"begin"),popState:g(function(){var d=this.conditionStack.length-1;return d>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:g(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:g(function(d){return d=this.conditionStack.length-1-Math.abs(d||0),d>=0?this.conditionStack[d]:"INITIAL"},"topState"),pushState:g(function(d){this.begin(d)},"pushState"),stateStackSize:g(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:g(function(d,b,S,E){var h=E;switch(S){case 0:return d.getLogger().debug("Found block-beta"),10;break;case 1:return d.getLogger().debug("Found id-block"),29;break;case 2:return d.getLogger().debug("Found block"),10;break;case 3:d.getLogger().debug(".",b.yytext);break;case 4:d.getLogger().debug("_",b.yytext);break;case 5:return 5;case 6:return b.yytext=-1,28;break;case 7:return b.yytext=b.yytext.replace(/columns\s+/,""),d.getLogger().debug("COLUMNS (LEX)",b.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:d.getLogger().debug("LEX: POPPING STR:",b.yytext),this.popState();break;case 13:return d.getLogger().debug("LEX: STR end:",b.yytext),"STR";break;case 14:return b.yytext=b.yytext.replace(/space\:/,""),d.getLogger().debug("SPACE NUM (LEX)",b.yytext),21;break;case 15:return b.yytext="1",d.getLogger().debug("COLUMNS (LEX)",b.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),d.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),d.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),d.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),d.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),d.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),d.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),d.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),d.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),d.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),d.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),d.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),d.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),d.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return d.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return d.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return d.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return d.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return d.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return d.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return d.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return d.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),d.getLogger().debug("LEX ARR START"),37;break;case 74:return d.getLogger().debug("Lex: NODE_ID",b.yytext),31;break;case 75:return d.getLogger().debug("Lex: EOF",b.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:d.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:d.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return d.getLogger().debug("LEX: NODE_DESCR:",b.yytext),"NODE_DESCR";break;case 83:d.getLogger().debug("LEX POPPING"),this.popState();break;case 84:d.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (right): dir:",b.yytext),"DIR";break;case 86:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (left):",b.yytext),"DIR";break;case 87:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (x):",b.yytext),"DIR";break;case 88:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (y):",b.yytext),"DIR";break;case 89:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (up):",b.yytext),"DIR";break;case 90:return b.yytext=b.yytext.replace(/^,\s*/,""),d.getLogger().debug("Lex (down):",b.yytext),"DIR";break;case 91:return b.yytext="]>",d.getLogger().debug("Lex (ARROW_DIR end):",b.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return d.getLogger().debug("Lex: LINK","#"+b.yytext+"#"),15;break;case 93:return d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 94:return d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 95:return d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 96:return d.getLogger().debug("Lex: START_LINK",b.yytext),this.pushState("LLABEL"),16;break;case 97:return d.getLogger().debug("Lex: START_LINK",b.yytext),this.pushState("LLABEL"),16;break;case 98:return d.getLogger().debug("Lex: START_LINK",b.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return d.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),d.getLogger().debug("Lex: LINK","#"+b.yytext+"#"),15;break;case 102:return this.popState(),d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 103:return this.popState(),d.getLogger().debug("Lex: LINK",b.yytext),15;break;case 104:return d.getLogger().debug("Lex: COLON",b.yytext),b.yytext=b.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return B})();k.lexer=T;function C(){this.yy={}}return g(C,"Parser"),C.prototype=k,k.Parser=C,new C})();vt.parser=vt;var Be=vt,j=new Map,Bt=[],Et=new Map,$t="color",te="fill",Ne="bgFill",ce=",",Ie=O(),dt=new Map,Nt="",Ce=g(e=>Ht.sanitizeText(e,Ie),"sanitizeText"),Oe=g(function(e,t=""){let a=dt.get(e);a||(a={id:e,styles:[],textStyles:[]},dt.set(e,a)),t?.split(ce).forEach(i=>{let l=i.replace(/([^;]*);/,"$1").trim();if(RegExp($t).exec(i)){let r=l.replace(te,Ne).replace($t,te);a.textStyles.push(r)}a.styles.push(l)})},"addStyleClass"),Re=g(function(e,t=""){let a=j.get(e);t!=null&&(a.styles=t.split(ce))},"addStyle2Node"),ze=g(function(e,t){e.split(",").forEach(function(a){let i=j.get(a);if(i===void 0){let l=a.trim();i={id:l,type:"na",children:[]},j.set(l,i)}i.classes||(i.classes=[]),i.classes.push(t)})},"setCssClass"),oe=g((e,t)=>{let a=e.flat(),i=[],s=a.find(r=>r?.type==="column-setting")?.columns??-1;for(let r of a){if(typeof s=="number"&&s>0&&r.type!=="column-setting"&&typeof r.widthInColumns=="number"&&r.widthInColumns>s&&L.warn(`Block ${r.id} width ${r.widthInColumns} exceeds configured column width ${s}`),r.label&&(r.label=Ce(r.label)),r.type==="classDef"){Oe(r.id,r.css);continue}if(r.type==="applyClass"){ze(r.id,r?.styleClass??"");continue}if(r.type==="applyStyles"){r?.stylesStr&&Re(r.id,r?.stylesStr);continue}if(r.type==="column-setting")t.columns=r.columns??-1;else if(r.type==="edge"){let n=(Et.get(r.id)??0)+1;Et.set(r.id,n),r.id=n+"-"+r.id,Bt.push(r)}else{r.label||(r.type==="composite"?r.label="":r.label=r.id);let n=j.get(r.id);if(n===void 0?j.set(r.id,r):(r.type!=="na"&&(n.type=r.type),r.label!==r.id&&(n.label=r.label)),r.children&&oe(r.children,r),r.type==="space"){let c=r.width??1;for(let x=0;x{L.debug("Clear called"),Ut(),nt={id:"root",type:"composite",children:[],columns:-1},j=new Map([["root",nt]]),It=[],dt=new Map,Bt=[],Et=new Map,Nt=""},"clear");function he(e){switch(L.debug("typeStr2Type",e),e){case"[]":return"square";case"()":return L.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}g(he,"typeStr2Type");function ge(e){return L.debug("typeStr2Type",e),e==="=="?"thick":"normal"}g(ge,"edgeTypeStr2Type");function de(e){switch(e.replace(/^[\s-]+|[\s-]+$/g,"")){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}g(de,"edgeStrToEdgeData");var ee=0,Me=g(()=>(ee++,"id-"+Math.random().toString(36).substr(2,12)+"-"+ee),"generateId"),Fe=g(e=>{nt.children=e,oe(e,nt),It=nt.children},"setHierarchy"),Pe=g(e=>{let t=j.get(e);return t?t.columns?t.columns:t.children?t.children.length:-1:-1},"getColumns"),We=g(()=>[...j.values()],"getBlocksFlat"),Ye=g(()=>It||[],"getBlocks"),He=g(()=>Bt,"getEdges"),Ke=g(e=>j.get(e),"getBlock"),Ue=g(e=>{j.set(e.id,e)},"setBlock"),Xe=g(e=>{Nt=e},"setDiagramId"),je=g(()=>Nt,"getDiagramId"),Ve=g(()=>L,"getLogger"),Ze=g(function(){return dt},"getClasses"),Ge={getConfig:g(()=>tt().block,"getConfig"),typeStr2Type:he,edgeTypeStr2Type:ge,edgeStrToEdgeData:de,getLogger:Ve,getBlocksFlat:We,getBlocks:Ye,getEdges:He,setHierarchy:Fe,getBlock:Ke,setBlock:Ue,getColumns:Pe,getClasses:Ze,clear:Ae,generateId:Me,setDiagramId:Xe,getDiagramId:je},qe=Ge,St=g((e,t)=>{let a=Wt,i=a(e,"r"),l=a(e,"g"),s=a(e,"b");return Pt(i,l,s,t)},"fade"),Je=g(e=>`.label { font-family: ${e.fontFamily}; color: ${e.nodeTextColor||e.textColor}; } @@ -125,8 +125,8 @@ Expecting `+ot.join(", ")+", got '"+(this.terminals_[W]||W)+"'":wt="Parse error font-size: 18px; fill: ${e.textColor}; } - ${Jt()} -`,"getStyles"),Ge=Ze,qe=g((e,t,a,i)=>{t.forEach(l=>{nr[l](e,a,i)})},"insertMarkers"),Je=g((e,t,a)=>{L.trace("Making markers for ",a),e.append("defs").append("marker").attr("id",a+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),Qe=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),$e=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),tr=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),er=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),e.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),rr=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),ar=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),sr=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),ir=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),nr={extension:Je,composition:Qe,aggregation:$e,dependency:tr,lollipop:er,point:rr,circle:ar,cross:sr,barb:ir},lr=qe,R=O()?.block?.padding??8;function _t(e,t){if(e===0||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(e===1)return{px:0,py:t};let a=t%e,i=Math.floor(t/e);return{px:a,py:i}}g(_t,"calculateBlockPosition");var cr=g(e=>{let t=0,a=0;for(let i of e.children){let{width:l,height:s,x:r,y:n}=i.size??{width:0,height:0,x:0,y:0};L.debug("getMaxChildSize abc95 child:",i.id,"width:",l,"height:",s,"x:",r,"y:",n,i.type),i.type!=="space"&&(l>t&&(t=l/(i.widthInColumns??1)),s>a&&(a=s))}return{width:t,height:a}},"getMaxChildSize");function ut(e,t,a=0,i=0){L.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"siblingWidth",a),e?.size?.width||(e.size={width:a,height:i,x:0,y:0});let l=0,s=0;if(e.children?.length>0){for(let f of e.children)ut(f,t);let r=cr(e);l=r.width,s=r.height,L.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",l,s);for(let f of e.children)f.size&&(L.debug(`abc95 Setting size of children of ${e.id} id=${f.id} ${l} ${s} ${JSON.stringify(f.size)}`),f.size.width=l*(f.widthInColumns??1)+R*((f.widthInColumns??1)-1),f.size.height=s,f.size.x=0,f.size.y=0,L.debug(`abc95 updating size of ${e.id} children child:${f.id} maxWidth:${l} maxHeight:${s}`));for(let f of e.children)ut(f,t,l,s);let n=e.columns??-1,c=0;for(let f of e.children)c+=f.widthInColumns??1;let x=e.children.length;n>0&&n0?Math.min(e.children.length,n):e.children.length;if(f>0){let w=(u-f*R-R)/f;L.debug("abc95 (growing to fit) width",e.id,u,e.size?.width,w);for(let v of e.children)v.size&&(v.size.width=w)}}e.size={width:u,height:y,x:0,y:0}}L.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}g(ut,"setBlockSizes");function It(e,t){L.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);let a=e.columns??-1;if(L.debug("layoutBlocks columns abc95",e.id,"=>",a,e),e.children&&e.children.length>0){let i=e?.children[0]?.size?.width??0,l=e.children.length*i+(e.children.length-1)*R;L.debug("widthOfChildren 88",l,"posX");let s=new Map;{let o=0;for(let u of e.children){if(!u.size)continue;let{py:y}=_t(a,o),f=s.get(y)??0;u.size.height>f&&s.set(y,u.size.height);let w=u?.widthInColumns??1;a>0&&(w=Math.min(w,a-o%a)),o+=w}}let r=new Map;{let o=0,u=[...s.keys()].sort((y,f)=>y-f);for(let y of u)r.set(y,o),o+=(s.get(y)??0)+R}let n=0;L.debug("abc91 block?.size?.x",e.id,e?.size?.x);let c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-R,x=0;for(let o of e.children){let u=e;if(!o.size)continue;let{width:y,height:f}=o.size,{px:w,py:v}=_t(a,n);if(v!=x&&(x=v,c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-R,L.debug("New row in layout for block",e.id," and child ",o.id,x)),L.debug(`abc89 layout blocks (child) id: ${o.id} Pos: ${n} (px, py) ${w},${v} (${u?.size?.x},${u?.size?.y}) parent: ${u.id} width: ${y}${R}`),u.size){let T=y/2;o.size.x=c+R+T,L.debug(`abc91 layout blocks (calc) px, pyid:${o.id} startingPos=X${c} new startingPosX${o.size.x} ${T} padding=${R} width=${y} halfWidth=${T} => x:${o.size.x} y:${o.size.y} ${o.widthInColumns} (width * (child?.w || 1)) / 2 ${y*(o?.widthInColumns??1)/2}`),c=o.size.x+T;let C=r.get(v)??0,B=s.get(v)??f;o.size.y=u.size.y-u.size.height/2+C+B/2+R,L.debug(`abc88 layout blocks (calc) px, pyid:${o.id}startingPosX${c}${R}${T}=>x:${o.size.x}y:${o.size.y}${o.widthInColumns}(width * (child?.w || 1)) / 2${y*(o?.widthInColumns??1)/2}`)}o.children&&It(o,t);let k=o?.widthInColumns??1;a>0&&(k=Math.min(k,a-n%a)),n+=k,L.debug("abc88 columnsPos",o,n)}}L.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}g(It,"layoutBlocks");function Ct(e,{minX:t,minY:a,maxX:i,maxY:l}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&e.id!=="root"){let{x:s,y:r,width:n,height:c}=e.size;s-n/2i&&(i=s+n/2),r+c/2>l&&(l=r+c/2)}if(e.children)for(let s of e.children)({minX:t,minY:a,maxX:i,maxY:l}=Ct(s,{minX:t,minY:a,maxX:i,maxY:l}));return{minX:t,minY:a,maxX:i,maxY:l}}g(Ct,"findBounds");function de(e){let t=e.getBlock("root");if(!t)return;ut(t,e,0,0),It(t,e),L.debug("getBlocks",JSON.stringify(t,null,2));let{minX:a,minY:i,maxX:l,maxY:s}=Ct(t),r=s-i,n=l-a;return{x:a,y:i,width:n,height:r}}g(de,"layout");var or=g((e,t,a,i=!1,l=!1)=>_(null,null,function*(){let s=t||"";typeof s=="object"&&(s=s[0]);let r=O(),n=F(r);return yield ht(e,s,{style:a,isTitle:i,useHtmlLabels:n,markdown:!1,isNode:l,width:Number.POSITIVE_INFINITY},r)}),"createLabel"),X=or,hr=g((e,t,a,i,l)=>{t.arrowTypeStart&&ee(e,"start",t.arrowTypeStart,a,i,l),t.arrowTypeEnd&&ee(e,"end",t.arrowTypeEnd,a,i,l)},"addEdgeMarkers"),gr={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},ee=g((e,t,a,i,l,s)=>{let r=gr[a];if(!r){L.warn(`Unknown arrow type: ${a}`);return}let n=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${i}#${l}_${s}-${r}${n})`)},"addEdgeMarker"),Dt={},P={},dr=g((e,t)=>_(null,null,function*(){let a=O(),i=F(a),l=e.insert("g").attr("class","edgeLabel"),s=l.insert("g").attr("class","label"),r=t.labelType==="markdown",n=yield ht(e,t.label,{style:t.labelStyle,useHtmlLabels:i,addSvgBackground:r,isNode:!1,markdown:r,width:r?void 0:Number.POSITIVE_INFINITY},a);s.node().appendChild(n);let c=n.getBBox(),x=c;if(i){let u=n.children[0],y=D(n);c=u.getBoundingClientRect(),x=c,y.attr("width",c.width),y.attr("height",c.height)}else{let u=D(n).select("text").node();u&&typeof u.getBBox=="function"&&(x=u.getBBox())}s.attr("transform",et(x,i)),Dt[t.id]=l,t.width=c.width,t.height=c.height;let o;if(t.startLabelLeft){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(y,t.startLabelLeft,t.labelStyle);o=f;let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),P[t.id]||(P[t.id]={}),P[t.id].startLeft=u,it(o,t.startLabelLeft)}if(t.startLabelRight){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(u,t.startLabelRight,t.labelStyle);o=f,y.node().appendChild(f);let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),P[t.id]||(P[t.id]={}),P[t.id].startRight=u,it(o,t.startLabelRight)}if(t.endLabelLeft){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(y,t.endLabelLeft,t.labelStyle);o=f;let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),u.node().appendChild(f),P[t.id]||(P[t.id]={}),P[t.id].endLeft=u,it(o,t.endLabelLeft)}if(t.endLabelRight){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(y,t.endLabelRight,t.labelStyle);o=f;let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),u.node().appendChild(f),P[t.id]||(P[t.id]={}),P[t.id].endRight=u,it(o,t.endLabelRight)}return n}),"insertEdgeLabel");function it(e,t){F(O())&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}g(it,"setTerminalWidth");var ur=g((e,t)=>{L.debug("Moving label abc88 ",e.id,e.label,Dt[e.id],t);let a=t.updatedPath?t.updatedPath:t.originalPath,i=O(),{subGraphTitleTotalMargin:l}=Zt(i);if(e.label){let s=Dt[e.id],r=e.x,n=e.y;if(a){let c=rt.calcLabelPosition(a);L.debug("Moving label "+e.label+" from (",r,",",n,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(r=c.x,n=c.y)}s.attr("transform",`translate(${r}, ${n+l/2})`)}if(e.startLabelLeft){let s=P[e.id].startLeft,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.startLabelRight){let s=P[e.id].startRight,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelLeft){let s=P[e.id].endLeft,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelRight){let s=P[e.id].endRight,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}},"positionEdgeLabel"),pr=g((e,t)=>{let a=e.x,i=e.y,l=Math.abs(t.x-a),s=Math.abs(t.y-i),r=e.width/2,n=e.height/2;return l>=r||s>=n},"outsideNode"),fr=g((e,t,a)=>{L.debug(`intersection calc abc89: + ${Qt()} +`,"getStyles"),Qe=Je,$e=g((e,t,a,i)=>{t.forEach(l=>{or[l](e,a,i)})},"insertMarkers"),tr=g((e,t,a)=>{L.trace("Making markers for ",a),e.append("defs").append("marker").attr("id",a+"_"+t+"-extensionStart").attr("class","marker extension "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-extensionEnd").attr("class","marker extension "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),er=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-compositionStart").attr("class","marker composition "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-compositionEnd").attr("class","marker composition "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),rr=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationStart").attr("class","marker aggregation "+t).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-aggregationEnd").attr("class","marker aggregation "+t).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),ar=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyStart").attr("class","marker dependency "+t).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),e.append("defs").append("marker").attr("id",a+"_"+t+"-dependencyEnd").attr("class","marker dependency "+t).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),sr=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopStart").attr("class","marker lollipop "+t).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),e.append("defs").append("marker").attr("id",a+"_"+t+"-lollipopEnd").attr("class","marker lollipop "+t).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),ir=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-pointEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-pointStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),nr=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-circleEnd").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-circleStart").attr("class","marker "+t).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),lr=g((e,t,a)=>{e.append("marker").attr("id",a+"_"+t+"-crossEnd").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),e.append("marker").attr("id",a+"_"+t+"-crossStart").attr("class","marker cross "+t).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),cr=g((e,t,a)=>{e.append("defs").append("marker").attr("id",a+"_"+t+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),or={extension:tr,composition:er,aggregation:rr,dependency:ar,lollipop:sr,point:ir,circle:nr,cross:lr,barb:cr},hr=$e,R=O()?.block?.padding??8;function _t(e,t){if(e===0||!Number.isInteger(e))throw new Error("Columns must be an integer !== 0.");if(t<0||!Number.isInteger(t))throw new Error("Position must be a non-negative integer."+t);if(e<0)return{px:t,py:0};if(e===1)return{px:0,py:t};let a=t%e,i=Math.floor(t/e);return{px:a,py:i}}g(_t,"calculateBlockPosition");var gr=g(e=>{let t=0,a=0;for(let i of e.children){let{width:l,height:s,x:r,y:n}=i.size??{width:0,height:0,x:0,y:0};L.debug("getMaxChildSize abc95 child:",i.id,"width:",l,"height:",s,"x:",r,"y:",n,i.type),i.type!=="space"&&(l>t&&(t=l/(i.widthInColumns??1)),s>a&&(a=s))}return{width:t,height:a}},"getMaxChildSize");function ut(e,t,a=0,i=0){L.debug("setBlockSizes abc95 (start)",e.id,e?.size?.x,"block width =",e?.size,"siblingWidth",a),e?.size?.width||(e.size={width:a,height:i,x:0,y:0});let l=0,s=0;if(e.children?.length>0){for(let f of e.children)ut(f,t);let r=gr(e);l=r.width,s=r.height,L.debug("setBlockSizes abc95 maxWidth of",e.id,":s children is ",l,s);for(let f of e.children)f.size&&(L.debug(`abc95 Setting size of children of ${e.id} id=${f.id} ${l} ${s} ${JSON.stringify(f.size)}`),f.size.width=l*(f.widthInColumns??1)+R*((f.widthInColumns??1)-1),f.size.height=s,f.size.x=0,f.size.y=0,L.debug(`abc95 updating size of ${e.id} children child:${f.id} maxWidth:${l} maxHeight:${s}`));for(let f of e.children)ut(f,t,l,s);let n=e.columns??-1,c=0;for(let f of e.children)c+=f.widthInColumns??1;let x=e.children.length;n>0&&n0?Math.min(e.children.length,n):e.children.length;if(f>0){let w=(u-f*R-R)/f;L.debug("abc95 (growing to fit) width",e.id,u,e.size?.width,w);for(let v of e.children)v.size&&(v.size.width=w)}}e.size={width:u,height:y,x:0,y:0}}L.debug("setBlockSizes abc94 (done)",e.id,e?.size?.x,e?.size?.width,e?.size?.y,e?.size?.height)}g(ut,"setBlockSizes");function Ct(e,t){L.debug(`abc85 layout blocks (=>layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`);let a=e.columns??-1;if(L.debug("layoutBlocks columns abc95",e.id,"=>",a,e),e.children&&e.children.length>0){let i=e?.children[0]?.size?.width??0,l=e.children.length*i+(e.children.length-1)*R;L.debug("widthOfChildren 88",l,"posX");let s=new Map;{let o=0;for(let u of e.children){if(!u.size)continue;let{py:y}=_t(a,o),f=s.get(y)??0;u.size.height>f&&s.set(y,u.size.height);let w=u?.widthInColumns??1;a>0&&(w=Math.min(w,a-o%a)),o+=w}}let r=new Map;{let o=0,u=[...s.keys()].sort((y,f)=>y-f);for(let y of u)r.set(y,o),o+=(s.get(y)??0)+R}let n=0;L.debug("abc91 block?.size?.x",e.id,e?.size?.x);let c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-R,x=0;for(let o of e.children){let u=e;if(!o.size)continue;let{width:y,height:f}=o.size,{px:w,py:v}=_t(a,n);if(v!=x&&(x=v,c=e?.size?.x?e?.size?.x+(-e?.size?.width/2||0):-R,L.debug("New row in layout for block",e.id," and child ",o.id,x)),L.debug(`abc89 layout blocks (child) id: ${o.id} Pos: ${n} (px, py) ${w},${v} (${u?.size?.x},${u?.size?.y}) parent: ${u.id} width: ${y}${R}`),u.size){let T=y/2;o.size.x=c+R+T,L.debug(`abc91 layout blocks (calc) px, pyid:${o.id} startingPos=X${c} new startingPosX${o.size.x} ${T} padding=${R} width=${y} halfWidth=${T} => x:${o.size.x} y:${o.size.y} ${o.widthInColumns} (width * (child?.w || 1)) / 2 ${y*(o?.widthInColumns??1)/2}`),c=o.size.x+T;let C=r.get(v)??0,B=s.get(v)??f;o.size.y=u.size.y-u.size.height/2+C+B/2+R,L.debug(`abc88 layout blocks (calc) px, pyid:${o.id}startingPosX${c}${R}${T}=>x:${o.size.x}y:${o.size.y}${o.widthInColumns}(width * (child?.w || 1)) / 2${y*(o?.widthInColumns??1)/2}`)}o.children&&Ct(o,t);let k=o?.widthInColumns??1;a>0&&(k=Math.min(k,a-n%a)),n+=k,L.debug("abc88 columnsPos",o,n)}}L.debug(`layout blocks (<==layoutBlocks) ${e.id} x: ${e?.size?.x} y: ${e?.size?.y} width: ${e?.size?.width}`)}g(Ct,"layoutBlocks");function Ot(e,{minX:t,minY:a,maxX:i,maxY:l}={minX:0,minY:0,maxX:0,maxY:0}){if(e.size&&e.id!=="root"){let{x:s,y:r,width:n,height:c}=e.size;s-n/2i&&(i=s+n/2),r+c/2>l&&(l=r+c/2)}if(e.children)for(let s of e.children)({minX:t,minY:a,maxX:i,maxY:l}=Ot(s,{minX:t,minY:a,maxX:i,maxY:l}));return{minX:t,minY:a,maxX:i,maxY:l}}g(Ot,"findBounds");function ue(e){let t=e.getBlock("root");if(!t)return;ut(t,e,0,0),Ct(t,e),L.debug("getBlocks",JSON.stringify(t,null,2));let{minX:a,minY:i,maxX:l,maxY:s}=Ot(t),r=s-i,n=l-a;return{x:a,y:i,width:n,height:r}}g(ue,"layout");var dr=g((e,t,a,i=!1,l=!1)=>_(null,null,function*(){let s=t||"";typeof s=="object"&&(s=s[0]);let r=O(),n=F(r);return yield ht(e,s,{style:a,isTitle:i,useHtmlLabels:n,markdown:!1,isNode:l,width:Number.POSITIVE_INFINITY},r)}),"createLabel"),X=dr,ur=g((e,t,a,i,l)=>{t.arrowTypeStart&&re(e,"start",t.arrowTypeStart,a,i,l),t.arrowTypeEnd&&re(e,"end",t.arrowTypeEnd,a,i,l)},"addEdgeMarkers"),pr={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},re=g((e,t,a,i,l,s)=>{let r=pr[a];if(!r){L.warn(`Unknown arrow type: ${a}`);return}let n=t==="start"?"Start":"End";e.attr(`marker-${t}`,`url(${i}#${l}_${s}-${r}${n})`)},"addEdgeMarker"),Dt={},P={},fr=g((e,t)=>_(null,null,function*(){let a=O(),i=F(a),l=e.insert("g").attr("class","edgeLabel"),s=l.insert("g").attr("class","label"),r=t.labelType==="markdown",n=yield ht(e,t.label,{style:t.labelStyle,useHtmlLabels:i,addSvgBackground:r,isNode:!1,markdown:r,width:r?void 0:Number.POSITIVE_INFINITY},a);s.node().appendChild(n);let c=n.getBBox(),x=c;if(i){let u=n.children[0],y=D(n);c=u.getBoundingClientRect(),x=c,y.attr("width",c.width),y.attr("height",c.height)}else{let u=D(n).select("text").node();u&&typeof u.getBBox=="function"&&(x=u.getBBox())}s.attr("transform",et(x,i)),Dt[t.id]=l,t.width=c.width,t.height=c.height;let o;if(t.startLabelLeft){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(y,t.startLabelLeft,t.labelStyle);o=f;let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),P[t.id]||(P[t.id]={}),P[t.id].startLeft=u,it(o,t.startLabelLeft)}if(t.startLabelRight){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(u,t.startLabelRight,t.labelStyle);o=f,y.node().appendChild(f);let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),P[t.id]||(P[t.id]={}),P[t.id].startRight=u,it(o,t.startLabelRight)}if(t.endLabelLeft){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(y,t.endLabelLeft,t.labelStyle);o=f;let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),u.node().appendChild(f),P[t.id]||(P[t.id]={}),P[t.id].endLeft=u,it(o,t.endLabelLeft)}if(t.endLabelRight){let u=e.insert("g").attr("class","edgeTerminals"),y=u.insert("g").attr("class","inner"),f=yield X(y,t.endLabelRight,t.labelStyle);o=f;let w=f.getBBox();if(i){let v=f.children[0],k=D(f);w=v.getBoundingClientRect(),k.attr("width",w.width),k.attr("height",w.height)}y.attr("transform",et(w,i)),u.node().appendChild(f),P[t.id]||(P[t.id]={}),P[t.id].endRight=u,it(o,t.endLabelRight)}return n}),"insertEdgeLabel");function it(e,t){F(O())&&e&&(e.style.width=t.length*9+"px",e.style.height="12px")}g(it,"setTerminalWidth");var xr=g((e,t)=>{L.debug("Moving label abc88 ",e.id,e.label,Dt[e.id],t);let a=t.updatedPath?t.updatedPath:t.originalPath,i=O(),{subGraphTitleTotalMargin:l}=Gt(i);if(e.label){let s=Dt[e.id],r=e.x,n=e.y;if(a){let c=rt.calcLabelPosition(a);L.debug("Moving label "+e.label+" from (",r,",",n,") to (",c.x,",",c.y,") abc88"),t.updatedPath&&(r=c.x,n=c.y)}s.attr("transform",`translate(${r}, ${n+l/2})`)}if(e.startLabelLeft){let s=P[e.id].startLeft,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_left",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.startLabelRight){let s=P[e.id].startRight,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeStart?10:0,"start_right",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelLeft){let s=P[e.id].endLeft,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_left",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}if(e.endLabelRight){let s=P[e.id].endRight,r=e.x,n=e.y;if(a){let c=rt.calcTerminalLabelPosition(e.arrowTypeEnd?10:0,"end_right",a);r=c.x,n=c.y}s.attr("transform",`translate(${r}, ${n})`)}},"positionEdgeLabel"),br=g((e,t)=>{let a=e.x,i=e.y,l=Math.abs(t.x-a),s=Math.abs(t.y-i),r=e.width/2,n=e.height/2;return l>=r||s>=n},"outsideNode"),yr=g((e,t,a)=>{L.debug(`intersection calc abc89: outsidePoint: ${JSON.stringify(t)} insidePoint : ${JSON.stringify(a)} - node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let i=e.x,l=e.y,s=Math.abs(i-a.x),r=e.width/2,n=a.xMath.abs(i-t.x)*c){let u=a.y{L.debug("abc88 cutPathAtIntersect",e,t);let a=[],i=e[0],l=!1;return e.forEach(s=>{if(!pr(t,s)&&!l){let r=fr(t,i,s),n=!1;a.forEach(c=>{n=n||c.x===r.x&&c.y===r.y}),a.some(c=>c.x===r.x&&c.y===r.y)||a.push(r),l=!0}else i=s,l||a.push(s)}),a},"cutPathAtIntersect"),xr=g(function(e,t,a,i,l,s,r){let n=a.points;L.debug("abc88 InsertEdge: edge=",a,"e=",t);let c=!1,x=s.node(t.v);var o=s.node(t.w);o?.intersect&&x?.intersect&&(n=n.slice(1,a.points.length-1),n.unshift(x.intersect(n[0])),n.push(o.intersect(n[n.length-1]))),a.toCluster&&(L.debug("to cluster abc88",i[a.toCluster]),n=re(a.points,i[a.toCluster].node),c=!0),a.fromCluster&&(L.debug("from cluster abc88",i[a.fromCluster]),n=re(n.reverse(),i[a.fromCluster].node).reverse(),c=!0);let u=n.filter(m=>!Number.isNaN(m.y)),y=Xt;a.curve&&(l==="graph"||l==="flowchart")&&(y=a.curve);let{x:f,y:w}=jt(a),v=Ut().x(f).y(w).curve(y),k;switch(a.thickness){case"normal":k="edge-thickness-normal";break;case"thick":k="edge-thickness-thick";break;case"invisible":k="edge-thickness-thick";break;default:k=""}switch(a.pattern){case"solid":k+=" edge-pattern-solid";break;case"dotted":k+=" edge-pattern-dotted";break;case"dashed":k+=" edge-pattern-dashed";break}let T=e.append("path").attr("d",v(u)).attr("id",a.id).attr("class"," "+k+(a.classes?" "+a.classes:"")).attr("style",a.style),C="";(O().flowchart.arrowMarkerAbsolute||O().state.arrowMarkerAbsolute)&&(C=Wt(!0)),hr(T,a,C,r,l);let B={};return c&&(B.updatedPath=n),B.originalPath=a.points,B},"insertEdge"),br=g(e=>{let t=new Set;for(let a of e)switch(a){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(a);break}return t},"expandAndDeduplicateDirections"),yr=g((e,t,a)=>{let i=br(e),l=2,s=t.height+2*a.padding,r=s/l,n=t.width+2*r+a.padding,c=a.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:r,y:0},{x:n/2,y:2*c},{x:n-r,y:0},{x:n,y:0},{x:n,y:-s/3},{x:n+2*c,y:-s/2},{x:n,y:-2*s/3},{x:n,y:-s},{x:n-r,y:-s},{x:n/2,y:-s-2*c},{x:r,y:-s},{x:0,y:-s},{x:0,y:-2*s/3},{x:-2*c,y:-s/2},{x:0,y:-s/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:r,y:0},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:r,y:-s},{x:0,y:-s/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:r,y:-s},{x:n-r,y:-s},{x:n,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:-r},{x:n,y:-s+r},{x:0,y:-s}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:n,y:0},{x:0,y:-r},{x:0,y:-s+r},{x:n,y:-s}]:i.has("right")&&i.has("left")?[{x:r,y:0},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s},{x:0,y:-s/2}]:i.has("up")&&i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:r,y:-c},{x:r,y:-s+c},{x:0,y:-s+c},{x:n/2,y:-s},{x:n,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c},{x:n,y:-c}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:n,y:-r},{x:0,y:-s}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:0,y:-s}]:i.has("left")&&i.has("up")?[{x:n,y:0},{x:0,y:-r},{x:n,y:-s}]:i.has("left")&&i.has("down")?[{x:n,y:0},{x:0,y:0},{x:n,y:-s}]:i.has("right")?[{x:r,y:-c},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s+c}]:i.has("left")?[{x:r,y:0},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s},{x:0,y:-s/2}]:i.has("up")?[{x:r,y:-c},{x:r,y:-s+c},{x:0,y:-s+c},{x:n/2,y:-s},{x:n,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c}]:i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:r,y:-c},{x:r,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c},{x:n,y:-c}]:[{x:0,y:0}]},"getArrowPoints");function ue(e,t){return e.intersect(t)}g(ue,"intersectNode");var mr=ue;function pe(e,t,a,i){var l=e.x,s=e.y,r=l-i.x,n=s-i.y,c=Math.sqrt(t*t*n*n+a*a*r*r),x=Math.abs(t*a*r/c);i.x0}g(Tt,"sameSign");var kr=be,Lr=ye;function ye(e,t,a){var i=e.x,l=e.y,s=[],r=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(w){r=Math.min(r,w.x),n=Math.min(n,w.y)}):(r=Math.min(r,t.x),n=Math.min(n,t.y));for(var c=i-e.width/2-r,x=l-e.height/2-n,o=0;o1&&s.sort(function(w,v){var k=w.x-a.x,T=w.y-a.y,C=Math.sqrt(k*k+T*T),B=v.x-a.x,m=v.y-a.y,d=Math.sqrt(B*B+m*m);return C{var a=e.x,i=e.y,l=t.x-a,s=t.y-i,r=e.width/2,n=e.height/2,c,x;return Math.abs(s)*r>Math.abs(l)*n?(s<0&&(n=-n),c=s===0?0:n*l/s,x=n):(l<0&&(r=-r),c=r,x=l===0?0:r*s/l),{x:a+c,y:i+x}},"intersectRect"),vr=Sr,N={node:mr,circle:wr,ellipse:fe,polygon:Lr,rect:vr},M=g((e,t,a,i)=>_(null,null,function*(){let l=O(),s,r=t.useHtmlLabels||F(l);a?s=a:s="node default";let n=e.insert("g").attr("class",s).attr("id",t.domId||t.id),c=n.insert("g").attr("class","label").attr("style",t.labelStyle),x;t.labelText===void 0?x="":x=typeof t.labelText=="string"?t.labelText:t.labelText[0];let o;t.labelType==="markdown"?o=ht(c,kt(Lt(x),l),{useHtmlLabels:r,width:t.width||l.flowchart.wrappingWidth,classes:"markdown-node-label"},l):o=yield X(c,kt(Lt(x),l),t.labelStyle,!1,i);let u=o.getBBox(),y=t.padding/2;if(F(l)){let f=o.children[0],w=D(o);yield Gt(f,x),u=f.getBoundingClientRect(),w.attr("width",u.width),w.attr("height",u.height)}return r?c.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"):c.attr("transform","translate(0, "+-u.height/2+")"),t.centerLabel&&c.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"),c.insert("rect",":first-child"),{shapeSvg:n,bbox:u,halfPadding:y,label:c}}),"labelHelper"),I=g((e,t)=>{let a=t.node().getBBox();e.width=a.width,e.height=a.height},"updateNodeBounds");function V(e,t,a,i){return e.insert("polygon",":first-child").attr("points",i.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+a/2+")")}g(V,"insertPolygonShape");var Er=g((e,t)=>_(null,null,function*(){t.useHtmlLabels||F(O())||(t.centerLabel=!0);let{shapeSvg:i,bbox:l,halfPadding:s}=yield M(e,t,"node "+t.classes,!0);L.info("Classes = ",t.classes);let r=i.insert("rect",":first-child");return r.attr("rx",t.rx).attr("ry",t.ry).attr("x",-l.width/2-s).attr("y",-l.height/2-s).attr("width",l.width+t.padding).attr("height",l.height+t.padding),I(t,r),t.intersect=function(n){return N.rect(t,n)},i}),"note"),_r=Er,ae=g(e=>e?" "+e:"","formatClass"),K=g((e,t)=>`${t||"node default"}${ae(e.classes)} ${ae(e.class)}`,"getClassesFromNode"),se=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=l+s,n=[{x:r/2,y:0},{x:r,y:-r/2},{x:r/2,y:-r},{x:0,y:-r/2}];L.info("Question main (Circle)");let c=V(a,r,r,n);return c.attr("style",t.style),I(t,c),t.intersect=function(x){return L.warn("Intersect called"),N.polygon(t,n,x)},a}),"question"),Dr=g((e,t)=>{let a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=28,l=[{x:0,y:i/2},{x:i/2,y:0},{x:0,y:-i/2},{x:-i/2,y:0}];return a.insert("polygon",":first-child").attr("points",l.map(function(r){return r.x+","+r.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(r){return N.circle(t,14,r)},a},"choice"),Tr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=4,s=i.height+t.padding,r=s/l,n=i.width+2*r+t.padding,c=[{x:r,y:0},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:r,y:-s},{x:0,y:-s/2}],x=V(a,n,s,c);return x.attr("style",t.style),I(t,x),t.intersect=function(o){return N.polygon(t,c,o)},a}),"hexagon"),Br=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,void 0,!0),l=2,s=i.height+2*t.padding,r=s/l,n=i.width+2*r+t.padding,c=yr(t.directions,i,t),x=V(a,n,s,c);return x.attr("style",t.style),I(t,x),t.intersect=function(o){return N.polygon(t,c,o)},a}),"block_arrow"),Nr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-s/2,y:0},{x:l,y:0},{x:l,y:-s},{x:-s/2,y:-s},{x:0,y:-s/2}];return V(a,l,s,r).attr("style",t.style),t.width=l+s,t.height=s,t.intersect=function(c){return N.polygon(t,r,c)},a}),"rect_left_inv_arrow"),Ir=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-2*s/6,y:0},{x:l-s/6,y:0},{x:l+2*s/6,y:-s},{x:s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"lean_right"),Cr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:2*s/6,y:0},{x:l+s/6,y:0},{x:l-2*s/6,y:-s},{x:-s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"lean_left"),Or=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-2*s/6,y:0},{x:l+2*s/6,y:0},{x:l-s/6,y:-s},{x:s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"trapezoid"),Rr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:s/6,y:0},{x:l-s/6,y:0},{x:l+2*s/6,y:-s},{x:-2*s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"inv_trapezoid"),zr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:0,y:0},{x:l+s/2,y:0},{x:l,y:-s/2},{x:l+s/2,y:-s},{x:0,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"rect_right_inv_arrow"),Ar=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=l/2,r=s/(2.5+l/50),n=i.height+r+t.padding,c="M 0,"+r+" a "+s+","+r+" 0,0,0 "+l+" 0 a "+s+","+r+" 0,0,0 "+-l+" 0 l 0,"+n+" a "+s+","+r+" 0,0,0 "+l+" 0 l 0,"+-n,x=a.attr("label-offset-y",r).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-l/2+","+-(n/2+r)+")");return I(t,x),t.intersect=function(o){let u=N.rect(t,o),y=u.x-t.x;if(s!=0&&(Math.abs(y)t.height/2-r)){let f=r*r*(1-y*y/(s*s));f!=0&&(f=Math.sqrt(f)),f=r-f,o.y-t.y>0&&(f=-f),u.y+=f}return u},a}),"cylinder"),Mr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,"node "+t.classes+" "+t.class,!0),s=a.insert("rect",":first-child"),r=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-r/2:-i.width/2-l,x=t.positioned?-n/2:-i.height/2-l;if(s.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",x).attr("width",r).attr("height",n),t.props){let o=new Set(Object.keys(t.props));t.props.borders&&(pt(s,t.props.borders,r,n),o.delete("borders")),o.forEach(u=>{L.warn(`Unknown node property ${u}`)})}return I(t,s),t.intersect=function(o){return N.rect(t,o)},a}),"rect"),Fr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,"node "+t.classes,!0),s=a.insert("rect",":first-child"),r=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-r/2:-i.width/2-l,x=t.positioned?-n/2:-i.height/2-l;if(s.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",x).attr("width",r).attr("height",n),t.props){let o=new Set(Object.keys(t.props));t.props.borders&&(pt(s,t.props.borders,r,n),o.delete("borders")),o.forEach(u=>{L.warn(`Unknown node property ${u}`)})}return I(t,s),t.intersect=function(o){return N.rect(t,o)},a}),"composite"),Pr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a}=yield M(e,t,"label",!0);L.trace("Classes = ",t.class);let i=a.insert("rect",":first-child"),l=0,s=0;if(i.attr("width",l).attr("height",s),a.attr("class","label edgeLabel"),t.props){let r=new Set(Object.keys(t.props));t.props.borders&&(pt(i,t.props.borders,l,s),r.delete("borders")),r.forEach(n=>{L.warn(`Unknown node property ${n}`)})}return I(t,i),t.intersect=function(r){return N.rect(t,r)},a}),"labelRect");function pt(e,t,a,i){let l=[],s=g(n=>{l.push(n,0)},"addBorder"),r=g(n=>{l.push(0,n)},"skipBorder");t.includes("t")?(L.debug("add top border"),s(a)):r(a),t.includes("r")?(L.debug("add right border"),s(i)):r(i),t.includes("b")?(L.debug("add bottom border"),s(a)):r(a),t.includes("l")?(L.debug("add left border"),s(i)):r(i),e.attr("stroke-dasharray",l.join(" "))}g(pt,"applyNodePropertyBorders");var Wr=g((e,t)=>_(null,null,function*(){let a;t.classes?a="node "+t.classes:a="node default";let i=e.insert("g").attr("class",a).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),s=i.insert("line"),r=i.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText,c="";typeof n=="object"?c=n[0]:c=n,L.info("Label text abc79",c,n,typeof n=="object");let x=yield X(r,c,t.labelStyle,!0,!0),o={width:0,height:0};if(F(O())){let v=x.children[0],k=D(x);o=v.getBoundingClientRect(),k.attr("width",o.width),k.attr("height",o.height)}L.info("Text 2",n);let u=n.slice(1,n.length),y=x.getBBox(),f=yield X(r,u.join?u.join("
"):u,t.labelStyle,!0,!0);if(F(O())){let v=f.children[0],k=D(f);o=v.getBoundingClientRect(),k.attr("width",o.width),k.attr("height",o.height)}let w=t.padding/2;return D(f).attr("transform","translate( "+(o.width>y.width?0:(y.width-o.width)/2)+", "+(y.height+w+5)+")"),D(x).attr("transform","translate( "+(o.width_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.height+t.padding,s=i.width+l/4+t.padding,r=a.insert("rect",":first-child").attr("style",t.style).attr("rx",l/2).attr("ry",l/2).attr("x",-s/2).attr("y",-l/2).attr("width",s).attr("height",l);return I(t,r),t.intersect=function(n){return N.rect(t,n)},a}),"stadium"),Hr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,K(t,void 0),!0),s=a.insert("circle",":first-child");return s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),L.info("Circle main"),I(t,s),t.intersect=function(r){return L.info("Circle intersect",t,i.width/2+l,r),N.circle(t,i.width/2+l,r)},a}),"circle"),Kr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,K(t,void 0),!0),s=5,r=a.insert("g",":first-child"),n=r.insert("circle"),c=r.insert("circle");return r.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l+s).attr("width",i.width+t.padding+s*2).attr("height",i.height+t.padding+s*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),L.info("DoubleCircle main"),I(t,n),t.intersect=function(x){return L.info("DoubleCircle intersect",t,i.width/2+l+s,x),N.circle(t,i.width/2+l+s,x)},a}),"doublecircle"),Ur=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:0,y:0},{x:l,y:0},{x:l,y:-s},{x:0,y:-s},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-s},{x:-8,y:-s},{x:-8,y:0}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"subroutine"),Xr=g((e,t)=>{let a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=a.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),I(t,i),t.intersect=function(l){return N.circle(t,7,l)},a},"start"),ie=g((e,t,a)=>{let i=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),l=70,s=10;a==="LR"&&(l=10,s=70);let r=i.append("rect").attr("x",-1*l/2).attr("y",-1*s/2).attr("width",l).attr("height",s).attr("class","fork-join");return I(t,r),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return N.rect(t,n)},i},"forkJoin"),jr=g((e,t)=>{let a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=a.insert("circle",":first-child"),l=a.insert("circle",":first-child");return l.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),i.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),I(t,l),t.intersect=function(s){return N.circle(t,7,s)},a},"end"),Vr=g((e,t)=>_(null,null,function*(){let a=t.padding/2,i=4,l=8,s;t.classes?s="node "+t.classes:s="node default";let r=e.insert("g").attr("class",s).attr("id",t.domId||t.id),n=r.insert("rect",":first-child"),c=r.insert("line"),x=r.insert("line"),o=0,u=i,y=r.insert("g").attr("class","label"),f=0,w=t.classData.annotations?.[0],v=t.classData.annotations[0]?"\xAB"+t.classData.annotations[0]+"\xBB":"",k=yield X(y,v,t.labelStyle,!0,!0),T=k.getBBox();if(F(O())){let E=k.children[0],h=D(k);T=E.getBoundingClientRect(),h.attr("width",T.width),h.attr("height",T.height)}t.classData.annotations[0]&&(u+=T.height+i,o+=T.width);let C=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(F(O())?C+="<"+t.classData.type+">":C+="<"+t.classData.type+">");let B=yield X(y,C,t.labelStyle,!0,!0);D(B).attr("class","classTitle");let m=B.getBBox();if(F(O())){let E=B.children[0],h=D(B);m=E.getBoundingClientRect(),h.attr("width",m.width),h.attr("height",m.height)}u+=m.height+i,m.width>o&&(o=m.width);let d=[];t.classData.members.forEach(E=>_(null,null,function*(){let h=E.getDisplayDetails(),Y=h.displayText;F(O())&&(Y=Y.replace(//g,">"));let p=yield X(y,Y,h.cssStyle?h.cssStyle:t.labelStyle,!0,!0),z=p.getBBox();if(F(O())){let q=p.children[0],Z=D(p);z=q.getBoundingClientRect(),Z.attr("width",z.width),Z.attr("height",z.height)}z.width>o&&(o=z.width),u+=z.height+i,d.push(p)})),u+=l;let b=[];if(t.classData.methods.forEach(E=>_(null,null,function*(){let h=E.getDisplayDetails(),Y=h.displayText;F(O())&&(Y=Y.replace(//g,">"));let p=yield X(y,Y,h.cssStyle?h.cssStyle:t.labelStyle,!0,!0),z=p.getBBox();if(F(O())){let q=p.children[0],Z=D(p);z=q.getBoundingClientRect(),Z.attr("width",z.width),Z.attr("height",z.height)}z.width>o&&(o=z.width),u+=z.height+i,b.push(p)})),u+=l,w){let E=(o-T.width)/2;D(k).attr("transform","translate( "+(-1*o/2+E)+", "+-1*u/2+")"),f=T.height+i}let S=(o-m.width)/2;return D(B).attr("transform","translate( "+(-1*o/2+S)+", "+(-1*u/2+f)+")"),f+=m.height+i,c.attr("class","divider").attr("x1",-o/2-a).attr("x2",o/2+a).attr("y1",-u/2-a+l+f).attr("y2",-u/2-a+l+f),f+=l,d.forEach(E=>{D(E).attr("transform","translate( "+-o/2+", "+(-1*u/2+f+l/2)+")");let h=E?.getBBox();f+=(h?.height??0)+i}),f+=l,x.attr("class","divider").attr("x1",-o/2-a).attr("x2",o/2+a).attr("y1",-u/2-a+l+f).attr("y2",-u/2-a+l+f),f+=l,b.forEach(E=>{D(E).attr("transform","translate( "+-o/2+", "+(-1*u/2+f)+")");let h=E?.getBBox();f+=(h?.height??0)+i}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-o/2-a).attr("y",-(u/2)-a).attr("width",o+t.padding).attr("height",u+t.padding),I(t,n),t.intersect=function(E){return N.rect(t,E)},r}),"class_box"),ne={rhombus:se,composite:Fr,question:se,rect:Mr,labelRect:Pr,rectWithTitle:Wr,choice:Dr,circle:Hr,doublecircle:Kr,stadium:Yr,hexagon:Tr,block_arrow:Br,rect_left_inv_arrow:Nr,lean_right:Ir,lean_left:Cr,trapezoid:Or,inv_trapezoid:Rr,rect_right_inv_arrow:zr,cylinder:Ar,start:Xr,end:jr,note:_r,subroutine:Ur,fork:ie,join:ie,class_box:Vr},gt={},me=g((e,t,a)=>_(null,null,function*(){let i,l;if(t.link){let s;O().securityLevel==="sandbox"?s="_top":t.linkTarget&&(s=t.linkTarget||"_blank"),i=e.insert("svg:a").attr("xlink:href",t.link).attr("target",s),l=yield ne[t.shape](i,t,a)}else l=yield ne[t.shape](e,t,a),i=l;return t.tooltip&&l.attr("title",t.tooltip),t.class&&l.attr("class","node default "+t.class),gt[t.id]=i,t.haveCallback&>[t.id].attr("class",gt[t.id].attr("class")+" clickable"),i}),"insertNode"),Zr=g(e=>{let t=gt[e.id];L.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");let a=8,i=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+i-e.width/2)+", "+(e.y-e.height/2-a)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),i},"positionNode");function Ot(e,t,a=!1){let i=e,l="default";(i?.classes?.length||0)>0&&(l=(i?.classes??[]).join(" ")),l=l+" flowchart-label";let s=0,r="",n;switch(i.type){case"round":s=5,r="rect";break;case"composite":s=0,r="composite",n=0;break;case"square":r="rect";break;case"diamond":r="question";break;case"hexagon":r="hexagon";break;case"block_arrow":r="block_arrow";break;case"odd":r="rect_left_inv_arrow";break;case"lean_right":r="lean_right";break;case"lean_left":r="lean_left";break;case"trapezoid":r="trapezoid";break;case"inv_trapezoid":r="inv_trapezoid";break;case"rect_left_inv_arrow":r="rect_left_inv_arrow";break;case"circle":r="circle";break;case"ellipse":r="ellipse";break;case"stadium":r="stadium";break;case"subroutine":r="subroutine";break;case"cylinder":r="cylinder";break;case"group":r="rect";break;case"doublecircle":r="doublecircle";break;default:r="rect"}let c=Vt(i?.styles??[]),x=i.label,o=i.size??{width:0,height:0,x:0,y:0};return{labelStyle:c.labelStyle,shape:r,labelText:x,rx:s,ry:s,class:l,style:c.style,id:i.id,directions:i.directions,width:o.width,height:o.height,x:o.x,y:o.y,positioned:a,intersect:void 0,type:i.type,padding:n??tt()?.block?.padding??0}}g(Ot,"getNodeFromBlock");function we(e,t,a){return _(this,null,function*(){let i=Ot(t,a,!1);if(i.type==="group")return;let l=tt(),s=yield me(e,i,{config:l}),r=s.node().getBBox(),n=a.getBlock(i.id);n.size={width:r.width,height:r.height,x:0,y:0,node:s},a.setBlock(n),s.remove()})}g(we,"calculateBlockSize");function ke(e,t,a){return _(this,null,function*(){let i=Ot(t,a,!0);if(a.getBlock(i.id).type!=="space"){let s=tt();yield me(e,i,{config:s}),t.intersect=i?.intersect,Zr(i)}})}g(ke,"insertBlockPositioned");function ft(e,t,a,i){return _(this,null,function*(){for(let l of t)yield i(e,l,a),l.children&&(yield ft(e,l.children,a,i))})}g(ft,"performOperations");function Le(e,t,a){return _(this,null,function*(){yield ft(e,t,a,we)})}g(Le,"calculateBlockSizes");function Se(e,t,a){return _(this,null,function*(){yield ft(e,t,a,ke)})}g(Se,"insertBlocks");function ve(e,t,a,i,l){return _(this,null,function*(){let s=new qt({multigraph:!0,compound:!0});s.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let r of a)r.size&&s.setNode(r.id,{width:r.size.width,height:r.size.height,intersect:r.intersect});for(let r of t)if(r.start&&r.end){let n=i.getBlock(r.start),c=i.getBlock(r.end);if(n?.size&&c?.size){let x=n.size,o=c.size,u=[{x:x.x,y:x.y},{x:x.x+(o.x-x.x)/2,y:x.y+(o.y-x.y)/2},{x:o.x,y:o.y}];xr(e,{v:r.start,w:r.end,name:r.id},st(at({},r),{arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:u,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),void 0,"block",s,l),r.label&&(yield dr(e,st(at({},r),{label:r.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:u,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"})),ur(st(at({},r),{x:u[1].x,y:u[1].y}),{originalPath:u}))}}})}g(ve,"insertEdges");var Gr=g(function(e,t){return t.db.getClasses()},"getClasses"),qr=g(function(e,t,a,i){return _(this,null,function*(){let{securityLevel:l,block:s}=tt(),r=i.db,n;l==="sandbox"&&(n=D("#i"+t));let c=l==="sandbox"?D(n.nodes()[0].contentDocument.body):D("body"),x=l==="sandbox"?c.select(`[id="${t}"]`):D(`[id="${t}"]`);lr(x,["point","circle","cross"],i.type,t);let u=r.getBlocks(),y=r.getBlocksFlat(),f=r.getEdges(),w=x.insert("g").attr("class","block");yield Le(w,u,r);let v=de(r);if(yield Se(w,u,r),yield ve(w,f,y,r,t),v){let k=v,T=Math.max(1,Math.round(.125*(k.width/k.height))),C=k.height+T+10,B=k.width+10,{useMaxWidth:m}=s;Ht(x,C,B,!!m),L.debug("Here Bounds",v,k),x.attr("viewBox",`${k.x-5} ${k.y-5} ${k.width+10} ${k.height+10}`)}})},"draw"),Jr={draw:qr,getClasses:Gr},ua={parser:Te,db:Ve,renderer:Jr,styles:Ge};export{ua as diagram}; + node : x:${e.x} y:${e.y} w:${e.width} h:${e.height}`);let i=e.x,l=e.y,s=Math.abs(i-a.x),r=e.width/2,n=a.xMath.abs(i-t.x)*c){let u=a.y{L.debug("abc88 cutPathAtIntersect",e,t);let a=[],i=e[0],l=!1;return e.forEach(s=>{if(!br(t,s)&&!l){let r=yr(t,i,s),n=!1;a.forEach(c=>{n=n||c.x===r.x&&c.y===r.y}),a.some(c=>c.x===r.x&&c.y===r.y)||a.push(r),l=!0}else i=s,l||a.push(s)}),a},"cutPathAtIntersect"),mr=g(function(e,t,a,i,l,s,r){let n=a.points;L.debug("abc88 InsertEdge: edge=",a,"e=",t);let c=!1,x=s.node(t.v);var o=s.node(t.w);o?.intersect&&x?.intersect&&(n=n.slice(1,a.points.length-1),n.unshift(x.intersect(n[0])),n.push(o.intersect(n[n.length-1]))),a.toCluster&&(L.debug("to cluster abc88",i[a.toCluster]),n=ae(a.points,i[a.toCluster].node),c=!0),a.fromCluster&&(L.debug("from cluster abc88",i[a.fromCluster]),n=ae(n.reverse(),i[a.fromCluster].node).reverse(),c=!0);let u=n.filter(m=>!Number.isNaN(m.y)),y=jt;a.curve&&(l==="graph"||l==="flowchart")&&(y=a.curve);let{x:f,y:w}=Vt(a),v=Xt().x(f).y(w).curve(y),k;switch(a.thickness){case"normal":k="edge-thickness-normal";break;case"thick":k="edge-thickness-thick";break;case"invisible":k="edge-thickness-thick";break;default:k=""}switch(a.pattern){case"solid":k+=" edge-pattern-solid";break;case"dotted":k+=" edge-pattern-dotted";break;case"dashed":k+=" edge-pattern-dashed";break}let T=e.append("path").attr("d",v(u)).attr("id",a.id).attr("class"," "+k+(a.classes?" "+a.classes:"")).attr("style",a.style),C="";(O().flowchart.arrowMarkerAbsolute||O().state.arrowMarkerAbsolute)&&(C=Yt(!0)),ur(T,a,C,r,l);let B={};return c&&(B.updatedPath=n),B.originalPath=a.points,B},"insertEdge"),wr=g(e=>{let t=new Set;for(let a of e)switch(a){case"x":t.add("right"),t.add("left");break;case"y":t.add("up"),t.add("down");break;default:t.add(a);break}return t},"expandAndDeduplicateDirections"),kr=g((e,t,a)=>{let i=wr(e),l=2,s=t.height+2*a.padding,r=s/l,n=t.width+2*r+a.padding,c=a.padding/2;return i.has("right")&&i.has("left")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:r,y:0},{x:n/2,y:2*c},{x:n-r,y:0},{x:n,y:0},{x:n,y:-s/3},{x:n+2*c,y:-s/2},{x:n,y:-2*s/3},{x:n,y:-s},{x:n-r,y:-s},{x:n/2,y:-s-2*c},{x:r,y:-s},{x:0,y:-s},{x:0,y:-2*s/3},{x:-2*c,y:-s/2},{x:0,y:-s/3}]:i.has("right")&&i.has("left")&&i.has("up")?[{x:r,y:0},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:r,y:-s},{x:0,y:-s/2}]:i.has("right")&&i.has("left")&&i.has("down")?[{x:0,y:0},{x:r,y:-s},{x:n-r,y:-s},{x:n,y:0}]:i.has("right")&&i.has("up")&&i.has("down")?[{x:0,y:0},{x:n,y:-r},{x:n,y:-s+r},{x:0,y:-s}]:i.has("left")&&i.has("up")&&i.has("down")?[{x:n,y:0},{x:0,y:-r},{x:0,y:-s+r},{x:n,y:-s}]:i.has("right")&&i.has("left")?[{x:r,y:0},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s},{x:0,y:-s/2}]:i.has("up")&&i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:r,y:-c},{x:r,y:-s+c},{x:0,y:-s+c},{x:n/2,y:-s},{x:n,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c},{x:n,y:-c}]:i.has("right")&&i.has("up")?[{x:0,y:0},{x:n,y:-r},{x:0,y:-s}]:i.has("right")&&i.has("down")?[{x:0,y:0},{x:n,y:0},{x:0,y:-s}]:i.has("left")&&i.has("up")?[{x:n,y:0},{x:0,y:-r},{x:n,y:-s}]:i.has("left")&&i.has("down")?[{x:n,y:0},{x:0,y:0},{x:n,y:-s}]:i.has("right")?[{x:r,y:-c},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s+c}]:i.has("left")?[{x:r,y:0},{x:r,y:-c},{x:n-r,y:-c},{x:n-r,y:-s+c},{x:r,y:-s+c},{x:r,y:-s},{x:0,y:-s/2}]:i.has("up")?[{x:r,y:-c},{x:r,y:-s+c},{x:0,y:-s+c},{x:n/2,y:-s},{x:n,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c}]:i.has("down")?[{x:n/2,y:0},{x:0,y:-c},{x:r,y:-c},{x:r,y:-s+c},{x:n-r,y:-s+c},{x:n-r,y:-c},{x:n,y:-c}]:[{x:0,y:0}]},"getArrowPoints");function pe(e,t){return e.intersect(t)}g(pe,"intersectNode");var Lr=pe;function fe(e,t,a,i){var l=e.x,s=e.y,r=l-i.x,n=s-i.y,c=Math.sqrt(t*t*n*n+a*a*r*r),x=Math.abs(t*a*r/c);i.x0}g(Tt,"sameSign");var vr=ye,Er=me;function me(e,t,a){var i=e.x,l=e.y,s=[],r=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;typeof t.forEach=="function"?t.forEach(function(w){r=Math.min(r,w.x),n=Math.min(n,w.y)}):(r=Math.min(r,t.x),n=Math.min(n,t.y));for(var c=i-e.width/2-r,x=l-e.height/2-n,o=0;o1&&s.sort(function(w,v){var k=w.x-a.x,T=w.y-a.y,C=Math.sqrt(k*k+T*T),B=v.x-a.x,m=v.y-a.y,d=Math.sqrt(B*B+m*m);return C{var a=e.x,i=e.y,l=t.x-a,s=t.y-i,r=e.width/2,n=e.height/2,c,x;return Math.abs(s)*r>Math.abs(l)*n?(s<0&&(n=-n),c=s===0?0:n*l/s,x=n):(l<0&&(r=-r),c=r,x=l===0?0:r*s/l),{x:a+c,y:i+x}},"intersectRect"),Dr=_r,N={node:Lr,circle:Sr,ellipse:xe,polygon:Er,rect:Dr},M=g((e,t,a,i)=>_(null,null,function*(){let l=O(),s,r=t.useHtmlLabels||F(l);a?s=a:s="node default";let n=e.insert("g").attr("class",s).attr("id",t.domId||t.id),c=n.insert("g").attr("class","label").attr("style",t.labelStyle),x;t.labelText===void 0?x="":x=typeof t.labelText=="string"?t.labelText:t.labelText[0];let o;t.labelType==="markdown"?o=ht(c,kt(Lt(x),l),{useHtmlLabels:r,width:t.width||l.flowchart.wrappingWidth,classes:"markdown-node-label"},l):o=yield X(c,kt(Lt(x),l),t.labelStyle,!1,i);let u=o.getBBox(),y=t.padding/2;if(F(l)){let f=o.children[0],w=D(o);yield qt(f,x),u=f.getBoundingClientRect(),w.attr("width",u.width),w.attr("height",u.height)}return r?c.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"):c.attr("transform","translate(0, "+-u.height/2+")"),t.centerLabel&&c.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"),c.insert("rect",":first-child"),{shapeSvg:n,bbox:u,halfPadding:y,label:c}}),"labelHelper"),I=g((e,t)=>{let a=t.node().getBBox();e.width=a.width,e.height=a.height},"updateNodeBounds");function V(e,t,a,i){return e.insert("polygon",":first-child").attr("points",i.map(function(l){return l.x+","+l.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-t/2+","+a/2+")")}g(V,"insertPolygonShape");var Tr=g((e,t)=>_(null,null,function*(){t.useHtmlLabels||F(O())||(t.centerLabel=!0);let{shapeSvg:i,bbox:l,halfPadding:s}=yield M(e,t,"node "+t.classes,!0);L.info("Classes = ",t.classes);let r=i.insert("rect",":first-child");return r.attr("rx",t.rx).attr("ry",t.ry).attr("x",-l.width/2-s).attr("y",-l.height/2-s).attr("width",l.width+t.padding).attr("height",l.height+t.padding),I(t,r),t.intersect=function(n){return N.rect(t,n)},i}),"note"),Br=Tr,se=g(e=>e?" "+e:"","formatClass"),K=g((e,t)=>`${t||"node default"}${se(e.classes)} ${se(e.class)}`,"getClassesFromNode"),ie=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=l+s,n=[{x:r/2,y:0},{x:r,y:-r/2},{x:r/2,y:-r},{x:0,y:-r/2}];L.info("Question main (Circle)");let c=V(a,r,r,n);return c.attr("style",t.style),I(t,c),t.intersect=function(x){return L.warn("Intersect called"),N.polygon(t,n,x)},a}),"question"),Nr=g((e,t)=>{let a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=28,l=[{x:0,y:i/2},{x:i/2,y:0},{x:0,y:-i/2},{x:-i/2,y:0}];return a.insert("polygon",":first-child").attr("points",l.map(function(r){return r.x+","+r.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),t.width=28,t.height=28,t.intersect=function(r){return N.circle(t,14,r)},a},"choice"),Ir=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=4,s=i.height+t.padding,r=s/l,n=i.width+2*r+t.padding,c=[{x:r,y:0},{x:n-r,y:0},{x:n,y:-s/2},{x:n-r,y:-s},{x:r,y:-s},{x:0,y:-s/2}],x=V(a,n,s,c);return x.attr("style",t.style),I(t,x),t.intersect=function(o){return N.polygon(t,c,o)},a}),"hexagon"),Cr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,void 0,!0),l=2,s=i.height+2*t.padding,r=s/l,n=i.width+2*r+t.padding,c=kr(t.directions,i,t),x=V(a,n,s,c);return x.attr("style",t.style),I(t,x),t.intersect=function(o){return N.polygon(t,c,o)},a}),"block_arrow"),Or=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-s/2,y:0},{x:l,y:0},{x:l,y:-s},{x:-s/2,y:-s},{x:0,y:-s/2}];return V(a,l,s,r).attr("style",t.style),t.width=l+s,t.height=s,t.intersect=function(c){return N.polygon(t,r,c)},a}),"rect_left_inv_arrow"),Rr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-2*s/6,y:0},{x:l-s/6,y:0},{x:l+2*s/6,y:-s},{x:s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"lean_right"),zr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:2*s/6,y:0},{x:l+s/6,y:0},{x:l-2*s/6,y:-s},{x:-s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"lean_left"),Ar=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:-2*s/6,y:0},{x:l+2*s/6,y:0},{x:l-s/6,y:-s},{x:s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"trapezoid"),Mr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:s/6,y:0},{x:l-s/6,y:0},{x:l+2*s/6,y:-s},{x:-2*s/6,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"inv_trapezoid"),Fr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:0,y:0},{x:l+s/2,y:0},{x:l,y:-s/2},{x:l+s/2,y:-s},{x:0,y:-s}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"rect_right_inv_arrow"),Pr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=l/2,r=s/(2.5+l/50),n=i.height+r+t.padding,c="M 0,"+r+" a "+s+","+r+" 0,0,0 "+l+" 0 a "+s+","+r+" 0,0,0 "+-l+" 0 l 0,"+n+" a "+s+","+r+" 0,0,0 "+l+" 0 l 0,"+-n,x=a.attr("label-offset-y",r).insert("path",":first-child").attr("style",t.style).attr("d",c).attr("transform","translate("+-l/2+","+-(n/2+r)+")");return I(t,x),t.intersect=function(o){let u=N.rect(t,o),y=u.x-t.x;if(s!=0&&(Math.abs(y)t.height/2-r)){let f=r*r*(1-y*y/(s*s));f!=0&&(f=Math.sqrt(f)),f=r-f,o.y-t.y>0&&(f=-f),u.y+=f}return u},a}),"cylinder"),Wr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,"node "+t.classes+" "+t.class,!0),s=a.insert("rect",":first-child"),r=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-r/2:-i.width/2-l,x=t.positioned?-n/2:-i.height/2-l;if(s.attr("class","basic label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",x).attr("width",r).attr("height",n),t.props){let o=new Set(Object.keys(t.props));t.props.borders&&(pt(s,t.props.borders,r,n),o.delete("borders")),o.forEach(u=>{L.warn(`Unknown node property ${u}`)})}return I(t,s),t.intersect=function(o){return N.rect(t,o)},a}),"rect"),Yr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,"node "+t.classes,!0),s=a.insert("rect",":first-child"),r=t.positioned?t.width:i.width+t.padding,n=t.positioned?t.height:i.height+t.padding,c=t.positioned?-r/2:-i.width/2-l,x=t.positioned?-n/2:-i.height/2-l;if(s.attr("class","basic cluster composite label-container").attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("x",c).attr("y",x).attr("width",r).attr("height",n),t.props){let o=new Set(Object.keys(t.props));t.props.borders&&(pt(s,t.props.borders,r,n),o.delete("borders")),o.forEach(u=>{L.warn(`Unknown node property ${u}`)})}return I(t,s),t.intersect=function(o){return N.rect(t,o)},a}),"composite"),Hr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a}=yield M(e,t,"label",!0);L.trace("Classes = ",t.class);let i=a.insert("rect",":first-child"),l=0,s=0;if(i.attr("width",l).attr("height",s),a.attr("class","label edgeLabel"),t.props){let r=new Set(Object.keys(t.props));t.props.borders&&(pt(i,t.props.borders,l,s),r.delete("borders")),r.forEach(n=>{L.warn(`Unknown node property ${n}`)})}return I(t,i),t.intersect=function(r){return N.rect(t,r)},a}),"labelRect");function pt(e,t,a,i){let l=[],s=g(n=>{l.push(n,0)},"addBorder"),r=g(n=>{l.push(0,n)},"skipBorder");t.includes("t")?(L.debug("add top border"),s(a)):r(a),t.includes("r")?(L.debug("add right border"),s(i)):r(i),t.includes("b")?(L.debug("add bottom border"),s(a)):r(a),t.includes("l")?(L.debug("add left border"),s(i)):r(i),e.attr("stroke-dasharray",l.join(" "))}g(pt,"applyNodePropertyBorders");var Kr=g((e,t)=>_(null,null,function*(){let a;t.classes?a="node "+t.classes:a="node default";let i=e.insert("g").attr("class",a).attr("id",t.domId||t.id),l=i.insert("rect",":first-child"),s=i.insert("line"),r=i.insert("g").attr("class","label"),n=t.labelText.flat?t.labelText.flat():t.labelText,c="";typeof n=="object"?c=n[0]:c=n,L.info("Label text abc79",c,n,typeof n=="object");let x=yield X(r,c,t.labelStyle,!0,!0),o={width:0,height:0};if(F(O())){let v=x.children[0],k=D(x);o=v.getBoundingClientRect(),k.attr("width",o.width),k.attr("height",o.height)}L.info("Text 2",n);let u=n.slice(1,n.length),y=x.getBBox(),f=yield X(r,u.join?u.join("
"):u,t.labelStyle,!0,!0);if(F(O())){let v=f.children[0],k=D(f);o=v.getBoundingClientRect(),k.attr("width",o.width),k.attr("height",o.height)}let w=t.padding/2;return D(f).attr("transform","translate( "+(o.width>y.width?0:(y.width-o.width)/2)+", "+(y.height+w+5)+")"),D(x).attr("transform","translate( "+(o.width_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.height+t.padding,s=i.width+l/4+t.padding,r=a.insert("rect",":first-child").attr("style",t.style).attr("rx",l/2).attr("ry",l/2).attr("x",-s/2).attr("y",-l/2).attr("width",s).attr("height",l);return I(t,r),t.intersect=function(n){return N.rect(t,n)},a}),"stadium"),Xr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,K(t,void 0),!0),s=a.insert("circle",":first-child");return s.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),L.info("Circle main"),I(t,s),t.intersect=function(r){return L.info("Circle intersect",t,i.width/2+l,r),N.circle(t,i.width/2+l,r)},a}),"circle"),jr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i,halfPadding:l}=yield M(e,t,K(t,void 0),!0),s=5,r=a.insert("g",":first-child"),n=r.insert("circle"),c=r.insert("circle");return r.attr("class",t.class),n.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l+s).attr("width",i.width+t.padding+s*2).attr("height",i.height+t.padding+s*2),c.attr("style",t.style).attr("rx",t.rx).attr("ry",t.ry).attr("r",i.width/2+l).attr("width",i.width+t.padding).attr("height",i.height+t.padding),L.info("DoubleCircle main"),I(t,n),t.intersect=function(x){return L.info("DoubleCircle intersect",t,i.width/2+l+s,x),N.circle(t,i.width/2+l+s,x)},a}),"doublecircle"),Vr=g((e,t)=>_(null,null,function*(){let{shapeSvg:a,bbox:i}=yield M(e,t,K(t,void 0),!0),l=i.width+t.padding,s=i.height+t.padding,r=[{x:0,y:0},{x:l,y:0},{x:l,y:-s},{x:0,y:-s},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-s},{x:-8,y:-s},{x:-8,y:0}],n=V(a,l,s,r);return n.attr("style",t.style),I(t,n),t.intersect=function(c){return N.polygon(t,r,c)},a}),"subroutine"),Zr=g((e,t)=>{let a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=a.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),I(t,i),t.intersect=function(l){return N.circle(t,7,l)},a},"start"),ne=g((e,t,a)=>{let i=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),l=70,s=10;a==="LR"&&(l=10,s=70);let r=i.append("rect").attr("x",-1*l/2).attr("y",-1*s/2).attr("width",l).attr("height",s).attr("class","fork-join");return I(t,r),t.height=t.height+t.padding/2,t.width=t.width+t.padding/2,t.intersect=function(n){return N.rect(t,n)},i},"forkJoin"),Gr=g((e,t)=>{let a=e.insert("g").attr("class","node default").attr("id",t.domId||t.id),i=a.insert("circle",":first-child"),l=a.insert("circle",":first-child");return l.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),i.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),I(t,l),t.intersect=function(s){return N.circle(t,7,s)},a},"end"),qr=g((e,t)=>_(null,null,function*(){let a=t.padding/2,i=4,l=8,s;t.classes?s="node "+t.classes:s="node default";let r=e.insert("g").attr("class",s).attr("id",t.domId||t.id),n=r.insert("rect",":first-child"),c=r.insert("line"),x=r.insert("line"),o=0,u=i,y=r.insert("g").attr("class","label"),f=0,w=t.classData.annotations?.[0],v=t.classData.annotations[0]?"\xAB"+t.classData.annotations[0]+"\xBB":"",k=yield X(y,v,t.labelStyle,!0,!0),T=k.getBBox();if(F(O())){let E=k.children[0],h=D(k);T=E.getBoundingClientRect(),h.attr("width",T.width),h.attr("height",T.height)}t.classData.annotations[0]&&(u+=T.height+i,o+=T.width);let C=t.classData.label;t.classData.type!==void 0&&t.classData.type!==""&&(F(O())?C+="<"+t.classData.type+">":C+="<"+t.classData.type+">");let B=yield X(y,C,t.labelStyle,!0,!0);D(B).attr("class","classTitle");let m=B.getBBox();if(F(O())){let E=B.children[0],h=D(B);m=E.getBoundingClientRect(),h.attr("width",m.width),h.attr("height",m.height)}u+=m.height+i,m.width>o&&(o=m.width);let d=[];t.classData.members.forEach(E=>_(null,null,function*(){let h=E.getDisplayDetails(),Y=h.displayText;F(O())&&(Y=Y.replace(//g,">"));let p=yield X(y,Y,h.cssStyle?h.cssStyle:t.labelStyle,!0,!0),z=p.getBBox();if(F(O())){let q=p.children[0],Z=D(p);z=q.getBoundingClientRect(),Z.attr("width",z.width),Z.attr("height",z.height)}z.width>o&&(o=z.width),u+=z.height+i,d.push(p)})),u+=l;let b=[];if(t.classData.methods.forEach(E=>_(null,null,function*(){let h=E.getDisplayDetails(),Y=h.displayText;F(O())&&(Y=Y.replace(//g,">"));let p=yield X(y,Y,h.cssStyle?h.cssStyle:t.labelStyle,!0,!0),z=p.getBBox();if(F(O())){let q=p.children[0],Z=D(p);z=q.getBoundingClientRect(),Z.attr("width",z.width),Z.attr("height",z.height)}z.width>o&&(o=z.width),u+=z.height+i,b.push(p)})),u+=l,w){let E=(o-T.width)/2;D(k).attr("transform","translate( "+(-1*o/2+E)+", "+-1*u/2+")"),f=T.height+i}let S=(o-m.width)/2;return D(B).attr("transform","translate( "+(-1*o/2+S)+", "+(-1*u/2+f)+")"),f+=m.height+i,c.attr("class","divider").attr("x1",-o/2-a).attr("x2",o/2+a).attr("y1",-u/2-a+l+f).attr("y2",-u/2-a+l+f),f+=l,d.forEach(E=>{D(E).attr("transform","translate( "+-o/2+", "+(-1*u/2+f+l/2)+")");let h=E?.getBBox();f+=(h?.height??0)+i}),f+=l,x.attr("class","divider").attr("x1",-o/2-a).attr("x2",o/2+a).attr("y1",-u/2-a+l+f).attr("y2",-u/2-a+l+f),f+=l,b.forEach(E=>{D(E).attr("transform","translate( "+-o/2+", "+(-1*u/2+f)+")");let h=E?.getBBox();f+=(h?.height??0)+i}),n.attr("style",t.style).attr("class","outer title-state").attr("x",-o/2-a).attr("y",-(u/2)-a).attr("width",o+t.padding).attr("height",u+t.padding),I(t,n),t.intersect=function(E){return N.rect(t,E)},r}),"class_box"),le={rhombus:ie,composite:Yr,question:ie,rect:Wr,labelRect:Hr,rectWithTitle:Kr,choice:Nr,circle:Xr,doublecircle:jr,stadium:Ur,hexagon:Ir,block_arrow:Cr,rect_left_inv_arrow:Or,lean_right:Rr,lean_left:zr,trapezoid:Ar,inv_trapezoid:Mr,rect_right_inv_arrow:Fr,cylinder:Pr,start:Zr,end:Gr,note:Br,subroutine:Vr,fork:ne,join:ne,class_box:qr},gt={},we=g((e,t,a)=>_(null,null,function*(){let i,l;if(t.link){let s;O().securityLevel==="sandbox"?s="_top":t.linkTarget&&(s=t.linkTarget||"_blank"),i=e.insert("svg:a").attr("xlink:href",t.link).attr("target",s),l=yield le[t.shape](i,t,a)}else l=yield le[t.shape](e,t,a),i=l;return t.tooltip&&l.attr("title",t.tooltip),t.class&&l.attr("class","node default "+t.class),gt[t.id]=i,t.haveCallback&>[t.id].attr("class",gt[t.id].attr("class")+" clickable"),i}),"insertNode"),Jr=g(e=>{let t=gt[e.id];L.trace("Transforming node",e.diff,e,"translate("+(e.x-e.width/2-5)+", "+e.width/2+")");let a=8,i=e.diff||0;return e.clusterNode?t.attr("transform","translate("+(e.x+i-e.width/2)+", "+(e.y-e.height/2-a)+")"):t.attr("transform","translate("+e.x+", "+e.y+")"),i},"positionNode");function Rt(e,t,a=!1){let i=e,l="default";(i?.classes?.length||0)>0&&(l=(i?.classes??[]).join(" ")),l=l+" flowchart-label";let s=0,r="",n;switch(i.type){case"round":s=5,r="rect";break;case"composite":s=0,r="composite",n=0;break;case"square":r="rect";break;case"diamond":r="question";break;case"hexagon":r="hexagon";break;case"block_arrow":r="block_arrow";break;case"odd":r="rect_left_inv_arrow";break;case"lean_right":r="lean_right";break;case"lean_left":r="lean_left";break;case"trapezoid":r="trapezoid";break;case"inv_trapezoid":r="inv_trapezoid";break;case"rect_left_inv_arrow":r="rect_left_inv_arrow";break;case"circle":r="circle";break;case"ellipse":r="ellipse";break;case"stadium":r="stadium";break;case"subroutine":r="subroutine";break;case"cylinder":r="cylinder";break;case"group":r="rect";break;case"doublecircle":r="doublecircle";break;default:r="rect"}let c=Zt(i?.styles??[]),x=i.label,o=i.size??{width:0,height:0,x:0,y:0},u=t.getDiagramId();return{labelStyle:c.labelStyle,shape:r,labelText:x,rx:s,ry:s,class:l,style:c.style,id:i.id,domId:u?`${u}-${i.id}`:i.id,directions:i.directions,width:o.width,height:o.height,x:o.x,y:o.y,positioned:a,intersect:void 0,type:i.type,padding:n??tt()?.block?.padding??0}}g(Rt,"getNodeFromBlock");function ke(e,t,a){return _(this,null,function*(){let i=Rt(t,a,!1);if(i.type==="group")return;let l=tt(),s=yield we(e,i,{config:l}),r=s.node().getBBox(),n=a.getBlock(i.id);n.size={width:r.width,height:r.height,x:0,y:0,node:s},a.setBlock(n),s.remove()})}g(ke,"calculateBlockSize");function Le(e,t,a){return _(this,null,function*(){let i=Rt(t,a,!0);if(a.getBlock(i.id).type!=="space"){let s=tt();yield we(e,i,{config:s}),t.intersect=i?.intersect,Jr(i)}})}g(Le,"insertBlockPositioned");function ft(e,t,a,i){return _(this,null,function*(){for(let l of t)yield i(e,l,a),l.children&&(yield ft(e,l.children,a,i))})}g(ft,"performOperations");function Se(e,t,a){return _(this,null,function*(){yield ft(e,t,a,ke)})}g(Se,"calculateBlockSizes");function ve(e,t,a){return _(this,null,function*(){yield ft(e,t,a,Le)})}g(ve,"insertBlocks");function Ee(e,t,a,i,l){return _(this,null,function*(){let s=new Jt({multigraph:!0,compound:!0});s.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let r of a)r.size&&s.setNode(r.id,{width:r.size.width,height:r.size.height,intersect:r.intersect});for(let r of t)if(r.start&&r.end){let n=i.getBlock(r.start),c=i.getBlock(r.end);if(n?.size&&c?.size){let x=n.size,o=c.size,u=[{x:x.x,y:x.y},{x:x.x+(o.x-x.x)/2,y:x.y+(o.y-x.y)/2},{x:o.x,y:o.y}],y=l?`${l}-${r.id}`:r.id;mr(e,{v:r.start,w:r.end,name:y},st(at({},r),{id:y,arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:u,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"}),void 0,"block",s,l),r.label&&(yield fr(e,st(at({},r),{label:r.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:r.arrowTypeEnd,arrowTypeStart:r.arrowTypeStart,points:u,classes:"edge-thickness-normal edge-pattern-solid flowchart-link LS-a1 LE-b1"})),xr(st(at({},r),{x:u[1].x,y:u[1].y}),{originalPath:u}))}}})}g(Ee,"insertEdges");var Qr=g(function(e,t){return t.db.getClasses()},"getClasses"),$r=g(function(e,t,a,i){return _(this,null,function*(){let{securityLevel:l,block:s}=tt(),r=i.db;r.setDiagramId(t);let n;l==="sandbox"&&(n=D("#i"+t));let c=l==="sandbox"?D(n.nodes()[0].contentDocument.body):D("body"),x=l==="sandbox"?c.select(`[id="${t}"]`):D(`[id="${t}"]`);hr(x,["point","circle","cross"],i.type,t);let u=r.getBlocks(),y=r.getBlocksFlat(),f=r.getEdges(),w=x.insert("g").attr("class","block");yield Se(w,u,r);let v=ue(r);if(yield ve(w,u,r),yield Ee(w,f,y,r,t),v){let k=v,T=Math.max(1,Math.round(.125*(k.width/k.height))),C=k.height+T+10,B=k.width+10,{useMaxWidth:m}=s;Kt(x,C,B,!!m),L.debug("Here Bounds",v,k),x.attr("viewBox",`${k.x-5} ${k.y-5} ${k.width+10} ${k.height+10}`)}})},"draw"),ta={draw:$r,getClasses:Qr},xa={parser:Be,db:qe,renderer:ta,styles:Qe};export{xa as diagram}; diff --git a/src/google/adk/cli/browser/chunk-WLB2FJ7K.js b/src/google/adk/cli/browser/chunk-WLB2FJ7K.js deleted file mode 100644 index 06877cfaca..0000000000 --- a/src/google/adk/cli/browser/chunk-WLB2FJ7K.js +++ /dev/null @@ -1,10 +0,0 @@ -import{a as ke,f as Ee}from"./chunk-NMKTPNXE.js";import{g as ve,h as ee,i as Ct}from"./chunk-WBLSVR3V.js";import{a as Fe}from"./chunk-GP6TCC26.js";import{G as te,M as Yt,N as be,S as ge,T as _e,U as xe,V as me,Y as Ot,o as ye}from"./chunk-QFMJV7VH.js";import{a as Dt,g as b,i as $t}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{h as Ue}from"./chunk-RMXJBC7V.js";var Re=Ue(Fe(),1),Ut=(function(){var e=b(function(_t,x,m,v){for(m=m||{},v=_t.length;v--;m[_t[v]]=x);return m},"o"),t=[1,24],s=[1,25],o=[1,26],l=[1,27],a=[1,28],n=[1,63],r=[1,64],i=[1,65],u=[1,66],d=[1,67],y=[1,68],p=[1,69],k=[1,29],O=[1,30],S=[1,31],P=[1,32],M=[1,33],U=[1,34],H=[1,35],q=[1,36],G=[1,37],K=[1,38],J=[1,39],Z=[1,40],$=[1,41],tt=[1,42],et=[1,43],at=[1,44],it=[1,45],rt=[1,46],nt=[1,47],st=[1,48],lt=[1,50],ot=[1,51],ct=[1,52],ht=[1,53],ut=[1,54],dt=[1,55],ft=[1,56],pt=[1,57],yt=[1,58],bt=[1,59],gt=[1,60],wt=[14,42],Wt=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Rt=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],E=[1,82],A=[1,83],C=[1,84],w=[1,85],T=[12,14,42],ce=[12,14,33,42],It=[12,14,33,42,76,77,79,80],vt=[12,33],Qt=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],Ht={trace:b(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:b(function(x,m,v,g,R,h,St){var f=h.length-1;switch(R){case 3:g.setDirection("TB");break;case 4:g.setDirection("BT");break;case 5:g.setDirection("RL");break;case 6:g.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:g.setC4Type(h[f-3]);break;case 19:g.setTitle(h[f].substring(6)),this.$=h[f].substring(6);break;case 20:g.setAccDescription(h[f].substring(15)),this.$=h[f].substring(15);break;case 21:this.$=h[f].trim(),g.setTitle(this.$);break;case 22:case 23:this.$=h[f].trim(),g.setAccDescription(this.$);break;case 28:h[f].splice(2,0,"ENTERPRISE"),g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 29:h[f].splice(2,0,"SYSTEM"),g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 30:g.addPersonOrSystemBoundary(...h[f]),this.$=h[f];break;case 31:h[f].splice(2,0,"CONTAINER"),g.addContainerBoundary(...h[f]),this.$=h[f];break;case 32:g.addDeploymentNode("node",...h[f]),this.$=h[f];break;case 33:g.addDeploymentNode("nodeL",...h[f]),this.$=h[f];break;case 34:g.addDeploymentNode("nodeR",...h[f]),this.$=h[f];break;case 35:g.popBoundaryParseStack();break;case 39:g.addPersonOrSystem("person",...h[f]),this.$=h[f];break;case 40:g.addPersonOrSystem("external_person",...h[f]),this.$=h[f];break;case 41:g.addPersonOrSystem("system",...h[f]),this.$=h[f];break;case 42:g.addPersonOrSystem("system_db",...h[f]),this.$=h[f];break;case 43:g.addPersonOrSystem("system_queue",...h[f]),this.$=h[f];break;case 44:g.addPersonOrSystem("external_system",...h[f]),this.$=h[f];break;case 45:g.addPersonOrSystem("external_system_db",...h[f]),this.$=h[f];break;case 46:g.addPersonOrSystem("external_system_queue",...h[f]),this.$=h[f];break;case 47:g.addContainer("container",...h[f]),this.$=h[f];break;case 48:g.addContainer("container_db",...h[f]),this.$=h[f];break;case 49:g.addContainer("container_queue",...h[f]),this.$=h[f];break;case 50:g.addContainer("external_container",...h[f]),this.$=h[f];break;case 51:g.addContainer("external_container_db",...h[f]),this.$=h[f];break;case 52:g.addContainer("external_container_queue",...h[f]),this.$=h[f];break;case 53:g.addComponent("component",...h[f]),this.$=h[f];break;case 54:g.addComponent("component_db",...h[f]),this.$=h[f];break;case 55:g.addComponent("component_queue",...h[f]),this.$=h[f];break;case 56:g.addComponent("external_component",...h[f]),this.$=h[f];break;case 57:g.addComponent("external_component_db",...h[f]),this.$=h[f];break;case 58:g.addComponent("external_component_queue",...h[f]),this.$=h[f];break;case 60:g.addRel("rel",...h[f]),this.$=h[f];break;case 61:g.addRel("birel",...h[f]),this.$=h[f];break;case 62:g.addRel("rel_u",...h[f]),this.$=h[f];break;case 63:g.addRel("rel_d",...h[f]),this.$=h[f];break;case 64:g.addRel("rel_l",...h[f]),this.$=h[f];break;case 65:g.addRel("rel_r",...h[f]),this.$=h[f];break;case 66:g.addRel("rel_b",...h[f]),this.$=h[f];break;case 67:h[f].splice(0,1),g.addRel("rel",...h[f]),this.$=h[f];break;case 68:g.updateElStyle("update_el_style",...h[f]),this.$=h[f];break;case 69:g.updateRelStyle("update_rel_style",...h[f]),this.$=h[f];break;case 70:g.updateLayoutConfig("update_layout_config",...h[f]),this.$=h[f];break;case 71:this.$=[h[f]];break;case 72:h[f].unshift(h[f-1]),this.$=h[f];break;case 73:case 75:this.$=h[f].trim();break;case 74:let kt={};kt[h[f-1].trim()]=h[f].trim(),this.$=kt;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:n,36:r,37:i,38:u,39:d,40:y,41:p,43:23,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:70,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:n,36:r,37:i,38:u,39:d,40:y,41:p,43:23,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:71,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:n,36:r,37:i,38:u,39:d,40:y,41:p,43:23,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:72,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:n,36:r,37:i,38:u,39:d,40:y,41:p,43:23,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{13:73,19:20,20:21,21:22,22:t,23:s,24:o,26:l,28:a,29:49,30:61,32:62,34:n,36:r,37:i,38:u,39:d,40:y,41:p,43:23,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{14:[1,74]},e(wt,[2,13],{43:23,29:49,30:61,32:62,20:75,34:n,36:r,37:i,38:u,39:d,40:y,41:p,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt}),e(wt,[2,14]),e(Wt,[2,16],{12:[1,76]}),e(wt,[2,36],{12:[1,77]}),e(Rt,[2,19]),e(Rt,[2,20]),{25:[1,78]},{27:[1,79]},e(Rt,[2,23]),{35:80,75:81,76:E,77:A,79:C,80:w},{35:86,75:81,76:E,77:A,79:C,80:w},{35:87,75:81,76:E,77:A,79:C,80:w},{35:88,75:81,76:E,77:A,79:C,80:w},{35:89,75:81,76:E,77:A,79:C,80:w},{35:90,75:81,76:E,77:A,79:C,80:w},{35:91,75:81,76:E,77:A,79:C,80:w},{35:92,75:81,76:E,77:A,79:C,80:w},{35:93,75:81,76:E,77:A,79:C,80:w},{35:94,75:81,76:E,77:A,79:C,80:w},{35:95,75:81,76:E,77:A,79:C,80:w},{35:96,75:81,76:E,77:A,79:C,80:w},{35:97,75:81,76:E,77:A,79:C,80:w},{35:98,75:81,76:E,77:A,79:C,80:w},{35:99,75:81,76:E,77:A,79:C,80:w},{35:100,75:81,76:E,77:A,79:C,80:w},{35:101,75:81,76:E,77:A,79:C,80:w},{35:102,75:81,76:E,77:A,79:C,80:w},{35:103,75:81,76:E,77:A,79:C,80:w},{35:104,75:81,76:E,77:A,79:C,80:w},e(T,[2,59]),{35:105,75:81,76:E,77:A,79:C,80:w},{35:106,75:81,76:E,77:A,79:C,80:w},{35:107,75:81,76:E,77:A,79:C,80:w},{35:108,75:81,76:E,77:A,79:C,80:w},{35:109,75:81,76:E,77:A,79:C,80:w},{35:110,75:81,76:E,77:A,79:C,80:w},{35:111,75:81,76:E,77:A,79:C,80:w},{35:112,75:81,76:E,77:A,79:C,80:w},{35:113,75:81,76:E,77:A,79:C,80:w},{35:114,75:81,76:E,77:A,79:C,80:w},{35:115,75:81,76:E,77:A,79:C,80:w},{20:116,29:49,30:61,32:62,34:n,36:r,37:i,38:u,39:d,40:y,41:p,43:23,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt},{12:[1,118],33:[1,117]},{35:119,75:81,76:E,77:A,79:C,80:w},{35:120,75:81,76:E,77:A,79:C,80:w},{35:121,75:81,76:E,77:A,79:C,80:w},{35:122,75:81,76:E,77:A,79:C,80:w},{35:123,75:81,76:E,77:A,79:C,80:w},{35:124,75:81,76:E,77:A,79:C,80:w},{35:125,75:81,76:E,77:A,79:C,80:w},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},e(wt,[2,15]),e(Wt,[2,17],{21:22,19:130,22:t,23:s,24:o,26:l,28:a}),e(wt,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:t,23:s,24:o,26:l,28:a,34:n,36:r,37:i,38:u,39:d,40:y,41:p,44:k,45:O,46:S,47:P,48:M,49:U,50:H,51:q,52:G,53:K,54:J,55:Z,56:$,57:tt,58:et,59:at,60:it,61:rt,62:nt,63:st,64:lt,65:ot,66:ct,67:ht,68:ut,69:dt,70:ft,71:pt,72:yt,73:bt,74:gt}),e(Rt,[2,21]),e(Rt,[2,22]),e(T,[2,39]),e(ce,[2,71],{75:81,35:132,76:E,77:A,79:C,80:w}),e(It,[2,73]),{78:[1,133]},e(It,[2,75]),e(It,[2,76]),e(T,[2,40]),e(T,[2,41]),e(T,[2,42]),e(T,[2,43]),e(T,[2,44]),e(T,[2,45]),e(T,[2,46]),e(T,[2,47]),e(T,[2,48]),e(T,[2,49]),e(T,[2,50]),e(T,[2,51]),e(T,[2,52]),e(T,[2,53]),e(T,[2,54]),e(T,[2,55]),e(T,[2,56]),e(T,[2,57]),e(T,[2,58]),e(T,[2,60]),e(T,[2,61]),e(T,[2,62]),e(T,[2,63]),e(T,[2,64]),e(T,[2,65]),e(T,[2,66]),e(T,[2,67]),e(T,[2,68]),e(T,[2,69]),e(T,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},e(vt,[2,28]),e(vt,[2,29]),e(vt,[2,30]),e(vt,[2,31]),e(vt,[2,32]),e(vt,[2,33]),e(vt,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},e(Wt,[2,18]),e(wt,[2,38]),e(ce,[2,72]),e(It,[2,74]),e(T,[2,24]),e(T,[2,35]),e(Qt,[2,25]),e(Qt,[2,26],{12:[1,138]}),e(Qt,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:b(function(x,m){if(m.recoverable)this.trace(x);else{var v=new Error(x);throw v.hash=m,v}},"parseError"),parse:b(function(x){var m=this,v=[0],g=[],R=[null],h=[],St=this.table,f="",kt=0,he=0,ue=0,Le=2,de=1,Ne=h.slice.call(arguments,1),D=Object.create(this.lexer),Et={yy:{}};for(var qt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,qt)&&(Et.yy[qt]=this.yy[qt]);D.setInput(x,Et.yy),Et.yy.lexer=D,Et.yy.parser=this,typeof D.yylloc>"u"&&(D.yylloc={});var Gt=D.yylloc;h.push(Gt);var Ye=D.options&&D.options.ranges;typeof Et.yy.parseError=="function"?this.parseError=Et.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function je(L){v.length=v.length-2*L,R.length=R.length-L,h.length=h.length-L}b(je,"popStack");function fe(){var L;return L=g.pop()||D.lex()||de,typeof L!="number"&&(L instanceof Array&&(g=L,L=g.pop()),L=m.symbols_[L]||L),L}b(fe,"lex");for(var B,Kt,At,N,M0,Jt,Tt={},Lt,W,pe,Nt;;){if(At=v[v.length-1],this.defaultActions[At]?N=this.defaultActions[At]:((B===null||typeof B>"u")&&(B=fe()),N=St[At]&&St[At][B]),typeof N>"u"||!N.length||!N[0]){var Zt="";Nt=[];for(Lt in St[At])this.terminals_[Lt]&&Lt>Le&&Nt.push("'"+this.terminals_[Lt]+"'");D.showPosition?Zt="Parse error on line "+(kt+1)+`: -`+D.showPosition()+` -Expecting `+Nt.join(", ")+", got '"+(this.terminals_[B]||B)+"'":Zt="Parse error on line "+(kt+1)+": Unexpected "+(B==de?"end of input":"'"+(this.terminals_[B]||B)+"'"),this.parseError(Zt,{text:D.match,token:this.terminals_[B]||B,line:D.yylineno,loc:Gt,expected:Nt})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+At+", token: "+B);switch(N[0]){case 1:v.push(B),R.push(D.yytext),h.push(D.yylloc),v.push(N[1]),B=null,Kt?(B=Kt,Kt=null):(he=D.yyleng,f=D.yytext,kt=D.yylineno,Gt=D.yylloc,ue>0&&ue--);break;case 2:if(W=this.productions_[N[1]][1],Tt.$=R[R.length-W],Tt._$={first_line:h[h.length-(W||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(W||1)].first_column,last_column:h[h.length-1].last_column},Ye&&(Tt._$.range=[h[h.length-(W||1)].range[0],h[h.length-1].range[1]]),Jt=this.performAction.apply(Tt,[f,he,kt,Et.yy,N[1],R,h].concat(Ne)),typeof Jt<"u")return Jt;W&&(v=v.slice(0,-1*W*2),R=R.slice(0,-1*W),h=h.slice(0,-1*W)),v.push(this.productions_[N[1]][0]),R.push(Tt.$),h.push(Tt._$),pe=St[v[v.length-2]][v[v.length-1]],v.push(pe);break;case 3:return!0}}return!0},"parse")},Me=(function(){var _t={EOF:1,parseError:b(function(m,v){if(this.yy.parser)this.yy.parser.parseError(m,v);else throw new Error(m)},"parseError"),setInput:b(function(x,m){return this.yy=m||this.yy||{},this._input=x,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:b(function(){var x=this._input[0];this.yytext+=x,this.yyleng++,this.offset++,this.match+=x,this.matched+=x;var m=x.match(/(?:\r\n?|\n).*/g);return m?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),x},"input"),unput:b(function(x){var m=x.length,v=x.split(/(?:\r\n?|\n)/g);this._input=x+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),v.length-1&&(this.yylineno-=v.length-1);var R=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:v?(v.length===g.length?this.yylloc.first_column:0)+g[g.length-v.length].length-v[0].length:this.yylloc.first_column-m},this.options.ranges&&(this.yylloc.range=[R[0],R[0]+this.yyleng-m]),this.yyleng=this.yytext.length,this},"unput"),more:b(function(){return this._more=!0,this},"more"),reject:b(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:b(function(x){this.unput(this.match.slice(x))},"less"),pastInput:b(function(){var x=this.matched.substr(0,this.matched.length-this.match.length);return(x.length>20?"...":"")+x.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:b(function(){var x=this.match;return x.length<20&&(x+=this._input.substr(0,20-x.length)),(x.substr(0,20)+(x.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:b(function(){var x=this.pastInput(),m=new Array(x.length+1).join("-");return x+this.upcomingInput()+` -`+m+"^"},"showPosition"),test_match:b(function(x,m){var v,g,R;if(this.options.backtrack_lexer&&(R={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(R.yylloc.range=this.yylloc.range.slice(0))),g=x[0].match(/(?:\r\n?|\n).*/g),g&&(this.yylineno+=g.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+x[0].length},this.yytext+=x[0],this.match+=x[0],this.matches=x,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(x[0].length),this.matched+=x[0],v=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),v)return v;if(this._backtrack){for(var h in R)this[h]=R[h];return!1}return!1},"test_match"),next:b(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var x,m,v,g;this._more||(this.yytext="",this.match="");for(var R=this._currentRules(),h=0;hm[0].length)){if(m=v,g=h,this.options.backtrack_lexer){if(x=this.test_match(v,R[h]),x!==!1)return x;if(this._backtrack){m=!1;continue}else return!1}else if(!this.options.flex)break}return m?(x=this.test_match(m,R[g]),x!==!1?x:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:b(function(){var m=this.next();return m||this.lex()},"lex"),begin:b(function(m){this.conditionStack.push(m)},"begin"),popState:b(function(){var m=this.conditionStack.length-1;return m>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:b(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:b(function(m){return m=this.conditionStack.length-1-Math.abs(m||0),m>=0?this.conditionStack[m]:"INITIAL"},"topState"),pushState:b(function(m){this.begin(m)},"pushState"),stateStackSize:b(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:b(function(m,v,g,R){var h=R;switch(g){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[65,66,67,68],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return _t})();Ht.lexer=Me;function Mt(){this.yy={}}return b(Mt,"Parser"),Mt.prototype=Ht,Ht.Parser=Mt,new Mt})();Ut.parser=Ut;var Ve=Ut,V=[],xt=[""],I="global",F="",X=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Bt=[],ne="",se=!1,Ft=4,Vt=2,we,ze=b(function(){return we},"getC4Type"),Xe=b(function(e){we=te(e,Ot())},"setC4Type"),We=b(function(e,t,s,o,l,a,n,r,i){if(e==null||t===void 0||t===null||s===void 0||s===null||o===void 0||o===null)return;let u={},d=Bt.find(y=>y.from===t&&y.to===s);if(d?u=d:Bt.push(u),u.type=e,u.from=t,u.to=s,u.label={text:o},l==null)u.techn={text:""};else if(typeof l=="object"){let[y,p]=Object.entries(l)[0];u[y]={text:p}}else u.techn={text:l};if(a==null)u.descr={text:""};else if(typeof a=="object"){let[y,p]=Object.entries(a)[0];u[y]={text:p}}else u.descr={text:a};if(typeof n=="object"){let[y,p]=Object.entries(n)[0];u[y]=p}else u.sprite=n;if(typeof r=="object"){let[y,p]=Object.entries(r)[0];u[y]=p}else u.tags=r;if(typeof i=="object"){let[y,p]=Object.entries(i)[0];u[y]=p}else u.link=i;u.wrap=mt()},"addRel"),Qe=b(function(e,t,s,o,l,a,n){if(t===null||s===null)return;let r={},i=V.find(u=>u.alias===t);if(i&&t===i.alias?r=i:(r.alias=t,V.push(r)),s==null?r.label={text:""}:r.label={text:s},o==null)r.descr={text:""};else if(typeof o=="object"){let[u,d]=Object.entries(o)[0];r[u]={text:d}}else r.descr={text:o};if(typeof l=="object"){let[u,d]=Object.entries(l)[0];r[u]=d}else r.sprite=l;if(typeof a=="object"){let[u,d]=Object.entries(a)[0];r[u]=d}else r.tags=a;if(typeof n=="object"){let[u,d]=Object.entries(n)[0];r[u]=d}else r.link=n;r.typeC4Shape={text:e},r.parentBoundary=I,r.wrap=mt()},"addPersonOrSystem"),He=b(function(e,t,s,o,l,a,n,r){if(t===null||s===null)return;let i={},u=V.find(d=>d.alias===t);if(u&&t===u.alias?i=u:(i.alias=t,V.push(i)),s==null?i.label={text:""}:i.label={text:s},o==null)i.techn={text:""};else if(typeof o=="object"){let[d,y]=Object.entries(o)[0];i[d]={text:y}}else i.techn={text:o};if(l==null)i.descr={text:""};else if(typeof l=="object"){let[d,y]=Object.entries(l)[0];i[d]={text:y}}else i.descr={text:l};if(typeof a=="object"){let[d,y]=Object.entries(a)[0];i[d]=y}else i.sprite=a;if(typeof n=="object"){let[d,y]=Object.entries(n)[0];i[d]=y}else i.tags=n;if(typeof r=="object"){let[d,y]=Object.entries(r)[0];i[d]=y}else i.link=r;i.wrap=mt(),i.typeC4Shape={text:e},i.parentBoundary=I},"addContainer"),qe=b(function(e,t,s,o,l,a,n,r){if(t===null||s===null)return;let i={},u=V.find(d=>d.alias===t);if(u&&t===u.alias?i=u:(i.alias=t,V.push(i)),s==null?i.label={text:""}:i.label={text:s},o==null)i.techn={text:""};else if(typeof o=="object"){let[d,y]=Object.entries(o)[0];i[d]={text:y}}else i.techn={text:o};if(l==null)i.descr={text:""};else if(typeof l=="object"){let[d,y]=Object.entries(l)[0];i[d]={text:y}}else i.descr={text:l};if(typeof a=="object"){let[d,y]=Object.entries(a)[0];i[d]=y}else i.sprite=a;if(typeof n=="object"){let[d,y]=Object.entries(n)[0];i[d]=y}else i.tags=n;if(typeof r=="object"){let[d,y]=Object.entries(r)[0];i[d]=y}else i.link=r;i.wrap=mt(),i.typeC4Shape={text:e},i.parentBoundary=I},"addComponent"),Ge=b(function(e,t,s,o,l){if(e===null||t===null)return;let a={},n=X.find(r=>r.alias===e);if(n&&e===n.alias?a=n:(a.alias=e,X.push(a)),t==null?a.label={text:""}:a.label={text:t},s==null)a.type={text:"system"};else if(typeof s=="object"){let[r,i]=Object.entries(s)[0];a[r]={text:i}}else a.type={text:s};if(typeof o=="object"){let[r,i]=Object.entries(o)[0];a[r]=i}else a.tags=o;if(typeof l=="object"){let[r,i]=Object.entries(l)[0];a[r]=i}else a.link=l;a.parentBoundary=I,a.wrap=mt(),F=I,I=e,xt.push(F)},"addPersonOrSystemBoundary"),Ke=b(function(e,t,s,o,l){if(e===null||t===null)return;let a={},n=X.find(r=>r.alias===e);if(n&&e===n.alias?a=n:(a.alias=e,X.push(a)),t==null?a.label={text:""}:a.label={text:t},s==null)a.type={text:"container"};else if(typeof s=="object"){let[r,i]=Object.entries(s)[0];a[r]={text:i}}else a.type={text:s};if(typeof o=="object"){let[r,i]=Object.entries(o)[0];a[r]=i}else a.tags=o;if(typeof l=="object"){let[r,i]=Object.entries(l)[0];a[r]=i}else a.link=l;a.parentBoundary=I,a.wrap=mt(),F=I,I=e,xt.push(F)},"addContainerBoundary"),Je=b(function(e,t,s,o,l,a,n,r){if(t===null||s===null)return;let i={},u=X.find(d=>d.alias===t);if(u&&t===u.alias?i=u:(i.alias=t,X.push(i)),s==null?i.label={text:""}:i.label={text:s},o==null)i.type={text:"node"};else if(typeof o=="object"){let[d,y]=Object.entries(o)[0];i[d]={text:y}}else i.type={text:o};if(l==null)i.descr={text:""};else if(typeof l=="object"){let[d,y]=Object.entries(l)[0];i[d]={text:y}}else i.descr={text:l};if(typeof n=="object"){let[d,y]=Object.entries(n)[0];i[d]=y}else i.tags=n;if(typeof r=="object"){let[d,y]=Object.entries(r)[0];i[d]=y}else i.link=r;i.nodeType=e,i.parentBoundary=I,i.wrap=mt(),F=I,I=t,xt.push(F)},"addDeploymentNode"),Ze=b(function(){I=F,xt.pop(),F=xt.pop(),xt.push(F)},"popBoundaryParseStack"),$e=b(function(e,t,s,o,l,a,n,r,i,u,d){let y=V.find(p=>p.alias===t);if(!(y===void 0&&(y=X.find(p=>p.alias===t),y===void 0))){if(s!=null)if(typeof s=="object"){let[p,k]=Object.entries(s)[0];y[p]=k}else y.bgColor=s;if(o!=null)if(typeof o=="object"){let[p,k]=Object.entries(o)[0];y[p]=k}else y.fontColor=o;if(l!=null)if(typeof l=="object"){let[p,k]=Object.entries(l)[0];y[p]=k}else y.borderColor=l;if(a!=null)if(typeof a=="object"){let[p,k]=Object.entries(a)[0];y[p]=k}else y.shadowing=a;if(n!=null)if(typeof n=="object"){let[p,k]=Object.entries(n)[0];y[p]=k}else y.shape=n;if(r!=null)if(typeof r=="object"){let[p,k]=Object.entries(r)[0];y[p]=k}else y.sprite=r;if(i!=null)if(typeof i=="object"){let[p,k]=Object.entries(i)[0];y[p]=k}else y.techn=i;if(u!=null)if(typeof u=="object"){let[p,k]=Object.entries(u)[0];y[p]=k}else y.legendText=u;if(d!=null)if(typeof d=="object"){let[p,k]=Object.entries(d)[0];y[p]=k}else y.legendSprite=d}},"updateElStyle"),t0=b(function(e,t,s,o,l,a,n){let r=Bt.find(i=>i.from===t&&i.to===s);if(r!==void 0){if(o!=null)if(typeof o=="object"){let[i,u]=Object.entries(o)[0];r[i]=u}else r.textColor=o;if(l!=null)if(typeof l=="object"){let[i,u]=Object.entries(l)[0];r[i]=u}else r.lineColor=l;if(a!=null)if(typeof a=="object"){let[i,u]=Object.entries(a)[0];r[i]=parseInt(u)}else r.offsetX=parseInt(a);if(n!=null)if(typeof n=="object"){let[i,u]=Object.entries(n)[0];r[i]=parseInt(u)}else r.offsetY=parseInt(n)}},"updateRelStyle"),e0=b(function(e,t,s){let o=Ft,l=Vt;if(typeof t=="object"){let a=Object.values(t)[0];o=parseInt(a)}else o=parseInt(t);if(typeof s=="object"){let a=Object.values(s)[0];l=parseInt(a)}else l=parseInt(s);o>=1&&(Ft=o),l>=1&&(Vt=l)},"updateLayoutConfig"),a0=b(function(){return Ft},"getC4ShapeInRow"),i0=b(function(){return Vt},"getC4BoundaryInRow"),r0=b(function(){return I},"getCurrentBoundaryParse"),n0=b(function(){return F},"getParentBoundaryParse"),Te=b(function(e){return e==null?V:V.filter(t=>t.parentBoundary===e)},"getC4ShapeArray"),s0=b(function(e){return V.find(t=>t.alias===e)},"getC4Shape"),l0=b(function(e){return Object.keys(Te(e))},"getC4ShapeKeys"),Oe=b(function(e){return e==null?X:X.filter(t=>t.parentBoundary===e)},"getBoundaries"),o0=Oe,c0=b(function(){return Bt},"getRels"),h0=b(function(){return ne},"getTitle"),u0=b(function(e){se=e},"setWrap"),mt=b(function(){return se},"autoWrap"),d0=b(function(){V=[],X=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],F="",I="global",xt=[""],Bt=[],xt=[""],ne="",se=!1,Ft=4,Vt=2},"clear"),f0={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},p0={FILLED:0,OPEN:1},y0={LEFTOF:0,RIGHTOF:1,OVER:2},b0=b(function(e){ne=te(e,Ot())},"setTitle"),ae={addPersonOrSystem:Qe,addPersonOrSystemBoundary:Ge,addContainer:He,addContainerBoundary:Ke,addComponent:qe,addDeploymentNode:Je,popBoundaryParseStack:Ze,addRel:We,updateElStyle:$e,updateRelStyle:t0,updateLayoutConfig:e0,autoWrap:mt,setWrap:u0,getC4ShapeArray:Te,getC4Shape:s0,getC4ShapeKeys:l0,getBoundaries:Oe,getBoundarys:o0,getCurrentBoundaryParse:r0,getParentBoundaryParse:n0,getRels:c0,getTitle:h0,getC4Type:ze,getC4ShapeInRow:a0,getC4BoundaryInRow:i0,setAccTitle:ge,getAccTitle:_e,getAccDescription:me,setAccDescription:xe,getConfig:b(()=>Ot().c4,"getConfig"),clear:d0,LINETYPE:f0,ARROWTYPE:p0,PLACEMENT:y0,setTitle:b0,setC4Type:Xe},le=b(function(e,t){return ke(e,t)},"drawRect"),Se=b(function(e,t,s,o,l,a){let n=e.append("image");n.attr("width",t),n.attr("height",s),n.attr("x",o),n.attr("y",l);let r=a.startsWith("data:image/png;base64")?a:(0,Re.sanitizeUrl)(a);n.attr("xlink:href",r)},"drawImage"),g0=b((e,t,s)=>{let o=e.append("g"),l=0;for(let a of t){let n=a.textColor?a.textColor:"#444444",r=a.lineColor?a.lineColor:"#444444",i=a.offsetX?parseInt(a.offsetX):0,u=a.offsetY?parseInt(a.offsetY):0,d="";if(l===0){let p=o.append("line");p.attr("x1",a.startPoint.x),p.attr("y1",a.startPoint.y),p.attr("x2",a.endPoint.x),p.attr("y2",a.endPoint.y),p.attr("stroke-width","1"),p.attr("stroke",r),p.style("fill","none"),a.type!=="rel_b"&&p.attr("marker-end","url("+d+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+d+"#arrowend)"),l=-1}else{let p=o.append("path");p.attr("fill","none").attr("stroke-width","1").attr("stroke",r).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b"&&p.attr("marker-end","url("+d+"#arrowhead)"),(a.type==="birel"||a.type==="rel_b")&&p.attr("marker-start","url("+d+"#arrowend)")}let y=s.messageFont();Q(s)(a.label.text,o,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+i,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+u,a.label.width,a.label.height,{fill:n},y),a.techn&&a.techn.text!==""&&(y=s.messageFont(),Q(s)("["+a.techn.text+"]",o,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+i,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+s.messageFontSize+5+u,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:n,"font-style":"italic"},y))}},"drawRels"),_0=b(function(e,t,s){let o=e.append("g"),l=t.bgColor?t.bgColor:"none",a=t.borderColor?t.borderColor:"#444444",n=t.fontColor?t.fontColor:"black",r={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};t.nodeType&&(r={"stroke-width":1});let i={x:t.x,y:t.y,fill:l,stroke:a,width:t.width,height:t.height,rx:2.5,ry:2.5,attrs:r};le(o,i);let u=s.boundaryFont();u.fontWeight="bold",u.fontSize=u.fontSize+2,u.fontColor=n,Q(s)(t.label.text,o,t.x,t.y+t.label.Y,t.width,t.height,{fill:"#444444"},u),t.type&&t.type.text!==""&&(u=s.boundaryFont(),u.fontColor=n,Q(s)(t.type.text,o,t.x,t.y+t.type.Y,t.width,t.height,{fill:"#444444"},u)),t.descr&&t.descr.text!==""&&(u=s.boundaryFont(),u.fontSize=u.fontSize-2,u.fontColor=n,Q(s)(t.descr.text,o,t.x,t.y+t.descr.Y,t.width,t.height,{fill:"#444444"},u))},"drawBoundary"),x0=b(function(e,t,s){let o=t.bgColor?t.bgColor:s[t.typeC4Shape.text+"_bg_color"],l=t.borderColor?t.borderColor:s[t.typeC4Shape.text+"_border_color"],a=t.fontColor?t.fontColor:"#FFFFFF",n="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(t.typeC4Shape.text){case"person":n="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":n="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let r=e.append("g");r.attr("class","person-man");let i=Ee();switch(t.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":i.x=t.x,i.y=t.y,i.fill=o,i.width=t.width,i.height=t.height,i.stroke=l,i.rx=2.5,i.ry=2.5,i.attrs={"stroke-width":.5},le(r,i);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":r.append("path").attr("fill",o).attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2).replaceAll("height",t.height)),r.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("half",t.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":r.append("path").attr("fill",o).attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",t.x).replaceAll("starty",t.y).replaceAll("width",t.width).replaceAll("half",t.height/2)),r.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",l).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",t.x+t.width).replaceAll("starty",t.y).replaceAll("half",t.height/2));break}let u=O0(s,t.typeC4Shape.text);switch(r.append("text").attr("fill",a).attr("font-family",u.fontFamily).attr("font-size",u.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",t.typeC4Shape.width).attr("x",t.x+t.width/2-t.typeC4Shape.width/2).attr("y",t.y+t.typeC4Shape.Y).text("<<"+t.typeC4Shape.text+">>"),t.typeC4Shape.text){case"person":case"external_person":Se(r,48,48,t.x+t.width/2-24,t.y+t.image.Y,n);break}let d=s[t.typeC4Shape.text+"Font"]();return d.fontWeight="bold",d.fontSize=d.fontSize+2,d.fontColor=a,Q(s)(t.label.text,r,t.x,t.y+t.label.Y,t.width,t.height,{fill:a},d),d=s[t.typeC4Shape.text+"Font"](),d.fontColor=a,t.techn&&t.techn?.text!==""?Q(s)(t.techn.text,r,t.x,t.y+t.techn.Y,t.width,t.height,{fill:a,"font-style":"italic"},d):t.type&&t.type.text!==""&&Q(s)(t.type.text,r,t.x,t.y+t.type.Y,t.width,t.height,{fill:a,"font-style":"italic"},d),t.descr&&t.descr.text!==""&&(d=s.personFont(),d.fontColor=a,Q(s)(t.descr.text,r,t.x,t.y+t.descr.Y,t.width,t.height,{fill:a},d)),t.height},"drawC4Shape"),m0=b(function(e){e.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),v0=b(function(e){e.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),k0=b(function(e){e.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),E0=b(function(e){e.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),A0=b(function(e){e.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),C0=b(function(e){e.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),w0=b(function(e){e.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertDynamicNumber"),T0=b(function(e){let s=e.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);s.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),s.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),O0=b((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"getC4ShapeFont"),Q=(function(){function e(l,a,n,r,i,u,d){let y=a.append("text").attr("x",n+i/2).attr("y",r+u/2+5).style("text-anchor","middle").text(l);o(y,d)}b(e,"byText");function t(l,a,n,r,i,u,d,y){let{fontSize:p,fontFamily:k,fontWeight:O}=y,S=l.split(Yt.lineBreakRegex);for(let P=0;P=this.data.widthLimit||s>=this.data.widthLimit||this.nextData.cnt>De)&&(t=this.nextData.startx+e.margin+_.nextLinePaddingX,o=this.nextData.stopy+e.margin*2,this.nextData.stopx=s=t+e.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=l=o+e.height,this.nextData.cnt=1),e.x=t,e.y=o,this.updateVal(this.data,"startx",t,Math.min),this.updateVal(this.data,"starty",o,Math.min),this.updateVal(this.data,"stopx",s,Math.max),this.updateVal(this.data,"stopy",l,Math.max),this.updateVal(this.nextData,"startx",t,Math.min),this.updateVal(this.nextData,"starty",o,Math.min),this.updateVal(this.nextData,"stopx",s,Math.max),this.updateVal(this.nextData,"stopy",l,Math.max)}init(e){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},re(e.db.getConfig())}bumpLastMargin(e){this.data.stopx+=e,this.data.stopy+=e}},re=b(function(e){ye(_,e),e.fontFamily&&(_.personFontFamily=_.systemFontFamily=_.messageFontFamily=e.fontFamily),e.fontSize&&(_.personFontSize=_.systemFontSize=_.messageFontSize=e.fontSize),e.fontWeight&&(_.personFontWeight=_.systemFontWeight=_.messageFontWeight=e.fontWeight)},"setConf"),Pt=b((e,t)=>({fontFamily:e[t+"FontFamily"],fontSize:e[t+"FontSize"],fontWeight:e[t+"FontWeight"]}),"c4ShapeFont"),jt=b(e=>({fontFamily:e.boundaryFontFamily,fontSize:e.boundaryFontSize,fontWeight:e.boundaryFontWeight}),"boundaryFont"),R0=b(e=>({fontFamily:e.messageFontFamily,fontSize:e.messageFontSize,fontWeight:e.messageFontWeight}),"messageFont");function j(e,t,s,o,l){if(!t[e].width)if(s)t[e].text=ve(t[e].text,l,o),t[e].textLines=t[e].text.split(Yt.lineBreakRegex).length,t[e].width=l,t[e].height=ee(t[e].text,o);else{let a=t[e].text.split(Yt.lineBreakRegex);t[e].textLines=a.length;let n=0;t[e].height=0,t[e].width=0;for(let r of a)t[e].width=Math.max(Ct(r,o),t[e].width),n=ee(r,o),t[e].height=t[e].height+n}}b(j,"calcC4ShapeTextWH");var Be=b(function(e,t,s){t.x=s.data.startx,t.y=s.data.starty,t.width=s.data.stopx-s.data.startx,t.height=s.data.stopy-s.data.starty,t.label.y=_.c4ShapeMargin-35;let o=t.wrap&&_.wrap,l=jt(_);l.fontSize=l.fontSize+2,l.fontWeight="bold";let a=Ct(t.label.text,l);j("label",t,o,l,a),z.drawBoundary(e,t,_)},"drawBoundary"),Ie=b(function(e,t,s,o){let l=0;for(let a of o){l=0;let n=s[a],r=Pt(_,n.typeC4Shape.text);switch(r.fontSize=r.fontSize-2,n.typeC4Shape.width=Ct("\xAB"+n.typeC4Shape.text+"\xBB",r),n.typeC4Shape.height=r.fontSize+2,n.typeC4Shape.Y=_.c4ShapePadding,l=n.typeC4Shape.Y+n.typeC4Shape.height-4,n.image={width:0,height:0,Y:0},n.typeC4Shape.text){case"person":case"external_person":n.image.width=48,n.image.height=48,n.image.Y=l,l=n.image.Y+n.image.height;break}n.sprite&&(n.image.width=48,n.image.height=48,n.image.Y=l,l=n.image.Y+n.image.height);let i=n.wrap&&_.wrap,u=_.width-_.c4ShapePadding*2,d=Pt(_,n.typeC4Shape.text);if(d.fontSize=d.fontSize+2,d.fontWeight="bold",j("label",n,i,d,u),n.label.Y=l+8,l=n.label.Y+n.label.height,n.type&&n.type.text!==""){n.type.text="["+n.type.text+"]";let k=Pt(_,n.typeC4Shape.text);j("type",n,i,k,u),n.type.Y=l+5,l=n.type.Y+n.type.height}else if(n.techn&&n.techn.text!==""){n.techn.text="["+n.techn.text+"]";let k=Pt(_,n.techn.text);j("techn",n,i,k,u),n.techn.Y=l+5,l=n.techn.Y+n.techn.height}let y=l,p=n.label.width;if(n.descr&&n.descr.text!==""){let k=Pt(_,n.typeC4Shape.text);j("descr",n,i,k,u),n.descr.Y=l+20,l=n.descr.Y+n.descr.height,p=Math.max(n.label.width,n.descr.width),y=l-n.descr.textLines*5}p=p+_.c4ShapePadding,n.width=Math.max(n.width||_.width,p,_.width),n.height=Math.max(n.height||_.height,y,_.height),n.margin=n.margin||_.c4ShapeMargin,e.insert(n),z.drawC4Shape(t,n,_)}e.bumpLastMargin(_.c4ShapeMargin)},"drawC4ShapeArray"),Y=class{static{b(this,"Point")}constructor(e,t){this.x=e,this.y=t}},Ae=b(function(e,t){let s=e.x,o=e.y,l=t.x,a=t.y,n=s+e.width/2,r=o+e.height/2,i=Math.abs(s-l),u=Math.abs(o-a),d=u/i,y=e.height/e.width,p=null;return o==a&&sl?p=new Y(s,r):s==l&&oa&&(p=new Y(n,o)),s>l&&o=d?p=new Y(s,r+d*e.width/2):p=new Y(n-i/u*e.height/2,o+e.height):s=d?p=new Y(s+e.width,r+d*e.width/2):p=new Y(n+i/u*e.height/2,o+e.height):sa?y>=d?p=new Y(s+e.width,r-d*e.width/2):p=new Y(n+e.height/2*i/u,o):s>l&&o>a&&(y>=d?p=new Y(s,r-e.width/2*d):p=new Y(n-e.height/2*i/u,o)),p},"getIntersectPoint"),S0=b(function(e,t){let s={x:0,y:0};s.x=t.x+t.width/2,s.y=t.y+t.height/2;let o=Ae(e,s);s.x=e.x+e.width/2,s.y=e.y+e.height/2;let l=Ae(t,s);return{startPoint:o,endPoint:l}},"getIntersectPoints"),D0=b(function(e,t,s,o){let l=0;for(let a of t){l=l+1;let n=a.wrap&&_.wrap,r=R0(_);o.db.getC4Type()==="C4Dynamic"&&(a.label.text=l+": "+a.label.text);let u=Ct(a.label.text,r);j("label",a,n,r,u),a.techn&&a.techn.text!==""&&(u=Ct(a.techn.text,r),j("techn",a,n,r,u)),a.descr&&a.descr.text!==""&&(u=Ct(a.descr.text,r),j("descr",a,n,r,u));let d=s(a.from),y=s(a.to),p=S0(d,y);a.startPoint=p.startPoint,a.endPoint=p.endPoint}z.drawRels(e,t,_)},"drawRels");function oe(e,t,s,o,l){let a=new Pe(l);a.data.widthLimit=s.data.widthLimit/Math.min(ie,o.length);for(let[n,r]of o.entries()){let i=0;r.image={width:0,height:0,Y:0},r.sprite&&(r.image.width=48,r.image.height=48,r.image.Y=i,i=r.image.Y+r.image.height);let u=r.wrap&&_.wrap,d=jt(_);if(d.fontSize=d.fontSize+2,d.fontWeight="bold",j("label",r,u,d,a.data.widthLimit),r.label.Y=i+8,i=r.label.Y+r.label.height,r.type&&r.type.text!==""){r.type.text="["+r.type.text+"]";let O=jt(_);j("type",r,u,O,a.data.widthLimit),r.type.Y=i+5,i=r.type.Y+r.type.height}if(r.descr&&r.descr.text!==""){let O=jt(_);O.fontSize=O.fontSize-2,j("descr",r,u,O,a.data.widthLimit),r.descr.Y=i+20,i=r.descr.Y+r.descr.height}if(n==0||n%ie===0){let O=s.data.startx+_.diagramMarginX,S=s.data.stopy+_.diagramMarginY+i;a.setData(O,O,S,S)}else{let O=a.data.stopx!==a.data.startx?a.data.stopx+_.diagramMarginX:a.data.startx,S=a.data.starty;a.setData(O,O,S,S)}a.name=r.alias;let y=l.db.getC4ShapeArray(r.alias),p=l.db.getC4ShapeKeys(r.alias);p.length>0&&Ie(a,e,y,p),t=r.alias;let k=l.db.getBoundaries(t);k.length>0&&oe(e,t,a,k,l),r.alias!=="global"&&Be(e,r,a),s.data.stopy=Math.max(a.data.stopy+_.c4ShapeMargin,s.data.stopy),s.data.stopx=Math.max(a.data.stopx+_.c4ShapeMargin,s.data.stopx),zt=Math.max(zt,s.data.stopx),Xt=Math.max(Xt,s.data.stopy)}}b(oe,"drawInsideBoundary");var P0=b(function(e,t,s,o){_=Ot().c4;let l=Ot().securityLevel,a;l==="sandbox"&&(a=Dt("#i"+t));let n=l==="sandbox"?Dt(a.nodes()[0].contentDocument.body):Dt("body"),r=o.db;o.db.setWrap(_.wrap),De=r.getC4ShapeInRow(),ie=r.getC4BoundaryInRow(),$t.debug(`C:${JSON.stringify(_,null,2)}`);let i=l==="sandbox"?n.select(`[id="${t}"]`):Dt(`[id="${t}"]`);z.insertComputerIcon(i),z.insertDatabaseIcon(i),z.insertClockIcon(i);let u=new Pe(o);u.setData(_.diagramMarginX,_.diagramMarginX,_.diagramMarginY,_.diagramMarginY),u.data.widthLimit=screen.availWidth,zt=_.diagramMarginX,Xt=_.diagramMarginY;let d=o.db.getTitle(),y=o.db.getBoundaries("");oe(i,"",u,y,o),z.insertArrowHead(i),z.insertArrowEnd(i),z.insertArrowCrossHead(i),z.insertArrowFilledHead(i),D0(i,o.db.getRels(),o.db.getC4Shape,o),u.data.stopx=zt,u.data.stopy=Xt;let p=u.data,O=p.stopy-p.starty+2*_.diagramMarginY,P=p.stopx-p.startx+2*_.diagramMarginX;d&&i.append("text").text(d).attr("x",(p.stopx-p.startx)/2-4*_.diagramMarginX).attr("y",p.starty+_.diagramMarginY),be(i,O,P,_.useMaxWidth);let M=d?60:0;i.attr("viewBox",p.startx-_.diagramMarginX+" -"+(_.diagramMarginY+M)+" "+P+" "+(O+M)),$t.debug("models:",p)},"draw"),Ce={drawPersonOrSystemArray:Ie,drawBoundary:Be,setConf:re,draw:P0},B0=b(e=>`.person { - stroke: ${e.personBorder}; - fill: ${e.personBkg}; - } -`,"getStyles"),I0=B0,F0={parser:Ve,db:ae,renderer:Ce,styles:I0,init:b(({c4:e,wrap:t})=>{Ce.setConf(e),ae.setWrap(t)},"init")};export{F0 as diagram}; diff --git a/src/google/adk/cli/browser/chunk-WZIWL22C.js b/src/google/adk/cli/browser/chunk-WZIWL22C.js deleted file mode 100644 index 76245bb8f4..0000000000 --- a/src/google/adk/cli/browser/chunk-WZIWL22C.js +++ /dev/null @@ -1,292 +0,0 @@ -import{m as Ie}from"./chunk-WBLSVR3V.js";import{a as Qe}from"./chunk-GP6TCC26.js";import{M as ce,N as le,R as ue,S as de,T as fe,U as he,V as me,W as ke,X as ye,Y as ot}from"./chunk-QFMJV7VH.js";import{A as we,B as _e,C as De,D as Se,E as Ce,F as Me,G as At,H as Ft,I as Ee,a as yt,c as ae,f as oe,g as c,i as it,k as ge,l as pe,m as ve,n as Te,t as be,u as Et,v as It,w as Lt,x as Yt,y as $t,z as xe}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{e as xt,h as at}from"./chunk-RMXJBC7V.js";var Le=xt((Ot,Wt)=>{"use strict";(function(t,s){typeof Ot=="object"&&typeof Wt<"u"?Wt.exports=s():typeof define=="function"&&define.amd?define(s):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_isoWeek=s()})(Ot,function(){"use strict";var t="day";return function(s,n,a){var r=function(D){return D.add(4-D.isoWeekday(),t)},u=n.prototype;u.isoWeekYear=function(){return r(this).year()},u.isoWeek=function(D){if(!this.$utils().u(D))return this.add(7*(D-this.isoWeek()),t);var S,P,C,W,z=r(this),R=(S=this.isoWeekYear(),P=this.$u,C=(P?a.utc:a)().year(S).startOf("year"),W=4-C.isoWeekday(),C.isoWeekday()>4&&(W+=7),C.add(W,t));return z.diff(R,"week")+1},u.isoWeekday=function(D){return this.$utils().u(D)?this.day()||7:this.day(this.day()%7?D:D-7)};var b=u.startOf;u.startOf=function(D,S){var P=this.$utils(),C=!!P.u(S)||S;return P.p(D)==="isoweek"?C?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):b.bind(this)(D,S)}}})});var Ye=xt((Pt,Vt)=>{"use strict";(function(t,s){typeof Pt=="object"&&typeof Vt<"u"?Vt.exports=s():typeof define=="function"&&define.amd?define(s):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_customParseFormat=s()})(Pt,function(){"use strict";var t={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},s=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d/,a=/\d\d/,r=/\d\d?/,u=/\d*[^-_:/,()\s\d]+/,b={},D=function(x){return(x=+x)+(x>68?1900:2e3)},S=function(x){return function(k){this[x]=+k}},P=[/[+-]\d\d:?(\d\d)?|Z/,function(x){(this.zone||(this.zone={})).offset=(function(k){if(!k||k==="Z")return 0;var F=k.match(/([+-]|\d\d)/g),Y=60*F[1]+(+F[2]||0);return Y===0?0:F[0]==="+"?-Y:Y})(x)}],C=function(x){var k=b[x];return k&&(k.indexOf?k:k.s.concat(k.f))},W=function(x,k){var F,Y=b.meridiem;if(Y){for(var G=1;G<=24;G+=1)if(x.indexOf(Y(G,0,k))>-1){F=G>12;break}}else F=x===(k?"pm":"PM");return F},z={A:[u,function(x){this.afternoon=W(x,!1)}],a:[u,function(x){this.afternoon=W(x,!0)}],Q:[n,function(x){this.month=3*(x-1)+1}],S:[n,function(x){this.milliseconds=100*+x}],SS:[a,function(x){this.milliseconds=10*+x}],SSS:[/\d{3}/,function(x){this.milliseconds=+x}],s:[r,S("seconds")],ss:[r,S("seconds")],m:[r,S("minutes")],mm:[r,S("minutes")],H:[r,S("hours")],h:[r,S("hours")],HH:[r,S("hours")],hh:[r,S("hours")],D:[r,S("day")],DD:[a,S("day")],Do:[u,function(x){var k=b.ordinal,F=x.match(/\d+/);if(this.day=F[0],k)for(var Y=1;Y<=31;Y+=1)k(Y).replace(/\[|\]/g,"")===x&&(this.day=Y)}],w:[r,S("week")],ww:[a,S("week")],M:[r,S("month")],MM:[a,S("month")],MMM:[u,function(x){var k=C("months"),F=(C("monthsShort")||k.map(function(Y){return Y.slice(0,3)})).indexOf(x)+1;if(F<1)throw new Error;this.month=F%12||F}],MMMM:[u,function(x){var k=C("months").indexOf(x)+1;if(k<1)throw new Error;this.month=k%12||k}],Y:[/[+-]?\d+/,S("year")],YY:[a,function(x){this.year=D(x)}],YYYY:[/\d{4}/,S("year")],Z:P,ZZ:P};function R(x){var k,F;k=x,F=b&&b.formats;for(var Y=(x=k.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function($,f,y){var g=y&&y.toUpperCase();return f||F[y]||t[y]||F[g].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(T,p,o){return p||o.slice(1)})})).match(s),G=Y.length,X=0;X-1)return new Date((h==="X"?1e3:1)*l);var i=R(h)(l),O=i.year,e=i.month,_=i.day,A=i.hours,I=i.minutes,L=i.seconds,H=i.milliseconds,V=i.zone,N=i.week,U=new Date,st=_||(O||e?1:U.getDate()),rt=O||U.getFullYear(),lt=0;O&&!e||(lt=e>0?e-1:U.getMonth());var ut,dt=A||0,j=I||0,nt=L||0,K=H||0;return V?new Date(Date.UTC(rt,lt,st,dt,j,nt,K+60*V.offset*1e3)):m?new Date(Date.UTC(rt,lt,st,dt,j,nt,K)):(ut=new Date(rt,lt,st,dt,j,nt,K),N&&(ut=w(ut).week(N).toDate()),ut)}catch(q){return new Date("")}})(E,M,v,F),this.init(),g&&g!==!0&&(this.$L=this.locale(g).$L),y&&E!=this.format(M)&&(this.$d=new Date("")),b={}}else if(M instanceof Array)for(var T=M.length,p=1;p<=T;p+=1){d[1]=M[p-1];var o=F.apply(this,d);if(o.isValid()){this.$d=o.$d,this.$L=o.$L,this.init();break}p===T&&(this.$d=new Date(""))}else G.call(this,X)}}})});var $e=xt((Nt,Rt)=>{"use strict";(function(t,s){typeof Nt=="object"&&typeof Rt<"u"?Rt.exports=s():typeof define=="function"&&define.amd?define(s):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_advancedFormat=s()})(Nt,function(){"use strict";return function(t,s){var n=s.prototype,a=n.format;n.format=function(r){var u=this,b=this.$locale();if(!this.isValid())return a.bind(this)(r);var D=this.$utils(),S=(r||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(P){switch(P){case"Q":return Math.ceil((u.$M+1)/3);case"Do":return b.ordinal(u.$D);case"gggg":return u.weekYear();case"GGGG":return u.isoWeekYear();case"wo":return b.ordinal(u.week(),"W");case"w":case"ww":return D.s(u.week(),P==="w"?1:2,"0");case"W":case"WW":return D.s(u.isoWeek(),P==="W"?1:2,"0");case"k":case"kk":return D.s(String(u.$H===0?24:u.$H),P==="k"?1:2,"0");case"X":return Math.floor(u.$d.getTime()/1e3);case"x":return u.$d.getTime();case"z":return"["+u.offsetName()+"]";case"zzz":return"["+u.offsetName("long")+"]";default:return P}});return a.bind(this)(S)}}})});var Ae=xt((zt,Ht)=>{"use strict";(function(t,s){typeof zt=="object"&&typeof Ht<"u"?Ht.exports=s():typeof define=="function"&&define.amd?define(s):(t=typeof globalThis<"u"?globalThis:t||self).dayjs_plugin_duration=s()})(zt,function(){"use strict";var t,s,n=1e3,a=6e4,r=36e5,u=864e5,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,D=31536e6,S=2628e6,P=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,C={years:D,months:S,days:u,hours:r,minutes:a,seconds:n,milliseconds:1,weeks:6048e5},W=function(E){return E instanceof G},z=function(E,v,d){return new G(E,d,v.$l)},R=function(E){return s.p(E)+"s"},x=function(E){return E<0},k=function(E){return x(E)?Math.ceil(E):Math.floor(E)},F=function(E){return Math.abs(E)},Y=function(E,v){return E?x(E)?{negative:!0,format:""+F(E)+v}:{negative:!1,format:""+E+v}:{negative:!1,format:""}},G=(function(){function E(d,M,$){var f=this;if(this.$d={},this.$l=$,d===void 0&&(this.$ms=0,this.parseFromMilliseconds()),M)return z(d*C[R(M)],this);if(typeof d=="number")return this.$ms=d,this.parseFromMilliseconds(),this;if(typeof d=="object")return Object.keys(d).forEach(function(T){f.$d[R(T)]=d[T]}),this.calMilliseconds(),this;if(typeof d=="string"){var y=d.match(P);if(y){var g=y.slice(2).map(function(T){return T!=null?Number(T):0});return this.$d.years=g[0],this.$d.months=g[1],this.$d.weeks=g[2],this.$d.days=g[3],this.$d.hours=g[4],this.$d.minutes=g[5],this.$d.seconds=g[6],this.calMilliseconds(),this}}return this}var v=E.prototype;return v.calMilliseconds=function(){var d=this;this.$ms=Object.keys(this.$d).reduce(function(M,$){return M+(d.$d[$]||0)*C[$]},0)},v.parseFromMilliseconds=function(){var d=this.$ms;this.$d.years=k(d/D),d%=D,this.$d.months=k(d/S),d%=S,this.$d.days=k(d/u),d%=u,this.$d.hours=k(d/r),d%=r,this.$d.minutes=k(d/a),d%=a,this.$d.seconds=k(d/n),d%=n,this.$d.milliseconds=d},v.toISOString=function(){var d=Y(this.$d.years,"Y"),M=Y(this.$d.months,"M"),$=+this.$d.days||0;this.$d.weeks&&($+=7*this.$d.weeks);var f=Y($,"D"),y=Y(this.$d.hours,"H"),g=Y(this.$d.minutes,"M"),T=this.$d.seconds||0;this.$d.milliseconds&&(T+=this.$d.milliseconds/1e3,T=Math.round(1e3*T)/1e3);var p=Y(T,"S"),o=d.negative||M.negative||f.negative||y.negative||g.negative||p.negative,l=y.format||g.format||p.format?"T":"",h=(o?"-":"")+"P"+d.format+M.format+f.format+l+y.format+g.format+p.format;return h==="P"||h==="-P"?"P0D":h},v.toJSON=function(){return this.toISOString()},v.format=function(d){var M=d||"YYYY-MM-DDTHH:mm:ss",$={Y:this.$d.years,YY:s.s(this.$d.years,2,"0"),YYYY:s.s(this.$d.years,4,"0"),M:this.$d.months,MM:s.s(this.$d.months,2,"0"),D:this.$d.days,DD:s.s(this.$d.days,2,"0"),H:this.$d.hours,HH:s.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:s.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:s.s(this.$d.seconds,2,"0"),SSS:s.s(this.$d.milliseconds,3,"0")};return M.replace(b,function(f,y){return y||String($[f])})},v.as=function(d){return this.$ms/C[R(d)]},v.get=function(d){var M=this.$ms,$=R(d);return $==="milliseconds"?M%=1e3:M=$==="weeks"?k(M/C[$]):this.$d[$],M||0},v.add=function(d,M,$){var f;return f=M?d*C[R(M)]:W(d)?d.$ms:z(d,this).$ms,z(this.$ms+f*($?-1:1),this)},v.subtract=function(d,M){return this.add(d,M,!0)},v.locale=function(d){var M=this.clone();return M.$l=d,M},v.clone=function(){return z(this.$ms,this)},v.humanize=function(d){return t().add(this.$ms,"ms").locale(this.$l).fromNow(!d)},v.valueOf=function(){return this.asMilliseconds()},v.milliseconds=function(){return this.get("milliseconds")},v.asMilliseconds=function(){return this.as("milliseconds")},v.seconds=function(){return this.get("seconds")},v.asSeconds=function(){return this.as("seconds")},v.minutes=function(){return this.get("minutes")},v.asMinutes=function(){return this.as("minutes")},v.hours=function(){return this.get("hours")},v.asHours=function(){return this.as("hours")},v.days=function(){return this.get("days")},v.asDays=function(){return this.as("days")},v.weeks=function(){return this.get("weeks")},v.asWeeks=function(){return this.as("weeks")},v.months=function(){return this.get("months")},v.asMonths=function(){return this.as("months")},v.years=function(){return this.get("years")},v.asYears=function(){return this.as("years")},E})(),X=function(E,v,d){return E.add(v.years()*d,"y").add(v.months()*d,"M").add(v.days()*d,"d").add(v.hours()*d,"h").add(v.minutes()*d,"m").add(v.seconds()*d,"s").add(v.milliseconds()*d,"ms")};return function(E,v,d){t=d,s=d().$utils(),d.duration=function(f,y){var g=d.locale();return z(f,{$l:g},y)},d.isDuration=W;var M=v.prototype.add,$=v.prototype.subtract;v.prototype.add=function(f,y){return W(f)?X(this,f,1):M.bind(this)(f,y)},v.prototype.subtract=function(f,y){return W(f)?X(this,f,-1):$.bind(this)(f,y)}}})});var Pe=at(Qe(),1),Q=at(oe(),1),Ve=at(Le(),1),Ne=at(Ye(),1),Re=at($e(),1),ht=at(oe(),1),Ze=at(Ae(),1);var Bt=(function(){var t=c(function(p,o,l,h){for(l=l||{},h=p.length;h--;l[p[h]]=o);return l},"o"),s=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],n=[1,26],a=[1,27],r=[1,28],u=[1,29],b=[1,30],D=[1,31],S=[1,32],P=[1,33],C=[1,34],W=[1,9],z=[1,10],R=[1,11],x=[1,12],k=[1,13],F=[1,14],Y=[1,15],G=[1,16],X=[1,19],E=[1,20],v=[1,21],d=[1,22],M=[1,23],$=[1,25],f=[1,35],y={trace:c(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:c(function(o,l,h,m,w,i,O){var e=i.length-1;switch(w){case 1:return i[e-1];case 2:this.$=[];break;case 3:i[e-1].push(i[e]),this.$=i[e-1];break;case 4:case 5:this.$=i[e];break;case 6:case 7:this.$=[];break;case 8:m.setWeekday("monday");break;case 9:m.setWeekday("tuesday");break;case 10:m.setWeekday("wednesday");break;case 11:m.setWeekday("thursday");break;case 12:m.setWeekday("friday");break;case 13:m.setWeekday("saturday");break;case 14:m.setWeekday("sunday");break;case 15:m.setWeekend("friday");break;case 16:m.setWeekend("saturday");break;case 17:m.setDateFormat(i[e].substr(11)),this.$=i[e].substr(11);break;case 18:m.enableInclusiveEndDates(),this.$=i[e].substr(18);break;case 19:m.TopAxis(),this.$=i[e].substr(8);break;case 20:m.setAxisFormat(i[e].substr(11)),this.$=i[e].substr(11);break;case 21:m.setTickInterval(i[e].substr(13)),this.$=i[e].substr(13);break;case 22:m.setExcludes(i[e].substr(9)),this.$=i[e].substr(9);break;case 23:m.setIncludes(i[e].substr(9)),this.$=i[e].substr(9);break;case 24:m.setTodayMarker(i[e].substr(12)),this.$=i[e].substr(12);break;case 27:m.setDiagramTitle(i[e].substr(6)),this.$=i[e].substr(6);break;case 28:this.$=i[e].trim(),m.setAccTitle(this.$);break;case 29:case 30:this.$=i[e].trim(),m.setAccDescription(this.$);break;case 31:m.addSection(i[e].substr(8)),this.$=i[e].substr(8);break;case 33:m.addTask(i[e-1],i[e]),this.$="task";break;case 34:this.$=i[e-1],m.setClickEvent(i[e-1],i[e],null);break;case 35:this.$=i[e-2],m.setClickEvent(i[e-2],i[e-1],i[e]);break;case 36:this.$=i[e-2],m.setClickEvent(i[e-2],i[e-1],null),m.setLink(i[e-2],i[e]);break;case 37:this.$=i[e-3],m.setClickEvent(i[e-3],i[e-2],i[e-1]),m.setLink(i[e-3],i[e]);break;case 38:this.$=i[e-2],m.setClickEvent(i[e-2],i[e],null),m.setLink(i[e-2],i[e-1]);break;case 39:this.$=i[e-3],m.setClickEvent(i[e-3],i[e-1],i[e]),m.setLink(i[e-3],i[e-2]);break;case 40:this.$=i[e-1],m.setLink(i[e-1],i[e]);break;case 41:case 47:this.$=i[e-1]+" "+i[e];break;case 42:case 43:case 45:this.$=i[e-2]+" "+i[e-1]+" "+i[e];break;case 44:case 46:this.$=i[e-3]+" "+i[e-2]+" "+i[e-1]+" "+i[e];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(s,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:n,13:a,14:r,15:u,16:b,17:D,18:S,19:18,20:P,21:C,22:W,23:z,24:R,25:x,26:k,27:F,28:Y,29:G,30:X,31:E,33:v,35:d,36:M,37:24,38:$,40:f},t(s,[2,7],{1:[2,1]}),t(s,[2,3]),{9:36,11:17,12:n,13:a,14:r,15:u,16:b,17:D,18:S,19:18,20:P,21:C,22:W,23:z,24:R,25:x,26:k,27:F,28:Y,29:G,30:X,31:E,33:v,35:d,36:M,37:24,38:$,40:f},t(s,[2,5]),t(s,[2,6]),t(s,[2,17]),t(s,[2,18]),t(s,[2,19]),t(s,[2,20]),t(s,[2,21]),t(s,[2,22]),t(s,[2,23]),t(s,[2,24]),t(s,[2,25]),t(s,[2,26]),t(s,[2,27]),{32:[1,37]},{34:[1,38]},t(s,[2,30]),t(s,[2,31]),t(s,[2,32]),{39:[1,39]},t(s,[2,8]),t(s,[2,9]),t(s,[2,10]),t(s,[2,11]),t(s,[2,12]),t(s,[2,13]),t(s,[2,14]),t(s,[2,15]),t(s,[2,16]),{41:[1,40],43:[1,41]},t(s,[2,4]),t(s,[2,28]),t(s,[2,29]),t(s,[2,33]),t(s,[2,34],{42:[1,42],43:[1,43]}),t(s,[2,40],{41:[1,44]}),t(s,[2,35],{43:[1,45]}),t(s,[2,36]),t(s,[2,38],{42:[1,46]}),t(s,[2,37]),t(s,[2,39])],defaultActions:{},parseError:c(function(o,l){if(l.recoverable)this.trace(o);else{var h=new Error(o);throw h.hash=l,h}},"parseError"),parse:c(function(o){var l=this,h=[0],m=[],w=[null],i=[],O=this.table,e="",_=0,A=0,I=0,L=2,H=1,V=i.slice.call(arguments,1),N=Object.create(this.lexer),U={yy:{}};for(var st in this.yy)Object.prototype.hasOwnProperty.call(this.yy,st)&&(U.yy[st]=this.yy[st]);N.setInput(o,U.yy),U.yy.lexer=N,U.yy.parser=this,typeof N.yylloc>"u"&&(N.yylloc={});var rt=N.yylloc;i.push(rt);var lt=N.options&&N.options.ranges;typeof U.yy.parseError=="function"?this.parseError=U.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ut(Z){h.length=h.length-2*Z,w.length=w.length-Z,i.length=i.length-Z}c(ut,"popStack");function dt(){var Z;return Z=m.pop()||N.lex()||H,typeof Z!="number"&&(Z instanceof Array&&(m=Z,Z=m.pop()),Z=l.symbols_[Z]||Z),Z}c(dt,"lex");for(var j,nt,K,q,Ri,Ct,ft={},Tt,tt,ne,bt;;){if(K=h[h.length-1],this.defaultActions[K]?q=this.defaultActions[K]:((j===null||typeof j>"u")&&(j=dt()),q=O[K]&&O[K][j]),typeof q>"u"||!q.length||!q[0]){var Mt="";bt=[];for(Tt in O[K])this.terminals_[Tt]&&Tt>L&&bt.push("'"+this.terminals_[Tt]+"'");N.showPosition?Mt="Parse error on line "+(_+1)+`: -`+N.showPosition()+` -Expecting `+bt.join(", ")+", got '"+(this.terminals_[j]||j)+"'":Mt="Parse error on line "+(_+1)+": Unexpected "+(j==H?"end of input":"'"+(this.terminals_[j]||j)+"'"),this.parseError(Mt,{text:N.match,token:this.terminals_[j]||j,line:N.yylineno,loc:rt,expected:bt})}if(q[0]instanceof Array&&q.length>1)throw new Error("Parse Error: multiple actions possible at state: "+K+", token: "+j);switch(q[0]){case 1:h.push(j),w.push(N.yytext),i.push(N.yylloc),h.push(q[1]),j=null,nt?(j=nt,nt=null):(A=N.yyleng,e=N.yytext,_=N.yylineno,rt=N.yylloc,I>0&&I--);break;case 2:if(tt=this.productions_[q[1]][1],ft.$=w[w.length-tt],ft._$={first_line:i[i.length-(tt||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(tt||1)].first_column,last_column:i[i.length-1].last_column},lt&&(ft._$.range=[i[i.length-(tt||1)].range[0],i[i.length-1].range[1]]),Ct=this.performAction.apply(ft,[e,A,_,U.yy,q[1],w,i].concat(V)),typeof Ct<"u")return Ct;tt&&(h=h.slice(0,-1*tt*2),w=w.slice(0,-1*tt),i=i.slice(0,-1*tt)),h.push(this.productions_[q[1]][0]),w.push(ft.$),i.push(ft._$),ne=O[h[h.length-2]][h[h.length-1]],h.push(ne);break;case 3:return!0}}return!0},"parse")},g=(function(){var p={EOF:1,parseError:c(function(l,h){if(this.yy.parser)this.yy.parser.parseError(l,h);else throw new Error(l)},"parseError"),setInput:c(function(o,l){return this.yy=l||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:c(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var l=o.match(/(?:\r\n?|\n).*/g);return l?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:c(function(o){var l=o.length,h=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-l),this.offset-=l;var m=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),h.length-1&&(this.yylineno-=h.length-1);var w=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:h?(h.length===m.length?this.yylloc.first_column:0)+m[m.length-h.length].length-h[0].length:this.yylloc.first_column-l},this.options.ranges&&(this.yylloc.range=[w[0],w[0]+this.yyleng-l]),this.yyleng=this.yytext.length,this},"unput"),more:c(function(){return this._more=!0,this},"more"),reject:c(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:c(function(o){this.unput(this.match.slice(o))},"less"),pastInput:c(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:c(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:c(function(){var o=this.pastInput(),l=new Array(o.length+1).join("-");return o+this.upcomingInput()+` -`+l+"^"},"showPosition"),test_match:c(function(o,l){var h,m,w;if(this.options.backtrack_lexer&&(w={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(w.yylloc.range=this.yylloc.range.slice(0))),m=o[0].match(/(?:\r\n?|\n).*/g),m&&(this.yylineno+=m.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:m?m[m.length-1].length-m[m.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],h=this.performAction.call(this,this.yy,this,l,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),h)return h;if(this._backtrack){for(var i in w)this[i]=w[i];return!1}return!1},"test_match"),next:c(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,l,h,m;this._more||(this.yytext="",this.match="");for(var w=this._currentRules(),i=0;il[0].length)){if(l=h,m=i,this.options.backtrack_lexer){if(o=this.test_match(h,w[i]),o!==!1)return o;if(this._backtrack){l=!1;continue}else return!1}else if(!this.options.flex)break}return l?(o=this.test_match(l,w[m]),o!==!1?o:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:c(function(){var l=this.next();return l||this.lex()},"lex"),begin:c(function(l){this.conditionStack.push(l)},"begin"),popState:c(function(){var l=this.conditionStack.length-1;return l>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:c(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:c(function(l){return l=this.conditionStack.length-1-Math.abs(l||0),l>=0?this.conditionStack[l]:"INITIAL"},"topState"),pushState:c(function(l){this.begin(l)},"pushState"),stateStackSize:c(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:c(function(l,h,m,w){var i=w;switch(m){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return p})();y.lexer=g;function T(){this.yy={}}return c(T,"Parser"),T.prototype=y,y.Parser=T,new T})();Bt.parser=Bt;var Ke=Bt;Q.default.extend(Ve.default);Q.default.extend(Ne.default);Q.default.extend(Re.default);var Fe={friday:5,saturday:6},J="",qt="",Zt=void 0,Qt="",gt=[],pt=[],Kt=new Map,Jt=[],Dt=[],kt="",te="",ze=["active","done","crit","milestone","vert"],ee=[],vt=!1,ie=!1,se="sunday",St="saturday",Gt=0,Je=c(function(){Jt=[],Dt=[],kt="",ee=[],wt=0,Ut=void 0,_t=void 0,B=[],J="",qt="",te="",Zt=void 0,Qt="",gt=[],pt=[],vt=!1,ie=!1,Gt=0,Kt=new Map,ue(),se="sunday",St="saturday"},"clear"),ti=c(function(t){qt=t},"setAxisFormat"),ei=c(function(){return qt},"getAxisFormat"),ii=c(function(t){Zt=t},"setTickInterval"),si=c(function(){return Zt},"getTickInterval"),ri=c(function(t){Qt=t},"setTodayMarker"),ni=c(function(){return Qt},"getTodayMarker"),ai=c(function(t){J=t},"setDateFormat"),oi=c(function(){vt=!0},"enableInclusiveEndDates"),ci=c(function(){return vt},"endDatesAreInclusive"),li=c(function(){ie=!0},"enableTopAxis"),ui=c(function(){return ie},"topAxisEnabled"),di=c(function(t){te=t},"setDisplayMode"),fi=c(function(){return te},"getDisplayMode"),hi=c(function(){return J},"getDateFormat"),mi=c(function(t){gt=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),ki=c(function(){return gt},"getIncludes"),yi=c(function(t){pt=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),gi=c(function(){return pt},"getExcludes"),pi=c(function(){return Kt},"getLinks"),vi=c(function(t){kt=t,Jt.push(t)},"addSection"),Ti=c(function(){return Jt},"getSections"),bi=c(function(){let t=Oe(),s=10,n=0;for(;!t&&n{let S=D.trim();return S==="x"||S==="X"},"isTimestampFormat")(s)&&/^\d+$/.test(n))return new Date(Number(n));let u=/^after\s+(?[\d\w- ]+)/.exec(n);if(u!==null){let D=null;for(let P of u.groups.ids.split(" ")){let C=ct(P);C!==void 0&&(!D||C.endTime>D.endTime)&&(D=C)}if(D)return D.endTime;let S=new Date;return S.setHours(0,0,0,0),S}let b=(0,Q.default)(n,s.trim(),!0);if(b.isValid())return b.toDate();{it.debug("Invalid date:"+n),it.debug("With date format:"+s.trim());let D=new Date(n);if(D===void 0||isNaN(D.getTime())||D.getFullYear()<-1e4||D.getFullYear()>1e4)throw new Error("Invalid date:"+n);return D}},"getStartDate"),Be=c(function(t){let s=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return s!==null?[Number.parseFloat(s[1]),s[2]]:[NaN,"ms"]},"parseDuration"),Ge=c(function(t,s,n,a=!1){n=n.trim();let u=/^until\s+(?[\d\w- ]+)/.exec(n);if(u!==null){let C=null;for(let z of u.groups.ids.split(" ")){let R=ct(z);R!==void 0&&(!C||R.startTime{window.open(n,"_self")}),Kt.set(a,n))}),Ue(t,"clickable")},"setLink"),Ue=c(function(t,s){t.split(",").forEach(function(n){let a=ct(n);a!==void 0&&a.classes.push(s)})},"setClass"),Li=c(function(t,s,n){if(ot().securityLevel!=="loose"||s===void 0)return;let a=[];if(typeof n=="string"){a=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u{Ie.runFunc(s,...a)})},"setClickFun"),qe=c(function(t,s){ee.push(function(){let n=document.querySelector(`[id="${t}"]`);n!==null&&n.addEventListener("click",function(){s()})},function(){let n=document.querySelector(`[id="${t}-text"]`);n!==null&&n.addEventListener("click",function(){s()})})},"pushFun"),Yi=c(function(t,s,n){t.split(",").forEach(function(a){Li(a,s,n)}),Ue(t,"clickable")},"setClickEvent"),$i=c(function(t){ee.forEach(function(s){s(t)})},"bindFunctions"),Ai={getConfig:c(()=>ot().gantt,"getConfig"),clear:Je,setDateFormat:ai,getDateFormat:hi,enableInclusiveEndDates:oi,endDatesAreInclusive:ci,enableTopAxis:li,topAxisEnabled:ui,setAxisFormat:ti,getAxisFormat:ei,setTickInterval:ii,getTickInterval:si,setTodayMarker:ri,getTodayMarker:ni,setAccTitle:de,getAccTitle:fe,setDiagramTitle:ke,getDiagramTitle:ye,setDisplayMode:di,getDisplayMode:fi,setAccDescription:he,getAccDescription:me,addSection:vi,getSections:Ti,getTasks:bi,addTask:Mi,findTaskById:ct,addTaskOrg:Ei,setIncludes:mi,getIncludes:ki,setExcludes:yi,getExcludes:gi,setClickEvent:Yi,setLink:Ii,getLinks:pi,bindFunctions:$i,parseDuration:Be,isInvalidDate:He,setWeekday:xi,getWeekday:wi,setWeekend:_i};function re(t,s,n){let a=!0;for(;a;)a=!1,n.forEach(function(r){let u="^\\s*"+r+"\\s*$",b=new RegExp(u);t[0].match(b)&&(s[r]=!0,t.shift(1),a=!0)})}c(re,"getTaskTags");ht.default.extend(Ze.default);var Fi=c(function(){it.debug("Something is calling, setConf, remove the call")},"setConf"),We={monday:we,tuesday:_e,wednesday:De,thursday:Se,friday:Ce,saturday:Me,sunday:xe},Oi=c((t,s)=>{let n=[...t].map(()=>-1/0),a=[...t].sort((u,b)=>u.startTime-b.startTime||u.order-b.order),r=0;for(let u of a)for(let b=0;b=n[b]){n[b]=u.endTime,u.order=b+s,b>r&&(r=b);break}return r},"getMaxIntersections"),et,jt=1e4,Wi=c(function(t,s,n,a){let r=ot().gantt,u=ot().securityLevel,b;u==="sandbox"&&(b=yt("#i"+s));let D=u==="sandbox"?yt(b.nodes()[0].contentDocument.body):yt("body"),S=u==="sandbox"?b.nodes()[0].contentDocument:document,P=S.getElementById(s);et=P.parentElement.offsetWidth,et===void 0&&(et=1200),r.useWidth!==void 0&&(et=r.useWidth);let C=a.db.getTasks(),W=[];for(let f of C)W.push(f.type);W=$(W);let z={},R=2*r.topPadding;if(a.db.getDisplayMode()==="compact"||r.displayMode==="compact"){let f={};for(let g of C)f[g.section]===void 0?f[g.section]=[g]:f[g.section].push(g);let y=0;for(let g of Object.keys(f)){let T=Oi(f[g],y)+1;y+=T,R+=T*(r.barHeight+r.barGap),z[g]=T}}else{R+=C.length*(r.barHeight+r.barGap);for(let f of W)z[f]=C.filter(y=>y.type===f).length}P.setAttribute("viewBox","0 0 "+et+" "+R);let x=D.select(`[id="${s}"]`),k=Ee().domain([pe(C,function(f){return f.startTime}),ge(C,function(f){return f.endTime})]).rangeRound([0,et-r.leftPadding-r.rightPadding]);function F(f,y){let g=f.startTime,T=y.startTime,p=0;return g>T?p=1:ge.vert===_.vert?0:e.vert?1:-1);let m=[...new Set(f.map(e=>e.order))].map(e=>f.find(_=>_.order===e));x.append("g").selectAll("rect").data(m).enter().append("rect").attr("x",0).attr("y",function(e,_){return _=e.order,_*y+g-2}).attr("width",function(){return l-r.rightPadding/2}).attr("height",y).attr("class",function(e){for(let[_,A]of W.entries())if(e.type===A)return"section section"+_%r.numberSectionStyles;return"section section0"}).enter();let w=x.append("g").selectAll("rect").data(f).enter(),i=a.db.getLinks();if(w.append("rect").attr("id",function(e){return e.id}).attr("rx",3).attr("ry",3).attr("x",function(e){return e.milestone?k(e.startTime)+T+.5*(k(e.endTime)-k(e.startTime))-.5*p:k(e.startTime)+T}).attr("y",function(e,_){return _=e.order,e.vert?r.gridLineStartPadding:_*y+g}).attr("width",function(e){return e.milestone?p:e.vert?.08*p:k(e.renderEndTime||e.endTime)-k(e.startTime)}).attr("height",function(e){return e.vert?C.length*(r.barHeight+r.barGap)+r.barHeight*2:p}).attr("transform-origin",function(e,_){return _=e.order,(k(e.startTime)+T+.5*(k(e.endTime)-k(e.startTime))).toString()+"px "+(_*y+g+.5*p).toString()+"px"}).attr("class",function(e){let _="task",A="";e.classes.length>0&&(A=e.classes.join(" "));let I=0;for(let[H,V]of W.entries())e.type===V&&(I=H%r.numberSectionStyles);let L="";return e.active?e.crit?L+=" activeCrit":L=" active":e.done?e.crit?L=" doneCrit":L=" done":e.crit&&(L+=" crit"),L.length===0&&(L=" task"),e.milestone&&(L=" milestone "+L),e.vert&&(L=" vert "+L),L+=I,L+=" "+A,_+L}),w.append("text").attr("id",function(e){return e.id+"-text"}).text(function(e){return e.task}).attr("font-size",r.fontSize).attr("x",function(e){let _=k(e.startTime),A=k(e.renderEndTime||e.endTime);if(e.milestone&&(_+=.5*(k(e.endTime)-k(e.startTime))-.5*p,A=_+p),e.vert)return k(e.startTime)+T;let I=this.getBBox().width;return I>A-_?A+I+1.5*r.leftPadding>l?_+T-5:A+T+5:(A-_)/2+_+T}).attr("y",function(e,_){return e.vert?r.gridLineStartPadding+C.length*(r.barHeight+r.barGap)+60:(_=e.order,_*y+r.barHeight/2+(r.fontSize/2-2)+g)}).attr("text-height",p).attr("class",function(e){let _=k(e.startTime),A=k(e.endTime);e.milestone&&(A=_+p);let I=this.getBBox().width,L="";e.classes.length>0&&(L=e.classes.join(" "));let H=0;for(let[N,U]of W.entries())e.type===U&&(H=N%r.numberSectionStyles);let V="";return e.active&&(e.crit?V="activeCritText"+H:V="activeText"+H),e.done?e.crit?V=V+" doneCritText"+H:V=V+" doneText"+H:e.crit&&(V=V+" critText"+H),e.milestone&&(V+=" milestoneText"),e.vert&&(V+=" vertText"),I>A-_?A+I+1.5*r.leftPadding>l?L+" taskTextOutsideLeft taskTextOutside"+H+" "+V:L+" taskTextOutsideRight taskTextOutside"+H+" "+V+" width-"+I:L+" taskText taskText"+H+" "+V+" width-"+I}),ot().securityLevel==="sandbox"){let e;e=yt("#i"+s);let _=e.nodes()[0].contentDocument;w.filter(function(A){return i.has(A.id)}).each(function(A){var I=_.querySelector("#"+A.id),L=_.querySelector("#"+A.id+"-text");let H=I.parentNode;var V=_.createElement("a");V.setAttribute("xlink:href",i.get(A.id)),V.setAttribute("target","_top"),H.appendChild(V),V.appendChild(I),V.appendChild(L)})}}c(G,"drawRects");function X(f,y,g,T,p,o,l,h){if(l.length===0&&h.length===0)return;let m,w;for(let{startTime:I,endTime:L}of o)(m===void 0||Iw)&&(w=L);if(!m||!w)return;if((0,ht.default)(w).diff((0,ht.default)(m),"year")>5){it.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let i=a.db.getDateFormat(),O=[],e=null,_=(0,ht.default)(m);for(;_.valueOf()<=w;)a.db.isInvalidDate(_,i,l,h)?e?e.end=_:e={start:_,end:_}:e&&(O.push(e),e=null),_=_.add(1,"d");x.append("g").selectAll("rect").data(O).enter().append("rect").attr("id",I=>"exclude-"+I.start.format("YYYY-MM-DD")).attr("x",I=>k(I.start.startOf("day"))+g).attr("y",r.gridLineStartPadding).attr("width",I=>k(I.end.endOf("day"))-k(I.start.startOf("day"))).attr("height",p-y-r.gridLineStartPadding).attr("transform-origin",function(I,L){return(k(I.start)+g+.5*(k(I.end)-k(I.start))).toString()+"px "+(L*f+.5*p).toString()+"px"}).attr("class","exclude-range")}c(X,"drawExcludeDays");function E(f,y,g,T){if(g<=0||f>y)return 1/0;let p=y-f,o=ht.default.duration({[T??"day"]:g}).asMilliseconds();return o<=0?1/0:Math.ceil(p/o)}c(E,"getEstimatedTickCount");function v(f,y,g,T){let p=a.db.getDateFormat(),o=a.db.getAxisFormat(),l;o?l=o:p==="D"?l="%d":l=r.axisFormat??"%Y-%m-%d";let h=Te(k).tickSize(-T+y+r.gridLineStartPadding).tickFormat(Ft(l)),w=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(a.db.getTickInterval()||r.tickInterval);if(w!==null){let i=parseInt(w[1],10);if(isNaN(i)||i<=0)it.warn(`Invalid tick interval value: "${w[1]}". Skipping custom tick interval.`);else{let O=w[2],e=a.db.getWeekday()||r.weekday,_=k.domain(),A=_[0],I=_[1],L=E(A,I,i,O);if(L>jt)it.warn(`The tick interval "${i}${O}" would generate ${L} ticks, which exceeds the maximum allowed (${jt}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(O){case"millisecond":h.ticks(Et.every(i));break;case"second":h.ticks(It.every(i));break;case"minute":h.ticks(Lt.every(i));break;case"hour":h.ticks(Yt.every(i));break;case"day":h.ticks($t.every(i));break;case"week":h.ticks(We[e].every(i));break;case"month":h.ticks(At.every(i));break}}}if(x.append("g").attr("class","grid").attr("transform","translate("+f+", "+(T-50)+")").call(h).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),a.db.topAxisEnabled()||r.topAxis){let i=ve(k).tickSize(-T+y+r.gridLineStartPadding).tickFormat(Ft(l));if(w!==null){let O=parseInt(w[1],10);if(isNaN(O)||O<=0)it.warn(`Invalid tick interval value: "${w[1]}". Skipping custom tick interval.`);else{let e=w[2],_=a.db.getWeekday()||r.weekday,A=k.domain(),I=A[0],L=A[1];if(E(I,L,O,e)<=jt)switch(e){case"millisecond":i.ticks(Et.every(O));break;case"second":i.ticks(It.every(O));break;case"minute":i.ticks(Lt.every(O));break;case"hour":i.ticks(Yt.every(O));break;case"day":i.ticks($t.every(O));break;case"week":i.ticks(We[_].every(O));break;case"month":i.ticks(At.every(O));break}}}x.append("g").attr("class","grid").attr("transform","translate("+f+", "+y+")").call(i).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}c(v,"makeGrid");function d(f,y){let g=0,T=Object.keys(z).map(p=>[p,z[p]]);x.append("g").selectAll("text").data(T).enter().append(function(p){let o=p[0].split(ce.lineBreakRegex),l=-(o.length-1)/2,h=S.createElementNS("http://www.w3.org/2000/svg","text");h.setAttribute("dy",l+"em");for(let[m,w]of o.entries()){let i=S.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttribute("alignment-baseline","central"),i.setAttribute("x","10"),m>0&&i.setAttribute("dy","1em"),i.textContent=w,h.appendChild(i)}return h}).attr("x",10).attr("y",function(p,o){if(o>0)for(let l=0;l` - .mermaid-main-font { - font-family: ${t.fontFamily}; - } - - .exclude-range { - fill: ${t.excludeBkgColor}; - } - - .section { - stroke: none; - opacity: 0.2; - } - - .section0 { - fill: ${t.sectionBkgColor}; - } - - .section2 { - fill: ${t.sectionBkgColor2}; - } - - .section1, - .section3 { - fill: ${t.altSectionBkgColor}; - opacity: 0.2; - } - - .sectionTitle0 { - fill: ${t.titleColor}; - } - - .sectionTitle1 { - fill: ${t.titleColor}; - } - - .sectionTitle2 { - fill: ${t.titleColor}; - } - - .sectionTitle3 { - fill: ${t.titleColor}; - } - - .sectionTitle { - text-anchor: start; - font-family: ${t.fontFamily}; - } - - - /* Grid and axis */ - - .grid .tick { - stroke: ${t.gridColor}; - opacity: 0.8; - shape-rendering: crispEdges; - } - - .grid .tick text { - font-family: ${t.fontFamily}; - fill: ${t.textColor}; - } - - .grid path { - stroke-width: 0; - } - - - /* Today line */ - - .today { - fill: none; - stroke: ${t.todayLineColor}; - stroke-width: 2px; - } - - - /* Task styling */ - - /* Default task */ - - .task { - stroke-width: 2; - } - - .taskText { - text-anchor: middle; - font-family: ${t.fontFamily}; - } - - .taskTextOutsideRight { - fill: ${t.taskTextDarkColor}; - text-anchor: start; - font-family: ${t.fontFamily}; - } - - .taskTextOutsideLeft { - fill: ${t.taskTextDarkColor}; - text-anchor: end; - } - - - /* Special case clickable */ - - .task.clickable { - cursor: pointer; - } - - .taskText.clickable { - cursor: pointer; - fill: ${t.taskTextClickableColor} !important; - font-weight: bold; - } - - .taskTextOutsideLeft.clickable { - cursor: pointer; - fill: ${t.taskTextClickableColor} !important; - font-weight: bold; - } - - .taskTextOutsideRight.clickable { - cursor: pointer; - fill: ${t.taskTextClickableColor} !important; - font-weight: bold; - } - - - /* Specific task settings for the sections*/ - - .taskText0, - .taskText1, - .taskText2, - .taskText3 { - fill: ${t.taskTextColor}; - } - - .task0, - .task1, - .task2, - .task3 { - fill: ${t.taskBkgColor}; - stroke: ${t.taskBorderColor}; - } - - .taskTextOutside0, - .taskTextOutside2 - { - fill: ${t.taskTextOutsideColor}; - } - - .taskTextOutside1, - .taskTextOutside3 { - fill: ${t.taskTextOutsideColor}; - } - - - /* Active task */ - - .active0, - .active1, - .active2, - .active3 { - fill: ${t.activeTaskBkgColor}; - stroke: ${t.activeTaskBorderColor}; - } - - .activeText0, - .activeText1, - .activeText2, - .activeText3 { - fill: ${t.taskTextDarkColor} !important; - } - - - /* Completed task */ - - .done0, - .done1, - .done2, - .done3 { - stroke: ${t.doneTaskBorderColor}; - fill: ${t.doneTaskBkgColor}; - stroke-width: 2; - } - - .doneText0, - .doneText1, - .doneText2, - .doneText3 { - fill: ${t.taskTextDarkColor} !important; - } - - /* Done task text displayed outside the bar sits against the diagram background, - not against the done-task bar, so it must use the outside/contrast color. */ - .doneText0.taskTextOutsideLeft, - .doneText0.taskTextOutsideRight, - .doneText1.taskTextOutsideLeft, - .doneText1.taskTextOutsideRight, - .doneText2.taskTextOutsideLeft, - .doneText2.taskTextOutsideRight, - .doneText3.taskTextOutsideLeft, - .doneText3.taskTextOutsideRight { - fill: ${t.taskTextOutsideColor} !important; - } - - - /* Tasks on the critical line */ - - .crit0, - .crit1, - .crit2, - .crit3 { - stroke: ${t.critBorderColor}; - fill: ${t.critBkgColor}; - stroke-width: 2; - } - - .activeCrit0, - .activeCrit1, - .activeCrit2, - .activeCrit3 { - stroke: ${t.critBorderColor}; - fill: ${t.activeTaskBkgColor}; - stroke-width: 2; - } - - .doneCrit0, - .doneCrit1, - .doneCrit2, - .doneCrit3 { - stroke: ${t.critBorderColor}; - fill: ${t.doneTaskBkgColor}; - stroke-width: 2; - cursor: pointer; - shape-rendering: crispEdges; - } - - .milestone { - transform: rotate(45deg) scale(0.8,0.8); - } - - .milestoneText { - font-style: italic; - } - .doneCritText0, - .doneCritText1, - .doneCritText2, - .doneCritText3 { - fill: ${t.taskTextDarkColor} !important; - } - - /* Done-crit task text outside the bar \u2014 same reasoning as doneText above. */ - .doneCritText0.taskTextOutsideLeft, - .doneCritText0.taskTextOutsideRight, - .doneCritText1.taskTextOutsideLeft, - .doneCritText1.taskTextOutsideRight, - .doneCritText2.taskTextOutsideLeft, - .doneCritText2.taskTextOutsideRight, - .doneCritText3.taskTextOutsideLeft, - .doneCritText3.taskTextOutsideRight { - fill: ${t.taskTextOutsideColor} !important; - } - - .vert { - stroke: ${t.vertLineColor}; - } - - .vertText { - font-size: 15px; - text-anchor: middle; - fill: ${t.vertLineColor} !important; - } - - .activeCritText0, - .activeCritText1, - .activeCritText2, - .activeCritText3 { - fill: ${t.taskTextDarkColor} !important; - } - - .titleText { - text-anchor: middle; - font-size: 18px; - fill: ${t.titleColor||t.textColor}; - font-family: ${t.fontFamily}; - } -`,"getStyles"),Ni=Vi,Gi={parser:Ke,db:Ai,renderer:Pi,styles:Ni};export{Gi as diagram}; diff --git a/src/google/adk/cli/browser/chunk-NQKWI5EB.js b/src/google/adk/cli/browser/chunk-X43UMWSZ.js similarity index 71% rename from src/google/adk/cli/browser/chunk-NQKWI5EB.js rename to src/google/adk/cli/browser/chunk-X43UMWSZ.js index b6ea2fa5ce..62a29eaece 100644 --- a/src/google/adk/cli/browser/chunk-NQKWI5EB.js +++ b/src/google/adk/cli/browser/chunk-X43UMWSZ.js @@ -1 +1 @@ -import{a as o,b as c,c as t,d as n,e as k,f as e,g as i,k as u,p as d,q as l}from"./chunk-NALL4A3P.js";var m=class extends l{static{e(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},v={parser:{TokenBuilder:e(()=>new m,"TokenBuilder"),ValueConverter:e(()=>new d,"ValueConverter")}};function p(s=n){let r=t(c(s),i),a=t(o({shared:r}),u,v);return r.ServiceRegistry.register(a),{shared:r,Packet:a}}e(p,"createPacketServices");export{v as a,p as b}; +import{a as o,b as c,c as t,d as n,e as k,f as e,g as i,k as u,r as d,s as l}from"./chunk-7ZGKZ6HH.js";var m=class extends l{static{e(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},v={parser:{TokenBuilder:e(()=>new m,"TokenBuilder"),ValueConverter:e(()=>new d,"ValueConverter")}};function p(s=n){let r=t(c(s),i),a=t(o({shared:r}),u,v);return r.ServiceRegistry.register(a),{shared:r,Packet:a}}e(p,"createPacketServices");export{v as a,p as b}; diff --git a/src/google/adk/cli/browser/chunk-ST54LLJ3.js b/src/google/adk/cli/browser/chunk-XB6MIIOW.js similarity index 87% rename from src/google/adk/cli/browser/chunk-ST54LLJ3.js rename to src/google/adk/cli/browser/chunk-XB6MIIOW.js index 2a0315718b..512259228c 100644 --- a/src/google/adk/cli/browser/chunk-ST54LLJ3.js +++ b/src/google/adk/cli/browser/chunk-XB6MIIOW.js @@ -1 +1 @@ -import{N as w}from"./chunk-QFMJV7VH.js";import{g as r,i as c}from"./chunk-JRNAXTJ7.js";var g=r((t,e,i,h)=>{t.attr("class",i);let{width:o,height:n,x,y:u}=s(t,e);w(t,n,o,h);let a=m(x,u,o,n,e);t.attr("viewBox",a),c.debug(`viewBox configured: ${a} with padding: ${e}`)},"setupViewPortForSVG"),s=r((t,e)=>{let i=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:i.width+e*2,height:i.height+e*2,x:i.x,y:i.y}},"calculateDimensionsWithPadding"),m=r((t,e,i,h,o)=>`${t-o} ${e-o} ${i} ${h}`,"createViewBox");export{g as a}; +import{N as w}from"./chunk-37QI3DOO.js";import{g as r,i as c}from"./chunk-JRNAXTJ7.js";var g=r((t,e,i,h)=>{t.attr("class",i);let{width:o,height:n,x,y:u}=s(t,e);w(t,n,o,h);let a=m(x,u,o,n,e);t.attr("viewBox",a),c.debug(`viewBox configured: ${a} with padding: ${e}`)},"setupViewPortForSVG"),s=r((t,e)=>{let i=t.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:i.width+e*2,height:i.height+e*2,x:i.x,y:i.y}},"calculateDimensionsWithPadding"),m=r((t,e,i,h,o)=>`${t-o} ${e-o} ${i} ${h}`,"createViewBox");export{g as a}; diff --git a/src/google/adk/cli/browser/chunk-XE4A3JWW.js b/src/google/adk/cli/browser/chunk-XE4A3JWW.js deleted file mode 100644 index 611e9d0cbd..0000000000 --- a/src/google/adk/cli/browser/chunk-XE4A3JWW.js +++ /dev/null @@ -1 +0,0 @@ -import{a as r,b as e}from"./chunk-2DLZXFEQ.js";import"./chunk-NALL4A3P.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import"./chunk-RMXJBC7V.js";export{r as GitGraphModule,e as createGitGraphServices}; diff --git a/src/google/adk/cli/browser/chunk-XMBKBASC.js b/src/google/adk/cli/browser/chunk-XMBKBASC.js deleted file mode 100644 index e7a4f921c7..0000000000 --- a/src/google/adk/cli/browser/chunk-XMBKBASC.js +++ /dev/null @@ -1 +0,0 @@ -import{C as m,G as E,J as a,S as O,Y as C,b as u,p as o,s as f}from"./chunk-ASJUXEUE.js";import{h as b,l as c}from"./chunk-EGBSMT36.js";var j="\0",_="\0",N="",p=class{constructor(e={}){this._isDirected=Object.prototype.hasOwnProperty.call(e,"directed")?e.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(e,"multigraph")?e.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=c(void 0),this._defaultEdgeLabelFn=c(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[_]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(e){return this._label=e,this}graph(){return this._label}setDefaultNodeLabel(e){return b(e)||(e=c(e)),this._defaultNodeLabelFn=e,this}nodeCount(){return this._nodeCount}nodes(){return u(this._nodes)}sources(){var e=this;return f(this.nodes(),function(t){return E(e._in[t])})}sinks(){var e=this;return f(this.nodes(),function(t){return E(e._out[t])})}setNodes(e,t){var s=arguments,i=this;return o(e,function(r){s.length>1?i.setNode(r,t):i.setNode(r)}),this}setNode(e,t){return Object.prototype.hasOwnProperty.call(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=t),this):(this._nodes[e]=arguments.length>1?t:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=_,this._children[e]={},this._children[_][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)}node(e){return this._nodes[e]}hasNode(e){return Object.prototype.hasOwnProperty.call(this._nodes,e)}removeNode(e){if(Object.prototype.hasOwnProperty.call(this._nodes,e)){var t=s=>this.removeEdge(this._edgeObjs[s]);delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],o(this.children(e),s=>{this.setParent(s)}),delete this._children[e]),o(u(this._in[e]),t),delete this._in[e],delete this._preds[e],o(u(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this}setParent(e,t){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(a(t))t=_;else{t+="";for(var s=t;!a(s);s=this.parent(s))if(s===e)throw new Error("Setting "+t+" as parent of "+e+" would create a cycle");this.setNode(t)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=t,this._children[t][e]=!0,this}_removeFromParentsChildList(e){delete this._children[this._parent[e]][e]}parent(e){if(this._isCompound){var t=this._parent[e];if(t!==_)return t}}children(e){if(a(e)&&(e=_),this._isCompound){var t=this._children[e];if(t)return u(t)}else{if(e===_)return this.nodes();if(this.hasNode(e))return[]}}predecessors(e){var t=this._preds[e];if(t)return u(t)}successors(e){var t=this._sucs[e];if(t)return u(t)}neighbors(e){var t=this.predecessors(e);if(t)return C(t,this.successors(e))}isLeaf(e){var t;return this.isDirected()?t=this.successors(e):t=this.neighbors(e),t.length===0}filterNodes(e){var t=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});t.setGraph(this.graph());var s=this;o(this._nodes,function(n,h){e(h)&&t.setNode(h,n)}),o(this._edgeObjs,function(n){t.hasNode(n.v)&&t.hasNode(n.w)&&t.setEdge(n,s.edge(n))});var i={};function r(n){var h=s.parent(n);return h===void 0||t.hasNode(h)?(i[n]=h,h):h in i?i[h]:r(h)}return this._isCompound&&o(t.nodes(),function(n){t.setParent(n,r(n))}),t}setDefaultEdgeLabel(e){return b(e)||(e=c(e)),this._defaultEdgeLabelFn=e,this}edgeCount(){return this._edgeCount}edges(){return m(this._edgeObjs)}setPath(e,t){var s=this,i=arguments;return O(e,function(r,n){return i.length>1?s.setEdge(r,n,t):s.setEdge(r,n),n}),this}setEdge(){var e,t,s,i,r=!1,n=arguments[0];typeof n=="object"&&n!==null&&"v"in n?(e=n.v,t=n.w,s=n.name,arguments.length===2&&(i=arguments[1],r=!0)):(e=n,t=arguments[1],s=arguments[3],arguments.length>2&&(i=arguments[2],r=!0)),e=""+e,t=""+t,a(s)||(s=""+s);var h=g(this._isDirected,e,t,s);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,h))return r&&(this._edgeLabels[h]=i),this;if(!a(s)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(t),this._edgeLabels[h]=r?i:this._defaultEdgeLabelFn(e,t,s);var l=P(this._isDirected,e,t,s);return e=l.v,t=l.w,Object.freeze(l),this._edgeObjs[h]=l,v(this._preds[t],e),v(this._sucs[e],t),this._in[t][h]=l,this._out[e][h]=l,this._edgeCount++,this}edge(e,t,s){var i=arguments.length===1?y(this._isDirected,arguments[0]):g(this._isDirected,e,t,s);return this._edgeLabels[i]}hasEdge(e,t,s){var i=arguments.length===1?y(this._isDirected,arguments[0]):g(this._isDirected,e,t,s);return Object.prototype.hasOwnProperty.call(this._edgeLabels,i)}removeEdge(e,t,s){var i=arguments.length===1?y(this._isDirected,arguments[0]):g(this._isDirected,e,t,s),r=this._edgeObjs[i];return r&&(e=r.v,t=r.w,delete this._edgeLabels[i],delete this._edgeObjs[i],L(this._preds[t],e),L(this._sucs[e],t),delete this._in[t][i],delete this._out[e][i],this._edgeCount--),this}inEdges(e,t){var s=this._in[e];if(s){var i=m(s);return t?f(i,function(r){return r.v===t}):i}}outEdges(e,t){var s=this._out[e];if(s){var i=m(s);return t?f(i,function(r){return r.w===t}):i}}nodeEdges(e,t){var s=this.inEdges(e,t);if(s)return s.concat(this.outEdges(e,t))}};p.prototype._nodeCount=0;p.prototype._edgeCount=0;function v(d,e){d[e]?d[e]++:d[e]=1}function L(d,e){--d[e]||delete d[e]}function g(d,e,t,s){var i=""+e,r=""+t;if(!d&&i>r){var n=i;i=r,r=n}return i+N+r+N+(a(s)?j:s)}function P(d,e,t,s){var i=""+e,r=""+t;if(!d&&i>r){var n=i;i=r,r=n}var h={v:i,w:r};return s&&(h.name=s),h}function y(d,e){return g(d,e.v,e.w,e.name)}export{p as a}; diff --git a/src/google/adk/cli/browser/chunk-Y55XRFJI.js b/src/google/adk/cli/browser/chunk-Y55XRFJI.js new file mode 100644 index 0000000000..33c3a3178d --- /dev/null +++ b/src/google/adk/cli/browser/chunk-Y55XRFJI.js @@ -0,0 +1,4 @@ +import{a as W}from"./chunk-YEJ3ZE5E.js";import{a as S}from"./chunk-VS3KHVTS.js";import{a as G,r as C}from"./chunk-UFYCV57Y.js";import{a as V,b as q,c as z,d as K,e as Q}from"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import{b as M,d as F,e as U,g as Y,h as H,i as j,j as B}from"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import{a as T}from"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{Y as R}from"./chunk-37QI3DOO.js";import{g,i}from"./chunk-JRNAXTJ7.js";import{F as _}from"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{a as P,b as A,j as b}from"./chunk-RMXJBC7V.js";function p(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:re(e),edges:se(e)};return C(e.graph())||(t.value=G(e.graph())),t}function re(e){return _(e.nodes(),function(t){var n=e.node(t),a=e.parent(t),s={v:t};return C(n)||(s.value=n),C(a)||(s.parent=a),s})}function se(e){return _(e.edges(),function(t){var n=e.edge(t),a={v:t.v,w:t.w};return C(t.name)||(a.name=t.name),C(n)||(a.value=n),a})}var d=new Map,X=new Map,L=new Map,ae=g(()=>{X.clear(),L.clear(),d.clear()},"clear"),O=g((e,t)=>{let n=X.get(t)||[];return i.trace("In isDescendant",t," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),ce=g((e,t)=>{let n=X.get(t)||[];return i.info("Descendants of ",t," is ",n),i.info("Edge is ",e),e.v===t||e.w===t?!1:n?n.includes(e.v)||O(e.v,t)||O(e.w,t)||n.includes(e.w):(i.debug("Tilt, ",t,",not in descendants"),!1)},"edgeInCluster"),I=g((e,t,n,a)=>{i.warn("Copying children of ",e,"root",a,"data",t.node(e),a);let s=t.children(e)||[];e!==a&&s.push(e),i.warn("Copying (nodes) clusterId",e,"nodes",s),s.forEach(o=>{if(t.children(o).length>0)I(o,t,n,a);else{let l=t.node(o);i.info("cp ",o," to ",a," with parent ",e),n.setNode(o,l),a!==t.parent(o)&&(i.warn("Setting parent",o,t.parent(o)),n.setParent(o,t.parent(o))),e!==a&&o!==e?(i.debug("Setting parent",o,e),n.setParent(o,e)):(i.info("In copy ",e,"root",a,"data",t.node(e),a),i.debug("Not Setting parent for node=",o,"cluster!==rootId",e!==a,"node!==clusterId",o!==e));let u=t.edges(o);i.debug("Copying Edges",u),u.forEach(c=>{i.info("Edge",c);let m=t.edge(c.v,c.w,c.name);i.info("Edge data",m,a);try{ce(c,a)?(i.info("Copying as ",c.v,c.w,m,c.name),n.setEdge(c.v,c.w,m,c.name),i.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]))):i.info("Skipping copy of edge ",c.v,"-->",c.w," rootId: ",a," clusterId:",e)}catch(h){i.error(h)}})}i.debug("Removing node",o),t.removeNode(o)})},"copy"),ee=g((e,t)=>{let n=t.children(e),a=[...n];for(let s of n)L.set(s,e),a=[...a,...ee(s,t)];return a},"extractDescendants"),de=g((e,t,n)=>{let a=e.edges().filter(c=>c.v===t||c.w===t),s=e.edges().filter(c=>c.v===n||c.w===n),o=a.map(c=>({v:c.v===t?n:c.v,w:c.w===t?t:c.w})),l=s.map(c=>({v:c.v,w:c.w}));return o.filter(c=>l.some(m=>c.v===m.v&&c.w===m.w))},"findCommonEdges"),x=g((e,t,n)=>{let a=t.children(e);if(i.trace("Searching children of id ",e,a),a.length<1)return e;let s;for(let o of a){let l=x(o,t,n),u=de(t,n,l);if(l)if(u.length>0)s=l;else return l}return s},"findNonClusterChild"),$=g(e=>!d.has(e)||!d.get(e).externalConnections?e:d.has(e)?d.get(e).id:e,"getAnchorId"),le=g((e,t)=>{if(!e||t>10){i.debug("Opting out, no graph ");return}else i.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(i.warn("Cluster identified",n," Replacement id in edges: ",x(n,e,n)),X.set(n,ee(n,e)),d.set(n,{id:x(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){let a=e.children(n),s=e.edges();a.length>0?(i.debug("Cluster identified",n,X),s.forEach(o=>{let l=O(o.v,n),u=O(o.w,n);l^u&&(i.warn("Edge: ",o," leaves cluster ",n),i.warn("Descendants of XXX ",n,": ",X.get(n)),d.get(n).externalConnections=!0)})):i.debug("Not a cluster ",n,X)});for(let n of d.keys()){let a=d.get(n).id,s=e.parent(a);s!==n&&d.has(s)&&!d.get(s).externalConnections&&(d.get(n).id=s)}e.edges().forEach(function(n){let a=e.edge(n);i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),i.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let s=n.v,o=n.w;if(i.warn("Fix XXX",d,"ids:",n.v,n.w,"Translating: ",d.get(n.v)," --- ",d.get(n.w)),d.get(n.v)||d.get(n.w)){if(i.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),s=$(n.v),o=$(n.w),e.removeEdge(n.v,n.w,n.name),s!==n.v){let l=e.parent(s);d.get(l).externalConnections=!0,a.fromCluster=n.v}if(o!==n.w){let l=e.parent(o);d.get(l).externalConnections=!0,a.toCluster=n.w}i.warn("Fix Replacing with XXX",s,o,n.name),e.setEdge(s,o,a,n.name)}}),i.warn("Adjusted Graph",p(e)),ne(e,0),i.trace(d)},"adjustClustersAndEdges"),ne=g((e,t)=>{if(i.warn("extractor - ",t,p(e),e.children("D")),t>10){i.error("Bailing out");return}let n=e.nodes(),a=!1;for(let s of n){let o=e.children(s);a=a||o.length>0}if(!a){i.debug("Done, no node has children",e.nodes());return}i.debug("Nodes = ",n,t);for(let s of n)if(i.debug("Extracting node",s,d,d.has(s)&&!d.get(s).externalConnections,!e.parent(s),e.node(s),e.children("D")," Depth ",t),!d.has(s))i.debug("Not a cluster",s,t);else if(!d.get(s).externalConnections&&e.children(s)&&e.children(s).length>0){i.warn("Cluster without external connections, without a parent and with children",s,t);let l=e.graph().rankdir==="TB"?"LR":"TB";d.get(s)?.clusterData?.dir&&(l=d.get(s).clusterData.dir,i.warn("Fixing dir",d.get(s).clusterData.dir,l));let u=new S({multigraph:!0,compound:!0}).setGraph({rankdir:l,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});i.warn("Old graph before copy",p(e)),I(s,e,u,s),e.setNode(s,{clusterNode:!0,id:s,clusterData:d.get(s).clusterData,label:d.get(s).label,graph:u}),i.warn("New graph after copy node: (",s,")",p(u)),i.debug("Old graph after copy",p(e))}else i.warn("Cluster ** ",s," **not meeting the criteria !externalConnections:",!d.get(s).externalConnections," no parent: ",!e.parent(s)," children ",e.children(s)&&e.children(s).length>0,e.children("D"),t),i.debug(d);n=e.nodes(),i.warn("New list of nodes",n);for(let s of n){let o=e.node(s);i.warn(" Now next level",s,o),o?.clusterNode&&ne(o.graph,t+1)}},"extractor"),te=g((e,t)=>{if(t.length===0)return[];let n=Object.assign([],t);return t.forEach(a=>{let s=e.children(a),o=te(e,s);n=[...n,...o]}),n},"sorter"),fe=g(e=>te(e,e.children()),"sortNodesByHierarchy"),ie=g((e,t,n,a,s,o)=>b(null,null,function*(){i.warn("Graph in recursive render:XAX",p(t),s);let l=t.graph().rankdir;i.trace("Dir in recursive render - dir:",l);let u=e.insert("g").attr("class","root");t.nodes()?i.info("Recursive render XXX",t.nodes()):i.info("No nodes found for",t),t.edges().length>0&&i.info("Recursive edges",t.edge(t.edges()[0]));let c=u.insert("g").attr("class","clusters"),m=u.insert("g").attr("class","edgePaths"),h=u.insert("g").attr("class","edgeLabels"),v=u.insert("g").attr("class","nodes");yield Promise.all(t.nodes().map(function(f){return b(this,null,function*(){let r=t.node(f);if(s!==void 0){let w=JSON.parse(JSON.stringify(s.clusterData));i.trace(`Setting data for parent cluster XXX + Node.id = `,f,` + data=`,w.height,` +Parent cluster`,s.height),t.setNode(s.id,w),t.parent(f)||(i.trace("Setting parent",f,s.id),t.setParent(f,s.id,w))}if(i.info("(Insert) Node XXX"+f+": "+JSON.stringify(t.node(f))),r?.clusterNode){i.info("Cluster identified XBX",f,r.width,t.node(f));let{ranksep:w,nodesep:N}=t.graph();r.graph.setGraph(A(P({},r.graph.graph()),{ranksep:w+25,nodesep:N}));let y=yield ie(v,r.graph,n,a,t.node(f),o),J=y.elem;M(r,J),r.diff=y.diff||0,i.info("New compound node after recursive render XAX",f,"width",r.width,"height",r.height),H(J,r)}else t.children(f).length>0?(i.trace("Cluster - the non recursive path XBX",f,r.id,r,r.width,"Graph:",t),i.trace(x(r.id,t)),d.set(r.id,{id:x(r.id,t),node:r})):(i.trace("Node - the non recursive path XAX",f,v,t.node(f),l),yield Y(v,t.node(f),{config:o,dir:l}))})})),yield g(()=>b(null,null,function*(){let f=t.edges().map(function(r){return b(this,null,function*(){let w=t.edge(r.v,r.w,r.name);i.info("Edge "+r.v+" -> "+r.w+": "+JSON.stringify(r)),i.info("Edge "+r.v+" -> "+r.w+": ",r," ",JSON.stringify(t.edge(r))),i.info("Fix",d,"ids:",r.v,r.w,"Translating: ",d.get(r.v),d.get(r.w)),yield q(h,w)})});yield Promise.all(f)}),"processEdges")(),i.info("Graph before layout:",JSON.stringify(p(t))),i.info("############################################# XXX"),i.info("### Layout ### XXX"),i.info("############################################# XXX"),W(t),i.info("Graph after layout:",JSON.stringify(p(t)));let k=0,{subGraphTitleTotalMargin:D}=T(o);return yield Promise.all(fe(t).map(function(f){return b(this,null,function*(){let r=t.node(f);if(i.info("Position XBX => "+f+": ("+r.x,","+r.y,") width: ",r.width," height: ",r.height),r?.clusterNode)r.y+=D,i.info("A tainted cluster node XBX1",f,r.id,r.width,r.height,r.x,r.y,t.parent(f)),d.get(r.id).node=r,B(r);else if(t.children(f).length>0){i.info("A pure cluster node XBX1",f,r.id,r.x,r.y,r.width,r.height,t.parent(f)),r.height+=D,t.node(r.parentId);let w=r?.padding/2||0,N=r?.labelBBox?.height||0,y=N-w||0;i.debug("OffsetY",y,"labelHeight",N,"halfPadding",w),yield F(c,r),d.get(r.id).node=r}else{let w=t.node(r.parentId);r.y+=D/2,i.info("A regular node XBX1 - using the padding",r.id,"parent",r.parentId,r.width,r.height,r.x,r.y,"offsetY",r.offsetY,"parent",w,w?.offsetY,r),B(r)}})})),t.edges().forEach(function(f){let r=t.edge(f);i.info("Edge "+f.v+" -> "+f.w+": "+JSON.stringify(r),r),r.points.forEach(J=>J.y+=D/2);let w=t.node(f.v);var N=t.node(f.w);let y=K(m,r,d,n,w,N,a);z(r,y)}),t.nodes().forEach(function(f){let r=t.node(f);i.info(f,r.type,r.diff),r.isGroup&&(k=r.diff)}),i.warn("Returning from recursive render XAX",u,k),{elem:u,diff:k}}),"recursiveRender"),Se=g((e,t)=>b(null,null,function*(){let n=new S({multigraph:!0,compound:!0}).setGraph({rankdir:e.direction,nodesep:e.config?.nodeSpacing||e.config?.flowchart?.nodeSpacing||e.nodeSpacing,ranksep:e.config?.rankSpacing||e.config?.flowchart?.rankSpacing||e.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),a=t.select("g");Q(a,e.markers,e.type,e.diagramId),j(),V(),U(),ae(),e.nodes.forEach(o=>{n.setNode(o.id,P({},o)),o.parentId&&n.setParent(o.id,o.parentId)}),i.debug("Edges:",e.edges),e.edges.forEach(o=>{if(o.start===o.end){let l=o.start,u=l+"---"+l+"---1",c=l+"---"+l+"---2",m=n.node(l);n.setNode(u,{domId:u,id:u,parentId:m.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),n.setParent(u,m.parentId),n.setNode(c,{domId:c,id:c,parentId:m.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),n.setParent(c,m.parentId);let h=structuredClone(o),v=structuredClone(o),E=structuredClone(o);h.label="",h.arrowTypeEnd="none",h.id=l+"-cyclic-special-1",v.arrowTypeStart="none",v.arrowTypeEnd="none",v.id=l+"-cyclic-special-mid",E.label="",m.isGroup&&(h.fromCluster=l,E.toCluster=l),E.id=l+"-cyclic-special-2",E.arrowTypeStart="none",n.setEdge(l,u,h,l+"-cyclic-special-0"),n.setEdge(u,c,v,l+"-cyclic-special-1"),n.setEdge(c,l,E,l+"-cycMath.abs(o)*s?(a<0&&(s=-s),u=s*o/a,d=s):(o<0&&(i=-i),u=i,d=i*a/o),{x:n+u,y:t+d}}function L(r){var e=v(x(rr(r)+1),function(){return[]});return f(r.nodes(),function(n){var t=r.node(n),o=t.rank;E(o)||(e[o][t.order]=n)}),e}function xr(r){var e=P(v(r.nodes(),function(n){return r.node(n).rank}));f(r.nodes(),function(n){var t=r.node(n);W(t,"rank")&&(t.rank-=e)})}function kr(r){var e=P(v(r.nodes(),function(a){return r.node(a).rank})),n=[];f(r.nodes(),function(a){var i=r.node(a).rank-e;n[i]||(n[i]=[]),n[i].push(a)});var t=0,o=r.graph().nodeRankFactor;f(n,function(a,i){E(a)&&i%o!==0?--t:t&&f(a,function(s){r.node(s).rank+=t})})}function $(r,e,n,t){var o={width:0,height:0};return arguments.length>=4&&(o.rank=n,o.order=t),k(r,"border",o,e)}function rr(r){return y(v(r.nodes(),function(e){var n=r.node(e).rank;if(!E(n))return n}))}function gr(r,e){var n={lhs:[],rhs:[]};return f(r,function(t){e(t)?n.lhs.push(t):n.rhs.push(t)}),n}function Nr(r,e){var n=K();try{return e()}finally{console.log(r+" time: "+(K()-n)+"ms")}}function Or(r,e){return e()}function Pr(r){function e(n){var t=r.children(n),o=r.node(n);if(t.length&&f(t,e),Object.prototype.hasOwnProperty.call(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var a=o.minRank,i=o.maxRank+1;a0;--s)if(i=e[s].dequeue(),i){t=t.concat(tr(r,e,n,i,!0));break}}}return t}function tr(r,e,n,t,o){var a=o?[]:void 0;return f(r.inEdges(t.v),function(i){var s=r.edge(i),u=r.node(i.v);o&&a.push({v:i.v,w:i.w}),u.out-=s,or(e,n,u)}),f(r.outEdges(t.v),function(i){var s=r.edge(i),u=i.w,d=r.node(u);d.in-=s,or(e,n,d)}),r.removeNode(t.v),a}function be(r,e){var n=new b,t=0,o=0;f(r.nodes(),function(s){n.setNode(s,{v:s,in:0,out:0})}),f(r.edges(),function(s){var u=n.edge(s.v,s.w)||0,d=e(s),c=u+d;n.setEdge(s.v,s.w,c),o=Math.max(o,n.node(s.v).out+=d),t=Math.max(t,n.node(s.w).in+=d)});var a=x(o+t+3).map(function(){return new X}),i=t+1;return f(n.nodes(),function(s){or(a,i,n.node(s))}),{graph:n,buckets:a,zeroIdx:i}}function or(r,e,n){n.out?n.in?r[n.out-n.in+e].enqueue(n):r[r.length-1].enqueue(n):r[0].enqueue(n)}function Mr(r){var e=r.graph().acyclicer==="greedy"?Sr(r,n(r)):Ee(r);f(e,function(t){var o=r.edge(t);r.removeEdge(t),o.forwardName=t.name,o.reversed=!0,r.setEdge(t.w,t.v,o,B("rev"))});function n(t){return function(o){return t.edge(o).weight}}}function Ee(r){var e=[],n={},t={};function o(a){Object.prototype.hasOwnProperty.call(t,a)||(t[a]=!0,n[a]=!0,f(r.outEdges(a),function(i){Object.prototype.hasOwnProperty.call(n,i.w)?e.push(i):o(i.w)}),delete n[a])}return f(r.nodes(),o),e}function Fr(r){f(r.edges(),function(e){var n=r.edge(e);if(n.reversed){r.removeEdge(e);var t=n.forwardName;delete n.reversed,delete n.forwardName,r.setEdge(e.w,e.v,n,t)}})}function Vr(r){r.graph().dummyChains=[],f(r.edges(),function(e){ye(r,e)})}function ye(r,e){var n=e.v,t=r.node(n).rank,o=e.w,a=r.node(o).rank,i=e.name,s=r.edge(e),u=s.labelRank;if(a!==t+1){r.removeEdge(e);var d=void 0,c,h;for(h=0,++t;ti.lim&&(s=i,u=!0);var d=N(e.edges(),function(c){return u===Yr(r,r.node(c.v),s)&&u!==Yr(r,r.node(c.w),s)});return G(d,function(c){return S(e,c)})}function Xr(r,e,n,t){var o=n.v,a=n.w;r.removeEdge(o,a),r.setEdge(t.v,t.w,{}),ur(r),fr(r,e),Ce(r,e)}function Ce(r,e){var n=D(r.nodes(),function(o){return!e.node(o).parent}),t=sr(r,n);t=t.slice(1),f(t,function(o){var a=r.node(o).parent,i=e.edge(o,a),s=!1;i||(i=e.edge(a,o),s=!0),e.node(o).rank=e.node(a).rank+(s?i.minlen:-i.minlen)})}function je(r,e,n){return r.hasEdge(e,n)}function Yr(r,e,n){return n.low<=e.lim&&e.lim<=n.lim}function dr(r){switch(r.graph().ranker){case"network-simplex":Hr(r);break;case"tight-tree":Re(r);break;case"longest-path":Te(r);break;default:Hr(r)}}var Te=z;function Re(r){z(r),H(r)}function Hr(r){j(r)}function Jr(r){var e=k(r,"root",{},"_root"),n=Se(r),t=y(I(n))-1,o=2*t+1;r.graph().nestingRoot=e,f(r.edges(),function(i){r.edge(i).minlen*=o});var a=Me(r)+1;f(r.children(),function(i){Kr(r,e,o,a,t,n,i)}),r.graph().nodeRankFactor=o}function Kr(r,e,n,t,o,a,i){var s=r.children(i);if(!s.length){i!==e&&r.setEdge(e,i,{weight:0,minlen:n});return}var u=$(r,"_bt"),d=$(r,"_bb"),c=r.node(i);r.setParent(u,i),c.borderTop=u,r.setParent(d,i),c.borderBottom=d,f(s,function(h){Kr(r,e,n,t,o,a,h);var l=r.node(h),p=l.borderTop?l.borderTop:h,m=l.borderBottom?l.borderBottom:h,w=l.borderTop?t:2*t,A=p!==m?1:o-a[i]+1;r.setEdge(u,p,{weight:w,minlen:A,nestingEdge:!0}),r.setEdge(m,d,{weight:w,minlen:A,nestingEdge:!0})}),r.parent(i)||r.setEdge(e,u,{weight:0,minlen:o+a[i]})}function Se(r){var e={};function n(t,o){var a=r.children(t);a&&a.length&&f(a,function(i){n(i,o+1)}),e[t]=o}return f(r.children(),function(t){n(t,1)}),e}function Me(r){return R(r.edges(),function(e,n){return e+r.edge(n).weight},0)}function Qr(r){var e=r.graph();r.removeNode(e.nestingRoot),delete e.nestingRoot,f(r.edges(),function(n){var t=r.edge(n);t.nestingEdge&&r.removeEdge(n)})}function Zr(r,e,n){var t={},o;f(n,function(a){for(var i=r.parent(a),s,u;i;){if(s=r.parent(i),s?(u=t[s],t[s]=i):(u=o,o=i),u&&u!==i){e.setEdge(u,i);return}i=s}})}function $r(r,e,n){var t=Ge(r),o=new b({compound:!0}).setGraph({root:t}).setDefaultNodeLabel(function(a){return r.node(a)});return f(r.nodes(),function(a){var i=r.node(a),s=r.parent(a);(i.rank===e||i.minRank<=e&&e<=i.maxRank)&&(o.setNode(a),o.setParent(a,s||t),f(r[n](a),function(u){var d=u.v===a?u.w:u.v,c=o.edge(d,a),h=E(c)?0:c.weight;o.setEdge(d,a,{weight:r.edge(u).weight+h})}),Object.prototype.hasOwnProperty.call(i,"minRank")&&o.setNode(a,{borderLeft:i.borderLeft[e],borderRight:i.borderRight[e]}))}),o}function Ge(r){for(var e;r.hasNode(e=B("_root")););return e}function re(r,e){for(var n=0,t=1;t0;)c%2&&(h+=s[c+1]),c=c-1>>1,s[c]+=d.weight;u+=d.weight*h})),u}function ee(r){var e={},n=N(r.nodes(),function(s){return!r.children(s).length}),t=y(v(n,function(s){return r.node(s).rank})),o=v(x(t+1),function(){return[]});function a(s){if(!W(e,s)){e[s]=!0;var u=r.node(s);o[u.rank].push(s),f(r.successors(s),a)}}var i=O(n,function(s){return r.node(s).rank});return f(i,a),o}function ne(r,e){return v(e,function(n){var t=r.inEdges(n);if(t.length){var o=R(t,function(a,i){var s=r.edge(i),u=r.node(i.v);return{sum:a.sum+s.weight*u.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:n,barycenter:o.sum/o.weight,weight:o.weight}}else return{v:n}})}function te(r,e){var n={};f(r,function(o,a){var i=n[o.v]={indegree:0,in:[],out:[],vs:[o.v],i:a};E(o.barycenter)||(i.barycenter=o.barycenter,i.weight=o.weight)}),f(e.edges(),function(o){var a=n[o.v],i=n[o.w];!E(a)&&!E(i)&&(i.indegree++,a.out.push(n[o.w]))});var t=N(n,function(o){return!o.indegree});return Be(t)}function Be(r){var e=[];function n(a){return function(i){i.merged||(E(i.barycenter)||E(a.barycenter)||i.barycenter>=a.barycenter)&&Ae(a,i)}}function t(a){return function(i){i.in.push(a),--i.indegree===0&&r.push(i)}}for(;r.length;){var o=r.pop();e.push(o),f(o.in.reverse(),n(o)),f(o.out,t(o))}return v(N(e,function(a){return!a.merged}),function(a){return V(a,["vs","i","barycenter","weight"])})}function Ae(r,e){var n=0,t=0;r.weight&&(n+=r.barycenter*r.weight,t+=r.weight),e.weight&&(n+=e.barycenter*e.weight,t+=e.weight),r.vs=e.vs.concat(r.vs),r.barycenter=n/t,r.weight=t,r.i=Math.min(e.i,r.i),e.merged=!0}function ae(r,e){var n=gr(r,function(c){return Object.prototype.hasOwnProperty.call(c,"barycenter")}),t=n.lhs,o=O(n.rhs,function(c){return-c.i}),a=[],i=0,s=0,u=0;t.sort(De(!!e)),u=oe(a,o,u),f(t,function(c){u+=c.vs.length,a.push(c.vs),i+=c.barycenter*c.weight,s+=c.weight,u=oe(a,o,u)});var d={vs:g(a)};return s&&(d.barycenter=i/s,d.weight=s),d}function oe(r,e,n){for(var t;e.length&&(t=T(e)).i<=n;)e.pop(),r.push(t.vs),n++;return n}function De(r){return function(e,n){return e.barycentern.barycenter?1:r?n.i-e.i:e.i-n.i}}function cr(r,e,n,t){var o=r.children(e),a=r.node(e),i=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,u={};i&&(o=N(o,function(m){return m!==i&&m!==s}));var d=ne(r,o);f(d,function(m){if(r.children(m.v).length){var w=cr(r,m.v,n,t);u[m.v]=w,Object.prototype.hasOwnProperty.call(w,"barycenter")&&ze(m,w)}});var c=te(d,n);Ye(c,u);var h=ae(c,t);if(i&&(h.vs=g([i,h.vs,s]),r.predecessors(i).length)){var l=r.node(r.predecessors(i)[0]),p=r.node(r.predecessors(s)[0]);Object.prototype.hasOwnProperty.call(h,"barycenter")||(h.barycenter=0,h.weight=0),h.barycenter=(h.barycenter*h.weight+l.order+p.order)/(h.weight+2),h.weight+=2}return h}function Ye(r,e){f(r,function(n){n.vs=g(n.vs.map(function(t){return e[t]?e[t].vs:t}))})}function ze(r,e){E(r.barycenter)?(r.barycenter=e.barycenter,r.weight=e.weight):(r.barycenter=(r.barycenter*r.weight+e.barycenter*e.weight)/(r.weight+e.weight),r.weight+=e.weight)}function fe(r){var e=rr(r),n=ie(r,x(1,e+1),"inEdges"),t=ie(r,x(e-1,-1,-1),"outEdges"),o=ee(r);se(r,o);for(var a=Number.POSITIVE_INFINITY,i,s=0,u=0;u<4;++s,++u){Ue(s%2?n:t,s%4>=2),o=L(r);var d=re(r,o);di||s>e[u].lim));for(d=u,u=t;(u=r.parent(u))!==d;)a.push(u);return{path:o.concat(a.reverse()),lca:d}}function qe(r){var e={},n=0;function t(o){var a=n;f(r.children(o),t),e[o]={low:a,lim:n++}}return f(r.children(),t),e}function Xe(r,e){var n={};function t(o,a){var i=0,s=0,u=o.length,d=T(a);return f(a,function(c,h){var l=Je(r,c),p=l?r.node(l).order:u;(l||c===d)&&(f(a.slice(s,h+1),function(m){f(r.predecessors(m),function(w){var A=r.node(w),pr=A.order;(prd)&&de(n,l,c)})})}function o(a,i){var s=-1,u,d=0;return f(i,function(c,h){if(r.node(c).dummy==="border"){var l=r.predecessors(c);l.length&&(u=r.node(l[0]).order,t(i,d,h,s,u),d=h,s=u)}t(i,d,i.length,u,a.length)}),i}return R(e,o),n}function Je(r,e){if(r.node(e).dummy)return D(r.predecessors(e),function(n){return r.node(n).dummy})}function de(r,e,n){if(e>n){var t=e;e=n,n=t}Object.prototype.hasOwnProperty.call(r,e)||Object.defineProperty(r,e,{enumerable:!0,configurable:!0,value:{},writable:!0});var o=r[e];Object.defineProperty(o,n,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function Ke(r,e,n){if(e>n){var t=e;e=n,n=t}return!!r[e]&&Object.prototype.hasOwnProperty.call(r[e],n)}function Qe(r,e,n,t){var o={},a={},i={};return f(e,function(s){f(s,function(u,d){o[u]=u,a[u]=u,i[u]=d})}),f(e,function(s){var u=-1;f(s,function(d){var c=t(d);if(c.length){c=O(c,function(w){return i[w]});for(var h=(c.length-1)/2,l=Math.floor(h),p=Math.ceil(h);l<=p;++l){var m=c[l];a[d]===d&&u{var t=n(" buildLayoutGraph",()=>wn(r));n(" runLayout",()=>fn(t,n)),n(" updateInputGraph",()=>un(r,t))})}function fn(r,e){e(" makeSpaceForEdgeLabels",()=>bn(r)),e(" removeSelfEdges",()=>Pn(r)),e(" acyclic",()=>Mr(r)),e(" nestingGraph.run",()=>Jr(r)),e(" rank",()=>dr(q(r))),e(" injectEdgeLabelProxies",()=>En(r)),e(" removeEmptyRanks",()=>kr(r)),e(" nestingGraph.cleanup",()=>Qr(r)),e(" normalizeRanks",()=>xr(r)),e(" assignRankMinMax",()=>yn(r)),e(" removeEdgeLabelProxies",()=>xn(r)),e(" normalize.run",()=>Vr(r)),e(" parentDummyChains",()=>ue(r)),e(" addBorderSegments",()=>Pr(r)),e(" order",()=>fe(r)),e(" insertSelfEdges",()=>Ln(r)),e(" adjustCoordinateSystem",()=>Cr(r)),e(" position",()=>he(r)),e(" positionSelfEdges",()=>Cn(r)),e(" removeBorderNodes",()=>In(r)),e(" normalize.undo",()=>Br(r)),e(" fixupEdgeLabelCoords",()=>Nn(r)),e(" undoCoordinateSystem",()=>jr(r)),e(" translateGraph",()=>kn(r)),e(" assignNodeIntersects",()=>gn(r)),e(" reversePoints",()=>On(r)),e(" acyclic.undo",()=>Fr(r))}function un(r,e){f(r.nodes(),function(n){var t=r.node(n),o=e.node(n);t&&(t.x=o.x,t.y=o.y,e.children(n).length&&(t.width=o.width,t.height=o.height))}),f(r.edges(),function(n){var t=r.edge(n),o=e.edge(n);t.points=o.points,Object.prototype.hasOwnProperty.call(o,"x")&&(t.x=o.x,t.y=o.y)}),r.graph().width=e.graph().width,r.graph().height=e.graph().height}var dn=["nodesep","edgesep","ranksep","marginx","marginy"],cn={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},hn=["acyclicer","ranker","rankdir","align"],ln=["width","height"],pn={width:0,height:0},mn=["minlen","weight","width","height","labeloffset"],vn={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},_n=["labelpos"];function wn(r){var e=new b({multigraph:!0,compound:!0}),n=lr(r.graph());return e.setGraph(Y({},cn,hr(n,dn),V(n,hn))),f(r.nodes(),function(t){var o=lr(r.node(t));e.setNode(t,_r(hr(o,ln),pn)),e.setParent(t,r.parent(t))}),f(r.edges(),function(t){var o=lr(r.edge(t));e.setEdge(t,Y({},vn,hr(o,mn),V(o,_n)))}),e}function bn(r){var e=r.graph();e.ranksep/=2,f(r.edges(),function(n){var t=r.edge(n);t.minlen*=2,t.labelpos.toLowerCase()!=="c"&&(e.rankdir==="TB"||e.rankdir==="BT"?t.width+=t.labeloffset:t.height+=t.labeloffset)})}function En(r){f(r.edges(),function(e){var n=r.edge(e);if(n.width&&n.height){var t=r.node(e.v),o=r.node(e.w),a={rank:(o.rank-t.rank)/2+t.rank,e};k(r,"edge-proxy",a,"_ep")}})}function yn(r){var e=0;f(r.nodes(),function(n){var t=r.node(n);t.borderTop&&(t.minRank=r.node(t.borderTop).rank,t.maxRank=r.node(t.borderBottom).rank,e=y(e,t.maxRank))}),r.graph().maxRank=e}function xn(r){f(r.nodes(),function(e){var n=r.node(e);n.dummy==="edge-proxy"&&(r.edge(n.e).labelRank=n.rank,r.removeNode(e))})}function kn(r){var e=Number.POSITIVE_INFINITY,n=0,t=Number.POSITIVE_INFINITY,o=0,a=r.graph(),i=a.marginx||0,s=a.marginy||0;function u(d){var c=d.x,h=d.y,l=d.width,p=d.height;e=Math.min(e,c-l/2),n=Math.max(n,c+l/2),t=Math.min(t,h-p/2),o=Math.max(o,h+p/2)}f(r.nodes(),function(d){u(r.node(d))}),f(r.edges(),function(d){var c=r.edge(d);Object.prototype.hasOwnProperty.call(c,"x")&&u(c)}),e-=i,t-=s,f(r.nodes(),function(d){var c=r.node(d);c.x-=e,c.y-=t}),f(r.edges(),function(d){var c=r.edge(d);f(c.points,function(h){h.x-=e,h.y-=t}),Object.prototype.hasOwnProperty.call(c,"x")&&(c.x-=e),Object.prototype.hasOwnProperty.call(c,"y")&&(c.y-=t)}),a.width=n-e+i,a.height=o-t+s}function gn(r){f(r.edges(),function(e){var n=r.edge(e),t=r.node(e.v),o=r.node(e.w),a,i;n.points?(a=n.points[0],i=n.points[n.points.length-1]):(n.points=[],a=o,i=t),n.points.unshift(Z(t,a)),n.points.push(Z(o,i))})}function Nn(r){f(r.edges(),function(e){var n=r.edge(e);if(Object.prototype.hasOwnProperty.call(n,"x"))switch((n.labelpos==="l"||n.labelpos==="r")&&(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset;break}})}function On(r){f(r.edges(),function(e){var n=r.edge(e);n.reversed&&n.points.reverse()})}function In(r){f(r.nodes(),function(e){if(r.children(e).length){var n=r.node(e),t=r.node(n.borderTop),o=r.node(n.borderBottom),a=r.node(T(n.borderLeft)),i=r.node(T(n.borderRight));n.width=Math.abs(i.x-a.x),n.height=Math.abs(o.y-t.y),n.x=a.x+n.width/2,n.y=t.y+n.height/2}}),f(r.nodes(),function(e){r.node(e).dummy==="border"&&r.removeNode(e)})}function Pn(r){f(r.edges(),function(e){if(e.v===e.w){var n=r.node(e.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e,label:r.edge(e)}),r.removeEdge(e)}})}function Ln(r){var e=L(r);f(e,function(n){var t=0;f(n,function(o,a){var i=r.node(o);i.order=a+t,f(i.selfEdges,function(s){k(r,"selfedge",{width:s.label.width,height:s.label.height,rank:i.rank,order:a+ ++t,e:s.e,label:s.label},"_se")}),delete i.selfEdges})})}function Cn(r){f(r.nodes(),function(e){var n=r.node(e);if(n.dummy==="selfedge"){var t=r.node(n.e.v),o=t.x+t.width/2,a=t.y,i=n.x-o,s=t.height/2;r.setEdge(n.e,n.label),r.removeNode(e),n.label.points=[{x:o+2*i/3,y:a-s},{x:o+5*i/6,y:a-s},{x:o+i,y:a},{x:o+5*i/6,y:a+s},{x:o+2*i/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}})}function hr(r,e){return F(V(r,e),Number)}function lr(r){var e={};return f(r,function(n,t){e[t.toLowerCase()]=n}),e}export{sn as a}; diff --git a/src/google/adk/cli/browser/chunk-JW2YJHYO.js b/src/google/adk/cli/browser/chunk-YL63DAMY.js similarity index 99% rename from src/google/adk/cli/browser/chunk-JW2YJHYO.js rename to src/google/adk/cli/browser/chunk-YL63DAMY.js index d8538722d6..de641235d9 100644 --- a/src/google/adk/cli/browser/chunk-JW2YJHYO.js +++ b/src/google/adk/cli/browser/chunk-YL63DAMY.js @@ -1,4 +1,4 @@ -import{a as Vt}from"./chunk-TPDTRWWV.js";import{a as qt}from"./chunk-PRKFGJVH.js";import{l as Bt}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{A as ct,N as Rt,R as Ct,S as Nt,T as Ot,U as Lt,V as Ft,W as jt,X as Pt,c as Tt,d as zt,e as At,f as lt,r as Dt}from"./chunk-QFMJV7VH.js";import{a as it,g as w}from"./chunk-JRNAXTJ7.js";import"./chunk-EGBSMT36.js";import{a as Et}from"./chunk-RMXJBC7V.js";function rt(t,n){let s=fe(t),e=s.filter(c=>ue(c,t)),i=0,r=0,a=[];if(e.length>1){let c=Kt(e);for(let u=0;uo.angle-u.angle);let h=e[e.length-1];for(let u=0;ux.radius*2&&(g=x.radius*2),(d==null||d.width>g)&&(d={circle:x,width:g,p1:o,p2:h,large:g>x.radius,sweep:!0})}d!=null&&(a.push(d),i+=ht(d.circle.radius,d.width),h=o)}}else{let c=t[0];for(let u=1;uMath.abs(c.radius-t[u].radius)){h=!0;break}h?i=r=0:(i=c.radius*c.radius*Math.PI,a.push({circle:c,p1:{x:c.x,y:c.y+c.radius},p2:{x:c.x-1e-10,y:c.y+c.radius},width:c.radius*2,large:!0,sweep:!0}))}return r/=2,n&&(n.area=i+r,n.arcArea=i,n.polygonArea=r,n.arcs=a,n.innerPoints=e,n.intersectionPoints=s),i+r}function ue(t,n){return n.every(s=>q(t,s)=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);let e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return ht(t,e)+ht(n,i)}function Wt(t,n){let s=q(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];let r=(e*e-i*i+s*s)/(2*s),a=Math.sqrt(e*e-r*r),c=t.x+r*(n.x-t.x)/s,h=t.y+r*(n.y-t.y)/s,u=-(n.y-t.y)*(a/s),o=-(n.x-t.x)*(a/s);return[{x:c+u,y:h-o},{x:c-u,y:h+o}]}function Kt(t){let n={x:0,y:0};for(let s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function he(t,n,s,e){e=e||{};let i=e.maxIterations||100,r=e.tolerance||1e-10,a=t(n),c=t(s),h=s-n;if(a*c>0)throw"Initial bisect points must have opposite signs";if(a===0)return n;if(c===0)return s;for(let u=0;u=0&&(n=o),Math.abs(h)dt(n))}function $(t,n){let s=0;for(let e=0;ev.fx-l.fx,_=n.slice(),S=n.slice(),g=n.slice(),m=n.slice();for(let v=0;v{let O=f.slice();return O.fx=f.fx,O.id=f.id,O});p.sort((f,O)=>f.id-O.id),s.history.push({x:x[0].slice(),fx:x[0].fx,simplex:p})}d=0;for(let p=0;p=x[b-1].fx){let p=!1;if(S.fx>l.fx?(J(g,1+o,_,-o,l),g.fx=t(g),g.fx=1)break;for(let f=1;fc+r*i*h||u>=T)M=i;else{if(Math.abs(y)<=-a*h)return i;y*(M-x)>=0&&(M=x),x=i,T=u}return 0}for(let x=0;x<10;++x){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),y=$(e.fxprime,n),u>c+r*i*h||x&&u>=o)return b(d,i,o);if(Math.abs(y)<=-a*h)return i;if(y>=0)return b(i,d,u);o=u,d=i,i*=2}return i}function ge(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()},r=n.slice(),a,c,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),a=e.fxprime.slice(),xt(a,e.fxprime,-1);for(let o=0;o{let y={};for(let d=0;dmt(t,n,e)-s,0,t+n)}function xe(t,n={}){let s=n.distinct,e=t.map(c=>Object.assign({},c));function i(c){return c.join(";")}if(s){let c=new Map;for(let h of e)for(let u=0;uc===h?0:cr.sets.length===2).forEach(r=>{let a=s[r.sets[0]],c=s[r.sets[1]],h=Math.sqrt(n[a].size/Math.PI),u=Math.sqrt(n[c].size/Math.PI),o=yt(h,u,r.size);e[a][c]=e[c][a]=o;let y=0;r.size+1e-10>=Math.min(n[a].size,n[c].size)?y=1:r.size<=1e-10&&(y=-1),i[a][c]=i[c][a]=y}),{distances:e,constraints:i}}function pe(t,n,s,e){for(let r=0;r0&&x<=y||d<0&&x>=y||(i+=2*M*M,n[2*r]+=4*M*(a-u),n[2*r+1]+=4*M*(c-o),n[2*h]+=4*M*(u-a),n[2*h+1]+=4*M*(o-c))}}return i}function me(t,n={}){let s=ve(t,n),e=n.lossFunction||tt;if(t.length>=8){let i=be(t,n),r=e(i,t),a=e(s,t);r+1e-8d.map(b=>b/c));let h=(d,b)=>pe(d,b,r,a),u=null;for(let d=0;dy.sets.length===2);for(let y of t){let d=y.weight!=null?y.weight:1,b=y.sets[0],x=y.sets[1];y.size+Xt>=Math.min(e[b].size,e[x].size)&&(d=0),i[b].push({set:x,size:y.size,weight:d}),i[x].push({set:b,size:y.size,weight:d})}let r=[];Object.keys(i).forEach(y=>{let d=0;for(let b=0;bt[a]));let r=e.weight!=null?e.weight:1;s+=r*(i-e.size)*(i-e.size)}return s}function Zt(t,n){let s=0;for(let e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){let c=t[e.sets[0]],h=t[e.sets[1]];i=mt(c.radius,h.radius,q(c,h))}else i=rt(e.sets.map(c=>t[c]));let r=e.weight!=null?e.weight:1,a=Math.log((i+1)/(e.size+1));s+=r*a*a}return s}function ke(t,n,s){if(s==null?t.sort((i,r)=>r.radius-i.radius):t.sort(s),t.length>0){let i=t[0].x,r=t[0].y;for(let a of t)a.x-=i,a.y-=r}if(t.length===2&&q(t[0],t[1])1){let i=Math.atan2(t[1].x,t[1].y)-n,r=Math.cos(i),a=Math.sin(i);for(let c of t){let h=c.x,u=c.y;c.x=r*h-a*u,c.y=a*h+r*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){let r=t[1].y/(1e-10+t[1].x);for(let a of t){var e=(a.x+r*a.y)/(1+r*r);a.x=2*e-a.x,a.y=2*e*r-a.y}}}}function Ie(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,r){let a=n(i),c=n(r);a.parent=c}for(let i=0;i{delete i.parent}),Array.from(e.values())}function pt(t){let n=s=>{let e=t.reduce((r,a)=>Math.max(r,a[s]+a.radius),Number.NEGATIVE_INFINITY),i=t.reduce((r,a)=>Math.min(r,a[s]-a.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Jt(t,n,s){n==null&&(n=Math.PI/2);let e=te(t).map(u=>Object.assign({},u)),i=Ie(e);for(let u of i){ke(u,n,s);let o=pt(u);u.size=(o.xRange.max-o.xRange.min)*(o.yRange.max-o.yRange.min),u.bounds=o}i.sort((u,o)=>o.size-u.size),e=i[0];let r=e.bounds,a=(r.xRange.max-r.xRange.min)/50;function c(u,o,y){if(!u)return;let d=u.bounds,b,x;if(o)b=r.xRange.max-d.xRange.min+a;else{b=r.xRange.max-d.xRange.max;let M=(d.xRange.max-d.xRange.min)/2-(r.xRange.max-r.xRange.min)/2;M<0&&(b+=M)}if(y)x=r.yRange.max-d.yRange.min+a;else{x=r.yRange.max-d.yRange.max;let M=(d.yRange.max-d.yRange.min)/2-(r.yRange.max-r.yRange.min)/2;M<0&&(x+=M)}for(let M of u)M.x+=b,M.y+=x,e.push(M)}let h=1;for(;h({radius:o*b.radius,x:e+y+(b.x-a.min)*o,y:e+d+(b.y-c.min)*o,setid:b.setid})))}function $t(t){let n={};for(let s of t)n[s.setid]=s;return n}function te(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ee(t={}){let n=!1,s=600,e=350,i=15,r=1e3,a=Math.PI/2,c=!0,h=null,u=!0,o=!0,y=null,d=null,b=!1,x=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,T={},_=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],S=0,g=function(p){if(p in T)return T[p];var f=T[p]=_[S];return S+=1,S>=_.length&&(S=0),f},m=Yt,v=tt;function l(p){let f=p.datum(),O=new Set;f.forEach(k=>{k.size==0&&k.sets.length==1&&O.add(k.sets[0])}),f=f.filter(k=>!k.sets.some(B=>O.has(B)));let I={},C={};if(f.length>0){let k=m(f,{lossFunction:v,distinct:b});c&&(k=Jt(k,a,d)),I=Qt(k,s,e,i,h),C=se(I,f,M)}let U={};f.forEach(k=>{k.label&&(U[k.sets]=k.label)});function P(k){if(k.sets in U)return U[k.sets];if(k.sets.length==1)return""+k.sets[0]}p.selectAll("svg").data([I]).enter().append("svg");let E=p.select("svg");n?E.attr("viewBox",`0 0 ${s} ${e}`):E.attr("width",s).attr("height",e);let D={},R=!1;E.selectAll(".venn-area path").each(function(k){let B=this.getAttribute("d");k.sets.length==1&&B&&!b&&(R=!0,D[k.sets[0]]=we(B))});function z(k){return B=>{let et=k.sets.map(Z=>{let X=D[Z],V=I[Z];return X||(X={x:s/2,y:e/2,radius:1}),V||(V={x:s/2,y:e/2,radius:1}),{x:X.x*(1-B)+V.x*B,y:X.y*(1-B)+V.y*B,radius:X.radius*(1-B)+V.radius*B}});return Gt(et,x)}}let N=E.selectAll(".venn-area").data(f,k=>k.sets),L=N.enter().append("g").attr("class",k=>`venn-area venn-${k.sets.length==1?"circle":"intersection"}${k.colour||k.color?" venn-coloured":""}`).attr("data-venn-sets",k=>k.sets.join("_")),F=L.append("path"),K=L.append("text").attr("class","label").text(k=>P(k)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);o&&(F.style("fill-opacity","0").filter(k=>k.sets.length==1).style("fill",k=>k.colour?k.colour:k.color?k.color:g(k.sets)).style("fill-opacity",".25"),K.style("fill",k=>k.colour||k.color?"#FFF":t.textFill?t.textFill:k.sets.length==1?g(k.sets):"#444"));function H(k){return typeof k.transition=="function"?k.transition("venn").duration(r):k}let j=p;R&&typeof j.transition=="function"?(j=H(p),j.selectAll("path").attrTween("d",z)):j.selectAll("path").attr("d",k=>Gt(k.sets.map(B=>I[B])),x);let A=j.selectAll("text").filter(k=>k.sets in C).text(k=>P(k)).attr("x",k=>Math.floor(C[k.sets].x)).attr("y",k=>Math.floor(C[k.sets].y));u&&(R?"on"in A?A.on("end",ut(I,P)):A.each("end",ut(I,P)):A.each(ut(I,P)));let Y=H(N.exit()).remove();typeof N.transition=="function"&&Y.selectAll("path").attrTween("d",z);let G=Y.selectAll("text").attr("x",s/2).attr("y",e/2);return y!==null&&(K.style("font-size","0px"),A.style("font-size",y),G.style("font-size","0px")),{circles:I,textCentres:C,nodes:N,enter:L,update:j,exit:Y}}return l.wrap=function(p){return arguments.length?(u=p,l):u},l.useViewBox=function(){return n=!0,l},l.width=function(p){return arguments.length?(s=p,l):s},l.height=function(p){return arguments.length?(e=p,l):e},l.padding=function(p){return arguments.length?(i=p,l):i},l.distinct=function(p){return arguments.length?(b=p,l):b},l.colours=function(p){return arguments.length?(g=p,l):g},l.colors=function(p){return arguments.length?(g=p,l):g},l.fontSize=function(p){return arguments.length?(y=p,l):y},l.round=function(p){return arguments.length?(x=p,l):x},l.duration=function(p){return arguments.length?(r=p,l):r},l.layoutFunction=function(p){return arguments.length?(m=p,l):m},l.normalize=function(p){return arguments.length?(c=p,l):c},l.scaleToFit=function(p){return arguments.length?(h=p,l):h},l.styled=function(p){return arguments.length?(o=p,l):o},l.orientation=function(p){return arguments.length?(a=p,l):a},l.orientationOrder=function(p){return arguments.length?(d=p,l):d},l.lossFunction=function(p){return arguments.length?(v=p==="default"?tt:p==="logRatio"?Zt:p,l):v},l}function ut(t,n){return function(s){let e=this,i=t[s.sets[0]].radius||50,r=n(s)||"",a=r.split(/\s+/).reverse(),h=(r.length+a.length)/3,u=a.pop(),o=[u],y=0,d=1.1;e.textContent=null;let b=[];function x(g){let m=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return m.textContent=g,b.push(m),e.append(m),m}let M=x(u);for(;u=a.pop(),!!u;){o.push(u);let g=o.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(o.pop(),M.textContent=o.join(" "),o=[u],M=x(u),y++)}let T=.35-y*d/2,_=e.getAttribute("x"),S=e.getAttribute("y");b.forEach((g,m)=>{g.setAttribute("x",_),g.setAttribute("y",S),g.setAttribute("dy",`${T+m*d}em`)})}}function ft(t,n,s){let e=n[0].radius-q(n[0],t);for(let i=1;i=r&&(i=e[o],r=y)}let a=Ht(o=>-1*ft({x:o[0],y:o[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,c={x:s?0:a[0],y:a[1]},h=!0;for(let o of t)if(q(c,o)>o.radius){h=!1;break}for(let o of n)if(q(c,o)o.p1))}function Me(t){let n={},s=Object.keys(t);for(let e of s)n[e]=[];for(let e=0;e0&&console.log("WARNING: area "+a+" not represented on screen")}return e}function Se(t,n,s){let e=[];return e.push(` +import{a as Vt}from"./chunk-PDRDFWTH.js";import{a as qt}from"./chunk-PRKFGJVH.js";import{C as Bt}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as ct,N as Rt,R as Ct,S as Nt,T as Ot,U as Lt,V as Ft,W as jt,X as Pt,c as Tt,d as zt,e as At,f as lt,r as Dt}from"./chunk-37QI3DOO.js";import{a as it,g as w}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{a as Et}from"./chunk-RMXJBC7V.js";function rt(t,n){let s=fe(t),e=s.filter(c=>ue(c,t)),i=0,r=0,a=[];if(e.length>1){let c=Kt(e);for(let u=0;uo.angle-u.angle);let h=e[e.length-1];for(let u=0;ux.radius*2&&(g=x.radius*2),(d==null||d.width>g)&&(d={circle:x,width:g,p1:o,p2:h,large:g>x.radius,sweep:!0})}d!=null&&(a.push(d),i+=ht(d.circle.radius,d.width),h=o)}}else{let c=t[0];for(let u=1;uMath.abs(c.radius-t[u].radius)){h=!0;break}h?i=r=0:(i=c.radius*c.radius*Math.PI,a.push({circle:c,p1:{x:c.x,y:c.y+c.radius},p2:{x:c.x-1e-10,y:c.y+c.radius},width:c.radius*2,large:!0,sweep:!0}))}return r/=2,n&&(n.area=i+r,n.arcArea=i,n.polygonArea=r,n.arcs=a,n.innerPoints=e,n.intersectionPoints=s),i+r}function ue(t,n){return n.every(s=>q(t,s)=t+n)return 0;if(s<=Math.abs(t-n))return Math.PI*Math.min(t,n)*Math.min(t,n);let e=t-(s*s-n*n+t*t)/(2*s),i=n-(s*s-t*t+n*n)/(2*s);return ht(t,e)+ht(n,i)}function Wt(t,n){let s=q(t,n),e=t.radius,i=n.radius;if(s>=e+i||s<=Math.abs(e-i))return[];let r=(e*e-i*i+s*s)/(2*s),a=Math.sqrt(e*e-r*r),c=t.x+r*(n.x-t.x)/s,h=t.y+r*(n.y-t.y)/s,u=-(n.y-t.y)*(a/s),o=-(n.x-t.x)*(a/s);return[{x:c+u,y:h-o},{x:c-u,y:h+o}]}function Kt(t){let n={x:0,y:0};for(let s of t)n.x+=s.x,n.y+=s.y;return n.x/=t.length,n.y/=t.length,n}function he(t,n,s,e){e=e||{};let i=e.maxIterations||100,r=e.tolerance||1e-10,a=t(n),c=t(s),h=s-n;if(a*c>0)throw"Initial bisect points must have opposite signs";if(a===0)return n;if(c===0)return s;for(let u=0;u=0&&(n=o),Math.abs(h)dt(n))}function $(t,n){let s=0;for(let e=0;ev.fx-l.fx,_=n.slice(),S=n.slice(),g=n.slice(),m=n.slice();for(let v=0;v{let O=f.slice();return O.fx=f.fx,O.id=f.id,O});p.sort((f,O)=>f.id-O.id),s.history.push({x:x[0].slice(),fx:x[0].fx,simplex:p})}d=0;for(let p=0;p=x[b-1].fx){let p=!1;if(S.fx>l.fx?(J(g,1+o,_,-o,l),g.fx=t(g),g.fx=1)break;for(let f=1;fc+r*i*h||u>=T)M=i;else{if(Math.abs(y)<=-a*h)return i;y*(M-x)>=0&&(M=x),x=i,T=u}return 0}for(let x=0;x<10;++x){if(J(e.x,1,s.x,i,n),u=e.fx=t(e.x,e.fxprime),y=$(e.fxprime,n),u>c+r*i*h||x&&u>=o)return b(d,i,o);if(Math.abs(y)<=-a*h)return i;if(y>=0)return b(i,d,u);o=u,d=i,i*=2}return i}function ge(t,n,s){let e={x:n.slice(),fx:0,fxprime:n.slice()},i={x:n.slice(),fx:0,fxprime:n.slice()},r=n.slice(),a,c,h=1,u;s=s||{},u=s.maxIterations||n.length*20,e.fx=t(e.x,e.fxprime),a=e.fxprime.slice(),xt(a,e.fxprime,-1);for(let o=0;o{let y={};for(let d=0;dmt(t,n,e)-s,0,t+n)}function xe(t,n={}){let s=n.distinct,e=t.map(c=>Object.assign({},c));function i(c){return c.join(";")}if(s){let c=new Map;for(let h of e)for(let u=0;uc===h?0:cr.sets.length===2).forEach(r=>{let a=s[r.sets[0]],c=s[r.sets[1]],h=Math.sqrt(n[a].size/Math.PI),u=Math.sqrt(n[c].size/Math.PI),o=yt(h,u,r.size);e[a][c]=e[c][a]=o;let y=0;r.size+1e-10>=Math.min(n[a].size,n[c].size)?y=1:r.size<=1e-10&&(y=-1),i[a][c]=i[c][a]=y}),{distances:e,constraints:i}}function pe(t,n,s,e){for(let r=0;r0&&x<=y||d<0&&x>=y||(i+=2*M*M,n[2*r]+=4*M*(a-u),n[2*r+1]+=4*M*(c-o),n[2*h]+=4*M*(u-a),n[2*h+1]+=4*M*(o-c))}}return i}function me(t,n={}){let s=ve(t,n),e=n.lossFunction||tt;if(t.length>=8){let i=be(t,n),r=e(i,t),a=e(s,t);r+1e-8d.map(b=>b/c));let h=(d,b)=>pe(d,b,r,a),u=null;for(let d=0;dy.sets.length===2);for(let y of t){let d=y.weight!=null?y.weight:1,b=y.sets[0],x=y.sets[1];y.size+Xt>=Math.min(e[b].size,e[x].size)&&(d=0),i[b].push({set:x,size:y.size,weight:d}),i[x].push({set:b,size:y.size,weight:d})}let r=[];Object.keys(i).forEach(y=>{let d=0;for(let b=0;bt[a]));let r=e.weight!=null?e.weight:1;s+=r*(i-e.size)*(i-e.size)}return s}function Zt(t,n){let s=0;for(let e of n){if(e.sets.length===1)continue;let i;if(e.sets.length===2){let c=t[e.sets[0]],h=t[e.sets[1]];i=mt(c.radius,h.radius,q(c,h))}else i=rt(e.sets.map(c=>t[c]));let r=e.weight!=null?e.weight:1,a=Math.log((i+1)/(e.size+1));s+=r*a*a}return s}function ke(t,n,s){if(s==null?t.sort((i,r)=>r.radius-i.radius):t.sort(s),t.length>0){let i=t[0].x,r=t[0].y;for(let a of t)a.x-=i,a.y-=r}if(t.length===2&&q(t[0],t[1])1){let i=Math.atan2(t[1].x,t[1].y)-n,r=Math.cos(i),a=Math.sin(i);for(let c of t){let h=c.x,u=c.y;c.x=r*h-a*u,c.y=a*h+r*u}}if(t.length>2){let i=Math.atan2(t[2].x,t[2].y)-n;for(;i<0;)i+=2*Math.PI;for(;i>2*Math.PI;)i-=2*Math.PI;if(i>Math.PI){let r=t[1].y/(1e-10+t[1].x);for(let a of t){var e=(a.x+r*a.y)/(1+r*r);a.x=2*e-a.x,a.y=2*e*r-a.y}}}}function Ie(t){t.forEach(i=>{i.parent=i});function n(i){return i.parent!==i&&(i.parent=n(i.parent)),i.parent}function s(i,r){let a=n(i),c=n(r);a.parent=c}for(let i=0;i{delete i.parent}),Array.from(e.values())}function pt(t){let n=s=>{let e=t.reduce((r,a)=>Math.max(r,a[s]+a.radius),Number.NEGATIVE_INFINITY),i=t.reduce((r,a)=>Math.min(r,a[s]-a.radius),Number.POSITIVE_INFINITY);return{max:e,min:i}};return{xRange:n("x"),yRange:n("y")}}function Jt(t,n,s){n==null&&(n=Math.PI/2);let e=te(t).map(u=>Object.assign({},u)),i=Ie(e);for(let u of i){ke(u,n,s);let o=pt(u);u.size=(o.xRange.max-o.xRange.min)*(o.yRange.max-o.yRange.min),u.bounds=o}i.sort((u,o)=>o.size-u.size),e=i[0];let r=e.bounds,a=(r.xRange.max-r.xRange.min)/50;function c(u,o,y){if(!u)return;let d=u.bounds,b,x;if(o)b=r.xRange.max-d.xRange.min+a;else{b=r.xRange.max-d.xRange.max;let M=(d.xRange.max-d.xRange.min)/2-(r.xRange.max-r.xRange.min)/2;M<0&&(b+=M)}if(y)x=r.yRange.max-d.yRange.min+a;else{x=r.yRange.max-d.yRange.max;let M=(d.yRange.max-d.yRange.min)/2-(r.yRange.max-r.yRange.min)/2;M<0&&(x+=M)}for(let M of u)M.x+=b,M.y+=x,e.push(M)}let h=1;for(;h({radius:o*b.radius,x:e+y+(b.x-a.min)*o,y:e+d+(b.y-c.min)*o,setid:b.setid})))}function $t(t){let n={};for(let s of t)n[s.setid]=s;return n}function te(t){return Object.keys(t).map(s=>Object.assign(t[s],{setid:s}))}function ee(t={}){let n=!1,s=600,e=350,i=15,r=1e3,a=Math.PI/2,c=!0,h=null,u=!0,o=!0,y=null,d=null,b=!1,x=null,M=t&&t.symmetricalTextCentre?t.symmetricalTextCentre:!1,T={},_=t&&t.colourScheme?t.colourScheme:t&&t.colorScheme?t.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],S=0,g=function(p){if(p in T)return T[p];var f=T[p]=_[S];return S+=1,S>=_.length&&(S=0),f},m=Yt,v=tt;function l(p){let f=p.datum(),O=new Set;f.forEach(k=>{k.size==0&&k.sets.length==1&&O.add(k.sets[0])}),f=f.filter(k=>!k.sets.some(B=>O.has(B)));let I={},C={};if(f.length>0){let k=m(f,{lossFunction:v,distinct:b});c&&(k=Jt(k,a,d)),I=Qt(k,s,e,i,h),C=se(I,f,M)}let U={};f.forEach(k=>{k.label&&(U[k.sets]=k.label)});function P(k){if(k.sets in U)return U[k.sets];if(k.sets.length==1)return""+k.sets[0]}p.selectAll("svg").data([I]).enter().append("svg");let E=p.select("svg");n?E.attr("viewBox",`0 0 ${s} ${e}`):E.attr("width",s).attr("height",e);let D={},R=!1;E.selectAll(".venn-area path").each(function(k){let B=this.getAttribute("d");k.sets.length==1&&B&&!b&&(R=!0,D[k.sets[0]]=we(B))});function z(k){return B=>{let et=k.sets.map(Z=>{let X=D[Z],V=I[Z];return X||(X={x:s/2,y:e/2,radius:1}),V||(V={x:s/2,y:e/2,radius:1}),{x:X.x*(1-B)+V.x*B,y:X.y*(1-B)+V.y*B,radius:X.radius*(1-B)+V.radius*B}});return Gt(et,x)}}let N=E.selectAll(".venn-area").data(f,k=>k.sets),L=N.enter().append("g").attr("class",k=>`venn-area venn-${k.sets.length==1?"circle":"intersection"}${k.colour||k.color?" venn-coloured":""}`).attr("data-venn-sets",k=>k.sets.join("_")),F=L.append("path"),K=L.append("text").attr("class","label").text(k=>P(k)).attr("text-anchor","middle").attr("dy",".35em").attr("x",s/2).attr("y",e/2);o&&(F.style("fill-opacity","0").filter(k=>k.sets.length==1).style("fill",k=>k.colour?k.colour:k.color?k.color:g(k.sets)).style("fill-opacity",".25"),K.style("fill",k=>k.colour||k.color?"#FFF":t.textFill?t.textFill:k.sets.length==1?g(k.sets):"#444"));function H(k){return typeof k.transition=="function"?k.transition("venn").duration(r):k}let j=p;R&&typeof j.transition=="function"?(j=H(p),j.selectAll("path").attrTween("d",z)):j.selectAll("path").attr("d",k=>Gt(k.sets.map(B=>I[B])),x);let A=j.selectAll("text").filter(k=>k.sets in C).text(k=>P(k)).attr("x",k=>Math.floor(C[k.sets].x)).attr("y",k=>Math.floor(C[k.sets].y));u&&(R?"on"in A?A.on("end",ut(I,P)):A.each("end",ut(I,P)):A.each(ut(I,P)));let Y=H(N.exit()).remove();typeof N.transition=="function"&&Y.selectAll("path").attrTween("d",z);let G=Y.selectAll("text").attr("x",s/2).attr("y",e/2);return y!==null&&(K.style("font-size","0px"),A.style("font-size",y),G.style("font-size","0px")),{circles:I,textCentres:C,nodes:N,enter:L,update:j,exit:Y}}return l.wrap=function(p){return arguments.length?(u=p,l):u},l.useViewBox=function(){return n=!0,l},l.width=function(p){return arguments.length?(s=p,l):s},l.height=function(p){return arguments.length?(e=p,l):e},l.padding=function(p){return arguments.length?(i=p,l):i},l.distinct=function(p){return arguments.length?(b=p,l):b},l.colours=function(p){return arguments.length?(g=p,l):g},l.colors=function(p){return arguments.length?(g=p,l):g},l.fontSize=function(p){return arguments.length?(y=p,l):y},l.round=function(p){return arguments.length?(x=p,l):x},l.duration=function(p){return arguments.length?(r=p,l):r},l.layoutFunction=function(p){return arguments.length?(m=p,l):m},l.normalize=function(p){return arguments.length?(c=p,l):c},l.scaleToFit=function(p){return arguments.length?(h=p,l):h},l.styled=function(p){return arguments.length?(o=p,l):o},l.orientation=function(p){return arguments.length?(a=p,l):a},l.orientationOrder=function(p){return arguments.length?(d=p,l):d},l.lossFunction=function(p){return arguments.length?(v=p==="default"?tt:p==="logRatio"?Zt:p,l):v},l}function ut(t,n){return function(s){let e=this,i=t[s.sets[0]].radius||50,r=n(s)||"",a=r.split(/\s+/).reverse(),h=(r.length+a.length)/3,u=a.pop(),o=[u],y=0,d=1.1;e.textContent=null;let b=[];function x(g){let m=e.ownerDocument.createElementNS(e.namespaceURI,"tspan");return m.textContent=g,b.push(m),e.append(m),m}let M=x(u);for(;u=a.pop(),!!u;){o.push(u);let g=o.join(" ");M.textContent=g,g.length>h&&M.getComputedTextLength()>i&&(o.pop(),M.textContent=o.join(" "),o=[u],M=x(u),y++)}let T=.35-y*d/2,_=e.getAttribute("x"),S=e.getAttribute("y");b.forEach((g,m)=>{g.setAttribute("x",_),g.setAttribute("y",S),g.setAttribute("dy",`${T+m*d}em`)})}}function ft(t,n,s){let e=n[0].radius-q(n[0],t);for(let i=1;i=r&&(i=e[o],r=y)}let a=Ht(o=>-1*ft({x:o[0],y:o[1]},t,n),[i.x,i.y],{maxIterations:500,minErrorDelta:1e-10}).x,c={x:s?0:a[0],y:a[1]},h=!0;for(let o of t)if(q(c,o)>o.radius){h=!1;break}for(let o of n)if(q(c,o)o.p1))}function Me(t){let n={},s=Object.keys(t);for(let e of s)n[e]=[];for(let e=0;e0&&console.log("WARNING: area "+a+" not represented on screen")}return e}function Se(t,n,s){let e=[];return e.push(` M`,t,n),e.push(` m`,-s,0),e.push(` a`,s,s,0,1,0,s*2,0),e.push(` diff --git a/src/google/adk/cli/browser/chunk-ZCQFE5RP.js b/src/google/adk/cli/browser/chunk-ZCQFE5RP.js deleted file mode 100644 index 7a40a20378..0000000000 --- a/src/google/adk/cli/browser/chunk-ZCQFE5RP.js +++ /dev/null @@ -1,61 +0,0 @@ -import{O as ot,Q as ct,R as ht,Y as dt,c as st,d as at,e as lt}from"./chunk-QFMJV7VH.js";import{K as Q,a as V,g as s,h as it,i as S}from"./chunk-JRNAXTJ7.js";import"./chunk-RMXJBC7V.js";var X=(function(){var n=s(function(m,i,a,c){for(a=a||{},c=m.length;c--;a[m[c]]=i);return a},"o"),t=[6,8,10,11,12,14,16,17,20,21],e=[1,9],l=[1,10],r=[1,11],d=[1,12],h=[1,13],g=[1,16],f=[1,17],p={trace:s(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,period_statement:18,event_statement:19,period:20,event:21,$accept:0,$end:1},terminals_:{2:"error",4:"timeline",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",20:"period",21:"event"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[18,1],[19,1]],performAction:s(function(i,a,c,u,y,o,E){var b=o.length-1;switch(y){case 1:return o[b-1];case 2:this.$=[];break;case 3:o[b-1].push(o[b]),this.$=o[b-1];break;case 4:case 5:this.$=o[b];break;case 6:case 7:this.$=[];break;case 8:u.getCommonDb().setDiagramTitle(o[b].substr(6)),this.$=o[b].substr(6);break;case 9:this.$=o[b].trim(),u.getCommonDb().setAccTitle(this.$);break;case 10:case 11:this.$=o[b].trim(),u.getCommonDb().setAccDescription(this.$);break;case 12:u.addSection(o[b].substr(8)),this.$=o[b].substr(8);break;case 15:u.addTask(o[b],0,""),this.$=o[b];break;case 16:u.addEvent(o[b].substr(2)),this.$=o[b];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},n(t,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:e,12:l,14:r,16:d,17:h,18:14,19:15,20:g,21:f},n(t,[2,7],{1:[2,1]}),n(t,[2,3]),{9:18,11:e,12:l,14:r,16:d,17:h,18:14,19:15,20:g,21:f},n(t,[2,5]),n(t,[2,6]),n(t,[2,8]),{13:[1,19]},{15:[1,20]},n(t,[2,11]),n(t,[2,12]),n(t,[2,13]),n(t,[2,14]),n(t,[2,15]),n(t,[2,16]),n(t,[2,4]),n(t,[2,9]),n(t,[2,10])],defaultActions:{},parseError:s(function(i,a){if(a.recoverable)this.trace(i);else{var c=new Error(i);throw c.hash=a,c}},"parseError"),parse:s(function(i){var a=this,c=[0],u=[],y=[null],o=[],E=this.table,b="",L=0,P=0,F=0,et=2,M=1,_=o.slice.call(arguments,1),x=Object.create(this.lexer),T={yy:{}};for(var $ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,$)&&(T.yy[$]=this.yy[$]);x.setInput(i,T.yy),T.yy.lexer=x,T.yy.parser=this,typeof x.yylloc>"u"&&(x.yylloc={});var A=x.yylloc;o.push(A);var U=x.options&&x.options.ranges;typeof T.yy.parseError=="function"?this.parseError=T.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function It(I){c.length=c.length-2*I,y.length=y.length-I,o.length=o.length-I}s(It,"popStack");function nt(){var I;return I=u.pop()||x.lex()||M,typeof I!="number"&&(I instanceof Array&&(u=I,I=u.pop()),I=a.symbols_[I]||I),I}s(nt,"lex");for(var w,Z,C,N,Jt,J,z={},O,H,rt,j;;){if(C=c[c.length-1],this.defaultActions[C]?N=this.defaultActions[C]:((w===null||typeof w>"u")&&(w=nt()),N=E[C]&&E[C][w]),typeof N>"u"||!N.length||!N[0]){var K="";j=[];for(O in E[C])this.terminals_[O]&&O>et&&j.push("'"+this.terminals_[O]+"'");x.showPosition?K="Parse error on line "+(L+1)+`: -`+x.showPosition()+` -Expecting `+j.join(", ")+", got '"+(this.terminals_[w]||w)+"'":K="Parse error on line "+(L+1)+": Unexpected "+(w==M?"end of input":"'"+(this.terminals_[w]||w)+"'"),this.parseError(K,{text:x.match,token:this.terminals_[w]||w,line:x.yylineno,loc:A,expected:j})}if(N[0]instanceof Array&&N.length>1)throw new Error("Parse Error: multiple actions possible at state: "+C+", token: "+w);switch(N[0]){case 1:c.push(w),y.push(x.yytext),o.push(x.yylloc),c.push(N[1]),w=null,Z?(w=Z,Z=null):(P=x.yyleng,b=x.yytext,L=x.yylineno,A=x.yylloc,F>0&&F--);break;case 2:if(H=this.productions_[N[1]][1],z.$=y[y.length-H],z._$={first_line:o[o.length-(H||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(H||1)].first_column,last_column:o[o.length-1].last_column},U&&(z._$.range=[o[o.length-(H||1)].range[0],o[o.length-1].range[1]]),J=this.performAction.apply(z,[b,P,L,T.yy,N[1],y,o].concat(_)),typeof J<"u")return J;H&&(c=c.slice(0,-1*H*2),y=y.slice(0,-1*H),o=o.slice(0,-1*H)),c.push(this.productions_[N[1]][0]),y.push(z.$),o.push(z._$),rt=E[c[c.length-2]][c[c.length-1]],c.push(rt);break;case 3:return!0}}return!0},"parse")},k=(function(){var m={EOF:1,parseError:s(function(a,c){if(this.yy.parser)this.yy.parser.parseError(a,c);else throw new Error(a)},"parseError"),setInput:s(function(i,a){return this.yy=a||this.yy||{},this._input=i,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:s(function(){var i=this._input[0];this.yytext+=i,this.yyleng++,this.offset++,this.match+=i,this.matched+=i;var a=i.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),i},"input"),unput:s(function(i){var a=i.length,c=i.split(/(?:\r\n?|\n)/g);this._input=i+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a),this.offset-=a;var u=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var y=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===u.length?this.yylloc.first_column:0)+u[u.length-c.length].length-c[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[y[0],y[0]+this.yyleng-a]),this.yyleng=this.yytext.length,this},"unput"),more:s(function(){return this._more=!0,this},"more"),reject:s(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). -`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:s(function(i){this.unput(this.match.slice(i))},"less"),pastInput:s(function(){var i=this.matched.substr(0,this.matched.length-this.match.length);return(i.length>20?"...":"")+i.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:s(function(){var i=this.match;return i.length<20&&(i+=this._input.substr(0,20-i.length)),(i.substr(0,20)+(i.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:s(function(){var i=this.pastInput(),a=new Array(i.length+1).join("-");return i+this.upcomingInput()+` -`+a+"^"},"showPosition"),test_match:s(function(i,a){var c,u,y;if(this.options.backtrack_lexer&&(y={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(y.yylloc.range=this.yylloc.range.slice(0))),u=i[0].match(/(?:\r\n?|\n).*/g),u&&(this.yylineno+=u.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:u?u[u.length-1].length-u[u.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+i[0].length},this.yytext+=i[0],this.match+=i[0],this.matches=i,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(i[0].length),this.matched+=i[0],c=this.performAction.call(this,this.yy,this,a,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack){for(var o in y)this[o]=y[o];return!1}return!1},"test_match"),next:s(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var i,a,c,u;this._more||(this.yytext="",this.match="");for(var y=this._currentRules(),o=0;oa[0].length)){if(a=c,u=o,this.options.backtrack_lexer){if(i=this.test_match(c,y[o]),i!==!1)return i;if(this._backtrack){a=!1;continue}else return!1}else if(!this.options.flex)break}return a?(i=this.test_match(a,y[u]),i!==!1?i:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:s(function(){var a=this.next();return a||this.lex()},"lex"),begin:s(function(a){this.conditionStack.push(a)},"begin"),popState:s(function(){var a=this.conditionStack.length-1;return a>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:s(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:s(function(a){return a=this.conditionStack.length-1-Math.abs(a||0),a>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:s(function(a){this.begin(a)},"pushState"),stateStackSize:s(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:s(function(a,c,u,y){var o=y;switch(u){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 21;case 16:return 20;case 17:return 6;case 18:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18],inclusive:!0}}};return m})();p.lexer=k;function v(){this.yy={}}return s(v,"Parser"),v.prototype=p,p.Parser=v,new v})();X.parser=X;var Nt=X,gt={};it(gt,{addEvent:()=>wt,addSection:()=>kt,addTask:()=>_t,addTaskOrg:()=>St,clear:()=>xt,default:()=>Lt,getCommonDb:()=>mt,getSections:()=>bt,getTasks:()=>vt});var W="",ft=0,Y=[],G=[],B=[],mt=s(()=>ct,"getCommonDb"),xt=s(function(){Y.length=0,G.length=0,W="",B.length=0,ht()},"clear"),kt=s(function(n){W=n,Y.push(n)},"addSection"),bt=s(function(){return Y},"getSections"),vt=s(function(){let n=ut(),t=100,e=0;for(;!n&&ee.id===ft-1).events.push(n)},"addEvent"),St=s(function(n){let t={section:W,type:W,description:n,task:n,classes:[]};G.push(t)},"addTaskOrg"),ut=s(function(){let n=s(function(e){return B[e].processed},"compileTask"),t=!0;for(let[e,l]of B.entries())n(e),t=t&&l.processed;return t},"compileTasks"),Lt={clear:xt,getCommonDb:mt,addSection:kt,getSections:bt,getTasks:vt,addTask:_t,addTaskOrg:St,addEvent:wt},Mt=12,q=s(function(n,t){let e=n.append("rect");return e.attr("x",t.x),e.attr("y",t.y),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("width",t.width),e.attr("height",t.height),e.attr("rx",t.rx),e.attr("ry",t.ry),t.class!==void 0&&e.attr("class",t.class),e},"drawRect"),$t=s(function(n,t){let l=n.append("circle").attr("cx",t.cx).attr("cy",t.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),r=n.append("g");r.append("circle").attr("cx",t.cx-15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),r.append("circle").attr("cx",t.cx+15/3).attr("cy",t.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function d(f){let p=Q().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);f.append("path").attr("class","mouth").attr("d",p).attr("transform","translate("+t.cx+","+(t.cy+2)+")")}s(d,"smile");function h(f){let p=Q().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);f.append("path").attr("class","mouth").attr("d",p).attr("transform","translate("+t.cx+","+(t.cy+7)+")")}s(h,"sad");function g(f){f.append("line").attr("class","mouth").attr("stroke",2).attr("x1",t.cx-5).attr("y1",t.cy+7).attr("x2",t.cx+5).attr("y2",t.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return s(g,"ambivalent"),t.score>3?d(r):t.score<3?h(r):g(r),l},"drawFace"),Ht=s(function(n,t){let e=n.append("circle");return e.attr("cx",t.cx),e.attr("cy",t.cy),e.attr("class","actor-"+t.pos),e.attr("fill",t.fill),e.attr("stroke",t.stroke),e.attr("r",t.r),e.class!==void 0&&e.attr("class",e.class),t.title!==void 0&&e.append("title").text(t.title),e},"drawCircle"),Et=s(function(n,t){let e=t.text.replace(//gi," "),l=n.append("text");l.attr("x",t.x),l.attr("y",t.y),l.attr("class","legend"),l.style("text-anchor",t.anchor),t.class!==void 0&&l.attr("class",t.class);let r=l.append("tspan");return r.attr("x",t.x+t.textMargin*2),r.text(e),l},"drawText"),Pt=s(function(n,t){function e(r,d,h,g,f){return r+","+d+" "+(r+h)+","+d+" "+(r+h)+","+(d+g-f)+" "+(r+h-f*1.2)+","+(d+g)+" "+r+","+(d+g)}s(e,"genPoints");let l=n.append("polygon");l.attr("points",e(t.x,t.y,50,20,7)),l.attr("class","labelBox"),t.y=t.y+t.labelMargin,t.x=t.x+.5*t.labelMargin,Et(n,t)},"drawLabel"),At=s(function(n,t,e){let l=n.append("g"),r=D();r.x=t.x,r.y=t.y,r.fill=t.fill,r.width=e.width,r.height=e.height,r.class="journey-section section-type-"+t.num,r.rx=3,r.ry=3,q(l,r),Tt(e)(t.text,l,r.x,r.y,r.width,r.height,{class:"journey-section section-type-"+t.num},e,t.colour)},"drawSection"),pt=-1,Ct=s(function(n,t,e){let l=t.x+e.width/2,r=n.append("g");pt++,r.append("line").attr("id","task"+pt).attr("x1",l).attr("y1",t.y).attr("x2",l).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),$t(r,{cx:l,cy:300+(5-t.score)*30,score:t.score});let h=D();h.x=t.x,h.y=t.y,h.fill=t.fill,h.width=e.width,h.height=e.height,h.class="task task-type-"+t.num,h.rx=3,h.ry=3,q(r,h),Tt(e)(t.task,r,h.x,h.y,h.width,h.height,{class:"task"},e,t.colour)},"drawTask"),Rt=s(function(n,t){q(n,{x:t.startx,y:t.starty,width:t.stopx-t.startx,height:t.stopy-t.starty,fill:t.fill,class:"rect"}).lower()},"drawBackgroundRect"),Ft=s(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),D=s(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),Tt=(function(){function n(r,d,h,g,f,p,k,v){let m=d.append("text").attr("x",h+f/2).attr("y",g+p/2+5).style("font-color",v).style("text-anchor","middle").text(r);l(m,k)}s(n,"byText");function t(r,d,h,g,f,p,k,v,m){let{taskFontSize:i,taskFontFamily:a}=v,c=r.split(//gi);for(let u=0;u)/).reverse(),r,d=[],h=1.1,g=e.attr("y"),f=parseFloat(e.attr("dy")),p=e.text(null).append("tspan").attr("x",0).attr("y",g).attr("dy",f+"em");for(let k=0;kt||r==="
")&&(d.pop(),p.text(d.join(" ").trim()),r==="
"?d=[""]:d=[r],p=e.append("tspan").attr("x",0).attr("y",g).attr("dy",h+"em").text(r))})}s(tt,"wrap");var Vt=s(function(n,t,e,l){let r=e%Mt-1,d=n.append("g");t.section=r,d.attr("class",(t.class?t.class+" ":"")+"timeline-node "+("section-"+r));let h=d.append("g"),g=d.append("g"),p=g.append("text").text(t.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(tt,t.width).node().getBBox(),k=l.fontSize?.replace?l.fontSize.replace("px",""):l.fontSize;return t.height=p.height+k*1.1*.5+t.padding,t.height=Math.max(t.height,t.maxHeight),t.width=t.width+2*t.padding,g.attr("transform","translate("+t.width/2+", "+t.padding/2+")"),Bt(h,t,r,l),t},"drawNode"),Wt=s(function(n,t,e){let l=n.append("g"),d=l.append("text").text(t.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(tt,t.width).node().getBBox(),h=e.fontSize?.replace?e.fontSize.replace("px",""):e.fontSize;return l.remove(),d.height+h*1.1*.5+t.padding},"getVirtualNodeHeight"),Bt=s(function(n,t,e){n.append("path").attr("id","node-"+t.id).attr("class","node-bkg node-"+t.type).attr("d",`M0 ${t.height-5} v${-t.height+10} q0,-5 5,-5 h${t.width-10} q5,0 5,5 v${t.height-5} H0 Z`),n.append("line").attr("class","node-line-"+e).attr("x1",0).attr("y1",t.height).attr("x2",t.width).attr("y2",t.height)},"defaultBkg"),R={drawRect:q,drawCircle:Ht,drawSection:At,drawText:Et,drawLabel:Pt,drawTask:Ct,drawBackgroundRect:Rt,getTextObj:Ft,getNoteRect:D,initGraphics:zt,drawNode:Vt,getVirtualNodeHeight:Wt},Ot=s(function(n,t,e,l){let r=dt(),d=r.timeline?.leftMargin??50;S.debug("timeline",l.db);let h=r.securityLevel,g;h==="sandbox"&&(g=V("#i"+t));let p=(h==="sandbox"?V(g.nodes()[0].contentDocument.body):V("body")).select("#"+t);p.append("g");let k=l.db.getTasks(),v=l.db.getCommonDb().getDiagramTitle();S.debug("task",k),R.initGraphics(p);let m=l.db.getSections();S.debug("sections",m);let i=0,a=0,c=0,u=0,y=50+d,o=50;u=50;let E=0,b=!0;m.forEach(function(M){let _={number:E,descr:M,section:E,width:150,padding:20,maxHeight:i},x=R.getVirtualNodeHeight(p,_,r);S.debug("sectionHeight before draw",x),i=Math.max(i,x+20)});let L=0,P=0;S.debug("tasks.length",k.length);for(let[M,_]of k.entries()){let x={number:M,descr:_,section:_.section,width:150,padding:20,maxHeight:a},T=R.getVirtualNodeHeight(p,x,r);S.debug("taskHeight before draw",T),a=Math.max(a,T+20),L=Math.max(L,_.events.length);let $=0;for(let A of _.events){let U={descr:A,section:_.section,number:_.section,width:150,padding:20,maxHeight:50};$+=R.getVirtualNodeHeight(p,U,r)}_.events.length>0&&($+=(_.events.length-1)*10),P=Math.max(P,$)}S.debug("maxSectionHeight before draw",i),S.debug("maxTaskHeight before draw",a),m&&m.length>0?m.forEach(M=>{let _=k.filter(A=>A.section===M),x={number:E,descr:M,section:E,width:200*Math.max(_.length,1)-50,padding:20,maxHeight:i};S.debug("sectionNode",x);let T=p.append("g"),$=R.drawNode(T,x,E,r);S.debug("sectionNode output",$),T.attr("transform",`translate(${y}, ${u})`),o+=i+50,_.length>0&&yt(p,_,E,y,o,a,r,L,P,i,!1),y+=200*Math.max(_.length,1),o=u,E++}):(b=!1,yt(p,k,E,y,o,a,r,L,P,i,!0));let F=p.node().getBBox();S.debug("bounds",F),v&&p.append("text").text(v).attr("x",F.width/2-d).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),c=b?i+a+150:a+100,p.append("g").attr("class","lineWrapper").append("line").attr("x1",d).attr("y1",c).attr("x2",F.width+3*d).attr("y2",c).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),ot(void 0,p,r.timeline?.padding??50,r.timeline?.useMaxWidth??!1)},"draw"),yt=s(function(n,t,e,l,r,d,h,g,f,p,k){for(let v of t){let m={descr:v.task,section:e,number:e,width:150,padding:20,maxHeight:d};S.debug("taskNode",m);let i=n.append("g").attr("class","taskWrapper"),c=R.drawNode(i,m,e,h).height;if(S.debug("taskHeight after draw",c),i.attr("transform",`translate(${l}, ${r})`),d=Math.max(d,c),v.events){let u=n.append("g").attr("class","lineWrapper"),y=d;r+=100,y=y+jt(n,v.events,e,l,r,h),r-=100,u.append("line").attr("x1",l+190/2).attr("y1",r+d).attr("x2",l+190/2).attr("y2",r+d+100+f+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5")}l=l+200,k&&!h.timeline?.disableMulticolor&&e++}r=r-10},"drawTasks"),jt=s(function(n,t,e,l,r,d){let h=0,g=r;r=r+100;for(let f of t){let p={descr:f,section:e,number:e,width:150,padding:20,maxHeight:50};S.debug("eventNode",p);let k=n.append("g").attr("class","eventWrapper"),m=R.drawNode(k,p,e,d).height;h=h+m,k.attr("transform",`translate(${l}, ${r})`),r=r+10+m}return r=g,h},"drawEvents"),Gt={setConf:s(()=>{},"setConf"),draw:Ot},qt=s(n=>{let t="";for(let e=0;e` - .edge { - stroke-width: 3; - } - ${qt(n)} - .section-root rect, .section-root path, .section-root circle { - fill: ${n.git0}; - } - .section-root text { - fill: ${n.gitBranchLabel0}; - } - .icon-container { - height:100%; - display: flex; - justify-content: center; - align-items: center; - } - .edge { - fill: none; - } - .eventWrapper { - filter: brightness(120%); - } -`,"getStyles"),Zt=Ut,te={db:gt,renderer:Gt,parser:Nt,styles:Zt};export{te as diagram}; diff --git a/src/google/adk/cli/browser/chunk-ZO3BTNJM.js b/src/google/adk/cli/browser/chunk-ZO3BTNJM.js new file mode 100644 index 0000000000..788319702c --- /dev/null +++ b/src/google/adk/cli/browser/chunk-ZO3BTNJM.js @@ -0,0 +1,85 @@ +import{a as We}from"./chunk-APNCZOFE.js";import{a as Qe}from"./chunk-XB6MIIOW.js";import{b as Ze,c as je}from"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import{D as Ke,G as Ue}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{R as Me,S as Be,T as Fe,U as Ye,V as Pe,W as ze,X as Ge,Y as j,a as we,b as Ve}from"./chunk-37QI3DOO.js";import{a as De,g as l,h as Le,i as D}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import{j as ve}from"./chunk-RMXJBC7V.js";var ye=(function(){var t=l(function(C,a,o,c){for(o=o||{},c=C.length;c--;o[C[c]]=a);return o},"o"),i=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],h=[1,10],n=[1,11],u=[1,12],d=[1,13],f=[1,23],p=[1,24],m=[1,25],W=[1,26],Q=[1,27],S=[1,19],X=[1,28],M=[1,29],L=[1,20],I=[1,18],T=[1,21],R=[1,22],ae=[1,36],ne=[1,37],oe=[1,38],ce=[1,39],le=[1,40],B=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,65,66,67,68,69],O=[1,45],N=[1,46],F=[1,55],Y=[40,48,50,51,52,70,71],P=[1,66],z=[1,64],A=[1,61],G=[1,65],K=[1,67],H=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,65,66,67,68,69],_e=[65,66,67,68,69],ge=[1,84],me=[1,83],Ee=[1,81],Se=[1,82],Te=[6,10,42,47],w=[6,10,13,41,42,47,48,49],q=[1,92],J=[1,91],$=[1,90],U=[19,58],Oe=[1,101],Ne=[1,100],he=[19,58,60,62],ue={trace:l(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,attributeKeyType:59,",":60,ATTRIBUTE_KEY:61,COMMENT:62,cardinality:63,relType:64,ZERO_OR_ONE:65,ZERO_OR_MORE:66,ONE_OR_MORE:67,ONLY_ONE:68,MD_PARENT:69,NON_IDENTIFYING:70,IDENTIFYING:71,WORD:72,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",60:",",61:"ATTRIBUTE_KEY",62:"COMMENT",65:"ZERO_OR_ONE",66:"ZERO_OR_MORE",67:"ONE_OR_MORE",68:"ONLY_ONE",69:"MD_PARENT",70:"NON_IDENTIFYING",71:"IDENTIFYING",72:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[55,1],[56,1],[56,3],[59,1],[57,1],[12,3],[63,1],[63,1],[63,1],[63,1],[63,1],[64,1],[64,1],[14,1],[14,1],[14,1]],performAction:l(function(a,o,c,r,b,e,Z){var s=e.length-1;switch(b){case 1:break;case 2:this.$=[];break;case 3:e[s-1].push(e[s]),this.$=e[s-1];break;case 4:case 5:this.$=e[s];break;case 6:case 7:this.$=[];break;case 8:r.addEntity(e[s-4]),r.addEntity(e[s-2]),r.addRelationship(e[s-4],e[s],e[s-2],e[s-3]);break;case 9:r.addEntity(e[s-8]),r.addEntity(e[s-4]),r.addRelationship(e[s-8],e[s],e[s-4],e[s-5]),r.setClass([e[s-8]],e[s-6]),r.setClass([e[s-4]],e[s-2]);break;case 10:r.addEntity(e[s-6]),r.addEntity(e[s-2]),r.addRelationship(e[s-6],e[s],e[s-2],e[s-3]),r.setClass([e[s-6]],e[s-4]);break;case 11:r.addEntity(e[s-6]),r.addEntity(e[s-4]),r.addRelationship(e[s-6],e[s],e[s-4],e[s-5]),r.setClass([e[s-4]],e[s-2]);break;case 12:r.addEntity(e[s-3]),r.addAttributes(e[s-3],e[s-1]);break;case 13:r.addEntity(e[s-5]),r.addAttributes(e[s-5],e[s-1]),r.setClass([e[s-5]],e[s-3]);break;case 14:r.addEntity(e[s-2]);break;case 15:r.addEntity(e[s-4]),r.setClass([e[s-4]],e[s-2]);break;case 16:r.addEntity(e[s]);break;case 17:r.addEntity(e[s-2]),r.setClass([e[s-2]],e[s]);break;case 18:r.addEntity(e[s-6],e[s-4]),r.addAttributes(e[s-6],e[s-1]);break;case 19:r.addEntity(e[s-8],e[s-6]),r.addAttributes(e[s-8],e[s-1]),r.setClass([e[s-8]],e[s-3]);break;case 20:r.addEntity(e[s-5],e[s-3]);break;case 21:r.addEntity(e[s-7],e[s-5]),r.setClass([e[s-7]],e[s-2]);break;case 22:r.addEntity(e[s-3],e[s-1]);break;case 23:r.addEntity(e[s-5],e[s-3]),r.setClass([e[s-5]],e[s]);break;case 24:case 25:this.$=e[s].trim(),r.setAccTitle(this.$);break;case 26:case 27:this.$=e[s].trim(),r.setAccDescription(this.$);break;case 32:r.setDirection("TB");break;case 33:r.setDirection("BT");break;case 34:r.setDirection("RL");break;case 35:r.setDirection("LR");break;case 36:this.$=e[s-3],r.addClass(e[s-2],e[s-1]);break;case 37:case 38:case 59:case 67:this.$=[e[s]];break;case 39:case 40:this.$=e[s-2].concat([e[s]]);break;case 41:this.$=e[s-2],r.setClass(e[s-1],e[s]);break;case 42:this.$=e[s-3],r.addCssStyles(e[s-2],e[s-1]);break;case 43:this.$=[e[s]];break;case 44:e[s-2].push(e[s]),this.$=e[s-2];break;case 46:this.$=e[s-1]+e[s];break;case 54:case 79:case 80:this.$=e[s].replace(/"/g,"");break;case 55:case 56:case 57:case 58:case 81:this.$=e[s];break;case 60:e[s].push(e[s-1]),this.$=e[s];break;case 61:this.$={type:e[s-1],name:e[s]};break;case 62:this.$={type:e[s-2],name:e[s-1],keys:e[s]};break;case 63:this.$={type:e[s-2],name:e[s-1],comment:e[s]};break;case 64:this.$={type:e[s-3],name:e[s-2],keys:e[s-1],comment:e[s]};break;case 65:case 66:case 69:this.$=e[s];break;case 68:e[s-2].push(e[s]),this.$=e[s-2];break;case 70:this.$=e[s].replace(/"/g,"");break;case 71:this.$={cardA:e[s],relType:e[s-1],cardB:e[s-2]};break;case 72:this.$=r.Cardinality.ZERO_OR_ONE;break;case 73:this.$=r.Cardinality.ZERO_OR_MORE;break;case 74:this.$=r.Cardinality.ONE_OR_MORE;break;case 75:this.$=r.Cardinality.ONLY_ONE;break;case 76:this.$=r.Cardinality.MD_PARENT;break;case 77:this.$=r.Identification.NON_IDENTIFYING;break;case 78:this.$=r.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(i,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:h,24:n,26:u,28:d,29:14,30:15,31:16,32:17,33:f,34:p,35:m,36:W,37:Q,40:S,43:X,44:M,48:L,50:I,51:T,52:R},t(i,[2,7],{1:[2,1]}),t(i,[2,3]),{9:30,11:9,22:h,24:n,26:u,28:d,29:14,30:15,31:16,32:17,33:f,34:p,35:m,36:W,37:Q,40:S,43:X,44:M,48:L,50:I,51:T,52:R},t(i,[2,5]),t(i,[2,6]),t(i,[2,16],{12:31,63:35,15:[1,32],17:[1,33],20:[1,34],65:ae,66:ne,67:oe,68:ce,69:le}),{23:[1,41]},{25:[1,42]},{27:[1,43]},t(i,[2,27]),t(i,[2,28]),t(i,[2,29]),t(i,[2,30]),t(i,[2,31]),t(B,[2,54]),t(B,[2,55]),t(B,[2,56]),t(B,[2,57]),t(B,[2,58]),t(i,[2,32]),t(i,[2,33]),t(i,[2,34]),t(i,[2,35]),{16:44,40:O,41:N},{16:47,40:O,41:N},{16:48,40:O,41:N},t(i,[2,4]),{11:49,40:S,48:L,50:I,51:T,52:R},{16:50,40:O,41:N},{18:51,19:[1,52],53:53,54:54,58:F},{11:56,40:S,48:L,50:I,51:T,52:R},{64:57,70:[1,58],71:[1,59]},t(Y,[2,72]),t(Y,[2,73]),t(Y,[2,74]),t(Y,[2,75]),t(Y,[2,76]),t(i,[2,24]),t(i,[2,25]),t(i,[2,26]),{13:P,38:60,41:z,42:A,45:62,46:63,48:G,49:K},t(H,[2,37]),t(H,[2,38]),{16:68,40:O,41:N,42:A},{13:P,38:69,41:z,42:A,45:62,46:63,48:G,49:K},{13:[1,70],15:[1,71]},t(i,[2,17],{63:35,12:72,17:[1,73],42:A,65:ae,66:ne,67:oe,68:ce,69:le}),{19:[1,74]},t(i,[2,14]),{18:75,19:[2,59],53:53,54:54,58:F},{55:76,58:[1,77]},{58:[2,65]},{21:[1,78]},{63:79,65:ae,66:ne,67:oe,68:ce,69:le},t(_e,[2,77]),t(_e,[2,78]),{6:ge,10:me,39:80,42:Ee,47:Se},{40:[1,85],41:[1,86]},t(Te,[2,43],{46:87,13:P,41:z,48:G,49:K}),t(w,[2,45]),t(w,[2,50]),t(w,[2,51]),t(w,[2,52]),t(w,[2,53]),t(i,[2,41],{42:A}),{6:ge,10:me,39:88,42:Ee,47:Se},{14:89,40:q,50:J,72:$},{16:93,40:O,41:N},{11:94,40:S,48:L,50:I,51:T,52:R},{18:95,19:[1,96],53:53,54:54,58:F},t(i,[2,12]),{19:[2,60]},t(U,[2,61],{56:97,57:98,59:99,61:Oe,62:Ne}),t([19,58,61,62],[2,66]),t(i,[2,22],{15:[1,103],17:[1,102]}),t([40,48,50,51,52],[2,71]),t(i,[2,36]),{13:P,41:z,45:104,46:63,48:G,49:K},t(i,[2,47]),t(i,[2,48]),t(i,[2,49]),t(H,[2,39]),t(H,[2,40]),t(w,[2,46]),t(i,[2,42]),t(i,[2,8]),t(i,[2,79]),t(i,[2,80]),t(i,[2,81]),{13:[1,105],42:A},{13:[1,107],15:[1,106]},{19:[1,108]},t(i,[2,15]),t(U,[2,62],{57:109,60:[1,110],62:Ne}),t(U,[2,63]),t(he,[2,67]),t(U,[2,70]),t(he,[2,69]),{18:111,19:[1,112],53:53,54:54,58:F},{16:113,40:O,41:N},t(Te,[2,44],{46:87,13:P,41:z,48:G,49:K}),{14:114,40:q,50:J,72:$},{16:115,40:O,41:N},{14:116,40:q,50:J,72:$},t(i,[2,13]),t(U,[2,64]),{59:117,61:Oe},{19:[1,118]},t(i,[2,20]),t(i,[2,23],{17:[1,119],42:A}),t(i,[2,11]),{13:[1,120],42:A},t(i,[2,10]),t(he,[2,68]),t(i,[2,18]),{18:121,19:[1,122],53:53,54:54,58:F},{14:123,40:q,50:J,72:$},{19:[1,124]},t(i,[2,21]),t(i,[2,9]),t(i,[2,19])],defaultActions:{55:[2,65],75:[2,60]},parseError:l(function(a,o){if(o.recoverable)this.trace(a);else{var c=new Error(a);throw c.hash=o,c}},"parseError"),parse:l(function(a){var o=this,c=[0],r=[],b=[null],e=[],Z=this.table,s="",te=0,Ae=0,Ce=0,Je=2,Ie=1,$e=e.slice.call(arguments,1),k=Object.create(this.lexer),x={yy:{}};for(var de in this.yy)Object.prototype.hasOwnProperty.call(this.yy,de)&&(x.yy[de]=this.yy[de]);k.setInput(a,x.yy),x.yy.lexer=k,x.yy.parser=this,typeof k.yylloc>"u"&&(k.yylloc={});var be=k.yylloc;e.push(be);var et=k.options&&k.options.ranges;typeof x.yy.parseError=="function"?this.parseError=x.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function tt(_){c.length=c.length-2*_,b.length=b.length-_,e.length=e.length-_}l(tt,"popStack");function Re(){var _;return _=r.pop()||k.lex()||Ie,typeof _!="number"&&(_ instanceof Array&&(r=_,_=r.pop()),_=o.symbols_[_]||_),_}l(Re,"lex");for(var y,pe,v,g,ct,fe,V={},se,E,xe,ie;;){if(v=c[c.length-1],this.defaultActions[v]?g=this.defaultActions[v]:((y===null||typeof y>"u")&&(y=Re()),g=Z[v]&&Z[v][y]),typeof g>"u"||!g.length||!g[0]){var ke="";ie=[];for(se in Z[v])this.terminals_[se]&&se>Je&&ie.push("'"+this.terminals_[se]+"'");k.showPosition?ke="Parse error on line "+(te+1)+`: +`+k.showPosition()+` +Expecting `+ie.join(", ")+", got '"+(this.terminals_[y]||y)+"'":ke="Parse error on line "+(te+1)+": Unexpected "+(y==Ie?"end of input":"'"+(this.terminals_[y]||y)+"'"),this.parseError(ke,{text:k.match,token:this.terminals_[y]||y,line:k.yylineno,loc:be,expected:ie})}if(g[0]instanceof Array&&g.length>1)throw new Error("Parse Error: multiple actions possible at state: "+v+", token: "+y);switch(g[0]){case 1:c.push(y),b.push(k.yytext),e.push(k.yylloc),c.push(g[1]),y=null,pe?(y=pe,pe=null):(Ae=k.yyleng,s=k.yytext,te=k.yylineno,be=k.yylloc,Ce>0&&Ce--);break;case 2:if(E=this.productions_[g[1]][1],V.$=b[b.length-E],V._$={first_line:e[e.length-(E||1)].first_line,last_line:e[e.length-1].last_line,first_column:e[e.length-(E||1)].first_column,last_column:e[e.length-1].last_column},et&&(V._$.range=[e[e.length-(E||1)].range[0],e[e.length-1].range[1]]),fe=this.performAction.apply(V,[s,Ae,te,x.yy,g[1],b,e].concat($e)),typeof fe<"u")return fe;E&&(c=c.slice(0,-1*E*2),b=b.slice(0,-1*E),e=e.slice(0,-1*E)),c.push(this.productions_[g[1]][0]),b.push(V.$),e.push(V._$),xe=Z[c[c.length-2]][c[c.length-1]],c.push(xe);break;case 3:return!0}}return!0},"parse")},qe=(function(){var C={EOF:1,parseError:l(function(o,c){if(this.yy.parser)this.yy.parser.parseError(o,c);else throw new Error(o)},"parseError"),setInput:l(function(a,o){return this.yy=o||this.yy||{},this._input=a,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:l(function(){var a=this._input[0];this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a;var o=a.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),a},"input"),unput:l(function(a){var o=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o),this.offset-=o;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var b=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===r.length?this.yylloc.first_column:0)+r[r.length-c.length].length-c[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[b[0],b[0]+this.yyleng-o]),this.yyleng=this.yytext.length,this},"unput"),more:l(function(){return this._more=!0,this},"more"),reject:l(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true). +`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:l(function(a){this.unput(this.match.slice(a))},"less"),pastInput:l(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:l(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:l(function(){var a=this.pastInput(),o=new Array(a.length+1).join("-");return a+this.upcomingInput()+` +`+o+"^"},"showPosition"),test_match:l(function(a,o){var c,r,b;if(this.options.backtrack_lexer&&(b={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(b.yylloc.range=this.yylloc.range.slice(0))),r=a[0].match(/(?:\r\n?|\n).*/g),r&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,o,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack){for(var e in b)this[e]=b[e];return!1}return!1},"test_match"),next:l(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var a,o,c,r;this._more||(this.yytext="",this.match="");for(var b=this._currentRules(),e=0;eo[0].length)){if(o=c,r=e,this.options.backtrack_lexer){if(a=this.test_match(c,b[e]),a!==!1)return a;if(this._backtrack){o=!1;continue}else return!1}else if(!this.options.flex)break}return o?(a=this.test_match(o,b[r]),a!==!1?a:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:l(function(){var o=this.next();return o||this.lex()},"lex"),begin:l(function(o){this.conditionStack.push(o)},"begin"),popState:l(function(){var o=this.conditionStack.length-1;return o>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:l(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:l(function(o){return o=this.conditionStack.length-1-Math.abs(o||0),o>=0?this.conditionStack[o]:"INITIAL"},"topState"),pushState:l(function(o){this.begin(o)},"pushState"),stateStackSize:l(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:l(function(o,c,r,b){var e=b;switch(r){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 72;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 61;case 25:return 58;case 26:return 58;case 27:return 62;case 28:break;case 29:return this.popState(),19;break;case 30:return c.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;break;case 34:return this.popState(),10;break;case 35:break;case 36:return 13;case 37:return 42;case 38:return 49;case 39:return this.begin("style"),37;break;case 40:return 43;case 41:return 65;case 42:return 67;case 43:return 67;case 44:return 67;case 45:return 65;case 46:return 65;case 47:return 66;case 48:return 66;case 49:return 66;case 50:return 66;case 51:return 66;case 52:return 67;case 53:return 66;case 54:return 67;case 55:return 68;case 56:return 68;case 57:return 51;case 58:return 68;case 59:return 68;case 60:return 68;case 61:return 52;case 62:return 48;case 63:return 68;case 64:return 65;case 65:return 66;case 66:return 67;case 67:return 69;case 68:return 70;case 69:return 71;case 70:return 71;case 71:return 70;case 72:return 70;case 73:return 70;case 74:return 41;case 75:return 47;case 76:return 40;case 77:return c.yytext[0];case 78:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=\s+[0-9]))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,74,75],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,76,77,78],inclusive:!0}}};return C})();ue.lexer=qe;function ee(){this.yy={}}return l(ee,"Parser"),ee.prototype=ue,ue.Parser=ee,new ee})();ye.parser=ye;var st=ye,it=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.direction="TB",this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},this.setAccTitle=Be,this.getAccTitle=Fe,this.setAccDescription=Ye,this.getAccDescription=Pe,this.setDiagramTitle=ze,this.getDiagramTitle=Ge,this.getConfig=l(()=>j().er,"getConfig"),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{l(this,"ErDB")}addEntity(t,i=""){return this.entities.has(t)?!this.entities.get(t)?.alias&&i&&(this.entities.get(t).alias=i,D.info(`Add alias '${i}' to entity '${t}'`)):(this.entities.set(t,{id:`entity-${t}-${this.entities.size}`,label:t,attributes:[],alias:i,shape:"erBox",look:j().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),D.info("Added new entity :",t)),this.entities.get(t)}getEntity(t){return this.entities.get(t)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(t,i){let h=this.addEntity(t),n;for(n=i.length-1;n>=0;n--)i[n].keys||(i[n].keys=[]),i[n].comment||(i[n].comment=""),h.attributes.push(i[n]),D.debug("Added attribute ",i[n].name)}addRelationship(t,i,h,n){let u=this.entities.get(t),d=this.entities.get(h);if(!u||!d)return;let f={entityA:u.id,roleA:i,entityB:d.id,relSpec:n};this.relationships.push(f),D.debug("Added new relationship :",f)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(t){this.direction=t}getCompiledStyles(t){let i=[];for(let h of t){let n=this.classes.get(h);n?.styles&&(i=[...i,...n.styles??[]].map(u=>u.trim())),n?.textStyles&&(i=[...i,...n.textStyles??[]].map(u=>u.trim()))}return i}addCssStyles(t,i){for(let h of t){let n=this.entities.get(h);if(!i||!n)return;for(let u of i)n.cssStyles.push(u)}}addClass(t,i){t.forEach(h=>{let n=this.classes.get(h);n===void 0&&(n={id:h,styles:[],textStyles:[]},this.classes.set(h,n)),i&&i.forEach(function(u){if(/color/.exec(u)){let d=u.replace("fill","bgFill");n.textStyles.push(d)}n.styles.push(u)})})}setClass(t,i){for(let h of t){let n=this.entities.get(h);if(n)for(let u of i)n.cssClasses+=" "+u}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],Me()}getData(){let t=[],i=[],h=j(),n=0;for(let d of this.entities.keys()){let f=this.entities.get(d);f&&(f.cssCompiledStyles=this.getCompiledStyles(f.cssClasses.split(" ")),f.colorIndex=n++,t.push(f))}let u=0;for(let d of this.relationships){let f={id:Ue(d.entityA,d.entityB,{prefix:"id",counter:u++}),type:"normal",curve:"basis",start:d.entityA,end:d.entityB,label:d.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:d.relSpec.cardB.toLowerCase(),arrowTypeEnd:d.relSpec.cardA.toLowerCase(),pattern:d.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:h.look,labelType:"markdown"};i.push(f)}return{nodes:t,edges:i,other:{},config:h,direction:"TB"}}},He={};Le(He,{draw:()=>rt});var rt=l(function(t,i,h,n){return ve(this,null,function*(){D.info("REF0:"),D.info("Drawing er diagram (unified)",i);let{securityLevel:u,er:d,layout:f}=j(),p=n.db.getData(),m=We(i,u);p.type=n.type,p.layoutAlgorithm=je(f),p.config.flowchart.nodeSpacing=d?.nodeSpacing||140,p.config.flowchart.rankSpacing=d?.rankSpacing||80,p.direction=n.db.getDirection();let{config:W}=p,{look:Q}=W;Q==="neo"?p.markers=["only_one_neo","zero_or_one_neo","one_or_more_neo","zero_or_more_neo"]:p.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],p.diagramId=i,yield Ze(p,m),p.layoutAlgorithm==="elk"&&m.select(".edges").lower();let S=m.selectAll('[id*="-background"]');Array.from(S).length>0&&S.each(function(){let M=De(this),I=M.attr("id").replace("-background",""),T=m.select(`#${CSS.escape(I)}`);if(!T.empty()){let R=T.attr("transform");M.attr("transform",R)}});let X=8;Ke.insertTitle(m,"erDiagramTitleText",d?.titleTopMargin??25,n.db.getDiagramTitle()),Qe(m,X,"erDiagram",d?.useMaxWidth??!0)})},"draw"),Xe=l((t,i)=>{let h=Ve,n=h(t,"r"),u=h(t,"g"),d=h(t,"b");return we(n,u,d,i)},"fade"),re=new Set(["redux-color","redux-dark-color"]),at=l(t=>{let{theme:i,look:h,bkgColorArray:n,borderColorArray:u}=t;if(!re.has(i))return"";let d=n?.length>0,f="";for(let p=0;p{let{look:i,theme:h,erEdgeLabelBackground:n,strokeWidth:u}=t;return` + ${at(t)} + .entityBox { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + } + + .relationshipLabelBox { + fill: ${t.tertiaryColor}; + opacity: 0.7; + background-color: ${t.tertiaryColor}; + rect { + opacity: 0.5; + } + } + + .labelBkg { + background-color: ${re.has(h)&&n?n:Xe(t.tertiaryColor,.5)}; + } + + .edgeLabel { + background-color: ${re.has(h)&&n?n:t.edgeLabelBackground}; + } + .edgeLabel .label rect { + fill: ${re.has(h)&&n?n:t.edgeLabelBackground}; + } + .edgeLabel .label text { + fill: ${t.textColor}; + } + + .edgeLabel .label { + fill: ${t.nodeBorder}; + font-size: 14px; + } + + .label { + font-family: ${t.fontFamily}; + color: ${t.nodeTextColor||t.textColor}; + } + + .edge-pattern-dashed { + stroke-dasharray: 8,8; + } + + .node rect, + .node circle, + .node ellipse, + .node polygon + { + fill: ${t.mainBkg}; + stroke: ${t.nodeBorder}; + stroke-width: ${i==="neo"?u:"1px"}; + } + + .relationshipLine { + stroke: ${t.lineColor}; + stroke-width: ${i==="neo"?u:"1px"}; + fill: none; + } + + .marker { + fill: none !important; + stroke: ${t.lineColor} !important; + stroke-width: 1; + } + [data-look=neo].labelBkg { + background-color: ${Xe(t.tertiaryColor,.5)}; + } +`},"getStyles"),ot=nt,Tt={parser:st,get db(){return new it},renderer:He,styles:ot};export{Tt as diagram}; diff --git a/src/google/adk/cli/browser/chunk-ZX24QP2W.js b/src/google/adk/cli/browser/chunk-ZX24QP2W.js deleted file mode 100644 index c14736cb7b..0000000000 --- a/src/google/adk/cli/browser/chunk-ZX24QP2W.js +++ /dev/null @@ -1,2 +0,0 @@ -import{a as g}from"./chunk-T3Q3QCCV.js";import"./chunk-NQKWI5EB.js";import"./chunk-WR6HISGZ.js";import"./chunk-I4UDKKN5.js";import"./chunk-2DLZXFEQ.js";import"./chunk-JNY2YWG7.js";import"./chunk-XULIXUQL.js";import"./chunk-3NJNOY56.js";import"./chunk-NALL4A3P.js";import{a as s}from"./chunk-TPDTRWWV.js";import{N as i}from"./chunk-QFMJV7VH.js";import{g as r,i as a}from"./chunk-JRNAXTJ7.js";import"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{j as n}from"./chunk-RMXJBC7V.js";var v={parse:r(e=>n(null,null,function*(){let t=yield g("info",e);a.debug(t)}),"parse")},d={version:"11.13.0"},m=r(()=>d.version,"getVersion"),c={getVersion:m},f=r((e,t,p)=>{a.debug(`rendering info diagram -`+e);let o=s(t);i(o,100,400,!0),o.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${p}`)},"draw"),u={draw:f},w={parser:v,db:c,renderer:u};export{w as diagram}; diff --git a/src/google/adk/cli/browser/chunk-ZZBNOZU2.js b/src/google/adk/cli/browser/chunk-ZZBNOZU2.js new file mode 100644 index 0000000000..8b4d6e9e79 --- /dev/null +++ b/src/google/adk/cli/browser/chunk-ZZBNOZU2.js @@ -0,0 +1 @@ +import{a as e,b as i,c as a,d as o}from"./chunk-OCQO4LX3.js";import"./chunk-APNCZOFE.js";import"./chunk-XB6MIIOW.js";import"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import"./chunk-4V3PIBXT.js";import"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import"./chunk-37QI3DOO.js";import{g as r}from"./chunk-JRNAXTJ7.js";import"./chunk-URMDZFG4.js";import"./chunk-RMXJBC7V.js";var v={parser:e,get db(){return new a(2)},renderer:i,styles:o,init:r(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")};export{v as diagram}; diff --git a/src/google/adk/cli/browser/index.html b/src/google/adk/cli/browser/index.html index 059998a4c2..dbcd0bc266 100644 --- a/src/google/adk/cli/browser/index.html +++ b/src/google/adk/cli/browser/index.html @@ -23,1194 +23,12 @@ - - + + - - - + + - - - - - - - - - - - - - + diff --git a/src/google/adk/cli/browser/main-3CUQG2IN.js b/src/google/adk/cli/browser/main-3CUQG2IN.js deleted file mode 100644 index 4be3757671..0000000000 --- a/src/google/adk/cli/browser/main-3CUQG2IN.js +++ /dev/null @@ -1,4196 +0,0 @@ -import{a as yF}from"./chunk-TPDTRWWV.js";import{a as DF,b as vF}from"./chunk-ZMOC4H7T.js";import{a as RF}from"./chunk-F57TI45K.js";import"./chunk-TNJPXCAB.js";import"./chunk-JHZIBEJC.js";import"./chunk-W7PRDKNL.js";import"./chunk-DRBE27N3.js";import"./chunk-PRKFGJVH.js";import"./chunk-VDPKVNDJ.js";import{a as _F,c as xF}from"./chunk-WXI2IBAH.js";import{b as bF,j as WD,l as MF,m as SI,n as SF,o as kF}from"./chunk-WBLSVR3V.js";import"./chunk-GP6TCC26.js";import{A as MI,B as pF,C as AQ,E as fF,N as mF,P as wF,ba as eQ,ca as E3,g as gF,h as cF,j as CF,k as I3,l as jD,m as B3,n as dF,o as IF,q as h3,t as VD,u as BF,v as hF,w as EF,x as QF,y as qD,z as uF}from"./chunk-QFMJV7VH.js";import{a as zs,b as HD,d as zD,e as lF,g as we,i as qa,j as PD}from"./chunk-JRNAXTJ7.js";import{$ as _1,F as an,G as An,H as Ui,K as oF,N as $E,P as aF,R as YD,W as rF,X as sF,a as Fa,f as d3,g as eF,j as XE,m as Ji,q as tF,u as Tc,v as iF,z as nF}from"./chunk-ASJUXEUE.js";import"./chunk-EGBSMT36.js";import{$ as WE,$a as vA,$b as nA,$c as YN,A as Rc,Aa as Fn,Ab as lA,Ac as LN,B as JC,Ba as ii,Bb as Ln,Bc as Si,C as Nc,Ca as Li,Cb as Xn,Cc as ve,D as $p,Da as ce,Db as $n,Dc as Yo,E as Vi,Ea as Rg,Eb as vl,Ec as GN,F as EN,Fa as t3,Fb as bl,Fc as K0,G as Bt,Ga as i3,Gb as dn,Gc as Mt,H as QN,Ha as b1,Hb as aA,Hc as k1,I as v1,Ia as DN,Ib as Ma,Ic as Qe,J as aa,Ja as vN,Jb as U,Jc as yn,K as VE,Ka as Ng,Kb as yI,Kc as KN,L as Os,La as Fc,Lb as p,Lc as C3,M as Ro,Ma as mo,Mb as Ot,Mc as UN,N as qE,Na as Fg,Nb as Ze,Nc as Hs,O as xg,Oa as mI,Ob as ra,Oc as TD,P as A3,Pa as Q,Pb as Wt,Pc as TN,Q as oo,Qa as n3,Qb as se,Qc as OD,R as FD,Ra as ao,Rb as le,Rc as ON,S as YC,Sa as wo,Sb as c3,Sc as Gc,T as HC,Ta as zr,Tb as ls,Tc as JN,U as Js,Ua as on,Ub as br,Uc as Vl,V as Dl,Va as st,Vb as Bi,Vc as Kc,W as Yn,Wa as o3,Wb as ft,Wc as DI,X as Mi,Xa as Jo,Xb as _A,Xc as ql,Y as yt,Ya as GD,Yb as kN,Yc as vI,Z as uN,Za as bN,Zb as Ao,Zc as Uc,_ as mi,_a as a3,_b as D,_c as gs,a as Oo,aa as Nt,ab as et,ac as Ee,ad as HN,b as CN,ba as pN,bb as VA,bc as Ya,bd as bI,c as dN,ca as Va,cb as KD,cc as Ri,cd as li,d as Fi,da as jA,db as r3,dc as wi,dd as U0,e as IN,ea as At,eb as bt,ec as Ni,ed as JD,f as ne,fa as fN,fb as kt,fc as ro,fd as zN,g as BN,ga as MA,gb as s3,gc as so,gd as PN,h as gi,ha as Wo,hb as MN,hc as Ki,hd as jN,i as _g,ia as w,ib as M1,ic as zC,id as Mr,j as RD,ja as mN,jb as l3,jc as ZE,jd as VN,k as qp,ka as Hr,kb as UD,kc as _N,kd as qN,l as uI,la as vr,lb as SN,lc as pt,ld as jC,m as Br,ma as wN,mb as F0,mc as Lc,md as WN,n as jE,na as L,nb as g3,nc as jl,nd as ZN,o as pI,oa as G,ob as ie,oc as L0,od as XN,p as Yr,pa as Et,pb as wI,pc as mt,q as oe,qa as hr,qb as T,qc as Ft,r as Wp,ra as St,rb as S1,rc as G0,rd as $N,s as fI,sa as ci,sb as O,sc as PC,sd as AF,t as hN,ta as Er,tb as Ja,tc as xN,u as Zp,ua as yN,ub as ni,uc as RN,v as Se,va as FA,vb as ke,vc as wa,w as Dr,wa as We,wb as _e,wc as ye,x as xc,xa as e3,xb as H,xc as NN,y as ND,ya as LD,yb as I,yc as FN,z as Xp,za as mA,zb as h,zc as Ys}from"./chunk-2SRK2U7X.js";import{a as P,b as $A,c as Pp,e as jp,f as cAA,h as Vp,j as re,k as Ie}from"./chunk-RMXJBC7V.js";var kO=jp(CM=>{"use strict";var SO={b:"\b",f:"\f",n:` -`,r:"\r",t:" ",'"':'"',"/":"/","\\":"\\"},MlA=97;CM.parse=function(i,e,A){var t={},n=0,o=0,a=0,r=A&&A.bigint&&typeof BigInt<"u";return{data:s("",!0),pointers:t};function s(j,X){l();var eA;S(j,"value");var Z=E();switch(Z){case"t":u("rue"),eA=!0;break;case"f":u("alse"),eA=!1;break;case"n":u("ull"),eA=null;break;case'"':eA=g();break;case"[":eA=d(j);break;case"{":eA=B(j);break;default:f(),"-0123456789".indexOf(Z)>=0?eA=C():x()}return S(j,"valueEnd"),l(),X&&aNumber.MAX_SAFE_INTEGER||eA="a"&&eA<="f"?X+=eA.charCodeAt()-MlA+10:eA>="0"&&eA<="9"?X+=+eA:F()}return String.fromCharCode(X)}function v(){for(var j="";i[a]>="0"&&i[a]<="9";)j+=E();if(j.length)return j;z(),x()}function S(j,X){k(j,X,M())}function k(j,X,eA){t[j]=t[j]||{},t[j][X]=eA}function M(){return{line:n,column:o,pos:a}}function x(){throw new SyntaxError("Unexpected token "+i[a]+" in JSON at position "+a)}function F(){f(),x()}function z(){if(a>=i.length)throw new SyntaxError("Unexpected end of JSON input")}};CM.stringify=function(i,e,A){if(!Q6(i))return;var t=0,n,o,a=typeof A=="object"?A.space:A;switch(typeof a){case"number":var r=a>10?10:a<0?0:Math.floor(a);a=r&&k(r," "),n=r,o=r;break;case"string":a=a.slice(0,10),n=0,o=0;for(var s=0;s=0}var klA=/"|\\/g,_lA=/[\b]/g,xlA=/\f/g,RlA=/\n/g,NlA=/\r/g,FlA=/\t/g;function u6(i){return i=i.replace(klA,"\\$&").replace(xlA,"\\f").replace(_lA,"\\b").replace(RlA,"\\n").replace(NlA,"\\r").replace(FlA,"\\t"),'"'+i+'"'}var LlA=/~/g,GlA=/\//g;function cM(i){return i.replace(LlA,"~0").replace(GlA,"~1")}});var BJ=jp((fAe,IJ)=>{"use strict";var dJ=function(i,e){var A,t,n=1,o=0,a=0,r=String.alphabet;function s(l,g,C){if(C){for(A=g;C=s(l,A),C<76&&C>65;)++A;return+l.slice(g-1,A)}return C=r&&r.indexOf(l.charAt(g)),C>-1?C+76:(C=l.charCodeAt(g)||0,C<45||C>127?C:C<46?65:C<48?C-1:C<58?C+18:C<65?C-11:C<91?C+11:C<97?C-37:C<123?C+5:C-63)}if((i+="")!=(e+="")){for(;n;)if(t=s(i,o++),n=s(e,a++),t<76&&n<76&&t>66&&n>66&&(t=s(i,o,o),n=s(e,a,o=A),a=A),t!=n)return t{"use strict";(function(i){"use strict";function e(V){return V!==null?Object.prototype.toString.call(V)==="[object Array]":!1}function A(V){return V!==null?Object.prototype.toString.call(V)==="[object Object]":!1}function t(V,$){if(V===$)return!0;var iA=Object.prototype.toString.call(V);if(iA!==Object.prototype.toString.call($))return!1;if(e(V)===!0){if(V.length!==$.length)return!1;for(var oA=0;oA",9:"Array"},S="EOF",k="UnquotedIdentifier",M="QuotedIdentifier",x="Rbracket",F="Rparen",z="Comma",j="Colon",X="Rbrace",eA="Number",Z="Current",CA="Expref",wA="Pipe",BA="Or",QA="And",RA="EQ",dA="GT",IA="LT",xA="GTE",qA="LTE",ue="NE",HA="Flatten",bA="Star",PA="Filter",it="Dot",Xe="Not",YA="Lbrace",hA="Lbracket",Ae="Lparen",pA="Literal",te={".":it,"*":bA,",":z,":":j,"{":YA,"}":X,"]":x,"(":Ae,")":F,"@":Z},NA={"<":!0,">":!0,"=":!0,"!":!0},Ge={" ":!0," ":!0,"\n":!0};function JA(V){return V>="a"&&V<="z"||V>="A"&&V<="Z"||V==="_"}function yA(V){return V>="0"&&V<="9"||V==="-"}function Pt(V){return V>="a"&&V<="z"||V>="A"&&V<="Z"||V>="0"&&V<="9"||V==="_"}function Dt(){}Dt.prototype={tokenize:function(V){var $=[];this._current=0;for(var iA,oA,UA;this._current")return V[this._current]==="="?(this._current++,{type:xA,value:">=",start:$}):{type:dA,value:">",start:$};if(iA==="="&&V[this._current]==="=")return this._current++,{type:RA,value:"==",start:$}},_consumeLiteral:function(V){this._current++;for(var $=this._current,iA=V.length,oA;V[this._current]!=="`"&&this._current=0)return!0;if(iA.indexOf(V)>=0)return!0;if(oA.indexOf(V[0])>=0)try{return JSON.parse(V),!0}catch(UA){return!1}else return!1}};var fe={};fe[S]=0,fe[k]=0,fe[M]=0,fe[x]=0,fe[F]=0,fe[z]=0,fe[X]=0,fe[eA]=0,fe[Z]=0,fe[CA]=0,fe[wA]=1,fe[BA]=2,fe[QA]=3,fe[RA]=5,fe[dA]=5,fe[IA]=5,fe[xA]=5,fe[qA]=5,fe[ue]=5,fe[HA]=9,fe[bA]=20,fe[PA]=21,fe[it]=40,fe[Xe]=45,fe[YA]=50,fe[hA]=55,fe[Ae]=60;function Zt(){}Zt.prototype={parse:function(V){this._loadTokens(V),this.index=0;var $=this.expression(0);if(this._lookahead(0)!==S){var iA=this._lookaheadToken(0),oA=new Error("Unexpected token type: "+iA.type+", value: "+iA.value);throw oA.name="ParserError",oA}return $},_loadTokens:function(V){var $=new Dt,iA=$.tokenize(V);iA.push({type:S,value:"",start:V.length}),this.tokens=iA},expression:function(V){var $=this._lookaheadToken(0);this._advance();for(var iA=this.nud($),oA=this._lookahead(0);V=0)return this.expression(V);if($===hA)return this._match(hA),this._parseMultiselectList();if($===YA)return this._match(YA),this._parseMultiselectHash()},_parseProjectionRHS:function(V){var $;if(fe[this._lookahead(0)]<10)$={type:"Identity"};else if(this._lookahead(0)===hA)$=this.expression(V);else if(this._lookahead(0)===PA)$=this.expression(V);else if(this._lookahead(0)===it)this._match(it),$=this._parseDotRHS(V);else{var iA=this._lookaheadToken(0),oA=new Error("Sytanx error, unexpected token: "+iA.value+"("+iA.type+")");throw oA.name="ParserError",oA}return $},_parseMultiselectList:function(){for(var V=[];this._lookahead(0)!==x;){var $=this.expression(0);if(V.push($),this._lookahead(0)===z&&(this._match(z),this._lookahead(0)===x))throw new Error("Unexpected token Rbracket")}return this._match(x),{type:"MultiSelectList",children:V}},_parseMultiselectHash:function(){for(var V=[],$=[k,M],iA,oA,UA,he;;){if(iA=this._lookaheadToken(0),$.indexOf(iA.type)<0)throw new Error("Expecting an identifier token, got: "+iA.type);if(oA=iA.value,this._advance(),this._match(j),UA=this.expression(0),he={type:"KeyValuePair",name:oA,value:UA},V.push(he),this._lookahead(0)===z)this._match(z);else if(this._lookahead(0)===X){this._match(X);break}}return{type:"MultiSelectHash",children:V}}};function Pe(V){this.runtime=V}Pe.prototype={search:function(V,$){return this.visit(V,$)},visit:function(V,$){var iA,oA,UA,he,me,GA,OA,wt,rt,je;switch(V.type){case"Field":return $!==null&&A($)?(GA=$[V.name],GA===void 0?null:GA):null;case"Subexpression":for(UA=this.visit(V.children[0],$),je=1;je0)for(je=Sn;jeHe;je+=En)UA.push($[je]);return UA;case"Projection":var Gi=this.visit(V.children[0],$);if(!e(Gi))return null;for(rt=[],je=0;jeme;break;case xA:UA=he>=me;break;case IA:UA=he=V&&($=iA<0?V-1:V),$}};function qe(V){this._interpreter=V,this.functionTable={abs:{_func:this._functionAbs,_signature:[{types:[s]}]},avg:{_func:this._functionAvg,_signature:[{types:[f]}]},ceil:{_func:this._functionCeil,_signature:[{types:[s]}]},contains:{_func:this._functionContains,_signature:[{types:[g,C]},{types:[l]}]},ends_with:{_func:this._functionEndsWith,_signature:[{types:[g]},{types:[g]}]},floor:{_func:this._functionFloor,_signature:[{types:[s]}]},length:{_func:this._functionLength,_signature:[{types:[g,C,d]}]},map:{_func:this._functionMap,_signature:[{types:[u]},{types:[C]}]},max:{_func:this._functionMax,_signature:[{types:[f,m]}]},merge:{_func:this._functionMerge,_signature:[{types:[d],variadic:!0}]},max_by:{_func:this._functionMaxBy,_signature:[{types:[C]},{types:[u]}]},sum:{_func:this._functionSum,_signature:[{types:[f]}]},starts_with:{_func:this._functionStartsWith,_signature:[{types:[g]},{types:[g]}]},min:{_func:this._functionMin,_signature:[{types:[f,m]}]},min_by:{_func:this._functionMinBy,_signature:[{types:[C]},{types:[u]}]},type:{_func:this._functionType,_signature:[{types:[l]}]},keys:{_func:this._functionKeys,_signature:[{types:[d]}]},values:{_func:this._functionValues,_signature:[{types:[d]}]},sort:{_func:this._functionSort,_signature:[{types:[m,f]}]},sort_by:{_func:this._functionSortBy,_signature:[{types:[C]},{types:[u]}]},join:{_func:this._functionJoin,_signature:[{types:[g]},{types:[m]}]},reverse:{_func:this._functionReverse,_signature:[{types:[g,C]}]},to_array:{_func:this._functionToArray,_signature:[{types:[l]}]},to_string:{_func:this._functionToString,_signature:[{types:[l]}]},to_number:{_func:this._functionToNumber,_signature:[{types:[l]}]},not_null:{_func:this._functionNotNull,_signature:[{types:[l],variadic:!0}]}}}qe.prototype={callFunction:function(V,$){var iA=this.functionTable[V];if(iA===void 0)throw new Error("Unknown function: "+V+"()");return this._validateArgs(V,$,iA._signature),iA._func.call(this,$)},_validateArgs:function(V,$,iA){var oA;if(iA[iA.length-1].variadic){if($.length=0;UA--)oA+=iA[UA];return oA}else{var he=V[0].slice(0);return he.reverse(),he}},_functionAbs:function(V){return Math.abs(V[0])},_functionCeil:function(V){return Math.ceil(V[0])},_functionAvg:function(V){for(var $=0,iA=V[0],oA=0;oA=0},_functionFloor:function(V){return Math.floor(V[0])},_functionLength:function(V){return A(V[0])?Object.keys(V[0]).length:V[0].length},_functionMap:function(V){for(var $=[],iA=this._interpreter,oA=V[0],UA=V[1],he=0;he0){var $=this._getTypeName(V[0][0]);if($===s)return Math.max.apply(Math,V[0]);for(var iA=V[0],oA=iA[0],UA=1;UA0){var $=this._getTypeName(V[0][0]);if($===s)return Math.min.apply(Math,V[0]);for(var iA=V[0],oA=iA[0],UA=1;UAze?1:jeUA&&(UA=me,he=iA[GA]);return he},_functionMinBy:function(V){for(var $=V[1],iA=V[0],oA=this.createKeyFunction($,[s,g]),UA=1/0,he,me,GA=0;GA"u"?v6.jmespath={}:v6)});var YX=jp((gre,$5)=>{"use strict";var d8A=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};var Gt=(function(i){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,A=0,t={},n={manual:i.Prism&&i.Prism.manual,disableWorkerMessageHandler:i.Prism&&i.Prism.disableWorkerMessageHandler,util:{encode:function E(f){return f instanceof o?new o(f.type,E(f.content),f.alias):Array.isArray(f)?f.map(E):f.replace(/&/g,"&").replace(/"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(v){var E=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(v.stack)||[])[1];if(E){var f=document.getElementsByTagName("script");for(var m in f)if(f[m].src==E)return f[m]}return null}},isActive:function(E,f,m){for(var v="no-"+f;E;){var S=E.classList;if(S.contains(f))return!0;if(S.contains(v))return!1;E=E.parentElement}return!!m}},languages:{plain:t,plaintext:t,text:t,txt:t,extend:function(E,f){var m=n.util.clone(n.languages[E]);for(var v in f)m[v]=f[v];return m},insertBefore:function(E,f,m,v){v=v||n.languages;var S=v[E],k={};for(var M in S)if(S.hasOwnProperty(M)){if(M==f)for(var x in m)m.hasOwnProperty(x)&&(k[x]=m[x]);m.hasOwnProperty(M)||(k[M]=S[M])}var F=v[E];return v[E]=k,n.languages.DFS(n.languages,function(z,j){j===F&&z!=E&&(this[z]=k)}),k},DFS:function E(f,m,v,S){S=S||{};var k=n.util.objId;for(var M in f)if(f.hasOwnProperty(M)){m.call(f,M,f[M],v||M);var x=f[M],F=n.util.type(x);F==="Object"&&!S[k(x)]?(S[k(x)]=!0,E(x,m,null,S)):F==="Array"&&!S[k(x)]&&(S[k(x)]=!0,E(x,m,M,S))}}},plugins:{},highlightAll:function(E,f){n.highlightAllUnder(document,E,f)},highlightAllUnder:function(E,f,m){var v={callback:m,container:E,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};n.hooks.run("before-highlightall",v),v.elements=Array.prototype.slice.apply(v.container.querySelectorAll(v.selector)),n.hooks.run("before-all-elements-highlight",v);for(var S=0,k;k=v.elements[S++];)n.highlightElement(k,f===!0,v.callback)},highlightElement:function(E,f,m){var v=n.util.getLanguage(E),S=n.languages[v];n.util.setLanguage(E,v);var k=E.parentElement;k&&k.nodeName.toLowerCase()==="pre"&&n.util.setLanguage(k,v);var M=E.textContent,x={element:E,language:v,grammar:S,code:M};function F(j){x.highlightedCode=j,n.hooks.run("before-insert",x),x.element.innerHTML=x.highlightedCode,n.hooks.run("after-highlight",x),n.hooks.run("complete",x),m&&m.call(x.element)}if(n.hooks.run("before-sanity-check",x),k=x.element.parentElement,k&&k.nodeName.toLowerCase()==="pre"&&!k.hasAttribute("tabindex")&&k.setAttribute("tabindex","0"),!x.code){n.hooks.run("complete",x),m&&m.call(x.element);return}if(n.hooks.run("before-highlight",x),!x.grammar){F(n.util.encode(x.code));return}if(f&&i.Worker){var z=new Worker(n.filename);z.onmessage=function(j){F(j.data)},z.postMessage(JSON.stringify({language:x.language,code:x.code,immediateClose:!0}))}else F(n.highlight(x.code,x.grammar,x.language))},highlight:function(E,f,m){var v={code:E,grammar:f,language:m};if(n.hooks.run("before-tokenize",v),!v.grammar)throw new Error('The language "'+v.language+'" has no grammar.');return v.tokens=n.tokenize(v.code,v.grammar),n.hooks.run("after-tokenize",v),o.stringify(n.util.encode(v.tokens),v.language)},tokenize:function(E,f){var m=f.rest;if(m){for(var v in m)f[v]=m[v];delete f.rest}var S=new s;return l(S,S.head,E),r(E,S,f,S.head,0),C(S)},hooks:{all:{},add:function(E,f){var m=n.hooks.all;m[E]=m[E]||[],m[E].push(f)},run:function(E,f){var m=n.hooks.all[E];if(!(!m||!m.length))for(var v=0,S;S=m[v++];)S(f)}},Token:o};i.Prism=n;function o(E,f,m,v){this.type=E,this.content=f,this.alias=m,this.length=(v||"").length|0}o.stringify=function E(f,m){if(typeof f=="string")return f;if(Array.isArray(f)){var v="";return f.forEach(function(F){v+=E(F,m)}),v}var S={type:f.type,content:E(f.content,m),tag:"span",classes:["token",f.type],attributes:{},language:m},k=f.alias;k&&(Array.isArray(k)?Array.prototype.push.apply(S.classes,k):S.classes.push(k)),n.hooks.run("wrap",S);var M="";for(var x in S.attributes)M+=" "+x+'="'+(S.attributes[x]||"").replace(/"/g,""")+'"';return"<"+S.tag+' class="'+S.classes.join(" ")+'"'+M+">"+S.content+""};function a(E,f,m,v){E.lastIndex=f;var S=E.exec(m);if(S&&v&&S[1]){var k=S[1].length;S.index+=k,S[0]=S[0].slice(k)}return S}function r(E,f,m,v,S,k){for(var M in m)if(!(!m.hasOwnProperty(M)||!m[M])){var x=m[M];x=Array.isArray(x)?x:[x];for(var F=0;F=k.reach);QA+=BA.value.length,BA=BA.next){var RA=BA.value;if(f.length>E.length)return;if(!(RA instanceof o)){var dA=1,IA;if(eA){if(IA=a(wA,QA,E,X),!IA||IA.index>=E.length)break;var HA=IA.index,xA=IA.index+IA[0].length,qA=QA;for(qA+=BA.value.length;HA>=qA;)BA=BA.next,qA+=BA.value.length;if(qA-=BA.value.length,QA=qA,BA.value instanceof o)continue;for(var ue=BA;ue!==f.tail&&(qAk.reach&&(k.reach=Xe);var YA=BA.prev;PA&&(YA=l(f,YA,PA),QA+=PA.length),g(f,YA,dA);var hA=new o(M,j?n.tokenize(bA,j):bA,Z,bA);if(BA=l(f,YA,hA),it&&l(f,BA,it),dA>1){var Ae={cause:M+","+F,reach:Xe};r(E,f,m,BA.prev,QA,Ae),k&&Ae.reach>k.reach&&(k.reach=Ae.reach)}}}}}}function s(){var E={value:null,prev:null,next:null},f={value:null,prev:E,next:null};E.next=f,this.head=E,this.tail=f,this.length=0}function l(E,f,m){var v=f.next,S={value:m,prev:f,next:v};return f.next=S,v.prev=S,E.length++,S}function g(E,f,m){for(var v=f.next,S=0;S/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]};Gt.languages.markup.tag.inside["attr-value"].inside.entity=Gt.languages.markup.entity;Gt.languages.markup.doctype.inside["internal-subset"].inside=Gt.languages.markup;Gt.hooks.add("wrap",function(i){i.type==="entity"&&(i.attributes.title=i.content.replace(/&/,"&"))});Object.defineProperty(Gt.languages.markup.tag,"addInlined",{value:function(e,A){var t={};t["language-"+A]={pattern:/(^$)/i,lookbehind:!0,inside:Gt.languages[A]},t.cdata=/^$/i;var n={"included-cdata":{pattern://i,inside:t}};n["language-"+A]={pattern:/[\s\S]+/,inside:Gt.languages[A]};var o={};o[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return e}),"i"),lookbehind:!0,greedy:!0,inside:n},Gt.languages.insertBefore("markup","cdata",o)}});Object.defineProperty(Gt.languages.markup.tag,"addAttribute",{value:function(i,e){Gt.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+i+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[e,"language-"+e],inside:Gt.languages[e]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}});Gt.languages.html=Gt.languages.markup;Gt.languages.mathml=Gt.languages.markup;Gt.languages.svg=Gt.languages.markup;Gt.languages.xml=Gt.languages.extend("markup",{});Gt.languages.ssml=Gt.languages.xml;Gt.languages.atom=Gt.languages.xml;Gt.languages.rss=Gt.languages.xml;(function(i){var e=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;i.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+e.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+e.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+e.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+e.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:e,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},i.languages.css.atrule.inside.rest=i.languages.css;var A=i.languages.markup;A&&(A.tag.addInlined("style","css"),A.tag.addAttribute("style","css"))})(Gt);Gt.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/};Gt.languages.javascript=Gt.languages.extend("clike",{"class-name":[Gt.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Gt.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Gt.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Gt.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Gt.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Gt.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Gt.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Gt.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Gt.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Gt.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Gt.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Gt.languages.markup&&(Gt.languages.markup.tag.addInlined("script","javascript"),Gt.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Gt.languages.js=Gt.languages.javascript;(function(){if(typeof Gt>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var i="Loading\u2026",e=function(d,B){return"\u2716 Error "+d+" while fetching file: "+B},A="\u2716 Error: File does not exist or is empty",t={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},n="data-src-status",o="loading",a="loaded",r="failed",s="pre[data-src]:not(["+n+'="'+a+'"]):not(['+n+'="'+o+'"])';function l(d,B,u){var E=new XMLHttpRequest;E.open("GET",d,!0),E.onreadystatechange=function(){E.readyState==4&&(E.status<400&&E.responseText?B(E.responseText):E.status>=400?u(e(E.status,E.statusText)):u(A))},E.send(null)}function g(d){var B=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(d||"");if(B){var u=Number(B[1]),E=B[2],f=B[3];return E?f?[u,Number(f)]:[u,void 0]:[u,u]}}Gt.hooks.add("before-highlightall",function(d){d.selector+=", "+s}),Gt.hooks.add("before-sanity-check",function(d){var B=d.element;if(B.matches(s)){d.code="",B.setAttribute(n,o);var u=B.appendChild(document.createElement("CODE"));u.textContent=i;var E=B.getAttribute("data-src"),f=d.language;if(f==="none"){var m=(/\.(\w+)$/.exec(E)||[,"none"])[1];f=t[m]||m}Gt.util.setLanguage(u,f),Gt.util.setLanguage(B,f);var v=Gt.plugins.autoloader;v&&v.loadLanguages(f),l(E,function(S){B.setAttribute(n,a);var k=g(B.getAttribute("data-range"));if(k){var M=S.split(/\r\n?|\n/g),x=k[0],F=k[1]==null?M.length:k[1];x<0&&(x+=M.length),x=Math.max(0,Math.min(x-1,M.length)),F<0&&(F+=M.length),F=Math.max(0,Math.min(F,M.length)),S=M.slice(x,F).join(` -`),B.hasAttribute("data-start")||B.setAttribute("data-start",String(x+1))}u.textContent=S,Gt.highlightElement(u)},function(S){B.setAttribute(n,r),u.textContent=S})}}),Gt.plugins.fileHighlight={highlight:function(B){for(var u=(B||document).querySelectorAll(s),E=0,f;f=u[E++];)Gt.highlightElement(f)}};var C=!1;Gt.fileHighlight=function(){C||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),C=!0),Gt.plugins.fileHighlight.highlight.apply(this,arguments)}})()});var OF=(()=>{class i{_renderer;_elementRef;onChange=A=>{};onTouched=()=>{};constructor(A,t){this._renderer=A,this._elementRef=t}setProperty(A,t){this._renderer.setProperty(this._elementRef.nativeElement,A,t)}registerOnTouched(A){this.onTouched=A}registerOnChange(A){this.onChange=A}setDisabledState(A){this.setProperty("disabled",A)}static \u0275fac=function(t){return new(t||i)(st(on),st(ce))};static \u0275dir=VA({type:i})}return i})(),Av=(()=>{class i extends OF{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,features:[bt]})}return i})(),cs=new MA(""),CAA={provide:cs,useExisting:Va(()=>ev),multi:!0},ev=(()=>{class i extends Av{writeValue(A){this.setProperty("checked",A)}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,n){t&1&&U("change",function(a){return n.onChange(a.target.checked)})("blur",function(){return n.onTouched()})},standalone:!1,features:[pt([CAA]),bt]})}return i})(),dAA={provide:cs,useExisting:Va(()=>Gn),multi:!0};function IAA(){let i=TD()?TD().getUserAgent():"";return/android (\d+)/.test(i.toLowerCase())}var BAA=new MA(""),Gn=(()=>{class i extends OF{_compositionMode;_composing=!1;constructor(A,t,n){super(A,t),this._compositionMode=n,this._compositionMode==null&&(this._compositionMode=!IAA())}writeValue(A){let t=A??"";this.setProperty("value",t)}_handleInput(A){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(A)}_compositionStart(){this._composing=!0}_compositionEnd(A){this._composing=!1,this._compositionMode&&this.onChange(A)}static \u0275fac=function(t){return new(t||i)(st(on),st(ce),st(BAA,8))};static \u0275dir=VA({type:i,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,n){t&1&&U("input",function(a){return n._handleInput(a.target.value)})("blur",function(){return n.onTouched()})("compositionstart",function(){return n._compositionStart()})("compositionend",function(a){return n._compositionEnd(a.target.value)})},standalone:!1,features:[pt([dAA]),bt]})}return i})();function tv(i){return i==null||iv(i)===0}function iv(i){return i==null?null:Array.isArray(i)||typeof i=="string"?i.length:i instanceof Set?i.size:null}var Oc=new MA(""),lQ=new MA(""),hAA=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,js=class{static min(e){return JF(e)}static max(e){return EAA(e)}static required(e){return QAA(e)}static requiredTrue(e){return uAA(e)}static email(e){return pAA(e)}static minLength(e){return fAA(e)}static maxLength(e){return mAA(e)}static pattern(e){return wAA(e)}static nullValidator(e){return u3()}static compose(e){return VF(e)}static composeAsync(e){return qF(e)}};function JF(i){return e=>{if(e.value==null||i==null)return null;let A=parseFloat(e.value);return!isNaN(A)&&A{if(e.value==null||i==null)return null;let A=parseFloat(e.value);return!isNaN(A)&&A>i?{max:{max:i,actual:e.value}}:null}}function QAA(i){return tv(i.value)?{required:!0}:null}function uAA(i){return i.value===!0?null:{required:!0}}function pAA(i){return tv(i.value)||hAA.test(i.value)?null:{email:!0}}function fAA(i){return e=>{let A=e.value?.length??iv(e.value);return A===null||A===0?null:A{let A=e.value?.length??iv(e.value);return A!==null&&A>i?{maxlength:{requiredLength:i,actualLength:A}}:null}}function wAA(i){if(!i)return u3;let e,A;return typeof i=="string"?(A="",i.charAt(0)!=="^"&&(A+="^"),A+=i,i.charAt(i.length-1)!=="$"&&(A+="$"),e=new RegExp(A)):(A=i.toString(),e=i),t=>{if(tv(t.value))return null;let n=t.value;return e.test(n)?null:{pattern:{requiredPattern:A,actualValue:n}}}}function u3(i){return null}function YF(i){return i!=null}function HF(i){return l3(i)?Yr(i):i}function zF(i){let e={};return i.forEach(A=>{e=A!=null?P(P({},e),A):e}),Object.keys(e).length===0?null:e}function PF(i,e){return e.map(A=>A(i))}function yAA(i){return!i.validate}function jF(i){return i.map(e=>yAA(e)?e:A=>e.validate(A))}function VF(i){if(!i)return null;let e=i.filter(YF);return e.length==0?null:function(A){return zF(PF(A,e))}}function nv(i){return i!=null?VF(jF(i)):null}function qF(i){if(!i)return null;let e=i.filter(YF);return e.length==0?null:function(A){let t=PF(A,e).map(HF);return JC(t).pipe(Se(zF))}}function ov(i){return i!=null?qF(jF(i)):null}function NF(i,e){return i===null?[e]:Array.isArray(i)?[...i,e]:[i,e]}function WF(i){return i._rawValidators}function ZF(i){return i._rawAsyncValidators}function ZD(i){return i?Array.isArray(i)?i:[i]:[]}function p3(i,e){return Array.isArray(i)?i.includes(e):i===e}function FF(i,e){let A=ZD(e);return ZD(i).forEach(n=>{p3(A,n)||A.push(n)}),A}function LF(i,e){return ZD(e).filter(A=>!p3(i,A))}var f3=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(e){this._rawValidators=e||[],this._composedValidatorFn=nv(this._rawValidators)}_setAsyncValidators(e){this._rawAsyncValidators=e||[],this._composedAsyncValidatorFn=ov(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(e){this._onDestroyCallbacks.push(e)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(e=>e()),this._onDestroyCallbacks=[]}reset(e=void 0){this.control?.reset(e)}hasError(e,A){return this.control?this.control.hasError(e,A):!1}getError(e,A){return this.control?this.control.getError(e,A):null}},T0=class extends f3{name;get formDirective(){return null}get path(){return null}},Vs=class extends f3{_parent=null;name=null;valueAccessor=null},m3=class{_cd;constructor(e){this._cd=e}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}};var Kn=(()=>{class i extends m3{constructor(A){super(A)}static \u0275fac=function(t){return new(t||i)(st(Vs,2))};static \u0275dir=VA({type:i,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,n){t&2&&_A("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)},standalone:!1,features:[bt]})}return i})(),XF=(()=>{class i extends m3{constructor(A){super(A)}static \u0275fac=function(t){return new(t||i)(st(T0,10))};static \u0275dir=VA({type:i,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["","formArray",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(t,n){t&2&&_A("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)("ng-submitted",n.isSubmitted)},standalone:!1,features:[bt]})}return i})();var tQ="VALID",Q3="INVALID",kI="PENDING",iQ="DISABLED",VC=class{},w3=class extends VC{value;source;constructor(e,A){super(),this.value=e,this.source=A}},oQ=class extends VC{pristine;source;constructor(e,A){super(),this.pristine=e,this.source=A}},aQ=class extends VC{touched;source;constructor(e,A){super(),this.touched=e,this.source=A}},_I=class extends VC{status;source;constructor(e,A){super(),this.status=e,this.source=A}},y3=class extends VC{source;constructor(e){super(),this.source=e}},rQ=class extends VC{source;constructor(e){super(),this.source=e}};function av(i){return(M3(i)?i.validators:i)||null}function DAA(i){return Array.isArray(i)?nv(i):i||null}function rv(i,e){return(M3(e)?e.asyncValidators:i)||null}function vAA(i){return Array.isArray(i)?ov(i):i||null}function M3(i){return i!=null&&!Array.isArray(i)&&typeof i=="object"}function $F(i,e,A){let t=i.controls;if(!(e?Object.keys(t):t).length)throw new Nt(1e3,"");if(!t[A])throw new Nt(1001,"")}function AL(i,e,A){i._forEachChild((t,n)=>{if(A[n]===void 0)throw new Nt(1002,"")})}var xI=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(e,A){this._assignValidators(e),this._assignAsyncValidators(A)}get validator(){return this._composedValidatorFn}set validator(e){this._rawValidators=this._composedValidatorFn=e}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(e){this._rawAsyncValidators=this._composedAsyncValidatorFn=e}get parent(){return this._parent}get status(){return wa(this.statusReactive)}set status(e){wa(()=>this.statusReactive.set(e))}_status=ye(()=>this.statusReactive());statusReactive=mA(void 0);get valid(){return this.status===tQ}get invalid(){return this.status===Q3}get pending(){return this.status==kI}get disabled(){return this.status===iQ}get enabled(){return this.status!==iQ}errors;get pristine(){return wa(this.pristineReactive)}set pristine(e){wa(()=>this.pristineReactive.set(e))}_pristine=ye(()=>this.pristineReactive());pristineReactive=mA(!0);get dirty(){return!this.pristine}get touched(){return wa(this.touchedReactive)}set touched(e){wa(()=>this.touchedReactive.set(e))}_touched=ye(()=>this.touchedReactive());touchedReactive=mA(!1);get untouched(){return!this.touched}_events=new ne;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(e){this._assignValidators(e)}setAsyncValidators(e){this._assignAsyncValidators(e)}addValidators(e){this.setValidators(FF(e,this._rawValidators))}addAsyncValidators(e){this.setAsyncValidators(FF(e,this._rawAsyncValidators))}removeValidators(e){this.setValidators(LF(e,this._rawValidators))}removeAsyncValidators(e){this.setAsyncValidators(LF(e,this._rawAsyncValidators))}hasValidator(e){return p3(this._rawValidators,e)}hasAsyncValidator(e){return p3(this._rawAsyncValidators,e)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(e={}){let A=this.touched===!1;this.touched=!0;let t=e.sourceControl??this;e.onlySelf||this._parent?.markAsTouched($A(P({},e),{sourceControl:t})),A&&e.emitEvent!==!1&&this._events.next(new aQ(!0,t))}markAllAsDirty(e={}){this.markAsDirty({onlySelf:!0,emitEvent:e.emitEvent,sourceControl:this}),this._forEachChild(A=>A.markAllAsDirty(e))}markAllAsTouched(e={}){this.markAsTouched({onlySelf:!0,emitEvent:e.emitEvent,sourceControl:this}),this._forEachChild(A=>A.markAllAsTouched(e))}markAsUntouched(e={}){let A=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let t=e.sourceControl??this;this._forEachChild(n=>{n.markAsUntouched({onlySelf:!0,emitEvent:e.emitEvent,sourceControl:t})}),e.onlySelf||this._parent?._updateTouched(e,t),A&&e.emitEvent!==!1&&this._events.next(new aQ(!1,t))}markAsDirty(e={}){let A=this.pristine===!0;this.pristine=!1;let t=e.sourceControl??this;e.onlySelf||this._parent?.markAsDirty($A(P({},e),{sourceControl:t})),A&&e.emitEvent!==!1&&this._events.next(new oQ(!1,t))}markAsPristine(e={}){let A=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let t=e.sourceControl??this;this._forEachChild(n=>{n.markAsPristine({onlySelf:!0,emitEvent:e.emitEvent})}),e.onlySelf||this._parent?._updatePristine(e,t),A&&e.emitEvent!==!1&&this._events.next(new oQ(!0,t))}markAsPending(e={}){this.status=kI;let A=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new _I(this.status,A)),this.statusChanges.emit(this.status)),e.onlySelf||this._parent?.markAsPending($A(P({},e),{sourceControl:A}))}disable(e={}){let A=this._parentMarkedDirty(e.onlySelf);this.status=iQ,this.errors=null,this._forEachChild(n=>{n.disable($A(P({},e),{onlySelf:!0}))}),this._updateValue();let t=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new w3(this.value,t)),this._events.next(new _I(this.status,t)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors($A(P({},e),{skipPristineCheck:A}),this),this._onDisabledChange.forEach(n=>n(!0))}enable(e={}){let A=this._parentMarkedDirty(e.onlySelf);this.status=tQ,this._forEachChild(t=>{t.enable($A(P({},e),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors($A(P({},e),{skipPristineCheck:A}),this),this._onDisabledChange.forEach(t=>t(!1))}_updateAncestors(e,A){e.onlySelf||(this._parent?.updateValueAndValidity(e),e.skipPristineCheck||this._parent?._updatePristine({},A),this._parent?._updateTouched({},A))}setParent(e){this._parent=e}getRawValue(){return this.value}updateValueAndValidity(e={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let t=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===tQ||this.status===kI)&&this._runAsyncValidator(t,e.emitEvent)}let A=e.sourceControl??this;e.emitEvent!==!1&&(this._events.next(new w3(this.value,A)),this._events.next(new _I(this.status,A)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),e.onlySelf||this._parent?.updateValueAndValidity($A(P({},e),{sourceControl:A}))}_updateTreeValidity(e={emitEvent:!0}){this._forEachChild(A=>A._updateTreeValidity(e)),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?iQ:tQ}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(e,A){if(this.asyncValidator){this.status=kI,this._hasOwnPendingAsyncValidator={emitEvent:A!==!1,shouldHaveEmitted:e!==!1};let t=HF(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(n=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(n,{emitEvent:A,shouldHaveEmitted:e})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let e=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,e}return!1}setErrors(e,A={}){this.errors=e,this._updateControlsErrors(A.emitEvent!==!1,this,A.shouldHaveEmitted)}get(e){let A=e;return A==null||(Array.isArray(A)||(A=A.split(".")),A.length===0)?null:A.reduce((t,n)=>t&&t._find(n),this)}getError(e,A){let t=A?this.get(A):this;return t?.errors?t.errors[e]:null}hasError(e,A){return!!this.getError(e,A)}get root(){let e=this;for(;e._parent;)e=e._parent;return e}_updateControlsErrors(e,A,t){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),(e||t)&&this._events.next(new _I(this.status,A)),this._parent&&this._parent._updateControlsErrors(e,A,t)}_initObservables(){this.valueChanges=new FA,this.statusChanges=new FA}_calculateStatus(){return this._allControlsDisabled()?iQ:this.errors?Q3:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(kI)?kI:this._anyControlsHaveStatus(Q3)?Q3:tQ}_anyControlsHaveStatus(e){return this._anyControls(A=>A.status===e)}_anyControlsDirty(){return this._anyControls(e=>e.dirty)}_anyControlsTouched(){return this._anyControls(e=>e.touched)}_updatePristine(e,A){let t=!this._anyControlsDirty(),n=this.pristine!==t;this.pristine=t,e.onlySelf||this._parent?._updatePristine(e,A),n&&this._events.next(new oQ(this.pristine,A))}_updateTouched(e={},A){this.touched=this._anyControlsTouched(),this._events.next(new aQ(this.touched,A)),e.onlySelf||this._parent?._updateTouched(e,A)}_onDisabledChange=[];_registerOnCollectionChange(e){this._onCollectionChange=e}_setUpdateStrategy(e){M3(e)&&e.updateOn!=null&&(this._updateOn=e.updateOn)}_parentMarkedDirty(e){return!e&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(e){return null}_assignValidators(e){this._rawValidators=Array.isArray(e)?e.slice():e,this._composedValidatorFn=DAA(this._rawValidators)}_assignAsyncValidators(e){this._rawAsyncValidators=Array.isArray(e)?e.slice():e,this._composedAsyncValidatorFn=vAA(this._rawAsyncValidators)}},RI=class extends xI{constructor(e,A,t){super(av(A),rv(t,A)),this.controls=e,this._initObservables(),this._setUpdateStrategy(A),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(e,A){return this.controls[e]?this.controls[e]:(this.controls[e]=A,A.setParent(this),A._registerOnCollectionChange(this._onCollectionChange),A)}addControl(e,A,t={}){this.registerControl(e,A),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}removeControl(e,A={}){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],this.updateValueAndValidity({emitEvent:A.emitEvent}),this._onCollectionChange()}setControl(e,A,t={}){this.controls[e]&&this.controls[e]._registerOnCollectionChange(()=>{}),delete this.controls[e],A&&this.registerControl(e,A),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}contains(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}setValue(e,A={}){AL(this,!0,e),Object.keys(e).forEach(t=>{$F(this,!0,t),this.controls[t].setValue(e[t],{onlySelf:!0,emitEvent:A.emitEvent})}),this.updateValueAndValidity(A)}patchValue(e,A={}){e!=null&&(Object.keys(e).forEach(t=>{let n=this.controls[t];n&&n.patchValue(e[t],{onlySelf:!0,emitEvent:A.emitEvent})}),this.updateValueAndValidity(A))}reset(e={},A={}){this._forEachChild((t,n)=>{t.reset(e?e[n]:null,$A(P({},A),{onlySelf:!0}))}),this._updatePristine(A,this),this._updateTouched(A,this),this.updateValueAndValidity(A),A?.emitEvent!==!1&&this._events.next(new rQ(this))}getRawValue(){return this._reduceChildren({},(e,A,t)=>(e[t]=A.getRawValue(),e))}_syncPendingControls(){let e=this._reduceChildren(!1,(A,t)=>t._syncPendingControls()?!0:A);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_forEachChild(e){Object.keys(this.controls).forEach(A=>{let t=this.controls[A];t&&e(t,A)})}_setUpControls(){this._forEachChild(e=>{e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(e){for(let[A,t]of Object.entries(this.controls))if(this.contains(A)&&e(t))return!0;return!1}_reduceValue(){let e={};return this._reduceChildren(e,(A,t,n)=>((t.enabled||this.disabled)&&(A[n]=t.value),A))}_reduceChildren(e,A){let t=e;return this._forEachChild((n,o)=>{t=A(t,n,o)}),t}_allControlsDisabled(){for(let e of Object.keys(this.controls))if(this.controls[e].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(e){return this.controls.hasOwnProperty(e)?this.controls[e]:null}};var XD=class extends RI{};var NI=new MA("",{factory:()=>S3}),S3="always";function eL(i,e){return[...e.path,i]}function sQ(i,e,A=S3){sv(i,e),e.valueAccessor.writeValue(i.value),(i.disabled||A==="always")&&e.valueAccessor.setDisabledState?.(i.disabled),MAA(i,e),kAA(i,e),SAA(i,e),bAA(i,e)}function D3(i,e,A=!0){let t=()=>{};e?.valueAccessor?.registerOnChange(t),e?.valueAccessor?.registerOnTouched(t),b3(i,e),i&&(e._invokeOnDestroyCallbacks(),i._registerOnCollectionChange(()=>{}))}function v3(i,e){i.forEach(A=>{A.registerOnValidatorChange&&A.registerOnValidatorChange(e)})}function bAA(i,e){if(e.valueAccessor.setDisabledState){let A=t=>{e.valueAccessor.setDisabledState(t)};i.registerOnDisabledChange(A),e._registerOnDestroy(()=>{i._unregisterOnDisabledChange(A)})}}function sv(i,e){let A=WF(i);e.validator!==null?i.setValidators(NF(A,e.validator)):typeof A=="function"&&i.setValidators([A]);let t=ZF(i);e.asyncValidator!==null?i.setAsyncValidators(NF(t,e.asyncValidator)):typeof t=="function"&&i.setAsyncValidators([t]);let n=()=>i.updateValueAndValidity();v3(e._rawValidators,n),v3(e._rawAsyncValidators,n)}function b3(i,e){let A=!1;if(i!==null){if(e.validator!==null){let n=WF(i);if(Array.isArray(n)&&n.length>0){let o=n.filter(a=>a!==e.validator);o.length!==n.length&&(A=!0,i.setValidators(o))}}if(e.asyncValidator!==null){let n=ZF(i);if(Array.isArray(n)&&n.length>0){let o=n.filter(a=>a!==e.asyncValidator);o.length!==n.length&&(A=!0,i.setAsyncValidators(o))}}}let t=()=>{};return v3(e._rawValidators,t),v3(e._rawAsyncValidators,t),A}function MAA(i,e){e.valueAccessor.registerOnChange(A=>{i._pendingValue=A,i._pendingChange=!0,i._pendingDirty=!0,i.updateOn==="change"&&tL(i,e)})}function SAA(i,e){e.valueAccessor.registerOnTouched(()=>{i._pendingTouched=!0,i.updateOn==="blur"&&i._pendingChange&&tL(i,e),i.updateOn!=="submit"&&i.markAsTouched()})}function tL(i,e){i._pendingDirty&&i.markAsDirty(),i.setValue(i._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1}function kAA(i,e){let A=(t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)};i.registerOnChange(A),e._registerOnDestroy(()=>{i._unregisterOnChange(A)})}function iL(i,e){i==null,sv(i,e)}function _AA(i,e){return b3(i,e)}function lv(i,e){if(!i.hasOwnProperty("model"))return!1;let A=i.model;return A.isFirstChange()?!0:!Object.is(e,A.currentValue)}function xAA(i){return Object.getPrototypeOf(i.constructor)===Av}function nL(i,e){i._syncPendingControls(),e.forEach(A=>{let t=A.control;t.updateOn==="submit"&&t._pendingChange&&(A.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)})}function gv(i,e){if(!e)return null;Array.isArray(e);let A,t,n;return e.forEach(o=>{o.constructor===Gn?A=o:xAA(o)?t=o:n=o}),n||t||A||null}function RAA(i,e){let A=i.indexOf(e);A>-1&&i.splice(A,1)}var NAA={provide:T0,useExisting:Va(()=>FI)},nQ=Promise.resolve(),FI=(()=>{class i extends T0{callSetDisabledState;get submitted(){return wa(this.submittedReactive)}_submitted=ye(()=>this.submittedReactive());submittedReactive=mA(!1);_directives=new Set;form;ngSubmit=new FA;options;constructor(A,t,n){super(),this.callSetDisabledState=n,this.form=new RI({},nv(A),ov(t))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(A){nQ.then(()=>{let t=this._findContainer(A.path);A.control=t.registerControl(A.name,A.control),sQ(A.control,A,this.callSetDisabledState),A.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(A)})}getControl(A){return this.form.get(A.path)}removeControl(A){nQ.then(()=>{this._findContainer(A.path)?.removeControl(A.name),this._directives.delete(A)})}addFormGroup(A){nQ.then(()=>{let t=this._findContainer(A.path),n=new RI({});iL(n,A),t.registerControl(A.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(A){nQ.then(()=>{this._findContainer(A.path)?.removeControl?.(A.name)})}getFormGroup(A){return this.form.get(A.path)}updateModel(A,t){nQ.then(()=>{this.form.get(A.path).setValue(t)})}setValue(A){this.control.setValue(A)}onSubmit(A){return this.submittedReactive.set(!0),nL(this.form,this._directives),this.ngSubmit.emit(A),this.form._events.next(new y3(this.control)),A?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(A=void 0){this.form.reset(A),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(A){return A.pop(),A.length?this.form.get(A):this.form}static \u0275fac=function(t){return new(t||i)(st(Oc,10),st(lQ,10),st(NI,8))};static \u0275dir=VA({type:i,selectors:[["form",3,"ngNoForm","",3,"formGroup","",3,"formArray",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,n){t&1&&U("submit",function(a){return n.onSubmit(a)})("reset",function(){return n.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[pt([NAA]),bt]})}return i})();function GF(i,e){let A=i.indexOf(e);A>-1&&i.splice(A,1)}function KF(i){return typeof i=="object"&&i!==null&&Object.keys(i).length===2&&"value"in i&&"disabled"in i}var Ps=class extends xI{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(e=null,A,t){super(av(A),rv(t,A)),this._applyFormState(e),this._setUpdateStrategy(A),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),M3(A)&&(A.nonNullable||A.initialValueIsDefault)&&(KF(e)?this.defaultValue=e.value:this.defaultValue=e)}setValue(e,A={}){this.value=this._pendingValue=e,this._onChange.length&&A.emitModelToViewChange!==!1&&this._onChange.forEach(t=>t(this.value,A.emitViewToModelChange!==!1)),this.updateValueAndValidity(A)}patchValue(e,A={}){this.setValue(e,A)}reset(e=this.defaultValue,A={}){this._applyFormState(e),this.markAsPristine(A),this.markAsUntouched(A),this.setValue(this.value,A),A.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,A?.emitEvent!==!1&&this._events.next(new rQ(this))}_updateValue(){}_anyControls(e){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(e){this._onChange.push(e)}_unregisterOnChange(e){GF(this._onChange,e)}registerOnDisabledChange(e){this._onDisabledChange.push(e)}_unregisterOnDisabledChange(e){GF(this._onDisabledChange,e)}_forEachChild(e){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(e){KF(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}};var FAA=i=>i instanceof Ps;var LAA={provide:Vs,useExisting:Va(()=>Ho)},UF=Promise.resolve(),Ho=(()=>{class i extends Vs{_changeDetectorRef;callSetDisabledState;control=new Ps;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new FA;constructor(A,t,n,o,a,r){super(),this._changeDetectorRef=a,this.callSetDisabledState=r,this._parent=A,this._setValidators(t),this._setAsyncValidators(n),this.valueAccessor=gv(this,o)}ngOnChanges(A){if(this._checkForErrors(),!this._registered||"name"in A){if(this._registered&&(this._checkName(),this.formDirective)){let t=A.name.previousValue;this.formDirective.removeControl({name:t,path:this._getPath(t)})}this._setUpControl()}"isDisabled"in A&&this._updateDisabled(A),lv(A,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(A){this.viewModel=A,this.update.emit(A)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){sQ(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(A){UF.then(()=>{this.control.setValue(A,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(A){let t=A.isDisabled.currentValue,n=t!==0&&Qe(t);UF.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(A){return this._parent?eL(A,this._parent):[A]}static \u0275fac=function(t){return new(t||i)(st(T0,9),st(Oc,10),st(lQ,10),st(cs,10),st(Mt,8),st(NI,8))};static \u0275dir=VA({type:i,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[pt([LAA]),bt,ii]})}return i})();var oL=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return i})(),GAA={provide:cs,useExisting:Va(()=>gQ),multi:!0},gQ=(()=>{class i extends Av{writeValue(A){let t=A??"";this.setProperty("value",t)}registerOnChange(A){this.onChange=t=>{A(t==""?null:parseFloat(t))}}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,n){t&1&&U("input",function(a){return n.onChange(a.target.value)})("blur",function(){return n.onTouched()})},standalone:!1,features:[pt([GAA]),bt]})}return i})();var $D=class extends xI{constructor(e,A,t){super(av(A),rv(t,A)),this.controls=e,this._initObservables(),this._setUpdateStrategy(A),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(e){return this.controls[this._adjustIndex(e)]}push(e,A={}){Array.isArray(e)?e.forEach(t=>{this.controls.push(t),this._registerControl(t)}):(this.controls.push(e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:A.emitEvent}),this._onCollectionChange()}insert(e,A,t={}){this.controls.splice(e,0,A),this._registerControl(A),this.updateValueAndValidity({emitEvent:t.emitEvent})}removeAt(e,A={}){let t=this._adjustIndex(e);t<0&&(t=0),this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity({emitEvent:A.emitEvent})}setControl(e,A,t={}){let n=this._adjustIndex(e);n<0&&(n=0),this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),A&&(this.controls.splice(n,0,A),this._registerControl(A)),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(e,A={}){AL(this,!1,e),e.forEach((t,n)=>{$F(this,!1,n),this.at(n).setValue(t,{onlySelf:!0,emitEvent:A.emitEvent})}),this.updateValueAndValidity(A)}patchValue(e,A={}){e!=null&&(e.forEach((t,n)=>{this.at(n)&&this.at(n).patchValue(t,{onlySelf:!0,emitEvent:A.emitEvent})}),this.updateValueAndValidity(A))}reset(e=[],A={}){this._forEachChild((t,n)=>{t.reset(e[n],$A(P({},A),{onlySelf:!0}))}),this._updatePristine(A,this),this._updateTouched(A,this),this.updateValueAndValidity(A),A?.emitEvent!==!1&&this._events.next(new rQ(this))}getRawValue(){return this.controls.map(e=>e.getRawValue())}clear(e={}){this.controls.length<1||(this._forEachChild(A=>A._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:e.emitEvent}))}_adjustIndex(e){return e<0?e+this.length:e}_syncPendingControls(){let e=this.controls.reduce((A,t)=>t._syncPendingControls()?!0:A,!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e}_forEachChild(e){this.controls.forEach((A,t)=>{e(A,t)})}_updateValue(){this.value=this.controls.filter(e=>e.enabled||this.disabled).map(e=>e.value)}_anyControls(e){return this.controls.some(A=>A.enabled&&e(A))}_setUpControls(){this._forEachChild(e=>this._registerControl(e))}_allControlsDisabled(){for(let e of this.controls)if(e.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)}_find(e){return this.at(e)??null}};var KAA=(()=>{class i extends T0{callSetDisabledState;get submitted(){return wa(this._submittedReactive)}set submitted(A){this._submittedReactive.set(A)}_submitted=ye(()=>this._submittedReactive());_submittedReactive=mA(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];constructor(A,t,n){super(),this.callSetDisabledState=n,this._setValidators(A),this._setAsyncValidators(t)}ngOnChanges(A){this.onChanges(A)}ngOnDestroy(){this.onDestroy()}onChanges(A){this._checkFormPresent(),A.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}onDestroy(){this.form&&(b3(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get path(){return[]}addControl(A){let t=this.form.get(A.path);return sQ(t,A,this.callSetDisabledState),t.updateValueAndValidity({emitEvent:!1}),this.directives.push(A),t}getControl(A){return this.form.get(A.path)}removeControl(A){D3(A.control||null,A,!1),RAA(this.directives,A)}addFormGroup(A){this._setUpFormContainer(A)}removeFormGroup(A){this._cleanUpFormContainer(A)}getFormGroup(A){return this.form.get(A.path)}getFormArray(A){return this.form.get(A.path)}addFormArray(A){this._setUpFormContainer(A)}removeFormArray(A){this._cleanUpFormContainer(A)}updateModel(A,t){this.form.get(A.path).setValue(t)}onReset(){this.resetForm()}resetForm(A=void 0,t={}){this.form.reset(A,t),this._submittedReactive.set(!1)}onSubmit(A){return this.submitted=!0,nL(this.form,this.directives),this.ngSubmit.emit(A),this.form._events.next(new y3(this.control)),A?.target?.method==="dialog"}_updateDomValue(){this.directives.forEach(A=>{let t=A.control,n=this.form.get(A.path);t!==n&&(D3(t||null,A),FAA(n)&&(sQ(n,A,this.callSetDisabledState),A.control=n))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(A){let t=this.form.get(A.path);iL(t,A),t.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(A){let t=this.form?.get(A.path);t&&_AA(t,A)&&t.updateValueAndValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm?._registerOnCollectionChange(()=>{})}_updateValidators(){sv(this.form,this),this._oldForm&&b3(this._oldForm,this)}_checkFormPresent(){this.form}static \u0275fac=function(t){return new(t||i)(st(Oc,10),st(lQ,10),st(NI,8))};static \u0275dir=VA({type:i,features:[bt,ii]})}return i})();var cv=new MA(""),UAA={provide:Vs,useExisting:Va(()=>x1)},x1=(()=>{class i extends Vs{_ngModelWarningConfig;callSetDisabledState;viewModel;form;set isDisabled(A){}model;update=new FA;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(A,t,n,o,a){super(),this._ngModelWarningConfig=o,this.callSetDisabledState=a,this._setValidators(A),this._setAsyncValidators(t),this.valueAccessor=gv(this,n)}ngOnChanges(A){if(this._isControlChanged(A)){let t=A.form.previousValue;t&&D3(t,this,!1),sQ(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}lv(A,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&D3(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(A){this.viewModel=A,this.update.emit(A)}_isControlChanged(A){return A.hasOwnProperty("form")}static \u0275fac=function(t){return new(t||i)(st(Oc,10),st(lQ,10),st(cs,10),st(cv,8),st(NI,8))};static \u0275dir=VA({type:i,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],standalone:!1,features:[pt([UAA]),bt,ii]})}return i})();var TAA={provide:Vs,useExisting:Va(()=>Cv)},Cv=(()=>{class i extends Vs{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(A){}model;update=new FA;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(A,t,n,o,a){super(),this._ngModelWarningConfig=a,this._parent=A,this._setValidators(t),this._setAsyncValidators(n),this.valueAccessor=gv(this,o)}ngOnChanges(A){this._added||this._setUpControl(),lv(A,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective?.removeControl(this)}viewToModelUpdate(A){this.viewModel=A,this.update.emit(A)}get path(){return eL(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}static \u0275fac=function(t){return new(t||i)(st(T0,13),st(Oc,10),st(lQ,10),st(cs,10),st(cv,8))};static \u0275dir=VA({type:i,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[pt([TAA]),bt,ii]})}return i})();var OAA={provide:T0,useExisting:Va(()=>qC)},qC=(()=>{class i extends KAA{form=null;ngSubmit=new FA;get control(){return this.form}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","formGroup",""]],hostBindings:function(t,n){t&1&&U("submit",function(a){return n.onSubmit(a)})("reset",function(){return n.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[pt([OAA]),bt]})}return i})();function JAA(i){return typeof i=="number"?i:parseFloat(i)}var YAA=(()=>{class i{_validator=u3;_onChange;_enabled;ngOnChanges(A){if(this.inputName in A){let t=this.normalizeInput(A[this.inputName].currentValue);this._enabled=this.enabled(t),this._validator=this._enabled?this.createValidator(t):u3,this._onChange?.()}}validate(A){return this._validator(A)}registerOnValidatorChange(A){this._onChange=A}enabled(A){return A!=null}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,features:[ii]})}return i})();var HAA={provide:Oc,useExisting:Va(()=>dv),multi:!0},dv=(()=>{class i extends YAA{min;inputName="min";normalizeInput=A=>JAA(A);createValidator=A=>JF(A);static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(t,n){t&2&&ie("min",n._enabled?n.min:null)},inputs:{min:"min"},standalone:!1,features:[pt([HAA]),bt]})}return i})();var aL=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({})}return i})();function TF(i){return!!i&&(i.asyncValidators!==void 0||i.validators!==void 0||i.updateOn!==void 0)}var rL=(()=>{class i{useNonNullable=!1;get nonNullable(){let A=new i;return A.useNonNullable=!0,A}group(A,t=null){let n=this._reduceControls(A),o={};return TF(t)?o=t:t!==null&&(o.validators=t.validator,o.asyncValidators=t.asyncValidator),new RI(n,o)}record(A,t=null){let n=this._reduceControls(A);return new XD(n,t)}control(A,t,n){let o={};return this.useNonNullable?(TF(t)?o=t:(o.validators=t,o.asyncValidators=n),new Ps(A,$A(P({},o),{nonNullable:!0}))):new Ps(A,t,n)}array(A,t,n){let o=A.map(a=>this._createControl(a));return new $D(o,t,n)}_reduceControls(A){let t={};return Object.keys(A).forEach(n=>{t[n]=this._createControl(A[n])}),t}_createControl(A){if(A instanceof Ps)return A;if(A instanceof xI)return A;if(Array.isArray(A)){let t=A[0],n=A.length>1?A[1]:null,o=A.length>2?A[2]:null;return this.control(t,n,o)}else return this.control(A)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var fn=(()=>{class i{static withConfig(A){return{ngModule:i,providers:[{provide:NI,useValue:A.callSetDisabledState??S3}]}}static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[aL]})}return i})(),WC=(()=>{class i{static withConfig(A){return{ngModule:i,providers:[{provide:cv,useValue:A.warnOnNgModelWithFormControl??"always"},{provide:NI,useValue:A.callSetDisabledState??S3}]}}static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[aL]})}return i})();function R1(i){return i.buttons===0||i.detail===0}function N1(i){let e=i.touches&&i.touches[0]||i.changedTouches&&i.changedTouches[0];return!!e&&e.identifier===-1&&(e.radiusX==null||e.radiusX===1)&&(e.radiusY==null||e.radiusY===1)}var Iv;function sL(){if(Iv==null){let i=typeof document<"u"?document.head:null;Iv=!!(i&&(i.createShadowRoot||i.attachShadow))}return Iv}function Bv(i){if(sL()){let e=i.getRootNode?i.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}function cQ(){let i=typeof document<"u"&&document?document.activeElement:null;for(;i&&i.shadowRoot;){let e=i.shadowRoot.activeElement;if(e===i)break;i=e}return i}function Pr(i){return i.composedPath?i.composedPath()[0]:i.target}var hv;try{hv=typeof Intl<"u"&&Intl.v8BreakIterator}catch(i){hv=!1}var Qi=(()=>{class i{_platformId=w(i3);isBrowser=this._platformId?U0(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||hv)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var CQ;function lL(){if(CQ==null&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>CQ=!0}))}finally{CQ=CQ||!1}return CQ}function LI(i){return lL()?i:!!i.capture}function qs(i,e=0){return k3(i)?Number(i):arguments.length===2?e:0}function k3(i){return!isNaN(parseFloat(i))&&!isNaN(Number(i))}function ks(i){return i instanceof ce?i.nativeElement:i}var gL=new MA("cdk-input-modality-detector-options"),cL={ignoreKeys:[18,17,224,91,16]},CL=650,Ev={passive:!0,capture:!0},dL=(()=>{class i{_platform=w(Qi);_listenerCleanups;modalityDetected;modalityChanged;get mostRecentModality(){return this._modality.value}_mostRecentTarget=null;_modality=new gi(null);_options;_lastTouchMs=0;_onKeydown=A=>{this._options?.ignoreKeys?.some(t=>t===A.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=Pr(A))};_onMousedown=A=>{Date.now()-this._lastTouchMs{if(N1(A)){this._modality.next("keyboard");return}this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Pr(A)};constructor(){let A=w(We),t=w(ci),n=w(gL,{optional:!0});if(this._options=P(P({},cL),n),this.modalityDetected=this._modality.pipe(Dl(1)),this.modalityChanged=this.modalityDetected.pipe(xg()),this._platform.isBrowser){let o=w(zr).createRenderer(null,null);this._listenerCleanups=A.runOutsideAngular(()=>[o.listen(t,"keydown",this._onKeydown,Ev),o.listen(t,"mousedown",this._onMousedown,Ev),o.listen(t,"touchstart",this._onTouchstart,Ev)])}}ngOnDestroy(){this._modality.complete(),this._listenerCleanups?.forEach(A=>A())}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),dQ=(function(i){return i[i.IMMEDIATE=0]="IMMEDIATE",i[i.EVENTUAL=1]="EVENTUAL",i})(dQ||{}),IL=new MA("cdk-focus-monitor-default-options"),_3=LI({passive:!0,capture:!0}),rr=(()=>{class i{_ngZone=w(We);_platform=w(Qi);_inputModalityDetector=w(dL);_origin=null;_lastFocusOrigin=null;_windowFocused=!1;_windowFocusTimeoutId;_originTimeoutId;_originFromTouchInteraction=!1;_elementInfo=new Map;_monitoredElementCount=0;_rootNodeFocusListenerCount=new Map;_detectionMode;_windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)};_document=w(ci);_stopInputModalityDetector=new ne;constructor(){let A=w(IL,{optional:!0});this._detectionMode=A?.detectionMode||dQ.IMMEDIATE}_rootNodeFocusAndBlurListener=A=>{let t=Pr(A);for(let n=t;n;n=n.parentElement)A.type==="focus"?this._onFocus(A,n):this._onBlur(A,n)};monitor(A,t=!1){let n=ks(A);if(!this._platform.isBrowser||n.nodeType!==1)return oe();let o=Bv(n)||this._document,a=this._elementInfo.get(n);if(a)return t&&(a.checkChildren=!0),a.subject;let r={checkChildren:t,subject:new ne,rootNode:o};return this._elementInfo.set(n,r),this._registerGlobalListeners(r),r.subject}stopMonitoring(A){let t=ks(A),n=this._elementInfo.get(t);n&&(n.subject.complete(),this._setClasses(t),this._elementInfo.delete(t),this._removeGlobalListeners(n))}focusVia(A,t,n){let o=ks(A),a=this._document.activeElement;o===a?this._getClosestElementsInfo(o).forEach(([r,s])=>this._originChanged(r,t,s)):(this._setOrigin(t),typeof o.focus=="function"&&o.focus(n))}ngOnDestroy(){this._elementInfo.forEach((A,t)=>this.stopMonitoring(t))}_getWindow(){return this._document.defaultView||window}_getFocusOrigin(A){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(A)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:A&&this._isLastInteractionFromInputLabel(A)?"mouse":"program"}_shouldBeAttributedToTouch(A){return this._detectionMode===dQ.EVENTUAL||!!A?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(A,t){A.classList.toggle("cdk-focused",!!t),A.classList.toggle("cdk-touch-focused",t==="touch"),A.classList.toggle("cdk-keyboard-focused",t==="keyboard"),A.classList.toggle("cdk-mouse-focused",t==="mouse"),A.classList.toggle("cdk-program-focused",t==="program")}_setOrigin(A,t=!1){this._ngZone.runOutsideAngular(()=>{if(this._origin=A,this._originFromTouchInteraction=A==="touch"&&t,this._detectionMode===dQ.IMMEDIATE){clearTimeout(this._originTimeoutId);let n=this._originFromTouchInteraction?CL:1;this._originTimeoutId=setTimeout(()=>this._origin=null,n)}})}_onFocus(A,t){let n=this._elementInfo.get(t),o=Pr(A);!n||!n.checkChildren&&t!==o||this._originChanged(t,this._getFocusOrigin(o),n)}_onBlur(A,t){let n=this._elementInfo.get(t);!n||n.checkChildren&&A.relatedTarget instanceof Node&&t.contains(A.relatedTarget)||(this._setClasses(t),this._emitOrigin(n,null))}_emitOrigin(A,t){A.subject.observers.length&&this._ngZone.run(()=>A.subject.next(t))}_registerGlobalListeners(A){if(!this._platform.isBrowser)return;let t=A.rootNode,n=this._rootNodeFocusListenerCount.get(t)||0;n||this._ngZone.runOutsideAngular(()=>{t.addEventListener("focus",this._rootNodeFocusAndBlurListener,_3),t.addEventListener("blur",this._rootNodeFocusAndBlurListener,_3)}),this._rootNodeFocusListenerCount.set(t,n+1),++this._monitoredElementCount===1&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(yt(this._stopInputModalityDetector)).subscribe(o=>{this._setOrigin(o,!0)}))}_removeGlobalListeners(A){let t=A.rootNode;if(this._rootNodeFocusListenerCount.has(t)){let n=this._rootNodeFocusListenerCount.get(t);n>1?this._rootNodeFocusListenerCount.set(t,n-1):(t.removeEventListener("focus",this._rootNodeFocusAndBlurListener,_3),t.removeEventListener("blur",this._rootNodeFocusAndBlurListener,_3),this._rootNodeFocusListenerCount.delete(t))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(A,t,n){this._setClasses(A,t),this._emitOrigin(n,t),this._lastFocusOrigin=t}_getClosestElementsInfo(A){let t=[];return this._elementInfo.forEach((n,o)=>{(o===A||n.checkChildren&&o.contains(A))&&t.push([o,n])}),t}_isLastInteractionFromInputLabel(A){let{_mostRecentTarget:t,mostRecentModality:n}=this._inputModalityDetector;if(n!=="mouse"||!t||t===A||A.nodeName!=="INPUT"&&A.nodeName!=="TEXTAREA"||A.disabled)return!1;let o=A.labels;if(o){for(let a=0;a{class i{_elementRef=w(ce);_focusMonitor=w(rr);_monitorSubscription;_focusOrigin=null;cdkFocusChange=new FA;constructor(){}get focusOrigin(){return this._focusOrigin}ngAfterViewInit(){let A=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(A,A.nodeType===1&&A.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(t=>{this._focusOrigin=t,this.cdkFocusChange.emit(t)})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription?.unsubscribe()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"},exportAs:["cdkMonitorFocus"]})}return i})();var x3=new WeakMap,Eo=(()=>{class i{_appRef;_injector=w(St);_environmentInjector=w(Hr);load(A){let t=this._appRef=this._appRef||this._injector.get(F0),n=x3.get(t);n||(n={loaders:new Set,refs:[]},x3.set(t,n),t.onDestroy(()=>{x3.get(t)?.refs.forEach(o=>o.destroy()),x3.delete(t)})),n.loaders.has(A)||(n.loaders.add(A),n.refs.push(C3(A,{environmentInjector:this._environmentInjector})))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var ZC=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["ng-component"]],exportAs:["cdkVisuallyHidden"],decls:0,vars:0,template:function(t,n){},styles:[`.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0} -`],encapsulation:2,changeDetection:0})}return i})(),R3;function zAA(){if(R3===void 0&&(R3=null,typeof window<"u")){let i=window;i.trustedTypes!==void 0&&(R3=i.trustedTypes.createPolicy("angular#components",{createHTML:e=>e}))}return R3}function F1(i){return zAA()?.createHTML(i)||i}function BL(i,e,A){let t=A.sanitize(Ng.HTML,e);i.innerHTML=F1(t||"")}function GI(i){return Array.isArray(i)?i:[i]}var hL=new Set,L1,KI=(()=>{class i{_platform=w(Qi);_nonce=w(DN,{optional:!0});_matchMedia;constructor(){this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):jAA}matchMedia(A){return(this._platform.WEBKIT||this._platform.BLINK)&&PAA(A,this._nonce),this._matchMedia(A)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function PAA(i,e){if(!hL.has(i))try{L1||(L1=document.createElement("style"),e&&L1.setAttribute("nonce",e),L1.setAttribute("type","text/css"),document.head.appendChild(L1)),L1.sheet&&(L1.sheet.insertRule(`@media ${i} {body{ }}`,0),hL.add(i))}catch(A){console.error(A)}}function jAA(i){return{matches:i==="all"||i==="",media:i,addListener:()=>{},removeListener:()=>{}}}var IQ=(()=>{class i{_mediaMatcher=w(KI);_zone=w(We);_queries=new Map;_destroySubject=new ne;constructor(){}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(A){return EL(GI(A)).some(n=>this._registerQuery(n).mql.matches)}observe(A){let n=EL(GI(A)).map(a=>this._registerQuery(a).observable),o=Dr(n);return o=Xp(o.pipe(Ro(1)),o.pipe(Dl(1),Os(0))),o.pipe(Se(a=>{let r={matches:!1,breakpoints:{}};return a.forEach(({matches:s,query:l})=>{r.matches=r.matches||s,r.breakpoints[l]=s}),r}))}_registerQuery(A){if(this._queries.has(A))return this._queries.get(A);let t=this._mediaMatcher.matchMedia(A),o={observable:new Fi(a=>{let r=s=>this._zone.run(()=>a.next(s));return t.addListener(r),()=>{t.removeListener(r)}}).pipe(Yn(t),Se(({matches:a})=>({query:A,matches:a})),yt(this._destroySubject)),mql:t};return this._queries.set(A,o),o}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function EL(i){return i.map(e=>e.split(",")).reduce((e,A)=>e.concat(A)).map(e=>e.trim())}function VAA(i){if(i.type==="characterData"&&i.target instanceof Comment)return!0;if(i.type==="childList"){for(let e=0;e{class i{create(A){return typeof MutationObserver>"u"?null:new MutationObserver(A)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),uL=(()=>{class i{_mutationObserverFactory=w(QL);_observedElements=new Map;_ngZone=w(We);constructor(){}ngOnDestroy(){this._observedElements.forEach((A,t)=>this._cleanupObserver(t))}observe(A){let t=ks(A);return new Fi(n=>{let a=this._observeElement(t).pipe(Se(r=>r.filter(s=>!VAA(s))),Bt(r=>!!r.length)).subscribe(r=>{this._ngZone.run(()=>{n.next(r)})});return()=>{a.unsubscribe(),this._unobserveElement(t)}})}_observeElement(A){return this._ngZone.runOutsideAngular(()=>{if(this._observedElements.has(A))this._observedElements.get(A).count++;else{let t=new ne,n=this._mutationObserverFactory.create(o=>t.next(o));n&&n.observe(A,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(A,{observer:n,stream:t,count:1})}return this._observedElements.get(A).stream})}_unobserveElement(A){this._observedElements.has(A)&&(this._observedElements.get(A).count--,this._observedElements.get(A).count||this._cleanupObserver(A))}_cleanupObserver(A){if(this._observedElements.has(A)){let{observer:t,stream:n}=this._observedElements.get(A);t&&t.disconnect(),n.complete(),this._observedElements.delete(A)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),pL=(()=>{class i{_contentObserver=w(uL);_elementRef=w(ce);event=new FA;get disabled(){return this._disabled}set disabled(A){this._disabled=A,this._disabled?this._unsubscribe():this._subscribe()}_disabled=!1;get debounce(){return this._debounce}set debounce(A){this._debounce=qs(A),this._subscribe()}_debounce;_currentSubscription=null;constructor(){}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();let A=this._contentObserver.observe(this._elementRef);this._currentSubscription=(this.debounce?A.pipe(Os(this.debounce)):A).subscribe(this.event)}_unsubscribe(){this._currentSubscription?.unsubscribe()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkObserveContent",""]],inputs:{disabled:[2,"cdkObserveContentDisabled","disabled",Qe],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]})}return i})(),N3=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({providers:[QL]})}return i})();var UI=(()=>{class i{_platform=w(Qi);constructor(){}isDisabled(A){return A.hasAttribute("disabled")}isVisible(A){return WAA(A)&&getComputedStyle(A).visibility==="visible"}isTabbable(A){if(!this._platform.isBrowser)return!1;let t=qAA(neA(A));if(t&&(fL(t)===-1||!this.isVisible(t)))return!1;let n=A.nodeName.toLowerCase(),o=fL(A);return A.hasAttribute("contenteditable")?o!==-1:n==="iframe"||n==="object"||this._platform.WEBKIT&&this._platform.IOS&&!teA(A)?!1:n==="audio"?A.hasAttribute("controls")?o!==-1:!1:n==="video"?o===-1?!1:o!==null?!0:this._platform.FIREFOX||A.hasAttribute("controls"):A.tabIndex>=0}isFocusable(A,t){return ieA(A)&&!this.isDisabled(A)&&(t?.ignoreVisibility||this.isVisible(A))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function qAA(i){try{return i.frameElement}catch(e){return null}}function WAA(i){return!!(i.offsetWidth||i.offsetHeight||typeof i.getClientRects=="function"&&i.getClientRects().length)}function ZAA(i){let e=i.nodeName.toLowerCase();return e==="input"||e==="select"||e==="button"||e==="textarea"}function XAA(i){return AeA(i)&&i.type=="hidden"}function $AA(i){return eeA(i)&&i.hasAttribute("href")}function AeA(i){return i.nodeName.toLowerCase()=="input"}function eeA(i){return i.nodeName.toLowerCase()=="a"}function yL(i){if(!i.hasAttribute("tabindex")||i.tabIndex===void 0)return!1;let e=i.getAttribute("tabindex");return!!(e&&!isNaN(parseInt(e,10)))}function fL(i){if(!yL(i))return null;let e=parseInt(i.getAttribute("tabindex")||"",10);return isNaN(e)?-1:e}function teA(i){let e=i.nodeName.toLowerCase(),A=e==="input"&&i.type;return A==="text"||A==="password"||e==="select"||e==="textarea"}function ieA(i){return XAA(i)?!1:ZAA(i)||$AA(i)||i.hasAttribute("contenteditable")||yL(i)}function neA(i){return i.ownerDocument&&i.ownerDocument.defaultView||window}var F3=class{_element;_checker;_ngZone;_document;_injector;_startAnchor=null;_endAnchor=null;_hasAttached=!1;startAnchorListener=()=>this.focusLastTabbableElement();endAnchorListener=()=>this.focusFirstTabbableElement();get enabled(){return this._enabled}set enabled(e){this._enabled=e,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}_enabled=!0;constructor(e,A,t,n,o=!1,a){this._element=e,this._checker=A,this._ngZone=t,this._document=n,this._injector=a,o||this.attachAnchors()}destroy(){let e=this._startAnchor,A=this._endAnchor;e&&(e.removeEventListener("focus",this.startAnchorListener),e.remove()),A&&(A.removeEventListener("focus",this.endAnchorListener),A.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return this._hasAttached?!0:(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(e){return new Promise(A=>{this._executeOnStable(()=>A(this.focusInitialElement(e)))})}focusFirstTabbableElementWhenReady(e){return new Promise(A=>{this._executeOnStable(()=>A(this.focusFirstTabbableElement(e)))})}focusLastTabbableElementWhenReady(e){return new Promise(A=>{this._executeOnStable(()=>A(this.focusLastTabbableElement(e)))})}_getRegionBoundary(e){let A=this._element.querySelectorAll(`[cdk-focus-region-${e}], [cdkFocusRegion${e}], [cdk-focus-${e}]`);return e=="start"?A.length?A[0]:this._getFirstTabbableElement(this._element):A.length?A[A.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(e){let A=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(A){if(!this._checker.isFocusable(A)){let t=this._getFirstTabbableElement(A);return t?.focus(e),!!t}return A.focus(e),!0}return this.focusFirstTabbableElement(e)}focusFirstTabbableElement(e){let A=this._getRegionBoundary("start");return A&&A.focus(e),!!A}focusLastTabbableElement(e){let A=this._getRegionBoundary("end");return A&&A.focus(e),!!A}hasAttached(){return this._hasAttached}_getFirstTabbableElement(e){if(this._checker.isFocusable(e)&&this._checker.isTabbable(e))return e;let A=e.children;for(let t=0;t=0;t--){let n=A[t].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(A[t]):null;if(n)return n}return null}_createAnchor(){let e=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,e),e.classList.add("cdk-visually-hidden"),e.classList.add("cdk-focus-trap-anchor"),e.setAttribute("aria-hidden","true"),e}_toggleAnchorTabIndex(e,A){e?A.setAttribute("tabindex","0"):A.removeAttribute("tabindex")}toggleAnchors(e){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}_executeOnStable(e){this._injector?ao(e,{injector:this._injector}):setTimeout(e)}},BQ=(()=>{class i{_checker=w(UI);_ngZone=w(We);_document=w(ci);_injector=w(St);constructor(){w(Eo).load(ZC)}create(A,t=!1){return new F3(A,this._checker,this._ngZone,this._document,t,this._injector)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var DL=new MA("liveAnnouncerElement",{providedIn:"root",factory:()=>null}),vL=new MA("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),oeA=0,hQ=(()=>{class i{_ngZone=w(We);_defaultOptions=w(vL,{optional:!0});_liveElement;_document=w(ci);_sanitizer=w(jC);_previousTimeout;_currentPromise;_currentResolve;constructor(){let A=w(DL,{optional:!0});this._liveElement=A||this._createLiveElement()}announce(A,...t){let n=this._defaultOptions,o,a;return t.length===1&&typeof t[0]=="number"?a=t[0]:[o,a]=t,this.clear(),clearTimeout(this._previousTimeout),o||(o=n&&n.politeness?n.politeness:"polite"),a==null&&n&&(a=n.duration),this._liveElement.setAttribute("aria-live",o),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(r=>this._currentResolve=r)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{!A||typeof A=="string"?this._liveElement.textContent=A:BL(this._liveElement,A,this._sanitizer),typeof a=="number"&&(this._previousTimeout=setTimeout(()=>this.clear(),a)),this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){let A="cdk-live-announcer-element",t=this._document.getElementsByClassName(A),n=this._document.createElement("div");for(let o=0;o .cdk-overlay-container [aria-modal="true"]');for(let n=0;n{class i{_platform=w(Qi);_hasCheckedHighContrastMode=!1;_document=w(ci);_breakpointSubscription;constructor(){this._breakpointSubscription=w(IQ).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return XC.NONE;let A=this._document.createElement("div");A.style.backgroundColor="rgb(1,2,3)",A.style.position="absolute",this._document.body.appendChild(A);let t=this._document.defaultView||window,n=t&&t.getComputedStyle?t.getComputedStyle(A):null,o=(n&&n.backgroundColor||"").replace(/ /g,"");switch(A.remove(),o){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return XC.WHITE_ON_BLACK;case"rgb(255,255,255)":case"rgb(255,250,239)":return XC.BLACK_ON_WHITE}return XC.NONE}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){let A=this._document.body.classList;A.remove(uv,mL,wL),this._hasCheckedHighContrastMode=!0;let t=this.getHighContrastMode();t===XC.BLACK_ON_WHITE?A.add(uv,mL):t===XC.WHITE_ON_BLACK&&A.add(uv,wL)}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),EQ=(()=>{class i{constructor(){w(bL)._applyBodyHighContrastModeCssClasses()}static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[N3]})}return i})();var pv={},Dn=class i{_appId=w(t3);static _infix=`a${Math.floor(Math.random()*1e5).toString()}`;getId(e,A=!1){return this._appId!=="ng"&&(e+=this._appId),pv.hasOwnProperty(e)||(pv[e]=0),`${e}${A?i._infix+"-":""}${pv[e]++}`}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var aeA=200,L3=class{_letterKeyStream=new ne;_items=[];_selectedItemIndex=-1;_pressedLetters=[];_skipPredicateFn;_selectedItem=new ne;selectedItem=this._selectedItem;constructor(e,A){let t=typeof A?.debounceInterval=="number"?A.debounceInterval:aeA;A?.skipPredicate&&(this._skipPredicateFn=A.skipPredicate),this.setItems(e),this._setupKeyHandler(t)}destroy(){this._pressedLetters=[],this._letterKeyStream.complete(),this._selectedItem.complete()}setCurrentSelectedItemIndex(e){this._selectedItemIndex=e}setItems(e){this._items=e}handleKey(e){let A=e.keyCode;e.key&&e.key.length===1?this._letterKeyStream.next(e.key.toLocaleUpperCase()):(A>=65&&A<=90||A>=48&&A<=57)&&this._letterKeyStream.next(String.fromCharCode(A))}isTyping(){return this._pressedLetters.length>0}reset(){this._pressedLetters=[]}_setupKeyHandler(e){this._letterKeyStream.pipe(mi(A=>this._pressedLetters.push(A)),Os(e),Bt(()=>this._pressedLetters.length>0),Se(()=>this._pressedLetters.join("").toLocaleUpperCase())).subscribe(A=>{for(let t=1;ti[A]):i.altKey||i.shiftKey||i.ctrlKey||i.metaKey}var TI=class{_items;_activeItemIndex=mA(-1);_activeItem=mA(null);_wrap=!1;_typeaheadSubscription=Oo.EMPTY;_itemChangesSubscription;_vertical=!0;_horizontal=null;_allowedModifierKeys=[];_homeAndEnd=!1;_pageUpAndDown={enabled:!1,delta:10};_effectRef;_typeahead;_skipPredicateFn=e=>e.disabled;constructor(e,A){this._items=e,e instanceof Rg?this._itemChangesSubscription=e.changes.subscribe(t=>this._itemsChanged(t.toArray())):M1(e)&&(this._effectRef=Fn(()=>this._itemsChanged(e()),{injector:A}))}tabOut=new ne;change=new ne;skipPredicate(e){return this._skipPredicateFn=e,this}withWrap(e=!0){return this._wrap=e,this}withVerticalOrientation(e=!0){return this._vertical=e,this}withHorizontalOrientation(e){return this._horizontal=e,this}withAllowedModifierKeys(e){return this._allowedModifierKeys=e,this}withTypeAhead(e=200){this._typeaheadSubscription.unsubscribe();let A=this._getItemsArray();return this._typeahead=new L3(A,{debounceInterval:typeof e=="number"?e:void 0,skipPredicate:t=>this._skipPredicateFn(t)}),this._typeaheadSubscription=this._typeahead.selectedItem.subscribe(t=>{this.setActiveItem(t)}),this}cancelTypeahead(){return this._typeahead?.reset(),this}withHomeAndEnd(e=!0){return this._homeAndEnd=e,this}withPageUpDown(e=!0,A=10){return this._pageUpAndDown={enabled:e,delta:A},this}setActiveItem(e){let A=this._activeItem();this.updateActiveItem(e),this._activeItem()!==A&&this.change.next(this._activeItemIndex())}onKeydown(e){let A=e.keyCode,n=["altKey","ctrlKey","metaKey","shiftKey"].every(o=>!e[o]||this._allowedModifierKeys.indexOf(o)>-1);switch(A){case 9:this.tabOut.next();return;case 40:if(this._vertical&&n){this.setNextItemActive();break}else return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}else return;case 39:if(this._horizontal&&n){this._horizontal==="rtl"?this.setPreviousItemActive():this.setNextItemActive();break}else return;case 37:if(this._horizontal&&n){this._horizontal==="rtl"?this.setNextItemActive():this.setPreviousItemActive();break}else return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}else return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}else return;case 33:if(this._pageUpAndDown.enabled&&n){let o=this._activeItemIndex()-this._pageUpAndDown.delta;this._setActiveItemByIndex(o>0?o:0,1);break}else return;case 34:if(this._pageUpAndDown.enabled&&n){let o=this._activeItemIndex()+this._pageUpAndDown.delta,a=this._getItemsArray().length;this._setActiveItemByIndex(o-1&&t!==this._activeItemIndex()&&(this._activeItemIndex.set(t),this._typeahead?.setCurrentSelectedItemIndex(t))}}};var QQ=class extends TI{setActiveItem(e){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(e),this.activeItem&&this.activeItem.setActiveStyles()}};var O0=class extends TI{_origin="program";setFocusOrigin(e){return this._origin=e,this}setActiveItem(e){super.setActiveItem(e),this.activeItem&&this.activeItem.focus(this._origin)}};var kL=" ";function wv(i,e,A){let t=K3(i,e);A=A.trim(),!t.some(n=>n.trim()===A)&&(t.push(A),i.setAttribute(e,t.join(kL)))}function U3(i,e,A){let t=K3(i,e);A=A.trim();let n=t.filter(o=>o!==A);n.length?i.setAttribute(e,n.join(kL)):i.removeAttribute(e)}function K3(i,e){return i.getAttribute(e)?.match(/\S+/g)??[]}var _L="cdk-describedby-message",G3="cdk-describedby-host",mv=0,xL=(()=>{class i{_platform=w(Qi);_document=w(ci);_messageRegistry=new Map;_messagesContainer=null;_id=`${mv++}`;constructor(){w(Eo).load(ZC),this._id=w(t3)+"-"+mv++}describe(A,t,n){if(!this._canBeDescribed(A,t))return;let o=fv(t,n);typeof t!="string"?(SL(t,this._id),this._messageRegistry.set(o,{messageElement:t,referenceCount:0})):this._messageRegistry.has(o)||this._createMessageElement(t,n),this._isElementDescribedByMessage(A,o)||this._addMessageReference(A,o)}removeDescription(A,t,n){if(!t||!this._isElementNode(A))return;let o=fv(t,n);if(this._isElementDescribedByMessage(A,o)&&this._removeMessageReference(A,o),typeof t=="string"){let a=this._messageRegistry.get(o);a&&a.referenceCount===0&&this._deleteMessageElement(o)}this._messagesContainer?.childNodes.length===0&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){let A=this._document.querySelectorAll(`[${G3}="${this._id}"]`);for(let t=0;tn.indexOf(_L)!=0);A.setAttribute("aria-describedby",t.join(" "))}_addMessageReference(A,t){let n=this._messageRegistry.get(t);wv(A,"aria-describedby",n.messageElement.id),A.setAttribute(G3,this._id),n.referenceCount++}_removeMessageReference(A,t){let n=this._messageRegistry.get(t);n.referenceCount--,U3(A,"aria-describedby",n.messageElement.id),A.removeAttribute(G3)}_isElementDescribedByMessage(A,t){let n=K3(A,"aria-describedby"),o=this._messageRegistry.get(t),a=o&&o.messageElement.id;return!!a&&n.indexOf(a)!=-1}_canBeDescribed(A,t){if(!this._isElementNode(A))return!1;if(t&&typeof t=="object")return!0;let n=t==null?"":`${t}`.trim(),o=A.getAttribute("aria-label");return n?!o||o.trim()!==n:!1}_isElementNode(A){return A.nodeType===this._document.ELEMENT_NODE}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function fv(i,e){return typeof i=="string"?`${e||""}/${i}`:i}function SL(i,e){i.id||(i.id=`${_L}-${e}-${mv++}`)}var Lg=(function(i){return i[i.NORMAL=0]="NORMAL",i[i.NEGATED=1]="NEGATED",i[i.INVERTED=2]="INVERTED",i})(Lg||{}),T3,O1;function O3(){if(O1==null){if(typeof document!="object"||!document||typeof Element!="function"||!Element)return O1=!1,O1;if(document.documentElement?.style&&"scrollBehavior"in document.documentElement.style)O1=!0;else{let i=Element.prototype.scrollTo;i?O1=!/\{\s*\[native code\]\s*\}/.test(i.toString()):O1=!1}}return O1}function OI(){if(typeof document!="object"||!document)return Lg.NORMAL;if(T3==null){let i=document.createElement("div"),e=i.style;i.dir="rtl",e.width="1px",e.overflow="auto",e.visibility="hidden",e.pointerEvents="none",e.position="absolute";let A=document.createElement("div"),t=A.style;t.width="2px",t.height="1px",i.appendChild(A),document.body.appendChild(i),T3=Lg.NORMAL,i.scrollLeft===0&&(i.scrollLeft=1,T3=i.scrollLeft===0?Lg.NEGATED:Lg.INVERTED),i.remove()}return T3}function yv(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}var JI,RL=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function Dv(){if(JI)return JI;if(typeof document!="object"||!document)return JI=new Set(RL),JI;let i=document.createElement("input");return JI=new Set(RL.filter(e=>(i.setAttribute("type",e),i.type===e))),JI}var NL={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"};var seA=new MA("MATERIAL_ANIMATIONS"),FL=null;function uQ(){return w(seA,{optional:!0})?.animationsDisabled||w(b1,{optional:!0})==="NoopAnimations"?"di-disabled":(FL??=w(KI).matchMedia("(prefers-reduced-motion)").matches,FL?"reduced-motion":"enabled")}function In(){return uQ()!=="enabled"}function Wa(i){return i==null?"":typeof i=="string"?i:`${i}px`}function kr(i){return i!=null&&`${i}`!="false"}var _s=(function(i){return i[i.FADING_IN=0]="FADING_IN",i[i.VISIBLE=1]="VISIBLE",i[i.FADING_OUT=2]="FADING_OUT",i[i.HIDDEN=3]="HIDDEN",i})(_s||{}),vv=class{_renderer;element;config;_animationForciblyDisabledThroughCss;state=_s.HIDDEN;constructor(e,A,t,n=!1){this._renderer=e,this.element=A,this.config=t,this._animationForciblyDisabledThroughCss=n}fadeOut(){this._renderer.fadeOutRipple(this)}},LL=LI({passive:!0,capture:!0}),bv=class{_events=new Map;addHandler(e,A,t,n){let o=this._events.get(A);if(o){let a=o.get(t);a?a.add(n):o.set(t,new Set([n]))}else this._events.set(A,new Map([[t,new Set([n])]])),e.runOutsideAngular(()=>{document.addEventListener(A,this._delegateEventHandler,LL)})}removeHandler(e,A,t){let n=this._events.get(e);if(!n)return;let o=n.get(A);o&&(o.delete(t),o.size===0&&n.delete(A),n.size===0&&(this._events.delete(e),document.removeEventListener(e,this._delegateEventHandler,LL)))}_delegateEventHandler=e=>{let A=Pr(e);A&&this._events.get(e.type)?.forEach((t,n)=>{(n===A||n.contains(A))&&t.forEach(o=>o.handleEvent(e))})}},pQ={enterDuration:225,exitDuration:150},leA=800,GL=LI({passive:!0,capture:!0}),KL=["mousedown","touchstart"],UL=["mouseup","mouseleave","touchend","touchcancel"],geA=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["ng-component"]],hostAttrs:["mat-ripple-style-loader",""],decls:0,vars:0,template:function(t,n){},styles:[`.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale3d(0, 0, 0);background-color:var(--mat-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface) 10%, transparent))}@media(forced-colors: active){.mat-ripple-element{display:none}}.cdk-drag-preview .mat-ripple-element,.cdk-drag-placeholder .mat-ripple-element{display:none} -`],encapsulation:2,changeDetection:0})}return i})(),fQ=class i{_target;_ngZone;_platform;_containerElement;_triggerElement=null;_isPointerDown=!1;_activeRipples=new Map;_mostRecentTransientRipple=null;_lastTouchStartEvent;_pointerUpEventsRegistered=!1;_containerRect=null;static _eventManager=new bv;constructor(e,A,t,n,o){this._target=e,this._ngZone=A,this._platform=n,n.isBrowser&&(this._containerElement=ks(t)),o&&o.get(Eo).load(geA)}fadeInRipple(e,A,t={}){let n=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),o=P(P({},pQ),t.animation);t.centered&&(e=n.left+n.width/2,A=n.top+n.height/2);let a=t.radius||ceA(e,A,n),r=e-n.left,s=A-n.top,l=o.enterDuration,g=document.createElement("div");g.classList.add("mat-ripple-element"),g.style.left=`${r-a}px`,g.style.top=`${s-a}px`,g.style.height=`${a*2}px`,g.style.width=`${a*2}px`,t.color!=null&&(g.style.backgroundColor=t.color),g.style.transitionDuration=`${l}ms`,this._containerElement.appendChild(g);let C=window.getComputedStyle(g),d=C.transitionProperty,B=C.transitionDuration,u=d==="none"||B==="0s"||B==="0s, 0s"||n.width===0&&n.height===0,E=new vv(this,g,t,u);g.style.transform="scale3d(1, 1, 1)",E.state=_s.FADING_IN,t.persistent||(this._mostRecentTransientRipple=E);let f=null;return!u&&(l||o.exitDuration)&&this._ngZone.runOutsideAngular(()=>{let m=()=>{f&&(f.fallbackTimer=null),clearTimeout(S),this._finishRippleTransition(E)},v=()=>this._destroyRipple(E),S=setTimeout(v,l+100);g.addEventListener("transitionend",m),g.addEventListener("transitioncancel",v),f={onTransitionEnd:m,onTransitionCancel:v,fallbackTimer:S}}),this._activeRipples.set(E,f),(u||!l)&&this._finishRippleTransition(E),E}fadeOutRipple(e){if(e.state===_s.FADING_OUT||e.state===_s.HIDDEN)return;let A=e.element,t=P(P({},pQ),e.config.animation);A.style.transitionDuration=`${t.exitDuration}ms`,A.style.opacity="0",e.state=_s.FADING_OUT,(e._animationForciblyDisabledThroughCss||!t.exitDuration)&&this._finishRippleTransition(e)}fadeOutAll(){this._getActiveRipples().forEach(e=>e.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(e=>{e.config.persistent||e.fadeOut()})}setupTriggerEvents(e){let A=ks(e);!this._platform.isBrowser||!A||A===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=A,KL.forEach(t=>{i._eventManager.addHandler(this._ngZone,t,A,this)}))}handleEvent(e){e.type==="mousedown"?this._onMousedown(e):e.type==="touchstart"?this._onTouchStart(e):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{UL.forEach(A=>{this._triggerElement.addEventListener(A,this,GL)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(e){e.state===_s.FADING_IN?this._startFadeOutTransition(e):e.state===_s.FADING_OUT&&this._destroyRipple(e)}_startFadeOutTransition(e){let A=e===this._mostRecentTransientRipple,{persistent:t}=e.config;e.state=_s.VISIBLE,!t&&(!A||!this._isPointerDown)&&e.fadeOut()}_destroyRipple(e){let A=this._activeRipples.get(e)??null;this._activeRipples.delete(e),this._activeRipples.size||(this._containerRect=null),e===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),e.state=_s.HIDDEN,A!==null&&(e.element.removeEventListener("transitionend",A.onTransitionEnd),e.element.removeEventListener("transitioncancel",A.onTransitionCancel),A.fallbackTimer!==null&&clearTimeout(A.fallbackTimer)),e.element.remove()}_onMousedown(e){let A=R1(e),t=this._lastTouchStartEvent&&Date.now(){let A=e.state===_s.VISIBLE||e.config.terminateOnPointerUp&&e.state===_s.FADING_IN;!e.config.persistent&&A&&e.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){let e=this._triggerElement;e&&(KL.forEach(A=>i._eventManager.removeHandler(A,e,this)),this._pointerUpEventsRegistered&&(UL.forEach(A=>e.removeEventListener(A,this,GL)),this._pointerUpEventsRegistered=!1))}};function ceA(i,e,A){let t=Math.max(Math.abs(i-A.left),Math.abs(i-A.right)),n=Math.max(Math.abs(e-A.top),Math.abs(e-A.bottom));return Math.sqrt(t*t+n*n)}var $C=new MA("mat-ripple-global-options"),Cs=(()=>{class i{_elementRef=w(ce);_animationsDisabled=In();color;unbounded=!1;centered=!1;radius=0;animation;get disabled(){return this._disabled}set disabled(A){A&&this.fadeOutAllNonPersistent(),this._disabled=A,this._setupTriggerEventsIfEnabled()}_disabled=!1;get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(A){this._trigger=A,this._setupTriggerEventsIfEnabled()}_trigger;_rippleRenderer;_globalOptions;_isInitialized=!1;constructor(){let A=w(We),t=w(Qi),n=w($C,{optional:!0}),o=w(St);this._globalOptions=n||{},this._rippleRenderer=new fQ(this,A,this._elementRef,t,o)}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:P(P(P({},this._globalOptions.animation),this._animationsDisabled?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(A,t=0,n){return typeof A=="number"?this._rippleRenderer.fadeInRipple(A,t,P(P({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,P(P({},this.rippleConfig),A))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(t,n){t&2&&_A("mat-ripple-unbounded",n.unbounded)},inputs:{color:[0,"matRippleColor","color"],unbounded:[0,"matRippleUnbounded","unbounded"],centered:[0,"matRippleCentered","centered"],radius:[0,"matRippleRadius","radius"],animation:[0,"matRippleAnimation","animation"],disabled:[0,"matRippleDisabled","disabled"],trigger:[0,"matRippleTrigger","trigger"]},exportAs:["matRipple"]})}return i})();var CeA={capture:!0},deA=["focus","mousedown","mouseenter","touchstart"],Mv="mat-ripple-loader-uninitialized",Sv="mat-ripple-loader-class-name",TL="mat-ripple-loader-centered",J3="mat-ripple-loader-disabled",Y3=(()=>{class i{_document=w(ci);_animationsDisabled=In();_globalRippleOptions=w($C,{optional:!0});_platform=w(Qi);_ngZone=w(We);_injector=w(St);_eventCleanups;_hosts=new Map;constructor(){let A=w(zr).createRenderer(null,null);this._eventCleanups=this._ngZone.runOutsideAngular(()=>deA.map(t=>A.listen(this._document,t,this._onInteraction,CeA)))}ngOnDestroy(){let A=this._hosts.keys();for(let t of A)this.destroyRipple(t);this._eventCleanups.forEach(t=>t())}configureRipple(A,t){A.setAttribute(Mv,this._globalRippleOptions?.namespace??""),(t.className||!A.hasAttribute(Sv))&&A.setAttribute(Sv,t.className||""),t.centered&&A.setAttribute(TL,""),t.disabled&&A.setAttribute(J3,"")}setDisabled(A,t){let n=this._hosts.get(A);n?(n.target.rippleDisabled=t,!t&&!n.hasSetUpEvents&&(n.hasSetUpEvents=!0,n.renderer.setupTriggerEvents(A))):t?A.setAttribute(J3,""):A.removeAttribute(J3)}_onInteraction=A=>{let t=Pr(A);if(t instanceof HTMLElement){let n=t.closest(`[${Mv}="${this._globalRippleOptions?.namespace??""}"]`);n&&this._createRipple(n)}};_createRipple(A){if(!this._document||this._hosts.has(A))return;A.querySelector(".mat-ripple")?.remove();let t=this._document.createElement("span");t.classList.add("mat-ripple",A.getAttribute(Sv)),A.append(t);let n=this._globalRippleOptions,o=this._animationsDisabled?0:n?.animation?.enterDuration??pQ.enterDuration,a=this._animationsDisabled?0:n?.animation?.exitDuration??pQ.exitDuration,r={rippleDisabled:this._animationsDisabled||n?.disabled||A.hasAttribute(J3),rippleConfig:{centered:A.hasAttribute(TL),terminateOnPointerUp:n?.terminateOnPointerUp,animation:{enterDuration:o,exitDuration:a}}},s=new fQ(r,this._ngZone,t,this._platform,this._injector),l=!r.rippleDisabled;l&&s.setupTriggerEvents(A),this._hosts.set(A,{target:r,renderer:s,hasSetUpEvents:l}),A.removeAttribute(Mv)}destroyRipple(A){let t=this._hosts.get(A);t&&(t.renderer._removeTriggerEvents(),this._hosts.delete(A))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Qr=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["structural-styles"]],decls:0,vars:0,template:function(t,n){},styles:[`.mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border-width:var(--mat-focus-indicator-border-width, 3px);border-style:var(--mat-focus-indicator-border-style, solid);border-color:var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus-visible::before{content:""}@media(forced-colors: active){html{--mat-focus-indicator-display: block}} -`],encapsulation:2,changeDetection:0})}return i})();var IeA=["mat-icon-button",""],BeA=["*"],heA=new MA("MAT_BUTTON_CONFIG");function OL(i){return i==null?void 0:yn(i)}var kv=(()=>{class i{_elementRef=w(ce);_ngZone=w(We);_animationsDisabled=In();_config=w(heA,{optional:!0});_focusMonitor=w(rr);_cleanupClick;_renderer=w(on);_rippleLoader=w(Y3);_isAnchor;_isFab=!1;color;get disableRipple(){return this._disableRipple}set disableRipple(A){this._disableRipple=A,this._updateRippleDisabled()}_disableRipple=!1;get disabled(){return this._disabled}set disabled(A){this._disabled=A,this._updateRippleDisabled()}_disabled=!1;ariaDisabled;disabledInteractive;tabIndex;set _tabindex(A){this.tabIndex=A}constructor(){w(Eo).load(Qr);let A=this._elementRef.nativeElement;this._isAnchor=A.tagName==="A",this.disabledInteractive=this._config?.disabledInteractive??!1,this.color=this._config?.color??null,this._rippleLoader?.configureRipple(A,{className:"mat-mdc-button-ripple"})}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0),this._isAnchor&&this._setupAsAnchor()}ngOnDestroy(){this._cleanupClick?.(),this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement)}focus(A="program",t){A?this._focusMonitor.focusVia(this._elementRef.nativeElement,A,t):this._elementRef.nativeElement.focus(t)}_getAriaDisabled(){return this.ariaDisabled!=null?this.ariaDisabled:this._isAnchor?this.disabled||null:this.disabled&&this.disabledInteractive?!0:null}_getDisabledAttribute(){return this.disabledInteractive||!this.disabled?null:!0}_updateRippleDisabled(){this._rippleLoader?.setDisabled(this._elementRef.nativeElement,this.disableRipple||this.disabled)}_getTabIndex(){return this._isAnchor?this.disabled&&!this.disabledInteractive?-1:this.tabIndex:this.tabIndex}_setupAsAnchor(){this._cleanupClick=this._ngZone.runOutsideAngular(()=>this._renderer.listen(this._elementRef.nativeElement,"click",A=>{this.disabled&&(A.preventDefault(),A.stopImmediatePropagation())}))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,hostAttrs:[1,"mat-mdc-button-base"],hostVars:13,hostBindings:function(t,n){t&2&&(ie("disabled",n._getDisabledAttribute())("aria-disabled",n._getAriaDisabled())("tabindex",n._getTabIndex()),Ao(n.color?"mat-"+n.color:""),_A("mat-mdc-button-disabled",n.disabled)("mat-mdc-button-disabled-interactive",n.disabledInteractive)("mat-unthemed",!n.color)("_mat-animation-noopable",n._animationsDisabled))},inputs:{color:"color",disableRipple:[2,"disableRipple","disableRipple",Qe],disabled:[2,"disabled","disabled",Qe],ariaDisabled:[2,"aria-disabled","ariaDisabled",Qe],disabledInteractive:[2,"disabledInteractive","disabledInteractive",Qe],tabIndex:[2,"tabIndex","tabIndex",OL],_tabindex:[2,"tabindex","_tabindex",OL]}})}return i})(),yi=(()=>{class i extends kv{constructor(){super(),this._rippleLoader.configureRipple(this._elementRef.nativeElement,{centered:!0})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["button","mat-icon-button",""],["a","mat-icon-button",""],["button","matIconButton",""],["a","matIconButton",""]],hostAttrs:[1,"mdc-icon-button","mat-mdc-icon-button"],exportAs:["matButton","matAnchor"],features:[bt],attrs:IeA,ngContentSelectors:BeA,decls:4,vars:0,consts:[[1,"mat-mdc-button-persistent-ripple","mdc-icon-button__ripple"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(t,n){t&1&&(Ot(),$n(0,"span",0),Ze(1),$n(2,"span",1)(3,"span",2))},styles:[`.mat-mdc-icon-button{-webkit-user-select:none;user-select:none;display:inline-block;position:relative;box-sizing:border-box;border:none;outline:none;background-color:rgba(0,0,0,0);fill:currentColor;text-decoration:none;cursor:pointer;z-index:0;overflow:visible;border-radius:var(--mat-icon-button-container-shape, var(--mat-sys-corner-full, 50%));flex-shrink:0;text-align:center;width:var(--mat-icon-button-state-layer-size, 40px);height:var(--mat-icon-button-state-layer-size, 40px);padding:calc(calc(var(--mat-icon-button-state-layer-size, 40px) - var(--mat-icon-button-icon-size, 24px)) / 2);font-size:var(--mat-icon-button-icon-size, 24px);color:var(--mat-icon-button-icon-color, var(--mat-sys-on-surface-variant));-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-icon-button .mat-mdc-button-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-icon-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-icon-button .mdc-button__label,.mat-mdc-icon-button .mat-icon{z-index:1;position:relative}.mat-mdc-icon-button .mat-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit}.mat-mdc-icon-button:focus-visible>.mat-focus-indicator::before{content:"";border-radius:inherit}.mat-mdc-icon-button .mat-ripple-element{background-color:var(--mat-icon-button-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface-variant) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-icon-button-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-icon-button-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-icon-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-icon-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-icon-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-icon-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-icon-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-icon-button-touch-target-size, 48px);display:var(--mat-icon-button-touch-target-display, block);left:50%;width:var(--mat-icon-button-touch-target-size, 48px);transform:translate(-50%, -50%)}.mat-mdc-icon-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-icon-button[disabled],.mat-mdc-icon-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-icon-button-disabled-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-icon-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-icon-button img,.mat-mdc-icon-button svg{width:var(--mat-icon-button-icon-size, 24px);height:var(--mat-icon-button-icon-size, 24px);vertical-align:baseline}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple{border-radius:var(--mat-icon-button-container-shape, var(--mat-sys-corner-full, 50%))}.mat-mdc-icon-button[hidden]{display:none}.mat-mdc-icon-button.mat-unthemed:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-primary:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-accent:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-warn:not(.mdc-ripple-upgraded):focus::before{background:rgba(0,0,0,0);opacity:1} -`,`@media(forced-colors: active){.mat-mdc-button:not(.mdc-button--outlined),.mat-mdc-unelevated-button:not(.mdc-button--outlined),.mat-mdc-raised-button:not(.mdc-button--outlined),.mat-mdc-outlined-button:not(.mdc-button--outlined),.mat-mdc-button-base.mat-tonal-button,.mat-mdc-icon-button.mat-mdc-icon-button,.mat-mdc-outlined-button .mdc-button__ripple{outline:solid 1px}} -`],encapsulation:2,changeDetection:0})}return i})();var EeA=new MA("cdk-dir-doc",{providedIn:"root",factory:()=>w(ci)}),QeA=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function JL(i){let e=i?.toLowerCase()||"";return e==="auto"&&typeof navigator<"u"&&navigator?.language?QeA.test(navigator.language)?"rtl":"ltr":e==="rtl"?"rtl":"ltr"}var No=(()=>{class i{get value(){return this.valueSignal()}valueSignal=mA("ltr");change=new FA;constructor(){let A=w(EeA,{optional:!0});if(A){let t=A.body?A.body.dir:null,n=A.documentElement?A.documentElement.dir:null;this.valueSignal.set(JL(t||n||"ltr"))}}ngOnDestroy(){this.change.complete()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Di=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({})}return i})();var Jc=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();var ueA=["matButton",""],peA=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]]],feA=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]"];var YL=new Map([["text",["mat-mdc-button"]],["filled",["mdc-button--unelevated","mat-mdc-unelevated-button"]],["elevated",["mdc-button--raised","mat-mdc-raised-button"]],["outlined",["mdc-button--outlined","mat-mdc-outlined-button"]],["tonal",["mat-tonal-button"]]]),ki=(()=>{class i extends kv{get appearance(){return this._appearance}set appearance(A){this.setAppearance(A||this._config?.defaultAppearance||"text")}_appearance=null;constructor(){super();let A=meA(this._elementRef.nativeElement);A&&this.setAppearance(A)}setAppearance(A){if(A===this._appearance)return;let t=this._elementRef.nativeElement.classList,n=this._appearance?YL.get(this._appearance):null,o=YL.get(A);n&&t.remove(...n),t.add(...o),this._appearance=A}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["button","matButton",""],["a","matButton",""],["button","mat-button",""],["button","mat-raised-button",""],["button","mat-flat-button",""],["button","mat-stroked-button",""],["a","mat-button",""],["a","mat-raised-button",""],["a","mat-flat-button",""],["a","mat-stroked-button",""]],hostAttrs:[1,"mdc-button"],inputs:{appearance:[0,"matButton","appearance"]},exportAs:["matButton","matAnchor"],features:[bt],attrs:ueA,ngContentSelectors:feA,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(t,n){t&1&&(Ot(peA),$n(0,"span",0),Ze(1),Ln(2,"span",1),Ze(3,1),Xn(),Ze(4,2),$n(5,"span",2)(6,"span",3)),t&2&&_A("mdc-button__ripple",!n._isFab)("mdc-fab__ripple",n._isFab)},styles:[`.mat-mdc-button-base{text-decoration:none}.mat-mdc-button-base .mat-icon{min-height:fit-content;flex-shrink:0}@media(hover: none){.mat-mdc-button-base:hover>span.mat-mdc-button-persistent-ripple::before{opacity:0}}.mdc-button{-webkit-user-select:none;user-select:none;position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:64px;border:none;outline:none;line-height:inherit;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:rgba(0,0,0,0);padding:0 8px}.mdc-button::-moz-focus-inner{padding:0;border:0}.mdc-button:active{outline:none}.mdc-button:hover{cursor:pointer}.mdc-button:disabled{cursor:default;pointer-events:none}.mdc-button[hidden]{display:none}.mdc-button .mdc-button__label{position:relative}.mat-mdc-button{padding:0 var(--mat-button-text-horizontal-padding, 12px);height:var(--mat-button-text-container-height, 40px);font-family:var(--mat-button-text-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-text-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-text-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-text-label-text-transform);font-weight:var(--mat-button-text-label-text-weight, var(--mat-sys-label-large-weight))}.mat-mdc-button,.mat-mdc-button .mdc-button__ripple{border-radius:var(--mat-button-text-container-shape, var(--mat-sys-corner-full))}.mat-mdc-button:not(:disabled){color:var(--mat-button-text-label-text-color, var(--mat-sys-primary))}.mat-mdc-button[disabled],.mat-mdc-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-text-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-button:has(.material-icons,mat-icon,[matButtonIcon]){padding:0 var(--mat-button-text-with-icon-horizontal-padding, 16px)}.mat-mdc-button>.mat-icon{margin-right:var(--mat-button-text-icon-spacing, 8px);margin-left:var(--mat-button-text-icon-offset, -4px)}[dir=rtl] .mat-mdc-button>.mat-icon{margin-right:var(--mat-button-text-icon-offset, -4px);margin-left:var(--mat-button-text-icon-spacing, 8px)}.mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-text-icon-offset, -4px);margin-left:var(--mat-button-text-icon-spacing, 8px)}[dir=rtl] .mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-text-icon-spacing, 8px);margin-left:var(--mat-button-text-icon-offset, -4px)}.mat-mdc-button .mat-ripple-element{background-color:var(--mat-button-text-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-text-state-layer-color, var(--mat-sys-primary))}.mat-mdc-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-text-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-text-touch-target-size, 48px);display:var(--mat-button-text-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-unelevated-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-filled-container-height, 40px);font-family:var(--mat-button-filled-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-filled-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-filled-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-filled-label-text-transform);font-weight:var(--mat-button-filled-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-filled-horizontal-padding, 24px)}.mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-button-filled-icon-spacing, 8px);margin-left:var(--mat-button-filled-icon-offset, -8px)}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-button-filled-icon-offset, -8px);margin-left:var(--mat-button-filled-icon-spacing, 8px)}.mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-filled-icon-offset, -8px);margin-left:var(--mat-button-filled-icon-spacing, 8px)}[dir=rtl] .mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-filled-icon-spacing, 8px);margin-left:var(--mat-button-filled-icon-offset, -8px)}.mat-mdc-unelevated-button .mat-ripple-element{background-color:var(--mat-button-filled-ripple-color, color-mix(in srgb, var(--mat-sys-on-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-filled-state-layer-color, var(--mat-sys-on-primary))}.mat-mdc-unelevated-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-filled-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-unelevated-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-unelevated-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-unelevated-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-unelevated-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-filled-touch-target-size, 48px);display:var(--mat-button-filled-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-unelevated-button:not(:disabled){color:var(--mat-button-filled-label-text-color, var(--mat-sys-on-primary));background-color:var(--mat-button-filled-container-color, var(--mat-sys-primary))}.mat-mdc-unelevated-button,.mat-mdc-unelevated-button .mdc-button__ripple{border-radius:var(--mat-button-filled-container-shape, var(--mat-sys-corner-full))}.mat-mdc-unelevated-button[disabled],.mat-mdc-unelevated-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-filled-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-filled-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-raised-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);box-shadow:var(--mat-button-protected-container-elevation-shadow, var(--mat-sys-level1));height:var(--mat-button-protected-container-height, 40px);font-family:var(--mat-button-protected-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-protected-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-protected-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-protected-label-text-transform);font-weight:var(--mat-button-protected-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-protected-horizontal-padding, 24px)}.mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-button-protected-icon-spacing, 8px);margin-left:var(--mat-button-protected-icon-offset, -8px)}[dir=rtl] .mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-button-protected-icon-offset, -8px);margin-left:var(--mat-button-protected-icon-spacing, 8px)}.mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-protected-icon-offset, -8px);margin-left:var(--mat-button-protected-icon-spacing, 8px)}[dir=rtl] .mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-protected-icon-spacing, 8px);margin-left:var(--mat-button-protected-icon-offset, -8px)}.mat-mdc-raised-button .mat-ripple-element{background-color:var(--mat-button-protected-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-protected-state-layer-color, var(--mat-sys-primary))}.mat-mdc-raised-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-protected-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-raised-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-raised-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-raised-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-raised-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-protected-touch-target-size, 48px);display:var(--mat-button-protected-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-raised-button:not(:disabled){color:var(--mat-button-protected-label-text-color, var(--mat-sys-primary));background-color:var(--mat-button-protected-container-color, var(--mat-sys-surface))}.mat-mdc-raised-button,.mat-mdc-raised-button .mdc-button__ripple{border-radius:var(--mat-button-protected-container-shape, var(--mat-sys-corner-full))}@media(hover: hover){.mat-mdc-raised-button:hover{box-shadow:var(--mat-button-protected-hover-container-elevation-shadow, var(--mat-sys-level2))}}.mat-mdc-raised-button:focus{box-shadow:var(--mat-button-protected-focus-container-elevation-shadow, var(--mat-sys-level1))}.mat-mdc-raised-button:active,.mat-mdc-raised-button:focus:active{box-shadow:var(--mat-button-protected-pressed-container-elevation-shadow, var(--mat-sys-level1))}.mat-mdc-raised-button[disabled],.mat-mdc-raised-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-protected-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-protected-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-raised-button[disabled].mat-mdc-button-disabled,.mat-mdc-raised-button.mat-mdc-button-disabled.mat-mdc-button-disabled{box-shadow:var(--mat-button-protected-disabled-container-elevation-shadow, var(--mat-sys-level0))}.mat-mdc-raised-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-outlined-button{border-style:solid;transition:border 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-outlined-container-height, 40px);font-family:var(--mat-button-outlined-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-outlined-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-outlined-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-outlined-label-text-transform);font-weight:var(--mat-button-outlined-label-text-weight, var(--mat-sys-label-large-weight));border-radius:var(--mat-button-outlined-container-shape, var(--mat-sys-corner-full));border-width:var(--mat-button-outlined-outline-width, 1px);padding:0 var(--mat-button-outlined-horizontal-padding, 24px)}.mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-button-outlined-icon-spacing, 8px);margin-left:var(--mat-button-outlined-icon-offset, -8px)}[dir=rtl] .mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-button-outlined-icon-offset, -8px);margin-left:var(--mat-button-outlined-icon-spacing, 8px)}.mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-outlined-icon-offset, -8px);margin-left:var(--mat-button-outlined-icon-spacing, 8px)}[dir=rtl] .mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-outlined-icon-spacing, 8px);margin-left:var(--mat-button-outlined-icon-offset, -8px)}.mat-mdc-outlined-button .mat-ripple-element{background-color:var(--mat-button-outlined-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-outlined-state-layer-color, var(--mat-sys-primary))}.mat-mdc-outlined-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-outlined-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-outlined-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-outlined-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-outlined-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-outlined-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-outlined-touch-target-size, 48px);display:var(--mat-button-outlined-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-outlined-button:not(:disabled){color:var(--mat-button-outlined-label-text-color, var(--mat-sys-primary));border-color:var(--mat-button-outlined-outline-color, var(--mat-sys-outline))}.mat-mdc-outlined-button[disabled],.mat-mdc-outlined-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-outlined-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));border-color:var(--mat-button-outlined-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-tonal-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-tonal-container-height, 40px);font-family:var(--mat-button-tonal-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-tonal-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-tonal-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-tonal-label-text-transform);font-weight:var(--mat-button-tonal-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-tonal-horizontal-padding, 24px)}.mat-tonal-button:not(:disabled){color:var(--mat-button-tonal-label-text-color, var(--mat-sys-on-secondary-container));background-color:var(--mat-button-tonal-container-color, var(--mat-sys-secondary-container))}.mat-tonal-button,.mat-tonal-button .mdc-button__ripple{border-radius:var(--mat-button-tonal-container-shape, var(--mat-sys-corner-full))}.mat-tonal-button[disabled],.mat-tonal-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-tonal-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-tonal-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-tonal-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-tonal-button>.mat-icon{margin-right:var(--mat-button-tonal-icon-spacing, 8px);margin-left:var(--mat-button-tonal-icon-offset, -8px)}[dir=rtl] .mat-tonal-button>.mat-icon{margin-right:var(--mat-button-tonal-icon-offset, -8px);margin-left:var(--mat-button-tonal-icon-spacing, 8px)}.mat-tonal-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-tonal-icon-offset, -8px);margin-left:var(--mat-button-tonal-icon-spacing, 8px)}[dir=rtl] .mat-tonal-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-tonal-icon-spacing, 8px);margin-left:var(--mat-button-tonal-icon-offset, -8px)}.mat-tonal-button .mat-ripple-element{background-color:var(--mat-button-tonal-ripple-color, color-mix(in srgb, var(--mat-sys-on-secondary-container) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-tonal-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-tonal-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-tonal-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-tonal-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-tonal-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-tonal-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-tonal-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-tonal-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-tonal-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-tonal-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-tonal-touch-target-size, 48px);display:var(--mat-button-tonal-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-button,.mat-mdc-unelevated-button,.mat-mdc-raised-button,.mat-mdc-outlined-button,.mat-tonal-button{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before,.mat-tonal-button .mat-mdc-button-ripple,.mat-tonal-button .mat-mdc-button-persistent-ripple,.mat-tonal-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-tonal-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before,.mat-tonal-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-button .mdc-button__label,.mat-mdc-button .mat-icon,.mat-mdc-unelevated-button .mdc-button__label,.mat-mdc-unelevated-button .mat-icon,.mat-mdc-raised-button .mdc-button__label,.mat-mdc-raised-button .mat-icon,.mat-mdc-outlined-button .mdc-button__label,.mat-mdc-outlined-button .mat-icon,.mat-tonal-button .mdc-button__label,.mat-tonal-button .mat-icon{z-index:1;position:relative}.mat-mdc-button .mat-focus-indicator,.mat-mdc-unelevated-button .mat-focus-indicator,.mat-mdc-raised-button .mat-focus-indicator,.mat-mdc-outlined-button .mat-focus-indicator,.mat-tonal-button .mat-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit}.mat-mdc-button:focus-visible>.mat-focus-indicator::before,.mat-mdc-unelevated-button:focus-visible>.mat-focus-indicator::before,.mat-mdc-raised-button:focus-visible>.mat-focus-indicator::before,.mat-mdc-outlined-button:focus-visible>.mat-focus-indicator::before,.mat-tonal-button:focus-visible>.mat-focus-indicator::before{content:"";border-radius:inherit}.mat-mdc-button._mat-animation-noopable,.mat-mdc-unelevated-button._mat-animation-noopable,.mat-mdc-raised-button._mat-animation-noopable,.mat-mdc-outlined-button._mat-animation-noopable,.mat-tonal-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon,.mat-mdc-raised-button>.mat-icon,.mat-mdc-outlined-button>.mat-icon,.mat-tonal-button>.mat-icon{display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem}.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px}.mat-mdc-unelevated-button .mat-focus-indicator::before,.mat-tonal-button .mat-focus-indicator::before,.mat-mdc-raised-button .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-outlined-button .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px)*-1)} -`,`@media(forced-colors: active){.mat-mdc-button:not(.mdc-button--outlined),.mat-mdc-unelevated-button:not(.mdc-button--outlined),.mat-mdc-raised-button:not(.mdc-button--outlined),.mat-mdc-outlined-button:not(.mdc-button--outlined),.mat-mdc-button-base.mat-tonal-button,.mat-mdc-icon-button.mat-mdc-icon-button,.mat-mdc-outlined-button .mdc-button__ripple{outline:solid 1px}} -`],encapsulation:2,changeDetection:0})}return i})();function meA(i){return i.hasAttribute("mat-raised-button")?"elevated":i.hasAttribute("mat-stroked-button")?"outlined":i.hasAttribute("mat-flat-button")?"filled":i.hasAttribute("mat-button")?"text":null}var qi=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Jc,Di]})}return i})();var _v=class{_box;_destroyed=new ne;_resizeSubject=new ne;_resizeObserver;_elementObservables=new Map;constructor(e){this._box=e,typeof ResizeObserver<"u"&&(this._resizeObserver=new ResizeObserver(A=>this._resizeSubject.next(A)))}observe(e){return this._elementObservables.has(e)||this._elementObservables.set(e,new Fi(A=>{let t=this._resizeSubject.subscribe(A);return this._resizeObserver?.observe(e,{box:this._box}),()=>{this._resizeObserver?.unobserve(e),t.unsubscribe(),this._elementObservables.delete(e)}}).pipe(Bt(A=>A.some(t=>t.target===e)),Js({bufferSize:1,refCount:!0}),yt(this._destroyed))),this._elementObservables.get(e)}destroy(){this._destroyed.next(),this._destroyed.complete(),this._resizeSubject.complete(),this._elementObservables.clear()}},H3=(()=>{class i{_cleanupErrorListener;_observers=new Map;_ngZone=w(We);constructor(){typeof ResizeObserver<"u"}ngOnDestroy(){for(let[,A]of this._observers)A.destroy();this._observers.clear(),this._cleanupErrorListener?.()}observe(A,t){let n=t?.box||"content-box";return this._observers.has(n)||this._observers.set(n,new _v(n)),this._observers.get(n).observe(A)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var weA=["notch"],yeA=["matFormFieldNotchedOutline",""],DeA=["*"],HL=["iconPrefixContainer"],zL=["textPrefixContainer"],PL=["iconSuffixContainer"],jL=["textSuffixContainer"],veA=["textField"],beA=["*",[["mat-label"]],[["","matPrefix",""],["","matIconPrefix",""]],[["","matTextPrefix",""]],[["","matTextSuffix",""]],[["","matSuffix",""],["","matIconSuffix",""]],[["mat-error"],["","matError",""]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],MeA=["*","mat-label","[matPrefix], [matIconPrefix]","[matTextPrefix]","[matTextSuffix]","[matSuffix], [matIconSuffix]","mat-error, [matError]","mat-hint:not([align='end'])","mat-hint[align='end']"];function SeA(i,e){i&1&&lA(0,"span",21)}function keA(i,e){if(i&1&&(I(0,"label",20),Ze(1,1),T(2,SeA,1,0,"span",21),h()),i&2){let A=p(2);H("floating",A._shouldLabelFloat())("monitorResize",A._hasOutline())("id",A._labelId),ie("for",A._control.disableAutomaticLabeling?null:A._control.id),Q(2),O(!A.hideRequiredMarker&&A._control.required?2:-1)}}function _eA(i,e){if(i&1&&T(0,keA,3,5,"label",20),i&2){let A=p();O(A._hasFloatingLabel()?0:-1)}}function xeA(i,e){i&1&&lA(0,"div",7)}function ReA(i,e){}function NeA(i,e){if(i&1&&kt(0,ReA,0,0,"ng-template",13),i&2){p(2);let A=Bi(1);H("ngTemplateOutlet",A)}}function FeA(i,e){if(i&1&&(I(0,"div",9),T(1,NeA,1,1,null,13),h()),i&2){let A=p();H("matFormFieldNotchedOutlineOpen",A._shouldLabelFloat()),Q(),O(A._forceDisplayInfixLabel()?-1:1)}}function LeA(i,e){i&1&&(I(0,"div",10,2),Ze(2,2),h())}function GeA(i,e){i&1&&(I(0,"div",11,3),Ze(2,3),h())}function KeA(i,e){}function UeA(i,e){if(i&1&&kt(0,KeA,0,0,"ng-template",13),i&2){p();let A=Bi(1);H("ngTemplateOutlet",A)}}function TeA(i,e){i&1&&(I(0,"div",14,4),Ze(2,4),h())}function OeA(i,e){i&1&&(I(0,"div",15,5),Ze(2,5),h())}function JeA(i,e){i&1&&lA(0,"div",16)}function YeA(i,e){i&1&&(I(0,"div",18),Ze(1,6),h())}function HeA(i,e){if(i&1&&(I(0,"mat-hint",22),D(1),h()),i&2){let A=p(2);H("id",A._hintLabelId),Q(),nA(A.hintLabel)}}function zeA(i,e){if(i&1&&(I(0,"div",19),T(1,HeA,2,2,"mat-hint",22),Ze(2,7),lA(3,"div",23),Ze(4,8),h()),i&2){let A=p();Q(),O(A.hintLabel?1:-1)}}var xs=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["mat-label"]]})}return i})(),AG=new MA("MatError"),xv=(()=>{class i{id=w(Dn).getId("mat-mdc-error-");constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["mat-error"],["","matError",""]],hostAttrs:[1,"mat-mdc-form-field-error","mat-mdc-form-field-bottom-align"],hostVars:1,hostBindings:function(t,n){t&2&&Ma("id",n.id)},inputs:{id:"id"},features:[pt([{provide:AG,useExisting:i}])]})}return i})(),J1=(()=>{class i{align="start";id=w(Dn).getId("mat-mdc-hint-");static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["mat-hint"]],hostAttrs:[1,"mat-mdc-form-field-hint","mat-mdc-form-field-bottom-align"],hostVars:4,hostBindings:function(t,n){t&2&&(Ma("id",n.id),ie("align",null),_A("mat-mdc-form-field-hint-end",n.align==="end"))},inputs:{align:"align",id:"id"}})}return i})(),eG=new MA("MatPrefix"),mQ=(()=>{class i{set _isTextSelector(A){this._isText=!0}_isText=!1;static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matPrefix",""],["","matIconPrefix",""],["","matTextPrefix",""]],inputs:{_isTextSelector:[0,"matTextPrefix","_isTextSelector"]},features:[pt([{provide:eG,useExisting:i}])]})}return i})(),tG=new MA("MatSuffix"),Rv=(()=>{class i{set _isTextSelector(A){this._isText=!0}_isText=!1;static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matSuffix",""],["","matIconSuffix",""],["","matTextSuffix",""]],inputs:{_isTextSelector:[0,"matTextSuffix","_isTextSelector"]},features:[pt([{provide:tG,useExisting:i}])]})}return i})(),iG=new MA("FloatingLabelParent"),VL=(()=>{class i{_elementRef=w(ce);get floating(){return this._floating}set floating(A){this._floating=A,this.monitorResize&&this._handleResize()}_floating=!1;get monitorResize(){return this._monitorResize}set monitorResize(A){this._monitorResize=A,this._monitorResize?this._subscribeToResize():this._resizeSubscription.unsubscribe()}_monitorResize=!1;_resizeObserver=w(H3);_ngZone=w(We);_parent=w(iG);_resizeSubscription=new Oo;constructor(){}ngOnDestroy(){this._resizeSubscription.unsubscribe()}getWidth(){return PeA(this._elementRef.nativeElement)}get element(){return this._elementRef.nativeElement}_handleResize(){setTimeout(()=>this._parent._handleLabelResized())}_subscribeToResize(){this._resizeSubscription.unsubscribe(),this._ngZone.runOutsideAngular(()=>{this._resizeSubscription=this._resizeObserver.observe(this._elementRef.nativeElement,{box:"border-box"}).subscribe(()=>this._handleResize())})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["label","matFormFieldFloatingLabel",""]],hostAttrs:[1,"mdc-floating-label","mat-mdc-floating-label"],hostVars:2,hostBindings:function(t,n){t&2&&_A("mdc-floating-label--float-above",n.floating)},inputs:{floating:"floating",monitorResize:"monitorResize"}})}return i})();function PeA(i){let e=i;if(e.offsetParent!==null)return e.scrollWidth;let A=e.cloneNode(!0);A.style.setProperty("position","absolute"),A.style.setProperty("transform","translate(-9999px, -9999px)"),document.documentElement.appendChild(A);let t=A.scrollWidth;return A.remove(),t}var qL="mdc-line-ripple--active",z3="mdc-line-ripple--deactivating",WL=(()=>{class i{_elementRef=w(ce);_cleanupTransitionEnd;constructor(){let A=w(We),t=w(on);A.runOutsideAngular(()=>{this._cleanupTransitionEnd=t.listen(this._elementRef.nativeElement,"transitionend",this._handleTransitionEnd)})}activate(){let A=this._elementRef.nativeElement.classList;A.remove(z3),A.add(qL)}deactivate(){this._elementRef.nativeElement.classList.add(z3)}_handleTransitionEnd=A=>{let t=this._elementRef.nativeElement.classList,n=t.contains(z3);A.propertyName==="opacity"&&n&&t.remove(qL,z3)};ngOnDestroy(){this._cleanupTransitionEnd()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["div","matFormFieldLineRipple",""]],hostAttrs:[1,"mdc-line-ripple"]})}return i})(),ZL=(()=>{class i{_elementRef=w(ce);_ngZone=w(We);open=!1;_notch;ngAfterViewInit(){let A=this._elementRef.nativeElement,t=A.querySelector(".mdc-floating-label");t?(A.classList.add("mdc-notched-outline--upgraded"),typeof requestAnimationFrame=="function"&&(t.style.transitionDuration="0s",this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>t.style.transitionDuration="")}))):A.classList.add("mdc-notched-outline--no-label")}_setNotchWidth(A){let t=this._notch.nativeElement;!this.open||!A?t.style.width="":t.style.width=`calc(${A}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + 9px)`}_setMaxWidth(A){this._notch.nativeElement.style.setProperty("--mat-form-field-notch-max-width",`calc(100% - ${A}px)`)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["div","matFormFieldNotchedOutline",""]],viewQuery:function(t,n){if(t&1&&Wt(weA,5),t&2){let o;se(o=le())&&(n._notch=o.first)}},hostAttrs:[1,"mdc-notched-outline"],hostVars:2,hostBindings:function(t,n){t&2&&_A("mdc-notched-outline--notched",n.open)},inputs:{open:[0,"matFormFieldNotchedOutlineOpen","open"]},attrs:yeA,ngContentSelectors:DeA,decls:5,vars:0,consts:[["notch",""],[1,"mat-mdc-notch-piece","mdc-notched-outline__leading"],[1,"mat-mdc-notch-piece","mdc-notched-outline__notch"],[1,"mat-mdc-notch-piece","mdc-notched-outline__trailing"]],template:function(t,n){t&1&&(Ot(),$n(0,"div",1),Ln(1,"div",2,0),Ze(3),Xn(),$n(4,"div",3))},encapsulation:2,changeDetection:0})}return i})(),wQ=(()=>{class i{value=null;stateChanges;id;placeholder;ngControl=null;focused=!1;empty=!1;shouldLabelFloat=!1;required=!1;disabled=!1;errorState=!1;controlType;autofilled;userAriaDescribedBy;disableAutomaticLabeling;describedByIds;static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i})}return i})();var yQ=new MA("MatFormField"),jeA=new MA("MAT_FORM_FIELD_DEFAULT_OPTIONS"),XL="fill",VeA="auto",$L="fixed",qeA="translateY(-50%)",Zo=(()=>{class i{_elementRef=w(ce);_changeDetectorRef=w(Mt);_platform=w(Qi);_idGenerator=w(Dn);_ngZone=w(We);_defaults=w(jeA,{optional:!0});_currentDirection;_textField;_iconPrefixContainer;_textPrefixContainer;_iconSuffixContainer;_textSuffixContainer;_floatingLabel;_notchedOutline;_lineRipple;_iconPrefixContainerSignal=Yo("iconPrefixContainer");_textPrefixContainerSignal=Yo("textPrefixContainer");_iconSuffixContainerSignal=Yo("iconSuffixContainer");_textSuffixContainerSignal=Yo("textSuffixContainer");_prefixSuffixContainers=ye(()=>[this._iconPrefixContainerSignal(),this._textPrefixContainerSignal(),this._iconSuffixContainerSignal(),this._textSuffixContainerSignal()].map(A=>A?.nativeElement).filter(A=>A!==void 0));_formFieldControl;_prefixChildren;_suffixChildren;_errorChildren;_hintChildren;_labelChild=K0(xs);get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(A){this._hideRequiredMarker=kr(A)}_hideRequiredMarker=!1;color="primary";get floatLabel(){return this._floatLabel||this._defaults?.floatLabel||VeA}set floatLabel(A){A!==this._floatLabel&&(this._floatLabel=A,this._changeDetectorRef.markForCheck())}_floatLabel;get appearance(){return this._appearanceSignal()}set appearance(A){let t=A||this._defaults?.appearance||XL;this._appearanceSignal.set(t)}_appearanceSignal=mA(XL);get subscriptSizing(){return this._subscriptSizing||this._defaults?.subscriptSizing||$L}set subscriptSizing(A){this._subscriptSizing=A||this._defaults?.subscriptSizing||$L}_subscriptSizing=null;get hintLabel(){return this._hintLabel}set hintLabel(A){this._hintLabel=A,this._processHints()}_hintLabel="";_hasIconPrefix=!1;_hasTextPrefix=!1;_hasIconSuffix=!1;_hasTextSuffix=!1;_labelId=this._idGenerator.getId("mat-mdc-form-field-label-");_hintLabelId=this._idGenerator.getId("mat-mdc-hint-");_describedByIds;get _control(){return this._explicitFormFieldControl||this._formFieldControl}set _control(A){this._explicitFormFieldControl=A}_destroyed=new ne;_isFocused=null;_explicitFormFieldControl;_previousControl=null;_previousControlValidatorFn=null;_stateChanges;_valueChanges;_describedByChanges;_outlineLabelOffsetResizeObserver=null;_animationsDisabled=In();constructor(){let A=this._defaults,t=w(No);A&&(A.appearance&&(this.appearance=A.appearance),this._hideRequiredMarker=!!A?.hideRequiredMarker,A.color&&(this.color=A.color)),Fn(()=>this._currentDirection=t.valueSignal()),this._syncOutlineLabelOffset()}ngAfterViewInit(){this._updateFocusState(),this._animationsDisabled||this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-form-field-animations-enabled")},300)}),this._changeDetectorRef.detectChanges()}ngAfterContentInit(){this._assertFormFieldControl(),this._initializeSubscript(),this._initializePrefixAndSuffix()}ngAfterContentChecked(){this._assertFormFieldControl(),this._control!==this._previousControl&&(this._initializeControl(this._previousControl),this._control.ngControl&&this._control.ngControl.control&&(this._previousControlValidatorFn=this._control.ngControl.control.validator),this._previousControl=this._control),this._control.ngControl&&this._control.ngControl.control&&this._control.ngControl.control.validator!==this._previousControlValidatorFn&&this._changeDetectorRef.markForCheck()}ngOnDestroy(){this._outlineLabelOffsetResizeObserver?.disconnect(),this._stateChanges?.unsubscribe(),this._valueChanges?.unsubscribe(),this._describedByChanges?.unsubscribe(),this._destroyed.next(),this._destroyed.complete()}getLabelId=ye(()=>this._hasFloatingLabel()?this._labelId:null);getConnectedOverlayOrigin(){return this._textField||this._elementRef}_animateAndLockLabel(){this._hasFloatingLabel()&&(this.floatLabel="always")}_initializeControl(A){let t=this._control,n="mat-mdc-form-field-type-";A&&this._elementRef.nativeElement.classList.remove(n+A.controlType),t.controlType&&this._elementRef.nativeElement.classList.add(n+t.controlType),this._stateChanges?.unsubscribe(),this._stateChanges=t.stateChanges.subscribe(()=>{this._updateFocusState(),this._changeDetectorRef.markForCheck()}),this._describedByChanges?.unsubscribe(),this._describedByChanges=t.stateChanges.pipe(Yn([void 0,void 0]),Se(()=>[t.errorState,t.userAriaDescribedBy]),YC(),Bt(([[o,a],[r,s]])=>o!==r||a!==s)).subscribe(()=>this._syncDescribedByIds()),this._valueChanges?.unsubscribe(),t.ngControl&&t.ngControl.valueChanges&&(this._valueChanges=t.ngControl.valueChanges.pipe(yt(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()))}_checkPrefixAndSuffixTypes(){this._hasIconPrefix=!!this._prefixChildren.find(A=>!A._isText),this._hasTextPrefix=!!this._prefixChildren.find(A=>A._isText),this._hasIconSuffix=!!this._suffixChildren.find(A=>!A._isText),this._hasTextSuffix=!!this._suffixChildren.find(A=>A._isText)}_initializePrefixAndSuffix(){this._checkPrefixAndSuffixTypes(),Vi(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._checkPrefixAndSuffixTypes(),this._changeDetectorRef.markForCheck()})}_initializeSubscript(){this._hintChildren.changes.subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._validateHints(),this._syncDescribedByIds()}_assertFormFieldControl(){this._control}_updateFocusState(){let A=this._control.focused;A&&!this._isFocused?(this._isFocused=!0,this._lineRipple?.activate()):!A&&(this._isFocused||this._isFocused===null)&&(this._isFocused=!1,this._lineRipple?.deactivate()),this._elementRef.nativeElement.classList.toggle("mat-focused",A),this._textField?.nativeElement.classList.toggle("mdc-text-field--focused",A)}_syncOutlineLabelOffset(){KN({earlyRead:()=>{if(this._appearanceSignal()!=="outline")return this._outlineLabelOffsetResizeObserver?.disconnect(),null;if(globalThis.ResizeObserver){this._outlineLabelOffsetResizeObserver||=new globalThis.ResizeObserver(()=>{this._writeOutlinedLabelStyles(this._getOutlinedLabelOffset())});for(let A of this._prefixSuffixContainers())this._outlineLabelOffsetResizeObserver.observe(A,{box:"border-box"})}return this._getOutlinedLabelOffset()},write:A=>this._writeOutlinedLabelStyles(A())})}_shouldAlwaysFloat(){return this.floatLabel==="always"}_hasOutline(){return this.appearance==="outline"}_forceDisplayInfixLabel(){return!this._platform.isBrowser&&this._prefixChildren.length&&!this._shouldLabelFloat()}_hasFloatingLabel=ye(()=>!!this._labelChild());_shouldLabelFloat(){return this._hasFloatingLabel()?this._control.shouldLabelFloat||this._shouldAlwaysFloat():!1}_shouldForward(A){let t=this._control?this._control.ngControl:null;return t&&t[A]}_getSubscriptMessageType(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_handleLabelResized(){this._refreshOutlineNotchWidth()}_refreshOutlineNotchWidth(){!this._hasOutline()||!this._floatingLabel||!this._shouldLabelFloat()?this._notchedOutline?._setNotchWidth(0):this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth())}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){this._hintChildren}_syncDescribedByIds(){if(this._control){let A=[];if(this._control.userAriaDescribedBy&&typeof this._control.userAriaDescribedBy=="string"&&A.push(...this._control.userAriaDescribedBy.split(" ")),this._getSubscriptMessageType()==="hint"){let o=this._hintChildren?this._hintChildren.find(r=>r.align==="start"):null,a=this._hintChildren?this._hintChildren.find(r=>r.align==="end"):null;o?A.push(o.id):this._hintLabel&&A.push(this._hintLabelId),a&&A.push(a.id)}else this._errorChildren&&A.push(...this._errorChildren.map(o=>o.id));let t=this._control.describedByIds,n;if(t){let o=this._describedByIds||A;n=A.concat(t.filter(a=>a&&!o.includes(a)))}else n=A;this._control.setDescribedByIds(n),this._describedByIds=A}}_getOutlinedLabelOffset(){if(!this._hasOutline()||!this._floatingLabel)return null;if(!this._iconPrefixContainer&&!this._textPrefixContainer)return["",null];if(!this._isAttachedToDom())return null;let A=this._iconPrefixContainer?.nativeElement,t=this._textPrefixContainer?.nativeElement,n=this._iconSuffixContainer?.nativeElement,o=this._textSuffixContainer?.nativeElement,a=A?.getBoundingClientRect().width??0,r=t?.getBoundingClientRect().width??0,s=n?.getBoundingClientRect().width??0,l=o?.getBoundingClientRect().width??0,g=this._currentDirection==="rtl"?"-1":"1",C=`${a+r}px`,B=`calc(${g} * (${C} + var(--mat-mdc-form-field-label-offset-x, 0px)))`,u=`var(--mat-mdc-form-field-label-transform, ${qeA} translateX(${B}))`,E=a+r+s+l;return[u,E]}_writeOutlinedLabelStyles(A){if(A!==null){let[t,n]=A;this._floatingLabel&&(this._floatingLabel.element.style.transform=t),n!==null&&this._notchedOutline?._setMaxWidth(n)}}_isAttachedToDom(){let A=this._elementRef.nativeElement;if(A.getRootNode){let t=A.getRootNode();return t&&t!==A}return document.documentElement.contains(A)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-form-field"]],contentQueries:function(t,n,o){if(t&1&&(c3(o,n._labelChild,xs,5),ra(o,wQ,5)(o,eG,5)(o,tG,5)(o,AG,5)(o,J1,5)),t&2){br();let a;se(a=le())&&(n._formFieldControl=a.first),se(a=le())&&(n._prefixChildren=a),se(a=le())&&(n._suffixChildren=a),se(a=le())&&(n._errorChildren=a),se(a=le())&&(n._hintChildren=a)}},viewQuery:function(t,n){if(t&1&&(ls(n._iconPrefixContainerSignal,HL,5)(n._textPrefixContainerSignal,zL,5)(n._iconSuffixContainerSignal,PL,5)(n._textSuffixContainerSignal,jL,5),Wt(veA,5)(HL,5)(zL,5)(PL,5)(jL,5)(VL,5)(ZL,5)(WL,5)),t&2){br(4);let o;se(o=le())&&(n._textField=o.first),se(o=le())&&(n._iconPrefixContainer=o.first),se(o=le())&&(n._textPrefixContainer=o.first),se(o=le())&&(n._iconSuffixContainer=o.first),se(o=le())&&(n._textSuffixContainer=o.first),se(o=le())&&(n._floatingLabel=o.first),se(o=le())&&(n._notchedOutline=o.first),se(o=le())&&(n._lineRipple=o.first)}},hostAttrs:[1,"mat-mdc-form-field"],hostVars:38,hostBindings:function(t,n){t&2&&_A("mat-mdc-form-field-label-always-float",n._shouldAlwaysFloat())("mat-mdc-form-field-has-icon-prefix",n._hasIconPrefix)("mat-mdc-form-field-has-icon-suffix",n._hasIconSuffix)("mat-form-field-invalid",n._control.errorState)("mat-form-field-disabled",n._control.disabled)("mat-form-field-autofilled",n._control.autofilled)("mat-form-field-appearance-fill",n.appearance=="fill")("mat-form-field-appearance-outline",n.appearance=="outline")("mat-form-field-hide-placeholder",n._hasFloatingLabel()&&!n._shouldLabelFloat())("mat-primary",n.color!=="accent"&&n.color!=="warn")("mat-accent",n.color==="accent")("mat-warn",n.color==="warn")("ng-untouched",n._shouldForward("untouched"))("ng-touched",n._shouldForward("touched"))("ng-pristine",n._shouldForward("pristine"))("ng-dirty",n._shouldForward("dirty"))("ng-valid",n._shouldForward("valid"))("ng-invalid",n._shouldForward("invalid"))("ng-pending",n._shouldForward("pending"))},inputs:{hideRequiredMarker:"hideRequiredMarker",color:"color",floatLabel:"floatLabel",appearance:"appearance",subscriptSizing:"subscriptSizing",hintLabel:"hintLabel"},exportAs:["matFormField"],features:[pt([{provide:yQ,useExisting:i},{provide:iG,useExisting:i}])],ngContentSelectors:MeA,decls:18,vars:21,consts:[["labelTemplate",""],["textField",""],["iconPrefixContainer",""],["textPrefixContainer",""],["textSuffixContainer",""],["iconSuffixContainer",""],[1,"mat-mdc-text-field-wrapper","mdc-text-field",3,"click"],[1,"mat-mdc-form-field-focus-overlay"],[1,"mat-mdc-form-field-flex"],["matFormFieldNotchedOutline","",3,"matFormFieldNotchedOutlineOpen"],[1,"mat-mdc-form-field-icon-prefix"],[1,"mat-mdc-form-field-text-prefix"],[1,"mat-mdc-form-field-infix"],[3,"ngTemplateOutlet"],[1,"mat-mdc-form-field-text-suffix"],[1,"mat-mdc-form-field-icon-suffix"],["matFormFieldLineRipple",""],["aria-atomic","true","aria-live","polite",1,"mat-mdc-form-field-subscript-wrapper","mat-mdc-form-field-bottom-align"],[1,"mat-mdc-form-field-error-wrapper"],[1,"mat-mdc-form-field-hint-wrapper"],["matFormFieldFloatingLabel","",3,"floating","monitorResize","id"],["aria-hidden","true",1,"mat-mdc-form-field-required-marker","mdc-floating-label--required"],[3,"id"],[1,"mat-mdc-form-field-hint-spacer"]],template:function(t,n){if(t&1&&(Ot(beA),kt(0,_eA,1,1,"ng-template",null,0,PC),I(2,"div",6,1),U("click",function(a){return n._control.onContainerClick(a)}),T(4,xeA,1,0,"div",7),I(5,"div",8),T(6,FeA,2,2,"div",9),T(7,LeA,3,0,"div",10),T(8,GeA,3,0,"div",11),I(9,"div",12),T(10,UeA,1,1,null,13),Ze(11),h(),T(12,TeA,3,0,"div",14),T(13,OeA,3,0,"div",15),h(),T(14,JeA,1,0,"div",16),h(),I(15,"div",17),T(16,YeA,2,0,"div",18)(17,zeA,5,1,"div",19),h()),t&2){let o;Q(2),_A("mdc-text-field--filled",!n._hasOutline())("mdc-text-field--outlined",n._hasOutline())("mdc-text-field--no-label",!n._hasFloatingLabel())("mdc-text-field--disabled",n._control.disabled)("mdc-text-field--invalid",n._control.errorState),Q(2),O(!n._hasOutline()&&!n._control.disabled?4:-1),Q(2),O(n._hasOutline()?6:-1),Q(),O(n._hasIconPrefix?7:-1),Q(),O(n._hasTextPrefix?8:-1),Q(2),O(!n._hasOutline()||n._forceDisplayInfixLabel()?10:-1),Q(2),O(n._hasTextSuffix?12:-1),Q(),O(n._hasIconSuffix?13:-1),Q(),O(n._hasOutline()?-1:14),Q(),_A("mat-mdc-form-field-subscript-dynamic-size",n.subscriptSizing==="dynamic");let a=n._getSubscriptMessageType();Q(),O((o=a)==="error"?16:o==="hint"?17:-1)}},dependencies:[VL,ZL,Uc,WL,J1],styles:[`.mdc-text-field{display:inline-flex;align-items:baseline;padding:0 16px;position:relative;box-sizing:border-box;overflow:hidden;will-change:opacity,transform,color;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.mdc-text-field__input{width:100%;min-width:0;border:none;border-radius:0;background:none;padding:0;-moz-appearance:none;-webkit-appearance:none;height:28px}.mdc-text-field__input::-webkit-calendar-picker-indicator,.mdc-text-field__input::-webkit-search-cancel-button{display:none}.mdc-text-field__input::-ms-clear{display:none}.mdc-text-field__input:focus{outline:none}.mdc-text-field__input:invalid{box-shadow:none}.mdc-text-field__input::placeholder{opacity:0}.mdc-text-field__input::-moz-placeholder{opacity:0}.mdc-text-field__input::-webkit-input-placeholder{opacity:0}.mdc-text-field__input:-ms-input-placeholder{opacity:0}.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mdc-text-field--focused .mdc-text-field__input::placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{opacity:1}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::-moz-placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::-webkit-input-placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive:-ms-input-placeholder{opacity:0}.mdc-text-field--outlined .mdc-text-field__input,.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input{height:100%}.mdc-text-field--outlined .mdc-text-field__input{display:flex;border:none !important;background-color:rgba(0,0,0,0)}.mdc-text-field--disabled .mdc-text-field__input{pointer-events:auto}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mat-form-field-filled-input-text-color, var(--mat-sys-on-surface));caret-color:var(--mat-form-field-filled-caret-color, var(--mat-sys-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mat-form-field-outlined-input-text-color, var(--mat-sys-on-surface));caret-color:var(--mat-form-field-outlined-caret-color, var(--mat-sys-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mat-form-field-filled-error-caret-color, var(--mat-sys-error))}.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mat-form-field-outlined-error-caret-color, var(--mat-sys-error))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-text-field__input{color:var(--mat-form-field-filled-disabled-input-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--mat-form-field-outlined-disabled-input-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mdc-text-field--disabled .mdc-text-field__input{background-color:Window}}.mdc-text-field--filled{height:56px;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:var(--mat-form-field-filled-container-shape, var(--mat-sys-corner-extra-small));border-top-right-radius:var(--mat-form-field-filled-container-shape, var(--mat-sys-corner-extra-small))}.mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:var(--mat-form-field-filled-container-color, var(--mat-sys-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled{background-color:var(--mat-form-field-filled-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 4%, transparent))}.mdc-text-field--outlined{height:56px;overflow:visible;padding-right:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)));padding-left:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)) + 4px)}[dir=rtl] .mdc-text-field--outlined{padding-right:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)) + 4px);padding-left:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)))}.mdc-floating-label{position:absolute;left:0;transform-origin:left top;line-height:1.15rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform}[dir=rtl] .mdc-floating-label{right:0;left:auto;transform-origin:right top;text-align:right}.mdc-text-field .mdc-floating-label{top:50%;transform:translateY(-50%);pointer-events:none}.mdc-notched-outline .mdc-floating-label{display:inline-block;position:relative;max-width:100%}.mdc-text-field--outlined .mdc-floating-label{left:4px;right:auto}[dir=rtl] .mdc-text-field--outlined .mdc-floating-label{left:auto;right:4px}.mdc-text-field--filled .mdc-floating-label{left:16px;right:auto}[dir=rtl] .mdc-text-field--filled .mdc-floating-label{left:auto;right:16px}.mdc-text-field--disabled .mdc-floating-label{cursor:default}@media(forced-colors: active){.mdc-text-field--disabled .mdc-floating-label{z-index:1}}.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label{display:none}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mat-form-field-filled-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-filled-focus-label-text-color, var(--mat-sys-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mat-form-field-filled-hover-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-floating-label{color:var(--mat-form-field-filled-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mat-form-field-filled-error-label-text-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-filled-error-focus-label-text-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mat-form-field-filled-error-hover-label-text-color, var(--mat-sys-on-error-container))}.mdc-text-field--filled .mdc-floating-label{font-family:var(--mat-form-field-filled-label-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-form-field-filled-label-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-form-field-filled-label-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-form-field-filled-label-text-tracking, var(--mat-sys-body-large-tracking))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mat-form-field-outlined-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-outlined-focus-label-text-color, var(--mat-sys-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mat-form-field-outlined-hover-label-text-color, var(--mat-sys-on-surface))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-floating-label{color:var(--mat-form-field-outlined-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mat-form-field-outlined-error-label-text-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-outlined-error-focus-label-text-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mat-form-field-outlined-error-hover-label-text-color, var(--mat-sys-on-error-container))}.mdc-text-field--outlined .mdc-floating-label{font-family:var(--mat-form-field-outlined-label-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-form-field-outlined-label-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-form-field-outlined-label-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-form-field-outlined-label-text-tracking, var(--mat-sys-body-large-tracking))}.mdc-floating-label--float-above{cursor:auto;transform:translateY(-106%) scale(0.75)}.mdc-text-field--filled .mdc-floating-label--float-above{transform:translateY(-106%) scale(0.75)}.mdc-text-field--outlined .mdc-floating-label--float-above{transform:translateY(-37.25px) scale(1);font-size:.75rem}.mdc-notched-outline .mdc-floating-label--float-above{text-overflow:clip}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:133.3333333333%}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{transform:translateY(-34.75px) scale(0.75)}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:1rem}.mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:1px;margin-right:0;content:"*"}[dir=rtl] .mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:0;margin-right:1px}.mdc-notched-outline{display:flex;position:absolute;top:0;right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;height:100%;text-align:left;pointer-events:none}[dir=rtl] .mdc-notched-outline{text-align:right}.mdc-text-field--outlined .mdc-notched-outline{z-index:1}.mat-mdc-notch-piece{box-sizing:border-box;height:100%;pointer-events:none;border:none;border-top:1px solid;border-bottom:1px solid}.mdc-text-field--focused .mat-mdc-notch-piece{border-width:2px}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-outline-color, var(--mat-sys-outline));border-width:var(--mat-form-field-outlined-outline-width, 1px)}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-hover-outline-color, var(--mat-sys-on-surface))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-focus-outline-color, var(--mat-sys-primary))}.mdc-text-field--outlined.mdc-text-field--disabled .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-outline-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-notched-outline .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-hover-outline-color, var(--mat-sys-on-error-container))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-focus-outline-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mat-mdc-notch-piece{border-width:var(--mat-form-field-outlined-focus-outline-width, 2px)}.mdc-notched-outline__leading{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading{width:max(12px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)))}[dir=rtl] .mdc-notched-outline__leading{border-left:none;border-right:1px solid;border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-notched-outline__trailing{flex-grow:1;border-left:none;border-right:1px solid;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}[dir=rtl] .mdc-notched-outline__trailing{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-notched-outline__notch{flex:0 0 auto;width:auto}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch{max-width:min(var(--mat-form-field-notch-max-width, 100%),calc(100% - max(12px, var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))) * 2))}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{max-width:min(100%,calc(100% - max(12px, var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))) * 2))}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:1px}.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:2px}.mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:0;padding-right:8px;border-top:none}[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:8px;padding-right:0}.mdc-notched-outline--no-label .mdc-notched-outline__notch{display:none}.mdc-line-ripple::before,.mdc-line-ripple::after{position:absolute;bottom:0;left:0;width:100%;border-bottom-style:solid;content:""}.mdc-line-ripple::before{z-index:1;border-bottom-width:var(--mat-form-field-filled-active-indicator-height, 1px)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-active-indicator-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-hover-active-indicator-color, var(--mat-sys-on-surface))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-disabled-active-indicator-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-error-active-indicator-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-error-hover-active-indicator-color, var(--mat-sys-on-error-container))}.mdc-line-ripple::after{transform:scaleX(0);opacity:0;z-index:2}.mdc-text-field--filled .mdc-line-ripple::after{border-bottom-width:var(--mat-form-field-filled-focus-active-indicator-height, 2px)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mat-form-field-filled-focus-active-indicator-color, var(--mat-sys-primary))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mat-form-field-filled-error-focus-active-indicator-color, var(--mat-sys-error))}.mdc-line-ripple--active::after{transform:scaleX(1);opacity:1}.mdc-line-ripple--deactivating::after{opacity:0}.mdc-text-field--disabled{pointer-events:none}.mat-mdc-form-field-textarea-control{vertical-align:middle;resize:vertical;box-sizing:border-box;height:auto;margin:0;padding:0;border:none;overflow:auto}.mat-mdc-form-field-input-control.mat-mdc-form-field-input-control{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font:inherit;letter-spacing:inherit;text-decoration:inherit;text-transform:inherit;border:none}.mat-mdc-form-field .mat-mdc-floating-label.mdc-floating-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;line-height:normal;pointer-events:all;will-change:auto}.mat-mdc-form-field:not(.mat-form-field-disabled) .mat-mdc-floating-label.mdc-floating-label{cursor:inherit}.mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input,.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:auto}.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control.mdc-text-field__input[type=color]{height:23px}.mat-mdc-text-field-wrapper{height:auto;flex:auto;will-change:auto}.mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-left:0;--mat-mdc-form-field-label-offset-x: -16px}.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-right:0}[dir=rtl] .mat-mdc-text-field-wrapper{padding-left:16px;padding-right:16px}[dir=rtl] .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-left:0}[dir=rtl] .mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-right:0}.mat-form-field-disabled .mdc-text-field__input::placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-label-always-float .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms;opacity:1}.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .mat-mdc-floating-label{left:auto;right:auto}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input{display:inline-block}.mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field .mdc-notched-outline__notch{padding-top:0}.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:1px solid rgba(0,0,0,0)}[dir=rtl] .mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:none;border-right:1px solid rgba(0,0,0,0)}.mat-mdc-form-field-infix{min-height:var(--mat-form-field-container-height, 56px);padding-top:var(--mat-form-field-filled-with-label-container-padding-top, 24px);padding-bottom:var(--mat-form-field-filled-with-label-container-padding-bottom, 8px)}.mdc-text-field--outlined .mat-mdc-form-field-infix,.mdc-text-field--no-label .mat-mdc-form-field-infix{padding-top:var(--mat-form-field-container-vertical-padding, 16px);padding-bottom:var(--mat-form-field-container-vertical-padding, 16px)}.mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:calc(var(--mat-form-field-container-height, 56px)/2)}.mdc-text-field--filled .mat-mdc-floating-label{display:var(--mat-form-field-filled-label-display, block)}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{--mat-mdc-form-field-label-transform: translateY(calc(calc(6.75px + var(--mat-form-field-container-height, 56px) / 2) * -1)) scale(var(--mat-mdc-form-field-floating-label-scale, 0.75));transform:var(--mat-mdc-form-field-label-transform)}@keyframes _mat-form-field-subscript-animation{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.mat-mdc-form-field-subscript-wrapper{box-sizing:border-box;width:100%;position:relative}.mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-error-wrapper{position:absolute;top:0;left:0;right:0;padding:0 16px;opacity:1;transform:translateY(0);animation:_mat-form-field-subscript-animation 0ms cubic-bezier(0.55, 0, 0.55, 0.2)}.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{position:static}.mat-mdc-form-field-bottom-align::before{content:"";display:inline-block;height:16px}.mat-mdc-form-field-bottom-align.mat-mdc-form-field-subscript-dynamic-size::before{content:unset}.mat-mdc-form-field-hint-end{order:1}.mat-mdc-form-field-hint-wrapper{display:flex}.mat-mdc-form-field-hint-spacer{flex:1 0 1em}.mat-mdc-form-field-error{display:block;color:var(--mat-form-field-error-text-color, var(--mat-sys-error))}.mat-mdc-form-field-subscript-wrapper,.mat-mdc-form-field-bottom-align::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-subscript-text-font, var(--mat-sys-body-small-font));line-height:var(--mat-form-field-subscript-text-line-height, var(--mat-sys-body-small-line-height));font-size:var(--mat-form-field-subscript-text-size, var(--mat-sys-body-small-size));letter-spacing:var(--mat-form-field-subscript-text-tracking, var(--mat-sys-body-small-tracking));font-weight:var(--mat-form-field-subscript-text-weight, var(--mat-sys-body-small-weight))}.mat-mdc-form-field-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;opacity:0;pointer-events:none;background-color:var(--mat-form-field-state-layer-color, var(--mat-sys-on-surface))}.mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-form-field.mat-focused .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-focus-state-layer-opacity, 0)}select.mat-mdc-form-field-input-control{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(0,0,0,0);display:inline-flex;box-sizing:border-box}select.mat-mdc-form-field-input-control:not(:disabled){cursor:pointer}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option{color:var(--mat-form-field-select-option-text-color, var(--mat-sys-neutral10))}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option:disabled{color:var(--mat-form-field-select-disabled-option-text-color, color-mix(in srgb, var(--mat-sys-neutral10) 38%, transparent))}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{content:"";width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;position:absolute;right:0;top:50%;margin-top:-2.5px;pointer-events:none;color:var(--mat-form-field-enabled-select-arrow-color, var(--mat-sys-on-surface-variant))}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{right:auto;left:0}.mat-mdc-form-field-type-mat-native-select.mat-focused .mat-mdc-form-field-infix::after{color:var(--mat-form-field-focus-select-arrow-color, var(--mat-sys-primary))}.mat-mdc-form-field-type-mat-native-select.mat-form-field-disabled .mat-mdc-form-field-infix::after{color:var(--mat-form-field-disabled-select-arrow-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:15px}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:0;padding-left:15px}@media(forced-colors: active){.mat-form-field-appearance-fill .mat-mdc-text-field-wrapper{outline:solid 1px}}@media(forced-colors: active){.mat-form-field-appearance-fill.mat-form-field-disabled .mat-mdc-text-field-wrapper{outline-color:GrayText}}@media(forced-colors: active){.mat-form-field-appearance-fill.mat-focused .mat-mdc-text-field-wrapper{outline:dashed 3px}}@media(forced-colors: active){.mat-mdc-form-field.mat-focused .mdc-notched-outline{border:dashed 3px}}.mat-mdc-form-field-input-control[type=date],.mat-mdc-form-field-input-control[type=datetime],.mat-mdc-form-field-input-control[type=datetime-local],.mat-mdc-form-field-input-control[type=month],.mat-mdc-form-field-input-control[type=week],.mat-mdc-form-field-input-control[type=time]{line-height:1}.mat-mdc-form-field-input-control::-webkit-datetime-edit{line-height:1;padding:0;margin-bottom:-2px}.mat-mdc-form-field{--mat-mdc-form-field-floating-label-scale: 0.75;display:inline-flex;flex-direction:column;min-width:0;text-align:left;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-container-text-font, var(--mat-sys-body-large-font));line-height:var(--mat-form-field-container-text-line-height, var(--mat-sys-body-large-line-height));font-size:var(--mat-form-field-container-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-form-field-container-text-tracking, var(--mat-sys-body-large-tracking));font-weight:var(--mat-form-field-container-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{font-size:calc(var(--mat-form-field-outlined-label-text-populated-size)*var(--mat-mdc-form-field-floating-label-scale))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:var(--mat-form-field-outlined-label-text-populated-size)}[dir=rtl] .mat-mdc-form-field{text-align:right}.mat-mdc-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-mdc-text-field-wrapper{width:100%;z-index:0}.mat-mdc-form-field-icon-prefix,.mat-mdc-form-field-icon-suffix{align-self:center;line-height:0;pointer-events:auto;position:relative;z-index:1}.mat-mdc-form-field-icon-prefix>.mat-icon,.mat-mdc-form-field-icon-suffix>.mat-icon{padding:0 12px;box-sizing:content-box}.mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-leading-icon-color, var(--mat-sys-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-disabled-leading-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-disabled-trailing-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-invalid .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-trailing-icon-color, var(--mat-sys-error))}.mat-form-field-invalid:not(.mat-focused):not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-hover-trailing-icon-color, var(--mat-sys-on-error-container))}.mat-form-field-invalid.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-focus-trailing-icon-color, var(--mat-sys-error))}.mat-mdc-form-field-icon-prefix,[dir=rtl] .mat-mdc-form-field-icon-suffix{padding:0 4px 0 0}.mat-mdc-form-field-icon-suffix,[dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 0 0 4px}.mat-mdc-form-field-subscript-wrapper .mat-icon,.mat-mdc-form-field label .mat-icon{width:1em;height:1em;font-size:inherit}.mat-mdc-form-field-infix{flex:auto;min-width:0;width:180px;position:relative;box-sizing:border-box}.mat-mdc-form-field-infix:has(textarea[cols]){width:auto}.mat-mdc-form-field .mdc-notched-outline__notch{margin-left:-1px;-webkit-clip-path:inset(-9em -999em -9em 1px);clip-path:inset(-9em -999em -9em 1px)}[dir=rtl] .mat-mdc-form-field .mdc-notched-outline__notch{margin-left:0;margin-right:-1px;-webkit-clip-path:inset(-9em 1px -9em -999em);clip-path:inset(-9em 1px -9em -999em)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-floating-label{transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input{transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::-moz-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::-webkit-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input:-ms-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before{transition-duration:75ms}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-line-ripple::after{transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field.mat-form-field-animations-enabled .mat-mdc-form-field-error-wrapper{animation-duration:300ms}.mdc-notched-outline .mdc-floating-label{max-width:calc(100% + 1px)}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:calc(133.3333333333% + 1px)} -`],encapsulation:2,changeDetection:0})}return i})();var Za=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[N3,Zo,Di]})}return i})();var nG=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["ng-component"]],hostAttrs:["cdk-text-field-style-loader",""],decls:0,vars:0,template:function(t,n){},styles:[`textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{padding:2px 0 !important;box-sizing:content-box !important;height:auto !important;overflow:hidden !important}textarea.cdk-textarea-autosize-measuring-firefox{padding:2px 0 !important;box-sizing:content-box !important;height:0 !important}@keyframes cdk-text-field-autofill-start{/*!*/}@keyframes cdk-text-field-autofill-end{/*!*/}.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){animation:cdk-text-field-autofill-end 0s 1ms} -`],encapsulation:2,changeDetection:0})}return i})(),WeA={passive:!0},oG=(()=>{class i{_platform=w(Qi);_ngZone=w(We);_renderer=w(zr).createRenderer(null,null);_styleLoader=w(Eo);_monitoredElements=new Map;constructor(){}monitor(A){if(!this._platform.isBrowser)return Br;this._styleLoader.load(nG);let t=ks(A),n=this._monitoredElements.get(t);if(n)return n.subject;let o=new ne,a="cdk-text-field-autofilled",r=l=>{l.animationName==="cdk-text-field-autofill-start"&&!t.classList.contains(a)?(t.classList.add(a),this._ngZone.run(()=>o.next({target:l.target,isAutofilled:!0}))):l.animationName==="cdk-text-field-autofill-end"&&t.classList.contains(a)&&(t.classList.remove(a),this._ngZone.run(()=>o.next({target:l.target,isAutofilled:!1})))},s=this._ngZone.runOutsideAngular(()=>(t.classList.add("cdk-text-field-autofill-monitored"),this._renderer.listen(t,"animationstart",r,WeA)));return this._monitoredElements.set(t,{subject:o,unlisten:s}),o}stopMonitoring(A){let t=ks(A),n=this._monitoredElements.get(t);n&&(n.unlisten(),n.subject.complete(),t.classList.remove("cdk-text-field-autofill-monitored"),t.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(t))}ngOnDestroy(){this._monitoredElements.forEach((A,t)=>this.stopMonitoring(t))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var P3=(()=>{class i{_elementRef=w(ce);_platform=w(Qi);_ngZone=w(We);_renderer=w(on);_resizeEvents=new ne;_previousValue;_initialHeight;_destroyed=new ne;_listenerCleanups;_minRows;_maxRows;_enabled=!0;_previousMinRows=-1;_textareaElement;get minRows(){return this._minRows}set minRows(A){this._minRows=qs(A),this._setMinHeight()}get maxRows(){return this._maxRows}set maxRows(A){this._maxRows=qs(A),this._setMaxHeight()}get enabled(){return this._enabled}set enabled(A){this._enabled!==A&&((this._enabled=A)?this.resizeToFitContent(!0):this.reset())}get placeholder(){return this._textareaElement.placeholder}set placeholder(A){this._cachedPlaceholderHeight=void 0,A?this._textareaElement.setAttribute("placeholder",A):this._textareaElement.removeAttribute("placeholder"),this._cacheTextareaPlaceholderHeight()}_cachedLineHeight;_cachedPlaceholderHeight;_document=w(ci);_hasFocus=!1;_isViewInited=!1;constructor(){w(Eo).load(nG),this._textareaElement=this._elementRef.nativeElement}_setMinHeight(){let A=this.minRows&&this._cachedLineHeight?`${this.minRows*this._cachedLineHeight}px`:null;A&&(this._textareaElement.style.minHeight=A)}_setMaxHeight(){let A=this.maxRows&&this._cachedLineHeight?`${this.maxRows*this._cachedLineHeight}px`:null;A&&(this._textareaElement.style.maxHeight=A)}ngAfterViewInit(){this._platform.isBrowser&&(this._initialHeight=this._textareaElement.style.height,this.resizeToFitContent(),this._ngZone.runOutsideAngular(()=>{this._listenerCleanups=[this._renderer.listen("window","resize",()=>this._resizeEvents.next()),this._renderer.listen(this._textareaElement,"focus",this._handleFocusEvent),this._renderer.listen(this._textareaElement,"blur",this._handleFocusEvent)],this._resizeEvents.pipe(v1(16)).subscribe(()=>{this._cachedLineHeight=this._cachedPlaceholderHeight=void 0,this.resizeToFitContent(!0)})}),this._isViewInited=!0,this.resizeToFitContent(!0))}ngOnDestroy(){this._listenerCleanups?.forEach(A=>A()),this._resizeEvents.complete(),this._destroyed.next(),this._destroyed.complete()}_cacheTextareaLineHeight(){if(this._cachedLineHeight)return;let A=this._textareaElement.cloneNode(!1),t=A.style;A.rows=1,t.position="absolute",t.visibility="hidden",t.border="none",t.padding="0",t.height="",t.minHeight="",t.maxHeight="",t.top=t.bottom=t.left=t.right="auto",t.overflow="hidden",this._textareaElement.parentNode.appendChild(A),this._cachedLineHeight=A.clientHeight,A.remove(),this._setMinHeight(),this._setMaxHeight()}_measureScrollHeight(){let A=this._textareaElement,t=A.style.marginBottom||"",n=this._platform.FIREFOX,o=this._hasFocus,a=n?"cdk-textarea-autosize-measuring-firefox":"cdk-textarea-autosize-measuring";o&&(A.style.marginBottom=`${A.clientHeight}px`),A.classList.add(a);let r=A.scrollHeight-4;return A.classList.remove(a),o&&(A.style.marginBottom=t),r}_cacheTextareaPlaceholderHeight(){if(!this._isViewInited||this._cachedPlaceholderHeight!=null)return;if(!this.placeholder){this._cachedPlaceholderHeight=0;return}let A=this._textareaElement.value;this._textareaElement.value=this._textareaElement.placeholder,this._cachedPlaceholderHeight=this._measureScrollHeight(),this._textareaElement.value=A}_handleFocusEvent=A=>{this._hasFocus=A.type==="focus"};ngDoCheck(){this._platform.isBrowser&&this.resizeToFitContent()}resizeToFitContent(A=!1){if(!this._enabled||(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),!this._cachedLineHeight))return;let t=this._elementRef.nativeElement,n=t.value;if(!A&&this._minRows===this._previousMinRows&&n===this._previousValue)return;let o=this._measureScrollHeight(),a=Math.max(o,this._cachedPlaceholderHeight||0);t.style.height=`${a}px`,this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame<"u"?requestAnimationFrame(()=>this._scrollToCaretPosition(t)):setTimeout(()=>this._scrollToCaretPosition(t))}),this._previousValue=n,this._previousMinRows=this._minRows}reset(){this._initialHeight!==void 0&&(this._textareaElement.style.height=this._initialHeight)}_noopInputHandler(){}_scrollToCaretPosition(A){let{selectionStart:t,selectionEnd:n}=A;!this._destroyed.isStopped&&this._hasFocus&&A.setSelectionRange(t,n)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(t,n){t&1&&U("input",function(){return n._noopInputHandler()})},inputs:{minRows:[0,"cdkAutosizeMinRows","minRows"],maxRows:[0,"cdkAutosizeMaxRows","maxRows"],enabled:[2,"cdkTextareaAutosize","enabled",Qe],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"]})}return i})(),YI=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({})}return i})();var rG=new MA("MAT_INPUT_VALUE_ACCESSOR");var HI=(()=>{class i{isErrorState(A,t){return!!(A&&A.invalid&&(A.touched||t&&t.submitted))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var zI=class{_defaultMatcher;ngControl;_parentFormGroup;_parentForm;_stateChanges;errorState=!1;matcher;constructor(e,A,t,n,o){this._defaultMatcher=e,this.ngControl=A,this._parentFormGroup=t,this._parentForm=n,this._stateChanges=o}updateErrorState(){let e=this.errorState,A=this._parentFormGroup||this._parentForm,t=this.matcher||this._defaultMatcher,n=this.ngControl?this.ngControl.control:null,o=t?.isErrorState(n,A)??!1;o!==e&&(this.errorState=o,this._stateChanges.next())}};var ZeA=["button","checkbox","file","hidden","image","radio","range","reset","submit"],XeA=new MA("MAT_INPUT_CONFIG"),ka=(()=>{class i{_elementRef=w(ce);_platform=w(Qi);ngControl=w(Vs,{optional:!0,self:!0});_autofillMonitor=w(oG);_ngZone=w(We);_formField=w(yQ,{optional:!0});_renderer=w(on);_uid=w(Dn).getId("mat-input-");_previousNativeValue;_inputValueAccessor;_signalBasedValueAccessor;_previousPlaceholder=null;_errorStateTracker;_config=w(XeA,{optional:!0});_cleanupIosKeyup;_cleanupWebkitWheel;_isServer=!1;_isNativeSelect=!1;_isTextarea=!1;_isInFormField=!1;focused=!1;stateChanges=new ne;controlType="mat-input";autofilled=!1;get disabled(){return this._disabled}set disabled(A){this._disabled=kr(A),this.focused&&(this.focused=!1,this.stateChanges.next())}_disabled=!1;get id(){return this._id}set id(A){this._id=A||this._uid}_id;placeholder;name;get required(){return this._required??this.ngControl?.control?.hasValidator(js.required)??!1}set required(A){this._required=kr(A)}_required;get type(){return this._type}set type(A){this._type=A||"text",this._validateType(),!this._isTextarea&&Dv().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}_type="text";get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(A){this._errorStateTracker.matcher=A}userAriaDescribedBy;get value(){return this._signalBasedValueAccessor?this._signalBasedValueAccessor.value():this._inputValueAccessor.value}set value(A){A!==this.value&&(this._signalBasedValueAccessor?this._signalBasedValueAccessor.value.set(A):this._inputValueAccessor.value=A,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(A){this._readonly=kr(A)}_readonly=!1;disabledInteractive;get errorState(){return this._errorStateTracker.errorState}set errorState(A){this._errorStateTracker.errorState=A}_neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(A=>Dv().has(A));constructor(){let A=w(FI,{optional:!0}),t=w(qC,{optional:!0}),n=w(HI),o=w(rG,{optional:!0,self:!0}),a=this._elementRef.nativeElement,r=a.nodeName.toLowerCase();o?M1(o.value)?this._signalBasedValueAccessor=o:this._inputValueAccessor=o:this._inputValueAccessor=a,this._previousNativeValue=this.value,this.id=this.id,this._platform.IOS&&this._ngZone.runOutsideAngular(()=>{this._cleanupIosKeyup=this._renderer.listen(a,"keyup",this._iOSKeyupListener)}),this._errorStateTracker=new zI(n,this.ngControl,t,A,this.stateChanges),this._isServer=!this._platform.isBrowser,this._isNativeSelect=r==="select",this._isTextarea=r==="textarea",this._isInFormField=!!this._formField,this.disabledInteractive=this._config?.disabledInteractive||!1,this._isNativeSelect&&(this.controlType=a.multiple?"mat-native-select-multiple":"mat-native-select"),this._signalBasedValueAccessor&&Fn(()=>{this._signalBasedValueAccessor.value(),this.stateChanges.next()})}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(A=>{this.autofilled=A.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._cleanupIosKeyup?.(),this._cleanupWebkitWheel?.()}ngDoCheck(){this.ngControl&&(this.updateErrorState(),this.ngControl.disabled!==null&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(A){this._elementRef.nativeElement.focus(A)}updateErrorState(){this._errorStateTracker.updateErrorState()}_focusChanged(A){if(A!==this.focused){if(!this._isNativeSelect&&A&&this.disabled&&this.disabledInteractive){let t=this._elementRef.nativeElement;t.type==="number"?(t.type="text",t.setSelectionRange(0,0),t.type="number"):t.setSelectionRange(0,0)}this.focused=A,this.stateChanges.next()}}_onInput(){}_dirtyCheckNativeValue(){let A=this._elementRef.nativeElement.value;this._previousNativeValue!==A&&(this._previousNativeValue=A,this.stateChanges.next())}_dirtyCheckPlaceholder(){let A=this._getPlaceholder();if(A!==this._previousPlaceholder){let t=this._elementRef.nativeElement;this._previousPlaceholder=A,A?t.setAttribute("placeholder",A):t.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){ZeA.indexOf(this._type)>-1}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let A=this._elementRef.nativeElement.validity;return A&&A.badInput}get empty(){return!this._isNeverEmpty()&&!this._elementRef.nativeElement.value&&!this._isBadInput()&&!this.autofilled}get shouldLabelFloat(){if(this._isNativeSelect){let A=this._elementRef.nativeElement,t=A.options[0];return this.focused||A.multiple||!this.empty||!!(A.selectedIndex>-1&&t&&t.label)}else return this.focused&&!this.disabled||!this.empty}get describedByIds(){return this._elementRef.nativeElement.getAttribute("aria-describedby")?.split(" ")||[]}setDescribedByIds(A){let t=this._elementRef.nativeElement;A.length?t.setAttribute("aria-describedby",A.join(" ")):t.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){let A=this._elementRef.nativeElement;return this._isNativeSelect&&(A.multiple||A.size>1)}_iOSKeyupListener=A=>{let t=A.target;!t.value&&t.selectionStart===0&&t.selectionEnd===0&&(t.setSelectionRange(1,1),t.setSelectionRange(0,0))};_getReadonlyAttribute(){return this._isNativeSelect?null:this.readonly||this.disabled&&this.disabledInteractive?"true":null}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:21,hostBindings:function(t,n){t&1&&U("focus",function(){return n._focusChanged(!0)})("blur",function(){return n._focusChanged(!1)})("input",function(){return n._onInput()}),t&2&&(Ma("id",n.id)("disabled",n.disabled&&!n.disabledInteractive)("required",n.required),ie("name",n.name||null)("readonly",n._getReadonlyAttribute())("aria-disabled",n.disabled&&n.disabledInteractive?"true":null)("aria-invalid",n.empty&&n.required?null:n.errorState)("aria-required",n.required)("id",n.id),_A("mat-input-server",n._isServer)("mat-mdc-form-field-textarea-control",n._isInFormField&&n._isTextarea)("mat-mdc-form-field-input-control",n._isInFormField)("mat-mdc-input-disabled-interactive",n.disabledInteractive)("mdc-text-field__input",n._isInFormField)("mat-mdc-native-select-inline",n._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly",disabledInteractive:[2,"disabledInteractive","disabledInteractive",Qe]},exportAs:["matInput"],features:[pt([{provide:wQ,useExisting:i}]),ii]})}return i})(),Ws=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Za,Za,YI,Di]})}return i})();var pn=(function(i){return i[i.State=0]="State",i[i.Transition=1]="Transition",i[i.Sequence=2]="Sequence",i[i.Group=3]="Group",i[i.Animate=4]="Animate",i[i.Keyframes=5]="Keyframes",i[i.Style=6]="Style",i[i.Trigger=7]="Trigger",i[i.Reference=8]="Reference",i[i.AnimateChild=9]="AnimateChild",i[i.AnimateRef=10]="AnimateRef",i[i.Query=11]="Query",i[i.Stagger=12]="Stagger",i})(pn||{}),Gg="*";function sG(i,e=null){return{type:pn.Sequence,steps:i,options:e}}function Nv(i){return{type:pn.Style,styles:i,offset:null}}var J0=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(e=0,A=0){this.totalTime=e+A}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(e=>e()),this._onDoneFns=[])}onStart(e){this._originalOnStartFns.push(e),this._onStartFns.push(e)}onDone(e){this._originalOnDoneFns.push(e),this._onDoneFns.push(e)}onDestroy(e){this._onDestroyFns.push(e)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(e=>e()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(e=>e()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(e){this._position=this.totalTime?e*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(e){let A=e=="start"?this._onStartFns:this._onDoneFns;A.forEach(t=>t()),A.length=0}},jI=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(e){this.players=e;let A=0,t=0,n=0,o=this.players.length;o==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(a=>{a.onDone(()=>{++A==o&&this._onFinish()}),a.onDestroy(()=>{++t==o&&this._onDestroy()}),a.onStart(()=>{++n==o&&this._onStart()})}),this.totalTime=this.players.reduce((a,r)=>Math.max(a,r.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(e=>e()),this._onDoneFns=[])}init(){this.players.forEach(e=>e.init())}onStart(e){this._onStartFns.push(e)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(e=>e()),this._onStartFns=[])}onDone(e){this._onDoneFns.push(e)}onDestroy(e){this._onDestroyFns.push(e)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(e=>e.play())}pause(){this.players.forEach(e=>e.pause())}restart(){this.players.forEach(e=>e.restart())}finish(){this._onFinish(),this.players.forEach(e=>e.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(e=>e.destroy()),this._onDestroyFns.forEach(e=>e()),this._onDestroyFns=[])}reset(){this.players.forEach(e=>e.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(e){let A=e*this.totalTime;this.players.forEach(t=>{let n=t.totalTime?Math.min(1,A/t.totalTime):1;t.setPosition(n)})}getPosition(){let e=this.players.reduce((A,t)=>A===null||t.totalTime>A.totalTime?t:A,null);return e!=null?e.getPosition():0}beforeDestroy(){this.players.forEach(e=>{e.beforeDestroy&&e.beforeDestroy()})}triggerCallback(e){let A=e=="start"?this._onStartFns:this._onDoneFns;A.forEach(t=>t()),A.length=0}},DQ="!";function lG(i){return new Nt(3e3,!1)}function $eA(){return new Nt(3100,!1)}function AtA(){return new Nt(3101,!1)}function etA(i){return new Nt(3001,!1)}function ttA(i){return new Nt(3003,!1)}function itA(i){return new Nt(3004,!1)}function cG(i,e){return new Nt(3005,!1)}function CG(){return new Nt(3006,!1)}function dG(){return new Nt(3007,!1)}function IG(i,e){return new Nt(3008,!1)}function BG(i){return new Nt(3002,!1)}function hG(i,e,A,t,n){return new Nt(3010,!1)}function EG(){return new Nt(3011,!1)}function QG(){return new Nt(3012,!1)}function uG(){return new Nt(3200,!1)}function pG(){return new Nt(3202,!1)}function fG(){return new Nt(3013,!1)}function mG(i){return new Nt(3014,!1)}function wG(i){return new Nt(3015,!1)}function yG(i){return new Nt(3016,!1)}function DG(i,e){return new Nt(3404,!1)}function ntA(i){return new Nt(3502,!1)}function vG(i){return new Nt(3503,!1)}function bG(){return new Nt(3300,!1)}function MG(i){return new Nt(3504,!1)}function SG(i){return new Nt(3301,!1)}function kG(i,e){return new Nt(3302,!1)}function _G(i){return new Nt(3303,!1)}function xG(i,e){return new Nt(3400,!1)}function RG(i){return new Nt(3401,!1)}function NG(i){return new Nt(3402,!1)}function FG(i,e){return new Nt(3505,!1)}function Y0(i){switch(i.length){case 0:return new J0;case 1:return i[0];default:return new jI(i)}}function Kv(i,e,A=new Map,t=new Map){let n=[],o=[],a=-1,r=null;if(e.forEach(s=>{let l=s.get("offset"),g=l==a,C=g&&r||new Map;s.forEach((d,B)=>{let u=B,E=d;if(B!=="offset")switch(u=i.normalizePropertyName(u,n),E){case DQ:E=A.get(B);break;case Gg:E=t.get(B);break;default:E=i.normalizeStyleValue(B,u,E,n);break}C.set(u,E)}),g||o.push(C),r=C,a=l}),n.length)throw ntA(n);return o}function j3(i,e,A,t){switch(e){case"start":i.onStart(()=>t(A&&Fv(A,"start",i)));break;case"done":i.onDone(()=>t(A&&Fv(A,"done",i)));break;case"destroy":i.onDestroy(()=>t(A&&Fv(A,"destroy",i)));break}}function Fv(i,e,A){let t=A.totalTime,n=!!A.disabled,o=V3(i.element,i.triggerName,i.fromState,i.toState,e||i.phaseName,t??i.totalTime,n),a=i._data;return a!=null&&(o._data=a),o}function V3(i,e,A,t,n="",o=0,a){return{element:i,triggerName:e,fromState:A,toState:t,phaseName:n,totalTime:o,disabled:!!a}}function Zs(i,e,A){let t=i.get(e);return t||i.set(e,t=A),t}function Uv(i){let e=i.indexOf(":"),A=i.substring(1,e),t=i.slice(e+1);return[A,t]}var otA=typeof document>"u"?null:document.documentElement;function q3(i){let e=i.parentNode||i.host||null;return e===otA?null:e}function atA(i){return i.substring(1,6)=="ebkit"}var H1=null,gG=!1;function LG(i){H1||(H1=rtA()||{},gG=H1.style?"WebkitAppearance"in H1.style:!1);let e=!0;return H1.style&&!atA(i)&&(e=i in H1.style,!e&&gG&&(e="Webkit"+i.charAt(0).toUpperCase()+i.slice(1)in H1.style)),e}function rtA(){return typeof document<"u"?document.body:null}function Tv(i,e){for(;e;){if(e===i)return!0;e=q3(e)}return!1}function Ov(i,e,A){if(A)return Array.from(i.querySelectorAll(e));let t=i.querySelector(e);return t?[t]:[]}var stA=1e3,Jv="{{",ltA="}}",Yv="ng-enter",W3="ng-leave",vQ="ng-trigger",bQ=".ng-trigger",Hv="ng-animating",Z3=".ng-animating";function Yc(i){if(typeof i=="number")return i;let e=i.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Lv(parseFloat(e[1]),e[2])}function Lv(i,e){return e==="s"?i*stA:i}function MQ(i,e,A){return i.hasOwnProperty("duration")?i:ctA(i,e,A)}var gtA=/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i;function ctA(i,e,A){let t,n=0,o="";if(typeof i=="string"){let a=i.match(gtA);if(a===null)return e.push(lG(i)),{duration:0,delay:0,easing:""};t=Lv(parseFloat(a[1]),a[2]);let r=a[3];r!=null&&(n=Lv(parseFloat(r),a[4]));let s=a[5];s&&(o=s)}else t=i;if(!A){let a=!1,r=e.length;t<0&&(e.push($eA()),a=!0),n<0&&(e.push(AtA()),a=!0),a&&e.splice(r,0,lG(i))}return{duration:t,delay:n,easing:o}}function GG(i){return i.length?i[0]instanceof Map?i:i.map(e=>new Map(Object.entries(e))):[]}function Kg(i,e,A){e.forEach((t,n)=>{let o=X3(n);A&&!A.has(n)&&A.set(n,i.style[o]),i.style[o]=t})}function A2(i,e){e.forEach((A,t)=>{let n=X3(t);i.style[n]=""})}function VI(i){return Array.isArray(i)?i.length==1?i[0]:sG(i):i}function KG(i,e,A){let t=e.params||{},n=zv(i);n.length&&n.forEach(o=>{t.hasOwnProperty(o)||A.push(etA(o))})}var Gv=new RegExp(`${Jv}\\s*(.+?)\\s*${ltA}`,"g");function zv(i){let e=[];if(typeof i=="string"){let A;for(;A=Gv.exec(i);)e.push(A[1]);Gv.lastIndex=0}return e}function qI(i,e,A){let t=`${i}`,n=t.replace(Gv,(o,a)=>{let r=e[a];return r==null&&(A.push(ttA(a)),r=""),r.toString()});return n==t?i:n}var CtA=/-+([a-z0-9])/g;function X3(i){return i.replace(CtA,(...e)=>e[1].toUpperCase())}function UG(i,e){return i===0||e===0}function TG(i,e,A){if(A.size&&e.length){let t=e[0],n=[];if(A.forEach((o,a)=>{t.has(a)||n.push(a),t.set(a,o)}),n.length)for(let o=1;oa.set(r,$3(i,r)))}}return e}function Xs(i,e,A){switch(e.type){case pn.Trigger:return i.visitTrigger(e,A);case pn.State:return i.visitState(e,A);case pn.Transition:return i.visitTransition(e,A);case pn.Sequence:return i.visitSequence(e,A);case pn.Group:return i.visitGroup(e,A);case pn.Animate:return i.visitAnimate(e,A);case pn.Keyframes:return i.visitKeyframes(e,A);case pn.Style:return i.visitStyle(e,A);case pn.Reference:return i.visitReference(e,A);case pn.AnimateChild:return i.visitAnimateChild(e,A);case pn.AnimateRef:return i.visitAnimateRef(e,A);case pn.Query:return i.visitQuery(e,A);case pn.Stagger:return i.visitStagger(e,A);default:throw itA(e.type)}}function $3(i,e){return window.getComputedStyle(i)[e]}var sb=(()=>{class i{validateStyleProperty(A){return LG(A)}containsElement(A,t){return Tv(A,t)}getParentElement(A){return q3(A)}query(A,t,n){return Ov(A,t,n)}computeStyle(A,t,n){return n||""}animate(A,t,n,o,a,r=[],s){return new J0(n,o)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac})}return i})(),P1=class{static NOOP=new sb},j1=class{};var dtA=new Set(["width","height","minWidth","minHeight","maxWidth","maxHeight","left","top","bottom","right","fontSize","outlineWidth","outlineOffset","paddingTop","paddingLeft","paddingBottom","paddingRight","marginTop","marginLeft","marginBottom","marginRight","borderRadius","borderWidth","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","textIndent","perspective"]),of=class extends j1{normalizePropertyName(e,A){return X3(e)}normalizeStyleValue(e,A,t,n){let o="",a=t.toString().trim();if(dtA.has(A)&&t!==0&&t!=="0")if(typeof t=="number")o="px";else{let r=t.match(/^[+-]?[\d\.]+([a-z]*)$/);r&&r[1].length==0&&n.push(cG(e,t))}return a+o}};var af="*";function ItA(i,e){let A=[];return typeof i=="string"?i.split(/\s*,\s*/).forEach(t=>BtA(t,A,e)):A.push(i),A}function BtA(i,e,A){if(i[0]==":"){let s=htA(i,A);if(typeof s=="function"){e.push(s);return}i=s}let t=i.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(t==null||t.length<4)return A.push(wG(i)),e;let n=t[1],o=t[2],a=t[3];e.push(OG(n,a));let r=n==af&&a==af;o[0]=="<"&&!r&&e.push(OG(a,n))}function htA(i,e){switch(i){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(A,t)=>parseFloat(t)>parseFloat(A);case":decrement":return(A,t)=>parseFloat(t) *"}}var Af=new Set(["true","1"]),ef=new Set(["false","0"]);function OG(i,e){let A=Af.has(i)||ef.has(i),t=Af.has(e)||ef.has(e);return(n,o)=>{let a=i==af||i==n,r=e==af||e==o;return!a&&A&&typeof n=="boolean"&&(a=n?Af.has(i):ef.has(i)),!r&&t&&typeof o=="boolean"&&(r=o?Af.has(e):ef.has(e)),a&&r}}var ZG=":self",EtA=new RegExp(`s*${ZG}s*,?`,"g");function XG(i,e,A,t){return new Zv(i).build(e,A,t)}var JG="",Zv=class{_driver;constructor(e){this._driver=e}build(e,A,t){let n=new Xv(A);return this._resetContextStyleTimingState(n),Xs(this,VI(e),n)}_resetContextStyleTimingState(e){e.currentQuerySelector=JG,e.collectedStyles=new Map,e.collectedStyles.set(JG,new Map),e.currentTime=0}visitTrigger(e,A){let t=A.queryCount=0,n=A.depCount=0,o=[],a=[];return e.name.charAt(0)=="@"&&A.errors.push(CG()),e.definitions.forEach(r=>{if(this._resetContextStyleTimingState(A),r.type==pn.State){let s=r,l=s.name;l.toString().split(/\s*,\s*/).forEach(g=>{s.name=g,o.push(this.visitState(s,A))}),s.name=l}else if(r.type==pn.Transition){let s=this.visitTransition(r,A);t+=s.queryCount,n+=s.depCount,a.push(s)}else A.errors.push(dG())}),{type:pn.Trigger,name:e.name,states:o,transitions:a,queryCount:t,depCount:n,options:null}}visitState(e,A){let t=this.visitStyle(e.styles,A),n=e.options&&e.options.params||null;if(t.containsDynamicStyles){let o=new Set,a=n||{};t.styles.forEach(r=>{r instanceof Map&&r.forEach(s=>{zv(s).forEach(l=>{a.hasOwnProperty(l)||o.add(l)})})}),o.size&&A.errors.push(IG(e.name,[...o.values()]))}return{type:pn.State,name:e.name,style:t,options:n?{params:n}:null}}visitTransition(e,A){A.queryCount=0,A.depCount=0;let t=Xs(this,VI(e.animation),A),n=ItA(e.expr,A.errors);return{type:pn.Transition,matchers:n,animation:t,queryCount:A.queryCount,depCount:A.depCount,options:z1(e.options)}}visitSequence(e,A){return{type:pn.Sequence,steps:e.steps.map(t=>Xs(this,t,A)),options:z1(e.options)}}visitGroup(e,A){let t=A.currentTime,n=0,o=e.steps.map(a=>{A.currentTime=t;let r=Xs(this,a,A);return n=Math.max(n,A.currentTime),r});return A.currentTime=n,{type:pn.Group,steps:o,options:z1(e.options)}}visitAnimate(e,A){let t=ftA(e.timings,A.errors);A.currentAnimateTimings=t;let n,o=e.styles?e.styles:Nv({});if(o.type==pn.Keyframes)n=this.visitKeyframes(o,A);else{let a=e.styles,r=!1;if(!a){r=!0;let l={};t.easing&&(l.easing=t.easing),a=Nv(l)}A.currentTime+=t.duration+t.delay;let s=this.visitStyle(a,A);s.isEmptyStep=r,n=s}return A.currentAnimateTimings=null,{type:pn.Animate,timings:t,style:n,options:null}}visitStyle(e,A){let t=this._makeStyleAst(e,A);return this._validateStyleAst(t,A),t}_makeStyleAst(e,A){let t=[],n=Array.isArray(e.styles)?e.styles:[e.styles];for(let r of n)typeof r=="string"?r===Gg?t.push(r):A.errors.push(BG(r)):t.push(new Map(Object.entries(r)));let o=!1,a=null;return t.forEach(r=>{if(r instanceof Map&&(r.has("easing")&&(a=r.get("easing"),r.delete("easing")),!o)){for(let s of r.values())if(s.toString().indexOf(Jv)>=0){o=!0;break}}}),{type:pn.Style,styles:t,easing:a,offset:e.offset,containsDynamicStyles:o,options:null}}_validateStyleAst(e,A){let t=A.currentAnimateTimings,n=A.currentTime,o=A.currentTime;t&&o>0&&(o-=t.duration+t.delay),e.styles.forEach(a=>{typeof a!="string"&&a.forEach((r,s)=>{let l=A.collectedStyles.get(A.currentQuerySelector),g=l.get(s),C=!0;g&&(o!=n&&o>=g.startTime&&n<=g.endTime&&(A.errors.push(hG(s,g.startTime,g.endTime,o,n)),C=!1),o=g.startTime),C&&l.set(s,{startTime:o,endTime:n}),A.options&&KG(r,A.options,A.errors)})})}visitKeyframes(e,A){let t={type:pn.Keyframes,styles:[],options:null};if(!A.currentAnimateTimings)return A.errors.push(EG()),t;let n=1,o=0,a=[],r=!1,s=!1,l=0,g=e.steps.map(m=>{let v=this._makeStyleAst(m,A),S=v.offset!=null?v.offset:ptA(v.styles),k=0;return S!=null&&(o++,k=v.offset=S),s=s||k<0||k>1,r=r||k0&&o{let S=d>0?v==B?1:d*v:a[v],k=S*f;A.currentTime=u+E.delay+k,E.duration=k,this._validateStyleAst(m,A),m.offset=S,t.styles.push(m)}),t}visitReference(e,A){return{type:pn.Reference,animation:Xs(this,VI(e.animation),A),options:z1(e.options)}}visitAnimateChild(e,A){return A.depCount++,{type:pn.AnimateChild,options:z1(e.options)}}visitAnimateRef(e,A){return{type:pn.AnimateRef,animation:this.visitReference(e.animation,A),options:z1(e.options)}}visitQuery(e,A){let t=A.currentQuerySelector,n=e.options||{};A.queryCount++,A.currentQuery=e;let[o,a]=QtA(e.selector);A.currentQuerySelector=t.length?t+" "+o:o,Zs(A.collectedStyles,A.currentQuerySelector,new Map);let r=Xs(this,VI(e.animation),A);return A.currentQuery=null,A.currentQuerySelector=t,{type:pn.Query,selector:o,limit:n.limit||0,optional:!!n.optional,includeSelf:a,animation:r,originalSelector:e.selector,options:z1(e.options)}}visitStagger(e,A){A.currentQuery||A.errors.push(fG());let t=e.timings==="full"?{duration:0,delay:0,easing:"full"}:MQ(e.timings,A.errors,!0);return{type:pn.Stagger,animation:Xs(this,VI(e.animation),A),timings:t,options:null}}};function QtA(i){let e=!!i.split(/\s*,\s*/).find(A=>A==ZG);return e&&(i=i.replace(EtA,"")),i=i.replace(/@\*/g,bQ).replace(/@\w+/g,A=>bQ+"-"+A.slice(1)).replace(/:animating/g,Z3),[i,e]}function utA(i){return i?P({},i):null}var Xv=class{errors;queryCount=0;depCount=0;currentTransition=null;currentQuery=null;currentQuerySelector=null;currentAnimateTimings=null;currentTime=0;collectedStyles=new Map;options=null;unsupportedCSSPropertiesFound=new Set;constructor(e){this.errors=e}};function ptA(i){if(typeof i=="string")return null;let e=null;if(Array.isArray(i))i.forEach(A=>{if(A instanceof Map&&A.has("offset")){let t=A;e=parseFloat(t.get("offset")),t.delete("offset")}});else if(i instanceof Map&&i.has("offset")){let A=i;e=parseFloat(A.get("offset")),A.delete("offset")}return e}function ftA(i,e){if(i.hasOwnProperty("duration"))return i;if(typeof i=="number"){let o=MQ(i,e).duration;return Pv(o,0,"")}let A=i;if(A.split(/\s+/).some(o=>o.charAt(0)=="{"&&o.charAt(1)=="{")){let o=Pv(0,0,"");return o.dynamic=!0,o.strValue=A,o}let n=MQ(A,e);return Pv(n.duration,n.delay,n.easing)}function z1(i){return i?(i=P({},i),i.params&&(i.params=utA(i.params))):i={},i}function Pv(i,e,A){return{duration:i,delay:e,easing:A}}function lb(i,e,A,t,n,o,a=null,r=!1){return{type:1,element:i,keyframes:e,preStyleProps:A,postStyleProps:t,duration:n,delay:o,totalTime:n+o,easing:a,subTimeline:r}}var kQ=class{_map=new Map;get(e){return this._map.get(e)||[]}append(e,A){let t=this._map.get(e);t||this._map.set(e,t=[]),t.push(...A)}has(e){return this._map.has(e)}clear(){this._map.clear()}},mtA=1,wtA=":enter",ytA=new RegExp(wtA,"g"),DtA=":leave",vtA=new RegExp(DtA,"g");function $G(i,e,A,t,n,o=new Map,a=new Map,r,s,l=[]){return new $v().buildKeyframes(i,e,A,t,n,o,a,r,s,l)}var $v=class{buildKeyframes(e,A,t,n,o,a,r,s,l,g=[]){l=l||new kQ;let C=new Ab(e,A,l,n,o,g,[]);C.options=s;let d=s.delay?Yc(s.delay):0;C.currentTimeline.delayNextStep(d),C.currentTimeline.setStyles([a],null,C.errors,s),Xs(this,t,C);let B=C.timelines.filter(u=>u.containsAnimation());if(B.length&&r.size){let u;for(let E=B.length-1;E>=0;E--){let f=B[E];if(f.element===A){u=f;break}}u&&!u.allowOnlyTimelineStyles()&&u.setStyles([r],null,C.errors,s)}return B.length?B.map(u=>u.buildKeyframes()):[lb(A,[],[],[],0,d,"",!1)]}visitTrigger(e,A){}visitState(e,A){}visitTransition(e,A){}visitAnimateChild(e,A){let t=A.subInstructions.get(A.element);if(t){let n=A.createSubContext(e.options),o=A.currentTimeline.currentTime,a=this._visitSubInstructions(t,n,n.options);o!=a&&A.transformIntoNewTimeline(a)}A.previousNode=e}visitAnimateRef(e,A){let t=A.createSubContext(e.options);t.transformIntoNewTimeline(),this._applyAnimationRefDelays([e.options,e.animation.options],A,t),this.visitReference(e.animation,t),A.transformIntoNewTimeline(t.currentTimeline.currentTime),A.previousNode=e}_applyAnimationRefDelays(e,A,t){for(let n of e){let o=n?.delay;if(o){let a=typeof o=="number"?o:Yc(qI(o,n?.params??{},A.errors));t.delayNextStep(a)}}}_visitSubInstructions(e,A,t){let o=A.currentTimeline.currentTime,a=t.duration!=null?Yc(t.duration):null,r=t.delay!=null?Yc(t.delay):null;return a!==0&&e.forEach(s=>{let l=A.appendInstructionToTimeline(s,a,r);o=Math.max(o,l.duration+l.delay)}),o}visitReference(e,A){A.updateOptions(e.options,!0),Xs(this,e.animation,A),A.previousNode=e}visitSequence(e,A){let t=A.subContextCount,n=A,o=e.options;if(o&&(o.params||o.delay)&&(n=A.createSubContext(o),n.transformIntoNewTimeline(),o.delay!=null)){n.previousNode.type==pn.Style&&(n.currentTimeline.snapshotCurrentStyles(),n.previousNode=rf);let a=Yc(o.delay);n.delayNextStep(a)}e.steps.length&&(e.steps.forEach(a=>Xs(this,a,n)),n.currentTimeline.applyStylesToKeyframe(),n.subContextCount>t&&n.transformIntoNewTimeline()),A.previousNode=e}visitGroup(e,A){let t=[],n=A.currentTimeline.currentTime,o=e.options&&e.options.delay?Yc(e.options.delay):0;e.steps.forEach(a=>{let r=A.createSubContext(e.options);o&&r.delayNextStep(o),Xs(this,a,r),n=Math.max(n,r.currentTimeline.currentTime),t.push(r.currentTimeline)}),t.forEach(a=>A.currentTimeline.mergeTimelineCollectedStyles(a)),A.transformIntoNewTimeline(n),A.previousNode=e}_visitTiming(e,A){if(e.dynamic){let t=e.strValue,n=A.params?qI(t,A.params,A.errors):t;return MQ(n,A.errors)}else return{duration:e.duration,delay:e.delay,easing:e.easing}}visitAnimate(e,A){let t=A.currentAnimateTimings=this._visitTiming(e.timings,A),n=A.currentTimeline;t.delay&&(A.incrementTime(t.delay),n.snapshotCurrentStyles());let o=e.style;o.type==pn.Keyframes?this.visitKeyframes(o,A):(A.incrementTime(t.duration),this.visitStyle(o,A),n.applyStylesToKeyframe()),A.currentAnimateTimings=null,A.previousNode=e}visitStyle(e,A){let t=A.currentTimeline,n=A.currentAnimateTimings;!n&&t.hasCurrentStyleProperties()&&t.forwardFrame();let o=n&&n.easing||e.easing;e.isEmptyStep?t.applyEmptyStep(o):t.setStyles(e.styles,o,A.errors,A.options),A.previousNode=e}visitKeyframes(e,A){let t=A.currentAnimateTimings,n=A.currentTimeline.duration,o=t.duration,r=A.createSubContext().currentTimeline;r.easing=t.easing,e.styles.forEach(s=>{let l=s.offset||0;r.forwardTime(l*o),r.setStyles(s.styles,s.easing,A.errors,A.options),r.applyStylesToKeyframe()}),A.currentTimeline.mergeTimelineCollectedStyles(r),A.transformIntoNewTimeline(n+o),A.previousNode=e}visitQuery(e,A){let t=A.currentTimeline.currentTime,n=e.options||{},o=n.delay?Yc(n.delay):0;o&&(A.previousNode.type===pn.Style||t==0&&A.currentTimeline.hasCurrentStyleProperties())&&(A.currentTimeline.snapshotCurrentStyles(),A.previousNode=rf);let a=t,r=A.invokeQuery(e.selector,e.originalSelector,e.limit,e.includeSelf,!!n.optional,A.errors);A.currentQueryTotal=r.length;let s=null;r.forEach((l,g)=>{A.currentQueryIndex=g;let C=A.createSubContext(e.options,l);o&&C.delayNextStep(o),l===A.element&&(s=C.currentTimeline),Xs(this,e.animation,C),C.currentTimeline.applyStylesToKeyframe();let d=C.currentTimeline.currentTime;a=Math.max(a,d)}),A.currentQueryIndex=0,A.currentQueryTotal=0,A.transformIntoNewTimeline(a),s&&(A.currentTimeline.mergeTimelineCollectedStyles(s),A.currentTimeline.snapshotCurrentStyles()),A.previousNode=e}visitStagger(e,A){let t=A.parentContext,n=A.currentTimeline,o=e.timings,a=Math.abs(o.duration),r=a*(A.currentQueryTotal-1),s=a*A.currentQueryIndex;switch(o.duration<0?"reverse":o.easing){case"reverse":s=r-s;break;case"full":s=t.currentStaggerTime;break}let g=A.currentTimeline;s&&g.delayNextStep(s);let C=g.currentTime;Xs(this,e.animation,A),A.previousNode=e,t.currentStaggerTime=n.currentTime-C+(n.startTime-t.currentTimeline.startTime)}},rf={},Ab=class i{_driver;element;subInstructions;_enterClassName;_leaveClassName;errors;timelines;parentContext=null;currentTimeline;currentAnimateTimings=null;previousNode=rf;subContextCount=0;options={};currentQueryIndex=0;currentQueryTotal=0;currentStaggerTime=0;constructor(e,A,t,n,o,a,r,s){this._driver=e,this.element=A,this.subInstructions=t,this._enterClassName=n,this._leaveClassName=o,this.errors=a,this.timelines=r,this.currentTimeline=s||new sf(this._driver,A,0),r.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(e,A){if(!e)return;let t=e,n=this.options;t.duration!=null&&(n.duration=Yc(t.duration)),t.delay!=null&&(n.delay=Yc(t.delay));let o=t.params;if(o){let a=n.params;a||(a=this.options.params={}),Object.keys(o).forEach(r=>{(!A||!a.hasOwnProperty(r))&&(a[r]=qI(o[r],a,this.errors))})}}_copyOptions(){let e={};if(this.options){let A=this.options.params;if(A){let t=e.params={};Object.keys(A).forEach(n=>{t[n]=A[n]})}}return e}createSubContext(e=null,A,t){let n=A||this.element,o=new i(this._driver,n,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(n,t||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(e),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o}transformIntoNewTimeline(e){return this.previousNode=rf,this.currentTimeline=this.currentTimeline.fork(this.element,e),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(e,A,t){let n={duration:A??e.duration,delay:this.currentTimeline.currentTime+(t??0)+e.delay,easing:""},o=new eb(this._driver,e.element,e.keyframes,e.preStyleProps,e.postStyleProps,n,e.stretchStartingKeyframe);return this.timelines.push(o),n}incrementTime(e){this.currentTimeline.forwardTime(this.currentTimeline.duration+e)}delayNextStep(e){e>0&&this.currentTimeline.delayNextStep(e)}invokeQuery(e,A,t,n,o,a){let r=[];if(n&&r.push(this.element),e.length>0){e=e.replace(ytA,"."+this._enterClassName),e=e.replace(vtA,"."+this._leaveClassName);let s=t!=1,l=this._driver.query(this.element,e,s);t!==0&&(l=t<0?l.slice(l.length+t,l.length):l.slice(0,t)),r.push(...l)}return!o&&r.length==0&&a.push(mG(A)),r}},sf=class i{_driver;element;startTime;_elementTimelineStylesLookup;duration=0;easing=null;_previousKeyframe=new Map;_currentKeyframe=new Map;_keyframes=new Map;_styleSummary=new Map;_localTimelineStyles=new Map;_globalTimelineStyles;_pendingStyles=new Map;_backFill=new Map;_currentEmptyStepKeyframe=null;constructor(e,A,t,n){this._driver=e,this.element=A,this.startTime=t,this._elementTimelineStylesLookup=n,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(A),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(A,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.hasCurrentStyleProperties();default:return!0}}hasCurrentStyleProperties(){return this._currentKeyframe.size>0}get currentTime(){return this.startTime+this.duration}delayNextStep(e){let A=this._keyframes.size===1&&this._pendingStyles.size;this.duration||A?(this.forwardTime(this.currentTime+e),A&&this.snapshotCurrentStyles()):this.startTime+=e}fork(e,A){return this.applyStylesToKeyframe(),new i(this._driver,e,A||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=new Map,this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=mtA,this._loadKeyframe()}forwardTime(e){this.applyStylesToKeyframe(),this.duration=e,this._loadKeyframe()}_updateStyle(e,A){this._localTimelineStyles.set(e,A),this._globalTimelineStyles.set(e,A),this._styleSummary.set(e,{time:this.currentTime,value:A})}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(e){e&&this._previousKeyframe.set("easing",e);for(let[A,t]of this._globalTimelineStyles)this._backFill.set(A,t||Gg),this._currentKeyframe.set(A,Gg);this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(e,A,t,n){A&&this._previousKeyframe.set("easing",A);let o=n&&n.params||{},a=btA(e,this._globalTimelineStyles);for(let[r,s]of a){let l=qI(s,o,t);this._pendingStyles.set(r,l),this._localTimelineStyles.has(r)||this._backFill.set(r,this._globalTimelineStyles.get(r)??Gg),this._updateStyle(r,l)}}applyStylesToKeyframe(){this._pendingStyles.size!=0&&(this._pendingStyles.forEach((e,A)=>{this._currentKeyframe.set(A,e)}),this._pendingStyles.clear(),this._localTimelineStyles.forEach((e,A)=>{this._currentKeyframe.has(A)||this._currentKeyframe.set(A,e)}))}snapshotCurrentStyles(){for(let[e,A]of this._localTimelineStyles)this._pendingStyles.set(e,A),this._updateStyle(e,A)}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){let e=[];for(let A in this._currentKeyframe)e.push(A);return e}mergeTimelineCollectedStyles(e){e._styleSummary.forEach((A,t)=>{let n=this._styleSummary.get(t);(!n||A.time>n.time)&&this._updateStyle(t,A.value)})}buildKeyframes(){this.applyStylesToKeyframe();let e=new Set,A=new Set,t=this._keyframes.size===1&&this.duration===0,n=[];this._keyframes.forEach((r,s)=>{let l=new Map([...this._backFill,...r]);l.forEach((g,C)=>{g===DQ?e.add(C):g===Gg&&A.add(C)}),t||l.set("offset",s/this.duration),n.push(l)});let o=[...e.values()],a=[...A.values()];if(t){let r=n[0],s=new Map(r);r.set("offset",0),s.set("offset",1),n=[r,s]}return lb(this.element,n,o,a,this.duration,this.startTime,this.easing,!1)}},eb=class extends sf{keyframes;preStyleProps;postStyleProps;_stretchStartingKeyframe;timings;constructor(e,A,t,n,o,a,r=!1){super(e,A,a.delay),this.keyframes=t,this.preStyleProps=n,this.postStyleProps=o,this._stretchStartingKeyframe=r,this.timings={duration:a.duration,delay:a.delay,easing:a.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let e=this.keyframes,{delay:A,duration:t,easing:n}=this.timings;if(this._stretchStartingKeyframe&&A){let o=[],a=t+A,r=A/a,s=new Map(e[0]);s.set("offset",0),o.push(s);let l=new Map(e[0]);l.set("offset",YG(r)),o.push(l);let g=e.length-1;for(let C=1;C<=g;C++){let d=new Map(e[C]),B=d.get("offset"),u=A+B*t;d.set("offset",YG(u/a)),o.push(d)}t=a,A=0,n="",e=o}return lb(this.element,e,this.preStyleProps,this.postStyleProps,t,A,n,!0)}};function YG(i,e=3){let A=Math.pow(10,e-1);return Math.round(i*A)/A}function btA(i,e){let A=new Map,t;return i.forEach(n=>{if(n==="*"){t??=e.keys();for(let o of t)A.set(o,Gg)}else for(let[o,a]of n)A.set(o,a)}),A}function HG(i,e,A,t,n,o,a,r,s,l,g,C,d){return{type:0,element:i,triggerName:e,isRemovalTransition:n,fromState:A,fromStyles:o,toState:t,toStyles:a,timelines:r,queriedElements:s,preStyleProps:l,postStyleProps:g,totalTime:C,errors:d}}var jv={},lf=class{_triggerName;ast;_stateStyles;constructor(e,A,t){this._triggerName=e,this.ast=A,this._stateStyles=t}match(e,A,t,n){return MtA(this.ast.matchers,e,A,t,n)}buildStyles(e,A,t){let n=this._stateStyles.get("*");return e!==void 0&&(n=this._stateStyles.get(e?.toString())||n),n?n.buildStyles(A,t):new Map}build(e,A,t,n,o,a,r,s,l,g){let C=[],d=this.ast.options&&this.ast.options.params||jv,B=r&&r.params||jv,u=this.buildStyles(t,B,C),E=s&&s.params||jv,f=this.buildStyles(n,E,C),m=new Set,v=new Map,S=new Map,k=n==="void",M={params:AK(E,d),delay:this.ast.options?.delay},x=g?[]:$G(e,A,this.ast.animation,o,a,u,f,M,l,C),F=0;return x.forEach(z=>{F=Math.max(z.duration+z.delay,F)}),C.length?HG(A,this._triggerName,t,n,k,u,f,[],[],v,S,F,C):(x.forEach(z=>{let j=z.element,X=Zs(v,j,new Set);z.preStyleProps.forEach(Z=>X.add(Z));let eA=Zs(S,j,new Set);z.postStyleProps.forEach(Z=>eA.add(Z)),j!==A&&m.add(j)}),HG(A,this._triggerName,t,n,k,u,f,x,[...m.values()],v,S,F))}};function MtA(i,e,A,t,n){return i.some(o=>o(e,A,t,n))}function AK(i,e){let A=P({},e);return Object.entries(i).forEach(([t,n])=>{n!=null&&(A[t]=n)}),A}var tb=class{styles;defaultParams;normalizer;constructor(e,A,t){this.styles=e,this.defaultParams=A,this.normalizer=t}buildStyles(e,A){let t=new Map,n=AK(e,this.defaultParams);return this.styles.styles.forEach(o=>{typeof o!="string"&&o.forEach((a,r)=>{a&&(a=qI(a,n,A));let s=this.normalizer.normalizePropertyName(r,A);a=this.normalizer.normalizeStyleValue(r,s,a,A),t.set(r,a)})}),t}};function StA(i,e,A){return new ib(i,e,A)}var ib=class{name;ast;_normalizer;transitionFactories=[];fallbackTransition;states=new Map;constructor(e,A,t){this.name=e,this.ast=A,this._normalizer=t,A.states.forEach(n=>{let o=n.options&&n.options.params||{};this.states.set(n.name,new tb(n.style,o,t))}),zG(this.states,"true","1"),zG(this.states,"false","0"),A.transitions.forEach(n=>{this.transitionFactories.push(new lf(e,n,this.states))}),this.fallbackTransition=ktA(e,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(e,A,t,n){return this.transitionFactories.find(a=>a.match(e,A,t,n))||null}matchStyles(e,A,t){return this.fallbackTransition.buildStyles(e,A,t)}};function ktA(i,e,A){let t=[(a,r)=>!0],n={type:pn.Sequence,steps:[],options:null},o={type:pn.Transition,animation:n,matchers:t,options:null,queryCount:0,depCount:0};return new lf(i,o,e)}function zG(i,e,A){i.has(e)?i.has(A)||i.set(A,i.get(e)):i.has(A)&&i.set(e,i.get(A))}var _tA=new kQ,nb=class{bodyNode;_driver;_normalizer;_animations=new Map;_playersById=new Map;players=[];constructor(e,A,t){this.bodyNode=e,this._driver=A,this._normalizer=t}register(e,A){let t=[],n=[],o=XG(this._driver,A,t,n);if(t.length)throw vG(t);this._animations.set(e,o)}_buildPlayer(e,A,t){let n=e.element,o=Kv(this._normalizer,e.keyframes,A,t);return this._driver.animate(n,o,e.duration,e.delay,e.easing,[],!0)}create(e,A,t={}){let n=[],o=this._animations.get(e),a,r=new Map;if(o?(a=$G(this._driver,A,o,Yv,W3,new Map,new Map,t,_tA,n),a.forEach(g=>{let C=Zs(r,g.element,new Map);g.postStyleProps.forEach(d=>C.set(d,null))})):(n.push(bG()),a=[]),n.length)throw MG(n);r.forEach((g,C)=>{g.forEach((d,B)=>{g.set(B,this._driver.computeStyle(C,B,Gg))})});let s=a.map(g=>{let C=r.get(g.element);return this._buildPlayer(g,new Map,C)}),l=Y0(s);return this._playersById.set(e,l),l.onDestroy(()=>this.destroy(e)),this.players.push(l),l}destroy(e){let A=this._getPlayer(e);A.destroy(),this._playersById.delete(e);let t=this.players.indexOf(A);t>=0&&this.players.splice(t,1)}_getPlayer(e){let A=this._playersById.get(e);if(!A)throw SG(e);return A}listen(e,A,t,n){let o=V3(A,"","","");return j3(this._getPlayer(e),t,o,n),()=>{}}command(e,A,t,n){if(t=="register"){this.register(e,n[0]);return}if(t=="create"){let a=n[0]||{};this.create(e,A,a);return}let o=this._getPlayer(e);switch(t){case"play":o.play();break;case"pause":o.pause();break;case"reset":o.reset();break;case"restart":o.restart();break;case"finish":o.finish();break;case"init":o.init();break;case"setPosition":o.setPosition(parseFloat(n[0]));break;case"destroy":this.destroy(e);break}}},PG="ng-animate-queued",xtA=".ng-animate-queued",Vv="ng-animate-disabled",RtA=".ng-animate-disabled",NtA="ng-star-inserted",FtA=".ng-star-inserted",LtA=[],eK={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},GtA={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Ug="__ng_removed",_Q=class{namespaceId;value;options;get params(){return this.options.params}constructor(e,A=""){this.namespaceId=A;let t=e&&e.hasOwnProperty("value"),n=t?e.value:e;if(this.value=UtA(n),t){let o=e,{value:a}=o,r=Pp(o,["value"]);this.options=r}else this.options={};this.options.params||(this.options.params={})}absorbOptions(e){let A=e.params;if(A){let t=this.options.params;Object.keys(A).forEach(n=>{t[n]==null&&(t[n]=A[n])})}}},SQ="void",qv=new _Q(SQ),ob=class{id;hostElement;_engine;players=[];_triggers=new Map;_queue=[];_elementListeners=new Map;_hostClassName;constructor(e,A,t){this.id=e,this.hostElement=A,this._engine=t,this._hostClassName="ng-tns-"+e,Wl(A,this._hostClassName)}listen(e,A,t,n){if(!this._triggers.has(A))throw kG(t,A);if(t==null||t.length==0)throw _G(A);if(!TtA(t))throw xG(t,A);let o=Zs(this._elementListeners,e,[]),a={name:A,phase:t,callback:n};o.push(a);let r=Zs(this._engine.statesByElement,e,new Map);return r.has(A)||(Wl(e,vQ),Wl(e,vQ+"-"+A),r.set(A,qv)),()=>{this._engine.afterFlush(()=>{let s=o.indexOf(a);s>=0&&o.splice(s,1),this._triggers.has(A)||r.delete(A)})}}register(e,A){return this._triggers.has(e)?!1:(this._triggers.set(e,A),!0)}_getTrigger(e){let A=this._triggers.get(e);if(!A)throw RG(e);return A}trigger(e,A,t,n=!0){let o=this._getTrigger(A),a=new xQ(this.id,A,e),r=this._engine.statesByElement.get(e);r||(Wl(e,vQ),Wl(e,vQ+"-"+A),this._engine.statesByElement.set(e,r=new Map));let s=r.get(A),l=new _Q(t,this.id);if(!(t&&t.hasOwnProperty("value"))&&s&&l.absorbOptions(s.options),r.set(A,l),s||(s=qv),!(l.value===SQ)&&s.value===l.value){if(!YtA(s.params,l.params)){let E=[],f=o.matchStyles(s.value,s.params,E),m=o.matchStyles(l.value,l.params,E);E.length?this._engine.reportError(E):this._engine.afterFlush(()=>{A2(e,f),Kg(e,m)})}return}let d=Zs(this._engine.playersByElement,e,[]);d.forEach(E=>{E.namespaceId==this.id&&E.triggerName==A&&E.queued&&E.destroy()});let B=o.matchTransition(s.value,l.value,e,l.params),u=!1;if(!B){if(!n)return;B=o.fallbackTransition,u=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:e,triggerName:A,transition:B,fromState:s,toState:l,player:a,isFallbackTransition:u}),u||(Wl(e,PG),a.onStart(()=>{WI(e,PG)})),a.onDone(()=>{let E=this.players.indexOf(a);E>=0&&this.players.splice(E,1);let f=this._engine.playersByElement.get(e);if(f){let m=f.indexOf(a);m>=0&&f.splice(m,1)}}),this.players.push(a),d.push(a),a}deregister(e){this._triggers.delete(e),this._engine.statesByElement.forEach(A=>A.delete(e)),this._elementListeners.forEach((A,t)=>{this._elementListeners.set(t,A.filter(n=>n.name!=e))})}clearElementCache(e){this._engine.statesByElement.delete(e),this._elementListeners.delete(e);let A=this._engine.playersByElement.get(e);A&&(A.forEach(t=>t.destroy()),this._engine.playersByElement.delete(e))}_signalRemovalForInnerTriggers(e,A){let t=this._engine.driver.query(e,bQ,!0);t.forEach(n=>{if(n[Ug])return;let o=this._engine.fetchNamespacesByElement(n);o.size?o.forEach(a=>a.triggerLeaveAnimation(n,A,!1,!0)):this.clearElementCache(n)}),this._engine.afterFlushAnimationsDone(()=>t.forEach(n=>this.clearElementCache(n)))}triggerLeaveAnimation(e,A,t,n){let o=this._engine.statesByElement.get(e),a=new Map;if(o){let r=[];if(o.forEach((s,l)=>{if(a.set(l,s.value),this._triggers.has(l)){let g=this.trigger(e,l,SQ,n);g&&r.push(g)}}),r.length)return this._engine.markElementAsRemoved(this.id,e,!0,A,a),t&&Y0(r).onDone(()=>this._engine.processLeaveNode(e)),!0}return!1}prepareLeaveAnimationListeners(e){let A=this._elementListeners.get(e),t=this._engine.statesByElement.get(e);if(A&&t){let n=new Set;A.forEach(o=>{let a=o.name;if(n.has(a))return;n.add(a);let s=this._triggers.get(a).fallbackTransition,l=t.get(a)||qv,g=new _Q(SQ),C=new xQ(this.id,a,e);this._engine.totalQueuedPlayers++,this._queue.push({element:e,triggerName:a,transition:s,fromState:l,toState:g,player:C,isFallbackTransition:!0})})}}removeNode(e,A){let t=this._engine;if(e.childElementCount&&this._signalRemovalForInnerTriggers(e,A),this.triggerLeaveAnimation(e,A,!0))return;let n=!1;if(t.totalAnimations){let o=t.players.length?t.playersByQueriedElement.get(e):[];if(o&&o.length)n=!0;else{let a=e;for(;a=a.parentNode;)if(t.statesByElement.get(a)){n=!0;break}}}if(this.prepareLeaveAnimationListeners(e),n)t.markElementAsRemoved(this.id,e,!1,A);else{let o=e[Ug];(!o||o===eK)&&(t.afterFlush(()=>this.clearElementCache(e)),t.destroyInnerAnimations(e),t._onRemovalComplete(e,A))}}insertNode(e,A){Wl(e,this._hostClassName)}drainQueuedTransitions(e){let A=[];return this._queue.forEach(t=>{let n=t.player;if(n.destroyed)return;let o=t.element,a=this._elementListeners.get(o);a&&a.forEach(r=>{if(r.name==t.triggerName){let s=V3(o,t.triggerName,t.fromState.value,t.toState.value);s._data=e,j3(t.player,r.phase,s,r.callback)}}),n.markedForDestroy?this._engine.afterFlush(()=>{n.destroy()}):A.push(t)}),this._queue=[],A.sort((t,n)=>{let o=t.transition.ast.depCount,a=n.transition.ast.depCount;return o==0||a==0?o-a:this._engine.driver.containsElement(t.element,n.element)?1:-1})}destroy(e){this.players.forEach(A=>A.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,e)}},ab=class{bodyNode;driver;_normalizer;players=[];newHostElements=new Map;playersByElement=new Map;playersByQueriedElement=new Map;statesByElement=new Map;disabledNodes=new Set;totalAnimations=0;totalQueuedPlayers=0;_namespaceLookup={};_namespaceList=[];_flushFns=[];_whenQuietFns=[];namespacesByHostElement=new Map;collectedEnterElements=[];collectedLeaveElements=[];onRemovalComplete=(e,A)=>{};_onRemovalComplete(e,A){this.onRemovalComplete(e,A)}constructor(e,A,t){this.bodyNode=e,this.driver=A,this._normalizer=t}get queuedPlayers(){let e=[];return this._namespaceList.forEach(A=>{A.players.forEach(t=>{t.queued&&e.push(t)})}),e}createNamespace(e,A){let t=new ob(e,A,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,A)?this._balanceNamespaceList(t,A):(this.newHostElements.set(A,t),this.collectEnterElement(A)),this._namespaceLookup[e]=t}_balanceNamespaceList(e,A){let t=this._namespaceList,n=this.namespacesByHostElement;if(t.length-1>=0){let a=!1,r=this.driver.getParentElement(A);for(;r;){let s=n.get(r);if(s){let l=t.indexOf(s);t.splice(l+1,0,e),a=!0;break}r=this.driver.getParentElement(r)}a||t.unshift(e)}else t.push(e);return n.set(A,e),e}register(e,A){let t=this._namespaceLookup[e];return t||(t=this.createNamespace(e,A)),t}registerTrigger(e,A,t){let n=this._namespaceLookup[e];n&&n.register(A,t)&&this.totalAnimations++}destroy(e,A){e&&(this.afterFlush(()=>{}),this.afterFlushAnimationsDone(()=>{let t=this._fetchNamespace(e);this.namespacesByHostElement.delete(t.hostElement);let n=this._namespaceList.indexOf(t);n>=0&&this._namespaceList.splice(n,1),t.destroy(A),delete this._namespaceLookup[e]}))}_fetchNamespace(e){return this._namespaceLookup[e]}fetchNamespacesByElement(e){let A=new Set,t=this.statesByElement.get(e);if(t){for(let n of t.values())if(n.namespaceId){let o=this._fetchNamespace(n.namespaceId);o&&A.add(o)}}return A}trigger(e,A,t,n){if(tf(A)){let o=this._fetchNamespace(e);if(o)return o.trigger(A,t,n),!0}return!1}insertNode(e,A,t,n){if(!tf(A))return;let o=A[Ug];if(o&&o.setForRemoval){o.setForRemoval=!1,o.setForMove=!0;let a=this.collectedLeaveElements.indexOf(A);a>=0&&this.collectedLeaveElements.splice(a,1)}if(e){let a=this._fetchNamespace(e);a&&a.insertNode(A,t)}n&&this.collectEnterElement(A)}collectEnterElement(e){this.collectedEnterElements.push(e)}markElementAsDisabled(e,A){A?this.disabledNodes.has(e)||(this.disabledNodes.add(e),Wl(e,Vv)):this.disabledNodes.has(e)&&(this.disabledNodes.delete(e),WI(e,Vv))}removeNode(e,A,t){if(tf(A)){let n=e?this._fetchNamespace(e):null;n?n.removeNode(A,t):this.markElementAsRemoved(e,A,!1,t);let o=this.namespacesByHostElement.get(A);o&&o.id!==e&&o.removeNode(A,t)}else this._onRemovalComplete(A,t)}markElementAsRemoved(e,A,t,n,o){this.collectedLeaveElements.push(A),A[Ug]={namespaceId:e,setForRemoval:n,hasAnimation:t,removedBeforeQueried:!1,previousTriggersValues:o}}listen(e,A,t,n,o){return tf(A)?this._fetchNamespace(e).listen(A,t,n,o):()=>{}}_buildInstruction(e,A,t,n,o){return e.transition.build(this.driver,e.element,e.fromState.value,e.toState.value,t,n,e.fromState.options,e.toState.options,A,o)}destroyInnerAnimations(e){let A=this.driver.query(e,bQ,!0);A.forEach(t=>this.destroyActiveAnimationsForElement(t)),this.playersByQueriedElement.size!=0&&(A=this.driver.query(e,Z3,!0),A.forEach(t=>this.finishActiveQueriedAnimationOnElement(t)))}destroyActiveAnimationsForElement(e){let A=this.playersByElement.get(e);A&&A.forEach(t=>{t.queued?t.markedForDestroy=!0:t.destroy()})}finishActiveQueriedAnimationOnElement(e){let A=this.playersByQueriedElement.get(e);A&&A.forEach(t=>t.finish())}whenRenderingDone(){return new Promise(e=>{if(this.players.length)return Y0(this.players).onDone(()=>e());e()})}processLeaveNode(e){let A=e[Ug];if(A&&A.setForRemoval){if(e[Ug]=eK,A.namespaceId){this.destroyInnerAnimations(e);let t=this._fetchNamespace(A.namespaceId);t&&t.clearElementCache(e)}this._onRemovalComplete(e,A.setForRemoval)}e.classList?.contains(Vv)&&this.markElementAsDisabled(e,!1),this.driver.query(e,RtA,!0).forEach(t=>{this.markElementAsDisabled(t,!1)})}flush(e=-1){let A=[];if(this.newHostElements.size&&(this.newHostElements.forEach((t,n)=>this._balanceNamespaceList(t,n)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let t=0;tt()),this._flushFns=[],this._whenQuietFns.length){let t=this._whenQuietFns;this._whenQuietFns=[],A.length?Y0(A).onDone(()=>{t.forEach(n=>n())}):t.forEach(n=>n())}}reportError(e){throw NG(e)}_flushAnimations(e,A){let t=new kQ,n=[],o=new Map,a=[],r=new Map,s=new Map,l=new Map,g=new Set;this.disabledNodes.forEach(QA=>{g.add(QA);let RA=this.driver.query(QA,xtA,!0);for(let dA=0;dA{let dA=Yv+E++;u.set(RA,dA),QA.forEach(IA=>Wl(IA,dA))});let f=[],m=new Set,v=new Set;for(let QA=0;QAm.add(IA)):v.add(RA))}let S=new Map,k=qG(d,Array.from(m));k.forEach((QA,RA)=>{let dA=W3+E++;S.set(RA,dA),QA.forEach(IA=>Wl(IA,dA))}),e.push(()=>{B.forEach((QA,RA)=>{let dA=u.get(RA);QA.forEach(IA=>WI(IA,dA))}),k.forEach((QA,RA)=>{let dA=S.get(RA);QA.forEach(IA=>WI(IA,dA))}),f.forEach(QA=>{this.processLeaveNode(QA)})});let M=[],x=[];for(let QA=this._namespaceList.length-1;QA>=0;QA--)this._namespaceList[QA].drainQueuedTransitions(A).forEach(dA=>{let IA=dA.player,xA=dA.element;if(M.push(IA),this.collectedEnterElements.length){let Xe=xA[Ug];if(Xe&&Xe.setForMove){if(Xe.previousTriggersValues&&Xe.previousTriggersValues.has(dA.triggerName)){let YA=Xe.previousTriggersValues.get(dA.triggerName),hA=this.statesByElement.get(dA.element);if(hA&&hA.has(dA.triggerName)){let Ae=hA.get(dA.triggerName);Ae.value=YA,hA.set(dA.triggerName,Ae)}}IA.destroy();return}}let qA=!C||!this.driver.containsElement(C,xA),ue=S.get(xA),HA=u.get(xA),bA=this._buildInstruction(dA,t,HA,ue,qA);if(bA.errors&&bA.errors.length){x.push(bA);return}if(qA){IA.onStart(()=>A2(xA,bA.fromStyles)),IA.onDestroy(()=>Kg(xA,bA.toStyles)),n.push(IA);return}if(dA.isFallbackTransition){IA.onStart(()=>A2(xA,bA.fromStyles)),IA.onDestroy(()=>Kg(xA,bA.toStyles)),n.push(IA);return}let PA=[];bA.timelines.forEach(Xe=>{Xe.stretchStartingKeyframe=!0,this.disabledNodes.has(Xe.element)||PA.push(Xe)}),bA.timelines=PA,t.append(xA,bA.timelines);let it={instruction:bA,player:IA,element:xA};a.push(it),bA.queriedElements.forEach(Xe=>Zs(r,Xe,[]).push(IA)),bA.preStyleProps.forEach((Xe,YA)=>{if(Xe.size){let hA=s.get(YA);hA||s.set(YA,hA=new Set),Xe.forEach((Ae,pA)=>hA.add(pA))}}),bA.postStyleProps.forEach((Xe,YA)=>{let hA=l.get(YA);hA||l.set(YA,hA=new Set),Xe.forEach((Ae,pA)=>hA.add(pA))})});if(x.length){let QA=[];x.forEach(RA=>{QA.push(FG(RA.triggerName,RA.errors))}),M.forEach(RA=>RA.destroy()),this.reportError(QA)}let F=new Map,z=new Map;a.forEach(QA=>{let RA=QA.element;t.has(RA)&&(z.set(RA,RA),this._beforeAnimationBuild(QA.player.namespaceId,QA.instruction,F))}),n.forEach(QA=>{let RA=QA.element;this._getPreviousPlayers(RA,!1,QA.namespaceId,QA.triggerName,null).forEach(IA=>{Zs(F,RA,[]).push(IA),IA.destroy()})});let j=f.filter(QA=>WG(QA,s,l)),X=new Map;VG(X,this.driver,v,l,Gg).forEach(QA=>{WG(QA,s,l)&&j.push(QA)});let Z=new Map;B.forEach((QA,RA)=>{VG(Z,this.driver,new Set(QA),s,DQ)}),j.forEach(QA=>{let RA=X.get(QA),dA=Z.get(QA);X.set(QA,new Map([...RA?.entries()??[],...dA?.entries()??[]]))});let CA=[],wA=[],BA={};a.forEach(QA=>{let{element:RA,player:dA,instruction:IA}=QA;if(t.has(RA)){if(g.has(RA)){dA.onDestroy(()=>Kg(RA,IA.toStyles)),dA.disabled=!0,dA.overrideTotalTime(IA.totalTime),n.push(dA);return}let xA=BA;if(z.size>1){let ue=RA,HA=[];for(;ue=ue.parentNode;){let bA=z.get(ue);if(bA){xA=bA;break}HA.push(ue)}HA.forEach(bA=>z.set(bA,xA))}let qA=this._buildAnimation(dA.namespaceId,IA,F,o,Z,X);if(dA.setRealPlayer(qA),xA===BA)CA.push(dA);else{let ue=this.playersByElement.get(xA);ue&&ue.length&&(dA.parentPlayer=Y0(ue)),n.push(dA)}}else A2(RA,IA.fromStyles),dA.onDestroy(()=>Kg(RA,IA.toStyles)),wA.push(dA),g.has(RA)&&n.push(dA)}),wA.forEach(QA=>{let RA=o.get(QA.element);if(RA&&RA.length){let dA=Y0(RA);QA.setRealPlayer(dA)}}),n.forEach(QA=>{QA.parentPlayer?QA.syncPlayerEvents(QA.parentPlayer):QA.destroy()});for(let QA=0;QA!qA.destroyed);xA.length?OtA(this,RA,xA):this.processLeaveNode(RA)}return f.length=0,CA.forEach(QA=>{this.players.push(QA),QA.onDone(()=>{QA.destroy();let RA=this.players.indexOf(QA);this.players.splice(RA,1)}),QA.play()}),CA}afterFlush(e){this._flushFns.push(e)}afterFlushAnimationsDone(e){this._whenQuietFns.push(e)}_getPreviousPlayers(e,A,t,n,o){let a=[];if(A){let r=this.playersByQueriedElement.get(e);r&&(a=r)}else{let r=this.playersByElement.get(e);if(r){let s=!o||o==SQ;r.forEach(l=>{l.queued||!s&&l.triggerName!=n||a.push(l)})}}return(t||n)&&(a=a.filter(r=>!(t&&t!=r.namespaceId||n&&n!=r.triggerName))),a}_beforeAnimationBuild(e,A,t){let n=A.triggerName,o=A.element,a=A.isRemovalTransition?void 0:e,r=A.isRemovalTransition?void 0:n;for(let s of A.timelines){let l=s.element,g=l!==o,C=Zs(t,l,[]);this._getPreviousPlayers(l,g,a,r,A.toState).forEach(B=>{let u=B.getRealPlayer();u.beforeDestroy&&u.beforeDestroy(),B.destroy(),C.push(B)})}A2(o,A.fromStyles)}_buildAnimation(e,A,t,n,o,a){let r=A.triggerName,s=A.element,l=[],g=new Set,C=new Set,d=A.timelines.map(u=>{let E=u.element;g.add(E);let f=E[Ug];if(f&&f.removedBeforeQueried)return new J0(u.duration,u.delay);let m=E!==s,v=JtA((t.get(E)||LtA).map(F=>F.getRealPlayer())).filter(F=>{let z=F;return z.element?z.element===E:!1}),S=o.get(E),k=a.get(E),M=Kv(this._normalizer,u.keyframes,S,k),x=this._buildPlayer(u,M,v);if(u.subTimeline&&n&&C.add(E),m){let F=new xQ(e,r,E);F.setRealPlayer(x),l.push(F)}return x});l.forEach(u=>{Zs(this.playersByQueriedElement,u.element,[]).push(u),u.onDone(()=>KtA(this.playersByQueriedElement,u.element,u))}),g.forEach(u=>Wl(u,Hv));let B=Y0(d);return B.onDestroy(()=>{g.forEach(u=>WI(u,Hv)),Kg(s,A.toStyles)}),C.forEach(u=>{Zs(n,u,[]).push(B)}),B}_buildPlayer(e,A,t){return A.length>0?this.driver.animate(e.element,A,e.duration,e.delay,e.easing,t):new J0(e.duration,e.delay)}},xQ=class{namespaceId;triggerName;element;_player=new J0;_containsRealPlayer=!1;_queuedCallbacks=new Map;destroyed=!1;parentPlayer=null;markedForDestroy=!1;disabled=!1;queued=!0;totalTime=0;constructor(e,A,t){this.namespaceId=e,this.triggerName=A,this.element=t}setRealPlayer(e){this._containsRealPlayer||(this._player=e,this._queuedCallbacks.forEach((A,t)=>{A.forEach(n=>j3(e,t,void 0,n))}),this._queuedCallbacks.clear(),this._containsRealPlayer=!0,this.overrideTotalTime(e.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(e){this.totalTime=e}syncPlayerEvents(e){let A=this._player;A.triggerCallback&&e.onStart(()=>A.triggerCallback("start")),e.onDone(()=>this.finish()),e.onDestroy(()=>this.destroy())}_queueEvent(e,A){Zs(this._queuedCallbacks,e,[]).push(A)}onDone(e){this.queued&&this._queueEvent("done",e),this._player.onDone(e)}onStart(e){this.queued&&this._queueEvent("start",e),this._player.onStart(e)}onDestroy(e){this.queued&&this._queueEvent("destroy",e),this._player.onDestroy(e)}init(){this._player.init()}hasStarted(){return this.queued?!1:this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(e){this.queued||this._player.setPosition(e)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(e){let A=this._player;A.triggerCallback&&A.triggerCallback(e)}};function KtA(i,e,A){let t=i.get(e);if(t){if(t.length){let n=t.indexOf(A);t.splice(n,1)}t.length==0&&i.delete(e)}return t}function UtA(i){return i??null}function tf(i){return i&&i.nodeType===1}function TtA(i){return i=="start"||i=="done"}function jG(i,e){let A=i.style.display;return i.style.display=e??"none",A}function VG(i,e,A,t,n){let o=[];A.forEach(s=>o.push(jG(s)));let a=[];t.forEach((s,l)=>{let g=new Map;s.forEach(C=>{let d=e.computeStyle(l,C,n);g.set(C,d),(!d||d.length==0)&&(l[Ug]=GtA,a.push(l))}),i.set(l,g)});let r=0;return A.forEach(s=>jG(s,o[r++])),a}function qG(i,e){let A=new Map;if(i.forEach(r=>A.set(r,[])),e.length==0)return A;let t=1,n=new Set(e),o=new Map;function a(r){if(!r)return t;let s=o.get(r);if(s)return s;let l=r.parentNode;return A.has(l)?s=l:n.has(l)?s=t:s=a(l),o.set(r,s),s}return e.forEach(r=>{let s=a(r);s!==t&&A.get(s).push(r)}),A}function Wl(i,e){i.classList?.add(e)}function WI(i,e){i.classList?.remove(e)}function OtA(i,e,A){Y0(A).onDone(()=>i.processLeaveNode(e))}function JtA(i){let e=[];return tK(i,e),e}function tK(i,e){for(let A=0;An.add(o)):e.set(i,t),A.delete(i),!0}var ZI=class{_driver;_normalizer;_transitionEngine;_timelineEngine;_triggerCache={};onRemovalComplete=(e,A)=>{};constructor(e,A,t){this._driver=A,this._normalizer=t,this._transitionEngine=new ab(e.body,A,t),this._timelineEngine=new nb(e.body,A,t),this._transitionEngine.onRemovalComplete=(n,o)=>this.onRemovalComplete(n,o)}registerTrigger(e,A,t,n,o){let a=e+"-"+n,r=this._triggerCache[a];if(!r){let s=[],l=[],g=XG(this._driver,o,s,l);if(s.length)throw DG(n,s);r=StA(n,g,this._normalizer),this._triggerCache[a]=r}this._transitionEngine.registerTrigger(A,n,r)}register(e,A){this._transitionEngine.register(e,A)}destroy(e,A){this._transitionEngine.destroy(e,A)}onInsert(e,A,t,n){this._transitionEngine.insertNode(e,A,t,n)}onRemove(e,A,t){this._transitionEngine.removeNode(e,A,t)}disableAnimations(e,A){this._transitionEngine.markElementAsDisabled(e,A)}process(e,A,t,n){if(t.charAt(0)=="@"){let[o,a]=Uv(t),r=n;this._timelineEngine.command(o,A,a,r)}else this._transitionEngine.trigger(e,A,t,n)}listen(e,A,t,n,o){if(t.charAt(0)=="@"){let[a,r]=Uv(t);return this._timelineEngine.listen(a,A,r,o)}return this._transitionEngine.listen(e,A,t,n,o)}flush(e=-1){this._transitionEngine.flush(e)}get players(){return[...this._transitionEngine.players,...this._timelineEngine.players]}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}afterFlushAnimationsDone(e){this._transitionEngine.afterFlushAnimationsDone(e)}};function HtA(i,e){let A=null,t=null;return Array.isArray(e)&&e.length?(A=Wv(e[0]),e.length>1&&(t=Wv(e[e.length-1]))):e instanceof Map&&(A=Wv(e)),A||t?new ztA(i,A,t):null}var ztA=(()=>{class i{_element;_startStyles;_endStyles;static initialStylesByElement=new WeakMap;_state=0;_initialStyles;constructor(A,t,n){this._element=A,this._startStyles=t,this._endStyles=n;let o=i.initialStylesByElement.get(A);o||i.initialStylesByElement.set(A,o=new Map),this._initialStyles=o}start(){this._state<1&&(this._startStyles&&Kg(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Kg(this._element,this._initialStyles),this._endStyles&&(Kg(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(i.initialStylesByElement.delete(this._element),this._startStyles&&(A2(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(A2(this._element,this._endStyles),this._endStyles=null),Kg(this._element,this._initialStyles),this._state=3)}}return i})();function Wv(i){let e=null;return i.forEach((A,t)=>{PtA(t)&&(e=e||new Map,e.set(t,A))}),e}function PtA(i){return i==="display"||i==="position"}var gf=class{element;keyframes;options;_specialStyles;_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_duration;_delay;_initialized=!1;_finished=!1;_started=!1;_destroyed=!1;_finalKeyframe;_originalOnDoneFns=[];_originalOnStartFns=[];domPlayer=null;time=0;parentPlayer=null;currentSnapshot=new Map;constructor(e,A,t,n){this.element=e,this.keyframes=A,this.options=t,this._specialStyles=n,this._duration=t.duration,this._delay=t.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(e=>e()),this._onDoneFns=[])}init(){this._buildPlayer()&&this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return this.domPlayer;this._initialized=!0;let e=this.keyframes,A=this._triggerWebAnimation(this.element,e,this.options);if(!A)return this._onFinish(),null;this.domPlayer=A,this._finalKeyframe=e.length?e[e.length-1]:new Map;let t=()=>this._onFinish();return A.addEventListener("finish",t),this.onDestroy(()=>{A.removeEventListener("finish",t)}),A}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer?.pause()}_convertKeyframesToObject(e){let A=[];return e.forEach(t=>{A.push(Object.fromEntries(t))}),A}_triggerWebAnimation(e,A,t){let n=this._convertKeyframesToObject(A);try{return e.animate(n,t)}catch(o){return null}}onStart(e){this._originalOnStartFns.push(e),this._onStartFns.push(e)}onDone(e){this._originalOnDoneFns.push(e),this._onDoneFns.push(e)}onDestroy(e){this._onDestroyFns.push(e)}play(){let e=this._buildPlayer();e&&(this.hasStarted()||(this._onStartFns.forEach(A=>A()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),e.play())}pause(){this.init(),this.domPlayer?.pause()}finish(){this.init(),this.domPlayer&&(this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish())}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}_resetDomPlayerState(){this.domPlayer?.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(e=>e()),this._onDestroyFns=[])}setPosition(e){this.domPlayer||this.init(),this.domPlayer&&(this.domPlayer.currentTime=e*this.time)}getPosition(){return this.domPlayer?+(this.domPlayer.currentTime??0)/this.time:this._initialized?1:0}get totalTime(){return this._delay+this._duration}beforeDestroy(){let e=new Map;this.hasStarted()&&this._finalKeyframe.forEach((t,n)=>{n!=="offset"&&e.set(n,this._finished?t:$3(this.element,n))}),this.currentSnapshot=e}triggerCallback(e){let A=e==="start"?this._onStartFns:this._onDoneFns;A.forEach(t=>t()),A.length=0}},cf=class{validateStyleProperty(e){return!0}validateAnimatableStyleProperty(e){return!0}containsElement(e,A){return Tv(e,A)}getParentElement(e){return q3(e)}query(e,A,t){return Ov(e,A,t)}computeStyle(e,A,t){return $3(e,A)}animate(e,A,t,n,o,a=[]){let r=n==0?"both":"forwards",s={duration:t,delay:n,fill:r};o&&(s.easing=o);let l=new Map,g=a.filter(B=>B instanceof gf);UG(t,n)&&g.forEach(B=>{B.currentSnapshot.forEach((u,E)=>l.set(E,u))});let C=GG(A).map(B=>new Map(B));C=TG(e,C,l);let d=HtA(e,C);return new gf(e,C,s,d)}};var nf="@",iK="@.disabled",Cf=class{namespaceId;delegate;engine;_onDestroy;\u0275type=0;constructor(e,A,t,n){this.namespaceId=e,this.delegate=A,this.engine=t,this._onDestroy=n}get data(){return this.delegate.data}destroyNode(e){this.delegate.destroyNode?.(e)}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.engine.afterFlushAnimationsDone(()=>{queueMicrotask(()=>{this.delegate.destroy()})}),this._onDestroy?.()}createElement(e,A){return this.delegate.createElement(e,A)}createComment(e){return this.delegate.createComment(e)}createText(e){return this.delegate.createText(e)}appendChild(e,A){this.delegate.appendChild(e,A),this.engine.onInsert(this.namespaceId,A,e,!1)}insertBefore(e,A,t,n=!0){this.delegate.insertBefore(e,A,t),this.engine.onInsert(this.namespaceId,A,e,n)}removeChild(e,A,t,n){if(n){this.delegate.removeChild(e,A,t,n);return}this.parentNode(A)&&this.engine.onRemove(this.namespaceId,A,this.delegate)}selectRootElement(e,A){return this.delegate.selectRootElement(e,A)}parentNode(e){return this.delegate.parentNode(e)}nextSibling(e){return this.delegate.nextSibling(e)}setAttribute(e,A,t,n){this.delegate.setAttribute(e,A,t,n)}removeAttribute(e,A,t){this.delegate.removeAttribute(e,A,t)}addClass(e,A){this.delegate.addClass(e,A)}removeClass(e,A){this.delegate.removeClass(e,A)}setStyle(e,A,t,n){this.delegate.setStyle(e,A,t,n)}removeStyle(e,A,t){this.delegate.removeStyle(e,A,t)}setProperty(e,A,t){A.charAt(0)==nf&&A==iK?this.disableAnimations(e,!!t):this.delegate.setProperty(e,A,t)}setValue(e,A){this.delegate.setValue(e,A)}listen(e,A,t,n){return this.delegate.listen(e,A,t,n)}disableAnimations(e,A){this.engine.disableAnimations(e,A)}},rb=class extends Cf{factory;constructor(e,A,t,n,o){super(A,t,n,o),this.factory=e,this.namespaceId=A}setProperty(e,A,t){A.charAt(0)==nf?A.charAt(1)=="."&&A==iK?(t=t===void 0?!0:!!t,this.disableAnimations(e,t)):this.engine.process(this.namespaceId,e,A.slice(1),t):this.delegate.setProperty(e,A,t)}listen(e,A,t,n){if(A.charAt(0)==nf){let o=jtA(e),a=A.slice(1),r="";return a.charAt(0)!=nf&&([a,r]=VtA(a)),this.engine.listen(this.namespaceId,o,a,r,s=>{let l=s._data||-1;this.factory.scheduleListenerCallback(l,t,s)})}return this.delegate.listen(e,A,t,n)}};function jtA(i){switch(i){case"body":return document.body;case"document":return document;case"window":return window;default:return i}}function VtA(i){let e=i.indexOf("."),A=i.substring(0,e),t=i.slice(e+1);return[A,t]}var df=class{delegate;engine;_zone;_currentId=0;_microtaskId=1;_animationCallbacksBuffer=[];_rendererCache=new Map;_cdRecurDepth=0;constructor(e,A,t){this.delegate=e,this.engine=A,this._zone=t,A.onRemovalComplete=(n,o)=>{o?.removeChild(null,n)}}createRenderer(e,A){let n=this.delegate.createRenderer(e,A);if(!e||!A?.data?.animation){let l=this._rendererCache,g=l.get(n);if(!g){let C=()=>l.delete(n);g=new Cf("",n,this.engine,C),l.set(n,g)}return g}let o=A.id,a=A.id+"-"+this._currentId;this._currentId++,this.engine.register(a,e);let r=l=>{Array.isArray(l)?l.forEach(r):this.engine.registerTrigger(o,a,e,l.name,l)};return A.data.animation.forEach(r),new rb(this,a,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){queueMicrotask(()=>{this._microtaskId++})}scheduleListenerCallback(e,A,t){if(e>=0&&eA(t));return}let n=this._animationCallbacksBuffer;n.length==0&&queueMicrotask(()=>{this._zone.run(()=>{n.forEach(o=>{let[a,r]=o;a(r)}),this._animationCallbacksBuffer=[]})}),n.push([A,t])}end(){this._cdRecurDepth--,this._cdRecurDepth==0&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}componentReplaced(e){this.engine.flush(),this.delegate.componentReplaced?.(e)}};var WtA=(()=>{class i extends ZI{constructor(A,t,n){super(A,t,n)}ngOnDestroy(){this.flush()}static \u0275fac=function(t){return new(t||i)(Wo(ci),Wo(P1),Wo(j1))};static \u0275prov=jA({token:i,factory:i.\u0275fac})}return i})();function ZtA(){return new of}function XtA(){return new df(w(zN),w(ZI),w(We))}var nK=[{provide:j1,useFactory:ZtA},{provide:ZI,useClass:WtA},{provide:zr,useFactory:XtA}],aLA=[{provide:P1,useClass:sb},{provide:b1,useValue:"NoopAnimations"},...nK],$tA=[{provide:P1,useFactory:()=>new cf},{provide:b1,useFactory:()=>"BrowserAnimations"},...nK];function oK(){return n3("NgEagerAnimations"),[...$tA]}function xr(i){i||(i=w(Er));let e=new Fi(A=>{if(i.destroyed){A.next();return}return i.onDestroy(A.next.bind(A))});return A=>A.pipe(yt(e))}var gb=class{source;destroyed=!1;destroyRef=w(Er);constructor(e){this.source=e,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}subscribe(e){if(this.destroyed)throw new Nt(953,!1);let A=this.source.pipe(xr(this.destroyRef)).subscribe({next:t=>e(t)});return{unsubscribe:()=>A.unsubscribe()}}};function Hn(i,e){return new gb(i)}function Fo(i,e){let A=e?.injector??w(St),t=new _g(1),n=Fn(()=>{let o;try{o=i()}catch(a){wa(()=>t.error(a));return}wa(()=>t.next(o))},{injector:A,manualCleanup:!0});return A.get(Er).onDestroy(()=>{n.destroy(),t.complete()}),t.asObservable()}function sr(i,e){let t=!e?.manualCleanup?e?.injector?.get(Er)??w(Er):null,n=AiA(e?.equal),o;e?.requireSync?o=mA({kind:0},{equal:n}):o=mA({kind:1,value:e?.initialValue},{equal:n});let a,r=i.subscribe({next:s=>o.set({kind:1,value:s}),error:s=>{o.set({kind:2,error:s}),a?.()},complete:()=>{a?.()}});if(e?.requireSync&&o().kind===0)throw new Nt(601,!1);return a=t?.onDestroy(r.unsubscribe.bind(r)),ye(()=>{let s=o();switch(s.kind){case 1:return s.value;case 2:throw s.error;case 0:throw new Nt(601,!1)}},{equal:e?.equal})}function AiA(i=Object.is){return(e,A)=>e.kind===1&&A.kind===1&&i(e.value,A.value)}function If(i){return NN($A(P({},i),{loader:void 0,stream:e=>{let A,t=()=>A?.unsubscribe();e.abortSignal.addEventListener("abort",t);let n=mA({value:void 0}),o,a=new Promise(l=>o=l);function r(l){n.set(l),o?.(n),o=void 0}let s=i.stream;if(s===void 0)throw new Nt(990,!1);return A=s(e).subscribe({next:l=>r({value:l}),error:l=>{r({error:FN(l)}),e.abortSignal.removeEventListener("abort",t)},complete:()=>{o&&r({error:new Nt(991,!1)}),e.abortSignal.removeEventListener("abort",t)}}),a}}))}function Ib(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var W1=Ib();function CK(i){W1=i}var V1={exec:()=>null};function eo(i,e=""){let A=typeof i=="string"?i:i.source,t={replace:(n,o)=>{let a=typeof o=="string"?o:o.source;return a=a.replace(Rs.caret,"$1"),A=A.replace(n,a),t},getRegex:()=>new RegExp(A,e)};return t}var eiA=(()=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^
/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:i=>new RegExp(`^( {0,3}${i})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:i=>new RegExp(`^ {0,${Math.min(3,i-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:i=>new RegExp(`^ {0,${Math.min(3,i-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:i=>new RegExp(`^ {0,${Math.min(3,i-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:i=>new RegExp(`^ {0,${Math.min(3,i-1)}}#`),htmlBeginRegex:i=>new RegExp(`^ {0,${Math.min(3,i-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:i=>new RegExp(`^ {0,${Math.min(3,i-1)}}>`)},tiA=/^(?:[ \t]*(?:\n|$))+/,iiA=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,niA=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,LQ=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,oiA=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Bb=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,dK=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,IK=eo(dK).replace(/bull/g,Bb).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),aiA=eo(dK).replace(/bull/g,Bb).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),hb=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,riA=/^[^\n]+/,Eb=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,siA=eo(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Eb).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),liA=eo(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Bb).getRegex(),Qf="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Qb=/|$))/,giA=eo("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Qb).replace("tag",Qf).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),BK=eo(hb).replace("hr",LQ).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Qf).getRegex(),ciA=eo(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",BK).getRegex(),ub={blockquote:ciA,code:iiA,def:siA,fences:niA,heading:oiA,hr:LQ,html:giA,lheading:IK,list:liA,newline:tiA,paragraph:BK,table:V1,text:riA},aK=eo("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",LQ).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Qf).getRegex(),CiA=$A(P({},ub),{lheading:aiA,table:aK,paragraph:eo(hb).replace("hr",LQ).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",aK).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Qf).getRegex()}),diA=$A(P({},ub),{html:eo(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Qb).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:V1,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:eo(hb).replace("hr",LQ).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",IK).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),IiA=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,BiA=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,hK=/^( {2,}|\\)\n(?!\s*$)/,hiA=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",eiA?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),pK=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,wiA=eo(pK,"u").replace(/punct/g,uf).getRegex(),yiA=eo(pK,"u").replace(/punct/g,QK).getRegex(),fK="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",DiA=eo(fK,"gu").replace(/notPunctSpace/g,EK).replace(/punctSpace/g,pb).replace(/punct/g,uf).getRegex(),viA=eo(fK,"gu").replace(/notPunctSpace/g,uiA).replace(/punctSpace/g,QiA).replace(/punct/g,QK).getRegex(),biA=eo("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,EK).replace(/punctSpace/g,pb).replace(/punct/g,uf).getRegex(),MiA=eo(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,uK).getRegex(),SiA="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",kiA=eo(SiA,"gu").replace(/notPunctSpace/g,fiA).replace(/punctSpace/g,piA).replace(/punct/g,uK).getRegex(),_iA=eo(/\\(punct)/,"gu").replace(/punct/g,uf).getRegex(),xiA=eo(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),RiA=eo(Qb).replace("(?:-->|$)","-->").getRegex(),NiA=eo("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",RiA).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),hf=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,FiA=eo(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",hf).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),mK=eo(/^!?\[(label)\]\[(ref)\]/).replace("label",hf).replace("ref",Eb).getRegex(),wK=eo(/^!?\[(ref)\](?:\[\])?/).replace("ref",Eb).getRegex(),LiA=eo("reflink|nolink(?!\\()","g").replace("reflink",mK).replace("nolink",wK).getRegex(),rK=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,fb={_backpedal:V1,anyPunctuation:_iA,autolink:xiA,blockSkip:miA,br:hK,code:BiA,del:V1,delLDelim:V1,delRDelim:V1,emStrongLDelim:wiA,emStrongRDelimAst:DiA,emStrongRDelimUnd:biA,escape:IiA,link:FiA,nolink:wK,punctuation:EiA,reflink:mK,reflinkSearch:LiA,tag:NiA,text:hiA,url:V1},GiA=$A(P({},fb),{link:eo(/^!?\[(label)\]\((.*?)\)/).replace("label",hf).getRegex(),reflink:eo(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",hf).getRegex()}),cb=$A(P({},fb),{emStrongRDelimAst:viA,emStrongLDelim:yiA,delLDelim:MiA,delRDelim:kiA,url:eo(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",rK).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:eo(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},sK=i=>UiA[i];function Hc(i,e){if(e){if(Rs.escapeTest.test(i))return i.replace(Rs.escapeReplace,sK)}else if(Rs.escapeTestNoEncode.test(i))return i.replace(Rs.escapeReplaceNoEncode,sK);return i}function lK(i){try{i=encodeURI(i).replace(Rs.percentDecode,"%")}catch(e){return null}return i}function gK(i,e){let A=i.replace(Rs.findPipe,(o,a,r)=>{let s=!1,l=a;for(;--l>=0&&r[l]==="\\";)s=!s;return s?"|":" |"}),t=A.split(Rs.splitPipe),n=0;if(t[0].trim()||t.shift(),t.length>0&&!t.at(-1)?.trim()&&t.pop(),e)if(t.length>e)t.splice(e);else for(;t.length0?-2:-1}function OiA(i,e=0){let A=e,t="";for(let n of i)if(n===" "){let o=4-A%4;t+=" ".repeat(o),A+=o}else t+=n,A++;return t}function cK(i,e,A,t,n){let o=e.href,a=e.title||null,r=i[1].replace(n.other.outputLinkReplace,"$1");t.state.inLink=!0;let s={type:i[0].charAt(0)==="!"?"image":"link",raw:A,href:o,title:a,text:r,tokens:t.inlineTokens(r)};return t.state.inLink=!1,s}function JiA(i,e,A){let t=i.match(A.other.indentCodeCompensation);if(t===null)return e;let n=t[1];return e.split(` -`).map(o=>{let a=o.match(A.other.beginningSpace);if(a===null)return o;let[r]=a;return r.length>=n.length?o.slice(n.length):o}).join(` -`)}var Ef=class{options;rules;lexer;constructor(i){this.options=i||W1}space(i){let e=this.rules.block.newline.exec(i);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(i){let e=this.rules.block.code.exec(i);if(e){let A=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?A:NQ(A,` -`)}}}fences(i){let e=this.rules.block.fences.exec(i);if(e){let A=e[0],t=JiA(A,e[3]||"",this.rules);return{type:"code",raw:A,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:t}}}heading(i){let e=this.rules.block.heading.exec(i);if(e){let A=e[2].trim();if(this.rules.other.endingHash.test(A)){let t=NQ(A,"#");(this.options.pedantic||!t||this.rules.other.endingSpaceChar.test(t))&&(A=t.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:A,tokens:this.lexer.inline(A)}}}hr(i){let e=this.rules.block.hr.exec(i);if(e)return{type:"hr",raw:NQ(e[0],` -`)}}blockquote(i){let e=this.rules.block.blockquote.exec(i);if(e){let A=NQ(e[0],` -`).split(` -`),t="",n="",o=[];for(;A.length>0;){let a=!1,r=[],s;for(s=0;s1,n={type:"list",raw:"",ordered:t,start:t?+A.slice(0,-1):"",loose:!1,items:[]};A=t?`\\d{1,9}\\${A.slice(-1)}`:`\\${A}`,this.options.pedantic&&(A=t?A:"[*+-]");let o=this.rules.other.listItemRegex(A),a=!1;for(;i;){let s=!1,l="",g="";if(!(e=o.exec(i))||this.rules.block.hr.test(i))break;l=e[0],i=i.substring(l.length);let C=OiA(e[2].split(` -`,1)[0],e[1].length),d=i.split(` -`,1)[0],B=!C.trim(),u=0;if(this.options.pedantic?(u=2,g=C.trimStart()):B?u=e[1].length+1:(u=C.search(this.rules.other.nonSpaceChar),u=u>4?1:u,g=C.slice(u),u+=e[1].length),B&&this.rules.other.blankLine.test(d)&&(l+=d+` -`,i=i.substring(d.length+1),s=!0),!s){let E=this.rules.other.nextBulletRegex(u),f=this.rules.other.hrRegex(u),m=this.rules.other.fencesBeginRegex(u),v=this.rules.other.headingBeginRegex(u),S=this.rules.other.htmlBeginRegex(u),k=this.rules.other.blockquoteBeginRegex(u);for(;i;){let M=i.split(` -`,1)[0],x;if(d=M,this.options.pedantic?(d=d.replace(this.rules.other.listReplaceNesting," "),x=d):x=d.replace(this.rules.other.tabCharGlobal," "),m.test(d)||v.test(d)||S.test(d)||k.test(d)||E.test(d)||f.test(d))break;if(x.search(this.rules.other.nonSpaceChar)>=u||!d.trim())g+=` -`+x.slice(u);else{if(B||C.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||m.test(C)||v.test(C)||f.test(C))break;g+=` -`+d}B=!d.trim(),l+=M+` -`,i=i.substring(M.length+1),C=x.slice(u)}}n.loose||(a?n.loose=!0:this.rules.other.doubleBlankLine.test(l)&&(a=!0)),n.items.push({type:"list_item",raw:l,task:!!this.options.gfm&&this.rules.other.listIsTask.test(g),loose:!1,text:g,tokens:[]}),n.raw+=l}let r=n.items.at(-1);if(r)r.raw=r.raw.trimEnd(),r.text=r.text.trimEnd();else return;n.raw=n.raw.trimEnd();for(let s of n.items){if(this.lexer.state.top=!1,s.tokens=this.lexer.blockTokens(s.text,[]),s.task){if(s.text=s.text.replace(this.rules.other.listReplaceTask,""),s.tokens[0]?.type==="text"||s.tokens[0]?.type==="paragraph"){s.tokens[0].raw=s.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),s.tokens[0].text=s.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let g=this.lexer.inlineQueue.length-1;g>=0;g--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[g].src)){this.lexer.inlineQueue[g].src=this.lexer.inlineQueue[g].src.replace(this.rules.other.listReplaceTask,"");break}}let l=this.rules.other.listTaskCheckbox.exec(s.raw);if(l){let g={type:"checkbox",raw:l[0]+" ",checked:l[0]!=="[ ]"};s.checked=g.checked,n.loose?s.tokens[0]&&["paragraph","text"].includes(s.tokens[0].type)&&"tokens"in s.tokens[0]&&s.tokens[0].tokens?(s.tokens[0].raw=g.raw+s.tokens[0].raw,s.tokens[0].text=g.raw+s.tokens[0].text,s.tokens[0].tokens.unshift(g)):s.tokens.unshift({type:"paragraph",raw:g.raw,text:g.raw,tokens:[g]}):s.tokens.unshift(g)}}if(!n.loose){let l=s.tokens.filter(C=>C.type==="space"),g=l.length>0&&l.some(C=>this.rules.other.anyLine.test(C.raw));n.loose=g}}if(n.loose)for(let s of n.items){s.loose=!0;for(let l of s.tokens)l.type==="text"&&(l.type="paragraph")}return n}}html(i){let e=this.rules.block.html.exec(i);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(i){let e=this.rules.block.def.exec(i);if(e){let A=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),t=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",n=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:A,raw:e[0],href:t,title:n}}}table(i){let e=this.rules.block.table.exec(i);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let A=gK(e[1]),t=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),n=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(` -`):[],o={type:"table",raw:e[0],header:[],align:[],rows:[]};if(A.length===t.length){for(let a of t)this.rules.other.tableAlignRight.test(a)?o.align.push("right"):this.rules.other.tableAlignCenter.test(a)?o.align.push("center"):this.rules.other.tableAlignLeft.test(a)?o.align.push("left"):o.align.push(null);for(let a=0;a({text:r,tokens:this.lexer.inline(r),header:!1,align:o.align[s]})));return o}}lheading(i){let e=this.rules.block.lheading.exec(i);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(i){let e=this.rules.block.paragraph.exec(i);if(e){let A=e[1].charAt(e[1].length-1)===` -`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:A,tokens:this.lexer.inline(A)}}}text(i){let e=this.rules.block.text.exec(i);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(i){let e=this.rules.inline.escape.exec(i);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(i){let e=this.rules.inline.tag.exec(i);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(i){let e=this.rules.inline.link.exec(i);if(e){let A=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(A)){if(!this.rules.other.endAngleBracket.test(A))return;let o=NQ(A.slice(0,-1),"\\");if((A.length-o.length)%2===0)return}else{let o=TiA(e[2],"()");if(o===-2)return;if(o>-1){let a=(e[0].indexOf("!")===0?5:4)+e[1].length+o;e[2]=e[2].substring(0,o),e[0]=e[0].substring(0,a).trim(),e[3]=""}}let t=e[2],n="";if(this.options.pedantic){let o=this.rules.other.pedanticHrefTitle.exec(t);o&&(t=o[1],n=o[3])}else n=e[3]?e[3].slice(1,-1):"";return t=t.trim(),this.rules.other.startAngleBracket.test(t)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(A)?t=t.slice(1):t=t.slice(1,-1)),cK(e,{href:t&&t.replace(this.rules.inline.anyPunctuation,"$1"),title:n&&n.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(i,e){let A;if((A=this.rules.inline.reflink.exec(i))||(A=this.rules.inline.nolink.exec(i))){let t=(A[2]||A[1]).replace(this.rules.other.multipleSpaceGlobal," "),n=e[t.toLowerCase()];if(!n){let o=A[0].charAt(0);return{type:"text",raw:o,text:o}}return cK(A,n,A[0],this.lexer,this.rules)}}emStrong(i,e,A=""){let t=this.rules.inline.emStrongLDelim.exec(i);if(!(!t||t[3]&&A.match(this.rules.other.unicodeAlphaNumeric))&&(!(t[1]||t[2])||!A||this.rules.inline.punctuation.exec(A))){let n=[...t[0]].length-1,o,a,r=n,s=0,l=t[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(l.lastIndex=0,e=e.slice(-1*i.length+n);(t=l.exec(e))!=null;){if(o=t[1]||t[2]||t[3]||t[4]||t[5]||t[6],!o)continue;if(a=[...o].length,t[3]||t[4]){r+=a;continue}else if((t[5]||t[6])&&n%3&&!((n+a)%3)){s+=a;continue}if(r-=a,r>0)continue;a=Math.min(a,a+r+s);let g=[...t[0]][0].length,C=i.slice(0,n+t.index+g+a);if(Math.min(n,a)%2){let B=C.slice(1,-1);return{type:"em",raw:C,text:B,tokens:this.lexer.inlineTokens(B)}}let d=C.slice(2,-2);return{type:"strong",raw:C,text:d,tokens:this.lexer.inlineTokens(d)}}}}codespan(i){let e=this.rules.inline.code.exec(i);if(e){let A=e[2].replace(this.rules.other.newLineCharGlobal," "),t=this.rules.other.nonSpaceChar.test(A),n=this.rules.other.startingSpaceChar.test(A)&&this.rules.other.endingSpaceChar.test(A);return t&&n&&(A=A.substring(1,A.length-1)),{type:"codespan",raw:e[0],text:A}}}br(i){let e=this.rules.inline.br.exec(i);if(e)return{type:"br",raw:e[0]}}del(i,e,A=""){let t=this.rules.inline.delLDelim.exec(i);if(t&&(!t[1]||!A||this.rules.inline.punctuation.exec(A))){let n=[...t[0]].length-1,o,a,r=n,s=this.rules.inline.delRDelim;for(s.lastIndex=0,e=e.slice(-1*i.length+n);(t=s.exec(e))!=null;){if(o=t[1]||t[2]||t[3]||t[4]||t[5]||t[6],!o||(a=[...o].length,a!==n))continue;if(t[3]||t[4]){r+=a;continue}if(r-=a,r>0)continue;a=Math.min(a,a+r);let l=[...t[0]][0].length,g=i.slice(0,n+t.index+l+a),C=g.slice(n,-n);return{type:"del",raw:g,text:C,tokens:this.lexer.inlineTokens(C)}}}}autolink(i){let e=this.rules.inline.autolink.exec(i);if(e){let A,t;return e[2]==="@"?(A=e[1],t="mailto:"+A):(A=e[1],t=A),{type:"link",raw:e[0],text:A,href:t,tokens:[{type:"text",raw:A,text:A}]}}}url(i){let e;if(e=this.rules.inline.url.exec(i)){let A,t;if(e[2]==="@")A=e[0],t="mailto:"+A;else{let n;do n=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(n!==e[0]);A=e[0],e[1]==="www."?t="http://"+e[0]:t=e[0]}return{type:"link",raw:e[0],text:A,href:t,tokens:[{type:"text",raw:A,text:A}]}}}inlineText(i){let e=this.rules.inline.text.exec(i);if(e){let A=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:A}}}},Tg=class Cb{tokens;options;state;inlineQueue;tokenizer;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||W1,this.options.tokenizer=this.options.tokenizer||new Ef,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let A={other:Rs,block:Bf.normal,inline:RQ.normal};this.options.pedantic?(A.block=Bf.pedantic,A.inline=RQ.pedantic):this.options.gfm&&(A.block=Bf.gfm,this.options.breaks?A.inline=RQ.breaks:A.inline=RQ.gfm),this.tokenizer.rules=A}static get rules(){return{block:Bf,inline:RQ}}static lex(e,A){return new Cb(A).lex(e)}static lexInline(e,A){return new Cb(A).inlineTokens(e)}lex(e){e=e.replace(Rs.carriageReturn,` -`),this.blockTokens(e,this.tokens);for(let A=0;A(n=a.call({lexer:this},e,A))?(e=e.substring(n.raw.length),A.push(n),!0):!1))continue;if(n=this.tokenizer.space(e)){e=e.substring(n.raw.length);let a=A.at(-1);n.raw.length===1&&a!==void 0?a.raw+=` -`:A.push(n);continue}if(n=this.tokenizer.code(e)){e=e.substring(n.raw.length);let a=A.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(` -`)?"":` -`)+n.raw,a.text+=` -`+n.text,this.inlineQueue.at(-1).src=a.text):A.push(n);continue}if(n=this.tokenizer.fences(e)){e=e.substring(n.raw.length),A.push(n);continue}if(n=this.tokenizer.heading(e)){e=e.substring(n.raw.length),A.push(n);continue}if(n=this.tokenizer.hr(e)){e=e.substring(n.raw.length),A.push(n);continue}if(n=this.tokenizer.blockquote(e)){e=e.substring(n.raw.length),A.push(n);continue}if(n=this.tokenizer.list(e)){e=e.substring(n.raw.length),A.push(n);continue}if(n=this.tokenizer.html(e)){e=e.substring(n.raw.length),A.push(n);continue}if(n=this.tokenizer.def(e)){e=e.substring(n.raw.length);let a=A.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(` -`)?"":` -`)+n.raw,a.text+=` -`+n.raw,this.inlineQueue.at(-1).src=a.text):this.tokens.links[n.tag]||(this.tokens.links[n.tag]={href:n.href,title:n.title},A.push(n));continue}if(n=this.tokenizer.table(e)){e=e.substring(n.raw.length),A.push(n);continue}if(n=this.tokenizer.lheading(e)){e=e.substring(n.raw.length),A.push(n);continue}let o=e;if(this.options.extensions?.startBlock){let a=1/0,r=e.slice(1),s;this.options.extensions.startBlock.forEach(l=>{s=l.call({lexer:this},r),typeof s=="number"&&s>=0&&(a=Math.min(a,s))}),a<1/0&&a>=0&&(o=e.substring(0,a+1))}if(this.state.top&&(n=this.tokenizer.paragraph(o))){let a=A.at(-1);t&&a?.type==="paragraph"?(a.raw+=(a.raw.endsWith(` -`)?"":` -`)+n.raw,a.text+=` -`+n.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):A.push(n),t=o.length!==e.length,e=e.substring(n.raw.length);continue}if(n=this.tokenizer.text(e)){e=e.substring(n.raw.length);let a=A.at(-1);a?.type==="text"?(a.raw+=(a.raw.endsWith(` -`)?"":` -`)+n.raw,a.text+=` -`+n.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):A.push(n);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,A}inline(e,A=[]){return this.inlineQueue.push({src:e,tokens:A}),A}inlineTokens(e,A=[]){let t=e,n=null;if(this.tokens.links){let s=Object.keys(this.tokens.links);if(s.length>0)for(;(n=this.tokenizer.rules.inline.reflinkSearch.exec(t))!=null;)s.includes(n[0].slice(n[0].lastIndexOf("[")+1,-1))&&(t=t.slice(0,n.index)+"["+"a".repeat(n[0].length-2)+"]"+t.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(n=this.tokenizer.rules.inline.anyPunctuation.exec(t))!=null;)t=t.slice(0,n.index)+"++"+t.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let o;for(;(n=this.tokenizer.rules.inline.blockSkip.exec(t))!=null;)o=n[2]?n[2].length:0,t=t.slice(0,n.index+o)+"["+"a".repeat(n[0].length-o-2)+"]"+t.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);t=this.options.hooks?.emStrongMask?.call({lexer:this},t)??t;let a=!1,r="";for(;e;){a||(r=""),a=!1;let s;if(this.options.extensions?.inline?.some(g=>(s=g.call({lexer:this},e,A))?(e=e.substring(s.raw.length),A.push(s),!0):!1))continue;if(s=this.tokenizer.escape(e)){e=e.substring(s.raw.length),A.push(s);continue}if(s=this.tokenizer.tag(e)){e=e.substring(s.raw.length),A.push(s);continue}if(s=this.tokenizer.link(e)){e=e.substring(s.raw.length),A.push(s);continue}if(s=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(s.raw.length);let g=A.at(-1);s.type==="text"&&g?.type==="text"?(g.raw+=s.raw,g.text+=s.text):A.push(s);continue}if(s=this.tokenizer.emStrong(e,t,r)){e=e.substring(s.raw.length),A.push(s);continue}if(s=this.tokenizer.codespan(e)){e=e.substring(s.raw.length),A.push(s);continue}if(s=this.tokenizer.br(e)){e=e.substring(s.raw.length),A.push(s);continue}if(s=this.tokenizer.del(e,t,r)){e=e.substring(s.raw.length),A.push(s);continue}if(s=this.tokenizer.autolink(e)){e=e.substring(s.raw.length),A.push(s);continue}if(!this.state.inLink&&(s=this.tokenizer.url(e))){e=e.substring(s.raw.length),A.push(s);continue}let l=e;if(this.options.extensions?.startInline){let g=1/0,C=e.slice(1),d;this.options.extensions.startInline.forEach(B=>{d=B.call({lexer:this},C),typeof d=="number"&&d>=0&&(g=Math.min(g,d))}),g<1/0&&g>=0&&(l=e.substring(0,g+1))}if(s=this.tokenizer.inlineText(l)){e=e.substring(s.raw.length),s.raw.slice(-1)!=="_"&&(r=s.raw.slice(-1)),a=!0;let g=A.at(-1);g?.type==="text"?(g.raw+=s.raw,g.text+=s.text):A.push(s);continue}if(e){let g="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(g);break}else throw new Error(g)}}return A}},e2=class{options;parser;constructor(i){this.options=i||W1}space(i){return""}code({text:i,lang:e,escaped:A}){let t=(e||"").match(Rs.notSpaceStart)?.[0],n=i.replace(Rs.endingNewline,"")+` -`;return t?'
'+(A?n:Hc(n,!0))+`
-`:"
"+(A?n:Hc(n,!0))+`
-`}blockquote({tokens:i}){return`
-${this.parser.parse(i)}
-`}html({text:i}){return i}def(i){return""}heading({tokens:i,depth:e}){return`${this.parser.parseInline(i)} -`}hr(i){return`
-`}list(i){let e=i.ordered,A=i.start,t="";for(let a=0;a -`+t+" -`}listitem(i){return`
  • ${this.parser.parse(i.tokens)}
  • -`}checkbox({checked:i}){return" '}paragraph({tokens:i}){return`

    ${this.parser.parseInline(i)}

    -`}table(i){let e="",A="";for(let n=0;n${t}`),` - -`+e+` -`+t+`
    -`}tablerow({text:i}){return` -${i} -`}tablecell(i){let e=this.parser.parseInline(i.tokens),A=i.header?"th":"td";return(i.align?`<${A} align="${i.align}">`:`<${A}>`)+e+` -`}strong({tokens:i}){return`${this.parser.parseInline(i)}`}em({tokens:i}){return`${this.parser.parseInline(i)}`}codespan({text:i}){return`${Hc(i,!0)}`}br(i){return"
    "}del({tokens:i}){return`${this.parser.parseInline(i)}`}link({href:i,title:e,tokens:A}){let t=this.parser.parseInline(A),n=lK(i);if(n===null)return t;i=n;let o='
    ",o}image({href:i,title:e,text:A,tokens:t}){t&&(A=this.parser.parseInline(t,this.parser.textRenderer));let n=lK(i);if(n===null)return Hc(A);i=n;let o=`${Hc(A)}{let a=n[o].flat(1/0);A=A.concat(this.walkTokens(a,e))}):n.tokens&&(A=A.concat(this.walkTokens(n.tokens,e)))}}return A}use(...i){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return i.forEach(A=>{let t=P({},A);if(t.async=this.defaults.async||t.async||!1,A.extensions&&(A.extensions.forEach(n=>{if(!n.name)throw new Error("extension name required");if("renderer"in n){let o=e.renderers[n.name];o?e.renderers[n.name]=function(...a){let r=n.renderer.apply(this,a);return r===!1&&(r=o.apply(this,a)),r}:e.renderers[n.name]=n.renderer}if("tokenizer"in n){if(!n.level||n.level!=="block"&&n.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let o=e[n.level];o?o.unshift(n.tokenizer):e[n.level]=[n.tokenizer],n.start&&(n.level==="block"?e.startBlock?e.startBlock.push(n.start):e.startBlock=[n.start]:n.level==="inline"&&(e.startInline?e.startInline.push(n.start):e.startInline=[n.start]))}"childTokens"in n&&n.childTokens&&(e.childTokens[n.name]=n.childTokens)}),t.extensions=e),A.renderer){let n=this.defaults.renderer||new e2(this.defaults);for(let o in A.renderer){if(!(o in n))throw new Error(`renderer '${o}' does not exist`);if(["options","parser"].includes(o))continue;let a=o,r=A.renderer[a],s=n[a];n[a]=(...l)=>{let g=r.apply(n,l);return g===!1&&(g=s.apply(n,l)),g||""}}t.renderer=n}if(A.tokenizer){let n=this.defaults.tokenizer||new Ef(this.defaults);for(let o in A.tokenizer){if(!(o in n))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;let a=o,r=A.tokenizer[a],s=n[a];n[a]=(...l)=>{let g=r.apply(n,l);return g===!1&&(g=s.apply(n,l)),g}}t.tokenizer=n}if(A.hooks){let n=this.defaults.hooks||new FQ;for(let o in A.hooks){if(!(o in n))throw new Error(`hook '${o}' does not exist`);if(["options","block"].includes(o))continue;let a=o,r=A.hooks[a],s=n[a];FQ.passThroughHooks.has(o)?n[a]=l=>{if(this.defaults.async&&FQ.passThroughHooksRespectAsync.has(o))return re(this,null,function*(){let C=yield r.call(n,l);return s.call(n,C)});let g=r.call(n,l);return s.call(n,g)}:n[a]=(...l)=>{if(this.defaults.async)return re(this,null,function*(){let C=yield r.apply(n,l);return C===!1&&(C=yield s.apply(n,l)),C});let g=r.apply(n,l);return g===!1&&(g=s.apply(n,l)),g}}t.hooks=n}if(A.walkTokens){let n=this.defaults.walkTokens,o=A.walkTokens;t.walkTokens=function(a){let r=[];return r.push(o.call(this,a)),n&&(r=r.concat(n.call(this,a))),r}}this.defaults=P(P({},this.defaults),t)}),this}setOptions(i){return this.defaults=P(P({},this.defaults),i),this}lexer(i,e){return Tg.lex(i,e??this.defaults)}parser(i,e){return Og.parse(i,e??this.defaults)}parseMarkdown(i){return(e,A)=>{let t=P({},A),n=P(P({},this.defaults),t),o=this.onError(!!n.silent,!!n.async);if(this.defaults.async===!0&&t.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(n.hooks&&(n.hooks.options=n,n.hooks.block=i),n.async)return re(this,null,function*(){let a=n.hooks?yield n.hooks.preprocess(e):e,r=yield(n.hooks?yield n.hooks.provideLexer():i?Tg.lex:Tg.lexInline)(a,n),s=n.hooks?yield n.hooks.processAllTokens(r):r;n.walkTokens&&(yield Promise.all(this.walkTokens(s,n.walkTokens)));let l=yield(n.hooks?yield n.hooks.provideParser():i?Og.parse:Og.parseInline)(s,n);return n.hooks?yield n.hooks.postprocess(l):l}).catch(o);try{n.hooks&&(e=n.hooks.preprocess(e));let a=(n.hooks?n.hooks.provideLexer():i?Tg.lex:Tg.lexInline)(e,n);n.hooks&&(a=n.hooks.processAllTokens(a)),n.walkTokens&&this.walkTokens(a,n.walkTokens);let r=(n.hooks?n.hooks.provideParser():i?Og.parse:Og.parseInline)(a,n);return n.hooks&&(r=n.hooks.postprocess(r)),r}catch(a){return o(a)}}}onError(i,e){return A=>{if(A.message+=` -Please report this to https://github.com/markedjs/marked.`,i){let t="

    An error occurred:

    "+Hc(A.message+"",!0)+"
    ";return e?Promise.resolve(t):t}if(e)return Promise.reject(A);throw A}}},q1=new YiA;function lo(i,e){return q1.parse(i,e)}lo.options=lo.setOptions=function(i){return q1.setOptions(i),lo.defaults=q1.defaults,CK(lo.defaults),lo};lo.getDefaults=Ib;lo.defaults=W1;lo.use=function(...i){return q1.use(...i),lo.defaults=q1.defaults,CK(lo.defaults),lo};lo.walkTokens=function(i,e){return q1.walkTokens(i,e)};lo.parseInline=q1.parseInline;lo.Parser=Og;lo.parser=Og.parse;lo.Renderer=e2;lo.TextRenderer=mb;lo.Lexer=Tg;lo.lexer=Tg.lex;lo.Tokenizer=Ef;lo.Hooks=FQ;lo.parse=lo;var QLA=lo.options,uLA=lo.setOptions,pLA=lo.use,fLA=lo.walkTokens,mLA=lo.parseInline;var wLA=Og.parse,yLA=Tg.lex;var HiA=["*"],ziA="Copy",PiA="Copied",jiA=(()=>{class i{constructor(){this._buttonClick$=new ne,this.copied=sr(this._buttonClick$.pipe(Mi(()=>Vi(oe(!0),$p(3e3).pipe(qE(!1)))),xg(),Js(1))),this.copiedText=ye(()=>this.copied()?PiA:ziA)}onCopyToClipboardClick(){this._buttonClick$.next()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["markdown-clipboard"]],decls:2,vars:3,consts:[[1,"markdown-clipboard-button",3,"click"]],template:function(t,n){t&1&&(Ln(0,"button",0),yI("click",function(){return n.onCopyToClipboardClick()}),D(1),Xn()),t&2&&(_A("copied",n.copied()),Q(),nA(n.copiedText()))},encapsulation:2,changeDetection:0})}}return i})(),ViA=new MA("CLIPBOARD_OPTIONS");var qiA=new MA("MARKED_EXTENSIONS"),WiA=new MA("MARKED_OPTIONS"),ZiA=new MA("MERMAID_OPTIONS"),XiA=new MA("SANITIZE");function $iA(i){return typeof i=="function"}var AnA="[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information",enA="[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information",tnA="[ngx-markdown] When using the `mermaid` attribute you *have to* include Mermaid files to `angular.json` or use imports. See README for more information",inA="[ngx-markdown] When using the `clipboard` attribute you *have to* include Clipboard files to `angular.json` or use imports. See README for more information",nnA="[ngx-markdown] When using the `clipboard` attribute you *have to* provide the `viewContainerRef` parameter to `MarkdownService.render()` function",onA="[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information";var yK=(()=>{class i{get options(){return this._options}set options(A){this._options=P(P({},this.DEFAULT_MARKED_OPTIONS),A)}get renderer(){return this.options.renderer}set renderer(A){this.options.renderer=A}constructor(){this.clipboardOptions=w(ViA,{optional:!0}),this.extensions=w(qiA,{optional:!0}),this.http=w(Mr,{optional:!0}),this.mermaidOptions=w(ZiA,{optional:!0}),this.platform=w(i3),this.sanitize=w(XiA,{optional:!0}),this.sanitizer=w(jC),this.DEFAULT_MARKED_OPTIONS={renderer:new e2},this.DEFAULT_KATEX_OPTIONS={delimiters:[{left:"$$",right:"$$",display:!0},{left:"$",right:"$",display:!1},{left:"\\(",right:"\\)",display:!1},{left:"\\begin{equation}",right:"\\end{equation}",display:!0},{left:"\\begin{align}",right:"\\end{align}",display:!0},{left:"\\begin{alignat}",right:"\\end{alignat}",display:!0},{left:"\\begin{gather}",right:"\\end{gather}",display:!0},{left:"\\begin{CD}",right:"\\end{CD}",display:!0},{left:"\\[",right:"\\]",display:!0}]},this.DEFAULT_MERMAID_OPTIONS={startOnLoad:!1},this.DEFAULT_CLIPBOARD_OPTIONS={buttonComponent:void 0},this.DEFAULT_PARSE_OPTIONS={decodeHtml:!1,inline:!1,emoji:!1,mermaid:!1,markedOptions:void 0,disableSanitizer:!1},this.DEFAULT_RENDER_OPTIONS={clipboard:!1,clipboardOptions:void 0,katex:!1,katexOptions:void 0,mermaid:!1,mermaidOptions:void 0},this.DEFAULT_SECURITY_CONTEXT=Ng.HTML,this._options=null,this._reload$=new ne,this.reload$=this._reload$.asObservable(),this.options=w(WiA,{optional:!0})}parse(A,t=this.DEFAULT_PARSE_OPTIONS){let{decodeHtml:n,inline:o,emoji:a,mermaid:r,disableSanitizer:s}=t,l=P(P({},this.options),t.markedOptions),g=l.renderer||this.renderer||new e2;this.extensions&&(this.renderer=this.extendsRendererForExtensions(g)),r&&(this.renderer=this.extendsRendererForMermaid(g));let C=this.trimIndentation(A),d=n?this.decodeHtml(C):C,B=a?this.parseEmoji(d):d,u=this.parseMarked(B,l,o);return s?u:this.sanitizeHtml(u)}render(A,t=this.DEFAULT_RENDER_OPTIONS,n){let{clipboard:o,clipboardOptions:a,katex:r,katexOptions:s,mermaid:l,mermaidOptions:g}=t;r&&this.renderKatex(A,P(P({},this.DEFAULT_KATEX_OPTIONS),s)),l&&this.renderMermaid(A,P(P(P({},this.DEFAULT_MERMAID_OPTIONS),this.mermaidOptions),g)),o&&this.renderClipboard(A,n,P(P(P({},this.DEFAULT_CLIPBOARD_OPTIONS),this.clipboardOptions),a)),this.highlight(A)}reload(){this._reload$.next()}getSource(A){if(!this.http)throw new Error(onA);return this.http.get(A,{responseType:"text"}).pipe(Se(t=>this.handleExtension(A,t)))}highlight(A){if(!U0(this.platform)||typeof Prism>"u"||typeof Prism.highlightAllUnder>"u")return;A||(A=document);let t=A.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(t,n=>n.classList.add("language-none")),Prism.highlightAllUnder(A)}decodeHtml(A){if(!U0(this.platform))return A;let t=document.createElement("textarea");return t.innerHTML=A,t.value}extendsRendererForExtensions(A){let t=A;return t.\u0275NgxMarkdownRendererExtendedForExtensions===!0||(this.extensions&&this.extensions.length>0&&lo.use(...this.extensions),t.\u0275NgxMarkdownRendererExtendedForExtensions=!0),A}extendsRendererForMermaid(A){let t=A;if(t.\u0275NgxMarkdownRendererExtendedForMermaid===!0)return A;let n=A.code;return A.code=o=>o.lang==="mermaid"?`
    ${o.text}
    `:n(o),t.\u0275NgxMarkdownRendererExtendedForMermaid=!0,A}handleExtension(A,t){let n=A.lastIndexOf("://"),o=n>-1?A.substring(n+4):A,a=o.lastIndexOf("/"),r=a>-1?o.substring(a+1).split("?")[0]:"",s=r.lastIndexOf("."),l=s>-1?r.substring(s+1):"";return l&&l!=="md"?"```"+l+` -`+t+"\n```":t}parseMarked(A,t,n=!1){if(t.renderer){let o=P({},t.renderer);delete o.\u0275NgxMarkdownRendererExtendedForExtensions,delete o.\u0275NgxMarkdownRendererExtendedForMermaid,delete t.renderer,lo.use({renderer:o})}return n?lo.parseInline(A,t):lo.parse(A,t)}parseEmoji(A){if(!U0(this.platform))return A;if(typeof joypixels>"u"||typeof joypixels.shortnameToUnicode>"u")throw new Error(AnA);return joypixels.shortnameToUnicode(A)}renderKatex(A,t){if(U0(this.platform)){if(typeof katex>"u"||typeof renderMathInElement>"u")throw new Error(enA);renderMathInElement(A,t)}}renderClipboard(A,t,n){if(!U0(this.platform))return;if(typeof ClipboardJS>"u")throw new Error(inA);if(!t)throw new Error(nnA);let{buttonComponent:o,buttonTemplate:a}=n,r=A.querySelectorAll("pre");for(let s=0;sC.classList.add("hover"),g.onmouseleave=()=>C.classList.remove("hover");let d;if(o){let u=t.createComponent(o);d=u.hostView,u.changeDetectorRef.markForCheck()}else if(a)d=t.createEmbeddedView(a);else{let u=t.createComponent(jiA);d=u.hostView,u.changeDetectorRef.markForCheck()}let B;d.rootNodes.forEach(u=>{C.appendChild(u),B=new ClipboardJS(u,{text:()=>l.innerText})}),d.onDestroy(()=>B.destroy())}}renderMermaid(A,t=this.DEFAULT_MERMAID_OPTIONS){if(!U0(this.platform))return;if(typeof mermaid>"u"||typeof mermaid.initialize>"u")throw new Error(tnA);let n=A.querySelectorAll(".mermaid");n.length!==0&&(mermaid.initialize(t),mermaid.run({nodes:n}))}trimIndentation(A){if(!A)return"";let t;return A.split(` -`).map(n=>{let o=t;return n.length>0&&(o=isNaN(o)?n.search(/\S|$/):Math.min(n.search(/\S|$/),o)),isNaN(t)&&(t=o),o?n.substring(o):n}).join(` -`)}sanitizeHtml(A){return re(this,null,function*(){return $iA(this.sanitize)?this.sanitize(yield A):this.sanitize!==Ng.NONE?this.sanitizer.sanitize(this.sanitize??this.DEFAULT_SECURITY_CONTEXT,A)??"":A})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),wb=(function(i){return i.CommandLine="command-line",i.LineHighlight="line-highlight",i.LineNumbers="line-numbers",i})(wb||{}),DK=(()=>{class i{constructor(){this.element=w(ce),this.markdownService=w(yK),this.viewContainerRef=w(Jo),this.error=new FA,this.load=new FA,this.ready=new FA,this._clipboard=!1,this._commandLine=!1,this._disableSanitizer=!1,this._emoji=!1,this._inline=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1,this._mermaid=!1,this.destroyed$=new ne}get disableSanitizer(){return this._disableSanitizer}set disableSanitizer(A){this._disableSanitizer=this.coerceBooleanProperty(A)}get inline(){return this._inline}set inline(A){this._inline=this.coerceBooleanProperty(A)}get clipboard(){return this._clipboard}set clipboard(A){this._clipboard=this.coerceBooleanProperty(A)}get emoji(){return this._emoji}set emoji(A){this._emoji=this.coerceBooleanProperty(A)}get katex(){return this._katex}set katex(A){this._katex=this.coerceBooleanProperty(A)}get mermaid(){return this._mermaid}set mermaid(A){this._mermaid=this.coerceBooleanProperty(A)}get lineHighlight(){return this._lineHighlight}set lineHighlight(A){this._lineHighlight=this.coerceBooleanProperty(A)}get lineNumbers(){return this._lineNumbers}set lineNumbers(A){this._lineNumbers=this.coerceBooleanProperty(A)}get commandLine(){return this._commandLine}set commandLine(A){this._commandLine=this.coerceBooleanProperty(A)}ngOnChanges(){this.loadContent()}loadContent(){if(this.data!=null){this.handleData();return}if(this.src!=null){this.handleSrc();return}}ngAfterViewInit(){!this.data&&!this.src&&this.handleTransclusion(),this.markdownService.reload$.pipe(yt(this.destroyed$)).subscribe(()=>this.loadContent())}ngOnDestroy(){this.destroyed$.next(),this.destroyed$.complete()}render(A,t=!1){return re(this,null,function*(){let n={decodeHtml:t,inline:this.inline,emoji:this.emoji,mermaid:this.mermaid,disableSanitizer:this.disableSanitizer},o={clipboard:this.clipboard,clipboardOptions:this.getClipboardOptions(),katex:this.katex,katexOptions:this.katexOptions,mermaid:this.mermaid,mermaidOptions:this.mermaidOptions},a=yield this.markdownService.parse(A,n);this.element.nativeElement.innerHTML=a,this.handlePlugins(),this.markdownService.render(this.element.nativeElement,o,this.viewContainerRef),this.ready.emit()})}coerceBooleanProperty(A){return A!=null&&`${String(A)}`!="false"}getClipboardOptions(){if(this.clipboardButtonComponent||this.clipboardButtonTemplate)return{buttonComponent:this.clipboardButtonComponent,buttonTemplate:this.clipboardButtonTemplate}}handleData(){this.render(this.data)}handleSrc(){this.markdownService.getSource(this.src).subscribe({next:A=>{this.render(A).then(()=>{this.load.emit(A)})},error:A=>this.error.emit(A)})}handleTransclusion(){this.render(this.element.nativeElement.innerHTML,!0)}handlePlugins(){this.commandLine&&(this.setPluginClass(this.element.nativeElement,wb.CommandLine),this.setPluginOptions(this.element.nativeElement,{dataFilterOutput:this.filterOutput,dataHost:this.host,dataPrompt:this.prompt,dataOutput:this.output,dataUser:this.user})),this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,wb.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}setPluginClass(A,t){let n=A.querySelectorAll("pre");for(let o=0;o{let r=t[a];if(r){let s=this.toLispCase(a);n.item(o).setAttribute(s,r.toString())}})}toLispCase(A){let t=A.match(/([A-Z])/g);if(!t)return A;let n=A.toString();for(let o=0,a=t.length;o{class i{static forRoot(A){return{ngModule:i,providers:[GQ(A)]}}static forChild(){return{ngModule:i}}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275mod=et({type:i})}static{this.\u0275inj=At({})}}return i})();var Yi="primary",qQ=Symbol("RouteTitle"),Mb=class{params;constructor(e){this.params=e||{}}has(e){return Object.prototype.hasOwnProperty.call(this.params,e)}get(e){if(this.has(e)){let A=this.params[e];return Array.isArray(A)?A[0]:A}return null}getAll(e){if(this.has(e)){let A=this.params[e];return Array.isArray(A)?A:[A]}return[]}get keys(){return Object.keys(this.params)}};function X1(i){return new Mb(i)}function yb(i,e,A){for(let t=0;ti.length||A.pathMatch==="full"&&(e.hasChildren()||t.lengthi.length||A.pathMatch==="full"&&e.hasChildren()&&A.path!=="**")return null;let r={};return!yb(o,i.slice(0,o.length),r)||!yb(a,i.slice(i.length-a.length),r)?null:{consumed:i,posParams:r}}function Df(i){return new Promise((e,A)=>{i.pipe(oo()).subscribe({next:t=>e(t),error:t=>A(t)})})}function snA(i,e){if(i.length!==e.length)return!1;for(let A=0;At[o]===n)}else return i===e}function lnA(i){return i.length>0?i[i.length-1]:null}function Ad(i){return fI(i)?i:l3(i)?Yr(Promise.resolve(i)):oe(i)}function LK(i){return fI(i)?Df(i):Promise.resolve(i)}var gnA={exact:UK,subset:TK},GK={exact:cnA,subset:CnA,ignored:()=>!0},KK={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},kb={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};function bK(i,e,A){return gnA[A.paths](i.root,e.root,A.matrixParams)&&GK[A.queryParams](i.queryParams,e.queryParams)&&!(A.fragment==="exact"&&i.fragment!==e.fragment)}function cnA(i,e){return zc(i,e)}function UK(i,e,A){if(!Z1(i.segments,e.segments)||!mf(i.segments,e.segments,A)||i.numberOfChildren!==e.numberOfChildren)return!1;for(let t in e.children)if(!i.children[t]||!UK(i.children[t],e.children[t],A))return!1;return!0}function CnA(i,e){return Object.keys(e).length<=Object.keys(i).length&&Object.keys(e).every(A=>FK(i[A],e[A]))}function TK(i,e,A){return OK(i,e,e.segments,A)}function OK(i,e,A,t){if(i.segments.length>A.length){let n=i.segments.slice(0,A.length);return!(!Z1(n,A)||e.hasChildren()||!mf(n,A,t))}else if(i.segments.length===A.length){if(!Z1(i.segments,A)||!mf(i.segments,A,t))return!1;for(let n in e.children)if(!i.children[n]||!TK(i.children[n],e.children[n],t))return!1;return!0}else{let n=A.slice(0,i.segments.length),o=A.slice(i.segments.length);return!Z1(i.segments,n)||!mf(i.segments,n,t)||!i.children[Yi]?!1:OK(i.children[Yi],e,o,t)}}function mf(i,e,A){return e.every((t,n)=>GK[A](i[n].parameters,t.parameters))}var Xl=class{root;queryParams;fragment;_queryParamMap;constructor(e=new yo([],{}),A={},t=null){this.root=e,this.queryParams=A,this.fragment=t}get queryParamMap(){return this._queryParamMap??=X1(this.queryParams),this._queryParamMap}toString(){return BnA.serialize(this)}},yo=class{segments;children;parent=null;constructor(e,A){this.segments=e,this.children=A,Object.values(A).forEach(t=>t.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return wf(this)}},t2=class{path;parameters;_parameterMap;constructor(e,A){this.path=e,this.parameters=A}get parameterMap(){return this._parameterMap??=X1(this.parameters),this._parameterMap}toString(){return YK(this)}};function dnA(i,e){return Z1(i,e)&&i.every((A,t)=>zc(A.parameters,e[t].parameters))}function Z1(i,e){return i.length!==e.length?!1:i.every((A,t)=>A.path===e[t].path)}function InA(i,e){let A=[];return Object.entries(i.children).forEach(([t,n])=>{t===Yi&&(A=A.concat(e(n,t)))}),Object.entries(i.children).forEach(([t,n])=>{t!==Yi&&(A=A.concat(e(n,t)))}),A}var ed=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:()=>new z0,providedIn:"root"})}return i})(),z0=class{parse(e){let A=new xb(e);return new Xl(A.parseRootSegment(),A.parseQueryParams(),A.parseFragment())}serialize(e){let A=`/${KQ(e.root,!0)}`,t=QnA(e.queryParams),n=typeof e.fragment=="string"?`#${hnA(e.fragment)}`:"";return`${A}${t}${n}`}},BnA=new z0;function wf(i){return i.segments.map(e=>YK(e)).join("/")}function KQ(i,e){if(!i.hasChildren())return wf(i);if(e){let A=i.children[Yi]?KQ(i.children[Yi],!1):"",t=[];return Object.entries(i.children).forEach(([n,o])=>{n!==Yi&&t.push(`${n}:${KQ(o,!1)}`)}),t.length>0?`${A}(${t.join("//")})`:A}else{let A=InA(i,(t,n)=>n===Yi?[KQ(i.children[Yi],!1)]:[`${n}:${KQ(t,!1)}`]);return Object.keys(i.children).length===1&&i.children[Yi]!=null?`${wf(i)}/${A[0]}`:`${wf(i)}/(${A.join("//")})`}}function JK(i){return encodeURIComponent(i).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function pf(i){return JK(i).replace(/%3B/gi,";")}function hnA(i){return encodeURI(i)}function _b(i){return JK(i).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function yf(i){return decodeURIComponent(i)}function MK(i){return yf(i.replace(/\+/g,"%20"))}function YK(i){return`${_b(i.path)}${EnA(i.parameters)}`}function EnA(i){return Object.entries(i).map(([e,A])=>`;${_b(e)}=${_b(A)}`).join("")}function QnA(i){let e=Object.entries(i).map(([A,t])=>Array.isArray(t)?t.map(n=>`${pf(A)}=${pf(n)}`).join("&"):`${pf(A)}=${pf(t)}`).filter(A=>A);return e.length?`?${e.join("&")}`:""}var unA=/^[^\/()?;#]+/;function Db(i){let e=i.match(unA);return e?e[0]:""}var pnA=/^[^\/()?;=#]+/;function fnA(i){let e=i.match(pnA);return e?e[0]:""}var mnA=/^[^=?&#]+/;function wnA(i){let e=i.match(mnA);return e?e[0]:""}var ynA=/^[^&#]+/;function DnA(i){let e=i.match(ynA);return e?e[0]:""}var xb=class{url;remaining;constructor(e){this.url=e,this.remaining=e}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new yo([],{}):new yo([],this.parseChildren())}parseQueryParams(){let e={};if(this.consumeOptional("?"))do this.parseQueryParam(e);while(this.consumeOptional("&"));return e}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(e=0){if(e>50)throw new Nt(4010,!1);if(this.remaining==="")return{};this.consumeOptional("/");let A=[];for(this.peekStartsWith("(")||A.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),A.push(this.parseSegment());let t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0,e));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1,e)),(A.length>0||Object.keys(t).length>0)&&(n[Yi]=new yo(A,t)),n}parseSegment(){let e=Db(this.remaining);if(e===""&&this.peekStartsWith(";"))throw new Nt(4009,!1);return this.capture(e),new t2(yf(e),this.parseMatrixParams())}parseMatrixParams(){let e={};for(;this.consumeOptional(";");)this.parseParam(e);return e}parseParam(e){let A=fnA(this.remaining);if(!A)return;this.capture(A);let t="";if(this.consumeOptional("=")){let n=Db(this.remaining);n&&(t=n,this.capture(t))}e[yf(A)]=yf(t)}parseQueryParam(e){let A=wnA(this.remaining);if(!A)return;this.capture(A);let t="";if(this.consumeOptional("=")){let a=DnA(this.remaining);a&&(t=a,this.capture(t))}let n=MK(A),o=MK(t);if(e.hasOwnProperty(n)){let a=e[n];Array.isArray(a)||(a=[a],e[n]=a),a.push(o)}else e[n]=o}parseParens(e,A){let t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let n=Db(this.remaining),o=this.remaining[n.length];if(o!=="/"&&o!==")"&&o!==";")throw new Nt(4010,!1);let a;n.indexOf(":")>-1?(a=n.slice(0,n.indexOf(":")),this.capture(a),this.capture(":")):e&&(a=Yi);let r=this.parseChildren(A+1);t[a??Yi]=Object.keys(r).length===1&&r[Yi]?r[Yi]:new yo([],r),this.consumeOptional("//")}return t}peekStartsWith(e){return this.remaining.startsWith(e)}consumeOptional(e){return this.peekStartsWith(e)?(this.remaining=this.remaining.substring(e.length),!0):!1}capture(e){if(!this.consumeOptional(e))throw new Nt(4011,!1)}};function HK(i){return i.segments.length>0?new yo([],{[Yi]:i}):i}function zK(i){let e={};for(let[t,n]of Object.entries(i.children)){let o=zK(n);if(t===Yi&&o.segments.length===0&&o.hasChildren())for(let[a,r]of Object.entries(o.children))e[a]=r;else(o.segments.length>0||o.hasChildren())&&(e[t]=o)}let A=new yo(i.segments,e);return vnA(A)}function vnA(i){if(i.numberOfChildren===1&&i.children[Yi]){let e=i.children[Yi];return new yo(i.segments.concat(e.segments),e.children)}return i}function tB(i){return i instanceof Xl}function PK(i,e,A=null,t=null,n=new z0){let o=jK(i);return VK(o,e,A,t,n)}function jK(i){let e;function A(o){let a={};for(let s of o.children){let l=A(s);a[s.outlet]=l}let r=new yo(o.url,a);return o===i&&(e=r),r}let t=A(i.root),n=HK(t);return e??n}function VK(i,e,A,t,n){let o=i;for(;o.parent;)o=o.parent;if(e.length===0)return vb(o,o,o,A,t,n);let a=bnA(e);if(a.toRoot())return vb(o,o,new yo([],{}),A,t,n);let r=MnA(a,o,i),s=r.processChildren?TQ(r.segmentGroup,r.index,a.commands):WK(r.segmentGroup,r.index,a.commands);return vb(o,r.segmentGroup,s,A,t,n)}function vf(i){return typeof i=="object"&&i!=null&&!i.outlets&&!i.segmentPath}function JQ(i){return typeof i=="object"&&i!=null&&i.outlets}function SK(i,e,A){i||="\u0275";let t=new Xl;return t.queryParams={[i]:e},A.parse(A.serialize(t)).queryParams[i]}function vb(i,e,A,t,n,o){let a={};for(let[l,g]of Object.entries(t??{}))a[l]=Array.isArray(g)?g.map(C=>SK(l,C,o)):SK(l,g,o);let r;i===e?r=A:r=qK(i,e,A);let s=HK(zK(r));return new Xl(s,a,n)}function qK(i,e,A){let t={};return Object.entries(i.children).forEach(([n,o])=>{o===e?t[n]=A:t[n]=qK(o,e,A)}),new yo(i.segments,t)}var bf=class{isAbsolute;numberOfDoubleDots;commands;constructor(e,A,t){if(this.isAbsolute=e,this.numberOfDoubleDots=A,this.commands=t,e&&t.length>0&&vf(t[0]))throw new Nt(4003,!1);let n=t.find(JQ);if(n&&n!==lnA(t))throw new Nt(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function bnA(i){if(typeof i[0]=="string"&&i.length===1&&i[0]==="/")return new bf(!0,0,i);let e=0,A=!1,t=i.reduce((n,o,a)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let r={};return Object.entries(o.outlets).forEach(([s,l])=>{r[s]=typeof l=="string"?l.split("/"):l}),[...n,{outlets:r}]}if(o.segmentPath)return[...n,o.segmentPath]}return typeof o!="string"?[...n,o]:a===0?(o.split("/").forEach((r,s)=>{s==0&&r==="."||(s==0&&r===""?A=!0:r===".."?e++:r!=""&&n.push(r))}),n):[...n,o]},[]);return new bf(A,e,t)}var $I=class{segmentGroup;processChildren;index;constructor(e,A,t){this.segmentGroup=e,this.processChildren=A,this.index=t}};function MnA(i,e,A){if(i.isAbsolute)return new $I(e,!0,0);if(!A)return new $I(e,!1,NaN);if(A.parent===null)return new $I(A,!0,0);let t=vf(i.commands[0])?0:1,n=A.segments.length-1+t;return SnA(A,n,i.numberOfDoubleDots)}function SnA(i,e,A){let t=i,n=e,o=A;for(;o>n;){if(o-=n,t=t.parent,!t)throw new Nt(4005,!1);n=t.segments.length}return new $I(t,!1,n-o)}function knA(i){return JQ(i[0])?i[0].outlets:{[Yi]:i}}function WK(i,e,A){if(i??=new yo([],{}),i.segments.length===0&&i.hasChildren())return TQ(i,e,A);let t=_nA(i,e,A),n=A.slice(t.commandIndex);if(t.match&&t.pathIndexo!==Yi)&&i.children[Yi]&&i.numberOfChildren===1&&i.children[Yi].segments.length===0){let o=TQ(i.children[Yi],e,A);return new yo(i.segments,o.children)}return Object.entries(t).forEach(([o,a])=>{typeof a=="string"&&(a=[a]),a!==null&&(n[o]=WK(i.children[o],e,a))}),Object.entries(i.children).forEach(([o,a])=>{t[o]===void 0&&(n[o]=a)}),new yo(i.segments,n)}}function _nA(i,e,A){let t=0,n=e,o={match:!1,pathIndex:0,commandIndex:0};for(;n=A.length)return o;let a=i.segments[n],r=A[t];if(JQ(r))break;let s=`${r}`,l=t0&&s===void 0)break;if(s&&l&&typeof l=="object"&&l.outlets===void 0){if(!_K(s,l,a))return o;t+=2}else{if(!_K(s,{},a))return o;t++}n++}return{match:!0,pathIndex:n,commandIndex:t}}function Rb(i,e,A){let t=i.segments.slice(0,e),n=0;for(;n{typeof t=="string"&&(t=[t]),t!==null&&(e[A]=Rb(new yo([],{}),0,t))}),e}function kK(i){let e={};return Object.entries(i).forEach(([A,t])=>e[A]=`${t}`),e}function _K(i,e,A){return i==A.path&&zc(e,A.parameters)}var AB="imperative",ur=(function(i){return i[i.NavigationStart=0]="NavigationStart",i[i.NavigationEnd=1]="NavigationEnd",i[i.NavigationCancel=2]="NavigationCancel",i[i.NavigationError=3]="NavigationError",i[i.RoutesRecognized=4]="RoutesRecognized",i[i.ResolveStart=5]="ResolveStart",i[i.ResolveEnd=6]="ResolveEnd",i[i.GuardsCheckStart=7]="GuardsCheckStart",i[i.GuardsCheckEnd=8]="GuardsCheckEnd",i[i.RouteConfigLoadStart=9]="RouteConfigLoadStart",i[i.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",i[i.ChildActivationStart=11]="ChildActivationStart",i[i.ChildActivationEnd=12]="ChildActivationEnd",i[i.ActivationStart=13]="ActivationStart",i[i.ActivationEnd=14]="ActivationEnd",i[i.Scroll=15]="Scroll",i[i.NavigationSkipped=16]="NavigationSkipped",i})(ur||{}),Sl=class{id;url;constructor(e,A){this.id=e,this.url=A}},i2=class extends Sl{type=ur.NavigationStart;navigationTrigger;restoredState;constructor(e,A,t="imperative",n=null){super(e,A),this.navigationTrigger=t,this.restoredState=n}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},Jg=class extends Sl{urlAfterRedirects;type=ur.NavigationEnd;constructor(e,A,t){super(e,A),this.urlAfterRedirects=t}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},ds=(function(i){return i[i.Redirect=0]="Redirect",i[i.SupersededByNewNavigation=1]="SupersededByNewNavigation",i[i.NoDataFromResolver=2]="NoDataFromResolver",i[i.GuardRejected=3]="GuardRejected",i[i.Aborted=4]="Aborted",i})(ds||{}),iB=(function(i){return i[i.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",i[i.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",i})(iB||{}),Zl=class extends Sl{reason;code;type=ur.NavigationCancel;constructor(e,A,t,n){super(e,A),this.reason=t,this.code=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}};function ZK(i){return i instanceof Zl&&(i.code===ds.Redirect||i.code===ds.SupersededByNewNavigation)}var jc=class extends Sl{reason;code;type=ur.NavigationSkipped;constructor(e,A,t,n){super(e,A),this.reason=t,this.code=n}},$1=class extends Sl{error;target;type=ur.NavigationError;constructor(e,A,t,n){super(e,A),this.error=t,this.target=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},YQ=class extends Sl{urlAfterRedirects;state;type=ur.RoutesRecognized;constructor(e,A,t,n){super(e,A),this.urlAfterRedirects=t,this.state=n}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Mf=class extends Sl{urlAfterRedirects;state;type=ur.GuardsCheckStart;constructor(e,A,t,n){super(e,A),this.urlAfterRedirects=t,this.state=n}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Sf=class extends Sl{urlAfterRedirects;state;shouldActivate;type=ur.GuardsCheckEnd;constructor(e,A,t,n,o){super(e,A),this.urlAfterRedirects=t,this.state=n,this.shouldActivate=o}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},kf=class extends Sl{urlAfterRedirects;state;type=ur.ResolveStart;constructor(e,A,t,n){super(e,A),this.urlAfterRedirects=t,this.state=n}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},_f=class extends Sl{urlAfterRedirects;state;type=ur.ResolveEnd;constructor(e,A,t,n){super(e,A),this.urlAfterRedirects=t,this.state=n}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},xf=class{route;type=ur.RouteConfigLoadStart;constructor(e){this.route=e}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},Rf=class{route;type=ur.RouteConfigLoadEnd;constructor(e){this.route=e}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},Nf=class{snapshot;type=ur.ChildActivationStart;constructor(e){this.snapshot=e}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Ff=class{snapshot;type=ur.ChildActivationEnd;constructor(e){this.snapshot=e}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Lf=class{snapshot;type=ur.ActivationStart;constructor(e){this.snapshot=e}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Gf=class{snapshot;type=ur.ActivationEnd;constructor(e){this.snapshot=e}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},nB=class{routerEvent;position;anchor;scrollBehavior;type=ur.Scroll;constructor(e,A,t,n){this.routerEvent=e,this.position=A,this.anchor=t,this.scrollBehavior=n}toString(){let e=this.position?`${this.position[0]}, ${this.position[1]}`:null;return`Scroll(anchor: '${this.anchor}', position: '${e}')`}},oB=class{},HQ=class{},aB=class{url;navigationBehaviorOptions;constructor(e,A){this.url=e,this.navigationBehaviorOptions=A}};function RnA(i){return!(i instanceof oB)&&!(i instanceof aB)&&!(i instanceof HQ)}var Kf=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return this.route?.snapshot._environmentInjector??this.rootInjector}constructor(e){this.rootInjector=e,this.children=new td(this.rootInjector)}},td=(()=>{class i{rootInjector;contexts=new Map;constructor(A){this.rootInjector=A}onChildOutletCreated(A,t){let n=this.getOrCreateContext(A);n.outlet=t,this.contexts.set(A,n)}onChildOutletDestroyed(A){let t=this.getContext(A);t&&(t.outlet=null,t.attachRef=null)}onOutletDeactivated(){let A=this.contexts;return this.contexts=new Map,A}onOutletReAttached(A){this.contexts=A}getOrCreateContext(A){let t=this.getContext(A);return t||(t=new Kf(this.rootInjector),this.contexts.set(A,t)),t}getContext(A){return this.contexts.get(A)||null}static \u0275fac=function(t){return new(t||i)(Wo(Hr))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),Uf=class{_root;constructor(e){this._root=e}get root(){return this._root.value}parent(e){let A=this.pathFromRoot(e);return A.length>1?A[A.length-2]:null}children(e){let A=Nb(e,this._root);return A?A.children.map(t=>t.value):[]}firstChild(e){let A=Nb(e,this._root);return A&&A.children.length>0?A.children[0].value:null}siblings(e){let A=Fb(e,this._root);return A.length<2?[]:A[A.length-2].children.map(n=>n.value).filter(n=>n!==e)}pathFromRoot(e){return Fb(e,this._root).map(A=>A.value)}};function Nb(i,e){if(i===e.value)return e;for(let A of e.children){let t=Nb(i,A);if(t)return t}return null}function Fb(i,e){if(i===e.value)return[e];for(let A of e.children){let t=Fb(i,A);if(t.length)return t.unshift(e),t}return[]}var Ml=class{value;children;constructor(e,A){this.value=e,this.children=A}toString(){return`TreeNode(${this.value})`}};function XI(i){let e={};return i&&i.children.forEach(A=>e[A.value.outlet]=A),e}var zQ=class extends Uf{snapshot;constructor(e,A){super(e),this.snapshot=A,Hb(this,e)}toString(){return this.snapshot.toString()}};function XK(i,e){let A=NnA(i,e),t=new gi([new t2("",{})]),n=new gi({}),o=new gi({}),a=new gi({}),r=new gi(""),s=new $s(t,n,a,r,o,Yi,i,A.root);return s.snapshot=A.root,new zQ(new Ml(s,[]),A)}function NnA(i,e){let A={},t={},n={},a=new rB([],A,n,"",t,Yi,i,null,{},e);return new PQ("",new Ml(a,[]))}var $s=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(e,A,t,n,o,a,r,s){this.urlSubject=e,this.paramsSubject=A,this.queryParamsSubject=t,this.fragmentSubject=n,this.dataSubject=o,this.outlet=a,this.component=r,this._futureSnapshot=s,this.title=this.dataSubject?.pipe(Se(l=>l[qQ]))??oe(void 0),this.url=e,this.params=A,this.queryParams=t,this.fragment=n,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(Se(e=>X1(e))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(Se(e=>X1(e))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function Yb(i,e,A="emptyOnly"){let t,{routeConfig:n}=i;return e!==null&&(A==="always"||n?.path===""||!e.component&&!e.routeConfig?.loadComponent)?t={params:P(P({},e.params),i.params),data:P(P({},e.data),i.data),resolve:P(P(P(P({},i.data),e.data),n?.data),i._resolvedData)}:t={params:P({},i.params),data:P({},i.data),resolve:P(P({},i.data),i._resolvedData??{})},n&&AU(n)&&(t.resolve[qQ]=n.title),t}var rB=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;_environmentInjector;get title(){return this.data?.[qQ]}constructor(e,A,t,n,o,a,r,s,l,g){this.url=e,this.params=A,this.queryParams=t,this.fragment=n,this.data=o,this.outlet=a,this.component=r,this.routeConfig=s,this._resolve=l,this._environmentInjector=g}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=X1(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=X1(this.queryParams),this._queryParamMap}toString(){let e=this.url.map(t=>t.toString()).join("/"),A=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${e}', path:'${A}')`}},PQ=class extends Uf{url;constructor(e,A){super(A),this.url=e,Hb(this,A)}toString(){return $K(this._root)}};function Hb(i,e){e.value._routerState=i,e.children.forEach(A=>Hb(i,A))}function $K(i){let e=i.children.length>0?` { ${i.children.map($K).join(", ")} } `:"";return`${i.value}${e}`}function bb(i){if(i.snapshot){let e=i.snapshot,A=i._futureSnapshot;i.snapshot=A,zc(e.queryParams,A.queryParams)||i.queryParamsSubject.next(A.queryParams),e.fragment!==A.fragment&&i.fragmentSubject.next(A.fragment),zc(e.params,A.params)||i.paramsSubject.next(A.params),snA(e.url,A.url)||i.urlSubject.next(A.url),zc(e.data,A.data)||i.dataSubject.next(A.data)}else i.snapshot=i._futureSnapshot,i.dataSubject.next(i._futureSnapshot.data)}function Lb(i,e){let A=zc(i.params,e.params)&&dnA(i.url,e.url),t=!i.parent!=!e.parent;return A&&!t&&(!i.parent||Lb(i.parent,e.parent))}function AU(i){return typeof i.title=="string"||i.title===null}var eU=new MA(""),zb=(()=>{class i{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=Yi;activateEvents=new FA;deactivateEvents=new FA;attachEvents=new FA;detachEvents=new FA;routerOutletData=ve();parentContexts=w(td);location=w(Jo);changeDetector=w(Mt);inputBinder=w(WQ,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(A){if(A.name){let{firstChange:t,previousValue:n}=A.name;if(t)return;this.isTrackedInParentContexts(n)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(n)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(A){return this.parentContexts.getContext(A)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let A=this.parentContexts.getContext(this.name);A?.route&&(A.attachRef?this.attach(A.attachRef,A.route):this.activateWith(A.route,A.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Nt(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Nt(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Nt(4012,!1);this.location.detach();let A=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(A.instance),A}attach(A,t){this.activated=A,this._activatedRoute=t,this.location.insert(A.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(A.instance)}deactivate(){if(this.activated){let A=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(A)}}activateWith(A,t){if(this.isActivated)throw new Nt(4013,!1);this._activatedRoute=A;let n=this.location,a=A.snapshot.component,r=this.parentContexts.getOrCreateContext(this.name).children,s=new Gb(A,r,n.injector,this.routerOutletData);this.activated=n.createComponent(a,{index:n.length,injector:s,environmentInjector:t}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[ii]})}return i})(),Gb=class{route;childContexts;parent;outletData;constructor(e,A,t,n){this.route=e,this.childContexts=A,this.parent=t,this.outletData=n}get(e,A){return e===$s?this.route:e===td?this.childContexts:e===eU?this.outletData:this.parent.get(e,A)}},WQ=new MA(""),Pb=(()=>{class i{outletDataSubscriptions=new Map;bindActivatedRouteToOutletComponent(A){this.unsubscribeFromRouteData(A),this.subscribeToRouteData(A)}unsubscribeFromRouteData(A){this.outletDataSubscriptions.get(A)?.unsubscribe(),this.outletDataSubscriptions.delete(A)}subscribeToRouteData(A){let{activatedRoute:t}=A,n=Dr([t.queryParams,t.params,t.data]).pipe(Mi(([o,a,r],s)=>(r=P(P(P({},o),a),r),s===0?oe(r):Promise.resolve(r)))).subscribe(o=>{if(!A.isActivated||!A.activatedComponentRef||A.activatedRoute!==t||t.component===null){this.unsubscribeFromRouteData(A);return}let a=UN(t.component);if(!a){this.unsubscribeFromRouteData(A);return}for(let{templateName:r}of a.inputs)A.activatedComponentRef.setInput(r,o[r])});this.outletDataSubscriptions.set(A,n)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac})}return i})(),jb=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(t,n){t&1&&lA(0,"router-outlet")},dependencies:[zb],encapsulation:2})}return i})();function Vb(i){let e=i.children&&i.children.map(Vb),A=e?$A(P({},i),{children:e}):P({},i);return!A.component&&!A.loadComponent&&(e||A.loadChildren)&&A.outlet&&A.outlet!==Yi&&(A.component=jb),A}function FnA(i,e,A){let t=jQ(i,e._root,A?A._root:void 0);return new zQ(t,e)}function jQ(i,e,A){if(A&&i.shouldReuseRoute(e.value,A.value.snapshot)){let t=A.value;t._futureSnapshot=e.value;let n=LnA(i,e,A);return new Ml(t,n)}else{if(i.shouldAttach(e.value)){let o=i.retrieve(e.value);if(o!==null){let a=o.route;return a.value._futureSnapshot=e.value,a.children=e.children.map(r=>jQ(i,r)),a}}let t=GnA(e.value),n=e.children.map(o=>jQ(i,o));return new Ml(t,n)}}function LnA(i,e,A){return e.children.map(t=>{for(let n of A.children)if(i.shouldReuseRoute(t.value,n.value.snapshot))return jQ(i,t,n);return jQ(i,t)})}function GnA(i){return new $s(new gi(i.url),new gi(i.params),new gi(i.queryParams),new gi(i.fragment),new gi(i.data),i.outlet,i.component,i)}var sB=class{redirectTo;navigationBehaviorOptions;constructor(e,A){this.redirectTo=e,this.navigationBehaviorOptions=A}},tU="ngNavigationCancelingError";function Tf(i,e){let{redirectTo:A,navigationBehaviorOptions:t}=tB(e)?{redirectTo:e,navigationBehaviorOptions:void 0}:e,n=iU(!1,ds.Redirect);return n.url=A,n.navigationBehaviorOptions=t,n}function iU(i,e){let A=new Error(`NavigationCancelingError: ${i||""}`);return A[tU]=!0,A.cancellationCode=e,A}function KnA(i){return nU(i)&&tB(i.url)}function nU(i){return!!i&&i[tU]}var Kb=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(e,A,t,n,o){this.routeReuseStrategy=e,this.futureState=A,this.currState=t,this.forwardEvent=n,this.inputBindingEnabled=o}activate(e){let A=this.futureState._root,t=this.currState?this.currState._root:null;this.deactivateChildRoutes(A,t,e),bb(this.futureState.root),this.activateChildRoutes(A,t,e)}deactivateChildRoutes(e,A,t){let n=XI(A);e.children.forEach(o=>{let a=o.value.outlet;this.deactivateRoutes(o,n[a],t),delete n[a]}),Object.values(n).forEach(o=>{this.deactivateRouteAndItsChildren(o,t)})}deactivateRoutes(e,A,t){let n=e.value,o=A?A.value:null;if(n===o)if(n.component){let a=t.getContext(n.outlet);a&&this.deactivateChildRoutes(e,A,a.children)}else this.deactivateChildRoutes(e,A,t);else o&&this.deactivateRouteAndItsChildren(A,t)}deactivateRouteAndItsChildren(e,A){e.value.component&&this.routeReuseStrategy.shouldDetach(e.value.snapshot)?this.detachAndStoreRouteSubtree(e,A):this.deactivateRouteAndOutlet(e,A)}detachAndStoreRouteSubtree(e,A){let t=A.getContext(e.value.outlet),n=t&&e.value.component?t.children:A,o=XI(e);for(let a of Object.values(o))this.deactivateRouteAndItsChildren(a,n);if(t&&t.outlet){let a=t.outlet.detach(),r=t.children.onOutletDeactivated();this.routeReuseStrategy.store(e.value.snapshot,{componentRef:a,route:e,contexts:r})}}deactivateRouteAndOutlet(e,A){let t=A.getContext(e.value.outlet),n=t&&e.value.component?t.children:A,o=XI(e);for(let a of Object.values(o))this.deactivateRouteAndItsChildren(a,n);t&&(t.outlet&&(t.outlet.deactivate(),t.children.onOutletDeactivated()),t.attachRef=null,t.route=null)}activateChildRoutes(e,A,t){let n=XI(A);e.children.forEach(o=>{this.activateRoutes(o,n[o.value.outlet],t),this.forwardEvent(new Gf(o.value.snapshot))}),e.children.length&&this.forwardEvent(new Ff(e.value.snapshot))}activateRoutes(e,A,t){let n=e.value,o=A?A.value:null;if(bb(n),n===o)if(n.component){let a=t.getOrCreateContext(n.outlet);this.activateChildRoutes(e,A,a.children)}else this.activateChildRoutes(e,A,t);else if(n.component){let a=t.getOrCreateContext(n.outlet);if(this.routeReuseStrategy.shouldAttach(n.snapshot)){let r=this.routeReuseStrategy.retrieve(n.snapshot);this.routeReuseStrategy.store(n.snapshot,null),a.children.onOutletReAttached(r.contexts),a.attachRef=r.componentRef,a.route=r.route.value,a.outlet&&a.outlet.attach(r.componentRef,r.route.value),bb(r.route.value),this.activateChildRoutes(e,null,a.children)}else a.attachRef=null,a.route=n,a.outlet&&a.outlet.activateWith(n,a.injector),this.activateChildRoutes(e,null,a.children)}else this.activateChildRoutes(e,null,t)}},Of=class{path;route;constructor(e){this.path=e,this.route=this.path[this.path.length-1]}},eB=class{component;route;constructor(e,A){this.component=e,this.route=A}};function UnA(i,e,A){let t=i._root,n=e?e._root:null;return UQ(t,n,A,[t.value])}function TnA(i){let e=i.routeConfig?i.routeConfig.canActivateChild:null;return!e||e.length===0?null:{node:i,guards:e}}function gB(i,e){let A=Symbol(),t=e.get(i,A);return t===A?typeof i=="function"&&!fN(i)?i:e.get(i):t}function UQ(i,e,A,t,n={canDeactivateChecks:[],canActivateChecks:[]}){let o=XI(e);return i.children.forEach(a=>{OnA(a,o[a.value.outlet],A,t.concat([a.value]),n),delete o[a.value.outlet]}),Object.entries(o).forEach(([a,r])=>OQ(r,A.getContext(a),n)),n}function OnA(i,e,A,t,n={canDeactivateChecks:[],canActivateChecks:[]}){let o=i.value,a=e?e.value:null,r=A?A.getContext(i.value.outlet):null;if(a&&o.routeConfig===a.routeConfig){let s=JnA(a,o,o.routeConfig.runGuardsAndResolvers);s?n.canActivateChecks.push(new Of(t)):(o.data=a.data,o._resolvedData=a._resolvedData),o.component?UQ(i,e,r?r.children:null,t,n):UQ(i,e,A,t,n),s&&r&&r.outlet&&r.outlet.isActivated&&n.canDeactivateChecks.push(new eB(r.outlet.component,a))}else a&&OQ(e,r,n),n.canActivateChecks.push(new Of(t)),o.component?UQ(i,null,r?r.children:null,t,n):UQ(i,null,A,t,n);return n}function JnA(i,e,A){if(typeof A=="function")return vr(e._environmentInjector,()=>A(i,e));switch(A){case"pathParamsChange":return!Z1(i.url,e.url);case"pathParamsOrQueryParamsChange":return!Z1(i.url,e.url)||!zc(i.queryParams,e.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Lb(i,e)||!zc(i.queryParams,e.queryParams);default:return!Lb(i,e)}}function OQ(i,e,A){let t=XI(i),n=i.value;Object.entries(t).forEach(([o,a])=>{n.component?e?OQ(a,e.children.getContext(o),A):OQ(a,null,A):OQ(a,e,A)}),n.component?e&&e.outlet&&e.outlet.isActivated?A.canDeactivateChecks.push(new eB(e.outlet.component,n)):A.canDeactivateChecks.push(new eB(null,n)):A.canDeactivateChecks.push(new eB(null,n))}function ZQ(i){return typeof i=="function"}function YnA(i){return typeof i=="boolean"}function HnA(i){return i&&ZQ(i.canLoad)}function znA(i){return i&&ZQ(i.canActivate)}function PnA(i){return i&&ZQ(i.canActivateChild)}function jnA(i){return i&&ZQ(i.canDeactivate)}function VnA(i){return i&&ZQ(i.canMatch)}function oU(i){return i instanceof hN||i?.name==="EmptyError"}var ff=Symbol("INITIAL_VALUE");function lB(){return Mi(i=>Dr(i.map(e=>e.pipe(Ro(1),Yn(ff)))).pipe(Se(e=>{for(let A of e)if(A!==!0){if(A===ff)return ff;if(A===!1||qnA(A))return A}return!0}),Bt(e=>e!==ff),Ro(1)))}function qnA(i){return tB(i)||i instanceof sB}function aU(i){return i.aborted?oe(void 0).pipe(Ro(1)):new Fi(e=>{let A=()=>{e.next(),e.complete()};return i.addEventListener("abort",A),()=>i.removeEventListener("abort",A)})}function rU(i){return yt(aU(i))}function WnA(i){return xc(e=>{let{targetSnapshot:A,currentSnapshot:t,guards:{canActivateChecks:n,canDeactivateChecks:o}}=e;return o.length===0&&n.length===0?oe($A(P({},e),{guardsResult:!0})):ZnA(o,A,t).pipe(xc(a=>a&&YnA(a)?XnA(A,n,i):oe(a)),Se(a=>$A(P({},e),{guardsResult:a})))})}function ZnA(i,e,A){return Yr(i).pipe(xc(t=>ioA(t.component,t.route,A,e)),oo(t=>t!==!0,!0))}function XnA(i,e,A){return Yr(e).pipe(VE(t=>Xp(AoA(t.route.parent,A),$nA(t.route,A),toA(i,t.path),eoA(i,t.route))),oo(t=>t!==!0,!0))}function $nA(i,e){return i!==null&&e&&e(new Lf(i)),oe(!0)}function AoA(i,e){return i!==null&&e&&e(new Nf(i)),oe(!0)}function eoA(i,e){let A=e.routeConfig?e.routeConfig.canActivate:null;if(!A||A.length===0)return oe(!0);let t=A.map(n=>Rc(()=>{let o=e._environmentInjector,a=gB(n,o),r=znA(a)?a.canActivate(e,i):vr(o,()=>a(e,i));return Ad(r).pipe(oo())}));return oe(t).pipe(lB())}function toA(i,e){let A=e[e.length-1],n=e.slice(0,e.length-1).reverse().map(o=>TnA(o)).filter(o=>o!==null).map(o=>Rc(()=>{let a=o.guards.map(r=>{let s=o.node._environmentInjector,l=gB(r,s),g=PnA(l)?l.canActivateChild(A,i):vr(s,()=>l(A,i));return Ad(g).pipe(oo())});return oe(a).pipe(lB())}));return oe(n).pipe(lB())}function ioA(i,e,A,t){let n=e&&e.routeConfig?e.routeConfig.canDeactivate:null;if(!n||n.length===0)return oe(!0);let o=n.map(a=>{let r=e._environmentInjector,s=gB(a,r),l=jnA(s)?s.canDeactivate(i,e,A,t):vr(r,()=>s(i,e,A,t));return Ad(l).pipe(oo())});return oe(o).pipe(lB())}function noA(i,e,A,t,n){let o=e.canLoad;if(o===void 0||o.length===0)return oe(!0);let a=o.map(r=>{let s=gB(r,i),l=HnA(s)?s.canLoad(e,A):vr(i,()=>s(e,A)),g=Ad(l);return n?g.pipe(rU(n)):g});return oe(a).pipe(lB(),sU(t))}function sU(i){return dN(mi(e=>{if(typeof e!="boolean")throw Tf(i,e)}),Se(e=>e===!0))}function ooA(i,e,A,t,n,o){let a=e.canMatch;if(!a||a.length===0)return oe(!0);let r=a.map(s=>{let l=gB(s,i),g=VnA(l)?l.canMatch(e,A,n):vr(i,()=>l(e,A,n));return Ad(g).pipe(rU(o))});return oe(r).pipe(lB(),sU(t))}var H0=class i extends Error{segmentGroup;constructor(e){super(),this.segmentGroup=e||null,Object.setPrototypeOf(this,i.prototype)}},VQ=class i extends Error{urlTree;constructor(e){super(),this.urlTree=e,Object.setPrototypeOf(this,i.prototype)}};function aoA(i){throw new Nt(4e3,!1)}function roA(i){throw iU(!1,ds.GuardRejected)}var Ub=class{urlSerializer;urlTree;constructor(e,A){this.urlSerializer=e,this.urlTree=A}lineralizeSegments(e,A){return re(this,null,function*(){let t=[],n=A.root;for(;;){if(t=t.concat(n.segments),n.numberOfChildren===0)return t;if(n.numberOfChildren>1||!n.children[Yi])throw aoA(`${e.redirectTo}`);n=n.children[Yi]}})}applyRedirectCommands(e,A,t,n,o){return re(this,null,function*(){let a=yield soA(A,n,o);if(a instanceof Xl)throw new VQ(a);let r=this.applyRedirectCreateUrlTree(a,this.urlSerializer.parse(a),e,t);if(a[0]==="/")throw new VQ(r);return r})}applyRedirectCreateUrlTree(e,A,t,n){let o=this.createSegmentGroup(e,A.root,t,n);return new Xl(o,this.createQueryParams(A.queryParams,this.urlTree.queryParams),A.fragment)}createQueryParams(e,A){let t={};return Object.entries(e).forEach(([n,o])=>{if(typeof o=="string"&&o[0]===":"){let r=o.substring(1);t[n]=A[r]}else t[n]=o}),t}createSegmentGroup(e,A,t,n){let o=this.createSegments(e,A.segments,t,n),a={};return Object.entries(A.children).forEach(([r,s])=>{a[r]=this.createSegmentGroup(e,s,t,n)}),new yo(o,a)}createSegments(e,A,t,n){return A.map(o=>o.path[0]===":"?this.findPosParam(e,o,n):this.findOrReturn(o,t))}findPosParam(e,A,t){let n=t[A.path.substring(1)];if(!n)throw new Nt(4001,!1);return n}findOrReturn(e,A){let t=0;for(let n of A){if(n.path===e.path)return A.splice(t),n;t++}return e}};function soA(i,e,A){if(typeof i=="string")return Promise.resolve(i);let t=i;return Df(Ad(vr(A,()=>t(e))))}function loA(i,e){return i.providers&&!i._injector&&(i._injector=a3(i.providers,e,`Route: ${i.path}`)),i._injector??e}function Pc(i){return i.outlet||Yi}function goA(i,e){let A=i.filter(t=>Pc(t)===e);return A.push(...i.filter(t=>Pc(t)!==e)),A}var Tb={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function lU(i){return{routeConfig:i.routeConfig,url:i.url,params:i.params,queryParams:i.queryParams,fragment:i.fragment,data:i.data,outlet:i.outlet,title:i.title,paramMap:i.paramMap,queryParamMap:i.queryParamMap}}function coA(i,e,A,t,n,o,a){let r=gU(i,e,A);if(!r.matched)return oe(r);let s=lU(o(r));return t=loA(e,t),ooA(t,e,A,n,s,a).pipe(Se(l=>l===!0?r:P({},Tb)))}function gU(i,e,A){if(e.path==="")return e.pathMatch==="full"&&(i.hasChildren()||A.length>0)?P({},Tb):{matched:!0,consumedSegments:[],remainingSegments:A,parameters:{},positionalParamSegments:{}};let n=(e.matcher||NK)(A,i,e);if(!n)return P({},Tb);let o={};Object.entries(n.posParams??{}).forEach(([r,s])=>{o[r]=s.path});let a=n.consumed.length>0?P(P({},o),n.consumed[n.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:n.consumed,remainingSegments:A.slice(n.consumed.length),parameters:a,positionalParamSegments:n.posParams??{}}}function xK(i,e,A,t){return A.length>0&&IoA(i,A,t)?{segmentGroup:new yo(e,doA(t,new yo(A,i.children))),slicedSegments:[]}:A.length===0&&BoA(i,A,t)?{segmentGroup:new yo(i.segments,CoA(i,A,t,i.children)),slicedSegments:A}:{segmentGroup:new yo(i.segments,i.children),slicedSegments:A}}function CoA(i,e,A,t){let n={};for(let o of A)if(Yf(i,e,o)&&!t[Pc(o)]){let a=new yo([],{});n[Pc(o)]=a}return P(P({},t),n)}function doA(i,e){let A={};A[Yi]=e;for(let t of i)if(t.path===""&&Pc(t)!==Yi){let n=new yo([],{});A[Pc(t)]=n}return A}function IoA(i,e,A){return A.some(t=>Yf(i,e,t)&&Pc(t)!==Yi)}function BoA(i,e,A){return A.some(t=>Yf(i,e,t))}function Yf(i,e,A){return(i.hasChildren()||e.length>0)&&A.pathMatch==="full"?!1:A.path===""}function hoA(i,e,A){return e.length===0&&!i.children[A]}var Ob=class{};function EoA(i,e,A,t,n,o,a="emptyOnly",r){return re(this,null,function*(){return new Jb(i,e,A,t,n,a,o,r).recognize()})}var QoA=31,Jb=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;abortSignal;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(e,A,t,n,o,a,r,s){this.injector=e,this.configLoader=A,this.rootComponentType=t,this.config=n,this.urlTree=o,this.paramsInheritanceStrategy=a,this.urlSerializer=r,this.abortSignal=s,this.applyRedirects=new Ub(this.urlSerializer,this.urlTree)}noMatchError(e){return new Nt(4002,`'${e.segmentGroup}'`)}recognize(){return re(this,null,function*(){let e=xK(this.urlTree.root,[],[],this.config).segmentGroup,{children:A,rootSnapshot:t}=yield this.match(e),n=new Ml(t,A),o=new PQ("",n),a=PK(t,[],this.urlTree.queryParams,this.urlTree.fragment);return a.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(a),{state:o,tree:a}})}match(e){return re(this,null,function*(){let A=new rB([],Object.freeze({}),Object.freeze(P({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),Yi,this.rootComponentType,null,{},this.injector);try{return{children:yield this.processSegmentGroup(this.injector,this.config,e,Yi,A),rootSnapshot:A}}catch(t){if(t instanceof VQ)return this.urlTree=t.urlTree,this.match(t.urlTree.root);throw t instanceof H0?this.noMatchError(t):t}})}processSegmentGroup(e,A,t,n,o){return re(this,null,function*(){if(t.segments.length===0&&t.hasChildren())return this.processChildren(e,A,t,o);let a=yield this.processSegment(e,A,t,t.segments,n,!0,o);return a instanceof Ml?[a]:[]})}processChildren(e,A,t,n){return re(this,null,function*(){let o=[];for(let s of Object.keys(t.children))s==="primary"?o.unshift(s):o.push(s);let a=[];for(let s of o){let l=t.children[s],g=goA(A,s),C=yield this.processSegmentGroup(e,g,l,s,n);a.push(...C)}let r=cU(a);return uoA(r),r})}processSegment(e,A,t,n,o,a,r){return re(this,null,function*(){for(let s of A)try{return yield this.processSegmentAgainstRoute(s._injector??e,A,s,t,n,o,a,r)}catch(l){if(l instanceof H0||oU(l))continue;throw l}if(hoA(t,n,o))return new Ob;throw new H0(t)})}processSegmentAgainstRoute(e,A,t,n,o,a,r,s){return re(this,null,function*(){if(Pc(t)!==a&&(a===Yi||!Yf(n,o,t)))throw new H0(n);if(t.redirectTo===void 0)return this.matchSegmentAgainstRoute(e,n,t,o,a,s);if(this.allowRedirects&&r)return this.expandSegmentAgainstRouteUsingRedirect(e,n,A,t,o,a,s);throw new H0(n)})}expandSegmentAgainstRouteUsingRedirect(e,A,t,n,o,a,r){return re(this,null,function*(){let{matched:s,parameters:l,consumedSegments:g,positionalParamSegments:C,remainingSegments:d}=gU(A,n,o);if(!s)throw new H0(A);typeof n.redirectTo=="string"&&n.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>QoA&&(this.allowRedirects=!1));let B=this.createSnapshot(e,n,o,l,r);if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);let u=yield this.applyRedirects.applyRedirectCommands(g,n.redirectTo,C,lU(B),e),E=yield this.applyRedirects.lineralizeSegments(n,u);return this.processSegment(e,t,A,E.concat(d),a,!1,r)})}createSnapshot(e,A,t,n,o){let a=new rB(t,n,Object.freeze(P({},this.urlTree.queryParams)),this.urlTree.fragment,foA(A),Pc(A),A.component??A._loadedComponent??null,A,moA(A),e),r=Yb(a,o,this.paramsInheritanceStrategy);return a.params=Object.freeze(r.params),a.data=Object.freeze(r.data),a}matchSegmentAgainstRoute(e,A,t,n,o,a){return re(this,null,function*(){if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);let r=S=>this.createSnapshot(e,t,S.consumedSegments,S.parameters,a),s=yield Df(coA(A,t,n,e,this.urlSerializer,r,this.abortSignal));if(t.path==="**"&&(A.children={}),!s?.matched)throw new H0(A);e=t._injector??e;let{routes:l}=yield this.getChildConfig(e,t,n),g=t._loadedInjector??e,{parameters:C,consumedSegments:d,remainingSegments:B}=s,u=this.createSnapshot(e,t,d,C,a),{segmentGroup:E,slicedSegments:f}=xK(A,d,B,l);if(f.length===0&&E.hasChildren()){let S=yield this.processChildren(g,l,E,u);return new Ml(u,S)}if(l.length===0&&f.length===0)return new Ml(u,[]);let m=Pc(t)===o,v=yield this.processSegment(g,l,E,f,m?Yi:o,!0,u);return new Ml(u,v instanceof Ml?[v]:[])})}getChildConfig(e,A,t){return re(this,null,function*(){if(A.children)return{routes:A.children,injector:e};if(A.loadChildren){if(A._loadedRoutes!==void 0){let o=A._loadedNgModuleFactory;return o&&!A._loadedInjector&&(A._loadedInjector=o.create(e).injector),{routes:A._loadedRoutes,injector:A._loadedInjector}}if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);if(yield Df(noA(e,A,t,this.urlSerializer,this.abortSignal))){let o=yield this.configLoader.loadChildren(e,A);return A._loadedRoutes=o.routes,A._loadedInjector=o.injector,A._loadedNgModuleFactory=o.factory,o}throw roA(A)}return{routes:[],injector:e}})}};function uoA(i){i.sort((e,A)=>e.value.outlet===Yi?-1:A.value.outlet===Yi?1:e.value.outlet.localeCompare(A.value.outlet))}function poA(i){let e=i.value.routeConfig;return e&&e.path===""}function cU(i){let e=[],A=new Set;for(let t of i){if(!poA(t)){e.push(t);continue}let n=e.find(o=>t.value.routeConfig===o.value.routeConfig);n!==void 0?(n.children.push(...t.children),A.add(n)):e.push(t)}for(let t of A){let n=cU(t.children);e.push(new Ml(t.value,n))}return e.filter(t=>!A.has(t))}function foA(i){return i.data||{}}function moA(i){return i.resolve||{}}function woA(i,e,A,t,n,o,a){return xc(r=>re(null,null,function*(){let{state:s,tree:l}=yield EoA(i,e,A,t,r.extractedUrl,n,o,a);return $A(P({},r),{targetSnapshot:s,urlAfterRedirects:l})}))}function yoA(i){return xc(e=>{let{targetSnapshot:A,guards:{canActivateChecks:t}}=e;if(!t.length)return oe(e);let n=new Set(t.map(r=>r.route)),o=new Set;for(let r of n)if(!o.has(r))for(let s of CU(r))o.add(s);let a=0;return Yr(o).pipe(VE(r=>n.has(r)?DoA(r,A,i):(r.data=Yb(r,r.parent,i).resolve,oe(void 0))),mi(()=>a++),FD(1),xc(r=>a===o.size?oe(e):Br))})}function CU(i){let e=i.children.map(A=>CU(A)).flat();return[i,...e]}function DoA(i,e,A){let t=i.routeConfig,n=i._resolve;return t?.title!==void 0&&!AU(t)&&(n[qQ]=t.title),Rc(()=>(i.data=Yb(i,i.parent,A).resolve,voA(n,i,e).pipe(Se(o=>(i._resolvedData=o,i.data=P(P({},i.data),o),null)))))}function voA(i,e,A){let t=Sb(i);if(t.length===0)return oe({});let n={};return Yr(t).pipe(xc(o=>boA(i[o],e,A).pipe(oo(),mi(a=>{if(a instanceof sB)throw Tf(new z0,a);n[o]=a}))),FD(1),Se(()=>n),aa(o=>oU(o)?Br:Wp(o)))}function boA(i,e,A){let t=e._environmentInjector,n=gB(i,t),o=n.resolve?n.resolve(e,A):vr(t,()=>n(e,A));return Ad(o)}function RK(i){return Mi(e=>{let A=i(e);return A?Yr(A).pipe(Se(()=>e)):oe(e)})}var qb=(()=>{class i{buildTitle(A){let t,n=A.root;for(;n!==void 0;)t=this.getResolvedTitleForRoute(n)??t,n=n.children.find(o=>o.outlet===Yi);return t}getResolvedTitleForRoute(A){return A.data[qQ]}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:()=>w(dU),providedIn:"root"})}return i})(),dU=(()=>{class i extends qb{title;constructor(A){super(),this.title=A}updateTitle(A){let t=this.buildTitle(A);t!==void 0&&this.title.setTitle(t)}static \u0275fac=function(t){return new(t||i)(Wo(qN))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),id=new MA("",{factory:()=>({})}),cB=new MA(""),Hf=(()=>{class i{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=w(xN);loadComponent(A,t){return re(this,null,function*(){if(this.componentLoaders.get(t))return this.componentLoaders.get(t);if(t._loadedComponent)return Promise.resolve(t._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(t);let n=re(this,null,function*(){try{let o=yield LK(vr(A,()=>t.loadComponent())),a=yield hU(BU(o));return this.onLoadEndListener&&this.onLoadEndListener(t),t._loadedComponent=a,a}finally{this.componentLoaders.delete(t)}});return this.componentLoaders.set(t,n),n})}loadChildren(A,t){if(this.childrenLoaders.get(t))return this.childrenLoaders.get(t);if(t._loadedRoutes)return Promise.resolve({routes:t._loadedRoutes,injector:t._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(t);let n=re(this,null,function*(){try{let o=yield IU(t,this.compiler,A,this.onLoadEndListener);return t._loadedRoutes=o.routes,t._loadedInjector=o.injector,t._loadedNgModuleFactory=o.factory,o}finally{this.childrenLoaders.delete(t)}});return this.childrenLoaders.set(t,n),n}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function IU(i,e,A,t){return re(this,null,function*(){let n=yield LK(vr(A,()=>i.loadChildren())),o=yield hU(BU(n)),a;o instanceof bN||Array.isArray(o)?a=o:a=yield e.compileModuleAsync(o),t&&t(i);let r,s,l=!1,g;return Array.isArray(a)?(s=a,l=!0):(r=a.create(A).injector,g=a,s=r.get(cB,[],{optional:!0,self:!0}).flat()),{routes:s.map(Vb),injector:r,factory:g}})}function MoA(i){return i&&typeof i=="object"&&"default"in i}function BU(i){return MoA(i)?i.default:i}function hU(i){return re(this,null,function*(){return i})}var zf=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:()=>w(SoA),providedIn:"root"})}return i})(),SoA=(()=>{class i{shouldProcessUrl(A){return!0}extract(A){return A}merge(A,t){return A}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),Wb=new MA(""),Zb=new MA("");function EU(i,e,A){let t=i.get(Zb),n=i.get(ci);if(!n.startViewTransition||t.skipNextTransition)return t.skipNextTransition=!1,new Promise(l=>setTimeout(l));let o,a=new Promise(l=>{o=l}),r=n.startViewTransition(()=>(o(),koA(i)));r.updateCallbackDone.catch(l=>{}),r.ready.catch(l=>{}),r.finished.catch(l=>{});let{onViewTransitionCreated:s}=t;return s&&vr(i,()=>s({transition:r,from:e,to:A})),a}function koA(i){return new Promise(e=>{ao({read:()=>setTimeout(e)},{injector:i})})}var _oA=()=>{},Xb=new MA(""),Pf=(()=>{class i{currentNavigation=mA(null,{equal:()=>!1});currentTransition=null;lastSuccessfulNavigation=mA(null);events=new ne;transitionAbortWithErrorSubject=new ne;configLoader=w(Hf);environmentInjector=w(Hr);destroyRef=w(Er);urlSerializer=w(ed);rootContexts=w(td);location=w(Gc);inputBindingEnabled=w(WQ,{optional:!0})!==null;titleStrategy=w(qb);options=w(id,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=w(zf);createViewTransition=w(Wb,{optional:!0});navigationErrorHandler=w(Xb,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>oe(void 0);rootComponentType=null;destroyed=!1;constructor(){let A=n=>this.events.next(new xf(n)),t=n=>this.events.next(new Rf(n));this.configLoader.onLoadEndListener=t,this.configLoader.onLoadStartListener=A,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(A){let t=++this.navigationId;wa(()=>{this.transitions?.next($A(P({},A),{extractedUrl:this.urlHandlingStrategy.extract(A.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,id:t,routesRecognizeHandler:{},beforeActivateHandler:{}}))})}setupNavigations(A){return this.transitions=new gi(null),this.transitions.pipe(Bt(t=>t!==null),Mi(t=>{let n=!1,o=new AbortController,a=()=>!n&&this.currentTransition?.id===t.id;return oe(t).pipe(Mi(r=>{if(this.navigationId>t.id)return this.cancelNavigationTransition(t,"",ds.SupersededByNewNavigation),Br;this.currentTransition=t;let s=this.lastSuccessfulNavigation();this.currentNavigation.set({id:r.id,initialUrl:r.rawUrl,extractedUrl:r.extractedUrl,targetBrowserUrl:typeof r.extras.browserUrl=="string"?this.urlSerializer.parse(r.extras.browserUrl):r.extras.browserUrl,trigger:r.source,extras:r.extras,previousNavigation:s?$A(P({},s),{previousNavigation:null}):null,abort:()=>o.abort(),routesRecognizeHandler:r.routesRecognizeHandler,beforeActivateHandler:r.beforeActivateHandler});let l=!A.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),g=r.extras.onSameUrlNavigation??A.onSameUrlNavigation;if(!l&&g!=="reload")return this.events.next(new jc(r.id,this.urlSerializer.serialize(r.rawUrl),"",iB.IgnoredSameUrlNavigation)),r.resolve(!1),Br;if(this.urlHandlingStrategy.shouldProcessUrl(r.rawUrl))return oe(r).pipe(Mi(C=>(this.events.next(new i2(C.id,this.urlSerializer.serialize(C.extractedUrl),C.source,C.restoredState)),C.id!==this.navigationId?Br:Promise.resolve(C))),woA(this.environmentInjector,this.configLoader,this.rootComponentType,A.config,this.urlSerializer,this.paramsInheritanceStrategy,o.signal),mi(C=>{t.targetSnapshot=C.targetSnapshot,t.urlAfterRedirects=C.urlAfterRedirects,this.currentNavigation.update(d=>(d.finalUrl=C.urlAfterRedirects,d)),this.events.next(new HQ)}),Mi(C=>Yr(t.routesRecognizeHandler.deferredHandle??oe(void 0)).pipe(Se(()=>C))),mi(()=>{let C=new YQ(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);this.events.next(C)}));if(l&&this.urlHandlingStrategy.shouldProcessUrl(r.currentRawUrl)){let{id:C,extractedUrl:d,source:B,restoredState:u,extras:E}=r,f=new i2(C,this.urlSerializer.serialize(d),B,u);this.events.next(f);let m=XK(this.rootComponentType,this.environmentInjector).snapshot;return this.currentTransition=t=$A(P({},r),{targetSnapshot:m,urlAfterRedirects:d,extras:$A(P({},E),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.update(v=>(v.finalUrl=d,v)),oe(t)}else return this.events.next(new jc(r.id,this.urlSerializer.serialize(r.extractedUrl),"",iB.IgnoredByUrlHandlingStrategy)),r.resolve(!1),Br}),Se(r=>{let s=new Mf(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);return this.events.next(s),this.currentTransition=t=$A(P({},r),{guards:UnA(r.targetSnapshot,r.currentSnapshot,this.rootContexts)}),t}),WnA(r=>this.events.next(r)),Mi(r=>{if(t.guardsResult=r.guardsResult,r.guardsResult&&typeof r.guardsResult!="boolean")throw Tf(this.urlSerializer,r.guardsResult);let s=new Sf(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot,!!r.guardsResult);if(this.events.next(s),!a())return Br;if(!r.guardsResult)return this.cancelNavigationTransition(r,"",ds.GuardRejected),Br;if(r.guards.canActivateChecks.length===0)return oe(r);let l=new kf(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);if(this.events.next(l),!a())return Br;let g=!1;return oe(r).pipe(yoA(this.paramsInheritanceStrategy),mi({next:()=>{g=!0;let C=new _f(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);this.events.next(C)},complete:()=>{g||this.cancelNavigationTransition(r,"",ds.NoDataFromResolver)}}))}),RK(r=>{let s=g=>{let C=[];if(g.routeConfig?._loadedComponent)g.component=g.routeConfig?._loadedComponent;else if(g.routeConfig?.loadComponent){let d=g._environmentInjector;C.push(this.configLoader.loadComponent(d,g.routeConfig).then(B=>{g.component=B}))}for(let d of g.children)C.push(...s(d));return C},l=s(r.targetSnapshot.root);return l.length===0?oe(r):Yr(Promise.all(l).then(()=>r))}),RK(()=>this.afterPreactivation()),Mi(()=>{let{currentSnapshot:r,targetSnapshot:s}=t,l=this.createViewTransition?.(this.environmentInjector,r.root,s.root);return l?Yr(l).pipe(Se(()=>t)):oe(t)}),Ro(1),Mi(r=>{let s=FnA(A.routeReuseStrategy,r.targetSnapshot,r.currentRouterState);this.currentTransition=t=r=$A(P({},r),{targetRouterState:s}),this.currentNavigation.update(g=>(g.targetRouterState=s,g)),this.events.next(new oB);let l=t.beforeActivateHandler.deferredHandle;return l?Yr(l.then(()=>r)):oe(r)}),mi(r=>{new Kb(A.routeReuseStrategy,t.targetRouterState,t.currentRouterState,s=>this.events.next(s),this.inputBindingEnabled).activate(this.rootContexts),a()&&(n=!0,this.currentNavigation.update(s=>(s.abort=_oA,s)),this.lastSuccessfulNavigation.set(wa(this.currentNavigation)),this.events.next(new Jg(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects))),this.titleStrategy?.updateTitle(r.targetRouterState.snapshot),r.resolve(!0))}),yt(aU(o.signal).pipe(Bt(()=>!n&&!t.targetRouterState),mi(()=>{this.cancelNavigationTransition(t,o.signal.reason+"",ds.Aborted)}))),mi({complete:()=>{n=!0}}),yt(this.transitionAbortWithErrorSubject.pipe(mi(r=>{throw r}))),A3(()=>{o.abort(),n||this.cancelNavigationTransition(t,"",ds.SupersededByNewNavigation),this.currentTransition?.id===t.id&&(this.currentNavigation.set(null),this.currentTransition=null)}),aa(r=>{if(n=!0,this.destroyed)return t.resolve(!1),Br;if(nU(r))this.events.next(new Zl(t.id,this.urlSerializer.serialize(t.extractedUrl),r.message,r.cancellationCode)),KnA(r)?this.events.next(new aB(r.url,r.navigationBehaviorOptions)):t.resolve(!1);else{let s=new $1(t.id,this.urlSerializer.serialize(t.extractedUrl),r,t.targetSnapshot??void 0);try{let l=vr(this.environmentInjector,()=>this.navigationErrorHandler?.(s));if(l instanceof sB){let{message:g,cancellationCode:C}=Tf(this.urlSerializer,l);this.events.next(new Zl(t.id,this.urlSerializer.serialize(t.extractedUrl),g,C)),this.events.next(new aB(l.redirectTo,l.navigationBehaviorOptions))}else throw this.events.next(s),r}catch(l){this.options.resolveNavigationPromiseOnError?t.resolve(!1):t.reject(l)}}return Br}))}))}cancelNavigationTransition(A,t,n){let o=new Zl(A.id,this.urlSerializer.serialize(A.extractedUrl),t,n);this.events.next(o),A.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let A=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),t=wa(this.currentNavigation),n=t?.targetBrowserUrl??t?.extractedUrl;return A.toString()!==n?.toString()&&!t?.extras.skipLocationChange}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function xoA(i){return i!==AB}var QU=new MA("");var uU=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:()=>w(RoA),providedIn:"root"})}return i})(),Jf=class{shouldDetach(e){return!1}store(e,A){}shouldAttach(e){return!1}retrieve(e){return null}shouldReuseRoute(e,A){return e.routeConfig===A.routeConfig}shouldDestroyInjector(e){return!0}},RoA=(()=>{class i extends Jf{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),$b=(()=>{class i{urlSerializer=w(ed);options=w(id,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=w(Gc);urlHandlingStrategy=w(zf);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new Xl;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:A,initialUrl:t,targetBrowserUrl:n}){let o=A!==void 0?this.urlHandlingStrategy.merge(A,t):t,a=n??o;return a instanceof Xl?this.urlSerializer.serialize(a):a}commitTransition({targetRouterState:A,finalUrl:t,initialUrl:n}){t&&A?(this.currentUrlTree=t,this.rawUrlTree=this.urlHandlingStrategy.merge(t,n),this.routerState=A):this.rawUrlTree=n}routerState=XK(null,w(Hr));getRouterState(){return this.routerState}_stateMemento=this.createStateMemento();get stateMemento(){return this._stateMemento}updateStateMemento(){this._stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}restoredState(){return this.location.getState()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:()=>w(NoA),providedIn:"root"})}return i})(),NoA=(()=>{class i extends $b{currentPageId=0;lastSuccessfulId=-1;get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(A){return this.location.subscribe(t=>{t.type==="popstate"&&setTimeout(()=>{A(t.url,t.state,"popstate",{replaceUrl:!0})})})}handleRouterEvent(A,t){A instanceof i2?this.updateStateMemento():A instanceof jc?this.commitTransition(t):A instanceof YQ?this.urlUpdateStrategy==="eager"&&(t.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(t),t)):A instanceof oB?(this.commitTransition(t),this.urlUpdateStrategy==="deferred"&&!t.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(t),t)):A instanceof Zl&&!ZK(A)?this.restoreHistory(t):A instanceof $1?this.restoreHistory(t,!0):A instanceof Jg&&(this.lastSuccessfulId=A.id,this.currentPageId=this.browserPageId)}setBrowserUrl(A,{extras:t,id:n}){let{replaceUrl:o,state:a}=t;if(this.location.isCurrentPathEqualTo(A)||o){let r=this.browserPageId,s=P(P({},a),this.generateNgRouterState(n,r));this.location.replaceState(A,"",s)}else{let r=P(P({},a),this.generateNgRouterState(n,this.browserPageId+1));this.location.go(A,"",r)}}restoreHistory(A,t=!1){if(this.canceledNavigationResolution==="computed"){let n=this.browserPageId,o=this.currentPageId-n;o!==0?this.location.historyGo(o):this.getCurrentUrlTree()===A.finalUrl&&o===0&&(this.resetInternalState(A),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(t&&this.resetInternalState(A),this.resetUrlToCurrentUrlTree())}resetInternalState({finalUrl:A}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,A??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(A,t){return this.canceledNavigationResolution==="computed"?{navigationId:A,\u0275routerPageId:t}:{navigationId:A}}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function jf(i,e){i.events.pipe(Bt(A=>A instanceof Jg||A instanceof Zl||A instanceof $1||A instanceof jc),Se(A=>A instanceof Jg||A instanceof jc?0:(A instanceof Zl?A.code===ds.Redirect||A.code===ds.SupersededByNewNavigation:!1)?2:1),Bt(A=>A!==2),Ro(1)).subscribe(()=>{e()})}var Is=(()=>{class i{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=w(MN);stateManager=w($b);options=w(id,{optional:!0})||{};pendingTasks=w(yN);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=w(Pf);urlSerializer=w(ed);location=w(Gc);urlHandlingStrategy=w(zf);injector=w(Hr);_events=new ne;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=w(uU);injectorCleanup=w(QU,{optional:!0});onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=w(cB,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!w(WQ,{optional:!0});currentNavigation=this.navigationTransitions.currentNavigation.asReadonly();constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:A=>{}}),this.subscribeToNavigationEvents()}eventsSubscription=new Oo;subscribeToNavigationEvents(){let A=this.navigationTransitions.events.subscribe(t=>{try{let n=this.navigationTransitions.currentTransition,o=wa(this.navigationTransitions.currentNavigation);if(n!==null&&o!==null){if(this.stateManager.handleRouterEvent(t,o),t instanceof Zl&&t.code!==ds.Redirect&&t.code!==ds.SupersededByNewNavigation)this.navigated=!0;else if(t instanceof Jg)this.navigated=!0,this.injectorCleanup?.(this.routeReuseStrategy,this.routerState,this.config);else if(t instanceof aB){let a=t.navigationBehaviorOptions,r=this.urlHandlingStrategy.merge(t.url,n.currentRawUrl),s=P({scroll:n.extras.scroll,browserUrl:n.extras.browserUrl,info:n.extras.info,skipLocationChange:n.extras.skipLocationChange,replaceUrl:n.extras.replaceUrl||this.urlUpdateStrategy==="eager"||xoA(n.source)},a);this.scheduleNavigation(r,AB,null,s,{resolve:n.resolve,reject:n.reject,promise:n.promise})}}RnA(t)&&this._events.next(t)}catch(n){this.navigationTransitions.transitionAbortWithErrorSubject.next(n)}});this.eventsSubscription.add(A)}resetRootComponentType(A){this.routerState.root.component=A,this.navigationTransitions.rootComponentType=A}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),AB,this.stateManager.restoredState(),{replaceUrl:!0})}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((A,t,n,o)=>{this.navigateToSyncWithBrowser(A,n,t,o)})}navigateToSyncWithBrowser(A,t,n,o){let a=n?.navigationId?n:null;if(n){let s=P({},n);delete s.navigationId,delete s.\u0275routerPageId,Object.keys(s).length!==0&&(o.state=s)}let r=this.parseUrl(A);this.scheduleNavigation(r,t,a,o).catch(s=>{this.disposed||this.injector.get(LD)(s)})}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return wa(this.navigationTransitions.currentNavigation)}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(A){this.config=A.map(Vb),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription?.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0,this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(A,t={}){let{relativeTo:n,queryParams:o,fragment:a,queryParamsHandling:r,preserveFragment:s}=t,l=s?this.currentUrlTree.fragment:a,g=null;switch(r??this.options.defaultQueryParamsHandling){case"merge":g=P(P({},this.currentUrlTree.queryParams),o);break;case"preserve":g=this.currentUrlTree.queryParams;break;default:g=o||null}g!==null&&(g=this.removeEmptyProps(g));let C;try{let d=n?n.snapshot:this.routerState.snapshot.root;C=jK(d)}catch(d){(typeof A[0]!="string"||A[0][0]!=="/")&&(A=[]),C=this.currentUrlTree.root}return VK(C,A,g,l??null,this.urlSerializer)}navigateByUrl(A,t={skipLocationChange:!1}){let n=tB(A)?A:this.parseUrl(A),o=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(o,AB,null,t)}navigate(A,t={skipLocationChange:!1}){return FoA(A),this.navigateByUrl(this.createUrlTree(A,t),t)}serializeUrl(A){return this.urlSerializer.serialize(A)}parseUrl(A){try{return this.urlSerializer.parse(A)}catch(t){return this.console.warn(pN(4018,!1)),this.urlSerializer.parse("/")}}isActive(A,t){let n;if(t===!0?n=P({},KK):t===!1?n=P({},kb):n=P(P({},kb),t),tB(A))return bK(this.currentUrlTree,A,n);let o=this.parseUrl(A);return bK(this.currentUrlTree,o,n)}removeEmptyProps(A){return Object.entries(A).reduce((t,[n,o])=>(o!=null&&(t[n]=o),t),{})}scheduleNavigation(A,t,n,o,a){if(this.disposed)return Promise.resolve(!1);let r,s,l;a?(r=a.resolve,s=a.reject,l=a.promise):l=new Promise((C,d)=>{r=C,s=d});let g=this.pendingTasks.add();return jf(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(g))}),this.navigationTransitions.handleNavigationRequest({source:t,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:A,extras:o,resolve:r,reject:s,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(Promise.reject.bind(Promise))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function FoA(i){for(let e=0;e{class i{router;injector;preloadingStrategy;loader;subscription;constructor(A,t,n,o){this.router=A,this.injector=t,this.preloadingStrategy=n,this.loader=o}setUpPreloading(){this.subscription=this.router.events.pipe(Bt(A=>A instanceof Jg),VE(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription?.unsubscribe()}processRoutes(A,t){let n=[];for(let o of t){o.providers&&!o._injector&&(o._injector=a3(o.providers,A,""));let a=o._injector??A;o._loadedNgModuleFactory&&!o._loadedInjector&&(o._loadedInjector=o._loadedNgModuleFactory.create(a).injector);let r=o._loadedInjector??a;(o.loadChildren&&!o._loadedRoutes&&o.canLoad===void 0||o.loadComponent&&!o._loadedComponent)&&n.push(this.preloadConfig(a,o)),(o.children||o._loadedRoutes)&&n.push(this.processRoutes(r,o.children??o._loadedRoutes))}return Yr(n).pipe(ND())}preloadConfig(A,t){return this.preloadingStrategy.preload(t,()=>{if(A.destroyed)return oe(null);let n;t.loadChildren&&t.canLoad===void 0?n=Yr(this.loader.loadChildren(A,t)):n=oe(null);let o=n.pipe(xc(a=>a===null?oe(void 0):(t._loadedRoutes=a.routes,t._loadedInjector=a.injector,t._loadedNgModuleFactory=a.factory,this.processRoutes(a.injector??A,a.routes))));if(t.loadComponent&&!t._loadedComponent){let a=this.loader.loadComponent(A,t);return Yr([o,a]).pipe(ND())}else return o})}static \u0275fac=function(t){return new(t||i)(Wo(Is),Wo(Hr),Wo(XQ),Wo(Hf))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),fU=new MA(""),GoA=(()=>{class i{options;routerEventsSubscription;scrollEventsSubscription;lastId=0;lastSource=AB;restoredId=0;store={};urlSerializer=w(ed);zone=w(We);viewportScroller=w(JD);transitions=w(Pf);constructor(A){this.options=A,this.options.scrollPositionRestoration||="disabled",this.options.anchorScrolling||="disabled"}init(){this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(A=>{A instanceof i2?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=A.navigationTrigger,this.restoredId=A.restoredState?A.restoredState.navigationId:0):A instanceof Jg?(this.lastId=A.id,this.scheduleScrollEvent(A,this.urlSerializer.parse(A.urlAfterRedirects).fragment)):A instanceof jc&&A.code===iB.IgnoredSameUrlNavigation&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(A,this.urlSerializer.parse(A.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(A=>{if(!(A instanceof nB)||A.scrollBehavior==="manual")return;let t={behavior:"instant"};A.position?this.options.scrollPositionRestoration==="top"?this.viewportScroller.scrollToPosition([0,0],t):this.options.scrollPositionRestoration==="enabled"&&this.viewportScroller.scrollToPosition(A.position,t):A.anchor&&this.options.anchorScrolling==="enabled"?this.viewportScroller.scrollToAnchor(A.anchor):this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.scrollToPosition([0,0])})}scheduleScrollEvent(A,t){let n=wa(this.transitions.currentNavigation)?.extras.scroll;this.zone.runOutsideAngular(()=>re(this,null,function*(){yield new Promise(o=>{setTimeout(o),typeof requestAnimationFrame<"u"&&requestAnimationFrame(o)}),this.zone.run(()=>{this.transitions.events.next(new nB(A,this.lastSource==="popstate"?this.store[this.restoredId]:null,t,n))})}))}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static \u0275fac=function(t){o3()};static \u0275prov=jA({token:i,factory:i.\u0275fac})}return i})();function KoA(){return w(Is).routerState.root}function $Q(i,e){return{\u0275kind:i,\u0275providers:e}}function UoA(){let i=w(St);return e=>{let A=i.get(F0);if(e!==A.components[0])return;let t=i.get(Is),n=i.get(mU);i.get(e7)===1&&t.initialNavigation(),i.get(DU,null,{optional:!0})?.setUpPreloading(),i.get(fU,null,{optional:!0})?.init(),t.resetRootComponentType(A.componentTypes[0]),n.closed||(n.next(),n.complete(),n.unsubscribe())}}var mU=new MA("",{factory:()=>new ne}),e7=new MA("",{factory:()=>1});function wU(){let i=[{provide:vN,useValue:!0},{provide:e7,useValue:0},UD(()=>{let e=w(St);return e.get(TN,Promise.resolve()).then(()=>new Promise(t=>{let n=e.get(Is),o=e.get(mU);jf(n,()=>{t(!0)}),e.get(Pf).afterPreactivation=()=>(t(!0),o.closed?oe(void 0):o),n.initialNavigation()}))})];return $Q(2,i)}function yU(){let i=[UD(()=>{w(Is).setUpLocationChangeListener()}),{provide:e7,useValue:2}];return $Q(3,i)}var DU=new MA("");function vU(i){return $Q(0,[{provide:DU,useExisting:pU},{provide:XQ,useExisting:i}])}function bU(){return $Q(8,[Pb,{provide:WQ,useExisting:Pb}])}function MU(i){n3("NgRouterViewTransitions");let e=[{provide:Wb,useValue:EU},{provide:Zb,useValue:P({skipNextTransition:!!i?.skipInitialTransition},i)}];return $Q(9,e)}var SU=[Gc,{provide:ed,useClass:z0},Is,td,{provide:$s,useFactory:KoA},Hf,[]],Vf=(()=>{class i{constructor(){}static forRoot(A,t){return{ngModule:i,providers:[SU,[],{provide:cB,multi:!0,useValue:A},[],t?.errorHandler?{provide:Xb,useValue:t.errorHandler}:[],{provide:id,useValue:t||{}},t?.useHash?OoA():JoA(),ToA(),t?.preloadingStrategy?vU(t.preloadingStrategy).\u0275providers:[],t?.initialNavigation?YoA(t):[],t?.bindToComponentInputs?bU().\u0275providers:[],t?.enableViewTransitions?MU().\u0275providers:[],HoA()]}}static forChild(A){return{ngModule:i,providers:[{provide:cB,multi:!0,useValue:A}]}}static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({})}return i})();function ToA(){return{provide:fU,useFactory:()=>{let i=w(JD),e=w(id);return e.scrollOffset&&i.setOffset(e.scrollOffset),new GoA(e)}}}function OoA(){return{provide:OD,useClass:JN}}function JoA(){return{provide:OD,useClass:ON}}function YoA(i){return[i.initialNavigation==="disabled"?yU().\u0275providers:[],i.initialNavigation==="enabledBlocking"?wU().\u0275providers:[]]}var A7=new MA("");function HoA(){return[{provide:A7,useFactory:UoA},{provide:SN,multi:!0,useExisting:A7}]}var joA=["*"];var VoA=new MA("MAT_CARD_CONFIG"),qf=(()=>{class i{appearance;constructor(){let A=w(VoA,{optional:!0});this.appearance=A?.appearance||"raised"}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-card"]],hostAttrs:[1,"mat-mdc-card","mdc-card"],hostVars:8,hostBindings:function(t,n){t&2&&_A("mat-mdc-card-outlined",n.appearance==="outlined")("mdc-card--outlined",n.appearance==="outlined")("mat-mdc-card-filled",n.appearance==="filled")("mdc-card--filled",n.appearance==="filled")},inputs:{appearance:"appearance"},exportAs:["matCard"],ngContentSelectors:joA,decls:1,vars:0,template:function(t,n){t&1&&(Ot(),Ze(0))},styles:[`.mat-mdc-card{display:flex;flex-direction:column;box-sizing:border-box;position:relative;border-style:solid;border-width:0;background-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-elevated-container-elevation, var(--mat-sys-level1))}.mat-mdc-card::after{position:absolute;top:0;left:0;width:100%;height:100%;border:solid 1px rgba(0,0,0,0);content:"";display:block;pointer-events:none;box-sizing:border-box;border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium))}.mat-mdc-card-outlined{background-color:var(--mat-card-outlined-container-color, var(--mat-sys-surface));border-radius:var(--mat-card-outlined-container-shape, var(--mat-sys-corner-medium));border-width:var(--mat-card-outlined-outline-width, 1px);border-color:var(--mat-card-outlined-outline-color, var(--mat-sys-outline-variant));box-shadow:var(--mat-card-outlined-container-elevation, var(--mat-sys-level0))}.mat-mdc-card-outlined::after{border:none}.mat-mdc-card-filled{background-color:var(--mat-card-filled-container-color, var(--mat-sys-surface-container-highest));border-radius:var(--mat-card-filled-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-filled-container-elevation, var(--mat-sys-level0))}.mdc-card__media{position:relative;box-sizing:border-box;background-repeat:no-repeat;background-position:center;background-size:cover}.mdc-card__media::before{display:block;content:""}.mdc-card__media:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.mdc-card__media:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.mat-mdc-card-actions{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;min-height:52px;padding:8px}.mat-mdc-card-title{font-family:var(--mat-card-title-text-font, var(--mat-sys-title-large-font));line-height:var(--mat-card-title-text-line-height, var(--mat-sys-title-large-line-height));font-size:var(--mat-card-title-text-size, var(--mat-sys-title-large-size));letter-spacing:var(--mat-card-title-text-tracking, var(--mat-sys-title-large-tracking));font-weight:var(--mat-card-title-text-weight, var(--mat-sys-title-large-weight))}.mat-mdc-card-subtitle{color:var(--mat-card-subtitle-text-color, var(--mat-sys-on-surface));font-family:var(--mat-card-subtitle-text-font, var(--mat-sys-title-medium-font));line-height:var(--mat-card-subtitle-text-line-height, var(--mat-sys-title-medium-line-height));font-size:var(--mat-card-subtitle-text-size, var(--mat-sys-title-medium-size));letter-spacing:var(--mat-card-subtitle-text-tracking, var(--mat-sys-title-medium-tracking));font-weight:var(--mat-card-subtitle-text-weight, var(--mat-sys-title-medium-weight))}.mat-mdc-card-title,.mat-mdc-card-subtitle{display:block;margin:0}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle{padding:16px 16px 0}.mat-mdc-card-header{display:flex;padding:16px 16px 0}.mat-mdc-card-content{display:block;padding:0 16px}.mat-mdc-card-content:first-child{padding-top:16px}.mat-mdc-card-content:last-child{padding-bottom:16px}.mat-mdc-card-title-group{display:flex;justify-content:space-between;width:100%}.mat-mdc-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;margin-bottom:16px;object-fit:cover}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title{line-height:normal}.mat-mdc-card-sm-image{width:80px;height:80px}.mat-mdc-card-md-image{width:112px;height:112px}.mat-mdc-card-lg-image{width:152px;height:152px}.mat-mdc-card-xl-image{width:240px;height:240px}.mat-mdc-card-subtitle~.mat-mdc-card-title,.mat-mdc-card-title~.mat-mdc-card-subtitle,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-title-group .mat-mdc-card-title,.mat-mdc-card-title-group .mat-mdc-card-subtitle{padding-top:0}.mat-mdc-card-content>:last-child:not(.mat-mdc-card-footer){margin-bottom:0}.mat-mdc-card-actions-align-end{justify-content:flex-end} -`],encapsulation:2,changeDetection:0})}return i})();var kU=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();var Au=class{};function eu(i){return i&&typeof i.connect=="function"&&!(i instanceof IN)}var Yg=(function(i){return i[i.REPLACED=0]="REPLACED",i[i.INSERTED=1]="INSERTED",i[i.MOVED=2]="MOVED",i[i.REMOVED=3]="REMOVED",i})(Yg||{}),Wf=class{viewCacheSize=20;_viewCache=[];applyChanges(e,A,t,n,o){e.forEachOperation((a,r,s)=>{let l,g;if(a.previousIndex==null){let C=()=>t(a,r,s);l=this._insertView(C,s,A,n(a)),g=l?Yg.INSERTED:Yg.REPLACED}else s==null?(this._detachAndCacheView(r,A),g=Yg.REMOVED):(l=this._moveView(r,s,A,n(a)),g=Yg.MOVED);o&&o({context:l?.context,operation:g,record:a})})}detach(){for(let e of this._viewCache)e.destroy();this._viewCache=[]}_insertView(e,A,t,n){let o=this._insertViewFromCache(A,t);if(o){o.context.$implicit=n;return}let a=e();return t.createEmbeddedView(a.templateRef,a.context,a.index)}_detachAndCacheView(e,A){let t=A.detach(e);this._maybeCacheView(t,A)}_moveView(e,A,t,n){let o=t.get(e);return t.move(o,A),o.context.$implicit=n,o}_maybeCacheView(e,A){if(this._viewCache.length{let l,g;if(a.previousIndex==null){let C=t(a,r,s);l=A.createEmbeddedView(C.templateRef,C.context,C.index),g=Yg.INSERTED}else s==null?(A.remove(r),g=Yg.REMOVED):(l=A.get(r),A.move(l,s),g=Yg.MOVED);o&&o({context:l?.context,operation:g,record:a})})}detach(){}};var P0=class{_multiple;_emitChanges;compareWith;_selection=new Set;_deselectedToEmit=[];_selectedToEmit=[];_selected=null;get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}changed=new ne;constructor(e=!1,A,t=!0,n){this._multiple=e,this._emitChanges=t,this.compareWith=n,A&&A.length&&(e?A.forEach(o=>this._markSelected(o)):this._markSelected(A[0]),this._selectedToEmit.length=0)}select(...e){this._verifyValueAssignment(e),e.forEach(t=>this._markSelected(t));let A=this._hasQueuedChanges();return this._emitChangeEvent(),A}deselect(...e){this._verifyValueAssignment(e),e.forEach(t=>this._unmarkSelected(t));let A=this._hasQueuedChanges();return this._emitChangeEvent(),A}setSelection(...e){this._verifyValueAssignment(e);let A=this.selected,t=new Set(e.map(o=>this._getConcreteValue(o)));e.forEach(o=>this._markSelected(o)),A.filter(o=>!t.has(this._getConcreteValue(o,t))).forEach(o=>this._unmarkSelected(o));let n=this._hasQueuedChanges();return this._emitChangeEvent(),n}toggle(e){return this.isSelected(e)?this.deselect(e):this.select(e)}clear(e=!0){this._unmarkAll();let A=this._hasQueuedChanges();return e&&this._emitChangeEvent(),A}isSelected(e){return this._selection.has(this._getConcreteValue(e))}isEmpty(){return this._selection.size===0}hasValue(){return!this.isEmpty()}sort(e){this._multiple&&this.selected&&this._selected.sort(e)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(e){e=this._getConcreteValue(e),this.isSelected(e)||(this._multiple||this._unmarkAll(),this.isSelected(e)||this._selection.add(e),this._emitChanges&&this._selectedToEmit.push(e))}_unmarkSelected(e){e=this._getConcreteValue(e),this.isSelected(e)&&(this._selection.delete(e),this._emitChanges&&this._deselectedToEmit.push(e))}_unmarkAll(){this.isEmpty()||this._selection.forEach(e=>this._unmarkSelected(e))}_verifyValueAssignment(e){e.length>1&&this._multiple}_hasQueuedChanges(){return!!(this._deselectedToEmit.length||this._selectedToEmit.length)}_getConcreteValue(e,A){if(this.compareWith){A=A??this._selection;for(let t of A)if(this.compareWith(e,t))return t;return e}else return e}};var Xf=(()=>{class i{_animationsDisabled=In();state="unchecked";disabled=!1;appearance="full";constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(t,n){t&2&&_A("mat-pseudo-checkbox-indeterminate",n.state==="indeterminate")("mat-pseudo-checkbox-checked",n.state==="checked")("mat-pseudo-checkbox-disabled",n.disabled)("mat-pseudo-checkbox-minimal",n.appearance==="minimal")("mat-pseudo-checkbox-full",n.appearance==="full")("_mat-animation-noopable",n._animationsDisabled)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},decls:0,vars:0,template:function(t,n){},styles:[`.mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-pseudo-checkbox-minimal-selected-checkmark-color, var(--mat-sys-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full{border-color:var(--mat-pseudo-checkbox-full-unselected-icon-color, var(--mat-sys-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-pseudo-checkbox-full-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-pseudo-checkbox-full-selected-icon-color, var(--mat-sys-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-pseudo-checkbox-full-selected-checkmark-color, var(--mat-sys-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-pseudo-checkbox-full-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-pseudo-checkbox-full-disabled-selected-checkmark-color, var(--mat-sys-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px} -`],encapsulation:2,changeDetection:0})}return i})();var qoA=["button"],WoA=["*"];function ZoA(i,e){if(i&1&&(I(0,"div",2),lA(1,"mat-pseudo-checkbox",6),h()),i&2){let A=p();Q(),H("disabled",A.disabled)}}var _U=new MA("MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS",{providedIn:"root",factory:()=>({hideSingleSelectionIndicator:!1,hideMultipleSelectionIndicator:!1,disabledInteractive:!1})}),xU=new MA("MatButtonToggleGroup"),XoA={provide:cs,useExisting:Va(()=>t7),multi:!0},$f=class{source;value;constructor(e,A){this.source=e,this.value=A}},t7=(()=>{class i{_changeDetector=w(Mt);_dir=w(No,{optional:!0});_multiple=!1;_disabled=!1;_disabledInteractive=!1;_selectionModel;_rawValue;_controlValueAccessorChangeFn=()=>{};_onTouched=()=>{};_buttonToggles;appearance;get name(){return this._name}set name(A){this._name=A,this._markButtonsForCheck()}_name=w(Dn).getId("mat-button-toggle-group-");vertical=!1;get value(){let A=this._selectionModel?this._selectionModel.selected:[];return this.multiple?A.map(t=>t.value):A[0]?A[0].value:void 0}set value(A){this._setSelectionByValue(A),this.valueChange.emit(this.value)}valueChange=new FA;get selected(){let A=this._selectionModel?this._selectionModel.selected:[];return this.multiple?A:A[0]||null}get multiple(){return this._multiple}set multiple(A){this._multiple=A,this._markButtonsForCheck()}get disabled(){return this._disabled}set disabled(A){this._disabled=A,this._markButtonsForCheck()}get disabledInteractive(){return this._disabledInteractive}set disabledInteractive(A){this._disabledInteractive=A,this._markButtonsForCheck()}get dir(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}change=new FA;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(A){this._hideSingleSelectionIndicator=A,this._markButtonsForCheck()}_hideSingleSelectionIndicator;get hideMultipleSelectionIndicator(){return this._hideMultipleSelectionIndicator}set hideMultipleSelectionIndicator(A){this._hideMultipleSelectionIndicator=A,this._markButtonsForCheck()}_hideMultipleSelectionIndicator;constructor(){let A=w(_U,{optional:!0});this.appearance=A&&A.appearance?A.appearance:"standard",this._hideSingleSelectionIndicator=A?.hideSingleSelectionIndicator??!1,this._hideMultipleSelectionIndicator=A?.hideMultipleSelectionIndicator??!1}ngOnInit(){this._selectionModel=new P0(this.multiple,void 0,!1)}ngAfterContentInit(){this._selectionModel.select(...this._buttonToggles.filter(A=>A.checked)),this.multiple||this._initializeTabIndex()}writeValue(A){this.value=A,this._changeDetector.markForCheck()}registerOnChange(A){this._controlValueAccessorChangeFn=A}registerOnTouched(A){this._onTouched=A}setDisabledState(A){this.disabled=A}_keydown(A){if(this.multiple||this.disabled||Sa(A))return;let n=A.target.id,o=this._buttonToggles.toArray().findIndex(r=>r.buttonId===n),a=null;switch(A.keyCode){case 32:case 13:a=this._buttonToggles.get(o)||null;break;case 38:a=this._getNextButton(o,-1);break;case 37:a=this._getNextButton(o,this.dir==="ltr"?-1:1);break;case 40:a=this._getNextButton(o,1);break;case 39:a=this._getNextButton(o,this.dir==="ltr"?1:-1);break;default:return}a&&(A.preventDefault(),a._onButtonClick(),a.focus())}_emitChangeEvent(A){let t=new $f(A,this.value);this._rawValue=t.value,this._controlValueAccessorChangeFn(t.value),this.change.emit(t)}_syncButtonToggle(A,t,n=!1,o=!1){!this.multiple&&this.selected&&!A.checked&&(this.selected.checked=!1),this._selectionModel?t?this._selectionModel.select(A):this._selectionModel.deselect(A):o=!0,o?Promise.resolve().then(()=>this._updateModelValue(A,n)):this._updateModelValue(A,n)}_isSelected(A){return this._selectionModel&&this._selectionModel.isSelected(A)}_isPrechecked(A){return typeof this._rawValue>"u"?!1:this.multiple&&Array.isArray(this._rawValue)?this._rawValue.some(t=>A.value!=null&&t===A.value):A.value===this._rawValue}_initializeTabIndex(){if(this._buttonToggles.forEach(A=>{A.tabIndex=-1}),this.selected)this.selected.tabIndex=0;else for(let A=0;Athis._selectValue(n,t))):(this._clearSelection(),this._selectValue(A,t)),!this.multiple&&t.every(n=>n.tabIndex===-1)){for(let n of t)if(!n.disabled){n.tabIndex=0;break}}}_clearSelection(){this._selectionModel.clear(),this._buttonToggles.forEach(A=>{A.checked=!1,this.multiple||(A.tabIndex=-1)})}_selectValue(A,t){for(let n of t)if(n.value===A){n.checked=!0,this._selectionModel.select(n),this.multiple||(n.tabIndex=0);break}}_updateModelValue(A,t){t&&this._emitChangeEvent(A),this.valueChange.emit(this.value)}_markButtonsForCheck(){this._buttonToggles?.forEach(A=>A._markForCheck())}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["mat-button-toggle-group"]],contentQueries:function(t,n,o){if(t&1&&ra(o,Am,5),t&2){let a;se(a=le())&&(n._buttonToggles=a)}},hostAttrs:[1,"mat-button-toggle-group"],hostVars:6,hostBindings:function(t,n){t&1&&U("keydown",function(a){return n._keydown(a)}),t&2&&(ie("role",n.multiple?"group":"radiogroup")("aria-disabled",n.disabled),_A("mat-button-toggle-vertical",n.vertical)("mat-button-toggle-group-appearance-standard",n.appearance==="standard"))},inputs:{appearance:"appearance",name:"name",vertical:[2,"vertical","vertical",Qe],value:"value",multiple:[2,"multiple","multiple",Qe],disabled:[2,"disabled","disabled",Qe],disabledInteractive:[2,"disabledInteractive","disabledInteractive",Qe],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",Qe],hideMultipleSelectionIndicator:[2,"hideMultipleSelectionIndicator","hideMultipleSelectionIndicator",Qe]},outputs:{valueChange:"valueChange",change:"change"},exportAs:["matButtonToggleGroup"],features:[pt([XoA,{provide:xU,useExisting:i}])]})}return i})(),Am=(()=>{class i{_changeDetectorRef=w(Mt);_elementRef=w(ce);_focusMonitor=w(rr);_idGenerator=w(Dn);_animationDisabled=In();_checked=!1;ariaLabel;ariaLabelledby=null;_buttonElement;buttonToggleGroup;get buttonId(){return`${this.id}-button`}id;name;value;get tabIndex(){return this._tabIndex()}set tabIndex(A){this._tabIndex.set(A)}_tabIndex;disableRipple=!1;get appearance(){return this.buttonToggleGroup?this.buttonToggleGroup.appearance:this._appearance}set appearance(A){this._appearance=A}_appearance;get checked(){return this.buttonToggleGroup?this.buttonToggleGroup._isSelected(this):this._checked}set checked(A){A!==this._checked&&(this._checked=A,this.buttonToggleGroup&&this.buttonToggleGroup._syncButtonToggle(this,this._checked),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled||this.buttonToggleGroup&&this.buttonToggleGroup.disabled}set disabled(A){this._disabled=A}_disabled=!1;get disabledInteractive(){return this._disabledInteractive||this.buttonToggleGroup!==null&&this.buttonToggleGroup.disabledInteractive}set disabledInteractive(A){this._disabledInteractive=A}_disabledInteractive;change=new FA;constructor(){w(Eo).load(Qr);let A=w(xU,{optional:!0}),t=w(new Ys("tabindex"),{optional:!0})||"",n=w(_U,{optional:!0});this._tabIndex=mA(parseInt(t)||0),this.buttonToggleGroup=A,this._appearance=n&&n.appearance?n.appearance:"standard",this._disabledInteractive=n?.disabledInteractive??!1}ngOnInit(){let A=this.buttonToggleGroup;this.id=this.id||this._idGenerator.getId("mat-button-toggle-"),A&&(A._isPrechecked(this)?this.checked=!0:A._isSelected(this)!==this._checked&&A._syncButtonToggle(this,this._checked))}ngAfterViewInit(){this._animationDisabled||this._elementRef.nativeElement.classList.add("mat-button-toggle-animations-enabled"),this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){let A=this.buttonToggleGroup;this._focusMonitor.stopMonitoring(this._elementRef),A&&A._isSelected(this)&&A._syncButtonToggle(this,!1,!1,!0)}focus(A){this._buttonElement.nativeElement.focus(A)}_onButtonClick(){if(this.disabled)return;let A=this.isSingleSelector()?!0:!this._checked;if(A!==this._checked&&(this._checked=A,this.buttonToggleGroup&&(this.buttonToggleGroup._syncButtonToggle(this,this._checked,!0),this.buttonToggleGroup._onTouched())),this.isSingleSelector()){let t=this.buttonToggleGroup._buttonToggles.find(n=>n.tabIndex===0);t&&(t.tabIndex=-1),this.tabIndex=0}this.change.emit(new $f(this,this.value))}_markForCheck(){this._changeDetectorRef.markForCheck()}_getButtonName(){return this.isSingleSelector()?this.buttonToggleGroup.name:this.name||null}isSingleSelector(){return this.buttonToggleGroup&&!this.buttonToggleGroup.multiple}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-button-toggle"]],viewQuery:function(t,n){if(t&1&&Wt(qoA,5),t&2){let o;se(o=le())&&(n._buttonElement=o.first)}},hostAttrs:["role","presentation",1,"mat-button-toggle"],hostVars:14,hostBindings:function(t,n){t&1&&U("focus",function(){return n.focus()}),t&2&&(ie("aria-label",null)("aria-labelledby",null)("id",n.id)("name",null),_A("mat-button-toggle-standalone",!n.buttonToggleGroup)("mat-button-toggle-checked",n.checked)("mat-button-toggle-disabled",n.disabled)("mat-button-toggle-disabled-interactive",n.disabledInteractive)("mat-button-toggle-appearance-standard",n.appearance==="standard"))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],id:"id",name:"name",value:"value",tabIndex:"tabIndex",disableRipple:[2,"disableRipple","disableRipple",Qe],appearance:"appearance",checked:[2,"checked","checked",Qe],disabled:[2,"disabled","disabled",Qe],disabledInteractive:[2,"disabledInteractive","disabledInteractive",Qe]},outputs:{change:"change"},exportAs:["matButtonToggle"],ngContentSelectors:WoA,decls:7,vars:13,consts:[["button",""],["type","button",1,"mat-button-toggle-button","mat-focus-indicator",3,"click","id","disabled"],[1,"mat-button-toggle-checkbox-wrapper"],[1,"mat-button-toggle-label-content"],[1,"mat-button-toggle-focus-overlay"],["matRipple","",1,"mat-button-toggle-ripple",3,"matRippleTrigger","matRippleDisabled"],["state","checked","aria-hidden","true","appearance","minimal",3,"disabled"]],template:function(t,n){if(t&1&&(Ot(),I(0,"button",1,0),U("click",function(){return n._onButtonClick()}),T(2,ZoA,2,1,"div",2),I(3,"span",3),Ze(4),h()(),lA(5,"span",4)(6,"span",5)),t&2){let o=Bi(1);H("id",n.buttonId)("disabled",n.disabled&&!n.disabledInteractive||null),ie("role",n.isSingleSelector()?"radio":"button")("tabindex",n.disabled&&!n.disabledInteractive?-1:n.tabIndex)("aria-pressed",n.isSingleSelector()?null:n.checked)("aria-checked",n.isSingleSelector()?n.checked:null)("name",n._getButtonName())("aria-label",n.ariaLabel)("aria-labelledby",n.ariaLabelledby)("aria-disabled",n.disabled&&n.disabledInteractive?"true":null),Q(2),O(n.buttonToggleGroup&&(!n.buttonToggleGroup.multiple&&!n.buttonToggleGroup.hideSingleSelectionIndicator||n.buttonToggleGroup.multiple&&!n.buttonToggleGroup.hideMultipleSelectionIndicator)?2:-1),Q(4),H("matRippleTrigger",o)("matRippleDisabled",n.disableRipple||n.disabled)}},dependencies:[Cs,Xf],styles:[`.mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);border-radius:var(--mat-button-toggle-legacy-shape);transform:translateZ(0)}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}@media(forced-colors: active){.mat-button-toggle-standalone,.mat-button-toggle-group{outline:solid 1px}}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard .mat-pseudo-checkbox,.mat-button-toggle-group-appearance-standard .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-button-toggle-selected-state-text-color, var(--mat-sys-on-secondary-container))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}@media(forced-colors: active){.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{outline:0}}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative;color:var(--mat-button-toggle-legacy-text-color);font-family:var(--mat-button-toggle-legacy-label-text-font);font-size:var(--mat-button-toggle-legacy-label-text-size);line-height:var(--mat-button-toggle-legacy-label-text-line-height);font-weight:var(--mat-button-toggle-legacy-label-text-weight);letter-spacing:var(--mat-button-toggle-legacy-label-text-tracking);--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-button-toggle-legacy-selected-state-text-color)}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-legacy-focus-state-layer-opacity)}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle-checkbox-wrapper{display:inline-block;justify-content:flex-start;align-items:center;width:0;height:18px;line-height:18px;overflow:hidden;box-sizing:border-box;position:absolute;top:50%;left:16px;transform:translate3d(0, -50%, 0)}[dir=rtl] .mat-button-toggle-checkbox-wrapper{left:auto;right:16px}.mat-button-toggle-appearance-standard .mat-button-toggle-checkbox-wrapper{left:12px}[dir=rtl] .mat-button-toggle-appearance-standard .mat-button-toggle-checkbox-wrapper{left:auto;right:12px}.mat-button-toggle-checked .mat-button-toggle-checkbox-wrapper{width:18px}.mat-button-toggle-animations-enabled .mat-button-toggle-checkbox-wrapper{transition:width 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-button-toggle-vertical .mat-button-toggle-checkbox-wrapper{transition:none}.mat-button-toggle-checked{color:var(--mat-button-toggle-legacy-selected-state-text-color);background-color:var(--mat-button-toggle-legacy-selected-state-background-color)}.mat-button-toggle-disabled{pointer-events:none;color:var(--mat-button-toggle-legacy-disabled-state-text-color);background-color:var(--mat-button-toggle-legacy-disabled-state-background-color);--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color: var(--mat-button-toggle-legacy-disabled-state-text-color)}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:var(--mat-button-toggle-legacy-disabled-selected-state-background-color)}.mat-button-toggle-disabled-interactive{pointer-events:auto}.mat-button-toggle-appearance-standard{color:var(--mat-button-toggle-text-color, var(--mat-sys-on-surface));background-color:var(--mat-button-toggle-background-color, transparent);font-family:var(--mat-button-toggle-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-toggle-label-text-size, var(--mat-sys-label-large-size));line-height:var(--mat-button-toggle-label-text-line-height, var(--mat-sys-label-large-line-height));font-weight:var(--mat-button-toggle-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-button-toggle-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:none;border-top:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-appearance-standard.mat-button-toggle-checked{color:var(--mat-button-toggle-selected-state-text-color, var(--mat-sys-on-secondary-container));background-color:var(--mat-button-toggle-selected-state-background-color, var(--mat-sys-secondary-container))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled{color:var(--mat-button-toggle-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-toggle-disabled-state-background-color, transparent)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color: var(--mat-button-toggle-disabled-selected-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled.mat-button-toggle-checked{color:var(--mat-button-toggle-disabled-selected-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-toggle-disabled-selected-state-background-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:var(--mat-button-toggle-state-layer-color, var(--mat-sys-on-surface))}.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-button-toggle-appearance-standard.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}@media(hover: none){.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;user-select:none;display:inline-block;padding:0 16px;line-height:var(--mat-button-toggle-legacy-height);position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px;line-height:var(--mat-button-toggle-height, 40px)}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;pointer-events:none;opacity:0;background-color:var(--mat-button-toggle-legacy-state-layer-color)}@media(forced-colors: active){.mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 500px;opacity:.5;height:0}.mat-button-toggle-checked:hover .mat-button-toggle-focus-overlay{opacity:.6}.mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-animations-enabled .mat-button-toggle-button{transition:padding 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-button-toggle-vertical .mat-button-toggle-button{transition:none}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}.mat-button-toggle-checked .mat-button-toggle-button:has(.mat-button-toggle-checkbox-wrapper){padding-left:30px}[dir=rtl] .mat-button-toggle-checked .mat-button-toggle-button:has(.mat-button-toggle-checkbox-wrapper){padding-left:0;padding-right:30px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{--mat-focus-indicator-border-radius: var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard:not(.mat-button-toggle-vertical) .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard:not(.mat-button-toggle-vertical) .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-bottom-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-top-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))} -`],encapsulation:2,changeDetection:0})}return i})(),RU=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Jc,Am,Di]})}return i})();var $oA=20,qc=(()=>{class i{_ngZone=w(We);_platform=w(Qi);_renderer=w(zr).createRenderer(null,null);_cleanupGlobalListener;constructor(){}_scrolled=new ne;_scrolledCount=0;scrollContainers=new Map;register(A){this.scrollContainers.has(A)||this.scrollContainers.set(A,A.elementScrolled().subscribe(()=>this._scrolled.next(A)))}deregister(A){let t=this.scrollContainers.get(A);t&&(t.unsubscribe(),this.scrollContainers.delete(A))}scrolled(A=$oA){return this._platform.isBrowser?new Fi(t=>{this._cleanupGlobalListener||(this._cleanupGlobalListener=this._ngZone.runOutsideAngular(()=>this._renderer.listen("document","scroll",()=>this._scrolled.next())));let n=A>0?this._scrolled.pipe(v1(A)).subscribe(t):this._scrolled.subscribe(t);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||(this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0)}}):oe()}ngOnDestroy(){this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0,this.scrollContainers.forEach((A,t)=>this.deregister(t)),this._scrolled.complete()}ancestorScrolled(A,t){let n=this.getAncestorScrollContainers(A);return this.scrolled(t).pipe(Bt(o=>!o||n.indexOf(o)>-1))}getAncestorScrollContainers(A){let t=[];return this.scrollContainers.forEach((n,o)=>{this._scrollableContainsElement(o,A)&&t.push(o)}),t}_scrollableContainsElement(A,t){let n=ks(t),o=A.getElementRef().nativeElement;do if(n==o)return!0;while(n=n.parentElement);return!1}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),j0=(()=>{class i{elementRef=w(ce);scrollDispatcher=w(qc);ngZone=w(We);dir=w(No,{optional:!0});_scrollElement=this.elementRef.nativeElement;_destroyed=new ne;_renderer=w(on);_cleanupScroll;_elementScrolled=new ne;constructor(){}ngOnInit(){this._cleanupScroll=this.ngZone.runOutsideAngular(()=>this._renderer.listen(this._scrollElement,"scroll",A=>this._elementScrolled.next(A))),this.scrollDispatcher.register(this)}ngOnDestroy(){this._cleanupScroll?.(),this._elementScrolled.complete(),this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(A){let t=this.elementRef.nativeElement,n=this.dir&&this.dir.value=="rtl";A.left==null&&(A.left=n?A.end:A.start),A.right==null&&(A.right=n?A.start:A.end),A.bottom!=null&&(A.top=t.scrollHeight-t.clientHeight-A.bottom),n&&OI()!=Lg.NORMAL?(A.left!=null&&(A.right=t.scrollWidth-t.clientWidth-A.left),OI()==Lg.INVERTED?A.left=A.right:OI()==Lg.NEGATED&&(A.left=A.right?-A.right:A.right)):A.right!=null&&(A.left=t.scrollWidth-t.clientWidth-A.right),this._applyScrollToOptions(A)}_applyScrollToOptions(A){let t=this.elementRef.nativeElement;O3()?t.scrollTo(A):(A.top!=null&&(t.scrollTop=A.top),A.left!=null&&(t.scrollLeft=A.left))}measureScrollOffset(A){let t="left",n="right",o=this.elementRef.nativeElement;if(A=="top")return o.scrollTop;if(A=="bottom")return o.scrollHeight-o.clientHeight-o.scrollTop;let a=this.dir&&this.dir.value=="rtl";return A=="start"?A=a?n:t:A=="end"&&(A=a?t:n),a&&OI()==Lg.INVERTED?A==t?o.scrollWidth-o.clientWidth-o.scrollLeft:o.scrollLeft:a&&OI()==Lg.NEGATED?A==t?o.scrollLeft+o.scrollWidth-o.clientWidth:-o.scrollLeft:A==t?o.scrollLeft:o.scrollWidth-o.clientWidth-o.scrollLeft}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]})}return i})(),AaA=20,Ns=(()=>{class i{_platform=w(Qi);_listeners;_viewportSize=null;_change=new ne;_document=w(ci);constructor(){let A=w(We),t=w(zr).createRenderer(null,null);A.runOutsideAngular(()=>{if(this._platform.isBrowser){let n=o=>this._change.next(o);this._listeners=[t.listen("window","resize",n),t.listen("window","orientationchange",n)]}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){this._listeners?.forEach(A=>A()),this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();let A={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),A}getViewportRect(){let A=this.getViewportScrollPosition(),{width:t,height:n}=this.getViewportSize();return{top:A.top,left:A.left,bottom:A.top+n,right:A.left+t,height:n,width:t}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};let A=this._document,t=this._getWindow(),n=A.documentElement,o=n.getBoundingClientRect(),a=-o.top||A.body?.scrollTop||t.scrollY||n.scrollTop||0,r=-o.left||A.body?.scrollLeft||t.scrollX||n.scrollLeft||0;return{top:a,left:r}}change(A=AaA){return A>0?this._change.pipe(v1(A)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){let A=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:A.innerWidth,height:A.innerHeight}:{width:0,height:0}}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var NU=new MA("CDK_VIRTUAL_SCROLL_VIEWPORT");var Vc=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({})}return i})(),em=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di,Vc,Di,Vc]})}return i})();var tu=class{_attachedHost=null;attach(e){return this._attachedHost=e,e.attach(this)}detach(){let e=this._attachedHost;e!=null&&(this._attachedHost=null,e.detach())}get isAttached(){return this._attachedHost!=null}setAttachedHost(e){this._attachedHost=e}},Fs=class extends tu{component;viewContainerRef;injector;projectableNodes;bindings;constructor(e,A,t,n,o){super(),this.component=e,this.viewContainerRef=A,this.injector=t,this.projectableNodes=n,this.bindings=o||null}},jr=class extends tu{templateRef;viewContainerRef;context;injector;constructor(e,A,t,n){super(),this.templateRef=e,this.viewContainerRef=A,this.context=t,this.injector=n}get origin(){return this.templateRef.elementRef}attach(e,A=this.context){return this.context=A,super.attach(e)}detach(){return this.context=void 0,super.detach()}},i7=class extends tu{element;constructor(e){super(),this.element=e instanceof ce?e.nativeElement:e}},n2=class{_attachedPortal=null;_disposeFn=null;_isDisposed=!1;hasAttached(){return!!this._attachedPortal}attach(e){if(e instanceof Fs)return this._attachedPortal=e,this.attachComponentPortal(e);if(e instanceof jr)return this._attachedPortal=e,this.attachTemplatePortal(e);if(this.attachDomPortal&&e instanceof i7)return this._attachedPortal=e,this.attachDomPortal(e)}attachDomPortal=null;detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(e){this._disposeFn=e}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}},iu=class extends n2{outletElement;_appRef;_defaultInjector;constructor(e,A,t){super(),this.outletElement=e,this._appRef=A,this._defaultInjector=t}attachComponentPortal(e){let A;if(e.viewContainerRef){let t=e.injector||e.viewContainerRef.injector,n=t.get(GD,null,{optional:!0})||void 0;A=e.viewContainerRef.createComponent(e.component,{index:e.viewContainerRef.length,injector:t,ngModuleRef:n,projectableNodes:e.projectableNodes||void 0,bindings:e.bindings||void 0}),this.setDisposeFn(()=>A.destroy())}else{let t=this._appRef,n=e.injector||this._defaultInjector||St.NULL,o=n.get(Hr,t.injector);A=C3(e.component,{elementInjector:n,environmentInjector:o,projectableNodes:e.projectableNodes||void 0,bindings:e.bindings||void 0}),t.attachView(A.hostView),this.setDisposeFn(()=>{t.viewCount>0&&t.detachView(A.hostView),A.destroy()})}return this.outletElement.appendChild(this._getComponentRootNode(A)),this._attachedPortal=e,A}attachTemplatePortal(e){let A=e.viewContainerRef,t=A.createEmbeddedView(e.templateRef,e.context,{injector:e.injector});return t.rootNodes.forEach(n=>this.outletElement.appendChild(n)),t.detectChanges(),this.setDisposeFn(()=>{let n=A.indexOf(t);n!==-1&&A.remove(n)}),this._attachedPortal=e,t}attachDomPortal=e=>{let A=e.element;A.parentNode;let t=this.outletElement.ownerDocument.createComment("dom-portal");A.parentNode.insertBefore(t,A),this.outletElement.appendChild(A),this._attachedPortal=e,super.setDisposeFn(()=>{t.parentNode&&t.parentNode.replaceChild(A,t)})};dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(e){return e.hostView.rootNodes[0]}},FU=(()=>{class i extends jr{constructor(){let A=w(wo),t=w(Jo);super(A,t)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[bt]})}return i})(),Ag=(()=>{class i extends n2{_moduleRef=w(GD,{optional:!0});_document=w(ci);_viewContainerRef=w(Jo);_isInitialized=!1;_attachedRef=null;constructor(){super()}get portal(){return this._attachedPortal}set portal(A){this.hasAttached()&&!A&&!this._isInitialized||(this.hasAttached()&&super.detach(),A&&super.attach(A),this._attachedPortal=A||null)}attached=new FA;get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(A){A.setAttachedHost(this);let t=A.viewContainerRef!=null?A.viewContainerRef:this._viewContainerRef,n=t.createComponent(A.component,{index:t.length,injector:A.injector||t.injector,projectableNodes:A.projectableNodes||void 0,ngModuleRef:this._moduleRef||void 0,bindings:A.bindings||void 0});return t!==this._viewContainerRef&&this._getRootNode().appendChild(n.hostView.rootNodes[0]),super.setDisposeFn(()=>n.destroy()),this._attachedPortal=A,this._attachedRef=n,this.attached.emit(n),n}attachTemplatePortal(A){A.setAttachedHost(this);let t=this._viewContainerRef.createEmbeddedView(A.templateRef,A.context,{injector:A.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=A,this._attachedRef=t,this.attached.emit(t),t}attachDomPortal=A=>{let t=A.element;t.parentNode;let n=this._document.createComment("dom-portal");A.setAttachedHost(this),t.parentNode.insertBefore(n,t),this._getRootNode().appendChild(t),this._attachedPortal=A,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(t,n)})};_getRootNode(){let A=this._viewContainerRef.element.nativeElement;return A.nodeType===A.ELEMENT_NODE?A:A.parentNode}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:[0,"cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[bt]})}return i})(),Wc=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({})}return i})();var LU=O3();function IB(i){return new tm(i.get(Ns),i.get(ci))}var tm=class{_viewportRuler;_previousHTMLStyles={top:"",left:""};_previousScrollPosition;_isEnabled=!1;_document;constructor(e,A){this._viewportRuler=e,this._document=A}attach(){}enable(){if(this._canBeEnabled()){let e=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=e.style.left||"",this._previousHTMLStyles.top=e.style.top||"",e.style.left=Wa(-this._previousScrollPosition.left),e.style.top=Wa(-this._previousScrollPosition.top),e.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){let e=this._document.documentElement,A=this._document.body,t=e.style,n=A.style,o=t.scrollBehavior||"",a=n.scrollBehavior||"";this._isEnabled=!1,t.left=this._previousHTMLStyles.left,t.top=this._previousHTMLStyles.top,e.classList.remove("cdk-global-scrollblock"),LU&&(t.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),LU&&(t.scrollBehavior=o,n.scrollBehavior=a)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;let A=this._document.documentElement,t=this._viewportRuler.getViewportSize();return A.scrollHeight>t.height||A.scrollWidth>t.width}};function YU(i,e){return new im(i.get(qc),i.get(We),i.get(Ns),e)}var im=class{_scrollDispatcher;_ngZone;_viewportRuler;_config;_scrollSubscription=null;_overlayRef;_initialScrollPosition;constructor(e,A,t,n){this._scrollDispatcher=e,this._ngZone=A,this._viewportRuler=t,this._config=n}attach(e){this._overlayRef,this._overlayRef=e}enable(){if(this._scrollSubscription)return;let e=this._scrollDispatcher.scrolled(0).pipe(Bt(A=>!A||!this._overlayRef.overlayElement.contains(A.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=e.subscribe(()=>{let A=this._viewportRuler.getViewportScrollPosition().top;Math.abs(A-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=e.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}_detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}};var nu=class{enable(){}disable(){}attach(){}};function n7(i,e){return e.some(A=>{let t=i.bottomA.bottom,o=i.rightA.right;return t||n||o||a})}function GU(i,e){return e.some(A=>{let t=i.topA.bottom,o=i.leftA.right;return t||n||o||a})}function V0(i,e){return new nm(i.get(qc),i.get(Ns),i.get(We),e)}var nm=class{_scrollDispatcher;_viewportRuler;_ngZone;_config;_scrollSubscription=null;_overlayRef;constructor(e,A,t,n){this._scrollDispatcher=e,this._viewportRuler=A,this._ngZone=t,this._config=n}attach(e){this._overlayRef,this._overlayRef=e}enable(){if(!this._scrollSubscription){let e=this._config?this._config.scrollThrottle:0;this._scrollSubscription=this._scrollDispatcher.scrolled(e).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){let A=this._overlayRef.overlayElement.getBoundingClientRect(),{width:t,height:n}=this._viewportRuler.getViewportSize();n7(A,[{width:t,height:n,bottom:n,right:t,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}})}}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}},HU=(()=>{class i{_injector=w(St);constructor(){}noop=()=>new nu;close=A=>YU(this._injector,A);block=()=>IB(this._injector);reposition=A=>V0(this._injector,A);static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),Hg=class{positionStrategy;scrollStrategy=new nu;panelClass="";hasBackdrop=!1;backdropClass="cdk-overlay-dark-backdrop";disableAnimations;width;height;minWidth;minHeight;maxWidth;maxHeight;direction;disposeOnNavigation=!1;usePopover;eventPredicate;constructor(e){if(e){let A=Object.keys(e);for(let t of A)e[t]!==void 0&&(this[t]=e[t])}}};var om=class{connectionPair;scrollableViewProperties;constructor(e,A){this.connectionPair=e,this.scrollableViewProperties=A}};var zU=(()=>{class i{_attachedOverlays=[];_document=w(ci);_isAttached=!1;constructor(){}ngOnDestroy(){this.detach()}add(A){this.remove(A),this._attachedOverlays.push(A)}remove(A){let t=this._attachedOverlays.indexOf(A);t>-1&&this._attachedOverlays.splice(t,1),this._attachedOverlays.length===0&&this.detach()}canReceiveEvent(A,t,n){return n.observers.length<1?!1:A.eventPredicate?A.eventPredicate(t):!0}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),PU=(()=>{class i extends zU{_ngZone=w(We);_renderer=w(zr).createRenderer(null,null);_cleanupKeydown;add(A){super.add(A),this._isAttached||(this._ngZone.runOutsideAngular(()=>{this._cleanupKeydown=this._renderer.listen("body","keydown",this._keydownListener)}),this._isAttached=!0)}detach(){this._isAttached&&(this._cleanupKeydown?.(),this._isAttached=!1)}_keydownListener=A=>{let t=this._attachedOverlays;for(let n=t.length-1;n>-1;n--){let o=t[n];if(this.canReceiveEvent(o,A,o._keydownEvents)){this._ngZone.run(()=>o._keydownEvents.next(A));break}}};static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),jU=(()=>{class i extends zU{_platform=w(Qi);_ngZone=w(We);_renderer=w(zr).createRenderer(null,null);_cursorOriginalValue;_cursorStyleIsSet=!1;_pointerDownEventTarget=null;_cleanups;add(A){if(super.add(A),!this._isAttached){let t=this._document.body,n={capture:!0},o=this._renderer;this._cleanups=this._ngZone.runOutsideAngular(()=>[o.listen(t,"pointerdown",this._pointerDownListener,n),o.listen(t,"click",this._clickListener,n),o.listen(t,"auxclick",this._clickListener,n),o.listen(t,"contextmenu",this._clickListener,n)]),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){this._isAttached&&(this._cleanups?.forEach(A=>A()),this._cleanups=void 0,this._platform.IOS&&this._cursorStyleIsSet&&(this._document.body.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1)}_pointerDownListener=A=>{this._pointerDownEventTarget=Pr(A)};_clickListener=A=>{let t=Pr(A),n=A.type==="click"&&this._pointerDownEventTarget?this._pointerDownEventTarget:t;this._pointerDownEventTarget=null;let o=this._attachedOverlays.slice();for(let a=o.length-1;a>-1;a--){let r=o[a],s=r._outsidePointerEvents;if(!(!r.hasAttached()||!this.canReceiveEvent(r,A,s))){if(KU(r.overlayElement,t)||KU(r.overlayElement,n))break;this._ngZone?this._ngZone.run(()=>s.next(A)):s.next(A)}}};static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function KU(i,e){let A=typeof ShadowRoot<"u"&&ShadowRoot,t=e;for(;t;){if(t===i)return!0;t=A&&t instanceof ShadowRoot?t.host:t.parentNode}return!1}var VU=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["ng-component"]],hostAttrs:["cdk-overlay-style-loader",""],decls:0,vars:0,template:function(t,n){},styles:[`.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed}@layer cdk-overlay{.cdk-overlay-container{z-index:1000}}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute}@layer cdk-overlay{.cdk-global-overlay-wrapper{z-index:1000}}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%}@layer cdk-overlay{.cdk-overlay-pane{z-index:1000}}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);opacity:0;touch-action:manipulation}@layer cdk-overlay{.cdk-overlay-backdrop{z-index:1000;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors: active){.cdk-overlay-backdrop-showing{opacity:.6}}@layer cdk-overlay{.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px}@layer cdk-overlay{.cdk-overlay-connected-position-bounding-box{z-index:1000}}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:auto;top:0;left:0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto} -`],encapsulation:2,changeDetection:0})}return i})(),sm=(()=>{class i{_platform=w(Qi);_containerElement;_document=w(ci);_styleLoader=w(Eo);constructor(){}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._loadStyles(),this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let A="cdk-overlay-container";if(this._platform.isBrowser||yv()){let n=this._document.querySelectorAll(`.${A}[platform="server"], .${A}[platform="test"]`);for(let o=0;o{let e=this.element;clearTimeout(this._fallbackTimeout),this._cleanupTransitionEnd?.(),this._cleanupTransitionEnd=this._renderer.listen(e,"transitionend",this.dispose),this._fallbackTimeout=setTimeout(this.dispose,500),e.style.pointerEvents="none",e.classList.remove("cdk-overlay-backdrop-showing")})}dispose=()=>{clearTimeout(this._fallbackTimeout),this._cleanupClick?.(),this._cleanupTransitionEnd?.(),this._cleanupClick=this._cleanupTransitionEnd=this._fallbackTimeout=void 0,this.element.remove()}};function a7(i){return i&&i.nodeType===1}var CB=class{_portalOutlet;_host;_pane;_config;_ngZone;_keyboardDispatcher;_document;_location;_outsideClickDispatcher;_animationsDisabled;_injector;_renderer;_backdropClick=new ne;_attachments=new ne;_detachments=new ne;_positionStrategy;_scrollStrategy;_locationChanges=Oo.EMPTY;_backdropRef=null;_detachContentMutationObserver;_detachContentAfterRenderRef;_disposed=!1;_previousHostParent;_keydownEvents=new ne;_outsidePointerEvents=new ne;_afterNextRenderRef;constructor(e,A,t,n,o,a,r,s,l,g=!1,C,d){this._portalOutlet=e,this._host=A,this._pane=t,this._config=n,this._ngZone=o,this._keyboardDispatcher=a,this._document=r,this._location=s,this._outsideClickDispatcher=l,this._animationsDisabled=g,this._injector=C,this._renderer=d,n.scrollStrategy&&(this._scrollStrategy=n.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=n.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropRef?.element||null}get hostElement(){return this._host}get eventPredicate(){return this._config?.eventPredicate||null}attach(e){if(this._disposed)return null;this._attachHost();let A=this._portalOutlet.attach(e);return this._positionStrategy?.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._afterNextRenderRef?.destroy(),this._afterNextRenderRef=ao(()=>{this.hasAttached()&&this.updatePosition()},{injector:this._injector}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._completeDetachContent(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),typeof A?.onDestroy=="function"&&A.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),A}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();let e=this._portalOutlet.detach();return this._detachments.next(),this._completeDetachContent(),this._keyboardDispatcher.remove(this),this._detachContentWhenEmpty(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),e}dispose(){if(this._disposed)return;let e=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._backdropRef?.dispose(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._afterNextRenderRef?.destroy(),this._previousHostParent=this._pane=this._host=this._backdropRef=null,e&&this._detachments.next(),this._detachments.complete(),this._completeDetachContent(),this._disposed=!0}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(e){e!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=e,this.hasAttached()&&(e.attach(this),this.updatePosition()))}updateSize(e){this._config=P(P({},this._config),e),this._updateElementSize()}setDirection(e){this._config=$A(P({},this._config),{direction:e}),this._updateElementDirection()}addPanelClass(e){this._pane&&this._toggleClasses(this._pane,e,!0)}removePanelClass(e){this._pane&&this._toggleClasses(this._pane,e,!1)}getDirection(){let e=this._config.direction;return e?typeof e=="string"?e:e.value:"ltr"}updateScrollStrategy(e){e!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=e,this.hasAttached()&&(e.attach(this),e.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;let e=this._pane.style;e.width=Wa(this._config.width),e.height=Wa(this._config.height),e.minWidth=Wa(this._config.minWidth),e.minHeight=Wa(this._config.minHeight),e.maxWidth=Wa(this._config.maxWidth),e.maxHeight=Wa(this._config.maxHeight)}_togglePointerEvents(e){this._pane.style.pointerEvents=e?"":"none"}_attachHost(){if(!this._host.parentElement){let e=this._config.usePopover?this._positionStrategy?.getPopoverInsertionPoint?.():null;a7(e)?e.after(this._host):e?.type==="parent"?e.element.appendChild(this._host):this._previousHostParent?.appendChild(this._host)}if(this._config.usePopover)try{this._host.showPopover()}catch(e){}}_attachBackdrop(){let e="cdk-overlay-backdrop-showing";this._backdropRef?.dispose(),this._backdropRef=new o7(this._document,this._renderer,this._ngZone,A=>{this._backdropClick.next(A)}),this._animationsDisabled&&this._backdropRef.element.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropRef.element,this._config.backdropClass,!0),this._config.usePopover?this._host.prepend(this._backdropRef.element):this._host.parentElement.insertBefore(this._backdropRef.element,this._host),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this._backdropRef?.element.classList.add(e))}):this._backdropRef.element.classList.add(e)}_updateStackingOrder(){!this._config.usePopover&&this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){this._animationsDisabled?(this._backdropRef?.dispose(),this._backdropRef=null):this._backdropRef?.detach()}_toggleClasses(e,A,t){let n=GI(A||[]).filter(o=>!!o);n.length&&(t?e.classList.add(...n):e.classList.remove(...n))}_detachContentWhenEmpty(){let e=!1;try{this._detachContentAfterRenderRef=ao(()=>{e=!0,this._detachContent()},{injector:this._injector})}catch(A){if(e)throw A;this._detachContent()}globalThis.MutationObserver&&this._pane&&(this._detachContentMutationObserver||=new globalThis.MutationObserver(()=>{this._detachContent()}),this._detachContentMutationObserver.observe(this._pane,{childList:!0}))}_detachContent(){(!this._pane||!this._host||this._pane.children.length===0)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),this._completeDetachContent())}_completeDetachContent(){this._detachContentAfterRenderRef?.destroy(),this._detachContentAfterRenderRef=void 0,this._detachContentMutationObserver?.disconnect()}_disposeScrollStrategy(){let e=this._scrollStrategy;e?.disable(),e?.detach?.()}},UU="cdk-overlay-connected-position-bounding-box",taA=/([A-Za-z%]+)$/;function od(i,e){return new am(e,i.get(Ns),i.get(ci),i.get(Qi),i.get(sm))}var am=class{_viewportRuler;_document;_platform;_overlayContainer;_overlayRef;_isInitialRender=!1;_lastBoundingBoxSize={width:0,height:0};_isPushed=!1;_canPush=!0;_growAfterOpen=!1;_hasFlexibleDimensions=!0;_positionLocked=!1;_originRect;_overlayRect;_viewportRect;_containerRect;_viewportMargin=0;_scrollables=[];_preferredPositions=[];_origin;_pane;_isDisposed=!1;_boundingBox=null;_lastPosition=null;_lastScrollVisibility=null;_positionChanges=new ne;_resizeSubscription=Oo.EMPTY;_offsetX=0;_offsetY=0;_transformOriginSelector;_appliedPanelClasses=[];_previousPushAmount=null;_popoverLocation="global";positionChanges=this._positionChanges;get positions(){return this._preferredPositions}constructor(e,A,t,n,o){this._viewportRuler=A,this._document=t,this._platform=n,this._overlayContainer=o,this.setOrigin(e)}attach(e){this._overlayRef&&this._overlayRef,this._validatePositions(),e.hostElement.classList.add(UU),this._overlayRef=e,this._boundingBox=e.hostElement,this._pane=e.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition){this.reapplyLastPosition();return}this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._getContainerRect();let e=this._originRect,A=this._overlayRect,t=this._viewportRect,n=this._containerRect,o=[],a;for(let r of this._preferredPositions){let s=this._getOriginPoint(e,n,r),l=this._getOverlayPoint(s,A,r),g=this._getOverlayFit(l,A,t,r);if(g.isCompletelyWithinViewport){this._isPushed=!1,this._applyPosition(r,s);return}if(this._canFitWithFlexibleDimensions(g,l,t)){o.push({position:r,origin:s,overlayRect:A,boundingBoxRect:this._calculateBoundingBoxRect(s,r)});continue}(!a||a.overlayFit.visibleAreas&&(s=g,r=l)}this._isPushed=!1,this._applyPosition(r.position,r.origin);return}if(this._canPush){this._isPushed=!0,this._applyPosition(a.position,a.originPoint);return}this._applyPosition(a.position,a.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&nd(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(UU),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;let e=this._lastPosition;e?(this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._getContainerRect(),this._applyPosition(e,this._getOriginPoint(this._originRect,this._containerRect,e))):this.apply()}withScrollableContainers(e){return this._scrollables=e,this}withPositions(e){return this._preferredPositions=e,e.indexOf(this._lastPosition)===-1&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(e){return this._viewportMargin=e,this}withFlexibleDimensions(e=!0){return this._hasFlexibleDimensions=e,this}withGrowAfterOpen(e=!0){return this._growAfterOpen=e,this}withPush(e=!0){return this._canPush=e,this}withLockedPosition(e=!0){return this._positionLocked=e,this}setOrigin(e){return this._origin=e,this}withDefaultOffsetX(e){return this._offsetX=e,this}withDefaultOffsetY(e){return this._offsetY=e,this}withTransformOriginOn(e){return this._transformOriginSelector=e,this}withPopoverLocation(e){return this._popoverLocation=e,this}getPopoverInsertionPoint(){return this._popoverLocation==="global"?null:this._popoverLocation!=="inline"?this._popoverLocation:this._origin instanceof ce?this._origin.nativeElement:a7(this._origin)?this._origin:null}_getOriginPoint(e,A,t){let n;if(t.originX=="center")n=e.left+e.width/2;else{let a=this._isRtl()?e.right:e.left,r=this._isRtl()?e.left:e.right;n=t.originX=="start"?a:r}A.left<0&&(n-=A.left);let o;return t.originY=="center"?o=e.top+e.height/2:o=t.originY=="top"?e.top:e.bottom,A.top<0&&(o-=A.top),{x:n,y:o}}_getOverlayPoint(e,A,t){let n;t.overlayX=="center"?n=-A.width/2:t.overlayX==="start"?n=this._isRtl()?-A.width:0:n=this._isRtl()?0:-A.width;let o;return t.overlayY=="center"?o=-A.height/2:o=t.overlayY=="top"?0:-A.height,{x:e.x+n,y:e.y+o}}_getOverlayFit(e,A,t,n){let o=OU(A),{x:a,y:r}=e,s=this._getOffset(n,"x"),l=this._getOffset(n,"y");s&&(a+=s),l&&(r+=l);let g=0-a,C=a+o.width-t.width,d=0-r,B=r+o.height-t.height,u=this._subtractOverflows(o.width,g,C),E=this._subtractOverflows(o.height,d,B),f=u*E;return{visibleArea:f,isCompletelyWithinViewport:o.width*o.height===f,fitsInViewportVertically:E===o.height,fitsInViewportHorizontally:u==o.width}}_canFitWithFlexibleDimensions(e,A,t){if(this._hasFlexibleDimensions){let n=t.bottom-A.y,o=t.right-A.x,a=TU(this._overlayRef.getConfig().minHeight),r=TU(this._overlayRef.getConfig().minWidth),s=e.fitsInViewportVertically||a!=null&&a<=n,l=e.fitsInViewportHorizontally||r!=null&&r<=o;return s&&l}return!1}_pushOverlayOnScreen(e,A,t){if(this._previousPushAmount&&this._positionLocked)return{x:e.x+this._previousPushAmount.x,y:e.y+this._previousPushAmount.y};let n=OU(A),o=this._viewportRect,a=Math.max(e.x+n.width-o.width,0),r=Math.max(e.y+n.height-o.height,0),s=Math.max(o.top-t.top-e.y,0),l=Math.max(o.left-t.left-e.x,0),g=0,C=0;return n.width<=o.width?g=l||-a:g=e.xu&&!this._isInitialRender&&!this._growAfterOpen&&(a=e.y-u/2)}let s=A.overlayX==="start"&&!n||A.overlayX==="end"&&n,l=A.overlayX==="end"&&!n||A.overlayX==="start"&&n,g,C,d;if(l)d=t.width-e.x+this._getViewportMarginStart()+this._getViewportMarginEnd(),g=e.x-this._getViewportMarginStart();else if(s)C=e.x,g=t.right-e.x-this._getViewportMarginEnd();else{let B=Math.min(t.right-e.x+t.left,e.x),u=this._lastBoundingBoxSize.width;g=B*2,C=e.x-B,g>u&&!this._isInitialRender&&!this._growAfterOpen&&(C=e.x-u/2)}return{top:a,left:C,bottom:r,right:d,width:g,height:o}}_setBoundingBoxStyles(e,A){let t=this._calculateBoundingBoxRect(e,A);!this._isInitialRender&&!this._growAfterOpen&&(t.height=Math.min(t.height,this._lastBoundingBoxSize.height),t.width=Math.min(t.width,this._lastBoundingBoxSize.width));let n={};if(this._hasExactPosition())n.top=n.left="0",n.bottom=n.right="auto",n.maxHeight=n.maxWidth="",n.width=n.height="100%";else{let o=this._overlayRef.getConfig().maxHeight,a=this._overlayRef.getConfig().maxWidth;n.width=Wa(t.width),n.height=Wa(t.height),n.top=Wa(t.top)||"auto",n.bottom=Wa(t.bottom)||"auto",n.left=Wa(t.left)||"auto",n.right=Wa(t.right)||"auto",A.overlayX==="center"?n.alignItems="center":n.alignItems=A.overlayX==="end"?"flex-end":"flex-start",A.overlayY==="center"?n.justifyContent="center":n.justifyContent=A.overlayY==="bottom"?"flex-end":"flex-start",o&&(n.maxHeight=Wa(o)),a&&(n.maxWidth=Wa(a))}this._lastBoundingBoxSize=t,nd(this._boundingBox.style,n)}_resetBoundingBoxStyles(){nd(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){nd(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(e,A){let t={},n=this._hasExactPosition(),o=this._hasFlexibleDimensions,a=this._overlayRef.getConfig();if(n){let g=this._viewportRuler.getViewportScrollPosition();nd(t,this._getExactOverlayY(A,e,g)),nd(t,this._getExactOverlayX(A,e,g))}else t.position="static";let r="",s=this._getOffset(A,"x"),l=this._getOffset(A,"y");s&&(r+=`translateX(${s}px) `),l&&(r+=`translateY(${l}px)`),t.transform=r.trim(),a.maxHeight&&(n?t.maxHeight=Wa(a.maxHeight):o&&(t.maxHeight="")),a.maxWidth&&(n?t.maxWidth=Wa(a.maxWidth):o&&(t.maxWidth="")),nd(this._pane.style,t)}_getExactOverlayY(e,A,t){let n={top:"",bottom:""},o=this._getOverlayPoint(A,this._overlayRect,e);if(this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,t)),e.overlayY==="bottom"){let a=this._document.documentElement.clientHeight;n.bottom=`${a-(o.y+this._overlayRect.height)}px`}else n.top=Wa(o.y);return n}_getExactOverlayX(e,A,t){let n={left:"",right:""},o=this._getOverlayPoint(A,this._overlayRect,e);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,t));let a;if(this._isRtl()?a=e.overlayX==="end"?"left":"right":a=e.overlayX==="end"?"right":"left",a==="right"){let r=this._document.documentElement.clientWidth;n.right=`${r-(o.x+this._overlayRect.width)}px`}else n.left=Wa(o.x);return n}_getScrollVisibility(){let e=this._getOriginRect(),A=this._pane.getBoundingClientRect(),t=this._scrollables.map(n=>n.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:GU(e,t),isOriginOutsideView:n7(e,t),isOverlayClipped:GU(A,t),isOverlayOutsideView:n7(A,t)}}_subtractOverflows(e,...A){return A.reduce((t,n)=>t-Math.max(n,0),e)}_getNarrowedViewportRect(){let e=this._document.documentElement.clientWidth,A=this._document.documentElement.clientHeight,t=this._viewportRuler.getViewportScrollPosition();return{top:t.top+this._getViewportMarginTop(),left:t.left+this._getViewportMarginStart(),right:t.left+e-this._getViewportMarginEnd(),bottom:t.top+A-this._getViewportMarginBottom(),width:e-this._getViewportMarginStart()-this._getViewportMarginEnd(),height:A-this._getViewportMarginTop()-this._getViewportMarginBottom()}}_isRtl(){return this._overlayRef.getDirection()==="rtl"}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(e,A){return A==="x"?e.offsetX==null?this._offsetX:e.offsetX:e.offsetY==null?this._offsetY:e.offsetY}_validatePositions(){}_addPanelClasses(e){this._pane&&GI(e).forEach(A=>{A!==""&&this._appliedPanelClasses.indexOf(A)===-1&&(this._appliedPanelClasses.push(A),this._pane.classList.add(A))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(e=>{this._pane.classList.remove(e)}),this._appliedPanelClasses=[])}_getViewportMarginStart(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.start??0}_getViewportMarginEnd(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.end??0}_getViewportMarginTop(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.top??0}_getViewportMarginBottom(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.bottom??0}_getOriginRect(){let e=this._origin;if(e instanceof ce)return e.nativeElement.getBoundingClientRect();if(e instanceof Element)return e.getBoundingClientRect();let A=e.width||0,t=e.height||0;return{top:e.y,bottom:e.y+t,left:e.x,right:e.x+A,height:t,width:A}}_getContainerRect(){let e=this._overlayRef.getConfig().usePopover&&this._popoverLocation!=="global",A=this._overlayContainer.getContainerElement();e&&(A.style.display="block");let t=A.getBoundingClientRect();return e&&(A.style.display=""),t}};function nd(i,e){for(let A in e)e.hasOwnProperty(A)&&(i[A]=e[A]);return i}function TU(i){if(typeof i!="number"&&i!=null){let[e,A]=i.split(taA);return!A||A==="px"?parseFloat(e):null}return i||null}function OU(i){return{top:Math.floor(i.top),right:Math.floor(i.right),bottom:Math.floor(i.bottom),left:Math.floor(i.left),width:Math.floor(i.width),height:Math.floor(i.height)}}function iaA(i,e){return i===e?!0:i.isOriginClipped===e.isOriginClipped&&i.isOriginOutsideView===e.isOriginOutsideView&&i.isOverlayClipped===e.isOverlayClipped&&i.isOverlayOutsideView===e.isOverlayOutsideView}var JU="cdk-global-overlay-wrapper";function o2(i){return new rm}var rm=class{_overlayRef;_cssPosition="static";_topOffset="";_bottomOffset="";_alignItems="";_xPosition="";_xOffset="";_width="";_height="";_isDisposed=!1;attach(e){let A=e.getConfig();this._overlayRef=e,this._width&&!A.width&&e.updateSize({width:this._width}),this._height&&!A.height&&e.updateSize({height:this._height}),e.hostElement.classList.add(JU),this._isDisposed=!1}top(e=""){return this._bottomOffset="",this._topOffset=e,this._alignItems="flex-start",this}left(e=""){return this._xOffset=e,this._xPosition="left",this}bottom(e=""){return this._topOffset="",this._bottomOffset=e,this._alignItems="flex-end",this}right(e=""){return this._xOffset=e,this._xPosition="right",this}start(e=""){return this._xOffset=e,this._xPosition="start",this}end(e=""){return this._xOffset=e,this._xPosition="end",this}width(e=""){return this._overlayRef?this._overlayRef.updateSize({width:e}):this._width=e,this}height(e=""){return this._overlayRef?this._overlayRef.updateSize({height:e}):this._height=e,this}centerHorizontally(e=""){return this.left(e),this._xPosition="center",this}centerVertically(e=""){return this.top(e),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;let e=this._overlayRef.overlayElement.style,A=this._overlayRef.hostElement.style,t=this._overlayRef.getConfig(),{width:n,height:o,maxWidth:a,maxHeight:r}=t,s=(n==="100%"||n==="100vw")&&(!a||a==="100%"||a==="100vw"),l=(o==="100%"||o==="100vh")&&(!r||r==="100%"||r==="100vh"),g=this._xPosition,C=this._xOffset,d=this._overlayRef.getConfig().direction==="rtl",B="",u="",E="";s?E="flex-start":g==="center"?(E="center",d?u=C:B=C):d?g==="left"||g==="end"?(E="flex-end",B=C):(g==="right"||g==="start")&&(E="flex-start",u=C):g==="left"||g==="start"?(E="flex-start",B=C):(g==="right"||g==="end")&&(E="flex-end",u=C),e.position=this._cssPosition,e.marginLeft=s?"0":B,e.marginTop=l?"0":this._topOffset,e.marginBottom=this._bottomOffset,e.marginRight=s?"0":u,A.justifyContent=E,A.alignItems=l?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;let e=this._overlayRef.overlayElement.style,A=this._overlayRef.hostElement,t=A.style;A.classList.remove(JU),t.justifyContent=t.alignItems=e.marginTop=e.marginBottom=e.marginLeft=e.marginRight=e.position="",this._overlayRef=null,this._isDisposed=!0}},lm=(()=>{class i{_injector=w(St);constructor(){}global(){return o2()}flexibleConnectedTo(A){return od(this._injector,A)}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),ou=new MA("OVERLAY_DEFAULT_CONFIG");function Pg(i,e){i.get(Eo).load(VU);let A=i.get(sm),t=i.get(ci),n=i.get(Dn),o=i.get(F0),a=i.get(No),r=i.get(on,null,{optional:!0})||i.get(zr).createRenderer(null,null),s=new Hg(e),l=i.get(ou,null,{optional:!0})?.usePopover??!0;s.direction=s.direction||a.value,"showPopover"in t.body?s.usePopover=e?.usePopover??l:s.usePopover=!1;let g=t.createElement("div"),C=t.createElement("div");g.id=n.getId("cdk-overlay-"),g.classList.add("cdk-overlay-pane"),C.appendChild(g),s.usePopover&&(C.setAttribute("popover","manual"),C.classList.add("cdk-overlay-popover"));let d=s.usePopover?s.positionStrategy?.getPopoverInsertionPoint?.():null;return a7(d)?d.after(C):d?.type==="parent"?d.element.appendChild(C):A.getContainerElement().appendChild(C),new CB(new iu(g,o,i),C,g,s,i.get(We),i.get(PU),t,i.get(Gc),i.get(jU),e?.disableAnimations??i.get(b1,null,{optional:!0})==="NoopAnimations",i.get(Hr),r)}var ad=(()=>{class i{scrollStrategies=w(HU);_positionBuilder=w(lm);_injector=w(St);constructor(){}create(A){return Pg(this._injector,A)}position(){return this._positionBuilder}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),naA=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],oaA=new MA("cdk-connected-overlay-scroll-strategy",{providedIn:"root",factory:()=>{let i=w(St);return()=>V0(i)}}),dB=(()=>{class i{elementRef=w(ce);constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]})}return i})(),qU=new MA("cdk-connected-overlay-default-config"),gm=(()=>{class i{_dir=w(No,{optional:!0});_injector=w(St);_overlayRef;_templatePortal;_backdropSubscription=Oo.EMPTY;_attachSubscription=Oo.EMPTY;_detachSubscription=Oo.EMPTY;_positionSubscription=Oo.EMPTY;_offsetX;_offsetY;_position;_scrollStrategyFactory=w(oaA);_ngZone=w(We);origin;positions;positionStrategy;get offsetX(){return this._offsetX}set offsetX(A){this._offsetX=A,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(A){this._offsetY=A,this._position&&this._updatePositionStrategy(this._position)}width;height;minWidth;minHeight;backdropClass;panelClass;viewportMargin=0;scrollStrategy;open=!1;disableClose=!1;transformOriginSelector;hasBackdrop=!1;lockPosition=!1;flexibleDimensions=!1;growAfterOpen=!1;push=!1;disposeOnNavigation=!1;usePopover;matchWidth=!1;set _config(A){typeof A!="string"&&this._assignConfig(A)}backdropClick=new FA;positionChange=new FA;attach=new FA;detach=new FA;overlayKeydown=new FA;overlayOutsideClick=new FA;constructor(){let A=w(wo),t=w(Jo),n=w(qU,{optional:!0}),o=w(ou,{optional:!0});this.usePopover=o?.usePopover===!1?null:"global",this._templatePortal=new jr(A,t),this.scrollStrategy=this._scrollStrategyFactory(),n&&this._assignConfig(n)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef?.dispose()}ngOnChanges(A){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef?.updateSize({width:this._getWidth(),minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),A.origin&&this.open&&this._position.apply()),A.open&&(this.open?this.attachOverlay():this.detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=naA);let A=this._overlayRef=Pg(this._injector,this._buildConfig());this._attachSubscription=A.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=A.detachments().subscribe(()=>this.detach.emit()),A.keydownEvents().subscribe(t=>{this.overlayKeydown.next(t),t.keyCode===27&&!this.disableClose&&!Sa(t)&&(t.preventDefault(),this.detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(t=>{let n=this._getOriginElement(),o=Pr(t);(!n||n!==o&&!n.contains(o))&&this.overlayOutsideClick.next(t)})}_buildConfig(){let A=this._position=this.positionStrategy||this._createPositionStrategy(),t=new Hg({direction:this._dir||"ltr",positionStrategy:A,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop,disposeOnNavigation:this.disposeOnNavigation,usePopover:!!this.usePopover});return(this.height||this.height===0)&&(t.height=this.height),(this.minWidth||this.minWidth===0)&&(t.minWidth=this.minWidth),(this.minHeight||this.minHeight===0)&&(t.minHeight=this.minHeight),this.backdropClass&&(t.backdropClass=this.backdropClass),this.panelClass&&(t.panelClass=this.panelClass),t}_updatePositionStrategy(A){let t=this.positions.map(n=>({originX:n.originX,originY:n.originY,overlayX:n.overlayX,overlayY:n.overlayY,offsetX:n.offsetX||this.offsetX,offsetY:n.offsetY||this.offsetY,panelClass:n.panelClass||void 0}));return A.setOrigin(this._getOrigin()).withPositions(t).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector).withPopoverLocation(this.usePopover===null?"global":this.usePopover)}_createPositionStrategy(){let A=od(this._injector,this._getOrigin());return this._updatePositionStrategy(A),A}_getOrigin(){return this.origin instanceof dB?this.origin.elementRef:this.origin}_getOriginElement(){return this.origin instanceof dB?this.origin.elementRef.nativeElement:this.origin instanceof ce?this.origin.nativeElement:typeof Element<"u"&&this.origin instanceof Element?this.origin:null}_getWidth(){return this.width?this.width:this.matchWidth?this._getOriginElement()?.getBoundingClientRect?.().width:void 0}attachOverlay(){this._overlayRef||this._createOverlay();let A=this._overlayRef;A.getConfig().hasBackdrop=this.hasBackdrop,A.updateSize({width:this._getWidth()}),A.hasAttached()||A.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=A.backdropClick().subscribe(t=>this.backdropClick.emit(t)):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(uN(()=>this.positionChange.observers.length>0)).subscribe(t=>{this._ngZone.run(()=>this.positionChange.emit(t)),this.positionChange.observers.length===0&&this._positionSubscription.unsubscribe()})),this.open=!0}detachOverlay(){this._overlayRef?.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.open=!1}_assignConfig(A){this.origin=A.origin??this.origin,this.positions=A.positions??this.positions,this.positionStrategy=A.positionStrategy??this.positionStrategy,this.offsetX=A.offsetX??this.offsetX,this.offsetY=A.offsetY??this.offsetY,this.width=A.width??this.width,this.height=A.height??this.height,this.minWidth=A.minWidth??this.minWidth,this.minHeight=A.minHeight??this.minHeight,this.backdropClass=A.backdropClass??this.backdropClass,this.panelClass=A.panelClass??this.panelClass,this.viewportMargin=A.viewportMargin??this.viewportMargin,this.scrollStrategy=A.scrollStrategy??this.scrollStrategy,this.disableClose=A.disableClose??this.disableClose,this.transformOriginSelector=A.transformOriginSelector??this.transformOriginSelector,this.hasBackdrop=A.hasBackdrop??this.hasBackdrop,this.lockPosition=A.lockPosition??this.lockPosition,this.flexibleDimensions=A.flexibleDimensions??this.flexibleDimensions,this.growAfterOpen=A.growAfterOpen??this.growAfterOpen,this.push=A.push??this.push,this.disposeOnNavigation=A.disposeOnNavigation??this.disposeOnNavigation,this.usePopover=A.usePopover??this.usePopover,this.matchWidth=A.matchWidth??this.matchWidth}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:[0,"cdkConnectedOverlayOrigin","origin"],positions:[0,"cdkConnectedOverlayPositions","positions"],positionStrategy:[0,"cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:[0,"cdkConnectedOverlayOffsetX","offsetX"],offsetY:[0,"cdkConnectedOverlayOffsetY","offsetY"],width:[0,"cdkConnectedOverlayWidth","width"],height:[0,"cdkConnectedOverlayHeight","height"],minWidth:[0,"cdkConnectedOverlayMinWidth","minWidth"],minHeight:[0,"cdkConnectedOverlayMinHeight","minHeight"],backdropClass:[0,"cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:[0,"cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:[0,"cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:[0,"cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:[0,"cdkConnectedOverlayOpen","open"],disableClose:[0,"cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:[0,"cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:[2,"cdkConnectedOverlayHasBackdrop","hasBackdrop",Qe],lockPosition:[2,"cdkConnectedOverlayLockPosition","lockPosition",Qe],flexibleDimensions:[2,"cdkConnectedOverlayFlexibleDimensions","flexibleDimensions",Qe],growAfterOpen:[2,"cdkConnectedOverlayGrowAfterOpen","growAfterOpen",Qe],push:[2,"cdkConnectedOverlayPush","push",Qe],disposeOnNavigation:[2,"cdkConnectedOverlayDisposeOnNavigation","disposeOnNavigation",Qe],usePopover:[0,"cdkConnectedOverlayUsePopover","usePopover"],matchWidth:[2,"cdkConnectedOverlayMatchWidth","matchWidth",Qe],_config:[0,"cdkConnectedOverlay","_config"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[ii]})}return i})(),eg=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({providers:[ad],imports:[Di,Wc,em,em]})}return i})();function aaA(i,e){}var a2=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;positionStrategy;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;scrollStrategy;closeOnNavigation=!0;closeOnDestroy=!0;closeOnOverlayDetachments=!0;disableAnimations=!1;providers;container;templateContext};var s7=(()=>{class i extends n2{_elementRef=w(ce);_focusTrapFactory=w(BQ);_config;_interactivityChecker=w(UI);_ngZone=w(We);_focusMonitor=w(rr);_renderer=w(on);_changeDetectorRef=w(Mt);_injector=w(St);_platform=w(Qi);_document=w(ci);_portalOutlet;_focusTrapped=new ne;_focusTrap=null;_elementFocusedBeforeDialogWasOpened=null;_closeInteractionType=null;_ariaLabelledByQueue=[];_isDestroyed=!1;constructor(){super(),this._config=w(a2,{optional:!0})||new a2,this._config.ariaLabelledBy&&this._ariaLabelledByQueue.push(this._config.ariaLabelledBy)}_addAriaLabelledBy(A){this._ariaLabelledByQueue.push(A),this._changeDetectorRef.markForCheck()}_removeAriaLabelledBy(A){let t=this._ariaLabelledByQueue.indexOf(A);t>-1&&(this._ariaLabelledByQueue.splice(t,1),this._changeDetectorRef.markForCheck())}_contentAttached(){this._initializeFocusTrap(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._focusTrapped.complete(),this._isDestroyed=!0,this._restoreFocus()}attachComponentPortal(A){this._portalOutlet.hasAttached();let t=this._portalOutlet.attachComponentPortal(A);return this._contentAttached(),t}attachTemplatePortal(A){this._portalOutlet.hasAttached();let t=this._portalOutlet.attachTemplatePortal(A);return this._contentAttached(),t}attachDomPortal=A=>{this._portalOutlet.hasAttached();let t=this._portalOutlet.attachDomPortal(A);return this._contentAttached(),t};_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(A,t){this._interactivityChecker.isFocusable(A)||(A.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let n=()=>{o(),a(),A.removeAttribute("tabindex")},o=this._renderer.listen(A,"blur",n),a=this._renderer.listen(A,"mousedown",n)})),A.focus(t)}_focusByCssSelector(A,t){let n=this._elementRef.nativeElement.querySelector(A);n&&this._forceFocus(n,t)}_trapFocus(A){this._isDestroyed||ao(()=>{let t=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||t.focus(A);break;case!0:case"first-tabbable":this._focusTrap?.focusInitialElement(A)||this._focusDialogContainer(A);break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]',A);break;default:this._focusByCssSelector(this._config.autoFocus,A);break}this._focusTrapped.next()},{injector:this._injector})}_restoreFocus(){let A=this._config.restoreFocus,t=null;if(typeof A=="string"?t=this._document.querySelector(A):typeof A=="boolean"?t=A?this._elementFocusedBeforeDialogWasOpened:null:A&&(t=A),this._config.restoreFocus&&t&&typeof t.focus=="function"){let n=cQ(),o=this._elementRef.nativeElement;(!n||n===this._document.body||n===o||o.contains(n))&&(this._focusMonitor?(this._focusMonitor.focusVia(t,this._closeInteractionType),this._closeInteractionType=null):t.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(A){this._elementRef.nativeElement.focus?.(A)}_containsFocus(){let A=this._elementRef.nativeElement,t=cQ();return A===t||A.contains(t)}_initializeFocusTrap(){this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=cQ()))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["cdk-dialog-container"]],viewQuery:function(t,n){if(t&1&&Wt(Ag,7),t&2){let o;se(o=le())&&(n._portalOutlet=o.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(t,n){t&2&&ie("id",n._config.id||null)("role",n._config.role)("aria-modal",n._config.ariaModal)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null)},features:[bt],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,n){t&1&&kt(0,aaA,0,0,"ng-template",0)},dependencies:[Ag],styles:[`.cdk-dialog-container{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit} -`],encapsulation:2})}return i})(),au=class{overlayRef;config;componentInstance=null;componentRef=null;containerInstance;disableClose;closed=new ne;backdropClick;keydownEvents;outsidePointerEvents;id;_detachSubscription;constructor(e,A){this.overlayRef=e,this.config=A,this.disableClose=A.disableClose,this.backdropClick=e.backdropClick(),this.keydownEvents=e.keydownEvents(),this.outsidePointerEvents=e.outsidePointerEvents(),this.id=A.id,this.keydownEvents.subscribe(t=>{t.keyCode===27&&!this.disableClose&&!Sa(t)&&(t.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{!this.disableClose&&this._canClose()?this.close(void 0,{focusOrigin:"mouse"}):this.containerInstance._recaptureFocus?.()}),this._detachSubscription=e.detachments().subscribe(()=>{A.closeOnOverlayDetachments!==!1&&this.close()})}close(e,A){if(this._canClose(e)){let t=this.closed;this.containerInstance._closeInteractionType=A?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),t.next(e),t.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(e="",A=""){return this.overlayRef.updateSize({width:e,height:A}),this}addPanelClass(e){return this.overlayRef.addPanelClass(e),this}removePanelClass(e){return this.overlayRef.removePanelClass(e),this}_canClose(e){let A=this.config;return!!this.containerInstance&&(!A.closePredicate||A.closePredicate(e,A,this.componentInstance))}},raA=new MA("DialogScrollStrategy",{providedIn:"root",factory:()=>{let i=w(St);return()=>IB(i)}}),saA=new MA("DialogData"),laA=new MA("DefaultDialogConfig");function gaA(i){let e=mA(i),A=new FA;return{valueSignal:e,get value(){return e()},change:A,ngOnDestroy(){A.complete()}}}var l7=(()=>{class i{_injector=w(St);_defaultOptions=w(laA,{optional:!0});_parentDialog=w(i,{optional:!0,skipSelf:!0});_overlayContainer=w(sm);_idGenerator=w(Dn);_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new ne;_afterOpenedAtThisLevel=new ne;_ariaHiddenElements=new Map;_scrollStrategy=w(raA);get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}afterAllClosed=Rc(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Yn(void 0)));constructor(){}open(A,t){let n=this._defaultOptions||new a2;t=P(P({},n),t),t.id=t.id||this._idGenerator.getId("cdk-dialog-"),t.id&&this.getDialogById(t.id);let o=this._getOverlayConfig(t),a=Pg(this._injector,o),r=new au(a,t),s=this._attachContainer(a,r,t);if(r.containerInstance=s,!this.openDialogs.length){let l=this._overlayContainer.getContainerElement();s._focusTrapped?s._focusTrapped.pipe(Ro(1)).subscribe(()=>{this._hideNonDialogContentFromAssistiveTechnology(l)}):this._hideNonDialogContentFromAssistiveTechnology(l)}return this._attachDialogContent(A,r,s,t),this.openDialogs.push(r),r.closed.subscribe(()=>this._removeOpenDialog(r,!0)),this.afterOpened.next(r),r}closeAll(){r7(this.openDialogs,A=>A.close())}getDialogById(A){return this.openDialogs.find(t=>t.id===A)}ngOnDestroy(){r7(this._openDialogsAtThisLevel,A=>{A.config.closeOnDestroy===!1&&this._removeOpenDialog(A,!1)}),r7(this._openDialogsAtThisLevel,A=>A.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(A){let t=new Hg({positionStrategy:A.positionStrategy||o2().centerHorizontally().centerVertically(),scrollStrategy:A.scrollStrategy||this._scrollStrategy(),panelClass:A.panelClass,hasBackdrop:A.hasBackdrop,direction:A.direction,minWidth:A.minWidth,minHeight:A.minHeight,maxWidth:A.maxWidth,maxHeight:A.maxHeight,width:A.width,height:A.height,disposeOnNavigation:A.closeOnNavigation,disableAnimations:A.disableAnimations});return A.backdropClass&&(t.backdropClass=A.backdropClass),t}_attachContainer(A,t,n){let o=n.injector||n.viewContainerRef?.injector,a=[{provide:a2,useValue:n},{provide:au,useValue:t},{provide:CB,useValue:A}],r;n.container?typeof n.container=="function"?r=n.container:(r=n.container.type,a.push(...n.container.providers(n))):r=s7;let s=new Fs(r,n.viewContainerRef,St.create({parent:o||this._injector,providers:a}));return A.attach(s).instance}_attachDialogContent(A,t,n,o){if(A instanceof wo){let a=this._createInjector(o,t,n,void 0),r={$implicit:o.data,dialogRef:t};o.templateContext&&(r=P(P({},r),typeof o.templateContext=="function"?o.templateContext():o.templateContext)),n.attachTemplatePortal(new jr(A,null,r,a))}else{let a=this._createInjector(o,t,n,this._injector),r=n.attachComponentPortal(new Fs(A,o.viewContainerRef,a));t.componentRef=r,t.componentInstance=r.instance}}_createInjector(A,t,n,o){let a=A.injector||A.viewContainerRef?.injector,r=[{provide:saA,useValue:A.data},{provide:au,useValue:t}];return A.providers&&(typeof A.providers=="function"?r.push(...A.providers(t,A,n)):r.push(...A.providers)),A.direction&&(!a||!a.get(No,null,{optional:!0}))&&r.push({provide:No,useValue:gaA(A.direction)}),St.create({parent:a||o,providers:r})}_removeOpenDialog(A,t){let n=this.openDialogs.indexOf(A);n>-1&&(this.openDialogs.splice(n,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((o,a)=>{o?a.setAttribute("aria-hidden",o):a.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),t&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(A){if(A.parentElement){let t=A.parentElement.children;for(let n=t.length-1;n>-1;n--){let o=t[n];o!==A&&o.nodeName!=="SCRIPT"&&o.nodeName!=="STYLE"&&!o.hasAttribute("aria-live")&&!o.hasAttribute("popover")&&(this._ariaHiddenElements.set(o,o.getAttribute("aria-hidden")),o.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){let A=this._parentDialog;return A?A._getAfterAllClosed():this._afterAllClosedAtThisLevel}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();function r7(i,e){let A=i.length;for(;A--;)e(i[A])}var WU=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({providers:[l7],imports:[eg,Wc,EQ,Wc]})}return i})();function caA(i,e){}var Cm=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;position;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;delayFocusTrap=!0;scrollStrategy;closeOnNavigation=!0;enterAnimationDuration;exitAnimationDuration},g7="mdc-dialog--open",ZU="mdc-dialog--opening",XU="mdc-dialog--closing",CaA=150,daA=75,IaA=(()=>{class i extends s7{_animationStateChanged=new FA;_animationsEnabled=!In();_actionSectionCount=0;_hostElement=this._elementRef.nativeElement;_enterAnimationDuration=this._animationsEnabled?AT(this._config.enterAnimationDuration)??CaA:0;_exitAnimationDuration=this._animationsEnabled?AT(this._config.exitAnimationDuration)??daA:0;_animationTimer=null;_contentAttached(){super._contentAttached(),this._startOpenAnimation()}_startOpenAnimation(){this._animationStateChanged.emit({state:"opening",totalTime:this._enterAnimationDuration}),this._animationsEnabled?(this._hostElement.style.setProperty($U,`${this._enterAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(ZU,g7)),this._waitForAnimationToComplete(this._enterAnimationDuration,this._finishDialogOpen)):(this._hostElement.classList.add(g7),Promise.resolve().then(()=>this._finishDialogOpen()))}_startExitAnimation(){this._animationStateChanged.emit({state:"closing",totalTime:this._exitAnimationDuration}),this._hostElement.classList.remove(g7),this._animationsEnabled?(this._hostElement.style.setProperty($U,`${this._exitAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(XU)),this._waitForAnimationToComplete(this._exitAnimationDuration,this._finishDialogClose)):Promise.resolve().then(()=>this._finishDialogClose())}_updateActionSectionCount(A){this._actionSectionCount+=A,this._changeDetectorRef.markForCheck()}_finishDialogOpen=()=>{this._clearAnimationClasses(),this._openAnimationDone(this._enterAnimationDuration)};_finishDialogClose=()=>{this._clearAnimationClasses(),this._animationStateChanged.emit({state:"closed",totalTime:this._exitAnimationDuration})};_clearAnimationClasses(){this._hostElement.classList.remove(ZU,XU)}_waitForAnimationToComplete(A,t){this._animationTimer!==null&&clearTimeout(this._animationTimer),this._animationTimer=setTimeout(t,A)}_requestAnimationFrame(A){this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(A):A()})}_captureInitialFocus(){this._config.delayFocusTrap||this._trapFocus()}_openAnimationDone(A){this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:A})}ngOnDestroy(){super.ngOnDestroy(),this._animationTimer!==null&&clearTimeout(this._animationTimer)}attachComponentPortal(A){let t=super.attachComponentPortal(A);return t.location.nativeElement.classList.add("mat-mdc-dialog-component-host"),t}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275cmp=vA({type:i,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1",1,"mat-mdc-dialog-container","mdc-dialog"],hostVars:10,hostBindings:function(t,n){t&2&&(Ma("id",n._config.id),ie("aria-modal",n._config.ariaModal)("role",n._config.role)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null),_A("_mat-animation-noopable",!n._animationsEnabled)("mat-mdc-dialog-container-with-actions",n._actionSectionCount>0))},features:[bt],decls:3,vars:0,consts:[[1,"mat-mdc-dialog-inner-container","mdc-dialog__container"],[1,"mat-mdc-dialog-surface","mdc-dialog__surface"],["cdkPortalOutlet",""]],template:function(t,n){t&1&&(I(0,"div",0)(1,"div",1),kt(2,caA,0,0,"ng-template",2),h()())},dependencies:[Ag],styles:[`.mat-mdc-dialog-container{width:100%;height:100%;display:block;box-sizing:border-box;max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;outline:0}.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-max-width, 560px);min-width:var(--mat-dialog-container-min-width, 280px)}@media(max-width: 599px){.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-small-max-width, calc(100vw - 32px))}}.mat-mdc-dialog-inner-container{display:flex;flex-direction:row;align-items:center;justify-content:space-around;box-sizing:border-box;height:100%;opacity:0;transition:opacity linear var(--mat-dialog-transition-duration, 0ms);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit}.mdc-dialog--closing .mat-mdc-dialog-inner-container{transition:opacity 75ms linear;transform:none}.mdc-dialog--open .mat-mdc-dialog-inner-container{opacity:1}._mat-animation-noopable .mat-mdc-dialog-inner-container{transition:none}.mat-mdc-dialog-surface{display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;box-sizing:border-box;width:100%;height:100%;position:relative;overflow-y:auto;outline:0;transform:scale(0.8);transition:transform var(--mat-dialog-transition-duration, 0ms) cubic-bezier(0, 0, 0.2, 1);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;box-shadow:var(--mat-dialog-container-elevation-shadow, none);border-radius:var(--mat-dialog-container-shape, var(--mat-sys-corner-extra-large, 4px));background-color:var(--mat-dialog-container-color, var(--mat-sys-surface, white))}[dir=rtl] .mat-mdc-dialog-surface{text-align:right}.mdc-dialog--open .mat-mdc-dialog-surface,.mdc-dialog--closing .mat-mdc-dialog-surface{transform:none}._mat-animation-noopable .mat-mdc-dialog-surface{transition:none}.mat-mdc-dialog-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:2px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mat-mdc-dialog-title{display:block;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:var(--mat-dialog-headline-padding, 6px 24px 13px)}.mat-mdc-dialog-title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}[dir=rtl] .mat-mdc-dialog-title{text-align:right}.mat-mdc-dialog-container .mat-mdc-dialog-title{color:var(--mat-dialog-subhead-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-dialog-subhead-font, var(--mat-sys-headline-small-font, inherit));line-height:var(--mat-dialog-subhead-line-height, var(--mat-sys-headline-small-line-height, 1.5rem));font-size:var(--mat-dialog-subhead-size, var(--mat-sys-headline-small-size, 1rem));font-weight:var(--mat-dialog-subhead-weight, var(--mat-sys-headline-small-weight, 400));letter-spacing:var(--mat-dialog-subhead-tracking, var(--mat-sys-headline-small-tracking, 0.03125em))}.mat-mdc-dialog-content{display:block;flex-grow:1;box-sizing:border-box;margin:0;overflow:auto;max-height:65vh}.mat-mdc-dialog-content>:first-child{margin-top:0}.mat-mdc-dialog-content>:last-child{margin-bottom:0}.mat-mdc-dialog-container .mat-mdc-dialog-content{color:var(--mat-dialog-supporting-text-color, var(--mat-sys-on-surface-variant, rgba(0, 0, 0, 0.6)));font-family:var(--mat-dialog-supporting-text-font, var(--mat-sys-body-medium-font, inherit));line-height:var(--mat-dialog-supporting-text-line-height, var(--mat-sys-body-medium-line-height, 1.5rem));font-size:var(--mat-dialog-supporting-text-size, var(--mat-sys-body-medium-size, 1rem));font-weight:var(--mat-dialog-supporting-text-weight, var(--mat-sys-body-medium-weight, 400));letter-spacing:var(--mat-dialog-supporting-text-tracking, var(--mat-sys-body-medium-tracking, 0.03125em))}.mat-mdc-dialog-container .mat-mdc-dialog-content{padding:var(--mat-dialog-content-padding, 20px 24px)}.mat-mdc-dialog-container-with-actions .mat-mdc-dialog-content{padding:var(--mat-dialog-with-actions-content-padding, 20px 24px 0)}.mat-mdc-dialog-container .mat-mdc-dialog-title+.mat-mdc-dialog-content{padding-top:0}.mat-mdc-dialog-actions{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;box-sizing:border-box;min-height:52px;margin:0;border-top:1px solid rgba(0,0,0,0);padding:var(--mat-dialog-actions-padding, 16px 24px);justify-content:var(--mat-dialog-actions-alignment, flex-end)}@media(forced-colors: active){.mat-mdc-dialog-actions{border-top-color:CanvasText}}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-start,.mat-mdc-dialog-actions[align=start]{justify-content:start}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-center,.mat-mdc-dialog-actions[align=center]{justify-content:center}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-end,.mat-mdc-dialog-actions[align=end]{justify-content:flex-end}.mat-mdc-dialog-actions .mat-button-base+.mat-button-base,.mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-mdc-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}.mat-mdc-dialog-component-host{display:contents} -`],encapsulation:2})}return i})(),$U="--mat-dialog-transition-duration";function AT(i){return i==null?null:typeof i=="number"?i:i.endsWith("ms")?qs(i.substring(0,i.length-2)):i.endsWith("s")?qs(i.substring(0,i.length-1))*1e3:i==="0"?0:null}var cm=(function(i){return i[i.OPEN=0]="OPEN",i[i.CLOSING=1]="CLOSING",i[i.CLOSED=2]="CLOSED",i})(cm||{}),zn=class{_ref;_config;_containerInstance;componentInstance;componentRef=null;disableClose;id;_afterOpened=new _g(1);_beforeClosed=new _g(1);_result;_closeFallbackTimeout;_state=cm.OPEN;_closeInteractionType;constructor(e,A,t){this._ref=e,this._config=A,this._containerInstance=t,this.disableClose=A.disableClose,this.id=e.id,e.addPanelClass("mat-mdc-dialog-panel"),t._animationStateChanged.pipe(Bt(n=>n.state==="opened"),Ro(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),t._animationStateChanged.pipe(Bt(n=>n.state==="closed"),Ro(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),e.overlayRef.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._finishDialogClose()}),Vi(this.backdropClick(),this.keydownEvents().pipe(Bt(n=>n.keyCode===27&&!this.disableClose&&!Sa(n)))).subscribe(n=>{this.disableClose||(n.preventDefault(),eT(this,n.type==="keydown"?"keyboard":"mouse"))})}close(e){let A=this._config.closePredicate;A&&!A(e,this._config,this.componentInstance)||(this._result=e,this._containerInstance._animationStateChanged.pipe(Bt(t=>t.state==="closing"),Ro(1)).subscribe(t=>{this._beforeClosed.next(e),this._beforeClosed.complete(),this._ref.overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),t.totalTime+100)}),this._state=cm.CLOSING,this._containerInstance._startExitAnimation())}afterOpened(){return this._afterOpened}afterClosed(){return this._ref.closed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}updatePosition(e){let A=this._ref.config.positionStrategy;return e&&(e.left||e.right)?e.left?A.left(e.left):A.right(e.right):A.centerHorizontally(),e&&(e.top||e.bottom)?e.top?A.top(e.top):A.bottom(e.bottom):A.centerVertically(),this._ref.updatePosition(),this}updateSize(e="",A=""){return this._ref.updateSize(e,A),this}addPanelClass(e){return this._ref.addPanelClass(e),this}removePanelClass(e){return this._ref.removePanelClass(e),this}getState(){return this._state}_finishDialogClose(){this._state=cm.CLOSED,this._ref.close(this._result,{focusOrigin:this._closeInteractionType}),this.componentInstance=null}};function eT(i,e,A){return i._closeInteractionType=e,i.close(A)}var Do=new MA("MatMdcDialogData"),BaA=new MA("mat-mdc-dialog-default-options"),haA=new MA("mat-mdc-dialog-scroll-strategy",{providedIn:"root",factory:()=>{let i=w(St);return()=>IB(i)}}),Xa=(()=>{class i{_defaultOptions=w(BaA,{optional:!0});_scrollStrategy=w(haA);_parentDialog=w(i,{optional:!0,skipSelf:!0});_idGenerator=w(Dn);_injector=w(St);_dialog=w(l7);_animationsDisabled=In();_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new ne;_afterOpenedAtThisLevel=new ne;dialogConfigClass=Cm;_dialogRefConstructor;_dialogContainerType;_dialogDataToken;get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){let A=this._parentDialog;return A?A._getAfterAllClosed():this._afterAllClosedAtThisLevel}afterAllClosed=Rc(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Yn(void 0)));constructor(){this._dialogRefConstructor=zn,this._dialogContainerType=IaA,this._dialogDataToken=Do}open(A,t){let n;t=P(P({},this._defaultOptions||new Cm),t),t.id=t.id||this._idGenerator.getId("mat-mdc-dialog-"),t.scrollStrategy=t.scrollStrategy||this._scrollStrategy();let o=this._dialog.open(A,$A(P({},t),{positionStrategy:o2(this._injector).centerHorizontally().centerVertically(),disableClose:!0,closePredicate:void 0,closeOnDestroy:!1,closeOnOverlayDetachments:!1,disableAnimations:this._animationsDisabled||t.enterAnimationDuration?.toLocaleString()==="0"||t.exitAnimationDuration?.toString()==="0",container:{type:this._dialogContainerType,providers:()=>[{provide:this.dialogConfigClass,useValue:t},{provide:a2,useValue:t}]},templateContext:()=>({dialogRef:n}),providers:(a,r,s)=>(n=new this._dialogRefConstructor(a,t,s),n.updatePosition(t?.position),[{provide:this._dialogContainerType,useValue:s},{provide:this._dialogDataToken,useValue:r.data},{provide:this._dialogRefConstructor,useValue:n}])}));return n.componentRef=o.componentRef,n.componentInstance=o.componentInstance,this.openDialogs.push(n),this.afterOpened.next(n),n.afterClosed().subscribe(()=>{let a=this.openDialogs.indexOf(n);a>-1&&(this.openDialogs.splice(a,1),this.openDialogs.length||this._getAfterAllClosed().next())}),n}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(A){return this.openDialogs.find(t=>t.id===A)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_closeDialogs(A){let t=A.length;for(;t--;)A[t].close()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),r2=(()=>{class i{dialogRef=w(zn,{optional:!0});_elementRef=w(ce);_dialog=w(Xa);ariaLabel;type="button";dialogResult;_matDialogClose;constructor(){}ngOnInit(){this.dialogRef||(this.dialogRef=iT(this._elementRef,this._dialog.openDialogs))}ngOnChanges(A){let t=A._matDialogClose||A._matDialogCloseResult;t&&(this.dialogResult=t.currentValue)}_onButtonClick(A){eT(this.dialogRef,A.screenX===0&&A.screenY===0?"keyboard":"mouse",this.dialogResult)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(t,n){t&1&&U("click",function(a){return n._onButtonClick(a)}),t&2&&ie("aria-label",n.ariaLabel||null)("type",n.type)},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],type:"type",dialogResult:[0,"mat-dialog-close","dialogResult"],_matDialogClose:[0,"matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],features:[ii]})}return i})(),tT=(()=>{class i{_dialogRef=w(zn,{optional:!0});_elementRef=w(ce);_dialog=w(Xa);constructor(){}ngOnInit(){this._dialogRef||(this._dialogRef=iT(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{this._onAdd()})}ngOnDestroy(){this._dialogRef?._containerInstance&&Promise.resolve().then(()=>{this._onRemove()})}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i})}return i})(),Xo=(()=>{class i extends tT{id=w(Dn).getId("mat-mdc-dialog-title-");_onAdd(){this._dialogRef._containerInstance?._addAriaLabelledBy?.(this.id)}_onRemove(){this._dialogRef?._containerInstance?._removeAriaLabelledBy?.(this.id)}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-mdc-dialog-title","mdc-dialog__title"],hostVars:1,hostBindings:function(t,n){t&2&&Ma("id",n.id)},inputs:{id:"id"},exportAs:["matDialogTitle"],features:[bt]})}return i})(),Ba=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-mdc-dialog-content","mdc-dialog__content"],features:[r3([j0])]})}return i})(),ha=(()=>{class i extends tT{align;_onAdd(){this._dialogRef._containerInstance?._updateActionSectionCount?.(1)}_onRemove(){this._dialogRef._containerInstance?._updateActionSectionCount?.(-1)}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-mdc-dialog-actions","mdc-dialog__actions"],hostVars:6,hostBindings:function(t,n){t&2&&_A("mat-mdc-dialog-actions-align-start",n.align==="start")("mat-mdc-dialog-actions-align-center",n.align==="center")("mat-mdc-dialog-actions-align-end",n.align==="end")},inputs:{align:"align"},features:[bt]})}return i})();function iT(i,e){let A=i.nativeElement.parentElement;for(;A&&!A.classList.contains("mat-mdc-dialog-container");)A=A.parentElement;return A?e.find(t=>t.id===A.id):null}var Ls=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({providers:[Xa],imports:[WU,eg,Wc,Di]})}return i})();function nT(i){return Error(`Unable to find icon with the name "${i}"`)}function EaA(){return Error("Could not find HttpClient for use with Angular Material icons. Please add provideHttpClient() to your providers.")}function oT(i){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${i}".`)}function aT(i){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${i}".`)}var q0=class{url;svgText;options;svgElement=null;constructor(e,A,t){this.url=e,this.svgText=A,this.options=t}},sT=(()=>{class i{_httpClient;_sanitizer;_errorHandler;_document;_svgIconConfigs=new Map;_iconSetConfigs=new Map;_cachedIconsByUrl=new Map;_inProgressUrlFetches=new Map;_fontCssClassesByAlias=new Map;_resolvers=[];_defaultFontSetClass=["material-icons","mat-ligature-font"];constructor(A,t,n,o){this._httpClient=A,this._sanitizer=t,this._errorHandler=o,this._document=n}addSvgIcon(A,t,n){return this.addSvgIconInNamespace("",A,t,n)}addSvgIconLiteral(A,t,n){return this.addSvgIconLiteralInNamespace("",A,t,n)}addSvgIconInNamespace(A,t,n,o){return this._addSvgIconConfig(A,t,new q0(n,null,o))}addSvgIconResolver(A){return this._resolvers.push(A),this}addSvgIconLiteralInNamespace(A,t,n,o){let a=this._sanitizer.sanitize(Ng.HTML,n);if(!a)throw aT(n);let r=F1(a);return this._addSvgIconConfig(A,t,new q0("",r,o))}addSvgIconSet(A,t){return this.addSvgIconSetInNamespace("",A,t)}addSvgIconSetLiteral(A,t){return this.addSvgIconSetLiteralInNamespace("",A,t)}addSvgIconSetInNamespace(A,t,n){return this._addSvgIconSetConfig(A,new q0(t,null,n))}addSvgIconSetLiteralInNamespace(A,t,n){let o=this._sanitizer.sanitize(Ng.HTML,t);if(!o)throw aT(t);let a=F1(o);return this._addSvgIconSetConfig(A,new q0("",a,n))}registerFontClassAlias(A,t=A){return this._fontCssClassesByAlias.set(A,t),this}classNameForFontAlias(A){return this._fontCssClassesByAlias.get(A)||A}setDefaultFontSetClass(...A){return this._defaultFontSetClass=A,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(A){let t=this._sanitizer.sanitize(Ng.RESOURCE_URL,A);if(!t)throw oT(A);let n=this._cachedIconsByUrl.get(t);return n?oe(dm(n)):this._loadSvgIconFromConfig(new q0(A,null)).pipe(mi(o=>this._cachedIconsByUrl.set(t,o)),Se(o=>dm(o)))}getNamedSvgIcon(A,t=""){let n=rT(t,A),o=this._svgIconConfigs.get(n);if(o)return this._getSvgFromConfig(o);if(o=this._getIconConfigFromResolvers(t,A),o)return this._svgIconConfigs.set(n,o),this._getSvgFromConfig(o);let a=this._iconSetConfigs.get(t);return a?this._getSvgFromIconSetConfigs(A,a):Wp(nT(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(A){return A.svgText?oe(dm(this._svgElementFromConfig(A))):this._loadSvgIconFromConfig(A).pipe(Se(t=>dm(t)))}_getSvgFromIconSetConfigs(A,t){let n=this._extractIconWithNameFromAnySet(A,t);if(n)return oe(n);let o=t.filter(a=>!a.svgText).map(a=>this._loadSvgIconSetFromConfig(a).pipe(aa(r=>{let l=`Loading icon set URL: ${this._sanitizer.sanitize(Ng.RESOURCE_URL,a.url)} failed: ${r.message}`;return this._errorHandler.handleError(new Error(l)),oe(null)})));return JC(o).pipe(Se(()=>{let a=this._extractIconWithNameFromAnySet(A,t);if(!a)throw nT(A);return a}))}_extractIconWithNameFromAnySet(A,t){for(let n=t.length-1;n>=0;n--){let o=t[n];if(o.svgText&&o.svgText.toString().indexOf(A)>-1){let a=this._svgElementFromConfig(o),r=this._extractSvgIconFromSet(a,A,o.options);if(r)return r}}return null}_loadSvgIconFromConfig(A){return this._fetchIcon(A).pipe(mi(t=>A.svgText=t),Se(()=>this._svgElementFromConfig(A)))}_loadSvgIconSetFromConfig(A){return A.svgText?oe(null):this._fetchIcon(A).pipe(mi(t=>A.svgText=t))}_extractSvgIconFromSet(A,t,n){let o=A.querySelector(`[id="${t}"]`);if(!o)return null;let a=o.cloneNode(!0);if(a.removeAttribute("id"),a.nodeName.toLowerCase()==="svg")return this._setSvgAttributes(a,n);if(a.nodeName.toLowerCase()==="symbol")return this._setSvgAttributes(this._toSvgElement(a),n);let r=this._svgElementFromString(F1(""));return r.appendChild(a),this._setSvgAttributes(r,n)}_svgElementFromString(A){let t=this._document.createElement("DIV");t.innerHTML=A;let n=t.querySelector("svg");if(!n)throw Error(" tag not found");return n}_toSvgElement(A){let t=this._svgElementFromString(F1("")),n=A.attributes;for(let o=0;oF1(l)),A3(()=>this._inProgressUrlFetches.delete(a)),HC());return this._inProgressUrlFetches.set(a,s),s}_addSvgIconConfig(A,t,n){return this._svgIconConfigs.set(rT(A,t),n),this}_addSvgIconSetConfig(A,t){let n=this._iconSetConfigs.get(A);return n?n.push(t):this._iconSetConfigs.set(A,[t]),this}_svgElementFromConfig(A){if(!A.svgElement){let t=this._svgElementFromString(A.svgText);this._setSvgAttributes(t,A.options),A.svgElement=t}return A.svgElement}_getIconConfigFromResolvers(A,t){for(let n=0;n{let i=w(ci),e=i?i.location:null;return{getPathname:()=>e?e.pathname+e.search:""}}}),lT=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],maA=lT.map(i=>`[${i}]`).join(", "),waA=/^url\(['"]?#(.*?)['"]?\)$/,zt=(()=>{class i{_elementRef=w(ce);_iconRegistry=w(sT);_location=w(faA);_errorHandler=w(e3);_defaultColor;get color(){return this._color||this._defaultColor}set color(A){this._color=A}_color;inline=!1;get svgIcon(){return this._svgIcon}set svgIcon(A){A!==this._svgIcon&&(A?this._updateSvgIcon(A):this._svgIcon&&this._clearSvgElement(),this._svgIcon=A)}_svgIcon;get fontSet(){return this._fontSet}set fontSet(A){let t=this._cleanupFontValue(A);t!==this._fontSet&&(this._fontSet=t,this._updateFontIconClasses())}_fontSet;get fontIcon(){return this._fontIcon}set fontIcon(A){let t=this._cleanupFontValue(A);t!==this._fontIcon&&(this._fontIcon=t,this._updateFontIconClasses())}_fontIcon;_previousFontSetClass=[];_previousFontIconClass;_svgName=null;_svgNamespace=null;_previousPath;_elementsWithExternalReferences;_currentIconFetch=Oo.EMPTY;constructor(){let A=w(new Ys("aria-hidden"),{optional:!0}),t=w(paA,{optional:!0});t&&(t.color&&(this.color=this._defaultColor=t.color),t.fontSet&&(this.fontSet=t.fontSet)),A||this._elementRef.nativeElement.setAttribute("aria-hidden","true")}_splitIconName(A){if(!A)return["",""];let t=A.split(":");switch(t.length){case 1:return["",t[0]];case 2:return t;default:throw Error(`Invalid icon name: "${A}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){let A=this._elementsWithExternalReferences;if(A&&A.size){let t=this._location.getPathname();t!==this._previousPath&&(this._previousPath=t,this._prependPathToReferences(t))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(A){this._clearSvgElement();let t=this._location.getPathname();this._previousPath=t,this._cacheChildrenWithExternalReferences(A),this._prependPathToReferences(t),this._elementRef.nativeElement.appendChild(A)}_clearSvgElement(){let A=this._elementRef.nativeElement,t=A.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();t--;){let n=A.childNodes[t];(n.nodeType!==1||n.nodeName.toLowerCase()==="svg")&&n.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;let A=this._elementRef.nativeElement,t=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(n=>n.length>0);this._previousFontSetClass.forEach(n=>A.classList.remove(n)),t.forEach(n=>A.classList.add(n)),this._previousFontSetClass=t,this.fontIcon!==this._previousFontIconClass&&!t.includes("mat-ligature-font")&&(this._previousFontIconClass&&A.classList.remove(this._previousFontIconClass),this.fontIcon&&A.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(A){return typeof A=="string"?A.trim().split(" ")[0]:A}_prependPathToReferences(A){let t=this._elementsWithExternalReferences;t&&t.forEach((n,o)=>{n.forEach(a=>{o.setAttribute(a.name,`url('${A}#${a.value}')`)})})}_cacheChildrenWithExternalReferences(A){let t=A.querySelectorAll(maA),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let o=0;o{let r=t[o],s=r.getAttribute(a),l=s?s.match(waA):null;if(l){let g=n.get(r);g||(g=[],n.set(r,g)),g.push({name:a,value:l[1]})}})}_updateSvgIcon(A){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),A){let[t,n]=this._splitIconName(A);t&&(this._svgNamespace=t),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,t).pipe(Ro(1)).subscribe(o=>this._setSvgElement(o),o=>{let a=`Error retrieving icon ${t}:${n}! ${o.message}`;this._errorHandler.handleError(new Error(a))})}}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:10,hostBindings:function(t,n){t&2&&(ie("data-mat-icon-type",n._usingFontIcon()?"font":"svg")("data-mat-icon-name",n._svgName||n.fontIcon)("data-mat-icon-namespace",n._svgNamespace||n.fontSet)("fontIcon",n._usingFontIcon()?n.fontIcon:null),Ao(n.color?"mat-"+n.color:""),_A("mat-icon-inline",n.inline)("mat-icon-no-color",n.color!=="primary"&&n.color!=="accent"&&n.color!=="warn"))},inputs:{color:"color",inline:[2,"inline","inline",Qe],svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],ngContentSelectors:uaA,decls:1,vars:0,template:function(t,n){t&1&&(Ot(),Ze(0))},styles:[`mat-icon,mat-icon.mat-primary,mat-icon.mat-accent,mat-icon.mat-warn{color:var(--mat-icon-color, inherit)}.mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px;overflow:hidden}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.mat-icon.mat-ligature-font[fontIcon]::before{content:attr(fontIcon)}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto} -`],encapsulation:2,changeDetection:0})}return i})(),Un=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();var yaA=["mat-menu-item",""],DaA=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],vaA=["mat-icon, [matMenuItemIcon]","*"];function baA(i,e){i&1&&(Et(),I(0,"svg",2),lA(1,"polygon",3),h())}var MaA=["*"];function SaA(i,e){if(i&1){let A=aA();Ln(0,"div",0),yI("click",function(){L(A);let n=p();return G(n.closed.emit("click"))})("animationstart",function(n){L(A);let o=p();return G(o._onAnimationStart(n.animationName))})("animationend",function(n){L(A);let o=p();return G(o._onAnimationDone(n.animationName))})("animationcancel",function(n){L(A);let o=p();return G(o._onAnimationDone(n.animationName))}),Ln(1,"div",1),Ze(2),Xn()()}if(i&2){let A=p();Ao(A._classList),_A("mat-menu-panel-animations-disabled",A._animationsDisabled)("mat-menu-panel-exit-animation",A._panelAnimationState==="void")("mat-menu-panel-animating",A._isAnimating()),Ma("id",A.panelId),ie("aria-label",A.ariaLabel||null)("aria-labelledby",A.ariaLabelledby||null)("aria-describedby",A.ariaDescribedby||null)}}var C7=new MA("MAT_MENU_PANEL"),Gs=(()=>{class i{_elementRef=w(ce);_document=w(ci);_focusMonitor=w(rr);_parentMenu=w(C7,{optional:!0});_changeDetectorRef=w(Mt);role="menuitem";disabled=!1;disableRipple=!1;_hovered=new ne;_focused=new ne;_highlighted=!1;_triggersSubmenu=!1;constructor(){w(Eo).load(Qr),this._parentMenu?.addItem?.(this)}focus(A,t){this._focusMonitor&&A?this._focusMonitor.focusVia(this._getHostElement(),A,t):this._getHostElement().focus(t),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(A){this.disabled&&(A.preventDefault(),A.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){let A=this._elementRef.nativeElement.cloneNode(!0),t=A.querySelectorAll("mat-icon, .material-icons");for(let n=0;n({overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"})}),c7="_mat-menu-enter",Bm="_mat-menu-exit",hs=(()=>{class i{_elementRef=w(ce);_changeDetectorRef=w(Mt);_injector=w(St);_keyManager;_xPosition;_yPosition;_firstItemFocusRef;_exitFallbackTimeout;_animationsDisabled=In();_allItems;_directDescendantItems=new Rg;_classList={};_panelAnimationState="void";_animationDone=new ne;_isAnimating=mA(!1);parentMenu;direction;overlayPanelClass;backdropClass;ariaLabel;ariaLabelledby;ariaDescribedby;get xPosition(){return this._xPosition}set xPosition(A){this._xPosition=A,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(A){this._yPosition=A,this.setPositionClasses()}templateRef;items;lazyContent;overlapTrigger=!1;hasBackdrop;set panelClass(A){let t=this._previousPanelClass,n=P({},this._classList);t&&t.length&&t.split(" ").forEach(o=>{n[o]=!1}),this._previousPanelClass=A,A&&A.length&&(A.split(" ").forEach(o=>{n[o]=!0}),this._elementRef.nativeElement.className=""),this._classList=n}_previousPanelClass;get classList(){return this.panelClass}set classList(A){this.panelClass=A}closed=new FA;close=this.closed;panelId=w(Dn).getId("mat-menu-panel-");constructor(){let A=w(_aA);this.overlayPanelClass=A.overlayPanelClass||"",this._xPosition=A.xPosition,this._yPosition=A.yPosition,this.backdropClass=A.backdropClass,this.overlapTrigger=A.overlapTrigger,this.hasBackdrop=A.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new O0(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(Yn(this._directDescendantItems),Mi(A=>Vi(...A.map(t=>t._focused)))).subscribe(A=>this._keyManager.updateActiveItem(A)),this._directDescendantItems.changes.subscribe(A=>{let t=this._keyManager;if(this._panelAnimationState==="enter"&&t.activeItem?._hasFocus()){let n=A.toArray(),o=Math.max(0,Math.min(n.length-1,t.activeItemIndex||0));n[o]&&!n[o].disabled?t.setActiveItem(o):t.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy(),clearTimeout(this._exitFallbackTimeout)}_hovered(){return this._directDescendantItems.changes.pipe(Yn(this._directDescendantItems),Mi(t=>Vi(...t.map(n=>n._hovered))))}addItem(A){}removeItem(A){}_handleKeydown(A){let t=A.keyCode,n=this._keyManager;switch(t){case 27:Sa(A)||(A.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&this.direction==="ltr"&&this.closed.emit("keydown");break;case 39:this.parentMenu&&this.direction==="rtl"&&this.closed.emit("keydown");break;default:(t===38||t===40)&&n.setFocusOrigin("keyboard"),n.onKeydown(A);return}}focusFirstItem(A="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=ao(()=>{let t=this._resolvePanel();if(!t||!t.contains(document.activeElement)){let n=this._keyManager;n.setFocusOrigin(A).setFirstItemActive(),!n.activeItem&&t&&t.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(A){}setPositionClasses(A=this.xPosition,t=this.yPosition){this._classList=$A(P({},this._classList),{"mat-menu-before":A==="before","mat-menu-after":A==="after","mat-menu-above":t==="above","mat-menu-below":t==="below"}),this._changeDetectorRef.markForCheck()}_onAnimationDone(A){let t=A===Bm;(t||A===c7)&&(t&&(clearTimeout(this._exitFallbackTimeout),this._exitFallbackTimeout=void 0),this._animationDone.next(t?"void":"enter"),this._isAnimating.set(!1))}_onAnimationStart(A){(A===c7||A===Bm)&&this._isAnimating.set(!0)}_setIsOpen(A){if(this._panelAnimationState=A?"enter":"void",A){if(this._keyManager.activeItemIndex===0){let t=this._resolvePanel();t&&(t.scrollTop=0)}}else this._animationsDisabled||(this._exitFallbackTimeout=setTimeout(()=>this._onAnimationDone(Bm),200));this._animationsDisabled&&setTimeout(()=>{this._onAnimationDone(A?c7:Bm)}),this._changeDetectorRef.markForCheck()}_updateDirectDescendants(){this._allItems.changes.pipe(Yn(this._allItems)).subscribe(A=>{this._directDescendantItems.reset(A.filter(t=>t._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}_resolvePanel(){let A=null;return this._directDescendantItems.length&&(A=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),A}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-menu"]],contentQueries:function(t,n,o){if(t&1&&ra(o,kaA,5)(o,Gs,5)(o,Gs,4),t&2){let a;se(a=le())&&(n.lazyContent=a.first),se(a=le())&&(n._allItems=a),se(a=le())&&(n.items=a)}},viewQuery:function(t,n){if(t&1&&Wt(wo,5),t&2){let o;se(o=le())&&(n.templateRef=o.first)}},hostVars:3,hostBindings:function(t,n){t&2&&ie("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",Qe],hasBackdrop:[2,"hasBackdrop","hasBackdrop",A=>A==null?null:Qe(A)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],features:[pt([{provide:C7,useExisting:i}])],ngContentSelectors:MaA,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel",3,"click","animationstart","animationend","animationcancel","id"],[1,"mat-mdc-menu-content"]],template:function(t,n){t&1&&(Ot(),s3(0,SaA,3,12,"ng-template"))},styles:[`mat-menu{display:none}.mat-mdc-menu-content{margin:0;padding:8px 0;outline:0}.mat-mdc-menu-content,.mat-mdc-menu-content .mat-mdc-menu-item .mat-mdc-menu-item-text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;flex:1;white-space:normal;font-family:var(--mat-menu-item-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-menu-item-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-menu-item-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-menu-item-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-menu-item-label-text-weight, var(--mat-sys-label-large-weight))}@keyframes _mat-menu-enter{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:none}}@keyframes _mat-menu-exit{from{opacity:1}to{opacity:0}}.mat-mdc-menu-panel{min-width:112px;max-width:280px;overflow:auto;box-sizing:border-box;outline:0;animation:_mat-menu-enter 120ms cubic-bezier(0, 0, 0.2, 1);border-radius:var(--mat-menu-container-shape, var(--mat-sys-corner-extra-small));background-color:var(--mat-menu-container-color, var(--mat-sys-surface-container));box-shadow:var(--mat-menu-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));will-change:transform,opacity}.mat-mdc-menu-panel.mat-menu-panel-exit-animation{animation:_mat-menu-exit 100ms 25ms linear forwards}.mat-mdc-menu-panel.mat-menu-panel-animations-disabled{animation:none}.mat-mdc-menu-panel.mat-menu-panel-animating{pointer-events:none}.mat-mdc-menu-panel.mat-menu-panel-animating:has(.mat-mdc-menu-content:empty){display:none}@media(forced-colors: active){.mat-mdc-menu-panel{outline:solid 1px}}.mat-mdc-menu-panel .mat-divider{border-top-color:var(--mat-menu-divider-color, var(--mat-sys-surface-variant));margin-bottom:var(--mat-menu-divider-bottom-spacing, 8px);margin-top:var(--mat-menu-divider-top-spacing, 8px)}.mat-mdc-menu-item{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;cursor:pointer;width:100%;text-align:left;box-sizing:border-box;color:inherit;font-size:inherit;background:none;text-decoration:none;margin:0;min-height:48px;padding-left:var(--mat-menu-item-leading-spacing, 12px);padding-right:var(--mat-menu-item-trailing-spacing, 12px);-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-menu-item::-moz-focus-inner{border:0}[dir=rtl] .mat-mdc-menu-item{padding-left:var(--mat-menu-item-trailing-spacing, 12px);padding-right:var(--mat-menu-item-leading-spacing, 12px)}.mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-leading-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-trailing-spacing, 12px)}[dir=rtl] .mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-trailing-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-leading-spacing, 12px)}.mat-mdc-menu-item,.mat-mdc-menu-item:visited,.mat-mdc-menu-item:link{color:var(--mat-menu-item-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-menu-item .mat-icon-no-color,.mat-mdc-menu-item .mat-mdc-menu-submenu-icon{color:var(--mat-menu-item-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-menu-item[disabled]{cursor:default;opacity:.38}.mat-mdc-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.mat-mdc-menu-item:focus{outline:0}.mat-mdc-menu-item .mat-icon{flex-shrink:0;margin-right:var(--mat-menu-item-spacing, 12px);height:var(--mat-menu-item-icon-size, 24px);width:var(--mat-menu-item-icon-size, 24px)}[dir=rtl] .mat-mdc-menu-item{text-align:right}[dir=rtl] .mat-mdc-menu-item .mat-icon{margin-right:0;margin-left:var(--mat-menu-item-spacing, 12px)}.mat-mdc-menu-item:not([disabled]):hover{background-color:var(--mat-menu-item-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-menu-item:not([disabled]).cdk-program-focused,.mat-mdc-menu-item:not([disabled]).cdk-keyboard-focused,.mat-mdc-menu-item:not([disabled]).mat-mdc-menu-item-highlighted{background-color:var(--mat-menu-item-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}@media(forced-colors: active){.mat-mdc-menu-item{margin-top:1px}}.mat-mdc-menu-submenu-icon{width:var(--mat-menu-item-icon-size, 24px);height:10px;fill:currentColor;padding-left:var(--mat-menu-item-spacing, 12px)}[dir=rtl] .mat-mdc-menu-submenu-icon{padding-right:var(--mat-menu-item-spacing, 12px);padding-left:0}[dir=rtl] .mat-mdc-menu-submenu-icon polygon{transform:scaleX(-1);transform-origin:center}@media(forced-colors: active){.mat-mdc-menu-submenu-icon{fill:CanvasText}}.mat-mdc-menu-item .mat-mdc-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none} -`],encapsulation:2,changeDetection:0})}return i})(),xaA=new MA("mat-menu-scroll-strategy",{providedIn:"root",factory:()=>{let i=w(St);return()=>V0(i)}});var BB=new WeakMap,RaA=(()=>{class i{_canHaveBackdrop;_element=w(ce);_viewContainerRef=w(Jo);_menuItemInstance=w(Gs,{optional:!0,self:!0});_dir=w(No,{optional:!0});_focusMonitor=w(rr);_ngZone=w(We);_injector=w(St);_scrollStrategy=w(xaA);_changeDetectorRef=w(Mt);_animationsDisabled=In();_portal;_overlayRef=null;_menuOpen=!1;_closingActionsSubscription=Oo.EMPTY;_menuCloseSubscription=Oo.EMPTY;_pendingRemoval;_parentMaterialMenu;_parentInnerPadding;_openedBy=void 0;get _menu(){return this._menuInternal}set _menu(A){A!==this._menuInternal&&(this._menuInternal=A,this._menuCloseSubscription.unsubscribe(),A&&(this._parentMaterialMenu,this._menuCloseSubscription=A.close.subscribe(t=>{this._destroyMenu(t),(t==="click"||t==="tab")&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(t)})),this._menuItemInstance?._setTriggersSubmenu(this._triggersSubmenu()))}_menuInternal=null;constructor(A){this._canHaveBackdrop=A;let t=w(C7,{optional:!0});this._parentMaterialMenu=t instanceof hs?t:void 0}ngOnDestroy(){this._menu&&this._ownsMenu(this._menu)&&BB.delete(this._menu),this._pendingRemoval?.unsubscribe(),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null)}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this._menu)}_closeMenu(){this._menu?.close.emit()}_openMenu(A){if(this._triggerIsAriaDisabled())return;let t=this._menu;if(this._menuOpen||!t)return;this._pendingRemoval?.unsubscribe();let n=BB.get(t);BB.set(t,this),n&&n!==this&&n._closeMenu();let o=this._createOverlay(t),a=o.getConfig(),r=a.positionStrategy;this._setPosition(t,r),this._canHaveBackdrop?a.hasBackdrop=t.hasBackdrop==null?!this._triggersSubmenu():t.hasBackdrop:a.hasBackdrop=t.hasBackdrop??!1,o.hasAttached()||(o.attach(this._getPortal(t)),t.lazyContent?.attach(this.menuData)),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this._closeMenu()),t.parentMenu=this._triggersSubmenu()?this._parentMaterialMenu:void 0,t.direction=this.dir,A&&t.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0),t instanceof hs&&(t._setIsOpen(!0),t._directDescendantItems.changes.pipe(yt(t.close)).subscribe(()=>{r.withLockedPosition(!1).reapplyLastPosition(),r.withLockedPosition(!0)}))}focus(A,t){this._focusMonitor&&A?this._focusMonitor.focusVia(this._element,A,t):this._element.nativeElement.focus(t)}_destroyMenu(A){let t=this._overlayRef,n=this._menu;!t||!this.menuOpen||(this._closingActionsSubscription.unsubscribe(),this._pendingRemoval?.unsubscribe(),n instanceof hs&&this._ownsMenu(n)?(this._pendingRemoval=n._animationDone.pipe(Ro(1)).subscribe(()=>{t.detach(),BB.has(n)||n.lazyContent?.detach()}),n._setIsOpen(!1)):(t.detach(),n?.lazyContent?.detach()),n&&this._ownsMenu(n)&&BB.delete(n),this.restoreFocus&&(A==="keydown"||!this._openedBy||!this._triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,this._setIsMenuOpen(!1))}_setIsMenuOpen(A){A!==this._menuOpen&&(this._menuOpen=A,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this._triggersSubmenu()&&this._menuItemInstance._setHighlighted(A),this._changeDetectorRef.markForCheck())}_createOverlay(A){if(!this._overlayRef){let t=this._getOverlayConfig(A);this._subscribeToPositions(A,t.positionStrategy),this._overlayRef=Pg(this._injector,t),this._overlayRef.keydownEvents().subscribe(n=>{this._menu instanceof hs&&this._menu._handleKeydown(n)})}return this._overlayRef}_getOverlayConfig(A){return new Hg({positionStrategy:od(this._injector,this._getOverlayOrigin()).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:A.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:A.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir||"ltr",disableAnimations:this._animationsDisabled})}_subscribeToPositions(A,t){A.setPositionClasses&&t.positionChanges.subscribe(n=>{this._ngZone.run(()=>{let o=n.connectionPair.overlayX==="start"?"after":"before",a=n.connectionPair.overlayY==="top"?"below":"above";A.setPositionClasses(o,a)})})}_setPosition(A,t){let[n,o]=A.xPosition==="before"?["end","start"]:["start","end"],[a,r]=A.yPosition==="above"?["bottom","top"]:["top","bottom"],[s,l]=[a,r],[g,C]=[n,o],d=0;if(this._triggersSubmenu()){if(C=n=A.xPosition==="before"?"start":"end",o=g=n==="end"?"start":"end",this._parentMaterialMenu){if(this._parentInnerPadding==null){let B=this._parentMaterialMenu.items.first;this._parentInnerPadding=B?B._getHostElement().offsetTop:0}d=a==="bottom"?this._parentInnerPadding:-this._parentInnerPadding}}else A.overlapTrigger||(s=a==="top"?"bottom":"top",l=r==="top"?"bottom":"top");t.withPositions([{originX:n,originY:s,overlayX:g,overlayY:a,offsetY:d},{originX:o,originY:s,overlayX:C,overlayY:a,offsetY:d},{originX:n,originY:l,overlayX:g,overlayY:r,offsetY:-d},{originX:o,originY:l,overlayX:C,overlayY:r,offsetY:-d}])}_menuClosingActions(){let A=this._getOutsideClickStream(this._overlayRef),t=this._overlayRef.detachments(),n=this._parentMaterialMenu?this._parentMaterialMenu.closed:oe(),o=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(Bt(a=>this._menuOpen&&a!==this._menuItemInstance)):oe();return Vi(A,n,o,t)}_getPortal(A){return(!this._portal||this._portal.templateRef!==A.templateRef)&&(this._portal=new jr(A.templateRef,this._viewContainerRef)),this._portal}_ownsMenu(A){return BB.get(A)===this}_triggerIsAriaDisabled(){return Qe(this._element.nativeElement.getAttribute("aria-disabled"))}static \u0275fac=function(t){o3()};static \u0275dir=VA({type:i})}return i})(),tg=(()=>{class i extends RaA{_cleanupTouchstart;_hoverSubscription=Oo.EMPTY;get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(A){this.menu=A}get menu(){return this._menu}set menu(A){this._menu=A}menuData;restoreFocus=!0;menuOpened=new FA;onMenuOpen=this.menuOpened;menuClosed=new FA;onMenuClose=this.menuClosed;constructor(){super(!0);let A=w(on);this._cleanupTouchstart=A.listen(this._element.nativeElement,"touchstart",t=>{N1(t)||(this._openedBy="touch")},{passive:!0})}triggersSubmenu(){return super._triggersSubmenu()}toggleMenu(){return this.menuOpen?this.closeMenu():this.openMenu()}openMenu(){this._openMenu(!0)}closeMenu(){this._closeMenu()}updatePosition(){this._overlayRef?.updatePosition()}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTouchstart(),this._hoverSubscription.unsubscribe()}_getOverlayOrigin(){return this._element}_getOutsideClickStream(A){return A.backdropClick()}_handleMousedown(A){R1(A)||(this._openedBy=A.button===0?"mouse":void 0,this.triggersSubmenu()&&A.preventDefault())}_handleKeydown(A){let t=A.keyCode;(t===13||t===32)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(t===39&&this.dir==="ltr"||t===37&&this.dir==="rtl")&&(this._openedBy="keyboard",this.openMenu())}_handleClick(A){this.triggersSubmenu()?(A.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){this.triggersSubmenu()&&this._parentMaterialMenu&&(this._hoverSubscription=this._parentMaterialMenu._hovered().subscribe(A=>{A===this._menuItemInstance&&!A.disabled&&this._parentMaterialMenu?._panelAnimationState!=="void"&&(this._openedBy="mouse",this._openMenu(!1))}))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-mdc-menu-trigger"],hostVars:3,hostBindings:function(t,n){t&1&&U("click",function(a){return n._handleClick(a)})("mousedown",function(a){return n._handleMousedown(a)})("keydown",function(a){return n._handleKeydown(a)}),t&2&&ie("aria-haspopup",n.menu?"menu":null)("aria-expanded",n.menuOpen)("aria-controls",n.menuOpen?n.menu==null?null:n.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:[0,"mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:[0,"matMenuTriggerFor","menu"],menuData:[0,"matMenuTriggerData","menuData"],restoreFocus:[0,"matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"},exportAs:["matMenuTrigger"],features:[bt]})}return i})();var s2=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Jc,eg,Di,Vc]})}return i})();var NaA=["text"],FaA=[[["mat-icon"]],"*"],LaA=["mat-icon","*"];function GaA(i,e){if(i&1&&lA(0,"mat-pseudo-checkbox",1),i&2){let A=p();H("disabled",A.disabled)("state",A.selected?"checked":"unchecked")}}function KaA(i,e){if(i&1&&lA(0,"mat-pseudo-checkbox",3),i&2){let A=p();H("disabled",A.disabled)}}function UaA(i,e){if(i&1&&(I(0,"span",4),D(1),h()),i&2){let A=p();Q(),Ee("(",A.group.label,")")}}var Qm=new MA("MAT_OPTION_PARENT_COMPONENT"),um=new MA("MatOptgroup");var Em=class{source;isUserInput;constructor(e,A=!1){this.source=e,this.isUserInput=A}},Vr=(()=>{class i{_element=w(ce);_changeDetectorRef=w(Mt);_parent=w(Qm,{optional:!0});group=w(um,{optional:!0});_signalDisableRipple=!1;_selected=!1;_active=!1;_mostRecentViewValue="";get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}value;id=w(Dn).getId("mat-option-");get disabled(){return this.group&&this.group.disabled||this._disabled()}set disabled(A){this._disabled.set(A)}_disabled=mA(!1);get disableRipple(){return this._signalDisableRipple?this._parent.disableRipple():!!this._parent?.disableRipple}get hideSingleSelectionIndicator(){return!!(this._parent&&this._parent.hideSingleSelectionIndicator)}onSelectionChange=new FA;_text;_stateChanges=new ne;constructor(){let A=w(Eo);A.load(Qr),A.load(ZC),this._signalDisableRipple=!!this._parent&&M1(this._parent.disableRipple)}get active(){return this._active}get viewValue(){return(this._text?.nativeElement.textContent||"").trim()}select(A=!0){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),A&&this._emitSelectionChangeEvent())}deselect(A=!0){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),A&&this._emitSelectionChangeEvent())}focus(A,t){let n=this._getHostElement();typeof n.focus=="function"&&n.focus(t)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(A){(A.keyCode===13||A.keyCode===32)&&!Sa(A)&&(this._selectViaInteraction(),A.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=this.multiple?!this._selected:!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){let A=this.viewValue;A!==this._mostRecentViewValue&&(this._mostRecentViewValue&&this._stateChanges.next(),this._mostRecentViewValue=A)}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(A=!1){this.onSelectionChange.emit(new Em(this,A))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-option"]],viewQuery:function(t,n){if(t&1&&Wt(NaA,7),t&2){let o;se(o=le())&&(n._text=o.first)}},hostAttrs:["role","option",1,"mat-mdc-option","mdc-list-item"],hostVars:11,hostBindings:function(t,n){t&1&&U("click",function(){return n._selectViaInteraction()})("keydown",function(a){return n._handleKeydown(a)}),t&2&&(Ma("id",n.id),ie("aria-selected",n.selected)("aria-disabled",n.disabled.toString()),_A("mdc-list-item--selected",n.selected)("mat-mdc-option-multiple",n.multiple)("mat-mdc-option-active",n.active)("mdc-list-item--disabled",n.disabled))},inputs:{value:"value",id:"id",disabled:[2,"disabled","disabled",Qe]},outputs:{onSelectionChange:"onSelectionChange"},exportAs:["matOption"],ngContentSelectors:LaA,decls:8,vars:5,consts:[["text",""],["aria-hidden","true",1,"mat-mdc-option-pseudo-checkbox",3,"disabled","state"],[1,"mdc-list-item__primary-text"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"cdk-visually-hidden"],["aria-hidden","true","mat-ripple","",1,"mat-mdc-option-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled"]],template:function(t,n){t&1&&(Ot(FaA),T(0,GaA,1,2,"mat-pseudo-checkbox",1),Ze(1),I(2,"span",2,0),Ze(4,1),h(),T(5,KaA,1,1,"mat-pseudo-checkbox",3),T(6,UaA,2,1,"span",4),lA(7,"div",5)),t&2&&(O(n.multiple?0:-1),Q(5),O(!n.multiple&&n.selected&&!n.hideSingleSelectionIndicator?5:-1),Q(),O(n.group&&n.group._inert?6:-1),Q(),H("matRippleTrigger",n._getHostElement())("matRippleDisabled",n.disabled||n.disableRipple))},dependencies:[Xf,Cs],styles:[`.mat-mdc-option{-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-option-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-option-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-option-label-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-option-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-option-label-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));outline:0}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-active,.mat-mdc-option-multiple,:focus,:hover){background-color:var(--mat-option-selected-state-layer-color, var(--mat-sys-secondary-container))}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-active,.mat-mdc-option-multiple,:focus,:hover) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item{align-items:center;background:rgba(0,0,0,0)}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}@media(forced-colors: active){.mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{right:auto;left:16px}}.mat-mdc-option-multiple{--mat-list-list-item-selected-container-color: var(--mat-list-list-item-container-color, transparent)}.mat-mdc-option-active .mat-focus-indicator::before{content:""} -`],encapsulation:2,changeDetection:0})}return i})();function d7(i,e,A){if(A.length){let t=e.toArray(),n=A.toArray(),o=0;for(let a=0;aA+t?Math.max(0,i-t+e):A}var gT=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();var B7=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Jc,gT,Vr,Di]})}return i})();var TaA=["trigger"],OaA=["panel"],JaA=[[["mat-select-trigger"]],"*"],YaA=["mat-select-trigger","*"];function HaA(i,e){if(i&1&&(I(0,"span",4),D(1),h()),i&2){let A=p();Q(),nA(A.placeholder)}}function zaA(i,e){i&1&&Ze(0)}function PaA(i,e){if(i&1&&(I(0,"span",11),D(1),h()),i&2){let A=p(2);Q(),nA(A.triggerValue)}}function jaA(i,e){if(i&1&&(I(0,"span",5),T(1,zaA,1,0)(2,PaA,2,1,"span",11),h()),i&2){let A=p();Q(),O(A.customTrigger?1:2)}}function VaA(i,e){if(i&1){let A=aA();I(0,"div",12,1),U("keydown",function(n){L(A);let o=p();return G(o._handleKeydown(n))}),Ze(2,1),h()}if(i&2){let A=p();Ao(A.panelClass),_A("mat-select-panel-animations-enabled",!A._animationsDisabled)("mat-primary",(A._parentFormField==null?null:A._parentFormField.color)==="primary")("mat-accent",(A._parentFormField==null?null:A._parentFormField.color)==="accent")("mat-warn",(A._parentFormField==null?null:A._parentFormField.color)==="warn")("mat-undefined",!(A._parentFormField!=null&&A._parentFormField.color)),ie("id",A.id+"-panel")("aria-multiselectable",A.multiple)("aria-label",A.ariaLabel||null)("aria-labelledby",A._getPanelAriaLabelledby())}}var qaA=new MA("mat-select-scroll-strategy",{providedIn:"root",factory:()=>{let i=w(St);return()=>V0(i)}}),WaA=new MA("MAT_SELECT_CONFIG"),ZaA=new MA("MatSelectTrigger"),h7=class{source;value;constructor(e,A){this.source=e,this.value=A}},ig=(()=>{class i{_viewportRuler=w(Ns);_changeDetectorRef=w(Mt);_elementRef=w(ce);_dir=w(No,{optional:!0});_idGenerator=w(Dn);_renderer=w(on);_parentFormField=w(yQ,{optional:!0});ngControl=w(Vs,{self:!0,optional:!0});_liveAnnouncer=w(hQ);_defaultOptions=w(WaA,{optional:!0});_animationsDisabled=In();_popoverLocation;_initialized=new ne;_cleanupDetach;options;optionGroups;customTrigger;_positions=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"}];_scrollOptionIntoView(A){let t=this.options.toArray()[A];if(t){let n=this.panel.nativeElement,o=d7(A,this.options,this.optionGroups),a=t._getHostElement();A===0&&o===1?n.scrollTop=0:n.scrollTop=I7(a.offsetTop,a.offsetHeight,n.scrollTop,n.offsetHeight)}}_positioningSettled(){this._scrollOptionIntoView(this._keyManager.activeItemIndex||0)}_getChangeEvent(A){return new h7(this,A)}_scrollStrategyFactory=w(qaA);_panelOpen=!1;_compareWith=(A,t)=>A===t;_uid=this._idGenerator.getId("mat-select-");_triggerAriaLabelledBy=null;_previousControl;_destroy=new ne;_errorStateTracker;stateChanges=new ne;disableAutomaticLabeling=!0;userAriaDescribedBy;_selectionModel;_keyManager;_preferredOverlayOrigin;_overlayWidth;_onChange=()=>{};_onTouched=()=>{};_valueId=this._idGenerator.getId("mat-select-value-");_scrollStrategy;_overlayPanelClass=this._defaultOptions?.overlayPanelClass||"";get focused(){return this._focused||this._panelOpen}_focused=!1;controlType="mat-select";trigger;panel;_overlayDir;panelClass;disabled=!1;get disableRipple(){return this._disableRipple()}set disableRipple(A){this._disableRipple.set(A)}_disableRipple=mA(!1);tabIndex=0;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(A){this._hideSingleSelectionIndicator=A,this._syncParentProperties()}_hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get placeholder(){return this._placeholder}set placeholder(A){this._placeholder=A,this.stateChanges.next()}_placeholder;get required(){return this._required??this.ngControl?.control?.hasValidator(js.required)??!1}set required(A){this._required=A,this.stateChanges.next()}_required;get multiple(){return this._multiple}set multiple(A){this._selectionModel,this._multiple=A}_multiple=!1;disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1;get compareWith(){return this._compareWith}set compareWith(A){this._compareWith=A,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(A){this._assignValue(A)&&this._onChange(A)}_value;ariaLabel="";ariaLabelledby;get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(A){this._errorStateTracker.matcher=A}typeaheadDebounceInterval;sortComparator;get id(){return this._id}set id(A){this._id=A||this._uid,this.stateChanges.next()}_id;get errorState(){return this._errorStateTracker.errorState}set errorState(A){this._errorStateTracker.errorState=A}panelWidth=this._defaultOptions&&typeof this._defaultOptions.panelWidth<"u"?this._defaultOptions.panelWidth:"auto";canSelectNullableOptions=this._defaultOptions?.canSelectNullableOptions??!1;optionSelectionChanges=Rc(()=>{let A=this.options;return A?A.changes.pipe(Yn(A),Mi(()=>Vi(...A.map(t=>t.onSelectionChange)))):this._initialized.pipe(Mi(()=>this.optionSelectionChanges))});openedChange=new FA;_openedStream=this.openedChange.pipe(Bt(A=>A),Se(()=>{}));_closedStream=this.openedChange.pipe(Bt(A=>!A),Se(()=>{}));selectionChange=new FA;valueChange=new FA;constructor(){let A=w(HI),t=w(FI,{optional:!0}),n=w(qC,{optional:!0}),o=w(new Ys("tabindex"),{optional:!0}),a=w(ou,{optional:!0});this.ngControl&&(this.ngControl.valueAccessor=this),this._defaultOptions?.typeaheadDebounceInterval!=null&&(this.typeaheadDebounceInterval=this._defaultOptions.typeaheadDebounceInterval),this._errorStateTracker=new zI(A,this.ngControl,n,t,this.stateChanges),this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=o==null?0:parseInt(o)||0,this._popoverLocation=a?.usePopover===!1?null:"inline",this.id=this.id}ngOnInit(){this._selectionModel=new P0(this.multiple),this.stateChanges.next(),this._viewportRuler.change().pipe(yt(this._destroy)).subscribe(()=>{this.panelOpen&&(this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._changeDetectorRef.detectChanges())})}ngAfterContentInit(){this._initialized.next(),this._initialized.complete(),this._initKeyManager(),this._selectionModel.changed.pipe(yt(this._destroy)).subscribe(A=>{A.added.forEach(t=>t.select()),A.removed.forEach(t=>t.deselect())}),this.options.changes.pipe(Yn(null),yt(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){let A=this._getTriggerAriaLabelledby(),t=this.ngControl;if(A!==this._triggerAriaLabelledBy){let n=this._elementRef.nativeElement;this._triggerAriaLabelledBy=A,A?n.setAttribute("aria-labelledby",A):n.removeAttribute("aria-labelledby")}t&&(this._previousControl!==t.control&&(this._previousControl!==void 0&&t.disabled!==null&&t.disabled!==this.disabled&&(this.disabled=t.disabled),this._previousControl=t.control),this.updateErrorState())}ngOnChanges(A){(A.disabled||A.userAriaDescribedBy)&&this.stateChanges.next(),A.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this.typeaheadDebounceInterval),A.panelClass&&this.panelClass instanceof Set&&(this.panelClass=Array.from(this.panelClass))}ngOnDestroy(){this._cleanupDetach?.(),this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete(),this._clearFromModal()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._parentFormField&&(this._preferredOverlayOrigin=this._parentFormField.getConnectedOverlayOrigin()),this._cleanupDetach?.(),this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._applyModalPanelOwnership(),this._panelOpen=!0,this._overlayDir.positionChange.pipe(Ro(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()}),this._overlayDir.attachOverlay(),this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!0)))}_trackedModal=null;_applyModalPanelOwnership(){let A=this._elementRef.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');if(!A)return;let t=`${this.id}-panel`;this._trackedModal&&U3(this._trackedModal,"aria-owns",t),wv(A,"aria-owns",t),this._trackedModal=A}_clearFromModal(){if(!this._trackedModal)return;let A=`${this.id}-panel`;U3(this._trackedModal,"aria-owns",A),this._trackedModal=null}close(){this._panelOpen&&(this._panelOpen=!1,this._exitAndDetach(),this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!1)))}_exitAndDetach(){if(this._animationsDisabled||!this.panel){this._detachOverlay();return}this._cleanupDetach?.(),this._cleanupDetach=()=>{t(),clearTimeout(n),this._cleanupDetach=void 0};let A=this.panel.nativeElement,t=this._renderer.listen(A,"animationend",o=>{o.animationName==="_mat-select-exit"&&(this._cleanupDetach?.(),this._detachOverlay())}),n=setTimeout(()=>{this._cleanupDetach?.(),this._detachOverlay()},200);A.classList.add("mat-select-panel-exit")}_detachOverlay(){this._overlayDir.detachOverlay(),this._changeDetectorRef.markForCheck()}writeValue(A){this._assignValue(A)}registerOnChange(A){this._onChange=A}registerOnTouched(A){this._onTouched=A}setDisabledState(A){this.disabled=A,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){let A=this._selectionModel.selected.map(t=>t.viewValue);return this._isRtl()&&A.reverse(),A.join(", ")}return this._selectionModel.selected[0].viewValue}updateErrorState(){this._errorStateTracker.updateErrorState()}_isRtl(){return this._dir?this._dir.value==="rtl":!1}_handleKeydown(A){this.disabled||(this.panelOpen?this._handleOpenKeydown(A):this._handleClosedKeydown(A))}_handleClosedKeydown(A){let t=A.keyCode,n=t===40||t===38||t===37||t===39,o=t===13||t===32,a=this._keyManager;if(!a.isTyping()&&o&&!Sa(A)||(this.multiple||A.altKey)&&n)A.preventDefault(),this.open();else if(!this.multiple){let r=this.selected;a.onKeydown(A);let s=this.selected;s&&r!==s&&this._liveAnnouncer.announce(s.viewValue,1e4)}}_handleOpenKeydown(A){let t=this._keyManager,n=A.keyCode,o=n===40||n===38,a=t.isTyping();if(o&&A.altKey)A.preventDefault(),this.close();else if(!a&&(n===13||n===32)&&t.activeItem&&!Sa(A))A.preventDefault(),t.activeItem._selectViaInteraction();else if(!a&&this._multiple&&n===65&&A.ctrlKey){A.preventDefault();let r=this.options.some(s=>!s.disabled&&!s.selected);this.options.forEach(s=>{s.disabled||(r?s.select():s.deselect())})}else{let r=t.activeItemIndex;t.onKeydown(A),this._multiple&&o&&A.shiftKey&&t.activeItem&&t.activeItemIndex!==r&&t.activeItem._selectViaInteraction()}}_handleOverlayKeydown(A){A.keyCode===27&&!Sa(A)&&(A.preventDefault(),this.close())}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(A){if(this.options.forEach(t=>t.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&A)Array.isArray(A),A.forEach(t=>this._selectOptionByValue(t)),this._sortValues();else{let t=this._selectOptionByValue(A);t?this._keyManager.updateActiveItem(t):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(A){let t=this.options.find(n=>{if(this._selectionModel.isSelected(n))return!1;try{return(n.value!=null||this.canSelectNullableOptions)&&this._compareWith(n.value,A)}catch(o){return!1}});return t&&this._selectionModel.select(t),t}_assignValue(A){return A!==this._value||this._multiple&&Array.isArray(A)?(this.options&&this._setSelectionByValue(A),this._value=A,!0):!1}_skipPredicate=A=>this.panelOpen?!1:A.disabled;_getOverlayWidth(A){return this.panelWidth==="auto"?(A instanceof dB?A.elementRef:A||this._elementRef).nativeElement.getBoundingClientRect().width:this.panelWidth===null?"":this.panelWidth}_syncParentProperties(){if(this.options)for(let A of this.options)A._changeDetectorRef.markForCheck()}_initKeyManager(){this._keyManager=new QQ(this.options).withTypeAhead(this.typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){let A=Vi(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(yt(A)).subscribe(t=>{this._onSelect(t.source,t.isUserInput),t.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Vi(...this.options.map(t=>t._stateChanges)).pipe(yt(A)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(A,t){let n=this._selectionModel.isSelected(A);!this.canSelectNullableOptions&&A.value==null&&!this._multiple?(A.deselect(),this._selectionModel.clear(),this.value!=null&&this._propagateChanges(A.value)):(n!==A.selected&&(A.selected?this._selectionModel.select(A):this._selectionModel.deselect(A)),t&&this._keyManager.setActiveItem(A),this.multiple&&(this._sortValues(),t&&this.focus())),n!==this._selectionModel.isSelected(A)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){let A=this.options.toArray();this._selectionModel.sort((t,n)=>this.sortComparator?this.sortComparator(t,n,A):A.indexOf(t)-A.indexOf(n)),this.stateChanges.next()}}_propagateChanges(A){let t;this.multiple?t=this.selected.map(n=>n.value):t=this.selected?this.selected.value:A,this._value=t,this.valueChange.emit(t),this._onChange(t),this.selectionChange.emit(this._getChangeEvent(t)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let A=-1;for(let t=0;t0&&!!this._overlayDir}focus(A){this._elementRef.nativeElement.focus(A)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;let A=this._parentFormField?.getLabelId()||null,t=A?A+" ":"";return this.ariaLabelledby?t+this.ariaLabelledby:A}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;let A=this._parentFormField?.getLabelId()||"";return this.ariaLabelledby&&(A+=" "+this.ariaLabelledby),A||(A=this._valueId),A}get describedByIds(){return this._elementRef.nativeElement.getAttribute("aria-describedby")?.split(" ")||[]}setDescribedByIds(A){let t=this._elementRef.nativeElement;A.length?t.setAttribute("aria-describedby",A.join(" ")):t.removeAttribute("aria-describedby")}onContainerClick(A){let t=Pr(A);t&&(t.tagName==="MAT-OPTION"||t.classList.contains("cdk-overlay-backdrop")||t.closest(".mat-mdc-select-panel"))||(this.focus(),this.open())}get shouldLabelFloat(){return this.panelOpen||!this.empty||this.focused&&!!this.placeholder}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-select"]],contentQueries:function(t,n,o){if(t&1&&ra(o,ZaA,5)(o,Vr,5)(o,um,5),t&2){let a;se(a=le())&&(n.customTrigger=a.first),se(a=le())&&(n.options=a),se(a=le())&&(n.optionGroups=a)}},viewQuery:function(t,n){if(t&1&&Wt(TaA,5)(OaA,5)(gm,5),t&2){let o;se(o=le())&&(n.trigger=o.first),se(o=le())&&(n.panel=o.first),se(o=le())&&(n._overlayDir=o.first)}},hostAttrs:["role","combobox","aria-haspopup","listbox",1,"mat-mdc-select"],hostVars:21,hostBindings:function(t,n){t&1&&U("keydown",function(a){return n._handleKeydown(a)})("focus",function(){return n._onFocus()})("blur",function(){return n._onBlur()}),t&2&&(ie("id",n.id)("tabindex",n.disabled?-1:n.tabIndex)("aria-controls",n.panelOpen?n.id+"-panel":null)("aria-expanded",n.panelOpen)("aria-label",n.ariaLabel||null)("aria-required",n.required.toString())("aria-disabled",n.disabled.toString())("aria-invalid",n.errorState)("aria-activedescendant",n._getAriaActiveDescendant()),_A("mat-mdc-select-disabled",n.disabled)("mat-mdc-select-invalid",n.errorState)("mat-mdc-select-required",n.required)("mat-mdc-select-empty",n.empty)("mat-mdc-select-multiple",n.multiple)("mat-select-open",n.panelOpen))},inputs:{userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",disabled:[2,"disabled","disabled",Qe],disableRipple:[2,"disableRipple","disableRipple",Qe],tabIndex:[2,"tabIndex","tabIndex",A=>A==null?0:yn(A)],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",Qe],placeholder:"placeholder",required:[2,"required","required",Qe],multiple:[2,"multiple","multiple",Qe],disableOptionCentering:[2,"disableOptionCentering","disableOptionCentering",Qe],compareWith:"compareWith",value:"value",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:[2,"typeaheadDebounceInterval","typeaheadDebounceInterval",yn],sortComparator:"sortComparator",id:"id",panelWidth:"panelWidth",canSelectNullableOptions:[2,"canSelectNullableOptions","canSelectNullableOptions",Qe]},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},exportAs:["matSelect"],features:[pt([{provide:wQ,useExisting:i},{provide:Qm,useExisting:i}]),ii],ngContentSelectors:YaA,decls:11,vars:10,consts:[["fallbackOverlayOrigin","cdkOverlayOrigin","trigger",""],["panel",""],["cdk-overlay-origin","",1,"mat-mdc-select-trigger",3,"click"],[1,"mat-mdc-select-value"],[1,"mat-mdc-select-placeholder","mat-mdc-select-min-line"],[1,"mat-mdc-select-value-text"],[1,"mat-mdc-select-arrow-wrapper"],[1,"mat-mdc-select-arrow"],["viewBox","0 0 24 24","width","24px","height","24px","focusable","false","aria-hidden","true"],["d","M7 10l5 5 5-5z"],["cdk-connected-overlay","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"detach","backdropClick","overlayKeydown","cdkConnectedOverlayDisableClose","cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayWidth","cdkConnectedOverlayFlexibleDimensions","cdkConnectedOverlayUsePopover"],[1,"mat-mdc-select-min-line"],["role","listbox","tabindex","-1",1,"mat-mdc-select-panel","mdc-menu-surface","mdc-menu-surface--open",3,"keydown"]],template:function(t,n){if(t&1&&(Ot(JaA),I(0,"div",2,0),U("click",function(){return n.open()}),I(3,"div",3),T(4,HaA,2,1,"span",4)(5,jaA,3,1,"span",5),h(),I(6,"div",6)(7,"div",7),Et(),I(8,"svg",8),lA(9,"path",9),h()()()(),kt(10,VaA,3,16,"ng-template",10),U("detach",function(){return n.close()})("backdropClick",function(){return n.close()})("overlayKeydown",function(a){return n._handleOverlayKeydown(a)})),t&2){let o=Bi(1);Q(3),ie("id",n._valueId),Q(),O(n.empty?4:5),Q(6),H("cdkConnectedOverlayDisableClose",!0)("cdkConnectedOverlayPanelClass",n._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",n._scrollStrategy)("cdkConnectedOverlayOrigin",n._preferredOverlayOrigin||o)("cdkConnectedOverlayPositions",n._positions)("cdkConnectedOverlayWidth",n._overlayWidth)("cdkConnectedOverlayFlexibleDimensions",!0)("cdkConnectedOverlayUsePopover",n._popoverLocation)}},dependencies:[dB,gm],styles:[`@keyframes _mat-select-enter{from{opacity:0;transform:scaleY(0.8)}to{opacity:1;transform:none}}@keyframes _mat-select-exit{from{opacity:1}to{opacity:0}}.mat-mdc-select{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color, var(--mat-sys-on-surface));font-family:var(--mat-select-trigger-text-font, var(--mat-sys-body-large-font));line-height:var(--mat-select-trigger-text-line-height, var(--mat-sys-body-large-line-height));font-size:var(--mat-select-trigger-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-select-trigger-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-select-trigger-text-tracking, var(--mat-sys-body-large-tracking))}div.mat-mdc-select-panel{box-shadow:var(--mat-select-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-select-disabled{color:var(--mat-select-disabled-trigger-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-select-disabled .mat-mdc-select-placeholder{color:var(--mat-select-disabled-trigger-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-invalid .mat-mdc-select-arrow,.mat-form-field-invalid:not(.mat-form-field-disabled) .mat-mdc-form-field-infix::after{color:var(--mat-select-invalid-arrow-color, var(--mat-sys-error))}.mat-mdc-select-arrow{width:10px;height:5px;position:relative;color:var(--mat-select-enabled-arrow-color, var(--mat-sys-on-surface-variant))}.mat-mdc-form-field.mat-focused .mat-mdc-select-arrow{color:var(--mat-select-focused-arrow-color, var(--mat-sys-primary))}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-disabled .mat-mdc-select-arrow{color:var(--mat-select-disabled-arrow-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-select-open .mat-mdc-select-arrow{transform:rotate(180deg)}.mat-form-field-animations-enabled .mat-mdc-select-arrow{transition:transform 80ms linear}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}@media(forced-colors: active){.mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .mat-mdc-select-arrow svg{fill:GrayText}}div.mat-mdc-select-panel{width:100%;max-height:275px;outline:0;overflow:auto;padding:8px 0;border-radius:4px;box-sizing:border-box;position:relative;background-color:var(--mat-select-panel-background-color, var(--mat-sys-surface-container))}@media(forced-colors: active){div.mat-mdc-select-panel{outline:solid 1px}}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) div.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above div.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-select-panel-animations-enabled{animation:_mat-select-enter 120ms cubic-bezier(0, 0, 0.2, 1)}.mat-select-panel-animations-enabled.mat-select-panel-exit{animation:_mat-select-exit 100ms linear}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);color:var(--mat-select-placeholder-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-form-field:not(.mat-form-field-animations-enabled) .mat-mdc-select-placeholder,._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100%/0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:var(--mat-select-arrow-transform, translateY(-8px))} -`],encapsulation:2,changeDetection:0})}return i})();var W0=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[eg,B7,Di,Vc,Za,B7]})}return i})();var XaA=["tooltip"],$aA=20;var ArA=new MA("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{let i=w(St);return()=>V0(i,{scrollThrottle:$aA})}}),erA=new MA("mat-tooltip-default-options",{providedIn:"root",factory:()=>({showDelay:0,hideDelay:0,touchendHideDelay:1500})});var CT="tooltip-panel",trA={passive:!0},irA=8,nrA=8,orA=24,arA=200,rn=(()=>{class i{_elementRef=w(ce);_ngZone=w(We);_platform=w(Qi);_ariaDescriber=w(xL);_focusMonitor=w(rr);_dir=w(No);_injector=w(St);_viewContainerRef=w(Jo);_mediaMatcher=w(KI);_document=w(ci);_renderer=w(on);_animationsDisabled=In();_defaultOptions=w(erA,{optional:!0});_overlayRef=null;_tooltipInstance=null;_overlayPanelClass;_portal;_position="below";_positionAtOrigin=!1;_disabled=!1;_tooltipClass;_viewInitialized=!1;_pointerExitEventsInitialized=!1;_tooltipComponent=dT;_viewportMargin=8;_currentPosition;_cssClassPrefix="mat-mdc";_ariaDescriptionPending=!1;_dirSubscribed=!1;get position(){return this._position}set position(A){A!==this._position&&(this._position=A,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(A){this._positionAtOrigin=kr(A),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(A){let t=kr(A);this._disabled!==t&&(this._disabled=t,t?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(A){this._showDelay=qs(A)}_showDelay;get hideDelay(){return this._hideDelay}set hideDelay(A){this._hideDelay=qs(A),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}_hideDelay;touchGestures="auto";get message(){return this._message}set message(A){let t=this._message;this._message=A!=null?String(A).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(t)}_message="";get tooltipClass(){return this._tooltipClass}set tooltipClass(A){this._tooltipClass=A,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}_eventCleanups=[];_touchstartTimeout=null;_destroyed=new ne;_isDestroyed=!1;constructor(){let A=this._defaultOptions;A&&(this._showDelay=A.showDelay,this._hideDelay=A.hideDelay,A.position&&(this.position=A.position),A.positionAtOrigin&&(this.positionAtOrigin=A.positionAtOrigin),A.touchGestures&&(this.touchGestures=A.touchGestures),A.tooltipClass&&(this.tooltipClass=A.tooltipClass)),this._viewportMargin=irA}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(yt(this._destroyed)).subscribe(A=>{A?A==="keyboard"&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){let A=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._eventCleanups.forEach(t=>t()),this._eventCleanups.length=0,this._destroyed.next(),this._destroyed.complete(),this._isDestroyed=!0,this._ariaDescriber.removeDescription(A,this.message,"tooltip"),this._focusMonitor.stopMonitoring(A)}show(A=this.showDelay,t){if(this.disabled||!this.message||this._isTooltipVisible()){this._tooltipInstance?._cancelPendingAnimations();return}let n=this._createOverlay(t);this._detach(),this._portal=this._portal||new Fs(this._tooltipComponent,this._viewContainerRef);let o=this._tooltipInstance=n.attach(this._portal).instance;o._triggerElement=this._elementRef.nativeElement,o._mouseLeaveHideDelay=this._hideDelay,o.afterHidden().pipe(yt(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),o.show(A)}hide(A=this.hideDelay){let t=this._tooltipInstance;t&&(t.isVisible()?t.hide(A):(t._cancelPendingAnimations(),this._detach()))}toggle(A){this._isTooltipVisible()?this.hide():this.show(void 0,A)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(A){if(this._overlayRef){let a=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!A)&&a._origin instanceof ce)return this._overlayRef;this._detach()}let t=this._injector.get(qc).getAncestorScrollContainers(this._elementRef),n=`${this._cssClassPrefix}-${CT}`,o=od(this._injector,this.positionAtOrigin?A||this._elementRef:this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t).withPopoverLocation("global");return o.positionChanges.pipe(yt(this._destroyed)).subscribe(a=>{this._updateCurrentPositionClass(a.connectionPair),this._tooltipInstance&&a.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=Pg(this._injector,{direction:this._dir,positionStrategy:o,panelClass:this._overlayPanelClass?[...this._overlayPanelClass,n]:n,scrollStrategy:this._injector.get(ArA)(),disableAnimations:this._animationsDisabled,eventPredicate:this._overlayEventPredicate}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(yt(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(yt(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(yt(this._destroyed)).subscribe(a=>{a.preventDefault(),a.stopPropagation(),this._ngZone.run(()=>this.hide(0))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._dirSubscribed||(this._dirSubscribed=!0,this._dir.change.pipe(yt(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(A){let t=A.getConfig().positionStrategy,n=this._getOrigin(),o=this._getOverlayPosition();t.withPositions([this._addOffset(P(P({},n.main),o.main)),this._addOffset(P(P({},n.fallback),o.fallback))])}_addOffset(A){let t=nrA,n=!this._dir||this._dir.value=="ltr";return A.originY==="top"?A.offsetY=-t:A.originY==="bottom"?A.offsetY=t:A.originX==="start"?A.offsetX=n?-t:t:A.originX==="end"&&(A.offsetX=n?t:-t),A}_getOrigin(){let A=!this._dir||this._dir.value=="ltr",t=this.position,n;t=="above"||t=="below"?n={originX:"center",originY:t=="above"?"top":"bottom"}:t=="before"||t=="left"&&A||t=="right"&&!A?n={originX:"start",originY:"center"}:(t=="after"||t=="right"&&A||t=="left"&&!A)&&(n={originX:"end",originY:"center"});let{x:o,y:a}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:o,originY:a}}}_getOverlayPosition(){let A=!this._dir||this._dir.value=="ltr",t=this.position,n;t=="above"?n={overlayX:"center",overlayY:"bottom"}:t=="below"?n={overlayX:"center",overlayY:"top"}:t=="before"||t=="left"&&A||t=="right"&&!A?n={overlayX:"end",overlayY:"center"}:(t=="after"||t=="right"&&A||t=="left"&&!A)&&(n={overlayX:"start",overlayY:"center"});let{x:o,y:a}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:o,overlayY:a}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),ao(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(A){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=A instanceof Set?Array.from(A):A,this._tooltipInstance._markForCheck())}_invertPosition(A,t){return this.position==="above"||this.position==="below"?t==="top"?t="bottom":t==="bottom"&&(t="top"):A==="end"?A="start":A==="start"&&(A="end"),{x:A,y:t}}_updateCurrentPositionClass(A){let{overlayY:t,originX:n,originY:o}=A,a;if(t==="center"?this._dir&&this._dir.value==="rtl"?a=n==="end"?"left":"right":a=n==="start"?"left":"right":a=t==="bottom"&&o==="top"?"above":"below",a!==this._currentPosition){let r=this._overlayRef;if(r){let s=`${this._cssClassPrefix}-${CT}-`;r.removePanelClass(s+this._currentPosition),r.addPanelClass(s+a)}this._currentPosition=a}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._eventCleanups.length||(this._isTouchPlatform()?this.touchGestures!=="off"&&(this._disableNativeGesturesIfNecessary(),this._addListener("touchstart",A=>{let t=A.targetTouches?.[0],n=t?{x:t.clientX,y:t.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout);let o=500;this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,n)},this._defaultOptions?.touchLongPressShowDelay??o)})):this._addListener("mouseenter",A=>{this._setupPointerExitEventsIfNeeded();let t;A.x!==void 0&&A.y!==void 0&&(t=A),this.show(void 0,t)}))}_setupPointerExitEventsIfNeeded(){if(!this._pointerExitEventsInitialized){if(this._pointerExitEventsInitialized=!0,!this._isTouchPlatform())this._addListener("mouseleave",A=>{let t=A.relatedTarget;(!t||!this._overlayRef?.overlayElement.contains(t))&&this.hide()}),this._addListener("wheel",A=>{if(this._isTooltipVisible()){let t=this._document.elementFromPoint(A.clientX,A.clientY),n=this._elementRef.nativeElement;t!==n&&!n.contains(t)&&this.hide()}});else if(this.touchGestures!=="off"){this._disableNativeGesturesIfNecessary();let A=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions?.touchendHideDelay)};this._addListener("touchend",A),this._addListener("touchcancel",A)}}}_addListener(A,t){this._eventCleanups.push(this._renderer.listen(this._elementRef.nativeElement,A,t,trA))}_isTouchPlatform(){return this._platform.IOS||this._platform.ANDROID?!0:this._platform.isBrowser?!!this._defaultOptions?.detectHoverCapability&&this._mediaMatcher.matchMedia("(any-hover: none)").matches:!1}_disableNativeGesturesIfNecessary(){let A=this.touchGestures;if(A!=="off"){let t=this._elementRef.nativeElement,n=t.style;(A==="on"||t.nodeName!=="INPUT"&&t.nodeName!=="TEXTAREA")&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),(A==="on"||!t.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}_syncAriaDescription(A){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,A,"tooltip"),this._isDestroyed||ao({write:()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")}},{injector:this._injector}))}_overlayEventPredicate=A=>A.type==="keydown"?this._isTooltipVisible()&&A.keyCode===27&&!Sa(A):!0;static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(t,n){t&2&&_A("mat-mdc-tooltip-disabled",n.disabled)},inputs:{position:[0,"matTooltipPosition","position"],positionAtOrigin:[0,"matTooltipPositionAtOrigin","positionAtOrigin"],disabled:[0,"matTooltipDisabled","disabled"],showDelay:[0,"matTooltipShowDelay","showDelay"],hideDelay:[0,"matTooltipHideDelay","hideDelay"],touchGestures:[0,"matTooltipTouchGestures","touchGestures"],message:[0,"matTooltip","message"],tooltipClass:[0,"matTooltipClass","tooltipClass"]},exportAs:["matTooltip"]})}return i})(),dT=(()=>{class i{_changeDetectorRef=w(Mt);_elementRef=w(ce);_isMultiline=!1;message;tooltipClass;_showTimeoutId;_hideTimeoutId;_triggerElement;_mouseLeaveHideDelay;_animationsDisabled=In();_tooltip;_closeOnInteraction=!1;_isVisible=!1;_onHide=new ne;_showAnimation="mat-mdc-tooltip-show";_hideAnimation="mat-mdc-tooltip-hide";constructor(){}show(A){this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},A)}hide(A){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},A)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:A}){(!A||!this._triggerElement.contains(A))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){let A=this._elementRef.nativeElement.getBoundingClientRect();return A.height>orA&&A.width>=arA}_handleAnimationEnd({animationName:A}){(A===this._showAnimation||A===this._hideAnimation)&&this._finalizeAnimation(A===this._showAnimation)}_cancelPendingAnimations(){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(A){A?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(A){let t=this._tooltip.nativeElement,n=this._showAnimation,o=this._hideAnimation;if(t.classList.remove(A?o:n),t.classList.add(A?n:o),this._isVisible!==A&&(this._isVisible=A,this._changeDetectorRef.markForCheck()),A&&!this._animationsDisabled&&typeof getComputedStyle=="function"){let a=getComputedStyle(t);(a.getPropertyValue("animation-duration")==="0s"||a.getPropertyValue("animation-name")==="none")&&(this._animationsDisabled=!0)}A&&this._onShow(),this._animationsDisabled&&(t.classList.add("_mat-animation-noopable"),this._finalizeAnimation(A))}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-tooltip-component"]],viewQuery:function(t,n){if(t&1&&Wt(XaA,7),t&2){let o;se(o=le())&&(n._tooltip=o.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(t,n){t&1&&U("mouseleave",function(a){return n._handleMouseLeave(a)})},decls:4,vars:5,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(t,n){t&1&&(Ln(0,"div",1,0),yI("animationend",function(a){return n._handleAnimationEnd(a)}),Ln(2,"div",2),D(3),Xn()()),t&2&&(Ao(n.tooltipClass),_A("mdc-tooltip--multiline",n._isMultiline),Q(3),nA(n.message))},styles:[`.mat-mdc-tooltip{position:relative;transform:scale(0);display:inline-flex}.mat-mdc-tooltip::before{content:"";top:0;right:0;bottom:0;left:0;z-index:-1;position:absolute}.mat-mdc-tooltip-panel-below .mat-mdc-tooltip::before{top:-8px}.mat-mdc-tooltip-panel-above .mat-mdc-tooltip::before{bottom:-8px}.mat-mdc-tooltip-panel-right .mat-mdc-tooltip::before{left:-8px}.mat-mdc-tooltip-panel-left .mat-mdc-tooltip::before{right:-8px}.mat-mdc-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.mat-mdc-tooltip-surface{word-break:normal;overflow-wrap:anywhere;padding:4px 8px;min-width:40px;max-width:200px;min-height:24px;max-height:40vh;box-sizing:border-box;overflow:hidden;text-align:center;will-change:transform,opacity;background-color:var(--mat-tooltip-container-color, var(--mat-sys-inverse-surface));color:var(--mat-tooltip-supporting-text-color, var(--mat-sys-inverse-on-surface));border-radius:var(--mat-tooltip-container-shape, var(--mat-sys-corner-extra-small));font-family:var(--mat-tooltip-supporting-text-font, var(--mat-sys-body-small-font));font-size:var(--mat-tooltip-supporting-text-size, var(--mat-sys-body-small-size));font-weight:var(--mat-tooltip-supporting-text-weight, var(--mat-sys-body-small-weight));line-height:var(--mat-tooltip-supporting-text-line-height, var(--mat-sys-body-small-line-height));letter-spacing:var(--mat-tooltip-supporting-text-tracking, var(--mat-sys-body-small-tracking))}.mat-mdc-tooltip-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:left}[dir=rtl] .mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:right}.mat-mdc-tooltip-panel{line-height:normal}.mat-mdc-tooltip-panel.mat-mdc-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-mdc-tooltip-show{0%{opacity:0;transform:scale(0.8)}100%{opacity:1;transform:scale(1)}}@keyframes mat-mdc-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(0.8)}}.mat-mdc-tooltip-show{animation:mat-mdc-tooltip-show 150ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-mdc-tooltip-hide{animation:mat-mdc-tooltip-hide 75ms cubic-bezier(0.4, 0, 1, 1) forwards} -`],encapsulation:2,changeDetection:0})}return i})();var Ha=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[EQ,eg,Di,Vc]})}return i})();function rrA(i,e){if(i&1&&(I(0,"mat-option",17),D(1),h()),i&2){let A=e.$implicit;H("value",A),Q(),Ee(" ",A," ")}}function srA(i,e){if(i&1){let A=aA();I(0,"mat-form-field",14)(1,"mat-select",16,0),U("selectionChange",function(n){L(A);let o=p(2);return G(o._changePageSize(n.value))}),ke(3,rrA,2,2,"mat-option",17,ni),h(),I(5,"div",18),U("click",function(){L(A);let n=Bi(2);return G(n.open())}),h()()}if(i&2){let A=p(2);H("appearance",A._formFieldAppearance)("color",A.color),Q(),H("value",A.pageSize)("disabled",A.disabled),g3("aria-labelledby",A._pageSizeLabelId),H("panelClass",A.selectConfig.panelClass||"")("disableOptionCentering",A.selectConfig.disableOptionCentering),Q(2),_e(A._displayedPageSizeOptions)}}function lrA(i,e){if(i&1&&(I(0,"div",15),D(1),h()),i&2){let A=p(2);Q(),nA(A.pageSize)}}function grA(i,e){if(i&1&&(I(0,"div",3)(1,"div",13),D(2),h(),T(3,srA,6,7,"mat-form-field",14),T(4,lrA,2,1,"div",15),h()),i&2){let A=p();Q(),ie("id",A._pageSizeLabelId),Q(),Ee(" ",A._intl.itemsPerPageLabel," "),Q(),O(A._displayedPageSizeOptions.length>1?3:-1),Q(),O(A._displayedPageSizeOptions.length<=1?4:-1)}}function crA(i,e){if(i&1){let A=aA();I(0,"button",19),U("click",function(){L(A);let n=p();return G(n._buttonClicked(0,n._previousButtonsDisabled()))}),Et(),I(1,"svg",8),lA(2,"path",20),h()()}if(i&2){let A=p();H("matTooltip",A._intl.firstPageLabel)("matTooltipDisabled",A._previousButtonsDisabled())("disabled",A._previousButtonsDisabled())("tabindex",A._previousButtonsDisabled()?-1:null),ie("aria-label",A._intl.firstPageLabel)}}function CrA(i,e){if(i&1){let A=aA();I(0,"button",21),U("click",function(){L(A);let n=p();return G(n._buttonClicked(n.getNumberOfPages()-1,n._nextButtonsDisabled()))}),Et(),I(1,"svg",8),lA(2,"path",22),h()()}if(i&2){let A=p();H("matTooltip",A._intl.lastPageLabel)("matTooltipDisabled",A._nextButtonsDisabled())("disabled",A._nextButtonsDisabled())("tabindex",A._nextButtonsDisabled()?-1:null),ie("aria-label",A._intl.lastPageLabel)}}var rd=(()=>{class i{changes=new ne;itemsPerPageLabel="Items per page:";nextPageLabel="Next page";previousPageLabel="Previous page";firstPageLabel="First page";lastPageLabel="Last page";getRangeLabel=(A,t,n)=>{if(n==0||t==0)return`0 of ${n}`;n=Math.max(n,0);let o=A*t,a=o{class i{_intl=w(rd);_changeDetectorRef=w(Mt);_formFieldAppearance;_pageSizeLabelId=w(Dn).getId("mat-paginator-page-size-label-");_intlChanges;_isInitialized=!1;_initializedStream=new _g(1);color;get pageIndex(){return this._pageIndex}set pageIndex(A){this._pageIndex=Math.max(A||0,0),this._changeDetectorRef.markForCheck()}_pageIndex=0;get length(){return this._length}set length(A){this._length=A||0,this._changeDetectorRef.markForCheck()}_length=0;get pageSize(){return this._pageSize}set pageSize(A){this._pageSize=Math.max(A||0,0),this._updateDisplayedPageSizeOptions()}_pageSize;get pageSizeOptions(){return this._pageSizeOptions}set pageSizeOptions(A){this._pageSizeOptions=(A||[]).map(t=>yn(t,0)),this._updateDisplayedPageSizeOptions()}_pageSizeOptions=[];hidePageSize=!1;showFirstLastButtons=!1;selectConfig={};disabled=!1;page=new FA;_displayedPageSizeOptions;initialized=this._initializedStream;constructor(){let A=this._intl,t=w(IrA,{optional:!0});if(this._intlChanges=A.changes.subscribe(()=>this._changeDetectorRef.markForCheck()),t){let{pageSize:n,pageSizeOptions:o,hidePageSize:a,showFirstLastButtons:r}=t;n!=null&&(this._pageSize=n),o!=null&&(this._pageSizeOptions=o),a!=null&&(this.hidePageSize=a),r!=null&&(this.showFirstLastButtons=r)}this._formFieldAppearance=t?.formFieldAppearance||"outline"}ngOnInit(){this._isInitialized=!0,this._updateDisplayedPageSizeOptions(),this._initializedStream.next()}ngOnDestroy(){this._initializedStream.complete(),this._intlChanges.unsubscribe()}nextPage(){this.hasNextPage()&&this._navigate(this.pageIndex+1)}previousPage(){this.hasPreviousPage()&&this._navigate(this.pageIndex-1)}firstPage(){this.hasPreviousPage()&&this._navigate(0)}lastPage(){this.hasNextPage()&&this._navigate(this.getNumberOfPages()-1)}hasPreviousPage(){return this.pageIndex>=1&&this.pageSize!=0}hasNextPage(){let A=this.getNumberOfPages()-1;return this.pageIndexA-t),this._changeDetectorRef.markForCheck())}_emitPageEvent(A){this.page.emit({previousPageIndex:A,pageIndex:this.pageIndex,pageSize:this.pageSize,length:this.length})}_navigate(A){let t=this.pageIndex;A!==t&&(this.pageIndex=A,this._emitPageEvent(t))}_buttonClicked(A,t){t||this._navigate(A)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-paginator"]],hostAttrs:["role","group",1,"mat-mdc-paginator"],inputs:{color:"color",pageIndex:[2,"pageIndex","pageIndex",yn],length:[2,"length","length",yn],pageSize:[2,"pageSize","pageSize",yn],pageSizeOptions:"pageSizeOptions",hidePageSize:[2,"hidePageSize","hidePageSize",Qe],showFirstLastButtons:[2,"showFirstLastButtons","showFirstLastButtons",Qe],selectConfig:"selectConfig",disabled:[2,"disabled","disabled",Qe]},outputs:{page:"page"},exportAs:["matPaginator"],decls:14,vars:14,consts:[["selectRef",""],[1,"mat-mdc-paginator-outer-container"],[1,"mat-mdc-paginator-container"],[1,"mat-mdc-paginator-page-size"],[1,"mat-mdc-paginator-range-actions"],["aria-atomic","true","aria-live","polite","role","status",1,"mat-mdc-paginator-range-label"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","disabled","tabindex"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-previous",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["viewBox","0 0 24 24","focusable","false","aria-hidden","true",1,"mat-mdc-paginator-icon"],["d","M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-next",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["d","M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","disabled","tabindex"],["aria-hidden","true",1,"mat-mdc-paginator-page-size-label"],[1,"mat-mdc-paginator-page-size-select",3,"appearance","color"],[1,"mat-mdc-paginator-page-size-value"],["hideSingleSelectionIndicator","",3,"selectionChange","value","disabled","aria-labelledby","panelClass","disableOptionCentering"],[3,"value"],[1,"mat-mdc-paginator-touch-target",3,"click"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-first",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["d","M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-last",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["d","M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"]],template:function(t,n){t&1&&(I(0,"div",1)(1,"div",2),T(2,grA,5,4,"div",3),I(3,"div",4)(4,"div",5),D(5),h(),T(6,crA,3,5,"button",6),I(7,"button",7),U("click",function(){return n._buttonClicked(n.pageIndex-1,n._previousButtonsDisabled())}),Et(),I(8,"svg",8),lA(9,"path",9),h()(),hr(),I(10,"button",10),U("click",function(){return n._buttonClicked(n.pageIndex+1,n._nextButtonsDisabled())}),Et(),I(11,"svg",8),lA(12,"path",11),h()(),T(13,CrA,3,5,"button",12),h()()()),t&2&&(Q(2),O(n.hidePageSize?-1:2),Q(3),Ee(" ",n._intl.getRangeLabel(n.pageIndex,n.pageSize,n.length)," "),Q(),O(n.showFirstLastButtons?6:-1),Q(),H("matTooltip",n._intl.previousPageLabel)("matTooltipDisabled",n._previousButtonsDisabled())("disabled",n._previousButtonsDisabled())("tabindex",n._previousButtonsDisabled()?-1:null),ie("aria-label",n._intl.previousPageLabel),Q(3),H("matTooltip",n._intl.nextPageLabel)("matTooltipDisabled",n._nextButtonsDisabled())("disabled",n._nextButtonsDisabled())("tabindex",n._nextButtonsDisabled()?-1:null),ie("aria-label",n._intl.nextPageLabel),Q(3),O(n.showFirstLastButtons?13:-1))},dependencies:[Zo,ig,Vr,yi,rn],styles:[`.mat-mdc-paginator{display:block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-paginator-container-text-color, var(--mat-sys-on-surface));background-color:var(--mat-paginator-container-background-color, var(--mat-sys-surface));font-family:var(--mat-paginator-container-text-font, var(--mat-sys-body-small-font));line-height:var(--mat-paginator-container-text-line-height, var(--mat-sys-body-small-line-height));font-size:var(--mat-paginator-container-text-size, var(--mat-sys-body-small-size));font-weight:var(--mat-paginator-container-text-weight, var(--mat-sys-body-small-weight));letter-spacing:var(--mat-paginator-container-text-tracking, var(--mat-sys-body-small-tracking));--mat-form-field-container-height: var(--mat-paginator-form-field-container-height, 40px);--mat-form-field-container-vertical-padding: var(--mat-paginator-form-field-container-vertical-padding, 8px)}.mat-mdc-paginator .mat-mdc-select-value{font-size:var(--mat-paginator-select-trigger-text-size, var(--mat-sys-body-small-size))}.mat-mdc-paginator .mat-mdc-form-field-subscript-wrapper{display:none}.mat-mdc-paginator .mat-mdc-select{line-height:1.5}.mat-mdc-paginator-outer-container{display:flex}.mat-mdc-paginator-container{display:flex;align-items:center;justify-content:flex-end;padding:0 8px;flex-wrap:wrap;width:100%;min-height:var(--mat-paginator-container-size, 56px)}.mat-mdc-paginator-page-size{display:flex;align-items:baseline;margin-right:8px}[dir=rtl] .mat-mdc-paginator-page-size{margin-right:0;margin-left:8px}.mat-mdc-paginator-page-size-label{margin:0 4px}.mat-mdc-paginator-page-size-select{margin:0 4px;width:var(--mat-paginator-page-size-select-width, 84px)}.mat-mdc-paginator-range-label{margin:0 32px 0 24px}.mat-mdc-paginator-range-actions{display:flex;align-items:center}.mat-mdc-paginator-icon{display:inline-block;width:28px;fill:var(--mat-paginator-enabled-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button[aria-disabled] .mat-mdc-paginator-icon{fill:var(--mat-paginator-disabled-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}[dir=rtl] .mat-mdc-paginator-icon{transform:rotate(180deg)}@media(forced-colors: active){.mat-mdc-icon-button[aria-disabled] .mat-mdc-paginator-icon,.mat-mdc-paginator-icon{fill:currentColor}.mat-mdc-paginator-range-actions .mat-mdc-icon-button{outline:solid 1px}.mat-mdc-paginator-range-actions .mat-mdc-icon-button[aria-disabled]{color:GrayText}}.mat-mdc-paginator-touch-target{display:var(--mat-paginator-touch-target-display, block);position:absolute;top:50%;left:50%;width:var(--mat-paginator-page-size-select-width, 84px);height:var(--mat-paginator-page-size-select-touch-target-height, 48px);background-color:rgba(0,0,0,0);transform:translate(-50%, -50%);cursor:pointer} -`],encapsulation:2,changeDetection:0})}return i})();var IT=["*"],BrA=["content"],hrA=[[["mat-drawer"]],[["mat-drawer-content"]],"*"],ErA=["mat-drawer","mat-drawer-content","*"];function QrA(i,e){if(i&1){let A=aA();I(0,"div",1),U("click",function(){L(A);let n=p();return G(n._onBackdropClicked())}),h()}if(i&2){let A=p();_A("mat-drawer-shown",A._isShowingBackdrop())}}function urA(i,e){i&1&&(I(0,"mat-drawer-content"),Ze(1,2),h())}var prA=new MA("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:()=>!1}),BT=new MA("MAT_DRAWER_CONTAINER"),E7=(()=>{class i extends j0{_platform=w(Qi);_changeDetectorRef=w(Mt);_container=w(u7);constructor(){let A=w(ce),t=w(qc),n=w(We);super(A,t,n)}ngAfterContentInit(){this._container._contentMarginChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})}_shouldBeHidden(){if(this._platform.isBrowser)return!1;let{start:A,end:t}=this._container;return A!=null&&A.mode!=="over"&&A.opened||t!=null&&t.mode!=="over"&&t.opened}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:6,hostBindings:function(t,n){t&2&&(ft("margin-left",n._container._contentMargins.left,"px")("margin-right",n._container._contentMargins.right,"px"),_A("mat-drawer-content-hidden",n._shouldBeHidden()))},features:[pt([{provide:j0,useExisting:i}]),bt],ngContentSelectors:IT,decls:1,vars:0,template:function(t,n){t&1&&(Ot(),Ze(0))},encapsulation:2,changeDetection:0})}return i})(),Q7=(()=>{class i{_elementRef=w(ce);_focusTrapFactory=w(BQ);_focusMonitor=w(rr);_platform=w(Qi);_ngZone=w(We);_renderer=w(on);_interactivityChecker=w(UI);_doc=w(ci);_container=w(BT,{optional:!0});_focusTrap=null;_elementFocusedBeforeDrawerWasOpened=null;_eventCleanups;_isAttached=!1;_anchor=null;get position(){return this._position}set position(A){A=A==="end"?"end":"start",A!==this._position&&(this._isAttached&&this._updatePositionInParent(A),this._position=A,this.onPositionChanged.emit())}_position="start";get mode(){return this._mode}set mode(A){this._mode=A,this._updateFocusTrapState(),this._modeChanged.next()}_mode="over";get disableClose(){return this._disableClose}set disableClose(A){this._disableClose=kr(A)}_disableClose=!1;get autoFocus(){let A=this._autoFocus;return A??(this.mode==="side"?"dialog":"first-tabbable")}set autoFocus(A){(A==="true"||A==="false"||A==null)&&(A=kr(A)),this._autoFocus=A}_autoFocus;get opened(){return this._opened()}set opened(A){this.toggle(kr(A))}_opened=mA(!1);_openedVia=null;_animationStarted=new ne;_animationEnd=new ne;openedChange=new FA(!0);_openedStream=this.openedChange.pipe(Bt(A=>A),Se(()=>{}));openedStart=this._animationStarted.pipe(Bt(()=>this.opened),qE(void 0));_closedStream=this.openedChange.pipe(Bt(A=>!A),Se(()=>{}));closedStart=this._animationStarted.pipe(Bt(()=>!this.opened),qE(void 0));_destroyed=new ne;onPositionChanged=new FA;_content;_modeChanged=new ne;_injector=w(St);_changeDetectorRef=w(Mt);constructor(){this.openedChange.pipe(yt(this._destroyed)).subscribe(A=>{A?(this._elementFocusedBeforeDrawerWasOpened=this._doc.activeElement,this._takeFocus()):this._isFocusWithinDrawer()&&this._restoreFocus(this._openedVia||"program")}),this._eventCleanups=this._ngZone.runOutsideAngular(()=>{let A=this._renderer,t=this._elementRef.nativeElement;return[A.listen(t,"keydown",n=>{n.keyCode===27&&!this.disableClose&&!Sa(n)&&this._ngZone.run(()=>{this.close(),n.stopPropagation(),n.preventDefault()})}),A.listen(t,"transitionrun",this._handleTransitionEvent),A.listen(t,"transitionend",this._handleTransitionEvent),A.listen(t,"transitioncancel",this._handleTransitionEvent)]}),this._animationEnd.subscribe(()=>{this.openedChange.emit(this.opened)})}_forceFocus(A,t){this._interactivityChecker.isFocusable(A)||(A.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let n=()=>{o(),a(),A.removeAttribute("tabindex")},o=this._renderer.listen(A,"blur",n),a=this._renderer.listen(A,"mousedown",n)})),A.focus(t)}_focusByCssSelector(A,t){let n=this._elementRef.nativeElement.querySelector(A);n&&this._forceFocus(n,t)}_takeFocus(){if(!this._focusTrap)return;let A=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":ao(()=>{!this._focusTrap.focusInitialElement()&&typeof A.focus=="function"&&A.focus()},{injector:this._injector});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus);break}}_restoreFocus(A){this.autoFocus!=="dialog"&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,A):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}_isFocusWithinDrawer(){let A=this._doc.activeElement;return!!A&&this._elementRef.nativeElement.contains(A)}ngAfterViewInit(){this._isAttached=!0,this._position==="end"&&this._updatePositionInParent("end"),this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState())}ngOnDestroy(){this._eventCleanups.forEach(A=>A()),this._focusTrap?.destroy(),this._anchor?.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}open(A){return this.toggle(!0,A)}close(){return this.toggle(!1)}_closeViaBackdropClick(){return this._setOpen(!1,!0,"mouse")}toggle(A=!this.opened,t){A&&t&&(this._openedVia=t);let n=this._setOpen(A,!A&&this._isFocusWithinDrawer(),this._openedVia||"program");return A||(this._openedVia=null),n}_setOpen(A,t,n){return A===this.opened?Promise.resolve(A?"open":"close"):(this._opened.set(A),this._container?._transitionsEnabled?this._setIsAnimating(!0):setTimeout(()=>{this._animationStarted.next(),this._animationEnd.next()}),this._elementRef.nativeElement.classList.toggle("mat-drawer-opened",A),!A&&t&&this._restoreFocus(n),this._changeDetectorRef.markForCheck(),this._updateFocusTrapState(),new Promise(o=>{this.openedChange.pipe(Ro(1)).subscribe(a=>o(a?"open":"close"))}))}_setIsAnimating(A){this._elementRef.nativeElement.classList.toggle("mat-drawer-animating",A)}_getWidth(){return this._elementRef.nativeElement.offsetWidth||0}_updateFocusTrapState(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&!!this._container?._isShowingBackdrop())}_updatePositionInParent(A){if(!this._platform.isBrowser)return;let t=this._elementRef.nativeElement,n=t.parentNode;A==="end"?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),n.insertBefore(this._anchor,t)),n.appendChild(t)):this._anchor&&this._anchor.parentNode.insertBefore(t,this._anchor)}_handleTransitionEvent=A=>{let t=this._elementRef.nativeElement;A.target===t&&this._ngZone.run(()=>{A.type==="transitionrun"?this._animationStarted.next(A):(A.type==="transitionend"&&this._setIsAnimating(!1),this._animationEnd.next(A))})};static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-drawer"]],viewQuery:function(t,n){if(t&1&&Wt(BrA,5),t&2){let o;se(o=le())&&(n._content=o.first)}},hostAttrs:[1,"mat-drawer"],hostVars:12,hostBindings:function(t,n){t&2&&(ie("align",null)("tabIndex",n.mode!=="side"?"-1":null),ft("visibility",!n._container&&!n.opened?"hidden":null),_A("mat-drawer-end",n.position==="end")("mat-drawer-over",n.mode==="over")("mat-drawer-push",n.mode==="push")("mat-drawer-side",n.mode==="side"))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:IT,decls:3,vars:0,consts:[["content",""],["cdkScrollable","",1,"mat-drawer-inner-container"]],template:function(t,n){t&1&&(Ot(),I(0,"div",1,0),Ze(2),h())},dependencies:[j0],encapsulation:2,changeDetection:0})}return i})(),u7=(()=>{class i{_dir=w(No,{optional:!0});_element=w(ce);_ngZone=w(We);_changeDetectorRef=w(Mt);_animationDisabled=In();_transitionsEnabled=!1;_allDrawers;_drawers=new Rg;_content;_userContent;get start(){return this._start}get end(){return this._end}get autosize(){return this._autosize}set autosize(A){this._autosize=kr(A)}_autosize=w(prA);get hasBackdrop(){return this._drawerHasBackdrop(this._start)||this._drawerHasBackdrop(this._end)}set hasBackdrop(A){this._backdropOverride=A==null?null:kr(A)}_backdropOverride=null;backdropClick=new FA;_start=null;_end=null;_left=null;_right=null;_destroyed=new ne;_doCheckSubject=new ne;_contentMargins={left:null,right:null};_contentMarginChanges=new ne;get scrollable(){return this._userContent||this._content}_injector=w(St);constructor(){let A=w(Qi),t=w(Ns);this._dir?.change.pipe(yt(this._destroyed)).subscribe(()=>{this._validateDrawers(),this.updateContentMargins()}),t.change().pipe(yt(this._destroyed)).subscribe(()=>this.updateContentMargins()),!this._animationDisabled&&A.isBrowser&&this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._element.nativeElement.classList.add("mat-drawer-transition"),this._transitionsEnabled=!0},200)})}ngAfterContentInit(){this._allDrawers.changes.pipe(Yn(this._allDrawers),yt(this._destroyed)).subscribe(A=>{this._drawers.reset(A.filter(t=>!t._container||t._container===this)),this._drawers.notifyOnChanges()}),this._drawers.changes.pipe(Yn(null)).subscribe(()=>{this._validateDrawers(),this._drawers.forEach(A=>{this._watchDrawerToggle(A),this._watchDrawerPosition(A),this._watchDrawerMode(A)}),(!this._drawers.length||this._isDrawerOpen(this._start)||this._isDrawerOpen(this._end))&&this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(()=>{this._doCheckSubject.pipe(Os(10),yt(this._destroyed)).subscribe(()=>this.updateContentMargins())})}ngOnDestroy(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}open(){this._drawers.forEach(A=>A.open())}close(){this._drawers.forEach(A=>A.close())}updateContentMargins(){let A=0,t=0;if(this._left&&this._left.opened){if(this._left.mode=="side")A+=this._left._getWidth();else if(this._left.mode=="push"){let n=this._left._getWidth();A+=n,t-=n}}if(this._right&&this._right.opened){if(this._right.mode=="side")t+=this._right._getWidth();else if(this._right.mode=="push"){let n=this._right._getWidth();t+=n,A-=n}}A=A||null,t=t||null,(A!==this._contentMargins.left||t!==this._contentMargins.right)&&(this._contentMargins={left:A,right:t},this._ngZone.run(()=>this._contentMarginChanges.next(this._contentMargins)))}ngDoCheck(){this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(()=>this._doCheckSubject.next())}_watchDrawerToggle(A){A._animationStarted.pipe(yt(this._drawers.changes)).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),A.mode!=="side"&&A.openedChange.pipe(yt(this._drawers.changes)).subscribe(()=>this._setContainerClass(A.opened))}_watchDrawerPosition(A){A.onPositionChanged.pipe(yt(this._drawers.changes)).subscribe(()=>{ao({read:()=>this._validateDrawers()},{injector:this._injector})})}_watchDrawerMode(A){A._modeChanged.pipe(yt(Vi(this._drawers.changes,this._destroyed))).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()})}_setContainerClass(A){let t=this._element.nativeElement.classList,n="mat-drawer-container-has-open";A?t.add(n):t.remove(n)}_validateDrawers(){this._start=this._end=null,this._drawers.forEach(A=>{A.position=="end"?(this._end!=null,this._end=A):(this._start!=null,this._start=A)}),this._right=this._left=null,this._dir&&this._dir.value==="rtl"?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}_isPushed(){return this._isDrawerOpen(this._start)&&this._start.mode!="over"||this._isDrawerOpen(this._end)&&this._end.mode!="over"}_onBackdropClicked(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}_closeModalDrawersViaBackdrop(){[this._start,this._end].filter(A=>A&&!A.disableClose&&this._drawerHasBackdrop(A)).forEach(A=>A._closeViaBackdropClick())}_isShowingBackdrop(){return this._isDrawerOpen(this._start)&&this._drawerHasBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._drawerHasBackdrop(this._end)}_isDrawerOpen(A){return A!=null&&A.opened}_drawerHasBackdrop(A){return this._backdropOverride==null?!!A&&A.mode!=="side":this._backdropOverride}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-drawer-container"]],contentQueries:function(t,n,o){if(t&1&&ra(o,E7,5)(o,Q7,5),t&2){let a;se(a=le())&&(n._content=a.first),se(a=le())&&(n._allDrawers=a)}},viewQuery:function(t,n){if(t&1&&Wt(E7,5),t&2){let o;se(o=le())&&(n._userContent=o.first)}},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(t,n){t&2&&_A("mat-drawer-container-explicit-backdrop",n._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[pt([{provide:BT,useExisting:i}])],ngContentSelectors:ErA,decls:4,vars:2,consts:[[1,"mat-drawer-backdrop",3,"mat-drawer-shown"],[1,"mat-drawer-backdrop",3,"click"]],template:function(t,n){t&1&&(Ot(hrA),T(0,QrA,1,2,"div",0),Ze(1),Ze(2,1),T(3,urA,2,0,"mat-drawer-content")),t&2&&(O(n.hasBackdrop?0:-1),Q(3),O(n._content?-1:3))},dependencies:[E7],styles:[`.mat-drawer-container{position:relative;z-index:1;color:var(--mat-sidenav-content-text-color, var(--mat-sys-on-background));background-color:var(--mat-sidenav-content-background-color, var(--mat-sys-background));box-sizing:border-box;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible;background-color:var(--mat-sidenav-scrim-color, color-mix(in srgb, var(--mat-sys-neutral-variant20) 40%, transparent))}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}@media(forced-colors: active){.mat-drawer-backdrop{opacity:.5}}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-content.mat-drawer-content-hidden{opacity:0}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;color:var(--mat-sidenav-container-text-color, var(--mat-sys-on-surface-variant));box-shadow:var(--mat-sidenav-container-elevation-shadow, none);background-color:var(--mat-sidenav-container-background-color, var(--mat-sys-surface));border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));width:var(--mat-sidenav-container-width, 360px);display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}@media(forced-colors: active){.mat-drawer,[dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}}@media(forced-colors: active){[dir=rtl] .mat-drawer,.mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0);border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .mat-drawer{border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-left-radius:0;border-bottom-left-radius:0;left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-transition .mat-drawer{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating){visibility:hidden;box-shadow:none}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating) .mat-drawer-inner-container{display:none}.mat-drawer.mat-drawer-opened.mat-drawer-opened{transform:none}.mat-drawer-side{box-shadow:none;border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid}.mat-drawer-side.mat-drawer-end{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid;border-left:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto}.mat-sidenav-fixed{position:fixed} -`],encapsulation:2,changeDetection:0})}return i})();var frA=["determinateSpinner"];function mrA(i,e){if(i&1&&(Et(),I(0,"svg",11),lA(1,"circle",12),h()),i&2){let A=p();ie("viewBox",A._viewBox()),Q(),ft("stroke-dasharray",A._strokeCircumference(),"px")("stroke-dashoffset",A._strokeCircumference()/2,"px")("stroke-width",A._circleStrokeWidth(),"%"),ie("r",A._circleRadius())}}var wrA=new MA("mat-progress-spinner-default-options",{providedIn:"root",factory:()=>({diameter:hT})}),hT=100,yrA=10,Es=(()=>{class i{_elementRef=w(ce);_noopAnimations;get color(){return this._color||this._defaultColor}set color(A){this._color=A}_color;_defaultColor="primary";_determinateCircle;constructor(){let A=w(wrA),t=uQ(),n=this._elementRef.nativeElement;this._noopAnimations=t==="di-disabled"&&!!A&&!A._forceAnimations,this.mode=n.nodeName.toLowerCase()==="mat-spinner"?"indeterminate":"determinate",!this._noopAnimations&&t==="reduced-motion"&&n.classList.add("mat-progress-spinner-reduced-motion"),A&&(A.color&&(this.color=this._defaultColor=A.color),A.diameter&&(this.diameter=A.diameter),A.strokeWidth&&(this.strokeWidth=A.strokeWidth))}mode;get value(){return this.mode==="determinate"?this._value:0}set value(A){this._value=Math.max(0,Math.min(100,A||0))}_value=0;get diameter(){return this._diameter}set diameter(A){this._diameter=A||0}_diameter=hT;get strokeWidth(){return this._strokeWidth??this.diameter/10}set strokeWidth(A){this._strokeWidth=A||0}_strokeWidth;_circleRadius(){return(this.diameter-yrA)/2}_viewBox(){let A=this._circleRadius()*2+this.strokeWidth;return`0 0 ${A} ${A}`}_strokeCircumference(){return 2*Math.PI*this._circleRadius()}_strokeDashOffset(){return this.mode==="determinate"?this._strokeCircumference()*(100-this._value)/100:null}_circleStrokeWidth(){return this.strokeWidth/this.diameter*100}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-progress-spinner"],["mat-spinner"]],viewQuery:function(t,n){if(t&1&&Wt(frA,5),t&2){let o;se(o=le())&&(n._determinateCircle=o.first)}},hostAttrs:["role","progressbar","tabindex","-1",1,"mat-mdc-progress-spinner","mdc-circular-progress"],hostVars:18,hostBindings:function(t,n){t&2&&(ie("aria-valuemin",0)("aria-valuemax",100)("aria-valuenow",n.mode==="determinate"?n.value:null)("mode",n.mode),Ao("mat-"+n.color),ft("width",n.diameter,"px")("height",n.diameter,"px")("--mat-progress-spinner-size",n.diameter+"px")("--mat-progress-spinner-active-indicator-width",n.diameter+"px"),_A("_mat-animation-noopable",n._noopAnimations)("mdc-circular-progress--indeterminate",n.mode==="indeterminate"))},inputs:{color:"color",mode:"mode",value:[2,"value","value",yn],diameter:[2,"diameter","diameter",yn],strokeWidth:[2,"strokeWidth","strokeWidth",yn]},exportAs:["matProgressSpinner"],decls:14,vars:11,consts:[["circle",""],["determinateSpinner",""],["aria-hidden","true",1,"mdc-circular-progress__determinate-container"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__determinate-circle-graphic"],["cx","50%","cy","50%",1,"mdc-circular-progress__determinate-circle"],["aria-hidden","true",1,"mdc-circular-progress__indeterminate-container"],[1,"mdc-circular-progress__spinner-layer"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-left"],[3,"ngTemplateOutlet"],[1,"mdc-circular-progress__gap-patch"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-right"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__indeterminate-circle-graphic"],["cx","50%","cy","50%"]],template:function(t,n){if(t&1&&(kt(0,mrA,2,8,"ng-template",null,0,PC),I(2,"div",2,1),Et(),I(4,"svg",3),lA(5,"circle",4),h()(),hr(),I(6,"div",5)(7,"div",6)(8,"div",7),dn(9,8),h(),I(10,"div",9),dn(11,8),h(),I(12,"div",10),dn(13,8),h()()()),t&2){let o=Bi(1);Q(4),ie("viewBox",n._viewBox()),Q(),ft("stroke-dasharray",n._strokeCircumference(),"px")("stroke-dashoffset",n._strokeDashOffset(),"px")("stroke-width",n._circleStrokeWidth(),"%"),ie("r",n._circleRadius()),Q(4),H("ngTemplateOutlet",o),Q(2),H("ngTemplateOutlet",o),Q(2),H("ngTemplateOutlet",o)}},dependencies:[Uc],styles:[`.mat-mdc-progress-spinner{--mat-progress-spinner-animation-multiplier: 1;display:block;overflow:hidden;line-height:0;position:relative;direction:ltr;transition:opacity 250ms cubic-bezier(0.4, 0, 0.6, 1)}.mat-mdc-progress-spinner circle{stroke-width:var(--mat-progress-spinner-active-indicator-width, 4px)}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}}.mat-progress-spinner-reduced-motion{--mat-progress-spinner-animation-multiplier: 1.25}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1;animation:mdc-circular-progress-container-rotate calc(1568.2352941176ms*var(--mat-progress-spinner-animation-multiplier)) linear infinite}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:rgba(0,0,0,0)}.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--mat-progress-spinner-active-indicator-color, var(--mat-sys-primary))}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:CanvasText}}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate calc(5332ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}} -`],encapsulation:2,changeDetection:0})}return i})();var l2=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();function DrA(i,e){if(i&1){let A=aA();I(0,"div",1)(1,"button",2),U("click",function(){L(A);let n=p();return G(n.action())}),D(2),h()()}if(i&2){let A=p();Q(2),Ee(" ",A.data.action," ")}}var vrA=["label"];function brA(i,e){}var MrA=Math.pow(2,31)-1,ru=class{_overlayRef;instance;containerInstance;_afterDismissed=new ne;_afterOpened=new ne;_onAction=new ne;_durationTimeoutId;_dismissedByAction=!1;constructor(e,A){this._overlayRef=A,this.containerInstance=e,e._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete(),this.dismiss()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(e){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(e,MrA))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}},ET=new MA("MatSnackBarData"),hB=class{politeness="polite";announcementMessage="";viewContainerRef;duration=0;panelClass;direction;data=null;horizontalPosition="center";verticalPosition="bottom"},SrA=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matSnackBarLabel",""]],hostAttrs:[1,"mat-mdc-snack-bar-label","mdc-snackbar__label"]})}return i})(),krA=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matSnackBarActions",""]],hostAttrs:[1,"mat-mdc-snack-bar-actions","mdc-snackbar__actions"]})}return i})(),_rA=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matSnackBarAction",""]],hostAttrs:[1,"mat-mdc-snack-bar-action","mdc-snackbar__action"]})}return i})(),xrA=(()=>{class i{snackBarRef=w(ru);data=w(ET);constructor(){}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-mdc-simple-snack-bar"],exportAs:["matSnackBar"],decls:3,vars:2,consts:[["matSnackBarLabel",""],["matSnackBarActions",""],["matButton","","matSnackBarAction","",3,"click"]],template:function(t,n){t&1&&(I(0,"div",0),D(1),h(),T(2,DrA,3,1,"div",1)),t&2&&(Q(),Ee(" ",n.data.message,` -`),Q(),O(n.hasAction?2:-1))},dependencies:[ki,SrA,krA,_rA],styles:[`.mat-mdc-simple-snack-bar{display:flex}.mat-mdc-simple-snack-bar .mat-mdc-snack-bar-label{max-height:50vh;overflow:auto} -`],encapsulation:2,changeDetection:0})}return i})(),f7="_mat-snack-bar-enter",m7="_mat-snack-bar-exit",RrA=(()=>{class i extends n2{_ngZone=w(We);_elementRef=w(ce);_changeDetectorRef=w(Mt);_platform=w(Qi);_animationsDisabled=In();snackBarConfig=w(hB);_document=w(ci);_trackedModals=new Set;_enterFallback;_exitFallback;_injector=w(St);_announceDelay=150;_announceTimeoutId;_destroyed=!1;_portalOutlet;_onAnnounce=new ne;_onExit=new ne;_onEnter=new ne;_animationState="void";_live;_label;_role;_liveElementId=w(Dn).getId("mat-snack-bar-container-live-");constructor(){super();let A=this.snackBarConfig;A.politeness==="assertive"&&!A.announcementMessage?this._live="assertive":A.politeness==="off"?this._live="off":this._live="polite",this._platform.FIREFOX&&(this._live==="polite"&&(this._role="status"),this._live==="assertive"&&(this._role="alert"))}attachComponentPortal(A){this._assertNotAttached();let t=this._portalOutlet.attachComponentPortal(A);return this._afterPortalAttached(),t}attachTemplatePortal(A){this._assertNotAttached();let t=this._portalOutlet.attachTemplatePortal(A);return this._afterPortalAttached(),t}attachDomPortal=A=>{this._assertNotAttached();let t=this._portalOutlet.attachDomPortal(A);return this._afterPortalAttached(),t};onAnimationEnd(A){A===m7?this._completeExit():A===f7&&(clearTimeout(this._enterFallback),this._ngZone.run(()=>{this._onEnter.next(),this._onEnter.complete()}))}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.markForCheck(),this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce(),this._animationsDisabled?ao(()=>{this._ngZone.run(()=>queueMicrotask(()=>this.onAnimationEnd(f7)))},{injector:this._injector}):(clearTimeout(this._enterFallback),this._enterFallback=setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-snack-bar-fallback-visible"),this.onAnimationEnd(f7)},200)))}exit(){return this._destroyed?oe(void 0):(this._ngZone.run(()=>{this._animationState="hidden",this._changeDetectorRef.markForCheck(),this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._animationsDisabled?ao(()=>{this._ngZone.run(()=>queueMicrotask(()=>this.onAnimationEnd(m7)))},{injector:this._injector}):(clearTimeout(this._exitFallback),this._exitFallback=setTimeout(()=>this.onAnimationEnd(m7),200))}),this._onExit)}ngOnDestroy(){this._destroyed=!0,this._clearFromModals(),this._completeExit()}_completeExit(){clearTimeout(this._exitFallback),queueMicrotask(()=>{this._onExit.next(),this._onExit.complete()})}_afterPortalAttached(){let A=this._elementRef.nativeElement,t=this.snackBarConfig.panelClass;t&&(Array.isArray(t)?t.forEach(a=>A.classList.add(a)):A.classList.add(t)),this._exposeToModals();let n=this._label.nativeElement,o="mdc-snackbar__label";n.classList.toggle(o,!n.querySelector(`.${o}`))}_exposeToModals(){let A=this._liveElementId,t=this._document.querySelectorAll('body > .cdk-overlay-container [aria-modal="true"]');for(let n=0;n{let t=A.getAttribute("aria-owns");if(t){let n=t.replace(this._liveElementId,"").trim();n.length>0?A.setAttribute("aria-owns",n):A.removeAttribute("aria-owns")}}),this._trackedModals.clear()}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{if(this._destroyed)return;let A=this._elementRef.nativeElement,t=A.querySelector("[aria-hidden]"),n=A.querySelector("[aria-live]");if(t&&n){let o=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(o=document.activeElement),t.removeAttribute("aria-hidden"),n.appendChild(t),o?.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-snack-bar-container"]],viewQuery:function(t,n){if(t&1&&Wt(Ag,7)(vrA,7),t&2){let o;se(o=le())&&(n._portalOutlet=o.first),se(o=le())&&(n._label=o.first)}},hostAttrs:[1,"mdc-snackbar","mat-mdc-snack-bar-container"],hostVars:6,hostBindings:function(t,n){t&1&&U("animationend",function(a){return n.onAnimationEnd(a.animationName)})("animationcancel",function(a){return n.onAnimationEnd(a.animationName)}),t&2&&_A("mat-snack-bar-container-enter",n._animationState==="visible")("mat-snack-bar-container-exit",n._animationState==="hidden")("mat-snack-bar-container-animations-enabled",!n._animationsDisabled)},features:[bt],decls:6,vars:3,consts:[["label",""],[1,"mdc-snackbar__surface","mat-mdc-snackbar-surface"],[1,"mat-mdc-snack-bar-label"],["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(t,n){t&1&&(I(0,"div",1)(1,"div",2,0)(3,"div",3),kt(4,brA,0,0,"ng-template",4),h(),lA(5,"div"),h()()),t&2&&(Q(5),ie("aria-live",n._live)("role",n._role)("id",n._liveElementId))},dependencies:[Ag],styles:[`@keyframes _mat-snack-bar-enter{from{transform:scale(0.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes _mat-snack-bar-exit{from{opacity:1}to{opacity:0}}.mat-mdc-snack-bar-container{display:flex;align-items:center;justify-content:center;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);margin:8px}.mat-mdc-snack-bar-handset .mat-mdc-snack-bar-container{width:100vw}.mat-snack-bar-container-animations-enabled{opacity:0}.mat-snack-bar-container-animations-enabled.mat-snack-bar-fallback-visible{opacity:1}.mat-snack-bar-container-animations-enabled.mat-snack-bar-container-enter{animation:_mat-snack-bar-enter 150ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-snack-bar-container-animations-enabled.mat-snack-bar-container-exit{animation:_mat-snack-bar-exit 75ms cubic-bezier(0.4, 0, 1, 1) forwards}.mat-mdc-snackbar-surface{box-shadow:0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);display:flex;align-items:center;justify-content:flex-start;box-sizing:border-box;padding-left:0;padding-right:8px}[dir=rtl] .mat-mdc-snackbar-surface{padding-right:0;padding-left:8px}.mat-mdc-snack-bar-container .mat-mdc-snackbar-surface{min-width:344px;max-width:672px}.mat-mdc-snack-bar-handset .mat-mdc-snackbar-surface{width:100%;min-width:0}@media(forced-colors: active){.mat-mdc-snackbar-surface{outline:solid 1px}}.mat-mdc-snack-bar-container .mat-mdc-snackbar-surface{color:var(--mat-snack-bar-supporting-text-color, var(--mat-sys-inverse-on-surface));border-radius:var(--mat-snack-bar-container-shape, var(--mat-sys-corner-extra-small));background-color:var(--mat-snack-bar-container-color, var(--mat-sys-inverse-surface))}.mdc-snackbar__label{width:100%;flex-grow:1;box-sizing:border-box;margin:0;padding:14px 8px 14px 16px}[dir=rtl] .mdc-snackbar__label{padding-left:8px;padding-right:16px}.mat-mdc-snack-bar-container .mdc-snackbar__label{font-family:var(--mat-snack-bar-supporting-text-font, var(--mat-sys-body-medium-font));font-size:var(--mat-snack-bar-supporting-text-size, var(--mat-sys-body-medium-size));font-weight:var(--mat-snack-bar-supporting-text-weight, var(--mat-sys-body-medium-weight));line-height:var(--mat-snack-bar-supporting-text-line-height, var(--mat-sys-body-medium-line-height))}.mat-mdc-snack-bar-actions{display:flex;flex-shrink:0;align-items:center;box-sizing:border-box}.mat-mdc-snack-bar-handset,.mat-mdc-snack-bar-container,.mat-mdc-snack-bar-label{flex:1 1 auto}.mat-mdc-snack-bar-container .mat-mdc-button.mat-mdc-snack-bar-action:not(:disabled).mat-unthemed{color:var(--mat-snack-bar-button-color, var(--mat-sys-inverse-primary))}.mat-mdc-snack-bar-container .mat-mdc-button.mat-mdc-snack-bar-action:not(:disabled){--mat-button-text-state-layer-color: currentColor;--mat-button-text-ripple-color: currentColor}.mat-mdc-snack-bar-container .mat-mdc-button.mat-mdc-snack-bar-action:not(:disabled) .mat-ripple-element{opacity:.1} -`],encapsulation:2})}return i})(),NrA=new MA("mat-snack-bar-default-options",{providedIn:"root",factory:()=>new hB}),QT=(()=>{class i{_live=w(hQ);_injector=w(St);_breakpointObserver=w(IQ);_parentSnackBar=w(i,{optional:!0,skipSelf:!0});_defaultConfig=w(NrA);_animationsDisabled=In();_snackBarRefAtThisLevel=null;simpleSnackBarComponent=xrA;snackBarContainerComponent=RrA;handsetCssClass="mat-mdc-snack-bar-handset";get _openedSnackBarRef(){let A=this._parentSnackBar;return A?A._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(A){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=A:this._snackBarRefAtThisLevel=A}constructor(){}openFromComponent(A,t){return this._attach(A,t)}openFromTemplate(A,t){return this._attach(A,t)}open(A,t="",n){let o=P(P({},this._defaultConfig),n);return o.data={message:A,action:t},o.announcementMessage===A&&(o.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,o)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(A,t){let n=t&&t.viewContainerRef&&t.viewContainerRef.injector,o=St.create({parent:n||this._injector,providers:[{provide:hB,useValue:t}]}),a=new Fs(this.snackBarContainerComponent,t.viewContainerRef,o),r=A.attach(a);return r.instance.snackBarConfig=t,r.instance}_attach(A,t){let n=P(P(P({},new hB),this._defaultConfig),t),o=this._createOverlay(n),a=this._attachSnackBarContainer(o,n),r=new ru(a,o);if(A instanceof wo){let s=new jr(A,null,{$implicit:n.data,snackBarRef:r});r.instance=a.attachTemplatePortal(s)}else{let s=this._createInjector(n,r),l=new Fs(A,void 0,s),g=a.attachComponentPortal(l);r.instance=g.instance}return this._breakpointObserver.observe(NL.HandsetPortrait).pipe(yt(o.detachments())).subscribe(s=>{o.overlayElement.classList.toggle(this.handsetCssClass,s.matches)}),n.announcementMessage&&a._onAnnounce.subscribe(()=>{this._live.announce(n.announcementMessage,n.politeness)}),this._animateSnackBar(r,n),this._openedSnackBarRef=r,this._openedSnackBarRef}_animateSnackBar(A,t){A.afterDismissed().subscribe(()=>{this._openedSnackBarRef==A&&(this._openedSnackBarRef=null),t.announcementMessage&&this._live.clear()}),t.duration&&t.duration>0&&A.afterOpened().subscribe(()=>A._dismissAfter(t.duration)),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{A.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):A.containerInstance.enter()}_createOverlay(A){let t=new Hg;t.direction=A.direction;let n=o2(this._injector),o=A.direction==="rtl",a=A.horizontalPosition==="left"||A.horizontalPosition==="start"&&!o||A.horizontalPosition==="end"&&o,r=!a&&A.horizontalPosition!=="center";return a?n.left("0"):r?n.right("0"):n.centerHorizontally(),A.verticalPosition==="top"?n.top("0"):n.bottom("0"),t.positionStrategy=n,t.disableAnimations=this._animationsDisabled,Pg(this._injector,t)}_createInjector(A,t){let n=A&&A.viewContainerRef&&A.viewContainerRef.injector;return St.create({parent:n||this._injector,providers:[{provide:ru,useValue:t},{provide:ET,useValue:A.data}]})}static \u0275fac=function(t){return new(t||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();var Xc=class i{snackBar=w(QT);MAX_LENGTH=250;open(e,A,t){let n=this.truncate(e,this.MAX_LENGTH);return this.snackBar.open(n,A,t)}truncate(e,A){return e?e.length>A?e.substring(0,A)+"...":e:""}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var FrA=["*",[["mat-toolbar-row"]]],LrA=["*","mat-toolbar-row"],GrA=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]})}return i})(),uT=(()=>{class i{_elementRef=w(ce);_platform=w(Qi);_document=w(ci);color;_toolbarRows;constructor(){}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){this._toolbarRows.length}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-toolbar"]],contentQueries:function(t,n,o){if(t&1&&ra(o,GrA,5),t&2){let a;se(a=le())&&(n._toolbarRows=a)}},hostAttrs:[1,"mat-toolbar"],hostVars:6,hostBindings:function(t,n){t&2&&(Ao(n.color?"mat-"+n.color:""),_A("mat-toolbar-multiple-rows",n._toolbarRows.length>0)("mat-toolbar-single-row",n._toolbarRows.length===0))},inputs:{color:"color"},exportAs:["matToolbar"],ngContentSelectors:LrA,decls:2,vars:0,template:function(t,n){t&1&&(Ot(FrA),Ze(0),Ze(1,1))},styles:[`.mat-toolbar{background:var(--mat-toolbar-container-background-color, var(--mat-sys-surface));color:var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface))}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font-family:var(--mat-toolbar-title-text-font, var(--mat-sys-title-large-font));font-size:var(--mat-toolbar-title-text-size, var(--mat-sys-title-large-size));line-height:var(--mat-toolbar-title-text-line-height, var(--mat-sys-title-large-line-height));font-weight:var(--mat-toolbar-title-text-weight, var(--mat-sys-title-large-weight));letter-spacing:var(--mat-toolbar-title-text-tracking, var(--mat-sys-title-large-tracking));margin:0}@media(forced-colors: active){.mat-toolbar{outline:solid 1px}}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar .mat-mdc-button-base.mat-mdc-button-base.mat-unthemed{--mat-button-text-label-text-color: var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface));--mat-button-outlined-label-text-color: var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface))}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap;height:var(--mat-toolbar-standard-height, 64px)}@media(max-width: 599px){.mat-toolbar-row,.mat-toolbar-single-row{height:var(--mat-toolbar-mobile-height, 56px)}}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%;min-height:var(--mat-toolbar-standard-height, 64px)}@media(max-width: 599px){.mat-toolbar-multiple-rows{min-height:var(--mat-toolbar-mobile-height, 56px)}} -`],encapsulation:2,changeDetection:0})}return i})();var Rr=class i{static getBaseUrlWithoutPath(){let e=window.location.href;return new URL(e).origin+"/dev-ui/"}static getApiServerBaseUrl(){return window.runtimeConfig?.backendUrl||""}static getWSServerUrl(){let e=i.getApiServerBaseUrl();return!e||e==""?window.location.host:e.startsWith("http://")?e.slice(7):e.startsWith("https://")?e.slice(8):e}};var su=class{role;text;thought;isLoading;isEditing;evalStatus;failedMetric;attachments;renderedContent;a2uiData;textParts;executableCode;codeExecutionResult;event;inlineData;functionCalls;functionResponses;actualInvocationToolUses;expectedInvocationToolUses;actualFinalResponse;expectedFinalResponse;evalScore;evalThreshold;invocationIndex;finalResponsePartIndex;toolUseIndex;error;constructor(e){if(Object.assign(this,e),this.event?.actions)for(let[A,t]of Object.entries(this.event.actions))t!==null&&typeof t=="object"&&Object.keys(t).length===0&&delete this.event.actions[A]}get stateDelta(){return this.event?.actions?.stateDelta}get artifactDelta(){return this.event?.actions?.artifactDelta}get route(){return this.event?.actions?.route}get transferToAgent(){return this.event?.actions?.transferToAgent}get nodePath(){return this.event?.nodeInfo?.path||null}get bareNodePath(){let e=this.nodePath;return e?e.split("/").map(A=>A.split("@")[0]).join("/"):null}get author(){return this.event?.author??"root_agent"}};var el=new MA("AgentService");var $c=new MA("AgentBuilderService");var EB=new MA("ArtifactService");var QB=new MA("DownloadService");var A0=new MA("EvalService");var fm=new MA("EventService");var pT="edit_function_args";var fT="a2a_card",mT="tests",wT="eval_v2",Nr=new MA("FeatureFlagService");var uB=new MA("GraphService");var mm=new MA("LocalFileService");var Qs=new MA("SafeValuesService"),wm=class{openBase64InNewTab(e,A){try{if(!e)return;let t=e;if(e.startsWith("data:")&&e.includes(";base64,")&&(t=t.substring(t.indexOf(";base64,")+8)),!A||!t)return;let n=atob(t),o=new Array(n.length);for(let l=0;l{fetch(t,{method:"POST"}).then(o=>{if(!o.body){n.error("No response body");return}let a=o.body.getReader(),r=new TextDecoder("utf-8"),s=()=>{a.read().then(({done:l,value:g})=>{if(l){this.zone.run(()=>n.complete());return}let C=r.decode(g,{stream:!0});this.zone.run(()=>n.next(C)),s()}).catch(l=>{this.zone.run(()=>n.error(l))})};s()}).catch(o=>{this.zone.run(()=>n.error(o))})})}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var bm=class i{constructor(e,A){this.el=e;this.renderer=A}sideDrawerMinWidth=360;sideDrawerMaxWidth=window.innerWidth/2;resizeHandle=null;resizingEvent={isResizing:!1,startingCursorX:0,startingWidth:0};ngAfterViewInit(){this.sideDrawerMaxWidth=window.innerWidth/2,this.resizeHandle=document.getElementsByClassName("resize-handler")[0],this.resizeHandle&&this.renderer.listen(this.resizeHandle,"mousedown",e=>this.onResizeHandleMouseDown(e)),document.documentElement.style.setProperty("--side-drawer-width","480px"),this.renderer.setStyle(this.el.nativeElement,"width","var(--side-drawer-width)")}onResizeHandleMouseDown(e){this.resizingEvent={isResizing:!0,startingCursorX:e.clientX,startingWidth:this.sideDrawerWidth},e.preventDefault()}onMouseMove(e){if(!this.resizingEvent.isResizing)return;let A=e.clientX-this.resizingEvent.startingCursorX,t=this.resizingEvent.startingWidth+A;this.sideDrawerWidth=t,this.renderer.addClass(document.body,"resizing")}onMouseUp(){this.resizingEvent.isResizing=!1,this.renderer.removeClass(document.body,"resizing")}onResize(){this.sideDrawerMaxWidth=window.innerWidth/2,this.sideDrawerWidth=this.sideDrawerWidth}set sideDrawerWidth(e){let A=Math.min(Math.max(e,this.sideDrawerMinWidth),this.sideDrawerMaxWidth);document.documentElement.style.setProperty("--side-drawer-width",`${A}px`)}get sideDrawerWidth(){let e=getComputedStyle(document.documentElement).getPropertyValue("--side-drawer-width"),A=parseFloat(e);return isNaN(A)?480:A}static \u0275fac=function(A){return new(A||i)(st(ce),st(on))};static \u0275dir=VA({type:i,selectors:[["","appResizableDrawer",""]],hostBindings:function(A,t){A&1&&U("mousemove",function(o){return t.onMouseMove(o)},mI)("mouseup",function(){return t.onMouseUp()},mI)("resize",function(){return t.onResize()},Fg)}})};var Mm=Symbol.for("yaml.alias"),Sm=Symbol.for("yaml.document"),jg=Symbol.for("yaml.map"),w7=Symbol.for("yaml.pair"),_l=Symbol.for("yaml.scalar"),Z0=Symbol.for("yaml.seq"),Ks=Symbol.for("yaml.node.type"),rg=i=>!!i&&typeof i=="object"&&i[Ks]===Mm,Vg=i=>!!i&&typeof i=="object"&&i[Ks]===Sm,qg=i=>!!i&&typeof i=="object"&&i[Ks]===jg,Tn=i=>!!i&&typeof i=="object"&&i[Ks]===w7,sn=i=>!!i&&typeof i=="object"&&i[Ks]===_l,Wg=i=>!!i&&typeof i=="object"&&i[Ks]===Z0;function vo(i){if(i&&typeof i=="object")switch(i[Ks]){case jg:case Z0:return!0}return!1}function Pn(i){if(i&&typeof i=="object")switch(i[Ks]){case Mm:case jg:case _l:case Z0:return!0}return!1}var km=i=>(sn(i)||vo(i))&&!!i.anchor;var il=Symbol("break visit"),yT=Symbol("skip children"),e0=Symbol("remove node");function t0(i,e){let A=DT(e);Vg(i)?yB(null,i.contents,A,Object.freeze([i]))===e0&&(i.contents=null):yB(null,i,A,Object.freeze([]))}t0.BREAK=il;t0.SKIP=yT;t0.REMOVE=e0;function yB(i,e,A,t){let n=vT(i,e,A,t);if(Pn(n)||Tn(n))return bT(i,t,n),yB(i,n,A,t);if(typeof n!="symbol"){if(vo(e)){t=Object.freeze(t.concat(e));for(let o=0;oi.replace(/[!,[\]{}]/g,e=>KrA[e]),vB=(()=>{class i{constructor(A,t){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},i.defaultYaml,A),this.tags=Object.assign({},i.defaultTags,t)}clone(){let A=new i(this.yaml,this.tags);return A.docStart=this.docStart,A}atDocument(){let A=new i(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:i.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},i.defaultTags);break}return A}add(A,t){this.atNextDocument&&(this.yaml={explicit:i.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},i.defaultTags),this.atNextDocument=!1);let n=A.trim().split(/[ \t]+/),o=n.shift();switch(o){case"%TAG":{if(n.length!==2&&(t(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[a,r]=n;return this.tags[a]=r,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return t(0,"%YAML directive should contain exactly one part"),!1;let[a]=n;if(a==="1.1"||a==="1.2")return this.yaml.version=a,!0;{let r=/^\d+\.\d+$/.test(a);return t(6,`Unsupported YAML version ${a}`,r),!1}}default:return t(0,`Unknown directive ${o}`,!0),!1}}tagName(A,t){if(A==="!")return"!";if(A[0]!=="!")return t(`Not a valid tag: ${A}`),null;if(A[1]==="<"){let r=A.slice(2,-1);return r==="!"||r==="!!"?(t(`Verbatim tags aren't resolved, so ${A} is invalid.`),null):(A[A.length-1]!==">"&&t("Verbatim tags must end with a >"),r)}let[,n,o]=A.match(/^(.*!)([^!]*)$/s);o||t(`The ${A} tag has no suffix`);let a=this.tags[n];if(a)try{return a+decodeURIComponent(o)}catch(r){return t(String(r)),null}return n==="!"?A:(t(`Could not resolve tag: ${A}`),null)}tagString(A){for(let[t,n]of Object.entries(this.tags))if(A.startsWith(n))return t+UrA(A.substring(n.length));return A[0]==="!"?A:`!<${A}>`}toString(A){let t=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),o;if(A&&n.length>0&&Pn(A.contents)){let a={};t0(A.contents,(r,s)=>{Pn(s)&&s.tag&&(a[s.tag]=!0)}),o=Object.keys(a)}else o=[];for(let[a,r]of n)a==="!!"&&r==="tag:yaml.org,2002:"||(!A||o.some(s=>s.startsWith(r)))&&t.push(`%TAG ${a} ${r}`);return t.join(` -`)}}return i.defaultYaml={explicit:!1,version:"1.2"},i.defaultTags={"!!":"tag:yaml.org,2002:"},i})();function xm(i){if(/[\x00-\x19\s,[\]{}]/.test(i)){let A=`Anchor must not contain whitespace or control characters: ${JSON.stringify(i)}`;throw new Error(A)}return!0}function y7(i){let e=new Set;return t0(i,{Value(A,t){t.anchor&&e.add(t.anchor)}}),e}function D7(i,e){for(let A=1;;++A){let t=`${i}${A}`;if(!e.has(t))return t}}function MT(i,e){let A=[],t=new Map,n=null;return{onAnchor:o=>{A.push(o),n??(n=y7(i));let a=D7(e,n);return n.add(a),a},setAnchors:()=>{for(let o of A){let a=t.get(o);if(typeof a=="object"&&a.anchor&&(sn(a.node)||vo(a.node)))a.node.anchor=a.anchor;else{let r=new Error("Failed to resolve repeated object (this should not happen)");throw r.source=o,r}}},sourceObjects:t}}function C2(i,e,A,t){if(t&&typeof t=="object")if(Array.isArray(t))for(let n=0,o=t.length;npr(t,String(n),A));if(i&&typeof i.toJSON=="function"){if(!A||!km(i))return i.toJSON(e,A);let t={aliasCount:0,count:1,res:void 0};A.anchors.set(i,t),A.onCreate=o=>{t.res=o,delete A.onCreate};let n=i.toJSON(e,A);return A.onCreate&&A.onCreate(n),n}return typeof i=="bigint"&&!A?.keep?Number(i):i}var d2=class{constructor(e){Object.defineProperty(this,Ks,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:A,maxAliasCount:t,onAnchor:n,reviver:o}={}){if(!Vg(e))throw new TypeError("A document argument is required");let a={anchors:new Map,doc:e,keep:!0,mapAsMap:A===!0,mapKeyWarned:!1,maxAliasCount:typeof t=="number"?t:100},r=pr(this,"",a);if(typeof n=="function")for(let{count:s,res:l}of a.anchors.values())n(l,s);return typeof o=="function"?C2(o,{"":r},"",r):r}};var X0=class extends d2{constructor(e){super(Mm),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e,A){let t;A?.aliasResolveCache?t=A.aliasResolveCache:(t=[],t0(e,{Node:(o,a)=>{(rg(a)||km(a))&&t.push(a)}}),A&&(A.aliasResolveCache=t));let n;for(let o of t){if(o===this)break;o.anchor===this.source&&(n=o)}return n}toJSON(e,A){if(!A)return{source:this.source};let{anchors:t,doc:n,maxAliasCount:o}=A,a=this.resolve(n,A);if(!a){let s=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(s)}let r=t.get(a);if(r||(pr(a,null,A),r=t.get(a)),r?.res===void 0){let s="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(s)}if(o>=0&&(r.count+=1,r.aliasCount===0&&(r.aliasCount=Rm(n,a,t)),r.count*r.aliasCount>o)){let s="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(s)}return r.res}toString(e,A,t){let n=`*${this.source}`;if(e){if(xm(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(e.implicitKey)return`${n} `}return n}};function Rm(i,e,A){if(rg(e)){let t=e.resolve(i),n=A&&t&&A.get(t);return n?n.count*n.aliasCount:0}else if(vo(e)){let t=0;for(let n of e.items){let o=Rm(i,n,A);o>t&&(t=o)}return t}else if(Tn(e)){let t=Rm(i,e.key,A),n=Rm(i,e.value,A);return Math.max(t,n)}return 1}var Nm=i=>!i||typeof i!="function"&&typeof i!="object",$t=(()=>{class i extends d2{constructor(A){super(_l),this.value=A}toJSON(A,t){return t?.keep?this.value:pr(this.value,A,t)}toString(){return String(this.value)}}return i.BLOCK_FOLDED="BLOCK_FOLDED",i.BLOCK_LITERAL="BLOCK_LITERAL",i.PLAIN="PLAIN",i.QUOTE_DOUBLE="QUOTE_DOUBLE",i.QUOTE_SINGLE="QUOTE_SINGLE",i})();var TrA="tag:yaml.org,2002:";function OrA(i,e,A){if(e){let t=A.filter(o=>o.tag===e),n=t.find(o=>!o.format)??t[0];if(!n)throw new Error(`Tag ${e} not found`);return n}return A.find(t=>t.identify?.(i)&&!t.format)}function $0(i,e,A){if(Vg(i)&&(i=i.contents),Pn(i))return i;if(Tn(i)){let C=A.schema[jg].createNode?.(A.schema,null,A);return C.items.push(i),C}(i instanceof String||i instanceof Number||i instanceof Boolean||typeof BigInt<"u"&&i instanceof BigInt)&&(i=i.valueOf());let{aliasDuplicateObjects:t,onAnchor:n,onTagObj:o,schema:a,sourceObjects:r}=A,s;if(t&&i&&typeof i=="object"){if(s=r.get(i),s)return s.anchor??(s.anchor=n(i)),new X0(s.anchor);s={anchor:null,node:null},r.set(i,s)}e?.startsWith("!!")&&(e=TrA+e.slice(2));let l=OrA(i,e,a.tags);if(!l){if(i&&typeof i.toJSON=="function"&&(i=i.toJSON()),!i||typeof i!="object"){let C=new $t(i);return s&&(s.node=C),C}l=i instanceof Map?a[jg]:Symbol.iterator in Object(i)?a[Z0]:a[jg]}o&&(o(l),delete A.onTagObj);let g=l?.createNode?l.createNode(A.schema,i,A):typeof l?.nodeClass?.from=="function"?l.nodeClass.from(A.schema,i,A):new $t(i);return e?g.tag=e:l.default||(g.tag=l.tag),s&&(s.node=g),g}function lu(i,e,A){let t=A;for(let n=e.length-1;n>=0;--n){let o=e[n];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let a=[];a[o]=t,t=a}else t=new Map([[o,t]])}return $0(t,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:i,sourceObjects:new Map})}var MB=i=>i==null||typeof i=="object"&&!!i[Symbol.iterator]().next().done,bB=class extends d2{constructor(e,A){super(e),Object.defineProperty(this,"schema",{value:A,configurable:!0,enumerable:!1,writable:!0})}clone(e){let A=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(A.schema=e),A.items=A.items.map(t=>Pn(t)||Tn(t)?t.clone(e):t),this.range&&(A.range=this.range.slice()),A}addIn(e,A){if(MB(e))this.add(A);else{let[t,...n]=e,o=this.get(t,!0);if(vo(o))o.addIn(n,A);else if(o===void 0&&this.schema)this.set(t,lu(this.schema,n,A));else throw new Error(`Expected YAML collection at ${t}. Remaining path: ${n}`)}}deleteIn(e){let[A,...t]=e;if(t.length===0)return this.delete(A);let n=this.get(A,!0);if(vo(n))return n.deleteIn(t);throw new Error(`Expected YAML collection at ${A}. Remaining path: ${t}`)}getIn(e,A){let[t,...n]=e,o=this.get(t,!0);return n.length===0?!A&&sn(o)?o.value:o:vo(o)?o.getIn(n,A):void 0}hasAllNullValues(e){return this.items.every(A=>{if(!Tn(A))return!1;let t=A.value;return t==null||e&&sn(t)&&t.value==null&&!t.commentBefore&&!t.comment&&!t.tag})}hasIn(e){let[A,...t]=e;if(t.length===0)return this.has(A);let n=this.get(A,!0);return vo(n)?n.hasIn(t):!1}setIn(e,A){let[t,...n]=e;if(n.length===0)this.set(t,A);else{let o=this.get(t,!0);if(vo(o))o.setIn(n,A);else if(o===void 0&&this.schema)this.set(t,lu(this.schema,n,A));else throw new Error(`Expected YAML collection at ${t}. Remaining path: ${n}`)}}};var ST=i=>i.replace(/^(?!$)(?: $)?/gm,"#");function sg(i,e){return/^\n+$/.test(i)?i.substring(1):e?i.replace(/^(?! *$)/gm,e):i}var i0=(i,e,A)=>i.endsWith(` -`)?sg(A,e):A.includes(` -`)?` -`+sg(A,e):(i.endsWith(" ")?"":" ")+A;var v7="flow",Fm="block",gu="quoted";function cu(i,e,A="flow",{indentAtStart:t,lineWidth:n=80,minContentWidth:o=20,onFold:a,onOverflow:r}={}){if(!n||n<0)return i;nn-Math.max(2,o)?l.push(0):C=n-t);let d,B,u=!1,E=-1,f=-1,m=-1;A===Fm&&(E=kT(i,E,e.length),E!==-1&&(C=E+s));for(let S;S=i[E+=1];){if(A===gu&&S==="\\"){switch(f=E,i[E+1]){case"x":E+=3;break;case"u":E+=5;break;case"U":E+=9;break;default:E+=1}m=E}if(S===` -`)A===Fm&&(E=kT(i,E,e.length)),C=E+e.length+s,d=void 0;else{if(S===" "&&B&&B!==" "&&B!==` -`&&B!==" "){let k=i[E+1];k&&k!==" "&&k!==` -`&&k!==" "&&(d=E)}if(E>=C)if(d)l.push(d),C=d+s,d=void 0;else if(A===gu){for(;B===" "||B===" ";)B=S,S=i[E+=1],u=!0;let k=E>m+1?E-2:f-1;if(g[k])return i;l.push(k),g[k]=!0,C=k+s,d=void 0}else u=!0}B=S}if(u&&r&&r(),l.length===0)return i;a&&a();let v=i.slice(0,l[0]);for(let S=0;S({indentAtStart:e?i.indent.length:i.indentAtStart,lineWidth:i.options.lineWidth,minContentWidth:i.options.minContentWidth}),Km=i=>/^(%|---|\.\.\.)/m.test(i);function JrA(i,e,A){if(!e||e<0)return!1;let t=e-A,n=i.length;if(n<=t)return!1;for(let o=0,a=0;ot)return!0;if(a=o+1,n-a<=t)return!1}return!0}function Cu(i,e){let A=JSON.stringify(i);if(e.options.doubleQuotedAsJSON)return A;let{implicitKey:t}=e,n=e.options.doubleQuotedMinMultiLineLength,o=e.indent||(Km(i)?" ":""),a="",r=0;for(let s=0,l=A[s];l;l=A[++s])if(l===" "&&A[s+1]==="\\"&&A[s+2]==="n"&&(a+=A.slice(r,s)+"\\ ",s+=1,r=s,l="\\"),l==="\\")switch(A[s+1]){case"u":{a+=A.slice(r,s);let g=A.substr(s+2,4);switch(g){case"0000":a+="\\0";break;case"0007":a+="\\a";break;case"000b":a+="\\v";break;case"001b":a+="\\e";break;case"0085":a+="\\N";break;case"00a0":a+="\\_";break;case"2028":a+="\\L";break;case"2029":a+="\\P";break;default:g.substr(0,2)==="00"?a+="\\x"+g.substr(2):a+=A.substr(s,6)}s+=5,r=s+1}break;case"n":if(t||A[s+2]==='"'||A.length -`;let C,d;for(d=A.length;d>0;--d){let M=A[d-1];if(M!==` -`&&M!==" "&&M!==" ")break}let B=A.substring(d),u=B.indexOf(` -`);u===-1?C="-":A===B||u!==B.length-1?(C="+",o&&o()):C="",B&&(A=A.slice(0,-B.length),B[B.length-1]===` -`&&(B=B.slice(0,-1)),B=B.replace(M7,`$&${l}`));let E=!1,f,m=-1;for(f=0;f{x=!0});let z=cu(`${v}${M}${B}`,l,Fm,F);if(!x)return`>${k} -${l}${z}`}return A=A.replace(/\n+/g,`$&${l}`),`|${k} -${l}${v}${A}${B}`}function YrA(i,e,A,t){let{type:n,value:o}=i,{actualString:a,implicitKey:r,indent:s,indentStep:l,inFlow:g}=e;if(r&&o.includes(` -`)||g&&/[[\]{},]/.test(o))return SB(o,e);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return r||g||!o.includes(` -`)?SB(o,e):Lm(i,e,A,t);if(!r&&!g&&n!==$t.PLAIN&&o.includes(` -`))return Lm(i,e,A,t);if(Km(o)){if(s==="")return e.forceBlockIndent=!0,Lm(i,e,A,t);if(r&&s===l)return SB(o,e)}let C=o.replace(/\n+/g,`$& -${s}`);if(a){let d=E=>E.default&&E.tag!=="tag:yaml.org,2002:str"&&E.test?.test(C),{compat:B,tags:u}=e.doc.schema;if(u.some(d)||B?.some(d))return SB(o,e)}return r?C:cu(C,s,v7,Gm(e,!1))}function sd(i,e,A,t){let{implicitKey:n,inFlow:o}=e,a=typeof i.value=="string"?i:Object.assign({},i,{value:String(i.value)}),{type:r}=i;r!==$t.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(a.value)&&(r=$t.QUOTE_DOUBLE);let s=g=>{switch(g){case $t.BLOCK_FOLDED:case $t.BLOCK_LITERAL:return n||o?SB(a.value,e):Lm(a,e,A,t);case $t.QUOTE_DOUBLE:return Cu(a.value,e);case $t.QUOTE_SINGLE:return b7(a.value,e);case $t.PLAIN:return YrA(a,e,A,t);default:return null}},l=s(r);if(l===null){let{defaultKeyType:g,defaultStringType:C}=e.options,d=n&&g||C;if(l=s(d),l===null)throw new Error(`Unsupported default string type ${d}`)}return l}function Um(i,e){let A=Object.assign({blockQuote:!0,commentString:ST,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},i.schema.toStringOptions,e),t;switch(A.collectionStyle){case"block":t=!1;break;case"flow":t=!0;break;default:t=null}return{anchors:new Set,doc:i,flowCollectionPadding:A.flowCollectionPadding?" ":"",indent:"",indentStep:typeof A.indent=="number"?" ".repeat(A.indent):" ",inFlow:t,options:A}}function HrA(i,e){if(e.tag){let n=i.filter(o=>o.tag===e.tag);if(n.length>0)return n.find(o=>o.format===e.format)??n[0]}let A,t;if(sn(e)){t=e.value;let n=i.filter(o=>o.identify?.(t));if(n.length>1){let o=n.filter(a=>a.test);o.length>0&&(n=o)}A=n.find(o=>o.format===e.format)??n.find(o=>!o.format)}else t=e,A=i.find(n=>n.nodeClass&&t instanceof n.nodeClass);if(!A){let n=t?.constructor?.name??(t===null?"null":typeof t);throw new Error(`Tag not resolved for ${n} value`)}return A}function zrA(i,e,{anchors:A,doc:t}){if(!t.directives)return"";let n=[],o=(sn(i)||vo(i))&&i.anchor;o&&xm(o)&&(A.add(o),n.push(`&${o}`));let a=i.tag??(e.default?null:e.tag);return a&&n.push(t.directives.tagString(a)),n.join(" ")}function AC(i,e,A,t){if(Tn(i))return i.toString(e,A,t);if(rg(i)){if(e.doc.directives)return i.toString(e);if(e.resolvedAliases?.has(i))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(i):e.resolvedAliases=new Set([i]),i=i.resolve(e.doc)}let n,o=Pn(i)?i:e.doc.createNode(i,{onTagObj:s=>n=s});n??(n=HrA(e.doc.schema.tags,o));let a=zrA(o,n,e);a.length>0&&(e.indentAtStart=(e.indentAtStart??0)+a.length+1);let r=typeof n.stringify=="function"?n.stringify(o,e,A,t):sn(o)?sd(o,e,A,t):o.toString(e,A,t);return a?sn(o)||r[0]==="{"||r[0]==="["?`${a} ${r}`:`${a} -${e.indent}${r}`:r}function _T({key:i,value:e},A,t,n){let{allNullValues:o,doc:a,indent:r,indentStep:s,options:{commentString:l,indentSeq:g,simpleKeys:C}}=A,d=Pn(i)&&i.comment||null;if(C){if(d)throw new Error("With simple keys, key nodes cannot have comments");if(vo(i)||!Pn(i)&&typeof i=="object"){let F="With simple keys, collection cannot be used as a key value";throw new Error(F)}}let B=!C&&(!i||d&&e==null&&!A.inFlow||vo(i)||(sn(i)?i.type===$t.BLOCK_FOLDED||i.type===$t.BLOCK_LITERAL:typeof i=="object"));A=Object.assign({},A,{allNullValues:!1,implicitKey:!B&&(C||!o),indent:r+s});let u=!1,E=!1,f=AC(i,A,()=>u=!0,()=>E=!0);if(!B&&!A.inFlow&&f.length>1024){if(C)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");B=!0}if(A.inFlow){if(o||e==null)return u&&t&&t(),f===""?"?":B?`? ${f}`:f}else if(o&&!C||e==null&&B)return f=`? ${f}`,d&&!u?f+=i0(f,A.indent,l(d)):E&&n&&n(),f;u&&(d=null),B?(d&&(f+=i0(f,A.indent,l(d))),f=`? ${f} -${r}:`):(f=`${f}:`,d&&(f+=i0(f,A.indent,l(d))));let m,v,S;Pn(e)?(m=!!e.spaceBefore,v=e.commentBefore,S=e.comment):(m=!1,v=null,S=null,e&&typeof e=="object"&&(e=a.createNode(e))),A.implicitKey=!1,!B&&!d&&sn(e)&&(A.indentAtStart=f.length+1),E=!1,!g&&s.length>=2&&!A.inFlow&&!B&&Wg(e)&&!e.flow&&!e.tag&&!e.anchor&&(A.indent=A.indent.substring(2));let k=!1,M=AC(e,A,()=>k=!0,()=>E=!0),x=" ";if(d||m||v){if(x=m?` -`:"",v){let F=l(v);x+=` -${sg(F,A.indent)}`}M===""&&!A.inFlow?x===` -`&&S&&(x=` - -`):x+=` -${A.indent}`}else if(!B&&vo(e)){let F=M[0],z=M.indexOf(` -`),j=z!==-1,X=A.inFlow??e.flow??e.items.length===0;if(j||!X){let eA=!1;if(j&&(F==="&"||F==="!")){let Z=M.indexOf(" ");F==="&"&&Z!==-1&&Zi===Om||typeof i=="symbol"&&i.description===Om,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new $t(Symbol(Om)),{addToJSMap:k7}),stringify:()=>Om},xT=(i,e)=>(Zg.identify(e)||sn(e)&&(!e.type||e.type===$t.PLAIN)&&Zg.identify(e.value))&&i?.doc.schema.tags.some(A=>A.tag===Zg.tag&&A.default);function k7(i,e,A){if(A=i&&rg(A)?A.resolve(i.doc):A,Wg(A))for(let t of A.items)S7(i,e,t);else if(Array.isArray(A))for(let t of A)S7(i,e,t);else S7(i,e,A)}function S7(i,e,A){let t=i&&rg(A)?A.resolve(i.doc):A;if(!qg(t))throw new Error("Merge sources must be maps or map aliases");let n=t.toJSON(null,i,Map);for(let[o,a]of n)e instanceof Map?e.has(o)||e.set(o,a):e instanceof Set?e.add(o):Object.prototype.hasOwnProperty.call(e,o)||Object.defineProperty(e,o,{value:a,writable:!0,enumerable:!0,configurable:!0});return e}function Jm(i,e,{key:A,value:t}){if(Pn(A)&&A.addToJSMap)A.addToJSMap(i,e,t);else if(xT(i,A))k7(i,e,t);else{let n=pr(A,"",i);if(e instanceof Map)e.set(n,pr(t,n,i));else if(e instanceof Set)e.add(n);else{let o=PrA(A,n,i),a=pr(t,o,i);o in e?Object.defineProperty(e,o,{value:a,writable:!0,enumerable:!0,configurable:!0}):e[o]=a}}return e}function PrA(i,e,A){if(e===null)return"";if(typeof e!="object")return String(e);if(Pn(i)&&A?.doc){let t=Um(A.doc,{});t.anchors=new Set;for(let o of A.anchors.keys())t.anchors.add(o.anchor);t.inFlow=!0,t.inStringifyKey=!0;let n=i.toString(t);if(!A.mapKeyWarned){let o=JSON.stringify(n);o.length>40&&(o=o.substring(0,36)+'..."'),Tm(A.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),A.mapKeyWarned=!0}return n}return JSON.stringify(e)}function kB(i,e,A){let t=$0(i,void 0,A),n=$0(e,void 0,A);return new za(t,n)}var za=class i{constructor(e,A=null){Object.defineProperty(this,Ks,{value:w7}),this.key=e,this.value=A}clone(e){let{key:A,value:t}=this;return Pn(A)&&(A=A.clone(e)),Pn(t)&&(t=t.clone(e)),new i(A,t)}toJSON(e,A){let t=A?.mapAsMap?new Map:{};return Jm(A,t,this)}toString(e,A,t){return e?.doc?_T(this,e,A,t):JSON.stringify(this)}};function Hm(i,e,A){return(e.inFlow??i.flow?VrA:jrA)(i,e,A)}function jrA({comment:i,items:e},A,{blockItemPrefix:t,flowChars:n,itemIndent:o,onChompKeep:a,onComment:r}){let{indent:s,options:{commentString:l}}=A,g=Object.assign({},A,{indent:o,type:null}),C=!1,d=[];for(let u=0;uf=null,()=>C=!0);f&&(m+=i0(m,o,l(f))),C&&f&&(C=!1),d.push(t+m)}let B;if(d.length===0)B=n.start+n.end;else{B=d[0];for(let u=1;uf=null);ug||m.includes(` -`))&&(l=!0),C.push(m),g=C.length}let{start:d,end:B}=A;if(C.length===0)return d+B;if(!l){let u=C.reduce((E,f)=>E+f.length+2,2);l=e.options.lineWidth>0&&u>e.options.lineWidth}if(l){let u=d;for(let E of C)u+=E?` -${o}${n}${E}`:` -`;return`${u} -${n}${B}`}else return`${d}${a}${C.join(" ")}${a}${B}`}function Ym({indent:i,options:{commentString:e}},A,t,n){if(t&&n&&(t=t.replace(/^\n+/,"")),t){let o=sg(e(t),i);A.push(o.trimStart())}}function I2(i,e){let A=sn(e)?e.value:e;for(let t of i)if(Tn(t)&&(t.key===e||t.key===A||sn(t.key)&&t.key.value===A))return t}var $a=class extends bB{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(jg,e),this.items=[]}static from(e,A,t){let{keepUndefined:n,replacer:o}=t,a=new this(e),r=(s,l)=>{if(typeof o=="function")l=o.call(A,s,l);else if(Array.isArray(o)&&!o.includes(s))return;(l!==void 0||n)&&a.items.push(kB(s,l,t))};if(A instanceof Map)for(let[s,l]of A)r(s,l);else if(A&&typeof A=="object")for(let s of Object.keys(A))r(s,A[s]);return typeof e.sortMapEntries=="function"&&a.items.sort(e.sortMapEntries),a}add(e,A){let t;Tn(e)?t=e:!e||typeof e!="object"||!("key"in e)?t=new za(e,e?.value):t=new za(e.key,e.value);let n=I2(this.items,t.key),o=this.schema?.sortMapEntries;if(n){if(!A)throw new Error(`Key ${t.key} already set`);sn(n.value)&&Nm(t.value)?n.value.value=t.value:n.value=t.value}else if(o){let a=this.items.findIndex(r=>o(t,r)<0);a===-1?this.items.push(t):this.items.splice(a,0,t)}else this.items.push(t)}delete(e){let A=I2(this.items,e);return A?this.items.splice(this.items.indexOf(A),1).length>0:!1}get(e,A){let n=I2(this.items,e)?.value;return(!A&&sn(n)?n.value:n)??void 0}has(e){return!!I2(this.items,e)}set(e,A){this.add(new za(e,A),!0)}toJSON(e,A,t){let n=t?new t:A?.mapAsMap?new Map:{};A?.onCreate&&A.onCreate(n);for(let o of this.items)Jm(A,n,o);return n}toString(e,A,t){if(!e)return JSON.stringify(this);for(let n of this.items)if(!Tn(n))throw new Error(`Map items must all be pairs; found ${JSON.stringify(n)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Hm(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:t,onComment:A})}};var Xg={collection:"map",default:!0,nodeClass:$a,tag:"tag:yaml.org,2002:map",resolve(i,e){return qg(i)||e("Expected a mapping for this tag"),i},createNode:(i,e,A)=>$a.from(i,e,A)};var us=class extends bB{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(Z0,e),this.items=[]}add(e){this.items.push(e)}delete(e){let A=zm(e);return typeof A!="number"?!1:this.items.splice(A,1).length>0}get(e,A){let t=zm(e);if(typeof t!="number")return;let n=this.items[t];return!A&&sn(n)?n.value:n}has(e){let A=zm(e);return typeof A=="number"&&A=0?e:null}var $g={collection:"seq",default:!0,nodeClass:us,tag:"tag:yaml.org,2002:seq",resolve(i,e){return Wg(i)||e("Expected a sequence for this tag"),i},createNode:(i,e,A)=>us.from(i,e,A)};var B2={identify:i=>typeof i=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:i=>i,stringify(i,e,A,t){return e=Object.assign({actualString:!0},e),sd(i,e,A,t)}};var ld={identify:i=>i==null,createNode:()=>new $t(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new $t(null),stringify:({source:i},e)=>typeof i=="string"&&ld.test.test(i)?i:e.options.nullStr};var du={identify:i=>typeof i=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:i=>new $t(i[0]==="t"||i[0]==="T"),stringify({source:i,value:e},A){if(i&&du.test.test(i)){let t=i[0]==="t"||i[0]==="T";if(e===t)return i}return e?A.options.trueStr:A.options.falseStr}};function ps({format:i,minFractionDigits:e,tag:A,value:t}){if(typeof t=="bigint")return String(t);let n=typeof t=="number"?t:Number(t);if(!isFinite(n))return isNaN(n)?".nan":n<0?"-.inf":".inf";let o=Object.is(t,-0)?"-0":JSON.stringify(t);if(!i&&e&&(!A||A==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let a=o.indexOf(".");a<0&&(a=o.length,o+=".");let r=e-(o.length-a-1);for(;r-- >0;)o+="0"}return o}var Pm={identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:i=>i.slice(-3).toLowerCase()==="nan"?NaN:i[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:ps},jm={identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:i=>parseFloat(i),stringify(i){let e=Number(i.value);return isFinite(e)?e.toExponential():ps(i)}},Vm={identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(i){let e=new $t(parseFloat(i)),A=i.indexOf(".");return A!==-1&&i[i.length-1]==="0"&&(e.minFractionDigits=i.length-A-1),e},stringify:ps};var qm=i=>typeof i=="bigint"||Number.isInteger(i),_7=(i,e,A,{intAsBigInt:t})=>t?BigInt(i):parseInt(i.substring(e),A);function RT(i,e,A){let{value:t}=i;return qm(t)&&t>=0?A+t.toString(e):ps(i)}var Wm={identify:i=>qm(i)&&i>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(i,e,A)=>_7(i,2,8,A),stringify:i=>RT(i,8,"0o")},Zm={identify:qm,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(i,e,A)=>_7(i,0,10,A),stringify:ps},Xm={identify:i=>qm(i)&&i>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(i,e,A)=>_7(i,2,16,A),stringify:i=>RT(i,16,"0x")};var NT=[Xg,$g,B2,ld,du,Wm,Zm,Xm,Pm,jm,Vm];function FT(i){return typeof i=="bigint"||Number.isInteger(i)}var $m=({value:i})=>JSON.stringify(i),qrA=[{identify:i=>typeof i=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:i=>i,stringify:$m},{identify:i=>i==null,createNode:()=>new $t(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:$m},{identify:i=>typeof i=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:i=>i==="true",stringify:$m},{identify:FT,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(i,e,{intAsBigInt:A})=>A?BigInt(i):parseInt(i,10),stringify:({value:i})=>FT(i)?i.toString():JSON.stringify(i)},{identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:i=>parseFloat(i),stringify:$m}],WrA={default:!0,tag:"",test:/^/,resolve(i,e){return e(`Unresolved plain scalar ${JSON.stringify(i)}`),i}},LT=[Xg,$g].concat(qrA,WrA);var Iu={identify:i=>i instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(i,e){if(typeof atob=="function"){let A=atob(i.replace(/[\n\r]/g,"")),t=new Uint8Array(A.length);for(let n=0;n1&&e("Each pair must have its own sequence indicator");let n=t.items[0]||new za(new $t(null));if(t.commentBefore&&(n.key.commentBefore=n.key.commentBefore?`${t.commentBefore} -${n.key.commentBefore}`:t.commentBefore),t.comment){let o=n.value??n.key;o.comment=o.comment?`${t.comment} -${o.comment}`:t.comment}t=n}i.items[A]=Tn(t)?t:new za(t)}}else e("Expected a sequence for this tag");return i}function R7(i,e,A){let{replacer:t}=A,n=new us(i);n.tag="tag:yaml.org,2002:pairs";let o=0;if(e&&Symbol.iterator in Object(e))for(let a of e){typeof t=="function"&&(a=t.call(e,String(o++),a));let r,s;if(Array.isArray(a))if(a.length===2)r=a[0],s=a[1];else throw new TypeError(`Expected [key, value] tuple: ${a}`);else if(a&&a instanceof Object){let l=Object.keys(a);if(l.length===1)r=l[0],s=a[r];else throw new TypeError(`Expected tuple with one key, not ${l.length} keys`)}else r=a;n.items.push(kB(r,s,A))}return n}var Bu={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:x7,createNode:R7};var N7=(()=>{class i extends us{constructor(){super(),this.add=$a.prototype.add.bind(this),this.delete=$a.prototype.delete.bind(this),this.get=$a.prototype.get.bind(this),this.has=$a.prototype.has.bind(this),this.set=$a.prototype.set.bind(this),this.tag=i.tag}toJSON(A,t){if(!t)return super.toJSON(A);let n=new Map;t?.onCreate&&t.onCreate(n);for(let o of this.items){let a,r;if(Tn(o)?(a=pr(o.key,"",t),r=pr(o.value,a,t)):a=pr(o,"",t),n.has(a))throw new Error("Ordered maps must not include duplicate keys");n.set(a,r)}return n}static from(A,t,n){let o=R7(A,t,n),a=new this;return a.items=o.items,a}}return i.tag="tag:yaml.org,2002:omap",i})(),hu={collection:"seq",identify:i=>i instanceof Map,nodeClass:N7,default:!1,tag:"tag:yaml.org,2002:omap",resolve(i,e){let A=x7(i,e),t=[];for(let{key:n}of A.items)sn(n)&&(t.includes(n.value)?e(`Ordered maps must not include duplicate keys: ${n.value}`):t.push(n.value));return Object.assign(new N7,A)},createNode:(i,e,A)=>N7.from(i,e,A)};function GT({value:i,source:e},A){return e&&(i?F7:L7).test.test(e)?e:i?A.options.trueStr:A.options.falseStr}var F7={identify:i=>i===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new $t(!0),stringify:GT},L7={identify:i=>i===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new $t(!1),stringify:GT};var KT={identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:i=>i.slice(-3).toLowerCase()==="nan"?NaN:i[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:ps},UT={identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:i=>parseFloat(i.replace(/_/g,"")),stringify(i){let e=Number(i.value);return isFinite(e)?e.toExponential():ps(i)}},TT={identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(i){let e=new $t(parseFloat(i.replace(/_/g,""))),A=i.indexOf(".");if(A!==-1){let t=i.substring(A+1).replace(/_/g,"");t[t.length-1]==="0"&&(e.minFractionDigits=t.length)}return e},stringify:ps};var Eu=i=>typeof i=="bigint"||Number.isInteger(i);function A6(i,e,A,{intAsBigInt:t}){let n=i[0];if((n==="-"||n==="+")&&(e+=1),i=i.substring(e).replace(/_/g,""),t){switch(A){case 2:i=`0b${i}`;break;case 8:i=`0o${i}`;break;case 16:i=`0x${i}`;break}let a=BigInt(i);return n==="-"?BigInt(-1)*a:a}let o=parseInt(i,A);return n==="-"?-1*o:o}function G7(i,e,A){let{value:t}=i;if(Eu(t)){let n=t.toString(e);return t<0?"-"+A+n.substr(1):A+n}return ps(i)}var OT={identify:Eu,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(i,e,A)=>A6(i,2,2,A),stringify:i=>G7(i,2,"0b")},JT={identify:Eu,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(i,e,A)=>A6(i,1,8,A),stringify:i=>G7(i,8,"0")},YT={identify:Eu,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(i,e,A)=>A6(i,0,10,A),stringify:ps},HT={identify:Eu,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(i,e,A)=>A6(i,2,16,A),stringify:i=>G7(i,16,"0x")};var K7=(()=>{class i extends $a{constructor(A){super(A),this.tag=i.tag}add(A){let t;Tn(A)?t=A:A&&typeof A=="object"&&"key"in A&&"value"in A&&A.value===null?t=new za(A.key,null):t=new za(A,null),I2(this.items,t.key)||this.items.push(t)}get(A,t){let n=I2(this.items,A);return!t&&Tn(n)?sn(n.key)?n.key.value:n.key:n}set(A,t){if(typeof t!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let n=I2(this.items,A);n&&!t?this.items.splice(this.items.indexOf(n),1):!n&&t&&this.items.push(new za(A))}toJSON(A,t){return super.toJSON(A,t,Set)}toString(A,t,n){if(!A)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},A,{allNullValues:!0}),t,n);throw new Error("Set items must all have null values")}static from(A,t,n){let{replacer:o}=n,a=new this(A);if(t&&Symbol.iterator in Object(t))for(let r of t)typeof o=="function"&&(r=o.call(t,r,r)),a.items.push(kB(r,null,n));return a}}return i.tag="tag:yaml.org,2002:set",i})(),Qu={collection:"map",identify:i=>i instanceof Set,nodeClass:K7,default:!1,tag:"tag:yaml.org,2002:set",createNode:(i,e,A)=>K7.from(i,e,A),resolve(i,e){if(qg(i)){if(i.hasAllNullValues(!0))return Object.assign(new K7,i);e("Set items must all have null values")}else e("Expected a mapping for this tag");return i}};function U7(i,e){let A=i[0],t=A==="-"||A==="+"?i.substring(1):i,n=a=>e?BigInt(a):Number(a),o=t.replace(/_/g,"").split(":").reduce((a,r)=>a*n(60)+n(r),n(0));return A==="-"?n(-1)*o:o}function zT(i){let{value:e}=i,A=a=>a;if(typeof e=="bigint")A=a=>BigInt(a);else if(isNaN(e)||!isFinite(e))return ps(i);let t="";e<0&&(t="-",e*=A(-1));let n=A(60),o=[e%n];return e<60?o.unshift(0):(e=(e-o[0])/n,o.unshift(e%n),e>=60&&(e=(e-o[0])/n,o.unshift(e))),t+o.map(a=>String(a).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var e6={identify:i=>typeof i=="bigint"||Number.isInteger(i),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(i,e,{intAsBigInt:A})=>U7(i,A),stringify:zT},t6={identify:i=>typeof i=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:i=>U7(i,!1),stringify:zT},_B={identify:i=>i instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(i){let e=i.match(_B.test);if(!e)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,A,t,n,o,a,r]=e.map(Number),s=e[7]?Number((e[7]+"00").substr(1,3)):0,l=Date.UTC(A,t-1,n,o||0,a||0,r||0,s),g=e[8];if(g&&g!=="Z"){let C=U7(g,!1);Math.abs(C)<30&&(C*=60),l-=6e4*C}return new Date(l)},stringify:({value:i})=>i?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};var T7=[Xg,$g,B2,ld,F7,L7,OT,JT,YT,HT,KT,UT,TT,Iu,Zg,hu,Bu,Qu,e6,t6,_B];var PT=new Map([["core",NT],["failsafe",[Xg,$g,B2]],["json",LT],["yaml11",T7],["yaml-1.1",T7]]),jT={binary:Iu,bool:du,float:Vm,floatExp:jm,floatNaN:Pm,floatTime:t6,int:Zm,intHex:Xm,intOct:Wm,intTime:e6,map:Xg,merge:Zg,null:ld,omap:hu,pairs:Bu,seq:$g,set:Qu,timestamp:_B},VT={"tag:yaml.org,2002:binary":Iu,"tag:yaml.org,2002:merge":Zg,"tag:yaml.org,2002:omap":hu,"tag:yaml.org,2002:pairs":Bu,"tag:yaml.org,2002:set":Qu,"tag:yaml.org,2002:timestamp":_B};function i6(i,e,A){let t=PT.get(e);if(t&&!i)return A&&!t.includes(Zg)?t.concat(Zg):t.slice();let n=t;if(!n)if(Array.isArray(i))n=[];else{let o=Array.from(PT.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${e}"; use one of ${o} or define customTags array`)}if(Array.isArray(i))for(let o of i)n=n.concat(o);else typeof i=="function"&&(n=i(n.slice()));return A&&(n=n.concat(Zg)),n.reduce((o,a)=>{let r=typeof a=="string"?jT[a]:a;if(!r){let s=JSON.stringify(a),l=Object.keys(jT).map(g=>JSON.stringify(g)).join(", ");throw new Error(`Unknown custom tag ${s}; use one of ${l}`)}return o.includes(r)||o.push(r),o},[])}var ZrA=(i,e)=>i.keye.key?1:0,uu=class i{constructor({compat:e,customTags:A,merge:t,resolveKnownTags:n,schema:o,sortMapEntries:a,toStringDefaults:r}){this.compat=Array.isArray(e)?i6(e,"compat"):e?i6(null,e):null,this.name=typeof o=="string"&&o||"core",this.knownTags=n?VT:{},this.tags=i6(A,this.name,t),this.toStringOptions=r??null,Object.defineProperty(this,jg,{value:Xg}),Object.defineProperty(this,_l,{value:B2}),Object.defineProperty(this,Z0,{value:$g}),this.sortMapEntries=typeof a=="function"?a:a===!0?ZrA:null}clone(){let e=Object.create(i.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}};function qT(i,e){let A=[],t=e.directives===!0;if(e.directives!==!1&&i.directives){let s=i.directives.toString(i);s?(A.push(s),t=!0):i.directives.docStart&&(t=!0)}t&&A.push("---");let n=Um(i,e),{commentString:o}=n.options;if(i.commentBefore){A.length!==1&&A.unshift("");let s=o(i.commentBefore);A.unshift(sg(s,""))}let a=!1,r=null;if(i.contents){if(Pn(i.contents)){if(i.contents.spaceBefore&&t&&A.push(""),i.contents.commentBefore){let g=o(i.contents.commentBefore);A.push(sg(g,""))}n.forceBlockIndent=!!i.comment,r=i.contents.comment}let s=r?void 0:()=>a=!0,l=AC(i.contents,n,()=>r=null,s);r&&(l+=i0(l,"",o(r))),(l[0]==="|"||l[0]===">")&&A[A.length-1]==="---"?A[A.length-1]=`--- ${l}`:A.push(l)}else A.push(AC(i.contents,n));if(i.directives?.docEnd)if(i.comment){let s=o(i.comment);s.includes(` -`)?(A.push("..."),A.push(sg(s,""))):A.push(`... ${s}`)}else A.push("...");else{let s=i.comment;s&&a&&(s=s.replace(/^\n+/,"")),s&&((!a||r)&&A[A.length-1]!==""&&A.push(""),A.push(sg(o(s),"")))}return A.join(` -`)+` -`}var eC=class i{constructor(e,A,t){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Ks,{value:Sm});let n=null;typeof A=="function"||Array.isArray(A)?n=A:t===void 0&&A&&(t=A,A=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},t);this.options=o;let{version:a}=o;t?._directives?(this.directives=t._directives.atDocument(),this.directives.yaml.explicit&&(a=this.directives.yaml.version)):this.directives=new vB({version:a}),this.setSchema(a,t),this.contents=e===void 0?null:this.createNode(e,n,t)}clone(){let e=Object.create(i.prototype,{[Ks]:{value:Sm}});return e.commentBefore=this.commentBefore,e.comment=this.comment,e.errors=this.errors.slice(),e.warnings=this.warnings.slice(),e.options=Object.assign({},this.options),this.directives&&(e.directives=this.directives.clone()),e.schema=this.schema.clone(),e.contents=Pn(this.contents)?this.contents.clone(e.schema):this.contents,this.range&&(e.range=this.range.slice()),e}add(e){xB(this.contents)&&this.contents.add(e)}addIn(e,A){xB(this.contents)&&this.contents.addIn(e,A)}createAlias(e,A){if(!e.anchor){let t=y7(this);e.anchor=!A||t.has(A)?D7(A||"a",t):A}return new X0(e.anchor)}createNode(e,A,t){let n;if(typeof A=="function")e=A.call({"":e},"",e),n=A;else if(Array.isArray(A)){let f=v=>typeof v=="number"||v instanceof String||v instanceof Number,m=A.filter(f).map(String);m.length>0&&(A=A.concat(m)),n=A}else t===void 0&&A&&(t=A,A=void 0);let{aliasDuplicateObjects:o,anchorPrefix:a,flow:r,keepUndefined:s,onTagObj:l,tag:g}=t??{},{onAnchor:C,setAnchors:d,sourceObjects:B}=MT(this,a||"a"),u={aliasDuplicateObjects:o??!0,keepUndefined:s??!1,onAnchor:C,onTagObj:l,replacer:n,schema:this.schema,sourceObjects:B},E=$0(e,g,u);return r&&vo(E)&&(E.flow=!0),d(),E}createPair(e,A,t={}){let n=this.createNode(e,null,t),o=this.createNode(A,null,t);return new za(n,o)}delete(e){return xB(this.contents)?this.contents.delete(e):!1}deleteIn(e){return MB(e)?this.contents==null?!1:(this.contents=null,!0):xB(this.contents)?this.contents.deleteIn(e):!1}get(e,A){return vo(this.contents)?this.contents.get(e,A):void 0}getIn(e,A){return MB(e)?!A&&sn(this.contents)?this.contents.value:this.contents:vo(this.contents)?this.contents.getIn(e,A):void 0}has(e){return vo(this.contents)?this.contents.has(e):!1}hasIn(e){return MB(e)?this.contents!==void 0:vo(this.contents)?this.contents.hasIn(e):!1}set(e,A){this.contents==null?this.contents=lu(this.schema,[e],A):xB(this.contents)&&this.contents.set(e,A)}setIn(e,A){MB(e)?this.contents=A:this.contents==null?this.contents=lu(this.schema,Array.from(e),A):xB(this.contents)&&this.contents.setIn(e,A)}setSchema(e,A={}){typeof e=="number"&&(e=String(e));let t;switch(e){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new vB({version:"1.1"}),t={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=e:this.directives=new vB({version:e}),t={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,t=null;break;default:{let n=JSON.stringify(e);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${n}`)}}if(A.schema instanceof Object)this.schema=A.schema;else if(t)this.schema=new uu(Object.assign(t,A));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:A,mapAsMap:t,maxAliasCount:n,onAnchor:o,reviver:a}={}){let r={anchors:new Map,doc:this,keep:!e,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},s=pr(this.contents,A??"",r);if(typeof o=="function")for(let{count:l,res:g}of r.anchors.values())o(g,l);return typeof a=="function"?C2(a,{"":s},"",s):s}toJSON(e,A){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:A})}toString(e={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){let A=JSON.stringify(e.indent);throw new Error(`"indent" option must be a positive integer, not ${A}`)}return qT(this,e)}};function xB(i){if(vo(i))return!0;throw new Error("Expected a YAML collection as document contents")}var pu=class extends Error{constructor(e,A,t,n){super(),this.name=e,this.code=t,this.message=n,this.pos=A}},Ac=class extends pu{constructor(e,A,t){super("YAMLParseError",e,A,t)}},fu=class extends pu{constructor(e,A,t){super("YAMLWarning",e,A,t)}},O7=(i,e)=>A=>{if(A.pos[0]===-1)return;A.linePos=A.pos.map(r=>e.linePos(r));let{line:t,col:n}=A.linePos[0];A.message+=` at line ${t}, column ${n}`;let o=n-1,a=i.substring(e.lineStarts[t-1],e.lineStarts[t]).replace(/[\n\r]+$/,"");if(o>=60&&a.length>80){let r=Math.min(o-39,a.length-79);a="\u2026"+a.substring(r),o-=r-1}if(a.length>80&&(a=a.substring(0,79)+"\u2026"),t>1&&/^ *$/.test(a.substring(0,o))){let r=i.substring(e.lineStarts[t-2],e.lineStarts[t-1]);r.length>80&&(r=r.substring(0,79)+`\u2026 -`),a=r+a}if(/[^ ]/.test(a)){let r=1,s=A.linePos[1];s?.line===t&&s.col>n&&(r=Math.max(1,Math.min(s.col-n,80-o)));let l=" ".repeat(o)+"^".repeat(r);A.message+=`: - -${a} -${l} -`}};function n0(i,{flow:e,indicator:A,next:t,offset:n,onError:o,parentIndent:a,startOnNewline:r}){let s=!1,l=r,g=r,C="",d="",B=!1,u=!1,E=null,f=null,m=null,v=null,S=null,k=null,M=null;for(let z of i)switch(u&&(z.type!=="space"&&z.type!=="newline"&&z.type!=="comma"&&o(z.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),u=!1),E&&(l&&z.type!=="comment"&&z.type!=="newline"&&o(E,"TAB_AS_INDENT","Tabs are not allowed as indentation"),E=null),z.type){case"space":!e&&(A!=="doc-start"||t?.type!=="flow-collection")&&z.source.includes(" ")&&(E=z),g=!0;break;case"comment":{g||o(z,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let j=z.source.substring(1)||" ";C?C+=d+j:C=j,d="",l=!1;break}case"newline":l?C?C+=z.source:(!k||A!=="seq-item-ind")&&(s=!0):d+=z.source,l=!0,B=!0,(f||m)&&(v=z),g=!0;break;case"anchor":f&&o(z,"MULTIPLE_ANCHORS","A node can have at most one anchor"),z.source.endsWith(":")&&o(z.offset+z.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),f=z,M??(M=z.offset),l=!1,g=!1,u=!0;break;case"tag":{m&&o(z,"MULTIPLE_TAGS","A node can have at most one tag"),m=z,M??(M=z.offset),l=!1,g=!1,u=!0;break}case A:(f||m)&&o(z,"BAD_PROP_ORDER",`Anchors and tags must be after the ${z.source} indicator`),k&&o(z,"UNEXPECTED_TOKEN",`Unexpected ${z.source} in ${e??"collection"}`),k=z,l=A==="seq-item-ind"||A==="explicit-key-ind",g=!1;break;case"comma":if(e){S&&o(z,"UNEXPECTED_TOKEN",`Unexpected , in ${e}`),S=z,l=!1,g=!1;break}default:o(z,"UNEXPECTED_TOKEN",`Unexpected ${z.type} token`),l=!1,g=!1}let x=i[i.length-1],F=x?x.offset+x.source.length:n;return u&&t&&t.type!=="space"&&t.type!=="newline"&&t.type!=="comma"&&(t.type!=="scalar"||t.source!=="")&&o(t.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),E&&(l&&E.indent<=a||t?.type==="block-map"||t?.type==="block-seq")&&o(E,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:S,found:k,spaceBefore:s,comment:C,hasNewline:B,anchor:f,tag:m,newlineAfterProp:v,end:F,start:M??F}}function h2(i){if(!i)return null;switch(i.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(i.source.includes(` -`))return!0;if(i.end){for(let e of i.end)if(e.type==="newline")return!0}return!1;case"flow-collection":for(let e of i.items){for(let A of e.start)if(A.type==="newline")return!0;if(e.sep){for(let A of e.sep)if(A.type==="newline")return!0}if(h2(e.key)||h2(e.value))return!0}return!1;default:return!0}}function mu(i,e,A){if(e?.type==="flow-collection"){let t=e.end[0];t.indent===i&&(t.source==="]"||t.source==="}")&&h2(e)&&A(t,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function n6(i,e,A){let{uniqueKeys:t}=i.options;if(t===!1)return!1;let n=typeof t=="function"?t:(o,a)=>o===a||sn(o)&&sn(a)&&o.value===a.value;return e.some(o=>n(o.key,A))}var WT="All mapping items must start at the same column";function ZT({composeNode:i,composeEmptyNode:e},A,t,n,o){let a=o?.nodeClass??$a,r=new a(A.schema);A.atRoot&&(A.atRoot=!1);let s=t.offset,l=null;for(let g of t.items){let{start:C,key:d,sep:B,value:u}=g,E=n0(C,{indicator:"explicit-key-ind",next:d??B?.[0],offset:s,onError:n,parentIndent:t.indent,startOnNewline:!0}),f=!E.found;if(f){if(d&&(d.type==="block-seq"?n(s,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in d&&d.indent!==t.indent&&n(s,"BAD_INDENT",WT)),!E.anchor&&!E.tag&&!B){l=E.end,E.comment&&(r.comment?r.comment+=` -`+E.comment:r.comment=E.comment);continue}(E.newlineAfterProp||h2(d))&&n(d??C[C.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else E.found?.indent!==t.indent&&n(s,"BAD_INDENT",WT);A.atKey=!0;let m=E.end,v=d?i(A,d,E,n):e(A,m,C,null,E,n);A.schema.compat&&mu(t.indent,d,n),A.atKey=!1,n6(A,r.items,v)&&n(m,"DUPLICATE_KEY","Map keys must be unique");let S=n0(B??[],{indicator:"map-value-ind",next:u,offset:v.range[2],onError:n,parentIndent:t.indent,startOnNewline:!d||d.type==="block-scalar"});if(s=S.end,S.found){f&&(u?.type==="block-map"&&!S.hasNewline&&n(s,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),A.options.strict&&E.starti&&(i.type==="block-map"||i.type==="block-seq");function $T({composeNode:i,composeEmptyNode:e},A,t,n,o){let a=t.start.source==="{",r=a?"flow map":"flow sequence",s=o?.nodeClass??(a?$a:us),l=new s(A.schema);l.flow=!0;let g=A.atRoot;g&&(A.atRoot=!1),A.atKey&&(A.atKey=!1);let C=t.offset+t.start.source.length;for(let f=0;f0){let f=o0(u,E,A.options.strict,n);f.comment&&(l.comment?l.comment+=` -`+f.comment:l.comment=f.comment),l.range=[t.offset,E,f.offset]}else l.range=[t.offset,E,E];return l}function H7(i,e,A,t,n,o){let a=A.type==="block-map"?ZT(i,e,A,t,o):A.type==="block-seq"?XT(i,e,A,t,o):$T(i,e,A,t,o),r=a.constructor;return n==="!"||n===r.tagName?(a.tag=r.tagName,a):(n&&(a.tag=n),a)}function AO(i,e,A,t,n){let o=t.tag,a=o?e.directives.tagName(o.source,d=>n(o,"TAG_RESOLVE_FAILED",d)):null;if(A.type==="block-seq"){let{anchor:d,newlineAfterProp:B}=t,u=d&&o?d.offset>o.offset?d:o:d??o;u&&(!B||B.offsetd.tag===a&&d.collection===r);if(!s){let d=e.schema.knownTags[a];if(d?.collection===r)e.schema.tags.push(Object.assign({},d,{default:!1})),s=d;else return d?n(o,"BAD_COLLECTION_TYPE",`${d.tag} used for ${r} collection, but expects ${d.collection??"scalar"}`,!0):n(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${a}`,!0),H7(i,e,A,n,a)}let l=H7(i,e,A,n,a,s),g=s.resolve?.(l,d=>n(o,"TAG_RESOLVE_FAILED",d),e.options)??l,C=Pn(g)?g:new $t(g);return C.range=l.range,C.tag=a,s?.format&&(C.format=s.format),C}function z7(i,e,A){let t=e.offset,n=XrA(e,i.options.strict,A);if(!n)return{value:"",type:null,comment:"",range:[t,t,t]};let o=n.mode===">"?$t.BLOCK_FOLDED:$t.BLOCK_LITERAL,a=e.source?$rA(e.source):[],r=a.length;for(let E=a.length-1;E>=0;--E){let f=a[E][1];if(f===""||f==="\r")r=E;else break}if(r===0){let E=n.chomp==="+"&&a.length>0?` -`.repeat(Math.max(1,a.length-1)):"",f=t+n.length;return e.source&&(f+=e.source.length),{value:E,type:o,comment:n.comment,range:[t,f,f]}}let s=e.indent+n.indent,l=e.offset+n.length,g=0;for(let E=0;Es&&(s=f.length);else{f.length=r;--E)a[E][0].length>s&&(r=E+1);let C="",d="",B=!1;for(let E=0;Es||m[0]===" "?(d===" "?d=` -`:!B&&d===` -`&&(d=` - -`),C+=d+f.slice(s)+m,d=` -`,B=!0):m===""?d===` -`?C+=` -`:d=` -`:(C+=d+m,d=" ",B=!1)}switch(n.chomp){case"-":break;case"+":for(let E=r;EA(t+d,B,u);switch(n){case"scalar":r=$t.PLAIN,s=AsA(o,l);break;case"single-quoted-scalar":r=$t.QUOTE_SINGLE,s=esA(o,l);break;case"double-quoted-scalar":r=$t.QUOTE_DOUBLE,s=tsA(o,l);break;default:return A(i,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${n}`),{value:"",type:null,comment:"",range:[t,t+o.length,t+o.length]}}let g=t+o.length,C=o0(a,g,e,A);return{value:s,type:r,comment:C.comment,range:[t,g,C.offset]}}function AsA(i,e){let A="";switch(i[0]){case" ":A="a tab character";break;case",":A="flow indicator character ,";break;case"%":A="directive indicator character %";break;case"|":case">":{A=`block scalar indicator ${i[0]}`;break}case"@":case"`":{A=`reserved character ${i[0]}`;break}}return A&&e(0,"BAD_SCALAR_START",`Plain value cannot start with ${A}`),eO(i)}function esA(i,e){return(i[i.length-1]!=="'"||i.length===1)&&e(i.length,"MISSING_CHAR","Missing closing 'quote"),eO(i.slice(1,-1)).replace(/''/g,"'")}function eO(i){let e,A;try{e=new RegExp(`(.*?)(?o?i.slice(o,t+1):n)}else A+=n}return(i[i.length-1]!=='"'||i.length===1)&&e(i.length,"MISSING_CHAR",'Missing closing "quote'),A}function isA(i,e){let A="",t=i[e+1];for(;(t===" "||t===" "||t===` -`||t==="\r")&&!(t==="\r"&&i[e+2]!==` -`);)t===` -`&&(A+=` -`),e+=1,t=i[e+1];return A||(A=" "),{fold:A,offset:e}}var nsA={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` -`,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function osA(i,e,A,t){let n=i.substr(e,A),a=n.length===A&&/^[0-9a-fA-F]+$/.test(n)?parseInt(n,16):NaN;if(isNaN(a)){let r=i.substr(e-2,A+2);return t(e-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${r}`),r}return String.fromCodePoint(a)}function j7(i,e,A,t){let{value:n,type:o,comment:a,range:r}=e.type==="block-scalar"?z7(i,e,t):P7(e,i.options.strict,t),s=A?i.directives.tagName(A.source,C=>t(A,"TAG_RESOLVE_FAILED",C)):null,l;i.options.stringKeys&&i.atKey?l=i.schema[_l]:s?l=asA(i.schema,n,s,A,t):e.type==="scalar"?l=rsA(i,n,e,t):l=i.schema[_l];let g;try{let C=l.resolve(n,d=>t(A??e,"TAG_RESOLVE_FAILED",d),i.options);g=sn(C)?C:new $t(C)}catch(C){let d=C instanceof Error?C.message:String(C);t(A??e,"TAG_RESOLVE_FAILED",d),g=new $t(n)}return g.range=r,g.source=n,o&&(g.type=o),s&&(g.tag=s),l.format&&(g.format=l.format),a&&(g.comment=a),g}function asA(i,e,A,t,n){if(A==="!")return i[_l];let o=[];for(let r of i.tags)if(!r.collection&&r.tag===A)if(r.default&&r.test)o.push(r);else return r;for(let r of o)if(r.test?.test(e))return r;let a=i.knownTags[A];return a&&!a.collection?(i.tags.push(Object.assign({},a,{default:!1,test:void 0})),a):(n(t,"TAG_RESOLVE_FAILED",`Unresolved tag: ${A}`,A!=="tag:yaml.org,2002:str"),i[_l])}function rsA({atKey:i,directives:e,schema:A},t,n,o){let a=A.tags.find(r=>(r.default===!0||i&&r.default==="key")&&r.test?.test(t))||A[_l];if(A.compat){let r=A.compat.find(s=>s.default&&s.test?.test(t))??A[_l];if(a.tag!==r.tag){let s=e.tagString(a.tag),l=e.tagString(r.tag),g=`Value may be parsed as either ${s} or ${l}`;o(n,"TAG_RESOLVE_FAILED",g,!0)}}return a}function tO(i,e,A){if(e){A??(A=e.length);for(let t=A-1;t>=0;--t){let n=e[t];switch(n.type){case"space":case"comment":case"newline":i-=n.source.length;continue}for(n=e[++t];n?.type==="space";)i+=n.source.length,n=e[++t];break}}return i}var ssA={composeNode:V7,composeEmptyNode:o6};function V7(i,e,A,t){let n=i.atKey,{spaceBefore:o,comment:a,anchor:r,tag:s}=A,l,g=!0;switch(e.type){case"alias":l=lsA(i,e,t),(r||s)&&t(e,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":l=j7(i,e,s,t),r&&(l.anchor=r.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":l=AO(ssA,i,e,A,t),r&&(l.anchor=r.source.substring(1));break;default:{let C=e.type==="error"?e.message:`Unsupported token (type: ${e.type})`;t(e,"UNEXPECTED_TOKEN",C),l=o6(i,e.offset,void 0,null,A,t),g=!1}}return r&&l.anchor===""&&t(r,"BAD_ALIAS","Anchor cannot be an empty string"),n&&i.options.stringKeys&&(!sn(l)||typeof l.value!="string"||l.tag&&l.tag!=="tag:yaml.org,2002:str")&&t(s??e,"NON_STRING_KEY","With stringKeys, all keys must be strings"),o&&(l.spaceBefore=!0),a&&(e.type==="scalar"&&e.source===""?l.comment=a:l.commentBefore=a),i.options.keepSourceTokens&&g&&(l.srcToken=e),l}function o6(i,e,A,t,{spaceBefore:n,comment:o,anchor:a,tag:r,end:s},l){let g={type:"scalar",offset:tO(e,A,t),indent:-1,source:""},C=j7(i,g,r,l);return a&&(C.anchor=a.source.substring(1),C.anchor===""&&l(a,"BAD_ALIAS","Anchor cannot be an empty string")),n&&(C.spaceBefore=!0),o&&(C.comment=o,C.range[2]=s),C}function lsA({options:i},{offset:e,source:A,end:t},n){let o=new X0(A.substring(1));o.source===""&&n(e,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&n(e+A.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let a=e+A.length,r=o0(t,a,i.strict,n);return o.range=[e,a,r.offset],r.comment&&(o.comment=r.comment),o}function iO(i,e,{offset:A,start:t,value:n,end:o},a){let r=Object.assign({_directives:e},i),s=new eC(void 0,r),l={atKey:!1,atRoot:!0,directives:s.directives,options:s.options,schema:s.schema},g=n0(t,{indicator:"doc-start",next:n??o?.[0],offset:A,onError:a,parentIndent:0,startOnNewline:!0});g.found&&(s.directives.docStart=!0,n&&(n.type==="block-map"||n.type==="block-seq")&&!g.hasNewline&&a(g.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),s.contents=n?V7(l,n,g,a):o6(l,g.end,t,null,g,a);let C=s.contents.range[2],d=o0(o,C,!1,a);return d.comment&&(s.comment=d.comment),s.range=[A,C,d.offset],s}function wu(i){if(typeof i=="number")return[i,i+1];if(Array.isArray(i))return i.length===2?i:[i[0],i[1]];let{offset:e,source:A}=i;return[e,e+(typeof A=="string"?A.length:1)]}function nO(i){let e="",A=!1,t=!1;for(let n=0;n{let a=wu(A);o?this.warnings.push(new fu(a,t,n)):this.errors.push(new Ac(a,t,n))},this.directives=new vB({version:e.version||"1.2"}),this.options=e}decorate(e,A){let{comment:t,afterEmptyLine:n}=nO(this.prelude);if(t){let o=e.contents;if(A)e.comment=e.comment?`${e.comment} -${t}`:t;else if(n||e.directives.docStart||!o)e.commentBefore=t;else if(vo(o)&&!o.flow&&o.items.length>0){let a=o.items[0];Tn(a)&&(a=a.key);let r=a.commentBefore;a.commentBefore=r?`${t} -${r}`:t}else{let a=o.commentBefore;o.commentBefore=a?`${t} -${a}`:t}}A?(Array.prototype.push.apply(e.errors,this.errors),Array.prototype.push.apply(e.warnings,this.warnings)):(e.errors=this.errors,e.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:nO(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,A=!1,t=-1){for(let n of e)yield*Ie(this.next(n));yield*Ie(this.end(A,t))}*next(e){switch(e.type){case"directive":this.directives.add(e.source,(A,t,n)=>{let o=wu(e);o[0]+=A,this.onError(o,"BAD_DIRECTIVE",t,n)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{let A=iO(this.options,this.directives,e,this.onError);this.atDirectives&&!A.directives.docStart&&this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(A,!1),this.doc&&(yield this.doc),this.doc=A,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{let A=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,t=new Ac(wu(e),"UNEXPECTED_TOKEN",A);this.atDirectives||!this.doc?this.errors.push(t):this.doc.errors.push(t);break}case"doc-end":{if(!this.doc){let t="Unexpected doc-end without preceding document";this.errors.push(new Ac(wu(e),"UNEXPECTED_TOKEN",t));break}this.doc.directives.docEnd=!0;let A=o0(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),A.comment){let t=this.doc.comment;this.doc.comment=t?`${t} -${A.comment}`:A.comment}this.doc.range[2]=A.offset;break}default:this.errors.push(new Ac(wu(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,A=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){let t=Object.assign({_directives:this.directives},this.options),n=new eC(void 0,t);this.atDirectives&&this.onError(A,"MISSING_CHAR","Missing directives-end indicator line"),n.range=[0,A,A],this.decorate(n,!1),yield n}}};var q7=Symbol("break visit"),gsA=Symbol("skip children"),oO=Symbol("remove item");function gd(i,e){"type"in i&&i.type==="document"&&(i={start:i.start,value:i.value}),aO(Object.freeze([]),i,e)}gd.BREAK=q7;gd.SKIP=gsA;gd.REMOVE=oO;gd.itemAtPath=(i,e)=>{let A=i;for(let[t,n]of e){let o=A?.[t];if(o&&"items"in o)A=o.items[n];else return}return A};gd.parentCollection=(i,e)=>{let A=gd.itemAtPath(i,e.slice(0,-1)),t=e[e.length-1][0],n=A?.[t];if(n&&"items"in n)return n;throw new Error("Parent collection not found")};function aO(i,e,A){let t=A(e,i);if(typeof t=="symbol")return t;for(let n of["key","value"]){let o=e[n];if(o&&"items"in o){for(let a=0;a":return"block-scalar-header"}return null}function ec(i){switch(i){case void 0:case" ":case` -`:case"\r":case" ":return!0;default:return!1}}var sO=new Set("0123456789ABCDEFabcdef"),CsA=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),r6=new Set(",[]{}"),dsA=new Set(` ,[]{} -\r `),$7=i=>!i||dsA.has(i),Du=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,A=!1){if(e){if(typeof e!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!A;let t=this.next??"stream";for(;t&&(A||this.hasChars(1));)t=yield*Ie(this.parseNext(t))}atLineEnd(){let e=this.pos,A=this.buffer[e];for(;A===" "||A===" ";)A=this.buffer[++e];return!A||A==="#"||A===` -`?!0:A==="\r"?this.buffer[e+1]===` -`:!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let A=this.buffer[e];if(this.indentNext>0){let t=0;for(;A===" ";)A=this.buffer[++t+e];if(A==="\r"){let n=this.buffer[t+e+1];if(n===` -`||!n&&!this.atEnd)return e+t+1}return A===` -`||t>=this.indentNext||!A&&!this.atEnd?e+t:-1}if(A==="-"||A==="."){let t=this.buffer.substr(e,3);if((t==="---"||t==="...")&&ec(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;return(typeof e!="number"||e!==-1&&ethis.indentValue&&!ec(this.charAt(1))&&(this.indentNext=this.indentValue),yield*Ie(this.parseBlockStart())}*parseBlockStart(){let[e,A]=this.peek(2);if(!A&&!this.atEnd)return this.setNext("block-start");if((e==="-"||e==="?"||e===":")&&ec(A)){let t=(yield*Ie(this.pushCount(1)))+(yield*Ie(this.pushSpaces(!0)));return this.indentNext=this.indentValue+1,this.indentValue+=t,yield*Ie(this.parseBlockStart())}return"doc"}*parseDocument(){yield*Ie(this.pushSpaces(!0));let e=this.getLine();if(e===null)return this.setNext("doc");let A=yield*Ie(this.pushIndicators());switch(e[A]){case"#":yield*Ie(this.pushCount(e.length-A));case void 0:return yield*Ie(this.pushNewline()),yield*Ie(this.parseLineStart());case"{":case"[":return yield*Ie(this.pushCount(1)),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*Ie(this.pushCount(1)),"doc";case"*":return yield*Ie(this.pushUntil($7)),"doc";case'"':case"'":return yield*Ie(this.parseQuotedScalar());case"|":case">":return A+=yield*Ie(this.parseBlockScalarHeader()),A+=yield*Ie(this.pushSpaces(!0)),yield*Ie(this.pushCount(e.length-A)),yield*Ie(this.pushNewline()),yield*Ie(this.parseBlockScalar());default:return yield*Ie(this.parsePlainScalar())}}*parseFlowCollection(){let e,A,t=-1;do e=yield*Ie(this.pushNewline()),e>0?(A=yield*Ie(this.pushSpaces(!1)),this.indentValue=t=A):A=0,A+=yield*Ie(this.pushSpaces(!0));while(e+A>0);let n=this.getLine();if(n===null)return this.setNext("flow");if((t!==-1&&t"0"&&A<="9")this.blockScalarIndent=Number(A)-1;else if(A!=="-")break}return yield*Ie(this.pushUntil(A=>ec(A)||A==="#"))}*parseBlockScalar(){let e=this.pos-1,A=0,t;A:for(let o=this.pos;t=this.buffer[o];++o)switch(t){case" ":A+=1;break;case` -`:e=o,A=0;break;case"\r":{let a=this.buffer[o+1];if(!a&&!this.atEnd)return this.setNext("block-scalar");if(a===` -`)break}default:break A}if(!t&&!this.atEnd)return this.setNext("block-scalar");if(A>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=A:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let o=this.continueScalar(e+1);if(o===-1)break;e=this.buffer.indexOf(` -`,o)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}let n=e+1;for(t=this.buffer[n];t===" ";)t=this.buffer[++n];if(t===" "){for(;t===" "||t===" "||t==="\r"||t===` -`;)t=this.buffer[++n];e=n-1}else if(!this.blockScalarKeep)do{let o=e-1,a=this.buffer[o];a==="\r"&&(a=this.buffer[--o]);let r=o;for(;a===" ";)a=this.buffer[--o];if(a===` -`&&o>=this.pos&&o+1+A>r)e=o;else break}while(!0);return yield a6,yield*Ie(this.pushToIndex(e+1,!0)),yield*Ie(this.parseLineStart())}*parsePlainScalar(){let e=this.flowLevel>0,A=this.pos-1,t=this.pos-1,n;for(;n=this.buffer[++t];)if(n===":"){let o=this.buffer[t+1];if(ec(o)||e&&r6.has(o))break;A=t}else if(ec(n)){let o=this.buffer[t+1];if(n==="\r"&&(o===` -`?(t+=1,n=` -`,o=this.buffer[t+1]):A=t),o==="#"||e&&r6.has(o))break;if(n===` -`){let a=this.continueScalar(t+1);if(a===-1)break;t=Math.max(t,a-2)}}else{if(e&&r6.has(n))break;A=t}return!n&&!this.atEnd?this.setNext("plain-scalar"):(yield a6,yield*Ie(this.pushToIndex(A+1,!0)),e?"flow":"doc")}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,A){let t=this.buffer.slice(this.pos,e);return t?(yield t,this.pos+=t.length,t.length):(A&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*Ie(this.pushTag()))+(yield*Ie(this.pushSpaces(!0)))+(yield*Ie(this.pushIndicators()));case"&":return(yield*Ie(this.pushUntil($7)))+(yield*Ie(this.pushSpaces(!0)))+(yield*Ie(this.pushIndicators()));case"-":case"?":case":":{let e=this.flowLevel>0,A=this.charAt(1);if(ec(A)||e&&r6.has(A))return e?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*Ie(this.pushCount(1)))+(yield*Ie(this.pushSpaces(!0)))+(yield*Ie(this.pushIndicators()))}}return 0}*pushTag(){if(this.charAt(1)==="<"){let e=this.pos+2,A=this.buffer[e];for(;!ec(A)&&A!==">";)A=this.buffer[++e];return yield*Ie(this.pushToIndex(A===">"?e+1:e,!1))}else{let e=this.pos+1,A=this.buffer[e];for(;A;)if(CsA.has(A))A=this.buffer[++e];else if(A==="%"&&sO.has(this.buffer[e+1])&&sO.has(this.buffer[e+2]))A=this.buffer[e+=3];else break;return yield*Ie(this.pushToIndex(e,!1))}}*pushNewline(){let e=this.buffer[this.pos];return e===` -`?yield*Ie(this.pushCount(1)):e==="\r"&&this.charAt(1)===` -`?yield*Ie(this.pushCount(2)):0}*pushSpaces(e){let A=this.pos-1,t;do t=this.buffer[++A];while(t===" "||e&&t===" ");let n=A-this.pos;return n>0&&(yield this.buffer.substr(this.pos,n),this.pos=A),n}*pushUntil(e){let A=this.pos,t=this.buffer[A];for(;!e(t);)t=this.buffer[++A];return yield*Ie(this.pushToIndex(A,!1))}};var vu=class{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let A=0,t=this.lineStarts.length;for(;A>1;this.lineStarts[o]=0;)switch(i[e].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break A}for(;i[++e]?.type==="space";);return i.splice(e,i.length)}function gO(i){if(i.start.type==="flow-seq-start")for(let e of i.items)e.sep&&!e.value&&!E2(e.start,"explicit-key-ind")&&!E2(e.sep,"map-value-ind")&&(e.key&&(e.value=e.key),delete e.key,cO(e.value)?e.value.end?Array.prototype.push.apply(e.value.end,e.sep):e.value.end=e.sep:Array.prototype.push.apply(e.start,e.sep),delete e.sep)}var bu=class{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new Du,this.onNewLine=e}*parse(e,A=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let t of this.lexer.lex(e,A))yield*Ie(this.next(t));A||(yield*Ie(this.end()))}*next(e){if(this.source=e,this.atScalar){this.atScalar=!1,yield*Ie(this.step()),this.offset+=e.length;return}let A=rO(e);if(A)if(A==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=A,yield*Ie(this.step()),A){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case"space":this.atNewLine&&e[0]===" "&&(this.indent+=e.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=e.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}else{let t=`Not a YAML token: ${e}`;yield*Ie(this.pop({type:"error",offset:this.offset,message:t,source:e})),this.offset+=e.length}}*end(){for(;this.stack.length>0;)yield*Ie(this.pop())}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let e=this.peek(1);if(this.type==="doc-end"&&e?.type!=="doc-end"){for(;this.stack.length>0;)yield*Ie(this.pop());this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*Ie(this.stream());switch(e.type){case"document":return yield*Ie(this.document(e));case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*Ie(this.scalar(e));case"block-scalar":return yield*Ie(this.blockScalar(e));case"block-map":return yield*Ie(this.blockMap(e));case"block-seq":return yield*Ie(this.blockSequence(e));case"flow-collection":return yield*Ie(this.flowCollection(e));case"doc-end":return yield*Ie(this.documentEnd(e))}yield*Ie(this.pop())}peek(e){return this.stack[this.stack.length-e]}*pop(e){let A=e??this.stack.pop();if(!A)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield A;else{let t=this.peek(1);switch(A.type==="block-scalar"?A.indent="indent"in t?t.indent:0:A.type==="flow-collection"&&t.type==="document"&&(A.indent=0),A.type==="flow-collection"&&gO(A),t.type){case"document":t.value=A;break;case"block-scalar":t.props.push(A);break;case"block-map":{let n=t.items[t.items.length-1];if(n.value){t.items.push({start:[],key:A,sep:[]}),this.onKeyLine=!0;return}else if(n.sep)n.value=A;else{Object.assign(n,{key:A,sep:[]}),this.onKeyLine=!n.explicitKey;return}break}case"block-seq":{let n=t.items[t.items.length-1];n.value?t.items.push({start:[],value:A}):n.value=A;break}case"flow-collection":{let n=t.items[t.items.length-1];!n||n.value?t.items.push({start:[],key:A,sep:[]}):n.sep?n.value=A:Object.assign(n,{key:A,sep:[]});return}default:yield*Ie(this.pop()),yield*Ie(this.pop(A))}if((t.type==="document"||t.type==="block-map"||t.type==="block-seq")&&(A.type==="block-map"||A.type==="block-seq")){let n=A.items[A.items.length-1];n&&!n.sep&&!n.value&&n.start.length>0&&lO(n.start)===-1&&(A.indent===0||n.start.every(o=>o.type!=="comment"||o.indent=e.indent){let t=!this.onKeyLine&&this.indent===e.indent,n=t&&(A.sep||A.explicitKey)&&this.type!=="seq-item-ind",o=[];if(n&&A.sep&&!A.value){let a=[];for(let r=0;re.indent&&(a.length=0);break;default:a.length=0}}a.length>=2&&(o=A.sep.splice(a[1]))}switch(this.type){case"anchor":case"tag":n||A.value?(o.push(this.sourceToken),e.items.push({start:o}),this.onKeyLine=!0):A.sep?A.sep.push(this.sourceToken):A.start.push(this.sourceToken);return;case"explicit-key-ind":!A.sep&&!A.explicitKey?(A.start.push(this.sourceToken),A.explicitKey=!0):n||A.value?(o.push(this.sourceToken),e.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(A.explicitKey)if(A.sep)if(A.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(E2(A.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(cO(A.key)&&!E2(A.sep,"newline")){let a=RB(A.start),r=A.key,s=A.sep;s.push(this.sourceToken),delete A.key,delete A.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:r,sep:s}]})}else o.length>0?A.sep=A.sep.concat(o,this.sourceToken):A.sep.push(this.sourceToken);else if(E2(A.start,"newline"))Object.assign(A,{key:null,sep:[this.sourceToken]});else{let a=RB(A.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]})}else A.sep?A.value||n?e.items.push({start:o,key:null,sep:[this.sourceToken]}):E2(A.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):A.sep.push(this.sourceToken):Object.assign(A,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);n||A.value?(e.items.push({start:o,key:a,sep:[]}),this.onKeyLine=!0):A.sep?this.stack.push(a):(Object.assign(A,{key:a,sep:[]}),this.onKeyLine=!0);return}default:{let a=this.startBlockValue(e);if(a){if(a.type==="block-seq"){if(!A.explicitKey&&A.sep&&!E2(A.sep,"newline")){yield*Ie(this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source}));return}}else t&&e.items.push({start:o});this.stack.push(a);return}}}}yield*Ie(this.pop()),yield*Ie(this.step())}*blockSequence(e){let A=e.items[e.items.length-1];switch(this.type){case"newline":if(A.value){let t="end"in A.value?A.value.end:void 0;(Array.isArray(t)?t[t.length-1]:void 0)?.type==="comment"?t?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else A.start.push(this.sourceToken);return;case"space":case"comment":if(A.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(A.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){Array.prototype.push.apply(n,A.start),n.push(this.sourceToken),e.items.pop();return}}A.start.push(this.sourceToken)}return;case"anchor":case"tag":if(A.value||this.indent<=e.indent)break;A.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;A.value||E2(A.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):A.start.push(this.sourceToken);return}if(this.indent>e.indent){let t=this.startBlockValue(e);if(t){this.stack.push(t);return}}yield*Ie(this.pop()),yield*Ie(this.step())}*flowCollection(e){let A=e.items[e.items.length-1];if(this.type==="flow-error-end"){let t;do yield*Ie(this.pop()),t=this.peek(1);while(t?.type==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!A||A.sep?e.items.push({start:[this.sourceToken]}):A.start.push(this.sourceToken);return;case"map-value-ind":!A||A.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):A.sep?A.sep.push(this.sourceToken):Object.assign(A,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!A||A.value?e.items.push({start:[this.sourceToken]}):A.sep?A.sep.push(this.sourceToken):A.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let n=this.flowScalar(this.type);!A||A.value?e.items.push({start:[],key:n,sep:[]}):A.sep?this.stack.push(n):Object.assign(A,{key:n,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}let t=this.startBlockValue(e);t?this.stack.push(t):(yield*Ie(this.pop()),yield*Ie(this.step()))}else{let t=this.peek(2);if(t.type==="block-map"&&(this.type==="map-value-ind"&&t.indent===e.indent||this.type==="newline"&&!t.items[t.items.length-1].sep))yield*Ie(this.pop()),yield*Ie(this.step());else if(this.type==="map-value-ind"&&t.type!=="flow-collection"){let n=s6(t),o=RB(n);gO(e);let a=e.end.splice(1,e.end.length);a.push(this.sourceToken);let r={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:o,key:e,sep:a}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=r}else yield*Ie(this.lineEnd(e))}}flowScalar(e){if(this.onNewLine){let A=this.source.indexOf(` -`)+1;for(;A!==0;)this.onNewLine(this.offset+A),A=this.source.indexOf(` -`,A)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let A=s6(e),t=RB(A);return t.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:t,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let A=s6(e),t=RB(A);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:t,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,A){return this.type!=="comment"||this.indent<=A?!1:e.every(t=>t.type==="newline"||t.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*Ie(this.pop())))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*Ie(this.pop()),yield*Ie(this.step());break;case"newline":this.onKeyLine=!1;default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*Ie(this.pop()))}}};function IsA(i){let e=i.prettyErrors!==!1;return{lineCounter:i.lineCounter||e&&new vu||null,prettyErrors:e}}function CO(i,e={}){let{lineCounter:A,prettyErrors:t}=IsA(e),n=new bu(A?.addNewLine),o=new yu(e),a=null;for(let r of o.compose(n.parse(i),!0,i.length))if(!a)a=r;else if(a.options.logLevel!=="silent"){a.errors.push(new Ac(r.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return t&&A&&(a.errors.forEach(O7(i,A)),a.warnings.forEach(O7(i,A))),a}function NB(i,e,A){let t;typeof e=="function"?t=e:A===void 0&&e&&typeof e=="object"&&(A=e);let n=CO(i,A);if(!n)return null;if(n.warnings.forEach(o=>Tm(n.options.logLevel,o)),n.errors.length>0){if(n.options.logLevel!=="silent")throw n.errors[0];n.errors=[]}return n.toJS(Object.assign({reviver:t},A))}function AM(i,e,A){let t=null;if(typeof e=="function"||Array.isArray(e)?t=e:A===void 0&&e&&(A=e),typeof A=="string"&&(A=A.length),typeof A=="number"){let n=Math.round(A);A=n<1?void 0:n>8?{indent:8}:{indent:n}}if(i===void 0){let{keepUndefined:n}=A??e??{};if(!n)return}return Vg(i)&&!t?i.toString(A):new eC(i,t,A).toString(A)}var a0=class i{static generateYamlFile(e,A,t,n,o=new Set){if(o.has(e.name))return;o.add(e.name);let a=e.isRoot?"root_agent.yaml":`${e.name}.yaml`,r=`${t}/${a}`,s=e.sub_agents?e.sub_agents.map(u=>({config_path:`./${u.name}.yaml`})):[],l={name:e.name,model:e.model,agent_class:e.agent_class,description:e.description||"",instruction:e.instruction,sub_agents:s,tools:i.buildToolsConfig(e.tools,n)};(!e.description||e.description.trim()==="")&&delete l.description,e.agent_class!="LlmAgent"&&(delete l.model,delete l.instruction,delete l.tools),e.agent_class==="LoopAgent"&&e.max_iterations&&(l.max_iterations=e.max_iterations);let g=i.buildCallbacksConfig(e.callbacks);Object.keys(g).length>0&&Object.assign(l,g);let C=AM(l),d=new Blob([C],{type:"application/x-yaml"}),B=new File([d],r,{type:"application/x-yaml"});A.append("files",B);for(let u of e.sub_agents??[])i.generateYamlFile(u,A,t,n,o);if(e.tools){for(let u of e.tools)if(u.toolType==="Agent Tool"){let E=u.toolAgentName||u.name;if(!E||E==="undefined"||E.trim()==="")continue;let f=n.get(E);f&&i.generateYamlFile(f,A,t,n,o)}}}static buildToolsConfig(e,A){return!e||e.length===0?[]:e.map(t=>{let n={name:t.name};if(t.toolType==="Agent Tool"){n.name="AgentTool";let o=t.toolAgentName||t.name;if(!o||o==="undefined"||o.trim()==="")return null;let a=A.get(o);return n.args={agent:{config_path:`./${o}.yaml`},skip_summarization:a?.skip_summarization||!1},n}return t.args&&Object.keys(t.args).some(a=>{let r=t.args[a];return r!=null&&r!==""})&&(n.args=t.args),n}).filter(t=>t!==null)}static buildCallbacksConfig(e){if(!e||e.length===0)return{};let A={};return e.forEach(t=>{let n=`${t.type}_callbacks`;A[n]||(A[n]=[]),A[n].push({name:t.name})}),A}};function hsA(i,e){i&1&&(I(0,"mat-hint",3),D(1," Start with a letter or underscore, and contain only letters, digits, and underscores. "),h())}var l6=class i{constructor(e,A){this.data=e;this.dialogRef=A}newAppName="";agentService=w(el);_snackbarService=w(Xc);router=w(Is);isNameValid(){let e=this.newAppName.trim();return!(!e||!/^[a-zA-Z_]/.test(e)||!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(e))}createNewApp(){let e=this.newAppName.trim();if(!this.isNameValid()){this._snackbarService.open("App name must start with a letter or underscore and can only contain letters, digits, and underscores.","OK");return}if(this.data.existingAppNames.includes(e)){this._snackbarService.open("App name already exists. Please choose a different name.","OK");return}let A={agent_class:"LlmAgent",instruction:"You are the root agent that coordinates other agents.",isRoot:!0,model:"gemini-2.5-flash",name:e,sub_agents:[],tools:[]},t=new FormData,n=new Map;a0.generateYamlFile(A,t,e,n),this.agentService.agentBuildTmp(e,t).subscribe(o=>{o?(this.router.navigate(["/"],{queryParams:{app:e,mode:"builder"}}).then(()=>{window.location.reload()}),this.dialogRef.close(!0)):this._snackbarService.open("Something went wrong, please try again","OK")})}static \u0275fac=function(A){return new(A||i)(st(Do),st(zn))};static \u0275cmp=vA({type:i,selectors:[["app-add-item-dialog"]],decls:10,vars:3,consts:[["mat-dialog-title","",1,"new-app-title"],[2,"padding-left","20px","padding-right","24px"],["matInput","",3,"ngModelChange","keydown.enter","ngModel"],[1,"validation-hint"],["align","end"],["mat-button","","mat-dialog-close",""],["mat-button","","cdkFocusInitial","",3,"click","disabled"]],template:function(A,t){A&1&&(I(0,"h2",0),D(1,"Create a new app"),h(),I(2,"mat-form-field",1)(3,"input",2),Ni("ngModelChange",function(o){return wi(t.newAppName,o)||(t.newAppName=o),o}),U("keydown.enter",function(){return t.createNewApp()}),h(),T(4,hsA,2,0,"mat-hint",3),h(),I(5,"mat-dialog-actions",4)(6,"button",5),D(7,"Cancel"),h(),I(8,"button",6),U("click",function(){return t.createNewApp()}),D(9," Create "),h()()),A&2&&(Q(3),Ri("ngModel",t.newAppName),Q(),O(t.isNameValid()?-1:4),Q(4),H("disabled",!t.isNameValid()))},dependencies:[Xo,Zo,ka,fn,Gn,Kn,Ho,ha,ki,r2,J1],styles:[".new-app-title[_ngcontent-%COMP%]{color:var(--mdc-dialog-subhead-color)!important;font-family:Google Sans;font-size:24px}.validation-hint[_ngcontent-%COMP%]{font-size:12px;color:var(--mdc-dialog-supporting-text-color)}"]})};function FB(i,e,A){let t=typeof i=="string"?document.querySelector(i):i;if(!t)return;t.querySelectorAll("g.node").forEach(o=>{let a=o,s=o.querySelector("title")?.textContent||"";s==="__LEGEND__"||s==="__START__"||s==="__END__"||a.classList.contains("unvisited-node")||A&&!A.has(s)||(a.style.cursor="pointer",a.addEventListener("mouseenter",()=>{let l=o.querySelector("ellipse, polygon, path, rect");l&&(l.style.stroke="#42A5F5",l.style.strokeWidth="3")}),a.addEventListener("mouseleave",()=>{let l=o.querySelector("ellipse, polygon, path, rect");l&&(l.style.stroke="",l.style.strokeWidth="")}),e&&a.addEventListener("click",l=>{let C=o.querySelector("title")?.textContent||"";C&&e(C,l)}))})}function IO(i,e,A={}){let{ySpacing:t=200,xSpacing:n=350,startX:o=400,startY:a=100}=A,r=i.map(m=>m.name||m.agent?.name||""),s=new Map,l=new Map;r.forEach(m=>{s.set(m,[]),l.set(m,0)}),e.forEach(m=>{let v=m.from_node?.name||m.from_node?.agent?.name,S=m.to_node?.name||m.to_node?.agent?.name;v&&S&&(s.get(v)?.push(S),l.set(S,(l.get(S)||0)+1))});let g=new Map,C=[],d=new Map(l),B=new Set;for(r.forEach(m=>{d.get(m)===0&&(C.push(m),g.set(m,0),B.add(m))});C.length>0;){let m=C.shift(),v=g.get(m)||0;s.get(m)?.forEach(S=>{let k=g.get(S);if(k!==void 0&&k<=v)return;let M=v+1;k===void 0&&g.set(S,M);let x=d.get(S)||0;d.set(S,x-1),d.get(S)===0&&!B.has(S)&&(C.push(S),B.add(S))})}let u=Math.max(...Array.from(g.values()),0);r.forEach(m=>{g.has(m)||(g.set(m,u+1),u++)});let E=new Map;g.forEach((m,v)=>{E.has(m)||E.set(m,[]),E.get(m)?.push(v)});let f=new Map;return i.forEach(m=>{let v=m.name||m.agent?.name||"",S=g.get(v)||0,k=E.get(S)||[],M=k.indexOf(v),x=k.length,F=(M-(x-1)/2)*n;f.set(v,{x:o+F,y:a+S*t})}),{levels:g,nodesByLevel:E,positions:f}}function tc(i,e=""){return i?.name||i?.agent?.name||e}function BO(i){switch(i){case"start":return"play_arrow";case"function":return"code";case"tool":return"build";case"join":return"merge";default:return"smart_toy"}}function hO(i){switch(i){case"start":return"Start";case"function":return"Function";case"tool":return"Tool";case"join":return"Join";default:return"Agent"}}var g6={ySpacing:200,xSpacing:350,startX:400,startY:100};function EO(i){return i.map(e=>e.name).join("/")}function tC(i){return!!(i.graph||i.nodes||i.sub_agents&&i.sub_agents.length>0)}function eM(i){return i.graph?.nodes?i.graph.nodes:i.nodes?i.nodes:[]}function LB(i,e){if(i.nodes){let A=i.nodes.find(t=>t.name===e);if(A)return A}if(i.graph?.nodes){let A=i.graph.nodes.find(t=>t.name===e);if(A)return A}if(i.sub_agents){let A=i.sub_agents.find(t=>t.name===e);if(A)return A}return null}function QO(i,e){let A=e.split("/"),t=[{name:i.name,data:i}],n=i;for(let o=1;otc(l)===a);if(s)t.push({name:a,data:s}),n=s;else{console.warn(`Could not find node '${a}' in path '${e}'`);break}}return t}function EsA(i,e){i&1&&(I(0,"mat-icon",20),D(1,"chevron_right"),h())}function QsA(i,e){if(i&1){let A=aA();T(0,EsA,2,0,"mat-icon",20),I(1,"button",21),U("click",function(){let n=L(A).$index,o=p(2);return G(o.navigateToLevel(n))}),D(2),h()}if(i&2){let A=e.$implicit,t=e.$index,n=p(2);O(t>0?0:-1),Q(),_A("active",t===n.breadcrumbs().length-1),H("disabled",t===n.breadcrumbs().length-1),Q(),Ee(" ",A," ")}}function usA(i,e){if(i&1&&(I(0,"div",3)(1,"span"),D(2,"Agent Structure:"),h(),I(3,"button",19),D(4),h(),I(5,"mat-icon",20),D(6,"chevron_right"),h(),ke(7,QsA,3,5,null,null,Ja),h()),i&2){let A=p();Q(4),nA(A.appName),Q(3),_e(A.breadcrumbs())}}function psA(i,e){i&1&&(I(0,"div",15),lA(1,"mat-spinner",22),I(2,"p"),D(3,"Loading agent structure..."),h()())}function fsA(i,e){if(i&1&&(I(0,"div",16)(1,"mat-icon",23),D(2,"error_outline"),h(),I(3,"p",24),D(4),h()()),i&2){let A=p();Q(4),nA(A.errorMessage())}}function msA(i,e){if(i&1){let A=aA();I(0,"div",25),U("wheel",function(n){L(A);let o=p();return G(o.onWheel(n))})("mousedown",function(n){L(A);let o=p();return G(o.onMouseDown(n))})("mousemove",function(n){L(A);let o=p();return G(o.onMouseMove(n))})("mouseup",function(){L(A);let n=p();return G(n.onMouseUp())})("mouseleave",function(){L(A);let n=p();return G(n.onMouseUp())}),h()}if(i&2){let A=p();H("innerHTML",A.renderedGraph(),Fc)}}function wsA(i,e){i&1&&(I(0,"div",18)(1,"mat-icon",26),D(2,"account_tree"),h(),I(3,"p"),D(4,"Agent structure graph not available."),h()())}var c6=class i{appName;preloadedAppData;preloadedLightGraphSvg;preloadedDarkGraphSvg;startPath;close=new FA;agentService=w(el);graphService=w(uB);sanitizer=w(Qs);themeService=w(og);renderedGraph=mA(null);isLoading=mA(!0);errorMessage=mA(null);fullAppData=null;navigationStack=[];breadcrumbs=mA([]);isPanning=!1;wasDragging=!1;dragStartX=0;dragStartY=0;startPanX=0;startPanY=0;scale=1;translateX=0;translateY=0;lastMousedownTarget=null;onOverlayMouseDown(e){this.lastMousedownTarget=e.target}onBackdropClick(e){if(this.wasDragging||this.lastMousedownTarget&&(this.lastMousedownTarget.closest("svg")||this.lastMousedownTarget.closest(".overlay-header")||this.lastMousedownTarget.closest(".loading-container")||this.lastMousedownTarget.closest(".error-container")||this.lastMousedownTarget.closest(".no-graph-container")))return;let A=e.target;!A.closest("svg")&&!A.closest(".overlay-header")&&!A.closest(".loading-container")&&!A.closest(".error-container")&&!A.closest(".no-graph-container")&&this.close.emit()}ngOnInit(){this.loadAgentGraph()}loadAgentGraph(){if(this.isLoading.set(!0),this.errorMessage.set(null),this.renderedGraph.set(null),this.preloadedAppData){if(this.fullAppData=this.preloadedAppData,this.navigationStack=[{name:this.fullAppData.root_agent?.name||this.appName,data:this.fullAppData.root_agent}],this.startPath){let e=this.fullAppData.root_agent,A=this.startPath.split("/");for(let t of A){if(!t)continue;let n=LB(e,t);if(n)this.navigationStack.push({name:t,data:n}),e=n;else break}}this.updateBreadcrumbs(),this.renderCurrentLevel();return}this.agentService.getAppInfo(this.appName).subscribe({next:e=>{if(this.fullAppData=e,this.navigationStack=[{name:e.root_agent?.name||this.appName,data:e.root_agent}],this.startPath){let A=this.fullAppData.root_agent,t=this.startPath.split("/");for(let n of t){if(!n)continue;let o=LB(A,n);if(o)this.navigationStack.push({name:n,data:o}),A=o;else break}}this.updateBreadcrumbs(),this.renderCurrentLevel()},error:e=>{console.error("Error loading app data:",e),this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1)}})}renderCurrentLevel(){let e=this.themeService.currentTheme()==="dark",A=this.getCurrentPath(),t=e?this.preloadedDarkGraphSvg:this.preloadedLightGraphSvg,n=t?t[A]:null;if(n){this.renderedGraph.set(this.sanitizer.bypassSecurityTrustHtml(n)),this.isLoading.set(!1),setTimeout(()=>{let o=this.getExpandableNodes();FB(".svg-container",a=>{this.wasDragging||this.onNodeClick(a)},o),this.initializeSvgTransform()},50);return}this.agentService.getAppGraphImage(this.appName,e,A).subscribe({next:o=>re(this,null,function*(){try{if(!o?.dotSrc){this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1);return}let a=yield this.graphService.render(o.dotSrc);this.renderedGraph.set(this.sanitizer.bypassSecurityTrustHtml(a)),this.isLoading.set(!1),setTimeout(()=>{let r=this.getExpandableNodes();FB(".svg-container",s=>{this.wasDragging||this.onNodeClick(s)},r),this.initializeSvgTransform()},50)}catch(a){console.error("Error rendering graph:",a),this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1)}}),error:o=>{console.error("Error loading agent graph:",o),this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1)}})}getCurrentPath(){return this.navigationStack.length<=1?"":this.navigationStack.slice(1).map(e=>e.name).join("/")}updateBreadcrumbs(){this.breadcrumbs.set(this.navigationStack.map(e=>e.name))}onNodeClick(e){let A=this.navigationStack[this.navigationStack.length-1].data,t=LB(A,e);t&&tC(t)&&this.navigateIntoNode(e,t)}navigateIntoNode(e,A){this.navigationStack.push({name:e,data:A}),this.updateBreadcrumbs(),this.isLoading.set(!0),this.renderCurrentLevel()}navigateToLevel(e){e>=0&&e{let a=tc(o);a!==t&&tC(o)&&e.add(a)}),e}getSvgElement(){return document.querySelector(".svg-container svg")}applyTransform(){let e=this.getSvgElement();e&&(e.style.transform=`translate(${this.translateX}px, ${this.translateY}px) scale(${this.scale})`)}initializeSvgTransform(){let e=this.getSvgElement(),A=document.querySelector(".svg-container");if(!e||!A)return;let t=e.getBoundingClientRect(),n=A.getBoundingClientRect(),o=48,a=(n.width-o)/t.width,r=(n.height-o)/t.height;this.scale=Math.min(1,a,r);let s=t.width*this.scale,l=t.height*this.scale;this.translateX=(n.width-s)/2,this.translateY=(n.height-l)/2,this.applyTransform(),requestAnimationFrame(()=>{e.classList.add("ready")})}onWheel(e){let A=document.querySelector(".svg-container"),t=this.getSvgElement();if(!A||!t)return;e.preventDefault();let n=Math.max(-100,Math.min(100,e.deltaY)),o=Math.pow(1.002,-n),a=this.scale*o,r=A.getBoundingClientRect(),s=e.clientX-r.left,l=e.clientY-r.top,g=(s-this.translateX)/this.scale,C=(l-this.translateY)/this.scale;this.translateX=s-g*a,this.translateY=l-C*a,this.scale=a,this.applyTransform()}onMouseDown(e){if(e.button!==0||!e.target.closest("svg"))return;this.isPanning=!0,this.wasDragging=!1,this.dragStartX=e.clientX,this.dragStartY=e.clientY,this.startPanX=e.clientX,this.startPanY=e.clientY;let t=this.getSvgElement();t&&(t.style.cursor="grabbing")}onMouseMove(e){if(this.isPanning){if(!this.wasDragging){let A=e.clientX-this.dragStartX,t=e.clientY-this.dragStartY;A*A+t*t>25&&(this.wasDragging=!0)}this.translateX+=e.clientX-this.startPanX,this.translateY+=e.clientY-this.startPanY,this.startPanX=e.clientX,this.startPanY=e.clientY,this.applyTransform()}}onMouseUp(){this.isPanning=!1;let e=this.getSvgElement();e&&(e.style.cursor=""),setTimeout(()=>{this.wasDragging=!1},50)}resetZoomPan(){this.initializeSvgTransform()}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-agent-structure-graph-dialog"]],inputs:{appName:"appName",preloadedAppData:"preloadedAppData",preloadedLightGraphSvg:"preloadedLightGraphSvg",preloadedDarkGraphSvg:"preloadedDarkGraphSvg",startPath:"startPath"},outputs:{close:"close"},decls:35,vars:2,consts:[[1,"overlay-backdrop"],[1,"overlay-panel",3,"mousedown","click"],[1,"overlay-header"],[1,"breadcrumb-container"],[2,"flex","1"],[1,"graph-legend"],[1,"legend-item"],[2,"color","#42a5f5","font-size","16px"],[2,"color","#9333ea","font-size","16px"],[2,"color","#10b981","font-size","16px"],[2,"color","#f59e0b","font-size","16px"],[2,"color","#6b7280","font-size","16px"],["mat-icon-button","","aria-label","Close",3,"click"],[1,"overlay-content"],[1,"graph-container"],[1,"loading-container"],[1,"error-container"],[1,"svg-container",3,"innerHTML"],[1,"no-graph-container"],["disabled","",1,"breadcrumb-item"],[1,"breadcrumb-separator"],[1,"breadcrumb-item",3,"click","disabled"],["diameter","50"],[1,"error-icon"],[1,"error-message"],[1,"svg-container",3,"wheel","mousedown","mousemove","mouseup","mouseleave","innerHTML"],[1,"large-icon"]],template:function(A,t){A&1&&(lA(0,"div",0),I(1,"div",1),U("mousedown",function(o){return t.onOverlayMouseDown(o)})("click",function(o){return t.onBackdropClick(o)}),I(2,"div",2),T(3,usA,9,1,"div",3),lA(4,"span",4),I(5,"div",5)(6,"span",6)(7,"span",7),D(8,"\u2726"),h(),D(9," Agent"),h(),I(10,"span",6)(11,"span",8),D(12,"\u22B7"),h(),D(13," Workflow"),h(),I(14,"span",6)(15,"span",9),D(16,"\u0192"),h(),D(17," Function"),h(),I(18,"span",6)(19,"span",10),D(20,"\u2335"),h(),D(21," Join"),h(),I(22,"span",6)(23,"span",11),D(24,"\u{1F527}"),h(),D(25," Tool"),h()(),I(26,"button",12),U("click",function(){return t.close.emit()}),I(27,"mat-icon"),D(28,"close"),h()()(),I(29,"div",13)(30,"div",14),T(31,psA,4,0,"div",15)(32,fsA,5,1,"div",16)(33,msA,1,1,"div",17)(34,wsA,5,0,"div",18),h()()()),A&2&&(Q(3),O(t.renderedGraph()&&t.breadcrumbs().length>0?3:-1),Q(28),O(t.isLoading()?31:t.errorMessage()?32:t.renderedGraph()?33:34))},dependencies:[li,qi,yi,Un,zt,l2,Es],styles:["[_nghost-%COMP%]{display:block;position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.overlay-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;background-color:#000000b3}.overlay-panel[_ngcontent-%COMP%]{position:relative;width:100vw;height:100vh;display:flex;flex-direction:column;background-color:transparent;color:var(--mat-sys-on-surface);border-radius:0;overflow:hidden;box-shadow:none}.overlay-header[_ngcontent-%COMP%]{display:flex;align-items:center;height:48px;padding:0 16px;box-sizing:border-box;border-bottom:1px solid var(--mat-sys-outline-variant);background-color:var(--mat-sys-surface-container)}.overlay-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden}.graph-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0}.agent-info[_ngcontent-%COMP%]{margin:0 0 8px;font-size:14px;color:var(--mdc-dialog-supporting-text-color)}.agent-info[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:var(--mdc-dialog-supporting-text-color)}.svg-container[_ngcontent-%COMP%]{flex:1;position:relative;overflow:hidden;background-color:transparent}.svg-container[_ngcontent-%COMP%] svg{position:absolute;top:0;left:0;transform-origin:0 0;cursor:grab;border-radius:16px;box-shadow:0 4px 12px #0000004d}.svg-container[_ngcontent-%COMP%] svg>g.graph>polygon:first-child{fill:transparent!important;stroke:transparent!important}.svg-container[_ngcontent-%COMP%] svg{opacity:0;transition:opacity .1s ease-in-out}.svg-container[_ngcontent-%COMP%] svg.ready{opacity:1}.svg-container[_ngcontent-%COMP%] svg:active{cursor:grabbing}.dark-theme[_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg, .dark-theme [_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg{background-color:#0e172a}.light-theme[_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg, .light-theme [_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg{background-color:#f9fafc}.loading-container[_ngcontent-%COMP%], .error-container[_ngcontent-%COMP%], .no-graph-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:40px}.loading-container[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .error-container[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .no-graph-container[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-top:16px;font-size:14px;color:var(--mdc-dialog-supporting-text-color)}.error-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px;color:#f44336}.error-message[_ngcontent-%COMP%]{color:#f44336!important}.large-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px;color:var(--mdc-dialog-supporting-text-color);opacity:.6}.breadcrumb-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;margin-left:8px;padding:0;background-color:transparent;flex-wrap:wrap}.breadcrumb-item[_ngcontent-%COMP%]{background:none;border:none;padding:4px 8px;cursor:pointer;color:var(--mat-sys-primary);font-size:13px;border-radius:4px;transition:background-color .2s}.breadcrumb-item[_ngcontent-%COMP%]:hover:not(:disabled){background-color:var(--mat-sys-surface-container-high)}.breadcrumb-item[_ngcontent-%COMP%]:disabled, .breadcrumb-item.active[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);cursor:default;font-weight:600}.breadcrumb-separator[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:var(--mat-sys-on-surface-variant)}.graph-legend[_ngcontent-%COMP%]{display:flex;align-items:center;gap:16px;margin-right:16px;font-size:13px;color:var(--mat-sys-on-surface-variant);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;padding:6px 16px;background-color:var(--mat-sys-surface-container-lowest)}.graph-legend[_ngcontent-%COMP%] .legend-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;font-weight:500}"]})};var ysA=["mat-internal-form-field",""],DsA=["*"],C6=(()=>{class i{labelPosition="after";static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["div","mat-internal-form-field",""]],hostAttrs:[1,"mdc-form-field","mat-internal-form-field"],hostVars:2,hostBindings:function(t,n){t&2&&_A("mdc-form-field--align-end",n.labelPosition==="before")},inputs:{labelPosition:"labelPosition"},attrs:ysA,ngContentSelectors:DsA,decls:1,vars:0,template:function(t,n){t&1&&(Ot(),Ze(0))},styles:[`.mat-internal-form-field{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;vertical-align:middle}.mat-internal-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mat-internal-form-field>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end .mdc-form-field--align-end label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0} -`],encapsulation:2,changeDetection:0})}return i})();var vsA=["audioPlayer"],GB=class i{base64data=ve("");audioPlayerRef=Yo("audioPlayer");audioSrc="";constructor(){}ngOnChanges(e){e.base64data&&this.base64data()&&this.setAudioSource(this.base64data())}setAudioSource(e){e.startsWith("data:")||e.startsWith("http")||e.startsWith("blob:")?this.audioSrc=e:this.audioSrc=`data:audio/mpeg;base64,${e}`,this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&this.audioPlayerRef().nativeElement.load()}play(){this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&this.audioPlayerRef().nativeElement.play()}pause(){this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&this.audioPlayerRef().nativeElement.pause()}stop(){this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&(this.audioPlayerRef().nativeElement.pause(),this.audioPlayerRef().nativeElement.currentTime=0)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-audio-player"]],viewQuery:function(A,t){A&1&&ls(t.audioPlayerRef,vsA,5),A&2&&br()},inputs:{base64data:[1,"base64data"]},features:[ii],decls:3,vars:1,consts:[["audioPlayer",""],["controls","",3,"src"]],template:function(A,t){A&1&&(Ln(0,"div"),$n(1,"audio",1,0),Xn()),A&2&&(Q(),Ma("src",t.audioSrc))},styles:[".audio-player-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;padding:15px;border-radius:8px;box-shadow:0 2px 5px var(--audio-player-container-box-shadow-color);margin:20px auto;max-width:350px}audio[_ngcontent-%COMP%]{outline:none;border-radius:5px;width:350px}.custom-controls[_ngcontent-%COMP%]{margin-top:10px;display:flex;gap:10px}.custom-controls[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{padding:8px 15px;border:none;border-radius:5px;color:var(--audio-player-custom-controls-button-color);cursor:pointer;font-size:14px;transition:background-color .2s ease}"]})};function bsA(i,e){if(i&1){let A=aA();I(0,"div",0)(1,"div",4),D(2),h(),I(3,"button",5),U("click",function(){L(A);let n=p();return G(n.close())}),Et(),I(4,"svg",6),lA(5,"path",7),h()()()}if(i&2){let A=p();Q(),H("title",A.currentUrl),Q(),nA(A.currentUrl)}}function MsA(i,e){if(i&1){let A=aA();I(0,"button",5),U("click",function(){L(A);let n=p();return G(n.close())}),Et(),I(1,"svg",6),lA(2,"path",7),h()()}}function SsA(i,e){if(i&1){let A=aA();I(0,"button",8),U("click",function(){L(A);let n=p();return G(n.prevImage())}),Et(),I(1,"svg",6),lA(2,"path",9),h()(),hr(),I(3,"button",10),U("click",function(){L(A);let n=p();return G(n.nextImage())}),Et(),I(4,"svg",6),lA(5,"path",11),h()(),hr(),I(6,"div",12),D(7),h()}if(i&2){let A=p();H("disabled",A.currentIndex===0),Q(3),H("disabled",A.currentIndex===A.images.length-1),Q(4),Ya("",A.currentIndex+1," / ",A.images.length)}}function ksA(i,e){if(i&1&&lA(0,"div",18),i&2){let A=p(3);H("ngStyle",A.getHighlightStyle())}}function _sA(i,e){if(i&1){let A=aA();I(0,"div",16),U("click",function(n){return n.stopPropagation()})("wheel",function(n){L(A);let o=p(2);return G(o.onWheel(n))})("mousedown",function(n){L(A);let o=p(2);return G(o.onMouseDown(n))})("mousemove",function(n){L(A);let o=p(2);return G(o.onMouseMove(n))})("mouseup",function(){L(A);let n=p(2);return G(n.onMouseUp())})("mouseleave",function(){L(A);let n=p(2);return G(n.onMouseUp())}),lA(1,"img",17),T(2,ksA,1,1,"div",18),h()}if(i&2){let A=p(2);H("ngStyle",A.getTransformStyle()),Q(),H("src",A.displayContent,mo),Q(),O(A.shouldShowHighlight()?2:-1)}}function xsA(i,e){i&1&&(I(0,"div",15),D(1," No image data provided. "),h())}function RsA(i,e){if(i&1){let A=aA();I(0,"div",13),U("click",function(){L(A);let n=p();return G(n.close())}),T(1,_sA,3,3,"div",14),T(2,xsA,2,0,"div",15),h()}if(i&2){let A=p();Q(),O(A.displayContent?1:-1),Q(),O(A.displayContent?-1:2)}}function NsA(i,e){if(i&1&&lA(0,"div",3),i&2){let A=p();H("innerHTML",A.displayContent,Fc)}}var KB=class i{displayContent=null;isSvgContent=!1;images=[];currentIndex=0;currentUrl=null;urls=[];coordinates=[];scale=1;translateX=0;translateY=0;isDragging=!1;startX=0;startY=0;dialogRef=w(zn);data=w(Do);safeValuesService=w(Qs);ngOnInit(){this.images=this.data.images||[],this.currentIndex=this.data.currentIndex||0,this.urls=this.data.urls||[],this.coordinates=this.data.coordinates||[],this.updateImage()}updateImage(){this.scale=1,this.translateX=0,this.translateY=0;let e=this.data.imageData,A="";this.images.length>0&&(e=this.images[this.currentIndex],A=this.urls[this.currentIndex]||""),this.currentUrl=A,this.processImageData(e)}getHighlightStyle(){let e=this.coordinates[this.currentIndex];return e?{left:`${e.x/1e3*100}%`,top:`${e.y/1e3*100}%`}:{}}shouldShowHighlight(){return!!this.coordinates[this.currentIndex]}processImageData(e){if(!e){this.displayContent=null,this.isSvgContent=!1;return}if(e.trim().includes("0&&(this.currentIndex--,this.updateImage())}onWheel(e){e.preventDefault();let A=.1;e.deltaY<0?this.scale+=A:this.scale=Math.max(.5,this.scale-A)}onMouseDown(e){this.isDragging=!0,this.startX=e.clientX-this.translateX,this.startY=e.clientY-this.translateY,e.preventDefault()}onMouseMove(e){this.isDragging&&(this.translateX=e.clientX-this.startX,this.translateY=e.clientY-this.startY)}onMouseUp(){this.isDragging=!1}getTransformStyle(){return{transform:`translate(${this.translateX}px, ${this.translateY}px) scale(${this.scale})`,transformOrigin:"center",cursor:this.isDragging?"grabbing":"grab",transition:this.isDragging?"none":"transform 0.1s ease"}}handleKeyDown(e){e.key==="ArrowLeft"?this.prevImage():e.key==="ArrowRight"&&this.nextImage()}close(){this.dialogRef.close()}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-view-image-dialog"]],hostBindings:function(A,t){A&1&&U("keydown",function(o){return t.handleKeyDown(o)},Fg)},decls:6,vars:4,consts:[[1,"header-bar"],[1,"close-button"],[1,"image-wrapper"],[3,"innerHTML"],[1,"image-title",3,"title"],[1,"close-button",3,"click"],["xmlns","http://www.w3.org/2000/svg","viewBox","0 0 24 24","fill","currentColor","width","24px","height","24px"],["d","M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"],[1,"nav-button","prev-button",3,"click","disabled"],["d","M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"],[1,"nav-button","next-button",3,"click","disabled"],["d","M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"],[1,"image-counter"],[1,"image-wrapper",3,"click"],[1,"image-container",2,"position","relative","display","inline-block",3,"ngStyle"],[1,"no-image-placeholder"],[1,"image-container",2,"position","relative","display","inline-block",3,"click","wheel","mousedown","mousemove","mouseup","mouseleave","ngStyle"],["alt","Viewed Image",3,"src"],[1,"highlight-circle",3,"ngStyle"]],template:function(A,t){A&1&&(I(0,"div"),T(1,bsA,6,2,"div",0)(2,MsA,3,0,"button",1),T(3,SsA,8,4),T(4,RsA,3,2,"div",2),T(5,NsA,1,1,"div",3),h()),A&2&&(Q(),O(t.currentUrl?1:2),Q(2),O(t.images.length>1?3:-1),Q(),O(t.isSvgContent?-1:4),Q(),O(t.isSvgContent?5:-1))},dependencies:[vI],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;width:100vw;height:100vh;padding:0;overflow:hidden;background-color:#0009}.close-button[_ngcontent-%COMP%]{position:absolute;top:5px;right:10px;border:none;cursor:pointer;padding:8px;border-radius:50%;transition:background-color .2s ease;color:#fff;background:#00000080;display:flex;align-items:center;justify-content:center;margin-bottom:15px;z-index:30}.close-button[_ngcontent-%COMP%]:hover{background-color:#0000000d}.close-button[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:24px;height:24px;fill:currentColor}.image-wrapper[_ngcontent-%COMP%]{flex-grow:1;display:flex;justify-content:center;align-items:center;overflow:hidden}.image-wrapper[_ngcontent-%COMP%] img[_ngcontent-%COMP%], .image-wrapper[_ngcontent-%COMP%] .svg-container[_ngcontent-%COMP%]{max-width:100%;max-height:100%;object-fit:contain;border-radius:0}.no-image-placeholder[_ngcontent-%COMP%]{color:var(--trace-chart-trace-duration-color);font-style:italic;text-align:center;padding:20px}@media(max-width:1768px){.close-button[_ngcontent-%COMP%]{top:5px;right:5px;padding:5px}}.nav-button[_ngcontent-%COMP%]{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease;z-index:10}.nav-button[_ngcontent-%COMP%]:hover:not(:disabled){background:#000000b3}.nav-button[_ngcontent-%COMP%]:disabled{opacity:.3;cursor:default}.nav-button[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:24px;height:24px;fill:currentColor}.prev-button[_ngcontent-%COMP%]{left:20px}.next-button[_ngcontent-%COMP%]{right:20px}.image-counter[_ngcontent-%COMP%]{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#00000080;color:#fff;padding:4px 12px;border-radius:12px;font-size:14px;z-index:10}.header-bar[_ngcontent-%COMP%]{position:absolute;top:0;left:0;width:100%;background:#000000b3;color:#fff;z-index:20;display:flex;align-items:center;justify-content:center;padding:8px 40px;box-sizing:border-box}.image-title[_ngcontent-%COMP%]{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90%}.header-bar[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{position:absolute;top:50%;right:10px;transform:translateY(-50%);color:#fff;margin-bottom:0;background:transparent}.header-bar[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]:hover{background-color:#ffffff1a}.highlight-circle[_ngcontent-%COMP%]{position:absolute;width:30px;height:30px;border-radius:50%;background-color:#ff000080;border:2px solid red;transform:translate(-50%,-50%);pointer-events:none;z-index:5}"]})};function FsA(i,e){i&1&&(I(0,"mat-icon",4),D(1,"image"),h())}function LsA(i,e){i&1&&(I(0,"mat-icon",4),D(1,"audiotrack"),h())}function GsA(i,e){i&1&&(I(0,"mat-icon",4),D(1,"movie"),h())}function KsA(i,e){i&1&&(I(0,"mat-icon",4),D(1,"description"),h())}function UsA(i,e){i&1&&(I(0,"mat-icon",4),D(1,"text_snippet"),h())}function TsA(i,e){if(i&1&&T(0,KsA,2,0,"mat-icon",4)(1,UsA,2,0,"mat-icon",4),i&2){let A=p().$index,t=p();O(t.selectedArtifacts[A].mimeType==="text/html"?0:1)}}function OsA(i,e){i&1&&(I(0,"mat-icon",4),D(1,"insert_drive_file"),h())}function JsA(i,e){if(i&1&&(I(0,"mat-option",12),D(1),h()),i&2){let A=e.$implicit;H("value",A),Q(),nA(A.versionId)}}function YsA(i,e){if(i&1){let A=aA();I(0,"div",15)(1,"img",18),U("click",function(){L(A);let n=p().$index,o=p();return G(o.openViewImageDialog(o.selectedArtifacts[n].data))}),h()()}if(i&2){let A=p().$index,t=p();Q(),H("src",t.selectedArtifacts[A].data??"",mo)}}function HsA(i,e){if(i&1&&(I(0,"div",16),lA(1,"app-audio-player",19),h()),i&2){let A=p().$index,t=p();Q(),H("base64data",t.selectedArtifacts[A].data)}}function zsA(i,e){if(i&1&&(I(0,"div",17),lA(1,"video",20),h()),i&2){let A=p().$index,t=p();Q(),H("src",t.selectedArtifacts[A].data,mo)}}function PsA(i,e){if(i&1){let A=aA();I(0,"div",21)(1,"mat-icon",23),D(2,"description"),h(),I(3,"a",24),U("click",function(){L(A);let n=p(2).$index,o=p();return G(o.openArtifact(o.selectedArtifacts[n].data,o.selectedArtifacts[n].mimeType))}),D(4," Preview in new tab "),h()()}}function jsA(i,e){if(i&1&&(I(0,"div",22)(1,"pre",25),D(2),h()()),i&2){let A=p(2).$index,t=p();Q(2),nA(t.getTextContent(t.selectedArtifacts[A].data))}}function VsA(i,e){if(i&1&&T(0,PsA,5,0,"div",21)(1,jsA,3,1,"div",22),i&2){let A=p().$index,t=p();O(t.selectedArtifacts[A].mimeType==="text/html"?0:1)}}function qsA(i,e){if(i&1){let A=aA();I(0,"div",1)(1,"div",2)(2,"div",3),T(3,FsA,2,0,"mat-icon",4)(4,LsA,2,0,"mat-icon",4)(5,GsA,2,0,"mat-icon",4)(6,TsA,2,1)(7,OsA,2,0,"mat-icon",4),I(8,"button",5),U("click",function(){let n=L(A).$index,o=p();return G(o.openArtifact(o.selectedArtifacts[n].data,o.selectedArtifacts[n].mimeType))}),I(9,"span",6),D(10),h(),I(11,"mat-icon",7),D(12,"open_in_new"),h()()(),I(13,"div",8)(14,"div",9)(15,"span",10),D(16,"Version:"),h(),I(17,"mat-select",11),Ni("ngModelChange",function(n){let o=L(A).$index,a=p();return wi(a.selectedArtifacts[o],n)||(a.selectedArtifacts[o]=n),G(n)}),U("selectionChange",function(n){let o=L(A).$index,a=p();return G(a.onArtifactVersionChange(n,o))}),ke(18,JsA,2,2,"mat-option",12,ni),h()(),I(20,"button",13),U("click",function(){let n=L(A).$index,o=p();return G(o.downloadArtifact(o.selectedArtifacts[n]))}),I(21,"mat-icon"),D(22,"file_download"),h()()()(),I(23,"div",14),T(24,YsA,2,1,"div",15)(25,HsA,2,1,"div",16)(26,zsA,2,1,"div",17)(27,VsA,2,1),h()()}if(i&2){let A,t,n=e.$implicit,o=e.$index,a=p();Q(3),O((A=a.selectedArtifacts[o].mediaType)===a.MediaType.IMAGE?3:A===a.MediaType.AUDIO?4:A===a.MediaType.VIDEO?5:A===a.MediaType.TEXT?6:7),Q(5),H("matTooltip","Open in new tab"),Q(2),nA(a.getArtifactName(n)),Q(7),Ri("ngModel",a.selectedArtifacts[o]),Q(),_e(a.getSortedArtifactsFromId(n)),Q(2),H("matTooltip","Download artifact"),Q(4),O((t=a.selectedArtifacts[o].mediaType)===a.MediaType.IMAGE?24:t===a.MediaType.AUDIO?25:t===a.MediaType.VIDEO?26:t===a.MediaType.TEXT?27:-1)}}var WsA="default_artifact_name",iC=(o=>(o.IMAGE="image",o.AUDIO="audio",o.VIDEO="video",o.TEXT="text",o.UNSPECIFIED="unspecified",o))(iC||{});function I6(i){let e=i.toLowerCase();for(let A of Object.values(iC))if(A!=="unspecified"&&e.startsWith(A+"/"))return A;return"unspecified"}function ZsA(i){return i?i.startsWith("image/"):!1}function XsA(i){return i?i.startsWith("audio/"):!1}var d6=class i{artifacts=ve([]);selectedArtifacts=[];isArtifactAudio=XsA;isArtifactImage=ZsA;MediaType=iC;downloadService=w(QB);dialog=w(Xa);safeValuesService=w(Qs);ngOnChanges(e){if(e.artifacts){this.selectedArtifacts=[];for(let A of this.getDistinctArtifactIds())this.selectedArtifacts.push(this.getSortedArtifactsFromId(A)[0])}}downloadArtifact(e){this.downloadService.downloadBase64Data(e.data,e.mimeType,e.id)}getArtifactName(e){return e??WsA}getDistinctArtifactIds(){return[...new Set(this.artifacts().map(e=>e.id))]}getSortedArtifactsFromId(e){return this.artifacts().filter(A=>A.id===e).sort((A,t)=>t.versionId-A.versionId)}getTextContent(e){if(!e)return"";let A=e.indexOf(",");if(A===-1)return"";let t=e.substring(A+1);try{return atob(t)}catch(n){return"Failed to decode text content"}}onArtifactVersionChange(e,A){this.selectedArtifacts[A]=e.value}openViewImageDialog(e){if(!e||!e.startsWith("data:")||e.indexOf(";base64,")===-1)return;let A=this.dialog.open(KB,{maxWidth:"90vw",maxHeight:"90vh",data:{imageData:e}})}openArtifact(e,A){this.openBase64InNewTab(e,A)}openBase64InNewTab(e,A){this.safeValuesService.openBase64InNewTab(e,A)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-artifact-tab"]],inputs:{artifacts:[1,"artifacts"]},features:[ii],decls:3,vars:0,consts:[[1,"artifact-container"],[1,"artifact-card"],[1,"artifact-card-header"],[1,"artifact-title-group"],[1,"artifact-icon"],[1,"artifact-title-link",3,"click","matTooltip"],[1,"title-text"],[1,"open-icon"],[1,"artifact-actions"],[1,"version-selector"],[1,"version-label"],["panelClass","compact-select-panel",1,"compact-select",3,"ngModelChange","selectionChange","ngModel"],[3,"value"],["mat-icon-button","",1,"compact-action-button",3,"click","matTooltip"],[1,"artifact-card-content"],[1,"preview-image-container"],[1,"preview-audio-container"],[1,"preview-video-container"],["alt","artifact.id",1,"preview-image",3,"click","src"],[3,"base64data"],["controls","",1,"preview-video",3,"src"],[1,"preview-html-container"],[1,"preview-text-container"],[1,"html-icon"],[1,"html-link",3,"click"],[1,"preview-text"]],template:function(A,t){A&1&&(I(0,"div",0),ke(1,qsA,28,6,"div",1,ni),h()),A&2&&(Q(),_e(t.getDistinctArtifactIds()))},dependencies:[ig,fn,Kn,Ho,Vr,yi,zt,GB,rn],styles:[".artifact-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;padding:8px}.artifact-card[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-low);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 8px #0000001a}.artifact-card-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background-color:var(--mat-sys-surface-container);flex-wrap:wrap;gap:8px}.artifact-title-group[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;flex:1;min-width:200px}.artifact-icon[_ngcontent-%COMP%]{color:var(--mat-sys-primary);font-size:20px;width:20px;height:20px}.artifact-title-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;border:none;background:none;padding:0;font-family:inherit;color:var(--mat-sys-on-surface);cursor:pointer;max-width:250px}.artifact-title-link[_ngcontent-%COMP%]:hover{color:var(--mat-sys-primary);text-decoration:underline}.artifact-title-link[_ngcontent-%COMP%]:focus{outline:2px solid var(--mat-sys-primary);outline-offset:2px;border-radius:2px}.title-text[_ngcontent-%COMP%]{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;flex-shrink:0}.artifact-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.version-selector[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.version-label[_ngcontent-%COMP%]{font-size:12px;color:var(--mat-sys-on-surface-variant);font-weight:500}.compact-select[_ngcontent-%COMP%]{width:50px;font-size:10px}.compact-select[_ngcontent-%COMP%] .mat-mdc-select-trigger{padding:2px 4px}.compact-select[_ngcontent-%COMP%] .mat-mdc-select-value{font-size:10px} .compact-select-panel{font-size:10px!important} .compact-select-panel .mat-mdc-option{font-size:10px!important;min-height:28px!important;padding:0 8px!important} .compact-select-panel .mat-mdc-option-pseudo-checkbox{transform:scale(.7)!important}.compact-action-button[_ngcontent-%COMP%]{width:32px;height:32px;display:flex;justify-content:center;align-items:center}.compact-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.artifact-card-content[_ngcontent-%COMP%]{padding:8px 12px;background-color:var(--mat-sys-surface-container-lowest)}.preview-image-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}.preview-image[_ngcontent-%COMP%]{max-width:100%;max-height:300px;border-radius:8px;cursor:pointer}.preview-audio-container[_ngcontent-%COMP%]{width:100%}.preview-video-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}.preview-video[_ngcontent-%COMP%]{max-width:100%;border-radius:8px}.preview-html-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;justify-content:center;padding:20px}.html-icon[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.html-link[_ngcontent-%COMP%]{color:var(--mat-sys-primary);text-decoration:underline;cursor:pointer;font-weight:500;font-size:14px}.html-link[_ngcontent-%COMP%]:hover{color:var(--mat-sys-primary-dark)}.preview-text-container[_ngcontent-%COMP%]{max-height:200px;overflow-y:auto;background:var(--mat-sys-surface-container-highest);padding:12px;border-radius:8px}.preview-text[_ngcontent-%COMP%]{margin:0;white-space:pre-wrap;font-family:Roboto Mono,monospace;font-size:12px;color:var(--mat-sys-on-surface)}"]})};var $sA=["input"],AlA=["label"],elA=["*"],tM={color:"accent",clickAction:"check-indeterminate",disabledInteractive:!1},tlA=new MA("mat-checkbox-default-options",{providedIn:"root",factory:()=>tM}),fs=(function(i){return i[i.Init=0]="Init",i[i.Checked=1]="Checked",i[i.Unchecked=2]="Unchecked",i[i.Indeterminate=3]="Indeterminate",i})(fs||{}),iM=class{source;checked},ic=(()=>{class i{_elementRef=w(ce);_changeDetectorRef=w(Mt);_ngZone=w(We);_animationsDisabled=In();_options=w(tlA,{optional:!0});focus(){this._inputElement.nativeElement.focus()}_createChangeEvent(A){let t=new iM;return t.source=this,t.checked=A,t}_getAnimationTargetElement(){return this._inputElement?.nativeElement}_animationClasses={uncheckedToChecked:"mdc-checkbox--anim-unchecked-checked",uncheckedToIndeterminate:"mdc-checkbox--anim-unchecked-indeterminate",checkedToUnchecked:"mdc-checkbox--anim-checked-unchecked",checkedToIndeterminate:"mdc-checkbox--anim-checked-indeterminate",indeterminateToChecked:"mdc-checkbox--anim-indeterminate-checked",indeterminateToUnchecked:"mdc-checkbox--anim-indeterminate-unchecked"};ariaLabel="";ariaLabelledby=null;ariaDescribedby;ariaExpanded;ariaControls;ariaOwns;_uniqueId;id;get inputId(){return`${this.id||this._uniqueId}-input`}required=!1;labelPosition="after";name=null;change=new FA;indeterminateChange=new FA;value;disableRipple=!1;_inputElement;_labelElement;tabIndex;color;disabledInteractive;_onTouched=()=>{};_currentAnimationClass="";_currentCheckState=fs.Init;_controlValueAccessorChangeFn=()=>{};_validatorChangeFn=()=>{};constructor(){w(Eo).load(Qr);let A=w(new Ys("tabindex"),{optional:!0});this._options=this._options||tM,this.color=this._options.color||tM.color,this.tabIndex=A==null?0:parseInt(A)||0,this.id=this._uniqueId=w(Dn).getId("mat-mdc-checkbox-"),this.disabledInteractive=this._options?.disabledInteractive??!1}ngOnChanges(A){A.required&&this._validatorChangeFn()}ngAfterViewInit(){this._syncIndeterminate(this.indeterminate)}get checked(){return this._checked}set checked(A){A!=this.checked&&(this._checked=A,this._changeDetectorRef.markForCheck())}_checked=!1;get disabled(){return this._disabled}set disabled(A){A!==this.disabled&&(this._disabled=A,this._changeDetectorRef.markForCheck())}_disabled=!1;get indeterminate(){return this._indeterminate()}set indeterminate(A){let t=A!=this._indeterminate();this._indeterminate.set(A),t&&(A?this._transitionCheckState(fs.Indeterminate):this._transitionCheckState(this.checked?fs.Checked:fs.Unchecked),this.indeterminateChange.emit(A)),this._syncIndeterminate(A)}_indeterminate=mA(!1);_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(A){this.checked=!!A}registerOnChange(A){this._controlValueAccessorChangeFn=A}registerOnTouched(A){this._onTouched=A}setDisabledState(A){this.disabled=A}validate(A){return this.required&&A.value!==!0?{required:!0}:null}registerOnValidatorChange(A){this._validatorChangeFn=A}_transitionCheckState(A){let t=this._currentCheckState,n=this._getAnimationTargetElement();if(!(t===A||!n)&&(this._currentAnimationClass&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(t,A),this._currentCheckState=A,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);let o=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{n.classList.remove(o)},1e3)})}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.checked),this.change.emit(this._createChangeEvent(this.checked)),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_handleInputClick(){let A=this._options?.clickAction;!this.disabled&&A!=="noop"?(this.indeterminate&&A!=="check"&&Promise.resolve().then(()=>{this._indeterminate.set(!1),this.indeterminateChange.emit(!1)}),this._checked=!this._checked,this._transitionCheckState(this._checked?fs.Checked:fs.Unchecked),this._emitChangeEvent()):(this.disabled&&this.disabledInteractive||!this.disabled&&A==="noop")&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate)}_onInteractionEvent(A){A.stopPropagation()}_onBlur(){Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}_getAnimationClassForCheckStateTransition(A,t){if(this._animationsDisabled)return"";switch(A){case fs.Init:if(t===fs.Checked)return this._animationClasses.uncheckedToChecked;if(t==fs.Indeterminate)return this._checked?this._animationClasses.checkedToIndeterminate:this._animationClasses.uncheckedToIndeterminate;break;case fs.Unchecked:return t===fs.Checked?this._animationClasses.uncheckedToChecked:this._animationClasses.uncheckedToIndeterminate;case fs.Checked:return t===fs.Unchecked?this._animationClasses.checkedToUnchecked:this._animationClasses.checkedToIndeterminate;case fs.Indeterminate:return t===fs.Checked?this._animationClasses.indeterminateToChecked:this._animationClasses.indeterminateToUnchecked}return""}_syncIndeterminate(A){let t=this._inputElement;t&&(t.nativeElement.indeterminate=A)}_onInputClick(){this._handleInputClick()}_onTouchTargetClick(){this._handleInputClick(),this.disabled||this._inputElement.nativeElement.focus()}_preventBubblingFromLabel(A){A.target&&this._labelElement.nativeElement.contains(A.target)&&A.stopPropagation()}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-checkbox"]],viewQuery:function(t,n){if(t&1&&Wt($sA,5)(AlA,5),t&2){let o;se(o=le())&&(n._inputElement=o.first),se(o=le())&&(n._labelElement=o.first)}},hostAttrs:[1,"mat-mdc-checkbox"],hostVars:16,hostBindings:function(t,n){t&2&&(Ma("id",n.id),ie("tabindex",null)("aria-label",null)("aria-labelledby",null),Ao(n.color?"mat-"+n.color:"mat-accent"),_A("_mat-animation-noopable",n._animationsDisabled)("mdc-checkbox--disabled",n.disabled)("mat-mdc-checkbox-disabled",n.disabled)("mat-mdc-checkbox-checked",n.checked)("mat-mdc-checkbox-disabled-interactive",n.disabledInteractive))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],ariaExpanded:[2,"aria-expanded","ariaExpanded",Qe],ariaControls:[0,"aria-controls","ariaControls"],ariaOwns:[0,"aria-owns","ariaOwns"],id:"id",required:[2,"required","required",Qe],labelPosition:"labelPosition",name:"name",value:"value",disableRipple:[2,"disableRipple","disableRipple",Qe],tabIndex:[2,"tabIndex","tabIndex",A=>A==null?void 0:yn(A)],color:"color",disabledInteractive:[2,"disabledInteractive","disabledInteractive",Qe],checked:[2,"checked","checked",Qe],disabled:[2,"disabled","disabled",Qe],indeterminate:[2,"indeterminate","indeterminate",Qe]},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[pt([{provide:cs,useExisting:Va(()=>i),multi:!0},{provide:Oc,useExisting:i,multi:!0}]),ii],ngContentSelectors:elA,decls:15,vars:23,consts:[["checkbox",""],["input",""],["label",""],["mat-internal-form-field","",3,"click","labelPosition"],[1,"mdc-checkbox"],["aria-hidden","true",1,"mat-mdc-checkbox-touch-target",3,"click"],["type","checkbox",1,"mdc-checkbox__native-control",3,"blur","click","change","checked","indeterminate","disabled","id","required","tabIndex"],["aria-hidden","true",1,"mdc-checkbox__ripple"],["aria-hidden","true",1,"mdc-checkbox__background"],["focusable","false","viewBox","0 0 24 24",1,"mdc-checkbox__checkmark"],["fill","none","d","M1.73,12.91 8.1,19.28 22.79,4.59",1,"mdc-checkbox__checkmark-path"],[1,"mdc-checkbox__mixedmark"],["mat-ripple","","aria-hidden","true",1,"mat-mdc-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-label",3,"for"]],template:function(t,n){if(t&1&&(Ot(),I(0,"div",3),U("click",function(a){return n._preventBubblingFromLabel(a)}),I(1,"div",4,0)(3,"div",5),U("click",function(){return n._onTouchTargetClick()}),h(),I(4,"input",6,1),U("blur",function(){return n._onBlur()})("click",function(){return n._onInputClick()})("change",function(a){return n._onInteractionEvent(a)}),h(),lA(6,"div",7),I(7,"div",8),Et(),I(8,"svg",9),lA(9,"path",10),h(),hr(),lA(10,"div",11),h(),lA(11,"div",12),h(),I(12,"label",13,2),Ze(14),h()()),t&2){let o=Bi(2);H("labelPosition",n.labelPosition),Q(4),_A("mdc-checkbox--selected",n.checked),H("checked",n.checked)("indeterminate",n.indeterminate)("disabled",n.disabled&&!n.disabledInteractive)("id",n.inputId)("required",n.required)("tabIndex",n.disabled&&!n.disabledInteractive?-1:n.tabIndex),ie("aria-label",n.ariaLabel||null)("aria-labelledby",n.ariaLabelledby)("aria-describedby",n.ariaDescribedby)("aria-checked",n.indeterminate?"mixed":null)("aria-controls",n.ariaControls)("aria-disabled",n.disabled&&n.disabledInteractive?!0:null)("aria-expanded",n.ariaExpanded)("aria-owns",n.ariaOwns)("name",n.name)("value",n.value),Q(7),H("matRippleTrigger",o)("matRippleDisabled",n.disableRipple||n.disabled)("matRippleCentered",!0),Q(),H("for",n.inputId)}},dependencies:[Cs,C6],styles:[`.mdc-checkbox{display:inline-block;position:relative;flex:0 0 18px;box-sizing:content-box;width:18px;height:18px;line-height:0;white-space:nowrap;cursor:pointer;vertical-align:bottom;padding:calc((var(--mat-checkbox-state-layer-size, 40px) - 18px)/2);margin:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox:hover>.mdc-checkbox__ripple{opacity:var(--mat-checkbox-unselected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity));background-color:var(--mat-checkbox-unselected-hover-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox:hover>.mat-mdc-checkbox-ripple>.mat-ripple-element{background-color:var(--mat-checkbox-unselected-hover-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-unselected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity));background-color:var(--mat-checkbox-unselected-focus-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-unselected-focus-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox:active>.mdc-checkbox__native-control+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-unselected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));background-color:var(--mat-checkbox-unselected-pressed-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:active>.mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-unselected-pressed-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:hover>.mdc-checkbox__native-control:checked+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity));background-color:var(--mat-checkbox-selected-hover-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:hover>.mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-selected-hover-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity));background-color:var(--mat-checkbox-selected-focus-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-selected-focus-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:active>.mdc-checkbox__native-control:checked+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-selected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));background-color:var(--mat-checkbox-selected-pressed-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox:active>.mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-selected-pressed-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control+.mdc-checkbox__ripple{background-color:var(--mat-checkbox-unselected-hover-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox .mdc-checkbox__native-control{position:absolute;margin:0;padding:0;opacity:0;cursor:inherit;z-index:1;width:var(--mat-checkbox-state-layer-size, 40px);height:var(--mat-checkbox-state-layer-size, 40px);top:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2);right:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2);left:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox--disabled{cursor:default;pointer-events:none}.mdc-checkbox__background{display:inline-flex;position:absolute;align-items:center;justify-content:center;box-sizing:border-box;width:18px;height:18px;border:2px solid currentColor;border-radius:2px;background-color:rgba(0,0,0,0);pointer-events:none;will-change:background-color,border-color;transition:background-color 90ms cubic-bezier(0.4, 0, 0.6, 1),border-color 90ms cubic-bezier(0.4, 0, 0.6, 1);-webkit-print-color-adjust:exact;color-adjust:exact;border-color:var(--mat-checkbox-unselected-icon-color, var(--mat-sys-on-surface-variant));top:calc((var(--mat-checkbox-state-layer-size, 40px) - 18px)/2);left:calc((var(--mat-checkbox-state-layer-size, 40px) - 18px)/2)}.mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:var(--mat-checkbox-selected-icon-color, var(--mat-sys-primary));background-color:var(--mat-checkbox-selected-icon-color, var(--mat-sys-primary))}.mdc-checkbox--disabled .mdc-checkbox__background{border-color:var(--mat-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mdc-checkbox--disabled .mdc-checkbox__background{border-color:GrayText}}.mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background{background-color:var(--mat-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));border-color:rgba(0,0,0,0)}@media(forced-colors: active){.mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background{border-color:GrayText}}.mdc-checkbox:hover>.mdc-checkbox__native-control:not(:checked)~.mdc-checkbox__background,.mdc-checkbox:hover>.mdc-checkbox__native-control:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mat-checkbox-unselected-hover-icon-color, var(--mat-sys-on-surface));background-color:rgba(0,0,0,0)}.mdc-checkbox:hover>.mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox:hover>.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{border-color:var(--mat-checkbox-selected-hover-icon-color, var(--mat-sys-primary));background-color:var(--mat-checkbox-selected-hover-icon-color, var(--mat-sys-primary))}.mdc-checkbox__native-control:focus:focus:not(:checked)~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mat-checkbox-unselected-focus-icon-color, var(--mat-sys-on-surface))}.mdc-checkbox__native-control:focus:focus:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:indeterminate~.mdc-checkbox__background{border-color:var(--mat-checkbox-selected-focus-icon-color, var(--mat-sys-primary));background-color:var(--mat-checkbox-selected-focus-icon-color, var(--mat-sys-primary))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox:hover>.mdc-checkbox__native-control~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__background{border-color:var(--mat-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox:hover>.mdc-checkbox__native-control~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__background{border-color:GrayText}}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{background-color:var(--mat-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));border-color:rgba(0,0,0,0)}.mdc-checkbox__checkmark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;transition:opacity 180ms cubic-bezier(0.4, 0, 0.6, 1);color:var(--mat-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}@media(forced-colors: active){.mdc-checkbox__checkmark{color:CanvasText}}.mdc-checkbox--disabled .mdc-checkbox__checkmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:var(--mat-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}@media(forced-colors: active){.mdc-checkbox--disabled .mdc-checkbox__checkmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:GrayText}}.mdc-checkbox__checkmark-path{transition:stroke-dashoffset 180ms cubic-bezier(0.4, 0, 0.6, 1);stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}.mdc-checkbox__mixedmark{width:100%;height:0;transform:scaleX(0) rotate(0deg);border-width:1px;border-style:solid;opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1);border-color:var(--mat-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}@media(forced-colors: active){.mdc-checkbox__mixedmark{margin:0 1px}}.mdc-checkbox--disabled .mdc-checkbox__mixedmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__mixedmark{border-color:var(--mat-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}@media(forced-colors: active){.mdc-checkbox--disabled .mdc-checkbox__mixedmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__mixedmark{border-color:GrayText}}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background,.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background{animation-duration:180ms;animation-timing-function:linear}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear;transition:none}.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark{animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark{animation:mdc-checkbox-indeterminate-checked-checkmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-checked-mixedmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-unchecked-mixedmark 300ms linear;transition:none}.mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{transition:border-color 90ms cubic-bezier(0, 0, 0.2, 1),background-color 90ms cubic-bezier(0, 0, 0.2, 1)}.mdc-checkbox__native-control:checked~.mdc-checkbox__background>.mdc-checkbox__checkmark>.mdc-checkbox__checkmark-path,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background>.mdc-checkbox__checkmark>.mdc-checkbox__checkmark-path{stroke-dashoffset:0}.mdc-checkbox__native-control:checked~.mdc-checkbox__background>.mdc-checkbox__checkmark{transition:opacity 180ms cubic-bezier(0, 0, 0.2, 1),transform 180ms cubic-bezier(0, 0, 0.2, 1);opacity:1}.mdc-checkbox__native-control:checked~.mdc-checkbox__background>.mdc-checkbox__mixedmark{transform:scaleX(1) rotate(-45deg)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background>.mdc-checkbox__checkmark{transform:rotate(45deg);opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background>.mdc-checkbox__mixedmark{transform:scaleX(1) rotate(0deg);opacity:1}@keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 1)}100%{stroke-dashoffset:0}}@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@keyframes mdc-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(45deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(45deg);opacity:0}to{transform:rotate(360deg);opacity:1}}@keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(-45deg);opacity:0}to{transform:rotate(0deg);opacity:1}}@keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(315deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;transform:scaleX(1);opacity:1}32.8%,100%{transform:scaleX(0);opacity:0}}.mat-mdc-checkbox{display:inline-block;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mat-mdc-checkbox-touch-target,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__native-control,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__ripple,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mat-mdc-checkbox-ripple::before,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background>.mdc-checkbox__checkmark,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background>.mdc-checkbox__checkmark>.mdc-checkbox__checkmark-path,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background>.mdc-checkbox__mixedmark{transition:none !important;animation:none !important}.mat-mdc-checkbox label{cursor:pointer}.mat-mdc-checkbox .mat-internal-form-field{color:var(--mat-checkbox-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-checkbox-label-text-font, var(--mat-sys-body-medium-font));line-height:var(--mat-checkbox-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-checkbox-label-text-size, var(--mat-sys-body-medium-size));letter-spacing:var(--mat-checkbox-label-text-tracking, var(--mat-sys-body-medium-tracking));font-weight:var(--mat-checkbox-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive{pointer-events:auto}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive input{cursor:default}.mat-mdc-checkbox.mat-mdc-checkbox-disabled label{cursor:default;color:var(--mat-checkbox-disabled-label-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mat-mdc-checkbox.mat-mdc-checkbox-disabled label{color:GrayText}}.mat-mdc-checkbox label:empty{display:none}.mat-mdc-checkbox .mdc-checkbox__ripple{opacity:0}.mat-mdc-checkbox .mat-mdc-checkbox-ripple,.mdc-checkbox__ripple{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-checkbox .mat-mdc-checkbox-ripple:not(:empty),.mdc-checkbox__ripple:not(:empty){transform:translateZ(0)}.mat-mdc-checkbox-ripple .mat-ripple-element{opacity:.1}.mat-mdc-checkbox-touch-target{position:absolute;top:50%;left:50%;height:var(--mat-checkbox-touch-target-size, 48px);width:var(--mat-checkbox-touch-target-size, 48px);transform:translate(-50%, -50%);display:var(--mat-checkbox-touch-target-display, block)}.mat-mdc-checkbox .mat-mdc-checkbox-ripple::before{border-radius:50%}.mdc-checkbox__native-control:focus-visible~.mat-focus-indicator::before{content:""} -`],encapsulation:2,changeDetection:0})}return i})(),uO=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[ic,Di]})}return i})();var pO=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({})}return i})();var fO=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[pO,Wc,Di]})}return i})();var nlA={google_search:"search",EnterpriseWebSearchTool:"web",VertexAiSearchTool:"search",FilesRetrieval:"find_in_page",load_memory:"memory",preload_memory:"memory",url_context:"link",VertexAiRagRetrieval:"find_in_page",exit_loop:"sync",get_user_choice:"how_to_reg",load_artifacts:"image",LongRunningFunctionTool:"data_object"};function UB(i,e){return e==="Agent Tool"?"smart_toy":e==="Built-in tool"?nlA[i]||"build":e==="Function tool"?"data_object":"build"}var nc=class i{static toolMenuTooltips=new Map([["Function tool","Build custom tools for your specific ADK agent needs."],["Built-in tool","Ready-to-use functionality such as Google Search or code executors that provide agents with common capabilities. "],["Agent tool","A sub-agent that can be invoked as a tool by another agent."]]);static toolDetailedInfo=new Map([["Function tool",{shortDescription:"Build custom tools for your specific ADK agent needs.",detailedDescription:"The ADK framework automatically inspects your Python function's signature\u2014including its name, docstring, parameters, type hints, and default values\u2014to generate a schema. This schema is what the LLM uses to understand the tool's purpose, when to use it, and what arguments it requires.",docLink:"https://google.github.io/adk-docs/tools/function-tools/"}],["Agent tool",{shortDescription:"Wraps a sub-agent as a callable tool, enabling modular and hierarchical agent architectures.",detailedDescription:"Agent tools allow you to use one agent as a tool within another agent, creating powerful multi-agent workflows.",docLink:"https://google.github.io/adk-docs/agents/multi-agents/#c-explicit-invocation-agenttool"}]]);static callbackMenuTooltips=new Map([["before_agent","Called immediately before the agent's _run_async_impl (or _run_live_impl) method is executed."],["after_agent","Called immediately after the agent's _run_async_impl (or _run_live_impl) method successfully completes."],["before_model","Called just before the generate_content_async (or equivalent) request is sent to the LLM within an LlmAgent's flow."],["after_model","Called just after a response (LlmResponse) is received from the LLM, before it's processed further by the invoking agent."],["before_tool","Called just before a specific tool's run_async method is invoked, after the LLM has generated a function call for it."],["after_tool","Called just after the tool's run_async method completes successfully."]]);static callbackDialogTooltips=new Map([["before_agent","Called immediately before the agent's _run_async_impl (or _run_live_impl) method is executed."],["after_agent","Called immediately after the agent's _run_async_impl (or _run_live_impl) method successfully completes."],["before_model","Called just before the generate_content_async (or equivalent) request is sent to the LLM within an LlmAgent's flow."],["after_model","Called just after a response (LlmResponse) is received from the LLM, before it's processed further by the invoking agent."],["before_tool","Called just before a specific tool's run_async method is invoked, after the LLM has generated a function call for it."],["after_tool","Called just after the tool's run_async method completes successfully."]]);static callbackDetailedInfo=new Map([["before_agent",{shortDescription:"Called immediately before the agent's _run_async_impl (or _run_live_impl) method is executed. It runs after the agent's InvocationContext is created but before its core logic begins.",detailedDescription:" Ideal for setting up resources or state needed only for this specific agent's run, performing validation checks on the session state (callback_context.state) before execution starts, logging the entry point of the agent's activity, or potentially modifying the invocation context before the core logic uses it.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#before-agent-callback"}],["after_agent",{shortDescription:"Called immediately after the agent's _run_async_impl (or _run_live_impl) method successfully completes.",detailedDescription:"Useful for cleanup tasks, post-execution validation, logging the completion of an agent's activity, modifying final state, or augmenting/replacing the agent's final output.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#after-agent-callback"}],["before_model",{shortDescription:"Called just before the generate_content_async (or equivalent) request is sent to the LLM within an LlmAgent's flow.",detailedDescription:"Allows inspection and modification of the request going to the LLM. Use cases include adding dynamic instructions, injecting few-shot examples based on state, modifying model config, implementing guardrails (like profanity filters), or implementing request-level caching.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#before-model-callback"}],["after_model",{shortDescription:"Called just after a response (LlmResponse) is received from the LLM, before it's processed further by the invoking agent.",detailedDescription:"Allows inspection or modification of the raw LLM response.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#after-model-callback"}],["before_tool",{shortDescription:"Called just before a specific tool's run_async method is invoked, after the LLM has generated a function call for it.",detailedDescription:"Allows inspection and modification of tool arguments, performing authorization checks before execution, logging tool usage attempts, or implementing tool-level caching.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#before-tool-callback"}],["after_tool",{shortDescription:"Called just after the tool's run_async method completes successfully.",detailedDescription:"Allows inspection and modification of the tool's result before it's sent back to the LLM (potentially after summarization). Useful for logging tool results, post-processing or formatting results, or saving specific parts of the result to the session state.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#after-tool-callback"}]]);static getToolMenuTooltips(e){return i.toolMenuTooltips.get(e)}static getToolDetailedInfo(e){return i.toolDetailedInfo.get(e)}static getCallbackMenuTooltips(e){return i.callbackMenuTooltips.get(e)}static getCallbackDialogTooltips(e){return i.callbackDialogTooltips.get(e)}static getCallbackDetailedInfo(e){return i.callbackDetailedInfo.get(e)}};var olA=["callbackNameInput"];function alA(i,e){if(i&1){let A=aA();vl(0),I(1,"div",8)(2,"div",9),U("click",function(){L(A);let n=p();return G(n.toggleCallbackInfo())}),I(3,"mat-icon",10),D(4,"info"),h(),I(5,"div",11)(6,"span"),D(7,"Callback Information"),h()(),I(8,"button",12)(9,"mat-icon"),D(10),h()()(),I(11,"div",13)(12,"div",14)(13,"div",15),D(14),h(),I(15,"div",16),D(16),h()(),I(17,"div",17)(18,"a",18)(19,"mat-icon"),D(20,"open_in_new"),h(),I(21,"span"),D(22,"View Official Documentation"),h()()()()(),bl()}if(i&2){let A,t,n,o=p();Q(10),nA(o.isCallbackInfoExpanded?"expand_less":"expand_more"),Q(),_A("expanded",o.isCallbackInfoExpanded),Q(3),nA((A=o.getCallbackInfo())==null?null:A.shortDescription),Q(2),nA((t=o.getCallbackInfo())==null?null:t.detailedDescription),Q(2),H("href",(n=o.getCallbackInfo())==null?null:n.docLink,mo)}}function rlA(i,e){if(i&1&&(I(0,"mat-option",21),D(1),h()),i&2){let A=e.$implicit;H("value",A),Q(),nA(A)}}function slA(i,e){if(i&1){let A=aA();vl(0),I(1,"mat-form-field",3)(2,"mat-label"),D(3,"Callback Type"),h(),I(4,"mat-select",19),Ni("ngModelChange",function(n){L(A);let o=p();return wi(o.callbackType,n)||(o.callbackType=n),G(n)}),kt(5,rlA,2,2,"mat-option",20),h()(),bl()}if(i&2){let A=p();Q(4),Ri("ngModel",A.callbackType),Q(),H("ngForOf",A.availableCallbackTypes)}}function llA(i,e){i&1&&(I(0,"mat-error"),D(1,"Same callback name has been used"),h())}function glA(i,e){i&1&&(I(0,"mat-error"),D(1,"Cannot have callback consist of two words"),h())}function clA(i,e){i&1&&(I(0,"mat-error"),D(1,"Callback function names cannot have spaces"),h())}var nM=class{isErrorState(e){return!!(e&&e.invalid)}},Mu=class i{constructor(e,A){this.dialogRef=e;this.data=A;this.callbackType=A?.callbackType??"",this.existingCallbackNames=A?.existingCallbackNames??[],this.isEditMode=!!A?.isEditMode,this.availableCallbackTypes=A?.availableCallbackTypes??[],this.isEditMode&&A?.callback&&(this.callbackName=A.callback.name,this.callbackType=A.callback.type,this.originalCallbackName=A.callback.name,this.existingCallbackNames=this.existingCallbackNames.filter(t=>t!==this.originalCallbackName))}callbackNameInput;callbackName="";callbackType="";existingCallbackNames=[];matcher=new nM;isEditMode=!1;availableCallbackTypes=[];originalCallbackName="";isCallbackInfoExpanded=!1;addCallback(){if(!this.callbackName.trim()||this.hasSpaces()||this.isDuplicateName())return;let e={name:this.callbackName.trim(),type:this.callbackType,isEditMode:this.isEditMode,originalName:this.originalCallbackName||this.callbackName.trim()};this.dialogRef.close(e)}cancel(){this.dialogRef.close()}isDuplicateName(){if(!Array.isArray(this.existingCallbackNames))return!1;let e=(this.callbackName||"").trim();return this.existingCallbackNames.includes(e)}hasSpaces(){return/\s/.test(this.callbackName||"")}createDisabled(){return!this.callbackName.trim()||this.isDuplicateName()||this.hasSpaces()}validate(){this.hasSpaces()?this.callbackNameInput.control.setErrors({hasSpaces:!0}):this.isDuplicateName()?this.callbackNameInput.control.setErrors({duplicateName:!0}):this.callbackNameInput.control.setErrors(null)}getCallbackInfo(){return nc.getCallbackDetailedInfo(this.callbackType)}toggleCallbackInfo(){this.isCallbackInfoExpanded=!this.isCallbackInfoExpanded}static \u0275fac=function(A){return new(A||i)(st(zn),st(Do))};static \u0275cmp=vA({type:i,selectors:[["app-add-callback-dialog"]],viewQuery:function(A,t){if(A&1&&Wt(olA,5),A&2){let n;se(n=le())&&(t.callbackNameInput=n.first)}},decls:18,vars:10,consts:[["callbackNameInput","ngModel"],["mat-dialog-title",""],[4,"ngIf"],[2,"width","100%"],["matInput","",3,"ngModelChange","keydown.enter","ngModel","errorStateMatcher"],["align","end"],["mat-button","",3,"click"],["mat-raised-button","","color","secondary",3,"click","disabled"],[1,"callback-info-container"],[1,"callback-info-header",3,"click"],[1,"callback-info-icon"],[1,"callback-info-title"],["mat-icon-button","","type","button","aria-label","Toggle callback information",1,"callback-info-toggle"],[1,"callback-info-body"],[1,"callback-info-content"],[1,"callback-info-short"],[1,"callback-info-detailed"],[1,"callback-info-link-container"],["target","_blank","rel","noopener noreferrer",1,"callback-info-link",3,"href"],[3,"ngModelChange","ngModel"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(A,t){if(A&1){let n=aA();I(0,"h2",1),D(1),h(),I(2,"mat-dialog-content"),kt(3,alA,23,6,"ng-container",2)(4,slA,6,2,"ng-container",2),I(5,"mat-form-field",3)(6,"mat-label"),D(7,"Callback Name"),h(),I(8,"input",4,0),Ni("ngModelChange",function(a){return L(n),wi(t.callbackName,a)||(t.callbackName=a),G(a)}),U("ngModelChange",function(){return t.validate()})("keydown.enter",function(){return t.addCallback()}),h(),kt(10,llA,2,0,"mat-error",2)(11,glA,2,0,"mat-error",2)(12,clA,2,0,"mat-error",2),h()(),I(13,"mat-dialog-actions",5)(14,"button",6),U("click",function(){return t.cancel()}),D(15,"Cancel"),h(),I(16,"button",7),U("click",function(){return t.addCallback()}),D(17),h()()}if(A&2){let n=Bi(9);Q(),nA(t.isEditMode?"Edit Callback":"Add "+t.callbackType+" Callback"),Q(2),H("ngIf",t.getCallbackInfo()),Q(),H("ngIf",t.isEditMode),Q(4),Ri("ngModel",t.callbackName),H("errorStateMatcher",t.matcher),Q(2),H("ngIf",n.hasError("duplicateName")),Q(),H("ngIf",n.hasError("hasSpaces")),Q(),H("ngIf",n.hasError("hasSpaces")),Q(4),H("disabled",t.createDisabled()),Q(),Ee(" ",t.isEditMode?"Save":"Add"," ")}},dependencies:[li,DI,ql,fn,Gn,Kn,Ho,Ls,Xo,ha,Ba,qi,ki,yi,Za,Zo,xs,xv,Ws,ka,W0,ig,Vr,Un,zt],styles:[".callback-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;min-width:400px;max-width:600px}.full-width[_ngcontent-%COMP%]{width:100%}mat-dialog-content[_ngcontent-%COMP%]{padding:20px 24px;display:flex;flex-direction:column;gap:16px}mat-dialog-actions[_ngcontent-%COMP%]{padding:16px 24px;margin:0}mat-form-field[_ngcontent-%COMP%]{margin-top:8px!important}.callback-info-container[_ngcontent-%COMP%]{border:1px solid rgba(138,180,248,.2);border-radius:8px;padding:16px;margin-bottom:16px}.callback-info-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.callback-info-header[_ngcontent-%COMP%]:hover .callback-info-title[_ngcontent-%COMP%]{color:#a7c8ff}.callback-info-icon[_ngcontent-%COMP%]{color:#8ab4f8;font-size:20px;width:20px;height:20px;flex-shrink:0}.callback-info-title[_ngcontent-%COMP%]{flex:1;font-weight:500;color:#8ab4f8;font-size:14px;transition:color .2s ease}.callback-info-toggle[_ngcontent-%COMP%]{color:#8ab4f8;margin:-8px}.callback-info-toggle[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{transition:transform .2s ease}.callback-info-body[_ngcontent-%COMP%]{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .2s ease,margin-top .3s ease}.callback-info-body.expanded[_ngcontent-%COMP%]{max-height:500px;opacity:1;margin-top:12px}.callback-info-content[_ngcontent-%COMP%]{flex:1}.callback-info-short[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-dialog-content-text-color);margin-bottom:8px;line-height:1.4}.callback-info-detailed[_ngcontent-%COMP%]{color:var(--mat-dialog-content-text-color);font-size:14px;line-height:1.5;opacity:.8}.callback-info-link-container[_ngcontent-%COMP%]{margin-top:12px}.callback-info-link[_ngcontent-%COMP%]{color:#8ab4f8;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease}.callback-info-link[_ngcontent-%COMP%]:hover{color:#a7c8ff}.callback-info-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}"]})};function ClA(i,e){if(i&1){let A=aA();vl(0),I(1,"div",6)(2,"div",7),U("click",function(){L(A);let n=p();return G(n.toggleToolInfo())}),I(3,"mat-icon",8),D(4,"info"),h(),I(5,"div",9)(6,"span"),D(7,"Tool Information"),h()(),I(8,"button",10)(9,"mat-icon"),D(10),h()()(),I(11,"div",11)(12,"div",12)(13,"div",13),D(14),h(),I(15,"div",14),D(16),h()(),I(17,"div",15)(18,"a",16)(19,"mat-icon"),D(20,"open_in_new"),h(),I(21,"span"),D(22,"View Official Documentation"),h()()()()(),bl()}if(i&2){let A,t,n,o=p();Q(10),nA(o.isToolInfoExpanded?"expand_less":"expand_more"),Q(),_A("expanded",o.isToolInfoExpanded),Q(3),nA((A=o.getToolInfo())==null?null:A.shortDescription),Q(2),nA((t=o.getToolInfo())==null?null:t.detailedDescription),Q(2),H("href",(n=o.getToolInfo())==null?null:n.docLink,mo)}}function dlA(i,e){if(i&1){let A=aA();I(0,"mat-form-field",2)(1,"input",17),Ni("ngModelChange",function(n){L(A);let o=p();return wi(o.toolName,n)||(o.toolName=n),G(n)}),U("keydown.enter",function(){L(A);let n=p();return G(n.addTool())}),h()()}if(i&2){let A=p();Q(),Ri("ngModel",A.toolName)}}function IlA(i,e){if(i&1&&(I(0,"mat-option",20),D(1),h()),i&2){let A=e.$implicit;H("value",A),Q(),Ee(" ",A," ")}}function BlA(i,e){if(i&1){let A=aA();I(0,"mat-form-field",2)(1,"mat-select",18),Ni("ngModelChange",function(n){L(A);let o=p();return wi(o.selectedBuiltInTool,n)||(o.selectedBuiltInTool=n),G(n)}),kt(2,IlA,2,2,"mat-option",19),h()()}if(i&2){let A=p();Q(),Ri("ngModel",A.selectedBuiltInTool),Q(),H("ngForOf",A.builtInTools)}}var Q2=class i{constructor(e,A){this.data=e;this.dialogRef=A}toolName="";toolType="Function tool";selectedBuiltInTool="google_search";builtInTools=["EnterpriseWebSearchTool","exit_loop","FilesRetrieval","get_user_choice","google_search","load_artifacts","load_memory","LongRunningFunctionTool","preload_memory","url_context","VertexAiRagRetrieval","VertexAiSearchTool"];isEditMode=!1;isToolInfoExpanded=!1;ngOnInit(){this.toolType=this.data.toolType,this.isEditMode=this.data.isEditMode||!1,this.isEditMode&&this.data.toolName&&(this.toolType==="Function tool"?this.toolName=this.data.toolName:this.toolType==="Built-in tool"&&(this.selectedBuiltInTool=this.data.toolName))}addTool(){if(this.toolType==="Function tool"&&!this.toolName.trim())return;let e={toolType:this.toolType,isEditMode:this.isEditMode};this.toolType==="Function tool"?e.name=this.toolName.trim():this.toolType==="Built-in tool"&&(e.name=this.selectedBuiltInTool),this.dialogRef.close(e)}cancel(){this.dialogRef.close()}createDisabled(){return this.toolType==="Function tool"&&!this.toolName.trim()}getToolInfo(){return nc.getToolDetailedInfo(this.toolType)}toggleToolInfo(){this.isToolInfoExpanded=!this.isToolInfoExpanded}static \u0275fac=function(A){return new(A||i)(st(Do),st(zn))};static \u0275cmp=vA({type:i,selectors:[["app-add-tool-dialog"]],decls:11,vars:6,consts:[["mat-dialog-title","",1,"dialog-title"],[4,"ngIf"],[2,"width","100%"],["align","end"],["mat-button","",3,"click"],["mat-button","","cdkFocusInitial","",3,"click","disabled"],[1,"tool-info-container"],[1,"tool-info-header",3,"click"],[1,"tool-info-icon"],[1,"tool-info-title"],["mat-icon-button","","type","button","aria-label","Toggle tool information",1,"tool-info-toggle"],[1,"tool-info-body"],[1,"tool-info-content"],[1,"tool-info-short"],[1,"tool-info-detailed"],[1,"tool-info-link-container"],["target","_blank","rel","noopener noreferrer",1,"tool-info-link",3,"href"],["matInput","","placeholder","Enter full function name",3,"ngModelChange","keydown.enter","ngModel"],["placeholder","Select built-in tool",3,"ngModelChange","ngModel"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(A,t){A&1&&(I(0,"h2",0),D(1),h(),I(2,"mat-dialog-content"),kt(3,ClA,23,6,"ng-container",1),T(4,dlA,2,1,"mat-form-field",2),T(5,BlA,3,2,"mat-form-field",2),h(),I(6,"mat-dialog-actions",3)(7,"button",4),U("click",function(){return t.cancel()}),D(8,"Cancel"),h(),I(9,"button",5),U("click",function(){return t.addTool()}),D(10),h()()),A&2&&(Q(),nA(t.isEditMode?"Editing Tool":"Add New Tool"),Q(2),H("ngIf",t.getToolInfo()),Q(),O(t.toolType==="Function tool"?4:-1),Q(),O(t.toolType==="Built-in tool"?5:-1),Q(4),H("disabled",t.createDisabled()),Q(),Ee(" ",t.isEditMode?"Save":"Create"," "))},dependencies:[li,DI,ql,fn,Gn,Kn,Ho,Xo,Ba,Zo,ka,ig,Vr,ha,ki,yi,zt],styles:[".dialog-title[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;font-family:Google Sans;font-size:24px}mat-dialog-content[_ngcontent-%COMP%]{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.tool-info-container[_ngcontent-%COMP%]{border:1px solid rgba(138,180,248,.2);border-radius:8px;padding:16px;margin-bottom:16px}.tool-info-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.tool-info-header[_ngcontent-%COMP%]:hover .tool-info-title[_ngcontent-%COMP%]{color:#a7c8ff}.tool-info-icon[_ngcontent-%COMP%]{color:#8ab4f8;font-size:20px;width:20px;height:20px;flex-shrink:0}.tool-info-title[_ngcontent-%COMP%]{flex:1;font-weight:500;color:#8ab4f8;font-size:14px;transition:color .2s ease}.tool-info-toggle[_ngcontent-%COMP%]{color:#8ab4f8;margin:-8px}.tool-info-toggle[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{transition:transform .2s ease}.tool-info-body[_ngcontent-%COMP%]{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .2s ease,margin-top .3s ease}.tool-info-body.expanded[_ngcontent-%COMP%]{max-height:500px;opacity:1;margin-top:12px}.tool-info-content[_ngcontent-%COMP%]{flex:1}.tool-info-short[_ngcontent-%COMP%]{font-weight:500;color:#e3e3e3;margin-bottom:8px;line-height:1.4}.tool-info-detailed[_ngcontent-%COMP%]{color:#c4c7ca;font-size:14px;line-height:1.5}.tool-info-link-container[_ngcontent-%COMP%]{margin-top:12px}.tool-info-link[_ngcontent-%COMP%]{color:#8ab4f8;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease}.tool-info-link[_ngcontent-%COMP%]:hover{color:#a7c8ff}.tool-info-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}"]})};function sa(i){return Array.isArray(i)}function Ea(i){return i!==null&&typeof i=="object"&&(i.constructor===void 0||i.constructor.name==="Object")}function oM(i){return i&&typeof i=="object"?i.op==="add":!1}function aM(i){return i&&typeof i=="object"?i.op==="remove":!1}function B6(i){return i&&typeof i=="object"?i.op==="replace":!1}function h6(i){return i&&typeof i=="object"?i.op==="copy":!1}function u2(i){return i&&typeof i=="object"?i.op==="move":!1}function mO(i,e){return JSON.stringify(i)===JSON.stringify(e)}function hlA(i,e){return i===e}function rM(i){return i.slice(0,i.length-1)}function wO(i){return i[i.length-1]}function yO(i,e){let A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:hlA;if(i.length{e[A]=i[A]}),e}if(Ea(i)){let e=P({},i);return Object.getOwnPropertySymbols(i).forEach(A=>{e[A]=i[A]}),e}return i}function gM(i,e,A){if(i[e]===A)return i;let t=lM(i);return t[e]=A,t}function $e(i,e){let A=i,t=0;for(;t3&&arguments[3]!==void 0?arguments[3]:!1;if(e.length===0)return A;let n=e[0],o=qr(i?i[n]:void 0,e.slice(1),A,t);if(Ea(i)||sa(i))return gM(i,n,o);if(t){let a=ElA.test(n)?[]:{};return a[n]=o,a}throw new Error("Path does not exist")}var ElA=/^\d+$/;function Su(i,e,A){if(e.length===0)return A(i);if(!sM(i))throw new Error("Path doesn't exist");let t=e[0],n=Su(i[t],e.slice(1),A);return gM(i,t,n)}function cd(i,e){if(e.length===0)return i;if(!sM(i))throw new Error("Path does not exist");if(e.length===1){let n=e[0];if(!(n in i))return i;let o=lM(i);return sa(o)&&o.splice(Number.parseInt(n),1),Ea(o)&&delete o[n],o}let A=e[0],t=cd(i[A],e.slice(1));return gM(i,A,t)}function ku(i,e,A){let t=e.slice(0,e.length-1),n=e[e.length-1];return Su(i,t,o=>{if(!Array.isArray(o))throw new TypeError(`Array expected at path ${JSON.stringify(t)}`);let a=lM(o);return a.splice(Number.parseInt(n),0,A),a})}function Fr(i,e){return i===void 0?!1:e.length===0?!0:i===null?!1:Fr(i[e[0]],e.slice(1))}function ms(i){let e=i.split("/");return e.shift(),e.map(A=>A.replace(/~1/g,"/").replace(/~0/g,"~"))}function xt(i){return i.map(DO).join("")}function DO(i){return`/${String(i).replace(/~/g,"~0").replace(/\//g,"~1")}`}function _u(i,e){return i+DO(e)}function ol(i,e,A){let t=i;for(let n=0;n{let r,s=al(o,a.path);if(a.op==="add")r=MO(o,s);else if(a.op==="remove")r=bO(o,s);else if(a.op==="replace")r=vO(o,s);else if(a.op==="copy")r=vlA(o,s);else if(a.op==="move")r=blA(o,s,xu(a.from));else if(a.op==="test")r=[];else throw new Error(`Unknown JSONPatch operation ${JSON.stringify(a)}`);let l;if(A?.before){let g=A.before(o,a,r);if(g?.revertOperations&&(r=g.revertOperations),g?.document&&(l=g.document),g?.json)throw new Error('Deprecation warning: returned object property ".json" has been renamed to ".document"')}if(t=r.concat(t),l!==void 0)return{document:l}}}),t}function vO(i,e){return Fr(i,e)?[{op:"replace",path:xt(e),value:$e(i,e)}]:[]}function bO(i,e){return[{op:"add",path:xt(e),value:$e(i,e)}]}function MO(i,e){return TB(i,e)||!Fr(i,e)?[{op:"remove",path:xt(e)}]:vO(i,e)}function vlA(i,e){return MO(i,e)}function blA(i,e,A){if(e.length="0"&&i<="9"}function xO(i){return i>=" "}function Ru(i){return`,:[]/{}() -+`.includes(i)}function dM(i){return i>="a"&&i<="z"||i>="A"&&i<="Z"||i==="_"||i==="$"}function IM(i){return i>="a"&&i<="z"||i>="A"&&i<="Z"||i==="_"||i==="$"||i>="0"&&i<="9"}var BM=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,hM=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;function EM(i){return`,[]/{} -+`.includes(i)}function QM(i){return Nu(i)||KlA.test(i)}var KlA=/^[[{\w-]$/;function RO(i){return i===` -`||i==="\r"||i===" "||i==="\b"||i==="\f"}function p2(i,e){let A=i.charCodeAt(e);return A===32||A===10||A===9||A===13}function NO(i,e){let A=i.charCodeAt(e);return A===32||A===9||A===13}function FO(i,e){let A=i.charCodeAt(e);return A===160||A===6158||A>=8192&&A<=8203||A===8239||A===8287||A===12288||A===65279}function Nu(i){return uM(i)||p6(i)}function uM(i){return i==='"'||i==="\u201C"||i==="\u201D"}function pM(i){return i==='"'}function p6(i){return i==="'"||i==="\u2018"||i==="\u2019"||i==="`"||i==="\xB4"}function fM(i){return i==="'"}function OB(i,e){let A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,t=i.lastIndexOf(e);return t!==-1?i.substring(0,t)+(A?"":i.substring(t+1)):i}function lg(i,e){let A=i.length;if(!p2(i,A-1))return i+e;for(;p2(i,A-1);)A--;return i.substring(0,A)+e+i.substring(A)}function LO(i,e,A){return i.substring(0,e)+i.substring(e+A)}function GO(i){return/[,\n][ \t\r]*$/.test(i)}var UlA={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},TlA={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` -`,r:"\r",t:" "};function gg(i){let e=0,A="";l(["```","[```","{```"]),o()||wA(),l(["```","```]","```}"]);let n=C(",");for(n&&a(),QM(i[e])&&GO(A)?(n||(A=lg(A,",")),m()):n&&(A=OB(A,","));i[e]==="}"||i[e]==="]";)e++,a();if(e>=i.length)return A;CA();function o(){a();let dA=E()||f()||v()||k()||M()||F(!1)||z();return a(),dA}function a(){let dA=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,IA=e,xA=r(dA);do xA=s(),xA&&(xA=r(dA));while(xA);return e>IA}function r(dA){let IA=dA?p2:NO,xA="";for(;;)if(IA(i,e))xA+=i[e],e++;else if(FO(i,e))xA+=" ",e++;else break;return xA.length>0?(A+=xA,!0):!1}function s(){if(i[e]==="/"&&i[e+1]==="*"){for(;e=i.length;qA||(QM(i[e])||ue?A=lg(A,":"):QA()),o()||(qA||ue?A+="null":QA())}return i[e]==="}"?(A+="}",e++):A=lg(A,"}"),!0}return!1}function f(){if(i[e]==="["){A+="[",e++,a(),d(",")&&a();let dA=!0;for(;e0&&arguments[0]!==void 0?arguments[0]:!1,IA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,xA=i[e]==="\\";if(xA&&(e++,xA=!0),Nu(i[e])){let qA=pM(i[e])?pM:fM(i[e])?fM:p6(i[e])?p6:uM,ue=e,HA=A.length,bA='"';for(e++;;){if(e>=i.length){let PA=j(e-1);return!dA&&Ru(i.charAt(PA))?(e=ue,A=A.substring(0,HA),v(!0)):(bA=lg(bA,'"'),A+=bA,!0)}if(e===IA)return bA=lg(bA,'"'),A+=bA,!0;if(qA(i[e])){let PA=e,it=bA.length;if(bA+='"',e++,A+=bA,a(!1),dA||e>=i.length||Ru(i[e])||Nu(i[e])||f2(i[e]))return S(),!0;let Xe=j(PA-1),YA=i.charAt(Xe);if(YA===",")return e=ue,A=A.substring(0,HA),v(!1,Xe);if(Ru(YA))return e=ue,A=A.substring(0,HA),v(!0);A=A.substring(0,HA),e=PA+1,bA=`${bA.substring(0,it)}\\${bA.substring(it)}`}else if(dA&&EM(i[e])){if(i[e-1]===":"&&BM.test(i.substring(ue+1,e+2)))for(;e=i.length?e=i.length:RA()}else bA+=PA,e+=2}else{let PA=i.charAt(e);PA==='"'&&i[e-1]!=="\\"?(bA+=`\\${PA}`,e++):RO(PA)?(bA+=UlA[PA],e++):(xO(PA)||Z(PA),bA+=PA,e++)}xA&&B()}}return!1}function S(){let dA=!1;for(a();i[e]==="+";){dA=!0,e++,a(),A=OB(A,'"',!0);let IA=A.length;v()?A=LO(A,IA,1):A=lg(A,'"')}return dA}function k(){let dA=e;if(i[e]==="-"){if(e++,X())return eA(dA),!0;if(!f2(i[e]))return e=dA,!1}for(;f2(i[e]);)e++;if(i[e]==="."){if(e++,X())return eA(dA),!0;if(!f2(i[e]))return e=dA,!1;for(;f2(i[e]);)e++}if(i[e]==="e"||i[e]==="E"){if(e++,(i[e]==="-"||i[e]==="+")&&e++,X())return eA(dA),!0;if(!f2(i[e]))return e=dA,!1;for(;f2(i[e]);)e++}if(!X())return e=dA,!1;if(e>dA){let IA=i.slice(dA,e),xA=/^0\d/.test(IA);return A+=xA?`"${IA}"`:IA,!0}return!1}function M(){return x("true","true")||x("false","false")||x("null","null")||x("True","true")||x("False","false")||x("None","null")}function x(dA,IA){return i.slice(e,e+dA.length)===dA?(A+=IA,e+=dA.length,!0):!1}function F(dA){let IA=e;if(dM(i[e])){for(;eIA){for(;p2(i,e-1)&&e>0;)e--;let xA=i.slice(IA,e);return A+=xA==="undefined"?"null":JSON.stringify(xA),i[e]==='"'&&e++,!0}}function z(){if(i[e]==="/"){let dA=e;for(e++;e0&&p2(i,IA);)IA--;return IA}function X(){return e>=i.length||Ru(i[e])||p2(i,e)}function eA(dA){A+=`${i.slice(dA,e)}0`}function Z(dA){throw new nC(`Invalid character ${JSON.stringify(dA)}`,e)}function CA(){throw new nC(`Unexpected character ${JSON.stringify(i[e])}`,e)}function wA(){throw new nC("Unexpected end of json string",i.length)}function BA(){throw new nC("Object key expected",e)}function QA(){throw new nC("Colon expected",e)}function RA(){let dA=i.slice(e,e+6);throw new nC(`Invalid unicode character "${dA}"`,e)}}function OlA(i,e){return i[e]==="*"&&i[e+1]==="/"}var m2=i=>Array.isArray(i),JlA=i=>i!==null&&typeof i=="object"&&!m2(i),YlA=i=>typeof i=="string",Cd=(i,e)=>i===e?!0:i!==null&&e!==null&&typeof i=="object"&&typeof e=="object"&&Object.keys(i).length===Object.keys(e).length&&Object.entries(i).every(([A,t])=>Cd(t,e[A])),KO=(i,e)=>{let A=i?.[e];if(A!==void 0){if(!Object.hasOwn(i,e)||Array.isArray(i)&&!/^\d+$/.test(e)||typeof i!="object")throw new TypeError(`Unsupported property "${e}"`);return A}};function Ar(i){return(...e)=>{let A=e.map(o=>er(o)),t=A[0],n=A[1];return A.length===1?o=>i(t(o)):A.length===2?o=>i(t(o),n(o)):o=>i(...A.map(a=>a(o)))}}var Gu={boolean:0,number:1,string:2},UO=3,JO=(i,e)=>typeof i==typeof e&&typeof i in Gu?i>e:!1,HlA=(i,e)=>Cd(i,e)||JO(i,e),YO=(i,e)=>typeof i==typeof e&&typeof i in Gu?iCd(i,e)||YO(i,e),Lu={pipe:(...i)=>{let e=i.map(A=>er(A));return A=>e.reduce((t,n)=>n(t),A)},object:i=>{let e=Object.keys(i).map(A=>[A,er(i[A])]);return A=>{let t={};for(let[n,o]of e)t[n]=o(A);return t}},array:(...i)=>{let e=i.map(A=>er(A));return A=>e.map(t=>t(A))},get:(...i)=>{if(i.length===0)return e=>e??null;if(i.length===1){let e=i[0];return A=>KO(A,e)??null}return e=>{let A=e;for(let t of i)A=KO(A,t);return A??null}},map:i=>{let e=er(i);return A=>A.map(e)},mapObject:i=>{let e=er(i);return A=>{let t={};for(let n of Object.keys(A)){let o=e({key:n,value:A[n]});t[o.key]=o.value}return t}},mapKeys:i=>{let e=er(i);return A=>{let t={};for(let n of Object.keys(A)){let o=e(n);t[o]=A[n]}return t}},mapValues:i=>{let e=er(i);return A=>{let t={};for(let n of Object.keys(A))t[n]=e(A[n]);return t}},filter:i=>{let e=er(i);return A=>A.filter(t=>TO(e(t)))},sort:(i=["get"],e)=>{let A=er(i),t=e==="desc"?-1:1;function n(o,a){let r=A(o),s=A(a);if(typeof r!=typeof s){let l=Gu[typeof r]??UO,g=Gu[typeof s]??UO;return l>g?t:ls?t:ro.slice().sort(n)},reverse:()=>i=>i.toReversed(),pick:(...i)=>{let e=i.map(([t,...n])=>[n[n.length-1],Lu.get(...n)]),A=(t,n)=>{let o={};for(let[a,r]of n)o[a]=r(t);return o};return t=>m2(t)?t.map(n=>A(n,e)):A(t,e)},groupBy:i=>{let e=er(i);return A=>{let t={};for(let n of A){let o=e(n);t[o]?t[o].push(n):t[o]=[n]}return t}},keyBy:i=>{let e=er(i);return A=>{let t={};for(let n of A){let o=e(n);o in t||(t[o]=n)}return t}},flatten:()=>i=>i.flat(),join:(i="")=>e=>e.join(i),split:Ar((i,e)=>e!==void 0?i.split(e):i.trim().split(/\s+/)),substring:Ar((i,e,A)=>i.slice(Math.max(e,0),A)),uniq:()=>i=>{let e=[];for(let A of i)e.findIndex(t=>Cd(t,A))===-1&&e.push(A);return e},uniqBy:i=>e=>Object.values(Lu.keyBy(i)(e)),limit:i=>e=>e.slice(0,Math.max(i,0)),size:()=>i=>i.length,keys:()=>Object.keys,values:()=>Object.values,prod:()=>i=>Fu(i,(e,A)=>e*A),sum:()=>i=>m2(i)?i.reduce((e,A)=>e+A,0):mM(),average:()=>i=>m2(i)?i.length>0?i.reduce((e,A)=>e+A)/i.length:null:mM(),min:()=>i=>Fu(i,(e,A)=>Math.min(e,A)),max:()=>i=>Fu(i,(e,A)=>Math.max(e,A)),and:Ar((...i)=>Fu(i,(e,A)=>!!(e&&A))),or:Ar((...i)=>Fu(i,(e,A)=>!!(e||A))),not:Ar(i=>!i),exists:i=>{let e=i.slice(1),A=e.pop(),t=Lu.get(...e);return n=>{let o=t(n);return!!o&&Object.hasOwnProperty.call(o,A)}},if:(i,e,A)=>{let t=er(i),n=er(e),o=er(A);return a=>TO(t(a))?n(a):o(a)},in:(i,e)=>{let A=er(i),t=er(e);return n=>{let o=A(n);return t(n).findIndex(a=>Cd(a,o))!==-1}},"not in":(i,e)=>{let A=Lu.in(i,e);return t=>!A(t)},regex:(i,e,A)=>{let t=new RegExp(e,A),n=er(i);return o=>t.test(n(o))},match:(i,e,A)=>{let t=new RegExp(e,A),n=er(i);return o=>{let a=n(o).match(t);return a?OO(a):null}},matchAll:(i,e,A)=>{let t=new RegExp(e,`${A??""}g`),n=er(i);return o=>Array.from(n(o).matchAll(t)).map(OO)},eq:Ar(Cd),gt:Ar(JO),gte:Ar(HlA),lt:Ar(YO),lte:Ar(zlA),ne:Ar((i,e)=>!Cd(i,e)),add:Ar((i,e)=>i+e),subtract:Ar((i,e)=>i-e),multiply:Ar((i,e)=>i*e),divide:Ar((i,e)=>i/e),mod:Ar((i,e)=>i%e),pow:Ar((i,e)=>i**e),abs:Ar(Math.abs),round:Ar((i,e=0)=>+`${Math.round(+`${i}e${e}`)}e${-e}`),number:Ar(i=>{let e=Number(i);return Number.isNaN(Number(i))?null:e}),string:Ar(String)},TO=i=>i!==null&&i!==0&&i!==!1,Fu=(i,e)=>(m2(i)||mM(),i.length===0?null:i.reduce(e)),OO=i=>{let[e,...A]=i,t=i.groups;return A.length?t?{value:e,groups:A,namedGroups:t}:{value:e,groups:A}:{value:e}},mM=()=>{wM("Array expected")},wM=i=>{throw new TypeError(i)},f6=[];function er(i,e){f6.unshift(P(P(P({},Lu),f6[0]),e?.functions));try{let A=m2(i)?PlA(i,f6[0]):JlA(i)?wM(`Function notation ["object", {...}] expected but got ${JSON.stringify(i)}`):()=>i;return t=>{try{return A(t)}catch(n){throw n.jsonquery=[{data:t,query:i},...n.jsonquery??[]],n}}}finally{f6.shift()}}function PlA(i,e){let[A,...t]=i,n=e[A];return n||wM(`Unknown function '${A}'`),n(...t)}var HO=[{pow:"^"},{multiply:"*",divide:"/",mod:"%"},{add:"+",subtract:"-"},{gt:">",gte:">=",lt:"<",lte:"<=",in:"in","not in":"not in"},{eq:"==",ne:"!="},{and:"and"},{or:"or"},{pipe:"|"}],jlA=["|","and","or"],zO=["|","and","or","*","/","%","+","-"];function PO(i,e){if(!m2(e))throw new Error("Invalid custom operators");return e.reduce(VlA,i)}function VlA(i,{name:e,op:A,at:t,after:n,before:o}){if(t)return i.map(s=>Object.values(s).includes(t)?$A(P({},s),{[e]:A}):s);let a=n??o,r=i.findIndex(s=>Object.values(s).includes(a));if(r!==-1)return i.toSpliced(r+(n?1:0),0,{[e]:A});throw new Error("Invalid custom operator")}var qlA=/^[a-zA-Z_$][a-zA-Z\d_$]*$/,WlA=/^[a-zA-Z_$][a-zA-Z\d_$]*/,ZlA=/^"(?:[^"\\]|\\.)*"/,XlA=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/,$lA=/^(0|[1-9][0-9]*)/,AgA=/^(true|false|null)/,egA=/^[ \n\t\r]+/;function yM(i,e){let A=e?.operators??[],t=PO(HO,A),n=Object.assign({},...t),o=jlA.concat(A.filter(X=>X.vararg).map(X=>X.op)),a=zO.concat(A.filter(X=>X.leftAssociative).map(X=>X.op)),r=(X=t.length-1)=>{let eA=t[X];if(!eA)return l();let Z=i[z]==="(",CA=r(X-1);for(;;){if(M(),i[z]==="."&&"pipe"in eA){let IA=g();CA=CA[0]==="pipe"?[...CA,IA]:["pipe",CA,IA];continue}let wA=z,BA=s(eA);if(!BA)break;let QA=r(X-1),RA=CA[0],dA=BA===RA&&!Z;if(dA&&!a.includes(n[BA])){z=wA;break}CA=dA&&o.includes(n[BA])?[...CA,QA]:[BA,CA,QA]}return CA},s=X=>{let eA=Object.keys(X).sort((Z,CA)=>CA.length-Z.length);for(let Z of eA){let CA=X[Z];if(i.substring(z,z+CA.length)===CA)return z+=CA.length,M(),Z}},l=()=>{if(M(),i[z]==="("){z++;let X=r();return x(")"),X}return g()},g=()=>{if(i[z]==="."){let X=[];for(;i[z]===".";)z++,X.push(u()??E()??m()??F("Property expected")),M();return["get",...X]}return C()},C=()=>{let X=z,eA=E();if(M(),!eA||i[z]!=="(")return z=X,d();z++,M();let Z=i[z]!==")"?[r()]:[];for(;z{if(i[z]==="{"){z++,M();let X={},eA=!0;for(;z{if(i[z]==="["){z++,M();let X=[],eA=!0;for(;zk(ZlA,JSON.parse),E=()=>k(WlA,X=>X),f=()=>k(XlA,JSON.parse),m=()=>k($lA,JSON.parse),v=()=>{let X=k(AgA,JSON.parse);if(X!==void 0)return X;F("Value expected")},S=()=>{M(),z{let Z=i.substring(z).match(X);if(Z)return z+=Z[0].length,eA(Z[0])},M=()=>k(egA,X=>X),x=X=>{i[z]!==X&&F(`Character '${X}' expected`),z++},F=(X,eA=z)=>{throw new SyntaxError(`${X} (pos: ${eA})`)},z=0,j=r();return S(),j}var tgA=40,igA=" ",jO=(i,e)=>{let A=e?.indentation??igA,t=e?.operators??[],n=PO(HO,t),o=Object.assign({},...n),a=zO.concat(t.filter(B=>B.leftAssociative).map(B=>B.op)),r=(B,u,E=!1)=>m2(B)?s(B,u,E):JSON.stringify(B),s=(B,u,E)=>{let[f,...m]=B;if(f==="get"&&m.length>0)return g(m);if(f==="object")return l(m[0],u);if(f==="array"){let M=m.map(x=>r(x,u));return d(M,["[",", ","]"],[`[ -${u+A}`,`, -${u+A}`,` -${u}]`])}let v=o[f];if(v){let M=E?"(":"",x=E?")":"",F=m.map((z,j)=>{let X=z?.[0],eA=n.findIndex(wA=>f in wA),Z=n.findIndex(wA=>X in wA),CA=eA0||f===X&&!a.includes(v);return r(z,u+A,CA)});return d(F,[M,` ${v} `,x],[M,` -${u+A}${v} `,x])}let S=m.length===1?u:u+A,k=m.map(M=>r(M,S));return d(k,[`${f}(`,", ",")"],m.length===1?[`${f}(`,`, -${u}`,")"]:[`${f}( -${S}`,`, -${S}`,` -${u})`])},l=(B,u)=>{let E=u+A,f=Object.entries(B).map(([m,v])=>`${C(m)}: ${r(v,E)}`);return d(f,["{ ",", "," }"],[`{ -${E}`,`, -${E}`,` -${u}}`])},g=B=>B.map(u=>`.${C(u)}`).join(""),C=B=>qlA.test(B)?B:JSON.stringify(B),d=(B,[u,E,f],[m,v,S])=>u.length+B.reduce((k,M)=>k+M.length+E.length,0)-E.length+f.length<=(e?.maxLineLength??tgA)?u+B.join(E)+f:m+B.join(v)+S;return r(i,"")};function VO(i,e,A){return er(YlA(e)?yM(e,A):e,A)(i)}var qO={prefix:"far",iconName:"clock",icon:[512,512,[128339,"clock-four"],"f017","M464 256a208 208 0 1 1 -416 0 208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0 256 256 0 1 0 -512 0zM232 120l0 136c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2 280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"]};var ngA={prefix:"far",iconName:"square-check",icon:[448,512,[9745,9989,61510,"check-square"],"f14a","M384 32c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l320 0zM64 80c-8.8 0-16 7.2-16 16l0 320c0 8.8 7.2 16 16 16l320 0c8.8 0 16-7.2 16-16l0-320c0-8.8-7.2-16-16-16L64 80zm230.7 89.9c7.8-10.7 22.8-13.1 33.5-5.3 10.7 7.8 13.1 22.8 5.3 33.5L211.4 366.1c-4.1 5.7-10.5 9.3-17.5 9.8-7 .5-13.9-2-18.8-6.9l-55.9-55.9c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l36 36 105.6-145.2z"]},DM=ngA;var WO={prefix:"far",iconName:"lightbulb",icon:[384,512,[128161],"f0eb","M296.5 291.1C321 265.2 336 230.4 336 192 336 112.5 271.5 48 192 48S48 112.5 48 192c0 38.4 15 73.2 39.5 99.1 21.3 22.4 44.9 54 53.3 92.9l102.4 0c8.4-39 32-70.5 53.3-92.9zm34.8 33C307.7 349 288 379.4 288 413.7l0 18.3c0 44.2-35.8 80-80 80l-32 0c-44.2 0-80-35.8-80-80l0-18.3C96 379.4 76.3 349 52.7 324.1 20 289.7 0 243.2 0 192 0 86 86 0 192 0S384 86 384 192c0 51.2-20 97.7-52.7 132.1zM144 184c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-48.6 39.4-88 88-88 13.3 0 24 10.7 24 24s-10.7 24-24 24c-22.1 0-40 17.9-40 40z"]};var vM={prefix:"far",iconName:"square",icon:[448,512,[9632,9723,9724,61590],"f0c8","M384 80c8.8 0 16 7.2 16 16l0 320c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16L48 96c0-8.8 7.2-16 16-16l320 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32z"]};var ZO={prefix:"fas",iconName:"rotate",icon:[512,512,[128260,"sync-alt"],"f2f1","M480.1 192l7.9 0c13.3 0 24-10.7 24-24l0-144c0-9.7-5.8-18.5-14.8-22.2S477.9 .2 471 7L419.3 58.8C375 22.1 318 0 256 0 127 0 20.3 95.4 2.6 219.5 .1 237 12.2 253.2 29.7 255.7s33.7-9.7 36.2-27.1C79.2 135.5 159.3 64 256 64 300.4 64 341.2 79 373.7 104.3L327 151c-6.9 6.9-8.9 17.2-5.2 26.2S334.3 192 344 192l136.1 0zm29.4 100.5c2.5-17.5-9.7-33.7-27.1-36.2s-33.7 9.7-36.2 27.1c-13.3 93-93.4 164.5-190.1 164.5-44.4 0-85.2-15-117.7-40.3L185 361c6.9-6.9 8.9-17.2 5.2-26.2S177.7 320 168 320L24 320c-13.3 0-24 10.7-24 24L0 488c0 9.7 5.8 18.5 14.8 22.2S34.1 511.8 41 505l51.8-51.8C137 489.9 194 512 256 512 385 512 491.7 416.6 509.4 292.5z"]};var bM={prefix:"fas",iconName:"paste",icon:[512,512,["file-clipboard"],"f0ea","M64 0C28.7 0 0 28.7 0 64L0 384c0 35.3 28.7 64 64 64l112 0 0-224c0-61.9 50.1-112 112-112l64 0 0-48c0-35.3-28.7-64-64-64L64 0zM248 112l-144 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l144 0c13.3 0 24 10.7 24 24s-10.7 24-24 24zm40 48c-35.3 0-64 28.7-64 64l0 224c0 35.3 28.7 64 64 64l160 0c35.3 0 64-28.7 64-64l0-165.5c0-17-6.7-33.3-18.7-45.3l-58.5-58.5c-12-12-28.3-18.7-45.3-18.7L288 160z"]};var ogA={prefix:"fas",iconName:"crop-simple",icon:[512,512,["crop-alt"],"f565","M128 32c0-17.7-14.3-32-32-32S64 14.3 64 32l0 32-32 0C14.3 64 0 78.3 0 96s14.3 32 32 32l32 0 0 256c0 35.3 28.7 64 64 64l208 0 0-64-208 0 0-352zM384 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-32 32 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-32 0 0-256c0-35.3-28.7-64-64-64l-208 0 0 64 208 0 0 352z"]},XO=ogA;var Ku={prefix:"fas",iconName:"filter",icon:[512,512,[],"f0b0","M32 64C19.1 64 7.4 71.8 2.4 83.8S.2 109.5 9.4 118.6L192 301.3 192 416c0 8.5 3.4 16.6 9.4 22.6l64 64c9.2 9.2 22.9 11.9 34.9 6.9S320 492.9 320 480l0-178.7 182.6-182.6c9.2-9.2 11.9-22.9 6.9-34.9S492.9 64 480 64L32 64z"]};var agA={prefix:"fas",iconName:"square-caret-down",icon:[448,512,["caret-square-down"],"f150","M384 480c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0zM224 352c-6.7 0-13-2.8-17.6-7.7l-104-112c-6.5-7-8.2-17.2-4.4-25.9S110.5 192 120 192l208 0c9.5 0 18.2 5.7 22 14.4s2.1 18.9-4.4 25.9l-104 112c-4.5 4.9-10.9 7.7-17.6 7.7z"]},$O=agA;var JB={prefix:"fas",iconName:"caret-right",icon:[256,512,[],"f0da","M249.3 235.8c10.2 12.6 9.5 31.1-2.2 42.8l-128 128c-9.2 9.2-22.9 11.9-34.9 6.9S64.5 396.9 64.5 384l0-256c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l128 128 2.2 2.4z"]};var rgA={prefix:"fas",iconName:"magnifying-glass",icon:[512,512,[128269,"search"],"f002","M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376C296.3 401.1 253.9 416 208 416 93.1 416 0 322.9 0 208S93.1 0 208 0 416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"]},Uu=rgA;var AJ={prefix:"fas",iconName:"eye",icon:[576,512,[128065],"f06e","M288 32c-80.8 0-145.5 36.8-192.6 80.6-46.8 43.5-78.1 95.4-93 131.1-3.3 7.9-3.3 16.7 0 24.6 14.9 35.7 46.2 87.7 93 131.1 47.1 43.7 111.8 80.6 192.6 80.6s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1 3.3-7.9 3.3-16.7 0-24.6-14.9-35.7-46.2-87.7-93-131.1-47.1-43.7-111.8-80.6-192.6-80.6zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64-11.5 0-22.3-3-31.7-8.4-1 10.9-.1 22.1 2.9 33.2 13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-12.2-45.7-55.5-74.8-101.1-70.8 5.3 9.3 8.4 20.1 8.4 31.7z"]},eJ={prefix:"fas",iconName:"caret-left",icon:[256,512,[],"f0d9","M7.7 235.8c-10.3 12.6-9.5 31.1 2.2 42.8l128 128c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6l0-256c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9l-128 128-2.2 2.4z"]};var tJ={prefix:"fas",iconName:"chevron-up",icon:[448,512,[],"f077","M201.4 105.4c12.5-12.5 32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 173.3 54.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z"]};var iJ={prefix:"fas",iconName:"circle-notch",icon:[512,512,[],"f1ce","M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8-79.3 23.6-137.1 97.1-137.1 184.1 0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256 512 397.4 397.4 512 256 512S0 397.4 0 256c0-116 77.1-213.9 182.9-245.4 16.9-5 34.8 4.6 39.8 21.5z"]};var sgA={prefix:"fas",iconName:"ellipsis-vertical",icon:[128,512,["ellipsis-v"],"f142","M64 144a56 56 0 1 1 0-112 56 56 0 1 1 0 112zm0 224c30.9 0 56 25.1 56 56s-25.1 56-56 56-56-25.1-56-56 25.1-56 56-56zm56-112c0 30.9-25.1 56-56 56s-56-25.1-56-56 25.1-56 56-56 56 25.1 56 56z"]},MM=sgA;var lgA={prefix:"fas",iconName:"pen-to-square",icon:[512,512,["edit"],"f044","M471.6 21.7c-21.9-21.9-57.3-21.9-79.2 0L368 46.1 465.9 144 490.3 119.6c21.9-21.9 21.9-57.3 0-79.2L471.6 21.7zm-299.2 220c-6.1 6.1-10.8 13.6-13.5 21.9l-29.6 88.8c-2.9 8.6-.6 18.1 5.8 24.6s15.9 8.7 24.6 5.8l88.8-29.6c8.2-2.7 15.7-7.4 21.9-13.5L432 177.9 334.1 80 172.4 241.7zM96 64C43 64 0 107 0 160L0 416c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 96c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l96 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 64z"]},nJ=lgA;var SM={prefix:"fas",iconName:"clone",icon:[512,512,[],"f24d","M288 448l-224 0 0-224 48 0 0-64-48 0c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l224 0c35.3 0 64-28.7 64-64l0-48-64 0 0 48zm-64-96l224 0c35.3 0 64-28.7 64-64l0-224c0-35.3-28.7-64-64-64L224 0c-35.3 0-64 28.7-64 64l0 224c0 35.3 28.7 64 64 64z"]};var ggA={prefix:"fas",iconName:"square-check",icon:[448,512,[9745,9989,61510,"check-square"],"f14a","M384 32c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l320 0zM342 145.7c-10.7-7.8-25.7-5.4-33.5 5.3L189.1 315.2 137 263.1c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l72 72c5 5 11.9 7.5 18.8 7s13.4-4.1 17.5-9.8L347.3 179.2c7.8-10.7 5.4-25.7-5.3-33.5z"]},kM=ggA;var cgA={prefix:"fas",iconName:"square-caret-up",icon:[448,512,["caret-square-up"],"f151","M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM224 160c6.7 0 13 2.8 17.6 7.7l104 112c6.5 7 8.2 17.2 4.4 25.9S337.5 320 328 320l-208 0c-9.5 0-18.2-5.7-22-14.4s-2.1-18.9 4.4-25.9l104-112c4.5-4.9 10.9-7.7 17.6-7.7z"]},oJ=cgA;var Tu={prefix:"fas",iconName:"code",icon:[576,512,[],"f121","M360.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm64.6 136.1c-12.5 12.5-12.5 32.8 0 45.3l73.4 73.4-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0zm-274.7 0c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 150.6 182.6c12.5-12.5 12.5-32.8 0-45.3z"]};var _M={prefix:"fas",iconName:"angle-right",icon:[256,512,[8250],"f105","M247.1 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L179.2 256 41.9 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"]};var CgA={prefix:"fas",iconName:"gear",icon:[512,512,[9881,"cog"],"f013","M195.1 9.5C198.1-5.3 211.2-16 226.4-16l59.8 0c15.2 0 28.3 10.7 31.3 25.5L332 79.5c14.1 6 27.3 13.7 39.3 22.8l67.8-22.5c14.4-4.8 30.2 1.2 37.8 14.4l29.9 51.8c7.6 13.2 4.9 29.8-6.5 39.9L447 233.3c.9 7.4 1.3 15 1.3 22.7s-.5 15.3-1.3 22.7l53.4 47.5c11.4 10.1 14 26.8 6.5 39.9l-29.9 51.8c-7.6 13.1-23.4 19.2-37.8 14.4l-67.8-22.5c-12.1 9.1-25.3 16.7-39.3 22.8l-14.4 69.9c-3.1 14.9-16.2 25.5-31.3 25.5l-59.8 0c-15.2 0-28.3-10.7-31.3-25.5l-14.4-69.9c-14.1-6-27.2-13.7-39.3-22.8L73.5 432.3c-14.4 4.8-30.2-1.2-37.8-14.4L5.8 366.1c-7.6-13.2-4.9-29.8 6.5-39.9l53.4-47.5c-.9-7.4-1.3-15-1.3-22.7s.5-15.3 1.3-22.7L12.3 185.8c-11.4-10.1-14-26.8-6.5-39.9L35.7 94.1c7.6-13.2 23.4-19.2 37.8-14.4l67.8 22.5c12.1-9.1 25.3-16.7 39.3-22.8L195.1 9.5zM256.3 336a80 80 0 1 0 -.6-160 80 80 0 1 0 .6 160z"]},aJ=CgA;var rJ={prefix:"fas",iconName:"up-right-and-down-left-from-center",icon:[512,512,["expand-alt"],"f424","M344 0L488 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87-39-39c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 0 344 0zM168 512L24 512c-13.3 0-24-10.7-24-24L0 344c0-9.7 5.8-18.5 14.8-22.2S34.1 320.2 41 327l39 39 87-87c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2S177.7 512 168 512z"]};var oC={prefix:"fas",iconName:"wrench",icon:[576,512,[128295],"f0ad","M509.4 98.6c7.6-7.6 20.3-5.7 24.1 4.3 6.8 17.7 10.5 37 10.5 57.1 0 88.4-71.6 160-160 160-17.5 0-34.4-2.8-50.2-8L146.9 498.9c-28.1 28.1-73.7 28.1-101.8 0s-28.1-73.7 0-101.8L232 210.2c-5.2-15.8-8-32.6-8-50.2 0-88.4 71.6-160 160-160 20.1 0 39.4 3.7 57.1 10.5 10 3.8 11.8 16.5 4.3 24.1l-88.7 88.7c-3 3-4.7 7.1-4.7 11.3l0 41.4c0 8.8 7.2 16 16 16l41.4 0c4.2 0 8.3-1.7 11.3-4.7l88.7-88.7z"]},m6={prefix:"fas",iconName:"trash-can",icon:[448,512,[61460,"trash-alt"],"f2ed","M136.7 5.9C141.1-7.2 153.3-16 167.1-16l113.9 0c13.8 0 26 8.8 30.4 21.9L320 32 416 32c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l96 0 8.7-26.1zM32 144l384 0 0 304c0 35.3-28.7 64-64 64L96 512c-35.3 0-64-28.7-64-64l0-304zm88 64c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24z"]};var w6={prefix:"fas",iconName:"check",icon:[448,512,[10003,10004],"f00c","M434.8 70.1c14.3 10.4 17.5 30.4 7.1 44.7l-256 352c-5.5 7.6-14 12.3-23.4 13.1s-18.5-2.7-25.1-9.3l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l101.5 101.5 234-321.7c10.4-14.3 30.4-17.5 44.7-7.1z"]};var sJ={prefix:"fas",iconName:"xmark",icon:[384,512,[128473,10005,10006,10060,215,"close","multiply","remove","times"],"f00d","M55.1 73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L147.2 256 9.9 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192.5 301.3 329.9 438.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.8 256 375.1 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192.5 210.7 55.1 73.4z"]},lJ=sJ;var Ou=sJ;var dd={prefix:"fas",iconName:"pen",icon:[512,512,[128394],"f304","M352.9 21.2L308 66.1 445.9 204 490.8 159.1C504.4 145.6 512 127.2 512 108s-7.6-37.6-21.2-51.1L455.1 21.2C441.6 7.6 423.2 0 404 0s-37.6 7.6-51.1 21.2zM274.1 100L58.9 315.1c-10.7 10.7-18.5 24.1-22.6 38.7L.9 481.6c-2.3 8.3 0 17.3 6.2 23.4s15.1 8.5 23.4 6.2l127.8-35.5c14.6-4.1 27.9-11.8 38.7-22.6L412 237.9 274.1 100z"]};var gJ={prefix:"fas",iconName:"chevron-down",icon:[448,512,[],"f078","M201.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 338.7 54.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"]};var cJ={prefix:"fas",iconName:"angle-down",icon:[384,512,[8964],"f107","M169.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 306.7 54.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"]};var dgA={prefix:"fas",iconName:"arrow-down-short-wide",icon:[576,512,["sort-amount-desc","sort-amount-down-alt"],"f884","M246.6 374.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0l-96-96c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L96 370.7 96 64c0-17.7 14.3-32 32-32s32 14.3 32 32l0 306.7 41.4-41.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zM320 32l32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-96 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128l160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-160 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128l224 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32s14.3-32 32-32z"]};var Ju=dgA;var IgA={prefix:"fas",iconName:"triangle-exclamation",icon:[512,512,[9888,"exclamation-triangle","warning"],"f071","M256 0c14.7 0 28.2 8.1 35.2 21l216 400c6.7 12.4 6.4 27.4-.8 39.5S486.1 480 472 480L40 480c-14.1 0-27.2-7.4-34.4-19.5s-7.5-27.1-.8-39.5l216-400c7-12.9 20.5-21 35.2-21zm0 352a32 32 0 1 0 0 64 32 32 0 1 0 0-64zm0-192c-18.2 0-32.7 15.5-31.4 33.7l7.4 104c.9 12.5 11.4 22.3 23.9 22.3 12.6 0 23-9.7 23.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z"]},w2=IgA;var BgA={prefix:"fas",iconName:"scissors",icon:[512,512,[9984,9986,9988,"cut"],"f0c4","M192 256l-39.5 39.5c-12.6-4.9-26.2-7.5-40.5-7.5-61.9 0-112 50.1-112 112s50.1 112 112 112 112-50.1 112-112c0-14.3-2.7-27.9-7.5-40.5L499.2 76.8c7.1-7.1 7.1-18.5 0-25.6-28.3-28.3-74.1-28.3-102.4 0L256 192 216.5 152.5c4.9-12.6 7.5-26.2 7.5-40.5 0-61.9-50.1-112-112-112S0 50.1 0 112 50.1 224 112 224c14.3 0 27.9-2.7 40.5-7.5L192 256zm97.9 97.9L396.8 460.8c28.3 28.3 74.1 28.3 102.4 0 7.1-7.1 7.1-18.5 0-25.6l-145.3-145.3-64 64zM64 112a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm48 240a48 48 0 1 1 0 96 48 48 0 1 1 0-96z"]},Id=BgA;var Yu={prefix:"fas",iconName:"arrow-right-arrow-left",icon:[512,512,[8644,"exchange"],"f0ec","M502.6 150.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 160 32 160c-17.7 0-32-14.3-32-32S14.3 96 32 96l370.7 0-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3zm-397.3 352l-96-96c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 352 480 352c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0z"]};var xM={prefix:"fas",iconName:"caret-up",icon:[320,512,[],"f0d8","M140.3 135.2c12.6-10.3 31.1-9.5 42.8 2.2l128 128c9.2 9.2 11.9 22.9 6.9 34.9S301.4 320 288.5 320l-256 0c-12.9 0-24.6-7.8-29.6-19.8S.7 274.5 9.9 265.4l128-128 2.4-2.2z"]};var CJ={prefix:"fas",iconName:"down-left-and-up-right-to-center",icon:[512,512,["compress-alt"],"f422","M439.5 7c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2S450.2 240 440.5 240l-144 0c-13.3 0-24-10.7-24-24l0-144c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39 87-87zM72.5 272l144 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87-39-39c-6.9-6.9-8.9-17.2-5.2-26.2S62.8 272 72.5 272z"]};var Bd={prefix:"fas",iconName:"plus",icon:[448,512,[10133,61543,"add"],"2b","M256 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 160-160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l160 0 0 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-160 160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-160 0 0-160z"]};var aC={prefix:"fas",iconName:"copy",icon:[448,512,[],"f0c5","M192 0c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64l192 0c35.3 0 64-28.7 64-64l0-200.6c0-17.4-7.1-34.1-19.7-46.2L370.6 17.8C358.7 6.4 342.8 0 326.3 0L192 0zM64 128c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l192 0c35.3 0 64-28.7 64-64l0-16-64 0 0 16-192 0 0-256 16 0 0-64-16 0z"]};var hgA={prefix:"fas",iconName:"arrow-rotate-right",icon:[512,512,[8635,"arrow-right-rotate","arrow-rotate-forward","redo"],"f01e","M436.7 74.7L448 85.4 448 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l47.9 0-7.6-7.2c-.2-.2-.4-.4-.6-.6-75-75-196.5-75-271.5 0s-75 196.5 0 271.5 196.5 75 271.5 0c8.2-8.2 15.5-16.9 21.9-26.1 10.1-14.5 30.1-18 44.6-7.9s18 30.1 7.9 44.6c-8.5 12.2-18.2 23.8-29.1 34.7-100 100-262.1 100-362 0S-25 175 75 75c99.9-99.9 261.7-100 361.7-.3z"]};var y6=hgA;var r0={prefix:"fas",iconName:"caret-down",icon:[320,512,[],"f0d7","M140.3 376.8c12.6 10.2 31.1 9.5 42.8-2.2l128-128c9.2-9.2 11.9-22.9 6.9-34.9S301.4 192 288.5 192l-256 0c-12.9 0-24.6 7.8-29.6 19.8S.7 237.5 9.9 246.6l128 128 2.4 2.2z"]};var EgA={prefix:"fas",iconName:"arrow-rotate-left",icon:[512,512,[8634,"arrow-left-rotate","arrow-rotate-back","arrow-rotate-backward","undo"],"f0e2","M256 64c-56.8 0-107.9 24.7-143.1 64l47.1 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 192c-17.7 0-32-14.3-32-32L0 32C0 14.3 14.3 0 32 0S64 14.3 64 32l0 54.7C110.9 33.6 179.5 0 256 0 397.4 0 512 114.6 512 256S397.4 512 256 512c-87 0-163.9-43.4-210.1-109.7-10.1-14.5-6.6-34.4 7.9-44.6s34.4-6.6 44.6 7.9c34.8 49.8 92.4 82.3 157.6 82.3 106 0 192-86 192-192S362 64 256 64z"]};var D6=EgA;var RM={prefix:"fas",iconName:"square",icon:[448,512,[9632,9723,9724,61590],"f0c8","M64 32l320 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32z"]};var NM={prefix:"fas",iconName:"arrow-down",icon:[384,512,[8595],"f063","M169.4 502.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 370.7-105.4-105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"]};var DV=Vp(BJ(),1);var hJ=Number.isNaN||function(e){return typeof e=="number"&&e!==e};function QgA(i,e){return!!(i===e||hJ(i)&&hJ(e))}function ugA(i,e){if(i.length!==e.length)return!1;for(var A=0;A{if(typeof n!="object"||!n.name||!n.init)throw new Error("Invalid JSEP plugin format");this.registered[n.name]||(n.init(this.jsep),this.registered[n.name]=n)})}},rl=class i{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+i.version}static addUnaryOp(e){return i.max_unop_len=Math.max(e.length,i.max_unop_len),i.unary_ops[e]=1,i}static addBinaryOp(e,A,t){return i.max_binop_len=Math.max(e.length,i.max_binop_len),i.binary_ops[e]=A,t?i.right_associative.add(e):i.right_associative.delete(e),i}static addIdentifierChar(e){return i.additional_identifier_chars.add(e),i}static addLiteral(e,A){return i.literals[e]=A,i}static removeUnaryOp(e){return delete i.unary_ops[e],e.length===i.max_unop_len&&(i.max_unop_len=i.getMaxKeyLen(i.unary_ops)),i}static removeAllUnaryOps(){return i.unary_ops={},i.max_unop_len=0,i}static removeIdentifierChar(e){return i.additional_identifier_chars.delete(e),i}static removeBinaryOp(e){return delete i.binary_ops[e],e.length===i.max_binop_len&&(i.max_binop_len=i.getMaxKeyLen(i.binary_ops)),i.right_associative.delete(e),i}static removeAllBinaryOps(){return i.binary_ops={},i.max_binop_len=0,i}static removeLiteral(e){return delete i.literals[e],i}static removeAllLiterals(){return i.literals={},i}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(e){this.expr=e,this.index=0}static parse(e){return new i(e).parse()}static getMaxKeyLen(e){return Math.max(0,...Object.keys(e).map(A=>A.length))}static isDecimalDigit(e){return e>=48&&e<=57}static binaryPrecedence(e){return i.binary_ops[e]||0}static isIdentifierStart(e){return e>=65&&e<=90||e>=97&&e<=122||e>=128&&!i.binary_ops[String.fromCharCode(e)]||i.additional_identifier_chars.has(String.fromCharCode(e))}static isIdentifierPart(e){return i.isIdentifierStart(e)||i.isDecimalDigit(e)}throwError(e){let A=new Error(e+" at character "+this.index);throw A.index=this.index,A.description=e,A}runHook(e,A){if(i.hooks[e]){let t={context:this,node:A};return i.hooks.run(e,t),t.node}return A}searchHook(e){if(i.hooks[e]){let A={context:this};return i.hooks[e].find(function(t){return t.call(A.context,A),A.node}),A.node}}gobbleSpaces(){let e=this.code;for(;e===i.SPACE_CODE||e===i.TAB_CODE||e===i.LF_CODE||e===i.CR_CODE;)e=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let e=this.gobbleExpressions(),A=e.length===1?e[0]:{type:i.COMPOUND,body:e};return this.runHook("after-all",A)}gobbleExpressions(e){let A=[],t,n;for(;this.index0;){if(i.binary_ops.hasOwnProperty(e)&&(!i.isIdentifierStart(this.code)||this.index+e.lengtho.right_a&&C.right_a?t>C.prec:t<=C.prec;for(;n.length>2&&g(n[n.length-2]);)r=n.pop(),A=n.pop().value,a=n.pop(),e={type:i.BINARY_EXP,operator:A,left:a,right:r},n.push(e);e=this.gobbleToken(),e||this.throwError("Expected expression after "+l),n.push(o,e)}for(s=n.length-1,e=n[s];s>1;)e={type:i.BINARY_EXP,operator:n[s-1].value,left:n[s-2],right:e},s-=2;return e}gobbleToken(){let e,A,t,n;if(this.gobbleSpaces(),n=this.searchHook("gobble-token"),n)return this.runHook("after-token",n);if(e=this.code,i.isDecimalDigit(e)||e===i.PERIOD_CODE)return this.gobbleNumericLiteral();if(e===i.SQUOTE_CODE||e===i.DQUOTE_CODE)n=this.gobbleStringLiteral();else if(e===i.OBRACK_CODE)n=this.gobbleArray();else{for(A=this.expr.substr(this.index,i.max_unop_len),t=A.length;t>0;){if(i.unary_ops.hasOwnProperty(A)&&(!i.isIdentifierStart(this.code)||this.index+A.length=A.length&&this.throwError("Unexpected token "+String.fromCharCode(e));break}else if(o===i.COMMA_CODE){if(this.index++,n++,n!==A.length){if(e===i.CPAREN_CODE)this.throwError("Unexpected token ,");else if(e===i.CBRACK_CODE)for(let a=A.length;a":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});rl.max_unop_len=rl.getMaxKeyLen(rl.unary_ops);rl.max_binop_len=rl.getMaxKeyLen(rl.binary_ops);var s0=i=>new rl(i).parse(),fgA=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(rl).filter(i=>!fgA.includes(i)&&s0[i]===void 0).forEach(i=>{s0[i]=rl[i]});s0.Jsep=rl;var mgA="ConditionalExpression",wgA={name:"ternary",init(i){i.hooks.add("after-expression",function(A){if(A.node&&this.code===i.QUMARK_CODE){this.index++;let t=A.node,n=this.gobbleExpression();if(n||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===i.COLON_CODE){this.index++;let o=this.gobbleExpression();if(o||this.throwError("Expected expression"),A.node={type:mgA,test:t,consequent:n,alternate:o},t.operator&&i.binary_ops[t.operator]<=.9){let a=t;for(;a.right.operator&&i.binary_ops[a.right.operator]<=.9;)a=a.right;A.node.test=a.right,a.right=A.node,A.node=t}}else this.throwError("Expected :")}})}};s0.plugins.register(wgA);var QJ=47,ygA=92,DgA={name:"regex",init(i){i.hooks.add("gobble-token",function(A){if(this.code===QJ){let t=++this.index,n=!1;for(;this.index=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57)a+=this.char;else break}let r;try{r=new RegExp(o,a)}catch(s){this.throwError(s.message)}return A.node={type:i.LITERAL,value:r,raw:this.expr.slice(t-1,this.index)},A.node=this.gobbleTokenProperty(A.node),A.node}this.code===i.OBRACK_CODE?n=!0:n&&this.code===i.CBRACK_CODE&&(n=!1),this.index+=this.code===ygA?2:1}this.throwError("Unclosed Regex")}})}},FM=43,vgA=45,HB={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[FM,vgA],assignmentPrecedence:.9,init(i){let e=[i.IDENTIFIER,i.MEMBER_EXP];HB.assignmentOperators.forEach(t=>i.addBinaryOp(t,HB.assignmentPrecedence,!0)),i.hooks.add("gobble-token",function(n){let o=this.code;HB.updateOperators.some(a=>a===o&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,n.node={type:"UpdateExpression",operator:o===FM?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!n.node.argument||!e.includes(n.node.argument.type))&&this.throwError(`Unexpected ${n.node.operator}`))}),i.hooks.add("after-token",function(n){if(n.node){let o=this.code;HB.updateOperators.some(a=>a===o&&a===this.expr.charCodeAt(this.index+1))&&(e.includes(n.node.type)||this.throwError(`Unexpected ${n.node.operator}`),this.index+=2,n.node={type:"UpdateExpression",operator:o===FM?"++":"--",argument:n.node,prefix:!1})}}),i.hooks.add("after-expression",function(n){n.node&&A(n.node)});function A(t){HB.assignmentOperators.has(t.operator)?(t.type="AssignmentExpression",A(t.left),A(t.right)):t.operator||Object.values(t).forEach(n=>{n&&typeof n=="object"&&A(n)})}}};s0.plugins.register(DgA,HB);s0.addUnaryOp("typeof");s0.addUnaryOp("void");s0.addLiteral("null",null);s0.addLiteral("undefined",void 0);var bgA=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__"]),zo={evalAst(i,e){switch(i.type){case"BinaryExpression":case"LogicalExpression":return zo.evalBinaryExpression(i,e);case"Compound":return zo.evalCompound(i,e);case"ConditionalExpression":return zo.evalConditionalExpression(i,e);case"Identifier":return zo.evalIdentifier(i,e);case"Literal":return zo.evalLiteral(i,e);case"MemberExpression":return zo.evalMemberExpression(i,e);case"UnaryExpression":return zo.evalUnaryExpression(i,e);case"ArrayExpression":return zo.evalArrayExpression(i,e);case"CallExpression":return zo.evalCallExpression(i,e);case"AssignmentExpression":return zo.evalAssignmentExpression(i,e);default:throw SyntaxError("Unexpected expression",i)}},evalBinaryExpression(i,e){return{"||":(t,n)=>t||n(),"&&":(t,n)=>t&&n(),"|":(t,n)=>t|n(),"^":(t,n)=>t^n(),"&":(t,n)=>t&n(),"==":(t,n)=>t==n(),"!=":(t,n)=>t!=n(),"===":(t,n)=>t===n(),"!==":(t,n)=>t!==n(),"<":(t,n)=>t":(t,n)=>t>n(),"<=":(t,n)=>t<=n(),">=":(t,n)=>t>=n(),"<<":(t,n)=>t<>":(t,n)=>t>>n(),">>>":(t,n)=>t>>>n(),"+":(t,n)=>t+n(),"-":(t,n)=>t-n(),"*":(t,n)=>t*n(),"/":(t,n)=>t/n(),"%":(t,n)=>t%n()}[i.operator](zo.evalAst(i.left,e),()=>zo.evalAst(i.right,e))},evalCompound(i,e){let A;for(let t=0;t-zo.evalAst(t,e),"!":t=>!zo.evalAst(t,e),"~":t=>~zo.evalAst(t,e),"+":t=>+zo.evalAst(t,e),typeof:t=>typeof zo.evalAst(t,e),void:t=>{zo.evalAst(t,e)}}[i.operator](i.argument)},evalArrayExpression(i,e){return i.elements.map(A=>zo.evalAst(A,e))},evalCallExpression(i,e){let A=i.arguments.map(n=>zo.evalAst(n,e)),t=zo.evalAst(i.callee,e);if(t===Function)throw new Error("Function constructor is disabled");return t(...A)},evalAssignmentExpression(i,e){if(i.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let A=i.left.name,t=zo.evalAst(i.right,e);return e[A]=t,e[A]}},KM=class{constructor(e){this.code=e,this.ast=s0(this.code)}runInNewContext(e){let A=Object.assign(Object.create(null),e);return zo.evalAst(this.ast,A)}};function y2(i,e){return i=i.slice(),i.push(e),i}function UM(i,e){return e=e.slice(),e.unshift(i),e}var TM=class extends Error{constructor(e){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=e,this.name="NewError"}};function Qo(i,e,A,t,n){if(!(this instanceof Qo))try{return new Qo(i,e,A,t,n)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof i=="string"&&(n=t,t=A,A=e,e=i,i=null);let o=i&&typeof i=="object";if(i=i||{},this.json=i.json||A,this.path=i.path||e,this.resultType=i.resultType||"value",this.flatten=i.flatten||!1,this.wrap=Object.hasOwn(i,"wrap")?i.wrap:!0,this.sandbox=i.sandbox||{},this.eval=i.eval===void 0?"safe":i.eval,this.ignoreEvalErrors=typeof i.ignoreEvalErrors>"u"?!1:i.ignoreEvalErrors,this.parent=i.parent||null,this.parentProperty=i.parentProperty||null,this.callback=i.callback||t||null,this.otherTypeCallback=i.otherTypeCallback||n||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},i.autostart!==!1){let a={path:o?i.path:e};o?"json"in i&&(a.json=i.json):a.json=A;let r=this.evaluate(a);if(!r||typeof r!="object")throw new TM(r);return r}}Qo.prototype.evaluate=function(i,e,A,t){let n=this.parent,o=this.parentProperty,{flatten:a,wrap:r}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,A=A||this.callback,this.currOtherTypeCallback=t||this.otherTypeCallback,e=e||this.json,i=i||this.path,i&&typeof i=="object"&&!Array.isArray(i)){if(!i.path&&i.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(i,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:e}=i),a=Object.hasOwn(i,"flatten")?i.flatten:a,this.currResultType=Object.hasOwn(i,"resultType")?i.resultType:this.currResultType,this.currSandbox=Object.hasOwn(i,"sandbox")?i.sandbox:this.currSandbox,r=Object.hasOwn(i,"wrap")?i.wrap:r,this.currEval=Object.hasOwn(i,"eval")?i.eval:this.currEval,A=Object.hasOwn(i,"callback")?i.callback:A,this.currOtherTypeCallback=Object.hasOwn(i,"otherTypeCallback")?i.otherTypeCallback:this.currOtherTypeCallback,n=Object.hasOwn(i,"parent")?i.parent:n,o=Object.hasOwn(i,"parentProperty")?i.parentProperty:o,i=i.path}if(n=n||null,o=o||null,Array.isArray(i)&&(i=Qo.toPathString(i)),!i&&i!==""||!e)return;let s=Qo.toPathArray(i);s[0]==="$"&&s.length>1&&s.shift(),this._hasParentSelector=null;let l=this._trace(s,e,["$"],n,o,A).filter(function(g){return g&&!g.isParentSelector});return l.length?!r&&l.length===1&&!l[0].hasArrExpr?this._getPreferredOutput(l[0]):l.reduce((g,C)=>{let d=this._getPreferredOutput(C);return a&&Array.isArray(d)?g=g.concat(d):g.push(d),g},[]):r?[]:void 0};Qo.prototype._getPreferredOutput=function(i){let e=this.currResultType;switch(e){case"all":{let A=Array.isArray(i.path)?i.path:Qo.toPathArray(i.path);return i.pointer=Qo.toPointer(A),i.path=typeof i.path=="string"?i.path:Qo.toPathString(i.path),i}case"value":case"parent":case"parentProperty":return i[e];case"path":return Qo.toPathString(i[e]);case"pointer":return Qo.toPointer(i.path);default:throw new TypeError("Unknown result type")}};Qo.prototype._handleCallback=function(i,e,A){if(e){let t=this._getPreferredOutput(i);i.path=typeof i.path=="string"?i.path:Qo.toPathString(i.path),e(t,A,i)}};Qo.prototype._trace=function(i,e,A,t,n,o,a,r){let s;if(!i.length)return s={path:A,value:e,parent:t,parentProperty:n,hasArrExpr:a},this._handleCallback(s,o,"value"),s;let l=i[0],g=i.slice(1),C=[];function d(B){Array.isArray(B)?B.forEach(u=>{C.push(u)}):C.push(B)}if((typeof l!="string"||r)&&e&&Object.hasOwn(e,l))d(this._trace(g,e[l],y2(A,l),e,l,o,a));else if(l==="*")this._walk(e,B=>{d(this._trace(g,e[B],y2(A,B),e,B,o,!0,!0))});else if(l==="..")d(this._trace(g,e,A,t,n,o,a)),this._walk(e,B=>{typeof e[B]=="object"&&d(this._trace(i.slice(),e[B],y2(A,B),e,B,o,!0))});else{if(l==="^")return this._hasParentSelector=!0,{path:A.slice(0,-1),expr:g,isParentSelector:!0};if(l==="~")return s={path:y2(A,l),value:n,parent:t,parentProperty:null},this._handleCallback(s,o,"property"),s;if(l==="$")d(this._trace(g,e,A,null,null,o,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(l))d(this._slice(l,g,e,A,t,n,o));else if(l.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let B=l.replace(/^\?\((.*?)\)$/u,"$1"),u=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(B);u?this._walk(e,E=>{let f=[u[2]],m=u[1]?e[E][u[1]]:e[E];this._trace(f,m,A,t,n,o,!0).length>0&&d(this._trace(g,e[E],y2(A,E),e,E,o,!0))}):this._walk(e,E=>{this._eval(B,e[E],E,A,t,n)&&d(this._trace(g,e[E],y2(A,E),e,E,o,!0))})}else if(l[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");d(this._trace(UM(this._eval(l,e,A.at(-1),A.slice(0,-1),t,n),g),e,A,t,n,o,a))}else if(l[0]==="@"){let B=!1,u=l.slice(1,-2);switch(u){case"scalar":(!e||!["object","function"].includes(typeof e))&&(B=!0);break;case"boolean":case"string":case"undefined":case"function":typeof e===u&&(B=!0);break;case"integer":Number.isFinite(e)&&!(e%1)&&(B=!0);break;case"number":Number.isFinite(e)&&(B=!0);break;case"nonFinite":typeof e=="number"&&!Number.isFinite(e)&&(B=!0);break;case"object":e&&typeof e===u&&(B=!0);break;case"array":Array.isArray(e)&&(B=!0);break;case"other":B=this.currOtherTypeCallback(e,A,t,n);break;case"null":e===null&&(B=!0);break;default:throw new TypeError("Unknown value type "+u)}if(B)return s={path:A,value:e,parent:t,parentProperty:n},this._handleCallback(s,o,"value"),s}else if(l[0]==="`"&&e&&Object.hasOwn(e,l.slice(1))){let B=l.slice(1);d(this._trace(g,e[B],y2(A,B),e,B,o,a,!0))}else if(l.includes(",")){let B=l.split(",");for(let u of B)d(this._trace(UM(u,g),e,A,t,n,o,!0))}else!r&&e&&Object.hasOwn(e,l)&&d(this._trace(g,e[l],y2(A,l),e,l,o,a,!0))}if(this._hasParentSelector)for(let B=0;B{e(A)})};Qo.prototype._slice=function(i,e,A,t,n,o,a){if(!Array.isArray(A))return;let r=A.length,s=i.split(":"),l=s[2]&&Number.parseInt(s[2])||1,g=s[0]&&Number.parseInt(s[0])||0,C=s[1]&&Number.parseInt(s[1])||r;g=g<0?Math.max(0,g+r):Math.min(r,g),C=C<0?Math.max(0,C+r):Math.min(r,C);let d=[];for(let B=g;B{d.push(E)});return d};Qo.prototype._eval=function(i,e,A,t,n,o){this.currSandbox._$_parentProperty=o,this.currSandbox._$_parent=n,this.currSandbox._$_property=A,this.currSandbox._$_root=this.json,this.currSandbox._$_v=e;let a=i.includes("@path");a&&(this.currSandbox._$_path=Qo.toPathString(t.concat([A])));let r=this.currEval+"Script:"+i;if(!Qo.cache[r]){let s=i.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(s=s.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Qo.cache[r]=new this.safeVm.Script(s);else if(this.currEval==="native")Qo.cache[r]=new this.vm.Script(s);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let l=this.currEval;Qo.cache[r]=new l(s)}else if(typeof this.currEval=="function")Qo.cache[r]={runInNewContext:l=>this.currEval(s,l)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Qo.cache[r].runInNewContext(this.currSandbox)}catch(s){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+s.message+": "+i)}};Qo.cache={};Qo.toPathString=function(i){let e=i,A=e.length,t="$";for(let n=1;ntypeof e[l]=="function");let o=t.map(l=>e[l]);A=n.reduce((l,g)=>{let C=e[g].toString();return/function/u.test(C)||(C="function "+C),"var "+g+"="+C+";"+l},"")+A,!/(['"])use strict\1/u.test(A)&&!t.includes("arguments")&&(A="var arguments = undefined;"+A),A=A.replace(/;\s*$/u,"");let r=A.lastIndexOf(";"),s=r!==-1?A.slice(0,r+1)+" return "+A.slice(r+1):" return "+A;return new Function(...t,s)(...o)}};Qo.prototype.vm={Script:OM};var YM=[],mJ=[];(()=>{let i="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(e=>e?parseInt(e,36):1);for(let e=0,A=0;e>1;if(i=mJ[t])e=t+1;else return!0;if(e==A)return!1}}function uJ(i){return i>=127462&&i<=127487}var pJ=8205;function wJ(i,e,A=!0,t=!0){return(A?yJ:kgA)(i,e,t)}function yJ(i,e,A){if(e==i.length)return e;e&&DJ(i.charCodeAt(e))&&vJ(i.charCodeAt(e-1))&&e--;let t=JM(i,e);for(e+=fJ(t);e=0&&uJ(JM(i,a));)o++,a-=2;if(o%2==0)break;e+=2}else break}return e}function kgA(i,e,A){for(;e>0;){let t=yJ(i,e-2,A);if(t=56320&&i<57344}function vJ(i){return i>=55296&&i<56320}function fJ(i){return i<65536?1:2}var On=class i{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,A,t){[e,A]=qB(this,e,A);let n=[];return this.decompose(0,e,n,2),t.length&&t.decompose(0,t.length,n,3),this.decompose(A,this.length,n,1),PB.from(n,this.length-(A-e)+t.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,A=this.length){[e,A]=qB(this,e,A);let t=[];return this.decompose(e,A,t,0),PB.from(t,A-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let A=this.scanIdentical(e,1),t=this.length-this.scanIdentical(e,-1),n=new Qd(this),o=new Qd(e);for(let a=A,r=A;;){if(n.next(a),o.next(a),a=0,n.lineBreak!=o.lineBreak||n.done!=o.done||n.value!=o.value)return!1;if(r+=n.value.length,n.done||r>=t)return!0}}iter(e=1){return new Qd(this,e)}iterRange(e,A=this.length){return new _6(this,e,A)}iterLines(e,A){let t;if(e==null)t=this.iter();else{A==null&&(A=this.lines+1);let n=this.line(e).from;t=this.iterRange(n,Math.max(n,A==this.lines+1?this.length:A<=1?0:this.line(A-1).to))}return new x6(t)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?i.empty:e.length<=32?new xl(e):PB.from(xl.split(e,[]))}},xl=class i extends On{constructor(e,A=_gA(e)){super(),this.text=e,this.length=A}get lines(){return this.text.length}get children(){return null}lineInner(e,A,t,n){for(let o=0;;o++){let a=this.text[o],r=n+a.length;if((A?t:r)>=e)return new PM(n,r,t,a);n=r+1,t++}}decompose(e,A,t,n){let o=e<=0&&A>=this.length?this:new i(bJ(this.text,e,A),Math.min(A,this.length)-Math.max(0,e));if(n&1){let a=t.pop(),r=k6(o.text,a.text.slice(),0,o.length);if(r.length<=32)t.push(new i(r,a.length+o.length));else{let s=r.length>>1;t.push(new i(r.slice(0,s)),new i(r.slice(s)))}}else t.push(o)}replace(e,A,t){if(!(t instanceof i))return super.replace(e,A,t);[e,A]=qB(this,e,A);let n=k6(this.text,k6(t.text,bJ(this.text,0,e)),A),o=this.length+t.length-(A-e);return n.length<=32?new i(n,o):PB.from(i.split(n,[]),o)}sliceString(e,A=this.length,t=` -`){[e,A]=qB(this,e,A);let n="";for(let o=0,a=0;o<=A&&ae&&a&&(n+=t),eo&&(n+=r.slice(Math.max(0,e-o),A-o)),o=s+1}return n}flatten(e){for(let A of this.text)e.push(A)}scanIdentical(){return 0}static split(e,A){let t=[],n=-1;for(let o of e)t.push(o),n+=o.length+1,t.length==32&&(A.push(new i(t,n)),t=[],n=-1);return n>-1&&A.push(new i(t,n)),A}},PB=class i extends On{constructor(e,A){super(),this.children=e,this.length=A,this.lines=0;for(let t of e)this.lines+=t.lines}lineInner(e,A,t,n){for(let o=0;;o++){let a=this.children[o],r=n+a.length,s=t+a.lines-1;if((A?s:r)>=e)return a.lineInner(e,A,t,n);n=r+1,t=s+1}}decompose(e,A,t,n){for(let o=0,a=0;a<=A&&o=a){let l=n&((a<=e?1:0)|(s>=A?2:0));a>=e&&s<=A&&!l?t.push(r):r.decompose(e-a,A-a,t,l)}a=s+1}}replace(e,A,t){if([e,A]=qB(this,e,A),t.lines=o&&A<=r){let s=a.replace(e-o,A-o,t),l=this.lines-a.lines+s.lines;if(s.lines>4&&s.lines>l>>6){let g=this.children.slice();return g[n]=s,new i(g,this.length-(A-e)+t.length)}return super.replace(o,r,s)}o=r+1}return super.replace(e,A,t)}sliceString(e,A=this.length,t=` -`){[e,A]=qB(this,e,A);let n="";for(let o=0,a=0;oe&&o&&(n+=t),ea&&(n+=r.sliceString(e-a,A-a,t)),a=s+1}return n}flatten(e){for(let A of this.children)A.flatten(e)}scanIdentical(e,A){if(!(e instanceof i))return 0;let t=0,[n,o,a,r]=A>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;n+=A,o+=A){if(n==a||o==r)return t;let s=this.children[n],l=e.children[o];if(s!=l)return t+s.scanIdentical(l,A);t+=s.length+1}}static from(e,A=e.reduce((t,n)=>t+n.length+1,-1)){let t=0;for(let B of e)t+=B.lines;if(t<32){let B=[];for(let u of e)u.flatten(B);return new xl(B,A)}let n=Math.max(32,t>>5),o=n<<1,a=n>>1,r=[],s=0,l=-1,g=[];function C(B){let u;if(B.lines>o&&B instanceof i)for(let E of B.children)C(E);else B.lines>a&&(s>a||!s)?(d(),r.push(B)):B instanceof xl&&s&&(u=g[g.length-1])instanceof xl&&B.lines+u.lines<=32?(s+=B.lines,l+=B.length+1,g[g.length-1]=new xl(u.text.concat(B.text),u.length+1+B.length)):(s+B.lines>n&&d(),s+=B.lines,l+=B.length+1,g.push(B))}function d(){s!=0&&(r.push(g.length==1?g[0]:i.from(g,l)),l=-1,s=g.length=0)}for(let B of e)C(B);return d(),r.length==1?r[0]:new i(r,A)}};On.empty=new xl([""],0);function _gA(i){let e=-1;for(let A of i)e+=A.length+1;return e}function k6(i,e,A=0,t=1e9){for(let n=0,o=0,a=!0;o=A&&(s>t&&(r=r.slice(0,t-n)),n0?1:(e instanceof xl?e.text.length:e.children.length)<<1]}nextInner(e,A){for(this.done=this.lineBreak=!1;;){let t=this.nodes.length-1,n=this.nodes[t],o=this.offsets[t],a=o>>1,r=n instanceof xl?n.text.length:n.children.length;if(a==(A>0?r:0)){if(t==0)return this.done=!0,this.value="",this;A>0&&this.offsets[t-1]++,this.nodes.pop(),this.offsets.pop()}else if((o&1)==(A>0?0:1)){if(this.offsets[t]+=A,e==0)return this.lineBreak=!0,this.value=` -`,this;e--}else if(n instanceof xl){let s=n.text[a+(A<0?-1:0)];if(this.offsets[t]+=A,s.length>Math.max(0,e))return this.value=e==0?s:A>0?s.slice(e):s.slice(0,s.length-e),this;e-=s.length}else{let s=n.children[a+(A<0?-1:0)];e>s.length?(e-=s.length,this.offsets[t]+=A):(A<0&&this.offsets[t]--,this.nodes.push(s),this.offsets.push(A>0?1:(s instanceof xl?s.text.length:s.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},_6=class{constructor(e,A,t){this.value="",this.done=!1,this.cursor=new Qd(e,A>t?-1:1),this.pos=A>t?e.length:0,this.from=Math.min(A,t),this.to=Math.max(A,t)}nextInner(e,A){if(A<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,A<0?this.pos-this.to:this.from-this.pos);let t=A<0?this.pos-this.from:this.to-this.pos;e>t&&(e=t),t-=e;let{value:n}=this.cursor.next(e);return this.pos+=(n.length+e)*A,this.value=n.length<=t?n:A<0?n.slice(n.length-t):n.slice(0,t),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}},x6=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:A,lineBreak:t,value:n}=this.inner.next(e);return A&&this.afterBreak?(this.value="",this.afterBreak=!1):A?(this.done=!0,this.value=""):t?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=n,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<"u"&&(On.prototype[Symbol.iterator]=function(){return this.iter()},Qd.prototype[Symbol.iterator]=_6.prototype[Symbol.iterator]=x6.prototype[Symbol.iterator]=function(){return this});var PM=class{constructor(e,A,t,n){this.from=e,this.to=A,this.number=t,this.text=n}get length(){return this.to-this.from}};function qB(i,e,A){return e=Math.max(0,Math.min(i.length,e)),[e,Math.max(e,Math.min(i.length,A))]}function tr(i,e,A=!0,t=!0){return wJ(i,e,A,t)}function xgA(i){return i>=56320&&i<57344}function RgA(i){return i>=55296&&i<56320}function $r(i,e){let A=i.charCodeAt(e);if(!RgA(A)||e+1==i.length)return A;let t=i.charCodeAt(e+1);return xgA(t)?(A-55296<<10)+(t-56320)+65536:A}function qu(i){return i<=65535?String.fromCharCode(i):(i-=65536,String.fromCharCode((i>>10)+55296,(i&1023)+56320))}function Rl(i){return i<65536?1:2}var jM=/\r\n?|\n/,Wr=(function(i){return i[i.Simple=0]="Simple",i[i.TrackDel=1]="TrackDel",i[i.TrackBefore=2]="TrackBefore",i[i.TrackAfter=3]="TrackAfter",i})(Wr||(Wr={})),v2=class i{constructor(e){this.sections=e}get length(){let e=0;for(let A=0;Ae)return o+(e-n);o+=r}else{if(t!=Wr.Simple&&l>=e&&(t==Wr.TrackDel&&ne||t==Wr.TrackBefore&&ne))return null;if(l>e||l==e&&A<0&&!r)return e==n||A<0?o:o+s;o+=s}n=l}if(e>n)throw new RangeError(`Position ${e} is out of range for changeset of length ${n}`);return o}touchesRange(e,A=e){for(let t=0,n=0;t=0&&n<=A&&r>=e)return nA?"cover":!0;n=r}return!1}toString(){let e="";for(let A=0;A=0?":"+n:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(A=>typeof A!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new i(e)}static create(e){return new i(e)}},Zr=class i extends v2{constructor(e,A){super(e),this.inserted=A}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return VM(this,(A,t,n,o,a)=>e=e.replace(n,n+(t-A),a),!1),e}mapDesc(e,A=!1){return qM(this,e,A,!0)}invert(e){let A=this.sections.slice(),t=[];for(let n=0,o=0;n=0){A[n]=r,A[n+1]=a;let s=n>>1;for(;t.length0&&D2(t,A,o.text),o.forward(g),r+=g}let l=e[a++];for(;r>1].toJSON()))}return e}static of(e,A,t){let n=[],o=[],a=0,r=null;function s(g=!1){if(!g&&!n.length)return;ad||C<0||d>A)throw new RangeError(`Invalid change range ${C} to ${d} (in doc of length ${A})`);let u=B?typeof B=="string"?On.of(B.split(t||jM)):B:On.empty,E=u.length;if(C==d&&E==0)return;Ca&&ws(n,C-a,-1),ws(n,d-C,E),D2(o,n,u),a=d}}return l(e),s(!r),r}static empty(e){return new i(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let A=[],t=[];for(let n=0;nr&&typeof a!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(o.length==1)A.push(o[0],0);else{for(;t.length=0&&A<=0&&A==i[n+1]?i[n]+=e:n>=0&&e==0&&i[n]==0?i[n+1]+=A:t?(i[n]+=e,i[n+1]+=A):i.push(e,A)}function D2(i,e,A){if(A.length==0)return;let t=e.length-2>>1;if(t>1])),!(A||a==i.sections.length||i.sections[a+1]<0);)r=i.sections[a++],s=i.sections[a++];e(n,l,o,g,C),n=l,o=g}}}function qM(i,e,A,t=!1){let n=[],o=t?[]:null,a=new ud(i),r=new ud(e);for(let s=-1;;){if(a.done&&r.len||r.done&&a.len)throw new Error("Mismatched change set lengths");if(a.ins==-1&&r.ins==-1){let l=Math.min(a.len,r.len);ws(n,l,-1),a.forward(l),r.forward(l)}else if(r.ins>=0&&(a.ins<0||s==a.i||a.off==0&&(r.len=0&&s=0){let l=0,g=a.len;for(;g;)if(r.ins==-1){let C=Math.min(g,r.len);l+=C,g-=C,r.forward(C)}else if(r.ins==0&&r.lens||a.ins>=0&&a.len>s)&&(r||t.length>l),o.forward2(s),a.forward(s)}}}}var ud=class{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return A>=e.length?On.empty:e[A]}textBit(e){let{inserted:A}=this.set,t=this.i-2>>1;return t>=A.length&&!e?On.empty:A[t].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}},zB=class i{constructor(e,A,t){this.from=e,this.to=A,this.flags=t}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,A=-1){let t,n;return this.empty?t=n=e.mapPos(this.from,A):(t=e.mapPos(this.from,1),n=e.mapPos(this.to,-1)),t==this.from&&n==this.to?this:new i(t,n,this.flags)}extend(e,A=e,t=0){if(e<=this.anchor&&A>=this.anchor)return Be.range(e,A,void 0,void 0,t);let n=Math.abs(e-this.anchor)>Math.abs(A-this.anchor)?e:A;return Be.range(this.anchor,n,void 0,void 0,t)}eq(e,A=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!A||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return Be.range(e.anchor,e.head)}static create(e,A,t){return new i(e,A,t)}},Be=class i{constructor(e,A){this.ranges=e,this.mainIndex=A}map(e,A=-1){return e.empty?this:i.create(this.ranges.map(t=>t.map(e,A)),this.mainIndex)}eq(e,A=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let t=0;te.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new i(e.ranges.map(A=>zB.fromJSON(A)),e.main)}static single(e,A=e){return new i([i.range(e,A)],0)}static create(e,A=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let t=0,n=0;nn.from-o.from),A=e.indexOf(t);for(let n=1;no.head?i.range(s,r):i.range(r,s))}}return new i(e,A)}};function FJ(i,e){for(let A of i.ranges)if(A.to>e)throw new RangeError("Selection points outside of document")}var n9=0,nt=class i{constructor(e,A,t,n,o){this.combine=e,this.compareInput=A,this.compare=t,this.isStatic=n,this.id=n9++,this.default=e([]),this.extensions=typeof o=="function"?o(this):o}get reader(){return this}static define(e={}){return new i(e.combine||(A=>A),e.compareInput||((A,t)=>A===t),e.compare||(e.combine?(A,t)=>A===t:o9),!!e.static,e.enables)}of(e){return new jB([],this,0,e)}compute(e,A){if(this.isStatic)throw new Error("Can't compute a static facet");return new jB(e,this,1,A)}computeN(e,A){if(this.isStatic)throw new Error("Can't compute a static facet");return new jB(e,this,2,A)}from(e,A){return A||(A=t=>t),this.compute([e],t=>A(t.field(e)))}};function o9(i,e){return i==e||i.length==e.length&&i.every((A,t)=>A===e[t])}var jB=class{constructor(e,A,t,n){this.dependencies=e,this.facet=A,this.type=t,this.value=n,this.id=n9++}dynamicSlot(e){var A;let t=this.value,n=this.facet.compareInput,o=this.id,a=e[o]>>1,r=this.type==2,s=!1,l=!1,g=[];for(let C of this.dependencies)C=="doc"?s=!0:C=="selection"?l=!0:(((A=e[C.id])!==null&&A!==void 0?A:1)&1)==0&&g.push(e[C.id]);return{create(C){return C.values[a]=t(C),1},update(C,d){if(s&&d.docChanged||l&&(d.docChanged||d.selection)||WM(C,g)){let B=t(C);if(r?!MJ(B,C.values[a],n):!n(B,C.values[a]))return C.values[a]=B,1}return 0},reconfigure:(C,d)=>{let B,u=d.config.address[o];if(u!=null){let E=F6(d,u);if(this.dependencies.every(f=>f instanceof nt?d.facet(f)===C.facet(f):f instanceof La?d.field(f,!1)==C.field(f,!1):!0)||(r?MJ(B=t(C),E,n):n(B=t(C),E)))return C.values[a]=E,0}else B=t(C);return C.values[a]=B,1}}}};function MJ(i,e,A){if(i.length!=e.length)return!1;for(let t=0;ti[s.id]),n=A.map(s=>s.type),o=t.filter(s=>!(s&1)),a=i[e.id]>>1;function r(s){let l=[];for(let g=0;gt===n),e);return e.provide&&(A.provides=e.provide(A)),A}create(e){let A=e.facet(b6).find(t=>t.field==this);return(A?.create||this.createF)(e)}slot(e){let A=e[this.id]>>1;return{create:t=>(t.values[A]=this.create(t),1),update:(t,n)=>{let o=t.values[A],a=this.updateF(o,n);return this.compareF(o,a)?0:(t.values[A]=a,1)},reconfigure:(t,n)=>{let o=t.facet(b6),a=n.facet(b6),r;return(r=o.find(s=>s.field==this))&&r!=a.find(s=>s.field==this)?(t.values[A]=r.create(t),1):n.config.address[this.id]!=null?(t.values[A]=n.field(this),0):(t.values[A]=this.create(t),1)}}}init(e){return[this,b6.of({field:this,create:e})]}get extension(){return this}},hd={lowest:4,low:3,default:2,high:1,highest:0};function Hu(i){return e=>new R6(e,i)}var oc={highest:Hu(hd.highest),high:Hu(hd.high),default:Hu(hd.default),low:Hu(hd.low),lowest:Hu(hd.lowest)},R6=class{constructor(e,A){this.inner=e,this.prec=A}},g0=class i{of(e){return new Pu(this,e)}reconfigure(e){return i.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}},Pu=class{constructor(e,A){this.compartment=e,this.inner=A}},N6=class i{constructor(e,A,t,n,o,a){for(this.base=e,this.compartments=A,this.dynamicSlots=t,this.address=n,this.staticValues=o,this.facets=a,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,A,t){let n=[],o=Object.create(null),a=new Map;for(let d of FgA(e,A,a))d instanceof La?n.push(d):(o[d.facet.id]||(o[d.facet.id]=[])).push(d);let r=Object.create(null),s=[],l=[];for(let d of n)r[d.id]=l.length<<1,l.push(B=>d.slot(B));let g=t?.config.facets;for(let d in o){let B=o[d],u=B[0].facet,E=g&&g[d]||[];if(B.every(f=>f.type==0))if(r[u.id]=s.length<<1|1,o9(E,B))s.push(t.facet(u));else{let f=u.combine(B.map(m=>m.value));s.push(t&&u.compare(f,t.facet(u))?t.facet(u):f)}else{for(let f of B)f.type==0?(r[f.id]=s.length<<1|1,s.push(f.value)):(r[f.id]=l.length<<1,l.push(m=>f.dynamicSlot(m)));r[u.id]=l.length<<1,l.push(f=>NgA(f,u,B))}}let C=l.map(d=>d(r));return new i(e,a,C,r,s,o)}};function FgA(i,e,A){let t=[[],[],[],[],[]],n=new Map;function o(a,r){let s=n.get(a);if(s!=null){if(s<=r)return;let l=t[s].indexOf(a);l>-1&&t[s].splice(l,1),a instanceof Pu&&A.delete(a.compartment)}if(n.set(a,r),Array.isArray(a))for(let l of a)o(l,r);else if(a instanceof Pu){if(A.has(a.compartment))throw new RangeError("Duplicate use of compartment in extensions");let l=e.get(a.compartment)||a.inner;A.set(a.compartment,l),o(l,r)}else if(a instanceof R6)o(a.inner,a.prec);else if(a instanceof La)t[r].push(a),a.provides&&o(a.provides,r);else if(a instanceof jB)t[r].push(a),a.facet.extensions&&o(a.facet.extensions,hd.default);else{let l=a.extension;if(!l)throw new Error(`Unrecognized extension value in extension set (${a}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);o(l,r)}}return o(i,hd.default),t.reduce((a,r)=>a.concat(r))}function zu(i,e){if(e&1)return 2;let A=e>>1,t=i.status[A];if(t==4)throw new Error("Cyclic dependency between fields and/or facets");if(t&2)return t;i.status[A]=4;let n=i.computeSlot(i,i.config.dynamicSlots[A]);return i.status[A]=2|n}function F6(i,e){return e&1?i.config.staticValues[e>>1]:i.values[e>>1]}var SJ=nt.define(),HM=nt.define({combine:i=>i.some(e=>e),static:!0}),LJ=nt.define({combine:i=>i.length?i[0]:void 0,static:!0}),GJ=nt.define(),KJ=nt.define(),UJ=nt.define(),kJ=nt.define({combine:i=>i.length?i[0]:!1}),sl=class{constructor(e,A){this.type=e,this.value=A}static define(){return new ZM}},ZM=class{of(e){return new sl(this,e)}},XM=class{constructor(e){this.map=e}of(e){return new ln(this,e)}},ln=(()=>{class i{constructor(A,t){this.type=A,this.value=t}map(A){let t=this.type.map(this.value,A);return t===void 0?void 0:t==this.value?this:new i(this.type,t)}is(A){return this.type==A}static define(A={}){return new XM(A.map||(t=>t))}static mapEffects(A,t){if(!A.length)return A;let n=[];for(let o of A){let a=o.map(t);a&&n.push(a)}return n}}return i.reconfigure=i.define(),i.appendConfig=i.define(),i})(),l0=(()=>{class i{constructor(A,t,n,o,a,r){this.startState=A,this.changes=t,this.selection=n,this.effects=o,this.annotations=a,this.scrollIntoView=r,this._doc=null,this._state=null,n&&FJ(n,t.newLength),a.some(s=>s.type==i.time)||(this.annotations=a.concat(i.time.of(Date.now())))}static create(A,t,n,o,a,r){return new i(A,t,n,o,a,r)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(A){for(let t of this.annotations)if(t.type==A)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(A){let t=this.annotation(i.userEvent);return!!(t&&(t==A||t.length>A.length&&t.slice(0,A.length)==A&&t[A.length]=="."))}}return i.time=sl.define(),i.userEvent=sl.define(),i.addToHistory=sl.define(),i.remote=sl.define(),i})();function LgA(i,e){let A=[];for(let t=0,n=0;;){let o,a;if(t=i[t]))o=i[t++],a=i[t++];else if(n=0;n--){let o=t[n](i);o instanceof l0?i=o:Array.isArray(o)&&o.length==1&&o[0]instanceof l0?i=o[0]:i=OJ(e,VB(o),!1)}return i}function KgA(i){let e=i.startState,A=e.facet(UJ),t=i;for(let n=A.length-1;n>=0;n--){let o=A[n](i);o&&Object.keys(o).length&&(t=TJ(t,$M(e,o,i.changes.newLength),!0))}return t==i?i:l0.create(e,i.changes,i.selection,t.effects,t.annotations,t.scrollIntoView)}var UgA=[];function VB(i){return i==null?UgA:Array.isArray(i)?i:[i]}var $o=(function(i){return i[i.Word=0]="Word",i[i.Space=1]="Space",i[i.Other=2]="Other",i})($o||($o={})),TgA=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,A9;try{A9=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(i){}function OgA(i){if(A9)return A9.test(i);for(let e=0;e"\x80"&&(A.toUpperCase()!=A.toLowerCase()||TgA.test(A)))return!0}return!1}function JgA(i){return e=>{if(!/\S/.test(e))return $o.Space;if(OgA(e))return $o.Word;for(let A=0;A-1)return $o.Word;return $o.Other}}var ir=(()=>{class i{constructor(A,t,n,o,a,r){this.config=A,this.doc=t,this.selection=n,this.values=o,this.status=A.statusTemplate.slice(),this.computeSlot=a,r&&(r._state=this);for(let s=0;so.set(g,l)),t=null),o.set(s.value.compartment,s.value.extension)):s.is(ln.reconfigure)?(t=null,n=s.value):s.is(ln.appendConfig)&&(t=null,n=VB(n).concat(s.value));let a;t?a=A.startState.values.slice():(t=N6.resolve(n,o,this),a=new i(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(l,g)=>g.reconfigure(l,this),null).values);let r=A.startState.facet(HM)?A.newSelection:A.newSelection.asSingle();new i(t,A.newDoc,r,a,(s,l)=>l.update(s,A),A)}replaceSelection(A){return typeof A=="string"&&(A=this.toText(A)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:A},range:Be.cursor(t.from+A.length)}))}changeByRange(A){let t=this.selection,n=A(t.ranges[0]),o=this.changes(n.changes),a=[n.range],r=VB(n.effects);for(let s=1;sr.spec.fromJSON(s,l)))}}return i.create({doc:A.doc,selection:Be.fromJSON(A.selection),extensions:t.extensions?o.concat([t.extensions]):o})}static create(A={}){let t=N6.resolve(A.extensions||[],new Map),n=A.doc instanceof On?A.doc:On.of((A.doc||"").split(t.staticFacet(i.lineSeparator)||jM)),o=A.selection?A.selection instanceof Be?A.selection:Be.single(A.selection.anchor,A.selection.head):Be.single(0);return FJ(o,n.length),t.staticFacet(HM)||(o=o.asSingle()),new i(t,n,o,t.dynamicSlots.map(()=>null),(a,r)=>r.create(a),null)}get tabSize(){return this.facet(i.tabSize)}get lineBreak(){return this.facet(i.lineSeparator)||` -`}get readOnly(){return this.facet(kJ)}phrase(A,...t){for(let n of this.facet(i.phrases))if(Object.prototype.hasOwnProperty.call(n,A)){A=n[A];break}return t.length&&(A=A.replace(/\$(\$|\d*)/g,(n,o)=>{if(o=="$")return"$";let a=+(o||1);return!a||a>t.length?n:t[a-1]})),A}languageDataAt(A,t,n=-1){let o=[];for(let a of this.facet(SJ))for(let r of a(this,t,n))Object.prototype.hasOwnProperty.call(r,A)&&o.push(r[A]);return o}charCategorizer(A){let t=this.languageDataAt("wordChars",A);return JgA(t.length?t[0]:"")}wordAt(A){let{text:t,from:n,length:o}=this.doc.lineAt(A),a=this.charCategorizer(A),r=A-n,s=A-n;for(;r>0;){let l=tr(t,r,!1);if(a(t.slice(l,r))!=$o.Word)break;r=l}for(;se.length?e[0]:4}),i.lineSeparator=LJ,i.readOnly=kJ,i.phrases=nt.define({compare(e,A){let t=Object.keys(e),n=Object.keys(A);return t.length==n.length&&t.every(o=>e[o]==A[o])}}),i.languageData=SJ,i.changeFilter=GJ,i.transactionFilter=KJ,i.transactionExtender=UJ,i})();g0.reconfigure=ln.define();function Lr(i,e,A={}){let t={};for(let n of i)for(let o of Object.keys(n)){let a=n[o],r=t[o];if(r===void 0)t[o]=a;else if(!(r===a||a===void 0))if(Object.hasOwnProperty.call(A,o))t[o]=A[o](r,a);else throw new Error("Config merge conflict for field "+o)}for(let n in e)t[n]===void 0&&(t[n]=e[n]);return t}var cg=class{eq(e){return this==e}range(e,A=e){return ju.create(e,A,this)}};cg.prototype.startSide=cg.prototype.endSide=0;cg.prototype.point=!1;cg.prototype.mapMode=Wr.TrackDel;function a9(i,e){return i==e||i.constructor==e.constructor&&i.eq(e)}var ju=class i{constructor(e,A,t){this.from=e,this.to=A,this.value=t}static create(e,A,t){return new i(e,A,t)}};function e9(i,e){return i.from-e.from||i.value.startSide-e.value.startSide}var t9=class i{constructor(e,A,t,n){this.from=e,this.to=A,this.value=t,this.maxPoint=n}get length(){return this.to[this.to.length-1]}findIndex(e,A,t,n=0){let o=t?this.to:this.from;for(let a=n,r=o.length;;){if(a==r)return a;let s=a+r>>1,l=o[s]-e||(t?this.value[s].endSide:this.value[s].startSide)-A;if(s==a)return l>=0?a:r;l>=0?r=s:a=s+1}}between(e,A,t,n){for(let o=this.findIndex(A,-1e9,!0),a=this.findIndex(t,1e9,!1,o);oB||d==B&&l.startSide>0&&l.endSide<=0)continue;(B-d||l.endSide-l.startSide)<0||(a<0&&(a=d),l.point&&(r=Math.max(r,B-d)),t.push(l),n.push(d-a),o.push(B-a))}return{mapped:t.length?new i(n,o,t,r):null,pos:a}}},uo=(()=>{class i{constructor(A,t,n,o){this.chunkPos=A,this.chunk=t,this.nextLayer=n,this.maxPoint=o}static create(A,t,n,o){return new i(A,t,n,o)}get length(){let A=this.chunk.length-1;return A<0?0:Math.max(this.chunkEnd(A),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let A=this.nextLayer.size;for(let t of this.chunk)A+=t.value.length;return A}chunkEnd(A){return this.chunkPos[A]+this.chunk[A].length}update(A){let{add:t=[],sort:n=!1,filterFrom:o=0,filterTo:a=this.length}=A,r=A.filter;if(t.length==0&&!r)return this;if(n&&(t=t.slice().sort(e9)),this.isEmpty)return t.length?i.of(t):this;let s=new L6(this,null,-1).goto(0),l=0,g=[],C=new Xr;for(;s.value||l=0){let d=t[l++];C.addInner(d.from,d.to,d.value)||g.push(d)}else s.rangeIndex==1&&s.chunkIndexthis.chunkEnd(s.chunkIndex)||as.to||a=a&&A<=a+r.length&&r.between(a,A-a,t-a,n)===!1)return}this.nextLayer.between(A,t,n)}}iter(A=0){return Vu.from([this]).goto(A)}get isEmpty(){return this.nextLayer==this}static iter(A,t=0){return Vu.from(A).goto(t)}static compare(A,t,n,o,a=-1){let r=A.filter(d=>d.maxPoint>0||!d.isEmpty&&d.maxPoint>=a),s=t.filter(d=>d.maxPoint>0||!d.isEmpty&&d.maxPoint>=a),l=_J(r,s,n),g=new Ed(r,l,a),C=new Ed(s,l,a);n.iterGaps((d,B,u)=>xJ(g,d,C,B,u,o)),n.empty&&n.length==0&&xJ(g,0,C,0,0,o)}static eq(A,t,n=0,o){o==null&&(o=999999999);let a=A.filter(C=>!C.isEmpty&&t.indexOf(C)<0),r=t.filter(C=>!C.isEmpty&&A.indexOf(C)<0);if(a.length!=r.length)return!1;if(!a.length)return!0;let s=_J(a,r),l=new Ed(a,s,0).goto(n),g=new Ed(r,s,0).goto(n);for(;;){if(l.to!=g.to||!i9(l.active,g.active)||l.point&&(!g.point||!a9(l.point,g.point)))return!1;if(l.to>o)return!0;l.next(),g.next()}}static spans(A,t,n,o,a=-1){let r=new Ed(A,null,a).goto(t),s=t,l=r.openStart;for(;;){let g=Math.min(r.to,n);if(r.point){let C=r.activeForPoint(r.to),d=r.pointFroms&&(o.span(s,g,r.active,l),l=r.openEnd(g));if(r.to>n)return l+(r.point&&r.to>n?1:0);s=r.to,r.next()}}static of(A,t=!1){let n=new Xr;for(let o of A instanceof ju?[A]:t?YgA(A):A)n.add(o.from,o.to,o.value);return n.finish()}static join(A){if(!A.length)return i.empty;let t=A[A.length-1];for(let n=A.length-2;n>=0;n--)for(let o=A[n];o!=i.empty;o=o.nextLayer)t=new i(o.chunkPos,o.chunk,t,Math.max(o.maxPoint,t.maxPoint));return t}}return i.empty=new i([],[],null,-1),i})();function YgA(i){if(i.length>1)for(let e=i[0],A=1;A0)return i.slice().sort(e9);e=t}return i}uo.empty.nextLayer=uo.empty;var Xr=class i{finishChunk(e){this.chunks.push(new t9(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(e,A,t){this.addInner(e,A,t)||(this.nextLayer||(this.nextLayer=new i)).add(e,A,t)}addInner(e,A,t){let n=e-this.lastTo||t.startSide-this.last.endSide;if(n<=0&&(e-this.lastFrom||t.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return n<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(A-this.chunkStart),this.last=t,this.lastFrom=e,this.lastTo=A,this.value.push(t),t.point&&(this.maxPoint=Math.max(this.maxPoint,A-e)),!0)}addChunk(e,A){if((e-this.lastTo||A.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,A.maxPoint),this.chunks.push(A),this.chunkPos.push(e);let t=A.value.length-1;return this.last=A.value[t],this.lastFrom=A.from[t]+e,this.lastTo=A.to[t]+e,!0}finish(){return this.finishInner(uo.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let A=uo.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,A}};function _J(i,e,A){let t=new Map;for(let o of i)for(let a=0;a=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=t&&n.push(new L6(a,A,t,o));return n.length==1?n[0]:new i(n)}get startSide(){return this.value?this.value.startSide:0}goto(e,A=-1e9){for(let t of this.heap)t.goto(e,A);for(let t=this.heap.length>>1;t>=0;t--)zM(this.heap,t);return this.next(),this}forward(e,A){for(let t of this.heap)t.forward(e,A);for(let t=this.heap.length>>1;t>=0;t--)zM(this.heap,t);(this.to-e||this.value.endSide-A)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),zM(this.heap,0)}}};function zM(i,e){for(let A=i[e];;){let t=(e<<1)+1;if(t>=i.length)break;let n=i[t];if(t+1=0&&(n=i[t+1],t++),A.compare(n)<0)break;i[t]=A,i[e]=n,e=t}}var Ed=class{constructor(e,A,t){this.minPoint=t,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=Vu.from(e,A,t)}goto(e,A=-1e9){return this.cursor.goto(e,A),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=A,this.openStart=-1,this.next(),this}forward(e,A){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-A)<0;)this.removeActive(this.minActive);this.cursor.forward(e,A)}removeActive(e){M6(this.active,e),M6(this.activeTo,e),M6(this.activeRank,e),this.minActive=RJ(this.active,this.activeTo)}addActive(e){let A=0,{value:t,to:n,rank:o}=this.cursor;for(;A0;)A++;S6(this.active,A,t),S6(this.activeTo,A,n),S6(this.activeRank,A,o),e&&S6(e,A,this.cursor.from),this.minActive=RJ(this.active,this.activeTo)}next(){let e=this.to,A=this.point;this.point=null;let t=this.openStart<0?[]:null;for(;;){let n=this.minActive;if(n>-1&&(this.activeTo[n]-this.cursor.from||this.active[n].endSide-this.cursor.startSide)<0){if(this.activeTo[n]>e){this.to=this.activeTo[n],this.endSide=this.active[n].endSide;break}this.removeActive(n),t&&M6(t,n)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let o=this.cursor.value;if(!o.point)this.addActive(t),this.cursor.next();else if(A&&this.cursor.to==this.to&&this.cursor.from=0&&t[n]=0&&!(this.activeRank[t]e||this.activeTo[t]==e&&this.active[t].endSide>=this.point.endSide)&&A.push(this.active[t]);return A.reverse()}openEnd(e){let A=0;for(let t=this.activeTo.length-1;t>=0&&this.activeTo[t]>e;t--)A++;return A}};function xJ(i,e,A,t,n,o){i.goto(e),A.goto(t);let a=t+n,r=t,s=t-e,l=!!o.boundChange;for(let g=!1;;){let C=i.to+s-A.to,d=C||i.endSide-A.endSide,B=d<0?i.to+s:A.to,u=Math.min(B,a);if(i.point||A.point?(i.point&&A.point&&a9(i.point,A.point)&&i9(i.activeForPoint(i.to),A.activeForPoint(A.to))||o.comparePoint(r,u,i.point,A.point),g=!1):(g&&o.boundChange(r),u>r&&!i9(i.active,A.active)&&o.compareRange(r,u,i.active,A.active),l&&ua)break;r=B,d<=0&&i.next(),d>=0&&A.next()}}function i9(i,e){if(i.length!=e.length)return!1;for(let A=0;A=e;t--)i[t+1]=i[t];i[e]=A}function RJ(i,e){let A=-1,t=1e9;for(let n=0;n=e)return n;if(n==i.length)break;o+=i.charCodeAt(n)==9?A-o%A:1,n=tr(i,n)}return t===!0?-1:i.length}var JJ=typeof Symbol>"u"?"__\u037C":Symbol.for("\u037C"),r9=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),YJ=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},Cg=class{constructor(e,A){this.rules=[];let{finish:t}=A||{};function n(a){return/^@/.test(a)?[a]:a.split(/,\s*/)}function o(a,r,s,l){let g=[],C=/^@(\w+)\b/.exec(a[0]),d=C&&C[1]=="keyframes";if(C&&r==null)return s.push(a[0]+";");for(let B in r){let u=r[B];if(/&/.test(B))o(B.split(/,\s*/).map(E=>a.map(f=>E.replace(/&/,f))).reduce((E,f)=>E.concat(f)),u,s);else if(u&&typeof u=="object"){if(!C)throw new RangeError("The value of a property ("+B+") should be a primitive value.");o(n(B),u,g,d)}else u!=null&&g.push(B.replace(/_.*/,"").replace(/[A-Z]/g,E=>"-"+E.toLowerCase())+": "+u+";")}(g.length||d)&&s.push((t&&!C&&!l?a.map(t):a).join(", ")+" {"+g.join(" ")+"}")}for(let a in e)o(n(a),e[a],this.rules)}getRules(){return this.rules.join(` -`)}static newName(){let e=YJ[JJ]||1;return YJ[JJ]=e+1,"\u037C"+e.toString(36)}static mount(e,A,t){let n=e[r9],o=t&&t.nonce;n?o&&n.setNonce(o):n=new s9(e,o),n.mount(Array.isArray(A)?A:[A],e)}},HJ=new Map,s9=class{constructor(e,A){let t=e.ownerDocument||e,n=t.defaultView;if(!e.head&&e.adoptedStyleSheets&&n.CSSStyleSheet){let o=HJ.get(t);if(o)return e[r9]=o;this.sheet=new n.CSSStyleSheet,HJ.set(t,this)}else this.styleTag=t.createElement("style"),A&&this.styleTag.setAttribute("nonce",A);this.modules=[],e[r9]=this}mount(e,A){let t=this.sheet,n=0,o=0;for(let a=0;a-1&&(this.modules.splice(s,1),o--,s=-1),s==-1){if(this.modules.splice(o++,0,r),t)for(let l=0;l",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},HgA=typeof navigator<"u"&&/Mac/.test(navigator.platform),zgA=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(lr=0;lr<10;lr++)sC[48+lr]=sC[96+lr]=String(lr);var lr;for(lr=1;lr<=24;lr++)sC[lr+111]="F"+lr;var lr;for(lr=65;lr<=90;lr++)sC[lr]=String.fromCharCode(lr+32),WB[lr]=String.fromCharCode(lr);var lr;for(K6 in sC)WB.hasOwnProperty(K6)||(WB[K6]=sC[K6]);var K6;function zJ(i){var e=HgA&&i.metaKey&&i.shiftKey&&!i.ctrlKey&&!i.altKey||zgA&&i.shiftKey&&i.key&&i.key.length==1||i.key=="Unidentified",A=!e&&i.key||(i.shiftKey?WB:sC)[i.keyCode]||i.key||"Unidentified";return A=="Esc"&&(A="Escape"),A=="Del"&&(A="Delete"),A=="Left"&&(A="ArrowLeft"),A=="Up"&&(A="ArrowUp"),A=="Right"&&(A="ArrowRight"),A=="Down"&&(A="ArrowDown"),A}function po(){var i=arguments[0];typeof i=="string"&&(i=document.createElement(i));var e=1,A=arguments[1];if(A&&typeof A=="object"&&A.nodeType==null&&!Array.isArray(A)){for(var t in A)if(Object.prototype.hasOwnProperty.call(A,t)){var n=A[t];typeof n=="string"?i.setAttribute(t,n):n!=null&&(i[t]=n)}e++}for(;e2),Ct={mac:qJ||/Mac/.test(Us.platform),windows:/Win/.test(Us.platform),linux:/Linux|X11/.test(Us.platform),ie:E8,ie_version:NY?p9.documentMode||6:m9?+m9[1]:f9?+f9[1]:0,gecko:jJ,gecko_version:jJ?+(/Firefox\/(\d+)/.exec(Us.userAgent)||[0,0])[1]:0,chrome:!!l9,chrome_version:l9?+l9[1]:0,ios:qJ,android:/Android\b/.test(Us.userAgent),webkit:VJ,webkit_version:VJ?+(/\bAppleWebKit\/(\d+)/.exec(Us.userAgent)||[0,0])[1]:0,safari:w9,safari_version:w9?+(/\bVersion\/(\d+(\.\d+)?)/.exec(Us.userAgent)||[0,0])[1]:0,tabSize:p9.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function IS(i,e){for(let A in i)A=="class"&&e.class?e.class+=" "+i.class:A=="style"&&e.style?e.style+=";"+i.style:e[A]=i[A];return e}var $6=Object.create(null);function BS(i,e,A){if(i==e)return!0;i||(i=$6),e||(e=$6);let t=Object.keys(i),n=Object.keys(e);if(t.length-(A&&t.indexOf(A)>-1?1:0)!=n.length-(A&&n.indexOf(A)>-1?1:0))return!1;for(let o of t)if(o!=A&&(n.indexOf(o)==-1||i[o]!==e[o]))return!1;return!0}function PgA(i,e){for(let A=i.attributes.length-1;A>=0;A--){let t=i.attributes[A].name;e[t]==null&&i.removeAttribute(t)}for(let A in e){let t=e[A];A=="style"?i.style.cssText=t:i.getAttribute(A)!=t&&i.setAttribute(A,t)}}function WJ(i,e,A){let t=!1;if(e)for(let n in e)A&&n in A||(t=!0,n=="style"?i.style.cssText="":i.removeAttribute(n));if(A)for(let n in A)e&&e[n]==A[n]||(t=!0,n=="style"?i.style.cssText=A[n]:i.setAttribute(n,A[n]));return t}function jgA(i){let e=Object.create(null);for(let A=0;A0?3e8:-4e8:A>0?1e8:-1e8,new wd(e,A,A,t,e.widget||null,!1)}static replace(e){let A=!!e.block,t,n;if(e.isBlockGap)t=-5e8,n=4e8;else{let{start:o,end:a}=FY(e,A);t=(o?A?-3e8:-1:5e8)-1,n=(a?A?2e8:1:-6e8)+1}return new wd(e,t,n,A,e.widget||null,!0)}static line(e){return new l4(e)}static set(e,A=!1){return uo.of(e,A)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}};Lt.none=uo.empty;var s4=class i extends Lt{constructor(e){let{start:A,end:t}=FY(e);super(A?-1:5e8,t?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?IS(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||$6}eq(e){return this==e||e instanceof i&&this.tagName==e.tagName&&BS(this.attrs,e.attrs)}range(e,A=e){if(e>=A)throw new RangeError("Mark decorations may not be empty");return super.range(e,A)}};s4.prototype.point=!1;var l4=class i extends Lt{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof i&&this.spec.class==e.spec.class&&BS(this.spec.attributes,e.spec.attributes)}range(e,A=e){if(A!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,A)}};l4.prototype.mapMode=Wr.TrackBefore;l4.prototype.point=!0;var wd=class i extends Lt{constructor(e,A,t,n,o,a){super(A,t,o,e),this.block=n,this.isReplace=a,this.mapMode=n?A<=0?Wr.TrackBefore:Wr.TrackAfter:Wr.TrackDel}get type(){return this.startSide!=this.endSide?As.WidgetRange:this.startSide<=0?As.WidgetBefore:As.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof i&&VgA(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,A=e){if(this.isReplace&&(e>A||e==A&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&A!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,A)}};wd.prototype.point=!0;function FY(i,e=!1){let{inclusiveStart:A,inclusiveEnd:t}=i;return A==null&&(A=i.inclusive),t==null&&(t=i.inclusive),{start:A??e,end:t??e}}function VgA(i,e){return i==e||!!(i&&e&&i.compare(e))}function th(i,e,A,t=0){let n=A.length-1;n>=0&&A[n]+t>=i?A[n]=Math.max(A[n],e):A.push(i,e)}var A8=class i extends cg{constructor(e,A){super(),this.tagName=e,this.attributes=A}eq(e){return e==this||e instanceof i&&this.tagName==e.tagName&&BS(this.attributes,e.attributes)}static create(e){return new i(e.tagName,e.attributes||$6)}static set(e,A=!1){return uo.of(e,A)}};A8.prototype.startSide=A8.prototype.endSide=-1;function g4(i){let e;return i.nodeType==11?e=i.getSelection?i:i.ownerDocument:e=i,e.getSelection()}function y9(i,e){return e?i==e||i.contains(e.nodeType!=1?e.parentNode:e):!1}function $u(i,e){if(!e.anchorNode)return!1;try{return y9(i,e.anchorNode)}catch(A){return!1}}function V6(i){return i.nodeType==3?c4(i,0,i.nodeValue.length).getClientRects():i.nodeType==1?i.getClientRects():[]}function A4(i,e,A,t){return A?ZJ(i,e,A,t,-1)||ZJ(i,e,A,t,1):!1}function S2(i){for(var e=0;;e++)if(i=i.previousSibling,!i)return e}function e8(i){return i.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(i.nodeName)}function ZJ(i,e,A,t,n){for(;;){if(i==A&&e==t)return!0;if(e==(n<0?0:cC(i))){if(i.nodeName=="DIV")return!1;let o=i.parentNode;if(!o||o.nodeType!=1)return!1;e=S2(i)+(n<0?0:1),i=o}else if(i.nodeType==1){if(i=i.childNodes[e+(n<0?-1:0)],i.nodeType==1&&i.contentEditable=="false")return!1;e=n<0?cC(i):0}else return!1}}function cC(i){return i.nodeType==3?i.nodeValue.length:i.childNodes.length}function t8(i,e){let A=e?i.left:i.right;return{left:A,right:A,top:i.top,bottom:i.bottom}}function qgA(i){let e=i.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:i.innerWidth,top:0,bottom:i.innerHeight}}function LY(i,e){let A=e.width/i.offsetWidth,t=e.height/i.offsetHeight;return(A>.995&&A<1.005||!isFinite(A)||Math.abs(e.width-i.offsetWidth)<1)&&(A=1),(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.height-i.offsetHeight)<1)&&(t=1),{scaleX:A,scaleY:t}}function WgA(i,e,A,t,n,o,a,r){let s=i.ownerDocument,l=s.defaultView||window;for(let g=i,C=!1;g&&!C;)if(g.nodeType==1){let d,B=g==s.body,u=1,E=1;if(B)d=qgA(l);else{if(/^(fixed|sticky)$/.test(getComputedStyle(g).position)&&(C=!0),g.scrollHeight<=g.clientHeight&&g.scrollWidth<=g.clientWidth){g=g.assignedSlot||g.parentNode;continue}let v=g.getBoundingClientRect();({scaleX:u,scaleY:E}=LY(g,v)),d={left:v.left,right:v.left+g.clientWidth*u,top:v.top,bottom:v.top+g.clientHeight*E}}let f=0,m=0;if(n=="nearest")e.top0&&e.bottom>d.bottom+m&&(m=e.bottom-d.bottom+a)):e.bottom>d.bottom&&(m=e.bottom-d.bottom+a,A<0&&e.top-m0&&e.right>d.right+f&&(f=e.right-d.right+o)):e.right>d.right&&(f=e.right-d.right+o,A<0&&e.leftd.bottom||e.leftd.right)&&(e={left:Math.max(e.left,d.left),right:Math.min(e.right,d.right),top:Math.max(e.top,d.top),bottom:Math.min(e.bottom,d.bottom)}),g=g.assignedSlot||g.parentNode}else if(g.nodeType==11)g=g.host;else break}function GY(i,e=!0){let A=i.ownerDocument,t=null,n=null;for(let o=i.parentNode;o&&!(o==A.body||(!e||t)&&n);)if(o.nodeType==1)!n&&o.scrollHeight>o.clientHeight&&(n=o),e&&!t&&o.scrollWidth>o.clientWidth&&(t=o),o=o.assignedSlot||o.parentNode;else if(o.nodeType==11)o=o.host;else break;return{x:t,y:n}}var D9=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:A,focusNode:t}=e;this.set(A,Math.min(e.anchorOffset,A?cC(A):0),t,Math.min(e.focusOffset,t?cC(t):0))}set(e,A,t,n){this.anchorNode=e,this.anchorOffset=A,this.focusNode=t,this.focusOffset=n}},pd=null;Ct.safari&&Ct.safari_version>=26&&(pd=!1);function KY(i){if(i.setActive)return i.setActive();if(pd)return i.focus(pd);let e=[];for(let A=i;A&&(e.push(A,A.scrollTop,A.scrollLeft),A!=A.ownerDocument);A=A.parentNode);if(i.focus(pd==null?{get preventScroll(){return pd={preventScroll:!0},!0}}:void 0),!pd){pd=!1;for(let A=0;AMath.max(0,i.document.documentElement.scrollHeight-i.innerHeight-4):i.scrollTop>Math.max(1,i.scrollHeight-i.clientHeight-4)}function TY(i,e){for(let A=i,t=e;;){if(A.nodeType==3&&t>0)return{node:A,offset:t};if(A.nodeType==1&&t>0){if(A.contentEditable=="false")return null;A=A.childNodes[t-1],t=cC(A)}else if(A.parentNode&&!e8(A))t=S2(A),A=A.parentNode;else return null}}function OY(i,e){for(let A=i,t=e;;){if(A.nodeType==3&&t=A){if(r.level==t)return a;(o<0||(n!=0?n<0?r.fromA:e[o].level>r.level))&&(o=a)}}if(o<0)throw new RangeError("Index out of range");return o}};function HY(i,e){if(i.length!=e.length)return!1;for(let A=0;A=0;E-=3)if(c0[E+1]==-B){let f=c0[E+2],m=f&2?n:f&4?f&1?o:n:0;m&&(la[C]=la[c0[E]]=m),r=E;break}}else{if(c0.length==189)break;c0[r++]=C,c0[r++]=d,c0[r++]=s}else if((u=la[C])==2||u==1){let E=u==n;s=E?0:1;for(let f=r-3;f>=0;f-=3){let m=c0[f+2];if(m&2)break;if(E)c0[f+2]|=2;else{if(m&4)break;c0[f+2]|=4}}}}}function ncA(i,e,A,t){for(let n=0,o=t;n<=A.length;n++){let a=n?A[n-1].to:i,r=ns;)u==f&&(u=A[--E].from,f=E?A[E-1].to:i),la[--u]=B;s=g}else o=l,s++}}}function b9(i,e,A,t,n,o,a){let r=t%2?2:1;if(t%2==n%2)for(let s=e,l=0;ss&&a.push(new Bg(s,E.from,B));let f=E.direction==yd!=!(B%2);M9(i,f?t+1:t,n,E.inner,E.from,E.to,a),s=E.to}u=E.to}else{if(u==A||(g?la[u]!=r:la[u]==r))break;u++}d?b9(i,s,u,t+1,n,d,a):se;){let g=!0,C=!1;if(!l||s>o[l-1].to){let E=la[s-1];E!=r&&(g=!1,C=E==16)}let d=!g&&r==1?[]:null,B=g?t:t+1,u=s;A:for(;;)if(l&&u==o[l-1].to){if(C)break A;let E=o[--l];if(!g)for(let f=E.from,m=l;;){if(f==e)break A;if(m&&o[m-1].to==f)f=o[--m].from;else{if(la[f-1]==r)break A;break}}if(d)d.push(E);else{E.tola.length;)la[la.length]=256;let t=[],n=e==yd?0:1;return M9(i,n,n,A,0,i.length,t),t}function zY(i){return[new Bg(0,i,0)]}var PY="";function acA(i,e,A,t,n){var o;let a=t.head-i.from,r=Bg.find(e,a,(o=t.bidiLevel)!==null&&o!==void 0?o:-1,t.assoc),s=e[r],l=s.side(n,A);if(a==l){let d=r+=n?1:-1;if(d<0||d>=e.length)return null;s=e[r=d],a=s.side(!n,A),l=s.side(n,A)}let g=tr(i.text,a,s.forward(n,A));(gs.to)&&(g=l),PY=i.text.slice(Math.min(a,g),Math.max(a,g));let C=r==(n?e.length-1:0)?null:e[r+(n?1:-1)];return C&&g==l&&C.level+(n?0:1)i.some(e=>e)}),$Y=nt.define({combine:i=>i.some(e=>e)}),AH=nt.define(),e4=class i{constructor(e,A="nearest",t="nearest",n=5,o=5,a=!1){this.range=e,this.y=A,this.x=t,this.yMargin=n,this.xMargin=o,this.isSnapshot=a}map(e){return e.empty?this:new i(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new i(Be.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},U6=ln.define({map:(i,e)=>i.map(e)}),eH=ln.define();function Gr(i,e,A){let t=i.facet(WY);t.length?t[0](e):window.onerror&&window.onerror(String(e),A,void 0,void 0,e)||(A?console.error(A+":",e):console.error(e))}var lC=nt.define({combine:i=>i.length?i[0]:!0}),scA=0,XB=nt.define({combine(i){return i.filter((e,A)=>{for(let t=0;t{let s=[];return a&&s.push(Q8.of(l=>{let g=l.plugin(r);return g?a(g):Lt.none})),o&&s.push(o(r)),s})}static fromClass(e,A){return i.define((t,n)=>new e(t,n),A)}},t4=class{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let A=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(A)}catch(t){if(Gr(A.state,t,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(n){}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(A){Gr(e.state,A,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var A;if(!((A=this.value)===null||A===void 0)&&A.destroy)try{this.value.destroy()}catch(t){Gr(e.state,t,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},AY=nt.define(),S9=nt.define(),Q8=nt.define(),tH=nt.define(),uS=nt.define(),C4=nt.define(),iH=nt.define();function eY(i,e){let A=i.state.facet(iH);if(!A.length)return A;let t=A.map(o=>o instanceof Function?o(i):o),n=[];return uo.spans(t,e.from,e.to,{point(){},span(o,a,r,s){let l=o-e.from,g=a-e.from,C=n;for(let d=r.length-1;d>=0;d--,s--){let B=r[d].spec.bidiIsolate,u;if(B==null&&(B=rcA(e.text,l,g)),s>0&&C.length&&(u=C[C.length-1]).to==l&&u.direction==B)u.to=g,C=u.inner;else{let E={from:l,to:g,direction:B,inner:[]};C.push(E),C=E.inner}}}}),n}var nH=nt.define();function pS(i){let e=0,A=0,t=0,n=0;for(let o of i.state.facet(nH)){let a=o(i);a&&(a.left!=null&&(e=Math.max(e,a.left)),a.right!=null&&(A=Math.max(A,a.right)),a.top!=null&&(t=Math.max(t,a.top)),a.bottom!=null&&(n=Math.max(n,a.bottom)))}return{left:e,right:A,top:t,bottom:n}}var Wu=nt.define(),rc=class i{constructor(e,A,t,n){this.fromA=e,this.toA=A,this.fromB=t,this.toB=n}join(e){return new i(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let A=e.length,t=this;for(;A>0;A--){let n=e[A-1];if(!(n.fromA>t.toA)){if(n.toAn.push(new rc(o,a,r,s))),this.changedRanges=n}static create(e,A,t){return new i(e,A,t)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}},lcA=[],_a=class{constructor(e,A,t=0){this.dom=e,this.length=A,this.flags=t,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return lcA}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let A=this.domAttrs;A&&PgA(this.dom,A)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,A=this.posAtStart){let t=A;for(let n of this.children){if(n==e)return t;t+=n.length+n.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,A){return null}domPosFor(e,A){let t=S2(this.dom),n=this.length?e>0:A>0;return new C0(this.parent.dom,t+(n?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof oh)return e;return null}static get(e){return e.cmTile}},nh=class extends _a{constructor(e){super(e,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let A=this.dom,t=null,n,o=e?.node==A?e:null,a=0;for(let r of this.children){if(r.sync(e),a+=r.length+r.breakAfter,n=t?t.nextSibling:A.firstChild,o&&n!=r.dom&&(o.written=!0),r.dom.parentNode==A)for(;n&&n!=r.dom;)n=tY(n);else A.insertBefore(r.dom,n);t=r.dom}for(n=t?t.nextSibling:A.firstChild,o&&n&&(o.written=!0);n;)n=tY(n);this.length=a}};function tY(i){let e=i.nextSibling;return i.parentNode.removeChild(i),e}var oh=class extends nh{constructor(e,A){super(A),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let A=_a.get(e);if(A&&this.owns(A))return A;e=e.parentNode}}blockTiles(e){for(let A=[],t=this,n=0,o=0;;)if(n==t.children.length){if(!A.length)return;t=t.parent,t.breakAfter&&o++,n=A.pop()}else{let a=t.children[n++];if(a instanceof gC)A.push(n),t=a,n=0;else{let r=o+a.length,s=e(a,o);if(s!==void 0)return s;o=r+a.breakAfter}}}resolveBlock(e,A){let t,n=-1,o,a=-1;if(this.blockTiles((r,s)=>{let l=s+r.length;if(e>=s&&e<=l){if(r.isWidget()&&A>=-1&&A<=1){if(r.flags&32)return!0;r.flags&16&&(t=void 0)}(se||e==s&&(A>1?r.length:r.covers(-1)))&&(!o||!r.isWidget()&&o.isWidget())&&(o=r,a=e-s)}}),!t&&!o)throw new Error("No tile at position "+e);return t&&A<0||!o?{tile:t,offset:n}:{tile:o,offset:a}}},gC=class i extends nh{constructor(e,A){super(e),this.wrapper=A}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,A){let t=new i(A||document.createElement(e.tagName),e);return A||(t.flags|=4),t}},ah=class i extends nh{constructor(e,A){super(e),this.attrs=A}isLine(){return!0}static start(e,A,t){let n=new i(A||document.createElement("div"),e);return(!A||!t)&&(n.flags|=4),n}get domAttrs(){return this.attrs}resolveInline(e,A,t){let n=null,o=-1,a=null,r=-1;function s(g,C){for(let d=0,B=0;d=C&&(u.isComposite()?s(u,C-B):(!a||a.isHidden&&(A>0||t&&ccA(a,u)))&&(E>C||u.flags&32)?(a=u,r=C-B):(Bt&&(e=t);let n=e,o=e,a=0;e==0&&A<0||e==t&&A>=0?Ct.chrome||Ct.gecko||(e?(n--,a=1):o=0)?0:r.length-1];return Ct.safari&&!a&&s.width==0&&(s=Array.prototype.find.call(r,l=>l.width)||s),a?t8(s,a<0):s||null}static of(e,A){let t=new i(A||document.createTextNode(e),e);return A||(t.flags|=2),t}},Dd=class i extends _a{constructor(e,A,t,n){super(e,A,n),this.widget=t}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,A){return this.coordsInWidget(e,A,!1)}coordsInWidget(e,A,t){let n=this.widget.coordsAt(this.dom,e,A);if(n)return n;if(t)return t8(this.dom.getBoundingClientRect(),this.length?e==0:A<=0);{let o=this.dom.getClientRects(),a=null;if(!o.length)return null;let r=this.flags&16?!0:this.flags&32?!1:e>0;for(let s=r?o.length-1:0;a=o[s],!(e>0?s==0:s==o.length-1||a.top0;)if(n.isComposite())if(a){if(!e)break;t&&t.break(),e--,a=!1}else if(o==n.children.length){if(!e&&!r.length)break;t&&t.leave(n),a=!!n.breakAfter,{tile:n,index:o}=r.pop(),o++}else{let s=n.children[o],l=s.breakAfter;(A>0?s.length<=e:s.length=0;r--){let s=A.marks[r],l=n.lastChild;if(l instanceof ll&&l.mark.eq(s.mark))l.dom!=s.dom&&l.setDOM(c9(s.dom)),n=l;else{if(this.cache.reused.get(s)){let C=_a.get(s.dom);C&&C.setDOM(c9(s.dom))}let g=ll.of(s.mark,s.dom);n.append(g),n=g}this.cache.reused.set(s,2)}let o=_a.get(e.text);o&&this.cache.reused.set(o,2);let a=new fd(e.text,e.text.nodeValue);a.flags|=8,n.append(a)}addInlineWidget(e,A,t){let n=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);n||this.flushBuffer();let o=this.ensureMarks(A,t);!n&&!(e.flags&16)&&o.append(this.getBuffer(1)),o.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,A,t){this.flushBuffer(),this.ensureMarks(A,t).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let A=this.afterWidget||this.lastBlock;A.length+=e,this.pos+=e}addLineStart(e,A){var t;e||(e=oH);let n=ah.start(e,A||((t=this.cache.find(ah))===null||t===void 0?void 0:t.dom),!!A);this.getBlockPos().append(this.lastBlock=this.curLine=n)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,A){var t;let n=this.curLine;for(let o=e.length-1;o>=0;o--){let a=e[o],r;if(A>0&&(r=n.lastChild)&&r instanceof ll&&r.mark.eq(a))n=r,A--;else{let s=ll.of(a,(t=this.cache.find(ll,l=>l.mark.eq(a)))===null||t===void 0?void 0:t.dom);n.append(s),n=s,A=0}}return n}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!iY(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(Ct.ios&&iY(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(C9,0,32)||new Dd(C9.toDOM(),0,C9,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to=this.pos){let A=new _9(e.from,e.to,e.value,e.rank),t=this.wrappers.length;for(;t>0&&(this.wrappers[t-1].rank-A.rank||this.wrappers[t-1].to-A.to)<0;)t--;this.wrappers.splice(t,0,A)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let A=this.root;for(let t of this.wrappers){let n=A.lastChild;if(t.froma.wrapper.eq(t.wrapper)))===null||e===void 0?void 0:e.dom);A.append(o),A=o}}return A}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let A=2|(e<0?16:32),t=this.cache.find(rh,void 0,1);return t&&(t.flags=A),t||new rh(A)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},R9=class{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:n,lineBreak:o,done:a}=this.cursor.next(this.skipCount);if(this.skipCount=0,a)throw new Error("Ran out of text content when drawing inline views");this.text=n;let r=this.textOff=Math.min(e,n.length);return o?null:n.slice(0,r)}let A=Math.min(this.text.length,this.textOff+e),t=this.text.slice(this.textOff,A);return this.textOff=A,t}},n8=[Dd,ah,fd,ll,rh,gC,oh];for(let i=0;i[]),this.index=n8.map(()=>0),this.reused=new Map}add(e){let A=e.constructor.bucket,t=this.buckets[A];t.length<6?t.push(e):t[this.index[A]=(this.index[A]+1)%6]=e}find(e,A,t=2){let n=e.bucket,o=this.buckets[n],a=this.index[n];for(let r=o.length-1;r>=0;r--){let s=(r+a)%o.length,l=o[s];if((!A||A(l))&&!this.reused.has(l))return o.splice(s,1),s{if(this.cache.add(a),a.isComposite())return!1},enter:a=>this.cache.add(a),leave:()=>{},break:()=>{}}}run(e,A){let t=A&&this.getCompositionContext(A.text);for(let n=0,o=0,a=0;;){let r=an){let l=s-n;this.preserve(l,!a,!r),n=s,o+=l}if(!r)break;A&&r.fromA<=A.range.fromA&&r.toA>=A.range.toA?(this.forward(r.fromA,A.range.fromA,A.range.fromA{if(a.isWidget())if(this.openWidget)this.builder.continueWidget(s-r);else{let l=s>0||r{a.isLine()?this.builder.addLineStart(a.attrs,this.cache.maybeReuse(a)):(this.cache.add(a),a instanceof ll&&n.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?n.length&&(n.length=o=0):a instanceof ll&&(n.shift(),o=Math.min(o,n.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,A){let t=null,n=this.builder,o=0,a=uo.spans(this.decorations,e,A,{point:(r,s,l,g,C,d)=>{if(l instanceof wd){if(this.disallowBlockEffectsFor[d]){if(l.block)throw new RangeError("Block decorations may not be specified via plugins");if(s>this.view.state.doc.lineAt(r).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(o=g.length,C>g.length)n.continueWidget(s-r);else{let B=l.widget||(l.block?nY.block:nY.inline),u=CcA(l),E=this.cache.findWidget(B,s-r,u)||Dd.of(B,this.view,s-r,u);l.block?(l.startSide>0&&n.addLineStartIfNotCovered(t),n.addBlockWidget(E)):(n.ensureLine(t),n.addInlineWidget(E,g,C))}t=null}else t=dcA(t,l);s>r&&this.text.skip(s-r)},span:(r,s,l,g)=>{for(let C=r;Co,this.openMarks=a}forward(e,A,t=1){A-e<=10?this.old.advance(A-e,t,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(A-e-10,-1),this.old.advance(5,t,this.reuseWalker))}getCompositionContext(e){let A=[],t=null;for(let n=e.parentNode;;n=n.parentNode){let o=_a.get(n);if(n==this.view.contentDOM)break;o instanceof ll?A.push(o):o?.isLine()?t=o:o instanceof gC||(n.nodeName=="DIV"&&!t&&n!=this.view.contentDOM?t=new ah(n,oH):t||A.push(ll.of(new s4({tagName:n.nodeName.toLowerCase(),attributes:jgA(n)}),n)))}return{line:t,marks:A}}};function iY(i,e){let A=t=>{for(let n of t.children)if((e?n.isText():n.length)||A(n))return!0;return!1};return A(i)}function CcA(i){let e=i.isReplace?(i.startSide<0?64:0)|(i.endSide>0?128:0):i.startSide>0?32:16;return i.block&&(e|=256),e}var oH={class:"cm-line"};function dcA(i,e){let A=e.spec.attributes,t=e.spec.class;return!A&&!t||(i||(i={class:"cm-line"}),A&&IS(A,i),t&&(i.class+=" "+t)),i}function IcA(i){let e=[];for(let A=i.parents.length;A>1;A--){let t=A==i.parents.length?i.tile:i.parents[A].tile;t instanceof ll&&e.push(t.mark)}return e}function c9(i){let e=_a.get(i);return e&&e.setDOM(i.cloneNode()),i}var nY=(()=>{class i extends gl{constructor(A){super(),this.tag=A}eq(A){return A.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(A){return A.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}return i.inline=new i("span"),i.block=new i("div"),i})(),C9=new class extends gl{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},o8=class{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=Lt.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new oh(e,e.contentDOM),this.updateInner([new rc(0,0,0,e.state.doc.length)],null)}update(e){var A;let t=e.changedRanges;this.minWidth>0&&t.length&&(t.every(({fromA:g,toA:C})=>Cthis.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let n=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((A=this.domChanged)===null||A===void 0)&&A.newSel?n=this.domChanged.newSel.head:!mcA(e.changes,this.hasComposition)&&!e.selectionSet&&(n=e.state.selection.main.head));let o=n>-1?hcA(this.view,e.changes,n):null;if(this.domChanged=null,this.hasComposition){let{from:g,to:C}=this.hasComposition;t=new rc(g,C,e.changes.mapPos(g,-1),e.changes.mapPos(C,1)).addToSet(t.slice())}this.hasComposition=o?{from:o.range.fromB,to:o.range.toB}:null,(Ct.ie||Ct.chrome)&&!o&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let a=this.decorations,r=this.blockWrappers;this.updateDeco();let s=ucA(a,this.decorations,e.changes);s.length&&(t=rc.extendWithRanges(t,s));let l=pcA(r,this.blockWrappers,e.changes);return l.length&&(t=rc.extendWithRanges(t,l)),o&&!t.some(g=>g.fromA<=o.range.fromA&&g.toA>=o.range.toA)&&(t=o.range.addToSet(t.slice())),this.tile.flags&2&&t.length==0?!1:(this.updateInner(t,o),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,A){this.view.viewState.mustMeasureContent=!0;let{observer:t}=this.view;t.ignore(()=>{if(A||e.length){let a=this.tile,r=new F9(this.view,a,this.blockWrappers,this.decorations,this.dynamicDecorationMap);A&&_a.get(A.text)&&r.cache.reused.set(_a.get(A.text),2),this.tile=r.run(e,A),L9(a,r.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let o=Ct.chrome||Ct.ios?{node:t.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(o),o&&(o.written||t.selectionRange.focusNode!=o.node||!this.tile.dom.contains(o.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let n=[];if(this.view.viewport.from||this.view.viewport.to-1)&&$u(t,this.view.observer.selectionRange)&&!(n&&t.contains(n));if(!(o||A||a))return;let r=this.forceSelection;this.forceSelection=!1;let s=this.view.state.selection.main,l,g;if(s.empty?g=l=this.inlineDOMNearPos(s.anchor,s.assoc||1):(g=this.inlineDOMNearPos(s.head,s.head==s.from?1:-1),l=this.inlineDOMNearPos(s.anchor,s.anchor==s.from?1:-1)),Ct.gecko&&s.empty&&!this.hasComposition&&BcA(l)){let d=document.createTextNode("");this.view.observer.ignore(()=>l.node.insertBefore(d,l.node.childNodes[l.offset]||null)),l=g=new C0(d,0),r=!0}let C=this.view.observer.selectionRange;(r||!C.focusNode||(!A4(l.node,l.offset,C.anchorNode,C.anchorOffset)||!A4(g.node,g.offset,C.focusNode,C.focusOffset))&&!this.suppressWidgetCursorChange(C,s))&&(this.view.observer.ignore(()=>{Ct.android&&Ct.chrome&&t.contains(C.focusNode)&&fcA(C.focusNode,t)&&(t.blur(),t.focus({preventScroll:!0}));let d=g4(this.view.root);if(d)if(s.empty){if(Ct.gecko){let B=EcA(l.node,l.offset);if(B&&B!=3){let u=(B==1?TY:OY)(l.node,l.offset);u&&(l=new C0(u.node,u.offset))}}d.collapse(l.node,l.offset),s.bidiLevel!=null&&d.caretBidiLevel!==void 0&&(d.caretBidiLevel=s.bidiLevel)}else if(d.extend){d.collapse(l.node,l.offset);try{d.extend(g.node,g.offset)}catch(B){}}else{let B=document.createRange();s.anchor>s.head&&([l,g]=[g,l]),B.setEnd(g.node,g.offset),B.setStart(l.node,l.offset),d.removeAllRanges(),d.addRange(B)}a&&this.view.root.activeElement==t&&(t.blur(),n&&n.focus())}),this.view.observer.setSelectionRange(l,g)),this.impreciseAnchor=l.precise?null:new C0(C.anchorNode,C.anchorOffset),this.impreciseHead=g.precise?null:new C0(C.focusNode,C.focusOffset)}suppressWidgetCursorChange(e,A){return this.hasComposition&&A.empty&&A4(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==A.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,A=e.state.selection.main,t=g4(e.root),{anchorNode:n,anchorOffset:o}=e.observer.selectionRange;if(!t||!A.empty||!A.assoc||!t.modify)return;let a=this.lineAt(A.head,A.assoc);if(!a)return;let r=a.posAtStart;if(A.head==r||A.head==r+a.length)return;let s=this.coordsAt(A.head,-1),l=this.coordsAt(A.head,1);if(!s||!l||s.bottom>l.top)return;let g=this.domAtPos(A.head+A.assoc,A.assoc);t.collapse(g.node,g.offset),t.modify("move",A.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let C=e.observer.selectionRange;e.docView.posFromDOM(C.anchorNode,C.anchorOffset)!=A.from&&t.collapse(n,o)}posFromDOM(e,A){let t=this.tile.nearest(e);if(!t)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let n=t.posAtStart;if(t.isComposite()){let o;if(e==t.dom)o=t.dom.childNodes[A];else{let a=cC(e)==0?0:A==0?-1:1;for(;;){let r=e.parentNode;if(r==t.dom)break;a==0&&r.firstChild!=r.lastChild&&(e==r.firstChild?a=-1:a=1),e=r}a<0?o=e:o=e.nextSibling}if(o==t.dom.firstChild)return n;for(;o&&!_a.get(o);)o=o.nextSibling;if(!o)return n+t.length;for(let a=0,r=n;;a++){let s=t.children[a];if(s.dom==o)return r;r+=s.length+s.breakAfter}}else return t.isText()?e==t.dom?n+A:n+(A?t.length:0):n}domAtPos(e,A){let{tile:t,offset:n}=this.tile.resolveBlock(e,A);return t.isWidget()?t.domPosFor(e,A):t.domIn(n,A)}inlineDOMNearPos(e,A){let t,n=-1,o=!1,a,r=-1,s=!1;return this.tile.blockTiles((l,g)=>{if(l.isWidget()){if(l.flags&32&&g>=e)return!0;l.flags&16&&(o=!0)}else{let C=g+l.length;if(g<=e&&(t=l,n=e-g,o=C=e&&!a&&(a=l,r=e-g,s=g>e),g>e&&a)return!0}}),!t&&!a?this.domAtPos(e,A):(o&&a?t=null:s&&t&&(a=null),t&&A<0||!a?t.domIn(n,A):a.domIn(r,A))}coordsAt(e,A){let{tile:t,offset:n}=this.tile.resolveBlock(e,A);return t.isWidget()?t.widget instanceof i4?null:t.coordsInWidget(n,A,!0):t.coordsIn(n,A)}lineAt(e,A){let{tile:t}=this.tile.resolveBlock(e,A);return t.isLine()?t:null}coordsForChar(e){let{tile:A,offset:t}=this.tile.resolveBlock(e,1);if(!A.isLine())return null;function n(o,a){if(o.isComposite())for(let r of o.children){if(r.length>=a){let s=n(r,a);if(s)return s}if(a-=r.length,a<0)break}else if(o.isText()&&aMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,r=-1,s=this.view.textDirection==Lo.LTR,l=0,g=(C,d,B)=>{for(let u=0;un);u++){let E=C.children[u],f=d+E.length,m=E.dom.getBoundingClientRect(),{height:v}=m;if(B&&!u&&(l+=m.top-B.top),E instanceof gC)f>t&&g(E,d,m);else if(d>=t&&(l>0&&A.push(-l),A.push(v+l),l=0,a)){let S=E.dom.lastChild,k=S?V6(S):[];if(k.length){let M=k[k.length-1],x=s?M.right-m.left:m.right-M.left;x>r&&(r=x,this.minWidth=o,this.minWidthFrom=d,this.minWidthTo=f)}}B&&u==C.children.length-1&&(l+=B.bottom-m.bottom),d=f+E.breakAfter}};return g(this.tile,0,null),A}textDirectionAt(e){let{tile:A}=this.tile.resolveBlock(e,1);return getComputedStyle(A.dom).direction=="rtl"?Lo.RTL:Lo.LTR}measureTextSize(){let e=this.tile.blockTiles(a=>{if(a.isLine()&&a.children.length&&a.length<=20){let r=0,s;for(let l of a.children){if(!l.isText()||/[^ -~]/.test(l.text))return;let g=V6(l.dom);if(g.length!=1)return;r+=g[0].width,s=g[0].height}if(r)return{lineHeight:a.dom.getBoundingClientRect().height,charWidth:r/a.length,textHeight:s}}});if(e)return e;let A=document.createElement("div"),t,n,o;return A.className="cm-line",A.style.width="99999px",A.style.position="absolute",A.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(A);let a=V6(A.firstChild)[0];t=A.getBoundingClientRect().height,n=a&&a.width?a.width/27:7,o=a&&a.height?a.height:t,A.remove()}),{lineHeight:t,charWidth:n,textHeight:o}}computeBlockGapDeco(){let e=[],A=this.view.viewState;for(let t=0,n=0;;n++){let o=n==A.viewports.length?null:A.viewports[n],a=o?o.from-1:this.view.state.doc.length;if(a>t){let r=(A.lineBlockAt(a).bottom-A.lineBlockAt(t).top)/this.view.scaleY;e.push(Lt.replace({widget:new i4(r),block:!0,inclusive:!0,isBlockGap:!0}).range(t,a))}if(!o)break;t=o.to+1}return Lt.set(e)}updateDeco(){let e=1,A=this.view.state.facet(Q8).map(o=>(this.dynamicDecorationMap[e++]=typeof o=="function")?o(this.view):o),t=!1,n=this.view.state.facet(uS).map((o,a)=>{let r=typeof o=="function";return r&&(t=!0),r?o(this.view):o});for(n.length&&(this.dynamicDecorationMap[e++]=t,A.push(uo.join(n))),this.decorations=[this.editContextFormatting,...A,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];etypeof o=="function"?o(this.view):o)}scrollIntoView(e){var A;if(e.isSnapshot){let g=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=g.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let g of this.view.state.facet(AH))try{if(g(this.view,e.range,e))return!0}catch(C){Gr(this.view.state,C,"scroll handler")}let{range:t}=e,n=this.coordsAt(t.head,(A=t.assoc)!==null&&A!==void 0?A:t.empty?0:t.head>t.anchor?-1:1),o;if(!n)return;!t.empty&&(o=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(n={left:Math.min(n.left,o.left),top:Math.min(n.top,o.top),right:Math.max(n.right,o.right),bottom:Math.max(n.bottom,o.bottom)});let a=pS(this.view),r={left:n.left-a.left,top:n.top-a.top,right:n.right+a.right,bottom:n.bottom+a.bottom},{offsetWidth:s,offsetHeight:l}=this.view.scrollDOM;if(WgA(this.view.scrollDOM,r,t.head1&&(n.top>window.pageYOffset+window.visualViewport.offsetTop+window.visualViewport.height||n.bottomt.isWidget()||t.children.some(A);return A(this.tile.resolveBlock(e,1).tile)}destroy(){L9(this.tile)}};function L9(i,e){let A=e?.get(i);if(A!=1){A==null&&i.destroy();for(let t of i.children)L9(t,e)}}function BcA(i){return i.node.nodeType==1&&i.node.firstChild&&(i.offset==0||i.node.childNodes[i.offset-1].contentEditable=="false")&&(i.offset==i.node.childNodes.length||i.node.childNodes[i.offset].contentEditable=="false")}function aH(i,e){let A=i.observer.selectionRange;if(!A.focusNode)return null;let t=TY(A.focusNode,A.focusOffset),n=OY(A.focusNode,A.focusOffset),o=t||n;if(n&&t&&n.node!=t.node){let r=_a.get(n.node);if(!r||r.isText()&&r.text!=n.node.nodeValue)o=n;else if(i.docView.lastCompositionAfterCursor){let s=_a.get(t.node);!s||s.isText()&&s.text!=t.node.nodeValue||(o=n)}}if(i.docView.lastCompositionAfterCursor=o!=t,!o)return null;let a=e-o.offset;return{from:a,to:a+o.node.nodeValue.length,node:o.node}}function hcA(i,e,A){let t=aH(i,A);if(!t)return null;let{node:n,from:o,to:a}=t,r=n.nodeValue;if(/[\n\r]/.test(r)||i.state.doc.sliceString(t.from,t.to)!=r)return null;let s=e.invertedDesc;return{range:new rc(s.mapPos(o),s.mapPos(a),o,a),text:n}}function EcA(i,e){return i.nodeType!=1?0:(e&&i.childNodes[e-1].contentEditable=="false"?1:0)|(e{te.from&&(A=!0)}),A}var i4=class extends gl{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}};function wcA(i,e,A=1){let t=i.charCategorizer(e),n=i.doc.lineAt(e),o=e-n.from;if(n.length==0)return Be.cursor(e);o==0?A=1:o==n.length&&(A=-1);let a=o,r=o;A<0?a=tr(n.text,o,!1):r=tr(n.text,o);let s=t(n.text.slice(a,r));for(;a>0;){let l=tr(n.text,a,!1);if(t(n.text.slice(l,a))!=s)break;a=l}for(;ri.defaultLineHeight*1.5){let r=i.viewState.heightOracle.textHeight,s=Math.floor((n-A.top-(i.defaultLineHeight-r)*.5)/r);o+=s*i.viewState.heightOracle.lineLength}let a=i.state.sliceDoc(A.from,A.to);return A.from+G6(a,o,i.state.tabSize)}function K9(i,e,A){let t=i.lineBlockAt(e);if(Array.isArray(t.type)){let n;for(let o of t.type){if(o.from>e)break;if(!(o.toe)return o;(!n||o.type==As.Text&&(n.type!=o.type||(A<0?o.frome)))&&(n=o)}}return n||t}return t}function DcA(i,e,A,t){let n=K9(i,e.head,e.assoc||-1),o=!t||n.type!=As.Text||!(i.lineWrapping||n.widgetLineBreaks)?null:i.coordsAtPos(e.assoc<0&&e.head>n.from?e.head-1:e.head);if(o){let a=i.dom.getBoundingClientRect(),r=i.textDirectionAt(n.from),s=i.posAtCoords({x:A==(r==Lo.LTR)?a.right-1:a.left+1,y:(o.top+o.bottom)/2});if(s!=null)return Be.cursor(s,A?-1:1)}return Be.cursor(A?n.to:n.from,A?-1:1)}function oY(i,e,A,t){let n=i.state.doc.lineAt(e.head),o=i.bidiSpans(n),a=i.textDirectionAt(n.from);for(let r=e,s=null;;){let l=acA(n,o,a,r,A),g=PY;if(!l){if(n.number==(A?i.state.doc.lines:1))return r;g=` -`,n=i.state.doc.line(n.number+(A?1:-1)),o=i.bidiSpans(n),l=i.visualLineSide(n,!A)}if(s){if(!s(g))return r}else{if(!t)return l;s=t(g)}r=l}}function vcA(i,e,A){let t=i.state.charCategorizer(e),n=t(A);return o=>{let a=t(o);return n==$o.Space&&(n=a),n==a}}function bcA(i,e,A,t){let n=e.head,o=A?1:-1;if(n==(A?i.state.doc.length:0))return Be.cursor(n,e.assoc);let a=e.goalColumn,r,s=i.contentDOM.getBoundingClientRect(),l=i.coordsAtPos(n,e.assoc||((e.empty?A:e.head==e.from)?1:-1)),g=i.documentTop;if(l)a==null&&(a=l.left-s.left),r=o<0?l.top:l.bottom;else{let u=i.viewState.lineBlockAt(n);a==null&&(a=Math.min(s.right-s.left,i.defaultCharacterWidth*(n-u.from))),r=(o<0?u.top:u.bottom)+g}let C=s.left+a,d=i.viewState.heightOracle.textHeight>>1,B=t??d;for(let u=0;;u+=d){let E=r+(B+u)*o,f=U9(i,{x:C,y:E},!1,o);if(A?E>s.bottom:Er:v{if(e>o&&en(i)),A.from,e.head>A.from?-1:1);return t==A.from?A:Be.cursor(t,ti.viewState.docHeight)return new Ig(i.state.doc.length,-1);if(l=i.elementAtHeight(s),t==null)break;if(l.type==As.Text){if(t<0?l.toi.viewport.to)break;let d=i.docView.coordsAt(t<0?l.from:l.to,t>0?-1:1);if(d&&(t<0?d.top<=s+o:d.bottom>=s+o))break}let C=i.viewState.heightOracle.textHeight/2;s=t>0?l.bottom+C:l.top-C}if(i.viewport.from>=l.to||i.viewport.to<=l.from){if(A)return null;if(l.type==As.Text){let C=ycA(i,n,l,a,r);return new Ig(C,C==l.from?1:-1)}}if(l.type!=As.Text)return s<(l.top+l.bottom)/2?new Ig(l.from,1):new Ig(l.to,-1);let g=i.docView.lineAt(l.from,2);return(!g||g.length!=l.length)&&(g=i.docView.lineAt(l.from,-2)),new T9(i,a,r,i.textDirectionAt(l.from)).scanTile(g,l.from)}var T9=class{constructor(e,A,t,n){this.view=e,this.x=A,this.y=t,this.baseDir=n,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to1||t.length&&(t[0].level!=this.baseDir||t[0].to+n.from>1;e:if(o.has(u)){let f=t+Math.floor(Math.random()*B);for(let m=0;m1)){if(m.bottomthis.y)(!s||s.top>m.top)&&(s=m),v=-1;else{let S=m.left>this.x?this.x-m.left:m.right(C.left+C.right)/2==d}}scanText(e,A){let t=[];for(let o=0;o{let a=t[o]-A,r=t[o+1]-A;return c4(e.dom,a,r).getClientRects()});return n.after?new Ig(t[n.i+1],-1):new Ig(t[n.i],1)}scanTile(e,A){if(!e.length)return new Ig(A,1);if(e.children.length==1){let r=e.children[0];if(r.isText())return this.scanText(r,A);if(r.isComposite())return this.scanTile(r,A)}let t=[A];for(let r=0,s=A;r{let s=e.children[r];return s.flags&48?null:(s.dom.nodeType==1?s.dom:c4(s.dom,0,s.length)).getClientRects()}),o=e.children[n.i],a=t[n.i];return o.isText()?this.scanText(o,a):o.isComposite()?this.scanTile(o,a):n.after?new Ig(t[n.i+1],-1):new Ig(a,1)}},ZB="\uFFFF",O9=class{constructor(e,A){this.points=e,this.view=A,this.text="",this.lineSeparator=A.state.facet(ir.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=ZB}readRange(e,A){if(!e)return this;let t=e.parentNode;for(let n=e;;){this.findPointBefore(t,n);let o=this.text.length;this.readNode(n);let a=_a.get(n),r=n.nextSibling;if(r==A){a?.breakAfter&&!r&&t!=this.view.contentDOM&&this.lineBreak();break}let s=_a.get(r);(a&&s?a.breakAfter:(a?a.breakAfter:e8(n))||e8(r)&&(n.nodeName!="BR"||a?.isWidget())&&this.text.length>o)&&!ScA(r,A)&&this.lineBreak(),n=r}return this.findPointBefore(t,A),this}readTextNode(e){let A=e.nodeValue;for(let t of this.points)t.node==e&&(t.pos=this.text.length+Math.min(t.offset,A.length));for(let t=0,n=this.lineSeparator?null:/\r\n?|\n/g;;){let o=-1,a=1,r;if(this.lineSeparator?(o=A.indexOf(this.lineSeparator,t),a=this.lineSeparator.length):(r=n.exec(A))&&(o=r.index,a=r[0].length),this.append(A.slice(t,o<0?A.length:o)),o<0)break;if(this.lineBreak(),a>1)for(let s of this.points)s.node==e&&s.pos>this.text.length&&(s.pos-=a-1);t=o+a}}readNode(e){let A=_a.get(e),t=A&&A.overrideDOMText;if(t!=null){this.findPointInside(e,t.length);for(let n=t.iter();!n.next().done;)n.lineBreak?this.lineBreak():this.append(n.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,A){for(let t of this.points)t.node==e&&e.childNodes[t.offset]==A&&(t.pos=this.text.length)}findPointInside(e,A){for(let t of this.points)(e.nodeType==3?t.node==e:e.contains(t.node))&&(t.pos=this.text.length+(McA(e,t.node,t.offset)?A:0))}};function McA(i,e,A){for(;;){if(!e||A-1;let{impreciseHead:o,impreciseAnchor:a}=e.docView,r=e.state.selection;if(e.state.readOnly&&A>-1)this.newSel=null;else if(A>-1&&(this.bounds=sH(e.docView.tile,A,t,0))){let s=o||a?[]:_cA(e),l=new O9(s,e);l.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=l.text,this.newSel=xcA(s,this.bounds.from)}else{let s=e.observer.selectionRange,l=o&&o.node==s.focusNode&&o.offset==s.focusOffset||!y9(e.contentDOM,s.focusNode)?r.main.head:e.docView.posFromDOM(s.focusNode,s.focusOffset),g=a&&a.node==s.anchorNode&&a.offset==s.anchorOffset||!y9(e.contentDOM,s.anchorNode)?r.main.anchor:e.docView.posFromDOM(s.anchorNode,s.anchorOffset),C=e.viewport;if((Ct.ios||Ct.chrome)&&r.main.empty&&l!=g&&(C.from>0||C.to-1&&r.ranges.length>1)this.newSel=r.replaceRange(Be.range(g,l));else if(e.lineWrapping&&g==l&&!(r.main.empty&&r.main.head==l)&&e.inputState.lastTouchTime>Date.now()-100){let d=e.coordsAtPos(l,-1),B=0;d&&(B=e.inputState.lastTouchY<=d.bottom?-1:1),this.newSel=Be.create([Be.cursor(l,B)])}else this.newSel=Be.single(g,l)}}};function sH(i,e,A,t){if(i.isComposite()){let n=-1,o=-1,a=-1,r=-1;for(let s=0,l=t,g=t;sA)return sH(C,e,A,l);if(d>=e&&n==-1&&(n=s,o=l),l>A&&C.dom.parentNode==i.dom){a=s,r=g;break}g=d,l=d+C.breakAfter}return{from:o,to:r<0?t+i.length:r,startDOM:(n?i.children[n-1].dom.nextSibling:null)||i.dom.firstChild,endDOM:a=0?i.children[a].dom:null}}else return i.isText()?{from:t,to:t+i.length,startDOM:i.dom,endDOM:i.dom.nextSibling}:null}function lH(i,e){let A,{newSel:t}=e,{state:n}=i,o=n.selection.main,a=i.inputState.lastKeyTime>Date.now()-100?i.inputState.lastKeyCode:-1;if(e.bounds){let{from:r,to:s}=e.bounds,l=o.from,g=null;(a===8||Ct.android&&e.text.length=r&&o.to<=s&&(e.typeOver||C!=e.text)&&C.slice(0,o.from-r)==e.text.slice(0,o.from-r)&&C.slice(o.to-r)==e.text.slice(d=e.text.length-(C.length-(o.to-r)))?A={from:o.from,to:o.to,insert:On.of(e.text.slice(o.from-r,d).split(ZB))}:(B=gH(C,e.text,l-r,g))&&(Ct.chrome&&a==13&&B.toB==B.from+2&&e.text.slice(B.from,B.toB)==ZB+ZB&&B.toB--,A={from:r+B.from,to:r+B.toA,insert:On.of(e.text.slice(B.from,B.toB).split(ZB))})}else t&&(!i.hasFocus&&n.facet(lC)||r8(t,o))&&(t=null);if(!A&&!t)return!1;if((Ct.mac||Ct.android)&&A&&A.from==A.to&&A.from==o.head-1&&/^\. ?$/.test(A.insert.toString())&&i.contentDOM.getAttribute("autocorrect")=="off"?(t&&A.insert.length==2&&(t=Be.single(t.main.anchor-1,t.main.head-1)),A={from:A.from,to:A.to,insert:On.of([A.insert.toString().replace("."," ")])}):n.doc.lineAt(o.from).toDate.now()-50?A={from:o.from,to:o.to,insert:n.toText(i.inputState.insertingText)}:Ct.chrome&&A&&A.from==A.to&&A.from==o.head&&A.insert.toString()==` - `&&i.lineWrapping&&(t&&(t=Be.single(t.main.anchor-1,t.main.head-1)),A={from:o.from,to:o.to,insert:On.of([" "])}),A)return fS(i,A,t,a);if(t&&!r8(t,o)){let r=!1,s="select";return i.inputState.lastSelectionTime>Date.now()-50&&(i.inputState.lastSelectionOrigin=="select"&&(r=!0),s=i.inputState.lastSelectionOrigin,s=="select.pointer"&&(t=rH(n.facet(C4).map(l=>l(i)),t))),i.dispatch({selection:t,scrollIntoView:r,userEvent:s}),!0}else return!1}function fS(i,e,A,t=-1){if(Ct.ios&&i.inputState.flushIOSKey(e))return!0;let n=i.state.selection.main;if(Ct.android&&(e.to==n.to&&(e.from==n.from||e.from==n.from-1&&i.state.sliceDoc(e.from,n.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&ih(i.contentDOM,"Enter",13)||(e.from==n.from-1&&e.to==n.to&&e.insert.length==0||t==8&&e.insert.lengthn.head)&&ih(i.contentDOM,"Backspace",8)||e.from==n.from&&e.to==n.to+1&&e.insert.length==0&&ih(i.contentDOM,"Delete",46)))return!0;let o=e.insert.toString();i.inputState.composing>=0&&i.inputState.composing++;let a,r=()=>a||(a=kcA(i,e,A));return i.state.facet(ZY).some(s=>s(i,e.from,e.to,o,r))||i.dispatch(r()),!0}function kcA(i,e,A){let t,n=i.state,o=n.selection.main,a=-1;if(e.from==e.to&&e.fromo.to){let s=e.fromC(i)),l,s);e.from==g&&(a=g)}if(a>-1)t={changes:e,selection:Be.cursor(e.from+e.insert.length,-1)};else if(e.from>=o.from&&e.to<=o.to&&e.to-e.from>=(o.to-o.from)/3&&(!A||A.main.empty&&A.main.from==e.from+e.insert.length)&&i.inputState.composing<0){let s=o.frome.to?n.sliceDoc(e.to,o.to):"";t=n.replaceSelection(i.state.toText(s+e.insert.sliceString(0,void 0,i.state.lineBreak)+l))}else{let s=n.changes(e),l=A&&A.main.to<=s.newLength?A.main:void 0;if(n.selection.ranges.length>1&&(i.inputState.composing>=0||i.inputState.compositionPendingChange)&&e.to<=o.to+10&&e.to>=o.to-10){let g=i.state.sliceDoc(e.from,e.to),C,d=A&&aH(i,A.main.head);if(d){let u=e.insert.length-(e.to-e.from);C={from:d.from,to:d.to-u}}else C=i.state.doc.lineAt(o.head);let B=o.to-e.to;t=n.changeByRange(u=>{if(u.from==o.from&&u.to==o.to)return{changes:s,range:l||u.map(s)};let E=u.to-B,f=E-g.length;if(i.state.sliceDoc(f,E)!=g||E>=C.from&&f<=C.to)return{range:u};let m=n.changes({from:f,to:E,insert:e.insert}),v=u.to-o.to;return{changes:m,range:l?Be.range(Math.max(0,l.anchor+v),Math.max(0,l.head+v)):u.map(m)}})}else t={changes:s,selection:l&&n.selection.replaceRange(l)}}let r="input.type";return(i.composing||i.inputState.compositionPendingChange&&i.inputState.compositionEndedAt>Date.now()-50)&&(i.inputState.compositionPendingChange=!1,r+=".compose",i.inputState.compositionFirstChange&&(r+=".start",i.inputState.compositionFirstChange=!1)),n.update(t,{userEvent:r,scrollIntoView:!0})}function gH(i,e,A,t){let n=Math.min(i.length,e.length),o=0;for(;o0&&r>0&&i.charCodeAt(a-1)==e.charCodeAt(r-1);)a--,r--;if(t=="end"){let s=Math.max(0,o-Math.min(a,r));A-=a+s-o}if(a=a?o-A:0;o-=s,r=o+(r-a),a=o}else if(r=r?o-A:0;o-=s,a=o+(a-r),r=o}return{from:o,toA:a,toB:r}}function _cA(i){let e=[];if(i.root.activeElement!=i.contentDOM)return e;let{anchorNode:A,anchorOffset:t,focusNode:n,focusOffset:o}=i.observer.selectionRange;return A&&(e.push(new a8(A,t)),(n!=A||o!=t)&&e.push(new a8(n,o))),e}function xcA(i,e){if(i.length==0)return null;let A=i[0].pos,t=i.length==2?i[1].pos:A;return A>-1&&t>-1?Be.single(A+e,t+e):null}function r8(i,e){return e.head==i.main.head&&e.anchor==i.main.anchor}var Y9=class{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,Ct.safari&&e.contentDOM.addEventListener("input",()=>null),Ct.gecko&&PcA(e.contentDOM.ownerDocument)}handleEvent(e){!UcA(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,A){let t=this.handlers[e];if(t){for(let n of t.observers)n(this.view,A);for(let n of t.handlers){if(A.defaultPrevented)break;if(n(this.view,A)){A.preventDefault();break}}}}ensureHandlers(e){let A=RcA(e),t=this.handlers,n=this.view.contentDOM;for(let o in A)if(o!="scroll"){let a=!A[o].handlers.length,r=t[o];r&&a!=!r.handlers.length&&(n.removeEventListener(o,this.handleEvent),r=null),r||n.addEventListener(o,this.handleEvent,{passive:a})}for(let o in t)o!="scroll"&&!A[o]&&n.removeEventListener(o,this.handleEvent);this.handlers=A}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&CH.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),Ct.android&&Ct.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;let A;return Ct.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&!e.shiftKey&&((A=cH.find(t=>t.keyCode==e.keyCode))&&!e.ctrlKey||NcA.indexOf(e.key)>-1&&e.ctrlKey)?(this.pendingIOSKey=A||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(e){let A=this.pendingIOSKey;return!A||A.key=="Enter"&&e&&e.from0?!0:Ct.safari&&!Ct.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}};function aY(i,e){return(A,t)=>{try{return e.call(i,t,A)}catch(n){Gr(A.state,n)}}}function RcA(i){let e=Object.create(null);function A(t){return e[t]||(e[t]={observers:[],handlers:[]})}for(let t of i){let n=t.spec,o=n&&n.plugin.domEventHandlers,a=n&&n.plugin.domEventObservers;if(o)for(let r in o){let s=o[r];s&&A(r).handlers.push(aY(t.value,s))}if(a)for(let r in a){let s=a[r];s&&A(r).observers.push(aY(t.value,s))}}for(let t in sc)A(t).handlers.push(sc[t]);for(let t in cl)A(t).observers.push(cl[t]);return e}var cH=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],NcA="dthko",CH=[16,17,18,20,91,92,224,225],T6=6;function O6(i){return Math.max(0,i)*.7+8}function FcA(i,e){return Math.max(Math.abs(i.clientX-e.clientX),Math.abs(i.clientY-e.clientY))}var H9=class{constructor(e,A,t,n){this.view=e,this.startEvent=A,this.style=t,this.mustSelect=n,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=A,this.scrollParents=GY(e.contentDOM),this.atoms=e.state.facet(C4).map(a=>a(e));let o=e.contentDOM.ownerDocument;o.addEventListener("mousemove",this.move=this.move.bind(this)),o.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=A.shiftKey,this.multiple=e.state.facet(ir.allowMultipleSelections)&&LcA(e,A),this.dragging=KcA(e,A)&&BH(A)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&FcA(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let A=0,t=0,n=0,o=0,a=this.view.win.innerWidth,r=this.view.win.innerHeight;this.scrollParents.x&&({left:n,right:a}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:o,bottom:r}=this.scrollParents.y.getBoundingClientRect());let s=pS(this.view);e.clientX-s.left<=n+T6?A=-O6(n-e.clientX):e.clientX+s.right>=a-T6&&(A=O6(e.clientX-a)),e.clientY-s.top<=o+T6?t=-O6(o-e.clientY):e.clientY+s.bottom>=r-T6&&(t=O6(e.clientY-r)),this.setScrollSpeed(A,t)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,A){this.scrollSpeed={x:e,y:A},e||A?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:A}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),A&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=A,A=0),(e||A)&&this.view.win.scrollBy(e,A),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:A}=this,t=rH(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!t.eq(A.state.selection,this.dragging===!1))&&this.view.dispatch({selection:t,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(A=>A.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}};function LcA(i,e){let A=i.state.facet(jY);return A.length?A[0](e):Ct.mac?e.metaKey:e.ctrlKey}function GcA(i,e){let A=i.state.facet(VY);return A.length?A[0](e):Ct.mac?!e.altKey:!e.ctrlKey}function KcA(i,e){let{main:A}=i.state.selection;if(A.empty)return!1;let t=g4(i.root);if(!t||t.rangeCount==0)return!0;let n=t.getRangeAt(0).getClientRects();for(let o=0;o=e.clientX&&a.top<=e.clientY&&a.bottom>=e.clientY)return!0}return!1}function UcA(i,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let A=e.target,t;A!=i.contentDOM;A=A.parentNode)if(!A||A.nodeType==11||(t=_a.get(A))&&t.isWidget()&&!t.isHidden&&t.widget.ignoreEvent(e))return!1;return!0}var sc=Object.create(null),cl=Object.create(null),dH=Ct.ie&&Ct.ie_version<15||Ct.ios&&Ct.webkit_version<604;function TcA(i){let e=i.dom.parentNode;if(!e)return;let A=e.appendChild(document.createElement("textarea"));A.style.cssText="position: fixed; left: -10000px; top: 10px",A.focus(),setTimeout(()=>{i.focus(),A.remove(),IH(i,A.value)},50)}function u8(i,e,A){for(let t of i.facet(e))A=t(A,i);return A}function IH(i,e){e=u8(i.state,ES,e);let{state:A}=i,t,n=1,o=A.toText(e),a=o.lines==A.selection.ranges.length;if(z9!=null&&A.selection.ranges.every(s=>s.empty)&&z9==o.toString()){let s=-1;t=A.changeByRange(l=>{let g=A.doc.lineAt(l.from);if(g.from==s)return{range:l};s=g.from;let C=A.toText((a?o.line(n++).text:e)+A.lineBreak);return{changes:{from:g.from,insert:C},range:Be.cursor(l.from+C.length)}})}else a?t=A.changeByRange(s=>{let l=o.line(n++);return{changes:{from:s.from,to:s.to,insert:l.text},range:Be.cursor(s.from+l.length)}}):t=A.replaceSelection(o);i.dispatch(t,{userEvent:"input.paste",scrollIntoView:!0})}cl.scroll=i=>{i.inputState.lastScrollTop=i.scrollDOM.scrollTop,i.inputState.lastScrollLeft=i.scrollDOM.scrollLeft};cl.wheel=cl.mousewheel=i=>{i.inputState.lastWheelEvent=Date.now()};sc.keydown=(i,e)=>(i.inputState.setSelectionOrigin("select"),e.keyCode==27&&i.inputState.tabFocusMode!=0&&(i.inputState.tabFocusMode=Date.now()+2e3),!1);cl.touchstart=(i,e)=>{let A=i.inputState,t=e.targetTouches[0];A.lastTouchTime=Date.now(),t&&(A.lastTouchX=t.clientX,A.lastTouchY=t.clientY),A.setSelectionOrigin("select.pointer")};cl.touchmove=i=>{i.inputState.setSelectionOrigin("select.pointer")};sc.mousedown=(i,e)=>{if(i.observer.flush(),i.inputState.lastTouchTime>Date.now()-2e3)return!1;let A=null;for(let t of i.state.facet(qY))if(A=t(i,e),A)break;if(!A&&e.button==0&&(A=JcA(i,e)),A){let t=!i.hasFocus;i.inputState.startMouseSelection(new H9(i,e,A,t)),t&&i.observer.ignore(()=>{KY(i.contentDOM);let o=i.root.activeElement;o&&!o.contains(i.contentDOM)&&o.blur()});let n=i.inputState.mouseSelection;if(n)return n.start(e),n.dragging===!1}else i.inputState.setSelectionOrigin("select.pointer");return!1};function rY(i,e,A,t){if(t==1)return Be.cursor(e,A);if(t==2)return wcA(i.state,e,A);{let n=i.docView.lineAt(e,A),o=i.state.doc.lineAt(n?n.posAtEnd:e),a=n?n.posAtStart:o.from,r=n?n.posAtEnd:o.to;return rDate.now()-400&&Math.abs(e.clientX-i.clientX)<2&&Math.abs(e.clientY-i.clientY)<2?(lY+1)%3:1}function JcA(i,e){let A=i.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),t=BH(e),n=i.state.selection;return{update(o){o.docChanged&&(A.pos=o.changes.mapPos(A.pos),n=n.map(o.changes))},get(o,a,r){let s=i.posAndSideAtCoords({x:o.clientX,y:o.clientY},!1),l,g=rY(i,s.pos,s.assoc,t);if(A.pos!=s.pos&&!a){let C=rY(i,A.pos,A.assoc,t),d=Math.min(C.from,g.from),B=Math.max(C.to,g.to);g=d1&&(l=YcA(n,s.pos))?l:r?n.addRange(g):Be.create([g])}}}function YcA(i,e){for(let A=0;A=e)return Be.create(i.ranges.slice(0,A).concat(i.ranges.slice(A+1)),i.mainIndex==A?0:i.mainIndex-(i.mainIndex>A?1:0))}return null}sc.dragstart=(i,e)=>{let{selection:{main:A}}=i.state;if(e.target.draggable){let n=i.docView.tile.nearest(e.target);if(n&&n.isWidget()){let o=n.posAtStart,a=o+n.length;(o>=A.to||a<=A.from)&&(A=Be.range(o,a))}}let{inputState:t}=i;return t.mouseSelection&&(t.mouseSelection.dragging=!0),t.draggedContent=A,e.dataTransfer&&(e.dataTransfer.setData("Text",u8(i.state,QS,i.state.sliceDoc(A.from,A.to))),e.dataTransfer.effectAllowed="copyMove"),!1};sc.dragend=i=>(i.inputState.draggedContent=null,!1);function cY(i,e,A,t){if(A=u8(i.state,ES,A),!A)return;let n=i.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:o}=i.inputState,a=t&&o&&GcA(i,e)?{from:o.from,to:o.to}:null,r={from:n,insert:A},s=i.state.changes(a?[a,r]:r);i.focus(),i.dispatch({changes:s,selection:{anchor:s.mapPos(n,-1),head:s.mapPos(n,1)},userEvent:a?"move.drop":"input.drop"}),i.inputState.draggedContent=null}sc.drop=(i,e)=>{if(!e.dataTransfer)return!1;if(i.state.readOnly)return!0;let A=e.dataTransfer.files;if(A&&A.length){let t=Array(A.length),n=0,o=()=>{++n==A.length&&cY(i,e,t.filter(a=>a!=null).join(i.state.lineBreak),!1)};for(let a=0;a{/[\x00-\x08\x0e-\x1f]{2}/.test(r.result)||(t[a]=r.result),o()},r.readAsText(A[a])}return!0}else{let t=e.dataTransfer.getData("Text");if(t)return cY(i,e,t,!0),!0}return!1};sc.paste=(i,e)=>{if(i.state.readOnly)return!0;i.observer.flush();let A=dH?null:e.clipboardData;return A?(IH(i,A.getData("text/plain")||A.getData("text/uri-list")),!0):(TcA(i),!1)};function HcA(i,e){let A=i.dom.parentNode;if(!A)return;let t=A.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.value=e,t.focus(),t.selectionEnd=e.length,t.selectionStart=0,setTimeout(()=>{t.remove(),i.focus()},50)}function zcA(i){let e=[],A=[],t=!1;for(let n of i.selection.ranges)n.empty||(e.push(i.sliceDoc(n.from,n.to)),A.push(n));if(!e.length){let n=-1;for(let{from:o}of i.selection.ranges){let a=i.doc.lineAt(o);a.number>n&&(e.push(a.text),A.push({from:a.from,to:Math.min(i.doc.length,a.to+1)})),n=a.number}t=!0}return{text:u8(i,QS,e.join(i.lineBreak)),ranges:A,linewise:t}}var z9=null;sc.copy=sc.cut=(i,e)=>{if(!$u(i.contentDOM,i.observer.selectionRange))return!1;let{text:A,ranges:t,linewise:n}=zcA(i.state);if(!A&&!n)return!1;z9=n?A:null,e.type=="cut"&&!i.state.readOnly&&i.dispatch({changes:t,scrollIntoView:!0,userEvent:"delete.cut"});let o=dH?null:e.clipboardData;return o?(o.clearData(),o.setData("text/plain",A),!0):(HcA(i,A),!1)};var hH=sl.define();function EH(i,e){let A=[];for(let t of i.facet(XY)){let n=t(i,e);n&&A.push(n)}return A.length?i.update({effects:A,annotations:hH.of(!0)}):null}function QH(i){setTimeout(()=>{let e=i.hasFocus;if(e!=i.inputState.notifiedFocused){let A=EH(i.state,e);A?i.dispatch(A):i.update([])}},10)}cl.focus=i=>{i.inputState.lastFocusTime=Date.now(),!i.scrollDOM.scrollTop&&(i.inputState.lastScrollTop||i.inputState.lastScrollLeft)&&(i.scrollDOM.scrollTop=i.inputState.lastScrollTop,i.scrollDOM.scrollLeft=i.inputState.lastScrollLeft),QH(i)};cl.blur=i=>{i.observer.clearSelectionRange(),QH(i)};cl.compositionstart=cl.compositionupdate=i=>{i.observer.editContext||(i.inputState.compositionFirstChange==null&&(i.inputState.compositionFirstChange=!0),i.inputState.composing<0&&(i.inputState.composing=0))};cl.compositionend=i=>{i.observer.editContext||(i.inputState.composing=-1,i.inputState.compositionEndedAt=Date.now(),i.inputState.compositionPendingKey=!0,i.inputState.compositionPendingChange=i.observer.pendingRecords().length>0,i.inputState.compositionFirstChange=null,Ct.chrome&&Ct.android?i.observer.flushSoon():i.inputState.compositionPendingChange?Promise.resolve().then(()=>i.observer.flush()):setTimeout(()=>{i.inputState.composing<0&&i.docView.hasComposition&&i.update([])},50))};cl.contextmenu=i=>{i.inputState.lastContextMenu=Date.now()};sc.beforeinput=(i,e)=>{var A,t;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(i.inputState.insertingText=e.data,i.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&i.observer.editContext){let o=(A=e.dataTransfer)===null||A===void 0?void 0:A.getData("text/plain"),a=e.getTargetRanges();if(o&&a.length){let r=a[0],s=i.posAtDOM(r.startContainer,r.startOffset),l=i.posAtDOM(r.endContainer,r.endOffset);return fS(i,{from:s,to:l,insert:i.state.toText(o)},null),!0}}let n;if(Ct.chrome&&Ct.android&&(n=cH.find(o=>o.inputType==e.inputType))&&(i.observer.delayAndroidKey(n.key,n.keyCode),n.key=="Backspace"||n.key=="Delete")){let o=((t=window.visualViewport)===null||t===void 0?void 0:t.height)||0;setTimeout(()=>{var a;(((a=window.visualViewport)===null||a===void 0?void 0:a.height)||0)>o+10&&i.hasFocus&&(i.contentDOM.blur(),i.focus())},100)}return Ct.ios&&e.inputType=="deleteContentForward"&&i.observer.flushSoon(),Ct.safari&&e.inputType=="insertText"&&i.inputState.composing>=0&&setTimeout(()=>cl.compositionend(i,e),20),!1};var CY=new Set;function PcA(i){CY.has(i)||(CY.add(i),i.addEventListener("copy",()=>{}),i.addEventListener("cut",()=>{}))}var dY=["pre-wrap","normal","pre-line","break-spaces"],sh=!1;function IY(){sh=!1}var P9=class{constructor(e){this.lineWrapping=e,this.doc=On.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,A){let t=this.doc.lineAt(A).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(t+=Math.max(0,Math.ceil((A-e-t*this.lineLength*.5)/this.lineLength))),this.lineHeight*t}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return dY.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let A=!1;for(let t=0;t-1,s=Math.abs(A-this.lineHeight)>.3||this.lineWrapping!=r||Math.abs(t-this.charWidth)>.1;if(this.lineWrapping=r,this.lineHeight=A,this.charWidth=t,this.textHeight=n,this.lineLength=o,s){this.heightSamples={};for(let l=0;l0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>q6&&(sh=!0),this.height=e)}replace(e,A,t){return i.of(t)}decomposeLeft(e,A){A.push(this)}decomposeRight(e,A){A.push(this)}applyChanges(e,A,t,n){let o=this,a=t.doc;for(let r=n.length-1;r>=0;r--){let{fromA:s,toA:l,fromB:g,toB:C}=n[r],d=o.lineAt(s,Qa.ByPosNoHeight,t.setDoc(A),0,0),B=d.to>=l?d:o.lineAt(l,Qa.ByPosNoHeight,t,0,0);for(C+=B.to-l,l=B.to;r>0&&d.from<=n[r-1].toA;)s=n[r-1].fromA,g=n[r-1].fromB,r--,so*2){let r=e[A-1];r.break?e.splice(--A,1,r.left,null,r.right):e.splice(--A,1,r.left,r.right),t+=1+r.break,n-=r.size}else if(o>n*2){let r=e[t];r.break?e.splice(t,1,r.left,null,r.right):e.splice(t,1,r.left,r.right),t+=2+r.break,o-=r.size}else break;else if(n=o&&a(this.lineAt(0,Qa.ByPos,t,n,o))}setMeasuredHeight(e){let A=e.heights[e.index++];A<0?(this.spaceAbove=-A,A=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(A)}updateHeight(e,A=0,t=!1,n){return n&&n.from<=A&&n.more&&this.setMeasuredHeight(n),this.outdated=!1,this}toString(){return`block(${this.length})`}},dg=class i extends l8{constructor(e,A,t){super(e,A,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=t}mainBlock(e,A){return new ac(A,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,A,t){let n=t[0];return t.length==1&&(n instanceof i||n instanceof M2&&n.flags&4)&&Math.abs(this.length-n.length)<10?(n instanceof M2?n=new i(n.length,this.height,this.spaceAbove):n.height=this.height,this.outdated||(n.outdated=!1),n):Nl.of(t)}updateHeight(e,A=0,t=!1,n){return n&&n.from<=A&&n.more?this.setMeasuredHeight(n):(t||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}},M2=class i extends Nl{constructor(e){super(e,0)}heightMetrics(e,A){let t=e.doc.lineAt(A).number,n=e.doc.lineAt(A+this.length).number,o=n-t+1,a,r=0;if(e.lineWrapping){let s=Math.min(this.height,e.lineHeight*o);a=s/o,this.length>o+1&&(r=(this.height-s)/(this.length-o-1))}else a=this.height/o;return{firstLine:t,lastLine:n,perLine:a,perChar:r}}blockAt(e,A,t,n){let{firstLine:o,lastLine:a,perLine:r,perChar:s}=this.heightMetrics(A,n);if(A.lineWrapping){let l=n+(e0){let o=t[t.length-1];o instanceof i?t[t.length-1]=new i(o.length+n):t.push(null,new i(n-1))}if(e>0){let o=t[0];o instanceof i?t[0]=new i(e+o.length):t.unshift(new i(e-1),null)}return Nl.of(t)}decomposeLeft(e,A){A.push(new i(e-1),null)}decomposeRight(e,A){A.push(null,new i(this.length-e-1))}updateHeight(e,A=0,t=!1,n){let o=A+this.length;if(n&&n.from<=A+this.length&&n.more){let a=[],r=Math.max(A,n.from),s=-1;for(n.from>A&&a.push(new i(n.from-A-1).updateHeight(e,A));r<=o&&n.more;){let g=e.doc.lineAt(r).length;a.length&&a.push(null);let C=n.heights[n.index++],d=0;C<0&&(d=-C,C=n.heights[n.index++]),s==-1?s=C:Math.abs(C-s)>=q6&&(s=-2);let B=new dg(g,C,d);B.outdated=!1,a.push(B),r+=g+1}r<=o&&a.push(null,new i(o-r).updateHeight(e,r));let l=Nl.of(a);return(s<0||Math.abs(l.height-this.height)>=q6||Math.abs(s-this.heightMetrics(e,A).perLine)>=q6)&&(sh=!0),s8(this,l)}else(t||this.outdated)&&(this.setHeight(e.heightForGap(A,A+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}},V9=class extends Nl{constructor(e,A,t){super(e.length+A+t.length,e.height+t.height,A|(e.outdated||t.outdated?2:0)),this.left=e,this.right=t,this.size=e.size+t.size}get break(){return this.flags&1}blockAt(e,A,t,n){let o=t+this.left.height;return er))return l;let g=A==Qa.ByPosNoHeight?Qa.ByPosNoHeight:Qa.ByPos;return s?l.join(this.right.lineAt(r,g,t,a,r)):this.left.lineAt(r,g,t,n,o).join(l)}forEachLine(e,A,t,n,o,a){let r=n+this.left.height,s=o+this.left.length+this.break;if(this.break)e=s&&this.right.forEachLine(e,A,t,r,s,a);else{let l=this.lineAt(s,Qa.ByPos,t,n,o);e=e&&l.from<=A&&a(l),A>l.to&&this.right.forEachLine(l.to+1,A,t,r,s,a)}}replace(e,A,t){let n=this.left.length+this.break;if(Athis.left.length)return this.balanced(this.left,this.right.replace(e-n,A-n,t));let o=[];e>0&&this.decomposeLeft(e,o);let a=o.length;for(let r of t)o.push(r);if(e>0&&BY(o,a-1),A=t&&A.push(null)),e>t&&this.right.decomposeLeft(e-t,A)}decomposeRight(e,A){let t=this.left.length,n=t+this.break;if(e>=n)return this.right.decomposeRight(e-n,A);e2*A.size||A.size>2*e.size?Nl.of(this.break?[e,null,A]:[e,A]):(this.left=s8(this.left,e),this.right=s8(this.right,A),this.setHeight(e.height+A.height),this.outdated=e.outdated||A.outdated,this.size=e.size+A.size,this.length=e.length+this.break+A.length,this)}updateHeight(e,A=0,t=!1,n){let{left:o,right:a}=this,r=A+o.length+this.break,s=null;return n&&n.from<=A+o.length&&n.more?s=o=o.updateHeight(e,A,t,n):o.updateHeight(e,A,t),n&&n.from<=r+a.length&&n.more?s=a=a.updateHeight(e,r,t,n):a.updateHeight(e,r,t),s?this.balanced(o,a):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function BY(i,e){let A,t;i[e]==null&&(A=i[e-1])instanceof M2&&(t=i[e+1])instanceof M2&&i.splice(e-1,3,new M2(A.length+1+t.length))}var VcA=5,q9=class i{constructor(e,A){this.pos=e,this.oracle=A,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,A){if(this.lineStart>-1){let t=Math.min(A,this.lineEnd),n=this.nodes[this.nodes.length-1];n instanceof dg?n.length+=t-this.pos:(t>this.pos||!this.isCovered)&&this.nodes.push(new dg(t-this.pos,-1,0)),this.writtenTo=t,A>t&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=A}point(e,A,t){if(e=VcA)&&this.addLineDeco(n,o,a)}else A>e&&this.span(e,A);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:A}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=A,this.writtenToe&&this.nodes.push(new dg(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,A){let t=new M2(A-e);return this.oracle.doc.lineAt(e).to==A&&(t.flags|=4),t}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof dg)return e;let A=new dg(0,-1,0);return this.nodes.push(A),A}addBlock(e){this.enterLine();let A=e.deco;A&&A.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,A&&A.endSide>0&&(this.covering=e)}addLineDeco(e,A,t){let n=this.ensureLine();n.length+=t,n.collapsed+=t,n.widgetHeight=Math.max(n.widgetHeight,e),n.breaks+=A,this.writtenTo=this.pos=this.pos+t}finish(e){let A=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(A instanceof dg)&&!this.isCovered?this.nodes.push(new dg(0,-1,0)):(this.writtenTog.clientHeight||g.scrollWidth>g.clientWidth)&&C.overflow!="visible"){let d=g.getBoundingClientRect();o=Math.max(o,d.left),a=Math.min(a,d.right),r=Math.max(r,d.top),s=Math.min(l==i.parentNode?n.innerHeight:s,d.bottom)}l=C.position=="absolute"||C.position=="fixed"?g.offsetParent:g.parentNode}else if(l.nodeType==11)l=l.host;else break;return{left:o-A.left,right:Math.max(o,a)-A.left,top:r-(A.top+e),bottom:Math.max(r,s)-(A.top+e)}}function ZcA(i){let e=i.getBoundingClientRect(),A=i.ownerDocument.defaultView||window;return e.left0&&e.top0}function XcA(i,e){let A=i.getBoundingClientRect();return{left:0,right:A.right-A.left,top:e,bottom:A.bottom-(A.top+e)}}var o4=class{constructor(e,A,t,n){this.from=e,this.to=A,this.size=t,this.displaySize=n}static same(e,A){if(e.length!=A.length)return!1;for(let t=0;ttypeof n!="function"&&n.class=="cm-lineWrapping");this.heightOracle=new P9(t),this.stateDeco=EY(A),this.heightMap=Nl.empty().applyChanges(this.stateDeco,On.empty,this.heightOracle.setDoc(A.doc),[new rc(0,0,0,A.doc.length)]);for(let n=0;n<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());n++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Lt.set(this.lineGaps.map(n=>n.draw(this,!1))),this.scrollParent=e.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:A}=this.state.selection;for(let t=0;t<=1;t++){let n=t?A.head:A.anchor;if(!e.some(({from:o,to:a})=>n>=o&&n<=a)){let{from:o,to:a}=this.lineBlockAt(n);e.push(new $B(o,a))}}return this.viewports=e.sort((t,n)=>t.from-n.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?hY:new X9(this.heightOracle,this.heightMap,this.viewports),e.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(Zu(e,this.scaler))})}update(e,A=null){this.state=e.state;let t=this.stateDeco;this.stateDeco=EY(this.state);let n=e.changedRanges,o=rc.extendWithRanges(n,qcA(t,this.stateDeco,e?e.changes:Zr.empty(this.state.doc.length))),a=this.heightMap.height,r=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);IY(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),o),(this.heightMap.height!=a||sh)&&(e.flags|=2),r?(this.scrollAnchorPos=e.changes.mapPos(r.from,-1),this.scrollAnchorHeight=r.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=a);let s=o.length?this.mapViewport(this.viewport,e.changes):this.viewport;(A&&(A.range.heads.to)||!this.viewportIsAppropriate(s))&&(s=this.getViewport(0,A));let l=s.from!=this.viewport.from||s.to!=this.viewport.to;this.viewport=s,e.flags|=this.updateForViewport(),(l||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),A&&(this.scrollTarget=A),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet($Y)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:e}=this,A=e.contentDOM,t=window.getComputedStyle(A),n=this.heightOracle,o=t.whiteSpace;this.defaultTextDirection=t.direction=="rtl"?Lo.RTL:Lo.LTR;let a=this.heightOracle.mustRefreshForWrapping(o)||this.mustMeasureContent==="refresh",r=A.getBoundingClientRect(),s=a||this.mustMeasureContent||this.contentDOMHeight!=r.height;this.contentDOMHeight=r.height,this.mustMeasureContent=!1;let l=0,g=0;if(r.width&&r.height){let{scaleX:M,scaleY:x}=LY(A,r);(M>.005&&Math.abs(this.scaleX-M)>.005||x>.005&&Math.abs(this.scaleY-x)>.005)&&(this.scaleX=M,this.scaleY=x,l|=16,a=s=!0)}let C=(parseInt(t.paddingTop)||0)*this.scaleY,d=(parseInt(t.paddingBottom)||0)*this.scaleY;(this.paddingTop!=C||this.paddingBottom!=d)&&(this.paddingTop=C,this.paddingBottom=d,l|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(n.lineWrapping&&(s=!0),this.editorWidth=e.scrollDOM.clientWidth,l|=16);let B=GY(this.view.contentDOM,!1).y;B!=this.scrollParent&&(this.scrollParent=B,this.scrollAnchorHeight=-1,this.scrollOffset=0);let u=this.getScrollOffset();this.scrollOffset!=u&&(this.scrollAnchorHeight=-1,this.scrollOffset=u),this.scrolledToBottom=UY(this.scrollParent||e.win);let E=(this.printing?XcA:WcA)(A,this.paddingTop),f=E.top-this.pixelViewport.top,m=E.bottom-this.pixelViewport.bottom;this.pixelViewport=E;let v=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(v!=this.inView&&(this.inView=v,v&&(s=!0)),!this.inView&&!this.scrollTarget&&!ZcA(e.dom))return 0;let S=r.width;if((this.contentDOMWidth!=S||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=r.width,this.editorHeight=e.scrollDOM.clientHeight,l|=16),s){let M=e.docView.measureVisibleLineHeights(this.viewport);if(n.mustRefreshForHeights(M)&&(a=!0),a||n.lineWrapping&&Math.abs(S-this.contentDOMWidth)>n.charWidth){let{lineHeight:x,charWidth:F,textHeight:z}=e.docView.measureTextSize();a=x>0&&n.refresh(o,x,F,z,Math.max(5,S/F),M),a&&(e.docView.minWidth=0,l|=16)}f>0&&m>0?g=Math.max(f,m):f<0&&m<0&&(g=Math.min(f,m)),IY();for(let x of this.viewports){let F=x.from==this.viewport.from?M:e.docView.measureVisibleLineHeights(x);this.heightMap=(a?Nl.empty().applyChanges(this.stateDeco,On.empty,this.heightOracle,[new rc(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(n,0,a,new j9(x.from,F))}sh&&(l|=2)}let k=!this.viewportIsAppropriate(this.viewport,g)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return k&&(l&2&&(l|=this.updateScaler()),this.viewport=this.getViewport(g,this.scrollTarget),l|=this.updateForViewport()),(l&2||k)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(a?[]:this.lineGaps,e)),l|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),l}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,A){let t=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),n=this.heightMap,o=this.heightOracle,{visibleTop:a,visibleBottom:r}=this,s=new $B(n.lineAt(a-t*1e3,Qa.ByHeight,o,0,0).from,n.lineAt(r+(1-t)*1e3,Qa.ByHeight,o,0,0).to);if(A){let{head:l}=A.range;if(ls.to){let g=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),C=n.lineAt(l,Qa.ByPos,o,0,0),d;A.y=="center"?d=(C.top+C.bottom)/2-g/2:A.y=="start"||A.y=="nearest"&&l=r+Math.max(10,Math.min(t,250)))&&n>a-2*1e3&&o>1,a=n<<1;if(this.defaultTextDirection!=Lo.LTR&&!t)return[];let r=[],s=(g,C,d,B)=>{if(C-gg&&mm.from>=d.from&&m.to<=d.to&&Math.abs(m.from-g)m.fromv));if(!f){if(CS.from<=C&&S.to>=C)){let S=A.moveToLineBoundary(Be.cursor(C),!1,!0).head;S>g&&(C=S)}let m=this.gapSize(d,g,C,B),v=t||m<2e6?m:2e6;f=new o4(g,C,m,v)}r.push(f)},l=g=>{if(g.length2e6)for(let x of e)x.from>=g.from&&x.fromg.from&&s(g.from,B,g,C),uA.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let A=this.stateDeco;this.lineGaps.length&&(A=A.concat(this.lineGapDeco));let t=[];uo.spans(A,this.viewport.from,this.viewport.to,{span(o,a){t.push({from:o,to:a})},point(){}},20);let n=0;if(t.length!=this.visibleRanges.length)n=12;else for(let o=0;o=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(A=>A.from<=e&&A.to>=e)||Zu(this.heightMap.lineAt(e,Qa.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(A=>A.top<=e&&A.bottom>=e)||Zu(this.heightMap.lineAt(this.scaler.fromDOM(e),Qa.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return(this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top)*this.scaleY}scrollAnchorAt(e){let A=this.lineBlockAtHeight(e+8);return A.from>=this.viewport.from||this.viewportLines[0].top-e>200?A:this.viewportLines[0]}elementAtHeight(e){return Zu(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}},$B=class{constructor(e,A){this.from=e,this.to=A}};function $cA(i,e,A){let t=[],n=i,o=0;return uo.spans(A,i,e,{span(){},point(a,r){a>n&&(t.push({from:n,to:a}),o+=a-n),n=r}},20),n=1)return e[e.length-1].to;let t=Math.floor(i*A);for(let n=0;;n++){let{from:o,to:a}=e[n],r=a-o;if(t<=r)return o+t;t-=r}}function Y6(i,e){let A=0;for(let{from:t,to:n}of i.ranges){if(e<=n){A+=e-t;break}A+=n-t}return A/i.total}function A0A(i,e){for(let A of i)if(e(A))return A}var hY={toDOM(i){return i},fromDOM(i){return i},scale:1,eq(i){return i==this}};function EY(i){let e=i.facet(Q8).filter(t=>typeof t!="function"),A=i.facet(uS).filter(t=>typeof t!="function");return A.length&&e.push(uo.join(A)),e}var X9=class i{constructor(e,A,t){let n=0,o=0,a=0;this.viewports=t.map(({from:r,to:s})=>{let l=A.lineAt(r,Qa.ByPos,e,0,0).top,g=A.lineAt(s,Qa.ByPos,e,0,0).bottom;return n+=g-l,{from:r,to:s,top:l,bottom:g,domTop:0,domBottom:0}}),this.scale=(7e6-n)/(A.height-n);for(let r of this.viewports)r.domTop=a+(r.top-o)*this.scale,a=r.domBottom=r.domTop+(r.bottom-r.top),o=r.bottom}toDOM(e){for(let A=0,t=0,n=0;;A++){let o=AA.from==e.viewports[t].from&&A.to==e.viewports[t].to):!1}};function Zu(i,e){if(e.scale==1)return i;let A=e.toDOM(i.top),t=e.toDOM(i.bottom);return new ac(i.from,i.length,A,t-A,Array.isArray(i._content)?i._content.map(n=>Zu(n,e)):i._content)}var H6=nt.define({combine:i=>i.join(" ")}),I9=nt.define({combine:i=>i.indexOf(!0)>-1}),$9=Cg.newName(),uH=Cg.newName(),pH=Cg.newName(),fH={"&light":"."+uH,"&dark":"."+pH};function AS(i,e,A){return new Cg(e,{finish(t){return/&/.test(t)?t.replace(/&\w*/,n=>{if(n=="&")return i;if(!A||!A[n])throw new RangeError(`Unsupported selector: ${n}`);return A[n]}):i+" "+t}})}var e0A=AS("."+$9,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},fH),t0A={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},B9=Ct.ie&&Ct.ie_version<=11,eS=class{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new D9,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(A=>{for(let t of A)this.queue.push(t);(Ct.ie&&Ct.ie_version<=11||Ct.ios&&e.composing)&&A.some(t=>t.type=="childList"&&t.removedNodes.length||t.type=="characterData"&&t.oldValue.length>t.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&Ct.android&&e.constructor.EDIT_CONTEXT!==!1&&!(Ct.chrome&&Ct.chrome_version<126)&&(this.editContext=new tS(e),e.state.facet(lC)&&(e.contentDOM.editContext=this.editContext.editContext)),B9&&(this.onCharData=A=>{this.queue.push({target:A.target,type:"characterData",oldValue:A.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var A;((A=this.view.docView)===null||A===void 0?void 0:A.lastUpdate){this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),A.length>0&&A[A.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(A=>{A.length>0&&A[A.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((A,t)=>A!=e[t]))){this.gapIntersection.disconnect();for(let A of e)this.gapIntersection.observe(A);this.gaps=e}}onSelectionChange(e){let A=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:t}=this,n=this.selectionRange;if(t.state.facet(lC)?t.root.activeElement!=this.dom:!$u(this.dom,n))return;let o=n.anchorNode&&t.docView.tile.nearest(n.anchorNode);if(o&&o.isWidget()&&o.widget.ignoreEvent(e)){A||(this.selectionChanged=!1);return}(Ct.ie&&Ct.ie_version<=11||Ct.android&&Ct.chrome)&&!t.state.selection.main.empty&&n.focusNode&&A4(n.focusNode,n.focusOffset,n.anchorNode,n.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,A=g4(e.root);if(!A)return!1;let t=Ct.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&i0A(this.view,A)||A;if(!t||this.selectionRange.eq(t))return!1;let n=$u(this.dom,t);return n&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime{let o=this.delayedAndroidKey;o&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=o.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&o.force&&ih(this.dom,o.key,o.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(n)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:A,force:this.lastChange{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let A=-1,t=-1,n=!1;for(let o of e){let a=this.readMutation(o);a&&(a.typeOver&&(n=!0),A==-1?{from:A,to:t}=a:(A=Math.min(a.from,A),t=Math.max(a.to,t)))}return{from:A,to:t,typeOver:n}}readChange(){let{from:e,to:A,typeOver:t}=this.processRecords(),n=this.selectionChanged&&$u(this.dom,this.selectionRange);if(e<0&&!n)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let o=new J9(this.view,e,A,t);return this.view.docView.domChanged={newSel:o.newSel?o.newSel.main:null},o}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let A=this.readChange();if(!A)return this.view.requestMeasure(),!1;let t=this.view.state,n=lH(this.view,A);return this.view.state==t&&(A.domChanged||A.newSel&&!r8(this.view.state.selection,A.newSel.main))&&this.view.update([]),n}readMutation(e){let A=this.view.docView.tile.nearest(e.target);if(!A||A.isWidget())return null;if(A.markDirty(e.type=="attributes"),e.type=="childList"){let t=QY(A,e.previousSibling||e.target.previousSibling,-1),n=QY(A,e.nextSibling||e.target.nextSibling,1);return{from:t?A.posAfter(t):A.posAtStart,to:n?A.posBefore(n):A.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:A.posAtStart,to:A.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(lC)!=e.state.facet(lC)&&(e.view.contentDOM.editContext=e.state.facet(lC)?this.editContext.editContext:null))}destroy(){var e,A,t;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(A=this.gapIntersection)===null||A===void 0||A.disconnect(),(t=this.resizeScroll)===null||t===void 0||t.disconnect();for(let n of this.scrollTargets)n.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}};function QY(i,e,A){for(;e;){let t=_a.get(e);if(t&&t.parent==i)return t;let n=e.parentNode;e=n!=i.dom?n:A>0?e.nextSibling:e.previousSibling}return null}function uY(i,e){let A=e.startContainer,t=e.startOffset,n=e.endContainer,o=e.endOffset,a=i.docView.domAtPos(i.state.selection.main.anchor,1);return A4(a.node,a.offset,n,o)&&([A,t,n,o]=[n,o,A,t]),{anchorNode:A,anchorOffset:t,focusNode:n,focusOffset:o}}function i0A(i,e){if(e.getComposedRanges){let n=e.getComposedRanges(i.root)[0];if(n)return uY(i,n)}let A=null;function t(n){n.preventDefault(),n.stopImmediatePropagation(),A=n.getTargetRanges()[0]}return i.contentDOM.addEventListener("beforeinput",t,!0),i.dom.ownerDocument.execCommand("indent"),i.contentDOM.removeEventListener("beforeinput",t,!0),A?uY(i,A):null}var tS=class{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let A=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=t=>{let n=e.state.selection.main,{anchor:o,head:a}=n,r=this.toEditorPos(t.updateRangeStart),s=this.toEditorPos(t.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:t.updateRangeStart,editorBase:r,drifted:!1});let l=s-r>t.text.length;r==this.from&&othis.to&&(s=o);let g=gH(e.state.sliceDoc(r,s),t.text,(l?n.from:n.to)-r,l?"end":null);if(!g){let d=Be.single(this.toEditorPos(t.selectionStart),this.toEditorPos(t.selectionEnd));r8(d,n)||e.dispatch({selection:d,userEvent:"select"});return}let C={from:g.from+r,to:g.toA+r,insert:On.of(t.text.slice(g.from,g.toB).split(` -`))};if((Ct.mac||Ct.android)&&C.from==a-1&&/^\. ?$/.test(t.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(C={from:r,to:s,insert:On.of([t.text.replace("."," ")])}),this.pendingContextChange=C,!e.state.readOnly){let d=this.to-this.from+(C.to-C.from+C.insert.length);fS(e,C,Be.single(this.toEditorPos(t.selectionStart,d),this.toEditorPos(t.selectionEnd,d)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),C.from=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(A.text.slice(Math.max(0,t.updateRangeStart-1),Math.min(A.text.length,t.updateRangeStart+1)))&&this.handlers.compositionend(t)},this.handlers.characterboundsupdate=t=>{let n=[],o=null;for(let a=this.toEditorPos(t.rangeStart),r=this.toEditorPos(t.rangeEnd);a{let n=[];for(let o of t.getTextFormats()){let a=o.underlineStyle,r=o.underlineThickness;if(!/none/i.test(a)&&!/none/i.test(r)){let s=this.toEditorPos(o.rangeStart),l=this.toEditorPos(o.rangeEnd);if(s{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:t}=this.composing;this.composing=null,t&&this.reset(e.state)}};for(let t in this.handlers)A.addEventListener(t,this.handlers[t]);this.measureReq={read:t=>{this.editContext.updateControlBounds(t.contentDOM.getBoundingClientRect());let n=g4(t.root);n&&n.rangeCount&&this.editContext.updateSelectionBounds(n.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let A=0,t=!1,n=this.pendingContextChange;return e.changes.iterChanges((o,a,r,s,l)=>{if(t)return;let g=l.length-(a-o);if(n&&a>=n.to)if(n.from==o&&n.to==a&&n.insert.eq(l)){n=this.pendingContextChange=null,A+=g,this.to+=g;return}else n=null,this.revertPending(e.state);if(o+=A,a+=A,a<=this.from)this.from+=g,this.to+=g;else if(othis.to||this.to-this.from+l.length>3e4){t=!0;return}this.editContext.updateText(this.toContextPos(o),this.toContextPos(a),l.toString()),this.to+=g}A+=g}),n&&!t&&this.revertPending(e.state),!t}update(e){let A=this.pendingContextChange,t=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(t.from,t.to)&&e.transactions.some(n=>!n.isUserEvent("input.type")&&n.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||A)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:A}=e.selection.main;this.from=Math.max(0,A-1e4),this.to=Math.min(e.doc.length,A+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let A=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(A.from),this.toContextPos(A.from+A.insert.length),e.doc.sliceString(A.from,A.to))}setSelection(e){let{main:A}=e.selection,t=this.toContextPos(Math.max(this.from,Math.min(this.to,A.anchor))),n=this.toContextPos(A.head);(this.editContext.selectionStart!=t||this.editContext.selectionEnd!=n)&&this.editContext.updateSelection(t,n)}rangeIsValid(e){let{head:A}=e.selection.main;return!(this.from>0&&A-this.from<500||this.to1e4*3)}toEditorPos(e,A=this.to-this.from){e=Math.min(e,A);let t=this.composing;return t&&t.drifted?t.editorBase+(e-t.contextBase):e+this.from}toContextPos(e){let A=this.composing;return A&&A.drifted?A.contextBase+(e-A.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}},ui=(()=>{class i{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(A={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),A.parent&&A.parent.appendChild(this.dom);let{dispatch:n}=A;this.dispatchTransactions=A.dispatchTransactions||n&&(o=>o.forEach(a=>n(a,this)))||(o=>this.update(o)),this.dispatch=this.dispatch.bind(this),this._root=A.root||ZgA(A.parent)||document,this.viewState=new g8(this,A.state||ir.create(A)),A.scrollTo&&A.scrollTo.is(U6)&&(this.viewState.scrollTarget=A.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(XB).map(o=>new t4(o));for(let o of this.plugins)o.update(this);this.observer=new eS(this),this.inputState=new Y9(this),this.inputState.ensureHandlers(this.plugins),this.docView=new o8(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((t=document.fonts)===null||t===void 0)&&t.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...A){let t=A.length==1&&A[0]instanceof l0?A:A.length==1&&Array.isArray(A[0])?A[0]:[this.state.update(...A)];this.dispatchTransactions(t,this)}update(A){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,n=!1,o,a=this.state;for(let B of A){if(B.startState!=a)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");a=B.state}if(this.destroyed){this.viewState.state=a;return}let r=this.hasFocus,s=0,l=null;A.some(B=>B.annotation(hH))?(this.inputState.notifiedFocused=r,s=1):r!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=r,l=EH(a,r),l||(s=1));let g=this.observer.delayedAndroidKey,C=null;if(g?(this.observer.clearDelayedAndroidKey(),C=this.observer.readChange(),(C&&!this.state.doc.eq(a.doc)||!this.state.selection.eq(a.selection))&&(C=null)):this.observer.clear(),a.facet(ir.phrases)!=this.state.facet(ir.phrases))return this.setState(a);o=i8.create(this,a,A),o.flags|=s;let d=this.viewState.scrollTarget;try{this.updateState=2;for(let B of A){if(d&&(d=d.map(B.changes)),B.scrollIntoView){let{main:u}=B.state.selection;d=new e4(u.empty?u:Be.cursor(u.head,u.head>u.anchor?-1:1))}for(let u of B.effects)u.is(U6)&&(d=u.value.clip(this.state))}this.viewState.update(o,d),this.bidiCache=c8.update(this.bidiCache,o.changes),o.empty||(this.updatePlugins(o),this.inputState.update(o)),t=this.docView.update(o),this.state.facet(Wu)!=this.styleModules&&this.mountStyles(),n=this.updateAttrs(),this.showAnnouncements(A),this.docView.updateSelection(t,A.some(B=>B.isUserEvent("select.pointer")))}finally{this.updateState=0}if(o.startState.facet(H6)!=o.state.facet(H6)&&(this.viewState.mustMeasureContent=!0),(t||n||d||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!o.empty)for(let B of this.state.facet(g9))try{B(o)}catch(u){Gr(this.state,u,"update listener")}(l||C)&&Promise.resolve().then(()=>{l&&this.state==l.startState&&this.dispatch(l),C&&!lH(this,C)&&g.force&&ih(this.contentDOM,g.key,g.keyCode)})}setState(A){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=A;return}this.updateState=2;let t=this.hasFocus;try{for(let n of this.plugins)n.destroy(this);this.viewState=new g8(this,A),this.plugins=A.facet(XB).map(n=>new t4(n)),this.pluginMap.clear();for(let n of this.plugins)n.update(this);this.docView.destroy(),this.docView=new o8(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(A){let t=A.startState.facet(XB),n=A.state.facet(XB);if(t!=n){let o=[];for(let a of n){let r=t.indexOf(a);if(r<0)o.push(new t4(a));else{let s=this.plugins[r];s.mustUpdate=A,o.push(s)}}for(let a of this.plugins)a.mustUpdate!=A&&a.destroy(this);this.plugins=o,this.pluginMap.clear()}else for(let o of this.plugins)o.mustUpdate=A;for(let o=0;o-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,A&&this.observer.forceFlush();let t=null,n=this.viewState.scrollParent,o=this.viewState.getScrollOffset(),{scrollAnchorPos:a,scrollAnchorHeight:r}=this.viewState;Math.abs(o-this.viewState.scrollOffset)>1&&(r=-1),this.viewState.scrollAnchorHeight=-1;try{for(let s=0;;s++){if(r<0)if(UY(n||this.win))a=-1,r=this.viewState.heightMap.height;else{let u=this.viewState.scrollAnchorAt(o);a=u.from,r=u.top}this.updateState=1;let l=this.viewState.measure();if(!l&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(s>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let g=[];l&4||([this.measureRequests,g]=[g,this.measureRequests]);let C=g.map(u=>{try{return u.read(this)}catch(E){return Gr(this.state,E),pY}}),d=i8.create(this,this.state,[]),B=!1;d.flags|=l,t?t.flags|=l:t=d,this.updateState=2,d.empty||(this.updatePlugins(d),this.inputState.update(d),this.updateAttrs(),B=this.docView.update(d),B&&this.docViewUpdate());for(let u=0;u1||E<-1)&&(n==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){o=o+E,n?n.scrollTop+=E:this.win.scrollBy(0,E),r=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let s of this.state.facet(g9))s(t)}get themeClasses(){return $9+" "+(this.state.facet(I9)?pH:uH)+" "+this.state.facet(H6)}updateAttrs(){let A=fY(this,AY,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(lC)?"true":"false",class:"cm-content",style:`${Ct.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),fY(this,S9,t);let n=this.observer.ignore(()=>{let o=WJ(this.contentDOM,this.contentAttrs,t),a=WJ(this.dom,this.editorAttrs,A);return o||a});return this.editorAttrs=A,this.contentAttrs=t,n}showAnnouncements(A){let t=!0;for(let n of A)for(let o of n.effects)if(o.is(i.announce)){t&&(this.announceDOM.textContent=""),t=!1;let a=this.announceDOM.appendChild(document.createElement("div"));a.textContent=o.value}}mountStyles(){this.styleModules=this.state.facet(Wu);let A=this.state.facet(i.cspNonce);Cg.mount(this.root,this.styleModules.concat(e0A).reverse(),A?{nonce:A}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(A){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),A){if(this.measureRequests.indexOf(A)>-1)return;if(A.key!=null){for(let t=0;tn.plugin==A)||null),t&&t.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(A){return this.readMeasured(),this.viewState.elementAtHeight(A)}lineBlockAtHeight(A){return this.readMeasured(),this.viewState.lineBlockAtHeight(A)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(A){return this.viewState.lineBlockAt(A)}get contentHeight(){return this.viewState.contentHeight}moveByChar(A,t,n){return d9(this,A,oY(this,A,t,n))}moveByGroup(A,t){return d9(this,A,oY(this,A,t,n=>vcA(this,A.head,n)))}visualLineSide(A,t){let n=this.bidiSpans(A),o=this.textDirectionAt(A.from),a=n[t?n.length-1:0];return Be.cursor(a.side(t,o)+A.from,a.forward(!t,o)?1:-1)}moveToLineBoundary(A,t,n=!0){return DcA(this,A,t,n)}moveVertically(A,t,n){return d9(this,A,bcA(this,A,t,n))}domAtPos(A,t=1){return this.docView.domAtPos(A,t)}posAtDOM(A,t=0){return this.docView.posFromDOM(A,t)}posAtCoords(A,t=!0){this.readMeasured();let n=U9(this,A,t);return n&&n.pos}posAndSideAtCoords(A,t=!0){return this.readMeasured(),U9(this,A,t)}coordsAtPos(A,t=1){this.readMeasured();let n=this.docView.coordsAt(A,t);if(!n||n.left==n.right)return n;let o=this.state.doc.lineAt(A),a=this.bidiSpans(o),r=a[Bg.find(a,A-o.from,-1,t)];return t8(n,r.dir==Lo.LTR==t>0)}coordsForChar(A){return this.readMeasured(),this.docView.coordsForChar(A)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(A){return!this.state.facet($J)||Athis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(A))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(A){if(A.length>n0A)return zY(A.length);let t=this.textDirectionAt(A.from),n;for(let a of this.bidiCache)if(a.from==A.from&&a.dir==t&&(a.fresh||HY(a.isolates,n=eY(this,A))))return a.order;n||(n=eY(this,A));let o=ocA(A.text,t,n);return this.bidiCache.push(new c8(A.from,A.to,t,n,!0,o)),o}get hasFocus(){var A;return(this.dom.ownerDocument.hasFocus()||Ct.safari&&((A=this.inputState)===null||A===void 0?void 0:A.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{KY(this.contentDOM),this.docView.updateSelection()})}setRoot(A){this._root!=A&&(this._root=A,this.observer.setWindow((A.nodeType==9?A:A.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let A of this.plugins)A.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(A,t={}){return U6.of(new e4(typeof A=="number"?Be.cursor(A):A,t.y,t.x,t.yMargin,t.xMargin))}scrollSnapshot(){let{scrollTop:A,scrollLeft:t}=this.scrollDOM,n=this.viewState.scrollAnchorAt(A);return U6.of(new e4(Be.cursor(n.from),"start","start",n.top-A,t,!0))}setTabFocusMode(A){A==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof A=="boolean"?this.inputState.tabFocusMode=A?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+A)}static domEventHandlers(A){return Po.define(()=>({}),{eventHandlers:A})}static domEventObservers(A){return Po.define(()=>({}),{eventObservers:A})}static theme(A,t){let n=Cg.newName(),o=[H6.of(n),Wu.of(AS(`.${n}`,A))];return t&&t.dark&&o.push(I9.of(!0)),o}static baseTheme(A){return oc.lowest(Wu.of(AS("."+$9,A,fH)))}static findFromDOM(A){var t;let n=A.querySelector(".cm-content"),o=n&&_a.get(n)||_a.get(A);return((t=o?.root)===null||t===void 0?void 0:t.view)||null}}return i.styleModule=Wu,i.inputHandler=ZY,i.clipboardInputFilter=ES,i.clipboardOutputFilter=QS,i.scrollHandler=AH,i.focusChangeEffect=XY,i.perLineTextDirection=$J,i.exceptionSink=WY,i.updateListener=g9,i.editable=lC,i.mouseSelectionStyle=qY,i.dragMovesSelection=VY,i.clickAddsSelectionRange=jY,i.decorations=Q8,i.blockWrappers=tH,i.outerDecorations=uS,i.atomicRanges=C4,i.bidiIsolatedRanges=iH,i.scrollMargins=nH,i.darkTheme=I9,i.cspNonce=nt.define({combine:e=>e.length?e[0]:""}),i.contentAttributes=S9,i.editorAttributes=AY,i.lineWrapping=i.contentAttributes.of({class:"cm-lineWrapping"}),i.announce=ln.define(),i})(),n0A=4096,pY={},c8=class i{constructor(e,A,t,n,o,a){this.from=e,this.to=A,this.dir=t,this.isolates=n,this.fresh=o,this.order=a}static update(e,A){if(A.empty&&!e.some(o=>o.fresh))return e;let t=[],n=e.length?e[e.length-1].dir:Lo.LTR;for(let o=Math.max(0,e.length-10);o=0;n--){let o=t[n],a=typeof o=="function"?o(i):o;a&&IS(a,A)}return A}var o0A=Ct.mac?"mac":Ct.windows?"win":Ct.linux?"linux":"key";function a0A(i,e){let A=i.split(/-(?!$)/),t=A[A.length-1];t=="Space"&&(t=" ");let n,o,a,r;for(let s=0;st.concat(n),[]))),A}function wH(i,e,A){return yH(mH(i.state),e,i,A)}var b2=null,s0A=4e3;function l0A(i,e=o0A){let A=Object.create(null),t=Object.create(null),n=(a,r)=>{let s=t[a];if(s==null)t[a]=r;else if(s!=r)throw new Error("Key binding "+a+" is used both as a regular binding and as a multi-stroke prefix")},o=(a,r,s,l,g)=>{var C,d;let B=A[a]||(A[a]=Object.create(null)),u=r.split(/ (?!$)/).map(m=>a0A(m,e));for(let m=1;m{let k=b2={view:S,prefix:v,scope:a};return setTimeout(()=>{b2==k&&(b2=null)},s0A),!0}]})}let E=u.join(" ");n(E,!1);let f=B[E]||(B[E]={preventDefault:!1,stopPropagation:!1,run:((d=(C=B._any)===null||C===void 0?void 0:C.run)===null||d===void 0?void 0:d.slice())||[]});s&&f.run.push(s),l&&(f.preventDefault=!0),g&&(f.stopPropagation=!0)};for(let a of i){let r=a.scope?a.scope.split(" "):["editor"];if(a.any)for(let l of r){let g=A[l]||(A[l]=Object.create(null));g._any||(g._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:C}=a;for(let d in g)g[d].run.push(B=>C(B,iS))}let s=a[e]||a.key;if(s)for(let l of r)o(l,s,a.run,a.preventDefault,a.stopPropagation),a.shift&&o(l,"Shift-"+s,a.shift,a.preventDefault,a.stopPropagation)}return A}var iS=null;function yH(i,e,A,t){iS=e;let n=zJ(e),o=$r(n,0),a=Rl(o)==n.length&&n!=" ",r="",s=!1,l=!1,g=!1;b2&&b2.view==A&&b2.scope==t&&(r=b2.prefix+" ",CH.indexOf(e.keyCode)<0&&(l=!0,b2=null));let C=new Set,d=f=>{if(f){for(let m of f.run)if(!C.has(m)&&(C.add(m),m(A)))return f.stopPropagation&&(g=!0),!0;f.preventDefault&&(f.stopPropagation&&(g=!0),l=!0)}return!1},B=i[t],u,E;return B&&(d(B[r+z6(n,e,!a)])?s=!0:a&&(e.altKey||e.metaKey||e.ctrlKey)&&!(Ct.windows&&e.ctrlKey&&e.altKey)&&!(Ct.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(u=sC[e.keyCode])&&u!=n?(d(B[r+z6(u,e,!0)])||e.shiftKey&&(E=WB[e.keyCode])!=n&&E!=u&&d(B[r+z6(E,e,!1)]))&&(s=!0):a&&e.shiftKey&&d(B[r+z6(n,e,!0)])&&(s=!0),!s&&d(B._any)&&(s=!0)),l&&(s=!0),s&&g&&e.stopPropagation(),iS=null,s}var md=class i{constructor(e,A,t,n,o){this.className=e,this.left=A,this.top=t,this.width=n,this.height=o}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,A){return A.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,A,t){if(t.empty){let n=e.coordsAtPos(t.head,t.assoc||1);if(!n)return[];let o=DH(e);return[new i(A,n.left-o.left,n.top-o.top,null,n.bottom-n.top)]}else return g0A(e,A,t)}};function DH(i){let e=i.scrollDOM.getBoundingClientRect();return{left:(i.textDirection==Lo.LTR?e.left:e.right-i.scrollDOM.clientWidth*i.scaleX)-i.scrollDOM.scrollLeft*i.scaleX,top:e.top-i.scrollDOM.scrollTop*i.scaleY}}function wY(i,e,A,t){let n=i.coordsAtPos(e,A*2);if(!n)return t;let o=i.dom.getBoundingClientRect(),a=(n.top+n.bottom)/2,r=i.posAtCoords({x:o.left+1,y:a}),s=i.posAtCoords({x:o.right-1,y:a});return r==null||s==null?t:{from:Math.max(t.from,Math.min(r,s)),to:Math.min(t.to,Math.max(r,s))}}function g0A(i,e,A){if(A.to<=i.viewport.from||A.from>=i.viewport.to)return[];let t=Math.max(A.from,i.viewport.from),n=Math.min(A.to,i.viewport.to),o=i.textDirection==Lo.LTR,a=i.contentDOM,r=a.getBoundingClientRect(),s=DH(i),l=a.querySelector(".cm-line"),g=l&&window.getComputedStyle(l),C=r.left+(g?parseInt(g.paddingLeft)+Math.min(0,parseInt(g.textIndent)):0),d=r.right-(g?parseInt(g.paddingRight):0),B=K9(i,t,1),u=K9(i,n,-1),E=B.type==As.Text?B:null,f=u.type==As.Text?u:null;if(E&&(i.lineWrapping||B.widgetLineBreaks)&&(E=wY(i,t,1,E)),f&&(i.lineWrapping||u.widgetLineBreaks)&&(f=wY(i,n,-1,f)),E&&f&&E.from==f.from&&E.to==f.to)return v(S(A.from,A.to,E));{let M=E?S(A.from,null,E):k(B,!1),x=f?S(null,A.to,f):k(u,!0),F=[];return(E||B).to<(f||u).from-(E&&f?1:0)||B.widgetLineBreaks>1&&M.bottom+i.defaultLineHeight/2Z&&wA.from=QA)break;xA>BA&&eA(Math.max(IA,BA),M==null&&IA<=Z,Math.min(xA,QA),x==null&&xA>=CA,dA.dir)}if(BA=RA.to+1,BA>=QA)break}return X.length==0&&eA(Z,M==null,CA,x==null,i.textDirection),{top:z,bottom:j,horizontal:X}}function k(M,x){let F=r.top+(x?M.top:M.bottom);return{top:F,bottom:F,horizontal:[]}}}function c0A(i,e){return i.constructor==e.constructor&&i.eq(e)}var nS=class{constructor(e,A){this.view=e,this.layer=A,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),A.above&&this.dom.classList.add("cm-layer-above"),A.class&&this.dom.classList.add(A.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),A.mount&&A.mount(this.dom,e)}update(e){e.startState.facet(W6)!=e.state.facet(W6)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}docViewUpdate(e){this.layer.updateOnDocViewUpdate!==!1&&e.requestMeasure(this.measureReq)}setOrder(e){let A=0,t=e.facet(W6);for(;A!c0A(A,this.drawn[t]))){let A=this.dom.firstChild,t=0;for(let n of e)n.update&&A&&n.constructor&&this.drawn[t].constructor&&n.update(A,this.drawn[t])?(A=A.nextSibling,t++):this.dom.insertBefore(n.draw(),A);for(;A;){let n=A.nextSibling;A.remove(),A=n}this.drawn=e,Ct.safari&&Ct.safari_version>=26&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}},W6=nt.define();function vH(i){return[Po.define(e=>new nS(e,i)),W6.of(i)]}var lh=nt.define({combine(i){return Lr(i,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(e,A)=>Math.min(e,A),drawRangeCursor:(e,A)=>e||A})}});function bH(i={}){return[lh.of(i),C0A,d0A,I0A,$Y.of(!0)]}function MH(i){return i.startState.facet(lh)!=i.state.facet(lh)}var C0A=vH({above:!0,markers(i){let{state:e}=i,A=e.facet(lh),t=[];for(let n of e.selection.ranges){let o=n==e.selection.main;if(n.empty||A.drawRangeCursor&&!(o&&Ct.ios&&A.iosSelectionHandles)){let a=o?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",r=n.empty?n:Be.cursor(n.head,n.assoc);for(let s of md.forRange(i,a,r))t.push(s)}}return t},update(i,e){i.transactions.some(t=>t.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let A=MH(i);return A&&yY(i.state,e),i.docChanged||i.selectionSet||A},mount(i,e){yY(e.state,i)},class:"cm-cursorLayer"});function yY(i,e){e.style.animationDuration=i.facet(lh).cursorBlinkRate+"ms"}var d0A=vH({above:!1,markers(i){let e=[],{main:A,ranges:t}=i.state.selection;for(let n of t)if(!n.empty)for(let o of md.forRange(i,"cm-selectionBackground",n))e.push(o);if(Ct.ios&&!A.empty&&i.state.facet(lh).iosSelectionHandles){for(let n of md.forRange(i,"cm-selectionHandle cm-selectionHandle-start",Be.cursor(A.from,1)))e.push(n);for(let n of md.forRange(i,"cm-selectionHandle cm-selectionHandle-end",Be.cursor(A.to,1)))e.push(n)}return e},update(i,e){return i.docChanged||i.selectionSet||i.viewportChanged||MH(i)},class:"cm-selectionLayer"}),I0A=oc.highest(ui.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}})),SH=ln.define({map(i,e){return i==null?null:e.mapPos(i)}}),Xu=La.define({create(){return null},update(i,e){return i!=null&&(i=e.changes.mapPos(i)),e.effects.reduce((A,t)=>t.is(SH)?t.value:A,i)}}),B0A=Po.fromClass(class{constructor(i){this.view=i,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(i){var e;let A=i.state.field(Xu);A==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(i.startState.field(Xu)!=A||i.docChanged||i.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:i}=this,e=i.state.field(Xu),A=e!=null&&i.coordsAtPos(e);if(!A)return null;let t=i.scrollDOM.getBoundingClientRect();return{left:A.left-t.left+i.scrollDOM.scrollLeft*i.scaleX,top:A.top-t.top+i.scrollDOM.scrollTop*i.scaleY,height:A.bottom-A.top}}drawCursor(i){if(this.cursor){let{scaleX:e,scaleY:A}=this.view;i?(this.cursor.style.left=i.left/e+"px",this.cursor.style.top=i.top/A+"px",this.cursor.style.height=i.height/A+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(i){this.view.state.field(Xu)!=i&&this.view.dispatch({effects:SH.of(i)})}},{eventObservers:{dragover(i){this.setDropPos(this.view.posAtCoords({x:i.clientX,y:i.clientY}))},dragleave(i){(i.target==this.view.contentDOM||!this.view.contentDOM.contains(i.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function kH(){return[Xu,B0A]}function DY(i,e,A,t,n){e.lastIndex=0;for(let o=i.iterRange(A,t),a=A,r;!o.next().done;a+=o.value.length)if(!o.lineBreak)for(;r=e.exec(o.value);)n(a+r.index,r)}function h0A(i,e){let A=i.visibleRanges;if(A.length==1&&A[0].from==i.viewport.from&&A[0].to==i.viewport.to)return A;let t=[];for(let{from:n,to:o}of A)n=Math.max(i.state.doc.lineAt(n).from,n-e),o=Math.min(i.state.doc.lineAt(o).to,o+e),t.length&&t[t.length-1].to>=n?t[t.length-1].to=o:t.push({from:n,to:o});return t}var oS=class{constructor(e){let{regexp:A,decoration:t,decorate:n,boundary:o,maxLength:a=1e3}=e;if(!A.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=A,n)this.addMatch=(r,s,l,g)=>n(g,l,l+r[0].length,r,s);else if(typeof t=="function")this.addMatch=(r,s,l,g)=>{let C=t(r,s,l);C&&g(l,l+r[0].length,C)};else if(t)this.addMatch=(r,s,l,g)=>g(l,l+r[0].length,t);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=o,this.maxLength=a}createDeco(e){let A=new Xr,t=A.add.bind(A);for(let{from:n,to:o}of h0A(e,this.maxLength))DY(e.state.doc,this.regexp,n,o,(a,r)=>this.addMatch(r,e,a,t));return A.finish()}updateDeco(e,A){let t=1e9,n=-1;return e.docChanged&&e.changes.iterChanges((o,a,r,s)=>{s>=e.view.viewport.from&&r<=e.view.viewport.to&&(t=Math.min(r,t),n=Math.max(s,n))}),e.viewportMoved||n-t>1e3?this.createDeco(e.view):n>-1?this.updateRange(e.view,A.map(e.changes),t,n):A}updateRange(e,A,t,n){for(let o of e.visibleRanges){let a=Math.max(o.from,t),r=Math.min(o.to,n);if(r>=a){let s=e.state.doc.lineAt(a),l=s.tos.from;a--)if(this.boundary.test(s.text[a-1-s.from])){g=a;break}for(;rd.push(m.range(E,f));if(s==l)for(this.regexp.lastIndex=g-s.from;(B=this.regexp.exec(s.text))&&B.indexthis.addMatch(f,e,E,u));A=A.update({filterFrom:g,filterTo:C,filter:(E,f)=>EC,add:d})}}return A}},aS=/x/.unicode!=null?"gu":"g",E0A=new RegExp(`[\0-\b --\x7F-\x9F\xAD\u061C\u200B\u200E\u200F\u2028\u2029\u202D\u202E\u2066\u2067\u2069\uFEFF\uFFF9-\uFFFC]`,aS),Q0A={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"},h9=null;function u0A(){var i;if(h9==null&&typeof document<"u"&&document.body){let e=document.body.style;h9=((i=e.tabSize)!==null&&i!==void 0?i:e.MozTabSize)!=null}return h9||!1}var Z6=nt.define({combine(i){let e=Lr(i,{render:null,specialChars:E0A,addSpecialChars:null});return(e.replaceTabs=!u0A())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,aS)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,aS)),e}});function _H(i={}){return[Z6.of(i),p0A()]}var vY=null;function p0A(){return vY||(vY=Po.fromClass(class{constructor(i){this.view=i,this.decorations=Lt.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(i.state.facet(Z6)),this.decorations=this.decorator.createDeco(i)}makeDecorator(i){return new oS({regexp:i.specialChars,decoration:(e,A,t)=>{let{doc:n}=A.state,o=$r(e[0],0);if(o==9){let a=n.lineAt(t),r=A.state.tabSize,s=rC(a.text,r,t-a.from);return Lt.replace({widget:new sS((r-s%r)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[o]||(this.decorationCache[o]=Lt.replace({widget:new rS(i,o)}))},boundary:i.replaceTabs?void 0:/[^]/})}update(i){let e=i.state.facet(Z6);i.startState.facet(Z6)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(i.view)):this.decorations=this.decorator.updateDeco(i,this.decorations)}},{decorations:i=>i.decorations}))}var f0A="\u2022";function m0A(i){return i>=32?f0A:i==10?"\u2424":String.fromCharCode(9216+i)}var rS=class extends gl{constructor(e,A){super(),this.options=e,this.code=A}eq(e){return e.code==this.code}toDOM(e){let A=m0A(this.code),t=e.state.phrase("Control character")+" "+(Q0A[this.code]||"0x"+this.code.toString(16)),n=this.options.render&&this.options.render(this.code,t,A);if(n)return n;let o=document.createElement("span");return o.textContent=A,o.title=t,o.setAttribute("aria-label",t),o.className="cm-specialChar",o}ignoreEvent(){return!1}},sS=class extends gl{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}};function xH(){return y0A}var w0A=Lt.line({class:"cm-activeLine"}),y0A=Po.fromClass(class{constructor(i){this.decorations=this.getDeco(i)}update(i){(i.docChanged||i.selectionSet)&&(this.decorations=this.getDeco(i.view))}getDeco(i){let e=-1,A=[];for(let t of i.state.selection.ranges){let n=i.lineBlockAt(t.head);n.from>e&&(A.push(w0A.range(n.from)),e=n.from)}return Lt.set(A)}},{decorations:i=>i.decorations});var lS=2e3;function D0A(i,e,A){let t=Math.min(e.line,A.line),n=Math.max(e.line,A.line),o=[];if(e.off>lS||A.off>lS||e.col<0||A.col<0){let a=Math.min(e.off,A.off),r=Math.max(e.off,A.off);for(let s=t;s<=n;s++){let l=i.doc.line(s);l.length<=r&&o.push(Be.range(l.from+a,l.to+r))}}else{let a=Math.min(e.col,A.col),r=Math.max(e.col,A.col);for(let s=t;s<=n;s++){let l=i.doc.line(s),g=G6(l.text,a,i.tabSize,!0);if(g<0)o.push(Be.cursor(l.to));else{let C=G6(l.text,r,i.tabSize);o.push(Be.range(l.from+g,l.from+C))}}}return o}function v0A(i,e){let A=i.coordsAtPos(i.viewport.from);return A?Math.round(Math.abs((A.left-e)/i.defaultCharacterWidth)):-1}function bY(i,e){let A=i.posAtCoords({x:e.clientX,y:e.clientY},!1),t=i.state.doc.lineAt(A),n=A-t.from,o=n>lS?-1:n==t.length?v0A(i,e.clientX):rC(t.text,i.state.tabSize,A-t.from);return{line:t.number,col:o,off:n}}function b0A(i,e){let A=bY(i,e),t=i.state.selection;return A?{update(n){if(n.docChanged){let o=n.changes.mapPos(n.startState.doc.line(A.line).from),a=n.state.doc.lineAt(o);A={line:a.number,col:A.col,off:Math.min(A.off,a.length)},t=t.map(n.changes)}},get(n,o,a){let r=bY(i,n);if(!r)return t;let s=D0A(i.state,A,r);return s.length?a?Be.create(s.concat(t.ranges)):Be.create(s):t}}:null}function RH(i){let e=i?.eventFilter||(A=>A.altKey&&A.button==0);return ui.mouseSelectionStyle.of((A,t)=>e(t)?b0A(A,t):null)}var M0A={Alt:[18,i=>!!i.altKey],Control:[17,i=>!!i.ctrlKey],Shift:[16,i=>!!i.shiftKey],Meta:[91,i=>!!i.metaKey]},S0A={style:"cursor: crosshair"};function NH(i={}){let[e,A]=M0A[i.key||"Alt"],t=Po.fromClass(class{constructor(n){this.view=n,this.isDown=!1}set(n){this.isDown!=n&&(this.isDown=n,this.view.update([]))}},{eventObservers:{keydown(n){this.set(n.keyCode==e||A(n))},keyup(n){(n.keyCode==e||!A(n))&&this.set(!1)},mousemove(n){this.set(A(n))}}});return[t,ui.contentAttributes.of(n=>{var o;return!((o=n.plugin(t))===null||o===void 0)&&o.isDown?S0A:null})]}var P6="-10000px",C8=class{constructor(e,A,t,n){this.facet=A,this.createTooltipView=t,this.removeTooltipView=n,this.input=e.state.facet(A),this.tooltips=this.input.filter(a=>a);let o=null;this.tooltipViews=this.tooltips.map(a=>o=t(a,o))}update(e,A){var t;let n=e.state.facet(this.facet),o=n.filter(s=>s);if(n===this.input){for(let s of this.tooltipViews)s.update&&s.update(e);return!1}let a=[],r=A?[]:null;for(let s=0;sA[l]=s),A.length=r.length),this.input=n,this.tooltips=o,this.tooltipViews=a,!0}};function k0A(i){let e=i.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:e.clientHeight,right:e.clientWidth}}var E9=nt.define({combine:i=>{var e,A,t;return{position:Ct.ios?"absolute":((e=i.find(n=>n.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((A=i.find(n=>n.parent))===null||A===void 0?void 0:A.parent)||null,tooltipSpace:((t=i.find(n=>n.tooltipSpace))===null||t===void 0?void 0:t.tooltipSpace)||k0A}}}),MY=new WeakMap,mS=Po.fromClass(class{constructor(i){this.view=i,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let e=i.state.facet(E9);this.position=e.position,this.parent=e.parent,this.classes=i.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new C8(i,ch,(A,t)=>this.createTooltip(A,t),A=>{this.resizeObserver&&this.resizeObserver.unobserve(A.dom),A.dom.remove()}),this.above=this.manager.tooltips.map(A=>!!A.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(A=>{Date.now()>this.lastTransaction-50&&A.length>0&&A[A.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),i.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let i of this.manager.tooltipViews)this.intersectionObserver.observe(i.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(i){i.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(i,this.above);e&&this.observeIntersection();let A=e||i.geometryChanged,t=i.state.facet(E9);if(t.position!=this.position&&!this.madeAbsolute){this.position=t.position;for(let n of this.manager.tooltipViews)n.dom.style.position=this.position;A=!0}if(t.parent!=this.parent){this.parent&&this.container.remove(),this.parent=t.parent,this.createContainer();for(let n of this.manager.tooltipViews)this.container.appendChild(n.dom);A=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);A&&this.maybeMeasure()}createTooltip(i,e){let A=i.create(this.view),t=e?e.dom:null;if(A.dom.classList.add("cm-tooltip"),i.arrow&&!A.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let n=document.createElement("div");n.className="cm-tooltip-arrow",A.dom.appendChild(n)}return A.dom.style.position=this.position,A.dom.style.top=P6,A.dom.style.left="0px",this.container.insertBefore(A.dom,t),A.mount&&A.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(A.dom),A}destroy(){var i,e,A;this.view.win.removeEventListener("resize",this.measureSoon);for(let t of this.manager.tooltipViews)t.dom.remove(),(i=t.destroy)===null||i===void 0||i.call(t);this.parent&&this.container.remove(),(e=this.resizeObserver)===null||e===void 0||e.disconnect(),(A=this.intersectionObserver)===null||A===void 0||A.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let i=1,e=1,A=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:o}=this.manager.tooltipViews[0];if(Ct.safari){let a=o.getBoundingClientRect();A=Math.abs(a.top+1e4)>1||Math.abs(a.left)>1}else A=!!o.offsetParent&&o.offsetParent!=this.container.ownerDocument.body}if(A||this.position=="absolute")if(this.parent){let o=this.parent.getBoundingClientRect();o.width&&o.height&&(i=o.width/this.parent.offsetWidth,e=o.height/this.parent.offsetHeight)}else({scaleX:i,scaleY:e}=this.view.viewState);let t=this.view.scrollDOM.getBoundingClientRect(),n=pS(this.view);return{visible:{left:t.left+n.left,top:t.top+n.top,right:t.right-n.right,bottom:t.bottom-n.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((o,a)=>{let r=this.manager.tooltipViews[a];return r.getCoords?r.getCoords(o.pos):this.view.coordsAtPos(o.pos)}),size:this.manager.tooltipViews.map(({dom:o})=>o.getBoundingClientRect()),space:this.view.state.facet(E9).tooltipSpace(this.view),scaleX:i,scaleY:e,makeAbsolute:A}}writeMeasure(i){var e;if(i.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let r of this.manager.tooltipViews)r.dom.style.position="absolute"}let{visible:A,space:t,scaleX:n,scaleY:o}=i,a=[];for(let r=0;r=Math.min(A.bottom,t.bottom)||C.rightMath.min(A.right,t.right)+.1)){g.style.top=P6;continue}let B=s.arrow?l.dom.querySelector(".cm-tooltip-arrow"):null,u=B?7:0,E=d.right-d.left,f=(e=MY.get(l))!==null&&e!==void 0?e:d.bottom-d.top,m=l.offset||x0A,v=this.view.textDirection==Lo.LTR,S=d.width>t.right-t.left?v?t.left:t.right-d.width:v?Math.max(t.left,Math.min(C.left-(B?14:0)+m.x,t.right-E)):Math.min(Math.max(t.left,C.left-E+(B?14:0)-m.x),t.right-E),k=this.above[r];!s.strictSide&&(k?C.top-f-u-m.yt.bottom)&&k==t.bottom-C.bottom>C.top-t.top&&(k=this.above[r]=!k);let M=(k?C.top-t.top:t.bottom-C.bottom)-u;if(MS&&z.topx&&(x=k?z.top-f-2-u:z.bottom+u+2);if(this.position=="absolute"?(g.style.top=(x-i.parent.top)/o+"px",SY(g,(S-i.parent.left)/n)):(g.style.top=x/o+"px",SY(g,S/n)),B){let z=C.left+(v?m.x:-m.x)-(S+14-7);B.style.left=z/n+"px"}l.overlap!==!0&&a.push({left:S,top:x,right:F,bottom:x+f}),g.classList.toggle("cm-tooltip-above",k),g.classList.toggle("cm-tooltip-below",!k),l.positioned&&l.positioned(i.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let i of this.manager.tooltipViews)i.dom.style.top=P6}},{eventObservers:{scroll(){this.maybeMeasure()}}});function SY(i,e){let A=parseInt(i.style.left,10);(isNaN(A)||Math.abs(e-A)>1)&&(i.style.left=e+"px")}var _0A=ui.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),x0A={x:0,y:0},ch=nt.define({enables:[mS,_0A]}),d8=nt.define({combine:i=>i.reduce((e,A)=>e.concat(A),[])}),I8=class i{static create(e){return new i(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new C8(e,d8,(A,t)=>this.createHostedView(A,t),A=>A.dom.remove())}createHostedView(e,A){let t=e.create(this.view);return t.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(t.dom,A?A.dom.nextSibling:this.dom.firstChild),this.mounted&&t.mount&&t.mount(this.view),t}mount(e){for(let A of this.manager.tooltipViews)A.mount&&A.mount(e);this.mounted=!0}positioned(e){for(let A of this.manager.tooltipViews)A.positioned&&A.positioned(e)}update(e){this.manager.update(e)}destroy(){var e;for(let A of this.manager.tooltipViews)(e=A.destroy)===null||e===void 0||e.call(A)}passProp(e){let A;for(let t of this.manager.tooltipViews){let n=t[e];if(n!==void 0){if(A===void 0)A=n;else if(A!==n)return}}return A}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}},R0A=ch.compute([d8],i=>{let e=i.facet(d8);return e.length===0?null:{pos:Math.min(...e.map(A=>A.pos)),end:Math.max(...e.map(A=>{var t;return(t=A.end)!==null&&t!==void 0?t:A.pos})),create:I8.create,above:e[0].above,arrow:e.some(A=>A.arrow)}}),gS=class{constructor(e,A,t,n,o){this.view=e,this.source=A,this.field=t,this.setHover=n,this.hoverTime=o,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let e=Date.now()-this.lastMove.time;er.bottom||A.xr.right+e.defaultCharacterWidth)return;let s=e.bidiSpans(e.state.doc.lineAt(n)).find(g=>g.from<=n&&g.to>=n),l=s&&s.dir==Lo.RTL?-1:1;o=A.x{this.pending==r&&(this.pending=null,s&&!(Array.isArray(s)&&!s.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(s)?s:[s])}))},s=>Gr(e.state,s,"hover tooltip"))}else a&&!(Array.isArray(a)&&!a.length)&&e.dispatch({effects:this.setHover.of(Array.isArray(a)?a:[a])})}get tooltip(){let e=this.view.plugin(mS),A=e?e.manager.tooltips.findIndex(t=>t.create==I8.create):-1;return A>-1?e.manager.tooltipViews[A]:null}mousemove(e){var A,t;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:n,tooltip:o}=this;if(n.length&&o&&!N0A(o.dom,e)||this.pending){let{pos:a}=n[0]||this.pending,r=(t=(A=n[0])===null||A===void 0?void 0:A.end)!==null&&t!==void 0?t:a;(a==r?this.view.posAtCoords(this.lastMove)!=a:!F0A(this.view,a,r,e.clientX,e.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:A}=this;if(A.length){let{tooltip:t}=this;t&&t.dom.contains(e.relatedTarget)?this.watchTooltipLeave(t.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(e){let A=t=>{e.removeEventListener("mouseleave",A),this.active.length&&!this.view.dom.contains(t.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};e.addEventListener("mouseleave",A)}destroy(){clearTimeout(this.hoverTimeout),clearTimeout(this.restartTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}},j6=4;function N0A(i,e){let{left:A,right:t,top:n,bottom:o}=i.getBoundingClientRect(),a;if(a=i.querySelector(".cm-tooltip-arrow")){let r=a.getBoundingClientRect();n=Math.min(r.top,n),o=Math.max(r.bottom,o)}return e.clientX>=A-j6&&e.clientX<=t+j6&&e.clientY>=n-j6&&e.clientY<=o+j6}function F0A(i,e,A,t,n,o){let a=i.scrollDOM.getBoundingClientRect(),r=i.documentTop+i.documentPadding.top+i.contentHeight;if(a.left>t||a.rightn||Math.min(a.bottom,r)=e&&s<=A}function FH(i,e={}){let A=ln.define(),t=La.define({create(){return[]},update(n,o){if(n.length&&(e.hideOnChange&&(o.docChanged||o.selection)?n=[]:e.hideOn&&(n=n.filter(a=>!e.hideOn(o,a))),o.docChanged)){let a=[];for(let r of n){let s=o.changes.mapPos(r.pos,-1,Wr.TrackDel);if(s!=null){let l=Object.assign(Object.create(null),r);l.pos=s,l.end!=null&&(l.end=o.changes.mapPos(l.end)),a.push(l)}}n=a}for(let a of o.effects)a.is(A)&&(n=a.value),a.is(L0A)&&(n=[]);return n},provide:n=>d8.from(n)});return{active:t,extension:[t,Po.define(n=>new gS(n,i,t,A,e.hoverTime||300)),R0A]}}function wS(i,e){let A=i.plugin(mS);if(!A)return null;let t=A.manager.tooltips.indexOf(e);return t<0?null:A.manager.tooltipViews[t]}var L0A=ln.define();var kY=nt.define({combine(i){let e,A;for(let t of i)e=e||t.topContainer,A=A||t.bottomContainer;return{topContainer:e,bottomContainer:A}}});function d4(i,e){let A=i.plugin(LH),t=A?A.specs.indexOf(e):-1;return t>-1?A.panels[t]:null}var LH=Po.fromClass(class{constructor(i){this.input=i.state.facet(vd),this.specs=this.input.filter(A=>A),this.panels=this.specs.map(A=>A(i));let e=i.state.facet(kY);this.top=new Ah(i,!0,e.topContainer),this.bottom=new Ah(i,!1,e.bottomContainer),this.top.sync(this.panels.filter(A=>A.top)),this.bottom.sync(this.panels.filter(A=>!A.top));for(let A of this.panels)A.dom.classList.add("cm-panel"),A.mount&&A.mount()}update(i){let e=i.state.facet(kY);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new Ah(i.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new Ah(i.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let A=i.state.facet(vd);if(A!=this.input){let t=A.filter(s=>s),n=[],o=[],a=[],r=[];for(let s of t){let l=this.specs.indexOf(s),g;l<0?(g=s(i.view),r.push(g)):(g=this.panels[l],g.update&&g.update(i)),n.push(g),(g.top?o:a).push(g)}this.specs=t,this.panels=n,this.top.sync(o),this.bottom.sync(a);for(let s of r)s.dom.classList.add("cm-panel"),s.mount&&s.mount()}else for(let t of this.panels)t.update&&t.update(i)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:i=>ui.scrollMargins.of(e=>{let A=e.plugin(i);return A&&{top:A.top.scrollMargin(),bottom:A.bottom.scrollMargin()}})}),Ah=class{constructor(e,A,t){this.view=e,this.top=A,this.container=t,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let A of this.panels)A.destroy&&e.indexOf(A)<0&&A.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let A=this.container||this.view.dom;A.insertBefore(this.dom,this.top?A.firstChild:null)}let e=this.dom.firstChild;for(let A of this.panels)if(A.dom.parentNode==this.dom){for(;e!=A.dom;)e=_Y(e);e=e.nextSibling}else this.dom.insertBefore(A.dom,e);for(;e;)e=_Y(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}};function _Y(i){let e=i.nextSibling;return i.remove(),e}var vd=nt.define({enables:LH});function GH(i,e){let A,t=new Promise(a=>A=a),n=a=>G0A(a,e,A);i.state.field(Q9,!1)?i.dispatch({effects:KH.of(n)}):i.dispatch({effects:ln.appendConfig.of(Q9.init(()=>[n]))});let o=UH.of(n);return{close:o,result:t.then(a=>((i.win.queueMicrotask||(s=>i.win.setTimeout(s,10)))(()=>{i.state.field(Q9).indexOf(n)>-1&&i.dispatch({effects:o})}),a))}}var Q9=La.define({create(){return[]},update(i,e){for(let A of e.effects)A.is(KH)?i=[A.value].concat(i):A.is(UH)&&(i=i.filter(t=>t!=A.value));return i},provide:i=>vd.computeN([i],e=>e.field(i))}),KH=ln.define(),UH=ln.define();function G0A(i,e,A){let t=e.content?e.content(i,()=>a(null)):null;if(!t){if(t=po("form"),e.input){let r=po("input",e.input);/^(text|password|number|email|tel|url)$/.test(r.type)&&r.classList.add("cm-textfield"),r.name||(r.name="input"),t.appendChild(po("label",(e.label||"")+": ",r))}else t.appendChild(document.createTextNode(e.label||""));t.appendChild(document.createTextNode(" ")),t.appendChild(po("button",{class:"cm-button",type:"submit"},e.submitLabel||"OK"))}let n=t.nodeName=="FORM"?[t]:t.querySelectorAll("form");for(let r=0;r{l.keyCode==27?(l.preventDefault(),a(null)):l.keyCode==13&&(l.preventDefault(),a(s))}),s.addEventListener("submit",l=>{l.preventDefault(),a(s)})}let o=po("div",t,po("button",{onclick:()=>a(null),"aria-label":i.state.phrase("close"),class:"cm-dialog-close",type:"button"},["\xD7"]));e.class&&(o.className=e.class),o.classList.add("cm-dialog");function a(r){o.contains(o.ownerDocument.activeElement)&&i.focus(),A(r)}return{dom:o,top:e.top,mount:()=>{if(e.focus){let r;typeof e.focus=="string"?r=t.querySelector(e.focus):r=t.querySelector("input")||t.querySelector("button"),r&&"select"in r?r.select():r&&"focus"in r&&r.focus()}}}}var Cl=class extends cg{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}};Cl.prototype.elementClass="";Cl.prototype.toDOM=void 0;Cl.prototype.mapMode=Wr.TrackBefore;Cl.prototype.startSide=Cl.prototype.endSide=-1;Cl.prototype.point=!0;var X6=nt.define(),K0A=nt.define(),U0A={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>uo.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},a4=nt.define();function p8(i){return[TH(),a4.of(P(P({},U0A),i))]}var cS=nt.define({combine:i=>i.some(e=>e)});function TH(i){let e=[T0A];return i&&i.fixed===!1&&e.push(cS.of(!0)),e}var T0A=Po.fromClass(class{constructor(i){this.view=i,this.domAfter=null,this.prevViewport=i.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=i.state.facet(a4).map(e=>new B8(i,e)),this.fixed=!i.state.facet(cS);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),i.scrollDOM.insertBefore(this.dom,i.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(i){if(this.updateGutters(i)){let e=this.prevViewport,A=i.view.viewport,t=Math.min(e.to,A.to)-Math.max(e.from,A.from);this.syncGutters(t<(A.to-A.from)*.8)}if(i.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(cS)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=i.view.viewport}syncGutters(i){let e=this.dom.nextSibling;i&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let A=uo.iter(this.view.state.facet(X6),this.view.viewport.from),t=[],n=this.gutters.map(o=>new dS(o,this.view.viewport,-this.view.documentPadding.top));for(let o of this.view.viewportLineBlocks)if(t.length&&(t=[]),Array.isArray(o.type)){let a=!0;for(let r of o.type)if(r.type==As.Text&&a){CS(A,t,r.from);for(let s of n)s.line(this.view,r,t);a=!1}else if(r.widget)for(let s of n)s.widget(this.view,r)}else if(o.type==As.Text){CS(A,t,o.from);for(let a of n)a.line(this.view,o,t)}else if(o.widget)for(let a of n)a.widget(this.view,o);for(let o of n)o.finish();i&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(i){let e=i.startState.facet(a4),A=i.state.facet(a4),t=i.docChanged||i.heightChanged||i.viewportChanged||!uo.eq(i.startState.facet(X6),i.state.facet(X6),i.view.viewport.from,i.view.viewport.to);if(e==A)for(let n of this.gutters)n.update(i)&&(t=!0);else{t=!0;let n=[];for(let o of A){let a=e.indexOf(o);a<0?n.push(new B8(this.view,o)):(this.gutters[a].update(i),n.push(this.gutters[a]))}for(let o of this.gutters)o.dom.remove(),n.indexOf(o)<0&&o.destroy();for(let o of n)o.config.side=="after"?this.getDOMAfter().appendChild(o.dom):this.dom.appendChild(o.dom);this.gutters=n}return t}destroy(){for(let i of this.gutters)i.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:i=>ui.scrollMargins.of(e=>{let A=e.plugin(i);if(!A||A.gutters.length==0||!A.fixed)return null;let t=A.dom.offsetWidth*e.scaleX,n=A.domAfter?A.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==Lo.LTR?{left:t,right:n}:{right:t,left:n}})});function xY(i){return Array.isArray(i)?i:[i]}function CS(i,e,A){for(;i.value&&i.from<=A;)i.from==A&&e.push(i.value),i.next()}var dS=class{constructor(e,A,t){this.gutter=e,this.height=t,this.i=0,this.cursor=uo.iter(e.markers,A.from)}addElement(e,A,t){let{gutter:n}=this,o=(A.top-this.height)/e.scaleY,a=A.height/e.scaleY;if(this.i==n.elements.length){let r=new h8(e,a,o,t);n.elements.push(r),n.dom.appendChild(r.dom)}else n.elements[this.i].update(e,a,o,t);this.height=A.bottom,this.i++}line(e,A,t){let n=[];CS(this.cursor,n,A.from),t.length&&(n=n.concat(t));let o=this.gutter.config.lineMarker(e,A,n);o&&n.unshift(o);let a=this.gutter;n.length==0&&!a.config.renderEmptyElements||this.addElement(e,A,n)}widget(e,A){let t=this.gutter.config.widgetMarker(e,A.widget,A),n=t?[t]:null;for(let o of e.state.facet(K0A)){let a=o(e,A.widget,A);a&&(n||(n=[])).push(a)}n&&this.addElement(e,A,n)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let A=e.elements.pop();e.dom.removeChild(A.dom),A.destroy()}}},B8=class{constructor(e,A){this.view=e,this.config=A,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let t in A.domEventHandlers)this.dom.addEventListener(t,n=>{let o=n.target,a;if(o!=this.dom&&this.dom.contains(o)){for(;o.parentNode!=this.dom;)o=o.parentNode;let s=o.getBoundingClientRect();a=(s.top+s.bottom)/2}else a=n.clientY;let r=e.lineBlockAtHeight(a-e.documentTop);A.domEventHandlers[t](e,r,n)&&n.preventDefault()});this.markers=xY(A.markers(e)),A.initialSpacer&&(this.spacer=new h8(e,0,0,[A.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let A=this.markers;if(this.markers=xY(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let n=this.config.updateSpacer(this.spacer.markers[0],e);n!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[n])}let t=e.view.viewport;return!uo.eq(this.markers,A,t.from,t.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}},h8=class{constructor(e,A,t,n){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,A,t,n)}update(e,A,t,n){this.height!=A&&(this.height=A,this.dom.style.height=A+"px"),this.above!=t&&(this.dom.style.marginTop=(this.above=t)?t+"px":""),O0A(this.markers,n)||this.setMarkers(e,n)}setMarkers(e,A){let t="cm-gutterElement",n=this.dom.firstChild;for(let o=0,a=0;;){let r=a,s=oo(r,s,l)||a(r,s,l):a}return t}})}}),r4=class extends Cl{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}};function u9(i,e){return i.state.facet(eh).formatNumber(e,i.state)}var H0A=a4.compute([eh],i=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(J0A)},lineMarker(e,A,t){return t.some(n=>n.toDOM)?null:new r4(u9(e,e.state.doc.lineAt(A.from).number))},widgetMarker:(e,A,t)=>{for(let n of e.state.facet(Y0A)){let o=n(e,A,t);if(o)return o}return null},lineMarkerChange:e=>e.startState.facet(eh)!=e.state.facet(eh),initialSpacer(e){return new r4(u9(e,RY(e.state.doc.lines)))},updateSpacer(e,A){let t=u9(A.view,RY(A.view.state.doc.lines));return t==e.number?e:new r4(t)},domEventHandlers:i.facet(eh).domEventHandlers,side:"before"}));function OH(i={}){return[eh.of(i),TH(),H0A]}function RY(i){let e=9;for(;e{let e=[],A=-1;for(let t of i.selection.ranges){let n=i.doc.lineAt(t.head).from;n>A&&(A=n,e.push(z0A.range(n)))}return uo.of(e)});function JH(){return P0A}var j0A=0,I4=class{constructor(e,A){this.from=e,this.to=A}},Hi=class{constructor(e={}){this.id=j0A++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=ys.match(e)),A=>{let t=e(A);return t===void 0?null:[this,t]}}};Hi.closedBy=new Hi({deserialize:i=>i.split(" ")});Hi.openedBy=new Hi({deserialize:i=>i.split(" ")});Hi.group=new Hi({deserialize:i=>i.split(" ")});Hi.isolate=new Hi({deserialize:i=>{if(i&&i!="rtl"&&i!="ltr"&&i!="auto")throw new RangeError("Invalid value for isolate: "+i);return i||"auto"}});Hi.contextHash=new Hi({perNode:!0});Hi.lookAhead=new Hi({perNode:!0});Hi.mounted=new Hi({perNode:!0});var bd=class{constructor(e,A,t,n=!1){this.tree=e,this.overlay=A,this.parser=t,this.bracketed=n}static get(e){return e&&e.props&&e.props[Hi.mounted.id]}},V0A=Object.create(null),ys=class i{constructor(e,A,t,n=0){this.name=e,this.props=A,this.id=t,this.flags=n}static define(e){let A=e.props&&e.props.length?Object.create(null):V0A,t=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),n=new i(e.name||"",A,e.id,t);if(e.props){for(let o of e.props)if(Array.isArray(o)||(o=o(n)),o){if(o[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");A[o[0].id]=o[1]}}return n}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let A=this.prop(Hi.group);return A?A.indexOf(e)>-1:!1}return this.id==e}static match(e){let A=Object.create(null);for(let t in e)for(let n of t.split(" "))A[n]=e[t];return t=>{for(let n=t.prop(Hi.group),o=-1;o<(n?n.length:0);o++){let a=A[o<0?t.name:n[o]];if(a)return a}}}};ys.none=new ys("",Object.create(null),0,8);var B4=class i{constructor(e){this.types=e;for(let A=0;A0;for(let s=this.cursor(a|Ga.IncludeAnonymous);;){let l=!1;if(s.from<=o&&s.to>=n&&(!r&&s.type.isAnonymous||A(s)!==!1)){if(s.firstChild())continue;l=!0}for(;l&&t&&(r||!s.type.isAnonymous)&&t(s),!s.nextSibling();){if(!s.parent())return;l=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let A in this.props)e.push([+A,this.props[A]]);return e}balance(e={}){return this.children.length<=8?this:kS(ys.none,this.children,this.positions,0,this.children.length,0,this.length,(A,t,n)=>new i(this.type,A,t,n,this.propValues),e.makeTree||((A,t,n)=>new i(ys.none,A,t,n)))}static build(e){return W0A(e)}};Pa.empty=new Pa(ys.none,[],[],0);var yS=class i{constructor(e,A){this.buffer=e,this.index=A}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new i(this.buffer,this.index)}},k2=class i{constructor(e,A,t){this.buffer=e,this.length=A,this.set=t}get type(){return ys.none}toString(){let e=[];for(let A=0;A0));s=a[s+3]);return r}slice(e,A,t){let n=this.buffer,o=new Uint16Array(A-e),a=0;for(let r=e,s=0;r=e&&Ae;case 1:return A<=e&&t>e;case 2:return t>e;case 4:return!0}}function h4(i,e,A,t){for(var n;i.from==i.to||(A<1?i.from>=e:i.from>e)||(A>-1?i.to<=e:i.to0?r.length:-1;e!=l;e+=A){let g=r[e],C=s[e]+a.from,d;if(!(!(o&Ga.EnterBracketed&&g instanceof Pa&&(d=bd.get(g))&&!d.overlay&&d.bracketed&&t>=C&&t<=C+g.length)&&!PH(n,t,C,C+g.length))){if(g instanceof k2){if(o&Ga.ExcludeBuffers)continue;let B=g.findChild(0,g.buffer.length,A,t-C,n);if(B>-1)return new E4(new vS(a,g,e,C),null,B)}else if(o&Ga.IncludeAnonymous||!g.type.isAnonymous||SS(g)){let B;if(!(o&Ga.IgnoreMounts)&&(B=bd.get(g))&&!B.overlay)return new i(B.tree,C,e,a);let u=new i(g,C,e,a);return o&Ga.IncludeAnonymous||!u.type.isAnonymous?u:u.nextChild(A<0?g.children.length-1:0,A,t,n,o)}}}if(o&Ga.IncludeAnonymous||!a.type.isAnonymous||(a.index>=0?e=a.index+A:e=A<0?-1:a._parent._tree.children.length,a=a._parent,!a))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,A,t=0){let n;if(!(t&Ga.IgnoreOverlays)&&(n=bd.get(this._tree))&&n.overlay){let o=e-this.from,a=t&Ga.EnterBracketed&&n.bracketed;for(let{from:r,to:s}of n.overlay)if((A>0||a?r<=o:r=o:s>o))return new i(n.tree,n.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,A,t)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}};function HH(i,e,A,t){let n=i.cursor(),o=[];if(!n.firstChild())return o;if(A!=null){for(let a=!1;!a;)if(a=n.type.is(A),!n.nextSibling())return o}for(;;){if(t!=null&&n.type.is(t))return o;if(n.type.is(e)&&o.push(n.node),!n.nextSibling())return t==null?o:[]}}function DS(i,e,A=e.length-1){for(let t=i;A>=0;t=t.parent){if(!t)return!1;if(!t.type.isAnonymous){if(e[A]&&e[A]!=t.name)return!1;A--}}return!0}var vS=class{constructor(e,A,t,n){this.parent=e,this.buffer=A,this.index=t,this.start=n}},E4=class i extends w8{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,A,t){super(),this.context=e,this._parent=A,this.index=t,this.type=e.buffer.set.types[e.buffer.buffer[t]]}child(e,A,t){let{buffer:n}=this.context,o=n.findChild(this.index+4,n.buffer[this.index+3],e,A-this.context.start,t);return o<0?null:new i(this.context,this,o)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,A,t=0){if(t&Ga.ExcludeBuffers)return null;let{buffer:n}=this.context,o=n.findChild(this.index+4,n.buffer[this.index+3],A>0?1:-1,e-this.context.start,A);return o<0?null:new i(this.context,this,o)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,A=e.buffer[this.index+3];return A<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new i(this.context,this._parent,A):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,A=this._parent?this._parent.index+4:0;return this.index==A?this.externalSibling(-1):new i(this.context,this._parent,e.findChild(A,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],A=[],{buffer:t}=this.context,n=this.index+4,o=t.buffer[this.index+3];if(o>n){let a=t.buffer[this.index+1];e.push(t.slice(n,o,a)),A.push(0)}return new Pa(this.type,e,A,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}};function jH(i){if(!i.length)return null;let e=0,A=i[0];for(let o=1;oA.from||a.to=e){let r=new d0(a.tree,a.overlay[0].from+o.from,-1,o);(n||(n=[t])).push(h4(r,e,A,!1))}}return n?jH(n):t}var Q4=class{get name(){return this.type.name}constructor(e,A=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=A&~Ga.EnterBracketed,e instanceof d0)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let t=e._parent;t;t=t._parent)this.stack.unshift(t.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,A){this.index=e;let{start:t,buffer:n}=this.buffer;return this.type=A||n.set.types[n.buffer[e]],this.from=t+n.buffer[e+1],this.to=t+n.buffer[e+2],!0}yield(e){return e?e instanceof d0?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,A,t){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,A,t,this.mode));let{buffer:n}=this.buffer,o=n.findChild(this.index+4,n.buffer[this.index+3],e,A-this.buffer.start,t);return o<0?!1:(this.stack.push(this.index),this.yieldBuf(o))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,A,t=this.mode){return this.buffer?t&Ga.ExcludeBuffers?!1:this.enterChild(1,e,A):this.yield(this._tree.enter(e,A,t))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Ga.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&Ga.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:A}=this.buffer,t=this.stack.length-1;if(e<0){let n=t<0?0:this.stack[t]+4;if(this.index!=n)return this.yieldBuf(A.findChild(n,this.index,-1,0,4))}else{let n=A.buffer[this.index+3];if(n<(t<0?A.buffer.length:A.buffer[this.stack[t]+3]))return this.yieldBuf(n)}return t<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let A,t,{buffer:n}=this;if(n){if(e>0){if(this.index-1)for(let o=A+e,a=e<0?-1:t._tree.children.length;o!=a;o+=e){let r=t._tree.children[o];if(this.mode&Ga.IncludeAnonymous||r instanceof k2||!r.type.isAnonymous||SS(r))return!1}return!0}move(e,A){if(A&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,A=0){for(;(this.from==this.to||(A<1?this.from>=e:this.from>e)||(A>-1?this.to<=e:this.to=0;){for(let a=e;a;a=a._parent)if(a.index==n){if(n==this.index)return a;A=a,t=o+1;break A}n=this.stack[--o]}for(let n=t;n=0;o--){if(o<0)return DS(this._tree,e,n);let a=t[A.buffer[this.stack[o]]];if(!a.isAnonymous){if(e[n]&&e[n]!=a.name)return!1;n--}}return!0}};function SS(i){return i.children.some(e=>e instanceof k2||!e.type.isAnonymous||SS(e))}function W0A(i){var e;let{buffer:A,nodeSet:t,maxBufferLength:n=1024,reused:o=[],minRepeatType:a=t.types.length}=i,r=Array.isArray(A)?new yS(A,A.length):A,s=t.types,l=0,g=0;function C(M,x,F,z,j,X){let{id:eA,start:Z,end:CA,size:wA}=r,BA=g,QA=l;if(wA<0)if(r.next(),wA==-1){let qA=o[eA];F.push(qA),z.push(Z-M);return}else if(wA==-3){l=eA;return}else if(wA==-4){g=eA;return}else throw new RangeError(`Unrecognized record size: ${wA}`);let RA=s[eA],dA,IA,xA=Z-M;if(CA-Z<=n&&(IA=f(r.pos-x,j))){let qA=new Uint16Array(IA.size-IA.skip),ue=r.pos-IA.size,HA=qA.length;for(;r.pos>ue;)HA=m(IA.start,qA,HA);dA=new k2(qA,CA-IA.start,t),xA=IA.start-M}else{let qA=r.pos-wA;r.next();let ue=[],HA=[],bA=eA>=a?eA:-1,PA=0,it=CA;for(;r.pos>qA;)bA>=0&&r.id==bA&&r.size>=0?(r.end<=it-n&&(u(ue,HA,Z,PA,r.end,it,bA,BA,QA),PA=ue.length,it=r.end),r.next()):X>2500?d(Z,qA,ue,HA):C(Z,qA,ue,HA,bA,X+1);if(bA>=0&&PA>0&&PA-1&&PA>0){let Xe=B(RA,QA);dA=kS(RA,ue,HA,0,ue.length,0,CA-Z,Xe,Xe)}else dA=E(RA,ue,HA,CA-Z,BA-CA,QA)}F.push(dA),z.push(xA)}function d(M,x,F,z){let j=[],X=0,eA=-1;for(;r.pos>x;){let{id:Z,start:CA,end:wA,size:BA}=r;if(BA>4)r.next();else{if(eA>-1&&CA=0;wA-=3)Z[BA++]=j[wA],Z[BA++]=j[wA+1]-CA,Z[BA++]=j[wA+2]-CA,Z[BA++]=BA;F.push(new k2(Z,j[2]-CA,t)),z.push(CA-M)}}function B(M,x){return(F,z,j)=>{let X=0,eA=F.length-1,Z,CA;if(eA>=0&&(Z=F[eA])instanceof Pa){if(!eA&&Z.type==M&&Z.length==j)return Z;(CA=Z.prop(Hi.lookAhead))&&(X=z[eA]+Z.length+CA)}return E(M,F,z,j,X,x)}}function u(M,x,F,z,j,X,eA,Z,CA){let wA=[],BA=[];for(;M.length>z;)wA.push(M.pop()),BA.push(x.pop()+F-j);M.push(E(t.types[eA],wA,BA,X-j,Z-X,CA)),x.push(j-F)}function E(M,x,F,z,j,X,eA){if(X){let Z=[Hi.contextHash,X];eA=eA?[Z].concat(eA):[Z]}if(j>25){let Z=[Hi.lookAhead,j];eA=eA?[Z].concat(eA):[Z]}return new Pa(M,x,F,z,eA)}function f(M,x){let F=r.fork(),z=0,j=0,X=0,eA=F.end-n,Z={size:0,start:0,skip:0};A:for(let CA=F.pos-M;F.pos>CA;){let wA=F.size;if(F.id==x&&wA>=0){Z.size=z,Z.start=j,Z.skip=X,X+=4,z+=4,F.next();continue}let BA=F.pos-wA;if(wA<0||BA=a?4:0,RA=F.start;for(F.next();F.pos>BA;){if(F.size<0)if(F.size==-3||F.size==-4)QA+=4;else break A;else F.id>=a&&(QA+=4);F.next()}j=RA,z+=wA,X+=QA}return(x<0||z==M)&&(Z.size=z,Z.start=j,Z.skip=X),Z.size>4?Z:void 0}function m(M,x,F){let{id:z,start:j,end:X,size:eA}=r;if(r.next(),eA>=0&&z4){let CA=r.pos-(eA-4);for(;r.pos>CA;)F=m(M,x,F)}x[--F]=Z,x[--F]=X-M,x[--F]=j-M,x[--F]=z}else eA==-3?l=z:eA==-4&&(g=z);return F}let v=[],S=[];for(;r.pos>0;)C(i.start||0,i.bufferStart||0,v,S,-1,0);let k=(e=i.length)!==null&&e!==void 0?e:v.length?S[0]+v[0].length:0;return new Pa(s[i.topID],v.reverse(),S.reverse(),k)}var zH=new WeakMap;function m8(i,e){if(!i.isAnonymous||e instanceof k2||e.type!=i)return 1;let A=zH.get(e);if(A==null){A=1;for(let t of e.children){if(t.type!=i||!(t instanceof Pa)){A=1;break}A+=m8(i,t)}zH.set(e,A)}return A}function kS(i,e,A,t,n,o,a,r,s){let l=0;for(let u=t;u=g)break;x+=F}if(S==k+1){if(x>g){let F=u[k];B(F.children,F.positions,0,F.children.length,E[k]+v);continue}C.push(u[k])}else{let F=E[S-1]+u[S-1].length-M;C.push(kS(i,u,E,k,S,M,F,null,s))}d.push(M+v-o)}}return B(e,A,t,n,0),(r||s)(C,d,a)}var Md=class i{constructor(e,A,t,n,o=!1,a=!1){this.from=e,this.to=A,this.tree=t,this.offset=n,this.open=(o?1:0)|(a?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,A=[],t=!1){let n=[new i(0,e.length,e,0,!1,t)];for(let o of A)o.to>e.length&&n.push(o);return n}static applyChanges(e,A,t=128){if(!A.length)return e;let n=[],o=1,a=e.length?e[0]:null;for(let r=0,s=0,l=0;;r++){let g=r=t)for(;a&&a.from=d.from||C<=d.to||l){let B=Math.max(d.from,s)-l,u=Math.min(d.to,C)-l;d=B>=u?null:new i(B,u,d.tree,d.offset+l,r>0,!!g)}if(d&&n.push(d),a.to>C)break;a=onew I4(n.from,n.to)):[new I4(0,0)]:[new I4(0,e.length)],this.createParse(e,A||[],t)}parse(e,A,t){let n=this.startParse(e,A,t);for(;;){let o=n.advance();if(o)return o}}},MS=class{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,A){return this.string.slice(e,A)}};var VAe=new Hi({perNode:!0});var Z0A=0,lc=class i{constructor(e,A,t,n){this.name=e,this.set=A,this.base=t,this.modified=n,this.id=Z0A++}toString(){let{name:e}=this;for(let A of this.modified)A.name&&(e=`${A.name}(${e})`);return e}static define(e,A){let t=typeof e=="string"?e:"?";if(e instanceof i&&(A=e),A?.base)throw new Error("Can not derive from a modified tag");let n=new i(t,[],null,[]);if(n.set.push(n),A)for(let o of A.set)n.set.push(o);return n}static defineModifier(e){let A=new b8(e);return t=>t.modified.indexOf(A)>-1?t:b8.get(t.base||t,t.modified.concat(A).sort((n,o)=>n.id-o.id))}},X0A=0,b8=class i{constructor(e){this.name=e,this.instances=[],this.id=X0A++}static get(e,A){if(!A.length)return e;let t=A[0].instances.find(r=>r.base==e&&$0A(A,r.modified));if(t)return t;let n=[],o=new lc(e.name,n,e,A);for(let r of A)r.instances.push(o);let a=ACA(A);for(let r of e.set)if(!r.modified.length)for(let s of a)n.push(i.get(r,s));return o}};function $0A(i,e){return i.length==e.length&&i.every((A,t)=>A==e[t])}function ACA(i){let e=[[]];for(let A=0;At.length-A.length)}function M8(i){let e=Object.create(null);for(let A in i){let t=i[A];Array.isArray(t)||(t=[t]);for(let n of A.split(" "))if(n){let o=[],a=2,r=n;for(let C=0;;){if(r=="..."&&C>0&&C+3==n.length){a=1;break}let d=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(r);if(!d)throw new RangeError("Invalid path: "+n);if(o.push(d[0]=="*"?"":d[0][0]=='"'?JSON.parse(d[0]):d[0]),C+=d[0].length,C==n.length)break;let B=n[C++];if(C==n.length&&B=="!"){a=0;break}if(B!="/")throw new RangeError("Invalid path: "+n);r=n.slice(C)}let s=o.length-1,l=o[s];if(!l)throw new RangeError("Invalid path: "+n);let g=new kd(t,a,s>0?o.slice(0,s):null);e[l]=g.sort(e[l])}}return WH.add(e)}var WH=new Hi({combine(i,e){let A,t,n;for(;i||e;){if(!i||e&&i.depth>=e.depth?(n=e,e=e.next):(n=i,i=i.next),A&&A.mode==n.mode&&!n.context&&!A.context)continue;let o=new kd(n.tags,n.mode,n.context);A?A.next=o:t=o,A=o}return t}}),kd=class{constructor(e,A,t,n){this.tags=e,this.mode=A,this.context=t,this.next=n}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth{let a=n;for(let r of o)for(let s of r.set){let l=A[s.id];if(l){a=a?a+" "+l:l;break}}return a},scope:t}}function eCA(i,e){let A=null;for(let t of i){let n=t.style(e);n&&(A=A?A+" "+n:n)}return A}function ZH(i,e,A,t=0,n=i.length){let o=new xS(t,Array.isArray(e)?e:[e],A);o.highlightRange(i.cursor(),t,n,"",o.highlighters),o.flush(n)}var xS=class{constructor(e,A,t){this.at=e,this.highlighters=A,this.span=t,this.class=""}startSpan(e,A){A!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=A)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,A,t,n,o){let{type:a,from:r,to:s}=e;if(r>=t||s<=A)return;a.isTop&&(o=this.highlighters.filter(B=>!B.scope||B.scope(a)));let l=n,g=tCA(e)||kd.empty,C=eCA(o,g.tags);if(C&&(l&&(l+=" "),l+=C,g.mode==1&&(n+=(n?" ":"")+C)),this.startSpan(Math.max(A,r),l),g.opaque)return;let d=e.tree&&e.tree.prop(Hi.mounted);if(d&&d.overlay){let B=e.node.enter(d.overlay[0].from+r,1),u=this.highlighters.filter(f=>!f.scope||f.scope(d.tree.type)),E=e.firstChild();for(let f=0,m=r;;f++){let v=f=S||!e.nextSibling())););if(!v||S>t)break;m=v.to+r,m>A&&(this.highlightRange(B.cursor(),Math.max(A,v.from+r),Math.min(t,m),"",u),this.startSpan(Math.min(t,m),l))}E&&e.parent()}else if(e.firstChild()){d&&(n="");do if(!(e.to<=A)){if(e.from>=t)break;this.highlightRange(e,A,t,n,o),this.startSpan(Math.min(t,e.to),l)}while(e.nextSibling());e.parent()}}};function tCA(i){let e=i.type.prop(WH);for(;e&&e.context&&!i.matchContext(e.context);)e=e.next;return e||null}var tt=lc.define,y8=tt(),_2=tt(),VH=tt(_2),qH=tt(_2),x2=tt(),D8=tt(x2),_S=tt(x2),h0=tt(),Sd=tt(h0),I0=tt(),B0=tt(),RS=tt(),u4=tt(RS),v8=tt(),Oe={comment:y8,lineComment:tt(y8),blockComment:tt(y8),docComment:tt(y8),name:_2,variableName:tt(_2),typeName:VH,tagName:tt(VH),propertyName:qH,attributeName:tt(qH),className:tt(_2),labelName:tt(_2),namespace:tt(_2),macroName:tt(_2),literal:x2,string:D8,docString:tt(D8),character:tt(D8),attributeValue:tt(D8),number:_S,integer:tt(_S),float:tt(_S),bool:tt(x2),regexp:tt(x2),escape:tt(x2),color:tt(x2),url:tt(x2),keyword:I0,self:tt(I0),null:tt(I0),atom:tt(I0),unit:tt(I0),modifier:tt(I0),operatorKeyword:tt(I0),controlKeyword:tt(I0),definitionKeyword:tt(I0),moduleKeyword:tt(I0),operator:B0,derefOperator:tt(B0),arithmeticOperator:tt(B0),logicOperator:tt(B0),bitwiseOperator:tt(B0),compareOperator:tt(B0),updateOperator:tt(B0),definitionOperator:tt(B0),typeOperator:tt(B0),controlOperator:tt(B0),punctuation:RS,separator:tt(RS),bracket:u4,angleBracket:tt(u4),squareBracket:tt(u4),paren:tt(u4),brace:tt(u4),content:h0,heading:Sd,heading1:tt(Sd),heading2:tt(Sd),heading3:tt(Sd),heading4:tt(Sd),heading5:tt(Sd),heading6:tt(Sd),contentSeparator:tt(h0),list:tt(h0),quote:tt(h0),emphasis:tt(h0),strong:tt(h0),link:tt(h0),monospace:tt(h0),strikethrough:tt(h0),inserted:tt(),deleted:tt(),changed:tt(),invalid:tt(),meta:v8,documentMeta:tt(v8),annotation:tt(v8),processingInstruction:tt(v8),definition:lc.defineModifier("definition"),constant:lc.defineModifier("constant"),function:lc.defineModifier("function"),standard:lc.defineModifier("standard"),local:lc.defineModifier("local"),special:lc.defineModifier("special")};for(let i in Oe){let e=Oe[i];e instanceof lc&&(e.name=i)}var ZAe=NS([{tag:Oe.link,class:"tok-link"},{tag:Oe.heading,class:"tok-heading"},{tag:Oe.emphasis,class:"tok-emphasis"},{tag:Oe.strong,class:"tok-strong"},{tag:Oe.keyword,class:"tok-keyword"},{tag:Oe.atom,class:"tok-atom"},{tag:Oe.bool,class:"tok-bool"},{tag:Oe.url,class:"tok-url"},{tag:Oe.labelName,class:"tok-labelName"},{tag:Oe.inserted,class:"tok-inserted"},{tag:Oe.deleted,class:"tok-deleted"},{tag:Oe.literal,class:"tok-literal"},{tag:Oe.string,class:"tok-string"},{tag:Oe.number,class:"tok-number"},{tag:[Oe.regexp,Oe.escape,Oe.special(Oe.string)],class:"tok-string2"},{tag:Oe.variableName,class:"tok-variableName"},{tag:Oe.local(Oe.variableName),class:"tok-variableName tok-local"},{tag:Oe.definition(Oe.variableName),class:"tok-variableName tok-definition"},{tag:Oe.special(Oe.variableName),class:"tok-variableName2"},{tag:Oe.definition(Oe.propertyName),class:"tok-propertyName tok-definition"},{tag:Oe.typeName,class:"tok-typeName"},{tag:Oe.namespace,class:"tok-namespace"},{tag:Oe.className,class:"tok-className"},{tag:Oe.macroName,class:"tok-macroName"},{tag:Oe.propertyName,class:"tok-propertyName"},{tag:Oe.operator,class:"tok-operator"},{tag:Oe.comment,class:"tok-comment"},{tag:Oe.meta,class:"tok-meta"},{tag:Oe.invalid,class:"tok-invalid"},{tag:Oe.punctuation,class:"tok-punctuation"}]);var FS,dh=new Hi;function iCA(i){return nt.define({combine:i?e=>e.concat(i):void 0})}var nCA=new Hi,gc=(()=>{class i{constructor(A,t,n=[],o=""){this.data=A,this.name=o,ir.prototype.hasOwnProperty("tree")||Object.defineProperty(ir.prototype,"tree",{get(){return Kr(this)}}),this.parser=t,this.extension=[R2.of(this),ir.languageData.of((a,r,s)=>{let l=XH(a,r,s),g=l.type.prop(dh);if(!g)return[];let C=a.facet(g),d=l.type.prop(nCA);if(d){let B=l.resolve(r-l.from,s);for(let u of d)if(u.test(B,a)){let E=a.facet(u.facet);return u.type=="replace"?E:E.concat(C)}}return C})].concat(n)}isActiveAt(A,t,n=-1){return XH(A,t,n).type.prop(dh)==this.data}findRegions(A){let t=A.facet(R2);if(t?.data==this.data)return[{from:0,to:A.doc.length}];if(!t||!t.allowsNesting)return[];let n=[],o=(a,r)=>{if(a.prop(dh)==this.data){n.push({from:r,to:r+a.length});return}let s=a.prop(Hi.mounted);if(s){if(s.tree.prop(dh)==this.data){if(s.overlay)for(let l of s.overlay)n.push({from:l.from+r,to:l.to+r});else n.push({from:r,to:r+a.length});return}else if(s.overlay){let l=n.length;if(o(s.tree,s.overlay[0].from+r),n.length>l)return}}for(let l=0;lt.isTop?A:void 0)]}),e.name)}configure(e,A){return new i(this.data,this.parser.configure(e),A||this.name)}get allowsNesting(){return this.parser.hasWrappers()}};function Kr(i){let e=i.field(gc.state,!1);return e?e.tree:Pa.empty}function jS(i,e,A=50){var t;let n=(t=i.field(gc.state,!1))===null||t===void 0?void 0:t.context;if(!n)return null;let o=n.viewport;n.updateViewport({from:0,to:e});let a=n.isDone(e)||n.work(A,e)?n.tree:null;return n.updateViewport(o),a}var US=class{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,A){let t=this.cursorPos-this.string.length;return e=this.cursorPos?this.doc.sliceString(e,A):this.string.slice(e-t,A-t)}},p4=null,TS=class i{constructor(e,A,t=[],n,o,a,r,s){this.parser=e,this.state=A,this.fragments=t,this.tree=n,this.treeLen=o,this.viewport=a,this.skipped=r,this.scheduleOn=s,this.parse=null,this.tempSkipped=[]}static create(e,A,t){return new i(e,A,[],Pa.empty,0,t,[],null)}startParse(){return this.parser.startParse(new US(this.state.doc),this.fragments)}work(e,A){return A!=null&&A>=this.state.doc.length&&(A=void 0),this.tree!=Pa.empty&&this.isDone(A??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var t;if(typeof e=="number"){let n=Date.now()+e;e=()=>Date.now()>n}for(this.parse||(this.parse=this.startParse()),A!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>A)&&A=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(A=this.parse.advance()););}),this.treeLen=e,this.tree=A,this.fragments=this.withoutTempSkipped(Md.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let A=p4;p4=this;try{return e()}finally{p4=A}}withoutTempSkipped(e){for(let A;A=this.tempSkipped.pop();)e=$H(e,A.from,A.to);return e}changes(e,A){let{fragments:t,tree:n,treeLen:o,viewport:a,skipped:r}=this;if(this.takeTree(),!e.empty){let s=[];if(e.iterChangedRanges((l,g,C,d)=>s.push({fromA:l,toA:g,fromB:C,toB:d})),t=Md.applyChanges(t,s),n=Pa.empty,o=0,a={from:e.mapPos(a.from,-1),to:e.mapPos(a.to,1)},this.skipped.length){r=[];for(let l of this.skipped){let g=e.mapPos(l.from,1),C=e.mapPos(l.to,-1);ge.from&&(this.fragments=$H(this.fragments,n,o),this.skipped.splice(t--,1))}return this.skipped.length>=A?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,A){this.skipped.push({from:e,to:A})}static getSkippingParser(e){return new class extends Ch{createParse(A,t,n){let o=n[0].from,a=n[n.length-1].to;return{parsedPos:o,advance(){let s=p4;if(s){for(let l of n)s.tempSkipped.push(l);e&&(s.scheduleOn=s.scheduleOn?Promise.all([s.scheduleOn,e]):e)}return this.parsedPos=a,new Pa(ys.none,[],[],a-o)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let A=this.fragments;return this.treeLen>=e&&A.length&&A[0].from==0&&A[0].to>=e}static get(){return p4}};function $H(i,e,A){return Md.applyChanges(i,[{fromA:e,toA:A,fromB:e,toB:A}])}var m4=class i{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let A=this.context.changes(e.changes,e.state),t=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),A.viewport.to);return A.work(20,t)||A.takeTree(),new i(A)}static init(e){let A=Math.min(3e3,e.doc.length),t=TS.create(e.facet(R2).parser,e,{from:0,to:A});return t.work(20,A)||t.takeTree(),new i(t)}};gc.state=La.define({create:m4.init,update(i,e){for(let A of e.effects)if(A.is(gc.setState))return A.value;return e.startState.facet(R2)!=e.state.facet(R2)?m4.init(e.state):i.apply(e)}});var az=i=>{let e=setTimeout(()=>i(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(az=i=>{let e=-1,A=setTimeout(()=>{e=requestIdleCallback(i,{timeout:400})},100);return()=>e<0?clearTimeout(A):cancelIdleCallback(e)});var LS=typeof navigator<"u"&&(!((FS=navigator.scheduling)===null||FS===void 0)&&FS.isInputPending)?()=>navigator.scheduling.isInputPending():null,oCA=Po.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let A=this.view.state.field(gc.state).context;(A.updateViewport(e.view.viewport)||this.view.viewport.to>A.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(A)}scheduleWork(){if(this.working)return;let{state:e}=this.view,A=e.field(gc.state);(A.tree!=A.context.tree||!A.context.isDone(e.doc.length))&&(this.working=az(this.work))}work(e){this.working=null;let A=Date.now();if(this.chunkEndn+1e3,s=o.context.work(()=>LS&&LS()||Date.now()>a,n+(r?0:1e5));this.chunkBudget-=Date.now()-A,(s||this.chunkBudget<=0)&&(o.context.takeTree(),this.view.dispatch({effects:gc.setState.of(new m4(o.context))})),this.chunkBudget>0&&!(s&&!r)&&this.scheduleWork(),this.checkAsyncSchedule(o.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(A=>Gr(this.view.state,A)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),R2=nt.define({combine(i){return i.length?i[0]:null},enables:i=>[gc.state,oCA,ui.contentAttributes.compute([i],e=>{let A=e.facet(i);return A&&A.name?{"data-language":A.name}:{}})]}),k8=class{constructor(e,A=[]){this.language=e,this.support=A,this.extension=[e,A]}};var aCA=nt.define(),Rd=nt.define({combine:i=>{if(!i.length)return" ";let e=i[0];if(!e||/\S/.test(e)||Array.from(e).some(A=>A!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(i[0]));return e}});function Cc(i){let e=i.facet(Rd);return e.charCodeAt(0)==9?i.tabSize*e.length:e.length}function hh(i,e){let A="",t=i.tabSize,n=i.facet(Rd)[0];if(n==" "){for(;e>=t;)A+=" ",e-=t;n=" "}for(let o=0;o=e?rCA(i,A,e):null}var _d=class{constructor(e,A={}){this.state=e,this.options=A,this.unit=Cc(e)}lineAt(e,A=1){let t=this.state.doc.lineAt(e),{simulateBreak:n,simulateDoubleBreak:o}=this.options;return n!=null&&n>=t.from&&n<=t.to?o&&n==e?{text:"",from:e}:(A<0?n-1&&(o+=a-this.countColumn(t,t.search(/\S|$/))),o}countColumn(e,A=e.length){return rC(e,this.state.tabSize,A)}lineIndent(e,A=1){let{text:t,from:n}=this.lineAt(e,A),o=this.options.overrideIndentation;if(o){let a=o(n);if(a>-1)return a}return this.countColumn(t,t.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}},VS=new Hi;function rCA(i,e,A){let t=e.resolveStack(A),n=e.resolveInner(A,-1).resolve(A,0).enterUnfinishedNodesBefore(A);if(n!=t.node){let o=[];for(let a=n;a&&!(a.fromt.node.to||a.from==t.node.from&&a.type==t.node.type);a=a.parent)o.push(a);for(let a=o.length-1;a>=0;a--)t={node:o[a],next:t}}return rz(t,i,A)}function rz(i,e,A){for(let t=i;t;t=t.next){let n=lCA(t.node);if(n)return n(OS.create(e,A,t))}return 0}function sCA(i){return i.pos==i.options.simulateBreak&&i.options.simulateDoubleBreak}function lCA(i){let e=i.type.prop(VS);if(e)return e;let A=i.firstChild,t;if(A&&(t=A.type.prop(Hi.closedBy))){let n=i.lastChild,o=n&&t.indexOf(n.name)>-1;return a=>dCA(a,!0,1,void 0,o&&!sCA(a)?n.from:void 0)}return i.parent==null?gCA:null}function gCA(){return 0}var OS=class i extends _d{constructor(e,A,t){super(e.state,e.options),this.base=e,this.pos=A,this.context=t}get node(){return this.context.node}static create(e,A,t){return new i(e,A,t)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let A=this.state.doc.lineAt(e.from);for(;;){let t=e.resolve(A.from);for(;t.parent&&t.parent.from==t.from;)t=t.parent;if(cCA(t,e))break;A=this.state.doc.lineAt(t.from)}return this.lineIndent(A.from)}continue(){return rz(this.context.next,this.base,this.pos)}};function cCA(i,e){for(let A=e;A;A=A.parent)if(i==A)return!0;return!1}function CCA(i){let e=i.node,A=e.childAfter(e.from),t=e.lastChild;if(!A)return null;let n=i.options.simulateBreak,o=i.state.doc.lineAt(A.from),a=n==null||n<=o.from?o.to:Math.min(o.to,n);for(let r=A.to;;){let s=e.childAfter(r);if(!s||s==t)return null;if(!s.type.isSkipped){if(s.from>=a)return null;let l=/^ */.exec(o.text.slice(A.to-o.from))[0].length;return{from:A.from,to:A.to+l}}r=s.to}}function dCA(i,e,A,t,n){let o=i.textAfter,a=o.match(/^\s*/)[0].length,r=t&&o.slice(a,a+t.length)==t||n==i.pos+a,s=e?CCA(i):null;return s?r?i.column(s.from):i.column(s.to):i.baseIndent+(r?0:i.unit*A)}function qS({except:i,units:e=1}={}){return A=>{let t=i&&i.test(A.textAfter);return A.baseIndent+(t?0:e*A.unit)}}var ICA=200;function sz(){return ir.transactionFilter.of(i=>{if(!i.docChanged||!i.isUserEvent("input.type")&&!i.isUserEvent("input.complete"))return i;let e=i.startState.languageDataAt("indentOnInput",i.startState.selection.main.head);if(!e.length)return i;let A=i.newDoc,{head:t}=i.newSelection.main,n=A.lineAt(t);if(t>n.from+ICA)return i;let o=A.sliceString(n.from,t);if(!e.some(l=>l.test(o)))return i;let{state:a}=i,r=-1,s=[];for(let{head:l}of a.selection.ranges){let g=a.doc.lineAt(l);if(g.from==r)continue;r=g.from;let C=x8(a,g.from);if(C==null)continue;let d=/^\s*/.exec(g.text)[0],B=hh(a,C);d!=B&&s.push({from:g.from,to:g.from+d.length,insert:B})}return s.length?[i,{changes:s,sequential:!0}]:i})}var WS=nt.define(),w4=new Hi;function lz(i){let e=i.firstChild,A=i.lastChild;return e&&e.toA)continue;if(o&&r.from=e&&l.to>A&&(o=l)}}return o}function hCA(i){let e=i.lastChild;return e&&e.to==i.to&&e.type.isError}function Ih(i,e,A){for(let t of i.facet(WS)){let n=t(i,e,A);if(n)return n}return BCA(i,e,A)}function gz(i,e){let A=e.mapPos(i.from,1),t=e.mapPos(i.to,-1);return A>=t?void 0:{from:A,to:t}}var Eh=ln.define({map:gz}),y4=ln.define({map:gz});function cz(i){let e=[];for(let{head:A}of i.state.selection.ranges)e.some(t=>t.from<=A&&t.to>=A)||e.push(i.lineBlockAt(A));return e}var xd=La.define({create(){return Lt.none},update(i,e){e.isUserEvent("delete")&&e.changes.iterChangedRanges((A,t)=>i=Az(i,A,t)),i=i.map(e.changes);for(let A of e.effects)if(A.is(Eh)&&!ECA(i,A.value.from,A.value.to)){let{preparePlaceholder:t}=e.state.facet($S),n=t?Lt.replace({widget:new JS(t(e.state,A.value))}):ez;i=i.update({add:[n.range(A.value.from,A.value.to)]})}else A.is(y4)&&(i=i.update({filter:(t,n)=>A.value.from!=t||A.value.to!=n,filterFrom:A.value.from,filterTo:A.value.to}));return e.selection&&(i=Az(i,e.selection.main.head)),i},provide:i=>ui.decorations.from(i),toJSON(i,e){let A=[];return i.between(0,e.doc.length,(t,n)=>{A.push(t,n)}),A},fromJSON(i){if(!Array.isArray(i)||i.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let A=0;A{ne&&(t=!0)}),t?i.update({filterFrom:e,filterTo:A,filter:(n,o)=>n>=A||o<=e}):i}function _8(i,e,A){var t;let n=null;return(t=i.field(xd,!1))===null||t===void 0||t.between(e,A,(o,a)=>{(!n||n.from>o)&&(n={from:o,to:a})}),n}function ECA(i,e,A){let t=!1;return i.between(e,e,(n,o)=>{n==e&&o==A&&(t=!0)}),t}function Cz(i,e){return i.field(xd,!1)?e:e.concat(ln.appendConfig.of(Bz()))}var QCA=i=>{for(let e of cz(i)){let A=Ih(i.state,e.from,e.to);if(A)return i.dispatch({effects:Cz(i.state,[Eh.of(A),dz(i,A)])}),!0}return!1},ZS=i=>{if(!i.state.field(xd,!1))return!1;let e=[];for(let A of cz(i)){let t=_8(i.state,A.from,A.to);t&&e.push(y4.of(t),dz(i,t,!1))}return e.length&&i.dispatch({effects:e}),e.length>0};function dz(i,e,A=!0){let t=i.state.doc.lineAt(e.from).number,n=i.state.doc.lineAt(e.to).number;return ui.announce.of(`${i.state.phrase(A?"Folded lines":"Unfolded lines")} ${t} ${i.state.phrase("to")} ${n}.`)}var uCA=i=>{let{state:e}=i,A=[];for(let t=0;t{let e=i.state.field(xd,!1);if(!e||!e.size)return!1;let A=[];return e.between(0,i.state.doc.length,(t,n)=>{A.push(y4.of({from:t,to:n}))}),i.dispatch({effects:A}),!0};var Iz=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:QCA},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:ZS},{key:"Ctrl-Alt-[",run:uCA},{key:"Ctrl-Alt-]",run:XS}],pCA={placeholderDOM:null,preparePlaceholder:null,placeholderText:"\u2026"},$S=nt.define({combine(i){return Lr(i,pCA)}});function Bz(i){let e=[xd,mCA];return i&&e.push($S.of(i)),e}function hz(i,e){let{state:A}=i,t=A.facet($S),n=a=>{let r=i.lineBlockAt(i.posAtDOM(a.target)),s=_8(i.state,r.from,r.to);s&&i.dispatch({effects:y4.of(s)}),a.preventDefault()};if(t.placeholderDOM)return t.placeholderDOM(i,n,e);let o=document.createElement("span");return o.textContent=t.placeholderText,o.setAttribute("aria-label",A.phrase("folded code")),o.title=A.phrase("unfold"),o.className="cm-foldPlaceholder",o.onclick=n,o}var ez=Lt.replace({widget:new class extends gl{toDOM(i){return hz(i,null)}}}),JS=class extends gl{constructor(e){super(),this.value=e}eq(e){return this.value==e.value}toDOM(e){return hz(e,this.value)}},fCA={openText:"\u2304",closedText:"\u203A",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1},f4=class extends Cl{constructor(e,A){super(),this.config=e,this.open=A}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let A=document.createElement("span");return A.textContent=this.open?this.config.openText:this.config.closedText,A.title=e.state.phrase(this.open?"Fold line":"Unfold line"),A}};function Ez(i={}){let e=P(P({},fCA),i),A=new f4(e,!0),t=new f4(e,!1),n=Po.fromClass(class{constructor(a){this.from=a.viewport.from,this.markers=this.buildMarkers(a)}update(a){(a.docChanged||a.viewportChanged||a.startState.facet(R2)!=a.state.facet(R2)||a.startState.field(xd,!1)!=a.state.field(xd,!1)||Kr(a.startState)!=Kr(a.state)||e.foldingChanged(a))&&(this.markers=this.buildMarkers(a.view))}buildMarkers(a){let r=new Xr;for(let s of a.viewportLineBlocks){let l=_8(a.state,s.from,s.to)?t:Ih(a.state,s.from,s.to)?A:null;l&&r.add(s.from,s.from,l)}return r.finish()}}),{domEventHandlers:o}=e;return[n,p8({class:"cm-foldGutter",markers(a){var r;return((r=a.plugin(n))===null||r===void 0?void 0:r.markers)||uo.empty},initialSpacer(){return new f4(e,!1)},domEventHandlers:$A(P({},o),{click:(a,r,s)=>{if(o.click&&o.click(a,r,s))return!0;let l=_8(a.state,r.from,r.to);if(l)return a.dispatch({effects:y4.of(l)}),!0;let g=Ih(a.state,r.from,r.to);return g?(a.dispatch({effects:Eh.of(g)}),!0):!1}})}),Bz()]}var mCA=ui.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}}),Bh=class i{constructor(e,A){this.specs=e;let t;function n(r){let s=Cg.newName();return(t||(t=Object.create(null)))["."+s]=r,s}let o=typeof A.all=="string"?A.all:A.all?n(A.all):void 0,a=A.scope;this.scope=a instanceof gc?r=>r.prop(dh)==a.data:a?r=>r==a:void 0,this.style=NS(e.map(r=>({tag:r.tag,class:r.class||n(Object.assign({},r,{tag:null}))})),{all:o}).style,this.module=t?new Cg(t):null,this.themeType=A.themeType}static define(e,A){return new i(e,A||{})}},YS=nt.define(),Qz=nt.define({combine(i){return i.length?[i[0]]:null}});function GS(i){let e=i.facet(YS);return e.length?e:i.facet(Qz)}function Ak(i,e){let A=[wCA],t;return i instanceof Bh&&(i.module&&A.push(ui.styleModule.of(i.module)),t=i.themeType),e?.fallback?A.push(Qz.of(i)):t?A.push(YS.computeN([ui.darkTheme],n=>n.facet(ui.darkTheme)==(t=="dark")?[i]:[])):A.push(YS.of(i)),A}var HS=class{constructor(e){this.markCache=Object.create(null),this.tree=Kr(e.state),this.decorations=this.buildDeco(e,GS(e.state)),this.decoratedTo=e.viewport.to}update(e){let A=Kr(e.state),t=GS(e.state),n=t!=GS(e.startState),{viewport:o}=e.view,a=e.changes.mapPos(this.decoratedTo,1);A.length=o.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=a):(A!=this.tree||e.viewportChanged||n)&&(this.tree=A,this.decorations=this.buildDeco(e.view,t),this.decoratedTo=o.to)}buildDeco(e,A){if(!A||!this.tree.length)return Lt.none;let t=new Xr;for(let{from:n,to:o}of e.visibleRanges)ZH(this.tree,A,(a,r,s)=>{t.add(a,r,this.markCache[s]||(this.markCache[s]=Lt.mark({class:s})))},n,o);return t.finish()}},wCA=oc.high(Po.fromClass(HS,{decorations:i=>i.decorations})),uz=Bh.define([{tag:Oe.meta,color:"#404740"},{tag:Oe.link,textDecoration:"underline"},{tag:Oe.heading,textDecoration:"underline",fontWeight:"bold"},{tag:Oe.emphasis,fontStyle:"italic"},{tag:Oe.strong,fontWeight:"bold"},{tag:Oe.strikethrough,textDecoration:"line-through"},{tag:Oe.keyword,color:"#708"},{tag:[Oe.atom,Oe.bool,Oe.url,Oe.contentSeparator,Oe.labelName],color:"#219"},{tag:[Oe.literal,Oe.inserted],color:"#164"},{tag:[Oe.string,Oe.deleted],color:"#a11"},{tag:[Oe.regexp,Oe.escape,Oe.special(Oe.string)],color:"#e40"},{tag:Oe.definition(Oe.variableName),color:"#00f"},{tag:Oe.local(Oe.variableName),color:"#30a"},{tag:[Oe.typeName,Oe.namespace],color:"#085"},{tag:Oe.className,color:"#167"},{tag:[Oe.special(Oe.variableName),Oe.macroName],color:"#256"},{tag:Oe.definition(Oe.propertyName),color:"#00c"},{tag:Oe.comment,color:"#940"},{tag:Oe.invalid,color:"#f00"}]),yCA=ui.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),pz=1e4,fz="()[]{}",mz=nt.define({combine(i){return Lr(i,{afterCursor:!0,brackets:fz,maxScanDistance:pz,renderMatch:bCA})}}),DCA=Lt.mark({class:"cm-matchingBracket"}),vCA=Lt.mark({class:"cm-nonmatchingBracket"});function bCA(i){let e=[],A=i.matched?DCA:vCA;return e.push(A.range(i.start.from,i.start.to)),i.end&&e.push(A.range(i.end.from,i.end.to)),e}function tz(i){let e=[],A=i.facet(mz);for(let t of i.selection.ranges){if(!t.empty)continue;let n=cc(i,t.head,-1,A)||t.head>0&&cc(i,t.head-1,1,A)||A.afterCursor&&(cc(i,t.head,1,A)||t.headi.decorations}),SCA=[MCA,yCA];function wz(i={}){return[mz.of(i),SCA]}var kCA=new Hi;function zS(i,e,A){let t=i.prop(e<0?Hi.openedBy:Hi.closedBy);if(t)return t;if(i.name.length==1){let n=A.indexOf(i.name);if(n>-1&&n%2==(e<0?1:0))return[A[n+e]]}return null}function PS(i){let e=i.type.prop(kCA);return e?e(i.node):i}function cc(i,e,A,t={}){let n=t.maxScanDistance||pz,o=t.brackets||fz,a=Kr(i),r=a.resolveInner(e,A);for(let s=r;s;s=s.parent){let l=zS(s.type,A,o);if(l&&s.from0?e>=g.from&&eg.from&&e<=g.to))return _CA(i,e,A,s,g,l,o)}}return xCA(i,e,A,a,r.type,n,o)}function _CA(i,e,A,t,n,o,a){let r=t.parent,s={from:n.from,to:n.to},l=0,g=r?.cursor();if(g&&(A<0?g.childBefore(t.from):g.childAfter(t.to)))do if(A<0?g.to<=t.from:g.from>=t.to){if(l==0&&o.indexOf(g.type.name)>-1&&g.from0)return null;let l={from:A<0?e-1:e,to:A>0?e+1:e},g=i.doc.iterRange(e,A>0?i.doc.length:0),C=0;for(let d=0;!g.next().done&&d<=o;){let B=g.value;A<0&&(d+=B.length);let u=e+d*A;for(let E=A>0?0:B.length-1,f=A>0?B.length:-1;E!=f;E+=A){let m=a.indexOf(B[E]);if(!(m<0||t.resolveInner(u+E,1).type!=n))if(m%2==0==A>0)C++;else{if(C==1)return{start:l,end:{from:u+E,to:u+E+1},matched:m>>1==s>>1};C--}}A>0&&(d+=B.length)}return g.done?{start:l,matched:!1}:null}var RCA=Object.create(null),iz=[ys.none];var nz=[],oz=Object.create(null),NCA=Object.create(null);for(let[i,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])NCA[i]=FCA(RCA,e);function KS(i,e){nz.indexOf(i)>-1||(nz.push(i),console.warn(e))}function FCA(i,e){let A=[];for(let r of e.split(" ")){let s=[];for(let l of r.split(".")){let g=i[l]||Oe[l];g?typeof g=="function"?s.length?s=s.map(g):KS(l,`Modifier ${l} used at start of tag`):s.length?KS(l,`Tag ${l} used as modifier`):s=Array.isArray(g)?g:[g]:KS(l,`Unknown highlighting tag ${l}`)}for(let l of s)A.push(l)}if(!A.length)return 0;let t=e.replace(/ /g,"_"),n=t+" "+A.map(r=>r.id),o=oz[n];if(o)return o.id;let a=oz[n]=ys.define({id:iz.length,name:t,props:[M8({[t]:A})]});return iz.push(a),a.id}var oee={rtl:Lt.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:Lo.RTL}),ltr:Lt.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:Lo.LTR}),auto:Lt.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var LCA=i=>{let{state:e}=i,A=e.doc.lineAt(e.selection.main.from),t=nk(i.state,A.from);return t.line?GCA(i):t.block?UCA(i):!1};function ik(i,e){return({state:A,dispatch:t})=>{if(A.readOnly)return!1;let n=i(e,A);return n?(t(A.update(n)),!0):!1}}var GCA=ik(JCA,0);var KCA=ik(xz,0);var UCA=ik((i,e)=>xz(i,e,OCA(e)),0);function nk(i,e){let A=i.languageDataAt("commentTokens",e,1);return A.length?A[0]:{}}var D4=50;function TCA(i,{open:e,close:A},t,n){let o=i.sliceDoc(t-D4,t),a=i.sliceDoc(n,n+D4),r=/\s*$/.exec(o)[0].length,s=/^\s*/.exec(a)[0].length,l=o.length-r;if(o.slice(l-e.length,l)==e&&a.slice(s,s+A.length)==A)return{open:{pos:t-r,margin:r&&1},close:{pos:n+s,margin:s&&1}};let g,C;n-t<=2*D4?g=C=i.sliceDoc(t,n):(g=i.sliceDoc(t,t+D4),C=i.sliceDoc(n-D4,n));let d=/^\s*/.exec(g)[0].length,B=/\s*$/.exec(C)[0].length,u=C.length-B-A.length;return g.slice(d,d+e.length)==e&&C.slice(u,u+A.length)==A?{open:{pos:t+d+e.length,margin:/\s/.test(g.charAt(d+e.length))?1:0},close:{pos:n-B-A.length,margin:/\s/.test(C.charAt(u-1))?1:0}}:null}function OCA(i){let e=[];for(let A of i.selection.ranges){let t=i.doc.lineAt(A.from),n=A.to<=t.to?t:i.doc.lineAt(A.to);n.from>t.from&&n.from==A.to&&(n=A.to==t.to+1?t:i.doc.lineAt(A.to-1));let o=e.length-1;o>=0&&e[o].to>t.from?e[o].to=n.to:e.push({from:t.from+/^\s*/.exec(t.text)[0].length,to:n.to})}return e}function xz(i,e,A=e.selection.ranges){let t=A.map(o=>nk(e,o.from).block);if(!t.every(o=>o))return null;let n=A.map((o,a)=>TCA(e,t[a],o.from,o.to));if(i!=2&&!n.every(o=>o))return{changes:e.changes(A.map((o,a)=>n[a]?[]:[{from:o.from,insert:t[a].open+" "},{from:o.to,insert:" "+t[a].close}]))};if(i!=1&&n.some(o=>o)){let o=[];for(let a=0,r;an&&(o==a||a>C.from)){n=C.from;let d=/^\s*/.exec(C.text)[0].length,B=d==C.length,u=C.text.slice(d,d+l.length)==l?d:-1;do.comment<0&&(!o.empty||o.single))){let o=[];for(let{line:r,token:s,indent:l,empty:g,single:C}of t)(C||!g)&&o.push({from:r.from+l,insert:s+" "});let a=e.changes(o);return{changes:a,selection:e.selection.map(a,1)}}else if(i!=1&&t.some(o=>o.comment>=0)){let o=[];for(let{line:a,comment:r,token:s}of t)if(r>=0){let l=a.from+r,g=l+s.length;a.text[g-a.from]==" "&&g++,o.push({from:l,to:g})}return{changes:o}}return null}function Qh(i,e){return Be.create(i.ranges.map(e),i.mainIndex)}function dc(i,e){return i.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function Ic({state:i,dispatch:e},A){let t=Qh(i.selection,A);return t.eq(i.selection,!0)?!1:(e(dc(i,t)),!0)}function N8(i,e){return Be.cursor(e?i.to:i.from)}function Rz(i,e){return Ic(i,A=>A.empty?i.moveByChar(A,e):N8(A,e))}function Ds(i){return i.textDirectionAt(i.state.selection.main.head)==Lo.LTR}var Nz=i=>Rz(i,!Ds(i)),Fz=i=>Rz(i,Ds(i));function Lz(i,e){return Ic(i,A=>A.empty?i.moveByGroup(A,e):N8(A,e))}var YCA=i=>Lz(i,!Ds(i)),HCA=i=>Lz(i,Ds(i));var hee=typeof Intl<"u"&&Intl.Segmenter?new Intl.Segmenter(void 0,{granularity:"word"}):null;function zCA(i,e,A){if(e.type.prop(A))return!0;let t=e.to-e.from;return t&&(t>2||/[^\s,.;:]/.test(i.sliceDoc(e.from,e.to)))||e.firstChild}function F8(i,e,A){let t=Kr(i).resolveInner(e.head),n=A?Hi.closedBy:Hi.openedBy;for(let s=e.head;;){let l=A?t.childAfter(s):t.childBefore(s);if(!l)break;zCA(i,l,n)?t=l:s=A?l.to:l.from}let o=t.type.prop(n),a,r;return o&&(a=A?cc(i,t.from,1):cc(i,t.to,-1))&&a.matched?r=A?a.end.to:a.end.from:r=A?t.to:t.from,Be.cursor(r,A?-1:1)}var PCA=i=>Ic(i,e=>F8(i.state,e,!Ds(i))),jCA=i=>Ic(i,e=>F8(i.state,e,Ds(i)));function Gz(i,e){return Ic(i,A=>{if(!A.empty)return N8(A,e);let t=i.moveVertically(A,e);return t.head!=A.head?t:i.moveToLineBoundary(A,e)})}var Kz=i=>Gz(i,!1),Uz=i=>Gz(i,!0);function Tz(i){let e=i.scrollDOM.clientHeighta.empty?i.moveVertically(a,e,A.height):N8(a,e));if(n.eq(t.selection))return!1;let o;if(A.selfScroll){let a=i.coordsAtPos(t.selection.main.head),r=i.scrollDOM.getBoundingClientRect(),s=r.top+A.marginTop,l=r.bottom-A.marginBottom;a&&a.top>s&&a.bottomOz(i,!1),ek=i=>Oz(i,!0);function N2(i,e,A){let t=i.lineBlockAt(e.head),n=i.moveToLineBoundary(e,A);if(n.head==e.head&&n.head!=(A?t.to:t.from)&&(n=i.moveToLineBoundary(e,A,!1)),!A&&n.head==t.from&&t.length){let o=/^\s*/.exec(i.state.sliceDoc(t.from,Math.min(t.from+100,t.to)))[0].length;o&&e.head!=t.from+o&&(n=Be.cursor(t.from+o))}return n}var VCA=i=>Ic(i,e=>N2(i,e,!0)),qCA=i=>Ic(i,e=>N2(i,e,!1)),WCA=i=>Ic(i,e=>N2(i,e,!Ds(i))),ZCA=i=>Ic(i,e=>N2(i,e,Ds(i))),XCA=i=>Ic(i,e=>Be.cursor(i.lineBlockAt(e.head).from,1)),$CA=i=>Ic(i,e=>Be.cursor(i.lineBlockAt(e.head).to,-1));function A2A(i,e,A){let t=!1,n=Qh(i.selection,o=>{let a=cc(i,o.head,-1)||cc(i,o.head,1)||o.head>0&&cc(i,o.head-1,1)||o.headA2A(i,e,!1);function hg(i,e){let A=Qh(i.state.selection,t=>{let n=e(t);return Be.range(t.anchor,n.head,n.goalColumn,n.bidiLevel||void 0,n.assoc)});return A.eq(i.state.selection)?!1:(i.dispatch(dc(i.state,A)),!0)}function Jz(i,e){return hg(i,A=>i.moveByChar(A,e))}var Yz=i=>Jz(i,!Ds(i)),Hz=i=>Jz(i,Ds(i));function zz(i,e){return hg(i,A=>i.moveByGroup(A,e))}var t2A=i=>zz(i,!Ds(i)),i2A=i=>zz(i,Ds(i));var n2A=i=>hg(i,e=>F8(i.state,e,!Ds(i))),o2A=i=>hg(i,e=>F8(i.state,e,Ds(i)));function Pz(i,e){return hg(i,A=>i.moveVertically(A,e))}var jz=i=>Pz(i,!1),Vz=i=>Pz(i,!0);function qz(i,e){return hg(i,A=>i.moveVertically(A,e,Tz(i).height))}var Dz=i=>qz(i,!1),vz=i=>qz(i,!0),a2A=i=>hg(i,e=>N2(i,e,!0)),r2A=i=>hg(i,e=>N2(i,e,!1)),s2A=i=>hg(i,e=>N2(i,e,!Ds(i))),l2A=i=>hg(i,e=>N2(i,e,Ds(i))),g2A=i=>hg(i,e=>Be.cursor(i.lineBlockAt(e.head).from)),c2A=i=>hg(i,e=>Be.cursor(i.lineBlockAt(e.head).to)),bz=({state:i,dispatch:e})=>(e(dc(i,{anchor:0})),!0),Mz=({state:i,dispatch:e})=>(e(dc(i,{anchor:i.doc.length})),!0),Sz=({state:i,dispatch:e})=>(e(dc(i,{anchor:i.selection.main.anchor,head:0})),!0),kz=({state:i,dispatch:e})=>(e(dc(i,{anchor:i.selection.main.anchor,head:i.doc.length})),!0),C2A=({state:i,dispatch:e})=>(e(i.update({selection:{anchor:0,head:i.doc.length},userEvent:"select"})),!0),d2A=({state:i,dispatch:e})=>{let A=L8(i).map(({from:t,to:n})=>Be.range(t,Math.min(n+1,i.doc.length)));return e(i.update({selection:Be.create(A),userEvent:"select"})),!0},I2A=({state:i,dispatch:e})=>{let A=Qh(i.selection,t=>{let n=Kr(i),o=n.resolveStack(t.from,1);if(t.empty){let a=n.resolveStack(t.from,-1);a.node.from>=o.node.from&&a.node.to<=o.node.to&&(o=a)}for(let a=o;a;a=a.next){let{node:r}=a;if((r.from=t.to||r.to>t.to&&r.from<=t.from)&&a.next)return Be.range(r.to,r.from)}return t});return A.eq(i.selection)?!1:(e(dc(i,A)),!0)};function Wz(i,e){let{state:A}=i,t=A.selection,n=A.selection.ranges.slice();for(let o of A.selection.ranges){let a=A.doc.lineAt(o.head);if(e?a.to0)for(let r=o;;){let s=i.moveVertically(r,e);if(s.heada.to){n.some(l=>l.head==s.head)||n.push(s);break}else{if(s.head==r.head)break;r=s}}}return n.length==t.ranges.length?!1:(i.dispatch(dc(A,Be.create(n,n.length-1))),!0)}var B2A=i=>Wz(i,!1),h2A=i=>Wz(i,!0),E2A=({state:i,dispatch:e})=>{let A=i.selection,t=null;return A.ranges.length>1?t=Be.create([A.main]):A.main.empty||(t=Be.create([Be.cursor(A.main.head)])),t?(e(dc(i,t)),!0):!1};function v4(i,e){if(i.state.readOnly)return!1;let A="delete.selection",{state:t}=i,n=t.changeByRange(o=>{let{from:a,to:r}=o;if(a==r){let s=e(o);sa&&(A="delete.forward",s=R8(i,s,!0)),a=Math.min(a,s),r=Math.max(r,s)}else a=R8(i,a,!1),r=R8(i,r,!0);return a==r?{range:o}:{changes:{from:a,to:r},range:Be.cursor(a,an(i)))t.between(e,e,(n,o)=>{ne&&(e=A?o:n)});return e}var Zz=(i,e,A)=>v4(i,t=>{let n=t.from,{state:o}=i,a=o.doc.lineAt(n),r,s;if(A&&!e&&n>a.from&&nZz(i,!1,!0);var Xz=i=>Zz(i,!0,!1),$z=(i,e)=>v4(i,A=>{let t=A.head,{state:n}=i,o=n.doc.lineAt(t),a=n.charCategorizer(t);for(let r=null;;){if(t==(e?o.to:o.from)){t==A.head&&o.number!=(e?n.doc.lines:1)&&(t+=e?1:-1);break}let s=tr(o.text,t-o.from,e)+o.from,l=o.text.slice(Math.min(t,s)-o.from,Math.max(t,s)-o.from),g=a(l);if(r!=null&&g!=r)break;(l!=" "||t!=A.head)&&(r=g),t=s}return t}),AP=i=>$z(i,!1),Q2A=i=>$z(i,!0);var u2A=i=>v4(i,e=>{let A=i.lineBlockAt(e.head).to;return e.headv4(i,e=>{let A=i.moveToLineBoundary(e,!1).head;return e.head>A?A:Math.max(0,e.head-1)}),f2A=i=>v4(i,e=>{let A=i.moveToLineBoundary(e,!0).head;return e.head{if(i.readOnly)return!1;let A=i.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:On.of(["",""])},range:Be.cursor(t.from)}));return e(i.update(A,{scrollIntoView:!0,userEvent:"input"})),!0},w2A=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let A=i.changeByRange(t=>{if(!t.empty||t.from==0||t.from==i.doc.length)return{range:t};let n=t.from,o=i.doc.lineAt(n),a=n==o.from?n-1:tr(o.text,n-o.from,!1)+o.from,r=n==o.to?n+1:tr(o.text,n-o.from,!0)+o.from;return{changes:{from:a,to:r,insert:i.doc.slice(n,r).append(i.doc.slice(a,n))},range:Be.cursor(r)}});return A.changes.empty?!1:(e(i.update(A,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function L8(i){let e=[],A=-1;for(let t of i.selection.ranges){let n=i.doc.lineAt(t.from),o=i.doc.lineAt(t.to);if(!t.empty&&t.to==o.from&&(o=i.doc.lineAt(t.to-1)),A>=n.number){let a=e[e.length-1];a.to=o.to,a.ranges.push(t)}else e.push({from:n.from,to:o.to,ranges:[t]});A=o.number+1}return e}function eP(i,e,A){if(i.readOnly)return!1;let t=[],n=[];for(let o of L8(i)){if(A?o.to==i.doc.length:o.from==0)continue;let a=i.doc.lineAt(A?o.to+1:o.from-1),r=a.length+1;if(A){t.push({from:o.to,to:a.to},{from:o.from,insert:a.text+i.lineBreak});for(let s of o.ranges)n.push(Be.range(Math.min(i.doc.length,s.anchor+r),Math.min(i.doc.length,s.head+r)))}else{t.push({from:a.from,to:o.from},{from:o.to,insert:i.lineBreak+a.text});for(let s of o.ranges)n.push(Be.range(s.anchor-r,s.head-r))}}return t.length?(e(i.update({changes:t,scrollIntoView:!0,selection:Be.create(n,i.selection.mainIndex),userEvent:"move.line"})),!0):!1}var y2A=({state:i,dispatch:e})=>eP(i,e,!1),D2A=({state:i,dispatch:e})=>eP(i,e,!0);function tP(i,e,A){if(i.readOnly)return!1;let t=[];for(let o of L8(i))A?t.push({from:o.from,insert:i.doc.slice(o.from,o.to)+i.lineBreak}):t.push({from:o.to,insert:i.lineBreak+i.doc.slice(o.from,o.to)});let n=i.changes(t);return e(i.update({changes:n,selection:i.selection.map(n,A?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}var v2A=({state:i,dispatch:e})=>tP(i,e,!1),b2A=({state:i,dispatch:e})=>tP(i,e,!0),M2A=i=>{if(i.state.readOnly)return!1;let{state:e}=i,A=e.changes(L8(e).map(({from:n,to:o})=>(n>0?n--:o{let o;if(i.lineWrapping){let a=i.lineBlockAt(n.head),r=i.coordsAtPos(n.head,n.assoc||1);r&&(o=a.bottom+i.documentTop-r.bottom+i.defaultLineHeight/2)}return i.moveVertically(n,!0,o)}).map(A);return i.dispatch({changes:A,selection:t,scrollIntoView:!0,userEvent:"delete.line"}),!0};function S2A(i,e){if(/\(\)|\[\]|\{\}/.test(i.sliceDoc(e-1,e+1)))return{from:e,to:e};let A=Kr(i).resolveInner(e),t=A.childBefore(e),n=A.childAfter(e),o;return t&&n&&t.to<=e&&n.from>=e&&(o=t.type.prop(Hi.closedBy))&&o.indexOf(n.name)>-1&&i.doc.lineAt(t.to).from==i.doc.lineAt(n.from).from&&!/\S/.test(i.sliceDoc(t.to,n.from))?{from:t.to,to:n.from}:null}var _z=iP(!1),k2A=iP(!0);function iP(i){return({state:e,dispatch:A})=>{if(e.readOnly)return!1;let t=e.changeByRange(n=>{let{from:o,to:a}=n,r=e.doc.lineAt(o),s=!i&&o==a&&S2A(e,o);i&&(o=a=(a<=r.to?r:e.doc.lineAt(a)).to);let l=new _d(e,{simulateBreak:o,simulateDoubleBreak:!!s}),g=x8(l,o);for(g==null&&(g=rC(/^\s*/.exec(e.doc.lineAt(o).text)[0],e.tabSize));ar.from&&o{let n=[];for(let a=t.from;a<=t.to;){let r=i.doc.lineAt(a);r.number>A&&(t.empty||t.to>r.from)&&(e(r,n,t),A=r.number),a=r.to+1}let o=i.changes(n);return{changes:n,range:Be.range(o.mapPos(t.anchor,1),o.mapPos(t.head,1))}})}var _2A=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let A=Object.create(null),t=new _d(i,{overrideIndentation:o=>{let a=A[o];return a??-1}}),n=ok(i,(o,a,r)=>{let s=x8(t,o.from);if(s==null)return;/\S/.test(o.text)||(s=0);let l=/^\s*/.exec(o.text)[0],g=hh(i,s);(l!=g||r.fromi.readOnly?!1:(e(i.update(ok(i,(A,t)=>{t.push({from:A.from,insert:i.facet(Rd)})}),{userEvent:"input.indent"})),!0),oP=({state:i,dispatch:e})=>i.readOnly?!1:(e(i.update(ok(i,(A,t)=>{let n=/^\s*/.exec(A.text)[0];if(!n)return;let o=rC(n,i.tabSize),a=0,r=hh(i,Math.max(0,o-Cc(i)));for(;a(i.setTabFocusMode(),!0);var R2A=[{key:"Ctrl-b",run:Nz,shift:Yz,preventDefault:!0},{key:"Ctrl-f",run:Fz,shift:Hz},{key:"Ctrl-p",run:Kz,shift:jz},{key:"Ctrl-n",run:Uz,shift:Vz},{key:"Ctrl-a",run:XCA,shift:g2A},{key:"Ctrl-e",run:$CA,shift:c2A},{key:"Ctrl-d",run:Xz},{key:"Ctrl-h",run:tk},{key:"Ctrl-k",run:u2A},{key:"Ctrl-Alt-h",run:AP},{key:"Ctrl-o",run:m2A},{key:"Ctrl-t",run:w2A},{key:"Ctrl-v",run:ek}],N2A=[{key:"ArrowLeft",run:Nz,shift:Yz,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:YCA,shift:t2A,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:WCA,shift:s2A,preventDefault:!0},{key:"ArrowRight",run:Fz,shift:Hz,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:HCA,shift:i2A,preventDefault:!0},{mac:"Cmd-ArrowRight",run:ZCA,shift:l2A,preventDefault:!0},{key:"ArrowUp",run:Kz,shift:jz,preventDefault:!0},{mac:"Cmd-ArrowUp",run:bz,shift:Sz},{mac:"Ctrl-ArrowUp",run:yz,shift:Dz},{key:"ArrowDown",run:Uz,shift:Vz,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Mz,shift:kz},{mac:"Ctrl-ArrowDown",run:ek,shift:vz},{key:"PageUp",run:yz,shift:Dz},{key:"PageDown",run:ek,shift:vz},{key:"Home",run:qCA,shift:r2A,preventDefault:!0},{key:"Mod-Home",run:bz,shift:Sz},{key:"End",run:VCA,shift:a2A,preventDefault:!0},{key:"Mod-End",run:Mz,shift:kz},{key:"Enter",run:_z,shift:_z},{key:"Mod-a",run:C2A},{key:"Backspace",run:tk,shift:tk,preventDefault:!0},{key:"Delete",run:Xz,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:AP,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:Q2A,preventDefault:!0},{mac:"Mod-Backspace",run:p2A,preventDefault:!0},{mac:"Mod-Delete",run:f2A,preventDefault:!0}].concat(R2A.map(i=>({mac:i.key,run:i.run,shift:i.shift}))),aP=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:PCA,shift:n2A},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:jCA,shift:o2A},{key:"Alt-ArrowUp",run:y2A},{key:"Shift-Alt-ArrowUp",run:v2A},{key:"Alt-ArrowDown",run:D2A},{key:"Shift-Alt-ArrowDown",run:b2A},{key:"Mod-Alt-ArrowUp",run:B2A},{key:"Mod-Alt-ArrowDown",run:h2A},{key:"Escape",run:E2A},{key:"Mod-Enter",run:k2A},{key:"Alt-l",mac:"Ctrl-l",run:d2A},{key:"Mod-i",run:I2A,preventDefault:!0},{key:"Mod-[",run:oP},{key:"Mod-]",run:nP},{key:"Mod-Alt-\\",run:_2A},{key:"Shift-Mod-k",run:M2A},{key:"Shift-Mod-\\",run:e2A},{key:"Mod-/",run:LCA},{key:"Alt-A",run:KCA},{key:"Ctrl-m",mac:"Shift-Alt-m",run:x2A}].concat(N2A),rP={key:"Tab",run:nP,shift:oP};var U8=class{constructor(e,A,t){this.from=e,this.to=A,this.diagnostic=t}},Nd=class i{constructor(e,A,t){this.diagnostics=e,this.panel=A,this.selected=t}static init(e,A,t){let n=t.facet(E0).markerFilter;n&&(e=n(e,t));let o=e.slice().sort((B,u)=>B.from-u.from||B.to-u.to),a=new Xr,r=[],s=0,l=t.doc.iter(),g=0,C=t.doc.length;for(let B=0;;){let u=B==o.length?null:o[B];if(!u&&!r.length)break;let E,f;if(r.length)E=s,f=r.reduce((S,k)=>Math.min(S,k.to),u&&u.from>E?u.from:1e8);else{if(E=u.from,E>C)break;f=u.to,r.push(u),B++}for(;BS.from||S.to==E))r.push(S),B++,f=Math.min(S.to,f);else{f=Math.min(S.from,f);break}}f=Math.min(f,C);let m=!1;if(r.some(S=>S.from==E&&(S.to==f||f==C))&&(m=E==f,!m&&f-E<10)){let S=E-(g+l.value.length);S>0&&(l.next(S),g=E);for(let k=E;;){if(k>=f){m=!0;break}if(!l.lineBreak&&g+l.value.length>k)break;k=g+l.value.length,g+=l.value.length,l.next()}}let v=QP(r);if(m)a.add(E,E,Lt.widget({widget:new ak(v),diagnostics:r.slice()}));else{let S=r.reduce((k,M)=>M.markClass?k+" "+M.markClass:k,"");a.add(E,f,Lt.mark({class:"cm-lintRange cm-lintRange-"+v+S,diagnostics:r.slice(),inclusiveEnd:r.some(k=>k.to>f)}))}if(s=f,s==C)break;for(let S=0;S{if(!(e&&a.diagnostics.indexOf(e)<0))if(!t)t=new U8(n,o,e||a.diagnostics[0]);else{if(a.diagnostics.indexOf(t.diagnostic)<0)return!1;t=new U8(t.from,o,t.diagnostic)}}),t}function gP(i,e){let A=e.pos,t=e.end||A,n=i.state.facet(E0).hideOn(i,A,t);if(n!=null)return n;let o=i.startState.doc.lineAt(e.pos);return!!(i.effects.some(a=>a.is(J8))||i.changes.touchesRange(o.from,Math.max(o.to,t)))}function cP(i,e){return i.field(Fl,!1)?e:e.concat(ln.appendConfig.of(pP))}function F2A(i,e){return{effects:cP(i,[J8.of(e)])}}var J8=ln.define(),sk=ln.define(),CP=ln.define(),Fl=La.define({create(){return new Nd(Lt.none,null,null)},update(i,e){if(e.docChanged&&i.diagnostics.size){let A=i.diagnostics.map(e.changes),t=null,n=i.panel;if(i.selected){let o=e.changes.mapPos(i.selected.from,1);t=F2(A,i.selected.diagnostic,o)||F2(A,null,o)}!A.size&&n&&e.state.facet(E0).autoPanel&&(n=null),i=new Nd(A,n,t)}for(let A of e.effects)if(A.is(J8)){let t=e.state.facet(E0).autoPanel?A.value.length?b4.open:null:i.panel;i=Nd.init(A.value,t,e.state)}else A.is(sk)?i=new Nd(i.diagnostics,A.value?b4.open:null,i.selected):A.is(CP)&&(i=new Nd(i.diagnostics,i.panel,A.value));return i},provide:i=>[vd.from(i,e=>e.panel),ui.decorations.from(i,e=>e.diagnostics)]});var L2A=Lt.mark({class:"cm-lintRange cm-lintRange-active"});function G2A(i,e,A){let{diagnostics:t}=i.state.field(Fl),n,o=-1,a=-1;t.between(e-(A<0?1:0),e+(A>0?1:0),(s,l,{spec:g})=>{if(e>=s&&e<=l&&(s==l||(e>s||A>0)&&(eEP(i,A,!1)))}var K2A=i=>{let e=i.state.field(Fl,!1);(!e||!e.panel)&&i.dispatch({effects:cP(i.state,[sk.of(!0)])});let A=d4(i,b4.open);return A&&A.dom.querySelector(".cm-panel-lint ul").focus(),!0},sP=i=>{let e=i.state.field(Fl,!1);return!e||!e.panel?!1:(i.dispatch({effects:sk.of(!1)}),!0)},U2A=i=>{let e=i.state.field(Fl,!1);if(!e)return!1;let A=i.state.selection.main,t=F2(e.diagnostics,null,A.to+1);return!t&&(t=F2(e.diagnostics,null,0),!t||t.from==A.from&&t.to==A.to)?!1:(i.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0}),!0)};var IP=[{key:"Mod-Shift-m",run:K2A,preventDefault:!0},{key:"F8",run:U2A}],T2A=Po.fromClass(class{constructor(i){this.view=i,this.timeout=-1,this.set=!0;let{delay:e}=i.state.facet(E0);this.lintTime=Date.now()+e,this.run=this.run.bind(this),this.timeout=setTimeout(this.run,e)}run(){clearTimeout(this.timeout);let i=Date.now();if(iPromise.resolve(t(this.view))),t=>{this.view.state.doc==e.doc&&this.view.dispatch(F2A(this.view.state,t.reduce((n,o)=>n.concat(o))))},t=>{Gr(this.view.state,t)})}}update(i){let e=i.state.facet(E0);(i.docChanged||e!=i.startState.facet(E0)||e.needsRefresh&&e.needsRefresh(i))&&(this.lintTime=Date.now()+e.delay,this.set||(this.set=!0,this.timeout=setTimeout(this.run,e.delay)))}force(){this.set&&(this.lintTime=Date.now(),this.run())}destroy(){clearTimeout(this.timeout)}});function O2A(i,e,A){let t=[],n=-1;for(let o of i)o.then(a=>{t.push(a),clearTimeout(n),t.length==i.length?e(t):n=setTimeout(()=>e(t),200)},A)}var E0=nt.define({combine(i){return P({sources:i.map(e=>e.source).filter(e=>e!=null)},Lr(i.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:lP,tooltipFilter:lP,needsRefresh:(e,A)=>e?A?t=>e(t)||A(t):e:A,hideOn:(e,A)=>e?A?(t,n,o)=>e(t,n,o)||A(t,n,o):e:A,autoPanel:(e,A)=>e||A}))}});function lP(i,e){return i?e?(A,t)=>e(i(A,t),t):i:e}function BP(i,e={}){return[E0.of({source:i,config:e}),T2A,pP]}function hP(i){let e=[];if(i)A:for(let{name:A}of i){for(let t=0;to.toLowerCase()==n.toLowerCase())){e.push(n);continue A}}e.push("")}return e}function EP(i,e,A){var t;let n=A?hP(e.actions):[];return po("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},po("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(i):e.message),(t=e.actions)===null||t===void 0?void 0:t.map((o,a)=>{let r=!1,s=B=>{if(B.preventDefault(),r)return;r=!0;let u=F2(i.state.field(Fl).diagnostics,e);u&&o.apply(i,u.from,u.to)},{name:l}=o,g=n[a]?l.indexOf(n[a]):-1,C=g<0?l:[l.slice(0,g),po("u",l.slice(g,g+1)),l.slice(g+1)],d=o.markClass?" "+o.markClass:"";return po("button",{type:"button",class:"cm-diagnosticAction"+d,onclick:s,onmousedown:s,"aria-label":` Action: ${l}${g<0?"":` (access key "${n[a]})"`}.`},C)}),e.source&&po("div",{class:"cm-diagnosticSource"},e.source))}var ak=class extends gl{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return po("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}},T8=class{constructor(e,A){this.diagnostic=A,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=EP(e,A,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}},b4=class i{constructor(e){this.view=e,this.items=[];let A=n=>{if(!(n.ctrlKey||n.altKey||n.metaKey)){if(n.keyCode==27)sP(this.view),this.view.focus();else if(n.keyCode==38||n.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(n.keyCode==40||n.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(n.keyCode==36)this.moveSelection(0);else if(n.keyCode==35)this.moveSelection(this.items.length-1);else if(n.keyCode==13)this.view.focus();else if(n.keyCode>=65&&n.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:o}=this.items[this.selectedIndex],a=hP(o.actions);for(let r=0;r{for(let o=0;osP(this.view)},"\xD7")),this.update()}get selectedIndex(){let e=this.view.state.field(Fl).selected;if(!e)return-1;for(let A=0;A{for(let g of l.diagnostics){if(a.has(g))continue;a.add(g);let C=-1,d;for(let B=t;Bt&&(this.items.splice(t,C-t),n=!0)),A&&d.diagnostic==A.diagnostic?d.dom.hasAttribute("aria-selected")||(d.dom.setAttribute("aria-selected","true"),o=d):d.dom.hasAttribute("aria-selected")&&d.dom.removeAttribute("aria-selected"),t++}});t({sel:o.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:r,panel:s})=>{let l=s.height/this.list.offsetHeight;r.tops.bottom&&(this.list.scrollTop+=(r.bottom-s.bottom)/l)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),n&&this.sync()}sync(){let e=this.list.firstChild;function A(){let t=e;e=t.nextSibling,t.remove()}for(let t of this.items)if(t.dom.parentNode==this.list){for(;e!=t.dom;)A();e=t.dom.nextSibling}else this.list.insertBefore(t.dom,e);for(;e;)A()}moveSelection(e){if(this.selectedIndex<0)return;let A=this.view.state.field(Fl),t=F2(A.diagnostics,this.items[e].diagnostic);t&&this.view.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0,effects:CP.of(t)})}static open(e){return new i(e)}};function K8(i,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,${encodeURIComponent(i)}')`}function G8(i){return K8(``,'width="6" height="3"')}var J2A=ui.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:G8("#d11")},".cm-lintRange-warning":{backgroundImage:G8("orange")},".cm-lintRange-info":{backgroundImage:G8("#999")},".cm-lintRange-hint":{backgroundImage:G8("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function Y2A(i){return i=="error"?4:i=="warning"?3:i=="info"?2:1}function QP(i){let e="hint",A=1;for(let t of i){let n=Y2A(t.severity);n>A&&(A=n,e=t.severity)}return e}var O8=class extends Cl{constructor(e){super(),this.diagnostics=e,this.severity=QP(e)}toDOM(e){let A=document.createElement("div");A.className="cm-lint-marker cm-lint-marker-"+this.severity;let t=this.diagnostics,n=e.state.facet(Y8).tooltipFilter;return n&&(t=n(t,e.state)),t.length&&(A.onmouseover=()=>z2A(e,A,t)),A}};function H2A(i,e){let A=t=>{let n=e.getBoundingClientRect();if(!(t.clientX>n.left-10&&t.clientXn.top-10&&t.clientYe.getBoundingClientRect()}}})}),e.onmouseout=e.onmousemove=null,H2A(i,e)}let{hoverTime:n}=i.state.facet(Y8),o=setTimeout(t,n);e.onmouseout=()=>{clearTimeout(o),e.onmouseout=e.onmousemove=null},e.onmousemove=()=>{clearTimeout(o),o=setTimeout(t,n)}}function P2A(i,e){let A=Object.create(null);for(let n of e){let o=i.lineAt(n.from);(A[o.from]||(A[o.from]=[])).push(n)}let t=[];for(let n in A)t.push(new O8(A[n]).range(+n));return uo.of(t,!0)}var j2A=p8({class:"cm-gutter-lint",markers:i=>i.state.field(rk),widgetMarker:(i,e,A)=>{let t=[];return i.state.field(rk).between(A.from,A.to,(n,o,a)=>{n>A.from&&nt.is(lk)?t.value:A,i)},provide:i=>ch.from(i)}),V2A=ui.baseTheme({".cm-gutter-lint":{width:"1.4em","& .cm-gutterElement":{padding:".2em"}},".cm-lint-marker":{width:"1em",height:"1em"},".cm-lint-marker-info":{content:K8('')},".cm-lint-marker-warning":{content:K8('')},".cm-lint-marker-error":{content:K8('')}}),pP=[Fl,ui.decorations.compute([Fl],i=>{let{selected:e,panel:A}=i.field(Fl);return!e||!A||e.from==e.to?Lt.none:Lt.set([L2A.range(e.from,e.to)])}),FH(G2A,{hideOn:gP}),J2A],Y8=nt.define({combine(i){return Lr(i,{hoverTime:300,markerFilter:null,tooltipFilter:null})}});function fP(i={}){return[Y8.of(i),rk,j2A,V2A,uP]}var ck=class i{constructor(e,A,t,n,o,a,r,s,l,g=0,C){this.p=e,this.stack=A,this.state=t,this.reducePos=n,this.pos=o,this.score=a,this.buffer=r,this.bufferBase=s,this.curContext=l,this.lookAhead=g,this.parent=C}toString(){return`[${this.stack.filter((e,A)=>A%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,A,t=0){let n=e.parser.context;return new i(e,[],A,t,t,0,[],0,n?new H8(n,n.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,A){this.stack.push(this.state,A,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var A;let t=e>>19,n=e&65535,{parser:o}=this.p,a=this.reducePos=2e3&&!(!((A=this.p.parser.nodeSet.types[n])===null||A===void 0)&&A.isAnonymous)&&(l==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=g):this.p.lastBigReductionSizes;)this.stack.pop();this.reduceContext(n,l)}storeNode(e,A,t,n=4,o=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&a.buffer[r-4]==0&&a.buffer[r-1]>-1){if(A==t)return;if(a.buffer[r-2]>=A){a.buffer[r-2]=t;return}}}if(!o||this.pos==t)this.buffer.push(e,A,t,n);else{let a=this.buffer.length;if(a>0&&(this.buffer[a-4]!=0||this.buffer[a-1]<0)){let r=!1;for(let s=a;s>0&&this.buffer[s-2]>t;s-=4)if(this.buffer[s-1]>=0){r=!0;break}if(r)for(;a>0&&this.buffer[a-2]>t;)this.buffer[a]=this.buffer[a-4],this.buffer[a+1]=this.buffer[a-3],this.buffer[a+2]=this.buffer[a-2],this.buffer[a+3]=this.buffer[a-1],a-=4,n>4&&(n-=4)}this.buffer[a]=e,this.buffer[a+1]=A,this.buffer[a+2]=t,this.buffer[a+3]=n}}shift(e,A,t,n){if(e&131072)this.pushState(e&65535,this.pos);else if((e&262144)==0){let o=e,{parser:a}=this.p;this.pos=n;let r=a.stateFlag(o,1);!r&&(n>t||A<=a.maxNode)&&(this.reducePos=n),this.pushState(o,r?t:Math.min(t,this.reducePos)),this.shiftContext(A,t),A<=a.maxNode&&this.buffer.push(A,t,n,4)}else this.pos=n,this.shiftContext(A,t),A<=this.p.parser.maxNode&&this.buffer.push(A,t,n,4)}apply(e,A,t,n){e&65536?this.reduce(e):this.shift(e,A,t,n)}useNode(e,A){let t=this.p.reused.length-1;(t<0||this.p.reused[t]!=e)&&(this.p.reused.push(e),t++);let n=this.pos;this.reducePos=this.pos=n+e.length,this.pushState(A,n),this.buffer.push(t,n,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,A=e.buffer.length;for(;A>0&&e.buffer[A-2]>e.reducePos;)A-=4;let t=e.buffer.slice(A),n=e.bufferBase+A;for(;e&&n==e.bufferBase;)e=e.parent;return new i(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,t,n,this.curContext,this.lookAhead,e)}recoverByDelete(e,A){let t=e<=this.p.parser.maxNode;t&&this.storeNode(e,this.pos,A,4),this.storeNode(0,this.pos,A,t?8:4),this.pos=this.reducePos=A,this.score-=190}canShift(e){for(let A=new Ck(this);;){let t=this.p.parser.stateSlot(A.state,4)||this.p.parser.hasAction(A.state,e);if(t==0)return!1;if((t&65536)==0)return!0;A.reduce(t)}}recoverByInsert(e){if(this.stack.length>=300)return[];let A=this.p.parser.nextStates(this.state);if(A.length>8||this.stack.length>=120){let n=[];for(let o=0,a;os&1&&r==a)||n.push(A[o],a)}A=n}let t=[];for(let n=0;n>19,n=A&65535,o=this.stack.length-t*3;if(o<0||e.getGoto(this.stack[o],n,!1)<0){let a=this.findForcedReduction();if(a==null)return!1;A=a}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(A),!0}findForcedReduction(){let{parser:e}=this.p,A=[],t=(n,o)=>{if(!A.includes(n))return A.push(n),e.allActions(n,a=>{if(!(a&393216))if(a&65536){let r=(a>>19)-o;if(r>1){let s=a&65535,l=this.stack.length-r*3;if(l>=0&&e.getGoto(this.stack[l],s,!1)>=0)return r<<19|65536|s}}else{let r=t(a,o+1);if(r!=null)return r}})};return t(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let A=0;A0&&this.emitLookAhead()}},H8=class{constructor(e,A){this.tracker=e,this.context=A,this.hash=e.strict?e.hash(A):0}},Ck=class{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let A=e&65535,t=e>>19;t==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(t-1)*3;let n=this.start.p.parser.getGoto(this.stack[this.base-3],A,!0);this.state=n}},dk=class i{constructor(e,A,t){this.stack=e,this.pos=A,this.index=t,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,A=e.bufferBase+e.buffer.length){return new i(e,A,A-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new i(this.stack,this.pos,this.index)}};function M4(i,e=Uint16Array){if(typeof i!="string")return i;let A=null;for(let t=0,n=0;t=92&&a--,a>=34&&a--;let s=a-32;if(s>=46&&(s-=46,r=!0),o+=s,r)break;o*=46}A?A[n++]=o:A=new e(o)}return A}var uh=class{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}},mP=new uh,Ik=class{constructor(e,A){this.input=e,this.ranges=A,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=mP,this.rangeIndex=0,this.pos=this.chunkPos=A[0].from,this.range=A[0],this.end=A[A.length-1].to,this.readNext()}resolveOffset(e,A){let t=this.range,n=this.rangeIndex,o=this.pos+e;for(;ot.to:o>=t.to;){if(n==this.ranges.length-1)return null;let a=this.ranges[++n];o+=a.from-t.to,t=a}return o}clipPos(e){if(e>=this.range.from&&ee)return Math.max(e,A.from);return this.end}peek(e){let A=this.chunkOff+e,t,n;if(A>=0&&A=this.chunk2Pos&&tr.to&&(this.chunk2=this.chunk2.slice(0,r.to-t)),n=this.chunk2.charCodeAt(0)}}return t>=this.token.lookAhead&&(this.token.lookAhead=t+1),n}acceptToken(e,A=0){let t=A?this.resolveOffset(A,-1):this.pos;if(t==null||t=this.chunk2Pos&&this.posthis.range.to?e.slice(0,this.range.to-this.pos):e,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(e,A){if(A?(this.token=A,A.start=e,A.lookAhead=e+1,A.value=A.extended=-1):this.token=mP,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e=this.chunkPos&&A<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,A-this.chunkPos);if(e>=this.chunk2Pos&&A<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,A-this.chunk2Pos);if(e>=this.range.from&&A<=this.range.to)return this.input.read(e,A);let t="";for(let n of this.ranges){if(n.from>=A)break;n.to>e&&(t+=this.input.read(Math.max(n.from,e),Math.min(n.to,A)))}return t}},L2=class{constructor(e,A){this.data=e,this.id=A}token(e,A){let{parser:t}=A.p;bP(this.data,e,A,this.id,t.data,t.tokenPrecTable)}};L2.prototype.contextual=L2.prototype.fallback=L2.prototype.extend=!1;var Bk=class{constructor(e,A,t){this.precTable=A,this.elseToken=t,this.data=typeof e=="string"?M4(e):e}token(e,A){let t=e.pos,n=0;for(;;){let o=e.next<0,a=e.resolveOffset(1,1);if(bP(this.data,e,A,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(o||n++,a==null)break;e.reset(a,e.token)}n&&(e.reset(t,e.token),e.acceptToken(this.elseToken,n))}};Bk.prototype.contextual=L2.prototype.fallback=L2.prototype.extend=!1;function bP(i,e,A,t,n,o){let a=0,r=1<0){let u=i[B];if(s.allows(u)&&(e.token.value==-1||e.token.value==u||W2A(u,e.token.value,n,o))){e.acceptToken(u);break}}let g=e.next,C=0,d=i[a+2];if(e.next<0&&d>C&&i[l+d*3-3]==65535){a=i[l+d*3-1];continue A}for(;C>1,u=l+B+(B<<1),E=i[u],f=i[u+1]||65536;if(g=f)C=B+1;else{a=i[u+2],e.advance();continue A}}break}}function wP(i,e,A){for(let t=e,n;(n=i[t])!=65535;t++)if(n==A)return t-e;return-1}function W2A(i,e,A,t){let n=wP(A,t,e);return n<0||wP(A,t,i)e)&&!t.type.isError)return A<0?Math.max(0,Math.min(t.to-1,e-25)):Math.min(i.length,Math.max(t.from+1,e+25));if(A<0?t.prevSibling():t.nextSibling())break;if(!t.parent())return A<0?0:i.length}}var hk=class{constructor(e,A){this.fragments=e,this.nodeSet=A,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?yP(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?yP(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(ee)return this.nextStart=a,null;if(o instanceof Pa){if(a==e){if(a=Math.max(this.safeFrom,e)&&(this.trees.push(o),this.start.push(a),this.index.push(0))}else this.index[A]++,this.nextStart=a+o.length}}},Ek=class{constructor(e,A){this.stream=A,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(t=>new uh)}getActions(e){let A=0,t=null,{parser:n}=e.p,{tokenizers:o}=n,a=n.stateSlot(e.state,3),r=e.curContext?e.curContext.hash:0,s=0;for(let l=0;lC.end+25&&(s=Math.max(C.lookAhead,s)),C.value!=0)){let d=A;if(C.extended>-1&&(A=this.addActions(e,C.extended,C.end,A)),A=this.addActions(e,C.value,C.end,A),!g.extend&&(t=C,A>d))break}}for(;this.actions.length>A;)this.actions.pop();return s&&e.setLookAhead(s),!t&&e.pos==this.stream.end&&(t=new uh,t.value=e.p.parser.eofTerm,t.start=t.end=e.pos,A=this.addActions(e,t.value,t.end,A)),this.mainToken=t,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let A=new uh,{pos:t,p:n}=e;return A.start=t,A.end=Math.min(t+1,n.stream.end),A.value=t==n.stream.end?n.parser.eofTerm:0,A}updateCachedToken(e,A,t){let n=this.stream.clipPos(t.pos);if(A.token(this.stream.reset(n,e),t),e.value>-1){let{parser:o}=t.p;for(let a=0;a=0&&t.p.parser.dialect.allows(r>>1)){(r&1)==0?e.value=r>>1:e.extended=r>>1;break}}}else e.value=0,e.end=this.stream.clipPos(n+1)}putAction(e,A,t,n){for(let o=0;oe.bufferLength*4?new hk(t,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,A=this.minStackPos,t=this.stacks=[],n,o;if(this.bigReductionCount>300&&e.length==1){let[a]=e;for(;a.forceReduce()&&a.stack.length&&a.stack[a.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let a=0;aA)t.push(r);else{if(this.advanceStack(r,t,e))continue;{n||(n=[],o=[]),n.push(r);let s=this.tokens.getMainToken(r);o.push(s.value,s.end)}}break}}if(!t.length){let a=n&&Z2A(n);if(a)return Ll&&console.log("Finish with "+this.stackID(a)),this.stackToTree(a);if(this.parser.strict)throw Ll&&n&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+A);this.recovering||(this.recovering=5)}if(this.recovering&&n){let a=this.stoppedAt!=null&&n[0].pos>this.stoppedAt?n[0]:this.runRecovery(n,o,t);if(a)return Ll&&console.log("Force-finish "+this.stackID(a)),this.stackToTree(a.forceAll())}if(this.recovering){let a=this.recovering==1?1:this.recovering*3;if(t.length>a)for(t.sort((r,s)=>s.score-r.score);t.length>a;)t.pop();t.some(r=>r.reducePos>A)&&this.recovering--}else if(t.length>1){A:for(let a=0;a500&&l.buffer.length>500)if((r.score-l.score||r.buffer.length-l.buffer.length)>0)t.splice(s--,1);else{t.splice(a--,1);continue A}}}t.length>12&&(t.sort((a,r)=>r.score-a.score),t.splice(12,t.length-12))}this.minStackPos=t[0].pos;for(let a=1;a ":"";if(this.stoppedAt!=null&&n>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let l=e.curContext&&e.curContext.tracker.strict,g=l?e.curContext.hash:0;for(let C=this.fragments.nodeAt(n);C;){let d=this.parser.nodeSet.types[C.type.id]==C.type?o.getGoto(e.state,C.type.id):-1;if(d>-1&&C.length&&(!l||(C.prop(Hi.contextHash)||0)==g))return e.useNode(C,d),Ll&&console.log(a+this.stackID(e)+` (via reuse of ${o.getName(C.type.id)})`),!0;if(!(C instanceof Pa)||C.children.length==0||C.positions[0]>0)break;let B=C.children[0];if(B instanceof Pa&&C.positions[0]==0)C=B;else break}}let r=o.stateSlot(e.state,4);if(r>0)return e.reduce(r),Ll&&console.log(a+this.stackID(e)+` (via always-reduce ${o.getName(r&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let s=this.tokens.getActions(e);for(let l=0;ln?A.push(u):t.push(u)}return!1}advanceFully(e,A){let t=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>t)return DP(e,A),!0}}runRecovery(e,A,t){let n=null,o=!1;for(let a=0;a ":"";if(r.deadEnd&&(o||(o=!0,r.restart(),Ll&&console.log(g+this.stackID(r)+" (restarted)"),this.advanceFully(r,t))))continue;let C=r.split(),d=g;for(let B=0;B<10&&C.forceReduce()&&(Ll&&console.log(d+this.stackID(C)+" (via force-reduce)"),!this.advanceFully(C,t));B++)Ll&&(d=this.stackID(C)+" -> ");for(let B of r.recoverByInsert(s))Ll&&console.log(g+this.stackID(B)+" (via recover-insert)"),this.advanceFully(B,t);this.stream.end>r.pos?(l==r.pos&&(l++,s=0),r.recoverByDelete(s,l),Ll&&console.log(g+this.stackID(r)+` (via recover-delete ${this.parser.getName(s)})`),DP(r,t)):(!n||n.scoree.topRules[r][1]),n=[];for(let r=0;r=0)o(g,s,r[l++]);else{let C=r[l+-g];for(let d=-g;d>0;d--)o(r[l++],s,C);l++}}}this.nodeSet=new B4(A.map((r,s)=>ys.define({name:s>=this.minRepeatTerm?void 0:r,id:s,props:n[s],top:t.indexOf(s)>-1,error:s==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(s)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=1024;let a=M4(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let r=0;rtypeof r=="number"?new L2(a,r):r),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,A,t){let n=new Qk(this,e,A,t);for(let o of this.wrappers)n=o(n,e,A,t);return n}getGoto(e,A,t=!1){let n=this.goto;if(A>=n[0])return-1;for(let o=n[A+1];;){let a=n[o++],r=a&1,s=n[o++];if(r&&t)return s;for(let l=o+(a>>1);o0}validAction(e,A){return!!this.allActions(e,t=>t==A?!0:null)}allActions(e,A){let t=this.stateSlot(e,4),n=t?A(t):void 0;for(let o=this.stateSlot(e,1);n==null;o+=3){if(this.data[o]==65535)if(this.data[o+1]==1)o=CC(this.data,o+2);else break;n=A(CC(this.data,o+1))}return n}nextStates(e){let A=[];for(let t=this.stateSlot(e,1);;t+=3){if(this.data[t]==65535)if(this.data[t+1]==1)t=CC(this.data,t+2);else break;if((this.data[t+2]&1)==0){let n=this.data[t+1];A.some((o,a)=>a&1&&o==n)||A.push(this.data[t],n)}}return A}configure(e){let A=Object.assign(Object.create(i.prototype),this);if(e.props&&(A.nodeSet=this.nodeSet.extend(...e.props)),e.top){let t=this.topRules[e.top];if(!t)throw new RangeError(`Invalid top rule name ${e.top}`);A.top=t}return e.tokenizers&&(A.tokenizers=this.tokenizers.map(t=>{let n=e.tokenizers.find(o=>o.from==t);return n?n.to:t})),e.specializers&&(A.specializers=this.specializers.slice(),A.specializerSpecs=this.specializerSpecs.map((t,n)=>{let o=e.specializers.find(r=>r.from==t.external);if(!o)return t;let a=Object.assign(Object.assign({},t),{external:o.to});return A.specializers[n]=vP(a),a})),e.contextTracker&&(A.context=e.contextTracker),e.dialect&&(A.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(A.strict=e.strict),e.wrap&&(A.wrappers=A.wrappers.concat(e.wrap)),e.bufferLength!=null&&(A.bufferLength=e.bufferLength),A}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let A=this.dynamicPrecedences;return A==null?0:A[e]||0}parseDialect(e){let A=Object.keys(this.dialects),t=A.map(()=>!1);if(e)for(let o of e.split(" ")){let a=A.indexOf(o);a>=0&&(t[a]=!0)}let n=null;for(let o=0;ot)&&A.p.parser.stateFlag(A.state,2)&&(!e||e.scorei.external(A,t)<<1|e}return i.get}var X2A=M8({String:Oe.string,Number:Oe.number,"True False":Oe.bool,PropertyName:Oe.propertyName,Null:Oe.null,", :":Oe.separator,"[ ]":Oe.squareBracket,"{ }":Oe.brace}),MP=z8.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"\u26A0 JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[X2A],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0});var $2A=S8.define({name:"json",parser:MP.configure({props:[VS.add({Object:qS({except:/^\s*\}/}),Array:qS({except:/^\s*\]/})}),w4.add({"Object Array":lz})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function SP(){return new k8($2A)}var kP=typeof String.prototype.normalize=="function"?i=>i.normalize("NFKD"):i=>i,K2=class{constructor(e,A,t=0,n=e.length,o,a){this.test=a,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(t,n),this.bufferStart=t,this.normalize=o?r=>o(kP(r)):kP,this.query=this.normalize(A)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return $r(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let A=qu(e),t=this.bufferStart+this.bufferPos;this.bufferPos+=Rl(e);let n=this.normalize(A);if(n.length)for(let o=0,a=t;;o++){let r=n.charCodeAt(o),s=this.match(r,a,this.bufferPos+this.bufferStart);if(o==n.length-1){if(s)return this.value=s,this;break}a==t&&othis.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let A=this.matchPos<=this.to&&this.re.exec(this.curLine);if(A){let t=this.curLineStart+A.index,n=t+A[0].length;if(this.matchPos=Z8(this.text,n+(t==n?1:0)),t==this.curLineStart+this.curLine.length&&this.nextLine(),(tthis.value.to)&&(!this.test||this.test(t,n,A)))return this.value={from:t,to:n,match:A},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length=t||n.to<=A){let r=new i(A,e.sliceString(A,t));return pk.set(e,r),r}if(n.from==A&&n.to==t)return n;let{text:o,from:a}=n;return a>A&&(o=e.sliceString(A,a)+o,a=A),n.to=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,A=this.re.exec(this.flat.text);if(A&&!A[0]&&A.index==e&&(this.re.lastIndex=e+1,A=this.re.exec(this.flat.text)),A){let t=this.flat.from+A.index,n=t+A[0].length;if((this.flat.to>=this.to||A.index+A[0].length<=this.flat.text.length-10)&&(!this.test||this.test(t,n,A)))return this.value={from:t,to:n,match:A},this.matchPos=Z8(this.text,n+(t==n?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=q8.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}};typeof Symbol<"u"&&(V8.prototype[Symbol.iterator]=W8.prototype[Symbol.iterator]=function(){return this});function A1A(i){try{return new RegExp(i,vk),!0}catch(e){return!1}}function Z8(i,e){if(e>=i.length)return e;let A=i.lineAt(e),t;for(;e=56320&&t<57344;)e++;return e}var e1A=i=>{let{state:e}=i,A=String(e.doc.lineAt(i.state.selection.main.head).number),{close:t,result:n}=GH(i,{label:e.phrase("Go to line"),input:{type:"text",name:"line",value:A},focus:!0,submitLabel:e.phrase("go")});return n.then(o=>{let a=o&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(o.elements.line.value);if(!a){i.dispatch({effects:t});return}let r=e.doc.lineAt(e.selection.main.head),[,s,l,g,C]=a,d=g?+g.slice(1):0,B=l?+l:r.number;if(l&&C){let f=B/100;s&&(f=f*(s=="-"?-1:1)+r.number/e.doc.lines),B=Math.round(e.doc.lines*f)}else l&&s&&(B=B*(s=="-"?-1:1)+r.number);let u=e.doc.line(Math.max(1,Math.min(e.doc.lines,B))),E=Be.cursor(u.from+Math.max(0,Math.min(d,u.length)));i.dispatch({effects:[t,ui.scrollIntoView(E.from,{y:"center"})],selection:E})}),!0},t1A={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},NP=nt.define({combine(i){return Lr(i,t1A,{highlightWordAroundCursor:(e,A)=>e||A,minSelectionLength:Math.min,maxMatches:Math.min})}});function FP(i){let e=[r1A,a1A];return i&&e.push(NP.of(i)),e}var i1A=Lt.mark({class:"cm-selectionMatch"}),n1A=Lt.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function _P(i,e,A,t){return(A==0||i(e.sliceDoc(A-1,A))!=$o.Word)&&(t==e.doc.length||i(e.sliceDoc(t,t+1))!=$o.Word)}function o1A(i,e,A,t){return i(e.sliceDoc(A,A+1))==$o.Word&&i(e.sliceDoc(t-1,t))==$o.Word}var a1A=Po.fromClass(class{constructor(i){this.decorations=this.getDeco(i)}update(i){(i.selectionSet||i.docChanged||i.viewportChanged)&&(this.decorations=this.getDeco(i.view))}getDeco(i){let e=i.state.facet(NP),{state:A}=i,t=A.selection;if(t.ranges.length>1)return Lt.none;let n=t.main,o,a=null;if(n.empty){if(!e.highlightWordAroundCursor)return Lt.none;let s=A.wordAt(n.head);if(!s)return Lt.none;a=A.charCategorizer(n.head),o=A.sliceDoc(s.from,s.to)}else{let s=n.to-n.from;if(s200)return Lt.none;if(e.wholeWords){if(o=A.sliceDoc(n.from,n.to),a=A.charCategorizer(n.head),!(_P(a,A,n.from,n.to)&&o1A(a,A,n.from,n.to)))return Lt.none}else if(o=A.sliceDoc(n.from,n.to),!o)return Lt.none}let r=[];for(let s of i.visibleRanges){let l=new K2(A.doc,o,s.from,s.to);for(;!l.next().done;){let{from:g,to:C}=l.value;if((!a||_P(a,A,g,C))&&(n.empty&&g<=n.from&&C>=n.to?r.push(n1A.range(g,C)):(g>=n.to||C<=n.from)&&r.push(i1A.range(g,C)),r.length>e.maxMatches))return Lt.none}}return Lt.set(r)}},{decorations:i=>i.decorations}),r1A=ui.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),s1A=({state:i,dispatch:e})=>{let{selection:A}=i,t=Be.create(A.ranges.map(n=>i.wordAt(n.head)||Be.cursor(n.head)),A.mainIndex);return t.eq(A)?!1:(e(i.update({selection:t})),!0)};function l1A(i,e){let{main:A,ranges:t}=i.selection,n=i.wordAt(A.head),o=n&&n.from==A.from&&n.to==A.to;for(let a=!1,r=new K2(i.doc,e,t[t.length-1].to);;)if(r.next(),r.done){if(a)return null;r=new K2(i.doc,e,0,Math.max(0,t[t.length-1].from-1)),a=!0}else{if(a&&t.some(s=>s.from==r.value.from))continue;if(o){let s=i.wordAt(r.value.from);if(!s||s.from!=r.value.from||s.to!=r.value.to)continue}return r.value}}var g1A=({state:i,dispatch:e})=>{let{ranges:A}=i.selection;if(A.some(o=>o.from===o.to))return s1A({state:i,dispatch:e});let t=i.sliceDoc(A[0].from,A[0].to);if(i.selection.ranges.some(o=>i.sliceDoc(o.from,o.to)!=t))return!1;let n=l1A(i,t);return n?(e(i.update({selection:i.selection.addRange(Be.range(n.from,n.to),!1),effects:ui.scrollIntoView(n.to)})),!0):!1},Fd=nt.define({combine(i){return Lr(i,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new yk(e),scrollToMatch:e=>ui.scrollIntoView(e)})}});function LP(i){return i?[Fd.of(i),Dk]:Dk}var X8=class{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||A1A(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(A,t)=>t=="n"?` -`:t=="r"?"\r":t=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new mk(this):new fk(this)}getCursor(e,A=0,t){let n=e.doc?e:ir.create({doc:e});return t==null&&(t=n.doc.length),this.regexp?fh(this,n,A,t):ph(this,n,A,t)}},$8=class{constructor(e){this.spec=e}};function c1A(i,e,A){return(t,n,o,a)=>{if(A&&!A(t,n,o,a))return!1;let r=t>=a&&n<=a+o.length?o.slice(t-a,n-a):e.doc.sliceString(t,n);return i(r,e,t,n)}}function ph(i,e,A,t){let n;return i.wholeWord&&(n=C1A(e.doc,e.charCategorizer(e.selection.main.head))),i.test&&(n=c1A(i.test,e,n)),new K2(e.doc,i.unquoted,A,t,i.caseSensitive?void 0:o=>o.toLowerCase(),n)}function C1A(i,e){return(A,t,n,o)=>((o>A||o+n.length=A)return null;n.push(t.value)}return n}highlight(e,A,t,n){let o=ph(this.spec,e,Math.max(0,A-this.spec.unquoted.length),Math.min(t+this.spec.unquoted.length,e.doc.length));for(;!o.next().done;)n(o.value.from,o.value.to)}};function d1A(i,e,A){return(t,n,o)=>(!A||A(t,n,o))&&i(o[0],e,t,n)}function fh(i,e,A,t){let n;return i.wholeWord&&(n=I1A(e.charCategorizer(e.selection.main.head))),i.test&&(n=d1A(i.test,e,n)),new V8(e.doc,i.search,{ignoreCase:!i.caseSensitive,test:n},A,t)}function Aw(i,e){return i.slice(tr(i,e,!1),e)}function ew(i,e){return i.slice(e,tr(i,e))}function I1A(i){return(e,A,t)=>!t[0].length||(i(Aw(t.input,t.index))!=$o.Word||i(ew(t.input,t.index))!=$o.Word)&&(i(ew(t.input,t.index+t[0].length))!=$o.Word||i(Aw(t.input,t.index+t[0].length))!=$o.Word)}var mk=class extends $8{nextMatch(e,A,t){let n=fh(this.spec,e,t,e.doc.length).next();return n.done&&(n=fh(this.spec,e,0,A).next()),n.done?null:n.value}prevMatchInRange(e,A,t){for(let n=1;;n++){let o=Math.max(A,t-n*1e4),a=fh(this.spec,e,o,t),r=null;for(;!a.next().done;)r=a.value;if(r&&(o==A||r.from>o+10))return r;if(o==A)return null}}prevMatch(e,A,t){return this.prevMatchInRange(e,0,A)||this.prevMatchInRange(e,t,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(A,t)=>{if(t=="&")return e.match[0];if(t=="$")return"$";for(let n=t.length;n>0;n--){let o=+t.slice(0,n);if(o>0&&o=A)return null;n.push(t.value)}return n}highlight(e,A,t,n){let o=fh(this.spec,e,Math.max(0,A-250),Math.min(t+250,e.doc.length));for(;!o.next().done;)n(o.value.from,o.value.to)}},k4=ln.define(),bk=ln.define(),G2=La.define({create(i){return new S4(wk(i).create(),null)},update(i,e){for(let A of e.effects)A.is(k4)?i=new S4(A.value.create(),i.panel):A.is(bk)&&(i=new S4(i.query,A.value?Mk:null));return i},provide:i=>vd.from(i,e=>e.panel)});var S4=class{constructor(e,A){this.query=e,this.panel=A}},B1A=Lt.mark({class:"cm-searchMatch"}),h1A=Lt.mark({class:"cm-searchMatch cm-searchMatch-selected"}),E1A=Po.fromClass(class{constructor(i){this.view=i,this.decorations=this.highlight(i.state.field(G2))}update(i){let e=i.state.field(G2);(e!=i.startState.field(G2)||i.docChanged||i.selectionSet||i.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:i,panel:e}){if(!e||!i.spec.valid)return Lt.none;let{view:A}=this,t=new Xr;for(let n=0,o=A.visibleRanges,a=o.length;no[n+1].from-500;)s=o[++n].to;i.highlight(A.state,r,s,(l,g)=>{let C=A.state.selection.ranges.some(d=>d.from==l&&d.to==g);t.add(l,g,C?h1A:B1A)})}return t.finish()}},{decorations:i=>i.decorations});function _4(i){return e=>{let A=e.state.field(G2,!1);return A&&A.query.spec.valid?i(e,A):nw(e)}}var tw=_4((i,{query:e})=>{let{to:A}=i.state.selection.main,t=e.nextMatch(i.state,A,A);if(!t)return!1;let n=Be.single(t.from,t.to),o=i.state.facet(Fd);return i.dispatch({selection:n,effects:[Sk(i,t),o.scrollToMatch(n.main,i)],userEvent:"select.search"}),KP(i),!0}),iw=_4((i,{query:e})=>{let{state:A}=i,{from:t}=A.selection.main,n=e.prevMatch(A,t,t);if(!n)return!1;let o=Be.single(n.from,n.to),a=i.state.facet(Fd);return i.dispatch({selection:o,effects:[Sk(i,n),a.scrollToMatch(o.main,i)],userEvent:"select.search"}),KP(i),!0}),Q1A=_4((i,{query:e})=>{let A=e.matchAll(i.state,1e3);return!A||!A.length?!1:(i.dispatch({selection:Be.create(A.map(t=>Be.range(t.from,t.to))),userEvent:"select.search.matches"}),!0)}),u1A=({state:i,dispatch:e})=>{let A=i.selection;if(A.ranges.length>1||A.main.empty)return!1;let{from:t,to:n}=A.main,o=[],a=0;for(let r=new K2(i.doc,i.sliceDoc(t,n));!r.next().done;){if(o.length>1e3)return!1;r.value.from==t&&(a=o.length),o.push(Be.range(r.value.from,r.value.to))}return e(i.update({selection:Be.create(o,a),userEvent:"select.search.matches"})),!0},xP=_4((i,{query:e})=>{let{state:A}=i,{from:t,to:n}=A.selection.main;if(A.readOnly)return!1;let o=e.nextMatch(A,t,t);if(!o)return!1;let a=o,r=[],s,l,g=[];a.from==t&&a.to==n&&(l=A.toText(e.getReplacement(a)),r.push({from:a.from,to:a.to,insert:l}),a=e.nextMatch(A,a.from,a.to),g.push(ui.announce.of(A.phrase("replaced match on line $",A.doc.lineAt(t).number)+".")));let C=i.state.changes(r);return a&&(s=Be.single(a.from,a.to).map(C),g.push(Sk(i,a)),g.push(A.facet(Fd).scrollToMatch(s.main,i))),i.dispatch({changes:C,selection:s,effects:g,userEvent:"input.replace"}),!0}),p1A=_4((i,{query:e})=>{if(i.state.readOnly)return!1;let A=e.matchAll(i.state,1e9).map(n=>{let{from:o,to:a}=n;return{from:o,to:a,insert:e.getReplacement(n)}});if(!A.length)return!1;let t=i.state.phrase("replaced $ matches",A.length)+".";return i.dispatch({changes:A,effects:ui.announce.of(t),userEvent:"input.replace.all"}),!0});function Mk(i){return i.state.facet(Fd).createPanel(i)}function wk(i,e){var A,t,n,o,a;let r=i.selection.main,s=r.empty||r.to>r.from+100?"":i.sliceDoc(r.from,r.to);if(e&&!s)return e;let l=i.facet(Fd);return new X8({search:((A=e?.literal)!==null&&A!==void 0?A:l.literal)?s:s.replace(/\n/g,"\\n"),caseSensitive:(t=e?.caseSensitive)!==null&&t!==void 0?t:l.caseSensitive,literal:(n=e?.literal)!==null&&n!==void 0?n:l.literal,regexp:(o=e?.regexp)!==null&&o!==void 0?o:l.regexp,wholeWord:(a=e?.wholeWord)!==null&&a!==void 0?a:l.wholeWord})}function GP(i){let e=d4(i,Mk);return e&&e.dom.querySelector("[main-field]")}function KP(i){let e=GP(i);e&&e==i.root.activeElement&&e.select()}var nw=i=>{let e=i.state.field(G2,!1);if(e&&e.panel){let A=GP(i);if(A&&A!=i.root.activeElement){let t=wk(i.state,e.query.spec);t.valid&&i.dispatch({effects:k4.of(t)}),A.focus(),A.select()}}else i.dispatch({effects:[bk.of(!0),e?k4.of(wk(i.state,e.query.spec)):ln.appendConfig.of(Dk)]});return!0},ow=i=>{let e=i.state.field(G2,!1);if(!e||!e.panel)return!1;let A=d4(i,Mk);return A&&A.dom.contains(i.root.activeElement)&&i.focus(),i.dispatch({effects:bk.of(!1)}),!0},UP=[{key:"Mod-f",run:nw,scope:"editor search-panel"},{key:"F3",run:tw,shift:iw,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:tw,shift:iw,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:ow,scope:"editor search-panel"},{key:"Mod-Shift-l",run:u1A},{key:"Mod-Alt-g",run:e1A},{key:"Mod-d",run:g1A,preventDefault:!0}],yk=class{constructor(e){this.view=e;let A=this.query=e.state.field(G2).query.spec;this.commit=this.commit.bind(this),this.searchField=po("input",{value:A.search,placeholder:Gl(e,"Find"),"aria-label":Gl(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=po("input",{value:A.replace,placeholder:Gl(e,"Replace"),"aria-label":Gl(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=po("input",{type:"checkbox",name:"case",form:"",checked:A.caseSensitive,onchange:this.commit}),this.reField=po("input",{type:"checkbox",name:"re",form:"",checked:A.regexp,onchange:this.commit}),this.wordField=po("input",{type:"checkbox",name:"word",form:"",checked:A.wholeWord,onchange:this.commit});function t(n,o,a){return po("button",{class:"cm-button",name:n,onclick:o,type:"button"},a)}this.dom=po("div",{onkeydown:n=>this.keydown(n),class:"cm-search"},[this.searchField,t("next",()=>tw(e),[Gl(e,"next")]),t("prev",()=>iw(e),[Gl(e,"previous")]),t("select",()=>Q1A(e),[Gl(e,"all")]),po("label",null,[this.caseField,Gl(e,"match case")]),po("label",null,[this.reField,Gl(e,"regexp")]),po("label",null,[this.wordField,Gl(e,"by word")]),...e.state.readOnly?[]:[po("br"),this.replaceField,t("replace",()=>xP(e),[Gl(e,"replace")]),t("replaceAll",()=>p1A(e),[Gl(e,"replace all")])],po("button",{name:"close",onclick:()=>ow(e),"aria-label":Gl(e,"close"),type:"button"},["\xD7"])])}commit(){let e=new X8({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:k4.of(e)}))}keydown(e){wH(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?iw:tw)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),xP(this.view))}update(e){for(let A of e.transactions)for(let t of A.effects)t.is(k4)&&!t.value.eq(this.query)&&this.setQuery(t.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(Fd).top}};function Gl(i,e){return i.state.phrase(e)}var P8=30,j8=/[\s\.,:;?!]/;function Sk(i,{from:e,to:A}){let t=i.state.doc.lineAt(e),n=i.state.doc.lineAt(A).to,o=Math.max(t.from,e-P8),a=Math.min(n,A+P8),r=i.state.sliceDoc(o,a);if(o!=t.from){for(let s=0;sr.length-P8;s--)if(!j8.test(r[s-1])&&j8.test(r[s])){r=r.slice(0,s);break}}return ui.announce.of(`${i.state.phrase("current match")}. ${r} ${i.state.phrase("on line")} ${t.number}.`)}var f1A=ui.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),Dk=[G2,oc.low(E1A),f1A];var rw=class{constructor(e,A,t,n){this.state=e,this.pos=A,this.explicit=t,this.view=n,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let A=Kr(this.state).resolveInner(this.pos,-1);for(;A&&e.indexOf(A.name)<0;)A=A.parent;return A?{from:A.from,to:this.pos,text:this.state.sliceDoc(A.from,this.pos),type:A.type}:null}matchBefore(e){let A=this.state.doc.lineAt(this.pos),t=Math.max(A.from,this.pos-250),n=A.text.slice(t-A.from,this.pos-A.from),o=n.search(jP(e,!1));return o<0?null:{from:t+o,to:this.pos,text:n.slice(o)}}get aborted(){return this.abortListeners==null}addEventListener(e,A,t){e=="abort"&&this.abortListeners&&(this.abortListeners.push(A),t&&t.onDocChange&&(this.abortOnDocChange=!0))}};function TP(i){let e=Object.keys(i).join(""),A=/\w/.test(e);return A&&(e=e.replace(/\w/g,"")),`[${A?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function m1A(i){let e=Object.create(null),A=Object.create(null);for(let{label:n}of i){e[n[0]]=!0;for(let o=1;otypeof n=="string"?{label:n}:n),[A,t]=e.every(n=>/^\w+$/.test(n.label))?[/\w*$/,/\w+$/]:m1A(e);return n=>{let o=n.matchBefore(t);return o||n.explicit?{from:o?o.from:n.pos,options:e,validFor:A}:null}}var sw=class{constructor(e,A,t,n){this.completion=e,this.source=A,this.match=t,this.score=n}};function Gd(i){return i.selection.main.from}function jP(i,e){var A;let{source:t}=i,n=e&&t[0]!="^",o=t[t.length-1]!="$";return!n&&!o?i:new RegExp(`${n?"^":""}(?:${t})${o?"$":""}`,(A=i.flags)!==null&&A!==void 0?A:i.ignoreCase?"i":"")}var VP=sl.define();function y1A(i,e,A,t){let{main:n}=i.selection,o=A-n.from,a=t-n.from;return $A(P({},i.changeByRange(r=>{if(r!=n&&A!=t&&i.sliceDoc(r.from+o,r.from+a)!=i.sliceDoc(A,t))return{range:r};let s=i.toText(e);return{changes:{from:r.from+o,to:t==n.from?r.to:r.from+a,insert:s},range:Be.cursor(r.from+o+s.length)}})),{scrollIntoView:!0,userEvent:"input.complete"})}var OP=new WeakMap;function D1A(i){if(!Array.isArray(i))return i;let e=OP.get(i);return e||OP.set(i,e=w1A(i)),e}var lw=ln.define(),x4=ln.define(),Rk=class{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let A=0;A=48&&M<=57||M>=97&&M<=122?2:M>=65&&M<=90?1:0:(x=qu(M))!=x.toLowerCase()?1:x!=x.toUpperCase()?2:0;(!v||F==1&&f||k==0&&F!=0)&&(A[C]==M||t[C]==M&&(d=!0)?a[C++]=v:a.length&&(m=!1)),k=F,v+=Rl(M)}return C==s&&a[0]==0&&m?this.result(-100+(d?-200:0),a,e):B==s&&u==0?this.ret(-200-e.length+(E==e.length?0:-100),[0,E]):r>-1?this.ret(-700-e.length,[r,r+this.pattern.length]):B==s?this.ret(-900-e.length,[u,E]):C==s?this.result(-100+(d?-200:0)+-700+(m?0:-1100),a,e):A.length==2?null:this.result((n[0]?-700:0)+-200+-1100,n,e)}result(e,A,t){let n=[],o=0;for(let a of A){let r=a+(this.astral?Rl($r(t,a)):1);o&&n[o-1]==a?n[o-1]=r:(n[o++]=a,n[o++]=r)}return this.ret(e-t.length,n)}},Nk=class{constructor(e){this.pattern=e,this.matched=[],this.score=0,this.folded=e.toLowerCase()}match(e){if(e.length!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:v1A,filterStrict:!1,compareCompletions:(e,A)=>(e.sortText||e.label).localeCompare(A.sortText||A.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(e,A)=>e&&A,closeOnBlur:(e,A)=>e&&A,icons:(e,A)=>e&&A,tooltipClass:(e,A)=>t=>JP(e(t),A(t)),optionClass:(e,A)=>t=>JP(e(t),A(t)),addToOptions:(e,A)=>e.concat(A),filterStrict:(e,A)=>e||A})}});function JP(i,e){return i?e?i+" "+e:i:e}function v1A(i,e,A,t,n,o){let a=i.textDirection==Lo.RTL,r=a,s=!1,l="top",g,C,d=e.left-n.left,B=n.right-e.right,u=t.right-t.left,E=t.bottom-t.top;if(r&&d=E||v>e.top?g=A.bottom-e.top:(l="bottom",g=e.bottom-A.top)}let f=(e.bottom-e.top)/o.offsetHeight,m=(e.right-e.left)/o.offsetWidth;return{style:`${l}: ${g/f}px; max-width: ${C/m}px`,class:"cm-completionInfo-"+(s?a?"left-narrow":"right-narrow":r?"left":"right")}}var Uk=ln.define();function b1A(i){let e=i.addToOptions.slice();return i.icons&&e.push({render(A){let t=document.createElement("div");return t.classList.add("cm-completionIcon"),A.type&&t.classList.add(...A.type.split(/\s+/g).map(n=>"cm-completionIcon-"+n)),t.setAttribute("aria-hidden","true"),t},position:20}),e.push({render(A,t,n,o){let a=document.createElement("span");a.className="cm-completionLabel";let r=A.displayLabel||A.label,s=0;for(let l=0;ls&&a.appendChild(document.createTextNode(r.slice(s,g)));let d=a.appendChild(document.createElement("span"));d.appendChild(document.createTextNode(r.slice(g,C))),d.className="cm-completionMatchedText",s=C}return sA.position-t.position).map(A=>A.render)}function kk(i,e,A){if(i<=A)return{from:0,to:i};if(e<0&&(e=0),e<=i>>1){let n=Math.floor(e/A);return{from:n*A,to:(n+1)*A}}let t=Math.floor((i-e)/A);return{from:i-(t+1)*A,to:i-t*A}}var Fk=class{constructor(e,A,t){this.view=e,this.stateField=A,this.applyCompletion=t,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:s=>this.placeInfo(s),key:this},this.space=null,this.currentClass="";let n=e.state.field(A),{options:o,selected:a}=n.open,r=e.state.facet(Ur);this.optionContent=b1A(r),this.optionClass=r.optionClass,this.tooltipClass=r.tooltipClass,this.range=kk(o.length,a,r.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",s=>{let{options:l}=e.state.field(A).open;for(let g=s.target,C;g&&g!=this.dom;g=g.parentNode)if(g.nodeName=="LI"&&(C=/-(\d+)$/.exec(g.id))&&+C[1]this.list.lastChild.getBoundingClientRect().bottom?this.range.to:null;g!=null&&(e.dispatch({effects:Uk.of(g)}),s.preventDefault())}}),this.dom.addEventListener("focusout",s=>{let l=e.state.field(this.stateField,!1);l&&l.tooltip&&e.state.facet(Ur).closeOnBlur&&s.relatedTarget!=e.contentDOM&&e.dispatch({effects:x4.of(null)})}),this.showOptions(o,n.id)}mount(){this.updateSel()}showOptions(e,A){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(e,A,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(e){var A;let t=e.state.field(this.stateField),n=e.startState.field(this.stateField);if(this.updateTooltipClass(e.state),t!=n){let{options:o,selected:a,disabled:r}=t.open;(!n.open||n.open.options!=o)&&(this.range=kk(o.length,a,e.state.facet(Ur).maxRenderedOptions),this.showOptions(o,t.id)),this.updateSel(),r!=((A=n.open)===null||A===void 0?void 0:A.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!r)}}updateTooltipClass(e){let A=this.tooltipClass(e);if(A!=this.currentClass){for(let t of this.currentClass.split(" "))t&&this.dom.classList.remove(t);for(let t of A.split(" "))t&&this.dom.classList.add(t);this.currentClass=A}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),A=e.open;(A.selected>-1&&A.selected=this.range.to)&&(this.range=kk(A.options.length,A.selected,this.view.state.facet(Ur).maxRenderedOptions),this.showOptions(A.options,e.id));let t=this.updateSelectedOption(A.selected);if(t){this.destroyInfo();let{completion:n}=A.options[A.selected],{info:o}=n;if(!o)return;let a=typeof o=="string"?document.createTextNode(o):o(n);if(!a)return;"then"in a?a.then(r=>{r&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(r,n)}).catch(r=>Gr(this.view.state,r,"completion info")):(this.addInfoPane(a,n),t.setAttribute("aria-describedby",this.info.id))}}addInfoPane(e,A){this.destroyInfo();let t=this.info=document.createElement("div");if(t.className="cm-tooltip cm-completionInfo",t.id="cm-completionInfo-"+Math.floor(Math.random()*65535).toString(16),e.nodeType!=null)t.appendChild(e),this.infoDestroy=null;else{let{dom:n,destroy:o}=e;t.appendChild(n),this.infoDestroy=o||null}this.dom.appendChild(t),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let A=null;for(let t=this.list.firstChild,n=this.range.from;t;t=t.nextSibling,n++)t.nodeName!="LI"||!t.id?n--:n==e?t.hasAttribute("aria-selected")||(t.setAttribute("aria-selected","true"),A=t):t.hasAttribute("aria-selected")&&(t.removeAttribute("aria-selected"),t.removeAttribute("aria-describedby"));return A&&S1A(this.list,A),A}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let A=this.dom.getBoundingClientRect(),t=this.info.getBoundingClientRect(),n=e.getBoundingClientRect(),o=this.space;if(!o){let a=this.dom.ownerDocument.documentElement;o={left:0,top:0,right:a.clientWidth,bottom:a.clientHeight}}return n.top>Math.min(o.bottom,A.bottom)-10||n.bottom{a.target==n&&a.preventDefault()});let o=null;for(let a=t.from;at.from||t.from==0))if(o=d,typeof l!="string"&&l.header)n.appendChild(l.header(l));else{let B=n.appendChild(document.createElement("completion-section"));B.textContent=d}}let g=n.appendChild(document.createElement("li"));g.id=A+"-"+a,g.setAttribute("role","option");let C=this.optionClass(r);C&&(g.className=C);for(let d of this.optionContent){let B=d(r,this.view.state,this.view,s);B&&g.appendChild(B)}}return t.from&&n.classList.add("cm-completionListIncompleteTop"),t.tonew Fk(A,i,e)}function S1A(i,e){let A=i.getBoundingClientRect(),t=e.getBoundingClientRect(),n=A.height/i.offsetHeight;t.topA.bottom&&(i.scrollTop+=(t.bottom-A.bottom)/n)}function YP(i){return(i.boost||0)*100+(i.apply?10:0)+(i.info?5:0)+(i.type?1:0)}function k1A(i,e){let A=[],t=null,n=null,o=g=>{A.push(g);let{section:C}=g.completion;if(C){t||(t=[]);let d=typeof C=="string"?C:C.name;t.some(B=>B.name==d)||t.push(typeof C=="string"?{name:d}:C)}},a=e.facet(Ur);for(let g of i)if(g.hasResult()){let C=g.result.getMatch;if(g.result.filter===!1)for(let d of g.result.options)o(new sw(d,g.source,C?C(d):[],1e9-A.length));else{let d=e.sliceDoc(g.from,g.to),B,u=a.filterStrict?new Nk(d):new Rk(d);for(let E of g.result.options)if(B=u.match(E.label)){let f=E.displayLabel?C?C(E,B.matched):[]:B.matched,m=B.score+(E.boost||0);if(o(new sw(E,g.source,f,m)),typeof E.section=="object"&&E.section.rank==="dynamic"){let{name:v}=E.section;n||(n=Object.create(null)),n[v]=Math.max(m,n[v]||-1e9)}}}}if(t){let g=Object.create(null),C=0,d=(B,u)=>(B.rank==="dynamic"&&u.rank==="dynamic"?n[u.name]-n[B.name]:0)||(typeof B.rank=="number"?B.rank:1e9)-(typeof u.rank=="number"?u.rank:1e9)||(B.named.score-C.score||l(C.completion,d.completion))){let C=g.completion;!s||s.label!=C.label||s.detail!=C.detail||s.type!=null&&C.type!=null&&s.type!=C.type||s.apply!=C.apply||s.boost!=C.boost?r.push(g):YP(g.completion)>YP(s)&&(r[r.length-1]=g),s=g.completion}return r}var Lk=class i{constructor(e,A,t,n,o,a){this.options=e,this.attrs=A,this.tooltip=t,this.timestamp=n,this.selected=o,this.disabled=a}setSelected(e,A){return e==this.selected||e>=this.options.length?this:new i(this.options,HP(A,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,A,t,n,o,a){if(n&&!a&&e.some(l=>l.isPending))return n.setDisabled();let r=k1A(e,A);if(!r.length)return n&&e.some(l=>l.isPending)?n.setDisabled():null;let s=A.facet(Ur).selectOnOpen?0:-1;if(n&&n.selected!=s&&n.selected!=-1){let l=n.options[n.selected].completion;for(let g=0;gg.hasResult()?Math.min(l,g.from):l,1e8),create:L1A,above:o.aboveCursor},n?n.timestamp:Date.now(),s,!1)}map(e){return new i(this.options,this.attrs,$A(P({},this.tooltip),{pos:e.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}setDisabled(){return new i(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}},Gk=class i{constructor(e,A,t){this.active=e,this.id=A,this.open=t}static start(){return new i(N1A,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:A}=e,t=A.facet(Ur),o=(t.override||A.languageDataAt("autocomplete",Gd(A)).map(D1A)).map(s=>(this.active.find(g=>g.source==s)||new dC(s,this.active.some(g=>g.state!=0)?1:0)).update(e,t));o.length==this.active.length&&o.every((s,l)=>s==this.active[l])&&(o=this.active);let a=this.open,r=e.effects.some(s=>s.is(Tk));a&&e.docChanged&&(a=a.map(e.changes)),e.selection||o.some(s=>s.hasResult()&&e.changes.touchesRange(s.from,s.to))||!_1A(o,this.active)||r?a=Lk.build(o,A,this.id,a,t,r):a&&a.disabled&&!o.some(s=>s.isPending)&&(a=null),!a&&o.every(s=>!s.isPending)&&o.some(s=>s.hasResult())&&(o=o.map(s=>s.hasResult()?new dC(s.source,0):s));for(let s of e.effects)s.is(Uk)&&(a=a&&a.setSelected(s.value,this.id));return o==this.active&&a==this.open?this:new i(o,this.id,a)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?x1A:R1A}};function _1A(i,e){if(i==e)return!0;for(let A=0,t=0;;){for(;A-1&&(A["aria-activedescendant"]=i+"-"+e),A}var N1A=[];function qP(i,e){if(i.isUserEvent("input.complete")){let t=i.annotation(VP);if(t&&e.activateOnCompletion(t))return 12}let A=i.isUserEvent("input.type");return A&&e.activateOnTyping?5:A?1:i.isUserEvent("delete.backward")?2:i.selection?8:i.docChanged?16:0}var dC=class i{constructor(e,A,t=!1){this.source=e,this.state=A,this.explicit=t}hasResult(){return!1}get isPending(){return this.state==1}update(e,A){let t=qP(e,A),n=this;(t&8||t&16&&this.touches(e))&&(n=new i(n.source,0)),t&4&&n.state==0&&(n=new i(this.source,1)),n=n.updateFor(e,t);for(let o of e.effects)if(o.is(lw))n=new i(n.source,1,o.value);else if(o.is(x4))n=new i(n.source,0);else if(o.is(Tk))for(let a of o.value)a.source==n.source&&(n=a);return n}updateFor(e,A){return this.map(e.changes)}map(e){return this}touches(e){return e.changes.touchesRange(Gd(e.state))}},gw=class i extends dC{constructor(e,A,t,n,o,a){super(e,3,A),this.limit=t,this.result=n,this.from=o,this.to=a}hasResult(){return!0}updateFor(e,A){var t;if(!(A&3))return this.map(e.changes);let n=this.result;n.map&&!e.changes.empty&&(n=n.map(n,e.changes));let o=e.changes.mapPos(this.from),a=e.changes.mapPos(this.to,1),r=Gd(e.state);if(r>a||!n||A&2&&(Gd(e.startState)==this.from||rA.map(e))}}),dl=La.define({create(){return Gk.start()},update(i,e){return i.update(e)},provide:i=>[ch.from(i,e=>e.tooltip),ui.contentAttributes.from(i,e=>e.attrs)]});function Ok(i,e){let A=e.completion.apply||e.completion.label,t=i.state.field(dl).active.find(n=>n.source==e.source);return t instanceof gw?(typeof A=="string"?i.dispatch($A(P({},y1A(i.state,A,t.from,t.to)),{annotations:VP.of(e.completion)})):A(i,e.completion,t.from,t.to),!0):!1}var L1A=M1A(dl,Ok);function aw(i,e="option"){return A=>{let t=A.state.field(dl,!1);if(!t||!t.open||t.open.disabled||Date.now()-t.open.timestamp-1?t.open.selected+n*(i?1:-1):i?0:a-1;return r<0?r=e=="page"?0:a-1:r>=a&&(r=e=="page"?a-1:0),A.dispatch({effects:Uk.of(r)}),!0}}var G1A=i=>{let e=i.state.field(dl,!1);return i.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestampi.state.field(dl,!1)?(i.dispatch({effects:lw.of(!0)}),!0):!1,K1A=i=>{let e=i.state.field(dl,!1);return!e||!e.active.some(A=>A.state!=0)?!1:(i.dispatch({effects:x4.of(null)}),!0)},Kk=class{constructor(e,A){this.active=e,this.context=A,this.time=Date.now(),this.updates=[],this.done=void 0}},U1A=50,T1A=1e3,O1A=Po.fromClass(class{constructor(i){this.view=i,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let e of i.state.field(dl).active)e.isPending&&this.startQuery(e)}update(i){let e=i.state.field(dl),A=i.state.facet(Ur);if(!i.selectionSet&&!i.docChanged&&i.startState.field(dl)==e)return;let t=i.transactions.some(o=>{let a=qP(o,A);return a&8||(o.selection||o.docChanged)&&!(a&3)});for(let o=0;oU1A&&Date.now()-a.time>T1A){for(let r of a.context.abortListeners)try{r()}catch(s){Gr(this.view.state,s)}a.context.abortListeners=null,this.running.splice(o--,1)}else a.updates.push(...i.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),i.transactions.some(o=>o.effects.some(a=>a.is(lw)))&&(this.pendingStart=!0);let n=this.pendingStart?50:A.activateOnTypingDelay;if(this.debounceUpdate=e.active.some(o=>o.isPending&&!this.running.some(a=>a.active.source==o.source))?setTimeout(()=>this.startUpdate(),n):-1,this.composing!=0)for(let o of i.transactions)o.isUserEvent("input.type")?this.composing=2:this.composing==2&&o.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:i}=this.view,e=i.field(dl);for(let A of e.active)A.isPending&&!this.running.some(t=>t.active.source==A.source)&&this.startQuery(A);this.running.length&&e.open&&e.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Ur).updateSyncTime))}startQuery(i){let{state:e}=this.view,A=Gd(e),t=new rw(e,A,i.explicit,this.view),n=new Kk(i,t);this.running.push(n),Promise.resolve(i.source(t)).then(o=>{n.context.aborted||(n.done=o||null,this.scheduleAccept())},o=>{this.view.dispatch({effects:x4.of(null)}),Gr(this.view.state,o)})}scheduleAccept(){this.running.every(i=>i.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Ur).updateSyncTime))}accept(){var i;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],A=this.view.state.facet(Ur),t=this.view.state.field(dl);for(let n=0;nr.source==o.active.source);if(a&&a.isPending)if(o.done==null){let r=new dC(o.active.source,0);for(let s of o.updates)r=r.update(s,A);r.isPending||e.push(r)}else this.startQuery(a)}(e.length||t.open&&t.open.disabled)&&this.view.dispatch({effects:Tk.of(e)})}},{eventHandlers:{blur(i){let e=this.view.state.field(dl,!1);if(e&&e.tooltip&&this.view.state.facet(Ur).closeOnBlur){let A=e.open&&wS(this.view,e.open.tooltip);(!A||!A.dom.contains(i.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:x4.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:lw.of(!1)}),20),this.composing=0}}}),J1A=typeof navigator=="object"&&/Win/.test(navigator.platform),Y1A=oc.highest(ui.domEventHandlers({keydown(i,e){let A=e.state.field(dl,!1);if(!A||!A.open||A.open.disabled||A.open.selected<0||i.key.length>1||i.ctrlKey&&!(J1A&&i.altKey)||i.metaKey)return!1;let t=A.open.options[A.open.selected],n=A.active.find(a=>a.source==t.source),o=t.completion.commitCharacters||n.result.commitCharacters;return o&&o.indexOf(i.key)>-1&&Ok(e,t),!1}})),H1A=ui.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"\xB7\xB7\xB7"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'\u0192'"}},".cm-completionIcon-class":{"&:after":{content:"'\u25CB'"}},".cm-completionIcon-interface":{"&:after":{content:"'\u25CC'"}},".cm-completionIcon-variable":{"&:after":{content:"'\u{1D465}'"}},".cm-completionIcon-constant":{"&:after":{content:"'\u{1D436}'"}},".cm-completionIcon-type":{"&:after":{content:"'\u{1D461}'"}},".cm-completionIcon-enum":{"&:after":{content:"'\u222A'"}},".cm-completionIcon-property":{"&:after":{content:"'\u25A1'"}},".cm-completionIcon-keyword":{"&:after":{content:"'\u{1F511}\uFE0E'"}},".cm-completionIcon-namespace":{"&:after":{content:"'\u25A2'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});var R4={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},Ld=ln.define({map(i,e){let A=e.mapPos(i,-1,Wr.TrackAfter);return A??void 0}}),Jk=new class extends cg{};Jk.startSide=1;Jk.endSide=-1;var WP=La.define({create(){return uo.empty},update(i,e){if(i=i.map(e.changes),e.selection){let A=e.state.doc.lineAt(e.selection.main.head);i=i.update({filter:t=>t>=A.from&&t<=A.to})}for(let A of e.effects)A.is(Ld)&&(i=i.update({add:[Jk.range(A.value,A.value+1)]}));return i}});function ZP(){return[P1A,WP]}var xk="()[]{}<>\xAB\xBB\xBB\xAB\uFF3B\uFF3D\uFF5B\uFF5D";function XP(i){for(let e=0;e{if((z1A?i.composing:i.compositionStarted)||i.state.readOnly)return!1;let n=i.state.selection.main;if(t.length>2||t.length==2&&Rl($r(t,0))==1||e!=n.from||A!=n.to)return!1;let o=V1A(i.state,t);return o?(i.dispatch(o),!0):!1}),j1A=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let t=$P(i,i.selection.main.head).brackets||R4.brackets,n=null,o=i.changeByRange(a=>{if(a.empty){let r=q1A(i.doc,a.head);for(let s of t)if(s==r&&cw(i.doc,a.head)==XP($r(s,0)))return{changes:{from:a.head-s.length,to:a.head+s.length},range:Be.cursor(a.head-s.length)}}return{range:n=a}});return n||e(i.update(o,{scrollIntoView:!0,userEvent:"delete.backward"})),!n},Aj=[{key:"Backspace",run:j1A}];function V1A(i,e){let A=$P(i,i.selection.main.head),t=A.brackets||R4.brackets;for(let n of t){let o=XP($r(n,0));if(e==n)return o==n?X1A(i,n,t.indexOf(n+n+n)>-1,A):W1A(i,n,o,A.before||R4.before);if(e==o&&ej(i,i.selection.main.from))return Z1A(i,n,o)}return null}function ej(i,e){let A=!1;return i.field(WP).between(0,i.doc.length,t=>{t==e&&(A=!0)}),A}function cw(i,e){let A=i.sliceString(e,e+2);return A.slice(0,Rl($r(A,0)))}function q1A(i,e){let A=i.sliceString(e-2,e);return Rl($r(A,0))==A.length?A:A.slice(1)}function W1A(i,e,A,t){let n=null,o=i.changeByRange(a=>{if(!a.empty)return{changes:[{insert:e,from:a.from},{insert:A,from:a.to}],effects:Ld.of(a.to+e.length),range:Be.range(a.anchor+e.length,a.head+e.length)};let r=cw(i.doc,a.head);return!r||/\s/.test(r)||t.indexOf(r)>-1?{changes:{insert:e+A,from:a.head},effects:Ld.of(a.head+e.length),range:Be.cursor(a.head+e.length)}:{range:n=a}});return n?null:i.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function Z1A(i,e,A){let t=null,n=i.changeByRange(o=>o.empty&&cw(i.doc,o.head)==A?{changes:{from:o.head,to:o.head+A.length,insert:A},range:Be.cursor(o.head+A.length)}:t={range:o});return t?null:i.update(n,{scrollIntoView:!0,userEvent:"input.type"})}function X1A(i,e,A,t){let n=t.stringPrefixes||R4.stringPrefixes,o=null,a=i.changeByRange(r=>{if(!r.empty)return{changes:[{insert:e,from:r.from},{insert:e,from:r.to}],effects:Ld.of(r.to+e.length),range:Be.range(r.anchor+e.length,r.head+e.length)};let s=r.head,l=cw(i.doc,s),g;if(l==e){if(zP(i,s))return{changes:{insert:e+e,from:s},effects:Ld.of(s+e.length),range:Be.cursor(s+e.length)};if(ej(i,s)){let d=A&&i.sliceDoc(s,s+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:s,to:s+d.length,insert:d},range:Be.cursor(s+d.length)}}}else{if(A&&i.sliceDoc(s-2*e.length,s)==e+e&&(g=PP(i,s-2*e.length,n))>-1&&zP(i,g))return{changes:{insert:e+e+e+e,from:s},effects:Ld.of(s+e.length),range:Be.cursor(s+e.length)};if(i.charCategorizer(s)(l)!=$o.Word&&PP(i,s,n)>-1&&!$1A(i,s,e,n))return{changes:{insert:e+e,from:s},effects:Ld.of(s+e.length),range:Be.cursor(s+e.length)}}return{range:o=r}});return o?null:i.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function zP(i,e){let A=Kr(i).resolveInner(e+1);return A.parent&&A.from==e}function $1A(i,e,A,t){let n=Kr(i).resolveInner(e,-1),o=t.reduce((a,r)=>Math.max(a,r.length),0);for(let a=0;a<5;a++){let r=i.sliceDoc(n.from,Math.min(n.to,n.from+A.length+o)),s=r.indexOf(A);if(!s||s>-1&&t.indexOf(r.slice(0,s))>-1){let g=n.firstChild;for(;g&&g.from==n.from&&g.to-g.from>A.length+s;){if(i.sliceDoc(g.to-A.length,g.to)==A)return!1;g=g.firstChild}return!0}let l=n.to==e&&n.parent;if(!l)break;n=l}return!1}function PP(i,e,A){let t=i.charCategorizer(e);if(t(i.sliceDoc(e-1,e))!=$o.Word)return e;for(let n of A){let o=e-n.length;if(i.sliceDoc(o,e)==n&&t(i.sliceDoc(o-1,o))!=$o.Word)return o}return-1}function tj(i={}){return[Y1A,dl,Ur.of(i),O1A,AdA,H1A]}var Yk=[{key:"Ctrl-Space",run:_k},{mac:"Alt-`",run:_k},{mac:"Alt-i",run:_k},{key:"Escape",run:K1A},{key:"ArrowDown",run:aw(!0)},{key:"ArrowUp",run:aw(!1)},{key:"PageDown",run:aw(!0,"page")},{key:"PageUp",run:aw(!1,"page")},{key:"Enter",run:G1A}],AdA=oc.highest(gh.computeN([Ur],i=>i.facet(Ur).defaultKeymap?[Yk]:[]));function edA(i,e=i.state){let A=new Set;for(let{from:t,to:n}of i.visibleRanges){let o=t;for(;o<=n;){let a=e.doc.lineAt(o);A.has(a)||A.add(a),o=a.to+1}}return A}function Hk(i){let e=i.selection.main.head;return i.doc.lineAt(e)}function ij(i,e){let A=0;A:for(let t=0;t=o.level&&this.markerType!=="codeOnly"?this.set(e,0,n.level):n.empty&&n.level===0&&o.level!==0?this.set(e,0,0):o.level>n.level?this.set(e,0,n.level+1):this.set(e,0,o.level)}let A=ij(e.text,this.state.tabSize),t=Math.floor(A/this.unitWidth);return this.set(e,A,t)}closestNonEmpty(e,A){let t=e.number+A;for(;A===-1?t>=1:t<=this.state.doc.lines;){if(this.has(t)){let a=this.get(t);if(!a.empty)return a}let o=this.state.doc.line(t);if(o.text.trim().length){let a=ij(o.text,this.state.tabSize),r=Math.floor(a/this.unitWidth);return this.set(o,a,r)}t+=A}let n=this.state.doc.line(A===-1?1:this.state.doc.lines);return this.set(n,0,0)}findAndSetActiveLines(){let e=Hk(this.state);if(!this.has(e))return;let A=this.get(e);if(this.has(A.line.number+1)){let o=this.get(A.line.number+1);o.level>A.level&&(A=o)}if(this.has(A.line.number-1)){let o=this.get(A.line.number-1);o.level>A.level&&(A=o)}if(A.level===0)return;A.active=A.level;let t,n;for(t=A.line.number;t>1;t--){if(!this.has(t-1))continue;let o=this.get(t-1);if(o.level0&&s.push(Cw("--indent-marker-bg-color",t,e,r,l)),s.push(Cw("--indent-marker-active-bg-color",n,e,a-1,1)),a!==o&&s.push(Cw("--indent-marker-bg-color",t,e,a,o-a))}else s.push(Cw("--indent-marker-bg-color",t,e,r,o-r));return s.join(",")}var Pk=class{constructor(e){this.view=e,this.unitWidth=Cc(e.state),this.currentLineNumber=Hk(e.state).number,this.generate(e.state)}update(e){let A=Cc(e.state),t=A!==this.unitWidth;t&&(this.unitWidth=A);let n=Hk(e.state).number,o=n!==this.currentLineNumber;this.currentLineNumber=n;let a=e.state.facet(dw).highlightActiveBlock&&o;(e.docChanged||e.viewportChanged||t||a)&&this.generate(e.state)}generate(e){let A=new Xr,t=edA(this.view,e),{hideFirstIndent:n,markerType:o,thickness:a,activeThickness:r}=e.facet(dw),s=new zk(t,e,this.unitWidth,o);for(let l of t){let g=s.get(l.number);if(!g?.level)continue;let C=idA(g,this.unitWidth,n,a,r);A.add(l.from,l.from,Lt.line({class:"cm-indent-markers",attributes:{style:`--indent-markers: ${C}`}}))}this.decorations=A.finish()}};function nj(i={}){return[dw.of(i),tdA(i.colors),Po.fromClass(Pk,{decorations:e=>e.decorations})]}var ndA=["mainAxis","crossAxis","fallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","flipAlignment"],odA=["mainAxis","crossAxis","limiter"];function mV(i,e){if(i==null)return{};var A,t,n=(function(a,r){if(a==null)return{};var s={};for(var l in a)if({}.hasOwnProperty.call(a,l)){if(r.indexOf(l)!==-1)continue;s[l]=a[l]}return s})(i,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(i);for(t=0;t{};function ddA(i){return i()}function f_(i){for(var e=0;e{i=A,e=t}),resolve:i,reject:e}}var IdA=1<<24,oE=16,s5=32,MV=64,tx=128,fc=512,ts=1024,mc=2048,_C=4096,w0=8192,aE=16384,ix=32768,Zd=65536,BdA=1<<17,SV=1<<18,kV=1<<19,hC=1<<25,Ow=32768,m_=1<<21,$2=1<<23,y0=Symbol("$state"),_V=Symbol("legacy props"),hdA=Symbol(""),Rh=new class extends Error{constructor(){super(...arguments),u0(this,"name","StaleReactionError"),u0(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};function sp(i){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function xV(i){return i===this.v}function RV(i,e){return i!=i?e==e:i!==e||i!==null&&typeof i=="object"||typeof i=="function"}function NV(i){return!RV(i,this.v)}var Mo=null;function Ph(i){Mo=i}function s1(i){return FV().get(i)}function Jt(i){Mo={p:Mo,i:!1,c:null,e:null,s:i,x:null,l:nE&&!(arguments.length>1&&arguments[1]!==void 0&&arguments[1])?{s:null,u:null,$:[]}:null}}function Yt(i){var e=Mo,A=e.e;if(A!==null)for(var t of(e.e=null,A))XV(t);return i!==void 0&&(e.x=i),e.i=!0,Mo=e.p,i??{}}function rE(){return!nE||Mo!==null&&Mo.l===null}function FV(i){var e,A;return Mo===null&&sp(),(A=(e=Mo).c)!==null&&A!==void 0?A:e.c=new Map((function(t){for(var n=t.p;n!==null;){var o=n.c;if(o!==null)return o;n=n.p}return null})(Mo)||void 0)}var zd=[];function LV(){var i=zd;zd=[],f_(i)}function Xd(i){if(zd.length===0&&!z4){var e=zd;queueMicrotask(()=>{e===zd&&LV()})}zd.push(i)}function EdA(){for(;zd.length>0;)LV()}function GV(i){var e=co;if(e===null)return go.f|=$2,i;if((e.f&ix)===0){if((e.f&tx)===0)throw i;e.b.error(i)}else jh(i,e)}function jh(i,e){for(;e!==null;){if((e.f&tx)!==0)try{return void e.b.error(i)}catch(A){i=A}e=e.parent}throw i}var Rw=new Set,ea=null,H4=null,mg=null,fg=[],l5=null,w_=!1,z4=!1,Jw=new WeakMap,Iw=new WeakMap,Od=new WeakMap,Jd=new WeakMap,Bw=new WeakMap,Nw=new WeakMap,Fw=new WeakMap,Ul=new WeakSet,$d=class i{constructor(){wV(this,Ul),u0(this,"committed",!1),u0(this,"current",new Map),u0(this,"previous",new Map),Go(this,Jw,new Set),Go(this,Iw,new Set),Go(this,Od,0),Go(this,Jd,0),Go(this,Bw,null),Go(this,Nw,[]),Go(this,Fw,[]),u0(this,"skipped_effects",new Set),u0(this,"is_fork",!1)}is_deferred(){return this.is_fork||xe(Jd,this)>0}process(e){fg=[],H4=null,this.apply();var A,t={parent:null,effect:null,effects:[],render_effects:[],block_effects:[]};for(var n of e)or(Ul,this,KV).call(this,n,t);this.is_fork||or(Ul,this,QdA).call(this),this.is_deferred()?(or(Ul,this,Uh).call(this,t.effects),or(Ul,this,Uh).call(this,t.render_effects),or(Ul,this,Uh).call(this,t.block_effects)):(H4=this,ea=null,gj(t.render_effects),gj(t.effects),H4=null,(A=xe(Bw,this))===null||A===void 0||A.resolve()),mg=null}capture(e,A){var t;this.previous.has(e)||this.previous.set(e,A),(e.f&$2)===0&&(this.current.set(e,e.v),(t=mg)===null||t===void 0||t.set(e,e.v))}activate(){ea=this,this.apply()}deactivate(){ea===this&&(ea=null,mg=null)}flush(){if(this.activate(),fg.length>0){if(TV(),ea!==null&&ea!==this)return}else xe(Od,this)===0&&this.process([]);this.deactivate()}discard(){for(var e of xe(Iw,this))e(this);xe(Iw,this).clear()}increment(e){vn(Od,this,xe(Od,this)+1),e&&vn(Jd,this,xe(Jd,this)+1)}decrement(e){vn(Od,this,xe(Od,this)-1),e&&vn(Jd,this,xe(Jd,this)-1),this.revive()}revive(){for(var e of xe(Nw,this))ns(e,mc),AI(e);for(var A of xe(Fw,this))ns(A,_C),AI(A);vn(Nw,this,[]),vn(Fw,this,[]),this.flush()}oncommit(e){xe(Jw,this).add(e)}ondiscard(e){xe(Iw,this).add(e)}settled(){var e;return((e=xe(Bw,this))!==null&&e!==void 0?e:vn(Bw,this,bV())).promise}static ensure(){if(ea===null){var e=ea=new i;Rw.add(ea),z4||i.enqueue(()=>{ea===e&&e.flush()})}return ea}static enqueue(e){Xd(e)}apply(){}};function KV(i,e){i.f^=ts;for(var A=i.first;A!==null;){var t,n=A.f,o=!!(96&n),a=o&&(n&ts)!==0||(n&w0)!==0||this.skipped_effects.has(A);if((A.f&tx)!==0&&(t=A.b)!==null&&t!==void 0&&t.is_pending()&&(e={parent:e,effect:A,effects:[],render_effects:[],block_effects:[]}),!a&&A.fn!==null){o?A.f^=ts:4&n?e.effects.push(A):gE(A)&&((A.f&oE)!==0&&e.block_effects.push(A),Wh(A));var r=A.first;if(r!==null){A=r;continue}}var s=A.parent;for(A=A.next;A===null&&s!==null;)s===e.effect&&(or(Ul,this,Uh).call(this,e.effects),or(Ul,this,Uh).call(this,e.render_effects),or(Ul,this,Uh).call(this,e.block_effects),e=e.parent),A=s.next,s=s.parent}}function Uh(i){for(var e of i)((e.f&mc)!==0?xe(Nw,this):xe(Fw,this)).push(e),or(Ul,this,UV).call(this,e.deps),ns(e,ts)}function UV(i){if(i!==null)for(var e of i)2&e.f&&(e.f&Ow)!==0&&(e.f^=Ow,or(Ul,this,UV).call(this,e.deps))}function QdA(){if(xe(Jd,this)===0){for(var i of xe(Jw,this))i();xe(Jw,this).clear()}xe(Od,this)===0&&or(Ul,this,udA).call(this)}function udA(){if(Rw.size>1){this.previous.clear();var i=mg,e=!0,A={parent:null,effect:null,effects:[],render_effects:[],block_effects:[]};for(var t of Rw)if(t!==this){var n=[];for(var[o,a]of this.current){if(t.current.has(o)){if(!e||a===t.current.get(o))continue;t.current.set(o,a)}n.push(o)}if(n.length!==0){var r=[...t.current.keys()].filter(B=>!this.current.has(B));if(r.length>0){var s=fg;fg=[];var l=new Set,g=new Map;for(var C of n)OV(C,r,l,g);if(fg.length>0){for(var d of(ea=t,t.apply(),fg))or(Ul,t,KV).call(t,d,A);t.deactivate()}fg=s}}}else e=!1;ea=null,mg=i}this.committed=!0,Rw.delete(this)}function jo(i){var e=z4;z4=!0;try{for(;;){var A;if(EdA(),fg.length===0&&((A=ea)===null||A===void 0||A.flush(),fg.length===0))return void(l5=null);TV()}}finally{z4=e}}function TV(){var i=jd;w_=!0;try{var e=0;for(Yw(!0);fg.length>0;){var A=$d.ensure();e++>1e3&&pdA(),A.process(fg),A1.clear()}}finally{w_=!1,Yw(i),l5=null}}function pdA(){try{(function(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")})()}catch(i){jh(i,l5)}}var QC=null;function gj(i){var e=i.length;if(e!==0){for(var A=0;A0)){for(var o of(A1.clear(),QC))if(!(24576&o.f)){for(var a=[o],r=o.parent;r!==null;)QC.has(r)&&(QC.delete(r),a.push(r)),r=r.parent;for(var s=a.length-1;s>=0;s--){var l=a[s];24576&l.f||Wh(l)}}QC.clear()}}QC=null}}function OV(i,e,A,t){if(!A.has(i)&&(A.add(i),i.reactions!==null))for(var n of i.reactions){var o=n.f;2&o?OV(n,e,A,t):4194320&o&&(o&mc)===0&&JV(n,e,t)&&(ns(n,mc),AI(n))}}function JV(i,e,A){var t=A.get(i);if(t!==void 0)return t;if(i.deps!==null)for(var n of i.deps){if(e.includes(n))return!0;if(2&n.f&&JV(n,e,A))return A.set(n,!0),!0}return A.set(i,!1),!1}function AI(i){for(var e=l5=i;e.parent!==null;){var A=(e=e.parent).f;if(w_&&e===co&&(A&oE)!==0&&(A&SV)===0)return;if(96&A){if((A&ts)===0)return;e.f^=ts}}fg.push(e)}var H2=new WeakMap,q2=new WeakMap,fdA=new WeakMap,Yd=new WeakMap,qk=new WeakMap,V2=new WeakMap,z2=new WeakMap,fC=new WeakMap,U2=new WeakMap,Pd=new WeakMap,Th=new WeakMap,mh=new WeakMap,Oh=new WeakMap,F4=new WeakMap,wh=new WeakMap,cj=new WeakMap,O2=new WeakSet,y_=class{constructor(e,A,t){var n,o,a,r;wV(this,O2),u0(this,"parent",void 0),Go(this,H2,!1),Go(this,q2,void 0),Go(this,fdA,null),Go(this,Yd,void 0),Go(this,qk,void 0),Go(this,V2,void 0),Go(this,z2,null),Go(this,fC,null),Go(this,U2,null),Go(this,Pd,null),Go(this,Th,null),Go(this,mh,0),Go(this,Oh,0),Go(this,F4,!1),Go(this,wh,null),Go(this,cj,(n=()=>(vn(wh,this,xC(xe(mh,this))),()=>{vn(wh,this,null)}),a=0,r=xC(0),()=>{j4()&&(c(r),sE(()=>(a===0&&(o=uA(()=>n(()=>P4(r)))),a+=1,()=>{Xd(()=>{var s;(a-=1)==0&&((s=o)===null||s===void 0||s(),o=void 0,P4(r))})})))})),vn(q2,this,e),vn(Yd,this,A),vn(qk,this,t),this.parent=co.b,vn(H2,this,!!xe(Yd,this).pending),vn(V2,this,lE(()=>{co.b=this;var s=or(O2,this,mdA).call(this);try{vn(z2,this,D0(()=>t(s)))}catch(l){this.error(l)}return xe(Oh,this)>0?or(O2,this,dj).call(this):vn(H2,this,!1),()=>{var l;(l=xe(Th,this))===null||l===void 0||l.remove()}},589952))}is_pending(){return xe(H2,this)||!!this.parent&&this.parent.is_pending()}has_pending_snippet(){return!!xe(Yd,this).pending}update_pending_count(e){or(O2,this,YV).call(this,e),vn(mh,this,xe(mh,this)+e),xe(wh,this)&&Vh(xe(wh,this),xe(mh,this))}get_effect_pending(){return xe(cj,this).call(this),c(xe(wh,this))}error(e){var A=xe(Yd,this).onerror,t=xe(Yd,this).failed;if(xe(F4,this)||!A&&!t)throw e;xe(z2,this)&&(is(xe(z2,this)),vn(z2,this,null)),xe(fC,this)&&(is(xe(fC,this)),vn(fC,this,null)),xe(U2,this)&&(is(xe(U2,this)),vn(U2,this,null));var n=!1,o=!1,a=()=>{n?console.warn("https://svelte.dev/e/svelte_boundary_reset_noop"):(n=!0,o&&(function(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")})(),$d.ensure(),vn(mh,this,0),xe(U2,this)!==null&&qh(xe(U2,this),()=>{vn(U2,this,null)}),vn(H2,this,this.has_pending_snippet()),vn(z2,this,or(O2,this,Cj).call(this,()=>(vn(F4,this,!1),D0(()=>xe(qk,this).call(this,xe(q2,this)))))),xe(Oh,this)>0?or(O2,this,dj).call(this):vn(H2,this,!1))},r=go;try{Ql(null),o=!0,A?.(e,a),o=!1}catch(s){jh(s,xe(V2,this)&&xe(V2,this).parent)}finally{Ql(r)}t&&Xd(()=>{vn(U2,this,or(O2,this,Cj).call(this,()=>{$d.ensure(),vn(F4,this,!0);try{return D0(()=>{t(xe(q2,this),()=>e,()=>a)})}catch(s){return jh(s,xe(V2,this).parent),null}finally{vn(F4,this,!1)}}))})}};function mdA(){var i=xe(q2,this);return xe(H2,this)&&(vn(Th,this,e1()),xe(q2,this).before(xe(Th,this)),i=xe(Th,this)),i}function Cj(i){var e=co,A=go,t=Mo;yg(xe(V2,this)),Ql(xe(V2,this)),Ph(xe(V2,this).ctx);try{return i()}catch(n){return GV(n),null}finally{yg(e),Ql(A),Ph(t)}}function dj(){var i=xe(Yd,this).pending;xe(z2,this)!==null&&(vn(Pd,this,document.createDocumentFragment()),xe(Pd,this).append(xe(Th,this)),aq(xe(z2,this),xe(Pd,this))),xe(fC,this)===null&&vn(fC,this,D0(()=>i(xe(q2,this))))}function YV(i){var e;this.has_pending_snippet()?(vn(Oh,this,xe(Oh,this)+i),xe(Oh,this)===0&&(vn(H2,this,!1),xe(fC,this)&&qh(xe(fC,this),()=>{vn(fC,this,null)}),xe(Pd,this)&&(xe(q2,this).before(xe(Pd,this)),vn(Pd,this,null)))):this.parent&&or(O2,e=this.parent,YV).call(e,i)}function HV(i,e,A,t){var n=rE()?lp:lt;if(A.length!==0||i.length!==0){var o=ea,a=co,r=(function(){var l=co,g=go,C=Mo,d=ea;return function(){var B=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];yg(l),Ql(g),Ph(C),B&&d?.activate()}})();i.length>0?Promise.all(i).then(()=>{r();try{return s()}finally{o?.deactivate(),hw()}}):s()}else t(e.map(n));function s(){Promise.all(A.map(l=>(function(g){var C=co;C===null&&(function(){throw new Error("https://svelte.dev/e/async_derived_orphan")})();var d=C.b,B=void 0,u=xC(es),E=!go,f=new Map;return(function(m){yc(4718592,m,!0)})(()=>{var m=bV();B=m.promise;try{Promise.resolve(g()).then(m.resolve,m.reject).then(()=>{v===ea&&v.committed&&v.deactivate(),hw()})}catch(x){m.reject(x),hw()}var v=ea;if(E){var S,k=!d.is_pending();d.update_pending_count(1),v.increment(k),(S=f.get(v))===null||S===void 0||S.reject(Rh),f.delete(v),f.set(v,m)}var M=function(x){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0;if(v.activate(),F)F!==Rh&&(u.f|=$2,Vh(u,F));else for(var[z,j]of((u.f&$2)!==0&&(u.f^=$2),Vh(u,x),f)){if(f.delete(z),z===v)break;j.reject(Rh)}E&&(d.update_pending_count(-1),v.decrement(k))};m.promise.then(M,x=>M(null,x||"unknown"))}),c5(()=>{for(var m of f.values())m.reject(Rh)}),new Promise(m=>{function v(S){function k(){S===B?m(u):v(B)}S.then(k,k)}v(B)})})(l))).then(l=>{r();try{t([...e.map(n),...l])}catch(g){(a.f&aE)===0&&jh(g,a)}o?.deactivate(),hw()}).catch(l=>{jh(l,a)})}}function hw(){yg(null),Ql(null),Ph(null)}function lp(i){var e=go!==null&&2&go.f?go:null;return co!==null&&(co.f|=kV),{ctx:Mo,deps:null,effects:null,equals:xV,f:2050,fn:i,reactions:null,rv:0,v:es,wv:0,parent:e??co,ac:null}}function Bl(i){var e=lp(i);return rq(e),e}function lt(i){var e=lp(i);return e.equals=NV,e}function zV(i){var e=i.effects;if(e!==null){i.effects=null;for(var A=0;A1&&arguments[1]!==void 0&&arguments[1],n=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],o=xC(i);return t||(o.equals=NV),nE&&n&&Mo!==null&&Mo.l!==null&&((A=(e=Mo.l).s)!==null&&A!==void 0?A:e.s=[]).push(o),o}function Ol(i,e){return N(i,uA(()=>c(i))),e}function N(i,e){var A,t=arguments.length>2&&arguments[2]!==void 0&&arguments[2];return go===null||f0&&(go.f&BdA)===0||!rE()||!(4325394&go.f)||(A=MC)!==null&&A!==void 0&&A.includes(i)||(function(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")})(),Vh(i,t?Nh(e):e)}function Vh(i,e){if(!i.equals(e)){var A=i.v;rI?A1.set(i,e):A1.set(i,A),i.v=e;var t=$d.ensure();t.capture(i,A),2&i.f&&((i.f&mc)!==0&&nx(i),ns(i,(i.f&fc)!==0?ts:_C)),i.wv=lq(),WV(i,mc),!rE()||co===null||(co.f&ts)===0||96&co.f||(Eg===null?(function(n){Eg=n})([i]):Eg.push(i)),!t.is_fork&&Wk.size>0&&!Ij&&(function(){Ij=!1;var n=jd;Yw(!0);var o=Array.from(Wk);try{for(var a of o)(a.f&ts)!==0&&ns(a,_C),gE(a)&&Wh(a)}finally{Yw(n)}Wk.clear()})()}return e}function Bj(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,A=c(i),t=e===1?A++:A--;return N(i,A),t}function P4(i){N(i,i.v+1)}function WV(i,e){var A=i.reactions;if(A!==null)for(var t=rE(),n=A.length,o=0;o{if(Vd===o)return r();var s=go,l=Vd;Ql(null),uj(o);var g=r();return Ql(s),uj(l),g};return t&&A.set("length",EC(i.length)),new Proxy(i,{defineProperty(r,s,l){"value"in l&&l.configurable!==!1&&l.enumerable!==!1&&l.writable!==!1||(function(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")})();var g=A.get(s);return g===void 0?g=a(()=>{var C=EC(l.value);return A.set(s,C),C}):N(g,l.value,!0),!0},deleteProperty(r,s){var l=A.get(s);if(l===void 0){if(s in r){var g=a(()=>EC(es));A.set(s,g),P4(n)}}else N(l,es),P4(n);return!0},get(r,s,l){var g;if(s===y0)return i;var C=A.get(s),d=s in r;if(C===void 0&&(!d||(g=vC(r,s))!==null&&g!==void 0&&g.writable)&&(C=a(()=>EC(Nh(d?r[s]:es))),A.set(s,C)),C!==void 0){var B=c(C);return B===es?void 0:B}return Reflect.get(r,s,l)},getOwnPropertyDescriptor(r,s){var l=Reflect.getOwnPropertyDescriptor(r,s);if(l&&"value"in l){var g=A.get(s);g&&(l.value=c(g))}else if(l===void 0){var C=A.get(s),d=C?.v;if(C!==void 0&&d!==es)return{enumerable:!0,configurable:!0,value:d,writable:!0}}return l},has(r,s){var l;if(s===y0)return!0;var g=A.get(s),C=g!==void 0&&g.v!==es||Reflect.has(r,s);return(g!==void 0||co!==null&&(!C||(l=vC(r,s))!==null&&l!==void 0&&l.writable))&&(g===void 0&&(g=a(()=>EC(C?Nh(r[s]):es)),A.set(s,g)),c(g)===es)?!1:C},set(r,s,l,g){var C,d=A.get(s),B=s in r;if(t&&s==="length")for(var u=l;uEC(es)),A.set(u+"",E))}d===void 0?(!B||(C=vC(r,s))!==null&&C!==void 0&&C.writable)&&(N(d=a(()=>EC(void 0)),Nh(l)),A.set(s,d)):(B=d.v!==es,N(d,a(()=>Nh(l))));var f=Reflect.getOwnPropertyDescriptor(r,s);if(f!=null&&f.set&&f.set.call(g,l),!B){if(t&&typeof s=="string"){var m=A.get("length"),v=Number(s);Number.isInteger(v)&&v>=m.v&&N(m,v+1)}P4(n)}return!0},ownKeys(r){c(n);var s=Reflect.ownKeys(r).filter(C=>{var d=A.get(C);return d===void 0||d.v!==es});for(var[l,g]of A)g.v===es||l in r||s.push(l);return s},setPrototypeOf(){(function(){throw new Error("https://svelte.dev/e/state_prototype_fixed")})()}})}function hj(i){try{if(i!==null&&typeof i=="object"&&y0 in i)return i[y0]}catch(e){}return i}function wdA(i,e){return Object.is(hj(i),hj(e))}function e1(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return document.createTextNode(i)}function Jl(i){return VV.call(i)}function gp(i){return qV.call(i)}function gA(i,e){return Jl(i)}function at(i){var e=Jl(i);return e instanceof Comment&&e.data===""?gp(e):e}function kA(i){for(var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,A=i;e--;)A=gp(A);return A}var Ej=!1;function g5(i){var e=go,A=co;Ql(null),yg(null);try{return i()}finally{Ql(e),yg(A)}}function ydA(i,e,A){var t=arguments.length>3&&arguments[3]!==void 0?arguments[3]:A;i.addEventListener(e,()=>g5(A));var n=i.__on_r;i.__on_r=n?()=>{n(),t(!0)}:()=>t(!0),Ej||(Ej=!0,document.addEventListener("reset",o=>{Promise.resolve().then(()=>{if(!o.defaultPrevented)for(var a of o.target.elements){var r;(r=a.__on_r)===null||r===void 0||r.call(a)}})},{capture:!0}))}function ZV(i){co===null&&(go===null&&(function(){throw new Error("https://svelte.dev/e/effect_orphan")})(),(function(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")})()),rI&&(function(){throw new Error("https://svelte.dev/e/effect_in_teardown")})()}function yc(i,e,A){var t=co;t!==null&&(t.f&w0)!==0&&(i|=w0);var n={ctx:Mo,deps:null,nodes:null,f:i|mc|fc,first:null,fn:e,last:null,next:null,parent:t,b:t&&t.b,prev:null,teardown:null,wv:0,ac:null};if(A)try{Wh(n),n.f|=ix}catch(s){throw is(n),s}else e!==null&&AI(n);var o=n;if(A&&o.deps===null&&o.teardown===null&&o.nodes===null&&o.first===o.last&&(o.f&kV)===0&&(o=o.first,(i&oE)!==0&&(i&Zd)!==0&&o!==null&&(o.f|=Zd)),o!==null&&(o.parent=t,t!==null&&(function(s,l){var g=l.last;g===null?l.last=l.first=s:(g.next=s,s.prev=g,l.last=s)})(o,t),go!==null&&2&go.f&&(i&MV)===0)){var a,r=go;((a=r.effects)!==null&&a!==void 0?a:r.effects=[]).push(o)}return n}function j4(){return go!==null&&!f0}function c5(i){var e=yc(8,null,!1);return ns(e,ts),e.teardown=i,e}function D_(i){ZV();var e=co.f;if(!(!go&&(e&s5)!==0&&(e&ix)===0))return XV(i);var A,t=Mo;((A=t.e)!==null&&A!==void 0?A:t.e=[]).push(i)}function XV(i){return yc(1048580,i,!1)}function Tr(i){return yc(4,i,!1)}function KA(i,e){var A={effect:null,ran:!1,deps:i};Mo.l.$.push(A),A.effect=sE(()=>{i(),A.ran||(A.ran=!0,uA(e))})}function Vn(){var i=Mo;sE(()=>{for(var e of i.l.$){e.deps();var A=e.effect;(A.f&ts)!==0&&ns(A,_C),gE(A)&&Wh(A),e.ran=!1}})}function sE(i){return yc(8|(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0),i,!0)}function Le(i){HV(arguments.length>3&&arguments[3]!==void 0?arguments[3]:[],arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],e=>{yc(8,()=>i(...e.map(c)),!0)})}function lE(i){return yc(oE|(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0),i,!0)}function $V(i){return yc(IdA|(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0),i,!0)}function D0(i){return yc(524320,i,!0)}function Aq(i){var e=i.teardown;if(e!==null){var A=rI,t=go;Qj(!0),Ql(null);try{e.call(null)}finally{Qj(A),Ql(t)}}}function eq(i){var e=arguments.length>1&&arguments[1]!==void 0&&arguments[1],A=i.first;i.first=i.last=null;for(var t,n=function(){var o=A.ac;o!==null&&g5(()=>{o.abort(Rh)}),t=A.next,(A.f&MV)!==0?A.parent=null:is(A,e),A=t};A!==null;)n()}function is(i){var e=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],A=!1;!e&&(i.f&SV)===0||i.nodes===null||i.nodes.end===null||(tq(i.nodes.start,i.nodes.end),A=!0),eq(i,e&&!A),Hw(i,0),ns(i,aE);var t=i.nodes&&i.nodes.t;if(t!==null)for(var n of t)n.stop();Aq(i);var o=i.parent;o!==null&&o.first!==null&&iq(i),i.next=i.prev=i.teardown=i.ctx=i.deps=i.fn=i.nodes=i.ac=null}function tq(i,e){for(;i!==null;){var A=i===e?null:gp(i);i.remove(),i=A}}function iq(i){var e=i.parent,A=i.prev,t=i.next;A!==null&&(A.next=t),t!==null&&(t.prev=A),e!==null&&(e.first===i&&(e.first=t),e.last===i&&(e.last=A))}function qh(i,e){var A=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],t=[];nq(i,t,!0);var n=()=>{A&&is(i),e&&e()},o=t.length;if(o>0){var a=()=>--o||n();for(var r of t)r.out(a)}else n()}function nq(i,e,A){if((i.f&w0)===0){i.f^=w0;var t=i.nodes&&i.nodes.t;if(t!==null)for(var n of t)(n.is_global||A)&&e.push(n);for(var o=i.first;o!==null;){var a=o.next;nq(o,e,((o.f&Zd)!==0||(o.f&s5)!==0&&(i.f&oE)!==0)&&A),o=a}}}function v_(i){oq(i,!0)}function oq(i,e){if((i.f&w0)!==0){i.f^=w0,(i.f&ts)===0&&(ns(i,mc),AI(i));for(var A=i.first;A!==null;){var t=A.next;oq(A,((A.f&Zd)!==0||(A.f&s5)!==0)&&e),A=t}var n=i.nodes&&i.nodes.t;if(n!==null)for(var o of n)(o.is_global||e)&&o.in()}}function aq(i,e){if(i.nodes)for(var A=i.nodes.start,t=i.nodes.end;A!==null;){var n=A===t?null:gp(A);e.append(A),A=n}}var DdA=null;var jd=!1;function Yw(i){jd=i}var rI=!1;function Qj(i){rI=i}var go=null,f0=!1;function Ql(i){go=i}var co=null;function yg(i){co=i}var MC=null;function rq(i){go!==null&&(MC===null?MC=[i]:MC.push(i))}var Ts=null,Kl=0,Eg=null,sq=1,V4=0,Vd=V4;function uj(i){Vd=i}function lq(){return++sq}function gE(i){var e=i.f;if((e&mc)!==0)return!0;if(2&e&&(i.f&=-32769),(e&_C)!==0){var A=i.deps;if(A!==null)for(var t=A.length,n=0;ni.wv)return!0}(e&fc)!==0&&mg===null&&ns(i,ts)}return!1}function gq(i,e){var A,t=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],n=i.reactions;if(n!==null&&((A=MC)===null||A===void 0||!A.includes(i)))for(var o=0;o{i.ac.abort(Rh)}),i.ac=null);try{i.f|=m_;var g=(0,i.fn)(),C=i.deps;if(Ts!==null){var d;if(Hw(i,Kl),C!==null&&Kl>0)for(C.length=Kl+Ts.length,d=0;d1&&arguments[1]!==void 0?arguments[1]:new Set;if(!(typeof i!="object"||i===null||i instanceof EventTarget||e.has(i))){for(var A in e.add(i),i instanceof Date&&i.getTime(),i)try{b_(i[A],e)}catch(r){}var t=ex(i);if(t!==Object.prototype&&t!==Array.prototype&&t!==Map.prototype&&t!==Set.prototype&&t!==Date.prototype){var n=vV(t);for(var o in n){var a=n[o].get;if(a)try{a.call(i)}catch(r){}}}}}var hq=new Set,M_=new Set;function Eq(i,e,A){var t=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};function n(o){if(t.capture||T4.call(e,o),!o.cancelBubble)return g5(()=>A?.call(this,o))}return i.startsWith("pointer")||i.startsWith("touch")||i==="wheel"?Xd(()=>{e.addEventListener(i,n,t)}):e.addEventListener(i,n,t),n}function De(i,e,A,t,n){var o={capture:t,passive:n},a=Eq(i,e,A,o);(e===document.body||e===window||e===document||e instanceof HTMLMediaElement)&&c5(()=>{e.removeEventListener(i,a,o)})}function cp(i){for(var e=0;ea||t});var C=go,d=co;Ql(null),yg(null);try{for(var B,u=[];a!==null;){var E=a.assignedSlot||a.parentNode||a.host||null;try{var f=a["__"+n];f==null||a.disabled&&i.target!==a||f.call(a,i)}catch(S){B?u.push(S):B=S}if(i.cancelBubble||E===A||E===null)break;a=E}if(B){var m=function(S){queueMicrotask(()=>{throw S})};for(var v of u)m(v);throw B}}finally{i.__root=A,delete i.currentTarget,Ql(C),yg(d)}}}function ox(i){var e=document.createElement("template");return e.innerHTML=i.replaceAll("",""),e.content}function eI(i,e){var A=co;A.nodes===null&&(A.nodes={start:i,end:e,a:null,t:null})}function TA(i,e){var A,t=!!(1&e),n=!!(2&e),o=!i.startsWith("");return()=>{A===void 0&&(A=ox(o?i:""+i),t||(A=Jl(A)));var a=n||jV?document.importNode(A,!0):A.cloneNode(!0);return t?eI(Jl(a),a.lastChild):eI(a,a),a}}function l1(i,e){return(function(A,t){var n,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"svg",a=!A.startsWith(""),r=!!(1&t),s="<".concat(o,">").concat(a?A:""+A,"");return()=>{if(!n){var l=Jl(ox(s));if(r)for(n=document.createDocumentFragment();Jl(l);)n.appendChild(Jl(l));else n=Jl(l)}var g=n.cloneNode(!0);return r?eI(Jl(g),g.lastChild):eI(g,g),g}})(i,e,"svg")}function mr(){var i=e1((arguments.length>0&&arguments[0]!==void 0?arguments[0]:"")+"");return eI(i,i),i}function zi(){var i=document.createDocumentFragment(),e=document.createComment(""),A=e1();return i.append(e,A),eI(e,A),i}function sA(i,e){i!==null&&i.before(e)}var MdA=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"],SdA={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"},kdA=["touchstart","touchmove"];function _dA(i){return kdA.includes(i)}function Ht(i,e){var A,t=e==null?"":typeof e=="object"?e+"":e;t!==((A=i.__t)!==null&&A!==void 0?A:i.__t=i.nodeValue)&&(i.__t=t,i.nodeValue=t+"")}function xdA(i,e){return(function(A,t){var{target:n,anchor:o,props:a={},events:r,context:s,intro:l=!0}=t;(function(){if(bC===void 0){bC=window,jV=/Firefox/.test(navigator.userAgent);var u=Element.prototype,E=Node.prototype,f=Text.prototype;VV=vC(E,"firstChild").get,qV=vC(E,"nextSibling").get,lj(u)&&(u.__click=void 0,u.__className=void 0,u.__attributes=null,u.__style=void 0,u.__e=void 0),lj(f)&&(f.__t=void 0)}})();var g=new Set,C=u=>{for(var E=0;E0&&arguments[0]!==void 0?arguments[0]:{};return new Promise(m=>{f.outro?qh(E,()=>{is(E),m(void 0)}):(is(E),m(void 0))})}})(()=>{var u=o??n.appendChild(e1());return(function(E,f,m){new y_(E,f,m)})(u,{pending:()=>{}},E=>{s&&(Jt({}),Mo.c=s),r&&(a.$$events=r),d=A(E,a)||{},s&&Yt()}),()=>{for(var E of g){n.removeEventListener(E,T4);var f=yh.get(E);--f===0?(document.removeEventListener(E,T4),yh.delete(E)):yh.set(E,f)}var m;M_.delete(C),u!==o&&((m=u.parentNode)===null||m===void 0||m.removeChild(u))}});return S_.set(d,B),d})(i,e)}var yh=new Map,S_=new WeakMap,Dh,IC=new WeakMap,Kd=new WeakMap,BC=new WeakMap,L4=new WeakMap,Zk=new WeakMap,pj=new WeakMap,RdA=new WeakMap,Zh=class{constructor(e){var A=this,t=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];u0(this,"anchor",void 0),Go(this,IC,new Map),Go(this,Kd,new Map),Go(this,BC,new Map),Go(this,L4,new Set),Go(this,Zk,!0),Go(this,pj,()=>{var n=ea;if(xe(IC,this).has(n)){var o=xe(IC,this).get(n),a=xe(Kd,this).get(o);if(a)v_(a),xe(L4,this).delete(o);else{var r=xe(BC,this).get(o);r&&(xe(Kd,this).set(o,r.effect),xe(BC,this).delete(o),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),a=r.effect)}for(var[s,l]of xe(IC,this)){if(xe(IC,this).delete(s),s===n)break;var g=xe(BC,this).get(l);g&&(is(g.effect),xe(BC,this).delete(l))}var C=function(u,E){if(u===o||xe(L4,A).has(u))return 1;var f=()=>{if(Array.from(xe(IC,A).values()).includes(u)){var m=document.createDocumentFragment();aq(E,m),m.append(e1()),xe(BC,A).set(u,{effect:E,fragment:m})}else is(E);xe(L4,A).delete(u),xe(Kd,A).delete(u)};xe(Zk,A)||!a?(xe(L4,A).add(u),qh(E,f,!1)):f()};for(var[d,B]of xe(Kd,this))C(d,B)}}),Go(this,RdA,n=>{xe(IC,this).delete(n);var o=Array.from(xe(IC,this).values());for(var[a,r]of xe(BC,this))o.includes(a)||(is(r.effect),xe(BC,this).delete(a))}),this.anchor=e,vn(Zk,this,t)}ensure(e,A){var t=ea;!A||xe(Kd,this).has(e)||xe(BC,this).has(e)||xe(Kd,this).set(e,D0(()=>A(this.anchor))),xe(IC,this).set(t,e),xe(pj,this).call(this)}};function os(i){Mo===null&&sp(),nE&&Mo.l!==null?Qq(Mo).m.push(i):D_(()=>{var e=uA(i);if(typeof e=="function")return e})}function Dg(i){Mo===null&&sp(),os(()=>()=>uA(i))}function NdA(){var i=Mo;return i===null&&sp(),(e,A,t)=>{var n,o=(n=i.s.$$events)===null||n===void 0?void 0:n[e];if(o){var a=rp(o)?o.slice():[o],r=(function(l,g){var{bubbles:C=!1,cancelable:d=!1}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return new CustomEvent(l,{detail:g,bubbles:C,cancelable:d})})(e,A,t);for(var s of a)s.call(i.x,r);return!r.defaultPrevented}return!0}}function FdA(i){Mo===null&&sp(),Mo.l===null&&(function(){throw new Error("https://svelte.dev/e/lifecycle_legacy_only")})(),Qq(Mo).b.push(i)}function Qq(i){var e,A=i.l;return(e=A.u)!==null&&e!==void 0?e:A.u={a:[],b:[],m:[]}}function zA(i,e){var A=arguments.length>2&&arguments[2]!==void 0&&arguments[2],t=new Zh(i);function n(o,a){t.ensure(o,a)}lE(()=>{var o=!1;e(function(a){o=!0,n(!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],a)}),o||n(!1,null)},A?Zd:0)}function uq(i,e,A){var t=new Zh(i),n=!rE();lE(()=>{var o=e();n&&o!==null&&typeof o=="object"&&(o={}),t.ensure(o,A)})}function Ka(i,e){return e}function Xk(i){for(var e=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],A=0;A5&&arguments[5]!==void 0?arguments[5]:null,a=i,r=new Map;!(4&e)||(a=i.appendChild(e1()));var s,l=null,g=lt(()=>{var E=A();return rp(E)?E:E==null?[]:xw(E)}),C=!0;function d(){u.fallback=l,(function(E,f,m,v,S){var k,M,x,F,z,j=!!(8&v),X=f.length,eA=E.items,Z=E.effect.first,CA=null,wA=[],BA=[];if(j)for(z=0;z0){var YA=4&v&&X===0?m:null;if(j){for(z=0;z{if(Ge){if(Ge.pending.delete(vt),Ge.done.add(vt),Ge.pending.size===0){var Ke=pA.outrogroups;Xk(xw(Ge.done)),Ke.delete(Ge),Ke.size===0&&(pA.outrogroups=null)}}else yA-=1},!1)},Dt=0;Dt{if(M!==void 0)for(F of M){var pA;(pA=F.nodes)===null||pA===void 0||(pA=pA.a)===null||pA===void 0||pA.apply()}})})(u,s,a,e,t),l!==null&&(s.length===0?(l.f&hC)===0?v_(l):(l.f^=hC,G4(l,null,a)):qh(l,()=>{l=null}))}var B=lE(()=>{for(var E=(s=c(g)).length,f=new Set,m=0;mo(a)):(l=D0(()=>o(Dh??(Dh=e1())))).f|=hC),C||d(),c(g)}),u={effect:B,items:r,outrogroups:null,fallback:l};C=!1}function LdA(i,e,A,t,n,o,a,r){var s=1&a?16&a?xC(A):cA(A,!1,!1):null,l=2&a?xC(n):null;return{v:s,i:l,e:D0(()=>(o(e,s??A,l??n,r),()=>{i.delete(t)}))}}function G4(i,e,A){if(i.nodes)for(var t=i.nodes.start,n=i.nodes.end,o=e&&(e.f&hC)===0?e.nodes.start:A;t!==null;){var a=gp(t);if(o.before(t),t===n)return;t=a}}function T2(i,e,A){e===null?i.effect.first=A:e.next=A,A===null?i.effect.last=e:A.prev=e}function pq(i,e){var A=arguments.length>2&&arguments[2]!==void 0&&arguments[2],t=arguments.length>3&&arguments[3]!==void 0&&arguments[3],n=i,o="";Le(()=>{var a,r=co;if(o!==(o=(a=e())!==null&&a!==void 0?a:"")&&(r.nodes!==null&&(tq(r.nodes.start,r.nodes.end),r.nodes=null),o!=="")){var s=o+"";A?s="".concat(s,""):t&&(s="".concat(s,""));var l=ox(s);if((A||t)&&(l=Jl(l)),eI(Jl(l),l.lastChild),A||t)for(;Jl(l);)n.before(Jl(l));else n.before(l)}})}function ya(i,e,A,t,n){var o,a=(o=e.$$slots)===null||o===void 0?void 0:o[A],r=!1;a===!0&&(a=e[A==="default"?"children":A],r=!0),a===void 0?n!==null&&n(i):a(i,r?()=>t:t)}function fq(i,e,A){var t=new Zh(i);lE(()=>{var n,o=(n=e())!==null&&n!==void 0?n:null;t.ensure(o,o&&(a=>A(a,o)))},Zd)}function Ms(i,e,A){Tr(()=>{var t=uA(()=>e(i,A?.())||{});if(A&&t!=null&&t.update){var n=!1,o={};sE(()=>{var a=A();Y(a),n&&RV(o,a)&&(o=a,t.update(a))}),n=!0}if(t!=null&&t.destroy)return()=>t.destroy()})}function GdA(i,e){var A,t=void 0;$V(()=>{t!==(t=e())&&(A&&(is(A),A=null),t&&(A=D0(()=>{Tr(()=>t(i))})))})}function mq(i){var e,A,t="";if(typeof i=="string"||typeof i=="number")t+=i;else if(typeof i=="object")if(Array.isArray(i)){var n=i.length;for(e=0;e1&&arguments[1]!==void 0&&arguments[1]?" !important;":";",A="";for(var t in i){var n=i[t];n!=null&&n!==""&&(A+=" "+t+": "+n+e)}return A}function $k(i){return i[0]!=="-"||i[1]!=="-"?i.toLowerCase():i}function Ci(i,e,A,t,n,o){var a=i.__className;if(a!==A||a===void 0){var r=(function(g,C,d){var B=g==null?"":""+g;if(C&&(B=B?B+" "+C:C),d){for(var u in d)if(d[u])B=B?B+" "+u:u;else if(B.length)for(var E=u.length,f=0;(f=B.indexOf(u,f))>=0;){var m=f+E;f!==0&&!fj.includes(B[f-1])||m!==B.length&&!fj.includes(B[m])?f=m:B=(f===0?"":B.substring(0,f))+B.substring(m+1)}}return B===""?null:B})(A,t,o);r==null?i.removeAttribute("class"):e?i.className=r:i.setAttribute("class",r),i.__className=A}else if(o&&n!==o)for(var s in o){var l=!!o[s];n!=null&&l===!!n[s]||i.classList.toggle(s,l)}return o}function A_(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},A=arguments.length>2?arguments[2]:void 0,t=arguments.length>3?arguments[3]:void 0;for(var n in A){var o=A[n];e[n]!==o&&(A[n]==null?i.style.removeProperty(n):i.style.setProperty(n,o,t))}}function wg(i,e,A,t){if(i.__style!==e){var n=(function(o,a){if(a){var r,s,l="";if(Array.isArray(a)?(r=a[0],s=a[1]):r=a,o){o=String(o).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var g=!1,C=0,d=!1,B=[];r&&B.push(...Object.keys(r).map($k)),s&&B.push(...Object.keys(s).map($k));for(var u=0,E=-1,f=o.length,m=0;m2&&arguments[2]!==void 0&&arguments[2];if(i.multiple){if(e==null)return;if(!rp(e))return void console.warn("https://svelte.dev/e/select_multiple_invalid_value");for(var t of i.options)t.selected=e.includes(wj(t))}else{for(t of i.options)if(wdA(wj(t),e))return void(t.selected=!0);A&&e===void 0||(i.selectedIndex=-1)}}function KdA(i){var e=new MutationObserver(()=>{k_(i,i.__value)});e.observe(i,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),c5(()=>{e.disconnect()})}function wj(i){return"__value"in i?i.__value:i.value}var _h=Symbol("class"),K4=Symbol("style"),wq=Symbol("is custom element"),yq=Symbol("is html");function tI(i,e){var A=ax(i);A.value!==(A.value=e??void 0)&&(i.value!==e||e===0&&i.nodeName==="PROGRESS")&&(i.value=e??"")}function jn(i,e,A,t){var n=ax(i);n[e]!==(n[e]=A)&&(e==="loading"&&(i[hdA]=A),A==null?i.removeAttribute(e):typeof A!="string"&&Dq(i).includes(e)?i[e]=A:i.setAttribute(e,A))}function UdA(i,e,A,t){var n,o=ax(i),a=o[wq],r=!o[yq],s=e||{},l=i.tagName==="OPTION";for(var g in e)g in A||(A[g]=null);A.class?A.class=o1(A.class):(t||A[_h])&&(A.class=null),A[K4]&&((n=A.style)!==null&&n!==void 0||(A.style=null));var C,d,B,u,E,f,m=Dq(i),v=function(k){var M=A[k];if(l&&k==="value"&&M==null)return i.value=i.__value="",s[k]=M,0;if(k==="class")return C=i.namespaceURI==="http://www.w3.org/1999/xhtml",Ci(i,C,M,t,e?.[_h],A[_h]),s[k]=M,s[_h]=A[_h],0;if(k==="style")return wg(i,M,e?.[K4],A[K4]),s[k]=M,s[K4]=A[K4],0;if(M===(d=s[k])&&(M!==void 0||!i.hasAttribute(k))||(s[k]=M,(B=k[0]+k[1])==="$$"))return 0;if(B==="on"){var x={},F="$$"+k,z=k.slice(2);if(u=(function(wA){return MdA.includes(wA)})(z),(function(wA){return wA.endsWith("capture")&&wA!=="gotpointercapture"&&wA!=="lostpointercapture"})(z)&&(z=z.slice(0,-7),x.capture=!0),!u&&d){if(M!=null)return 0;i.removeEventListener(z,s[F],x),s[F]=null}if(M!=null)if(u)i["__".concat(z)]=M,cp([z]);else{let wA=function(BA){s[k].call(this,BA)};var CA=wA;s[F]=Eq(z,i,wA,x)}else u&&(i["__".concat(z)]=void 0)}else if(k==="style")jn(i,k,M);else if(k==="autofocus")(function(wA,BA){if(BA){var QA=document.body;wA.autofocus=!0,Xd(()=>{document.activeElement===QA&&wA.focus()})}})(i,!!M);else if(a||k!=="__value"&&(k!=="value"||M==null))if(k==="selected"&&l)(function(wA,BA){BA?wA.hasAttribute("selected")||wA.setAttribute("selected",""):wA.removeAttribute("selected")})(i,M);else if(E=k,r||(E=(function(wA){var BA;return wA=wA.toLowerCase(),(BA=SdA[wA])!==null&&BA!==void 0?BA:wA})(E)),f=E==="defaultValue"||E==="defaultChecked",M!=null||a||f)f||m.includes(E)&&(a||typeof M!="string")?(i[E]=M,E in o&&(o[E]=es)):typeof M!="function"&&jn(i,E,M);else if(o[k]=null,E==="value"||E==="checked"){var j=i,X=e===void 0;if(E==="value"){var eA=j.defaultValue;j.removeAttribute(E),j.defaultValue=eA,j.value=j.__value=X?eA:null}else{var Z=j.defaultChecked;j.removeAttribute(E),j.defaultChecked=Z,j.checked=!!X&&Z}}else i.removeAttribute(k);else i.value=i.__value=M};for(var S in A)v(S);return s}function Lw(i,e){var A=arguments.length>5?arguments[5]:void 0,t=arguments.length>6&&arguments[6]!==void 0&&arguments[6],n=arguments.length>7&&arguments[7]!==void 0&&arguments[7];HV(arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],arguments.length>3&&arguments[3]!==void 0?arguments[3]:[],o=>{var a=void 0,r={},s=i.nodeName==="SELECT",l=!1;if($V(()=>{var C=e(...o.map(c)),d=UdA(i,a,C,A,t,n);for(var B of(l&&s&&"value"in C&&k_(i,C.value),Object.getOwnPropertySymbols(r)))C[B]||is(r[B]);for(var u of Object.getOwnPropertySymbols(C)){var E=C[u];u.description!=="@attach"||a&&E===a[u]||(r[u]&&is(r[u]),r[u]=D0(()=>GdA(i,()=>E))),d[u]=E}a=d}),s){var g=i;Tr(()=>{k_(g,a.value,!0),KdA(g)})}l=!0})}function ax(i){var e;return(e=i.__attributes)!==null&&e!==void 0?e:i.__attributes={[wq]:i.nodeName.includes("-"),[yq]:i.namespaceURI==="http://www.w3.org/1999/xhtml"}}var yj=new Map;function Dq(i){var e,A=i.getAttribute("is")||i.nodeName,t=yj.get(A);if(t)return t;yj.set(A,t=[]);for(var n=i,o=Element.prototype;o!==n;){for(var a in e=vV(n))e[a].set&&t.push(a);n=ex(n)}return t}function zw(i,e){var A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e,t=new WeakSet;ydA(i,"input",(function(){var n=Xt(function*(o){var a=o?i.defaultValue:i.value;if(a=e_(i)?t_(a):a,A(a),ea!==null&&t.add(ea),yield Cq(),a!==(a=e())){var r=i.selectionStart,s=i.selectionEnd,l=i.value.length;if(i.value=a??"",s!==null){var g=i.value.length;r===s&&s===l&&g>l?(i.selectionStart=g,i.selectionEnd=g):(i.selectionStart=r,i.selectionEnd=Math.min(s,g))}}});return function(o){return n.apply(this,arguments)}})()),uA(e)==null&&i.value&&(A(e_(i)?t_(i.value):i.value),ea!==null&&t.add(ea)),sE(()=>{var n=e();if(i===document.activeElement){var o=H4??ea;if(t.has(o))return}e_(i)&&n===t_(i.value)||(i.type!=="date"||n||i.value)&&n!==i.value&&(i.value=n??"")})}function e_(i){var e=i.type;return e==="number"||e==="range"}function t_(i){return i===""?null:+i}function Ai(i,e,A){var t=vC(i,e);t&&t.set&&(i[e]=A,c5(()=>{i[e]=null}))}function Dj(i,e){return i===e||i?.[y0]===e}function ta(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0,A=arguments.length>2?arguments[2]:void 0;return Tr(()=>{var t,n;return sE(()=>{t=n,n=[],uA(()=>{i!==A(...n)&&(e(i,...n),t&&Dj(A(...t),i)&&e(null,...t))})}),()=>{Xd(()=>{n&&Dj(A(...n),i)&&e(null,...n)})}}),i}function uC(i){return function(){for(var e=arguments.length,A=new Array(e),t=0;t0&&arguments[0]!==void 0&&arguments[0],e=Mo,A=e.l.u;if(A){var t,n=()=>Y(e.s);if(i){var o=0,a={},r=lp(()=>{var s=!1,l=e.s;for(var g in l)l[g]!==a[g]&&(a[g]=l[g],s=!0);return s&&o++,o});n=()=>c(r)}A.b.length&&(t=()=>{vj(e,n),f_(A.b)},ZV(),yc(1048584,t,!0)),D_(()=>{var s=uA(()=>A.m.map(ddA));return()=>{for(var l of s)typeof l=="function"&&l()}}),A.a.length&&D_(()=>{vj(e,n),f_(A.a)})}}function vj(i,e){if(i.l.s)for(var A of i.l.s)c(A);e()}function C5(i){var e=xC(0);return function(){return arguments.length===1?(N(e,c(e)+1),arguments[0]):(c(e),i())}}function O4(i,e){var A,t=(A=i.$$events)===null||A===void 0?void 0:A[e.type],n=rp(t)?t.slice():t==null?[]:[t];for(var o of n)o.call(this,e)}var Ew=!1,TdA={get(i,e){if(!i.exclude.includes(e))return c(i.version),e in i.special?i.special[e]():i.props[e]},set(i,e,A){if(!(e in i.special)){var t=co;try{yg(i.parent_effect),i.special[e]=K({get[e](){return i.props[e]}},e,4)}finally{yg(t)}}return i.special[e](A),Bj(i.version),!0},getOwnPropertyDescriptor(i,e){if(!i.exclude.includes(e))return e in i.props?{enumerable:!0,configurable:!0,value:i.props[e]}:void 0},deleteProperty:(i,e)=>(i.exclude.includes(e)||(i.exclude.push(e),Bj(i.version)),!0),has:(i,e)=>!i.exclude.includes(e)&&e in i.props,ownKeys:i=>Reflect.ownKeys(i.props).filter(e=>!i.exclude.includes(e))};function Qw(i,e){return new Proxy({props:i,exclude:e,special:{},version:xC(0),parent_effect:co},TdA)}var OdA={get(i,e){for(var A=i.props.length;A--;){var t=i.props[A];if(N4(t)&&(t=t()),typeof t=="object"&&t!==null&&e in t)return t[e]}},set(i,e,A){for(var t=i.props.length;t--;){var n=i.props[t];N4(n)&&(n=n());var o=vC(n,e);if(o&&o.set)return o.set(A),!0}return!1},getOwnPropertyDescriptor(i,e){for(var A=i.props.length;A--;){var t=i.props[A];if(N4(t)&&(t=t()),typeof t=="object"&&t!==null&&e in t){var n=vC(t,e);return n&&!n.configurable&&(n.configurable=!0),n}}},has(i,e){if(e===y0||e===_V)return!1;for(var A of i.props)if(N4(A)&&(A=A()),A!=null&&e in A)return!0;return!1},ownKeys(i){var e=[];for(var A of i.props)if(N4(A)&&(A=A()),A){for(var t in A)e.includes(t)||e.push(t);for(var n of Object.getOwnPropertySymbols(A))e.includes(n)||e.push(n)}return e}};function t1(){for(var i=arguments.length,e=new Array(i),A=0;A(g&&(g=!1,l=s?uA(t):t),l);if(r){var d,B,u=y0 in i||_V in i;n=(d=(B=vC(i,e))===null||B===void 0?void 0:B.set)!==null&&d!==void 0?d:u&&e in i?M=>i[e]=M:void 0}var E,f=!1;if(r?[o,f]=(function(M){var x=Ew;try{return Ew=!1,[M(),Ew]}finally{Ew=x}})(()=>i[e]):o=i[e],o===void 0&&t!==void 0&&(o=C(),n&&(a&&(function(){throw new Error("https://svelte.dev/e/props_invalid_value")})(),n(o))),E=a?()=>{var M=i[e];return M===void 0?C():(g=!0,M)}:()=>{var M=i[e];return M!==void 0&&(l=void 0),M===void 0?l:M},a&&!(4&A))return E;if(n){var m=i.$$legacy;return function(M,x){return arguments.length>0?(a&&x&&!m&&!f||n(x?E():M),M):E()}}var v=!1,S=(1&A?lp:lt)(()=>(v=!1,E()));r&&c(S);var k=co;return function(M,x){if(arguments.length>0){var F=x?c(S):a&&r?Nh(M):M;return N(S,F),v=!0,l!==void 0&&(l=F),M}return rI&&v||(k.f&aE)!==0?S.v:c(S)}}function dr(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:(function(t){var n=(function(o){try{if(typeof window<"u"&&window.localStorage!==void 0)return window.localStorage[o]}catch(a){}})("debug");return n!=null&&n.endsWith("*")?t.startsWith(n.slice(0,-1)):t===n})(i);if(!e)return JdA;var A=(function(t){for(var n=0,o=0;o9466848e5&&isFinite(i)&&Math.floor(i)===i&&!isNaN(new Date(i).valueOf());if(typeof i=="bigint")return __(Number(i));try{var e=i&&i.valueOf();if(e!==i)return __(e)}catch(A){return!1}return!1}function vq(i){(uw=uw||window.document.createElement("div")).style.color="",uw.style.color=i;var e=uw.style.color;return e!==""?e.replace(/\s+/g,"").toLowerCase():void 0}var uw=void 0;function PdA(i){return typeof i=="string"&&i.length<99&&!!vq(i)}function sx(i,e){if(typeof i=="number"||typeof i=="string"||typeof i=="boolean"||i===void 0)return typeof i;if(typeof i=="bigint")return"number";if(i===null)return"null";if(Array.isArray(i))return"array";if(Jn(i))return"object";var A=e.stringify(i);return A&&rx(A)?"number":A==="true"||A==="false"?"boolean":A==="null"?"null":"unknown"}var jdA=/^https?:\/\/\S+$/;function d5(i){return typeof i=="string"&&jdA.test(i)}function cE(i,e){if(i==="")return"";var A=i.trim();return A==="null"?null:A==="true"||A!=="false"&&(rx(A)?e.parse(A):i)}var VdA=[];function Mj(i,e){if(i.length!==e.length)return!1;for(var A=0;A1&&arguments[1]!==void 0&&arguments[1],A={};if(!Array.isArray(i))throw new TypeError("Array expected");function t(a,r){(!Array.isArray(a)&&!Jn(a)||e&&r.length>0)&&(A[xt(r)]=!0),Jn(a)&&Object.keys(a).forEach(s=>{t(a[s],r.concat(s))})}for(var n=Math.min(i.length,1e4),o=0;oe?i.slice(0,e):i}function Sj(i){return Fe({},i)}function kj(i){return Object.values(i)}function _j(i,e,A,t){var n=i.slice(0),o=n.splice(e,A);return n.splice.apply(n,[e+t,0,...o]),n}function qdA(i,e,A){return i.slice(0,e).concat(A).concat(i.slice(e))}function Cp(i,e){try{return e.parse(i)}catch(A){return e.parse(gg(i))}}function Mq(i,e){try{return Cp(i,e)}catch(A){return}}function dp(i,e){i=i.replace(kq,"");try{return e(i)}catch(A){}try{return e("{"+i+"}")}catch(A){}try{return e("["+i+"]")}catch(A){}throw new Error("Failed to parse partial JSON")}function Sq(i){i=i.replace(kq,"");try{return gg(i)}catch(t){}try{var e=gg("["+i+"]");return e.substring(1,e.length-1)}catch(t){}try{var A=gg("{"+i+"}");return A.substring(1,A.length-1)}catch(t){}throw new Error("Failed to repair partial JSON")}var kq=/,\s*$/;function Xh(i,e){var A=Rj.exec(e);if(A){var t=Or(A[2]),n=(function(B,u){for(var E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,f=arguments.length>3&&arguments[3]!==void 0?arguments[3]:B.length,m=0,v=E;v"line ".concat(n+1," column ").concat(o+1))}}var a=$dA.exec(e),r=a?Or(a[1]):void 0,s=r!==void 0?r-1:void 0,l=AIA.exec(e),g=l?Or(l[1]):void 0,C=g!==void 0?g-1:void 0,d=s!==void 0&&C!==void 0?(function(B,u,E){for(var f=B.indexOf(` -`),m=1;m1&&arguments[1]!==void 0?arguments[1]:void 0,A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:JSON;return q4(i)?i:{text:A.stringify(i.json,null,e)}}function xj(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:JSON;return W4(i)?i:{json:e.parse(i.text)}}function R_(i,e,A){return WdA(i,e,A).text}function ZdA(i,e){return XdA(i,e)>e}function XdA(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1/0;if(q4(i))return i.text.length;var A=i.json,t=0;return(function n(o){if(Array.isArray(o)){if((t+=o.length-1+2)>e)return;for(var a=0;ae)return}else if(Jn(o)){var r=Object.keys(o);t+=2+r.length+(r.length-1);for(var s=0;sxq(Fq(String(i))),unescapeValue:i=>Lq(Rq(i))},iIA={escapeValue:i=>Fq(String(i)),unescapeValue:i=>Lq(i)},nIA={escapeValue:i=>xq(String(i)),unescapeValue:i=>Rq(i)},oIA={escapeValue:i=>String(i),unescapeValue:i=>i};function xq(i){return i.replace(/[^\x20-\x7F]/g,e=>{var A;return e==="\b"||e==="\f"||e===` -`||e==="\r"||e===" "?e:"\\u"+("000"+((A=e.codePointAt(0))===null||A===void 0?void 0:A.toString(16))).slice(-4)})}function Rq(i){return i.replace(/\\u[a-fA-F0-9]{4}/g,e=>{try{var A=JSON.parse('"'+e+'"');return Nq[A]||A}catch(t){return e}})}var Nq={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},aIA={'\\"':'"',"\\\\":"\\","\\/":"/","\\b":"\b","\\f":"\f","\\n":` -`,"\\r":"\r","\\t":" "};function Fq(i){return i.replace(/["\b\f\n\r\t\\]/g,e=>Nq[e]||e)}function Lq(i){return i.replace(/\\["bfnrt\\]/g,e=>aIA[e]||e)}function $h(i){return typeof i!="string"?String(i):i.endsWith(` -`)?i+` -`:i}function Gq(i,e){return CE(i,A=>A.nodeName.toUpperCase()===e.toUpperCase())}function W2(i,e,A){return CE(i,t=>(function(n,o,a){return typeof n.getAttribute=="function"&&n.getAttribute(o)===a})(t,e,A))}function CE(i,e){return!!gx(i,e)}function gx(i,e){for(var A=i;A&&!e(A);)A=A.parentNode;return A}function Ip(i){var e,A;return(e=i==null||(A=i.ownerDocument)===null||A===void 0?void 0:A.defaultView)!==null&&e!==void 0?e:void 0}function cx(i){var e=Ip(i),A=e?.document.activeElement;return!!A&&CE(A,t=>t===i)}function Kq(i,e){return gx(i,A=>A.nodeName===e)}function o_(i){return W2(i,"data-type","selectable-key")?fo.key:W2(i,"data-type","selectable-value")?fo.value:W2(i,"data-type","insert-selection-area-inside")?fo.inside:W2(i,"data-type","insert-selection-area-after")?fo.after:fo.multi}function Gw(i){return encodeURIComponent(xt(i))}function Uq(i){var e,A=gx(i,n=>!(n==null||!n.hasAttribute)&&n.hasAttribute("data-path")),t=(e=A?.getAttribute("data-path"))!==null&&e!==void 0?e:void 0;return t?ms(decodeURIComponent(t)):void 0}function rIA(i){var{allElements:e,currentElement:A,direction:t,hasPrio:n=()=>!0,margin:o=10}=i,a=iF(e.filter(function(m){var v=m.getBoundingClientRect();return v.width>0&&v.height>0}),s),r=s(A);function s(m){var v=m.getBoundingClientRect();return{x:v.left+v.width/2,y:v.top+v.height/2,rect:v,element:m}}function l(m,v){var S=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,k=m.x-v.x,M=(m.y-v.y)*S;return Math.sqrt(k*k+M*M)}var g=m=>l(m,r);if(t==="Left"||t==="Right"){var C=t==="Left"?a.filter(m=>{return v=r,m.rect.left+o{return v=r,m.rect.right>v.rect.right+o;var v}),d=C.filter(m=>{return v=m,S=r,Math.abs(v.y-S.y)l(m,r,10));return B?.element}if(t==="Up"||t==="Down"){var u=t==="Up"?a.filter(m=>{return v=r,m.y+o{return v=r,m.y>v.y+o;var v}),E=u.filter(m=>n(m.element)),f=$E(E,g)||$E(u,g);return f?.element}}function Cx(){var i,e,A,t;return typeof navigator<"u"&&(i=(e=(A=navigator)===null||A===void 0||(A=A.platform)===null||A===void 0?void 0:A.toUpperCase().includes("MAC"))!==null&&e!==void 0?e:(t=navigator)===null||t===void 0||(t=t.userAgentData)===null||t===void 0||(t=t.platform)===null||t===void 0?void 0:t.toUpperCase().includes("MAC"))!==null&&i!==void 0&&i}function RC(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"+",A=[];dx(i,arguments.length>2&&arguments[2]!==void 0?arguments[2]:Cx)&&A.push("Ctrl"),i.altKey&&A.push("Alt"),i.shiftKey&&A.push("Shift");var t=i.key.length===1?i.key.toUpperCase():i.key;return t in sIA||A.push(t),A.join(e)}function dx(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Cx;return i.ctrlKey||i.metaKey&&e()}var sIA={Ctrl:!0,Command:!0,Control:!0,Alt:!0,Option:!0,Shift:!0};function oi(i,e){e===void 0&&(e={});var A=e.insertAt;if(i&&typeof document<"u"){var t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",A==="top"&&t.firstChild?t.insertBefore(n,t.firstChild):t.appendChild(n),n.styleSheet?n.styleSheet.cssText=i:n.appendChild(document.createTextNode(i))}}oi(`.jse-absolute-popup.svelte-enkkpn { - position: relative; - left: 0; - top: 0; - width: 0; - height: 0; - z-index: 1001; -} -.jse-absolute-popup.svelte-enkkpn .jse-hidden-input:where(.svelte-enkkpn) { - position: fixed; - left: 0; - top: 0; - width: 0; - height: 0; - padding: 0; - margin: 0; - border: none; - outline: none; - overflow: hidden; -} -.jse-absolute-popup.svelte-enkkpn .jse-absolute-popup-content:where(.svelte-enkkpn) { - position: absolute; -}`);var lIA=TA('
    '),gIA=TA('
    ');function cIA(i,e){Jt(e,!1);var A=K(e,"popup",8),t=K(e,"closeAbsolutePopup",8),n=cA(),o=cA();function a(C){A().options&&A().options.closeOnOuterClick&&!CE(C.target,d=>d===c(n))&&t()(A().id)}function r(C){RC(C)==="Escape"&&(C.preventDefault(),C.stopPropagation(),t()(A().id))}os(function(){c(o)&&c(o).focus()}),di();var s=gIA();De("mousedown",bC,function(C){a(C)},!0),De("keydown",bC,r,!0),De("wheel",bC,function(C){a(C)},!0);var l=gA(s),g=C=>{var d=lIA(),B=gA(d);ta(B,u=>N(o,u),()=>c(o)),fq(kA(B,2),()=>A().component,(u,E)=>{E(u,t1(()=>A().props))}),Le(u=>wg(d,u),[()=>(c(n),Y(A()),uA(()=>(function(u,E){var f=u.getBoundingClientRect(),{left:m,top:v,positionAbove:S,positionLeft:k}=(function(){if(E.anchor){var{anchor:M,width:x=0,height:F=0,offsetTop:z=0,offsetLeft:j=0,position:X}=E,{left:eA,top:Z,bottom:CA,right:wA}=M.getBoundingClientRect(),BA=X==="top"||Z+F>window.innerHeight&&Z>F,QA=X==="left"||eA+x>window.innerWidth&&eA>x;return{left:QA?wA-j:eA+j,top:BA?Z-z:CA+z,positionAbove:BA,positionLeft:QA}}if(typeof E.left=="number"&&typeof E.top=="number"){var{left:RA,top:dA,width:IA=0,height:xA=0}=E;return{left:RA,top:dA,positionAbove:dA+xA>window.innerHeight&&dA>xA,positionLeft:RA+IA>window.innerWidth&&RA>IA}}throw new Error('Invalid config: pass either "left" and "top", or pass "anchor"')})();return(S?"bottom: ".concat(f.top-v,"px;"):"top: ".concat(v-f.top,"px;"))+(k?"right: ".concat(f.left-m,"px;"):"left: ".concat(m-f.left,"px;"))})(c(n),A().options)))]),sA(C,d)};zA(l,C=>{c(n)&&C(g)}),ta(s,C=>N(n,C),()=>c(n)),De("mousedown",s,function(C){C.stopPropagation()}),De("keydown",s,r),sA(i,s),Yt()}var CIA=TA(" ",1);function N_(i,e){Jt(e,!1);var A=dr("jsoneditor:AbsolutePopup"),t=cA([],!0);function n(r){var s=c(t).findIndex(g=>g.id===r);if(s!==-1){var l=c(t)[s];l.options.onClose&&l.options.onClose(),N(t,c(t).filter(g=>g.id!==r))}}(function(r,s){FV().set(r,s)})("absolute-popup",{openAbsolutePopup:function(r,s,l){A("open...",s,l);var g={id:Fh(),component:r,props:s||{},options:l||{}};return N(t,[...c(t),g]),g.id},closeAbsolutePopup:n}),KA(()=>c(t),()=>{A("popups",c(t))}),Vn(),di(!0);var o=CIA(),a=at(o);Da(a,1,()=>c(t),Ka,(r,s)=>{cIA(r,{get popup(){return c(s)},closeAbsolutePopup:n})}),ya(kA(a,2),e,"default",{},null),sA(i,o),Yt()}function Bp(i,e){for(var A=new Set(e),t=i.replace(/ \(copy( \d+)?\)$/,""),n=i,o=1;A.has(n);){var a="copy"+(o>1?" "+o:"");n="".concat(t," (").concat(a,")"),o++}return n}function mC(i,e){var A=e-3;return i.length>e?i.substring(0,A)+"...":i}function dIA(i){if(i==="")return"";var e=i.toLowerCase();if(e==="null")return null;if(e==="true")return!0;if(e==="false")return!1;if(e!=="undefined"){var A=Number(i),t=parseFloat(i);return isNaN(A)||isNaN(t)?i:A}}var IIA={id:"jsonquery",name:"JSONQuery",description:` -

    - Enter a JSON Query function to filter, sort, or transform the data. - You can use functions like get, filter, - sort, pick, groupBy, uniq, etcetera. - Example query: filter(.age >= 18) -

    -`,createQuery:function(i,e){var{filter:A,sort:t,projection:n}=e,o=[];A&&A.path&&A.relation&&A.value&&o.push(["filter",[(a=A.relation,yM("1 ".concat(a," 1"))[0]),pw(A.path),dIA(A.value)]]);var a;return t&&t.path&&t.direction&&o.push(["sort",pw(t.path),t.direction==="desc"?"desc":"asc"]),n&&n.paths&&(n.paths.length>1?o.push(["pick",...n.paths.map(pw)]):o.push(["map",pw(n.paths[0])])),jO(["pipe",...o])},executeQuery:function(i,e,A){var t=_q(A,JSON)?i:(function(n){var o=A.stringify(n);return o!==void 0?JSON.parse(o):void 0})(i);return e.trim()!==""?VO(t,e):t}};function pw(i){return["get",...i]}var BIA=l1("");function hIA(i,e){Jt(e,!1);var A=870711,t=cA(""),n=K(e,"data",8);function o(r){if(!r||!r.raw)return"";var s=r.raw,l={};return s=s.replace(/\s(?:xml:)?id=["']?([^"')\s]+)/g,(g,C)=>{var d="fa-".concat((A+=1).toString(16));return l[C]=d,' id="'.concat(d,'"')}),s=s.replace(/#(?:([^'")\s]+)|xpointer\(id\((['"]?)([^')]+)\2\)\))/g,(g,C,d,B)=>{var u=C||B;return u&&l[u]?"#".concat(l[u]):g}),s}KA(()=>Y(n()),()=>{N(t,o(n()))}),Vn();var a=BIA();pq(gA(a),()=>c(t),!0),sA(i,a),Yt()}oi(` - .fa-icon.svelte-v67cny { - display: inline-block; - fill: currentColor; - } - .fa-flip-horizontal.svelte-v67cny { - transform: scale(-1, 1); - } - .fa-flip-vertical.svelte-v67cny { - transform: scale(1, -1); - } - .fa-spin.svelte-v67cny { - animation: svelte-v67cny-fa-spin 1s 0s infinite linear; - } - .fa-inverse.svelte-v67cny { - color: #fff; - } - .fa-pulse.svelte-v67cny { - animation: svelte-v67cny-fa-spin 1s infinite steps(8); - } - @keyframes svelte-v67cny-fa-spin { - 0% { - transform: rotate(0deg); - } - 100% { - transform: rotate(360deg); - } - } -`);var EIA=l1(""),QIA=l1(""),uIA=l1(""),pIA=l1("",1);function Bn(i,e){var A=Qw(e,["children","$$slots","$$events","$$legacy"]),t=Qw(A,["class","data","scale","spin","inverse","pulse","flip","label","style"]);Jt(e,!1);var n=K(e,"class",8,""),o=K(e,"data",8),a=cA(),r=K(e,"scale",8,1),s=K(e,"spin",8,!1),l=K(e,"inverse",8,!1),g=K(e,"pulse",8,!1),C=K(e,"flip",8,void 0),d=K(e,"label",8,""),B=K(e,"style",8,""),u=cA(10),E=cA(10),f=cA(),m=cA();function v(){var k=1;return r()!==void 0&&(k=Number(r())),isNaN(k)||k<=0?(console.warn('Invalid prop: prop "scale" should be a number over 0.'),1):1*k}function S(){return c(a)?Math.max(c(a).width,c(a).height)/16:1}KA(()=>(Y(o()),Y(B()),Y(r())),()=>{N(a,(function(k){var M;if(k){if(!("definition"in k)){if("iconName"in k&&"icon"in k){k.iconName;var[x,F,,,z]=k.icon;M={width:x,height:F,paths:(Array.isArray(z)?z:[z]).map(j=>({d:j}))}}else M=k[Object.keys(k)[0]];return M}console.error("`import faIconName from '@fortawesome/package-name/faIconName` not supported - Please use `import { faIconName } from '@fortawesome/package-name/faIconName'` instead")}})(o())),B(),r(),N(u,c(a)?c(a).width/S()*v():0),N(E,c(a)?c(a).height/S()*v():0),N(f,(function(){var k="";B()!==null&&(k+=B());var M=v();return M===1?k.length===0?"":k:(k===""||k.endsWith(";")||(k+="; "),"".concat(k,"font-size: ").concat(M,"em"))})()),N(m,c(a)?"0 0 ".concat(c(a).width," ").concat(c(a).height):"0 0 ".concat(c(u)," ").concat(c(E)))}),Vn(),di(),(function(k,M){var x=Qw(M,["children","$$slots","$$events","$$legacy"]),F=Qw(x,["class","width","height","box","spin","inverse","pulse","flip","style","label"]),z=K(M,"class",8,""),j=K(M,"width",8),X=K(M,"height",8),eA=K(M,"box",8,"0 0 0 0"),Z=K(M,"spin",8,!1),CA=K(M,"inverse",8,!1),wA=K(M,"pulse",8,!1),BA=K(M,"flip",8,"none"),QA=K(M,"style",8,""),RA=K(M,"label",8,""),dA=EIA();Lw(dA,()=>{var IA;return Fe(Fe({version:"1.1",class:"fa-icon ".concat((IA=z())!==null&&IA!==void 0?IA:""),width:j(),height:X(),"aria-label":RA(),role:RA()?"img":"presentation",viewBox:eA(),style:QA()},F),{},{[_h]:{"fa-spin":Z(),"fa-pulse":wA(),"fa-inverse":CA(),"fa-flip-horizontal":BA()==="horizontal","fa-flip-vertical":BA()==="vertical"}})},void 0,void 0,void 0,"svelte-v67cny"),ya(gA(dA),M,"default",{},null),sA(k,dA)})(i,t1({get label(){return d()},get width(){return c(u)},get height(){return c(E)},get box(){return c(m)},get style(){return c(f)},get spin(){return s()},get flip(){return C()},get inverse(){return l()},get pulse(){return g()},get class(){return n()}},()=>t,{children:(k,M)=>{var x=zi();ya(at(x),e,"default",{},F=>{var z=pIA(),j=at(z);Da(j,1,()=>(c(a),uA(()=>{var CA;return((CA=c(a))===null||CA===void 0?void 0:CA.paths)||[]})),Ka,(CA,wA)=>{var BA=QIA();Lw(BA,()=>Fe({},c(wA))),sA(CA,BA)});var X=kA(j);Da(X,1,()=>(c(a),uA(()=>{var CA;return((CA=c(a))===null||CA===void 0?void 0:CA.polygons)||[]})),Ka,(CA,wA)=>{var BA=uIA();Lw(BA,()=>Fe({},c(wA))),sA(CA,BA)});var eA=kA(X),Z=CA=>{hIA(CA,{get data(){return c(a)},set data(wA){N(a,wA)},$$legacy:!0})};zA(eA,CA=>{c(a),uA(()=>{var wA;return(wA=c(a))===null||wA===void 0?void 0:wA.raw})&&CA(Z)}),sA(F,z)}),sA(k,x)},$$slots:{default:!0}})),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-boolean-toggle.svelte-eli4ob { - padding: 0; - margin: 1px 0 0; - vertical-align: top; - display: inline-flex; - color: var(--jse-value-color-boolean, #ff8c00); -} - -.jse-boolean-toggle.svelte-eli4ob:not(.jse-readonly) { - cursor: pointer; -}`);var fIA=TA('
    ');function mIA(i,e){Jt(e,!1);var A=K(e,"path",9),t=K(e,"value",9),n=K(e,"readOnly",9),o=K(e,"onPatch",9),a=K(e,"focus",9);di(!0);var r,s=fIA(),l=gA(s),g=lt(()=>t()===!0?DM:vM);Bn(l,{get data(){return c(g)}}),Le(()=>{jn(s,"aria-checked",t()===!0),r=Ci(s,1,"jse-boolean-toggle svelte-eli4ob",null,r,{"jse-readonly":n()}),jn(s,"title",n()?"Boolean value ".concat(t()):"Click to toggle this boolean value")}),De("mousedown",s,function(C){C.stopPropagation(),n()||(o()([{op:"replace",path:xt(A()),value:!t()}]),a()())}),sA(i,s),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-color-picker-popup.svelte-v77py2 .picker_wrapper.popup, -.jse-color-picker-popup.svelte-v77py2 .picker_wrapper.popup .picker_arrow::before, -.jse-color-picker-popup.svelte-v77py2 .picker_wrapper.popup .picker_arrow::after { - background: var(--jse-color-picker-background, var(--jse-panel-background, #ebebeb)); - line-height: normal; -} -.jse-color-picker-popup.svelte-v77py2 .picker_slider, -.jse-color-picker-popup.svelte-v77py2 .picker_sl, -.jse-color-picker-popup.svelte-v77py2 .picker_editor input, -.jse-color-picker-popup.svelte-v77py2 .picker_sample, -.jse-color-picker-popup.svelte-v77py2 .picker_done button { - box-shadow: var(--jse-color-picker-border-box-shadow, #cbcbcb 0 0 0 1px); -} -.jse-color-picker-popup.svelte-v77py2 .picker_editor input { - background: var(--jse-background-color, #fff); - color: var(--jse-text-color, #4d4d4d); -} -.jse-color-picker-popup.svelte-v77py2 .picker_done button { - background: var(--jse-button-background, #e0e0e0); - color: var(--jse-button-color, var(--jse-text-color, #4d4d4d)); -} -.jse-color-picker-popup.svelte-v77py2 .picker_done button:hover { - background: var(--jse-button-background-highlight, #e7e7e7); -}`);var wIA=TA('
    ');function yIA(i,e){Jt(e,!1);var A=K(e,"color",8),t=K(e,"onChange",8),n=K(e,"showOnTop",8),o=cA(),a=()=>{};os(Xt(function*(){var s,l=new((s=yield import("./chunk-HTWWQBR6.js"))===null||s===void 0?void 0:s.default)({parent:c(o),color:A(),popup:n()?"top":"bottom",onDone(g){var C=g.rgba[3]===1?g.hex.substring(0,7):g.hex;t()(C)}});l.show(),a=()=>{l.destroy()}})),Dg(()=>{a()}),di();var r=wIA();ta(r,s=>N(o,s),()=>c(o)),sA(i,r),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-color-picker-button.svelte-13mgyo6 { - font-size: var(--jse-font-size-mono, 14px); - width: var(--jse-color-picker-button-size, 1em); - height: var(--jse-color-picker-button-size, 1em); - box-sizing: border-box; - padding: 0; - margin: 2px 0 0 calc(0.5 * var(--jse-padding, 10px)); - display: inline-flex; - vertical-align: top; - border: 1px solid var(--jse-text-color, #4d4d4d); - border-radius: 2px; - background: inherit; - outline: none; -} - -.jse-color-picker-button.svelte-13mgyo6:not(.jse-readonly) { - cursor: pointer; -}`);var DIA=TA('');function vIA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),{openAbsolutePopup:n}=s1("absolute-popup"),o=K(e,"path",9),a=K(e,"value",9),r=K(e,"readOnly",9),s=K(e,"onPatch",9),l=K(e,"focus",9);function g(u){s()([{op:"replace",path:xt(o()),value:u}]),C()}function C(){l()()}KA(()=>Y(a()),()=>{N(A,vq(a()))}),KA(()=>(Y(r()),Y(a())),()=>{N(t,r()?"Color ".concat(a()):"Click to open a color picker")}),Vn(),di(!0);var d,B=DIA();Le(()=>{var u;d=Ci(B,1,"jse-color-picker-button svelte-13mgyo6",null,d,{"jse-readonly":r()}),wg(B,"background: ".concat((u=c(A))!==null&&u!==void 0?u:"")),jn(B,"title",c(t)),jn(B,"aria-label",c(t))}),De("click",B,function(u){var E,f;if(!r()){var m=u.target,v=m.getBoundingClientRect().top,S=((E=(f=Ip(m))===null||f===void 0?void 0:f.innerHeight)!==null&&E!==void 0?E:0)-v<300&&v>300,k={color:a(),onChange:g,showOnTop:S};n(yIA,k,{anchor:m,closeOnOuterClick:!0,onClose:C,offsetTop:18,offsetLeft:-8,height:300})}}),sA(i,B),Yt()}var a_=1e3,Z4=100,fw=100,jw=2e4,Jh=[{start:0,end:Z4}],bIA=1048576,MIA=1048576,r_=10485760,s_="Insert or paste contents, enter [ insert a new array, enter { to insert a new object, or start typing to insert a new value",Ix="Open context menu (Click here, right click on the selection, or use the context menu button or Ctrl+Q)",Ud="hover-insert-inside",mw="hover-insert-after",Fj="hover-collection",l_="valid",Lj="repairable",wC=336,yC=260,J4=100,Gj={[pg.asc]:"ascending",[pg.desc]:"descending"};function Tq(i){for(var e=rF(i,r=>r.start),A=[e[0]],t=0;t0&&arguments[0]!==void 0?arguments[0]:{expanded:!1};return{type:"array",expanded:i,visibleSections:Jh,items:[]}}function Ex(){var{expanded:i}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{expanded:!1};return{type:"object",expanded:i,properties:{}}}var Qx={createObjectDocumentState:Ex,createArrayDocumentState:hx,createValueDocumentState:function(){return{type:"value"}}};function Jq(i,e,A,t){var{createObjectDocumentState:n,createArrayDocumentState:o,createValueDocumentState:a}=t;return(function r(s,l,g){if(Array.isArray(s)){var C=cr(l)?l:o();if(g.length===0)return C;var d=Or(g[0]),B=r(s[d],C.items[d],g.slice(1));return qr(C,["items",g[0]],B)}if(Jn(s)){var u=Il(l)?l:n();if(g.length===0)return u;var E=g[0],f=r(s[E],u.properties[E],g.slice(1));return qr(u,["properties",E],f)}return Bx(l)?l:a()})(i,e,A)}function Tl(i,e){return X4(i,e,arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],(A,t)=>{if(A!==void 0&&t!==void 0)return Array.isArray(A)?cr(t)?t:hx({expanded:!!iI(t)&&t.expanded}):Jn(A)?Il(t)?t:Ex({expanded:!!iI(t)&&t.expanded}):Bx(t)?t:void 0},()=>!0)}function X4(i,e,A,t,n){var o=t(i,e,A);if(Array.isArray(i)&&cr(o)&&n(o)){var a=[];return ux(i,o.visibleSections,s=>{var l=A.concat(String(s)),g=X4(i[s],o.items[s],l,t,n);g!==void 0&&(a[s]=g)}),Mj(a,o.items)?o:Fe(Fe({},o),{},{items:a})}if(Jn(i)&&Il(o)&&n(o)){var r={};return Object.keys(i).forEach(s=>{var l=A.concat(s),g=X4(i[s],o.properties[s],l,t,n);g!==void 0&&(r[s]=g)}),Mj(Object.values(r),Object.values(o.properties))?o:Fe(Fe({},o),{},{properties:r})}return o}function ux(i,e,A){e.forEach(t=>{var{start:n,end:o}=t;bq(n,Math.min(i.length,o),A)})}function $4(i,e){for(var A=i,t=[],n=0;n{var C=iI(g)&&!g.expanded?Fe(Fe({},g),{},{expanded:!0}):g;return cr(C)?(function(d,B){if((function(f,m){return f.some(v=>m>=v.start&&m(function(l,g,C,d){return X4(l,g,C,(B,u,E)=>Array.isArray(B)&&d(E)?cr(u)?u.expanded?u:Fe(Fe({},u),{},{expanded:!0}):hx({expanded:!0}):Jn(B)&&d(E)?Il(u)?u.expanded?u:Fe(Fe({},u),{},{expanded:!0}):Ex({expanded:!0}):u,B=>iI(B)&&B.expanded)})(r,s,[],t))}function Hj(i,e,A,t){return AE(i,e,A,(n,o)=>t?(function(a,r,s){return X4(a,r,s,(l,g)=>zj(g),()=>!0)})(n,o,A):zj(o))}function zj(i){return cr(i)&&i.expanded?Fe(Fe({},i),{},{expanded:!1,visibleSections:Jh}):Il(i)&&i.expanded?Fe(Fe({},i),{},{expanded:!1}):i}function Yq(i,e,A){var t={json:i,documentState:e},n=A.reduce((o,a)=>({json:ol(o.json,[a]),documentState:RIA(o.json,o.documentState,a)}),t);return{json:n.json,documentState:Tl(n.json,n.documentState)}}function RIA(i,e,A){if(oM(A))return Pj(i,e,A,void 0);if(aM(A))return jj(i,e,A);if(B6(A)){var t=al(i,A.path),n=m0(i,e,t);return n?I5(i,e,t,{type:"value",enforceString:n}):e}return h6(A)||u2(A)?(function(o,a,r){if(u2(r)&&r.from===r.path)return a;var s=a,l=al(o,r.from),g=Q0(o,s,l);return u2(r)&&(s=jj(o,s,{path:r.from})),s=Pj(o,s,{path:r.path},g),s})(i,e,A):e}function Q0(i,e,A){try{return $e(e,$4(i,A))}catch(t){return}}function px(i,e,A,t,n){var o=Jq(i,e,A,n);return Su(o,$4(i,A),a=>{var r=$e(i,A);return t(r,a)})}function I5(i,e,A,t){return(function(n,o,a,r,s){var l=Jq(n,o,a,s);return qr(l,$4(n,a),r)})(i,e,A,t,Qx)}function AE(i,e,A,t){return px(i,e,A,t,Qx)}function Pj(i,e,A,t){var n=al(i,A.path),o=e;return o=AE(i,o,an(n),(a,r)=>{if(!cr(r))return r;var s=Or(Ji(n)),{items:l,visibleSections:g}=r;return Fe(Fe({},r),{},{items:s{if(!cr(r))return r;var s=Or(Ji(t)),{items:l,visibleSections:g}=r;return Fe(Fe({},r),{},{items:l.slice(0,s).concat(l.slice(s+1)),visibleSections:Hq(g,s,-1)})}):(function(a,r,s){var l=$4(a,s);return Fr(r,l)?cd(r,$4(a,s)):r})(i,e,t)}function Hq(i,e,A){return(function(t){for(var n=t.slice(0),o=1;o({start:t.start>e?t.start+A:t.start,end:t.end>e?t.end+A:t.end})))}function m0(i,e,A){var t,n=$e(i,A),o=Q0(i,e,A),a=Bx(o)?o.enforceString:void 0;return typeof a=="boolean"?a:typeof(t=n)=="string"&&typeof cE(t,JSON)!="string"}function hp(i,e){var A=arguments.length>2&&arguments[2]!==void 0&&arguments[2],t=i.indexOf(e);return t!==-1?A?i.slice(t):i.slice(t+1):[]}function fx(i,e){var A=[];return(function t(n,o,a){A.push(a),sa(n)&&cr(o)&&o.expanded&&ux(n,o.visibleSections,r=>{t(n[r],o.items[r],a.concat(String(r)))}),Ea(n)&&Il(o)&&o.expanded&&Object.keys(n).forEach(r=>{t(n[r],o.properties[r],a.concat(r))})})(i,e,[]),A}function zq(i,e){var A=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],t=[];return(function n(o,a){t.push({path:a,type:hc.value});var r=Q0(i,e,a);if(o&&iI(r)&&r.expanded){if(A&&t.push({path:a,type:hc.inside}),sa(o)){var s=cr(r)?r.visibleSections:Jh;ux(o,s,l=>{var g=a.concat(String(l));n(o[l],g),A&&t.push({path:g,type:hc.after})})}Ea(o)&&Object.keys(o).forEach(l=>{var g=a.concat(l);t.push({path:g,type:hc.key}),n(o[l],g),A&&t.push({path:g,type:hc.after})})}})(i,[]),t}function g_(i,e,A){var t=fx(i,e),n=t.map(xt).indexOf(xt(A));if(n!==-1&&n3&&arguments[3]!==void 0?arguments[3]:10240;return Bc(i,e,A,ZdA({json:$e(i,A)},t)?Y4:mx)}function c_(i,e,A){var t=Q0(i,e,A);return iI(t)&&t.expanded?e:nI(i,e,A)}function Y4(i){return i.length===0||i.length===1&&i[0]==="0"}function K_(i){return i.length===0}function mx(){return!0}function Kw(){return!1}function hl(i){return i&&i.type===fo.after||!1}function nr(i){return i&&i.type===fo.inside||!1}function Cr(i){return i&&i.type===fo.key||!1}function bn(i){return i&&i.type===fo.value||!1}function bo(i){return i&&i.type===fo.multi||!1}function B5(i){return bo(i)&&Ui(i.focusPath,i.anchorPath)}function Ap(i){return bo(i)||hl(i)||nr(i)||Cr(i)||bn(i)}function C_(i){return i&&i.type===fo.text||!1}function a1(i,e){var A=[];return(function(t,n,o){if(n){var a=qd(n),r=Qt(n);if(Ui(a,r))return o(a);if(t!==void 0){var s=jq(a,r);if(a.length===s.length||r.length===s.length)return o(s);var l=vs(a,r),g=DC(t,l),C=n1(t,l),d=kC(t,l,g),B=kC(t,l,C);if(!(d===-1||B===-1)){var u=$e(t,s);if(Ea(u)){for(var E=Object.keys(u),f=d;f<=B;f++){var m=o(s.concat(E[f]));if(m!==void 0)return m}return}if(sa(u)){for(var v=d;v<=B;v++){var S=o(s.concat(String(v)));if(S!==void 0)return S}return}throw new Error("Failed to create selection")}}}})(i,e,t=>{A.push(t)}),A}function Pq(i){return nr(i)?i.path:an(Qt(i))}function DC(i,e){if(!bo(e))return e.path;var A=kC(i,e,e.anchorPath);return kC(i,e,e.focusPath)A?e.focusPath:e.anchorPath}function Vj(i,e,A){var t=arguments.length>3&&arguments[3]!==void 0&&arguments[3];if(A){var n=t?Qt(A):DC(i,A),o=(function(s,l,g){var C=fx(s,l),d=C.map(xt),B=xt(g),u=d.indexOf(B);if(u!==-1&&u>0)return C[u-1]})(i,e,n);if(t)return nr(A)||hl(A)?o!==void 0?vs(n,n):void 0:o!==void 0?vs(qd(A),o):void 0;if(hl(A)||nr(A))return en(n);if(Cr(A)){if(o===void 0||o.length===0)return;var a=an(o),r=$e(i,a);return Array.isArray(r)||An(o)?en(o):NC(o)}return bn(A),o!==void 0?en(o):void 0}}function qj(i,e,A,t){if(!A)return{caret:void 0,previous:void 0,next:void 0};var n=zq(i,e,t),o=n.findIndex(a=>Ui(a.path,Qt(A))&&String(a.type)===String(A.type));return{caret:o!==-1?n[o]:void 0,previous:o!==-1&&o>0?n[o-1]:void 0,next:o!==-1&&oA[t].length;)t++;var n=A[t];return n===void 0||n.length===0||Array.isArray($e(i,an(n)))?en(n):NC(n)}function eE(i,e){if(e.length===1){var A=Tc(e);if(A.op==="replace")return en(al(i,A.path))}if(!An(e)&&e.every(a=>a.op==="move")){var t=Tc(e),n=e.slice(1);if((h6(t)||u2(t))&&t.from!==t.path&&n.every(a=>(h6(a)||u2(a))&&a.from===a.path))return NC(al(i,t.path))}var o=e.filter(a=>a.op!=="test"&&a.op!=="remove"&&(a.op!=="move"||a.from!==a.path)&&typeof a.path=="string").map(a=>al(i,a.path));if(!An(o))return{type:fo.multi,anchorPath:Tc(o),focusPath:Ji(o)}}function jq(i,e){for(var A=0;AA.length&&e.length>A.length;return{type:fo.multi,anchorPath:t?A.concat(i[A.length]):A,focusPath:t?A.concat(e[A.length]):A}}function Vq(i,e,A,t){if(Cr(e))return String(Ji(e.path));if(bn(e)){var n=$e(i,e.path);return typeof n=="string"?n:t.stringify(n,null,A)}if(bo(e)){if(An(e.focusPath))return t.stringify(i,null,A);var o=Pq(e),a=$e(i,o);if(Array.isArray(a)){if(B5(e)){var r=$e(i,e.focusPath);return t.stringify(r,null,A)}return a1(i,e).map(s=>{var l=$e(i,s);return"".concat(t.stringify(l,null,A),",")}).join(` -`)}return a1(i,e).map(s=>{var l=Ji(s),g=$e(i,s);return"".concat(t.stringify(l),": ").concat(t.stringify(g,null,A),",")}).join(` -`)}}function gr(i){return(Cr(i)||bn(i))&&i.edit===!0}function Lh(i){return Cr(i)||bn(i)||bo(i)}function ww(i){return Cr(i)||bn(i)||B5(i)}function U_(i){switch(i.type){case hc.key:return NC(i.path);case hc.value:return en(i.path);case hc.after:return SC(i.path);case hc.inside:return FC(i.path)}}function Zj(i,e){switch(i){case fo.key:return NC(e);case fo.value:return en(e);case fo.after:return SC(e);case fo.inside:return FC(e);case fo.multi:case fo.text:return vs(e,e)}}function yw(i,e,A){if(e)return ep(i,e,A)||v0(bo(e)?an(e.focusPath):e.path,A)?e:void 0}function ep(i,e,A){if(i===void 0||!e)return!1;if(Cr(e)||nr(e)||hl(e))return Ui(e.path,A);if(bn(e))return v0(A,e.path);if(bo(e)){var t=DC(i,e),n=n1(i,e),o=an(e.focusPath);if(!v0(A,o)||A.length<=o.length)return!1;var a=kC(i,e,t),r=kC(i,e,n),s=kC(i,e,A);return s!==-1&&s>=a&&s<=r}return!1}function kC(i,e,A){var t=an(e.focusPath);if(!v0(A,t)||A.length<=t.length)return-1;var n=A[t.length],o=$e(i,t);if(Ea(o))return Object.keys(o).indexOf(n);if(sa(o)){var a=Or(n);if(a');function Wq(i,e){Jt(e,!1);var A=dr("jsoneditor:EditableDiv"),t=K(e,"value",9),n=K(e,"initialValue",9),o=K(e,"shortText",9,!1),a=K(e,"label",9),r=K(e,"onChange",9),s=K(e,"onCancel",9),l=K(e,"onFind",9),g=K(e,"onPaste",9,Fa),C=K(e,"onValueClass",9,()=>""),d=cA(void 0,!0),B=cA(void 0,!0),u=!1;function E(){return c(d)?(function(v){return v.replace(/\n$/,"")})(c(d).innerText):""}function f(v){c(d)&&Ol(d,c(d).innerText=$h(v))}os(()=>{A("onMount",{value:t(),initialValue:n()}),f(n()!==void 0?n():t()),c(d)&&(function(v){if(v.firstChild!=null){var S=document.createRange(),k=window.getSelection();S.setStart(v,1),S.collapse(!0),k?.removeAllRanges(),k?.addRange(S)}else v.focus()})(c(d))}),Dg(()=>{var v=E();A("onDestroy",{closed:u,value:t(),newValue:v}),u||v===t()||r()(v,i1.no)}),KA(()=>(Y(C()),Y(t())),()=>{N(B,C()(t()))}),Vn(),di(!0);var m=NIA();ta(m,v=>N(d,v),()=>c(d)),Le(v=>{jn(m,"aria-label",a()),Ci(m,1,v,"svelte-1r0oryi")},[()=>o1((Y(wc),c(B),Y(o()),uA(()=>wc("jse-editable-div",c(B),{"jse-short-text":o()}))))]),De("input",m,function(){var v=E();v===""&&f(""),N(B,C()(v))}),De("keydown",m,function(v){v.stopPropagation();var S=RC(v);if(S==="Escape"&&(v.preventDefault(),u=!0,s()()),S==="Enter"||S==="Tab"){v.preventDefault(),u=!0;var k=E();r()(k,i1.nextInside)}S==="Ctrl+F"&&(v.preventDefault(),l()(!1)),S==="Ctrl+H"&&(v.preventDefault(),l()(!0))}),De("paste",m,function(v){if(v.stopPropagation(),g()&&v.clipboardData){var S=v.clipboardData.getData("text/plain");g()(S)}}),De("blur",m,function(){var v=document.hasFocus(),S=E();A("handleBlur",{hasFocus:v,closed:u,value:t(),newValue:S}),document.hasFocus()&&!u&&(u=!0,S!==t()&&r()(S,i1.self))}),sA(i,m),Yt()}function FIA(i,e){Jt(e,!1);var A=K(e,"path",9),t=K(e,"value",9),n=K(e,"selection",9),o=K(e,"mode",9),a=K(e,"parser",9),r=K(e,"normalization",9),s=K(e,"enforceString",9),l=K(e,"onPatch",9),g=K(e,"onPasteJson",9),C=K(e,"onSelect",9),d=K(e,"onFind",9),B=K(e,"focus",9),u=K(e,"findNextInside",9);function E(S){return s()?S:cE(S,a())}function f(){C()(en(A())),B()()}di(!0);var m=lt(()=>(Y(r()),Y(t()),uA(()=>r().escapeValue(t())))),v=lt(()=>(Y(gr),Y(n()),uA(()=>gr(n())?n().initialValue:void 0)));Wq(i,{get value(){return c(m)},get initialValue(){return c(v)},label:"Edit value",onChange:function(S,k){l()([{op:"replace",path:xt(A()),value:E(r().unescapeValue(S))}],(M,x,F)=>{if(!F||Ui(A(),Qt(F)))return{state:x,selection:k===i1.nextInside?u()(A()):en(A())}}),B()()},onCancel:f,onPaste:function(S){try{var k=a().parse(S);ua(k)&&g()({path:A(),contents:k,onPasteAsJson:()=>{f();var M=[{op:"replace",path:xt(A()),value:k}];l()(M,(x,F)=>({state:nI(x,F,A())}))}})}catch(M){}},get onFind(){return d()},onValueClass:function(S){return qq(E(r().unescapeValue(S)),o(),a())}}),Yt()}function Gh(i,e,A){var t=an(e),n=$e(i,t);if(sa(n)){var o=Or(Ji(e));return A.map((l,g)=>({op:"add",path:xt(t.concat(String(o+g))),value:l.value}))}if(Ea(n)){var a=Ji(e),r=Object.keys(n),s=a!==void 0?hp(r,a,!0):[];return[...A.map(l=>{var g=Bp(l.key,r);return{op:"add",path:xt(t.concat(g)),value:l.value}}),...s.map(l=>r1(t,l))]}throw new Error("Cannot create insert operations: parent must be an Object or Array")}function T_(i,e,A){var t=$e(i,e);if(Array.isArray(t)){var n=t.length;return A.map((o,a)=>({op:"add",path:xt(e.concat(String(n+a))),value:o.value}))}return A.map(o=>{var a=Bp(o.key,Object.keys(t));return{op:"add",path:xt(e.concat(a)),value:o.value}})}function Ep(i,e,A,t){var n=e.filter(r=>r!==A),o=Bp(t,n),a=hp(e,A,!1);return[{op:"move",from:xt(i.concat(A)),path:xt(i.concat(o))},...a.map(r=>r1(i,r))]}function Zq(i,e){var A=Ji(e);if(An(A))throw new Error("Cannot duplicate root object");var t=an(A),n=Ji(A),o=$e(i,t);if(sa(o)){var a=Ji(e),r=a?Or(Ji(a))+1:0;return[...e.map((g,C)=>({op:"copy",from:xt(g),path:xt(t.concat(String(C+r)))}))]}if(Ea(o)){var s=Object.keys(o),l=n!==void 0?hp(s,n,!1):[];return[...e.map(g=>{var C=Bp(Ji(g),s);return{op:"copy",from:xt(g),path:xt(t.concat(C))}}),...l.map(g=>r1(t,g))]}throw new Error("Cannot create duplicate operations: parent must be an Object or Array")}function Xq(i,e){if(bn(e))return[{op:"move",from:xt(e.path),path:""}];if(!bo(e))throw new Error("Cannot create extract operations: parent must be an Object or Array");var A=an(e.focusPath),t=$e(i,A);if(sa(t)){var n=a1(i,e).map(a=>{var r=Or(Ji(a));return t[r]});return[{op:"replace",path:"",value:n}]}if(Ea(t)){var o={};return a1(i,e).forEach(a=>{var r=String(Ji(a));o[r]=t[r]}),[{op:"replace",path:"",value:o}]}throw new Error("Cannot extract: unsupported type of selection "+JSON.stringify(e))}function $q(i,e,A,t){if(Cr(e)){var n=Mq(A,t),o=an(e.path),a=$e(i,o);return Ep(o,Object.keys(a),Ji(e.path),typeof n=="string"?n:A)}if(bn(e)||bo(e)&&An(e.focusPath))try{return[{op:"replace",path:xt(Qt(e)),value:dp(A,x=>Cp(x,t))}]}catch(x){return[{op:"replace",path:xt(Qt(e)),value:A}]}if(bo(e)){var r=d_(A,t);return(function(x,F,z){var j=Tc(F),X=an(j),eA=$e(x,X);if(sa(eA)){var Z=Tc(F),CA=Z?Or(Ji(Z)):0;return[...Xw(F),...z.map((qA,ue)=>({op:"add",path:xt(X.concat(String(ue+CA))),value:qA.value}))]}if(Ea(eA)){var wA=Ji(F),BA=an(wA),QA=Ji(wA),RA=Object.keys(eA),dA=QA!==void 0?hp(RA,QA,!1):[],IA=new Set(F.map(qA=>Ji(qA))),xA=RA.filter(qA=>!IA.has(qA));return[...Xw(F),...z.map(qA=>{var ue=Bp(qA.key,xA);return{op:"add",path:xt(BA.concat(ue)),value:qA.value}}),...dA.map(qA=>r1(BA,qA))]}throw new Error("Cannot create replace operations: parent must be an Object or Array")})(i,a1(i,e),r)}if(hl(e)){var s=d_(A,t),l=e.path,g=an(l),C=$e(i,g);if(sa(C)){var d=Or(Ji(l));return Gh(i,g.concat(String(d+1)),s)}if(Ea(C)){var B=String(Ji(l)),u=Object.keys(C);if(An(u)||Ji(u)===B)return T_(i,g,s);var E=u.indexOf(B),f=u[E+1];return Gh(i,g.concat(f),s)}throw new Error("Cannot create insert operations: parent must be an Object or Array")}if(nr(e)){var m=d_(A,t),v=e.path,S=$e(i,v);if(sa(S))return Gh(i,v.concat("0"),m);if(Ea(S)){var k=Object.keys(S);if(An(k))return T_(i,v,m);var M=Tc(k);return Gh(i,v.concat(M),m)}throw new Error("Cannot create insert operations: parent must be an Object or Array")}throw new Error("Cannot insert: unsupported type of selection "+JSON.stringify(e))}function Xw(i){return i.map(e=>({op:"remove",path:xt(e)})).reverse()}function r1(i,e){return{op:"move",from:xt(i.concat(e)),path:xt(i.concat(e))}}function d_(i,e){var A=/^\s*{/.test(i),t=/^\s*\[/.test(i),n=Mq(i,e),o=n!==void 0?n:dp(i,a=>Cp(a,e));return A&&Jn(o)||t&&Array.isArray(o)?[{key:"New item",value:o}]:Array.isArray(o)?o.map((a,r)=>({key:"New item "+r,value:a})):Jn(o)?Object.keys(o).map(a=>({key:a,value:o[a]})):[{key:"New item",value:o}]}function AW(i,e){if(Cr(e)){var A=an(e.path),t=$e(i,A),n=Ep(A,Object.keys(t),Ji(e.path),"");return{operations:n,newSelection:eE(i,n)}}if(bn(e))return{operations:[{op:"replace",path:xt(e.path),value:""}],newSelection:e};if(bo(e)){var o=a1(i,e),a=Xw(o),r=Ji(o);if(An(r))return{operations:[{op:"replace",path:"",value:""}],newSelection:en([])};var s=an(r),l=$e(i,s);if(sa(l)){var g=Tc(o),C=Or(Ji(g));return{operations:a,newSelection:C===0?FC(s):SC(s.concat(String(C-1)))}}if(Ea(l)){var d=Object.keys(l),B=Tc(o),u=Ji(B),E=d.indexOf(u),f=d[E-1];return{operations:a,newSelection:E===0?FC(s):SC(s.concat(f))}}throw new Error("Cannot create remove operations: parent must be an Object or Array")}throw new Error("Cannot remove: unsupported type of selection "+JSON.stringify(e))}function eW(i,e){var A=(function(t,n){if(An(n)||!n.every(u2))return n;var o=[];for(var a of n){var r=Xj(ms(a.from)),s=Xj(ms(a.path));if(!r||!s)return n;o.push({from:r,path:s,operation:a})}var l=o[0].path.parent,g=$e(t,l);if(!Ea(g)||!o.every(u=>(function(E,f){return Ui(E.from.parent,f)&&Ui(E.path.parent,f)})(u,l)))return n;var C=(function(u,E){var f=Object.keys(E),m=f.slice();for(var v of u){var S=m.indexOf(v.from.key);S!==-1&&(m.splice(S,1),m.push(v.path.key))}for(var k=0;ku.operation,B=o.filter(u=>u.operation.from!==u.operation.path);return B.some(u=>u.path.key===C)?B.map(d):[r1(l,C),...B.map(d)]})(i,e);return E6(i,A,{before:(t,n,o)=>{if(aM(n)){var a=ms(n.path);return{revertOperations:[...o,...I_(t,a)]}}if(u2(n)){var r=ms(n.from);return{revertOperations:n.from===n.path?[n,...I_(t,r)]:[...o,...I_(t,r)]}}return{document:t}}})}function Xj(i){return i.length>0?{parent:an(i),key:Ji(i)}:void 0}function I_(i,e){var A=an(e),t=Ji(e),n=$e(i,A);return Ea(n)?hp(Object.keys(n),t,!1).map(o=>r1(A,o)):[]}function $j(i){var e=i.activeIndex0?0:-1,A=i.items[e],t=i.items.map((n,o)=>Fe(Fe({},n),{},{active:o===e}));return Fe(Fe({},i),{},{items:t,activeItem:A,activeIndex:e})}function AV(i,e){var A,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=i.toLowerCase(),o=(A=t?.maxResults)!==null&&A!==void 0?A:1/0,a=t?.columns,r=[],s=[];function l(f){r.length>=o||r.push(f)}function g(f,m){if(sa(m)){var v=s.length;s.push("0");for(var S=0;S=o)return;s.pop()}else if(Ea(m)){var k=Object.keys(m),M=s.length;for(var x of(s.push(""),k))if(s[M]=x,eV(x,f,s,Qc.key,l),g(f,m[x]),r.length>=o)return;s.pop()}else eV(String(m),f,s,Qc.value,l)}if(i==="")return[];if(a){if(!Array.isArray(e))throw new Error("json must be an Array when option columns is defined");for(var C=0;Cu.length+1;)s.pop();g(n,$e(d,u))}if(r.length>=o)break}return r}return g(n,e),r}function eV(i,e,A,t,n){var o=i.toLowerCase(),a=0,r=-1,s=-1;do(s=o.indexOf(e,r))!==-1&&(r=s+e.length,n({path:A.slice(0),field:t,fieldIndex:a,start:s,end:r}),a++);while(s!==-1)}function O_(i,e,A,t){return i.substring(0,A)+e+i.substring(t)}function tV(i,e,A){var t=i;return tF(A,n=>{t=O_(t,e,n.start,n.end)}),t}function LIA(i,e,A,t,n){var{field:o,path:a,start:r,end:s}=t;if(o===Qc.key){var l=an(a),g=$e(i,l),C=Ji(a),d=Ep(l,Object.keys(g),C,O_(C,A,r,s));return{newSelection:eE(i,d),operations:d}}if(o===Qc.value){var B=$e(i,a);if(B===void 0)throw new Error("Cannot replace: path not found ".concat(xt(a)));var u=typeof B=="string"?B:String(B),E=m0(i,e,a),f=O_(u,A,r,s),m=[{op:"replace",path:xt(a),value:E?f:cE(f,n)}];return{newSelection:eE(i,m),operations:m}}throw new Error("Cannot replace: unknown type of search result field ".concat(o))}function iV(i){return i.path.concat(i.field,String(i.fieldIndex))}function nV(i){var e=Oq(i)?i.searchResults.filter(A=>A.field===Qc.key):void 0;return e&&e.length>0?e:void 0}function oV(i){var e=Oq(i)?i.searchResults.filter(A=>A.field===Qc.value):void 0;return e&&e.length>0?e:void 0}var GIA={createObjectDocumentState:()=>({type:"object",properties:{}}),createArrayDocumentState:()=>({type:"array",items:[]}),createValueDocumentState:()=>({type:"value"})};function tW(i,e){return e.reduce((A,t)=>(function(n,o,a,r){return px(n,o,a,r,GIA)})(i,A,t.path,(n,o)=>Fe(Fe({},o),{},{searchResults:o.searchResults?o.searchResults.concat(t):[t]})),void 0)}function $w(i){var e,A=(e=i?.searchResults)!==null&&e!==void 0?e:[],t=Il(i)?Object.values(i.properties).flatMap($w):cr(i)?i.items.flatMap($w):[];return A.concat(t)}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-highlight.svelte-19qyvy6 { - background-color: var(--jse-search-match-color, #ffe665); - outline: var(--jse-search-match-outline, none); -} -.jse-highlight.jse-active.svelte-19qyvy6 { - background-color: var(--jse-search-match-active-color, var(--jse-search-match-color, #ffe665)); - outline: var(--jse-search-match-outline, 2px solid #e0be00); -}`);var KIA=TA(" ");function iW(i,e){Jt(e,!1);var A=cA(),t=K(e,"text",8),n=K(e,"searchResultItems",8);KA(()=>(Y(t()),Y(n())),()=>{N(A,(function(a,r){var s=[],l=0;for(var g of r){var C=a.slice(l,g.start);C!==""&&s.push({resultIndex:void 0,type:"normal",text:C,active:!1});var d=a.slice(g.start,g.end);s.push({resultIndex:g.resultIndex,type:"highlight",text:d,active:g.active}),l=g.end}var B=Ji(r);return B&&B.endc(A),Ka,(a,r)=>{var s=zi(),l=at(s),g=d=>{var B=mr();Le(()=>Ht(B,(c(r),uA(()=>c(r).text)))),sA(d,B)},C=d=>{var B,u=KIA(),E=gA(u);Le((f,m)=>{B=Ci(u,1,"jse-highlight svelte-19qyvy6",null,B,{"jse-active":c(r).active}),jn(u,"data-search-result-index",f),Ht(E,m)},[()=>(c(r),uA(()=>String(c(r).resultIndex))),()=>(Y($h),c(r),uA(()=>$h(c(r).text)))]),sA(d,u)};zA(l,d=>{c(r),uA(()=>c(r).type==="normal")?d(g):d(C,!1)}),sA(a,s)}),sA(i,o),Yt()}function Uw(i){var e=1e3;if(i<900)return i.toFixed()+" B";var A=i/e;if(A<900)return A.toFixed(1)+" KB";var t=A/e;if(t<900)return t.toFixed(1)+" MB";var n=t/e;return n<900?n.toFixed(1)+" GB":(n/e).toFixed(1)+" TB"}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-tag.svelte-ubve9r { - border: none; - font-size: 80%; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - color: var(--jse-tag-color, var(--jse-text-color-inverse, #fff)); - background: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); - border-radius: 2px; - cursor: pointer; - display: inline-block; - padding: 0 4px; - line-height: normal; - margin: 1px 0; -} -.jse-tag.svelte-ubve9r:hover { - opacity: 0.8; -} -.jse-tag.disabled.svelte-ubve9r { - opacity: 0.7; - cursor: inherit; -}`);var UIA=TA('');function Tw(i,e){Jt(e,!0);var A,t=Bl(()=>e.onclick?o=>{o.preventDefault(),o.stopPropagation(),e.onclick()}:void 0),n=UIA();n.__click=function(){for(var o,a=arguments.length,r=new Array(a),s=0;s2?r-2:0),l=2;l{var C,d=(C=a())!==null&&C!==void 0?C:null;g.ensure(d,d&&(B=>d(B,...s)))},Zd)})(gA(n),()=>{var o;return(o=e.children)!==null&&o!==void 0?o:CdA}),Le(()=>A=Ci(n,1,"jse-tag svelte-ubve9r",null,A,{disabled:!e.onclick})),sA(i,n),Yt()}cp(["click"]);oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-value.jse-string.svelte-1saqp8c { - color: var(--jse-value-color-string, #008000); -} -.jse-value.jse-object.svelte-1saqp8c, .jse-value.jse-array.svelte-1saqp8c { - min-width: 16px; - color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); -} -.jse-value.jse-number.svelte-1saqp8c { - color: var(--jse-value-color-number, #ee422e); -} -.jse-value.jse-boolean.svelte-1saqp8c { - color: var(--jse-value-color-boolean, #ff8c00); -} -.jse-value.jse-null.svelte-1saqp8c { - color: var(--jse-value-color-null, #004ed0); -} -.jse-value.jse-invalid.svelte-1saqp8c { - color: var(--jse-text-color, #4d4d4d); -} -.jse-value.jse-url.svelte-1saqp8c { - color: var(--jse-value-color-url, #008000); - text-decoration: underline; -} - -.jse-value.svelte-1saqp8c { - display: inline-block; - min-width: 2em; - padding: 0 5px; - box-sizing: border-box; - outline: none; - border-radius: 1px; - vertical-align: top; - word-break: normal; - overflow-wrap: anywhere; - white-space: pre-wrap; -} -.jse-value.jse-table-cell.svelte-1saqp8c { - overflow-wrap: normal; - white-space: nowrap; -} -.jse-value.jse-empty.svelte-1saqp8c { - min-width: 4em; - outline: 1px dotted var(--jse-tag-background, rgba(0, 0, 0, 0.2)); - -moz-outline-radius: 2px; -} -.jse-value.jse-empty.svelte-1saqp8c::after { - pointer-events: none; - color: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); - content: "value"; -}`);var TIA=TA('
    ');function OIA(i,e){Jt(e,!0);var A=EC(!0),t=Bl(()=>c(A)&&typeof e.value=="string"&&e.value.length>e.truncateTextSize&&(!e.searchResultItems||!e.searchResultItems.some(B=>B.active&&B.end>e.truncateTextSize))),n=Bl(()=>c(t)&&typeof e.value=="string"?e.value.substring(0,e.truncateTextSize).trim():e.value),o=Bl(()=>d5(e.value));function a(){N(A,!1)}var r=TIA();r.__click=function(B){typeof e.value=="string"&&c(o)&&dx(B)&&(B.preventDefault(),B.stopPropagation(),window.open(e.value,"_blank"))},r.__dblclick=function(B){e.readOnly||(B.preventDefault(),e.onSelect(Zw(e.path)))};var s=gA(r),l=B=>{var u=Bl(()=>e.normalization.escapeValue(c(n)));iW(B,{get text(){return c(u)},get searchResultItems(){return e.searchResultItems}})},g=B=>{var u=mr();Le(E=>Ht(u,E),[()=>$h(e.normalization.escapeValue(c(n)))]),sA(B,u)};zA(s,B=>{e.searchResultItems?B(l):B(g,!1)});var C=kA(s,2),d=B=>{Tw(B,{onclick:a,children:(u,E)=>{var f=mr();Le(m=>Ht(f,"Show more (".concat(m??"",")")),[()=>Uw(e.value.length)]),sA(u,f)},$$slots:{default:!0}})};zA(C,B=>{c(t)&&typeof e.value=="string"&&B(d)}),Le(B=>{Ci(r,1,B,"svelte-1saqp8c"),jn(r,"title",c(o)?"Ctrl+Click or Ctrl+Enter to open url in new window":void 0)},[()=>o1(qq(e.value,e.mode,e.parser))]),sA(i,r),Yt()}cp(["click","dblclick"]);oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-tooltip.svelte-brt1mq { - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - line-height: normal; - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); - border-radius: 3px; - background: var(--jse-context-menu-background, #656565); - color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); - white-space: nowrap; - box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); -}`);var JIA=TA('
    ');function YIA(i,e){var A=K(e,"text",8),t=JIA(),n=gA(t);Le(()=>Ht(n,A())),sA(i,t)}function tE(i,e){var A,{text:t,openAbsolutePopup:n,closeAbsolutePopup:o}=e;function a(){A=n(YIA,{text:t},{position:"top",width:10*t.length,offsetTop:3,anchor:i,closeOnOuterClick:!0})}function r(){o(A)}return i.addEventListener("mouseenter",a),i.addEventListener("mouseleave",r),{destroy(){i.removeEventListener("mouseenter",a),i.removeEventListener("mouseleave",r)}}}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-timestamp.svelte-1jcpman { - padding: 0; - margin: 0; - vertical-align: middle; - display: inline-flex; - color: var(--jse-value-color-number, #ee422e); -}`);var HIA=TA('
    ');function zIA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=s1("absolute-popup"),n=K(e,"value",9);KA(()=>Y(n()),()=>{N(A,"Time: ".concat(new Date(n()).toString()))}),Vn(),di(!0);var o=HIA();Bn(gA(o),{get data(){return qO}}),Ms(o,(a,r)=>tE?.(a,r),()=>Fe({text:c(A)},t)),sA(i,o),Yt()}function PIA(i){var e=[];return!i.isEditing&&zdA(i.value)&&e.push({component:mIA,props:i}),!i.isEditing&&PdA(i.value)&&e.push({component:vIA,props:i}),i.isEditing&&e.push({component:FIA,props:i}),i.isEditing||e.push({component:OIA,props:i}),!i.isEditing&&__(i.value)&&e.push({component:zIA,props:i}),e}function El(i){return i.map((e,A)=>VIA.test(e)?"["+e+"]":/[.[\]]/.test(e)||e===""?'["'+(function(t){return t.replace(/"/g,'\\"')})(e)+'"]':(A>0?".":"")+e).join("")}function jIA(i){for(var e=[],A=0;Ao==='"',!0)),n('"')):e.push(t(o=>o==="]")),n("]")):e.push(t(o=>o==="."||o==="["));function t(o){for(var a=arguments.length>1&&arguments[1]!==void 0&&arguments[1],r="";A({x:i,y:i}),ZIA={left:"right",right:"left",bottom:"top",top:"bottom"},XIA={start:"end",end:"start"};function aV(i,e,A){return Wd(i,A5(e,A))}function h5(i,e){return typeof i=="function"?i(e):i}function oI(i){return i.split("-")[0]}function E5(i){return i.split("-")[1]}function nW(i){return i==="x"?"y":"x"}function oW(i){return i==="y"?"height":"width"}var $IA=new Set(["top","bottom"]);function Z2(i){return $IA.has(oI(i))?"y":"x"}function aW(i){return nW(Z2(i))}function J_(i){return i.replace(/start|end/g,e=>XIA[e])}var rV=["left","right"],sV=["right","left"],ABA=["top","bottom"],eBA=["bottom","top"];function tBA(i,e,A,t){var n=E5(i),o=(function(a,r,s){switch(a){case"top":case"bottom":return s?r?sV:rV:r?rV:sV;case"left":case"right":return r?ABA:eBA;default:return[]}})(oI(i),A==="start",t);return n&&(o=o.map(a=>a+"-"+n),e&&(o=o.concat(o.map(J_)))),o}function vw(i){return i.replace(/left|right|bottom|top/g,e=>ZIA[e])}function iBA(i){return typeof i!="number"?(function(e){return Fe({top:0,right:0,bottom:0,left:0},e)})(i):{top:i,right:i,bottom:i,left:i}}function t5(i){var{x:e,y:A,width:t,height:n}=i;return{width:t,height:n,top:A,left:e,right:e+t,bottom:A+n,x:e,y:A}}function lV(i,e,A){var t,{reference:n,floating:o}=i,a=Z2(e),r=aW(e),s=oW(r),l=oI(e),g=a==="y",C=n.x+n.width/2-o.width/2,d=n.y+n.height/2-o.height/2,B=n[s]/2-o[s]/2;switch(l){case"top":t={x:C,y:n.y-o.height};break;case"bottom":t={x:C,y:n.y+n.height};break;case"right":t={x:n.x+n.width,y:d};break;case"left":t={x:n.x-o.width,y:d};break;default:t={x:n.x,y:n.y}}switch(E5(e)){case"start":t[r]-=B*(A&&g?-1:1);break;case"end":t[r]+=B*(A&&g?-1:1)}return t}var nBA=(function(){var i=Xt(function*(e,A,t){for(var{placement:n="bottom",strategy:o="absolute",middleware:a=[],platform:r}=t,s=a.filter(Boolean),l=yield r.isRTL==null?void 0:r.isRTL(A),g=yield r.getElementRects({reference:e,floating:A,strategy:o}),{x:C,y:d}=lV(g,n,l),B=n,u={},E=0,f=0;f"u")&&(i instanceof ShadowRoot||i instanceof Yl(i).ShadowRoot)}var aBA=new Set(["inline","contents"]);function tp(i){var{overflow:e,overflowX:A,overflowY:t,display:n}=pc(i);return/auto|scroll|overlay|hidden|clip/.test(e+t+A)&&!aBA.has(n)}var rBA=new Set(["table","td","th"]);function sBA(i){return rBA.has(iE(i))}var lBA=[":popover-open",":modal"];function i5(i){return lBA.some(e=>{try{return i.matches(e)}catch(A){return!1}})}var gBA=["transform","translate","scale","rotate","perspective"],cBA=["transform","translate","scale","rotate","perspective","filter"],CBA=["paint","layout","strict","content"];function z_(i){var e=yx(),A=uc(i)?pc(i):i;return gBA.some(t=>!!A[t]&&A[t]!=="none")||!!A.containerType&&A.containerType!=="normal"||!e&&!!A.backdropFilter&&A.backdropFilter!=="none"||!e&&!!A.filter&&A.filter!=="none"||cBA.some(t=>(A.willChange||"").includes(t))||CBA.some(t=>(A.contain||"").includes(t))}function yx(){return!(typeof CSS>"u"||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}var dBA=new Set(["html","body","#document"]);function Yh(i){return dBA.has(iE(i))}function pc(i){return Yl(i).getComputedStyle(i)}function u5(i){return uc(i)?{scrollLeft:i.scrollLeft,scrollTop:i.scrollTop}:{scrollLeft:i.scrollX,scrollTop:i.scrollY}}function X2(i){if(iE(i)==="html")return i;var e=i.assignedSlot||i.parentNode||gV(i)&&i.host||M0(i);return gV(e)?e.host:e}function lW(i){var e=X2(i);return Yh(e)?i.ownerDocument?i.ownerDocument.body:i.body:S0(e)&&tp(e)?e:lW(e)}function ip(i,e,A){var t;e===void 0&&(e=[]),A===void 0&&(A=!0);var n=lW(i),o=n===((t=i.ownerDocument)==null?void 0:t.body),a=Yl(n);if(o){var r=P_(a);return e.concat(a,a.visualViewport||[],tp(n)?n:[],r&&A?ip(r):[])}return e.concat(n,ip(n,[],A))}function P_(i){return i.parent&&Object.getPrototypeOf(i.parent)?i.frameElement:null}function gW(i){var e=pc(i),A=parseFloat(e.width)||0,t=parseFloat(e.height)||0,n=S0(i),o=n?i.offsetWidth:A,a=n?i.offsetHeight:t,r=e5(A)!==o||e5(t)!==a;return r&&(A=o,t=a),{width:A,height:t,$:r}}function Dx(i){return uc(i)?i:i.contextElement}function Hh(i){var e=Dx(i);if(!S0(e))return b0(1);var A=e.getBoundingClientRect(),{width:t,height:n,$:o}=gW(e),a=(o?e5(A.width):A.width)/t,r=(o?e5(A.height):A.height)/n;return a&&Number.isFinite(a)||(a=1),r&&Number.isFinite(r)||(r=1),{x:a,y:r}}var IBA=b0(0);function cW(i){var e=Yl(i);return yx()&&e.visualViewport?{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}:IBA}function aI(i,e,A,t){e===void 0&&(e=!1),A===void 0&&(A=!1);var n=i.getBoundingClientRect(),o=Dx(i),a=b0(1);e&&(t?uc(t)&&(a=Hh(t)):a=Hh(i));var r=(function(M,x,F){return x===void 0&&(x=!1),!(!F||x&&F!==Yl(M))&&x})(o,A,t)?cW(o):b0(0),s=(n.left+r.x)/a.x,l=(n.top+r.y)/a.y,g=n.width/a.x,C=n.height/a.y;if(o)for(var d=Yl(o),B=t&&uc(t)?Yl(t):t,u=d,E=P_(u);E&&t&&B!==u;){var f=Hh(E),m=E.getBoundingClientRect(),v=pc(E),S=m.left+(E.clientLeft+parseFloat(v.paddingLeft))*f.x,k=m.top+(E.clientTop+parseFloat(v.paddingTop))*f.y;s*=f.x,l*=f.y,g*=f.x,C*=f.y,s+=S,l+=k,E=P_(u=Yl(E))}return t5({width:g,height:C,x:s,y:l})}function n5(i,e){var A=u5(i).scrollLeft;return e?e.left+A:aI(M0(i)).left+A}function CW(i,e){var A=i.getBoundingClientRect();return{x:A.left+e.scrollLeft-n5(i,A),y:A.top+e.scrollTop}}var BBA=new Set(["absolute","fixed"]);function cV(i,e,A){var t;if(e==="viewport")t=(function(o,a){var r=Yl(o),s=M0(o),l=r.visualViewport,g=s.clientWidth,C=s.clientHeight,d=0,B=0;if(l){g=l.width,C=l.height;var u=yx();(!u||u&&a==="fixed")&&(d=l.offsetLeft,B=l.offsetTop)}var E=n5(s);if(E<=0){var f=s.ownerDocument,m=f.body,v=getComputedStyle(m),S=f.compatMode==="CSS1Compat"&&parseFloat(v.marginLeft)+parseFloat(v.marginRight)||0,k=Math.abs(s.clientWidth-m.clientWidth-S);k<=25&&(g-=k)}else E<=25&&(g+=E);return{width:g,height:C,x:d,y:B}})(i,A);else if(e==="document")t=(function(o){var a=M0(o),r=u5(o),s=o.ownerDocument.body,l=Wd(a.scrollWidth,a.clientWidth,s.scrollWidth,s.clientWidth),g=Wd(a.scrollHeight,a.clientHeight,s.scrollHeight,s.clientHeight),C=-r.scrollLeft+n5(o),d=-r.scrollTop;return pc(s).direction==="rtl"&&(C+=Wd(a.clientWidth,s.clientWidth)-l),{width:l,height:g,x:C,y:d}})(M0(i));else if(uc(e))t=(function(o,a){var r=aI(o,!0,a==="fixed"),s=r.top+o.clientTop,l=r.left+o.clientLeft,g=S0(o)?Hh(o):b0(1);return{width:o.clientWidth*g.x,height:o.clientHeight*g.y,x:l*g.x,y:s*g.y}})(e,A);else{var n=cW(i);t={x:e.x-n.x,y:e.y-n.y,width:e.width,height:e.height}}return t5(t)}function dW(i,e){var A=X2(i);return!(A===e||!uc(A)||Yh(A))&&(pc(A).position==="fixed"||dW(A,e))}function hBA(i,e,A){var t=S0(e),n=M0(e),o=A==="fixed",a=aI(i,!0,o,e),r={scrollLeft:0,scrollTop:0},s=b0(0);function l(){s.x=n5(n)}if(t||!t&&!o)if((iE(e)!=="body"||tp(n))&&(r=u5(e)),t){var g=aI(e,!0,o,e);s.x=g.x+e.clientLeft,s.y=g.y+e.clientTop}else n&&l();o&&!t&&n&&l();var C=!n||t||o?b0(0):CW(n,r);return{x:a.left+r.scrollLeft-s.x-C.x,y:a.top+r.scrollTop-s.y-C.y,width:a.width,height:a.height}}function B_(i){return pc(i).position==="static"}function CV(i,e){if(!S0(i)||pc(i).position==="fixed")return null;if(e)return e(i);var A=i.offsetParent;return M0(i)===A&&(A=A.ownerDocument.body),A}function dV(i,e){var A=Yl(i);if(i5(i))return A;if(!S0(i)){for(var t=X2(i);t&&!Yh(t);){if(uc(t)&&!B_(t))return t;t=X2(t)}return A}for(var n=CV(i,e);n&&sBA(n)&&B_(n);)n=CV(n,e);return n&&Yh(n)&&B_(n)&&!z_(n)?A:n||(function(o){for(var a=X2(o);S0(a)&&!Yh(a);){if(z_(a))return a;if(i5(a))return null;a=X2(a)}return null})(i)||A}var EBA={convertOffsetParentRelativeRectToViewportRelativeRect:function(i){var{elements:e,rect:A,offsetParent:t,strategy:n}=i,o=n==="fixed",a=M0(t),r=!!e&&i5(e.floating);if(t===a||r&&o)return A;var s={scrollLeft:0,scrollTop:0},l=b0(1),g=b0(0),C=S0(t);if((C||!C&&!o)&&((iE(t)!=="body"||tp(a))&&(s=u5(t)),S0(t))){var d=aI(t);l=Hh(t),g.x=d.x+t.clientLeft,g.y=d.y+t.clientTop}var B=!a||C||o?b0(0):CW(a,s);return{width:A.width*l.x,height:A.height*l.y,x:A.x*l.x-s.scrollLeft*l.x+g.x+B.x,y:A.y*l.y-s.scrollTop*l.y+g.y+B.y}},getDocumentElement:M0,getClippingRect:function(i){var{element:e,boundary:A,rootBoundary:t,strategy:n}=i,o=A==="clippingAncestors"?i5(e)?[]:(function(l,g){var C=g.get(l);if(C)return C;for(var d=ip(l,[],!1).filter(v=>uc(v)&&iE(v)!=="body"),B=null,u=pc(l).position==="fixed",E=u?X2(l):l;uc(E)&&!Yh(E);){var f=pc(E),m=z_(E);m||f.position!=="fixed"||(B=null),(u?!m&&!B:!m&&f.position==="static"&&B&&BBA.has(B.position)||tp(E)&&!m&&dW(l,E))?d=d.filter(v=>v!==E):B=f,E=X2(E)}return g.set(l,d),d})(e,this._c):[].concat(A),a=[...o,t],r=a[0],s=a.reduce((l,g)=>{var C=cV(e,g,n);return l.top=Wd(C.top,l.top),l.right=A5(C.right,l.right),l.bottom=A5(C.bottom,l.bottom),l.left=Wd(C.left,l.left),l},cV(e,r,n));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:dV,getElementRects:(function(){var i=Xt(function*(e){var A=this.getOffsetParent||dV,t=this.getDimensions,n=yield t(e.floating);return{reference:hBA(e.reference,yield A(e.floating),e.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}});return function(e){return i.apply(this,arguments)}})(),getClientRects:function(i){return Array.from(i.getClientRects())},getDimensions:function(i){var{width:e,height:A}=gW(i);return{width:e,height:A}},getScale:Hh,isElement:uc,isRTL:function(i){return pc(i).direction==="rtl"}};function IV(i,e){return i.x===e.x&&i.y===e.y&&i.width===e.width&&i.height===e.height}function QBA(i,e,A,t){t===void 0&&(t={});var{ancestorScroll:n=!0,ancestorResize:o=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:r=typeof IntersectionObserver=="function",animationFrame:s=!1}=t,l=Dx(i),g=n||o?[...l?ip(l):[],...ip(e)]:[];g.forEach(f=>{n&&f.addEventListener("scroll",A,{passive:!0}),o&&f.addEventListener("resize",A)});var C,d=l&&r?(function(f,m){var v,S=null,k=M0(f);function M(){var x;clearTimeout(v),(x=S)==null||x.disconnect(),S=null}return(function x(F,z){F===void 0&&(F=!1),z===void 0&&(z=1),M();var j=f.getBoundingClientRect(),{left:X,top:eA,width:Z,height:CA}=j;if(F||m(),Z&&CA){var wA={rootMargin:-Dw(eA)+"px "+-Dw(k.clientWidth-(X+Z))+"px "+-Dw(k.clientHeight-(eA+CA))+"px "+-Dw(X)+"px",threshold:Wd(0,A5(1,z))||1},BA=!0;try{S=new IntersectionObserver(QA,Fe(Fe({},wA),{},{root:k.ownerDocument}))}catch(RA){S=new IntersectionObserver(QA,wA)}S.observe(f)}function QA(RA){var dA=RA[0].intersectionRatio;if(dA!==z){if(!BA)return x();dA?x(!1,dA):v=setTimeout(()=>{x(!1,1e-7)},1e3)}dA!==1||IV(j,f.getBoundingClientRect())||x(),BA=!1}})(!0),M})(l,A):null,B=-1,u=null;a&&(u=new ResizeObserver(f=>{var[m]=f;m&&m.target===l&&u&&(u.unobserve(e),cancelAnimationFrame(B),B=requestAnimationFrame(()=>{var v;(v=u)==null||v.observe(e)})),A()}),l&&!s&&u.observe(l),u.observe(e));var E=s?aI(i):null;return s&&(function f(){var m=aI(i);E&&!IV(E,m)&&A(),E=m,C=requestAnimationFrame(f)})(),A(),()=>{var f;g.forEach(m=>{n&&m.removeEventListener("scroll",A),o&&m.removeEventListener("resize",A)}),d?.(),(f=u)==null||f.disconnect(),u=null,s&&cancelAnimationFrame(C)}}var uBA=function(i){return i===void 0&&(i=0),{name:"offset",options:i,fn:e=>Xt(function*(){var A,t,{x:n,y:o,placement:a,middlewareData:r}=e,s=yield(function(l,g){return H_.apply(this,arguments)})(e,i);return a===((A=r.offset)==null?void 0:A.placement)&&(t=r.arrow)!=null&&t.alignmentOffset?{}:{x:n+s.x,y:o+s.y,data:Fe(Fe({},s),{},{placement:a})}})()}},pBA=function(i){return i===void 0&&(i={}),{name:"shift",options:i,fn:e=>Xt(function*(){var{x:A,y:t,placement:n}=e,o=h5(i,e),{mainAxis:a=!0,crossAxis:r=!1,limiter:s={fn:S=>{var{x:k,y:M}=S;return{x:k,y:M}}}}=o,l=mV(o,odA),g={x:A,y:t},C=yield rW(e,l),d=Z2(oI(n)),B=nW(d),u=g[B],E=g[d];if(a){var f=B==="y"?"bottom":"right";u=aV(u+C[B==="y"?"top":"left"],u,u-C[f])}if(r){var m=d==="y"?"bottom":"right";E=aV(E+C[d==="y"?"top":"left"],E,E-C[m])}var v=s.fn(Fe(Fe({},e),{},{[B]:u,[d]:E}));return Fe(Fe({},v),{},{data:{x:v.x-A,y:v.y-t,enabled:{[B]:a,[d]:r}}})})()}},fBA=function(i){return i===void 0&&(i={}),{name:"flip",options:i,fn:e=>Xt(function*(){var A,t,{placement:n,middlewareData:o,rects:a,initialPlacement:r,platform:s,elements:l}=e,g=h5(i,e),{mainAxis:C=!0,crossAxis:d=!0,fallbackPlacements:B,fallbackStrategy:u="bestFit",fallbackAxisSideDirection:E="none",flipAlignment:f=!0}=g,m=mV(g,ndA);if((A=o.arrow)!=null&&A.alignmentOffset)return{};var v=oI(n),S=Z2(r),k=oI(r)===r,M=yield s.isRTL==null?void 0:s.isRTL(l.floating),x=B||(k||!f?[vw(r)]:(function(xA){var qA=vw(xA);return[J_(xA),qA,J_(qA)]})(r)),F=E!=="none";!B&&F&&x.push(...tBA(r,f,E,M));var z=[r,...x],j=yield rW(e,m),X=[],eA=((t=o.flip)==null?void 0:t.overflows)||[];if(C&&X.push(j[v]),d){var Z=(function(xA,qA,ue){ue===void 0&&(ue=!1);var HA=E5(xA),bA=aW(xA),PA=oW(bA),it=bA==="x"?HA===(ue?"end":"start")?"right":"left":HA==="start"?"bottom":"top";return qA.reference[PA]>qA.floating[PA]&&(it=vw(it)),[it,vw(it)]})(n,a,M);X.push(j[Z[0]],j[Z[1]])}if(eA=[...eA,{placement:n,overflows:X}],!X.every(xA=>xA<=0)){var CA,wA,BA=(((CA=o.flip)==null?void 0:CA.index)||0)+1,QA=z[BA];if(QA&&(!(d==="alignment"&&S!==Z2(QA))||eA.every(xA=>Z2(xA.placement)!==S||xA.overflows[0]>0)))return{data:{index:BA,overflows:eA},reset:{placement:QA}};var RA=(wA=eA.filter(xA=>xA.overflows[0]<=0).sort((xA,qA)=>xA.overflows[1]-qA.overflows[1])[0])==null?void 0:wA.placement;if(!RA)switch(u){case"bestFit":var dA,IA=(dA=eA.filter(xA=>{if(F){var qA=Z2(xA.placement);return qA===S||qA==="y"}return!0}).map(xA=>[xA.placement,xA.overflows.filter(qA=>qA>0).reduce((qA,ue)=>qA+ue,0)]).sort((xA,qA)=>xA[1]-qA[1])[0])==null?void 0:dA[0];IA&&(RA=IA);break;case"initialPlacement":RA=r}if(n!==RA)return{reset:{placement:RA}}}return{}})()}};function mBA(i){var e,A,t={autoUpdate:!0},n=i,o=s=>Fe(Fe(Fe({},t),i||{}),s||{}),a=s=>{e&&A&&(n=o(s),((l,g,C)=>{var d=new Map,B=Fe({platform:EBA},C),u=Fe(Fe({},B.platform),{},{_c:d});return nBA(l,g,Fe(Fe({},B),{},{platform:u}))})(e,A,n).then(l=>{var g;Object.assign(A.style,{position:l.strategy,left:"".concat(l.x,"px"),top:"".concat(l.y,"px")}),!((g=n)===null||g===void 0)&&g.onComputed&&n.onComputed(l)}))},r=s=>{Dg(s.subscribe(l=>{e===void 0?(e=l,a()):(Object.assign(e,l),a())}))};return[s=>{if("subscribe"in s)return r(s),{};e=s,a()},(s,l)=>{var g;A=s,n=o(l),setTimeout(()=>a(l),0),a(l);var C=()=>{g&&(g(),g=void 0)},d=function(){var{autoUpdate:B}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:n||{};C(),B!==!1&&Cq().then(()=>QBA(e,A,()=>a(n),B===!0?{}:B))};return g=d(),{update(B){a(B),g=d(B)},destroy(){C()}}},a]}function wBA(i){var{loadOptions:e,filterText:A,items:t,multiple:n,value:o,itemId:a,groupBy:r,filterSelectedItems:s,itemFilter:l,convertStringItemsToObjects:g,filterGroupedItems:C,label:d}=i;if(t&&e)return t;if(!t)return[];t&&t.length>0&&typeof t[0]!="object"&&(t=g(t));var B=t.filter(u=>{var E=l(u[d],A,u);return E&&n&&o!=null&&o.length&&(E=!o.some(f=>!!s&&f[a]===u[a])),E});return r&&(B=C(B)),B}function yBA(i){return IW.apply(this,arguments)}function IW(){return(IW=Xt(function*(i){var{dispatch:e,loadOptions:A,convertStringItemsToObjects:t,filterText:n}=i,o=yield A(n).catch(a=>{console.warn("svelte-select loadOptions error :>> ",a),e("error",{type:"loadOptions",details:a})});if(o&&!o.cancelled)return o?(o&&o.length>0&&typeof o[0]!="object"&&(o=t(o)),e("loaded",{items:o})):o=[],{filteredItems:o,loading:!1,focused:!0,listOpen:!0}})).apply(this,arguments)}oi(` - svg.svelte-1kxu7be { - width: var(--chevron-icon-width, 20px); - height: var(--chevron-icon-width, 20px); - color: var(--chevron-icon-colour, currentColor); - } -`);var DBA=l1(``);oi(` - svg.svelte-1hraxrc { - width: var(--clear-icon-width, 20px); - height: var(--clear-icon-width, 20px); - color: var(--clear-icon-color, currentColor); - } -`);var vBA=l1(``);function h_(i){sA(i,vBA())}oi(` - .loading.svelte-y9fi5p { - width: var(--spinner-width, 20px); - height: var(--spinner-height, 20px); - color: var(--spinner-color, var(--icons-color)); - animation: svelte-y9fi5p-rotate 0.75s linear infinite; - transform-origin: center center; - transform: none; - } - - .circle_path.svelte-y9fi5p { - stroke-dasharray: 90; - stroke-linecap: round; - } - - @keyframes svelte-y9fi5p-rotate { - 100% { - transform: rotate(360deg); - } - } -`);var bBA=l1('');oi(` - .svelte-select.svelte-1ul7oo4 { - /* deprecating camelCase custom props in favour of kebab-case for v5 */ - --borderRadius: var(--border-radius); - --clearSelectColor: var(--clear-select-color); - --clearSelectWidth: var(--clear-select-width); - --disabledBackground: var(--disabled-background); - --disabledBorderColor: var(--disabled-border-color); - --disabledColor: var(--disabled-color); - --disabledPlaceholderColor: var(--disabled-placeholder-color); - --disabledPlaceholderOpacity: var(--disabled-placeholder-opacity); - --errorBackground: var(--error-background); - --errorBorder: var(--error-border); - --groupItemPaddingLeft: var(--group-item-padding-left); - --groupTitleColor: var(--group-title-color); - --groupTitleFontSize: var(--group-title-font-size); - --groupTitleFontWeight: var(--group-title-font-weight); - --groupTitlePadding: var(--group-title-padding); - --groupTitleTextTransform: var(--group-title-text-transform); - --groupTitleBorderColor: var(--group-title-border-color); - --groupTitleBorderWidth: var(--group-title-border-width); - --groupTitleBorderStyle: var(--group-title-border-style); - --indicatorColor: var(--chevron-color); - --indicatorHeight: var(--chevron-height); - --indicatorWidth: var(--chevron-width); - --inputColor: var(--input-color); - --inputLeft: var(--input-left); - --inputLetterSpacing: var(--input-letter-spacing); - --inputMargin: var(--input-margin); - --inputPadding: var(--input-padding); - --itemActiveBackground: var(--item-active-background); - --itemColor: var(--item-color); - --itemFirstBorderRadius: var(--item-first-border-radius); - --itemHoverBG: var(--item-hover-bg); - --itemHoverColor: var(--item-hover-color); - --itemIsActiveBG: var(--item-is-active-bg); - --itemIsActiveColor: var(--item-is-active-color); - --itemIsNotSelectableColor: var(--item-is-not-selectable-color); - --itemPadding: var(--item-padding); - --listBackground: var(--list-background); - --listBorder: var(--list-border); - --listBorderRadius: var(--list-border-radius); - --listEmptyColor: var(--list-empty-color); - --listEmptyPadding: var(--list-empty-padding); - --listEmptyTextAlign: var(--list-empty-text-align); - --listMaxHeight: var(--list-max-height); - --listPosition: var(--list-position); - --listShadow: var(--list-shadow); - --listZIndex: var(--list-z-index); - --multiItemBG: var(--multi-item-bg); - --multiItemBorderRadius: var(--multi-item-border-radius); - --multiItemDisabledHoverBg: var(--multi-item-disabled-hover-bg); - --multiItemDisabledHoverColor: var(--multi-item-disabled-hover-color); - --multiItemHeight: var(--multi-item-height); - --multiItemMargin: var(--multi-item-margin); - --multiItemPadding: var(--multi-item-padding); - --multiSelectInputMargin: var(--multi-select-input-margin); - --multiSelectInputPadding: var(--multi-select-input-padding); - --multiSelectPadding: var(--multi-select-padding); - --placeholderColor: var(--placeholder-color); - --placeholderOpacity: var(--placeholder-opacity); - --selectedItemPadding: var(--selected-item-padding); - --spinnerColor: var(--spinner-color); - --spinnerHeight: var(--spinner-height); - --spinnerWidth: var(--spinner-width); - - --internal-padding: 0 0 0 16px; - - border: var(--border, 1px solid #d8dbdf); - border-radius: var(--border-radius, 6px); - min-height: var(--height, 42px); - position: relative; - display: flex; - align-items: stretch; - padding: var(--padding, var(--internal-padding)); - background: var(--background, #fff); - margin: var(--margin, 0); - width: var(--width, 100%); - font-size: var(--font-size, 16px); - max-height: var(--max-height); - } - - .svelte-1ul7oo4 { - box-sizing: var(--box-sizing, border-box); - } - - .svelte-select.svelte-1ul7oo4:hover { - border: var(--border-hover, 1px solid #b2b8bf); - } - - .value-container.svelte-1ul7oo4 { - display: flex; - flex: 1 1 0%; - flex-wrap: wrap; - align-items: center; - gap: 5px 10px; - padding: var(--value-container-padding, 5px 0); - position: relative; - overflow: var(--value-container-overflow, hidden); - align-self: stretch; - } - - .prepend.svelte-1ul7oo4, - .indicators.svelte-1ul7oo4 { - display: flex; - flex-shrink: 0; - align-items: center; - } - - .indicators.svelte-1ul7oo4 { - position: var(--indicators-position); - top: var(--indicators-top); - right: var(--indicators-right); - bottom: var(--indicators-bottom); - } - - input.svelte-1ul7oo4 { - position: absolute; - cursor: default; - border: none; - color: var(--input-color, var(--item-color)); - padding: var(--input-padding, 0); - letter-spacing: var(--input-letter-spacing, inherit); - margin: var(--input-margin, 0); - min-width: 10px; - top: 0; - right: 0; - bottom: 0; - left: 0; - background: transparent; - font-size: var(--font-size, 16px); - } - - .svelte-1ul7oo4:not(.multi) > .value-container:where(.svelte-1ul7oo4) > input:where(.svelte-1ul7oo4) { - width: 100%; - height: 100%; - } - - input.svelte-1ul7oo4::placeholder { - color: var(--placeholder-color, #78848f); - opacity: var(--placeholder-opacity, 1); - } - - input.svelte-1ul7oo4:focus { - outline: none; - } - - .svelte-select.focused.svelte-1ul7oo4 { - border: var(--border-focused, 1px solid #006fe8); - border-radius: var(--border-radius-focused, var(--border-radius, 6px)); - } - - .disabled.svelte-1ul7oo4 { - background: var(--disabled-background, #ebedef); - border-color: var(--disabled-border-color, #ebedef); - color: var(--disabled-color, #c1c6cc); - } - - .disabled.svelte-1ul7oo4 input:where(.svelte-1ul7oo4)::placeholder { - color: var(--disabled-placeholder-color, #c1c6cc); - opacity: var(--disabled-placeholder-opacity, 1); - } - - .selected-item.svelte-1ul7oo4 { - position: relative; - overflow: var(--selected-item-overflow, hidden); - padding: var(--selected-item-padding, 0 20px 0 0); - text-overflow: ellipsis; - white-space: nowrap; - color: var(--selected-item-color, inherit); - font-size: var(--font-size, 16px); - } - - .multi.svelte-1ul7oo4 .selected-item:where(.svelte-1ul7oo4) { - position: absolute; - line-height: var(--height, 42px); - height: var(--height, 42px); - } - - .selected-item.svelte-1ul7oo4:focus { - outline: none; - } - - .hide-selected-item.svelte-1ul7oo4 { - opacity: 0; - } - - .icon.svelte-1ul7oo4 { - display: flex; - align-items: center; - justify-content: center; - } - - .clear-select.svelte-1ul7oo4 { - all: unset; - display: flex; - align-items: center; - justify-content: center; - width: var(--clear-select-width, 40px); - height: var(--clear-select-height, 100%); - color: var(--clear-select-color, var(--icons-color)); - margin: var(--clear-select-margin, 0); - pointer-events: all; - flex-shrink: 0; - } - - .clear-select.svelte-1ul7oo4:focus { - outline: var(--clear-select-focus-outline, 1px solid #006fe8); - } - - .loading.svelte-1ul7oo4 { - width: var(--loading-width, 40px); - height: var(--loading-height); - color: var(--loading-color, var(--icons-color)); - margin: var(--loading--margin, 0); - flex-shrink: 0; - } - - .chevron.svelte-1ul7oo4 { - width: var(--chevron-width, 40px); - height: var(--chevron-height, 40px); - background: var(--chevron-background, transparent); - pointer-events: var(--chevron-pointer-events, none); - color: var(--chevron-color, var(--icons-color)); - border: var(--chevron-border, 0 0 0 1px solid #d8dbdf); - flex-shrink: 0; - } - - .multi.svelte-1ul7oo4 { - padding: var(--multi-select-padding, var(--internal-padding)); - } - - .multi.svelte-1ul7oo4 input:where(.svelte-1ul7oo4) { - padding: var(--multi-select-input-padding, 0); - position: relative; - margin: var(--multi-select-input-margin, 5px 0); - flex: 1 1 40px; - } - - .svelte-select.error.svelte-1ul7oo4 { - border: var(--error-border, 1px solid #ff2d55); - background: var(--error-background, #fff); - } - - .a11y-text.svelte-1ul7oo4 { - z-index: 9999; - border: 0px; - clip: rect(1px, 1px, 1px, 1px); - height: 1px; - width: 1px; - position: absolute; - overflow: hidden; - padding: 0px; - white-space: nowrap; - } - - .multi-item.svelte-1ul7oo4 { - background: var(--multi-item-bg, #ebedef); - margin: var(--multi-item-margin, 0); - outline: var(--multi-item-outline, 1px solid #ddd); - border-radius: var(--multi-item-border-radius, 4px); - height: var(--multi-item-height, 25px); - line-height: var(--multi-item-height, 25px); - display: flex; - cursor: default; - padding: var(--multi-item-padding, 0 5px); - overflow: hidden; - gap: var(--multi-item-gap, 4px); - outline-offset: -1px; - max-width: var(--multi-max-width, none); - color: var(--multi-item-color, var(--item-color)); - } - - .multi-item.disabled.svelte-1ul7oo4:hover { - background: var(--multi-item-disabled-hover-bg, #ebedef); - color: var(--multi-item-disabled-hover-color, #c1c6cc); - } - - .multi-item-text.svelte-1ul7oo4 { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - } - - .multi-item-clear.svelte-1ul7oo4 { - display: flex; - align-items: center; - justify-content: center; - --clear-icon-color: var(--multi-item-clear-icon-color, #000); - } - - .multi-item.active.svelte-1ul7oo4 { - outline: var(--multi-item-active-outline, 1px solid #006fe8); - } - - .svelte-select-list.svelte-1ul7oo4 { - box-shadow: var(--list-shadow, 0 2px 3px 0 rgba(44, 62, 80, 0.24)); - border-radius: var(--list-border-radius, 4px); - max-height: var(--list-max-height, 252px); - overflow-y: auto; - background: var(--list-background, #fff); - position: var(--list-position, absolute); - z-index: var(--list-z-index, 2); - border: var(--list-border); - } - - .prefloat.svelte-1ul7oo4 { - opacity: 0; - pointer-events: none; - } - - .list-group-title.svelte-1ul7oo4 { - color: var(--group-title-color, #8f8f8f); - cursor: default; - font-size: var(--group-title-font-size, 16px); - font-weight: var(--group-title-font-weight, 600); - height: var(--height, 42px); - line-height: var(--height, 42px); - padding: var(--group-title-padding, 0 20px); - text-overflow: ellipsis; - overflow-x: hidden; - white-space: nowrap; - text-transform: var(--group-title-text-transform, uppercase); - border-width: var(--group-title-border-width, medium); - border-style: var(--group-title-border-style, none); - border-color: var(--group-title-border-color, color); - } - - .empty.svelte-1ul7oo4 { - text-align: var(--list-empty-text-align, center); - padding: var(--list-empty-padding, 20px 0); - color: var(--list-empty-color, #78848f); - } - - .item.svelte-1ul7oo4 { - cursor: default; - height: var(--item-height, var(--height, 42px)); - line-height: var(--item-line-height, var(--height, 42px)); - padding: var(--item-padding, 0 20px); - color: var(--item-color, inherit); - text-overflow: ellipsis; - overflow: hidden; - white-space: nowrap; - transition: var(--item-transition, all 0.2s); - align-items: center; - width: 100%; - } - - .item.group-item.svelte-1ul7oo4 { - padding-left: var(--group-item-padding-left, 40px); - } - - .item.svelte-1ul7oo4:active { - background: var(--item-active-background, #b9daff); - } - - .item.active.svelte-1ul7oo4 { - background: var(--item-is-active-bg, #007aff); - color: var(--item-is-active-color, #fff); - } - - .item.first.svelte-1ul7oo4 { - border-radius: var(--item-first-border-radius, 4px 4px 0 0); - } - - .item.hover.svelte-1ul7oo4:not(.active) { - background: var(--item-hover-bg, #e7f2ff); - color: var(--item-hover-color, inherit); - } - - .item.not-selectable.svelte-1ul7oo4, - .item.hover.item.not-selectable.svelte-1ul7oo4, - .item.active.item.not-selectable.svelte-1ul7oo4, - .item.not-selectable.svelte-1ul7oo4:active { - color: var(--item-is-not-selectable-color, #999); - background: transparent; - } - - .required.svelte-1ul7oo4 { - opacity: 0; - z-index: -1; - position: absolute; - top: 0; - left: 0; - bottom: 0; - right: 0; - } -`);var MBA=TA('
    '),SBA=TA('
    No options
    '),kBA=TA('
    '),_BA=TA(' ',1),xBA=TA('
    '),RBA=TA('
    '),NBA=TA("
    "),FBA=TA(''),LBA=TA(''),GBA=TA(''),KBA=TA(''),UBA=TA(''),TBA=TA('
    ');function Hd(i,e){var A=(function(EA){var LA={};for(var Ce in EA.children&&(LA.default=!0),EA.$$slots)LA[Ce]=!0;return LA})(e);Jt(e,!1);var t,n=cA(),o=cA(),a=cA(),r=cA(),s=cA(),l=cA(),g=cA(),C=cA(),d=cA(),B=NdA(),u=K(e,"justValue",12,null),E=K(e,"filter",8,wBA),f=K(e,"getItems",8,yBA),m=K(e,"id",8,null),v=K(e,"name",8,null),S=K(e,"container",12,void 0),k=K(e,"input",12,void 0),M=K(e,"multiple",8,!1),x=K(e,"multiFullItemClearable",8,!1),F=K(e,"disabled",8,!1),z=K(e,"focused",12,!1),j=K(e,"value",12,null),X=K(e,"filterText",12,""),eA=K(e,"placeholder",8,"Please select"),Z=K(e,"placeholderAlwaysShow",8,!1),CA=K(e,"items",12,null),wA=K(e,"label",8,"label"),BA=K(e,"itemFilter",8,(EA,LA,Ce)=>"".concat(EA).toLowerCase().includes(LA.toLowerCase())),QA=K(e,"groupBy",8,void 0),RA=K(e,"groupFilter",8,EA=>EA),dA=K(e,"groupHeaderSelectable",8,!1),IA=K(e,"itemId",8,"value"),xA=K(e,"loadOptions",8,void 0),qA=K(e,"containerStyles",8,""),ue=K(e,"hasError",8,!1),HA=K(e,"filterSelectedItems",8,!0),bA=K(e,"required",8,!1),PA=K(e,"closeListOnChange",8,!0),it=K(e,"clearFilterTextOnBlur",8,!0),Xe=K(e,"createGroupHeaderItem",8,(EA,LA)=>({value:EA,[wA()]:EA})),YA=()=>c(g),hA=K(e,"searchable",8,!0),Ae=K(e,"inputStyles",8,""),pA=K(e,"clearable",8,!0),te=K(e,"loading",12,!1),NA=K(e,"listOpen",12,!1),Ge=K(e,"debounce",8,function(EA){var LA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;clearTimeout(t),t=setTimeout(EA,LA)}),JA=K(e,"debounceWait",8,300),yA=K(e,"hideEmptyState",8,!1),Pt=K(e,"inputAttributes",24,()=>({})),Dt=K(e,"listAutoWidth",8,!0),fe=K(e,"showChevron",8,!1),Zt=K(e,"listOffset",8,5),Pe=K(e,"hoverItemIndex",12,0),qe=K(e,"floatingConfig",24,()=>({})),vt=K(e,"class",8,""),Ke=cA(),Ii=cA(),V=cA(),$=cA(),iA=cA();function oA(EA){return EA.map((LA,Ce)=>({index:Ce,value:LA,label:"".concat(LA)}))}function UA(EA){var LA=[],Ce={};EA.forEach(gt=>{var dt=QA()(gt);LA.includes(dt)||(LA.push(dt),Ce[dt]=[],dt&&Ce[dt].push(Object.assign(Xe()(dt,gt),{id:dt,groupHeader:!0,selectable:dA()}))),Ce[dt].push(Object.assign({groupItem:!!dt},gt))});var Te=[];return RA()(LA).forEach(gt=>{Ce[gt]&&Te.push(...Ce[gt])}),Te}function he(){var EA=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,LA=arguments.length>1?arguments[1]:void 0;Pe(EA<0?0:EA),!LA&&QA()&&c(g)[Pe()]&&!c(g)[Pe()].selectable&&bi(1)}function me(){var EA=!0;if(j()){var LA=[],Ce=[];j().forEach(Te=>{LA.includes(Te[IA()])?EA=!1:(LA.push(Te[IA()]),Ce.push(Te))}),EA||j(Ce)}return EA}function GA(EA){var LA=EA?EA[IA()]:j()[IA()];return CA().find(Ce=>Ce[IA()]===LA)}function OA(EA){return wt.apply(this,arguments)}function wt(){return(wt=Xt(function*(EA){var LA=j()[EA];j().length===1?j(void 0):j(j().filter(Ce=>Ce!==LA)),B("clear",LA)})).apply(this,arguments)}function rt(EA){if(z())switch(EA.stopPropagation(),EA.key){case"Escape":EA.preventDefault(),He();break;case"Enter":if(EA.preventDefault(),NA()){if(c(g).length===0)break;var LA=c(g)[Pe()];if(j()&&!M()&&j()[IA()]===LA[IA()]){He();break}J(c(g)[Pe()])}break;case"ArrowDown":EA.preventDefault(),NA()?bi(1):(NA(!0),N(Ke,void 0));break;case"ArrowUp":EA.preventDefault(),NA()?bi(-1):(NA(!0),N(Ke,void 0));break;case"Tab":if(NA()&&z()){if(c(g).length===0||j()&&j()[IA()]===c(g)[Pe()][IA()])return He();EA.preventDefault(),J(c(g)[Pe()]),He()}break;case"Backspace":if(!M()||X().length>0)return;if(M()&&j()&&j().length>0){if(OA(c(Ke)!==void 0?c(Ke):j().length-1),c(Ke)===0||c(Ke)===void 0)break;N(Ke,j().length>c(Ke)?c(Ke)-1:void 0)}break;case"ArrowLeft":if(!j()||!M()||X().length>0)return;c(Ke)===void 0?N(Ke,j().length-1):j().length>c(Ke)&&c(Ke)!==0&&N(Ke,c(Ke)-1);break;case"ArrowRight":if(!j()||!M()||X().length>0||c(Ke)===void 0)return;c(Ke)===j().length-1?N(Ke,void 0):c(Ke)0?NA(!0):void NA(!NA())}function Sn(){B("clear",j()),j(void 0),He(),je()}function He(){it()&&X(""),NA(!1)}FdA(Xt(function*(){N(Ii,j()),N(V,X()),N($,M())})),os(()=>{NA()&&z(!0),z()&&k()&&k().focus()});var En=K(e,"ariaValues",8,EA=>"Option ".concat(EA,", selected.")),Gi=K(e,"ariaListOpen",8,(EA,LA)=>"You are currently focused on option ".concat(EA,". There are ").concat(LA," results available.")),Pi=K(e,"ariaFocused",8,()=>"Select is focused, type to refine list, press down to open the menu."),gn,Rt=cA(null);function Qn(){clearTimeout(gn),gn=setTimeout(()=>{jt=!1},100)}Dg(()=>{var EA;(EA=c(Rt))===null||EA===void 0||EA.remove()});var jt=!1;function J(EA){EA&&EA.selectable!==!1&&(function(LA){if(LA){X("");var Ce=Object.assign({},LA);if(Ce.groupHeader&&!Ce.selectable)return;j(M()?j()?j().concat([Ce]):[Ce]:j(Ce)),setTimeout(()=>{PA()&&He(),N(Ke,void 0),B("change",j()),B("select",LA)})}})(EA)}function ut(EA){jt||Pe(EA)}function bi(EA){if(c(g).filter(Ce=>!Object.hasOwn(Ce,"selectable")||Ce.selectable===!0).length===0)return Pe(0);EA>0&&Pe()===c(g).length-1?Pe(0):EA<0&&Pe()===0?Pe(c(g).length-1):Pe(Pe()+EA);var LA=c(g)[Pe()];LA&&LA.selectable===!1&&(EA!==1&&EA!==-1||bi(EA))}function kn(EA,LA,Ce){if(!M())return LA&&LA[Ce]===EA[Ce]}var _n=ia,Co=ia;function ia(EA){return{update(LA){LA.scroll&&(Qn(),EA.scrollIntoView({behavior:"auto",block:"nearest"}))}}}var So=cA({strategy:"absolute",placement:"bottom-start",middleware:[uBA(Zt()),fBA(),pBA()],autoUpdate:!1}),[Vo,ga,Ko]=mBA(c(So)),va=cA(!0);KA(()=>(Y(CA()),Y(j())),()=>{CA(),j()&&(function(){if(typeof j()=="string"){var EA=(CA()||[]).find(LA=>LA[IA()]===j());j(EA||{[IA()]:j(),label:j()})}else M()&&Array.isArray(j())&&j().length>0&&j(j().map(LA=>typeof LA=="string"?{value:LA,label:LA}:LA))})()}),KA(()=>(Y(Pt()),Y(hA())),()=>{!Pt()&&hA()||(N(iA,Object.assign({autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:!1,tabindex:0,type:"text","aria-autocomplete":"list"},Pt())),m()&&Ol(iA,c(iA).id=m()),hA()||Ol(iA,c(iA).readonly=!0))}),KA(()=>Y(M()),()=>{M()&&j()&&(Array.isArray(j())?j([...j()]):j([j()]))}),KA(()=>(c($),Y(M())),()=>{c($)&&!M()&&j()&&j(null)}),KA(()=>(Y(M()),Y(j())),()=>{M()&&j()&&j().length>1&&me()}),KA(()=>Y(j()),()=>{j()&&(M()?JSON.stringify(j())!==JSON.stringify(c(Ii))&&me()&&B("input",j()):c(Ii)&&JSON.stringify(j()[IA()])===JSON.stringify(c(Ii)[IA()])||B("input",j()))}),KA(()=>(Y(j()),Y(M()),c(Ii)),()=>{!j()&&M()&&c(Ii)&&B("input",j())}),KA(()=>(Y(z()),Y(k())),()=>{!z()&&k()&&He()}),KA(()=>(Y(X()),c(V)),()=>{X()!==c(V)&&(xA()||X().length!==0)&&(xA()?Ge()(Xt(function*(){te(!0);var EA=yield f()({dispatch:B,loadOptions:xA(),convertStringItemsToObjects:oA,filterText:X()});EA?(te(EA.loading),NA(NA()?EA.listOpen:X().length>0),z(NA()&&EA.focused),CA(QA()?UA(EA.filteredItems):EA.filteredItems)):(te(!1),z(!0),NA(!0))}),JA()):(NA(!0),M()&&N(Ke,void 0)))}),KA(()=>(Y(E()),Y(xA()),Y(X()),Y(CA()),Y(M()),Y(j()),Y(IA()),Y(QA()),Y(wA()),Y(HA()),Y(BA())),()=>{N(g,E()({loadOptions:xA(),filterText:X(),items:CA(),multiple:M(),value:j(),itemId:IA(),groupBy:QA(),label:wA(),filterSelectedItems:HA(),itemFilter:BA(),convertStringItemsToObjects:oA,filterGroupedItems:UA}))}),KA(()=>(Y(M()),Y(NA()),Y(j()),c(g)),()=>{!M()&&NA()&&j()&&c(g)&&he(c(g).findIndex(EA=>EA[IA()]===j()[IA()]),!0)}),KA(()=>(Y(NA()),Y(M())),()=>{NA()&&M()&&Pe(0)}),KA(()=>Y(X()),()=>{X()&&Pe(0)}),KA(()=>Y(Pe()),()=>{var EA;EA=Pe(),B("hoverItem",EA)}),KA(()=>(Y(M()),Y(j())),()=>{N(n,M()?j()&&j().length>0:j())}),KA(()=>(c(n),Y(X())),()=>{N(o,c(n)&&X().length>0)}),KA(()=>(c(n),Y(pA()),Y(F()),Y(te())),()=>{N(a,c(n)&&pA()&&!F()&&!te())}),KA(()=>(Y(Z()),Y(M()),Y(eA()),Y(j())),()=>{var EA;N(r,Z()&&M()||M()&&((EA=j())===null||EA===void 0?void 0:EA.length)===0?eA():j()?"":eA())}),KA(()=>(Y(j()),Y(M())),()=>{var EA,LA;N(s,j()?(EA=M(),LA=void 0,LA=EA&&j().length>0?j().map(Ce=>Ce[wA()]).join(", "):j()[wA()],En()(LA)):"")}),KA(()=>(c(g),Y(Pe()),Y(z()),Y(NA())),()=>{N(l,(function(){if(!c(g)||c(g).length===0)return"";var EA=c(g)[Pe()];if(NA()&&EA){var LA=c(g)?c(g).length:0;return Gi()(EA[wA()],LA)}return Pi()()})((c(g),Pe(),z(),NA())))}),KA(()=>Y(CA()),()=>{(function(EA){EA&&EA.length!==0&&!EA.some(LA=>typeof LA!="object")&&j()&&(M()?!j().some(LA=>!LA||!LA[IA()]):j()[IA()])&&(Array.isArray(j())?j(j().map(LA=>GA(LA)||LA)):j(GA()||j()))})(CA())}),KA(()=>(Y(M()),Y(j()),Y(IA())),()=>{u((M(),j(),IA(),M()?j()?j().map(EA=>EA[IA()]):null:j()?j()[IA()]:j()))}),KA(()=>(Y(M()),c(Ii),Y(j())),()=>{M()||!c(Ii)||j()||B("input",j())}),KA(()=>(Y(NA()),c(g),Y(M()),Y(j())),()=>{NA()&&c(g)&&!M()&&!j()&&he()}),KA(()=>c(g),()=>{(function(EA){NA()&&B("filter",EA)})(c(g))}),KA(()=>(Y(S()),Y(qe()),c(So)),()=>{S()&&qe()&&Ko(Object.assign(c(So),qe()))}),KA(()=>c(Rt),()=>{N(C,!!c(Rt))}),KA(()=>(c(Rt),Y(NA())),()=>{(function(EA,LA){if(!EA||!LA)return N(va,!0);setTimeout(()=>{N(va,!1)},0)})(c(Rt),NA())}),KA(()=>(Y(NA()),Y(S()),c(Rt)),()=>{NA()&&S()&&c(Rt)&&(function(){var{width:EA}=S().getBoundingClientRect();Ol(Rt,c(Rt).style.width=Dt()?EA+"px":"auto")})()}),KA(()=>Y(Pe()),()=>{N(d,Pe())}),KA(()=>(Y(k()),Y(NA()),Y(z())),()=>{k()&&NA()&&!z()&&je()}),KA(()=>(Y(S()),Y(qe())),()=>{var EA;S()&&((EA=qe())===null||EA===void 0?void 0:EA.autoUpdate)===void 0&&Ol(So,c(So).autoUpdate=!0)}),Vn();var ca={getFilteredItems:YA,handleClear:Sn};di();var pa,Uo=TBA();De("click",bC,function(EA){var LA;NA()||z()||!S()||S().contains(EA.target)||(LA=c(Rt))!==null&&LA!==void 0&&LA.contains(EA.target)||ze()}),De("keydown",bC,rt);var de=gA(Uo),xi=EA=>{var LA,Ce=kBA(),Te=gA(Ce),gt=ai=>{var Xi=zi();ya(at(Xi),e,"list-prepend",{},null),sA(ai,Xi)};zA(Te,ai=>{uA(()=>A["list-prepend"])&&ai(gt)});var dt=kA(Te,2),Ut=ai=>{var Xi=zi();ya(at(Xi),e,"list",{get filteredItems(){return c(g)}},null),sA(ai,Xi)},io=ai=>{var Xi=zi(),Na=at(Xi),Vt=$i=>{var cn=zi();Da(at(cn),1,()=>c(g),Ka,(Io,Rn,Tt)=>{var fa,oa=MBA(),y=gA(oa);ya(gA(y),e,"item",{get item(){return c(Rn)},index:Tt},b=>{var R=mr();Le(()=>Ht(R,(c(Rn),Y(wA()),uA(()=>{var W;return(W=c(Rn))===null||W===void 0?void 0:W[wA()]})))),sA(b,R)}),Ms(y,(b,R)=>_n?.(b),()=>({scroll:kn(c(Rn),j(),IA()),listDom:c(C)})),Ms(y,(b,R)=>Co?.(b),()=>({scroll:c(d)===Tt,listDom:c(C)})),Le(b=>fa=Ci(y,1,"item svelte-1ul7oo4",null,fa,b),[()=>{var b,R;return{"list-group-title":c(Rn).groupHeader,active:kn(c(Rn),j(),IA()),first:(R=Tt,R===0),hover:Pe()===Tt,"group-item":c(Rn).groupItem,"not-selectable":((b=c(Rn))===null||b===void 0?void 0:b.selectable)===!1}}]),De("mouseover",oa,()=>ut(Tt)),De("focus",oa,()=>ut(Tt)),De("click",oa,uC(()=>(function(b){var{item:R,i:W}=b;if(R?.selectable!==!1)return j()&&!M()&&j()[IA()]===R[IA()]?He():void((function(_){return _.groupHeader&&_.selectable||_.selectable||!_.hasOwnProperty("selectable")})(R)&&(Pe(W),J(R)))})({item:c(Rn),i:Tt}))),De("keydown",oa,J2(uC(function(b){O4.call(this,e,b)}))),sA(Io,oa)}),sA($i,cn)},It=$i=>{var cn=zi(),Io=at(cn),Rn=Tt=>{var fa=zi();ya(at(fa),e,"empty",{},oa=>{sA(oa,SBA())}),sA(Tt,fa)};zA(Io,Tt=>{yA()||Tt(Rn)},!0),sA($i,cn)};zA(Na,$i=>{c(g),uA(()=>c(g).length>0)?$i(Vt):$i(It,!1)},!0),sA(ai,Xi)};zA(dt,ai=>{uA(()=>A.list)?ai(Ut):ai(io,!1)});var Zi=kA(dt,2),nn=ai=>{var Xi=zi();ya(at(Xi),e,"list-append",{},null),sA(ai,Xi)};zA(Zi,ai=>{uA(()=>A["list-append"])&&ai(nn)}),Ms(Ce,ai=>ga?.(ai)),ta(Ce,ai=>N(Rt,ai),()=>c(Rt)),Tr(()=>De("scroll",Ce,Qn)),Tr(()=>De("pointerup",Ce,J2(uC(function(ai){O4.call(this,e,ai)})))),Tr(()=>De("mousedown",Ce,J2(uC(function(ai){O4.call(this,e,ai)})))),Le(()=>LA=Ci(Ce,1,"svelte-select-list svelte-1ul7oo4",null,LA,{prefloat:c(va)})),sA(EA,Ce)};zA(de,EA=>{NA()&&EA(xi)});var wn=kA(de,2),xn=gA(wn),na=EA=>{var LA=_BA(),Ce=at(LA),Te=gA(Ce),gt=gA(kA(Ce,2));Le(()=>{Ht(Te,c(s)),Ht(gt,c(l))}),sA(EA,LA)};zA(xn,EA=>{z()&&EA(na)});var Ra=kA(wn,2);ya(gA(Ra),e,"prepend",{},null);var Oi=kA(Ra,2),ko=gA(Oi),ar=EA=>{var LA=zi(),Ce=at(LA),Te=dt=>{var Ut=zi();Da(at(Ut),1,j,Ka,(io,Zi,nn)=>{var ai,Xi=RBA(),Na=gA(Xi);ya(gA(Na),e,"selection",{get selection(){return c(Zi)},index:nn},$i=>{var cn=mr();Le(()=>Ht(cn,(c(Zi),Y(wA()),uA(()=>c(Zi)[wA()])))),sA($i,cn)});var Vt=kA(Na,2),It=$i=>{var cn=xBA();ya(gA(cn),e,"multi-clear-icon",{},Io=>{h_(Io)}),De("pointerup",cn,J2(uC(()=>OA(nn)))),sA($i,cn)};zA(Vt,$i=>{F()||x()||!h_||$i(It)}),Le(()=>ai=Ci(Xi,1,"multi-item svelte-1ul7oo4",null,ai,{active:c(Ke)===nn,disabled:F()})),De("click",Xi,J2(()=>x()?OA(nn):{})),De("keydown",Xi,J2(uC(function($i){O4.call(this,e,$i)}))),sA(io,Xi)}),sA(dt,Ut)},gt=dt=>{var Ut,io=NBA();ya(gA(io),e,"selection",{get selection(){return j()}},Zi=>{var nn=mr();Le(()=>Ht(nn,(Y(j()),Y(wA()),uA(()=>j()[wA()])))),sA(Zi,nn)}),Le(()=>Ut=Ci(io,1,"selected-item svelte-1ul7oo4",null,Ut,{"hide-selected-item":c(o)})),sA(dt,io)};zA(Ce,dt=>{M()?dt(Te):dt(gt,!1)}),sA(EA,LA)};zA(ko,EA=>{c(n)&&EA(ar)});var To=kA(ko,2);Lw(To,()=>Fe(Fe({readOnly:!hA()},c(iA)),{},{placeholder:c(r),style:Ae(),disabled:F()}),void 0,void 0,void 0,"svelte-1ul7oo4",!0),ta(To,EA=>k(EA),()=>k());var ja=kA(Oi,2),to=gA(ja),Wi=EA=>{var LA=FBA();ya(gA(LA),e,"loading-icon",{},Ce=>{(function(Te){sA(Te,bBA())})(Ce)}),sA(EA,LA)};zA(to,EA=>{te()&&EA(Wi)});var ei=kA(to,2),qn=EA=>{var LA=LBA();ya(gA(LA),e,"clear-icon",{},Ce=>{h_(Ce)}),De("click",LA,Sn),sA(EA,LA)};zA(ei,EA=>{c(a)&&EA(qn)});var _o=kA(ei,2),qo=EA=>{var LA=GBA();ya(gA(LA),e,"chevron-icon",{get listOpen(){return NA()}},Ce=>{(function(Te){sA(Te,DBA())})(Ce)}),sA(EA,LA)};zA(_o,EA=>{fe()&&EA(qo)});var SA=kA(ja,2);ya(SA,e,"input-hidden",{get value(){return j()}},EA=>{var LA=KBA();Le(Ce=>{jn(LA,"name",v()),tI(LA,Ce)},[()=>(Y(j()),uA(()=>j()?JSON.stringify(j()):null))]),sA(EA,LA)});var ee=kA(SA,2),be=EA=>{var LA=zi();ya(at(LA),e,"required",{get value(){return j()}},Ce=>{sA(Ce,UBA())}),sA(EA,LA)};return zA(ee,EA=>{Y(bA()),Y(j()),uA(()=>bA()&&(!j()||j().length===0))&&EA(be)}),Tr(()=>De("pointerup",Uo,J2(mn))),ta(Uo,EA=>S(EA),()=>S()),Ms(Uo,EA=>Vo?.(EA)),Le(()=>{var EA;pa=Ci(Uo,1,"svelte-select ".concat((EA=vt())!==null&&EA!==void 0?EA:""),"svelte-1ul7oo4",pa,{multi:M(),disabled:F(),focused:z(),"list-open":NA(),"show-chevron":fe(),error:ue()}),wg(Uo,qA())}),De("keydown",To,rt),De("blur",To,ze),De("focus",To,je),zw(To,X),sA(i,Uo),Ai(e,"getFilteredItems",YA),Ai(e,"handleClear",Sn),Yt(ca)}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -table.jse-transform-wizard.svelte-9wqi8y { - border-collapse: collapse; - border-spacing: 0; - width: 100%; -} -table.jse-transform-wizard.svelte-9wqi8y input:where(.svelte-9wqi8y) { - font-family: inherit; - font-size: inherit; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) th:where(.svelte-9wqi8y) { - font-weight: normal; - text-align: left; - width: 60px; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) { - width: 100%; - display: flex; - flex-direction: row; - margin-bottom: calc(0.5 * var(--jse-padding, 10px)); -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select .multi-item { - align-items: center; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select .value-container { - gap: 0 !important; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-filter-path { - flex: 4; - margin-right: calc(0.5 * var(--jse-padding, 10px)); -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-filter-relation { - flex: 1.5; - margin-right: calc(0.5 * var(--jse-padding, 10px)); -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-sort-path { - flex: 3; - margin-right: calc(0.5 * var(--jse-padding, 10px)); -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-sort-direction { - flex: 1; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-projection-paths { - flex: 1; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select input { - box-sizing: border-box; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .jse-filter-value:where(.svelte-9wqi8y) { - flex: 4; - padding: 4px 8px; - border: var(--jse-input-border, 1px solid #d8dbdf); - border-radius: var(--jse-input-radius, 3px); - outline: none; - background: var(--jse-input-background, var(--jse-background-color, #fff)); - color: inherit; -} -table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .jse-filter-value:where(.svelte-9wqi8y):focus { - border: var(--jse-input-border-focus, 1px solid var(--jse-input-border-focus, var(--jse-theme-color, #3883fa))); -}`);var OBA=TA('
    Filter
    Sort
    Pick
    ');function JBA(i,e){var A,t,n,o,a;Jt(e,!1);var r=cA(void 0,!0),s=cA(void 0,!0),l=cA(void 0,!0),g=cA(void 0,!0),C=cA(void 0,!0),d=cA(void 0,!0),B=dr("jsoneditor:TransformWizard"),u=K(e,"json",9),E=K(e,"queryOptions",29,()=>({})),f=K(e,"onChange",9),m=["==","!=","<","<=",">",">="].map(HA=>({value:HA,label:HA})),v=[{value:"asc",label:"ascending"},{value:"desc",label:"descending"}],S=cA((A=E())!==null&&A!==void 0&&(A=A.filter)!==null&&A!==void 0&&A.path?j2(E().filter.path):void 0,!0),k=cA((t=m.find(HA=>{var bA;return HA.value===((bA=E().filter)===null||bA===void 0?void 0:bA.relation)}))!==null&&t!==void 0?t:m[0],!0),M=cA(((n=E())===null||n===void 0||(n=n.filter)===null||n===void 0?void 0:n.value)||"",!0),x=cA((o=E())!==null&&o!==void 0&&(o=o.sort)!==null&&o!==void 0&&o.path?j2(E().sort.path):void 0,!0),F=cA((a=v.find(HA=>{var bA;return HA.value===((bA=E().sort)===null||bA===void 0?void 0:bA.direction)}))!==null&&a!==void 0?a:v[0],!0);KA(()=>Y(u()),()=>{N(r,Array.isArray(u()))}),KA(()=>(c(r),Y(u())),()=>{N(s,c(r)?x_(u()):[])}),KA(()=>(c(r),Y(u())),()=>{N(l,c(r)?x_(u(),!0):[])}),KA(()=>(c(s),j2),()=>{N(g,c(s).map(j2))}),KA(()=>(c(l),j2),()=>{N(C,c(l)?c(l).map(j2):[])}),KA(()=>(Y(E()),c(C),Ui),()=>{var HA;N(d,(HA=E())!==null&&HA!==void 0&&(HA=HA.projection)!==null&&HA!==void 0&&HA.paths&&c(C)?E().projection.paths.map(bA=>c(C).find(PA=>Ui(PA.value,bA))).filter(bA=>!!bA):void 0)}),KA(()=>c(S),()=>{var HA,bA,PA;bA=(HA=c(S))===null||HA===void 0?void 0:HA.value,Ui((PA=E())===null||PA===void 0||(PA=PA.filter)===null||PA===void 0?void 0:PA.path,bA)||(B("changeFilterPath",bA),E(qr(E(),["filter","path"],bA,!0)),f()(E()))}),KA(()=>c(k),()=>{var HA,bA,PA;bA=(HA=c(k))===null||HA===void 0?void 0:HA.value,Ui((PA=E())===null||PA===void 0||(PA=PA.filter)===null||PA===void 0?void 0:PA.relation,bA)||(B("changeFilterRelation",bA),E(qr(E(),["filter","relation"],bA,!0)),f()(E()))}),KA(()=>c(M),()=>{var HA,bA;HA=c(M),Ui((bA=E())===null||bA===void 0||(bA=bA.filter)===null||bA===void 0?void 0:bA.value,HA)||(B("changeFilterValue",HA),E(qr(E(),["filter","value"],HA,!0)),f()(E()))}),KA(()=>c(x),()=>{var HA,bA,PA;bA=(HA=c(x))===null||HA===void 0?void 0:HA.value,Ui((PA=E())===null||PA===void 0||(PA=PA.sort)===null||PA===void 0?void 0:PA.path,bA)||(B("changeSortPath",bA),E(qr(E(),["sort","path"],bA,!0)),f()(E()))}),KA(()=>c(F),()=>{var HA,bA,PA;bA=(HA=c(F))===null||HA===void 0?void 0:HA.value,Ui((PA=E())===null||PA===void 0||(PA=PA.sort)===null||PA===void 0?void 0:PA.direction,bA)||(B("changeSortDirection",bA),E(qr(E(),["sort","direction"],bA,!0)),f()(E()))}),KA(()=>c(d),()=>{(function(HA){var bA;Ui((bA=E())===null||bA===void 0||(bA=bA.projection)===null||bA===void 0?void 0:bA.paths,HA)||(B("changeProjectionPaths",HA),E(qr(E(),["projection","paths"],HA,!0)),f()(E()))})(c(d)?c(d).map(HA=>HA.value):void 0)}),Vn(),di(!0);var z=OBA(),j=gA(z),X=gA(j),eA=kA(gA(X)),Z=gA(eA),CA=gA(Z);Hd(CA,{class:"jse-filter-path",showChevron:!0,get items(){return c(g)},get value(){return c(S)},set value(HA){N(S,HA)},$$legacy:!0});var wA=kA(CA,2);Hd(wA,{class:"jse-filter-relation",showChevron:!0,clearable:!1,get items(){return m},get value(){return c(k)},set value(HA){N(k,HA)},$$legacy:!0});var BA=kA(wA,2),QA=kA(X),RA=kA(gA(QA)),dA=gA(RA),IA=gA(dA);Hd(IA,{class:"jse-sort-path",showChevron:!0,get items(){return c(g)},get value(){return c(x)},set value(HA){N(x,HA)},$$legacy:!0}),Hd(kA(IA,2),{class:"jse-sort-direction",showChevron:!0,clearable:!1,get items(){return v},get value(){return c(F)},set value(HA){N(F,HA)},$$legacy:!0});var xA=kA(QA),qA=kA(gA(xA)),ue=gA(qA);Hd(gA(ue),{class:"jse-projection-paths",multiple:!0,showChevron:!0,get items(){return c(C)},get value(){return c(d)},set value(HA){N(d,HA)},$$legacy:!0}),zw(BA,()=>c(M),HA=>N(M,HA)),sA(i,z),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-select-query-language.svelte-jrd4q2 { - position: relative; - width: 32px; -} -.jse-select-query-language.svelte-jrd4q2 .jse-select-query-language-container:where(.svelte-jrd4q2) { - position: absolute; - top: 0; - right: 0; - display: flex; - flex-direction: column; - box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); -} -.jse-select-query-language.svelte-jrd4q2 .jse-select-query-language-container:where(.svelte-jrd4q2) .jse-query-language:where(.svelte-jrd4q2) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - text-align: left; - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - white-space: nowrap; - color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); - background: var(--jse-context-menu-background, #656565); -} -.jse-select-query-language.svelte-jrd4q2 .jse-select-query-language-container:where(.svelte-jrd4q2) .jse-query-language:where(.svelte-jrd4q2):hover { - background: var(--jse-context-menu-background-highlight, #7a7a7a); -}`);var YBA=TA(''),HBA=TA('
    ');function zBA(i,e){Jt(e,!1);var A=K(e,"queryLanguages",8),t=K(e,"queryLanguageId",12),n=K(e,"onChangeQueryLanguage",8);di();var o=HBA();Da(gA(o),5,A,Ka,(a,r)=>{var s,l=YBA(),g=gA(l),C=u=>{Bn(u,{get data(){return DM}})},d=u=>{Bn(u,{get data(){return vM}})};zA(g,u=>{c(r),Y(t()),uA(()=>c(r).id===t())?u(C):u(d,!1)});var B=kA(g);Le(()=>{var u;s=Ci(l,1,"jse-query-language svelte-jrd4q2",null,s,{selected:c(r).id===t()}),jn(l,"title",(c(r),uA(()=>"Select ".concat(c(r).name," as query language")))),Ht(B," ".concat((c(r),(u=uA(()=>c(r).name))!==null&&u!==void 0?u:"")))}),De("click",l,()=>{return u=c(r).id,t(u),void n()(u);var u}),sA(a,l)}),sA(i,o),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-header.svelte-1k211ye { - display: flex; - background: var(--jse-theme-color, #3883fa); - color: var(--jse-menu-color, var(--jse-text-color-inverse, #fff)); -} -.jse-header.svelte-1k211ye .jse-title:where(.svelte-1k211ye) { - flex: 1; - padding: 5px; - vertical-align: middle; -} -.jse-header.svelte-1k211ye button:where(.svelte-1k211ye) { - border: none; - background: transparent; - min-width: 32px; - color: inherit; - cursor: pointer; -} -.jse-header.svelte-1k211ye button:where(.svelte-1k211ye):hover { - background: rgba(255, 255, 255, 0.1); -}`);var PBA=TA(''),jBA=TA('
    ');function o5(i,e){Jt(e,!1);var A=K(e,"title",9,"Modal"),t=K(e,"fullScreenButton",9,!1),n=K(e,"fullscreen",13,!1),o=K(e,"onClose",9,void 0);di(!0);var a=jBA(),r=gA(a),s=gA(r),l=kA(r,2);ya(l,e,"actions",{},null);var g=kA(l,2),C=B=>{var u=PBA(),E=gA(u),f=lt(()=>n()?CJ:rJ);Bn(E,{get data(){return c(f)}}),De("click",u,()=>n(!n())),sA(B,u)};zA(g,B=>{t()&&B(C)});var d=kA(g,2);Bn(gA(d),{get data(){return Ou}}),Le(()=>Ht(s,A())),De("click",d,()=>{var B;return(B=o())===null||B===void 0?void 0:B()}),sA(i,a),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-config.svelte-5gkegr { - border: none; - background: transparent; - min-width: 32px; - color: inherit; - cursor: pointer; -} -.jse-config.svelte-5gkegr:hover { - background: rgba(255, 255, 255, 0.1); -} -.jse-config.hide.svelte-5gkegr { - display: none; -}`);var VBA=TA(''),E_=dr("jsoneditor:AutoScrollHandler");function BV(i){var e,A;function t(r){return r<20?200:r<50?400:1200}function n(){if(i){var r=.05*(e||0);i.scrollTop+=r}}function o(r){A&&r===e||(a(),E_("startAutoScroll",r),e=r,A=setInterval(n,50))}function a(){A&&(E_("stopAutoScroll"),clearInterval(A),A=void 0,e=void 0)}return E_("createAutoScrollHandler",i),{onDrag:function(r){if(i){var s=r.clientY,{top:l,bottom:g}=i.getBoundingClientRect();sg?o(t(s-g)):a()}},onDragEnd:function(){a()}}}var qBA=(i,e,A,t)=>(i/=t/2)<1?A/2*i*i+e:-A/2*(--i*(i-2)-1)+e,BW=()=>{var i,e,A,t,n,o,a,r,s,l,g,C,d;function B(f){return f.getBoundingClientRect().top-(i.getBoundingClientRect?i.getBoundingClientRect().top:0)+A}function u(f){i.scrollTo?i.scrollTo(i.scrollLeft,f):i.scrollTop=f}function E(f){l||(l=f),u(o(g=f-l,A,r,s)),d=!0,g1&&arguments[1]!==void 0?arguments[1]:{};switch(s=1e3,n=m.offset||0,C=m.callback,o=m.easing||qBA,a=m.a11y||!1,typeof m.container){case"object":i=m.container;break;case"string":i=document.querySelector(m.container);break;default:i=window.document.documentElement}switch(A=i.scrollTop,typeof f){case"number":e=void 0,a=!1,t=A+f;break;case"object":t=B(e=f);break;case"string":e=document.querySelector(f),t=B(e)}switch(r=t-A+n,typeof m.duration){case"number":s=m.duration;break;case"function":s=m.duration(r)}d?l=0:requestAnimationFrame(E)}};function Kh(i,e){var A=Date.now(),t=i();return e(Date.now()-A),t}var xh=dr("validation"),WBA={createObjectDocumentState:()=>({type:"object",properties:{}}),createArrayDocumentState:()=>({type:"array",items:[]}),createValueDocumentState:()=>({type:"value"})};function hV(i,e,A,t){return px(i,e,A,t,WBA)}function hW(i,e,A,t){if(xh("validateJSON"),!e)return[];if(A!==t){var n=A.stringify(i);return e(n!==void 0?t.parse(n):void 0)}return e(i)}function ZBA(i,e,A,t){if(xh("validateText"),i.length>104857600)return{validationErrors:[{path:[],message:"Validation turned off: the document is too large",severity:Ec.info}]};if(i.length!==0)try{var n=Kh(()=>A.parse(i),s=>xh("validate: parsed json in ".concat(s," ms")));if(!e)return;var o=A===t?n:Kh(()=>t.parse(i),s=>xh("validate: parsed json with the validationParser in ".concat(s," ms"))),a=Kh(()=>e(o),s=>xh("validate: validated json in ".concat(s," ms")));return An(a)?void 0:{validationErrors:a}}catch(s){var r=Kh(()=>(function(l,g){if(l.length>bIA)return!1;try{return g.parse(gg(l)),!0}catch(C){return!1}})(i,A),l=>xh("validate: checked whether repairable in ".concat(l," ms")));return{parseError:Xh(i,s.message||s.toString()),isRepairable:r}}}var bw=dr("jsoneditor:FocusTracker");function vx(i){var e,{onMount:A,onDestroy:t,getWindow:n,hasFocus:o,onFocus:a,onBlur:r}=i,s=!1;function l(){var C=o();C&&(clearTimeout(e),s||(bw("focus"),a(),s=C))}function g(){s&&(clearTimeout(e),e=setTimeout(()=>{o()||(bw("blur"),s=!1,r())}))}A(()=>{bw("mount FocusTracker");var C=n();C&&(C.addEventListener("focusin",l,!0),C.addEventListener("focusout",g,!0))}),t(()=>{bw("destroy FocusTracker");var C=n();C&&(C.removeEventListener("focusin",l,!0),C.removeEventListener("focusout",g,!0))})}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-message.svelte-cbvd26 { - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - padding: var(--jse-padding, 10px); - display: flex; - gap: var(--jse-padding, 10px); - flex-wrap: wrap; - align-items: stretch; -} -.jse-message.jse-success.svelte-cbvd26 { - background: var(--message-success-background, #9ac45d); - color: var(--jse-message-success-color, #fff); -} -.jse-message.svelte-cbvd26 .jse-text:where(.svelte-cbvd26) { - display: flex; - flex: 1; - min-width: 60%; - align-items: center; -} -.jse-message.svelte-cbvd26 .jse-text.jse-clickable:where(.svelte-cbvd26) { - cursor: pointer; -} -.jse-message.svelte-cbvd26 .jse-text.jse-clickable:where(.svelte-cbvd26):hover { - background-color: rgba(255, 255, 255, 0.1); -} -.jse-message.jse-error.svelte-cbvd26 { - background: var(--jse-message-error-background, var(--jse-error-color, #ee5341)); - color: var(--jse-message-error-color, #fff); -} -.jse-message.jse-warning.svelte-cbvd26 { - background: var(--jse-message-warning-background, #ffde5c); - color: var(--jse-message-warning-color, #4d4d4d); -} -.jse-message.jse-info.svelte-cbvd26 { - background: var(--jse-message-info-background, #4f91ff); - color: var(--jse-message-info-color, #fff); -} -.jse-message.svelte-cbvd26 .jse-actions:where(.svelte-cbvd26) { - display: flex; - gap: var(--jse-padding, 10px); -} -.jse-message.svelte-cbvd26 .jse-actions:where(.svelte-cbvd26) button.jse-action:where(.svelte-cbvd26) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-message-action-background, rgba(255, 255, 255, 0.2)); - color: inherit; - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); -} -.jse-message.svelte-cbvd26 .jse-actions:where(.svelte-cbvd26) button.jse-action:where(.svelte-cbvd26):hover { - background: var(--jse-message-action-background-highlight, rgba(255, 255, 255, 0.3)); -}`);var XBA=TA(''),$BA=TA('
    ');function Hl(i,e){Jt(e,!1);var A=K(e,"type",9,"success"),t=K(e,"icon",9,void 0),n=K(e,"message",9,void 0),o=K(e,"actions",25,()=>[]),a=K(e,"onClick",9,void 0),r=K(e,"onClose",9,void 0);r()&&Dg(r()),di(!0);var s,l=$BA(),g=gA(l),C=gA(g),d=gA(C),B=E=>{Bn(E,{get data(){return t()}})};zA(d,E=>{t()&&E(B)});var u=kA(d);Da(kA(g,2),5,o,Ka,(E,f)=>{var m=XBA(),v=gA(m),S=M=>{Bn(M,{get data(){return c(f),uA(()=>c(f).icon)}})};zA(v,M=>{c(f),uA(()=>c(f).icon)&&M(S)});var k=kA(v);Le(()=>{var M;jn(m,"title",(c(f),uA(()=>c(f).title))),m.disabled=(c(f),uA(()=>c(f).disabled)),Ht(k," ".concat((c(f),(M=uA(()=>c(f).text))!==null&&M!==void 0?M:"")))}),De("click",m,()=>{c(f).onClick&&c(f).onClick()}),De("mousedown",m,()=>{c(f).onMouseDown&&c(f).onMouseDown()}),sA(E,m)}),Le(()=>{var E,f;Ci(l,1,"jse-message jse-".concat((E=A())!==null&&E!==void 0?E:""),"svelte-cbvd26"),s=Ci(g,1,"jse-text svelte-cbvd26",null,s,{"jse-clickable":!!a()}),Ht(u," ".concat((f=n())!==null&&f!==void 0?f:""))}),De("click",g,function(){a()&&a()()}),sA(i,l),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-validation-errors-overview.svelte-1342rh4 { - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - overflow: auto; - max-height: 25%; -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) { - border-collapse: collapse; - width: 100%; -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) { - cursor: pointer; -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-error:where(.svelte-1342rh4) { - background: var(--jse-message-error-background, var(--jse-error-color, #ee5341)); - color: var(--jse-message-error-color, #fff); -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-warning:where(.svelte-1342rh4) { - background: var(--jse-message-warning-background, #ffde5c); - color: var(--jse-message-warning-color, #4d4d4d); -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-warning:where(.svelte-1342rh4):hover { - filter: brightness(105%); -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-info:where(.svelte-1342rh4) { - background: var(--jse-message-info-background, #4f91ff); - color: var(--jse-message-info-color, #fff); -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4):hover { - filter: brightness(110%); -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td:where(.svelte-1342rh4) { - padding: 4px var(--jse-padding, 10px); - vertical-align: middle; -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-icon:where(.svelte-1342rh4) { - width: 36px; - box-sizing: border-box; -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-action:where(.svelte-1342rh4) { - width: 36px; - box-sizing: border-box; - padding: 0; -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-action:where(.svelte-1342rh4) button.jse-validation-errors-collapse:where(.svelte-1342rh4) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - width: 36px; - height: 26px; - cursor: pointer; -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-action:where(.svelte-1342rh4) button.jse-validation-errors-collapse:where(.svelte-1342rh4):hover { - background-color: rgba(255, 255, 255, 0.2); -} -.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td:where(.svelte-1342rh4) div.jse-validation-errors-expand:where(.svelte-1342rh4) { - display: inline-block; - position: relative; - top: 3px; -}`);var AhA=TA(''),ehA=TA(' '),thA=TA(' '),ihA=TA('
    '),nhA=TA('
    '),ohA=TA('
    ');function bx(i,e){Jt(e,!1);var A=cA(void 0,!0),t=K(e,"validationErrors",9),n=K(e,"selectError",9),o=cA(!0,!0);function a(){N(o,!1)}function r(){N(o,!0)}KA(()=>Y(t()),()=>{N(A,t().length)}),Vn(),di(!0);var s=zi(),l=at(s),g=C=>{var d=ohA(),B=gA(d),u=f=>{var m=ihA(),v=gA(m),S=gA(v);Da(S,1,()=>(Y(Pw),Y(t()),Y(fw),uA(()=>Pw(t(),fw))),Ka,(x,F,z)=>{var j=ehA(),X=gA(j);Bn(gA(X),{get data(){return w2}});var eA=kA(X),Z=gA(eA),CA=kA(eA),wA=gA(CA),BA=gA(kA(CA)),QA=RA=>{var dA=AhA();Bn(gA(dA),{get data(){return cJ}}),De("click",dA,uC(a)),sA(RA,dA)};zA(BA,RA=>{Y(t()),uA(()=>z===0&&t().length>1)&&RA(QA)}),Le(RA=>{var dA;Ci(j,1,"jse-validation-".concat((c(F),(dA=uA(()=>c(F).severity))!==null&&dA!==void 0?dA:"")),"svelte-1342rh4"),Ht(Z,RA),Ht(wA,(c(F),uA(()=>c(F).message)))},[()=>(Y(El),c(F),uA(()=>El(c(F).path)))]),De("click",j,()=>{setTimeout(()=>n()(c(F)))}),sA(x,j)});var k=kA(S),M=x=>{var F=thA(),z=kA(gA(F),2),j=gA(z);Le(()=>Ht(j,"(and ".concat(c(A)-fw," more errors)"))),sA(x,F)};zA(k,x=>{c(A)>fw&&x(M)}),sA(f,m)},E=f=>{var m=nhA(),v=gA(m),S=gA(v),k=gA(S);Bn(gA(k),{get data(){return w2}});var M=gA(kA(k));Bn(gA(kA(M)),{get data(){return _M}}),Le(x=>{var F;Ci(S,1,"jse-validation-".concat(x??""),"svelte-1342rh4"),Ht(M,"".concat((F=c(A))!==null&&F!==void 0?F:""," validation errors "))},[()=>(Y(t()),uA(()=>{return x=t(),[Ec.error,Ec.warning,Ec.info].find(F=>x.some(z=>z.severity===F));var x}))]),De("click",S,r),sA(f,m)};zA(B,f=>{c(o)||c(A)===1?f(u):f(E,!1)}),sA(C,d)};zA(l,C=>{Y(An),Y(t()),uA(()=>!An(t()))&&C(g)}),sA(i,s),Yt()}function a5(i,e){if(i)return i.addEventListener("keydown",A),{destroy(){i.removeEventListener("keydown",A)}};function A(t){t.key==="Escape"&&(t.preventDefault(),t.stopPropagation(),e())}}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -dialog.jse-modal.svelte-2aoco4 { - border-radius: 3px; - font-size: var(--jse-padding, 10px); - border: none; - padding: 0; - display: flex; - min-width: 0; - margin: auto; - overflow: visible; - transition: width 0.1s ease-in-out, height 0.1s ease-in-out; -} -dialog.jse-modal.jse-sort-modal.svelte-2aoco4 { - width: 400px; -} -dialog.jse-modal.jse-repair-modal.svelte-2aoco4 { - width: 600px; - height: 500px; -} -dialog.jse-modal.jse-jsoneditor-modal.svelte-2aoco4 { - width: 800px; - height: 600px; -} -dialog.jse-modal.jse-transform-modal.svelte-2aoco4 { - width: 1200px; - height: 800px; -} -dialog.jse-modal.jse-fullscreen.svelte-2aoco4 { - width: 100%; - height: 100%; -} -dialog.jse-modal.svelte-2aoco4::backdrop { - background: var(--jse-overlay-background, rgba(0, 0, 0, 0.3)); -} -dialog.jse-modal[open].svelte-2aoco4 { - animation: svelte-2aoco4-zoom 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); -} -dialog.jse-modal[open].svelte-2aoco4::backdrop { - animation: svelte-2aoco4-fade 0.2s ease-out; -} -dialog.jse-modal.svelte-2aoco4 .jse-modal-inner:where(.svelte-2aoco4) { - flex: 1; - display: flex; - flex-direction: column; - min-width: 0; - min-height: 0; - padding: 0; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - line-height: normal; - background: var(--jse-modal-background, #f5f5f5); - color: var(--jse-text-color, #4d4d4d); -} -@keyframes svelte-2aoco4-zoom { - from { - transform: scale(0.95); - } - to { - transform: scale(1); - } -} -@keyframes svelte-2aoco4-fade { - from { - opacity: 0; - } - to { - opacity: 1; - } -} -dialog.jse-modal.svelte-2aoco4 .svelte-select { - --border: var(--jse-svelte-select-border, 1px solid #d8dbdf); - --item-is-active-bg: var(--jse-item-is-active-bg, #3883fa); - --border-radius: var(--jse-svelte-select-border-radius, 3px); - --background: var(--jse-svelte-select-background, #fff); - --padding: var(--jse-svelte-select-padding, 0 10px); - --multi-select-padding: var(--jse-svelte-select-multi-select-padding, 0 10px); - --font-size: var(--jse-svelte-select-font-size, var(--jse-font-size, 16px)); - --height: 36px; - --multi-item-height: 28px; - --multi-item-margin: 2px; - --multi-item-padding: 2px 8px; - --multi-item-border-radius: 6px; - --indicator-top: 8px; -}`);var ahA=TA('
    ');function np(i,e){Jt(e,!1);var A=K(e,"className",8,void 0),t=K(e,"fullscreen",8,!1),n=K(e,"onClose",8),o=cA();function a(){n()()}os(()=>c(o).showModal()),Dg(()=>c(o).close()),di();var r,s=ahA(),l=gA(s);ya(gA(l),e,"default",{},null),ta(s,g=>N(o,g),()=>c(o)),Tr(()=>De("close",s,a)),Tr(()=>{return De("pointerdown",s,(g=a,function(){for(var C=arguments.length,d=new Array(C),B=0;BDe("cancel",s,J2(function(g){O4.call(this,e,g)}))),Ms(s,(g,C)=>a5?.(g,C),()=>a),Le(g=>r=Ci(s,1,g,"svelte-2aoco4",r,{"jse-fullscreen":t()}),[()=>o1((Y(wc),Y(A()),uA(()=>wc("jse-modal",A()))))]),sA(i,s),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-modal-contents.svelte-10a6ob6 { - flex: 1; - display: flex; - flex-direction: column; - padding: 20px; - overflow: auto; - min-width: 0; - min-height: 0; -} -.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) { - display: flex; - flex-direction: row; - justify-content: flex-end; - padding-top: var(--jse-padding, 10px); -} -.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) button.jse-primary:where(.svelte-10a6ob6) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); - color: var(--jse-button-primary-color, #fff); - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - border-radius: 3px; -} -.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) button.jse-primary:where(.svelte-10a6ob6):hover { - background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); -} -.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) button.jse-primary:where(.svelte-10a6ob6):disabled { - background: var(--jse-button-primary-background-disabled, #9d9d9d); -} - -.jse-shortcuts.svelte-10a6ob6 { - display: flex; - flex-wrap: wrap; - justify-content: space-around; - margin: calc(2 * var(--jse-padding, 10px)) 0; -} -.jse-shortcuts.svelte-10a6ob6 .jse-shortcut:where(.svelte-10a6ob6) .jse-key:where(.svelte-10a6ob6) { - font-size: 200%; - color: var(--jse-theme-color, #3883fa); -}`);var rhA=TA('
    Clipboard permission is disabled by your browser. You can use:
    for copy
    for cut
    for paste
    ',1);function EW(i,e){Jt(e,!1);var A=K(e,"onClose",9),t=Cx()?"\u2318":"Ctrl";di(!0),np(i,{get onClose(){return A()},className:"jse-copy-paste",children:(n,o)=>{var a=rhA(),r=at(a);o5(r,{title:"Copying and pasting",get onClose(){return A()}});var s=kA(r,2),l=kA(gA(s),2),g=gA(l),C=gA(g),d=gA(C),B=kA(g,2),u=gA(B),E=gA(u),f=gA(kA(B,2)),m=gA(f),v=gA(kA(l,2));Le(()=>{Ht(d,"".concat(t,"+C")),Ht(E,"".concat(t,"+X")),Ht(m,"".concat(t,"+V"))}),De("click",v,function(){for(var S,k=arguments.length,M=new Array(k),x=0;x'),lhA=TA('
    '),ghA=TA(''),chA=TA('
    ');function p5(i,e){Jt(e,!1);var A=K(e,"items",25,()=>[]);di(!0);var t=chA(),n=gA(t);ya(n,e,"left",{},null);var o=kA(n,2);Da(o,1,A,Ka,(a,r)=>{var s=zi(),l=at(s),g=d=>{sA(d,shA())},C=d=>{var B=zi(),u=at(B),E=m=>{sA(m,lhA())},f=m=>{var v=zi(),S=at(v),k=x=>{var F=ghA(),z=gA(F),j=Z=>{Bn(Z,{get data(){return c(r),uA(()=>c(r).icon)}})};zA(z,Z=>{c(r),uA(()=>c(r).icon)&&Z(j)});var X=kA(z,2),eA=Z=>{var CA=mr();Le(()=>Ht(CA,(c(r),uA(()=>c(r).text)))),sA(Z,CA)};zA(X,Z=>{c(r),uA(()=>c(r).text)&&Z(eA)}),Le(()=>{var Z;Ci(F,1,"jse-button ".concat((c(r),(Z=uA(()=>c(r).className))!==null&&Z!==void 0?Z:"")),"svelte-3erbu0"),jn(F,"title",(c(r),uA(()=>c(r).title))),F.disabled=(c(r),uA(()=>c(r).disabled||!1))}),De("click",F,function(){for(var Z,CA=arguments.length,wA=new Array(CA),BA=0;BA{var F=mr();Le(z=>Ht(F,z),[()=>(c(r),uA(()=>(function(z){return console.error("Unknown type of menu item",z),"???"})(c(r))))]),sA(x,F)};zA(S,x=>{Y(pC),c(r),uA(()=>pC(c(r)))?x(k):x(M,!1)},!0),sA(m,v)};zA(u,m=>{Y(L_),c(r),uA(()=>L_(c(r)))?m(E):m(f,!1)},!0),sA(d,B)};zA(l,d=>{Y(P2),c(r),uA(()=>P2(c(r)))?d(g):d(C,!1)}),sA(a,s)}),ya(kA(o,2),e,"right",{},null),sA(i,t),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-json-repair-component.svelte-16jv58j { - flex: 1; - display: flex; - flex-direction: column; - background: var(--jse-background-color, #fff); - color: var(--jse-text-color, #4d4d4d); -} -.jse-json-repair-component.svelte-16jv58j .jse-info:where(.svelte-16jv58j) { - padding: calc(0.5 * var(--jse-padding, 10px)); - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - vertical-align: center; -} -.jse-json-repair-component.svelte-16jv58j .jse-json-text:where(.svelte-16jv58j) { - flex: 1; - border: none; - padding: 2px; - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - background: var(--jse-input-background, var(--jse-background-color, #fff)); - color: var(--jse-text-color, #4d4d4d); - resize: none; - outline: none; -}`);var ChA=TA('
    Repair invalid JSON, then click apply
    '),dhA=TA('
    ');function IhA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),n=cA(void 0,!0),o=cA(void 0,!0),a=cA(void 0,!0),r=cA(void 0,!0),s=K(e,"text",13,""),l=K(e,"readOnly",9,!1),g=K(e,"onParse",9),C=K(e,"onRepair",9),d=K(e,"onChange",9,void 0),B=K(e,"onApply",9),u=K(e,"onCancel",9),E=dr("jsoneditor:JSONRepair"),f=cA(void 0,!0);function m(){if(c(f)&&c(A)){var eA=c(A).position!==void 0?c(A).position:0;c(f).setSelectionRange(eA,eA),c(f).focus()}}function v(){B()(s())}function S(){try{s(C()(s())),d()&&d()(s())}catch(eA){}}var k=cA(void 0,!0);KA(()=>Y(s()),()=>{N(A,(function(eA){try{return void g()(eA)}catch(Z){return Xh(eA,Z.message)}})(s()))}),KA(()=>Y(s()),()=>{N(t,(function(eA){try{return C()(eA),!0}catch(Z){return!1}})(s()))}),KA(()=>c(A),()=>{E("error",c(A))}),KA(()=>Y(u()),()=>{N(k,[{type:"space"},{type:"button",icon:Ou,title:"Cancel repair",className:"jse-cancel",onClick:u()}])}),KA(()=>NM,()=>{N(n,{icon:NM,text:"Show me",title:"Scroll to the error location",onClick:m})}),KA(()=>oC,()=>{N(o,{icon:oC,text:"Auto repair",title:"Automatically repair JSON",onClick:S})}),KA(()=>(c(t),c(n),c(o)),()=>{N(a,c(t)?[c(n),c(o)]:[c(n)])}),KA(()=>Y(l()),()=>{N(r,[{icon:w6,text:"Apply",title:"Apply fixed JSON",disabled:l(),onClick:v}])}),Vn(),di(!0);var M=dhA(),x=gA(M);p5(x,{get items(){return c(k)},$$slots:{left:(eA,Z)=>{sA(eA,ChA())}}});var F=kA(x,2),z=eA=>{var Z=lt(()=>(c(A),uA(()=>"Cannot parse JSON: ".concat(c(A).message))));Hl(eA,{type:"error",get icon(){return w2},get message(){return c(Z)},get actions(){return c(a)}})},j=eA=>{Hl(eA,{type:"success",message:"JSON is valid now and can be parsed.",get actions(){return c(r)}})};zA(F,eA=>{c(A)?eA(z):eA(j,!1)});var X=kA(F,2);ta(X,eA=>N(f,eA),()=>c(f)),Le(()=>{X.readOnly=l(),tI(X,s())}),De("input",X,function(eA){E("handleChange");var Z=eA.target.value;s()!==Z&&(s(Z),d()&&d()(s()))}),sA(i,M),Yt()}function QW(i,e){Jt(e,!1);var A=K(e,"text",13),t=K(e,"onParse",9),n=K(e,"onRepair",9),o=K(e,"onApply",9),a=K(e,"onClose",9);function r(l){o()(l),a()()}function s(){a()()}di(!0),np(i,{get onClose(){return a()},className:"jse-repair-modal",children:(l,g)=>{IhA(l,{get onParse(){return t()},get onRepair(){return n()},onApply:r,onCancel:s,get text(){return A()},set text(C){A(C)},$$legacy:!0})},$$slots:{default:!0}}),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -div.jse-collapsed-items.svelte-1v6dhm4 { - margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - color: var(--jse-collapsed-items-link-color, rgba(0, 0, 0, 0.38)); - padding: calc(0.5 * var(--jse-padding, 10px)); - border: 8px solid transparent; - border-width: 8px 0; - background-color: var(--jse-contents-background-color, transparent); - background-image: linear-gradient(var(--jse-collapsed-items-background-color, #f5f5f5), var(--jse-collapsed-items-background-color, #f5f5f5)), linear-gradient(to bottom right, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%), linear-gradient(to bottom left, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%), linear-gradient(to top right, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%), linear-gradient(to top left, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%); - background-repeat: repeat, repeat-x, repeat-x, repeat-x, repeat-x; - background-position: 0 0, 8px 0, 8px 0, 8px 100%, 8px 100%; - background-size: auto auto, 16px 16px, 16px 16px, 16px 16px, 16px 16px; - background-clip: padding-box, border-box, border-box, border-box, border-box; - background-origin: padding-box, border-box, border-box, border-box, border-box; - display: flex; -} -div.jse-collapsed-items.jse-selected.svelte-1v6dhm4 { - background-color: var(--jse-selection-background-color, #d3d3d3); - --jse-collapsed-items-background-color: var(--jse-collapsed-items-selected-background-color, #c2c2c2); -} -div.jse-collapsed-items.svelte-1v6dhm4 div.jse-text:where(.svelte-1v6dhm4), -div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4) { - margin: 0 calc(0.5 * var(--jse-padding, 10px)); -} -div.jse-collapsed-items.svelte-1v6dhm4 div.jse-text:where(.svelte-1v6dhm4) { - display: inline; -} -div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4) { - font-family: inherit; - font-size: inherit; - color: var(--jse-collapsed-items-link-color, rgba(0, 0, 0, 0.38)); - background: none; - border: none; - padding: 0; - text-decoration: underline; - cursor: pointer; -} -div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4):hover, div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4):focus { - color: var(--jse-collapsed-items-link-color-highlight, #ee5341); -}`);var BhA=TA(''),hhA=TA('
    ');function EhA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),n=cA(void 0,!0),o=cA(void 0,!0),a=cA(void 0,!0),r=K(e,"visibleSections",9),s=K(e,"sectionIndex",9),l=K(e,"total",9),g=K(e,"path",9),C=K(e,"selection",9),d=K(e,"onExpandSection",9),B=K(e,"context",9);KA(()=>(Y(r()),Y(s())),()=>{N(A,r()[s()])}),KA(()=>c(A),()=>{N(t,c(A).end)}),KA(()=>(Y(r()),Y(s()),Y(l())),()=>{N(n,r()[s()+1]?r()[s()+1].start:l())}),KA(()=>(Y(B()),Y(C()),Y(g()),c(t)),()=>{N(o,ep(B().getJson(),C(),g().concat(String(c(t)))))}),KA(()=>(c(t),c(n)),()=>{N(a,(function(k,M){var x={start:k,end:Math.min(F_(k),M)},F=Math.max(Vw((k+M)/2),k),z={start:F,end:Math.min(F_(F),M)},j=Vw(M),X=j===M?j-Z4:j,eA={start:Math.max(X,k),end:M},Z=[x],CA=z.start>=x.end&&z.end<=eA.start;return CA&&Z.push(z),eA.start>=(CA?z.end:x.end)&&Z.push(eA),Z})(c(t),c(n)))}),Vn(),di(!0);var u,E,f=hhA(),m=gA(f),v=gA(m),S=gA(v);Da(kA(v,2),1,()=>c(a),Ka,(k,M)=>{var x=BhA(),F=gA(x);Le(()=>{var z,j;return Ht(F,"show ".concat((c(M),(z=uA(()=>c(M).start))!==null&&z!==void 0?z:""),"-").concat((c(M),(j=uA(()=>c(M).end))!==null&&j!==void 0?j:"")))}),De("click",x,()=>d()(g(),c(M))),sA(k,x)}),Le(()=>{var k,M;u=Ci(f,1,"jse-collapsed-items svelte-1v6dhm4",null,u,{"jse-selected":c(o)}),E=wg(f,"",E,{"--level":(Y(g()),uA(()=>g().length+2))}),Ht(S,"Items ".concat((k=c(t))!==null&&k!==void 0?k:"","-").concat((M=c(n))!==null&&M!==void 0?M:""))}),De("mousemove",f,function(k){k.stopPropagation()}),sA(i,f),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-context-menu-pointer.svelte-10ijtzr { - position: absolute; - top: calc(-0.5 * var(--jse-context-menu-pointer-size, calc(1em + 4px))); - right: calc(-0.5 * var(--jse-context-menu-pointer-size, calc(1em + 4px))); - width: var(--jse-context-menu-pointer-size, calc(1em + 4px)); - height: var(--jse-context-menu-pointer-size, calc(1em + 4px)); - padding: 0; - margin: 0; - cursor: pointer; - background: transparent; - border-radius: 2px; - background: var(--jse-context-menu-pointer-hover-background, #b2b2b2); - color: var(--jse-context-menu-pointer-color, var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff))); - border: none; - box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); -} -.jse-context-menu-pointer.jse-root.svelte-10ijtzr { - top: 0; - right: calc(-2px - var(--jse-context-menu-pointer-size, calc(1em + 4px))); -} -.jse-context-menu-pointer.jse-insert.svelte-10ijtzr { - right: -1px; -} -.jse-context-menu-pointer.svelte-10ijtzr:hover { - background: var(--jse-context-menu-pointer-background-highlight, var(--jse-context-menu-background-highlight, #7a7a7a)); -} -.jse-context-menu-pointer.jse-selected.svelte-10ijtzr { - background: var(--jse-context-menu-pointer-background, var(--jse-context-menu-background, #656565)); -} -.jse-context-menu-pointer.jse-selected.svelte-10ijtzr:hover { - background: var(--jse-context-menu-pointer-background-highlight, var(--jse-context-menu-background-highlight, #7a7a7a)); -}`);var QhA=TA('');function Y2(i,e){Jt(e,!1);var A=K(e,"root",9,!1),t=K(e,"insert",9,!1),n=K(e,"selected",9),o=K(e,"onContextMenu",9);di(!0);var a,r=QhA();Bn(gA(r),{get data(){return r0}}),Le(()=>{a=Ci(r,1,"jse-context-menu-pointer svelte-10ijtzr",null,a,{"jse-root":A(),"jse-insert":t(),"jse-selected":n()}),jn(r,"title",Ix)}),De("click",r,function(s){for(var l=s.target;l&&l.nodeName!=="BUTTON";)l=l.parentNode;l&&o()({anchor:l,left:0,top:0,width:yC,height:wC,offsetTop:2,offsetLeft:0,showTip:!0})}),sA(i,r),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-key.svelte-1n4cez4 { - display: inline-block; - min-width: 2em; - padding: 0 5px; - box-sizing: border-box; - outline: none; - border-radius: 1px; - vertical-align: top; - color: var(--jse-key-color, #1a1a1a); - word-break: normal; - overflow-wrap: normal; - white-space: pre-wrap; -} -.jse-key.jse-empty.svelte-1n4cez4 { - min-width: 3em; - outline: 1px dotted var(--jse-tag-background, rgba(0, 0, 0, 0.2)); - -moz-outline-radius: 2px; -} -.jse-key.jse-empty.svelte-1n4cez4::after { - pointer-events: none; - color: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); - content: "key"; -}`);var uhA=TA('
    '),phA=TA(" ",1),fhA=TA('
    ');function uW(i,e){Jt(e,!0);var A=Bl(()=>bn(e.selection)&&gr(e.selection)),t=Bl(()=>e.context.onRenderValue({path:e.path,value:e.value,mode:e.context.mode,truncateTextSize:e.context.truncateTextSize,readOnly:e.context.readOnly,enforceString:e.enforceString,isEditing:c(A),parser:e.context.parser,normalization:e.context.normalization,selection:e.selection,searchResultItems:e.searchResultItems,onPatch:e.context.onPatch,onPasteJson:e.context.onPasteJson,onSelect:e.context.onSelect,onFind:e.context.onFind,findNextInside:e.context.findNextInside,focus:e.context.focus})),n=zi();Da(at(n),17,()=>c(t),Ka,(o,a)=>{var r=zi(),s=at(r),l=C=>{var d=Bl(()=>c(a).action),B=fhA();Ms(B,(u,E)=>{var f;return(f=c(d))===null||f===void 0?void 0:f(u,E)},()=>c(a).props),sA(C,B)},g=C=>{var d=Bl(()=>c(a).component),B=zi();fq(at(B),()=>c(d),(u,E)=>{E(u,t1(()=>c(a).props))}),sA(C,B)};zA(s,C=>{xIA(c(a))?C(l):C(g,!1)}),sA(o,r)}),sA(i,n),Yt()}var mhA={selecting:!1,selectionAnchor:void 0,selectionAnchorType:void 0,selectionFocus:void 0,dragging:!1};function Q_(i){var{json:e,selection:A,deltaY:t,items:n}=i;if(!A)return{operations:void 0,updatedSelection:void 0,offset:0};var o=t<0?(function(g){for(var{json:C,items:d,selection:B,deltaY:u}=g,E=DC(C,B),f=d.findIndex(x=>Ui(x.path,E)),m=()=>{var x;return(x=d[v-1])===null||x===void 0?void 0:x.height},v=f,S=0;m()!==void 0&&Math.abs(u)>S+m()/2;)S+=m(),v-=1;var k=d[v].path,M=v-f;return v!==f&&d[v]!==void 0?{beforePath:k,offset:M}:void 0})({json:e,selection:A,deltaY:t,items:n}):(function(g){for(var C,{json:d,items:B,selection:u,deltaY:E}=g,f=n1(d,u),m=B.findIndex(X=>Ui(X.path,f)),v=0,S=m,k=()=>{var X;return(X=B[S+1])===null||X===void 0?void 0:X.height};k()!==void 0&&Math.abs(E)>v+k()/2;)v+=k(),S+=1;var M=an(f),x=$e(d,M),F=Array.isArray(x)?S:S+1,z=(C=B[F])===null||C===void 0?void 0:C.path,j=S-m;return z?{beforePath:z,offset:j}:{append:!0,offset:j}})({json:e,selection:A,deltaY:t,items:n});if(!o||o.offset===0)return{operations:void 0,updatedSelection:void 0,offset:0};var a=(function(g,C,d){if(!C)return[];var B="beforePath"in d?d.beforePath:void 0,u="append"in d?d.append:void 0,E=an(Qt(C)),f=$e(g,E);if(!(u||B&&v0(B,E)&&B.length>E.length))return[];var m=DC(g,C),v=n1(g,C),S=Ji(m),k=Ji(v),M=B?B[E.length]:void 0;if(!Ea(f)){if(sa(f)){var x=Or(S),F=Or(k),z=M!==void 0?Or(M):f.length;return sF(F-x+1,z({op:"move",from:xt(E.concat(String(x+CA))),path:xt(E.concat(String(z+CA)))}):()=>({op:"move",from:xt(E.concat(String(x))),path:xt(E.concat(String(z)))}))}throw new Error("Cannot create move operations: parent must be an Object or Array")}var j=Object.keys(f),X=j.indexOf(S),eA=j.indexOf(k),Z=u?j.length:M!==void 0?j.indexOf(M):-1;return X!==-1&&eA!==-1&&Z!==-1?Z>X?[...j.slice(X,eA+1),...j.slice(Z,j.length)].map(CA=>r1(E,CA)):[...j.slice(Z,X),...j.slice(eA+1,j.length)].map(CA=>r1(E,CA)):[]})(e,A,o),r=an(DC(e,A)),s=$e(e,r);if(Array.isArray(s)){var l=(function(g){var C,d,{items:B,json:u,selection:E,offset:f}=g,m=DC(u,E),v=n1(u,E),S=B.findIndex(F=>Ui(F.path,m)),k=B.findIndex(F=>Ui(F.path,v)),M=(C=B[S+f])===null||C===void 0?void 0:C.path,x=(d=B[k+f])===null||d===void 0?void 0:d.path;return vs(M,x)})({items:n,json:e,selection:A,offset:o.offset});return{operations:a,updatedSelection:l,offset:o.offset}}return{operations:a,updatedSelection:void 0,offset:o.offset}}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -button.jse-validation-error.svelte-q6a061 { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - padding: 0; - margin: 0; - vertical-align: top; - display: inline-flex; - color: var(--jse-error-color, #ee5341); -} - -button.jse-validation-info.svelte-q6a061 { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - padding: 0; - margin: 0; - vertical-align: top; - display: inline-flex; - color: var(--jse-info-color, #4f91ff); -} - -button.jse-validation-warning.svelte-q6a061 { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - padding: 0; - margin: 0; - vertical-align: top; - display: inline-flex; - color: var(--jse-warning-color, #fdc539); -}`);var whA=TA('');function zh(i,e){Jt(e,!1);var A=cA(),t=s1("absolute-popup"),n=K(e,"validationError",8),o=K(e,"onExpand",8);KA(()=>Y(n()),()=>{N(A,_IA(n())&&n().isChildError?"Contains invalid data":n().message)}),Vn(),di();var a=whA();Bn(gA(a),{get data(){return w2}}),Tr(()=>De("click",a,function(){for(var r,s=arguments.length,l=new Array(s),g=0;gtE?.(r,s),()=>Fe({text:c(A)},t)),Le(()=>{var r;return Ci(a,1,"jse-validation-".concat((Y(n()),(r=uA(()=>n().severity))!==null&&r!==void 0?r:"")),"svelte-q6a061")}),sA(i,a),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-expand.svelte-1qi6rc1 { - width: var(--jse-indent-size, calc(1em + 4px)); - padding: 0; - margin: 0; - border: none; - cursor: pointer; - background: transparent; - color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); - font-size: var(--jse-font-size-mono, 14px); - height: var(--jse-line-height, calc(1em + 4px)); -} -.jse-expand.svelte-1qi6rc1:hover { - opacity: 0.8; -} - -.jse-meta.svelte-1qi6rc1, -.jse-separator.svelte-1qi6rc1, -.jse-index.svelte-1qi6rc1, -.jse-bracket.svelte-1qi6rc1 { - vertical-align: top; - color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); -} - -.jse-index.svelte-1qi6rc1 { - padding: 0 calc(0.5 * var(--jse-padding, 10px)); -} - -.jse-bracket.svelte-1qi6rc1 { - padding: 0 2px; -} -.jse-bracket.jse-expanded.svelte-1qi6rc1 { - padding-right: var(--jse-padding, 10px); -} - -.jse-identifier.svelte-1qi6rc1 { - vertical-align: top; - position: relative; -} - -.jse-json-node.svelte-1qi6rc1 { - position: relative; - color: var(--jse-text-color, #4d4d4d); -} -.jse-json-node.jse-root.svelte-1qi6rc1 { - min-height: 100%; - padding-bottom: 2px; - box-sizing: border-box; -} -.jse-json-node.jse-root.svelte-1qi6rc1 > .jse-contents-outer:where(.svelte-1qi6rc1) > .jse-contents:where(.svelte-1qi6rc1) { - padding-left: 0; -} -.jse-json-node.svelte-1qi6rc1 .jse-props:where(.svelte-1qi6rc1), -.jse-json-node.svelte-1qi6rc1 .jse-items:where(.svelte-1qi6rc1) { - position: relative; -} -.jse-json-node.svelte-1qi6rc1 .jse-header-outer:where(.svelte-1qi6rc1), -.jse-json-node.svelte-1qi6rc1 .jse-footer-outer:where(.svelte-1qi6rc1) { - display: flex; - margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); -} -.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1) { - position: relative; -} -.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1) .jse-meta:where(.svelte-1qi6rc1) > .jse-meta-inner:where(.svelte-1qi6rc1) { - display: flex; - justify-content: center; -} -.jse-json-node.svelte-1qi6rc1 .jse-contents-outer:where(.svelte-1qi6rc1) { - display: flex; - margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); -} -.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1), -.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1) { - display: flex; - flex-direction: row; - align-items: flex-start; -} -.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1) { - padding-left: var(--jse-indent-size, calc(1em + 4px)); - cursor: var(--jse-contents-cursor, pointer); -} -.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1) .jse-value-outer:where(.svelte-1qi6rc1) { - display: inline-flex; -} -.jse-json-node.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1) { - display: inline-flex; - padding-left: calc(var(--jse-indent-size, calc(1em + 4px)) + 5px); -} -.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1), -.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1), -.jse-json-node.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1) { - background: var(--jse-contents-background-color, transparent); -} -.jse-json-node.svelte-1qi6rc1 .jse-insert-selection-area:where(.svelte-1qi6rc1) { - padding: 0 calc(0.5 * var(--jse-padding, 10px)); - flex: 1; -} -.jse-json-node.svelte-1qi6rc1 .jse-insert-selection-area.jse-inside:where(.svelte-1qi6rc1) { - display: inline-flex; - align-items: center; -} -.jse-json-node.svelte-1qi6rc1 .jse-insert-selection-area.jse-after:where(.svelte-1qi6rc1) { - display: flex; - align-items: flex-end; -} -.jse-json-node.svelte-1qi6rc1 .jse-context-menu-pointer-anchor:where(.svelte-1qi6rc1) { - position: relative; -} -.jse-json-node.svelte-1qi6rc1 .jse-insert-area:where(.svelte-1qi6rc1) { - display: flex; - position: relative; - z-index: 1; - margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); - max-width: 250px; - min-width: 100px; - height: 0; - margin-right: calc(0.5 * var(--jse-padding, 10px)); - outline: 1px solid; -} -.jse-json-node.svelte-1qi6rc1 .jse-insert-area.jse-hovered:where(.svelte-1qi6rc1) { - outline-color: var(--jse-context-menu-pointer-hover-background, #b2b2b2); -} -.jse-json-node.svelte-1qi6rc1 .jse-key-outer:where(.svelte-1qi6rc1) { - position: relative; -} -.jse-json-node.svelte-1qi6rc1 .jse-key-outer:where(.svelte-1qi6rc1):hover, -.jse-json-node.svelte-1qi6rc1 .jse-value-outer:where(.svelte-1qi6rc1):hover, -.jse-json-node.svelte-1qi6rc1 .jse-meta:where(.svelte-1qi6rc1):hover, -.jse-json-node.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1):hover { - background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); - cursor: var(--jse-contents-cursor, pointer); -} -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-meta, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-header, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-contents, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-header, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-contents, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-footer { - background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); - cursor: var(--jse-contents-cursor, pointer); -} -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-value-outer .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-value-outer .jse-meta, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-meta .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-meta .jse-meta, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-header .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-header .jse-meta, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-contents .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-contents .jse-meta, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-header .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-header .jse-meta, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-contents .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-contents .jse-meta, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-footer .jse-value-outer, -.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-footer .jse-meta { - background: none; -} -.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1), -.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1), -.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1) { - background: var(--jse-selection-background-color, #d3d3d3); - cursor: var(--jse-contents-selected-cursor, grab); -} -.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-key-outer:where(.svelte-1qi6rc1):hover, -.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-value-outer:where(.svelte-1qi6rc1):hover, -.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-meta:where(.svelte-1qi6rc1):hover, -.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1):hover { - background: inherit; - cursor: inherit; -} -.jse-json-node.svelte-1qi6rc1 .jse-key-outer.jse-selected-key:where(.svelte-1qi6rc1) { - background: var(--jse-selection-background-color, #d3d3d3); - cursor: var(--jse-contents-selected-cursor, grab); -} -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-value-outer, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-meta, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-header, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-contents, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-header, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-contents, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-footer { - background: var(--jse-selection-background-color, #d3d3d3); - cursor: var(--jse-contents-selected-cursor, grab); -} -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-value-outer .jse-key-outer:hover, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-meta .jse-key-outer:hover, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-header .jse-key-outer:hover, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-contents .jse-key-outer:hover, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-header .jse-key-outer:hover, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-contents .jse-key-outer:hover, -.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-footer .jse-key-outer:hover { - background: inherit; - cursor: inherit; -} -.jse-json-node.jse-readonly.svelte-1qi6rc1 { - --jse-contents-selected-cursor: pointer; -} -.jse-json-node.svelte-1qi6rc1 .jse-insert-area.jse-selected:where(.svelte-1qi6rc1) { - outline-color: var(--jse-context-menu-pointer-background, var(--jse-context-menu-background, #656565)); -}`);var Aa=C5(()=>mhA),yhA=TA('
    :
    '),DhA=TA('
    [
     ',1),vhA=TA('
    [
    ]
    ',1),bhA=TA('
    '),MhA=TA('
    '),ShA=TA('
    '),khA=TA('
    '),_hA=TA('
    '),xhA=TA(" ",1),RhA=TA('
    '),NhA=TA('
    ',1),FhA=TA('
    ',1),LhA=TA('
    :
    '),GhA=TA('
    {
    '),KhA=TA('
    {
    }
    ',1),UhA=TA('
    '),ThA=TA('
    '),OhA=TA('
    '),JhA=TA('
    '),YhA=TA('
    '),HhA=TA('
    '),zhA=TA('
    ',1),PhA=TA('
    ',1),jhA=TA('
    :
    '),VhA=TA('
    '),qhA=TA('
    '),WhA=TA('
    '),ZhA=TA('
    '),XhA=TA('
    ');function j_(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),n=K(e,"pointer",9),o=K(e,"value",9),a=K(e,"state",9),r=K(e,"validationErrors",9),s=K(e,"searchResults",9),l=K(e,"selection",9),g=K(e,"context",9),C=K(e,"onDragSelectionStart",9),d=dr("jsoneditor:JSONNode"),B=cA(void 0,!0),u=void 0,E=cA(void 0,!0),f=cA(void 0,!0),m=cA(void 0,!0),v=cA(void 0,!0),S=cA(void 0,!0),k=cA(void 0,!0),M=cA(void 0,!0);function x(YA){YA.stopPropagation();var hA=dx(YA);g().onExpand(c(f),!c(m),hA)}function F(){g().onExpand(c(f),!0)}function z(YA,hA){var Ae=Ep(c(f),Object.keys(o()),YA,hA);return g().onPatch(Ae),Ji(ms(Ae[0].path))}function j(YA){g().onDrag(YA)}function X(YA){Aa().selecting&&(Aa(Aa().selecting=!1),YA.stopPropagation()),g().onDragEnd(),document.removeEventListener("mousemove",j,!0),document.removeEventListener("mouseup",X)}function eA(){var YA;return((YA=g().findElement([]))===null||YA===void 0||(YA=YA.getBoundingClientRect())===null||YA===void 0?void 0:YA.top)||0}function Z(YA,hA){var Ae=eA()-YA.initialContentTop;return hA.clientY-YA.initialClientY-Ae}function CA(YA){if(!g().readOnly&&l()){var hA=an(Qt(l()));if(Ui(c(f),hA)){var Ae=(function(JA,yA){var Pt=[];function Dt($){var iA=c(f).concat($),oA=g().findElement(iA);oA!==void 0&&Pt.push({path:iA,height:oA.clientHeight})}if(Array.isArray(o())){var fe=g().getJson();if(fe===void 0)return;var Zt=DC(fe,JA),Pe=n1(fe,JA),qe=parseInt(Ji(Zt),10),vt=parseInt(Ji(Pe),10),Ke=yA.find($=>qe>=$.start&&vt<=$.end);if(!Ke)return;var{start:Ii,end:V}=Ke;bq(Ii,Math.min(o().length,V),$=>Dt(String($)))}else Object.keys(o()).forEach(Dt);return Pt})(l(),c(S)||Jh);if(d("dragSelectionStart",{selection:l(),items:Ae}),Ae){var pA=g().getJson();if(pA!==void 0){var te=DC(pA,l()),NA=Ae.findIndex(JA=>Ui(JA.path,te)),{offset:Ge}=Q_({json:pA,selection:g().getSelection(),deltaY:0,items:Ae});N(E,{initialTarget:YA.target,initialClientY:YA.clientY,initialContentTop:eA(),selectionStartIndex:NA,selectionItemsCount:a1(pA,l()).length,items:Ae,offset:Ge,didMoveItems:!1}),Aa(Aa().dragging=!0),document.addEventListener("mousemove",wA,!0),document.addEventListener("mouseup",BA)}}else d("Cannot drag the current selection (probably spread over multiple sections)")}else C()(YA)}}function wA(YA){if(c(E)){var hA=g().getJson();if(hA===void 0)return;var Ae=Z(c(E),YA),{offset:pA}=Q_({json:hA,selection:g().getSelection(),deltaY:Ae,items:c(E).items});pA!==c(E).offset&&(d("drag selection",pA,Ae),N(E,Fe(Fe({},c(E)),{},{offset:pA,didMoveItems:!0})))}}function BA(YA){if(c(E)){var hA=g().getJson();if(hA===void 0)return;var Ae=Z(c(E),YA),{operations:pA,updatedSelection:te}=Q_({json:hA,selection:g().getSelection(),deltaY:Ae,items:c(E).items});if(pA)g().onPatch(pA,(JA,yA)=>({state:yA,selection:te??l()}));else if(YA.target===c(E).initialTarget&&!c(E).didMoveItems){var NA=o_(YA.target),Ge=Uq(YA.target);Ge&&g().onSelect(Zj(NA,Ge))}N(E,void 0),Aa(Aa().dragging=!1),document.removeEventListener("mousemove",wA,!0),document.removeEventListener("mouseup",BA)}}function QA(YA){YA.shiftKey||(YA.stopPropagation(),YA.preventDefault(),g().onSelect(FC(c(f))))}function RA(YA){YA.shiftKey||(YA.stopPropagation(),YA.preventDefault(),g().onSelect(SC(c(f))))}function dA(YA){g().onSelect(FC(c(f))),jo(),g().onContextMenu(YA)}function IA(YA){g().onSelect(SC(c(f))),jo(),g().onContextMenu(YA)}KA(()=>Y(n()),()=>{N(f,ms(n()))}),KA(()=>Y(n()),()=>{N(A,encodeURIComponent(n()))}),KA(()=>Y(a()),()=>{N(m,!!iI(a())&&a().expanded)}),KA(()=>(Y(o()),Y(a())),()=>{N(v,m0(o(),a(),[]))}),KA(()=>Y(a()),()=>{N(S,cr(a())?a().visibleSections:void 0)}),KA(()=>Y(r()),()=>{var YA;N(k,(YA=r())===null||YA===void 0?void 0:YA.validationError)}),KA(()=>(Y(g()),Y(l()),c(f)),()=>{N(M,ep(g().getJson(),l(),c(f)))}),KA(()=>c(f),()=>{N(t,c(f).length===0)}),Vn(),di(!0);var xA,qA,ue=XhA(),HA=gA(ue),bA=YA=>{var hA=FhA(),Ae=at(hA),pA=gA(Ae),te=gA(pA),NA=gA(te),Ge=GA=>{Bn(GA,{get data(){return r0}})},JA=GA=>{Bn(GA,{get data(){return JB}})};zA(NA,GA=>{c(m)?GA(Ge):GA(JA,!1)});var yA=kA(te,2);ya(yA,e,"identifier",{},null);var Pt=kA(yA,2),Dt=GA=>{sA(GA,yhA())};zA(Pt,GA=>{c(t)||GA(Dt)});var fe=kA(Pt,2),Zt=gA(fe),Pe=gA(Zt),qe=GA=>{var OA=DhA();Tw(kA(at(OA),2),{children:(wt,rt)=>{var je=mr();Le(()=>{var ze,pi;return Ht(je,"".concat((Y(o()),(ze=uA(()=>o().length))!==null&&ze!==void 0?ze:""),` - `).concat((Y(o()),(pi=uA(()=>o().length===1?"item":"items"))!==null&&pi!==void 0?pi:"")))}),sA(wt,je)},$$slots:{default:!0}}),sA(GA,OA)},vt=GA=>{var OA=vhA();Tw(kA(at(OA),2),{onclick:F,children:(wt,rt)=>{var je=mr();Le(()=>{var ze,pi;return Ht(je,"".concat((Y(o()),(ze=uA(()=>o().length))!==null&&ze!==void 0?ze:""),` - `).concat((Y(o()),(pi=uA(()=>o().length===1?"item":"items"))!==null&&pi!==void 0?pi:"")))}),sA(wt,je)},$$slots:{default:!0}}),sA(GA,OA)};zA(Pe,GA=>{c(m)?GA(qe):GA(vt,!1)});var Ke=kA(fe,2),Ii=GA=>{var OA=bhA();Y2(gA(OA),{get root(){return c(t)},selected:!0,get onContextMenu(){return Y(g()),uA(()=>g().onContextMenu)}}),sA(GA,OA)};zA(Ke,GA=>{Y(g()),c(M),Y(l()),Y(bn),Y(bo),Y(gr),Y(Ui),Y(Qt),c(f),uA(()=>!g().readOnly&&c(M)&&l()&&(bn(l())||bo(l()))&&!gr(l())&&Ui(Qt(l()),c(f)))&&GA(Ii)});var V=kA(pA,2),$=GA=>{zh(GA,{get validationError(){return c(k)},onExpand:F})};zA(V,GA=>{c(k),c(m),uA(()=>c(k)&&(!c(m)||!c(k).isChildError))&&GA($)});var iA=kA(V,2),oA=GA=>{var OA=MhA();De("click",OA,QA),sA(GA,OA)},UA=GA=>{var OA=ShA();De("click",OA,RA),sA(GA,OA)};zA(iA,GA=>{c(m)?GA(oA):GA(UA,!1)});var he=kA(Ae,2),me=GA=>{var OA=NhA(),wt=at(OA),rt=gA(wt),je=Sn=>{var He,En,Gi=khA(),Pi=gA(Gi),gn=lt(()=>(c(M),Y(nr),Y(l()),uA(()=>c(M)&&nr(l()))));Y2(Pi,{insert:!0,get selected(){return c(gn)},onContextMenu:dA}),Le(Rt=>{He=Ci(Gi,1,"jse-insert-area jse-inside svelte-1qi6rc1",null,He,Rt),jn(Gi,"title",s_),En=wg(Gi,"",En,{"--level":(c(f),uA(()=>c(f).length+1))})},[()=>({"jse-hovered":c(B)===Ud,"jse-selected":c(M)&&nr(l())})]),sA(Sn,Gi)};zA(rt,Sn=>{Y(g()),c(B),Y(Ud),c(M),Y(nr),Y(l()),uA(()=>!g().readOnly&&(c(B)===Ud||c(M)&&nr(l())))&&Sn(je)}),Da(kA(rt,2),1,()=>c(S)||Jh,Ka,(Sn,He,En)=>{var Gi=xhA(),Pi=at(Gi);Da(Pi,1,()=>(Y(o()),c(He),c(E),uA(()=>(function(Qn,jt,J){var ut=jt.start,bi=Math.min(jt.end,Qn.length),kn=YD(ut,bi);return J&&J.offset!==0?_j(kn,J.selectionStartIndex,J.selectionItemsCount,J.offset).map((_n,Co)=>({index:_n,gutterIndex:Co})):kn.map(_n=>({index:_n,gutterIndex:_n}))})(o(),c(He),c(E)))),Qn=>Qn.index,(Qn,jt)=>{var J=lt(()=>(Y(cr),Y(r()),c(jt),uA(()=>cr(r())?r().items[c(jt).index]:void 0))),ut=lt(()=>(Y(yw),Y(g()),Y(l()),c(f),c(jt),uA(()=>yw(g().getJson(),l(),c(f).concat(String(c(jt).index)))))),bi=zi(),kn=at(bi),_n=lt(()=>(Y(_u),Y(n()),c(jt),uA(()=>_u(n(),c(jt).index)))),Co=lt(()=>(Y(cr),Y(a()),c(jt),uA(()=>cr(a())?a().items[c(jt).index]:void 0))),ia=lt(()=>(Y(cr),Y(s()),c(jt),uA(()=>cr(s())?s().items[c(jt).index]:void 0)));j_(kn,{get value(){return Y(o()),c(jt),uA(()=>o()[c(jt).index])},get pointer(){return c(_n)},get state(){return c(Co)},get validationErrors(){return c(J)},get searchResults(){return c(ia)},get selection(){return c(ut)},get context(){return g()},onDragSelectionStart:CA,$$slots:{identifier:(So,Vo)=>{var ga=_hA(),Ko=gA(ga),va=gA(Ko);Le(()=>Ht(va,(c(jt),uA(()=>c(jt).gutterIndex)))),sA(So,ga)}}}),sA(Qn,bi)});var gn=kA(Pi,2),Rt=Qn=>{var jt=lt(()=>c(S)||Jh);EhA(Qn,{get visibleSections(){return c(jt)},sectionIndex:En,get total(){return Y(o()),uA(()=>o().length)},get path(){return c(f)},get onExpandSection(){return Y(g()),uA(()=>g().onExpandSection)},get selection(){return l()},get context(){return g()}})};zA(gn,Qn=>{c(He),Y(o()),uA(()=>c(He).end{var He=RhA();De("click",He,RA),sA(Sn,He)};zA(pi,Sn=>{c(t)||Sn(mn)}),sA(GA,OA)};zA(he,GA=>{c(m)&&GA(me)}),De("click",te,x),sA(YA,hA)},PA=YA=>{var hA=zi(),Ae=at(hA),pA=NA=>{var Ge=PhA(),JA=at(Ge),yA=gA(JA),Pt=gA(yA),Dt=gA(Pt),fe=ze=>{Bn(ze,{get data(){return r0}})},Zt=ze=>{Bn(ze,{get data(){return JB}})};zA(Dt,ze=>{c(m)?ze(fe):ze(Zt,!1)});var Pe=kA(Pt,2);ya(Pe,e,"identifier",{},null);var qe=kA(Pe,2),vt=ze=>{sA(ze,LhA())};zA(qe,ze=>{c(t)||ze(vt)});var Ke=kA(qe,2),Ii=gA(Ke),V=gA(Ii),$=ze=>{sA(ze,GhA())},iA=ze=>{var pi=KhA();Tw(kA(at(pi),2),{onclick:F,children:(mn,Sn)=>{var He=mr();Le((En,Gi)=>Ht(He,"".concat(En??"",` - `).concat(Gi??"")),[()=>(Y(o()),uA(()=>Object.keys(o()).length)),()=>(Y(o()),uA(()=>Object.keys(o()).length===1?"prop":"props"))]),sA(mn,He)},$$slots:{default:!0}}),sA(ze,pi)};zA(V,ze=>{c(m)?ze($):ze(iA,!1)});var oA=kA(Ke,2),UA=ze=>{var pi=UhA();Y2(gA(pi),{get root(){return c(t)},selected:!0,get onContextMenu(){return Y(g()),uA(()=>g().onContextMenu)}}),sA(ze,pi)};zA(oA,ze=>{Y(g()),c(M),Y(l()),Y(bn),Y(bo),Y(gr),Y(Ui),Y(Qt),c(f),uA(()=>!g().readOnly&&c(M)&&l()&&(bn(l())||bo(l()))&&!gr(l())&&Ui(Qt(l()),c(f)))&&ze(UA)});var he=kA(yA,2),me=ze=>{zh(ze,{get validationError(){return c(k)},onExpand:F})};zA(he,ze=>{c(k),c(m),uA(()=>c(k)&&(!c(m)||!c(k).isChildError))&&ze(me)});var GA=kA(he,2),OA=ze=>{var pi=ThA();De("click",pi,QA),sA(ze,pi)},wt=ze=>{var pi=zi(),mn=at(pi),Sn=He=>{var En=OhA();De("click",En,RA),sA(He,En)};zA(mn,He=>{c(t)||He(Sn)},!0),sA(ze,pi)};zA(GA,ze=>{c(m)?ze(OA):ze(wt,!1)});var rt=kA(JA,2),je=ze=>{var pi=zhA(),mn=at(pi),Sn=gA(mn),He=gn=>{var Rt,Qn,jt=JhA(),J=gA(jt),ut=lt(()=>(c(M),Y(nr),Y(l()),uA(()=>c(M)&&nr(l()))));Y2(J,{insert:!0,get selected(){return c(ut)},onContextMenu:dA}),Le(bi=>{Rt=Ci(jt,1,"jse-insert-area jse-inside svelte-1qi6rc1",null,Rt,bi),jn(jt,"title",s_),Qn=wg(jt,"",Qn,{"--level":(c(f),uA(()=>c(f).length+1))})},[()=>({"jse-hovered":c(B)===Ud,"jse-selected":c(M)&&nr(l())})]),sA(gn,jt)};zA(Sn,gn=>{Y(g()),c(B),Y(Ud),c(M),Y(nr),Y(l()),uA(()=>!g().readOnly&&(c(B)===Ud||c(M)&&nr(l())))&&gn(He)}),Da(kA(Sn,2),1,()=>(Y(o()),c(E),uA(()=>(function(gn,Rt){var Qn=Object.keys(gn);return Rt&&Rt.offset!==0?_j(Qn,Rt.selectionStartIndex,Rt.selectionItemsCount,Rt.offset):Qn})(o(),c(E)))),Ka,(gn,Rt)=>{var Qn=lt(()=>(Y(_u),Y(n()),c(Rt),uA(()=>_u(n(),c(Rt))))),jt=lt(()=>(Y(Il),Y(s()),c(Rt),uA(()=>Il(s())?s().properties[c(Rt)]:void 0))),J=lt(()=>(Y(Il),Y(r()),c(Rt),uA(()=>Il(r())?r().properties[c(Rt)]:void 0))),ut=lt(()=>(c(f),c(Rt),uA(()=>c(f).concat(c(Rt))))),bi=lt(()=>(Y(yw),Y(g()),Y(l()),Y(c(ut)),uA(()=>yw(g().getJson(),l(),c(ut))))),kn=zi(),_n=at(kn),Co=lt(()=>(Y(Il),Y(a()),c(Rt),uA(()=>Il(a())?a().properties[c(Rt)]:void 0)));j_(_n,{get value(){return Y(o()),c(Rt),uA(()=>o()[c(Rt)])},get pointer(){return c(Qn)},get state(){return c(Co)},get validationErrors(){return c(J)},get searchResults(){return c(jt)},get selection(){return c(bi)},get context(){return g()},onDragSelectionStart:CA,$$slots:{identifier:(ia,So)=>{var Vo,ga=YhA(),Ko=gA(ga),va=lt(()=>(Y(nV),Y(c(jt)),uA(()=>nV(c(jt)))));(function(ca,pa){Jt(pa,!1);var Uo=cA(void 0,!0),de=cA(void 0,!0),xi=K(pa,"pointer",9),wn=K(pa,"key",9),xn=K(pa,"selection",9),na=K(pa,"searchResultItems",9),Ra=K(pa,"onUpdateKey",9),Oi=K(pa,"context",9),ko=cA(void 0,!0);function ar(SA){c(de)||Oi().readOnly||(SA.preventDefault(),Oi().onSelect(wx(c(ko))))}function To(SA,ee){var be=Ra()(wn(),Oi().normalization.unescapeValue(SA)),EA=an(c(ko)).concat(be);Oi().onSelect(ee===i1.nextInside?en(EA):NC(EA)),ee!==i1.self&&Oi().focus()}function ja(){Oi().onSelect(NC(c(ko))),Oi().focus()}KA(()=>Y(xi()),()=>{N(ko,ms(xi()))}),KA(()=>(Y(xn()),c(ko)),()=>{N(Uo,Cr(xn())&&Ui(xn().path,c(ko)))}),KA(()=>(c(Uo),Y(xn())),()=>{N(de,c(Uo)&&gr(xn()))}),Vn(),di(!0);var to=phA(),Wi=at(to),ei=SA=>{var ee=lt(()=>(Y(Oi()),Y(wn()),uA(()=>Oi().normalization.escapeValue(wn())))),be=lt(()=>(Y(gr),Y(xn()),uA(()=>gr(xn())?xn().initialValue:void 0)));Wq(SA,{get value(){return c(ee)},get initialValue(){return c(be)},label:"Edit key",shortText:!0,onChange:To,onCancel:ja,get onFind(){return Y(Oi()),uA(()=>Oi().onFind)}})},qn=SA=>{var ee,be=uhA(),EA=gA(be),LA=Te=>{var gt=lt(()=>(Y(Oi()),Y(wn()),uA(()=>Oi().normalization.escapeValue(wn()))));iW(Te,{get text(){return c(gt)},get searchResultItems(){return na()}})},Ce=Te=>{var gt=mr();Le(dt=>Ht(gt,dt),[()=>(Y($h),Y(Oi()),Y(wn()),uA(()=>$h(Oi().normalization.escapeValue(wn()))))]),sA(Te,gt)};zA(EA,Te=>{na()?Te(LA):Te(Ce,!1)}),Le(()=>ee=Ci(be,1,"jse-key svelte-1n4cez4",null,ee,{"jse-empty":wn()===""})),De("dblclick",be,ar),sA(SA,be)};zA(Wi,SA=>{Y(Oi()),c(de),uA(()=>!Oi().readOnly&&c(de))?SA(ei):SA(qn,!1)});var _o=kA(Wi,2),qo=SA=>{Y2(SA,{selected:!0,get onContextMenu(){return Y(Oi()),uA(()=>Oi().onContextMenu)}})};zA(_o,SA=>{Y(Oi()),c(Uo),c(de),uA(()=>!Oi().readOnly&&c(Uo)&&!c(de))&&SA(qo)}),sA(ca,to),Yt()})(Ko,{get pointer(){return c(Qn)},get key(){return c(Rt)},get selection(){return c(bi)},get searchResultItems(){return c(va)},get context(){return g()},onUpdateKey:z}),Le(ca=>Vo=Ci(ga,1,"jse-key-outer svelte-1qi6rc1",null,Vo,ca),[()=>({"jse-selected-key":Cr(c(bi))&&Ui(c(bi).path,c(ut))})]),sA(ia,ga)}}}),sA(gn,kn)});var En=kA(mn,2),Gi=kA(gA(En),2),Pi=gn=>{var Rt=HhA();De("click",Rt,RA),sA(gn,Rt)};zA(Gi,gn=>{c(t)||gn(Pi)}),sA(ze,pi)};zA(rt,ze=>{c(m)&&ze(je)}),De("click",Pt,x),sA(NA,Ge)},te=NA=>{var Ge=WhA(),JA=gA(Ge),yA=gA(JA);ya(yA,e,"identifier",{},null);var Pt=kA(yA,2),Dt=oA=>{sA(oA,jhA())};zA(Pt,oA=>{c(t)||oA(Dt)});var fe=kA(Pt,2),Zt=gA(fe),Pe=lt(()=>c(M)?l():void 0),qe=lt(()=>(Y(oV),Y(s()),uA(()=>oV(s()))));uW(Zt,{get path(){return c(f)},get value(){return o()},get enforceString(){return c(v)},get selection(){return c(Pe)},get searchResultItems(){return c(qe)},get context(){return g()}});var vt=kA(fe,2),Ke=oA=>{var UA=VhA();Y2(gA(UA),{get root(){return c(t)},selected:!0,get onContextMenu(){return Y(g()),uA(()=>g().onContextMenu)}}),sA(oA,UA)};zA(vt,oA=>{Y(g()),c(M),Y(l()),Y(bn),Y(bo),Y(gr),Y(Ui),Y(Qt),c(f),uA(()=>!g().readOnly&&c(M)&&l()&&(bn(l())||bo(l()))&&!gr(l())&&Ui(Qt(l()),c(f)))&&oA(Ke)});var Ii=kA(JA,2),V=oA=>{zh(oA,{get validationError(){return c(k)},onExpand:F})};zA(Ii,oA=>{c(k)&&oA(V)});var $=kA(Ii,2),iA=oA=>{var UA=qhA();De("click",UA,RA),sA(oA,UA)};zA($,oA=>{c(t)||oA(iA)}),sA(NA,Ge)};zA(Ae,NA=>{Y(Jn),Y(o()),uA(()=>Jn(o()))?NA(pA):NA(te,!1)},!0),sA(YA,hA)};zA(HA,YA=>{Y(o()),uA(()=>Array.isArray(o()))?YA(bA):YA(PA,!1)});var it=kA(HA,2),Xe=YA=>{var hA,Ae=ZhA(),pA=gA(Ae),te=lt(()=>(c(M),Y(hl),Y(l()),uA(()=>c(M)&&hl(l()))));Y2(pA,{insert:!0,get selected(){return c(te)},onContextMenu:IA}),Le(NA=>{hA=Ci(Ae,1,"jse-insert-area jse-after svelte-1qi6rc1",null,hA,NA),jn(Ae,"title",s_)},[()=>({"jse-hovered":c(B)===mw,"jse-selected":c(M)&&hl(l())})]),sA(YA,Ae)};zA(it,YA=>{Y(g()),c(B),Y(mw),c(M),Y(hl),Y(l()),uA(()=>!g().readOnly&&(c(B)===mw||c(M)&&hl(l())))&&YA(Xe)}),Le((YA,hA)=>{xA=Ci(ue,1,YA,"svelte-1qi6rc1",xA,hA),jn(ue,"data-path",c(A)),jn(ue,"aria-selected",c(M)),qA=wg(ue,"",qA,{"--level":(c(f),uA(()=>c(f).length))})},[()=>o1((Y(wc),c(m),Y(g()),c(f),Y(o()),uA(()=>wc("jse-json-node",{"jse-expanded":c(m)},g().onClassName(c(f),o()))))),()=>({"jse-root":c(t),"jse-selected":c(M)&&bo(l()),"jse-selected-value":c(M)&&bn(l()),"jse-readonly":g().readOnly,"jse-hovered":c(B)===Fj})]),De("mousedown",ue,function(YA){if((YA.buttons===1||YA.buttons===2)&&!((hA=YA.target).nodeName==="DIV"&&hA.contentEditable==="true"||YA.buttons===1&&Gq(YA.target,"BUTTON"))){var hA;YA.stopPropagation(),YA.preventDefault(),g().focus(),document.addEventListener("mousemove",j,!0),document.addEventListener("mouseup",X);var Ae=o_(YA.target),pA=g().getJson(),te=g().getDocumentState();if(!l()||Ae===fo.after||Ae===fo.inside||l().type!==Ae&&l().type!==fo.multi||!ep(pA,l(),c(f)))if(Aa(Aa().selecting=!0),Aa(Aa().selectionAnchor=c(f)),Aa(Aa().selectionAnchorType=Ae),Aa(Aa().selectionFocus=c(f)),YA.shiftKey){var NA=g().getSelection();NA&&g().onSelect(vs(qd(NA),c(f)))}else if(Ae===fo.multi)if(c(t)&&YA.target.hasAttribute("data-path")){var Ge=Ji(zq(o(),te));g().onSelect(U_(Ge))}else g().onSelect(vs(c(f),c(f)));else pA!==void 0&&g().onSelect(Zj(Ae,c(f)));else YA.button===0&&C()(YA)}}),De("mousemove",ue,function(YA){if(Aa().selecting){YA.preventDefault(),YA.stopPropagation(),Aa().selectionFocus===void 0&&window.getSelection&&window.getSelection().empty();var hA=o_(YA.target);Ui(c(f),Aa().selectionFocus)&&hA===Aa().selectionAnchorType||(Aa(Aa().selectionFocus=c(f)),Aa(Aa().selectionAnchorType=hA),g().onSelect(vs(Aa().selectionAnchor||Aa().selectionFocus,Aa().selectionFocus)))}}),De("mouseover",ue,function(YA){Aa().selecting||Aa().dragging||(YA.stopPropagation(),W2(YA.target,"data-type","selectable-value")?N(B,Fj):W2(YA.target,"data-type","selectable-key")?N(B,void 0):W2(YA.target,"data-type","insert-selection-area-inside")?N(B,Ud):W2(YA.target,"data-type","insert-selection-area-after")&&N(B,mw),clearTimeout(u))}),De("mouseout",ue,function(YA){YA.stopPropagation(),u=window.setTimeout(()=>N(B,void 0))}),sA(i,ue),Yt()}var pW={prefix:"fas",iconName:"jsoneditor-expand",icon:[512,512,[],"","M 0,448 V 512 h 512 v -64 z M 0,0 V 64 H 512 V 0 Z M 256,96 128,224 h 256 z M 256,416 384,288 H 128 Z"]},fW={prefix:"fas",iconName:"jsoneditor-collapse",icon:[512,512,[],"","m 0,224 v 64 h 512 v -64 z M 256,192 384,64 H 128 Z M 256,320 128,448 h 256 z"]},EV={prefix:"fas",iconName:"jsoneditor-format",icon:[512,512,[],"","M 0,32 v 64 h 416 v -64 z M 160,160 v 64 h 352 v -64 z M 160,288 v 64 h 288 v -64 z M 0,416 v 64 h 320 v -64 z"]},$hA={prefix:"fas",iconName:"jsoneditor-compact",icon:[512,512,[],"","M 0,32 v 64 h 512 v -64 z M 0,160 v 64 h 512 v -64 z M 0,288 v 64 h 352 v -64 z"]};oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-welcome.svelte-1lhnan { - flex: 1; - overflow: auto; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - display: flex; - flex-direction: column; - align-items: center; - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-welcome.svelte-1lhnan:last-child { - border-bottom: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-welcome.svelte-1lhnan .jse-space.jse-before:where(.svelte-1lhnan) { - flex: 1; -} -.jse-welcome.svelte-1lhnan .jse-space.jse-after:where(.svelte-1lhnan) { - flex: 2; -} -.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) { - display: flex; - flex-direction: column; - max-width: 300px; - margin: 2em var(--jse-padding, 10px); - gap: var(--jse-padding, 10px); -} -.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) .jse-welcome-info:where(.svelte-1lhnan) { - color: var(--jse-panel-color-readonly, #b2b2b2); -} -.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) button:where(.svelte-1lhnan) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); - color: var(--jse-button-primary-color, #fff); - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - border-radius: 3px; -} -.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) button:where(.svelte-1lhnan):hover { - background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); -} -.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) button:where(.svelte-1lhnan):disabled { - background: var(--jse-button-primary-background-disabled, #9d9d9d); -}`);var AEA=TA('
    You can paste clipboard data using Ctrl+V, or use the following options:
    ',1),eEA=TA('
    Empty document
    ');function V_(i,e){var A=typeof i=="string"?i.toLowerCase():i,t=typeof e=="string"?e.toLowerCase():e;return(0,DV.default)(A,t)}function mW(i){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],t=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,n=$e(i,e);if(sa(n)){if(A===void 0)throw new Error("Cannot sort: no property selected by which to sort the array");return(function(o){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,l=(function(C,d){var B={boolean:0,number:1,string:2,undefined:4},u=3;return function(E,f){var m=$e(E,C),v=$e(f,C);if(typeof m!=typeof v){var S,k,M=(S=B[typeof m])!==null&&S!==void 0?S:u,x=(k=B[typeof v])!==null&&k!==void 0?k:u;return M>x?d:Mv?d:m1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,s=$e(o,a),l=Object.keys(s).slice();l.sort((C,d)=>r*V_(C,d));var g={};return l.forEach(C=>g[C]=s[C]),[{op:"replace",path:xt(a),value:g}]})(i,e,t);throw new Error("Cannot sort: no array or object")}cp(["click"]);oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-navigation-bar-dropdown.svelte-1k47orx { - position: absolute; - top: 100%; - left: 0; - z-index: 3; - background: var(--jse-navigation-bar-background, var(--jse-background-color, #fff)); - color: var(--jse-navigation-bar-dropdown-color, #656565); - box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); - display: flex; - flex-direction: column; - max-height: 300px; - overflow: auto; - min-width: 80px; -} -.jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item:where(.svelte-1k47orx) { - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - border: none; - background: transparent; - color: inherit; - cursor: pointer; - outline: none; - text-align: left; - white-space: nowrap; - box-sizing: border-box; - padding: calc(0.5 * var(--jse-padding, 10px)) 36px; -} -.jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item:where(.svelte-1k47orx):focus, .jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item:where(.svelte-1k47orx):hover { - background: var(--jse-navigation-bar-background-highlight, #e5e5e5); -} -.jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item.jse-selected:where(.svelte-1k47orx) { - background: var(--jse-navigation-bar-dropdown-color, #656565); - color: var(--jse-navigation-bar-background, var(--jse-background-color, #fff)); -}`);var tEA=TA(''),iEA=TA(''),nEA=TA('
    ');function oEA(i,e){Jt(e,!1);var A=K(e,"items",9),t=K(e,"selectedItem",9),n=K(e,"onSelect",9);di(!0);var o=nEA(),a=gA(o);Da(a,1,()=>(Y(Pw),Y(A()),uA(()=>Pw(A(),100))),l=>l,(l,g)=>{var C,d=tEA(),B=gA(d);Le((u,E)=>{C=Ci(d,1,"jse-navigation-bar-dropdown-item svelte-1k47orx",null,C,{"jse-selected":c(g)===t()}),jn(d,"title",u),Ht(B,E)},[()=>(c(g),uA(()=>c(g).toString())),()=>(Y(mC),c(g),uA(()=>mC(c(g).toString(),30)))]),De("click",d,uC(()=>n()(c(g)))),sA(l,d)});var r=kA(a,2),s=l=>{var g=iEA();jn(g,"title","Limited to 100 items"),sA(l,g)};zA(r,l=>{Y(A()),uA(()=>A().length>100)&&l(s)}),sA(i,o),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-navigation-bar-item.svelte-13sijxb { - position: relative; - display: flex; -} -.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button:where(.svelte-13sijxb) { - font-family: inherit; - font-size: inherit; - padding: calc(0.5 * var(--jse-padding, 10px)) 2px; - border: none; - background: transparent; - color: inherit; - cursor: pointer; - outline: none; - min-width: 2em; - white-space: nowrap; -} -.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button:where(.svelte-13sijxb):focus, .jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button:where(.svelte-13sijxb):hover { - background: var(--jse-panel-button-background-highlight, #e0e0e0); - color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); -} -.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button.jse-navigation-bar-arrow:where(.svelte-13sijxb) { - padding: 2px var(--jse-padding, 10px) 0; -} -.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button.jse-navigation-bar-arrow.jse-open:where(.svelte-13sijxb) { - background: var(--jse-navigation-bar-background, var(--jse-background-color, #fff)); - color: var(--jse-navigation-bar-dropdown-color, #656565); -} -.jse-navigation-bar-item.svelte-13sijxb:last-child { - padding-right: var(--jse-padding, 10px); -}`);var aEA=TA(''),rEA=TA('
    ');function QV(i,e){Jt(e,!1);var A,t=cA(void 0,!0),n=cA(void 0,!0),{openAbsolutePopup:o,closeAbsolutePopup:a}=s1("absolute-popup"),r=K(e,"path",9),s=K(e,"index",9),l=K(e,"onSelect",9),g=K(e,"getItems",9),C=cA(void 0,!0),d=cA(!1,!0);function B(S){a(A),l()(c(t).concat(S))}KA(()=>(Y(r()),Y(s())),()=>{N(t,r().slice(0,s()))}),KA(()=>(Y(r()),Y(s())),()=>{N(n,r()[s()])}),Vn(),di(!0);var u,E=rEA(),f=gA(E);Bn(gA(f),{get data(){return _M}});var m=kA(f,2),v=S=>{var k=aEA(),M=gA(k);Le(()=>Ht(M,c(n))),De("click",k,()=>B(c(n))),sA(S,k)};zA(m,S=>{c(n)!==void 0&&S(v)}),ta(E,S=>N(C,S),()=>c(C)),Le(()=>u=Ci(f,1,"jse-navigation-bar-button jse-navigation-bar-arrow svelte-13sijxb",null,u,{"jse-open":c(d)})),De("click",f,function(){if(c(C)){N(d,!0);var S={items:g()(c(t)),selectedItem:c(n),onSelect:B};A=o(oEA,S,{anchor:c(C),closeOnOuterClick:!0,onClose:()=>{N(d,!1)}})}}),sA(i,E),Yt()}function Mx(i){var e,A;if(navigator.clipboard)return navigator.clipboard.writeText(i);if((e=(A=document).queryCommandSupported)!==null&&e!==void 0&&e.call(A,"copy")){var t=document.createElement("textarea");t.value=i,t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();try{document.execCommand("copy")}catch(n){console.error(n)}finally{document.body.removeChild(t)}return Promise.resolve()}return console.error("Copy failed."),Promise.resolve()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-navigation-bar-path-editor.svelte-uyexy4 { - flex: 1; - display: flex; - border: var(--jse-edit-outline, 2px solid #656565); - background: var(--jse-background-color, #fff); -} -.jse-navigation-bar-path-editor.svelte-uyexy4 input.jse-navigation-bar-text:where(.svelte-uyexy4) { - flex: 1; - font-family: inherit; - font-size: inherit; - padding: 0 5px 1px; - background: var(--jse-background-color, #fff); - color: var(--jse-text-color, #4d4d4d); - border: none; - outline: none; -} -.jse-navigation-bar-path-editor.svelte-uyexy4 button:where(.svelte-uyexy4) { - border: none; - background: var(--jse-background-color, #fff); - cursor: pointer; - font-family: inherit; - font-size: 80%; - color: inherit; -} -.jse-navigation-bar-path-editor.svelte-uyexy4 button.jse-navigation-bar-copy.copied:where(.svelte-uyexy4) { - color: var(--message-success-background, #9ac45d); -} -.jse-navigation-bar-path-editor.svelte-uyexy4 button.jse-navigation-bar-validation-error:where(.svelte-uyexy4) { - color: var(--jse-error-color, #ee5341); -} -.jse-navigation-bar-path-editor.error.svelte-uyexy4 { - border-color: var(--jse-error-color, #ee5341); -} -.jse-navigation-bar-path-editor.error.svelte-uyexy4 input.jse-navigation-bar-text:where(.svelte-uyexy4) { - color: var(--jse-error-color, #ee5341); -} -.jse-navigation-bar-path-editor.svelte-uyexy4 .jse-copied-text:where(.svelte-uyexy4) { - background: var(--message-success-background, #9ac45d); - color: var(--jse-message-success-color, #fff); - position: relative; - margin: 2px; - padding: 0 5px; - border-radius: 3px; -}`);var sEA=TA(''),lEA=TA('
    Copied!
    '),gEA=TA('
    ');function cEA(i,e){Jt(e,!1);var A=cA(),t=s1("absolute-popup"),n=K(e,"path",8),o=K(e,"pathParser",8),a=K(e,"onChange",8),r=K(e,"onClose",8),s=K(e,"onError",8),l=K(e,"pathExists",8),g=cA(),C=cA(),d=cA(!1),B=void 0,u=cA(!1);function E(){c(g).focus()}function f(X){try{var eA=o().parse(X);return(function(Z){if(!l()(Z))throw new Error("Path does not exist in current document")})(eA),{path:eA,error:void 0}}catch(Z){return{path:void 0,error:Z}}}os(()=>{E()}),Dg(()=>{clearTimeout(B)}),KA(()=>(Y(o()),Y(n())),()=>{N(C,o().stringify(n()))}),KA(()=>(c(d),c(C)),()=>{N(A,c(d)?f(c(C)).error:void 0)}),Vn(),di();var m,v=gEA(),S=gA(v);ta(S,X=>N(g,X),()=>c(g));var k=kA(S,2),M=X=>{var eA=sEA();Bn(gA(eA),{get data(){return w2}}),Ms(eA,(Z,CA)=>tE?.(Z,CA),()=>Fe({text:String(c(A)||"")},t)),sA(X,eA)};zA(k,X=>{c(A)&&X(M)});var x=kA(k,2),F=X=>{sA(X,lEA())};zA(x,X=>{c(u)&&X(F)});var z,j=kA(x,2);Bn(gA(j),{get data(){return aC}}),Le(()=>{m=Ci(v,1,"jse-navigation-bar-path-editor svelte-uyexy4",null,m,{error:c(A)}),tI(S,c(C)),z=Ci(j,1,"jse-navigation-bar-copy svelte-uyexy4",null,z,{copied:c(u)})}),De("keydown",S,uC(function(X){var eA=RC(X);if(eA==="Escape"&&(X.preventDefault(),r()()),eA==="Enter"){X.preventDefault(),N(d,!0);var Z=f(c(C));Z.path!==void 0?a()(Z.path):s()(Z.error)}})),De("input",S,function(X){N(C,X.currentTarget.value)}),De("click",j,function(){Mx(c(C)),N(u,!0),B=window.setTimeout(()=>N(u,!1),1e3),E()}),sA(i,v),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-navigation-bar.svelte-hjhal6 { - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - background: var(--jse-panel-background, #ebebeb); - color: var(--jse-panel-button-color, inherit); - padding: 0; - margin: 0; - display: flex; - overflow: auto; - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6) { - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); - color: var(--jse-panel-color-readonly, #b2b2b2); - background: transparent; - border: none; - display: flex; - cursor: pointer; - outline: none; - align-items: center; -} -.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit.flex:where(.svelte-hjhal6) { - flex: 1; -} -.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6):focus, .jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6):hover, .jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit.editing:where(.svelte-hjhal6) { - background: var(--jse-panel-button-background-highlight, #e0e0e0); - color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); - transition: color 0.2s ease-in, background 0.2s ease-in; -} -.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6) .jse-navigation-bar-space:where(.svelte-hjhal6) { - flex: 1; - text-align: left; -}`);var CEA=TA(" ",1),dEA=TA('
    ');function IEA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),n=dr("jsoneditor:NavigationBar"),o=K(e,"json",9),a=K(e,"selection",9),r=K(e,"onSelect",9),s=K(e,"onError",9),l=K(e,"pathParser",9),g=cA(void 0,!0),C=cA(!1,!0);function d(eA){n("get items for path",eA);var Z=$e(o(),eA);if(Array.isArray(Z))return YD(0,Z.length).map(String);if(Jn(Z)){var CA=Object.keys(Z).slice(0);return CA.sort(V_),CA}return[]}function B(eA){return Fr(o(),eA)}function u(eA){n("select path",JSON.stringify(eA)),r()(vs(eA,eA))}function E(){N(C,!1)}function f(eA){E(),u(eA)}KA(()=>(Y(a()),Qt),()=>{N(A,a()?Qt(a()):[])}),KA(()=>(Y(o()),c(A)),()=>{N(t,ua($e(o(),c(A))))}),KA(()=>c(A),()=>{c(A),setTimeout(()=>{if(c(g)&&c(g).scrollTo){var eA=c(g).scrollWidth-c(g).clientWidth;eA>0&&(n("scrollTo ",eA),c(g).scrollTo({left:eA,behavior:"smooth"}))}})}),Vn(),di(!0);var m=dEA(),v=gA(m),S=eA=>{var Z=CEA(),CA=at(Z);Da(CA,1,()=>c(A),Ka,(QA,RA,dA)=>{QV(QA,{getItems:d,get path(){return c(A)},index:dA,onSelect:u})});var wA=kA(CA,2),BA=QA=>{QV(QA,{getItems:d,get path(){return c(A)},get index(){return c(A),uA(()=>c(A).length)},onSelect:u})};zA(wA,QA=>{c(t)&&QA(BA)}),sA(eA,Z)},k=eA=>{cEA(eA,{get path(){return c(A)},onClose:E,onChange:f,get onError(){return s()},pathExists:B,get pathParser(){return l()}})};zA(v,eA=>{c(C)?eA(k,!1):eA(S)});var M,x=kA(v,2),F=gA(x),z=gA(F),j=kA(F,2),X=lt(()=>c(C)?lJ:nJ);Bn(j,{get data(){return c(X)}}),ta(m,eA=>N(g,eA),()=>c(g)),Le(eA=>{M=Ci(x,1,"jse-navigation-bar-edit svelte-hjhal6",null,M,{flex:!c(C),editing:c(C)}),jn(x,"title",c(C)?"Cancel editing the selected path":"Edit the selected path"),Ht(z,eA)},[()=>(Y(ua),Y(o()),c(C),uA(()=>ua(o())||c(C)?"\xA0":"Navigation bar"))]),De("click",x,function(){N(C,!c(C))}),sA(i,m),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-search-box.svelte-1x1x8q0 { - border: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); - border-radius: 3px; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - background: var(--jse-panel-background, #ebebeb); - color: var(--jse-panel-color-readonly, #b2b2b2); - box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); - display: inline-block; - width: 400px; - max-width: 100%; - overflow: auto; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) { - display: flex; - align-items: stretch; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0), -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) input:where(.svelte-1x1x8q0) { - font-family: inherit; - font-size: inherit; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0) { - display: block; - text-align: center; - border: none; - padding: 0 5px; - margin: 0; - cursor: pointer; - color: var(--jse-panel-button-color, inherit); - background: var(--jse-panel-button-background, transparent); -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0):hover { - color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); - background: var(--jse-panel-button-background-highlight, #e0e0e0); -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) input:where(.svelte-1x1x8q0) { - color: var(--jse-panel-color, var(--jse-text-color, #4d4d4d)); - border: var(--jse-input-border, 1px solid #d8dbdf); - border-radius: 3px; - background: var(--jse-input-background, var(--jse-background-color, #fff)); - height: 28px; - padding: 0 5px; - margin: 0; - flex: 1; - width: 0; - min-width: 50px; - outline: none; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-replace-toggle:where(.svelte-1x1x8q0) { - padding: var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)); - min-width: 20px; - background: var(--jse-panel-button-background-highlight, #e0e0e0); -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) { - flex: 1; - display: flex; - flex-direction: column; - padding: calc(0.5 * var(--jse-padding, 10px)); - gap: calc(0.5 * var(--jse-padding, 10px)); -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) { - flex: 1; - display: flex; - align-items: center; - position: relative; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) .jse-search-icon:where(.svelte-1x1x8q0) { - color: inherit; - cursor: inherit; - background: inherit; - width: 32px; - text-align: center; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) label.jse-search-input-label:where(.svelte-1x1x8q0) { - flex: 1; - display: flex; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) .jse-search-count:where(.svelte-1x1x8q0) { - color: inherit; - font-size: 80%; - visibility: hidden; - padding: 0 5px; - min-width: 36px; - text-align: center; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) .jse-search-count.jse-visible:where(.svelte-1x1x8q0) { - visibility: visible; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-replace-section:where(.svelte-1x1x8q0) { - flex: 1; - display: flex; - padding-left: 32px; -} -.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-replace-section:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0) { - width: auto; -}`);var BEA=TA(''),hEA=TA('
    '),EEA=TA('');function wW(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),n=cA(void 0,!0),o=dr("jsoneditor:SearchBox"),a=K(e,"json",9),r=K(e,"documentState",9),s=K(e,"parser",9),l=K(e,"showSearch",9),g=K(e,"showReplace",13),C=K(e,"readOnly",9),d=K(e,"columns",9),B=K(e,"onSearch",9),u=K(e,"onFocus",9),E=K(e,"onPatch",9),f=K(e,"onClose",9),m=cA("",!0),v="",S=cA("",!0),k=cA(!1,!0),M=cA(void 0,!0),x=XE(function(NA){return PA.apply(this,arguments)},300),F=XE(function(NA){return it.apply(this,arguments)},300);function z(){g(!g()&&!C())}function j(NA){NA.stopPropagation();var Ge=RC(NA);Ge==="Enter"&&(NA.preventDefault(),c(m)!==v?x.flush():dA()),Ge==="Shift+Enter"&&(NA.preventDefault(),xA()),Ge==="Ctrl+Enter"&&(NA.preventDefault(),g()?CA():dA()),Ge==="Ctrl+H"&&(NA.preventDefault(),z()),Ge==="Escape"&&(NA.preventDefault(),hA())}function X(NA){RC(NA)==="Enter"&&(NA.preventDefault(),NA.stopPropagation(),CA())}function eA(){return Z.apply(this,arguments)}function Z(){return(Z=Xt(function*(){jo(),yield x.flush()})).apply(this,arguments)}function CA(){return wA.apply(this,arguments)}function wA(){return(wA=Xt(function*(){var NA;if(!C()){var Ge=(NA=c(M))===null||NA===void 0?void 0:NA.activeItem;if(o("handleReplace",{replaceText:c(S),activeItem:Ge}),c(M)&&Ge&&a()!==void 0){N(M,Fe(Fe({},$j(c(M))),{},{activeIndex:c(t)}));var{operations:JA,newSelection:yA}=LIA(a(),r(),c(S),Ge,s());E()(JA,(Pt,Dt)=>({state:Dt,selection:yA})),jo(),yield F.flush(),yield ue()}}})).apply(this,arguments)}function BA(){return QA.apply(this,arguments)}function QA(){return(QA=Xt(function*(){if(!C()){o("handleReplaceAll",{text:c(m),replaceText:c(S)});var{operations:NA,newSelection:Ge}=(function(JA,yA,Pt,Dt,fe){for(var Zt=AV(Pt,JA,{maxResults:1/0}),Pe=[],qe=0;qe$.field!==iA.field?$.field===Qc.key?1:-1:iA.path.length-$.path.length);var Ii,V=[];return Pe.forEach($=>{var{field:iA,path:oA,items:UA}=$;if(iA===Qc.key){var he=an(oA),me=$e(JA,he),GA=Ji(oA),OA=Ep(he,Object.keys(me),GA,tV(GA,Dt,UA));V=V.concat(OA),Ii=eE(JA,OA)}else{if(iA!==Qc.value)throw new Error("Cannot replace: unknown type of search result field ".concat(iA));var wt=$e(JA,oA);if(wt===void 0)throw new Error("Cannot replace: path not found ".concat(xt(oA)));var rt=typeof wt=="string"?wt:String(wt),je=m0(JA,yA,oA),ze=tV(rt,Dt,UA),pi=[{op:"replace",path:xt(oA),value:je?ze:cE(ze,fe)}];V=V.concat(pi),Ii=eE(JA,pi)}}),{operations:V,newSelection:Ii}})(a(),r(),c(m),c(S),s());E()(NA,(JA,yA)=>({state:yA,selection:Ge})),yield ue()}})).apply(this,arguments)}function RA(NA){NA.select()}function dA(){return IA.apply(this,arguments)}function IA(){return(IA=Xt(function*(){N(M,c(M)?$j(c(M)):void 0),yield ue()})).apply(this,arguments)}function xA(){return qA.apply(this,arguments)}function qA(){return qA=Xt(function*(){N(M,c(M)?(function(NA){var Ge=NA.activeIndex>0?NA.activeIndex-1:NA.items.length-1,JA=NA.items[Ge],yA=NA.items.map((Pt,Dt)=>Fe(Fe({},Pt),{},{active:Dt===Ge}));return Fe(Fe({},NA),{},{items:yA,activeItem:JA,activeIndex:Ge})})(c(M)):void 0),yield ue()}),qA.apply(this,arguments)}function ue(){return HA.apply(this,arguments)}function HA(){return(HA=Xt(function*(){var NA;o("handleFocus",c(M));var Ge=(NA=c(M))===null||NA===void 0?void 0:NA.activeItem;Ge&&a()!==void 0&&(yield u()(Ge.path,Ge.resultIndex))})).apply(this,arguments)}function bA(){return bA=Xt(function*(NA){yield Xe(NA,c(m),a())}),bA.apply(this,arguments)}function PA(){return PA=Xt(function*(NA){yield Xe(l(),NA,a()),yield ue()}),PA.apply(this,arguments)}function it(){return it=Xt(function*(NA){yield Xe(l(),c(m),NA)}),it.apply(this,arguments)}function Xe(NA,Ge,JA){return YA.apply(this,arguments)}function YA(){return YA=Xt(function*(NA,Ge,JA){return NA?(o("applySearch",{showSearch:NA,text:Ge}),Ge===""?(o("clearing search result"),c(M)!==void 0&&N(M,void 0),Promise.resolve()):(v=Ge,N(k,!0),new Promise(yA=>{setTimeout(()=>{var Pt=AV(Ge,JA,{maxResults:a_,columns:d()});N(M,(function(Dt,fe){var Zt=fe!=null&&fe.activeItem?iV(fe.activeItem):void 0,Pe=Dt.findIndex(Ke=>Ui(Zt,iV(Ke))),qe=Pe!==-1?Pe:fe?.activeIndex!==void 0&&fe?.activeIndex0?0:-1,vt=Dt.map((Ke,Ii)=>Fe(Fe({resultIndex:Ii},Ke),{},{active:Ii===qe}));return{items:vt,activeItem:vt[qe],activeIndex:qe}})(Pt,c(M))),N(k,!1),yA()})}))):(c(M)&&N(M,void 0),Promise.resolve())}),YA.apply(this,arguments)}function hA(){o("handleClose"),x.cancel(),F.cancel(),Xe(!1,c(m),a()),f()()}KA(()=>c(M),()=>{var NA;N(A,((NA=c(M))===null||NA===void 0||(NA=NA.items)===null||NA===void 0?void 0:NA.length)||0)}),KA(()=>c(M),()=>{var NA;N(t,((NA=c(M))===null||NA===void 0?void 0:NA.activeIndex)||0)}),KA(()=>(c(A),a_),()=>{N(n,c(A)>=a_?"".concat(999,"+"):String(c(A)))}),KA(()=>(Y(B()),c(M)),()=>{B()(c(M))}),KA(()=>Y(l()),()=>{(function(NA){bA.apply(this,arguments)})(l())}),KA(()=>c(m),()=>{x(c(m))}),KA(()=>Y(a()),()=>{F(a())}),Vn(),di(!0);var Ae=zi(),pA=at(Ae),te=NA=>{var Ge=EEA(),JA=gA(Ge),yA=gA(JA),Pt=GA=>{var OA=BEA(),wt=gA(OA),rt=lt(()=>g()?r0:JB);Bn(wt,{get data(){return c(rt)}}),De("click",OA,z),sA(GA,OA)};zA(yA,GA=>{C()||GA(Pt)});var Dt=gA(kA(yA,2)),fe=gA(Dt),Zt=gA(fe),Pe=GA=>{Bn(GA,{get data(){return iJ},spin:!0})},qe=GA=>{Bn(GA,{get data(){return Uu}})};zA(Zt,GA=>{c(k)?GA(Pe):GA(qe,!1)});var vt=kA(fe,2),Ke=gA(vt);Tr(()=>zw(Ke,()=>c(m),GA=>N(m,GA))),Ms(Ke,GA=>RA?.(GA)),Tr(()=>De("paste",Ke,eA));var Ii,V=kA(vt,2),$=gA(V),iA=kA(V,2);Bn(gA(iA),{get data(){return gJ}});var oA=kA(iA,2);Bn(gA(oA),{get data(){return tJ}});var UA=kA(oA,2);Bn(gA(UA),{get data(){return Ou}});var he=kA(Dt,2),me=GA=>{var OA=hEA(),wt=gA(OA),rt=kA(wt,2),je=kA(rt,2);zw(wt,()=>c(S),ze=>N(S,ze)),De("keydown",wt,X),De("click",rt,CA),De("click",je,BA),sA(GA,OA)};zA(he,GA=>{g()&&!C()&&GA(me)}),Le(()=>{var GA;Ii=Ci(V,1,"jse-search-count svelte-1x1x8q0",null,Ii,{"jse-visible":c(m)!==""}),Ht($,"".concat(c(t)!==-1&&c(t){l()&&NA(te)}),sA(i,Ae),Yt()}var op=Symbol("path");function QEA(i,e){var A=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1/0,t={};Array.isArray(i)&&(function(o,a,r){if(o.length1?(o.length-1)/(a-1):o.length,l=0;l{Jn(o)?yW(o,t,e):t[op]=!0});var n=[];return op in t&&n.push([]),DW(t,[],n,e),n}function yW(i,e,A){for(var t in i){var n=i[t],o=e[t]||(e[t]={});Jn(n)&&A?yW(n,o,A):o[op]===void 0&&(o[op]=!0)}}function DW(i,e,A,t){for(var n in i){var o=e.concat(n),a=i[n];a&&a[op]===!0&&A.push(o),Ea(a)&&t&&DW(a,o,A,t)}}function uEA(i,e,A,t,n,o){for(var a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:80,r=sa(A)?A.length:0,s=(function(v,S){var k=Object.values(v);if(An(k))return S;var M=(x,F)=>x+F;return k.reduce(M)/k.length})(t,n),l=i-a,g=e+2*a,C=v=>t[v]||n,d=0,B=o;B0&&(B-=C(--d));for(var u=d,E=0;Ev0(t,o))}}function Td(i,e){var{rowIndex:A,columnIndex:t}=i;return[String(A),...e[t]]}function pEA(i,e){var[A,t]=aF(i,a=>rx(a.path[0])),n=nF(A,fEA),o=oF(n,a=>{var r={row:[],columns:{}};return a.forEach(s=>{var l=(function(g,C){var d=Qg(g.path,C);return d.columnIndex!==-1?d.columnIndex:-1})(s,e);l!==-1?(r.columns[l]===void 0&&(r.columns[l]=[]),r.columns[l].push(s)):r.row.push(s)}),r});return{root:t,rows:o}}function Mh(i,e){if(e&&e.length!==0)return e.length===1?e[0]:{path:i,message:"Multiple validation issues: "+e.map(A=>El(A.path)+" "+A.message).join(", "),severity:Ec.warning}}function fEA(i){return parseInt(i.path[0],10)}function mEA(i,e,A){var t=e.some(n=>(function(o,a,r){if(!o)return!1;if(a.op==="replace"){var s=ms(a.path),{rowIndex:l,columnIndex:g}=Qg(s,r),C=r.findIndex(d=>Ui(d,o.path));if(l!==-1&&g!==-1&&g!==C)return!1}return!0})(i,n,A));return t?void 0:i}var bs=dr("jsoneditor:actions");function vW(i){return q_.apply(this,arguments)}function q_(){return q_=Xt(function*(i){var{json:e,selection:A,indentation:t,readOnly:n,parser:o,onPatch:a}=i;if(!n&&e!==void 0&&A&&Lh(A)){var r=Vq(e,A,t,o);if(r!==void 0){bs("cut",{selection:A,clipboard:r,indentation:t}),yield Mx(r);var{operations:s,newSelection:l}=AW(e,A);a(s,(g,C)=>({state:C,selection:l}))}}}),q_.apply(this,arguments)}function bW(i){return W_.apply(this,arguments)}function W_(){return W_=Xt(function*(i){var{json:e,selection:A,indentation:t,parser:n}=i,o=Vq(e,A,t,n);o!==void 0&&(bs("copy",{clipboard:o,indentation:t}),yield Mx(o))}),W_.apply(this,arguments)}function MW(i){var{clipboardText:e,json:A,selection:t,readOnly:n,parser:o,onPatch:a,onChangeText:r,onPasteMultilineText:s,openRepairModal:l}=i;if(!n)try{g(e)}catch(C){l(e,d=>{bs("repaired pasted text: ",d),g(d)})}function g(C){if(A!==void 0){var d=t||en([]),B=$q(A,d,C,o),u=(function(E,f,m){var v=arguments.length>3&&arguments[3]!==void 0?arguments[3]:MIA;if(E.length>v)return!1;var S=/\n/.test(E);if(!S)return!1;var k=f.some(x=>x.op==="replace"&&Array.isArray(x.value)),M=f.filter(x=>x.op==="add").length>1;if(!k&&!M)return!1;try{return dp(E,m.parse),!1}catch(x){return!0}})(e,B,o);bs("paste",{pastedText:C,operations:B,ensureSelection:d,pasteMultilineText:u}),a(B,(E,f)=>{var m=f;return B.filter(v=>(oM(v)||B6(v))&&ua(v.value)).forEach(v=>{var S=al(A,v.path);m=nI(E,m,S)}),{state:m}}),u&&s(C)}else bs("paste text",{pastedText:C}),r(e,(E,f)=>{if(E)return{state:nI(E,f,[])}})}}function SW(i){var{json:e,text:A,selection:t,keepSelection:n,readOnly:o,onChange:a,onPatch:r}=i;if(!o&&t){var s=e!==void 0&&(Cr(t)||bn(t))?vs(t.path,t.path):t;if(An(Qt(t)))bs("remove root",{selection:t}),a&&a({text:"",json:void 0},e!==void 0?{text:void 0,json:e}:{text:A||"",json:e},{contentErrors:void 0,patchResult:void 0});else if(e!==void 0){var{operations:l,newSelection:g}=AW(e,s);bs("remove",{operations:l,selection:t,newSelection:g}),r(l,(C,d)=>({state:d,selection:n?t:g}))}}}function r5(i){var{insertType:e,selectInside:A,initialValue:t,json:n,selection:o,readOnly:a,parser:r,onPatch:s,onReplaceJson:l}=i;if(!a){var g=(function(E,f,m){if(m==="object")return{};if(m==="array")return[];if(m==="structure"&&E!==void 0){var v=f?Pq(f):[],S=$e(E,v);if(Array.isArray(S)&&!An(S)){var k=Tc(S);return ua(k)?eF(k,M=>Array.isArray(M)?[]:Jn(M)?void 0:""):""}}return""})(n,o,e);if(n!==void 0){var C=r.stringify(g),d=$q(n,o,C,r);bs("onInsert",{insertType:e,operations:d,newValue:g,data:C});var B=Ji(d.filter(E=>E.op==="add"||E.op==="replace"));s(d,(E,f,m)=>{if(B){var v=al(E,B.path);if(ua(g))return{state:Bc(E,f,v,mx),selection:A?FC(v):m};if(g===""){var S=An(v)?void 0:$e(E,an(v));return{state:Bc(E,f,v,Kw),selection:Jn(S)?wx(v,t):Zw(v,t)}}}}),bs("after patch")}else{bs("onInsert",{insertType:e,newValue:g});var u=[];l(g,(E,f)=>({state:nI(E,f,u),selection:ua(g)?FC(u):Zw(u)}))}}}function kW(i){return Z_.apply(this,arguments)}function Z_(){return Z_=Xt(function*(i){var{char:e,selectInside:A,json:t,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s,onSelect:l}=i;o||(Cr(n)?l(Fe(Fe({},n),{},{edit:!0,initialValue:e})):e==="{"?r5({insertType:"object",selectInside:A,initialValue:void 0,json:t,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s}):e==="["?r5({insertType:"array",selectInside:A,initialValue:void 0,json:t,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s}):bn(n)&&t!==void 0?ua($e(t,n.path))||l(Fe(Fe({},n),{},{edit:!0,initialValue:e})):(bs("onInsertValueWithCharacter",{char:e}),yield(function(g){return X_.apply(this,arguments)})({char:e,json:t,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s})))}),Z_.apply(this,arguments)}function X_(){return X_=Xt(function*(i){var{char:e,json:A,selection:t,readOnly:n,parser:o,onPatch:a,onReplaceJson:r}=i;n||r5({insertType:"value",selectInside:!1,initialValue:e,json:A,selection:t,readOnly:n,parser:o,onPatch:a,onReplaceJson:r})}),X_.apply(this,arguments)}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-json-preview.svelte-25xmyd { - flex: 1; - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - color: var(--jse-panel-color-readonly, #b2b2b2); - overflow: auto; - white-space: pre-wrap; - padding: 2px; - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); - border-bottom: var(--jse-main-border, 1px solid #d7d7d7); -}`);var wEA=TA('
    ');function _W(i,e){Jt(e,!1);var A=cA(),t=cA(),n=K(e,"text",8),o=K(e,"json",8),a=K(e,"indentation",8),r=K(e,"parser",8);KA(()=>(Y(o()),Y(n())),()=>{N(A,o()!==void 0?{json:o()}:{text:n()||""})}),KA(()=>(c(A),Y(a()),Y(r()),jw),()=>{N(t,mC(R_(c(A),a(),r()),jw))}),Vn(),di();var s=wEA(),l=gA(s);Le(()=>Ht(l,c(t))),sA(i,s),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -button.jse-context-menu-button.svelte-16jz6ui { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - flex: 1; - white-space: nowrap; - padding: var(--jse-padding, 10px); - color: inherit; -} -button.jse-context-menu-button.svelte-16jz6ui:hover { - background: var(--jse-context-menu-background-highlight, #7a7a7a); -} -button.jse-context-menu-button.svelte-16jz6ui:focus { - background: var(--jse-context-menu-background-highlight, #7a7a7a); - z-index: 1; -} -button.jse-context-menu-button.svelte-16jz6ui:disabled { - color: var(--jse-context-menu-color-disabled, #9d9d9d); - background: unset; -} -button.jse-context-menu-button.left.svelte-16jz6ui { - text-align: left; -} -button.jse-context-menu-button.svelte-16jz6ui svg { - width: 16px; -}`);var yEA=TA('');function u_(i,e){Jt(e,!1);var A=K(e,"item",8),t=K(e,"className",8,void 0),n=K(e,"onRequestClose",8);di();var o=yEA(),a=gA(o),r=g=>{Bn(g,{get data(){return Y(A()),uA(()=>A().icon)}})};zA(a,g=>{Y(A()),uA(()=>A().icon)&&g(r)});var s=kA(a,2),l=g=>{var C=mr();Le(()=>Ht(C,(Y(A()),uA(()=>A().text)))),sA(g,C)};zA(s,g=>{Y(A()),uA(()=>A().text)&&g(l)}),Le(g=>{Ci(o,1,g,"svelte-16jz6ui"),jn(o,"title",(Y(A()),uA(()=>A().title))),o.disabled=(Y(A()),uA(()=>A().disabled||!1))},[()=>o1((Y(wc),Y(t()),Y(A()),uA(()=>wc("jse-context-menu-button",t(),A().className))))]),De("click",o,g=>{n()(),A().onClick(g)}),sA(i,o),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-dropdown-button.svelte-bov1j6 { - flex: 1; - line-height: normal; - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - position: relative; - padding: 0; - display: flex; -} -.jse-dropdown-button.svelte-bov1j6 ul:where(.svelte-bov1j6) { - margin: 0; - padding: 0; -} -.jse-dropdown-button.svelte-bov1j6 ul:where(.svelte-bov1j6) li:where(.svelte-bov1j6) { - margin: 0; - padding: 0; - list-style-type: none; -} -.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - width: 2em; - background: var(--jse-context-menu-background, #656565); - color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); - border-radius: 0; -} -.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown.jse-visible:where(.svelte-bov1j6) { - background: var(--jse-context-menu-background, #656565); -} -.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6):hover { - background: var(--jse-context-menu-background-highlight, #7a7a7a); -} -.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6):focus { - z-index: 1; -} -.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6):disabled { - color: var(--jse-context-menu-color-disabled, #9d9d9d); - background: unset; -} -.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) { - display: none; - position: absolute; - top: 100%; - left: 0; - z-index: 1; - background: var(--jse-context-menu-background, #656565); - color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); - box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); -} -.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items.jse-visible:where(.svelte-bov1j6) { - display: block; -} -.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) button:where(.svelte-bov1j6) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - width: 100%; - text-align: left; - padding: var(--jse-padding, 10px); - margin: 0; -} -.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) button:where(.svelte-bov1j6):hover { - background: var(--jse-context-menu-background-highlight, #7a7a7a); -} -.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) button:where(.svelte-bov1j6):disabled { - color: var(--jse-context-menu-color-disabled, #9d9d9d); - background: unset; -}`);var DEA=TA('
  • '),vEA=TA('
      ');oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -button.jse-context-menu-button.svelte-1y5l9l1 { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - flex: 1; - white-space: nowrap; - padding: var(--jse-padding, 10px); - color: inherit; -} -button.jse-context-menu-button.svelte-1y5l9l1:hover { - background: var(--jse-context-menu-background-highlight, #7a7a7a); -} -button.jse-context-menu-button.svelte-1y5l9l1:focus { - background: var(--jse-context-menu-background-highlight, #7a7a7a); - z-index: 1; -} -button.jse-context-menu-button.svelte-1y5l9l1:disabled { - color: var(--jse-context-menu-color-disabled, #9d9d9d); - background: unset; -} -button.jse-context-menu-button.left.svelte-1y5l9l1 { - text-align: left; -} -button.jse-context-menu-button.svelte-1y5l9l1 svg { - width: 16px; -}`);var bEA=TA('');function p_(i,e){Jt(e,!1);var A=cA(),t=K(e,"item",8),n=K(e,"className",8,void 0),o=K(e,"onRequestClose",8);KA(()=>(Y(t()),Y(o())),()=>{N(A,t().items.map(a=>Fe(Fe({},a),{},{onClick:r=>{o()(),a.onClick(r)}})))}),Vn(),di(),(function(a,r){Jt(r,!1);var s=cA(void 0,!0),l=K(r,"items",25,()=>[]),g=K(r,"title",9,void 0),C=K(r,"width",9,"120px"),d=cA(!1,!0);function B(){N(d,!1)}function u(M){RC(M)==="Escape"&&(M.preventDefault(),N(d,!1))}os(()=>{document.addEventListener("click",B),document.addEventListener("keydown",u)}),Dg(()=>{document.removeEventListener("click",B),document.removeEventListener("keydown",u)}),KA(()=>Y(l()),()=>{N(s,l().every(M=>M.disabled===!0))}),Vn(),di(!0);var E=vEA(),f=gA(E);ya(f,r,"defaultItem",{},null);var m,v=kA(f,2);Bn(gA(v),{get data(){return r0}});var S,k=kA(v,2);Da(gA(k),5,l,Ka,(M,x)=>{var F=DEA(),z=gA(F),j=gA(z),X=Z=>{Bn(Z,{get data(){return c(x),uA(()=>c(x).icon)}})};zA(j,Z=>{c(x),uA(()=>c(x).icon)&&Z(X)});var eA=kA(j);Le(()=>{var Z;jn(z,"title",(c(x),uA(()=>c(x).title))),z.disabled=(c(x),uA(()=>c(x).disabled)),Ci(z,1,o1((c(x),uA(()=>c(x).className))),"svelte-bov1j6"),Ht(eA," ".concat((c(x),(Z=uA(()=>c(x).text))!==null&&Z!==void 0?Z:"")))}),De("click",z,Z=>c(x).onClick(Z)),sA(M,F)}),Le(()=>{var M;jn(E,"title",g()),m=Ci(v,1,"jse-open-dropdown svelte-bov1j6",null,m,{"jse-visible":c(d)}),v.disabled=c(s),S=Ci(k,1,"jse-dropdown-items svelte-bov1j6",null,S,{"jse-visible":c(d)}),wg(k,"width: ".concat((M=C())!==null&&M!==void 0?M:"",";"))}),De("click",v,function(){var M=c(d);setTimeout(()=>N(d,!M))}),De("click",E,B),sA(a,E),Yt()})(i,{get width(){return Y(t()),uA(()=>t().width)},get items(){return c(A)},$$slots:{defaultItem:(a,r)=>{var s=bEA(),l=gA(s),g=d=>{Bn(d,{get data(){return Y(t()),uA(()=>t().main.icon)}})};zA(l,d=>{Y(t()),uA(()=>t().main.icon)&&d(g)});var C=kA(l);Le(d=>{var B;Ci(s,1,d,"svelte-1y5l9l1"),jn(s,"title",(Y(t()),uA(()=>t().main.title))),s.disabled=(Y(t()),uA(()=>t().main.disabled||!1)),Ht(C," ".concat((Y(t()),(B=uA(()=>t().main.text))!==null&&B!==void 0?B:"")))},[()=>o1((Y(wc),Y(n()),Y(t()),uA(()=>wc("jse-context-menu-button",n(),t().main.className))))]),De("click",s,d=>{o()(),t().main.onClick(d)}),sA(a,s)}}}),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-contextmenu.svelte-1shjn02 { - box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - background: var(--jse-context-menu-background, #656565); - color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); -} -.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) { - display: flex; - flex-direction: row; - align-items: flex-start; - justify-content: stretch; -} -.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) div.jse-label:where(.svelte-1shjn02) { - flex: 1; - white-space: nowrap; - padding: var(--jse-padding, 10px); - color: var(--jse-context-menu-color-disabled, #9d9d9d); - line-height: normal; -} -.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) div.jse-tip:where(.svelte-1shjn02) { - flex: 1; - background: var(--jse-context-menu-tip-background, rgba(255, 255, 255, 0.2)); - color: var(--context-menu-tip-color, inherit); - margin: calc(0.5 * var(--jse-padding, 10px)); - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); - font-size: 80%; - line-height: 1.3em; - display: flex; - flex-direction: row; - align-items: flex-start; - gap: var(--jse-padding, 10px); - border-radius: 3px; -} -.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) div.jse-tip:where(.svelte-1shjn02) div.jse-tip-icon:where(.svelte-1shjn02) { - padding-top: calc(0.5 * var(--jse-padding, 10px)); -} -.jse-contextmenu.svelte-1shjn02 .jse-column:where(.svelte-1shjn02) { - flex: 1; - display: flex; - flex-direction: column; - align-items: stretch; -} -.jse-contextmenu.svelte-1shjn02 .jse-column:where(.svelte-1shjn02):not(:last-child) { - border-right: 1px solid var(--jse-context-menu-separator-color, #7a7a7a); -} -.jse-contextmenu.svelte-1shjn02 .jse-separator:where(.svelte-1shjn02) { - width: 100%; - height: 1px; - background: var(--jse-context-menu-separator-color, #7a7a7a); -}`);var MEA=TA('
      '),SEA=TA('
      '),kEA=TA('
      '),_EA=TA('
      '),xEA=TA('
      '),REA=TA('
      '),NEA=TA('
      '),FEA=TA('');function xW(i,e){Jt(e,!1);var A=K(e,"items",9),t=K(e,"onRequestClose",9),n=K(e,"tip",9),o=cA(void 0,!0);os(()=>{var d=Array.from(c(o).querySelectorAll("button")).find(B=>!B.disabled);d&&d.focus()});var a={ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right"};function r(d){return console.error("Unknown type of context menu item",d),"???"}di(!0);var s=FEA(),l=gA(s);Da(l,1,A,Ka,(d,B)=>{var u=zi(),E=at(u),f=v=>{u_(v,{get item(){return c(B)},get onRequestClose(){return t()}})},m=v=>{var S=zi(),k=at(S),M=F=>{p_(F,{get item(){return c(B)},get onRequestClose(){return t()}})},x=F=>{var z=zi(),j=at(z),X=Z=>{var CA=xEA();Da(CA,5,()=>(c(B),uA(()=>c(B).items)),Ka,(wA,BA)=>{var QA=zi(),RA=at(QA),dA=xA=>{u_(xA,{get item(){return c(BA)},get onRequestClose(){return t()}})},IA=xA=>{var qA=zi(),ue=at(qA),HA=PA=>{p_(PA,{get item(){return c(BA)},get onRequestClose(){return t()}})},bA=PA=>{var it=zi(),Xe=at(it),YA=Ae=>{var pA=kEA();Da(pA,5,()=>(c(BA),uA(()=>c(BA).items)),Ka,(te,NA)=>{var Ge=zi(),JA=at(Ge),yA=Dt=>{u_(Dt,{className:"left",get item(){return c(NA)},get onRequestClose(){return t()}})},Pt=Dt=>{var fe=zi(),Zt=at(fe),Pe=vt=>{p_(vt,{className:"left",get item(){return c(NA)},get onRequestClose(){return t()}})},qe=vt=>{var Ke=zi(),Ii=at(Ke),V=iA=>{sA(iA,MEA())},$=iA=>{var oA=zi(),UA=at(oA),he=GA=>{var OA=SEA(),wt=gA(OA);Le(()=>Ht(wt,(c(NA),uA(()=>c(NA).text)))),sA(GA,OA)},me=GA=>{var OA=mr();Le(wt=>Ht(OA,wt),[()=>(c(NA),uA(()=>r(c(NA))))]),sA(GA,OA)};zA(UA,GA=>{Y(Kj),c(NA),uA(()=>Kj(c(NA)))?GA(he):GA(me,!1)},!0),sA(iA,oA)};zA(Ii,iA=>{Y(P2),c(NA),uA(()=>P2(c(NA)))?iA(V):iA($,!1)},!0),sA(vt,Ke)};zA(Zt,vt=>{Y(vh),c(NA),uA(()=>vh(c(NA)))?vt(Pe):vt(qe,!1)},!0),sA(Dt,fe)};zA(JA,Dt=>{Y(pC),c(NA),uA(()=>pC(c(NA)))?Dt(yA):Dt(Pt,!1)}),sA(te,Ge)}),sA(Ae,pA)},hA=Ae=>{var pA=zi(),te=at(pA),NA=JA=>{sA(JA,_EA())},Ge=JA=>{var yA=mr();Le(Pt=>Ht(yA,Pt),[()=>(c(BA),uA(()=>r(c(BA))))]),sA(JA,yA)};zA(te,JA=>{Y(P2),c(BA),uA(()=>P2(c(BA)))?JA(NA):JA(Ge,!1)},!0),sA(Ae,pA)};zA(Xe,Ae=>{Y(Tj),c(BA),uA(()=>Tj(c(BA)))?Ae(YA):Ae(hA,!1)},!0),sA(PA,it)};zA(ue,PA=>{Y(vh),c(BA),uA(()=>vh(c(BA)))?PA(HA):PA(bA,!1)},!0),sA(xA,qA)};zA(RA,xA=>{Y(pC),c(BA),uA(()=>pC(c(BA)))?xA(dA):xA(IA,!1)}),sA(wA,QA)}),sA(Z,CA)},eA=Z=>{var CA=zi(),wA=at(CA),BA=RA=>{sA(RA,REA())},QA=RA=>{var dA=mr();Le(IA=>Ht(dA,IA),[()=>(c(B),uA(()=>r(c(B))))]),sA(RA,dA)};zA(wA,RA=>{Y(P2),c(B),uA(()=>P2(c(B)))?RA(BA):RA(QA,!1)},!0),sA(Z,CA)};zA(j,Z=>{Y(Uj),c(B),uA(()=>Uj(c(B)))?Z(X):Z(eA,!1)},!0),sA(F,z)};zA(k,F=>{Y(vh),c(B),uA(()=>vh(c(B)))?F(M):F(x,!1)},!0),sA(v,S)};zA(E,v=>{Y(pC),c(B),uA(()=>pC(c(B)))?v(f):v(m,!1)}),sA(d,u)});var g=kA(l,2),C=d=>{var B=NEA(),u=gA(B),E=gA(u);Bn(gA(E),{get data(){return WO}});var f=gA(kA(E,2));Le(()=>Ht(f,n())),sA(d,B)};zA(g,d=>{n()&&d(C)}),ta(s,d=>N(o,d),()=>c(o)),De("keydown",s,function(d){var B=RC(d),u=a[B];if(u&&d.target){d.preventDefault();var E=rIA({allElements:Array.from(c(o).querySelectorAll("button:not([disabled])")),currentElement:d.target,direction:u,hasPrio:f=>f.getAttribute("data-type")!=="jse-open-dropdown"});E&&E.focus()}}),sA(i,s),Yt()}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-value.jse-string.svelte-1htmvf1 { - color: var(--jse-value-color-string, #008000); -} -.jse-value.jse-object.svelte-1htmvf1, .jse-value.jse-array.svelte-1htmvf1 { - min-width: 16px; - color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); -} -.jse-value.jse-number.svelte-1htmvf1 { - color: var(--jse-value-color-number, #ee422e); -} -.jse-value.jse-boolean.svelte-1htmvf1 { - color: var(--jse-value-color-boolean, #ff8c00); -} -.jse-value.jse-null.svelte-1htmvf1 { - color: var(--jse-value-color-null, #004ed0); -} -.jse-value.jse-invalid.svelte-1htmvf1 { - color: var(--jse-text-color, #4d4d4d); -} -.jse-value.jse-url.svelte-1htmvf1 { - color: var(--jse-value-color-url, #008000); - text-decoration: underline; -} - -.jse-enum-value.svelte-1htmvf1 { - background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); - border: none; - padding: 0; - font-family: inherit; - font-size: inherit; - cursor: pointer; - outline: none; -} -.jse-enum-value.jse-selected.svelte-1htmvf1 { - background: var(--jse-selection-background-color, #d3d3d3); - color: inherit; -} -.jse-enum-value.jse-value.svelte-1htmvf1:focus { - color: var(--jse-text-color, #4d4d4d); -}`);var dte=TA(""),Ite=TA("");var Mw,Sw;function kw(i,e){return Mw||(Sw=new WeakMap,Mw=new ResizeObserver(A=>{for(var t of A){var n=Sw.get(t.target);n&&n(t.target)}})),Sw.set(i,e),Mw.observe(i),{destroy:()=>{Sw.delete(i),Mw.unobserve(i)}}}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-tree-mode.svelte-10mlrw4 { - flex: 1; - display: flex; - flex-direction: column; - position: relative; - background: var(--jse-background-color, #fff); - min-width: 0; - min-height: 0; - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - color: var(--jse-text-color, #4d4d4d); - line-height: var(--jse-line-height, calc(1em + 4px)); -} -.jse-tree-mode.svelte-10mlrw4 .jse-hidden-input-label:where(.svelte-10mlrw4) .jse-hidden-input:where(.svelte-10mlrw4) { - position: fixed; - top: -10px; - left: -10px; - width: 1px; - height: 1px; - padding: 0; - border: 0; - outline: none; -} -.jse-tree-mode.no-main-menu.svelte-10mlrw4 { - border-top: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-tree-mode.svelte-10mlrw4 .jse-search-box-container:where(.svelte-10mlrw4) { - position: relative; - height: 0; - top: var(--jse-padding, 10px); - margin-right: calc(var(--jse-padding, 10px) + 20px); - margin-left: var(--jse-padding, 10px); - text-align: right; - z-index: 3; -} -.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) { - flex: 1; - overflow: auto; - position: relative; - padding: 2px; - display: flex; - flex-direction: column; - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4):last-child { - border-bottom: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) .jse-loading-space:where(.svelte-10mlrw4) { - flex: 1; -} -.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) .jse-loading:where(.svelte-10mlrw4) { - flex: 2; - text-align: center; - color: var(--jse-panel-color-readonly, #b2b2b2); - box-sizing: border-box; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); -} -.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) .jse-search-box-background:where(.svelte-10mlrw4) { - border: 50px solid var(--jse-modal-background, #f5f5f5); - margin: -2px; - margin-bottom: 2px; - display: inline-block; -}`);var LEA=TA(" ",1),GEA=TA('
      '),KEA=TA('
      ',1),UEA=TA(' ',1),TEA=TA('
      loading...
      '),OEA=TA('
      ',1);function $_(i,e){Jt(e,!1);var A=cA(void 0,!0),t=dr("jsoneditor:TreeMode"),n=typeof window>"u";t("isSSR:",n);var o=_1(),a=_1(),{openAbsolutePopup:r,closeAbsolutePopup:s}=s1("absolute-popup"),l=cA(void 0,!0),g=cA(void 0,!0),C=cA(void 0,!0),d=!1,B=BW(),u=K(e,"readOnly",9),E=K(e,"externalContent",9),f=K(e,"externalSelection",9),m=K(e,"history",9),v=K(e,"truncateTextSize",9),S=K(e,"mainMenuBar",9),k=K(e,"navigationBar",9),M=K(e,"escapeControlCharacters",9),x=K(e,"escapeUnicodeCharacters",9),F=K(e,"parser",9),z=K(e,"parseMemoizeOne",9),j=K(e,"validator",9),X=K(e,"validationParser",9),eA=K(e,"pathParser",9),Z=K(e,"indentation",9),CA=K(e,"onError",9),wA=K(e,"onChange",9),BA=K(e,"onChangeMode",9),QA=K(e,"onSelect",9),RA=K(e,"onUndo",9),dA=K(e,"onRedo",9),IA=K(e,"onRenderValue",9),xA=K(e,"onRenderMenu",9),qA=K(e,"onRenderContextMenu",9),ue=K(e,"onClassName",9),HA=K(e,"onFocus",9),bA=K(e,"onBlur",9),PA=K(e,"onSortModal",9),it=K(e,"onTransformModal",9),Xe=K(e,"onJSONEditorModal",9),YA=!1,hA=cA(!1,!0),Ae=cA(void 0,!0);vx({onMount:os,onDestroy:Dg,getWindow:()=>Ip(c(C)),hasFocus:()=>YA&&document.hasFocus()||cx(c(C)),onFocus:()=>{d=!0,HA()&&HA()()},onBlur:()=>{d=!1,bA()&&bA()()}});var pA=cA(void 0,!0),te=cA(void 0,!0),NA=void 0,Ge=!1,JA=cA(G_({json:c(pA)}),!0),yA=cA(Ap(f())?f():void 0,!0);function Pt(AA){N(yA,AA)}os(()=>{if(c(yA)){var AA=Qt(c(yA));N(JA,Bc(c(pA),c(JA),AA,Kw)),setTimeout(()=>qo(AA))}});var Dt,fe=cA(void 0,!0),Zt=cA(void 0,!0),Pe=cA(void 0,!0),qe=cA(void 0,!0),vt=cA(!1,!0),Ke=cA(!1,!0);function Ii(AA){N(qe,(Dt=AA)?tW(c(pA),Dt.items):void 0)}function V(AA,fA){return $.apply(this,arguments)}function $(){return($=Xt(function*(AA,fA){N(JA,Bc(c(pA),c(JA),AA,Kw));var ZA=_o(fA);yield Wi(AA,{element:ZA})})).apply(this,arguments)}function iA(){N(vt,!1),N(Ke,!1),Tt()}function oA(AA){t("select validation error",AA),N(yA,en(AA.path)),Wi(AA.path)}function UA(AA){var fA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:K_;t("expand"),N(JA,Bc(c(pA),c(JA),AA,fA))}function he(AA,fA){N(JA,Hj(c(pA),c(JA),AA,fA)),c(yA)&&(function(ZA,Ye){return v0(Qt(ZA),Ye)&&(Qt(ZA).length>Ye.length||nr(ZA))})(c(yA),AA)&&N(yA,void 0)}var me=cA(!1,!0),GA=cA([],!0),OA=cA(void 0,!0),wt=YB(hW);function rt(AA,fA,ZA,Ye){Kh(()=>{var Me;try{Me=wt(AA,fA,ZA,Ye)}catch(Re){Me=[{path:[],message:"Failed to validate: "+Re.message,severity:Ec.warning}]}Ui(Me,c(GA))||(t("validationErrors changed:",Me),N(GA,Me),N(OA,(function(Re,ct){var ti;return ct.forEach(ji=>{ti=hV(Re,ti,ji.path,(Wn,Cn)=>Fe(Fe({},Cn),{},{validationError:ji}))}),ct.forEach(ji=>{for(var Wn=ji.path;Wn.length>0;)Wn=an(Wn),ti=hV(Re,ti,Wn,(Cn,xo)=>xo.validationError?xo:Fe(Fe({},xo),{},{validationError:{isChildError:!0,path:Wn,message:"Contains invalid data",severity:Ec.warning}}))}),ti})(AA,c(GA))))},Me=>t("validationErrors updated in ".concat(Me," ms")))}function je(){return t("validate"),NA?{parseError:NA,isRepairable:!1}:(rt(c(pA),j(),F(),X()),An(c(GA))?void 0:{validationErrors:c(GA)})}function ze(){return c(pA)}function pi(){return c(JA)}function mn(){return c(yA)}function Sn(AA){t("applyExternalContent",{updatedContent:AA}),W4(AA)?(function(fA){if(fA!==void 0){var ZA=!Ui(c(pA),fA);if(t("update external json",{isChanged:ZA,currentlyText:c(pA)===void 0}),!!ZA){var Ye={documentState:c(JA),selection:c(yA),json:c(pA),text:c(te),textIsRepaired:c(me)};N(pA,fA),N(JA,Tl(fA,c(JA))),He(c(pA)),N(te,void 0),N(me,!1),NA=void 0,En(c(pA)),Gi(Ye)}}})(AA.json):q4(AA)&&(function(fA){if(!(fA===void 0||W4(E()))){var ZA=fA!==c(te);if(t("update external text",{isChanged:ZA}),!!ZA){var Ye={documentState:c(JA),selection:c(yA),json:c(pA),text:c(te),textIsRepaired:c(me)};try{N(pA,z()(fA)),N(JA,Tl(c(pA),c(JA))),He(c(pA)),N(te,fA),N(me,!1),NA=void 0}catch(Me){try{N(pA,z()(gg(fA))),N(JA,Tl(c(pA),c(JA))),He(c(pA)),N(te,fA),N(me,!0),NA=void 0,En(c(pA))}catch(Re){N(pA,void 0),N(JA,void 0),N(te,E().text),N(me,!1),NA=c(te)!==void 0&&c(te)!==""?Xh(c(te),Me.message||String(Me)):void 0}}En(c(pA)),Gi(Ye)}}})(AA.text)}function He(AA){Ge||(Ge=!0,N(JA,nI(AA,c(JA),[])))}function En(AA){c(yA)&&(Fr(AA,qd(c(yA)))&&Fr(AA,Qt(c(yA)))||(t("clearing selection: path does not exist anymore",c(yA)),N(yA,bh(AA,c(JA)))))}function Gi(AA){if(AA.json!==void 0||AA.text!==void 0){var fA=c(pA)!==void 0&&AA.json!==void 0;m().add({type:"tree",undo:{patch:fA?[{op:"replace",path:"",value:AA.json}]:void 0,json:AA.json,text:AA.text,documentState:AA.documentState,textIsRepaired:AA.textIsRepaired,selection:p0(AA.selection),sortedColumn:void 0},redo:{patch:fA?[{op:"replace",path:"",value:c(pA)}]:void 0,json:c(pA),text:c(te),documentState:c(JA),textIsRepaired:c(me),selection:p0(c(yA)),sortedColumn:void 0}})}}function Pi(AA,fA){var ZA;if(t("patch",AA,fA),c(pA)===void 0)throw new Error("Cannot apply patch: no JSON");var Ye=c(pA),Me={json:void 0,text:c(te),documentState:c(JA),selection:p0(c(yA)),textIsRepaired:c(me),sortedColumn:void 0},Re=eW(c(pA),AA),ct=Yq(c(pA),c(JA),AA),ti=(ZA=eE(c(pA),AA))!==null&&ZA!==void 0?ZA:c(yA),ji=typeof fA=="function"?fA(ct.json,ct.documentState,ti):void 0;return N(pA,ji?.json!==void 0?ji.json:ct.json),N(JA,ji?.state!==void 0?ji.state:ct.documentState),N(yA,ji?.selection!==void 0?ji.selection:ti),N(te,void 0),N(me,!1),N(Zt,void 0),N(Pe,void 0),NA=void 0,En(c(pA)),m().add({type:"tree",undo:Fe({patch:Re},Me),redo:{patch:AA,json:void 0,text:c(te),documentState:c(JA),selection:p0(c(yA)),sortedColumn:void 0,textIsRepaired:c(me)}}),{json:c(pA),previousJson:Ye,undo:Re,redo:AA}}function gn(){!u()&&c(yA)&&N(yA,wx(Qt(c(yA))))}function Rt(){if(!u()&&c(yA)){var AA=Qt(c(yA)),fA=$e(c(pA),AA);ua(fA)?(function(ZA,Ye){t("openJSONEditorModal",{path:ZA,value:Ye}),YA=!0,Xe()({content:{json:Ye},path:ZA,onPatch:c(b).onPatch,onClose:()=>{YA=!1,setTimeout(Tt)}})})(AA,fA):N(yA,Zw(AA))}}function Qn(){if(!u()&&bn(c(yA))){var AA=Qt(c(yA)),fA=xt(AA),ZA=$e(c(pA),AA),Ye=!m0(c(pA),c(JA),AA),Me=Ye?String(ZA):cE(String(ZA),F());t("handleToggleEnforceString",{enforceString:Ye,value:ZA,updatedValue:Me}),ee([{op:"replace",path:fA,value:Me}],(Re,ct)=>({state:I5(c(pA),ct,AA,{type:"value",enforceString:Ye})}))}}function jt(){return c(me)&&c(pA)!==void 0&&be(c(pA)),c(pA)!==void 0?{json:c(pA)}:{text:c(te)||""}}function J(){return ut.apply(this,arguments)}function ut(){return ut=Xt(function*(){var AA=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];yield vW({json:c(pA),selection:c(yA),indentation:AA?Z():void 0,readOnly:u(),parser:F(),onPatch:ee})}),ut.apply(this,arguments)}function bi(){return kn.apply(this,arguments)}function kn(){return kn=Xt(function*(){var AA=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];c(pA)!==void 0&&(yield bW({json:c(pA),selection:c(yA),indentation:AA?Z():void 0,parser:F()}))}),kn.apply(this,arguments)}function _n(AA){var fA;AA.preventDefault(),So((fA=AA.clipboardData)===null||fA===void 0?void 0:fA.getData("text/plain"))}function Co(){return ia.apply(this,arguments)}function ia(){return(ia=Xt(function*(){try{So(yield navigator.clipboard.readText())}catch(AA){console.error(AA),N(hA,!0)}})).apply(this,arguments)}function So(AA){AA!==void 0&&MW({clipboardText:AA,json:c(pA),selection:c(yA),readOnly:u(),parser:F(),onPatch:ee,onChangeText:EA,onPasteMultilineText:io,openRepairModal:Vo})}function Vo(AA,fA){N(Ae,{text:AA,onParse:ZA=>dp(ZA,Ye=>Cp(Ye,F())),onRepair:Sq,onApply:fA,onClose:Tt})}function ga(){SW({json:c(pA),text:c(te),selection:c(yA),keepSelection:!1,readOnly:u(),onChange:wA(),onPatch:ee})}function Ko(){!u()&&c(pA)!==void 0&&c(yA)&&Lh&&!An(Qt(c(yA)))&&(t("duplicate",{selection:c(yA)}),ee(Zq(c(pA),a1(c(pA),c(yA)))))}function va(){u()||!c(yA)||!bo(c(yA))&&!bn(c(yA))||An(Qt(c(yA)))||(t("extract",{selection:c(yA)}),ee(Xq(c(pA),c(yA)),(AA,fA)=>{if(ua(AA))return{state:c_(AA,fA,[])}}))}function ca(AA){r5({insertType:AA,selectInside:!0,initialValue:void 0,json:c(pA),selection:c(yA),readOnly:u(),parser:F(),onPatch:ee,onReplaceJson:be})}function pa(AA){Cr(c(yA))&&N(yA,en(c(yA).path)),c(yA)||N(yA,bh(c(pA),c(JA))),ca(AA)}function Uo(AA){if(!u()&&c(yA))if(ww(c(yA)))try{var fA=qd(c(yA)),ZA=$e(c(pA),fA),Ye=(function(Re,ct,ti){if(ct==="array"){if(Array.isArray(Re))return Re;if(Jn(Re))return kj(Re);if(typeof Re=="string")try{var ji=ti.parse(Re);if(Array.isArray(ji))return ji;if(Jn(ji))return kj(ji)}catch(Cn){return[Re]}return[Re]}if(ct==="object"){if(Array.isArray(Re))return Sj(Re);if(Jn(Re))return Re;if(typeof Re=="string")try{var Wn=ti.parse(Re);if(Jn(Wn))return Wn;if(Array.isArray(Wn))return Sj(Wn)}catch(Cn){return{value:Re}}return{value:Re}}if(ct==="value")return ua(Re)?ti.stringify(Re):Re;throw new Error("Cannot convert ".concat(sx(Re,ti)," to ").concat(ct))})(ZA,AA,F());if(Ye===ZA)return;var Me=[{op:"replace",path:xt(fA),value:Ye}];t("handleConvert",{selection:c(yA),path:fA,type:AA,operations:Me}),ee(Me,(Re,ct)=>({state:c(yA)?nI(Re,ct,Qt(c(yA))):c(JA)}))}catch(Re){CA()(Re)}else CA()(new Error("Cannot convert current selection to ".concat(AA)))}function de(){if(c(yA)){var AA=Vj(c(pA),c(JA),c(yA),!1),fA=an(Qt(c(yA)));AA&&!An(Qt(AA))&&Ui(fA,an(Qt(AA)))?N(yA,SC(Qt(AA))):N(yA,FC(fA)),t("insert before",{selection:c(yA),selectionBefore:AA,parentPath:fA}),jo(),nn()}}function xi(){if(c(yA)){var AA=n1(c(pA),c(yA));t("insert after",AA),N(yA,SC(AA)),jo(),nn()}}function wn(AA){return xn.apply(this,arguments)}function xn(){return(xn=Xt(function*(AA){yield kW({char:AA,selectInside:!0,json:c(pA),selection:c(yA),readOnly:u(),parser:F(),onPatch:ee,onReplaceJson:be,onSelect:Pt})})).apply(this,arguments)}function na(){if(!u()&&m().canUndo){var AA=m().undo();if(qw(AA)){var fA={json:c(pA),text:c(te)};N(pA,AA.undo.patch?ol(c(pA),AA.undo.patch):AA.undo.json),N(JA,AA.undo.documentState),N(yA,AA.undo.selection),N(te,AA.undo.text),N(me,AA.undo.textIsRepaired),NA=void 0,t("undo",{item:AA,json:c(pA),documentState:c(JA),selection:c(yA)}),SA(fA,AA.undo.patch&&AA.redo.patch?{json:c(pA),previousJson:fA.json,redo:AA.undo.patch,undo:AA.redo.patch}:void 0),Tt(),c(yA)&&Wi(Qt(c(yA)),{scrollToWhenVisible:!1})}else RA()(AA)}}function Ra(){if(!u()&&m().canRedo){var AA=m().redo();if(qw(AA)){var fA={json:c(pA),text:c(te)};N(pA,AA.redo.patch?ol(c(pA),AA.redo.patch):AA.redo.json),N(JA,AA.redo.documentState),N(yA,AA.redo.selection),N(te,AA.redo.text),N(me,AA.redo.textIsRepaired),NA=void 0,t("redo",{item:AA,json:c(pA),documentState:c(JA),selection:c(yA)}),SA(fA,AA.undo.patch&&AA.redo.patch?{json:c(pA),previousJson:fA.json,redo:AA.redo.patch,undo:AA.undo.patch}:void 0),Tt(),c(yA)&&Wi(Qt(c(yA)),{scrollToWhenVisible:!1})}else dA()(AA)}}function Oi(AA){var fA;u()||c(pA)===void 0||(YA=!0,PA()({id:o,json:c(pA),rootPath:AA,onSort:(fA=Xt(function*(ZA){var{operations:Ye}=ZA;t("onSort",AA,Ye),ee(Ye,(Me,Re)=>({state:c_(Me,Re,AA),selection:en(AA)}))}),function(ZA){return fA.apply(this,arguments)}),onClose:()=>{YA=!1,setTimeout(Tt)}}))}function ko(){c(yA)&&Oi(Wj(c(pA),c(yA)))}function ar(){Oi([])}function To(AA){if(c(pA)!==void 0){var{id:fA,onTransform:ZA,onClose:Ye}=AA,Me=AA.rootPath||[];YA=!0,it()({id:fA||a,json:c(pA),rootPath:Me,onTransform:Re=>{ZA?ZA({operations:Re,json:c(pA),transformedJson:ol(c(pA),Re)}):(t("onTransform",Me,Re),ee(Re,(ct,ti)=>({state:c_(ct,ti,Me),selection:en(Me)})))},onClose:()=>{YA=!1,setTimeout(Tt),Ye&&Ye()}})}}function ja(){c(yA)&&To({rootPath:Wj(c(pA),c(yA))})}function to(){To({rootPath:[]})}function Wi(AA){return ei.apply(this,arguments)}function ei(){return ei=Xt(function*(AA){var{scrollToWhenVisible:fA=!0,element:ZA}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};N(JA,Bc(c(pA),c(JA),AA,Kw));var Ye=ZA??qn(AA);if(t("scrollTo",{path:AA,elem:Ye,refContents:c(l)}),!Ye||!c(l))return Promise.resolve();var Me=c(l).getBoundingClientRect(),Re=Ye.getBoundingClientRect();if(!fA&&Re.bottom>Me.top&&Re.top{B(Ye,{container:c(l),offset:ct,duration:300,callback:()=>ti()})})}),ei.apply(this,arguments)}function qn(AA){var fA,ZA;return jo(),(fA=(ZA=c(l))===null||ZA===void 0?void 0:ZA.querySelector('div[data-path="'.concat(Gw(AA),'"]')))!==null&&fA!==void 0?fA:void 0}function _o(AA){var fA,ZA;return jo(),(fA=(ZA=c(l))===null||ZA===void 0?void 0:ZA.querySelector('span[data-search-result-index="'.concat(AA,'"]')))!==null&&fA!==void 0?fA:void 0}function qo(AA){var fA=qn(AA);if(fA&&c(l)){var ZA=c(l).getBoundingClientRect(),Ye=fA.getBoundingClientRect(),Me=ua($e(c(pA),AA))?20:Ye.height;Ye.topZA.bottom-20&&B(fA,{container:c(l),offset:-(ZA.height-Me-20),duration:0})}}function SA(AA,fA){if(AA.json!==void 0||AA?.text!==void 0){if(c(te)!==void 0){var ZA,Ye={text:c(te),json:void 0};(ZA=wA())===null||ZA===void 0||ZA(Ye,AA,{contentErrors:je(),patchResult:fA})}else if(c(pA)!==void 0){var Me,Re={text:void 0,json:c(pA)};(Me=wA())===null||Me===void 0||Me(Re,AA,{contentErrors:je(),patchResult:fA})}}}function ee(AA,fA){t("handlePatch",AA,fA);var ZA={json:c(pA),text:c(te)},Ye=Pi(AA,fA);return SA(ZA,Ye),Ye}function be(AA,fA){var ZA={json:c(pA),text:c(te)},Ye={documentState:c(JA),selection:c(yA),json:c(pA),text:c(te),textIsRepaired:c(me)},Me=Bc(c(pA),Tl(AA,c(JA)),[],Y4),Re=typeof fA=="function"?fA(AA,Me,c(yA)):void 0;N(pA,Re?.json!==void 0?Re.json:AA),N(JA,Re?.state!==void 0?Re.state:Me),N(yA,Re?.selection!==void 0?Re.selection:c(yA)),N(te,void 0),N(me,!1),NA=void 0,En(c(pA)),Gi(Ye),SA(ZA,void 0)}function EA(AA,fA){t("handleChangeText");var ZA={json:c(pA),text:c(te)},Ye={documentState:c(JA),selection:c(yA),json:c(pA),text:c(te),textIsRepaired:c(me)};try{N(pA,z()(AA)),N(JA,Bc(c(pA),Tl(c(pA),c(JA)),[],Y4)),N(te,void 0),N(me,!1),NA=void 0}catch(Re){try{N(pA,z()(gg(AA))),N(JA,Bc(c(pA),Tl(c(pA),c(JA)),[],Y4)),N(te,AA),N(me,!0),NA=void 0}catch(ct){N(pA,void 0),N(JA,G_({json:c(pA),expand:Y4})),N(te,AA),N(me,!1),NA=c(te)!==""?Xh(c(te),Re.message||String(Re)):void 0}}if(typeof fA=="function"){var Me=fA(c(pA),c(JA),c(yA));N(pA,Me?.json!==void 0?Me.json:c(pA)),N(JA,Me?.state!==void 0?Me.state:c(JA)),N(yA,Me?.selection!==void 0?Me.selection:c(yA))}En(c(pA)),Gi(Ye),SA(ZA,void 0)}function LA(AA,fA){var ZA=arguments.length>2&&arguments[2]!==void 0&&arguments[2];t("handleExpand",{path:AA,expanded:fA,recursive:ZA}),fA?UA(AA,ZA?mx:K_):he(AA,ZA),Tt()}function Ce(){LA([],!0,!0)}function Te(){LA([],!1,!0)}function gt(AA){t("openFind",{findAndReplace:AA}),N(vt,!1),N(Ke,!1),jo(),N(vt,!0),N(Ke,AA)}function dt(AA,fA){t("handleExpandSection",AA,fA),N(JA,(function(ZA,Ye,Me,Re){return AE(ZA,Ye,Me,(ct,ti)=>{if(!cr(ti))return ti;var ji=Tq(ti.visibleSections.concat(Re));return Fe(Fe({},ti),{},{visibleSections:ji})})})(c(pA),c(JA),AA,fA))}function Ut(AA){t("pasted json as text",AA),N(Zt,AA)}function io(AA){t("pasted multiline text",{pastedText:AA}),N(Pe,AA)}function Zi(AA){var fA,{anchor:ZA,left:Ye,top:Me,width:Re,height:ct,offsetTop:ti,offsetLeft:ji,showTip:Wn}=AA,Cn=(function(Bo){var{json:da,documentState:Nn,selection:qt,readOnly:un,onEditKey:si,onEditValue:_t,onToggleEnforceString:fi,onCut:ma,onCopy:ho,onPaste:Ia,onRemove:ba,onDuplicate:wr,onExtract:R0,onInsertBefore:ml,onInsert:Sg,onConvert:kc,onInsertAfter:kg,onSort:ss,onTransform:yr}=Bo,wl=da!==void 0,N0=!!qt,yl=!!qt&&An(Qt(qt)),Zn=qt?$e(da,Qt(qt)):void 0,Ua=Array.isArray(Zn)?"Edit array":Jn(Zn)?"Edit object":"Edit value",Ta=wl&&(bo(qt)||Cr(qt)||bn(qt)),m1=qt&&!yl?$e(da,an(Qt(qt))):void 0,EI=!un&&wl&&Ww(qt)&&!yl&&!Array.isArray(m1),w1=!un&&wl&&qt!==void 0&&Ww(qt),OE=w1&&!ua(Zn),QI=!un&&Ta,JE=Ta,kD=!un&&N0,_D=!un&&wl&&Ta&&!yl,xD=!un&&wl&&qt!==void 0&&(bo(qt)||bn(qt))&&!yl,_c=Ta,y1=_c?"Convert to:":"Insert:",Oa=!un&&(nr(qt)&&Array.isArray(Zn)||hl(qt)&&Array.isArray(m1)),Pl=!un&&(_c?ww(qt)&&!Jn(Zn):N0),YE=!un&&(_c?ww(qt)&&!Array.isArray(Zn):N0),HE=!un&&(_c?ww(qt)&&ua(Zn):N0),D1=qt!==void 0&&m0(da,Nn,Qt(qt));function Jr(zE){Ta?zE!=="structure"&&kc(zE):Sg(zE)}return[{type:"row",items:[{type:"button",onClick:()=>si(),icon:dd,text:"Edit key",title:"Edit the key (Double-click on the key)",disabled:!EI},{type:"dropdown-button",main:{type:"button",onClick:()=>_t(),icon:dd,text:Ua,title:"Edit the value (Double-click on the value)",disabled:!w1},width:"11em",items:[{type:"button",icon:dd,text:Ua,title:"Edit the value (Double-click on the value)",onClick:()=>_t(),disabled:!w1},{type:"button",icon:D1?kM:RM,text:"Enforce string",title:"Enforce keeping the value as string when it contains a numeric value",onClick:()=>fi(),disabled:!OE}]}]},{type:"separator"},{type:"row",items:[{type:"dropdown-button",main:{type:"button",onClick:()=>ma(!0),icon:Id,text:"Cut",title:"Cut selected contents, formatted with indentation (Ctrl+X)",disabled:!QI},width:"10em",items:[{type:"button",icon:Id,text:"Cut formatted",title:"Cut selected contents, formatted with indentation (Ctrl+X)",onClick:()=>ma(!0),disabled:!QI},{type:"button",icon:Id,text:"Cut compacted",title:"Cut selected contents, without indentation (Ctrl+Shift+X)",onClick:()=>ma(!1),disabled:!QI}]},{type:"dropdown-button",main:{type:"button",onClick:()=>ho(!0),icon:aC,text:"Copy",title:"Copy selected contents, formatted with indentation (Ctrl+C)",disabled:!JE},width:"12em",items:[{type:"button",icon:aC,text:"Copy formatted",title:"Copy selected contents, formatted with indentation (Ctrl+C)",onClick:()=>ho(!0),disabled:!JE},{type:"button",icon:aC,text:"Copy compacted",title:"Copy selected contents, without indentation (Ctrl+Shift+C)",onClick:()=>ho(!1),disabled:!JE}]},{type:"button",onClick:()=>Ia(),icon:bM,text:"Paste",title:"Paste clipboard contents (Ctrl+V)",disabled:!kD}]},{type:"separator"},{type:"row",items:[{type:"column",items:[{type:"button",onClick:()=>wr(),icon:SM,text:"Duplicate",title:"Duplicate selected contents (Ctrl+D)",disabled:!_D},{type:"button",onClick:()=>R0(),icon:XO,text:"Extract",title:"Extract selected contents",disabled:!xD},{type:"button",onClick:()=>ss(),icon:Ju,text:"Sort",title:"Sort array or object contents",disabled:un||!Ta},{type:"button",onClick:()=>yr(),icon:Ku,text:"Transform",title:"Transform array or object contents (filter, sort, project)",disabled:un||!Ta},{type:"button",onClick:()=>ba(),icon:m6,text:"Remove",title:"Remove selected contents (Delete)",disabled:un||!Ta}]},{type:"column",items:[{type:"label",text:y1},{type:"button",onClick:()=>Jr("structure"),icon:_c?Yu:Bd,text:"Structure",title:y1+" structure like the first item in the array",disabled:!Oa},{type:"button",onClick:()=>Jr("object"),icon:_c?Yu:Bd,text:"Object",title:y1+" object",disabled:!Pl},{type:"button",onClick:()=>Jr("array"),icon:_c?Yu:Bd,text:"Array",title:y1+" array",disabled:!YE},{type:"button",onClick:()=>Jr("value"),icon:_c?Yu:Bd,text:"Value",title:y1+" value",disabled:!HE}]}]},{type:"separator"},{type:"row",items:[{type:"button",onClick:()=>ml(),icon:oJ,text:"Insert before",title:"Select area before current entry to insert or paste contents",disabled:un||!Ta||yl},{type:"button",onClick:()=>kg(),icon:$O,text:"Insert after",title:"Select area after current entry to insert or paste contents",disabled:un||!Ta||yl}]}]})({json:c(pA),documentState:c(JA),selection:c(yA),readOnly:u(),onEditKey:gn,onEditValue:Rt,onToggleEnforceString:Qn,onCut:J,onCopy:bi,onPaste:Co,onRemove:ga,onDuplicate:Ko,onExtract:va,onInsertBefore:de,onInsert:pa,onInsertAfter:xi,onConvert:Uo,onSort:ko,onTransform:ja}),xo=(fA=qA()(Cn))!==null&&fA!==void 0?fA:Cn;if(xo!==!1){var ri={left:Ye,top:Me,offsetTop:ti,offsetLeft:ji,width:Re,height:ct,anchor:ZA,closeOnOuterClick:!0,onClose:()=>{YA=!1,Tt()}};YA=!0;var Ca=r(xW,{tip:Wn?"Tip: you can open this context menu via right-click or with Ctrl+Q":void 0,items:xo,onRequestClose:()=>s(Ca)},ri)}}function nn(AA){if(!gr(c(yA)))if(AA&&(AA.stopPropagation(),AA.preventDefault()),AA&&AA.type==="contextmenu"&&AA.target!==c(g))Zi({left:AA.clientX,top:AA.clientY,width:yC,height:wC,showTip:!1});else{var fA,ZA=(fA=c(l))===null||fA===void 0?void 0:fA.querySelector(".jse-context-menu-pointer.jse-selected");if(ZA)Zi({anchor:ZA,offsetTop:2,width:yC,height:wC,showTip:!1});else{var Ye,Me=(Ye=c(l))===null||Ye===void 0?void 0:Ye.getBoundingClientRect();Me&&Zi({top:Me.top+2,left:Me.left+2,width:yC,height:wC,showTip:!1})}}}function ai(AA){Zi({anchor:Kq(AA.target,"BUTTON"),offsetTop:0,width:yC,height:wC,showTip:!0})}function Xi(){return Na.apply(this,arguments)}function Na(){return(Na=Xt(function*(){if(t("apply pasted json",c(Zt)),c(Zt)){var{onPasteAsJson:AA}=c(Zt);N(Zt,void 0),AA(),setTimeout(Tt)}})).apply(this,arguments)}function Vt(){return It.apply(this,arguments)}function It(){return(It=Xt(function*(){t("apply pasted multiline text",c(Pe)),c(Pe)&&(So(JSON.stringify(c(Pe))),setTimeout(Tt))})).apply(this,arguments)}function $i(){t("clear pasted json"),N(Zt,void 0),Tt()}function cn(){t("clear pasted multiline text"),N(Pe,void 0),Tt()}function Io(){BA()(xa.text)}function Rn(AA){N(yA,AA),Tt(),Wi(Qt(AA))}function Tt(){t("focus"),c(g)&&(c(g).focus(),c(g).select())}function fa(AA){return(function(fA,ZA,Ye){var Me=an(Ye),Re=[Ji(Ye)],ct=$e(fA,Me),ti=ct?g_(ct,ZA,Re):void 0;return ti?en(Me.concat(ti)):SC(Ye)})(c(pA),c(JA),AA)}function oa(AA){c(A)&&c(A).onDrag(AA)}function y(){c(A)&&c(A).onDragEnd()}var b=cA(void 0,!0);KA(()=>c(yA),()=>{var AA;AA=c(yA),Ui(AA,f())||(t("onSelect",AA),QA()(AA))}),KA(()=>(Y(M()),Y(x())),()=>{N(fe,lx({escapeControlCharacters:M(),escapeUnicodeCharacters:x()}))}),KA(()=>c(vt),()=>{(function(AA){c(l)&&AA&&c(l).scrollTop===0&&(Ol(l,c(l).style.overflowAnchor="none"),Ol(l,c(l).scrollTop+=J4),setTimeout(()=>{c(l)&&Ol(l,c(l).style.overflowAnchor="")}))})(c(vt))}),KA(()=>Y(E()),()=>{Sn(E())}),KA(()=>Y(f()),()=>{(function(AA){Ui(c(yA),AA)||(t("applyExternalSelection",{selection:c(yA),externalSelection:AA}),Ap(AA)&&N(yA,AA))})(f())}),KA(()=>(c(pA),Y(j()),Y(F()),Y(X())),()=>{rt(c(pA),j(),F(),X())}),KA(()=>(c(l),BV),()=>{N(A,c(l)?BV(c(l)):void 0)}),KA(()=>(Y(u()),Y(v()),Y(F()),c(fe),Y(IA()),Y(ue())),()=>{N(b,{mode:xa.tree,readOnly:u(),truncateTextSize:v(),parser:F(),normalization:c(fe),getJson:ze,getDocumentState:pi,getSelection:mn,findElement:qn,findNextInside:fa,focus:Tt,onPatch:ee,onInsert:ca,onExpand:LA,onSelect:Pt,onFind:gt,onExpandSection:dt,onPasteJson:Ut,onRenderValue:IA(),onContextMenu:Zi,onClassName:ue()||(()=>{}),onDrag:oa,onDragEnd:y})}),KA(()=>c(b),()=>{t("context changed",c(b))}),Vn();var R={expand:UA,collapse:he,validate:je,getJson:ze,patch:Pi,acceptAutoRepair:jt,openTransformModal:To,scrollTo:Wi,findElement:qn,findSearchResult:_o,focus:Tt};di(!0);var W=OEA();De("mousedown",bC,function(AA){!CE(AA.target,fA=>fA===c(C))&&gr(c(yA))&&(t("click outside the editor, exit edit mode"),N(yA,p0(c(yA))),d&&c(g)&&(c(g).focus(),c(g).blur()),t("blur (outside editor)"),c(g)&&c(g).blur())});var _,q=at(W),tA=gA(q),rA=AA=>{(function(fA,ZA){Jt(ZA,!1);var Ye=cA(void 0,!0),Me=cA(void 0,!0),Re=cA(void 0,!0),ct=K(ZA,"json",9),ti=K(ZA,"selection",9),ji=K(ZA,"readOnly",9),Wn=K(ZA,"showSearch",13,!1),Cn=K(ZA,"history",9),xo=K(ZA,"onExpandAll",9),ri=K(ZA,"onCollapseAll",9),Ca=K(ZA,"onUndo",9),Bo=K(ZA,"onRedo",9),da=K(ZA,"onSort",9),Nn=K(ZA,"onTransform",9),qt=K(ZA,"onContextMenu",9),un=K(ZA,"onCopy",9),si=K(ZA,"onRenderMenu",9);function _t(){Wn(!Wn())}var fi=cA(void 0,!0),ma=cA(void 0,!0),ho=cA(void 0,!0),Ia=cA(void 0,!0);KA(()=>Y(ct()),()=>{N(Ye,ct()!==void 0)}),KA(()=>(c(Ye),Y(ti()),bn),()=>{N(Me,c(Ye)&&(bo(ti())||Cr(ti())||bn(ti())))}),KA(()=>(Y(xo()),Y(ct())),()=>{N(fi,{type:"button",icon:pW,title:"Expand all",className:"jse-expand-all",onClick:xo(),disabled:!ua(ct())})}),KA(()=>(Y(ri()),Y(ct())),()=>{N(ma,{type:"button",icon:fW,title:"Collapse all",className:"jse-collapse-all",onClick:ri(),disabled:!ua(ct())})}),KA(()=>Y(ct()),()=>{N(ho,{type:"button",icon:Uu,title:"Search (Ctrl+F)",className:"jse-search",onClick:_t,disabled:ct()===void 0})}),KA(()=>(Y(ji()),c(fi),c(ma),Y(da()),Y(ct()),Y(Nn()),c(ho),Y(qt()),Y(Ca()),Y(Cn()),Y(Bo()),Y(un()),c(Me)),()=>{N(Ia,ji()?[c(fi),c(ma),{type:"separator"},{type:"button",icon:aC,title:"Copy (Ctrl+C)",className:"jse-copy",onClick:un(),disabled:!c(Me)},{type:"separator"},c(ho),{type:"space"}]:[c(fi),c(ma),{type:"separator"},{type:"button",icon:Ju,title:"Sort",className:"jse-sort",onClick:da(),disabled:ji()||ct()===void 0},{type:"button",icon:Ku,title:"Transform contents (filter, sort, project)",className:"jse-transform",onClick:Nn(),disabled:ji()||ct()===void 0},c(ho),{type:"button",icon:MM,title:Ix,className:"jse-contextmenu",onClick:qt()},{type:"separator"},{type:"button",icon:D6,title:"Undo (Ctrl+Z)",className:"jse-undo",onClick:Ca(),disabled:!Cn().canUndo},{type:"button",icon:y6,title:"Redo (Ctrl+Shift+Z)",className:"jse-redo",onClick:Bo(),disabled:!Cn().canRedo},{type:"space"}])}),KA(()=>(Y(si()),c(Ia)),()=>{N(Re,si()(c(Ia))||c(Ia))}),Vn(),di(!0),p5(fA,{get items(){return c(Re)}}),Yt()})(AA,{get json(){return c(pA)},get selection(){return c(yA)},get readOnly(){return u()},get history(){return m()},onExpandAll:Ce,onCollapseAll:Te,onUndo:na,onRedo:Ra,onSort:ar,onTransform:to,onContextMenu:ai,onCopy:bi,get onRenderMenu(){return xA()},get showSearch(){return c(vt)},set showSearch(fA){N(vt,fA)},$$legacy:!0})};zA(tA,AA=>{S()&&AA(rA)});var DA=kA(tA,2),ae=AA=>{IEA(AA,{get json(){return c(pA)},get selection(){return c(yA)},onSelect:Rn,get onError(){return CA()},get pathParser(){return eA()}})};zA(DA,AA=>{k()&&AA(ae)});var ge=kA(DA,2),pe=AA=>{var fA=UEA(),ZA=at(fA),Ye=gA(ZA);Ye.readOnly=!0,ta(Ye,ti=>N(g,ti),()=>c(g));var Me=kA(ZA,2),Re=ti=>{var ji=zi(),Wn=at(ji),Cn=ri=>{(function(Ca,Bo){function da(fi){fi.stopPropagation(),Bo.onCreateObject()}function Nn(fi){fi.stopPropagation(),Bo.onCreateArray()}Jt(Bo,!0);var qt=eEA();qt.__click=()=>Bo.onClick();var un=kA(gA(qt),2),si=kA(gA(un),2),_t=fi=>{var ma=AEA(),ho=kA(at(ma),2);jn(ho,"title","Create an empty JSON object (press '{')"),ho.__click=da;var Ia=kA(ho,2);jn(Ia,"title","Create an empty JSON array (press '[')"),Ia.__click=Nn,sA(fi,ma)};zA(si,fi=>{Bo.readOnly||fi(_t)}),sA(Ca,qt),Yt()})(ri,{get readOnly(){return u()},onCreateObject:()=>{Tt(),wn("{")},onCreateArray:()=>{Tt(),wn("[")},onClick:()=>{Tt()}})},xo=ri=>{var Ca=LEA(),Bo=at(Ca),da=lt(()=>u()?[]:[{icon:Tu,text:"Repair manually",title:'Open the document in "code" mode and repair it manually',onClick:Io}]);Hl(Bo,{type:"error",message:"The loaded JSON document is invalid and could not be repaired automatically.",get actions(){return c(da)}}),_W(kA(Bo,2),{get text(){return c(te)},get json(){return c(pA)},get indentation(){return Z()},get parser(){return F()}}),sA(ri,Ca)};zA(Wn,ri=>{c(te)===""||c(te)===void 0?ri(Cn):ri(xo,!1)}),sA(ti,ji)},ct=ti=>{var ji=KEA(),Wn=at(ji);wW(gA(Wn),{get json(){return c(pA)},get documentState(){return c(JA)},get parser(){return F()},get showSearch(){return c(vt)},get showReplace(){return c(Ke)},get readOnly(){return u()},columns:void 0,onSearch:Ii,onFocus:V,onPatch:ee,onClose:iA});var Cn=kA(Wn,2);jn(Cn,"data-jsoneditor-scrollable-contents",!0);var xo=gA(Cn),ri=si=>{sA(si,GEA())};zA(xo,si=>{c(vt)&&si(ri)}),j_(kA(xo,2),{get value(){return c(pA)},pointer:"",get state(){return c(JA)},get validationErrors(){return c(OA)},get searchResults(){return c(qe)},get selection(){return c(yA)},get context(){return c(b)},get onDragSelectionStart(){return Fa}}),ta(Cn,si=>N(l,si),()=>c(l));var Ca=kA(Cn,2),Bo=si=>{var _t=lt(()=>(c(Zt),uA(()=>"You pasted a JSON ".concat(Array.isArray(c(Zt).contents)?"array":"object"," as text")))),fi=lt(()=>[{icon:oC,text:"Paste as JSON instead",title:"Replace the value with the pasted JSON",onMouseDown:Xi},{text:"Leave as is",title:"Keep the JSON embedded in the value",onClick:$i}]);Hl(si,{type:"info",get message(){return c(_t)},get actions(){return c(fi)}})};zA(Ca,si=>{c(Zt)&&si(Bo)});var da=kA(Ca,2),Nn=si=>{var _t=lt(()=>[{icon:oC,text:"Paste as string instead",title:"Paste the clipboard data as a single string value instead of an array",onClick:Vt},{text:"Leave as is",title:"Keep the pasted array",onClick:cn}]);Hl(si,{type:"info",message:"Multiline text was pasted as array",get actions(){return c(_t)}})};zA(da,si=>{c(Pe)&&si(Nn)});var qt=kA(da,2),un=si=>{var _t=lt(()=>u()?[]:[{icon:w6,text:"Ok",title:"Accept the repaired document",onClick:jt},{icon:Tu,text:"Repair manually instead",title:"Leave the document unchanged and repair it manually instead",onClick:Io}]);Hl(si,{type:"success",message:"The loaded JSON document was invalid but is successfully repaired.",get actions(){return c(_t)},onClose:Tt})};zA(qt,si=>{c(me)&&si(un)}),bx(kA(qt,2),{get validationErrors(){return c(GA)},selectError:oA}),sA(ti,ji)};zA(Me,ti=>{c(pA)===void 0?ti(Re):ti(ct,!1)}),De("paste",Ye,_n),sA(AA,fA)},Ve=AA=>{sA(AA,TEA())};zA(ge,AA=>{n?AA(Ve,!1):AA(pe)}),ta(q,AA=>N(C,AA),()=>c(C));var Ue=kA(q,2),Je=AA=>{EW(AA,{onClose:()=>N(hA,!1)})};zA(Ue,AA=>{c(hA)&&AA(Je)});var Ei=kA(Ue,2),no=AA=>{QW(AA,t1(()=>c(Ae),{onClose:()=>{var fA;(fA=c(Ae))===null||fA===void 0||fA.onClose(),N(Ae,void 0)}}))};return zA(Ei,AA=>{c(Ae)&&AA(no)}),Le(()=>_=Ci(q,1,"jse-tree-mode svelte-10mlrw4",null,_,{"no-main-menu":!S()})),De("keydown",q,function(AA){var fA=RC(AA),ZA=AA.shiftKey;if(t("keydown",{combo:fA,key:AA.key}),fA==="Ctrl+X"&&(AA.preventDefault(),J(!0)),fA==="Ctrl+Shift+X"&&(AA.preventDefault(),J(!1)),fA==="Ctrl+C"&&(AA.preventDefault(),bi(!0)),fA==="Ctrl+Shift+C"&&(AA.preventDefault(),bi(!1)),fA==="Ctrl+D"&&(AA.preventDefault(),Ko()),fA!=="Delete"&&fA!=="Backspace"||(AA.preventDefault(),ga()),fA==="Insert"&&(AA.preventDefault(),ca("structure")),fA==="Ctrl+A"&&(AA.preventDefault(),N(yA,en([]))),fA==="Ctrl+Q"&&nn(AA),fA==="ArrowUp"||fA==="Shift+ArrowUp"){AA.preventDefault();var Ye=c(yA)?Vj(c(pA),c(JA),c(yA),ZA)||c(yA):bh(c(pA),c(JA));N(yA,Ye),qo(Qt(Ye))}if(fA==="ArrowDown"||fA==="Shift+ArrowDown"){AA.preventDefault();var Me=c(yA)?(function(Cn,xo,ri){var Ca=arguments.length>3&&arguments[3]!==void 0&&arguments[3];if(ri){var Bo=Ca?Qt(ri):n1(Cn,ri),da=ua($e(Cn,Bo))?Hj(Cn,xo,Bo,!0):xo,Nn=g_(Cn,xo,Bo),qt=g_(Cn,da,Bo);if(Ca)return nr(ri)?Nn!==void 0?vs(Nn,Nn):void 0:hl(ri)?qt!==void 0?vs(qt,qt):void 0:qt!==void 0?vs(qd(ri),qt):void 0;if(hl(ri))return qt!==void 0?en(qt):void 0;if(nr(ri)||bn(ri))return Nn!==void 0?en(Nn):void 0;if(Cr(ri)){if(Nn===void 0||Nn.length===0)return;var un=an(Nn),si=$e(Cn,un);return Array.isArray(si)?en(Nn):NC(Nn)}return bo(ri)?qt!==void 0?en(qt):Nn!==void 0?en(Nn):void 0:void 0}})(c(pA),c(JA),c(yA),ZA)||c(yA):bh(c(pA),c(JA));N(yA,Me),qo(Qt(Me))}if(fA==="ArrowLeft"||fA==="Shift+ArrowLeft"){AA.preventDefault();var Re=c(yA)?(function(Cn,xo,ri){var Ca=arguments.length>3&&arguments[3]!==void 0&&arguments[3],Bo=!(arguments.length>4&&arguments[4]!==void 0)||arguments[4];if(ri){var{caret:da,previous:Nn}=qj(Cn,xo,ri,Bo);if(Ca)return bo(ri)?void 0:vs(ri.path,ri.path);if(da&&Nn)return U_(Nn);var qt=an(Qt(ri)),un=$e(Cn,qt);return bn(ri)&&Array.isArray(un)?vs(ri.path,ri.path):bo(ri)&&!Array.isArray(un)?NC(ri.focusPath):void 0}})(c(pA),c(JA),c(yA),ZA,!u())||c(yA):bh(c(pA),c(JA));N(yA,Re),qo(Qt(Re))}if(fA==="ArrowRight"||fA==="Shift+ArrowRight"){AA.preventDefault();var ct=c(yA)&&c(pA)!==void 0?(function(Cn,xo,ri){var Ca=arguments.length>3&&arguments[3]!==void 0&&arguments[3],Bo=!(arguments.length>4&&arguments[4]!==void 0)||arguments[4];if(ri){var{caret:da,next:Nn}=qj(Cn,xo,ri,Bo);return Ca?bo(ri)?void 0:vs(ri.path,ri.path):da&&Nn?U_(Nn):bo(ri)?en(ri.focusPath):void 0}})(c(pA),c(JA),c(yA),ZA,!u())||c(yA):bh(c(pA),c(JA));N(yA,ct),qo(Qt(ct))}if(fA==="Enter"&&c(yA)){if(B5(c(yA))){var ti=c(yA).focusPath,ji=$e(c(pA),an(ti));Array.isArray(ji)&&(AA.preventDefault(),N(yA,en(ti)))}Cr(c(yA))&&(AA.preventDefault(),N(yA,Fe(Fe({},c(yA)),{},{edit:!0}))),bn(c(yA))&&(AA.preventDefault(),ua($e(c(pA),c(yA).path))?LA(c(yA).path,!0):N(yA,Fe(Fe({},c(yA)),{},{edit:!0})))}if(fA.replace(/^Shift\+/,"").length===1&&c(yA))return AA.preventDefault(),void wn(AA.key);if(fA==="Enter"&&(hl(c(yA))||nr(c(yA))))return AA.preventDefault(),void wn("");if(fA==="Ctrl+Enter"&&bn(c(yA))){var Wn=$e(c(pA),c(yA).path);d5(Wn)&&window.open(String(Wn),"_blank")}fA==="Escape"&&c(yA)&&(AA.preventDefault(),N(yA,void 0)),fA==="Ctrl+F"&&(AA.preventDefault(),gt(!1)),fA==="Ctrl+H"&&(AA.preventDefault(),gt(!0)),fA==="Ctrl+Z"&&(AA.preventDefault(),na()),fA==="Ctrl+Shift+Z"&&(AA.preventDefault(),Ra())}),De("mousedown",q,function(AA){t("handleMouseDown",AA);var fA=AA.target;Gq(fA,"BUTTON")||fA.isContentEditable||(Tt(),c(yA)||c(pA)!==void 0||c(te)!==""&&c(te)!==void 0||(t("createDefaultSelection"),N(yA,en([]))))}),De("contextmenu",q,nn),sA(i,W),Ai(e,"expand",UA),Ai(e,"collapse",he),Ai(e,"validate",je),Ai(e,"getJson",ze),Ai(e,"patch",Pi),Ai(e,"acceptAutoRepair",jt),Ai(e,"openTransformModal",To),Ai(e,"scrollTo",Wi),Ai(e,"findElement",qn),Ai(e,"findSearchResult",_o),Ai(e,"focus",Tt),Yt(R)}function RW(i){return typeof(e=i)!="object"||e===null?i:new Proxy(i,{get:(A,t,n)=>RW(Reflect.get(A,t,n)),set:()=>!1,deleteProperty:()=>!1});var e}var _w=dr("jsoneditor:History");function NW(){var i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=i.maxItems||1e3,A=[],t=0;function n(){return t0}function a(){return{canUndo:n(),canRedo:o(),items:()=>A.slice().reverse(),add:s,undo:g,redo:C,clear:l}}function r(){i.onChange&&i.onChange(a())}function s(d){_w("add",d),A=[d].concat(A.slice(t)).slice(0,e),t=0,r()}function l(){_w("clear"),A=[],t=0,r()}function g(){if(n()){var d=A[t];return t+=1,_w("undo",d),r(),d}}function C(){if(o())return _w("redo",A[t-=1]),r(),A[t]}return{get:a}}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-transform-modal-inner.svelte-lta8xm { - flex: 1; - display: flex; - flex-direction: column; - min-width: 0; - min-height: 0; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) { - color: inherit; - flex: 1; - display: flex; - flex-direction: column; - padding: 0; - overflow: auto; - min-width: 0; - min-height: 0; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) { - display: flex; - flex-direction: row; - justify-content: flex-end; - padding-top: var(--jse-padding, 10px); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) button.jse-primary:where(.svelte-lta8xm) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); - color: var(--jse-button-primary-color, #fff); - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - border-radius: 3px; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) button.jse-primary:where(.svelte-lta8xm):hover { - background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) button.jse-primary:where(.svelte-lta8xm):disabled { - background: var(--jse-button-primary-background-disabled, #9d9d9d); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) { - flex: 1; - display: flex; - gap: calc(2 * var(--jse-padding, 10px)); - min-height: 0; - box-sizing: border-box; - padding: 0 calc(2 * var(--jse-padding, 10px)) var(--jse-padding, 10px); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) { - flex: 1; - display: flex; - flex-direction: column; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) p { - margin: var(--jse-padding, 10px) 0; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) p:first-child { - margin-top: 0; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) p:last-child { - margin-bottom: 0; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) code { - background: var(--jse-modal-code-background, rgba(0, 0, 0, 0.05)); - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .query-error:where(.svelte-lta8xm) { - color: var(--jse-error-color, #ee5341); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) textarea.jse-query:where(.svelte-lta8xm) { - flex: 1; - outline: none; - resize: vertical; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) { - flex: 1; - display: flex; - flex-direction: column; - gap: calc(2 * var(--jse-padding, 10px)); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-original-data:where(.svelte-lta8xm) { - flex: 1; - display: flex; - flex-direction: column; - min-height: 0; - box-sizing: border-box; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-original-data.jse-hide:where(.svelte-lta8xm) { - flex: none; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-preview-data:where(.svelte-lta8xm) { - flex: 1; - display: flex; - flex-direction: column; - min-height: 0; - box-sizing: border-box; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents.jse-hide-original-data:where(.svelte-lta8xm) { - flex-direction: column; - gap: 0; - margin-bottom: 0; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) { - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)) calc(2 * var(--jse-padding, 10px)); -} -@media screen and (max-width: 1200px) { - .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) { - flex-direction: column; - overflow: auto; - } - .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) textarea.jse-query:where(.svelte-lta8xm) { - min-height: 150px; - flex: none; - } - .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-tree-mode { - height: 300px; - flex: none; - } - .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-original-data:where(.svelte-lta8xm), - .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-preview-data:where(.svelte-lta8xm) { - flex: unset; - } -} -.jse-transform-modal-inner.svelte-lta8xm .jse-label:where(.svelte-lta8xm) { - font-weight: bold; - display: block; - box-sizing: border-box; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-label:where(.svelte-lta8xm) .jse-label-inner:where(.svelte-lta8xm) { - margin-top: calc(2 * var(--jse-padding, 10px)); - margin-bottom: calc(0.5 * var(--jse-padding, 10px)); - box-sizing: border-box; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-label:where(.svelte-lta8xm) .jse-label-inner:where(.svelte-lta8xm) button:where(.svelte-lta8xm) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - font-weight: bold; - padding: 0; -} -.jse-transform-modal-inner.svelte-lta8xm .jse-tree-mode { - flex: 1; - background: var(--jse-input-background-readonly, transparent); - box-shadow: none; - box-sizing: border-box; - --jse-main-border: var(--jse-input-border, 1px solid #d8dbdf); -} -.jse-transform-modal-inner.svelte-lta8xm input:where(.svelte-lta8xm), -.jse-transform-modal-inner.svelte-lta8xm textarea:where(.svelte-lta8xm) { - border: var(--jse-input-border, 1px solid #d8dbdf); - outline: none; - box-sizing: border-box; - padding: calc(0.5 * var(--jse-padding, 10px)); - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - color: inherit; - background: var(--jse-input-background, var(--jse-background-color, #fff)); -} -.jse-transform-modal-inner.svelte-lta8xm input:where(.svelte-lta8xm):focus, -.jse-transform-modal-inner.svelte-lta8xm textarea:where(.svelte-lta8xm):focus { - border: var(--jse-input-border-focus, 1px solid var(--jse-input-border-focus, var(--jse-theme-color, #3883fa))); -} -.jse-transform-modal-inner.svelte-lta8xm input:where(.svelte-lta8xm):read-only, -.jse-transform-modal-inner.svelte-lta8xm textarea:where(.svelte-lta8xm):read-only { - background: var(--jse-input-background-readonly, transparent); -} -.jse-transform-modal-inner.svelte-lta8xm .jse-preview.jse-error:where(.svelte-lta8xm) { - flex: 1; - background: var(--jse-input-background-readonly, transparent); - border: var(--jse-input-border, 1px solid #d8dbdf); - color: var(--jse-error-color, #ee5341); - padding: calc(0.5 * var(--jse-padding, 10px)); -} -.jse-transform-modal-inner.svelte-lta8xm a { - color: var(--jse-a-color, #156fc5); -} -.jse-transform-modal-inner.svelte-lta8xm a:hover { - color: var(--jse-a-color-highlight, #0f508d); -}`);var U4=C5(()=>qIA),Sh=C5(()=>WIA),JEA=TA('
      '),YEA=TA(" ",1),HEA=TA('
      '),zEA=TA('
      Language
      Path
      Query
      Preview
      ',1),PEA=TA('
      ');function jEA(i,e){var A,t,n;Jt(e,!1);var o=dr("jsoneditor:TransformModal"),a=K(e,"id",25,()=>"transform-modal-"+Fh()),r=K(e,"json",9),s=K(e,"rootPath",25,()=>[]),l=K(e,"indentation",9),g=K(e,"truncateTextSize",9),C=K(e,"escapeControlCharacters",9),d=K(e,"escapeUnicodeCharacters",9),B=K(e,"parser",9),u=K(e,"parseMemoizeOne",9),E=K(e,"validationParser",9),f=K(e,"pathParser",9),m=K(e,"queryLanguages",9),v=K(e,"queryLanguageId",13),S=K(e,"onChangeQueryLanguage",9),k=K(e,"onRenderValue",9),M=K(e,"onRenderMenu",9),x=K(e,"onRenderContextMenu",9),F=K(e,"onClassName",9),z=K(e,"onTransform",9),j=K(e,"onClose",9),X=cA(void 0,!0),eA=cA(NW({onChange:JA=>N(eA,JA)}).get(),!0),Z=cA(void 0,!0),CA=cA(void 0,!0),wA=cA(!1,!0),BA="".concat(a(),":").concat(xt(s())),QA=(A=U4()[BA])!==null&&A!==void 0?A:{},RA=cA(Sh().showWizard!==!1,!0),dA=cA(Sh().showOriginal!==!1,!0),IA=cA((t=QA.queryOptions)!==null&&t!==void 0?t:{},!0),xA=cA(v()===QA.queryLanguageId&&QA.query?QA.query:"",!0),qA=cA((n=QA.isManual)!==null&&n!==void 0&&n,!0),ue=cA(void 0,!0),HA=cA(void 0,!0),bA=cA({text:""},!0);function PA(JA){var yA;return(yA=m().find(Pt=>Pt.id===JA))!==null&&yA!==void 0?yA:m()[0]}function it(JA){try{N(IA,JA),N(xA,PA(v()).createQuery(c(Z),JA)),N(ue,void 0),N(qA,!1),o("updateQueryByWizard",{queryOptions:c(IA),query:c(xA),isManual:c(qA)})}catch(yA){N(ue,String(yA))}}function Xe(JA){N(xA,JA.target.value),N(qA,!0),o("handleChangeQuery",{query:c(xA),isManual:c(qA)})}c(qA)||it(c(IA)),os(()=>{var JA;(JA=c(X))===null||JA===void 0||JA.focus()});var YA=XE(function(JA,yA){if(JA===void 0)return N(bA,{text:""}),void N(HA,"Error: No JSON");if(yA.trim()!=="")try{o("previewTransform",{query:yA});var Pt=PA(v()).executeQuery(JA,yA,B());N(bA,{json:Pt}),N(HA,void 0)}catch(Dt){N(bA,{text:""}),N(HA,String(Dt))}else N(bA,{json:JA})},300);function hA(){if(c(Z)===void 0)return N(bA,{text:""}),void N(HA,"Error: No JSON");try{o("handleTransform",{query:c(xA)});var JA=PA(v()).executeQuery(c(Z),c(xA),B());z()([{op:"replace",path:xt(s()),value:JA}]),j()()}catch(yA){console.error(yA),N(bA,{text:""}),N(HA,String(yA))}}function Ae(){N(RA,!c(RA)),Sh(Sh().showWizard=c(RA))}function pA(){N(dA,!c(dA)),Sh(Sh().showOriginal=c(dA))}function te(JA){JA.focus()}function NA(JA){o("handleChangeQueryLanguage",JA),v(JA),S()(JA),it(c(IA))}function Ge(){c(wA)?N(wA,!c(wA)):j()()}KA(()=>(Y(r()),Y(s())),()=>{N(Z,RW($e(r(),s())))}),KA(()=>c(Z),()=>{N(CA,c(Z)?{json:c(Z)}:{text:""})}),KA(()=>(c(Z),c(xA)),()=>{YA(c(Z),c(xA))}),KA(()=>(U4(),c(IA),c(xA),Y(v()),c(qA)),()=>{U4(U4()[BA]={queryOptions:c(IA),query:c(xA),queryLanguageId:v(),isManual:c(qA)}),o("store state in memory",BA,U4()[BA])}),Vn(),di(!0),np(i,{get onClose(){return j()},className:"jse-transform-modal",get fullscreen(){return c(wA)},children:(JA,yA)=>{var Pt=PEA();N_(gA(Pt),{children:(Dt,fe)=>{var Zt=zEA(),Pe=at(Zt);(function(J,ut){Jt(ut,!1);var bi,kn=K(ut,"queryLanguages",9),_n=K(ut,"queryLanguageId",9),Co=K(ut,"fullscreen",13),ia=K(ut,"onChangeQueryLanguage",9),So=K(ut,"onClose",9),Vo=cA(void 0,!0),{openAbsolutePopup:ga,closeAbsolutePopup:Ko}=s1("absolute-popup");function va(){var ca={queryLanguages:kn(),queryLanguageId:_n(),onChangeQueryLanguage:pa=>{Ko(bi),ia()(pa)}};bi=ga(zBA,ca,{offsetTop:-2,offsetLeft:0,anchor:c(Vo),closeOnOuterClick:!0})}di(!0),o5(J,{title:"Transform",fullScreenButton:!0,get onClose(){return So()},get fullscreen(){return Co()},set fullscreen(ca){Co(ca)},$$slots:{actions:(ca,pa)=>{var Uo,de=VBA();Bn(gA(de),{get data(){return aJ}}),ta(de,xi=>N(Vo,xi),()=>c(Vo)),Le(()=>Uo=Ci(de,1,"jse-config svelte-5gkegr",null,Uo,{hide:kn().length<=1})),De("click",de,va),sA(ca,de)}},$$legacy:!0}),Yt()})(Pe,{get queryLanguages(){return m()},get queryLanguageId(){return v()},onChangeQueryLanguage:NA,get onClose(){return j()},get fullscreen(){return c(wA)},set fullscreen(J){N(wA,J)},$$legacy:!0});var qe=gA(kA(Pe,2)),vt=gA(qe),Ke=kA(gA(vt),2);pq(gA(Ke),()=>(Y(v()),uA(()=>PA(v()).description)));var Ii=kA(Ke,4),V=kA(Ii,2),$=gA(V),iA=gA($),oA=gA(iA),UA=lt(()=>c(RA)?r0:JB);Bn(oA,{get data(){return c(UA)}});var he=kA(V,2),me=J=>{var ut=zi(),bi=at(ut),kn=Co=>{var ia=YEA(),So=at(ia);JBA(So,{get queryOptions(){return c(IA)},get json(){return c(Z)},onChange:it});var Vo=kA(So,2),ga=Ko=>{var va=JEA(),ca=gA(va);Le(()=>Ht(ca,c(ue))),sA(Ko,va)};zA(Vo,Ko=>{c(ue)&&Ko(ga)}),sA(Co,ia)},_n=Co=>{sA(Co,mr("(Only available for arrays, not for objects)"))};zA(bi,Co=>{c(Z),uA(()=>Array.isArray(c(Z)))?Co(kn):Co(_n,!1)}),sA(J,ut)};zA(he,J=>{c(RA)&&J(me)});var GA=kA(he,4);ta(GA,J=>N(X,J),()=>c(X));var OA,wt,rt=kA(vt,2),je=gA(rt),ze=gA(je),pi=gA(ze),mn=gA(pi),Sn=gA(mn),He=lt(()=>c(dA)?r0:JB);Bn(Sn,{get data(){return c(He)}});var En=kA(ze,2),Gi=J=>{$_(J,{get externalContent(){return c(CA)},externalSelection:void 0,get history(){return c(eA)},readOnly:!0,get truncateTextSize(){return g()},mainMenuBar:!1,navigationBar:!1,get indentation(){return l()},get escapeControlCharacters(){return C()},get escapeUnicodeCharacters(){return d()},get parser(){return B()},get parseMemoizeOne(){return u()},get onRenderValue(){return k()},get onRenderMenu(){return M()},get onRenderContextMenu(){return x()},onError:uA(()=>console.error),get onChange(){return Fa},get onChangeMode(){return Fa},get onSelect(){return Fa},get onUndo(){return Fa},get onRedo(){return Fa},get onFocus(){return Fa},get onBlur(){return Fa},get onSortModal(){return Fa},get onTransformModal(){return Fa},get onJSONEditorModal(){return Fa},get onClassName(){return F()},validator:void 0,get validationParser(){return E()},get pathParser(){return f()}})};zA(En,J=>{c(dA)&&J(Gi)});var Pi=kA(je,2),gn=kA(gA(Pi),2),Rt=J=>{$_(J,{get externalContent(){return c(bA)},externalSelection:void 0,get history(){return c(eA)},readOnly:!0,get truncateTextSize(){return g()},mainMenuBar:!1,navigationBar:!1,get indentation(){return l()},get escapeControlCharacters(){return C()},get escapeUnicodeCharacters(){return d()},get parser(){return B()},get parseMemoizeOne(){return u()},get onRenderValue(){return k()},get onRenderMenu(){return M()},get onRenderContextMenu(){return x()},onError:uA(()=>console.error),get onChange(){return Fa},get onChangeMode(){return Fa},get onSelect(){return Fa},get onUndo(){return Fa},get onRedo(){return Fa},get onFocus(){return Fa},get onBlur(){return Fa},get onSortModal(){return Fa},get onTransformModal(){return Fa},get onJSONEditorModal(){return Fa},get onClassName(){return F()},validator:void 0,get validationParser(){return E()},get pathParser(){return f()}})},Qn=J=>{var ut=HEA(),bi=gA(ut);Le(()=>Ht(bi,c(HA))),sA(J,ut)};zA(gn,J=>{c(HA)?J(Qn,!1):J(Rt)});var jt=gA(kA(qe,2));Tr(()=>De("click",jt,hA)),Ms(jt,J=>te?.(J)),Le(J=>{tI(Ii,J),tI(GA,c(xA)),OA=Ci(rt,1,"jse-data-contents svelte-lta8xm",null,OA,{"jse-hide-original-data":!c(dA)}),wt=Ci(je,1,"jse-original-data svelte-lta8xm",null,wt,{"jse-hide":!c(dA)}),jt.disabled=!!c(HA)},[()=>(Y(An),Y(s()),Y(El),uA(()=>An(s())?"(document root)":El(s())))]),De("click",iA,Ae),De("input",GA,Xe),De("click",mn,pA),sA(Dt,Zt)},$$slots:{default:!0}}),Ms(Pt,(Dt,fe)=>a5?.(Dt,fe),()=>Ge),sA(JA,Pt)},$$slots:{default:!0}}),Yt()}function ug(){}var VEA=0,fr=class{constructor(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.id=VEA++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=ap.match(e)),A=>{var t=e(A);return t===void 0?null:[this,t]}}};fr.closedBy=new fr({deserialize:i=>i.split(" ")}),fr.openedBy=new fr({deserialize:i=>i.split(" ")}),fr.group=new fr({deserialize:i=>i.split(" ")}),fr.isolate=new fr({deserialize:i=>{if(i&&i!="rtl"&&i!="ltr"&&i!="auto")throw new RangeError("Invalid value for isolate: "+i);return i||"auto"}}),fr.contextHash=new fr({perNode:!0}),fr.lookAhead=new fr({perNode:!0}),fr.mounted=new fr({perNode:!0});var pV,qEA=Object.create(null),ap=class i{constructor(e,A,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;this.name=e,this.props=A,this.id=t,this.flags=n}static define(e){var A=e.props&&e.props.length?Object.create(null):qEA,t=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),n=new i(e.name||"",A,e.id,t);if(e.props){for(var o of e.props)if(Array.isArray(o)||(o=o(n)),o){if(o[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");A[o[0].id]=o[1]}}return n}prop(e){return this.props[e.id]}get isTop(){return(1&this.flags)>0}get isSkipped(){return(2&this.flags)>0}get isError(){return(4&this.flags)>0}get isAnonymous(){return(8&this.flags)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;var A=this.prop(fr.group);return!!A&&A.indexOf(e)>-1}return this.id==e}static match(e){var A=Object.create(null);for(var t in e)for(var n of t.split(" "))A[n]=e[t];return o=>{for(var a=o.prop(fr.group),r=-1;r<(a?a.length:0);r++){var s=A[r<0?o.name:a[r]];if(s)return s}}}};ap.none=new ap("",Object.create(null),0,8),(function(i){i[i.ExcludeBuffers=1]="ExcludeBuffers",i[i.IncludeAnonymous=2]="IncludeAnonymous",i[i.IgnoreMounts=4]="IgnoreMounts",i[i.IgnoreOverlays=8]="IgnoreOverlays"})(pV||(pV={})),new fr({perNode:!0});oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-status-bar.svelte-1pmgv9j { - background: var(--jse-panel-background, #ebebeb); - color: var(--jse-panel-color-readonly, #b2b2b2); - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - margin: 0; - border-top: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); - display: flex; - gap: var(--jse-padding, 10px); -} -.jse-status-bar.svelte-1pmgv9j:last-child { - border-bottom: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-status-bar.svelte-1pmgv9j .jse-status-bar-info:where(.svelte-1pmgv9j) { - padding: 2px; -}`);var WEA=TA('
      '),ZEA=TA('
      '),XEA=TA('
      '),$EA=TA('
      '),Sx=Bh.define([{tag:Oe.propertyName,color:"var(--internal-key-color)"},{tag:Oe.number,color:"var(--internal-value-color-number)"},{tag:Oe.bool,color:"var(--internal-value-color-boolean)"},{tag:Oe.string,color:"var(--internal-value-color-string)"},{tag:Oe.keyword,color:"var(--internal-value-color-null)"}]),AQA=Ak(Sx),eQA=Sx.style;Sx.style=i=>eQA(i||[]);var tQA=[Po.fromClass(class{constructor(i){this.view=i,this.indentUnit=Cc(i.state),this.initialPaddingLeft=null,this.isChrome=window?.navigator.userAgent.includes("Chrome"),this.generate(i.state)}update(i){var e=Cc(i.state);(e!==this.indentUnit||i.docChanged||i.viewportChanged)&&(this.indentUnit=e,this.generate(i.state))}generate(i){var e=new Xr;this.initialPaddingLeft?this.addStyleToBuilder(e,i,this.initialPaddingLeft):this.view.requestMeasure({read:A=>{var t=A.contentDOM.querySelector(".cm-line");t&&(this.initialPaddingLeft=window.getComputedStyle(t).getPropertyValue("padding-left"),this.addStyleToBuilder(e,A.state,this.initialPaddingLeft)),this.decorations=e.finish()}}),this.decorations=e.finish()}addStyleToBuilder(i,e,A){var t=this.getVisibleLines(e);for(var n of t){var{numColumns:o,containsTab:a}=this.numColumns(n.text,e.tabSize),r="calc(".concat(o+this.indentUnit,"ch + ").concat(A,")"),s=this.isChrome?"calc(-".concat(o+this.indentUnit,"ch - ").concat(a?1:0,"px)"):"-".concat(o+this.indentUnit,"ch");i.add(n.from,n.from,Lt.line({attributes:{style:"padding-left: ".concat(r,"; text-indent: ").concat(s,";")}}))}}getVisibleLines(i){var e=new Set,A=null;for(var{from:t,to:n}of this.view.visibleRanges)for(var o=t;o<=n;){var a=i.doc.lineAt(o);A!==a&&(e.add(a),A=a),o=a.to+1}return e}numColumns(i,e){var A=0,t=!1;A:for(var n=0;ni.decorations})];oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-text-mode.svelte-k2b9e6 { - --internal-key-color: var(--jse-key-color, #1a1a1a); - --internal-value-color-number: var(--jse-value-color-number, #ee422e); - --internal-value-color-boolean: var(--jse-value-color-boolean, #ff8c00); - --internal-value-color-string: var(--jse-value-color-string, #008000); - --internal-value-color-null: var(--jse-value-color-null, #004ed0); - flex: 1; - box-sizing: border-box; - display: flex; - flex-direction: column; - background: var(--jse-background-color, #fff); -} -.jse-text-mode.no-main-menu.svelte-k2b9e6 { - border-top: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) { - flex: 1; - display: flex; - position: relative; - flex-direction: column; - overflow: hidden; - min-width: 0; - min-height: 0; - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6):last-child { - border-bottom: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents.jse-hidden:where(.svelte-k2b9e6) { - visibility: hidden; - position: absolute; - top: 0; - left: 0; -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor { - flex: 1; - overflow: hidden; -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-scroller { - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - line-height: var(--jse-line-height, calc(1em + 4px)); - color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-gutters { - background: var(--jse-panel-background, #ebebeb); - color: var(--jse-panel-color-readonly, #b2b2b2); - border-right: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-activeLine, -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-activeLineGutter { - background: var(--jse-active-line-background-color, rgba(0, 0, 0, 0.06)); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-selectionBackground { - background: var(--jse-selection-background-color, #d3d3d3); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-searchMatch { - background-color: var(--jse-search-match-color, #ffe665); - outline: var(--jse-search-match-outline, none); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-searchMatch.cm-searchMatch-selected { - background-color: var(--jse-search-match-active-color, var(--jse-search-match-color, #ffe665)); - outline: var(--jse-search-match-outline, 2px solid #e0be00); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-selectionMatch { - background-color: var(--jse-search-match-background-color, rgba(153, 255, 119, 0.5019607843)); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-foldPlaceholder { - background: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); - color: var(--jse-tag-color, var(--jse-text-color-inverse, #fff)); - border: none; - padding: 0 var(--jse-padding, 10px); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-tooltip { - font-size: var(--jse-font-size, 16px); - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - color: var(--jse-tooltip-color, var(--jse-text-color, #4d4d4d)); - background: var(--jse-tooltip-background, var(--jse-modal-background, #f5f5f5)); - border: var(--jse-tooltip-border, var(--jse-main-border, 1px solid #d7d7d7)); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-diagnosticAction { - background: var(--jse-tooltip-action-button-color, var(--jse-text-color-inverse, #fff)); - background: var(--jse-tooltip-action-button-background, #4d4d4d); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-panels { - border-bottom: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search { - background: var(--jse-panel-background, #ebebeb); - color: var(--jse-panel-color, var(--jse-text-color, #4d4d4d)); - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search input { - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size-text-mode-search, 80%); - color: var(--jse-input-color, var(--jse-text-color, #4d4d4d)); - border: var(--jse-input-border, 1px solid #d8dbdf); - background: var(--jse-input-background, var(--jse-background-color, #fff)); - margin-right: 2px; -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search button { - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size-text-mode-search, 80%); - color: var(--jse-panel-button-color, inherit); - background: var(--jse-panel-button-background, transparent); - border: none; - cursor: pointer; - text-transform: capitalize; - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); - margin: 0; -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search button:hover { - color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); - background: var(--jse-panel-button-background-highlight, #e0e0e0); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search label { - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size-text-mode-search, 80%); - padding-left: var(--jse-padding, 10px); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search label input { - margin-right: 2px; -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search button[name='close'] { - width: 32px; - height: 32px; - font-size: 24px; - line-height: 24px; - padding: 0; - right: 0; - top: -4px; -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-cursor-primary { - border-color: var(--jse-text-color, #4d4d4d); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .jse-loading-space:where(.svelte-k2b9e6) { - flex: 1; -} -.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .jse-loading:where(.svelte-k2b9e6) { - flex: 2; - text-align: center; - color: var(--jse-panel-color-readonly, #b2b2b2); - box-sizing: border-box; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); -} -.jse-text-mode.svelte-k2b9e6 .jse-contents.jse-preview:where(.svelte-k2b9e6) { - flex: 1; - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - color: var(--jse-panel-color-readonly, #b2b2b2); - overflow: auto; - white-space: pre-wrap; - word-break: break-word; - padding: 2px; -} -.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) { - display: flex; - align-items: center; - gap: 8px; - padding: 8px 12px; - background: var(--jse-background-color, #fff); - border-top: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); - border-bottom: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); -} -.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-tip:where(.svelte-k2b9e6) { - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size-mono, 14px); - color: var(--jse-panel-color-readonly, #b2b2b2); -} -.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-progress-track:where(.svelte-k2b9e6) { - flex: 1; - height: 6px; - background: var(--jse-panel-background, #ebebeb); - border-radius: 3px; - overflow: hidden; - border: 1px solid var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); -} -.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-progress-fill:where(.svelte-k2b9e6) { - height: 100%; - background: linear-gradient(90deg, var(--jse-theme-color, #3883fa), var(--jse-theme-color-highlight, #5f9dff)); - border-radius: 2px; - transition: width 0.1s ease; - min-width: 2px; -} -.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-cancel-button:where(.svelte-k2b9e6) { - padding: 4px 12px; - font-size: 12px; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - background: var(--jse-theme-color, #3883fa); - color: #fff; - border-radius: 3px; - cursor: pointer; - transition: background-color 0.2s ease; - flex-shrink: 0; - border: 1px solid var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-cancel-button:where(.svelte-k2b9e6):hover { - background: var(--jse-theme-color-highlight, #5f9dff); - color: #fff; -}`);var iQA=TA('
      Collapsing
      '),nQA=TA('
      ',1),oQA=TA(" ",1),aQA=TA("
      ",1),rQA=TA('
      loading...
      '),sQA=TA("
      ");function lQA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),n=K(e,"readOnly",9),o=K(e,"mainMenuBar",9),a=K(e,"statusBar",9),r=K(e,"askToFormat",9),s=K(e,"externalContent",9),l=K(e,"externalSelection",9),g=K(e,"history",9),C=K(e,"indentation",9),d=K(e,"tabSize",9),B=K(e,"escapeUnicodeCharacters",9),u=K(e,"parser",9),E=K(e,"validator",9),f=K(e,"validationParser",9),m=K(e,"onChange",9),v=K(e,"onChangeMode",9),S=K(e,"onSelect",9),k=K(e,"onUndo",9),M=K(e,"onRedo",9),x=K(e,"onError",9),F=K(e,"onFocus",9),z=K(e,"onBlur",9),j=K(e,"onRenderMenu",9),X=K(e,"onSortModal",9),eA=K(e,"onTransformModal",9),Z=dr("jsoneditor:TextMode"),CA={key:"Mod-i",run:me,shift:GA,preventDefault:!0},wA=typeof window>"u";Z("isSSR:",wA);var BA,QA=cA(void 0,!0),RA=cA(void 0,!0),dA=cA(void 0,!0),IA=cA(!1,!0),xA=cA(r(),!0),qA=cA([],!0),ue=cA(!1,!0),HA=cA(0,!0),bA=cA(0,!0),PA=null,it=new g0,Xe=new g0,YA=new g0,hA=new g0,Ae=new g0,pA=s(),te=cA(R_(pA,C(),u()),!0),NA=sl.define(),Ge=null;function JA(){if(!Ge||Ge.length===0)return!1;var SA=Ge[0].startState,ee=Ge[Ge.length-1].state,be=Ge.map(LA=>LA.changes).reduce((LA,Ce)=>LA.compose(Ce)),EA={type:"text",undo:{changes:be.invert(SA.doc).toJSON(),selection:pa(SA.selection)},redo:{changes:be.toJSON(),selection:pa(ee.selection)}};return Z("add history item",EA),g().add(EA),Ge=null,!0}var yA=cA(B(),!0);os(Xt(function*(){if(!wA)try{BA=(function(SA){var{target:ee,initialText:be,readOnly:EA,indentation:LA}=SA;Z("Create CodeMirror editor",{readOnly:EA,indentation:LA});var Ce=(function(gt,dt){return C_(gt)?gt.ranges.every(Ut=>Ut.anchor{N(dA,gt.state),gt.docChanged&&(gt.transactions.some(dt=>!!dt.annotation(NA))||(Ge=[...Ge??[],gt]),ga()),gt.selectionSet&&ca()}),SP(),LP({top:!0}),ui.lineWrapping,Xe.of(ir.readOnly.of(EA)),hA.of(ir.tabSize.of(d())),YA.of(Vo(LA)),Ae.of(ui.theme({},{dark:Qn()}))]});return BA=new ui({state:Te,parent:ee}),Ce&&BA.dispatch(BA.state.update({selection:Ce.main,scrollIntoView:!0})),BA})({target:c(QA),initialText:Uo(c(te),c(IA))?"":c(A).escapeValue(c(te)),readOnly:n(),indentation:C()})}catch(SA){console.error(SA)}})),Dg(()=>{Ko(),BA&&(Z("Destroy CodeMirror editor"),BA.destroy()),Ii()});var Pt=_1(),Dt=_1();function fe(){BA&&(Z("focus"),BA.focus())}function Zt(SA,ee){if(BA)try{(function(){var be=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],EA=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],LA=BA.state,Ce=LA.doc.length,Te=jS(LA,Ce,1/0);if(Te){var gt=[];if(be.length===0)gt=vt(Te,LA,void 0,EA);else{var{from:dt}=i_(c(A).escapeValue(c(te)),be);dt!==void 0&&dt!==0&&(gt=vt(Te,LA,dt,EA))}gt.length>0&&(function(Ut){Ke.apply(this,arguments)})(gt)}})(SA,ee)}catch(be){x()(be)}}function Pe(){return WS.of((SA,ee,be)=>{var EA=jS(SA,SA.doc.length,1/0);if(!EA||EA.lengthbe)){if(LA&&Te.from=ee&&dt.to>be&&(LA=dt)}}}return LA})}function qe(SA){var ee=SA.lastChild;return ee&&ee.to==SA.to&&ee.type.isError}function vt(SA,ee,be){var EA=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],LA=[],Ce=new Set;return SA.iterate({enter(Te){if(be===void 0||Te.from>=be){var gt=Ih(ee,Te.from,Te.to);if(gt){var dt="".concat(gt.from,"-").concat(gt.to);if(!Ce.has(dt))if(EA)LA.push({from:gt.from,to:gt.to}),Ce.add(dt);else{var Ut=LA.some(io=>io.from<=gt.from&&io.to>=gt.to);Ut||(LA.push({from:gt.from,to:gt.to}),Ce.add(dt))}}}}}),LA}function Ke(){return Ke=Xt(function*(SA){if(SA.length!==0){var ee=SA.length>5e3;ee&&(N(ue,!0),N(HA,0),N(bA,SA.length),PA=new AbortController);var be=EA=>new Promise(LA=>{var Ce;ee&&(Ce=PA)!==null&&Ce!==void 0&&Ce.signal.aborted?LA():requestAnimationFrame(()=>{var Te=Math.min(EA+100,SA.length),gt=SA.slice(EA,Te);BA.dispatch({effects:gt.map(dt=>Eh.of({from:dt.from,to:dt.to}))}),ee&&N(HA,Te),Te1&&arguments[1]!==void 0?arguments[1]:K_;if(BA)try{if(SA&&SA.length>0){var{from:be}=i_(c(A).escapeValue(c(te)),SA);be!==void 0&&(BA.dispatch({selection:{anchor:be,head:be}}),ZS(BA))}else XS(BA);ee?.(SA)}catch(EA){x()(EA)}}function $(){V([],()=>!0)}function iA(){Zt([],!0)}var oA=!1;function UA(SA){return he(SA,!1)}function he(SA,ee){Z("handlePatch",SA,ee);var be=u().parse(c(te)),EA=ol(be,SA),LA=E6(be,SA);return bi({text:u().stringify(EA,null,C())},ee,!1),{json:EA,previousJson:be,undo:LA,redo:SA}}function me(){if(Z("format"),n())return!1;try{var SA=u().parse(c(te));return bi({text:u().stringify(SA,null,C())},!0,!1),N(xA,r()),!0}catch(ee){x()(ee)}return!1}function GA(){if(Z("compact"),n())return!1;try{var SA=u().parse(c(te));return bi({text:u().stringify(SA)},!0,!1),N(xA,!1),!0}catch(ee){x()(ee)}return!1}function OA(){if(Z("repair"),!n())try{bi({text:gg(c(te))},!0,!1),N(de,l_),N(xi,void 0)}catch(SA){x()(SA)}}function wt(){var SA;if(!n())try{var ee=u().parse(c(te));oA=!0,X()({id:Pt,json:ee,rootPath:[],onSort:(SA=Xt(function*(be){var{operations:EA}=be;Z("onSort",EA),he(EA,!0)}),function(be){return SA.apply(this,arguments)}),onClose:()=>{oA=!1,fe()}})}catch(be){x()(be)}}function rt(SA){var{id:ee,rootPath:be,onTransform:EA,onClose:LA}=SA;try{var Ce=u().parse(c(te));oA=!0,eA()({id:ee||Dt,json:Ce,rootPath:be||[],onTransform:Te=>{EA?EA({operations:Te,json:Ce,transformedJson:ol(Ce,Te)}):(Z("onTransform",Te),he(Te,!0))},onClose:()=>{oA=!1,fe(),LA&&LA()}})}catch(Te){x()(Te)}}function je(){n()||rt({rootPath:[]})}function ze(){BA&&(c(QA)&&c(QA).querySelector(".cm-search")?ow(BA):nw(BA))}function pi(){if(n())return!1;Ko();var SA=g().undo();return Z("undo",SA),Jj(SA)?(BA.dispatch({annotations:NA.of("undo"),changes:Zr.fromJSON(SA.undo.changes),selection:Be.fromJSON(SA.undo.selection),scrollIntoView:!0}),!0):(k()(SA),!1)}function mn(){if(n())return!1;Ko();var SA=g().redo();return Z("redo",SA),Jj(SA)?(BA.dispatch({annotations:NA.of("redo"),changes:Zr.fromJSON(SA.redo.changes),selection:Be.fromJSON(SA.redo.selection),scrollIntoView:!0}),!0):(M()(SA),!1)}function Sn(){N(IA,!0),bi(s(),!0,!0)}function He(){v()(xa.tree)}function En(){ia()}function Gi(SA){Z("select validation error",SA);var{from:ee,to:be}=jt(SA);ee!==void 0&&be!==void 0&&(Pi(ee,be),fe())}function Pi(SA,ee){Z("setSelection",{anchor:SA,head:ee}),BA&&BA.dispatch(BA.state.update({selection:{anchor:SA,head:ee},scrollIntoView:!0}))}function gn(SA,ee){if(ee.state.selection.ranges.length===1){var be=ee.state.selection.ranges[0],EA=c(te).slice(be.from,be.to);if(EA==="{"||EA==="["){var LA=Ax.default.parse(c(te)),Ce=Object.keys(LA.pointers).find(gt=>{var dt;return((dt=LA.pointers[gt].value)===null||dt===void 0?void 0:dt.pos)===be.from}),Te=LA.pointers[Ce];Ce&&Te&&Te.value&&Te.valueEnd&&(Z("pointer found, selecting inner contents of path:",Ce,Te),Pi(Te.value.pos+1,Te.valueEnd.pos-1))}}}function Rt(){return BP(wn,{delay:300})}function Qn(){return!!c(QA)&&getComputedStyle(c(QA)).getPropertyValue("--jse-theme").includes("dark")}function jt(SA){var{path:ee,message:be,severity:EA}=SA,{line:LA,column:Ce,from:Te,to:gt}=i_(c(A).escapeValue(c(te)),ee);return{path:ee,line:LA,column:Ce,from:Te,to:gt,message:be,severity:EA,actions:[]}}function J(SA,ee){var{line:be,column:EA,position:LA,message:Ce}=SA;return{path:[],line:be,column:EA,from:LA,to:LA,severity:Ec.error,message:Ce,actions:ee&&!n()?[{name:"Auto repair",apply:()=>OA()}]:void 0}}function ut(SA){return{from:SA.from||0,to:SA.to||0,message:SA.message||"",actions:SA.actions,severity:SA.severity}}function bi(SA,ee,be){var EA=R_(SA,C(),u()),LA=!Ui(SA,pA),Ce=pA;Z("setCodeMirrorContent",{isChanged:LA,emitChange:ee,forceUpdate:be}),BA&&(LA||be)&&(pA=SA,N(te,EA),Uo(c(te),c(IA))||BA.dispatch({changes:{from:0,to:BA.state.doc.length,insert:c(A).escapeValue(c(te))}}),JA(),LA&&ee&&va(pA,Ce))}function kn(SA){return C_(SA)?Be.fromJSON(SA):void 0}function _n(){return Co.apply(this,arguments)}function Co(){return Co=Xt(function*(){Z("refresh"),yield(function(){return So.apply(this,arguments)})()}),Co.apply(this,arguments)}function ia(){if(BA){var SA=BA?c(A).unescapeValue(BA.state.doc.toString()):"",ee=SA!==c(te);if(Z("onChangeCodeMirrorValue",{isChanged:ee}),ee){var be=pA;N(te,SA),pA={text:c(te)},JA(),va(pA,be),jo(),ca()}}}function So(){return(So=Xt(function*(){if(jo(),BA){var SA=Qn();return Z("updateTheme",{dark:SA}),BA.dispatch({effects:[Ae.reconfigure(ui.theme({},{dark:SA}))]}),new Promise(ee=>setTimeout(ee))}return Promise.resolve()})).apply(this,arguments)}function Vo(SA){var ee=Rd.of(typeof SA=="number"?" ".repeat(SA):SA);return SA===" "?[ee]:[ee,tQA]}vx({onMount:os,onDestroy:Dg,getWindow:()=>Ip(c(RA)),hasFocus:()=>oA&&document.hasFocus()||cx(c(RA)),onFocus:F(),onBlur:()=>{Ko(),z()()}});var ga=XE(ia,300);function Ko(){ga.flush()}function va(SA,ee){m()&&m()(SA,ee,{contentErrors:xn(),patchResult:void 0})}function ca(){S()(pa(c(dA).selection))}function pa(SA){return Fe({type:fo.text},SA.toJSON())}function Uo(SA,ee){return!!SA&&SA.length>r_&&!ee}var de=cA(l_,!0),xi=cA(void 0,!0);function wn(){if(Uo(c(te),c(IA)))return[];var SA=xn();if(Oj(SA)){var{parseError:ee,isRepairable:be}=SA;return[ut(J(ee,be))]}return SIA(SA)?SA.validationErrors.map(jt).map(ut):[]}function xn(){Z("validate:start"),Ko();var SA=na(c(A).escapeValue(c(te)),E(),u(),f());return Oj(SA)?(N(de,SA.isRepairable?Lj:"invalid"),N(xi,SA.parseError),N(qA,[])):(N(de,l_),N(xi,void 0),N(qA,SA?.validationErrors||[])),Z("validate:end"),SA}var na=YB(ZBA);function Ra(){c(xi)&&(function(SA){Z("select parse error",SA);var ee=J(SA,!1);Pi(ee.from!=null?ee.from:0,ee.to!=null?ee.to:0),fe()})(c(xi))}var Oi={icon:AJ,text:"Show me",title:"Move to the parse error location",onClick:Ra};KA(()=>Y(B()),()=>{N(A,lx({escapeControlCharacters:!1,escapeUnicodeCharacters:B()}))}),KA(()=>Y(s()),()=>{bi(s(),!1,!1)}),KA(()=>Y(l()),()=>{(function(SA){if(C_(SA)){var ee=kn(SA);!BA||!ee||c(dA)&&c(dA).selection.eq(ee)||(Z("applyExternalSelection",ee),BA.dispatch({selection:ee}))}})(l())}),KA(()=>Y(E()),()=>{(function(SA){Z("updateLinter",SA),BA&&BA.dispatch({effects:it.reconfigure(Rt())})})(E())}),KA(()=>Y(C()),()=>{(function(SA){BA&&(Z("updateIndentation",SA),BA.dispatch({effects:YA.reconfigure(Vo(SA))}))})(C())}),KA(()=>Y(d()),()=>{(function(SA){BA&&(Z("updateTabSize",SA),BA.dispatch({effects:hA.reconfigure(ir.tabSize.of(SA))}))})(d())}),KA(()=>Y(n()),()=>{(function(SA){BA&&(Z("updateReadOnly",SA),BA.dispatch({effects:[Xe.reconfigure(ir.readOnly.of(SA))]}))})(n())}),KA(()=>(c(yA),Y(B())),()=>{c(yA)!==B()&&(N(yA,B()),Z("forceUpdateText",{escapeUnicodeCharacters:B()}),BA&&BA.dispatch({changes:{from:0,to:BA.state.doc.length,insert:c(A).escapeValue(c(te))}}))}),KA(()=>(c(de),Y(n()),oC),()=>{N(t,c(de)!==Lj||n()?[Oi]:[{icon:oC,text:"Auto repair",title:"Automatically repair JSON",onClick:OA},Oi])}),Vn();var ko={focus:fe,collapse:Zt,expand:V,patch:UA,handlePatch:he,openTransformModal:rt,refresh:_n,flush:Ko,validate:xn};di(!0);var ar,To=sQA(),ja=gA(To),to=SA=>{var ee=lt(()=>(c(te),uA(()=>c(te).length===0))),be=lt(()=>!c(ee)),EA=lt(()=>!c(ee)),LA=lt(()=>!c(ee)),Ce=lt(()=>!c(ee)),Te=lt(()=>!c(ee)),gt=lt(()=>!c(ee));(function(dt,Ut){Jt(Ut,!1);var io=cA(void 0,!0),Zi=K(Ut,"readOnly",9,!1),nn=K(Ut,"onExpandAll",9),ai=K(Ut,"onCollapseAll",9),Xi=K(Ut,"onFormat",9),Na=K(Ut,"onCompact",9),Vt=K(Ut,"onSort",9),It=K(Ut,"onTransform",9),$i=K(Ut,"onToggleSearch",9),cn=K(Ut,"onUndo",9),Io=K(Ut,"onRedo",9),Rn=K(Ut,"canExpandAll",9),Tt=K(Ut,"canCollapseAll",9),fa=K(Ut,"canUndo",9),oa=K(Ut,"canRedo",9),y=K(Ut,"canFormat",9),b=K(Ut,"canCompact",9),R=K(Ut,"canSort",9),W=K(Ut,"canTransform",9),_=K(Ut,"onRenderMenu",9),q=cA(void 0,!0),tA=cA(void 0,!0),rA={type:"button",icon:Uu,title:"Search (Ctrl+F)",className:"jse-search",onClick:$i()},DA=cA(void 0,!0);KA(()=>(Y(nn()),Y(Rn())),()=>{N(q,{type:"button",icon:pW,title:"Expand all",className:"jse-expand-all",onClick:nn(),disabled:!Rn()})}),KA(()=>(Y(ai()),Y(Tt())),()=>{N(tA,{type:"button",icon:fW,title:"Collapse all",className:"jse-collapse-all",onClick:ai(),disabled:!Tt()})}),KA(()=>(Y(Zi()),c(q),c(tA),Y(Xi()),Y(y()),Y(Na()),Y(b()),Y(Vt()),Y(R()),Y(It()),Y(W()),Y(cn()),Y(fa()),Y(Io()),Y(oa())),()=>{N(DA,Zi()?[c(q),c(tA),{type:"separator"},rA,{type:"space"}]:[c(q),c(tA),{type:"separator"},{type:"button",icon:EV,title:"Format JSON: add proper indentation and new lines (Ctrl+I)",className:"jse-format",onClick:Xi(),disabled:Zi()||!y()},{type:"button",icon:$hA,title:"Compact JSON: remove all white spacing and new lines (Ctrl+Shift+I)",className:"jse-compact",onClick:Na(),disabled:Zi()||!b()},{type:"separator"},{type:"button",icon:Ju,title:"Sort",className:"jse-sort",onClick:Vt(),disabled:Zi()||!R()},{type:"button",icon:Ku,title:"Transform contents (filter, sort, project)",className:"jse-transform",onClick:It(),disabled:Zi()||!W()},rA,{type:"separator"},{type:"button",icon:D6,title:"Undo (Ctrl+Z)",className:"jse-undo",onClick:cn(),disabled:!fa()},{type:"button",icon:y6,title:"Redo (Ctrl+Shift+Z)",className:"jse-redo",onClick:Io(),disabled:!oa()},{type:"space"}])}),KA(()=>(Y(_()),c(DA)),()=>{N(io,_()(c(DA))||c(DA))}),Vn(),di(!0),p5(dt,{get items(){return c(io)}}),Yt()})(SA,{get readOnly(){return n()},onExpandAll:$,onCollapseAll:iA,onFormat:me,onCompact:GA,onSort:wt,onTransform:je,onToggleSearch:ze,onUndo:pi,onRedo:mn,get canExpandAll(){return c(be)},get canCollapseAll(){return c(EA)},get canFormat(){return c(LA)},get canCompact(){return c(Ce)},get canSort(){return c(Te)},get canTransform(){return c(gt)},get canUndo(){return Y(g()),uA(()=>g().canUndo)},get canRedo(){return Y(g()),uA(()=>g().canRedo)},get onRenderMenu(){return j()}})};zA(ja,SA=>{o()&&SA(to)});var Wi=kA(ja,2),ei=SA=>{var ee=iQA(),be=kA(gA(ee),2),EA=gA(be),LA=kA(be,2);Le(()=>wg(EA,"width: ".concat(c(bA)>0?c(HA)/c(bA)*100:0,"%"))),De("click",LA,Ii),sA(SA,ee)};zA(Wi,SA=>{c(ue)&&SA(ei)});var qn=kA(Wi,2),_o=SA=>{var ee,be=lt(()=>(c(te),c(IA),uA(()=>Uo(c(te),c(IA))))),EA=aQA(),LA=at(EA);ta(LA,Ut=>N(QA,Ut),()=>c(QA));var Ce=kA(LA,2),Te=Ut=>{var io=nQA(),Zi=at(io),nn=lt(()=>(Y(Uw),Y(r_),c(te),uA(()=>"The JSON document is larger than ".concat(Uw(r_),", ")+"and may crash your browser when loading it in text mode. Actual size: ".concat(Uw(c(te).length),"."))));Hl(Zi,{get icon(){return w2},type:"error",get message(){return c(nn)},actions:[{text:"Open anyway",title:"Open the document in text mode. This may freeze or crash your browser.",onClick:Sn},{text:"Open in tree mode",title:"Open the document in tree mode. Tree mode can handle large documents.",onClick:He},{text:"Cancel",title:"Cancel opening this large document.",onClick:En}],onClose:fe});var ai=gA(kA(Zi,2));Le(Xi=>Ht(ai,Xi),[()=>(Y(mC),c(te),Y(jw),uA(()=>mC(c(te)||"",jw)))]),sA(Ut,io)};zA(Ce,Ut=>{c(be)&&Ut(Te)});var gt=kA(Ce,2),dt=Ut=>{var io=oQA(),Zi=at(io),nn=It=>{(function($i,cn){Jt(cn,!1);var Io=K(cn,"editorState",8),Rn=cA(),Tt=cA(),fa=cA(),oa=cA(),y=cA();KA(()=>Y(Io()),()=>{var DA;N(Rn,(DA=Io())===null||DA===void 0||(DA=DA.selection)===null||DA===void 0||(DA=DA.main)===null||DA===void 0?void 0:DA.head)}),KA(()=>(c(Rn),Y(Io())),()=>{var DA;N(Tt,c(Rn)!==void 0?(DA=Io())===null||DA===void 0||(DA=DA.doc)===null||DA===void 0?void 0:DA.lineAt(c(Rn)):void 0)}),KA(()=>c(Tt),()=>{N(fa,c(Tt)!==void 0?c(Tt).number:void 0)}),KA(()=>(c(Tt),c(Rn)),()=>{N(oa,c(Tt)!==void 0&&c(Rn)!==void 0?c(Rn)-c(Tt).from+1:void 0)}),KA(()=>Y(Io()),()=>{var DA;N(y,(DA=Io())===null||DA===void 0||(DA=DA.selection)===null||DA===void 0||(DA=DA.ranges)===null||DA===void 0?void 0:DA.reduce((ae,ge)=>ae+ge.to-ge.from,0))}),Vn(),di();var b=$EA(),R=gA(b),W=DA=>{var ae=WEA(),ge=gA(ae);Le(()=>{var pe;return Ht(ge,"Line: ".concat((pe=c(fa))!==null&&pe!==void 0?pe:""))}),sA(DA,ae)};zA(R,DA=>{c(fa)!==void 0&&DA(W)});var _=kA(R,2),q=DA=>{var ae=ZEA(),ge=gA(ae);Le(()=>{var pe;return Ht(ge,"Column: ".concat((pe=c(oa))!==null&&pe!==void 0?pe:""))}),sA(DA,ae)};zA(_,DA=>{c(oa)!==void 0&&DA(q)});var tA=kA(_,2),rA=DA=>{var ae=XEA(),ge=gA(ae);Le(()=>{var pe;return Ht(ge,"Selection: ".concat((pe=c(y))!==null&&pe!==void 0?pe:""," characters"))}),sA(DA,ae)};zA(tA,DA=>{c(y)!==void 0&&c(y)>0&&DA(rA)}),sA($i,b),Yt()})(It,{get editorState(){return c(dA)}})};zA(Zi,It=>{a()&&It(nn)});var ai=kA(Zi,2),Xi=It=>{Hl(It,{type:"error",get icon(){return w2},get message(){return c(xi),uA(()=>c(xi).message)},get actions(){return c(t)},onClick:Ra,onClose:fe})};zA(ai,It=>{c(xi)&&It(Xi)});var Na=kA(ai,2),Vt=It=>{var $i=lt(()=>[{icon:EV,text:"Format",title:"Format JSON: add proper indentation and new lines (Ctrl+I)",onClick:me},{icon:Ou,text:"No thanks",title:"Close this message",onClick:()=>N(xA,!1)}]);Hl(It,{type:"success",message:"Do you want to format the JSON?",get actions(){return c($i)},onClose:fe})};zA(Na,It=>{c(xi),c(xA),Y(Nj),c(te),uA(()=>!c(xi)&&c(xA)&&Nj(c(te)))&&It(Vt)}),bx(kA(Na,2),{get validationErrors(){return c(qA)},selectError:Gi}),sA(Ut,io)};zA(gt,Ut=>{c(be)||Ut(dt)}),Le(()=>ee=Ci(LA,1,"jse-contents svelte-k2b9e6",null,ee,{"jse-hidden":c(be)})),sA(SA,EA)},qo=SA=>{sA(SA,rQA())};return zA(qn,SA=>{wA?SA(qo,!1):SA(_o)}),ta(To,SA=>N(RA,SA),()=>c(RA)),Le(()=>ar=Ci(To,1,"jse-text-mode svelte-k2b9e6",null,ar,{"no-main-menu":!o()})),sA(i,To),Ai(e,"focus",fe),Ai(e,"collapse",Zt),Ai(e,"expand",V),Ai(e,"patch",UA),Ai(e,"handlePatch",he),Ai(e,"openTransformModal",rt),Ai(e,"refresh",_n),Ai(e,"flush",Ko),Ai(e,"validate",xn),Yt(ko)}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-inline-value.svelte-1jv89ui { - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - line-height: var(--jse-line-height, calc(1em + 4px)); - border: none; - padding: 0 calc(0.5 * var(--jse-padding, 10px)); - background: transparent; - color: inherit; - cursor: inherit; -} -.jse-inline-value.jse-highlight.svelte-1jv89ui { - background-color: var(--jse-search-match-color, #ffe665); - outline: var(--jse-search-match-outline, none); -} -.jse-inline-value.jse-highlight.jse-active.svelte-1jv89ui { - background-color: var(--jse-search-match-active-color, var(--jse-search-match-color, #ffe665)); - outline: var(--jse-search-match-outline, 2px solid #e0be00); -}`);var gQA=TA('');oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-column-header.svelte-5pxwfq { - background: none; - border: none; - font-family: inherit; - font-size: inherit; - color: inherit; - display: flex; - gap: var(--jse-padding, 10px); - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)) calc(0.5 * var(--jse-padding, 10px)); - width: 100%; -} -.jse-column-header.svelte-5pxwfq:hover { - background: var(--jse-table-header-background-highlight, #e8e8e8); -} -.jse-column-header.svelte-5pxwfq:not(.jse-column-header.jse-readonly) { - cursor: pointer; -} -.jse-column-header.svelte-5pxwfq span.jse-column-sort-icon:where(.svelte-5pxwfq) { - height: 1em; -}`);var cQA=TA(''),CQA=TA('');oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-table-mode-welcome.svelte-1b9gnk8 { - flex: 1; - display: flex; - flex-direction: column; - overflow: auto; - align-items: center; - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-table-mode-welcome.svelte-1b9gnk8:last-child { - border-bottom: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-space.jse-before:where(.svelte-1b9gnk8) { - flex: 1; -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) { - display: flex; - flex-direction: column; - gap: var(--jse-padding, 10px); - max-width: 400px; - margin: 2em var(--jse-padding, 10px); - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-arrays-info:where(.svelte-1b9gnk8) { - color: var(--jse-panel-color-readonly, #b2b2b2); -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-property:where(.svelte-1b9gnk8) { - display: flex; - align-items: center; - gap: var(--jse-padding, 10px); -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-property:where(.svelte-1b9gnk8) .jse-nested-property-path:where(.svelte-1b9gnk8) { - flex: 1; -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-property:where(.svelte-1b9gnk8) .jse-nested-property-path:where(.svelte-1b9gnk8) .jse-nested-property-count:where(.svelte-1b9gnk8) { - opacity: 0.5; - white-space: nowrap; -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) button.jse-nested-array-action:where(.svelte-1b9gnk8) { - text-align: left; - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); - color: var(--jse-button-primary-color, #fff); - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - border-radius: 3px; -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) button.jse-nested-array-action:where(.svelte-1b9gnk8):hover { - background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) button.jse-nested-array-action:where(.svelte-1b9gnk8):disabled { - background: var(--jse-button-primary-background-disabled, #9d9d9d); -} -.jse-table-mode-welcome.svelte-1b9gnk8 .jse-space.jse-after:where(.svelte-1b9gnk8) { - flex: 2; -}`);var dQA=TA(`An empty document cannot be opened in table mode. You can go to tree mode instead, or paste - a JSON Array using Ctrl+V.`,1),IQA=TA(''),BQA=TA('
      '),hQA=TA('
      ');function EQA(i,e){Jt(e,!0);var A=Bl(()=>e.json?(function(E){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,m=[];return(function v(S,k){Ea(S)&&k.length{v(S[M],k.concat(M))}),sa(S)&&m.push(k)})(E,[]),m})(e.json).slice(0,99).filter(E=>E.length>0):[]),t=Bl(()=>!An(c(A))),n=Bl(()=>e.json===void 0&&(e.text===""||e.text===void 0)),o=Bl(()=>c(t)?"Object with nested arrays":c(n)?"An empty document":Ea(e.json)?"An object":sa(e.json)?"An empty array":"A ".concat(sx(e.json,e.parser))),a=hQA();a.__click=()=>e.onClick();var r=kA(gA(a),2),s=gA(r),l=gA(s),g=kA(s,2),C=gA(g),d=E=>{sA(E,mr(`An object cannot be opened in table mode. You can open a nested array instead, or open the - document in tree mode.`))},B=E=>{var f=zi(),m=at(f),v=k=>{sA(k,dQA())},S=k=>{var M=mr();Le(()=>{var x;return Ht(M,"".concat((x=c(o))!==null&&x!==void 0?x:""," cannot be opened in table mode. You can open the document in tree mode instead."))}),sA(k,M)};zA(m,k=>{c(n)&&!e.readOnly?k(v):k(S,!1)},!0),sA(E,f)};zA(C,E=>{c(t)?E(d):E(B,!1)});var u=kA(g,2);Da(u,17,()=>c(A),Ka,(E,f)=>{var m=Bl(()=>(function(X){return $e(e.json,X).length})(c(f))),v=BQA(),S=gA(v),k=gA(S),M=gA(kA(k)),x=kA(S,2);x.__click=()=>e.openJSONEditorModal(c(f));var F=gA(x),z=kA(x,2),j=X=>{var eA=IQA();eA.__click=()=>e.extractPath(c(f)),sA(X,eA)};zA(z,X=>{e.readOnly||X(j)}),Le(X=>{var eA;Ht(k,'"'.concat(X??"",'" ')),Ht(M,"(".concat((eA=c(m))!==null&&eA!==void 0?eA:""," ").concat(c(m)!==1?"items":"item",")")),Ht(F,e.readOnly?"View":"Edit")},[()=>El(c(f))]),sA(E,v)}),kA(u,2).__click=()=>e.onChangeMode(xa.tree),Le(()=>Ht(l,c(o))),sA(i,a),Yt()}cp(["click"]);oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-column-header.svelte-1wgrwv3 { - background: none; - border: none; - font-family: inherit; - font-size: inherit; - color: inherit; - display: flex; - gap: var(--jse-padding, 10px); - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)) calc(0.5 * var(--jse-padding, 10px)); - width: 100%; -} -.jse-column-header.svelte-1wgrwv3:hover { - background: var(--jse-table-header-background-highlight, #e8e8e8); -} -.jse-column-header.svelte-1wgrwv3:not(.jse-column-header.jse-readonly) { - cursor: pointer; -}`);var QQA=TA('');oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-table-mode.svelte-1p86y3c { - flex: 1; - display: flex; - flex-direction: column; - position: relative; - background: var(--jse-background-color, #fff); - min-width: 0; - min-height: 0; - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - color: var(--jse-text-color, #4d4d4d); - line-height: var(--jse-line-height, calc(1em + 4px)); -} -.jse-table-mode.no-main-menu.svelte-1p86y3c { - border-top: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-table-mode.svelte-1p86y3c .jse-search-box-container:where(.svelte-1p86y3c) { - position: relative; - height: 0; - top: calc(var(--jse-line-height, calc(1em + 4px)) + 2 * var(--jse-padding, 10px)); - margin-right: calc(var(--jse-padding, 10px) + 20px); - margin-left: var(--jse-padding, 10px); - text-align: right; - z-index: 3; -} -.jse-table-mode.svelte-1p86y3c .jse-hidden-input-label:where(.svelte-1p86y3c) { - position: fixed; - right: 0; - top: 0; - width: 0; - height: 0; -} -.jse-table-mode.svelte-1p86y3c .jse-hidden-input-label:where(.svelte-1p86y3c) .jse-hidden-input:where(.svelte-1p86y3c) { - width: 0; - height: 0; - padding: 0; - border: 0; - outline: none; -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) { - flex: 1; - align-items: flex-start; - flex-direction: column; - display: flex; - overflow: auto; - overflow-anchor: none; - scrollbar-gutter: stable; - border-left: var(--jse-main-border, 1px solid #d7d7d7); - border-right: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c):last-child { - border-bottom: var(--jse-main-border, 1px solid #d7d7d7); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) { - border-collapse: collapse; - border-spacing: 0; -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-invisible-start-section:where(.svelte-1p86y3c) td:where(.svelte-1p86y3c), -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-invisible-end-section:where(.svelte-1p86y3c) td:where(.svelte-1p86y3c) { - margin: 0; - padding: 0; -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-search-box-background:where(.svelte-1p86y3c) { - background: var(--jse-table-header-background, #f5f5f5); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-invisible-end-section:where(.svelte-1p86y3c) td:where(.svelte-1p86y3c) { - padding-bottom: var(--jse-padding, 10px); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c):hover { - background-color: var(--jse-table-row-odd-background, rgba(0, 0, 0, 0.05)); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) { - padding: 0 var(--jse-padding, 10px) 0 0; - vertical-align: top; - white-space: nowrap; - height: var(--jse-line-height, calc(1em + 4px)); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-header:where(.svelte-1p86y3c), .jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-gutter:where(.svelte-1p86y3c) { - font-weight: normal; - text-align: left; - color: var(--jse-text-readonly, #8d8d8d); - background: var(--jse-table-header-background, #f5f5f5); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-header:where(.svelte-1p86y3c) { - padding: 0; - position: sticky; - top: 0; -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-header:where(.svelte-1p86y3c) .jse-table-root-error:where(.svelte-1p86y3c) { - padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)) calc(0.5 * var(--jse-padding, 10px)); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-gutter:where(.svelte-1p86y3c) { - padding: 0 var(--jse-padding, 10px) 0 calc(0.5 * var(--jse-padding, 10px)); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-value-outer:where(.svelte-1p86y3c) { - display: inline-block; - cursor: var(--jse-contents-cursor, pointer); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-value-outer:where(.svelte-1p86y3c):hover { - background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-value-outer.jse-selected-value:where(.svelte-1p86y3c) { - background: var(--jse-selection-background-color, #d3d3d3); -} -.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-context-menu-anchor:where(.svelte-1p86y3c) { - display: inline-flex; - position: relative; - vertical-align: top; -} -.jse-table-mode.svelte-1p86y3c .jse-contents.jse-contents-loading:where(.svelte-1p86y3c) { - align-items: unset; -} -.jse-table-mode.svelte-1p86y3c .jse-contents.jse-contents-loading:where(.svelte-1p86y3c) .jse-loading-space:where(.svelte-1p86y3c) { - flex: 1; -} -.jse-table-mode.svelte-1p86y3c .jse-contents.jse-contents-loading:where(.svelte-1p86y3c) .jse-loading:where(.svelte-1p86y3c) { - flex: 2; - text-align: center; - color: var(--jse-panel-color-readonly, #b2b2b2); - box-sizing: border-box; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); -}`);var uQA=TA('
      '),pQA=TA(''),fQA=TA(''),mQA=TA(' '),wQA=TA('
      '),yQA=TA('
      '),DQA=TA(''),vQA=TA(''),bQA=TA('
      ',1),MQA=TA(" ",1),SQA=TA(' ',1),kQA=TA('
      loading...
      '),_QA=TA('
      ',1);function xQA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=cA(void 0,!0),n=cA(void 0,!0),o=dr("jsoneditor:TableMode"),{openAbsolutePopup:a,closeAbsolutePopup:r}=s1("absolute-popup"),s=BW(),l=_1(),g=_1(),C=typeof window>"u";o("isSSR:",C);var d=K(e,"readOnly",9),B=K(e,"externalContent",9),u=K(e,"externalSelection",9),E=K(e,"history",9),f=K(e,"truncateTextSize",9),m=K(e,"mainMenuBar",9),v=K(e,"escapeControlCharacters",9),S=K(e,"escapeUnicodeCharacters",9),k=K(e,"flattenColumns",9),M=K(e,"parser",9),x=K(e,"parseMemoizeOne",9),F=K(e,"validator",9),z=K(e,"validationParser",9),j=K(e,"indentation",9),X=K(e,"onChange",9),eA=K(e,"onChangeMode",9),Z=K(e,"onSelect",9),CA=K(e,"onUndo",9),wA=K(e,"onRedo",9),BA=K(e,"onRenderValue",9),QA=K(e,"onRenderMenu",9),RA=K(e,"onRenderContextMenu",9),dA=K(e,"onFocus",9),IA=K(e,"onBlur",9),xA=K(e,"onSortModal",9),qA=K(e,"onTransformModal",9),ue=K(e,"onJSONEditorModal",9),HA=cA(void 0,!0),bA=cA(void 0,!0),PA=cA(void 0,!0),it=cA(void 0,!0),Xe=cA(void 0,!0);vx({onMount:os,onDestroy:Dg,getWindow:()=>Ip(c(bA)),hasFocus:()=>Ke&&document.hasFocus()||cx(c(bA)),onFocus:()=>{Ii=!0,dA()&&dA()()},onBlur:()=>{Ii=!1,IA()&&IA()()}});var YA,hA=cA(void 0,!0),Ae=cA(void 0,!0),pA=cA(void 0,!0),te=cA(void 0,!0),NA=cA(void 0,!0),Ge=cA(void 0,!0),JA=cA(!1,!0),yA=cA(!1,!0);function Pt(_){N(Ge,(YA=_)?tW(c(hA),YA.items):void 0)}function Dt(_){return fe.apply(this,arguments)}function fe(){return(fe=Xt(function*(_){N(OA,void 0),yield _n(_)})).apply(this,arguments)}function Zt(){N(JA,!1),N(yA,!1),J()}var Pe=cA(1e4,!0),qe=cA([],!0),vt=cA(void 0,!0),Ke=!1,Ii=!1,V=cA(!1,!0),$=cA({},!0),iA=cA(600,!0),oA=cA(0,!0),UA=18;function he(_){N(OA,_)}function me(_){c(OA)&&_!==void 0&&(Fr(_,qd(c(OA)))&&Fr(_,Qt(c(OA)))||(o("clearing selection: path does not exist anymore",c(OA)),N(OA,void 0)))}var GA=cA(c(hA)!==void 0?G_({json:c(hA)}):void 0,!0),OA=cA(Ap(u())?u():void 0,!0),wt=cA(void 0,!0),rt=cA(!1,!0);function je(_){if(!d()){o("onSortByHeader",_);var q=_.sortDirection===pg.desc?-1:1;Pi(mW(c(hA),[],_.path,q),(tA,rA)=>({state:rA,sortedColumn:_}))}}os(()=>{c(OA)&&ia(Qt(c(OA)))});var ze=cA(void 0,!0);function pi(_){if(_.json!==void 0||_.text!==void 0){var q=c(hA)!==void 0&&_.json!==void 0;E().add({type:"tree",undo:{patch:q?[{op:"replace",path:"",value:_.json}]:void 0,json:_.json,text:_.text,documentState:_.documentState,textIsRepaired:_.textIsRepaired,selection:p0(_.selection),sortedColumn:_.sortedColumn},redo:{patch:q?[{op:"replace",path:"",value:c(hA)}]:void 0,json:c(hA),text:c(Ae),documentState:c(GA),textIsRepaired:c(rt),selection:p0(c(OA)),sortedColumn:c(wt)}})}}var mn=cA([],!0),Sn=YB(hW);function He(_,q,tA,rA){Kh(()=>{var DA;try{DA=Sn(_,q,tA,rA)}catch(ae){DA=[{path:[],message:"Failed to validate: "+ae.message,severity:Ec.warning}]}Ui(DA,c(mn))||(o("validationErrors changed:",DA),N(mn,DA))},DA=>o("validationErrors updated in ".concat(DA," ms")))}function En(){return o("validate"),c(pA)?{parseError:c(pA),isRepairable:!1}:(He(c(hA),F(),M(),z()),An(c(mn))?void 0:{validationErrors:c(mn)})}function Gi(_,q){if(o("patch",_,q),c(hA)===void 0)throw new Error("Cannot apply patch: no JSON");var tA=c(hA),rA={json:void 0,text:c(Ae),documentState:c(GA),selection:p0(c(OA)),sortedColumn:c(wt),textIsRepaired:c(rt)},DA=eW(c(hA),_),ae=Yq(c(hA),c(GA),_),ge=mEA(c(wt),_,c(qe)),pe=typeof q=="function"?q(ae.json,ae.documentState,c(OA)):void 0;return N(hA,pe?.json!==void 0?pe.json:ae.json),N(GA,pe?.state!==void 0?pe.state:ae.documentState),N(OA,pe?.selection!==void 0?pe.selection:c(OA)),N(wt,pe?.sortedColumn!==void 0?pe.sortedColumn:ge),N(Ae,void 0),N(rt,!1),N(te,void 0),N(NA,void 0),N(pA,void 0),E().add({type:"tree",undo:Fe({patch:DA},rA),redo:{patch:_,json:void 0,text:void 0,documentState:c(GA),selection:p0(c(OA)),sortedColumn:c(wt),textIsRepaired:c(rt)}}),{json:c(hA),previousJson:tA,undo:DA,redo:_}}function Pi(_,q){o("handlePatch",_,q);var tA={json:c(hA),text:c(Ae)},rA=Gi(_,q);return gn(tA,rA),rA}function gn(_,q){if((_.json!==void 0||_?.text!==void 0)&&X()){if(c(Ae)!==void 0){var tA={text:c(Ae),json:void 0};X()(tA,_,{contentErrors:En(),patchResult:q})}else if(c(hA)!==void 0){var rA={text:void 0,json:c(hA)};X()(rA,_,{contentErrors:En(),patchResult:q})}}}function Rt(_){o("pasted json as text",_),N(te,_)}function Qn(_){o("pasted multiline text",{pastedText:_}),N(NA,_)}function jt(_){var q=parseInt(_[0],10),tA=[String(q+1),..._.slice(1)];return Fr(c(hA),tA)?en(tA):en(_)}function J(){o("focus"),c(it)&&(c(it).focus(),c(it).select())}function ut(_){N(oA,_.target.scrollTop)}function bi(){c(OA)||N(OA,(function(){if(sa(c(hA))&&!An(c(hA))&&!An(c(qe)))return en(["0",...c(qe)[0]])})())}function kn(){if(c(rt)&&c(hA)!==void 0){var _={json:c(hA),text:c(Ae)},q={json:c(hA),documentState:c(GA),selection:c(OA),sortedColumn:c(wt),text:c(Ae),textIsRepaired:c(rt)};N(Ae,void 0),N(rt,!1),me(c(hA)),pi(q),gn(_,void 0)}return{json:c(hA),text:c(Ae)}}function _n(_){var{scrollToWhenVisible:q=!0}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},tA=c(JA)?J4:0,rA=uV(_,c(qe),$,UA),DA=rA-c(oA)+tA+UA,ae=So(_);if(o("scrollTo",{path:_,top:rA,scrollTop:c(oA),elem:ae}),!c(PA))return Promise.resolve();var ge=c(PA).getBoundingClientRect();if(ae&&!q){var pe=ae.getBoundingClientRect();if(pe.bottom>ge.top&&pe.top{s(ae,{container:c(PA),offset:Ve,duration:300,callback:()=>{Co(_),Ue()}})}:Ue=>{s(DA,{container:c(PA),offset:Ve,duration:300,callback:()=>{jo(),Co(_),Ue()}})})}function Co(_){var q=So(_);if(q&&c(PA)){var tA=c(PA).getBoundingClientRect(),rA=q.getBoundingClientRect();if(rA.right>tA.right){var DA=rA.right-tA.right;Ol(PA,c(PA).scrollLeft+=DA)}if(rA.leftVe){var Ue=DA-Ve;Ol(PA,c(PA).scrollTop+=Ue)}if(rAv0(_.slice(1),ae)),DA=rA?_.slice(0,1).concat(rA):_;return(q=(tA=c(PA))===null||tA===void 0?void 0:tA.querySelector('td[data-path="'.concat(Gw(DA),'"]')))!==null&&q!==void 0?q:void 0}function Vo(_){var q,{anchor:tA,left:rA,top:DA,width:ae,height:ge,offsetTop:pe,offsetLeft:Ve,showTip:Ue}=_,Je=(function(fA){var{json:ZA,documentState:Ye,selection:Me,readOnly:Re,onEditValue:ct,onEditRow:ti,onToggleEnforceString:ji,onCut:Wn,onCopy:Cn,onPaste:xo,onRemove:ri,onDuplicateRow:Ca,onInsertBeforeRow:Bo,onInsertAfterRow:da,onRemoveRow:Nn}=fA,qt=ZA!==void 0,un=!!Me,si=ZA!==void 0&&Me?$e(ZA,Qt(Me)):void 0,_t=qt&&(bo(Me)||Cr(Me)||bn(Me)),fi=!Re&&qt&&Me!==void 0&&Ww(Me),ma=fi&&!ua(si),ho=!Re&&_t,Ia=Me!==void 0&&m0(ZA,Ye,Qt(Me));return[{type:"separator"},{type:"row",items:[{type:"column",items:[{type:"label",text:"Table cell:"},{type:"dropdown-button",main:{type:"button",onClick:()=>ct(),icon:dd,text:"Edit",title:"Edit the value (Double-click on the value)",disabled:!fi},width:"11em",items:[{type:"button",icon:dd,text:"Edit",title:"Edit the value (Double-click on the value)",onClick:()=>ct(),disabled:!fi},{type:"button",icon:Ia?kM:RM,text:"Enforce string",title:"Enforce keeping the value as string when it contains a numeric value",onClick:()=>ji(),disabled:!ma}]},{type:"dropdown-button",main:{type:"button",onClick:()=>Wn(!0),icon:Id,text:"Cut",title:"Cut selected contents, formatted with indentation (Ctrl+X)",disabled:!ho},width:"10em",items:[{type:"button",icon:Id,text:"Cut formatted",title:"Cut selected contents, formatted with indentation (Ctrl+X)",onClick:()=>Wn(!0),disabled:Re||!_t},{type:"button",icon:Id,text:"Cut compacted",title:"Cut selected contents, without indentation (Ctrl+Shift+X)",onClick:()=>Wn(!1),disabled:Re||!_t}]},{type:"dropdown-button",main:{type:"button",onClick:()=>Cn(!0),icon:aC,text:"Copy",title:"Copy selected contents, formatted with indentation (Ctrl+C)",disabled:!_t},width:"12em",items:[{type:"button",icon:aC,text:"Copy formatted",title:"Copy selected contents, formatted with indentation (Ctrl+C)",onClick:()=>Cn(!1),disabled:!_t},{type:"button",icon:aC,text:"Copy compacted",title:"Copy selected contents, without indentation (Ctrl+Shift+C)",onClick:()=>Cn(!1),disabled:!_t}]},{type:"button",onClick:()=>xo(),icon:bM,text:"Paste",title:"Paste clipboard contents (Ctrl+V)",disabled:Re||!un},{type:"button",onClick:()=>ri(),icon:m6,text:"Remove",title:"Remove selected contents (Delete)",disabled:Re||!_t}]},{type:"column",items:[{type:"label",text:"Table row:"},{type:"button",onClick:()=>ti(),icon:dd,text:"Edit row",title:"Edit the current row",disabled:Re||!un||!qt},{type:"button",onClick:()=>Ca(),icon:SM,text:"Duplicate row",title:"Duplicate the current row (Ctrl+D)",disabled:Re||!un||!qt},{type:"button",onClick:()=>Bo(),icon:Bd,text:"Insert before",title:"Insert a row before the current row",disabled:Re||!un||!qt},{type:"button",onClick:()=>da(),icon:Bd,text:"Insert after",title:"Insert a row after the current row",disabled:Re||!un||!qt},{type:"button",onClick:()=>Nn(),icon:m6,text:"Remove row",title:"Remove current row",disabled:Re||!un||!qt}]}]}]})({json:c(hA),documentState:c(GA),selection:c(OA),readOnly:d(),onEditValue:va,onEditRow:ca,onToggleEnforceString:pa,onCut:ar,onCopy:ja,onPaste:xi,onRemove:Wi,onDuplicateRow:qn,onInsertBeforeRow:_o,onInsertAfterRow:qo,onRemoveRow:SA}),Ei=(q=RA()(Je))!==null&&q!==void 0?q:Je;if(Ei!==!1){var no={left:rA,top:DA,offsetTop:pe,offsetLeft:Ve,width:ae,height:ge,anchor:tA,closeOnOuterClick:!0,onClose:()=>{Ke=!1,J()}};Ke=!0;var AA=a(xW,{tip:Ue?"Tip: you can open this context menu via right-click or with Ctrl+Q":void 0,items:Ei,onRequestClose(){r(AA),J()}},no)}}function ga(_){if(!gr(c(OA)))if(_&&(_.stopPropagation(),_.preventDefault()),_&&_.type==="contextmenu"&&_.target!==c(it))Vo({left:_.clientX,top:_.clientY,width:yC,height:wC,showTip:!1});else{var q,tA=(q=c(PA))===null||q===void 0?void 0:q.querySelector(".jse-table-cell.jse-selected-value");if(tA)Vo({anchor:tA,offsetTop:2,width:yC,height:wC,showTip:!1});else{var rA,DA=(rA=c(PA))===null||rA===void 0?void 0:rA.getBoundingClientRect();DA&&Vo({top:DA.top+2,left:DA.left+2,width:yC,height:wC,showTip:!1})}}}function Ko(_){Vo({anchor:Kq(_.target,"BUTTON"),offsetTop:0,width:yC,height:wC,showTip:!0})}function va(){if(!d()&&c(OA)){var _=Qt(c(OA));ua($e(c(hA),_))?dt(_):N(OA,en(_))}}function ca(){!d()&&c(OA)&&dt(Qt(c(OA)).slice(0,1))}function pa(){if(!d()&&bn(c(OA))){var _=c(OA).path,q=xt(_),tA=$e(c(hA),_),rA=!m0(c(hA),c(GA),_),DA=rA?String(tA):cE(String(tA),M());o("handleToggleEnforceString",{enforceString:rA,value:tA,updatedValue:DA}),Pi([{op:"replace",path:q,value:DA}],(ae,ge)=>({state:I5(c(hA),ge,_,{type:"value",enforceString:rA})}))}}function Uo(){return de.apply(this,arguments)}function de(){return(de=Xt(function*(){if(o("apply pasted json",c(te)),c(te)){var{onPasteAsJson:_}=c(te);_(),setTimeout(J)}})).apply(this,arguments)}function xi(){return wn.apply(this,arguments)}function wn(){return(wn=Xt(function*(){try{EA(yield navigator.clipboard.readText())}catch(_){console.error(_),N(V,!0)}})).apply(this,arguments)}function xn(){return na.apply(this,arguments)}function na(){return(na=Xt(function*(){o("apply pasted multiline text",c(NA)),c(NA)&&(EA(JSON.stringify(c(NA))),setTimeout(J))})).apply(this,arguments)}function Ra(){o("clear pasted json"),N(te,void 0),J()}function Oi(){o("clear pasted multiline text"),N(NA,void 0),J()}function ko(){eA()(xa.text)}function ar(_){return To.apply(this,arguments)}function To(){return(To=Xt(function*(_){yield vW({json:c(hA),selection:c(OA),indentation:_?j():void 0,readOnly:d(),parser:M(),onPatch:Pi})})).apply(this,arguments)}function ja(){return to.apply(this,arguments)}function to(){return to=Xt(function*(){var _=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];c(hA)!==void 0&&(yield bW({json:c(hA),selection:c(OA),indentation:_?j():void 0,parser:M()}))}),to.apply(this,arguments)}function Wi(){SW({json:c(hA),text:c(Ae),selection:c(OA),keepSelection:!0,readOnly:d(),onChange:X(),onPatch:Pi})}function ei(_){d()||(o("extract",{path:_}),Pi(Xq(c(hA),en(_))))}function qn(){(function(_){var{json:q,selection:tA,columns:rA,readOnly:DA,onPatch:ae}=_;if(!DA&&q!==void 0&&tA&&Lh(tA)){var{rowIndex:ge,columnIndex:pe}=Qg(Qt(tA),rA);bs("duplicate row",{rowIndex:ge});var Ve=[String(ge)];ae(Zq(q,[Ve]),(Ue,Je)=>({state:Je,selection:en(Td({rowIndex:ge({state:no,selection:en(Td({rowIndex:Ve,columnIndex:pe},rA))}))}})({json:c(hA),selection:c(OA),columns:c(qe),readOnly:d(),onPatch:Pi})}function SA(){(function(_){var{json:q,selection:tA,columns:rA,readOnly:DA,onPatch:ae}=_;if(!DA&&q!==void 0&&tA&&Lh(tA)){var{rowIndex:ge,columnIndex:pe}=Qg(Qt(tA),rA);bs("remove row",{rowIndex:ge}),ae(Xw([[String(ge)]]),(Ve,Ue)=>{var Je=ge0?ge-1:void 0,Ei=Je!==void 0?en(Td({rowIndex:Je,columnIndex:pe},rA)):void 0;return bs("remove row new selection",{rowIndex:ge,newRowIndex:Je,newSelection:Ei}),{state:Ue,selection:Ei}})}})({json:c(hA),selection:c(OA),columns:c(qe),readOnly:d(),onPatch:Pi})}function ee(){return(ee=Xt(function*(_){yield kW({char:_,selectInside:!1,json:c(hA),selection:c(OA),readOnly:d(),parser:M(),onPatch:Pi,onReplaceJson:LA,onSelect:he})})).apply(this,arguments)}function be(_){var q;_.preventDefault(),EA((q=_.clipboardData)===null||q===void 0?void 0:q.getData("text/plain"))}function EA(_){_!==void 0&&MW({clipboardText:_,json:c(hA),selection:c(OA),readOnly:d(),parser:M(),onPatch:Pi,onChangeText:Ce,onPasteMultilineText:Qn,openRepairModal:Ut})}function LA(_,q){var tA={json:c(hA),text:c(Ae)},rA={json:c(hA),documentState:c(GA),selection:c(OA),sortedColumn:c(wt),text:c(Ae),textIsRepaired:c(rt)},DA=Tl(_,c(GA)),ae=typeof q=="function"?q(_,DA,c(OA)):void 0;N(hA,ae?.json!==void 0?ae.json:_),N(GA,ae?.state!==void 0?ae.state:DA),N(OA,ae?.selection!==void 0?ae.selection:c(OA)),N(wt,void 0),N(Ae,void 0),N(rt,!1),N(pA,void 0),me(c(hA)),pi(rA),gn(tA,void 0)}function Ce(_,q){o("handleChangeText");var tA={json:c(hA),text:c(Ae)},rA={json:c(hA),documentState:c(GA),selection:c(OA),sortedColumn:c(wt),text:c(Ae),textIsRepaired:c(rt)};try{N(hA,x()(_)),N(GA,Tl(c(hA),c(GA))),N(Ae,void 0),N(rt,!1),N(pA,void 0)}catch(ae){try{N(hA,x()(gg(_))),N(GA,Tl(c(hA),c(GA))),N(Ae,_),N(rt,!0),N(pA,void 0)}catch(ge){N(hA,void 0),N(GA,void 0),N(Ae,_),N(rt,!1),N(pA,c(Ae)!==""?Xh(c(Ae),ae.message||String(ae)):void 0)}}if(typeof q=="function"){var DA=q(c(hA),c(GA),c(OA));N(hA,DA?.json!==void 0?DA.json:c(hA)),N(GA,DA?.state!==void 0?DA.state:c(GA)),N(OA,DA?.selection!==void 0?DA.selection:c(OA))}me(c(hA)),pi(rA),gn(tA,void 0)}function Te(_){o("select validation error",_),N(OA,en(_.path)),_n(_.path)}function gt(_){if(c(hA)!==void 0){var{id:q,onTransform:tA,onClose:rA}=_,DA=_.rootPath||[];Ke=!0,qA()({id:q||g,json:c(hA),rootPath:DA||[],onTransform:ae=>{tA?tA({operations:ae,json:c(hA),transformedJson:ol(c(hA),ae)}):(o("onTransform",DA,ae),Pi(ae))},onClose:()=>{Ke=!1,setTimeout(J),rA&&rA()}})}}function dt(_){o("openJSONEditorModal",{path:_}),Ke=!0,ue()({content:{json:$e(c(hA),_)},path:_,onPatch:Pi,onClose:()=>{Ke=!1,setTimeout(J)}})}function Ut(_,q){N(Xe,{text:_,onParse:tA=>dp(tA,rA=>Cp(rA,M())),onRepair:Sq,onApply:q,onClose:J})}function io(){(function(_){d()||c(hA)===void 0||(Ke=!0,xA()({id:l,json:c(hA),rootPath:_,onSort:q=>{var{operations:tA,itemPath:rA,direction:DA}=q;o("onSort",tA,_,rA,DA),Pi(tA,(ae,ge)=>({state:ge,sortedColumn:{path:rA,sortDirection:DA===-1?pg.desc:pg.asc}}))},onClose:()=>{Ke=!1,setTimeout(J)}}))})([])}function Zi(){gt({rootPath:[]})}function nn(_){o("openFind",{findAndReplace:_}),N(JA,!1),N(yA,!1),jo(),N(JA,!0),N(yA,_)}function ai(){if(!d()&&E().canUndo){var _=E().undo();if(qw(_)){var q={json:c(hA),text:c(Ae)};N(hA,_.undo.patch?ol(c(hA),_.undo.patch):_.undo.json),N(GA,_.undo.documentState),N(OA,_.undo.selection),N(wt,_.undo.sortedColumn),N(Ae,_.undo.text),N(rt,_.undo.textIsRepaired),N(pA,void 0),o("undo",{item:_,json:c(hA)}),gn(q,_.undo.patch&&_.redo.patch?{json:c(hA),previousJson:q.json,redo:_.undo.patch,undo:_.redo.patch}:void 0),J(),c(OA)&&_n(Qt(c(OA)),{scrollToWhenVisible:!1})}else CA()(_)}}function Xi(){if(!d()&&E().canRedo){var _=E().redo();if(qw(_)){var q={json:c(hA),text:c(Ae)};N(hA,_.redo.patch?ol(c(hA),_.redo.patch):_.redo.json),N(GA,_.redo.documentState),N(OA,_.redo.selection),N(wt,_.redo.sortedColumn),N(Ae,_.redo.text),N(rt,_.redo.textIsRepaired),N(pA,void 0),o("redo",{item:_,json:c(hA)}),gn(q,_.undo.patch&&_.redo.patch?{json:c(hA),previousJson:q.json,redo:_.redo.patch,undo:_.undo.patch}:void 0),J(),c(OA)&&_n(Qt(c(OA)),{scrollToWhenVisible:!1})}else wA()(_)}}function Na(_){N(iA,_.getBoundingClientRect().height)}KA(()=>(Y(v()),Y(S())),()=>{N(HA,lx({escapeControlCharacters:v(),escapeUnicodeCharacters:S()}))}),KA(()=>c(JA),()=>{(function(_){if(c(PA)){var q=_?J4:-100;c(PA).scrollTo({top:Ol(PA,c(PA).scrollTop+=q),left:c(PA).scrollLeft})}})(c(JA))}),KA(()=>Y(B()),()=>{(function(_){var q={json:c(hA)},tA=q4(_)?_.text!==c(Ae):!Ui(q.json,_.json);if(o("update external content",{isChanged:tA}),tA){var rA={json:c(hA),documentState:c(GA),selection:c(OA),sortedColumn:c(wt),text:c(Ae),textIsRepaired:c(rt)};if(q4(_))try{N(hA,x()(_.text)),N(GA,Tl(c(hA),c(GA))),N(Ae,_.text),N(rt,!1),N(pA,void 0)}catch(DA){try{N(hA,x()(gg(_.text))),N(GA,Tl(c(hA),c(GA))),N(Ae,_.text),N(rt,!0),N(pA,void 0)}catch(ae){N(hA,void 0),N(GA,void 0),N(Ae,_.text),N(rt,!1),N(pA,c(Ae)!==""?Xh(c(Ae),DA.message||String(DA)):void 0)}}else N(hA,_.json),N(GA,Tl(c(hA),c(GA))),N(Ae,void 0),N(rt,!1),N(pA,void 0);me(c(hA)),N(wt,void 0),pi(rA)}})(B())}),KA(()=>Y(u()),()=>{(function(_){Ui(c(OA),_)||(o("applyExternalSelection",{selection:c(OA),externalSelection:_}),Ap(_)&&N(OA,_))})(u())}),KA(()=>(c(qe),c(hA),Y(k()),c(Pe)),()=>{N(qe,sa(c(hA))?(function(_,q){var tA=new Set(q.map(xt)),rA=new Set(_.map(xt));for(var DA of tA)rA.has(DA)||tA.delete(DA);for(var ae of rA)tA.has(ae)||tA.add(ae);return[...tA].map(ms)})(QEA(c(hA),k(),c(Pe)),c(qe)):[])}),KA(()=>(c(hA),c(qe)),()=>{N(vt,!(!c(hA)||An(c(qe))))}),KA(()=>(c(hA),c(Pe)),()=>{N(A,Array.isArray(c(hA))&&c(hA).length>c(Pe))}),KA(()=>(c(oA),c(iA),c(hA),c(JA),J4),()=>{N(t,uEA(c(oA),c(iA),c(hA),$,UA,c(JA)?J4:0))}),KA(()=>c(hA),()=>{c(hA),c(PA)&&c(PA).scrollTo({top:c(PA).scrollTop,left:c(PA).scrollLeft})}),KA(()=>c(OA),()=>{var _;_=c(OA),Ui(_,u())||(o("onSelect",_),Z()(_))}),KA(()=>(Y(d()),Y(f()),Y(M()),c(HA),c(hA),c(GA),Y(BA())),()=>{N(ze,{mode:xa.table,readOnly:d(),truncateTextSize:f(),parser:M(),normalization:c(HA),getJson:()=>c(hA),getDocumentState:()=>c(GA),findElement:So,findNextInside:jt,focus:J,onPatch:(_,q)=>Pi((function(tA,rA){return tA.flatMap(DA=>{if(B6(DA)){var ae=ms(DA.path);if(ae.length>0){for(var ge=[DA],pe=an(ae);pe.length>0&&!Fr(rA,pe);)ge.unshift({op:"add",path:xt(pe),value:{}}),pe=an(pe);return ge}}return DA})})(_,c(hA)),q),onSelect:he,onFind:nn,onPasteJson:Rt,onRenderValue:BA()})}),KA(()=>(c(hA),Y(F()),Y(M()),Y(z())),()=>{He(c(hA),F(),M(),z())}),KA(()=>(c(mn),c(qe)),()=>{N(n,pEA(c(mn),c(qe)))}),Vn();var Vt={validate:En,patch:Gi,focus:J,acceptAutoRepair:kn,scrollTo:_n,findElement:So,openTransformModal:gt};di(!0);var It=_QA();De("mousedown",bC,function(_){!CE(_.target,q=>q===c(bA))&&gr(c(OA))&&(o("click outside the editor, exit edit mode"),N(OA,p0(c(OA))),Ii&&c(it)&&(c(it).focus(),c(it).blur()),o("blur (outside editor)"),c(it)&&c(it).blur())});var $i,cn=at(It),Io=gA(cn),Rn=_=>{(function(q,tA){Jt(tA,!1);var rA=K(tA,"containsValidArray",9),DA=K(tA,"readOnly",9),ae=K(tA,"showSearch",13,!1),ge=K(tA,"history",9),pe=K(tA,"onSort",9),Ve=K(tA,"onTransform",9),Ue=K(tA,"onContextMenu",9),Je=K(tA,"onUndo",9),Ei=K(tA,"onRedo",9),no=K(tA,"onRenderMenu",9);function AA(){ae(!ae())}var fA=cA(void 0,!0),ZA=cA(void 0,!0);KA(()=>(Y(DA()),Y(pe()),Y(rA()),Y(Ve()),Y(Ue()),Y(Je()),Y(ge()),Y(Ei())),()=>{N(fA,DA()?[{type:"space"}]:[{type:"button",icon:Ju,title:"Sort",className:"jse-sort",onClick:pe(),disabled:DA()||!rA()},{type:"button",icon:Ku,title:"Transform contents (filter, sort, project)",className:"jse-transform",onClick:Ve(),disabled:DA()||!rA()},{type:"button",icon:Uu,title:"Search (Ctrl+F)",className:"jse-search",onClick:AA,disabled:!rA()},{type:"button",icon:MM,title:Ix,className:"jse-contextmenu",onClick:Ue()},{type:"separator"},{type:"button",icon:D6,title:"Undo (Ctrl+Z)",className:"jse-undo",onClick:Je(),disabled:!ge().canUndo},{type:"button",icon:y6,title:"Redo (Ctrl+Shift+Z)",className:"jse-redo",onClick:Ei(),disabled:!ge().canRedo},{type:"space"}])}),KA(()=>(Y(no()),c(fA)),()=>{N(ZA,no()(c(fA))||c(fA))}),Vn(),di(!0),p5(q,{get items(){return c(ZA)}}),Yt()})(_,{get containsValidArray(){return c(vt)},get readOnly(){return d()},get history(){return E()},onSort:io,onTransform:Zi,onUndo:ai,onRedo:Xi,onContextMenu:Ko,get onRenderMenu(){return QA()},get showSearch(){return c(JA)},set showSearch(q){N(JA,q)},$$legacy:!0})};zA(Io,_=>{m()&&_(Rn)});var Tt=kA(Io,2),fa=_=>{var q=SQA(),tA=at(q),rA=gA(tA);rA.readOnly=!0,ta(rA,pe=>N(it,pe),()=>c(it));var DA=kA(tA,2),ae=pe=>{var Ve=bQA(),Ue=at(Ve);wW(gA(Ue),{get json(){return c(hA)},get documentState(){return c(GA)},get parser(){return M()},get showSearch(){return c(JA)},get showReplace(){return c(yA)},get readOnly(){return d()},get columns(){return c(qe)},onSearch:Pt,onFocus:Dt,onPatch:Pi,onClose:Zt});var Je=kA(Ue,2),Ei=gA(Je),no=gA(Ei),AA=gA(no),fA=gA(AA),ZA=gA(fA),Ye=_t=>{var fi=lt(()=>(Y(Mh),c(n),uA(()=>{var ba;return Mh([],(ba=c(n))===null||ba===void 0?void 0:ba.root)}))),ma=zi(),ho=at(ma),Ia=ba=>{var wr=uQA();zh(gA(wr),{get validationError(){return c(fi)},get onExpand(){return ug}}),sA(ba,wr)};zA(ho,ba=>{c(fi)&&ba(Ia)}),sA(_t,ma)};zA(ZA,_t=>{Y(An),c(n),uA(()=>{var fi;return!An((fi=c(n))===null||fi===void 0?void 0:fi.root)})&&_t(Ye)});var Me=kA(fA);Da(Me,1,()=>c(qe),Ka,(_t,fi)=>{var ma=pQA();(function(ho,Ia){Jt(Ia,!1);var ba=cA(void 0,!0),wr=cA(void 0,!0),R0=cA(void 0,!0),ml=K(Ia,"path",9),Sg=K(Ia,"sortedColumn",9),kc=K(Ia,"readOnly",9),kg=K(Ia,"onSort",9);KA(()=>(Y(ml()),El),()=>{N(ba,An(ml())?"values":El(ml()))}),KA(()=>(Y(Sg()),Y(ml())),()=>{var Ua;N(wr,Sg()&&Ui(ml(),(Ua=Sg())===null||Ua===void 0?void 0:Ua.path)?Sg().sortDirection:void 0)}),KA(()=>(c(wr),Gj),()=>{N(R0,c(wr)?Gj[c(wr)]:void 0)}),Vn(),di(!0);var ss,yr=CQA(),wl=gA(yr),N0=gA(wl),yl=kA(wl,2),Zn=Ua=>{var Ta=cQA(),m1=gA(Ta),EI=lt(()=>(c(wr),Y(pg),Y(r0),Y(xM),uA(()=>c(wr)===pg.asc?r0:xM)));Bn(m1,{get data(){return c(EI)}}),Le(()=>jn(Ta,"title","Currently sorted in ".concat(c(R0)," order"))),sA(Ua,Ta)};zA(yl,Ua=>{c(wr)!==void 0&&Ua(Zn)}),Le(Ua=>{ss=Ci(yr,1,"jse-column-header svelte-5pxwfq",null,ss,{"jse-readonly":kc()}),jn(yr,"title",kc()?c(ba):c(ba)+" (Click to sort the data by this column)"),Ht(N0,Ua)},[()=>(Y(mC),c(ba),Y(50),uA(()=>mC(c(ba),50)))]),De("click",yr,function(){kc()||kg()({path:ml(),sortDirection:c(wr)===pg.asc?pg.desc:pg.asc})}),sA(ho,yr),Yt()})(gA(ma),{get path(){return c(fi)},get sortedColumn(){return c(wt)},get readOnly(){return d()},onSort:je}),sA(_t,ma)});var Re=kA(Me),ct=_t=>{var fi=fQA(),ma=gA(fi),ho=lt(()=>(c(hA),uA(()=>Array.isArray(c(hA))?c(hA).length:0)));(function(Ia,ba){Jt(ba,!1);var wr=K(ba,"count",9),R0=K(ba,"maxSampleCount",9),ml=K(ba,"readOnly",9),Sg=K(ba,"onRefresh",9);di(!0);var kc,kg=QQA();Bn(gA(kg),{get data(){return ZO}}),Le(()=>{kc=Ci(kg,1,"jse-column-header svelte-1wgrwv3",null,kc,{"jse-readonly":ml()}),jn(kg,"title","The Columns are created by sampling ".concat(R0()," items out of ").concat(wr(),". ")+"If you're missing a column, click here to sample all of the items instead of a subset. This is slower.")}),De("click",kg,()=>Sg()()),sA(Ia,kg),Yt()})(ma,{get count(){return c(ho)},get maxSampleCount(){return c(Pe)},get readOnly(){return d()},onRefresh:()=>N(Pe,1/0)}),sA(_t,fi)};zA(Re,_t=>{c(A)&&_t(ct)});var ti,ji,Wn=kA(AA),Cn=gA(Wn),xo=kA(Wn);Da(xo,1,()=>(c(t),uA(()=>c(t).visibleItems)),Ka,(_t,fi,ma)=>{var ho=lt(()=>(c(t),uA(()=>c(t).startIndex+ma))),Ia=lt(()=>(c(n),Y(c(ho)),uA(()=>c(n).rows[c(ho)]))),ba=lt(()=>(Y(Mh),Y(c(ho)),Y(c(Ia)),uA(()=>{var ss;return Mh([String(c(ho))],(ss=c(Ia))===null||ss===void 0?void 0:ss.row)}))),wr=lt(()=>(Y(Q0),c(hA),c(Ge),Y(c(ho)),uA(()=>Q0(c(hA),c(Ge),[String(c(ho))])))),R0=vQA(),ml=gA(R0);uq(ml,()=>c(ho),ss=>{var yr=mQA(),wl=gA(yr),N0=kA(wl),yl=Zn=>{zh(Zn,{get validationError(){return c(ba)},get onExpand(){return ug}})};zA(N0,Zn=>{c(ba)&&Zn(yl)}),Ms(yr,(Zn,Ua)=>kw?.(Zn,Ua),()=>Zn=>(function(Ua,Ta){$[Ta]=Ua.getBoundingClientRect().height})(Zn,c(ho))),Le(()=>{var Zn;return Ht(wl,"".concat((Zn=c(ho))!==null&&Zn!==void 0?Zn:""," "))}),sA(ss,yr)});var Sg=kA(ml);Da(Sg,1,()=>c(qe),Ka,(ss,yr,wl,N0)=>{var yl,Zn=lt(()=>(Y(c(ho)),c(yr),uA(()=>[String(c(ho))].concat(c(yr))))),Ua=lt(()=>(Y($e),c(fi),c(yr),uA(()=>$e(c(fi),c(yr))))),Ta=lt(()=>(Y(bn),c(OA),Y(v0),Y(c(Zn)),uA(()=>bn(c(OA))&&v0(c(OA).path,c(Zn))))),m1=lt(()=>(Y(c(Ia)),uA(()=>{var Oa;return(Oa=c(Ia))===null||Oa===void 0?void 0:Oa.columns[wl]}))),EI=lt(()=>(Y(Mh),Y(c(Zn)),Y(c(m1)),uA(()=>Mh(c(Zn),c(m1))))),w1=yQA(),OE=gA(w1),QI=gA(OE),JE=Oa=>{var Pl=lt(()=>(Y($w),Y(Q0),c(fi),Y(c(wr)),c(yr),uA(()=>$w(Q0(c(fi),c(wr),c(yr)))))),YE=lt(()=>(Y(c(Pl)),uA(()=>!!c(Pl)&&c(Pl).some(D1=>D1.active)))),HE=lt(()=>(Y(An),Y(c(Pl)),uA(()=>!An(c(Pl)))));(function(D1,Jr){Jt(Jr,!1);var zE=K(Jr,"path",9),lN=K(Jr,"value",9),gN=K(Jr,"parser",9),aAA=K(Jr,"isSelected",9),rAA=K(Jr,"containsSearchResult",9),sAA=K(Jr,"containsActiveSearchResult",9),lAA=K(Jr,"onEdit",9);di(!0);var cN,zp=gQA(),gAA=gA(zp);Le(PE=>{cN=Ci(zp,1,"jse-inline-value svelte-1jv89ui",null,cN,{"jse-selected":aAA(),"jse-highlight":rAA(),"jse-active":sAA()}),Ht(gAA,PE)},[()=>(Y(mC),Y(gN()),Y(lN()),Y(50),uA(()=>{var PE;return mC((PE=gN().stringify(lN()))!==null&&PE!==void 0?PE:"",50)}))]),De("dblclick",zp,()=>lAA()(zE())),sA(D1,zp),Yt()})(Oa,{get path(){return c(Zn)},get value(){return c(Ua)},get parser(){return M()},get isSelected(){return c(Ta)},get containsSearchResult(){return c(HE)},get containsActiveSearchResult(){return c(YE)},onEdit:dt})},kD=Oa=>{var Pl=lt(()=>(Y(Q0),c(hA),c(Ge),Y(c(Zn)),uA(()=>{var Jr;return(Jr=Q0(c(hA),c(Ge),c(Zn)))===null||Jr===void 0?void 0:Jr.searchResults}))),YE=lt(()=>c(Ua)!==void 0?c(Ua):""),HE=lt(()=>(Y(m0),c(hA),c(GA),Y(c(Zn)),uA(()=>m0(c(hA),c(GA),c(Zn))))),D1=lt(()=>c(Ta)?c(OA):void 0);uW(Oa,{get path(){return c(Zn)},get value(){return c(YE)},get enforceString(){return c(HE)},get selection(){return c(D1)},get searchResultItems(){return c(Pl)},get context(){return c(ze)}})};zA(QI,Oa=>{Y(ua),Y(c(Ua)),uA(()=>ua(c(Ua)))?Oa(JE):Oa(kD,!1)});var _D=kA(QI),xD=Oa=>{var Pl=wQA();Y2(gA(Pl),{selected:!0,onContextMenu:Vo}),sA(Oa,Pl)};zA(_D,Oa=>{Y(d()),Y(c(Ta)),Y(gr),c(OA),uA(()=>!d()&&c(Ta)&&!gr(c(OA)))&&Oa(xD)});var _c=kA(OE,2),y1=Oa=>{zh(Oa,{get validationError(){return c(EI)},get onExpand(){return ug}})};zA(_c,Oa=>{c(EI)&&Oa(y1)}),Le(Oa=>{jn(w1,"data-path",Oa),yl=Ci(OE,1,"jse-value-outer svelte-1p86y3c",null,yl,{"jse-selected-value":c(Ta)})},[()=>(Y(Gw),Y(c(Zn)),uA(()=>Gw(c(Zn))))]),sA(ss,w1)});var kc=kA(Sg),kg=ss=>{sA(ss,DQA())};zA(kc,ss=>{c(A)&&ss(kg)}),sA(_t,R0)});var ri,Ca=gA(kA(xo));ta(Je,_t=>N(PA,_t),()=>c(PA)),Ms(Je,(_t,fi)=>kw?.(_t,fi),()=>Na),Tr(()=>De("scroll",Je,ut));var Bo=kA(Je,2),da=_t=>{var fi=lt(()=>(c(te),uA(()=>"You pasted a JSON ".concat(Array.isArray(c(te).contents)?"array":"object"," as text")))),ma=lt(()=>[{icon:oC,text:"Paste as JSON instead",title:"Paste the text as JSON instead of a single value",onMouseDown:Uo},{text:"Leave as is",title:"Keep the pasted content as a single value",onClick:Ra}]);Hl(_t,{type:"info",get message(){return c(fi)},get actions(){return c(ma)}})};zA(Bo,_t=>{c(te)&&_t(da)});var Nn=kA(Bo,2),qt=_t=>{var fi=lt(()=>[{icon:oC,text:"Paste as string instead",title:"Paste the clipboard data as a single string value instead of an array",onClick:xn},{text:"Leave as is",title:"Keep the pasted array",onClick:Oi}]);Hl(_t,{type:"info",message:"Multiline text was pasted as array",get actions(){return c(fi)}})};zA(Nn,_t=>{c(NA)&&_t(qt)});var un=kA(Nn,2),si=_t=>{var fi=lt(()=>d()?[]:[{icon:w6,text:"Ok",title:"Accept the repaired document",onClick:kn},{icon:Tu,text:"Repair manually instead",title:"Leave the document unchanged and repair it manually instead",onClick:ko}]);Hl(_t,{type:"success",message:"The loaded JSON document was invalid but is successfully repaired.",get actions(){return c(fi)},onClose:J})};zA(un,_t=>{c(rt)&&_t(si)}),bx(kA(un,2),{get validationErrors(){return c(mn)},selectError:Te}),Le(()=>{ti=Ci(Wn,1,"jse-table-invisible-start-section svelte-1p86y3c",null,ti,{"jse-search-box-background":c(JA)}),jn(Cn,"colspan",(c(qe),uA(()=>c(qe).length))),ji=wg(Cn,"",ji,{height:(c(t),uA(()=>c(t).startHeight+"px"))}),jn(Ca,"colspan",(c(qe),uA(()=>c(qe).length))),ri=wg(Ca,"",ri,{height:(c(t),uA(()=>c(t).endHeight+"px"))})}),sA(pe,Ve)},ge=pe=>{var Ve=zi(),Ue=at(Ve),Je=no=>{var AA=MQA(),fA=at(AA),ZA=lt(()=>d()?[]:[{icon:Tu,text:"Repair manually",title:'Open the document in "code" mode and repair it manually',onClick:ko}]);Hl(fA,{type:"error",message:"The loaded JSON document is invalid and could not be repaired automatically.",get actions(){return c(ZA)}}),_W(kA(fA,2),{get text(){return c(Ae)},get json(){return c(hA)},get indentation(){return j()},get parser(){return M()}}),sA(no,AA)},Ei=no=>{EQA(no,{get text(){return c(Ae)},get json(){return c(hA)},get readOnly(){return d()},get parser(){return M()},openJSONEditorModal:dt,extractPath:ei,get onChangeMode(){return eA()},onClick:()=>{J()}})};zA(Ue,no=>{c(pA)&&c(Ae)!==void 0&&c(Ae)!==""?no(Je):no(Ei,!1)},!0),sA(pe,Ve)};zA(DA,pe=>{c(vt)?pe(ae):pe(ge,!1)}),De("paste",rA,be),sA(_,q)},oa=_=>{sA(_,kQA())};zA(Tt,_=>{C?_(oa,!1):_(fa)}),ta(cn,_=>N(bA,_),()=>c(bA));var y=kA(cn,2),b=_=>{EW(_,{onClose:()=>N(V,!1)})};zA(y,_=>{c(V)&&_(b)});var R=kA(y,2),W=_=>{QW(_,t1(()=>c(Xe),{onClose:()=>{var q;(q=c(Xe))===null||q===void 0||q.onClose(),N(Xe,void 0)}}))};return zA(R,_=>{c(Xe)&&_(W)}),Le(()=>$i=Ci(cn,1,"jse-table-mode svelte-1p86y3c",null,$i,{"no-main-menu":!m()})),De("mousedown",cn,function(_){if(_.buttons===1||_.buttons===2){var q=_.target;q.isContentEditable||J();var tA=Uq(q);if(tA){if(gr(c(OA))&&ep(c(hA),c(OA),tA))return;N(OA,en(tA)),_.preventDefault()}}}),De("keydown",cn,function(_){var q=RC(_);if(o("keydown",{combo:q,key:_.key}),q==="Ctrl+X"&&(_.preventDefault(),ar(!0)),q==="Ctrl+Shift+X"&&(_.preventDefault(),ar(!1)),q==="Ctrl+C"&&(_.preventDefault(),ja(!0)),q==="Ctrl+Shift+C"&&(_.preventDefault(),ja(!1)),q==="Ctrl+D"&&(_.preventDefault(),qn()),q!=="Delete"&&q!=="Backspace"||(_.preventDefault(),Wi()),q==="Insert"&&_.preventDefault(),q==="Ctrl+A"&&_.preventDefault(),q==="Ctrl+Q"&&ga(_),q==="ArrowLeft"&&(_.preventDefault(),bi(),c(OA))){var tA=(function(Ve,Ue){var{rowIndex:Je,columnIndex:Ei}=Qg(Qt(Ue),Ve);return Ei>0?en(Td({rowIndex:Je,columnIndex:Ei-1},Ve)):Ue})(c(qe),c(OA));N(OA,tA),ia(Qt(tA))}if(q==="ArrowRight"&&(_.preventDefault(),bi(),c(OA))){var rA=(function(Ve,Ue){var{rowIndex:Je,columnIndex:Ei}=Qg(Qt(Ue),Ve);return Ei0?en(Td({rowIndex:Je-1,columnIndex:Ei},Ve)):Ue})(c(qe),c(OA));N(OA,DA),ia(Qt(DA))}if(q==="ArrowDown"&&(_.preventDefault(),bi(),c(OA))){var ae=(function(Ve,Ue,Je){var{rowIndex:Ei,columnIndex:no}=Qg(Qt(Je),Ue);return EiN(HA,$)}).get()),bA=cA(s());function PA($){if(Yj($)){N(bA,$.undo.mode);var iA=c(HA).items(),oA=iA.findIndex(he=>he===$),UA=oA!==-1?iA[oA-1]:void 0;ue("handleUndo",{index:oA,item:$,items:iA,prevItem:UA}),UA&&t(UA.redo.selection),F()(c(bA))}}function it($){if(Yj($)){N(bA,$.redo.mode);var iA=c(HA).items(),oA=iA.findIndex(he=>he===$),UA=oA!==-1?iA[oA+1]:void 0;ue("handleRedo",{index:oA,item:$,items:iA,nextItem:UA}),UA&&t(UA.undo.selection),F()(c(bA))}}var Xe=cA(),YA={type:"separator"},hA=cA(),Ae=cA();function pA($){if(c(IA))return c(IA).patch($);if(c(xA))return c(xA).patch($);if(c(qA))return c(qA).patch($);throw new Error('Method patch is not available in mode "'.concat(c(bA),'"'))}function te($,iA){if(c(IA))return c(IA).expand($,iA);if(c(qA))return c(qA).expand($,iA);throw new Error('Method expand is not available in mode "'.concat(c(bA),'"'))}function NA($,iA){if(c(IA))return c(IA).collapse($,iA);if(c(qA))return c(qA).collapse($,iA);throw new Error('Method collapse is not available in mode "'.concat(c(bA),'"'))}function Ge($){if(c(qA))c(qA).openTransformModal($);else if(c(IA))c(IA).openTransformModal($);else{if(!c(xA))throw new Error('Method transform is not available in mode "'.concat(c(bA),'"'));c(xA).openTransformModal($)}}function JA(){if(c(qA))return c(qA).validate();if(c(IA))return c(IA).validate();if(c(xA))return c(xA).validate();throw new Error('Method validate is not available in mode "'.concat(c(bA),'"'))}function yA(){return c(IA)?c(IA).acceptAutoRepair():A()}function Pt($){if(c(IA))return c(IA).scrollTo($);if(c(xA))return c(xA).scrollTo($);throw new Error('Method scrollTo is not available in mode "'.concat(c(bA),'"'))}function Dt($){if(c(IA))return c(IA).findElement($);if(c(xA))return c(xA).findElement($);throw new Error('Method findElement is not available in mode "'.concat(c(bA),'"'))}function fe(){c(qA)?c(qA).focus():c(IA)?c(IA).focus():c(xA)&&c(xA).focus()}function Zt(){return Pe.apply(this,arguments)}function Pe(){return(Pe=Xt(function*(){c(qA)&&(yield c(qA).refresh())})).apply(this,arguments)}KA(()=>Y(s()),()=>{(function($){if($!==c(bA)){var iA={type:"mode",undo:{mode:c(bA),selection:void 0},redo:{mode:$,selection:void 0}};c(bA)==="text"&&c(qA)&&c(qA).flush(),ue("add history item",iA),c(HA).add(iA),N(bA,$)}})(s())}),KA(()=>(c(bA),Y(F())),()=>{N(Xe,[{type:"button",text:"text",title:"Switch to text mode (current mode: ".concat(c(bA),")"),className:"jse-group-button jse-first"+(c(bA)===xa.text?" jse-selected":""),onClick:()=>F()(xa.text)},{type:"button",text:"tree",title:"Switch to tree mode (current mode: ".concat(c(bA),")"),className:"jse-group-button "+(c(bA)===xa.tree?" jse-selected":""),onClick:()=>F()(xa.tree)},{type:"button",text:"table",title:"Switch to table mode (current mode: ".concat(c(bA),")"),className:"jse-group-button jse-last"+(c(bA)===xa.table?" jse-selected":""),onClick:()=>F()(xa.table)}])}),KA(()=>(c(Xe),Y(eA()),c(bA),Y(M()),Y(n())),()=>{N(hA,$=>{var iA=L_($[0])?c(Xe).concat($):c(Xe).concat(YA,$),oA=d3(iA);return eA()(iA,{mode:c(bA),modal:M(),readOnly:n()})||oA})}),KA(()=>(Y(Z()),c(bA),Y(M()),Y(n()),Y(t())),()=>{N(Ae,$=>{var iA,oA=d3($);return(iA=Z()($,{mode:c(bA),modal:M(),readOnly:n(),selection:t()}))!==null&&iA!==void 0?iA:!n()&&oA})}),Vn();var qe={patch:pA,expand:te,collapse:NA,transform:Ge,validate:JA,acceptAutoRepair:yA,scrollTo:Pt,findElement:Dt,focus:fe,refresh:Zt};di();var vt=zi(),Ke=at(vt),Ii=$=>{ta(lQA($,{get externalContent(){return A()},get externalSelection(){return t()},get history(){return c(HA)},get readOnly(){return n()},get indentation(){return o()},get tabSize(){return a()},get mainMenuBar(){return l()},get statusBar(){return C()},get askToFormat(){return d()},get escapeUnicodeCharacters(){return u()},get parser(){return f()},get validator(){return v()},get validationParser(){return S()},get onChange(){return x()},get onChangeMode(){return F()},get onSelect(){return z()},onUndo:PA,onRedo:it,get onError(){return CA()},get onFocus(){return wA()},get onBlur(){return BA()},get onRenderMenu(){return c(hA)},get onSortModal(){return QA()},get onTransformModal(){return RA()},$$legacy:!0}),iA=>N(qA,iA),()=>c(qA))},V=$=>{var iA=zi(),oA=at(iA),UA=me=>{ta(xQA(me,{get externalContent(){return A()},get externalSelection(){return t()},get history(){return c(HA)},get readOnly(){return n()},get truncateTextSize(){return r()},get mainMenuBar(){return l()},get escapeControlCharacters(){return B()},get escapeUnicodeCharacters(){return u()},get flattenColumns(){return E()},get parser(){return f()},get parseMemoizeOne(){return m()},get validator(){return v()},get validationParser(){return S()},get indentation(){return o()},get onChange(){return x()},get onChangeMode(){return F()},get onSelect(){return z()},onUndo:PA,onRedo:it,get onRenderValue(){return j()},get onFocus(){return wA()},get onBlur(){return BA()},get onRenderMenu(){return c(hA)},get onRenderContextMenu(){return c(Ae)},get onSortModal(){return QA()},get onTransformModal(){return RA()},get onJSONEditorModal(){return dA()},$$legacy:!0}),GA=>N(xA,GA),()=>c(xA))},he=me=>{ta($_(me,{get externalContent(){return A()},get externalSelection(){return t()},get history(){return c(HA)},get readOnly(){return n()},get indentation(){return o()},get truncateTextSize(){return r()},get mainMenuBar(){return l()},get navigationBar(){return g()},get escapeControlCharacters(){return B()},get escapeUnicodeCharacters(){return u()},get parser(){return f()},get parseMemoizeOne(){return m()},get validator(){return v()},get validationParser(){return S()},get pathParser(){return k()},get onError(){return CA()},get onChange(){return x()},get onChangeMode(){return F()},get onSelect(){return z()},onUndo:PA,onRedo:it,get onRenderValue(){return j()},get onClassName(){return X()},get onFocus(){return wA()},get onBlur(){return BA()},get onRenderMenu(){return c(hA)},get onRenderContextMenu(){return c(Ae)},get onSortModal(){return QA()},get onTransformModal(){return RA()},get onJSONEditorModal(){return dA()},$$legacy:!0}),GA=>N(IA,GA),()=>c(IA))};zA(oA,me=>{c(bA),Y(xa),uA(()=>c(bA)===xa.table)?me(UA):me(he,!1)},!0),sA($,iA)};return zA(Ke,$=>{c(bA),Y(xa),uA(()=>c(bA)===xa.text||String(c(bA))==="code")?$(Ii):$(V,!1)}),sA(i,vt),Ai(e,"patch",pA),Ai(e,"expand",te),Ai(e,"collapse",NA),Ai(e,"transform",Ge),Ai(e,"validate",JA),Ai(e,"acceptAutoRepair",yA),Ai(e,"scrollTo",Pt),Ai(e,"findElement",Dt),Ai(e,"focus",fe),Ai(e,"refresh",Zt),Yt(qe)}oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-modal-wrapper.svelte-t4zsk3 { - flex: 1; - display: flex; - min-width: 0; - min-height: 0; - flex-direction: column; -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) { - flex: 1; - display: flex; - flex-direction: column; - padding: 20px; - overflow: auto; - min-width: 0; - min-height: 0; -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) { - display: flex; - flex-direction: row; - justify-content: flex-end; - padding-top: var(--jse-padding, 10px); -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) button.jse-primary:where(.svelte-t4zsk3) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); - color: var(--jse-button-primary-color, #fff); - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - border-radius: 3px; -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) button.jse-primary:where(.svelte-t4zsk3):hover { - background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) button.jse-primary:where(.svelte-t4zsk3):disabled { - background: var(--jse-button-primary-background-disabled, #9d9d9d); -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-label:where(.svelte-t4zsk3) { - font-weight: bold; - display: block; - box-sizing: border-box; -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-label:where(.svelte-t4zsk3) .jse-label-inner:where(.svelte-t4zsk3) { - margin-top: calc(2 * var(--jse-padding, 10px)); - margin-bottom: calc(0.5 * var(--jse-padding, 10px)); - box-sizing: border-box; -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-modal-inline-editor:where(.svelte-t4zsk3) { - flex: 1; - min-height: 150px; - min-width: 0; - max-width: 100%; - display: flex; - --jse-theme-color: var(--jse-modal-editor-theme-color, #707070); - --jse-theme-color-highlight: var(--jse-modal-editor-theme-color-highlight, #646464); -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) { - gap: var(--jse-padding, 10px); - align-items: center; -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) .jse-error:where(.svelte-t4zsk3) { - flex: 1; - color: var(--jse-error-color, #ee5341); -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) button.jse-secondary:where(.svelte-t4zsk3) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-button-secondary-background, #d3d3d3); - color: var(--jse-button-secondary-color, var(--jse-text-color, #4d4d4d)); - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - border-radius: 3px; -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) button.jse-secondary:where(.svelte-t4zsk3):hover { - background: var(--jse-button-secondary-background-highlight, #e1e1e1); -} -.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) button.jse-secondary:where(.svelte-t4zsk3):disabled { - background: var(--jse-button-secondary-background-disabled, #9d9d9d); -} -.jse-modal-wrapper.svelte-t4zsk3 input:where(.svelte-t4zsk3) { - border: var(--jse-input-border, 1px solid #d8dbdf); - outline: none; - box-sizing: border-box; - padding: calc(0.5 * var(--jse-padding, 10px)); - font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); - font-size: var(--jse-font-size-mono, 14px); - color: inherit; - background: var(--jse-input-background, var(--jse-background-color, #fff)); -} -.jse-modal-wrapper.svelte-t4zsk3 input:where(.svelte-t4zsk3):focus { - border: var(--jse-input-border-focus, 1px solid var(--jse-input-border-focus, var(--jse-theme-color, #3883fa))); -} -.jse-modal-wrapper.svelte-t4zsk3 input:where(.svelte-t4zsk3):read-only { - background: var(--jse-input-background-readonly, transparent); -}`);var RQA=TA('
      '),NQA=TA(''),FQA=TA(''),LQA=TA(''),GQA=TA('
      Path
      Contents
      ',1),KQA=TA('
      '),UQA={};oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-modal-contents.svelte-lwzlls { - flex: 1; - display: flex; - flex-direction: column; - padding: 20px; - overflow: auto; - min-width: 0; - min-height: 0; -} -.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) { - display: flex; - flex-direction: row; - justify-content: flex-end; - padding-top: var(--jse-padding, 10px); -} -.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) button.jse-primary:where(.svelte-lwzlls) { - border: none; - background: transparent; - color: inherit; - cursor: pointer; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - padding: 5px; - margin: 0; - background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); - color: var(--jse-button-primary-color, #fff); - padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); - border-radius: 3px; -} -.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) button.jse-primary:where(.svelte-lwzlls):hover { - background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); -} -.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) button.jse-primary:where(.svelte-lwzlls):disabled { - background: var(--jse-button-primary-background-disabled, #9d9d9d); -} -.jse-modal-contents.svelte-lwzlls table:where(.svelte-lwzlls) { - width: 100%; - border-collapse: collapse; - border-spacing: 0; -} -.jse-modal-contents.svelte-lwzlls table:where(.svelte-lwzlls) th:where(.svelte-lwzlls), -.jse-modal-contents.svelte-lwzlls table:where(.svelte-lwzlls) td:where(.svelte-lwzlls) { - text-align: left; - vertical-align: middle; - font-weight: normal; - padding-bottom: var(--jse-padding, 10px); -} -.jse-modal-contents.svelte-lwzlls input.jse-path:where(.svelte-lwzlls) { - width: 100%; - box-sizing: border-box; - padding: 5px 10px; - border: var(--jse-input-border, 1px solid #d8dbdf); - border-radius: var(--jse-input-radius, 3px); - font-family: inherit; - font-size: inherit; - background: inherit; - background: var(--jse-input-background-readonly, transparent); - color: inherit; - outline: none; -} -.jse-modal-contents.svelte-lwzlls .svelte-select input { - box-sizing: border-box; -} -.jse-modal-contents.svelte-lwzlls .jse-space:where(.svelte-lwzlls) { - height: 200px; -} -.jse-modal-contents.svelte-lwzlls .jse-space:where(.svelte-lwzlls) .jse-error:where(.svelte-lwzlls) { - color: var(--jse-error-color, #ee5341); -}`);var kh=C5(()=>UQA),TQA=TA('Property'),OQA=TA('
      '),JQA=TA('
      Path
      Direction
      ',1);oi(`/* over all fonts, sizes, and colors */ -/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ -/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ -/* main, menu, modal */ -/* jsoneditor modal */ -/* tooltip in text mode */ -/* panels: navigation bar, gutter, search box */ -/* navigation-bar */ -/* context menu */ -/* contents: json key and values */ -/* contents: selected or hovered */ -/* contents: section of collapsed items in an array */ -/* contents: highlighting of search matches */ -/* contents: inline tags inside the JSON document */ -/* contents: table */ -/* controls in modals: inputs, buttons, and \`a\` */ -/* messages */ -/* svelte-select */ -/* color picker */ -.jse-main.svelte-1l55585 { - width: 100%; - height: 100%; - min-width: 0; - min-height: 150px; - font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); - font-size: var(--jse-font-size, 16px); - line-height: normal; - position: relative; - display: flex; - flex-direction: row; -} -.jse-main.svelte-1l55585:not(.jse-focus) { - --jse-selection-background-color: var(--jse-selection-background-inactive-color, #e8e8e8); - --jse-context-menu-pointer-background: var(--jse-context-menu-pointer-hover-background, #b2b2b2); -}`);var YQA=TA('
      ',1);function HQA(i,e){Jt(e,!1);var A=cA(void 0,!0),t=dr("jsoneditor:JSONEditor"),n={text:""},o=void 0,a=!1,r=xa.tree,s=!0,l=!0,g=!0,C=!0,d=!1,B=!1,u=!0,E=JSON,f=void 0,m=JSON,v={parse:jIA,stringify:El},S=[IIA],k=S[0].id,M=ug,x=void 0,F=void 0,z=PIA,j=ug,X=ug,eA=ug,Z=ug,CA=de=>{console.error(de),alert(de.toString())},wA=ug,BA=ug,QA=K(e,"content",13,n),RA=K(e,"selection",13,o),dA=K(e,"readOnly",13,a),IA=K(e,"indentation",13,2),xA=K(e,"tabSize",13,4),qA=K(e,"truncateTextSize",13,1e3),ue=K(e,"mode",13,r),HA=K(e,"mainMenuBar",13,s),bA=K(e,"navigationBar",13,l),PA=K(e,"statusBar",13,g),it=K(e,"askToFormat",13,C),Xe=K(e,"escapeControlCharacters",13,d),YA=K(e,"escapeUnicodeCharacters",13,B),hA=K(e,"flattenColumns",13,u),Ae=K(e,"parser",13,E),pA=K(e,"validator",13,f),te=K(e,"validationParser",13,m),NA=K(e,"pathParser",13,v),Ge=K(e,"queryLanguages",13,S),JA=K(e,"queryLanguageId",13,k),yA=K(e,"onChangeQueryLanguage",13,M),Pt=K(e,"onChange",13,x),Dt=K(e,"onSelect",13,F),fe=K(e,"onRenderValue",13,z),Zt=K(e,"onClassName",13,j),Pe=K(e,"onRenderMenu",13,X),qe=K(e,"onRenderContextMenu",13,eA),vt=K(e,"onChangeMode",13,Z),Ke=K(e,"onError",13,CA),Ii=K(e,"onFocus",13,wA),V=K(e,"onBlur",13,BA),$=cA(Fh(),!0),iA=cA(!1,!0),oA=cA(void 0,!0),UA=cA(void 0,!0),he=cA(void 0,!0),me=cA(void 0,!0),GA=cA(Ae(),!0);function OA(){return QA()}function wt(de){t("set");var xi=n_(de);if(xi)throw new Error(xi);N($,Fh()),QA(de),jo()}function rt(de){t("update");var xi=n_(de);if(xi)throw new Error(xi);QA(de),jo()}function je(de){var xi=c(oA).patch(de);return jo(),xi}function ze(de){RA(de),jo()}function pi(de,xi){c(oA).expand(de,xi),jo()}function mn(de){var xi=arguments.length>1&&arguments[1]!==void 0&&arguments[1];c(oA).collapse(de,xi),jo()}function Sn(){var de=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};c(oA).transform(de),jo()}function He(){return c(oA).validate()}function En(){var de=c(oA).acceptAutoRepair();return jo(),de}function Gi(de){return Pi.apply(this,arguments)}function Pi(){return(Pi=Xt(function*(de){yield c(oA).scrollTo(de)})).apply(this,arguments)}function gn(de){return c(oA).findElement(de)}function Rt(){c(oA).focus(),jo()}function Qn(){return jt.apply(this,arguments)}function jt(){return(jt=Xt(function*(){yield c(oA).refresh()})).apply(this,arguments)}function J(de){var xi,wn,xn,na,Ra,Oi,ko,ar,To,ja,to,Wi,ei,qn,_o,qo,SA,ee,be,EA,LA,Ce,Te,gt,dt,Ut,io,Zi,nn,ai,Xi,Na=Object.keys(de);for(var Vt of Na)switch(Vt){case"content":QA((xi=de[Vt])!==null&&xi!==void 0?xi:n);break;case"selection":RA((wn=de[Vt])!==null&&wn!==void 0?wn:o);break;case"readOnly":dA((xn=de[Vt])!==null&&xn!==void 0?xn:a);break;case"indentation":IA((na=de[Vt])!==null&&na!==void 0?na:2);break;case"tabSize":xA((Ra=de[Vt])!==null&&Ra!==void 0?Ra:4);break;case"truncateTextSize":qA((Oi=de[Vt])!==null&&Oi!==void 0?Oi:1e3);break;case"mode":ue((ko=de[Vt])!==null&&ko!==void 0?ko:r);break;case"mainMenuBar":HA((ar=de[Vt])!==null&&ar!==void 0?ar:s);break;case"navigationBar":bA((To=de[Vt])!==null&&To!==void 0?To:l);break;case"statusBar":PA((ja=de[Vt])!==null&&ja!==void 0?ja:g);break;case"askToFormat":it((to=de[Vt])!==null&&to!==void 0?to:C);break;case"escapeControlCharacters":Xe((Wi=de[Vt])!==null&&Wi!==void 0?Wi:d);break;case"escapeUnicodeCharacters":YA((ei=de[Vt])!==null&&ei!==void 0?ei:B);break;case"flattenColumns":hA((qn=de[Vt])!==null&&qn!==void 0?qn:u);break;case"parser":Ae((_o=de[Vt])!==null&&_o!==void 0?_o:E);break;case"validator":pA((qo=de[Vt])!==null&&qo!==void 0?qo:f);break;case"validationParser":te((SA=de[Vt])!==null&&SA!==void 0?SA:m);break;case"pathParser":NA((ee=de[Vt])!==null&&ee!==void 0?ee:v);break;case"queryLanguages":Ge((be=de[Vt])!==null&&be!==void 0?be:S);break;case"queryLanguageId":JA((EA=de[Vt])!==null&&EA!==void 0?EA:k);break;case"onChangeQueryLanguage":yA((LA=de[Vt])!==null&&LA!==void 0?LA:M);break;case"onChange":Pt((Ce=de[Vt])!==null&&Ce!==void 0?Ce:x);break;case"onRenderValue":fe((Te=de[Vt])!==null&&Te!==void 0?Te:z);break;case"onClassName":Zt((gt=de[Vt])!==null&>!==void 0?gt:j);break;case"onRenderMenu":Pe((dt=de[Vt])!==null&&dt!==void 0?dt:X);break;case"onRenderContextMenu":qe((Ut=de[Vt])!==null&&Ut!==void 0?Ut:eA);break;case"onChangeMode":vt((io=de[Vt])!==null&&io!==void 0?io:Z);break;case"onSelect":Dt((Zi=de[Vt])!==null&&Zi!==void 0?Zi:F);break;case"onError":Ke((nn=de[Vt])!==null&&nn!==void 0?nn:CA);break;case"onFocus":Ii((ai=de[Vt])!==null&&ai!==void 0?ai:wA);break;case"onBlur":V((Xi=de[Vt])!==null&&Xi!==void 0?Xi:BA);break;default:It(Vt)}function It($i){t('Unknown property "'.concat($i,'"'))}Ge().some($i=>$i.id===JA())||JA(Ge()[0].id),jo()}function ut(){return bi.apply(this,arguments)}function bi(){return(bi=Xt(function*(){throw new Error("class method destroy() is deprecated. It is replaced with a method destroy() in the vanilla library.")})).apply(this,arguments)}function kn(de,xi,wn){QA(de),Pt()&&Pt()(de,xi,wn)}function _n(de){RA(de),Dt()&&Dt()(d3(de))}function Co(){N(iA,!0),Ii()&&Ii()()}function ia(){N(iA,!1),V()&&V()()}function So(de){return Vo.apply(this,arguments)}function Vo(){return(Vo=Xt(function*(de){ue()!==de&&(ue(de),jo(),Rt(),vt()(de))})).apply(this,arguments)}function ga(de){t("handleChangeQueryLanguage",de),JA(de),yA()(de)}function Ko(de){var{id:xi,json:wn,rootPath:xn,onTransform:na,onClose:Ra}=de;dA()||N(me,{id:xi,json:wn,rootPath:xn,indentation:IA(),truncateTextSize:qA(),escapeControlCharacters:Xe(),escapeUnicodeCharacters:YA(),parser:Ae(),parseMemoizeOne:c(A),validationParser:te(),pathParser:NA(),queryLanguages:Ge(),queryLanguageId:JA(),onChangeQueryLanguage:ga,onRenderValue:fe(),onRenderMenu:Oi=>Pe()(Oi,{mode:ue(),modal:!0,readOnly:dA()}),onRenderContextMenu:Oi=>qe()(Oi,{mode:ue(),modal:!0,readOnly:dA(),selection:RA()}),onClassName:Zt(),onTransform:na,onClose:Ra})}function va(de){dA()||N(he,de)}function ca(de){var{content:xi,path:wn,onPatch:xn,onClose:na}=de;t("onJSONEditorModal",{content:xi,path:wn}),N(UA,{content:xi,path:wn,onPatch:xn,readOnly:dA(),indentation:IA(),tabSize:xA(),truncateTextSize:qA(),mainMenuBar:HA(),navigationBar:bA(),statusBar:PA(),askToFormat:it(),escapeControlCharacters:Xe(),escapeUnicodeCharacters:YA(),flattenColumns:hA(),parser:Ae(),validator:void 0,validationParser:te(),pathParser:NA(),onRenderValue:fe(),onClassName:Zt(),onRenderMenu:Pe(),onRenderContextMenu:qe(),onSortModal:va,onTransformModal:Ko,onClose:na})}function pa(de){de.stopPropagation()}KA(()=>(Y(Ae()),c(GA),Y(QA()),Fh),()=>{if(!_q(Ae(),c(GA))){if(t("parser changed, recreate editor"),W4(QA())){var de=c(GA).stringify(QA().json);QA({json:de!==void 0?Ae().parse(de):void 0})}N(GA,Ae()),N($,Fh())}}),KA(()=>Y(QA()),()=>{var de=n_(QA());de&&console.error("Error: "+de)}),KA(()=>Y(RA()),()=>{RA()===null&&console.warn("selection is invalid: it is null but should be undefined")}),KA(()=>Y(Ae()),()=>{N(A,YB(Ae().parse))}),KA(()=>Y(ue()),()=>{t("mode changed to",ue())}),Vn();var Uo={get:OA,set:wt,update:rt,patch:je,select:ze,expand:pi,collapse:mn,transform:Sn,validate:He,acceptAutoRepair:En,scrollTo:Gi,findElement:gn,focus:Rt,refresh:Qn,updateProps:J,destroy:ut};return di(!0),N_(i,{children:(de,xi)=>{var wn,xn=YQA(),na=at(xn);uq(gA(na),()=>c($),to=>{ta(fV(to,{get externalMode(){return ue()},get content(){return QA()},get selection(){return RA()},get readOnly(){return dA()},get indentation(){return IA()},get tabSize(){return xA()},get truncateTextSize(){return qA()},get statusBar(){return PA()},get askToFormat(){return it()},get mainMenuBar(){return HA()},get navigationBar(){return bA()},get escapeControlCharacters(){return Xe()},get escapeUnicodeCharacters(){return YA()},get flattenColumns(){return hA()},get parser(){return Ae()},get parseMemoizeOne(){return c(A)},get validator(){return pA()},get validationParser(){return te()},get pathParser(){return NA()},insideModal:!1,get onError(){return Ke()},onChange:kn,onChangeMode:So,onSelect:_n,get onRenderValue(){return fe()},get onClassName(){return Zt()},onFocus:Co,onBlur:ia,get onRenderMenu(){return Pe()},get onRenderContextMenu(){return qe()},onSortModal:va,onTransformModal:Ko,onJSONEditorModal:ca,$$legacy:!0}),Wi=>N(oA,Wi),()=>c(oA))});var Ra=kA(na,2),Oi=to=>{(function(Wi,ei){var qn,_o;Jt(ei,!1);var qo=cA(void 0,!0),SA=cA(void 0,!0),ee=cA(void 0,!0),be=cA(void 0,!0),EA=dr("jsoneditor:SortModal"),LA=K(ei,"id",9),Ce=K(ei,"json",9),Te=K(ei,"rootPath",9),gt=K(ei,"onSort",9),dt=K(ei,"onClose",9),Ut={value:1,label:"ascending"},io=[Ut,{value:-1,label:"descending"}],Zi="".concat(LA(),":").concat(xt(Te())),nn=cA((qn=kh()[Zi])===null||qn===void 0?void 0:qn.selectedProperty,!0),ai=cA(((_o=kh()[Zi])===null||_o===void 0?void 0:_o.selectedDirection)||Ut,!0),Xi=cA(void 0,!0);function Na(){try{var It,$i,cn;N(Xi,void 0);var Io=((It=c(nn))===null||It===void 0?void 0:It.value)||(($i=c(be))===null||$i===void 0||($i=$i[0])===null||$i===void 0?void 0:$i.value)||[],Rn=(cn=c(ai))===null||cn===void 0?void 0:cn.value,Tt=mW(Ce(),Te(),Io,Rn);gt()!==void 0&&Te()!==void 0&>()({operations:Tt,rootPath:Te(),itemPath:Io,direction:Rn}),dt()()}catch(fa){N(Xi,String(fa))}}function Vt(It){It.focus()}KA(()=>(Y(Ce()),Y(Te())),()=>{N(qo,$e(Ce(),Te()))}),KA(()=>c(qo),()=>{N(SA,Array.isArray(c(qo)))}),KA(()=>(c(SA),c(qo)),()=>{N(ee,c(SA)?x_(c(qo)):void 0)}),KA(()=>(c(ee),j2),()=>{N(be,c(ee)?c(ee).map(j2):void 0)}),KA(()=>(kh(),c(nn),c(ai)),()=>{kh(kh()[Zi]={selectedProperty:c(nn),selectedDirection:c(ai)}),EA("store state in memory",Zi,kh()[Zi])}),Vn(),di(!0),np(Wi,{get onClose(){return dt()},className:"jse-sort-modal",children:(It,$i)=>{var cn=JQA(),Io=at(cn),Rn=lt(()=>c(SA)?"Sort array items":"Sort object keys");o5(Io,{get title(){return c(Rn)},get onClose(){return dt()}});var Tt=gA(kA(Io,2)),fa=kA(gA(Tt)),oa=gA(fa),y=kA(gA(oa)),b=gA(y),R=kA(oa),W=ge=>{var pe=TQA(),Ve=kA(gA(pe));Hd(gA(Ve),{showChevron:!0,get items(){return c(be)},get value(){return c(nn)},set value(Ue){N(nn,Ue)},$$legacy:!0}),sA(ge,pe)};zA(R,ge=>{c(SA),c(be),uA(()=>{var pe;return c(SA)&&c(be)&&((pe=c(be))===null||pe===void 0?void 0:pe.length)>1})&&ge(W)});var _=kA(R),q=kA(gA(_));Hd(gA(q),{showChevron:!0,clearable:!1,get items(){return io},get value(){return c(ai)},set value(ge){N(ai,ge)},$$legacy:!0});var tA=kA(Tt,2),rA=gA(tA),DA=ge=>{var pe=OQA(),Ve=gA(pe);Le(()=>Ht(Ve,c(Xi))),sA(ge,pe)};zA(rA,ge=>{c(Xi)&&ge(DA)});var ae=gA(kA(tA,2));Tr(()=>De("click",ae,Na)),Ms(ae,ge=>Vt?.(ge)),Le(ge=>{tI(b,ge),ae.disabled=(c(SA),c(be),c(nn),uA(()=>{var pe;return!!(c(SA)&&c(be)&&((pe=c(be))===null||pe===void 0?void 0:pe.length)>1)&&!c(nn)}))},[()=>(Y(Te()),Y(An),Y(El),uA(()=>Te()&&!An(Te())?El(Te()):"(document root)"))]),sA(It,cn)},$$slots:{default:!0}}),Yt()})(to,t1(()=>c(he),{onClose:()=>{var Wi;(Wi=c(he))===null||Wi===void 0||Wi.onClose(),N(he,void 0)}}))};zA(Ra,to=>{c(he)&&to(Oi)});var ko=kA(Ra,2),ar=to=>{jEA(to,t1(()=>c(me),{onClose:()=>{var Wi;(Wi=c(me))===null||Wi===void 0||Wi.onClose(),N(me,void 0)}}))};zA(ko,to=>{c(me)&&to(ar)});var To=kA(ko,2),ja=to=>{(function(Wi,ei){Jt(ei,!1);var qn=cA(void 0,!0),_o=cA(void 0,!0),qo=cA(void 0,!0),SA=cA(void 0,!0),ee=dr("jsoneditor:JSONEditorModal"),be=K(ei,"content",9),EA=K(ei,"path",9),LA=K(ei,"onPatch",9),Ce=K(ei,"readOnly",9),Te=K(ei,"indentation",9),gt=K(ei,"tabSize",9),dt=K(ei,"truncateTextSize",9),Ut=K(ei,"mainMenuBar",9),io=K(ei,"navigationBar",9),Zi=K(ei,"statusBar",9),nn=K(ei,"askToFormat",9),ai=K(ei,"escapeControlCharacters",9),Xi=K(ei,"escapeUnicodeCharacters",9),Na=K(ei,"flattenColumns",9),Vt=K(ei,"parser",9),It=K(ei,"validator",9),$i=K(ei,"validationParser",9),cn=K(ei,"pathParser",9),Io=K(ei,"onRenderValue",9),Rn=K(ei,"onClassName",9),Tt=K(ei,"onRenderMenu",9),fa=K(ei,"onRenderContextMenu",9),oa=K(ei,"onSortModal",9),y=K(ei,"onTransformModal",9),b=K(ei,"onClose",9),R=cA(void 0,!0),W=cA(void 0,!0),_={mode:rA(be()),content:be(),selection:void 0,relativePath:EA()},q=cA([_],!0),tA=cA(void 0,!0);function rA(fA){return W4(fA)&&sa(fA.json)?xa.table:xa.tree}function DA(){var fA,ZA=(fA=Ji(c(q)))===null||fA===void 0?void 0:fA.selection;Ap(ZA)&&c(R).scrollTo(Qt(ZA))}function ae(){if(ee("handleApply"),!Ce())try{N(tA,void 0);var fA=c(qn).relativePath,ZA=c(qn).content,Ye=[{op:"replace",path:xt(fA),value:xj(ZA,Vt()).json}];if(c(q).length>1){var Me=xj(c(q)[c(q).length-2].content,Vt()).json,Re={json:ol(Me,Ye)},ct=Fe(Fe({},c(q)[c(q).length-2]||_),{},{content:Re});N(q,[...c(q).slice(0,c(q).length-2),ct]),jo(),DA()}else LA()(Ye),b()()}catch(ti){N(tA,String(ti))}}function ge(){if(ee("handleClose"),c(W))N(W,!1);else if(c(q).length>1){var fA;N(q,an(c(q))),jo(),(fA=c(R))===null||fA===void 0||fA.focus(),DA(),N(tA,void 0)}else b()()}function pe(fA){ee("handleChange",fA),Je(ZA=>Fe(Fe({},ZA),{},{content:fA}))}function Ve(fA){ee("handleChangeSelection",fA),Je(ZA=>Fe(Fe({},ZA),{},{selection:fA}))}function Ue(fA){ee("handleChangeMode",fA),Je(ZA=>Fe(Fe({},ZA),{},{mode:fA}))}function Je(fA){var ZA=fA(Ji(c(q)));N(q,[...an(c(q)),ZA])}function Ei(fA){N(tA,fA.toString()),console.error(fA)}function no(fA){var ZA,{content:Ye,path:Me}=fA;ee("handleJSONEditorModal",{content:Ye,path:Me});var Re={mode:rA(Ye),content:Ye,selection:void 0,relativePath:Me};N(q,[...c(q),Re]),jo(),(ZA=c(R))===null||ZA===void 0||ZA.focus()}function AA(fA){fA.focus()}os(()=>{var fA;(fA=c(R))===null||fA===void 0||fA.focus()}),KA(()=>c(q),()=>{N(qn,Ji(c(q))||_)}),KA(()=>c(q),()=>{N(_o,c(q).flatMap(fA=>fA.relativePath))}),KA(()=>(c(_o),El),()=>{N(qo,An(c(_o))?"(document root)":El(c(_o)))}),KA(()=>Y(Vt()),()=>{N(SA,YB(Vt().parse))}),Vn(),di(!0),np(Wi,{onClose:ge,className:"jse-jsoneditor-modal",get fullscreen(){return c(W)},children:(fA,ZA)=>{var Ye=KQA();N_(gA(Ye),{children:(Me,Re)=>{var ct=GQA(),ti=at(ct),ji=lt(()=>(c(q),uA(()=>c(q).length>1?" (".concat(c(q).length,")"):"")));o5(ti,{get title(){var si;return"Edit nested content ".concat((si=c(ji))!==null&&si!==void 0?si:"")},fullScreenButton:!0,onClose:ge,get fullscreen(){return c(W)},set fullscreen(si){N(W,si)},$$legacy:!0});var Wn=kA(ti,2),Cn=kA(gA(Wn),2),xo=kA(Cn,4);ta(fV(gA(xo),{get externalMode(){return c(qn),uA(()=>c(qn).mode)},get content(){return c(qn),uA(()=>c(qn).content)},get selection(){return c(qn),uA(()=>c(qn).selection)},get readOnly(){return Ce()},get indentation(){return Te()},get tabSize(){return gt()},get truncateTextSize(){return dt()},get statusBar(){return Zi()},get askToFormat(){return nn()},get mainMenuBar(){return Ut()},get navigationBar(){return io()},get escapeControlCharacters(){return ai()},get escapeUnicodeCharacters(){return Xi()},get flattenColumns(){return Na()},get parser(){return Vt()},get parseMemoizeOne(){return c(SA)},get validator(){return It()},get validationParser(){return $i()},get pathParser(){return cn()},insideModal:!0,onError:Ei,onChange:pe,onChangeMode:Ue,onSelect:Ve,get onRenderValue(){return Io()},get onClassName(){return Rn()},get onFocus(){return ug},get onBlur(){return ug},get onRenderMenu(){return Tt()},get onRenderContextMenu(){return fa()},get onSortModal(){return oa()},get onTransformModal(){return y()},onJSONEditorModal:no,$$legacy:!0}),si=>N(R,si),()=>c(R));var ri=gA(kA(xo,2)),Ca=si=>{var _t=RQA(),fi=gA(_t);Le(()=>Ht(fi,c(tA))),sA(si,_t)};zA(ri,si=>{c(tA)&&si(Ca)});var Bo=kA(ri,2),da=si=>{var _t=NQA();Bn(gA(_t),{get data(){return eJ}}),De("click",_t,ge),sA(si,_t)};zA(Bo,si=>{c(q),uA(()=>c(q).length>1)&&si(da)});var Nn=kA(Bo,2),qt=si=>{var _t=FQA();Tr(()=>De("click",_t,ae)),Ms(_t,fi=>AA?.(fi)),sA(si,_t)},un=si=>{var _t=LQA();De("click",_t,ge),sA(si,_t)};zA(Nn,si=>{Ce()?si(un,!1):si(qt)}),Le(()=>tI(Cn,c(qo))),sA(Me,ct)},$$slots:{default:!0}}),sA(fA,Ye)},$$slots:{default:!0}}),Yt()})(to,t1(()=>c(UA),{onClose:()=>{var Wi;(Wi=c(UA))===null||Wi===void 0||Wi.onClose(),N(UA,void 0)}}))};zA(To,to=>{c(UA)&&to(ja)}),Le(()=>wn=Ci(na,1,"jse-main svelte-1l55585",null,wn,{"jse-focus":c(iA)})),De("keydown",na,pa),sA(de,xn)},$$slots:{default:!0}}),Ai(e,"get",OA),Ai(e,"set",wt),Ai(e,"update",rt),Ai(e,"patch",je),Ai(e,"select",ze),Ai(e,"expand",pi),Ai(e,"collapse",mn),Ai(e,"transform",Sn),Ai(e,"validate",He),Ai(e,"acceptAutoRepair",En),Ai(e,"scrollTo",Gi),Ai(e,"findElement",gn),Ai(e,"focus",Rt),Ai(e,"refresh",Qn),Ai(e,"updateProps",J),Ai(e,"destroy",ut),Yt(Uo)}function FW(i){var{target:e,props:A}=i,t=xdA(HQA,{target:e,props:A});return t.destroy=Xt(function*(){return(function(n,o){var a=S_.get(n);return a?(S_.delete(n),a(o)):Promise.resolve()})(t)}),jo(),t}var Dc=class i{constructor(e){this.el=e}jsonString;editor=null;ngAfterViewInit(){let e={text:this.jsonString};setTimeout(()=>{this.editor=FW({target:document.getElementById("json-editor"),props:{content:e,mode:xa.text,mainMenuBar:!1,statusBar:!1}})})}getJsonString(){return this.editor?.get().text}static \u0275fac=function(A){return new(A||i)(st(ce))};static \u0275cmp=vA({type:i,selectors:[["app-json-editor"]],inputs:{jsonString:"jsonString"},decls:1,vars:0,consts:[["id","json-editor",1,"json-editor-container","jse-theme-dark"]],template:function(A,t){A&1&&$n(0,"div",0)},styles:[".jse-theme-dark[_ngcontent-%COMP%]{--jse-theme: dark;--jse-theme-color: #2f6dd0;--jse-theme-color-highlight: #467cd2;--jse-background-color: #1e1e1e;--jse-text-color: #d4d4d4;--jse-text-color-inverse: #4d4d4d;--jse-main-border: 1px solid #4f4f4f;--jse-menu-color: #fff;--jse-modal-background: #2f2f2f;--jse-modal-overlay-background: rgba(0, 0, 0, .5);--jse-modal-code-background: #2f2f2f;--jse-tooltip-color: var(--jse-text-color);--jse-tooltip-background: #4b4b4b;--jse-tooltip-border: 1px solid #737373;--jse-tooltip-action-button-color: inherit;--jse-tooltip-action-button-background: #737373;--jse-panel-background: #333333;--jse-panel-background-border: 1px solid #464646;--jse-panel-color: var(--jse-text-color);--jse-panel-color-readonly: #737373;--jse-panel-border: 1px solid #3c3c3c;--jse-panel-button-color-highlight: #e5e5e5;--jse-panel-button-background-highlight: #464646;--jse-navigation-bar-background: #656565;--jse-navigation-bar-background-highlight: #7e7e7e;--jse-navigation-bar-dropdown-color: var(--jse-text-color);--jse-context-menu-background: #4b4b4b;--jse-context-menu-background-highlight: #595959;--jse-context-menu-separator-color: #595959;--jse-context-menu-color: var(--jse-text-color);--jse-context-menu-pointer-background: #737373;--jse-context-menu-pointer-background-highlight: #818181;--jse-context-menu-pointer-color: var(--jse-context-menu-color);--jse-key-color: #9cdcfe;--jse-value-color: var(--jse-text-color);--jse-value-color-number: #b5cea8;--jse-value-color-boolean: #569cd6;--jse-value-color-null: #569cd6;--jse-value-color-string: #ce9178;--jse-value-color-url: #ce9178;--jse-delimiter-color: #949494;--jse-edit-outline: 2px solid var(--jse-text-color);--jse-selection-background-color: #464646;--jse-selection-background-inactive-color: #333333;--jse-hover-background-color: #343434;--jse-active-line-background-color: rgba(255, 255, 255, .06);--jse-search-match-background-color: #343434;--jse-collapsed-items-background-color: #333333;--jse-collapsed-items-selected-background-color: #565656;--jse-collapsed-items-link-color: #b2b2b2;--jse-collapsed-items-link-color-highlight: #ec8477;--jse-search-match-color: #724c27;--jse-search-match-outline: 1px solid #966535;--jse-search-match-active-color: #9f6c39;--jse-search-match-active-outline: 1px solid #bb7f43;--jse-tag-background: #444444;--jse-tag-color: #bdbdbd;--jse-table-header-background: #333333;--jse-table-header-background-highlight: #424242;--jse-table-row-odd-background: rgba(255, 255, 255, .1);--jse-input-background: #3d3d3d;--jse-input-border: var(--jse-main-border);--jse-button-background: #808080;--jse-button-background-highlight: #7a7a7a;--jse-button-color: #e0e0e0;--jse-button-secondary-background: #494949;--jse-button-secondary-background-highlight: #5d5d5d;--jse-button-secondary-background-disabled: #9d9d9d;--jse-button-secondary-color: var(--jse-text-color);--jse-a-color: #55abff;--jse-a-color-highlight: #4387c9;--jse-svelte-select-background: #3d3d3d;--jse-svelte-select-border: 1px solid #4f4f4f;--list-background: #3d3d3d;--item-hover-bg: #505050;--multi-item-bg: #5b5b5b;--input-color: #d4d4d4;--multi-clear-bg: #8a8a8a;--multi-item-clear-icon-color: #d4d4d4;--multi-item-outline: 1px solid #696969;--list-shadow: 0 2px 8px 0 rgba(0, 0, 0, .4);--jse-color-picker-background: #656565;--jse-color-picker-border-box-shadow: #8c8c8c 0 0 0 1px}.json-editor-container[_ngcontent-%COMP%]{height:100%} .jse-message.jse-error{display:none} .cm-gutters.cm-gutters-before{display:none} .jse-text-mode{border-radius:10px} .jse-contents{border-radius:10px;border-bottom:1px solid #4f4f4f}"]})};var zQA=(i,e)=>e.name;function PQA(i,e){if(i&1&&D(0),i&2){let A=p();Ee(" Configure ",A.selectedBuiltInTool," ")}}function jQA(i,e){if(i&1&&D(0),i&2){let A=p();Ee(" ",A.isEditMode?"Edit Built-in Tool":"Add Built-in Tool"," ")}}function VQA(i,e){if(i&1){let A=aA();I(0,"div",8),U("click",function(){let n=L(A).$implicit,o=p(3);return G(o.onToolSelected(n))}),I(1,"mat-icon",9),D(2),h(),I(3,"span",10),D(4),h()()}if(i&2){let A=e.$implicit,t=p(3);_A("selected",t.selectedBuiltInTool===A),Q(2),nA(t.getToolIcon(A)),Q(2),nA(A)}}function qQA(i,e){if(i&1&&(I(0,"div",4)(1,"h3",5),D(2),h(),I(3,"div",6),ke(4,VQA,5,4,"div",7,ni),h()()),i&2){let A=e.$implicit;Q(2),nA(A.name),Q(2),_e(A.tools)}}function WQA(i,e){if(i&1&&(I(0,"div",1),ke(1,qQA,6,1,"div",4,zQA),h()),i&2){let A=p();Q(),_e(A.toolCategories)}}function ZQA(i,e){if(i&1&&(I(0,"div",2)(1,"h3",11),D(2,"Configure Tool Arguments"),h(),lA(3,"app-json-editor",12),h()),i&2){let A=p();Q(3),H("jsonString",A.toolArgsString)}}function XQA(i,e){if(i&1){let A=aA();I(0,"button",14),U("click",function(){L(A);let n=p(2);return G(n.backToToolSelection())}),D(1,"Back"),h()}}function $QA(i,e){if(i&1){let A=aA();T(0,XQA,2,0,"button",13),I(1,"button",14),U("click",function(){L(A);let n=p();return G(n.saveArgs())}),D(2),h()}if(i&2){let A=p();O(A.isEditMode?-1:0),Q(2),nA(A.isEditMode?"Save":"Create")}}function AuA(i,e){if(i&1){let A=aA();I(0,"button",14),U("click",function(){L(A);let n=p();return G(n.cancel())}),D(1,"Cancel"),h(),I(2,"button",15),U("click",function(){L(A);let n=p();return G(n.addTool())}),D(3),h()}if(i&2){let A=p();Q(3),Ee(" ",A.isEditMode?"Save":"Create"," ")}}var sI=class i{constructor(e,A){this.data=e;this.dialogRef=A}jsonEditorComponent;selectedBuiltInTool="google_search";toolCategories=[{name:"Search Tools",tools:["google_search","EnterpriseWebSearchTool","VertexAiSearchTool"]},{name:"Context Tools",tools:["FilesRetrieval","load_memory","preload_memory","url_context","VertexAiRagRetrieval"]},{name:"Agent Function Tools",tools:["exit_loop","get_user_choice","load_artifacts","LongRunningFunctionTool"]}];builtInToolArgs=new Map([["EnterpriseWebSearchTool",[]],["exit_loop",[]],["FilesRetrieval",["name","description","input_dir"]],["get_user_choice",[]],["google_search",[]],["load_artifacts",[]],["load_memory",[]],["LongRunningFunctionTool",["func"]],["preload_memory",[]],["url_context",[]],["VertexAiRagRetrieval",["name","description","rag_corpora","rag_resources","similarity_top_k","vector_distance_threshold"]],["VertexAiSearchTool",["data_store_id","data_store_specs","search_engine_id","filter","max_results"]]]);isEditMode=!1;showArgsEditor=!1;toolArgs={};toolArgsString="";ngOnInit(){if(this.isEditMode=this.data.isEditMode||!1,this.isEditMode&&this.data.toolName){this.selectedBuiltInTool=this.data.toolName;let e=this.builtInToolArgs.get(this.data.toolName);if(e&&e.length>0){if(this.data.toolArgs)this.toolArgs=P({},this.data.toolArgs),delete this.toolArgs.skip_summarization;else{this.toolArgs={};for(let A of e)this.toolArgs[A]=""}this.toolArgsString=JSON.stringify(this.toolArgs,null,2),this.showArgsEditor=!0}}}onToolSelected(e){this.selectedBuiltInTool=e;let A=this.builtInToolArgs.get(e);A&&A.length>0&&(this.initializeToolArgs(e,A),this.showArgsEditor=!0)}initializeToolArgs(e,A){this.toolArgs={};for(let t of A)this.toolArgs[t]="";this.toolArgsString=JSON.stringify(this.toolArgs,null,2)}backToToolSelection(){this.showArgsEditor=!1,this.toolArgs={},this.toolArgsString=""}saveArgs(){if(this.jsonEditorComponent)try{this.toolArgsString=this.jsonEditorComponent.getJsonString(),this.toolArgs=JSON.parse(this.toolArgsString)}catch(e){alert("Invalid JSON: "+e);return}this.addTool()}addTool(){let e={toolType:"Built-in tool",name:this.selectedBuiltInTool,isEditMode:this.isEditMode};Object.keys(this.toolArgs).length>0&&(e.args=this.toolArgs),this.dialogRef.close(e)}cancel(){this.dialogRef.close()}getToolIcon(e){return UB(e,"Built-in tool")}static \u0275fac=function(A){return new(A||i)(st(Do),st(zn))};static \u0275cmp=vA({type:i,selectors:[["app-built-in-tool-dialog"]],viewQuery:function(A,t){if(A&1&&Wt(Dc,5),A&2){let n;se(n=le())&&(t.jsonEditorComponent=n.first)}},decls:9,vars:3,consts:[["mat-dialog-title","",1,"dialog-title"],[1,"tool-categories-container"],[1,"args-editor-container"],["align","end"],[1,"tool-category"],[1,"category-title"],[1,"tool-list"],[1,"tool-item",3,"selected"],[1,"tool-item",3,"click"],[1,"tool-icon"],[1,"tool-name"],[1,"args-editor-title"],[3,"jsonString"],["mat-button",""],["mat-button","",3,"click"],["mat-button","","cdkFocusInitial","",3,"click"]],template:function(A,t){A&1&&(I(0,"h2",0),T(1,PQA,1,1)(2,jQA,1,1),h(),I(3,"mat-dialog-content"),T(4,WQA,3,0,"div",1)(5,ZQA,4,1,"div",2),h(),I(6,"mat-dialog-actions",3),T(7,$QA,3,2)(8,AuA,4,1),h()),A&2&&(Q(),O(t.showArgsEditor?1:2),Q(3),O(t.showArgsEditor?5:4),Q(3),O(t.showArgsEditor?7:8))},dependencies:[li,fn,Xo,Ba,zt,ha,ki,Dc],styles:[".dialog-title[_ngcontent-%COMP%]{color:var(--mdc-dialog-subhead-color)!important;font-family:Google Sans;font-size:24px}.tool-categories-container[_ngcontent-%COMP%]{padding:16px 0}.tool-category[_ngcontent-%COMP%]{margin-bottom:24px}.tool-category[_ngcontent-%COMP%]:last-child{margin-bottom:0}.category-title[_ngcontent-%COMP%]{font-family:Google Sans;font-size:16px;font-weight:500;color:var(--mdc-dialog-supporting-text-color);margin:0 0 12px;padding-left:8px}.tool-list[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tool-item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:12px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease;border:1px solid var(--builder-tool-item-border-color);min-width:0}.tool-item.selected[_ngcontent-%COMP%]{border:1px solid #8ab4f8}.tool-item[_ngcontent-%COMP%] .tool-icon[_ngcontent-%COMP%]{color:#8ab4f8;margin-right:12px;font-size:20px;width:20px;height:20px;flex-shrink:0}.tool-item[_ngcontent-%COMP%] .tool-name[_ngcontent-%COMP%]{font-family:Google Sans;font-size:14px;color:var(--mdc-dialog-supporting-text-color)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.args-editor-container[_ngcontent-%COMP%]{padding:16px 0}.args-editor-title[_ngcontent-%COMP%]{font-family:Google Sans;font-size:16px;font-weight:500;color:var(--mdc-dialog-supporting-text-color);margin:0 0 16px}"]})};function euA(i,e){if(i&1){let A=aA();vl(0),I(1,"div",6)(2,"div",7),U("click",function(){L(A);let n=p();return G(n.toggleToolInfo())}),I(3,"mat-icon",8),D(4,"info"),h(),I(5,"div",9)(6,"span"),D(7,"Tool Information"),h()(),I(8,"button",10)(9,"mat-icon"),D(10),h()()(),I(11,"div",11)(12,"div",12)(13,"div",13),D(14),h(),I(15,"div",14),D(16),h()(),I(17,"div",15)(18,"a",16)(19,"mat-icon"),D(20,"open_in_new"),h(),I(21,"span"),D(22,"View Official Documentation"),h()()()()(),bl()}if(i&2){let A,t,n,o=p();Q(10),nA(o.isToolInfoExpanded?"expand_less":"expand_more"),Q(),_A("expanded",o.isToolInfoExpanded),Q(3),nA((A=o.getToolInfo())==null?null:A.shortDescription),Q(2),nA((t=o.getToolInfo())==null?null:t.detailedDescription),Q(2),H("href",(n=o.getToolInfo())==null?null:n.docLink,mo)}}function tuA(i,e){i&1&&(I(0,"mat-hint",19),D(1," Start with a letter or underscore, and contain only letters, digits, and underscores. "),h())}function iuA(i,e){if(i&1){let A=aA();I(0,"mat-form-field",2)(1,"mat-label"),D(2),h(),I(3,"input",17),Ni("ngModelChange",function(n){L(A);let o=p();return wi(o.inputValue,n)||(o.inputValue=n),G(n)}),U("keydown",function(n){L(A);let o=p();return G(o.onKeyDown(n))}),h(),kt(4,tuA,2,0,"mat-hint",18),h()}if(i&2){let A=p();Q(2),nA(A.data.inputLabel||"Input"),Q(),Ri("ngModel",A.inputValue),H("placeholder",A.data.inputPlaceholder||"Enter value"),Q(),H("ngIf",!A.isInputValid())}}var vc=class i{constructor(e,A){this.dialogRef=e;this.data=A;this.inputValue=A.inputValue||""}inputValue="";isToolInfoExpanded=!1;isInputValid(){let e=this.inputValue.trim();return!(!e||!/^[a-zA-Z_]/.test(e)||!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(e))}onCancel(){this.dialogRef.close()}onConfirm(){if(this.data.showInput){let e=this.inputValue.trim();if(!this.isInputValid())return;this.dialogRef.close(e)}else this.dialogRef.close("confirm")}onKeyDown(e){e.key==="Enter"&&this.data.showInput&&this.onConfirm()}getToolInfo(){if(this.data.toolType)return nc.getToolDetailedInfo(this.data.toolType)}toggleToolInfo(){this.isToolInfoExpanded=!this.isToolInfoExpanded}static \u0275fac=function(A){return new(A||i)(st(zn),st(Do))};static \u0275cmp=vA({type:i,selectors:[["app-confirmation-dialog"]],decls:12,vars:6,consts:[["mat-dialog-title",""],[4,"ngIf"],[2,"width","100%","margin-top","16px"],["align","end"],["mat-button","",3,"click"],["mat-button","","color","primary","cdkFocusInitial","",3,"click","disabled"],[1,"tool-info-container"],[1,"tool-info-header",3,"click"],[1,"tool-info-icon"],[1,"tool-info-title"],["mat-icon-button","","type","button","aria-label","Toggle tool information",1,"tool-info-toggle"],[1,"tool-info-body"],[1,"tool-info-content"],[1,"tool-info-short"],[1,"tool-info-detailed"],[1,"tool-info-link-container"],["target","_blank","rel","noopener noreferrer",1,"tool-info-link",3,"href"],["matInput","","cdkFocusInitial","",3,"ngModelChange","keydown","ngModel","placeholder"],["style","font-size: 11px; color: #666;",4,"ngIf"],[2,"font-size","11px","color","#666"]],template:function(A,t){A&1&&(I(0,"h2",0),D(1),h(),I(2,"mat-dialog-content"),kt(3,euA,23,6,"ng-container",1),I(4,"p"),D(5),h(),T(6,iuA,5,4,"mat-form-field",2),h(),I(7,"mat-dialog-actions",3)(8,"button",4),U("click",function(){return t.onCancel()}),D(9,"Cancel"),h(),I(10,"button",5),U("click",function(){return t.onConfirm()}),D(11),h()()),A&2&&(Q(),nA(t.data.title),Q(2),H("ngIf",t.data.showToolInfo&&t.getToolInfo()),Q(2),nA(t.data.message),Q(),O(t.data.showInput?6:-1),Q(4),H("disabled",t.data.showInput&&!t.isInputValid()),Q(),Ee(" ",t.data.confirmButtonText||"Confirm"," "))},dependencies:[li,ql,qi,ki,yi,zt,Xo,Ba,ha,Za,Zo,xs,J1,Ws,ka,fn,Gn,Kn,Ho],styles:["mat-dialog-content[_ngcontent-%COMP%]{padding:20px 24px;display:flex;flex-direction:column;gap:16px;color:var(--mdc-dialog-supporting-text-color)}mat-dialog-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)}.tool-info-container[_ngcontent-%COMP%]{border:1px solid rgba(138,180,248,.2);border-radius:8px;padding:16px;margin-bottom:16px}.tool-info-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.tool-info-header[_ngcontent-%COMP%]:hover .tool-info-title[_ngcontent-%COMP%]{color:#a7c8ff}.tool-info-icon[_ngcontent-%COMP%]{color:#8ab4f8;font-size:20px;width:20px;height:20px;flex-shrink:0}.tool-info-title[_ngcontent-%COMP%]{flex:1;font-weight:500;color:#8ab4f8;font-size:14px;transition:color .2s ease}.tool-info-toggle[_ngcontent-%COMP%]{color:#8ab4f8;margin:-8px}.tool-info-toggle[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{transition:transform .2s ease}.tool-info-body[_ngcontent-%COMP%]{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .2s ease,margin-top .3s ease}.tool-info-body.expanded[_ngcontent-%COMP%]{max-height:500px;opacity:1;margin-top:12px}.tool-info-content[_ngcontent-%COMP%]{flex:1}.tool-info-short[_ngcontent-%COMP%]{font-weight:500;color:var(--mdc-dialog-supporting-text-color)!important;margin-bottom:8px;line-height:1.4}.tool-info-detailed[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;font-size:14px;line-height:1.5}.tool-info-link-container[_ngcontent-%COMP%]{margin-top:12px}.tool-info-link[_ngcontent-%COMP%]{color:#8ab4f8;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease}.tool-info-link[_ngcontent-%COMP%]:hover{color:#a7c8ff}.tool-info-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}"]})};var KW=["*",[["mat-chip-avatar"],["","matChipAvatar",""]],[["mat-chip-trailing-icon"],["","matChipRemove",""],["","matChipTrailingIcon",""]]],UW=["*","mat-chip-avatar, [matChipAvatar]","mat-chip-trailing-icon,[matChipRemove],[matChipTrailingIcon]"];function nuA(i,e){i&1&&(I(0,"span",3),Ze(1,1),h())}function ouA(i,e){i&1&&(I(0,"span",6),Ze(1,2),h())}function auA(i,e){i&1&&(I(0,"span",3),Ze(1,1),I(2,"span",7),Et(),I(3,"svg",8),lA(4,"path",9),h()()())}function ruA(i,e){i&1&&(I(0,"span",6),Ze(1,2),h())}var suA=`.mdc-evolution-chip,.mdc-evolution-chip__cell,.mdc-evolution-chip__action{display:inline-flex;align-items:center}.mdc-evolution-chip{position:relative;max-width:100%}.mdc-evolution-chip__cell,.mdc-evolution-chip__action{height:100%}.mdc-evolution-chip__cell--primary{flex-basis:100%;overflow-x:hidden}.mdc-evolution-chip__cell--trailing{flex:1 0 auto}.mdc-evolution-chip__action{align-items:center;background:none;border:none;box-sizing:content-box;cursor:pointer;display:inline-flex;justify-content:center;outline:none;padding:0;text-decoration:none;color:inherit}.mdc-evolution-chip__action--presentational{cursor:auto}.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{pointer-events:none}@media(forced-colors: active){.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{forced-color-adjust:none}}.mdc-evolution-chip__action--primary{font:inherit;letter-spacing:inherit;white-space:inherit;overflow-x:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-outline-width, 1px);border-radius:var(--mat-chip-container-shape-radius, 8px);box-sizing:border-box;content:"";height:100%;left:0;position:absolute;pointer-events:none;top:0;width:100%;z-index:1;border-style:solid}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-outline-color, var(--mat-sys-outline))}.mdc-evolution-chip__action--primary:not(.mdc-evolution-chip__action--presentational):not(.mdc-ripple-upgraded):focus::before{border-color:var(--mat-chip-focus-outline-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-basic-chip .mdc-evolution-chip__action--primary{font:inherit}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip__action--secondary{position:relative;overflow:visible}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip__text-label{-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__text-label{font-family:var(--mat-chip-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-chip-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-chip-label-text-size, var(--mat-sys-label-large-size));font-weight:var(--mat-chip-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-chip-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-label-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label,.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label{color:var(--mat-chip-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-evolution-chip__graphic{align-items:center;display:inline-flex;justify-content:center;overflow:hidden;pointer-events:none;position:relative;flex:1 0 auto}.mat-mdc-standard-chip .mdc-evolution-chip__graphic{width:var(--mat-chip-with-avatar-avatar-size, 24px);height:var(--mat-chip-with-avatar-avatar-size, 24px);font-size:var(--mat-chip-with-avatar-avatar-size, 24px)}.mdc-evolution-chip--selecting .mdc-evolution-chip__graphic{transition:width 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selectable:not(.mdc-evolution-chip--selected):not(.mdc-evolution-chip--with-primary-icon) .mdc-evolution-chip__graphic{width:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__graphic{padding-left:0}.mdc-evolution-chip__checkmark{position:absolute;opacity:0;top:50%;left:50%;height:20px;width:20px}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark{transition:transform 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1);transform:translate(-75%, -50%)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{transform:translate(-50%, -50%);opacity:1}.mdc-evolution-chip__checkmark-svg{display:block}.mdc-evolution-chip__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385;stroke-dashoffset:29.7833385;stroke:currentColor}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark-path{transition:stroke-dashoffset 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark-path{stroke-dashoffset:0}@media(forced-colors: active){.mdc-evolution-chip__checkmark-path{stroke:CanvasText !important}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--trailing{height:18px;width:18px;font-size:18px}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove{opacity:calc(var(--mat-chip-trailing-action-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove:focus{opacity:calc(var(--mat-chip-trailing-action-focus-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mat-mdc-standard-chip{border-radius:var(--mat-chip-container-shape-radius, 8px);height:var(--mat-chip-container-height, 32px)}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-container-color, transparent)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{background-color:var(--mat-chip-elevated-disabled-container-color)}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled{background-color:var(--mat-chip-flat-disabled-selected-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}@media(forced-colors: active){.mat-mdc-standard-chip{outline:solid 1px}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--primary{border-radius:var(--mat-chip-with-avatar-avatar-shape-radius, 24px);width:var(--mat-chip-with-icon-icon-size, 18px);height:var(--mat-chip-with-icon-icon-size, 18px);font-size:var(--mat-chip-with-icon-icon-size, 18px)}.mdc-evolution-chip--selected .mdc-evolution-chip__icon--primary{opacity:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-highlighted{--mat-chip-with-icon-icon-color: var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container));--mat-chip-elevated-container-color: var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container));--mat-chip-label-text-color: var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container));--mat-chip-outline-width: var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-selected .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-hover-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-focus-overlay .mat-mdc-chip-selected:hover,.mat-mdc-chip-highlighted:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-hover-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected.cdk-focused .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-evolution-chip--disabled:not(.mdc-evolution-chip--selected) .mat-mdc-chip-avatar{opacity:var(--mat-chip-with-avatar-disabled-avatar-opacity, 0.38)}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{opacity:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38)}.mdc-evolution-chip--disabled.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{opacity:var(--mat-chip-with-icon-disabled-icon-opacity, 0.38)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{opacity:var(--mat-chip-disabled-container-opacity, 1)}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-trailing-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-edit,.mat-mdc-chip-remove{opacity:var(--mat-chip-trailing-action-opacity, 1)}.mat-mdc-chip-edit:focus,.mat-mdc-chip-remove:focus{opacity:var(--mat-chip-trailing-action-focus-opacity, 1)}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{background-color:var(--mat-chip-trailing-action-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-edit:hover::after,.mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-chip-edit:focus::after,.mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip-selected .mat-mdc-chip-remove::after,.mat-mdc-chip-highlighted .mat-mdc-chip-remove::after{background-color:var(--mat-chip-selected-trailing-action-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:focus::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:hover::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-standard-chip{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-standard-chip .mat-mdc-chip-graphic,.mat-mdc-standard-chip .mat-mdc-chip-trailing-icon{box-sizing:content-box}.mat-mdc-standard-chip._mat-animation-noopable,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__graphic,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark-path{transition-duration:1ms;animation-duration:1ms}.mat-mdc-chip-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity 150ms linear}._mat-animation-noopable .mat-mdc-chip-focus-overlay{transition:none}.mat-mdc-basic-chip .mat-mdc-chip-focus-overlay{display:none}.mat-mdc-chip .mat-ripple.mat-mdc-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-chip-avatar{text-align:center;line-height:1;color:var(--mat-chip-with-icon-icon-color, currentColor)}.mat-mdc-chip{position:relative;z-index:0}.mat-mdc-chip-action-label{text-align:left;z-index:1}[dir=rtl] .mat-mdc-chip-action-label{text-align:right}.mat-mdc-chip.mdc-evolution-chip--with-trailing-action .mat-mdc-chip-action-label{position:relative}.mat-mdc-chip-action-label .mat-mdc-chip-primary-focus-indicator{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mat-mdc-chip-action-label .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-chip-edit::before,.mat-mdc-chip-remove::before{margin:calc(var(--mat-focus-indicator-border-width, 3px)*-1);left:8px;right:8px}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{content:"";display:block;opacity:0;position:absolute;top:-3px;bottom:-3px;left:5px;right:5px;border-radius:50%;box-sizing:border-box;padding:12px;margin:-12px;background-clip:content-box}.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{width:18px;height:18px;font-size:18px;box-sizing:content-box}.mat-chip-edit-input{cursor:text;display:inline-block;color:inherit;outline:0}@media(forced-colors: active){.mat-mdc-chip-selected:not(.mat-mdc-chip-multiple){outline-width:3px}}.mat-mdc-chip-action:focus-visible .mat-focus-indicator::before{content:""}.mdc-evolution-chip__icon,.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{min-height:fit-content}img.mdc-evolution-chip__icon{min-height:0} -`;var TW=["*"],luA=`.mat-mdc-chip-set{display:flex}.mat-mdc-chip-set:focus{outline:none}.mat-mdc-chip-set .mdc-evolution-chip-set__chips{min-width:100%;margin-left:-8px;margin-right:0}.mat-mdc-chip-set .mdc-evolution-chip{margin:4px 0 4px 8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip-set__chips{margin-left:0;margin-right:-8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip{margin-left:0;margin-right:8px}.mdc-evolution-chip-set__chips{display:flex;flex-flow:wrap;min-width:0}.mat-mdc-chip-set-stacked{flex-direction:column;align-items:flex-start}.mat-mdc-chip-set-stacked .mat-mdc-chip{width:100%}.mat-mdc-chip-set-stacked .mdc-evolution-chip__graphic{flex-grow:0}.mat-mdc-chip-set-stacked .mdc-evolution-chip__action--primary{flex-basis:100%;justify-content:start}input.mat-mdc-chip-input{flex:1 0 150px;margin-left:8px}[dir=rtl] input.mat-mdc-chip-input{margin-left:0;margin-right:8px}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-moz-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-webkit-input-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input:-ms-input-placeholder{opacity:1}.mat-mdc-chip-set+input.mat-mdc-chip-input{margin-left:0;margin-right:0} -`,Rx=new MA("mat-chips-default-options",{providedIn:"root",factory:()=>({separatorKeyCodes:[13]})}),kx=new MA("MatChipAvatar"),LW=new MA("MatChipTrailingIcon"),GW=new MA("MatChipEdit"),_x=new MA("MatChipRemove"),Nx=new MA("MatChip"),OW=(()=>{class i{_elementRef=w(ce);_parentChip=w(Nx);_isPrimary=!0;_isLeading=!1;get disabled(){return this._disabled||this._parentChip?.disabled||!1}set disabled(A){this._disabled=A}_disabled=!1;tabIndex=-1;_allowFocusWhenDisabled=!1;_getDisabledAttribute(){return this.disabled&&!this._allowFocusWhenDisabled?"":null}constructor(){w(Eo).load(Qr),this._elementRef.nativeElement.nodeName==="BUTTON"&&this._elementRef.nativeElement.setAttribute("type","button")}focus(){this._elementRef.nativeElement.focus()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matChipContent",""]],hostAttrs:[1,"mat-mdc-chip-action","mdc-evolution-chip__action","mdc-evolution-chip__action--presentational"],hostVars:8,hostBindings:function(t,n){t&2&&(ie("disabled",n._getDisabledAttribute())("aria-disabled",n.disabled),_A("mdc-evolution-chip__action--primary",n._isPrimary)("mdc-evolution-chip__action--secondary",!n._isPrimary)("mdc-evolution-chip__action--trailing",!n._isPrimary&&!n._isLeading))},inputs:{disabled:[2,"disabled","disabled",Qe],tabIndex:[2,"tabIndex","tabIndex",A=>A==null?-1:yn(A)],_allowFocusWhenDisabled:"_allowFocusWhenDisabled"}})}return i})(),Fx=(()=>{class i extends OW{_getTabindex(){return this.disabled&&!this._allowFocusWhenDisabled?null:this.tabIndex.toString()}_handleClick(A){!this.disabled&&this._isPrimary&&(A.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}_handleKeydown(A){(A.keyCode===13||A.keyCode===32)&&!this.disabled&&this._isPrimary&&!this._parentChip._isEditing&&(A.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","matChipAction",""]],hostVars:3,hostBindings:function(t,n){t&1&&U("click",function(a){return n._handleClick(a)})("keydown",function(a){return n._handleKeydown(a)}),t&2&&(ie("tabindex",n._getTabindex()),_A("mdc-evolution-chip__action--presentational",!1))},features:[bt]})}return i})(),JW=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["mat-chip-avatar"],["","matChipAvatar",""]],hostAttrs:["role","img",1,"mat-mdc-chip-avatar","mdc-evolution-chip__icon","mdc-evolution-chip__icon--primary"],features:[pt([{provide:kx,useExisting:i}])]})}return i})();var YW=(()=>{class i extends Fx{_isPrimary=!1;_handleClick(A){this.disabled||(A.stopPropagation(),A.preventDefault(),this._parentChip.remove())}_handleKeydown(A){(A.keyCode===13||A.keyCode===32)&&!this.disabled&&(A.stopPropagation(),A.preventDefault(),this._parentChip.remove())}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","matChipRemove",""]],hostAttrs:["role","button",1,"mat-mdc-chip-remove","mat-mdc-chip-trailing-icon","mat-focus-indicator","mdc-evolution-chip__icon","mdc-evolution-chip__icon--trailing"],hostVars:1,hostBindings:function(t,n){t&2&&ie("aria-hidden",null)},features:[pt([{provide:_x,useExisting:i}]),bt]})}return i})(),Qp=(()=>{class i{_changeDetectorRef=w(Mt);_elementRef=w(ce);_tagName=w(LN);_ngZone=w(We);_focusMonitor=w(rr);_globalRippleOptions=w($C,{optional:!0});_document=w(ci);_onFocus=new ne;_onBlur=new ne;_isBasicChip=!1;role=null;_hasFocusInternal=!1;_pendingFocus=!1;_actionChanges;_animationsDisabled=In();_allLeadingIcons;_allTrailingIcons;_allEditIcons;_allRemoveIcons;_hasFocus(){return this._hasFocusInternal}id=w(Dn).getId("mat-mdc-chip-");ariaLabel=null;ariaDescription=null;_chipListDisabled=!1;_hadFocusOnRemove=!1;_textElement;get value(){return this._value!==void 0?this._value:this._textElement.textContent.trim()}set value(A){this._value=A}_value;color;removable=!0;highlighted=!1;disableRipple=!1;get disabled(){return this._disabled||this._chipListDisabled}set disabled(A){this._disabled=A}_disabled=!1;removed=new FA;destroyed=new FA;basicChipAttrName="mat-basic-chip";leadingIcon;editIcon;trailingIcon;removeIcon;primaryAction;_rippleLoader=w(Y3);_injector=w(St);constructor(){let A=w(Eo);A.load(Qr),A.load(ZC),this._monitorFocus(),this._rippleLoader?.configureRipple(this._elementRef.nativeElement,{className:"mat-mdc-chip-ripple",disabled:this._isRippleDisabled()})}ngOnInit(){this._isBasicChip=this._elementRef.nativeElement.hasAttribute(this.basicChipAttrName)||this._tagName.toLowerCase()===this.basicChipAttrName}ngAfterViewInit(){this._textElement=this._elementRef.nativeElement.querySelector(".mat-mdc-chip-action-label"),this._pendingFocus&&(this._pendingFocus=!1,this.focus())}ngAfterContentInit(){this._actionChanges=Vi(this._allLeadingIcons.changes,this._allTrailingIcons.changes,this._allEditIcons.changes,this._allRemoveIcons.changes).subscribe(()=>this._changeDetectorRef.markForCheck())}ngDoCheck(){this._rippleLoader.setDisabled(this._elementRef.nativeElement,this._isRippleDisabled())}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement),this._actionChanges?.unsubscribe(),this.destroyed.emit({chip:this}),this.destroyed.complete()}remove(){this.removable&&(this._hadFocusOnRemove=this._hasFocus(),this.removed.emit({chip:this}))}_isRippleDisabled(){return this.disabled||this.disableRipple||this._animationsDisabled||this._isBasicChip||!this._hasInteractiveActions()||!!this._globalRippleOptions?.disabled}_hasTrailingIcon(){return!!(this.trailingIcon||this.removeIcon)}_handleKeydown(A){(A.keyCode===8&&!A.repeat||A.keyCode===46)&&(A.preventDefault(),this.remove())}focus(){this.disabled||(this.primaryAction?this.primaryAction.focus():this._pendingFocus=!0)}_getSourceAction(A){return this._getActions().find(t=>{let n=t._elementRef.nativeElement;return n===A||n.contains(A)})}_getActions(){let A=[];return this.editIcon&&A.push(this.editIcon),this.primaryAction&&A.push(this.primaryAction),this.removeIcon&&A.push(this.removeIcon),A}_handlePrimaryActionInteraction(){}_hasInteractiveActions(){return this._getActions().length>0}_edit(A){}_monitorFocus(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(A=>{let t=A!==null;t!==this._hasFocusInternal&&(this._hasFocusInternal=t,t?this._onFocus.next({chip:this}):(this._changeDetectorRef.markForCheck(),setTimeout(()=>this._ngZone.run(()=>this._onBlur.next({chip:this})))))})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(t,n,o){if(t&1&&ra(o,kx,5)(o,GW,5)(o,LW,5)(o,_x,5)(o,kx,5)(o,LW,5)(o,GW,5)(o,_x,5),t&2){let a;se(a=le())&&(n.leadingIcon=a.first),se(a=le())&&(n.editIcon=a.first),se(a=le())&&(n.trailingIcon=a.first),se(a=le())&&(n.removeIcon=a.first),se(a=le())&&(n._allLeadingIcons=a),se(a=le())&&(n._allTrailingIcons=a),se(a=le())&&(n._allEditIcons=a),se(a=le())&&(n._allRemoveIcons=a)}},viewQuery:function(t,n){if(t&1&&Wt(Fx,5),t&2){let o;se(o=le())&&(n.primaryAction=o.first)}},hostAttrs:[1,"mat-mdc-chip"],hostVars:31,hostBindings:function(t,n){t&1&&U("keydown",function(a){return n._handleKeydown(a)}),t&2&&(Ma("id",n.id),ie("role",n.role)("aria-label",n.ariaLabel),Ao("mat-"+(n.color||"primary")),_A("mdc-evolution-chip",!n._isBasicChip)("mdc-evolution-chip--disabled",n.disabled)("mdc-evolution-chip--with-trailing-action",n._hasTrailingIcon())("mdc-evolution-chip--with-primary-graphic",n.leadingIcon)("mdc-evolution-chip--with-primary-icon",n.leadingIcon)("mdc-evolution-chip--with-avatar",n.leadingIcon)("mat-mdc-chip-with-avatar",n.leadingIcon)("mat-mdc-chip-highlighted",n.highlighted)("mat-mdc-chip-disabled",n.disabled)("mat-mdc-basic-chip",n._isBasicChip)("mat-mdc-standard-chip",!n._isBasicChip)("mat-mdc-chip-with-trailing-icon",n._hasTrailingIcon())("_mat-animation-noopable",n._animationsDisabled))},inputs:{role:"role",id:"id",ariaLabel:[0,"aria-label","ariaLabel"],ariaDescription:[0,"aria-description","ariaDescription"],value:"value",color:"color",removable:[2,"removable","removable",Qe],highlighted:[2,"highlighted","highlighted",Qe],disableRipple:[2,"disableRipple","disableRipple",Qe],disabled:[2,"disabled","disabled",Qe]},outputs:{removed:"removed",destroyed:"destroyed"},exportAs:["matChip"],features:[pt([{provide:Nx,useExisting:i}])],ngContentSelectors:UW,decls:8,vars:2,consts:[[1,"mat-mdc-chip-focus-overlay"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--primary"],["matChipContent",""],[1,"mdc-evolution-chip__graphic","mat-mdc-chip-graphic"],[1,"mdc-evolution-chip__text-label","mat-mdc-chip-action-label"],[1,"mat-mdc-chip-primary-focus-indicator","mat-focus-indicator"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--trailing"]],template:function(t,n){t&1&&(Ot(KW),lA(0,"span",0),I(1,"span",1)(2,"span",2),T(3,nuA,2,0,"span",3),I(4,"span",4),Ze(5),lA(6,"span",5),h()()(),T(7,ouA,2,0,"span",6)),t&2&&(Q(3),O(n.leadingIcon?3:-1),Q(4),O(n._hasTrailingIcon()?7:-1))},dependencies:[OW],styles:[`.mdc-evolution-chip,.mdc-evolution-chip__cell,.mdc-evolution-chip__action{display:inline-flex;align-items:center}.mdc-evolution-chip{position:relative;max-width:100%}.mdc-evolution-chip__cell,.mdc-evolution-chip__action{height:100%}.mdc-evolution-chip__cell--primary{flex-basis:100%;overflow-x:hidden}.mdc-evolution-chip__cell--trailing{flex:1 0 auto}.mdc-evolution-chip__action{align-items:center;background:none;border:none;box-sizing:content-box;cursor:pointer;display:inline-flex;justify-content:center;outline:none;padding:0;text-decoration:none;color:inherit}.mdc-evolution-chip__action--presentational{cursor:auto}.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{pointer-events:none}@media(forced-colors: active){.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{forced-color-adjust:none}}.mdc-evolution-chip__action--primary{font:inherit;letter-spacing:inherit;white-space:inherit;overflow-x:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-outline-width, 1px);border-radius:var(--mat-chip-container-shape-radius, 8px);box-sizing:border-box;content:"";height:100%;left:0;position:absolute;pointer-events:none;top:0;width:100%;z-index:1;border-style:solid}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-outline-color, var(--mat-sys-outline))}.mdc-evolution-chip__action--primary:not(.mdc-evolution-chip__action--presentational):not(.mdc-ripple-upgraded):focus::before{border-color:var(--mat-chip-focus-outline-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-basic-chip .mdc-evolution-chip__action--primary{font:inherit}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip__action--secondary{position:relative;overflow:visible}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip__text-label{-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__text-label{font-family:var(--mat-chip-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-chip-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-chip-label-text-size, var(--mat-sys-label-large-size));font-weight:var(--mat-chip-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-chip-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-label-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label,.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label{color:var(--mat-chip-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-evolution-chip__graphic{align-items:center;display:inline-flex;justify-content:center;overflow:hidden;pointer-events:none;position:relative;flex:1 0 auto}.mat-mdc-standard-chip .mdc-evolution-chip__graphic{width:var(--mat-chip-with-avatar-avatar-size, 24px);height:var(--mat-chip-with-avatar-avatar-size, 24px);font-size:var(--mat-chip-with-avatar-avatar-size, 24px)}.mdc-evolution-chip--selecting .mdc-evolution-chip__graphic{transition:width 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selectable:not(.mdc-evolution-chip--selected):not(.mdc-evolution-chip--with-primary-icon) .mdc-evolution-chip__graphic{width:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__graphic{padding-left:0}.mdc-evolution-chip__checkmark{position:absolute;opacity:0;top:50%;left:50%;height:20px;width:20px}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark{transition:transform 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1);transform:translate(-75%, -50%)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{transform:translate(-50%, -50%);opacity:1}.mdc-evolution-chip__checkmark-svg{display:block}.mdc-evolution-chip__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385;stroke-dashoffset:29.7833385;stroke:currentColor}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark-path{transition:stroke-dashoffset 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark-path{stroke-dashoffset:0}@media(forced-colors: active){.mdc-evolution-chip__checkmark-path{stroke:CanvasText !important}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--trailing{height:18px;width:18px;font-size:18px}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove{opacity:calc(var(--mat-chip-trailing-action-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove:focus{opacity:calc(var(--mat-chip-trailing-action-focus-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mat-mdc-standard-chip{border-radius:var(--mat-chip-container-shape-radius, 8px);height:var(--mat-chip-container-height, 32px)}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-container-color, transparent)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{background-color:var(--mat-chip-elevated-disabled-container-color)}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled{background-color:var(--mat-chip-flat-disabled-selected-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}@media(forced-colors: active){.mat-mdc-standard-chip{outline:solid 1px}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--primary{border-radius:var(--mat-chip-with-avatar-avatar-shape-radius, 24px);width:var(--mat-chip-with-icon-icon-size, 18px);height:var(--mat-chip-with-icon-icon-size, 18px);font-size:var(--mat-chip-with-icon-icon-size, 18px)}.mdc-evolution-chip--selected .mdc-evolution-chip__icon--primary{opacity:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-highlighted{--mat-chip-with-icon-icon-color: var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container));--mat-chip-elevated-container-color: var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container));--mat-chip-label-text-color: var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container));--mat-chip-outline-width: var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-selected .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-hover-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-focus-overlay .mat-mdc-chip-selected:hover,.mat-mdc-chip-highlighted:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-hover-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected.cdk-focused .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-evolution-chip--disabled:not(.mdc-evolution-chip--selected) .mat-mdc-chip-avatar{opacity:var(--mat-chip-with-avatar-disabled-avatar-opacity, 0.38)}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{opacity:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38)}.mdc-evolution-chip--disabled.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{opacity:var(--mat-chip-with-icon-disabled-icon-opacity, 0.38)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{opacity:var(--mat-chip-disabled-container-opacity, 1)}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-trailing-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-edit,.mat-mdc-chip-remove{opacity:var(--mat-chip-trailing-action-opacity, 1)}.mat-mdc-chip-edit:focus,.mat-mdc-chip-remove:focus{opacity:var(--mat-chip-trailing-action-focus-opacity, 1)}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{background-color:var(--mat-chip-trailing-action-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-edit:hover::after,.mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-chip-edit:focus::after,.mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip-selected .mat-mdc-chip-remove::after,.mat-mdc-chip-highlighted .mat-mdc-chip-remove::after{background-color:var(--mat-chip-selected-trailing-action-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:focus::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:hover::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-standard-chip{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-standard-chip .mat-mdc-chip-graphic,.mat-mdc-standard-chip .mat-mdc-chip-trailing-icon{box-sizing:content-box}.mat-mdc-standard-chip._mat-animation-noopable,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__graphic,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark-path{transition-duration:1ms;animation-duration:1ms}.mat-mdc-chip-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity 150ms linear}._mat-animation-noopable .mat-mdc-chip-focus-overlay{transition:none}.mat-mdc-basic-chip .mat-mdc-chip-focus-overlay{display:none}.mat-mdc-chip .mat-ripple.mat-mdc-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-chip-avatar{text-align:center;line-height:1;color:var(--mat-chip-with-icon-icon-color, currentColor)}.mat-mdc-chip{position:relative;z-index:0}.mat-mdc-chip-action-label{text-align:left;z-index:1}[dir=rtl] .mat-mdc-chip-action-label{text-align:right}.mat-mdc-chip.mdc-evolution-chip--with-trailing-action .mat-mdc-chip-action-label{position:relative}.mat-mdc-chip-action-label .mat-mdc-chip-primary-focus-indicator{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mat-mdc-chip-action-label .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-chip-edit::before,.mat-mdc-chip-remove::before{margin:calc(var(--mat-focus-indicator-border-width, 3px)*-1);left:8px;right:8px}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{content:"";display:block;opacity:0;position:absolute;top:-3px;bottom:-3px;left:5px;right:5px;border-radius:50%;box-sizing:border-box;padding:12px;margin:-12px;background-clip:content-box}.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{width:18px;height:18px;font-size:18px;box-sizing:content-box}.mat-chip-edit-input{cursor:text;display:inline-block;color:inherit;outline:0}@media(forced-colors: active){.mat-mdc-chip-selected:not(.mat-mdc-chip-multiple){outline-width:3px}}.mat-mdc-chip-action:focus-visible .mat-focus-indicator::before{content:""}.mdc-evolution-chip__icon,.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{min-height:fit-content}img.mdc-evolution-chip__icon{min-height:0} -`],encapsulation:2,changeDetection:0})}return i})();var Lx=(()=>{class i extends Qp{_defaultOptions=w(Rx,{optional:!0});chipListSelectable=!0;_chipListMultiple=!1;_chipListHideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get selectable(){return this._selectable&&this.chipListSelectable}set selectable(A){this._selectable=A,this._changeDetectorRef.markForCheck()}_selectable=!0;get selected(){return this._selected}set selected(A){this._setSelectedState(A,!1,!0)}_selected=!1;get ariaSelected(){return this.selectable?this.selected.toString():null}basicChipAttrName="mat-basic-chip-option";selectionChange=new FA;ngOnInit(){super.ngOnInit(),this.role="presentation"}select(){this._setSelectedState(!0,!1,!0)}deselect(){this._setSelectedState(!1,!1,!0)}selectViaInteraction(){this._setSelectedState(!0,!0,!0)}toggleSelected(A=!1){return this._setSelectedState(!this.selected,A,!0),this.selected}_handlePrimaryActionInteraction(){this.disabled||(this.focus(),this.selectable&&this.toggleSelected(!0))}_hasLeadingGraphic(){return this.leadingIcon?!0:!this._chipListHideSingleSelectionIndicator||this._chipListMultiple}_setSelectedState(A,t,n){A!==this.selected&&(this._selected=A,n&&this.selectionChange.emit({source:this,isUserInput:t,selected:this.selected}),this._changeDetectorRef.markForCheck())}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275cmp=vA({type:i,selectors:[["mat-basic-chip-option"],["","mat-basic-chip-option",""],["mat-chip-option"],["","mat-chip-option",""]],hostAttrs:[1,"mat-mdc-chip","mat-mdc-chip-option"],hostVars:37,hostBindings:function(t,n){t&2&&(Ma("id",n.id),ie("tabindex",null)("aria-label",null)("aria-description",null)("role",n.role),_A("mdc-evolution-chip",!n._isBasicChip)("mdc-evolution-chip--filter",!n._isBasicChip)("mdc-evolution-chip--selectable",!n._isBasicChip)("mat-mdc-chip-selected",n.selected)("mat-mdc-chip-multiple",n._chipListMultiple)("mat-mdc-chip-disabled",n.disabled)("mat-mdc-chip-with-avatar",n.leadingIcon)("mdc-evolution-chip--disabled",n.disabled)("mdc-evolution-chip--selected",n.selected)("mdc-evolution-chip--selecting",!n._animationsDisabled)("mdc-evolution-chip--with-trailing-action",n._hasTrailingIcon())("mdc-evolution-chip--with-primary-icon",n.leadingIcon)("mdc-evolution-chip--with-primary-graphic",n._hasLeadingGraphic())("mdc-evolution-chip--with-avatar",n.leadingIcon)("mat-mdc-chip-highlighted",n.highlighted)("mat-mdc-chip-with-trailing-icon",n._hasTrailingIcon()))},inputs:{selectable:[2,"selectable","selectable",Qe],selected:[2,"selected","selected",Qe]},outputs:{selectionChange:"selectionChange"},features:[pt([{provide:Qp,useExisting:i},{provide:Nx,useExisting:i}]),bt],ngContentSelectors:UW,decls:8,vars:6,consts:[[1,"mat-mdc-chip-focus-overlay"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--primary"],["matChipAction","","role","option",3,"_allowFocusWhenDisabled"],[1,"mdc-evolution-chip__graphic","mat-mdc-chip-graphic"],[1,"mdc-evolution-chip__text-label","mat-mdc-chip-action-label"],[1,"mat-mdc-chip-primary-focus-indicator","mat-focus-indicator"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--trailing"],[1,"mdc-evolution-chip__checkmark"],["viewBox","-2 -3 30 30","focusable","false","aria-hidden","true",1,"mdc-evolution-chip__checkmark-svg"],["fill","none","stroke","currentColor","d","M1.73,12.91 8.1,19.28 22.79,4.59",1,"mdc-evolution-chip__checkmark-path"]],template:function(t,n){t&1&&(Ot(KW),lA(0,"span",0),I(1,"span",1)(2,"button",2),T(3,auA,5,0,"span",3),I(4,"span",4),Ze(5),lA(6,"span",5),h()()(),T(7,ruA,2,0,"span",6)),t&2&&(Q(2),H("_allowFocusWhenDisabled",!0),ie("aria-description",n.ariaDescription)("aria-label",n.ariaLabel)("aria-selected",n.ariaSelected),Q(),O(n._hasLeadingGraphic()?3:-1),Q(4),O(n._hasTrailingIcon()?7:-1))},dependencies:[Fx],styles:[suA],encapsulation:2,changeDetection:0})}return i})();var Gx=(()=>{class i{_elementRef=w(ce);_changeDetectorRef=w(Mt);_dir=w(No,{optional:!0});_lastDestroyedFocusedChipIndex=null;_keyManager;_destroyed=new ne;_defaultRole="presentation";get chipFocusChanges(){return this._getChipStream(A=>A._onFocus)}get chipDestroyedChanges(){return this._getChipStream(A=>A.destroyed)}get chipRemovedChanges(){return this._getChipStream(A=>A.removed)}get disabled(){return this._disabled}set disabled(A){this._disabled=A,this._syncChipsState()}_disabled=!1;get empty(){return!this._chips||this._chips.length===0}get role(){return this._explicitRole?this._explicitRole:this.empty?null:this._defaultRole}tabIndex=0;set role(A){this._explicitRole=A}_explicitRole=null;get focused(){return this._hasFocusedChip()}_chips;_chipActions=new Rg;constructor(){}ngAfterViewInit(){this._setUpFocusManagement(),this._trackChipSetChanges(),this._trackDestroyedFocusedChip()}ngOnDestroy(){this._keyManager?.destroy(),this._chipActions.destroy(),this._destroyed.next(),this._destroyed.complete()}_hasFocusedChip(){return this._chips&&this._chips.some(A=>A._hasFocus())}_syncChipsState(){this._chips?.forEach(A=>{A._chipListDisabled=this._disabled,A._changeDetectorRef.markForCheck()})}focus(){}_handleKeydown(A){this._originatesFromChip(A)&&this._keyManager.onKeydown(A)}_isValidIndex(A){return A>=0&&Athis._elementRef.nativeElement.tabIndex=A))}_getChipStream(A){return this._chips.changes.pipe(Yn(null),Mi(()=>Vi(...this._chips.map(A))))}_originatesFromChip(A){let t=A.target;for(;t&&t!==this._elementRef.nativeElement;){if(t.classList.contains("mat-mdc-chip"))return!0;t=t.parentElement}return!1}_setUpFocusManagement(){this._chips.changes.pipe(Yn(this._chips)).subscribe(A=>{let t=[];A.forEach(n=>n._getActions().forEach(o=>t.push(o))),this._chipActions.reset(t),this._chipActions.notifyOnChanges()}),this._keyManager=new O0(this._chipActions).withVerticalOrientation().withHorizontalOrientation(this._dir?this._dir.value:"ltr").withHomeAndEnd().skipPredicate(A=>this._skipPredicate(A)),this.chipFocusChanges.pipe(yt(this._destroyed)).subscribe(({chip:A})=>{let t=A._getSourceAction(document.activeElement);t&&this._keyManager.updateActiveItem(t)}),this._dir?.change.pipe(yt(this._destroyed)).subscribe(A=>this._keyManager.withHorizontalOrientation(A))}_skipPredicate(A){return A.disabled}_trackChipSetChanges(){this._chips.changes.pipe(Yn(null),yt(this._destroyed)).subscribe(()=>{this.disabled&&Promise.resolve().then(()=>this._syncChipsState()),this._redirectDestroyedChipFocus()})}_trackDestroyedFocusedChip(){this.chipDestroyedChanges.pipe(yt(this._destroyed)).subscribe(A=>{let n=this._chips.toArray().indexOf(A.chip),o=A.chip._hasFocus(),a=A.chip._hadFocusOnRemove&&this._keyManager.activeItem&&A.chip._getActions().includes(this._keyManager.activeItem),r=o||a;this._isValidIndex(n)&&r&&(this._lastDestroyedFocusedChipIndex=n)})}_redirectDestroyedChipFocus(){if(this._lastDestroyedFocusedChipIndex!=null){if(this._chips.length){let A=Math.min(this._lastDestroyedFocusedChipIndex,this._chips.length-1),t=this._chips.toArray()[A];t.disabled?this._chips.length===1?this.focus():this._keyManager.setPreviousItemActive():t.focus()}else this.focus();this._lastDestroyedFocusedChipIndex=null}}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-chip-set"]],contentQueries:function(t,n,o){if(t&1&&ra(o,Qp,5),t&2){let a;se(a=le())&&(n._chips=a)}},hostAttrs:[1,"mat-mdc-chip-set","mdc-evolution-chip-set"],hostVars:1,hostBindings:function(t,n){t&1&&U("keydown",function(a){return n._handleKeydown(a)}),t&2&&ie("role",n.role)},inputs:{disabled:[2,"disabled","disabled",Qe],role:"role",tabIndex:[2,"tabIndex","tabIndex",A=>A==null?0:yn(A)]},ngContentSelectors:TW,decls:2,vars:0,consts:[["role","presentation",1,"mdc-evolution-chip-set__chips"]],template:function(t,n){t&1&&(Ot(),Ln(0,"div",0),Ze(1),Xn())},styles:[`.mat-mdc-chip-set{display:flex}.mat-mdc-chip-set:focus{outline:none}.mat-mdc-chip-set .mdc-evolution-chip-set__chips{min-width:100%;margin-left:-8px;margin-right:0}.mat-mdc-chip-set .mdc-evolution-chip{margin:4px 0 4px 8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip-set__chips{margin-left:0;margin-right:-8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip{margin-left:0;margin-right:8px}.mdc-evolution-chip-set__chips{display:flex;flex-flow:wrap;min-width:0}.mat-mdc-chip-set-stacked{flex-direction:column;align-items:flex-start}.mat-mdc-chip-set-stacked .mat-mdc-chip{width:100%}.mat-mdc-chip-set-stacked .mdc-evolution-chip__graphic{flex-grow:0}.mat-mdc-chip-set-stacked .mdc-evolution-chip__action--primary{flex-basis:100%;justify-content:start}input.mat-mdc-chip-input{flex:1 0 150px;margin-left:8px}[dir=rtl] input.mat-mdc-chip-input{margin-left:0;margin-right:8px}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-moz-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-webkit-input-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input:-ms-input-placeholder{opacity:1}.mat-mdc-chip-set+input.mat-mdc-chip-input{margin-left:0;margin-right:0} -`],encapsulation:2,changeDetection:0})}return i})(),xx=class{source;value;constructor(e,A){this.source=e,this.value=A}},guA={provide:cs,useExisting:Va(()=>Kx),multi:!0},Kx=(()=>{class i extends Gx{_onTouched=()=>{};_onChange=()=>{};_defaultRole="listbox";_defaultOptions=w(Rx,{optional:!0});get multiple(){return this._multiple}set multiple(A){this._multiple=A,this._syncListboxProperties()}_multiple=!1;get selected(){let A=this._chips.toArray().filter(t=>t.selected);return this.multiple?A:A[0]}ariaOrientation="horizontal";get selectable(){return this._selectable}set selectable(A){this._selectable=A,this._syncListboxProperties()}_selectable=!0;compareWith=(A,t)=>A===t;required=!1;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(A){this._hideSingleSelectionIndicator=A,this._syncListboxProperties()}_hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get chipSelectionChanges(){return this._getChipStream(A=>A.selectionChange)}get chipBlurChanges(){return this._getChipStream(A=>A._onBlur)}get value(){return this._value}set value(A){this._chips&&this._chips.length&&this._setSelectionByValue(A,!1),this._value=A}_value;change=new FA;_chips=void 0;ngAfterContentInit(){this._chips.changes.pipe(Yn(null),yt(this._destroyed)).subscribe(()=>{this.value!==void 0&&Promise.resolve().then(()=>{this._setSelectionByValue(this.value,!1)}),this._syncListboxProperties()}),this.chipBlurChanges.pipe(yt(this._destroyed)).subscribe(()=>this._blur()),this.chipSelectionChanges.pipe(yt(this._destroyed)).subscribe(A=>{this.multiple||this._chips.forEach(t=>{t!==A.source&&t._setSelectedState(!1,!1,!1)}),A.isUserInput&&this._propagateChanges()})}focus(){if(this.disabled)return;let A=this._getFirstSelectedChip();A&&!A.disabled?A.focus():this._chips.length>0?this._keyManager.setFirstItemActive():this._elementRef.nativeElement.focus()}writeValue(A){A!=null?this.value=A:this.value=void 0}registerOnChange(A){this._onChange=A}registerOnTouched(A){this._onTouched=A}setDisabledState(A){this.disabled=A}_setSelectionByValue(A,t=!0){this._clearSelection(),Array.isArray(A)?A.forEach(n=>this._selectValue(n,t)):this._selectValue(A,t)}_blur(){this.disabled||setTimeout(()=>{this.focused||this._markAsTouched()})}_keydown(A){A.keyCode===9&&super._allowFocusEscape()}_markAsTouched(){this._onTouched(),this._changeDetectorRef.markForCheck()}_propagateChanges(){let A=null;Array.isArray(this.selected)?A=this.selected.map(t=>t.value):A=this.selected?this.selected.value:void 0,this._value=A,this.change.emit(new xx(this,A)),this._onChange(A),this._changeDetectorRef.markForCheck()}_clearSelection(A){this._chips.forEach(t=>{t!==A&&t.deselect()})}_selectValue(A,t){let n=this._chips.find(o=>o.value!=null&&this.compareWith(o.value,A));return n&&(t?n.selectViaInteraction():n.select()),n}_syncListboxProperties(){this._chips&&Promise.resolve().then(()=>{this._chips.forEach(A=>{A._chipListMultiple=this.multiple,A.chipListSelectable=this._selectable,A._chipListHideSingleSelectionIndicator=this.hideSingleSelectionIndicator,A._changeDetectorRef.markForCheck()})})}_getFirstSelectedChip(){return Array.isArray(this.selected)?this.selected.length?this.selected[0]:void 0:this.selected}_skipPredicate(A){return!1}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275cmp=vA({type:i,selectors:[["mat-chip-listbox"]],contentQueries:function(t,n,o){if(t&1&&ra(o,Lx,5),t&2){let a;se(a=le())&&(n._chips=a)}},hostAttrs:[1,"mdc-evolution-chip-set","mat-mdc-chip-listbox"],hostVars:10,hostBindings:function(t,n){t&1&&U("focus",function(){return n.focus()})("blur",function(){return n._blur()})("keydown",function(a){return n._keydown(a)}),t&2&&(Ma("tabIndex",n.disabled||n.empty?-1:n.tabIndex),ie("role",n.role)("aria-required",n.role?n.required:null)("aria-disabled",n.disabled.toString())("aria-multiselectable",n.multiple)("aria-orientation",n.ariaOrientation),_A("mat-mdc-chip-list-disabled",n.disabled)("mat-mdc-chip-list-required",n.required))},inputs:{multiple:[2,"multiple","multiple",Qe],ariaOrientation:[0,"aria-orientation","ariaOrientation"],selectable:[2,"selectable","selectable",Qe],compareWith:"compareWith",required:[2,"required","required",Qe],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",Qe],value:"value"},outputs:{change:"change"},features:[pt([guA]),bt],ngContentSelectors:TW,decls:2,vars:0,consts:[["role","presentation",1,"mdc-evolution-chip-set__chips"]],template:function(t,n){t&1&&(Ot(),Ln(0,"div",0),Ze(1),Xn())},styles:[luA],encapsulation:2,changeDetection:0})}return i})();var f5=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({providers:[HI,{provide:Rx,useValue:{separatorKeyCodes:[13]}}],imports:[Jc,Di]})}return i})();var zW=(()=>{class i{get vertical(){return this._vertical}set vertical(A){this._vertical=kr(A)}_vertical=!1;get inset(){return this._inset}set inset(A){this._inset=kr(A)}_inset=!1;static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(t,n){t&2&&(ie("aria-orientation",n.vertical?"vertical":"horizontal"),_A("mat-divider-vertical",n.vertical)("mat-divider-horizontal",!n.vertical)("mat-divider-inset",n.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(t,n){},styles:[`.mat-divider{display:block;margin:0;border-top-style:solid;border-top-color:var(--mat-divider-color, var(--mat-sys-outline-variant));border-top-width:var(--mat-divider-width, 1px)}.mat-divider.mat-divider-vertical{border-top:0;border-right-style:solid;border-right-color:var(--mat-divider-color, var(--mat-sys-outline-variant));border-right-width:var(--mat-divider-width, 1px)}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px} -`],encapsulation:2,changeDetection:0})}return i})(),PW=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();var m5=class i{themeService=w(og);get currentTheme(){return this.themeService.currentTheme()}get themeIcon(){return this.currentTheme==="light"?"dark_mode":"light_mode"}get themeTooltip(){return this.currentTheme==="light"?"Switch to dark mode":"Switch to light mode"}toggleTheme(){this.themeService.toggleTheme()}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-theme-toggle"]],decls:3,vars:2,consts:[["mat-icon-button","","aria-label","Toggle theme",1,"theme-toggle-button",3,"click","matTooltip"]],template:function(A,t){A&1&&(I(0,"button",0),U("click",function(){return t.toggleTheme()}),I(1,"mat-icon"),D(2),h()()),A&2&&(H("matTooltip",t.themeTooltip),Q(2),nA(t.themeIcon))},dependencies:[Un,zt,qi,yi,Ha,rn],styles:[".theme-toggle-button[_ngcontent-%COMP%]{color:var(--side-panel-mat-icon-color);width:24px;height:24px;padding:0}.theme-toggle-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.theme-toggle-button[_ngcontent-%COMP%]:hover{opacity:.8}.builder-mode-action-button[_nghost-%COMP%] .theme-toggle-button[_ngcontent-%COMP%]{color:var(--builder-text-tertiary-color);border-radius:50%;transition:all .2s ease;margin-right:0!important}.builder-mode-action-button[_nghost-%COMP%] .theme-toggle-button[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);opacity:1}.builder-mode-action-button[_nghost-%COMP%] .theme-toggle-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px}"]})};var jW=(i,e)=>e.name;function CuA(i,e){if(i&1&&D(0),i&2){let A=p().$implicit;Ee(" AgentTool: ",A.name," ")}}function duA(i,e){if(i&1&&D(0),i&2){let A=p().$implicit;Ee(" ",A.name," ")}}function IuA(i,e){i&1&&(I(0,"mat-icon",28),D(1,"chevron_right"),h())}function BuA(i,e){if(i&1){let A=aA();I(0,"div",27),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.selectAgentFromBreadcrumb(n))}),T(1,CuA,1,1)(2,duA,1,1),h(),T(3,IuA,2,0,"mat-icon",28)}if(i&2){let A=e.$implicit,t=e.$index,n=p(2);_A("current-agent",(n.currentSelectedAgent==null?null:n.currentSelectedAgent.name)===A.name),Q(),O(t===0&&n.isInAgentToolContext()?1:2),Q(2),O(t0?0:-1)}}function buA(i,e){if(i&1){let A=aA();I(0,"div",15)(1,"div",16)(2,"div"),D(3," Tools "),h(),I(4,"div")(5,"button",40,2)(7,"mat-icon"),D(8,"add"),h()(),I(9,"mat-menu",null,3)(11,"button",23),U("click",function(){L(A);let n=p();return G(n.addTool("Function tool"))}),I(12,"span"),D(13,"Function tool"),h()(),I(14,"button",23),U("click",function(){L(A);let n=p();return G(n.addTool("Built-in tool"))}),I(15,"span"),D(16,"Built-in tool"),h()(),I(17,"button",23),U("click",function(){L(A);let n=p();return G(n.createAgentTool())}),I(18,"span"),D(19,"Agent tool"),h()()()()(),T(20,vuA,1,1),mt(21,"async"),h()}if(i&2){let A,t=Bi(10),n=p();Q(5),H("matMenuTriggerFor",t),Q(6),H("matTooltip",n.toolMenuTooltips("Function tool")),Q(3),H("matTooltip",n.toolMenuTooltips("Built-in tool")),Q(3),H("matTooltip",n.toolMenuTooltips("Agent tool")),Q(3),O((A=Ft(21,5,n.toolsMap$))?20:-1,A)}}function MuA(i,e){if(i&1){let A=aA();I(0,"mat-chip",43),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.selectAgent(n))}),I(1,"mat-icon",44),D(2),h(),I(3,"span",45),D(4),h(),I(5,"button",48),U("click",function(n){let o=L(A).$implicit;return p(2).deleteSubAgent(o.name),G(n.stopPropagation())}),I(6,"mat-icon"),D(7,"cancel"),h()()()}if(i&2){let A=e.$implicit,t=p(2);Q(2),nA(t.getAgentIcon(A.agent_class)),Q(2),nA(A.name)}}function SuA(i,e){if(i&1&&(I(0,"div",20)(1,"mat-chip-set",47),ke(2,MuA,8,2,"mat-chip",42,jW),h()()),i&2){let A=p();Q(2),_e(A.agentConfig.sub_agents)}}function kuA(i,e){if(i&1){let A=aA();lA(0,"mat-divider"),I(1,"div",22),D(2,"Model (LLM) Interaction"),h(),I(3,"button",23),U("click",function(){L(A);let n=p();return G(n.addCallback("before_model"))}),I(4,"span"),D(5,"Before Model"),h()(),I(6,"button",23),U("click",function(){L(A);let n=p();return G(n.addCallback("after_model"))}),I(7,"span"),D(8,"After Model"),h()(),lA(9,"mat-divider"),I(10,"div",22),D(11,"Tool Execution"),h(),I(12,"button",23),U("click",function(){L(A);let n=p();return G(n.addCallback("before_tool"))}),I(13,"span"),D(14,"Before Tool"),h()(),I(15,"button",23),U("click",function(){L(A);let n=p();return G(n.addCallback("after_tool"))}),I(16,"span"),D(17,"After Tool"),h()()}if(i&2){let A=p();Q(3),H("matTooltip",A.callbackMenuTooltips("before_model")),Q(3),H("matTooltip",A.callbackMenuTooltips("after_model")),Q(6),H("matTooltip",A.callbackMenuTooltips("before_tool")),Q(3),H("matTooltip",A.callbackMenuTooltips("after_tool"))}}function _uA(i,e){if(i&1){let A=aA();I(0,"div",52),U("click",function(){let n=L(A).$implicit,o=p(3);return G(o.editCallback(n))}),I(1,"mat-chip",53)(2,"span",54)(3,"span",55),D(4),h(),I(5,"span",56),D(6),h()()(),I(7,"button",57),U("click",function(n){let o=L(A).$implicit,a=p(3);return a.deleteCallback(a.agentConfig.name,o),G(n.stopPropagation())}),I(8,"mat-icon"),D(9,"remove"),h()()()}if(i&2){let A=e.$implicit;Q(4),nA(A.type),Q(2),nA(A.name)}}function xuA(i,e){if(i&1&&(I(0,"div",49)(1,"mat-chip-set",50),ke(2,_uA,10,2,"div",51,ni),h()()),i&2){let A=p(),t=p();Q(2),_e(A.get(t.agentConfig.name))}}function RuA(i,e){if(i&1&&T(0,xuA,4,0,"div",49),i&2){let A=e,t=p();O(t.agentConfig&&A.get(t.agentConfig.name)&&A.get(t.agentConfig.name).length>0?0:-1)}}var w5=class i{CALLBACKS_TAB_INDEX=3;jsonEditorComponent;appNameInput="";exitBuilderMode=new FA;closePanel=new FA;featureFlagService=w(Nr);isAlwaysOnSidePanelEnabledObs=this.featureFlagService.isAlwaysOnSidePanelEnabled();toolArgsString=mA("");editingToolArgs=mA(!1);editingTool=null;selectedTabIndex=0;agentConfig={isRoot:!1,name:"",agent_class:"",model:"",instruction:"",sub_agents:[],tools:[],callbacks:[]};hierarchyPath=[];currentSelectedAgent=void 0;isRootAgentEditable=!0;models=["gemini-2.5-flash","gemini-2.5-pro"];agentTypes=["LlmAgent","LoopAgent","ParallelAgent","SequentialAgent"];agentBuilderService=w($c);dialog=w(Xa);agentService=w(el);snackBar=w(Xc);router=w(Is);cdr=w(Mt);selectedTool=void 0;toolAgentName="";toolTypes=["Custom tool","Function tool","Built-in tool","Agent Tool"];editingCallback=null;selectedCallback=void 0;callbackTypes=["before_agent","before_model","before_tool","after_tool","after_model","after_agent"];builtInTools=["EnterpriseWebSearchTool","exit_loop","FilesRetrieval","get_user_choice","google_search","load_artifacts","load_memory","LongRunningFunctionTool","preload_memory","url_context","VertexAiRagRetrieval","VertexAiSearchTool"];builtInToolArgs=new Map([["EnterpriseWebSearchTool",[]],["exit_loop",[]],["FilesRetrieval",["name","description","input_dir"]],["get_user_choice",[]],["google_search",[]],["load_artifacts",[]],["load_memory",[]],["LongRunningFunctionTool",["func"]],["preload_memory",[]],["url_context",[]],["VertexAiRagRetrieval",["name","description","rag_corpora","rag_resources","similarity_top_k","vector_distance_threshold"]],["VertexAiSearchTool",["data_store_id","data_store_specs","search_engine_id","filter","max_results"]]]);header="Select an agent or tool to edit";toolsMap$;callbacksMap$;getJsonStringForEditor(e){if(!e)return"{}";let A=P({},e);return delete A.skip_summarization,JSON.stringify(A,null,2)}constructor(){this.toolsMap$=this.agentBuilderService.getAgentToolsMap(),this.callbacksMap$=this.agentBuilderService.getAgentCallbacksMap(),this.agentBuilderService.getSelectedNode().subscribe(e=>{this.agentConfig=e,this.currentSelectedAgent=e,e&&(this.editingTool=null,this.editingCallback=null,this.header="Agent configuration",this.updateBreadcrumb(e)),this.cdr.markForCheck()}),this.agentBuilderService.getSelectedTool().subscribe(e=>{this.selectedTool=e,!(e&&e.toolType==="Agent Tool")&&(e?(this.editingTool=e,this.editingToolArgs.set(!1),setTimeout(()=>{let A=e.toolType=="Function tool"?"Function tool":e.name;if(e.toolType=="Function tool"&&!e.name&&(e.name="Function tool"),e.toolType==="Custom tool")e.args||(e.args={}),this.toolArgsString.set(this.getJsonStringForEditor(e.args)),this.editingToolArgs.set(!0);else{let t=this.builtInToolArgs.get(A);if(t){e.args||(e.args={});for(let n of t)e.args&&(e.args[n]="")}this.toolArgsString.set(this.getJsonStringForEditor(e.args)),e.args&&this.getObjectKeys(e.args).length>0&&this.editingToolArgs.set(!0)}this.cdr.markForCheck()}),this.selectedTabIndex=2):this.editingTool=null,this.cdr.markForCheck())}),this.agentBuilderService.getSelectedCallback().subscribe(e=>{this.selectedCallback=e,e?(this.selectCallback(e),this.selectedTabIndex=this.CALLBACKS_TAB_INDEX):this.editingCallback=null,this.cdr.markForCheck()}),this.agentBuilderService.getAgentCallbacks().subscribe(e=>{this.agentConfig&&e&&this.agentConfig.name===e.agentName&&(this.agentConfig=$A(P({},this.agentConfig),{callbacks:e.callbacks}),this.cdr.markForCheck())}),this.agentBuilderService.getSideTabChangeRequest().subscribe(e=>{e==="tools"?this.selectedTabIndex=2:e==="config"&&(this.selectedTabIndex=0)})}getObjectKeys(e){return e?Object.keys(e).filter(A=>A!=="skip_summarization"):[]}getCallbacksByType(){let e=new Map;return this.callbackTypes.forEach(A=>{e.set(A,[])}),this.agentConfig?.callbacks&&this.agentConfig.callbacks.forEach(A=>{let t=e.get(A.type);t&&t.push(A)}),e}updateBreadcrumb(e){this.hierarchyPath=this.buildHierarchyPath(e)}buildHierarchyPath(e){let A=[],t=this.findContextualRoot(e);return t?e.name===t.name?[t]:this.findPathToAgent(t,e,[t])||[e]:[e]}isInAgentToolContext(){return!this.hierarchyPath||this.hierarchyPath.length===0?!1:this.hierarchyPath[0]?.isAgentTool===!0}findContextualRoot(e){if(e.isAgentTool)return e;let A=this.agentBuilderService.getNodes();for(let n of A)if(n.isAgentTool&&this.findPathToAgent(n,e,[n]))return n;let t=this.agentBuilderService.getRootNode();if(t&&this.findPathToAgent(t,e,[t]))return t;if(e.isRoot)return e;for(let n of A)if(n.isRoot&&this.findPathToAgent(n,e,[n]))return n;return t}findPathToAgent(e,A,t){if(e.name===A.name)return t;for(let n of e.sub_agents){let o=[...t,n],a=this.findPathToAgent(n,A,o);if(a)return a}return null}selectAgentFromBreadcrumb(e){this.agentBuilderService.setSelectedNode(e),this.selectedTabIndex=0}selectAgent(e){this.agentBuilderService.setSelectedNode(e),this.selectedTabIndex=0}selectTool(e){if(e.toolType==="Agent Tool"){let A=e.name;this.agentBuilderService.requestNewTab(A);return}if(e.toolType==="Function tool"||e.toolType==="Built-in tool"){this.editTool(e);return}this.agentBuilderService.setSelectedTool(e)}editTool(e){if(!this.agentConfig)return;let A;e.toolType==="Built-in tool"?A=this.dialog.open(sI,{width:"700px",maxWidth:"90vw",data:{toolName:e.name,isEditMode:!0,toolArgs:e.args}}):A=this.dialog.open(Q2,{width:"500px",data:{toolType:e.toolType,toolName:e.name,isEditMode:!0}}),A.afterClosed().subscribe(t=>{if(t&&t.isEditMode){let n=this.agentConfig.tools?.findIndex(o=>o.name===e.name);n!==void 0&&n!==-1&&this.agentConfig.tools&&(this.agentConfig.tools[n].name=t.name,t.args&&(this.agentConfig.tools[n].args=t.args),this.agentBuilderService.setAgentTools(this.agentConfig.name,this.agentConfig.tools))}})}addTool(e){if(this.agentConfig){let A;e==="Built-in tool"?A=this.dialog.open(sI,{width:"700px",maxWidth:"90vw",data:{}}):A=this.dialog.open(Q2,{width:"500px",data:{toolType:e}}),A.afterClosed().subscribe(t=>{if(t){let n={toolType:t.toolType,name:t.name};this.agentBuilderService.addTool(this.agentConfig.name,n),this.agentBuilderService.setSelectedTool(n)}})}}addCallback(e){if(this.agentConfig){let A=this.agentConfig?.callbacks?.map(n=>n.name)??[];this.dialog.open(Mu,{width:"500px",data:{callbackType:e,existingCallbackNames:A}}).afterClosed().subscribe(n=>{if(n){let o={name:n.name,type:n.type};this.agentBuilderService.addCallback(this.agentConfig.name,o)}})}}editCallback(e){if(!this.agentConfig)return;let A=this.agentConfig.callbacks?.map(n=>n.name)??[];this.dialog.open(Mu,{width:"500px",data:{callbackType:e.type,existingCallbackNames:A,isEditMode:!0,callback:e,availableCallbackTypes:this.callbackTypes}}).afterClosed().subscribe(n=>{if(n&&n.isEditMode){let o=this.agentBuilderService.updateCallback(this.agentConfig.name,e.name,$A(P({},e),{name:n.name,type:n.type}));o.success?this.cdr.markForCheck():console.error("Failed to update callback:",o.error)}})}deleteCallback(e,A){this.dialog.open(vc,{data:{title:"Delete Callback",message:`Are you sure you want to delete ${A.name}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(n=>{if(n==="confirm"){let o=this.agentBuilderService.deleteCallback(e,A);o.success?this.cdr.markForCheck():console.error("Failed to delete callback:",o.error)}})}addSubAgent(e){e&&this.agentBuilderService.setAddSubAgentSubject(e)}deleteSubAgent(e){this.agentBuilderService.setDeleteSubAgentSubject(e)}deleteTool(e,A){let t=A.toolType==="Agent Tool",n=t&&A.toolAgentName||A.name;this.dialog.open(vc,{data:{title:t?"Delete Agent Tool":"Delete Tool",message:t?`Are you sure you want to delete the agent tool "${n}"? This will also delete the corresponding board.`:`Are you sure you want to delete ${n}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(a=>{if(a==="confirm")if(A.toolType==="Agent Tool"){let r=A.toolAgentName||A.name;this.deleteAgentToolAndBoard(e,A,r)}else this.agentBuilderService.deleteTool(e,A)})}deleteAgentToolAndBoard(e,A,t){this.agentBuilderService.deleteTool(e,A),this.agentBuilderService.requestTabDeletion(t)}backToToolList(){this.editingTool=null,this.agentBuilderService.setSelectedTool(void 0)}editToolArgs(){this.editingToolArgs.set(!0)}cancelEditToolArgs(e){this.editingToolArgs.set(!1),this.toolArgsString.set(this.getJsonStringForEditor(e?.args))}saveToolArgs(e){if(this.jsonEditorComponent&&e)try{let A=JSON.parse(this.jsonEditorComponent.getJsonString()),t=e.args?e.args.skip_summarization:!1;e.args=A,e.args.skip_summarization=t,this.toolArgsString.set(JSON.stringify(e.args,null,2)),this.editingToolArgs.set(!1)}catch(A){console.error("Error parsing tool arguments JSON",A)}}onToolTypeSelectionChange(e){e?.toolType==="Built-in tool"?(e.name="google_search",this.onBuiltInToolSelectionChange(e)):e?.toolType==="Custom tool"?(e.args={},this.toolArgsString.set(this.getJsonStringForEditor(e.args)),this.editingToolArgs.set(!0)):e&&(e.name="",e.args={skip_summarization:!1},this.toolArgsString.set("{}"),this.editingToolArgs.set(!1))}onBuiltInToolSelectionChange(e){e&&(this.editingToolArgs.set(!1),setTimeout(()=>{e.args={skip_summarization:!1};let A=this.builtInToolArgs.get(e.name);if(A)for(let t of A)e.args&&(e.args[t]="");this.toolArgsString.set(this.getJsonStringForEditor(e.args)),e.args&&this.getObjectKeys(e.args).length>0&&this.editingToolArgs.set(!0),this.cdr.markForCheck()}))}selectCallback(e){this.editingCallback=e}backToCallbackList(){this.editingCallback=null}onCallbackTypeChange(e){}createAgentTool(){this.dialog.open(vc,{width:"750px",height:"450px",data:{title:"Create Agent Tool",message:"Please enter a name for the agent tool:",confirmButtonText:"Create",showInput:!0,inputLabel:"Agent Tool Name",inputPlaceholder:"Enter agent tool name",showToolInfo:!0,toolType:"Agent tool"}}).afterClosed().subscribe(A=>{if(A&&typeof A=="string"){let t=this.agentConfig?.name||"root_agent";this.agentBuilderService.requestNewTab(A,t)}})}saveChanges(){if(!this.agentBuilderService.getRootNode()){this.snackBar.open("Please create an agent first.","OK");return}this.appNameInput?this.saveAgent(this.appNameInput):this.agentService.getApp().subscribe(A=>{A?this.saveAgent(A):this.snackBar.open("No agent selected. Please select an agent first.","OK")})}cancelChanges(){this.agentService.agentChangeCancel(this.appNameInput).subscribe(e=>{}),this.exitBuilderMode.emit()}saveAgent(e){let A=this.agentBuilderService.getRootNode();if(!A){this.snackBar.open("Please create an agent first.","OK");return}let t=new FormData,n=this.agentBuilderService.getCurrentAgentToolBoards();a0.generateYamlFile(A,t,e,n),this.agentService.agentBuildTmp(e,t).subscribe(o=>{o&&this.agentService.agentBuild(e,t).subscribe(a=>{a?this.router.navigate(["/"],{queryParams:{app:e}}).then(()=>{window.location.reload()}):this.snackBar.open("Something went wrong, please try again","OK")})})}getToolIcon(e){return UB(e.name,e.toolType)}getAgentIcon(e){switch(e){case"SequentialAgent":return"more_horiz";case"LoopAgent":return"sync";case"ParallelAgent":return"density_medium";default:return"psychology"}}addSubAgentWithType(e){if(!this.agentConfig?.name)return;let A=this.agentConfig.agent_class!=="LlmAgent";this.agentBuilderService.setAddSubAgentSubject(this.agentConfig.name,e,A)}callbackMenuTooltips(e){return nc.getCallbackMenuTooltips(e)}toolMenuTooltips(e){return nc.getToolMenuTooltips(e)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-builder-tabs"]],viewQuery:function(A,t){if(A&1&&Wt(Dc,5),A&2){let n;se(n=le())&&(t.jsonEditorComponent=n.first)}},inputs:{appNameInput:"appNameInput"},outputs:{exitBuilderMode:"exitBuilderMode",closePanel:"closePanel"},decls:77,vars:12,consts:[["subAgentMenu","matMenu"],["callbacksMenu","matMenu"],["agentMenuTrigger","matMenuTrigger"],["toolsMenu","matMenu"],[2,"margin-top","20px","margin-left","20px","display","flex"],[2,"width","100%"],[1,"drawer-header"],[1,"drawer-logo"],["src","assets/ADK-512-color.svg","width","32px","height","32px"],[2,"display","flex","align-items","center","gap","8px","margin-right","15px"],["matTooltip","Collapse panel",1,"material-symbols-outlined",2,"color","#c4c7c5","cursor","pointer",3,"click"],[1,"builder-tabs-container"],[1,"builder-tab-content"],[1,"agent-breadcrumb-container"],[1,"content-wrapper"],[1,"builder-panel-wrapper"],[1,"panel-title"],[1,"config-form"],["mat-icon-button","","type","button","aria-label","Add sub agent",1,"panel-action-button",3,"matMenuTriggerFor"],["mat-menu-item","",3,"click"],[1,"tools-chips-container"],["mat-icon-button","","type","button","aria-label","Add callback",1,"panel-action-button",3,"matMenuTriggerFor"],[1,"menu-header"],["mat-menu-item","","matTooltipPosition","right",3,"click","matTooltip"],[1,"action-buttons"],["mat-raised-button","","color","secondary",1,"save-button",3,"click"],["mat-button","",1,"cancel-button",3,"click"],[1,"breadcrumb-chip",3,"click"],[1,"breadcrumb-arrow"],[1,"form-row"],[1,"agent-name-field"],["matInput","",3,"ngModelChange","ngModel","disabled"],[1,"agent-type-field"],["disabled","",3,"ngModelChange","ngModel"],[3,"value"],[3,"ngModel"],[3,"ngModelChange","ngModel"],["matInput","","rows","5",3,"ngModelChange","ngModel"],["matInput","","rows","3",3,"ngModelChange","ngModel"],["matInput","","type","number","min","1",3,"ngModelChange","ngModel"],["mat-icon-button","","type","button","aria-label","Add tool",1,"panel-action-button",3,"matMenuTriggerFor"],["aria-label","Tools"],[1,"tool-chip"],[1,"tool-chip",3,"click"],["matChipAvatar","",1,"tool-icon"],[1,"tool-chip-name"],["matChipRemove","","aria-label","Remove tool",3,"click"],["aria-label","Sub Agents"],["matChipRemove","","aria-label","Remove sub agent",3,"click"],[1,"tools-chips-container","callbacks-list"],["aria-label","Callbacks"],[1,"callback-row"],[1,"callback-row",3,"click"],[1,"callback-chip"],[1,"chip-content"],[1,"chip-type"],[1,"chip-name"],["mat-icon-button","","aria-label","Remove callback",1,"callback-remove",3,"click"]],template:function(A,t){if(A&1&&(I(0,"div",4)(1,"div",5)(2,"div",6)(3,"div",7),lA(4,"img",8),D(5," Agent Development Kit "),h(),I(6,"div",9),lA(7,"app-theme-toggle"),I(8,"span",10),U("click",function(){return t.closePanel.emit()}),D(9,"left_panel_close"),h()()()()(),I(10,"div",11)(11,"div",12),T(12,huA,3,0,"div",13),I(13,"div",14)(14,"div",15)(15,"div",16),D(16," Configuration "),h(),I(17,"div"),T(18,wuA,16,7,"div",17),h()(),T(19,buA,22,7,"div",15),I(20,"div",15)(21,"div",16)(22,"div"),D(23," Sub Agents "),h(),I(24,"div")(25,"button",18)(26,"mat-icon"),D(27,"add"),h()(),I(28,"mat-menu",null,0)(30,"button",19),U("click",function(){return t.addSubAgentWithType("LlmAgent")}),I(31,"mat-icon"),D(32,"psychology"),h(),I(33,"span"),D(34,"LLM Agent"),h()(),I(35,"button",19),U("click",function(){return t.addSubAgentWithType("SequentialAgent")}),I(36,"mat-icon"),D(37,"more_horiz"),h(),I(38,"span"),D(39,"Sequential Agent"),h()(),I(40,"button",19),U("click",function(){return t.addSubAgentWithType("LoopAgent")}),I(41,"mat-icon"),D(42,"sync"),h(),I(43,"span"),D(44,"Loop Agent"),h()(),I(45,"button",19),U("click",function(){return t.addSubAgentWithType("ParallelAgent")}),I(46,"mat-icon"),D(47,"density_medium"),h(),I(48,"span"),D(49,"Parallel Agent"),h()()()()(),T(50,SuA,4,0,"div",20),h(),I(51,"div",15)(52,"div",16)(53,"div"),D(54," Callbacks "),h(),I(55,"div")(56,"button",21)(57,"mat-icon"),D(58,"add"),h()(),I(59,"mat-menu",null,1)(61,"div",22),D(62,"Agent Lifecycle"),h(),I(63,"button",23),U("click",function(){return t.addCallback("before_agent")}),I(64,"span"),D(65,"Before Agent"),h()(),I(66,"button",23),U("click",function(){return t.addCallback("after_agent")}),I(67,"span"),D(68,"After Agent"),h()(),T(69,kuA,18,4),h()()(),T(70,RuA,1,1),mt(71,"async"),h()(),I(72,"div",24)(73,"button",25),U("click",function(){return t.saveChanges()}),D(74," Save "),h(),I(75,"button",26),U("click",function(){return t.cancelChanges()}),D(76," Cancel "),h()()()()),A&2){let n,o=Bi(29),a=Bi(60);Q(12),O(t.hierarchyPath.length>0?12:-1),Q(6),O(t.agentConfig?18:-1),Q(),O((t.agentConfig==null?null:t.agentConfig.agent_class)==="LlmAgent"?19:-1),Q(6),H("matMenuTriggerFor",o),Q(25),O(t.agentConfig&&t.agentConfig.sub_agents&&t.agentConfig.sub_agents.length>0?50:-1),Q(6),H("matMenuTriggerFor",a),Q(7),H("matTooltip",t.callbackMenuTooltips("before_agent")),Q(3),H("matTooltip",t.callbackMenuTooltips("after_agent")),Q(3),O((t.agentConfig==null?null:t.agentConfig.agent_class)==="LlmAgent"?69:-1),Q(),O((n=Ft(71,10,t.callbacksMap$))?70:-1,n)}},dependencies:[li,fn,Gn,gQ,Kn,dv,Ho,ki,ic,fO,Zo,zt,ka,yi,xs,Vr,ig,rn,hs,tg,Gs,f5,Qp,JW,YW,Gx,PW,zW,m5,gs],styles:[".builder-tabs-container[_ngcontent-%COMP%]{width:100%;margin-top:40px;height:calc(95vh - 20px);display:flex;flex-direction:column}.agent-breadcrumb-container[_ngcontent-%COMP%]{padding:2px 20px 8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--builder-border-color)}.breadcrumb-chip[_ngcontent-%COMP%]{color:var(--builder-text-muted-color);font-family:Google Sans;font-size:16px;font-weight:500;border:none;cursor:pointer;transition:all .2s ease;padding:4px 8px;border-radius:4px;display:inline-block;-webkit-user-select:none;user-select:none}.breadcrumb-chip[_ngcontent-%COMP%]:hover{color:var(--builder-text-link-color)}.breadcrumb-chip.current-agent[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-weight:500}.breadcrumb-arrow[_ngcontent-%COMP%]{color:var(--builder-breadcrumb-separator-color);font-size:16px;width:16px;height:16px}.builder-tab-content[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);display:flex;flex-direction:column;flex:1;overflow:hidden}.builder-tab-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:8px 0;font-size:14px;line-height:1.5}.components-section[_ngcontent-%COMP%]{margin-bottom:32px}.components-section[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:14px;font-weight:500;margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.config-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;margin-top:20px}.config-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%]{display:flex;gap:16px;align-items:flex-start}.config-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%] .agent-name-field[_ngcontent-%COMP%]{flex:1}.config-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%] .agent-type-field[_ngcontent-%COMP%]{width:32%}.config-form[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.config-form[_ngcontent-%COMP%] mat-checkbox[_ngcontent-%COMP%]{margin-bottom:8px}.config-form[_ngcontent-%COMP%] .tool-code-section[_ngcontent-%COMP%]{margin-top:16px}.config-form[_ngcontent-%COMP%] .tool-code-section[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0 0 8px;color:var(--builder-text-secondary-color);font-size:14px;font-weight:500}.config-form[_ngcontent-%COMP%] .tool-args-header[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.json-editor-wrapper[_ngcontent-%COMP%]{height:300px;max-height:300px}.tab-content-container[_ngcontent-%COMP%]{margin-top:20px;overflow-y:auto}.agent-list-row[_ngcontent-%COMP%]{display:flex;margin-top:10px}.sub-agent-list-row[_ngcontent-%COMP%]{display:flex;margin-top:10px;margin-left:16px}.tree-view[_ngcontent-%COMP%] expand-button[_ngcontent-%COMP%]{border:0}.node-item[_ngcontent-%COMP%]{display:flex;align-items:center}.node-icon[_ngcontent-%COMP%]{margin-right:14px}.node-name[_ngcontent-%COMP%]{margin-top:2px;display:flex;align-items:center}.no-tools-message[_ngcontent-%COMP%]{display:block;color:var(--builder-text-secondary-color);font-size:16px;margin-top:16px;margin-bottom:16px;text-align:center}.tools-list[_ngcontent-%COMP%]{list-style:none;padding:0}.tool-name[_ngcontent-%COMP%]{cursor:pointer;padding:11px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;color:var(--builder-text-primary-color);font-family:Google Sans Mono,monospace;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.tool-name[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{visibility:hidden}.tool-name[_ngcontent-%COMP%]:hover button[_ngcontent-%COMP%]{visibility:visible}.tool-list-item-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding-right:8px}.tools-chips-container[_ngcontent-%COMP%]{margin-top:12px;padding:0 4px}.tools-chips-container.callbacks-list[_ngcontent-%COMP%]{padding-right:0;padding-left:0}.callback-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;width:100%;cursor:pointer}.callback-remove[_ngcontent-%COMP%]{color:var(--builder-icon-color);cursor:pointer;width:32px;height:32px;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0}.callback-remove[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;line-height:1;display:flex;align-items:center;justify-content:center;transform:translateY(.5px)}.back-button[_ngcontent-%COMP%]{margin-bottom:16px}.add-tool-button[_ngcontent-%COMP%]{width:100%;border:none;border-radius:4px;margin-top:12px;cursor:pointer}.add-tool-button-detail[_ngcontent-%COMP%]{display:flex;padding:8px 16px 8px 12px;justify-content:center}.add-tool-button-text[_ngcontent-%COMP%]{padding-top:2px;color:var(--builder-add-button-text-color);font-family:Google Sans;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.agent-tool-section[_ngcontent-%COMP%]{margin-top:16px;padding:16px;border:1px solid var(--builder-border-color);border-radius:8px}.agent-tool-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:16px;font-weight:500;margin:0 0 8px}.agent-tool-section[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:14px;margin:0 0 16px;line-height:1.5}.agent-tool-section[_ngcontent-%COMP%] .create-agent-tool-btn[_ngcontent-%COMP%]{color:var(--builder-button-primary-text-color);font-weight:500}.no-callbacks-message[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:16px;margin-top:16px;text-align:center}.callback-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding-right:8px}.callback-section[_ngcontent-%COMP%]{margin-top:16px}.callback-section[_ngcontent-%COMP%] .callback-section-label[_ngcontent-%COMP%]{margin:0 0 8px;color:var(--builder-text-secondary-color);font-size:14px;font-weight:500;text-transform:none}.callback-groups-wrapper[_ngcontent-%COMP%]{margin-top:16px}.callback-group[_ngcontent-%COMP%]{margin-top:5px}.callback-list[_ngcontent-%COMP%]{padding:8px 0}.no-callbacks-in-type[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:14px;font-style:italic;padding:12px;text-align:center}.callback-item[_ngcontent-%COMP%]{cursor:pointer;padding:8px 12px;border-radius:4px;display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;color:var(--builder-text-primary-color);font-family:Google Sans Mono,monospace;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.callback-item[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{visibility:hidden}.callback-item[_ngcontent-%COMP%]:hover button[_ngcontent-%COMP%]{visibility:visible}.add-callback-icon[_ngcontent-%COMP%]{color:var(--builder-button-primary-background-color)}mat-tab-group[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:16px 20px 0;min-height:0}mat-tab-group[_ngcontent-%COMP%]{flex:1;padding-bottom:0;display:flex;flex-direction:column;overflow:hidden}.action-buttons[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;padding:16px 20px;border-top:1px solid var(--builder-border-color);flex-shrink:0;margin-top:auto}.action-buttons[_ngcontent-%COMP%] .save-button[_ngcontent-%COMP%]{color:var(--builder-button-primary-text-color);font-weight:500}.action-buttons[_ngcontent-%COMP%] .cancel-button[_ngcontent-%COMP%]{color:var(--builder-button-secondary-text-color);border:1px solid var(--builder-button-secondary-border-color)}.action-buttons[_ngcontent-%COMP%] .cancel-button[_ngcontent-%COMP%]:hover{color:var(--builder-button-secondary-hover-text-color)}.builder-panel-wrapper[_ngcontent-%COMP%]{border-bottom:1px solid var(--builder-border-color);padding:12px 24px}.panel-title[_ngcontent-%COMP%]{color:var(--builder-text-tertiary-color);font-family:Google Sans;font-size:16px;font-style:normal;font-weight:500;line-height:24px;display:flex;justify-content:space-between}.panel-title[_ngcontent-%COMP%] .panel-action-button[_ngcontent-%COMP%]{color:var(--builder-icon-color);width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;padding:0}.panel-title[_ngcontent-%COMP%] .panel-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;line-height:1;display:flex;align-items:center;justify-content:center}.content-wrapper[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.drawer-logo[_ngcontent-%COMP%]{margin-left:9px;display:flex;align-items:center}.drawer-logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{margin-right:9px}.drawer-logo[_ngcontent-%COMP%]{font-size:16px;font-style:normal;font-weight:500;line-height:24px;letter-spacing:.1px}.drawer-header[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:space-between;align-items:center}"],changeDetection:0})};var g1=new MA("MARKDOWN_COMPONENT");var NuA=["chatMessages"],FuA=(i,e)=>({"user-message":i,"bot-message":e}),LuA=i=>({text:i,thought:!1});function GuA(i,e){i&1&&(I(0,"div",7)(1,"mat-icon",12),D(2,"smart_toy"),h(),I(3,"h3"),D(4,"Assistant Ready"),h(),I(5,"p"),D(6,"Your builder assistant is ready to help you build agents."),h()())}function KuA(i,e){i&1&&(I(0,"div",15)(1,"span",16),D(2,"\u30FB\u30FB\u30FB"),h()())}function UuA(i,e){if(i&1&&(I(0,"div",19),D(1),h()),i&2){let A=p(3).$implicit;Q(),nA(A.text)}}function TuA(i,e){if(i&1&&dn(0,20),i&2){let A=p(3).$implicit,t=p(2);H("ngComponentOutlet",t.markdownComponent)("ngComponentOutletInputs",jl(2,LuA,A.text))}}function OuA(i,e){if(i&1&&(I(0,"div",18),D(1,"Assistant"),h(),T(2,UuA,2,1,"div",19)(3,TuA,1,4,"ng-container",20)),i&2){let A=p(2).$implicit;Q(2),O(A.isError?2:3)}}function JuA(i,e){if(i&1&&(I(0,"div",17),D(1),h()),i&2){let A=p(2).$implicit;Q(),nA(A.text)}}function YuA(i,e){if(i&1&&T(0,OuA,4,1)(1,JuA,2,1,"div",17),i&2){let A=p().$implicit;O(A.role==="bot"?0:1)}}function HuA(i,e){if(i&1&&(I(0,"div",13)(1,"mat-card",14),T(2,KuA,3,0,"div",15)(3,YuA,2,1),h()()),i&2){let A=e.$implicit;H("ngClass",L0(2,FuA,A.role==="user",A.role==="bot")),Q(2),O(A.isLoading?2:3)}}function zuA(i,e){if(i&1&&ke(0,HuA,4,5,"div",13,ni),i&2){let A=p();_e(A.messages)}}var y5=class i{isVisible=!0;appName="";closePanel=new FA;reloadCanvas=new FA;assistantAppName="__adk_agent_builder_assistant";userId="user";currentSession="";userMessage="";messages=[];shouldAutoScroll=!1;isGenerating=!1;chatMessages;markdownComponent=w(g1);agentService=w(el);sessionService=w(tl);agentBuilderService=w($c);constructor(){}ngOnInit(){this.sessionService.createSession(this.userId,this.assistantAppName).subscribe(e=>{this.currentSession=e.id;let A={appName:this.assistantAppName,userId:this.userId,sessionId:e.id,newMessage:{role:"user",parts:[{text:"hello"}]},streaming:!1,stateDelta:{root_directory:`${this.appName}/tmp/${this.appName}`}};this.messages.push({role:"bot",text:"",isLoading:!0}),this.shouldAutoScroll=!0,this.isGenerating=!0,this.agentService.runSse(A).subscribe({next:t=>re(this,null,function*(){if(t.errorCode){let n=this.messages[this.messages.length-1];n.role==="bot"&&n.isLoading&&(n.text=`Error Code: ${t.errorCode}`,n.isLoading=!1,n.isError=!0,this.shouldAutoScroll=!0),this.isGenerating=!1;return}if(t.content){let n="";for(let o of t.content.parts)o.text&&(n+=o.text);if(n){let o=this.messages[this.messages.length-1];o.role==="bot"&&o.isLoading&&(o.text=n,o.isLoading=!1,this.shouldAutoScroll=!0)}}}),error:t=>{console.error("SSE error:",t);let n=this.messages[this.messages.length-1];n.role==="bot"&&n.isLoading&&(n.text="Sorry, I encountered an error. Please try again.",n.isLoading=!1,this.shouldAutoScroll=!0),this.isGenerating=!1},complete:()=>{this.isGenerating=!1}})})}onClosePanel(){this.closePanel.emit()}sendMessage(e){if(e.trim()){this.saveAgent(this.appName),e!="____Something went wrong, please try again"&&this.messages.push({role:"user",text:e});let A=e;this.userMessage="",this.messages.push({role:"bot",text:"",isLoading:!0}),this.shouldAutoScroll=!0,this.isGenerating=!0;let t={appName:this.assistantAppName,userId:this.userId,sessionId:this.currentSession,newMessage:{role:"user",parts:[{text:A}]},streaming:!1};this.agentService.runSse(t).subscribe({next:n=>re(this,null,function*(){if(n.errorCode){let o=this.messages[this.messages.length-1];o.role==="bot"&&o.isLoading&&(o.text=`Error Code: ${n.errorCode}`,o.isLoading=!1,o.isError=!0,this.shouldAutoScroll=!0),this.isGenerating=!1;return}if(n.content){let o="";for(let a of n.content.parts)a.text&&(o+=a.text);if(o){let a=this.messages[this.messages.length-1];a.role==="bot"&&a.isLoading&&(a.text=o,a.isLoading=!1,this.shouldAutoScroll=!0,this.reloadCanvas.emit())}}}),error:n=>{console.error("SSE error:",n);let o=this.messages[this.messages.length-1];o.role==="bot"&&o.isLoading&&(o.text="Sorry, I encountered an error. Please try again.",o.isLoading=!1,this.shouldAutoScroll=!0),this.isGenerating=!1},complete:()=>{this.isGenerating=!1}})}}ngAfterViewChecked(){this.shouldAutoScroll&&(this.scrollToBottom(),this.shouldAutoScroll=!1)}scrollToBottom(){try{this.chatMessages&&setTimeout(()=>{this.chatMessages.nativeElement.scrollTop=this.chatMessages.nativeElement.scrollHeight},50)}catch(e){console.error("Error scrolling to bottom:",e)}}onKeyDown(e){if(e.key==="Enter"){if(e.shiftKey)return;this.userMessage?.trim()&&this.currentSession&&(e.preventDefault(),this.sendMessage(this.userMessage))}}saveAgent(e){let A=this.agentBuilderService.getRootNode();if(!A)return;let t=new FormData,n=this.agentBuilderService.getCurrentAgentToolBoards();a0.generateYamlFile(A,t,e,n),this.agentService.agentBuildTmp(e,t).subscribe(o=>{console.log(o?"save to tmp":"something went wrong")})}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-builder-assistant"]],viewQuery:function(A,t){if(A&1&&Wt(NuA,5),A&2){let n;se(n=le())&&(t.chatMessages=n.first)}},inputs:{isVisible:"isVisible",appName:"appName"},outputs:{closePanel:"closePanel",reloadCanvas:"reloadCanvas"},decls:21,vars:6,consts:[["chatMessages",""],[1,"builder-assistant-panel"],[1,"panel-header"],[1,"panel-title"],["mat-icon-button","","matTooltip","Close assistant panel",1,"close-btn",3,"click"],[1,"panel-content"],[1,"chat-messages"],[1,"assistant-placeholder"],[1,"chat-input-container"],[1,"input-wrapper"],["cdkTextareaAutosize","","cdkAutosizeMinRows","1","cdkAutosizeMaxRows","5","placeholder","Ask Gemini to build your agent",1,"assistant-input-box",3,"ngModelChange","keydown","ngModel","disabled"],["mat-icon-button","","matTooltip","Send message",1,"send-button",3,"click","disabled"],[1,"large-icon"],[3,"ngClass"],[1,"message-card"],[1,"loading-message"],[1,"dots"],[1,"message-text"],[1,"bot-label"],[1,"error-message"],[3,"ngComponentOutlet","ngComponentOutletInputs"]],template:function(A,t){if(A&1){let n=aA();I(0,"div",1)(1,"div",2)(2,"div",3)(3,"mat-icon"),D(4,"auto_awesome"),h(),I(5,"span"),D(6,"Assistant"),h()(),I(7,"button",4),U("click",function(){return t.onClosePanel()}),I(8,"mat-icon"),D(9,"close"),h()()(),I(10,"div",5)(11,"div",6,0),T(13,GuA,7,0,"div",7)(14,zuA,2,0),h(),I(15,"div",8)(16,"div",9)(17,"textarea",10),Ni("ngModelChange",function(a){return L(n),wi(t.userMessage,a)||(t.userMessage=a),G(a)}),U("keydown",function(a){return t.onKeyDown(a)}),h(),I(18,"button",11),U("click",function(){return t.sendMessage(t.userMessage.trim())}),I(19,"mat-icon"),D(20,"send"),h()()()()()()}A&2&&(_A("hidden",!t.isVisible),Q(13),O(t.messages.length===0?13:14),Q(4),Ri("ngModel",t.userMessage),H("disabled",t.isGenerating),Q(),H("disabled",!t.userMessage.trim()||t.isGenerating))},dependencies:[li,Vl,Kc,fn,Gn,Kn,Ho,zt,yi,rn,qf,YI,P3],styles:[".builder-assistant-panel[_ngcontent-%COMP%]{position:fixed;right:0;top:72px;width:400px;height:calc(100vh - 72px);background-color:var(--mat-sys-surface-container);border-left:1px solid var(--mat-sys-outline-variant);box-shadow:-2px 0 10px #0006;display:flex;flex-direction:column;transition:transform .3s ease}.builder-assistant-panel.hidden[_ngcontent-%COMP%]{transform:translate(100%)}.panel-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--mat-sys-outline-variant)}.panel-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-weight:400;font-size:16px;color:var(--mat-sys-on-surface);font-family:Google Sans,Helvetica Neue,sans-serif}.panel-title[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);font-size:20px;width:20px;height:20px}.close-btn[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant)}.close-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-on-surface)}.panel-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden}.assistant-placeholder[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:300px;color:var(--mat-sys-on-surface-variant)}.assistant-placeholder[_ngcontent-%COMP%] .large-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px;margin-bottom:16px;color:var(--mat-sys-primary)}.assistant-placeholder[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 8px;font-size:20px;font-weight:500;color:var(--mat-sys-on-surface);font-family:Google Sans,Helvetica Neue,sans-serif}.assistant-placeholder[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:14px;line-height:1.5;color:var(--mat-sys-on-surface-variant)}.chat-messages[_ngcontent-%COMP%]{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column}.chat-input-container[_ngcontent-%COMP%]{padding:16px 20px 20px;border-top:none}.input-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:50px;padding:10px 6px 10px 18px;gap:8px}.assistant-input-box[_ngcontent-%COMP%]{flex:1;color:var(--mat-sys-on-surface);background-color:transparent;border:none;padding:0;resize:none;overflow:hidden;font-family:Google Sans,Helvetica Neue,sans-serif;font-size:14px;line-height:20px;min-height:20px;max-height:120px}.assistant-input-box[_ngcontent-%COMP%]::placeholder{color:var(--mat-sys-on-surface-variant);font-size:14px}.assistant-input-box[_ngcontent-%COMP%]:focus{outline:none}.assistant-input-box[_ngcontent-%COMP%]::-webkit-scrollbar{width:4px}.assistant-input-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background-color:var(--mat-sys-outline);border-radius:4px}.send-button[_ngcontent-%COMP%]{color:var(--mat-sys-primary);width:36px;height:36px;min-width:36px;flex-shrink:0;margin:0;padding:0}.send-button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-outline)}.send-button[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--mat-sys-primary);border-radius:50%}.send-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.message-card[_ngcontent-%COMP%]{padding:10px 16px;margin:6px 0;font-size:14px;font-weight:400;position:relative;display:block;box-shadow:none;line-height:1.5;width:100%}.user-message[_ngcontent-%COMP%]{display:block;width:100%;margin-bottom:12px}.user-message[_ngcontent-%COMP%] .message-card[_ngcontent-%COMP%]{border:1px solid var(--mat-sys-outline-variant);border-radius:4px;color:var(--mat-sys-on-surface);padding:8px 12px}.bot-message[_ngcontent-%COMP%]{display:block;width:100%;margin-bottom:0}.bot-message[_ngcontent-%COMP%] .message-card[_ngcontent-%COMP%]{border:none;border-radius:0;color:var(--mat-sys-on-surface);padding:0;margin:0}.bot-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:var(--mat-sys-on-surface-variant);margin-bottom:8px;font-family:Google Sans,Helvetica Neue,sans-serif}.error-message[_ngcontent-%COMP%]{color:var(--mat-app-warn, #d32f2f);font-family:Google Sans,Helvetica Neue,sans-serif;font-size:14px;white-space:pre-line;word-break:break-word;padding:8px 12px}.message-text[_ngcontent-%COMP%]{white-space:pre-line;word-break:break-word;overflow-wrap:break-word;font-family:Google Sans,Helvetica Neue,sans-serif}.message-text[_ngcontent-%COMP%] p{margin:0;line-height:1.4}.message-text[_ngcontent-%COMP%] p:first-child{margin-top:0}.message-text[_ngcontent-%COMP%] p:last-child{margin-bottom:0}.message-text[_ngcontent-%COMP%] ul, .message-text[_ngcontent-%COMP%] ol{margin:0;padding-left:1.5em}.message-text[_ngcontent-%COMP%] li{margin:0}.message-text[_ngcontent-%COMP%] code{padding:2px 4px;border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em}.message-text[_ngcontent-%COMP%] pre{padding:8px 12px;border-radius:6px;overflow-x:auto;margin:.5em 0}.message-text[_ngcontent-%COMP%] pre code{padding:0}.message-text[_ngcontent-%COMP%] blockquote{border-left:3px solid var(--mat-sys-primary);padding-left:12px;margin:.5em 0;font-style:italic;color:var(--mat-sys-on-surface-variant)}.message-text[_ngcontent-%COMP%] strong{font-weight:600}.message-text[_ngcontent-%COMP%] em{font-style:italic}.loading-message[_ngcontent-%COMP%]{display:flex;align-items:center;color:var(--mat-sys-on-surface-variant);font-family:Google Sans,Helvetica Neue,sans-serif;padding:0;margin:0}.loading-message[_ngcontent-%COMP%] .dots[_ngcontent-%COMP%]{font-size:24px;letter-spacing:-12px;animation:_ngcontent-%COMP%_pulse 1.4s ease-in-out infinite;display:inline-block;line-height:1}@keyframes _ngcontent-%COMP%_pulse{0%,to{opacity:.3}50%{opacity:1}}"]})};var dE=class i{constructor(e,A){this.http=e;this.zone=A}apiServerDomain=Rr.getApiServerBaseUrl();_currentApp=new gi("");currentApp=this._currentApp.asObservable();isLoading=new gi(!1);getApp(){return this.currentApp}setApp(e){this._currentApp.next(e)}getLoadingState(){return this.isLoading}runSse(e){let A=this.apiServerDomain+"/run_sse";return this.isLoading.next(!0),new Fi(t=>{let n=this,o=new AbortController,a=o.signal,r;return fetch(A,{method:"POST",headers:{"Content-Type":"application/json",Accept:"text/event-stream"},body:JSON.stringify(e),signal:a}).then(s=>{r=s.body?.getReader();let l=new TextDecoder("utf-8"),g="",C=()=>{r?.read().then(({done:d,value:B})=>{if(this.isLoading.next(!0),d)return this.isLoading.next(!1),t.complete();let u=l.decode(B,{stream:!0});g+=u;try{g.split(/\r?\n/).filter(f=>f.startsWith("data:")).forEach(f=>{let m=f.replace(/^data:\s*/,""),v=JSON.parse(m);n.zone.run(()=>t.next(v))}),g=""}catch(E){E instanceof SyntaxError&&C()}C()}).catch(d=>{a.aborted||n.zone.run(()=>t.error(d))})};C()}).catch(s=>{a.aborted||n.zone.run(()=>t.error(s))}),()=>{o.abort(),r?.cancel(),this.isLoading.next(!1)}})}listApps(){if(this.apiServerDomain!=null){let e=this.apiServerDomain+"/list-apps?relative_path=./";return this.http.get(e)}return new Fi}getVersion(){if(this.apiServerDomain!=null){let e=this.apiServerDomain+"/version";return this.http.get(e)}return new Fi}agentBuild(e,A){if(this.apiServerDomain!=null){let t=this.apiServerDomain+`/dev/apps/${e}/builder/save`;return this.http.post(t,A)}return new Fi}agentBuildTmp(e,A){if(this.apiServerDomain!=null){let t=this.apiServerDomain+`/dev/apps/${e}/builder/save?tmp=true`;return this.http.post(t,A)}return new Fi}getAgentBuilder(e){if(this.apiServerDomain!=null){let A=this.apiServerDomain+`/dev/apps/${e}/builder?ts=${Date.now()}`;return this.http.get(A,{responseType:"text"})}return new Fi}getAgentBuilderTmp(e){if(this.apiServerDomain!=null){let A=this.apiServerDomain+`/dev/apps/${e}/builder?ts=${Date.now()}&tmp=true`;return this.http.get(A,{responseType:"text"})}return new Fi}getSubAgentBuilder(e,A){if(this.apiServerDomain!=null){let t=this.apiServerDomain+`/dev/apps/${e}/builder?ts=${Date.now()}&file_path=${A}&tmp=true`;return this.http.get(t,{responseType:"text"})}return new Fi}agentChangeCancel(e){if(this.apiServerDomain!=null){let A=this.apiServerDomain+`/dev/apps/${e}/builder/cancel`;return this.http.post(A,{})}return new Fi}getAppInfo(e){if(this.apiServerDomain!=null){let A=this.apiServerDomain+`/dev/apps/${e}/build_graph`;return this.http.get(A)}return new Fi}getAppGraphImage(e,A,t){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/dev/apps/${e}/build_graph_image`,o={dark_mode:A};return t&&(o.node=t),this.http.get(n,{params:o})}return new Fi}static \u0275fac=function(A){return new(A||i)(Wo(Mr),Wo(We))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var juA=["edgeLabelWrapper"],VuA=["edgeLabel",""];function quA(i,e){i&1&&dn(0)}function WuA(i,e){if(i&1&&(Et(),I(0,"foreignObject"),hr(),I(1,"div",1,0),kt(3,quA,1,0,"ng-container",2),h()()),i&2){let A=p(2),t=p();ie("x",t.edgeLabelPoint().x)("y",t.edgeLabelPoint().y)("width",A.size().width)("height",A.size().height),Q(3),H("ngTemplateOutlet",e)("ngTemplateOutletContext",t.getLabelContext())}}function ZuA(i,e){if(i&1&&T(0,WuA,4,6,":svg:foreignObject"),i&2){let A,t=p(2);O((A=t.htmlTemplate())?0:-1,A)}}function XuA(i,e){if(i&1&&(Et(),I(0,"foreignObject"),hr(),I(1,"div",1,0),D(3),h()()),i&2){let A=p(),t=p();ie("x",t.edgeLabelPoint().x)("y",t.edgeLabelPoint().y)("width",A.size().width)("height",A.size().height),Q(),kN(t.edgeLabelStyle()),Q(2),Ee(" ",A.edgeLabel.text," ")}}function $uA(i,e){if(i&1&&(T(0,ZuA,1,1),T(1,XuA,4,7,":svg:foreignObject")),i&2){let A=e,t=p();O(A.edgeLabel.type==="html-template"&&t.htmlTemplate()?0:-1),Q(),O(A.edgeLabel.type==="default"?1:-1)}}var A4A=["edge",""];function e4A(i,e){if(i&1){let A=aA();Et(),lA(0,"path",0),I(1,"path",1),U("click",function(){L(A);let n=p();return n.select(),G(n.pull())}),h()}if(i&2){let A=p();_A("edge_selected",A.model().selected()),ie("d",A.model().path().path)("marker-start",A.model().markerStartUrl())("marker-end",A.model().markerEndUrl()),Q(),ie("d",A.model().path().path)}}function t4A(i,e){if(i&1&&dn(0,2),i&2){let A=p(2);H("ngTemplateOutlet",e)("ngTemplateOutletContext",A.model().context)("ngTemplateOutletInjector",A.injector)}}function i4A(i,e){if(i&1&&T(0,t4A,1,3,"ng-container",2),i&2){let A,t=p();O((A=t.edgeTemplate())?0:-1,A)}}function n4A(i,e){if(i&1&&(Et(),lA(0,"g",3)),i&2){let A=p(),t=p();H("model",A)("point",e)("edgeModel",t.model())("htmlTemplate",t.edgeLabelHtmlTemplate())}}function o4A(i,e){if(i&1&&T(0,n4A,1,4,":svg:g",3),i&2){let A,t=p();O((A=(A=t.model().path().labelPoints)==null?null:A.start)?0:-1,A)}}function a4A(i,e){if(i&1&&(Et(),lA(0,"g",3)),i&2){let A=p(),t=p();H("model",A)("point",e)("edgeModel",t.model())("htmlTemplate",t.edgeLabelHtmlTemplate())}}function r4A(i,e){if(i&1&&T(0,a4A,1,4,":svg:g",3),i&2){let A,t=p();O((A=(A=t.model().path().labelPoints)==null?null:A.center)?0:-1,A)}}function s4A(i,e){if(i&1&&(Et(),lA(0,"g",3)),i&2){let A=p(),t=p();H("model",A)("point",e)("edgeModel",t.model())("htmlTemplate",t.edgeLabelHtmlTemplate())}}function l4A(i,e){if(i&1&&T(0,s4A,1,4,":svg:g",3),i&2){let A,t=p();O((A=(A=t.model().path().labelPoints)==null?null:A.end)?0:-1,A)}}function g4A(i,e){if(i&1){let A=aA();Et(),I(0,"circle",5),U("pointerStart",function(n){L(A);let o=p(2);return G(o.startReconnection(n,o.model().targetHandle()))}),h()}if(i&2){let A=p(2);ie("cx",A.model().sourceHandle().pointAbsolute().x)("cy",A.model().sourceHandle().pointAbsolute().y)}}function c4A(i,e){if(i&1){let A=aA();Et(),I(0,"circle",5),U("pointerStart",function(n){L(A);let o=p(2);return G(o.startReconnection(n,o.model().sourceHandle()))}),h()}if(i&2){let A=p(2);ie("cx",A.model().targetHandle().pointAbsolute().x)("cy",A.model().targetHandle().pointAbsolute().y)}}function C4A(i,e){if(i&1&&(T(0,g4A,1,2,":svg:circle",4),T(1,c4A,1,2,":svg:circle",4)),i&2){let A=p();O(A.model().reconnectable===!0||A.model().reconnectable==="source"?0:-1),Q(),O(A.model().reconnectable===!0||A.model().reconnectable==="target"?1:-1)}}var Xx=["*"],d4A=["resizer"],I4A=["resizable",""];function B4A(i,e){if(i&1){let A=aA();Et(),I(0,"g")(1,"line",1),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("top",n))}),h(),I(2,"line",2),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("left",n))}),h(),I(3,"line",3),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("bottom",n))}),h(),I(4,"line",4),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("right",n))}),h(),I(5,"rect",5),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("top-left",n))}),h(),I(6,"rect",6),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("top-right",n))}),h(),I(7,"rect",7),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("bottom-left",n))}),h(),I(8,"rect",8),U("pointerStart",function(n){L(A);let o=p();return G(o.startResize("bottom-right",n))}),h()()}if(i&2){let A=p();Q(),ie("x1",A.lineGap)("y1",-A.gap())("x2",A.model.size().width-A.lineGap)("y2",-A.gap())("stroke",A.resizerColor()),Q(),ie("x1",-A.gap())("y1",A.lineGap)("x2",-A.gap())("y2",A.model.size().height-A.lineGap)("stroke",A.resizerColor()),Q(),ie("x1",A.lineGap)("y1",A.model.size().height+A.gap())("x2",A.model.size().width-A.lineGap)("y2",A.model.size().height+A.gap())("stroke",A.resizerColor()),Q(),ie("x1",A.model.size().width+A.gap())("y1",A.lineGap)("x2",A.model.size().width+A.gap())("y2",A.model.size().height-A.lineGap)("stroke",A.resizerColor()),Q(),ie("x",-(A.handleSize/2)-A.gap())("y",-(A.handleSize/2)-A.gap())("width",A.handleSize)("height",A.handleSize)("fill",A.resizerColor()),Q(),ie("x",A.model.size().width-A.handleSize/2+A.gap())("y",-(A.handleSize/2)-A.gap())("width",A.handleSize)("height",A.handleSize)("fill",A.resizerColor()),Q(),ie("x",-(A.handleSize/2)-A.gap())("y",A.model.size().height-A.handleSize/2+A.gap())("width",A.handleSize)("height",A.handleSize)("fill",A.resizerColor()),Q(),ie("x",A.model.size().width-A.handleSize/2+A.gap())("y",A.model.size().height-A.handleSize/2+A.gap())("width",A.handleSize)("height",A.handleSize)("fill",A.resizerColor())}}var h4A=["node",""];function E4A(i,e){if(i&1){let A=aA();Et(),I(0,"foreignObject",3),U("click",function(){L(A);let n=p();return n.pullNode(),G(n.selectNode())}),hr(),I(1,"default-node",4),lA(2,"div",5)(3,"handle",6)(4,"handle",7),h()()}if(i&2){let A=p();ie("width",A.model().foWidth())("height",A.model().foHeight()),Q(),ft("width",A.model().styleWidth())("height",A.model().styleHeight())("max-width",A.model().styleWidth())("max-height",A.model().styleHeight()),H("selected",A.model().selected()),Q(),H("outerHTML",A.model().text(),Fc)}}function Q4A(i,e){if(i&1){let A=aA();Et(),I(0,"foreignObject",3),U("click",function(){L(A);let n=p();return G(n.pullNode())}),hr(),I(1,"div",8),dn(2,9),h()()}if(i&2){let A=p();ie("width",A.model().foWidth())("height",A.model().foHeight()),Q(),ft("width",A.model().styleWidth())("height",A.model().styleHeight()),Q(),H("ngTemplateOutlet",A.nodeTemplate()??null)("ngTemplateOutletContext",A.model().context)("ngTemplateOutletInjector",A.injector)}}function u4A(i,e){if(i&1){let A=aA();Et(),I(0,"g",10),U("click",function(){L(A);let n=p();return G(n.pullNode())}),dn(1,9),h()}if(i&2){let A=p();Q(),H("ngTemplateOutlet",A.nodeSvgTemplate()??null)("ngTemplateOutletContext",A.model().context)("ngTemplateOutletInjector",A.injector)}}function p4A(i,e){if(i&1){let A=aA();Et(),I(0,"foreignObject",3),U("click",function(){L(A);let n=p(2);return G(n.pullNode())}),hr(),I(1,"div",8),dn(2,11),h()()}if(i&2){let A=p(2);ie("width",A.model().foWidth())("height",A.model().foHeight()),Q(),ft("width",A.model().styleWidth())("height",A.model().styleHeight()),Q(),H("ngComponentOutlet",e)("ngComponentOutletInputs",A.model().componentTypeInputs)("ngComponentOutletInjector",A.injector)}}function f4A(i,e){if(i&1&&(T(0,p4A,3,9,":svg:foreignObject",0),mt(1,"async")),i&2){let A,t=p();O((A=Ft(1,1,t.model().componentInstance$))?0:-1,A)}}function m4A(i,e){if(i&1){let A=aA();Et(),I(0,"rect",12),U("click",function(){L(A);let n=p();return n.pullNode(),G(n.selectNode())}),h()}if(i&2){let A=p();ft("stroke",A.model().color())("fill",A.model().color()),_A("default-group-node_selected",A.model().selected()),H("resizable",A.model().resizable())("gap",3)("resizerColor",A.model().color()),ie("width",A.model().size().width)("height",A.model().size().height)}}function w4A(i,e){if(i&1){let A=aA();Et(),I(0,"g",10),U("click",function(){L(A);let n=p();return G(n.pullNode())}),dn(1,9),h()}if(i&2){let A=p();Q(),H("ngTemplateOutlet",A.groupNodeTemplate()??null)("ngTemplateOutletContext",A.model().context)("ngTemplateOutletInjector",A.injector)}}function y4A(i,e){}function D4A(i,e){if(i&1&&kt(0,y4A,0,0,"ng-template",13),i&2){let A=p();H("ngTemplateOutlet",A)}}function v4A(i,e){if(i&1&&T(0,D4A,1,1,null,13),i&2){let A=p();O(A.model().resizable()?0:-1)}}function b4A(i,e){if(i&1){let A=aA();Et(),I(0,"circle",17),U("pointerStart",function(n){L(A);let o=p().$implicit,a=p();return G(a.startConnection(n,o))})("pointerEnd",function(){L(A);let n=p(2);return G(n.endConnection())}),h()}if(i&2){let A=p().$implicit;ie("cx",A.hostOffset().x)("cy",A.hostOffset().y)("stroke-width",A.strokeWidth)}}function M4A(i,e){if(i&1){let A=aA();Et(),I(0,"g",18),U("pointerStart",function(n){L(A);let o=p().$implicit,a=p();return G(a.startConnection(n,o))})("pointerEnd",function(){L(A);let n=p(2);return G(n.endConnection())}),h()}if(i&2){let A=p().$implicit;H("handleSizeController",A)}}function S4A(i,e){i&1&&(Et(),dn(0))}function k4A(i,e){if(i&1){let A=aA();Et(),I(0,"g",18),U("pointerStart",function(n){L(A);let o=p().$implicit,a=p();return G(a.startConnection(n,o))})("pointerEnd",function(){L(A);let n=p(2);return G(n.endConnection())}),kt(1,S4A,1,0,"ng-container",19),h()}if(i&2){let A=p().$implicit;H("handleSizeController",A),Q(),H("ngTemplateOutlet",A.template)("ngTemplateOutletContext",A.templateContext)}}function _4A(i,e){if(i&1){let A=aA();Et(),I(0,"circle",20),U("pointerEnd",function(){L(A);let n=p().$implicit,o=p();return o.endConnection(),G(o.resetValidateConnection(n))})("pointerOver",function(){L(A);let n=p().$implicit,o=p();return G(o.validateConnection(n))})("pointerOut",function(){L(A);let n=p().$implicit,o=p();return G(o.resetValidateConnection(n))}),h()}if(i&2){let A=p().$implicit,t=p();ie("r",t.model().magnetRadius)("cx",A.hostOffset().x)("cy",A.hostOffset().y)}}function x4A(i,e){if(i&1&&(T(0,b4A,1,3,":svg:circle",14),T(1,M4A,1,1,":svg:g",15),T(2,k4A,2,3,":svg:g",15),T(3,_4A,1,3,":svg:circle",16)),i&2){let A=e.$implicit,t=p();O(A.template===void 0?0:-1),Q(),O(A.template===null?1:-1),Q(),O(A.template?2:-1),Q(),O(t.showMagnet()?3:-1)}}function R4A(i,e){if(i&1&&(Et(),I(0,"foreignObject"),hr(),dn(1,13),h()),i&2){let A=e.$implicit;ie("width",A.size().width)("height",A.size().height)("transform",A.transform()),Q(),H("ngTemplateOutlet",A.template())}}var N4A=["connection",""];function F4A(i,e){if(i&1&&(Et(),lA(0,"path",0)),i&2){let A=p(2);ie("d",e)("marker-end",A.markerUrl())("stroke",A.defaultColor)}}function L4A(i,e){if(i&1&&T(0,F4A,1,3,":svg:path",0),i&2){let A,t=p();O((A=t.path())?0:-1,A)}}function G4A(i,e){i&1&&dn(0)}function K4A(i,e){if(i&1&&kt(0,G4A,1,0,"ng-container",1),i&2){let A=p(2);H("ngTemplateOutlet",e)("ngTemplateOutletContext",A.getContext())}}function U4A(i,e){if(i&1&&T(0,K4A,1,2,"ng-container"),i&2){let A,t=p();O((A=t.template())?0:-1,A)}}var T4A=["background",""];function O4A(i,e){if(i&1&&(Et(),Ln(0,"pattern",0),$n(1,"circle"),Xn(),$n(2,"rect",1)),i&2){let A=p();ie("id",A.patternId)("x",A.x())("y",A.y())("width",A.scaledGap())("height",A.scaledGap()),Q(),ie("cx",A.patternSize())("cy",A.patternSize())("r",A.patternSize())("fill",A.patternColor()),Q(),ie("fill",A.patternUrl)}}function J4A(i,e){if(i&1&&(Et(),Ln(0,"pattern",0),$n(1,"image"),Xn(),$n(2,"rect",1)),i&2){let A=p(2);ie("id",A.patternId)("x",A.imageX())("y",A.imageY())("width",A.scaledImageWidth())("height",A.scaledImageHeight()),Q(),ie("href",A.bgImageSrc())("width",A.scaledImageWidth())("height",A.scaledImageHeight()),Q(),ie("fill",A.patternUrl)}}function Y4A(i,e){if(i&1&&(Et(),$n(0,"image")),i&2){let A=p(2);ie("x",A.imageX())("y",A.imageY())("width",A.scaledImageWidth())("height",A.scaledImageHeight())("href",A.bgImageSrc())}}function H4A(i,e){if(i&1&&(T(0,J4A,3,9),T(1,Y4A,1,5,":svg:image")),i&2){let A=p();O(A.repeated()?0:-1),Q(),O(A.repeated()?-1:1)}}var z4A=["flowDefs",""];function P4A(i,e){if(i&1&&(Et(),$n(0,"polyline",3)),i&2){let A=p().$implicit,t=p();ft("stroke",A.value.color??t.defaultColor)("stroke-width",A.value.strokeWidth??2)("fill",A.value.color??t.defaultColor)}}function j4A(i,e){if(i&1&&(Et(),$n(0,"polyline",4)),i&2){let A=p().$implicit,t=p();ft("stroke",A.value.color??t.defaultColor)("stroke-width",A.value.strokeWidth??2)}}function V4A(i,e){if(i&1&&(Et(),Ln(0,"marker",0),T(1,P4A,1,6,":svg:polyline",1),T(2,j4A,1,4,":svg:polyline",2),Xn()),i&2){let A=e.$implicit;ie("id",A.key)("markerWidth",A.value.width??16.5)("markerHeight",A.value.height??16.5)("orient",A.value.orient??"auto-start-reverse")("markerUnits",A.value.markerUnits??"userSpaceOnUse"),Q(),O(A.value.type==="arrow-closed"||!A.value.type?1:-1),Q(),O(A.value.type==="arrow"?2:-1)}}var q4A=["previewFlow",""],W4A=["alignmentHelper",""];function Z4A(i,e){if(i&1&&(Et(),$n(0,"line")),i&2){let A=e.$implicit,t=p(3);ie("stroke",t.lineColor())("stroke-dasharray",A.isCenter?4:null)("x1",A.x)("y1",A.y)("x2",A.x2)("y2",A.y2)}}function X4A(i,e){i&1&&ke(0,Z4A,1,6,":svg:line",null,Ja),i&2&&_e(e.lines)}function $4A(i,e){if(i&1&&T(0,X4A,2,0),i&2){let A,t=p();O((A=t.intersections())?0:-1,A)}}function ApA(i,e){i&1&&(Et(),lA(0,"g",8))}function epA(i,e){if(i&1&&(Et(),lA(0,"g",9)),i&2){let A=p();H("tolerance",A.tolerance)("lineColor",A.lineColor)}}function tpA(i,e){i&1&&T(0,ApA,1,0,":svg:g",8)(1,epA,1,2,":svg:g",9),i&2&&O(e===!0?0:1)}function ipA(i,e){if(i&1&&(Et(),lA(0,"g",10)),i&2){let A,t=e.$implicit,n=p(2);H("model",t)("groupNodeTemplate",(A=n.groupNodeTemplateDirective())==null?null:A.templateRef),ie("transform",t.pointTransform())}}function npA(i,e){if(i&1&&(Et(),lA(0,"g",11)),i&2){let A,t,n=e.$implicit,o=p(2);H("model",n)("edgeTemplate",(A=o.edgeTemplateDirective())==null?null:A.templateRef)("edgeLabelHtmlTemplate",(t=o.edgeLabelHtmlDirective())==null?null:t.templateRef)}}function opA(i,e){if(i&1&&(Et(),lA(0,"g",12)),i&2){let A,t,n=e.$implicit,o=p(2);H("model",n)("nodeTemplate",(A=o.nodeTemplateDirective())==null?null:A.templateRef)("nodeSvgTemplate",(t=o.nodeSvgTemplateDirective())==null?null:t.templateRef),ie("transform",n.pointTransform())}}function apA(i,e){if(i&1&&(ke(0,ipA,1,3,":svg:g",10,wI().trackNodes,!0),ke(2,npA,1,3,":svg:g",11,wI().trackEdges,!0),ke(4,opA,1,4,":svg:g",12,wI().trackNodes,!0)),i&2){let A=p();_e(A.groups()),Q(2),_e(A.edgeModels()),Q(2),_e(A.nonGroups())}}function rpA(i,e){if(i&1&&(Et(),lA(0,"g",11)),i&2){let A,t,n=e.$implicit,o=p(2);H("model",n)("edgeTemplate",(A=o.edgeTemplateDirective())==null?null:A.templateRef)("edgeLabelHtmlTemplate",(t=o.edgeLabelHtmlDirective())==null?null:t.templateRef)}}function spA(i,e){if(i&1&&(Et(),lA(0,"g",13)),i&2){let A,t,n,o=e.$implicit,a=p(2);H("model",o)("nodeTemplate",(A=a.nodeTemplateDirective())==null?null:A.templateRef)("nodeSvgTemplate",(t=a.nodeSvgTemplateDirective())==null?null:t.templateRef)("groupNodeTemplate",(n=a.groupNodeTemplateDirective())==null?null:n.templateRef),ie("transform",o.pointTransform())}}function lpA(i,e){if(i&1&&(ke(0,rpA,1,3,":svg:g",11,wI().trackEdges,!0),ke(2,spA,1,5,":svg:g",13,wI().trackNodes,!0)),i&2){let A=p();_e(A.edgeModels()),Q(2),_e(A.nodeModels())}}function gpA(i,e){i&1&&(Et(),dn(0,6)),i&2&&H("ngTemplateOutlet",e.template())}function cpA(i,e){if(i&1&&lA(0,"canvas",7),i&2){let A=p();H("width",A.flowWidth())("height",A.flowHeight())}}var CpA=["customTemplateEdge",""],dpA=(i,e)=>{let A=Math.max(0,Math.min(i.x+i.width,e.x+e.width)-Math.max(i.x,e.x)),t=Math.max(0,Math.min(i.y+i.height,e.y+e.height)-Math.max(i.y,e.y));return Math.ceil(A*t)};function sZ(i){if(i.length===0)return{x:0,y:0,width:0,height:0};let e={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return i.forEach(A=>{let t=BpA(A);e=EpA(e,t)}),hpA(e)}function IpA(i,e,A){let t=e.find(o=>o.rawNode.id===i);if(!t)return[];let n=v5(t);return e.filter(o=>{if(o.rawNode.id===i)return!1;let a=dpA(v5(o),n);return A?.partially?a>0:a>=n.width*n.height})}function BpA(i){return{x:i.point().x,y:i.point().y,x2:i.point().x+i.size().width,y2:i.point().y+i.size().height}}function v5(i){return{x:i.globalPoint().x,y:i.globalPoint().y,width:i.width(),height:i.height()}}function hpA({x:i,y:e,x2:A,y2:t}){return{x:i,y:e,width:A-i,height:t-e}}function EpA(i,e){return{x:Math.min(i.x,e.x),y:Math.min(i.y,e.y),x2:Math.max(i.x2,e.x2),y2:Math.max(i.y2,e.y2)}}var b5=class{constructor(e){this.settings=e,this.curve=e.curve??"bezier",this.type=e.type??"default",this.mode=e.mode??"strict";let A=this.getValidators(e);this.validator=t=>A.every(n=>n(t))}getValidators(e){let A=[];return A.push(QpA),this.mode==="loose"&&A.push(upA),e.validator&&A.push(e.validator),A}},QpA=i=>i.source!==i.target,upA=i=>i.sourceHandle!==void 0&&i.targetHandle!==void 0;function BE(i){return i.split("").reduce((e,A)=>(e=(e<<5)-e+A.charCodeAt(0),e&e),0)}var pl=(()=>{class i{constructor(){this.nodes=mA([],{equal:(A,t)=>!A.length&&!t.length?!0:A===t}),this.rawNodes=ye(()=>this.nodes().map(A=>A.rawNode)),this.edges=mA([],{equal:(A,t)=>!A.length&&!t.length?!0:A===t}),this.rawEdges=ye(()=>this.edges().map(A=>A.edge)),this.validEdges=ye(()=>{let A=this.nodes();return this.edges().filter(t=>A.includes(t.source())&&A.includes(t.target()))}),this.connection=mA(new b5({})),this.markers=ye(()=>{let A=new Map;this.validEdges().forEach(n=>{if(n.edge.markers?.start){let o=BE(JSON.stringify(n.edge.markers.start));A.set(o,n.edge.markers.start)}if(n.edge.markers?.end){let o=BE(JSON.stringify(n.edge.markers.end));A.set(o,n.edge.markers.end)}});let t=this.connection().settings.marker;if(t){let n=BE(JSON.stringify(t));A.set(n,t)}return A}),this.entities=ye(()=>[...this.nodes(),...this.edges()]),this.minimap=mA(null)}getNode(A){return this.nodes().find(({rawNode:t})=>t.id===A)}getDetachedEdges(){return this.edges().filter(A=>A.detached())}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})();function ppA(i,e,A,t,n,o){let a=e/(i.width*(1+o)),r=A/(i.height*(1+o)),s=Math.min(a,r),l=fpA(s,t,n),g=i.x+i.width/2,C=i.y+i.height/2,d=e/2-g*l,B=A/2-C*l;return{x:d,y:B,zoom:l}}function fpA(i,e=0,A=1){return Math.min(Math.max(i,e),A)}function mpA(i,e,A){let t=i.zoom;return{x:-i.x/t,y:-i.y/t,width:e/t,height:A/t}}function wpA(i,e,A,t){let n=mpA(e,A,t);return!(i.x+i.widthn.x+n.width||i.y+i.heightn.y+n.height)}var ypA={detachedGroupsLayer:!1,virtualization:!1,virtualizationZoomThreshold:.5,lazyLoadTrigger:"immediate"},as=(()=>{class i{constructor(){this.entitiesSelectable=mA(!0),this.elevateNodesOnSelect=mA(!0),this.elevateEdgesOnSelect=mA(!0),this.view=mA([400,400]),this.computedFlowWidth=mA(0),this.computedFlowHeight=mA(0),this.minZoom=mA(.5),this.maxZoom=mA(3),this.background=mA({type:"solid",color:"#fff"}),this.snapGrid=mA([1,1]),this.optimization=mA(ypA)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),lI=(()=>{class i{constructor(){this.entitiesService=w(pl),this.flowSettingsService=w(as),this.writableViewport=mA({changeType:"initial",state:i.getDefaultViewport(),duration:0}),this.readableViewport=mA(i.getDefaultViewport()),this.viewportChangeEnd$=new ne}static getDefaultViewport(){return{zoom:1,x:0,y:0}}fitView(A={padding:.1,duration:0,nodes:[]}){let t=this.getBoundsNodes(A.nodes??[]),n=ppA(sZ(t),this.flowSettingsService.computedFlowWidth(),this.flowSettingsService.computedFlowHeight(),this.flowSettingsService.minZoom(),this.flowSettingsService.maxZoom(),A.padding??.1),o=A.duration??0;this.writableViewport.set({changeType:"absolute",state:n,duration:o})}triggerViewportChangeEvent(A){A==="end"&&this.viewportChangeEnd$.next()}getBoundsNodes(A){return A?.length?A.map(t=>this.entitiesService.nodes().find(({rawNode:n})=>n.id===t)).filter(t=>!!t):this.entitiesService.nodes()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})();function LC(i){return i!==void 0}var F5=(()=>{class i{constructor(){this.element=w(ce).nativeElement}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["svg","rootSvgRef",""]]})}}return i})();function VW(){let i=window.navigator.userAgent.toLowerCase(),e=/(macintosh|macintel|macppc|mac68k|macos)/i,A=/(win32|win64|windows|wince)/i,t=/(iphone|ipad|ipod)/i,n=null;return e.test(i)?n="macos":t.test(i)?n="ios":A.test(i)?n="windows":/android/.test(i)?n="android":!n&&/linux/.test(i)&&(n="linux"),n}var Jx=(()=>{class i{constructor(){this.actions=mA({multiSelection:[VW()==="macos"?"MetaLeft":"ControlLeft",VW()==="macos"?"MetaRight":"ControlRight"]}),this.actionsActive={multiSelection:!1},Fo(this.actions).pipe(Mi(()=>Vi(Nc(document,"keydown").pipe(mi(A=>{for(let t in this.actions())(this.actions()[t]??[]).includes(A.code)&&(this.actionsActive[t]=!0)})),Nc(document,"keyup").pipe(mi(A=>{for(let t in this.actions())(this.actions()[t]??[]).includes(A.code)&&(this.actionsActive[t]=!1)})))),xr()).subscribe()}setShortcuts(A){this.actions.update(t=>P(P({},t),A))}isActiveAction(A){return this.actionsActive[A]}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),yp=(()=>{class i{constructor(){this.flowEntitiesService=w(pl),this.keyboardService=w(Jx),this.viewport$=new ne,this.resetSelection=this.viewport$.pipe(mi(({start:A,end:t,target:n})=>{if(A&&t&&n){let o=i.delta,a=Math.abs(t.x-A.x),r=Math.abs(t.y-A.y),s=at.selected.set(!1)),A&&A.selected.set(!0))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),Ux=(()=>{class i{constructor(){this.rootSvg=w(F5).element,this.host=w(ce).nativeElement,this.selectionService=w(yp),this.viewportService=w(lI),this.flowSettingsService=w(as),this.zone=w(We),this.rootSvgSelection=zs(this.rootSvg),this.transform=mA(""),this.viewportForSelection={},this.manualViewportChangeEffect=Fn(()=>{let A=this.viewportService.writableViewport(),t=A.state;if(A.changeType!=="initial"){if(LC(t.zoom)&&!LC(t.x)&&!LC(t.y)){this.rootSvgSelection.transition().duration(A.duration).call(this.zoomBehavior.scaleTo,t.zoom);return}if(LC(t.x)&&LC(t.y)&&!LC(t.zoom)){let n=wa(this.viewportService.readableViewport).zoom;this.rootSvgSelection.transition().duration(A.duration).call(this.zoomBehavior.transform,zD.translate(t.x,t.y).scale(n));return}if(LC(t.x)&&LC(t.y)&&LC(t.zoom)){this.rootSvgSelection.transition().duration(A.duration).call(this.zoomBehavior.transform,zD.translate(t.x,t.y).scale(t.zoom));return}}},{allowSignalWrites:!0}),this.handleZoom=({transform:A})=>{this.viewportService.readableViewport.set(Tx(A)),this.transform.set(A.toString())},this.handleZoomStart=({transform:A})=>{this.viewportForSelection={start:Tx(A)}},this.handleZoomEnd=({transform:A,sourceEvent:t})=>{this.zone.run(()=>{this.viewportForSelection=$A(P({},this.viewportForSelection),{end:Tx(A),target:DpA(t)}),this.viewportService.triggerViewportChangeEvent("end"),this.selectionService.setViewport(this.viewportForSelection)})},this.filterCondition=A=>A.type==="mousedown"||A.type==="touchstart"?A.target.closest(".vflow-node")===null:!0}ngOnInit(){this.zone.runOutsideAngular(()=>{this.zoomBehavior=lF().scaleExtent([this.flowSettingsService.minZoom(),this.flowSettingsService.maxZoom()]).filter(this.filterCondition).on("start",this.handleZoomStart).on("zoom",this.handleZoom).on("end",this.handleZoomEnd),this.rootSvgSelection.call(this.zoomBehavior).on("dblclick.zoom",null)})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["g","mapContext",""]],hostVars:1,hostBindings:function(t,n){t&2&&ie("transform",n.transform())}})}}return i})(),Tx=i=>({zoom:i.k,x:i.x,y:i.y}),DpA=i=>{if(i instanceof Event&&i.target instanceof Element)return i.target},M5=i=>Math.round(i*100)/100;function ul(i,e){return Math.ceil(i/e)*e}var c1=(()=>{class i{constructor(){this.status=mA({state:"idle",payload:null})}setIdleStatus(){this.status.set({state:"idle",payload:null})}setConnectionStartStatus(A,t){this.status.set({state:"connection-start",payload:{source:A,sourceHandle:t}})}setReconnectionStartStatus(A,t,n){this.status.set({state:"reconnection-start",payload:{source:A,sourceHandle:t,oldEdge:n}})}setConnectionValidationStatus(A,t,n,o,a){this.status.set({state:"connection-validation",payload:{source:t,target:n,sourceHandle:o,targetHandle:a,valid:A}})}setReconnectionValidationStatus(A,t,n,o,a,r){this.status.set({state:"reconnection-validation",payload:{source:t,target:n,sourceHandle:o,targetHandle:a,valid:A,oldEdge:r}})}setConnectionEndStatus(A,t,n,o){this.status.set({state:"connection-end",payload:{source:A,target:t,sourceHandle:n,targetHandle:o}})}setReconnectionEndStatus(A,t,n,o,a){this.status.set({state:"reconnection-end",payload:{source:A,target:t,sourceHandle:n,targetHandle:o,oldEdge:a}})}setNodeDragStartStatus(A){this.status.set({state:"node-drag-start",payload:{node:A}})}setNodeDragEndStatus(A){this.status.set({state:"node-drag-end",payload:{node:A}})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})();function qW(i){return i.state==="node-drag-start"}function vpA(i){return i.state==="node-drag-end"}var lZ=(()=>{class i{constructor(){this.entitiesService=w(pl),this.settingsService=w(as),this.flowStatusService=w(c1)}enable(A,t){zs(A).call(this.getDragBehavior(t))}disable(A){zs(A).call(HD().on("drag",null))}destroy(A){zs(A).on(".drag",null)}getDragBehavior(A){let t=[],n=[],o=a=>A.dragHandlesCount()?!!a.target.closest(".vflow-drag-handle"):!0;return HD().filter(o).on("start",a=>{t=this.getDragNodes(A),this.flowStatusService.setNodeDragStartStatus(A),n=t.map(r=>({x:r.point().x-a.x,y:r.point().y-a.y}))}).on("drag",a=>{t.forEach((r,s)=>{let l={x:M5(a.x+n[s].x),y:M5(a.y+n[s].y)};this.moveNode(r,l)})}).on("end",()=>{this.flowStatusService.setNodeDragEndStatus(A)})}getDragNodes(A){return A.selected()?this.entitiesService.nodes().filter(t=>t.selected()&&t.draggable()):[A]}moveNode(A,t){t=this.alignToGrid(t);let n=A.parent();n&&(t.x=Math.min(n.width()-A.width(),t.x),t.x=Math.max(0,t.x),t.y=Math.min(n.height()-A.height(),t.y),t.y=Math.max(0,t.y)),A.setPoint(t)}alignToGrid(A){let[t,n]=this.settingsService.snapGrid();return t>1&&(A.x=ul(A.x,t)),n>1&&(A.y=ul(A.y,n)),A}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),S5=(()=>{class i{constructor(){this.templateRef=w(wo)}static ngTemplateContextGuard(A,t){return!0}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["ng-template","edge",""]]})}}return i})(),WW=(()=>{class i{constructor(){this.templateRef=w(wo)}static ngTemplateContextGuard(A,t){return!0}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["ng-template","connection",""]]})}}return i})(),ZW=(()=>{class i{constructor(){this.templateRef=w(wo)}static ngTemplateContextGuard(A,t){return!0}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["ng-template","edgeLabelHtml",""]]})}}return i})(),hE=(()=>{class i{constructor(){this.templateRef=w(wo)}static ngTemplateContextGuard(A,t){return!0}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["ng-template","nodeHtml",""]]})}}return i})(),XW=(()=>{class i{constructor(){this.templateRef=w(wo)}static ngTemplateContextGuard(A,t){return!0}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["ng-template","nodeSvg",""]]})}}return i})(),k5=(()=>{class i{constructor(){this.templateRef=w(wo)}static ngTemplateContextGuard(A,t){return!0}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["ng-template","groupNode",""]]})}}return i})();function $W(i,e){let A=i.reduce((t,n)=>(t[n.rawNode.id]=n,t),{});e.forEach(t=>{t.source.set(A[t.edge.source]),t.target.set(A[t.edge.target])})}function fp(i){try{return new Proxy(i,{apply:()=>{}})(),!0}catch(e){return!1}}var Yx=(()=>{class i{constructor(){this._event$=new ne,this.event$=this._event$.asObservable()}pushEvent(A){this._event$.next(A)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),EE=(()=>{class i{constructor(){this.model=mA(null)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),gZ=(()=>{class i{constructor(){this.eventBus=w(Yx),this.nodeService=w(EE),this.destroyRef=w(Er),this.selected=this.nodeService.model().selected,this.data=mA(void 0)}ngOnInit(){this.trackEvents().pipe(xr(this.destroyRef)).subscribe()}trackEvents(){let A=Object.getOwnPropertyNames(this),t=new Map;for(let n of A){let o=this[n];o instanceof FA&&t.set(o,n),o instanceof RN&&t.set(bpA(o),n)}return Vi(...Array.from(t.keys()).map(n=>n.pipe(mi(o=>{this.eventBus.pushEvent({nodeId:this.nodeService.model()?.rawNode.id??"",eventName:t.get(n),eventPayload:o})}))))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,standalone:!1})}}return i})();function bpA(i){return new Fi(e=>{let A=i.subscribe(t=>{e.next(t)});return()=>{A.unsubscribe()}})}var MpA=(()=>{class i extends gZ{constructor(){super(...arguments),this.node=ve.required()}ngOnInit(){let A=this.node().data;A&&(this.data=A),super.ngOnInit()}static{this.\u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})()}static{this.\u0275dir=VA({type:i,inputs:{node:[1,"node"]},standalone:!1,features:[bt]})}}return i})(),SpA=(()=>{class i extends gZ{constructor(){super(...arguments),this.node=ve.required()}ngOnInit(){this.node().data&&this.data.set(this.node().data),super.ngOnInit()}static{this.\u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})()}static{this.\u0275dir=VA({type:i,inputs:{node:[1,"node"]},standalone:!1,features:[bt]})}}return i})();function cZ(i){return Object.prototype.isPrototypeOf.call(SpA,i)}function CZ(i){return Object.prototype.isPrototypeOf.call(MpA,i)}function kpA(i){return typeof i.point=="function"}function _pA(i){return cZ(i.type)?!0:fp(i.type)&&!fp(i.point)}function xpA(i){return CZ(i.type)?!0:fp(i.type)&&fp(i.point)}var _5=2;function RpA(i){return kpA(i)?i:$A(P({},NpA(i)),{id:i.id,type:i.type})}function NpA(i){let e={};for(let A in i)Object.prototype.hasOwnProperty.call(i,A)&&(e[A]=mA(i[A]));return e}function FpA(i,e,A){!e&&wN(i);let t=e??w(St);return A?vr(t,A):t}function mp(i,e){let A=FpA(mp,e?.injector),t;return ye(()=>(t||(t=wa(()=>sr(i,$A(P({},e),{injector:A})))),t()))}function LpA(i){return i.rawNode.type==="default-group"||i.rawNode.type==="template-group"}var gI=(()=>{class i{constructor(){this.flowEntitiesService=w(pl),this.flowSettingsService=w(as),this.viewportService=w(lI),this.nodes=ye(()=>this.flowSettingsService.optimization().virtualization?this.viewportNodesAfterInteraction().sort((A,t)=>A.renderOrder()-t.renderOrder()):[...this.flowEntitiesService.nodes()].sort((A,t)=>A.renderOrder()-t.renderOrder())),this.groups=ye(()=>this.nodes().filter(A=>!!A.children().length||LpA(A))),this.nonGroups=ye(()=>this.nodes().filter(A=>!this.groups().includes(A))),this.viewportNodes=ye(()=>{let A=this.flowEntitiesService.nodes(),t=this.viewportService.readableViewport(),n=this.flowSettingsService.computedFlowWidth(),o=this.flowSettingsService.computedFlowHeight();return A.filter(a=>{let{x:r,y:s}=a.globalPoint(),l=a.width(),g=a.height();return wpA({x:r,y:s,width:l,height:g},t,n,o)})}),this.viewportNodesAfterInteraction=mp(Vi(Fo(this.flowEntitiesService.nodes).pipe(pI(qp),Bt(A=>!!A.length)),this.viewportService.viewportChangeEnd$.pipe(Os(300))).pipe(Se(()=>{let A=this.viewportService.readableViewport(),t=this.flowSettingsService.optimization().virtualizationZoomThreshold;return A.zoomMath.max(...this.flowEntitiesService.nodes().map(A=>A.renderOrder())))}pullNode(A){A.renderOrder.set(this.maxOrder()+1),A.children().forEach(t=>this.pullNode(t))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})();function x5(i,e){e||(e={equal:Object.is});let A;return ye(()=>A=i(A),e)}var GpA=(()=>{class i{static{this.defaultWidth=100}static{this.defaultHeight=50}static{this.defaultColor="#1b262c"}constructor(A){this.rawNode=A,this.entitiesService=w(pl),this.settingsService=w(as),this.nodeRenderingService=w(gI),this.isVisible=mA(!1),this.point=mA({x:0,y:0}),this.width=mA(i.defaultWidth),this.height=mA(i.defaultHeight),this.size=ye(()=>({width:this.width(),height:this.height()})),this.styleWidth=ye(()=>this.controlledByResizer()?`${this.width()}px`:"100%"),this.styleHeight=ye(()=>this.controlledByResizer()?`${this.height()}px`:"100%"),this.foWidth=ye(()=>this.width()+_5),this.foHeight=ye(()=>this.height()+_5),this.renderOrder=mA(0),this.selected=mA(!1),this.preview=mA({style:{}}),this.globalPoint=ye(()=>{let n=this.parent(),o=this.point().x,a=this.point().y;for(;n!==null;)o+=n.point().x,a+=n.point().y,n=n.parent();return{x:o,y:a}}),this.pointTransform=ye(()=>`translate(${this.globalPoint().x}, ${this.globalPoint().y})`),this.handles=mA([]),this.draggable=mA(!0),this.dragHandlesCount=mA(0),this.magnetRadius=20,this.isComponentType=_pA(this.rawNode)||xpA(this.rawNode),this.shouldLoad=x5(n=>{if(n||this.settingsService.optimization().lazyLoadTrigger==="immediate")return!0;if(this.settingsService.optimization().lazyLoadTrigger==="viewport"){if(cZ(this.rawNode.type)||CZ(this.rawNode.type))return!0;if(fp(this.rawNode.type)||this.rawNode.type==="html-template"||this.rawNode.type==="svg-template"||this.rawNode.type==="template-group")return this.nodeRenderingService.viewportNodes().includes(this)}return!0}),this.componentInstance$=Fo(this.shouldLoad).pipe(Bt(Boolean),Mi(()=>this.rawNode.type()),aa(()=>oe(this.rawNode.type)),Js(1)),this.text=mA(""),this.componentTypeInputs={node:this.rawNode},this.parent=ye(()=>this.entitiesService.nodes().find(n=>n.rawNode.id===this.parentId())??null),this.children=ye(()=>this.entitiesService.nodes().filter(n=>n.parentId()===this.rawNode.id)),this.color=mA(i.defaultColor),this.controlledByResizer=mA(!1),this.resizable=mA(!1),this.resizing=mA(!1),this.resizerTemplate=mA(null),this.context={$implicit:{}},this.parentId=mA(null);let t=RpA(A);t.point&&(this.point=t.point),t.width&&(this.width=t.width),t.height&&(this.height=t.height),t.draggable&&(this.draggable=t.draggable),t.parentId&&(this.parentId=t.parentId),t.preview&&(this.preview=t.preview),t.type==="default-group"&&t.color&&(this.color=t.color),t.type==="default-group"&&t.resizable&&(this.resizable=t.resizable),t.type==="default"&&t.text&&(this.text=t.text),t.type==="html-template"&&(this.context={$implicit:{node:A,selected:this.selected.asReadonly(),shouldLoad:this.shouldLoad}}),t.type==="svg-template"&&(this.context={$implicit:{node:A,selected:this.selected.asReadonly(),width:this.width.asReadonly(),height:this.height.asReadonly(),shouldLoad:this.shouldLoad}}),t.type==="template-group"&&(this.context={$implicit:{node:A,selected:this.selected.asReadonly(),width:this.width.asReadonly(),height:this.height.asReadonly(),shouldLoad:this.shouldLoad}}),this.point$=Fo(this.point),this.width$=Fo(this.width),this.height$=Fo(this.height),this.size$=Fo(this.size),this.selected$=Fo(this.selected),this.handles$=Fo(this.handles)}setPoint(A){this.point.set(A)}}return i})(),up=class{constructor(e){this.edgeLabel=e,this.size=mA({width:0,height:0})}};function GC(i,e,A){return{x:(1-A)*i.x+A*e.x,y:(1-A)*i.y+A*e.y}}function Hx({sourcePoint:i,targetPoint:e}){return{path:`M ${i.x},${i.y}L ${e.x},${e.y}`,labelPoints:{start:GC(i,e,.15),center:GC(i,e,.5),end:GC(i,e,.85)}}}function zx({sourcePoint:i,targetPoint:e,sourcePosition:A,targetPosition:t}){let n={x:i.x-e.x,y:i.y-e.y},o=AZ(i,A,n),a=AZ(e,t,n),r=`M${i.x},${i.y} C${o.x},${o.y} ${a.x},${a.y} ${e.x},${e.y}`;return KpA(r,i,e,o,a)}function AZ(i,e,A){let t={x:0,y:0};switch(e){case"top":t.y=1;break;case"bottom":t.y=-1;break;case"right":t.x=1;break;case"left":t.x=-1;break}let n={x:A.x*Math.abs(t.x),y:A.y*Math.abs(t.y)},a=.25*25*Math.sqrt(Math.abs(n.x+n.y));return{x:i.x+t.x*a,y:i.y-t.y*a}}function KpA(i,e,A,t,n){return{path:i,labelPoints:{start:Ox(e,A,t,n,.1),center:Ox(e,A,t,n,.5),end:Ox(e,A,t,n,.9)}}}function Ox(i,e,A,t,n){let o=GC(i,A,n),a=GC(A,t,n),r=GC(t,e,n);return GC(GC(o,a,n),GC(a,r,n),n)}var eZ={left:{x:-1,y:0},right:{x:1,y:0},top:{x:0,y:-1},bottom:{x:0,y:1}};function UpA(i,e){let A=Math.abs(e.x-i.x)/2,t=e.xe==="left"||e==="right"?i.xMath.sqrt(Math.pow(e.x-i.x,2)+Math.pow(e.y-i.y,2));function OpA({source:i,sourcePosition:e="bottom",target:A,targetPosition:t="top",offset:n}){let o=eZ[e],a=eZ[t],r={x:i.x+o.x*n,y:i.y+o.y*n},s={x:A.x+a.x*n,y:A.y+a.y*n},l=TpA({source:r,sourcePosition:e,target:s}),g=l.x!==0?"x":"y",C=l[g],d=[],B,u,E={x:0,y:0},f={x:0,y:0},[m,v]=UpA(i,A);if(o[g]*a[g]===-1){B=m,u=v;let k=[{x:B,y:r.y},{x:B,y:s.y}],M=[{x:r.x,y:u},{x:s.x,y:u}];o[g]===C?d=g==="x"?k:M:d=g==="x"?M:k}else{let k=[{x:r.x,y:s.y}],M=[{x:s.x,y:r.y}];if(g==="x"?d=o.x===C?M:k:d=o.y===C?k:M,e===t){let X=Math.abs(i[g]-A[g]);if(X<=n){let eA=Math.min(n-1,n-X);o[g]===C?E[g]=(r[g]>i[g]?-1:1)*eA:f[g]=(s[g]>A[g]?-1:1)*eA}}if(e!==t){let X=g==="x"?"y":"x",eA=o[g]===a[X],Z=r[X]>s[X],CA=r[X]=j?(B=(x.x+F.x)/2,u=d[0].y):(B=d[0].x,u=(x.y+F.y)/2)}return[[i,{x:r.x+E.x,y:r.y+E.y},...d,{x:s.x+f.x,y:s.y+f.y},A],B,u]}function JpA(i,e,A,t){let n=Math.min(tZ(i,e)/2,tZ(e,A)/2,t),{x:o,y:a}=e;if(i.x===o&&o===A.x||i.y===a&&a===A.y)return`L${o} ${a}`;if(i.y===a){let l=i.x{let m="";return f>0&&f{let E=d*u;if(E<=0)return o[0];if(E>=d)return o[l-1];let f=0,m=l-1;for(;f>>1;C[F](this.source()?.shouldLoad()??!1)&&(this.target()?.shouldLoad()??!1)),this.renderOrder=mA(0),this.detached=ye(()=>{let A=this.source(),t=this.target();if(!A||!t)return!0;let n=!1,o=!1;return this.edge.sourceHandle?n=!!A.handles().find(a=>a.rawHandle.id===this.edge.sourceHandle):n=!!A.handles().find(a=>a.rawHandle.type==="source"),this.edge.targetHandle?o=!!t.handles().find(a=>a.rawHandle.id===this.edge.targetHandle):o=!!t.handles().find(a=>a.rawHandle.type==="target"),!n||!o}),this.detached$=Fo(this.detached),this.path=ye(()=>{let A=this.sourceHandle(),t=this.targetHandle();if(!A||!t)return{path:""};let n=this.getPathFactoryParams(A,t);switch(this.curve){case"straight":return Hx(n);case"bezier":return zx(n);case"smooth-step":return IE(n);case"step":return IE(n,0);default:return this.curve(n)}}),this.sourceHandle=x5(A=>{let t=null;return this.floating?t=this.closestHandles().sourceHandle:this.edge.sourceHandle?t=this.source()?.handles().find(n=>n.rawHandle.id===this.edge.sourceHandle)??null:t=this.source()?.handles().find(n=>n.rawHandle.type==="source")??null,t===null?A:t}),this.targetHandle=x5(A=>{let t=null;return this.floating?t=this.closestHandles().targetHandle:this.edge.targetHandle?t=this.target()?.handles().find(n=>n.rawHandle.id===this.edge.targetHandle)??null:t=this.target()?.handles().find(n=>n.rawHandle.type==="target")??null,t===null?A:t}),this.closestHandles=ye(()=>{let A=this.source(),t=this.target();if(!A||!t)return{sourceHandle:null,targetHandle:null};let n=this.flowEntitiesService.connection().mode==="strict"?A.handles().filter(l=>l.rawHandle.type==="source"):A.handles(),o=this.flowEntitiesService.connection().mode==="strict"?t.handles().filter(l=>l.rawHandle.type==="target"):t.handles();if(n.length===0||o.length===0)return{sourceHandle:null,targetHandle:null};let a=1/0,r=null,s=null;for(let l of n)for(let g of o){let C=l.pointAbsolute(),d=g.pointAbsolute(),B=Math.sqrt(Math.pow(C.x-d.x,2)+Math.pow(C.y-d.y,2));B{let A=this.edge.markers?.start;return A?`url(#${BE(JSON.stringify(A))})`:""}),this.markerEndUrl=ye(()=>{let A=this.edge.markers?.end;return A?`url(#${BE(JSON.stringify(A))})`:""}),this.context={$implicit:{edge:this.edge,path:ye(()=>this.path().path),markerStart:this.markerStartUrl,markerEnd:this.markerEndUrl,selected:this.selected.asReadonly(),shouldLoad:this.shouldLoad}},this.edgeLabels={},this.type=e.type??"default",this.curve=e.curve??"bezier",this.reconnectable=e.reconnectable??!1,this.floating=e.floating??!1,e.edgeLabels?.start&&(this.edgeLabels.start=new up(e.edgeLabels.start)),e.edgeLabels?.center&&(this.edgeLabels.center=new up(e.edgeLabels.center)),e.edgeLabels?.end&&(this.edgeLabels.end=new up(e.edgeLabels.end))}getPathFactoryParams(e,A){return{mode:"edge",edge:this.edge,sourcePoint:e.pointAbsolute(),targetPoint:A.pointAbsolute(),sourcePosition:e.rawHandle.position,targetPosition:A.rawHandle.position,allEdges:this.flowEntitiesService.rawEdges(),allNodes:this.flowEntitiesService.rawNodes()}}},R5=class{static nodes(e,A){let t=new Map;return A.forEach(n=>t.set(n.rawNode,n)),e.map(n=>t.get(n)??new GpA(n))}static edges(e,A){let t=new Map;return A.forEach(n=>t.set(n.edge,n)),e.map(n=>t.has(n)?t.get(n):new Px(n))}},YpA=25,jx=(()=>{class i{constructor(){this.entitiesService=w(pl),this.nodesPositionChange$=Fo(this.entitiesService.nodes).pipe(Mi(A=>Vi(...A.map(t=>t.point$.pipe(Dl(1),Se(()=>t))))),Se(A=>[{type:"position",id:A.rawNode.id,point:A.point()},...this.entitiesService.nodes().filter(t=>t!==A&&t.selected()).map(t=>({type:"position",id:t.rawNode.id,point:t.point()}))])),this.nodeSizeChange$=Fo(this.entitiesService.nodes).pipe(Mi(A=>Vi(...A.map(t=>t.size$.pipe(Dl(1),Se(()=>t))))),Se(A=>[{type:"size",id:A.rawNode.id,size:A.size()}])),this.nodeAddChange$=Fo(this.entitiesService.nodes).pipe(YC(),Se(([A,t])=>t.filter(n=>!A.includes(n))),Bt(A=>!!A.length),Se(A=>A.map(t=>({type:"add",id:t.rawNode.id})))),this.nodeRemoveChange$=Fo(this.entitiesService.nodes).pipe(YC(),Se(([A,t])=>A.filter(n=>!t.includes(n))),Bt(A=>!!A.length),Se(A=>A.map(t=>({type:"remove",id:t.rawNode.id})))),this.nodeSelectedChange$=Fo(this.entitiesService.nodes).pipe(Mi(A=>Vi(...A.map(t=>t.selected$.pipe(xg(),Dl(1),Se(()=>t))))),Se(A=>[{type:"select",id:A.rawNode.id,selected:A.selected()}])),this.changes$=Vi(this.nodesPositionChange$,this.nodeSizeChange$,this.nodeAddChange$,this.nodeRemoveChange$,this.nodeSelectedChange$).pipe(pI(qp,YpA))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),HpA=(i,e)=>i.length===e.length&&[...new Set([...i,...e])].every(A=>i.filter(t=>t===A).length===e.filter(t=>t===A).length),Vx=(()=>{class i{constructor(){this.entitiesService=w(pl),this.edgeDetachedChange$=Vi(Fo(ye(()=>{let A=this.entitiesService.nodes();return wa(this.entitiesService.edges).filter(({source:n,target:o})=>!A.includes(n())||!A.includes(o()))})),Fo(this.entitiesService.edges).pipe(Mi(A=>QN(...A.map(t=>t.detached$.pipe(Se(()=>t))))),Se(A=>A.filter(t=>t.detached())),Dl(2))).pipe(xg(HpA),Bt(A=>!!A.length),Se(A=>A.map(({edge:t})=>({type:"detached",id:t.id})))),this.edgeAddChange$=Fo(this.entitiesService.edges).pipe(YC(),Se(([A,t])=>t.filter(n=>!A.includes(n))),Bt(A=>!!A.length),Se(A=>A.map(({edge:t})=>({type:"add",id:t.id})))),this.edgeRemoveChange$=Fo(this.entitiesService.edges).pipe(YC(),Se(([A,t])=>A.filter(n=>!t.includes(n))),Bt(A=>!!A.length),Se(A=>A.map(({edge:t})=>({type:"remove",id:t.id})))),this.edgeSelectChange$=Fo(this.entitiesService.edges).pipe(Mi(A=>Vi(...A.map(t=>t.selected$.pipe(xg(),Dl(1),Se(()=>t))))),Se(A=>[{type:"select",id:A.edge.id,selected:A.selected()}])),this.changes$=Vi(this.edgeDetachedChange$,this.edgeAddChange$,this.edgeRemoveChange$,this.edgeSelectChange$).pipe(pI(qp))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),zpA=(()=>{class i{constructor(){this.nodesChangeService=w(jx),this.edgesChangeService=w(Vx),this.onNodesChange=Hn(this.nodesChangeService.changes$),this.onNodesChangePosition=Hn(this.nodeChangesOfType("position"),{alias:"onNodesChange.position"}),this.onNodesChangePositionSignle=Hn(this.singleChange(this.nodeChangesOfType("position")),{alias:"onNodesChange.position.single"}),this.onNodesChangePositionMany=Hn(this.manyChanges(this.nodeChangesOfType("position")),{alias:"onNodesChange.position.many"}),this.onNodesChangeSize=Hn(this.nodeChangesOfType("size"),{alias:"onNodesChange.size"}),this.onNodesChangeSizeSingle=Hn(this.singleChange(this.nodeChangesOfType("size")),{alias:"onNodesChange.size.single"}),this.onNodesChangeSizeMany=Hn(this.manyChanges(this.nodeChangesOfType("size")),{alias:"onNodesChange.size.many"}),this.onNodesChangeAdd=Hn(this.nodeChangesOfType("add"),{alias:"onNodesChange.add"}),this.onNodesChangeAddSingle=Hn(this.singleChange(this.nodeChangesOfType("add")),{alias:"onNodesChange.add.single"}),this.onNodesChangeAddMany=Hn(this.manyChanges(this.nodeChangesOfType("add")),{alias:"onNodesChange.add.many"}),this.onNodesChangeRemove=Hn(this.nodeChangesOfType("remove"),{alias:"onNodesChange.remove"}),this.onNodesChangeRemoveSingle=Hn(this.singleChange(this.nodeChangesOfType("remove")),{alias:"onNodesChange.remove.single"}),this.onNodesChangeRemoveMany=Hn(this.manyChanges(this.nodeChangesOfType("remove")),{alias:"onNodesChange.remove.many"}),this.onNodesChangeSelect=Hn(this.nodeChangesOfType("select"),{alias:"onNodesChange.select"}),this.onNodesChangeSelectSingle=Hn(this.singleChange(this.nodeChangesOfType("select")),{alias:"onNodesChange.select.single"}),this.onNodesChangeSelectMany=Hn(this.manyChanges(this.nodeChangesOfType("select")),{alias:"onNodesChange.select.many"}),this.onEdgesChange=Hn(this.edgesChangeService.changes$),this.onNodesChangeDetached=Hn(this.edgeChangesOfType("detached"),{alias:"onEdgesChange.detached"}),this.onNodesChangeDetachedSingle=Hn(this.singleChange(this.edgeChangesOfType("detached")),{alias:"onEdgesChange.detached.single"}),this.onNodesChangeDetachedMany=Hn(this.manyChanges(this.edgeChangesOfType("detached")),{alias:"onEdgesChange.detached.many"}),this.onEdgesChangeAdd=Hn(this.edgeChangesOfType("add"),{alias:"onEdgesChange.add"}),this.onEdgeChangeAddSingle=Hn(this.singleChange(this.edgeChangesOfType("add")),{alias:"onEdgesChange.add.single"}),this.onEdgeChangeAddMany=Hn(this.manyChanges(this.edgeChangesOfType("add")),{alias:"onEdgesChange.add.many"}),this.onEdgeChangeRemove=Hn(this.edgeChangesOfType("remove"),{alias:"onEdgesChange.remove"}),this.onEdgeChangeRemoveSingle=Hn(this.singleChange(this.edgeChangesOfType("remove")),{alias:"onEdgesChange.remove.single"}),this.onEdgeChangeRemoveMany=Hn(this.manyChanges(this.edgeChangesOfType("remove")),{alias:"onEdgesChange.remove.many"}),this.onEdgeChangeSelect=Hn(this.edgeChangesOfType("select"),{alias:"onEdgesChange.select"}),this.onEdgeChangeSelectSingle=Hn(this.singleChange(this.edgeChangesOfType("select")),{alias:"onEdgesChange.select.single"}),this.onEdgeChangeSelectMany=Hn(this.manyChanges(this.edgeChangesOfType("select")),{alias:"onEdgesChange.select.many"})}nodeChangesOfType(A){return this.nodesChangeService.changes$.pipe(Se(t=>t.filter(n=>n.type===A)),Bt(t=>!!t.length))}edgeChangesOfType(A){return this.edgesChangeService.changes$.pipe(Se(t=>t.filter(n=>n.type===A)),Bt(t=>!!t.length))}singleChange(A){return A.pipe(Bt(t=>t.length===1),Se(([t])=>t))}manyChanges(A){return A.pipe(Bt(t=>t.length>1))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["","changesController",""]],outputs:{onNodesChange:"onNodesChange",onNodesChangePosition:"onNodesChange.position",onNodesChangePositionSignle:"onNodesChange.position.single",onNodesChangePositionMany:"onNodesChange.position.many",onNodesChangeSize:"onNodesChange.size",onNodesChangeSizeSingle:"onNodesChange.size.single",onNodesChangeSizeMany:"onNodesChange.size.many",onNodesChangeAdd:"onNodesChange.add",onNodesChangeAddSingle:"onNodesChange.add.single",onNodesChangeAddMany:"onNodesChange.add.many",onNodesChangeRemove:"onNodesChange.remove",onNodesChangeRemoveSingle:"onNodesChange.remove.single",onNodesChangeRemoveMany:"onNodesChange.remove.many",onNodesChangeSelect:"onNodesChange.select",onNodesChangeSelectSingle:"onNodesChange.select.single",onNodesChangeSelectMany:"onNodesChange.select.many",onEdgesChange:"onEdgesChange",onNodesChangeDetached:"onEdgesChange.detached",onNodesChangeDetachedSingle:"onEdgesChange.detached.single",onNodesChangeDetachedMany:"onEdgesChange.detached.many",onEdgesChangeAdd:"onEdgesChange.add",onEdgeChangeAddSingle:"onEdgesChange.add.single",onEdgeChangeAddMany:"onEdgesChange.add.many",onEdgeChangeRemove:"onEdgesChange.remove",onEdgeChangeRemoveSingle:"onEdgesChange.remove.single",onEdgeChangeRemoveMany:"onEdgesChange.remove.many",onEdgeChangeSelect:"onEdgesChange.select",onEdgeChangeSelectSingle:"onEdgesChange.select.single",onEdgeChangeSelectMany:"onEdgesChange.select.many"}})}}return i})(),L5=(()=>{class i{constructor(){this.host=w(ce).nativeElement,this.initialTouch$=new ne,this.prevTouchEvent=null,this.mouseMovement$=Nc(this.host,"mousemove").pipe(Se(A=>({x:A.clientX,y:A.clientY,movementX:A.movementX,movementY:A.movementY,target:A.target,originalEvent:A})),pI(uI),HC()),this.touchMovement$=Vi(this.initialTouch$,Nc(this.host,"touchmove")).pipe(mi(A=>A.preventDefault()),Se(A=>{let t=A.touches[0]?.clientX??0,n=A.touches[0]?.clientY??0,o=this.prevTouchEvent?A.touches[0].pageX-this.prevTouchEvent.touches[0].pageX:0,a=this.prevTouchEvent?A.touches[0].pageY-this.prevTouchEvent.touches[0].pageY:0,r=document.elementFromPoint(t,n);return{x:t,y:n,movementX:o,movementY:a,target:r,originalEvent:A}}),mi(A=>this.prevTouchEvent=A.originalEvent),pI(uI),HC()),this.pointerMovement$=Vi(this.mouseMovement$,this.touchMovement$),this.touchEnd$=Nc(this.host,"touchend").pipe(Se(A=>{let t=A.changedTouches[0]?.clientX??0,n=A.changedTouches[0]?.clientY??0,o=document.elementFromPoint(t,n);return{x:t,y:n,target:o,originalEvent:A}}),mi(()=>this.prevTouchEvent=null),HC()),this.mouseUp$=Nc(this.host,"mouseup").pipe(Se(A=>{let t=A.clientX,n=A.clientY,o=A.target;return{x:t,y:n,target:o,originalEvent:A}}),HC()),this.documentPointerEnd$=Vi(Nc(document,"mouseup"),Nc(document,"touchend")).pipe(HC())}setInitialTouch(A){this.initialTouch$.next(A)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["svg","rootPointer",""]]})}}return i})(),pp=(()=>{class i{constructor(){this.pointerMovementDirective=w(L5),this.rootSvg=w(F5).element,this.host=w(ce).nativeElement,this.svgCurrentSpacePoint=ye(()=>{let A=this.pointerMovement();return A?this.documentPointToFlowPoint({x:A.x,y:A.y}):{x:0,y:0}}),this.pointerMovement=sr(this.pointerMovementDirective.pointerMovement$)}documentPointToFlowPoint(A){let t=this.rootSvg.createSVGPoint();return t.x=A.x,t.y=A.y,t.matrixTransform(this.host.getScreenCTM().inverse())}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["g","spacePointContext",""]]})}}return i})();function PpA(i){return typeof i=="string"?{type:"solid",color:i}:i}function N5(i,e,A){let t=A.value;return A.value=function(...n){queueMicrotask(()=>{t?.apply(this,n)})},A}var dZ=(()=>{class i{constructor(){this.toolbars=mA([]),this.nodeToolbarsMap=ye(()=>{let A=new Map;return this.toolbars().forEach(t=>{let n=A.get(t.node)??[];A.set(t.node,[...n,t])}),A})}addToolbar(A){this.toolbars.update(t=>[...t,A])}removeToolbar(A){this.toolbars.update(t=>t.filter(n=>n!==A))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return jE([N5],i.prototype,"addToolbar",null),jE([N5],i.prototype,"removeToolbar",null),i})();function G5(i,e){return new Fi(A=>{let t=new ResizeObserver(n=>{e.run(()=>A.next(n))});return i.forEach(n=>t.observe(n)),()=>t.disconnect()})}var jpA=(()=>{class i{constructor(){this.zone=w(We),this.destroyRef=w(Er),this.settingsService=w(as),this.model=ve.required(),this.edgeModel=ve.required(),this.point=ve({x:0,y:0}),this.htmlTemplate=ve(),this.edgeLabelWrapperRef=Yo.required("edgeLabelWrapper"),this.edgeLabelPoint=ye(()=>{let A=this.point(),{width:t,height:n}=this.model().size();return{x:A.x-t/2,y:A.y-n/2}}),this.edgeLabelStyle=ye(()=>{let A=this.model().edgeLabel;if(A.type==="default"&&A.style){let t=this.settingsService.background(),n="transparent";return t.type==="dots"&&(n=t.backgroundColor??"#fff"),t.type==="solid"&&(n=t.color),A.style.backgroundColor=A.style.backgroundColor??n,A.style}return null})}ngAfterViewInit(){let A=this.edgeLabelWrapperRef().nativeElement;G5([A],this.zone).pipe(Yn(null),mi(()=>{let t=A.clientWidth+_5,n=A.clientHeight+_5;this.model().size.set({width:t,height:n})}),xr(this.destroyRef)).subscribe()}getLabelContext(){return{$implicit:{edge:this.edgeModel().edge,label:this.model().edgeLabel}}}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["g","edgeLabel",""]],viewQuery:function(t,n){t&1&&ls(n.edgeLabelWrapperRef,juA,5),t&2&&br()},inputs:{model:[1,"model"],edgeModel:[1,"edgeModel"],point:[1,"point"],htmlTemplate:[1,"htmlTemplate"]},attrs:VuA,decls:1,vars:1,consts:[["edgeLabelWrapper",""],[1,"edge-label-wrapper"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,n){if(t&1&&T(0,$uA,2,2),t&2){let o;O((o=n.model())?0:-1,o)}},dependencies:[Uc],styles:[".edge-label-wrapper[_ngcontent-%COMP%]{width:max-content;margin-top:1px;margin-left:1px}"],changeDetection:0})}}return i})();function IZ(i){let e={};return i.sourceHandle.rawHandle.type==="source"?(e.source=i.source,e.sourceHandle=i.sourceHandle):(e.source=i.target,e.sourceHandle=i.targetHandle),i.targetHandle.rawHandle.type==="target"?(e.target=i.target,e.targetHandle=i.targetHandle):(e.target=i.source,e.targetHandle=i.sourceHandle),e}var BZ=(()=>{class i{constructor(){this.statusService=w(c1),this.flowEntitiesService=w(pl),this.onConnect=Hn(Fo(this.statusService.status).pipe(Bt(A=>A.state==="connection-end"),Se(A=>D5(A,this.isStrictMode())),mi(()=>this.statusService.setIdleStatus()),Bt(A=>this.flowEntitiesService.connection().validator(A)))),this.connect=Hn(Fo(this.statusService.status).pipe(Bt(A=>A.state==="connection-end"),Se(A=>D5(A,this.isStrictMode())),mi(()=>this.statusService.setIdleStatus()),Bt(A=>this.flowEntitiesService.connection().validator(A)))),this.onReconnect=Hn(Fo(this.statusService.status).pipe(Bt(A=>A.state==="reconnection-end"),Se(A=>{let t=D5(A,this.isStrictMode()),n=A.payload.oldEdge.edge;return{connection:t,oldEdge:n}}),mi(()=>this.statusService.setIdleStatus()),Bt(({connection:A})=>this.flowEntitiesService.connection().validator(A)))),this.reconnect=Hn(Fo(this.statusService.status).pipe(Bt(A=>A.state==="reconnection-end"),Se(A=>{let t=D5(A,this.isStrictMode()),n=A.payload.oldEdge.edge;return{connection:t,oldEdge:n}}),mi(()=>this.statusService.setIdleStatus()),Bt(({connection:A})=>this.flowEntitiesService.connection().validator(A)))),this.isStrictMode=ye(()=>this.flowEntitiesService.connection().mode==="strict")}startConnection(A){this.statusService.setConnectionStartStatus(A.parentNode,A)}startReconnection(A,t){this.statusService.setReconnectionStartStatus(A.parentNode,A,t)}validateConnection(A){let t=this.statusService.status();if(t.state==="connection-start"||t.state==="reconnection-start"){let n=t.state==="reconnection-start",o=t.payload.source,a=A.parentNode,r=t.payload.sourceHandle,s=A;if(this.isStrictMode()){let g=IZ({source:t.payload.source,sourceHandle:t.payload.sourceHandle,target:A.parentNode,targetHandle:A});o=g.source,a=g.target,r=g.sourceHandle,s=g.targetHandle}let l=this.flowEntitiesService.connection().validator({source:o.rawNode.id,target:a.rawNode.id,sourceHandle:r.rawHandle.id,targetHandle:s.rawHandle.id});A.state.set(l?"valid":"invalid"),n?this.statusService.setReconnectionValidationStatus(l,t.payload.source,A.parentNode,t.payload.sourceHandle,A,t.payload.oldEdge):this.statusService.setConnectionValidationStatus(l,t.payload.source,A.parentNode,t.payload.sourceHandle,A)}}resetValidateConnection(A){A.state.set("idle");let t=this.statusService.status();(t.state==="connection-validation"||t.state==="reconnection-validation")&&(t.state==="reconnection-validation"?this.statusService.setReconnectionStartStatus(t.payload.source,t.payload.sourceHandle,t.payload.oldEdge):this.statusService.setConnectionStartStatus(t.payload.source,t.payload.sourceHandle))}endConnection(){let A=this.statusService.status();if(A.state==="connection-validation"||A.state==="reconnection-validation"){let t=A.state==="reconnection-validation",n=A.payload.source,o=A.payload.sourceHandle,a=A.payload.target,r=A.payload.targetHandle;t?this.statusService.setReconnectionEndStatus(n,a,o,r,A.payload.oldEdge):this.statusService.setConnectionEndStatus(n,a,o,r)}}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["","onConnect",""],["","onReconnect",""],["","connect",""],["","reconnect",""]],outputs:{onConnect:"onConnect",connect:"connect",onReconnect:"onReconnect",reconnect:"reconnect"}})}}return i})();function D5(i,e){let A=i.payload.source,t=i.payload.target,n=i.payload.sourceHandle,o=i.payload.targetHandle;if(e){let g=IZ({source:i.payload.source,sourceHandle:i.payload.sourceHandle,target:i.payload.target,targetHandle:i.payload.targetHandle});A=g.source,t=g.target,n=g.sourceHandle,o=g.targetHandle}let a=A.rawNode.id,r=t.rawNode.id,s=n.rawHandle.id,l=o.rawHandle.id;return{source:a,target:r,sourceHandle:s,targetHandle:l}}var wp=(()=>{class i{constructor(){this.flowEntitiesService=w(pl),this.flowSettingsService=w(as),this.edges=ye(()=>this.flowSettingsService.optimization().virtualization?this.viewportEdges().sort((A,t)=>A.renderOrder()-t.renderOrder()):[...this.flowEntitiesService.validEdges()].sort((A,t)=>A.renderOrder()-t.renderOrder())),this.viewportEdges=ye(()=>this.flowEntitiesService.validEdges().filter(A=>{let t=A.sourceHandle(),n=A.targetHandle();return t&&n})),this.maxOrder=ye(()=>Math.max(...this.flowEntitiesService.validEdges().map(A=>A.renderOrder())))}pull(A){A.renderOrder()!==0&&this.maxOrder()===A.renderOrder()||A.renderOrder.set(this.maxOrder()+1)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})();function VpA(i){return window.TouchEvent&&i instanceof TouchEvent}var $x=(()=>{class i{constructor(){this.hostElement=w(ce).nativeElement,this.pointerMovementDirective=w(L5),this.pointerOver=Si(),this.pointerOut=Si(),this.pointerStart=Si(),this.pointerEnd=Si(),this.wasPointerOver=!1,this.touchEnd=this.pointerMovementDirective.touchEnd$.pipe(Bt(({target:A})=>A===this.hostElement),mi(({originalEvent:A})=>this.pointerEnd.emit(A)),xr()).subscribe(),this.touchOverOut=this.pointerMovementDirective.touchMovement$.pipe(mi(({target:A,originalEvent:t})=>{this.handleTouchOverAndOut(A,t)}),xr()).subscribe()}onPointerStart(A){this.pointerStart.emit(A),VpA(A)&&this.pointerMovementDirective.setInitialTouch(A)}onPointerEnd(A){this.pointerEnd.emit(A)}onMouseOver(A){this.pointerOver.emit(A)}onMouseOut(A){this.pointerOut.emit(A)}handleTouchOverAndOut(A,t){A===this.hostElement?(this.pointerOver.emit(t),this.wasPointerOver=!0):(this.wasPointerOver&&this.pointerOut.emit(t),this.wasPointerOver=!1)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["","pointerStart",""],["","pointerEnd",""],["","pointerOver",""],["","pointerOut",""]],hostBindings:function(t,n){t&1&&U("mousedown",function(a){return n.onPointerStart(a)})("touchstart",function(a){return n.onPointerStart(a)})("mouseup",function(a){return n.onPointerEnd(a)})("mouseover",function(a){return n.onMouseOver(a)})("mouseout",function(a){return n.onMouseOut(a)})},outputs:{pointerOver:"pointerOver",pointerOut:"pointerOut",pointerStart:"pointerStart",pointerEnd:"pointerEnd"}})}}return i})(),AR=(()=>{class i{constructor(){this.injector=w(St),this.selectionService=w(yp),this.flowSettingsService=w(as),this.flowStatusService=w(c1),this.edgeRenderingService=w(wp),this.connectionController=w(BZ,{optional:!0}),this.model=ve.required(),this.edgeTemplate=ve(),this.edgeLabelHtmlTemplate=ve(),this.isReconnecting=ye(()=>{let A=this.flowStatusService.status();return(A.state==="reconnection-start"||A.state==="reconnection-validation")&&A.payload.oldEdge===this.model()})}select(){this.flowSettingsService.entitiesSelectable()&&this.selectionService.select(this.model())}pull(){this.flowSettingsService.elevateEdgesOnSelect()&&this.edgeRenderingService.pull(this.model())}startReconnection(A,t){A.stopPropagation(),this.connectionController?.startReconnection(t,this.model())}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["g","edge",""]],hostAttrs:[1,"selectable"],hostVars:2,hostBindings:function(t,n){t&2&&ft("visibility",n.isReconnecting()?"hidden":"visible")},inputs:{model:[1,"model"],edgeTemplate:[1,"edgeTemplate"],edgeLabelHtmlTemplate:[1,"edgeLabelHtmlTemplate"]},attrs:A4A,decls:6,vars:6,consts:[[1,"edge"],[1,"interactive-edge",3,"click"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector"],["edgeLabel","",3,"model","point","edgeModel","htmlTemplate"],["r","10",1,"reconnect-handle"],["r","10",1,"reconnect-handle",3,"pointerStart"]],template:function(t,n){if(t&1&&(T(0,e4A,2,6),T(1,i4A,1,1),T(2,o4A,1,1),T(3,r4A,1,1),T(4,l4A,1,1),T(5,C4A,2,2)),t&2){let o,a,r;O(n.model().type==="default"?0:-1),Q(),O(n.model().type==="template"&&n.edgeTemplate()?1:-1),Q(),O((o=n.model().edgeLabels.start)?2:-1,o),Q(),O((a=n.model().edgeLabels.center)?3:-1,a),Q(),O((r=n.model().edgeLabels.end)?4:-1,r),Q(),O(n.model().sourceHandle()&&n.model().targetHandle()?5:-1)}},dependencies:[Uc,jpA,$x],styles:[".edge[_ngcontent-%COMP%]{fill:none;stroke-width:2;stroke:#b1b1b7}.edge_selected[_ngcontent-%COMP%]{stroke-width:2.5;stroke:#0f4c75}.interactive-edge[_ngcontent-%COMP%]{fill:none;stroke-width:20;stroke:transparent}.reconnect-handle[_ngcontent-%COMP%]{fill:transparent;cursor:move}"],changeDetection:0})}}return i})(),qx=(()=>{class i{constructor(){this.node=mA(null)}createHandle(A){let t=this.node();t&&t.handles.update(n=>[...n,A])}destroyHandle(A){let t=this.node();t&&t.handles.update(n=>n.filter(o=>o!==A))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return jE([N5],i.prototype,"createHandle",null),i})(),qpA=(()=>{class i{constructor(){this.handleModel=ve.required({alias:"handleSizeController"}),this.handleWrapper=w(ce)}ngAfterViewInit(){let A=this.handleWrapper.nativeElement,t=A.getBBox(),n=WpA(A);this.handleModel().size.set({width:t.width+n,height:t.height+n})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["","handleSizeController",""]],inputs:{handleModel:[1,"handleSizeController","handleModel"]}})}}return i})();function WpA(i){let e=i.firstElementChild;if(e){let A=getComputedStyle(e).strokeWidth,t=Number(A.replace("px",""));return isNaN(t)?0:t}return 0}var ZpA=(()=>{class i{constructor(){this.selected=ve(!1)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["default-node"]],hostVars:2,hostBindings:function(t,n){t&2&&_A("selected",n.selected())},inputs:{selected:[1,"selected"]},ngContentSelectors:Xx,decls:1,vars:0,template:function(t,n){t&1&&(Ot(),Ze(0))},styles:["[_nghost-%COMP%]{border:1.5px solid #1b262c;border-radius:5px;display:flex;align-items:center;justify-content:center;color:#000;background-color:#fff}.selected[_nghost-%COMP%]{border-width:2px}"],changeDetection:0})}}return i})(),XpA=(()=>{class i{get model(){return this.nodeAccessor.model()}constructor(){this.nodeAccessor=w(EE),this.rootPointer=w(L5),this.viewportService=w(lI),this.spacePointContext=w(pp),this.settingsService=w(as),this.hostRef=w(ce),this.resizable=ve(),this.resizerColor=ve("#2e414c"),this.gap=ve(1.5),this.resizer=Yo.required("resizer"),this.lineGap=3,this.handleSize=6,this.resizeSide=null,this.zoom=ye(()=>this.viewportService.readableViewport().zoom??0),this.minWidth=0,this.minHeight=0,this.maxWidth=1/0,this.maxHeight=1/0,this.resizeOnGlobalMouseMove=this.rootPointer.pointerMovement$.pipe(Bt(()=>this.resizeSide!==null),Bt(A=>A.movementX!==0||A.movementY!==0),mi(A=>this.resize(A)),xr()).subscribe(),this.endResizeOnGlobalMouseUp=this.rootPointer.documentPointerEnd$.pipe(mi(()=>this.endResize()),xr()).subscribe(),Fn(()=>{let A=this.resizable();typeof A=="boolean"?this.model.resizable.set(A):this.model.resizable.set(!0)},{allowSignalWrites:!0})}ngOnInit(){this.model.controlledByResizer.set(!0),this.model.resizerTemplate.set(this.resizer())}ngOnDestroy(){this.model.controlledByResizer.set(!1)}ngAfterViewInit(){this.minWidth=+getComputedStyle(this.hostRef.nativeElement).minWidth.replace("px","")||0,this.minHeight=+getComputedStyle(this.hostRef.nativeElement).minHeight.replace("px","")||0,this.maxWidth=+getComputedStyle(this.hostRef.nativeElement).maxWidth.replace("px","")||1/0,this.maxHeight=+getComputedStyle(this.hostRef.nativeElement).maxHeight.replace("px","")||1/0}startResize(A,t){t.stopPropagation(),this.resizeSide=A,this.model.resizing.set(!0)}resize(A){if(!this.resizeSide)return;let t=$pA(A.movementX,A.movementY,this.zoom()),n=this.applyResize(this.resizeSide,this.model,t,this.getDistanceToEdge(A)),{x:o,y:a,width:r,height:s}=A3A(n,this.model,this.resizeSide,this.minWidth,this.minHeight,this.maxWidth,this.maxHeight);this.model.setPoint({x:o,y:a}),this.model.width.set(r),this.model.height.set(s)}endResize(){this.resizeSide=null,this.model.resizing.set(!1)}getDistanceToEdge(A){let t=this.spacePointContext.documentPointToFlowPoint({x:A.x,y:A.y}),{x:n,y:o}=this.model.globalPoint();return{left:t.x-n,right:t.x-(n+this.model.width()),top:t.y-o,bottom:t.y-(o+this.model.height())}}applyResize(A,t,n,o){let{x:a,y:r}=t.point(),s=t.width(),l=t.height(),[g,C]=this.settingsService.snapGrid();switch(A){case"left":{let d=n.x+o.left,B=ul(a+d,g),u=B-a;return{x:B,y:r,width:s-u,height:l}}case"right":{let d=n.x+o.right,B=ul(s+d,g);return{x:a,y:r,width:B,height:l}}case"top":{let d=n.y+o.top,B=ul(r+d,C),u=B-r;return{x:a,y:B,width:s,height:l-u}}case"bottom":{let d=n.y+o.bottom,B=ul(l+d,C);return{x:a,y:r,width:s,height:B}}case"top-left":{let d=n.x+o.left,B=n.y+o.top,u=ul(a+d,g),E=ul(r+B,C),f=u-a,m=E-r;return{x:u,y:E,width:s-f,height:l-m}}case"top-right":{let d=n.x+o.right,B=n.y+o.top,u=ul(r+B,C),E=u-r;return{x:a,y:u,width:ul(s+d,g),height:l-E}}case"bottom-left":{let d=n.x+o.left,B=n.y+o.bottom,u=ul(a+d,g),E=u-a;return{x:u,y:r,width:s-E,height:ul(l+B,C)}}case"bottom-right":{let d=n.x+o.right,B=n.y+o.bottom;return{x:a,y:r,width:ul(s+d,g),height:ul(l+B,C)}}}}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["","resizable",""]],viewQuery:function(t,n){t&1&&ls(n.resizer,d4A,5),t&2&&br()},inputs:{resizable:[1,"resizable"],resizerColor:[1,"resizerColor"],gap:[1,"gap"]},attrs:I4A,ngContentSelectors:Xx,decls:3,vars:0,consts:[["resizer",""],["stroke-width","2",1,"top",3,"pointerStart"],["stroke-width","2",1,"left",3,"pointerStart"],["stroke-width","2",1,"bottom",3,"pointerStart"],["stroke-width","2",1,"right",3,"pointerStart"],[1,"top-left",3,"pointerStart"],[1,"top-right",3,"pointerStart"],[1,"bottom-left",3,"pointerStart"],[1,"bottom-right",3,"pointerStart"]],template:function(t,n){t&1&&(Ot(),kt(0,B4A,9,40,"ng-template",null,0,PC),Ze(2))},dependencies:[$x],styles:[".top[_ngcontent-%COMP%]{cursor:n-resize}.left[_ngcontent-%COMP%]{cursor:w-resize}.right[_ngcontent-%COMP%]{cursor:e-resize}.bottom[_ngcontent-%COMP%]{cursor:s-resize}.top-left[_ngcontent-%COMP%]{cursor:nw-resize}.top-right[_ngcontent-%COMP%]{cursor:ne-resize}.bottom-left[_ngcontent-%COMP%]{cursor:sw-resize}.bottom-right[_ngcontent-%COMP%]{cursor:se-resize}"],changeDetection:0})}}return jE([N5],i.prototype,"ngAfterViewInit",null),i})();function $pA(i,e,A){return{x:M5(i/A),y:M5(e/A)}}function A3A(i,e,A,t,n,o,a){let{x:r,y:s,width:l,height:g}=i;l=Math.max(l,0),g=Math.max(g,0),l=Math.max(t,l),g=Math.max(n,g),l=Math.min(o,l),g=Math.min(a,g),r=Math.min(r,e.point().x+e.width()-t),s=Math.min(s,e.point().y+e.height()-n),r=Math.max(r,e.point().x+e.width()-o),s=Math.max(s,e.point().y+e.height()-a);let C=e.parent();if(C){let B=C.width(),u=C.height(),E=e.point().x,f=e.point().y;r=Math.max(r,0),s=Math.max(s,0),A.includes("left")&&r===0&&(l=Math.min(l,E+e.width())),A.includes("top")&&s===0&&(g=Math.min(g,f+e.height())),l=Math.min(l,B-r),g=Math.min(g,u-s)}let d=sZ(e.children());return d&&(A.includes("left")&&(r=Math.min(r,e.point().x+e.width()-(d.x+d.width)),l=Math.max(l,d.x+d.width)),A.includes("right")&&(l=Math.max(l,d.x+d.width)),A.includes("bottom")&&(g=Math.max(g,d.y+d.height)),A.includes("top")&&(s=Math.min(s,e.point().y+e.height()-(d.y+d.height)),g=Math.max(g,d.y+d.height))),{x:r,y:s,width:l,height:g}}var Wx=class{constructor(e,A){this.rawHandle=e,this.parentNode=A,this.strokeWidth=2,this.size=mA({width:10+2*this.strokeWidth,height:10+2*this.strokeWidth}),this.pointAbsolute=ye(()=>({x:this.parentNode.globalPoint().x+this.hostOffset().x+this.sizeOffset().x,y:this.parentNode.globalPoint().y+this.hostOffset().y+this.sizeOffset().y})),this.state=mA("idle"),this.updateHostSizeAndPosition$=new ne,this.hostSize=sr(this.updateHostSizeAndPosition$.pipe(Se(()=>this.getHostSize())),{initialValue:{width:0,height:0}}),this.hostPosition=sr(this.updateHostSizeAndPosition$.pipe(Se(()=>({x:this.hostReference instanceof HTMLElement?this.hostReference.offsetLeft:0,y:this.hostReference instanceof HTMLElement?this.hostReference.offsetTop:0}))),{initialValue:{x:0,y:0}}),this.hostOffset=ye(()=>{switch(this.rawHandle.position){case"left":return{x:-this.rawHandle.userOffsetX,y:-this.rawHandle.userOffsetY+this.hostPosition().y+this.hostSize().height/2};case"right":return{x:-this.rawHandle.userOffsetX+this.parentNode.size().width,y:-this.rawHandle.userOffsetY+this.hostPosition().y+this.hostSize().height/2};case"top":return{x:-this.rawHandle.userOffsetX+this.hostPosition().x+this.hostSize().width/2,y:-this.rawHandle.userOffsetY};case"bottom":return{x:-this.rawHandle.userOffsetX+this.hostPosition().x+this.hostSize().width/2,y:-this.rawHandle.userOffsetY+this.parentNode.size().height}}}),this.sizeOffset=ye(()=>{switch(this.rawHandle.position){case"left":return{x:-(this.size().width/2),y:0};case"right":return{x:this.size().width/2,y:0};case"top":return{x:0,y:-(this.size().height/2)};case"bottom":return{x:0,y:this.size().height/2}}}),this.hostReference=this.rawHandle.hostReference,this.template=this.rawHandle.template,this.templateContext={$implicit:{point:this.hostOffset,state:this.state,node:this.parentNode.rawNode}}}updateHost(){this.updateHostSizeAndPosition$.next()}getHostSize(){return this.hostReference instanceof HTMLElement?{width:this.hostReference.offsetWidth,height:this.hostReference.offsetHeight}:this.hostReference instanceof SVGGraphicsElement?this.hostReference.getBBox():{width:0,height:0}}},Dp=(()=>{class i{constructor(){this.injector=w(St),this.handleService=w(qx),this.element=w(ce).nativeElement,this.destroyRef=w(Er),this.position=ve.required(),this.type=ve.required(),this.id=ve(),this.template=ve(),this.offsetX=ve(0),this.offsetY=ve(0)}ngOnInit(){vr(this.injector,()=>{let A=this.handleService.node();if(A){let t=new Wx({position:this.position(),type:this.type(),id:this.id(),hostReference:this.element.parentElement,template:this.template(),userOffsetX:this.offsetX(),userOffsetY:this.offsetY()},A);this.handleService.createHandle(t),requestAnimationFrame(()=>t.updateHost()),this.destroyRef.onDestroy(()=>this.handleService.destroyHandle(t))}})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["handle"]],inputs:{position:[1,"position"],type:[1,"type"],id:[1,"id"],template:[1,"template"],offsetX:[1,"offsetX"],offsetY:[1,"offsetY"]},decls:0,vars:0,template:function(t,n){},encapsulation:2,changeDetection:0})}}return i})(),e3A=(()=>{class i{constructor(){this.nodeAccessor=w(EE),this.zone=w(We),this.destroyRef=w(Er),this.hostElementRef=w(ce)}ngOnInit(){this.nodeAccessor.model().handles$.pipe(Mi(t=>G5([...t.map(n=>n.hostReference),this.hostElementRef.nativeElement],this.zone).pipe(Se(()=>t))),mi(t=>{t.forEach(n=>n.updateHost())}),xr(this.destroyRef)).subscribe()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["","nodeHandlesController",""]]})}}return i})(),t3A=(()=>{class i{constructor(){this.nodeAccessor=w(EE),this.zone=w(We),this.destroyRef=w(Er),this.hostElementRef=w(ce)}ngOnInit(){let A=this.nodeAccessor.model(),t=this.hostElementRef.nativeElement;Vi(G5([t],this.zone)).pipe(Yn(null),Bt(()=>!A.resizing()),mi(()=>{A.width.set(t.clientWidth),A.height.set(t.clientHeight)}),xr(this.destroyRef)).subscribe()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["","nodeResizeController",""]]})}}return i})(),hZ=(()=>{class i{constructor(){this.injector=w(St),this.handleService=w(qx),this.draggableService=w(lZ),this.flowStatusService=w(c1),this.nodeRenderingService=w(gI),this.flowSettingsService=w(as),this.selectionService=w(yp),this.hostRef=w(ce),this.nodeAccessor=w(EE),this.overlaysService=w(dZ),this.connectionController=w(BZ,{optional:!0}),this.model=ve.required(),this.nodeTemplate=ve(),this.nodeSvgTemplate=ve(),this.groupNodeTemplate=ve(),this.showMagnet=ye(()=>this.flowStatusService.status().state==="connection-start"||this.flowStatusService.status().state==="connection-validation"||this.flowStatusService.status().state==="reconnection-start"||this.flowStatusService.status().state==="reconnection-validation"),this.toolbars=ye(()=>this.overlaysService.nodeToolbarsMap().get(this.model()))}ngOnInit(){this.model().isVisible.set(!0),this.nodeAccessor.model.set(this.model()),this.handleService.node.set(this.model()),Fn(()=>{this.model().draggable()?this.draggableService.enable(this.hostRef.nativeElement,this.model()):this.draggableService.disable(this.hostRef.nativeElement)},{injector:this.injector})}ngOnDestroy(){this.model().isVisible.set(!1),this.draggableService.destroy(this.hostRef.nativeElement)}startConnection(A,t){A.stopPropagation(),this.connectionController?.startConnection(t)}validateConnection(A){this.connectionController?.validateConnection(A)}resetValidateConnection(A){this.connectionController?.resetValidateConnection(A)}endConnection(){this.connectionController?.endConnection()}pullNode(){this.flowSettingsService.elevateNodesOnSelect()&&this.nodeRenderingService.pullNode(this.model())}selectNode(){this.flowSettingsService.entitiesSelectable()&&this.selectionService.select(this.model())}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["g","node",""]],hostAttrs:[1,"vflow-node"],inputs:{model:[1,"model"],nodeTemplate:[1,"nodeTemplate"],nodeSvgTemplate:[1,"nodeSvgTemplate"],groupNodeTemplate:[1,"groupNodeTemplate"]},features:[pt([qx,EE])],attrs:h4A,decls:11,vars:7,consts:[[1,"selectable"],["nodeHandlesController","",1,"selectable"],["rx","5","ry","5",1,"default-group-node",3,"resizable","gap","resizerColor","default-group-node_selected","stroke","fill"],[1,"selectable",3,"click"],["nodeHandlesController","",3,"selected"],[3,"outerHTML"],["type","source","position","right"],["type","target","position","left"],["nodeHandlesController","","nodeResizeController","",1,"wrapper"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector"],["nodeHandlesController","",1,"selectable",3,"click"],[3,"ngComponentOutlet","ngComponentOutletInputs","ngComponentOutletInjector"],["rx","5","ry","5",1,"default-group-node",3,"click","resizable","gap","resizerColor"],[3,"ngTemplateOutlet"],["r","5",1,"default-handle"],[3,"handleSizeController"],[1,"magnet"],["r","5",1,"default-handle",3,"pointerStart","pointerEnd"],[3,"pointerStart","pointerEnd","handleSizeController"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"magnet",3,"pointerEnd","pointerOver","pointerOut"]],template:function(t,n){if(t&1&&(T(0,E4A,5,12,":svg:foreignObject",0),T(1,Q4A,3,9,":svg:foreignObject",0),T(2,u4A,2,3,":svg:g",1),T(3,f4A,2,3),T(4,m4A,1,11,":svg:rect",2),T(5,w4A,2,3,":svg:g",1),T(6,v4A,1,1),ke(7,x4A,4,4,null,null,ni),ke(9,R4A,2,4,":svg:foreignObject",null,ni)),t&2){let o;O(n.model().rawNode.type==="default"?0:-1),Q(),O(n.model().rawNode.type==="html-template"&&n.nodeTemplate()?1:-1),Q(),O(n.model().rawNode.type==="svg-template"&&n.nodeSvgTemplate()?2:-1),Q(),O(n.model().isComponentType?3:-1),Q(),O(n.model().rawNode.type==="default-group"?4:-1),Q(),O(n.model().rawNode.type==="template-group"&&n.groupNodeTemplate()?5:-1),Q(),O((o=n.model().resizerTemplate())?6:-1,o),Q(),_e(n.model().handles()),Q(2),_e(n.toolbars())}},dependencies:[$x,ZpA,Dp,Uc,Kc,XpA,qpA,e3A,t3A,gs],styles:[".magnet[_ngcontent-%COMP%]{opacity:0}.wrapper[_ngcontent-%COMP%]{display:table-cell}.default-group-node[_ngcontent-%COMP%]{stroke-width:1.5px;fill-opacity:.05}.default-group-node_selected[_ngcontent-%COMP%]{stroke-width:2px}.default-handle[_ngcontent-%COMP%]{stroke:#fff;fill:#1b262c}"],changeDetection:0})}}return i})(),i3A=(()=>{class i{constructor(){this.flowStatusService=w(c1),this.spacePointContext=w(pp),this.flowEntitiesService=w(pl),this.model=ve.required(),this.template=ve(),this.path=ye(()=>{let A=this.flowStatusService.status(),t=this.model().curve;if(A.state==="connection-start"||A.state==="reconnection-start"){let n=A.payload.sourceHandle,o=n.pointAbsolute(),a=n.rawHandle.position,r=this.spacePointContext.svgCurrentSpacePoint(),s=iZ(n.rawHandle.position),l=this.getPathFactoryParams(o,r,a,s);switch(t){case"straight":return Hx(l).path;case"bezier":return zx(l).path;case"smooth-step":return IE(l).path;case"step":return IE(l,0).path;default:return t(l).path}}if(A.state==="connection-validation"||A.state==="reconnection-validation"){let n=A.payload.sourceHandle,o=n.pointAbsolute(),a=n.rawHandle.position,r=A.payload.targetHandle,s=A.payload.valid?r.pointAbsolute():this.spacePointContext.svgCurrentSpacePoint(),l=A.payload.valid?r.rawHandle.position:iZ(n.rawHandle.position),g=this.getPathFactoryParams(o,s,a,l);switch(t){case"straight":return Hx(g).path;case"bezier":return zx(g).path;case"smooth-step":return IE(g).path;case"step":return IE(g,0).path;default:return t(g).path}}return null}),this.markerUrl=ye(()=>{let A=this.model().settings.marker;return A?`url(#${BE(JSON.stringify(A))})`:""}),this.defaultColor="rgb(177, 177, 183)"}getContext(){return{$implicit:{path:this.path,marker:this.markerUrl}}}getPathFactoryParams(A,t,n,o){return{mode:"connection",sourcePoint:A,targetPoint:t,sourcePosition:n,targetPosition:o,allEdges:this.flowEntitiesService.rawEdges(),allNodes:this.flowEntitiesService.rawNodes()}}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["g","connection",""]],inputs:{model:[1,"model"],template:[1,"template"]},attrs:N4A,decls:2,vars:2,consts:[["fill","none","stroke-width","2"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,n){t&1&&(T(0,L4A,1,1),T(1,U4A,1,1)),t&2&&(O(n.model().type==="default"?0:-1),Q(),O(n.model().type==="template"?1:-1))},dependencies:[Uc],encapsulation:2,changeDetection:0})}}return i})();function iZ(i){switch(i){case"top":return"bottom";case"bottom":return"top";case"left":return"right";case"right":return"left"}}function n3A(){return String.fromCharCode(65+Math.floor(Math.random()*26))+Date.now()}var o3A="#fff",a3A=20,r3A=2,nZ="rgb(177, 177, 183)",oZ=.1,s3A=!0,l3A=(()=>{class i{constructor(){this.viewportService=w(lI),this.rootSvg=w(F5).element,this.settingsService=w(as),this.backgroundSignal=this.settingsService.background,this.scaledGap=ye(()=>{let A=this.backgroundSignal();return A.type==="dots"?this.viewportService.readableViewport().zoom*(A.gap??a3A):0}),this.x=ye(()=>this.viewportService.readableViewport().x%this.scaledGap()),this.y=ye(()=>this.viewportService.readableViewport().y%this.scaledGap()),this.patternColor=ye(()=>{let A=this.backgroundSignal();return A.type==="dots"?A.color??nZ:nZ}),this.patternSize=ye(()=>{let A=this.backgroundSignal();return A.type==="dots"?this.viewportService.readableViewport().zoom*(A.size??r3A)/2:0}),this.bgImageSrc=ye(()=>{let A=this.backgroundSignal();return A.type==="image"?A.src:""}),this.imageSize=mp(Fo(this.backgroundSignal).pipe(Mi(()=>g3A(this.bgImageSrc())),Se(A=>({width:A.naturalWidth,height:A.naturalHeight}))),{initialValue:{width:0,height:0}}),this.scaledImageWidth=ye(()=>{let A=this.backgroundSignal();if(A.type==="image"){let t=A.fixed?1:this.viewportService.readableViewport().zoom;return this.imageSize().width*t*(A.scale??oZ)}return 0}),this.scaledImageHeight=ye(()=>{let A=this.backgroundSignal();if(A.type==="image"){let t=A.fixed?1:this.viewportService.readableViewport().zoom;return this.imageSize().height*t*(A.scale??oZ)}return 0}),this.imageX=ye(()=>{let A=this.backgroundSignal();return A.type==="image"?A.repeat?A.fixed?0:this.viewportService.readableViewport().x%this.scaledImageWidth():A.fixed?0:this.viewportService.readableViewport().x:0}),this.imageY=ye(()=>{let A=this.backgroundSignal();return A.type==="image"?A.repeat?A.fixed?0:this.viewportService.readableViewport().y%this.scaledImageHeight():A.fixed?0:this.viewportService.readableViewport().y:0}),this.repeated=ye(()=>{let A=this.backgroundSignal();return A.type==="image"&&(A.repeat??s3A)}),this.patternId=n3A(),this.patternUrl=`url(#${this.patternId})`,Fn(()=>{let A=this.backgroundSignal();A.type==="dots"&&(this.rootSvg.style.backgroundColor=A.backgroundColor??o3A),A.type==="solid"&&(this.rootSvg.style.backgroundColor=A.color)})}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["g","background",""]],attrs:T4A,decls:2,vars:2,consts:[["patternUnits","userSpaceOnUse"],["x","0","y","0","width","100%","height","100%"]],template:function(t,n){t&1&&(T(0,O4A,3,10),T(1,H4A,2,2)),t&2&&(O(n.backgroundSignal().type==="dots"?0:-1),Q(),O(n.backgroundSignal().type==="image"?1:-1))},encapsulation:2,changeDetection:0})}}return i})();function g3A(i){let e=new Image;return e.src=i,new Promise(A=>{e.onload=()=>A(e)})}var c3A=(()=>{class i{constructor(){this.markers=ve.required(),this.defaultColor="rgb(177, 177, 183)"}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["defs","flowDefs",""]],inputs:{markers:[1,"markers"]},attrs:z4A,decls:3,vars:2,consts:[["viewBox","-10 -10 20 20","refX","0","refY","0"],["points","-5,-4 1,0 -5,4 -5,-4",1,"marker__arrow_closed",3,"stroke","stroke-width","fill"],["points","-5,-4 0,0 -5,4",1,"marker__arrow_default",3,"stroke","stroke-width"],["points","-5,-4 1,0 -5,4 -5,-4",1,"marker__arrow_closed"],["points","-5,-4 0,0 -5,4",1,"marker__arrow_default"]],template:function(t,n){t&1&&(ke(0,V4A,3,7,":svg:marker",0,ni),mt(2,"keyvalue")),t&2&&_e(Ft(2,0,n.markers()))},dependencies:[HN],styles:[".marker__arrow_default[_ngcontent-%COMP%]{stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;fill:none}.marker__arrow_closed[_ngcontent-%COMP%]{stroke-linecap:round;stroke-linejoin:round}"],changeDetection:0})}}return i})(),C3A=(()=>{class i{constructor(){this.host=w(ce),this.flowSettingsService=w(as),this.flowWidth=ye(()=>{let A=this.flowSettingsService.view();return A==="auto"?"100%":A[0]}),this.flowHeight=ye(()=>{let A=this.flowSettingsService.view();return A==="auto"?"100%":A[1]}),G5([this.host.nativeElement],w(We)).pipe(mi(([A])=>{this.flowSettingsService.computedFlowWidth.set(A.contentRect.width),this.flowSettingsService.computedFlowHeight.set(A.contentRect.height)}),xr()).subscribe()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["svg","flowSizeController",""]],hostVars:2,hostBindings:function(t,n){t&2&&ie("width",n.flowWidth())("height",n.flowHeight())}})}}return i})(),d3A=(()=>{class i{constructor(){this.flowStatusService=w(c1)}resetConnection(){let A=this.flowStatusService.status();(A.state==="connection-start"||A.state==="reconnection-start")&&this.flowStatusService.setIdleStatus()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["svg","rootSvgContext",""]],hostBindings:function(t,n){t&1&&U("mouseup",function(){return n.resetConnection()},mI)("touchend",function(){return n.resetConnection()},mI)("contextmenu",function(){return n.resetConnection()})}})}}return i})();function Zx(i,e){let A=[];for(let t of e){let{x:n,y:o}=t.globalPoint();i.x>=n&&i.x<=n+t.width()&&i.y>=o&&i.y<=o+t.height()&&A.push({x:i.x-n,y:i.y-o,spaceNodeId:t.rawNode.id})}return A.reverse(),A.push({spaceNodeId:null,x:i.x,y:i.y}),A}var eR=(()=>{class i{static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})(),I3A=(()=>{class i extends eR{shouldRenderNode(A){return!A.isVisible()}static{this.\u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})()}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})();function B3A(i,e){if(Object.keys(e.preview().style).length){Q3A(i,e);return}if(e.rawNode.type==="default"){h3A(i,e);return}if(e.rawNode.type==="default-group"){E3A(i,e);return}u3A(i,e)}function h3A(i,e){let A=e.globalPoint(),t=e.width(),n=e.height();EZ(i,e,5),i.fillStyle="white",i.fill(),i.strokeStyle="#1b262c",i.lineWidth=1.5,i.stroke(),i.fillStyle="black",i.font="14px Arial",i.textAlign="center",i.textBaseline="middle";let o=A.x+t/2,a=A.y+n/2;i.fillText(e.text(),o,a)}function E3A(i,e){let A=e.globalPoint(),t=e.width(),n=e.height();i.globalAlpha=.05,i.fillStyle=e.color(),i.fillRect(A.x,A.y,t,n),i.globalAlpha=1,i.strokeStyle=e.color(),i.lineWidth=1.5,i.strokeRect(A.x,A.y,t,n)}function Q3A(i,e){let A=e.globalPoint(),t=e.width(),n=e.height(),o=e.preview().style;if(o.borderRadius){let a=parseFloat(o.borderRadius);EZ(i,e,a)}else i.beginPath(),i.rect(A.x,A.y,t,n),i.closePath();o.backgroundColor&&(i.fillStyle=o.backgroundColor),o.borderColor&&(i.strokeStyle=o.borderColor),o.borderWidth&&(i.lineWidth=parseFloat(o.borderWidth)),i.fill(),i.stroke()}function u3A(i,e){let A=e.globalPoint(),t=e.width(),n=e.height();i.fillStyle="rgb(0 0 0 / 10%)",i.fillRect(A.x,A.y,t,n)}function EZ(i,e,A){let t=e.globalPoint(),n=e.width(),o=e.height();i.beginPath(),i.moveTo(t.x+A,t.y),i.lineTo(t.x+n-A,t.y),i.quadraticCurveTo(t.x+n,t.y,t.x+n,t.y+A),i.lineTo(t.x+n,t.y+o-A),i.quadraticCurveTo(t.x+n,t.y+o,t.x+n-A,t.y+o),i.lineTo(t.x+A,t.y+o),i.quadraticCurveTo(t.x,t.y+o,t.x,t.y+o-A),i.lineTo(t.x,t.y+A),i.quadraticCurveTo(t.x,t.y,t.x+A,t.y),i.closePath()}var p3A=(()=>{class i{constructor(){this.viewportService=w(lI),this.renderStrategy=w(eR),this.nodeRenderingService=w(gI),this.renderer2=w(on),this.element=w(ce).nativeElement,this.ctx=this.element.getContext("2d"),this.width=ve(0),this.height=ve(0),this.dpr=window.devicePixelRatio,Fn(()=>{this.renderer2.setProperty(this.element,"width",this.width()*this.dpr),this.renderer2.setProperty(this.element,"height",this.height()*this.dpr),this.renderer2.setStyle(this.element,"width",`${this.width()}px`),this.renderer2.setStyle(this.element,"height",`${this.height()}px`),this.ctx.scale(this.dpr,this.dpr)}),Fn(()=>{let A=this.viewportService.readableViewport();this.ctx.clearRect(0,0,this.width(),this.height()),this.ctx.save(),this.ctx.setTransform(A.zoom*this.dpr,0,0,A.zoom*this.dpr,A.x*this.dpr,A.y*this.dpr);for(let t=0;t{class i{constructor(){this.nodeRenderingService=w(gI),this.edgeRenderingService=w(wp),this.flowEntitiesService=w(pl),this.settingsService=w(as),this.flowInitialized=mA(!1),w(We).runOutsideAngular(()=>re(this,null,function*(){yield f3A(2),this.flowInitialized.set(!0)}))}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275prov=jA({token:i,factory:i.\u0275fac})}}return i})();function f3A(i){return new Promise(e=>{let A=0;function t(){A++,A{class i{constructor(){this.nodeRenderingService=w(gI),this.flowStatus=w(c1),this.tolerance=ve(10),this.lineColor=ve("#1b262c"),this.isNodeDragging=ye(()=>qW(this.flowStatus.status())),this.intersections=x5(A=>{let t=this.flowStatus.status();if(qW(t)){let n=t.payload.node,o=rZ(v5(n)),a=this.nodeRenderingService.viewportNodes().filter(d=>d!==n).filter(d=>!n.children().includes(d)).map(d=>rZ(v5(d))),r=[],s=o.x,l=o.y,g=1/0,C=1/0;return a.forEach(d=>{let B=o.left+o.width/2,u=d.left+d.width/2;for(let[m,v,S,k]of[[B,u,u-o.width/2,!0],[o.left,d.left,d.left,!1],[o.left,d.right,d.right,!1],[o.right,d.left,d.left-o.width,!1],[o.right,d.right,d.right-o.width,!1]]){let M=Math.abs(m-v);if(M<=this.tolerance()){let x=Math.min(o.top,d.top),F=Math.max(o.bottom,d.bottom);if(r.push({x:v,y:x,x2:v,y2:F,isCenter:k}),MA.payload.node),Se(A=>[A,this.intersections()]),mi(([A,t])=>{if(t){let n={x:t.snappedX,y:t.snappedY},o=A.parent()?[A.parent()]:[];A.setPoint(Zx(n,o)[0])}}),xr()).subscribe()}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["g","alignmentHelper",""]],inputs:{tolerance:[1,"tolerance"],lineColor:[1,"lineColor"]},attrs:W4A,decls:1,vars:1,template:function(t,n){t&1&&T(0,$4A,1,1),t&2&&O(n.isNodeDragging()?0:-1)},encapsulation:2,changeDetection:0})}}return i})();var K5=(()=>{class i{constructor(){this.viewportService=w(lI),this.flowEntitiesService=w(pl),this.nodesChangeService=w(jx),this.edgesChangeService=w(Vx),this.nodeRenderingService=w(gI),this.edgeRenderingService=w(wp),this.flowSettingsService=w(as),this.componentEventBusService=w(Yx),this.keyboardService=w(Jx),this.injector=w(St),this.flowRenderingService=w(aZ),this.alignmentHelper=ve(!1),this.nodeModels=this.nodeRenderingService.nodes,this.groups=this.nodeRenderingService.groups,this.nonGroups=this.nodeRenderingService.nonGroups,this.edgeModels=this.edgeRenderingService.edges,this.onComponentNodeEvent=Hn(this.componentEventBusService.event$),this.nodeTemplateDirective=K0(hE),this.nodeSvgTemplateDirective=K0(XW),this.groupNodeTemplateDirective=K0(k5),this.edgeTemplateDirective=K0(S5),this.edgeLabelHtmlDirective=K0(ZW),this.connectionTemplateDirective=K0(WW),this.mapContext=Yo(Ux),this.spacePointContext=Yo.required(pp),this.viewport=this.viewportService.readableViewport.asReadonly(),this.nodesChange=mp(this.nodesChangeService.changes$,{initialValue:[]}),this.edgesChange=mp(this.edgesChangeService.changes$,{initialValue:[]}),this.initialized=this.flowRenderingService.flowInitialized.asReadonly(),this.viewportChange$=Fo(this.viewportService.readableViewport).pipe(Dl(1)),this.nodesChange$=this.nodesChangeService.changes$,this.edgesChange$=this.edgesChangeService.changes$,this.initialized$=Fo(this.flowRenderingService.flowInitialized),this.markers=this.flowEntitiesService.markers,this.minimap=this.flowEntitiesService.minimap,this.flowOptimization=this.flowSettingsService.optimization,this.flowWidth=this.flowSettingsService.computedFlowWidth,this.flowHeight=this.flowSettingsService.computedFlowHeight}set view(A){this.flowSettingsService.view.set(A)}set minZoom(A){this.flowSettingsService.minZoom.set(A)}set maxZoom(A){this.flowSettingsService.maxZoom.set(A)}set background(A){this.flowSettingsService.background.set(PpA(A))}set optimization(A){this.flowSettingsService.optimization.update(t=>P(P({},t),A))}set entitiesSelectable(A){this.flowSettingsService.entitiesSelectable.set(A)}set keyboardShortcuts(A){this.keyboardService.setShortcuts(A)}set connection(A){this.flowEntitiesService.connection.set(A)}get connection(){return this.flowEntitiesService.connection()}set snapGrid(A){this.flowSettingsService.snapGrid.set(A)}set elevateNodesOnSelect(A){this.flowSettingsService.elevateNodesOnSelect.set(A)}set elevateEdgesOnSelect(A){this.flowSettingsService.elevateEdgesOnSelect.set(A)}set nodes(A){let t=vr(this.injector,()=>R5.nodes(A,this.flowEntitiesService.nodes()));$W(t,this.flowEntitiesService.edges()),this.flowEntitiesService.nodes.set(t),t.forEach(n=>this.nodeRenderingService.pullNode(n))}set edges(A){let t=vr(this.injector,()=>R5.edges(A,this.flowEntitiesService.edges()));$W(this.flowEntitiesService.nodes(),t),this.flowEntitiesService.edges.set(t)}viewportTo(A){this.viewportService.writableViewport.set({changeType:"absolute",state:A,duration:0})}zoomTo(A){this.viewportService.writableViewport.set({changeType:"absolute",state:{zoom:A},duration:0})}panTo(A){this.viewportService.writableViewport.set({changeType:"absolute",state:A,duration:0})}fitView(A){this.viewportService.fitView(A)}getNode(A){return this.flowEntitiesService.getNode(A)?.rawNode}getDetachedEdges(){return this.flowEntitiesService.getDetachedEdges().map(A=>A.edge)}documentPointToFlowPoint(A,t){let n=this.spacePointContext().documentPointToFlowPoint(A);return t?.spaces?Zx(n,this.nodeRenderingService.groups()):n}getIntesectingNodes(A,t={partially:!0}){return IpA(A,this.nodeModels(),t).map(n=>n.rawNode)}toNodeSpace(A,t){let n=this.nodeModels().find(a=>a.rawNode.id===A);if(!n)return{x:1/0,y:1/0};if(t===null)return n.globalPoint();let o=this.nodeModels().find(a=>a.rawNode.id===t);return o?Zx(n.globalPoint(),[o])[0]:{x:1/0,y:1/0}}trackNodes(A,{rawNode:t}){return t}trackEdges(A,{edge:t}){return t}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["vflow"]],contentQueries:function(t,n,o){t&1&&c3(o,n.nodeTemplateDirective,hE,5)(o,n.nodeSvgTemplateDirective,XW,5)(o,n.groupNodeTemplateDirective,k5,5)(o,n.edgeTemplateDirective,S5,5)(o,n.edgeLabelHtmlDirective,ZW,5)(o,n.connectionTemplateDirective,WW,5),t&2&&br(6)},viewQuery:function(t,n){t&1&&ls(n.mapContext,Ux,5)(n.spacePointContext,pp,5),t&2&&br(2)},inputs:{view:"view",minZoom:"minZoom",maxZoom:"maxZoom",background:"background",optimization:"optimization",entitiesSelectable:"entitiesSelectable",keyboardShortcuts:"keyboardShortcuts",connection:[2,"connection","connection",A=>new b5(A)],snapGrid:"snapGrid",elevateNodesOnSelect:"elevateNodesOnSelect",elevateEdgesOnSelect:"elevateEdgesOnSelect",nodes:"nodes",alignmentHelper:[1,"alignmentHelper"],edges:"edges"},outputs:{onComponentNodeEvent:"onComponentNodeEvent"},features:[pt([lZ,lI,c1,pl,jx,Vx,gI,wp,yp,as,Yx,Jx,dZ,{provide:eR,useClass:I3A},aZ]),r3([{directive:zpA,outputs:["onNodesChange","onNodesChange","onNodesChange.position","onNodesChange.position","onNodesChange.position.single","onNodesChange.position.single","onNodesChange.position.many","onNodesChange.position.many","onNodesChange.size","onNodesChange.size","onNodesChange.size.single","onNodesChange.size.single","onNodesChange.size.many","onNodesChange.size.many","onNodesChange.add","onNodesChange.add","onNodesChange.add.single","onNodesChange.add.single","onNodesChange.add.many","onNodesChange.add.many","onNodesChange.remove","onNodesChange.remove","onNodesChange.remove.single","onNodesChange.remove.single","onNodesChange.remove.many","onNodesChange.remove.many","onNodesChange.select","onNodesChange.select","onNodesChange.select.single","onNodesChange.select.single","onNodesChange.select.many","onNodesChange.select.many","onEdgesChange","onEdgesChange","onEdgesChange.detached","onEdgesChange.detached","onEdgesChange.detached.single","onEdgesChange.detached.single","onEdgesChange.detached.many","onEdgesChange.detached.many","onEdgesChange.add","onEdgesChange.add","onEdgesChange.add.single","onEdgesChange.add.single","onEdgesChange.add.many","onEdgesChange.add.many","onEdgesChange.remove","onEdgesChange.remove","onEdgesChange.remove.single","onEdgesChange.remove.single","onEdgesChange.remove.many","onEdgesChange.remove.many","onEdgesChange.select","onEdgesChange.select","onEdgesChange.select.single","onEdgesChange.select.single","onEdgesChange.select.many","onEdgesChange.select.many"]}])],decls:11,vars:8,consts:[["flow",""],["rootSvgRef","","rootSvgContext","","rootPointer","","flowSizeController","",1,"root-svg"],["flowDefs","",3,"markers"],["background",""],["mapContext","","spacePointContext",""],["connection","",3,"model","template"],[3,"ngTemplateOutlet"],["previewFlow","",1,"preview-flow",3,"width","height"],["alignmentHelper",""],["alignmentHelper","",3,"tolerance","lineColor"],["node","",3,"model","groupNodeTemplate"],["edge","",3,"model","edgeTemplate","edgeLabelHtmlTemplate"],["node","",3,"model","nodeTemplate","nodeSvgTemplate"],["node","",3,"model","nodeTemplate","nodeSvgTemplate","groupNodeTemplate"]],template:function(t,n){if(t&1&&(Et(),I(0,"svg",1,0),lA(2,"defs",2)(3,"g",3),I(4,"g",4),T(5,tpA,2,1),lA(6,"g",5),T(7,apA,6,0),T(8,lpA,4,0),h(),T(9,gpA,1,1,":svg:ng-container",6),h(),T(10,cpA,1,2,"canvas",7)),t&2){let o,a,r;Q(2),H("markers",n.markers()),Q(3),O((o=n.alignmentHelper())?5:-1,o),Q(),H("model",n.connection)("template",(a=n.connectionTemplateDirective())==null?null:a.templateRef),Q(),O(n.flowOptimization().detachedGroupsLayer?7:-1),Q(),O(n.flowOptimization().detachedGroupsLayer?-1:8),Q(),O((r=n.minimap())?9:-1,r),Q(),O(n.flowOptimization().virtualization?10:-1)}},dependencies:[F5,d3A,L5,C3A,c3A,l3A,Ux,pp,i3A,hZ,AR,Uc,p3A,m3A],styles:["[_nghost-%COMP%]{display:grid;grid-template-columns:1fr;width:100%;height:100%;-webkit-user-select:none;user-select:none}[_nghost-%COMP%] *{box-sizing:border-box}.root-svg[_ngcontent-%COMP%]{grid-row-start:1;grid-column-start:1}.preview-flow[_ngcontent-%COMP%]{pointer-events:none;grid-row-start:1;grid-column-start:1}"],changeDetection:0})}}return i})();var U5=(()=>{class i{constructor(){this.flowSettingsService=w(as),this.selectionService=w(yp),this.parentEdge=w(AR,{optional:!0}),this.parentNode=w(hZ,{optional:!0}),this.host=w(ce),this.selectOnEvent=this.getEvent$().pipe(mi(()=>this.select()),xr()).subscribe()}select(){let A=this.entity();A&&this.flowSettingsService.entitiesSelectable()&&this.selectionService.select(A)}entity(){return this.parentNode?this.parentNode.model():this.parentEdge?this.parentEdge.model():null}getEvent$(){return Nc(this.host.nativeElement,"click")}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275dir=VA({type:i,selectors:[["","selectable",""]]})}}return i})();var QZ=(()=>{class i{constructor(){this.edge=w(AR),this.flowSettingsService=w(as),this.edgeRenderingService=w(wp),this.model=this.edge.model(),this.context=this.model.context.$implicit}pull(){this.flowSettingsService.elevateEdgesOnSelect()&&this.edgeRenderingService.pull(this.model)}static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275cmp=vA({type:i,selectors:[["g","customTemplateEdge",""]],hostBindings:function(t,n){t&1&&U("mousedown",function(){return n.pull()})("touchstart",function(){return n.pull()})},attrs:CpA,ngContentSelectors:Xx,decls:3,vars:1,consts:[["interactiveEdge",""],[1,"interactive-edge"]],template:function(t,n){t&1&&(Ot(),Ze(0),Et(),$n(1,"path",1,0)),t&2&&(Q(),ie("d",n.context.path()))},styles:[".interactive-edge[_ngcontent-%COMP%]{fill:none;stroke-width:20;stroke:transparent}"],changeDetection:0})}}return i})();var w3A=["canvas"],y3A=["svgCanvas"],D3A=()=>({type:"dots",color:"#424242",size:1,gap:12}),v3A=()=>[12,12],b3A=(i,e)=>e.name;function M3A(i,e){if(i&1){let A=aA();I(0,"div",6)(1,"div",11)(2,"button",12),U("click",function(){L(A);let n=p();return G(n.backToMainCanvas())}),I(3,"mat-icon"),D(4,"arrow_back"),h()(),I(5,"div",13)(6,"span",14),D(7,"smart_toy"),h(),I(8,"div",15)(9,"h3",16),D(10),h(),I(11,"p",17),D(12,"Agent Tool"),h()()()()()}if(i&2){let A=p();Q(2),H("matTooltip",A.getBackButtonTooltip()),Q(8),nA(A.currentAgentTool())}}function S3A(i,e){if(i&1){let A=aA();I(0,"span",18),U("click",function(){L(A);let n=p();return G(n.toggleSidePanelRequest.emit())}),D(1,"left_panel_open"),h()}}function k3A(i,e){if(i&1){let A=aA();Et(),I(0,"foreignObject"),hr(),I(1,"div",27),U("click",function(n){return n.stopPropagation()}),I(2,"button",28,0),U("click",function(n){return n.stopPropagation()}),I(4,"mat-icon"),D(5,"add"),h()(),I(6,"span",29),D(7,"Add sub-agent"),h(),I(8,"mat-menu",null,1)(10,"button",30),U("click",function(n){let o;L(A);let a=Bi(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LlmAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(11,"mat-icon"),D(12,"psychology"),h(),I(13,"span"),D(14,"LLM Agent"),h()(),I(15,"button",30),U("click",function(n){let o;L(A);let a=Bi(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("SequentialAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(16,"mat-icon"),D(17,"more_horiz"),h(),I(18,"span"),D(19,"Sequential Agent"),h()(),I(20,"button",30),U("click",function(n){let o;L(A);let a=Bi(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LoopAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(21,"mat-icon"),D(22,"sync"),h(),I(23,"span"),D(24,"Loop Agent"),h()(),I(25,"button",30),U("click",function(n){let o;L(A);let a=Bi(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("ParallelAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(26,"mat-icon"),D(27,"density_medium"),h(),I(28,"span"),D(29,"Parallel Agent"),h()()()()()}if(i&2){let A=Bi(9),t=p().$implicit;ie("width",200)("height",100)("x",t.width()/2-100)("y",t.height()/2-40),Q(2),H("matMenuTriggerFor",A)}}function _3A(i,e){i&1&&(Et(),lA(0,"handle",26))}function x3A(i,e){if(i&1){let A=aA();Et(),I(0,"g")(1,"rect",21),U("click",function(n){let o=L(A).$implicit,a=p(2);return G(a.onGroupClick(o.node,n))})("pointerdown",function(n){let o=L(A).$implicit,a=p(2);return G(a.onGroupPointerDown(o.node,n))}),h(),I(2,"foreignObject",22),hr(),I(3,"div",23)(4,"mat-icon",24),D(5),h(),I(6,"span",25),D(7),h()()(),T(8,k3A,30,5,":svg:foreignObject"),T(9,_3A,1,0,":svg:handle",26),h()}if(i&2){let A,t,n=e.$implicit,o=p(2);Q(),ft("stroke",o.isGroupSelected(n.node)?"rgba(0, 187, 234, 0.8)":"rgba(0, 187, 234, 0.3)")("fill",o.isGroupSelected(n.node)?"rgba(0, 187, 234, 0.1)":"rgba(0, 187, 234, 0.03)")("stroke-width",o.isGroupSelected(n.node)?3:2),ie("width",n.width())("height",n.height()),Q(),ie("width",200)("height",32),Q(3),nA(o.getAgentIcon(n.node.data==null||(A=n.node.data())==null?null:A.agent_class)),Q(2),nA(n.node.data==null||(t=n.node.data())==null?null:t.agent_class),Q(),O(o.isGroupEmpty(n.node.id)?8:-1),Q(),O(o.shouldShowTopHandle(n.node)?9:-1)}}function R3A(i,e){i&1&&(I(0,"span",35),D(1,"Root"),h())}function N3A(i,e){if(i&1){let A=aA();I(0,"button",43),U("click",function(n){L(A),p();let o=Ki(0);return p(2).openDeleteSubAgentDialog(o),G(n.stopPropagation())}),I(1,"mat-icon"),D(2,"delete"),h()()}}function F3A(i,e){if(i&1){let A=aA();I(0,"div",46),U("click",function(n){let o=L(A).$implicit,a=p(2).$implicit;return p(2).selectTool(o,a.node),G(n.stopPropagation())}),I(1,"mat-icon",47),D(2),h(),I(3,"span",48),D(4),h()()}if(i&2){let A=e.$implicit,t=p(4);Q(2),nA(t.getToolIcon(A)),Q(2),nA(A.name)}}function L3A(i,e){if(i&1&&(I(0,"div",38)(1,"div",44),ke(2,F3A,5,2,"div",45,b3A),h()()),i&2){p();let A=Ki(3);Q(2),_e(A)}}function G3A(i,e){if(i&1){let A=aA();I(0,"div",39)(1,"button",49,2),U("click",function(n){return n.stopPropagation()}),I(3,"span",50),D(4,"+"),h()(),I(5,"mat-menu",null,3)(7,"button",30),U("click",function(n){let o;L(A);let a=Bi(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LlmAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(8,"mat-icon"),D(9,"psychology"),h(),I(10,"span"),D(11,"LLM Agent"),h()(),I(12,"button",30),U("click",function(n){let o;L(A);let a=Bi(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("SequentialAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(13,"mat-icon"),D(14,"more_horiz"),h(),I(15,"span"),D(16,"Sequential Agent"),h()(),I(17,"button",30),U("click",function(n){let o;L(A);let a=Bi(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LoopAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(18,"mat-icon"),D(19,"sync"),h(),I(20,"span"),D(21,"Loop Agent"),h()(),I(22,"button",30),U("click",function(n){let o;L(A);let a=Bi(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("ParallelAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(23,"mat-icon"),D(24,"density_medium"),h(),I(25,"span"),D(26,"Parallel Agent"),h()()()()}if(i&2){let A=Bi(6);Q(),H("matMenuTriggerFor",A)}}function K3A(i,e){i&1&&lA(0,"handle",40)}function U3A(i,e){i&1&&lA(0,"handle",26)}function T3A(i,e){i&1&&lA(0,"handle",41)}function O3A(i,e){i&1&&lA(0,"handle",42)}function J3A(i,e){if(i&1){let A=aA();ro(0)(1),mt(2,"async"),ro(3),I(4,"div",31),U("click",function(n){let o=L(A).$implicit,a=p(2);return G(a.onCustomTemplateNodeClick(o.node,n))})("pointerdown",function(n){let o=L(A).$implicit,a=p(2);return G(a.onNodePointerDown(o.node,n))}),I(5,"div",32)(6,"div",33)(7,"mat-icon",34),D(8),h(),D(9),T(10,R3A,2,0,"span",35),h(),I(11,"div",36),T(12,N3A,3,0,"button",37),h()(),T(13,L3A,4,0,"div",38),T(14,G3A,27,1,"div",39),T(15,K3A,1,0,"handle",40),T(16,U3A,1,0,"handle",26),T(17,T3A,1,0,"handle",41),T(18,O3A,1,0,"handle",42),h()}if(i&2){let A=e.$implicit,t=p(2),n=A.node.data==null?null:A.node.data(),o=so((n==null?null:n.name)||"root_agent"),a=Ft(2,17,t.toolsMap$);Q(3);let s=so(t.getToolsForNode(o,a)).length>0;Q(),_A("custom-node_selected",t.isNodeSelected(A.node))("custom-node_has-tools",s)("in-group",A.node.parentId&&A.node.parentId()),Q(4),nA(t.getAgentIcon(n==null?null:n.agent_class)),Q(),Ee(" ",o," "),Q(),O(t.isRootAgent(o)?10:-1),Q(2),O(t.isRootAgentForCurrentTab(o)?-1:12),Q(),O(s?13:-1),Q(),O(t.shouldShowAddButton(A.node)?14:-1),Q(),O(t.shouldShowLeftHandle(A.node)?15:-1),Q(),O(t.shouldShowTopHandle(A.node)?16:-1),Q(),O(t.shouldShowRightHandle(A.node)?17:-1),Q(),O(t.shouldShowBottomHandle(A.node)?18:-1)}}function Y3A(i,e){if(i&1&&(I(0,"vflow",8),kt(1,x3A,10,14,"ng-template",19)(2,J3A,19,20,"ng-template",20),h()),i&2){let A=p();H("nodes",A.vflowNodes())("edges",A.edges())("background",Lc(4,D3A))("snapGrid",Lc(5,v3A))}}function H3A(i,e){i&1&&(I(0,"div",9)(1,"div",51)(2,"mat-icon",52),D(3,"touch_app"),h(),I(4,"h4"),D(5,"Start Building Your ADK"),h(),I(6,"p"),D(7,"Drag components from the left panel to create your workflow"),h(),I(8,"div",53)(9,"div",54)(10,"mat-icon"),D(11,"drag_indicator"),h(),I(12,"span"),D(13,"Drag to move nodes"),h()(),I(14,"div",54)(15,"mat-icon"),D(16,"link"),h(),I(17,"span"),D(18,"Shift + Click to connect nodes"),h()()()()())}var QE=class i{constructor(e,A,t){this.dialog=e;this.agentService=A;this.router=t;this.toolsMap$=this.agentBuilderService.getAgentToolsMap(),this.agentBuilderService.getSelectedTool().subscribe(n=>{this.selectedTool=n})}_snackbarService=w(Xc);canvasRef;svgCanvasRef;agentBuilderService=w($c);cdr=w(Mt);showSidePanel=!0;showBuilderAssistant=!1;appNameInput="";toggleSidePanelRequest=new FA;builderAssistantCloseRequest=new FA;ctx;connections=mA([]);nodeId=1;edgeId=1;callbackId=1;toolId=1;appName="";nodes=mA([]);edges=mA([]);workflowShellWidth=340;workflowGroupWidth=420;workflowGroupHeight=220;workflowGroupYOffset=180;workflowGroupXOffset=-40;workflowInnerNodePoint={x:40,y:80};groupNodes=mA([]);vflowNodes=ye(()=>[...this.groupNodes(),...this.nodes()]);selectedAgents=[];selectedTool;selectedCallback;currentAgentTool=mA(null);agentToolBoards=mA(new Map);isAgentToolMode=!1;navigationStack=[];existingAgent=void 0;toolsMap$;nodePositions=new Map;ngOnInit(){this.agentService.getApp().subscribe(e=>{e&&(this.appName=e)}),this.appNameInput&&(this.appName=this.appNameInput),this.agentBuilderService.getNewTabRequest().subscribe(e=>{if(e){let{tabName:A,currentAgentName:t}=e;this.switchToAgentToolBoard(A,t)}}),this.agentBuilderService.getTabDeletionRequest().subscribe(e=>{e&&this.deleteAgentToolBoard(e)}),this.agentBuilderService.getSelectedCallback().subscribe(e=>{this.selectedCallback=e}),this.agentBuilderService.getAgentCallbacks().subscribe(e=>{if(e){let A=this.nodes().find(t=>t.data?t.data().name===e.agentName:void 0);if(A&&A.data){let t=A.data();t.callbacks=e.callbacks,A.data.set(t)}}}),this.agentBuilderService.getDeleteSubAgentSubject().subscribe(e=>{e&&this.openDeleteSubAgentDialog(e)}),this.agentBuilderService.getAddSubAgentSubject().subscribe(e=>{e.parentAgentName&&this.addSubAgent(e.parentAgentName,e.agentClass,e.isFromEmptyGroup)}),this.agentBuilderService.getSelectedNode().subscribe(e=>{this.selectedAgents=this.nodes().filter(A=>A.data&&A.data().name===e?.name)}),this.toolsMap$.subscribe(e=>{this.nodes().some(t=>t.parentId&&t.parentId())&&this.groupNodes().length>0&&this.updateGroupDimensions()})}ngOnChanges(e){e.appNameInput&&e.appNameInput.currentValue&&(this.appName=e.appNameInput.currentValue)}ngAfterViewInit(){}onCustomTemplateNodeClick(e,A){this.shouldIgnoreNodeInteraction(A.target)||this.selectAgentNode(e,{openConfig:!0})}onNodePointerDown(e,A){this.shouldIgnoreNodeInteraction(A.target)||this.selectAgentNode(e,{openConfig:!1})}onGroupClick(e,A){if(A.stopPropagation(),!e?.data)return;let t=e.data().name,n=this.nodes().find(o=>o.data&&o.data().name===t);n&&this.selectAgentNode(n,{openConfig:!0})}onGroupPointerDown(e,A){if(A.stopPropagation(),!e?.data)return;let t=e.data().name,n=this.nodes().find(o=>o.data&&o.data().name===t);n&&this.selectAgentNode(n,{openConfig:!1})}onCanvasClick(e){let A=e.target;if(!A)return;let t=[".custom-node",".action-button-bar",".add-subagent-btn",".open-panel-btn",".agent-tool-banner",".mat-mdc-menu-panel"];A.closest(t.join(","))||this.clearCanvasSelection()}shouldIgnoreNodeInteraction(e){return e?!!e.closest("mat-chip, .add-subagent-btn, .mat-mdc-menu-panel"):!1}selectAgentNode(e,A={}){if(!e?.data)return;let t=this.agentBuilderService.getNode(e.data().name);t&&(this.agentBuilderService.setSelectedTool(void 0),this.agentBuilderService.setSelectedNode(t),this.nodePositions.set(t.name,P({},e.point())),A.openConfig&&this.agentBuilderService.requestSideTabChange("config"))}handleAgentTypeSelection(e,A,t,n,o=!1){n.stopPropagation(),t?.closeMenu(),this.onAgentTypeSelected(e,A,o)}clearCanvasSelection(){!this.selectedAgents.length&&!this.selectedTool&&!this.selectedCallback||(this.selectedAgents=[],this.selectedTool=void 0,this.selectedCallback=void 0,this.agentBuilderService.setSelectedNode(void 0),this.agentBuilderService.setSelectedTool(void 0),this.agentBuilderService.setSelectedCallback(void 0),this.cdr.markForCheck())}onAddResource(e){}onAgentTypeSelected(e,A,t=!1){A&&this.addSubAgent(A,e,t)}generateNodeId(){return this.nodeId+=1,this.nodeId.toString()}generateEdgeId(){return this.edgeId+=1,this.edgeId.toString()}createNode(e,A,t){let n=mA(e),a={id:this.generateNodeId(),point:mA(P({},A)),type:"html-template",data:n};return t&&(a.parentId=mA(t)),this.nodePositions.set(e.name,P({},a.point())),a}createWorkflowGroup(e,A,t,n,o,a){let r,s=null;if(n){let B=(o||this.groupNodes()).find(u=>u.id===n);if(B){let u=B.point(),E=B.height?B.height():this.workflowGroupHeight;if(a&&o){let f=a.filter(m=>m.parentId&&m.parentId()===B.id);if(f.length>0){let z=0;for(let j of f){let X=j.data?j.data():void 0,eA=120;X&&X.tools&&X.tools.length>0&&(eA+=20+X.tools.length*36),z=Math.max(z,eA)}E=Math.max(220,80+z+40)}}r={x:u.x,y:u.y+E+60},s=null}else r={x:t.x+this.workflowGroupXOffset,y:t.y+this.workflowGroupYOffset}}else r={x:t.x+this.workflowGroupXOffset,y:t.y+this.workflowGroupYOffset};let l=this.generateNodeId(),g={id:l,point:mA(r),type:"template-group",data:mA(e),parentId:mA(s),width:mA(this.workflowGroupWidth),height:mA(this.workflowGroupHeight)},C=e.agent_class==="SequentialAgent"?{id:this.generateEdgeId(),source:A.id,sourceHandle:"source-bottom",target:l,targetHandle:"target-top"}:null;return{groupNode:g,edge:C}}calculateWorkflowChildPosition(e,A){let r=(A-20)/2;return{x:45+e*428,y:r}}createAgentNodeWithGroup(e,A,t,n,o){let a=this.createNode(e,A,t),r=null,s=null;if(this.isWorkflowAgent(e.agent_class)){let l=this.createWorkflowGroup(e,a,A,t,n,o);r=l.groupNode,s=l.edge}return{shellNode:a,groupNode:r,groupEdge:s}}createWorkflowChildEdge(e,A){return this.createWorkflowChildEdgeFromArrays(e,A,this.nodes(),this.groupNodes())}createWorkflowChildEdgeFromArrays(e,A,t,n){if(!A)return null;let o=n.find(r=>r.id===A);if(!o||!o.data)return null;let a=o.data().agent_class;if(a==="LoopAgent"||a==="ParallelAgent"){let r=t.find(s=>s.data&&s.data().name===o.data().name);if(r)return{id:this.generateEdgeId(),source:r.id,sourceHandle:"source-bottom",target:e.id,targetHandle:"target-top"}}if(a==="SequentialAgent"){let r=t.filter(g=>g.parentId&&g.parentId()===A);if(r.length===0)return null;r.sort((g,C)=>g.point().x-C.point().x);let s=r.findIndex(g=>g.id===e.id);if(s<=0)return null;let l=r[s-1];return{id:this.generateEdgeId(),source:l.id,sourceHandle:"source-right",target:e.id,targetHandle:"target-left"}}return null}isWorkflowAgent(e){return e?e==="SequentialAgent"||e==="ParallelAgent"||e==="LoopAgent":!1}addSubAgent(e,A="LlmAgent",t=!1){let n=this.nodes().find(C=>C.data&&C.data().name===e);if(!n||!n.data)return;let a={name:this.agentBuilderService.getNextSubAgentName(),agent_class:A,model:"gemini-2.5-flash",instruction:"You are a sub-agent that performs specialized tasks.",isRoot:!1,sub_agents:[],tools:[]},r=this.isWorkflowAgent(n.data().agent_class),s=n.parentId&&n.parentId()&&this.groupNodes().some(C=>C.id===n.parentId()),l,g=null;if(t&&r){let C=n.data();if(!C)return;let d=this.groupNodes().find(v=>v.data&&v.data()?.name===C.name);if(!d){console.error("Could not find group for workflow node");return}let B=this.agentBuilderService.getNode(n.data().name);if(!B){console.error("Could not find clicked agent data");return}let u=B.sub_agents.length,E=d.height?d.height():this.workflowGroupHeight,f=this.calculateWorkflowChildPosition(u,E),m=this.createAgentNodeWithGroup(a,f,d.id);l=m.shellNode,g=m.groupNode,B.sub_agents.push(a),g&&this.groupNodes.set([...this.groupNodes(),g]),m.groupEdge&&this.edges.set([...this.edges(),m.groupEdge])}else if(s){let C=n.parentId()??void 0,d=this.groupNodes().find(S=>S.id===C);if(!d||!d.data){console.error("Could not find parent group node");return}let B=d.data().name,u=this.agentBuilderService.getNode(B);if(!u){console.error("Could not find workflow parent agent");return}let E=u.sub_agents.length,f=d.height?d.height():this.workflowGroupHeight,m=this.calculateWorkflowChildPosition(E,f),v=this.createAgentNodeWithGroup(a,m,C);l=v.shellNode,g=v.groupNode,u.sub_agents.push(a),g&&this.groupNodes.set([...this.groupNodes(),g]),v.groupEdge&&this.edges.set([...this.edges(),v.groupEdge])}else{let C=n.data().sub_agents.length,d={x:n.point().x+C*400,y:n.point().y+300},B=this.createAgentNodeWithGroup(a,d);l=B.shellNode,g=B.groupNode;let u=this.agentBuilderService.getNode(n.data().name);u&&u.sub_agents.push(a),g&&this.groupNodes.set([...this.groupNodes(),g]),B.groupEdge&&this.edges.set([...this.edges(),B.groupEdge])}if(this.agentBuilderService.addNode(a),this.nodes.set([...this.nodes(),l]),this.selectedAgents=[l],(s||r)&&this.updateGroupDimensions(),r||s){let C=l.parentId?l.parentId()??void 0:void 0,d=this.createWorkflowChildEdge(l,C);d&&this.edges.set([...this.edges(),d])}else{let C={id:this.generateEdgeId(),source:n.id,sourceHandle:"source-bottom",target:l.id,targetHandle:"target-top"};this.edges.set([...this.edges(),C])}this.agentBuilderService.setSelectedNode(a),this.agentBuilderService.requestSideTabChange("config")}addTool(e){let A=this.nodes().find(o=>o.id===e);if(!A||!A.data)return;let t=A.data();if(!t)return;this.dialog.open(Q2,{width:"500px"}).afterClosed().subscribe(o=>{if(o)if(o.toolType==="Agent Tool")this.createAgentTool(t.name);else{let a={toolType:o.toolType,name:o.name};this.agentBuilderService.addTool(t.name,a),this.agentBuilderService.setSelectedTool(a)}})}addCallback(e){let A=this.nodes().find(o=>o.id===e);if(!A||!A.data)return;let t={name:`callback_${this.callbackId}`,type:"before_agent",code:`def callback_function(callback_context): - # Add your callback logic here - return None`,description:"Auto-generated callback"};this.callbackId++;let n=this.agentBuilderService.addCallback(A.data().name,t);n.success||this._snackbarService.open(n.error||"Failed to add callback","Close",{duration:3e3,panelClass:["error-snackbar"]})}createAgentTool(e){this.dialog.open(vc,{width:"750px",height:"310px",data:{title:"Create Agent Tool",message:"Please enter a name for the agent tool:",confirmButtonText:"Create",showInput:!0,inputLabel:"Agent Tool Name",inputPlaceholder:"Enter agent tool name"}}).afterClosed().subscribe(t=>{t&&typeof t=="string"&&this.agentBuilderService.requestNewTab(t,e)})}deleteTool(e,A){let t=A.toolType==="Agent Tool",n=t&&A.toolAgentName||A.name;this.dialog.open(vc,{data:{title:t?"Delete Agent Tool":"Delete Tool",message:t?`Are you sure you want to delete the agent tool "${n}"? This will also delete the corresponding board.`:`Are you sure you want to delete ${n}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(a=>{a==="confirm"&&this.deleteToolWithoutDialog(e,A)})}deleteToolWithoutDialog(e,A){if(A.toolType==="Agent Tool"){let t=A.toolAgentName||A.name;this.deleteAgentToolAndBoard(e,A,t)}else this.agentBuilderService.deleteTool(e,A)}deleteAgentToolAndBoard(e,A,t){this.agentBuilderService.deleteTool(e,A),this.agentBuilderService.requestTabDeletion(t)}deleteCallback(e,A){this.dialog.open(vc,{data:{title:"Delete Callback",message:`Are you sure you want to delete ${A.name}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(n=>{if(n==="confirm"){let o=this.agentBuilderService.deleteCallback(e,A);o.success||this._snackbarService.open(o.error||"Failed to delete callback","Close",{duration:3e3,panelClass:["error-snackbar"]}),this.cdr.detectChanges()}})}openDeleteSubAgentDialog(e){this.dialog.open(vc,{data:{title:"Delete sub agent",message:`Are you sure you want to delete ${e}? This will also delete all the underlying sub agents and tools.`,confirmButtonText:"Delete"}}).afterClosed().subscribe(t=>{t==="confirm"&&this.deleteSubAgent(e)})}deleteSubAgent(e){let A=this.agentBuilderService.getNode(e);if(!A)return;let t=this.agentBuilderService.getParentNode(this.agentBuilderService.getRootNode(),A,void 0,this.agentToolBoards());t&&(this.deleteSubAgentHelper(A,t),this.agentBuilderService.getSelectedNode().pipe(Ro(1),Bt(n=>!!n)).subscribe(n=>{this.agentBuilderService.getNodes().includes(n)||this.agentBuilderService.setSelectedNode(t)}))}isNodeInSequentialWorkflow(e){if(!e.parentId||!e.parentId())return!1;let A=e.parentId(),t=this.groupNodes().find(n=>n.id===A);return!t||!t.data?!1:t.data().agent_class==="SequentialAgent"}getSequentialSiblings(e){if(!e.parentId||!e.parentId())return{previous:void 0,next:void 0};let A=e.parentId(),t=this.nodes().filter(o=>o.parentId&&o.parentId()===A);t.sort((o,a)=>o.point().x-a.point().x);let n=t.findIndex(o=>o.id===e.id);return n===-1?{previous:void 0,next:void 0}:{previous:n>0?t[n-1]:void 0,next:nn.data&&n.data().name===e.name);if(t){let n=this.isNodeInSequentialWorkflow(t),o,a;if(n){let s=this.getSequentialSiblings(t);o=s.previous,a=s.next}this.nodes.set(this.nodes().filter(s=>s.id!==t.id));let r=this.groupNodes().find(s=>s.data&&s.data().name===e.name);if(r){this.groupNodes.set(this.groupNodes().filter(l=>l.id!==r.id));let s=this.edges().filter(l=>l.target!==t.id&&l.source!==t.id&&l.target!==r.id&&l.source!==r.id);this.edges.set(s)}else{let s=this.edges().filter(l=>l.target!==t.id&&l.source!==t.id);this.edges.set(s)}if(n&&o&&a){let s={id:this.generateEdgeId(),source:o.id,sourceHandle:"source-right",target:a.id,targetHandle:"target-left"};this.edges.set([...this.edges(),s])}}this.nodePositions.delete(e.name),A.sub_agents=A.sub_agents.filter(n=>n.name!==e.name),this.agentBuilderService.deleteNode(e),t&&t.parentId&&t.parentId()&&this.updateGroupDimensions()}selectTool(e,A){if(e.toolType==="Agent Tool"){let t=e.name;this.switchToAgentToolBoard(t);return}if(e.toolType==="Function tool"||e.toolType==="Built-in tool"){if(A.data){let t=this.agentBuilderService.getNode(A.data().name);t&&this.editTool(e,t)}return}if(A.data){let t=this.agentBuilderService.getNode(A.data().name);t&&this.agentBuilderService.setSelectedNode(t)}this.agentBuilderService.setSelectedTool(e)}editTool(e,A){let t;e.toolType==="Built-in tool"?t=this.dialog.open(sI,{width:"700px",maxWidth:"90vw",data:{toolName:e.name,isEditMode:!0,toolArgs:e.args}}):t=this.dialog.open(Q2,{width:"500px",data:{toolType:e.toolType,toolName:e.name,isEditMode:!0}}),t.afterClosed().subscribe(n=>{if(n&&n.isEditMode){let o=A.tools?.findIndex(a=>a.name===e.name);o!==void 0&&o!==-1&&A.tools&&(A.tools[o].name=n.name,n.args&&(A.tools[o].args=n.args),this.agentBuilderService.setAgentTools(A.name,A.tools))}})}selectCallback(e,A){if(A.data){let t=this.agentBuilderService.getNode(A.data().name);t&&this.agentBuilderService.setSelectedNode(t)}this.agentBuilderService.setSelectedCallback(e)}openToolsTab(e){if(e.data){let A=this.agentBuilderService.getNode(e.data().name);A&&this.agentBuilderService.setSelectedNode(A)}this.agentBuilderService.requestSideTabChange("tools")}saveAgent(e){let A=this.agentBuilderService.getRootNode();if(!A){this._snackbarService.open("Please create an agent first.","OK");return}let t=new FormData,n=this.agentToolBoards();a0.generateYamlFile(A,t,e,n),this.agentService.agentBuild(e,t).subscribe(o=>{o?this.router.navigate(["/"],{queryParams:{app:e}}).then(()=>{window.location.reload()}):this._snackbarService.open("Something went wrong, please try again","OK")})}isRootAgent(e){let A=this.agentBuilderService.getRootNode();return A?A.name===e:!1}isRootAgentForCurrentTab(e){return this.isAgentToolMode&&this.currentAgentTool()?e===this.currentAgentTool():this.isRootAgent(e)}shouldShowHorizontalHandle(e,A){if(!e.parentId||!e.parentId())return!1;let t=e.parentId(),n=this.groupNodes().find(s=>s.id===t);if(!n||!n.data||n.data().agent_class!=="SequentialAgent")return!1;let a=this.nodes().filter(s=>s.parentId&&s.parentId()===t);if(a.length<=1)return!1;a.sort((s,l)=>s.point().x-l.point().x);let r=a.findIndex(s=>s.id===e.id);return A==="left"?r>0:r0):!1}shouldShowTopHandle(e){let A=e.data?e.data():void 0,t=A?.name,n=t?this.isRootAgent(t):!1;if(e.type==="template-group")return A?.agent_class==="SequentialAgent";if(n)return!1;if(e.parentId&&e.parentId()){let a=e.parentId(),r=this.groupNodes().find(s=>s.id===a);if(r&&r.data){let s=r.data().agent_class;if(s==="LoopAgent"||s==="ParallelAgent")return!0}return!1}return!0}getToolsForNode(e,A){return!e||!A?[]:A.get(e)??[]}loadFromYaml(e,A){try{let t=NB(e);this.agentBuilderService.clear(),this.nodePositions.clear(),this.agentToolBoards.set(new Map),this.agentBuilderService.setAgentToolBoards(new Map),this.currentAgentTool.set(null),this.isAgentToolMode=!1,this.navigationStack=[];let n=$A(P({name:t.name||"root_agent",agent_class:t.agent_class||"LlmAgent",model:t.model||"gemini-2.5-flash",instruction:t.instruction||"",description:t.description||""},t.max_iterations&&{max_iterations:t.max_iterations}),{isRoot:!0,sub_agents:t.sub_agents||[],tools:this.parseToolsFromYaml(t.tools||[]),callbacks:this.parseCallbacksFromYaml(t)});this.agentBuilderService.addNode(n),this.agentBuilderService.setSelectedNode(n),this.processAgentToolsFromYaml(n.tools||[],A),this.loadAgentBoard(n)}catch(t){console.error("Error parsing YAML:",t)}}parseToolsFromYaml(e){return e.map(A=>{let t={name:A.name,toolType:this.determineToolType(A),toolAgentName:A.name};if(A.name==="AgentTool"&&A.args&&A.args.agent&&A.args.agent.config_path){t.toolType="Agent Tool";let o=A.args.agent.config_path.replace("./","").replace(".yaml","");t.name=o,t.toolAgentName=o,t.args=A.args}else A.args&&(t.args=A.args);return t})}parseCallbacksFromYaml(e){let A=[];return Object.keys(e).forEach(t=>{if(t.endsWith("_callback")&&Array.isArray(e[t])){let n=t.replace("_callback","");e[t].forEach(o=>{o.name&&A.push({name:o.name,type:n})})}}),A}determineToolType(e){return e.name==="AgentTool"&&e.args&&e.args.agent?"Agent Tool":e.name&&e.name.includes(".")&&e.args?"Custom tool":e.name&&e.name.includes(".")&&!e.args?"Function tool":"Built-in tool"}processAgentToolsFromYaml(e,A){let t=e.filter(n=>n.toolType==="Agent Tool");for(let n of t)this.agentToolBoards().has(n.name)||this.loadAgentToolConfiguration(n,A)}loadAgentToolConfiguration(e,A){let t=e.name;this.agentService.getSubAgentBuilder(A,`${t}.yaml`).subscribe({next:n=>{if(n)try{let o=NB(n),a=$A(P({name:o.name||t,agent_class:o.agent_class||"LlmAgent",model:o.model||"gemini-2.5-flash",instruction:o.instruction||`You are the ${t} agent that can be used as a tool by other agents.`,description:o.description||""},o.max_iterations&&{max_iterations:o.max_iterations}),{isRoot:!1,sub_agents:o.sub_agents||[],tools:this.parseToolsFromYaml(o.tools||[]),callbacks:this.parseCallbacksFromYaml(o),isAgentTool:!0,skip_summarization:!!e.args?.skip_summarization}),r=this.agentToolBoards();if(r.set(t,a),this.agentToolBoards.set(r),this.agentBuilderService.setAgentToolBoards(r),this.agentBuilderService.addNode(a),this.processAgentToolsFromYaml(a.tools||[],A),a.sub_agents&&a.sub_agents.length>0)for(let s of a.sub_agents)s.config_path&&this.agentService.getSubAgentBuilder(A,s.config_path).subscribe(l=>{if(l){let g=NB(l);this.processAgentToolsFromYaml(this.parseToolsFromYaml(g.tools||[]),A)}})}catch(o){console.error(`Error parsing YAML for agent tool ${t}:`,o),this.createDefaultAgentToolConfiguration(e)}else this.createDefaultAgentToolConfiguration(e)},error:n=>{console.error(`Error loading agent tool configuration for ${t}:`,n),this.createDefaultAgentToolConfiguration(e)}})}createDefaultAgentToolConfiguration(e){let A=e.name,t={name:A,agent_class:"LlmAgent",model:"gemini-2.5-flash",instruction:`You are the ${A} agent that can be used as a tool by other agents.`,isRoot:!1,sub_agents:[],tools:[],isAgentTool:!0,skip_summarization:!!e.args?.skip_summarization},n=this.agentToolBoards();n.set(A,t),this.agentToolBoards.set(n),this.agentBuilderService.setAgentToolBoards(n),this.agentBuilderService.addNode(t)}loadAgentTools(e){e.tools?(e.tools=e.tools.filter(A=>A.name&&A.name.trim()!==""),e.tools.forEach(A=>{A.toolType!=="Agent Tool"&&(A.name.includes(".")&&A.args?A.toolType="Custom tool":A.name.includes(".")&&!A.args?A.toolType="Function tool":A.toolType="Built-in tool")})):e.tools=[]}isNodeSelected(e){return this.selectedAgents.includes(e)}isGroupSelected(e){if(!e.data)return!1;let A=e.data().name,t=this.nodes().find(n=>n.data&&n.data().name===A);return t?this.isNodeSelected(t):!1}loadSubAgents(e,A){return re(this,null,function*(){let t=[{node:A,depth:1,index:1,parentShellId:void 0,parentAgent:void 0,parentGroupId:void 0}],n=[],o=[],a=[];for(;t.length>0;){let{node:r,depth:s,index:l,parentShellId:g,parentAgent:C,parentGroupId:d}=t.shift(),B=r;if(r.config_path)try{let k=yield Zp(this.agentService.getSubAgentBuilder(e,r.config_path));B=NB(k),B.tools&&(B.tools=this.parseToolsFromYaml(B.tools||[])),this.processAgentToolsFromYaml(B.tools||[],e)}catch(k){console.error(`Failed to load agent from ${r.config_path}`,k);continue}if(C&&C.sub_agents){let k=C.sub_agents.indexOf(r);k!==-1&&(C.sub_agents[k]=B,this.agentBuilderService.addNode(C))}this.agentBuilderService.addNode(B);let u=this.nodePositions.get(B.name),E=this.isWorkflowAgent(B.agent_class),f=C?this.isWorkflowAgent(C.agent_class):!1,m,v,S=null;if(f&&!B.isRoot){let k=C?.sub_agents.indexOf(B)??l,M=o.find(z=>z.id===d),x=M?.height?M.height():this.workflowGroupHeight;m=u??this.calculateWorkflowChildPosition(k,x);let F=this.createAgentNodeWithGroup(B,m,d??void 0,o,n);v=F.shellNode,S=F.groupNode,n.push(v),S&&o.push(S),F.groupEdge&&a.push(F.groupEdge)}else{if(u)m=u;else if(!g)m={x:100,y:150};else{let M=n.find(x=>x.id===g);M?m={x:M.point().x+(l-1)*400,y:M.point().y+300}:m={x:100,y:s*150+50}}let k=this.createAgentNodeWithGroup(B,m,void 0,o,n);v=k.shellNode,S=k.groupNode,n.push(v),E&&!B.isRoot&&(S&&o.push(S),k.groupEdge&&a.push(k.groupEdge))}if(g)if(d){let k=this.createWorkflowChildEdgeFromArrays(v,d,n,o);k&&a.push(k)}else{let k={id:this.generateEdgeId(),source:g,sourceHandle:"source-bottom",target:v.id,targetHandle:"target-top"};a.push(k)}if(B.sub_agents&&B.sub_agents.length>0){let k=1,M=E&&S?S.id:d;for(let x of B.sub_agents)t.push({node:x,parentShellId:v.id,depth:s+1,index:k,parentAgent:B,parentGroupId:M}),k++}}this.nodes.set(n),this.groupNodes.set(o),this.edges.set(a),this.updateGroupDimensions()})}switchToAgentToolBoard(e,A){let t=this.currentAgentTool()||"main";t!==e&&this.navigationStack.push(t);let n=this.agentToolBoards(),o=n.get(e);if(!o){o={isRoot:!1,name:e,agent_class:"LlmAgent",model:"gemini-2.5-flash",instruction:`You are the ${e} agent that can be used as a tool by other agents.`,sub_agents:[],tools:[],isAgentTool:!0,skip_summarization:!1};let a=new Map(n);a.set(e,o),this.agentToolBoards.set(a),this.agentBuilderService.setAgentToolBoards(a),A?this.addAgentToolToAgent(e,A):this.addAgentToolToRoot(e)}this.currentAgentTool.set(e),this.isAgentToolMode=!0,this.loadAgentBoard(o),this.agentBuilderService.setSelectedNode(o),this.agentBuilderService.requestSideTabChange("config")}backToMainCanvas(){if(this.navigationStack.length>0){let e=this.navigationStack.pop();if(e==="main"){this.currentAgentTool.set(null),this.isAgentToolMode=!1;let A=this.agentBuilderService.getRootNode();A&&(this.loadAgentBoard(A),this.agentBuilderService.setSelectedNode(A),this.agentBuilderService.requestSideTabChange("config"))}else{let t=this.agentToolBoards().get(e);t&&(this.currentAgentTool.set(e),this.isAgentToolMode=!0,this.loadAgentBoard(t),this.agentBuilderService.setSelectedNode(t),this.agentBuilderService.requestSideTabChange("config"))}}else{this.currentAgentTool.set(null),this.isAgentToolMode=!1;let e=this.agentBuilderService.getRootNode();e&&(this.loadAgentBoard(e),this.agentBuilderService.setSelectedNode(e),this.agentBuilderService.requestSideTabChange("config"))}}loadAgentBoard(e){return re(this,null,function*(){if(this.captureCurrentNodePositions(),this.nodes.set([]),this.groupNodes.set([]),this.edges.set([]),this.nodeId=0,this.edgeId=0,this.loadAgentTools(e),this.agentBuilderService.addNode(e),e.tools&&e.tools.length>0?this.agentBuilderService.setAgentTools(e.name,e.tools):this.agentBuilderService.setAgentTools(e.name,[]),e.sub_agents&&e.sub_agents.length>0)yield this.loadSubAgents(this.appName,e);else{let A=this.nodePositions.get(e.name)??{x:100,y:150},t=this.createNode(e,A);if(this.nodes.set([t]),this.isWorkflowAgent(e.agent_class)){let{groupNode:n,edge:o}=this.createWorkflowGroup(e,t,A);this.groupNodes.set([n]),o&&this.edges.set([o])}}this.agentBuilderService.setSelectedNode(e)})}addAgentToolToAgent(e,A){let t=this.agentBuilderService.getNode(A);if(t){if(t.tools&&t.tools.some(o=>o.name===e))return;let n={name:e,toolType:"Agent Tool",toolAgentName:e};t.tools||(t.tools=[]),t.tools.push(n),t.tools=t.tools.filter(o=>o.name&&o.name.trim()!==""),this.agentBuilderService.setAgentTools(A,t.tools)}}addAgentToolToRoot(e){let A=this.agentBuilderService.getRootNode();if(A){if(A.tools&&A.tools.some(n=>n.name===e))return;let t={name:e,toolType:"Agent Tool",toolAgentName:e};A.tools||(A.tools=[]),A.tools.push(t),this.agentBuilderService.setAgentTools("root_agent",A.tools)}}deleteAgentToolBoard(e){let A=this.agentToolBoards(),t=new Map(A);t.delete(e),this.agentToolBoards.set(t),this.agentBuilderService.setAgentToolBoards(t);let n=this.agentBuilderService.getNodes();for(let o of n)o.tools&&(o.tools=o.tools.filter(a=>!(a.toolType==="Agent Tool"&&(a.toolAgentName===e||a.name===e))),this.agentBuilderService.setAgentTools(o.name,o.tools));this.navigationStack=this.navigationStack.filter(o=>o!==e),this.currentAgentTool()===e&&this.backToMainCanvas()}getBackButtonTooltip(){if(this.navigationStack.length>0){let e=this.navigationStack[this.navigationStack.length-1];return e==="main"?"Back to Main Canvas":`Back to ${e}`}return"Back to Main Canvas"}onBuilderAssistantClose(){this.builderAssistantCloseRequest.emit()}reloadCanvasFromYaml(){this.appNameInput&&this.agentService.getAgentBuilderTmp(this.appNameInput).subscribe({next:e=>{e&&this.loadFromYaml(e,this.appNameInput)},error:e=>{console.error("Error reloading canvas:",e)}})}captureCurrentNodePositions(){for(let e of this.nodes()){if(!e?.data)continue;let A=e.data();A&&this.nodePositions.set(A.name,P({},e.point()))}}updateGroupDimensions(){for(let s of this.groupNodes()){if(!s.data)continue;let l=s.data().name,g=this.nodes().filter(m=>m.parentId&&m.parentId()===s.id);if(g.length===0){s.width&&s.width.set(480),s.height&&s.height.set(220);continue}g.sort((m,v)=>m.point().x-v.point().x),g.forEach((m,v)=>{let F={x:45+v*428,y:80};if(m.point.set(F),m.data){let z=m.data();z&&this.nodePositions.set(z.name,F)}});let C=1/0,d=1/0,B=-1/0,u=-1/0;for(let m of g){let v=m.point(),S=m.data?m.data():void 0,k=120;S&&S.tools&&S.tools.length>0&&(k+=20+S.tools.length*36),C=Math.min(C,v.x),d=Math.min(d,v.y),B=Math.max(B,v.x+340+68),u=Math.max(u,v.y+k)}let E=B-C+80,f=u-d+80;s.width&&s.width.set(Math.max(480,E)),s.height&&s.height.set(Math.max(220,f))}}getToolIcon(e){return UB(e.name,e.toolType)}getAgentIcon(e){switch(e){case"SequentialAgent":return"more_horiz";case"LoopAgent":return"sync";case"ParallelAgent":return"density_medium";default:return"psychology"}}isGroupEmpty(e){return!this.nodes().some(t=>t.parentId&&t.parentId()===e)}shouldShowAddButton(e){let A=e.data?e.data():void 0;if(!A)return!1;let t=this.isWorkflowAgent(A.agent_class),n=e.parentId&&e.parentId();if(t&&!n||!this.isNodeSelected(e))return!1;if(n&&e.parentId){let o=e.parentId(),a=this.nodes().filter(s=>s.parentId&&s.parentId()===o);if(a.length===0)return!0;let r=a.reduce((s,l)=>l.point().x>s.point().x?l:s,a[0]);return e.id===r.id}return!0}static \u0275fac=function(A){return new(A||i)(st(Xa),st(dE),st(Is))};static \u0275cmp=vA({type:i,selectors:[["app-canvas"]],viewQuery:function(A,t){if(A&1&&Wt(w3A,5)(y3A,5),A&2){let n;se(n=le())&&(t.canvasRef=n.first),se(n=le())&&(t.svgCanvasRef=n.first)}},inputs:{showSidePanel:"showSidePanel",showBuilderAssistant:"showBuilderAssistant",appNameInput:"appNameInput"},outputs:{toggleSidePanelRequest:"toggleSidePanelRequest",builderAssistantCloseRequest:"builderAssistantCloseRequest"},features:[ii],decls:7,vars:8,consts:[["emptyGroupMenuTrigger","matMenuTrigger"],["emptyGroupMenu","matMenu"],["agentMenuTrigger","matMenuTrigger"],["agentMenu","matMenu"],[1,"canvas-container"],[1,"canvas-workspace",3,"click"],[1,"agent-tool-banner"],["matTooltip","Open panel",1,"material-symbols-outlined","open-panel-btn"],["view","auto",3,"nodes","edges","background","snapGrid"],[1,"canvas-instructions"],[3,"closePanel","reloadCanvas","isVisible","appName"],[1,"banner-content"],["mat-icon-button","",1,"back-to-main-btn",3,"click","matTooltip"],[1,"banner-info"],[1,"material-symbols-outlined","banner-icon"],[1,"banner-text"],[1,"agent-tool-name"],[1,"banner-subtitle"],["matTooltip","Open panel",1,"material-symbols-outlined","open-panel-btn",3,"click"],["groupNode",""],["nodeHtml",""],["selectable","","rx","12","ry","12",3,"click","pointerdown"],["x","12","y","12"],[1,"workflow-group-chip"],[1,"workflow-chip-icon"],[1,"workflow-chip-label"],["type","target","position","top","id","target-top"],[1,"empty-group-placeholder",3,"click"],["mat-icon-button","","matTooltip","Add sub-agent","aria-label","Add sub-agent",3,"click","matMenuTriggerFor"],[1,"empty-group-label"],["mat-menu-item","",3,"click"],["selectable","",1,"custom-node",3,"click","pointerdown"],[1,"node-title-wrapper"],[1,"node-title"],[2,"margin-right","5px"],[1,"node-badge"],[1,"action-button-bar"],["matIconButton","","matTooltip","Delete sub-agent","aria-label","Delete sub-agent",1,"action-btn","delete-subagent-btn"],[1,"tools-container"],[1,"add-subagent-container"],["type","target","position","left","id","target-left"],["type","source","position","right","id","source-right"],["type","source","position","bottom","id","source-bottom"],["matIconButton","","matTooltip","Delete sub-agent","aria-label","Delete sub-agent",1,"action-btn","delete-subagent-btn",3,"click"],[1,"tools-list"],[1,"tool-item"],[1,"tool-item",3,"click"],[1,"tool-item-icon"],[1,"tool-item-name"],["matIconButton","","matTooltip","Add sub-agent","aria-label","Add sub-agent",1,"add-subagent-btn",3,"click","matMenuTriggerFor"],[1,"add-subagent-symbol"],[1,"instruction-content"],[1,"instruction-icon"],[1,"instruction-tips"],[1,"tip"]],template:function(A,t){A&1&&(I(0,"div",4)(1,"div",5),U("click",function(o){return t.onCanvasClick(o)}),T(2,M3A,13,2,"div",6),T(3,S3A,2,0,"span",7),T(4,Y3A,3,6,"vflow",8),T(5,H3A,19,0,"div",9),h(),I(6,"app-builder-assistant",10),U("closePanel",function(){return t.onBuilderAssistantClose()})("reloadCanvas",function(){return t.reloadCanvasFromYaml()}),h()()),A&2&&(Q(),_A("has-banner",t.currentAgentTool()),Q(),O(t.currentAgentTool()?2:-1),Q(),O(t.showSidePanel?-1:3),Q(),O(t.vflowNodes().length>0?4:-1),Q(),O(t.vflowNodes().length===0?5:-1),Q(),H("isVisible",t.showBuilderAssistant)("appName",t.appName))},dependencies:[K5,Dp,U5,hE,k5,zt,rn,hs,Gs,tg,y5,gs],styles:['[_nghost-%COMP%]{width:100%;height:100%;display:flex;flex-direction:column;flex:1;min-height:0}.canvas-container[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;flex-direction:column;border-radius:8px;overflow:hidden;box-shadow:var(--builder-canvas-shadow);flex:1;min-height:0;position:relative}.canvas-header[_ngcontent-%COMP%]{padding:16px 24px;border-bottom:2px solid var(--builder-border-color);display:flex;justify-content:space-between;align-items:center}.canvas-header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0;color:var(--builder-text-primary-color);font-size:18px;font-weight:600;font-family:Google Sans,Helvetica Neue,sans-serif;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.canvas-controls[_ngcontent-%COMP%]{display:flex;gap:8px}.canvas-controls[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border:1px solid var(--builder-button-border-color);color:var(--builder-button-text-color);transition:all .3s ease}.canvas-controls[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover{border-color:var(--builder-button-hover-border-color);transform:translateY(-1px)}.canvas-workspace[_ngcontent-%COMP%]{flex:1;position:relative;overflow:hidden;min-height:0;width:100%;height:100%}.agent-tool-banner[_ngcontent-%COMP%]{position:absolute;top:0;left:0;right:0;border-bottom:2px solid rgba(59,130,246,.3);box-shadow:0 4px 16px #0000004d}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%]{padding:12px 20px;display:flex;align-items:center;gap:16px}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .back-to-main-btn[_ngcontent-%COMP%]{color:#fff;border:1px solid rgba(255,255,255,.2);transition:all .2s ease}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .back-to-main-btn[_ngcontent-%COMP%]:hover{transform:scale(1.05)}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .back-to-main-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;flex:1}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%] .banner-icon[_ngcontent-%COMP%]{font-size:28px;width:28px;height:28px;color:#ffffffe6}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%] .banner-text[_ngcontent-%COMP%] .agent-tool-name[_ngcontent-%COMP%]{margin:0;color:#fff;font-size:18px;font-weight:600;font-family:Google Sans,Helvetica Neue,sans-serif;line-height:1.2}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%] .banner-text[_ngcontent-%COMP%] .banner-subtitle[_ngcontent-%COMP%]{margin:0;color:#fffc;font-size:12px;font-weight:400;line-height:1}.canvas-workspace[_ngcontent-%COMP%]:has(.agent-tool-banner) vflow[_ngcontent-%COMP%]{padding-top:68px}.canvas-workspace.has-banner[_ngcontent-%COMP%] vflow{padding-top:68px!important} vflow{width:100%!important;height:100%!important;display:block!important} vflow .root-svg{color:var(--builder-text-primary-color)!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important}.diagram-canvas[_ngcontent-%COMP%]{display:block;width:100%;height:100%;cursor:crosshair;transition:cursor .2s ease;object-fit:contain;image-rendering:pixelated}.diagram-canvas[_ngcontent-%COMP%]:active{cursor:grabbing}.canvas-instructions[_ngcontent-%COMP%]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.instruction-content[_ngcontent-%COMP%]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--builder-canvas-instruction-border);border-radius:16px;padding:32px;box-shadow:var(--builder-canvas-shadow)}.instruction-content[_ngcontent-%COMP%] .instruction-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px;color:var(--builder-button-text-color);margin-bottom:16px;animation:_ngcontent-%COMP%_pulse 2s infinite}.instruction-content[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:20px;font-weight:600;margin:0 0 12px;font-family:Google Sans,Helvetica Neue,sans-serif}.instruction-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:14px;margin:0 0 24px;line-height:1.5}.instruction-tips[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.tip[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;color:var(--builder-accent-color);font-size:13px}.tip[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.connection-mode-indicator[_ngcontent-%COMP%]{position:absolute;top:20px;left:50%;transform:translate(-50%);animation:_ngcontent-%COMP%_slideDown .3s ease-out}.connection-indicator-content[_ngcontent-%COMP%]{color:#fff;padding:12px 20px;border-radius:24px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 16px #1b73e866;border:1px solid rgba(255,255,255,.2)}.connection-indicator-content[_ngcontent-%COMP%] .connection-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px;animation:_ngcontent-%COMP%_pulse 1.5s infinite}.connection-indicator-content[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px;font-weight:500;white-space:nowrap}.connection-indicator-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{color:#fff;border:1px solid rgba(255,255,255,.3);width:32px;height:32px;min-width:32px}.connection-indicator-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover{transform:scale(1.1)}.connection-indicator-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}@keyframes _ngcontent-%COMP%_slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.canvas-footer[_ngcontent-%COMP%]{padding:12px 24px;border-top:1px solid var(--builder-border-color);display:flex;justify-content:space-between;align-items:center}.node-count[_ngcontent-%COMP%], .connection-count[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;color:var(--builder-text-secondary-color);font-size:13px;font-weight:500}.node-count[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%], .connection-count[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:var(--builder-accent-color)}@keyframes _ngcontent-%COMP%_pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.canvas-workspace.drag-over[_ngcontent-%COMP%]:before{content:"";position:absolute;inset:0;border:2px dashed #00bbea;border-radius:8px;margin:16px;animation:_ngcontent-%COMP%_dashMove 1s linear infinite}@keyframes _ngcontent-%COMP%_dashMove{0%{border-color:#8ab4f84d}50%{border-color:#8ab4f8cc}to{border-color:#8ab4f84d}}@media(max-width:768px){.canvas-header[_ngcontent-%COMP%]{padding:12px 16px}.canvas-header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-size:16px}.instruction-content[_ngcontent-%COMP%]{padding:24px;margin:16px}.instruction-content[_ngcontent-%COMP%] .instruction-icon[_ngcontent-%COMP%]{font-size:36px;width:36px;height:36px}.instruction-content[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-size:18px}.canvas-footer[_ngcontent-%COMP%]{padding:8px 16px;flex-direction:column;gap:8px}}.custom-node[_ngcontent-%COMP%]{width:340px;border:1px solid var(--builder-canvas-node-border);border-radius:8px;align-items:center;position:relative;max-height:none;padding-bottom:0;overflow:visible}.custom-node[_ngcontent-%COMP%]:hover{border-color:var(--builder-canvas-node-hover-border)}.custom-node_selected[_ngcontent-%COMP%]{border:2px solid;border-color:var(--builder-accent-color)}.custom-node_selected[_ngcontent-%COMP%] mat-chip[_ngcontent-%COMP%]{--mdc-chip-outline-color: var(--builder-canvas-node-chip-outline)}.custom-node_selected[_ngcontent-%COMP%]:hover{border-color:var(--builder-accent-color)}[_nghost-%COMP%] .default-group-node{border:2px solid var(--builder-canvas-group-border)!important}.node-title-wrapper[_ngcontent-%COMP%]{padding-top:12px;padding-bottom:12px;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;align-items:center}.node-title[_ngcontent-%COMP%]{padding-left:12px;padding-right:12px;display:flex;align-items:center;color:var(--builder-text-primary-color);font-weight:500}.node-badge[_ngcontent-%COMP%]{margin-left:8px;padding:2px 6px;border-radius:999px;color:var(--builder-accent-color);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tools-container[_ngcontent-%COMP%]{padding:8px 12px;border-top:1px solid var(--builder-border-color)}.tools-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px}.tool-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:4px;cursor:pointer;transition:background-color .2s ease;color:var(--builder-text-primary-color)}.tool-item[_ngcontent-%COMP%] .tool-item-icon[_ngcontent-%COMP%]{font-size:22px;width:22px;height:22px;color:var(--builder-text-primary-color);flex-shrink:0}.tool-item[_ngcontent-%COMP%] .tool-item-name[_ngcontent-%COMP%]{font-family:Google Sans,sans-serif;font-size:15px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-item.more-tools[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-style:italic}.tool-item.more-tools[_ngcontent-%COMP%] .tool-item-icon[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color)}.custom-node_selected[_ngcontent-%COMP%] .node-title-wrapper[_ngcontent-%COMP%]{border-bottom-color:var(--builder-canvas-node-chip-outline)}.custom-node_selected[_ngcontent-%COMP%] .node-title-wrapper[_ngcontent-%COMP%] .node-title[_ngcontent-%COMP%]{color:var(--builder-accent-color)}.tools-header[_ngcontent-%COMP%]{font-family:Google Sans;color:var(--builder-text-muted-color);margin-bottom:10px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between}.callbacks-container[_ngcontent-%COMP%]{padding:12px 6px 12px 12px}.callbacks-header[_ngcontent-%COMP%]{font-family:Google Sans;color:var(--builder-text-muted-color);margin-bottom:10px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between}.callback-type[_ngcontent-%COMP%]{font-size:11px;color:var(--builder-accent-color);padding:2px 6px;border-radius:4px;margin-left:4px;font-weight:500}.add-callback-btn[_ngcontent-%COMP%]{border:none;cursor:pointer;border-radius:4px;width:28px;height:28px;padding:0}.add-callback-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin:0;font-size:18px;width:18px;height:18px}.add-callback-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);transform:scale(1.1)}.instruction-title[_ngcontent-%COMP%]{font-family:Google Sans;color:var(--builder-text-muted-color);margin-bottom:10px}.instructions[_ngcontent-%COMP%]{font-family:Google Sans;margin-bottom:10px}.agent-resources[_ngcontent-%COMP%]{padding:8px 12px}.empty-resource[_ngcontent-%COMP%]{margin-top:8px;color:var(--builder-text-secondary-color);margin-bottom:8px;display:flex;font-size:13px}.empty-resource[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{display:none}.action-button-bar[_ngcontent-%COMP%]{display:flex;gap:8px;margin-right:4px}.action-button-bar[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);border:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;pointer-events:auto;border-radius:4px}.action-button-bar[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);transform:scale(1.1)}.action-button-bar[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.action-button-bar[_ngcontent-%COMP%] .delete-subagent-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color)}.add-tool-btn[_ngcontent-%COMP%]{border:none;cursor:pointer;border-radius:4px;width:28px;height:28px;padding:0}.add-tool-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin:0;font-size:18px;width:18px;height:18px}.add-tool-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);transform:scale(1.1)}.add-subagent-container[_ngcontent-%COMP%]{position:absolute;left:50%;bottom:-68px;transform:translate(-50%);display:flex;justify-content:center;pointer-events:none}.custom-node.in-group[_ngcontent-%COMP%] .add-subagent-container[_ngcontent-%COMP%]{left:auto;right:-68px;bottom:50%;transform:translateY(50%)}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%]{width:48px;height:48px;border-radius:50%;border:2px solid var(--builder-accent-color);color:var(--builder-accent-color);display:flex;align-items:center;justify-content:center;padding:0;box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;pointer-events:auto}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%] .add-subagent-symbol[_ngcontent-%COMP%]{font-size:28px;line-height:1;font-weight:400}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%]:hover{transform:scale(1.05);box-shadow:var(--builder-canvas-add-btn-shadow)}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%]:focus-visible{outline:none;box-shadow:var(--builder-canvas-add-btn-shadow)}.open-panel-btn[_ngcontent-%COMP%]{position:absolute;width:24px;height:24px;color:var(--builder-text-tertiary-color);cursor:pointer;margin-left:20px;margin-top:20px}.custom-node[_ngcontent-%COMP%]:hover .action-button-bar[_ngcontent-%COMP%], .custom-node.custom-node_selected[_ngcontent-%COMP%] .action-button-bar[_ngcontent-%COMP%]{opacity:1;pointer-events:auto}[_nghost-%COMP%] div[nodehandlescontroller][noderesizecontroller].wrapper{height:0px!important;overflow:visible!important}[_nghost-%COMP%] foreignObject.selectable, [_nghost-%COMP%] foreignObject.selectable>div{overflow:visible!important}[_nghost-%COMP%] .interactive-edge{stroke:var(--builder-accent-color)!important;stroke-width:2!important}[_nghost-%COMP%] .default-handle{stroke:var(--builder-accent-color)!important;stroke-width:1!important;fill:var(--builder-canvas-handle-fill)!important}[_nghost-%COMP%] .reconnect-handle{stroke:var(--builder-accent-color)!important;stroke-width:2!important;fill:var(--builder-canvas-reconnect-handle-fill)!important}[_nghost-%COMP%] .workflow-group-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--builder-canvas-workflow-chip-border);border-radius:16px;color:var(--builder-accent-color);font-family:Google Sans,sans-serif;font-size:12px;font-weight:500;height:32px;box-sizing:border-box;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[_nghost-%COMP%] .workflow-group-chip .workflow-chip-icon{font-size:16px;width:16px;height:16px;line-height:16px}[_nghost-%COMP%] .workflow-group-chip .workflow-chip-label{color:var(--builder-text-primary-color);font-weight:500;font-size:12px;line-height:1}[_nghost-%COMP%] .empty-group-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;border-radius:8px;text-align:center;border:2px dashed var(--builder-canvas-empty-group-border);transition:all .3s ease}[_nghost-%COMP%] .empty-group-placeholder:hover{border-color:var(--builder-canvas-empty-group-hover-border)}[_nghost-%COMP%] .empty-group-placeholder button{border:2px solid var(--builder-accent-color);color:var(--builder-accent-color);width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}[_nghost-%COMP%] .empty-group-placeholder button:hover{transform:scale(1.1);box-shadow:var(--builder-canvas-add-btn-shadow)}[_nghost-%COMP%] .empty-group-placeholder button mat-icon{font-size:24px;width:24px;height:24px}[_nghost-%COMP%] .empty-group-placeholder .empty-group-label{font-size:13px;font-weight:500;color:var(--builder-text-secondary-color);font-family:Google Sans,sans-serif}']})};function z3A(i,e){i&1&&$n(0,"div",2)}var P3A=new MA("MAT_PROGRESS_BAR_DEFAULT_OPTIONS");var uE=(()=>{class i{_elementRef=w(ce);_ngZone=w(We);_changeDetectorRef=w(Mt);_renderer=w(on);_cleanupTransitionEnd;constructor(){let A=uQ(),t=w(P3A,{optional:!0});this._isNoopAnimation=A==="di-disabled",A==="reduced-motion"&&this._elementRef.nativeElement.classList.add("mat-progress-bar-reduced-motion"),t&&(t.color&&(this.color=this._defaultColor=t.color),this.mode=t.mode||this.mode)}_isNoopAnimation;get color(){return this._color||this._defaultColor}set color(A){this._color=A}_color;_defaultColor="primary";get value(){return this._value}set value(A){this._value=pZ(A||0),this._changeDetectorRef.markForCheck()}_value=0;get bufferValue(){return this._bufferValue||0}set bufferValue(A){this._bufferValue=pZ(A||0),this._changeDetectorRef.markForCheck()}_bufferValue=0;animationEnd=new FA;get mode(){return this._mode}set mode(A){this._mode=A,this._changeDetectorRef.markForCheck()}_mode="determinate";ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{this._cleanupTransitionEnd=this._renderer.listen(this._elementRef.nativeElement,"transitionend",this._transitionendHandler)})}ngOnDestroy(){this._cleanupTransitionEnd?.()}_getPrimaryBarTransform(){return`scaleX(${this._isIndeterminate()?1:this.value/100})`}_getBufferBarFlexBasis(){return`${this.mode==="buffer"?this.bufferValue:100}%`}_isIndeterminate(){return this.mode==="indeterminate"||this.mode==="query"}_transitionendHandler=A=>{this.animationEnd.observers.length===0||!A.target||!A.target.classList.contains("mdc-linear-progress__primary-bar")||(this.mode==="determinate"||this.mode==="buffer")&&this._ngZone.run(()=>this.animationEnd.next({value:this.value}))};static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-progress-bar"]],hostAttrs:["role","progressbar","aria-valuemin","0","aria-valuemax","100","tabindex","-1",1,"mat-mdc-progress-bar","mdc-linear-progress"],hostVars:10,hostBindings:function(t,n){t&2&&(ie("aria-valuenow",n._isIndeterminate()?null:n.value)("mode",n.mode),Ao("mat-"+n.color),_A("_mat-animation-noopable",n._isNoopAnimation)("mdc-linear-progress--animation-ready",!n._isNoopAnimation)("mdc-linear-progress--indeterminate",n._isIndeterminate()))},inputs:{color:"color",value:[2,"value","value",yn],bufferValue:[2,"bufferValue","bufferValue",yn],mode:"mode"},outputs:{animationEnd:"animationEnd"},exportAs:["matProgressBar"],decls:7,vars:5,consts:[["aria-hidden","true",1,"mdc-linear-progress__buffer"],[1,"mdc-linear-progress__buffer-bar"],[1,"mdc-linear-progress__buffer-dots"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__primary-bar"],[1,"mdc-linear-progress__bar-inner"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__secondary-bar"]],template:function(t,n){t&1&&(Ln(0,"div",0),$n(1,"div",1),T(2,z3A,1,0,"div",2),Xn(),Ln(3,"div",3),$n(4,"span",4),Xn(),Ln(5,"div",5),$n(6,"span",4),Xn()),t&2&&(Q(),ft("flex-basis",n._getBufferBarFlexBasis()),Q(),O(n.mode==="buffer"?2:-1),Q(),ft("transform",n._getPrimaryBarTransform()))},styles:[`.mat-mdc-progress-bar{--mat-progress-bar-animation-multiplier: 1;display:block;text-align:start}.mat-mdc-progress-bar[mode=query]{transform:scaleX(-1)}.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__buffer-dots,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__primary-bar,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__secondary-bar,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__bar-inner.mdc-linear-progress__bar-inner{animation:none}.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__primary-bar,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__buffer-bar{transition:transform 1ms}.mat-progress-bar-reduced-motion{--mat-progress-bar-animation-multiplier: 2}.mdc-linear-progress{position:relative;width:100%;transform:translateZ(0);outline:1px solid rgba(0,0,0,0);overflow-x:hidden;transition:opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);height:max(var(--mat-progress-bar-track-height, 4px),var(--mat-progress-bar-active-indicator-height, 4px))}@media(forced-colors: active){.mdc-linear-progress{outline-color:CanvasText}}.mdc-linear-progress__bar{position:absolute;top:0;bottom:0;margin:auto 0;width:100%;animation:none;transform-origin:top left;transition:transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);height:var(--mat-progress-bar-active-indicator-height, 4px)}.mdc-linear-progress--indeterminate .mdc-linear-progress__bar{transition:none}[dir=rtl] .mdc-linear-progress__bar{right:0;transform-origin:center right}.mdc-linear-progress__bar-inner{display:inline-block;position:absolute;width:100%;animation:none;border-top-style:solid;border-color:var(--mat-progress-bar-active-indicator-color, var(--mat-sys-primary));border-top-width:var(--mat-progress-bar-active-indicator-height, 4px)}.mdc-linear-progress__buffer{display:flex;position:absolute;top:0;bottom:0;margin:auto 0;width:100%;overflow:hidden;height:var(--mat-progress-bar-track-height, 4px);border-radius:var(--mat-progress-bar-track-shape, var(--mat-sys-corner-none))}.mdc-linear-progress__buffer-dots{background-image:radial-gradient(circle, var(--mat-progress-bar-track-color, var(--mat-sys-surface-variant)) calc(var(--mat-progress-bar-track-height, 4px) / 2), transparent 0);background-repeat:repeat-x;background-size:calc(calc(var(--mat-progress-bar-track-height, 4px) / 2)*5);background-position:left;flex:auto;transform:rotate(180deg);animation:mdc-linear-progress-buffering calc(250ms*var(--mat-progress-bar-animation-multiplier)) infinite linear}@media(forced-colors: active){.mdc-linear-progress__buffer-dots{background-color:ButtonBorder}}[dir=rtl] .mdc-linear-progress__buffer-dots{animation:mdc-linear-progress-buffering-reverse calc(250ms*var(--mat-progress-bar-animation-multiplier)) infinite linear;transform:rotate(0)}.mdc-linear-progress__buffer-bar{flex:0 1 100%;transition:flex-basis 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);background-color:var(--mat-progress-bar-track-color, var(--mat-sys-surface-variant))}.mdc-linear-progress__primary-bar{transform:scaleX(0)}.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar{left:-145.166611%}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar{animation:mdc-linear-progress-primary-indeterminate-translate calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar>.mdc-linear-progress__bar-inner{animation:mdc-linear-progress-primary-indeterminate-scale calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar{animation-name:mdc-linear-progress-primary-indeterminate-translate-reverse}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar{right:-145.166611%;left:auto}.mdc-linear-progress__secondary-bar{display:none}.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar{left:-54.888891%;display:block}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar{animation:mdc-linear-progress-secondary-indeterminate-translate calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar>.mdc-linear-progress__bar-inner{animation:mdc-linear-progress-secondary-indeterminate-scale calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar{animation-name:mdc-linear-progress-secondary-indeterminate-translate-reverse}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar{right:-54.888891%;left:auto}@keyframes mdc-linear-progress-buffering{from{transform:rotate(180deg) translateX(calc(var(--mat-progress-bar-track-height, 4px) * -2.5))}}@keyframes mdc-linear-progress-primary-indeterminate-translate{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.67142%)}100%{transform:translateX(200.611057%)}}@keyframes mdc-linear-progress-primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes mdc-linear-progress-secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.651913%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.386165%)}100%{transform:translateX(160.277782%)}}@keyframes mdc-linear-progress-secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes mdc-linear-progress-primary-indeterminate-translate-reverse{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(-83.67142%)}100%{transform:translateX(-200.611057%)}}@keyframes mdc-linear-progress-secondary-indeterminate-translate-reverse{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(-37.651913%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(-84.386165%)}100%{transform:translateX(-160.277782%)}}@keyframes mdc-linear-progress-buffering-reverse{from{transform:translateX(-10px)}} -`],encapsulation:2,changeDetection:0})}return i})();function pZ(i,e=0,A=100){return Math.max(e,Math.min(A,i))}var pE=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();var j3A=["switch"],V3A=["*"];function q3A(i,e){i&1&&(I(0,"span",11),Et(),I(1,"svg",13),lA(2,"path",14),h(),I(3,"svg",15),lA(4,"path",16),h()())}var W3A=new MA("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1,hideIcon:!1,disabledInteractive:!1})}),T5=class{source;checked;constructor(e,A){this.source=e,this.checked=A}},Z3A=(()=>{class i{_elementRef=w(ce);_focusMonitor=w(rr);_changeDetectorRef=w(Mt);defaults=w(W3A);_onChange=A=>{};_onTouched=()=>{};_validatorOnChange=()=>{};_uniqueId;_checked=!1;_createChangeEvent(A){return new T5(this,A)}_labelId;get buttonId(){return`${this.id||this._uniqueId}-button`}_switchElement;focus(){this._switchElement.nativeElement.focus()}_noopAnimations=In();_focused=!1;name=null;id;labelPosition="after";ariaLabel=null;ariaLabelledby=null;ariaDescribedby;required=!1;color;disabled=!1;disableRipple=!1;tabIndex=0;get checked(){return this._checked}set checked(A){this._checked=A,this._changeDetectorRef.markForCheck()}hideIcon;disabledInteractive;change=new FA;toggleChange=new FA;get inputId(){return`${this.id||this._uniqueId}-input`}constructor(){w(Eo).load(Qr);let A=w(new Ys("tabindex"),{optional:!0}),t=this.defaults;this.tabIndex=A==null?0:parseInt(A)||0,this.color=t.color||"accent",this.id=this._uniqueId=w(Dn).getId("mat-mdc-slide-toggle-"),this.hideIcon=t.hideIcon??!1,this.disabledInteractive=t.disabledInteractive??!1,this._labelId=this._uniqueId+"-label"}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(A=>{A==="keyboard"||A==="program"?(this._focused=!0,this._changeDetectorRef.markForCheck()):A||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnChanges(A){A.required&&this._validatorOnChange()}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(A){this.checked=!!A}registerOnChange(A){this._onChange=A}registerOnTouched(A){this._onTouched=A}validate(A){return this.required&&A.value!==!0?{required:!0}:null}registerOnValidatorChange(A){this._validatorOnChange=A}setDisabledState(A){this.disabled=A,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}_handleClick(){this.disabled||(this.toggleChange.emit(),this.defaults.disableToggleValue||(this.checked=!this.checked,this._onChange(this.checked),this.change.emit(new T5(this,this.checked))))}_getAriaLabelledBy(){return this.ariaLabelledby?this.ariaLabelledby:this.ariaLabel?null:this._labelId}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-slide-toggle"]],viewQuery:function(t,n){if(t&1&&Wt(j3A,5),t&2){let o;se(o=le())&&(n._switchElement=o.first)}},hostAttrs:[1,"mat-mdc-slide-toggle"],hostVars:13,hostBindings:function(t,n){t&2&&(Ma("id",n.id),ie("tabindex",null)("aria-label",null)("name",null)("aria-labelledby",null),Ao(n.color?"mat-"+n.color:""),_A("mat-mdc-slide-toggle-focused",n._focused)("mat-mdc-slide-toggle-checked",n.checked)("_mat-animation-noopable",n._noopAnimations))},inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],required:[2,"required","required",Qe],color:"color",disabled:[2,"disabled","disabled",Qe],disableRipple:[2,"disableRipple","disableRipple",Qe],tabIndex:[2,"tabIndex","tabIndex",A=>A==null?0:yn(A)],checked:[2,"checked","checked",Qe],hideIcon:[2,"hideIcon","hideIcon",Qe],disabledInteractive:[2,"disabledInteractive","disabledInteractive",Qe]},outputs:{change:"change",toggleChange:"toggleChange"},exportAs:["matSlideToggle"],features:[pt([{provide:cs,useExisting:Va(()=>i),multi:!0},{provide:Oc,useExisting:i,multi:!0}]),ii],ngContentSelectors:V3A,decls:14,vars:27,consts:[["switch",""],["mat-internal-form-field","",3,"labelPosition"],["role","switch","type","button",1,"mdc-switch",3,"click","tabIndex","disabled"],[1,"mat-mdc-slide-toggle-touch-target"],[1,"mdc-switch__track"],[1,"mdc-switch__handle-track"],[1,"mdc-switch__handle"],[1,"mdc-switch__shadow"],[1,"mdc-elevation-overlay"],[1,"mdc-switch__ripple"],["mat-ripple","",1,"mat-mdc-slide-toggle-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-switch__icons"],[1,"mdc-label",3,"click","for"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--on"],["d","M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--off"],["d","M20 13H4v-2h16v2z"]],template:function(t,n){if(t&1&&(Ot(),I(0,"div",1)(1,"button",2,0),U("click",function(){return n._handleClick()}),lA(3,"div",3)(4,"span",4),I(5,"span",5)(6,"span",6)(7,"span",7),lA(8,"span",8),h(),I(9,"span",9),lA(10,"span",10),h(),T(11,q3A,5,0,"span",11),h()()(),I(12,"label",12),U("click",function(a){return a.stopPropagation()}),Ze(13),h()()),t&2){let o=Bi(2);H("labelPosition",n.labelPosition),Q(),_A("mdc-switch--selected",n.checked)("mdc-switch--unselected",!n.checked)("mdc-switch--checked",n.checked)("mdc-switch--disabled",n.disabled)("mat-mdc-slide-toggle-disabled-interactive",n.disabledInteractive),H("tabIndex",n.disabled&&!n.disabledInteractive?-1:n.tabIndex)("disabled",n.disabled&&!n.disabledInteractive),ie("id",n.buttonId)("name",n.name)("aria-label",n.ariaLabel)("aria-labelledby",n._getAriaLabelledBy())("aria-describedby",n.ariaDescribedby)("aria-required",n.required||null)("aria-checked",n.checked)("aria-disabled",n.disabled&&n.disabledInteractive?"true":null),Q(9),H("matRippleTrigger",o)("matRippleDisabled",n.disableRipple||n.disabled)("matRippleCentered",!0),Q(),O(n.hideIcon?-1:11),Q(),H("for",n.buttonId),ie("id",n._labelId)}},dependencies:[Cs,C6],styles:[`.mdc-switch{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;margin:0;outline:none;overflow:visible;padding:0;position:relative;width:var(--mat-slide-toggle-track-width, 52px)}.mdc-switch.mdc-switch--disabled{cursor:default;pointer-events:none}.mdc-switch.mat-mdc-slide-toggle-disabled-interactive{pointer-events:auto}.mdc-switch__track{overflow:hidden;position:relative;width:100%;height:var(--mat-slide-toggle-track-height, 32px);border-radius:var(--mat-slide-toggle-track-shape, var(--mat-sys-corner-full))}.mdc-switch--disabled.mdc-switch .mdc-switch__track{opacity:var(--mat-slide-toggle-disabled-track-opacity, 0.12)}.mdc-switch__track::before,.mdc-switch__track::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";height:100%;left:0;position:absolute;width:100%;border-width:var(--mat-slide-toggle-track-outline-width, 2px);border-color:var(--mat-slide-toggle-track-outline-color, var(--mat-sys-outline))}.mdc-switch--selected .mdc-switch__track::before,.mdc-switch--selected .mdc-switch__track::after{border-width:var(--mat-slide-toggle-selected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-selected-track-outline-color, transparent)}.mdc-switch--disabled .mdc-switch__track::before,.mdc-switch--disabled .mdc-switch__track::after{border-width:var(--mat-slide-toggle-disabled-unselected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-disabled-unselected-track-outline-color, var(--mat-sys-on-surface))}@media(forced-colors: active){.mdc-switch__track{border-color:currentColor}}.mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:translateX(0);background:var(--mat-slide-toggle-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch--selected .mdc-switch__track::before{transform:translateX(-100%)}.mdc-switch--selected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-hover-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-focus-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:active .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-pressed-track-color, var(--mat-sys-surface-variant))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::before,.mdc-switch.mdc-switch--disabled .mdc-switch__track::before{background:var(--mat-slide-toggle-disabled-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch__track::after{transform:translateX(-100%);background:var(--mat-slide-toggle-selected-track-color, var(--mat-sys-primary))}[dir=rtl] .mdc-switch__track::after{transform:translateX(100%)}.mdc-switch--selected .mdc-switch__track::after{transform:translateX(0)}.mdc-switch--selected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-hover-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-focus-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:active .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-pressed-track-color, var(--mat-sys-primary))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::after,.mdc-switch.mdc-switch--disabled .mdc-switch__track::after{background:var(--mat-slide-toggle-disabled-selected-track-color, var(--mat-sys-on-surface))}.mdc-switch__handle-track{height:100%;pointer-events:none;position:absolute;top:0;transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);left:0;right:auto;transform:translateX(0);width:calc(100% - var(--mat-slide-toggle-handle-width))}[dir=rtl] .mdc-switch__handle-track{left:auto;right:0}.mdc-switch--selected .mdc-switch__handle-track{transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch__handle-track{transform:translateX(-100%)}.mdc-switch__handle{display:flex;pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);left:0;right:auto;transition:width 75ms cubic-bezier(0.4, 0, 0.2, 1),height 75ms cubic-bezier(0.4, 0, 0.2, 1),margin 75ms cubic-bezier(0.4, 0, 0.2, 1);width:var(--mat-slide-toggle-handle-width);height:var(--mat-slide-toggle-handle-height);border-radius:var(--mat-slide-toggle-handle-shape, var(--mat-sys-corner-full))}[dir=rtl] .mdc-switch__handle{left:auto;right:0}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle{width:var(--mat-slide-toggle-unselected-handle-size, 16px);height:var(--mat-slide-toggle-unselected-handle-size, 16px);margin:var(--mat-slide-toggle-unselected-handle-horizontal-margin, 0 8px)}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-unselected-with-icon-handle-horizontal-margin, 0 4px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle{width:var(--mat-slide-toggle-selected-handle-size, 24px);height:var(--mat-slide-toggle-selected-handle-size, 24px);margin:var(--mat-slide-toggle-selected-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-selected-with-icon-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch__handle:has(.mdc-switch__icons){width:var(--mat-slide-toggle-with-icon-handle-size, 24px);height:var(--mat-slide-toggle-with-icon-handle-size, 24px)}.mat-mdc-slide-toggle .mdc-switch:active:not(.mdc-switch--disabled) .mdc-switch__handle{width:var(--mat-slide-toggle-pressed-handle-size, 28px);height:var(--mat-slide-toggle-pressed-handle-size, 28px)}.mat-mdc-slide-toggle .mdc-switch--selected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-selected-pressed-handle-horizontal-margin, 0 22px)}.mat-mdc-slide-toggle .mdc-switch--unselected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-unselected-pressed-handle-horizontal-margin, 0 2px)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-selected-handle-opacity, 1)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-unselected-handle-opacity, 0.38)}.mdc-switch__handle::before,.mdc-switch__handle::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";width:100%;height:100%;left:0;position:absolute;top:0;transition:background-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1),border-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);z-index:-1}@media(forced-colors: active){.mdc-switch__handle::before,.mdc-switch__handle::after{border-color:currentColor}}.mdc-switch--selected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-handle-color, var(--mat-sys-on-primary))}.mdc-switch--selected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-hover-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-focus-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-pressed-handle-color, var(--mat-sys-primary-container))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:hover:not(:focus):not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:focus:not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:active .mdc-switch__handle::after,.mdc-switch--selected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-selected-handle-color, var(--mat-sys-surface))}.mdc-switch--unselected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-handle-color, var(--mat-sys-outline))}.mdc-switch--unselected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-hover-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-focus-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-pressed-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-unselected-handle-color, var(--mat-sys-on-surface))}.mdc-switch__handle::before{background:var(--mat-slide-toggle-handle-surface-color)}.mdc-switch__shadow{border-radius:inherit;bottom:0;left:0;position:absolute;right:0;top:0}.mdc-switch:enabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-handle-elevation-shadow)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__shadow,.mdc-switch.mdc-switch--disabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-disabled-handle-elevation-shadow)}.mdc-switch__ripple{left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);z-index:-1;width:var(--mat-slide-toggle-state-layer-size, 40px);height:var(--mat-slide-toggle-state-layer-size, 40px)}.mdc-switch__ripple::after{content:"";opacity:0}.mdc-switch--disabled .mdc-switch__ripple::after{display:none}.mat-mdc-slide-toggle-disabled-interactive .mdc-switch__ripple::after{display:block}.mdc-switch:hover .mdc-switch__ripple::after{transition:75ms opacity cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:focus .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:active .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:hover:not(:focus) .mdc-switch__ripple::after,.mdc-switch--unselected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-hover-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--unselected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-focus-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--unselected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-pressed-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch--selected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-hover-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--selected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-focus-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--selected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-pressed-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch__icons{position:relative;height:100%;width:100%;z-index:1;transform:translateZ(0)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-unselected-icon-opacity, 0.38)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-selected-icon-opacity, 0.38)}.mdc-switch__icon{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;opacity:0;transition:opacity 30ms 0ms cubic-bezier(0.4, 0, 1, 1)}.mdc-switch--unselected .mdc-switch__icon{width:var(--mat-slide-toggle-unselected-icon-size, 16px);height:var(--mat-slide-toggle-unselected-icon-size, 16px);fill:var(--mat-slide-toggle-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__icon{width:var(--mat-slide-toggle-selected-icon-size, 16px);height:var(--mat-slide-toggle-selected-icon-size, 16px);fill:var(--mat-slide-toggle-selected-icon-color, var(--mat-sys-on-primary-container))}.mdc-switch--selected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-selected-icon-color, var(--mat-sys-on-surface))}.mdc-switch--selected .mdc-switch__icon--on,.mdc-switch--unselected .mdc-switch__icon--off{opacity:1;transition:opacity 45ms 30ms cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle{-webkit-user-select:none;user-select:none;display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple,.mat-mdc-slide-toggle .mdc-switch__ripple::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple:not(:empty),.mat-mdc-slide-toggle .mdc-switch__ripple::after:not(:empty){transform:translateZ(0)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mat-focus-indicator::before{content:""}.mat-mdc-slide-toggle .mat-internal-form-field{color:var(--mat-slide-toggle-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-slide-toggle-label-text-font, var(--mat-sys-body-medium-font));line-height:var(--mat-slide-toggle-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-slide-toggle-label-text-size, var(--mat-sys-body-medium-size));letter-spacing:var(--mat-slide-toggle-label-text-tracking, var(--mat-sys-body-medium-tracking));font-weight:var(--mat-slide-toggle-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-slide-toggle .mat-ripple-element{opacity:.12}.mat-mdc-slide-toggle .mat-focus-indicator::before{border-radius:50%}.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle-track,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__icon,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::after,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::after{transition:none}.mat-mdc-slide-toggle .mdc-switch:enabled+.mdc-label{cursor:pointer}.mat-mdc-slide-toggle .mdc-switch--disabled+label{color:var(--mat-slide-toggle-disabled-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-slide-toggle label:empty{display:none}.mat-mdc-slide-toggle-touch-target{position:absolute;top:50%;left:50%;height:var(--mat-slide-toggle-touch-target-size, 48px);width:100%;transform:translate(-50%, -50%);display:var(--mat-slide-toggle-touch-target-display, block)}[dir=rtl] .mat-mdc-slide-toggle-touch-target{left:auto;right:50%;transform:translate(50%, -50%)} -`],encapsulation:2,changeDetection:0})}return i})(),mZ=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Z3A,Di]})}return i})();var aR=["*"];function X3A(i,e){i&1&&Ze(0)}var $3A=["tabListContainer"],AfA=["tabList"],efA=["tabListInner"],tfA=["nextPaginator"],ifA=["previousPaginator"],nfA=["content"];function ofA(i,e){}var afA=["tabBodyWrapper"],rfA=["tabHeader"];function sfA(i,e){}function lfA(i,e){if(i&1&&kt(0,sfA,0,0,"ng-template",12),i&2){let A=p().$implicit;H("cdkPortalOutlet",A.templateLabel)}}function gfA(i,e){if(i&1&&D(0),i&2){let A=p().$implicit;nA(A.textLabel)}}function cfA(i,e){if(i&1){let A=aA();I(0,"div",7,2),U("click",function(){let n=L(A),o=n.$implicit,a=n.$index,r=p(),s=Bi(1);return G(r._handleClick(o,s,a))})("cdkFocusChange",function(n){let o=L(A).$index,a=p();return G(a._tabFocusChanged(n,o))}),lA(2,"span",8)(3,"div",9),I(4,"span",10)(5,"span",11),T(6,lfA,1,1,null,12)(7,gfA,1,1),h()()()}if(i&2){let A=e.$implicit,t=e.$index,n=Bi(1),o=p();Ao(A.labelClass),_A("mdc-tab--active",o.selectedIndex===t),H("id",o._getTabLabelId(A,t))("disabled",A.disabled)("fitInkBarToContent",o.fitInkBarToContent),ie("tabIndex",o._getTabIndex(t))("aria-posinset",t+1)("aria-setsize",o._tabs.length)("aria-controls",o._getTabContentId(t))("aria-selected",o.selectedIndex===t)("aria-label",A.ariaLabel||null)("aria-labelledby",!A.ariaLabel&&A.ariaLabelledby?A.ariaLabelledby:null),Q(3),H("matRippleTrigger",n)("matRippleDisabled",A.disabled||o.disableRipple),Q(3),O(A.templateLabel?6:7)}}function CfA(i,e){i&1&&Ze(0)}function dfA(i,e){if(i&1){let A=aA();I(0,"mat-tab-body",13),U("_onCentered",function(){L(A);let n=p();return G(n._removeTabBodyWrapperHeight())})("_onCentering",function(n){L(A);let o=p();return G(o._setTabBodyWrapperHeight(n))})("_beforeCentering",function(n){L(A);let o=p();return G(o._bodyCentered(n))}),h()}if(i&2){let A=e.$implicit,t=e.$index,n=p();Ao(A.bodyClass),H("id",n._getTabContentId(t))("content",A.content)("position",A.position)("animationDuration",n.animationDuration)("preserveContent",n.preserveContent),ie("tabindex",n.contentTabIndex!=null&&n.selectedIndex===t?n.contentTabIndex:null)("aria-labelledby",n._getTabLabelId(A,t))("aria-hidden",n.selectedIndex!==t)}}var IfA=new MA("MatTabContent"),BfA=(()=>{class i{template=w(wo);constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matTabContent",""]],features:[pt([{provide:IfA,useExisting:i}])]})}return i})(),hfA=new MA("MatTabLabel"),vZ=new MA("MAT_TAB"),vp=(()=>{class i extends FU{_closestTab=w(vZ,{optional:!0});static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[pt([{provide:hfA,useExisting:i}]),bt]})}return i})(),bZ=new MA("MAT_TAB_GROUP"),bp=(()=>{class i{_viewContainerRef=w(Jo);_closestTabGroup=w(bZ,{optional:!0});disabled=!1;get templateLabel(){return this._templateLabel}set templateLabel(A){this._setTemplateLabelInput(A)}_templateLabel;_explicitContent=void 0;_implicitContent;textLabel="";ariaLabel;ariaLabelledby;labelClass;bodyClass;id=null;_contentPortal=null;get content(){return this._contentPortal}_stateChanges=new ne;position=null;origin=null;isActive=!1;constructor(){w(Eo).load(Qr)}ngOnChanges(A){(A.hasOwnProperty("textLabel")||A.hasOwnProperty("disabled"))&&this._stateChanges.next()}ngOnDestroy(){this._stateChanges.complete()}ngOnInit(){this._contentPortal=new jr(this._explicitContent||this._implicitContent,this._viewContainerRef)}_setTemplateLabelInput(A){A&&A._closestTab===this&&(this._templateLabel=A)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-tab"]],contentQueries:function(t,n,o){if(t&1&&ra(o,vp,5)(o,BfA,7,wo),t&2){let a;se(a=le())&&(n.templateLabel=a.first),se(a=le())&&(n._explicitContent=a.first)}},viewQuery:function(t,n){if(t&1&&Wt(wo,7),t&2){let o;se(o=le())&&(n._implicitContent=o.first)}},hostAttrs:["hidden",""],hostVars:1,hostBindings:function(t,n){t&2&&ie("id",null)},inputs:{disabled:[2,"disabled","disabled",Qe],textLabel:[0,"label","textLabel"],ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass",id:"id"},exportAs:["matTab"],features:[pt([{provide:vZ,useExisting:i}]),ii],ngContentSelectors:aR,decls:1,vars:0,template:function(t,n){t&1&&(Ot(),s3(0,X3A,1,0,"ng-template"))},encapsulation:2})}return i})(),tR="mdc-tab-indicator--active",wZ="mdc-tab-indicator--no-transition",iR=class{_items;_currentItem;constructor(e){this._items=e}hide(){this._items.forEach(e=>e.deactivateInkBar()),this._currentItem=void 0}alignToElement(e){let A=this._items.find(n=>n.elementRef.nativeElement===e),t=this._currentItem;if(A!==t&&(t?.deactivateInkBar(),A)){let n=t?.elementRef.nativeElement.getBoundingClientRect?.();A.activateInkBar(n),this._currentItem=A}}},EfA=(()=>{class i{_elementRef=w(ce);_inkBarElement=null;_inkBarContentElement=null;_fitToContent=!1;get fitInkBarToContent(){return this._fitToContent}set fitInkBarToContent(A){this._fitToContent!==A&&(this._fitToContent=A,this._inkBarElement&&this._appendInkBarElement())}activateInkBar(A){let t=this._elementRef.nativeElement;if(!A||!t.getBoundingClientRect||!this._inkBarContentElement){t.classList.add(tR);return}let n=t.getBoundingClientRect(),o=A.width/n.width,a=A.left-n.left;t.classList.add(wZ),this._inkBarContentElement.style.setProperty("transform",`translateX(${a}px) scaleX(${o})`),t.getBoundingClientRect(),t.classList.remove(wZ),t.classList.add(tR),this._inkBarContentElement.style.setProperty("transform","")}deactivateInkBar(){this._elementRef.nativeElement.classList.remove(tR)}ngOnInit(){this._createInkBarElement()}ngOnDestroy(){this._inkBarElement?.remove(),this._inkBarElement=this._inkBarContentElement=null}_createInkBarElement(){let A=this._elementRef.nativeElement.ownerDocument||document,t=this._inkBarElement=A.createElement("span"),n=this._inkBarContentElement=A.createElement("span");t.className="mdc-tab-indicator",n.className="mdc-tab-indicator__content mdc-tab-indicator__content--underline",t.appendChild(this._inkBarContentElement),this._appendInkBarElement()}_appendInkBarElement(){this._inkBarElement;let A=this._fitToContent?this._elementRef.nativeElement.querySelector(".mdc-tab__content"):this._elementRef.nativeElement;A.appendChild(this._inkBarElement)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,inputs:{fitInkBarToContent:[2,"fitInkBarToContent","fitInkBarToContent",Qe]}})}return i})();var MZ=(()=>{class i extends EfA{elementRef=w(ce);disabled=!1;focus(){this.elementRef.nativeElement.focus()}getOffsetLeft(){return this.elementRef.nativeElement.offsetLeft}getOffsetWidth(){return this.elementRef.nativeElement.offsetWidth}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(t,n){t&2&&(ie("aria-disabled",!!n.disabled),_A("mat-mdc-tab-disabled",n.disabled))},inputs:{disabled:[2,"disabled","disabled",Qe]},features:[bt]})}return i})(),yZ={passive:!0},QfA=650,ufA=100,pfA=(()=>{class i{_elementRef=w(ce);_changeDetectorRef=w(Mt);_viewportRuler=w(Ns);_dir=w(No,{optional:!0});_ngZone=w(We);_platform=w(Qi);_sharedResizeObserver=w(H3);_injector=w(St);_renderer=w(on);_animationsDisabled=In();_eventCleanups;_scrollDistance=0;_selectedIndexChanged=!1;_destroyed=new ne;_showPaginationControls=!1;_disableScrollAfter=!0;_disableScrollBefore=!0;_tabLabelCount;_scrollDistanceChanged=!1;_keyManager;_currentTextContent;_stopScrolling=new ne;disablePagination=!1;get selectedIndex(){return this._selectedIndex}set selectedIndex(A){let t=isNaN(A)?0:A;this._selectedIndex!=t&&(this._selectedIndexChanged=!0,this._selectedIndex=t,this._keyManager&&this._keyManager.updateActiveItem(t))}_selectedIndex=0;selectFocusedIndex=new FA;indexFocused=new FA;constructor(){this._eventCleanups=this._ngZone.runOutsideAngular(()=>[this._renderer.listen(this._elementRef.nativeElement,"mouseleave",()=>this._stopInterval())])}ngAfterViewInit(){this._eventCleanups.push(this._renderer.listen(this._previousPaginator.nativeElement,"touchstart",()=>this._handlePaginatorPress("before"),yZ),this._renderer.listen(this._nextPaginator.nativeElement,"touchstart",()=>this._handlePaginatorPress("after"),yZ))}ngAfterContentInit(){let A=this._dir?this._dir.change:oe("ltr"),t=this._sharedResizeObserver.observe(this._elementRef.nativeElement).pipe(Os(32),yt(this._destroyed)),n=this._viewportRuler.change(150).pipe(yt(this._destroyed)),o=()=>{this.updatePagination(),this._alignInkBarToSelectedTab()};this._keyManager=new O0(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap().skipPredicate(()=>!1),this._keyManager.updateActiveItem(Math.max(this._selectedIndex,0)),ao(o,{injector:this._injector}),Vi(A,n,t,this._items.changes,this._itemsResized()).pipe(yt(this._destroyed)).subscribe(()=>{this._ngZone.run(()=>{Promise.resolve().then(()=>{this._scrollDistance=Math.max(0,Math.min(this._getMaxScrollDistance(),this._scrollDistance)),o()})}),this._keyManager?.withHorizontalOrientation(this._getLayoutDirection())}),this._keyManager.change.subscribe(a=>{this.indexFocused.emit(a),this._setTabFocus(a)})}_itemsResized(){return typeof ResizeObserver!="function"?Br:this._items.changes.pipe(Yn(this._items),Mi(A=>new Fi(t=>this._ngZone.runOutsideAngular(()=>{let n=new ResizeObserver(o=>t.next(o));return A.forEach(o=>n.observe(o.elementRef.nativeElement)),()=>{n.disconnect()}}))),Dl(1),Bt(A=>A.some(t=>t.contentRect.width>0&&t.contentRect.height>0)))}ngAfterContentChecked(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}ngOnDestroy(){this._eventCleanups.forEach(A=>A()),this._keyManager?.destroy(),this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}_handleKeydown(A){if(!Sa(A))switch(A.keyCode){case 13:case 32:if(this.focusIndex!==this.selectedIndex){let t=this._items.get(this.focusIndex);t&&!t.disabled&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(A))}break;default:this._keyManager?.onKeydown(A)}}_onContentChanges(){let A=this._elementRef.nativeElement.textContent;A!==this._currentTextContent&&(this._currentTextContent=A||"",this._ngZone.run(()=>{this.updatePagination(),this._alignInkBarToSelectedTab(),this._changeDetectorRef.markForCheck()}))}updatePagination(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}get focusIndex(){return this._keyManager?this._keyManager.activeItemIndex:0}set focusIndex(A){!this._isValidIndex(A)||this.focusIndex===A||!this._keyManager||this._keyManager.setActiveItem(A)}_isValidIndex(A){return this._items?!!this._items.toArray()[A]:!0}_setTabFocus(A){if(this._showPaginationControls&&this._scrollToLabel(A),this._items&&this._items.length){this._items.toArray()[A].focus();let t=this._tabListContainer.nativeElement;this._getLayoutDirection()=="ltr"?t.scrollLeft=0:t.scrollLeft=t.scrollWidth-t.offsetWidth}}_getLayoutDirection(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_updateTabScrollPosition(){if(this.disablePagination)return;let A=this.scrollDistance,t=this._getLayoutDirection()==="ltr"?-A:A;this._tabList.nativeElement.style.transform=`translateX(${Math.round(t)}px)`,(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}get scrollDistance(){return this._scrollDistance}set scrollDistance(A){this._scrollTo(A)}_scrollHeader(A){let t=this._tabListContainer.nativeElement.offsetWidth,n=(A=="before"?-1:1)*t/3;return this._scrollTo(this._scrollDistance+n)}_handlePaginatorClick(A){this._stopInterval(),this._scrollHeader(A)}_scrollToLabel(A){if(this.disablePagination)return;let t=this._items?this._items.toArray()[A]:null;if(!t)return;let n=this._tabListContainer.nativeElement.offsetWidth,{offsetLeft:o,offsetWidth:a}=t.elementRef.nativeElement,r,s;this._getLayoutDirection()=="ltr"?(r=o,s=r+a):(s=this._tabListInner.nativeElement.offsetWidth-o,r=s-a);let l=this.scrollDistance,g=this.scrollDistance+n;rg&&(this.scrollDistance+=Math.min(s-g,r-l))}_checkPaginationEnabled(){if(this.disablePagination)this._showPaginationControls=!1;else{let A=this._tabListInner.nativeElement.scrollWidth,t=this._elementRef.nativeElement.offsetWidth,n=A-t>=5;n||(this.scrollDistance=0),n!==this._showPaginationControls&&(this._showPaginationControls=n,this._changeDetectorRef.markForCheck())}}_checkScrollingControls(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=this.scrollDistance==0,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}_getMaxScrollDistance(){let A=this._tabListInner.nativeElement.scrollWidth,t=this._tabListContainer.nativeElement.offsetWidth;return A-t||0}_alignInkBarToSelectedTab(){let A=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,t=A?A.elementRef.nativeElement:null;t?this._inkBar.alignToElement(t):this._inkBar.hide()}_stopInterval(){this._stopScrolling.next()}_handlePaginatorPress(A,t){t&&t.button!=null&&t.button!==0||(this._stopInterval(),$p(QfA,ufA).pipe(yt(Vi(this._stopScrolling,this._destroyed))).subscribe(()=>{let{maxScrollDistance:n,distance:o}=this._scrollHeader(A);(o===0||o>=n)&&this._stopInterval()}))}_scrollTo(A){if(this.disablePagination)return{maxScrollDistance:0,distance:0};let t=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(t,A)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:t,distance:this._scrollDistance}}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,inputs:{disablePagination:[2,"disablePagination","disablePagination",Qe],selectedIndex:[2,"selectedIndex","selectedIndex",yn]},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"}})}return i})(),ffA=(()=>{class i extends pfA{_items;_tabListContainer;_tabList;_tabListInner;_nextPaginator;_previousPaginator;_inkBar;ariaLabel;ariaLabelledby;disableRipple=!1;ngAfterContentInit(){this._inkBar=new iR(this._items),super.ngAfterContentInit()}_itemSelected(A){A.preventDefault()}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275cmp=vA({type:i,selectors:[["mat-tab-header"]],contentQueries:function(t,n,o){if(t&1&&ra(o,MZ,4),t&2){let a;se(a=le())&&(n._items=a)}},viewQuery:function(t,n){if(t&1&&Wt($3A,7)(AfA,7)(efA,7)(tfA,5)(ifA,5),t&2){let o;se(o=le())&&(n._tabListContainer=o.first),se(o=le())&&(n._tabList=o.first),se(o=le())&&(n._tabListInner=o.first),se(o=le())&&(n._nextPaginator=o.first),se(o=le())&&(n._previousPaginator=o.first)}},hostAttrs:[1,"mat-mdc-tab-header"],hostVars:4,hostBindings:function(t,n){t&2&&_A("mat-mdc-tab-header-pagination-controls-enabled",n._showPaginationControls)("mat-mdc-tab-header-rtl",n._getLayoutDirection()=="rtl")},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],disableRipple:[2,"disableRipple","disableRipple",Qe]},features:[bt],ngContentSelectors:aR,decls:13,vars:10,consts:[["previousPaginator",""],["tabListContainer",""],["tabList",""],["tabListInner",""],["nextPaginator",""],["mat-ripple","",1,"mat-mdc-tab-header-pagination","mat-mdc-tab-header-pagination-before",3,"click","mousedown","touchend","matRippleDisabled"],[1,"mat-mdc-tab-header-pagination-chevron"],[1,"mat-mdc-tab-label-container",3,"keydown"],["role","tablist",1,"mat-mdc-tab-list",3,"cdkObserveContent"],[1,"mat-mdc-tab-labels"],["mat-ripple","",1,"mat-mdc-tab-header-pagination","mat-mdc-tab-header-pagination-after",3,"mousedown","click","touchend","matRippleDisabled"]],template:function(t,n){t&1&&(Ot(),I(0,"div",5,0),U("click",function(){return n._handlePaginatorClick("before")})("mousedown",function(a){return n._handlePaginatorPress("before",a)})("touchend",function(){return n._stopInterval()}),lA(2,"div",6),h(),I(3,"div",7,1),U("keydown",function(a){return n._handleKeydown(a)}),I(5,"div",8,2),U("cdkObserveContent",function(){return n._onContentChanges()}),I(7,"div",9,3),Ze(9),h()()(),I(10,"div",10,4),U("mousedown",function(a){return n._handlePaginatorPress("after",a)})("click",function(){return n._handlePaginatorClick("after")})("touchend",function(){return n._stopInterval()}),lA(12,"div",6),h()),t&2&&(_A("mat-mdc-tab-header-pagination-disabled",n._disableScrollBefore),H("matRippleDisabled",n._disableScrollBefore||n.disableRipple),Q(3),_A("_mat-animation-noopable",n._animationsDisabled),Q(2),ie("aria-label",n.ariaLabel||null)("aria-labelledby",n.ariaLabelledby||null),Q(5),_A("mat-mdc-tab-header-pagination-disabled",n._disableScrollAfter),H("matRippleDisabled",n._disableScrollAfter||n.disableRipple))},dependencies:[Cs,pL],styles:[`.mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mdc-tab-indicator .mdc-tab-indicator__content{transition-duration:var(--mat-tab-animation-duration, 250ms)}.mat-mdc-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;outline:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px;border-color:var(--mat-tab-pagination-icon-color, var(--mat-sys-on-surface))}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}.mat-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1;border-bottom-style:solid;border-bottom-width:var(--mat-tab-divider-height, 1px);border-bottom-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.mat-mdc-tab-group-inverted-header .mat-mdc-tab-label-container{border-bottom:none;border-top-style:solid;border-top-width:var(--mat-tab-divider-height, 1px);border-top-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.mat-mdc-tab-labels{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:flex-end}.cdk-drop-list .mat-mdc-tab-labels,.mat-mdc-tab-labels.cdk-drop-list{min-height:var(--mat-tab-container-height, 48px)}.mat-mdc-tab::before{margin:5px}@media(forced-colors: active){.mat-mdc-tab[aria-disabled=true]{color:GrayText}} -`],encapsulation:2})}return i})(),mfA=new MA("MAT_TABS_CONFIG"),DZ=(()=>{class i extends Ag{_host=w(nR);_ngZone=w(We);_centeringSub=Oo.EMPTY;_leavingSub=Oo.EMPTY;constructor(){super()}ngOnInit(){super.ngOnInit(),this._centeringSub=this._host._beforeCentering.pipe(Yn(this._host._isCenterPosition())).subscribe(A=>{this._host._content&&A&&!this.hasAttached()&&this._ngZone.run(()=>{Promise.resolve().then(),this.attach(this._host._content)})}),this._leavingSub=this._host._afterLeavingCenter.subscribe(()=>{this._host.preserveContent||this._ngZone.run(()=>this.detach())})}ngOnDestroy(){super.ngOnDestroy(),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","matTabBodyHost",""]],features:[bt]})}return i})(),nR=(()=>{class i{_elementRef=w(ce);_dir=w(No,{optional:!0});_ngZone=w(We);_injector=w(St);_renderer=w(on);_diAnimationsDisabled=In();_eventCleanups;_initialized=!1;_fallbackTimer;_positionIndex;_dirChangeSubscription=Oo.EMPTY;_position;_previousPosition;_onCentering=new FA;_beforeCentering=new FA;_afterLeavingCenter=new FA;_onCentered=new FA(!0);_portalHost;_contentElement;_content;animationDuration="500ms";preserveContent=!1;set position(A){this._positionIndex=A,this._computePositionAnimationState()}constructor(){if(this._dir){let A=w(Mt);this._dirChangeSubscription=this._dir.change.subscribe(t=>{this._computePositionAnimationState(t),A.markForCheck()})}}ngOnInit(){this._bindTransitionEvents(),this._position==="center"&&(this._setActiveClass(!0),ao(()=>this._onCentering.emit(this._elementRef.nativeElement.clientHeight),{injector:this._injector})),this._initialized=!0}ngOnDestroy(){clearTimeout(this._fallbackTimer),this._eventCleanups?.forEach(A=>A()),this._dirChangeSubscription.unsubscribe()}_bindTransitionEvents(){this._ngZone.runOutsideAngular(()=>{let A=this._elementRef.nativeElement,t=n=>{n.target===this._contentElement?.nativeElement&&(this._elementRef.nativeElement.classList.remove("mat-tab-body-animating"),n.type==="transitionend"&&this._transitionDone())};this._eventCleanups=[this._renderer.listen(A,"transitionstart",n=>{n.target===this._contentElement?.nativeElement&&(this._elementRef.nativeElement.classList.add("mat-tab-body-animating"),this._transitionStarted())}),this._renderer.listen(A,"transitionend",t),this._renderer.listen(A,"transitioncancel",t)]})}_transitionStarted(){clearTimeout(this._fallbackTimer);let A=this._position==="center";this._beforeCentering.emit(A),A&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}_transitionDone(){this._position==="center"?this._onCentered.emit():this._previousPosition==="center"&&this._afterLeavingCenter.emit()}_setActiveClass(A){this._elementRef.nativeElement.classList.toggle("mat-mdc-tab-body-active",A)}_getLayoutDirection(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_isCenterPosition(){return this._positionIndex===0}_computePositionAnimationState(A=this._getLayoutDirection()){this._previousPosition=this._position,this._positionIndex<0?this._position=A=="ltr"?"left":"right":this._positionIndex>0?this._position=A=="ltr"?"right":"left":this._position="center",this._animationsDisabled()?this._simulateTransitionEvents():this._initialized&&(this._position==="center"||this._previousPosition==="center")&&(clearTimeout(this._fallbackTimer),this._fallbackTimer=this._ngZone.runOutsideAngular(()=>setTimeout(()=>this._simulateTransitionEvents(),100)))}_simulateTransitionEvents(){this._transitionStarted(),ao(()=>this._transitionDone(),{injector:this._injector})}_animationsDisabled(){return this._diAnimationsDisabled||this.animationDuration==="0ms"||this.animationDuration==="0s"}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-tab-body"]],viewQuery:function(t,n){if(t&1&&Wt(DZ,5)(nfA,5),t&2){let o;se(o=le())&&(n._portalHost=o.first),se(o=le())&&(n._contentElement=o.first)}},hostAttrs:[1,"mat-mdc-tab-body"],hostVars:1,hostBindings:function(t,n){t&2&&ie("inert",n._position==="center"?null:"")},inputs:{_content:[0,"content","_content"],animationDuration:"animationDuration",preserveContent:"preserveContent",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_onCentered:"_onCentered"},decls:3,vars:6,consts:[["content",""],["cdkScrollable","",1,"mat-mdc-tab-body-content"],["matTabBodyHost",""]],template:function(t,n){t&1&&(I(0,"div",1,0),kt(2,ofA,0,0,"ng-template",2),h()),t&2&&_A("mat-tab-body-content-left",n._position==="left")("mat-tab-body-content-right",n._position==="right")("mat-tab-body-content-can-animate",n._position==="center"||n._previousPosition==="center")},dependencies:[DZ,j0],styles:[`.mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto;transform:none;visibility:hidden}.mat-tab-body-animating>.mat-mdc-tab-body-content,.mat-mdc-tab-body-active>.mat-mdc-tab-body-content{visibility:visible}.mat-tab-body-animating>.mat-mdc-tab-body-content{min-height:1px}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-tab-body-content-can-animate{transition:transform var(--mat-tab-animation-duration) 1ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable .mat-tab-body-content-can-animate{transition:none}.mat-tab-body-content-left{transform:translate3d(-100%, 0, 0)}.mat-tab-body-content-right{transform:translate3d(100%, 0, 0)} -`],encapsulation:2})}return i})(),fE=(()=>{class i{_elementRef=w(ce);_changeDetectorRef=w(Mt);_ngZone=w(We);_tabsSubscription=Oo.EMPTY;_tabLabelSubscription=Oo.EMPTY;_tabBodySubscription=Oo.EMPTY;_diAnimationsDisabled=In();_allTabs;_tabBodies;_tabBodyWrapper;_tabHeader;_tabs=new Rg;_indexToSelect=0;_lastFocusedTabIndex=null;_tabBodyWrapperHeight=0;color;get fitInkBarToContent(){return this._fitInkBarToContent}set fitInkBarToContent(A){this._fitInkBarToContent=A,this._changeDetectorRef.markForCheck()}_fitInkBarToContent=!1;stretchTabs=!0;alignTabs=null;dynamicHeight=!1;get selectedIndex(){return this._selectedIndex}set selectedIndex(A){this._indexToSelect=isNaN(A)?null:A}_selectedIndex=null;headerPosition="above";get animationDuration(){return this._animationDuration}set animationDuration(A){let t=A+"";this._animationDuration=/^\d+$/.test(t)?A+"ms":t}_animationDuration;get contentTabIndex(){return this._contentTabIndex}set contentTabIndex(A){this._contentTabIndex=isNaN(A)?null:A}_contentTabIndex=null;disablePagination=!1;disableRipple=!1;preserveContent=!1;get backgroundColor(){return this._backgroundColor}set backgroundColor(A){let t=this._elementRef.nativeElement.classList;t.remove("mat-tabs-with-background",`mat-background-${this.backgroundColor}`),A&&t.add("mat-tabs-with-background",`mat-background-${A}`),this._backgroundColor=A}_backgroundColor;ariaLabel;ariaLabelledby;selectedIndexChange=new FA;focusChange=new FA;animationDone=new FA;selectedTabChange=new FA(!0);_groupId;_isServer=!w(Qi).isBrowser;constructor(){let A=w(mfA,{optional:!0});this._groupId=w(Dn).getId("mat-tab-group-"),this.animationDuration=A&&A.animationDuration?A.animationDuration:"500ms",this.disablePagination=A&&A.disablePagination!=null?A.disablePagination:!1,this.dynamicHeight=A&&A.dynamicHeight!=null?A.dynamicHeight:!1,A?.contentTabIndex!=null&&(this.contentTabIndex=A.contentTabIndex),this.preserveContent=!!A?.preserveContent,this.fitInkBarToContent=A&&A.fitInkBarToContent!=null?A.fitInkBarToContent:!1,this.stretchTabs=A&&A.stretchTabs!=null?A.stretchTabs:!0,this.alignTabs=A&&A.alignTabs!=null?A.alignTabs:null}ngAfterContentChecked(){let A=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=A){let t=this._selectedIndex==null;if(!t){this.selectedTabChange.emit(this._createChangeEvent(A));let n=this._tabBodyWrapper.nativeElement;n.style.minHeight=n.clientHeight+"px"}Promise.resolve().then(()=>{this._tabs.forEach((n,o)=>n.isActive=o===A),t||(this.selectedIndexChange.emit(A),this._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach((t,n)=>{t.position=n-A,this._selectedIndex!=null&&t.position==0&&!t.origin&&(t.origin=A-this._selectedIndex)}),this._selectedIndex!==A&&(this._selectedIndex=A,this._lastFocusedTabIndex=null,this._changeDetectorRef.markForCheck())}ngAfterContentInit(){this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(()=>{let A=this._clampTabIndex(this._indexToSelect);if(A===this._selectedIndex){let t=this._tabs.toArray(),n;for(let o=0;o{t[A].isActive=!0,this.selectedTabChange.emit(this._createChangeEvent(A))})}this._changeDetectorRef.markForCheck()})}ngAfterViewInit(){this._tabBodySubscription=this._tabBodies.changes.subscribe(()=>this._bodyCentered(!0))}_subscribeToAllTabChanges(){this._allTabs.changes.pipe(Yn(this._allTabs)).subscribe(A=>{this._tabs.reset(A.filter(t=>t._closestTabGroup===this||!t._closestTabGroup)),this._tabs.notifyOnChanges()})}ngOnDestroy(){this._tabs.destroy(),this._tabsSubscription.unsubscribe(),this._tabLabelSubscription.unsubscribe(),this._tabBodySubscription.unsubscribe()}realignInkBar(){this._tabHeader&&this._tabHeader._alignInkBarToSelectedTab()}updatePagination(){this._tabHeader&&this._tabHeader.updatePagination()}focusTab(A){let t=this._tabHeader;t&&(t.focusIndex=A)}_focusChanged(A){this._lastFocusedTabIndex=A,this.focusChange.emit(this._createChangeEvent(A))}_createChangeEvent(A){let t=new oR;return t.index=A,this._tabs&&this._tabs.length&&(t.tab=this._tabs.toArray()[A]),t}_subscribeToTabLabels(){this._tabLabelSubscription&&this._tabLabelSubscription.unsubscribe(),this._tabLabelSubscription=Vi(...this._tabs.map(A=>A._stateChanges)).subscribe(()=>this._changeDetectorRef.markForCheck())}_clampTabIndex(A){return Math.min(this._tabs.length-1,Math.max(A||0,0))}_getTabLabelId(A,t){return A.id||`${this._groupId}-label-${t}`}_getTabContentId(A){return`${this._groupId}-content-${A}`}_setTabBodyWrapperHeight(A){if(!this.dynamicHeight||!this._tabBodyWrapperHeight){this._tabBodyWrapperHeight=A;return}let t=this._tabBodyWrapper.nativeElement;t.style.height=this._tabBodyWrapperHeight+"px",this._tabBodyWrapper.nativeElement.offsetHeight&&(t.style.height=A+"px")}_removeTabBodyWrapperHeight(){let A=this._tabBodyWrapper.nativeElement;this._tabBodyWrapperHeight=A.clientHeight,A.style.height="",this._ngZone.run(()=>this.animationDone.emit())}_handleClick(A,t,n){t.focusIndex=n,A.disabled||(this.selectedIndex=n)}_getTabIndex(A){let t=this._lastFocusedTabIndex??this.selectedIndex;return A===t?0:-1}_tabFocusChanged(A,t){A&&A!=="mouse"&&A!=="touch"&&(this._tabHeader.focusIndex=t)}_bodyCentered(A){A&&this._tabBodies?.forEach((t,n)=>t._setActiveClass(n===this._selectedIndex))}_animationsDisabled(){return this._diAnimationsDisabled||this.animationDuration==="0"||this.animationDuration==="0ms"}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-tab-group"]],contentQueries:function(t,n,o){if(t&1&&ra(o,bp,5),t&2){let a;se(a=le())&&(n._allTabs=a)}},viewQuery:function(t,n){if(t&1&&Wt(afA,5)(rfA,5)(nR,5),t&2){let o;se(o=le())&&(n._tabBodyWrapper=o.first),se(o=le())&&(n._tabHeader=o.first),se(o=le())&&(n._tabBodies=o)}},hostAttrs:[1,"mat-mdc-tab-group"],hostVars:11,hostBindings:function(t,n){t&2&&(ie("mat-align-tabs",n.alignTabs),Ao("mat-"+(n.color||"primary")),ft("--mat-tab-animation-duration",n.animationDuration),_A("mat-mdc-tab-group-dynamic-height",n.dynamicHeight)("mat-mdc-tab-group-inverted-header",n.headerPosition==="below")("mat-mdc-tab-group-stretch-tabs",n.stretchTabs))},inputs:{color:"color",fitInkBarToContent:[2,"fitInkBarToContent","fitInkBarToContent",Qe],stretchTabs:[2,"mat-stretch-tabs","stretchTabs",Qe],alignTabs:[0,"mat-align-tabs","alignTabs"],dynamicHeight:[2,"dynamicHeight","dynamicHeight",Qe],selectedIndex:[2,"selectedIndex","selectedIndex",yn],headerPosition:"headerPosition",animationDuration:"animationDuration",contentTabIndex:[2,"contentTabIndex","contentTabIndex",yn],disablePagination:[2,"disablePagination","disablePagination",Qe],disableRipple:[2,"disableRipple","disableRipple",Qe],preserveContent:[2,"preserveContent","preserveContent",Qe],backgroundColor:"backgroundColor",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"]},outputs:{selectedIndexChange:"selectedIndexChange",focusChange:"focusChange",animationDone:"animationDone",selectedTabChange:"selectedTabChange"},exportAs:["matTabGroup"],features:[pt([{provide:bZ,useExisting:i}])],ngContentSelectors:aR,decls:9,vars:8,consts:[["tabHeader",""],["tabBodyWrapper",""],["tabNode",""],[3,"indexFocused","selectFocusedIndex","selectedIndex","disableRipple","disablePagination","aria-label","aria-labelledby"],["role","tab","matTabLabelWrapper","","cdkMonitorElementFocus","",1,"mdc-tab","mat-mdc-tab","mat-focus-indicator",3,"id","mdc-tab--active","class","disabled","fitInkBarToContent"],[1,"mat-mdc-tab-body-wrapper"],["role","tabpanel",3,"id","class","content","position","animationDuration","preserveContent"],["role","tab","matTabLabelWrapper","","cdkMonitorElementFocus","",1,"mdc-tab","mat-mdc-tab","mat-focus-indicator",3,"click","cdkFocusChange","id","disabled","fitInkBarToContent"],[1,"mdc-tab__ripple"],["mat-ripple","",1,"mat-mdc-tab-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mdc-tab__content"],[1,"mdc-tab__text-label"],[3,"cdkPortalOutlet"],["role","tabpanel",3,"_onCentered","_onCentering","_beforeCentering","id","content","position","animationDuration","preserveContent"]],template:function(t,n){t&1&&(Ot(),I(0,"mat-tab-header",3,0),U("indexFocused",function(a){return n._focusChanged(a)})("selectFocusedIndex",function(a){return n.selectedIndex=a}),ke(2,cfA,8,17,"div",4,ni),h(),T(4,CfA,1,0),I(5,"div",5,1),ke(7,dfA,1,10,"mat-tab-body",6,ni),h()),t&2&&(H("selectedIndex",n.selectedIndex||0)("disableRipple",n.disableRipple)("disablePagination",n.disablePagination),g3("aria-label",n.ariaLabel)("aria-labelledby",n.ariaLabelledby),Q(2),_e(n._tabs),Q(2),O(n._isServer?4:-1),Q(),_A("_mat-animation-noopable",n._animationsDisabled()),Q(2),_e(n._tabs))},dependencies:[ffA,MZ,Qv,Cs,Ag,nR],styles:[`.mdc-tab{min-width:90px;padding:0 24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab--active .mdc-tab__text-label{transition-delay:100ms}._mat-animation-noopable .mdc-tab__text-label{transition:none}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transition:var(--mat-tab-animation-duration, 250ms) transform cubic-bezier(0.4, 0, 0.2, 1);transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}._mat-animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mat-mdc-tab-ripple.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:var(--mat-tab-container-height, 48px);font-family:var(--mat-tab-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-tab-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-tab-label-text-tracking, var(--mat-sys-title-small-tracking));line-height:var(--mat-tab-label-text-line-height, var(--mat-sys-title-small-line-height));font-weight:var(--mat-tab-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-tab.mdc-tab{flex-grow:0}.mat-mdc-tab .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-indicator-color, var(--mat-sys-primary));border-top-width:var(--mat-tab-active-indicator-height, 2px);border-radius:var(--mat-tab-active-indicator-shape, 0)}.mat-mdc-tab:hover .mdc-tab__text-label{color:var(--mat-tab-inactive-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab:focus .mdc-tab__text-label{color:var(--mat-tab-inactive-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{color:var(--mat-tab-active-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active .mdc-tab__ripple::before,.mat-mdc-tab.mdc-tab--active .mat-ripple-element{background-color:var(--mat-tab-active-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:hover .mdc-tab__text-label{color:var(--mat-tab-active-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-hover-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab.mdc-tab--active:focus .mdc-tab__text-label{color:var(--mat-tab-active-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-focus-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab.mat-mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mat-mdc-tab.mat-mdc-tab-disabled .mdc-tab__ripple::before,.mat-mdc-tab.mat-mdc-tab-disabled .mat-ripple-element{background-color:var(--mat-tab-disabled-ripple-color, var(--mat-sys-on-surface-variant))}.mat-mdc-tab .mdc-tab__ripple::before{content:"";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab .mdc-tab__text-label{color:var(--mat-tab-inactive-label-text-color, var(--mat-sys-on-surface));display:inline-flex;align-items:center}.mat-mdc-tab .mdc-tab__content{position:relative;pointer-events:auto}.mat-mdc-tab:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-group.mat-mdc-tab-group-stretch-tabs>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.mat-mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-tab-background-color)}.mat-mdc-tab-group.mat-tabs-with-background.mat-primary>.mat-mdc-tab-header .mat-mdc-tab .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background.mat-primary>.mat-mdc-tab-header .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-header .mat-mdc-tab:not(.mdc-tab--active) .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-header .mat-mdc-tab:not(.mdc-tab--active) .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-focus-indicator::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-focus-indicator::before{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab__ripple::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header{flex-direction:column-reverse}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mat-mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important} -`],encapsulation:2})}return i})(),oR=class{index;tab};var SZ=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Di]})}return i})();var yfA={cancelEditingTooltip:"Cancel editing",saveEvalMessageTooltip:"Save eval case message",thoughtChipLabel:"Thought",outcomeLabel:"Outcome",outputLabel:"Output",actualToolUsesLabel:"Actual tool uses:",expectedToolUsesLabel:"Expected tool uses:",actualResponseLabel:"Actual response:",expectedResponseLabel:"Expected response:",matchScoreLabel:"Match score",thresholdLabel:"Threshold",evalPassLabel:"PASS",evalFailLabel:"FAIL",editEvalMessageTooltip:"Edit eval case message",deleteEvalMessageTooltip:"Delete eval case message",editFunctionArgsTooltip:"Edit function arguments",typeMessagePlaceholder:"Type a message...",sendMessageTooltip:"Send message",stopMessageTooltip:"Stop",uploadFileTooltip:"Upload local file",moreOptionsTooltip:"More options",updateStateMenuLabel:"Update state",updateStateMenuTooltip:"Update the session state",turnOffMicTooltip:"Hang up",useMicTooltip:"Call",turnOffCamTooltip:"Turn off camera",useCamTooltip:"Use camera",updatedSessionStateChipLabel:"Updated session state",proactiveAudioTooltip:"Enable the model to speak spontaneously without waiting for user input",affectiveDialogTooltip:"Enable the model to respond with emotional expression",sessionResumptionTooltip:"Allow the session to resume from a previous state",saveLiveBlobTooltip:"Save the recorded live stream data"},C1=new MA("Chat Panel Messages",{factory:()=>yfA});var O5="comm",J5="rule",Y5="decl";var kZ="@import";var _Z="@namespace",xZ="@keyframes";var RZ="@layer";var rR=Math.abs,Mp=String.fromCharCode;function H5(i){return i.trim()}function Sp(i,e,A){return i.replace(e,A)}function NZ(i,e,A){return i.indexOf(e,A)}function d1(i,e){return i.charCodeAt(e)|0}function I1(i,e,A){return i.slice(e,A)}function zl(i){return i.length}function FZ(i){return i.length}function mE(i,e){return e.push(i),i}var z5=1,wE=1,LZ=0,vg=0,Ir=0,DE="";function P5(i,e,A,t,n,o,a,r){return{value:i,root:e,parent:A,type:t,props:n,children:o,line:z5,column:wE,length:a,return:"",siblings:r}}function GZ(){return Ir}function KZ(){return Ir=vg>0?d1(DE,--vg):0,wE--,Ir===10&&(wE=1,z5--),Ir}function bg(){return Ir=vg2||yE(Ir)>3?"":" "}function JZ(i,e){for(;--e&&bg()&&!(Ir<48||Ir>102||Ir>57&&Ir<65||Ir>70&&Ir<97););return j5(i,kp()+(e<6&&KC()==32&&bg()==32))}function sR(i){for(;bg();)switch(Ir){case i:return vg;case 34:case 39:i!==34&&i!==39&&sR(Ir);break;case 40:i===41&&sR(i);break;case 92:bg();break}return vg}function YZ(i,e){for(;bg()&&i+Ir!==57;)if(i+Ir===84&&KC()===47)break;return"/*"+j5(e,vg-1)+"*"+Mp(i===47?i:bg())}function HZ(i){for(;!yE(KC());)bg();return j5(i,vg)}function jZ(i){return TZ(q5("",null,null,null,[""],i=UZ(i),0,[0],i))}function q5(i,e,A,t,n,o,a,r,s){for(var l=0,g=0,C=a,d=0,B=0,u=0,E=1,f=1,m=1,v=0,S="",k=n,M=o,x=t,F=S;f;)switch(u=v,v=bg()){case 40:if(u!=108&&d1(F,C-1)==58){NZ(F+=Sp(V5(v),"&","&\f"),"&\f",rR(l?r[l-1]:0))!=-1&&(m=-1);break}case 34:case 39:case 91:F+=V5(v);break;case 9:case 10:case 13:case 32:F+=OZ(u);break;case 92:F+=JZ(kp()-1,7);continue;case 47:switch(KC()){case 42:case 47:mE(DfA(YZ(bg(),kp()),e,A,s),s),(yE(u||1)==5||yE(KC()||1)==5)&&zl(F)&&I1(F,-1,void 0)!==" "&&(F+=" ");break;default:F+="/"}break;case 123*E:r[l++]=zl(F)*m;case 125*E:case 59:case 0:switch(v){case 0:case 125:f=0;case 59+g:m==-1&&(F=Sp(F,/\f/g,"")),B>0&&(zl(F)-C||E===0&&u===47)&&mE(B>32?PZ(F+";",t,A,C-1,s):PZ(Sp(F," ","")+";",t,A,C-2,s),s);break;case 59:F+=";";default:if(mE(x=zZ(F,e,A,l,g,n,r,S,k=[],M=[],C,o),o),v===123)if(g===0)q5(F,e,x,x,k,o,C,r,M);else{switch(d){case 99:if(d1(F,3)===110)break;case 108:if(d1(F,2)===97)break;default:g=0;case 100:case 109:case 115:}g?q5(i,x,x,t&&mE(zZ(i,x,x,0,0,n,r,S,n,k=[],C,M),M),n,M,C,r,t?k:M):q5(F,x,x,x,[""],M,0,r,M)}}l=g=B=0,E=m=1,S=F="",C=a;break;case 58:C=1+zl(F),B=u;default:if(E<1){if(v==123)--E;else if(v==125&&E++==0&&KZ()==125)continue}switch(F+=Mp(v),v*E){case 38:m=g>0?1:(F+="\f",-1);break;case 44:r[l++]=(zl(F)-1)*m,m=1;break;case 64:KC()===45&&(F+=V5(bg())),d=KC(),g=C=zl(S=F+=HZ(kp())),v++;break;case 45:u===45&&zl(F)==2&&(E=0)}}return o}function zZ(i,e,A,t,n,o,a,r,s,l,g,C){for(var d=n-1,B=n===0?o:[""],u=FZ(B),E=0,f=0,m=0;E0?B[v]+" "+S:Sp(S,/&\f/g,B[v])))&&(s[m++]=k);return P5(i,e,A,n===0?J5:r,s,l,g,C)}function DfA(i,e,A,t){return P5(i,e,A,O5,Mp(GZ()),I1(i,2,-2),0,t)}function PZ(i,e,A,t,n){return P5(i,e,A,Y5,I1(i,0,t),I1(i,t+1,-1),t,n)}function W5(i,e){for(var A="",t=0;t/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(i),"detector"),bfA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-WLB2FJ7K.js");return{id:$Z,diagram:i}}),"loader"),MfA={id:$Z,detector:vfA,loader:bfA},SfA=MfA,AX="flowchart",kfA=we((i,e)=>e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(i),"detector"),_fA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-RCKFX6QR.js");return{id:AX,diagram:i}}),"loader"),xfA={id:AX,detector:kfA,loader:_fA},RfA=xfA,eX="flowchart-v2",NfA=we((i,e)=>e?.flowchart?.defaultRenderer==="dagre-d3"?!1:(e?.flowchart?.defaultRenderer==="elk"&&(e.layout="elk"),/^\s*graph/.test(i)&&e?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(i)),"detector"),FfA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-RCKFX6QR.js");return{id:eX,diagram:i}}),"loader"),LfA={id:eX,detector:NfA,loader:FfA},GfA=LfA,tX="er",KfA=we(i=>/^\s*erDiagram/.test(i),"detector"),UfA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-QGHEW6NO.js");return{id:tX,diagram:i}}),"loader"),TfA={id:tX,detector:KfA,loader:UfA},OfA=TfA,iX="gitGraph",JfA=we(i=>/^\s*gitGraph/.test(i),"detector"),YfA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-BDIW4D5I.js");return{id:iX,diagram:i}}),"loader"),HfA={id:iX,detector:JfA,loader:YfA},zfA=HfA,nX="gantt",PfA=we(i=>/^\s*gantt/.test(i),"detector"),jfA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-WZIWL22C.js");return{id:nX,diagram:i}}),"loader"),VfA={id:nX,detector:PfA,loader:jfA},qfA=VfA,oX="info",WfA=we(i=>/^\s*info/.test(i),"detector"),ZfA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-ZX24QP2W.js");return{id:oX,diagram:i}}),"loader"),XfA={id:oX,detector:WfA,loader:ZfA},aX="pie",$fA=we(i=>/^\s*pie/.test(i),"detector"),AmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-PM3FQFTD.js");return{id:aX,diagram:i}}),"loader"),emA={id:aX,detector:$fA,loader:AmA},rX="quadrantChart",tmA=we(i=>/^\s*quadrantChart/.test(i),"detector"),imA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-V2DCVTQX.js");return{id:rX,diagram:i}}),"loader"),nmA={id:rX,detector:tmA,loader:imA},omA=nmA,sX="xychart",amA=we(i=>/^\s*xychart(-beta)?/.test(i),"detector"),rmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-J4R5U4YL.js");return{id:sX,diagram:i}}),"loader"),smA={id:sX,detector:amA,loader:rmA},lmA=smA,lX="requirement",gmA=we(i=>/^\s*requirement(Diagram)?/.test(i),"detector"),cmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-S22PTQH2.js");return{id:lX,diagram:i}}),"loader"),CmA={id:lX,detector:gmA,loader:cmA},dmA=CmA,gX="sequence",ImA=we(i=>/^\s*sequenceDiagram/.test(i),"detector"),BmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-T2UY75BD.js");return{id:gX,diagram:i}}),"loader"),hmA={id:gX,detector:ImA,loader:BmA},EmA=hmA,cX="class",QmA=we((i,e)=>e?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(i),"detector"),umA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-46YSBSFN.js");return{id:cX,diagram:i}}),"loader"),pmA={id:cX,detector:QmA,loader:umA},fmA=pmA,CX="classDiagram",mmA=we((i,e)=>/^\s*classDiagram/.test(i)&&e?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(i),"detector"),wmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-75WMU75S.js");return{id:CX,diagram:i}}),"loader"),ymA={id:CX,detector:mmA,loader:wmA},DmA=ymA,dX="state",vmA=we((i,e)=>e?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(i),"detector"),bmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-2LZ42ZOW.js");return{id:dX,diagram:i}}),"loader"),MmA={id:dX,detector:vmA,loader:bmA},SmA=MmA,IX="stateDiagram",kmA=we((i,e)=>!!(/^\s*stateDiagram-v2/.test(i)||/^\s*stateDiagram/.test(i)&&e?.state?.defaultRenderer==="dagre-wrapper"),"detector"),_mA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-N5S45BK4.js");return{id:IX,diagram:i}}),"loader"),xmA={id:IX,detector:kmA,loader:_mA},RmA=xmA,BX="journey",NmA=we(i=>/^\s*journey/.test(i),"detector"),FmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-QMDHABEH.js");return{id:BX,diagram:i}}),"loader"),LmA={id:BX,detector:NmA,loader:FmA},GmA=LmA,KmA=we((i,e,A)=>{qa.debug(`rendering svg for syntax error -`);let t=yF(e),n=t.append("g");t.attr("viewBox","0 0 2412 512"),mF(t,100,512,!0),n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${A}`)},"draw"),hX={draw:KmA},UmA=hX,TmA={db:{},renderer:hX,parser:{parse:we(()=>{},"parse")}},OmA=TmA,EX="flowchart-elk",JmA=we((i,e={})=>/^\s*flowchart-elk/.test(i)||/^\s*(flowchart|graph)/.test(i)&&e?.flowchart?.defaultRenderer==="elk"?(e.layout="elk",!0):!1,"detector"),YmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-RCKFX6QR.js");return{id:EX,diagram:i}}),"loader"),HmA={id:EX,detector:JmA,loader:YmA},zmA=HmA,QX="timeline",PmA=we(i=>/^\s*timeline/.test(i),"detector"),jmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-ZCQFE5RP.js");return{id:QX,diagram:i}}),"loader"),VmA={id:QX,detector:PmA,loader:jmA},qmA=VmA,uX="mindmap",WmA=we(i=>/^\s*mindmap/.test(i),"detector"),ZmA=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-ICVZGLGO.js");return{id:uX,diagram:i}}),"loader"),XmA={id:uX,detector:WmA,loader:ZmA},$mA=XmA,pX="kanban",A6A=we(i=>/^\s*kanban/.test(i),"detector"),e6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-6UL33SIT.js");return{id:pX,diagram:i}}),"loader"),t6A={id:pX,detector:A6A,loader:e6A},i6A=t6A,fX="sankey",n6A=we(i=>/^\s*sankey(-beta)?/.test(i),"detector"),o6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-W67OU2Q2.js");return{id:fX,diagram:i}}),"loader"),a6A={id:fX,detector:n6A,loader:o6A},r6A=a6A,mX="packet",s6A=we(i=>/^\s*packet(-beta)?/.test(i),"detector"),l6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-WAKWL6X3.js");return{id:mX,diagram:i}}),"loader"),g6A={id:mX,detector:s6A,loader:l6A},wX="radar",c6A=we(i=>/^\s*radar-beta/.test(i),"detector"),C6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-5PR7OWPD.js");return{id:wX,diagram:i}}),"loader"),d6A={id:wX,detector:c6A,loader:C6A},yX="block",I6A=we(i=>/^\s*block(-beta)?/.test(i),"detector"),B6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-257HQBMN.js");return{id:yX,diagram:i}}),"loader"),h6A={id:yX,detector:I6A,loader:B6A},E6A=h6A,DX="architecture",Q6A=we(i=>/^\s*architecture/.test(i),"detector"),u6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-3YZ77ADE.js");return{id:DX,diagram:i}}),"loader"),p6A={id:DX,detector:Q6A,loader:u6A},f6A=p6A,vX="ishikawa",m6A=we(i=>/^\s*ishikawa(-beta)?\b/i.test(i),"detector"),w6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-LA76DWZL.js");return{id:vX,diagram:i}}),"loader"),y6A={id:vX,detector:m6A,loader:w6A},bX="venn",D6A=we(i=>/^\s*venn-beta/.test(i),"detector"),v6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-JW2YJHYO.js");return{id:bX,diagram:i}}),"loader"),b6A={id:bX,detector:D6A,loader:v6A},M6A=b6A,MX="treemap",S6A=we(i=>/^\s*treemap/.test(i),"detector"),k6A=we(()=>re(null,null,function*(){let{diagram:i}=yield import("./chunk-UWBTGTN5.js");return{id:MX,diagram:i}}),"loader"),_6A={id:MX,detector:S6A,loader:k6A},qZ=!1,X5=we(()=>{qZ||(qZ=!0,eQ("error",OmA,i=>i.toLowerCase().trim()==="error"),eQ("---",{db:{clear:we(()=>{},"clear")},styles:{},renderer:{draw:we(()=>{},"draw")},parser:{parse:we(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:we(()=>null,"init")},i=>i.toLowerCase().trimStart().startsWith("---")),B3(zmA,$mA,f6A),B3(SfA,i6A,DmA,fmA,OfA,qfA,XfA,emA,dmA,EmA,GfA,RfA,qmA,zfA,RmA,SmA,GmA,omA,r6A,g6A,lmA,E6A,d6A,y6A,_6A,M6A))},"addDiagrams"),x6A=we(()=>re(null,null,function*(){qa.debug("Loading registered diagrams");let e=(yield Promise.allSettled(Object.entries(I3).map(o=>re(null,[o],function*([A,{detector:t,loader:n}]){if(n)try{E3(A)}catch(a){try{let{diagram:r,id:s}=yield n();eQ(s,r,t)}catch(r){throw qa.error(`Failed to load external diagram with key ${A}. Removing from detectors.`),delete I3[A],r}}})))).filter(A=>A.status==="rejected");if(e.length>0){qa.error(`Failed to load ${e.length} external diagrams`);for(let A of e)qa.error(A);throw new Error(`Failed to load ${e.length} external diagrams`)}}),"loadRegisteredDiagrams"),R6A="graphics-document document";function SX(i,e){i.attr("role",R6A),e!==""&&i.attr("aria-roledescription",e)}we(SX,"setA11yDiagramInfo");function kX(i,e,A,t){if(i.insert!==void 0){if(A){let n=`chart-desc-${t}`;i.attr("aria-describedby",n),i.insert("desc",":first-child").attr("id",n).text(A)}if(e){let n=`chart-title-${t}`;i.attr("aria-labelledby",n),i.insert("title",":first-child").attr("id",n).text(e)}}}we(kX,"addSVGa11yTitleDescription");var gR=class _X{constructor(e,A,t,n,o){this.type=e,this.text=A,this.db=t,this.parser=n,this.renderer=o}static{we(this,"Diagram")}static fromText(t){return re(this,arguments,function*(e,A={}){let n=MI(),o=jD(e,n);e=SF(e)+` -`;try{E3(o)}catch(g){let C=dF(o);if(!C)throw new CF(`Diagram ${o} not found.`);let{id:d,diagram:B}=yield C();eQ(d,B)}let{db:a,parser:r,renderer:s,init:l}=E3(o);return r.parser&&(r.parser.yy=a),a.clear?.(),l?.(n),A.title&&a.setDiagramTitle?.(A.title),yield r.parse(e),new _X(o,e,a,r,s)})}render(e,A){return re(this,null,function*(){yield this.renderer.draw(this.text,e,A,this)})}getParser(){return this.parser}getType(){return this.type}},WZ=[],N6A=we(()=>{WZ.forEach(i=>{i()}),WZ=[]},"attachFunctions"),F6A=we(i=>i.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");function xX(i){let e=i.match(cF);if(!e)return{text:i,metadata:{}};let A=vF(e[1],{schema:DF})??{};A=typeof A=="object"&&!Array.isArray(A)?A:{};let t={};return A.displayMode&&(t.displayMode=A.displayMode.toString()),A.title&&(t.title=A.title.toString()),A.config&&(t.config=A.config),{text:i.slice(e[0].length),metadata:t}}we(xX,"extractFrontMatter");var L6A=we(i=>i.replace(/\r\n?/g,` -`).replace(/<(\w+)([^>]*)>/g,(e,A,t)=>"<"+A+t.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),G6A=we(i=>{let{text:e,metadata:A}=xX(i),{displayMode:t,title:n,config:o={}}=A;return t&&(o.gantt||(o.gantt={}),o.gantt.displayMode=t),{title:n,config:o,text:e}},"processFrontmatter"),K6A=we(i=>{let e=SI.detectInit(i)??{},A=SI.detectDirective(i,"wrap");return Array.isArray(A)?e.wrap=A.some(({type:t})=>t==="wrap"):A?.type==="wrap"&&(e.wrap=!0),{text:bF(i),directive:e}},"processDirectives");function CR(i){let e=L6A(i),A=G6A(e),t=K6A(A.text),n=MF(A.config,t.directive);return i=F6A(t.text),{code:i,title:A.title,config:n}}we(CR,"preprocessDiagram");function RX(i){let e=new TextEncoder().encode(i),A=Array.from(e,t=>String.fromCodePoint(t)).join("");return btoa(A)}we(RX,"toBase64");var U6A=5e4,T6A="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",O6A="sandbox",J6A="loose",Y6A="http://www.w3.org/2000/svg",H6A="http://www.w3.org/1999/xlink",z6A="http://www.w3.org/1999/xhtml",P6A="100%",j6A="100%",V6A="border:0;margin:0;",q6A="margin:0",W6A="allow-top-navigation-by-user-activation allow-popups",Z6A='The "iframe" tag is not supported by your browser.',X6A=["foreignobject"],$6A=["dominant-baseline"];function dR(i){let e=CR(i);return AQ(),pF(e.config??{}),e}we(dR,"processAndSetConfigs");function NX(i,e){return re(this,null,function*(){X5();try{let{code:A,config:t}=dR(i);return{diagramType:(yield LX(A)).type,config:t}}catch(A){if(e?.suppressErrors)return!1;throw A}})}we(NX,"parse");var ZZ=we((i,e,A=[])=>` -.${i} ${e} { ${A.join(" !important; ")} !important; }`,"cssImportantStyles"),A8A=we((i,e=new Map)=>{let A="";if(i.themeCSS!==void 0&&(A+=` -${i.themeCSS}`),i.fontFamily!==void 0&&(A+=` -:root { --mermaid-font-family: ${i.fontFamily}}`),i.altFontFamily!==void 0&&(A+=` -:root { --mermaid-alt-font-family: ${i.altFontFamily}}`),e instanceof Map){let a=fF(i)?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach(r=>{An(r.styles)||a.forEach(s=>{A+=ZZ(r.id,s,r.styles)}),An(r.textStyles)||(A+=ZZ(r.id,"tspan",(r?.textStyles||[]).map(s=>s.replace("color","fill"))))})}return A},"createCssStyles"),e8A=we((i,e,A,t)=>{let n=A8A(i,A),o=wF(e,n,i.themeVariables);return W5(jZ(`${t}{${o}}`),VZ)},"createUserStyles"),t8A=we((i="",e,A)=>{let t=i;return!A&&!e&&(t=t.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),t=kF(t),t=t.replace(/
      /g,"
      "),t},"cleanUpSvgCode"),i8A=we((i="",e)=>{let A=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":j6A,t=RX(`${i}`);return``},"putIntoIFrame"),XZ=we((i,e,A,t,n)=>{let o=i.append("div");o.attr("id",A),t&&o.attr("style",t);let a=o.append("svg").attr("id",e).attr("width","100%").attr("xmlns",Y6A);return n&&a.attr("xmlns:xlink",n),a.append("g"),i},"appendDivSvgG");function cR(i,e){return i.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}we(cR,"sandboxedIframe");var n8A=we((i,e,A,t)=>{i.getElementById(e)?.remove(),i.getElementById(A)?.remove(),i.getElementById(t)?.remove()},"removeExistingElements"),o8A=we(function(i,e,A){return re(this,null,function*(){X5();let t=dR(e);e=t.code;let n=MI();qa.debug(n),e.length>(n?.maxTextSize??U6A)&&(e=T6A);let o="#"+i,a="i"+i,r="#"+a,s="d"+i,l="#"+s,g=we(()=>{let CA=zs(d?r:l).node();CA&&"remove"in CA&&CA.remove()},"removeTempElements"),C=zs("body"),d=n.securityLevel===O6A,B=n.securityLevel===J6A,u=n.fontFamily;if(A!==void 0){if(A&&(A.innerHTML=""),d){let Z=cR(zs(A),a);C=zs(Z.nodes()[0].contentDocument.body),C.node().style.margin=0}else C=zs(A);XZ(C,i,s,`font-family: ${u}`,H6A)}else{if(n8A(document,i,s,a),d){let Z=cR(zs("body"),a);C=zs(Z.nodes()[0].contentDocument.body),C.node().style.margin=0}else C=zs("body");XZ(C,i,s)}let E,f;try{E=yield gR.fromText(e,{title:t.title})}catch(Z){if(n.suppressErrorRendering)throw g(),Z;E=yield gR.fromText("error"),f=Z}let m=C.select(l).node(),v=E.type,S=m.firstChild,k=S.firstChild,M=E.renderer.getClasses?.(e,E),x=e8A(n,v,M,o),F=document.createElement("style");F.innerHTML=x,S.insertBefore(F,k);try{yield E.renderer.draw(e,i,"11.13.0",E)}catch(Z){throw n.suppressErrorRendering?g():UmA.draw(e,i,"11.13.0"),Z}let z=C.select(`${l} svg`),j=E.db.getAccTitle?.(),X=E.db.getAccDescription?.();GX(v,z,j,X),C.select(`[id="${i}"]`).selectAll("foreignobject > *").attr("xmlns",z6A);let eA=C.select(l).node().innerHTML;if(qa.debug("config.arrowMarkerAbsolute",n.arrowMarkerAbsolute),eA=t8A(eA,d,BF(n.arrowMarkerAbsolute)),d){let Z=C.select(l+" svg").node();eA=i8A(eA,Z)}else B||(eA=gF.sanitize(eA,{ADD_TAGS:X6A,ADD_ATTR:$6A,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(N6A(),f)throw f;return g(),{diagramType:v,svg:eA,bindFunctions:E.db.bindFunctions}})},"render");function FX(i={}){let e=IF({},i);e?.fontFamily&&!e.themeVariables?.fontFamily&&(e.themeVariables||(e.themeVariables={}),e.themeVariables.fontFamily=e.fontFamily),EF(e),e?.theme&&e.theme in h3?e.themeVariables=h3[e.theme].getThemeVariables(e.themeVariables):e&&(e.themeVariables=h3.default.getThemeVariables(e.themeVariables));let A=typeof e=="object"?hF(e):qD();PD(A.logLevel),X5()}we(FX,"initialize");var LX=we((i,e={})=>{let{code:A}=CR(i);return gR.fromText(A,e)},"getDiagramFromText");function GX(i,e,A,t){SX(e,i),kX(e,A,t,e.attr("id"))}we(GX,"addA11yInfo");var cI=Object.freeze({render:o8A,parse:NX,getDiagramFromText:LX,initialize:FX,getConfig:MI,setConfig:uF,getSiteConfig:qD,updateSiteConfig:QF,reset:we(()=>{AQ()},"reset"),globalReset:we(()=>{AQ(VD)},"globalReset"),defaultConfig:VD});PD(MI().logLevel);AQ(MI());var a8A=we((i,e,A)=>{qa.warn(i),WD(i)?(A&&A(i.str,i.hash),e.push($A(P({},i),{message:i.str,error:i}))):(A&&A(i),i instanceof Error&&e.push({str:i.message,message:i.message,hash:i.name,error:i}))},"handleError"),KX=we(function(){return re(this,arguments,function*(i={querySelector:".mermaid"}){try{yield r8A(i)}catch(e){if(WD(e)&&qa.error(e.str),UC.parseError&&UC.parseError(e),!i.suppressErrors)throw qa.error("Use the suppressErrors option to suppress these errors"),e}})},"run"),r8A=we(function(){return re(this,arguments,function*({postRenderCallback:i,querySelector:e,nodes:A}={querySelector:".mermaid"}){let t=cI.getConfig();qa.debug(`${i?"":"No "}Callback function found`);let n;if(A)n=A;else if(e)n=document.querySelectorAll(e);else throw new Error("Nodes and querySelector are both undefined");qa.debug(`Found ${n.length} diagrams`),t?.startOnLoad!==void 0&&(qa.debug("Start On Load: "+t?.startOnLoad),cI.updateSiteConfig({startOnLoad:t?.startOnLoad}));let o=new SI.InitIDGenerator(t.deterministicIds,t.deterministicIDSeed),a,r=[];for(let s of Array.from(n)){if(qa.info("Rendering diagram: "+s.id),s.getAttribute("data-processed"))continue;s.setAttribute("data-processed","true");let l=`mermaid-${o.next()}`;a=s.innerHTML,a=_F(SI.entityDecode(a)).trim().replace(//gi,"
      ");let g=SI.detectInit(a);g&&qa.debug("Detected early reinit: ",g);try{let{svg:C,bindFunctions:d}=yield JX(l,a,s);s.innerHTML=C,i&&(yield i(l)),d&&d(s)}catch(C){a8A(C,r,UC.parseError)}}if(r.length>0)throw r[0]})},"runThrowsErrors"),UX=we(function(i){cI.initialize(i)},"initialize"),s8A=we(function(i,e,A){return re(this,null,function*(){qa.warn("mermaid.init is deprecated. Please use run instead."),i&&UX(i);let t={postRenderCallback:A,querySelector:".mermaid"};typeof e=="string"?t.querySelector=e:e&&(e instanceof HTMLElement?t.nodes=[e]:t.nodes=e),yield KX(t)})},"init"),l8A=we((A,...t)=>re(null,[A,...t],function*(i,{lazyLoad:e=!0}={}){X5(),B3(...i),e===!1&&(yield x6A())}),"registerExternalDiagrams"),TX=we(function(){if(UC.startOnLoad){let{startOnLoad:i}=cI.getConfig();i&&UC.run().catch(e=>qa.error("Mermaid failed to initialize",e))}},"contentLoaded");typeof document<"u"&&window.addEventListener("load",TX,!1);var g8A=we(function(i){UC.parseError=i},"setParseErrorHandler"),Z5=[],lR=!1,OX=we(()=>re(null,null,function*(){if(!lR){for(lR=!0;Z5.length>0;){let i=Z5.shift();if(i)try{yield i()}catch(e){qa.error("Error executing queue",e)}}lR=!1}}),"executeQueue"),c8A=we((i,e)=>re(null,null,function*(){return new Promise((A,t)=>{let n=we(()=>new Promise((o,a)=>{cI.parse(i,e).then(r=>{o(r),A(r)},r=>{qa.error("Error parsing",r),UC.parseError?.(r),a(r),t(r)})}),"performCall");Z5.push(n),OX().catch(t)})}),"parse"),JX=we((i,e,A)=>new Promise((t,n)=>{let o=we(()=>new Promise((a,r)=>{cI.render(i,e,A).then(s=>{a(s),t(s)},s=>{qa.error("Error parsing",s),UC.parseError?.(s),r(s),n(s)})}),"performCall");Z5.push(o),OX().catch(n)}),"render"),C8A=we(()=>Object.keys(I3).map(i=>({id:i})),"getRegisteredDiagramsMetadata"),UC={startOnLoad:!0,mermaidAPI:cI,parse:c8A,render:JX,init:s8A,run:KX,registerExternalDiagrams:l8A,registerLayoutLoaders:RF,initialize:UX,parseError:void 0,contentLoaded:TX,setParseErrorHandler:g8A,detectType:jD,registerIconPacks:xF,getRegisteredDiagramsMetadata:C8A},IR=UC;var pre=Vp(YX());Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Prism.languages.js=Prism.languages.javascript;(function(i){i.languages.typescript=i.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),i.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete i.languages.typescript.parameter,delete i.languages.typescript["literal-property"];var e=i.languages.extend("typescript",{});delete e["class-name"],i.languages.typescript["class-name"].inside=e,i.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e}}}}),i.languages.ts=i.languages.typescript})(Prism);(function(i){var e=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;i.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+e.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+e.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+e.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+e.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:e,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},i.languages.css.atrule.inside.rest=i.languages.css;var A=i.languages.markup;A&&(A.tag.addInlined("style","css"),A.tag.addAttribute("style","css"))})(Prism);Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}};Prism.languages.webmanifest=Prism.languages.json;(function(i){var e="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",A={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},t={bash:A,environment:{pattern:RegExp("\\$"+e),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+e),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};i.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+e),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:t},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:A}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:t},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:t.entity}}],environment:{pattern:RegExp("\\$?"+e),alias:"constant"},variable:t.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},A.inside=i.languages.bash;for(var n=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=t.variable[1].inside,a=0;a]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/};Prism.languages.python["string-interpolation"].inside.interpolation.inside.rest=Prism.languages.python;Prism.languages.py=Prism.languages.python;(function(i){var e=/[*&][^\s[\]{},]+/,A=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,t="(?:"+A.source+"(?:[ ]+"+e.source+")?|"+e.source+"(?:[ ]+"+A.source+")?)",n=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function a(r,s){s=(s||"").replace(/m/g,"")+"m";var l=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,function(){return t}).replace(/<>/g,function(){return r});return RegExp(l,s)}i.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,function(){return t})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,function(){return t}).replace(/<>/g,function(){return"(?:"+n+"|"+o+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:a(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:a(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:a(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:a(o),lookbehind:!0,greedy:!0},number:{pattern:a(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:A,important:e,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},i.languages.yml=i.languages.yaml})(Prism);var I8A=i=>({color:i}),B1=class i{constructor(e,A){this.elementRef=e;this.chatPanel=A;Fn(()=>{let t=this.text();setTimeout(()=>{this.renderMermaid(),this.addCopyButtons()},100)})}text=ve("");thought=ve(!1);isReadme=ve(!1);ngOnInit(){IR.initialize({startOnLoad:!1,flowchart:{useMaxWidth:!0,htmlLabels:!0,curve:"basis"},theme:"neutral",themeVariables:{fontSize:"12px",primaryColor:"#e8f0fe",primaryTextColor:"#1a73e8",primaryBorderColor:"#1a73e8",lineColor:"#5f6368",secondaryColor:"#f1f3f4",tertiaryColor:"#ffffff"}})}renderMermaid(){let A=this.elementRef.nativeElement.querySelectorAll("pre code.language-mermaid"),t=!1;A.forEach(n=>{let o=n.parentElement;if(o){let a=n.textContent||"",r=document.createElement("div");r.classList.add("mermaid"),r.textContent=a.trim();let s=document.createElement("div");s.classList.add("mermaid-container"),s.appendChild(r),o.parentNode?.replaceChild(s,o),t=!0}}),t&&IR.run()}addCopyButtons(){let e=this.elementRef.nativeElement;e.querySelectorAll("pre").forEach(o=>{o.querySelector(".copy-code-button")||o.closest(".mermaid-container")||(o.style.position="relative",this.createCopyButton(o,o.querySelector("code")||o))});let t="";e.querySelectorAll("*").forEach(o=>{if(/^H[1-6]$/.test(o.tagName))t=o.textContent||"";else if(o.tagName==="CODE"){let a=o;if(a.closest("pre")||a.querySelector(".copy-code-button")||a.closest(".mermaid-container"))return;this.isReadme()&&t.toLowerCase().includes("sample inputs")&&(a.style.position="relative",this.createCopyButton(a,a),a.classList.add("runnable"),this.createRunButton(a,a))}})}createCopyButton(e,A){let t=document.createElement("button");t.className="copy-code-button",t.setAttribute("aria-label","Copy code"),t.type="button";let n=` - - - - `,o=` - - - - `;t.innerHTML=n,t.addEventListener("click",a=>{a.stopPropagation();let r=(A.textContent||"").trim();navigator.clipboard.writeText(r).then(()=>{t.innerHTML=o,t.classList.add("copied"),setTimeout(()=>{t.innerHTML=n,t.classList.remove("copied")},2e3)}).catch(s=>{console.error("Failed to copy text: ",s)})}),e.appendChild(t)}createRunButton(e,A){if(e.querySelector(".run-code-button"))return;let t=document.createElement("button");t.className="run-code-button",t.setAttribute("aria-label","Run sample input"),t.type="button";let n=` - - - - `;t.innerHTML=n,t.addEventListener("click",o=>{o.stopPropagation();let a=(A.textContent||"").trim();this.chatPanel&&(this.chatPanel.userInput=a,this.chatPanel.userInputChange.emit(a),setTimeout(()=>{this.chatPanel.sendMessage.emit(new Event("submit"))},50))}),e.appendChild(t)}static \u0275fac=function(A){return new(A||i)(st(ce),st(h1,8))};static \u0275cmp=vA({type:i,selectors:[["app-markdown"]],inputs:{text:[1,"text"],thought:[1,"thought"],isReadme:[1,"isReadme"]},features:[pt([GQ()])],decls:1,vars:4,consts:[[3,"data","ngStyle"]],template:function(A,t){A&1&&lA(0,"markdown",0),A&2&&H("data",t.text())("ngStyle",jl(2,I8A,t.thought()?"#9aa0a6":"inherit"))},dependencies:[li,vI,vK,DK],styles:[".mermaid-container[_ngcontent-%COMP%]{display:flex;justify-content:center;margin:16px 0}.mermaid[_ngcontent-%COMP%]{font-size:12px!important}.mermaid[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{max-width:100%;height:auto} .copy-code-button{position:absolute;top:4px;right:4px;z-index:10;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:4px;background-color:var(--mat-sys-surface-container-high)!important;color:var(--mat-sys-on-surface-variant);border:none;cursor:pointer;opacity:0;transition:opacity .2s ease-in-out,background-color .2s ease-in-out,color .2s ease-in-out} pre:hover .copy-code-button{opacity:1} .copy-code-button:hover{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important} .copy-code-button:active{transform:scale(.95)} .copy-code-button.copied{color:#81c784!important;background-color:#4caf5026!important;opacity:1} pre:not(:hover) .copy-code-button.copied, code:not(pre code):not(:hover) .copy-code-button.copied{opacity:0!important;transition:none!important} .copy-code-button svg{width:16px;height:16px} .run-code-button{position:absolute;top:4px;right:4px;z-index:10;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:4px;background-color:var(--mat-sys-surface-container-high)!important;color:var(--mat-sys-on-surface-variant);border:none;cursor:pointer;opacity:0;transition:opacity .2s ease-in-out,background-color .2s ease-in-out,color .2s ease-in-out} .run-code-button:hover{background-color:var(--mat-sys-primary-container)!important;color:var(--mat-sys-on-primary-container)!important} .run-code-button:active{transform:scale(.95)} .run-code-button svg{width:16px;height:16px} code:not(pre code){display:inline-block;position:relative;padding:0 4px;background-color:var(--mat-sys-surface-container-high);vertical-align:top} code:not(pre code).runnable:hover{padding-right:68px!important} code:not(pre code) .copy-code-button{position:absolute;top:50%;right:2px;transform:translateY(-50%);width:28px;height:28px;opacity:0;transition:none!important} code:not(pre code):hover .copy-code-button{opacity:1} code:not(pre code).runnable:hover .copy-code-button{right:32px!important} code:not(pre code) .copy-code-button:active{transform:translateY(-50%)!important} code:not(pre code) .run-code-button{position:absolute;top:50%;right:2px;transform:translateY(-50%);width:28px;height:28px;opacity:0;transition:none!important} code:not(pre code).runnable:hover .run-code-button{opacity:1} code:not(pre code) .run-code-button:active{transform:translateY(-50%)!important}"]})};function h8A(i,e){if(i&1){let A=aA();I(0,"span",6),U("click",function(n){L(A);let o=p();return G(o.toggleExpand(n))}),h()}if(i&2){let A=p();_A("expanded",A.isExpanded)}}function E8A(i,e){if(i&1){let A=aA();I(0,"button",11),U("click",function(n){L(A);let o=p(2);return G(o.openMarkdownDialog(o.key,o.json,n))}),D(1," MARKDOWN "),h()}}function Q8A(i,e){if(i&1&&(I(0,"span",7),D(1),h(),I(2,"span",8),D(3,":"),h(),T(4,E8A,2,0,"button",9),I(5,"span",10),D(6,"\xA0"),h()),i&2){let A=p();Q(),nA(A.key),Q(3),O(A.showMarkdown&&A.hasLineBreaks(A.json)?4:-1)}}function u8A(i,e){i&1&&(I(0,"span",14),D(1,"..."),h(),I(2,"span",13),D(3,"]"),h())}function p8A(i,e){if(i&1&&(I(0,"span",13),D(1,"["),h(),T(2,u8A,4,0)),i&2){let A=p(2);Q(2),O(A.isExpanded?-1:2)}}function f8A(i,e){i&1&&(I(0,"span",14),D(1,"..."),h())}function m8A(i,e){if(i&1&&T(0,f8A,2,0,"span",14),i&2){let A=p(2);O(A.isExpanded?-1:0)}}function w8A(i,e){if(i&1){let A=aA();I(0,"span",12),U("click",function(n){L(A);let o=p();return G(o.toggleExpand(n))}),T(1,p8A,3,1)(2,m8A,1,1),h()}if(i&2){let A=p();Q(),O(A.isArray(A.json)?1:2)}}function y8A(i,e){if(i&1&&(I(0,"span",15),D(1),h()),i&2){let A=p(2);Q(),Ee('"',A.json,'"')}}function D8A(i,e){if(i&1&&(I(0,"span",16),D(1),h()),i&2){let A=p(2);Q(),nA(A.json)}}function v8A(i,e){if(i&1&&(I(0,"span",17),D(1),h()),i&2){let A=p(2);Q(),nA(A.json)}}function b8A(i,e){i&1&&(I(0,"span",18),D(1,"null"),h())}function M8A(i,e){i&1&&(I(0,"span",19),D(1,"undefined"),h())}function S8A(i,e){if(i&1&&(I(0,"span",4),T(1,y8A,2,1,"span",15)(2,D8A,2,1,"span",16)(3,v8A,2,1,"span",17)(4,b8A,2,0,"span",18)(5,M8A,2,0,"span",19),h()),i&2){let A=p();H("ngClass",A.getTypeClass(A.json)),Q(),O(A.isString(A.json)?1:A.isNumber(A.json)?2:A.isBoolean(A.json)?3:A.isNull(A.json)?4:A.isUndefined(A.json)?5:-1)}}function k8A(i,e){if(i&1&&lA(0,"app-custom-json-viewer",22),i&2){let A=e.$implicit,t=e.$index,n=p(3);H("json",A)("key",t)("depth",n.depth+1)("expanded",n.expanded)("showMarkdown",n.showMarkdown)}}function _8A(i,e){if(i&1&&ke(0,k8A,1,5,"app-custom-json-viewer",22,Ja),i&2){let A=p(2);_e(A.json)}}function x8A(i,e){if(i&1&&lA(0,"app-custom-json-viewer",22),i&2){let A=e.$implicit,t=p(3);H("json",t.json[A])("key",A)("depth",t.depth+1)("expanded",t.expanded)("showMarkdown",t.showMarkdown)}}function R8A(i,e){if(i&1&&ke(0,x8A,1,5,"app-custom-json-viewer",22,ni),i&2){let A=p(2);_e(A.getKeys(A.json))}}function N8A(i,e){i&1&&(I(0,"div",21),D(1,"]"),h())}function F8A(i,e){if(i&1&&(I(0,"div",20),T(1,_8A,2,0)(2,R8A,2,0),T(3,N8A,2,0,"div",21),h()),i&2){let A=p();_A("root-children",A.depth===0),Q(),O(A.isArray(A.json)?1:2),Q(2),O(A.isArray(A.json)?3:-1)}}var BR=class i{dialogRef=w(zn);data=w(Do);close(){this.dialogRef.close()}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-markdown-preview-dialog"]],decls:10,vars:2,consts:[[1,"md-dialog-header"],["mat-dialog-title","",1,"md-title"],[1,"title-icon"],["mat-icon-button","",1,"close-button",3,"click"],[1,"md-dialog-content"],[3,"text"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"h2",1)(2,"mat-icon",2),D(3,"article"),h(),D(4),h(),I(5,"button",3),U("click",function(){return t.close()}),I(6,"mat-icon"),D(7,"close"),h()()(),I(8,"mat-dialog-content",4),lA(9,"app-markdown",5),h()),A&2&&(Q(4),Ee(" Markdown Preview - ",t.data.key," "),Q(5),H("text",t.data.value))},dependencies:[li,Ls,Xo,Ba,zt,yi,B1],styles:[".md-dialog-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:16px 24px 8px;border-bottom:1px solid var(--mat-sys-outline-variant)}.md-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;margin:0;font-size:1.25rem;font-weight:500;color:var(--mat-sys-on-surface)}.title-icon[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.close-button[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant)}.md-dialog-content[_ngcontent-%COMP%]{padding:24px;min-width:500px;max-width:80vw;max-height:70vh;overflow-y:auto;background-color:var(--mat-sys-surface-container-high);color:var(--mat-sys-on-surface)}"],changeDetection:0})},fl=class i{json;key;expanded=!0;depth=0;showMarkdown=!1;dialog=w(Xa);isExpanded=!0;ngOnInit(){this.isExpanded=this.expanded}isExpandable(){return this.json!==null&&typeof this.json=="object"}isObject(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}isArray(e){return Array.isArray(e)}isString(e){return typeof e=="string"}hasLineBreaks(e){return typeof e=="string"&&e.includes(` -`)}isNumber(e){return typeof e=="number"}isBoolean(e){return typeof e=="boolean"}isNull(e){return e===null}isUndefined(e){return e===void 0}getKeys(e){return e?Object.keys(e):[]}getTypeClass(e){return this.isString(e)?"segment-type-string":this.isNumber(e)?"segment-type-number":this.isBoolean(e)?"segment-type-boolean":this.isNull(e)?"segment-type-null":"segment-type-undefined"}toggleExpand(e){e.stopPropagation(),this.isExpanded=!this.isExpanded}openMarkdownDialog(e,A,t){t.stopPropagation(),this.dialog.open(BR,{data:{key:e.toString(),value:A},width:"800px",maxWidth:"90vw",panelClass:"custom-md-dialog"})}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-custom-json-viewer"]],inputs:{json:"json",key:"key",expanded:"expanded",depth:"depth",showMarkdown:"showMarkdown"},decls:7,vars:6,consts:[[1,"segment"],[1,"segment-header"],[1,"segment-toggler",3,"expanded"],[1,"segment-value"],[1,"segment-value",3,"ngClass"],[1,"segment-children",3,"root-children"],[1,"segment-toggler",3,"click"],[1,"segment-key"],[1,"segment-separator"],["matTooltip","View in Markdown",1,"md-btn"],[1,"segment-space"],["matTooltip","View in Markdown",1,"md-btn",3,"click"],[1,"segment-value",3,"click"],[1,"bracket"],[1,"collapsed-summary"],[1,"value-string"],[1,"value-number"],[1,"value-boolean"],[1,"value-null"],[1,"value-undefined"],[1,"segment-children"],[1,"bracket","close-bracket"],[3,"json","key","depth","expanded","showMarkdown"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"div",1),T(2,h8A,1,2,"span",2),T(3,Q8A,7,2),T(4,w8A,3,1,"span",3)(5,S8A,6,2,"span",4),h(),T(6,F8A,4,4,"div",5),h()),A&2&&(_A("segment-expandable",t.isExpandable()),Q(2),O(t.isExpandable()&&t.depth>0?2:-1),Q(),O(t.key!==void 0?3:-1),Q(),O(t.isExpandable()?4:5),Q(2),O(t.isExpandable()&&t.isExpanded?6:-1))},dependencies:[i,li,Vl,rn,Ls],styles:["[_nghost-%COMP%]{display:block;font-family:var(--ngx-json-font-family, monospace);font-size:var(--ngx-json-font-size, 13px);line-height:1.4}.segment[_ngcontent-%COMP%]{margin:2px 0;display:block}.segment-header[_ngcontent-%COMP%]{display:flex;align-items:flex-start;flex-wrap:wrap}.segment-toggler[_ngcontent-%COMP%]{cursor:pointer;display:inline-block;width:0;height:0;border-style:solid;border-width:5px 0 5px 6px;border-color:transparent transparent transparent var(--mat-sys-outline);margin-right:8px;margin-top:4px;transition:transform .15s ease}.segment-toggler.expanded[_ngcontent-%COMP%]{transform:rotate(90deg)}.segment-toggler[_ngcontent-%COMP%]:hover{border-left-color:var(--mat-sys-primary)}.segment-key[_ngcontent-%COMP%]{color:var(--mat-sys-primary);font-weight:400;cursor:pointer}.segment-separator[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.segment-space[_ngcontent-%COMP%]{display:inline-block;width:4px;-webkit-user-select:none;user-select:none}.segment-value[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.bracket[_ngcontent-%COMP%]{color:var(--mat-sys-outline);font-weight:400}.collapsed-summary[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:11px;margin:0 4px}.segment-children[_ngcontent-%COMP%]{margin-left:12px;padding-left:4px}.segment-children.root-children[_ngcontent-%COMP%]{margin-left:0;padding-left:0}.close-bracket[_ngcontent-%COMP%]{display:block}.md-btn[_ngcontent-%COMP%]{border:none;outline:none;cursor:pointer;font-family:Roboto,sans-serif;font-size:10px;font-weight:700;letter-spacing:.5px;color:var(--mat-sys-primary);background-color:var(--mat-sys-primary-container);border-radius:4px;padding:2px 6px;margin-left:4px;margin-right:2px;display:inline-flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease,background-color .2s ease,color .2s ease,transform .2s ease;height:16px}.md-btn[_ngcontent-%COMP%]:hover{opacity:1!important;transform:scale(1.05);background-color:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}.segment-header[_ngcontent-%COMP%]:hover .md-btn[_ngcontent-%COMP%]{opacity:.5;visibility:visible}.segment-type-string[_ngcontent-%COMP%]{color:var(--ngx-json-string, #FF6B6B)}.segment-type-string[_ngcontent-%COMP%] .value-string[_ngcontent-%COMP%]{white-space:pre-wrap;word-break:break-word}.segment-type-number[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.segment-type-boolean[_ngcontent-%COMP%]{color:var(--mat-sys-secondary)}.segment-type-null[_ngcontent-%COMP%], .segment-type-undefined[_ngcontent-%COMP%]{color:var(--mat-sys-outline);font-style:italic} .custom-md-dialog .mat-mdc-dialog-container{border-radius:12px!important;border:1px solid var(--mat-sys-outline-variant);box-shadow:0 12px 40px #0000004d!important;background-color:var(--mat-sys-surface-container-high)!important}"],changeDetection:0})};function L8A(i,e){if(i&1&&(I(0,"div",1),D(1),h()),i&2){let A=p();Q(),nA(A.title)}}var Ay=class i{title="";set json(e){if(typeof e=="string")try{this.parsedJson=JSON.parse(e)}catch(A){this.parsedJson=e}else this.parsedJson=e}parsedJson={};static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-json-tooltip"]],inputs:{title:"title",json:"json"},decls:4,vars:3,consts:[[1,"tooltip-shell"],[1,"tooltip-title"],[1,"tooltip-content"],[3,"json","expanded"]],template:function(A,t){A&1&&(I(0,"div",0),T(1,L8A,2,1,"div",1),I(2,"div",2),lA(3,"app-custom-json-viewer",3),h()()),A&2&&(Q(),O(t.title?1:-1),Q(2),H("json",t.parsedJson)("expanded",!0))},dependencies:[fl],styles:["[_nghost-%COMP%]{display:block;font-size:12px;line-height:1.4;word-break:break-word;overflow:hidden}.tooltip-shell[_ngcontent-%COMP%]{display:flex;flex-direction:column;max-width:800px;max-height:80vh;overflow:hidden}.tooltip-content[_ngcontent-%COMP%]{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.tooltip-title[_ngcontent-%COMP%]{font-weight:600;font-size:9px;color:var(--mat-sys-primary);opacity:.5;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;background:inherit;z-index:1}app-custom-json-viewer[_ngcontent-%COMP%]{display:block;height:auto!important;min-width:0}"]})};var E1=class i{json="";title="";overlayRef=null;overlay=w(ad);elementRef=w(ce);show(){if(!this.json)return;let e=this.overlay.position().flexibleConnectedTo(this.elementRef).withPositions([{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetY:-8},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetY:8},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",offsetY:-8},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",offsetY:-8}]).withViewportMargin(16).withPush(!1);this.overlayRef=this.overlay.create({positionStrategy:e,scrollStrategy:this.overlay.scrollStrategies.close(),panelClass:"json-tooltip-panel",maxWidth:"90vw"});let A=new Fs(Ay),t=this.overlayRef.attach(A);t.instance.json=this.json,t.instance.title=this.title,t.changeDetectorRef.detectChanges(),this.overlayRef.updatePosition()}hide(){this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}ngOnDestroy(){this.hide()}static \u0275fac=function(A){return new(A||i)};static \u0275dir=VA({type:i,selectors:[["","appJsonTooltip",""]],hostBindings:function(A,t){A&1&&U("mouseenter",function(){return t.show()})("mouseleave",function(){return t.hide()})},inputs:{json:[0,"appJsonTooltip","json"],title:[0,"appJsonTooltipTitle","title"]}})},ey=class i{tooltipTemplate;context={};disabled=!1;overlayRef=null;overlay=w(ad);elementRef=w(ce);viewContainerRef=w(Jo);show(){if(this.disabled||!this.tooltipTemplate)return;let e=this.overlay.position().flexibleConnectedTo(this.elementRef).withPositions([{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetY:-8},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetY:8},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",offsetY:-8},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",offsetY:-8}]).withViewportMargin(16).withPush(!1);this.overlayRef=this.overlay.create({positionStrategy:e,scrollStrategy:this.overlay.scrollStrategies.close(),panelClass:"html-tooltip-panel",maxWidth:"90vw"});let A=new jr(this.tooltipTemplate,this.viewContainerRef,this.context);this.overlayRef.attach(A)}hide(){this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}ngOnDestroy(){this.hide()}static \u0275fac=function(A){return new(A||i)};static \u0275dir=VA({type:i,selectors:[["","appHtmlTooltip",""]],hostBindings:function(A,t){A&1&&U("mouseenter",function(){return t.show()})("mouseleave",function(){return t.hide()})},inputs:{tooltipTemplate:[0,"appHtmlTooltip","tooltipTemplate"],context:[0,"appHtmlTooltipContext","context"],disabled:[0,"appHtmlTooltipDisabled","disabled"]}})};function G8A(i,e){if(i&1&&(I(0,"div",3)(1,"mat-icon",4),D(2,"robot_2"),h()()),i&2){let A=p();ft("background-color",A.color),_A("hidden",!A.author),H("appJsonTooltip",A.tooltip)}}function K8A(i,e){if(i&1&&(I(0,"div",5),D(1),h()),i&2){let A=p();ft("background-color",A.color),_A("hidden",!A.author),H("appJsonTooltip",A.tooltip),Q(),Ee(" ",A.initial," ")}}function U8A(i,e){i&1&&(I(0,"div",2)(1,"mat-icon"),D(2,"person"),h()())}var ty=class i{role="user";author="";nodePath="";themeService=w(og);stringToColorService=w(g2);get tooltip(){if(this.role==="user")return"";let e={author:this.author,nodePath:this.nodePath||""};return JSON.stringify(e,null,2)}get color(){let e=this.getNodeName(this.nodePath||""),A=this.themeService.currentTheme();return this.stringToColorService.stc(e,A)}get initial(){let A=this.getNodeName(this.nodePath||"").match(/[A-Za-z0-9]/);return A?A[0].toUpperCase():"N"}getNodeName(e){return e.split(/[/.>]/).filter(Boolean).pop()||e}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-chat-avatar"]],inputs:{role:"role",author:"author",nodePath:"nodePath"},decls:3,vars:1,consts:[[1,"bot-avatar",3,"appJsonTooltip","hidden","background-color"],[1,"node-circle-icon",3,"background-color","appJsonTooltip","hidden"],[1,"user-avatar"],[1,"bot-avatar",3,"appJsonTooltip"],["fontSet","material-symbols-outlined"],[1,"node-circle-icon",3,"appJsonTooltip"]],template:function(A,t){A&1&&T(0,G8A,3,5,"div",0)(1,K8A,2,6,"div",1)(2,U8A,3,0,"div",2),A&2&&O(t.role==="bot"?0:t.role==="node"?1:t.role==="user"?2:-1)},dependencies:[li,Un,zt,qi,E1],styles:["[_nghost-%COMP%]{display:contents}.node-circle-icon[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:50%;margin-left:4px;margin-right:16px;margin-top:2px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;color:#fff;font-size:14px;font-weight:600;line-height:1;text-transform:uppercase}.bot-avatar[_ngcontent-%COMP%], .user-avatar[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.bot-avatar[_ngcontent-%COMP%]{margin-right:12px;color:#fff}.user-avatar[_ngcontent-%COMP%]{background-color:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}.hidden[_ngcontent-%COMP%]{visibility:hidden}"]})};var iy=new MA("FeedbackService");var T8A={goodResponseTooltip:"Good response",badResponseTooltip:"Bad response",feedbackAdditionalLabel:"Additional feedback (Optional)",feedbackCommentPlaceholderDown:"Share what could be improved in the response",feedbackCommentPlaceholderUp:"Share what you liked about the response",feedbackCancelButton:"Cancel",feedbackSubmitButton:"Submit",feedbackDialogTitle:"Reasons for feedback (Select all that apply)",feedbackReasonHallucination:"Hallucinated libraries / APIs etc",feedbackReasonIncomplete:"Incomplete answer",feedbackReasonFollowup:"Didn't understand followup",feedbackReasonFactual:"Factual errors",feedbackReasonLinks:"Broken/incorrect links",feedbackReasonIrrelevant:"Irrelevant information",feedbackReasonRepetitive:"Repetitive",feedbackReasonAccurate:"Accurate info",feedbackReasonHelpful:"Helpful",feedbackReasonConcise:"Concise",feedbackReasonUnderstanding:"Good understanding",feedbackReasonClear:"Clear and easy to follow"},HX=new MA("Message Feedback Messages",{factory:()=>T8A});function O8A(i,e){i&1&&(I(0,"mat-icon"),D(1,"thumb_up_filled"),h())}function J8A(i,e){i&1&&(I(0,"mat-icon"),D(1,"thumb_up"),h())}function Y8A(i,e){i&1&&(I(0,"mat-icon"),D(1,"thumb_down_filled"),h())}function H8A(i,e){i&1&&(I(0,"mat-icon"),D(1,"thumb_down"),h())}function z8A(i,e){if(i&1&&(I(0,"mat-chip-option",7),D(1),h()),i&2){let A=e.$implicit;H("value",A),Q(),Ee(" ",A," ")}}function P8A(i,e){if(i&1){let A=aA();I(0,"div",4)(1,"div",5)(2,"h3"),D(3),h(),I(4,"mat-chip-listbox",6),ke(5,z8A,2,2,"mat-chip-option",7,ni),h()(),I(7,"div",8)(8,"h3"),D(9),h(),I(10,"mat-form-field",9)(11,"textarea",10),D(12," "),h()()(),I(13,"div",11)(14,"button",12),U("click",function(){L(A);let n=p();return G(n.onDetailedFeedbackCancelled())}),D(15),h(),I(16,"button",13),U("click",function(){L(A);let n=p();return G(n.onDetailedFeedbackSubmitted())}),D(17),h()()()}if(i&2){let A=p();Q(3),nA(A.i18n.feedbackDialogTitle),Q(),H("formControl",A.selectedReasons),Q(),_e(A.reasons()),Q(4),nA(A.i18n.feedbackAdditionalLabel),Q(2),H("formControl",A.comment)("placeholder",A.feedbackPlaceholder()),Q(4),Ee(" ",A.i18n.feedbackCancelButton," "),Q(2),Ee(" ",A.i18n.feedbackSubmitButton," ")}}var ny=class i{sessionName=ve.required();eventId=ve.required();i18n=w(HX);feedbackService=w(iy);existingFeedback=If({params:()=>({sessionName:this.sessionName(),eventId:this.eventId()}),stream:({params:e})=>this.feedbackService.getFeedback(e.sessionName,e.eventId)});selectedFeedbackDirection=mA(void 0);feedbackDirection=ye(()=>this.selectedFeedbackDirection()??this.existingFeedback.value()?.direction);isDetailedFeedbackVisible=mA(!1);feedbackPlaceholder=ye(()=>this.feedbackDirection()==="up"?this.i18n.feedbackCommentPlaceholderUp:this.i18n.feedbackCommentPlaceholderDown);positiveReasonsResource=If({stream:()=>this.feedbackService.getPositiveFeedbackReasons()});negativeReasonsResource=If({stream:()=>this.feedbackService.getNegativeFeedbackReasons()});reasons=ye(()=>this.feedbackDirection()==="up"?this.positiveReasonsResource.value():this.negativeReasonsResource.value());selectedReasons=new Ps([]);comment=new Ps("");isLoading=mA(!1);sendFeedback(e){this.feedbackDirection()===e?(this.isLoading.set(!0),this.feedbackService.deleteFeedback(this.sessionName(),this.eventId()).subscribe(()=>{this.isLoading.set(!1),this.selectedFeedbackDirection.set(void 0),this.resetDetailedFeedback()})):(this.selectedReasons.reset(),this.isLoading.set(!0),this.feedbackService.sendFeedback(this.sessionName(),this.eventId(),{direction:e}).subscribe(()=>{this.isLoading.set(!1),this.isDetailedFeedbackVisible.set(!0),this.selectedFeedbackDirection.set(e)}))}onDetailedFeedbackSubmitted(){let e=this.feedbackDirection();e&&(this.isLoading.set(!0),this.feedbackService.sendFeedback(this.sessionName(),this.eventId(),{direction:e,reasons:this.selectedReasons.value??[],comment:this.comment.value??void 0}).subscribe(()=>{this.isLoading.set(!1),this.resetDetailedFeedback()}))}onDetailedFeedbackCancelled(){this.selectedFeedbackDirection.set(void 0),this.resetDetailedFeedback()}resetDetailedFeedback(){this.isDetailedFeedbackVisible.set(!1),this.comment.reset(),this.selectedReasons.reset([])}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-message-feedback"]],inputs:{sessionName:[1,"sessionName"],eventId:[1,"eventId"]},decls:9,vars:7,consts:[[1,"message-feedback-container"],[1,"feedback-buttons"],["mat-icon-button","",3,"click","matTooltip","disabled"],["class","feedback-details-container",4,"ngIf"],[1,"feedback-details-container"],[1,"reasons-chips"],["multiple","",3,"formControl"],[3,"value"],[1,"additional-feedback"],["appearance","outline"],["matInput","",3,"formControl","placeholder"],[1,"actions"],["mat-stroked-button","",3,"click"],["mat-flat-button","","color","primary",3,"click"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"div",1)(2,"button",2),U("click",function(){return t.sendFeedback("up")}),T(3,O8A,2,0,"mat-icon")(4,J8A,2,0,"mat-icon"),h(),I(5,"button",2),U("click",function(){return t.sendFeedback("down")}),T(6,Y8A,2,0,"mat-icon")(7,H8A,2,0,"mat-icon"),h()(),kt(8,P8A,18,7,"div",3),h()),A&2&&(Q(2),H("matTooltip",t.i18n.goodResponseTooltip)("disabled",t.isLoading()),Q(),O(t.feedbackDirection()==="up"?3:4),Q(2),H("matTooltip",t.i18n.badResponseTooltip)("disabled",t.isLoading()),Q(),O(t.feedbackDirection()==="down"?6:7),Q(2),H("ngIf",t.isDetailedFeedbackVisible()))},dependencies:[li,ql,WC,Gn,Kn,x1,qi,ki,yi,f5,Kx,Lx,Za,Zo,Un,zt,Ws,ka,Ha,rn],styles:[".message-feedback-container[_ngcontent-%COMP%]{display:block}.feedback-buttons[_ngcontent-%COMP%]{--mat-icon-button-touch-target-size: 32px;--button-size: 32px;--icon-size: 12px;margin-left:96px;display:flex}.feedback-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:var(--button-size);height:var(--button-size);transition:all .2s ease}.feedback-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:var(--icon-size);height:var(--icon-size);width:var(--icon-size);transition:all .2s ease}.feedback-buttons[_ngcontent-%COMP%] button.selected[_ngcontent-%COMP%]{color:var(--side-panel-button-filled-label-text-color, white)}.feedback-buttons[_ngcontent-%COMP%] button.selected[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:inherit}.reasons-chips[_ngcontent-%COMP%]{margin-bottom:20px}.feedback-details-container[_ngcontent-%COMP%]{margin-left:54px;max-width:500px;padding:16px;border-radius:8px;margin-top:8px;border:1px solid var(--builder-border-color)}.feedback-details-container[_ngcontent-%COMP%] .additional-feedback[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-weight:500;margin-bottom:8px;margin-top:0;color:var(--builder-text-secondary-color)}.feedback-details-container[_ngcontent-%COMP%] .additional-feedback[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.feedback-details-container[_ngcontent-%COMP%] .additional-feedback[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{min-height:60px;resize:vertical}.feedback-details-container[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.feedback-details-container[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:18px;padding:0 16px;height:32px;line-height:32px;font-weight:500}"]})};var j8A={cancelButton:"Cancel",saveButton:"Save",invalidJsonAlert:"Invalid JSON: "},zX=new MA("Edit Json Dialog Messages",{factory:()=>j8A});var CI=class i{constructor(e,A){this.dialogRef=e;this.data=A;this.jsonString=JSON.stringify(A.jsonContent,null,2),this.functionName=A.functionName||""}jsonEditorComponent=Yo(Dc);jsonString="";functionName="";i18n=w(zX);ngOnInit(){}onSave(){try{this.jsonString=this.jsonEditorComponent().getJsonString();let e=JSON.parse(this.jsonString);this.dialogRef.close(e)}catch(e){alert(this.i18n.invalidJsonAlert+e)}}onCancel(){this.dialogRef.close(null)}static \u0275fac=function(A){return new(A||i)(st(zn),st(Do))};static \u0275cmp=vA({type:i,selectors:[["app-edit-json-dialog"]],viewQuery:function(A,t){A&1&&ls(t.jsonEditorComponent,Dc,5),A&2&&br()},decls:11,vars:5,consts:[[1,"dialog-container"],["mat-dialog-title",""],[1,"editor"],[3,"jsonString"],["align","end"],["mat-button","","mat-dialog-close",""],["mat-button","","cdkFocusInitial","",3,"click"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"h2",1),D(2),h(),I(3,"mat-dialog-content",2),D(4),lA(5,"app-json-editor",3),h(),I(6,"mat-dialog-actions",4)(7,"button",5),D(8),h(),I(9,"button",6),U("click",function(){return t.onSave()}),D(10),h()()()),A&2&&(Q(2),nA(t.data.dialogHeader),Q(2),Ee(" ",t.functionName," "),Q(),H("jsonString",t.jsonString),Q(3),nA(t.i18n.cancelButton),Q(2),nA(t.i18n.saveButton))},dependencies:[Xo,Ba,Dc,ha,ki,r2],styles:[".dialog-container[_ngcontent-%COMP%]{border-radius:12px;padding:18px;width:500px;box-shadow:0 8px 16px var(--edit-json-dialog-container-box-shadow-color)}.editor[_ngcontent-%COMP%]{padding-top:12px;height:300px}"]})};function vE(i){if(!i)return!1;if(i.name==="computer"){let t=i.args?.action,n=i.args?.coordinate;return["left_click","right_click","middle_click","double_click"].includes(t)&&Array.isArray(n)&&n.length===2}let e=["click_at","hover_at","type_text_at","scroll_at","drag_and_drop","mouse_move","scroll_document","wait_5_seconds","navigate","open_web_browser"].includes(i.name),A=i.args?.x!=null&&i.args?.y!=null||Array.isArray(i.args?.coordinate)&&i.args?.coordinate.length===2;return e}function k0(i){return i?!!i.response?.image?.data:!1}var hR=(a=>(a[a.INACTIVE=0]="INACTIVE",a[a.PENDING=1]="PENDING",a[a.RUNNING=2]="RUNNING",a[a.COMPLETED=3]="COMPLETED",a[a.INTERRUPTED=4]="INTERRUPTED",a[a.FAILED=5]="FAILED",a))(hR||{});var V8A=()=>({type:"dots",color:"#424242",size:1,gap:10});function q8A(i,e){i&1&&(I(0,"span",2),D(1,"(Pinned - Click X to close)"),h())}function W8A(i,e){i&1&&(I(0,"span",2),D(1,"(Click to pin)"),h())}function Z8A(i,e){i&1&&(I(0,"mat-icon",10),D(1,"chevron_right"),h())}function X8A(i,e){if(i&1){let A=aA();I(0,"span",9),U("click",function(){let n=L(A).$index,o=p(2);return G(o.navigateToLevel(n))}),D(1),h(),T(2,Z8A,2,0,"mat-icon",10)}if(i&2){let A=e.$implicit,t=e.$index,n=p(2);_A("active",t===n.breadcrumbs().length-1),Q(),Ee(" ",A," "),Q(),O(t0?17:-1)}}function iwA(i,e){if(i&1&&(Et(),I(0,"g",24),lA(1,"path",25),h()),i&2){let A=e.$implicit;Q(),ie("d",A.path())("stroke",A.edge.data!=null&&A.edge.data.isActive?"#42A5F5":"rgba(138, 180, 248, 0.8)")("stroke-width",A.edge.data!=null&&A.edge.data.isActive?"3":"2")("class",A.edge.data!=null&&A.edge.data.isActive?"active-edge":"")("marker-end",A.markerEnd())}}var oy=class i{nodes=null;agentGraphData=null;nodePath=null;allNodes=null;isPinned=!1;onClose;graphNodes=mA([]);graphEdges=mA([]);NodeStatus=hR;connection={mode:"loose"};fullAgentData=null;navigationStack=[];breadcrumbs=mA([]);close(){this.onClose&&this.onClose()}ngOnInit(){this.buildGraph()}buildGraph(){if(this.agentGraphData?.root_agent){this.fullAgentData=this.agentGraphData.root_agent,this.navigationStack=[{name:this.agentGraphData.root_agent.name,data:this.agentGraphData.root_agent}],this.nodePath&&this.navigateToNodePath(this.nodePath),this.updateBreadcrumbs();let e=this.navigationStack[this.navigationStack.length-1].data;this.buildGraphFromStructure(e)}else this.buildGraphFromStateOnly()}buildGraphFromStructure(e){let A=[],t=[];if(e.nodes&&Array.isArray(e.nodes))this.buildMeshGraph(e.nodes,A,t);else if(e.graph&&e.graph.nodes){let n=IO(e.graph.nodes,e.graph.edges||[],g6);e.graph.nodes.forEach((o,a)=>{let r=tc(o,`node_${a}`),s=this.nodes?this.nodes[r]:null,l=o.type||"agent",g=n.positions.get(r)||{x:g6.startX,y:g6.startY},C=tC(o),d=this.getNodeStatusAtLevel(r,o);A.push({id:r,type:"html-template",point:mA({x:g.x,y:g.y}),width:mA(180),height:mA(80),data:mA({name:r,type:l,status:d,input:s?.input,triggeredBy:s?.triggered_by,retryCount:s?.retry_count,runId:s?.run_id,hasNestedStructure:C,nodeData:o})})}),e.graph.edges&&e.graph.edges.forEach((o,a)=>{let r=tc(o.from_node),s=tc(o.to_node);if(r&&s){let l=this.getNodeStatusAtLevel(r,o.from_node),g=this.getNodeStatusAtLevel(s,o.to_node),C=l===2||l===3&&(g===2||g===1);t.push({id:`${r}_to_${s}_${a}`,source:r,target:s,type:"template",data:{isActive:C},markers:{end:{type:"arrow-closed",width:15,height:15,color:C?"#42A5F5":"rgba(138, 180, 248, 0.8)"}}})}})}this.graphNodes.set(A),this.graphEdges.set(t)}buildMeshGraph(e,A,t){let n=e.findIndex(d=>d.name===e[0]?.name||d.type==="coordinator"),o=n>=0?e[n]:null,a=e.filter((d,B)=>B!==n),r=100,s=200,l=300,C=400-(a.length-1)*l/2;if(o){let d=tC(o),B=tc(o),u=this.getNodeStatusAtLevel(B,o);A.push({id:B,type:"html-template",point:mA({x:400,y:r}),width:mA(180),height:mA(80),data:mA({name:B,type:"agent",status:u,hasNestedStructure:d,nodeData:o})})}a.forEach((d,B)=>{let u=C+B*l,E=r+s,f=tC(d),m=tc(d),v=this.getNodeStatusAtLevel(m,d);if(A.push({id:m,type:"html-template",point:mA({x:u,y:E}),width:mA(180),height:mA(80),data:mA({name:m,type:"agent",status:v,hasNestedStructure:f,nodeData:d})}),o){let S=tc(o),k=this.getNodeStatusAtLevel(S,o),M=k===2||k===3&&(v===2||v===1);t.push({id:`${S}_to_${m}`,source:S,target:m,type:"template",floating:!0,data:{isActive:M},markers:{end:{type:"arrow-closed",width:15,height:15,color:M?"#42A5F5":"rgba(138, 180, 248, 0.8)"}}})}})}buildGraphFromStateOnly(){let e=[],A=[];if(!this.nodes){this.graphNodes.set(e),this.graphEdges.set(A);return}let a=Object.keys(this.nodes);a.forEach((r,s)=>{let l=this.nodes[r];e.push({id:r,type:"html-template",point:mA({x:200,y:50+s*120}),width:mA(180),height:mA(80),data:mA({name:r,type:r==="__START__"?"start":"agent",status:l.status,input:l.input,triggeredBy:l.triggered_by,retryCount:l.retry_count,runId:l.run_id})})}),a.forEach(r=>{let s=this.nodes[r];if(s.triggered_by&&a.includes(s.triggered_by)){let g=this.nodes[s.triggered_by]?.status===2;A.push({id:`${s.triggered_by}_to_${r}`,source:s.triggered_by,target:r,type:"template",floating:!0,data:{isActive:g},markers:{end:{type:"arrow-closed",width:15,height:15,color:g?"#42A5F5":"rgba(138, 180, 248, 0.8)"}}})}}),this.graphNodes.set(e),this.graphEdges.set(A)}getStatusColor(e){switch(e){case 0:return"#757575";case 1:return"#FFA726";case 2:return"#42A5F5";case 3:return"#66BB6A";case 4:return"#FFCA28";case 5:return"#EF5350";default:return"#757575"}}getStatusLabel(e){switch(e){case 0:return"INACTIVE";case 1:return"PENDING";case 2:return"RUNNING";case 3:return"COMPLETED";case 4:return"INTERRUPTED";case 5:return"FAILED";default:return"UNKNOWN"}}getStatusIcon(e){switch(e){case 0:return"radio_button_unchecked";case 1:return"schedule";case 2:return"play_circle";case 3:return"check_circle";case 4:return"pause_circle";case 5:return"error";default:return"help"}}updateBreadcrumbs(){this.breadcrumbs.set(this.navigationStack.map(e=>e.name))}navigateIntoNode(e){let A=this.navigationStack[this.navigationStack.length-1].data,t=LB(A,e);t&&tC(t)&&(this.navigationStack.push({name:e,data:t}),this.updateBreadcrumbs(),this.buildGraphFromStructure(t))}navigateToLevel(e){if(e>=0&&e1?9:-1),Q(2),H("nodes",t.graphNodes())("edges",t.graphEdges())("connection",t.connection)("background",Lc(8,V8A)))},dependencies:[li,Un,zt,qi,yi,K5,Dp,U5,QZ,hE,S5],styles:[".workflow-graph-tooltip[_ngcontent-%COMP%]{width:500px;height:400px;border-radius:8px;padding:12px;display:flex;flex-direction:column;box-shadow:0 4px 16px #0006}.tooltip-header[_ngcontent-%COMP%]{font-size:14px;font-weight:500;color:var(--mdc-dialog-supporting-text-color);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:8px}.pinned-hint[_ngcontent-%COMP%]{font-size:12px;font-weight:400;opacity:.7;font-style:italic;flex:1}.close-button[_ngcontent-%COMP%]{width:24px;height:24px;line-height:24px;margin-left:auto}.close-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;line-height:18px}.breadcrumb-nav[_ngcontent-%COMP%]{display:flex;align-items:center;margin-bottom:8px;font-size:12px;color:var(--mdc-dialog-supporting-text-color)}.breadcrumb-item[_ngcontent-%COMP%]{cursor:pointer;padding:3px 6px;border-radius:3px;transition:background-color .2s}.breadcrumb-item.active[_ngcontent-%COMP%]{font-weight:500;cursor:default}.breadcrumb-separator[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;opacity:.5;margin:0 2px}.vflow-container[_ngcontent-%COMP%]{flex:1;min-height:0;border:1px solid rgba(255,255,255,.1);border-radius:4px;overflow:hidden;position:relative}.vflow-container[_ngcontent-%COMP%] vflow[_ngcontent-%COMP%]{width:100%;height:100%;display:block}.workflow-node[_ngcontent-%COMP%]{border:2px solid;border-radius:6px;padding:8px 12px;min-width:160px;box-shadow:0 2px 6px #0000004d;transition:all .2s}.workflow-node.expandable[_ngcontent-%COMP%]{cursor:pointer}.workflow-node.expandable[_ngcontent-%COMP%]:hover{box-shadow:0 4px 12px #8ab4f84d;transform:scale(1.02)}.node-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.node-type-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:#8ab4f8e6}.status-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;margin-left:auto}.node-label[_ngcontent-%COMP%]{font-weight:500;font-size:13px;color:var(--mdc-dialog-supporting-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.node-type[_ngcontent-%COMP%]{font-size:10px;color:#8ab4f8cc;font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.node-status[_ngcontent-%COMP%]{font-size:11px;font-weight:600;margin-top:2px}.node-retry[_ngcontent-%COMP%]{font-size:10px;color:var(--mdc-dialog-supporting-text-color);opacity:.7;margin-top:2px}[_nghost-%COMP%] .active-edge{animation:_ngcontent-%COMP%_dash 1.5s linear infinite;stroke-dasharray:8 4}@keyframes _ngcontent-%COMP%_dash{to{stroke-dashoffset:-12}}"]})};var ay=class i{appWorkflowGraphTooltip=null;agentGraphData=null;nodePath=null;allNodes=null;overlay=w(ad);overlayPositionBuilder=w(lm);viewContainerRef=w(Jo);overlayRef=null;isPinned=!1;onClick(e){e.stopPropagation(),!(!this.appWorkflowGraphTooltip||Object.keys(this.appWorkflowGraphTooltip).length===0)&&(this.isPinned?this.hide():this.showPinned())}show(){this.isPinned||!this.appWorkflowGraphTooltip||Object.keys(this.appWorkflowGraphTooltip).length===0||this.overlayRef||this.showTooltip(!1)}hide(){this.isPinned||this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}showPinned(){this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null),this.isPinned=!0,this.showTooltip(!0)}showTooltip(e){if(this.overlayRef)return;let A=this.overlayPositionBuilder.flexibleConnectedTo(this.viewContainerRef.element).withPositions([{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetY:-8},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetY:8}]);this.overlayRef=this.overlay.create({positionStrategy:A,scrollStrategy:this.overlay.scrollStrategies.close(),hasBackdrop:e,backdropClass:e?"cdk-overlay-transparent-backdrop":void 0}),e&&this.overlayRef&&this.overlayRef.backdropClick().subscribe(()=>{this.isPinned=!1,this.hide()});let t=new Fs(oy),n=this.overlayRef.attach(t);n.instance.nodes=this.appWorkflowGraphTooltip,n.instance.agentGraphData=this.agentGraphData,n.instance.nodePath=this.nodePath,n.instance.allNodes=this.allNodes,n.instance.isPinned=e,n.instance.onClose=()=>{this.isPinned=!1,this.hide()}}ngOnDestroy(){this.isPinned=!1,this.hide()}static \u0275fac=function(A){return new(A||i)};static \u0275dir=VA({type:i,selectors:[["","appWorkflowGraphTooltip",""]],hostBindings:function(A,t){A&1&&U("click",function(o){return t.onClick(o)})("mouseenter",function(){return t.show()})("mouseleave",function(){return t.hide()})},inputs:{appWorkflowGraphTooltip:"appWorkflowGraphTooltip",agentGraphData:"agentGraphData",nodePath:"nodePath",allNodes:"allNodes"}})};function nwA(i,e){if(i&1){let A=aA();I(0,"div",5)(1,"img",10),U("load",function(n){L(A);let o=p(4);return G(o.onImageLoad(n))})("click",function(n){L(A),p(3);let o=Ki(0);return p().openImageViewer(o),G(n.stopPropagation())}),h(),lA(2,"div",11),h()}if(i&2){p(3);let A=Ki(0),t=p();Q(),H("src",A,mo),Q(),H("ngStyle",t.getClickBoxStyle())}}function owA(i,e){i&1&&(I(0,"div",6)(1,"mat-icon",12),D(2,"image_not_supported"),h(),I(3,"span",13),D(4,"No screenshot"),h()())}function awA(i,e){if(i&1){let A=aA();T(0,nwA,3,2,"div",5)(1,owA,5,0,"div",6),I(2,"div",7)(3,"span",8),D(4),h(),I(5,"mat-icon"),D(6,"arrow_forward"),h()(),I(7,"div",5)(8,"img",9),U("click",function(n){L(A),p(2);let o=Ki(1);return p().openImageViewer(o),G(n.stopPropagation())}),h()()}if(i&2){p(2);let A=Ki(0),t=Ki(1),n=p();O(A?0:1),Q(4),nA(n.getActionName()),Q(4),H("src",t,mo)}}function rwA(i,e){if(i&1){let A=aA();I(0,"div",5)(1,"img",10),U("load",function(n){L(A);let o=p(3);return G(o.onImageLoad(n))})("click",function(n){L(A),p(2);let o=Ki(0);return p().openImageViewer(o),G(n.stopPropagation())}),h(),lA(2,"div",11),h()}if(i&2){p(2);let A=Ki(0),t=p();Q(),H("src",A,mo),Q(),H("ngStyle",t.getClickBoxStyle())}}function swA(i,e){if(i&1){let A=aA();I(0,"div",3),U("click",function(){L(A);let n=p(2);return G(n.clickEvent.emit(n.index))}),I(1,"div",4),T(2,awA,9,3)(3,rwA,3,2,"div",5),h()()}if(i&2){p();let A=Ki(1);_A("dual-images",!!A),Q(2),O(A?2:3)}}function lwA(i,e){if(i&1){let A=aA();I(0,"div",14),U("click",function(){L(A);let n=p(2);return G(n.clickEvent.emit(n.index))}),I(1,"div",6)(2,"mat-icon",12),D(3,"image_not_supported"),h(),I(4,"span",13),D(5,"No screenshot"),h()()()}}function gwA(i,e){if(i&1&&(ro(0)(1),T(2,swA,4,3,"div",1)(3,lwA,6,0,"div",2)),i&2){let A=p(),t=so(A.getPreviousComputerUseScreenshot());Q();let n=so(A.getNextComputerUseScreenshot());Q(),O(t||n?2:3)}}function cwA(i,e){if(i&1){let A=aA();I(0,"div",15),U("click",function(){L(A);let n=p();return G(n.clickEvent.emit(n.index))}),I(1,"div",16)(2,"span",17),D(3),h()(),lA(4,"img",18),I(5,"div",19)(6,"mat-icon",20),D(7,"computer"),h(),I(8,"span",21),D(9),h()()()}if(i&2){let A=p();Q(3),nA(A.functionResponse.name),Q(),H("src",A.getComputerUseScreenshot(),mo),Q(5),nA(A.getComputerUseUrl())}}var ry=class i{functionCall;functionResponse;allMessages=[];index=0;clickEvent=new FA;openImage=new FA;imageDimensions=new Map;VIRTUAL_WIDTH=1e3;VIRTUAL_HEIGHT=1e3;isComputerUseResponse(){return!!this.functionResponse&&k0(this.functionResponse)}isComputerUseClick(){return!!this.functionCall&&vE(this.functionCall)}getComputerUseScreenshot(){return this.getScreenshotFromPayload(this.functionResponse?.response)}getComputerUseUrl(){return this.isComputerUseResponse()&&(this.functionResponse?.response).url||""}getPreviousComputerUseScreenshot(){for(let e=this.index-1;e>=0;e--){let A=this.allMessages[e];if(this.isMsgComputerUseResponse(A)&&A.functionResponses&&A.functionResponses.length>0)for(let t=A.functionResponses.length-1;t>=0;t--){let n=A.functionResponses[t];if(k0(n)){let a=n.response;return this.getScreenshotFromPayload(a)}let o=n.parts;if(Array.isArray(o))for(let a=o.length-1;a>=0;a--){let r=o[a];if(r.inlineData?.mimeType?.startsWith("image/")&&r.inlineData.data){let s=r.inlineData.mimeType,l=r.inlineData.data.replace(/-/g,"+").replace(/_/g,"/");return`data:${s};base64,${l}`}}}}return""}getNextComputerUseScreenshot(){for(let e=this.index+1;e0)for(let t=0;t0?e.functionResponses.some(A=>{if(k0(A))return!0;let t=A.parts;return Array.isArray(t)?t.some(n=>n.inlineData?.mimeType?.startsWith("image/")):!1}):!1}getScreenshotFromPayload(e){let A=e?.image;if(!A?.data)return"";let t=A.data;return t.startsWith("data:")?t:`data:${A.mimetype||"image/png"};base64,${t}`}getAllComputerUseScreenshots(){let e=[];for(let A of this.allMessages)if(this.isMsgComputerUseResponse(A)&&A.functionResponses)for(let t of A.functionResponses){if(k0(t)){let o=t.response;e.push(this.getScreenshotFromPayload(o))}let n=t.parts;if(Array.isArray(n)){for(let o of n)if(o.inlineData?.mimeType?.startsWith("image/")&&o.inlineData.data){let a=o.inlineData.mimeType,r=o.inlineData.data.replace(/-/g,"+").replace(/_/g,"/");e.push(`data:${a};base64,${r}`)}}}return e}getAllComputerUseUrls(){let e=[],A="";for(let t of this.allMessages)if(this.isMsgComputerUseResponse(t)&&t.functionResponses)for(let n of t.functionResponses){let o=n.response?.url;o&&(A=o),k0(n)&&e.push(A);let a=n.parts;if(Array.isArray(a))for(let r of a)r.inlineData?.mimeType?.startsWith("image/")&&r.inlineData.data&&e.push(A)}return e}getAllComputerUseCoordinates(){let e=[],A=null;for(let t of this.allMessages){let n=t.functionCalls;if(Array.isArray(n))for(let o of n)vE(o)?A=o:o.name==="computer"&&(A=null);if(this.isMsgComputerUseResponse(t)&&t.functionResponses)for(let o of t.functionResponses){let a=!1;k0(o)&&(a=!0);let r=o.parts;if(Array.isArray(r))for(let s of r)s.inlineData?.mimeType?.startsWith("image/")&&s.inlineData.data&&(a=!0);a&&(A&&e.length>0&&(e[e.length-1]=this.getClickCoordinates(A)),e.push(null))}}return e}openImageViewer(e){let A=this.getAllComputerUseScreenshots(),t=this.getAllComputerUseUrls(),n=this.getAllComputerUseCoordinates(),o=A.indexOf(e);this.openImage.emit({images:A,currentIndex:o,urls:t,coordinates:n})}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-computer-action"]],inputs:{functionCall:"functionCall",functionResponse:"functionResponse",allMessages:"allMessages",index:"index"},outputs:{clickEvent:"clickEvent",openImage:"openImage"},decls:2,vars:1,consts:[[1,"computer-use-container"],[1,"computer-use-container","click-visualization-container",3,"dual-images"],[1,"computer-use-container","click-visualization-container","fallback"],[1,"computer-use-container","click-visualization-container",3,"click"],[1,"images-wrapper-flex"],[1,"image-wrapper"],[1,"image-wrapper","fallback-image"],[1,"arrow-container"],[1,"action-name-above"],["alt","Next Screenshot",1,"computer-use-screenshot",3,"click","src"],["alt","Computer Use Screenshot",1,"computer-use-screenshot",3,"load","click","src"],[1,"click-overlay-box",3,"ngStyle"],[1,"missing-icon"],[1,"fallback-text"],[1,"computer-use-container","click-visualization-container","fallback",3,"click"],[1,"computer-use-container",3,"click"],[1,"computer-use-header"],[1,"computer-use-tool-name"],["alt","Computer Use Screenshot",1,"computer-use-screenshot",3,"src"],[1,"computer-use-footprint"],[1,"computer-icon"],[1,"url-text"]],template:function(A,t){A&1&&T(0,gwA,4,3)(1,cwA,10,3,"div",0),A&2&&O(t.isComputerUseClick()?0:t.isComputerUseResponse()?1:-1)},dependencies:[li,vI,Un,zt,Ha],styles:['[_nghost-%COMP%]{display:block}.computer-use-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;border-radius:12px;border:1px solid var(--chat-panel-input-field-mat-mdc-text-field-wrapper-border-color);overflow:hidden;cursor:pointer;margin:5px 5px 10px;transition:opacity .2s}.computer-use-container[_ngcontent-%COMP%]:hover{opacity:.9}.computer-use-tool-name[_ngcontent-%COMP%]{font-size:12px;font-family:monospace;font-weight:600;color:var(--chat-panel-input-field-textarea-color);opacity:.9;padding:12px}.computer-use-tool-name[_ngcontent-%COMP%] .actual-pixels[_ngcontent-%COMP%]{opacity:.6;margin-left:8px;font-weight:400}.computer-use-screenshot[_ngcontent-%COMP%]{width:100%;height:auto;display:block;border-bottom:1px solid var(--chat-panel-input-field-mat-mdc-text-field-wrapper-border-color)}.computer-use-footprint[_ngcontent-%COMP%]{display:flex;align-items:center;padding:8px 12px;gap:8px}.computer-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;flex-shrink:0}.url-text[_ngcontent-%COMP%]{font-size:11px;font-family:monospace;white-space:normal;word-break:break-all;color:var(--chat-panel-input-field-textarea-color);opacity:.8;min-width:0}.image-wrapper[_ngcontent-%COMP%]{position:relative;width:100%}.images-wrapper-flex[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:580px;gap:12px}.images-wrapper-flex[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%]{flex:1;min-width:0}.images-wrapper-flex[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%] .computer-use-screenshot[_ngcontent-%COMP%]{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border-radius:8px}.arrow-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--chat-panel-input-field-textarea-color);opacity:.8;gap:4px}.arrow-container[_ngcontent-%COMP%] .action-name-above[_ngcontent-%COMP%]{font-size:11px;font-family:monospace;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.arrow-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:32px;width:32px;height:32px}.fallback-image[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high, #e0e0e0);width:240px;height:120px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--chat-panel-input-field-textarea-color);opacity:.7}.fallback-image[_ngcontent-%COMP%] .missing-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px}.fallback-image[_ngcontent-%COMP%] .fallback-text[_ngcontent-%COMP%]{font-size:14px;font-weight:500}.click-overlay-box[_ngcontent-%COMP%]{position:absolute;width:24px;height:24px;border:1px solid rgba(255,255,255,.8);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 4px #00000080;pointer-events:none;display:flex;align-items:center;justify-content:center}.click-overlay-box[_ngcontent-%COMP%]:before{content:"";width:2px;height:2px;border-radius:50%;box-shadow:0 0 2px #fff}.click-overlay-box[_ngcontent-%COMP%]:after{content:"";position:absolute;width:100%;height:100%;border-radius:50%}']})};function CwA(i,e){if(i&1&&(I(0,"mat-icon"),D(1),h()),i&2){let A=p();Q(),nA(A.icon)}}var sy=class i{icon="";text="";tooltipContent=null;tooltipTitle="";disabled=!1;buttonClick=new FA;handleClick(e){this.buttonClick.emit(e)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-hover-info-button"]],inputs:{icon:"icon",text:"text",tooltipContent:"tooltipContent",tooltipTitle:"tooltipTitle",disabled:"disabled"},outputs:{buttonClick:"buttonClick"},decls:3,vars:7,consts:[["mat-stroked-button","",1,"hover-info-button",3,"click","appJsonTooltip","appJsonTooltipTitle","disabled"]],template:function(A,t){A&1&&(I(0,"button",0),U("click",function(o){return t.handleClick(o)}),T(1,CwA,2,1,"mat-icon"),D(2),h()),A&2&&(_A("icon-only",!t.text),H("appJsonTooltip",t.tooltipContent)("appJsonTooltipTitle",t.tooltipTitle)("disabled",t.disabled),Q(),O(t.icon?1:-1),Q(),Ee(" ",t.text,` -`))},dependencies:[li,qi,ki,Un,zt,E1],styles:[`.hover-info-button[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)!important;background-color:var(--mat-sys-surface-container-high)!important;border-color:transparent!important;margin:5px 5px 5px 0;font-size:11px!important;padding:6px 12px!important;min-height:24px!important;height:24px!important;border-radius:8px!important;font-family:Roboto Mono,monospace!important;max-width:300px;text-align:left;display:inline-flex;align-items:center}.hover-info-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px!important;width:18px!important;height:18px!important;margin-right:6px!important;color:var(--mat-sys-on-surface)!important}.hover-info-button.icon-only[_ngcontent-%COMP%]{padding:0!important;min-width:24px!important;width:24px!important;justify-content:center}.hover-info-button.icon-only[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:-8px!important}.hover-info-button.icon-only[_ngcontent-%COMP%] .mdc-button__label[_ngcontent-%COMP%]{display:none!important}[_nghost-%COMP%] .hover-info-button{background-color:var(--mat-sys-surface-container-high)!important;color:var(--mat-sys-on-surface)!important}[_nghost-%COMP%] .hover-info-button .mdc-button__label{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important} - - - - - - - - - - - - - - - - -`]})};var PX=(i,e)=>e.key;function dwA(i,e){if(i&1){let A=aA();I(0,"div",7)(1,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("form"))}),D(2,"Form"),h(),I(3,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("json"))}),D(4,"JSON"),h(),I(5,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("payload"))}),D(6,"Payload"),h(),I(7,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("response schema"))}),D(8,"Schema"),h()()}if(i&2){let A=p(3);Q(),_A("active",A.activeTab==="form"),Q(2),_A("active",A.activeTab==="json"),Q(2),_A("active",A.activeTab==="payload"),Q(2),_A("active",A.activeTab==="response schema")}}function IwA(i,e){if(i&1){let A=aA();I(0,"div",9)(1,"div",12),D(2),h(),I(3,"div",13)(4,"div",14),D(5,"Payload"),h(),lA(6,"app-custom-json-viewer",15),h(),I(7,"div",16)(8,"div",17)(9,"label",18)(10,"input",19),Ni("ngModelChange",function(n){L(A);let o=p(3);return wi(o.confirmationModel.confirmed,n)||(o.confirmationModel.confirmed=n),G(n)}),h(),I(11,"span"),D(12,"Confirmed"),h()()(),I(13,"button",20),U("click",function(){L(A);let n=p(3);return G(n.onSend())}),D(14," Submit "),h()()()}if(i&2){let A=p(3);Q(2),Ee(" ",A.functionCall.args==null||A.functionCall.args.toolConfirmation==null?null:A.functionCall.args.toolConfirmation.hint," "),Q(4),H("json",A.functionCall.args==null||A.functionCall.args.originalFunctionCall==null?null:A.functionCall.args.originalFunctionCall.args),Q(4),H("id",ZE("confirmed-checkbox-",A.functionCall.id)),Ri("ngModel",A.confirmationModel.confirmed)}}function BwA(i,e){i&1&&D(0," *")}function hwA(i,e){if(i&1&&(I(0,"div",28),D(1),h()),i&2){let A=p(2).$implicit;Q(),nA(A.description)}}function EwA(i,e){if(i&1){let A=aA();I(0,"input",27),Ni("ngModelChange",function(n){L(A);let o=p().$implicit,a=p(5);return wi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h(),T(1,hwA,2,1,"div",28)}if(i&2){let A=p().$implicit,t=p(5);H("id",A.key),Ri("ngModel",t.formModel[A.key]),Q(),O(A.description?1:-1)}}function QwA(i,e){if(i&1){let A=aA();I(0,"input",31),Ni("ngModelChange",function(n){L(A);let o=p(2).$implicit,a=p(5);return wi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(i&2){let A=p(2).$implicit,t=p(5);H("id",A.key),Ri("ngModel",t.formModel[A.key])}}function uwA(i,e){if(i&1){let A=aA();I(0,"input",32),Ni("ngModelChange",function(n){L(A);let o=p(2).$implicit,a=p(5);return wi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(i&2){let A=p(2).$implicit,t=p(5);H("id",A.key),Ri("ngModel",t.formModel[A.key])}}function pwA(i,e){if(i&1&&(I(0,"div",28),D(1),h()),i&2){let A=p(2).$implicit;Q(),nA(A.description)}}function fwA(i,e){if(i&1&&(T(0,QwA,1,2,"input",29)(1,uwA,1,2,"input",30),T(2,pwA,2,1,"div",28)),i&2){let A=p().$implicit;O(A.type==="number"||A.type==="integer"?0:1),Q(2),O(A.description?2:-1)}}function mwA(i,e){if(i&1&&(I(0,"div",25),D(1),T(2,BwA,1,0),h(),I(3,"div",26),T(4,EwA,2,3)(5,fwA,3,2),h()),i&2){let A=e.$implicit;Q(),Ee(" ",A.title),Q(),O(A.required?2:-1),Q(2),O(A.type==="boolean"?4:5)}}function wwA(i,e){if(i&1){let A=aA();I(0,"div",21),ke(1,mwA,6,3,null,null,PX),I(3,"div",23)(4,"button",24),U("click",function(){L(A);let n=p(4);return G(n.onSend())}),D(5," Submit "),h()()()}if(i&2){let A=p(4);Q(),_e(A.formFields)}}function ywA(i,e){if(i&1){let A=aA();I(0,"div",22)(1,"textarea",33),Ni("ngModelChange",function(n){L(A);let o=p(4);return wi(o.formModelJson,n)||(o.formModelJson=n),G(n)}),U("ngModelChange",function(n){L(A);let o=p(4);return G(o.onJsonInputChange(n))}),h()(),I(2,"div",23)(3,"button",24),U("click",function(){L(A);let n=p(4);return G(n.onSend())}),D(4," Submit "),h()()}if(i&2){let A=p(4);Q(),Ri("ngModel",A.formModelJson)}}function DwA(i,e){if(i&1&&(I(0,"div",22)(1,"pre"),D(2),h()()),i&2){let A=p(4);Q(2),nA(A.getPayloadJson())}}function vwA(i,e){if(i&1&&(I(0,"div",22)(1,"pre"),D(2),h()()),i&2){let A=p(4);Q(2),nA(A.getResponseSchemaJson())}}function bwA(i,e){if(i&1&&(I(0,"div",10),T(1,wwA,6,0,"div",21)(2,ywA,5,1)(3,DwA,3,1,"div",22)(4,vwA,3,1,"div",22),h()),i&2){let A=p(3);Q(),O(A.activeTab==="form"?1:A.activeTab==="json"?2:A.activeTab==="payload"?3:A.activeTab==="response schema"?4:-1)}}function MwA(i,e){if(i&1){let A=aA();I(0,"input",34),Ni("ngModelChange",function(n){L(A);let o=p(3);return wi(o.functionCall.userResponse,n)||(o.functionCall.userResponse=n),G(n)}),U("keydown.enter",function(){L(A);let n=p(3);return G(n.onSend())}),h(),I(1,"button",35),U("click",function(){L(A);let n=p(3);return G(n.onSend())}),I(2,"mat-icon"),D(3,"send"),h()()}if(i&2){let A=p(3);Ri("ngModel",A.functionCall.userResponse),Q(),H("disabled",!A.functionCall.userResponse)}}function SwA(i,e){if(i&1&&(I(0,"div",2)(1,"div",4),lA(2,"app-markdown",5),h(),I(3,"div",6),T(4,dwA,9,8,"div",7),I(5,"div",8),T(6,IwA,15,5,"div",9)(7,bwA,5,1,"div",10)(8,MwA,4,2),h()()()),i&2){let A=p(2);Q(2),H("text",A.getPromptText()),Q(2),O(A.formFields.length>0?4:-1),Q(2),O(A.isConfirmationRequest?6:A.formFields.length>0?7:8)}}function kwA(i,e){if(i&1){let A=aA();I(0,"div",7)(1,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("form"))}),D(2,"Form"),h(),I(3,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("json"))}),D(4,"JSON"),h(),I(5,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("payload"))}),D(6,"Payload"),h(),I(7,"div",11),U("click",function(){L(A);let n=p(3);return G(n.setActiveTab("response schema"))}),D(8,"Schema"),h()()}if(i&2){let A=p(3);Q(),_A("active",A.activeTab==="form"),Q(2),_A("active",A.activeTab==="json"),Q(2),_A("active",A.activeTab==="payload"),Q(2),_A("active",A.activeTab==="response schema")}}function _wA(i,e){if(i&1){let A=aA();I(0,"div",9)(1,"div",12),D(2),h(),I(3,"div",13)(4,"div",14),D(5,"Payload"),h(),lA(6,"app-custom-json-viewer",15),h(),I(7,"div",16)(8,"div",17)(9,"label",18)(10,"input",19),Ni("ngModelChange",function(n){L(A);let o=p(3);return wi(o.confirmationModel.confirmed,n)||(o.confirmationModel.confirmed=n),G(n)}),h(),I(11,"span"),D(12,"Confirmed"),h()()(),I(13,"button",20),U("click",function(){L(A);let n=p(3);return G(n.onSend())}),D(14," Submit "),h()()()}if(i&2){let A=p(3);Q(2),Ee(" ",A.functionCall.args==null||A.functionCall.args.toolConfirmation==null?null:A.functionCall.args.toolConfirmation.hint," "),Q(4),H("json",A.functionCall.args==null||A.functionCall.args.originalFunctionCall==null?null:A.functionCall.args.originalFunctionCall.args),Q(4),H("id",ZE("confirmed-checkbox-standalone-",A.functionCall.id)),Ri("ngModel",A.confirmationModel.confirmed)}}function xwA(i,e){i&1&&D(0," *")}function RwA(i,e){if(i&1&&(I(0,"div",28),D(1),h()),i&2){let A=p(2).$implicit;Q(),nA(A.description)}}function NwA(i,e){if(i&1){let A=aA();I(0,"input",27),Ni("ngModelChange",function(n){L(A);let o=p().$implicit,a=p(5);return wi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h(),T(1,RwA,2,1,"div",28)}if(i&2){let A=p().$implicit,t=p(5);H("id",A.key),Ri("ngModel",t.formModel[A.key]),Q(),O(A.description?1:-1)}}function FwA(i,e){if(i&1){let A=aA();I(0,"input",31),Ni("ngModelChange",function(n){L(A);let o=p(2).$implicit,a=p(5);return wi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(i&2){let A=p(2).$implicit,t=p(5);H("id",A.key),Ri("ngModel",t.formModel[A.key])}}function LwA(i,e){if(i&1){let A=aA();I(0,"input",32),Ni("ngModelChange",function(n){L(A);let o=p(2).$implicit,a=p(5);return wi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(i&2){let A=p(2).$implicit,t=p(5);H("id",A.key),Ri("ngModel",t.formModel[A.key])}}function GwA(i,e){if(i&1&&(I(0,"div",28),D(1),h()),i&2){let A=p(2).$implicit;Q(),nA(A.description)}}function KwA(i,e){if(i&1&&(T(0,FwA,1,2,"input",29)(1,LwA,1,2,"input",30),T(2,GwA,2,1,"div",28)),i&2){let A=p().$implicit;O(A.type==="number"||A.type==="integer"?0:1),Q(2),O(A.description?2:-1)}}function UwA(i,e){if(i&1&&(I(0,"div",25),D(1),T(2,xwA,1,0),h(),I(3,"div",26),T(4,NwA,2,3)(5,KwA,3,2),h()),i&2){let A=e.$implicit;Q(),Ee(" ",A.title),Q(),O(A.required?2:-1),Q(2),O(A.type==="boolean"?4:5)}}function TwA(i,e){if(i&1){let A=aA();I(0,"div",21),ke(1,UwA,6,3,null,null,PX),I(3,"div",23)(4,"button",24),U("click",function(){L(A);let n=p(4);return G(n.onSend())}),D(5," Submit "),h()()()}if(i&2){let A=p(4);Q(),_e(A.formFields)}}function OwA(i,e){if(i&1){let A=aA();I(0,"div",22)(1,"textarea",33),Ni("ngModelChange",function(n){L(A);let o=p(4);return wi(o.formModelJson,n)||(o.formModelJson=n),G(n)}),U("ngModelChange",function(n){L(A);let o=p(4);return G(o.onJsonInputChange(n))}),h()(),I(2,"div",23)(3,"button",24),U("click",function(){L(A);let n=p(4);return G(n.onSend())}),D(4," Submit "),h()()}if(i&2){let A=p(4);Q(),Ri("ngModel",A.formModelJson)}}function JwA(i,e){if(i&1&&(I(0,"div",22)(1,"pre"),D(2),h()()),i&2){let A=p(4);Q(2),nA(A.getPayloadJson())}}function YwA(i,e){if(i&1&&(I(0,"div",22)(1,"pre"),D(2),h()()),i&2){let A=p(4);Q(2),nA(A.getResponseSchemaJson())}}function HwA(i,e){if(i&1&&(I(0,"div",10),T(1,TwA,6,0,"div",21)(2,OwA,5,1)(3,JwA,3,1,"div",22)(4,YwA,3,1,"div",22),h()),i&2){let A=p(3);Q(),O(A.activeTab==="form"?1:A.activeTab==="json"?2:A.activeTab==="payload"?3:A.activeTab==="response schema"?4:-1)}}function zwA(i,e){if(i&1){let A=aA();I(0,"input",34),Ni("ngModelChange",function(n){L(A);let o=p(3);return wi(o.functionCall.userResponse,n)||(o.functionCall.userResponse=n),G(n)}),U("keydown.enter",function(){L(A);let n=p(3);return G(n.onSend())}),h(),I(1,"button",35),U("click",function(){L(A);let n=p(3);return G(n.onSend())}),I(2,"mat-icon"),D(3,"send"),h()()}if(i&2){let A=p(3);Ri("ngModel",A.functionCall.userResponse),Q(),H("disabled",!A.functionCall.userResponse)}}function PwA(i,e){if(i&1&&(I(0,"div",3),T(1,kwA,9,8,"div",7),I(2,"div",8),T(3,_wA,15,5,"div",9)(4,HwA,5,1,"div",10)(5,zwA,4,2),h()()),i&2){let A=p(2);Q(),O(A.formFields.length>0?1:-1),Q(2),O(A.isConfirmationRequest?3:A.formFields.length>0?4:5)}}function jwA(i,e){if(i&1&&(I(0,"div",1),U("click",function(t){return t.stopPropagation()}),T(1,SwA,9,3,"div",2)(2,PwA,6,2,"div",3),h()),i&2){let A=p();Q(),O(A.hasMessage()?1:2)}}var ly=class i{functionCall;appName;userId;sessionId;responseComplete=new FA;formModel={};formFields=[];activeTab="form";formModelJson="";confirmationModel={confirmed:!1,payload:""};get isConfirmationRequest(){return this.functionCall?.name==="adk_request_confirmation"}cdr=w(Mt);ngOnChanges(e){e.functionCall&&this.initForm()}initForm(){if(this.formModel={},this.formFields=[],this.isConfirmationRequest){this.confirmationModel.confirmed=this.functionCall.args?.toolConfirmation?.confirmed||!1,this.confirmationModel.payload=JSON.stringify(this.functionCall.args?.originalFunctionCall?.args||{},null,2);return}let e=this.functionCall?.args?.response_schema;if(e&&e.type==="object"&&e.properties)for(let A of Object.keys(e.properties)){let t=e.properties[A],n=t.type;if(!n&&t.anyOf){let o=t.anyOf.find(a=>a.type!=="null");o&&(n=o.type)}this.formFields.push({key:A,type:n,title:t.title||A,description:t.description||"",required:e.required?.includes(A)||!1}),n==="boolean"?this.formModel[A]=!1:n==="number"||n==="integer"?this.formModel[A]=null:this.formModel[A]=""}}getCleanedFormModel(){let e=this.functionCall?.args?.response_schema;if(!e||e.type!=="object"||!e.properties)return this.formModel;let A=P({},this.formModel);for(let t of Object.keys(e.properties)){let n=e.properties[t],o=A[t];if(o!=null&&o!==""){let a=n.type;if(!a&&n.anyOf){let r=n.anyOf.find(s=>s.type!=="null");r&&(a=r.type)}a==="integer"?A[t]=parseInt(o,10):a==="number"&&(A[t]=parseFloat(o))}else A[t]=null}return A}updateFormModelJson(){this.formModelJson=JSON.stringify(this.getCleanedFormModel(),null,2)}onJsonInputChange(e){try{let A=JSON.parse(e);this.formModel=A}catch(A){}}setActiveTab(e){this.activeTab=e,e==="json"&&this.updateFormModelJson()}hasMessage(){return!!(this.functionCall.args?.prompt||this.functionCall.args?.message)}getPromptText(){return this.functionCall.args?.prompt||this.functionCall.args?.message||"Please provide your response"}hasPayload(){return this.functionCall.args?.payload!==void 0&&this.functionCall.args?.payload!==null}getPayloadJson(){try{return JSON.stringify(this.functionCall.args?.payload||{},null,2)}catch(e){return""}}hasResponseSchema(){return!!this.functionCall.args?.response_schema}getResponseSchemaJson(){try{return JSON.stringify(this.functionCall.args?.response_schema||{},null,2)}catch(e){return""}}onSend(){if(this.isConfirmationRequest){let o={};try{o=JSON.parse(this.confirmationModel.payload)}catch(s){o=this.functionCall.args?.originalFunctionCall?.args||{}}let a={confirmed:this.confirmationModel.confirmed,payload:o};this.functionCall.responseStatus="sent",this.cdr.detectChanges();let r={role:"user",parts:[{functionResponse:{id:this.functionCall.id,name:this.functionCall.name,response:a}}],functionCallEventId:this.functionCall.functionCallEventId};this.responseComplete.emit(r);return}let e,A=this.functionCall?.args?.response_schema;if(A&&A.type==="object"&&A.properties&&this.formFields.length>0){let o=this.getCleanedFormModel();e=o,this.functionCall.userResponse=JSON.stringify(o),this.functionCall.sentUserResponse=this.functionCall.userResponse}else{if(!this.functionCall.userResponse||!this.functionCall.userResponse.trim())return;this.functionCall.sentUserResponse=this.functionCall.userResponse;try{let o=JSON.parse(this.functionCall.userResponse);typeof o=="object"&&o!==null?e=o:e={result:this.functionCall.userResponse}}catch(o){e={result:this.functionCall.userResponse}}}this.functionCall.responseStatus="sent",this.cdr.detectChanges();let n={role:"user",parts:[{functionResponse:{id:this.functionCall.id,name:this.functionCall.name,response:e}}],functionCallEventId:this.functionCall.functionCallEventId};this.responseComplete.emit(n)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-long-running-response"]],inputs:{functionCall:"functionCall",appName:"appName",userId:"userId",sessionId:"sessionId"},outputs:{responseComplete:"responseComplete"},features:[ii],decls:1,vars:1,consts:[[1,"response-chip-container"],[1,"response-chip-container",3,"click"],[1,"message-box"],[1,"request-card-standalone"],[1,"message-content"],[3,"text"],[1,"request-card"],[1,"tabs-header"],[1,"input-container"],[1,"confirmation-container",2,"width","100%"],[1,"tabs-content"],[1,"tab-link",3,"click"],[1,"confirmation-hint",2,"margin-bottom","10px","font-size","13px","font-weight","600","color","var(--mat-sys-on-surface)"],[1,"confirmation-payload",2,"margin-bottom","10px"],[1,"field-label",2,"margin-bottom","5px","font-size","12px","font-weight","500","color","var(--mat-sys-on-surface-variant)"],[3,"json"],[1,"confirmation-footer",2,"display","flex","justify-content","space-between","align-items","center","margin-top","10px"],[1,"confirmation-checkbox",2,"font-size","12px"],[2,"display","flex","align-items","center","gap","6px","cursor","pointer"],["type","checkbox",2,"cursor","pointer",3,"ngModelChange","id","ngModel"],["mat-raised-button","","color","primary",1,"form-submit-button",2,"margin-top","0",3,"click"],[1,"schema-form","grid-layout"],[1,"json-view"],[1,"grid-submit"],["mat-raised-button","","color","primary",1,"form-submit-button",3,"click"],[1,"grid-label"],[1,"grid-value"],["type","checkbox",3,"ngModelChange","id","ngModel"],[1,"field-description"],["type","number",1,"form-input",3,"id","ngModel"],["type","text",1,"form-input",3,"id","ngModel"],["type","number",1,"form-input",3,"ngModelChange","id","ngModel"],["type","text",1,"form-input",3,"ngModelChange","id","ngModel"],[1,"json-textarea",3,"ngModelChange","ngModel"],["placeholder","Enter your response...",1,"response-input",3,"ngModelChange","keydown.enter","ngModel"],["mat-icon-button","",1,"send-button",3,"click","disabled"]],template:function(A,t){A&1&&T(0,jwA,3,1,"div",0),A&2&&O(t.functionCall.responseStatus!=="sent"&&t.functionCall.responseStatus!=="sending"?0:-1)},dependencies:[fn,Gn,gQ,ev,Kn,Ho,yi,ki,zt,B1,fl],styles:["[_nghost-%COMP%]{display:block}.response-chip-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;margin:5px 5px 5px 0}.message-box[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high);border:1px solid var(--mat-sys-outline-variant);border-radius:20px;padding:12px 16px;box-shadow:none;display:flex;flex-direction:column;gap:12px}.message-content[_ngcontent-%COMP%]{flex:1;font-size:12px}.request-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;width:100%}.request-card-standalone[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--mat-sys-surface-container-high) 70%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 30%,transparent);border-radius:12px;padding:12px;box-shadow:0 4px 16px #0003;display:flex;flex-direction:column;gap:8px;max-width:400px}.data-buttons[_ngcontent-%COMP%]{display:flex;gap:8px}.input-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;width:100%}.input-container[_ngcontent-%COMP%] .response-input[_ngcontent-%COMP%]{flex:1;border:1px solid var(--mat-sys-outline-variant);border-radius:4px;padding:4px 8px;background:var(--mat-sys-surface-container);outline:none;font-size:12px;font-family:inherit;color:var(--mat-sys-on-surface);caret-color:var(--mat-sys-primary)}.input-container[_ngcontent-%COMP%] .response-input[_ngcontent-%COMP%]::placeholder{color:var(--mat-sys-on-surface-variant);opacity:.6}.input-container[_ngcontent-%COMP%] .send-button[_ngcontent-%COMP%]{color:var(--mat-sys-primary);width:24px;height:24px;min-width:24px;padding:0;line-height:24px;box-sizing:border-box}.input-container[_ngcontent-%COMP%] .send-button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface-variant);opacity:.3}.input-container[_ngcontent-%COMP%] .send-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}.tabs-header[_ngcontent-%COMP%]{display:flex;gap:8px;border-bottom:1px solid var(--mat-sys-outline-variant);margin-bottom:8px;padding-bottom:4px}.tab-link[_ngcontent-%COMP%]{font-size:11px;font-weight:500;color:var(--mat-sys-on-surface-variant);cursor:pointer;padding:2px 6px;border-radius:4px}.tab-link[_ngcontent-%COMP%]:hover{background:var(--mat-sys-surface-container-high)}.tab-link.active[_ngcontent-%COMP%]{color:var(--mat-sys-primary);background:var(--mat-sys-primary-container)}.tabs-content[_ngcontent-%COMP%]{width:100%}.json-view[_ngcontent-%COMP%]{padding:4px 0;max-height:200px;overflow:auto}.json-view[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:0;font-size:10px;font-family:monospace;color:var(--mat-sys-on-surface)}.json-view[_ngcontent-%COMP%] .json-textarea[_ngcontent-%COMP%]{width:100%;height:150px;margin:0;font-size:10px;font-family:monospace;color:var(--mat-sys-on-surface);background:transparent;border:1px solid var(--mat-sys-outline-variant);border-radius:4px;padding:4px;resize:vertical;box-sizing:border-box}.json-view[_ngcontent-%COMP%] .json-textarea[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--mat-sys-primary)}.schema-form.grid-layout[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;gap:4px 8px;align-items:start;width:100%;padding:4px 2px}.grid-label[_ngcontent-%COMP%]{font-size:11px;font-weight:500;color:var(--mat-sys-on-surface);text-align:right;white-space:nowrap;padding-top:6px}.grid-value[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;width:100%}.grid-value[_ngcontent-%COMP%] .form-input[_ngcontent-%COMP%]{width:100%;border:1px solid var(--mat-sys-outline-variant);border-radius:4px;padding:4px 6px;font-size:11px;background:var(--mat-sys-surface-container);color:var(--mat-sys-on-surface);box-sizing:border-box;height:28px}.grid-value[_ngcontent-%COMP%] .form-input[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--mat-sys-primary)}.grid-value[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{margin:4px 0;align-self:flex-start}.field-description[_ngcontent-%COMP%]{font-size:10px;color:var(--mat-sys-on-surface-variant);opacity:.8}.grid-submit[_ngcontent-%COMP%]{grid-column:1/-1;display:flex;justify-content:flex-end;margin-top:4px}.form-submit-button[_ngcontent-%COMP%]{align-self:flex-end;margin-top:2px;height:28px!important;line-height:28px!important;font-size:11px!important}"]})};function VwA(i,e){if(i&1&&lA(0,"a2ui-surface",0),i&2){let A=p();H("surfaceId",A.surfaceId())("surface",A.surface())}}var gy=class i{processor=w(ZN);beginRendering=null;surfaceUpdate=null;dataModelUpdate=null;surfaceId=mA(null);activeSurface=mA(null);surface=ye(()=>this.activeSurface());constructor(){}ngOnChanges(e){let A=[],t=null;e.beginRendering&&this.beginRendering&&Object.keys(this.beginRendering).length>0&&(A.push(this.beginRendering),t=this.beginRendering?.beginRendering?.surfaceId??t),e.surfaceUpdate&&this.surfaceUpdate&&Object.keys(this.surfaceUpdate).length>0&&(A.push(this.surfaceUpdate),t=this.surfaceUpdate?.surfaceUpdate?.surfaceId??t),e.dataModelUpdate&&this.dataModelUpdate&&Object.keys(this.dataModelUpdate).length>0&&(A.push(this.dataModelUpdate),t=this.dataModelUpdate?.dataModelUpdate?.surfaceId??t),A.length>0&&this.processor.processMessages(A),t&&this.surfaceId.set(t);let n=this.surfaceId();if(n){let o=this.processor.getSurfaces();o.has(n)&&this.activeSurface.set(o.get(n))}}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-a2ui-canvas"]],inputs:{beginRendering:"beginRendering",surfaceUpdate:"surfaceUpdate",dataModelUpdate:"dataModelUpdate"},features:[ii],decls:1,vars:1,consts:[[3,"surfaceId","surface"]],template:function(A,t){A&1&&T(0,VwA,1,2,"a2ui-surface",0),A&2&&O(t.surface()?0:-1)},dependencies:[li,AF],styles:["[_nghost-%COMP%]{display:block;height:100%;width:100%;overflow:auto}[_nghost-%COMP%] *{box-sizing:border-box}.canvas[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;padding:16px;box-sizing:border-box;min-height:100%}"],changeDetection:0})};var Cy=(i,e)=>({text:i,thought:e});function qwA(i,e){if(i&1&&(I(0,"div",1),D(1),h()),i&2){let A=p();Q(),nA(A.type)}}function WwA(i,e){if(i&1&&lA(0,"img",8),i&2){let A=p().$implicit;H("src",A.url,mo)}}function ZwA(i,e){if(i&1&&(I(0,"a",9),D(1),h()),i&2){let A=p(2).$implicit;H("href",A.url,mo),Q(),nA(A.file.name)}}function XwA(i,e){if(i&1&&D(0),i&2){let A=p(2).$implicit;Ee(" ",A.file.name," ")}}function $wA(i,e){if(i&1&&(I(0,"mat-icon"),D(1,"insert_drive_file"),h(),T(2,ZwA,2,2,"a",9)(3,XwA,1,1)),i&2){let A=p().$implicit;Q(2),O(A.url?2:3)}}function A5A(i,e){if(i&1&&(I(0,"div",7),T(1,WwA,1,1,"img",8),T(2,$wA,4,1),h()),i&2){let A=e.$implicit;Q(),O(A.file.type.startsWith("image/")?1:-1),Q(),O(A.file.type.startsWith("image/")?-1:2)}}function e5A(i,e){if(i&1&&(I(0,"div",4),ke(1,A5A,3,2,"div",7,ni),h()),i&2){let A=p(2);Q(),_e(A.uiEvent.attachments)}}function t5A(i,e){i&1&&(I(0,"div",1),D(1,"thought"),h())}function i5A(i,e){if(i&1&&(I(0,"div"),T(1,t5A,2,0,"div",1),dn(2,10),h()),i&2){let A=e.$implicit,t=e.$index,n=p(4);_A("thought-container",A.thought&&n.type!=="thought")("not-first-part",t!==0),Q(),O(A.thought&&n.type!=="thought"?1:-1),Q(),H("ngComponentOutlet",n.markdownComponent)("ngComponentOutletInputs",L0(7,Cy,A.text,A.thought))}}function n5A(i,e){if(i&1&&ke(0,i5A,3,10,"div",11,ni),i&2){let A=p(3);_e(A.uiEvent.textParts)}}function o5A(i,e){if(i&1&&dn(0,10),i&2){let A=p(3);H("ngComponentOutlet",A.markdownComponent)("ngComponentOutletInputs",L0(2,Cy,A.uiEvent.text||A.rawMessageText,A.uiEvent.thought))}}function a5A(i,e){if(i&1&&(I(0,"div",5),T(1,n5A,2,0)(2,o5A,1,5,"ng-container",10),h()),i&2){let A=p(2);H("appJsonTooltip",A.jsonOutputData),Q(),O(A.uiEvent.textParts&&A.uiEvent.textParts.length>0?1:2)}}function r5A(i,e){if(i&1){let A=aA();I(0,"div",13)(1,"textarea",14,0),U("ngModelChange",function(n){L(A);let o=p(4);return G(o.userEditEvalCaseMessageChange.emit(n))})("keydown",function(n){L(A);let o=p(4);return G(o.handleKeydown.emit({event:n,message:o.uiEvent}))}),h(),I(3,"div",15)(4,"span",16),U("click",function(){L(A);let n=p(4);return G(n.cancelEditMessage.emit(n.uiEvent))}),D(5," close "),h(),I(6,"span",17),U("click",function(){L(A);let n=p(4);return G(n.saveEditMessage.emit(n.uiEvent))}),D(7," check "),h()()()}if(i&2){let A=p(4);Q(),H("ngModel",A.userEditEvalCaseMessage),Q(3),H("matTooltip",A.i18n.cancelEditingTooltip),Q(2),H("matTooltip",A.i18n.saveEvalMessageTooltip)}}function s5A(i,e){i&1&&(I(0,"div",1),D(1,"thought"),h())}function l5A(i,e){if(i&1&&(I(0,"div"),T(1,s5A,2,0,"div",1),dn(2,10),h()),i&2){let A=e.$implicit,t=e.$index,n=p(6);_A("thought-container",A.thought&&n.type!=="thought")("not-first-part",t!==0),Q(),O(A.thought&&n.type!=="thought"?1:-1),Q(),H("ngComponentOutlet",n.markdownComponent)("ngComponentOutletInputs",L0(7,Cy,A.text,A.thought))}}function g5A(i,e){if(i&1&&ke(0,l5A,3,10,"div",11,ni),i&2){let A=p(5);_e(A.uiEvent.textParts)}}function c5A(i,e){if(i&1&&dn(0,10),i&2){let A=p(5);H("ngComponentOutlet",A.markdownComponent)("ngComponentOutletInputs",L0(2,Cy,A.uiEvent.text,A.uiEvent.thought))}}function C5A(i,e){if(i&1&&T(0,g5A,2,0)(1,c5A,1,5,"ng-container",10),i&2){let A=p(4);O(A.uiEvent.textParts&&A.uiEvent.textParts.length>0?0:1)}}function d5A(i,e){if(i&1&&T(0,r5A,8,3,"div",13)(1,C5A,2,1),i&2){let A=p(3);O(A.uiEvent.isEditing?0:1)}}function I5A(i,e){if(i&1&&(I(0,"div"),lA(1,"div",18),h()),i&2){let A=p(3);Q(),H("innerHTML",A.renderGooglerSearch(A.uiEvent.renderedContent),Fc)}}function B5A(i,e){if(i&1&&lA(0,"app-a2ui-canvas",12),i&2){let A=p(3);H("beginRendering",A.uiEvent.a2uiData.beginRendering)("surfaceUpdate",A.uiEvent.a2uiData.surfaceUpdate)("dataModelUpdate",A.uiEvent.a2uiData.dataModelUpdate)}}function h5A(i,e){if(i&1&&(I(0,"div")(1,"div"),T(2,d5A,2,1),h(),T(3,I5A,2,1,"div"),T(4,B5A,1,3,"app-a2ui-canvas",12),h()),i&2){let A=p(2);Q(2),O(A.uiEvent.text?2:-1),Q(),O(A.uiEvent.renderedContent?3:-1),Q(),O(A.uiEvent.a2uiData?4:-1)}}function E5A(i,e){if(i&1&&(I(0,"code"),D(1),h()),i&2){let A=p(2);Q(),Ee(" ",A.uiEvent.executableCode.code," ")}}function Q5A(i,e){if(i&1&&(I(0,"div")(1,"div"),D(2),h(),I(3,"div"),D(4),h()()),i&2){let A=p(2);Q(2),Ya("",A.i18n.outcomeLabel,": ",A.uiEvent.codeExecutionResult.outcome),Q(2),Ya("",A.i18n.outputLabel,": ",A.uiEvent.codeExecutionResult.output)}}function u5A(i,e){if(i&1){let A=aA();I(0,"div",19)(1,"img",21),U("click",function(){L(A);let n=p(4);return G(n.openViewImageDialog.emit(n.uiEvent.inlineData.data))}),h()()}if(i&2){let A=p(4);Q(),H("src",A.uiEvent.inlineData.data,mo)}}function p5A(i,e){if(i&1&&(I(0,"div"),lA(1,"app-audio-player",22),h()),i&2){let A=p(4);Q(),H("base64data",A.uiEvent.inlineData.data)}}function f5A(i,e){if(i&1&&(I(0,"div",20),lA(1,"video",23),h()),i&2){let A=p(4);Q(),H("src",A.uiEvent.inlineData.data,mo)}}function m5A(i,e){if(i&1){let A=aA();I(0,"div")(1,"div",25)(2,"mat-icon",26),D(3,"description"),h(),I(4,"a",27),U("click",function(){L(A);let n=p(5);return G(n.openBase64InNewTab.emit({data:n.uiEvent.inlineData.data,mimeType:n.uiEvent.inlineData.mimeType}))}),D(5),h()()()}if(i&2){let A=p(5);Q(5),Ee(" ",A.uiEvent.inlineData.name," ")}}function w5A(i,e){if(i&1&&(I(0,"div",24)(1,"pre",28),D(2),h()()),i&2){let A=p(5);Q(2),nA(A.getTextContent(A.uiEvent.inlineData.data))}}function y5A(i,e){if(i&1&&T(0,m5A,6,1,"div")(1,w5A,3,1,"div",24),i&2){let A=p(4);O(A.uiEvent.inlineData.mimeType==="text/html"?0:1)}}function D5A(i,e){if(i&1){let A=aA();I(0,"div")(1,"button",29),U("click",function(){L(A);let n=p(4);return G(n.openBase64InNewTab.emit({data:n.uiEvent.inlineData.data,mimeType:n.uiEvent.inlineData.mimeType}))}),D(2),h()()}if(i&2){let A=p(4);Q(2),Ee(" ",A.uiEvent.inlineData.name," ")}}function v5A(i,e){if(i&1&&(I(0,"div")(1,"div"),T(2,u5A,2,1,"div",19)(3,p5A,2,1,"div")(4,f5A,2,1,"div",20)(5,y5A,2,1)(6,D5A,3,1,"div"),h()()),i&2){let A,t=p(3);Q(2),O((A=t.uiEvent.inlineData.mediaType)===t.MediaType.IMAGE?2:A===t.MediaType.AUDIO?3:A===t.MediaType.VIDEO?4:A===t.MediaType.TEXT?5:6)}}function b5A(i,e){if(i&1){let A=aA();I(0,"div")(1,"img",30),U("click",function(){L(A);let n=p(4);return G(n.openViewImageDialog.emit(n.uiEvent.inlineData.data))}),h()()}if(i&2){let A=p(4);Q(),H("src",A.uiEvent.inlineData.data,mo)}}function M5A(i,e){if(i&1&&(I(0,"div",20),lA(1,"video",23),h()),i&2){let A=p(4);Q(),H("src",A.uiEvent.inlineData.data,mo)}}function S5A(i,e){if(i&1&&(I(0,"div",7)(1,"mat-icon"),D(2,"insert_drive_file"),h(),I(3,"a",9),D(4),h()()),i&2){let A=p(4);Q(3),H("href",A.uiEvent.inlineData.data,mo),Q(),nA(A.uiEvent.inlineData.displayName)}}function k5A(i,e){if(i&1&&(I(0,"div"),T(1,b5A,2,1,"div")(2,M5A,2,1,"div",20)(3,S5A,5,2,"div",7),h()),i&2){let A=p(3);Q(),O(A.uiEvent.inlineData.mimeType.startsWith("image/")?1:A.uiEvent.inlineData.mimeType.startsWith("video/")?2:3)}}function _5A(i,e){if(i&1&&T(0,v5A,7,1,"div")(1,k5A,4,1,"div"),i&2){let A=p(2);O(A.uiEvent.role==="bot"?0:1)}}function x5A(i,e){if(i&1&&(I(0,"div",31),lA(1,"app-audio-player",22),h()),i&2){let A=p(4);Q(),H("base64data",A.audioUrl||"")}}function R5A(i,e){if(i&1&&T(0,x5A,2,1,"div",31),i&2){let A=e.$implicit;O(A.fileData&&A.fileData.mimeType.startsWith("audio/")?0:-1)}}function N5A(i,e){if(i&1&&ke(0,R5A,1,1,null,null,ni),i&2){let A=p(2);_e(A.uiEvent.event==null||A.uiEvent.event.content==null?null:A.uiEvent.event.content.parts)}}function F5A(i,e){if(i&1&&(I(0,"div",34)(1,"div",35),D(2),h(),lA(3,"app-custom-json-viewer",36),h(),I(4,"div",37)(5,"div",38),D(6),h(),lA(7,"app-custom-json-viewer",36),h()),i&2){let A=p(3);Q(2),nA(A.i18n.actualToolUsesLabel),Q(),H("json",A.uiEvent.actualInvocationToolUses),Q(3),nA(A.i18n.expectedToolUsesLabel),Q(),H("json",A.uiEvent.expectedInvocationToolUses)}}function L5A(i,e){if(i&1&&(I(0,"div",34)(1,"div",35),D(2),h(),I(3,"div"),D(4),h()(),I(5,"div",37)(6,"div",38),D(7),h(),I(8,"div"),D(9),h()()),i&2){let A=p(3);Q(2),nA(A.i18n.actualResponseLabel),Q(2),nA(A.uiEvent.actualFinalResponse),Q(3),nA(A.i18n.expectedResponseLabel),Q(2),nA(A.uiEvent.expectedFinalResponse)}}function G5A(i,e){if(i&1&&(I(0,"div",33)(1,"span",39),D(2),h(),I(3,"span",40),D(4),h()()),i&2){let A=p(3);Q(2),Ya("",A.i18n.matchScoreLabel,": ",A.uiEvent.evalScore),Q(2),Ya("",A.i18n.thresholdLabel,": ",A.uiEvent.evalThreshold)}}function K5A(i,e){if(i&1&&(I(0,"div",6)(1,"div",32),T(2,F5A,8,4)(3,L5A,10,4),h(),T(4,G5A,5,4,"div",33),h()),i&2){let A=p(2);Q(2),O(A.uiEvent.actualInvocationToolUses?2:A.uiEvent.actualFinalResponse?3:-1),Q(2),O(A.uiEvent.evalScore!==void 0&&A.uiEvent.evalThreshold!==void 0?4:-1)}}function U5A(i,e){if(i&1&&(T(0,e5A,3,0,"div",4),T(1,a5A,3,2,"div",5)(2,h5A,5,3,"div"),T(3,E5A,2,1,"code"),T(4,Q5A,5,4,"div"),T(5,_5A,2,1),T(6,N5A,2,0),T(7,K5A,5,2,"div",6)),i&2){let A=p();O(A.uiEvent.attachments?0:-1),Q(),O(A.uiEvent.event.nodeInfo!=null&&A.uiEvent.event.nodeInfo.messageAsOutput?1:A.uiEvent.thought||A.uiEvent.text||A.uiEvent.renderedContent||A.uiEvent.a2uiData||A.uiEvent.event.inputTranscription||A.uiEvent.event.outputTranscription?2:-1),Q(2),O(A.uiEvent.executableCode?3:-1),Q(),O(A.uiEvent.codeExecutionResult?4:-1),Q(),O(A.uiEvent.inlineData?5:-1),Q(),O(!(A.uiEvent.event==null||A.uiEvent.event.content==null)&&A.uiEvent.event.content.parts?6:-1),Q(),O(A.uiEvent.failedMetric&&A.uiEvent.evalStatus===2?7:-1)}}function T5A(i,e){if(i&1&&lA(0,"app-custom-json-viewer",2),i&2){let A=p();H("json",A.uiEvent.event.output)("appJsonTooltip",(A.uiEvent.event.nodeInfo==null?null:A.uiEvent.event.nodeInfo.outputFor)||A.uiEvent.nodePath)}}function O5A(i,e){if(i&1&&lA(0,"app-custom-json-viewer",3),i&2){let A=p();H("json",A.uiEvent.error)("appJsonTooltip",A.uiEvent.error)}}function J5A(i,e){if(i&1&&D(0),i&2){let A=p(2);Ee(" ",A.uiEvent.event.inputTranscription.text," ")}}function Y5A(i,e){if(i&1&&D(0),i&2){let A=p(2);Ee(" ",A.uiEvent.event.outputTranscription.text," ")}}function H5A(i,e){if(i&1&&T(0,J5A,1,1)(1,Y5A,1,1),i&2){let A=p();O(A.role==="user"&&A.uiEvent.event.inputTranscription?0:A.role==="bot"&&A.uiEvent.event.outputTranscription?1:-1)}}var cy=class i{uiEvent;type="message";role="bot";evalStatus;userEditEvalCaseMessage="";userEditEvalCaseMessageChange=new FA;handleKeydown=new FA;cancelEditMessage=new FA;saveEditMessage=new FA;openViewImageDialog=new FA;openBase64InNewTab=new FA;i18n=w(C1);sanitizer=w(Qs);markdownComponent=w(g1);MediaType=iC;renderGooglerSearch(e){return this.sanitizer.bypassSecurityTrustHtml(e)}get rawMessageText(){let e=this.uiEvent.event?.content?.parts;return e?e.filter(A=>A.text).map(A=>A.text).join(""):""}get jsonOutputData(){if(this.uiEvent.event?.nodeInfo?.messageAsOutput===!0){let e=this.rawMessageText;if(e)try{return JSON.parse(e)}catch(A){return null}}return null}get hasAudio(){if(this.uiEvent.inlineData?.mediaType==="audio")return!0;let e=this.uiEvent.event?.content?.parts;return e?e.some(A=>A.fileData&&A.fileData.mimeType&&A.fileData.mimeType.startsWith("audio/")):!1}get noBubble(){if(this.uiEvent.text||this.rawMessageText)return!1;if(this.uiEvent.inlineData){let A=this.uiEvent.inlineData.mediaType;if(A==="audio"||A==="image"||A==="video"||A==="text")return!0}if(this.uiEvent.inlineData?.mimeType){let A=this.uiEvent.inlineData.mimeType;if(A.startsWith("audio/")||A.startsWith("image/")||A.startsWith("video/"))return!0}let e=this.uiEvent.event?.content?.parts;return e?e.some(A=>A.fileData&&A.fileData.mimeType&&(A.fileData.mimeType.startsWith("audio/")||A.fileData.mimeType.startsWith("image/")||A.fileData.mimeType.startsWith("video/"))):!1}getTextContent(e){if(!e)return"";let A=e.indexOf(",");if(A===-1)return"";let t=e.substring(A+1);try{return atob(t)}catch(n){return"Failed to decode text content"}}audioUrl=null;ngOnChanges(e){e.uiEvent&&this.uiEvent&&this.checkAndLoadAudio()}http=w(Mr);artifactService=w(EB);changeDetectorRef=w(Mt);checkAndLoadAudio(){let e=this.uiEvent.event?.content?.parts;if(e){let A=e.find(t=>t.fileData&&t.fileData.mimeType&&t.fileData.mimeType.startsWith("audio/pcm"));A&&A.fileData&&this.loadAudio(A.fileData.fileUri)}}loadAudio(e){if(!e||!e.startsWith("artifact://"))return;let A=e.substring(11).split("/"),t=A[0],n=A[1],o=A[2],a=A.slice(3).join("/"),r=a.indexOf("#"),s=r!==-1?a.substring(0,r):a,l=r!==-1?a.substring(r+1):"0",g=s.lastIndexOf("/"),C=g!==-1?s.substring(g+1):s;this.artifactService.getLatestArtifact(n,t,o,C).subscribe(d=>{let B="";if(d.inlineData&&d.inlineData.data?B=d.inlineData.data:d.data&&(B=d.data),B){let u=this.base64ToArrayBuffer(B),E=u.byteLength-u.byteLength%2,f=u.slice(0,E),v=this.pcmToWav(f,24e3,1),S=new FileReader;S.onloadend=()=>{this.audioUrl=S.result,this.changeDetectorRef.detectChanges()},S.readAsDataURL(v)}})}base64ToArrayBuffer(e){let A=e.replace(/\s/g,""),t=A.indexOf(",");for(t!==-1&&(A=A.substring(t+1)),A=A.replace(/-/g,"+").replace(/_/g,"/");A.length%4!==0;)A+="=";let n=window.atob(A),o=n.length,a=new Uint8Array(o);for(let r=0;rA.toString(16).padStart(2,"0")).join(" ")}pcmToWav(e,A,t){let n=new ArrayBuffer(44),o=new DataView(n);return this.writeString(o,0,"RIFF"),o.setUint32(4,36+e.byteLength,!0),this.writeString(o,8,"WAVE"),this.writeString(o,12,"fmt "),o.setUint32(16,16,!0),o.setUint16(20,1,!0),o.setUint16(22,t,!0),o.setUint32(24,A,!0),o.setUint32(28,A*t*2,!0),o.setUint16(32,t*2,!0),o.setUint16(34,16,!0),this.writeString(o,36,"data"),o.setUint32(40,e.byteLength,!0),new Blob([n,e],{type:"audio/wav"})}writeString(e,A,t){for(let n=0;n0?6:7)}}function q5A(i,e){if(i&1&&(I(0,"span"),D(1),h()),i&2){let A=e.$implicit;Ao("token-"+A.type),Q(),nA(A.value)}}function W5A(i,e){if(i&1&&ke(0,q5A,2,3,"span",24,Ja),i&2){let A=p().$implicit;_e(A.right.tokens)}}function Z5A(i,e){if(i&1&&D(0),i&2){let A=p().$implicit;nA(A.right.value)}}function X5A(i,e){if(i&1&&(I(0,"div",20)(1,"span",21),D(2),h(),I(3,"span",22),D(4),h(),I(5,"span",23),T(6,W5A,2,0)(7,Z5A,1,1),h()()),i&2){let A=e.$implicit;_A("line-added",A.right.type==="added")("line-empty",A.right.type==="empty")("line-unchanged",A.right.type==="unchanged"),Q(2),nA(A.right.lineNumber||""),Q(2),nA(A.right.type==="added"?"+":""),Q(2),O(A.right.tokens&&A.right.tokens.length>0?6:7)}}var dy=class i{dialogRef=w(zn);data=w(Do);diffRows=[];ngOnInit(){let e=this.data.precedingInstruction||"",A=this.data.currentInstruction||"",t=this.diffLines(e,A);this.diffRows=this.alignDiff(t)}diffLines(e,A){let t=e.split(` -`),n=A.split(` -`),o=t.length,a=n.length,r=Array.from({length:o+1},()=>Array(a+1).fill(0));for(let C=1;C<=o;C++)for(let d=1;d<=a;d++)t[C-1]===n[d-1]?r[C][d]=r[C-1][d-1]+1:r[C][d]=Math.max(r[C-1][d],r[C][d-1]);let s=[],l=o,g=a;for(;l>0||g>0;)l>0&&g>0&&t[l-1]===n[g-1]?(s.unshift({type:"unchanged",value:t[l-1],leftLineNumber:l,rightLineNumber:g}),l--,g--):g>0&&(l===0||r[l][g-1]>=r[l-1][g])?(s.unshift({type:"added",value:n[g-1],rightLineNumber:g}),g--):(s.unshift({type:"removed",value:t[l-1],leftLineNumber:l}),l--);return s}alignDiff(e){let A=[],t=0;for(;tArray(a+1).fill(0));for(let d=1;d<=o;d++)for(let B=1;B<=a;B++)t[d-1]===n[B-1]?r[d][B]=r[d-1][B-1]+1:r[d][B]=Math.max(r[d-1][B],r[d][B-1]);let s=o,l=a,g=[],C=[];for(;s>0||l>0;)if(s>0&&l>0&&t[s-1]===n[l-1]){let d=t[s-1];g.unshift({type:"unchanged",value:d}),C.unshift({type:"unchanged",value:d}),s--,l--}else l>0&&(s===0||r[s][l-1]>=r[s-1][l])?(C.unshift({type:"added",value:n[l-1]}),l--):(g.unshift({type:"removed",value:t[s-1]}),s--);return{left:this.mergeTokens(g),right:this.mergeTokens(C)}}mergeTokens(e){if(e.length===0)return[];let A=[e[0]];for(let t=1;t({"eval-pass":i,"eval-fail":e}),ER=i=>({hidden:i}),QR=(i,e)=>e.id;function AyA(i,e){if(i&1){let A=aA();I(0,"app-content-bubble",11),U("userEditEvalCaseMessageChange",function(n){L(A);let o=p();return G(o.userEditEvalCaseMessageChange.emit(n))})("handleKeydown",function(n){L(A);let o=p();return G(o.handleKeydown.emit(n))})("cancelEditMessage",function(n){L(A);let o=p();return G(o.cancelEditMessage.emit(n))})("saveEditMessage",function(n){L(A);let o=p();return G(o.saveEditMessage.emit(n))})("openViewImageDialog",function(n){L(A);let o=p();return G(o.onImageClick(n))})("openBase64InNewTab",function(n){L(A);let o=p();return G(o.openBase64InNewTab.emit(n))}),h()}if(i&2){let A=p();H("type",A.uiEvent.thought?"thought":"message")("role",A.uiEvent.role)("evalStatus",A.uiEvent.evalStatus)("uiEvent",A.uiEvent)("userEditEvalCaseMessage",A.userEditEvalCaseMessage)}}function eyA(i,e){if(i&1&&lA(0,"app-content-bubble",2),i&2){let A=p();H("uiEvent",A.uiEvent)}}function tyA(i,e){if(i&1&&lA(0,"app-content-bubble",3),i&2){let A=p();H("role","user")("uiEvent",A.uiEvent)}}function iyA(i,e){if(i&1&&lA(0,"app-content-bubble",3),i&2){let A=p();H("role","bot")("uiEvent",A.uiEvent)}}function nyA(i,e){if(i&1){let A=aA();I(0,"app-hover-info-button",12),U("buttonClick",function(n){L(A);let o=p();return G(o.openSystemInstructionDiffDialog(n))}),h()}i&2&&H("icon","warning")("text","Performance")("tooltipContent","System instructions modified between turns, causing a context cache miss and increasing latency. Click to compare changes and view the diff.")("tooltipTitle","Performance Warning")}function oyA(i,e){i&1&&lA(0,"app-hover-info-button",6),i&2&&H("icon","stop_circle")("text","Turn Complete")("tooltipContent","The agent has completed this turn")("tooltipTitle","Turn Complete")}function ayA(i,e){i&1&&lA(0,"app-hover-info-button",6),i&2&&H("icon","report")("text","Interrupted")("tooltipContent","The stream was interrupted")("tooltipTitle","Interrupted")}function ryA(i,e){if(i&1&&lA(0,"app-hover-info-button",6),i&2){let A=e.$implicit,t=p(2);H("icon","bolt")("text",t.getFunctionCallButtonText(A))("tooltipContent",A.args||"")("tooltipTitle","Function Call")}}function syA(i,e){if(i&1){let A=aA();I(0,"app-computer-action",16),U("clickEvent",function(n){L(A);let o=p(3);return G(o.clickEvent.emit(n))})("openImage",function(n){L(A);let o=p(3);return G(o.openViewImageDialog.emit(n))}),h()}if(i&2){let A=p().$implicit,t=p(2);H("functionCall",A)("allMessages",t.uiEvents)("index",t.index)}}function lyA(i,e){if(i&1&&T(0,syA,1,3,"app-computer-action",15),i&2){let A=e.$implicit,t=p(2);O(t.isComputerUseClick(A)?0:-1)}}function gyA(i,e){if(i&1&&(I(0,"div",13),ke(1,ryA,1,4,"app-hover-info-button",6,QR),h(),I(3,"div",14),ke(4,lyA,1,1,null,null,QR),h()),i&2){let A=p();Q(),_e(A.uiEvent.functionCalls),Q(3),_e(A.uiEvent.functionCalls)}}function cyA(i,e){if(i&1){let A=aA();I(0,"app-computer-action",19),U("clickEvent",function(n){L(A);let o=p(3);return G(o.clickEvent.emit(n))}),h()}if(i&2){let A=p().$implicit,t=p(2);H("functionResponse",A)("allMessages",t.uiEvents)("index",t.index)}}function CyA(i,e){if(i&1){let A=aA();I(0,"div",18),lA(1,"app-hover-info-button",6),I(2,"button",20),U("click",function(n){return n.stopPropagation()}),I(3,"mat-icon",21),D(4,"more_vert"),h()(),I(5,"mat-menu",null,0)(7,"button",22),U("click",function(){L(A);let n=p().$implicit,o=p(2);return G(o.openSendAnotherResponseDialog(n))}),I(8,"span"),D(9,"Send another response"),h()()()()}if(i&2){let A=Bi(6),t=p().$implicit;Q(),H("icon","check")("text",t.name)("tooltipContent",t.response||"")("tooltipTitle","Function Response"),Q(),H("matMenuTriggerFor",A)}}function dyA(i,e){if(i&1&&T(0,cyA,1,3,"app-computer-action",17)(1,CyA,10,5,"div",18),i&2){let A=e.$implicit,t=p(2);O(t.isComputerUseResponse(A)?0:1)}}function IyA(i,e){if(i&1&&ke(0,dyA,2,1,null,null,ni),i&2){let A=p();_e(A.uiEvent.functionResponses)}}function ByA(i,e){if(i&1&&lA(0,"app-hover-info-button",6),i&2){let A=p(),t=Ki(10);H("icon","data_object")("text","State: "+t.join(", "))("tooltipContent",A.getFilteredStateDelta(A.uiEvent.stateDelta))("tooltipTitle","State Update")}}function hyA(i,e){if(i&1&&lA(0,"app-hover-info-button",6),i&2){p();let A=Ki(0),t=p();H("icon","attachment")("text","Artifact: "+A.join(", "))("tooltipContent",t.uiEvent.artifactDelta)("tooltipTitle","Artifact")}}function EyA(i,e){if(i&1&&(ro(0),T(1,hyA,1,4,"app-hover-info-button",6)),i&2){let A=p(),t=so(A.Object.keys(A.uiEvent.artifactDelta));Q(),O(t.length>0?1:-1)}}function QyA(i,e){if(i&1&&lA(0,"app-content-bubble",7),i&2){let A=p();H("uiEvent",A.uiEvent)}}function uyA(i,e){if(i&1&&lA(0,"app-hover-info-button",6),i&2){let A=p();H("icon","route")("text","route: "+A.String(A.uiEvent.route))("tooltipContent",A.uiEvent.route)("tooltipTitle","Route")}}function pyA(i,e){if(i&1&&lA(0,"app-hover-info-button",6),i&2){let A=p();H("icon","swap_horiz")("text",A.uiEvent.author+" \u2192 "+A.getTransferTargetName())("tooltipContent",A.uiEvent.transferToAgent)("tooltipTitle","Transfer to Agent")}}function fyA(i,e){if(i&1){let A=aA();I(0,"button",23),U("click",function(n){L(A);let o=p();return G(o.agentStateClick.emit({event:n,index:o.index}))}),I(1,"mat-icon"),D(2,"account_tree"),h(),D(3," Agent State "),h()}if(i&2){let A=p();H("appWorkflowGraphTooltip",A.getWorkflowNodes())("agentGraphData",A.agentGraphData)("nodePath",A.uiEvent.nodePath)("allNodes",A.allWorkflowNodes)}}function myA(i,e){if(i&1&&lA(0,"app-hover-info-button",9),i&2){let A=p();H("icon","check_circle")("text",A.getEndOfAgentAuthor()+" completed!")}}function wyA(i,e){if(i&1){let A=aA();I(0,"app-long-running-response",25),U("responseComplete",function(n){L(A);let o=p(3);return G(o.longRunningResponseComplete.emit(n))}),h()}if(i&2){let A=p().$implicit,t=p(2);H("functionCall",A)("appName",t.appName)("userId",t.userId)("sessionId",t.sessionId)}}function yyA(i,e){if(i&1&&T(0,wyA,1,4,"app-long-running-response",24),i&2){let A=e.$implicit,t=p(2);O(A.needsResponse&&!t.hasFunctionResponse(A.id)?0:-1)}}function DyA(i,e){if(i&1&&ke(0,yyA,1,1,null,null,QR),i&2){let A=p();_e(A.uiEvent.functionCalls)}}function vyA(i,e){if(i&1&&(I(0,"div",10)(1,"span",26),D(2),h()()),i&2){let A=p();H("ngClass",L0(2,$5A,A.uiEvent.evalStatus===1,A.uiEvent.evalStatus===2)),Q(2),nA(A.uiEvent.evalStatus===1?A.i18n.evalPassLabel:A.uiEvent.evalStatus===2?A.i18n.evalFailLabel:"")}}function byA(i,e){if(i&1){let A=aA();I(0,"div")(1,"span",27),U("click",function(){L(A);let n=p(2);return G(n.editEvalCaseMessage.emit(n.uiEvent))}),D(2," edit "),h(),I(3,"span",27),U("click",function(){L(A);let n=p(2);return G(n.deleteEvalCaseMessage.emit({message:n.uiEvent,index:n.index}))}),D(4," delete "),h()()}if(i&2){let A=p(2);Q(),H("ngClass",jl(4,ER,A.isEvalCaseEditing))("matTooltip",A.i18n.editEvalMessageTooltip),Q(2),H("ngClass",jl(6,ER,A.isEvalCaseEditing))("matTooltip",A.i18n.deleteEvalMessageTooltip)}}function MyA(i,e){if(i&1){let A=aA();I(0,"div")(1,"span",27),U("click",function(){L(A);let n=p(2);return G(n.editFunctionArgs.emit(n.uiEvent))}),D(2," edit "),h()()}if(i&2){let A=p(2);Q(),H("ngClass",jl(2,ER,A.isEvalCaseEditing))("matTooltip",A.i18n.editFunctionArgsTooltip)}}function SyA(i,e){if(i&1&&T(0,byA,5,8,"div")(1,MyA,3,4,"div"),i&2){let A=p();O(A.uiEvent.text?0:A.isEditFunctionArgsEnabled&&A.uiEvent.functionCalls&&A.uiEvent.functionCalls.length>0?1:-1)}}var bE=class i{uiEvent;index;uiEvents=[];appName="";userId="";sessionId="";sessionName="";evalCase=null;isEvalEditMode=!1;isEvalCaseEditing=!1;isEditFunctionArgsEnabled=!1;userEditEvalCaseMessage="";agentGraphData=null;allWorkflowNodes=null;handleKeydown=new FA;cancelEditMessage=new FA;saveEditMessage=new FA;userEditEvalCaseMessageChange=new FA;openViewImageDialog=new FA;openBase64InNewTab=new FA;editEvalCaseMessage=new FA;deleteEvalCaseMessage=new FA;editFunctionArgs=new FA;clickEvent=new FA;longRunningResponseComplete=new FA;agentStateClick=new FA;i18n=w(C1);dialog=w(Xa);Object=Object;String=String;getFunctionCallButtonText(e){let A=e.args;if(A&&typeof A=="string")try{A=JSON.parse(A)}catch(t){}if(A&&typeof A=="object"){let t={EditFile:"path",WriteFile:"path"};if(e.name in t){let o=t[e.name];if(o in A){let a=this.formatPythonValue(A[o]),r=Object.keys(A).length>1;return`${e.name}(${a}${r?", \u2026":""})`}}let n=Object.keys(A);if(n.length===1){let o=A[n[0]],a=this.formatPythonValue(o);return`${e.name}(${a})`}else if(n.length===0)return`${e.name}()`}else if(!A)return`${e.name}()`;return e.name}formatPythonValue(e){return e==null?"None":typeof e=="boolean"?e?"True":"False":typeof e=="string"?`"${e}"`:typeof e=="object"?JSON.stringify(e).replace(/\btrue\b/g,"True").replace(/\bfalse\b/g,"False").replace(/\bnull\b/g,"None"):String(e)}shouldShowMessageCard(e){return!!(e.text||e.attachments||e.inlineData||e.executableCode||e.codeExecutionResult||e.a2uiData||e.renderedContent||e.isLoading||e.failedMetric&&e.evalStatus===2||e.event?.content?.parts?.some(A=>A.fileData))}isComputerUseClick(e){return vE(e)}isComputerUseResponse(e){return k0(e)}getFilteredStateKeys(e){return e?Object.keys(e).filter(A=>A!=="__llm_request_key__"):[]}getFilteredStateDelta(e){if(!e)return null;let A=P({},e);return delete A.__llm_request_key__,A}hasWorkflowNodes(){let e=this.uiEvent.event?.actions?.agentState?.nodes;return!!e&&Object.keys(e).length>0}getWorkflowNodes(){return this.uiEvent.event?.actions?.agentState?.nodes||null}hasEndOfAgent(){return this.uiEvent.event?.actions?.endOfAgent===!0}getEndOfAgentAuthor(){return this.uiEvent.event?.author||"Agent"}getTransferTargetName(){let e=this.uiEvent.transferToAgent;return e?typeof e=="string"?e:e.agentName||e.name||e.targetAgent||JSON.stringify(e):""}hasFunctionResponse(e){return e?this.uiEvents.some(A=>A.functionResponses?.some(t=>t.id===e&&t.response?.status!=="pending")):!1}openSendAnotherResponseDialog(e){let A="",t=e.id;if(t){for(let o of this.uiEvents)if(o.functionCalls){let a=o.functionCalls.find(r=>r.id===t);if(a){A=a.functionCallEventId||o.event?.id||"";break}}}this.dialog.open(CI,{data:{dialogHeader:"Send Another Response",functionName:e.name,jsonContent:e.response},width:"600px"}).afterClosed().subscribe(o=>{if(o){let a={role:"user",parts:[{functionResponse:{id:t,name:e.name,response:o}}],functionCallEventId:A};this.longRunningResponseComplete.emit(a)}})}getAllImages(){let e=[],A=new Set,t=n=>{A.has(n)||(A.add(n),e.push(n))};for(let n of this.uiEvents){if(n.attachments)for(let a of n.attachments)a.file.type.startsWith("image/")&&a.url&&t(a.url);n.inlineData?.mimeType?.startsWith("image/")&&n.inlineData.data&&t(n.inlineData.data);let o=n.event?.content?.parts;if(Array.isArray(o)){for(let a of o)if(a.inlineData?.mimeType?.startsWith("image/")&&a.inlineData.data){let r=a.inlineData.mimeType,s=a.inlineData.data.replace(/-/g,"+").replace(/_/g,"/");t(`data:${r};base64,${s}`)}}if(n.functionResponses){for(let a of n.functionResponses)if(this.isComputerUseResponse(a)){let s=a.response?.image;if(s?.data){let l=s.data,g=s.mimetype||"image/png",C=l.startsWith("data:")?l:`data:${g};base64,${l}`;t(C)}}}}return e}onImageClick(e){let A=this.getAllImages(),t=A.indexOf(e);this.openViewImageDialog.emit({images:A,currentIndex:t})}openSystemInstructionDiffDialog(e){e.stopPropagation();let A=this.uiEvent.event.precedingSystemInstruction||"",t=this.uiEvent.event.currentSystemInstruction||"";this.dialog.open(dy,{data:{precedingInstruction:A,currentInstruction:t},maxWidth:"95vw",maxHeight:"95vh",width:"85vw",height:"90vh",panelClass:"system-instruction-diff-dialog-panel"})}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-event-content"]],inputs:{uiEvent:"uiEvent",index:"index",uiEvents:"uiEvents",appName:"appName",userId:"userId",sessionId:"sessionId",sessionName:"sessionName",evalCase:"evalCase",isEvalEditMode:"isEvalEditMode",isEvalCaseEditing:"isEvalCaseEditing",isEditFunctionArgsEnabled:"isEditFunctionArgsEnabled",userEditEvalCaseMessage:"userEditEvalCaseMessage",agentGraphData:"agentGraphData",allWorkflowNodes:"allWorkflowNodes"},outputs:{handleKeydown:"handleKeydown",cancelEditMessage:"cancelEditMessage",saveEditMessage:"saveEditMessage",userEditEvalCaseMessageChange:"userEditEvalCaseMessageChange",openViewImageDialog:"openViewImageDialog",openBase64InNewTab:"openBase64InNewTab",editEvalCaseMessage:"editEvalCaseMessage",deleteEvalCaseMessage:"deleteEvalCaseMessage",editFunctionArgs:"editFunctionArgs",clickEvent:"clickEvent",longRunningResponseComplete:"longRunningResponseComplete",agentStateClick:"agentStateClick"},decls:21,vars:20,consts:[["responseMenu","matMenu"],[3,"type","role","evalStatus","uiEvent","userEditEvalCaseMessage"],["type","output",3,"uiEvent"],["type","transcription",3,"role","uiEvent"],[1,"event-chips-container"],[1,"performance-warning-btn",3,"icon","text","tooltipContent","tooltipTitle"],[3,"icon","text","tooltipContent","tooltipTitle"],["type","error",3,"uiEvent"],["mat-stroked-button","",1,"event-action-button",3,"appWorkflowGraphTooltip","agentGraphData","nodePath","allNodes"],[3,"icon","text"],[3,"ngClass"],[3,"userEditEvalCaseMessageChange","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","type","role","evalStatus","uiEvent","userEditEvalCaseMessage"],[1,"performance-warning-btn",3,"buttonClick","icon","text","tooltipContent","tooltipTitle"],[1,"function-calls-buttons"],[1,"function-calls-previews"],[3,"functionCall","allMessages","index"],[3,"clickEvent","openImage","functionCall","allMessages","index"],[3,"functionResponse","allMessages","index"],[1,"function-response-chip-container"],[3,"clickEvent","functionResponse","allMessages","index"],["mat-icon-button","",1,"menu-trigger-btn",3,"click","matMenuTriggerFor"],[1,"more-icon"],["mat-menu-item","",3,"click"],["mat-stroked-button","",1,"event-action-button",3,"click","appWorkflowGraphTooltip","agentGraphData","nodePath","allNodes"],[3,"functionCall","appName","userId","sessionId"],[3,"responseComplete","functionCall","appName","userId","sessionId"],[2,"font-family","monospace"],[1,"material-symbols-outlined","eval-case-edit-button",3,"click","ngClass","matTooltip"]],template:function(A,t){if(A&1&&(T(0,AyA,1,5,"app-content-bubble",1),T(1,eyA,1,1,"app-content-bubble",2),T(2,tyA,1,2,"app-content-bubble",3),T(3,iyA,1,2,"app-content-bubble",3),I(4,"div",4),T(5,nyA,1,4,"app-hover-info-button",5),T(6,oyA,1,4,"app-hover-info-button",6),T(7,ayA,1,4,"app-hover-info-button",6),T(8,gyA,6,0),T(9,IyA,2,0),ro(10),T(11,ByA,1,4,"app-hover-info-button",6),T(12,EyA,2,2),T(13,QyA,1,1,"app-content-bubble",7),T(14,uyA,1,4,"app-hover-info-button",6),T(15,pyA,1,4,"app-hover-info-button",6),T(16,fyA,4,4,"button",8),T(17,myA,1,2,"app-hover-info-button",9),h(),T(18,DyA,2,0),T(19,vyA,3,5,"div",10),T(20,SyA,2,1)),A&2){O(t.shouldShowMessageCard(t.uiEvent)?0:-1),Q(),O(t.uiEvent.event.output?1:-1),Q(),O(t.uiEvent.event.inputTranscription?2:-1),Q(),O(t.uiEvent.event.outputTranscription?3:-1),Q(2),O(t.uiEvent.event.systemInstructionChanged?5:-1),Q(),O(t.uiEvent.event.turnComplete?6:-1),Q(),O(t.uiEvent.event.interrupted?7:-1),Q(),O(t.uiEvent.functionCalls&&t.uiEvent.functionCalls.length>0?8:-1),Q(),O(t.uiEvent.functionResponses&&t.uiEvent.functionResponses.length>0?9:-1),Q();let n=so(t.getFilteredStateKeys(t.uiEvent.stateDelta));Q(),O(n.length>0?11:-1),Q(),O(t.uiEvent.artifactDelta?12:-1),Q(),O(t.uiEvent.error?13:-1),Q(),O(t.uiEvent.route?14:-1),Q(),O(t.uiEvent.transferToAgent?15:-1),Q(),O(t.hasWorkflowNodes()?16:-1),Q(),O(t.hasEndOfAgent()?17:-1),Q(),O(t.uiEvent.functionCalls&&t.uiEvent.functionCalls.length>0?18:-1),Q(),O(t.uiEvent.evalStatus===1||t.uiEvent.evalStatus===2?19:-1),Q(),O(t.evalCase&&t.isEvalEditMode?20:-1)}},dependencies:[li,Vl,Un,zt,qi,ki,yi,Ha,rn,ay,ry,ly,sy,cy,s2,hs,Gs,tg],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;width:100%}app-content-bubble[_ngcontent-%COMP%] + app-content-bubble[_ngcontent-%COMP%]{margin-top:5px}.event-chips-container[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;width:100%}.user[_nghost-%COMP%] .event-chips-container[_ngcontent-%COMP%], .user [_nghost-%COMP%] .event-chips-container[_ngcontent-%COMP%]{justify-content:flex-end}.eval-case-edit-button[_ngcontent-%COMP%]{cursor:pointer;margin-left:4px;margin-right:4px}.eval-pass[_ngcontent-%COMP%]{display:flex;color:#2e7d32}.eval-fail[_ngcontent-%COMP%]{display:flex;color:var(--mat-sys-error)}.hidden[_ngcontent-%COMP%]{visibility:hidden}.event-action-button[_ngcontent-%COMP%]{margin:5px}.function-calls-previews[_ngcontent-%COMP%]{width:100%}.function-response-chip-container[_ngcontent-%COMP%]{display:inline-flex;align-items:center;position:relative}.function-response-chip-container[_ngcontent-%COMP%] .menu-trigger-btn[_ngcontent-%COMP%]{visibility:hidden;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0;position:absolute;right:10px;top:50%;transform:translateY(-50%);background-color:var(--mat-sys-surface-container-high);border-radius:50%;z-index:2}.function-response-chip-container[_ngcontent-%COMP%] .menu-trigger-btn[_ngcontent-%COMP%] .more-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.function-response-chip-container[_ngcontent-%COMP%]:hover .menu-trigger-btn[_ngcontent-%COMP%]{visibility:visible} .performance-warning-btn.hover-info-button, .performance-warning-btn .hover-info-button{background-color:#ffb3001a!important;border:1px solid rgba(255,179,0,.3)!important} .performance-warning-btn.hover-info-button mat-icon, .performance-warning-btn .hover-info-button mat-icon{color:#ffb300!important} .performance-warning-btn.hover-info-button:hover, .performance-warning-btn .hover-info-button:hover{background-color:#ffb30033!important;box-shadow:0 2px 6px #ffb30026}html.light-theme[_ngcontent-%COMP%] .performance-warning-btn.hover-info-button, html.light-theme[_ngcontent-%COMP%] .performance-warning-btn .hover-info-button{background-color:#e6510014!important;border:1px solid rgba(230,81,0,.3)!important}html.light-theme[_ngcontent-%COMP%] .performance-warning-btn.hover-info-button mat-icon, html.light-theme[_ngcontent-%COMP%] .performance-warning-btn .hover-info-button mat-icon{color:#e65100!important}html.light-theme[_ngcontent-%COMP%] .performance-warning-btn.hover-info-button:hover, html.light-theme[_ngcontent-%COMP%] .performance-warning-btn .hover-info-button:hover{background-color:#e6510026!important;box-shadow:0 2px 6px #e6510026}"]})};function kyA(i,e){if(i&1&&lA(0,"app-chat-avatar",1),i&2){let A=p();H("role",A.uiEvent.event.content?"bot":"node")("author",A.uiEvent.author)("nodePath",A.uiEvent.nodePath)}}function _yA(i,e){i&1&&lA(0,"div",4)}function xyA(i,e){if(i&1&&ke(0,_yA,1,0,"div",4,ni),i&2){let A=p();_e(A.indentationArray)}}function RyA(i,e){i&1&&lA(0,"app-chat-avatar")}function NyA(i,e){if(i&1&&lA(0,"app-message-feedback",3),i&2){let A=p();H("sessionName",A.sessionName)("eventId",A.uiEvent.event.id||"")}}var Iy=class i{uiEvent;index;uiEvents=[];isSelected=!1;isSelectable=!0;appName="";userId="";sessionId="";sessionName="";evalCase=null;isEvalEditMode=!1;isEvalCaseEditing=!1;isEditFunctionArgsEnabled=!1;userEditEvalCaseMessage="";agentGraphData=null;allWorkflowNodes=null;isUserFeedbackEnabled=!1;isLoadingAgentResponse=!1;rowClick=new FA;handleKeydown=new FA;cancelEditMessage=new FA;saveEditMessage=new FA;userEditEvalCaseMessageChange=new FA;openViewImageDialog=new FA;openBase64InNewTab=new FA;editEvalCaseMessage=new FA;deleteEvalCaseMessage=new FA;editFunctionArgs=new FA;clickEvent=new FA;longRunningResponseComplete=new FA;agentStateClick=new FA;onRowClick(e){this.isSelectable&&this.rowClick.emit({event:e,uiEvent:this.uiEvent,index:this.index})}get indentationDepth(){if(!this.uiEvent.nodePath)return 0;let A=this.uiEvent.nodePath.split("/").filter(Boolean).length;return A>2?A-2:0}get indentationArray(){let e=this.indentationDepth;return e>0?Array.from({length:e},(A,t)=>t):[]}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-event-row"]],hostAttrs:[1,"message-row-container"],hostVars:8,hostBindings:function(A,t){A&1&&U("click",function(o){return t.onRowClick(o)}),A&2&&_A("selected",t.isSelected)("user",t.uiEvent.role==="user")("bot",t.uiEvent.role==="bot")("selectable",t.isSelectable)},inputs:{uiEvent:"uiEvent",index:"index",uiEvents:"uiEvents",isSelected:"isSelected",isSelectable:"isSelectable",appName:"appName",userId:"userId",sessionId:"sessionId",sessionName:"sessionName",evalCase:"evalCase",isEvalEditMode:"isEvalEditMode",isEvalCaseEditing:"isEvalCaseEditing",isEditFunctionArgsEnabled:"isEditFunctionArgsEnabled",userEditEvalCaseMessage:"userEditEvalCaseMessage",agentGraphData:"agentGraphData",allWorkflowNodes:"allWorkflowNodes",isUserFeedbackEnabled:"isUserFeedbackEnabled",isLoadingAgentResponse:"isLoadingAgentResponse"},outputs:{rowClick:"rowClick",handleKeydown:"handleKeydown",cancelEditMessage:"cancelEditMessage",saveEditMessage:"saveEditMessage",userEditEvalCaseMessageChange:"userEditEvalCaseMessageChange",openViewImageDialog:"openViewImageDialog",openBase64InNewTab:"openBase64InNewTab",editEvalCaseMessage:"editEvalCaseMessage",deleteEvalCaseMessage:"deleteEvalCaseMessage",editFunctionArgs:"editFunctionArgs",clickEvent:"clickEvent",longRunningResponseComplete:"longRunningResponseComplete",agentStateClick:"agentStateClick"},decls:7,vars:21,consts:[[1,"event-number-container"],[3,"role","author","nodePath"],[1,"message-content",3,"userEditEvalCaseMessageChange","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","clickEvent","longRunningResponseComplete","agentStateClick","uiEvent","index","uiEvents","appName","userId","sessionId","sessionName","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userEditEvalCaseMessage","agentGraphData","allWorkflowNodes"],[3,"sessionName","eventId"],[1,"indentation-line"]],template:function(A,t){A&1&&(I(0,"div",0),D(1),h(),T(2,kyA,1,3,"app-chat-avatar",1),T(3,xyA,2,0),I(4,"app-event-content",2),U("userEditEvalCaseMessageChange",function(o){return t.userEditEvalCaseMessageChange.emit(o)})("handleKeydown",function(o){return t.handleKeydown.emit(o)})("cancelEditMessage",function(o){return t.cancelEditMessage.emit(o)})("saveEditMessage",function(o){return t.saveEditMessage.emit(o)})("openViewImageDialog",function(o){return t.openViewImageDialog.emit(o)})("openBase64InNewTab",function(o){return t.openBase64InNewTab.emit(o)})("editEvalCaseMessage",function(o){return t.editEvalCaseMessage.emit(o)})("deleteEvalCaseMessage",function(o){return t.deleteEvalCaseMessage.emit(o)})("editFunctionArgs",function(o){return t.editFunctionArgs.emit(o)})("clickEvent",function(o){return t.clickEvent.emit(o)})("longRunningResponseComplete",function(o){return t.longRunningResponseComplete.emit(o)})("agentStateClick",function(o){return t.agentStateClick.emit(o)}),h(),T(5,RyA,1,0,"app-chat-avatar"),T(6,NyA,1,2,"app-message-feedback",3)),A&2&&(_A("hidden",!t.isSelectable),Q(),Ee(" #",t.index+1," "),Q(),O(t.uiEvent.role==="bot"&&!t.uiEvent.isLoading?2:-1),Q(),O(t.uiEvent.role==="bot"?3:-1),Q(),H("uiEvent",t.uiEvent)("index",t.index)("uiEvents",t.uiEvents)("appName",t.appName)("userId",t.userId)("sessionId",t.sessionId)("sessionName",t.sessionName)("evalCase",t.evalCase)("isEvalEditMode",t.isEvalEditMode)("isEvalCaseEditing",t.isEvalCaseEditing)("isEditFunctionArgsEnabled",t.isEditFunctionArgsEnabled)("userEditEvalCaseMessage",t.userEditEvalCaseMessage)("agentGraphData",t.agentGraphData)("allWorkflowNodes",t.allWorkflowNodes),Q(),O(t.uiEvent.role==="user"?5:-1),Q(),O(t.isUserFeedbackEnabled&&!t.isLoadingAgentResponse&&t.uiEvent.role==="bot"?6:-1))},dependencies:[li,ny,ty,bE],styles:[".generated-image-container[_ngcontent-%COMP%]{max-width:400px;margin-left:20px}.generated-image[_ngcontent-%COMP%]{max-width:100%;min-width:40px;border-radius:8px}.html-artifact-container[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:flex-start;align-items:center}app-content-bubble[_ngcontent-%COMP%] + app-content-bubble[_ngcontent-%COMP%]{margin-top:5px}.event-chips-container[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;width:100%}[_nghost-%COMP%]{display:flex;flex-direction:row;flex-wrap:nowrap;margin-left:-20px;margin-right:-20px;padding:4px 20px;border-radius:4px;transition:all .2s ease}.selectable[_nghost-%COMP%]:hover{box-shadow:inset 0 0 0 2px var(--mat-sys-outline-variant, rgba(0, 0, 0, .12))}.selected[_nghost-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))!important}app-message-feedback[_ngcontent-%COMP%]{width:100%}.user[_nghost-%COMP%]{justify-content:flex-end;align-items:flex-start;gap:15px}.bot[_nghost-%COMP%]{align-items:flex-start;padding-right:48px}.bot[_nghost-%COMP%] app-chat-avatar[_ngcontent-%COMP%]{align-self:flex-start}.message-content[_ngcontent-%COMP%]{display:contents}.bot[_nghost-%COMP%] > .message-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-width:0;align-items:flex-start}.user[_nghost-%COMP%] > .message-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-width:0;align-items:flex-end}.bot[_nghost-%COMP%]:focus-within app-content-bubble[_ngcontent-%COMP%] .content-bubble{border:1px solid var(--mat-sys-outline)}.message-textarea[_ngcontent-%COMP%]{max-width:100%;border:none;background-color:transparent;font-family:Google Sans,Helvetica Neue,sans-serif}.message-textarea[_ngcontent-%COMP%]:focus{outline:none}.edit-message-buttons-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}app-content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%]{visibility:hidden;position:absolute;left:10px;overflow:hidden;border-radius:20px;padding:5px 20px;margin-bottom:10px;font-size:16px}app-content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .actual-result[_ngcontent-%COMP%]{border-right:2px solid var(--mat-sys-outline-variant);padding-right:8px;min-width:350px;max-width:350px}app-content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .expected-result[_ngcontent-%COMP%]{padding-left:12px;min-width:350px;max-width:350px}app-content-bubble[_ngcontent-%COMP%]:hover .eval-compare-container[_ngcontent-%COMP%]{visibility:visible}.actual-expected-compare-container[_ngcontent-%COMP%]{display:flex}.score-threshold-container[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:10px;align-items:center;margin-top:15px;font-size:14px;font-weight:600}.eval-response-header[_ngcontent-%COMP%]{padding-bottom:5px;border-bottom:2px solid var(--mat-sys-outline-variant);font-style:italic;font-weight:700}.header-expected[_ngcontent-%COMP%]{color:var(--mat-sys-tertiary)}.header-actual[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.eval-case-edit-button[_ngcontent-%COMP%]{cursor:pointer;margin-left:4px;margin-right:4px}.eval-pass[_ngcontent-%COMP%]{display:flex;color:#2e7d32}.eval-fail[_ngcontent-%COMP%]{display:flex;color:var(--mat-sys-error)}.hidden[_ngcontent-%COMP%]{visibility:hidden}.image-preview-chat[_ngcontent-%COMP%]{max-width:90%;max-height:70vh;width:auto;height:auto;border-radius:8px;cursor:pointer;transition:transform .2s ease-in-out}.attachment[_ngcontent-%COMP%]{display:flex;align-items:center}[_nghost-%COMP%] .message-text p{white-space:pre-line;word-break:break-word;overflow-wrap:break-word}.event-number-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-self:flex-start;min-width:30px;margin-top:10px;margin-right:8px;font-size:12px;font-weight:600;text-align:center;color:var(--mat-sys-on-surface-variant)}[_nghost-%COMP%] pre{white-space:pre-wrap;word-break:break-word;overflow-x:auto;max-width:100%}.link-style-button[_ngcontent-%COMP%]{border:none;padding:0;font:inherit;color:var(--mat-sys-primary)!important;text-decoration:underline;cursor:pointer;outline:none;font-size:14px}.cancel-edit-button[_ngcontent-%COMP%]{width:24px;height:24px;color:var(--mat-sys-outline-variant);cursor:pointer;margin-right:16px}.save-edit-button[_ngcontent-%COMP%]{width:24px;height:24px;color:var(--mat-sys-primary);cursor:pointer;margin-right:16px}.indentation-line[_ngcontent-%COMP%]{width:20px;border-left:1px solid var(--mat-sys-outline-variant);align-self:stretch;opacity:.5;margin-top:-4px;margin-bottom:-4px}@media(max-width:768px){[_nghost-%COMP%]{margin-left:-12px!important;margin-right:-12px!important;padding:4px 12px!important}.bot[_nghost-%COMP%]{padding-right:12px!important}.indentation-line[_ngcontent-%COMP%]{width:12px!important}.event-number-container[_ngcontent-%COMP%]{min-width:20px!important;margin-right:4px!important}}"]})};function FyA(i,e){if(i&1){let A=aA();I(0,"button",3),U("click",function(){L(A);let n=p();return G(n.toggleVideoRecording.emit())}),I(1,"mat-icon"),D(2,"videocam"),h()(),I(3,"div",4),lA(4,"div",5)(5,"div",5)(6,"div",5)(7,"div",5),h()}if(i&2){let A=p();_A("recording",A.isVideoRecording),H("matTooltip",A.isVideoRecording?A.i18n.turnOffCamTooltip:A.i18n.useCamTooltip)("disabled",A.disabled||!A.isBidiStreamingEnabled),Q(4),ft("height",4+A.micVolume*16,"px"),Q(),ft("height",4+A.micVolume*24,"px"),Q(),ft("height",4+A.micVolume*18,"px"),Q(),ft("height",4+A.micVolume*14,"px")}}function LyA(i,e){if(i&1){let A=aA();I(0,"div",2)(1,"div",6),D(2,"Live Flags"),h(),I(3,"div",7)(4,"mat-checkbox",8),U("change",function(n){L(A);let o=p();return G(o.flags.proactiveAudio=n.checked)}),D(5,"Proactive Audio"),h()(),I(6,"div",7)(7,"mat-checkbox",8),U("change",function(n){L(A);let o=p();return G(o.flags.enableAffectiveDialog=n.checked)}),D(8,"Affective Dialog"),h()(),I(9,"div",7)(10,"mat-checkbox",8),U("change",function(n){L(A);let o=p();return G(o.flags.enableSessionResumption=n.checked)}),D(11,"Session Resumption"),h()(),I(12,"div",7)(13,"mat-checkbox",8),U("change",function(n){L(A);let o=p();return G(o.flags.saveLiveBlob=n.checked)}),D(14,"Save Live Blob"),h()()()}if(i&2){let A=p();Q(4),H("checked",A.flags.proactiveAudio)("matTooltip",A.i18n.proactiveAudioTooltip)("disabled",A.disabled),Q(3),H("checked",A.flags.enableAffectiveDialog)("matTooltip",A.i18n.affectiveDialogTooltip)("disabled",A.disabled),Q(3),H("checked",A.flags.enableSessionResumption)("matTooltip",A.i18n.sessionResumptionTooltip)("disabled",A.disabled),Q(3),H("checked",A.flags.saveLiveBlob)("matTooltip",A.i18n.saveLiveBlobTooltip)("disabled",A.disabled)}}var By=class i{get inCall(){return this.isAudioRecording}isAudioRecording=!1;isVideoRecording=!1;micVolume=0;isBidiStreamingEnabled=!1;disabled=!1;toggleAudioRecording=new FA;toggleVideoRecording=new FA;i18n=w(C1);showFlags=!1;flags={proactiveAudio:!1,enableAffectiveDialog:!1,enableSessionResumption:!1,saveLiveBlob:!1};onCallClick(){this.showFlags=!1,this.toggleAudioRecording.emit(this.flags)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-call-controls"]],hostVars:2,hostBindings:function(A,t){A&2&&_A("in-call",t.inCall)},inputs:{isAudioRecording:"isAudioRecording",isVideoRecording:"isVideoRecording",micVolume:"micVolume",isBidiStreamingEnabled:"isBidiStreamingEnabled",disabled:"disabled"},outputs:{toggleAudioRecording:"toggleAudioRecording",toggleVideoRecording:"toggleVideoRecording"},decls:6,vars:6,consts:[[1,"call-btn-container",3,"mouseenter","mouseleave"],["mat-icon-button","",1,"audio-rec-btn",3,"click","disabled"],[1,"flags-panel"],["mat-icon-button","",1,"video-rec-btn",3,"click","matTooltip","disabled"],[1,"mic-visualizer"],[1,"bar"],[1,"flags-title"],[1,"flag-item"],["matTooltipPosition","left",3,"change","checked","matTooltip","disabled"]],template:function(A,t){A&1&&(T(0,FyA,8,12),I(1,"div",0),U("mouseenter",function(){return t.showFlags=!0})("mouseleave",function(){return t.showFlags=!1}),I(2,"button",1),U("click",function(){return t.onCallClick()}),I(3,"mat-icon"),D(4),h()(),T(5,LyA,15,12,"div",2),h()),A&2&&(O(t.isAudioRecording?0:-1),Q(2),_A("recording",t.isAudioRecording),H("disabled",t.disabled||!t.isBidiStreamingEnabled),Q(2),nA(t.isAudioRecording?"call_end":"call"),Q(),O(t.showFlags&&!t.isAudioRecording&&!t.disabled?5:-1))},dependencies:[li,qi,yi,Un,zt,Ha,rn,uO,ic],styles:['[_nghost-%COMP%]{display:flex;align-items:center;gap:4px;border-radius:28px;transition:all .2s ease}.in-call[_nghost-%COMP%]{background-color:var(--mat-sys-surface-variant)}button[_ngcontent-%COMP%]:not(:disabled){color:var(--mat-sys-on-surface-variant)!important}button[_ngcontent-%COMP%]:not(:disabled).recording{background-color:var(--mat-sys-error)!important;color:var(--mat-sys-on-error, #ffffff)!important}button.audio-rec-btn[_ngcontent-%COMP%]:not(.recording):not(:disabled){color:#34a853!important}button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface-variant)!important;opacity:.38!important;cursor:not-allowed}.mic-visualizer[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:3px;height:24px;margin-right:8px;width:24px}.mic-visualizer[_ngcontent-%COMP%] .bar[_ngcontent-%COMP%]{width:4px;background-color:#34a853;border-radius:2px;transition:height .1s ease-out}.call-btn-container[_ngcontent-%COMP%]{position:relative;display:inline-block}.flags-panel[_ngcontent-%COMP%]{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:12px;padding:12px;box-shadow:0 4px 20px #00000026;z-index:100;width:250px;display:flex;flex-direction:column;gap:8px;animation:_ngcontent-%COMP%_fadeIn .2s ease-out}.flags-panel[_ngcontent-%COMP%]:before{content:"";position:absolute;bottom:-8px;left:0;right:0;height:8px;background:transparent}.flags-panel[_ngcontent-%COMP%] .flags-title[_ngcontent-%COMP%]{font-weight:600;font-size:14px;color:var(--mat-sys-on-surface);margin-bottom:4px}.flags-panel[_ngcontent-%COMP%] .flag-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--mat-sys-on-surface-variant)}.flags-panel[_ngcontent-%COMP%] .flag-item[_ngcontent-%COMP%] .flag-label[_ngcontent-%COMP%]{font-weight:500}.flags-panel[_ngcontent-%COMP%] .flag-item[_ngcontent-%COMP%] mat-checkbox[_ngcontent-%COMP%]{--mdc-checkbox-state-layer-size: 30px}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}']})};var GyA=i=>({$implicit:i});function KyA(i,e){i&1&&lA(0,"div",9)}function UyA(i,e){if(i&1&&(I(0,"span",15),D(1),h()),i&2){let A=p(2).$implicit,t=p();ft("right",100-t.getRelativeStart(A.span),"%"),Q(),nA(t.formatDuration(A.span.end_time-A.span.start_time))}}function TyA(i,e){if(i&1){let A=aA();I(0,"div",6),U("click",function(){L(A);let n=p().$implicit,o=p();return G(o.selectRow(n))}),I(1,"div",7)(2,"div",8),ke(3,KyA,1,0,"div",9,Ja),h(),I(5,"span",10),D(6),h(),I(7,"div",11),D(8),h()(),I(9,"div",12)(10,"div",13),D(11),h(),T(12,UyA,2,3,"span",14),h()()}if(i&2){let A=p().$implicit,t=p(),n=Bi(12);_A("selected",t.rowSelected(A)),H("id",ZE("trace-node-",A.span.span_id))("appHtmlTooltip",n)("appHtmlTooltipContext",jl(19,GyA,t.getUiEvent(A)))("appHtmlTooltipDisabled",!t.getUiEvent(A)),Q(3),_e(t.getArray(A.level)),Q(2),_A("is-event-row",t.isEventRow(A)),Q(),Ee(" ",t.getSpanIcon(A.span.name)," "),Q(),_A("is-event-row",t.isEventRow(A)),Q(),Ee(" ",t.formatSpanName(A.span.name)," "),Q(2),ft("left",t.getRelativeStart(A.span),"%")("width",t.getRelativeWidth(A.span),"%"),Q(),Ee(" ",t.formatDuration(A.span.end_time-A.span.start_time)," "),Q(),O(t.getRelativeWidth(A.span)<10?12:-1)}}function OyA(i,e){if(i&1&&T(0,TyA,13,21,"div",5),i&2){let A=e.$implicit,t=p();O(t.shouldShowNode(A)?0:-1)}}function JyA(i,e){if(i&1&&(I(0,"div",16),lA(1,"app-event-content",17),h()),i&2){let A=p().$implicit;Q(),H("uiEvent",A)("index",0)}}function YyA(i,e){if(i&1&&T(0,JyA,2,2,"div",16),i&2){let A=e.$implicit;O(A?0:-1)}}var hy=class i{spans=[];invocationId="";uiEvents=[];shouldShowEvent;tree=[];baseStartTimeMs=0;totalDurationMs=1;rootLatencyNanos=0;flatTree=[];shouldShowNode(e){let A=this.getUiEvent(e);return A&&this.shouldShowEvent?this.shouldShowEvent(A):!0}traceLabelIconMap=new Map([["Invocation","start"],["agent_run","robot"],["invoke_agent","robot_2"],["tool","build"],["execute_tool","build"],["call_llm","chat"]]);selectedRow=void 0;traceService=w(ng);constructor(){}selectRootSpan(){if(this.tree&&this.tree.length>0){if(this.selectedRow&&this.selectedRow.span_id===this.tree[0].span_id)return;this.traceService.selectedRow(this.tree[0])}}isRootSpanSelected(){return!this.selectedRow||!this.tree||this.tree.length===0?!1:String(this.selectedRow.span_id)===String(this.tree[0].span_id)}ngOnInit(){this.rebuildTree(),this.traceService.selectedTraceRow$.subscribe(e=>{this.selectedRow=e,e&&setTimeout(()=>{let A=document.getElementById("trace-node-"+e.span_id);A&&A.scrollIntoView({behavior:"smooth",block:"nearest"})},50)})}ngOnChanges(e){e.spans&&!e.spans.isFirstChange()&&this.rebuildTree()}rebuildTree(){if(!this.spans||this.spans.length===0){this.tree=[],this.flatTree=[],this.rootLatencyNanos=0;return}this.tree=this.buildSpanTree(this.spans),this.flatTree=[],this.tree.forEach(A=>{A.children&&this.flatTree.push(...this.flattenTree(A.children,0))});let e=this.getGlobalTimes(this.spans);this.baseStartTimeMs=e.start,this.totalDurationMs=e.duration,this.tree&&this.tree.length>0?this.rootLatencyNanos=this.tree[0].end_time-this.tree[0].start_time:this.rootLatencyNanos=0}buildSpanTree(e){let A=e.map(o=>P({},o)),t=new Map,n=[];return A.forEach(o=>t.set(String(o.span_id),o)),A.forEach(o=>{if(o.parent_span_id&&t.has(String(o.parent_span_id))){let a=t.get(String(o.parent_span_id));a.children=a.children||[],a.children.push(o)}else n.push(o)}),n}getGlobalTimes(e){let A=Math.min(...e.map(n=>this.toMs(n.start_time))),t=Math.max(...e.map(n=>this.toMs(n.end_time)));return{start:A,duration:t-A}}toMs(e){return e/1e6}formatDuration(e){if(e===0)return"0us";if(e<1e3)return`${e}ns`;if(e<1e6)return`${(e/1e3).toFixed(2)}us`;if(e<1e9)return`${(e/1e6).toFixed(2)}ms`;if(e<6e10)return`${(e/1e9).toFixed(2)}s`;let A=Math.floor(e/6e10),t=(e%6e10/1e9).toFixed(2);return`${A}m ${t}s`}getRelativeStart(e){return(this.toMs(e.start_time)-this.baseStartTimeMs)/this.totalDurationMs*100}getRelativeWidth(e){return(this.toMs(e.end_time)-this.toMs(e.start_time))/this.totalDurationMs*100}flattenTree(e,A=0){return e.flatMap(n=>[{span:n,level:A},...n.children?this.flattenTree(n.children,A+1):[]])}getSpanIcon(e){for(let[A,t]of this.traceLabelIconMap.entries())if(e.startsWith(A))return t;return"start"}formatSpanName(e){return e.startsWith("invoke_agent ")||e.startsWith("execute_tool ")?e.substring(13):e.startsWith("invoke_node ")?e.substring(12):e}getArray(e){return Array.from({length:e})}selectRow(e){this.selectedRow&&this.selectedRow.span_id==e.span.span_id||this.traceService.selectedRow(e.span)}rowSelected(e){return!this.selectedRow||!e?.span?!1:String(this.selectedRow.span_id)===String(e.span.span_id)}isEventRow(e){let A=this.getEventId(e);return A&&this.uiEvents&&this.uiEvents.length>0?this.uiEvents.some(t=>t.event?.id===A):!1}getEventId(e){return e?.span?.attrEventId??""}getUiEvent(e){let A=this.getEventId(e);return A&&this.uiEvents&&this.uiEvents.length>0&&this.uiEvents.find(t=>t.event?.id===A)||null}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-trace-tree"]],inputs:{spans:"spans",invocationId:"invocationId",uiEvents:"uiEvents",shouldShowEvent:"shouldShowEvent"},features:[ii],decls:13,vars:6,consts:[["eventTooltip",""],[1,"invocation-id-container",3,"click"],[1,"invocation-id",3,"matTooltip"],[1,"total-latency"],[1,"trace-container"],[1,"trace-row",3,"selected","id","appHtmlTooltip","appHtmlTooltipContext","appHtmlTooltipDisabled"],[1,"trace-row",3,"click","id","appHtmlTooltip","appHtmlTooltipContext","appHtmlTooltipDisabled"],[1,"trace-row-left"],[1,"trace-indent"],[1,"indent-connector"],[1,"material-symbols-outlined",2,"margin-right","8px"],[1,"trace-label"],[1,"trace-bar-container"],[1,"trace-bar"],[1,"short-trace-bar-duration",3,"right"],[1,"short-trace-bar-duration"],[1,"event-tooltip-container"],[3,"uiEvent","index"]],template:function(A,t){A&1&&(I(0,"div")(1,"div",1),U("click",function(){return t.selectRootSpan()}),I(2,"span"),D(3,"Invocation ID: "),h(),I(4,"div",2),D(5),h(),I(6,"span",3),D(7),h()(),I(8,"div",4),ke(9,OyA,1,1,null,null,ni),h()(),kt(11,YyA,1,1,"ng-template",null,0,PC)),A&2&&(Q(),_A("selected",t.isRootSpanSelected()),ie("id",t.tree&&t.tree.length>0?"trace-node-"+t.tree[0].span_id:null),Q(3),H("matTooltip",t.invocationId),Q(),nA(t.invocationId),Q(2),Ee("Total latency: ",t.formatDuration(t.rootLatencyNanos)),Q(2),_e(t.flatTree))},dependencies:[qi,Un,Ha,rn,ey,bE],styles:[".trace-container[_ngcontent-%COMP%]{white-space:nowrap;font-size:12px;overflow-x:auto;padding:8px}.trace-label[_ngcontent-%COMP%]{color:var(--trace-label-color, #e3e3e3);font-family:Google Sans Mono,monospace;font-style:normal;font-weight:500;line-height:20px;letter-spacing:0px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px}.trace-bar-container[_ngcontent-%COMP%]{position:relative;height:18px}.trace-bar[_ngcontent-%COMP%]{position:absolute;height:18px;background-color:var(--mat-sys-primary);border-radius:4px;padding-left:6px;box-sizing:border-box;overflow:hidden;font-size:11px;line-height:18px;color:var(--mat-sys-on-primary);font-family:Google Sans;transition:background-color .2s,color .2s}.trace-duration[_ngcontent-%COMP%]{color:var(--trace-duration-color, #888);font-weight:400;margin-left:4px}.trace-row[_ngcontent-%COMP%]{display:flex;position:relative;height:32px}.trace-indent[_ngcontent-%COMP%]{display:flex;flex-shrink:0;height:100%}.indent-connector[_ngcontent-%COMP%]{width:20px;position:relative;height:100%}.vertical-line[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:9px;width:1px;background-color:#ccc}.horizontal-line[_ngcontent-%COMP%]{position:absolute;top:50%;left:9px;width:10px;height:1px;background-color:#ccc}.trace-label[_ngcontent-%COMP%]{flex:1;min-width:0;font-size:13px}.trace-bar-container[_ngcontent-%COMP%]{flex:1;min-width:0}.short-trace-bar-duration[_ngcontent-%COMP%]{position:absolute;color:var(--trace-tree-short-trace-bar-duration-color);padding-right:6px}.trace-row[_ngcontent-%COMP%]{align-items:center;cursor:pointer;scroll-margin-top:40px}.trace-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant, rgba(0, 0, 0, .04))}.trace-row.selected[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))}.trace-row-left[_ngcontent-%COMP%]{display:flex;min-width:250px;width:20%;max-width:350px}.invocation-id-container[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:11px;font-weight:600;letter-spacing:.3px;margin-bottom:6px;padding:8px 12px;border-radius:12px 12px 0 0;background-color:var(--mat-sys-surface);display:flex;width:100%;box-sizing:border-box;align-items:center;position:sticky;top:-20px;z-index:10;box-shadow:0 2px 4px #0000000d;cursor:pointer}.invocation-id-container[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant)}.invocation-id-container.selected[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))}.invocation-id-container[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]:first-child{opacity:.8;margin-right:6px;text-transform:uppercase}.invocation-id[_ngcontent-%COMP%]{font-family:Google Sans Mono,Roboto Mono,monospace;padding:2px 6px;border-radius:4px;color:var(--mat-sys-on-surface)}.total-latency[_ngcontent-%COMP%]{margin-left:auto;background:transparent;color:var(--mat-sys-on-surface);padding:2px 8px;font-size:11px;font-weight:600;letter-spacing:.2px}.trace-row-left[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .trace-row-left[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{color:var(--trace-tree-trace-row-left-span-div-color)}.trace-row-left[_ngcontent-%COMP%] .is-event-row[_ngcontent-%COMP%]{color:var(--trace-tree-trace-row-left-is-event-row-color)}.event-tooltip-container[_ngcontent-%COMP%]{max-width:800px;max-height:200px;overflow:auto;padding:8px;background:var(--mat-sys-surface-container-low, #202124);color:var(--mat-sys-on-surface, #e8eaed);border-radius:8px;box-shadow:0 4px 16px #00000080;border:1px solid var(--mat-sys-outline-variant, rgba(255, 255, 255, .1))}.event-tooltip-container[_ngcontent-%COMP%] app-content-bubble{max-height:160px;overflow-y:auto;display:block}"]})};var HyA=["videoContainer"],zyA=["autoScroll"],PyA=["messageTextarea"],jyA=i=>({text:i,thought:!1,isReadme:!0}),VyA=()=>[],qyA=(i,e)=>e.metricName,WyA=(i,e)=>e.branchId,ZyA=(i,e)=>e.event;function XyA(i,e){i&1&&(I(0,"span",14),D(1,"PASS"),h())}function $yA(i,e){i&1&&(I(0,"span",15),D(1,"FAIL"),h())}function ADA(i,e){if(i&1&&(I(0,"span",21),D(1),h()),i&2){let A=e.$implicit;ft("color",A.evalStatus==1?"var(--app-color-success)":"var(--app-color-error)"),Q(),Ya(" ",A.metricName,": ",A.score," ")}}function eDA(i,e){if(i&1&&(I(0,"div")(1,"span",17),D(2,"Metrics"),h(),I(3,"div",19),ke(4,ADA,2,4,"span",20,qyA),h()()),i&2){p();let A=Ki(0);Q(4),_e(A.overallEvalMetricResults)}}function tDA(i,e){if(i&1&&(ro(0),I(1,"div",8)(2,"div",11)(3,"h3",12),D(4,"Evaluation Result"),h(),I(5,"div",13),T(6,XyA,2,0,"span",14)(7,$yA,2,0,"span",15),h()(),I(8,"div",16)(9,"div")(10,"span",17),D(11,"Case ID"),h(),I(12,"div",18),D(13),h()(),I(14,"div")(15,"span",17),D(16,"Set ID"),h(),I(17,"div",18),D(18),h()(),T(19,eDA,6,0,"div"),h()()),i&2){let A=so(p(2).evalCaseResult());Q(6),O(A.finalEvalStatus==1?6:7),Q(7),nA(A.evalId),Q(5),nA(A.setId),Q(),O(A.overallEvalMetricResults!=null&&A.overallEvalMetricResults.length?19:-1)}}function iDA(i,e){if(i&1&&(I(0,"div",9),dn(1,22),h()),i&2){let A=p(2);Q(),H("ngComponentOutlet",A.markdownComponent)("ngComponentOutletInputs",jl(2,jyA,A.agentReadme))}}function nDA(i,e){if(i&1&&(I(0,"div",26),lA(1,"app-trace-tree",27),h()),i&2){p();let A=Ki(0),t=p(3);ft("display",t.viewMode==="traces"?"":"none"),Q(),H("spans",t.spansByInvocationId.get(A.event.id)||t.spansByInvocationId.get(A.event.invocationId)||Lc(6,VyA))("invocationId",A.event.invocationId||A.event.id||"")("uiEvents",t.uiEvents)("shouldShowEvent",t.shouldShowEvent)}}function oDA(i,e){if(i&1){let A=aA();ro(0),I(1,"app-event-row",24),U("rowClick",function(n){L(A);let o=p(3);return G(o.handleRowClick(n.event,n.uiEvent,n.index))})("handleKeydown",function(n){L(A);let o=p(3);return G(o.handleKeydown.emit(n))})("cancelEditMessage",function(n){L(A);let o=p(3);return G(o.cancelEditMessage.emit(n))})("saveEditMessage",function(n){L(A);let o=p(3);return G(o.saveEditMessage.emit(n))})("userEditEvalCaseMessageChange",function(n){L(A);let o=p(3);return G(o.userEditEvalCaseMessageChange.emit(n))})("openViewImageDialog",function(n){L(A);let o=p(3);return G(o.openViewImageDialog.emit(n))})("openBase64InNewTab",function(n){L(A);let o=p(3);return G(o.openBase64InNewTab.emit(n))})("editEvalCaseMessage",function(n){L(A);let o=p(3);return G(o.editEvalCaseMessage.emit(n))})("deleteEvalCaseMessage",function(n){L(A);let o=p(3);return G(o.deleteEvalCaseMessage.emit(n))})("editFunctionArgs",function(n){L(A);let o=p(3);return G(o.editFunctionArgs.emit(n))})("clickEvent",function(n){L(A);let o=p(3);return G(o.clickEvent.emit(n))})("longRunningResponseComplete",function(n){L(A);let o=p(3);return G(o.longRunningResponseComplete.emit(n))})("agentStateClick",function(n){L(A);let o=p(3);return G(o.handleAgentStateClick(n.event,n.index))}),h(),T(2,nDA,2,7,"div",25)}if(i&2){let A=p().$implicit,t=p(2),n=so(A.event),o=t.shouldShowEvent?t.shouldShowEvent(n):!0;Q(),ft("display",t.viewMode==="events"&&o||t.viewMode==="traces"&&n.role==="user"&&o?"":"none"),H("isSelectable",t.viewMode!=="traces")("uiEvent",n)("index",A.index)("uiEvents",t.uiEvents)("isSelected",t.isMessageEventSelected(A.index))("appName",t.appName)("userId",t.userId)("sessionId",t.sessionId)("sessionName",t.sessionName())("evalCase",t.evalCase)("isEvalEditMode",t.isEvalEditMode)("isEvalCaseEditing",t.isEvalCaseEditing)("isEditFunctionArgsEnabled",t.isEditFunctionArgsEnabled)("userEditEvalCaseMessage",t.userEditEvalCaseMessage)("agentGraphData",t.agentGraphData)("allWorkflowNodes",t.getAllWorkflowNodes(A.index))("isUserFeedbackEnabled",t.isUserFeedbackEnabled()??!1)("isLoadingAgentResponse",t.isLoadingAgentResponse()??!1),Q(),O(n.role==="bot"&&t.isFirstEventForInvocation(n,A.index)?2:-1)}}function aDA(i,e){if(i&1&&(I(0,"span",32),D(1),h()),i&2){let A=p().$implicit;H("matTooltip","Branch "+A.branchId),Q(),nA(A.branchId)}}function rDA(i,e){if(i&1){let A=aA();I(0,"app-event-row",24),U("rowClick",function(n){L(A);let o=p(5);return G(o.handleRowClick(n.event,n.uiEvent,n.index))})("handleKeydown",function(n){L(A);let o=p(5);return G(o.handleKeydown.emit(n))})("cancelEditMessage",function(n){L(A);let o=p(5);return G(o.cancelEditMessage.emit(n))})("saveEditMessage",function(n){L(A);let o=p(5);return G(o.saveEditMessage.emit(n))})("userEditEvalCaseMessageChange",function(n){L(A);let o=p(5);return G(o.userEditEvalCaseMessageChange.emit(n))})("openViewImageDialog",function(n){L(A);let o=p(5);return G(o.openViewImageDialog.emit(n))})("openBase64InNewTab",function(n){L(A);let o=p(5);return G(o.openBase64InNewTab.emit(n))})("editEvalCaseMessage",function(n){L(A);let o=p(5);return G(o.editEvalCaseMessage.emit(n))})("deleteEvalCaseMessage",function(n){L(A);let o=p(5);return G(o.deleteEvalCaseMessage.emit(n))})("editFunctionArgs",function(n){L(A);let o=p(5);return G(o.editFunctionArgs.emit(n))})("clickEvent",function(n){L(A);let o=p(5);return G(o.clickEvent.emit(n))})("longRunningResponseComplete",function(n){L(A);let o=p(5);return G(o.longRunningResponseComplete.emit(n))})("agentStateClick",function(n){L(A);let o=p(5);return G(o.handleAgentStateClick(n.event,n.index))}),h()}if(i&2){let A=e.$implicit,t=p(5),n=A.event,o=t.shouldShowEvent?t.shouldShowEvent(n):!0;ft("display",t.viewMode==="events"&&o||t.viewMode==="traces"&&n.role==="user"&&o?"":"none"),H("isSelectable",t.viewMode!=="traces")("uiEvent",n)("index",A.globalIndex)("uiEvents",t.uiEvents)("isSelected",t.isMessageEventSelected(A.globalIndex))("appName",t.appName)("userId",t.userId)("sessionId",t.sessionId)("sessionName",t.sessionName())("evalCase",t.evalCase)("isEvalEditMode",t.isEvalEditMode)("isEvalCaseEditing",t.isEvalCaseEditing)("isEditFunctionArgsEnabled",t.isEditFunctionArgsEnabled)("userEditEvalCaseMessage",t.userEditEvalCaseMessage)("agentGraphData",t.agentGraphData)("allWorkflowNodes",t.getAllWorkflowNodes(A.globalIndex))("isUserFeedbackEnabled",t.isUserFeedbackEnabled()??!1)("isLoadingAgentResponse",t.isLoadingAgentResponse()??!1)}}function sDA(i,e){if(i&1&&(I(0,"mat-tab"),kt(1,aDA,2,2,"ng-template",29),I(2,"div",30),ke(3,rDA,1,20,"app-event-row",31,ZyA),h()()),i&2){let A=e.$implicit;Q(3),_e(A.events)}}function lDA(i,e){if(i&1&&(I(0,"div",23)(1,"mat-tab-group",28),ke(2,sDA,5,0,"mat-tab",null,WyA),h()()),i&2){let A=p().$implicit;Q(2),_e(A.branches)}}function gDA(i,e){if(i&1&&T(0,oDA,3,22)(1,lDA,4,0,"div",23),i&2){let A=e.$implicit;O(A.type==="event"?0:A.type==="branches"?1:-1)}}function cDA(i,e){i&1&&(I(0,"div",10),lA(1,"mat-progress-bar",33),h())}function CDA(i,e){if(i&1){let A=aA();I(0,"div",7,0),U("scroll",function(n){L(A);let o=p();return G(o.onScroll.next(n))})("wheel",function(){L(A);let n=p();return G(n.onManualScroll())})("touchmove",function(){L(A);let n=p();return G(n.onManualScroll())})("mousedown",function(){L(A);let n=p();return G(n.onManualScroll())})("keydown",function(){L(A);let n=p();return G(n.onManualScroll())}),T(2,tDA,20,5,"div",8),T(3,iDA,2,4,"div",9),ke(4,gDA,2,1,null,null,ni),T(6,cDA,2,0,"div",10),h()}if(i&2){let A=p();Q(2),O(A.showEvalSummary()&&A.evalCaseResult()?2:-1),Q(),O(A.uiEvents.length===0&&A.agentReadme?3:-1),Q(),_e(A.displayItems),Q(2),O(A.isLoadingAgentResponse()?6:-1)}}function dDA(i,e){if(i&1){let A=aA();I(0,"div",51),lA(1,"img",52),I(2,"button",53),U("click",function(){L(A);let n=p().$index,o=p(4);return G(o.removeFile.emit(n))}),I(3,"mat-icon",54),D(4,"close"),h()()()}if(i&2){let A=p().$implicit;Q(),H("src",A.url,mo)}}function IDA(i,e){if(i&1){let A=aA();I(0,"div",50)(1,"button",53),U("click",function(){L(A);let n=p().$index,o=p(4);return G(o.removeFile.emit(n))}),I(2,"mat-icon",54),D(3,"close"),h()(),I(4,"div",55)(5,"mat-icon"),D(6,"insert_drive_file"),h(),I(7,"span"),D(8),h()()()}if(i&2){let A=p().$implicit;Q(8),nA(A.file.name)}}function BDA(i,e){if(i&1&&(I(0,"div"),T(1,dDA,5,1,"div",51)(2,IDA,9,1,"div",50),h()),i&2){let A=e.$implicit;Q(),O(A.file.type.startsWith("image/")?1:A.file.type.startsWith("image/")?-1:2)}}function hDA(i,e){if(i&1){let A=aA();I(0,"div",50)(1,"button",53),U("click",function(){L(A);let n=p(4);return G(n.removeStateUpdate.emit())}),I(2,"mat-icon",54),D(3,"close"),h()(),I(4,"div",55)(5,"span"),D(6),h()()()}if(i&2){let A=p(4);Q(6),nA(A.i18n.updatedSessionStateChipLabel)}}function EDA(i,e){if(i&1&&(I(0,"div",39),ke(1,BDA,3,1,"div",null,ni),T(3,hDA,7,1,"div",50),h()),i&2){let A=p(3);Q(),_e(A.selectedFiles),Q(2),O(A.updatedSessionState?3:-1)}}function QDA(i,e){if(i&1){let A=aA();I(0,"button",42),mt(1,"async"),U("click",function(){L(A);let n=p(3);return G(n.updateState.emit())}),I(2,"mat-icon"),D(3,"tune"),h(),I(4,"span"),D(5),h()()}if(i&2){let A=p(3);H("disabled",(A.isLoadingAgentResponse()??!1)||!Ft(1,2,A.isManualStateUpdateEnabledObs)),Q(5),nA(A.i18n.updateStateMenuLabel)}}function uDA(i,e){if(i&1){let A=aA();I(0,"button",56),U("click",function(n){L(A);let o=p(3);return G(o.stopMessage.emit(n))}),I(1,"mat-icon"),D(2,"stop"),h()()}if(i&2){let A=p(3);H("matTooltip",A.i18n.stopMessageTooltip)}}function pDA(i,e){if(i&1){let A=aA();I(0,"button",57),U("click",function(n){L(A);let o=p(3);return G(o.sendMessage.emit(n))}),I(1,"mat-icon"),D(2,"send"),h()()}if(i&2){let A=p(3);H("matTooltip",A.i18n.sendMessageTooltip)}}function fDA(i,e){if(i&1){let A=aA();I(0,"div",35)(1,"input",36,1),U("change",function(n){L(A);let o=p(2);return G(o.fileSelect.emit(n))}),h(),I(3,"div",37)(4,"mat-form-field",38),T(5,EDA,4,1,"div",39),I(6,"button",40)(7,"mat-icon"),D(8,"add"),h()(),I(9,"mat-menu",41,2)(11,"button",42),mt(12,"async"),U("click",function(){L(A);let n=Bi(2);return G(n.click())}),I(13,"mat-icon"),D(14,"attach_file"),h(),I(15,"span"),D(16),h()(),T(17,QDA,6,4,"button",43),h(),I(18,"textarea",44,3),U("ngModelChange",function(n){L(A);let o=p(2);return G(o.userInputChange.emit(n))})("keydown.enter",function(n){L(A);let o=p(2);return G(!o.isLoadingAgentResponse()&&o.sendMessage.emit(n))}),h(),I(20,"div",45)(21,"app-call-controls",46),mt(22,"async"),U("toggleAudioRecording",function(n){L(A);let o=p(2);return G(o.toggleAudioRecording.emit(n))})("toggleVideoRecording",function(){L(A);let n=p(2);return G(n.toggleVideoRecording.emit())}),h(),T(23,uDA,3,1,"button",47)(24,pDA,3,1,"button",48),h()(),lA(25,"div",49,4),h()()}if(i&2){let A=Bi(10),t=p(2);_A("video-streaming",t.isVideoRecording),Q(5),O(t.selectedFiles.length&&t.appName!=""||t.updatedSessionState?5:-1),Q(),H("matMenuTriggerFor",A)("disabled",t.isLoadingAgentResponse()??!1)("matTooltip","Actions"),Q(5),H("disabled",(t.isLoadingAgentResponse()??!1)||!Ft(12,20,t.isMessageFileUploadEnabledObs)),Q(5),nA(t.i18n.uploadFileTooltip),Q(),O(t.hideMoreOptionsButton()?-1:17),Q(),H("ngModel",t.userInput)("placeholder",t.i18n.typeMessagePlaceholder)("disabled",t.isLoadingAgentResponse()??!1),Q(3),H("isAudioRecording",t.isAudioRecording)("isVideoRecording",t.isVideoRecording)("micVolume",t.micVolume)("isBidiStreamingEnabled",Ft(22,22,t.isBidiStreamingEnabledObs)??!1)("disabled",t.isLoadingAgentResponse()??!1),Q(2),O(t.isLoadingAgentResponse()?23:24),Q(2),_A("visible",t.isVideoRecording)}}function mDA(i,e){if(i&1&&T(0,fDA,27,24,"div",34),i&2){let A=p();O(A.canEditSession()?0:-1)}}function wDA(i,e){i&1&&(I(0,"div",6),lA(1,"mat-progress-spinner",58),h())}var h1=class i{appName="";agentReadme="";sessionName=ve("");uiEvents=[];showBranches=!1;traceData=[];isChatMode=!0;evalCase=null;isEvalEditMode=!1;isEvalCaseEditing=!1;agentGraphData=null;isEditFunctionArgsEnabled=!1;isTokenStreamingEnabled=!1;useSse=!1;userInput="";userEditEvalCaseMessage="";selectedFiles=[];updatedSessionState=null;selectedMessageIndex=void 0;isAudioRecording=!1;micVolume=0;isVideoRecording=!1;userId="";sessionId="";viewMode="events";shouldShowEvent;spansByInvocationId=new Map;displayItems=[];eventsScrollTop=-1;tracesScrollTop=-1;userInputChange=new FA;userEditEvalCaseMessageChange=new FA;clickEvent=new FA;handleKeydown=new FA;cancelEditMessage=new FA;saveEditMessage=new FA;openViewImageDialog=new FA;openBase64InNewTab=new FA;editEvalCaseMessage=new FA;deleteEvalCaseMessage=new FA;editFunctionArgs=new FA;fileSelect=new FA;removeFile=new FA;removeStateUpdate=new FA;sendMessage=new FA;stopMessage=new FA;updateState=new FA;toggleAudioRecording=new FA;toggleVideoRecording=new FA;longRunningResponseComplete=new FA;toggleHideIntermediateEvents=new FA;toggleSse=new FA;manualScroll=new FA;videoContainer;scrollContainer;textarea;scrollInterrupted=!1;scrollHeight=0;lastMessageRef=null;nextPageToken="";scrollTimeout=null;mutationObserver=null;i18n=w(C1);uiStateService=w(ag);themeService=w(og);stringToColorService=w(g2);markdownComponent=w(g1);featureFlagService=w(Nr);agentService=w(el);sessionService=w(tl);destroyRef=w(Er);MediaType=iC;JSON=JSON;Object=Object;String=String;isMessageFileUploadEnabledObs=this.featureFlagService.isMessageFileUploadEnabled();isManualStateUpdateEnabledObs=this.featureFlagService.isManualStateUpdateEnabled();isBidiStreamingEnabledObs=this.featureFlagService.isBidiStreamingEnabled();canEditSession=mA(!0);isUserFeedbackEnabled=sr(this.featureFlagService.isFeedbackServiceEnabled());isLoadingAgentResponse=sr(this.agentService.getLoadingState());hideMoreOptionsButton=sr(this.featureFlagService.isMoreOptionsButtonHidden());onScroll=new ne;sanitizer=w(Qs);onManualScroll(){this.scrollInterrupted=!0,this.manualScroll.emit()}hideIntermediateEvents=ve(!1);invocationDisplayMap=ve(new Map);evalCaseResult=ve(null);showEvalSummary=ve(!1);constructor(){Fn(()=>{let e=this.sessionName();e&&(this.nextPageToken="",this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(oo(),Bt(A=>A)).subscribe(()=>{this.uiStateService.lazyLoadMessages(e,{pageSize:100,pageToken:this.nextPageToken}).pipe(oo()).subscribe()}))}),Fn(()=>{this.isLoadingAgentResponse()||this.focusInput()})}ngOnInit(){this.uiStateService.isSessionLoading().pipe(xr(this.destroyRef)).subscribe(e=>{e||this.focusInput()}),this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(oo(),Bt(e=>e),Mi(()=>Vi(this.uiStateService.onNewMessagesLoaded().pipe(mi(e=>{this.nextPageToken=e.nextPageToken??"",e.isBackground||this.restoreScrollPosition()})),this.onScroll.pipe(Mi(e=>{let A=e.target;return A.scrollTop!==0?Br:this.nextPageToken?(this.scrollHeight=A.scrollHeight,this.uiStateService.lazyLoadMessages(this.sessionName(),{pageSize:100,pageToken:this.nextPageToken}).pipe(oo(),aa(()=>EN))):Br})))),xr(this.destroyRef)).subscribe()}ngAfterViewInit(){if(this.scrollContainer?.nativeElement){let e=this.scrollContainer.nativeElement;e.addEventListener("scroll",()=>{let A=Math.abs(e.scrollHeight-e.scrollTop-e.clientHeight)<50;this.scrollInterrupted=!A}),this.mutationObserver=new MutationObserver(()=>{this.scrollInterrupted||this.scrollToBottom()}),this.mutationObserver.observe(e,{childList:!0,subtree:!0,characterData:!0}),this.destroyRef.onDestroy(()=>{this.mutationObserver?.disconnect()})}}ngOnChanges(e){if(e.viewMode){let A=e.viewMode.previousValue,t=e.viewMode.currentValue;this.scrollContainer?.nativeElement&&(A==="events"?this.eventsScrollTop=this.scrollContainer.nativeElement.scrollTop:A==="traces"&&(this.tracesScrollTop=this.scrollContainer.nativeElement.scrollTop)),setTimeout(()=>{this.scrollContainer?.nativeElement&&(t==="events"&&this.eventsScrollTop!==-1?this.scrollContainer.nativeElement.scrollTop=this.eventsScrollTop:t==="traces"&&this.tracesScrollTop!==-1?this.scrollContainer.nativeElement.scrollTop=this.tracesScrollTop:this.scrollToBottom())})}if(e.appName&&this.focusInput(),(e.appName||e.uiEvents)&&this.uiEvents.length===0&&this.agentReadme&&setTimeout(()=>this.scrollToTop(),0),e.uiEvents){let A=this.uiEvents[this.uiEvents.length-1];A!==this.lastMessageRef&&((A?.role==="user"||A?.isLoading===!0)&&(this.scrollInterrupted=!1),this.scrollToBottom()),this.lastMessageRef=A}e.traceData&&this.traceData&&this.rebuildTrace(),(e.uiEvents||e.showBranches||e.viewMode)&&this.computeDisplayItems()}computeDisplayItems(){if(!this.showBranches||this.viewMode==="traces"){this.displayItems=this.uiEvents.map((t,n)=>({type:"event",event:t,index:n}));return}let e=[],A=null;this.uiEvents.forEach((t,n)=>{let o=t.event?.branch;if(o){A||(A={type:"branches",branchesMap:new Map,startIndex:n});let a=A.branchesMap.get(o)||[];a.push({event:t,globalIndex:n}),A.branchesMap.set(o,a)}else A&&(e.push(this.finalizeGroup(A)),A=null),e.push({type:"event",event:t,index:n})}),A&&e.push(this.finalizeGroup(A)),this.displayItems=e}finalizeGroup(e){let A=[];return e.branchesMap.forEach((t,n)=>{A.push({branchId:n,events:t})}),{type:"branches",branches:A,startIndex:e.startIndex}}rebuildTrace(){let e=this.traceData.reduce((A,t)=>{let n=String(t.trace_id),o=A.get(n);return o?(o.push(t),o.sort((a,r)=>a.start_time-r.start_time)):A.set(n,[t]),A},new Map);this.spansByInvocationId=new Map;for(let[A,t]of e){let n=t.find(o=>o.attrInvocationId!==void 0)?.attrInvocationId;if(!n){let o=t.find(a=>a.attrAssociatedEventIds!==void 0)?.attrAssociatedEventIds;o&&o.length>0&&(n=o[0])}n||(n=A),n&&this.spansByInvocationId.set(String(n),t)}}isFirstEventForInvocation(e,A){let t=e.event?.invocationId||e.event?.id;if(!t)return!1;for(let n=A-1;n>=0;n--){let o=this.uiEvents[n],a=o.event?.invocationId||o.event?.id;if(o.role==="bot"&&a===t)return!1}return!0}scrollToBottom(){this.sessionId&&(this.scrollInterrupted||(this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.scrollTimeout=setTimeout(()=>{this.scrollContainer?.nativeElement.scrollTo({top:this.scrollContainer.nativeElement.scrollHeight,behavior:"auto"}),this.scrollTimeout=null},50)))}scrollToTop(){setTimeout(()=>{this.scrollContainer?.nativeElement.scrollTo({top:0,behavior:"smooth"})},50)}focusInput(){setTimeout(()=>{this.textarea?.nativeElement?.focus()},50)}isMessageEventSelected(e){return e===this.selectedMessageIndex}restoreScrollPosition(){if(!this.scrollHeight){this.scrollInterrupted=!1,this.scrollToBottom();return}let e=this.scrollContainer?.nativeElement;e&&(e.scrollTop=e.scrollHeight-this.scrollHeight,this.scrollHeight=0)}getAllWorkflowNodes(e){let A={};for(let t=0;t<=e;t++){let o=this.uiEvents[t].event,a=o?.actions?.agentState?.nodes,r=o?.nodeInfo?.path;a&&r&&(A[r]||(A[r]={}),Object.assign(A[r],a))}return Object.keys(A).length>0?A:null}handleAgentStateClick(e,A){e.stopPropagation(),A===this.selectedMessageIndex||this.clickEvent.emit(A)}handleRowClick(e,A,t){let n=window.getSelection();n&&n.toString().length>0||this.clickEvent.emit(t)}handleKeyboardNavigation(e){if(this.selectedMessageIndex===void 0)return;let A=document.activeElement;if(A&&(A.tagName==="INPUT"||A.tagName==="TEXTAREA"||A.isContentEditable)||e.key!=="ArrowUp"&&e.key!=="ArrowDown")return;e.preventDefault();let t;e.key==="ArrowDown"?t=this.selectedMessageIndex+1>=this.uiEvents.length?0:this.selectedMessageIndex+1:t=this.selectedMessageIndex-1<0?this.uiEvents.length-1:this.selectedMessageIndex-1,this.clickEvent.emit(t),this.scrollToSelectedMessage(t)}scrollToSelectedMessage(e){let A=e!==void 0?e:this.selectedMessageIndex;A!==void 0&&setTimeout(()=>{if(!this.scrollContainer?.nativeElement)return;let t=this.scrollContainer.nativeElement.querySelectorAll(".message-row-container");t&&t[A]&&t[A].scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})},50)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-chat-panel"]],viewQuery:function(A,t){if(A&1&&Wt(HyA,5,ce)(zyA,5)(PyA,5),A&2){let n;se(n=le())&&(t.videoContainer=n.first),se(n=le())&&(t.scrollContainer=n.first),se(n=le())&&(t.textarea=n.first)}},hostBindings:function(A,t){A&1&&U("keydown",function(o){return t.handleKeyboardNavigation(o)},Fg)},inputs:{appName:"appName",agentReadme:"agentReadme",sessionName:[1,"sessionName"],uiEvents:"uiEvents",showBranches:"showBranches",traceData:"traceData",isChatMode:"isChatMode",evalCase:"evalCase",isEvalEditMode:"isEvalEditMode",isEvalCaseEditing:"isEvalCaseEditing",agentGraphData:"agentGraphData",isEditFunctionArgsEnabled:"isEditFunctionArgsEnabled",isTokenStreamingEnabled:"isTokenStreamingEnabled",useSse:"useSse",userInput:"userInput",userEditEvalCaseMessage:"userEditEvalCaseMessage",selectedFiles:"selectedFiles",updatedSessionState:"updatedSessionState",selectedMessageIndex:"selectedMessageIndex",isAudioRecording:"isAudioRecording",micVolume:"micVolume",isVideoRecording:"isVideoRecording",userId:"userId",sessionId:"sessionId",viewMode:"viewMode",shouldShowEvent:"shouldShowEvent",hideIntermediateEvents:[1,"hideIntermediateEvents"],invocationDisplayMap:[1,"invocationDisplayMap"],evalCaseResult:[1,"evalCaseResult"],showEvalSummary:[1,"showEvalSummary"]},outputs:{userInputChange:"userInputChange",userEditEvalCaseMessageChange:"userEditEvalCaseMessageChange",clickEvent:"clickEvent",handleKeydown:"handleKeydown",cancelEditMessage:"cancelEditMessage",saveEditMessage:"saveEditMessage",openViewImageDialog:"openViewImageDialog",openBase64InNewTab:"openBase64InNewTab",editEvalCaseMessage:"editEvalCaseMessage",deleteEvalCaseMessage:"deleteEvalCaseMessage",editFunctionArgs:"editFunctionArgs",fileSelect:"fileSelect",removeFile:"removeFile",removeStateUpdate:"removeStateUpdate",sendMessage:"sendMessage",stopMessage:"stopMessage",updateState:"updateState",toggleAudioRecording:"toggleAudioRecording",toggleVideoRecording:"toggleVideoRecording",longRunningResponseComplete:"longRunningResponseComplete",toggleHideIntermediateEvents:"toggleHideIntermediateEvents",toggleSse:"toggleSse",manualScroll:"manualScroll"},features:[ii],decls:5,vars:5,consts:[["autoScroll",""],["fileInput",""],["inputActionsMenu","matMenu"],["messageTextarea",""],["videoContainer",""],[1,"chat-messages"],[1,"loading-spinner-container"],[1,"chat-messages",3,"scroll","wheel","touchmove","mousedown","keydown"],[1,"eval-result-summary",2,"margin","16px","padding","16px","border-radius","8px","background","var(--mat-sys-surface-container)","border","1px solid var(--mat-sys-outline-variant)"],[1,"readme-content"],[1,"agent-loading-indicator"],[2,"display","flex","justify-content","space-between","align-items","center"],[2,"margin","0","color","var(--mat-sys-primary)"],[1,"status-card__summary"],[1,"status-card__passed",2,"font-size","16px","font-weight","600","font-family","monospace"],[1,"status-card__failed",2,"font-size","16px","font-weight","600","font-family","monospace"],[2,"margin-top","12px","display","flex","gap","24px"],[2,"color","var(--mat-sys-on-surface-variant)","font-size","13px"],[2,"font-weight","500"],[2,"display","flex","gap","8px","margin-top","4px"],[2,"font-size","13px","font-weight","500",3,"color"],[2,"font-size","13px","font-weight","500"],[3,"ngComponentOutlet","ngComponentOutletInputs"],[1,"branches-container"],[3,"rowClick","handleKeydown","cancelEditMessage","saveEditMessage","userEditEvalCaseMessageChange","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","clickEvent","longRunningResponseComplete","agentStateClick","isSelectable","uiEvent","index","uiEvents","isSelected","appName","userId","sessionId","sessionName","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userEditEvalCaseMessage","agentGraphData","allWorkflowNodes","isUserFeedbackEnabled","isLoadingAgentResponse"],[1,"trace-tree-container",3,"display"],[1,"trace-tree-container"],[3,"spans","invocationId","uiEvents","shouldShowEvent"],["animationDuration","0ms"],["mat-tab-label",""],[1,"branch-events-content"],[3,"display","isSelectable","uiEvent","index","uiEvents","isSelected","appName","userId","sessionId","sessionName","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userEditEvalCaseMessage","agentGraphData","allWorkflowNodes","isUserFeedbackEnabled","isLoadingAgentResponse"],["matTooltipPosition","above",1,"tab-name",3,"matTooltip"],["mode","indeterminate"],[1,"chat-input",3,"video-streaming"],[1,"chat-input"],["type","file","multiple","","hidden","",3,"change"],[1,"chat-input-content-row"],["appearance","outline","subscriptSizing","dynamic",1,"input-field"],[1,"file-preview"],["mat-icon-button","","matPrefix","",1,"input-prefix-menu-btn",3,"matMenuTriggerFor","disabled","matTooltip"],["xPosition","after"],["mat-menu-item","",3,"click","disabled"],["mat-menu-item","",3,"disabled"],["matInput","","cdkTextareaAutosize","","cdkAutosizeMinRows","1","cdkAutosizeMaxRows","10",1,"chat-input-box",3,"ngModelChange","keydown.enter","ngModel","placeholder","disabled"],["matSuffix","",1,"input-suffix-container"],[3,"toggleAudioRecording","toggleVideoRecording","isAudioRecording","isVideoRecording","micVolume","isBidiStreamingEnabled","disabled"],["mat-icon-button","",1,"stop-message-btn",3,"matTooltip"],["mat-icon-button","",1,"send-message-btn",3,"matTooltip"],[1,"video-container"],[1,"file-container"],[1,"image-container"],["alt","preview",1,"image-preview",3,"src"],["mat-icon-button","",1,"delete-button",3,"click"],["color","warn"],[1,"file-info"],["mat-icon-button","",1,"stop-message-btn",3,"click","matTooltip"],["mat-icon-button","",1,"send-message-btn",3,"click","matTooltip"],["mode","indeterminate","diameter","50"]],template:function(A,t){if(A&1&&(ro(0),mt(1,"async"),T(2,CDA,7,3,"div",5),T(3,mDA,1,1),T(4,wDA,2,0,"div",6)),A&2){let n=Ft(1,3,t.uiStateService.isSessionLoading());Q(2),O(t.appName!=""&&!n?2:-1),Q(),O(t.appName!=""&&t.isChatMode&&!n?3:-1),Q(),O(n?4:-1)}},dependencies:[li,Kc,fn,Gn,Kn,Ho,Un,zt,kU,pE,uE,qi,yi,Ws,ka,Zo,mQ,Rv,P3,YI,Za,s2,hs,Gs,tg,l2,Es,mZ,Ha,rn,RU,SZ,vp,bp,fE,W0,Iy,By,hy,gs],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%}.generated-image-container[_ngcontent-%COMP%]{max-width:400px;margin-left:20px}.generated-image[_ngcontent-%COMP%]{max-width:100%;min-width:40px;border-radius:8px}.html-artifact-container[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:flex-start;align-items:center}.loading-bar[_ngcontent-%COMP%]{width:100px;margin:15px}.chat-messages[_ngcontent-%COMP%]{flex-grow:1;overflow-y:auto;padding:20px;position:relative}.chat-sub-toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 20px;background-color:var(--mat-sys-surface-container);border-bottom:1px solid var(--mat-sys-outline-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%]{border-radius:16px;height:28px;align-items:center}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%] .mat-button-toggle-label-content{line-height:28px;padding:0 12px;font-size:13px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-bar-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;background-color:transparent;border:none;margin-left:16px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;height:28px;cursor:pointer;transition:background-color .2s ease}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-label[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--mat-sys-on-surface-variant);padding:0;margin-left:4px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]:hover{color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:transparent;border:1px dashed var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;font-weight:500;height:28px;cursor:pointer;transition:all .2s ease;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant);border-color:var(--mat-sys-outline);color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;margin-right:4px} .filter-panel{min-width:max-content!important;max-width:50vw} .filter-panel .mat-mdc-menu-item{min-height:32px!important;font-size:12px!important} .filter-panel .mat-mdc-menu-item .mat-mdc-menu-item-text, .filter-panel .mat-mdc-menu-item .mdc-list-item__primary-text{font-size:12px!important;line-height:normal}.trace-tree-container[_ngcontent-%COMP%]{margin:12px 48px 12px 12px;border-radius:12px;border:none;background:var(--mat-sys-surface-container-lowest, #fff);box-shadow:0 4px 20px #0000000d,0 1px 3px #0000000a}.chat-input[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:10px;width:min(960px,88%);margin:0 auto;position:relative;transition:all .3s ease;box-sizing:border-box}.chat-input[_ngcontent-%COMP%] .chat-input-content-row[_ngcontent-%COMP%]{display:flex;gap:16px;align-items:flex-end;width:100%}.video-container[_ngcontent-%COMP%]{display:none;border-radius:12px;overflow:hidden;background:var(--mat-sys-surface-variant);border:1px solid var(--mat-sys-outline-variant);width:200px}.video-container.visible[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;flex-shrink:0;box-shadow:0 8px 24px #00000026}.video-container[_ngcontent-%COMP%] video{width:100%!important;height:auto!important;max-height:280px;object-fit:cover;border-radius:12px;transform:scaleX(-1)}.input-field[_ngcontent-%COMP%]{flex-grow:1;position:relative}.input-field[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);border:none;box-sizing:content-box;caret-color:var(--mat-sys-primary)}.input-field[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]::placeholder{color:var(--mat-sys-on-surface-variant)}.input-field[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:not(:disabled):not(.stop-message-btn){color:var(--mat-sys-primary)!important}.input-field[_ngcontent-%COMP%] .mat-mdc-form-field-flex{align-items:flex-end!important}.input-field[_ngcontent-%COMP%] .mat-mdc-form-field-icon-prefix, .input-field[_ngcontent-%COMP%] .mat-mdc-form-field-icon-suffix{align-self:flex-end!important;margin-bottom:8px!important}button.stop-message-btn[_ngcontent-%COMP%]:not(:disabled){color:#ea4335!important}button.stop-message-btn[_ngcontent-%COMP%]:not(:disabled):hover{background-color:#ea433514!important}button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface-variant)!important;opacity:.38!important;cursor:not-allowed}button.input-prefix-menu-btn[_ngcontent-%COMP%]{margin-left:12px!important}button.input-prefix-menu-btn[_ngcontent-%COMP%]:not(:disabled){color:var(--mat-sys-on-surface-variant)!important}.input-suffix-container[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:8px;margin-right:12px!important}.file-preview[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;margin-bottom:8px}.image-container[_ngcontent-%COMP%]{position:relative;display:inline-block;border-radius:12px;overflow:hidden}.image-preview[_ngcontent-%COMP%]{display:block;width:100%;height:auto;border-radius:12px;width:80px;height:80px}.delete-button[_ngcontent-%COMP%]{position:absolute;top:1px;right:1px;border:none;border-radius:50%;padding:8px;cursor:pointer;color:var(--mat-sys-error);display:flex;align-items:center;justify-content:center;scale:.7}.delete-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px}.file-container[_ngcontent-%COMP%]{position:relative;display:flex;flex-direction:column;gap:8px;height:80px;border-radius:12px}.file-info[_ngcontent-%COMP%]{margin-right:60px;padding-top:20px;padding-left:16px}.chat-input-box[_ngcontent-%COMP%]{caret-color:#fff}.loading-spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;height:100%}.messages-loading-container[_ngcontent-%COMP%]{margin-top:1em;margin-bottom:1em}.agent-loading-indicator[_ngcontent-%COMP%]{margin-top:16px;margin-bottom:8px;padding:0 20px;width:240px}.readme-content[_ngcontent-%COMP%]{padding:0 20px;font-size:14px;line-height:1.8;color:var(--mat-sys-on-surface)}.readme-content[_ngcontent-%COMP%] pre code{font-size:12px!important}.branches-container[_ngcontent-%COMP%]{margin:8px -20px;border-radius:8px;overflow:hidden}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab-header, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab-header{background:transparent!important}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab{background:var(--mat-sys-surface-container-highest)!important}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active{background:#e8f5e9!important}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mdc-tab-indicator__content--underline, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mdc-tab-indicator__content--underline{border-color:#2e7d32!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab-header{height:32px!important;background:transparent!important;justify-content:flex-start!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab-label-container{border-bottom:none!important}.branches-container[_ngcontent-%COMP%] .mdc-tab-indicator__content--underline{border-color:#4caf50!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab{height:32px!important;font-size:12px!important;min-width:auto!important;padding:0 16px!important;flex:0 0 auto!important;border-top-left-radius:8px!important;border-top-right-radius:8px!important;background:var(--mat-sys-surface-container-highest)!important;margin-right:2px;overflow:hidden!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab .mdc-tab__text-label{color:var(--mat-sys-on-surface-variant)!important;opacity:.6}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active{background:#1b4d24!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{color:var(--mat-sys-on-surface)!important;opacity:1!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab-body-content{padding:0!important}.branches-container[_ngcontent-%COMP%] .mdc-tab__text-label{font-size:12px!important}.branches-container[_ngcontent-%COMP%] .tab-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.branches-container[_ngcontent-%COMP%] .branch-events-content[_ngcontent-%COMP%]{padding:8px 20px;background:#1b4d24}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .branch-events-content[_ngcontent-%COMP%], .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .branch-events-content[_ngcontent-%COMP%]{background:#e8f5e9}@media(max-width:768px){.chat-messages[_ngcontent-%COMP%]{padding:12px!important}.chat-input[_ngcontent-%COMP%]{width:100%!important;padding:8px!important}.chat-input-content-row[_ngcontent-%COMP%]{gap:8px!important}.input-suffix-container[_ngcontent-%COMP%]{gap:4px!important;margin-right:4px!important}button.input-prefix-menu-btn[_ngcontent-%COMP%]{margin-left:4px!important}}"]})};var yDA=[[["caption"]],[["colgroup"],["col"]],"*"],DDA=["caption","colgroup, col","*"];function vDA(i,e){i&1&&Ze(0,2)}function bDA(i,e){i&1&&(I(0,"thead",0),dn(1,1),h(),I(2,"tbody",0),dn(3,2)(4,3),h(),I(5,"tfoot",0),dn(6,4),h())}function MDA(i,e){i&1&&dn(0,1)(1,2)(2,3)(3,4)}var bc=new MA("CDK_TABLE");var uy=(()=>{class i{template=w(wo);constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkCellDef",""]]})}return i})(),py=(()=>{class i{template=w(wo);constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkHeaderCellDef",""]]})}return i})(),qX=(()=>{class i{template=w(wo);constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkFooterCellDef",""]]})}return i})(),ME=(()=>{class i{_table=w(bc,{optional:!0});_hasStickyChanged=!1;get name(){return this._name}set name(A){this._setNameInput(A)}_name;get sticky(){return this._sticky}set sticky(A){A!==this._sticky&&(this._sticky=A,this._hasStickyChanged=!0)}_sticky=!1;get stickyEnd(){return this._stickyEnd}set stickyEnd(A){A!==this._stickyEnd&&(this._stickyEnd=A,this._hasStickyChanged=!0)}_stickyEnd=!1;cell;headerCell;footerCell;cssClassFriendlyName;_columnCssClassName;constructor(){}hasStickyChanged(){let A=this._hasStickyChanged;return this.resetStickyChanged(),A}resetStickyChanged(){this._hasStickyChanged=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(A){A&&(this._name=A,this.cssClassFriendlyName=A.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkColumnDef",""]],contentQueries:function(t,n,o){if(t&1&&ra(o,uy,5)(o,py,5)(o,qX,5),t&2){let a;se(a=le())&&(n.cell=a.first),se(a=le())&&(n.headerCell=a.first),se(a=le())&&(n.footerCell=a.first)}},inputs:{name:[0,"cdkColumnDef","name"],sticky:[2,"sticky","sticky",Qe],stickyEnd:[2,"stickyEnd","stickyEnd",Qe]}})}return i})(),Qy=class{constructor(e,A){A.nativeElement.classList.add(...e._columnCssClassName)}},WX=(()=>{class i extends Qy{constructor(){super(w(ME),w(ce))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[bt]})}return i})();var ZX=(()=>{class i extends Qy{constructor(){let A=w(ME),t=w(ce);super(A,t);let n=A._table?._getCellRole();n&&t.nativeElement.setAttribute("role",n)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[bt]})}return i})();var pR=(()=>{class i{template=w(wo);_differs=w(k1);columns;_columnsDiffer;constructor(){}ngOnChanges(A){if(!this._columnsDiffer){let t=A.columns&&A.columns.currentValue||[];this._columnsDiffer=this._differs.find(t).create(),this._columnsDiffer.diff(t)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(A){return this instanceof fR?A.headerCell.template:this instanceof mR?A.footerCell.template:A.cell.template}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,features:[ii]})}return i})(),fR=(()=>{class i extends pR{_table=w(bc,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(A){A!==this._sticky&&(this._sticky=A,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(w(wo),w(k1))}ngOnChanges(A){super.ngOnChanges(A)}hasStickyChanged(){let A=this._hasStickyChanged;return this.resetStickyChanged(),A}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:[0,"cdkHeaderRowDef","columns"],sticky:[2,"cdkHeaderRowDefSticky","sticky",Qe]},features:[bt,ii]})}return i})(),mR=(()=>{class i extends pR{_table=w(bc,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(A){A!==this._sticky&&(this._sticky=A,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(w(wo),w(k1))}ngOnChanges(A){super.ngOnChanges(A)}hasStickyChanged(){let A=this._hasStickyChanged;return this.resetStickyChanged(),A}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:[0,"cdkFooterRowDef","columns"],sticky:[2,"cdkFooterRowDefSticky","sticky",Qe]},features:[bt,ii]})}return i})(),fy=(()=>{class i extends pR{_table=w(bc,{optional:!0});when;constructor(){super(w(wo),w(k1))}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkRowDef",""]],inputs:{columns:[0,"cdkRowDefColumns","columns"],when:[0,"cdkRowDefWhen","when"]},features:[bt]})}return i})(),xp=(()=>{class i{_viewContainer=w(Jo);cells;context;static mostRecentCellOutlet=null;constructor(){i.mostRecentCellOutlet=this}ngOnDestroy(){i.mostRecentCellOutlet===this&&(i.mostRecentCellOutlet=null)}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","cdkCellOutlet",""]]})}return i})();var wR=(()=>{class i{static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,n){t&1&&dn(0,0)},dependencies:[xp],encapsulation:2})}return i})(),XX=(()=>{class i{templateRef=w(wo);_contentClassNames=["cdk-no-data-row","cdk-row"];_cellClassNames=["cdk-cell","cdk-no-data-cell"];_cellSelector="td, cdk-cell, [cdk-cell], .cdk-cell";constructor(){}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["ng-template","cdkNoDataRow",""]]})}return i})(),jX=["top","bottom","left","right"],uR=class{_isNativeHtmlTable;_stickCellCss;_isBrowser;_needsPositionStickyOnElement;direction;_positionListener;_tableInjector;_elemSizeCache=new WeakMap;_resizeObserver=globalThis?.ResizeObserver?new globalThis.ResizeObserver(e=>this._updateCachedSizes(e)):null;_updatedStickyColumnsParamsToReplay=[];_stickyColumnsReplayTimeout=null;_cachedCellWidths=[];_borderCellCss;_destroyed=!1;constructor(e,A,t=!0,n=!0,o,a,r){this._isNativeHtmlTable=e,this._stickCellCss=A,this._isBrowser=t,this._needsPositionStickyOnElement=n,this.direction=o,this._positionListener=a,this._tableInjector=r,this._borderCellCss={top:`${A}-border-elem-top`,bottom:`${A}-border-elem-bottom`,left:`${A}-border-elem-left`,right:`${A}-border-elem-right`}}clearStickyPositioning(e,A){(A.includes("left")||A.includes("right"))&&this._removeFromStickyColumnReplayQueue(e);let t=[];for(let n of e)n.nodeType===n.ELEMENT_NODE&&t.push(n,...Array.from(n.children));ao({write:()=>{for(let n of t)this._removeStickyStyle(n,A)}},{injector:this._tableInjector})}updateStickyColumns(e,A,t,n=!0,o=!0){if(!e.length||!this._isBrowser||!(A.some(f=>f)||t.some(f=>f))){this._positionListener?.stickyColumnsUpdated({sizes:[]}),this._positionListener?.stickyEndColumnsUpdated({sizes:[]});return}let a=e[0],r=a.children.length,s=this.direction==="rtl",l=s?"right":"left",g=s?"left":"right",C=A.lastIndexOf(!0),d=t.indexOf(!0),B,u,E;o&&this._updateStickyColumnReplayQueue({rows:[...e],stickyStartStates:[...A],stickyEndStates:[...t]}),ao({earlyRead:()=>{B=this._getCellWidths(a,n),u=this._getStickyStartColumnPositions(B,A),E=this._getStickyEndColumnPositions(B,t)},write:()=>{for(let f of e)for(let m=0;m!!f)&&(this._positionListener.stickyColumnsUpdated({sizes:C===-1?[]:B.slice(0,C+1).map((f,m)=>A[m]?f:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:d===-1?[]:B.slice(d).map((f,m)=>t[m+d]?f:null).reverse()}))}},{injector:this._tableInjector})}stickRows(e,A,t){if(!this._isBrowser)return;let n=t==="bottom"?e.slice().reverse():e,o=t==="bottom"?A.slice().reverse():A,a=[],r=[],s=[];ao({earlyRead:()=>{for(let l=0,g=0;l{let l=o.lastIndexOf(!0);for(let g=0;g{let t=e.querySelector("tfoot");t&&(A.some(n=>!n)?this._removeStickyStyle(t,["bottom"]):this._addStickyStyle(t,"bottom",0,!1))}},{injector:this._tableInjector})}destroy(){this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._resizeObserver?.disconnect(),this._destroyed=!0}_removeStickyStyle(e,A){if(!e.classList.contains(this._stickCellCss))return;for(let n of A)e.style[n]="",e.classList.remove(this._borderCellCss[n]);jX.some(n=>A.indexOf(n)===-1&&e.style[n])?e.style.zIndex=this._getCalculatedZIndex(e):(e.style.zIndex="",this._needsPositionStickyOnElement&&(e.style.position=""),e.classList.remove(this._stickCellCss))}_addStickyStyle(e,A,t,n){e.classList.add(this._stickCellCss),n&&e.classList.add(this._borderCellCss[A]),e.style[A]=`${t}px`,e.style.zIndex=this._getCalculatedZIndex(e),this._needsPositionStickyOnElement&&(e.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(e){let A={top:100,bottom:10,left:1,right:1},t=0;for(let n of jX)e.style[n]&&(t+=A[n]);return t?`${t}`:""}_getCellWidths(e,A=!0){if(!A&&this._cachedCellWidths.length)return this._cachedCellWidths;let t=[],n=e.children;for(let o=0;o0;o--)A[o]&&(t[o]=n,n+=e[o]);return t}_retrieveElementSize(e){let A=this._elemSizeCache.get(e);if(A)return A;let t=e.getBoundingClientRect(),n={width:t.width,height:t.height};return this._resizeObserver&&(this._elemSizeCache.set(e,n),this._resizeObserver.observe(e,{box:"border-box"})),n}_updateStickyColumnReplayQueue(e){this._removeFromStickyColumnReplayQueue(e.rows),this._stickyColumnsReplayTimeout||this._updatedStickyColumnsParamsToReplay.push(e)}_removeFromStickyColumnReplayQueue(e){let A=new Set(e);for(let t of this._updatedStickyColumnsParamsToReplay)t.rows=t.rows.filter(n=>!A.has(n));this._updatedStickyColumnsParamsToReplay=this._updatedStickyColumnsParamsToReplay.filter(t=>!!t.rows.length)}_updateCachedSizes(e){let A=!1;for(let t of e){let n=t.borderBoxSize?.length?{width:t.borderBoxSize[0].inlineSize,height:t.borderBoxSize[0].blockSize}:{width:t.contentRect.width,height:t.contentRect.height};n.width!==this._elemSizeCache.get(t.target)?.width&&SDA(t.target)&&(A=!0),this._elemSizeCache.set(t.target,n)}A&&this._updatedStickyColumnsParamsToReplay.length&&(this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._stickyColumnsReplayTimeout=setTimeout(()=>{if(!this._destroyed){for(let t of this._updatedStickyColumnsParamsToReplay)this.updateStickyColumns(t.rows,t.stickyStartStates,t.stickyEndStates,!0,!1);this._updatedStickyColumnsParamsToReplay=[],this._stickyColumnsReplayTimeout=null}},0))}};function SDA(i){return["cdk-cell","cdk-header-cell","cdk-footer-cell"].some(e=>i.classList.contains(e))}var _p=new MA("STICKY_POSITIONING_LISTENER");var yR=(()=>{class i{viewContainer=w(Jo);elementRef=w(ce);constructor(){let A=w(bc);A._rowOutlet=this,A._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","rowOutlet",""]]})}return i})(),DR=(()=>{class i{viewContainer=w(Jo);elementRef=w(ce);constructor(){let A=w(bc);A._headerRowOutlet=this,A._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","headerRowOutlet",""]]})}return i})(),vR=(()=>{class i{viewContainer=w(Jo);elementRef=w(ce);constructor(){let A=w(bc);A._footerRowOutlet=this,A._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","footerRowOutlet",""]]})}return i})(),bR=(()=>{class i{viewContainer=w(Jo);elementRef=w(ce);constructor(){let A=w(bc);A._noDataRowOutlet=this,A._outletAssigned()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["","noDataRowOutlet",""]]})}return i})(),MR=(()=>{class i{_differs=w(k1);_changeDetectorRef=w(Mt);_elementRef=w(ce);_dir=w(No,{optional:!0});_platform=w(Qi);_viewRepeater;_viewportRuler=w(Ns);_injector=w(St);_virtualScrollViewport=w(NU,{optional:!0,host:!0});_positionListener=w(_p,{optional:!0})||w(_p,{optional:!0,skipSelf:!0});_document=w(ci);_data;_renderedRange;_onDestroy=new ne;_renderRows;_renderChangeSubscription=null;_columnDefsByName=new Map;_rowDefs;_headerRowDefs;_footerRowDefs;_dataDiffer;_defaultRowDef=null;_customColumnDefs=new Set;_customRowDefs=new Set;_customHeaderRowDefs=new Set;_customFooterRowDefs=new Set;_customNoDataRow=null;_headerRowDefChanged=!0;_footerRowDefChanged=!0;_stickyColumnStylesNeedReset=!0;_forceRecalculateCellWidths=!0;_cachedRenderRowsMap=new Map;_isNativeHtmlTable;_stickyStyler;stickyCssClass="cdk-table-sticky";needsPositionStickyOnElement=!0;_isServer;_isShowingNoDataRow=!1;_hasAllOutlets=!1;_hasInitialized=!1;_headerRowStickyUpdates=new ne;_footerRowStickyUpdates=new ne;_disableVirtualScrolling=!1;_getCellRole(){if(this._cellRoleInternal===void 0){let A=this._elementRef.nativeElement.getAttribute("role");return A==="grid"||A==="treegrid"?"gridcell":"cell"}return this._cellRoleInternal}_cellRoleInternal=void 0;get trackBy(){return this._trackByFn}set trackBy(A){this._trackByFn=A}_trackByFn;get dataSource(){return this._dataSource}set dataSource(A){this._dataSource!==A&&(this._switchDataSource(A),this._changeDetectorRef.markForCheck())}_dataSource;_dataSourceChanges=new ne;_dataStream=new ne;get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(A){this._multiTemplateDataRows=A,this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}_multiTemplateDataRows=!1;get fixedLayout(){return this._virtualScrollEnabled()?!0:this._fixedLayout}set fixedLayout(A){this._fixedLayout=A,this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}_fixedLayout=!1;recycleRows=!1;contentChanged=new FA;viewChange=new gi({start:0,end:Number.MAX_VALUE});_rowOutlet;_headerRowOutlet;_footerRowOutlet;_noDataRowOutlet;_contentColumnDefs;_contentRowDefs;_contentHeaderRowDefs;_contentFooterRowDefs;_noDataRow;constructor(){w(new Ys("role"),{optional:!0})||this._elementRef.nativeElement.setAttribute("role","table"),this._isServer=!this._platform.isBrowser,this._isNativeHtmlTable=this._elementRef.nativeElement.nodeName==="TABLE",this._dataDiffer=this._differs.find([]).create((t,n)=>this.trackBy?this.trackBy(n.dataIndex,n.data):n)}ngOnInit(){this._setupStickyStyler(),this._viewportRuler.change().pipe(yt(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentInit(){this._viewRepeater=this.recycleRows||this._virtualScrollEnabled()?new Wf:new Zf,this._virtualScrollEnabled()&&this._setupVirtualScrolling(this._virtualScrollViewport),this._hasInitialized=!0}ngAfterContentChecked(){this._canRender()&&this._render()}ngOnDestroy(){this._stickyStyler?.destroy(),[this._rowOutlet?.viewContainer,this._headerRowOutlet?.viewContainer,this._footerRowOutlet?.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(A=>{A?.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._headerRowStickyUpdates.complete(),this._footerRowStickyUpdates.complete(),this._onDestroy.next(),this._onDestroy.complete(),eu(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();let A=this._dataDiffer.diff(this._renderRows);if(!A){this._updateNoDataRow(),this.contentChanged.next();return}let t=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(A,t,(n,o,a)=>this._getEmbeddedViewArgs(n.item,a),n=>n.item.data,n=>{n.operation===Yg.INSERTED&&n.context&&this._renderCellTemplateForItem(n.record.item.rowDef,n.context)}),this._updateRowIndexContext(),A.forEachIdentityChange(n=>{let o=t.get(n.currentIndex);o.context.$implicit=n.item.data}),this._updateNoDataRow(),this.contentChanged.next(),this.updateStickyColumnStyles()}addColumnDef(A){this._customColumnDefs.add(A)}removeColumnDef(A){this._customColumnDefs.delete(A)}addRowDef(A){this._customRowDefs.add(A)}removeRowDef(A){this._customRowDefs.delete(A)}addHeaderRowDef(A){this._customHeaderRowDefs.add(A),this._headerRowDefChanged=!0}removeHeaderRowDef(A){this._customHeaderRowDefs.delete(A),this._headerRowDefChanged=!0}addFooterRowDef(A){this._customFooterRowDefs.add(A),this._footerRowDefChanged=!0}removeFooterRowDef(A){this._customFooterRowDefs.delete(A),this._footerRowDefChanged=!0}setNoDataRow(A){this._customNoDataRow=A}updateStickyHeaderRowStyles(){let A=this._getRenderedRows(this._headerRowOutlet);if(this._isNativeHtmlTable){let n=VX(this._headerRowOutlet,"thead");n&&(n.style.display=A.length?"":"none")}let t=this._headerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(A,["top"]),this._stickyStyler.stickRows(A,t,"top"),this._headerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyFooterRowStyles(){let A=this._getRenderedRows(this._footerRowOutlet);if(this._isNativeHtmlTable){let n=VX(this._footerRowOutlet,"tfoot");n&&(n.style.display=A.length?"":"none")}let t=this._footerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(A,["bottom"]),this._stickyStyler.stickRows(A,t,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,t),this._footerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyColumnStyles(){let A=this._getRenderedRows(this._headerRowOutlet),t=this._getRenderedRows(this._rowOutlet),n=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this.fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...A,...t,...n],["left","right"]),this._stickyColumnStylesNeedReset=!1),A.forEach((o,a)=>{this._addStickyColumnStyles([o],this._headerRowDefs[a])}),this._rowDefs.forEach(o=>{let a=[];for(let r=0;r{this._addStickyColumnStyles([o],this._footerRowDefs[a])}),Array.from(this._columnDefsByName.values()).forEach(o=>o.resetStickyChanged())}stickyColumnsUpdated(A){this._positionListener?.stickyColumnsUpdated(A)}stickyEndColumnsUpdated(A){this._positionListener?.stickyEndColumnsUpdated(A)}stickyHeaderRowsUpdated(A){this._headerRowStickyUpdates.next(A),this._positionListener?.stickyHeaderRowsUpdated(A)}stickyFooterRowsUpdated(A){this._footerRowStickyUpdates.next(A),this._positionListener?.stickyFooterRowsUpdated(A)}_outletAssigned(){!this._hasAllOutlets&&this._rowOutlet&&this._headerRowOutlet&&this._footerRowOutlet&&this._noDataRowOutlet&&(this._hasAllOutlets=!0,this._canRender()&&this._render())}_canRender(){return this._hasAllOutlets&&this._hasInitialized}_render(){this._cacheRowDefs(),this._cacheColumnDefs(),!this._headerRowDefs.length&&!this._footerRowDefs.length&&this._rowDefs.length;let t=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||t,this._forceRecalculateCellWidths=t,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}_getAllRenderRows(){if(!Array.isArray(this._data)||!this._renderedRange)return[];let A=[],t=Math.min(this._data.length,this._renderedRange.end),n=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let o=this._renderedRange.start;o{let r=n&&n.has(a)?n.get(a):[];if(r.length){let s=r.shift();return s.dataIndex=t,s}else return{data:A,rowDef:a,dataIndex:t}})}_cacheColumnDefs(){this._columnDefsByName.clear(),Ey(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(t=>{this._columnDefsByName.has(t.name),this._columnDefsByName.set(t.name,t)})}_cacheRowDefs(){this._headerRowDefs=Ey(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=Ey(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=Ey(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);let A=this._rowDefs.filter(t=>!t.when);this._defaultRowDef=A[0]}_renderUpdatedColumns(){let A=(a,r)=>{let s=!!r.getColumnsDiff();return a||s},t=this._rowDefs.reduce(A,!1);t&&this._forceRenderDataRows();let n=this._headerRowDefs.reduce(A,!1);n&&this._forceRenderHeaderRows();let o=this._footerRowDefs.reduce(A,!1);return o&&this._forceRenderFooterRows(),t||n||o}_switchDataSource(A){this._data=[],eu(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),A||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet&&this._rowOutlet.viewContainer.clear()),this._dataSource=A}_observeRenderChanges(){if(!this.dataSource)return;let A;eu(this.dataSource)?A=this.dataSource.connect(this):fI(this.dataSource)?A=this.dataSource:Array.isArray(this.dataSource)&&(A=oe(this.dataSource)),this._renderChangeSubscription=Dr([A,this.viewChange]).pipe(yt(this._onDestroy)).subscribe(([t,n])=>{this._data=t||[],this._renderedRange=n,this._dataStream.next(t),this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((A,t)=>this._renderRow(this._headerRowOutlet,A,t)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((A,t)=>this._renderRow(this._footerRowOutlet,A,t)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(A,t){let n=Array.from(t?.columns||[]).map(r=>{let s=this._columnDefsByName.get(r);return s}),o=n.map(r=>r.sticky),a=n.map(r=>r.stickyEnd);this._stickyStyler.updateStickyColumns(A,o,a,!this.fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(A){let t=[];for(let n=0;n!o.when||o.when(t,A));else{let o=this._rowDefs.find(a=>a.when&&a.when(t,A))||this._defaultRowDef;o&&n.push(o)}return n.length,n}_getEmbeddedViewArgs(A,t){let n=A.rowDef,o={$implicit:A.data};return{templateRef:n.template,context:o,index:t}}_renderRow(A,t,n,o={}){let a=A.viewContainer.createEmbeddedView(t.template,o,n);return this._renderCellTemplateForItem(t,o),a}_renderCellTemplateForItem(A,t){for(let n of this._getCellTemplates(A))xp.mostRecentCellOutlet&&xp.mostRecentCellOutlet._viewContainer.createEmbeddedView(n,t);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){let A=this._rowOutlet.viewContainer;for(let t=0,n=A.length;t{let n=this._columnDefsByName.get(t);return A.extractCellTemplate(n)})}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){let A=(t,n)=>t||n.hasStickyChanged();this._headerRowDefs.reduce(A,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(A,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(A,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){let A=this._dir?this._dir.value:"ltr",t=this._injector;this._stickyStyler=new uR(this._isNativeHtmlTable,this.stickyCssClass,this._platform.isBrowser,this.needsPositionStickyOnElement,A,this,t),(this._dir?this._dir.change:oe()).pipe(yt(this._onDestroy)).subscribe(n=>{this._stickyStyler.direction=n,this.updateStickyColumnStyles()})}_setupVirtualScrolling(A){let t=typeof requestAnimationFrame<"u"?uI:RD;this.viewChange.next({start:0,end:0}),A.renderedRangeStream.pipe(v1(0,t),yt(this._onDestroy)).subscribe(this.viewChange),A.attach({dataStream:this._dataStream,measureRangeSize:(n,o)=>this._measureRangeSize(n,o)}),Dr([A.renderedContentOffset,this._headerRowStickyUpdates]).pipe(yt(this._onDestroy)).subscribe(([n,o])=>{if(!(!o.sizes||!o.offsets||!o.elements))for(let a=0;a{if(!(!o.sizes||!o.offsets||!o.elements))for(let a=0;a!t._table||t._table===this)}_updateNoDataRow(){let A=this._customNoDataRow||this._noDataRow;if(!A)return;let t=this._rowOutlet.viewContainer.length===0;if(t===this._isShowingNoDataRow)return;let n=this._noDataRowOutlet.viewContainer;if(t){let o=n.createEmbeddedView(A.templateRef),a=o.rootNodes[0];if(o.rootNodes.length===1&&a?.nodeType===this._document.ELEMENT_NODE){a.setAttribute("role","row"),a.classList.add(...A._contentClassNames);let r=a.querySelectorAll(A._cellSelector);for(let s=0;s=A.end||t!=="vertical")return 0;let n=this.viewChange.value,o=this._rowOutlet.viewContainer;A.startn.end;let a=A.start-n.start,r=A.end-A.start,s,l;for(let d=0;d-1;d--){let B=o.get(d+a);if(B&&B.rootNodes.length){l=B.rootNodes[B.rootNodes.length-1];break}}let g=s?.getBoundingClientRect?.(),C=l?.getBoundingClientRect?.();return g&&C?C.bottom-g.top:0}_virtualScrollEnabled(){return!this._disableVirtualScrolling&&this._virtualScrollViewport!=null}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(t,n,o){if(t&1&&ra(o,XX,5)(o,ME,5)(o,fy,5)(o,fR,5)(o,mR,5),t&2){let a;se(a=le())&&(n._noDataRow=a.first),se(a=le())&&(n._contentColumnDefs=a),se(a=le())&&(n._contentRowDefs=a),se(a=le())&&(n._contentHeaderRowDefs=a),se(a=le())&&(n._contentFooterRowDefs=a)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(t,n){t&2&&_A("cdk-table-fixed-layout",n.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:[2,"multiTemplateDataRows","multiTemplateDataRows",Qe],fixedLayout:[2,"fixedLayout","fixedLayout",Qe],recycleRows:[2,"recycleRows","recycleRows",Qe]},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[pt([{provide:bc,useExisting:i},{provide:_p,useValue:null}])],ngContentSelectors:DDA,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,n){t&1&&(Ot(yDA),Ze(0),Ze(1,1),T(2,vDA,1,0),T(3,bDA,7,0)(4,MDA,4,0)),t&2&&(Q(2),O(n._isServer?2:-1),Q(),O(n._isNativeHtmlTable?3:4))},dependencies:[DR,yR,bR,vR],styles:[`.cdk-table-fixed-layout{table-layout:fixed} -`],encapsulation:2})}return i})();function Ey(i,e){return i.concat(Array.from(e))}function VX(i,e){let A=e.toUpperCase(),t=i.viewContainer.element.nativeElement;for(;t;){let n=t.nodeType===1?t.nodeName:null;if(n===A)return t;if(n==="TABLE")break;t=t.parentNode}return null}var kDA=[[["caption"]],[["colgroup"],["col"]],"*"],_DA=["caption","colgroup, col","*"];function xDA(i,e){i&1&&Ze(0,2)}function RDA(i,e){i&1&&(I(0,"thead",0),dn(1,1),h(),I(2,"tbody",2),dn(3,3)(4,4),h(),I(5,"tfoot",0),dn(6,5),h())}function NDA(i,e){i&1&&dn(0,1)(1,3)(2,4)(3,5)}var $X=(()=>{class i extends MR{stickyCssClass="mat-mdc-table-sticky";needsPositionStickyOnElement=!1;static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275cmp=vA({type:i,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-mdc-table","mdc-data-table__table"],hostVars:2,hostBindings:function(t,n){t&2&&_A("mat-table-fixed-layout",n.fixedLayout)},exportAs:["matTable"],features:[pt([{provide:MR,useExisting:i},{provide:bc,useExisting:i},{provide:_p,useValue:null}]),bt],ngContentSelectors:_DA,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["role","rowgroup",1,"mdc-data-table__content"],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(t,n){t&1&&(Ot(kDA),Ze(0),Ze(1,1),T(2,xDA,1,0),T(3,RDA,7,0)(4,NDA,4,0)),t&2&&(Q(2),O(n._isServer?2:-1),Q(),O(n._isNativeHtmlTable?3:4))},dependencies:[DR,yR,bR,vR],styles:[`.mat-mdc-table-sticky{position:sticky !important}mat-table{display:block}mat-header-row{min-height:var(--mat-table-header-container-height, 56px)}mat-row{min-height:var(--mat-table-row-item-container-height, 52px)}mat-footer-row{min-height:var(--mat-table-footer-container-height, 52px)}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}.mat-mdc-table{min-width:100%;border:0;border-spacing:0;table-layout:auto;white-space:normal;background-color:var(--mat-table-background-color, var(--mat-sys-surface))}.mat-table-fixed-layout{table-layout:fixed}.mdc-data-table__cell{box-sizing:border-box;overflow:hidden;text-align:start;text-overflow:ellipsis}.mdc-data-table__cell,.mdc-data-table__header-cell{padding:0 16px}.mat-mdc-header-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-header-container-height, 56px);color:var(--mat-table-header-headline-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-header-headline-font, var(--mat-sys-title-small-font, Roboto, sans-serif));line-height:var(--mat-table-header-headline-line-height, var(--mat-sys-title-small-line-height));font-size:var(--mat-table-header-headline-size, var(--mat-sys-title-small-size, 14px));font-weight:var(--mat-table-header-headline-weight, var(--mat-sys-title-small-weight, 500))}.mat-mdc-row{height:var(--mat-table-row-item-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)))}.mat-mdc-row,.mdc-data-table__content{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-table-row-item-label-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-row-item-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-row-item-label-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-row-item-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-footer-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-footer-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-footer-supporting-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-footer-supporting-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-footer-supporting-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-footer-supporting-text-weight, var(--mat-sys-body-medium-weight));letter-spacing:var(--mat-table-footer-supporting-text-tracking, var(--mat-sys-body-medium-tracking))}.mat-mdc-header-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-header-headline-tracking, var(--mat-sys-title-small-tracking));font-weight:inherit;line-height:inherit;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;outline:none;text-align:start}.mdc-data-table__row:last-child>.mat-mdc-header-cell{border-bottom:none}.mat-mdc-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking));line-height:inherit}.mdc-data-table__row:last-child>.mat-mdc-cell{border-bottom:none}.mat-mdc-footer-cell{letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking))}mat-row.mat-mdc-row,mat-header-row.mat-mdc-header-row,mat-footer-row.mat-mdc-footer-row{border-bottom:none}.mat-mdc-table tbody,.mat-mdc-table tfoot,.mat-mdc-table thead,.mat-mdc-cell,.mat-mdc-footer-cell,.mat-mdc-header-row,.mat-mdc-row,.mat-mdc-footer-row,.mat-mdc-table .mat-mdc-header-cell{background:inherit}.mat-mdc-table mat-header-row.mat-mdc-header-row,.mat-mdc-table mat-row.mat-mdc-row,.mat-mdc-table mat-footer-row.mat-mdc-footer-cell{height:unset}mat-header-cell.mat-mdc-header-cell,mat-cell.mat-mdc-cell,mat-footer-cell.mat-mdc-footer-cell{align-self:stretch} -`],encapsulation:2})}return i})(),A$=(()=>{class i extends uy{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","matCellDef",""]],features:[pt([{provide:uy,useExisting:i}]),bt]})}return i})(),e$=(()=>{class i extends py{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","matHeaderCellDef",""]],features:[pt([{provide:py,useExisting:i}]),bt]})}return i})();var t$=(()=>{class i extends ME{get name(){return this._name}set name(A){this._setNameInput(A)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","matColumnDef",""]],inputs:{name:[0,"matColumnDef","name"]},features:[pt([{provide:ME,useExisting:i}]),bt]})}return i})(),i$=(()=>{class i extends WX{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-mdc-header-cell","mdc-data-table__header-cell"],features:[bt]})}return i})();var n$=(()=>{class i extends ZX{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:[1,"mat-mdc-cell","mdc-data-table__cell"],features:[bt]})}return i})();var o$=(()=>{class i extends fy{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275dir=VA({type:i,selectors:[["","matRowDef",""]],inputs:{columns:[0,"matRowDefColumns","columns"],when:[0,"matRowDefWhen","when"]},features:[pt([{provide:fy,useExisting:i}]),bt]})}return i})();var a$=(()=>{class i extends wR{static \u0275fac=(()=>{let A;return function(n){return(A||(A=Li(i)))(n||i)}})();static \u0275cmp=vA({type:i,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-mdc-row","mdc-data-table__row"],exportAs:["matRow"],features:[pt([{provide:wR,useExisting:i}]),bt],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(t,n){t&1&&dn(0,0)},dependencies:[xp],encapsulation:2})}return i})();var FDA=9007199254740991,dI=class extends Au{_data;_renderData=new gi([]);_filter=new gi("");_internalPageChanges=new ne;_renderChangesSubscription=null;filteredData;get data(){return this._data.value}set data(e){e=Array.isArray(e)?e:[],this._data.next(e),this._renderChangesSubscription||this._filterData(e)}get filter(){return this._filter.value}set filter(e){this._filter.next(e),this._renderChangesSubscription||this._filterData(this.data)}get sort(){return this._sort}set sort(e){this._sort=e,this._updateChangeSubscription()}_sort;get paginator(){return this._paginator}set paginator(e){this._paginator=e,this._updateChangeSubscription()}_paginator;sortingDataAccessor=(e,A)=>{let t=e[A];if(k3(t)){let n=Number(t);return n{let t=A.active,n=A.direction;return!t||n==""?e:e.sort((o,a)=>{let r=this.sortingDataAccessor(o,t),s=this.sortingDataAccessor(a,t),l=typeof r,g=typeof s;l!==g&&(l==="number"&&(r+=""),g==="number"&&(s+=""));let C=0;return r!=null&&s!=null?r>s?C=1:r{let t=A.trim().toLowerCase();return Object.values(e).some(n=>`${n}`.toLowerCase().includes(t))};constructor(e=[]){super(),this._data=new gi(e),this._updateChangeSubscription()}_updateChangeSubscription(){let e=this._sort?Vi(this._sort.sortChange,this._sort.initialized):oe(null),A=this._paginator?Vi(this._paginator.page,this._internalPageChanges,this._paginator.initialized):oe(null),t=this._data,n=Dr([t,this._filter]).pipe(Se(([r])=>this._filterData(r))),o=Dr([n,e]).pipe(Se(([r])=>this._orderData(r))),a=Dr([o,A]).pipe(Se(([r])=>this._pageData(r)));this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=a.subscribe(r=>this._renderData.next(r))}_filterData(e){return this.filteredData=this.filter==null||this.filter===""?e:e.filter(A=>this.filterPredicate(A,this.filter)),this.paginator&&this._updatePaginator(this.filteredData.length),this.filteredData}_orderData(e){return this.sort?this.sortData(e.slice(),this.sort):e}_pageData(e){if(!this.paginator)return e;let A=this.paginator.pageIndex*this.paginator.pageSize;return e.slice(A,A+this.paginator.pageSize)}_updatePaginator(e){Promise.resolve().then(()=>{let A=this.paginator;if(A&&(A.length=e,A.pageIndex>0)){let t=Math.ceil(A.length/A.pageSize)-1||0,n=Math.min(A.pageIndex,t);n!==A.pageIndex&&(A.pageIndex=n,this._internalPageChanges.next())}})}connect(){return this._renderChangesSubscription||this._updateChangeSubscription(),this._renderData}disconnect(){this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=null}};var SE=[{metricName:"tool_trajectory_avg_score",threshold:1},{metricName:"response_match_score",threshold:.7}];var my="0123456789abcdef",wy=class i{constructor(e){this.bytes=e}static ofInner(e){if(e.length!==16)throw new TypeError("not 128-bit length");return new i(e)}static fromFieldsV7(e,A,t,n){if(!Number.isInteger(e)||!Number.isInteger(A)||!Number.isInteger(t)||!Number.isInteger(n)||e<0||A<0||t<0||n<0||e>0xffffffffffff||A>4095||t>1073741823||n>4294967295)throw new RangeError("invalid field value");let o=new Uint8Array(16);return o[0]=e/2**40,o[1]=e/2**32,o[2]=e/2**24,o[3]=e/2**16,o[4]=e/2**8,o[5]=e,o[6]=112|A>>>8,o[7]=A,o[8]=128|t>>>24,o[9]=t>>>16,o[10]=t>>>8,o[11]=t,o[12]=n>>>24,o[13]=n>>>16,o[14]=n>>>8,o[15]=n,new i(o)}static parse(e){var A,t,n,o;let a;switch(e.length){case 32:a=(A=/^[0-9a-f]{32}$/i.exec(e))===null||A===void 0?void 0:A[0];break;case 36:a=(t=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(e))===null||t===void 0?void 0:t.slice(1,6).join("");break;case 38:a=(n=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(e))===null||n===void 0?void 0:n.slice(1,6).join("");break;case 45:a=(o=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(e))===null||o===void 0?void 0:o.slice(1,6).join("");break;default:break}if(a){let r=new Uint8Array(16);for(let s=0;s<16;s+=4){let l=parseInt(a.substring(2*s,2*s+8),16);r[s+0]=l>>>24,r[s+1]=l>>>16,r[s+2]=l>>>8,r[s+3]=l}return new i(r)}else throw new SyntaxError("could not parse UUID string")}toString(){let e="";for(let A=0;A>>4),e+=my.charAt(this.bytes[A]&15),(A===3||A===5||A===7||A===9)&&(e+="-");return e}toHex(){let e="";for(let A=0;A>>4),e+=my.charAt(this.bytes[A]&15);return e}toJSON(){return this.toString()}getVariant(){let e=this.bytes[8]>>>4;if(e<0)throw new Error("unreachable");if(e<=7)return this.bytes.every(A=>A===0)?"NIL":"VAR_0";if(e<=11)return"VAR_10";if(e<=13)return"VAR_110";if(e<=15)return this.bytes.every(A=>A===255)?"MAX":"VAR_RESERVED";throw new Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new i(this.bytes.slice(0))}equals(e){return this.compareTo(e)===0}compareTo(e){for(let A=0;A<16;A++){let t=this.bytes[A]-e.bytes[A];if(t!==0)return Math.sign(t)}return 0}},SR=class{constructor(e){this.timestamp_biased=0,this.counter=0,this.random=e??LDA()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(e,A){let t=this.generateOrAbortCore(e,A);return t===void 0&&(this.timestamp_biased=0,t=this.generateOrAbortCore(e,A)),t}generateOrAbortCore(e,A){if(!Number.isInteger(e)||e<0||e>0xffffffffffff)throw new RangeError("`unixTsMs` must be a 48-bit unsigned integer");if(A<0||A>0xffffffffffff)throw new RangeError("`rollbackAllowance` out of reasonable range");if(e++,e>this.timestamp_biased)this.timestamp_biased=e,this.resetCounter();else if(e+A>=this.timestamp_biased)this.counter++,this.counter>4398046511103&&(this.timestamp_biased++,this.resetCounter());else return;return wy.fromFieldsV7(this.timestamp_biased-1,Math.trunc(this.counter/2**30),this.counter&2**30-1,this.random.nextUint32())}resetCounter(){this.counter=this.random.nextUint32()*1024+(this.random.nextUint32()&1023)}generateV4(){let e=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return e[6]=64|e[6]>>>4,e[8]=128|e[8]>>>2,wy.ofInner(e)}},LDA=()=>{if(typeof crypto<"u"&&typeof crypto.getRandomValues<"u")return new kR;if(typeof UUIDV7_DENY_WEAK_RNG<"u"&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");return{nextUint32:()=>Math.trunc(Math.random()*65536)*65536+Math.trunc(Math.random()*65536)}},kR=class{constructor(){this.buffer=new Uint32Array(8),this.cursor=65535}nextUint32(){return this.cursor>=this.buffer.length&&(crypto.getRandomValues(this.buffer),this.cursor=0),this.buffer[this.cursor++]}},r$;var yy=()=>GDA().toString(),GDA=()=>(r$||(r$=new SR)).generateV4();function KDA(i,e){i&1&&(I(0,"div",1),lA(1,"mat-progress-spinner",6),h()),i&2&&(Q(),H("diameter",28)("strokeWidth",3))}function UDA(i,e){if(i&1){let A=aA();I(0,"mat-form-field",2)(1,"input",7),Ni("ngModelChange",function(n){L(A);let o=p();return wi(o.newCaseId,n)||(o.newCaseId=n),G(n)}),U("keydown.enter",function(){L(A);let n=p();return G(n.createNewEvalCase())}),h()()}if(i&2){let A=p();Q(),Ri("ngModel",A.newCaseId)}}var Dy=class i{evalService=w(A0);data=w(Do);dialogRef=w(zn);newCaseId=this.data.defaultName||"case_"+yy().slice(0,6);loading=!1;constructor(){}createNewEvalCase(){if(!this.newCaseId||this.newCaseId=="")alert("Cannot create eval set with empty id!");else{if(this.data.existingCases?.includes(this.newCaseId)&&!confirm(`Eval case "${this.newCaseId}" already exists. Do you want to overwrite it?`))return;this.loading=!0,this.evalService.addCurrentSession(this.data.appName,this.data.evalSetId,this.newCaseId,this.data.sessionId,this.data.userId).subscribe({next:e=>{this.dialogRef.close(!0)},error:e=>{this.loading=!1,alert("Failed to add session to eval set!")}})}}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-add-eval-session-dialog"]],decls:11,vars:3,consts:[["mat-dialog-title",""],[2,"display","flex","justify-content","center","padding","20px"],[2,"padding-left","20px","padding-right","24px"],["align","end"],["mat-button","","mat-dialog-close","",3,"disabled"],["mat-button","","cdkFocusInitial","",3,"click","disabled"],["mode","indeterminate",3,"diameter","strokeWidth"],["matInput","",3,"ngModelChange","keydown.enter","ngModel"]],template:function(A,t){A&1&&(I(0,"h2",0),D(1,"Add Current Session To Eval Set"),h(),I(2,"mat-dialog-content"),D(3,` Please enter the eval case name -`),h(),T(4,KDA,2,2,"div",1)(5,UDA,2,1,"mat-form-field",2),I(6,"mat-dialog-actions",3)(7,"button",4),D(8,"Cancel"),h(),I(9,"button",5),U("click",function(){return t.createNewEvalCase()}),D(10,"Create"),h()()),A&2&&(Q(4),O(t.loading?4:5),Q(3),H("disabled",t.loading),Q(2),H("disabled",t.loading))},dependencies:[Xo,Ba,Zo,ka,fn,Gn,Kn,Ho,ha,ki,r2,Es],styles:["h2[mat-dialog-title][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-dialog-content[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}button[mat-button][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;caret-color:var(--mdc-dialog-supporting-text-color)!important}"]})};var TDA={allEvalSetsHeader:"Eval sets",createNewEvalSetTooltip:"Create new evaluation set",createNewEvalSetTitle:"Create New Evaluation Set",evalSetDescription:"An evaluation set is a curated collection of evaluation cases, where each case includes input-output examples for assessing agent performance.",createEvalSetButton:"Create Evaluation Set",runEvaluationButton:"Run All",runSelectedEvaluationButton:"Run Selected",viewEvalRunHistoryTooltip:"View eval run history",caseIdHeader:"Case ID",resultHeader:"Result",viewEvalRunResultTooltip:"View eval run result",passStatus:"Pass",failStatus:"Fail",passStatusCaps:"PASS",failStatusCaps:"FAIL",passedSuffix:"Passed",failedSuffix:"Failed",addSessionToSetButtonPrefix:"From Current Session",deleteEvalCaseTooltip:"Delete eval case",editEvalCaseTooltip:"Edit eval case",deleteEvalSetTooltip:"Delete eval set"},s$=new MA("Eval Tab Messages",{factory:()=>TDA});function ODA(i,e){if(i&1){let A=aA();I(0,"mat-form-field",1)(1,"mat-label"),D(2,"Execution Mode"),h(),I(3,"mat-select",6),U("selectionChange",function(n){L(A);let o=p();return G(o.executionMode=n.value)}),I(4,"mat-option",7),D(5,"Live"),h(),I(6,"mat-option",8),D(7,"Replay"),h()()()}if(i&2){let A=p();Q(3),H("value",A.executionMode)}}var vy=class i{evalService=w(A0);featureFlagService=w(Nr);data=w(Do);dialogRef=w(zn);newSetId=this.data.defaultName||"evalset_"+yy().slice(0,6);executionMode="live";isEvalV2Enabled=!1;constructor(){this.featureFlagService.isEvalV2Enabled().subscribe(e=>{this.isEvalV2Enabled=e})}createNewEvalSet(){if(!this.newSetId||this.newSetId=="")alert("Cannot create eval set with empty id!");else{let e=this.isEvalV2Enabled?this.executionMode:void 0;this.evalService.createNewEvalSet(this.data.appName,this.newSetId,e).subscribe(A=>{this.dialogRef.close(!0)})}}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-new-eval-set-dialog-component"]],decls:14,vars:2,consts:[["mat-dialog-title",""],[2,"padding-left","20px","padding-right","24px"],["matInput","",3,"ngModelChange","keydown.enter","ngModel"],["align","end"],["mat-button","","mat-dialog-close",""],["mat-button","","cdkFocusInitial","",3,"click"],[3,"selectionChange","value"],["value","live"],["value","replay"]],template:function(A,t){A&1&&(I(0,"h2",0),D(1,"Create New Eval Set"),h(),I(2,"mat-dialog-content"),D(3,` Please enter the eval set name -`),h(),I(4,"mat-form-field",1)(5,"mat-label"),D(6,"Eval Set Name"),h(),I(7,"input",2),Ni("ngModelChange",function(o){return wi(t.newSetId,o)||(t.newSetId=o),o}),U("keydown.enter",function(){return t.createNewEvalSet()}),h()(),T(8,ODA,8,1,"mat-form-field",1),I(9,"mat-dialog-actions",3)(10,"button",4),D(11,"Cancel"),h(),I(12,"button",5),U("click",function(){return t.createNewEvalSet()}),D(13,"Create"),h()()),A&2&&(Q(7),Ri("ngModel",t.newSetId),Q(),O(t.isEvalV2Enabled?8:-1))},dependencies:[Xo,Ba,Zo,ka,fn,Gn,Kn,Ho,ha,ki,r2,W0,xs,ig,Vr],styles:["h2[mat-dialog-title][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-dialog-content[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}button[mat-button][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;caret-color:var(--mdc-dialog-supporting-text-color)!important}"]})};var JDA=["knob"],YDA=["valueIndicatorContainer"];function HDA(i,e){if(i&1&&(I(0,"div",2,1)(2,"div",5)(3,"span",6),D(4),h()()()),i&2){let A=p();Q(4),nA(A.valueIndicatorText)}}var zDA=["trackActive"],PDA=["*"];function jDA(i,e){if(i&1&&lA(0,"div"),i&2){let A=e.$implicit,t=e.$index,n=p(3);Ao(A===0?"mdc-slider__tick-mark--active":"mdc-slider__tick-mark--inactive"),ft("transform",n._calcTickMarkTransform(t))}}function VDA(i,e){if(i&1&&ke(0,jDA,1,4,"div",8,Ja),i&2){let A=p(2);_e(A._tickMarks)}}function qDA(i,e){if(i&1&&(I(0,"div",6,1),T(2,VDA,2,0),h()),i&2){let A=p();Q(2),O(A._cachedWidth?2:-1)}}function WDA(i,e){if(i&1&&lA(0,"mat-slider-visual-thumb",7),i&2){let A=p();H("discrete",A.discrete)("thumbPosition",1)("valueIndicatorText",A.startValueIndicatorText)}}var Ti=(function(i){return i[i.START=1]="START",i[i.END=2]="END",i})(Ti||{}),kE=(function(i){return i[i.ACTIVE=0]="ACTIVE",i[i.INACTIVE=1]="INACTIVE",i})(kE||{}),_R=new MA("_MatSlider"),l$=new MA("_MatSliderThumb"),ZDA=new MA("_MatSliderRangeThumb"),g$=new MA("_MatSliderVisualThumb");var XDA=(()=>{class i{_cdr=w(Mt);_ngZone=w(We);_slider=w(_R);_renderer=w(on);_listenerCleanups;discrete=!1;thumbPosition;valueIndicatorText;_ripple;_knob;_valueIndicatorContainer;_sliderInput;_sliderInputEl;_hoverRippleRef;_focusRippleRef;_activeRippleRef;_isHovered=!1;_isActive=!1;_isValueIndicatorVisible=!1;_hostElement=w(ce).nativeElement;_platform=w(Qi);constructor(){}ngAfterViewInit(){let A=this._slider._getInput(this.thumbPosition);A&&(this._ripple.radius=24,this._sliderInput=A,this._sliderInputEl=this._sliderInput._hostElement,this._ngZone.runOutsideAngular(()=>{let t=this._sliderInputEl,n=this._renderer;this._listenerCleanups=[n.listen(t,"pointermove",this._onPointerMove),n.listen(t,"pointerdown",this._onDragStart),n.listen(t,"pointerup",this._onDragEnd),n.listen(t,"pointerleave",this._onMouseLeave),n.listen(t,"focus",this._onFocus),n.listen(t,"blur",this._onBlur)]}))}ngOnDestroy(){this._listenerCleanups?.forEach(A=>A())}_onPointerMove=A=>{if(this._sliderInput._isFocused)return;let t=this._hostElement.getBoundingClientRect(),n=this._slider._isCursorOnSliderThumb(A,t);this._isHovered=n,n?this._showHoverRipple():this._hideRipple(this._hoverRippleRef)};_onMouseLeave=()=>{this._isHovered=!1,this._hideRipple(this._hoverRippleRef)};_onFocus=()=>{this._hideRipple(this._hoverRippleRef),this._showFocusRipple(),this._hostElement.classList.add("mdc-slider__thumb--focused")};_onBlur=()=>{this._isActive||this._hideRipple(this._focusRippleRef),this._isHovered&&this._showHoverRipple(),this._hostElement.classList.remove("mdc-slider__thumb--focused")};_onDragStart=A=>{A.button===0&&(this._isActive=!0,this._showActiveRipple())};_onDragEnd=()=>{this._isActive=!1,this._hideRipple(this._activeRippleRef),this._sliderInput._isFocused||this._hideRipple(this._focusRippleRef),this._platform.SAFARI&&this._showHoverRipple()};_showHoverRipple(){this._isShowingRipple(this._hoverRippleRef)||(this._hoverRippleRef=this._showRipple({enterDuration:0,exitDuration:0}),this._hoverRippleRef?.element.classList.add("mat-mdc-slider-hover-ripple"))}_showFocusRipple(){this._isShowingRipple(this._focusRippleRef)||(this._focusRippleRef=this._showRipple({enterDuration:0,exitDuration:0},!0),this._focusRippleRef?.element.classList.add("mat-mdc-slider-focus-ripple"))}_showActiveRipple(){this._isShowingRipple(this._activeRippleRef)||(this._activeRippleRef=this._showRipple({enterDuration:225,exitDuration:400}),this._activeRippleRef?.element.classList.add("mat-mdc-slider-active-ripple"))}_isShowingRipple(A){return A?.state===_s.FADING_IN||A?.state===_s.VISIBLE}_showRipple(A,t){if(!this._slider.disabled&&(this._showValueIndicator(),this._slider._isRange&&this._slider._getThumb(this.thumbPosition===Ti.START?Ti.END:Ti.START)._showValueIndicator(),!(this._slider._globalRippleOptions?.disabled&&!t)))return this._ripple.launch({animation:this._slider._noopAnimations?{enterDuration:0,exitDuration:0}:A,centered:!0,persistent:!0})}_hideRipple(A){if(A?.fadeOut(),this._isShowingAnyRipple())return;this._slider._isRange||this._hideValueIndicator();let t=this._getSibling();t._isShowingAnyRipple()||(this._hideValueIndicator(),t._hideValueIndicator())}_showValueIndicator(){this._hostElement.classList.add("mdc-slider__thumb--with-indicator")}_hideValueIndicator(){this._hostElement.classList.remove("mdc-slider__thumb--with-indicator")}_getSibling(){return this._slider._getThumb(this.thumbPosition===Ti.START?Ti.END:Ti.START)}_getValueIndicatorContainer(){return this._valueIndicatorContainer?.nativeElement}_getKnob(){return this._knob.nativeElement}_isShowingAnyRipple(){return this._isShowingRipple(this._hoverRippleRef)||this._isShowingRipple(this._focusRippleRef)||this._isShowingRipple(this._activeRippleRef)}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=vA({type:i,selectors:[["mat-slider-visual-thumb"]],viewQuery:function(t,n){if(t&1&&Wt(Cs,5)(JDA,5)(YDA,5),t&2){let o;se(o=le())&&(n._ripple=o.first),se(o=le())&&(n._knob=o.first),se(o=le())&&(n._valueIndicatorContainer=o.first)}},hostAttrs:[1,"mdc-slider__thumb","mat-mdc-slider-visual-thumb"],inputs:{discrete:"discrete",thumbPosition:"thumbPosition",valueIndicatorText:"valueIndicatorText"},features:[pt([{provide:g$,useExisting:i}])],decls:4,vars:2,consts:[["knob",""],["valueIndicatorContainer",""],[1,"mdc-slider__value-indicator-container"],[1,"mdc-slider__thumb-knob"],["matRipple","",1,"mat-focus-indicator",3,"matRippleDisabled"],[1,"mdc-slider__value-indicator"],[1,"mdc-slider__value-indicator-text"]],template:function(t,n){t&1&&(T(0,HDA,5,1,"div",2),lA(1,"div",3,0)(3,"div",4)),t&2&&(O(n.discrete?0:-1),Q(3),H("matRippleDisabled",!0))},dependencies:[Cs],styles:[`.mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}.mat-mdc-slider .mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--active,.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--inactive{position:absolute;left:2px} -`],encapsulation:2,changeDetection:0})}return i})(),c$=(()=>{class i{_ngZone=w(We);_cdr=w(Mt);_elementRef=w(ce);_dir=w(No,{optional:!0});_globalRippleOptions=w($C,{optional:!0});_trackActive;_thumbs;_input;_inputs;get disabled(){return this._disabled}set disabled(A){this._disabled=A;let t=this._getInput(Ti.END),n=this._getInput(Ti.START);t&&(t.disabled=this._disabled),n&&(n.disabled=this._disabled)}_disabled=!1;get discrete(){return this._discrete}set discrete(A){this._discrete=A,this._updateValueIndicatorUIs()}_discrete=!1;get showTickMarks(){return this._showTickMarks}set showTickMarks(A){this._showTickMarks=A,this._hasViewInitialized&&(this._updateTickMarkUI(),this._updateTickMarkTrackUI())}_showTickMarks=!1;get min(){return this._min}set min(A){let t=A==null||isNaN(A)?this._min:A;this._min!==t&&this._updateMin(t)}_min=0;color;disableRipple=!1;_updateMin(A){let t=this._min;this._min=A,this._isRange?this._updateMinRange({old:t,new:A}):this._updateMinNonRange(A),this._onMinMaxOrStepChange()}_updateMinRange(A){let t=this._getInput(Ti.END),n=this._getInput(Ti.START),o=t.value,a=n.value;n.min=A.new,t.min=Math.max(A.new,n.value),n.max=Math.min(t.max,t.value),n._updateWidthInactive(),t._updateWidthInactive(),A.newA.old?this._onTranslateXChangeBySideEffect(n,t):this._onTranslateXChangeBySideEffect(t,n),o!==t.value&&this._onValueChange(t),a!==n.value&&this._onValueChange(n)}_updateMaxNonRange(A){let t=this._getInput(Ti.END);if(t){let n=t.value;t.max=A,t._updateThumbUIByValue(),this._updateTrackUI(t),n!==t.value&&this._onValueChange(t)}}get step(){return this._step}set step(A){let t=isNaN(A)?this._step:A;this._step!==t&&this._updateStep(t)}_step=1;_updateStep(A){this._step=A,this._isRange?this._updateStepRange():this._updateStepNonRange(),this._onMinMaxOrStepChange()}_updateStepRange(){let A=this._getInput(Ti.END),t=this._getInput(Ti.START),n=A.value,o=t.value,a=t.value;A.min=this._min,t.max=this._max,A.step=this._step,t.step=this._step,this._platform.SAFARI&&(A.value=A.value,t.value=t.value),A.min=Math.max(this._min,t.value),t.max=Math.min(this._max,A.value),t._updateWidthInactive(),A._updateWidthInactive(),A.value`${A}`;_tickMarks;_noopAnimations=In();_dirChangeSubscription;_resizeObserver=null;_cachedWidth;_cachedLeft;_rippleRadius=24;startValueIndicatorText="";endValueIndicatorText="";_endThumbTransform;_startThumbTransform;_isRange=!1;_isRtl=!1;_hasViewInitialized=!1;_tickMarkTrackWidth=0;_hasAnimation=!1;_resizeTimer=null;_platform=w(Qi);constructor(){w(Eo).load(Qr),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>this._onDirChange()),this._isRtl=this._dir.value==="rtl")}_knobRadius=8;_inputPadding;ngAfterViewInit(){this._platform.isBrowser&&this._updateDimensions();let A=this._getInput(Ti.END),t=this._getInput(Ti.START);this._isRange=!!A&&!!t,this._cdr.detectChanges();let n=this._getThumb(Ti.END);this._rippleRadius=n._ripple.radius,this._inputPadding=this._rippleRadius-this._knobRadius,this._isRange?this._initUIRange(A,t):this._initUINonRange(A),this._updateTrackUI(A),this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._observeHostResize(),this._cdr.detectChanges()}_initUINonRange(A){A.initProps(),A.initUI(),this._updateValueIndicatorUI(A),this._hasViewInitialized=!0,A._updateThumbUIByValue()}_initUIRange(A,t){A.initProps(),A.initUI(),t.initProps(),t.initUI(),A._updateMinMax(),t._updateMinMax(),A._updateStaticStyles(),t._updateStaticStyles(),this._updateValueIndicatorUIs(),this._hasViewInitialized=!0,A._updateThumbUIByValue(),t._updateThumbUIByValue()}ngOnDestroy(){this._dirChangeSubscription?.unsubscribe(),this._resizeObserver?.disconnect(),this._resizeObserver=null}_onDirChange(){this._isRtl=this._dir?.value==="rtl",this._isRange?this._onDirChangeRange():this._onDirChangeNonRange(),this._updateTickMarkUI()}_onDirChangeRange(){let A=this._getInput(Ti.END),t=this._getInput(Ti.START);A._setIsLeftThumb(),t._setIsLeftThumb(),A.translateX=A._calcTranslateXByValue(),t.translateX=t._calcTranslateXByValue(),A._updateStaticStyles(),t._updateStaticStyles(),A._updateWidthInactive(),t._updateWidthInactive(),A._updateThumbUIByValue(),t._updateThumbUIByValue()}_onDirChangeNonRange(){this._getInput(Ti.END)._updateThumbUIByValue()}_observeHostResize(){typeof ResizeObserver>"u"||!ResizeObserver||this._ngZone.runOutsideAngular(()=>{this._resizeObserver=new ResizeObserver(()=>{this._isActive()||(this._resizeTimer&&clearTimeout(this._resizeTimer),this._onResize())}),this._resizeObserver.observe(this._elementRef.nativeElement)})}_isActive(){return this._getThumb(Ti.START)._isActive||this._getThumb(Ti.END)._isActive}_getValue(A=Ti.END){let t=this._getInput(A);return t?t.value:this.min}_skipUpdate(){return!!(this._getInput(Ti.START)?._skipUIUpdate||this._getInput(Ti.END)?._skipUIUpdate)}_updateDimensions(){this._cachedWidth=this._elementRef.nativeElement.offsetWidth,this._cachedLeft=this._elementRef.nativeElement.getBoundingClientRect().left}_setTrackActiveStyles(A){let t=this._trackActive.nativeElement.style;t.left=A.left,t.right=A.right,t.transformOrigin=A.transformOrigin,t.transform=A.transform}_calcTickMarkTransform(A){let t=A*(this._tickMarkTrackWidth/(this._tickMarks.length-1));return`translateX(${this._isRtl?this._cachedWidth-6-t:t}px)`}_onTranslateXChange(A){this._hasViewInitialized&&(this._updateThumbUI(A),this._updateTrackUI(A),this._updateOverlappingThumbUI(A))}_onTranslateXChangeBySideEffect(A,t){this._hasViewInitialized&&(A._updateThumbUIByValue(),t._updateThumbUIByValue())}_onValueChange(A){this._hasViewInitialized&&(this._updateValueIndicatorUI(A),this._updateTickMarkUI(),this._cdr.detectChanges())}_onMinMaxOrStepChange(){this._hasViewInitialized&&(this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.markForCheck())}_onResize(){if(this._hasViewInitialized){if(this._updateDimensions(),this._isRange){let A=this._getInput(Ti.END),t=this._getInput(Ti.START);A._updateThumbUIByValue(),t._updateThumbUIByValue(),A._updateStaticStyles(),t._updateStaticStyles(),A._updateMinMax(),t._updateMinMax(),A._updateWidthInactive(),t._updateWidthInactive()}else{let A=this._getInput(Ti.END);A&&A._updateThumbUIByValue()}this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.detectChanges()}}_thumbsOverlap=!1;_areThumbsOverlapping(){let A=this._getInput(Ti.START),t=this._getInput(Ti.END);return!A||!t?!1:t.translateX-A.translateX<20}_updateOverlappingThumbClassNames(A){let t=A.getSibling(),n=this._getThumb(A.thumbPosition);this._getThumb(t.thumbPosition)._hostElement.classList.remove("mdc-slider__thumb--top"),n._hostElement.classList.toggle("mdc-slider__thumb--top",this._thumbsOverlap)}_updateOverlappingThumbUI(A){!this._isRange||this._skipUpdate()||this._thumbsOverlap!==this._areThumbsOverlapping()&&(this._thumbsOverlap=!this._thumbsOverlap,this._updateOverlappingThumbClassNames(A))}_updateThumbUI(A){if(this._skipUpdate())return;let t=this._getThumb(A.thumbPosition===Ti.END?Ti.END:Ti.START);t._hostElement.style.transform=`translateX(${A.translateX}px)`}_updateValueIndicatorUI(A){if(this._skipUpdate())return;let t=this.displayWith(A.value);if(this._hasViewInitialized?A._valuetext.set(t):A._hostElement.setAttribute("aria-valuetext",t),this.discrete){A.thumbPosition===Ti.START?this.startValueIndicatorText=t:this.endValueIndicatorText=t;let n=this._getThumb(A.thumbPosition);t.length<3?n._hostElement.classList.add("mdc-slider__thumb--short-value"):n._hostElement.classList.remove("mdc-slider__thumb--short-value")}}_updateValueIndicatorUIs(){let A=this._getInput(Ti.END),t=this._getInput(Ti.START);A&&this._updateValueIndicatorUI(A),t&&this._updateValueIndicatorUI(t)}_updateTickMarkTrackUI(){if(!this.showTickMarks||this._skipUpdate())return;let A=this._step&&this._step>0?this._step:1,n=(Math.floor(this.max/A)*A-this.min)/(this.max-this.min);this._tickMarkTrackWidth=(this._cachedWidth-6)*n}_updateTrackUI(A){this._skipUpdate()||(this._isRange?this._updateTrackUIRange(A):this._updateTrackUINonRange(A))}_updateTrackUIRange(A){let t=A.getSibling();if(!t||!this._cachedWidth)return;let n=Math.abs(t.translateX-A.translateX)/this._cachedWidth;A._isLeftThumb&&this._cachedWidth?this._setTrackActiveStyles({left:"auto",right:`${this._cachedWidth-t.translateX}px`,transformOrigin:"right",transform:`scaleX(${n})`}):this._setTrackActiveStyles({left:`${t.translateX}px`,right:"auto",transformOrigin:"left",transform:`scaleX(${n})`})}_updateTrackUINonRange(A){this._isRtl?this._setTrackActiveStyles({left:"auto",right:"0px",transformOrigin:"right",transform:`scaleX(${1-A.fillPercentage})`}):this._setTrackActiveStyles({left:"0px",right:"auto",transformOrigin:"left",transform:`scaleX(${A.fillPercentage})`})}_updateTickMarkUI(){if(!this.showTickMarks||this.step===void 0||this.min===void 0||this.max===void 0)return;let A=this.step>0?this.step:1;this._isRange?this._updateTickMarkUIRange(A):this._updateTickMarkUINonRange(A)}_updateTickMarkUINonRange(A){let t=this._getValue(),n=Math.max(Math.round((t-this.min)/A),0)+1,o=Math.max(Math.round((this.max-t)/A),0)-1;this._isRtl?n++:o++,this._tickMarks=Array(n).fill(kE.ACTIVE).concat(Array(o).fill(kE.INACTIVE))}_updateTickMarkUIRange(A){let t=this._getValue(),n=this._getValue(Ti.START),o=Math.max(Math.round((n-this.min)/A),0),a=Math.max(Math.round((t-n)/A)+1,0),r=Math.max(Math.round((this.max-t)/A),0);this._tickMarks=Array(o).fill(kE.INACTIVE).concat(Array(a).fill(kE.ACTIVE),Array(r).fill(kE.INACTIVE))}_getInput(A){if(A===Ti.END&&this._input)return this._input;if(this._inputs?.length)return A===Ti.START?this._inputs.first:this._inputs.last}_getThumb(A){return A===Ti.END?this._thumbs?.last:this._thumbs?.first}_setTransition(A){this._hasAnimation=!this._platform.IOS&&A&&!this._noopAnimations,this._elementRef.nativeElement.classList.toggle("mat-mdc-slider-with-animation",this._hasAnimation)}_isCursorOnSliderThumb(A,t){let n=t.width/2,o=t.x+n,a=t.y+n,r=A.clientX-o,s=A.clientY-a;return Math.pow(r,2)+Math.pow(s,2)xR),multi:!0};var xR=(()=>{class i{_ngZone=w(We);_elementRef=w(ce);_cdr=w(Mt);_slider=w(_R);_platform=w(Qi);_listenerCleanups;get value(){return yn(this._hostElement.value,0)}set value(A){A===null&&(A=this._getDefaultValue()),A=isNaN(A)?0:A;let t=A+"";if(!this._hasSetInitialValue){this._initialValue=t;return}this._isActive||this._setValue(t)}_setValue(A){this._hostElement.value=A,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges(),this._slider._cdr.markForCheck()}valueChange=new FA;dragStart=new FA;dragEnd=new FA;get translateX(){return this._slider.min>=this._slider.max?(this._translateX=this._tickMarkOffset,this._translateX):(this._translateX===void 0&&(this._translateX=this._calcTranslateXByValue()),this._translateX)}set translateX(A){this._translateX=A}_translateX;thumbPosition=Ti.END;get min(){return yn(this._hostElement.min,0)}set min(A){this._hostElement.min=A+"",this._cdr.detectChanges()}get max(){return yn(this._hostElement.max,0)}set max(A){this._hostElement.max=A+"",this._cdr.detectChanges()}get step(){return yn(this._hostElement.step,0)}set step(A){this._hostElement.step=A+"",this._cdr.detectChanges()}get disabled(){return Qe(this._hostElement.disabled)}set disabled(A){this._hostElement.disabled=A,this._cdr.detectChanges(),this._slider.disabled!==this.disabled&&(this._slider.disabled=this.disabled)}get percentage(){return this._slider.min>=this._slider.max?this._slider._isRtl?1:0:(this.value-this._slider.min)/(this._slider.max-this._slider.min)}get fillPercentage(){return this._slider._cachedWidth?this._translateX===0?0:this.translateX/this._slider._cachedWidth:this._slider._isRtl?1:0}_hostElement=this._elementRef.nativeElement;_valuetext=mA("");_knobRadius=8;_tickMarkOffset=3;_isActive=!1;_isFocused=!1;_setIsFocused(A){this._isFocused=A}_hasSetInitialValue=!1;_initialValue;_formControl;_destroyed=new ne;_skipUIUpdate=!1;_onChangeFn;_onTouchedFn=()=>{};_isControlInitialized=!1;constructor(){let A=w(on);this._ngZone.runOutsideAngular(()=>{this._listenerCleanups=[A.listen(this._hostElement,"pointerdown",this._onPointerDown.bind(this)),A.listen(this._hostElement,"pointermove",this._onPointerMove.bind(this)),A.listen(this._hostElement,"pointerup",this._onPointerUp.bind(this))]})}ngOnDestroy(){this._listenerCleanups.forEach(A=>A()),this._destroyed.next(),this._destroyed.complete(),this.dragStart.complete(),this.dragEnd.complete()}initProps(){this._updateWidthInactive(),this.disabled!==this._slider.disabled&&(this._slider.disabled=!0),this.step=this._slider.step,this.min=this._slider.min,this.max=this._slider.max,this._initValue()}initUI(){this._updateThumbUIByValue()}_initValue(){this._hasSetInitialValue=!0,this._initialValue===void 0?this.value=this._getDefaultValue():(this._hostElement.value=this._initialValue,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges())}_getDefaultValue(){return this.min}_onBlur(){this._setIsFocused(!1),this._onTouchedFn()}_onFocus(){this._slider._setTransition(!1),this._slider._updateTrackUI(this),this._setIsFocused(!0)}_onChange(){this.valueChange.emit(this.value),this._isActive&&this._updateThumbUIByValue({withAnimation:!0})}_onInput(){this._onChangeFn?.(this.value),(this._slider.step||!this._isActive)&&this._updateThumbUIByValue({withAnimation:!0}),this._slider._onValueChange(this)}_onNgControlValueChange(){(!this._isActive||!this._isFocused)&&(this._slider._onValueChange(this),this._updateThumbUIByValue()),this._slider.disabled=this._formControl.disabled}_onPointerDown(A){if(!(this.disabled||A.button!==0)){if(this._platform.IOS){let t=this._slider._isCursorOnSliderThumb(A,this._slider._getThumb(this.thumbPosition)._hostElement.getBoundingClientRect());this._isActive=t,this._updateWidthActive(),this._slider._updateDimensions();return}this._isActive=!0,this._setIsFocused(!0),this._updateWidthActive(),this._slider._updateDimensions(),this._slider.step||this._updateThumbUIByPointerEvent(A,{withAnimation:!0}),this.disabled||(this._handleValueCorrection(A),this.dragStart.emit({source:this,parent:this._slider,value:this.value}))}}_handleValueCorrection(A){this._skipUIUpdate=!0,setTimeout(()=>{this._skipUIUpdate=!1,this._fixValue(A)},0)}_fixValue(A){let t=A.clientX-this._slider._cachedLeft,n=this._slider._cachedWidth,o=this._slider.step===0?1:this._slider.step,a=Math.floor((this._slider.max-this._slider.min)/o),r=this._slider._isRtl?1-t/n:t/n,l=Math.round(r*a)/a*(this._slider.max-this._slider.min)+this._slider.min,g=Math.round(l/o)*o,C=this.value;if(g===C){this._slider._onValueChange(this),this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(A,{withAnimation:this._slider._hasAnimation});return}this.value=g,this.valueChange.emit(this.value),this._onChangeFn?.(this.value),this._slider._onValueChange(this),this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(A,{withAnimation:this._slider._hasAnimation})}_onPointerMove(A){!this._slider.step&&this._isActive&&this._updateThumbUIByPointerEvent(A)}_onPointerUp(){this._isActive&&(this._isActive=!1,this._platform.SAFARI&&this._setIsFocused(!1),this.dragEnd.emit({source:this,parent:this._slider,value:this.value}),setTimeout(()=>this._updateWidthInactive(),this._platform.IOS?10:0))}_clamp(A){let t=this._tickMarkOffset,n=this._slider._cachedWidth-this._tickMarkOffset;return Math.max(Math.min(A,n),t)}_calcTranslateXByValue(){return this._slider._isRtl?(1-this.percentage)*(this._slider._cachedWidth-this._tickMarkOffset*2)+this._tickMarkOffset:this.percentage*(this._slider._cachedWidth-this._tickMarkOffset*2)+this._tickMarkOffset}_calcTranslateXByPointerEvent(A){return A.clientX-this._slider._cachedLeft}_updateWidthActive(){}_updateWidthInactive(){this._hostElement.style.padding=`0 ${this._slider._inputPadding}px`,this._hostElement.style.width=`calc(100% + ${this._slider._inputPadding-this._tickMarkOffset*2}px)`,this._hostElement.style.left=`-${this._slider._rippleRadius-this._tickMarkOffset}px`}_updateThumbUIByValue(A){this.translateX=this._clamp(this._calcTranslateXByValue()),this._updateThumbUI(A)}_updateThumbUIByPointerEvent(A,t){this.translateX=this._clamp(this._calcTranslateXByPointerEvent(A)),this._updateThumbUI(t)}_updateThumbUI(A){this._slider._setTransition(!!A?.withAnimation),this._slider._onTranslateXChange(this)}writeValue(A){(this._isControlInitialized||A!==null)&&(this.value=A)}registerOnChange(A){this._onChangeFn=A,this._isControlInitialized=!0}registerOnTouched(A){this._onTouchedFn=A}setDisabledState(A){this.disabled=A}focus(){this._hostElement.focus()}blur(){this._hostElement.blur()}static \u0275fac=function(t){return new(t||i)};static \u0275dir=VA({type:i,selectors:[["input","matSliderThumb",""]],hostAttrs:["type","range",1,"mdc-slider__input"],hostVars:1,hostBindings:function(t,n){t&1&&U("change",function(){return n._onChange()})("input",function(){return n._onInput()})("blur",function(){return n._onBlur()})("focus",function(){return n._onFocus()}),t&2&&ie("aria-valuetext",n._valuetext())},inputs:{value:[2,"value","value",yn]},outputs:{valueChange:"valueChange",dragStart:"dragStart",dragEnd:"dragEnd"},exportAs:["matSliderThumb"],features:[pt([$DA,{provide:l$,useExisting:i}])]})}return i})();var Q1=class i{transform(e){if(!e)return"";let A=e.replace(/(_avg_score|_score|avg_score)$/,"");return A=A.replace(/_/g," "),A.split(" ").map(t=>t.charAt(0).toUpperCase()+t.slice(1).toLowerCase()).join(" ")}static \u0275fac=function(A){return new(A||i)};static \u0275pipe=KD({name:"formatMetricName",type:i,pure:!0})};function AvA(i,e){if(i&1&&(I(0,"div",9)(1,"div",10)(2,"mat-checkbox",11)(3,"div",12)(4,"span",13),D(5),mt(6,"formatMetricName"),h(),I(7,"span",14),D(8),h()()(),I(9,"div",15)(10,"div",16)(11,"span",17),D(12,"Threshold"),h(),I(13,"div",18)(14,"mat-slider",19),lA(15,"input",20),h(),I(16,"span",21),D(17),h()()()()()()),i&2){let A,t=e.$implicit,n=p(2);Q(2),H("formControlName",t.metricName+"_selected"),Q(2),H("matTooltip",t.metricName),Q(),nA(Ft(6,10,t.metricName)),Q(3),nA(t.description),Q(),ft("visibility",(A=n.evalForm.get(t.metricName+"_selected"))!=null&&A.value?"visible":"hidden"),Q(5),H("min",t.metricValueInfo.interval.minValue)("max",t.metricValueInfo.interval.maxValue),Q(),H("formControlName",t.metricName+"_threshold"),Q(2),Ee(" ",n.evalForm.controls[t.metricName+"_threshold"].value," ")}}function evA(i,e){if(i&1&&(I(0,"div"),kt(1,AvA,18,12,"div",8),h()),i&2){let A=p();Q(),H("ngForOf",A.metricsInfo)}}function tvA(i,e){if(i&1&&(I(0,"div")(1,"div",9)(2,"div",10)(3,"mat-checkbox",22)(4,"span",13),D(5),mt(6,"formatMetricName"),h()(),I(7,"div",15)(8,"div",16)(9,"span",17),D(10,"Threshold"),h(),I(11,"div",18)(12,"mat-slider",23),lA(13,"input",24),h(),I(14,"span",21),D(15),h()()()()()(),I(16,"div",9)(17,"div",10)(18,"mat-checkbox",25)(19,"span",13),D(20),mt(21,"formatMetricName"),h()(),I(22,"div",15)(23,"div",16)(24,"span",17),D(25,"Threshold"),h(),I(26,"div",18)(27,"mat-slider",23),lA(28,"input",26),h(),I(29,"span",21),D(30),h()()()()()()()),i&2){let A,t,n=p();Q(4),H("matTooltip","tool_trajectory_avg_score"),Q(),nA(Ft(6,10,"tool_trajectory_avg_score")),Q(2),ft("visibility",(A=n.evalForm.get("tool_trajectory_avg_score_selected"))!=null&&A.value?"visible":"hidden"),Q(8),Ee(" ",n.evalForm.controls.tool_trajectory_avg_score_threshold.value," "),Q(4),H("matTooltip","response_match_score"),Q(),nA(Ft(21,12,"response_match_score")),Q(2),ft("visibility",(t=n.evalForm.get("response_match_score_selected"))!=null&&t.value?"visible":"hidden"),Q(8),Ee(" ",n.evalForm.controls.response_match_score_threshold.value," ")}}var by=class i{constructor(e,A,t){this.dialogRef=e;this.fb=A;this.data=t;this.evalMetrics=this.data.evalMetrics||[],this.metricsInfo=this.data.metricsInfo||[],this.evalForm=this.fb.group({}),this.metricsInfo.forEach(n=>{let o=this.evalMetrics.find(l=>l.metricName===n.metricName),a=!!o,r=o?o.threshold:this.getDefaultThreshold(n);this.evalForm.addControl(`${n.metricName}_selected`,this.fb.control(a));let s=n.metricValueInfo.interval;this.evalForm.addControl(`${n.metricName}_threshold`,this.fb.control(r,[js.required,js.min(s.minValue),js.max(s.maxValue)]))}),this.metricsInfo.length===0&&this.addDefaultControls()}evalForm;evalMetrics=[];metricsInfo=[];addDefaultControls(){[{name:"tool_trajectory_avg_score",min:0,max:1,default:1},{name:"response_match_score",min:0,max:1,default:.7}].forEach(A=>{let t=this.evalMetrics.find(a=>a.metricName===A.name),n=!!t,o=t?t.threshold:A.default;this.evalForm.addControl(`${A.name}_selected`,this.fb.control(n)),this.evalForm.addControl(`${A.name}_threshold`,this.fb.control(o,[js.required,js.min(A.min),js.max(A.max)]))})}getDefaultThreshold(e){return e.metricName==="tool_trajectory_avg_score"?1:e.metricName==="response_match_score"?.7:e.metricValueInfo.interval.maxValue}onReset(){this.metricsInfo.forEach(e=>{let A=SE.find(o=>o.metricName===e.metricName),t=!!A,n=A?A.threshold:this.getDefaultThreshold(e);this.evalForm.get(`${e.metricName}_selected`)?.setValue(t),this.evalForm.get(`${e.metricName}_threshold`)?.setValue(n)}),this.metricsInfo.length===0&&SE.forEach(e=>{this.evalForm.get(`${e.metricName}_selected`)?.setValue(!0),this.evalForm.get(`${e.metricName}_threshold`)?.setValue(e.threshold)})}onStart(){if(this.evalForm.valid){let e=[];this.metricsInfo.length>0?this.metricsInfo.forEach(A=>{if(this.evalForm.get(`${A.metricName}_selected`)?.value){let n=this.evalForm.get(`${A.metricName}_threshold`)?.value;e.push({metricName:A.metricName,threshold:n})}}):["tool_trajectory_avg_score","response_match_score"].forEach(t=>{if(this.evalForm.get(`${t}_selected`)?.value){let o=this.evalForm.get(`${t}_threshold`)?.value;e.push({metricName:t,threshold:o})}}),this.dialogRef.close(e)}}onCancel(){this.dialogRef.close(null)}static \u0275fac=function(A){return new(A||i)(st(zn),st(rL),st(Do))};static \u0275cmp=vA({type:i,selectors:[["app-run-eval-config-dialog"]],decls:14,vars:3,consts:[[1,"dialog-container"],["mat-dialog-title","",1,"dialog-title"],[1,"eval-form",3,"formGroup"],[4,"ngIf"],["align","end",1,"dialog-actions"],["mat-button","",1,"reset-button",3,"click"],["mat-button","",1,"cancel-button",3,"click"],["mat-button","",1,"save-button",3,"click"],["class","metric-container",4,"ngFor","ngForOf"],[1,"metric-container"],[1,"metric-header"],[3,"formControlName"],[2,"display","flex","flex-direction","column"],[1,"metric-title",3,"matTooltip"],[1,"metric-description"],[1,"metric-slider-container","inline-slider"],[2,"display","flex","flex-direction","column","align-items","flex-start"],[1,"slider-label",2,"margin-right","0","font-size","11px","color","var(--mat-sys-on-surface-variant)"],[2,"display","flex","align-items","center"],["step","0.1","thumbLabel","",1,"threshold-slider",3,"min","max"],["matSliderThumb","",3,"formControlName"],[1,"threshold-value"],["formControlName","tool_trajectory_avg_score_selected"],["min","0","max","1","step","0.1","thumbLabel","",1,"threshold-slider"],["matSliderThumb","","formControlName","tool_trajectory_avg_score_threshold"],["formControlName","response_match_score_selected"],["matSliderThumb","","formControlName","response_match_score_threshold"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"h2",1),D(2,"EVALUATION METRICS"),h(),I(3,"mat-dialog-content")(4,"form",2),kt(5,evA,2,1,"div",3)(6,tvA,31,14,"div",3),h()(),I(7,"mat-dialog-actions",4)(8,"button",5),U("click",function(){return t.onReset()}),D(9,"Reset to Default"),h(),I(10,"button",6),U("click",function(){return t.onCancel()}),D(11,"Cancel"),h(),I(12,"button",7),U("click",function(){return t.onStart()}),D(13,"Start"),h()()()),A&2&&(Q(4),H("formGroup",t.evalForm),Q(),H("ngIf",t.metricsInfo.length>0),Q(),H("ngIf",t.metricsInfo.length===0))},dependencies:[Xo,Ba,fn,oL,Gn,Kn,XF,WC,qC,Cv,c$,xR,ha,ki,ic,li,DI,ql,rn,Q1],styles:[".dialog-container[_ngcontent-%COMP%]{border-radius:12px;padding:12px;width:680px;box-shadow:0 8px 16px var(--run-eval-config-dialog-container-box-shadow-color)}.metric-container[_ngcontent-%COMP%]{margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid var(--run-eval-config-dialog-border-color, #e0e0e0)}.metric-container[_ngcontent-%COMP%]:last-child{border-bottom:none}.metric-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.metric-title[_ngcontent-%COMP%]{font-weight:600;font-size:1em}.metric-description[_ngcontent-%COMP%]{font-size:.85em;color:var(--run-eval-config-dialog-description-color, #666);margin-top:2px;white-space:normal}.metric-slider-container[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:28px}.inline-slider[_ngcontent-%COMP%]{margin-left:20px;flex:1;display:flex;justify-content:flex-end;align-items:center}.slider-label[_ngcontent-%COMP%]{margin-right:10px;font-size:.9em}.threshold-slider[_ngcontent-%COMP%]{max-width:80px;flex:1}.threshold-value[_ngcontent-%COMP%]{margin-left:10px;min-width:30px;text-align:right}h2[mat-dialog-title][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-dialog-content[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}button[mat-button][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}"]})};var Mc=class i{constructor(e,A){this.dialogRef=e;this.data=A}onConfirm(){this.dialogRef.close(!0)}onCancel(){this.dialogRef.close(!1)}static \u0275fac=function(A){return new(A||i)(st(zn),st(Do))};static \u0275cmp=vA({type:i,selectors:[["app-delete-session-dialog"]],decls:11,vars:4,consts:[[1,"confirm-delete-wrapper"],["mat-dialog-title",""],["align","end"],["mat-button","",3,"click"],["mat-button","","cdkFocusInitial","",3,"click"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"h2",1),D(2),h(),I(3,"mat-dialog-content")(4,"p"),D(5),h()(),I(6,"mat-dialog-actions",2)(7,"button",3),U("click",function(){return t.onCancel()}),D(8),h(),I(9,"button",4),U("click",function(){return t.onConfirm()}),D(10),h()()()),A&2&&(Q(2),nA(t.data.title),Q(3),nA(t.data.message),Q(3),nA(t.data.cancelButtonText),Q(2),nA(t.data.confirmButtonText))},dependencies:[Xo,Ba,ha,ki],encapsulation:2})};var ivA=["app-info-table",""],nvA=["*"];function ovA(i,e){if(i&1&&(Ln(0,"thead")(1,"tr")(2,"th",2),D(3),Xn()()()),i&2){let A=p();Q(3),nA(A.title())}}var u1=class i{title=ve();static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["table","app-info-table",""]],hostAttrs:[1,"info-table"],inputs:{title:[1,"title"]},attrs:ivA,ngContentSelectors:nvA,decls:6,vars:1,consts:[[1,"label-col"],[1,"value-col"],["colspan","2"]],template:function(A,t){A&1&&(Ot(),Ln(0,"colgroup"),$n(1,"col",0)(2,"col",1),Xn(),T(3,ovA,4,1,"thead"),Ln(4,"tbody"),Ze(5),Xn()),A&2&&(Q(3),O(t.title()?3:-1))},styles:["[_nghost-%COMP%]{display:table;width:100%;border-collapse:separate;border-spacing:0;font-family:inherit;font-size:13px;background-color:var(--mat-sys-surface);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;overflow:hidden;table-layout:fixed}[_nghost-%COMP%] thead[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-low)}[_nghost-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{text-align:left;padding:12px 16px;font-weight:500;color:var(--mat-sys-on-surface);border-bottom:1px solid var(--mat-sys-outline-variant)}[_nghost-%COMP%] .label-col[_ngcontent-%COMP%]{width:40%}[_nghost-%COMP%] tbody tr td{padding:10px 16px;color:var(--mat-sys-on-surface-variant);border-bottom:1px solid var(--mat-sys-outline-variant);overflow:hidden;overflow-wrap:anywhere}[_nghost-%COMP%] tbody tr td:first-child{font-weight:500;color:var(--mat-sys-on-surface);background-color:var(--mat-sys-surface-container-lowest);border-right:1px solid var(--mat-sys-outline-variant)}[_nghost-%COMP%] tbody tr:last-child td{border-bottom:none}"]})};var C$=(i,e)=>e.timestamp,avA=(i,e)=>e.evalId;function rvA(i,e){i&1&&(I(0,"span",3),D(1,"Eval Sets"),h())}function svA(i,e){if(i&1){let A=aA();I(0,"span",9),U("click",function(){L(A);let n=p(2);return G(n.goToEvalSet())}),D(1),h()}if(i&2){let A=p(2);Q(),nA(A.selectedEvalSet())}}function lvA(i,e){if(i&1&&(I(0,"span",8),D(1),h()),i&2){let A=p(2);Q(),nA(A.selectedEvalSet())}}function gvA(i,e){if(i&1&&(I(0,"span",6),D(1,">"),h(),T(2,svA,2,1,"span",7)(3,lvA,2,1,"span",8)),i&2){let A=p();Q(2),O(A.selectedEvalTab()==="history"||A.selectedHistoryRun()||A.selectedEvalCase()?2:3)}}function cvA(i,e){i&1&&(I(0,"span",6),D(1,">"),h(),I(2,"span",10),D(3,"Eval Cases"),h())}function CvA(i,e){i&1&&(I(0,"span",6),D(1,">"),h(),I(2,"span",11),D(3,"Runs"),h())}function dvA(i,e){if(i&1&&(I(0,"span",6),D(1,">"),h(),I(2,"span",12),D(3),h()),i&2){let A=p();Q(3),nA(A.formatTimestamp(A.selectedHistoryRun()))}}function IvA(i,e){if(i&1&&(I(0,"span",6),D(1,">"),h(),I(2,"span",13),D(3),h()),i&2){let A,t=p();Q(3),nA((A=t.selectedEvalCase())==null?null:A.evalId)}}function BvA(i,e){if(i&1){let A=aA();I(0,"button",14),U("click",function(){L(A);let n=p();return G(n.openNewEvalSetDialog())}),I(1,"mat-icon"),D(2,"add"),h(),D(3," New "),h(),I(4,"button",15),U("click",function(){L(A);let n=p();return G(n.getEvalSet())}),I(5,"mat-icon"),D(6,"refresh"),h()()}if(i&2){let A=p();H("matTooltip",A.i18n.createNewEvalSetTooltip)}}function hvA(i,e){}function EvA(i,e){if(i&1){let A=aA();I(0,"div")(1,"div",16)(2,"div",17),D(3),h(),I(4,"div",18),D(5),h(),I(6,"div",19),U("click",function(){L(A);let n=p();return G(n.openNewEvalSetDialog())}),D(7),h()()()}if(i&2){let A=p();Q(3),Ee(" ",A.i18n.createNewEvalSetTitle," "),Q(2),Ee(" ",A.i18n.evalSetDescription," "),Q(2),Ee(" ",A.i18n.createEvalSetButton," ")}}function QvA(i,e){if(i&1){let A=aA();I(0,"div",21),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.selectEvalSet(n))}),I(1,"div",22)(2,"span",23),D(3,"folder"),h(),I(4,"div",24),D(5),h()(),I(6,"div",25)(7,"button",26),U("click",function(n){let o=L(A).$implicit,a=p(2);return G(a.confirmDeleteEvalSet(n,o))}),I(8,"mat-icon"),D(9,"delete"),h()()()()}if(i&2){let A=e.$implicit,t=p(2);Q(5),nA(A),Q(2),H("matTooltip",t.i18n.deleteEvalSetTooltip)}}function uvA(i,e){if(i&1&&(I(0,"div"),ke(1,QvA,10,2,"div",20,ni),h()),i&2){let A=p();Q(),_e(A.evalsets)}}function pvA(i,e){i&1&&(I(0,"div",33),lA(1,"mat-progress-spinner",34),h()),i&2&&(Q(),H("diameter",28)("strokeWidth",3))}function fvA(i,e){if(i&1&&(I(0,"tr")(1,"td"),D(2,"Execution Mode"),h(),I(3,"td")(4,"span",37),D(5),h()()()),i&2){let A,t,n=p(4);Q(4),H("matTooltip",((A=n.currentEvalSet())==null?null:A.model_execution_mode)||"N/A"),Q(),nA(((t=n.currentEvalSet())==null?null:t.model_execution_mode)||"N/A")}}function mvA(i,e){if(i&1&&(I(0,"div",35)(1,"table",36)(2,"tr")(3,"td"),D(4,"Name"),h(),I(5,"td")(6,"span",37),D(7),h()()(),T(8,fvA,6,2,"tr"),I(9,"tr")(10,"td"),D(11,"Total Cases"),h(),I(12,"td")(13,"span",37),D(14),h()()(),I(15,"tr")(16,"td"),D(17,"Total Runs"),h(),I(18,"td")(19,"span",37),D(20),h()()()()()),i&2){let A=p(3);Q(6),H("matTooltip",A.selectedEvalSet()),Q(),nA(A.selectedEvalSet()),Q(),O(A.isEvalV2Enabled()?8:-1),Q(5),H("matTooltip",A.evalCases.length.toString()),Q(),nA(A.evalCases.length),Q(5),H("matTooltip",A.getEvalHistoryOfCurrentSetSorted().length.toString()),Q(),nA(A.getEvalHistoryOfCurrentSetSorted().length)}}function wvA(i,e){i&1&&lA(0,"mat-progress-spinner",42),i&2&&H("diameter",20)}function yvA(i,e){i&1&&(I(0,"mat-icon"),D(1,"play_arrow"),h())}function DvA(i,e){if(i&1){let A=aA();I(0,"div",46),U("click",function(){let n=L(A).$implicit,o=p(6);return G(o.getEvalCase(n))}),I(1,"mat-checkbox",47),U("click",function(n){return n.stopPropagation()})("change",function(n){let o=L(A).$implicit,a=p(6);return G(n?a.selection.toggle(o):null)}),h(),I(2,"div",48),D(3),h(),I(4,"button",49),U("click",function(n){let o=L(A).$implicit,a=p(6);return G(a.requestEditEvalCase(n,o))}),I(5,"mat-icon"),D(6,"edit"),h()(),I(7,"button",26),U("click",function(n){let o=L(A).$implicit,a=p(6);return G(a.confirmDeleteEvalCase(n,o))}),I(8,"mat-icon"),D(9,"delete"),h()()()}if(i&2){let A,t=e.$implicit,n=p(6);_A("selected-row",t===((A=n.selectedEvalCase())==null?null:A.evalId)),Q(),H("checked",n.selection.isSelected(t)),Q(2),Ee(" ",t," "),Q(),H("matTooltip",n.i18n.editEvalCaseTooltip),Q(3),H("matTooltip",n.i18n.deleteEvalCaseTooltip)}}function vvA(i,e){if(i&1&&(I(0,"div",44),ke(1,DvA,10,6,"div",45,ni),h()),i&2){let A=p(5);Q(),_e(A.evalCases)}}function bvA(i,e){if(i&1){let A=aA();I(0,"div",39)(1,"mat-checkbox",40),U("change",function(n){L(A);let o=p(4);return G(n?o.toggleAllRows():null)}),h(),I(2,"button",41),U("click",function(){L(A);let n=p(4);return G(n.openEvalConfigDialog())}),T(3,wvA,1,1,"mat-progress-spinner",42)(4,yvA,2,0,"mat-icon"),D(5),h(),I(6,"button",43),U("click",function(){L(A);let n=p(4);return G(n.openNewEvalCaseDialog())}),I(7,"mat-icon"),D(8,"add"),h(),D(9),h(),lA(10,"span",4),I(11,"button",15),U("click",function(){L(A);let n=p(4);return G(n.listEvalCases())}),I(12,"mat-icon"),D(13,"refresh"),h()()(),T(14,vvA,3,0,"div",44)}if(i&2){let A=p(4);Q(),H("checked",A.selection.hasValue()&&A.isAllSelected())("indeterminate",A.selection.hasValue()&&!A.isAllSelected()),Q(),H("disabled",A.evalCases.length==0||A.loadingMetrics()),Q(),O(A.loadingMetrics()?3:4),Q(2),Ee(" ",A.isAllSelected()||A.selection.isEmpty()?A.i18n.runEvaluationButton:A.i18n.runSelectedEvaluationButton," "),Q(4),Ee(" ",A.i18n.addSessionToSetButtonPrefix," "),Q(5),O(A.evalCases.length>0?14:-1)}}function MvA(i,e){if(i&1){let A=aA();I(0,"div",55),U("click",function(){let n=L(A).$implicit,o=p(5);return G(o.getHistorySession(n.result,n.timestamp))}),I(1,"div",48),D(2),h(),lA(3,"div",4),I(4,"div",56)(5,"span",57),D(6),h()()()}if(i&2){let A=e.$implicit,t=e.$index;p();let n=Ki(7),o=p(4);_A("selected-row",A.timestamp==o.selectedHistoryRun()),Q(2),Ya(" #",n.length-t," ",o.formatTimestamp(A.timestamp)," "),Q(3),H("ngClass",o.isMetricsSucceed(A.result)?"status-card__passed":"status-card__failed"),Q(),Ee(" ",o.getMetricsScore(A.result)," ")}}function SvA(i,e){i&1&&(I(0,"div",54),D(1," No runs found for this case. "),h())}function kvA(i,e){if(i&1&&(I(0,"div",38)(1,"div",50)(2,"h3",51),D(3),h()(),I(4,"h4",52),D(5,"Past Runs"),h(),I(6,"div",44),ro(7),ke(8,MvA,7,6,"div",53,C$),T(10,SvA,2,0,"div",54),h()()),i&2){let A=p(4),t=A.selectedEvalCase();Q(3),Ee("Case: ",t.evalId),Q(4);let n=so(A.caseHistory());Q(),_e(n),Q(2),O(n.length===0?10:-1)}}function _vA(i,e){i&1&&(I(0,"div",16)(1,"div",17),D(2,"No Eval Cases"),h(),I(3,"div",18),D(4,"Add a session to this set to get started."),h()())}function xvA(i,e){if(i&1&&(I(0,"div"),T(1,bvA,15,7)(2,kvA,11,3,"div",38),T(3,_vA,5,0,"div",16),h()),i&2){let A=p(3);Q(),O(A.selectedEvalCase()?2:1),Q(2),O(A.evalCases.length===0?3:-1)}}function RvA(i,e){i&1&&(I(0,"div",16)(1,"div",17),D(2,"No Runs"),h(),I(3,"div",18),D(4,"Run an evaluation to see results here."),h()())}function NvA(i,e){if(i&1){let A=aA();I(0,"div",46),U("click",function(){let n=L(A).$implicit,o=p(6);return G(o.selectedHistoryRun.set(n.timestamp))}),I(1,"div",48),D(2),h(),lA(3,"div",4),I(4,"div",60)(5,"span",61),D(6),h(),I(7,"span",62),D(8,"|"),h(),I(9,"span",63),D(10),h()()()}if(i&2){let A=e.$implicit,t=e.$index;p(3);let n=Ki(0),o=p(3);Q(2),Ya(" #",n.length-t," ",o.formatTimestamp(A.timestamp)," "),Q(4),Ya("",o.getPassCountForCurrentResult(A.evaluationResults.evaluationResults)," ",o.i18n.passStatusCaps),Q(3),ft("color",o.getFailCountForCurrentResult(A.evaluationResults.evaluationResults)===0?"gray":""),Q(),Ya("",o.getFailCountForCurrentResult(A.evaluationResults.evaluationResults)," ",o.i18n.failStatusCaps)}}function FvA(i,e){if(i&1&&(I(0,"div",44),ke(1,NvA,11,8,"div",59,C$),h()),i&2){p(2);let A=Ki(0);Q(),_e(A)}}function LvA(i,e){if(i&1&&(I(0,"span",62),D(1,"|"),h(),I(2,"span",63),D(3),h()),i&2){p(2);let A=Ki(1),t=p(5);Q(3),Ya("",t.getFailCountForCurrentResult(A.evaluationResults)," ",t.i18n.failStatusCaps)}}function GvA(i,e){if(i&1&&(I(0,"span",70)(1,"span",71),D(2),mt(3,"formatMetricName"),h(),D(4,": "),I(5,"span",72),D(6),mt(7,"number"),h()()),i&2){let A=e.$implicit;Q(),H("matTooltip",A.metricName),Q(),nA(Ft(3,3,A.metricName)),Q(4),nA(G0(7,5,A.threshold,"1.2-2"))}}function KvA(i,e){if(i&1&&(I(0,"div",67),ke(1,GvA,8,8,"span",70,ni),h()),i&2){let A=p(7);Q(),_e(A.currentHistoryMetrics())}}function UvA(i,e){if(i&1){let A=aA();I(0,"div",73),U("click",function(){let n=L(A).$implicit;p(2);let o=Ki(0),a=p(5);return G(a.getHistorySession(n,o))}),I(1,"span"),D(2),h(),I(3,"span",74),D(4),h()()}if(i&2){let A=e.$implicit,t=p(7);Q(2),Ee(" ",A.evalId," "),Q(),H("ngClass",t.isMetricsSucceed(A)?"status-card__passed":"status-card__failed"),Q(),Ee(" ",t.getMetricsScore(A)," ")}}function TvA(i,e){if(i&1&&(I(0,"div",64)(1,"div",65)(2,"div",66)(3,"div",60)(4,"span",61),D(5),h(),T(6,LvA,4,2),h(),T(7,KvA,3,0,"div",67),h()()(),I(8,"div",68),ke(9,UvA,5,3,"div",69,avA),h()),i&2){p();let A=Ki(1),t=p(5);Q(5),Ya("",t.getPassCountForCurrentResult(A.evaluationResults)," ",t.i18n.passStatusCaps),Q(),O(t.getFailCountForCurrentResult(A.evaluationResults)>0?6:-1),Q(),O(t.currentHistoryMetrics().length>0?7:-1),Q(2),_e(A.evaluationResults)}}function OvA(i,e){if(i&1&&(ro(0)(1),T(2,TvA,11,4)),i&2){let A=p(5),t=so(A.selectedHistoryRun());Q();let n=so(A.getEvalHistoryOfCurrentSet()[t]);Q(),O(n?2:-1)}}function JvA(i,e){if(i&1&&(I(0,"div",58),T(1,FvA,3,0,"div",44)(2,OvA,3,3),h()),i&2){let A=p(4);Q(),O(A.selectedHistoryRun()?2:1)}}function YvA(i,e){if(i&1&&(ro(0),T(1,RvA,5,0,"div",16)(2,JvA,3,1,"div",58)),i&2){let A=so(p(3).evalHistorySorted());Q(),O(A.length===0?1:2)}}function HvA(i,e){if(i&1&&(T(0,mvA,21,7,"div",35),T(1,xvA,4,2,"div"),T(2,YvA,3,2)),i&2){let A=p(2);O(A.selectedEvalTab()==="info"?0:-1),Q(),O(A.selectedEvalTab()==="cases"?1:-1),Q(),O(A.selectedEvalTab()==="history"?2:-1)}}function zvA(i,e){if(i&1){let A=aA();I(0,"div",5)(1,"div",27)(2,"div",28)(3,"button",29),U("click",function(){L(A);let n=p();return n.selectedEvalTab.set("info"),n.selectedEvalCase.set(null),G(n.selectedHistoryRun.set(null))}),I(4,"mat-icon"),D(5,"info"),h()(),I(6,"button",30),U("click",function(){L(A);let n=p();return n.selectedEvalTab.set("cases"),n.selectedEvalCase.set(null),G(n.selectedHistoryRun.set(null))}),I(7,"mat-icon"),D(8,"list"),h()(),I(9,"button",31),U("click",function(){L(A);let n=p();return n.selectedEvalTab.set("history"),n.selectedEvalCase.set(null),n.selectedHistoryRun.set(null),G(n.getEvaluationResult())}),I(10,"mat-icon"),D(11,"history"),h()()(),I(12,"div",32),T(13,pvA,2,2,"div",33)(14,HvA,3,3),h()()()}if(i&2){let A=p();Q(3),_A("active",A.selectedEvalTab()==="info"),Q(3),_A("active",A.selectedEvalTab()==="cases"),Q(3),_A("active",A.selectedEvalTab()==="history"),Q(4),O(A.evalRunning()?13:14)}}var My=new MA("EVAL_TAB_COMPONENT"),Sc=class i{checkboxes=GN(ic);appName=ve("");userId=ve("");sessionId=ve("");sessionSelected=Si();shouldShowTab=Si();evalNotInstalledMsg=Si();evalCaseSelected=Si();evalSetIdSelected=Si();shouldReturnToSession=Si();editEvalCaseRequested=Si();evalCasesSubject=new gi([]);changeDetectorRef=w(Mt);flagService=w(Nr);i18n=w(s$);displayedColumns=["select","evalId"];evalsets=[];selectedEvalSet=mA("");currentEvalSet=mA(null);evalHistorySorted=ye(()=>{let e=this.appEvaluationResults[this.appName()]?.[this.selectedEvalSet()]||{};return Object.keys(e).sort((t,n)=>n.localeCompare(t)).map(t=>({timestamp:t,evaluationResults:e[t]}))});currentHistoryMetrics=ye(()=>{let e=this.selectedHistoryRun()||this.evalHistorySorted()[0]?.timestamp;if(!e)return this.evalMetrics;let A=this.evalHistorySorted().find(t=>t.timestamp===e);return A?this.getEvalMetrics(A):this.evalMetrics});caseHistory=ye(()=>{let e=this.selectedEvalCase();if(!e)return[];let A=e.evalId,t=this.evalHistorySorted();return console.log("[DEBUG] caseHistory history:",t.map(n=>n.timestamp),"selectedHistoryRun:",this.selectedHistoryRun()),t.map(n=>{let o=n.evaluationResults.evaluationResults.find(a=>a.evalId===A);return{timestamp:n.timestamp,result:o}}).filter(n=>n.result!==void 0)});evalCases=[];selectedEvalCase=mA(null);deletedEvalCaseIndex=-1;dataSource=new dI(this.evalCases);selection=new P0(!0,[]);showEvalHistory=mA(!1);selectedEvalTab=mA("cases");selectedHistoryRun=mA(null);evalRunning=mA(!1);loadingMetrics=mA(!1);evalMetrics=SE;isEvalV2Enabled=mA(!1);currentEvalResultBySet=new Map;dialog=w(Xa);appEvaluationResults={};evalService=w(A0);sessionService=w(tl);constructor(){this.evalCasesSubject.subscribe(e=>{!this.selectedEvalCase()&&this.deletedEvalCaseIndex>=0&&e.length>0?(this.selectNewEvalCase(e),this.deletedEvalCaseIndex=-1):e.length===0&&this.shouldReturnToSession.emit(!0)})}ngOnChanges(e){e.appName&&(this.selectedEvalSet.set(""),this.evalCases=[],this.getEvalSet(),this.getEvaluationResult())}ngOnInit(){this.flagService.isEvalV2Enabled().pipe(oo()).subscribe(A=>this.isEvalV2Enabled.set(A));let e=window.localStorage.getItem("adk_eval_metrics_selection");if(e)try{this.evalMetrics=JSON.parse(e)}catch(A){console.error("Error parsing saved eval metrics",A),this.evalMetrics=SE}}selectNewEvalCase(e){let A=this.deletedEvalCaseIndex;this.deletedEvalCaseIndex===e.length&&(A=0),this.getEvalCase(e[A])}getEvalSet(){this.appName()!==""&&this.evalService.getEvalSets(this.appName()).pipe(aa(e=>e.status===404&&e.statusText==="Not Found"?(this.shouldShowTab.emit(!1),oe(null)):oe([]))).subscribe(e=>{e!==null&&(this.shouldShowTab.emit(!0),this.evalsets=e,this.changeDetectorRef.detectChanges())})}getNextDefaultEvalSetName(){let e=/^eval_set_(\d+)$/,A=0;for(let t of this.evalsets)if(typeof t=="string"){let n=t.match(e);if(n){let o=parseInt(n[1],10);o>A&&(A=o)}}return`eval_set_${A+1}`}openNewEvalSetDialog(){let e=this.getNextDefaultEvalSetName();this.dialog.open(vy,{width:"600px",data:{appName:this.appName(),defaultName:e}}).afterClosed().subscribe(t=>{t&&(this.getEvalSet(),this.changeDetectorRef.detectChanges())})}openNewEvalCaseDialog(){this.sessionId()&&this.sessionService.getSession(this.userId(),this.appName(),this.sessionId()).subscribe(e=>{let t=(e.state?.__session_metadata__?.displayName||this.sessionId()).replace(/ /g,"_").replace(/[^a-zA-Z0-9_-]/g,"");this.dialog.open(Dy,{width:"600px",data:{appName:this.appName(),userId:this.userId(),sessionId:this.sessionId(),evalSetId:this.selectedEvalSet(),defaultName:t,existingCases:this.evalCases}}).afterClosed().subscribe(o=>{o&&(this.listEvalCases(),this.changeDetectorRef.detectChanges())})})}listEvalCases(){this.evalCases=[],this.evalService.listEvalCases(this.appName(),this.selectedEvalSet()).subscribe(e=>{this.evalCases=e,this.dataSource=new dI(this.evalCases),this.evalCasesSubject.next(this.evalCases),this.changeDetectorRef.detectChanges()})}runEval(){this.evalRunning.set(!0),this.evalService.runEval(this.appName(),this.selectedEvalSet(),this.selection.selected.length===0?this.dataSource.data:this.selection.selected,this.evalMetrics).pipe(aa(e=>(e.error?.detail?.includes("not installed")&&this.evalNotInstalledMsg.emit(e.error.detail),oe([])))).subscribe(e=>{this.currentEvalResultBySet.set(this.selectedEvalSet(),e),this.getEvaluationResult(!0),this.changeDetectorRef.detectChanges()})}selectEvalSet(e){this.selectedEvalSet.set(e),this.listEvalCases(),this.isEvalV2Enabled()&&this.evalService.getEvalSet(this.appName(),e).pipe(aa(A=>(console.error("Error fetching eval set details",A),oe(null)))).subscribe(A=>{this.currentEvalSet.set(A),this.changeDetectorRef.detectChanges()})}clearSelectedEvalSet(){if(this.selectedEvalTab()!=="cases"){this.selectedEvalTab.set("cases");return}this.selectedEvalSet.set(""),this.currentEvalSet.set(null)}clearAllNavigation(){this.selectedEvalSet.set(""),this.selectedHistoryRun.set(null),this.selectedEvalCase.set(null),this.currentEvalSet.set(null)}goToEvalSet(){this.selectedHistoryRun.set(null),this.selectedEvalCase.set(null)}isAllSelected(){let e=this.selection.selected.length,A=this.dataSource.data.length;return e===A}toggleAllRows(){if(this.isAllSelected()){this.selection.clear();return}this.selection.select(...this.dataSource.data)}getEvalResultForCase(e){let A=this.currentEvalResultBySet.get(this.selectedEvalSet())?.filter(t=>t.evalId==e);if(!(!A||A.length==0))return A[0].finalEvalStatus}formatToolUses(e){if(!e||!Array.isArray(e))return[];let A=[];for(let t of e)A.push({name:t.name,args:t.args});return A}addEvalCaseResultToEvents(e,A){let t=A.evalMetricResultPerInvocation,n=-1;if(t)for(let o=0;on.evalId==e)[0],t=A.sessionId;this.sessionService.getSession(this.userId(),this.appName(),t).subscribe(n=>{this.addEvalCaseResultToEvents(n,A);let o=this.fromApiResultToSession(n);this.sessionSelected.emit(o)})}toggleEvalHistoryButton(){this.showEvalHistory.set(!this.showEvalHistory())}getEvalHistoryOfCurrentSet(){return this.appEvaluationResults[this.appName()]?this.appEvaluationResults[this.appName()][this.selectedEvalSet()]||{}:{}}getEvalHistoryOfCurrentSetSorted(){let e=this.getEvalHistoryOfCurrentSet();return e?Object.keys(e).sort((n,o)=>o.localeCompare(n)).map(n=>({timestamp:n,evaluationResults:e[n]})):[]}getPassCountForCurrentResult(e){return e.filter(A=>A.finalEvalStatus==1).length}getFailCountForCurrentResult(e){return e.filter(A=>A.finalEvalStatus==2).length}getMetricsCounts(e){if(!e)return{passed:0,total:0};let A=0,t=0;if(e.evalMetricResults&&e.evalMetricResults.length>0)A=e.evalMetricResults.filter(n=>n.evalStatus===1).length,t=e.evalMetricResults.length;else if(e.evalMetricResultPerInvocation)for(let n of e.evalMetricResultPerInvocation)n.evalMetricResults&&(A+=n.evalMetricResults.filter(o=>o.evalStatus===1).length,t+=n.evalMetricResults.length);return{passed:A,total:t}}getMetricsScore(e){let{passed:A,total:t}=this.getMetricsCounts(e);return`${A}/${t}`}isMetricsSucceed(e){let{passed:A,total:t}=this.getMetricsCounts(e);return A===t}formatTimestamp(e){let A=Number(e);if(isNaN(A))return"Invalid timestamp provided";let t=new Date(A*1e3);if(isNaN(t.getTime()))return"Invalid date created from timestamp";let n={month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0};return new Intl.DateTimeFormat("en-US",n).format(t)}getEvaluationStatusCardActionButtonIcon(e){return this.getEvalHistoryOfCurrentSet()[e].isToggled?"keyboard_arrow_up":"keyboard_arrow_down"}toggleHistoryStatusCard(e){this.getEvalHistoryOfCurrentSet()[e].isToggled=!this.getEvalHistoryOfCurrentSet()[e].isToggled}isEvaluationStatusCardToggled(e){return this.getEvalHistoryOfCurrentSet()[e].isToggled}generateHistoryEvaluationDatasource(e){return this.getEvalHistoryOfCurrentSet()[e].evaluationResults}getHistorySession(e,A){let t=e.sessionId,n=e.evalId;this.selectedHistoryRun.set(A),this.evalService.getEvalCase(this.appName(),this.selectedEvalSet(),n).subscribe(o=>{this.sessionService.getSession(this.userId(),this.appName(),t).subscribe(a=>{this.addEvalCaseResultToEvents(a,e);let r=this.fromApiResultToSession(a);r.evalCase=o,r.evalCaseResult=e,r.timestamp=A,this.sessionSelected.emit(r)})})}getEvalCase(e){this.evalService.getEvalCase(this.appName(),this.selectedEvalSet(),e).subscribe(A=>{this.selectedEvalCase.set(A),this.evalCaseSelected.emit(A),this.evalSetIdSelected.emit(this.selectedEvalSet())})}resetEvalCase(){this.selectedEvalCase.set(null)}resetEvalResults(){this.currentEvalResultBySet.clear()}confirmDeleteEvalCase(e,A){e.stopPropagation();let t={title:"Confirm delete",message:`Are you sure you want to delete ${A}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(Mc,{width:"600px",data:t}).afterClosed().subscribe(o=>{o&&this.deleteEvalCase(A)})}requestEditEvalCase(e,A){e.stopPropagation(),this.evalService.getEvalCase(this.appName(),this.selectedEvalSet(),A).subscribe(t=>{this.selectedEvalCase.set(t),this.evalCaseSelected.emit(t),this.evalSetIdSelected.emit(this.selectedEvalSet()),this.editEvalCaseRequested.emit(t)})}deleteEvalCase(e){this.evalService.deleteEvalCase(this.appName(),this.selectedEvalSet(),e).subscribe(A=>{this.deletedEvalCaseIndex=this.evalCases.indexOf(e),this.selectedEvalCase.set(null),this.listEvalCases(),this.changeDetectorRef.detectChanges()})}confirmDeleteEvalSet(e,A){e.stopPropagation();let t={title:"Confirm delete",message:`Are you sure you want to delete eval set ${A}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(Mc,{width:"600px",data:t}).afterClosed().subscribe(o=>{o&&this.deleteEvalSet(A)})}deleteEvalSet(e){this.evalService.deleteEvalSet(this.appName(),e).subscribe(A=>{this.getEvalSet(),this.changeDetectorRef.detectChanges()})}getEvaluationResult(e=!1){this.evalService.listEvalResults(this.appName()).pipe(aa(A=>A.status===404&&A.statusText==="Not Found"?(this.shouldShowTab.emit(!1),oe(null)):oe([])),Mi(A=>{if(!A||A.length===0)return oe([]);let t=A.map(n=>this.evalService.getEvalResult(this.appName(),n));return JC(t)})).subscribe(A=>{if(A.length===0)return;let t="";for(let n of A){this.appEvaluationResults[this.appName()]||(this.appEvaluationResults[this.appName()]={}),this.appEvaluationResults[this.appName()][n.evalSetId]||(this.appEvaluationResults[this.appName()][n.evalSetId]={});let o=n.creationTimestamp;(!t||o>t)&&(t=o);let a={isToggled:!1,evaluationResults:n.evalCaseResults.map(r=>({setId:r.id,evalId:r.evalId,finalEvalStatus:r.finalEvalStatus,evalMetricResults:r.evalMetricResults,evalMetricResultPerInvocation:r.evalMetricResultPerInvocation,sessionId:r.sessionId,sessionDetails:r.sessionDetails,overallEvalMetricResults:r.overallEvalMetricResults??[]}))};this.appEvaluationResults[this.appName()][n.evalSetId][o]=a}this.changeDetectorRef.detectChanges(),e&&t&&(this.selectedEvalTab.set("history"),this.selectedHistoryRun.set(t)),this.evalRunning.set(!1)})}openEvalConfigDialog(){this.loadingMetrics.set(!0),this.evalService.getMetricsInfo(this.appName()).pipe(aa(e=>(console.error("Error fetching metrics info",e),oe({metricsInfo:[]})))).subscribe(e=>{this.loadingMetrics.set(!1),this.dialog.open(by,{maxWidth:"90vw",maxHeight:"90vh",data:{evalMetrics:this.evalMetrics,metricsInfo:e.metricsInfo||[]}}).afterClosed().subscribe(t=>{t&&(this.evalMetrics=t,window.localStorage.setItem("adk_eval_metrics_selection",JSON.stringify(t)),this.runEval())})})}getEvalMetrics(e){if(!e||!e.evaluationResults||!e.evaluationResults.evaluationResults)return this.evalMetrics;let A=e.evaluationResults.evaluationResults;return A.length===0?this.evalMetrics:typeof A[0].overallEvalMetricResults>"u"||!A[0].overallEvalMetricResults||A[0].overallEvalMetricResults.length===0?this.evalMetrics:A[0].overallEvalMetricResults.map(n=>({metricName:n.metricName,threshold:n.threshold}))}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-eval-tab"]],viewQuery:function(A,t){A&1&&ls(t.checkboxes,ic,5),A&2&&br()},inputs:{appName:[1,"appName"],userId:[1,"userId"],sessionId:[1,"sessionId"]},outputs:{sessionSelected:"sessionSelected",shouldShowTab:"shouldShowTab",evalNotInstalledMsg:"evalNotInstalledMsg",evalCaseSelected:"evalCaseSelected",evalSetIdSelected:"evalSetIdSelected",shouldReturnToSession:"shouldReturnToSession",editEvalCaseRequested:"editEvalCaseRequested"},features:[ii],decls:17,vars:11,consts:[[1,"eval-container"],[1,"eval-detail-header"],["mat-icon-button","","matTooltip","All Eval Sets",3,"click"],[1,"breadcrumb-item",2,"font-weight","500","color","var(--mat-sys-on-surface)"],[1,"spacer"],[1,"eval-details-container"],[1,"breadcrumb-separator"],["matTooltip","Eval Set",1,"breadcrumb-item","clickable"],["matTooltip","Eval Set",1,"breadcrumb-item"],["matTooltip","Eval Set",1,"breadcrumb-item","clickable",3,"click"],["matTooltip","Eval Cases",1,"breadcrumb-item"],["matTooltip","Runs",1,"breadcrumb-item"],["matTooltip","Run",1,"breadcrumb-item"],["matTooltip","Eval Case",1,"breadcrumb-item"],["mat-button","",3,"click","matTooltip"],["mat-icon-button","","matTooltip","Refresh",3,"click"],[1,"empty-eval-info"],[1,"info-title"],[1,"info-detail"],[1,"info-create",3,"click"],[1,"eval-set-row"],[1,"eval-set-row",3,"click"],[1,"eval-set-left"],[1,"material-symbols-outlined"],[1,"eval-set-name"],[1,"eval-set-right"],["mat-icon-button","",1,"delete-btn",3,"click","matTooltip"],[1,"eval-details-content"],[1,"vertical-tabs-sidebar"],["mat-icon-button","","matTooltip","Info","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Eval Cases","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Runs","matTooltipPosition","right",3,"click"],[1,"vertical-tabs-content"],[2,"display","flex","justify-content","center","align-items","center","padding","20px"],["mode","indeterminate",3,"diameter","strokeWidth"],[1,"info-tables-container"],["app-info-table",""],[3,"matTooltip"],[1,"eval-case-details",2,"padding","16px"],[1,"toolbar",2,"position","sticky","top","0","z-index","1"],[2,"margin-left","6px",3,"change","checked","indeterminate"],["mat-button","","color","primary",3,"click","disabled"],["mode","indeterminate",2,"display","inline-block","vertical-align","middle","margin-right","8px",3,"diameter"],["mat-button","","color","accent",3,"click"],[1,"eval-cases-list"],[1,"eval-case-row",3,"selected-row"],[1,"eval-case-row",3,"click"],[3,"click","change","checked"],[1,"eval-case-id"],["mat-icon-button","",1,"edit-btn",3,"click","matTooltip"],[2,"margin-bottom","16px"],[2,"margin-top","0"],[2,"margin-bottom","8px"],[1,"eval-case-row","clickable",3,"selected-row"],[2,"padding","16px","text-align","center","color","var(--app-color-text-secondary)"],[1,"eval-case-row","clickable",3,"click"],[1,"status-card__summary",2,"width","50px","text-align","center"],[2,"font-family","monospace",3,"ngClass"],[2,"padding","16px"],[1,"eval-case-row"],[1,"status-card__summary"],[1,"status-card__passed",2,"font-family","monospace"],[1,"status-card__separator"],[1,"status-card__failed",2,"font-family","monospace"],[1,"status-card",2,"margin-top","0"],[1,"status-card__overview"],[1,"status-card__info"],[1,"status-card__metrics"],[1,"status-card__history-cases"],[1,"status-card__history-case",2,"display","flex","justify-content","space-between","align-items","center"],[1,"status-card__metric"],[1,"status-card__metric-name",3,"matTooltip"],[1,"status-card__metric-value"],[1,"status-card__history-case",2,"display","flex","justify-content","space-between","align-items","center",3,"click"],[2,"font-family","monospace","width","50px","text-align","center",3,"ngClass"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"div",1)(2,"button",2),U("click",function(){return t.clearAllNavigation()}),I(3,"mat-icon"),D(4,"home"),h()(),T(5,rvA,2,0,"span",3),T(6,gvA,4,1),T(7,cvA,4,0),T(8,CvA,4,0),T(9,dvA,4,1),T(10,IvA,4,1),lA(11,"span",4),T(12,BvA,7,1),h(),T(13,hvA,0,0),T(14,EvA,8,3,"div"),T(15,uvA,3,0,"div"),T(16,zvA,15,7,"div",5),h()),A&2&&(Q(5),O(t.selectedEvalSet()===""?5:-1),Q(),O(t.selectedEvalSet()!==""?6:-1),Q(),O(t.selectedEvalSet()!==""&&t.selectedEvalTab()==="cases"&&!t.selectedEvalCase()?7:-1),Q(),O(t.selectedEvalSet()!==""&&t.selectedEvalTab()==="history"&&!t.selectedHistoryRun()?8:-1),Q(),O(t.selectedHistoryRun()&&!t.selectedEvalCase()?9:-1),Q(),O(t.selectedEvalCase()?10:-1),Q(2),O(t.selectedEvalSet()===""?12:-1),Q(),O(t.selectedEvalSet()==""?13:-1),Q(),O(t.evalsets.length==0?14:-1),Q(),O(t.evalsets.length>0&&t.selectedEvalSet()==""?15:-1),Q(),O(t.selectedEvalSet()!=""?16:-1))},dependencies:[zt,ki,yi,rn,ic,Vl,Es,u1,W0,Za,bI,Q1],styles:[".eval-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;box-sizing:border-box}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 10px;background-color:var(--mat-sys-surface-container, #f5f5f5);border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0);gap:8px}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{flex:1 1 auto}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{height:32px!important;line-height:normal!important;border-radius:16px!important;font-size:13px!important;font-weight:500!important;display:inline-flex!important;align-items:center;justify-content:center}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%]{padding:0 12px!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:4px!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%]{width:32px!important;min-width:32px!important;padding:0!important;border-radius:50%!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:0!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple{width:32px!important;height:32px!important;border-radius:50%!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important;vertical-align:middle}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{vertical-align:middle}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%]{width:100%;background:transparent;border-top:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-weight:600}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{vertical-align:middle;padding:6px 16px;border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr.mat-header-row[_ngcontent-%COMP%]{display:none}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{cursor:pointer;background:transparent}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr.selected-row[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high, #e0e0e0)}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid var(--mat-sys-outline-variant);height:48px;flex-shrink:0;padding:0 16px;gap:8px}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{flex:1 1 auto}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-separator[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);margin:0 4px}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]{font-size:14px;color:var(--mat-sys-on-surface-variant)}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item.clickable[_ngcontent-%COMP%]{color:var(--mat-sys-primary);cursor:pointer}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item.clickable[_ngcontent-%COMP%]:hover{text-decoration:underline}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]:last-child{color:var(--mat-sys-on-surface);font-weight:500}.eval-container[_ngcontent-%COMP%] .eval-set-title[_ngcontent-%COMP%]{font-size:14px;font-weight:500;color:var(--mat-sys-on-surface);margin-right:16px}.eval-case-id[_ngcontent-%COMP%]{cursor:pointer}.eval-set-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between;color:var(--mat-sys-on-surface);font-style:normal;font-weight:700;font-size:14px}.empty-eval-info[_ngcontent-%COMP%]{margin-top:12px}.info-title[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);font-size:14px;font-weight:500;padding-top:13px;padding-right:16px;padding-left:16px}.info-detail[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:14px;font-weight:400;padding-top:13px;padding-right:16px;padding-left:16px;letter-spacing:.2px}.info-create[_ngcontent-%COMP%]{color:var(--mat-sys-primary);font-size:14px;font-style:normal;font-weight:500;padding-right:16px;padding-left:16px;margin-top:19px;padding-bottom:16px;cursor:pointer}.eval-set-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:6px 16px;min-height:44px;border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0);background:transparent}.eval-set-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.eval-set-row[_ngcontent-%COMP%]:hover .delete-btn[_ngcontent-%COMP%]{opacity:1}.eval-set-row[_ngcontent-%COMP%] .eval-set-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.eval-set-row[_ngcontent-%COMP%] .eval-set-left[_ngcontent-%COMP%] span.material-symbols-outlined[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:20px}.eval-set-row[_ngcontent-%COMP%] .eval-set-name[_ngcontent-%COMP%]{font-size:14px;color:var(--mat-sys-on-surface)}.eval-set-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out;color:var(--mat-sys-outline)}.eval-set-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-error)}.eval-set-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important}.selected-eval-case[_ngcontent-%COMP%]{font-weight:900;color:var(--mat-sys-primary)}.save-session-btn[_ngcontent-%COMP%]{width:100%;border:none;border-radius:4px;margin-top:12px;cursor:pointer}.save-session-btn-detail[_ngcontent-%COMP%]{display:flex;padding:8px 16px 8px 12px;justify-content:center}.save-session-btn-text[_ngcontent-%COMP%]{padding-top:2px;color:var(--mat-sys-on-primary);font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.run-eval-btn[_ngcontent-%COMP%]{border-radius:4px;border:1px solid var(--mat-sys-outline);padding:8px 24px;margin-top:16px;color:var(--mat-sys-primary);cursor:pointer}.run-eval-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-high)}.result-btn[_ngcontent-%COMP%]{display:flex;border-radius:4px;border:1px solid var(--mat-sys-outline-variant);margin-top:4px;cursor:pointer}.result-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-high)}.result-btn.pass[_ngcontent-%COMP%]{color:var(--mat-sys-tertiary)}.result-btn.fail[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.evaluation-tab-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;width:100%}.evaluation-history-icon[_ngcontent-%COMP%]{cursor:pointer;margin-top:4px}.status-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;border-radius:8px;padding:12px 16px;margin-top:12px;background-color:var(--mat-sys-surface-container)}.status-card__overview[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;width:100%}.status-card__info[_ngcontent-%COMP%]{display:flex;flex-direction:column}.status-card__timestamp[_ngcontent-%COMP%]{font-size:.9em;color:var(--mat-sys-on-surface-variant);margin-bottom:5px}.status-card__summary[_ngcontent-%COMP%]{display:flex;align-items:center;font-size:.95em;font-weight:500;color:var(--mat-sys-on-surface)}.status-card__metrics[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;font-size:.75em;margin-top:3px}.status-card__metric[_ngcontent-%COMP%]{width:160px;display:flex;align-items:center;color:var(--mat-sys-on-surface);margin-right:12px;margin-bottom:4px}.status-card__metric-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.status-card__metric-value[_ngcontent-%COMP%]{margin-left:4px;flex-shrink:0}.status-card__failed[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.status-card__separator[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);margin:0 8px}.status-card__passed[_ngcontent-%COMP%]{color:#2e7d32}.status-card__action[_ngcontent-%COMP%]{display:flex;align-items:center}.status-card__action[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);cursor:pointer;transition:transform .2s ease-in-out}.status-card__action[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]:hover{opacity:.8}.status-card__action[_ngcontent-%COMP%] .status-card__icon[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:1.2em;cursor:pointer}.status-card__action[_ngcontent-%COMP%] .status-card__icon[_ngcontent-%COMP%]:hover{opacity:.8}.status-card__history-cases[_ngcontent-%COMP%]{display:flex;flex-direction:column;margin-top:3px;justify-content:flex-start;width:100%}.status-card__history-case[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:4px;padding:8px 12px;border-radius:4px;cursor:pointer;box-sizing:border-box}.status-card__history-case[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.eval-spinner[_ngcontent-%COMP%]{margin-top:12px}.eval-details-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;overflow:hidden}.eval-details-content[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}.vertical-tabs-sidebar[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:48px;border-right:1px solid var(--mat-sys-outline-variant);padding-top:8px;align-items:center;gap:8px}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.vertical-tabs-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;overflow-y:auto}.eval-cases-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%}.eval-case-row[_ngcontent-%COMP%]{display:flex;align-items:center;cursor:pointer;padding:8px 16px;gap:12px;border-bottom:1px solid var(--mat-sys-outline-variant);background:transparent}.eval-case-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low)}.eval-case-row[_ngcontent-%COMP%]:hover .delete-btn[_ngcontent-%COMP%], .eval-case-row[_ngcontent-%COMP%]:hover .edit-btn[_ngcontent-%COMP%]{opacity:1}.eval-case-row.selected-row[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high)}.eval-case-row[_ngcontent-%COMP%] .eval-case-id[_ngcontent-%COMP%]{font-size:14px;color:var(--mat-sys-on-surface);font-family:Google Sans Mono,monospace;flex:1}.eval-case-row[_ngcontent-%COMP%] .edit-btn[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out;color:var(--mat-sys-on-surface-variant)}.eval-case-row[_ngcontent-%COMP%] .edit-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-primary)}.eval-case-row[_ngcontent-%COMP%] .edit-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important}.eval-case-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out;color:var(--mat-sys-on-surface-variant)}.eval-case-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-error)}.eval-case-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important}.eval-case-row.header-row[_ngcontent-%COMP%]{cursor:default;background-color:var(--mat-sys-surface-container-lowest)}.eval-case-row.header-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-lowest)}.info-tables-container[_ngcontent-%COMP%]{padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}"]})};var PvA={noSessionsFound:"No sessions found",readonlyChip:"Read-only",filterSessionsLabel:"Search using session ID"},d$=new MA("Session Tab Messages",{factory:()=>PvA});function jvA(i,e){if(i&1&&(I(0,"div",1)(1,"mat-form-field",4)(2,"mat-label"),D(3),h(),I(4,"mat-icon",5),D(5,"filter_list"),h(),lA(6,"input",6),h()()),i&2){let A=p();Q(3),nA(A.i18n.filterSessionsLabel),Q(3),H("formControl",A.filterControl)}}function VvA(i,e){i&1&&(I(0,"div",2),lA(1,"mat-progress-bar",7),h())}function qvA(i,e){if(i&1&&(I(0,"div",3),D(1),h()),i&2){let A=p();Q(),Ya("",A.i18n.noSessionsFound," for user '",A.userId,"'")}}function WvA(i,e){if(i&1&&(I(0,"div",18),D(1),h()),i&2){let A=p().$implicit;H("title",A.id),Q(),nA(A.id)}}function ZvA(i,e){if(i&1&&(I(0,"div",19)(1,"mat-icon"),D(2,"visibility"),h(),D(3),h()),i&2){let A=p(3);Q(3),Ee(" ",A.i18n.readonlyChip," ")}}function XvA(i,e){if(i&1){let A=aA();I(0,"div",10),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.getSession(n.id))}),I(1,"div",11)(2,"div",12)(3,"div",13),D(4),h(),I(5,"button",14),U("click",function(n){let o=L(A).$implicit,a=p(2);return G(a.promoteToTest(n,o))}),I(6,"mat-icon"),D(7,"fact_check"),h()(),I(8,"button",15),U("click",function(n){let o=L(A).$implicit,a=p(2);return G(a.deleteSession(n,o))}),I(9,"mat-icon"),D(10,"delete"),h()()(),I(11,"div",16)(12,"div",17),D(13),h(),T(14,WvA,2,2,"div",18),h()(),T(15,ZvA,4,1,"div",19),mt(16,"async"),h()}if(i&2){let A=e.$implicit,t=p(2);H("ngClass",A.id===t.sessionId?"session-item current":"session-item"),Q(3),_A("is-monospace",!t.hasDisplayName(A)),H("title",A.id),Q(),nA(t.getSessionDisplayName(A)),Q(9),nA(t.getDate(A)),Q(),O(t.hasDisplayName(A)?14:-1),Q(),O(Ft(16,8,t.sessionService.canEdit(t.userId,A))===!1?15:-1)}}function $vA(i,e){i&1&&(I(0,"div",2),lA(1,"mat-progress-bar",7),h())}function AbA(i,e){if(i&1){let A=aA();T(0,$vA,2,0,"div",2),I(1,"div",20)(2,"button",21),U("click",function(){L(A);let n=p(2);return G(n.loadMoreSessions())}),D(3,"Load more"),h()()}if(i&2){p(2);let A=Ki(3);O(A?0:-1)}}function ebA(i,e){if(i&1&&(I(0,"div",8),ke(1,XvA,17,10,"div",9,ni),h(),T(3,AbA,4,1),mt(4,"async")),i&2){let A=p();Q(),_e(A.sessionList),Q(2),O(Ft(4,1,A.isSessionFilteringEnabled)&&A.canLoadMoreSessions?3:-1)}}var Sy=class i{userId="";appName="";sessionId="";sessionSelected=new FA;sessionReloaded=new FA;SESSIONS_PAGE_LIMIT=100;sessionList=[];canLoadMoreSessions=!1;pageToken="";filterControl=new Ps("");editingSessionId=null;sessionNameControl=new Ps("");refreshSessionsSubject=new ne;route=w($s);changeDetectorRef=w(Mt);sessionService=w(tl);uiStateService=w(ag);i18n=w(d$);featureFlagService=w(Nr);dialog=w(Xa);testsService=w(c2);isSessionFilteringEnabled=this.featureFlagService.isSessionFilteringEnabled();isLoadingMoreInProgress=mA(!1);isInitialized=mA(!1);constructor(){this.filterControl.valueChanges.pipe(Os(300)).subscribe(()=>{this.pageToken="",this.sessionList=[],this.refreshSessionsSubject.next()}),this.refreshSessionsSubject.pipe(mi(()=>{this.uiStateService.setIsSessionListLoading(!0)}),Mi(()=>{let e=this.filterControl.value||void 0;return this.isSessionFilteringEnabled?this.sessionService.listSessions(this.userId,this.appName,{filter:e,pageToken:this.pageToken,pageSize:this.SESSIONS_PAGE_LIMIT}).pipe(aa(()=>oe({items:[],nextPageToken:""}))):this.sessionService.listSessions(this.userId,this.appName).pipe(aa(()=>oe({items:[],nextPageToken:""})))}),mi(({items:e,nextPageToken:A})=>{this.isInitialized.set(!0),this.sessionList=Array.from(new Map([...this.sessionList,...e].map(t=>[t.id,t])).values()).sort((t,n)=>Number(n.lastUpdateTime)-Number(t.lastUpdateTime)),this.pageToken=A??"",this.canLoadMoreSessions=!!A,this.changeDetectorRef.markForCheck()})).subscribe(()=>{this.isLoadingMoreInProgress.set(!1),this.uiStateService.setIsSessionListLoading(!1)},()=>{this.isLoadingMoreInProgress.set(!1),this.uiStateService.setIsSessionListLoading(!1)})}ngOnInit(){this.featureFlagService.isSessionFilteringEnabled().subscribe(e=>{if(e){let A=this.route.snapshot.queryParams.session;A&&this.filterControl.setValue(A)}}),setTimeout(()=>{this.refreshSessionsSubject.next()},500)}getSession(e){e&&this.sessionSelected.emit(e)}loadMoreSessions(){this.isLoadingMoreInProgress.set(!0),this.refreshSessionsSubject.next()}getSessionDisplayName(e){return e.state?.__session_metadata__?.displayName||e.id}hasDisplayName(e){return!!e.state?.__session_metadata__?.displayName}startEditSessionName(e){this.editingSessionId=e.id,this.sessionNameControl.setValue(this.getSessionDisplayName(e))}cancelEditSessionName(){this.editingSessionId=null,this.sessionNameControl.setValue("")}saveSessionName(e){if(!this.editingSessionId||!e.id)return;let A=this.sessionNameControl.value,t=e.state||{},n=$A(P({},t),{__session_metadata__:$A(P({},t.__session_metadata__||{}),{displayName:A})});e.state=n,this.editingSessionId=null,this.sessionService.updateSession(this.userId,this.appName,e.id,{stateDelta:n}).subscribe({error:()=>{}})}deleteSession(e,A){e.stopPropagation();let t=A.id,n=this.getSessionDisplayName(A),o=`Are you sure you want to delete session ${t}?`;n!==t&&(o=`Are you sure you want to delete session "${n}" (${t})?`);let a={title:"Confirm delete",message:o,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(Mc,{width:"600px",data:a}).afterClosed().subscribe(s=>{s&&this.sessionService.deleteSession(this.userId,this.appName,t).subscribe(()=>{this.refreshSession(t)})})}promoteToTest(e,A){e.stopPropagation();let t=window.prompt("Enter test name (e.g., test1):");t&&this.sessionService.getSession(this.userId,this.appName,A.id).subscribe(n=>{let o={events:n.events};this.testsService.createTest(this.appName,t,o).subscribe({next:()=>{alert(`Test ${t} created successfully.`)},error:a=>{alert(`Error creating test: ${a.message||a}`)}})})}getDate(e){let A=e.lastUpdateTime||0;return new Date(A*1e3).toLocaleString()}fromApiResultToSession(e){return{id:e.id??"",appName:e.appName??"",userId:e.userId??"",state:e.state??{},events:e.events??[]}}reloadSession(e){this.sessionReloaded.emit(e)}refreshSession(e){let A=null;if(this.sessionList.length>0){let t=this.sessionList.findIndex(n=>n.id===e);t===this.sessionList.length-1&&(t=-1),A=this.sessionList[t+1]}return this.isSessionFilteringEnabled?this.filterControl.setValue(""):(this.sessionList=[],this.refreshSessionsSubject.next()),A}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-session-tab"]],inputs:{userId:"userId",appName:"appName",sessionId:"sessionId"},outputs:{sessionSelected:"sessionSelected",sessionReloaded:"sessionReloaded"},decls:8,vars:7,consts:[[1,"session-wrapper"],[1,"session-filter-container"],[1,"loading-spinner-container"],[1,"empty-state"],["appearance","outline",1,"session-filter"],["matPrefix",""],["matInput","",3,"formControl"],["mode","indeterminate"],[1,"session-tab-container",2,"margin-top","16px"],[3,"ngClass"],[3,"click","ngClass"],[1,"session-info"],[1,"session-header"],[1,"session-id",3,"title"],["mat-icon-button","","title","Promote to test",1,"action-btn","promote-btn",3,"click"],["mat-icon-button","","title","Delete session",1,"action-btn","delete-btn",3,"click"],[1,"session-sub-row"],[1,"session-date"],[1,"session-real-id",3,"title"],[1,"readonly-badge"],[1,"load-more"],["mat-button","","color","primary",3,"click"]],template:function(A,t){if(A&1&&(I(0,"div",0),T(1,jvA,7,2,"div",1),mt(2,"async"),ro(3),mt(4,"async"),T(5,VvA,2,0,"div",2)(6,qvA,2,2,"div",3)(7,ebA,5,3),h()),A&2){Q(),O(Ft(2,2,t.isSessionFilteringEnabled)?1:-1),Q(2);let n=so(Ft(4,4,t.uiStateService.isSessionListLoading()));Q(2),O((n||!t.isInitialized())&&!t.isLoadingMoreInProgress()?5:!n&&t.isInitialized()&&t.sessionList.length===0?6:7)}},dependencies:[Vl,uE,zt,Za,Zo,xs,mQ,Ws,ka,fn,Gn,Kn,WC,x1,qi,ki,yi,Un,Ls,gs],styles:[".session-wrapper[_ngcontent-%COMP%]{padding-left:25px;padding-right:25px;font-size:14px;font-weight:700;color:var(--session-tab-session-wrapper-color);display:flex;flex-direction:column;overflow:hidden;height:100%}.session-wrapper[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{color:initial;padding-top:1em;text-align:center;font-weight:400;font-style:italic}.session-wrapper[_ngcontent-%COMP%] .session-filter-container[_ngcontent-%COMP%]{border-radius:8px;padding:16px;margin-bottom:16px;margin-top:16px}.session-wrapper[_ngcontent-%COMP%] .session-filter[_ngcontent-%COMP%]{width:100%}.session-tab-container[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.session-item[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;border:none;border-radius:8px;margin-bottom:4px;cursor:pointer}.session-item[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant, rgba(0, 0, 0, .04))}.session-item.current[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))}.session-item[_ngcontent-%COMP%] mat-chip[_ngcontent-%COMP%]{margin-right:11px}.session-id[_ngcontent-%COMP%]{color:var(--session-tab-session-id-color);font-family:Roboto,sans-serif;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.session-id.is-monospace[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace}.session-sub-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:8px}.session-date[_ngcontent-%COMP%]{color:var(--session-tab-session-date-color);font-family:Roboto;font-size:12px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.3px;white-space:nowrap}.session-real-id[_ngcontent-%COMP%]{color:var(--session-tab-session-id-color);font-family:Google Sans Mono,monospace;font-size:12px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.3px;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;text-align:right}.session-info[_ngcontent-%COMP%]{padding:11px;flex:1;min-width:0}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;height:24px;margin-bottom:2px}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .session-id[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .session-name-input[_ngcontent-%COMP%]{flex:1;height:20px;padding:0 4px;font-family:inherit;font-size:14px;border:1px solid var(--mat-sys-outline, #ccc);border-radius:4px;background:var(--mat-sys-surface, #fff);color:var(--mat-sys-on-surface, #000);outline:none;min-width:0;margin-right:4px}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .session-name-input[_ngcontent-%COMP%]:focus{border-color:var(--mat-sys-primary, #1976d2)}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]{width:24px;height:24px;padding:0;display:none}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%] .mat-icon{font-size:16px;width:16px;height:16px;line-height:16px}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .save-btn[_ngcontent-%COMP%], .session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .cancel-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;margin-left:2px}.session-item[_ngcontent-%COMP%]:hover .action-btn.edit-btn[_ngcontent-%COMP%], .session-item[_ngcontent-%COMP%]:hover .action-btn.delete-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center}.loading-spinner-container[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto;margin-top:2em;width:100%}.load-more[_ngcontent-%COMP%]{display:flex;justify-content:center;margin-top:1em}.readonly-badge[_ngcontent-%COMP%]{color:var(--chat-readonly-badge-color);border-radius:4px;padding:1px 6px;display:flex;align-items:center;margin-right:8px;font-size:12px;line-height:16px;gap:4px;white-space:nowrap}.readonly-badge[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;padding-top:1px;flex-shrink:0}"]})};var tbA=["consoleArea"];function ibA(i,e){i&1&&lA(0,"mat-progress-bar",3)}var Rp=class i{constructor(e,A){this.dialogRef=e;this.data=A}consoleOutput=mA("");isLoading=mA(!0);subscription;consoleArea;ngOnInit(){this.subscription=this.data.output$.subscribe({next:e=>{this.consoleOutput.update(A=>A+e),this.scrollToBottom()},complete:()=>{this.isLoading.set(!1)}})}ngOnDestroy(){this.subscription?.unsubscribe()}scrollToBottom(){setTimeout(()=>{if(this.consoleArea){let e=this.consoleArea.nativeElement;e.scrollTop=e.scrollHeight}},0)}close(){this.dialogRef.close()}static \u0275fac=function(A){return new(A||i)(st(zn),st(Do))};static \u0275cmp=vA({type:i,selectors:[["app-console-dialog"]],viewQuery:function(A,t){if(A&1&&Wt(tbA,5),A&2){let n;se(n=le())&&(t.consoleArea=n.first)}},decls:11,vars:3,consts:[["consoleArea",""],["mat-dialog-title",""],[1,"mat-typography"],["mode","indeterminate",2,"margin-bottom","8px"],[1,"console-box"],["align","end"],["mat-button","",3,"click"]],template:function(A,t){A&1&&(I(0,"h2",1),D(1),h(),I(2,"mat-dialog-content",2),T(3,ibA,1,0,"mat-progress-bar",3),I(4,"div",4,0)(6,"pre"),D(7),h()()(),I(8,"mat-dialog-actions",5)(9,"button",6),U("click",function(){return t.close()}),D(10,"Close"),h()()),A&2&&(Q(),nA(t.data.title),Q(2),O(t.isLoading()?3:-1),Q(4),nA(t.consoleOutput()))},dependencies:[li,qi,ki,Ls,Xo,ha,Ba,pE,uE],styles:[".console-box[_ngcontent-%COMP%]{background-color:#1e1e1e;color:#dcdcdc;padding:16px;border-radius:4px;min-height:200px;flex:1;overflow-y:auto;font-family:Roboto Mono,monospace;font-size:12px}.console-box[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:0;white-space:pre-wrap;word-wrap:break-word} .mat-mdc-dialog-content{max-height:70vh!important;overflow:hidden!important;display:flex;flex-direction:column}"]})};function nbA(i,e){i&1&&(I(0,"div",7),lA(1,"mat-spinner",8),h())}var Np=class i{constructor(e,A){this.dialogRef=e;this.data=A;this.inputValue=A.value}inputValue;loading=mA(!1);onCancel(){this.dialogRef.close()}onSubmitClick(){this.inputValue&&(this.loading.set(!0),this.data.onSubmit(this.inputValue).subscribe({next:()=>{this.loading.set(!1),this.dialogRef.close(!0)},error:e=>{this.loading.set(!1),window.alert(`Operation failed: ${e.message||e}`)}}))}static \u0275fac=function(A){return new(A||i)(st(zn),st(Do))};static \u0275cmp=vA({type:i,selectors:[["app-prompt-dialog"]],decls:13,vars:7,consts:[["mat-dialog-title",""],[1,"full-width"],["matInput","",3,"ngModelChange","ngModel","disabled"],["class","spinner-container",4,"ngIf"],["align","end"],["mat-button","",3,"click","disabled"],["mat-button","","color","primary",3,"click","disabled"],[1,"spinner-container"],["diameter","40"]],template:function(A,t){A&1&&(I(0,"h2",0),D(1),h(),I(2,"mat-dialog-content")(3,"mat-form-field",1)(4,"mat-label"),D(5),h(),I(6,"input",2),Ni("ngModelChange",function(o){return wi(t.inputValue,o)||(t.inputValue=o),o}),h()(),kt(7,nbA,2,0,"div",3),h(),I(8,"mat-dialog-actions",4)(9,"button",5),U("click",function(){return t.onCancel()}),D(10,"Cancel"),h(),I(11,"button",6),U("click",function(){return t.onSubmitClick()}),D(12,"Submit"),h()()),A&2&&(Q(),nA(t.data.title),Q(4),nA(t.data.label),Q(),Ri("ngModel",t.inputValue),H("disabled",t.loading()),Q(),H("ngIf",t.loading()),Q(2),H("disabled",t.loading()),Q(2),H("disabled",t.loading()||!t.inputValue))},dependencies:[li,ql,Ls,Xo,ha,Ba,qi,ki,Za,Zo,xs,Ws,ka,l2,Es,fn,Gn,Kn,Ho],styles:[".full-width[_ngcontent-%COMP%]{width:100%}.spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;margin-top:16px}"]})};function obA(i,e){i&1&&(I(0,"div",6)(1,"mat-icon"),D(2,"assignment_late"),h(),I(3,"span"),D(4,"No tests found for this agent."),h()())}function abA(i,e){i&1&&(I(0,"th",13),D(1," Test Name "),h())}function rbA(i,e){if(i&1&&(I(0,"td",14),D(1),h()),i&2){let A=e.$implicit;Q(),Ee(" ",A.replace(".json","")," ")}}function sbA(i,e){i&1&&(I(0,"th",13),D(1," Actions "),h())}function lbA(i,e){if(i&1){let A=aA();I(0,"td",14)(1,"button",15),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.runTest(n))}),I(2,"mat-icon"),D(3,"play_arrow"),h()(),I(4,"button",16),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.rebuildTest(n))}),I(5,"mat-icon"),D(6,"sync"),h()(),I(7,"button",17),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.renameTest(n))}),I(8,"mat-icon"),D(9,"edit"),h()(),I(10,"button",18),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.deleteTest(n))}),I(11,"mat-icon"),D(12,"delete"),h()()()}if(i&2){let A=p(2);Q(),H("disabled",A.isRunning()||A.isRebuilding()),Q(3),H("disabled",A.isRunning()||A.isRebuilding()),Q(3),H("disabled",A.isRunning()||A.isRebuilding()),Q(3),H("disabled",A.isRunning()||A.isRebuilding())}}function gbA(i,e){if(i&1){let A=aA();I(0,"tr",19),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.selectTest(n))}),h()}if(i&2){let A=e.$implicit,t=p(2);_A("selected-row",A===t.selectedTest())}}function cbA(i,e){if(i&1&&(I(0,"table",7),vl(1,8),kt(2,abA,2,0,"th",9)(3,rbA,2,1,"td",10),bl(),vl(4,11),kt(5,sbA,2,0,"th",9)(6,lbA,13,4,"td",10),bl(),kt(7,gbA,1,2,"tr",12),h()),i&2){let A=p();H("dataSource",A.dataSource),Q(7),H("matRowDefColumns",A.displayedColumns)}}var ky=class i{appName=ve("");sessionId=ve("");userId=ve("");isViewOnlySession=ve(!1);testsService=w(c2);dialog=w(Xa);sessionService=w(tl);dataSource=new dI([]);consoleOutput=mA("");selectedTest=mA(null);testSelected=Si();isRunning=mA(!1);isRebuilding=mA(!1);displayedColumns=["name","actions"];ngOnInit(){this.loadTests()}ngOnChanges(e){e.appName&&!e.appName.isFirstChange()&&this.loadTests()}loadTests(){this.appName()&&this.testsService.listTests(this.appName()).subscribe(e=>{this.dataSource.data=e})}selectTest(e){this.selectedTest.set(e),this.testsService.getTest(this.appName(),e).subscribe(A=>{this.testSelected.emit({testName:e,events:A.events||[]})})}promoteCurrentSessionToTest(){this.sessionId()&&this.sessionService.getSession(this.userId(),this.appName(),this.sessionId()).subscribe(e=>{let t=(e.state?.__session_metadata__?.displayName||this.sessionId()).replace(/ /g,"_").replace(/[^a-zA-Z0-9_-]/g,""),n={events:e.events};this.dialog.open(Np,{data:{title:"Add Current Session as Test",label:"Test Name",value:t,onSubmit:o=>this.testsService.createTest(this.appName(),o,n).pipe(Mi(()=>this.testsService.rebuildTests(this.appName(),o)))}}).afterClosed().subscribe(o=>{o&&this.loadTests()})})}renameTest(e){this.dialog.open(Np,{data:{title:"Rename Test",label:"New Name",value:e.replace(".json",""),onSubmit:A=>{let t=A.replace(/ /g,"_").replace(/[^a-zA-Z0-9_-]/g,"");return this.testsService.getTest(this.appName(),e).pipe(Mi(n=>this.testsService.createTest(this.appName(),t,n)),Mi(()=>this.testsService.deleteTest(this.appName(),e)))}}}).afterClosed().subscribe(A=>{A&&this.loadTests()})}runAllTests(){this.runTest()}runTest(e){this.isRunning.set(!0);let A=new ne;this.dialog.open(Rp,{width:"90vw",maxWidth:"1200px",height:"80vh",data:{title:`Running ${e||"all tests"}`,output$:A.asObservable()}}),this.testsService.runTests(this.appName(),e).subscribe({next:t=>{A.next(t)},error:t=>{A.next(` -Error: ${t.message||t}`),this.isRunning.set(!1),A.complete()},complete:()=>{this.isRunning.set(!1),A.complete()}})}deleteTest(e){confirm(`Are you sure you want to delete test ${e}?`)&&this.testsService.deleteTest(this.appName(),e).subscribe(()=>{this.loadTests()})}rebuildAllTests(){this.rebuildTest()}rebuildTest(e){this.isRebuilding.set(!0);let A=new ne;this.dialog.open(Rp,{width:"90vw",maxWidth:"1200px",height:"80vh",data:{title:`Rebuilding ${e||"all tests"}`,output$:A.asObservable()}}),A.next(`Rebuilding tests... -`),this.testsService.rebuildTests(this.appName(),e).subscribe({next:()=>{A.next(`Successfully rebuilt tests. -`),this.isRebuilding.set(!1),this.loadTests(),A.complete()},error:t=>{A.next(`Error rebuilding tests: ${t.message||t} -`),this.isRebuilding.set(!1),A.complete()}})}clearConsole(){this.consoleOutput.set("")}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-tests-tab"]],inputs:{appName:[1,"appName"],sessionId:[1,"sessionId"],userId:[1,"userId"],isViewOnlySession:[1,"isViewOnlySession"]},outputs:{testSelected:"testSelected"},features:[ii],decls:20,vars:4,consts:[[1,"tests-container"],[1,"toolbar"],["mat-button","","color","primary",3,"click","disabled"],["mat-button","","color","accent",3,"click","disabled"],[1,"spacer"],["mat-icon-button","","matTooltip","Refresh",3,"click"],[1,"empty-state"],["mat-table","",1,"tests-table",3,"dataSource"],["matColumnDef","name"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","actions"],["mat-row","",3,"selected-row","click",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-icon-button","","color","primary","matTooltip","Run Test",3,"click","disabled"],["mat-icon-button","","color","accent","matTooltip","Rebuild Test",3,"click","disabled"],["mat-icon-button","","color","primary","matTooltip","Rename Test",3,"click","disabled"],["mat-icon-button","","color","warn","matTooltip","Delete Test",3,"click","disabled"],["mat-row","",3,"click"]],template:function(A,t){A&1&&(I(0,"div",0)(1,"div",1)(2,"button",2),U("click",function(){return t.promoteCurrentSessionToTest()}),I(3,"mat-icon"),D(4,"add"),h(),D(5," From Current Session "),h(),I(6,"button",2),U("click",function(){return t.runAllTests()}),I(7,"mat-icon"),D(8,"playlist_play"),h(),D(9," Run All "),h(),I(10,"button",3),U("click",function(){return t.rebuildAllTests()}),I(11,"mat-icon"),D(12,"sync"),h(),D(13," Rebuild All "),h(),lA(14,"span",4),I(15,"button",5),U("click",function(){return t.loadTests()}),I(16,"mat-icon"),D(17,"refresh"),h()()(),T(18,obA,5,0,"div",6)(19,cbA,8,2,"table",7),h()),A&2&&(Q(2),H("disabled",!t.sessionId()||t.isViewOnlySession()),Q(4),H("disabled",t.isRunning()||t.isRebuilding()||t.dataSource.data.length===0),Q(4),H("disabled",t.isRunning()||t.isRebuilding()||t.dataSource.data.length===0),Q(8),O(t.dataSource.data.length===0?18:19))},dependencies:[li,qi,ki,yi,Un,zt,$X,t$,e$,i$,A$,n$,o$,a$,Ha,rn,l2,pE,Ls],styles:[".tests-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;box-sizing:border-box}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 10px;background-color:var(--mat-sys-surface-container);border-bottom:1px solid var(--mat-sys-outline-variant);gap:8px}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{flex:1 1 auto}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{height:32px!important;line-height:normal!important;border-radius:16px!important;font-size:13px!important;font-weight:500!important;display:inline-flex!important;align-items:center;justify-content:center}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%]{padding:0 12px!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:4px!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%]{width:32px!important;min-width:32px!important;padding:0!important;border-radius:50%!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:0!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple{width:32px!important;height:32px!important;border-radius:50%!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important;vertical-align:middle}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{vertical-align:middle}.tests-container[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;color:var(--mat-sys-on-surface-variant);font-style:italic;gap:8px}.tests-container[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%]{width:100%;background:transparent;border-top:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-weight:600}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{vertical-align:middle;padding:6px 16px;border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr.mat-header-row[_ngcontent-%COMP%]{display:none}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{cursor:pointer;background:transparent}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover td.mat-column-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{opacity:1}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr.selected-row[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high, #e0e0e0)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td.mat-column-actions[_ngcontent-%COMP%]{text-align:right}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td.mat-column-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%]{margin-top:16px;display:flex;flex-direction:column;gap:8px;flex:1;min-height:200px}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0;font-size:1.1rem;font-weight:600}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--mat-sys-on-surface-variant)}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-actions[_ngcontent-%COMP%] .running-status[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_pulse 1.5s infinite}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]{background-color:#1e1e1e;color:#d4d4d4;padding:12px;border-radius:4px;font-family:Courier New,Courier,monospace;font-size:.85rem;overflow:auto;flex:1;margin:0;white-space:pre-wrap;word-break:break-all;border:1px solid #333}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar{width:8px;height:8px}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#777}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:#1e1e1e}@keyframes _ngcontent-%COMP%_pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}"]})};var CbA={stateIsEmpty:"State is empty"},I$=new MA("State Tab Messages",{factory:()=>CbA});function dbA(i,e){if(i&1&&(I(0,"div",1),D(1),h()),i&2){let A=p();Q(),nA(A.i18n.stateIsEmpty)}}function IbA(i,e){if(i&1&&(I(0,"div"),lA(1,"app-custom-json-viewer",2),h()),i&2){let A=p();Q(),H("json",A.sessionState)}}var _y=class i{sessionState;i18n=w(I$);get isEmptyState(){return!this.sessionState||Object.keys(this.sessionState).length===0}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-state-tab"]],inputs:{sessionState:"sessionState"},decls:3,vars:1,consts:[[1,"state-wrapper"],[1,"empty-state"],[3,"json"]],template:function(A,t){A&1&&(I(0,"div",0),T(1,dbA,2,1,"div",1)(2,IbA,2,1,"div"),h()),A&2&&(Q(),O(t.isEmptyState?1:2))},dependencies:[fl],styles:[".state-wrapper[_ngcontent-%COMP%]{padding-left:25px;padding-right:25px;margin-top:16px}.state-wrapper[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{text-align:center;font-style:italic}"]})};var BbA=(i,e)=>e.span_id;function hbA(i,e){if(i&1){let A=aA();I(0,"span",20)(1,"a",24),U("click",function(){let n;L(A);let o=p(3);return G(o.selectSpanById((n=o.selectedSpan())==null?null:n.parent_span_id))}),D(2),h(),I(3,"button",21),U("click",function(){let n;L(A);let o=p(3);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.parent_span_id))}),I(4,"mat-icon"),D(5),h()()()}if(i&2){let A,t,n,o=p(3);Q(),H("matTooltip",((A=o.selectedSpan())==null?null:A.parent_span_id)||""),Q(),nA((t=o.selectedSpan())==null?null:t.parent_span_id),Q(3),nA(o.copiedId===((n=o.selectedSpan())==null?null:n.parent_span_id)?"check":"content_copy")}}function EbA(i,e){i&1&&D(0," None ")}function QbA(i,e){if(i&1){let A=aA();I(0,"tr")(1,"td"),D(2),h(),I(3,"td")(4,"span",20)(5,"a",24),U("click",function(){let n=L(A).$implicit,o=p(4);return G(o.selectSpanById(n.span_id))}),D(6),h(),I(7,"button",21),U("click",function(){let n=L(A).$implicit,o=p(4);return G(o.copyToClipboard(n.span_id))}),I(8,"mat-icon"),D(9),h()()()()()}if(i&2){let A=e.$implicit,t=p(4);Q(2),nA(A.name),Q(3),H("matTooltip",A.span_id),Q(),nA(A.span_id),Q(3),nA(t.copiedId===A.span_id?"check":"content_copy")}}function ubA(i,e){if(i&1&&(I(0,"table",22),ke(1,QbA,10,4,"tr",null,BbA),h()),i&2){let A=p(3);Q(),_e(A.selectedSpanChildren)}}function pbA(i,e){if(i&1){let A=aA();I(0,"table",23)(1,"tr")(2,"td"),D(3,"Event ID"),h(),I(4,"td")(5,"span",20)(6,"a",24),U("click",function(){L(A),p();let n=Ki(59),o=p(2);return G(o.switchToEvent.emit(n))}),D(7),h(),I(8,"button",21),U("click",function(){L(A),p();let n=Ki(59),o=p(2);return G(o.copyToClipboard(n))}),I(9,"mat-icon"),D(10),h()()()()()()}if(i&2){p();let A=Ki(59),t=p(2);Q(6),H("matTooltip",A||""),Q(),nA(A),Q(3),nA(t.copiedId===A?"check":"content_copy")}}function fbA(i,e){if(i&1){let A=aA();I(0,"div",13)(1,"table",15)(2,"tr")(3,"td"),D(4,"Name"),h(),I(5,"td")(6,"span",16)(7,"span",17),D(8),h(),I(9,"button",18),U("click",function(){let n;L(A);let o=p(2);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.name))}),I(10,"mat-icon"),D(11),h()()()()(),I(12,"tr")(13,"td"),D(14,"Span ID"),h(),I(15,"td",19)(16,"span",20)(17,"span",17),D(18),h(),I(19,"button",21),U("click",function(){let n;L(A);let o=p(2);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.span_id))}),I(20,"mat-icon"),D(21),h()()()()(),I(22,"tr")(23,"td"),D(24,"Parent ID"),h(),I(25,"td"),T(26,hbA,6,3,"span",20)(27,EbA,1,0),h()(),I(28,"tr")(29,"td"),D(30,"Trace ID"),h(),I(31,"td",19)(32,"span",20)(33,"span",17),D(34),h(),I(35,"button",21),U("click",function(){let n;L(A);let o=p(2);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.trace_id))}),I(36,"mat-icon"),D(37),h()()()()(),I(38,"tr")(39,"td"),D(40,"Start Time"),h(),I(41,"td")(42,"span",16)(43,"span",17),D(44),h(),I(45,"button",18),U("click",function(){let n;L(A);let o=p(2);return G(o.copyToClipboard(o.formatTime((n=o.selectedSpan())==null?null:n.start_time),"startTime"))}),I(46,"mat-icon"),D(47),h()()()()(),I(48,"tr")(49,"td"),D(50,"End Time"),h(),I(51,"td")(52,"span",16)(53,"span",17),D(54),h(),I(55,"button",18),U("click",function(){let n;L(A);let o=p(2);return G(o.copyToClipboard(o.formatTime((n=o.selectedSpan())==null?null:n.end_time),"endTime"))}),I(56,"mat-icon"),D(57),h()()()()()(),T(58,ubA,3,0,"table",22),ro(59),T(60,pbA,11,3,"table",23),h()}if(i&2){let A,t,n,o,a,r,s,l,g,C,d,B,u,E,f=p(2);Q(7),H("matTooltip",((A=f.selectedSpan())==null?null:A.name)||""),Q(),nA((t=f.selectedSpan())==null?null:t.name),Q(3),nA(f.copiedId===((n=f.selectedSpan())==null?null:n.name)?"check":"content_copy"),Q(6),H("matTooltip",((o=f.selectedSpan())==null?null:o.span_id)||""),Q(),nA((a=f.selectedSpan())==null?null:a.span_id),Q(3),nA(f.copiedId===((r=f.selectedSpan())==null?null:r.span_id)?"check":"content_copy"),Q(5),O((s=f.selectedSpan())!=null&&s.parent_span_id?26:27),Q(7),H("matTooltip",((l=f.selectedSpan())==null?null:l.trace_id)||""),Q(),nA((g=f.selectedSpan())==null?null:g.trace_id),Q(3),nA(f.copiedId===((C=f.selectedSpan())==null?null:C.trace_id)?"check":"content_copy"),Q(6),H("matTooltip",f.formatTime((d=f.selectedSpan())==null?null:d.start_time)),Q(),nA(f.formatTime((B=f.selectedSpan())==null?null:B.start_time)),Q(3),nA(f.copiedId==="startTime"?"check":"content_copy"),Q(6),H("matTooltip",f.formatTime((u=f.selectedSpan())==null?null:u.end_time)),Q(),nA(f.formatTime((E=f.selectedSpan())==null?null:E.end_time)),Q(3),nA(f.copiedId==="endTime"?"check":"content_copy"),Q(),O(f.selectedSpanChildren.length>0?58:-1),Q();let m=so(f.getSelectedSpanEventId());Q(),O(m?60:-1)}}function mbA(i,e){if(i&1){let A=aA();I(0,"tr")(1,"td"),D(2),h(),I(3,"td")(4,"span",16)(5,"span"),D(6),h(),I(7,"button",18),U("click",function(){let n=L(A).$implicit;p(2);let o=Ki(1),a=p(2);return G(a.copyToClipboard(o[n]==null?null:o[n].toString()))}),I(8,"mat-icon"),D(9),h()()()()()}if(i&2){let A=e.$implicit;p(2);let t=Ki(1),n=p(2);Q(2),nA(A),Q(4),nA(t[A]),Q(3),nA(n.copiedId===(t[A]==null?null:t[A].toString())?"check":"content_copy")}}function wbA(i,e){if(i&1&&(I(0,"table",15),ke(1,mbA,10,3,"tr",null,ni),h()),i&2){p();let A=Ki(1),t=p(2);Q(),_e(t.Object.keys(A))}}function ybA(i,e){i&1&&(I(0,"div",1),D(1,"No attributes available"),h())}function DbA(i,e){if(i&1&&(I(0,"div",13),ro(1),T(2,wbA,3,0,"table",15)(3,ybA,2,0,"div",1),h()),i&2){let A=p(2);Q();let t=so(A.getSelectedSpanAttributesView());Q(),O(t&&A.Object.keys(t).length>0?2:3)}}function vbA(i,e){if(i&1){let A=aA();ro(0),I(1,"div",14),lA(2,"app-custom-json-viewer",25),I(3,"button",26),U("click",function(){L(A);let n=Ki(0),o=p(2);return G(o.copyJsonToClipboard(n,"raw"))}),I(4,"mat-icon"),D(5),h()()()}if(i&2){let A=p(2),t=so(A.getSelectedSpanRawView());Q(2),H("json",t),Q(3),nA(A.copiedId==="raw"?"check":"content_copy")}}function bbA(i,e){if(i&1){let A=aA();I(0,"div",0)(1,"div",2)(2,"mat-paginator",3),U("page",function(n){L(A);let o=p();return G(o.onPage(n))}),h(),I(3,"div",4),D(4),h(),lA(5,"div",5),I(6,"button",6),U("click",function(){L(A);let n=p();return G(n.traceService.selectedRow(void 0))}),I(7,"mat-icon"),D(8,"remove_selection"),h()()(),I(9,"div",7)(10,"div",8)(11,"button",9),U("click",function(){L(A);let n=p();return G(n.selectedDetailTab.set("info"))}),I(12,"mat-icon"),D(13,"info"),h()(),I(14,"button",10),U("click",function(){L(A);let n=p();return G(n.selectedDetailTab.set("attributes"))}),I(15,"mat-icon"),D(16,"list_alt"),h()(),I(17,"button",11),U("click",function(){L(A);let n=p();return G(n.selectedDetailTab.set("raw"))}),I(18,"mat-icon"),D(19,"data_object"),h()()(),I(20,"div",12),T(21,fbA,61,19,"div",13),T(22,DbA,4,2,"div",13),T(23,vbA,6,3,"div",14),h()()()}if(i&2){let A,t=p();Q(2),H("length",t.orderedTraceData.length)("pageSize",1)("pageIndex",t.selectedSpanIndex),Q(2),Ee(" ",(A=t.selectedSpan())==null?null:A.name," "),Q(7),_A("active",t.selectedDetailTab()==="info"),Q(3),_A("active",t.selectedDetailTab()==="attributes"),Q(3),_A("active",t.selectedDetailTab()==="raw"),Q(4),O(t.selectedDetailTab()==="info"?21:-1),Q(),O(t.selectedDetailTab()==="attributes"?22:-1),Q(),O(t.selectedDetailTab()==="raw"?23:-1)}}function MbA(i,e){i&1&&(I(0,"div",1),D(1,"Select a trace span to view its details"),h())}var RR=class i extends rd{nextPageLabel="Next Span";previousPageLabel="Previous Span";firstPageLabel="First Span";lastPageLabel="Last Span";getRangeLabel=(e,A,t)=>t===0?"Span 0 of 0":(t=Math.max(t,0),`Span ${e*A+1} of ${t}`);static \u0275fac=(()=>{let e;return function(t){return(e||(e=Li(i)))(t||i)}})();static \u0275prov=jA({token:i,factory:i.\u0275fac})},xy=class i{_traceData=[];orderedTraceData=[];set traceData(e){this._traceData=e||[],this.orderedTraceData=this.computeOrdered(this._traceData)}get traceData(){return this._traceData}computeOrdered(e){let A=e.map(a=>P({},a)),t=new Map,n=[];A.forEach(a=>t.set(String(a.span_id),a)),A.forEach(a=>{if(a.parent_span_id&&t.has(String(a.parent_span_id))){let r=t.get(String(a.parent_span_id));r.children=r.children||[],r.children.push(a)}else n.push(a)});let o=a=>a.flatMap(r=>[r,...r.children?o(r.children):[]]);return o(n)}traceService=w(ng);selectedSpan=sr(this.traceService.selectedTraceRow$);static getValidTraceTab(e){return e==="info"||e==="attributes"||e==="raw"?e:"info"}selectedDetailTab=mA(i.getValidTraceTab(window.localStorage.getItem("adk-trace-tab-selected-tab")));switchToEvent=Si();constructor(){Fn(()=>{window.localStorage.setItem("adk-trace-tab-selected-tab",this.selectedDetailTab())})}formatTime(e){return e?new Date(e/1e6).toLocaleString():"N/A"}get selectedSpanChildren(){let e=this.selectedSpan();return e?e.children&&e.children.length>0?e.children:this.traceData.filter(A=>A.parent_span_id&&String(A.parent_span_id)===String(e.span_id)):[]}selectSpanById(e){if(!e)return;let A=this.traceData.find(t=>String(t.span_id)===String(e));A&&this.traceService.selectedRow(A)}get selectedSpanIndex(){let e=this.selectedSpan();if(!e)return;let A=this.orderedTraceData.findIndex(t=>t.span_id===e.span_id);return A===-1?void 0:A}onPage(e){e.pageIndex>=0&&e.pageIndex=this.orderedTraceData.length?0:this.selectedSpanIndex+1:t=this.selectedSpanIndex-1<0?this.orderedTraceData.length-1:this.selectedSpanIndex-1,this.traceService.selectedRow(this.orderedTraceData[t])}Object=Object;copiedId=null;copyToClipboard(e,A){if(e==null||e==="")return;let t=String(e);navigator.clipboard.writeText(t).then(()=>{this.copiedId=A||t,setTimeout(()=>this.copiedId=null,2e3)})}getSelectedSpanEventId(){return this.selectedSpan()?.attrEventId}getSelectedSpanAttributesView(){return this.selectedSpan()?.rawAttributesUseThisFieldOnlyForDisplay??{}}getSelectedSpanRawView(){return this.selectedSpan()?.rawSpanUseThisFieldOnlyForDisplay}copyJsonToClipboard(e,A){if(!e)return;let t=JSON.stringify(e,null,2);navigator.clipboard.writeText(t).then(()=>{this.copiedId=A,setTimeout(()=>this.copiedId=null,2e3)})}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-trace-tab"]],hostBindings:function(A,t){A&1&&U("keydown",function(o){return t.handleKeyboardNavigation(o)},Fg)},inputs:{traceData:"traceData"},outputs:{switchToEvent:"switchToEvent"},features:[pt([{provide:rd,useClass:RR}])],decls:2,vars:1,consts:[[1,"event-details-container"],[1,"empty-state"],[1,"event-details-header"],["hidePageSize","","aria-label","Select span",1,"event-paginator",3,"page","length","pageSize","pageIndex"],[1,"span-title"],[2,"flex-grow","1"],["mat-icon-button","","matTooltip","Clear selection",3,"click"],[1,"event-details-content"],[1,"vertical-tabs-sidebar"],["mat-icon-button","","matTooltip","Info","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Attributes","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Raw JSON","matTooltipPosition","right",3,"click"],[1,"vertical-tabs-content"],[1,"info-tables-container"],[1,"json-viewer-container","json-viewer-wrapper"],["app-info-table",""],[1,"value-cell"],[3,"matTooltip"],["mat-icon-button","","matTooltip","Copy",1,"copy-value-button",3,"click"],[1,"id-text"],[1,"id-cell"],["mat-icon-button","","matTooltip","Copy",1,"copy-id-button",3,"click"],["app-info-table","","title","Children"],["app-info-table","","title","Events"],["href","javascript:void(0)",1,"span-link","id-text",3,"click","matTooltip"],[3,"json"],["mat-icon-button","","matTooltip","Copy JSON",1,"floating-copy-button",3,"click"]],template:function(A,t){A&1&&T(0,bbA,24,13,"div",0)(1,MbA,2,0,"div",1),A&2&&O(t.selectedSpan()!==void 0?0:1)},dependencies:[qi,yi,Un,zt,Ha,rn,fl,pm,u1],styles:["[_nghost-%COMP%]{display:block;height:100%}.json-viewer-container[_ngcontent-%COMP%]{margin:10px}.event-paginator[_ngcontent-%COMP%]{display:flex;justify-content:center;background-color:transparent}.event-paginator[_ngcontent-%COMP%] .mat-mdc-paginator-range-label{order:2;margin:0 0 0 8px}.span-title[_ngcontent-%COMP%]{font-weight:500;font-family:Google Sans Mono,monospace;font-size:13px;color:var(--mat-sys-on-surface);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:300px;margin-left:16px}.event-details-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%}.event-details-content[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}.vertical-tabs-sidebar[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:48px;border-right:1px solid var(--mat-sys-outline-variant);padding-top:8px;align-items:center;gap:8px}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.vertical-tabs-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;overflow-y:auto}.event-details-header[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--mat-sys-outline-variant);height:48px;flex-shrink:0}.empty-state[_ngcontent-%COMP%]{padding:16px;text-align:center;color:var(--mat-sys-on-surface-variant);font-style:italic;font-size:14px}.info-tables-container[_ngcontent-%COMP%]{padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.span-link[_ngcontent-%COMP%]{color:var(--mat-sys-primary);text-decoration:none;cursor:pointer}.span-link[_ngcontent-%COMP%]:hover{text-decoration:underline}.id-text[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:11px}.id-cell[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;overflow:hidden}.id-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child, .value-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.id-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .id-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%]{opacity:1}.copy-id-button[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%]{width:28px!important;height:28px!important;padding:0!important;line-height:28px!important;flex-shrink:0;margin:-4px 0!important;opacity:0;transition:opacity .2s ease-in-out;border-radius:4px!important;overflow:hidden!important}.copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.copy-id-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.json-viewer-wrapper[_ngcontent-%COMP%]{position:relative}.json-viewer-wrapper[_ngcontent-%COMP%]:hover .floating-copy-button[_ngcontent-%COMP%]{opacity:1}.floating-copy-button[_ngcontent-%COMP%]{position:absolute;top:4px;right:4px;z-index:10;opacity:0;transition:opacity .2s ease-in-out;background-color:var(--mat-sys-surface-container-high)!important;border-radius:4px!important;overflow:hidden!important;width:28px!important;height:28px!important;line-height:28px!important;padding:0!important}.floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.floating-copy-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.floating-copy-button[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}"]})};var SbA={agentDevelopmentKitLabel:"Agent Development Kit",disclosureTooltip:"ADK Web is for development purposes. It has access to all the data and should not be used in production.",collapsePanelTooltip:"Collapse panel",eventsTabLabel:"Events",stateTabLabel:"State",artifactsTabLabel:"Artifacts",sessionsTabLabel:"Sessions",evalTabLabel:"Evals",testsTabLabel:"Tests",selectEventAriaLabel:"Select event",infoTabLabel:"Info",graphTabLabel:"Graph",requestDetailsTabLabel:"Request",responseDetailsTabLabel:"Response",responseIsNotAvailable:"Response is not available",requestIsNotAvailable:"Request is not available",clearSelectionButtonLabel:"Remove selection"},_E=new MA("Side Panel Messages",{factory:()=>SbA});var kbA=["eventMenuTrigger"],_bA=["graphContainer"],xbA=(i,e)=>e.span_id,RbA=(i,e)=>e.modality,B$=(i,e)=>e.key,NbA=(i,e)=>e.id;function FbA(i,e){if(i&1){let A=aA();I(0,"button",10),U("click",function(){L(A);let n=p();return G(n.selectedDetailTab="graph")}),I(1,"mat-icon"),D(2,"account_tree"),h()()}if(i&2){let A=p();_A("active",A.selectedDetailTab==="graph"),H("matTooltip",zC(A.i18n.graphTabLabel))}}function LbA(i,e){if(i&1){let A=aA();I(0,"div",31),lA(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(A);let n=p(3);return G(n.copyJsonToClipboard(n.selectedEvent().nodeInfo.outputFor,"nodeInfo.outputFor"))}),I(3,"mat-icon"),D(4),h()()()}if(i&2){let A=p(3);Q(),H("json",A.selectedEvent().nodeInfo.outputFor)("showMarkdown",!0),Q(3),nA(A.copiedId==="nodeInfo.outputFor"?"check":"content_copy")}}function GbA(i,e){i&1&&D(0," N/A ")}function KbA(i,e){if(i&1){let A=aA();I(0,"tr")(1,"td"),D(2,"Message As Output"),h(),I(3,"td")(4,"span",24)(5,"span",22),D(6),h(),I(7,"button",25),U("click",function(){L(A);let n=p(3);return G(n.copyToClipboard(n.selectedEvent().nodeInfo.messageAsOutput))}),I(8,"mat-icon"),D(9),h()()()()()}if(i&2){let A,t=p(3);Q(5),H("matTooltip",((A=t.selectedEvent().nodeInfo.messageAsOutput)==null?null:A.toString())||""),Q(),nA(t.selectedEvent().nodeInfo.messageAsOutput),Q(3),nA(t.copiedId===t.selectedEvent().nodeInfo.messageAsOutput?"check":"content_copy")}}function UbA(i,e){if(i&1){let A=aA();I(0,"table",26)(1,"tr")(2,"td"),D(3,"Node Path"),h(),I(4,"td")(5,"span",24)(6,"span",22),D(7),h(),I(8,"button",25),U("click",function(){L(A);let n=p(2);return G(n.copyToClipboard(n.selectedEvent().nodeInfo.path))}),I(9,"mat-icon"),D(10),h()()()()(),I(11,"tr")(12,"td"),D(13,"Output For"),h(),I(14,"td"),T(15,LbA,5,3,"div",31)(16,GbA,1,0),h()(),T(17,KbA,10,3,"tr"),h()}if(i&2){let A=p(2);Q(6),H("matTooltip",A.selectedEvent().nodeInfo.path||""),Q(),nA(A.selectedEvent().nodeInfo.path||"N/A"),Q(3),nA(A.copiedId===A.selectedEvent().nodeInfo.path?"check":"content_copy"),Q(5),O(A.selectedEvent().nodeInfo.outputFor?15:16),Q(2),O(A.selectedEvent().nodeInfo.messageAsOutput!==void 0?17:-1)}}function TbA(i,e){if(i&1){let A=aA();I(0,"div",31),lA(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(A);let n=p().$implicit,o=p(3);return G(o.copyJsonToClipboard(o.selectedEvent().actions[n],"action."+n))}),I(3,"mat-icon"),D(4),h()()()}if(i&2){let A=p().$implicit,t=p(3);Q(),H("json",t.selectedEvent().actions[A])("showMarkdown",!0),Q(3),nA(t.copiedId==="action."+A?"check":"content_copy")}}function ObA(i,e){if(i&1){let A=aA();I(0,"span",24)(1,"span",22),D(2),h(),I(3,"button",25),U("click",function(){let n;L(A);let o=p().$implicit,a=p(3);return G(a.copyToClipboard((n=a.selectedEvent().actions[o])==null?null:n.toString()))}),I(4,"mat-icon"),D(5),h()()()}if(i&2){let A,t,n=p().$implicit,o=p(3);Q(),H("matTooltip",((A=o.selectedEvent().actions[n])==null?null:A.toString())||""),Q(),nA(o.selectedEvent().actions[n]),Q(3),nA(o.copiedId===((t=o.selectedEvent().actions[n])==null?null:t.toString())?"check":"content_copy")}}function JbA(i,e){if(i&1&&(I(0,"tr")(1,"td"),D(2),h(),I(3,"td"),T(4,TbA,5,3,"div",31)(5,ObA,6,3,"span",24),h()()),i&2){let A=e.$implicit,t=p(3);Q(2),nA(A),Q(2),O(t.isObject(t.selectedEvent().actions[A])?4:5)}}function YbA(i,e){if(i&1&&(I(0,"table",27),ke(1,JbA,6,2,"tr",null,ni),h()),i&2){let A=p(2);Q(),_e(A.Object.keys(A.selectedEvent().actions))}}function HbA(i,e){if(i&1){let A=aA();I(0,"tr")(1,"td"),D(2),h(),I(3,"td")(4,"div",31),lA(5,"app-custom-json-viewer",32),I(6,"button",33),U("click",function(){let n=L(A),o=n.$implicit,a=n.$index,r=p(3);return G(r.copyJsonToClipboard(o,"fc."+a))}),I(7,"mat-icon"),D(8),h()()()()()}if(i&2){let A=e.$implicit,t=e.$index,n=p(3);Q(2),nA(A==null?null:A.name),Q(3),H("json",A)("showMarkdown",!0),Q(3),nA(n.copiedId==="fc."+t?"check":"content_copy")}}function zbA(i,e){if(i&1&&(I(0,"table",28),ke(1,HbA,9,4,"tr",null,Ja),h()),i&2){let A=p(2);Q(),_e(A.functionCalls())}}function PbA(i,e){if(i&1&&(I(0,"div",35),lA(1,"img",36),h()),i&2){let A=p().$implicit;Q(),H("src","data:"+A.inlineData.mimeType+";base64,"+A.inlineData.data,mo)}}function jbA(i,e){if(i&1&&(I(0,"div"),lA(1,"audio",37),h()),i&2){let A=p().$implicit;Q(),H("src","data:"+A.inlineData.mimeType+";base64,"+A.inlineData.data)}}function VbA(i,e){if(i&1&&(I(0,"div"),lA(1,"video",37),h()),i&2){let A=p().$implicit;Q(),H("src","data:"+A.inlineData.mimeType+";base64,"+A.inlineData.data,mo)}}function qbA(i,e){if(i&1&&(I(0,"div"),D(1),h()),i&2){let A=p().$implicit;Q(),Ee(" Unsupported media type: ",A.inlineData==null?null:A.inlineData.mimeType," ")}}function WbA(i,e){if(i&1&&T(0,PbA,2,1,"div",35)(1,jbA,2,1,"div")(2,VbA,2,1,"div")(3,qbA,2,1,"div"),i&2){let A=e.$implicit;O(!(A.inlineData==null||A.inlineData.mimeType==null)&&A.inlineData.mimeType.startsWith("image/")?0:!(A.inlineData==null||A.inlineData.mimeType==null)&&A.inlineData.mimeType.startsWith("audio/")?1:!(A.inlineData==null||A.inlineData.mimeType==null)&&A.inlineData.mimeType.startsWith("video/")?2:3)}}function ZbA(i,e){if(i&1&&(I(0,"div",34),ke(1,WbA,4,1,null,null,Ja),h()),i&2){let A=p().$implicit;Q(),_e(A.mediaParts)}}function XbA(i,e){if(i&1){let A=aA();I(0,"tr")(1,"td"),D(2),h(),I(3,"td"),T(4,ZbA,3,0,"div",34),I(5,"div",31),lA(6,"app-custom-json-viewer",32),I(7,"button",33),U("click",function(){let n=L(A),o=n.$implicit,a=n.$index,r=p(3);return G(r.copyJsonToClipboard(o.cleanedFr,"pfr."+a))}),I(8,"mat-icon"),D(9),h()()()()()}if(i&2){let A=e.$implicit,t=e.$index,n=p(3);Q(2),nA(A.name),Q(2),O(A.hasMedia?4:-1),Q(2),H("json",A.cleanedFr)("showMarkdown",!0),Q(3),nA(n.copiedId==="pfr."+t?"check":"content_copy")}}function $bA(i,e){if(i&1&&(I(0,"table",29),ke(1,XbA,10,5,"tr",null,Ja),h()),i&2){let A=p(2);Q(),_e(A.processedFunctionResponses())}}function A7A(i,e){if(i&1){let A=aA();I(0,"tr")(1,"td"),D(2),h(),I(3,"td")(4,"span",21)(5,"a",38),U("click",function(){let n=L(A).$implicit,o=p(3);return G(o.switchToSpan(n))}),D(6),h(),I(7,"button",23),U("click",function(){let n=L(A).$implicit,o=p(3);return G(o.copyToClipboard(n.span_id))}),I(8,"mat-icon"),D(9),h()()()()()}if(i&2){let A=e.$implicit,t=p(3);Q(2),nA(A.name),Q(3),H("matTooltip",A.span_id),Q(),nA(A.span_id),Q(3),nA(t.copiedId===A.span_id?"check":"content_copy")}}function e7A(i,e){if(i&1&&(I(0,"table",30),ke(1,A7A,10,4,"tr",null,xbA),h()),i&2){let A=p(2);Q(),_e(A.associatedSpans())}}function t7A(i,e){if(i&1){let A=aA();I(0,"div",16)(1,"table",19)(2,"tr")(3,"td"),D(4,"Event ID"),h(),I(5,"td",20)(6,"span",21)(7,"span",22),D(8),h(),I(9,"button",23),U("click",function(){let n;L(A);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.id))}),I(10,"mat-icon"),D(11),h()()()()(),I(12,"tr")(13,"td"),D(14,"Invocation ID"),h(),I(15,"td",20)(16,"span",21)(17,"span",22),D(18),h(),I(19,"button",23),U("click",function(){let n;L(A);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.invocationId))}),I(20,"mat-icon"),D(21),h()()()()(),I(22,"tr")(23,"td"),D(24,"Branch"),h(),I(25,"td")(26,"span",24)(27,"span",22),D(28),h(),I(29,"button",25),U("click",function(){let n;L(A);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.branch))}),I(30,"mat-icon"),D(31),h()()()()(),I(32,"tr")(33,"td"),D(34,"Timestamp"),h(),I(35,"td")(36,"span",24)(37,"span",22),D(38),h(),I(39,"button",25),U("click",function(){let n;L(A);let o=p();return G(o.copyToClipboard(o.formatTime((n=o.selectedEvent())==null?null:n.timestamp),"timestamp"))}),I(40,"mat-icon"),D(41),h()()()()(),I(42,"tr")(43,"td"),D(44,"Author"),h(),I(45,"td")(46,"span",24)(47,"span",22),D(48),h(),I(49,"button",25),U("click",function(){let n;L(A);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.author))}),I(50,"mat-icon"),D(51),h()()()()()(),T(52,UbA,18,5,"table",26),T(53,YbA,3,0,"table",27),T(54,zbA,3,0,"table",28),T(55,$bA,3,0,"table",29),T(56,e7A,3,0,"table",30),h()}if(i&2){let A,t,n,o,a,r,s,l,g,C,d,B,u,E,f,m,v=p();Q(7),H("matTooltip",((A=v.selectedEvent())==null?null:A.id)||""),Q(),nA((t=v.selectedEvent())==null?null:t.id),Q(3),nA(v.copiedId===((n=v.selectedEvent())==null?null:n.id)?"check":"content_copy"),Q(6),H("matTooltip",((o=v.selectedEvent())==null?null:o.invocationId)||""),Q(),nA(((a=v.selectedEvent())==null?null:a.invocationId)||"N/A"),Q(3),nA(v.copiedId===((r=v.selectedEvent())==null?null:r.invocationId)?"check":"content_copy"),Q(6),H("matTooltip",((s=v.selectedEvent())==null?null:s.branch)||""),Q(),nA(((l=v.selectedEvent())==null?null:l.branch)||"N/A"),Q(3),nA(v.copiedId===((g=v.selectedEvent())==null?null:g.branch)?"check":"content_copy"),Q(6),H("matTooltip",v.formatTime((C=v.selectedEvent())==null?null:C.timestamp)),Q(),nA(v.formatTime((d=v.selectedEvent())==null?null:d.timestamp)),Q(3),nA(v.copiedId==="timestamp"?"check":"content_copy"),Q(6),H("matTooltip",((B=v.selectedEvent())==null?null:B.author)||""),Q(),nA((u=v.selectedEvent())==null?null:u.author),Q(3),nA(v.copiedId===((E=v.selectedEvent())==null?null:E.author)?"check":"content_copy"),Q(),O((f=v.selectedEvent())!=null&&f.nodeInfo?52:-1),Q(),O((m=v.selectedEvent())!=null&&m.actions&&v.Object.keys(v.selectedEvent().actions).length>0?53:-1),Q(),O(v.functionCalls().length>0?54:-1),Q(),O(v.processedFunctionResponses().length>0?55:-1),Q(),O(v.associatedSpans().length>0?56:-1)}}function i7A(i,e){if(i&1&&(I(0,"div",42),mt(1,"number"),I(2,"span",43),D(3),h(),I(4,"span",44),D(5),mt(6,"number"),h()()),i&2){let A=e.$implicit;H("matTooltip",A.modality+": "+Ft(1,3,A.tokenCount)),Q(3),nA(A.modality),Q(2),nA(Ft(6,5,A.tokenCount))}}function n7A(i,e){if(i&1&&ke(0,i7A,7,7,"div",42,RbA),i&2){let A=p().$implicit,t=p(3);_e(t.selectedEvent().usageMetadata[A])}}function o7A(i,e){if(i&1&&(I(0,"span",22),mt(1,"number"),D(2),mt(3,"number"),h()),i&2){let A=p(2).$implicit,t=p(3);H("matTooltip",Ft(1,2,t.selectedEvent().usageMetadata[A])||""),Q(2),nA(Ft(3,4,t.selectedEvent().usageMetadata[A]))}}function a7A(i,e){if(i&1&&(I(0,"span",22),D(1),h()),i&2){let A,t=p(2).$implicit,n=p(3);H("matTooltip",((A=n.selectedEvent().usageMetadata[t])==null?null:A.toString())||""),Q(),nA(n.selectedEvent().usageMetadata[t])}}function r7A(i,e){if(i&1&&T(0,o7A,4,6,"span",22)(1,a7A,2,2,"span",22),i&2){let A=p().$implicit,t=p(3);O(t.isNumber(t.selectedEvent().usageMetadata[A])?0:1)}}function s7A(i,e){if(i&1&&(I(0,"tr")(1,"td"),D(2),h(),I(3,"td")(4,"span",24)(5,"span"),T(6,n7A,2,0)(7,r7A,2,1),h()()()()),i&2){let A=e.$implicit,t=p(3);Q(2),nA(A),Q(2),_A("numeric-cell",t.isNumericValue(A,t.selectedEvent().usageMetadata[A])),Q(2),O(A==="promptTokensDetails"||A==="promptTokenDetails"||A==="candidatesTokenDetails"||A==="candidatesTokensDetails"||A==="cacheTokensDetails"?6:7)}}function l7A(i,e){if(i&1&&(I(0,"table",39),ke(1,s7A,8,4,"tr",null,ni),h()),i&2){let A=p(2);Q(),_e(A.Object.keys(A.selectedEvent().usageMetadata))}}function g7A(i,e){i&1&&(I(0,"table",39)(1,"tr")(2,"td",45),D(3," Select an LLM response to see usage metadata. "),h()()())}function c7A(i,e){if(i&1&&(I(0,"div",16),T(1,l7A,3,0,"table",39)(2,g7A,4,0,"table",39),I(3,"table",40)(4,"tr")(5,"td"),D(6,"Total Prompt Tokens"),h(),I(7,"td",41),D(8),mt(9,"number"),h()(),I(10,"tr")(11,"td"),D(12,"Total Candidates Tokens"),h(),I(13,"td",41),D(14),mt(15,"number"),h()(),I(16,"tr")(17,"td"),D(18,"Total Tokens"),h(),I(19,"td",41),D(20),mt(21,"number"),h()()()()),i&2){let A,t=p();Q(),O((A=t.selectedEvent())!=null&&A.usageMetadata&&t.Object.keys(t.selectedEvent().usageMetadata).length>0?1:2),Q(7),nA(Ft(9,4,t.sessionUsageMetadata()["Prompt Tokens"])),Q(6),nA(Ft(15,6,t.sessionUsageMetadata()["Candidates Tokens"])),Q(6),nA(Ft(21,8,t.sessionUsageMetadata()["Total Tokens"]))}}function C7A(i,e){if(i&1){let A=aA();I(0,"div",17),lA(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(A);let n=p();return G(n.copyJsonToClipboard(n.filteredSelectedEvent(),"raw"))}),I(3,"mat-icon"),D(4),h()()()}if(i&2){let A=p();Q(),H("json",A.filteredSelectedEvent())("showMarkdown",!0),Q(3),nA(A.copiedId==="raw"?"check":"content_copy")}}function d7A(i,e){if(i&1&&lA(0,"app-custom-json-viewer",32),i&2){let A=p().$implicit;H("json",A.oldValue)("showMarkdown",!0)}}function I7A(i,e){if(i&1&&(I(0,"span"),D(1),h()),i&2){let A=p().$implicit;Q(),nA(A.oldValue)}}function B7A(i,e){if(i&1&&lA(0,"app-custom-json-viewer",32),i&2){let A=p().$implicit;H("json",A.newValue)("showMarkdown",!0)}}function h7A(i,e){if(i&1&&(I(0,"span"),D(1),h()),i&2){let A=p().$implicit;Q(),nA(A.newValue)}}function E7A(i,e){if(i&1&&(I(0,"div",47)(1,"div",48),D(2),h(),I(3,"div",49)(4,"div",50)(5,"div",51),D(6,"Old Value"),h(),I(7,"div",52),T(8,d7A,1,2,"app-custom-json-viewer",32)(9,I7A,2,1,"span"),h()(),I(10,"div",50)(11,"div",51),D(12,"New Value"),h(),I(13,"div",52),T(14,B7A,1,2,"app-custom-json-viewer",32)(15,h7A,2,1,"span"),h()()()()),i&2){let A=e.$implicit,t=p(3);Q(2),nA(A.key),Q(6),O(t.isObject(A.oldValue)?8:9),Q(6),O(t.isObject(A.newValue)?14:15)}}function Q7A(i,e){if(i&1&&ke(0,E7A,16,3,"div",47,B$),i&2){let A=p(2);_e(A.stateChanges())}}function u7A(i,e){i&1&&(I(0,"div",46),D(1," No state changes in this event. "),h())}function p7A(i,e){if(i&1&&(I(0,"div",16),T(1,Q7A,2,0)(2,u7A,2,0,"div",46),h()),i&2){let A=p();Q(),O(A.stateChanges().length>0?1:2)}}function f7A(i,e){i&1&&(I(0,"div",53)(1,"mat-icon",66),D(2,"warning"),h(),I(3,"span"),D(4,"The loaded session file was for a different app. The graph may not be accurate."),h()())}function m7A(i,e){if(i&1){let A=aA();I(0,"button",72),U("click",function(){let n=L(A).$implicit,o=p(3);return G(o.onInvocationSelected(n.key))}),I(1,"mat-icon",73),D(2,"check"),h(),D(3),h()}if(i&2){let A,t=e.$implicit,n=p(3);H("matTooltip",t.key),Q(),ft("visibility",((A=n.selectedEvent())==null?null:A.invocationId)===t.key?"visible":"hidden"),Q(2),Ee(" ",t.value," ")}}function w7A(i,e){if(i&1&&(I(0,"button",67)(1,"div",68)(2,"span",69),D(3),h(),I(4,"mat-icon",70),D(5,"arrow_drop_down"),h()()(),I(6,"mat-menu",null,3),ke(8,m7A,4,4,"button",71,B$),h()),i&2){let A,t=Bi(7),n=p(2);H("matMenuTriggerFor",t),Q(2),H("matTooltip",((A=n.selectedEvent())==null?null:A.invocationId)||""),Q(),Ee(" ",n.invocationDisplayMap().get(n.selectedEvent().invocationId)||n.selectedEvent().invocationId," "),Q(5),_e(n.invocationDisplayEntries())}}function y7A(i,e){if(i&1&&(I(0,"span",57),D(1),h()),i&2){let A,t,n=p(2);H("matTooltip",((A=n.selectedEvent())==null?null:A.invocationId)||""),Q(),nA((t=n.selectedEvent())!=null&&t.invocationId?n.invocationDisplayMap().get(n.selectedEvent().invocationId)||n.selectedEvent().invocationId:"N/A")}}function D7A(i,e){i&1&&(I(0,"mat-icon",75),D(1,"chevron_right"),h())}function v7A(i,e){i&1&&(I(0,"mat-icon",75),D(1,"chevron_right"),h())}function b7A(i,e){if(i&1&&(T(0,v7A,2,0,"mat-icon",75),I(1,"button",74),D(2),h()),i&2){let A=e.$implicit,t=e.$index,n=p(3);O(t>0?0:-1),Q(),_A("active",t===n.breadcrumbs().length-1),Q(),Ee(" ",A," ")}}function M7A(i,e){if(i&1&&(I(0,"div",58)(1,"button",74),D(2),h(),T(3,D7A,2,0,"mat-icon",75),ke(4,b7A,3,4,null,null,Ja),h()),i&2){let A=p(2);Q(2),nA(A.appName()),Q(),O(A.breadcrumbs().length>0?3:-1),Q(),_e(A.breadcrumbs())}}function S7A(i,e){if(i&1){let A=aA();I(0,"button",76),U("click",function(){L(A);let n=p(2);return G(n.showAgentStructureGraph.emit(!0))}),I(1,"mat-icon"),D(2,"fullscreen"),h()()}}function k7A(i,e){i&1&&(I(0,"div",61),D(1," Graph is not available for this agent. "),h())}function _7A(i,e){i&1&&(I(0,"div",62),lA(1,"mat-progress-spinner",77),h())}function x7A(i,e){if(i&1&&lA(0,"div",63),i&2){let A=p(2);H("innerHtml",A.renderedEventGraph(),Fc)}}function R7A(i,e){if(i&1){let A=aA();I(0,"button",78),U("click",function(){let n=L(A).$implicit,o=p(2);return G(o.handleMenuSelection(n))}),I(1,"span"),D(2),mt(3,"date"),h()()}if(i&2){let A=e.$implicit;Q(2),Ya("Run ",A.runIndex," (",G0(3,2,A.timestamp,"mediumTime"),")")}}function N7A(i,e){if(i&1&&(I(0,"div",18),T(1,f7A,5,0,"div",53),I(2,"div",54)(3,"div",55)(4,"span",56),D(5,"Invocation:"),h(),T(6,w7A,10,3)(7,y7A,2,2,"span",57),h()(),T(8,M7A,6,2,"div",58),I(9,"div",59,0),T(11,S7A,3,0,"button",60),T(12,k7A,2,0,"div",61)(13,_7A,2,0,"div",62)(14,x7A,1,1,"div",63),h(),lA(15,"div",64,1),I(17,"mat-menu",null,2),ke(19,R7A,4,5,"button",65,NbA),h()()),i&2){let A,t=Bi(18),n=p();Q(),O(n.isViewOnlyAppNameMismatch()?1:-1),Q(5),O(n.invocationDisplayMap().size>0&&((A=n.selectedEvent())!=null&&A.invocationId)?6:7),Q(2),O(n.hasSubWorkflows()&&(n.breadcrumbs().length>0||n.appName())?8:-1),Q(3),O(n.graphsAvailable()?11:-1),Q(),O(n.graphsAvailable()?n.renderedEventGraph()?14:13:12),Q(3),ft("left",n.menuPos.x+"px")("top",n.menuPos.y+"px"),H("matMenuTriggerFor",t),Q(4),_e(n.menuEvents)}}function F7A(i,e){i&1&&(I(0,"div",62),lA(1,"mat-progress-spinner",77),h())}function L7A(i,e){i&1&&(I(0,"div",61),D(1,"Select an LLM response to see request details."),h())}function G7A(i,e){if(i&1){let A=aA();I(0,"div",17),lA(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(A);let n=p(2);return G(n.copyJsonToClipboard(n.llmRequest(),"request"))}),I(3,"mat-icon"),D(4),h()()()}if(i&2){let A=p(2);Q(),H("json",A.llmRequest())("showMarkdown",!0),Q(3),nA(A.copiedId==="request"?"check":"content_copy")}}function K7A(i,e){if(i&1&&(T(0,F7A,2,0,"div",62),mt(1,"async"),S1(2,L7A,2,0,"div",61)(3,G7A,5,3,"div",17)),i&2){let A=p();O(Ft(1,1,A.uiStateService.isEventRequestResponseLoading())===!0?0:A.llmRequest()?3:2)}}function U7A(i,e){i&1&&(I(0,"div",62),lA(1,"mat-progress-spinner",77),h())}function T7A(i,e){i&1&&(I(0,"div",61),D(1,"Select an LLM response to see response details."),h())}function O7A(i,e){if(i&1){let A=aA();I(0,"div",17),lA(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(A);let n=p(2);return G(n.copyJsonToClipboard(n.llmResponse(),"response"))}),I(3,"mat-icon"),D(4),h()()()}if(i&2){let A=p(2);Q(),H("json",A.llmResponse())("showMarkdown",!0),Q(3),nA(A.copiedId==="response"?"check":"content_copy")}}function J7A(i,e){if(i&1&&(T(0,U7A,2,0,"div",62),mt(1,"async"),S1(2,T7A,2,0,"div",61)(3,O7A,5,3,"div",17)),i&2){let A=p();O(Ft(1,1,A.uiStateService.isEventRequestResponseLoading())===!0?0:A.llmResponse()?3:2)}}var Ry=class i{eventDataSize=ve.required();eventDataMap=ve(new Map);selectedEventIndex=ve();selectedEvent=ve.required();filteredSelectedEvent=ve();renderedEventGraph=ve();rawSvgString=ve(null);llmRequest=ve();llmResponse=ve();traceData=ve([]);appName=ve("");selectedEventGraphPath=ve("");hasSubWorkflows=ve(!1);graphsAvailable=ve(!0);invocationDisplayMap=ve(new Map);forceGraphTab=ve(!1);isViewOnlySession=ve(!1);isViewOnlyAppNameMismatch=ve(!1);invocationDisplayEntries=ye(()=>Array.from(this.invocationDisplayMap().entries()).map(([e,A])=>({key:e,value:A})));breadcrumbs=ye(()=>{let e=this.selectedEventGraphPath();return e?e.split("/").filter(A=>A):[]});functionCalls=ye(()=>(this.selectedEvent()?.content?.parts||[]).filter(A=>!!A.functionCall).map(A=>A.functionCall));functionResponses=ye(()=>(this.selectedEvent()?.content?.parts||[]).filter(A=>!!A.functionResponse).map(A=>A.functionResponse));processedFunctionResponses=ye(()=>this.functionResponses().map(A=>{if(!A)return null;if(A&&Array.isArray(A.parts)){let n=A.parts.filter(a=>!!a.inlineData).map(a=>a.inlineData&&a.inlineData.data?$A(P({},a),{inlineData:$A(P({},a.inlineData),{data:a.inlineData.data.replace(/-/g,"+").replace(/_/g,"/")})}):a),o=P({},A);return delete o.parts,{name:A.name,cleanedFr:o,mediaParts:n,hasMedia:n.length>0}}return{name:A.name,cleanedFr:A,mediaParts:[],hasMedia:!1}}).filter(A=>A!==null));page=Si();closeSelectedEvent=Si();openImageDialog=Si();switchToTraceView=Si();showAgentStructureGraph=Si();drillDownNodePath=Si();selectEventById=Si();jumpToInvocation=Si();onInvocationSelected(e){this.jumpToInvocation.emit(e)}eventMenuTrigger;graphContainer;menuEvents=[];menuPos={x:0,y:0};uiStateService=w(ag);traceService=w(ng);i18n=w(_E);isEventRequestResponseLoadingSignal=sr(this.uiStateService.isEventRequestResponseLoading(),{initialValue:!1});associatedSpans=ye(()=>{let e=this.selectedEvent();if(!e||!e.id)return[];let A=this.traceData();if(!A)return[];let t=o=>{let a=[];for(let r of o)a.push(r),r.children&&(a=a.concat(t(r.children)));return a};return t(A).filter(o=>o.attrEventId===e.id)});sessionUsageMetadata=ye(()=>{let e=Array.from(this.eventDataMap().values()),A=0,t=0,n=0;return e.forEach(o=>{let a=o.usageMetadata;if(a){let r=a.promptTokenCount??a.promptTokens??0,s=a.candidatesTokenCount??a.candidatesTokens??0,l=a.totalTokenCount??a.totalTokens??0;A+=Number(r),t+=Number(s),n+=Number(l)}}),{"Prompt Tokens":A,"Candidates Tokens":t,"Total Tokens":n}});_selectedDetailTab="event";get selectedDetailTab(){return this._selectedDetailTab}set selectedDetailTab(e){this._selectedDetailTab=e,window.localStorage.setItem("adk-event-tab-selected-tab",e),e==="graph"&&setTimeout(()=>{this.graphContainer?.nativeElement&&FB(this.graphContainer.nativeElement,(A,t)=>{this.handleNodeClick(A,t)})},50)}copiedId=null;copyToClipboard(e,A){e&&navigator.clipboard.writeText(e).then(()=>{this.copiedId=A||e,setTimeout(()=>this.copiedId=null,2e3)})}copyJsonToClipboard(e,A){if(!e)return;let t=JSON.stringify(e,null,2);navigator.clipboard.writeText(t).then(()=>{this.copiedId=A,setTimeout(()=>this.copiedId=null,2e3)})}switchToSpan(e){this.switchToTraceView.emit(),this.traceService.selectedRow(e)}stateChanges=ye(()=>{let e=this.selectedEvent();if(!e)return[];let A=Array.from(this.eventDataMap().values());A.sort((o,a)=>(o.timestamp||0)-(a.timestamp||0));let t={},n=[];for(let o of A){let a=o.actions?.stateDelta;if(o.id===e.id){if(a)for(let r of Object.keys(a))r!=="__llm_request_key__"&&n.push({key:r,oldValue:t[r]!==void 0?t[r]:"N/A",newValue:a[r]});break}if(a)for(let r of Object.keys(a))r!=="__llm_request_key__"&&(t[r]=a[r])}return n});constructor(){let e=window.localStorage.getItem("adk-event-tab-selected-tab");e&&["event","raw","request","response","graph","metadata","state"].includes(e)&&(this._selectedDetailTab=e),Fn(()=>{let t=this.renderedEventGraph(),n=this._selectedDetailTab;t&&n==="graph"&&setTimeout(()=>{this.graphContainer?.nativeElement&&FB(this.graphContainer.nativeElement,(o,a)=>{this.handleNodeClick(o,a)})},50)});let A=!1;Fn(()=>{let t=this.forceGraphTab(),n=this.selectedEvent();t&&!A&&(this.selectedDetailTab=this.graphsAvailable()?"graph":"event"),A=t})}formatTime(e){if(!e)return"N/A";let A=e<1e10?e*1e3:e;return new Date(A).toLocaleString()}isNumber(e){return typeof e=="number"}isNumericValue(e,A){return typeof A=="number"?!0:["promptTokensDetails","promptTokenDetails","candidatesTokenDetails","candidatesTokensDetails","cacheTokensDetails"].includes(e)}isObject(e){return e!==null&&typeof e=="object"}handleNodeClick(e,A){let t=Array.from(this.eventDataMap().values()),o=this.selectedEvent()?.invocationId;o&&(t=t.filter(l=>l.invocationId===o));let a=[],r=[],s="";t.forEach(l=>{let g=l.nodeInfo?.path;if(l.author==="user"&&(g="__START__"),!g)return;let C=g;g!=="__START__"&&(C=g.split("/").map(E=>E.split("@")[0]).join("/"));let d=C.split("/"),B=d[d.length-1],u="";if(d.length>=2&&d[d.length-1]==="call_llm"&&d[d.length-2]===l.author?(B=d[d.length-2],u=d.slice(1,-2).join("/")):u=d.slice(1,-1).join("/"),u===this.selectedEventGraphPath()){let E=g.split("/"),f=E[E.length-1],m=e.includes("@")?f:B;m!==s&&(s===e&&r.length>0&&a.push(r),s=m,r=[]),m===e&&r.push(l)}}),s===e&&r.length>0&&a.push(r),a.length!==0&&(a.length===1?this.selectEventById.emit(a[0][0].id):(this.menuEvents=a.map((l,g)=>({id:l[0].id,runIndex:g+1,timestamp:l[0].timestamp})),A&&(this.menuPos={x:A.clientX,y:A.clientY}),this.eventMenuTrigger.openMenu()))}handleMenuSelection(e){this.selectEventById.emit(e.id)}Object=Object;static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-event-tab"]],viewQuery:function(A,t){if(A&1&&Wt(kbA,5)(_bA,5),A&2){let n;se(n=le())&&(t.eventMenuTrigger=n.first),se(n=le())&&(t.graphContainer=n.first)}},inputs:{eventDataSize:[1,"eventDataSize"],eventDataMap:[1,"eventDataMap"],selectedEventIndex:[1,"selectedEventIndex"],selectedEvent:[1,"selectedEvent"],filteredSelectedEvent:[1,"filteredSelectedEvent"],renderedEventGraph:[1,"renderedEventGraph"],rawSvgString:[1,"rawSvgString"],llmRequest:[1,"llmRequest"],llmResponse:[1,"llmResponse"],traceData:[1,"traceData"],appName:[1,"appName"],selectedEventGraphPath:[1,"selectedEventGraphPath"],hasSubWorkflows:[1,"hasSubWorkflows"],graphsAvailable:[1,"graphsAvailable"],invocationDisplayMap:[1,"invocationDisplayMap"],forceGraphTab:[1,"forceGraphTab"],isViewOnlySession:[1,"isViewOnlySession"],isViewOnlyAppNameMismatch:[1,"isViewOnlyAppNameMismatch"]},outputs:{page:"page",closeSelectedEvent:"closeSelectedEvent",openImageDialog:"openImageDialog",switchToTraceView:"switchToTraceView",showAgentStructureGraph:"showAgentStructureGraph",drillDownNodePath:"drillDownNodePath",selectEventById:"selectEventById",jumpToInvocation:"jumpToInvocation"},decls:35,vars:32,consts:[["graphContainer",""],["eventMenuTrigger","matMenuTrigger"],["eventMenu","matMenu"],["invocationSelectorMenu","matMenu"],[1,"event-details-container"],[1,"event-details-header"],["hidePageSize","",1,"event-paginator",3,"page","length","pageSize","pageIndex"],["mat-icon-button","",3,"click","matTooltip"],[1,"event-details-content"],[1,"vertical-tabs-sidebar"],["mat-icon-button","","matTooltipPosition","right",3,"click","matTooltip"],["mat-icon-button","","matTooltipPosition","right",3,"active","matTooltip"],["mat-icon-button","","matTooltip","Usage Metadata","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","State Changes","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Raw JSON","matTooltipPosition","right",3,"click"],[1,"vertical-tabs-content"],[1,"info-tables-container"],[1,"json-viewer-container","json-viewer-wrapper"],[1,"event-graph-wrapper"],["app-info-table",""],[1,"id-text"],[1,"id-cell"],[3,"matTooltip"],["mat-icon-button","","matTooltip","Copy",1,"copy-id-button",3,"click"],[1,"value-cell"],["mat-icon-button","","matTooltip","Copy",1,"copy-value-button",3,"click"],["app-info-table","","title","Node Info"],["app-info-table","","title","Actions"],["app-info-table","","title","Function Calls"],["app-info-table","","title","Function Responses"],["app-info-table","","title","Associated Spans"],[1,"json-viewer-wrapper"],[3,"json","showMarkdown"],["mat-icon-button","","matTooltip","Copy JSON",1,"floating-copy-button",3,"click"],[1,"media-container"],[1,"generated-image-container"],["alt","image",3,"src"],["controls","",3,"src"],["href","javascript:void(0)",1,"span-link","id-text",3,"click","matTooltip"],["app-info-table","","title","Usage Summary for Event"],["app-info-table","","title","Usage Summary for Session"],[1,"numeric-cell"],[1,"detail-row",3,"matTooltip"],[1,"modality-label"],[1,"modality-value"],["colspan","2",2,"text-align","center","padding","20px","color","var(--mat-sys-on-surface-variant)"],[1,"empty-state"],[1,"state-change-card"],[1,"state-change-header"],[1,"state-change-values"],[1,"state-value-block"],[1,"state-value-label"],[1,"state-value-content"],[1,"warning-banner",2,"background-color","#fff3cd","color","#856404","padding","8px","margin-bottom","8px","border-radius","4px","display","flex","align-items","center"],[1,"graph-header",2,"justify-content","space-between"],[2,"display","flex","align-items","center","min-width","0","flex","1","width","100%"],[2,"white-space","nowrap","flex-shrink","0"],[2,"margin-left","8px","font-weight","normal",3,"matTooltip"],[1,"breadcrumb-container"],[1,"event-graph-container"],["mat-icon-button","","matTooltip","Full Screen",1,"fullscreen-graph-button"],[1,"request-response-empty-state"],[1,"request-response-loading-spinner-container"],[1,"svg-graph-wrapper",3,"innerHtml"],[2,"visibility","hidden","position","fixed",3,"matMenuTriggerFor"],["mat-menu-item",""],[2,"margin-right","8px"],["mat-button","",1,"invocation-selector-button",2,"margin-left","8px","padding","0 8px","min-width","0","flex","1","height","24px","line-height","24px","width","100%",3,"matMenuTriggerFor"],[2,"display","flex","align-items","center","width","100%","min-width","0","justify-content","space-between"],[2,"font-weight","normal","overflow","hidden","text-overflow","ellipsis","white-space","nowrap","flex","1","text-align","left",3,"matTooltip"],[2,"margin-left","4px","font-size","18px","width","18px","height","18px","flex-shrink","0"],["mat-menu-item","","matTooltipPosition","right",3,"matTooltip"],["mat-menu-item","","matTooltipPosition","right",3,"click","matTooltip"],[2,"font-size","16px","width","16px","height","16px","margin-right","8px","color","var(--mat-sys-primary)"],["disabled","",1,"breadcrumb-item"],[1,"breadcrumb-separator"],["mat-icon-button","","matTooltip","Full Screen",1,"fullscreen-graph-button",3,"click"],["mode","indeterminate","diameter","50"],["mat-menu-item","",3,"click"]],template:function(A,t){A&1&&(I(0,"div",4)(1,"div",5)(2,"mat-paginator",6),U("page",function(o){return t.page.emit(o)}),h(),I(3,"button",7),U("click",function(){return t.closeSelectedEvent.emit()}),I(4,"mat-icon"),D(5,"remove_selection"),h()()(),I(6,"div",8)(7,"div",9)(8,"button",10),U("click",function(){return t.selectedDetailTab="event"}),I(9,"mat-icon"),D(10,"info"),h()(),T(11,FbA,3,4,"button",11),I(12,"button",10),U("click",function(){return t.selectedDetailTab="request"}),I(13,"mat-icon"),D(14,"input"),h()(),I(15,"button",10),U("click",function(){return t.selectedDetailTab="response"}),I(16,"mat-icon"),D(17,"output"),h()(),I(18,"button",12),U("click",function(){return t.selectedDetailTab="metadata"}),I(19,"mat-icon"),D(20,"analytics"),h()(),I(21,"button",13),U("click",function(){return t.selectedDetailTab="state"}),I(22,"mat-icon"),D(23,"published_with_changes"),h()(),I(24,"button",14),U("click",function(){return t.selectedDetailTab="raw"}),I(25,"mat-icon"),D(26,"data_object"),h()()(),I(27,"div",15),T(28,t7A,57,20,"div",16),T(29,c7A,22,10,"div",16),T(30,C7A,5,3,"div",17),T(31,p7A,3,1,"div",16),T(32,N7A,21,10,"div",18),T(33,K7A,4,3),T(34,J7A,4,3),h()()()),A&2&&(Q(2),H("length",t.eventDataSize())("pageSize",1)("pageIndex",t.selectedEventIndex()),ie("aria-label",t.i18n.selectEventAriaLabel),Q(),H("matTooltip",zC(t.i18n.clearSelectionButtonLabel)),Q(5),_A("active",t.selectedDetailTab==="event"),H("matTooltip",zC(t.i18n.infoTabLabel)),Q(3),O(t.graphsAvailable()?11:-1),Q(),_A("active",t.selectedDetailTab==="request"),H("matTooltip",zC(t.i18n.requestDetailsTabLabel)),Q(3),_A("active",t.selectedDetailTab==="response"),H("matTooltip",zC(t.i18n.responseDetailsTabLabel)),Q(3),_A("active",t.selectedDetailTab==="metadata"),Q(3),_A("active",t.selectedDetailTab==="state"),Q(3),_A("active",t.selectedDetailTab==="raw"),Q(4),O(t.selectedDetailTab==="event"?28:-1),Q(),O(t.selectedDetailTab==="metadata"?29:-1),Q(),O(t.selectedDetailTab==="raw"?30:-1),Q(),O(t.selectedDetailTab==="state"?31:-1),Q(),O(t.selectedDetailTab==="graph"?32:-1),Q(),O(t.selectedDetailTab==="request"?33:-1),Q(),O(t.selectedDetailTab==="response"?34:-1))},dependencies:[qi,ki,yi,zt,pm,Es,rn,s2,hs,Gs,tg,fl,u1,gs,YN,bI],styles:["[_nghost-%COMP%]{display:block;height:100%}.json-viewer-container[_ngcontent-%COMP%]{margin:10px}.event-paginator[_ngcontent-%COMP%]{margin-right:auto;display:flex;justify-content:center;background-color:transparent}.event-paginator[_ngcontent-%COMP%] .mat-mdc-paginator-range-label{order:2;margin:0 0 0 8px}.event-details-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%}.event-details-content[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}.vertical-tabs-sidebar[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:48px;border-right:1px solid var(--mat-sys-outline-variant);padding-top:8px;align-items:center;gap:8px}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.vertical-tabs-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;overflow-y:auto}.event-details-header[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--mat-sys-outline-variant);height:48px;flex-shrink:0}.empty-state[_ngcontent-%COMP%]{padding:16px;text-align:center;color:var(--mat-sys-on-surface-variant);font-style:italic}.details-content[_ngcontent-%COMP%]{color:var(--side-panel-details-content-color);font-size:14px}.event-graph-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.breadcrumb-container[_ngcontent-%COMP%]{display:flex;align-items:center;font-size:13px;color:var(--mat-sys-on-surface-variant);padding:8px 12px}.breadcrumb-container[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:500;margin-right:8px;color:var(--mat-sys-on-surface)}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]{background:none;border:none;color:var(--mat-sys-primary);font-size:13px;padding:2px 4px}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-item.active[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface)}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface);font-weight:500}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-separator[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:var(--mat-sys-on-surface-variant);margin:0 4px}.graph-header[_ngcontent-%COMP%]{display:flex;align-items:center;font-size:13px;color:var(--mat-sys-on-surface-variant);background-color:var(--mat-sys-surface-container-lowest);padding:8px 16px;border-bottom:1px solid var(--mat-sys-outline-variant)}.graph-header[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:500;margin-right:8px;color:var(--mat-sys-on-surface)}.event-graph-container[_ngcontent-%COMP%]{flex:1;overflow:hidden;padding:16px;position:relative}.fullscreen-graph-button[_ngcontent-%COMP%]{position:absolute;top:4px;right:4px;z-index:10;width:48px!important;height:48px!important;padding:0!important;display:flex!important;justify-content:center!important;align-items:center!important}.fullscreen-graph-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:28px!important;width:28px!important;height:28px!important;line-height:28px!important;margin:0!important;padding:0!important}.event-graph-container[_ngcontent-%COMP%] .svg-graph-wrapper[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.event-graph-container[_ngcontent-%COMP%] svg{max-width:100%;max-height:100%;width:auto;height:auto;display:block}.event-graph-container[_ngcontent-%COMP%] svg>g.graph>polygon:first-child{fill:transparent!important}.request-response-loading-spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;margin-top:2em}.request-response-empty-state[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;margin-top:2em;font-style:italic}.id-text[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:12px}.id-cell[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;overflow:hidden}.id-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child, .value-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.id-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .id-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%]{opacity:1}.numeric-cell[_ngcontent-%COMP%]{text-align:right!important}.value-cell.numeric-cell[_ngcontent-%COMP%]{justify-content:flex-end}.value-cell.numeric-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{text-align:right;font-family:Google Sans Mono,monospace;font-size:13px;font-weight:500;color:var(--mat-sys-on-surface)}.value-cell.numeric-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child span[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace}td.numeric-cell[_ngcontent-%COMP%]{text-align:right!important;font-family:Google Sans Mono,monospace!important;font-size:13px!important;font-weight:500!important;color:var(--mat-sys-on-surface)!important}.detail-row[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:4px;font-size:12px;transition:transform .15s ease-in-out}.detail-row[_ngcontent-%COMP%]:hover{transform:translate(-2px)}.detail-row[_ngcontent-%COMP%]:last-child{margin-bottom:0}.detail-row[_ngcontent-%COMP%] .modality-label[_ngcontent-%COMP%]{font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:2px 6px;border-radius:4px;color:var(--mat-sys-primary);background-color:var(--mat-sys-primary-container);opacity:.85}.detail-row[_ngcontent-%COMP%] .modality-value[_ngcontent-%COMP%]{font-weight:500;font-family:Google Sans Mono,monospace;color:var(--mat-sys-on-surface)}.copy-id-button[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%]{width:28px!important;height:28px!important;padding:0!important;line-height:28px!important;flex-shrink:0;margin:-4px 0!important;opacity:0;transition:opacity .2s ease-in-out;border-radius:4px!important;overflow:hidden!important}.copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.copy-id-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.info-tables-container[_ngcontent-%COMP%]{padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.invocation-selector-button[_ngcontent-%COMP%] .mdc-button__label{width:100%;flex:1;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between}.media-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;margin-top:8px;margin-bottom:12px}.generated-image-container[_ngcontent-%COMP%]{max-width:100%;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;border:1px solid var(--mat-sys-outline-variant)}.generated-image-container[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block}audio[_ngcontent-%COMP%], video[_ngcontent-%COMP%]{max-width:100%;border-radius:4px}.json-viewer-wrapper[_ngcontent-%COMP%]{position:relative}.json-viewer-wrapper[_ngcontent-%COMP%]:hover .floating-copy-button[_ngcontent-%COMP%]{opacity:1}.floating-copy-button[_ngcontent-%COMP%]{position:absolute;top:4px;right:4px;z-index:10;opacity:0;transition:opacity .2s ease-in-out;background-color:var(--mat-sys-surface-container-high)!important;border-radius:4px!important;overflow:hidden!important;width:28px!important;height:28px!important;line-height:28px!important;padding:0!important}.floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.floating-copy-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.floating-copy-button[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.state-change-card[_ngcontent-%COMP%]{border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}.state-change-header[_ngcontent-%COMP%]{font-weight:600;font-size:14px;color:var(--mat-sys-primary);padding-bottom:4px}.state-change-values[_ngcontent-%COMP%]{display:flex;gap:12px;flex-wrap:wrap}.state-value-block[_ngcontent-%COMP%]{flex:1;min-width:200px;background-color:var(--mat-sys-surface-container-highest);border-radius:6px;padding:8px;display:flex;flex-direction:column;gap:4px}.state-value-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:var(--mat-sys-on-surface-variant)}.state-value-content[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:13px;color:var(--mat-sys-on-surface);word-break:break-all}"],changeDetection:0})};var Y7A=["evalTabContainer"];function H7A(i,e){}function z7A(i,e){i&1&&(I(0,"div",1),lA(1,"mat-progress-spinner",4),h())}function P7A(i,e){if(i&1&&(I(0,"span",11),D(1),h()),i&2){let A=p(2);Q(),nA(A.i18n.infoTabLabel)}}function j7A(i,e){if(i&1){let A=aA();I(0,"app-trace-tab",12),U("switchToEvent",function(n){L(A);let o=p(2);return G(o.switchToEvent.emit(n))}),h()}if(i&2){let A=p(2);H("traceData",A.traceData())}}function V7A(i,e){if(i&1){let A=aA();I(0,"app-event-tab",13),U("page",function(n){L(A);let o=p(2);return G(o.page.emit(n))})("closeSelectedEvent",function(){L(A);let n=p(2);return G(n.closeSelectedEvent.emit())})("openImageDialog",function(n){L(A);let o=p(2);return G(o.openImageDialog.emit(n))})("switchToTraceView",function(){L(A);let n=p(2);return G(n.switchToTraceView.emit())})("showAgentStructureGraph",function(n){L(A);let o=p(2);return G(o.showAgentStructureGraph.emit(n))})("drillDownNodePath",function(n){L(A);let o=p(2);return G(o.drillDownNodePath.emit(n))})("selectEventById",function(n){L(A);let o=p(2);return G(o.selectEventById.emit(n))})("jumpToInvocation",function(n){L(A);let o=p(2);return G(o.jumpToInvocation.emit(n))}),h()}if(i&2){let A=p(2);H("eventDataSize",A.eventData().size)("eventDataMap",A.eventData())("selectedEventIndex",A.selectedEventIndex())("selectedEvent",A.selectedEvent())("traceData",A.traceData())("filteredSelectedEvent",A.filteredSelectedEvent())("renderedEventGraph",A.renderedEventGraph())("rawSvgString",A.rawSvgString())("appName",A.appName())("selectedEventGraphPath",A.selectedEventGraphPath())("llmRequest",A.llmRequest())("llmResponse",A.llmResponse())("hasSubWorkflows",A.hasSubWorkflows())("graphsAvailable",A.graphsAvailable())("invocationDisplayMap",A.invocationDisplayMap())("forceGraphTab",A.forceGraphTab())("isViewOnlySession",A.isViewOnlySession())("isViewOnlyAppNameMismatch",A.isViewOnlyAppNameMismatch())}}function q7A(i,e){i&1&&(I(0,"div",9),D(1,"Select an event or trace span to view details"),h())}function W7A(i,e){if(i&1&&(I(0,"span",11),D(1),h()),i&2){let A=p(2);Q(),nA(A.i18n.stateTabLabel)}}function Z7A(i,e){if(i&1&&(I(0,"span",11),D(1),h()),i&2){let A=p(3);Q(),nA(A.i18n.artifactsTabLabel)}}function X7A(i,e){if(i&1&&(I(0,"mat-tab"),kt(1,Z7A,2,1,"ng-template",6),lA(2,"app-artifact-tab",14),h()),i&2){let A=p(2);Q(2),H("artifacts",A.artifacts())}}function $7A(i,e){if(i&1&&(I(0,"span",11),D(1),h()),i&2){let A=p(3);Q(),nA(A.i18n.testsTabLabel)}}function AMA(i,e){if(i&1){let A=aA();I(0,"mat-tab"),kt(1,$7A,2,1,"ng-template",6),I(2,"app-tests-tab",15),U("testSelected",function(n){L(A);let o=p(2);return G(o.testSelected.emit(n))}),h()()}if(i&2){let A=p(2);Q(2),H("appName",A.appName())("sessionId",A.sessionId())("userId",A.userId())("isViewOnlySession",A.isViewOnlySession())}}function eMA(i,e){if(i&1&&(I(0,"span",11),D(1),h()),i&2){let A=p(3);Q(),nA(A.i18n.evalTabLabel)}}function tMA(i,e){i&1&&(I(0,"mat-tab"),kt(1,eMA,2,1,"ng-template",6),dn(2,null,0),h())}function iMA(i,e){if(i&1){let A=aA();I(0,"div",2)(1,"mat-tab-group",5),Ni("selectedIndexChange",function(n){L(A);let o=p();return wi(o.selectedIndex,n)||(o.selectedIndex=n),G(n)}),U("selectedTabChange",function(n){L(A);let o=p();return G(o.onTabChange(n))}),I(2,"mat-tab"),kt(3,P7A,2,1,"ng-template",6),T(4,j7A,1,1,"app-trace-tab",7)(5,V7A,1,18,"app-event-tab",8)(6,q7A,2,0,"div",9),h(),I(7,"mat-tab"),kt(8,W7A,2,1,"ng-template",6),lA(9,"app-state-tab",10),h(),T(10,X7A,3,1,"mat-tab"),mt(11,"async"),T(12,AMA,3,4,"mat-tab"),mt(13,"async"),T(14,tMA,4,0,"mat-tab"),mt(15,"async"),h()()}if(i&2){let A=p(),t=Ki(2);H("hidden",t||!A.showSidePanel()),Q(),Ri("selectedIndex",A.selectedIndex),Q(3),O(A.selectedSpan()?4:A.selectedEvent()?5:6),Q(5),H("sessionState",A.currentSessionState()),Q(),O(Ft(11,7,A.isArtifactsTabEnabledObs)?10:-1),Q(2),O(Ft(13,9,A.isTestsEnabledObs)?12:-1),Q(2),O(Ft(15,11,A.isEvalEnabledObs)?14:-1)}}var xE=class i{Object=Object;appName=ve("");userId=ve("");sessionId=ve("");traceData=ve([]);eventData=ve(new Map);currentSessionState=ve();artifacts=ve([]);selectedEvent=ve();selectedEventIndex=ve();renderedEventGraph=ve();rawSvgString=ve(null);selectedEventGraphPath=ve("");llmRequest=ve();llmResponse=ve();showSidePanel=ve(!1);isApplicationSelectorEnabledObs=ve(oe(!1));isBuilderMode=ve(!1);disableBuilderIcon=ve(!1);hasSubWorkflows=ve(!1);graphsAvailable=ve(!0);invocationDisplayMap=ve(new Map);forceGraphTab=ve(!1);isViewOnlySession=ve(!1);isViewOnlyAppNameMismatch=ve(!1);closePanel=Si();tabChange=Si();sessionSelected=Si();sessionReloaded=Si();evalCaseSelected=Si();editEvalCaseRequested=Si();testSelected=Si();evalSetIdSelected=Si();returnToSession=Si();evalNotInstalled=Si();page=Si();switchToEvent=Si();closeSelectedEvent=Si();openImageDialog=Si();openAddItemDialog=Si();enterBuilderMode=Si();showAgentStructureGraph=Si();switchToTraceView=Si();drillDownNodePath=Si();selectEventById=Si();jumpToInvocation=Si();sessionTabComponent=void 0;evalTabComponent=Yo(Sc);evalTabContainer=Yo("evalTabContainer",{read:Jo});tabGroup=Yo(fE);logoComponent=w(wB,{optional:!0});i18n=w(_E);featureFlagService=w(Nr);evalTabComponentClass=w(My,{optional:!0});environmentInjector=w(Hr);uiStateService=w(ag);traceService=w(ng);selectedSpan=sr(this.traceService.selectedTraceRow$);selectedIndex=0;pendingEvalCaseSelection=mA(void 0);pendingEvalResultSelection=mA(void 0);evalTabRef=mA(null);constructor(){Fn(()=>{let e=this.selectedEvent(),A=this.selectedSpan(),t=this.tabGroup();(e||A)&&t&&t.selectedIndex!==0&&(this.selectedIndex=0)}),Fn(()=>{this.evalTabContainer()?this.initEvalTab():this.evalTabRef.set(null)}),Fn(()=>{let e=this.evalTabRef();e&&(e.setInput("appName",this.appName()),e.setInput("userId",this.userId()),e.setInput("sessionId",this.sessionId()))}),Fn(()=>{let e=this.evalTabRef(),A=this.pendingEvalCaseSelection();e&&A&&(e.instance.selectEvalSet(A.evalSetId),e.instance.selectedEvalTab.set("cases"),e.instance.selectedEvalCase.set(A.evalCase),this.pendingEvalCaseSelection.set(void 0))}),Fn(()=>{let e=this.evalTabRef(),A=this.pendingEvalResultSelection();e&&A&&(e.instance.selectEvalSet(A.evalSetId),e.instance.selectedHistoryRun.set(A.timestamp),A.evalCase?(e.instance.selectedEvalTab.set("cases"),e.instance.selectedEvalCase.set(A.evalCase)):e.instance.selectedEvalTab.set("history"),this.pendingEvalResultSelection.set(void 0))})}ngOnInit(){}onTabChange(e){this.tabChange.emit(e),this.selectedIndex=e.index}switchToEvalTab(){this.isEvalEnabledObs.pipe(oo()).subscribe(e=>{e&&JC([this.isArtifactsTabEnabledObs.pipe(oo()),this.isTestsEnabledObs.pipe(oo())]).subscribe(([A,t])=>{let n=2;A&&n++,t&&n++,this.selectedIndex=n})})}selectEvalCase(e,A){let t=this.evalTabComponent();t?(t.selectEvalSet(e),t.selectedEvalTab.set("cases"),t.selectedEvalCase.set(A)):this.pendingEvalCaseSelection.set({evalSetId:e,evalCase:A})}selectEvalResult(e,A,t){let n=this.evalTabComponent();n?(n.selectEvalSet(e),n.selectedHistoryRun.set(A),t?(n.selectedEvalTab.set("cases"),n.selectedEvalCase.set(t)):n.selectedEvalTab.set("history")):this.pendingEvalResultSelection.set({evalSetId:e,timestamp:A,evalCase:t})}isAlwaysOnSidePanelEnabledObs=this.featureFlagService.isAlwaysOnSidePanelEnabled();isTraceEnabledObs=this.featureFlagService.isTraceEnabled();isArtifactsTabEnabledObs=this.featureFlagService.isArtifactsTabEnabled();isEvalEnabledObs=this.featureFlagService.isEvalEnabled();isTestsEnabledObs=this.featureFlagService.isTestsEnabled();isTokenStreamingEnabledObs=this.featureFlagService.isTokenStreamingEnabled();isMessageFileUploadEnabledObs=this.featureFlagService.isMessageFileUploadEnabled();isManualStateUpdateEnabledObs=this.featureFlagService.isManualStateUpdateEnabled();isBidiStreamingEnabledObs=this.featureFlagService.isBidiStreamingEnabled;filteredSelectedEvent=ye(()=>this.selectedEvent());ngAfterViewInit(){}initEvalTab(){this.isEvalEnabledObs.pipe(oo()).subscribe(e=>{if(e){let A=this.evalTabContainer();if(!A)return;A.clear();let t=A.createComponent(this.evalTabComponentClass??Sc,{environmentInjector:this.environmentInjector});if(!t)return;t.instance.sessionSelected.subscribe(n=>{this.sessionSelected.emit(n)}),t.instance.evalCaseSelected.subscribe(n=>{this.evalCaseSelected.emit(n)}),t.instance.editEvalCaseRequested.subscribe(n=>{this.editEvalCaseRequested.emit(n)}),t.instance.evalSetIdSelected.subscribe(n=>{this.evalSetIdSelected.emit(n)}),t.instance.shouldReturnToSession.subscribe(n=>{this.returnToSession.emit(n)}),t.instance.evalNotInstalledMsg.subscribe(n=>{this.evalNotInstalled.emit(n)}),this.evalTabRef.set(t)}})}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-side-panel"]],viewQuery:function(A,t){A&1&&ls(t.evalTabComponent,Sc,5)(t.evalTabContainer,Y7A,5,Jo)(t.tabGroup,fE,5),A&2&&br(3)},inputs:{appName:[1,"appName"],userId:[1,"userId"],sessionId:[1,"sessionId"],traceData:[1,"traceData"],eventData:[1,"eventData"],currentSessionState:[1,"currentSessionState"],artifacts:[1,"artifacts"],selectedEvent:[1,"selectedEvent"],selectedEventIndex:[1,"selectedEventIndex"],renderedEventGraph:[1,"renderedEventGraph"],rawSvgString:[1,"rawSvgString"],selectedEventGraphPath:[1,"selectedEventGraphPath"],llmRequest:[1,"llmRequest"],llmResponse:[1,"llmResponse"],showSidePanel:[1,"showSidePanel"],isApplicationSelectorEnabledObs:[1,"isApplicationSelectorEnabledObs"],isBuilderMode:[1,"isBuilderMode"],disableBuilderIcon:[1,"disableBuilderIcon"],hasSubWorkflows:[1,"hasSubWorkflows"],graphsAvailable:[1,"graphsAvailable"],invocationDisplayMap:[1,"invocationDisplayMap"],forceGraphTab:[1,"forceGraphTab"],isViewOnlySession:[1,"isViewOnlySession"],isViewOnlyAppNameMismatch:[1,"isViewOnlyAppNameMismatch"]},outputs:{closePanel:"closePanel",tabChange:"tabChange",sessionSelected:"sessionSelected",sessionReloaded:"sessionReloaded",evalCaseSelected:"evalCaseSelected",editEvalCaseRequested:"editEvalCaseRequested",testSelected:"testSelected",evalSetIdSelected:"evalSetIdSelected",returnToSession:"returnToSession",evalNotInstalled:"evalNotInstalled",page:"page",switchToEvent:"switchToEvent",closeSelectedEvent:"closeSelectedEvent",openImageDialog:"openImageDialog",openAddItemDialog:"openAddItemDialog",enterBuilderMode:"enterBuilderMode",showAgentStructureGraph:"showAgentStructureGraph",switchToTraceView:"switchToTraceView",drillDownNodePath:"drillDownNodePath",selectEventById:"selectEventById",jumpToInvocation:"jumpToInvocation"},decls:7,vars:8,consts:[["evalTabContainer",""],[1,"loading-spinner-container"],[1,"tabs-container",3,"hidden"],[1,"resize-handler"],["mode","indeterminate","diameter","50"],["animationDuration","0ms",3,"selectedIndexChange","selectedTabChange","selectedIndex"],["mat-tab-label",""],[3,"traceData"],[3,"eventDataSize","eventDataMap","selectedEventIndex","selectedEvent","traceData","filteredSelectedEvent","renderedEventGraph","rawSvgString","appName","selectedEventGraphPath","llmRequest","llmResponse","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab","isViewOnlySession","isViewOnlyAppNameMismatch"],[1,"empty-state"],[3,"sessionState"],[1,"tab-label"],[3,"switchToEvent","traceData"],[3,"page","closeSelectedEvent","openImageDialog","switchToTraceView","showAgentStructureGraph","drillDownNodePath","selectEventById","jumpToInvocation","eventDataSize","eventDataMap","selectedEventIndex","selectedEvent","traceData","filteredSelectedEvent","renderedEventGraph","rawSvgString","appName","selectedEventGraphPath","llmRequest","llmResponse","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab","isViewOnlySession","isViewOnlyAppNameMismatch"],[3,"artifacts"],[3,"testSelected","appName","sessionId","userId","isViewOnlySession"]],template:function(A,t){if(A&1&&(T(0,H7A,0,0),mt(1,"async"),ro(2),mt(3,"async"),T(4,z7A,2,0,"div",1),T(5,iMA,16,13,"div",2),lA(6,"div",3)),A&2){O(Ft(1,3,t.isAlwaysOnSidePanelEnabledObs)===!1?0:-1),Q(2);let n=so(Ft(3,5,t.uiStateService.isSessionLoading()));Q(2),O(n?4:-1),Q(),O(t.appName()!=""?5:-1)}},dependencies:[fE,bp,vp,xy,_y,d6,Ry,Es,ky,gs],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%;position:relative}.drawer-header-wrapper[_ngcontent-%COMP%]{display:flex;height:48px;align-items:center;padding-left:20px}.drawer-header[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:space-between;align-items:center}.tabs-container[_ngcontent-%COMP%]{width:100%;flex:1;overflow:hidden;display:flex;flex-direction:column}.tab-label[_ngcontent-%COMP%]{font-size:14px}.resize-handler[_ngcontent-%COMP%]{width:6px;border-radius:4px;position:absolute;display:block;top:20px;bottom:20px;right:0;z-index:100;cursor:ew-resize}.resize-handler[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-outline-variant)}.empty-state[_ngcontent-%COMP%]{padding:16px;text-align:center;color:var(--mat-sys-on-surface-variant);font-style:italic}mat-tab-group[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;min-height:0}mat-tab-group[_ngcontent-%COMP%] .mdc-tab{padding:0 12px;min-width:48px} .mat-mdc-tab-body-wrapper{flex:1;min-height:0} .mat-mdc-tab-body-wrapper .mat-mdc-tab-body-content{overflow-x:hidden}.drawer-logo[_ngcontent-%COMP%]{margin-left:9px;display:flex;align-items:center}.drawer-logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{margin-right:6px}.drawer-logo[_ngcontent-%COMP%]{font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.1px}.drawer-header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.panel-toggle-icon[_ngcontent-%COMP%]{font-size:20px;width:24px;height:24px;color:var(--side-panel-mat-icon-color, #c4c7c5);cursor:pointer;display:flex;align-items:center;justify-content:center}.powered-by-adk[_ngcontent-%COMP%]{font-size:10px;color:var(--side-panel-powered-by-adk-color);text-align:right;margin-top:-5px}.adk-info-icon[_ngcontent-%COMP%]{font-size:14px;color:var(--side-panel-mat-icon-color, #bdc1c6);cursor:pointer;margin-left:4px;vertical-align:middle}.mode-toggle-container[_ngcontent-%COMP%]{display:flex;align-items:center}.build-mode-button[_ngcontent-%COMP%]{margin:0 4px}.app-actions[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.loading-spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;height:100%}@media(max-width:768px){.resize-handler[_ngcontent-%COMP%]{display:none!important}.tab-label[_ngcontent-%COMP%]{font-size:12px!important} .mdc-tab{padding:0 8px!important}}"]})};var nMA=["editInput"];function oMA(i,e){if(i&1){let A=aA();I(0,"button",5),U("click",function(){L(A);let n=p();return G(n.startEdit())}),I(1,"mat-icon"),D(2,"edit"),h()()}}function aMA(i,e){if(i&1){let A=aA();I(0,"button",6),U("click",function(){L(A);let n=p();return G(n.saveEdit())}),I(1,"mat-icon"),D(2,"check"),h()(),I(3,"button",7),U("click",function(){L(A);let n=p();return G(n.cancelEdit())}),I(4,"mat-icon"),D(5,"close"),h()()}}var Ny=class i{value="";displayValue="";tooltip="";placeholder="";textClass="";save=new FA;isEditing=!1;draftValue="";editInput;startEdit(){this.draftValue=this.value,this.isEditing=!0,setTimeout(()=>{this.editInput.nativeElement.focus()})}cancelEdit(){this.isEditing=!1,this.draftValue=""}saveEdit(){this.save.emit(this.draftValue),this.isEditing=!1}handleKeydown(e){e.key==="Enter"?this.saveEdit():e.key==="Escape"&&this.cancelEdit()}get effectiveDisplayValue(){return this.displayValue||this.value}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-inline-edit"]],viewQuery:function(A,t){if(A&1&&Wt(nMA,5),A&2){let n;se(n=le())&&(t.editInput=n.first)}},inputs:{value:"value",displayValue:"displayValue",tooltip:"tooltip",placeholder:"placeholder",textClass:"textClass"},outputs:{save:"save"},decls:6,vars:10,consts:[["editInput",""],[1,"inline-edit-container"],[1,"inline-edit-text-wrapper"],[1,"inline-edit-input",3,"ngModelChange","keydown","readonly","ngClass","matTooltip","ngModel"],["mat-icon-button","","aria-label","Edit",1,"inline-edit-action-button"],["mat-icon-button","","aria-label","Edit",1,"inline-edit-action-button",3,"click"],["mat-icon-button","","aria-label","Save",1,"inline-edit-action-button",3,"click"],["mat-icon-button","","aria-label","Cancel",1,"inline-edit-action-button",3,"click"]],template:function(A,t){A&1&&(I(0,"div",1)(1,"div",2)(2,"input",3,0),U("ngModelChange",function(o){return t.draftValue=o})("keydown",function(o){return t.handleKeydown(o)}),h()(),T(4,oMA,3,0,"button",4)(5,aMA,6,0),h()),A&2&&(Q(2),_A("readonly",!t.isEditing),H("readonly",!t.isEditing)("ngClass",t.textClass)("matTooltip",t.isEditing?"":t.tooltip)("ngModel",t.isEditing?t.draftValue:t.effectiveDisplayValue),ie("placeholder",t.isEditing?t.placeholder:"")("aria-label",t.placeholder)("size",((t.isEditing?t.draftValue:t.effectiveDisplayValue)==null?null:(t.isEditing?t.draftValue:t.effectiveDisplayValue).length)||1),Q(2),O(t.isEditing?5:4))},dependencies:[li,Vl,fn,Gn,Kn,Ho,qi,yi,Un,zt,Ha,rn],styles:["[_nghost-%COMP%]{display:block;max-width:100%;min-width:0;width:100%}.inline-edit-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.inline-edit-text-wrapper[_ngcontent-%COMP%]{flex:0 1 auto;min-width:0;display:flex;align-items:center}.inline-edit-input[_ngcontent-%COMP%]{min-width:48px;max-width:100%;padding:2px 6px;margin:-3px -7px;border:1px solid var(--chat-toolbar-session-text-color, #ccc);border-radius:4px;color:var(--chat-toolbar-session-id-color, inherit);font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;background:transparent;field-sizing:content;transition:all .2s ease}.inline-edit-input[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--primary-color, #1a73e8)}.inline-edit-input.readonly[_ngcontent-%COMP%]{min-width:0;border-color:transparent;cursor:inherit}.inline-edit-input.readonly[_ngcontent-%COMP%]:focus{outline:none;border-color:transparent}.inline-edit-action-button[_ngcontent-%COMP%]{flex-shrink:0;width:28px!important;height:28px!important;padding:0!important;display:flex;align-items:center;justify-content:center}.inline-edit-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}"]})};var rMA={openPanelTooltip:"Open panel",retrieveLatestSessionTooltip:"Retrieve latest session and show",evalCaseIdLabel:"Eval Case ID",cancelButton:"Cancel",saveButton:"Save",editEvalCaseTooltip:"Edit current eval case",deleteEvalCaseTooltip:"Delete current eval case",sessionIdLabel:"Session",copySessionIdTooltip:"Copy session ID",sessionIdCopiedMessage:"Session ID copied",copySessionIdFailedMessage:"Failed to copy session ID",userIdLabel:"User ID",editUserIdTooltip:"Edit user ID",userIdInputPlaceholder:"Enter user ID",saveUserIdTooltip:"Save user ID",cancelUserIdEditTooltip:"Cancel editing user ID",invalidUserIdMessage:"User ID cannot be empty",loadingSessionLabel:"Loading session...",tokenStreamingLabel:"Token Streaming",moreOptionsTooltip:"More options",createNewSessionTooltip:"Create a new Session",newSessionButton:"New Session",deleteSessionTooltip:"Delete session",exportSessionTooltip:"Export session",importSessionTooltip:"Import session",viewSessionTooltip:"View session",loadingAgentsLabel:"Loading agents, please wait...",welcomeMessage:"Welcome to ADK!",selectAgentMessage:"Select an agent to begin.",failedToLoadAgentsMessage:"Failed to load agents. To get started, run",errorMessageLabel:"Error message:",noAgentsFoundWarning:"Warning: No agents found in current folder.",cannotEditSessionMessage:"Chat is disabled to prevent changes to the end user's session.",viewSessionReadOnlyMessage:'This is a read-only view of a session file. Use "Import Session" if you want to continue this session.',readOnlyBadgeLabel:"Read-only"},h$=new MA("Chat Messages",{factory:()=>rMA});var XA={};cAA(XA,{BRAND:()=>RMA,DIRTY:()=>II,EMPTY_PATH:()=>cMA,INVALID:()=>hi,NEVER:()=>E9A,OK:()=>Ss,ParseStatus:()=>rs,Schema:()=>hn,ZodAny:()=>Gy,ZodArray:()=>Gp,ZodBigInt:()=>GR,ZodBoolean:()=>KR,ZodBranded:()=>Kp,ZodCatch:()=>VR,ZodDate:()=>UR,ZodDefault:()=>jR,ZodDiscriminatedUnion:()=>Ky,ZodEffects:()=>KE,ZodEnum:()=>Jy,ZodError:()=>x0,ZodFirstPartyTypeKind:()=>_i,ZodFunction:()=>Ty,ZodIntersection:()=>YR,ZodIssueCode:()=>Ne,ZodLazy:()=>HR,ZodLiteral:()=>zR,ZodMap:()=>v$,ZodNaN:()=>S$,ZodNativeEnum:()=>PR,ZodNever:()=>BI,ZodNull:()=>OR,ZodNullable:()=>UE,ZodNumber:()=>LR,ZodObject:()=>LE,ZodOptional:()=>f1,ZodParsedType:()=>ht,ZodPipeline:()=>Up,ZodPromise:()=>Yy,ZodReadonly:()=>qR,ZodRecord:()=>Uy,ZodSchema:()=>hn,ZodSet:()=>b$,ZodString:()=>Oy,ZodSymbol:()=>y$,ZodTransformer:()=>KE,ZodTuple:()=>GE,ZodType:()=>hn,ZodUndefined:()=>TR,ZodUnion:()=>JR,ZodUnknown:()=>Lp,ZodVoid:()=>D$,addIssueToContext:()=>ot,any:()=>JMA,array:()=>PMA,bigint:()=>GMA,boolean:()=>R$,coerce:()=>h9A,custom:()=>k$,date:()=>KMA,datetimeRegex:()=>w$,defaultErrorMap:()=>TC,discriminatedUnion:()=>WMA,effect:()=>s9A,enum:()=>o9A,function:()=>t9A,getErrorMap:()=>RE,getParsedType:()=>_0,instanceof:()=>FMA,intersection:()=>ZMA,isAborted:()=>Fy,isAsync:()=>NE,isDirty:()=>Ly,isValid:()=>p1,late:()=>NMA,lazy:()=>i9A,literal:()=>n9A,makeIssue:()=>Fp,map:()=>A9A,nan:()=>LMA,nativeEnum:()=>a9A,never:()=>HMA,null:()=>OMA,nullable:()=>g9A,number:()=>x$,object:()=>jMA,objectUtil:()=>E$,oboolean:()=>B9A,onumber:()=>I9A,optional:()=>l9A,ostring:()=>d9A,pipeline:()=>C9A,preprocess:()=>c9A,promise:()=>r9A,quotelessJson:()=>sMA,record:()=>$MA,set:()=>e9A,setErrorMap:()=>gMA,strictObject:()=>VMA,string:()=>_$,symbol:()=>UMA,transformer:()=>s9A,tuple:()=>XMA,undefined:()=>TMA,union:()=>qMA,unknown:()=>YMA,util:()=>Mn,void:()=>zMA});var Mn;(function(i){i.assertEqual=n=>{};function e(n){}i.assertIs=e;function A(n){throw new Error}i.assertNever=A,i.arrayToEnum=n=>{let o={};for(let a of n)o[a]=a;return o},i.getValidEnumValues=n=>{let o=i.objectKeys(n).filter(r=>typeof n[n[r]]!="number"),a={};for(let r of o)a[r]=n[r];return i.objectValues(a)},i.objectValues=n=>i.objectKeys(n).map(function(o){return n[o]}),i.objectKeys=typeof Object.keys=="function"?n=>Object.keys(n):n=>{let o=[];for(let a in n)Object.prototype.hasOwnProperty.call(n,a)&&o.push(a);return o},i.find=(n,o)=>{for(let a of n)if(o(a))return a},i.isInteger=typeof Number.isInteger=="function"?n=>Number.isInteger(n):n=>typeof n=="number"&&Number.isFinite(n)&&Math.floor(n)===n;function t(n,o=" | "){return n.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}i.joinValues=t,i.jsonStringifyReplacer=(n,o)=>typeof o=="bigint"?o.toString():o})(Mn||(Mn={}));var E$=(function(i){return i.mergeShapes=(e,A)=>P(P({},e),A),i})(E$||{}),ht=Mn.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),_0=i=>{switch(typeof i){case"undefined":return ht.undefined;case"string":return ht.string;case"number":return Number.isNaN(i)?ht.nan:ht.number;case"boolean":return ht.boolean;case"function":return ht.function;case"bigint":return ht.bigint;case"symbol":return ht.symbol;case"object":return Array.isArray(i)?ht.array:i===null?ht.null:i.then&&typeof i.then=="function"&&i.catch&&typeof i.catch=="function"?ht.promise:typeof Map<"u"&&i instanceof Map?ht.map:typeof Set<"u"&&i instanceof Set?ht.set:typeof Date<"u"&&i instanceof Date?ht.date:ht.object;default:return ht.unknown}};var Ne=Mn.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),sMA=i=>JSON.stringify(i,null,2).replace(/"([^"]+)":/g,"$1:"),x0=(()=>{class i extends Error{get errors(){return this.issues}constructor(A){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=A}format(A){let t=A||function(a){return a.message},n={_errors:[]},o=a=>{for(let r of a.issues)if(r.code==="invalid_union")r.unionErrors.map(o);else if(r.code==="invalid_return_type")o(r.returnTypeError);else if(r.code==="invalid_arguments")o(r.argumentsError);else if(r.path.length===0)n._errors.push(t(r));else{let s=n,l=0;for(;lt.message){let t={},n=[];for(let o of this.issues)if(o.path.length>0){let a=o.path[0];t[a]=t[a]||[],t[a].push(A(o))}else n.push(A(o));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}}return i.create=e=>new i(e),i})();var lMA=(i,e)=>{let A;switch(i.code){case Ne.invalid_type:i.received===ht.undefined?A="Required":A=`Expected ${i.expected}, received ${i.received}`;break;case Ne.invalid_literal:A=`Invalid literal value, expected ${JSON.stringify(i.expected,Mn.jsonStringifyReplacer)}`;break;case Ne.unrecognized_keys:A=`Unrecognized key(s) in object: ${Mn.joinValues(i.keys,", ")}`;break;case Ne.invalid_union:A="Invalid input";break;case Ne.invalid_union_discriminator:A=`Invalid discriminator value. Expected ${Mn.joinValues(i.options)}`;break;case Ne.invalid_enum_value:A=`Invalid enum value. Expected ${Mn.joinValues(i.options)}, received '${i.received}'`;break;case Ne.invalid_arguments:A="Invalid function arguments";break;case Ne.invalid_return_type:A="Invalid function return type";break;case Ne.invalid_date:A="Invalid date";break;case Ne.invalid_string:typeof i.validation=="object"?"includes"in i.validation?(A=`Invalid input: must include "${i.validation.includes}"`,typeof i.validation.position=="number"&&(A=`${A} at one or more positions greater than or equal to ${i.validation.position}`)):"startsWith"in i.validation?A=`Invalid input: must start with "${i.validation.startsWith}"`:"endsWith"in i.validation?A=`Invalid input: must end with "${i.validation.endsWith}"`:Mn.assertNever(i.validation):i.validation!=="regex"?A=`Invalid ${i.validation}`:A="Invalid";break;case Ne.too_small:i.type==="array"?A=`Array must contain ${i.exact?"exactly":i.inclusive?"at least":"more than"} ${i.minimum} element(s)`:i.type==="string"?A=`String must contain ${i.exact?"exactly":i.inclusive?"at least":"over"} ${i.minimum} character(s)`:i.type==="number"?A=`Number must be ${i.exact?"exactly equal to ":i.inclusive?"greater than or equal to ":"greater than "}${i.minimum}`:i.type==="bigint"?A=`Number must be ${i.exact?"exactly equal to ":i.inclusive?"greater than or equal to ":"greater than "}${i.minimum}`:i.type==="date"?A=`Date must be ${i.exact?"exactly equal to ":i.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(i.minimum))}`:A="Invalid input";break;case Ne.too_big:i.type==="array"?A=`Array must contain ${i.exact?"exactly":i.inclusive?"at most":"less than"} ${i.maximum} element(s)`:i.type==="string"?A=`String must contain ${i.exact?"exactly":i.inclusive?"at most":"under"} ${i.maximum} character(s)`:i.type==="number"?A=`Number must be ${i.exact?"exactly":i.inclusive?"less than or equal to":"less than"} ${i.maximum}`:i.type==="bigint"?A=`BigInt must be ${i.exact?"exactly":i.inclusive?"less than or equal to":"less than"} ${i.maximum}`:i.type==="date"?A=`Date must be ${i.exact?"exactly":i.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(i.maximum))}`:A="Invalid input";break;case Ne.custom:A="Invalid input";break;case Ne.invalid_intersection_types:A="Intersection results could not be merged";break;case Ne.not_multiple_of:A=`Number must be a multiple of ${i.multipleOf}`;break;case Ne.not_finite:A="Number must be finite";break;default:A=e.defaultError,Mn.assertNever(i)}return{message:A}},TC=lMA;var Q$=TC;function gMA(i){Q$=i}function RE(){return Q$}var Fp=i=>{let{data:e,path:A,errorMaps:t,issueData:n}=i,o=[...A,...n.path||[]],a=$A(P({},n),{path:o});if(n.message!==void 0)return $A(P({},n),{path:o,message:n.message});let r="",s=t.filter(l=>!!l).slice().reverse();for(let l of s)r=l(a,{data:e,defaultError:r}).message;return $A(P({},n),{path:o,message:r})},cMA=[];function ot(i,e){let A=RE(),t=Fp({issueData:e,data:i.data,path:i.path,errorMaps:[i.common.contextualErrorMap,i.schemaErrorMap,A,A===TC?void 0:TC].filter(n=>!!n)});i.common.issues.push(t)}var rs=class i{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,A){let t=[];for(let n of A){if(n.status==="aborted")return hi;n.status==="dirty"&&e.dirty(),t.push(n.value)}return{status:e.value,value:t}}static mergeObjectAsync(e,A){return re(this,null,function*(){let t=[];for(let n of A){let o=yield n.key,a=yield n.value;t.push({key:o,value:a})}return i.mergeObjectSync(e,t)})}static mergeObjectSync(e,A){let t={};for(let n of A){let{key:o,value:a}=n;if(o.status==="aborted"||a.status==="aborted")return hi;o.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||n.alwaysSet)&&(t[o.value]=a.value)}return{status:e.value,value:t}}},hi=Object.freeze({status:"aborted"}),II=i=>({status:"dirty",value:i}),Ss=i=>({status:"valid",value:i}),Fy=i=>i.status==="aborted",Ly=i=>i.status==="dirty",p1=i=>i.status==="valid",NE=i=>typeof Promise<"u"&&i instanceof Promise;var Kt=(function(i){return i.errToObj=e=>typeof e=="string"?{message:e}:e||{},i.toString=e=>typeof e=="string"?e:e?.message,i})(Kt||{});var Mg=class{constructor(e,A,t,n){this._cachedPath=[],this.parent=e,this.data=A,this._path=t,this._key=n}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},u$=(i,e)=>{if(p1(e))return{success:!0,data:e.value};if(!i.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let A=new x0(i.common.issues);return this._error=A,this._error}}};function tn(i){if(!i)return{};let{errorMap:e,invalid_type_error:A,required_error:t,description:n}=i;if(e&&(A||t))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:n}:{errorMap:(a,r)=>{let{message:s}=i;return a.code==="invalid_enum_value"?{message:s??r.defaultError}:typeof r.data>"u"?{message:s??t??r.defaultError}:a.code!=="invalid_type"?{message:r.defaultError}:{message:s??A??r.defaultError}},description:n}}var hn=class{get description(){return this._def.description}_getType(e){return _0(e.data)}_getOrReturnCtx(e,A){return A||{common:e.parent.common,data:e.data,parsedType:_0(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new rs,ctx:{common:e.parent.common,data:e.data,parsedType:_0(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let A=this._parse(e);if(NE(A))throw new Error("Synchronous parse encountered promise.");return A}_parseAsync(e){let A=this._parse(e);return Promise.resolve(A)}parse(e,A){let t=this.safeParse(e,A);if(t.success)return t.data;throw t.error}safeParse(e,A){let t={common:{issues:[],async:A?.async??!1,contextualErrorMap:A?.errorMap},path:A?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_0(e)},n=this._parseSync({data:e,path:t.path,parent:t});return u$(t,n)}"~validate"(e){let A={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_0(e)};if(!this["~standard"].async)try{let t=this._parseSync({data:e,path:[],parent:A});return p1(t)?{value:t.value}:{issues:A.common.issues}}catch(t){t?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),A.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:A}).then(t=>p1(t)?{value:t.value}:{issues:A.common.issues})}parseAsync(e,A){return re(this,null,function*(){let t=yield this.safeParseAsync(e,A);if(t.success)return t.data;throw t.error})}safeParseAsync(e,A){return re(this,null,function*(){let t={common:{issues:[],contextualErrorMap:A?.errorMap,async:!0},path:A?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:_0(e)},n=this._parse({data:e,path:t.path,parent:t}),o=yield NE(n)?n:Promise.resolve(n);return u$(t,o)})}refine(e,A){let t=n=>typeof A=="string"||typeof A>"u"?{message:A}:typeof A=="function"?A(n):A;return this._refinement((n,o)=>{let a=e(n),r=()=>o.addIssue(P({code:Ne.custom},t(n)));return typeof Promise<"u"&&a instanceof Promise?a.then(s=>s?!0:(r(),!1)):a?!0:(r(),!1)})}refinement(e,A){return this._refinement((t,n)=>e(t)?!0:(n.addIssue(typeof A=="function"?A(t,n):A),!1))}_refinement(e){return new KE({schema:this,typeName:_i.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:A=>this["~validate"](A)}}optional(){return f1.create(this,this._def)}nullable(){return UE.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Gp.create(this)}promise(){return Yy.create(this,this._def)}or(e){return JR.create([this,e],this._def)}and(e){return YR.create(this,e,this._def)}transform(e){return new KE($A(P({},tn(this._def)),{schema:this,typeName:_i.ZodEffects,effect:{type:"transform",transform:e}}))}default(e){let A=typeof e=="function"?e:()=>e;return new jR($A(P({},tn(this._def)),{innerType:this,defaultValue:A,typeName:_i.ZodDefault}))}brand(){return new Kp(P({typeName:_i.ZodBranded,type:this},tn(this._def)))}catch(e){let A=typeof e=="function"?e:()=>e;return new VR($A(P({},tn(this._def)),{innerType:this,catchValue:A,typeName:_i.ZodCatch}))}describe(e){let A=this.constructor;return new A($A(P({},this._def),{description:e}))}pipe(e){return Up.create(this,e)}readonly(){return qR.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},CMA=/^c[^\s-]{8,}$/i,dMA=/^[0-9a-z]+$/,IMA=/^[0-9A-HJKMNP-TV-Z]{26}$/i,BMA=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,hMA=/^[a-z0-9_-]{21}$/i,EMA=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,QMA=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,uMA=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,pMA="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",NR,fMA=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,mMA=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,wMA=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,yMA=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,DMA=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,vMA=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,f$="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",bMA=new RegExp(`^${f$}$`);function m$(i){let e="[0-5]\\d";i.precision?e=`${e}\\.\\d{${i.precision}}`:i.precision==null&&(e=`${e}(\\.\\d+)?`);let A=i.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${A}`}function MMA(i){return new RegExp(`^${m$(i)}$`)}function w$(i){let e=`${f$}T${m$(i)}`,A=[];return A.push(i.local?"Z?":"Z"),i.offset&&A.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${A.join("|")})`,new RegExp(`^${e}$`)}function SMA(i,e){return!!((e==="v4"||!e)&&fMA.test(i)||(e==="v6"||!e)&&wMA.test(i))}function kMA(i,e){if(!EMA.test(i))return!1;try{let[A]=i.split(".");if(!A)return!1;let t=A.replace(/-/g,"+").replace(/_/g,"/").padEnd(A.length+(4-A.length%4)%4,"="),n=JSON.parse(atob(t));return!(typeof n!="object"||n===null||"typ"in n&&n?.typ!=="JWT"||!n.alg||e&&n.alg!==e)}catch(A){return!1}}function _MA(i,e){return!!((e==="v4"||!e)&&mMA.test(i)||(e==="v6"||!e)&&yMA.test(i))}var Oy=(()=>{class i extends hn{_parse(A){if(this._def.coerce&&(A.data=String(A.data)),this._getType(A)!==ht.string){let a=this._getOrReturnCtx(A);return ot(a,{code:Ne.invalid_type,expected:ht.string,received:a.parsedType}),hi}let n=new rs,o;for(let a of this._def.checks)if(a.kind==="min")A.data.lengtha.value&&(o=this._getOrReturnCtx(A,o),ot(o,{code:Ne.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),n.dirty());else if(a.kind==="length"){let r=A.data.length>a.value,s=A.data.lengthA.test(o),P({validation:t,code:Ne.invalid_string},Kt.errToObj(n)))}_addCheck(A){return new i($A(P({},this._def),{checks:[...this._def.checks,A]}))}email(A){return this._addCheck(P({kind:"email"},Kt.errToObj(A)))}url(A){return this._addCheck(P({kind:"url"},Kt.errToObj(A)))}emoji(A){return this._addCheck(P({kind:"emoji"},Kt.errToObj(A)))}uuid(A){return this._addCheck(P({kind:"uuid"},Kt.errToObj(A)))}nanoid(A){return this._addCheck(P({kind:"nanoid"},Kt.errToObj(A)))}cuid(A){return this._addCheck(P({kind:"cuid"},Kt.errToObj(A)))}cuid2(A){return this._addCheck(P({kind:"cuid2"},Kt.errToObj(A)))}ulid(A){return this._addCheck(P({kind:"ulid"},Kt.errToObj(A)))}base64(A){return this._addCheck(P({kind:"base64"},Kt.errToObj(A)))}base64url(A){return this._addCheck(P({kind:"base64url"},Kt.errToObj(A)))}jwt(A){return this._addCheck(P({kind:"jwt"},Kt.errToObj(A)))}ip(A){return this._addCheck(P({kind:"ip"},Kt.errToObj(A)))}cidr(A){return this._addCheck(P({kind:"cidr"},Kt.errToObj(A)))}datetime(A){return typeof A=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:A}):this._addCheck(P({kind:"datetime",precision:typeof A?.precision>"u"?null:A?.precision,offset:A?.offset??!1,local:A?.local??!1},Kt.errToObj(A?.message)))}date(A){return this._addCheck({kind:"date",message:A})}time(A){return typeof A=="string"?this._addCheck({kind:"time",precision:null,message:A}):this._addCheck(P({kind:"time",precision:typeof A?.precision>"u"?null:A?.precision},Kt.errToObj(A?.message)))}duration(A){return this._addCheck(P({kind:"duration"},Kt.errToObj(A)))}regex(A,t){return this._addCheck(P({kind:"regex",regex:A},Kt.errToObj(t)))}includes(A,t){return this._addCheck(P({kind:"includes",value:A,position:t?.position},Kt.errToObj(t?.message)))}startsWith(A,t){return this._addCheck(P({kind:"startsWith",value:A},Kt.errToObj(t)))}endsWith(A,t){return this._addCheck(P({kind:"endsWith",value:A},Kt.errToObj(t)))}min(A,t){return this._addCheck(P({kind:"min",value:A},Kt.errToObj(t)))}max(A,t){return this._addCheck(P({kind:"max",value:A},Kt.errToObj(t)))}length(A,t){return this._addCheck(P({kind:"length",value:A},Kt.errToObj(t)))}nonempty(A){return this.min(1,Kt.errToObj(A))}trim(){return new i($A(P({},this._def),{checks:[...this._def.checks,{kind:"trim"}]}))}toLowerCase(){return new i($A(P({},this._def),{checks:[...this._def.checks,{kind:"toLowerCase"}]}))}toUpperCase(){return new i($A(P({},this._def),{checks:[...this._def.checks,{kind:"toUpperCase"}]}))}get isDatetime(){return!!this._def.checks.find(A=>A.kind==="datetime")}get isDate(){return!!this._def.checks.find(A=>A.kind==="date")}get isTime(){return!!this._def.checks.find(A=>A.kind==="time")}get isDuration(){return!!this._def.checks.find(A=>A.kind==="duration")}get isEmail(){return!!this._def.checks.find(A=>A.kind==="email")}get isURL(){return!!this._def.checks.find(A=>A.kind==="url")}get isEmoji(){return!!this._def.checks.find(A=>A.kind==="emoji")}get isUUID(){return!!this._def.checks.find(A=>A.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(A=>A.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(A=>A.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(A=>A.kind==="cuid2")}get isULID(){return!!this._def.checks.find(A=>A.kind==="ulid")}get isIP(){return!!this._def.checks.find(A=>A.kind==="ip")}get isCIDR(){return!!this._def.checks.find(A=>A.kind==="cidr")}get isBase64(){return!!this._def.checks.find(A=>A.kind==="base64")}get isBase64url(){return!!this._def.checks.find(A=>A.kind==="base64url")}get minLength(){let A=null;for(let t of this._def.checks)t.kind==="min"&&(A===null||t.value>A)&&(A=t.value);return A}get maxLength(){let A=null;for(let t of this._def.checks)t.kind==="max"&&(A===null||t.valuenew i(P({checks:[],typeName:_i.ZodString,coerce:e?.coerce??!1},tn(e))),i})();function xMA(i,e){let A=(i.toString().split(".")[1]||"").length,t=(e.toString().split(".")[1]||"").length,n=A>t?A:t,o=Number.parseInt(i.toFixed(n).replace(".","")),a=Number.parseInt(e.toFixed(n).replace(".",""));return o%a/10**n}var LR=(()=>{class i extends hn{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(A){if(this._def.coerce&&(A.data=Number(A.data)),this._getType(A)!==ht.number){let a=this._getOrReturnCtx(A);return ot(a,{code:Ne.invalid_type,expected:ht.number,received:a.parsedType}),hi}let n,o=new rs;for(let a of this._def.checks)a.kind==="int"?Mn.isInteger(A.data)||(n=this._getOrReturnCtx(A,n),ot(n,{code:Ne.invalid_type,expected:"integer",received:"float",message:a.message}),o.dirty()):a.kind==="min"?(a.inclusive?A.dataa.value:A.data>=a.value)&&(n=this._getOrReturnCtx(A,n),ot(n,{code:Ne.too_big,maximum:a.value,type:"number",inclusive:a.inclusive,exact:!1,message:a.message}),o.dirty()):a.kind==="multipleOf"?xMA(A.data,a.value)!==0&&(n=this._getOrReturnCtx(A,n),ot(n,{code:Ne.not_multiple_of,multipleOf:a.value,message:a.message}),o.dirty()):a.kind==="finite"?Number.isFinite(A.data)||(n=this._getOrReturnCtx(A,n),ot(n,{code:Ne.not_finite,message:a.message}),o.dirty()):Mn.assertNever(a);return{status:o.value,value:A.data}}gte(A,t){return this.setLimit("min",A,!0,Kt.toString(t))}gt(A,t){return this.setLimit("min",A,!1,Kt.toString(t))}lte(A,t){return this.setLimit("max",A,!0,Kt.toString(t))}lt(A,t){return this.setLimit("max",A,!1,Kt.toString(t))}setLimit(A,t,n,o){return new i($A(P({},this._def),{checks:[...this._def.checks,{kind:A,value:t,inclusive:n,message:Kt.toString(o)}]}))}_addCheck(A){return new i($A(P({},this._def),{checks:[...this._def.checks,A]}))}int(A){return this._addCheck({kind:"int",message:Kt.toString(A)})}positive(A){return this._addCheck({kind:"min",value:0,inclusive:!1,message:Kt.toString(A)})}negative(A){return this._addCheck({kind:"max",value:0,inclusive:!1,message:Kt.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:0,inclusive:!0,message:Kt.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:0,inclusive:!0,message:Kt.toString(A)})}multipleOf(A,t){return this._addCheck({kind:"multipleOf",value:A,message:Kt.toString(t)})}finite(A){return this._addCheck({kind:"finite",message:Kt.toString(A)})}safe(A){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:Kt.toString(A)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:Kt.toString(A)})}get minValue(){let A=null;for(let t of this._def.checks)t.kind==="min"&&(A===null||t.value>A)&&(A=t.value);return A}get maxValue(){let A=null;for(let t of this._def.checks)t.kind==="max"&&(A===null||t.valueA.kind==="int"||A.kind==="multipleOf"&&Mn.isInteger(A.value))}get isFinite(){let A=null,t=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(t===null||n.value>t)&&(t=n.value):n.kind==="max"&&(A===null||n.valuenew i(P({checks:[],typeName:_i.ZodNumber,coerce:e?.coerce||!1},tn(e))),i})(),GR=(()=>{class i extends hn{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(A){if(this._def.coerce)try{A.data=BigInt(A.data)}catch(a){return this._getInvalidInput(A)}if(this._getType(A)!==ht.bigint)return this._getInvalidInput(A);let n,o=new rs;for(let a of this._def.checks)a.kind==="min"?(a.inclusive?A.dataa.value:A.data>=a.value)&&(n=this._getOrReturnCtx(A,n),ot(n,{code:Ne.too_big,type:"bigint",maximum:a.value,inclusive:a.inclusive,message:a.message}),o.dirty()):a.kind==="multipleOf"?A.data%a.value!==BigInt(0)&&(n=this._getOrReturnCtx(A,n),ot(n,{code:Ne.not_multiple_of,multipleOf:a.value,message:a.message}),o.dirty()):Mn.assertNever(a);return{status:o.value,value:A.data}}_getInvalidInput(A){let t=this._getOrReturnCtx(A);return ot(t,{code:Ne.invalid_type,expected:ht.bigint,received:t.parsedType}),hi}gte(A,t){return this.setLimit("min",A,!0,Kt.toString(t))}gt(A,t){return this.setLimit("min",A,!1,Kt.toString(t))}lte(A,t){return this.setLimit("max",A,!0,Kt.toString(t))}lt(A,t){return this.setLimit("max",A,!1,Kt.toString(t))}setLimit(A,t,n,o){return new i($A(P({},this._def),{checks:[...this._def.checks,{kind:A,value:t,inclusive:n,message:Kt.toString(o)}]}))}_addCheck(A){return new i($A(P({},this._def),{checks:[...this._def.checks,A]}))}positive(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:Kt.toString(A)})}negative(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:Kt.toString(A)})}nonpositive(A){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:Kt.toString(A)})}nonnegative(A){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:Kt.toString(A)})}multipleOf(A,t){return this._addCheck({kind:"multipleOf",value:A,message:Kt.toString(t)})}get minValue(){let A=null;for(let t of this._def.checks)t.kind==="min"&&(A===null||t.value>A)&&(A=t.value);return A}get maxValue(){let A=null;for(let t of this._def.checks)t.kind==="max"&&(A===null||t.valuenew i(P({checks:[],typeName:_i.ZodBigInt,coerce:e?.coerce??!1},tn(e))),i})(),KR=(()=>{class i extends hn{_parse(A){if(this._def.coerce&&(A.data=!!A.data),this._getType(A)!==ht.boolean){let n=this._getOrReturnCtx(A);return ot(n,{code:Ne.invalid_type,expected:ht.boolean,received:n.parsedType}),hi}return Ss(A.data)}}return i.create=e=>new i(P({typeName:_i.ZodBoolean,coerce:e?.coerce||!1},tn(e))),i})(),UR=(()=>{class i extends hn{_parse(A){if(this._def.coerce&&(A.data=new Date(A.data)),this._getType(A)!==ht.date){let a=this._getOrReturnCtx(A);return ot(a,{code:Ne.invalid_type,expected:ht.date,received:a.parsedType}),hi}if(Number.isNaN(A.data.getTime())){let a=this._getOrReturnCtx(A);return ot(a,{code:Ne.invalid_date}),hi}let n=new rs,o;for(let a of this._def.checks)a.kind==="min"?A.data.getTime()a.value&&(o=this._getOrReturnCtx(A,o),ot(o,{code:Ne.too_big,message:a.message,inclusive:!0,exact:!1,maximum:a.value,type:"date"}),n.dirty()):Mn.assertNever(a);return{status:n.value,value:new Date(A.data.getTime())}}_addCheck(A){return new i($A(P({},this._def),{checks:[...this._def.checks,A]}))}min(A,t){return this._addCheck({kind:"min",value:A.getTime(),message:Kt.toString(t)})}max(A,t){return this._addCheck({kind:"max",value:A.getTime(),message:Kt.toString(t)})}get minDate(){let A=null;for(let t of this._def.checks)t.kind==="min"&&(A===null||t.value>A)&&(A=t.value);return A!=null?new Date(A):null}get maxDate(){let A=null;for(let t of this._def.checks)t.kind==="max"&&(A===null||t.valuenew i(P({checks:[],coerce:e?.coerce||!1,typeName:_i.ZodDate},tn(e))),i})(),y$=(()=>{class i extends hn{_parse(A){if(this._getType(A)!==ht.symbol){let n=this._getOrReturnCtx(A);return ot(n,{code:Ne.invalid_type,expected:ht.symbol,received:n.parsedType}),hi}return Ss(A.data)}}return i.create=e=>new i(P({typeName:_i.ZodSymbol},tn(e))),i})(),TR=(()=>{class i extends hn{_parse(A){if(this._getType(A)!==ht.undefined){let n=this._getOrReturnCtx(A);return ot(n,{code:Ne.invalid_type,expected:ht.undefined,received:n.parsedType}),hi}return Ss(A.data)}}return i.create=e=>new i(P({typeName:_i.ZodUndefined},tn(e))),i})(),OR=(()=>{class i extends hn{_parse(A){if(this._getType(A)!==ht.null){let n=this._getOrReturnCtx(A);return ot(n,{code:Ne.invalid_type,expected:ht.null,received:n.parsedType}),hi}return Ss(A.data)}}return i.create=e=>new i(P({typeName:_i.ZodNull},tn(e))),i})(),Gy=(()=>{class i extends hn{constructor(){super(...arguments),this._any=!0}_parse(A){return Ss(A.data)}}return i.create=e=>new i(P({typeName:_i.ZodAny},tn(e))),i})(),Lp=(()=>{class i extends hn{constructor(){super(...arguments),this._unknown=!0}_parse(A){return Ss(A.data)}}return i.create=e=>new i(P({typeName:_i.ZodUnknown},tn(e))),i})(),BI=(()=>{class i extends hn{_parse(A){let t=this._getOrReturnCtx(A);return ot(t,{code:Ne.invalid_type,expected:ht.never,received:t.parsedType}),hi}}return i.create=e=>new i(P({typeName:_i.ZodNever},tn(e))),i})(),D$=(()=>{class i extends hn{_parse(A){if(this._getType(A)!==ht.undefined){let n=this._getOrReturnCtx(A);return ot(n,{code:Ne.invalid_type,expected:ht.void,received:n.parsedType}),hi}return Ss(A.data)}}return i.create=e=>new i(P({typeName:_i.ZodVoid},tn(e))),i})(),Gp=(()=>{class i extends hn{_parse(A){let{ctx:t,status:n}=this._processInputParams(A),o=this._def;if(t.parsedType!==ht.array)return ot(t,{code:Ne.invalid_type,expected:ht.array,received:t.parsedType}),hi;if(o.exactLength!==null){let r=t.data.length>o.exactLength.value,s=t.data.lengtho.maxLength.value&&(ot(t,{code:Ne.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((r,s)=>o.type._parseAsync(new Mg(t,r,t.path,s)))).then(r=>rs.mergeArray(n,r));let a=[...t.data].map((r,s)=>o.type._parseSync(new Mg(t,r,t.path,s)));return rs.mergeArray(n,a)}get element(){return this._def.type}min(A,t){return new i($A(P({},this._def),{minLength:{value:A,message:Kt.toString(t)}}))}max(A,t){return new i($A(P({},this._def),{maxLength:{value:A,message:Kt.toString(t)}}))}length(A,t){return new i($A(P({},this._def),{exactLength:{value:A,message:Kt.toString(t)}}))}nonempty(A){return this.min(1,A)}}return i.create=(e,A)=>new i(P({type:e,minLength:null,maxLength:null,exactLength:null,typeName:_i.ZodArray},tn(A))),i})();function FE(i){if(i instanceof LE){let e={};for(let A in i.shape){let t=i.shape[A];e[A]=f1.create(FE(t))}return new LE($A(P({},i._def),{shape:()=>e}))}else return i instanceof Gp?new Gp($A(P({},i._def),{type:FE(i.element)})):i instanceof f1?f1.create(FE(i.unwrap())):i instanceof UE?UE.create(FE(i.unwrap())):i instanceof GE?GE.create(i.items.map(e=>FE(e))):i}var LE=(()=>{class i extends hn{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let A=this._def.shape(),t=Mn.objectKeys(A);return this._cached={shape:A,keys:t},this._cached}_parse(A){if(this._getType(A)!==ht.object){let g=this._getOrReturnCtx(A);return ot(g,{code:Ne.invalid_type,expected:ht.object,received:g.parsedType}),hi}let{status:n,ctx:o}=this._processInputParams(A),{shape:a,keys:r}=this._getCached(),s=[];if(!(this._def.catchall instanceof BI&&this._def.unknownKeys==="strip"))for(let g in o.data)r.includes(g)||s.push(g);let l=[];for(let g of r){let C=a[g],d=o.data[g];l.push({key:{status:"valid",value:g},value:C._parse(new Mg(o,d,o.path,g)),alwaysSet:g in o.data})}if(this._def.catchall instanceof BI){let g=this._def.unknownKeys;if(g==="passthrough")for(let C of s)l.push({key:{status:"valid",value:C},value:{status:"valid",value:o.data[C]}});else if(g==="strict")s.length>0&&(ot(o,{code:Ne.unrecognized_keys,keys:s}),n.dirty());else if(g!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let g=this._def.catchall;for(let C of s){let d=o.data[C];l.push({key:{status:"valid",value:C},value:g._parse(new Mg(o,d,o.path,C)),alwaysSet:C in o.data})}}return o.common.async?Promise.resolve().then(()=>re(this,null,function*(){let g=[];for(let C of l){let d=yield C.key,B=yield C.value;g.push({key:d,value:B,alwaysSet:C.alwaysSet})}return g})).then(g=>rs.mergeObjectSync(n,g)):rs.mergeObjectSync(n,l)}get shape(){return this._def.shape()}strict(A){return Kt.errToObj,new i(P($A(P({},this._def),{unknownKeys:"strict"}),A!==void 0?{errorMap:(t,n)=>{let o=this._def.errorMap?.(t,n).message??n.defaultError;return t.code==="unrecognized_keys"?{message:Kt.errToObj(A).message??o}:{message:o}}}:{}))}strip(){return new i($A(P({},this._def),{unknownKeys:"strip"}))}passthrough(){return new i($A(P({},this._def),{unknownKeys:"passthrough"}))}extend(A){return new i($A(P({},this._def),{shape:()=>P(P({},this._def.shape()),A)}))}merge(A){return new i({unknownKeys:A._def.unknownKeys,catchall:A._def.catchall,shape:()=>P(P({},this._def.shape()),A._def.shape()),typeName:_i.ZodObject})}setKey(A,t){return this.augment({[A]:t})}catchall(A){return new i($A(P({},this._def),{catchall:A}))}pick(A){let t={};for(let n of Mn.objectKeys(A))A[n]&&this.shape[n]&&(t[n]=this.shape[n]);return new i($A(P({},this._def),{shape:()=>t}))}omit(A){let t={};for(let n of Mn.objectKeys(this.shape))A[n]||(t[n]=this.shape[n]);return new i($A(P({},this._def),{shape:()=>t}))}deepPartial(){return FE(this)}partial(A){let t={};for(let n of Mn.objectKeys(this.shape)){let o=this.shape[n];A&&!A[n]?t[n]=o:t[n]=o.optional()}return new i($A(P({},this._def),{shape:()=>t}))}required(A){let t={};for(let n of Mn.objectKeys(this.shape))if(A&&!A[n])t[n]=this.shape[n];else{let a=this.shape[n];for(;a instanceof f1;)a=a._def.innerType;t[n]=a}return new i($A(P({},this._def),{shape:()=>t}))}keyof(){return M$(Mn.objectKeys(this.shape))}}return i.create=(e,A)=>new i(P({shape:()=>e,unknownKeys:"strip",catchall:BI.create(),typeName:_i.ZodObject},tn(A))),i.strictCreate=(e,A)=>new i(P({shape:()=>e,unknownKeys:"strict",catchall:BI.create(),typeName:_i.ZodObject},tn(A))),i.lazycreate=(e,A)=>new i(P({shape:e,unknownKeys:"strip",catchall:BI.create(),typeName:_i.ZodObject},tn(A))),i})(),JR=(()=>{class i extends hn{_parse(A){let{ctx:t}=this._processInputParams(A),n=this._def.options;function o(a){for(let s of a)if(s.result.status==="valid")return s.result;for(let s of a)if(s.result.status==="dirty")return t.common.issues.push(...s.ctx.common.issues),s.result;let r=a.map(s=>new x0(s.ctx.common.issues));return ot(t,{code:Ne.invalid_union,unionErrors:r}),hi}if(t.common.async)return Promise.all(n.map(a=>re(this,null,function*(){let r=$A(P({},t),{common:$A(P({},t.common),{issues:[]}),parent:null});return{result:yield a._parseAsync({data:t.data,path:t.path,parent:r}),ctx:r}}))).then(o);{let a,r=[];for(let l of n){let g=$A(P({},t),{common:$A(P({},t.common),{issues:[]}),parent:null}),C=l._parseSync({data:t.data,path:t.path,parent:g});if(C.status==="valid")return C;C.status==="dirty"&&!a&&(a={result:C,ctx:g}),g.common.issues.length&&r.push(g.common.issues)}if(a)return t.common.issues.push(...a.ctx.common.issues),a.result;let s=r.map(l=>new x0(l));return ot(t,{code:Ne.invalid_union,unionErrors:s}),hi}}get options(){return this._def.options}}return i.create=(e,A)=>new i(P({options:e,typeName:_i.ZodUnion},tn(A))),i})(),OC=i=>i instanceof HR?OC(i.schema):i instanceof KE?OC(i.innerType()):i instanceof zR?[i.value]:i instanceof Jy?i.options:i instanceof PR?Mn.objectValues(i.enum):i instanceof jR?OC(i._def.innerType):i instanceof TR?[void 0]:i instanceof OR?[null]:i instanceof f1?[void 0,...OC(i.unwrap())]:i instanceof UE?[null,...OC(i.unwrap())]:i instanceof Kp||i instanceof qR?OC(i.unwrap()):i instanceof VR?OC(i._def.innerType):[],Ky=class i extends hn{_parse(e){let{ctx:A}=this._processInputParams(e);if(A.parsedType!==ht.object)return ot(A,{code:Ne.invalid_type,expected:ht.object,received:A.parsedType}),hi;let t=this.discriminator,n=A.data[t],o=this.optionsMap.get(n);return o?A.common.async?o._parseAsync({data:A.data,path:A.path,parent:A}):o._parseSync({data:A.data,path:A.path,parent:A}):(ot(A,{code:Ne.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[t]}),hi)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,A,t){let n=new Map;for(let o of A){let a=OC(o.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let r of a){if(n.has(r))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(r)}`);n.set(r,o)}}return new i(P({typeName:_i.ZodDiscriminatedUnion,discriminator:e,options:A,optionsMap:n},tn(t)))}};function FR(i,e){let A=_0(i),t=_0(e);if(i===e)return{valid:!0,data:i};if(A===ht.object&&t===ht.object){let n=Mn.objectKeys(e),o=Mn.objectKeys(i).filter(r=>n.indexOf(r)!==-1),a=P(P({},i),e);for(let r of o){let s=FR(i[r],e[r]);if(!s.valid)return{valid:!1};a[r]=s.data}return{valid:!0,data:a}}else if(A===ht.array&&t===ht.array){if(i.length!==e.length)return{valid:!1};let n=[];for(let o=0;o{class i extends hn{_parse(A){let{status:t,ctx:n}=this._processInputParams(A),o=(a,r)=>{if(Fy(a)||Fy(r))return hi;let s=FR(a.value,r.value);return s.valid?((Ly(a)||Ly(r))&&t.dirty(),{status:t.value,value:s.data}):(ot(n,{code:Ne.invalid_intersection_types}),hi)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([a,r])=>o(a,r)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}}return i.create=(e,A,t)=>new i(P({left:e,right:A,typeName:_i.ZodIntersection},tn(t))),i})(),GE=(()=>{class i extends hn{_parse(A){let{status:t,ctx:n}=this._processInputParams(A);if(n.parsedType!==ht.array)return ot(n,{code:Ne.invalid_type,expected:ht.array,received:n.parsedType}),hi;if(n.data.lengththis._def.items.length&&(ot(n,{code:Ne.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());let a=[...n.data].map((r,s)=>{let l=this._def.items[s]||this._def.rest;return l?l._parse(new Mg(n,r,n.path,s)):null}).filter(r=>!!r);return n.common.async?Promise.all(a).then(r=>rs.mergeArray(t,r)):rs.mergeArray(t,a)}get items(){return this._def.items}rest(A){return new i($A(P({},this._def),{rest:A}))}}return i.create=(e,A)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new i(P({items:e,typeName:_i.ZodTuple,rest:null},tn(A)))},i})(),Uy=class i extends hn{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:A,ctx:t}=this._processInputParams(e);if(t.parsedType!==ht.object)return ot(t,{code:Ne.invalid_type,expected:ht.object,received:t.parsedType}),hi;let n=[],o=this._def.keyType,a=this._def.valueType;for(let r in t.data)n.push({key:o._parse(new Mg(t,r,t.path,r)),value:a._parse(new Mg(t,t.data[r],t.path,r)),alwaysSet:r in t.data});return t.common.async?rs.mergeObjectAsync(A,n):rs.mergeObjectSync(A,n)}get element(){return this._def.valueType}static create(e,A,t){return A instanceof hn?new i(P({keyType:e,valueType:A,typeName:_i.ZodRecord},tn(t))):new i(P({keyType:Oy.create(),valueType:e,typeName:_i.ZodRecord},tn(A)))}},v$=(()=>{class i extends hn{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(A){let{status:t,ctx:n}=this._processInputParams(A);if(n.parsedType!==ht.map)return ot(n,{code:Ne.invalid_type,expected:ht.map,received:n.parsedType}),hi;let o=this._def.keyType,a=this._def.valueType,r=[...n.data.entries()].map(([s,l],g)=>({key:o._parse(new Mg(n,s,n.path,[g,"key"])),value:a._parse(new Mg(n,l,n.path,[g,"value"]))}));if(n.common.async){let s=new Map;return Promise.resolve().then(()=>re(this,null,function*(){for(let l of r){let g=yield l.key,C=yield l.value;if(g.status==="aborted"||C.status==="aborted")return hi;(g.status==="dirty"||C.status==="dirty")&&t.dirty(),s.set(g.value,C.value)}return{status:t.value,value:s}}))}else{let s=new Map;for(let l of r){let g=l.key,C=l.value;if(g.status==="aborted"||C.status==="aborted")return hi;(g.status==="dirty"||C.status==="dirty")&&t.dirty(),s.set(g.value,C.value)}return{status:t.value,value:s}}}}return i.create=(e,A,t)=>new i(P({valueType:A,keyType:e,typeName:_i.ZodMap},tn(t))),i})(),b$=(()=>{class i extends hn{_parse(A){let{status:t,ctx:n}=this._processInputParams(A);if(n.parsedType!==ht.set)return ot(n,{code:Ne.invalid_type,expected:ht.set,received:n.parsedType}),hi;let o=this._def;o.minSize!==null&&n.data.sizeo.maxSize.value&&(ot(n,{code:Ne.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),t.dirty());let a=this._def.valueType;function r(l){let g=new Set;for(let C of l){if(C.status==="aborted")return hi;C.status==="dirty"&&t.dirty(),g.add(C.value)}return{status:t.value,value:g}}let s=[...n.data.values()].map((l,g)=>a._parse(new Mg(n,l,n.path,g)));return n.common.async?Promise.all(s).then(l=>r(l)):r(s)}min(A,t){return new i($A(P({},this._def),{minSize:{value:A,message:Kt.toString(t)}}))}max(A,t){return new i($A(P({},this._def),{maxSize:{value:A,message:Kt.toString(t)}}))}size(A,t){return this.min(A,t).max(A,t)}nonempty(A){return this.min(1,A)}}return i.create=(e,A)=>new i(P({valueType:e,minSize:null,maxSize:null,typeName:_i.ZodSet},tn(A))),i})(),Ty=class i extends hn{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:A}=this._processInputParams(e);if(A.parsedType!==ht.function)return ot(A,{code:Ne.invalid_type,expected:ht.function,received:A.parsedType}),hi;function t(r,s){return Fp({data:r,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,RE(),TC].filter(l=>!!l),issueData:{code:Ne.invalid_arguments,argumentsError:s}})}function n(r,s){return Fp({data:r,path:A.path,errorMaps:[A.common.contextualErrorMap,A.schemaErrorMap,RE(),TC].filter(l=>!!l),issueData:{code:Ne.invalid_return_type,returnTypeError:s}})}let o={errorMap:A.common.contextualErrorMap},a=A.data;if(this._def.returns instanceof Yy){let r=this;return Ss(function(...s){return re(this,null,function*(){let l=new x0([]),g=yield r._def.args.parseAsync(s,o).catch(B=>{throw l.addIssue(t(s,B)),l}),C=yield Reflect.apply(a,this,g);return yield r._def.returns._def.type.parseAsync(C,o).catch(B=>{throw l.addIssue(n(C,B)),l})})})}else{let r=this;return Ss(function(...s){let l=r._def.args.safeParse(s,o);if(!l.success)throw new x0([t(s,l.error)]);let g=Reflect.apply(a,this,l.data),C=r._def.returns.safeParse(g,o);if(!C.success)throw new x0([n(g,C.error)]);return C.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new i($A(P({},this._def),{args:GE.create(e).rest(Lp.create())}))}returns(e){return new i($A(P({},this._def),{returns:e}))}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,A,t){return new i(P({args:e||GE.create([]).rest(Lp.create()),returns:A||Lp.create(),typeName:_i.ZodFunction},tn(t)))}},HR=(()=>{class i extends hn{get schema(){return this._def.getter()}_parse(A){let{ctx:t}=this._processInputParams(A);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}return i.create=(e,A)=>new i(P({getter:e,typeName:_i.ZodLazy},tn(A))),i})(),zR=(()=>{class i extends hn{_parse(A){if(A.data!==this._def.value){let t=this._getOrReturnCtx(A);return ot(t,{received:t.data,code:Ne.invalid_literal,expected:this._def.value}),hi}return{status:"valid",value:A.data}}get value(){return this._def.value}}return i.create=(e,A)=>new i(P({value:e,typeName:_i.ZodLiteral},tn(A))),i})();function M$(i,e){return new Jy(P({values:i,typeName:_i.ZodEnum},tn(e)))}var Jy=(()=>{class i extends hn{_parse(A){if(typeof A.data!="string"){let t=this._getOrReturnCtx(A),n=this._def.values;return ot(t,{expected:Mn.joinValues(n),received:t.parsedType,code:Ne.invalid_type}),hi}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(A.data)){let t=this._getOrReturnCtx(A),n=this._def.values;return ot(t,{received:t.data,code:Ne.invalid_enum_value,options:n}),hi}return Ss(A.data)}get options(){return this._def.values}get enum(){let A={};for(let t of this._def.values)A[t]=t;return A}get Values(){let A={};for(let t of this._def.values)A[t]=t;return A}get Enum(){let A={};for(let t of this._def.values)A[t]=t;return A}extract(A,t=this._def){return i.create(A,P(P({},this._def),t))}exclude(A,t=this._def){return i.create(this.options.filter(n=>!A.includes(n)),P(P({},this._def),t))}}return i.create=M$,i})(),PR=(()=>{class i extends hn{_parse(A){let t=Mn.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(A);if(n.parsedType!==ht.string&&n.parsedType!==ht.number){let o=Mn.objectValues(t);return ot(n,{expected:Mn.joinValues(o),received:n.parsedType,code:Ne.invalid_type}),hi}if(this._cache||(this._cache=new Set(Mn.getValidEnumValues(this._def.values))),!this._cache.has(A.data)){let o=Mn.objectValues(t);return ot(n,{received:n.data,code:Ne.invalid_enum_value,options:o}),hi}return Ss(A.data)}get enum(){return this._def.values}}return i.create=(e,A)=>new i(P({values:e,typeName:_i.ZodNativeEnum},tn(A))),i})(),Yy=(()=>{class i extends hn{unwrap(){return this._def.type}_parse(A){let{ctx:t}=this._processInputParams(A);if(t.parsedType!==ht.promise&&t.common.async===!1)return ot(t,{code:Ne.invalid_type,expected:ht.promise,received:t.parsedType}),hi;let n=t.parsedType===ht.promise?t.data:Promise.resolve(t.data);return Ss(n.then(o=>this._def.type.parseAsync(o,{path:t.path,errorMap:t.common.contextualErrorMap})))}}return i.create=(e,A)=>new i(P({type:e,typeName:_i.ZodPromise},tn(A))),i})(),KE=(()=>{class i extends hn{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===_i.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(A){let{status:t,ctx:n}=this._processInputParams(A),o=this._def.effect||null,a={addIssue:r=>{ot(n,r),r.fatal?t.abort():t.dirty()},get path(){return n.path}};if(a.addIssue=a.addIssue.bind(a),o.type==="preprocess"){let r=o.transform(n.data,a);if(n.common.async)return Promise.resolve(r).then(s=>re(this,null,function*(){if(t.value==="aborted")return hi;let l=yield this._def.schema._parseAsync({data:s,path:n.path,parent:n});return l.status==="aborted"?hi:l.status==="dirty"?II(l.value):t.value==="dirty"?II(l.value):l}));{if(t.value==="aborted")return hi;let s=this._def.schema._parseSync({data:r,path:n.path,parent:n});return s.status==="aborted"?hi:s.status==="dirty"?II(s.value):t.value==="dirty"?II(s.value):s}}if(o.type==="refinement"){let r=s=>{let l=o.refinement(s,a);if(n.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return s};if(n.common.async===!1){let s=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?hi:(s.status==="dirty"&&t.dirty(),r(s.value),{status:t.value,value:s.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(s=>s.status==="aborted"?hi:(s.status==="dirty"&&t.dirty(),r(s.value).then(()=>({status:t.value,value:s.value}))))}if(o.type==="transform")if(n.common.async===!1){let r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!p1(r))return hi;let s=o.transform(r.value,a);if(s instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:s}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(r=>p1(r)?Promise.resolve(o.transform(r.value,a)).then(s=>({status:t.value,value:s})):hi);Mn.assertNever(o)}}return i.create=(e,A,t)=>new i(P({schema:e,typeName:_i.ZodEffects,effect:A},tn(t))),i.createWithPreprocess=(e,A,t)=>new i(P({schema:A,effect:{type:"preprocess",transform:e},typeName:_i.ZodEffects},tn(t))),i})();var f1=(()=>{class i extends hn{_parse(A){return this._getType(A)===ht.undefined?Ss(void 0):this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}return i.create=(e,A)=>new i(P({innerType:e,typeName:_i.ZodOptional},tn(A))),i})(),UE=(()=>{class i extends hn{_parse(A){return this._getType(A)===ht.null?Ss(null):this._def.innerType._parse(A)}unwrap(){return this._def.innerType}}return i.create=(e,A)=>new i(P({innerType:e,typeName:_i.ZodNullable},tn(A))),i})(),jR=(()=>{class i extends hn{_parse(A){let{ctx:t}=this._processInputParams(A),n=t.data;return t.parsedType===ht.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}return i.create=(e,A)=>new i(P({innerType:e,typeName:_i.ZodDefault,defaultValue:typeof A.default=="function"?A.default:()=>A.default},tn(A))),i})(),VR=(()=>{class i extends hn{_parse(A){let{ctx:t}=this._processInputParams(A),n=$A(P({},t),{common:$A(P({},t.common),{issues:[]})}),o=this._def.innerType._parse({data:n.data,path:n.path,parent:P({},n)});return NE(o)?o.then(a=>({status:"valid",value:a.status==="valid"?a.value:this._def.catchValue({get error(){return new x0(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new x0(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}}return i.create=(e,A)=>new i(P({innerType:e,typeName:_i.ZodCatch,catchValue:typeof A.catch=="function"?A.catch:()=>A.catch},tn(A))),i})(),S$=(()=>{class i extends hn{_parse(A){if(this._getType(A)!==ht.nan){let n=this._getOrReturnCtx(A);return ot(n,{code:Ne.invalid_type,expected:ht.nan,received:n.parsedType}),hi}return{status:"valid",value:A.data}}}return i.create=e=>new i(P({typeName:_i.ZodNaN},tn(e))),i})(),RMA=Symbol("zod_brand"),Kp=class extends hn{_parse(e){let{ctx:A}=this._processInputParams(e),t=A.data;return this._def.type._parse({data:t,path:A.path,parent:A})}unwrap(){return this._def.type}},Up=class i extends hn{_parse(e){let{status:A,ctx:t}=this._processInputParams(e);if(t.common.async)return re(this,null,function*(){let o=yield this._def.in._parseAsync({data:t.data,path:t.path,parent:t});return o.status==="aborted"?hi:o.status==="dirty"?(A.dirty(),II(o.value)):this._def.out._parseAsync({data:o.value,path:t.path,parent:t})});{let n=this._def.in._parseSync({data:t.data,path:t.path,parent:t});return n.status==="aborted"?hi:n.status==="dirty"?(A.dirty(),{status:"dirty",value:n.value}):this._def.out._parseSync({data:n.value,path:t.path,parent:t})}}static create(e,A){return new i({in:e,out:A,typeName:_i.ZodPipeline})}},qR=(()=>{class i extends hn{_parse(A){let t=this._def.innerType._parse(A),n=o=>(p1(o)&&(o.value=Object.freeze(o.value)),o);return NE(t)?t.then(o=>n(o)):n(t)}unwrap(){return this._def.innerType}}return i.create=(e,A)=>new i(P({innerType:e,typeName:_i.ZodReadonly},tn(A))),i})();function p$(i,e){let A=typeof i=="function"?i(e):typeof i=="string"?{message:i}:i;return typeof A=="string"?{message:A}:A}function k$(i,e={},A){return i?Gy.create().superRefine((t,n)=>{let o=i(t);if(o instanceof Promise)return o.then(a=>{if(!a){let r=p$(e,t),s=r.fatal??A??!0;n.addIssue($A(P({code:"custom"},r),{fatal:s}))}});if(!o){let a=p$(e,t),r=a.fatal??A??!0;n.addIssue($A(P({code:"custom"},a),{fatal:r}))}}):Gy.create()}var NMA={object:LE.lazycreate},_i=(function(i){return i.ZodString="ZodString",i.ZodNumber="ZodNumber",i.ZodNaN="ZodNaN",i.ZodBigInt="ZodBigInt",i.ZodBoolean="ZodBoolean",i.ZodDate="ZodDate",i.ZodSymbol="ZodSymbol",i.ZodUndefined="ZodUndefined",i.ZodNull="ZodNull",i.ZodAny="ZodAny",i.ZodUnknown="ZodUnknown",i.ZodNever="ZodNever",i.ZodVoid="ZodVoid",i.ZodArray="ZodArray",i.ZodObject="ZodObject",i.ZodUnion="ZodUnion",i.ZodDiscriminatedUnion="ZodDiscriminatedUnion",i.ZodIntersection="ZodIntersection",i.ZodTuple="ZodTuple",i.ZodRecord="ZodRecord",i.ZodMap="ZodMap",i.ZodSet="ZodSet",i.ZodFunction="ZodFunction",i.ZodLazy="ZodLazy",i.ZodLiteral="ZodLiteral",i.ZodEnum="ZodEnum",i.ZodEffects="ZodEffects",i.ZodNativeEnum="ZodNativeEnum",i.ZodOptional="ZodOptional",i.ZodNullable="ZodNullable",i.ZodDefault="ZodDefault",i.ZodCatch="ZodCatch",i.ZodPromise="ZodPromise",i.ZodBranded="ZodBranded",i.ZodPipeline="ZodPipeline",i.ZodReadonly="ZodReadonly",i})(_i||{});var FMA=(i,e={message:`Input not instance of ${i.name}`})=>k$(A=>A instanceof i,e),_$=Oy.create,x$=LR.create,LMA=S$.create,GMA=GR.create,R$=KR.create,KMA=UR.create,UMA=y$.create,TMA=TR.create,OMA=OR.create,JMA=Gy.create,YMA=Lp.create,HMA=BI.create,zMA=D$.create,PMA=Gp.create,jMA=LE.create,VMA=LE.strictCreate,qMA=JR.create,WMA=Ky.create,ZMA=YR.create,XMA=GE.create,$MA=Uy.create,A9A=v$.create,e9A=b$.create,t9A=Ty.create,i9A=HR.create,n9A=zR.create,o9A=Jy.create,a9A=PR.create,r9A=Yy.create,s9A=KE.create,l9A=f1.create,g9A=UE.create,c9A=KE.createWithPreprocess,C9A=Up.create,d9A=()=>_$().optional(),I9A=()=>x$().optional(),B9A=()=>R$().optional(),h9A={string:i=>Oy.create($A(P({},i),{coerce:!0})),number:i=>LR.create($A(P({},i),{coerce:!0})),boolean:i=>KR.create($A(P({},i),{coerce:!0})),bigint:i=>GR.create($A(P({},i),{coerce:!0})),date:i=>UR.create($A(P({},i),{coerce:!0}))};var E9A=hi;var Q9A=XA.union([XA.string(),XA.number(),XA.boolean()]),Hy=XA.lazy(()=>XA.union([Q9A,XA.array(Hy),XA.record(XA.string(),Hy)]));function zy(i){return i.transform(e=>{if(!e||typeof e!="object")return e;let A={};for(let[t,n]of Object.entries(e))n!==null&&(A[t]=n);return A})}var WR=XA.string().transform((i,e)=>{try{return JSON.parse(i)}catch(A){return e.addIssue({code:"custom",message:"Invalid JSON string"}),XA.NEVER}}),Tp=i=>XA.union([i,WR.pipe(i)]);var Py="gen_ai.input.messages",jy="gen_ai.output.messages",Vy="gen_ai.system_instructions",qy="gen_ai.tool.definitions",Wy="gen_ai.response.finish_reasons",Zy="gen_ai.usage.input_tokens",Xy="gen_ai.usage.output_tokens",N$="function",Jp="gen_ai.client.inference.operation.details",u9A=XA.object({type:XA.literal("text"),content:XA.string()}),p9A=XA.object({type:XA.literal("blob"),mime_type:XA.string(),data:XA.any()}),f9A=XA.object({type:XA.literal("file_data"),mime_type:XA.string(),uri:XA.string()}),m9A=XA.object({type:XA.literal("tool_call"),id:XA.string().nullable().optional(),name:XA.string(),arguments:XA.record(XA.string(),XA.any()).nullable().optional()}),w9A=XA.object({type:XA.literal("tool_call_response"),id:XA.string().nullable().optional(),response:XA.record(XA.string(),XA.any()).nullable().optional()}),ZR=XA.discriminatedUnion("type",[u9A,p9A,f9A,m9A,w9A]),y9A=XA.object({role:XA.string(),parts:XA.array(ZR)}),D9A=XA.object({role:XA.string(),parts:XA.array(ZR),finish_reason:XA.string()}),v9A=XA.object({type:XA.literal(N$),name:XA.string(),description:XA.string().nullable().optional(),parameters:XA.record(XA.string(),XA.any()).nullable().optional()}),b9A=XA.object({name:XA.string(),type:XA.string()}),M9A=XA.union([v9A,b9A]),S9A=Tp(XA.array(y9A)),k9A=Tp(XA.array(D9A)),_9A=Tp(XA.array(ZR)),x9A=Tp(XA.array(M9A)),XR=XA.array(XA.string()),Op=XA.number(),R9A=XA.object({[Py]:S9A.optional(),[jy]:k9A.optional(),[Vy]:_9A.optional(),[qy]:x9A.optional(),[Wy]:XR.optional(),[Zy]:Op.optional(),[Xy]:Op.optional()}).passthrough(),F$=XA.object({event_name:XA.literal(Jp),body:XA.unknown().optional(),attributes:R9A.optional()});var $y="gen_ai.system.message",AD="gen_ai.user.message",eD="gen_ai.choice",N9A=zy(XA.object({id:XA.string().nullable().optional(),name:XA.string(),args:XA.record(XA.string(),XA.any()),needsResponse:XA.boolean().nullable().optional()})),F9A=zy(XA.object({id:XA.string().nullable().optional(),name:XA.string(),response:XA.record(XA.string(),XA.any())})),G$=zy(XA.object({text:XA.string().nullable().optional(),function_call:N9A.nullable().optional(),function_response:F9A.nullable().optional()})),L9A=XA.object({parts:XA.array(G$),role:XA.string()}),L$=XA.object({content:XA.object({parts:XA.array(G$),role:XA.string().optional()}),role:XA.string().optional()}).transform(i=>{let e=P({},i.content);return i.role!==void 0&&(e.role=i.role),{content:e}}).pipe(XA.object({content:L9A})),G9A=XA.object({content:XA.string()}),K9A=XA.object({event_name:XA.enum([AD,eD]),body:XA.union([L$,WR.pipe(L$)])}),U9A=XA.object({event_name:XA.literal($y),body:G9A}),K$=XA.union([U9A,K9A]);var T9A="gcp.vertex.agent.llm_request",O9A="gcp.vertex.agent.llm_response";function tD(i){let e=J9A(i);if(e!==void 0)return e;let A=Y9A(i);if(A!==void 0)return A;let t=H9A(i);if(t!==void 0)return t}function J9A(i){let e=(i.logs??[]).find(r=>r.event_name===Jp);if(e===void 0)return;let A=e.attributes??{},t=A[Vy],n=A[Py],o=A[qy],a=A[jy];if(!(t===void 0&&n===void 0&&o===void 0&&a===void 0))return{kind:"experimental",inputs:{system_instruction:t,user_messages:n,tool_definitions:o},outputs:a}}function Y9A(i){let e=i.logs??[],A,t=[],n;for(let o of e)switch(o.event_name){case $y:A=o.body;break;case AD:t.push(o.body);break;case eD:n=o.body;break;default:break}if(!(A===void 0&&t.length===0&&n===void 0))return{kind:"stable",inputs:{system_instruction:A,user_messages:t},outputs:n}}function H9A(i){let e=i.attributes??{},A=e[T9A],t=e[O9A];if(!(A===void 0&&t===void 0))return{kind:"legacy",inputs:U$(A),outputs:U$(t)}}function U$(i){if(typeof i!="string")return i;try{return JSON.parse(i)}catch(e){return i}}var z9A=XA.union([K$,F$]);var P9A="gen_ai.operation.name",T$="gen_ai.conversation.id",j9A="gen_ai.agent.name",V9A="gen_ai.agent.description",O$="gcp.vertex.agent.invocation_id",q9A="gcp.vertex.agent.associated_event_ids",J$="gcp.vertex.agent.event_id";var AN="invoke_agent",hI="generate_content",W9A=XA.object({name:XA.string(),start_time:XA.number(),end_time:XA.number(),trace_id:XA.union([XA.string(),XA.number()]),span_id:XA.union([XA.string(),XA.number()]),parent_span_id:XA.union([XA.string(),XA.number()]).nullable().optional(),attributes:XA.record(XA.string(),Hy).optional(),logs:XA.array(z9A).optional()}),Z9A=XA.object({attrConversationId:XA.string().optional(),attrInvocationId:XA.string().optional(),attrAssociatedEventIds:XA.array(XA.string()).optional(),attrAgentName:XA.string().optional(),attrAgentDescription:XA.string().optional(),attrEventId:XA.string().optional(),attrResponseFinishReasons:XR.optional(),attrUsageInputTokens:Op.optional(),attrUsageOutputTokens:Op.optional()});function X9A(i){let e=i.attributes??{},A={attrConversationId:e[T$],attrInvocationId:e[O$],attrAssociatedEventIds:e[q9A],attrAgentName:e[j9A],attrAgentDescription:e[V9A],attrEventId:e[J$],attrResponseFinishReasons:e[Wy],attrUsageInputTokens:e[Zy],attrUsageOutputTokens:e[Xy]};for(let t of Object.keys(A))A[t]===void 0&&delete A[t];return A}var $9A=XA.object({attrConversationId:XA.string({message:`'${T$}' is required on '${AN}' spans`})}),ASA=XA.object({attrEventId:XA.string({message:`'${J$}' is required on '${hI}' spans`}),attrInvocationId:XA.string({message:`'${O$}' is required on '${hI}' spans`})});function eN(i,e){for(let A of e)i.addIssue(A)}function $R(i,e,A){let t=X9A(i),n=Z9A.safeParse(t);if(!n.success)return eN(A,n.error.issues),null;if(e===null)return n.data;let o=e.safeParse(t);return o.success?P(P({},n.data),o.data):(eN(A,o.error.issues),null)}var Y$=XA.unknown().transform((i,e)=>{let A=W9A.safeParse(i);if(!A.success)return eN(e,A.error.issues),XA.NEVER;let t=A.data,n=t.attributes?.[P9A],B=t,{logs:o,attributes:a}=B,r=Pp(B,["logs","attributes"]),s=a!==void 0?{rawAttributesUseThisFieldOnlyForDisplay:a}:{rawAttributesUseThisFieldOnlyForDisplay:{}},l={rawSpanUseThisFieldOnlyForDisplay:i};if(n===AN){let u=$R(t,$9A,e);return u===null?XA.NEVER:$A(P(P(P(P({},r),s),l),u),{attrOperationName:AN})}if(n===hI){let u=$R(t,ASA,e);if(u===null)return XA.NEVER;let E=tD({attributes:t.attributes,logs:o});return P($A(P(P(P(P({},r),s),l),u),{attrOperationName:hI}),E!==void 0?{io:E}:{})}let g=$R(t,null,e);if(g===null)return XA.NEVER;let C=tD({attributes:t.attributes,logs:o});return P(P(P(P(P({},r),s),l),g),C!==void 0?{io:C}:{})});function tN(i){if(!i)return;let e=i.system_instruction;if(e===void 0&&i.systemInstruction&&(e=i.systemInstruction),e===void 0&&i.config&&(e=i.config.system_instruction!==void 0?i.config.system_instruction:i.config.systemInstruction),typeof e=="string")return e}var eSA=["sideDrawer"],tSA=["drawerSessionTab"],iSA=["appSearchInput"],nSA=["invChipMenuTrigger"],oSA=["nodeChipMenuTrigger"],aSA=["addMenuTrigger"],rSA=[[["","adk-web-chat-container-top",""]]],sSA=["[adk-web-chat-container-top]"],z$=()=>[],lSA=(i,e)=>e.metricName;function gSA(i,e){i&1&&dn(0)}function cSA(i,e){if(i&1&&kt(0,gSA,1,0,"ng-container",40),i&2){let A=p();H("ngComponentOutlet",A.logoComponent)}}function CSA(i,e){if(i&1&&(I(0,"span",45),D(1),h()),i&2){let A=p(2);Q(),Ee(" ",A.adkVersion())}}function dSA(i,e){if(i&1&&(I(0,"div",48)(1,"div",50)(2,"span",51),D(3,"Version:"),h(),I(4,"span",52),D(5),h()(),I(6,"div",50)(7,"span",51),D(8,"Language:"),h(),I(9,"span",52),D(10),h()(),I(11,"div",50)(12,"span",51),D(13,"Lang Version:"),h(),I(14,"span",52),D(15),h()()()),i&2){let A=p(2);Q(5),nA(A.versionInfo().version),Q(5),nA(A.versionInfo().language),Q(5),nA(A.versionInfo().language_version)}}function ISA(i,e){if(i&1&&(lA(0,"img",41),I(1,"div",42)(2,"div",43)(3,"span",44),D(4,"Agent Development Kit"),h(),T(5,CSA,2,1,"span",45),h(),I(6,"div",46)(7,"div",47),D(8),h(),T(9,dSA,16,3,"div",48),h()(),I(10,"span",49),D(11,"ADK"),h()),i&2){let A=p();Q(5),O(A.adkVersion()?5:-1),Q(3),nA(A.sidePanelI18n.disclosureTooltip),Q(),O(A.versionInfo()?9:-1)}}function BSA(i,e){i&1&&(I(0,"mat-icon",20),D(1,"warning"),h())}function hSA(i,e){if(i&1){let A=aA();I(0,"span",54)(1,"button",56),U("click",function(){L(A);let n=p(2);return G(n.openAgentStructureGraphDialog())}),I(2,"mat-icon"),D(3,"account_tree"),h()()()}if(i&2){let A=p(2);H("matTooltip",A.graphsAvailable()?"View Agent Structure Graph":"Agent structure graph is not available for this agent"),Q(),H("disabled",!A.graphsAvailable())}}function ESA(i,e){if(i&1){let A=aA();lA(0,"div",53),T(1,hSA,4,2,"span",54),I(2,"span",54)(3,"button",55),U("click",function(){L(A);let n=p();return G(n.enterBuilderMode())}),I(4,"mat-icon"),D(5,"edit"),h()()()}if(i&2){let A=p();Q(),O(A.graphsAvailable()?1:-1),Q(),H("matTooltip",A.disableBuilderSwitch?"Editing is not available for this agent because it was not built by the builder":"Edit in Builder Mode"),Q(),H("disabled",A.disableBuilderSwitch)}}function QSA(i,e){if(i&1){let A=aA();I(0,"div",57)(1,"mat-icon",62),D(2,"visibility"),h(),I(3,"span",63),D(4),h(),I(5,"button",64),U("click",function(){L(A);let n=p(2);return G(n.closeReadonlySession())}),I(6,"mat-icon",65),D(7,"close"),h()()()}if(i&2){let A=p(2);Q(4),Ya("",A.readonlySessionType(),": ",A.readonlySessionName())}}function uSA(i,e){if(i&1){let A=aA();I(0,"button",69),U("click",function(){L(A);let n=p(7);return G(n.onNewSessionClick())}),I(1,"mat-icon",18),D(2,"add_comment"),h(),I(3,"span"),D(4),h()()}if(i&2){let A=p(7);H("matTooltip",A.i18n.createNewSessionTooltip),Q(4),nA(A.i18n.newSessionButton)}}function pSA(i,e){if(i&1){let A=aA();I(0,"button",70),U("click",function(){L(A);let n=p(7);return G(n.onNewSessionClick())}),I(1,"mat-icon",18),D(2,"add_comment"),h()()}if(i&2){let A=p(7);H("matTooltip",A.i18n.createNewSessionTooltip)}}function fSA(i,e){if(i&1&&(lA(0,"div",53),T(1,uSA,5,2,"button",67)(2,pSA,3,1,"button",68)),i&2){let A=p(6);Q(),O(A.uiEvents().length>0&&!A.isMobile()?1:2)}}function mSA(i,e){if(i&1&&T(0,fSA,3,1),i&2){let A=p(5);O(A.sessionId?0:-1)}}function wSA(i,e){if(i&1&&(T(0,mSA,1,1),mt(1,"async")),i&2){let A=p(4);O(Ft(1,1,A.isNewSessionButtonEnabledObs)?0:-1)}}function ySA(i,e){if(i&1&&(ro(0),mt(1,"async"),T(2,wSA,2,3)),i&2){let A=Ft(1,1,p(3).uiStateService.isSessionLoading());Q(2),O(A===!1?2:-1)}}function DSA(i,e){if(i&1){let A=aA();I(0,"div",16)(1,"button",66),U("click",function(){L(A);let n=p(2);return G(n.toggleSessionSelectorDrawer())}),I(2,"mat-icon",18),D(3,"chat"),h(),I(4,"span",19),D(5),h(),I(6,"mat-icon",21),D(7,"arrow_drop_down"),h()(),T(8,ySA,3,3),h()}if(i&2){let A=p(2);Q(5),nA(A.getToolbarSessionId()),Q(3),O(A.evalCase?-1:8)}}function vSA(i,e){if(i&1&&(I(0,"div",57)(1,"span",63),D(2),h(),I(3,"span",71),D(4),h()()),i&2){let A=p(3);Q(2),nA(A.i18n.evalCaseIdLabel),Q(2),nA(A.evalCase.evalId)}}function bSA(i,e){if(i&1){let A=aA();I(0,"button",72),U("click",function(){L(A);let n=p(3);return G(n.cancelEditEvalCase())}),D(1),h(),I(2,"button",73),U("click",function(){L(A);let n=p(3);return G(n.saveEvalCase())}),D(3),h()}if(i&2){let A=p(3);Q(),Ee(" ",A.i18n.cancelButton," "),Q(),H("disabled",!A.hasEvalCaseChanged()||A.isEvalCaseEditing()),Q(),Ee(" ",A.i18n.saveButton," ")}}function MSA(i,e){}function SSA(i,e){if(i&1&&(T(0,vSA,5,2,"div",57),I(1,"div",60),T(2,bSA,4,3)(3,MSA,0,0),h()),i&2){let A=p(2);O(A.isViewOnlySession()?-1:0),Q(2),O(A.isEvalEditMode()?2:3)}}function kSA(i,e){}function _SA(i,e){if(i&1&&(I(0,"div",74),D(1),h()),i&2){let A=p(3);Q(),nA(A.i18n.loadingSessionLabel)}}function xSA(i,e){if(i&1&&(I(0,"div",59),ro(1),mt(2,"async"),T(3,kSA,0,0)(4,_SA,2,1,"div",74),h()),i&2){let A=Ft(2,1,p(2).uiStateService.isSessionLoading());Q(3),O(A===!1?3:4)}}function RSA(i,e){if(i&1){let A=aA();I(0,"button",75),U("click",function(){L(A);let n=p(2);return G(n.themeService==null?null:n.themeService.toggleTheme())}),I(1,"mat-icon"),D(2),h()()}if(i&2){let A=p(2);H("matTooltip",(A.themeService==null?null:A.themeService.currentTheme())==="dark"?"Switch to Light Mode":"Switch to Dark Mode"),Q(2),nA((A.themeService==null?null:A.themeService.currentTheme())==="dark"?"light_mode":"dark_mode")}}function NSA(i,e){if(i&1&&(I(0,"div",22),T(1,QSA,8,2,"div",57)(2,DSA,9,2,"div",16),I(3,"div",58),T(4,SSA,4,2)(5,xSA,5,3,"div",59),h(),I(6,"div",60),ro(7),mt(8,"async"),T(9,RSA,3,2,"button",61),h()()),i&2){let A=p();Q(),O(A.isViewOnlySession()?1:2),Q(3),O(A.evalCase?4:5);let t=Ft(8,3,A.uiStateService.isSessionLoading());Q(5),O(t===!1?9:-1)}}function FSA(i,e){i&1&&(I(0,"div",85),lA(1,"mat-progress-spinner",86),h())}function LSA(i,e){i&1&&(I(0,"mat-icon",92),D(1,"check"),h())}function GSA(i,e){if(i&1){let A=aA();I(0,"button",89),U("click",function(){let n=L(A).$implicit,o=p(3);return G(o.selectAppFromDrawer(n))}),I(1,"mat-icon",90),D(2,"robot_2"),h(),I(3,"span",91),D(4),h(),T(5,LSA,2,0,"mat-icon",92),h()}if(i&2){let A=e.$implicit,t=p(3);_A("selected",A===t.appName),Q(4),nA(A),Q(),O(A===t.appName?5:-1)}}function KSA(i,e){i&1&&(I(0,"div",88),D(1,"No apps found"),h())}function USA(i,e){i&1&&ke(0,GSA,6,4,"button",87,ni,!1,KSA,2,0,"div",88),i&2&&_e(e)}function TSA(i,e){if(i&1){let A=aA();I(0,"div",76)(1,"span",77),D(2,"Select an App"),h(),I(3,"div")(4,"button",78),U("click",function(){L(A);let n=p();return G(n.openAddItemDialog())}),I(5,"mat-icon"),D(6,"add"),h()(),I(7,"button",79),U("click",function(){L(A);let n=p();return G(n.toggleAppSelectorDrawer())}),I(8,"mat-icon"),D(9,"close"),h()()()(),I(10,"div",80)(11,"mat-form-field",81)(12,"mat-icon",82),D(13,"search"),h(),I(14,"input",83,3),U("keydown",function(n){L(A);let o=p();return G(o.handleAppSearchKeydown(n))}),h()()(),I(16,"div",84),U("keydown",function(n){L(A);let o=p();return G(o.handleAppListKeydown(n))}),T(17,FSA,2,0,"div",85),mt(18,"async"),S1(19,USA,3,1),h()}if(i&2){let A,t=p();Q(14),H("formControl",t.appDrawerSearchControl),Q(3),O(t.isLoadingApps()?17:(A=Ft(18,2,t.filteredDrawerApps$))?19:-1,A)}}function OSA(i,e){if(i&1){let A=aA();I(0,"button",95),U("click",function(){L(A);let n=p(2);return G(n.importSession())}),I(1,"mat-icon"),D(2,"upload"),h(),I(3,"span"),D(4,"Import"),h()()}if(i&2){let A=p(2);H("matTooltip",A.i18n.importSessionTooltip)}}function JSA(i,e){if(i&1){let A=aA();I(0,"button",108),U("click",function(){L(A);let n=p(3);return G(n.exportSession())}),I(1,"mat-icon"),D(2,"download"),h(),I(3,"span"),D(4,"Export"),h()()}if(i&2){let A=p(3);H("matTooltip",A.i18n.exportSessionTooltip)}}function YSA(i,e){if(i&1){let A=aA();I(0,"button",109),U("click",function(){L(A);let n=p(3);return G(n.deleteSession(n.sessionId))}),I(1,"mat-icon"),D(2,"delete"),h(),I(3,"span"),D(4,"Delete"),h()()}if(i&2){let A=p(3);H("matTooltip",A.i18n.deleteSessionTooltip)}}function HSA(i,e){if(i&1){let A=aA();I(0,"div",97)(1,"span",100),D(2,"Current Session"),h(),I(3,"div",101)(4,"app-inline-edit",102),U("save",function(n){L(A);let o=p(2);return G(o.saveSessionName(n))}),h()(),I(5,"div",103)(6,"span",104),D(7),h(),I(8,"button",105),U("click",function(){L(A);let n=p(2);return G(n.copySessionId())}),I(9,"mat-icon"),D(10,"content_copy"),h()(),T(11,JSA,5,1,"button",106),mt(12,"async"),T(13,YSA,5,1,"button",107),mt(14,"async"),h()()}if(i&2){let A=p(2);Q(4),H("value",A.sessionDisplayNameDraft)("displayValue",A.getCurrentSessionDisplayName())("tooltip",A.sessionId),Q(2),H("title",A.sessionId),Q(),nA(A.sessionId),Q(4),O(Ft(12,7,A.isExportSessionEnabledObs)?11:-1),Q(2),O(Ft(14,9,A.isDeleteSessionEnabledObs)?13:-1)}}function zSA(i,e){if(i&1){let A=aA();I(0,"div",76)(1,"span",77),D(2,"Select a Session"),h(),I(3,"div",93),T(4,OSA,5,1,"button",94),mt(5,"async"),I(6,"button",95),U("click",function(){L(A);let n=p();return G(n.viewSession())}),I(7,"mat-icon"),D(8,"visibility"),h(),I(9,"span"),D(10,"View"),h()(),I(11,"button",96),U("click",function(){L(A);let n=p();return G(n.toggleSessionSelectorDrawer())}),I(12,"mat-icon"),D(13,"close"),h()()()(),T(14,HSA,15,11,"div",97),I(15,"div",98)(16,"app-session-tab",99,4),U("sessionSelected",function(n){L(A);let o=p();return G(o.onSessionSelectedFromDrawer(n))})("sessionReloaded",function(n){L(A);let o=p();return G(o.onSessionReloadedFromDrawer(n))}),h()()}if(i&2){let A=p();Q(4),O(Ft(5,6,A.importSessionEnabledObs)?4:-1),Q(2),H("matTooltip",A.i18n.viewSessionTooltip),Q(8),O(A.sessionId?14:-1),Q(2),H("userId",A.userId)("appName",A.appName)("sessionId",A.sessionId)}}function PSA(i,e){if(i&1){let A=aA();I(0,"app-side-panel",110),U("jumpToInvocation",function(n){L(A);let o=p();return G(o.handleJumpToInvocation(n))})("closePanel",function(){L(A);let n=p();return G(n.toggleSidePanel())})("tabChange",function(n){L(A);let o=p();return G(o.handleTabChange(n))})("sessionSelected",function(n){L(A);let o=p();return G(o.updateWithSelectedSession(n))})("evalCaseSelected",function(n){L(A);let o=p();return G(o.updateWithSelectedEvalCase(n))})("editEvalCaseRequested",function(n){L(A);let o=p();return G(o.handleEditEvalCaseRequested(n))})("testSelected",function(n){L(A);let o=p();return G(o.updateWithSelectedTest(n.testName,n.events))})("evalSetIdSelected",function(n){L(A);let o=p();return G(o.updateSelectedEvalSetId(n))})("returnToSession",function(n){L(A);let o=p();return G(o.handleReturnToSession(n))})("evalNotInstalled",function(n){L(A);let o=p();return G(o.handleEvalNotInstalled(n))})("page",function(n){L(A);let o=p();return G(o.handlePageEvent(n))})("closeSelectedEvent",function(){L(A);let n=p();return G(n.closeSelectedEvent())})("openImageDialog",function(n){L(A);let o=p();return G(o.openViewImageDialog(n))})("openAddItemDialog",function(){L(A);let n=p();return G(n.openAddItemDialog())})("enterBuilderMode",function(){L(A);let n=p();return G(n.enterBuilderMode())})("showAgentStructureGraph",function(){L(A);let n=p();return G(n.openAgentStructureGraphDialog("event"))})("switchToEvent",function(n){L(A);let o=p();return G(o.selectEvent(n))})("switchToTraceView",function(){L(A);let n=p();return G(n.switchToTraceView())})("drillDownNodePath",function(n){L(A);let o=p();return G(o.onEventTabDrillDown(n))})("selectEventById",function(n){L(A);let o=p();return G(o.selectEvent(n))}),h()}if(i&2){let A=p();H("isApplicationSelectorEnabledObs",A.isApplicationSelectorEnabledObs)("showSidePanel",A.showSidePanel)("appName",A.appName)("userId",A.userId)("sessionId",A.sessionId)("isViewOnlySession",A.isViewOnlySession())("isViewOnlyAppNameMismatch",A.isViewOnlyAppNameMismatch())("traceData",A.traceData)("eventData",A.eventData)("currentSessionState",A.currentSessionState)("artifacts",A.artifacts)("selectedEvent",A.selectedEvent)("selectedEventIndex",A.selectedEventIndex)("renderedEventGraph",A.renderedEventGraph)("rawSvgString",A.rawSvgString)("selectedEventGraphPath",A.selectedEventGraphPath)("llmRequest",A.llmRequest)("llmResponse",A.llmResponse)("disableBuilderIcon",A.disableBuilderSwitch)("hasSubWorkflows",A.hasSubWorkflows)("graphsAvailable",A.graphsAvailable())("invocationDisplayMap",A.invocationDisplayMap())("forceGraphTab",A.autoSelectLatestEvent)}}function jSA(i,e){if(i&1){let A=aA();I(0,"app-builder-tabs",111),U("exitBuilderMode",function(){L(A);let n=p();return G(n.exitBuilderMode())})("closePanel",function(){L(A);let n=p();return G(n.toggleSidePanel())}),h(),lA(1,"div",112)}if(i&2){let A=p();H("appNameInput",A.appName)}}function VSA(i,e){if(i&1){let A=aA();I(0,"div",37)(1,"div",113)(2,"button",114),U("click",function(){L(A);let n=p();return G(n.saveAgentBuilder())}),I(3,"mat-icon"),D(4,"check"),h()(),I(5,"button",115),U("click",function(){L(A);let n=p();return G(n.exitBuilderMode())}),I(6,"mat-icon"),D(7,"close"),h()(),I(8,"button",116),U("click",function(){L(A);let n=p();return G(n.toggleBuilderAssistant())}),I(9,"mat-icon"),D(10,"assistant"),h()()(),I(11,"app-canvas",117),U("toggleSidePanelRequest",function(){L(A);let n=p();return G(n.toggleSidePanel())})("builderAssistantCloseRequest",function(){L(A);let n=p();return G(n.toggleBuilderAssistant())}),h()()}if(i&2){let A=p();Q(8),_A("active",A.showBuilderAssistant),Q(3),H("showSidePanel",A.showSidePanel)("showBuilderAssistant",A.showBuilderAssistant)("appNameInput",A.appName)}}function qSA(i,e){if(i&1&&(I(0,"div",119)(1,"span"),D(2),h()()),i&2){let A=p(3);Q(2),nA(A.i18n.loadingAgentsLabel)}}function WSA(i,e){if(i&1&&(I(0,"span"),D(1),lA(2,"br"),D(3),h()),i&2){let A=p(4);Q(),nA(A.i18n.welcomeMessage),Q(2),Ee(" ",A.i18n.selectAgentMessage)}}function ZSA(i,e){if(i&1&&(D(0),lA(1,"br"),I(2,"pre",121),D(3),h()),i&2){let A=p(5);Ee(" ",A.i18n.errorMessageLabel," "),Q(3),nA(A.loadingError())}}function XSA(i,e){if(i&1&&(I(0,"pre",120),D(1),h()),i&2){let A=p(5);Q(),nA(A.i18n.noAgentsFoundWarning)}}function $SA(i,e){if(i&1&&(I(0,"div"),D(1),I(2,"pre"),D(3,"adk web"),h(),D(4," in the folder that contains the agents."),lA(5,"br"),T(6,ZSA,4,2)(7,XSA,2,1,"pre",120),h()),i&2){let A=p(4);Q(),Ee(" ",A.i18n.failedToLoadAgentsMessage," "),Q(5),O(A.loadingError()?6:7)}}function AkA(i,e){if(i&1&&(I(0,"div",119),T(1,WSA,4,2,"span"),mt(2,"async"),S1(3,$SA,8,2,"div"),h()),i&2){let A=p(3);Q(),O((Ft(2,1,A.apps$)||Lc(3,z$)).length>0?1:3)}}function ekA(i,e){if(i&1&&(T(0,qSA,3,1,"div",119),mt(1,"async"),S1(2,AkA,4,4,"div",119)),i&2){let A=p(2);O(A.isLoadingApps()?0:Ft(1,1,A.isApplicationSelectorEnabledObs)?2:-1)}}function tkA(i,e){if(i&1){let A=aA();I(0,"div",145,8),U("click",function(n){return n.stopPropagation()}),I(2,"span",146),D(3),h(),I(4,"button",147),U("click",function(n){L(A);let o=p(4);return G(o.removeInvocationIdFilter(n))}),I(5,"mat-icon"),D(6,"close"),h()()()}if(i&2){p();let A=Bi(17),t=p(3);H("matMenuTriggerFor",A)("matTooltip",t.invocationIdFilter()?"Invocation: "+(t.invocationDisplayMap().get(t.invocationIdFilter())||t.invocationIdFilter()):"Filter events by a specific invocation"),Q(2),H("title",t.invocationIdFilter()?t.invocationDisplayMap().get(t.invocationIdFilter())||t.invocationIdFilter():"Invocation"),Q(),nA(t.invocationIdFilter()?t.invocationDisplayMap().get(t.invocationIdFilter())||t.invocationIdFilter():"Invocation")}}function ikA(i,e){if(i&1){let A=aA();I(0,"div",145,9),U("click",function(n){return n.stopPropagation()}),I(2,"span",63),D(3,"Node"),h(),I(4,"button",147),U("click",function(n){L(A);let o=p(4);return G(o.removeNodePathFilter(n))}),I(5,"mat-icon"),D(6,"close"),h()()()}if(i&2){p();let A=Bi(21),t=p(3);H("matMenuTriggerFor",A)("matTooltip",t.nodePathFilter()?"Node: "+t.nodePathFilter():"Filter events generated by a specific node")}}function nkA(i,e){if(i&1){let A=aA();I(0,"div",148),U("click",function(n){return n.stopPropagation()}),I(1,"span",63),D(2,"Final"),h(),I(3,"button",147),U("click",function(n){return L(A),p(4).toggleHideIntermediateEvents(),G(n.stopPropagation())}),I(4,"mat-icon"),D(5,"close"),h()()()}}function okA(i,e){if(i&1&&(I(0,"button",149,10),U("click",function(t){return t.stopPropagation()}),I(2,"mat-icon"),D(3,"add"),h(),I(4,"span"),D(5,"Filter"),h()()),i&2){p();let A=Bi(12);H("matMenuTriggerFor",A)}}function akA(i,e){if(i&1){let A=aA();I(0,"button",150),U("click",function(n){L(A);let o=p(4);return G(o.clearAllFilters(n))}),I(1,"mat-icon"),D(2,"clear_all"),h(),I(3,"span"),D(4,"Clear"),h()()}}function rkA(i,e){if(i&1){let A=aA();I(0,"button",151),U("click",function(){L(A);let n=p(4);return G(n.addInvocationIdFilter())}),D(1,"Invocation"),h()}}function skA(i,e){if(i&1){let A=aA();I(0,"button",152),U("click",function(){L(A);let n=p(4);return G(n.addNodePathFilter())}),D(1,"Node"),h()}}function lkA(i,e){if(i&1){let A=aA();I(0,"button",153),U("click",function(){L(A);let n=p(4);return G(n.toggleHideIntermediateEvents())}),D(1,"Final"),h()}}function gkA(i,e){if(i&1){let A=aA();I(0,"button",154),U("click",function(){let n=L(A).$implicit,o=p(4);return G(o.setInvocationIdFilter(n))}),I(1,"mat-icon",155),D(2,"check"),h(),D(3),h()}if(i&2){let A=e.$implicit,t=p(4);H("matTooltip",A),Q(),ft("visibility",t.invocationIdFilter()===A?"visible":"hidden"),Q(2),Ee(" ",t.invocationDisplayMap().get(A)||A," ")}}function ckA(i,e){if(i&1){let A=aA();I(0,"button",156),U("click",function(){let n=L(A).$implicit,o=p(4);return G(o.setNodePathFilter(n))}),I(1,"mat-icon",155),D(2,"check"),h(),D(3),h()}if(i&2){let A=e.$implicit,t=p(4);Q(),ft("visibility",t.nodePathFilter()===A?"visible":"hidden"),Q(2),Ee(" ",A," ")}}function CkA(i,e){if(i&1){let A=aA();I(0,"mat-button-toggle-group",130),U("change",function(n){L(A);let o=p(3);return G(o.onViewModeChange(n.value))}),I(1,"mat-button-toggle",131),D(2,"Events"),h(),I(3,"mat-button-toggle",132),D(4,"Traces"),h()(),I(5,"div",133),U("click",function(n){L(A);let o=p(3);return G(o.openAddFilterMenu(n))}),T(6,tkA,7,4,"div",134),T(7,ikA,7,2,"div",134),T(8,nkA,6,0,"div",135),T(9,okA,6,1,"button",136),T(10,akA,5,0,"button",137),h(),I(11,"mat-menu",138,5),T(13,rkA,2,0,"button",139),T(14,skA,2,0,"button",140),T(15,lkA,2,0,"button",141),h(),I(16,"mat-menu",142,6),U("closed",function(){L(A);let n=p(3);return G(n.onInvocationMenuClosed())}),ke(18,gkA,4,4,"button",143,ni),h(),I(20,"mat-menu",142,7),U("closed",function(){L(A);let n=p(3);return G(n.onNodePathMenuClosed())}),ke(22,ckA,4,3,"button",144,ni),h()}if(i&2){let A=p(3);H("value",A.viewMode()),Q(6),O(A.invocationIdFilterActive()?6:-1),Q(),O(A.nodePathFilterActive()?7:-1),Q(),O(A.hideIntermediateEvents()?8:-1),Q(),O(!A.invocationIdFilterActive()||!A.nodePathFilterActive()||!A.hideIntermediateEvents()?9:-1),Q(),O(A.invocationIdFilterActive()||A.nodePathFilterActive()||A.hideIntermediateEvents()?10:-1),Q(3),O(A.invocationIdFilterActive()?-1:13),Q(),O(A.nodePathFilterActive()?-1:14),Q(),O(A.hideIntermediateEvents()?-1:15),Q(3),_e(A.invocationIdOptions()),Q(4),_e(A.nodePathOptions())}}function dkA(i,e){i&1&&(I(0,"span",123),D(1,"README.md"),h())}function IkA(i,e){if(i&1){let A=aA();I(0,"button",157),U("click",function(){L(A);let n=p(3);return G(n.isSideBySide.set(!n.isSideBySide()))}),I(1,"mat-icon",158),D(2),h(),I(3,"span",159),D(4,"Compare"),h()()}if(i&2){let A=p(3);ft("color",A.isSideBySide()?"var(--mat-sys-primary)":"var(--mat-sys-on-surface-variant)"),Q(2),nA(A.isSideBySide()?"check_circle":"radio_button_unchecked")}}function BkA(i,e){if(i&1){let A=aA();I(0,"button",156),U("click",function(n){L(A);let o=p(4);return o.showBranches.set(!o.showBranches()),G(n.stopPropagation())}),I(1,"mat-icon",162),D(2),h(),I(3,"span",163),D(4,"Branches"),h()()}if(i&2){let A=p(4);Q(),ft("color",A.showBranches()?"var(--mat-sys-primary)":"var(--mat-sys-on-surface-variant)"),Q(),Ee(" ",A.showBranches()?"check_box":"check_box_outline_blank"," ")}}function hkA(i,e){if(i&1){let A=aA();I(0,"button",156),U("click",function(n){return L(A),p(4).toggleSse(),G(n.stopPropagation())}),I(1,"mat-icon",162),D(2),h(),I(3,"span",163),D(4,"Streaming"),h()()}if(i&2){let A=p(4);Q(),ft("color",A.useSse()?"var(--mat-sys-primary)":"var(--mat-sys-on-surface-variant)"),Q(),Ee(" ",A.useSse()?"check_box":"check_box_outline_blank"," ")}}function EkA(i,e){if(i&1&&(I(0,"button",160)(1,"mat-icon"),D(2,"more_vert"),h()(),I(3,"mat-menu",161,11),T(5,BkA,5,3,"button",144),T(6,hkA,5,3,"button",144),h()),i&2){let A=Bi(4);p();let t=Ki(10),n=Ki(11),o=p(2);H("matMenuTriggerFor",A)("matTooltip",o.i18n.moreOptionsTooltip),Q(5),O(t?5:-1),Q(),O(n?6:-1)}}function QkA(i,e){if(i&1){let A=aA();I(0,"app-chat-panel",164),mt(1,"async"),Ni("userInputChange",function(n){L(A);let o=p(3);return wi(o.userInput,n)||(o.userInput=n),G(n)}),U("toggleHideIntermediateEvents",function(){L(A);let n=p(3);return G(n.toggleHideIntermediateEvents())})("toggleSse",function(){L(A);let n=p(3);return G(n.toggleSse())})("clickEvent",function(n){L(A);let o=p(3);return G(o.clickEvent(n))})("handleKeydown",function(n){L(A);let o=p(3);return G(o.handleKeydown(n.event,n.message))})("cancelEditMessage",function(n){L(A);let o=p(3);return G(o.cancelEditMessage(n))})("saveEditMessage",function(n){L(A);let o=p(3);return G(o.saveEditMessage(n))})("openViewImageDialog",function(n){L(A);let o=p(3);return G(o.openViewImageDialog(n))})("openBase64InNewTab",function(n){L(A);let o=p(3);return G(o.openBase64InNewTab(n.data,n.mimeType))})("fileSelect",function(n){L(A);let o=p(3);return G(o.onFileSelect(n))})("removeFile",function(n){L(A);let o=p(3);return G(o.removeFile(n))})("removeStateUpdate",function(){L(A);let n=p(3);return G(n.removeStateUpdate())})("sendMessage",function(n){L(A);let o=p(3);return G(o.handleChatInput(n))})("stopMessage",function(){L(A);let n=p(3);return G(n.handleStopMessage())})("updateState",function(){L(A);let n=p(3);return G(n.updateState())})("toggleAudioRecording",function(n){L(A);let o=p(3);return G(o.toggleAudioRecording(n))})("toggleVideoRecording",function(){L(A);let n=p(3);return G(n.toggleVideoRecording())})("longRunningResponseComplete",function(n){L(A);let o=p(3);return G(o.sendMessage(n))})("manualScroll",function(){L(A);let n=p(3);return G(n.onManualScroll())}),h()}if(i&2){let A=p(3);H("appName",A.appName)("agentReadme",A.agentReadme),Ri("userInput",A.userInput),H("hideIntermediateEvents",A.hideIntermediateEvents())("uiEvents",A.filteredUiEvents())("showBranches",A.showBranches())("traceData",A.traceData)("isTokenStreamingEnabled",Ft(1,23,A.isTokenStreamingEnabledObs)??!1)("useSse",A.useSse())("isChatMode",!0)("selectedFiles",A.selectedFiles)("updatedSessionState",A.updatedSessionState())("agentGraphData",A.agentGraphData())("selectedMessageIndex",A.selectedMessageIndex)("isAudioRecording",A.isAudioRecording)("micVolume",A.micVolume())("isVideoRecording",A.isVideoRecording)("userId",A.userId)("sessionId",A.sessionId)("sessionName",A.sessionId)("invocationDisplayMap",A.invocationDisplayMap())("viewMode",A.viewMode())("shouldShowEvent",A.shouldShowEventFn)}}function ukA(i,e){if(i&1){let A=aA();I(0,"app-chat-panel",165),mt(1,"async"),Ni("userInputChange",function(n){L(A);let o=p(3);return wi(o.userInput,n)||(o.userInput=n),G(n)})("userEditEvalCaseMessageChange",function(n){L(A);let o=p(3);return wi(o.userEditEvalCaseMessage,n)||(o.userEditEvalCaseMessage=n),G(n)}),U("clickEvent",function(n){L(A);let o=p(3);return G(o.clickEvent(n))})("handleKeydown",function(n){L(A);let o=p(3);return G(o.handleKeydown(n.event,n.message))})("cancelEditMessage",function(n){L(A);let o=p(3);return G(o.cancelEditMessage(n))})("saveEditMessage",function(n){L(A);let o=p(3);return G(o.saveEditMessage(n))})("openViewImageDialog",function(n){L(A);let o=p(3);return G(o.openViewImageDialog(n))})("openBase64InNewTab",function(n){L(A);let o=p(3);return G(o.openBase64InNewTab(n.data,n.mimeType))})("editEvalCaseMessage",function(n){L(A);let o=p(3);return G(o.editEvalCaseMessage(n))})("deleteEvalCaseMessage",function(n){L(A);let o=p(3);return G(o.deleteEvalCaseMessage(n.message,n.index))})("editFunctionArgs",function(n){L(A);let o=p(3);return G(o.editFunctionArgs(n))}),h()}if(i&2){let A=p(3);H("appName",A.appName)("agentReadme",A.agentReadme)("hideIntermediateEvents",A.hideIntermediateEvents())("uiEvents",A.filteredUiEvents())("showBranches",A.showBranches())("isChatMode",!1)("evalCase",A.evalCase)("isEvalEditMode",A.isEvalEditMode())("isEvalCaseEditing",A.isEvalCaseEditing())("isEditFunctionArgsEnabled",Ft(1,20,A.isEditFunctionArgsEnabledObs)??!1),Ri("userInput",A.userInput)("userEditEvalCaseMessage",A.userEditEvalCaseMessage),H("agentGraphData",A.agentGraphData())("selectedMessageIndex",A.selectedMessageIndex)("userId",A.userId)("sessionId",A.sessionId)("sessionName",A.sessionId)("invocationDisplayMap",A.invocationDisplayMap())("viewMode",A.viewMode())("shouldShowEvent",A.shouldShowEventFn)}}function pkA(i,e){if(i&1&&(I(0,"div",179),D(1),h()),i&2){p();let A=Ki(40);Q(),Ee(" ",A)}}function fkA(i,e){if(i&1&&(I(0,"div",171)(1,"span",172),D(2),mt(3,"formatMetricName"),h(),I(4,"div",173)(5,"span",174),D(6),mt(7,"number"),h(),I(8,"span",175),D(9),mt(10,"number"),h()(),I(11,"div",176)(12,"div",177),D(13),mt(14,"formatMetricName"),h(),I(15,"div",178),D(16),h(),I(17,"div",48)(18,"div",50)(19,"span",51),D(20,"Actual:"),h(),I(21,"span",52),D(22),mt(23,"number"),h()(),I(24,"div",50)(25,"span",51),D(26,"Threshold:"),h(),I(27,"span",52),D(28),mt(29,"number"),h()(),I(30,"div",50)(31,"span",51),D(32,"Min:"),h(),I(33,"span",52),D(34),h()(),I(35,"div",50)(36,"span",51),D(37,"Max:"),h(),I(38,"span",52),D(39),h()()(),ro(40),T(41,pkA,2,1,"div",179),h()()),i&2){let A=e.$implicit,t=p(6);ft("border",A.evalStatus==1?"1px solid #2e7d32":"1px solid var(--mat-sys-error)"),Q(2),nA(Ft(3,16,A.metricName)),Q(3),ft("color",A.evalStatus==1?"#2e7d32":"var(--mat-sys-error)"),Q(),Ee(" ",A.score!=null?G0(7,18,A.score,"1.2-2"):"?"," "),Q(3),Ee(" / ",G0(10,21,A.threshold,"1.2-2")," "),Q(4),nA(Ft(14,24,A.metricName)),Q(3),nA(A.metricName),Q(5),ft("color",A.evalStatus==1?"#2e7d32":"var(--mat-sys-error)"),Q(),nA(A.score!=null?G0(23,26,A.score,"1.2-2"):"?"),Q(6),nA(G0(29,29,A.threshold,"1.2-2")),Q(6),nA(t.getMetricMin(A.metricName)),Q(5),nA(t.getMetricMax(A.metricName)),Q();let n=so(t.getMetricDescription(A.metricName));Q(),O(n?41:-1)}}function mkA(i,e){if(i&1&&(I(0,"div",169),ke(1,fkA,42,33,"div",170,lSA),h()),i&2){p();let A=Ki(0);Q(),_e(A.overallEvalMetricResults)}}function wkA(i,e){if(i&1&&(ro(0),I(1,"div",166),T(2,mkA,3,0,"div",169),h()),i&2){let A=so(p(4).evalCaseResult());Q(2),O(A.overallEvalMetricResults!=null&&A.overallEvalMetricResults.length?2:-1)}}function ykA(i,e){if(i&1){let A=aA();I(0,"div",167)(1,"div",180)(2,"div",181),D(3,"Expected"),h(),I(4,"app-chat-panel",182),U("manualScroll",function(){L(A);let n=p(4);return G(n.onManualScroll())}),h()(),I(5,"div",180)(6,"div",181),D(7,"Actual"),h(),I(8,"app-chat-panel",183),mt(9,"async"),mt(10,"async"),U("toggleHideIntermediateEvents",function(){L(A);let n=p(4);return G(n.toggleHideIntermediateEvents())})("toggleSse",function(){L(A);let n=p(4);return G(n.toggleSse())}),Ni("userInputChange",function(n){L(A);let o=p(4);return wi(o.userInput,n)||(o.userInput=n),G(n)})("userEditEvalCaseMessageChange",function(n){L(A);let o=p(4);return wi(o.userEditEvalCaseMessage,n)||(o.userEditEvalCaseMessage=n),G(n)}),U("clickEvent",function(n){L(A);let o=p(4);return G(o.clickEvent(n))})("handleKeydown",function(n){L(A);let o=p(4);return G(o.handleKeydown(n.event,n.message))})("cancelEditMessage",function(n){L(A);let o=p(4);return G(o.cancelEditMessage(n))})("saveEditMessage",function(n){L(A);let o=p(4);return G(o.saveEditMessage(n))})("openViewImageDialog",function(n){L(A);let o=p(4);return G(o.openViewImageDialog(n))})("openBase64InNewTab",function(n){L(A);let o=p(4);return G(o.openBase64InNewTab(n.data,n.mimeType))})("editEvalCaseMessage",function(n){L(A);let o=p(4);return G(o.editEvalCaseMessage(n))})("deleteEvalCaseMessage",function(n){L(A);let o=p(4);return G(o.deleteEvalCaseMessage(n.message,n.index))})("editFunctionArgs",function(n){L(A);let o=p(4);return G(o.editFunctionArgs(n))})("fileSelect",function(n){L(A);let o=p(4);return G(o.onFileSelect(n))})("removeFile",function(n){L(A);let o=p(4);return G(o.removeFile(n))})("removeStateUpdate",function(){L(A);let n=p(4);return G(n.removeStateUpdate())})("sendMessage",function(n){L(A);let o=p(4);return G(o.handleChatInput(n))})("updateState",function(){L(A);let n=p(4);return G(n.updateState())})("toggleAudioRecording",function(n){L(A);let o=p(4);return G(o.toggleAudioRecording(n))})("toggleVideoRecording",function(){L(A);let n=p(4);return G(n.toggleVideoRecording())})("longRunningResponseComplete",function(n){L(A);let o=p(4);return G(o.sendMessage(n))})("manualScroll",function(){L(A);let n=p(4);return G(n.onManualScroll())}),h()()()}if(i&2){let A=p(4);Q(4),H("appName",A.appName)("agentReadme",A.agentReadme)("hideIntermediateEvents",A.hideIntermediateEvents())("uiEvents",A.filteredExpectedUiEvents())("showBranches",A.showBranches())("isChatMode",!1)("evalCase",A.evalCase)("isEvalEditMode",!1)("isEvalCaseEditing",!1)("isEditFunctionArgsEnabled",!1)("userInput","")("selectedFiles",Lc(56,z$))("updatedSessionState",null)("agentGraphData",A.agentGraphData())("selectedMessageIndex",-1)("isAudioRecording",!1)("micVolume",0)("isVideoRecording",!1)("userId",A.userId)("sessionId",A.sessionId)("sessionName",A.sessionId)("invocationDisplayMap",A.invocationDisplayMap())("viewMode",A.viewMode())("shouldShowEvent",A.shouldShowEventFn),Q(4),H("appName",A.appName)("agentReadme",A.agentReadme)("hideIntermediateEvents",A.hideIntermediateEvents())("uiEvents",A.filteredUiEvents())("showBranches",A.showBranches())("traceData",A.traceData)("isTokenStreamingEnabled",Ft(9,52,A.isTokenStreamingEnabledObs)??!1)("useSse",A.useSse())("isChatMode",!1)("evalCase",A.evalCase)("isEvalEditMode",A.isEvalEditMode())("isEvalCaseEditing",A.isEvalCaseEditing())("isEditFunctionArgsEnabled",Ft(10,54,A.isEditFunctionArgsEnabledObs)??!1),Ri("userInput",A.userInput)("userEditEvalCaseMessage",A.userEditEvalCaseMessage),H("selectedFiles",A.selectedFiles)("updatedSessionState",A.updatedSessionState())("agentGraphData",A.agentGraphData())("selectedMessageIndex",A.selectedMessageIndex)("isAudioRecording",A.isAudioRecording)("micVolume",A.micVolume())("isVideoRecording",A.isVideoRecording)("userId",A.userId)("sessionId",A.sessionId)("sessionName",A.sessionId)("invocationDisplayMap",A.invocationDisplayMap())("viewMode",A.viewMode())("shouldShowEvent",A.shouldShowEventFn)}}function DkA(i,e){if(i&1){let A=aA();I(0,"app-chat-panel",184),U("manualScroll",function(){L(A);let n=p(4);return G(n.onManualScroll())}),h()}if(i&2){let A=p(4);H("appName",A.appName)("agentReadme",A.agentReadme)("hideIntermediateEvents",A.hideIntermediateEvents())("uiEvents",A.filteredUiEvents())("showBranches",A.showBranches())("traceData",A.traceData)("isChatMode",!1)("evalCase",A.evalCase)("agentGraphData",A.agentGraphData())("selectedMessageIndex",A.selectedMessageIndex)("userId",A.userId)("sessionId",A.sessionId)("sessionName",A.sessionId)("invocationDisplayMap",A.invocationDisplayMap())("viewMode",A.viewMode())("shouldShowEvent",A.shouldShowEventFn)}}function vkA(i,e){if(i&1&&(T(0,wkA,3,2,"div",166),T(1,ykA,11,57,"div",167)(2,DkA,1,16,"app-chat-panel",168)),i&2){let A=p(3);O(A.evalCaseResult()?0:-1),Q(),O(A.isSideBySide()?1:2)}}function bkA(i,e){i&1&&(I(0,"div",129)(1,"mat-icon",185),D(2,"insert_drive_file"),h(),I(3,"h3",186),D(4,"File View"),h(),I(5,"p",187),D(6,"File content lost on refresh. Please re-upload the file to view or use it."),h()())}function MkA(i,e){if(i&1){let A=aA();I(0,"div",122),T(1,CkA,24,9)(2,dkA,2,0,"span",123),lA(3,"div",124),I(4,"button",125),mt(5,"async"),U("click",function(){L(A);let n=p(2);return G(n.refreshLatestSession())}),I(6,"mat-icon",18),mt(7,"async"),D(8,"refresh"),h()(),T(9,IkA,5,3,"button",126),ro(10)(11),mt(12,"async"),T(13,EkA,7,4),h(),T(14,QkA,2,25,"app-chat-panel",127)(15,ukA,2,22,"app-chat-panel",128)(16,vkA,3,2)(17,bkA,7,0,"div",129)}if(i&2){let A,t=p(2);Q(),O(t.uiEvents().length===0&&t.agentReadme?2:1),Q(3),H("matTooltip",t.i18n.retrieveLatestSessionTooltip)("disabled",Ft(5,8,t.uiStateService.isSessionLoading())===!0),Q(2),_A("spinning",Ft(7,10,t.uiStateService.isSessionLoading())),Q(3),O(t.chatType()==="eval-result"?9:-1),Q();let n=so(t.viewMode()!=="traces");Q();let o=so(Ft(12,13,t.isTokenStreamingEnabledObs)&&t.canEditSession());Q(2),O(n||o?13:-1),Q(),O((A=t.chatType())==="session"?14:A==="eval-case"?15:A==="eval-result"?16:A==="file"?17:-1)}}function SkA(i,e){if(i&1&&(I(0,"div",38),Ze(1),I(2,"mat-card",118),T(3,ekA,3,3),T(4,MkA,18,16),h()()),i&2){let A=p();Q(2),_A("no-side-panel",!A.showSidePanel),Q(),O(A.selectedAppControl.value?-1:3),Q(),O(A.appName!=""?4:-1)}}function kkA(i,e){if(i&1){let A=aA();I(0,"app-agent-structure-graph-dialog",188),U("close",function(){L(A);let n=p();return G(n.showAgentStructureOverlay=!1)}),h()}if(i&2){let A=p();H("appName",A.appName)("preloadedAppData",A.agentGraphData())("preloadedLightGraphSvg",A.agentStructureOverlayMode==="event"?A.eventGraphSvgLight:A.sessionGraphSvgLight)("preloadedDarkGraphSvg",A.agentStructureOverlayMode==="event"?A.eventGraphSvgDark:A.sessionGraphSvgDark)("startPath",A.agentStructureOverlayMode==="event"?A.selectedEventGraphPath:"")}}var _kA="root_agent",iD="q",xkA="hideSidePanel",iN="",nN="",H$="application/json+a2ui";function oN(i){for(i=i.replace(/-/g,"+").replace(/_/g,"/");i.length%4!==0;)i+="=";return i}var aN=class i extends rd{nextPageLabel="Next Event";previousPageLabel="Previous Event";firstPageLabel="First Event";lastPageLabel="Last Event";getRangeLabel=(e,A,t)=>t===0?`Event 0 of ${t}`:(t=Math.max(t,0),`Event ${e*A+1} of ${t}`);static \u0275fac=(()=>{let e;return function(t){return(e||(e=Li(i)))(t||i)}})();static \u0275prov=jA({token:i,factory:i.\u0275fac})},RkA="Restarting bidirectional streaming is not currently supported. Please refresh the page or start a new session.",nD=class i{i18n=w(h$);sidePanelI18n=w(_E);_snackbarService=w(Xc);activatedRoute=w($s);agentService=w(el);artifactService=w(EB);changeDetectorRef=w(Mt);dialog=w(Xa);document=w(ci);downloadService=w(QB);evalService=w(A0);eventService=w(fm);featureFlagService=w(Nr);graphService=w(uB);localFileService=w(mm);location=w(vm);renderer=w(on);router=w(Is);safeValuesService=w(Qs);testsService=w(c2);sessionService=w(tl);streamChatService=w(ym);webSocketService=w(mB);audioRecordingService=w(pB);audioPlayingService=w(fB);stringToColorService=w(g2);traceService=w(ng);uiStateService=w(ag);agentBuilderService=w($c);themeService=w(og,{optional:!0});logoComponent=w(wB,{optional:!0});activeSseSubscription;chatPanel=Yo(h1);canvasComponent=Yo.required(QE);sideDrawer=Yo.required("sideDrawer");sidePanel=Yo.required(xE);drawerSessionTab=Yo("drawerSessionTab");evalTab=Yo(Sc);appSearchInput=Yo("appSearchInput");canChat=ye(()=>this.chatType()==="session");isEvalCaseEditing=mA(!1);hasEvalCaseChanged=mA(!1);isEvalEditMode=mA(!1);isBuilderMode=mA(!1);chatType=mA("session");currentEvalCaseId=null;currentEvalTimestamp=null;videoElement;currentMessage="";uiEvents=mA([]);invocationDisplayMap=ye(()=>{let e=new Map,A=1,t="";for(let n of this.uiEvents()){if(n.role==="user")if(n.text)t=n.text;else if(n.event?.content?.parts?.length){let o=n.event.content.parts.find(a=>a.text);o&&o.text&&(t=o.text)}else t="User Message";if(n.event?.invocationId){let o=n.event.invocationId;if(!e.has(o)){let a=t||"User Message";a.length>50&&(a=a.substring(0,47)+"..."),e.set(o,`#${A} (${a})`),A++}}}return e});artifacts=[];userInput="";userEditEvalCaseMessage="";userId="user";appName="";sessionId="";sessionIdOfLoadedMessages="";evalCase=null;evalCaseResult=mA(null);metricsInfo=this.evalService.metricsInfo;updatedEvalCase=null;adkVersion=mA("");versionInfo=mA(null);evalSetId="";isAudioRecording=!1;micVolume=this.audioRecordingService.volumeLevel;isVideoRecording=!1;longRunningEvents=[];functionCallEventId="";redirectUri=Rr.getBaseUrlWithoutPath();isMobile=mA(window.innerWidth<=768);showSidePanel=window.localStorage.getItem("adk-side-panel-visible")!=="false";showBuilderAssistant=!0;showAppSelectorDrawer=!1;showSessionSelectorDrawer=!1;useSse=mA(window.localStorage.getItem("adk-use-sse")==="true");currentSessionState={};root_agent=_kA;updatedSessionState=mA(null);canEditSession=mA(!0);isViewOnlySession=mA(!1);isViewOnlyAppNameMismatch=mA(!1);isLoadedAppUnavailable=mA(!1);unavailableAppName=mA("");readonlySessionType=mA("");readonlySessionName=mA("");isSideBySide=mA(!1);showBranches=mA(!1);expectedUiEvents=mA([]);viewMode=mA(window.localStorage.getItem("chat-view-mode")||"events");invocationIdFilterActive=mA(!1);nodePathFilterActive=mA(!1);invocationIdFilter=mA("");nodePathFilter=mA("");invocationIdOptions=ye(()=>{let e=new Set;for(let A of this.uiEvents())A.event?.invocationId&&e.add(A.event.invocationId);return Array.from(e)});nodePathOptions=ye(()=>{let e=new Set;for(let A of this.uiEvents()){let t=A.bareNodePath;t&&e.add(t)}return Array.from(e)});invChipMenuTrigger=Yo("invChipMenuTrigger");nodeChipMenuTrigger=Yo("nodeChipMenuTrigger");addMenuTrigger=Yo("addMenuTrigger");openAddFilterMenu(e){e.stopPropagation(),this.addMenuTrigger()?.openMenu()}addInvocationIdFilter(){this.invocationIdFilterActive.set(!0),setTimeout(()=>{this.invChipMenuTrigger()?.openMenu()})}addNodePathFilter(){this.nodePathFilterActive.set(!0),setTimeout(()=>{this.nodeChipMenuTrigger()?.openMenu()})}removeInvocationIdFilter(e){e.stopPropagation(),this.invocationIdFilterActive.set(!1),this.invocationIdFilter.set("")}removeNodePathFilter(e){e.stopPropagation(),this.nodePathFilterActive.set(!1),this.nodePathFilter.set("")}setInvocationIdFilter(e){this.invocationIdFilter.set(e)}setNodePathFilter(e){this.nodePathFilter.set(e)}onInvocationMenuClosed(){this.invocationIdFilter()||this.invocationIdFilterActive.set(!1)}onNodePathMenuClosed(){this.nodePathFilter()||this.nodePathFilterActive.set(!1)}clearAllFilters(e){e.stopPropagation(),this.invocationIdFilterActive()&&(this.invocationIdFilterActive.set(!1),this.invocationIdFilter.set("")),this.nodePathFilterActive()&&(this.nodePathFilterActive.set(!1),this.nodePathFilter.set("")),this.hideIntermediateEvents()&&this.toggleHideIntermediateEvents()}shouldShowEvent(e){let A=this.invocationIdFilter();if(A&&!(e.event?.invocationId||"").includes(A))return!1;let t=this.nodePathFilter();if(t&&!(e.bareNodePath||"").includes(t))return!1;if(!this.hideIntermediateEvents()||e.role==="user")return!0;if(e.event?.content!==void 0){let n=e.event.content.parts||[];if(n.length>0&&n.every(a=>a.functionCall||a.functionResponse)){if(n.some(r=>{let s=r.functionCall?.id||r.functionResponse?.id;return s&&e.event?.longRunningToolIds?.includes(s)}))return!0}else return!0}if(e.event?.output!==void 0){let n=e.event?.nodeInfo,o=!1,a=n?.outputFor;if(Array.isArray(a)?o=a.some(r=>!r.includes("/")):typeof a=="string"?o=!a.includes("/"):n?.path&&(o=!n.path.includes("/")),o)return!0}return!1}shouldShowEventFn=this.shouldShowEvent.bind(this);getMetricTooltip(e,A,t){let n=this.metricsInfo().find(g=>g.metricName===e),o=n?.description||"",a=n?.metricValueInfo?.interval?.minValue??"?",r=n?.metricValueInfo?.interval?.maxValue??"?",s=A!=null?parseFloat(A).toFixed(2):"?",l=t!=null?parseFloat(t).toFixed(2):"?";return`${o?o+" | ":""}Actual: ${s} | Threshold: ${l} | Min: ${a} | Max: ${r}`}getMetricDescription(e){return this.metricsInfo().find(t=>t.metricName===e)?.description||""}getMetricMin(e){let t=this.metricsInfo().find(n=>n.metricName===e)?.metricValueInfo?.interval?.minValue;return t!=null?t.toFixed(2):"?"}getMetricMax(e){let t=this.metricsInfo().find(n=>n.metricName===e)?.metricValueInfo?.interval?.maxValue;return t!=null?t.toFixed(2):"?"}getVersionTooltip(){let e=this.versionInfo();return e?`Version: ${e.version} | Language: ${e.language} | Language Version: ${e.language_version}`:""}getMergedTooltip(){let e=this.sidePanelI18n.disclosureTooltip||"",A=this.getVersionTooltip();return A?`${e} | ${A}`:e}filteredUiEvents=ye(()=>this.uiEvents().filter(e=>this.shouldShowEvent(e)));filteredExpectedUiEvents=ye(()=>this.expectedUiEvents().filter(e=>this.shouldShowEvent(e)));onViewModeChange(e){this.viewMode.set(e);try{window.localStorage.setItem("chat-view-mode",e)}catch(A){}}originalSessionId="";hideIntermediateEvents=mA(window.localStorage.getItem("adk-hide-intermediate-events")==="true");toggleHideIntermediateEvents(){let e=!this.hideIntermediateEvents();this.hideIntermediateEvents.set(e),window.localStorage.setItem("adk-hide-intermediate-events",String(e))}sessionHasUsedBidi=new Set;eventData=new Map;traceData=[];renderedEventGraph;rawSvgString=null;agentGraphData=mA(null);sessionGraphSvgLight={};sessionGraphSvgDark={};sessionGraphDot={};dynamicGraphDot={};agentReadme="";graphsAvailable=mA(!0);get hasSubWorkflows(){return Object.keys(this.sessionGraphSvgLight).length>1}selectedEvent=void 0;selectedEventIndex=void 0;selectedMessageIndex=void 0;llmRequest=void 0;llmResponse=void 0;getMediaTypeFromMimetype=I6;selectedFiles=[];MediaType=iC;selectedAppControl=new Ps("",{nonNullable:!0});appDrawerSearchControl=new Ps("",{nonNullable:!0});openBase64InNewTab(e,A){this.safeValuesService.openBase64InNewTab(e,A)}isLoadingApps=mA(!1);loadingError=mA("");apps$=oe([]).pipe(mi(()=>{this.isLoadingApps.set(!0),this.selectedAppControl.disable()}),Mi(()=>this.agentService.listApps().pipe(aa(e=>(this.loadingError.set(e.message),oe(void 0))))),Ro(1),mi(e=>{this.isLoadingApps.set(!1),this.selectedAppControl.enable(),e?.length==1&&this.router.navigate([],{relativeTo:this.activatedRoute,queryParams:{app:e[0]},queryParamsHandling:"merge"})}),Js());filteredDrawerApps$=this.apps$.pipe(Mi(e=>Dr([oe(e),this.appDrawerSearchControl.valueChanges.pipe(Yn(""))])),Se(([e,A])=>{if(!e||!A||A.trim()==="")return e;let t=A.toLowerCase().trim();return e.filter(n=>n.toLowerCase().includes(t))}));importSessionEnabledObs=this.featureFlagService.isImportSessionEnabled();isEditFunctionArgsEnabledObs=this.featureFlagService.isEditFunctionArgsEnabled();isSessionUrlEnabledObs=this.featureFlagService.isSessionUrlEnabled();isApplicationSelectorEnabledObs=this.featureFlagService.isApplicationSelectorEnabled();isTokenStreamingEnabledObs=this.featureFlagService.isTokenStreamingEnabled();isExportSessionEnabledObs=this.featureFlagService.isExportSessionEnabled();isNewSessionButtonEnabledObs=this.featureFlagService.isNewSessionButtonEnabled();isEventFilteringEnabled=sr(this.featureFlagService.isEventFilteringEnabled());isApplicationSelectorEnabled=sr(this.featureFlagService.isApplicationSelectorEnabled());isDeleteSessionEnabledObs=this.featureFlagService.isDeleteSessionEnabled();isUserIdOnToolbarEnabledObs=this.featureFlagService.isUserIdOnToolbarEnabled();isDeveloperUiDisclaimerEnabledObs=this.featureFlagService.isDeveloperUiDisclaimerEnabled();disableBuilderSwitch=!1;autoSelectLatestEvent=!1;constructor(){Fn(()=>{this.themeService?.currentTheme()&&this.updateRenderedGraph()})}ngOnInit(){if(this.checkScreenSize(),this.isMobile()?this.showSidePanel=!1:this.showSidePanel=window.localStorage.getItem("adk-side-panel-visible")!=="false",this.syncSelectedAppFromUrl(),this.updateSelectedAppUrl(),this.hideSidePanelIfNeeded(),this.agentService.getVersion().subscribe(t=>{this.adkVersion.set(t.version||""),this.versionInfo.set(t)}),Dr([this.agentService.getApp(),this.activatedRoute.queryParams]).pipe(Bt(([t,n])=>!!t&&!!n[iD]),oo(),Se(([,t])=>t[iD])).subscribe(t=>{setTimeout(()=>{this.userInput=t})}),this.streamChatService.onStreamClose().subscribe(t=>{let n=`Please check server log for full details: -`+t;this.openSnackBar(n,"OK")}),this.webSocketService.getMessages().subscribe(t=>{if(t)try{let n=JSON.parse(t);(n.interrupted||n.inputTranscription!==void 0&&n.partial)&&this.audioPlayingService.stopAudio(),this.appendEventRow(n),this.changeDetectorRef.detectChanges()}catch(n){}}),new URL(window.location.href).searchParams.has("code")){let t=window.location.href;window.opener?.postMessage({authResponseUrl:t},window.origin),window.close()}this.agentService.getApp().subscribe(t=>{this.appName=t,this.evalService.metricsInfo.set([])}),this.traceService.selectedTraceRow$.subscribe(t=>{t&&(this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0,this.showSidePanel||(this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true"),this.sideDrawer()?.open()),this.changeDetectorRef.detectChanges())}),this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(oo()).subscribe(t=>{t&&(this.uiStateService.onNewMessagesLoaded().subscribe(n=>{this.populateMessages(n.items,!0,!n.isBackground),this.loadTraceData()}),this.uiStateService.onNewMessagesLoadingFailed().subscribe(n=>{this.openSnackBar(n.message,"OK")}))})}get sessionTab(){return this.drawerSessionTab()}switchToTraceView(){this.onViewModeChange("traces")}ngAfterViewInit(){this.showSidePanel&&this.sideDrawer()?.open(),this.isApplicationSelectorEnabled()||this.loadSessionByUrlOrReset()}selectApp(e){if(this.isLoadedAppUnavailable.set(!1),e!=this.appName){let A=!this.appName;this.agentService.setApp(e),A?this.loadSessionByUrlOrReset():this.createSessionAndReset()}}loadSessionByUrlOrReset(){this.isSessionUrlEnabledObs.subscribe(e=>{let A=this.activatedRoute.snapshot?.queryParams,t=A.session,n=A.userId,o=A.evalCase,a=A.evalResult,r=A.file;if(n&&(this.userId=n),o){this.chatType.set("eval-case");let s=o.split("/");if(s.length===2){let l=s[0],g=s[1];this.evalSetId=l,this.evalService.getEvalCase(this.appName,l,g).subscribe(C=>{C&&(this.updateWithSelectedEvalCase(C),setTimeout(()=>{let d=this.sidePanel();d.switchToEvalTab(),d.selectEvalCase(l,C)},600))})}return}if(a){this.chatType.set("eval-result");let s=a.split("/");if(console.log("loadSessionByUrlOrReset evalResultUrl parts:",s),s.length===3){let l=s[0],g=s[1],C=s[2];this.evalSetId=l;let d=`${this.appName}_${l}_${C}`;console.log("loadSessionByUrlOrReset runId:",d),this.evalService.getEvalResult(this.appName,d).subscribe(B=>{if(console.log("loadSessionByUrlOrReset runResult:",B),B){let u=B.evalCaseResults?.find(E=>E.evalId===g);if(console.log("loadSessionByUrlOrReset evalCaseResult:",u),u){let E=u.sessionId;this.evalService.getEvalCase(this.appName,l,g).subscribe(f=>{this.sessionService.getSession(this.userId,this.appName,E).subscribe(m=>{this.addEvalCaseResultToEvents(m,u);let v={id:m?.id??"",appName:m?.appName??"",userId:m?.userId??"",state:m?.state??[],events:m?.events??[],isEvalResult:!0,evalCase:f,evalCaseResult:u,timestamp:C};this.updateWithSelectedSession(v),setTimeout(()=>{let S=this.sidePanel();S.switchToEvalTab(),S.selectEvalResult(l,C,f)},600)})})}}})}return}if(r){this.chatType.set("file");return}if(!e||!t){this.chatType.set("session"),this.createSessionAndReset();return}t&&(this.chatType.set("session"),this.sessionId=t,this.loadSession(t,!0))})}loadSession(e,A=!1){this.uiStateService.setIsSessionLoading(!0),this.isViewOnlySession.set(!1),this.isViewOnlyAppNameMismatch.set(!1),Dr([this.sessionService.getSession(this.userId,this.appName,e).pipe(aa(t=>(A&&(this.openSnackBar("Cannot find specified session. Creating a new one.",void 0,3e3),this.createSessionAndReset()),oe(null)))),this.featureFlagService.isInfinityMessageScrollingEnabled()]).pipe(oo()).subscribe(([t,n])=>{this.uiStateService.setIsSessionLoading(!1),t&&(n&&t.id&&this.uiStateService.lazyLoadMessages(t.id,{pageSize:100,pageToken:""}).pipe(oo()).subscribe(),this.updateWithSelectedSession(t))})}hideSidePanelIfNeeded(){this.activatedRoute.queryParams.pipe(Bt(e=>e[xkA]==="true"),Ro(1)).subscribe(()=>{this.showSidePanel=!1,this.sideDrawer()?.close()})}createSessionAndReset(){this.resetToNewSession(),this.chatType.set("session"),this.isViewOnlySession.set(!1),this.isViewOnlyAppNameMismatch.set(!1),this.canEditSession.set(!0),this.chatPanel()?.canEditSession?.set(!0),this.eventData=new Map,this.uiEvents.set([]),this.artifacts=[],this.userInput="",this.longRunningEvents=[],this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0,this.traceService.resetTraceService()}resetToNewSession(){this.sessionId="",this.currentSessionState={},this.sessionTab?.refreshSession(),this.clearSessionUrl()}createSession(){this.uiStateService.setIsSessionListLoading(!0),this.sessionService.createSession(this.userId,this.appName).subscribe(e=>{this.currentSessionState=e.state,this.sessionId=e.id??"",this.sessionTab?.refreshSession(),this.sessionTab?.reloadSession(this.sessionId),this.isSessionUrlEnabledObs.subscribe(A=>{A&&this.updateSelectedSessionUrl()})},()=>{this.uiStateService.setIsSessionListLoading(!1)})}refreshLatestSession(){this.appName&&(this.uiStateService.setIsSessionLoading(!0),this.sessionService.listSessions(this.userId,this.appName).pipe(oo()).subscribe({next:e=>{if(e.items&&e.items.length>0){let t=e.items.sort((n,o)=>{let a=Number(n.lastUpdateTime||0);return Number(o.lastUpdateTime||0)-a})[0];t.id?this.loadSession(t.id):this.uiStateService.setIsSessionLoading(!1)}else this.uiStateService.setIsSessionLoading(!1),this.openSnackBar("No sessions found for this app.","OK");this.sessionTab?.refreshSession()},error:e=>{this.uiStateService.setIsSessionLoading(!1),this.openSnackBar("Failed to refresh sessions.","OK"),console.error("Error listing sessions:",e)}}))}handleChatInput(e){return re(this,null,function*(){if(e.preventDefault(),!this.userInput.trim()&&this.selectedFiles.length<=0||e instanceof KeyboardEvent&&(e.isComposing||e.keyCode===229))return;let A={role:"user",parts:yield this.getUserMessageParts()};this.userInput="",this.selectedFiles=[];let t=this.router.parseUrl(this.location.path());t.queryParams[iD]&&(delete t.queryParams[iD],this.location.replaceState(t.toString())),yield this.sendMessage(A)})}ensureSessionActive(e){return re(this,null,function*(){if(this.sessionId)return!0;try{let A="";e?.parts&&e.parts[0]?.text&&(A=e.parts[0].text,A.length>50&&(A=A.substring(0,47)+"..."));let t=A?{__session_metadata__:{displayName:A}}:void 0,n=yield Zp(this.sessionService.createSession(this.userId,this.appName,t));return this.currentSessionState=n.state||t||{},this.sessionId=n.id??"",this.sessionTab?.refreshSession(),this.sessionTab?.reloadSession(this.sessionId),this.drawerSessionTab()?.refreshSession(),this.drawerSessionTab()?.reloadSession(this.sessionId),this.isSessionUrlEnabledObs.pipe(oo()).subscribe(o=>{o&&this.updateSelectedSessionUrl()}),!0}catch(A){return this.openSnackBar("Failed to create session","OK"),!1}})}sendMessage(e){return re(this,null,function*(){if(!(yield this.ensureSessionActive(e)))return;let t=e.functionCallEventId;t&&delete e.functionCallEventId;let n=`user_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,o={id:n,author:e.role||"user",content:e},a=this.buildUiEventFromEvent(o);this.uiEvents.update(s=>[...s,a]),setTimeout(()=>this.changeDetectorRef.detectChanges(),0),this.eventData.set(n,o),this.eventData=new Map(this.eventData);let r={appName:this.appName,userId:this.userId,sessionId:this.sessionId,newMessage:e,streaming:this.useSse(),stateDelta:this.updatedSessionState()};t&&(r.functionCallEventId=t),this.submitAgentRunRequest(r),this.changeDetectorRef.detectChanges()})}submitAgentRunRequest(e){this.autoSelectLatestEvent=!0,this.activeSseSubscription=this.agentService.runSse(e).subscribe({next:A=>re(this,null,function*(){if(A.error){this.openSnackBar(A.error,"OK");return}this.appendEventRow(A);let t=this.sidePanel().selectedIndex===0;this.autoSelectLatestEvent&&A.id&&t&&this.selectEvent(A.id,void 0,!1),A.actions&&this.processActionStateDelta(A),this.changeDetectorRef.detectChanges()}),error:A=>{this.activeSseSubscription=void 0,console.error("Send message error:",A);let t=String(A);t.includes("aborted")||t.includes("AbortError")||this.openSnackBar(A,"OK")},complete:()=>{this.activeSseSubscription=void 0,this.updatedSessionState()&&(this.currentSessionState=this.updatedSessionState(),this.updatedSessionState.set(null)),this.featureFlagService.isSessionReloadOnNewMessageEnabled().pipe(oo()).subscribe(A=>{A&&this.sessionTab?.reloadSession(this.sessionId)}),this.loadTraceData()}})}handleStopMessage(){this.activeSseSubscription&&(this.activeSseSubscription.unsubscribe(),this.activeSseSubscription=void 0)}appendEventRow(e,A=!1){if(e.inputTranscription!==void 0?e.author="user":e.outputTranscription!==void 0&&(e.author="bot"),e.errorMessage&&e.id&&!this.eventData.has(e.id)&&(this.eventData.set(e.id,e),this.eventData=new Map(this.eventData)),e.id&&!this.eventData.has(e.id)&&(this.eventData.set(e.id,e),this.eventData=new Map(this.eventData)),this.traceService.setEventData(this.eventData),e?.longRunningToolIds&&e.longRunningToolIds.length>0){let t=this.longRunningEvents.length;this.getAsyncFunctionsFromParts(e.longRunningToolIds,e.content.parts,e.invocationId),this.functionCallEventId=e.id;for(let n=t;n{this.sendOAuthResponse(o,s,this.redirectUri)}).catch(s=>{console.error("OAuth Error:",s)});break}}}if(e.partial)this.uiEvents.update(t=>{if(t.length>0){let o=t.length-1,a=t[o],r=!!(a.event?.inputTranscription||a.event?.outputTranscription),s=!!(e.inputTranscription||e.outputTranscription);if(a.event?.partial&&a.role===(e.author==="user"?"user":"bot")&&r===s){let l=this.mergePartialEvent(a,e),g=[...t];return g[o]=l,g}}let n=this.buildUiEventFromEvent(e,A);return A?[n,...t]:[...t,n]});else{let t=this.buildUiEventFromEvent(e,A);this.uiEvents.update(n=>{let o=n.findIndex(a=>a.event?.id===e.id&&e.id);if(o<0&&n.length>0){let a=e.inputTranscription!==void 0,r=e.outputTranscription!==void 0,s=e.content?.parts?.some(l=>l.thought);if(a||r||s)if(A)for(let l=0;lC.thought))){o=l;break}}}else for(let l=n.length-1;l>=0;l--){let g=n[l].event;if(g?.partial){if(a&&g.inputTranscription!==void 0){o=l;break}if(r&&g.outputTranscription!==void 0){o=l;break}if(s&&(n[l].thought||g.content?.parts?.some(C=>C.thought))){o=l;break}}}else{let l=A?0:n.length-1,g=n[l];if(g.event?.partial){let C=!!(g.event?.inputTranscription||g.event?.outputTranscription),d=!!(e.inputTranscription||e.outputTranscription);C===d&&(o=l)}}}if(o>=0){let a=n[o];(!t.functionResponses||t.functionResponses.length===0)&&(t.functionResponses=a.functionResponses),(!t.functionCalls||t.functionCalls.length===0)&&(t.functionCalls=a.functionCalls);let r=[...n];return r[o]=t,r}else return A?[t,...n]:[...n,t]})}if(e.actions?.artifactDelta){let t=this.uiEvents().find(n=>n.event?.id===e.id);if(t)for(let n in e.actions.artifactDelta)e.actions.artifactDelta.hasOwnProperty(n)&&this.renderArtifact(n,e.actions.artifactDelta[n],t)}}mergePartialEvent(e,A){let t=new su($A(P({},e),{event:A,textParts:e.textParts?e.textParts.map(o=>P({},o)):void 0})),n=A.content?.parts||[];if(this.isEventA2aResponse(A)&&(n=this.combineA2uiDataParts(n)),n=this.combineTextParts(n),n.forEach(o=>{if(o.text!==void 0&&o.text!==null){let a=o.thought?this.processThoughtText(o.text):o.text;t.text=(t.text||"")+a;let r=!!o.thought;this.addTextToParts(t,a,r)}else this.processPartIntoMessage(o,A,t)}),t.thought=t.textParts?.every(o=>o.thought)??!1,A.inputTranscription){let o=e.event?.inputTranscription?.text||"";t.event.inputTranscription={text:o+(A.inputTranscription.text||"")}}if(A.outputTranscription){let o=e.event?.outputTranscription?.text||"";t.event.outputTranscription={text:o+(A.outputTranscription.text||"")}}return t}getUserMessageParts(){return re(this,null,function*(){let e=[];if(this.userInput.trim()&&e.push({text:`${this.userInput}`}),this.selectedFiles.length>0)for(let A of this.selectedFiles)e.push(yield this.localFileService.createMessagePartFromFile(A.file));return e})}processActionStateDelta(e){e.actions&&e.actions.stateDelta&&Object.keys(e.actions.stateDelta).length>0&&(this.currentSessionState=P(P({},this.currentSessionState||{}),e.actions.stateDelta))}combineTextParts(e){let A=[],t;for(let n of e)if(n.text){let o=!!n.thought;t&&t.text&&!!t.thought===o?t.text+=n.text:(t={text:n.text,thought:o},A.push(t))}else t=void 0,A.push(n);return A}isEventA2aResponse(e){return!!e?.customMetadata?.["a2a:response"]}isA2aDataPart(e){if(!e.inlineData||e.inlineData.mimeType!=="text/plain")return!1;let A=atob(oN(e.inlineData.data));return A.startsWith(iN)&&A.endsWith(nN)}isA2uiDataPart(e){let A=this.extractA2aDataPartJson(e);return A&&A.kind==="data"&&A.metadata?.mimeType===H$}extractA2aDataPartJson(e){if(!this.isA2aDataPart(e))return null;let A=atob(oN(e.inlineData.data)),t=A.substring(iN.length,A.length-nN.length),n;try{n=JSON.parse(t)}catch(o){return null}return n}combineA2uiDataParts(e){let A=[],t=[],n;for(let o of e)this.isA2uiDataPart(o)?(t.push(this.extractA2aDataPartJson(o)),n||(n={inlineData:{mimeType:"text/plain",data:o.inlineData.data}},A.push(n))):A.push(o);if(n?.inlineData){let a=iN+JSON.stringify({kind:"data",metadata:{mimeType:H$},data:t})+nN;n.inlineData.data=btoa(a)}return A}processA2uiPartIntoMessage(e){let A={};return e.a2ui.forEach(t=>{t.data.beginRendering?A.beginRendering=t.data:t.data.surfaceUpdate?A.surfaceUpdate=t.data:t.data.dataModelUpdate&&(A.dataModelUpdate=t.data)}),A}extractA2uiJsonFromText(e){if(!e.text)return;let A="",t="",n=e.text.indexOf(A);if(n===-1)return;let o=e.text.indexOf(t,n+A.length);if(o===-1)return;let a=e.text.substring(n+A.length,o).trim();try{let r=JSON.parse(a);Array.isArray(r)||(r=[r]);let s={};r.forEach(C=>{C.beginRendering?s.beginRendering=C:C.surfaceUpdate?s.surfaceUpdate=C:C.dataModelUpdate&&(s.dataModelUpdate=C)}),e.a2uiData=s;let l=e.text.substring(0,n),g=e.text.substring(o+t.length);if(e.text=(l+g).trim(),e.textParts){for(let C of e.textParts){let d=C.text.indexOf(A);if(d!==-1){let B=C.text.indexOf(t,d+A.length);if(B!==-1){let u=C.text.substring(0,d),E=C.text.substring(B+t.length);C.text=(u+E).trim()}}}e.textParts=e.textParts.filter(C=>C.text.trim().length>0)}}catch(r){console.warn("Failed to parse inline block from text:",r)}}updateRedirectUri(e,A){try{let t=new URL(e);return t.searchParams.set("redirect_uri",A),t.toString()}catch(t){return console.warn("Failed to update redirect URI: ",t),e}}formatBase64Data(e,A){let t=oN(e);return`data:${A};base64,${t}`}addTextToParts(e,A,t){if(!A)return;e.textParts||(e.textParts=[]);let n=e.textParts[e.textParts.length-1];n&&!!n.thought===t?n.text+=A:e.textParts.push({text:A,thought:t})}processPartIntoMessage(e,A,t){if(e)if(A&&(t.event=A,A.invocationIndex!==void 0&&(t.invocationIndex=A.invocationIndex),A.toolUseIndex!==void 0&&(t.toolUseIndex=A.toolUseIndex),A.finalResponsePartIndex!==void 0&&(t.finalResponsePartIndex=A.finalResponsePartIndex)),e.text){let n=e.thought?this.processThoughtText(e.text):e.text;t.text=(t.text||"")+n,this.addTextToParts(t,n,!!e.thought),t.thought=t.textParts?.every(o=>o.thought)??!1,A?.groundingMetadata&&A.groundingMetadata.searchEntryPoint&&A.groundingMetadata.searchEntryPoint.renderedContent&&(t.renderedContent=A.groundingMetadata.searchEntryPoint.renderedContent),A?.id&&(t.event=A)}else if(e.inlineData){let n=this.formatBase64Data(e.inlineData.data,e.inlineData.mimeType),o=I6(e.inlineData.mimeType);t.inlineData={displayName:e.inlineData.displayName,data:n,mimeType:e.inlineData.mimeType,mediaType:o},t.role==="user"&&A?.id&&(t.event=A)}else if(e.functionCall){t.functionCalls||(t.functionCalls=[]);let n=A?.longRunningToolIds?.includes(e.functionCall.id),o=e.functionCall;n&&(o=$A(P({},e.functionCall),{isLongRunning:!0,invocationId:A.invocationId,functionCallEventId:A.id,needsResponse:!0,responseStatus:e.functionCall.responseStatus||"pending",userResponse:e.functionCall.userResponse||""}));let a=t.functionCalls.findIndex(r=>r.id===e.functionCall.id);a>=0?t.functionCalls[a]=P(P({},t.functionCalls[a]),o):t.functionCalls.push(o),A?.id&&(t.event=A)}else e.functionResponse?(t.functionResponses||(t.functionResponses=[]),t.functionResponses.push(e.functionResponse),A?.id&&(t.event=A)):e.executableCode?t.executableCode=e.executableCode:e.codeExecutionResult?t.codeExecutionResult=e.codeExecutionResult:e.a2ui&&(t.a2uiData=this.processA2uiPartIntoMessage(e))}handleArtifactFetchFailure(e,A,t,n){this.openSnackBar("Failed to fetch artifact data","OK"),e.error={errorMessage:"Failed to fetch artifact data"+(n?": "+(n.message||n):"")},this.changeDetectorRef.detectChanges(),this.artifacts=this.artifacts.filter(o=>o.id!==A||o.versionId!==t)}renderArtifact(e,A,t){if(this.artifacts.some(a=>a.id===e&&a.versionId===A))return;t.inlineData={data:"",mimeType:"image/png"};let o={id:e,versionId:A,data:"",mimeType:"image/png",mediaType:"image"};this.artifacts=[...this.artifacts,o],this.artifactService.getArtifactVersion(this.userId,this.appName,this.sessionId,e,A).subscribe({next:a=>{let r=a.mimeType,s=a.data;if((!r||!s)&&a.inlineData&&(r=a.inlineData.mimeType,s=a.inlineData.data),!r&&!s&&a.text){r="text/plain";try{s=btoa(unescape(encodeURIComponent(a.text)))}catch(d){console.error("Failed to encode text to base64",d),this.handleArtifactFetchFailure(t,e,A,{message:"Failed to encode text data"});return}}if(!r||!s){this.handleArtifactFetchFailure(t,e,A,{message:"Invalid response data: missing mimeType or data or text"});return}let l=this.formatBase64Data(s,r),g=I6(r),C={name:this.createDefaultArtifactName(r),data:l,mimeType:r,mediaType:g};t.inlineData=C,this.changeDetectorRef.detectChanges(),this.artifacts=this.artifacts.map(d=>d.id===e&&d.versionId===A?{id:e,versionId:A,data:l,mimeType:r,mediaType:g}:d)},error:a=>{this.handleArtifactFetchFailure(t,e,A,a)}})}sendOAuthResponse(e,A,t){this.longRunningEvents.pop();var n=structuredClone(e.args.authConfig);n.exchangedAuthCredential.oauth2.authResponseUri=A,n.exchangedAuthCredential.oauth2.redirectUri=t;let o={role:"user",parts:[{functionResponse:{id:e.id,name:e.name,response:n}}],functionCallEventId:this.functionCallEventId};this.sendMessage(o)}clickEvent(e){let A=this.uiEvents()[e],t=A.event.id;if(t){if(this.selectedMessageIndex===e){this.sideDrawer()?.open(),this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true");return}if(A.role==="user"){this.selectedEvent=this.eventData.get(t),this.selectedEventIndex=this.getIndexOfKeyInMap(t),this.selectedMessageIndex=e,this.llmRequest=void 0,this.llmResponse=void 0,this.sideDrawer()?.open(),this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true"),this.updateRenderedGraph(),this.viewMode()!=="events"&&this.onViewModeChange("events");return}this.sideDrawer()?.open(),this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true"),this.selectEvent(t,e)}}handleJumpToInvocation(e){let A=this.uiEvents(),t=-1,n=-1;for(let o=0;o{this.chatPanel()?.scrollToSelectedMessage(t)},100))}ngOnDestroy(){this.handleStopMessage(),this.streamChatService.closeStream()}onAppSelection(e){this.isAudioRecording&&(this.stopAudioRecording(),this.isAudioRecording=!1),this.isVideoRecording&&(this.stopVideoRecording(),this.isVideoRecording=!1),this.evalTab()?.resetEvalResults(),this.traceData=[]}toggleAudioRecording(e){return re(this,null,function*(){this.isAudioRecording?this.stopAudioRecording():yield this.startAudioRecording(e)})}startAudioRecording(e){return re(this,null,function*(){if(this.sessionId&&this.sessionHasUsedBidi.has(this.sessionId)){this.openSnackBar(RkA,"OK");return}(yield this.ensureSessionActive())&&(this.isAudioRecording=!0,this.streamChatService.startAudioChat({appName:this.appName,userId:this.userId,sessionId:this.sessionId,flags:e}),this.sessionHasUsedBidi.add(this.sessionId))})}stopAudioRecording(){this.audioPlayingService.stopAudio(),this.streamChatService.stopAudioChat(),this.isAudioRecording=!1,this.isVideoRecording&&this.stopVideoRecording()}toggleVideoRecording(){this.isVideoRecording?this.stopVideoRecording():this.startVideoRecording()}startVideoRecording(){let e=this.chatPanel()?.videoContainer;e&&(this.isVideoRecording=!0,this.streamChatService.startVideoStreaming(e))}stopVideoRecording(){let e=this.chatPanel()?.videoContainer;e&&(this.streamChatService.stopVideoStreaming(e),this.isVideoRecording=!1)}getAsyncFunctionsFromParts(e,A,t){for(let n of A)n.functionCall&&e.includes(n.functionCall.id)&&this.longRunningEvents.push({function:n.functionCall,invocationId:t})}openOAuthPopup(e){return new Promise((A,t)=>{if(!this.safeValuesService.windowOpen(window,e,"oauthPopup","width=600,height=700")){t("Popup blocked!");return}let o=a=>{if(a.origin!==window.location.origin)return;let{authResponseUrl:r}=a.data;r?(A(r),window.removeEventListener("message",o)):console.log("OAuth failed",a)};window.addEventListener("message",o)})}toggleSidePanel(){this.showSidePanel?(this.sideDrawer()?.close(),this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0):this.sideDrawer()?.open(),this.showSidePanel=!this.showSidePanel,window.localStorage.setItem("adk-side-panel-visible",this.showSidePanel.toString())}toggleAppSelectorDrawer(){this.showSessionSelectorDrawer=!1,this.showAppSelectorDrawer=!this.showAppSelectorDrawer,this.showAppSelectorDrawer&&this.appDrawerSearchControl.setValue("")}onSelectorDrawerOpened(){this.showAppSelectorDrawer&&this.appSearchInput()?.nativeElement.focus()}handleAppSearchKeydown(e){if(e.key==="ArrowDown"){e.preventDefault(),e.stopPropagation();let A=this.document.querySelector(".app-selector-list .app-selector-item");A&&A.focus()}}handleAppListKeydown(e){if(e.key!=="ArrowDown"&&e.key!=="ArrowUp")return;e.stopPropagation();let A=Array.from(this.document.querySelectorAll(".app-selector-list .app-selector-item")),t=A.indexOf(this.document.activeElement);if(t>-1){if(e.preventDefault(),e.key==="ArrowDown"){let n=t+1;n=0?A[n].focus():this.appSearchInput()?.nativeElement.focus()}}}onAppSelectorDrawerClosed(){this.showAppSelectorDrawer=!1}toggleSessionSelectorDrawer(){this.showAppSelectorDrawer=!1,this.showSessionSelectorDrawer=!this.showSessionSelectorDrawer}onSessionSelectorDrawerClosed(){this.showSessionSelectorDrawer=!1}onSelectorDrawerClosed(){this.showAppSelectorDrawer=!1,this.showSessionSelectorDrawer=!1}onSessionSelectedFromDrawer(e){this.showSessionSelectorDrawer=!1,this.loadSession(e)}onSessionReloadedFromDrawer(e){this.loadSession(e)}selectAppFromDrawer(e){this.selectedAppControl.setValue(e),this.showAppSelectorDrawer=!1}handleTabChange(e){this.canChat()||(this.resetEditEvalCaseVars(),this.handleReturnToSession(!0))}handleReturnToSession(e){this.sessionTab?.getSession(this.sessionId),this.evalTab()?.resetEvalCase(),this.chatType.set("session")}handleEvalNotInstalled(e){e&&this.openSnackBar(e,"OK")}resetEventsAndMessages({keepMessages:e}={}){e||(this.eventData.clear(),this.uiEvents.set([]),this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0),this.artifacts=[]}loadTraceData(){this.sessionId&&(this.uiStateService.setIsEventRequestResponseLoading(!0),this.eventService.getTrace(this.appName,this.sessionId).pipe(oo(),aa(e=>(console.error("[DEBUG] getTrace error:",e),oe([])))).subscribe(e=>{this.traceData=e,this.updateSystemInstructionFlags(),this.traceService.setEventData(this.eventData),this.traceService.setMessages(this.uiEvents()),this.selectedEvent&&this.populateLlmRequestResponse(),this.uiStateService.setIsEventRequestResponseLoading(!1),this.changeDetectorRef.detectChanges()}),this.changeDetectorRef.detectChanges())}updateSystemInstructionFlags(){if(!this.traceData||this.traceData.length===0||this.eventData.size===0)return;let e=n=>{let o=[];for(let a of n)o.push(a),a.children&&(o=o.concat(e(a.children)));return o},t=e(this.traceData).filter(n=>{let o=n.attrOperationName===hI,a=n.name==="call_llm";return(o||a)&&n.io?.inputs!==void 0}).sort((n,o)=>(n.start_time||0)-(o.start_time||0));for(let n of this.eventData.values())n.systemInstructionChanged=!1,n.precedingSystemInstruction=void 0,n.currentSystemInstruction=void 0;for(let n=1;n{r==="bot"&&t&&this.isA2uiDataPart(l)&&(l={a2ui:this.extractA2aDataPartJson(l).data}),this.processPartIntoMessage(l,e,s)}),this.extractA2uiJsonFromText(s),s}populateMessages(e,A=!1,t=!1){this.resetEventsAndMessages({keepMessages:t&&this.sessionIdOfLoadedMessages===this.sessionId}),e.forEach(n=>{this.appendEventRow(n,A)}),this.sessionIdOfLoadedMessages=this.sessionId}restorePendingLongRunningCalls(){let e=this.uiEvents(),A=new Set;this.uiEvents().forEach(t=>{t.functionResponses&&t.functionResponses.forEach(n=>{n.id&&A.add(n.id)})}),this.uiEvents().forEach(t=>{t.functionCalls&&t.functionCalls.forEach(n=>{let o=t.event.id?this.eventData.get(t.event.id):null;(n.isLongRunning||o?.longRunningToolIds?.includes(n.id))&&!A.has(n.id)&&(n.isLongRunning=!0,n.invocationId=o?.invocationId,n.functionCallEventId=t.event.id||"",n.needsResponse=!0,n.responseStatus="pending",n.userResponse=n.userResponse||"")})})}updateWithSelectedSession(e){if(!(!e||!e.id)){if(this.traceService.resetTraceService(),this.traceData=[],this.sessionId=e.id,this.currentSessionState=e.state||{},this.evalCase=null,this.resetEventsAndMessages(),e.isEvalResult){this.isViewOnlySession.set(!0),this.readonlySessionType.set("Eval Result");let A=e.evalCase?.evalId,t=e.timestamp;this.currentEvalCaseId=A,this.currentEvalTimestamp=t;let n=t;if(t){let o=Number(t);isNaN(o)||(n=new Date(o*1e3).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}))}this.readonlySessionName.set(A&&n?`${n} > ${A}`:e.id),this.canEditSession.set(!1),this.chatPanel()?.canEditSession?.set(!1)}else this.isViewOnlySession.set(!1);e.evalCase?this.expectedUiEvents.set(this.buildUiEventsFromEvalCase(e.evalCase)):this.expectedUiEvents.set([]),e.evalCaseResult?this.evalCaseResult.set(e.evalCaseResult):this.evalCaseResult.set(null),e.isEvalResult?this.chatType.set("eval-result"):(this.chatType.set("session"),this.isSideBySide.set(!1)),this.isSessionUrlEnabledObs.subscribe(A=>{A&&this.updateSelectedSessionUrl()}),e.events&&e.state&&(e.events.forEach(A=>{this.appendEventRow(A,!1)}),this.restorePendingLongRunningCalls()),this.changeDetectorRef.detectChanges(),this.loadTraceData(),e.isEvalResult||this.sessionService.canEdit(this.userId,e).pipe(oo(),aa(()=>oe(!0))).subscribe(A=>{this.chatPanel()?.canEditSession?.set(A),this.canEditSession.set(A)}),this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(oo()).subscribe(A=>{A||this.populateMessages(e.events||[]),this.loadTraceData()})}}formatToolUses(e){if(!e||!Array.isArray(e))return[];let A=[];for(let t of e)A.push({name:t.name,args:t.args});return A}addEvalCaseResultToEvents(e,A){let t=A.evalMetricResultPerInvocation,n=-1;if(t)for(let o=0;o{this.appendEventRow(t,!1)}),this.canEditSession.set(!1),this.chatPanel()?.canEditSession?.set(!1),this.isViewOnlySession.set(!0),this.changeDetectorRef.detectChanges()}buildUiEventsFromEvalCase(e){let A=this.uiEvents(),t=this.eventData,n=this.chatType(),o=this.isViewOnlySession(),a=this.readonlySessionType(),r=this.readonlySessionName();this.uiEvents.set([]),this.eventData=new Map,this.updateWithSelectedEvalCase(e);let s=this.uiEvents();return this.uiEvents.set(A),this.eventData=t,this.chatType.set(n),this.isViewOnlySession.set(o),this.readonlySessionType.set(a),this.readonlySessionName.set(r),s}updateWithSelectedEvalCase(e){if(this.evalCase=e,this.chatType.set("eval-case"),this.isViewOnlySession.set(!0),this.readonlySessionType.set("Eval Case"),this.readonlySessionName.set(e.evalId),this.chatType.set("eval-case"),this.isSessionUrlEnabledObs.subscribe(A=>{A&&this.updateSelectedSessionUrl()}),this.resetEventsAndMessages(),e.events&&e.events.length>0)for(let A of e.events)this.appendEventRow(A,!1);else{e.events=[];let A=0;for(let t of e.conversation){if(t.userContent?.parts&&e.events.push({author:"user",content:t.userContent,invocationIndex:A}),t.intermediateData?.invocationEvents){let n=0;for(let o of t.intermediateData.invocationEvents)o.invocationIndex=A,o.content?.parts?.[0]?.functionCall&&(o.toolUseIndex=n,n++),e.events.push(o)}else if(t.intermediateData?.toolUses){let n=0;for(let o of t.intermediateData.toolUses)e.events.push({author:"bot",content:{parts:[{functionCall:{name:o.name,args:o.args}}]},invocationIndex:A,toolUseIndex:n}),n++,e.events.push({author:"bot",content:{parts:[{functionResponse:{name:o.name}}]},invocationIndex:A})}t.finalResponse?.parts&&e.events.push({author:"bot",content:t.finalResponse,invocationIndex:A}),A++}for(let t of e.events)this.appendEventRow(t,!1)}}handleEditEvalCaseRequested(e){this.updateWithSelectedEvalCase(e),this.editEvalCase()}updateSelectedEvalSetId(e){this.evalSetId=e}editEvalCaseMessage(e){this.isEvalCaseEditing.set(!0),this.userEditEvalCaseMessage=e.text,e.isEditing=!0,setTimeout(()=>{let A=this.chatPanel()?.textarea?.nativeElement;if(!A)return;A.focus();let t=A.value.length;e.text.charAt(t-1)===` -`&&t--,A.setSelectionRange(t,t)},0)}editFunctionArgs(e){this.isEvalCaseEditing.set(!0),this.dialog.open(CI,{maxWidth:"90vw",maxHeight:"90vh",data:{dialogHeader:"Edit function arguments",functionName:e.functionCall.name,jsonContent:e.functionCall.args}}).afterClosed().subscribe(t=>{this.isEvalCaseEditing.set(!1),t&&(this.hasEvalCaseChanged.set(!0),e.functionCall.args=t,this.updatedEvalCase=structuredClone(this.evalCase),this.updatedEvalCase.conversation[e.invocationIndex].intermediateData.toolUses[e.toolUseIndex].args=t)})}saveEvalCase(){this.evalService.updateEvalCase(this.appName,this.evalSetId,this.updatedEvalCase.evalId,this.updatedEvalCase).subscribe(e=>{this.openSnackBar("Eval case updated","OK"),this.resetEditEvalCaseVars()})}cancelEditEvalCase(){this.resetEditEvalCaseVars(),this.updateWithSelectedEvalCase(this.evalCase)}resetEditEvalCaseVars(){this.hasEvalCaseChanged.set(!1),this.isEvalCaseEditing.set(!1),this.isEvalEditMode.set(!1),this.updatedEvalCase=null}cancelEditMessage(e){e.isEditing=!1,this.isEvalCaseEditing.set(!1)}saveEditMessage(e){this.hasEvalCaseChanged.set(!0),this.isEvalCaseEditing.set(!1),e.isEditing=!1,e.text=this.userEditEvalCaseMessage?this.userEditEvalCaseMessage:" ",this.updatedEvalCase=structuredClone(this.evalCase),this.updatedEvalCase.conversation[e.invocationIndex].finalResponse.parts[e.finalResponsePartIndex]={text:this.userEditEvalCaseMessage},this.userEditEvalCaseMessage=""}handleKeydown(e,A){e.key==="Enter"&&!e.shiftKey?(e.preventDefault(),this.saveEditMessage(A)):e.key==="Escape"&&this.cancelEditMessage(A)}deleteEvalCaseMessage(e,A){this.hasEvalCaseChanged.set(!0),this.uiEvents.update(t=>t.filter((n,o)=>o!==A)),this.updatedEvalCase=structuredClone(this.evalCase),this.updatedEvalCase.conversation[e.invocationIndex].finalResponse.parts.splice(e.finalResponsePartIndex,1)}editEvalCase(){this.isEvalEditMode.set(!0),this.isViewOnlySession.set(!1)}deleteEvalCase(){let e={title:"Confirm delete",message:`Are you sure you want to delete ${this.evalCase.evalId}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(Mc,{width:"600px",data:e}).afterClosed().subscribe(t=>{t&&(this.evalTab()?.deleteEvalCase(this.evalCase.evalId),this.openSnackBar("Eval case deleted","OK"))})}onNewSessionClick(){this.resetToNewSession(),this.eventData.clear(),this.uiEvents.set([]),this.artifacts=[],this.traceData=[],this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0,this.traceService.resetTraceService(),this.chatPanel()?.focusInput(),this.evalTab()?.showEvalHistory&&this.evalTab()?.toggleEvalHistoryButton()}getToolbarSessionId(){if(!this.sessionId)return"NEW SESSION";if(this.isViewOnlySession())return this.sessionId;let e=this.currentSessionState?.__session_metadata__;return e?.displayName?e.displayName:this.sessionId}getCurrentSessionDisplayName(){return this.sessionId?this.currentSessionState?.__session_metadata__?.displayName||this.sessionId:"NEW SESSION"}copySessionId(){return re(this,null,function*(){if(this.sessionId)try{yield navigator.clipboard.writeText(this.sessionId),this.openSnackBar(this.i18n.sessionIdCopiedMessage,"OK")}catch(e){this.openSnackBar(this.i18n.copySessionIdFailedMessage,"OK")}})}saveSessionName(e){if(!this.sessionId)return;let A={__session_metadata__:$A(P({},this.currentSessionState?.__session_metadata__||{}),{displayName:e})};this.currentSessionState=P(P({},this.currentSessionState),A),this.updatedSessionState.set(P(P({},this.updatedSessionState()),A)),this.sessionService.updateSession(this.userId,this.appName,this.sessionId,{stateDelta:A}).subscribe({next:()=>{this.sessionTab&&this.sessionTab.reloadSession(this.sessionId),this.drawerSessionTab()&&this.drawerSessionTab().reloadSession(this.sessionId)}})}get sessionDisplayNameDraft(){return this.currentSessionState?.__session_metadata__?.displayName||""}saveUserId(e){if(e=e.trim(),!e){this.openSnackBar(this.i18n.invalidUserIdMessage,"OK");return}this.userId=e,this.isSessionUrlEnabledObs.pipe(Ro(1)).subscribe(A=>{A&&this.updateSelectedSessionUrl()})}onFileSelect(e){let A=e.target;if(A.files)for(let t=0;t{e&&this.canvasComponent()?.loadFromYaml(e,this.appName)},error:e=>{console.error("Error loading agent configuration:",e),this.openSnackBar("Error loading agent configuration","OK")}})}exitBuilderMode(){let e=this.router.createUrlTree([],{queryParams:{mode:null},queryParamsHandling:"merge"}).toString();this.location.replaceState(e),this.isBuilderMode.set(!1),this.agentBuilderService.clear()}toggleBuilderAssistant(){this.showBuilderAssistant=!this.showBuilderAssistant}openAddItemDialog(){this.apps$.pipe(Ro(1)).subscribe(e=>{let A=this.dialog.open(l6,{width:"600px",data:{existingAppNames:e??[]}})})}eventGraphSvgLight={};eventGraphSvgDark={};selectedEventGraphPath="";showAgentStructureOverlay=!1;agentStructureOverlayMode="session";openAgentStructureGraphDialog(e="session"){this.agentStructureOverlayMode=e,this.showAgentStructureOverlay=!0}saveAgentBuilder(){this.canvasComponent()?.saveAgent(this.appName)}onEventTabDrillDown(e){this.updateRenderedGraph(void 0,e)}updateRenderedGraph(e,A){return re(this,null,function*(){let t=this.sessionGraphSvgLight,n=this.sessionGraphSvgDark;if(Object.keys(t).length===0||Object.keys(n).length===0){this.renderedEventGraph=void 0;return}let o=e||this.selectedEvent?.nodeInfo?.path;!e&&this.selectedEvent?.author==="user"&&(o="__START__");let a=o;o&&o!=="__START__"&&(a=o.split("/").map(m=>m.split("@")[0]).join("/"));let r=A!==void 0?A:"",s="";if(a&&A===void 0){let m=a.split("/");if(s=m[m.length-1],m.length>=2&&m[m.length-1]==="call_llm"&&m[m.length-2]===this.selectedEvent?.author?(s=m[m.length-2],r=m.slice(1,-2).join("/")):r=m.slice(1,-1).join("/"),r&&!(r in t&&!(r in this.dynamicGraphDot))){let S=this.tryGenerateDynamicGraph(r);if(S&&this.dynamicGraphDot[r]!==S)try{let k=yield this.graphService.render(S);this.sessionGraphSvgLight[r]=k,this.sessionGraphSvgDark[r]=k,this.dynamicGraphDot[r]=S}catch(k){console.error("Failed to render dynamic graph",k)}}for(;r&&!(r in t);){let v=r.split("/");v.pop(),r=v.join("/")}}let l=this.sessionGraphDot[r]||this.sessionGraphDot[""]||"",g=l,C=!1;if(this.selectedEvent){let m=this.getV1HighlightPairs(this.selectedEvent);for(let[v,S]of m)if(v&&S&&S===this.selectedEvent.author){let k=new RegExp(`("${S}"|${S})\\s*->\\s*("${v}"|${v})`,"g");k.test(l)&&(g=l.replace(k,"$& [dir=back]"),C=!0)}}let d="",B="";if(C)try{d=yield this.graphService.render(g),B=d}catch(m){console.error("Failed to render modified graph",m),d=t[r]||t[""]||"",B=n[r]||n[""]||""}else d=t[r]||t[""]||"",B=n[r]||n[""]||"";if(this.selectedEvent){let m=this.getV1HighlightPairs(this.selectedEvent);m.length>0&&(d=this.applyV1Highlighting(d,m,!1),B=this.applyV1Highlighting(B,m,!0))}let u=[],E=[];if(this.selectedEventIndex!==void 0){let m=Array.from(this.eventData.values()),S=m[this.selectedEventIndex]?.invocationId;for(let k=0;kz.split("@")[0]).join("/")),F){let z=F.split("/"),j=z[z.length-1],X="";z.length>=2&&z[z.length-1]==="call_llm"&&z[z.length-2]===M.author?(j=z[z.length-2],X=z.slice(1,-2).join("/")):X=z.slice(1,-1).join("/");let eA=r in this.dynamicGraphDot,Z=x?x.split("/"):[],CA=Z.length>0?Z[Z.length-1]:"",wA=eA?CA:j;X===r&&(k<=this.selectedEventIndex&&(u.length===0||u[u.length-1]!==wA)&&u.push(wA),(E.length===0||E[E.length-1]!==wA)&&E.push(wA))}}}if(this.selectedEvent){let m=this.getV1HighlightPairs(this.selectedEvent);for(let[v,S]of m)S&&S!==""&&(E.includes(S)||E.push(S),u.includes(S)||u.push(S)),v&&v!==""&&(E.includes(v)||E.push(v),u.includes(v)||u.push(v))}E.length>0&&d&&B&&(d=this.highlightExecutionPathInSvg(d,u,E,"light"),B=this.highlightExecutionPathInSvg(B,u,E,"dark")),this.selectedEventGraphPath=r,this.eventGraphSvgLight=$A(P({},t),{[r]:d}),this.eventGraphSvgDark=$A(P({},n),{[r]:B});let f=this.themeService?.currentTheme()==="dark"?B:d;this.rawSvgString=f,this.renderedEventGraph=this.safeValuesService.bypassSecurityTrustHtml(f),this.changeDetectorRef.detectChanges()})}tryGenerateDynamicGraph(e){let A=Array.from(this.eventData.values()),t=[];for(let l of A){let g=l.nodeInfo?.path;if(!g)continue;let C=g.split("/"),d=C.map(u=>u.split("@")[0]),B="";if(d.length>=2&&d[d.length-1]==="call_llm"&&d[d.length-2]===l.author?B=d.slice(1,-2).join("/"):B=d.slice(1,-1).join("/"),B===e){let u=C[C.length-1];t.push({run:u,branch:l.branch})}}if(t.length===0)return null;let n=new Set,o=new Map;for(let l of t)n.add(l.run),l.branch&&o.set(l.run,l.branch);if(n.size===0)return null;let a=`digraph G { -`;a+=` rankdir=TB; -`,a+=` node [shape=box, style=filled, fillcolor="#e6f4ea", color="#34a853"]; -`,a+=` "START" [shape=ellipse, style=filled, fillcolor="#fce8e6", color="#ea4335"]; -`;let r=new Map;for(let l of n){let g=l.split("@")[0];r.has(g)||r.set(g,[]),r.get(g).push(l)}for(let[l,g]of Array.from(r.entries())){a+=` subgraph cluster_${l} { -`,a+=` label="${l}"; -`,a+=` style=dashed; -`,a+=` color="#b0b0b0"; -`;for(let C of g){let d=C.split("@")[1]||"";a+=` "${C}" [label="@${d}"]; -`}a+=` } -`}let s=new Set;for(let l of n){let g=o.get(l);if(g){let C=g.split(".");if(C.length>=2){let d=C[C.length-2],B=C[C.length-1];s.add(`"${d}" -> "${B}"`)}else C.length===1&&s.add(`"START" -> "${C[0]}"`)}else s.add(`"START" -> "${l}"`)}for(let l of s)a+=` ${l}; -`;return a+="}",a}highlightExecutionPathInSvg(e,A,t,n="light"){if(!t||t.length===0)return e;let a=new DOMParser().parseFromString(e,"image/svg+xml"),r=new Map,s=new Map,l=a.querySelectorAll("g.edge");l.forEach(X=>{let Z=X.querySelector("title")?.textContent?.trim()||"";if(Z.includes("->")){let CA=Z.split("->"),wA=CA[0].trim().replace(/^"|"$/g,""),BA=CA[1].trim().replace(/^"|"$/g,"");r.has(BA)||r.set(BA,[]),r.get(BA).push(wA),s.has(wA)||s.set(wA,[]),s.get(wA).push(BA)}});let g=new Map,C=a.querySelectorAll("g.node");C.forEach(X=>{let Z=Array.from(X.querySelectorAll("text")).map(QA=>QA.textContent?.trim()||"").join(""),wA=X.querySelector("title")?.textContent?.trim()||"",BA=wA.replace(/^"|"$/g,"");g.set(Z,BA),wA&&g.set(wA,BA)});let d=X=>{let eA=X.toLowerCase();for(let[Z,CA]of g.entries()){let wA=Z.toLowerCase().replace(/\s+/g,"_");if(wA===eA||wA===`"${eA}"`)return CA}for(let[Z,CA]of g.entries())if(Z.toLowerCase().replace(/\s+/g,"_").includes(eA))return CA;return null},B=A.map(X=>d(X)).filter(X=>X),u=t.map(X=>d(X)).filter(X=>X),{visitedNodes:E,visitedEdges:f}=this.calculateVisitedPath(B,r),{visitedNodes:m}=this.calculateVisitedPath(u,r),v=this.calculateEdgeCounts(B,E,f,s),S=n==="dark"?"#34a853":"#a1c2a1",k=n==="dark"?"#ceead6":"#0d652d",M=n==="dark"?"#137333":"#a6d8b5",x=n==="dark"?"#34a853":"#a1c2a1",F=n==="dark"?"#0d652d":"#e6f4ea",z=null,j=B[B.length-1];if(B.length>0&&j){let X=[...B],eA=Array.from(E).find(CA=>CA.toLowerCase()==="__start__");X.length>0&&X[0].toLowerCase()!=="__start__"&&eA&&X.unshift(eA);let Z=X.lastIndexOf(j);if(Z>0){let CA=X[Z-1],wA=X[Z],BA=[],QA=new Set,RA=s.get(CA)||[];for(let dA of RA){let IA=`${CA}->${dA}`;f.has(IA)&&(BA.push({node:dA,path:[IA]}),QA.add(dA))}for(;BA.length>0;){let dA=BA.shift();if(dA.node===wA){dA.path.length>0&&(z=dA.path[dA.path.length-1]);break}let IA=s.get(dA.node)||[];for(let xA of IA){let qA=`${dA.node}->${xA}`;f.has(qA)&&!QA.has(xA)&&(QA.add(xA),BA.push({node:xA,path:[...dA.path,qA]}))}}}}return l.forEach(X=>{let Z=X.querySelector("title")?.textContent?.trim()||"";if(Z.includes("->")){let CA=Z.split("->"),wA=CA[0].trim().replace(/^"|"$/g,""),BA=CA[1].trim().replace(/^"|"$/g,""),QA=`${wA}->${BA}`;if(f.has(QA)){let RA=QA===z,dA=X.querySelector("path");dA&&(dA.setAttribute("stroke",RA?k:S),dA.setAttribute("stroke-width",RA?"4":"2"));let IA=X.querySelector("polygon");IA&&(IA.setAttribute("fill",RA?k:S),IA.setAttribute("stroke",RA?k:S));let xA=v.get(QA)||0;if(xA>1){let qA=X.querySelector("text");if(qA)qA.textContent=`${qA.textContent} (${xA}x)`,qA.setAttribute("fill",n==="dark"?"#ffffff":"#000000"),qA.setAttribute("font-weight","bold");else if(dA){let HA=[...(dA.getAttribute("d")||"").matchAll(/[-+]?[0-9]*\.?[0-9]+/g)];if(HA.length>=4){let bA=HA.map(Ae=>parseFloat(Ae[0])),PA=(bA[0]+bA[bA.length-2])/2,it=(bA[1]+bA[bA.length-1])/2,Xe=a.createElementNS("http://www.w3.org/2000/svg","g"),YA=a.createElementNS("http://www.w3.org/2000/svg","rect");YA.setAttribute("x",(PA-14).toString()),YA.setAttribute("y",(it-10).toString()),YA.setAttribute("width","28"),YA.setAttribute("height","20"),YA.setAttribute("rx","4"),YA.setAttribute("fill",n==="dark"?"#0d652d":"#e6f4ea"),YA.setAttribute("stroke",S),YA.setAttribute("stroke-width","1"),Xe.appendChild(YA);let hA=a.createElementNS("http://www.w3.org/2000/svg","text");hA.setAttribute("x",PA.toString()),hA.setAttribute("y",(it+4).toString()),hA.setAttribute("text-anchor","middle"),hA.setAttribute("fill",n==="dark"?"#ffffff":"#000000"),hA.setAttribute("font-size","12px"),hA.setAttribute("font-weight","bold"),hA.textContent=xA.toString()+"x",Xe.appendChild(hA),X.appendChild(Xe)}}}}}}),C.forEach(X=>{let eA=X.querySelector("title"),Z=eA?.textContent?.trim().replace(/^"|"$/g,"")||"";if(E.has(Z)){let CA=X.querySelector("ellipse, polygon, path, rect");if(CA){let wA=Z===j||Z.toLowerCase()==="__end__";CA.setAttribute("stroke",wA?k:x),CA.setAttribute("fill",wA?M:F),CA.setAttribute("stroke-width",wA?"4":"2")}}if(!m.has(Z)){X.classList.add("unvisited-node");let CA=X.querySelector("ellipse, polygon, path, rect");if(CA){CA.setAttribute("stroke",n==="dark"?"#666666":"#b0b0b0"),CA.setAttribute("fill",n==="dark"?"#424242":"#e0e0e0");let QA=a.createElementNS("http://www.w3.org/2000/svg","title");QA.textContent="Not run in this invocation",CA.appendChild(QA)}if(X.querySelectorAll("text").forEach(QA=>{QA.setAttribute("fill",n==="dark"?"#888888":"#757575");let RA=a.createElementNS("http://www.w3.org/2000/svg","title");RA.textContent="Not run in this invocation",QA.appendChild(RA)}),eA)eA.textContent="Not run in this invocation";else{let QA=a.createElementNS("http://www.w3.org/2000/svg","title");QA.textContent="Not run in this invocation",X.appendChild(QA)}X.querySelectorAll("a").forEach(QA=>{QA.title="Not run in this invocation"})}}),new XMLSerializer().serializeToString(a)}getV1HighlightPairs(e){let A=[],t=e.content?.parts?.filter(o=>o.functionCall)||[],n=e.content?.parts?.filter(o=>o.functionResponse)||[];if(t.length>0)for(let o of t)o.functionCall?.name&&e.author&&A.push([e.author,o.functionCall.name]);else if(n.length>0)for(let o of n)o.functionResponse?.name&&e.author&&A.push([o.functionResponse.name,e.author]);else e.author&&A.push([e.author,""]);return A}applyV1Highlighting(e,A,t){let o=new DOMParser().parseFromString(e,"image/svg+xml"),a="#0F5223",r="#69CB87",s=t?"#cccccc":"#000000",l=new Set;for(let[d,B]of A)d&&l.add(d),B&&l.add(B);return o.querySelectorAll("g.node").forEach(d=>{let u=d.querySelector("title")?.textContent?.trim().replace(/^"|"$/g,"")||"",E=Array.from(d.querySelectorAll("text")),f=E.map(v=>v.textContent?.trim()||"").join("").toLowerCase().replace(/\s+/g,"_"),m=l.has(u);if(!m)for(let v of l){let S=v.toLowerCase().replace(/\s+/g,"_");if(f.includes(S)){m=!0;break}}if(m){let v=d.querySelector("ellipse, polygon, path, rect");v&&(v.setAttribute("fill",a),v.setAttribute("stroke",a)),E.forEach(S=>S.setAttribute("fill",s))}else E.forEach(v=>v.setAttribute("fill",s))}),o.querySelectorAll("g.edge").forEach(d=>{let u=d.querySelector("title")?.textContent?.trim()||"";if(u.includes("->")){let[E,f]=u.split("->"),m=E.trim().replace(/^"|"$/g,""),v=f.trim().replace(/^"|"$/g,"");for(let[S,k]of A)if(m===S&&v===k||m===k&&v===S){let M=d.querySelector("path");M&&M.setAttribute("stroke",r);let x=d.querySelector("polygon");x&&(x.setAttribute("stroke",r),x.setAttribute("fill",r));break}}}),new XMLSerializer().serializeToString(o)}calculateVisitedPath(e,A){let t=new Set(e),n=!0;for(;n;){n=!1;let a=Array.from(t);for(let r of a){let s=A.get(r)||[];if(s.length===1){let l=s[0];t.has(l)||(t.add(l),n=!0)}}}for(let[a,r]of A.entries())if(a.toLowerCase()==="__end__"){for(let s of r)if(t.has(s)){t.add(a);break}}let o=new Set;for(let a of t){if(a==="__start__")continue;let r=A.get(a)||[];if(r.length===1)o.add(`${r[0]}->${a}`);else if(r.length>1)for(let s of r)(t.has(s)||s==="__start__")&&o.add(`${s}->${a}`)}return{visitedNodes:t,visitedEdges:o}}calculateEdgeCounts(e,A,t,n){let o=new Map,a=[...e],r=Array.from(A).find(l=>l.toLowerCase()==="__start__"),s=Array.from(A).find(l=>l.toLowerCase()==="__end__");a.length>0&&a[0].toLowerCase()!=="__start__"&&r&&a.unshift(r),a.length>0&&s&&a[a.length-1].toLowerCase()!=="__end__"&&a.push(s);for(let l=0;l${f}`;t.has(m)&&(B.push({node:f,path:[m]}),u.add(f))}for(;B.length>0;){let f=B.shift();if(f.node===C){d=f.path;break}let m=n.get(f.node)||[];for(let v of m){let S=`${f.node}->${v}`;t.has(S)&&!u.has(v)&&(u.add(v),B.push({node:v,path:[...f.path,S]}))}}if(d)for(let f of d)o.set(f,(o.get(f)||0)+1)}return o}onManualScroll(){this.autoSelectLatestEvent=!1}selectEvent(e,A,t=!0){t&&(this.autoSelectLatestEvent=!1),this.traceService.selectedRow(void 0),this.selectedEvent=this.eventData.get(e),this.selectedEventIndex=this.getIndexOfKeyInMap(e),this.selectedMessageIndex=A!==void 0?A:this.uiEvents().findIndex(n=>n.event.id===e),t&&this.viewMode()!=="events"&&this.onViewModeChange("events"),this.chatPanel()?.scrollToSelectedMessage(this.selectedMessageIndex),this.populateLlmRequestResponse(),this.updateRenderedGraph()}populateLlmRequestResponse(){if(this.llmRequest=void 0,this.llmResponse=void 0,!this.selectedEvent)return;let e=this.findSpanIoForSelectedEvent();e!==void 0&&(this.llmRequest=e.inputs,this.llmResponse=e.outputs)}findSpanIoForSelectedEvent(){let e=this.selectedEvent?.id;if(e===void 0)return;let A=this.traceData?.find(n=>n.attrOperationName===hI&&n.attrEventId===e);return A?.io!==void 0?A.io:this.traceData?.find(n=>n.attrEventId===e&&n.name==="call_llm")?.io}deleteSession(e){let A={title:"Confirm delete",message:`Are you sure you want to delete this session ${this.sessionId}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(Mc,{width:"600px",data:A}).afterClosed().subscribe(n=>{n&&this.sessionService.deleteSession(this.userId,this.appName,e).subscribe(o=>{let a=this.sessionTab?.refreshSession(e);a?this.sessionTab?.getSession(a.id):window.location.reload()})})}syncSelectedAppFromUrl(){let e=this.activatedRoute.snapshot?.queryParams?.app;e&&(this.selectedAppControl.setValue(e,{emitEvent:!1}),this.selectApp(e)),Dr([this.activatedRoute.queryParams,this.apps$]).subscribe(([A,t])=>{let n=A.app;if(t&&t.length&&n){if(!t.includes(n)){this.openSnackBar(`Agent '${n}' not found`,"OK");return}n!==this.appName&&(this.selectedAppControl.setValue(n,{emitEvent:!1}),this.selectApp(n)),this.agentService.getAppInfo(n).subscribe(o=>{setTimeout(()=>{this.agentGraphData.set(o),this.agentReadme=o?.readme||""})}),this.sessionGraphSvgLight={},this.sessionGraphSvgDark={},this.dynamicGraphDot={},setTimeout(()=>this.graphsAvailable.set(!0)),this.agentService.getAppGraphImage(n,!1).pipe(aa(o=>(console.error("Error fetching light mode graphs:",o),this.graphsAvailable.set(!1),oe(null)))).subscribe({next:o=>re(this,null,function*(){try{if(o){console.log("Light mode graph response:",o),this.sessionGraphSvgLight={},this.dynamicGraphDot={};for(let[a,r]of Object.entries(o))if(r?.dotSrc){let l=a.split("/").map(C=>C.split("@")[0]).join("/").split("/"),g=l.length>1?l.slice(1).join("/"):l[0]==="root_agent"||l[0]===n?"":l[0];this.sessionGraphDot[g]=r.dotSrc,this.sessionGraphSvgLight[g]=yield this.graphService.render(r.dotSrc)}console.log("sessionGraphSvgLight after rendering:",Object.keys(this.sessionGraphSvgLight)),console.log("graphsAvailable:",this.graphsAvailable()),this.selectedEvent&&this.selectedEventIndex!==void 0&&this.updateRenderedGraph()}}catch(a){console.error("Error rendering light mode graphs:",a),setTimeout(()=>this.graphsAvailable.set(!1))}}),error:o=>{console.error("Error fetching light mode graphs:",o),setTimeout(()=>this.graphsAvailable.set(!1))}}),this.agentService.getAppGraphImage(n,!0).pipe(aa(o=>(console.error("Error fetching dark mode graphs:",o),oe(null)))).subscribe({next:o=>re(this,null,function*(){try{if(o){this.sessionGraphSvgDark={};for(let[a,r]of Object.entries(o))if(r?.dotSrc){let l=a.split("/").map(C=>C.split("@")[0]).join("/").split("/"),g=l.length>1?l.slice(1).join("/"):l[0]==="root_agent"||l[0]===n?"":l[0];this.sessionGraphSvgDark[g]=yield this.graphService.render(r.dotSrc)}this.selectedEvent&&this.selectedEventIndex!==void 0&&this.updateRenderedGraph()}}catch(a){console.error("Error rendering dark mode graphs:",a),setTimeout(()=>this.graphsAvailable.set(!1))}}),error:o=>{console.error("Error fetching dark mode graphs:",o),setTimeout(()=>this.graphsAvailable.set(!1))}}),this.agentService.getAgentBuilder(n).pipe(aa(o=>(setTimeout(()=>this.disableBuilderSwitch=!0),this.agentBuilderService.setLoadedAgentData(void 0),oe("")))).subscribe(o=>{!o||o==""?(setTimeout(()=>this.disableBuilderSwitch=!0),this.agentBuilderService.setLoadedAgentData(void 0)):(setTimeout(()=>this.disableBuilderSwitch=!1),this.agentBuilderService.setLoadedAgentData(o))}),this.isBuilderMode.set(!1)}A.mode==="builder"&&this.enterBuilderMode()})}updateSelectedAppUrl(){this.selectedAppControl.valueChanges.pipe(xg(),Bt(Boolean)).subscribe(e=>{this.selectApp(e);let A=this.activatedRoute.snapshot?.queryParams?.app;e!==A&&this.router.navigate([],{queryParams:{app:e,mode:null},queryParamsHandling:"merge"})})}updateSelectedSessionUrl(){let e=this.chatType(),A={userId:this.userId};switch(A.session=null,A.evalCase=null,A.evalResult=null,A.file=null,e){case"session":A.session=this.sessionId;break;case"eval-case":A.evalCase=`${this.evalSetId}/${this.evalCase?.evalId}`;break;case"eval-result":A.evalResult=`${this.evalSetId}/${this.currentEvalCaseId}/${this.currentEvalTimestamp}`;break;case"file":A.file=this.readonlySessionName();break}let t=this.router.createUrlTree([],{queryParams:A,queryParamsHandling:"merge"}).toString();this.location.replaceState(t)}clearSessionUrl(){this.isSessionUrlEnabledObs.pipe(oo()).subscribe(e=>{if(e){let A=this.router.createUrlTree([],{queryParams:{session:null},queryParamsHandling:"merge"}).toString();this.location.replaceState(A)}})}handlePageEvent(e){if(e.pageIndex>=0){let A=this.getKeyAtIndexInMap(e.pageIndex);A&&(this.selectEvent(A),setTimeout(()=>{let t=this.uiEvents().findIndex(n=>n.event.id===A);if(t!==-1){let n=this.chatPanel()?.scrollContainer?.nativeElement;if(!n)return;let o=n.querySelectorAll(".message-row-container");o&&o[t]&&o[t].scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}},0))}}closeSelectedEvent(){this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0}handleEscapeKey(e){e.key==="Escape"&&this.selectedEvent&&(e.preventDefault(),this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0)}getIndexOfKeyInMap(e){let A=0,t=(o,a)=>0,n=Array.from(this.eventData.keys()).sort(t);for(let o of n){if(o===e)return A;A++}}getKeyAtIndexInMap(e){let A=(n,o)=>0,t=Array.from(this.eventData.keys()).sort(A);if(e>=0&&e{console.log(e);let t=(e.state?.__session_metadata__||this.currentSessionState?.__session_metadata__)?.displayName,n=t&&t.trim()?`${t.trim().replace(/[/\\?%*:|"<>]/g,"_")}.json`:`session-${this.sessionId}.json`;this.downloadService.downloadObjectAsJson(e,n)})}updateState(){this.dialog.open(CI,{maxWidth:"90vw",maxHeight:"90vh",data:{dialogHeader:"Update state",jsonContent:this.currentSessionState}}).afterClosed().subscribe(A=>{A&&this.updatedSessionState.set(A)})}removeStateUpdate(){this.updatedSessionState.set(null)}importSession(){let e=document.createElement("input");e.type="file",e.accept="application/json",e.onchange=()=>{if(!e.files||e.files.length===0)return;let A=e.files[0],t=new FileReader;t.onload=n=>{if(n.target?.result)try{let o=JSON.parse(n.target.result);if(!o.events||o.events.length===0){this.openSnackBar("Invalid session file: no events found","OK");return}if(o.appName&&o.appName!==this.appName){let a={title:"App name mismatch",message:`The session file was exported from app "${o.appName}" but the current app is "${this.appName}". Do you want to import it anyway?`,confirmButtonText:"Import",cancelButtonText:"Cancel"};this.dialog.open(Mc,{width:"600px",data:a}).afterClosed().subscribe(s=>{s&&this.doImportSession(o)})}else this.doImportSession(o)}catch(o){this.openSnackBar("Error parsing session file","OK")}},t.readAsText(A)},e.click()}viewSession(){let e=document.createElement("input");e.type="file",e.accept="application/json",e.onchange=()=>{if(!e.files||e.files.length===0)return;let A=e.files[0],t=new FileReader;t.onload=n=>{if(n.target?.result)try{let o=JSON.parse(n.target.result);if(!o.events||o.events.length===0){this.openSnackBar("Invalid session file: no events found","OK");return}this.doViewSession(o,A.name)}catch(o){this.openSnackBar("Error parsing session file","OK")}},t.readAsText(A)},e.click()}doViewSession(e,A){let t=e.appName;t&&t!==this.appName?this.apps$.pipe(Ro(1)).subscribe(n=>{n?.includes(t)?this.router.navigate([],{queryParams:{app:t},queryParamsHandling:"merge"}).then(()=>{this.openSnackBar(`Switched to app '${t}'`,"OK"),this.performViewSessionLoading(e,A)}):(this.isLoadedAppUnavailable.set(!0),this.unavailableAppName.set(t),this.performViewSessionLoading(e,A))}):this.performViewSessionLoading(e,A)}performViewSessionLoading(e,A){this.traceService.resetTraceService(),this.traceData=[],this.isViewOnlySession()||(this.originalSessionId=this.sessionId),this.readonlySessionType.set("File"),this.readonlySessionName.set(A),this.sessionId=`File: ${A}`,this.currentSessionState=e.state||{},this.evalCase=null,this.chatType.set("session"),this.updateSelectedSessionUrl(),this.showSessionSelectorDrawer=!1,this.resetEventsAndMessages(),this.isViewOnlySession.set(!0),this.canEditSession.set(!1),this.chatPanel()?.canEditSession?.set(!1);let t=!!(e.appName&&e.appName!==this.appName);this.isViewOnlyAppNameMismatch.set(t),e.events&&e.events.forEach(n=>{this.appendEventRow(n,!1)}),this.changeDetectorRef.detectChanges()}closeReadonlySession(){this.isViewOnlySession.set(!1),this.readonlySessionType.set(""),this.readonlySessionName.set(""),this.evalCase=null,this.router.navigate([],{queryParams:{session:null,evalCase:null,evalResult:null,file:null},queryParamsHandling:"merge"}),this.createSessionAndReset(),this.originalSessionId=""}doImportSession(e){let A=Date.now()/1e3,t=e.events.map(n=>$A(P({},n),{timestamp:A}));this.sessionService.importSession(this.userId,this.appName,t,e.state).subscribe(n=>{this.openSnackBar(`Session imported successfully (ID: ${n.id})`,"OK"),this.sessionTab?.refreshSession(),this.showSessionSelectorDrawer=!1,this.updateWithSelectedSession(n)})}onResize(){this.checkScreenSize()}checkScreenSize(){let e=window.innerWidth<=768;this.isMobile.set(e)}static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-chat"]],viewQuery:function(A,t){A&1&&ls(t.chatPanel,h1,5)(t.canvasComponent,QE,5)(t.sideDrawer,eSA,5)(t.sidePanel,xE,5)(t.drawerSessionTab,tSA,5)(t.evalTab,Sc,5)(t.appSearchInput,iSA,5)(t.invChipMenuTrigger,nSA,5)(t.nodeChipMenuTrigger,oSA,5)(t.addMenuTrigger,aSA,5),A&2&&br(10)},hostBindings:function(A,t){A&1&&U("keydown",function(o){return t.handleEscapeKey(o)},Fg)("resize",function(){return t.onResize()},Fg)},features:[pt([{provide:rd,useClass:aN}])],ngContentSelectors:sSA,decls:47,vars:17,consts:[["userMenu","matMenu"],["selectorDrawer",""],["sideDrawer",""],["appSearchInput",""],["drawerSessionTab",""],["addFilterMenu","matMenu"],["invocationMenu","matMenu"],["nodePathMenu","matMenu"],["invChipMenuTrigger","matMenuTrigger"],["nodeChipMenuTrigger","matMenuTrigger"],["addMenuTrigger","matMenuTrigger"],["moreOptionsMenu","matMenu"],[1,"app-toolbar"],[1,"toolbar-group","toolbar-agent-group"],["mat-icon-button","","aria-label","Toggle side panel",1,"toolbar-icon-button",3,"click"],[1,"toolbar-logo"],[1,"selector-group"],["matTooltip","Select an app",1,"selector-button",3,"click"],["fontSet","material-symbols-outlined"],[1,"selector-label"],["color","warn","matTooltip","The app for the loaded file is not available",2,"margin-left","4px"],["fontSet","material-symbols-outlined",1,"selector-caret"],[1,"toolbar-group","toolbar-session-group"],["mat-icon-button","","matTooltip","User","aria-label","User menu",1,"toolbar-icon-button","user-avatar-button",3,"matMenuTriggerFor"],["xPosition","before","panelClass","user-avatar-menu"],[1,"user-menu-panel",3,"click"],[1,"user-menu-header"],[1,"user-menu-label"],[2,"flex","1"],["mat-icon-button","","matTooltip","Reset to default user",1,"small-icon-button",3,"click"],[1,"user-menu-content"],["textClass","user-menu-id",3,"save","value","placeholder"],["autosize","",1,"drawer-container"],["mode","over","position","start",1,"selector-drawer",3,"closedStart","opened","autoFocus"],["autosize","",1,"side-panel-container"],["appResizableDrawer","",1,"side-drawer",3,"mode"],[3,"isApplicationSelectorEnabledObs","showSidePanel","appName","userId","sessionId","isViewOnlySession","isViewOnlyAppNameMismatch","traceData","eventData","currentSessionState","artifacts","selectedEvent","selectedEventIndex","renderedEventGraph","rawSvgString","selectedEventGraphPath","llmRequest","llmResponse","disableBuilderIcon","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab"],[1,"builder-mode-container"],[1,"chat-container"],[3,"appName","preloadedAppData","preloadedLightGraphSvg","preloadedDarkGraphSvg","startPath"],[4,"ngComponentOutlet"],["src","assets/ADK-512-color.svg","width","20px","height","20px","alt","ADK Logo"],[1,"logo-title-container"],[1,"logo-text-wrapper"],[1,"toolbar-logo-text","logo-wide"],[1,"toolbar-logo-text","logo-wide",2,"color","var(--mat-sys-outline)"],[1,"custom-tooltip"],[1,"tooltip-desc"],[1,"tooltip-grid"],[1,"toolbar-logo-text","logo-narrow"],[1,"tooltip-item"],[1,"tooltip-label"],[1,"tooltip-value"],[1,"selector-group-divider"],["matTooltipPosition","below",3,"matTooltip"],["mat-icon-button","",1,"toolbar-icon-button",3,"click","disabled"],["mat-icon-button","","matTooltipPosition","below",1,"toolbar-icon-button",3,"click","disabled"],[1,"readonly-chip"],[1,"toolbar-content"],[2,"display","flex","align-items","center"],[1,"toolbar-actions"],["mat-icon-button","",1,"toolbar-icon-button",3,"matTooltip"],["fontSet","material-symbols-outlined",2,"font-size","18px","width","18px","height","18px","line-height","18px"],[1,"chip-label"],["mat-icon-button","","aria-label","Close readonly view",1,"chip-close-button",3,"click"],[2,"font-size","16px","width","16px","height","16px"],["matTooltip","Select a session",1,"selector-button",3,"click"],["id","toolbar-new-session-button",1,"selector-button","new-session-button",3,"matTooltip"],["id","toolbar-new-session-button",1,"selector-button","new-session-button","icon-only",3,"matTooltip"],["id","toolbar-new-session-button",1,"selector-button","new-session-button",3,"click","matTooltip"],["id","toolbar-new-session-button",1,"selector-button","new-session-button","icon-only",3,"click","matTooltip"],[1,"chip-value"],["mat-button","",2,"height","30px",3,"click"],["mat-flat-button","",2,"height","30px",3,"click","disabled"],[1,"toolbar-session-text"],["mat-icon-button","",1,"toolbar-icon-button",3,"click","matTooltip"],[1,"selector-drawer-header"],[1,"selector-drawer-title"],["mat-icon-button","","matTooltip","Create new agent","matTooltipPosition","below","aria-label","Create new agent",1,"toolbar-icon-button",3,"click"],["mat-icon-button","","aria-label","Close app selector",1,"toolbar-icon-button",3,"click"],[1,"app-selector-search"],["subscriptSizing","dynamic","appearance","outline",1,"app-selector-search-field"],["matPrefix",""],["matInput","","placeholder","Search apps...",3,"keydown","formControl"],[1,"app-selector-list",3,"keydown"],[1,"app-selector-loading"],["mode","indeterminate","diameter","32"],[1,"app-selector-item",3,"selected"],[1,"app-selector-empty"],[1,"app-selector-item",3,"click"],["fontSet","material-symbols-outlined",1,"app-selector-item-icon"],[1,"app-selector-item-name"],[1,"app-selector-check"],[2,"display","flex","gap","4px"],["mat-button","",1,"toolbar-button",3,"matTooltip"],["mat-button","",1,"toolbar-button",3,"click","matTooltip"],["mat-icon-button","","aria-label","Close session selector",1,"toolbar-icon-button",3,"click"],[1,"session-selector-current-id"],[1,"session-selector-drawer-content"],[3,"sessionSelected","sessionReloaded","userId","appName","sessionId"],[1,"session-selector-current-id-label"],[1,"session-selector-current-id-row"],["textClass","session-selector-current-id-value",3,"save","value","displayValue","tooltip"],[1,"session-selector-current-real-id-row",2,"display","flex","align-items","center","gap","4px"],[1,"session-selector-current-real-id-value",3,"title"],["mat-icon-button","","matTooltip","Copy session ID","aria-label","Copy session ID",1,"session-selector-action-button",3,"click"],["mat-button","",3,"matTooltip"],["mat-button","","color","warn",3,"matTooltip"],["mat-button","",3,"click","matTooltip"],["mat-button","","color","warn",3,"click","matTooltip"],[3,"jumpToInvocation","closePanel","tabChange","sessionSelected","evalCaseSelected","editEvalCaseRequested","testSelected","evalSetIdSelected","returnToSession","evalNotInstalled","page","closeSelectedEvent","openImageDialog","openAddItemDialog","enterBuilderMode","showAgentStructureGraph","switchToEvent","switchToTraceView","drillDownNodePath","selectEventById","isApplicationSelectorEnabledObs","showSidePanel","appName","userId","sessionId","isViewOnlySession","isViewOnlyAppNameMismatch","traceData","eventData","currentSessionState","artifacts","selectedEvent","selectedEventIndex","renderedEventGraph","rawSvgString","selectedEventGraphPath","llmRequest","llmResponse","disableBuilderIcon","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab"],[3,"exitBuilderMode","closePanel","appNameInput"],[1,"resize-handler"],[1,"builder-exit-button"],["mat-icon-button","","matTooltip","Accept",1,"builder-mode-action-button",3,"click"],["mat-icon-button","","matTooltip","Exit Builder Mode",1,"builder-mode-action-button",3,"click"],["mat-icon-button","","matTooltip","Builder Assistant",1,"builder-mode-action-button",3,"click"],[3,"toggleSidePanelRequest","builderAssistantCloseRequest","showSidePanel","showBuilderAssistant","appNameInput"],[1,"chat-card"],[1,"empty-state-container"],[1,"warning"],[1,"error"],[1,"chat-sub-toolbar"],[2,"font-weight","500","font-size","14px","color","var(--mat-sys-on-surface)"],[2,"flex-grow","1"],["mat-icon-button","",1,"toolbar-icon-button",3,"click","matTooltip","disabled"],["mat-button","","matTooltip","Compare with expected",2,"height","32px","line-height","32px","padding","0 12px","border-radius","16px","margin-left","8px","margin-right","8px",3,"color"],[3,"appName","agentReadme","userInput","hideIntermediateEvents","uiEvents","showBranches","traceData","isTokenStreamingEnabled","useSse","isChatMode","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","userEditEvalCaseMessage","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[1,"file-view-container",2,"padding","20px","display","flex","flex-direction","column","align-items","center","justify-content","center","height","100%"],["hideSingleSelectionIndicator","",3,"change","value"],["value","events"],["value","traces"],[1,"filter-bar-container",3,"click"],[1,"filter-chip",3,"matMenuTriggerFor","matTooltip"],["matTooltip","Hide intermediate events to only show final results",1,"filter-chip"],["type","button","matTooltip","Add a filter",1,"add-filter-btn",3,"matMenuTriggerFor"],["type","button","matTooltip","Clear all filters",1,"add-filter-btn"],[1,"filter-panel"],["mat-menu-item","","matTooltip","Filter events by a specific invocation","matTooltipPosition","right"],["mat-menu-item","","matTooltip","Filter events generated by a specific node","matTooltipPosition","right"],["mat-menu-item","","matTooltip","Hide intermediate events to only show final results","matTooltipPosition","right"],[1,"filter-panel",3,"closed"],["mat-menu-item","","matTooltipPosition","right",3,"matTooltip"],["mat-menu-item",""],[1,"filter-chip",3,"click","matMenuTriggerFor","matTooltip"],[1,"chip-label",3,"title"],[1,"chip-remove",3,"click"],["matTooltip","Hide intermediate events to only show final results",1,"filter-chip",3,"click"],["type","button","matTooltip","Add a filter",1,"add-filter-btn",3,"click","matMenuTriggerFor"],["type","button","matTooltip","Clear all filters",1,"add-filter-btn",3,"click"],["mat-menu-item","","matTooltip","Filter events by a specific invocation","matTooltipPosition","right",3,"click"],["mat-menu-item","","matTooltip","Filter events generated by a specific node","matTooltipPosition","right",3,"click"],["mat-menu-item","","matTooltip","Hide intermediate events to only show final results","matTooltipPosition","right",3,"click"],["mat-menu-item","","matTooltipPosition","right",3,"click","matTooltip"],[2,"font-size","16px","width","16px","height","16px","margin-right","8px","color","var(--mat-sys-primary)"],["mat-menu-item","",3,"click"],["mat-button","","matTooltip","Compare with expected",2,"height","32px","line-height","32px","padding","0 12px","border-radius","16px","margin-left","8px","margin-right","8px",3,"click"],[2,"font-size","20px","width","20px","height","20px","line-height","20px","margin-right","4px","vertical-align","middle"],[2,"font-size","13px","font-weight","500","vertical-align","middle"],["mat-icon-button","","aria-label","More options",1,"toolbar-icon-button",3,"matMenuTriggerFor","matTooltip"],["xPosition","before"],[2,"font-size","20px","width","20px","height","20px","line-height","20px","margin-right","8px","vertical-align","middle"],[2,"vertical-align","middle"],[3,"userInputChange","toggleHideIntermediateEvents","toggleSse","clickEvent","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","fileSelect","removeFile","removeStateUpdate","sendMessage","stopMessage","updateState","toggleAudioRecording","toggleVideoRecording","longRunningResponseComplete","manualScroll","appName","agentReadme","userInput","hideIntermediateEvents","uiEvents","showBranches","traceData","isTokenStreamingEnabled","useSse","isChatMode","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"userInputChange","userEditEvalCaseMessageChange","clickEvent","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","userEditEvalCaseMessage","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[1,"eval-result-summary",2,"margin","0","padding","8px 24px","background","var(--mat-sys-surface-container)","border-bottom","1px solid var(--mat-sys-outline-variant)","display","flex","align-items","center"],[1,"side-by-side-layout"],[3,"appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","traceData","isChatMode","evalCase","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[2,"display","flex","gap","12px","align-items","center","flex-wrap","wrap"],[1,"metric-block",2,"position","relative","display","flex","flex-direction","column","gap","2px","background","var(--mat-sys-surface-container-high)","padding","6px 12px","border-radius","6px","flex-shrink","0","cursor","pointer",3,"border"],[1,"metric-block",2,"position","relative","display","flex","flex-direction","column","gap","2px","background","var(--mat-sys-surface-container-high)","padding","6px 12px","border-radius","6px","flex-shrink","0","cursor","pointer"],[2,"color","var(--mat-sys-on-surface-variant)","font-size","11px","font-weight","500"],[2,"display","flex","align-items","baseline","gap","4px"],[2,"font-size","16px","font-weight","600"],[2,"color","var(--mat-sys-on-surface-variant)","font-size","14px","font-weight","500"],[1,"metric-tooltip"],[1,"tooltip-title"],[1,"tooltip-subtitle",2,"font-size","10px","color","var(--mat-sys-on-surface-variant)","margin-bottom","4px"],[1,"tooltip-desc",2,"margin-top","8px","border-top","1px solid var(--mat-sys-outline-variant)","padding-top","6px","margin-bottom","0"],[1,"side-panel-half"],[1,"panel-header"],[3,"manualScroll","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"toggleHideIntermediateEvents","toggleSse","userInputChange","userEditEvalCaseMessageChange","clickEvent","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","fileSelect","removeFile","removeStateUpdate","sendMessage","updateState","toggleAudioRecording","toggleVideoRecording","longRunningResponseComplete","manualScroll","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","traceData","isTokenStreamingEnabled","useSse","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","userEditEvalCaseMessage","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"manualScroll","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","traceData","isChatMode","evalCase","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[2,"font-size","48px","width","48px","height","48px","color","var(--mat-sys-on-surface-variant)"],[2,"margin-top","16px"],[2,"color","var(--mat-sys-on-surface-variant)"],[3,"close","appName","preloadedAppData","preloadedLightGraphSvg","preloadedDarkGraphSvg","startPath"]],template:function(A,t){if(A&1&&(Ot(rSA),I(0,"mat-toolbar",12)(1,"div",13)(2,"button",14),U("click",function(){return t.toggleSidePanel()}),I(3,"mat-icon"),D(4,"menu"),h()(),I(5,"div",15),T(6,cSA,1,1,"ng-container")(7,ISA,12,3),h(),I(8,"div",16)(9,"button",17),U("click",function(){return t.toggleAppSelectorDrawer()}),I(10,"mat-icon",18),D(11,"robot_2"),h(),I(12,"span",19),D(13),h(),T(14,BSA,2,0,"mat-icon",20),I(15,"mat-icon",21),D(16,"arrow_drop_down"),h()(),T(17,ESA,6,3),h()(),T(18,NSA,10,5,"div",22),I(19,"button",23)(20,"mat-icon"),D(21,"account_circle"),h()(),I(22,"mat-menu",24,0)(24,"div",25),U("click",function(o){return o.stopPropagation()}),I(25,"div",26)(26,"span",27),D(27,"User ID"),h(),lA(28,"span",28),I(29,"button",29),U("click",function(){return t.saveUserId("user")}),I(30,"mat-icon"),D(31,"restart_alt"),h()()(),I(32,"div",30)(33,"app-inline-edit",31),U("save",function(o){return t.saveUserId(o)}),h()()()()(),I(34,"mat-drawer-container",32)(35,"mat-drawer",33,1),U("closedStart",function(){return t.onSelectorDrawerClosed()})("opened",function(){return t.onSelectorDrawerOpened()}),T(37,TSA,20,4)(38,zSA,18,8),h(),I(39,"mat-drawer-container",34)(40,"mat-drawer",35,2),T(42,PSA,1,23,"app-side-panel",36)(43,jSA,2,1),h(),T(44,VSA,12,5,"div",37)(45,SkA,5,4,"div",38),h()(),T(46,kkA,1,5,"app-agent-structure-graph-dialog",39)),A&2){let n=Bi(23);Q(6),O(t.logoComponent?6:7),Q(7),nA(t.isLoadedAppUnavailable()?t.unavailableAppName():t.appName||"Select an app"),Q(),O(t.isLoadedAppUnavailable()?14:-1),Q(3),O(t.isBuilderMode()?-1:17),Q(),O(t.appName?18:-1),Q(),H("matMenuTriggerFor",n),Q(14),H("value",t.userId)("placeholder",t.i18n.userIdInputPlaceholder),Q(2),_A("match-side-panel-width",t.showSidePanel),H("opened",t.showAppSelectorDrawer||t.showSessionSelectorDrawer)("autoFocus",!1),Q(2),O(t.showAppSelectorDrawer?37:t.showSessionSelectorDrawer?38:-1),Q(3),H("mode",t.isMobile()?"over":"side"),Q(2),O(t.isBuilderMode()?43:42),Q(2),O(t.isBuilderMode()?44:45),Q(2),O(t.showAgentStructureOverlay?46:-1)}},dependencies:[u7,t7,Am,rn,Q7,bm,fn,Gn,Kn,WC,x1,zt,ki,yi,s2,hs,Gs,tg,qf,uT,Kc,Zo,ka,Es,h1,c6,xE,QE,w5,Sy,Ny,gs,bI,Q1],styles:['.expand-side-drawer[_ngcontent-%COMP%]{position:relative;top:4%;left:1%}.chat-container[_ngcontent-%COMP%]{width:100%;height:100%;max-width:100%;margin:auto;display:flex;flex-direction:column;flex:1}.chat-container.side-by-side[_ngcontent-%COMP%]{max-width:100%}.side-by-side-layout[_ngcontent-%COMP%]{display:flex;flex-direction:row;width:100%;height:100%;flex:1;overflow:hidden;gap:16px;padding:16px;box-sizing:border-box}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;height:100%;min-width:0;background-color:var(--mat-sys-surface-container-low);border-radius:8px;overflow:hidden}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%] .panel-header[_ngcontent-%COMP%]{padding:6px 16px;font-size:14px;font-weight:600;color:var(--mat-sys-on-surface);border-bottom:1px solid var(--mat-sys-outline-variant)}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%] app-chat-panel[_ngcontent-%COMP%]{flex:1;overflow:hidden;display:flex;flex-direction:column}.event-container[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.chat-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow:hidden;flex:1;min-height:12%;min-width:300px;box-shadow:none;border-radius:12px 0 0}.chat-card[_ngcontent-%COMP%] app-chat-panel[_ngcontent-%COMP%]{flex:1;min-height:0}.chat-card.no-side-panel[_ngcontent-%COMP%]{border-radius:0}.loading-bar[_ngcontent-%COMP%]{width:100px;margin:15px}.chat-messages[_ngcontent-%COMP%]{flex-grow:1;overflow-y:auto;padding:20px;margin-top:16px}.content-bubble[_ngcontent-%COMP%]{padding:5px 20px;margin:5px;border-radius:20px;max-width:80%;font-size:14px;font-weight:400;position:relative;display:inline-block}.function-event-button[_ngcontent-%COMP%]{margin:5px 5px 10px}.function-event-button-highlight[_ngcontent-%COMP%]{border-color:var(--mat-sys-primary)!important;color:var(--mat-sys-on-primary)!important}.role-user[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center}.role-user[_ngcontent-%COMP%] .content-bubble[_ngcontent-%COMP%]{align-self:flex-end;color:var(--mat-sys-on-primary-container);background-color:var(--mat-sys-primary-container);box-shadow:none}.role-bot[_ngcontent-%COMP%]{display:flex;align-items:center}.role-bot[_ngcontent-%COMP%] .content-bubble[_ngcontent-%COMP%]{align-self:flex-start;color:var(--mat-sys-on-surface);background-color:var(--mat-sys-surface-container-high);box-shadow:none}.role-bot[_ngcontent-%COMP%]:focus-within .content-bubble[_ngcontent-%COMP%]{border:1px solid var(--mat-sys-outline)}.message-textarea[_ngcontent-%COMP%]{max-width:100%;border:none;font-family:Google Sans,Helvetica Neue,sans-serif}.message-textarea[_ngcontent-%COMP%]:focus{outline:none}.edit-message-buttons-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}.content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%]{visibility:hidden;position:absolute;left:10px;overflow:hidden;border-radius:20px;padding:5px 20px;margin-bottom:10px;font-size:16px}.content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .actual-result[_ngcontent-%COMP%]{border-right:2px solid var(--mat-sys-outline-variant);padding-right:8px;min-width:350px;max-width:350px}.content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .expected-result[_ngcontent-%COMP%]{padding-left:12px;min-width:350px;max-width:350px}.content-bubble[_ngcontent-%COMP%]:hover .eval-compare-container[_ngcontent-%COMP%]{visibility:visible}.actual-expected-compare-container[_ngcontent-%COMP%]{display:flex}.score-threshold-container[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:10px;align-items:center;margin-top:15px;font-size:14px;font-weight:600}.eval-response-header[_ngcontent-%COMP%]{padding-bottom:5px;border-bottom:2px solid var(--mat-sys-outline-variant);font-style:italic;font-weight:700}.header-expected[_ngcontent-%COMP%]{color:var(--mat-sys-tertiary)}.header-actual[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.eval-case-edit-button[_ngcontent-%COMP%]{cursor:pointer;margin-left:4px;margin-right:4px}.eval-pass[_ngcontent-%COMP%]{display:flex;color:#2e7d32}.eval-fail[_ngcontent-%COMP%]{display:flex;color:var(--mat-sys-error)}.navigation-button-sidepanel[_ngcontent-%COMP%]{margin-left:auto;margin-right:20px}.fab-button[_ngcontent-%COMP%]{position:fixed;bottom:200px;right:100px}.sidepanel-toggle[_ngcontent-%COMP%]{position:relative;top:100px}.side-drawer[_ngcontent-%COMP%]{color:var(--chat-side-drawer-color);border-radius:0}.file-preview[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;margin-bottom:8px}.file-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:5px;padding:5px;border-radius:4px}.empty-state-container[_ngcontent-%COMP%]{color:var(--chat-empty-state-container-color);height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;font-family:Google Sans,sans-serif;font-weight:400;letter-spacing:normal;line-height:24px;font-size:18px}.empty-state-container[_ngcontent-%COMP%] pre.warning[_ngcontent-%COMP%]{color:var(--chat-warning-color)}.empty-state-container[_ngcontent-%COMP%] pre.error[_ngcontent-%COMP%]{color:var(--chat-error-color)}.new-session-button[_ngcontent-%COMP%]{margin-top:0;width:130px;height:28px;font-size:14px}.adk-checkbox[_ngcontent-%COMP%]{position:fixed;bottom:0;left:0;right:0;margin-bottom:20px;margin-left:20px}.app-toolbar[_ngcontent-%COMP%]{height:48px;min-height:48px!important;display:flex;align-items:center;font-family:Google Sans,sans-serif;font-size:13px;padding:0 8px!important;z-index:1}.toolbar-group[_ngcontent-%COMP%]{display:flex;align-items:center;flex-shrink:0}.toolbar-agent-group[_ngcontent-%COMP%]{margin-right:6px}.toolbar-session-group[_ngcontent-%COMP%]{flex-shrink:1;min-width:0;flex:1}.toolbar-logo[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;margin-right:16px;flex-shrink:0}.toolbar-logo-text[_ngcontent-%COMP%]{font-family:Google Sans,sans-serif;font-size:14px;font-weight:500;white-space:nowrap}.disclosure-info-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;opacity:.7;cursor:pointer;margin-right:16px;color:var(--chat-toolbar-icon-color)}.toolbar-content[_ngcontent-%COMP%]{display:flex;align-items:center;flex:1;min-width:0}.drawer-container[_ngcontent-%COMP%]{height:calc(100% - 48px)}.side-panel-container[_ngcontent-%COMP%]{width:100%;height:100%}.toolbar-actions[_ngcontent-%COMP%]{margin-left:auto;display:flex;align-items:center;flex-shrink:0}.toolbar-session-text[_ngcontent-%COMP%]{color:var(--chat-toolbar-session-text-color);font-family:Google Sans,sans-serif;font-size:13px;font-style:normal;font-weight:500;text-transform:uppercase;flex-shrink:0}.toolbar-session-id[_ngcontent-%COMP%]{color:var(--chat-toolbar-session-id-color);font-family:Google Sans Mono,monospace;font-size:13px;margin-left:5px}.readonly-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background-color:var(--mat-sys-primary-container)!important;color:var(--mat-sys-on-primary-container)!important;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500;gap:6px}.readonly-chip[_ngcontent-%COMP%] .chip-label[_ngcontent-%COMP%]{text-transform:uppercase;font-size:11px;font-weight:700;opacity:.9}.readonly-chip[_ngcontent-%COMP%] .chip-value[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace}.readonly-chip[_ngcontent-%COMP%] .chip-close-button[_ngcontent-%COMP%]{width:24px!important;height:24px!important;min-width:24px!important;padding:0!important;display:flex!important;align-items:center;justify-content:center;color:inherit!important;opacity:.8;margin-left:4px}.readonly-chip[_ngcontent-%COMP%] .chip-close-button[_ngcontent-%COMP%]:hover{opacity:1;background-color:#fff3!important}.toolbar-session-id-container[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:5px}.toolbar-session-id-container[_ngcontent-%COMP%] .toolbar-session-id[_ngcontent-%COMP%]{margin-left:0}.toolbar-icon-button[_ngcontent-%COMP%]{color:var(--chat-toolbar-icon-color);background:transparent!important;border:none!important;box-shadow:none!important}.toolbar-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.small-icon-button[_ngcontent-%COMP%]{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:0!important}.small-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px!important;width:18px!important;height:18px!important}.toolbar-user-id-container[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:5px}.toolbar-user-id-input[_ngcontent-%COMP%]{width:140px;height:24px;border:1px solid var(--chat-toolbar-session-text-color);border-radius:4px;color:var(--chat-toolbar-session-id-color);padding:0 6px;font-family:Google Sans Mono,monospace;font-size:12px}.toolbar-user-id-input[_ngcontent-%COMP%]:focus{outline:1px solid var(--chat-toolbar-icon-color)}.user-avatar-button[_ngcontent-%COMP%]{margin-left:auto;flex-shrink:0}.user-avatar-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:24px;width:24px;height:24px}.user-menu-panel[_ngcontent-%COMP%]{padding:16px;min-width:240px}.user-menu-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.user-menu-avatar-icon[_ngcontent-%COMP%]{font-size:36px;width:36px;height:36px;color:var(--chat-toolbar-icon-color)}.user-menu-label[_ngcontent-%COMP%]{font-size:14px;font-weight:500;color:var(--chat-toolbar-session-text-color);text-transform:uppercase}.user-menu-content[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.user-menu-id[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:14px;color:var(--chat-toolbar-session-id-color);word-break:break-all}.user-menu-input[_ngcontent-%COMP%]{flex:1;height:28px;border:1px solid var(--chat-toolbar-session-text-color);border-radius:4px;color:var(--chat-toolbar-session-id-color);padding:0 8px;font-family:Google Sans Mono,monospace;font-size:13px;background:transparent}.user-menu-input[_ngcontent-%COMP%]:focus{outline:1px solid var(--chat-toolbar-icon-color)}[_nghost-%COMP%] pre{white-space:pre-wrap;word-break:break-word;overflow-x:auto;max-width:100%}.readonly-badge[_ngcontent-%COMP%]{color:var(--mat-sys-on-primary-container)!important;background-color:var(--mat-sys-primary-container)!important;border-radius:16px;padding:4px 12px;display:flex;align-items:center;margin-left:8px;font-family:Google Sans,sans-serif;font-size:13px;line-height:18px;gap:4px;white-space:nowrap}.readonly-badge[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;flex-shrink:0}.readonly-session-message[_ngcontent-%COMP%]{display:block;color:var(--chat-toolbar-session-text-color);font-family:Google Sans,sans-serif;font-size:13px;margin-left:1em;font-weight:400;line-height:18px;letter-spacing:.3px;flex-shrink:1}.builder-mode-container[_ngcontent-%COMP%]{position:relative;width:100%;height:100vh;display:flex;flex-direction:column}.builder-exit-button[_ngcontent-%COMP%]{position:absolute;top:20px;right:20px;display:flex;gap:8px}.builder-mode-action-button[_ngcontent-%COMP%]{color:var(--builder-text-tertiary-color)!important;border-radius:50%!important;transition:all .2s ease!important;margin:0!important;padding:0!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;border:1px solid var(--builder-tool-item-border-color)!important;box-shadow:0 2px 4px #0000001a!important;display:flex!important;align-items:center!important;justify-content:center!important}.builder-mode-action-button[_ngcontent-%COMP%]:hover{box-shadow:0 4px 8px #00000026!important}.builder-mode-action-button.active[_ngcontent-%COMP%]{color:#fff!important;border-color:var(--builder-button-primary-background-color)!important}.builder-mode-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}app-canvas[_ngcontent-%COMP%]{width:100%!important;height:100%!important;flex:1!important;display:flex!important;flex-direction:column!important;min-height:0!important}.build-mode-container[_ngcontent-%COMP%]{display:flex;width:100%;height:100%}.build-left-panel[_ngcontent-%COMP%], .build-right-panel[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;border:1px solid var(--builder-border-color);margin:10px;border-radius:8px}.selector-group[_ngcontent-%COMP%]{display:flex;align-items:center;border-radius:6px;border:1px solid var(--mat-sys-outline-variant, #c4c7c5);margin-right:8px;flex-shrink:0;height:32px;overflow:hidden}.selector-group[_ngcontent-%COMP%] .toolbar-icon-button[_ngcontent-%COMP%]{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.selector-group[_ngcontent-%COMP%] .toolbar-icon-button[_ngcontent-%COMP%] .mdc-icon-button__ripple{border-radius:4px;inset:1px}.selector-group[_ngcontent-%COMP%] .toolbar-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.selector-group-divider[_ngcontent-%COMP%]{width:1px;height:16px;background-color:var(--mat-sys-outline-variant, #c4c7c5);flex-shrink:0}.selector-button[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;padding:4px 12px;margin-right:1px;border-radius:6px;border:none;background:transparent;cursor:pointer;color:var(--chat-toolbar-icon-color);font-family:Google Sans,sans-serif;font-size:13px;font-weight:500;height:100%;flex-shrink:0;white-space:nowrap;width:auto;max-width:220px;overflow:hidden;transition:background-color .15s ease;position:relative;z-index:0}.selector-button[_ngcontent-%COMP%]:before{content:"";position:absolute;inset:1px;border-radius:4px;background-color:var(--mat-icon-button-state-layer-color, var(--mat-sys-on-surface-variant));opacity:0;pointer-events:none;z-index:-1;transition:opacity .15s ease}.selector-button[_ngcontent-%COMP%]:hover:before{opacity:var(--mat-icon-button-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.selector-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;flex-shrink:0}.new-session-button[_ngcontent-%COMP%]{width:auto!important}.new-session-button.icon-only[_ngcontent-%COMP%]{width:32px!important;padding:0!important;justify-content:center}.selector-label[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.selector-caret[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;flex-shrink:0;margin-left:auto;opacity:.7}.selector-drawer-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 20px;height:48px;flex-shrink:0}.selector-drawer-title[_ngcontent-%COMP%]{font-size:16px;font-weight:500;font-family:Google Sans,sans-serif}.selector-drawer[_ngcontent-%COMP%]{width:320px;background-color:var(--mat-sys-surface, #fff)}.selector-drawer[_ngcontent-%COMP%] .mat-drawer-inner-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.selector-drawer.match-side-panel-width[_ngcontent-%COMP%]{width:var(--side-drawer-width)}.app-selector-search[_ngcontent-%COMP%]{padding:0 12px 4px;flex-shrink:0}.app-selector-search-field[_ngcontent-%COMP%]{width:100%;font-size:13px}.app-selector-search-field[_ngcontent-%COMP%] .mat-mdc-form-field-infix[_ngcontent-%COMP%]{min-height:36px;padding-top:6px!important;padding-bottom:6px!important}.app-selector-search-field[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--chat-toolbar-session-text-color);font-size:18px;width:18px;height:18px}.app-selector-list[_ngcontent-%COMP%]{flex:1;overflow-y:auto;padding:0 8px}.app-selector-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:transparent;cursor:pointer;border-radius:8px;font-family:Google Sans Mono,monospace;font-size:13px;color:var(--chat-toolbar-icon-color);text-align:left;transition:background-color .15s ease}.app-selector-item[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant, rgba(0, 0, 0, .04))}.app-selector-item.selected[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, #d7e3f7);font-weight:500}.app-selector-item-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px;flex-shrink:0;color:var(--chat-toolbar-session-text-color)}.app-selector-check[_ngcontent-%COMP%]{margin-left:auto;font-size:18px;width:18px;height:18px}.app-selector-item-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-selector-loading[_ngcontent-%COMP%]{display:flex;justify-content:center;padding:24px}.app-selector-empty[_ngcontent-%COMP%]{text-align:center;padding:24px;color:var(--chat-toolbar-session-text-color);font-style:italic}.session-selector-current-id[_ngcontent-%COMP%]{padding:8px 20px;border-bottom:1px solid var(--mat-sys-outline-variant, #c4c7c5)}.session-selector-current-id-label[_ngcontent-%COMP%]{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--mat-sys-on-surface-variant, #444746)}.session-selector-current-id-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.session-selector-current-id-value[_ngcontent-%COMP%]{font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px;font-family:Google Sans,sans-serif;color:var(--mat-sys-on-surface, #1a1c20);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0}.session-selector-current-real-id-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.session-selector-current-real-id-value[_ngcontent-%COMP%]{font-size:11px;font-family:Google Sans Mono,monospace;color:var(--chat-toolbar-session-id-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0;opacity:.7}.session-selector-action-button[_ngcontent-%COMP%]{flex-shrink:0;width:28px!important;height:28px!important;padding:0!important}.session-selector-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}.session-selector-drawer-content[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.build-panel-header[_ngcontent-%COMP%]{padding:16px 20px;border-bottom:1px solid var(--builder-border-color);border-radius:8px 8px 0 0}.build-panel-header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0;color:var(--builder-text-primary-color);font-size:16px;font-weight:500;font-family:Google Sans,Helvetica Neue,sans-serif}.build-panel-content[_ngcontent-%COMP%]{flex:1;padding:20px;color:var(--builder-text-secondary-color);overflow-y:auto}.build-panel-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:14px;line-height:1.5}.app-name-option[_ngcontent-%COMP%], .app-select[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-family:Google Sans Mono,monospace;font-style:normal;font-weight:400;padding-left:unset}.adk-web-developer-ui-disclaimer[_ngcontent-%COMP%]{padding-left:4px;padding-bottom:4px;font-size:10px;color:var(--adk-web-text-color-light-gray)}.menu-check-icon.inactive[_ngcontent-%COMP%]{visibility:hidden}.logo-narrow[_ngcontent-%COMP%]{display:none}@media(max-width:900px){.logo-wide[_ngcontent-%COMP%]{display:none}.logo-narrow[_ngcontent-%COMP%]{display:inline}}@media(max-width:768px){.toolbar-agent-group[_ngcontent-%COMP%] .selector-label[_ngcontent-%COMP%], .toolbar-session-group[_ngcontent-%COMP%] .selector-label[_ngcontent-%COMP%]{display:none!important}.selector-caret[_ngcontent-%COMP%]{margin-left:2px!important}.selector-group[_ngcontent-%COMP%], .toolbar-agent-group[_ngcontent-%COMP%]{margin-right:4px!important}.chat-card[_ngcontent-%COMP%]{min-width:0!important}.side-drawer[_ngcontent-%COMP%]{width:85vw!important;max-width:360px!important}.selector-drawer[_ngcontent-%COMP%]{width:100vw!important;max-width:100%!important}.side-by-side-layout[_ngcontent-%COMP%]{flex-direction:column!important;overflow-y:auto!important;gap:12px!important;padding:12px!important}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%]{height:400px!important;flex:none!important}.chat-sub-toolbar[_ngcontent-%COMP%]{padding:0 8px!important;gap:4px!important;overflow-x:auto;white-space:nowrap}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-bar-container[_ngcontent-%COMP%]{margin-left:8px!important;gap:4px!important}}@media(max-width:400px){.toolbar-logo[_ngcontent-%COMP%]{display:none!important}}.chat-sub-toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 8px 0 20px;background-color:var(--mat-sys-surface-container);border-bottom:1px solid var(--mat-sys-outline-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%]{border-radius:16px;height:28px;align-items:center}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%] .mat-button-toggle-label-content{line-height:28px;padding:0 12px;font-size:13px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-bar-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;background-color:transparent;border:none;margin-left:16px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;height:28px;cursor:pointer;transition:background-color .2s ease}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-label[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--mat-sys-on-surface-variant);padding:0;margin-left:4px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]:hover{color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:transparent;border:1px dashed var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;font-weight:500;height:28px;cursor:pointer;transition:all .2s ease;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant);border-color:var(--mat-sys-outline);color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;margin-right:4px} .filter-panel{min-width:max-content!important;max-width:50vw} .filter-panel .mat-mdc-menu-item{min-height:32px!important;font-size:12px!important} .filter-panel .mat-mdc-menu-item .mat-mdc-menu-item-text, .filter-panel .mat-mdc-menu-item .mdc-list-item__primary-text{font-size:12px!important;line-height:normal}.metric-block[_ngcontent-%COMP%]:hover .metric-tooltip[_ngcontent-%COMP%]{visibility:visible!important;opacity:1!important}.metric-tooltip[_ngcontent-%COMP%]{visibility:hidden;opacity:0;position:absolute;z-index:100;top:110%;left:0;background:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;padding:12px;width:220px;box-shadow:0 4px 12px #00000026;transition:opacity .15s ease,visibility .15s ease;pointer-events:none}.metric-tooltip[_ngcontent-%COMP%] .tooltip-title[_ngcontent-%COMP%]{font-weight:600;font-size:13px;margin-bottom:4px;color:var(--mat-sys-on-surface)}.metric-tooltip[_ngcontent-%COMP%] .tooltip-desc[_ngcontent-%COMP%]{font-size:11px;color:var(--mat-sys-on-surface-variant);margin-bottom:8px;white-space:normal;line-height:1.4}.metric-tooltip[_ngcontent-%COMP%] .tooltip-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:11px;border-top:1px solid var(--mat-sys-outline-variant);padding-top:6px}.metric-tooltip[_ngcontent-%COMP%] .tooltip-item[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:4px}.metric-tooltip[_ngcontent-%COMP%] .tooltip-label[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-weight:400}.metric-tooltip[_ngcontent-%COMP%] .tooltip-value[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface)}.logo-title-container[_ngcontent-%COMP%]{position:relative;display:inline-flex;align-items:center;cursor:default}.logo-title-container[_ngcontent-%COMP%]:hover .custom-tooltip[_ngcontent-%COMP%]{visibility:visible;opacity:1}.custom-tooltip[_ngcontent-%COMP%]{visibility:hidden;opacity:0;position:absolute;z-index:100;top:110%;left:50%;transform:translate(-50%);background:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;padding:12px;width:250px;box-shadow:0 4px 12px #00000026;transition:opacity .15s ease,visibility .15s ease;pointer-events:none;white-space:normal}.custom-tooltip[_ngcontent-%COMP%] .tooltip-title[_ngcontent-%COMP%]{font-weight:600;font-size:13px;margin-bottom:4px;color:var(--mat-sys-on-surface)}.custom-tooltip[_ngcontent-%COMP%] .tooltip-desc[_ngcontent-%COMP%]{font-size:11px;color:var(--mat-sys-on-surface-variant);margin-bottom:8px;line-height:1.4}.custom-tooltip[_ngcontent-%COMP%] .tooltip-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr;gap:4px;font-size:11px;border-top:1px solid var(--mat-sys-outline-variant);padding-top:6px}.custom-tooltip[_ngcontent-%COMP%] .tooltip-item[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:4px}.custom-tooltip[_ngcontent-%COMP%] .tooltip-label[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-weight:400}.custom-tooltip[_ngcontent-%COMP%] .tooltip-value[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface)}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spin 1s linear infinite}']})};var TE=class i{static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-root"]],decls:1,vars:0,template:function(A,t){A&1&&lA(0,"app-chat")},dependencies:[nD],encapsulation:2})};var NkA=[{path:"",component:TE}],oD=class i{static \u0275fac=function(A){return new(A||i)};static \u0275mod=et({type:i});static \u0275inj=At({imports:[Vf.forRoot(NkA),Vf]})};var aD=class{static getRuntimeConfig(){return window.runtimeConfig}};function FkA(i,e){if(i&1&&(Ln(0,"a",0),$n(1,"img",1),D(2),Xn()),i&2){p();let A=Ki(0),t=Ki(1);Q(),Ma("src",zC(A),mo),Q(),Ee(" ",t," ")}}function LkA(i,e){i&1&&(Ln(0,"div"),D(1," Invalid custom logo config. Make sure that your runtime config specifies both imgUrl and text in the logo field. "),Xn())}var rD=class i{logoConfig=aD.getRuntimeConfig().logo;static \u0275fac=function(A){return new(A||i)};static \u0275cmp=vA({type:i,selectors:[["app-custom-logo"]],decls:4,vars:3,consts:[["href","/"],["width","32px","height","32px",1,"orcas-logo",3,"src"]],template:function(A,t){if(A&1&&(ro(0)(1),T(2,FkA,3,3,"a",0)(3,LkA,2,0,"div")),A&2){let n=so(t.logoConfig==null?null:t.logoConfig.imageUrl);Q();let o=so(t.logoConfig==null?null:t.logoConfig.text);Q(),O(n&&o?2:3)}},styles:[`a[_ngcontent-%COMP%]{color:inherit;text-decoration:none;display:flex;align-items:center;gap:8px} - - - - - - - - - - - - - - - - -`]})};var GkA={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-500":!0,"layout-as-n":!0,"layout-dis-iflx":!0,"layout-al-c":!0},KkA={"layout-w-100":!0},UkA={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-mt-0":!0,"layout-mb-2":!0,"typography-sz-bm":!0,"color-c-n10":!0},TkA={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-500":!0,"layout-pt-3":!0,"layout-pb-3":!0,"layout-pl-5":!0,"layout-pr-5":!0,"layout-mb-1":!0,"border-br-16":!0,"border-bw-0":!0,"border-c-n70":!0,"border-bs-s":!0,"color-bgc-s30":!0,"color-c-n100":!0,"behavior-ho-80":!0},rN={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mb-2":!0,"color-c-n10":!0},OkA=$A(P({},rN),{"typography-sz-tl":!0}),JkA=$A(P({},rN),{"typography-sz-tm":!0}),YkA=$A(P({},rN),{"typography-sz-ts":!0}),HkA={"behavior-sw-n":!0},Z$={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-pl-4":!0,"layout-pr-4":!0,"layout-pt-2":!0,"layout-pb-2":!0,"border-br-6":!0,"border-bw-1":!0,"color-bc-s70":!0,"border-bs-s":!0,"layout-as-n":!0,"color-c-n10":!0},zkA={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0,"color-c-n10":!0},PkA={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0},jkA={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0},VkA={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0},qkA={"typography-f-c":!0,"typography-fs-n":!0,"typography-w-400":!0,"typography-sz-bm":!0,"typography-ws-p":!0,"layout-as-n":!0},WkA=$A(P({},Z$),{"layout-r-none":!0,"layout-fs-c":!0}),ZkA={"layout-el-cv":!0},P$=Hs.merge(GkA,{"color-c-p30":!0}),XkA=Hs.merge(Z$,{"color-c-n5":!0}),$kA=Hs.merge(WkA,{"color-c-n5":!0}),A_A=Hs.merge(TkA,{"color-c-n100":!0}),j$=Hs.merge(OkA,{"color-c-n5":!0}),V$=Hs.merge(JkA,{"color-c-n5":!0}),q$=Hs.merge(YkA,{"color-c-n5":!0}),e_A=Hs.merge(UkA,{"color-c-n5":!0}),W$=Hs.merge(zkA,{"color-c-n60":!0}),t_A=Hs.merge(qkA,{"color-c-n35":!0}),i_A=Hs.merge(PkA,{"color-c-n35":!0}),n_A=Hs.merge(jkA,{"color-c-n35":!0}),o_A=Hs.merge(VkA,{"color-c-n35":!0}),X$={additionalStyles:{Card:{},Button:{"--n-60":"var(--n-100)"},Image:{"max-width":"120px","max-height":"120px",marginLeft:"auto",marginRight:"auto"}},components:{AudioPlayer:{},Button:{"layout-pt-2":!0,"layout-pb-2":!0,"layout-pl-5":!0,"layout-pr-5":!0,"border-br-2":!0,"border-bw-0":!0,"border-bs-s":!0,"color-bgc-p30":!0,"color-c-n100":!0,"behavior-ho-70":!0},Card:{"border-br-4":!0,"color-bgc-p100":!0,"color-bc-n90":!0,"border-bw-1":!0,"border-bs-s":!0,"layout-pt-4":!0,"layout-pb-4":!0,"layout-pl-4":!0,"layout-pr-4":!0},CheckBox:{element:{"layout-m-0":!0,"layout-mr-2":!0,"layout-p-2":!0,"border-br-12":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bgc-p100":!0,"color-bc-p60":!0,"color-c-n30":!0,"color-c-p30":!0},label:{"color-c-p30":!0,"typography-f-sf":!0,"typography-v-r":!0,"typography-w-400":!0,"layout-flx-1":!0,"typography-sz-ll":!0},container:{"layout-dsp-iflex":!0,"layout-al-c":!0}},Column:{},DateTimeInput:{container:{},label:{},element:{"layout-pt-2":!0,"layout-pb-2":!0,"layout-pl-3":!0,"layout-pr-3":!0,"border-br-12":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bgc-p100":!0,"color-bc-p60":!0,"color-c-n30":!0}},Divider:{"color-bgc-n90":!0,"layout-mt-6":!0,"layout-mb-6":!0},Image:{all:{"border-br-50pc":!0,"layout-el-cv":!0,"layout-w-100":!0,"layout-h-100":!0,"layout-dsp-flexhor":!0,"layout-al-c":!0,"layout-sp-c":!0,"layout-mb-3":!0},avatar:{},header:{},icon:{},largeFeature:{},mediumFeature:{},smallFeature:{}},Icon:{"border-br-1":!0,"layout-p-2":!0,"color-bgc-n98":!0,"layout-dsp-flexhor":!0,"layout-al-c":!0,"layout-sp-c":!0},List:{"layout-g-4":!0,"layout-p-2":!0},Modal:{backdrop:{"color-bbgc-p60_20":!0},element:{"border-br-2":!0,"color-bgc-p100":!0,"layout-p-4":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bc-p80":!0}},MultipleChoice:{container:{},label:{},element:{}},Row:{"layout-g-4":!0},Slider:{container:{},label:{},element:{}},Tabs:{container:{},controls:{all:{},selected:{}},element:{}},Text:{all:{"layout-w-100":!0,"layout-g-2":!0,"color-c-p30":!0},h1:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-2":!0,"layout-p-0":!0,"typography-sz-tl":!0},h2:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-2":!0,"layout-p-0":!0,"typography-sz-tl":!0},h3:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-0":!0,"layout-p-0":!0,"typography-sz-ts":!0},h4:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-0":!0,"layout-p-0":!0,"typography-sz-bl":!0},h5:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-0":!0,"layout-p-0":!0,"color-c-n30":!0,"typography-sz-bm":!0,"layout-mb-1":!0},body:{},caption:{}},TextField:{container:{"typography-sz-bm":!0,"layout-w-100":!0,"layout-g-2":!0,"layout-dsp-flexhor":!0,"layout-al-c":!0},label:{"layout-flx-0":!0},element:{"typography-sz-bm":!0,"layout-pt-2":!0,"layout-pb-2":!0,"layout-pl-3":!0,"layout-pr-3":!0,"border-br-12":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bgc-p100":!0,"color-bc-p60":!0,"color-c-n30":!0,"color-c-p30":!0}},Video:{"border-br-5":!0,"layout-el-cv":!0}},elements:{a:P$,audio:KkA,body:e_A,button:A_A,h1:j$,h2:V$,h3:q$,h4:{},h5:{},iframe:HkA,input:XkA,p:W$,pre:t_A,textarea:$kA,video:ZkA},markdown:{p:[...Object.keys(W$)],h1:[...Object.keys(j$)],h2:[...Object.keys(V$)],h3:[...Object.keys(q$)],h4:[],h5:[],ul:[...Object.keys(n_A)],ol:[...Object.keys(i_A)],li:[...Object.keys(o_A)],a:[...Object.keys(P$)],strong:[],em:[]}};var sD=class i{nodes=[];subAgentIdCounter=1;selectedToolSubject=new gi(void 0);selectedNodeSubject=new gi(void 0);selectedCallbackSubject=new gi(void 0);loadedAgentDataSubject=new gi(void 0);agentToolsMapSubject=new gi(new Map);agentToolsSubject=new gi(void 0);newAgentToolBoardSubject=new gi(void 0);agentCallbacksMapSubject=new gi(new Map);agentCallbacksSubject=new gi(void 0);agentToolDeletionSubject=new gi(void 0);deleteSubAgentSubject=new gi("");addSubAgentSubject=new gi({parentAgentName:""});tabChangeSubject=new gi(void 0);agentToolBoardsSubject=new gi(new Map);constructor(){}getNode(e){return this.nodes.find(t=>t.name===e)}getRootNode(){return this.nodes.find(A=>!!A.isRoot)}addNode(e){let A=this.nodes.findIndex(l=>l.name===e.name);A!==-1?this.nodes[A]=e:this.nodes.push(e);let t=/^sub_agent_(\d+)$/,n=e.name.match(t);if(n){let l=parseInt(n[1],10);l>=this.subAgentIdCounter&&(this.subAgentIdCounter=l+1)}let o=this.agentToolsMapSubject.value,a=new Map(o);a.set(e.name,e.tools||[]),this.agentToolsMapSubject.next(a);let r=this.agentCallbacksMapSubject.value,s=new Map(r);s.set(e.name,e.callbacks||[]),this.agentCallbacksMapSubject.next(s),this.setSelectedNode(this.selectedNodeSubject.value)}getNodes(){return this.nodes}clear(){this.nodes=[],this.subAgentIdCounter=1,this.setSelectedNode(void 0),this.setSelectedTool(void 0),this.agentToolsMapSubject.next(new Map),this.agentCallbacksMapSubject.next(new Map),this.setSelectedCallback(void 0),this.setAgentTools(),this.setAgentCallbacks()}getSelectedNode(){return this.selectedNodeSubject.asObservable()}setSelectedNode(e){this.selectedNodeSubject.next(e)}getSelectedTool(){return this.selectedToolSubject.asObservable()}setSelectedTool(e){this.selectedToolSubject.next(e)}getSelectedCallback(){return this.selectedCallbackSubject.asObservable()}setSelectedCallback(e){this.selectedCallbackSubject.next(e)}getNextSubAgentName(){return`sub_agent_${this.subAgentIdCounter++}`}addTool(e,A){let t=this.getNode(e);if(t){let n=t.tools||[];t.tools=[A,...n];let o=this.agentToolsMapSubject.value,a=new Map(o);a.set(e,t.tools),this.agentToolsMapSubject.next(a)}}deleteTool(e,A){let t=this.getNode(e);if(t&&t.tools){let n=t.tools.length;if(t.tools=t.tools.filter(o=>o.name!==A.name),t.tools.lengthr.name===A.name))return{success:!1,error:`Callback with name '${A.name}' already exists`};t.callbacks.push(A),this.agentCallbacksSubject.next({agentName:e,callbacks:t.callbacks});let o=this.agentCallbacksMapSubject.value,a=new Map(o);return a.set(e,t.callbacks),this.agentCallbacksMapSubject.next(a),{success:!0}}catch(t){return{success:!1,error:"Failed to add callback: "+t.message}}}updateCallback(e,A,t){try{let n=this.getNode(e);if(!n)return{success:!1,error:"Agent not found"};if(!n.callbacks)return{success:!1,error:"No callbacks found for this agent"};let o=n.callbacks.findIndex(g=>g.name===A);if(o===-1)return{success:!1,error:"Callback not found"};if(n.callbacks.some((g,C)=>C!==o&&g.name===t.name))return{success:!1,error:`Callback with name '${t.name}' already exists`};let r=P(P({},n.callbacks[o]),t);n.callbacks[o]=r,this.agentCallbacksSubject.next({agentName:e,callbacks:n.callbacks});let s=this.agentCallbacksMapSubject.value,l=new Map(s);return l.set(e,n.callbacks),this.agentCallbacksMapSubject.next(l),this.selectedCallbackSubject.value?.name===A&&this.setSelectedCallback(r),{success:!0}}catch(n){return{success:!1,error:"Failed to update callback: "+n.message}}}deleteCallback(e,A){try{let t=this.getNode(e);if(!t)return{success:!1,error:"Agent not found"};if(!t.callbacks)return{success:!1,error:"No callbacks found for this agent"};let n=t.callbacks.findIndex(r=>r.name===A.name);if(n===-1)return{success:!1,error:"Callback not found"};t.callbacks.splice(n,1),this.agentCallbacksSubject.next({agentName:e,callbacks:t.callbacks});let o=this.agentCallbacksMapSubject.value,a=new Map(o);return a.set(e,t.callbacks),this.agentCallbacksMapSubject.next(a),this.selectedCallbackSubject.value?.name===A.name&&this.setSelectedCallback(void 0),{success:!0}}catch(t){return{success:!1,error:"Failed to delete callback: "+t.message}}}setLoadedAgentData(e){this.loadedAgentDataSubject.next(e)}getLoadedAgentData(){return this.loadedAgentDataSubject.asObservable()}getAgentToolsMap(){return this.agentToolsMapSubject.asObservable()}getAgentCallbacksMap(){return this.agentCallbacksMapSubject.asObservable()}requestSideTabChange(e){this.tabChangeSubject.next(e)}getSideTabChangeRequest(){return this.tabChangeSubject.asObservable()}requestNewTab(e,A){this.newAgentToolBoardSubject.next({toolName:e,currentAgentName:A})}getNewTabRequest(){return this.newAgentToolBoardSubject.asObservable().pipe(Se(A=>A?{tabName:A.toolName,currentAgentName:A.currentAgentName}:void 0))}requestTabDeletion(e){this.agentToolDeletionSubject.next(e)}getTabDeletionRequest(){return this.agentToolDeletionSubject.asObservable()}setAgentToolBoards(e){this.agentToolBoardsSubject.next(e)}getAgentToolBoards(){return this.agentToolBoardsSubject.asObservable()}getCurrentAgentToolBoards(){return this.agentToolBoardsSubject.value}getAgentTools(){return this.agentToolsSubject.asObservable()}getDeleteSubAgentSubject(){return this.deleteSubAgentSubject.asObservable()}setDeleteSubAgentSubject(e){this.deleteSubAgentSubject.next(e)}getAddSubAgentSubject(){return this.addSubAgentSubject.asObservable()}setAddSubAgentSubject(e,A,t){this.addSubAgentSubject.next({parentAgentName:e,agentClass:A,isFromEmptyGroup:t})}setAgentTools(e,A){if(e&&A){this.agentToolsSubject.next({agentName:e,tools:A});let t=this.agentToolsMapSubject.value,n=new Map(t);n.set(e,A),this.agentToolsMapSubject.next(n)}else this.agentToolsSubject.next(void 0)}getAgentCallbacks(){return this.agentCallbacksSubject.asObservable()}setAgentCallbacks(e,A){e&&A?this.agentCallbacksSubject.next({agentName:e,callbacks:A}):this.agentCallbacksSubject.next(void 0)}getParentNode(e,A,t,n){if(e){if(e.name===A.name)return t;for(let o of e.sub_agents){let a=this.getParentNode(o,A,e,n);if(a)return a}if(e.tools){for(let o of e.tools)if(o.toolType==="Agent Tool"){let a=n.get(o.toolAgentName||o.name);if(a){let r=this.getParentNode(a,A,e,n);if(r)return r}}}}}deleteNode(e){this.nodes=this.nodes.filter(A=>A.name!==e.name),this.setSelectedNode(this.selectedNodeSubject.value)}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var lD=class i{constructor(e){this.http=e}apiServerDomain=Rr.getApiServerBaseUrl();getLatestArtifact(e,A,t,n){let o=this.apiServerDomain+`/apps/${A}/users/${e}/sessions/${t}/artifacts/${n}`;return this.http.get(o)}getArtifactVersion(e,A,t,n,o){let a=this.apiServerDomain+`/apps/${A}/users/${e}/sessions/${t}/artifacts/${n}/versions/${o}`;return this.http.get(a)}static \u0275fac=function(A){return new(A||i)(Wo(Mr))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var gD=class i{audioContext=new AudioContext({sampleRate:22e3});lastAudioTime=0;scheduledAudioSources=new Set;playAudio(e){let A=this.combineAudioBuffer(e);A&&this.playPCM(A)}stopAudio(){for(let e of this.scheduledAudioSources)e.onended=null,e.stop();this.scheduledAudioSources.clear(),this.lastAudioTime=this.audioContext.currentTime}combineAudioBuffer(e){if(e.length===0)return;let A=e.reduce((o,a)=>o+a.length,0),t=new Uint8Array(A),n=0;for(let o of e)t.set(o,n),n+=o.length;return t}playPCM(e){let A=new Float32Array(e.length/2);for(let r=0;r=32768&&(s-=65536),A[r]=s/32768}let t=this.audioContext.createBuffer(1,A.length,22e3);t.copyToChannel(A,0);let n=this.audioContext.createBufferSource();n.buffer=t,n.connect(this.audioContext.destination),n.onended=()=>{this.scheduledAudioSources.delete(n)},this.scheduledAudioSources.add(n);let o=this.audioContext.currentTime,a=Math.max(this.lastAudioTime,o);n.start(a),this.lastAudioTime=a+t.duration}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var cD=class i{audioWorkletModulePath=w(Dm);stream;audioContext;source;audioBuffer=[];volumeLevel=mA(0);lastVolumeUpdate=0;startRecording(){return re(this,null,function*(){try{this.stream=yield navigator.mediaDevices.getUserMedia({audio:!0}),this.audioContext=new AudioContext,yield this.audioContext.audioWorklet.addModule(this.audioWorkletModulePath),this.source=this.audioContext.createMediaStreamSource(this.stream);let e=new AudioWorkletNode(this.audioContext,"audio-processor");e.port.onmessage=A=>{let t=A.data,n=Date.now();if(n-this.lastVolumeUpdate>100){let a=0;for(let l=0;le.stop()),this.volumeLevel.set(0)}getCombinedAudioBuffer(){if(this.audioBuffer.length===0)return;let e=this.audioBuffer.reduce((n,o)=>n+o.length,0),A=new Uint8Array(e),t=0;for(let n of this.audioBuffer)A.set(n,t),t+=n.length;return A}cleanAudioBuffer(){this.audioBuffer=[]}float32ToPCM(e){let A=new ArrayBuffer(e.length*2),t=new DataView(A);for(let n=0;n{let n=t.metricsInfo||[];this.metricsInfoCache.set(e,n),this.metricsInfo.set(n)}))}return new Fi}createNewEvalSet(e,A,t="live"){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/dev/apps/${e}/eval-sets`;return this.http.post(n,{eval_set:{eval_set_id:A,model_execution_mode:t,tool_execution_mode:t,eval_cases:[]}})}return new Fi}getEvalSet(e,A){if(this.apiServerDomain!=null){let t=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}`;return this.http.get(t,{})}return new Fi}listEvalCases(e,A){if(this.apiServerDomain!=null){let t=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}/evals`;return this.http.get(t,{})}return new Fi}addCurrentSession(e,A,t,n,o){let a=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}/add_session`;return this.http.post(a,{evalId:t,sessionId:n,userId:o})}runEval(e,A,t,n){let o=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}/run_eval`;return this.http.post(o,{evalIds:t,evalMetrics:n})}listEvalResults(e){if(this.apiServerDomain!=null){let A=this.apiServerDomain+`/dev/apps/${e}/eval_results`;return this.http.get(A,{})}return new Fi}getEvalResult(e,A){if(this.apiServerDomain!=null){let t=this.apiServerDomain+`/dev/apps/${e}/eval_results/${encodeURIComponent(A)}`;return this.http.get(t,{})}return new Fi}getEvalCase(e,A,t){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}/evals/${t}`;return this.http.get(n,{})}return new Fi}updateEvalCase(e,A,t,n){let o=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}/evals/${t}`;return this.http.put(o,{evalId:t,conversation:n.conversation,sessionInput:n.sessionInput,creationTimestamp:n.creationTimestamp})}deleteEvalCase(e,A,t){let n=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}/evals/${t}`;return this.http.delete(n,{})}deleteEvalSet(e,A){let t=this.apiServerDomain+`/dev/apps/${e}/eval_sets/${A}`;return this.http.delete(t,{})}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var ID=class i{constructor(e){this.http=e}apiServerDomain=Rr.getApiServerBaseUrl();getEventTrace(e,A){let t=this.apiServerDomain+`/dev/apps/${e}/debug/trace/${A.id}`;return this.http.get(t)}getTrace(e,A){let t=this.apiServerDomain+`/dev/apps/${e}/debug/trace/session/${A}`;return this.http.get(t).pipe(Se(o=>{let a=Y$.array().safeParse(o);if(a.success)return a.data;throw new Error(a.error.issues.map(r=>`${r.path.join(".")}: ${r.message}`).join(", "))}))}getEvent(e,A,t,n){let o=this.apiServerDomain+`/dev/apps/${A}/users/${e}/sessions/${t}/events/${n}/graph`;return this.http.get(o)}static \u0275fac=function(A){return new(A||i)(Wo(Mr))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var BD=class i{route=w($s);constructor(){}isImportSessionEnabled(){return oe(!0)}isEditFunctionArgsEnabled(){return this.route.queryParams.pipe(Se(e=>e[pT]==="true"))}isSessionUrlEnabled(){return oe(!0)}isA2ACardEnabled(){return this.route.queryParams.pipe(Se(e=>e[fT]==="true"))}isApplicationSelectorEnabled(){return oe(!0)}isAlwaysOnSidePanelEnabled(){return oe(!1)}isTraceEnabled(){return oe(!0)}isArtifactsTabEnabled(){return oe(!0)}isEvalEnabled(){return oe(!0)}isEvalV2Enabled(){return this.route.queryParams.pipe(Se(e=>e[wT]==="true"))}isTestsEnabled(){return this.route.queryParams.pipe(Se(e=>e[mT]==="true"))}isTokenStreamingEnabled(){return oe(!0)}isMessageFileUploadEnabled(){return oe(!0)}isManualStateUpdateEnabled(){return oe(!0)}isBidiStreamingEnabled(){return oe(!0)}isExportSessionEnabled(){return oe(!0)}isEventFilteringEnabled(){return oe(!1)}isDeleteSessionEnabled(){return oe(!0)}isLoadingAnimationsEnabled(){return oe(!0)}isSessionsTabReorderingEnabled(){return oe(!1)}isSessionFilteringEnabled(){return oe(!1)}isSessionReloadOnNewMessageEnabled(){return oe(!1)}isUserIdOnToolbarEnabled(){return oe(!0)}isDeveloperUiDisclaimerEnabled(){return oe(!0)}isFeedbackServiceEnabled(){return oe(!1)}isInfinityMessageScrollingEnabled(){return oe(!1)}isMoreOptionsButtonHidden(){return oe(!1)}isNewSessionButtonEnabled(){return oe(!0)}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var hD=class i{sendFeedback(e,A,t){return oe(void 0)}getFeedback(e,A){return oe(void 0)}deleteFeedback(e,A){return oe(void 0)}getPositiveFeedbackReasons(){return oe([])}getNegativeFeedbackReasons(){return oe([])}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var a_A=(()=>{var i=import.meta.url;return function(e={}){var A,t=e,n,o,a=new Promise((y,b)=>{n=y,o=b});t.agerrMessages=[],t.stderrMessages=[],u=y=>t.stderrMessages.push(y);var r=Object.assign({},t),s="./this.program",l=(y,b)=>{throw b},g="",C,d;typeof document<"u"&&document.currentScript&&(g=document.currentScript.src),i&&(g=i),g.startsWith("blob:")?g="":g=g.substr(0,g.replace(/[?#].*/,"").lastIndexOf("/")+1),C=y=>fetch(y,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(new Error(b.status+" : "+b.url)));var B=console.log.bind(console),u=console.error.bind(console);Object.assign(t,r),r=null;var E;function f(y){for(var b=atob(y),R=new Uint8Array(b.length),W=0;Wy.startsWith(it);function YA(){var y="data:application/octet-stream;base64,AGFzbQEAAAABmAd0YAJ/fwF/YAF/AGABfwF/YAN/f38Bf2ACf38AYAN/f38AYAR/f39/AX9gBH9/f38AYAV/f39/fwF/YAZ/f39/f38Bf2AFf39/f38AYAZ/f39/f38AYAh/f39/f39/fwF/YAAAYAABf2AHf39/f39/fwF/YAF8AXxgAn9/AXxgAX8BfGAHf39/f39/fwBgA39/fwF8YAd/f39/fHx/AGACf3wAYAR8fHx/AXxgAnx8AXxgA398fABgBX9+fn5+AGAEf39/fABgCn9/f39/f39/f38Bf2ADf35/AX5gBH9/fHwBf2ADfHx8AXxgCX9/f39/f39/fwBgA39/fgBgAAF8YAR/f39/AXxgAn9/AX5gBX9/f39+AX9gA39/fgF/YAp/f39/f39/f39/AGAEf35+fwBgBH9/fH8AYAJ/fgBgAnx/AXxgBH9/f3wBf2ABfwF+YAJ/fgF/YAJ/fAF/YAN8fH8BfGADf3x/AGAIf39/f39/f38AYAV/f39/fAF/YAt/f39/f39/f39/fwF/YAN/f3wAYAV/f35/fwBgBH9/fH8Bf2AAAX5gB39/f398f38Bf2AFf39/f3wAYAN/f3wBf2ADf35/AX9gAn19AX1gBH9/fX8AYAZ/fHx8fHwBfGADf39/AX5gDH9/f39/f39/f39/fwF/YAV/f3x/fwF/YAd/f398fH9/AGAGf39/fH9/AGAGf39/f35/AX9gD39/f39/f39/f39/f39/fwBgBH9/f38BfmAGf3x/f39/AX9gB39/f39/fn4Bf2AGf39/f35+AX9gB39/f39+f38Bf2AGf39/f39+AX9gAn5/AGAEf35/fwF/YAR/f3x8AXxgBX9/fH9/AGAJf39/f39/f39/AX9gBH9/fHwAYAR+fn5+AX9gAn99AX9gAn5/AX9gCH9/f398fHx/AGADf31/AGAGf39+fn5/AGABfAF/YAJ+fgF9YAJ/fQBgBH9/f34BfmAGf31/f39/AGADf3x8AX9gBX9/f3x/AGAFf398fH8AYAZ8fHx/f38AYAJ+fgF8YAJ8fwF/YAR/fHx8AGAGf39/f398AGAEf3x/fwBgBnx8f3x8fwBgB398fHx8fHwAYAV/fHx8fAF/YAF/AX1gA39/fwF9YAN+fn4Bf2AEf35+fgBgBH98f38Bf2AKf3x/f39/f39/fwBg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AgBB9ekDIAJBEGoQIBoQLwALFwBBAUF/IAAgASABEEAiABChAiAARhsLJQEBfyAAKAIsIgBBAEGAASAAKAIAEQMAIgAEfyAAKAIQBUEACws0AQF/AkAgACABEOYBIgFFDQAgACgCLCIAIAFBCCAAKAIAEQMAIgBFDQAgACgCECECCyACC28BAX8jAEEgayIDJAAgA0IANwMYIANCADcDECADIAI2AgwCQCADQRBqIAEgAhCzCiIBQQBIBEAgA0H8gAsoAgAQswU2AgBBioAEIAMQNwwBCyAAIANBEGoiABCNBSABEKECGiAAEFwLIANBIGokAAszAQF/IAIEQCAAIQMDQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQQFrIgINAAsLIAALJAEBfyMAQRBrIgMkACADIAI2AgwgACABIAIQzQsgA0EQaiQAC6QBAQN/IwBBEGsiAiQAAkAgABAtIgMgACgCAEEDcSAAKQMIEOgJIgEEfyABKAIYBUEACyIBDQAgAygCTCIBKAIAKAIMIgMEQCABKAIIIAAoAgBBA3EgACkDCCADESYAIgENAQtBACEBIAAoAgBBA3FBAkYNACACIAApAwg3AwggAkElNgIAQfDdCiEBQfDdCkEgQeAXIAIQtAEaCyACQRBqJAAgAQsPACAAIAEgAiADQQAQ8QsLQwAgACAAIAGlIAG9Qv///////////wCDQoCAgICAgID4/wBWGyABIAC9Qv///////////wCDQoCAgICAgID4/wBYGwsUACAAECgEQCAALQAPDwsgACgCBAsVACAAEKMBBEAgACgCBA8LIAAQpQMLowEBAn8CQAJAIAAEQCAAKAIIIgMgACgCDCICRgRAIAAgA0EBdEEBIAMbIAEQ/AEgACgCDCECCyACRQ0BIAAoAggiAyACTw0CIAAgACgCBCADaiACcCICIAEQ3wEaIAAgACgCCEEBajYCCCACDwtB0dMBQYm4AUE7QdbDARAAAAtBr5UDQYm4AUHDAEHWwwEQAAALQZoMQYm4AUHEAEHWwwEQAAALJgAgACABEK4HIgFFBEBBAA8LIAAQ7AEoAgwgASgCEEECdGooAgALLgAgAC0ADyIAQQFqQf8BcUERTwRAQbS7A0Gg/ABB3ABB6ZcBEAAACyAAQf8BRwtDACAAIAAgAaQgAb1C////////////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AkHYmQshASAAQdiZC0EYEM4BRQ0CQRgQTyIBRQ0BCyABIAIpAgg3AgAgASACKQIYNwIQIAEgAikCEDcCCAwBC0EAIQELIAJBIGokAEHkmwtBAToAAEHgmwsgATYCACABC60BAgF/An4CQAJAIAAEQCABBEAgAEEAEL8CIgMoAvQDDQIgAykDsAQiBCABQQhrIgEoAgBBCGqtIgVUDQMgAyAEIAV9IgQ3A7AEIAMoAsAEQQJPBEAgA0EtIAUgBCADKQO4BCACEJEECyABIAAoAhQRAQALDwtBsdQBQZ+9AUGKB0GonwEQAAALQbDSAUGfvQFBkQdBqJ8BEAAAC0HjqAFBn70BQZoHQaifARAAAAsJACAAQQAQ2AYLvwoCBX8PfiMAQeAAayIFJAAgBEL///////8/gyEMIAIgBIVCgICAgICAgICAf4MhCiACQv///////z+DIg1CIIghDiAEQjCIp0H//wFxIQcCQAJAIAJCMIinQf//AXEiCUH//wFrQYKAfk8EQCAHQf//AWtBgYB+Sw0BCyABUCACQv///////////wCDIgtCgICAgICAwP//AFQgC0KAgICAgIDA//8AURtFBEAgAkKAgICAgIAghCEKDAILIANQIARC////////////AIMiAkKAgICAgIDA//8AVCACQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQogAyEBDAILIAEgC0KAgICAgIDA//8AhYRQBEAgAiADhFAEQEKAgICAgIDg//8AIQpCACEBDAMLIApCgICAgICAwP//AIQhCkIAIQEMAgsgAyACQoCAgICAgMD//wCFhFAEQCABIAuEQgAhAVAEQEKAgICAgIDg//8AIQoMAwsgCkKAgICAgIDA//8AhCEKDAILIAEgC4RQBEBCACEBDAILIAIgA4RQBEBCACEBDAILIAtC////////P1gEQCAFQdAAaiABIA0gASANIA1QIgYbeSAGQQZ0rXynIgZBD2sQsQFBECAGayEGIAUpA1giDUIgiCEOIAUpA1AhAQsgAkL///////8/Vg0AIAVBQGsgAyAMIAMgDCAMUCIIG3kgCEEGdK18pyIIQQ9rELEBIAYgCGtBEGohBiAFKQNIIQwgBSkDQCEDCyADQg+GIgtCgID+/w+DIgIgAUIgiCIEfiIQIAtCIIgiEyABQv////8P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AQRAIAEoAgQiAkUNAQNAIAEgAigCADYCBCACIAE2AgAgAiIBKAIEIgINAAsgBCABNgIADAELCyAAKAIIIQULIAAgAzYCDCAAIAVBgCByNgIIIAMLoQEBAn8CQCAAECVFIAIgAWtBBUhyDQAgASACEJYFIAJBBGshBCAAEEYiAiAAECVqIQUCQANAAkAgAiwAACEAIAEgBE8NACAAQQBMIABB/wBOckUEQCABKAIAIAIsAABHDQMLIAFBBGohASACIAUgAmtBAUpqIQIMAQsLIABBAEwgAEH/AE5yDQEgAiwAACAEKAIAQQFrSw0BCyADQQQ2AgALC4QBAQJ/IwBBEGsiAiQAIAAQowEEQCAAKAIAIAAQ9gIaEKEFCyABECUaIAEQowEhAyAAIAEoAgg2AgggACABKQIANwIAIAFBABDTASACQQA6AA8gASACQQ9qENIBAkAgACABRiIBIANyRQ0ACyAAEKMBIAFyRQRAIAAQpQMaCyACQRBqJAALUAEBfgJAIANBwABxBEAgASADQUBqrYYhAkIAIQEMAQsgA0UNACACIAOtIgSGIAFBwAAgA2utiIQhAiABIASGIQELIAAgATcDACAAIAI3AwgLzgkCBH8EfiMAQfAAayIGJAAgBEL///////////8AgyEJAkACQCABUCIFIAJC////////////AIMiCkKAgICAgIDA//8AfUKAgICAgIDAgIB/VCAKUBtFBEAgA0IAUiAJQoCAgICAgMD//wB9IgtCgICAgICAwICAf1YgC0KAgICAgIDAgIB/URsNAQsgBSAKQoCAgICAgMD//wBUIApCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhBCABIQMMAgsgA1AgCUKAgICAgIDA//8AVCAJQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQQMAgsgASAKQoCAgICAgMD//wCFhFAEQEKAgICAgIDg//8AIAIgASADhSACIASFQoCAgICAgICAgH+FhFAiBRshBEIAIAEgBRshAwwCCyADIAlCgICAgICAwP//AIWEUA0BIAEgCoRQBEAgAyAJhEIAUg0CIAEgA4MhAyACIASDIQQMAgsgAyAJhFBFDQAgASEDIAIhBAwBCyADIAEgASADVCAJIApWIAkgClEbIggbIQogBCACIAgbIgxC////////P4Mh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9ANFBEAgAykDsAQiIkKAgICAEH1CkHtaDQEgAyAiQvAEfCIiNwOwBCADKALABEECTwRAIANBK0LwBCAiIAMpA7gEIiMgIlQEfiADICI3A7gEICIFICMLQZ8LEJEECyACQRA2ApwDIAJBADYCKCACQQA2AhAgAiABQYACQakLEJgBIgM2AqgDIANFBEAgASABQasLEGdBAAwFCyACIAFBgAhBtgsQmAEiAzYCQCADRQRAIAEgAigCqANBuAsQZyABIAFBvAsQZwwECyACIANBgAhqNgJEQQAiBkUEQCABQbwBQcw6EJgBIgZFDQMgBkIANwJQIAZCADcCaCAGIAE2AmQgBiABNgJ8IAZCADcCCCAGQQA6AAQgBkIANwIcIAZBADoAGCAGIAE2AhAgBkEANgIAIAZCADcCMCAGQQA6ACwgBiABNgIkIAZBADYCFCAGQQA2AmAgBkIANwJYIAZCADcCcCAGQQA2AnggBkIANwJEIAZBADoAQCAGIAE2AjggBkEANgIoIAZBADYCPCAGIAE2AkwgBkIANwKMASAGQQA6AIgBIAZCATcCgAEgBiABNgKUASAGQgA3ApgBIAZBADoAoAEgBkIANwKkASAGQgA3AqwBIAZCADcCtAELIAJBADYCmAMgAiAGNgKEAyACQQA2ApADIAJBADYC0AIgAkEANgLIAiACQQA2AsACIAJCADcD8AMgAkEhOgD4AyACQQA2AogCIAJBADYCkAEgAkEAOwH8ASACQgA3AsADIAJBADYC+AEgAkIANwKsAyACIAE2AtQDIAJCADcCyAMgAkEANgLQAyACQQA6ALQDIAJBADYC6AMgAkIANwLgAyACQgA3AtgDIAIgATYC7AMgAUHPATYCoAIgAUGbATYCiAIgAUEANgKcAiABQoCAgIAQNwKUAiAFBEBBACEGA0AgBSAGaiAGQQFqIQYtAAANAAsgASAGQYjCABCYASIDBEAgAyAFIAYQHxoLIAEgAzYC8AELIAFBADYCgAMgAUGgAWogAUGcAWpBABDBBhogAUIANwMAIAFBQGtBAEHAABA4GiABQgA3AowBIAFBADYChAEgAUIANwKUASABQgA3A7ADIAFBADYCNCABQQE6ADAgAUEANgIsIAFCADcCJCABQQA2AsQCIAFBADYCvAIgAUIANwKkAiABQgA3AqwCIAFBADYCtAIg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akECED0MGgUgESADQQR0IhJqIhQgASASaiISKQMANwMAIBQgEikDCDcDCCADQQFqIQMMAQsACwALIAJBAmoiA0EQEBoiAiABKQMINwMIIAIgASkDADcDACACIBApAyA3AxAgAiAQKQMoNwMYIAIgECsDICAQKwMwIgYgECsDQKFEAAAAAAAACECjIgegOQMgIBArAyghCCAQKwNIIQkgECsDOCEFIAIgBiAHoDkDMCACIAUgBSAJoUQAAAAAAAAIQKMiBaA5AzggAiAIIAWgOQMoQQQgAyADQQRNGyERIAFBIGshE0EEIQEDQCABIBFGBEAgACACIAMgBBBIIAIQGCAPIBApAzg3AyggDyAQKQMwNwMgIA8gECkDKDcDOCAPIBApAyA3AzAgACAPQSBqQQIQPQwZBSACIAFBBHQiEmoiFCASIBNqIhIpAwA3AwAgFCASKQMINwMIIAFBAWohAQwBCwALAAsgAkEDaiIDQRAQGiICIAFBCGopAwA3AwggAiABKQMANwMAIAIgASsDACIFIAUgECsDEKEiBkQAAAAAAADQv6KgOQMQIAErAwghCCAQKwNIIQkgAiAQKwM4Igc5AzggAiAFIAZEAAAAAAAAAsCioDkDMCACIAUgBiAGoKE5AyAgAiAIIAcgCaFEAAAAAAAACECjoCIFOQMoIAIgBTkDGCAQKwMwIQUgAiAHOQNIIAIgBTkDQEEEIAMgA0EETRshESABQTBrIRNBBCEBA0AgASARRgRAIAAgAiADIAQQSCACEBgMGAUgAiABQQR0IhJqIhQgEiATaiISKQMANwMAIBQgEikDCDcDCCABQQFqIQEMAQsACwALIAJBBEcNG0EGQRAQGiICIAEpAwg3AwggAiABKQMANwMAIAIgECkDKDcDGCACIBApAyA3AxAgAiAQKQNINwMoIAIgECkDQDcDICACIAEpAyg3AzggAiABKQMgNwMwIAIgECkDgAE3A0AgAiAQKQOIATcDSCACIBApA6ABNwNQIAIgECkDqAE3A1ggACACQQYgBBBIIAIQGCAPIBArAxAgECsDsAEgECsDAKGgOQMgIA8gECsDGCAQKwO4ASAQKwMIoaA5AyggDyAQKQNINwM4IA8gECkDQDcDMCAAIA9BIGoiAUECED0gDyAQKQOIATcDOCAPIBApA4ABNwMwIAAgAUECED0gDyAQ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AgsgACABNwMAIAAgAjcDCAvbAQIBfwJ+QQEhBAJAIABCAFIgAUL///////////8AgyIFQoCAgICAgMD//wBWIAVCgICAgICAwP//AFEbDQAgAkIAUiADQv///////////wCDIgZCgICAgICAwP//AFYgBkKAgICAgIDA//8AURsNACAAIAKEIAUgBoSEUARAQQAPCyABIAODQgBZBEAgACACVCABIANTIAEgA1EbBEBBfw8LIAAgAoUgASADhYRCAFIPCyAAIAJWIAEgA1UgASADURsEQEF/DwsgACAChSABIAOFhEIAUiEECyAECxYAIABFBEBBAA8LQfyACyAANgIAQX8LCwAgACABIAIRAAALZAECfyMAQRBrIgMkAAJAIABBABCxAiIARQ0AAkACQAJAAkAgAQ4EAAECAgMLIAAoAhAhAgwDCyAAKAIIIQIMAgsgACgCDCECDAELIAMgATYCAEHExQQgAxA3CyADQRBqJAAgAgukAQIDfwJ8IwBBEGsiAiQAIAAQwQIgACgCECIBKwMYRAAAAAAAAFJAoyEEIAErAxBEAAAAAAAAUkCjIQUgABAcIQEDQCABBEAgASgCECgClAEiAyADKwMAIAWhOQMAIAMgAysDCCAEoTkDCCAAIAEQHSEBDAELCyACIAAoAhAiASkDGDcDCCACIAEpAxA3AwAgACACEMAMIABBARDKBSACQRBqJAALDwAgAUEBaiAAIAAQqgGfC6gBAgR/AnwgASgCACECIABBBGoiAyEAIAMhAQNAIAAoAgAiAARAIAAoAhAiBCsDCCIGIAIrAwgiB2MEQCAAQQRqIQAMAgUgACABIAAgAiAESyIEGyAGIAdkIgUbIQEgACAAIARBAnRqIAUbIQAMAgsACwsCQAJAIAEgA0YNACACKwMIIgYgASgCECIAKwMIIgdjDQAgACACTSAGIAdkcg0BCyADIQELIAELZAEBfyMAQRBrIgQkACAAQQA7ARwgAEEANgIYIAAgAzkDCCAAIAI2AgQgACABNgIAIAQgADYCDCABQTRqIARBDGoQwAEgACgCBCAEIAA2AghBKGogBEEIahDAASAEQRBqJAAgAAs8ACAAIAEQ0gIEQCAAEMMEDwsgABD9ByIBRQRAQQAPCyAAIAEQ/AchACABEG0gACAALQAkQQNyOgAkIAALrAEBAX8CQCAAECgE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IAUgBCsDCDkDECAFQShqIAMgFiAUIAsRHgBFBEAgBUIANwNYIAUgAzYCACAFIAc2AhggB0EBaiEHIAAgAxAdIQMMAQsLQZj/CigCABAYQZj/CkEANgIAENcMDAILQQAhByACQbADakEAQdAAEDgaIAUEQEGY/wooAgAhBET////////vfyEURP///////+//IRhE////////7/8hG0T////////vfyEZA0AgBSAHRgRARJqZmZmZmak/IRYCQCAAQdLkABAnIgBFDQAgAC0AAEUNACAAEK4CIRYLQbD/CiAbIBsgGaEgFqIiE6AiFzkDAEG4/wogGSAToSIVOQMAQaj/CiAUIBggFKEgFqIiE6EiFDkDAEGg/wogGCAToCITOQMAIAIgFTkD2AMgAiAXOQPoAyACIBU5A7gDIAIgEzkD0AMgAiAXOQPIAyACIBQ5A/ADIAIgEzkDwAMgAiAUOQPgAyABKAIAIQBBABDQByELAkACQCAAQQJGBEAgC0UNAiACQbADahDWDEEAIQMDQEGY/wooAgAhAUHk/gooAgAhAEEAIQQDQCAAIARHBEAgASAEQeAAbGoiCyALKwMIRM3MzMzMzPA/ojkDCCALIAsrAxBEzczMzMzM8D+iOQMQIARBAWohBAwBCwsgA0EBaiIDENAHDQALQezaCi0AAEUNASACIAM2AhBBiPYIKAIAQezdAyACQRBqECAaDAELIAtFDQEgAkGwA2oQ1gxBACEHQQAhBANAIAJBsANqIgEhACAHBEAgABDUDAtB+P4KQv////////93NwMAQfD+CkL/////////9/8ANwMAAkBB5P4KKAIAIgUEQCAAKAIAIQZE////////738hFET////////v/yEWQQAhAANAIAAgBUYNAkHw/gogFCAGIABBAnRqKAIAIgMrAwAQKSIUOQMAQfj+CiAWIAMrAwAQIyIWOQMAIABBAWohAAwACwALQeGVA0H8twFBzwFBzJIBEAAAC0GA/wogBigCACsDCDkDACAGIAVBAnRqQQRrKAIAKwMIIRNBkP8KIBYgFKE5AwBBiP8KIBM5AwBEAAAAAAAAAAAhFUQAAAAAAAAAACEUIwBBMGsiDiQAQQFBEBAaIg9B6P4KKAIAQQJ0IgA2AgQgDyAAQSgQGjYCAEHA/wogARDNBTYCACAOQgA3AyggDkIANwMgIA5CADcDGCMAQSBrIgUkAAJAAkACQCAOQRhqIgYEQCAGQgA3AgAgBkIANwIQIAZCADcCCCAGQej+CigCACIDQQF0IgA2AgggAEGAgICABE8NAUEAIAMgAEEEEE4iABsNAiAGIAA2AgwgBiAGQQBBABC3BDYCECAGIAZBAEEAELcEIgM2AhQgBigCECIAIAM2AgQgAEEANgIAIANBADYCBCADIAA2AgAgBigCDCAANgIAIAYoAgwgBigCCEECdGpBBGsgBigCFDYCACAFQSBqJAAMAwtB09MBQZK6AUEdQfaIARAAAAsgBUEENgIEIAUgADYCAEGI9ggoAgBBpuoDIAUQIBoQLwALIAUgA0EDdDYCEEGI9ggoAgBB9ekDIAVBEGoQIBoQLwALIAEQzQUhEANAIA8Q1AdFBEAgDygCDCEGIA8oAgAhAANAIAAgBkEobGooAiAiA0UEQCAPIAZBAWoiBjYCDAwBCwsgDiADKAIQKwMAOQMIIA4gAysDGDkDECAOKwMQIRUgDisDCCEUCwJAIBBFDQACQCAPENQHDQAgECsDCCITIBVjDQAgEyAVYg0BIBArAwAgFGNFDQELAn9BACEFAkAgDkEYaiIIBEAgCCgCCCIAQQBMDQECQCAQKwMAQfD+CisDAKFBkP8KKwMAoyAAt6IiE0QAAAAAAAAAAGMNACATIABBAWsiBbhkDQAgE5lEAAAAAAAA4EFjBEAgE6ohBQwBC0GAgICAeCEFCwJAIAggBRDSByIGDQBBASEDA0AgCCAFIANrENIHIgYNASADIAVqIQAgA0EBaiEDIAggABDSByIGRQ0ACwsgCCgCFCEDAkACQCAIKAIQIgAgBkcEQCADIAZGDQEgBiAQENEHRQ0BCwNAIAMgBigCBCIGRwRAIAYgEBDRBw0BCwsgBigCACEGDAELA0AgBigCACIGIABGDQEgBiAQENEHRQ0ACwsCQCAFQQBMDQAgBSAIKAIIQQFrTg0AIAgoAgwgBUECdGogBjYCAAsgBgwCC0HT0wFBkroBQbcBQZClARAAAAtBvTdBkroBQawBQdTZABAAAAsiDSgCBCEFIA0gCCANEN0MIBAgCBDjDCIDQQAQtwQiBhDTByANIAYgCBDOBSIABEAgDyANENUHIA8gDSAAIAAgEBDPBRDQBQsgBiAOQRhqIgAgA0EBELcEIgMQ0wcgAyAFIAAQzgUiAARAIA8gAyAAIAAgEBDPBRDQBQsgARDNBSEQDAELIA8Q1AdFBEAgDygCACAPKAIMQShsaiIAIAAoAiAiCCgCIDYCICAPIA8oAghBAWs2AgggCCgCACEKIAgoAgQiBSgCBCEDIAgoAggiAAR/IABBJEEgIAgtAAwbagVBwP8KCygCACENIAUQ3QwhACAIKAIIIAgsAAwgCCgCECIGIA5BGGoiBxDWByAFKAIIIAUsAAwgBiAHENYHIAgQ3wwgDyAFENUHIAUQ3wwgCiAHIAAgDSANKwMIIAArAwhkIggbIgUgDSAAIAgbIAcQ4wwiACAIELcEIg0Q0wcgACAIRSAGIAcQ1gcgCiANIAcQzgUiAARAIA8gChDVByAPIAogACAAIAUQzwUQ0AULIA0gAyAOQRhqEM4FIgBFDQEgDyANIAAgACAFEM8FENAFDAELCyAOKAIoKAIEIQADQCAOKAIsIABHBEAgACgCCBDiDCAAKAIEIQAMAQsLAkAgDkEYagRAIA4oAhghAQNAIAEEQCABKAIAIQAgARAYIA4gADYCGCAAIQEMAQsLIA5CADcCGAwBC0HQ1gFB4b4BQacBQckhEAAACyAOKAIkEBggDxCOCCAOQTBqJAAgAkGY/wooAgAiACkDEDcD+AIgAiAAKQMINwPwAiACIAIpA+ADNwPoAiACIAIpA9gDNwPgAiACQfACaiACQeACahD/AiEWIAIgACkDEDcD2AIgAiAAKQMINwPQAiACIAIpA8ADNwPIAiACIAIpA7gDNwPAAiACQdACaiACQcACahD/AiEUIAIgACkDEDcDuAIgAiAAKQMINwOwAiACIAIpA/ADNwOoAiACIAIpA+gDNwOgAiACQbACaiACQaACahD/AiEZIAIgACkDEDcDmAIgAiAAKQMINwOQAiACIAIpA9ADNwOIAiACIAIpA8gDNwOAAkEBIQcgAkGQAmogAkGAAmoQ/wIhGCAAIgMiCiEBA0BB5P4KKAIAIAdLBEAgAkGY/wooAgAgB0HgAGxqIgUpAxA3A5gBIAIgBSkDCDcDkAEgAiACKQPgAzcDiAEgAiACKQPYAzcDgAEgAkGQAWogAkGAAWoQ/wIhGiACIAUpAxA3A3ggAiAFKQMINwNwIAIgAikD8AM3A2ggAiACKQPoAzcDYCACQfAAaiACQeAAahD/AiEXIAIgBSkDEDcDWCACIAUpAwg3A1AgAiACKQPAAzcDSCACIAIpA7gDNwNAIAJB0ABqIAJBQGsQ/wIhFSACIAUpAxA3AzggAiAFKQMINwMwIAIgAikD0AM3AyggAiACKQPIAzcDICAFIAAgFiAaZCIIGyEAIAUgCiAXIBljIg0bIQogBSADIBQgFWQiBhshAyAFIAEgAkEwaiACQSBqEP8CIhMgGGMiBRshASAaIBYgCBshFiAXIBkgDRshGSAVIBQgBhshFCATIBggBRshGCAHQQFqIQcMAQsLIABBCGogAisD2AMgAisD4AMQ/gIgCkEIaiACKwPoAyACKwPwAxD+AiADQQhqIAIrA7gDIAIrA8ADEP4CIAFBCGogAisDyAMgAisD0AMQ/gJBACEBQZj/CigCACEIQeT+CigCACENIAQhAwNAIAEgDUcEQCAIIAFB4ABsaiEHAkAgA0UEQCAHLQAgQQFHDQELQQIgBygCXCIAIABBAk0bQQFrIQYgBygCWCIKKwMIIRkgCisDACEcQQEhBEQAAAAAAAAAACEWRAAAAAAAAAAAIRhEAAAAAAAAAAAhGwNAIAQgBkcEQCAbIAogBEEBaiIAQQR0aiIFKwMAIhQgGSAKIARBBHRqIgQrAwgiGqGiIBwgGiAFKwMIIhehoiAEKwMAIhMgFyAZoaKgoJlEAAAAAAAA4D+iIhWgIRsgFSAZIBqgIBegRAAAAAAAAAhAo6IgGKAhGCAVIBwgE6AgFKBEAAAAAAAACECjoiAWoCEWIAAhBAwBCwsgByAYIBujOQMQIAcgFiAbozkDCAsgAUEBaiEBDAELCyAMQQFqIgwQ0AciAARAIAAgC0khAUEBIQdBASEEIAAhC0EAIAlBAWogARsiCUUNAUG4/wpBuP8KKwMAIhNBsP8KKwMAIhQgE6FEmpmZmZmZqT+iIhOhIho5AwBBsP8KIBQgE6AiFzkDAEGo/wpBqP8KKwMAIhNBoP8KKwMAIhQgE6FEmpmZmZmZqT+iIhOhIhU5AwBBoP8KIBQgE6AiEzkDACACIBo5A9gDIAIgFzkD6AMgAiAaOQO4AyACIBM5A9ADIAIgFzkDyAMgAiAVOQPwAyACIBM5A8ADIAIgFTkD4AMgEUEBaiERDAELC0Hs2gotAABFDQBBiPYIKAIAIgYQ1QEgAhDWATcDgAQgAkGABGoiCRDrASIFKAIUIQsgBSgCECEDIAUoAgwhBCAFKAIIIQEgBSgCBCEAIAIgBSgCADYC/AEgAiAANgL4ASACIAE2AvQBIAIgBDYC8AEgAkHIAzYC5AEgAkH8twE2AuABIAIgA0EBajYC7AEgAiALQewOajYC6AEgBkHGygMgAkHgAWoQIBogAiAMNgLQASAGQY8YIAJB0AFqECAaQQogBhCnARogBhDUAUHs2gotAABFDQAgBhDVASACENYBNwOABCAJEOsBIgkoAhQhCyAJKAIQIQMgCSgCDCEEIAkoAgghASAJKAIEIQAgAiAJKAIANgLMASACIAA2AsgBIAIgATYCxAEgAiAENgLAASACQckDNgK0ASACQfy3ATYCsAEgAiADQQFqNgK8ASACIAtB7A5qNgK4ASAGQcbKAyACQbABahAgGiACIBE2AqABIAZBqRggAkGgAWoQIBpBCiAGEKcBGiAGENQBC0EAIQRBmP8KKAIAIQNB5P4KKAIAIQFBASEKA0AgASAERg0BIAMgBEHgAGxqIgsoAgAoAhAoApQBIgAgCysDCDkDACAAIAsrAxA5AwggBEEBaiEEDAALAAsQ1wwgAigCsAMQGCAKIBJqIRIMBAUgBCAHQeAAbGoiAysDKCEaIAMrAwghHCADKwMwIRcgAysDOCEVIAdBAWohByAYIAMrAxAiEyADKwNAoBAjIRggGyAcIBWgECMhGyAUIBMgF6AQKSEUIBkgHCAaoBApIRkMAQsACwALQeGVA0H8twFB3gBBphIQAAALQYuaA0H8twFB/QBBj98AEAAACyACQaAEaiQAIBILsgMCB38BfSMAQSBrIgQkACACQQAgAkEAShshBwNAIAUgB0YEQCADIABBAnRqQQA2AgAgBEEANgIYIARCADcDECAEQgA3AwggBCAANgIcIARBCGpBBBAmIQAgBCgCCCAAQQJ0aiAEKAIcNgIAIARBHGohCEH/////ByEAA0ACQCAEKAIQRQRAIABBCmohAEEAIQUDQCAFIAdGDQIgAyAFQQJ0aiIBKAIAQQBIBEAgASAANgIACyAFQQFqIQUMAAsACyAEQQhqIAgQoQQgASAEKAIcIgBBFGxqIQIgAyAAQQJ0aigCACEAQQEhBQNAIAUgAigCAE8NAiADIAVBAnQiBiACKAIEaigCACIJQQJ0aiIKKAIAQQBIBEAgCgJ/QQEgASgCCEUNABogAigCCCAGaioCACILi0MAAABPXQRAIAuoDAELQYCAgIB4CyAAajYCACAEIAk2AhwgBEEIakEEECYhBiAEKAIIIAZBAnRqIAQoAhw2AgALIAVBAWohBQwACwALCyAEQQhqIgBBBBAxIAAQNCAEQSBqJAAFIAMgBUECdGpBfzYCACAFQQFqIQUMAQsLCzIBAX8gAEEAIABBAEobIQADQCAAIANGRQRAIAIgA0ECdGogATgCACADQQFqIQMMAQsLC0gBAn8gAEEAIABBAEobIQMDQCACIANGBEAgAQRAIAEQGAsPCyABIAJBAnRqKAIAIgAEQCAAELUNCyAAEBggAkEBaiECDAALAAsQAEEgEIkBIAAgASACEK8DCwoAIAAoAgQQvQQLhAIBBn8jAEEQayIEJAAjAEEQayIDJAAgASIHQQRqIQUCQCABKAIEIgZFBEAgBSEBDAELIAIoAgAhCANAIAYiASgCECIGIAhLBEAgASEFIAEoAgAiBg0BDAILIAYgCE8NASABQQRqIQUgASgCBCIGDQALCyADIAE2AgwgBCAFKAIAIgEEf0EABUEUEIkBIQEgAyAHQQRqNgIEIAEgAigCADYCECADQQE6AAggByADKAIMIAUgARDdBSADQQA2AgAgAygCACECIANBADYCACACBEAgAhAYC0EBCzoADCAEIAE2AgggA0EQaiQAIAAgBCgCCDYCACAAIAQtAAw6AAQgBEEQaiQAC5QQAQh/IwBBQGoiCyQAAkACQAJAAkACQCABQQBMIAJBAExyRQRAIAEgAiAAIAYgB0EAEL8NIgkoAhghDCAJKAIUIQggAUEBaiEKQQAhBwNAIAcgCkYEQAJAIAZBBGsOBQAFBQUGBAsFIAggB0ECdGpBADYCACAHQQFqIQcMAQsLIAhBBGohCiAJKAIcIQ1BACEHQQAhBgNAIAAgBkYEQANAIAEgB0YEQEEAIQcDQCAAIAdGBEADQCABQQBMDQwgCCABQQJ0aiICIAJBBGsoAgA2AgAgAUEBayEBDAALAAUgDSAIIAMgB0ECdCICaiIGKAIAQQJ0aigCAEECdGogAiAFaigCADYCACACIARqKAIAIQIgCCAGKAIAQQJ0aiIGIAYoAgAiBkEBajYCACAMIAZBAnRqIAI2AgAgB0EBaiEHDAELAAsABSAHQQJ0IQIgCCAHQQFqIgdBAnRqIgYgBigCACACIAhqKAIAajYCAAwBCwALAAsCQCADIAZBAnQiDmooAgAiDyABTw0AIAQgDmooAgAgAk8NACAKIA9BAnRqIg4gDigCAEEBajYCACAGQQFqIQYMAQsLIAtB1wM2AiQgC0GWtwE2AiBBiPYIKAIAQdi/BCALQSBqECAaEDsAC0HOlgNBlrcBQbQDQYXxABAAAAsgBkEBRg0CCyALQfMDNgIEIAtBlrcBNgIAQYj2CCgCAEHYvwQgCxAgGhA7AAsgCEEEaiEFQQAhB0EAIQYDQCAAIAZGBEADQCABIAdGBEBBACEHA0AgACAHRgRAA0AgAUEATA0IIAggAUECdGoiAiACQQRrKAIANgIAIAFBAWshAQwACwAFIAQgB0ECdCICaigCACEFIAggAiADaigCAEECdGoiAiACKAIAIgJBAWo2AgAgDCACQQJ0aiAFNgIAIAdBAWohBwwBCwALAAUgB0ECdCECIAggB0EBaiIHQQJ0aiIFIAUoAgAgAiAIaigCAGo2AgAMAQsACwALAkAgAyAGQQJ0IgpqKAIAIg0gAU8NACAEIApqKAIAIAJPDQAgBSANQQJ0aiIKIAooAgBBAWo2AgAgBkEBaiEGDAELCyALQecDNgI0IAtBlrcBNgIwQYj2CCgCAEHYvwQgC0EwahAgGhA7AAsgCEEEaiEKIAkoAhwhDUEAIQdBACEGA0AgACAGRgRAA0AgASAHRgRAQQAhBwNAIAAgB0YEQANAIAFBAEwNByAIIAFBAnRqIgIgAkEEaygCADYCACABQQFrIQEMAAsABSANIAggAyAHQQJ0IgZqKAIAQQJ0aiIKKAIAIgJBA3RqIAUgB0EDdGorAwA5AwAgBCAGaigCACEGIAogAkEBajYCACAMIAJBAnRqIAY2AgAgB0EBaiEHDAELAAsABSAHQQJ0IQIgCCAHQQFqIgdBAnRqIgYgBigCACACIAhqKAIAajYCAAwBCwALAAsCQCADIAZBAnQiDmooAgAiDyABTw0AIAQgDmooAgAgAk8NACAKIA9BAnRqIg4gDigCAEEBajYCACAGQQFqIQYMAQsLIAtBxQM2AhQgC0GWtwE2AhBBiPYIKAIAQdi/BCALQRBqECAaEDsACyAIQQA2AgAgCSAANgIIAn9BACEDQQAhBiAJIgEoAgQiAEEAIABBAEobIQkgASgCECECIAEoAhghBCABKAIUIQUgAEEEED8hBwJAAkACQAJAAkACQAJAA0AgAyAJRgRAAkBBACEDIAJBBGsOBQMGBgYEAAsFIAcgA0ECdGpBfzYCACADQQFqIQMMAQsLIAJBAUcNAyAFKAIAIQAgASgCHCEJA0AgBiABKAIATg0DIAUgBkECdGohCiAFIAZBAWoiBkECdGohCANAIAgoAgAiAiAASgRAAkAgByAEIABBAnRqIg0oAgAiAkECdGooAgAiDCAKKAIASARAIAQgA0ECdGogAjYCACAJIANBA3RqIAkgAEEDdGorAwA5AwAgByANKAIAQQJ0aiADNgIAIANBAWohAwwBCyAEIAxBAnRqKAIAIAJHDQggCSAMQQN0aiICIAkgAEEDdGorAwAgAisDAKA5AwALIABBAWohAAwBCwsgCCADNgIAIAIhAAwACwALIAUoAgAhACABKAIcIQkDQCAGIAEoAgBODQIgBSAGQQJ0aiEKIAUgBkEBaiIGQQJ0aiEIA0AgCCgCACICIABKBEACQCAHIAQgAEECdCICaiINKAIAIgxBAnRqKAIAIg4gCigCAEgEQCAEIANBAnQiDmogDDYCACAJIA5qIAIgCWooAgA2AgAgByANKAIAQQJ0aiADNgIAIANBAWohAwwBCyAMIAQgDkECdCINaigCAEcNCCAJIA1qIgwgDCgCACACIAlqKAIAajYCAAsgAEEBaiEADAELCyAIIAM2AgAgAiEADAALAAsgBSgCACEAA0AgBiABKAIATg0BIAUgBkECdGohCCAFIAZBAWoiBkECdGohCQNAIAkoAgAiAiAASgRAAkAgByAEIABBAnRqIgwoAgAiAkECdGooAgAiCiAIKAIASARAIAQgA0ECdGogAjYCACAHIAwoAgBBAnRqIAM2AgAgA0EBaiEDDAELIAQgCkECdGooAgAgAkcNCAsgAEEBaiEADAELCyAJIAM2AgAgAiEADAALAAsgASADNgIIIAEhAwsgBxAYIAMMAwtBtscBQZa3AUG4B0G8LxAAAAtBtscBQZa3AUHMB0G8LxAAAAtBtscBQZa3AUHeB0G8LxAAAAsgC0FAayQACzwBAn8jAEEQayIBJABBASAAEE4iAkUEQCABIAA2AgBBiPYIKAIAQfXpAyABECAaEC8ACyABQRBqJAAgAgt6AQF/IwBBEGsiBCQAIAMEQCADIAAgAiACEOoFIgI2AghB7NoKLQAABEAgBCACNgIAQYj2CCgCAEHf3QMgBBAgGgsgA0EANgIUIANBADoADCAAIAEgAxCFCBogAygCECAEQRBqJAAPC0HY3gBBo7wBQYYKQYPfABAAAAspAQF/A0AgACIBKAIQKAKwASIADQALA0AgASIAKAIQKAJ4IgENAAsgAAtJAQF8IAEoAhQgABC1AyEBRAAAAAAAAPA/IAAoAiy3IAEoACC4RAAAAAAAAPA/oKOhIAEoAjQiACsDQCAAKwMwIgKhoiACoBAyCz0BAXwgASgCGCAAELUDIQEgACgCLLcgASgAILhEAAAAAAAA8D+goyABKAI0IgArADggACsAKCICoaIgAqALdwECfyMAQRBrIgMkAAJAAkAgAkEATgRAIAIgASgACEkNAQsgAEIANwIAIABCADcCCAwBCyABKAIAIQQgAyABKQIINwMIIAMgASkCADcDACAAIAQgAyACEBlBBHRqIgEpAgA3AgAgACABKQIINwIICyADQRBqJAAL4AECCHwBfyABQSBBGEGE/gotAAAiDBtqKwMAIQQgAiABQRhBICAMG2orAwAiBTkDGCACIAQ5AxAgAiABKQM4NwMAIAIgAUFAaykDADcDCCACIAIrAwAgBEQAAAAAAADgP6KhIgY5AwAgAiACKwMIIAVEAAAAAAAA4D+ioSIHOQMIIAMrAwAhCCADKwMIIQkgAysDECEKIAAgAysDGCILIAUgB6AiBSAFIAtjGzkDGCAAIAogBCAGoCIEIAQgCmMbOQMQIAAgCSAHIAcgCWQbOQMIIAAgCCAGIAYgCGQbOQMAC3wBAXwgAEEATgRAIAFEAAAAAAAAAABjBEBBAA8LIAFEAAAAAAAA8D9kRSAAuCICRAAAwP///99BIAGjZEVyRQRAQf////8HDwsgASACoiIBmUQAAAAAAADgQWMEQCABqg8LQYCAgIB4DwtBz5gDQYf8AEHNAEHO2QAQAAALUQECfEECQQFBAyAAKwMIIAErAwgiA6EgAisDACABKwMAIgShoiACKwMIIAOhIAArAwAgBKGioSIDRAAAAAAAAAAAYxsgA0QAAAAAAAAAAGQbCwsAIABBgdMEEBsaC3EBAX8jAEEQayIFJAAgAEG1xQMQGxogACABEIoBIAIEQCAAQd8AEGUgACACEIoBCyAFIAM2AgAgAEHbMyAFEB4CQCAEQf0oECciAUUNACABLQAARQ0AIABBIBBlIAAgARCKAQsgAEEiEGUgBUEQaiQAC9IBAQZ/IwBBIGsiAiQAIAAoAhAiASgCqAEhAyAAIAErA6ABEHsgAEH0kwQQGxoDQAJAIANFDQAgAygCACIFRQ0AIANBBGohAyAFIgFB8fcAEE1FDQEDQCABIgRBAWohASAELQAADQALA0AgBC0AAQRAIAIgBEEBaiIBNgIQIABBvMgDIAJBEGoQHgNAIAEtAAAgASIEQQFqIQENAAsMAQsLIAVBsy0QTUUEQCAAKAIQQgA3A6ABCyACIAU2AgAgAEGsgwQgAhAeDAELCyACQSBqJAALEABBASAAEEBBAXRBA2oQPwsxAQF/AkAgAUUNACABLQAARQ0AIAAoAjwiAkUNACACKAJwIgJFDQAgACABIAIRBAALC60BAgJ/AnwjAEEgayIDJAACQCAAKAI8IgRFDQAgBCgCYCIERQ0AIAAoAhAoApgBRQ0AIAErABghBSABKwAIIQYgAyABKwAQIAErAACgRAAAAAAAAOA/ojkDACADIAUgBqBEAAAAAAAA4D+iOQMIIAMgASkDGDcDGCADIAEpAxA3AxAgAC0AmQFBIHFFBEAgACADIANBAhCYAhoLIAAgAyACIAQRBQALIANBIGokAAsxAQF/AkAgACgCPCIBRQ0AIAEoAgQiAUUNACAAIAERAQALIAAoAgBBADYCGCAAELEKC68BAQN/An8gARA5IgEoAhAtAHNBAUYEQCAAEJoEDAELIAAgARDSBgsiACIDIQEDQEEAIQICQAJAA0AgAS0AACIERQ0BIAFBAWohASACQQFxBEBBCiECAkACQAJAIARB7ABrDgcCAQIBAQEAAQtBDSECDAELIAQhAgsgAyACOgAADAMLQQEhAiAEQdwARg0ACyADIAQ6AAAMAQsgA0EAOgAAIAAPCyADQQFqIQMMAAsACxgAIAAoAgAgACgCoAEgACgCnAEgARDfCAviawIZfw98IwBB4BVrIgIkACACQbgOaiAAKQCYAjcDACACQbAOaiAAKQCQAjcDACACQagOaiAAKQCIAjcDACACIAApAIACNwOgDgJAAkACQAJAIAEoAhAiBCgCCCIDRQ0AIAMrABggAisDoA5mRQ0AIAIrA7AOIAMrAAhmRQ0AIAMrACAgAisDqA5mRQ0AIAIrA7gOIAMrABBmDQELIAQoAmAiAwR/IAIgAkG4DmopAwA3A9AHIAIgAkGwDmopAwA3A8gHIAIgAkGoDmopAwA3A8AHIAIgAikDoA43A7gHIAMgAkG4B2oQ7wkNASABKAIQBSAECygCbCIDRQ0BIAMtAFFBAUcNASACIAJBuA5qKQMANwOwByACIAJBsA5qKQMANwOoByACIAJBqA5qKQMANwOgByACIAIpA6AONwOYByADIAJBmAdqEO8JRQ0BCwJAIAAoApwBQQJIDQAgACABQYDdCigCAEHx/wQQeiIDEIkEDQAgA0Hx/wQQPkUNASABQShqIQlBACEDA0BBMCEFQQMhCAJAAkAgAw4DAQAEAAtBUCEFQQIhCAsgCSAFQQAgASgCAEEDcSAIRxtqKAIAQajcCigCAEHx/wQQeiIEQfH/BBA+DQEgA0EBaiEDIAAgBBCJBEUNAAsLIAJCADcD4AcgAkIANwPYByACQdgHaiIEIAFBMEEAIAEoAgBBA3FBA0cbaigCKBAhEMUDIARByuABQbagAyABIAFBMGsiAyABKAIAQQNxQQJGGygCKBAtEIICGxDFAyAEIAEgAyABKAIAQQNxQQJGGygCKBAhEMUDIAAgBBDEAxCFBCAEEFwgAUGE3QooAgBB8f8EEHoiAy0AAARAIAAgAxCFBAsCQCABQezcCigCAEHx/wQQeiIDLQAAIhdFDQAgAxDDAxpBsOAKIQ1BsOAKIQMDQCADKAIAIgRFDQEgA0EEaiEDIARBsy0QPkUNAAsMAQsgAUGimAEQJxDsAiEaIAAoApgBIQ8gABCNBCIGQQk2AgwgBiABNgIIIAZBAzYCBAJAIAEoAhAoAmAiA0UNACADLQBSDQAgAUHerAEQJxBoRQ0AIAYgBi8BjAJBgARyOwGMAgsCQCAXRQ0AIAEoAhAoAghFDQAgACANEOUBCwJAQbjdCigCACIDRQ0AIAEgAxBFIgNFDQAgAy0AAEUNACAAIAFBuN0KKAIARAAAAAAAAPA/RAAAAAAAAAAAEEwQhwILAkAgD0GAgIAIcUUNACABIAFBMGoiAyABKAIAQQNxQQNGGygCKBAtKAIQLwGyAUEDTwRAIAYCfyABIAMgASgCAEEDcUEDRhsoAigoAhAoApQBKwMQRAAAAAAAAFJAoiIbRAAAAAAAAOA/RAAAAAAAAOC/IBtEAAAAAAAAAABmG6AiG5lEAAAAAAAA4EFjBEAgG6oMAQtBgICAgHgLtzkDuAEgBgJ/IAFBUEEAIAEoAgBBA3FBAkcbaigCKCgCECgClAErAxBEAAAAAAAAUkCiIhtEAAAAAAAA4D9EAAAAAAAA4L8gG0QAAAAAAAAAAGYboCIbmUQAAAAAAADgQWMEQCAbqgwBC0GAgICAeAu3OQPAAQwBCyAGQgA3A7gBIAZCADcDwAELAkAgD0GAgAJxRQ0AAkAgASgCECIEKAJgIgNFBEAgBigCyAEhBQwBCyAGIAMoAgAiBTYCyAELIAYgBTYC1AEgBiAFNgLMASAGIAU2AtABIAQoAmwiAwRAIAYgAygCADYCzAELIAQoAmgiAwRAIAYgAygCADYC0AELIAQoAmQiA0UNACAGIAMoAgA2AtQBC0EAIQNBACEFAkAgD0GAgARxRQ0AIAJBqA5qQgA3AwAgAkIANwOgDiAGIAAgASACQaAOaiIEEKcGIAEQgQE2AtwBIAQQXAJAAkAgAUGuhQEQJyIIBEAgCC0AAA0BCyABQZ/SARAnIghFDQEgCC0AAEUNAQsgCCABEIEBIQULAkAgBgJ/AkACQCABQaGFARAnIggEQCAILQAADQELIAFBk9IBECciCEUNASAILQAARQ0BCyAIIAEQgQEMAQsgBUUNASAFEGQLNgLYAQsCQCAGAn8CQAJAIAFBl4UBECciCARAIAgtAAANAQsgAUGK0gEQJyIIRQ0BIAgtAABFDQELIAggARCBAQwBCyAFRQ0BIAUQZAs2AuABCwJAAkACQCABQY6FARAnIggEQCAILQAADQELIAFBgtIBECciCEUNASAILQAARQ0BCyAGIAggARCBATYC5AEgBiAGLwGMAkGAAXI7AYwCDAELIAVFDQAgBiAFEGQ2AuQBCwJAAkAgAUGqhQEQJyIIBEAgCC0AAA0BCyABQZvSARAnIghFDQEgCC0AAEUNAQsgBiAIIAEQgQE2AugBIAYgBi8BjAJBgAJyOwGMAgwBCyAFRQ0AIAYgBRBkNgLoAQsCQCAPQYCAgARxRQ0AAkAgAUHiIhAnIgRFDQAgBC0AAEUNACAEIAEQgQEhAwsCQCAGAn8CQCABQdMiECciBEUNACAELQAARQ0AIAYgBi8BjAJBwAByOwGMAiAEIAEQgQEMAQsgA0UNASADEGQLNgL8AQsCQCAGAn8CQCABQcciECciBEUNACAELQAARQ0AIAQgARCBAQwBCyADRQ0BIAMQZAs2AoACCwJAAkAgAUG8IhAnIgRFDQAgBC0AAEUNACAGIAQgARCBATYChAIgBiAGLwGMAkEQcjsBjAIMAQsgA0UNACAGIAMQZDYChAILIAYCfwJAIAFB3iIQJyIERQ0AIAQtAABFDQAgBiAGLwGMAkEgcjsBjAIgBCABEIEBDAELIANFBEBBACEDDAILIAMQZAs2AogCCwJAIA9BgICAAnFFDQACQAJAAkAgAUGh2gAQJyIIBEAgCC0AAA0BCyABQZHaABAnIghFDQEgCC0AAEUNAQsgBiAIIAEQiAQiBCABEIEBNgLsASAEEBggBiAGLwGMAkEBcjsBjAIMAQsgBigCyAEiBEUNACAGIAQQZDYC7AELAkACQCABQYTaABAnIgRFDQAgBC0AAEUNACAGIAQgARCIBCIEIAEQgQE2AvABIAQQGCAGIAYvAYwCQQhyOwGMAgwBCyAGKALIASIERQ0AIAYgBBBkNgLwAQsCQAJAIAFB+NkAECciBEUNACAELQAARQ0AIAYgBCABEIgEIgQgARCBATYC9AEgBBAYIAYgBi8BjAJBAnI7AYwCDAELIAYoAtABIgRFDQAgBiAEEGQ2AvQBCwJAIAFBndoAECciBEUNACAELQAARQ0AIAYgBCABEIgEIgQgARCBATYC+AEgBBAYIAYgBi8BjAJBBHI7AYwCDAELIAYoAtQBIgRFDQAgBiAEEGQ2AvgBCyAFEBggAxAYAkAgD0GAgIQCcUUNACABKAIQKAIIIhFFDQACQCAGKALYAUUEQCAGKALsAUUNAiAPQYCAIHENAQwCCyAPQYCAIHFFDQELIBEoAgQhEiAAKAIQKwOgASACQYAVakEAQSgQOBogAkIANwP4ByACQgA3A/AHIAJCADcD6AcgAkGYFWohCkQAAAAAAADgP6JEAAAAAAAAAEAQIyElAkADQAJAIBAgEkYEQCAPQYDAAHENA0EAIQVBACEDDAELIBEoAgBBACEEIAJBsBVqQQBBKBA4GiAQQTBsaiIOKAIEQQFrQQNuIQhBACEMA0AgCCAMRgRAQQAhAwNAIAIoArgVIgggA00EQEEAIQMDQCADIAhJBEAgAiACQbgVaikDADcDkAcgAiACKQOwFTcDiAcgAkGIB2ogAxAZIQQCQAJAIAIoAsAVIgUOAgENAAsgAiACKAKwFSAEQQR0aiIEKQMINwOAByACIAQpAwA3A/gGIAJB+AZqIAURAQALIANBAWohAyACKAK4FSEIDAELCyACQbAVaiIDQRAQMSAQQQFqIRAgAxA0DAULQQAhByACKAKwFSELAkAgA0UEQEEAIQUMAQsgAiACQbgVaiIJKQMANwPwBiACIAIpA7AVNwPoBiALIAJB6AZqIANBAWsQGUEEdGohBSAJKAIAIQggAigCsBUhCwsgCCADQQFqIglLBEAgAiACQbgVaikDADcD4AYgAiACKQOwFTcD2AYgCyACQdgGaiAJEBlBBHRqIQcgAigCsBUhCwsgAiACQbgVaikDADcD0AYgAiACKQOwFTcDyAYgBEEEdCIIIAJBgAhqaiEOIAJBoA5qIAhqIQggCyACQcgGaiADEBlBBHRqIgMrAAghJCADKwAAISICQCAFBEAgBSsDCCEdIAUrAwAhISAHBEAgBysDCCEeIAcrAwAhIAwCCyAkIB2hIhsgG6AhHiAiICGhIhsgG6AhIAwBCyAkIAcrAwgiHqEiGyAboCEdICIgBysDACIgoSIbIBugISELIB4gJKEgICAioRCoASEcIAggJCAlIB0gJKEgISAioRCoASIbIBwgG6EiG0QYLURU+yEZwKAgGyAbRAAAAAAAAAAAZBtEAAAAAAAA4D+ioCIbEFeiIhygOQMIIAggIiAlIBsQSqIiG6A5AwAgDiAkIByhOQMIIA4gIiAboTkDACAEQQFqIQQgAigCuBUgCUcEQCAJIQMgBEEyRw0BCyACIARBAXQ2AvwHIAJB6AdqQQQQJiEDIAIoAugHIANBAnRqIAIoAvwHNgIAQQAhAwNAIAMgBEYEQCACQYAIaiAEQQR0aiEHQQAhAwNAIAMgBEcEQCAKIAcgA0F/c0EEdGoiBSkDADcDACAKIAUpAwg3AwggAkGAFWpBEBAmIQUgAigCgBUgBUEEdGoiBSAKKQMANwMAIAUgCikDCDcDCCADQQFqIQMMAQsLIAIgCCkDADcDoA4gAiAIKQMINwOoDiACIA4pAwA3A4AIIAIgDikDCDcDiAhBASEEIAkhAwwCBSAKIAJBoA5qIANBBHRqIgUpAwg3AwggCiAFKQMANwMAIAJBgBVqQRAQJiEFIAIoAoAVIAVBBHRqIgUgCikDADcDACAFIAopAwg3AwggA0EBaiEDDAELAAsACwALIA4oAgAgDEEwbGohB0EAIQMDQCADQQRGBEAgDEEBaiEMIAJBwBRqIAJBsBVqEKAGDAIFIANBBHQiBSACQcAUamoiCSAFIAdqIgUpAwA3AwAgCSAFKQMINwMIIANBAWohAwwBCwALAAsACwsDQCACKALwByADSwRAIAIgAikD8Ac3A4AGIAIgAikD6Ac3A/gFIAIoAugHIAJB+AVqIAMQGUECdGooAgAgBWohBSADQQFqIQMMAQsLIAIgAkGIFWoiCSkDADcDwAYgAiACKQOAFTcDuAYgAigCgBUhBCACQbgGakEAEBkhAyACIAkpAwA3A7AGIAIgAikDgBU3A6gGIAAgBCADQQR0aiACKAKAFSACQagGakEAEBlBBHRqIAUQmAIaCyACIAJBiBVqKQMANwOgBiACIAIpA4AVNwOYBiACKAKAFSEEIAJBmAZqQQAQGSEDIAZBAjYCkAIgBiAEIANBBHRqNgKkAiACQYAVaiAGQZgCakEAQRAQxwEgAiACKQPwBzcDkAYgAiACKQPoBzcDiAYgBiACKALoByACQYgGakEAEBlBAnRqKAIANgKUAiACQegHaiAGQaACaiAGQZwCakEEEMcBCwJAIAAoAjwiA0UNACADKAJAIgNFDQAgACADEQEACwJAIAYoAtgBIgNFBEAgBi0AjAJBAXFFDQELIAAgAyAGKALsASAGKAL8ASAGKALcARDEAQsgACgCECsDoAEhJSACQgA3A/AHIAJCADcD6AcCQCABKAIQKAIIRQ0AQQAhCCABQfjcCigCAEQAAAAAAADwP0QAAAAAAAAAABBMISggAUHM3AooAgBB8f8EEHohB0EAIQQCQCAXRQ0AIA0hAwNAIAMoAgAiBUEARyEEIAVFDQEgA0EEaiEDIAVB0asBED5FDQALCyAHIQNBACELAkACQAJAA0ACQAJAAkACQAJAIAMtAAAiBUE6aw4CAQIACyAFDQIgC0UgCEVyDQcgByACQYAVahDeBCIJQQJJDQMgASABQTBqIgUgASgCAEEDcUEDRhsoAigQLSABIAUgASgCAEEDcUEDRhsoAigQISEFEIICIQMgAiABQVBBACABKAIAQQNxQQJHG2ooAigQITYC6AUgAkHBywNBn80DIAMbNgLkBSACIAU2AuAFQfLvAyACQeAFahCAASAJQQJHDQUMBgsgCEEBaiEIDAELIAtBAWohCwsgA0EBaiEDDAELCyAJQQFGDQELIAJBwA5qIQ4gAkGwDmohCEEAIQdBACEFA0AgASgCECgCCCIDKAIEIAdNBEBBACEDA0AgAigCiBUgA0sEQCACIAJBiBVqKQMANwPYBSACIAIpA4AVNwPQBSACQdAFaiADEBkhBAJAAkAgAigCkBUiAQ4CAQoACyACIAIoAoAVIARBGGxqIgQpAwg3A8AFIAIgBCkDEDcDyAUgAiAEKQMANwO4BSACQbgFaiABEQEACyADQQFqIQMMAQsLIAJBgBVqIgFBGBAxIAEQNAwECyACQaAOaiADKAIAIAdBMGxqQTAQHxpEAAAAAAAA8D8hHEEBIQtBACEDIAUhBAJAAkADQCADIAIoAogVTw0BIAIgAkGIFWopAwA3A7AFIAIgAikDgBU3A6gFIAIoAoAVIAJBqAVqIAMQGUEYbGoiCSgCACIFRQ0BAkAgCSsDCCIbmUTxaOOItfjkPmNFBEAgACAFEEkgHCAboSEcAn8gCwRAIAJBoA5qIBsgAkHAFGogAkGwFWoQ4gggACACKALAFCIEIAIoAsQUQQAQ8AEgBBAYQQAgHJlE8WjjiLX45D5jRQ0BGiACKAKwFSEDDAMLIByZRPFo44i1+OQ+YwRAIAAgAigCsBUiAyACKAK0FUEAEPABDAMLIAJBgAhqIgkgAkGwFWoiBEEwEB8aIAkgGyAbIBygoyACQcAUaiAEEOIIIAIoAoAIEBggACACKALAFCIEIAIoAsQUQQAQ8AEgBBAYQQALIQsgBSEECyADQQFqIQMMAQsLIAMQGAwBCyAEIQULIAIoAqgOBEAgAiACQYgVaiIDKQMANwOgBSACIAIpA4AVNwOYBSAAIAIoAoAVIAJBmAVqQQAQGUEYbGooAgAQSSACIAMpAwA3A5AFIAIgAikDgBU3A4gFIAAgAigCgBUgAkGIBWpBABAZQRhsaigCABBdIAIgCCkDCDcDgAUgAiAIKQMANwP4BCACIAIoAqAOIgMpAwg3A/AEIAIgAykDADcD6AQgAEECIAJB+ARqIAJB6ARqICggJSACKAKoDhDqAgsgAigCrA4iBARAIAAgBRBJIAAgBRBdIAIgDikDCDcD4AQgAiAOKQMANwPYBCACIAIoAqAOIAIoAqQOQQR0akEQayIDKQMINwPQBCACIAMpAwA3A8gEIABBAyACQdgEaiACQcgEaiAoICUgBBDqAgsCQCAXRSABKAIQKAIIKAIEQQJJcg0AIAIoAqgOIAIoAqwOckUNACAAIA0Q5QELIAdBAWohBwwACwALQYX1ACEHCwJAAkACfyABKAIQLQB0IgNBAXEEQEHPkAMhC0GBtgEMAQsgA0ECcQRAQaSSAyELQZjpAQwBCyADQQhxBEBB2o8DIQtB0o8DDAELIANBBHFFDQFBzZIDIQtBkOkBCyEMIAJB6AdqIAsQxQMgByEDA0ACQCADLQAAIgVBOkcEQCAFDQEgAkHoB2oQxAMiCSAHRg0EIAAgCRBJDAQLIAIgCzYCwAQgAkHoB2pBnjMgAkHABGoQfgsgA0EBaiEDDAALAAsgAUHQ3AooAgAgBxCPASEMIAchCQsgByAMRwRAIAAgDBBdCwJAAkAgBARAIAwtAAAhEiAJLQAAIQMgAEG7HxBJIAAgCUGF9QAgAxsiERBdIAJBwBRqIgQgASgCECgCCCgCAEEwEB8aIAJBoA5qIQ8CfwJAQejcCigCACIDRQ0AIAEgAxBFIgMtAABFDQBBmAIgA0HLogEQPg0BGkGZAiADQZH1ABA+DQEaQZoCIANBmfcAED4NARogA0HAlgEQPkUNAEGbAgwBC0GYAkGbAiABQVBBACABKAIAQQNxQQJHG2ooAigQLRCCAhsLIQ5EAAAAAAAAAAAhHSMAQbABayIGJAAgBkIANwMYIAZCADcDECAGQgA3AwggBCgCBCEIIAQoAgAiCisAACEbIAYgCisACDkDKCAGIBs5AyAgBkEwakEAQTAQOBogBkEIakHAABAmIQEgBigCCCABQQZ0aiAGQSBqIg1BwAAQHxogBiAKKQMINwOoASAGIAopAwA3A6ABIAZBOGohB0EAIQMDQCAIIANBA2oiAUsEQCAGIAYpA6ABNwNwIAYgBikDqAE3A3ggCiADQQR0aiEJQQEhAwNAIANBBEYEQEEBIQMgBisDeCEbIAYrA3AhHgNAIANBFUYEQCABIQMMBQUgBkHgAGogBkHwAGogA7hEAAAAAAAANECjQQBBABChASAGKwNgISAgBiAGKwNoIhw5AyggBiAgOQMgIAYgHSAeICChIBsgHKEQR6AiHTkDMCAHQQBBKBA4GiAGQQhqQcAAECYhBCAGKAIIIARBBnRqIA1BwAAQHxogA0EBaiEDICAhHiAcIRsMAQsACwAFIANBBHQiBCAGQfAAamoiBSAEIAlqIgQpAwA3AwAgBSAEKQMINwMIIANBAWohAwwBCwALAAsLIAZBCGogBkHgAGogBkHwAGpBwAAQxwEgBigCYCIHIAYoAnAiDUEGdGpBMGsrAwAhJEQAAAAAAAAAACEeRAAAAAAAAAAAIRxBACEBRAAAAAAAAAAAIRsDQCANIAEiA00EQCAPQgA3AgBBACEHA0ACQCAHIA1PBEAgG0QYLURU+yEJQKAiIBBXIRsgDyAgEEogHKIgHqAgGyAcoiAmoBDhBCAGKAJwIgENAUHLlQNBvroBQacCQfo4EAAACyAGKAJgIAdBBnRqIgMrAyghHCADKwMgIhsQVyEdIAMrAwghJiAbEEohHiADKwM4ISAgAy0AMCAPIB4gHKIgAysDACIeoCAmIB0gHKKgEOEEQQFxBEAgHiAcQQEgGyAgIA8Q8QgLIAdBAWohByAGKAJwIQ0MAQsLIAFBAmshDQNAAkAgBigCYCEBIA1Bf0YNACABIA1BBnRqIgMrAyghIiADKwM4RBgtRFT7IQlAoCIdEFchHiADKwMIISAgHRBKIRsgAysDICEcIAMtADAgDyAbICKiIAMrAwAiG6AgICAeICKioBDhBEEBcQRAIBsgIkEAIBxEGC1EVPshCUCgIB0gDxDxCAsgDUEBayENDAELCyABEBggBkGwAWokAAUgByADQQFqIgFBACABIA1HG0EGdGoiBCsDCCAHIANBBnQiBWoiCSsDCCImoSAEKwMAIAkrAwAiHqEQ8AghGyAHIAMgDSADG0EGdGoiBEE4aysDACAmoSAEQUBqKwMAIB6hEPAIIScgCSsDECIiICQgJSAOER8AIRwCQAJ/AkACfCADBEAgAyAGKAJwQQFrRw0CICdEGC1EVPsh+b+gDAELIBtEGC1EVPsh+T+gCyEdQQAMAQsgG0QYLURU+yH5P6AhHUQAAAAAAAAAACAcIBsgJ6EiG0QYLURU+yEZQKAgGyAbRAAAAAAAAAAAYxtEAAAAAAAA4L+iRBgtRFT7Ifk/oCIgEEoiG6MgG0QAAAAAAAAAAGEbIhsgHEQAAAAAAAAkQKJkBEAgJ0QYLURU+yH5v6AiG0QAAAAAAAAAAGMgG0QYLURU+yEZQGZyBEAgGyAbRBgtRFT7IRlAo5xEGC1EVPshGUCioSEbC0EBIQ0gHUQAAAAAAAAAAGMgHUQYLURU+yEZQGZyRQ0CIB0gHUQYLURU+yEZQKOcRBgtRFT7IRlAoqEhHQwCCyAdICCgIR0gGyEcQQALIQ0gHSEbCyAGKAJgIgcgBWoiAyAdOQM4IAMgDToAMCADIBw5AyggAyAbOQMgIANB7AA6ABggAyAiOQMQIAMgJjkDCCADIB45AwAgBigCcCENDAELCyACKAKgDiIBQQBIDQEgACACKAKkDiABQQEQSCACKAKkDhAYIAAgERBJIBEgDEGF9QAgEhsiAUcEQCAAIAEQXQsgAigCyBQiAwRAIAIgAkHYFGopAwA3A2AgAiACKQPQFDcDWCACIAIoAsAUIgEpAwg3A1AgAiABKQMANwNIIABBAiACQdgAaiACQcgAaiAoICUgAxDqAgsgAigCzBQiA0UNAyACQUBrIAJB6BRqKQMANwMAIAIgAikD4BQ3AzggAiACKALAFCACKALEFEEEdGpBEGsiASkDCDcDMCACIAEpAwA3AyggAEEDIAJBOGogAkEoaiAoICUgAxDqAgwDCyABKAIQIQMgCEUNASAIuEQAAAAAAAAAQKBEAAAAAAAA4L+iIR9BACEMIAMoAggoAgQiFUEwED8hBiAVQTAQPyEPA0AgDCAVRgRAIAkQZCIIIQMgCSIFIRADQCADQfviARCxBSIDBEACQCADQYX1ACADLQAAGyIEIAlGDQAgBCEJIAEoAhAtAHRBA3ENACAAIAQQSSAAIAQQXQtBACEMA0AgDCAVRgRAIBAgBCAWGyEQIAQgBSAWQQJJGyEFIBZBAWohFkEAIQMMAwsgDyAMQTBsIgdqIgMoAgQhEiAGIAdqKAIAIQ0gAygCACEOQQAhAwNAIAMgEkYEQCAAIA4gEkEAEPABIAxBAWohDAwCBSAOIANBBHQiB2oiESAHIA1qIgcrAwAgESsDAKA5AwAgESAHKwMIIBErAwigOQMIIANBAWohAwwBCwALAAsACwsCQCACKALIFCIDRQRAQQAhBQwBCwJAIAVFDQAgASgCEC0AdEEDcQ0AIAAgBRBJIAAgBRBdIAIoAsgUIQMLIAIgAkHYFGopAwA3A6ABIAIgAikD0BQ3A5gBIAIgAigCwBQiBCkDCDcDkAEgAiAEKQMANwOIASAAQQIgAkGYAWogAkGIAWogKCAlIAMQ6gILIAIoAswUIgMEQAJAIAUgEEYNACABKAIQLQB0QQNxDQAgACAQEEkgACAQEF0gAigCzBQhAwsgAiACQegUaikDADcDgAEgAiACKQPgFDcDeCACIAIoAsAUIAIoAsQUQQR0akEQayIBKQMINwNwIAIgASkDADcDaCAAQQMgAkH4AGogAkHoAGogKCAlIAMQ6gILIAgQGEEAIQMDQCADIBVGBEAgBhAYIA8QGAwGBSAGIANBMGwiAWooAgAQGCABIA9qKAIAEBggA0EBaiEDDAELAAsABSACQcAUaiAMQTBsIgMgASgCECgCCCgCAGpBMBAfGiADIAZqIgQgAigCxBQiBTYCBCADIA9qIgMgBTYCBCAEIAVBEBA/IhA2AgAgAyACKALEFEEQED8iCjYCACACKALEFEEBayEHIAIoAsAUIhErAwghHiARKwMAISBBACEDA0AgAyAHSQRAIBEgA0EBakEEdCIIaiIEKwMIISMgBCsDACEpAkAgA0UEQCAQRAAAAAAAAABAICAgKaEiHSAdoiAeICOhIhwgHKKgRC1DHOviNho/oJ+jIhsgHZqiOQMIIBAgHCAbojkDAAwBCyAQIANBBHRqIgREAAAAAAAAAEAgJiApoSIdIB2iICcgI6EiHCAcoqBELUMc6+I2Gj+gn6MiGyAdmqI5AwggBCAcIBuiOQMACyARIANBA2oiBEEEdGoiBSsDCCEcIAUrAwAhGyAQIANBAmpBBHQiDWoiEkQAAAAAAAAAQCApIA0gEWoiBSsDACImoSIhICMgBSsDCCInoSIkEEciHUQtQxzr4jYaP2MEfCAgIBuhIiEgIaIgHiAcoSIkICSioEQtQxzr4jYaP6CfBSAdC6MiHSAhmqIiIjkDCCASIB0gJKIiHTkDACAIIBBqIg4gEikDCDcDCCAOIBIpAwA3AwAgCiADQQR0IgNqIgUgHyADIBBqIgMrAwCiICCgOQMAIAUgHyADKwMIoiAeoDkDCCAIIApqIgMgHyAOKwMAoiApoDkDACADIB8gDisDCKIgI6A5AwggCiANaiIDIB8gIqIgJ6A5AwggAyAfIB2iICagOQMAIBshICAcIR4gBCEDDAELCyAQIANBBHQiBGoiA0QAAAAAAAAAQCAmICChIhwgHKIgJyAeoSIdIB2ioEQtQxzr4jYaP6CfoyIbIByaoiIcOQMIIAMgHSAboiIbOQMAIAQgCmoiAyAfIByiIB6gOQMIIAMgHyAboiAgoDkDACAMQQFqIQwMAQsACwALQZ/LAUGEuQFB/BJB2TEQAAALIAMtAHRBA3FFBEACQCAJLQAABEAgACAJEEkMAQsgAEGF9QAQSSAMQYX1ACAMLQAAGyEMCyAAIAwQXQsgAUEoaiERIAJB4BRqIRAgAkHQFGohFSACQcgVaiEYIAJBqAhqIQYgAkGYCGohEyACQbgOaiESICVEAAAAAAAAIECiRAAAAAAAAChAECMhHQNAIBkgASgCECgCCCIDKAIETw0BIAJBwBRqIAMoAgAgGUEwbGpBMBAfGkEAIQhBACELIBFBUEEAIAEoAgBBA3FBAkcbaigCABAtQb4uECciAwRAIANBvt4AED4hCwsgDSEDAkAgF0UNAANAIAMoAgAiBEEARyEIIARFDQEgA0EEaiEDIARB2a4BED5FDQALC0QAAAAAAAAAACEbAkAgAUGoJhAnIgNFDQAgAy0AAEUNACADEK4CIhtEAAAAAAAAAABkIQgLAkACQAJAAkAgCCALcUEBRw0AIB0gGyAbRAAAAAAAAAAAYRsgGyAIGyIfRAAAAAAAAAAAZEUNAEEAIQQgAkGgDmoiA0EAQeAAEDgaIAMgAigCxBRByAAQ/AEgAigCxBQhDiACKALAFCEKA0AgBCAORwRAIAogBEEEdGohByAEIQUDQAJAIAVFBEBBfyEFDAELIAogBUEBayIFQQR0aiIDKwMAIAcrAwChIAMrAwggBysDCKEQR0R7FK5H4XqEP2RFDQELCyAEIQgCQANAIAhBAWoiCCAOTw0BIAogCEEEdGoiAysDACAHKwMAIiGhIikgAysDCCAHKwMIIiOhIiYQRyInRHsUrkfheoQ/ZEUNAAsgBUF/Rg0AQQAhAyApmSIeRJqZmZmZmbk/YyAmmSIgRJqZmZmZmbk/ZHEgIyAKIAVBBHRqIgUrAwihIiSZIhxEmpmZmZmZuT9jICEgBSsDAKEiIpkiG0SamZmZmZm5P2RxcSIIIBtEmpmZmZmZuT9jICBEmpmZmZmZuT9jcSAcRJqZmZmZmbk/ZHEgHkSamZmZmZm5P2RxckUNAANAIAIoAqgOIANLBEAgAiACQagOaikDADcDqAQgAiACKQOgDjcDoAQgAigCoA4hByACQaAEaiADEBkhBSADQQFqIQMgISAKIAcgBUHIAGxqKAIAQQR0aiIFKwMAoSAjIAUrAwihEEdEexSuR+F6hD9jRQ0BDAILCyASQQBByAAQOCEFIAJBoA5qQcgAECYhAyACKAKgDiADQcgAbGogBUHIABAfGiACIAJBqA5qIgMpAwA3A7gEIAIgAikDoA43A7AEIAIoAqAOIAJBsARqIAMoAgBBAWsQGUHIAGxqIgUgBDYCACAFICYgJ6MiICAfoiAjoDkDICAFICkgJ6MiHCAfoiAhoDkDGCAFICMgJCAiICQQRyIboyIeIB+ioTkDECAFICEgIiAboyIbIB+ioTkDCCAIBEAgIEQAAAAAAAAAAGMiA0UgG0QAAAAAAAAAAGRFckUEQCAFQpjakKK1v8j8PzcDQCAFQgA3AzggBSAjIB+hOQMwIAUgISAfoTkDKAwCCyAgRAAAAAAAAAAAZEUgG0QAAAAAAAAAAGRFckUEQCAFQgA3A0AgBUKY2pCitb/I/L9/NwM4IAUgHyAjoDkDMCAFICEgH6E5AygMAgsgBSAfICGgOQMoIANFIBtEAAAAAAAAAABjRXJFBEAgBUKY2pCitb/IhMAANwNAIAVCmNqQorW/yPw/NwM4IAUgIyAfoTkDMAwCCyAFQtLDzPnHr7aJwAA3A0AgBUKY2pCitb/IhMAANwM4IAUgHyAjoDkDMAwBCyAcRAAAAAAAAAAAZCIDRSAeRAAAAAAAAAAAY0VyRQRAIAVC0sPM+cevtonAADcDQCAFQpjakKK1v8iEwAA3AzggBSAfICOgOQMwIAUgHyAhoDkDKAwBCyAcRAAAAAAAAAAAY0UgHkQAAAAAAAAAAGNFckUEQCAFQpjakKK1v8iMwAA3A0AgBULSw8z5x6+2icAANwM4IAUgHyAjoDkDMCAFICEgH6E5AygMAQsgIyAfoSEbIANFIB5EAAAAAAAAAABkRXJFBEAgBUKY2pCitb/IhMAANwNAIAVCmNqQorW/yPw/NwM4IAUgGzkDMCAFIB8gIaA5AygMAQsgBUKY2pCitb/I/D83A0AgBUIANwM4IAUgGzkDMCAFICEgH6E5AygLIARBAWohBAwBCwsgAigCqA5FDQEgAkGgDmpBnAJByAAQogMgAkGIFWoiDyACKALAFCIDKQMINwMAIAIgAykDADcDgBVBACEMQQAhBUEAIRQDQCACKAKoDiIDIBRJBEADQCADIAxNDQUgAiACQagOaikDADcDiAMgAiACKQOgDjcDgAMgAkGACGogAigCoA4gAkGAA2ogDBAZQcgAbGpByAAQHxogAiAGKQMINwP4AiACIAYpAwA3A/ACAkAgAkHwAmogHyAfIAIrA7gIIAIrA8AIEPQIIghFDQAgCCgCBCIDQQVJDQAgA0EGa0EAIANBB2tBfUkbIgVBAk8EQEEAIQMgAkGwFWoiBEEAQSgQOBogBCAFQRAQ/AEDQCADIAVGBEACQCAJBEAgCSIDLQAADQELQYX1ACEDCyAAIAMQSSACIAJBuBVqIgcpAwA3A+gCIAIgAikDsBU3A+ACQQAhAyAAIAIoArAVIAJB4AJqQQAQGUEEdGogBRA9A0AgAigCuBUgA0sEQCACIAcpAwA3A9gCIAIgAikDsBU3A9ACIAJB0AJqIAMQGSEEAkACQCACKALAFSIFDgIBEgALIAIgAigCsBUgBEEEdGoiBCkDCDcDyAIgAiAEKQMANwPAAiACQcACaiAFEQEACyADQQFqIQMMAQsLIAJBsBVqIgNBEBAxIAMQNAUgGCAIKAIAIANBBHRqIgQpAzg3AwggGCAEKQMwNwMAIAJBsBVqQRAQJiEEIAIoArAVIARBBHRqIgQgGCkDADcDACAEIBgpAwg3AwggA0EBaiEDDAELCwsgCCgCABAYIAgQGAsgDEEBaiEMIAIoAqgOIQMMAAsABSACQbgVaiIOAn8gAyAUSwRAIAIgAkGoDmoiAykDADcDmAQgAiACKQOgDjcDkAQgAigCoA4gAkGQBGogFBAZQcgAbGooAgAhFiACIAMpAwA3A4gEIAIgAikDoA43A4AEIAIoAqAOIAJBgARqIBQQGUHIAGxqQQhqDAELIAIoAsAUIAIoAsQUQQFrIhZBBHRqCyIDKQMINwMAIAIgAykDADcDsBUgAkGQCGpCADcDACACQYgIaiILQgA3AwAgAkIANwOACCATIA8pAwA3AwggEyACKQOAFTcDACACQYAIakEQECYhAyACKAKACCADQQR0aiIDIBMpAwA3AwAgAyATKQMINwMIIAUhBANAIBYgBEEBaiIESwRAQQAhAyACKALAFCEIA0AgAigCqA4gA0sEQCACIAJBqA5qKQMANwOYAyACIAIpA6AONwOQAyAIIAIoAqAOIAJBkANqIAMQGUHIAGxqKAIAQQR0aiEKIANBAWohAyACKALAFCIHIQggByAEQQR0aiIHKwMAIAorAwChIAcrAwggCisDCKEQR0R7FK5H4XqEP2NFDQEMAwsLIBMgCCAEQQR0aiIDKQMANwMAIBMgAykDCDcDCCACQYAIakEQECYhAyACKAKACCADQQR0aiIDIBMpAwA3AwAgAyATKQMINwMIDAELCyATIAIpA7AVNwMAIBMgDikDADcDCCACQYAIakEQECYhAyACKAKACCADQQR0aiIDIBMpAwA3AwAgAyATKQMINwMIIAIgCykDADcD+AMgAiACKQOACDcD8ANBACEDIAAgAigCgAggAkHwA2pBABAZQQR0aiALKAIAED0CQANAAkAgAigCiAggA00EQCACQYAIaiIDQRAQMSADEDQgFCACKAKoDk8NAyACIAJBqA5qIgopAwA3A+gDIAIgAikDoA43A+ADIAIoAqAOIAJB4ANqIBQQGUHIAGxqKAIAIQUDQEEAIQMgBUEBaiIFIAIoAsQUTw0CA0AgAyACKAKoDk8NAyACIAopAwA3A8gDIAIgAikDoA43A8ADIAIoAsAUIQ4gAigCoA4hCCACQcADaiADEBkhBCADQQFqIQMgAigCwBQgBUEEdGoiBysDACAOIAggBEHIAGxqKAIAQQR0aiIEKwMAoSAHKwMIIAQrAwihEEdEexSuR+F6hD9jRQ0ACwwACwALIAIgCykDADcDuAMgAiACKQOACDcDsAMgAkGwA2ogAxAZIQQCQAJAIAIoApAIIgcOAgEOAAsgAiACKAKACCAEQQR0aiIEKQMINwOoAyACIAQpAwA3A6ADIAJBoANqIAcRAQALIANBAWohAwwBCwsgAiAKKQMANwPYAyACIAIpA6AONwPQAyAPIAIoAqAOIAJB0ANqIBQQGUHIAGxqIgMpAyA3AwAgAiADKQMYNwOAFQsgFEEBaiEUDAELAAsACyAAIAIoAsAUIAIoAsQUQQAQ8AEMAgsgACACKALAFCACKALEFEEAEPABC0EAIQMDQCACKAKoDiADTQRAIAJBoA5qIgNByAAQMSADEDQFIAIgAkGoDmopAwA3A/gBIAIgAikDoA43A/ABIAJB8AFqIAMQGSEHAkACQCACKAKwDiIFDgIBCAALIAJBqAFqIgQgAigCoA4gB0HIAGxqQcgAEB8aIAQgBREBAAsgA0EBaiEDDAELCwsgAigCyBQiBARAIAIgFSkDCDcDuAIgAiAVKQMANwOwAiACIAIoAsAUIgMpAwg3A6gCIAIgAykDADcDoAIgAEECIAJBsAJqIAJBoAJqICggJSAEEOoCCyACKALMFCIEBEAgAiAQKQMINwOYAiACIBApAwA3A5ACIAIgAigCwBQgAigCxBRBBHRqQRBrIgMpAwg3A4gCIAIgAykDADcDgAIgAEEDIAJBkAJqIAJBgAJqICggJSAEEOoCCwJAIBdFIAEoAhAoAggoAgRBAklyDQAgAigCyBQgAigCzBRyRQ0AIAAgDRDlAQsgGUEBaiEZDAALAAsgAkHoB2oQXCAAKAIQIgcoAgghCQJAIAcoAtgBRQRAIActAIwCQQFxRQ0BCyAAEJcCIAcoApwCIgtFDQAgBygCoAIiBCgCACEIQQEhBQNAIAUgC08NASAHIAQgBUECdCIBaigCADYClAIgByAHKAKkAiAIQQR0ajYCmAIgACAHKALYASAHKALsASAHKAL8ASAHKALcARDEASAAEJcCIAVBAWohBSABIAcoAqACIgRqKAIAIAhqIQggBygCnAIhCwwACwALIAdCADcClAIgACAJKAIQIgMoAggiAQR/IAcoAuQBIQMgBy8BjAIhBCACIAEoAgAiAUEQaiABKAIAIAEoAggbIgEpAwg3AyAgAiABKQMANwMYIAAgAkEYaiAEQYABcUEHdiADIARBAnFBAXYQ4QggBygC6AEhAyAHLwGMAiEEIAIgCSgCECgCCCIBKAIAIAEoAgRBMGxqIgEgAUEwaygCACABQSxrKAIAQQR0aiABQSRrKAIAG0EQayIBKQMINwMQIAIgASkDADcDCCAAIAJBCGogBEGAAnFBCHYgAyAEQQRxQQJ2EOEIIAkoAhAFIAMLKAJgQQsgBy8BjAJBA3ZBAXEgBygC4AEgBygC8AEgBygCgAIgBygC3AEgCUHw3AooAgBB+pMBEHoQaAR/IAkoAhAoAggFQQALENoEIAAgCSgCECgCbEELIAcvAYwCQQN2QQFxIAcoAuABIAcoAvABIAcoAoACIAcoAtwBIAlB8NwKKAIAQfqTARB6EGgEfyAJKAIQKAIIBUEACxDaBCAAIAkoAhAoAmRBByAHLwGMAkECdkEBcSAHKALoASAHKAL4ASAHKAKIAiAHKALcAUEAENoEIAAgCSgCECgCaEEGIAcvAYwCQQF2QQFxIAcoAuQBIAcoAvQBIAcoAoQCIAcoAtwBQQAQ2gQCQCAAKAI8IgFFDQAgASgCRCIBRQ0AIAAgAREBAAsgABCMBCAaEOwCIBoQGBAYCyACQeAVaiQADwtBsIMEQcIAQQFBiPYIKAIAEDoaEDsAC84GAQJ/IwBBgAJrIgMkACADQdABaiIEQYi/CEEwEB8aIAFCADcCAAJAAkACQAJAIAAgBBDeBA0AIAMoAtgBQQJJDQAgAyADKQPYATcDyAEgAyADKQPQATcDwAEgAygC0AEgA0HAAWpBABAZQRhsaigCAA0BC0EAIQBBACEBA0AgASADKALYAU8NAiADIAMpA9gBNwMgIAMgAykD0AE3AxggA0EYaiABEBkhAgJAAkAgAygC4AEiBA4CAQUACyADIAMoAtABIAJBGGxqIgIpAwg3AwggAyACKQMQNwMQIAMgAikDADcDACADIAQRAQALIAFBAWohAQwACwALIAMoAtgBQQNPBEBB95gEQQAQKgsgAyADKQPYATcDuAEgAyADKQPQATcDsAEgASADKALQASADQbABakEAEBlBGGxqKAIAEGQ2AgAgAyADKQPYATcDqAEgAyADKQPQATcDoAEgAygC0AEgA0GgAWpBARAZQRhsaigCAARAIAMgAykD2AE3A5gBIAMgAykD0AE3A5ABIAEgAygC0AEgA0GQAWpBARAZQRhsaigCABBkNgIECyADIAMpA9gBNwOIASADIAMpA9ABNwOAASADKALQASEBIANBgAFqQQAQGSEEIAMoAtABIQAgAgJ8IAEgBEEYbGotABBBAUYEQCADIAMpA9gBNwNYIAMgAykD0AE3A1AgACADQdAAakEAEBlBGGxqKwMIDAELIAMgAykD2AE3A3ggAyADKQPQATcDcEQAAAAAAAAAACAAIANB8ABqQQEQGUEYbGotABBBAUcNABogAyADKQPYATcDaCADIAMpA9ABNwNgRAAAAAAAAPA/IAMoAtABIANB4ABqQQEQGUEYbGorAwihCzkDAEEAIQFBASEAA0AgASADKALYAU8NASADIAMpA9gBNwNIIAMgAykD0AE3A0AgA0FAayABEBkhAgJAAkAgAygC4AEiBA4CAQQACyADIAMoAtABIAJBGGxqIgIpAwg3AzAgAyACKQMQNwM4IAMgAikDADcDKCADQShqIAQRAQALIAFBAWohAQwACwALIANB0AFqIgFBGBAxIAEQNCADQYACaiQAIAAPC0GwgwRBwgBBAUGI9ggoAgAQOhoQOwALrwEBAX8gACgCECIBRQRAQaT1AEGEuQFBiAFB0pEBEAAACyABKALcARAYIAEoAtgBEBggASgC4AEQGCABKALkARAYIAEoAugBEBggASgC7AEQGCABKALwARAYIAEoAvQBEBggASgC+AEQGCABKAL8ARAYIAEoAoACEBggASgChAIQGCABKAKIAhAYIAEoApgCEBggASgCpAIQGCABKAKgAhAYIAAgASgCADYCECABEBgLngEBAn9BuAIQxgMiASAAKAIQIgI2AgAgACABNgIQIAIEQCABQRBqIAJBEGpBKBAfGiABQThqIAJBOGpBKBAfGiABIAIoApgBNgKYASABIAIoApwBNgKcASABIAIrA6ABOQOgASABIAIoAogBNgKIASABQeAAaiACQeAAakEoEB8aIAEPCyABQoCAgICAgID4PzcDoAEgAUIDNwOYASABC6AGAQV/IwBBMGsiAyQAA0BBgOAKKAIAIAJNBEACQEH43wpBEBAxQZDgCiAAKAIAIgQpAwA3AwBBmOAKIAQpAwg3AwBB+N8KQRAQJiECQfjfCigCACACQQR0aiICQZDgCikDADcDACACQZjgCikDADcDCEGQ4AogBCkDADcDAEGY4AogBCkDCDcDAEH43wpBEBAmIQJB+N8KKAIAIAJBBHRqIgJBkOAKKQMANwMAIAJBmOAKKQMANwMIQQIgACgCBCIAIABBAk0bQQFrIQZBASECA0AgAiAGRg0BQZDgCiAEIAJBBHRqIgApAwA3AwBBmOAKIAApAwg3AwBB+N8KQRAQJiEFQfjfCigCACAFQQR0aiIFQZDgCikDADcDACAFQZjgCikDADcDCEGQ4AogACkDADcDAEGY4AogACkDCDcDAEH43wpBEBAmIQVB+N8KKAIAIAVBBHRqIgVBkOAKKQMANwMAIAVBmOAKKQMANwMIQZDgCiAAKQMANwMAQZjgCiAAKQMINwMAQfjfCkEQECYhAEH43wooAgAgAEEEdGoiAEGQ4AopAwA3AwAgAEGY4AopAwA3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qgIgA0EAOgAHIAIgBGogA0EHahDSASADQRBqJAAMAQsQygEACyAFQRBqJAALFwAgACADNgIQIAAgAjYCDCAAIAE2AggLDQAgACABIAJBARCiBwsSACAAIAEgAkL/////DxCwBacLzAEBA38jAEEgayIDQgA3AxggA0IANwMQIANCADcDCCADQgA3AwAgAS0AACICRQRAQQAPCyABLQABRQRAIAAhAQNAIAEiA0EBaiEBIAMtAAAgAkYNAAsgAyAAaw8LA0AgAyACQQN2QRxxaiIEIAQoAgBBASACdHI2AgAgAS0AASECIAFBAWohASACDQALAkAgACIBLQAAIgJFDQADQCADIAJBA3ZBHHFqKAIAIAJ2QQFxRQ0BIAEtAAEhAiABQQFqIQEgAg0ACwsgASAAawuAAQEEfyAAIABBPRC0BSIBRgRAQQAPCwJAIAAgASAAayIEai0AAA0AQYiBCygCACIBRQ0AIAEoAgAiAkUNAANAAkAgACACIAQQ6gFFBEAgASgCACAEaiICLQAAQT1GDQELIAEoAgQhAiABQQRqIQEgAg0BDAILCyACQQFqIQMLIAMLTgEBf0EBQRwQGiIGIAU6ABQgBiAAIAEQrAE2AggCfyADBEAgACACENUCDAELIAAgAhCsAQshBSAGIAA2AhggBiAENgIQIAYgBTYCDCAGCwkAIAC9QjSIpwuZAQEDfCAAIACiIgMgAyADoqIgA0R81c9aOtnlPaJE65wriublWr6goiADIANEff6xV+Mdxz6iRNVhwRmgASq/oKJEpvgQERERgT+goCEFIAAgA6IhBCACRQRAIAQgAyAFokRJVVVVVVXFv6CiIACgDwsgACADIAFEAAAAAAAA4D+iIAQgBaKhoiABoSAERElVVVVVVcU/oqChC5IBAQN8RAAAAAAAAPA/IAAgAKIiAkQAAAAAAADgP6IiA6EiBEQAAAAAAADwPyAEoSADoSACIAIgAiACRJAVyxmgAfo+okR3UcEWbMFWv6CiRExVVVVVVaU/oKIgAiACoiIDIAOiIAIgAkTUOIi+6fqovaJExLG0vZ7uIT6gokStUpyAT36SvqCioKIgACABoqGgoAuNAQAgACAAIAAgACAAIABECff9DeE9Aj+iRIiyAXXg70k/oKJEO49otSiCpL+gokRVRIgOVcHJP6CiRH1v6wMS1tS/oKJE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EC4BmgFsrHwhEAwBCwsgAkEBaiECDAALAAtBACEAA0AgDCAAQQJ0aigCACICBEAgCCACQVBBACACKAIAQQNxQQJHG2ooAigoAhAoAvgBIgVBAnRqIgogCigCACACKAIQLgGaAWo2AgAgBSABIAEgBUgbIQEgAEEBaiEADAELCyADQQFqIQMMAQsACwALIAZBEGokACARDwsgECARfCERDAALAAuDAQECfyAAIAFBARCNASIBKAIQQQA2AsQBQQUQnwghAiABKAIQIgNBADYCzAEgAyACNgLAAUEFEJ8IIQIgASgCECIDIAI2AsgBQdz9CigCACICIAAgAhsoAhBBuAFBwAEgAhtqIAE2AgAgAyACNgK8AUHc/QogATYCACADQQA2ArgBIAELuQEBA38gACAAQTBqIgIgACgCAEEDcUEDRhsoAigoAhAiASgC4AEgASgC5AEiAUEBaiABQQJqENoBIQEgACACIAAoAgBBA3FBA0YbKAIoKAIQIAE2AuABIAAgAiAAKAIAQQNxQQNGGygCKCgCECIBIAEoAuQBIgNBAWo2AuQBIAEoAuABIANBAnRqIAA2AgAgACACIAAoAgBBA3FBA0YbKAIoKAIQIgAoAuABIAAoAuQBQQJ0akEANgIACyAAIAAgASACIABBp4cBECciAAR/IAAQkQIFQR4LEP8OC00AIAEoAhBBwAFqIQEDQCABKAIAIgEEQCABKAIQKAKYAhAYIAEoAhAoAqACEBggASgCECIBQQA2ArABIAFBuAFqIQEMAQUgABD4DgsLCz8BAn8gACgCECgCqAIhAANAIAAiASgCDCIARSAAIAFGckUEQCAAKAIMIgJFDQEgASACNgIMIAIhAAwBCwsgAQsLACAAIAFBARCFDwsLACAAIAFBABCFDwuGAQECfwJAIAAgASkDCBC/A0UNACAAEDkgAEYEQCAAIAEQbiECA0AgAgRAIAAgAiABEHIgACACEI0GIQIMAQsLIAAtABhBIHEEQCABEMcLCyAAIAEQzwcgARCzByAAQQEgASkDCBC/BgsgACABQRJBAEEAEMgDDQAgABA5IABGBEAgARAYCwsLgwEBA38jAEEgayIBJAAgACgCECICKAIMIgNBDE8EQCABQeQANgIUIAFBibwBNgIQQYj2CCgCAEHYvwQgAUEQahAgGhA7AAsgASACKAIINgII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ACAAIAEQRSIBRQ0AIAEtAABFDQAgACABIAEQdkEAR0EAIAcgAiADENsCIQEgACgCECABNgJ8IAAQLSgCECIBIAEtAHFBEHI6AHELIABBgNwKKAIAQQBBABBiIQEgACgCECICQf8BIAEgAUH/AU4bOgCgASAAIAIoAggoAgQoAgARAQALRAACQCAAECgEQCAAECRBD0YNAQsgAEEAEH8LAkAgABAoBEAgAEEAOgAPDAELIABBADYCBAsgABAoBH8gAAUgACgCAAsLlAYBBH8jAEGQAWsiASQAAkACQCAARQ0AIAAtAABFDQBB8NoKKAIAIgMEQEG+3gotAAANASABIAM2AnBB/vkEIAFB8ABqECpBvt4KQQE6AAAMAQtBwN4KKAIAIQMCQEHk2gooAgAEQCADDQEDQEHM3gooAgAgAk0EQEHE3gpBCBAxQcTeChA0QcDeCkHk2gooAgAiAjYCACABQfQAaiACEP4JQdzeCiABKAKMATYCAEHU3gogASkChAE3AgBBzN4KIAEpAnw3AgBBxN4KIAEpAnQ3AgAMAwUgAUHM3gopAgA3A0ggAUHE3gopAgA3A0AgAUFAayACEBkhAwJAAkBB1N4KKAIAIgQOAgEHAAsgAUHE3gooAgAgA0EDdGopAgA3AzggAUE4aiAEEQEACyACQQFqIQIMAQsACwALAkAgA0Ho2gooAgBGDQADQEHM3gooAgAgAk0EQEHE3gpBCBAxQcTeChA0QcDeCkHo2gooAgAiAjYCACACRQ0CIAItAABFDQIgAUH0AGogAhD+CUHc3gogASgCjAE2AgBB1N4KIAEpAoQBNwIAQczeCiABKQJ8NwIAQcTeCiABKQJ0NwIABSABQczeCikCADcDMCABQcTeCikCADcDKCABQShqIAIQGSEDAkACQEHU3gooAgAiBA4CAQcACyABQcTeCigCACADQQN0aikCADcDICABQSBqIAQRAQALIAJBAWohAgwBCwsLAkAgAC0AAEEvRg0AQczeCigCAEUNACABQdzeCigCADYCGCABQdTeCikCADcDECABQczeCikCADcDCCABQcTeCikCADcDACABIAAQ/QkhAgwCCyAAIQIMAQtBACECA0AgAkEDRwRAIAAgAkH54gFqLAAAIAAQQEEBahDkCyIDQQFqIAAgAxshACACQQFqIQIMAQsLIAFB3N4K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AUEHcXRyOgAADwtBl7IDQe/6AEHRAEHfIRAAAAtQAQF/IAEoAhAoApwBRQRAQQAPCyAAIAFBMEEAIAEoAgBBA3FBA0cbaigCKBDDDgR/IAAgAUFQQQAgASgCAEEDcUECRxtqKAIoEMMOBUEACws1AQJ/AkAgABAcIgFFBEAMAQsgARCGAiECA0AgACABEB0iAUUNASACIAEQnggaDAALAAsgAguGAwEDfyABIAFBMGoiAyABKAIAQQNxQQNGGygCKCgCECICKALQASACKALUASICQQFqIAJBAmoQ2gEhAiABIAMgASgCAEEDcUEDRhsoAigoAhAgAjYC0AEgASADIAEoAgBBA3FBA0YbKAIoKAIQIgIgAigC1AEiBEEBajYC1AEgAigC0AEgBEECdGogATYCACABIAMgASgCAEEDcUEDRhsoAigoAhAiAygC0AEgAygC1AFBAnRqQQA2AgAgASABQTBrIgMgASgCAEEDcUECRhsoAigoAhAiAigC2AEgAigC3AEiAkEBaiACQQJqENoBIQIgASADIAEoAgBBA3FBAkYbKAIoKAIQIAI2AtgBIAEgAyABKAIAQQNxQQJGGygCKCgCECICIAIoAtwBIgRBAWo2AtwBIAIoAtgBIARBAnRqIAE2AgAgASADIAEoAgBBA3FBAkYbKAIoKAIQIgEoAtgBIAEoAtwBQQJ0akEANgIAIAAoAhBBAToA8AEgABBhKAIQQQE6APABC4ABAQJ/QcABIQMgACECA0AgAigCECADaigCACICBEBBuAEhAyABIAJHDQELCyACBEAgASgCECICKAK8ASEBIAIoArgBIgIEQCACKAIQIAE2ArwBCyABIAAgARsoAhBBuAFBwAEgARtqIAI2AgAPC0GbpANBq7oBQb8BQdyfARAAAAsJAEEBIAAQ1AILYQEEfyAAKAIEIQQCQANAIAIgBEYNASACQQJ0IAJBAWohAiAAKAIAIgVqIgMoAgAgAUcNAAsgACAEQQFrIgE2AgQgAyAFIAFBAnQiAWooAgA2AgAgACgCACABakEANgIACwtDAAJAIAAQKARAIAAQJEEPRg0BCyAAEI4PCwJAIAAQKARAIABBADoADwwBCyAAQQA2AgQLIAAQKAR/IAAFIAAoAgALC3QBAn8jAEEgayICJAACQCAArSABrX5CIIhQBEAgACABEE4iA0UNASACQSBqJAAgAw8LIAIgATYCBCACIAA2AgBBiPYIKAIAQabqAyACECAaEC8ACyACIAAgAWw2AhBBiPYIKAIAQfXpAyACQRBqECAaEC8AC7cNAgh/A3wjAEHAAmsiBCQAAkAgABA5IgkgACgCAEEDcSIKQQAQ5QMiBUUNAANAIAVFDQECQCAAIAUQRSIDRQ0AIAMtAABFBEAgBSgCCEHC8AAQPkUNAQsgAUG57QQQGxogASACKAIAEEQgBSgCCCACIAEQuwIgAUGTzQMQGxoCQCACLQAFQQFHDQACQCAFKAIIIgNBwcMBED4NACADQbHDARA+DQAgA0G5wwEQPg0AIANBl8MBED4NACADQajDARA+DQAgA0GfwwEQPkUNAQsgACAFEEUiA0UNASADLQAARQ0BIANBABCQCiIIRQRAIAQgAzYCAEHK+gQgBBAqDAILIAFB7v8EEBsaIAIgAigCACIDQQFqNgIAIAEgAxBEIAFB/s0EEBsaQQAhBwNAIAgoAgAgB00EQCACIAIoAgBBAWs2AgAgAUHu/wQQGxogASACKAIAEEQgAUH+yAEQGxogCBCOCgwDCyAHBEAgAUG57QQQGxoLIAgoAgghAyACIAIoAgAiBkEBajYCACABIAYQRCABQfDYAxAbGiABIAIoAgAQRAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADIAdB0ABsaiIDKAIAIgYOEAoKAAABAQIDBAQGBwsFBQgJCyAEQdAAQfAAIAZBAkYbNgJQIAFB7+wEIARB0ABqEB4gASACKAIAEEQgASADQQhqELQIDAoLIARBwgBB4gAgBkEERhs2AmAgAUHv7AQgBEHgAGoQHiABIAIoAgAQRCABIANBCGoQtAgMCQsgAUGk7QRBABAeIAEgAigCABBEIAEgA0EIahC0CAwICyABQYztBEEAEB4gASACKAIAEEQgAysDCCELIAQgAysDEDkDmAEgBCALOQOQASABQffqBCAEQZABahAeIAEgAigCABBEIARB4wBB8gAgAygCGCIGQQFGG0HsACAGGzYCgAEgAUH87AQgBEGAAWoQHiABIAIoAgAQRCAEIAMrAyA5A3AgAUG76gQgBEHwAGoQHiABIAIoAgAQRCABQdfMAxAbGiADKAIoIAIgARC7AiABQQoQZQwHCyAEQcMAQeMAIAZBCEYbNgKgASABQe/sBCAEQaABahAeIAEgAigCABBEIAFBo+wEQQAQHiABIAIoAgAQRCABQfDMAxAbGiADKAIIIAIgARC7AiABQQoQZQwGCyAEQcMAQeMAIAZBDUYbNgKQAiABQe/sBCAEQZACahAeIAEgAigCABBEAkACQAJAIAMoAggOAgABAgsgAUGj7ARBABAeIAEgAigCABBEIAFB8MwDEBsaIAMoAhAgAiABELsCIAFBChBlDAcLIAFB/esEQQAQHiABIAIoAgAQRCABIAIoAgAQRCADKwMQIQsgBCADKwMYOQOIAiAEIAs5A4ACIAFBo+sEIARBgAJqEB4gASACKAIAEEQgAysDICELIAQgAysDKDkD+AEgBCALOQPwASABQY3rBCAEQfABahAeIAEgAigCABBEIAEgAygCMCADKAI0IAIQkA8MBgsgAUGQ7ARBABAeIAEgAigCABBEIAEgAigCABBEIAMrAxAhCyADKwMYIQwgBCADKwMgOQPgASAEIAw5A9gBIAQgCzkD0AEgAUHV6wQgBEHQAWoQHiABIAIoAgAQRCADKwMoIQsgAysDMCEMIAQgAysDODkDwAEgBCAMOQO4ASAEIAs5A7ABIAFBuesEIARBsAFqEB4gASACKAIAEEQgASADKAJAIAMoAkQgAhCQDwwFCyABQbDtBEEAEB4gASACKAIAEEQgBCADKwMIOQOgAiABQczqBCAEQaACahAeIAEgAigCABBEIAFBjc0DEBsaIAMoAhAgAiABELsCIAFBChBlDAQLIAFBmO0EQQAQHiABIAIoAgAQRCABQYPNAxAbGiADKAIIIAIgARC7AiABQQoQZQwDCyABQfHrBEEAEB4gASACKAIAEEQgBCADKAIINgKwAiABQe7HBCAEQbACahAeDAILIARBsgI2AhQgBEGFuwE2AhBBiPYIKAIAQdi/BCAEQRBqECAaEDsACyAEQeUAQcUAIAYbNgJAIAFB7+wEIARBQGsQHiABIAIoAgAQRCADKwMIIQsgAysDECEMIAMrAxghDSAEIAMrAyA5AzggBCANOQMwIAQgDDkDKCAEIAs5AyAgAUHJygQgBEEgahAeCyACIAIoAgBBAWsiAzYCACABIAMQRCABQa8IEBsaIAdBAWohBwwACwALIAAgBRBFIAIgARC7AgsgCSAKIAUQ5QMhBQwACwALIARBwAJqJAAL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IAM2AgAgAUEgakG4MiABEIQBA0AgAi0AACACQQFqIQINAAtBuqADIQMMAQUgAUEgakEpEH8LCwsgAEGsywMgAUEgahDCARDAAwwACwALIAFBIGoQXCABQTBqJAALaQECfyMAQRBrIgMkACADQgA3AwggA0IANwMAA0ACQCACLQAAIgRB3ABHBEAgBA0BIAAgASADEMIBEHEgAxBcIANBEGokAA8LIANB3AAQfyACLQAAIQQLIAMgBMAQfyACQQFqIQIMAAsAC5ICAQV/IAAQhwUhAyAAECQhAQJAAkACQANAIAEiAkUNASADIAFBAWsiAWotAABBLkcNAAsgABAkIQEDQCABQQFrIQUgASACRwRAIAMgBWotAABBMEcNAgsCQCAAECgEQCAALQAPIgRFDQQgACAEQQFrOgAPDAELIAAgACgCBEEBazYCBAsgASACRyAFIQENAAsgABAkIgFBAkkNACABIANqIgFBAmsiAi0AAEEtRw0AIAFBAWstAABBMEcNACACQTA6AAAgABAoBEAgAC0ADyIBRQ0DIAAgAUEBazoADw8LIAAgACgCBEEBazYCBAsPC0HijwNBoPwAQZIDQegqEAAAC0HijwNBoPwAQagDQegqEAAAC8cBAQN/IwBBEGsiAiQAIAFBUEEAIAEoAgBBA3FBAkcbaiIBQVBBACABKAIAQQNxIgNBAkcbaigCKCEEIAFBMEEAIANBA0cbaigCKCEDIAIgASkDCDcDCCACIAEpAwA3AwACQCAAIAMgBCACENkCRQ0AIAAQOSAARgRAIAAtABhBIHEEQCABEMcLCyAAIAEQzwcgARCzByAAQQIgASkDCBC/BgsgACABQQ9BAEEAEMgDDQAgABA5IABGBEAgARAYCwsgAkEQaiQACxoAIAAgARCsASIBIAIQwQMgACABQQAQjAEaC0UAIAAgAUG+zgMgAisDAEQAAAAAAABSQKMQjQMgACABQb7OAyADIAIrAwgiA6EgA0G42wotAAAbRAAAAAAAAFJAoxCNAwt9AQN/IwBBMGsiAiQAIAAQISEDIAAQLSEEAkACQCADBEBBfyEAIAQgASADEJIGQX9HDQEMAgsgAiAAKQMINwMAIAJBEGoiA0EeQdTPASACELQBGkF/IQAgASADIAQoAkwoAgQoAgQRAABBf0YNAQtBACEACyACQTBqJAAgAAvN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ABCPATYCuAJBAEHk2wooAgBEAAAAAAAALEBEAAAAAAAA8D8QTCEOIABBnKAKNgLIAiAAIA45A8ACIAAgARAhNgK0ASAAKAKoAhAYIABBADYCqAIgACgCrAIQGCAAQQA2AqwCIAAoArQCEBggAEEANgK0AgJAAkAgAUGqKRAnIgUEQCAAIAFB/doAECciAkG8zgMgAhs2AqACIAAgAUHw2gAQJyICQbqgAyACGyIENgKkAiAAKAKgAiICIAQQyQIgAmoiAkEAIAItAAAbIgIEQCADIAIsAAA2AtACQYLkBCADQdACahAqIABB8f8ENgKkAgsgACAFEGQ2AqgCIANCADcD0AQgA0IANwPIBCADQgA3A8AEIANBwARqQQQQJiECIAMoAsAEIAJBAnRqIAMoAtQENgIAIAAoAqgCIQIDQCACIAAoAqACELEFIgIEQCADIAI2AtQEIANBwARqQQQQJiECIAMoAsAEIAJBAnRqIAMoAtQENgIAQQAhAgwBCwsgAygCyAQiAkEBayIFQQBIDQIgAkECTwRAIANBADYC1AQgA0HABGoiBEEEECYhAiADKALABCACQQJ0aiADKALUBDYCACAEIABBrAJqQQBBBBDHAQtBACECA0AgAygCyAQgAksEQCADIAMpA8gENwO4AiADIAMpA8AENwOwAiADQbACaiACEBkhCQJAAkACQCADKALQBCIEDgICAAELIAMoAsAEIAlBAnRqKAIAEBgMAQsgAygCwAQgCUECdGooAgAgBBEBAAsgAkEBaiECDAELCyADQcAEaiICQQQQMSACEDQgACAFNgKwAiABQZEkECciBUUNASAFLQAARQ0BQQAhBiAAKAKwAkECakEEED8hB0EBIQIDQCAAKAKwAiIEIAJOBEAgACACIAQgBRDfCARAIAcgBkEBaiIGQQJ0aiACNgIACyACQQFqIQIMAQsLAkAgBgRAIAcgBjYCACAHIAZBAnRqIARBAWo2AgQMAQsgAyAFNgLAAkHA5QQgA0HAAmoQKiAHEBhBACEHCyAAIAc2ArQCDAELIABBATYCsAILQQEQ2gIgA0GoBGohDCADQcgEaiENQYC/CCgCACEIIAAgACgCmAEiAjYCnAEDQAJAAkACQCACBEACfyAAKAI8IgRFBEBBACEGQQAMAQsgBCgCDCEGIAQoAggLIQQgAiAGNgIYIAIg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/////////w+DhCICQoGAgICAgICACFoEQCAAQgF8IQAMAQsgAkKAgICAgICAgAhSDQAgAEIBgyAAfCEACyAAQoCAgICAgIAIhSAAIABC/////////wdWIgQbIQAgBK0LIQIgBUEgaiQAIAFCgICAgICAgICAf4MgAkI0hoQgAIS/C4kCAAJAIAAEfyABQf8ATQ0BAkBBxIMLKAIAKAIARQRAIAFBgH9xQYC/A0YNAwwBCyABQf8PTQRAIAAgAUE/cUGAAXI6AAEgACABQQZ2QcABcjoAAEECDwsgAUGAQHFBgMADRyABQYCwA09xRQRAIAAgAUE/cUGAAXI6AAIgACABQQx2QeABcjoAACAAIAFBBnZBP3FBgAFyOgABQQMPCyABQYCABGtB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBA8LC0H8gAtBGTYCAEF/BUEBCw8LIAAgAToAAEEBC8ICAQR/IwBB0AFrIgUkACAFIAI2AswBIAVBoAFqIgJBAEEoEDgaIAUgBSgCzAE2AsgBAkBBACABIAVByAFqIAVB0ABqIAIgAyAEENELQQBIBEBBfyEEDAELIAAoAkxBAEggACAAKAIAIghBX3E2AgACfwJAAkAgACgCMEUEQCAAQdAANgIwIABBADYCHCAAQgA3AxAgACgCLCEGIAAgBTYCLAwBCyAAKAIQDQELQX8gABCmBw0BGgsgACABIAVByAFqIAVB0ABqIAVBoAFqIAMgBBDRCwshAiAGBEAgAEEAQQAgACgCJBEDABogAEEANgIwIAAgBjYCLCAAQQA2AhwgACgCFCEBIABCADcDECACQX8gARshAgsgACAAKAIAIgAgCEEgcXI2AgBBfyACIABBIHEbIQQNAAsgBUHQAWokACAECxIAIAAgAUEKQoCAgIAIELAFpwthAAJAIAANACACKAIAIgANAEEADwsgACABEKoEIABqIgAtAABFBEAgAkEANgIAQQAPCyAAIAEQyQIgAGoiAS0AAARAIAIgAUEBajYCACABQQA6AAAgAA8LIAJBADYCACAAC38CAn8CfiMAQaABayIEJAAgBCABNgI8IAQgATYCFCAEQX82AhggBEEQaiIFQgAQjwIgBCAFIANBARDYCyAEKQMIIQYgBCkDACEHIAIEQCACIAQoAogBIAEgBCgCFCAEKAI8a2pqNgIACyAAIAY3AwggACAHNwMAIARBoAFqJAALlAEBAn8CQCABEJoBRQRAIABBAEGAASAAKAIAEQMAIQQDQCAERQ0CIAQoAgwQdiEFIAIgBCgCCCAEKAIMIAVBAEcgBCgCECADEKwEIgUgBC0AFjoAFiAFIAQtABU6ABUgASAFQQEgASgCABEDABogACAEQQggACgCABEDACEEDAALAAtBr5wDQZu6AUHbAEGIIxAAAAsLSQEBfyMAQRBrIgEkACABQY7mADsBCiABIAA7AQwgASAAQRB2OwEOQaCFC0Gg1gpBBhAfGkGg1gogAUEKakEGEB8aIAFBEGokAAtRAQJ/IwBBMGsiASQAAkACQCAABEBBASAAEKAHIgBBf0YNAkGwgQsgADYCAAwBC0GwgQsoAgAhAAsgAEEIakGL3gEgABshAgsgAUEwaiQAIAIL5wIBA38CQCABLQAADQBBqNcBEKsEIgEEQCABLQAADQELIABBDGxBoPUIahCrBCIBBEAgAS0AAA0BC0GG2gEQqwQiAQRAIAEtAAANAQtB8vEBIQELAkADQCABIAJqLQAAIgRFIARBL0ZyRQRAQRchBCACQQFqIgJBF0cNAQwCCwsgAiEEC0Hy8QEhAwJAAkACQAJAAkAgAS0AACICQS5GDQAgASAEai0AAA0AIAEhAyACQcMARw0BCyADLQABRQ0BCyADQfLxARBNRQ0AIANByMkBEE0NAQsgAEUEQEHE9AghAiADLQABQS5GDQILQQAPC0GAhAsoAgAiAgRAA0AgAyACQQhqEE1FDQIgAigCICICDQALC0EkEE8iAgRAIAJBxPQIKQIANwIAIAJBCGoiASADIAQQHxogASAEakEAOgAAIAJBgIQLKAIANgIgQYCECyACNgIACyACQcT0CCAAIAJyGyECCyACC68BAQZ/IwBB8AFrIgYkACAGIAA2AgBBASEHAkAgA0ECSA0AQQAgAWshCSAAIQUDQCAAIAUgCWoiBSAEIANBAmsiCkECdGooAgBrIgggAhCqA0EATgRAIAAgBSACEKoDQQBODQILIAYgB0ECdGogCCAFIAggBSACEKoDQQBOIggbIgU2AgAgB0EBaiEHIANBAWsgCiAIGyIDQQFKDQALCyABIAYgBxDgCyAGQfABaiQAC5QCAQN/IAAQLSEFIAAQ7AEhBgJAIAEoAhAiBEEASA0AIAAQrwUgBEwNACAFIAYoAgwgASgCEEECdGooAgAiBCAEEHZBAEcQjAEaAn8gAwRAIAUgAhDVAgwBCyAFIAIQrAELIQQgBigCDCABKAIQQQJ0aiAENgIAAkAgAC0AAEEDcQ0AIAVBABCxAigCECIEIAEoAggQrAciBgRAIAUgBigCDCIEIAQQdkEARxCMARogBgJ/IAMEQCAFIAIQ1QIMAQsgBSACEKwBCzYCDAwBCyAEIAUgASgCCCACIAMgASgCECAAKAIAQQNxEKwEQQEgBCgCABEDABoLIAUgACABEOEMDwtB0KQDQZu6AUH3A0GrxAEQAAALwgEBA38CQCACKAIQIgMEfyADBSACEKYHDQEgAigCEAsgAigCFCIEayABSQRAIAIgACABIAIoAiQRAwAPCwJAAkAgAUUgAigCUEEASHINACABIQMDQCAAIANqIgVBAWstAABBCkcEQCADQQFrIgMNAQwCCwsgAiAAIAMgAigCJBEDACIEIANJDQIgASADayEBIAIoAhQhBAwBCyAAIQVBACEDCyAEIAUgARAfGiACIAIoAhQgAWo2AhQgASADaiEECyAEC9gBAQR/IwBBEGsiBCQAAkACQCABEOwBIgEEQCACKAIQIgNB/////wNPDQEgASgCDCADQQJ0IgVBBGoiBhBqIgNFDQIgAyAFakEANgAAIAEgAzYCDCACKAIMEHYhBSACKAIMIQMCfyAFBEAgACADENUCDAELIAAgAxCsAQshACABKAIMIAIoAhBBAnRqIAA2AgAgBEEQaiQADwtBktQBQZu6AUHVAUHGNBAAAAtBjsADQdL8AEHNAEG9swEQAAALIAQgBjYCAEGI9ggoAgBB9ekDIAQQIBoQLwALlAEBA38jAEEQayIDJAAgAyABOgAPAkACQCAAKAIQIgIEfyACBSAAEKYHBEBBfyECDAMLIAAoAhALIAAoAhQiBEYNACABQf8BcSICIAAoAlBGDQAgACAEQQFqNgIUIAQgAToAAAwBCyAAIANBD2pBASAAKAIkEQMAQQFHBEBBfyECDAELIAMtAA8hAgsgA0EQaiQAIAILWQEBfyAAIAAoAkgiAUEBayABcjYCSCAAKAIAIgFBCHEEQCAAIAFBIHI2AgBBfw8LIABCADcCBCAAIAAoAiwiATYCHCAAIAE2AhQgACABIAAoAjBqNgIQQQALlAMCA34CfwJAIAC9IgJCNIinQf8PcSIEQf8PRw0AIABEAAAAAACAVkCiIgAgAKMPCyACQgGGIgFCgICAgICAwNaAf1gEQCAARAAAAAAAAAAAoiAAIAFCgICAgICAwNaAf1EbDwsCfiAERQRAQQAhBCACQgyGIgFCAFkEQANAIARBAWshBCABQgGGIgFCAFkNAAsLIAJBASAEa62GDAELIAJC/////////weDQoCAgICAgIAIhAshASAEQYUISgRAA0ACQCABQoCAgICAgKALfSIDQgBTDQAgAyIBQgBSDQAgAEQAAAAAAAAAAKIPCyABQgGGIQEgBEEBayIEQYUISg0AC0GFCCEECwJAIAFCgICAgICAoAt9IgNCAFMNACADIgFCAFINACAARAAAAAAAAAAAog8LIAFC/////////wdYBEADQCAEQQFrIQQgAUKAgICAgICABFQgAUIBhiEBDQALCyACQoCAgICAgICAgH+DIAFCgICAgICAgAh9IAStQjSGhCABQQEgBGutiCAEQQBKG4S/C+ICAQV/AkACQAJAIAIoAkxBAE4EQCABQQJIDQEMAgtBASEGIAFBAUoNAQsgAiACKAJIIgJBAWsgAnI2AkggAUEBRw0BIABBADoAACAADwsgAUEBayEEIAAhAQJAA0ACQAJAAkAgAigCBCIDIAIoAggiBUYNAAJ/IANBCiAFIANrEPoCIgcEQCAHIAIoAgQiA2tBAWoMAQsgAigCCCACKAIEIgNrCyEFIAEgAyAFIAQgBCAFSxsiAxAfGiACIAIoAgQgA2oiBTYCBCABIANqIQEgBw0CIAQgA2siBEUNAiAFIAIoAghGDQAgAiAFQQFqNgIEIAUtAAAhAwwBCyACEL0FIgNBAE4NAEEAIQQgACABRg0DIAItAABBEHENAQwDCyABIAM6AAAgAUEBaiEBIANB/wFxQQpGDQAgBEEBayIEDQELCyAARQRAQQAhBAwBCyABQQA6AAAgACEECyAGDQALIAQLpBgDE38EfAF+IwBBMGsiCSQAAkACQAJAIAC9IhlCIIinIgNB/////wdxIgZB+tS9gARNBEAgA0H//z9xQfvDJEYNASAGQfyyi4AETQRAIBlCAFkEQCABIABEAABAVPsh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IABEAAAAAAAA4D+ioiIDob1CgICAgHCDvyIERAAAIGVHFfc/oiIBIAkgCEEUdmq3IgKgIgUgASACIAWhoCAAIABEAAAAAAAAAECgoyIBIAMgASABoiICIAKiIgEgASABRJ/GeNAJmsM/okSveI4dxXHMP6CiRAT6l5mZmdk/oKIgAiABIAEgAUREUj7fEvHCP6JE3gPLlmRGxz+gokRZkyKUJEnSP6CiRJNVVVVVVeU/oKKgoKIgACAEoSADoaAiACAEoEQAou8u/AXnPaIgAEQAACBlRxX3P6KgoKAhAAsgAAtZAQF/IwBBIGsiAiQAIAAQ7AEiAAR/IAAoAgghACACQgA3AwggAkEANgIYIAJCADcDECACIAE2AgggAkIANwMAIAAgAkEEIAAoAgARAwAFQQALIAJBIGokAAuVAQIDfwV8IAMQVyIImiEJIAAoAgghBiADEEohByAGEBwhBANAIAQEQCAEKAIQKAKUASIFIAIgBSsDACIKIAiiIAcgBSsDCCILoqCgOQMIIAUgASAKIAeiIAsgCaKgoDkDACAGIAQQHSEEDAELCyAAQThqIQQDQCAEKAIAIgAEQCAAIAEgAiADEK8HIABBBGohBAwBCwsLtQIBBX8jAEEwayIDJAAgACgACCABTwRAIABBADYCFCAAQQQQJiEEIAAoAgAgBEECdGogACgCFDYCACAAQQQQjAIgACgACCABQX9zakECdCIEBEAgACgCACADIAApAgg3AyggAyAAKQIANwMgIANBIGogAUEBahAZIAAoAgAhByADIAApAgg3AxggAyAAKQIANwMQQQJ0aiAHIANBEGogARAZQQJ0aiAEELYBGgsgACACNgIUIAMgACkCCDcDCCADIAApAgA3AwAgAyABEBkhAQJAAkACQCAAKAIQIgIOAgIAAQsgACgCACABQQJ0aigCABAYDAELIAAoAgAgAUECdGooAgAgAhEBAAsgACgCACABQQJ0aiAAKAIUNgIAIANBMGokAA8LQfGhA0GFuAFBFkGhGhAAAAsdACAAKAIIIAFBARCFARogASgCECgCgAEgADYCDAtEAQF/IAAEQCAAKAIEIgEEQCABEG0LIAAoAggiAQRAIAEQbQsgACgCDBAYIAAoAhQiAQRAIAEgACgCEBEBAAsgABAYCws+AQN/IAAQLSECIAAoAhAiAQRAA0Ag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/wotAABB1P8KQQE6AABBAXFFBEAgCkEwQQAgCigCAEEDcUEDRxtqKAIoECEhACAEIApBUEEAIAooAgBBA3FBAkcbaigCKBAhNgIEIAQgADYCAEHo7QQgBBAqCyAGEBggChCZBAwFBSAEKAKMASENIAQrA1ghEyAFIAQrA4ABOQMIIAUgEzkDACABQQFrIQEgBUEQaiEFIAIgDWohAgwCCwALCwNAIAItAAAiBUEJayIBQRdLQQEgAXRBn4CABHFFckUEQCACQQFqIQIMAQsLIAogABDeBiEJIBIEQCAEKAJ8IQEgCSAVOQMYIAkgFjkDECAJIAE2AggLIAgEQCAEKAJ4IQEgCSAXOQMoIAkgFDkDICAJIAE2AgwLIAIgBUEARyIRaiECQQAhBQNAIAAgBUcEQCAFQQR0IgEgCSgCAGoiDSABIAZqIgEpAwA3AwAgDSABKQMINwMIIAVBAWohBQwBCwsgBhAYDAELCyAKKAIQIgUoAmAiAARAIAogAEH12QAQsQQgCigCECEFCyAFKAJsIgAEQCAKIABB2tkAELEEIAooAhAhBQsgBSgCZCIABH8gCiAAQfDZABCxBCAKKAIQBSAFCygCaCIABEAgCiAAQejZABCxBAsgC0EBaiELCyADIAoQMCEKDAELCyADIA8QHSEPDAELCyALRQRAQQAhAQwBC0ECQQEgAxC0AiALRhshAQtBACEAQQAhCiADKAIQKAIIIgIoAlgiCARAIAJBADYCVEEBIQoLAkAgCA0AQfjaCigCAEEBRw0AIAMQtgRFDQBBASEAIAMoAhAoAgwiAkUNACACQQA6AFELIAMQwQIgCARAIAMoAhAhD0QAAAAAAAAAACEVRAAAAAAAAAAAIRZBACERQQAhEkEAIQ4jAEFAaiILJAAgAygCECICKAKQASENIARB2ABqIgkgAikDEDcDACAJIAIpAyg3AxggCSACKQMgNwMQIAkgAikDGDcDCAJAIAIoAggoAlgiBkUNAAJAIAkrAwAgCSsDEGINACAJKwMIIAkrAxhiDQAgCUL/////////dzcDGCAJQv/////////3/wA3AwAgCUL/////////9/8ANwMIIAlC/////////3c3AxALIAYoAgghBwNAIBEgBigCAE8NASALQgA3AzggC0IANwMwIAtCADcDKCALQgA3AyACQAJAAkACQAJA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AisDAKEiGyAboiACKwMYIAIrAwihIhsgG6KgIAUrAxAgBSsDAKEgBCsDOKAgBCsDKKEiGyAbokQAAAAAAADQP6JlIQMMAQsgBSgCICEDIAUoAiQgASACKQMYNwPIAiABIAIpAxA3A8ACIAMgAUHAAmoQ5gwhBiAEKAJIIQMgBCgCTCABIAIpAwg3A7gCIAEgAikDADcDsAIgAyABQbACahDmDCEHIAQoAkgiEUEBdCEXIAUoAiAiDkEBdCEYIBFBAWshGSAOQQFrIRpBACEDQQAhCAJAA0AgASAGIAhBBHRqIgkpAwg3A6gCIAEgCSkDADcDoAIgASAGIAggGmogDm9BBHRqIhIpAwg3A5gCIAEgEikDADcDkAIgAUHABGogAUGgAmogAUGQAmoQ6wwgASAHIAxBBHRqIgspAwg3A4gCIAEgCykDADcDgAIgASAHIAwgGWogEW9BBHRqIhMpAwg3A/gBIAEgEykDADcD8AEgAUGwBGogAUGAAmogAUHwAWoQ6wwgAUIANwOYBCABQgA3A+gBIAEgASkDyAQ3A9gBIAEgASkDuAQ3A8gBIAFCADcDkAQgAUIANwPgASABIAEpA8AENwPQASABIAEpA7AENwPAASABKwPoASABKwPYASIboSABKwPAASABKwPQASIcoaIgASsDyAEgG6EgASsD4AEgHKGioSEfIAEgEikDCDcDuAEgASASKQMANwOwASABIAkpAwg3A6gBIAEgCSkDADcDoAEgASALKQMINwOYASABIAspAwA3A5ABIAFBsAFqIAFBoAFqIAFBkAFqEOoMIRUgASATKQMINwOIASABIBMpAwA3A4ABIAEgCykDCDcDeCABIAspAwA3A3AgASAJKQMINwNoIAEgCSkDADcDYCABQYABaiABQfAAaiABQeAAahDqDCEWIAEgEikDCDcDWCABIBIpAwA3A1AgASAJKQMINwNIIAEgCSkDADcDQCABIBMpAwg3AzggASATKQMANwMwIAEgCykDCDcDKCABIAspAwA3AyAgASsDMCIgIAErA1giGyABQUBrIgkrAwgiIaGiIAErAyAiJSAhIBuhIiKiIAErA1AiHiABKwMoIh0gASsDOCIcoaIiJiAJKwMAIiMgHCAdoaKgoKAiJEQAAAAAAAAAAGIEfyABICUgHCAboaIgJiAgIBsgHaGioKAgJKMi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AgAiESAKKAIASARAIBAgAkECdCIRaiAMNgIAIAMgEWogBCAFaigCADYCACACQQFqIQIMAQsgAyARQQJ0aiIMIAwoAgAgBCAFaigCAGo2AgALIABBAWohAAwBCwsgByAJaiACNgIAIAEhAAwACwALIANBACADQQBKGyEJQQAhAANAIAAgCUYNByAPIABBAWoiAUECdCIDaiEEIA8gAEECdCIFaigCACEAA0AgACAEKAIATkUEQCAGIBQgAEECdGooAgAiCEECdGogAjYCACAQIAJBAnRqIAg2AgAgAEEBaiEAIAJBAWohAgwBCwsgBSAHaiEEIAMgDmohCCAFIA5qKAIAIQADQCAAIAgoAgBORQRAIAYgEyAAQQJ0aigCACIFQQJ0aigCACAEKAIASARAIBAgAkECdGogBTYCACACQQFqIQILIABBAWohAAwBCwsgAyAHaiACNgIAIAEhAAwACwALIAVBAUYNBAsgEkHqBDYCBCASQZa3ATYCAEGI9ggoAgBB2L8EIBIQIBoQOwALQcLeAUGWtwFBlQRBr7ABEAAAC0GH0AFBlrcBQZYEQa+wARAAAAtB2pUBQZa3AUGXBEGvsAEQAAALIANBACADQQBKGyEIIA0oAhwhAyABKAIcIQUgACgCHCEVQQAhAANAIAAgCEYNASAPIABBAWoiAUECdCIJaiEKIA8gAEECdCIEaigCACEAA0AgACAKKAIATkUEQCAGIBQgAEECdGooAgAiC0ECdGogAjYCACAQIAJBAnRqIAs2AgAgAyACQQN0aiAVIABBA3RqKwMAOQMAIABBAWohACACQQFqIQIMAQsLIAQgB2ohCiAJIA5qIQsgBCAOaigCACEAA0AgACALKAIATkUEQAJAIAYgEyAAQQJ0aigCACIEQQJ0aigCACIMIAooAgBIBEAgECACQQJ0aiAENgIAIAMgAkEDdGogBSAAQQN0aisDADkDACACQQFqIQIMAQsgAyAMQQN0aiIEIAUgAEEDdGorAwAgBCsDAKA5AwALIABBAWohAAwBCwsgByAJaiACNgIAIAEhAAwACwALIA0gAjYCCCAGEBgLIBJBEGokACANC8sHAg9/AXwjAEEQayINJAACQCAARQRADAELAkACQCAAKAIgRQRAIAAoAhghDiAAKAIUIQcgACgCBCIIIAAoAgAiAiAAKAIIIgEgACgCEEEAELYCIgkgATYCCCAJKAIYIQ8gCSgCFCEDQX8gCCAIQQBIG0EBaiEKQQAhAQNAIAEgCkYEQEEAIQEgAkEAIAJBAEobIQogA0EEaiEFA0ACQCABIApGBEBBACEBIAhBACAIQQBKGyECDAELIAcgAUEBaiICQQJ0aiEEIAcgAUECdGooAgAhAQNAIAQoAgAgAUwEQCACIQEMAwUgBSAOIAFBAnRqKAIAQQJ0aiILIAsoAgBBAWo2AgAgAUEBaiEBDAELAAsACwsDQCABIAJGRQRAIAFBAnQhBSADIAFBAWoiAUECdGoiBCAEKAIAIAMgBWooAgBqNgIADAELC0EAIQICQAJAAkACQCAAKAIQIgFBBGsOBQADAwMBAgsgCSgCHCEFIAAoAhwhBEEAIQADQCAAIApGDQggByAAQQFqIgJBAnRqIQsgByAAQQJ0aigCACEBA0AgCygCACABTARAIAIhAAwCBSAPIAMgDiABQQJ0IgZqIgwoAgBBAnRqKAIAQQJ0aiAANgIAIAQgBmooAgAhBiADIAwoAgBBAnRqIgwgDCgCACIMQQFqNgIAIAUgDEECdGogBjYCACABQQFqIQEMAQsACwALAAsDQCACIApGDQcgByACQQFqIgBBAnRqIQUgByACQQJ0aigCACEBA0AgBSgCACABTARAIAAhAgwCBSADIA4gAUECdGooAgBBAnRqIgQgBCgCACIEQQFqNgIAIA8gBEECdGogAjYCACABQQFqIQEMAQsACwALAAsgAUEBRg0ECyANQfQANgIEIA1BlrcBNgIAQYj2CCgCAEHYvwQgDRAgGhA7AAUgAyABQQJ0akEANgIAIAFBAWohAQwBCwALAAtBodABQZa3AUHFAEGckwEQAAALIAkoAhwhBSAAKAIcIQQDQCACIApGDQEgByACQQFqIgBBAnRqIQsgByACQQJ0aigCACEBA0AgCygCACABTARAIAAhAgwCBSAPIAMgDiABQQJ0aiIGKAIAQQJ0aigCAEECdGogAjYCACAEIAFBA3RqKwMAIRAgAyAGKAIAQQJ0aiIGIAYoAgAiBkEBajYCACAFIAZBA3RqIBA5AwAgAUEBaiEBDAELAAsACwALA0AgCEEATEUEQCADIAhBAnRqIAMgCEEBayIIQQJ0aigCADYCAAwBCwsgA0EANgIACyANQRBqJAAgCQsLACAAIAFBAhD/Bws+AQJ8IAG3IQMDQEGc2wovAQAgAkoEQBDXASEEIAAoAhAoApQBIAJBA3RqIAQgA6I5AwAgAkEBaiECDAELCwv3AQICfwJ8IwBBMGsiAyQAIAAgARAsIQEDQCABBEACQAJAIAJFDQAgASACEEUiBC0AAEUNACADIANBKGo2AiACQCAEQfCDASADQSBqEFFBAEwNACADKwMoIgVEAAAAAAAAAABjDQAgBUQAAAAAAAAAAGINAkH42gooAgANAgsgAyAENgIQQem1AyADQRBqECogABAhIQQgA0KAgICAgICA+D83AwggAyAENgIAQbGmBCADEIABCyADQoCAgICAgID4PzcDKEQAAAAAAADwPyEFCyABKAIQIAU5A4gBIAYgBaAhBiAAIAEQMCEBDAELCyADQTBqJAAgBguQAQEFfyMAQeAAayIDJAAgAEEBQab0AEHx/wQQIiEFIABBAUHlOUHx/wQQIiEGIAAQHCECIAFBAkkhAQNAIAIEQCADQTdqIgQgAigCEDQC9AEQzA0gAiAFIAQQcSABRQRAIANBDmoiBCACKAIQNAL4ARDMDSACIAYgBBBxCyAAIAIQHSECDAELCyADQeAAaiQAC9gBAQJ/IAAQeSEBA0AgAQRAIAEQggggARB4IQEMAQsLAkAgAEHiJUEAQQEQNkUNACAAKAIQKAIIEBggACgCECIBQQA2AgggASgCuAEQGCAAKAIQKAKMAhAYIAAoAhAoAtgBEBggACgCECICKALEAQRAIAIoAugBIQEDQCABIAIoAuwBSkUEQCACKALEASABQcgAbGooAgwQGCABQQFqIQEgACgCECECDAELCyACKALEAUG4f0EAIAIoAugBQX9GG2oQGAsgABA5IABGDQAgACgCECgCDBC8AQsLzgIBA38jAEHQAGsiAiQAIAJCADcDSCACQgA3A0ACfyAAEDxFBEAgAUEANgIAQQAMAQsgAkIANwM4IAJCADcDMCACQgA3AyggAkIANwMYIAJCADcDECACQgA3AwggAkG6AzYCJCACQbsDNgIgIAAQHCEDA0AgAwRAIAMoAhBBADYCsAEgACADEB0hAwwBCwsgABAcIQMDQCADBEAgA0F/IAIoAiQRAABFBEAgAkFAayIEQQAQ6AUgAiACKAIwNgIAIAQgAhDnBSAAIAQQsQNBARCSASIEQeIl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AigCACAFIAIpAgg3A7gGIAUgAikCADcDsAYgBUGwBmogAxAZQcgAbGooAixBAWtBfUsNACACKAIAIAUgAikCCDcD+AMgBSACKQIANwPwAyAFQfADaiADEBlByABsaigCPCACKAIAIQAgBSACKQIINwPoAyAFIAIpAgA3A+ADIAVB4ANqIAMQGSEBQQFrQX1NBEAgAigCACEGAn8gACABQcgAbGooAkBBAUYEQCAFIAIpAgg3A8gBIAUgAikCADcDwAEgBiAFQcABaiADEBlByABsaigCLCEAIAIoAgAgBSACKQIINwO4ASAFIAIpAgA3A7ABIAVBsAFqIAQQGUHIAGxqIAA2AiggAigCACAFIAIpAgg3A6gBIAUgAikCADcDoAEgBUGgAWogAxAZQcgAbGpBfzYCLCACKAIAIAUgAikCCDcDmAEgBSACKQIANwOQASAFQZABaiADEBlByABsaigCPCEAIAIoAgAgBSACKQIINwOIASAFIAIpAgA3A4ABIAVBgAFqIAQQGUHIAGxqIAA2AiwgAigCACEAIAUgAikCCDcDeCAFIAIpAgA3A3AgACAFQfAAaiADEBlByABsaigCKCEBIAUgAikCCDcDaCAFIAIpAgA3A2AgACAFQeAAaiABEBlByABsaiADNgIwIAIoAgAhACAFIAIpAgg3A1ggBSACKQIANwNQIAAgBUHQAGogBBAZQcgAbGooAighASAFIAIpAgg3A0ggBSACKQIANwNAIAAgBUFAayABEBlByABsaiAENgIwIAIoAgAhACAFIAIpAgg3AzggBSACKQIANwMwIAAgBUEwaiAEEBlByABsakEsagwBCyAFIAIpAgg3A4gDIAUgAikCADcDgAMgBiAFQYADaiAEEBlByABsakF/NgIsIAIoAgAgBSACKQIINwP4AiAFIAIpAgA3A/ACIAVB8AJqIAMQGUHIAGxqKAIsIQAgAigCACAFIAIpAgg3A+gCIAUgAikCADcD4AIgBUHgAmogBBAZQcgAbGogADYCKCACKAIAIAUgAikCCDcD2AIgBSACKQIANwPQAiAFQdACaiADEBlByABsaigCKCEAIAIoAgAgBSACKQIINwPIAiAFIAIpAgA3A8ACIAVBwAJqIAMQGUHIAGxqIAA2AiwgAigCACAFIAIpAgg3A7gCIAUgAikCADcDsAIgBUGwAmogAxAZQcgAbGooAjwhACACKAIAIAUgAikCCDcDqAIgBSACKQIANwOgAiAFQaACaiADEBlByABsaiAANgIoIAIoAgAhACAFIAIpAgg3A5gCIAUgAikCADcDkAIgACAFQZACaiADEBlByABsaigCKCEBIAUgAikCCDcDiAIgBSACKQIANwOAAiAAIAVBgAJqIAEQGUHIAGxqIAM2AjAgAigCACEAIAUgAikCCDcD+AEgBSACKQIANwPwASAAIAVB8AFqIAMQGUHIAGxqKAIsIQEgBSACKQIINwPoASAFIAIpAgA3A+ABIAAgBUHgAWogARAZQcgAbGogAzYCMCACKAIAIQAgBSACKQIINwPYASAFIAIpAgA3A9ABIAAgBUHQAWogBBAZQcgAbGpBKGoLKAIAIQEgBSACKQIINwMoIAUgAikCADcDICAAIAVBIGogARAZQcgAbGogBDYCMCACKAIAIAUgAikCCDcDGCAFIAIpAgA3AxAgBUEQaiADEBlByABsakEANgI8IAIoAgAgBSACKQIINwMIIAUgAikCADcDACAFIAQQGUHIAGxqQQA2AjwMAgsgACABQcgAbGooAiwhACACKAIAIAUgAikCCDcD2AMgBSACKQIANwPQAyAFQdADaiAEEBlByABsaiAANgIoIAIoAgAgBSACKQIINwPIAyAFIAIpAgA3A8ADIAVBwANqIAMQGUHIAGxqQX82AiwgAigCACAFIAIpAgg3A7gDIAUgAikCADcDsAMgBUGwA2ogBBAZQcgAbGpBfzYCLCACKAIAIQAgBSACKQIINwOoAyAFIAIpAgA3A6ADIAAgBUGgA2ogBBAZQcgAbGooAighASAFIAIpAgg3A5gDIAUgAikCADcDkAMgACAFQZADaiABEBlByABsaiAENgIwDAELIAIoAgAgBSACKQIINwOoBiAFIAIpAgA3A6AGIAVBoAZqIAMQGUHIAGxqKAIoIQYgAigCACEHIAUgAikCCDcDmAYgBSACKQIANwOQBgJAIAcgBUGQBmogBhAZQcgAbGooAjAiB0EBa0F9Sw0AIAIoAgAgBSACKQIINwOIBiAFIAIpAgA3A4AGIAVBgAZqIAYQGUHIAGxqKAI0QQFrQX1LDQAgAigCACEGIAUgAikCCDcDuAUgBSACKQIANwOwBQJAIAYgBUGwBWogBxAZQcgAbGooAgRBAEwNACACKAIAIAUgAikCCDcDqAUgBSACKQIANwOgBSAFQaAFaiAHEBlByABsaigCBCABIABBEGoQxwQNACACKAIAIAUgAikCCDcDmAUgBSACKQIANwOQBSAFQZAFaiADEBlByABsakF/NgIoIAIoAgAgBSACKQIINwOIBSAFIAIpAgA3A4AFIAVBgAVqIAMQGUHIAGxqQX82AiwgAigCACAFIAIpAgg3A/gEIAUgAikCADcD8AQgBUHwBGogBBAZQcgAbGpBfzYCLCACKAIAIQAgBSACKQIINwPoBCAFIAIpAgA3A+AEIAAgBUHgBGogBBAZQcgAbGooAighASAFIAIpAgg3A9gEIAUgAikCADcD0AQgACAFQdAEaiABEBlByABsaiAENgI0DAILIAIoAgAgBSACKQIINwPIBCAFIAIpAgA3A8AEIAVBwARqIAQQGUHIAGxqQX82AiggAigCACAFIAIpAgg3A7gEIAUgAikCADcDsAQgBUGwBGogBBAZQcgAbGpBfzYCLCACKAIAIAUgAikCCDcDqAQgBSACKQIANwOgBCAFQaAEaiADEBlByABsakF/NgIsIAIoAgAhACAFIAIpAgg3A5gEIAUgAikCADcDkAQgACAFQZAEaiADEBlByABsaigCKCEBIAUgAikCCDcDiAQgBSACKQIANwOABCAAIAVBgARqIAEQGUHIAGxqIAM2AjAMAQsgAigCACEAIAUgAikCCDcD+AUgBSACKQIANwPwBSAAIAVB8AVqIAMQGUHIAGxqKAIoIQEgBSACKQIINwPoBSAFIAIpAgA3A+AFIAAgBUHgBWogARAZQcgAbGogAzYCMCACKAIAIQAgBSACKQIINwPYBSAFIAIpAgA3A9AFIAAgBUHQBWogAxAZQcgAbGooAighASAFIAIpAgg3A8gFIAUgAikCADcDwAUgACAFQcAFaiABEBlByABsaiAENgI0CyAFQdAGaiQAC1UCAnwBfyABQQAgAUEAShshASAAtyIDIQIDfyABIARGBH8gAyACo5siAplEAAAAAAAA4EFjBEAgAqoPC0GAgICAeAUgBEEBaiEEIAIQrQchAgwBCwsLPgECfCAAIAErAwAiAhAyOQMAIAAgASsDCCIDEDI5AwggACACIAErAxCgEDI5AxAgACADIAErAxigEDI5AxgLLAEBfyAAKAIEIgIE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RQRAAkAgASADKAK4ASACQQJ0aigCACIDECEiBUGABCABKAIAEQMABEAgBCAFNgIAQaG4BCAEECoMAQtBEBBSIgYgAzYCDCAGIAU2AgggASAGQQEgASgCABEDABoLIAMgARD0CSACQQFqIQIMAQsLIARBEGokAAsoAQF/A38gAAR/IAAoAgQQ9QkgAWpBAWohASAAKAIAIQAMAQUgAQsLC00BAn8gARAhIgMEQAJAIANB4jdBBxDqAQ0AIAAgARAhQYAEIAAoAgARAwAiAEUNACAAKAIMIQILIAIPC0GI1AFB6/sAQQxBnvcAEAAACxkAIABB5PwJQZTuCSgCABCTASIAEPQJIAAL8gECA38GfCAAIAEoAiwgASgCCCIDIAEoAgQiAUEBayICQQAgASACTxtsQQR0aiICKQMANwMQIAAgAikDCDcDGCAAIAIpAwg3AwggACACKQMANwMAQQEgAyADQQFNGyEDIAArAxghBSAAKwMIIQYgACsDECEHIAArAwAhCEEBIQEDQCABIANGBEAgACAFOQMYIAAgBjkDCCAAIAc5AxAgACAIOQMABSAFIAIgAUEEdGoiBCsDCCIJIAUgCWQbIQUgByAEKwMAIgogByAKZBshByAGIAkgBiAJYxshBiAIIAogCCAKYxshCCABQQFqIQEMAQsLCyoBAX8CQCABRQ0AIAAgARBFIgBFDQAgAC0AAEUNACAAEGhBAXMhAgsgAgtRAQF/AkACQCADRQ0AIANBOhDNASIERQ0AIARBADoAACAAIAIgAyAEQQFqIgMgAREHACAEQTo6AAAMAQsgACACIANBACABEQcACyAAIAM2AiQLXAAgASgCCEUEQCAAIAEQ1QYLIAIgAEGc3QooAgAgASsDAEQAAAAAAADwPxBMOQMAIAIgAEGg3QooAgAgASgCCBCPATYCCCACIABBpN0KKAIAIAEoAgwQjwE2AgwLlwQCCHwIfyMAQUBqIgwkACABKAIAIQ8gAisDCCEGIAIrAwAhByABKAIEIRBE////////738hA0F/IQ1BfyECA0ACQCALIBBGBEAgDyANQTBsaiIBKAIAIAIgAiABKAIEQQFrRmsiASABQQNwa0EEdGohAkEAIQEMAQsgDyALQTBsaiIBKAIEIREgASgCACESQQAhAQNAIAEgEUYEQCALQQFqIQsMAwUgEiABQQR0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dSAGQRBqJAAgBUHomws2AghBhJ0LIAUoAggQogIaQYidC0EBOgAACyAFQRBqJABBjJ0LQYSdCxDcCkGQnQtBAToAAAsgAEGMnQsoAgAiADYCACAAENsKCxEAIABB6JsLRwRAIAAQ3goLCxMAIAAgASgCACIANgIAIAAQ2woLnQEBBH8gAEG4swk2AgAgAEEIaiEBA0AgARDEAiACSwRAIAEgAhCdAygCAARAIAEgAhCdAygCABCRBQsgAkEBaiECDAELCyAAQZABahA1GiMAQRBrIgIkACACQQxqIAEQogIiASgCACIDKAIABEAgAxDfCiABKAIAGiABKAIAEJwDIAEoAgAiASgCACABEL8KGhC+CgsgAkEQaiQAIAALDwAgACAAKAIEQQFqNgIECwwAIAAgACgCABDACgt7AQN/IwBBEGsiBCQAIARBBGoiAiAANgIAIAIgACgCBCIDNgIEIAIgAyABQQJ0ajYCCCACIgMoAgQhASACKAIIIQIDQCABIAJGBEAgAygCACADKAIENgIEIARBEGokAAUgABCcAxogARDBCiADIAFBBGoiATYCBAwBCwsLIAAgAEGIvAk2AgAgACgCCBBmRwRAIAAoAggQmwsLIAALBABBfwumAQEDfyMAQRBrIgQkACMAQSBrIgMkACADQRhqIAAgARDGCiADQRBqIAMoAhggAygCHCACEKsLIAMoAhAhBSMAQRBrIgEkACABIAA2AgwgAUEMaiIAIAUgABD1BmtBAnUQ+wYhACABQRBqJAAgAyAANgIMIAMgAiADKAIUEKQDNgIIIARBCGogA0EMaiADQQhqEPsBIANBIGokACAEKAIMIARBEGokAAuBBgEKfyMAQRBrIhMkACACIAA2AgBBBEEAIAcbIRUgA0GABHEhFgNAIBRBBEYEQCANECVBAUsEQCATIA0Q3gE2AgwgAiATQQxqQQEQ+wYgDRDyAiACKAIAEOMKNgIACyADQbABcSIDQRBHBEAgASADQSBGBH8gAigCAAUgAAs2AgALIBNBEGokAAUCQAJAAkACQAJAAkAgCCAUai0AAA4FAAEDAgQFCyABIAIoAgA2AgAMBAsgASACKAIANgIAIAZBIBDRASEHIAIgAigCACIPQQRqNgIAIA8gBzYCAAwDCyANEPYBDQIgDUEAEJoFKAIAIQcgAiACKAIAIg9BBGo2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QQFqIQUgAUEBaiEBDAELCyADQQA6AAcgBSADQQdqENIBIANBEGokAAwBCxDKAQALCw8AIAAgACgCGCABajYCGAsXACAAIAI2AhwgACABNgIUIAAgATYCGAtXAQJ/AkAgACgCACICRQ0AAn8gAigCGCIDIAIoAhxGBEAgAiABIAIoAgAoAjQRAAAMAQsgAiADQQRqNgIYIAMgATYCACABC0F/EMgCRQ0AIABBADYCAAsLMQEBfyAAKAIMIgEgACgCEEYEQCAAIAAoAgAoAigRAgAPCyAAIAFBBGo2AgwgASgCAAsnAQF/IAAoAgwiASAAKAIQRgRAIAAgACgCACgCJBECAA8LIAEoAgALJwEBfwJAIAAoAgAiAkUNACACIAEQvQtBfxDIAkUNACAAQQA2AgALC1MBA38CQEF/IAAoAkwQyAJFBEAgACgCTCEADAELIAAjAEEQayIBJAAgAUEMaiICIAAQUyACEMwBQSAQmwEhACACEFAgAUEQaiQAIAA2AkwLIADACxoAIAAgASABKAIAQQxrKAIAaigCGDYCACAACwsAIABB4JoLEKkCCw0AIAAgASACQQAQogcLCQAgABCSBxAYCz0BAX8gACgCGCICIAAoAhxGBEAgACABEKYDIAAoAgAoAjQRAAAPCyAAIAJBAWo2AhggAiABOgAAIAEQpgMLNAEBfyAAKAIMIgEgACgCEEYEQCAAIAAoAgAoAigRAgAPCyAAIAFBAWo2AgwgASwAABCmAwsqAQF/IAAoAgwiASAAKAIQRgRAIAAgACgCACgCJBECAA8LIAEsAAAQpgMLDwAgACAAKAIAKAIYEQIACwgAIAAoAhBFCwQAQX8LLAAgACABEK4HIgFFBEAPCwJAIAMEQCAAIAEgAhCoBAwBCyAAIAEgAhC7CwsLCAAgABCLBxoLvg8CBX8PfiMAQdACayIFJAAgBEL///////8/gyEKIAJC////////P4MhCyACIASFQoCAgICAgICAgH+DIQwgBEIwiKdB//8BcSEIAkACQCACQjCIp0H//wFxIglB//8Ba0GCgH5PBEAgCEH//wFrQYGAfksNAQsgAVAgAkL///////////8AgyINQoCAgICAgMD//wBUIA1CgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhDAwCCyADUCAEQv///////////wCDIgJC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dGpBADYCAAsgDEUEQEEAIQwMAQsgBCAMakEAOgAACyACIQALIAMoAgQgAygCLGusIAMpA3ggFXx8IRUgDiAIQQBHaiEOCyABQQFqIQQgAS0AASIBDQEMCAsLIAIhAAwBC0EBIQVBACEMQQAhAAwCCyAPIQUMAgsgDyEFCyAOQX8gDhshDgsgBUUNASAMEBggABAYDAELQX8hDgsgBkGwAmokACADQZABaiQAIA4LQwACQCAARQ0AAkACQAJAAkAgAUECag4GAAECAgQDBAsgACACPAAADwsgACACPQEADwsgACACPgIADwsgACACNwMACwsPACAAIAEgAkEAQQAQmQcLFQEBfxDtAyEAQQ9B0N0KKAIAIAAbC7wCAAJAAkACQAJAAkACQAJAAkACQAJAAkAgAUEJaw4SAAgJCggJAQIDBAoJCgoICQUGBwsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRBAALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC28BBX8gACgCACIDLAAAQTBrIgFBCUsEQEEADwsDQEF/IQQgAkHMmbPmAE0EQEF/IAEgAkEKbCIFaiABIAVB/////wdzSxshBAsgACADQQFqIgU2AgAgAywAASAEIQIgBSEDQTBrIgFBCkkNAAsgAgv1EgISfwJ+IwBBQGoiCCQAIAggATYCPCAIQSdqIRYgCEEoaiERAkACQAJAAkADQEEAIQcDQCABIQ0gByAOQf////8Hc0oNAiAHIA5qIQ4CQAJAAkACQCABIgctAAAiCwRAA0ACQAJAIAtB/wFxIgFFBEAgByEBDAELIAFBJUcNASAHIQsDQCALLQABQSVHBEAgCyEBDAILIAdBAWohByALLQACIAtBAmoiASELQSVGDQALCyAHIA1rIgcgDkH/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KQOIAyAWIAJBAE4iARshFiAEKQOAAyAXIAEbIRcgCSAGIAhHIAJBAEhycSAVIBhCAEIAEKgDQQBHcUUgFCABIA1qIg1B7gBqTnENAEH8gAtBxAA2AgALIARB8AJqIBcgFiANENoLIAQpA/gCIRUgBCkD8AILIRYgDiAVNwMoIA4gFjcDICAEQZDGAGokACAOKQMoIRUgDikDICEWDAELQgAhFQsgACAWNwMAIAAgFTcDCCAOQTBqJAALwwYCBH8DfiMAQYABayIFJAACQAJAAkAgAyAEQgBCABCoA0UNAAJ/IARC////////P4MhCgJ/IARCMIinQf//AXEiB0H//wFHBEBBBCAHDQEaQQJBAyADIAqEUBsMAgsgAyAKhFALC0UNACACQjCIpyIIQf//AXEiBkH//wFHDQELIAVBEGogASACIAMgBBBpIAUgBSkDECICIAUpAxgiASACIAEQxQsgBSkDCCECIAUpAwAhBAwBCyABIAJC////////////AIMiCiADIARC////////////AIMiCRCoA0EATARAIAEgCiADIAkQqAMEQCABIQQMAgsgBUHwAGogASACQgBCABBpIAUpA3ghAiAFKQNwIQQMAQsgBEIwiKdB//8BcSEHIAYEfiABBSAFQeAAaiABIApCAEKAgICAgIDAu8AAEGkgBSkDaCIKQjCIp0H4AGshBiAFKQNgCyEEIAdFBEAgBUHQAGogAyAJQgBCgICAgICAwLvAABBpIAUpA1giCUIwiKdB+ABrIQcgBSkDUCEDCyAJQv///////z+DQoCAgICAgMAAhCELIApC////////P4NCgICAgICAwACEIQogBiAHSgRAA0ACfiAKIAt9IAMgBFatfSIJQgBZBEAgCSAEIAN9IgSEUARAIAVBIGogASACQgBCABBpIAUpAyghAiAFKQMgIQQMBQsgCUIBhiAEQj+IhAwBCyAKQgGGIARCP4iECyEKIARCAYYhBCAGQQFrIgYgB0oNAAsgByEGCwJAIAogC30gAyAEVq19IglCAFMEQCAKIQkMAQsgCSAEIAN9IgSEQgBSDQAgBUEwaiABIAJCAEIAEGkgBSkDOCECIAUpAzAhBAwBCyAJQv///////z9YBEADQCAEQj+IIAZBAWshBiAEQgGGIQQgCUIBhoQiCUKAgICAgIDAAFQNAAsLIAhB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QfWrBCADQTBqEDMLIAAgAhAdIQIMAAsACyABQQFqIQdBASEEA0AgACgCECICKAK0ASAETgRAIAIoArgBIARBAnRqKAIAIQUgAQRAIAkgBSgCECICKwMooCEIIAogAisDIKAhCyAJIAIrAxigIQwgCiACKwMQoCENQezaCi0AAEECTwRAIAEQsAIgBRAhIQIgAyAIOQMgIAMgCzkDGCADIAw5AxAgAyANOQMIIAMgAjYCACAGQeOrBCADEDMgBSgCECECCyACIAg5AyggAiALOQMgIAIgDDkDGCACIA05AxALIAUgBxDzCyAEQQFqIQQMAQsLIANB4ABqJAALyhoDD38LfAF+IwBBwARrIgIkACAAKAJIIQpB7NoKLQAAQQJPBEAgARCwAiACIAAQITYCsANBiPYIKAIAQfDwAyACQbADahAgGgsgAUEBaiEJQQEhBANAIAAoAhAiAygCtAEgBEgEQAJAAkAgABA8IAdrIhBBACAAKAIQIgMoArQBayILRw0AIAMoAgwNACADQgA3AxAgA0KAgICAgICAmcAANwMoIANCgICAgICAgJnAADcDICADQgA3AxgMAQsCQAJ/AkAgAEEEQQQgAkGgBGoQ+QNBAk0EQCACQQM2ArAEDAELQQAgAigCsARBBEcNARpBACEJIAItALwEQQJxRQ0CIApBAEHwFkEAECIiCSAKQQFB8BZBABAiIgZyDQIgAiAAECE2AqADQcifAyACQaADahAqC0EACyEGQQAhCQsgAkHoA2pBAEE4EDgaIAJCADcD4AMgAkIANwPYAyACQgA3A9ADIAJCADcDyAMgAkIANwPAAyACQgA3A7gDQQEhBwNAAkAgACgCECIDKAK0ASAHSARAIBBBAEwNASAAEBwhBwNAIAdFDQIgBygCECIDKAKAAUUEQCADIAA2AoABIAJCADcDiAQgAkIANwOABCADKwNgIRIgAysDWCERIAIgAysDUDkDmAQgAiARIBKgOQOQBCACQegDakEgECYhAyACKALoAyADQQV0aiIDIAIpA4AENwMAIAMgAikDmAQ3AxggAyACKQOQBDcDECADIAIpA4gENwMIIAYEQCACIAcgBkEAQQAQYjYCzAMgAkG4A2pBBBAmIQMgAigCuAMgA0ECdGogAigCzAM2AgALIAIgBzYC5AMgAkHQA2pBBBAmIQMgAigC0AMg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EBwhAwNAIAMEQCADKAIQQQA2ArgBIAAgAxAdIQMMAQsLQezaCi0AAEECTwRAIAEoAhAhAyAFIAAQITYC5AEgBSADNgLgAUGI9ggoAgBBjfkDIAVB4AFqECAaCyABIAEoAhBBAWo2AhAgBUG88AkoAgA2AtwBQdKnASAFQdwBakEAEOMBIgpB4iVBmAJBARA2GkE4EFIhAyAKKAIQIAM2AowBIAAQOSEDIAooAhAgAygCEC8BsAE7AbABIAAgCkHa3AAQuQcgACAKQZjbABC5ByAAIApBsNgBELkHIAVBqAJqIQggBUGgAmohDCAFQZgCaiELQQEhDwNAIAAoAhAiAygCtAEgD04EQCADKAK4ASAPQQJ0aigCACIEEJQEIAogBBAhELgHIgYoAhAiAyAJNgKIASADIAQ2AugBAkACQCABKAIEIgdFBEBE////////738hG0T////////v/yEaDAELRP///////+9/IRtE////////7/8hGiAEIAcQRSIDLQAARQ0AIAEoAgAgBEcEQCADIAQoAkQgBxBFEE1FDQELIAVBADoA+AEgBSALNgLEASAFIAw2AsgBIAUgCDYCzAEgBSAFQfgBajYC0AEgBSAFQZACajYCwAEgA0H4vgEgBUHAAWoQUUEETgRAIAUrA6gCIRogBSsDoAIhHSAFKwOYAiEbIAUrA5ACIRxBgNsKKwMAIh5EAAAAAAAAAABkBEAgGyAeoyEbIBwgHqMhHCAdIB6jIR0gGiAeoyEaCyAGKAIQQQNBAkEBIAUtAPgBIgNBP0YbIANBIUYbOgCHAQwCCyAEECEhByAFIAM2ArQBIAUgBzYCsAFBh+sDIAVBsAFqECoLRP///////+//IR1E////////738hHAsgCUEBaiEJIAQQHCEDA0AgAwRAIAMoAhAgBjYCuAEgBCADEB0hAwwBCwsgBigCECIDLQCHAQRAIAMoApQBIgMgGiAboEQAAAAAAADgP6I5AwggAyAdIBygRAAAAAAAAOA/ojkDAAsgD0EBaiEPDAELCyAAEBwhAwJ/AkADQCADBEACQCADKAIQIgQoArgBDQACQCAEKALoASIGRQ0AIAYgACgCECgCjAEoAjBGDQAgAxAhIQEgABAhIQAgBSADKAIQKALoARAhNgKoASAFIAA2AqQBIAUgATYCoAFBiv0EIAVBoAFqEDcM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QRhqCyILKwMIIQggCysDACEHAn8gASgCECIAKAIEIAFGBEAgACgCAAwBCyABQRhqCyIAKwMIIQkgACsDACEKIAJBfyAHIAShIgcgBSADoaIgCCADoSIFIAYgBKGioSIGRAAAAAAAAAAAZCAGRAAAAAAAAAAAYxsiADYCACACQX8gByAJIAOhoiAFIAogBKGioSIDRAAAAAAAAAAAZCADRAAAAAAAAAAAYxsiATYCBCACIAAgAWw2AggLTQECfAJ/QQEgACgCACIAKwMAIgIgASgCACIBKwMAIgNkDQAaQX8gAiADYw0AGkEBIAArAwgiAiABKwMIIgNkDQAaQX9BACACIANjGwsLzg8DEH8KfAF+IwBBsAFrIgIkACABQQAgAUEAShshDyABQSgQGiENA0AgAyAPRkUEQCAAIANBAnRqKAIAKAIEIApqIQogA0EBaiEDDAELCyAKQRgQGiIOQRhrIQYDQCAIIA9HBEAgDSAIQShsaiIEIA4gB0EYbGo2AgAgACAIQQJ0aigCACILKAIEIQxBACEDRP///////+9/IRJE////////7/8hE0T////////v/yEVRP///////+9/IRQDQCADIAxGBEAgBCATOQMgIAQgFTkDGCAEIBI5AxAgBCAUOQMIIAQgBiAHQRhsajYCBCAIQQFqIQgMAwUgCygCACADQQR0aiIFKwMAIRYgBSsDCCEXIA4gB0EYbGoiBUEANgIUIAUgBDYCECAFIBc5AwggBSAWOQMAIANBAWohAyAHQQFqIQcgEyAXECMhEyAVIBYQIyEVIBIgFxApIRIgFCAWECkhFAwBCwALAAsLIAJCADcDiAEgAkIANwOAASACQgA3A3hBACEDIApBBBAaIQwCQANAIAMgCkYEQAJAIAwgCkEEQeADELUBIAJBjAFqIRBBACELA0AgCiALRg0BIAIgDCALQQJ0aiIRKAIAIgM2AnQgAgJ/IAMoAhAiBCgCACADRgRAIAQoAgQMAQsgA0EYawsiBTYCcEEAIQgDQAJAAkAgCEECRwRAAkAgAkH0AGogAkHwAGoQzQxBAWoOAwADAgMLIAVBGGohB0EAIQMDQAJAIAIoAoABIANLBEAgAiACKQOAATcDWCACIAIpA3g3A1AgAigCeCACQdAAaiADEBlBAnRqKAIAIgYgBSACQZQBaiIJEMwMIAIoApwB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dGohBAJAIAZBAkgNACAGQQJrQQF2IgkgBCAFayIAQQJ1SA0AIAUgAEEBdSIBQQFyIgJBAnRqIQAgBiABQQJqIgFKBEAgASACIAAoAgAgACgCBCADKAIMEQAAIgEbIQIgAEEEaiAAIAEbIQALIAAoAgAgBCgCACADKAIMEQAADQAgBCgCACEBA0ACQCAEIAAiBCgCADYCACACIAlKDQAgBSACQQF0IgdBAXIiAkECdGohACAGIAdBAmoiB0oEQCAHIAIgACgCACAAKAIEIAMoAgwRAAAiBxshAiAAQQRqIAAgBxshAAsgACgCACABIAMoAgwRAABFDQELCyAEIAE2AgALIAhBAWshCAwACwALIANBEGokAAtGAgF8An8gACgCBCEDIAAoAgAhAAN8IAAgA0YEfCABBSAAKAIAIgIrAwggAisDGKEgAisDEKIgAaAhASAAQQRqIQAMAQsLC2wCAX8CfCMAQRBrIgIkACACIAE2AgwgASAANgIgIAAgAkEMahDAASAAIAIoAgwiASsDECIDIAArAxigIgQ5AxggACADIAErAwggASsDGKGiIAArAyCgIgM5AyAgACADIASjOQMQIAJBEGokAAsnACAAIAAoAhhFIAAoAhAgAXJyIgE2AhAgACgCFCABcQRAEJEBAAsLMQEDfyAAKAIEIgQgAUEEaiICayEDIAIgBEcEQCABIAIgAxC2ARoLIAAgASADajYCBAt+AQN/IAAoAgAiAUE0aiABKAI4IQMgASgCNCEBA0ACQCABIANGDQAgASgCACAARg0AIAFBBGohAQwBCwsgARC0DSAAKAIEIgFBKGogASgCLCEDIAEoAighAQNAAkAgASADRg0AIAEoAgAgAEYNACABQQRqIQEMAQsLIAEQtA0L6gEBCH8gAEHTrAMQ0QIhAiABKAIAIQYjAEEQayIDJAAgA0EIaiIEIAIQqQUaAkAgBC0AAEUNACACIAIoAgBBDGsoAgBqIgUoAgQaIANBBGoiBCAFEFMgBBC6CyEFIAQQUCADIAIQuQshByACIAIoAgBBDGsoAgBqIggQuAshCSADIAUgBygCACAIIAkgBiAFKAIAKAIQEQgANgIEIAQQpwVFDQAgAiACKAIAQQxrKAIAakEFEKoFCyADQQhqEKgFIANBEGokACACQdjgARDRAiABKAIgKwMQIAErAxigEJEH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EiACQQJ0akF/NgIAIAJBAWohAgwBCwtBhscBQZa3AUGLBkGBDhAAAAtBhscBQZa3AUGkBkGBDhAAAAtBhscBQZa3AUG4BkGBDhAAAAtBh9ABQZa3AUHQBUGBDhAAAAsgFEEQaiQAIA8L2AYCCn8BfCMAQRBrIgokACAAKAIgRQRAAkACQCAAKAIQQQFrIgQOBAEAAAEAC0HU0AFBlrcBQZAFQcg1EAAACyACKAIAIQUgACgCACEDIAAoAhghBiAAKAIUIQcCQAJAAkACQCAEDgQAAgIBAgsgACgCHCEJIAEEQCAFRQRAIANBCBA/IQULQQAhBCADQQAgA0EAShshAwNAIAMgBEYNBCAFIARBA3RqIgtCADcDACAHIARBAnRqKAIAIgAgByAEQQFqIgRBAnRqKAIAIgggACAIShshCEQAAAAAAAAAACENA0AgACAIRgRADAIFIAsgCSAAQQN0aisDACABIAYgAEECdGooAgBBA3RqKwMAoiANoCINOQMAIABBAWohAAwBCwALAAsACyAFRQRAIANBCBA/IQULQQAhASADQQAgA0EAShshBANAIAEgBEYNAyAFIAFBA3RqIgNCADcDACAHIAFBAnRqKAIAIgAgByABQQFqIgFBAnRqKAIAIgYgACAGShshBkQAAAAAAAAAACENA0AgACAGRgRADAIFIAMgCSAAQQN0aisDACANoCINOQMAIABBAWohAAwBCwALAAsACyAAKAIcIQkgAQRAIAVFBEAgA0EIED8hBQtBACEEIANBACADQQBKGyEDA0AgAyAERg0DIAUgBEEDdGoiC0IANwMAIAcgBEECdGooAgAiACAHIARBAWoiBEECdGooAgAiCCAAIAhKGyEIRAAAAAAAAAAAIQ0DQCAAIAhGBEAMAgUgCyAJIABBAnQiDGooAgC3IAEgBiAMaigCAEEDdGorAwCiIA2gIg05AwAgAEEBaiEADAELAAsACwALIAVFBEAgA0EIED8hBQtBACEBIANBACADQQBKGyEEA0AgASAERg0CIAUgAUEDdGoiA0IANwMAIAcgAUECdGooAgAiACAHIAFBAWoiAUECdGooAgAiBiAAIAZKGyEGRAAAAAAAAAAAIQ0DQCAAIAZGBEAMAgUgAyANIAkgAEECdGooAgC3oCINOQMAIABBAWohAAwBCwALAAsACyAKQcMFNgIE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AxggBiAAKALsAUHIAGxqIgEgASsDECAAKwN4ECM5AxALC4kDAgZ/BHwgABBhKAIQKALEASEFIAAQYSAARgR8RAAAAAAAACBABSAAQczbCigCAEEIQQAQYrcLIQkgACgCECIBKwOAASEHIAErA3ghCEEBIQIDQCACIAEoArQBSkUEQCABKAK4ASACQQJ0aigCACIBEO0NIQYgASgCECIEKALsASAAKAIQIgEoAuwBRgRAIAggCSAEKwN4oCIKIAggCmQbIQgLIAQoAugBIAEoAugBRgRAIAcgCSAEKwOAAaAiCiAHIApkGyEHCyADIAZyIQMgAkEBaiECDAELCyAAEGEhAiAAKAIQIQECQCAAIAJGDQAgASgCDEUNACAAEDlBASEDIAAoAhAhASgCEC0AdEEBcQ0AIAcgASsDWKAhByAIIAErAzigIQgLIAEgBzkDgAEgASAIOQN4IAAQYSAARwRAIAUgACgCECIAKALoAUHIAGxqIgEgASsDGCIJIAcgByAJYxs5AxggBSAAKALsAUHIAGxqIgAgACsDECIHIAggByAIZBs5AxALIAMLcAECf0EBIQQDQCAEIAAoAhAiAygCtAFKRQRAIAMoArgBIARBAnRqKAIAIAEgAhDuDSAEQQFqIQQMAQsLIAMgASADKwMQojkDECADIAIgAysDGKI5AxggAyABIAMrAyCiOQMgIAMgAiADKwMoojkDKAvlBAIIfwR8QQEhAgNAIAIgACgCECIDKAK0AUpFBEAgAygCuAEgAkECdGooAgAgARDvDSACQQFqIQIMAQsLIAAQYSECIAAoAhAhAwJAIAAgAkYEQCADKALsASEFRAAAwP///9/BIQpEAADA////30EhCyADKALoASIIIQQDQCAEIAVKBEAgAygCtAEiAEEAIABBAEobQQFqIQBBASECA0AgACACRg0EIAogAygCuAEgAkECdGooAgAoAhAiBCsDIEQAAAAAAAAgQKAiDCAKIAxkGyEKIAsgBCsDEEQAAAAAAAAgwKAiDCALIAxjGyELIAJBAWohAgwACwAFAkAgAygCxAEgBEHIAGxqIgAoAgAiBkUNAEEBIQIgACgCBCIHKAIAIgBFDQADQCAAKAIQIgAtAKwBIglFIAIgBk5yRQRAIAcgAkECdGooAgAhACACQQFqIQIMAQsLIAkNACAGQQJrIQIgACsDECAAKwNYoSEMIAcgBkECdGpBBGshAANAIAAoAgAoAhAiAC0ArAEEQCAHIAJBAnRqIQAgAkEBayECDAELCyAKIAArAxAgACsDYKAiDSAKIA1kGyEKIAsgDCALIAxjGyELCyAEQQFqIQQMAQsACwALIAMoAugBIQggAygC7AEhBSADKAKEAigCECgC9AG3IQogAygCgAIoAhAoAvQBtyELCyABKAIQKALEASIAIAVByABsaigCBCgCACgCECsDGCEMIAAgCEHIAGxqKAIEKAIAKAIQKwMYIQ0gAyAKOQMgIAMgCzkDECADIA0gAysDgAGgOQMoIAMgDCADKwN4oTkDGAuiAQICfAF/AkACf0H/////ByAAQdQgECciA0UNABogABA8IQAgAxCuAiEBIABBAEgNAUEAIAFEAAAAAAAAAABjDQAaIAC4IQIgAUQAAAAAAADwP2QEQEH/////B0QAAMD////fQSABoyACYw0BGgsgASACoiIBmUQAAAAAAADgQWMEQCABqg8LQYCAgIB4Cw8LQc+YA0GH/ABBzQBBztkAEAAAC4gCAgd/AXwjAEEQayIEJAAgAEHM2wooAgBBCEEAEGIgABDtBbchCCAAKAIQIgEoAugBIQMgASgChAIhBSABKAKAAiEGA0AgAyABKALsAUpFBEACQCADQcgAbCIHIAEoAsQBaiICKAIARQ0AIAIoAgQoAgAiAkUEQCAAECEhASAEIAM2AgQgBCABNgIAQdu0BCAEEDcMAQsgBiACIAIoAhArA1ggCKAgASsDYKBBABCfARogACgCECIBKALEASAHaiICKAIEIAIoAgBBAnRqQQRrKAIAIgIgBSACKAIQKwNgIAigIAErA0CgQQAQnwEaCyADQQFqIQMgACgCECEBDAELCyAEQRBqJAAL2wICCn8BfCAAQczbCigCAEEIQQAQYiEHQQEhAQNAIAAoAhAiBSgCtAEiBCABSARAIAe3IQtBASEBA0AgASAESkUEQCABQQJ0IQkgAUEBaiIHIQEDQCAFKAK4ASICIAlqKAIAIQMgASAESkUEQCACIAFBAnRqKAIAIgYgAyADKAIQKALoASAGKAIQKALoAUoiAhsiCCgCECIKKALsASADIAYgAhsiAygCECIGKALoASICTgRAIAggAyACQcgAbCICIAooAsQBaigCBCgCACgCECgC+AEg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P2UNACAAEPENIAAoAhAiASgCgAIgASgChAIgEiARIAEoAnRBAXEbIhFEAAAAAOD/70AgEUQAAAAA4P/vQGMbQegHEJ8BGgsCQCAAQQIgABDwDRDMBEUNACAAKAIQIgIoAugBIQUDQAJAAkAgAigC7AEiCiAFTgRAQQAhCCACKALEASAFQcgAbGoiBygCACIJQQAgCUEAShshA0EAIQEDQCABIANGDQNBACEEAkAgBygCBCABQQJ0aigCACIIKAIQIgsoApACIg1FDQADQCANIARBAnRqKAIAIgZFDQEgBkFQQQAgBigCAEEDcSIMQQJHG2ooAigoAhAoAvQBIAVKDQQgBEEBaiEEIAZBMEEAIAxBA0cbaigCKCgCECgC9AEgBUwNAAsMAwtBACEEAkAgCygCiAIiC0UNAANAIAsgBEECdGooAgAiBkUNASAGQTBBACAGKAIAQQNxIg1BA0cbaigCKCgCECgC9AEgBUoNBCAEQQFqIQQgBSAGQVBBACANQQJHG2ooAigoAhAoAvQBTg0ACwwDCyABQQFqIQEMAAsACyAAQQIgABDwDRDMBEUNA0GImwNBprsBQY0BQbHiABAAAAsgASEDCwJAIAhFIAMgCUhyRQRAIAdBzABBvH8gBSAKSBtqKAIAKAIAIgJFDQEgBygCBCgCACEDIAAQugIiASgCEEECOgCsASABIANEAAAAAAAAAABBABCfARogASACRAAAAAAAAAAAQQAQnwEaIAEoAhAgAygCECgC9AEiASACKAIQKAL0ASICIAEgAkgbNgL0ASAAKAIQIQILIAVBAWohBQwBCwtB0toAQaa7AUH2AEGO+gAQAAALIAAoAhAiASgC7AEhBSABKALoASECIAEoAsQBIQQDQCACIAVMBEBBACEBIAQgAkHIAGxqIgcoAgAiA0EAIANBAEobIQYDQCABIAZHBEAgBygCBCABQQJ0aigCACgCECIDKAL0ASEIIAMgAjYC9AEgAyAItzkDECABQQFqIQEMAQsLIAJBAWohAgwBCwsgACAAEO8NAkAgACgCECIBKALsAUEATA0AIAEoAggiAigCVCIFRQ0AIAErACgiESABKwAYoSIUIAErACAiEiABKwAQoSIVIAEoAnRBAXEiAxshEyAVIBQgAxshFAJAAnwCQAJAAkACQAJAIAVBAWsOBQQABwEDBwsgAisD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IAJB7BxqENAEIQcgAigC7BwhAwwBCyACQegMaiACQewcahDPBCEHIBogAigC7BwiA0EFSXINACAHIAcpAwA3AxAgByAHKQMINwMYIAcgByADQQR0akEQayIDKQMANwMgIAcgAykDCDcDKCADKQMAIWUgByADKQMINwM4IAcgZTcDMCACQQQ2AuwcQQQMAQsgA0UNASADCyEGQQAhAwwBCyAHEBhBACEDA0AgAigCmB0gA00EQCACQZAdaiIDQSAQMSADEDRBACEDA0AgAigC+B0gA00EQCACQfAdaiIDQRAQMSADEDRBACEDA0AgAigC0B0gA00EQCACQcgdaiIDQRAQMSADEDQMCwUgAkHwCWogAkHQHWopAwA3AwAgAiACKQPIHTcD6AkgAkHoCWogAxAZIQUCQAJAIAIoAtgdIgQOAgETAAsgAkHgCWogAigCyB0gBUEEdGoiBSkDCDcDACACIAUpAwA3A9gJIAJB2AlqIAQRAQALIANBAWohAwwBCwALAAUgAkHQCWogAkH4HWopAwA3AwAgAiACKQPwHTcDyAkgAkHICWogAxAZIQUCQAJAIAIoAoAeIgQOAgERAAsgAkHACWogAigC8B0gBUEEdGoiBSkDCDcDACACIAUpAwA3A7gJIAJBuAlqIAQRAQALIANBAWohAwwBCwALAAUgAkGwCWogAkGYHWopAwA3AwAgAiACKQOQHTcDqAkgAkGoCWogAxAZIQUCQAJAIAIoAqAdIgQOAgEPAAsgAkGQCWogAigCkB0gBUEFdGoiBSkDCDcDACACQZgJaiAFKQMQNwMAIAJBoAlqIAUpAxg3AwAgAiAFKQMANwOICSACQYgJaiAEEQEACyADQQFqIQMMAQsACwALA0AgAyAGSQRAIAwgByADQQR0aiIGKQMANwMAIAwgBikDCDcDCCACQfAdakEQECYhBiACKALwHSAGQQR0aiIGIAwpAwA3AwAgBiAMKQMINwMIIANBAWohAyACKALsHCEGDAELCyAHEBggCiEDA0AgCCgCACgCyAEoAgAhBiADBEAgA0EBayEDIAZBUEEAIAYoAgBBA3FBAkcbaigCKEEQaiEIDAELCyACKAL4HSIHBEAgAkHoCmogAkH4HWoiAykDADcDACACIAIpA/AdNwPgCiAMIAIoAvAdIAJB4ApqIAdBAWsQGUEEdGoiBykD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Dg0FIAIoAqwEIQggAigCqAQhCwJAAkACQCAJQQFqDgMAAQIDCyADKAIAIAIgAykCCDcDYCACIAMpAgA3A1ggAkHYAGogABAZQQJ0aigCACADKAIAIAIgAykCCDcDUCACIAMpAgA3A0ggAkHIAGogBRAZQQJ0aigCACAEQQAgBiABELgCIAMoAgAgAkFAayADKQIINwMAIAIgAykCADcDOCACQThqIAAQGUECdGooAgAgAygCACACIAMpAgg3AzAgAiADKQIANwMoIAJBKGogBRAZQQJ0aigCACAHQQEgCyABELgCIAhBAUcNAiADKAIAIAIgAykCCDcDICACIAMpAgA3AxggAkEYaiAFEBlBAnRqKAIAIAMoAgAgAiADKQIINwMQIAIgAykCADcDCCACQQhqIAAQGUECdGooAgAgByABEJcODAILAkACQAJAIAhBAWoOAwABAgQLIAMoAgAgAiADKQIINwOgASACIAMpAgA3A5gBIAJBmAFqIAAQGUECdGooAgAgAygCACACIAMpAgg3A5ABIAIgAykCADcDiAEgAkGIAWogBRAZQQJ0aigCACAEQQAgBiABELgCIAMoAgAgAiADKQIINwOAASACIAMpAgA3A3ggAkH4AGogABAZQQJ0aigCACADKAIAIAIgAykCCDcDcCACIAMpAgA3A2ggAkHoAGogBRAZQQJ0aigCACAHQQEgCyABELgCDAMLIAMoAgAgAiADKQIINwPgASACIAMpAgA3A9gBIAJB2AFqIAUQGUECdGooAgAgAygCACACIAMpAgg3A9ABIAIgAykCADcDyAEgAkHIAWogABAZQQJ0aigCAEEAIAQgBiABELgCIAMoAgAgAiADKQIINwPAASACIAMpAgA3A7gBIAJBuAFqIAUQGUECdGooAgAgAygCACACIAMpAgg3A7ABIAIgAykCADcDqAEgAkGoAWogABAZQQJ0aigCAEEBIAcgCyABELgCDAILIAMoAgAgAiADKQIINwOgAiACIAMpAgA3A5gCIAJBmAJqIAUQGUECdGooAgAgAygCACACIAMpAgg3A5ACIAIgAykCADcDiAIgAkGIAmogABAZQQJ0aigCAEEAIAQgBiABELgCIAMoAgAgAiADKQIINwOAAiACIAMpAgA3A/gBIAJB+AFqIAUQGUECdGooAgAgAygCACACIAMpAgg3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QbgCakEEECYhCiAEKAK4AiAKQQJ0aiAEKALMAjYCACACKAIAIAE2AhggCSACQQggCSgCABEDACECDAELCyAIIARB0AJqQYAEIAgoAgARAwAhAgNAAkAgASsDQCEbIAJFDQAgAisDECAbY0UNACAEIAIoAgA2AswCIARBuAJqQQQQJiEKIAQoArgCIApBAnRqIAQoAswCNgIAIAIoAgAgATYCGCAIIAJBCCAIKAIAEQMAIQIMAQsLIAQgGzkD2AIgCSAEQdACakGABCAJKAIAEQMAIQIDQAJAIAErAzghGyACRQ0AIAIrAwggG2NFDQAgBCACKAIANgLMAiAEQbgCakEEECYhCiAEKAK4AiAKQQJ0aiAEKALMAjYCACACKAIAIAE2AhQgCSACQQggCSgCABEDACECDAELCyAEIBs5A9ACIAQgASsDMDkD2AIgCCAEQdACakGABCAIKAIAEQMAIQIDQAJAIAJFDQAgAisDECABKwNAY0UNACAEIAIoAgA2AswCIARBuAJqQQQQJiEKIAQoArgCIApBAnRqIAQoAswCNgIAIAIoAgAgATYCFCAIIAJBCCAIKAIAEQMAIQIMAQsLIARBuAJqIAFBJGogAUEgakEEEMcBIAEoAiAiASAMIAEgDEsbIQwgBkEBaiEGDAELCwNAIBAgEUYEQCAAKAIQIAAoAgAiAUEobGoiAyABNgIgIAMgAUEBajYCSEEAIQMgACgCAEEGbCAMQQF0akEEEBohAiAAIAAoAgBBA2wgDGpBGBAaNgIUIAAoAgAiBkEAIAZBAEobIQEDQCABIANGBEAgBkECaiEDA0AgASADSARAIAAoAhAgAUEobGogAjYCHCABQQFqIQEgAiAMQQJ0aiECDAELCwUgACgCECADQShsaiACNgIcIANBAWohAyACQRhqIQIMAQsLQQAhBgJAAkADQCAGIA9GBEACQCAIEJkBGiAJEJkBGiALEBhBACEBQYj2CCgCACECA0AgASAAKAIATg0BIAAoAhAgAUEobGoiAygCFEUEQCAEIAE2AhAgAkH4zAQgBEEQahAgGiADKAIURQ0FCyADKAIYRQRAIAQgATYCACACQeLMBCAEECAaIAMoAhhFDQYLIAFBAWohAQwACwALBSASIAZByABsaiIBKwM4IAErAyihIhsgASsDQCABKwMwoSIfoEQAAAAAAADg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EmogBhAZQcgAbGogBTYCKAsgAigCACEGIARBkBJqIAIpAgg3AwAgBCACKQIANwOIEgJAIAYgBEGIEmogBRAZQcgAbGooAjQiBkEBa0F9Sw0AIAIoAgAgBEGAEmogAikCCDcDACAEIAIpAgA3A/gRIARB+BFqIAYQGUHIAGxqKAIsIAlHDQAgAigCACAEQfARaiACKQIINwMAIAQgAikCADcD6BEgBEHoEWogBhAZQcgAbGogBTYCLAsgAxDvASEHIAMQ7wEhCiACKAIAIARB4BFqIAIpAgg3AwAgBCACKQIANwPYESAEQdgRaiAJEBlByABsaigCOCEGIAMoAgAgBEHQEWogAykCCDcDACAEIAMpAgA3A8gRIARByBFqIAYQGUEobGpBAjYCACADKAIAIARBwBFqIAMpAgg3AwAgBCADKQIANwO4ESAEQbgRaiAGEBlBKGxqIg4gCCkDADcDCCAOIAgpAwg3AxAgAygCACAEQbARaiADKQIINwMAIAQgAykCADcDqBEgBEGoEWogBhAZQShsaiAANgIEIAMoAgAgBEGgEWogAykCCDcDACAEIAMpAgA3A5gRIARBmBFqIAYQGUEobGogCjYCICADKAIAIARBkBFqIAMpAgg3AwAgBCADKQIANwOIESAEQYgRaiAGEBlBKGxqIAc2AiQgAygCACAEQYARaiADKQIINwMAIAQgAykCADcD+BAgBEH4EGogBxAZQShsakEDNgIAIAMoAgAgBEHwEGogAykCCDcDACAEIAMpAgA3A+gQIARB6BBqIAcQGUEobGogCTYCGCADKAIAIARB4BBqIAMpAgg3AwAgBCADKQIANwPYECAEQdgQaiAHEBlBKGxqIAY2AhwgAygCACAEQdAQaiADKQIINwMAIAQgAykCADcDyBAgBEHIEGogChAZQShsakEDNgIAIAMoAgAgBEHAEGogAykCCDcDACAEIAMpAgA3A7gQIARBuBBqIAoQGUEobGogBTYCGCADKAIAIARBsBBqIAMpAgg3AwAgBCADKQIANwOoECAEQagQaiAKEBlBKGxqIAY2AhwgAigCACAEQaAQaiACKQIINwMAIAQgAikCADcDmBAgBEGYEGogCRAZQcgAbGogBzYCOCACKAIAIARBkBBqIAIpAgg3AwAgBCACKQIANwOIECAEQYgQaiAFEBlByABsaiAK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IAIoAgAgBEGIDGogAikCCDcDACAEIAIpAgA3A4AMIARBgAxqIAkQGUHIAGxqKwMYoZlESK+8mvLXej5lRSALRXINAAJAIBMoAgAiBUEATA0AIAUgASAHEMcERQ0AIAIoAgAhBSAEQbgLaiACKQIINwMAIAQgAikCADcDsAsgBSAEQbALaiAIEBlByABsaigCMCEHIARBqAtqIAIpAgg3AwAgBCACKQIANwOgCyAFIARBoAtqIAcQGUHIAGxqIAg2AiggAigCACAEQZgLaiACKQIINwMAIAQgAikCADcDkAsgBEGQC2ogBhAZQcgAbGpBfzYCMCACKAIAIARBiAtqIAIpAgg3AwAgBCACKQIANwOACyAEQYALaiAGEBlByABsakF/NgI0DAILIAIoAgAhBSAEQfgLaiACKQIINwMAIAQgAikCADcD8AsgBSAEQfALaiAGEBlByABsaigCMCEHIARB6AtqIAIpAgg3AwAgBCACKQIANwPgCyAFIARB4AtqIAcQGUHIAGxqIAY2AiwgAigCACAEQdgLaiACKQIINwMAIAQgAikCADcD0AsgBEHQC2ogCBAZQcgAbGpBfzYCMCACKAIAIARByAtqIAIpAgg3AwAgBCACKQIANwPACyAEQcALaiAIEBlByABsakF/NgI0DAELIAIoAgAhBSAEQfgKaiACKQIINwMAIAQgAikCADcD8AogBSAEQfAKaiAIEBlByABsaigCMCEHIARB6ApqIAIpAgg3AwAgBCACKQIANwPgCgJAIAUgBEHgCmogBxAZQcgAbGooAihBAWtBfUsNACACKAIAIQUgBEHYCmogAikCCDcDACAEIAIpAgA3A9AKIAUgBEHQCmogCBAZQcgAbGooAjAhByAEQcgKaiACKQIINwMAIAQgAikCADcDwAogBSAEQcAKaiAHEBlByABsaigCLEEBa0F9Sw0AIAIoAgAhBSAEQbgKaiACKQIINwMAIAQgAikCADcDsAogBSAEQbAKaiAIEBlByABsaigCMCEHIARBqApqIAIpAgg3AwAgBCACKQIANwOgCiAFIARBoApqIAcQGUHIAGxqKAIoIQcgAigCACEFIARBmApqIAIpAgg3AwAgBCACKQIANwOQCiAFIARBkApqIAgQGUHIAGxqKAIwIQogBEGICmogAikCCDcDACAEIAIpAgA3A4AKIAUg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aCAEIAIpAgA3A2AgBSAEQeAAaiAHEBlByABsaiAGNgIoIAIoAgAhBSAEIAIpAgg3A1ggBCACKQIANwNQIAUgBEHQAGogCBAZQcgAbGooAjQhByAEIAIpAgg3A0ggBCACKQIANwNAIAUgBEFAayAHEBlByABsakF/NgIsIAIoAgAgBCACKQIINwM4IAQgAikCADcDMCAEQTBqIAgQGUHIAGxqQX82AjQgAigCACAEIAIpAgg3AyggBCACKQIANwMgIARBIGogCBAZQcgAbGpBMGoMAQsgB0F/NgIsIAIoAgAhBSAEIAIpAgg3A/gBIAQgAikCADcD8AEgBSAEQfABaiAIEBlByABsaigCNCEHIAQgAikCCDcD6AEgBCACKQIANwPgASAFIARB4AFqIAcQGUHIAGxqIAg2AiggAigCACEFIAQgAikCCDcD2AEgBCACKQIANwPQASAFIARB0AFqIAgQGUHIAGxqKAI0IQcgBCACKQIINwPIASAEIAIpAgA3A8ABIAUgBEHAAWogBxAZQcgAbGogBjYCLCACKAIAIAQgAikCCDcDuAEgBCACKQIANwOwASAEQbABaiAIEBlByABsaigCNCEFIAIoAgAgBCACKQIINwOoASAEIAIpAgA3A6ABIARBoAFqIAYQGUHIAGxqIAU2AjAgAigCACAEIAIpAgg3A5gBIAQgAikCADcDkAEgBEGQAWogBhAZQcgAbGpBfzYCNCACKAIAIAQgAikCCDcDiAEgBCACKQIANwOAASAEQYABaiAIEBlByABsakE0agsoAgAhBSACKAIAIAQgAikCCDcDGCAEIAIpAgA3AxAgBEEQaiAIEBlByABsaiAANgIEIAIoAgAgBCACKQIINwMIIAQgAikCADcDACAEIAYQGUHIAGxqIAA2AgAMAAsAC0GwgwRBwgBBAUGI9ggoAgAQOhoQOwALySADEH8CfAJ+IwBBkAlrIgQkACAEQaAIaiIJQQBBwAAQOBogAEEAQeAAEDgiBUHIABAmIQAgBSgCACAAQcgAbGogBUEYakHIABAfGiADKAIAIRMgCRDvASEJIARBmAhqIARBqAhqIgApAwA3AwAgBCAEKQOgCDcDkAggBCgCoAggBEGQCGogCRAZQShsakECNgIAIARBiAhqIAApAwA3AwAgBCAEKQOgCDcDgAggBCgCoAggBEGACGogCRAZIARBiAlqIgogAiATQThsaiIOKQAYNwMAIAQgDikAEDcDgAkgBEH4CGoiDCAOKQAINwMAIAQgDikAADcD8AhBKGxqIQ0gBEHoCGoCfyAEQfAIaiIGIgcgDCsDACIUIAorAwAiFURIr7ya8td6PqBkDQAaIARBgAlqIgggFCAVoZlESK+8mvLXej5lRQ0AGiAGIAggBCsD8AggBCsDgAlESK+8mvLXej6gZBsLIgYpAwgiFjcDACAEIAYpAwAiFzcD4AggDSAWNwMQIA0gFzcDCCAEQaAIaiIGEO8BIQ8gBCAAKQMANwP4ByAEIAQpA6AINwPwByAEKAKgCCAEQfAHaiAJEBlBKGxqIA82AiQgBCAAKQMANwPoByAEIAQpA6AINwPgByAEKAKgCCAEQeAHaiAPEBlBKGxqQQM2AgAgBCAAKQMANwPYByAEIAQpA6AINwPQByAEKAKgCCAEQdAHaiAPEBlBKGxqIAk2AhwgBhDvASEGIAQgACkDADcDyAcgBCAEKQOgCDcDwAcgBCgCoAggBEHAB2ogCRAZQShsaiAGNgIgIAQgACkDADcDuAcgBCAEKQOgCDcDsAcgBCgCoAggBEGwB2ogBhAZQShsakECNgIAIAQgACkDADcDqAcgBCAEKQOgCDcDoAcgBCgCoAggBEGgB2ogBhAZIAogDikAGDcDACAEIA4pABA3A4AJIAwgDikACDcDACAEIA4pAAA3A/AIAkAgDCsDACIUIAorAwAiFURIr7ya8td6vqBjDQAgBEGACWohByAUIBWhmURIr7ya8td6PmVFDQAgBEHwCGogByAEKwPwCCAEKwOACWMbIQcLIARB6AhqIAcpAwgiFjcDACAEIAcpAwAiFzcD4AhBKGxqIgAgFjcDECAAIBc3AwggBCAEQagIaiIAKQMANwOYByAEIAQpA6AINwOQByAEKAKgCCAEQZAHaiAGEBlBKGxqIAk2AhwgBEGgCGoiCBDvASEQIAQgACkDADcDiAcgBCAEKQOgCDcDgAcgBCgCoAggBEGAB2ogBhAZQShsaiAQNgIgIAQgACkDADcD+AYgBCAEKQOgCDcD8AYgBCgCoAggBEHwBmogEBAZQShsakEDNgIAIAQgACkDADcD6AYgBCAEKQOgCDcD4AYgBCgCoAggBEHgBmogEBAZQShsaiAGNgIcIAgQ7wEhByAEIAApAwA3A9gGIAQgBCkDoAg3A9AGIAQoAqAIIARB0AZqIAYQGUEobGogBzYCJCAEIAApAwA3A8gGIAQgBCkDoAg3A8AGIAQoAqAIIARBwAZqIAcQGUEobGpBATYCACAEIAApAwA3A7gGIAQgBCkDoAg3A7AGIAQoAqAIIARBsAZqIAcQGUEobGogEzYCBCAEIAApAwA3A6gGIAQgBCkDoAg3A6AGIAQoAqAIIARBoAZqIAcQGUEobGogBjYCHCAIEO8BIREgBCAAKQMANwOYBiAEIAQpA6AINwOQBiAEKAKgCCAEQZAGaiAHEBlBKGxqIBE2AiAgBCAAKQMANwOIBiAEIAQpA6AINwOABiAEKAKgCCAEQYAGaiAREBlBKGxqQQM2AgAgBCAAKQMANwP4BSAEIAQpA6AINwPwBSAEKAKgCCAEQfAFaiAREBlBKGxqIAc2AhwgCBDvASESIAQgACkDADcD6AUgBCAEKQOgCDcD4AUgBCgCoAggBEHgBWogBxAZQShsaiASNgIkIAQgACkDADcD2AUgBCAEKQOgCDcD0AUgBCgCoAggBEHQBWogEhAZQShsakEDNgIAIAQgACkDADcDyAUgBCAEKQOgCDcDwAUgBCgCoAggBEHABWogEhAZQShsaiAHNgIcIAUQtwMhByAFELcDIQogBRC3AyEMIAUQtwMhDSAFKAIAIAQgBSkCCDcDuAUgBCAFKQIANwOwBSAEQbAFaiAHEBkgBCAAKQMANwOoBSAEIAQpA6AINwOgBUHIAGxqIgggBCgCoAggBEGgBWogCRAZQShsaiILKQMINwMIIAggCykDEDcDECAFKAIAIAQgBSkCCDcDmAUgBCAFKQIANwOQBSAEQZAFaiAKEBkgBCAAKQMANwOIBSAEIAQpA6AINwOABUHIAGxqIgggBCgCoAggBEGABWogCRAZQShsaiILKQMINwMIIAggCykDEDcDECAFKAIAIAQgBSkCCDcD+AQgBCAFKQIANwPwBCAEQfAEaiANEBkgBCAAKQMANwPoBCAEIAQpA6AINwPgBEHIAGxqIgggBCgCoAggBEHgBGogCRAZQShsaiILKQMINwMYIAggCykDEDcDICAFKAIAIAQgBSkCCDcD2AQgBCAFKQIANwPQBCAEQdAEaiAHEBkgBCAAKQMANwPIBCAEIAQpA6AINwPABEHIAGxqIgggBCgCoAggBEHABGogBhAZQShsaiILKQMINwMYIAggCykDEDcDICAFKAIAIAQgBSkCCDcDuAQgBCAFKQIANwOwBCAEQbAEaiAKEBkgBCAAKQMANwOoBCAEIAQpA6AINwOgBEHIAGxqIgggBCgCoAggBEGgBGogBhAZQShsaiILKQMINwMYIAggCykDEDcDICAFKAIAIAQgBSkCCDcDmAQgBCAFKQIANwOQBCAEQZAEaiAMEBkgBCAAKQMANwOIBCAEIAQpA6AINwOABEHIAGxqIgggBCgCoAggBEGABGogBhAZQShsaiIGKQMINwMIIAggBikDEDcDECAFKAIAIAQgBSkCCDcD+AMgBCAFKQIANwPwAyAEQfADaiANEBlByABsakL/////////9/8ANwMQIAUoAgAgBCAFKQIINwPoAyAEIAUpAgA3A+ADIARB4ANqIA0QGUHIAGxqQv/////////3/wA3AwggBSgCACAEIAUpAgg3A9gDIAQgBSkCADcD0AMgBEHQA2ogDBAZQcgAbGpC/////////3c3AyAgBSgCACAEIAUpAgg3A8gDIAQgBSkCADcDwAMgBEHAA2ogDBAZQcgAbGpC/////////3c3AxggBSgCACAEIAUpAgg3A7gDIAQgBSkCADcDsAMgBEGwA2ogBxAZQcgAbGogEzYCBCAFKAIAIAQgBSkCCDcDqAMgBCAFKQIANwOgAyAEQaADaiAKEBlByABsaiATNgIAIAUoAgAgBCAFKQIINwOYAyAEIAUpAgA3A5ADIARBkANqIAcQGUHIAGxqIA02AiggBSgCACAEIAUpAgg3A4gDIAQgBSkCADcDgAMgBEGAA2ogChAZQcgAbGogDTYCKCAFKAIAIAQgBSkCCDcD+AIgBCAFKQIANwPwAiAEQfACaiAHEBlByABsaiAMNgIwIAUoAgAgBCAFKQIINwPoAiAEIAUpAgA3A+ACIARB4AJqIAoQGUHIAGxqIAw2AjAgBSgCACAEIAUpAgg3A9gCIAQgBSkCADcD0AIgBEHQAmogDRAZQcgAbGogBzYCMCAFKAIAIAQgBSkCCDcDyAIgBCAFKQIANwPAAiAEQcACaiAMEBlByABsaiAHNgIoIAUoAgAgBCAFKQIINwO4AiAEIAUpAgA3A7ACIARBsAJqIA0QGUHIAGxqIAo2AjQgBSgCACAEIAUpAgg3A6gCIAQgBSkCADcDoAIgBEGgAmogDBAZQcgAbGogCjYCLCAFKAIAIAQgBSkCCDcDmAIgBCAFKQIANwOQAiAEQZACaiAHEBlByABsaiARNgI4IAUoAgAgBCAFKQIINwOIAiAEIAUpAgA3A4ACIARBgAJqIAoQGUHIAGxqIBI2AjggBSgCACAEIAUpAgg3A/gBIAQgBSkCADcD8AEgBEHwAWogDBAZQcgAbGogEDYCOCAFKAIAIAQgBSkCCDcD6AEgBCAFKQIANwPgASAEQeABaiANEBlByABsaiAPNgI4IAUoAgAgBCAFKQIINwPYASAEIAUpAgA3A9ABIARB0AFqIAcQGUHIAGxqQQE6AEQgBSgCACAEIAUpAgg3A8gBIAQgBSkCADcDwAEgBEHAAWogChAZQcgAbGpBAToARCAFKAIAIAQgBSkCCDcDuAEgBCAFKQIANwOwASAEQbABaiAMEBlByABsakEBOgBEIAUoAgAgBCAFKQIINwOoASAEIAUpAgA3A6ABIARBoAFqIA0QGUHIAGxqQQE6AEQgBCAAKQMANwOYASAEIAQpA6AINwOQASAEKAKgCCAEQZABaiAPEBlBKGxqIA02AhggBCAAKQMANwOIASAEIAQpA6AINwOAASAEKAKgCCAEQYABaiAQEBlBKGxqIAw2AhggBCAAKQMANwN4IAQgBCkDoAg3A3AgBCgCoAggBEHwAGogERAZQShsaiAHNgIYIAQgACkDADcDaCAEIAQpA6AINwNgIAQoAqAIIARB4ABqIBIQGUEobGogCjYCGCAOQQE6ACAgAUEAIAFBAEobQQFqIQxBASEAA0AgACAMRkUEQCACIABBOGxqIgYgCTYCJCAGIAk2AiggAEEBaiEADAELCyABtyEUQQAhBgNAIBREAAAAAAAA8D9mBEAgBkEBaiEGIBQQrQchFAwBCwtBASAGIAZBAU0bIQ1BASEAQQEhBwNAIAcgDUcEQCABIAdBAWsQkAghCSAAIAEgBxCQCCIKIAkgCSAKSBtqIAlrIQkDQCAAIAlGBEBBASEKA0AgCiAMRwRAIAIgCkE4bGoiAC0AIEUEQCAAIAAgAEEQaiIOIAAoAiQgAiAEQaAIaiIIEPIFIg82AiQgBSgCACEQIAQgBSkCCDcDWCAEIAUpAgA3A1AgACAQIARB0ABqIA8QGUHIAGxqKAI4NgIkIAAgDiAAIAAoAiggAiAIEPIFIg42AiggBSgCACEPIAQgBSkCCDcDSCAEIAUpAgA3A0AgACAPIARBQGsgDhAZQcgAbGooAjg2AigLIApBAWohCgwBCwsgB0EBaiEHIAkhAAwDBSADIABBAnRqKAIAIAIgBSAEQaAIahCwDiAAQQFqIQAMAQsACwALCyABIAZBAWsQkAgiCSABIAEgCUgbIAlrIABqIQEDQCAAIAFGBEACQEEAIQADQCAAIAQoAqgITw0BIAQgBEGoCGopAwA3AzggBCAEKQOgCDcDMCAEQTBqIAAQGSEBAkACQAJAIAQoArAIIgIOAgIAAQtBsIMEQcIAQQFBiPYIKAIAEDoaEDsACyAEQQhqIgMgBCgCoAggAUEobGpBKBAfGiADIAIRAQALIABBAWohAAwACwALBSADIABBAnRqKAIAIAIgBSAEQaAIahCwDiAAQQFqIQAMAQsLIARBoAhqIgBBKBAxIAAQNCAEQZAJaiQAC4sCAQV/IwBB8ABrIgMkAEEBIQQDQCAEIAEoAhAiBSgCtAFKRQRAIAUoArgBIARBAnRqKAIAIQUgA0EgaiIGIAJBKBAfGiADQcgAaiIHIAUgBhCyDiACIAdBKBAfGiAEQQFqIQQMAQsLAkAgARA5IAFGDQAgASgCECgCDCIBRQ0AIAEtAFFBAUcNACACKAIgIQQgAyACKQMINwMIIAMgAikDEDcDECADIAIpAxg3AxggAyACKQMANwMAIANByABqIAEgBCADEP4DIAIgAykDYDcDGCACIAMpA1g3AxAgAiADKQNQNwMIIAIgAykDSDcDACACIARBKGo2AiALIAAgAkEoEB8aIANB8ABqJAALXwEDfwJAIAAQOSAARg0AIAAoAhAoAgwiAUUNACABLQBRIQILQQEhAQN/IAAoAhAiAygCtAEgAUgEfyACBSADKAK4ASABQQJ0aigCABCzDiACaiECIAFBAWohAQwBCwsLkwICA38DfAJAIAAQOSAARg0AIAAoAhAiASgCDCICRQ0AIAItAFENAAJ/IAEtAJMCIgNBAXEEQCABKwMoIAErA1hEAAAAAAAA4L+ioCEFIAFB0ABqDAELIAErAxggASsDOEQAAAAAAADgP6KgIQUgAUEwagsrAwAhBAJ8IANBBHEEQCABKwMgIAREAAAAAAAA4L+ioAwBCyABKwMQIQYgBEQAAAAAAADgP6IgBqAgA0ECcQ0AGiAGIAErAyCgRAAAAAAAAOA/ogshBCACQQE6AFEgAiAFOQNAIAIgBDkDOAtBASEBA0AgASAAKAIQIgIoArQBSkUEQCACKAK4ASABQQJ0aigCABC0DiABQQFqIQEMAQsLC5UCAgN/AnwCQCAAEDkgAEYNACAAKAIQIgEoAgwiAkUNACACLQBRDQACfyABLQCTAiIDQQFxBEAgASsDICABKwNARAAAAAAAAOC/oqAhBSABQcgAagwBCyABKwMQIAErA2BEAAAAAAAA4D+ioCEFIAFB6ABqCysDACEEAnwgA0EEcQRAIAREAAAAAAAA4D+iIAErAxigDAELIANBAnEEQCABKwMoIAREAAAAAAAA4L+ioAwBCyABKwMYIAErAyigRAAAAAAAAOA/ogshBCACQQE6AFEgAiAEOQNAIAIgBTkDOAtBASEBA0AgASAAKAIQIgIoArQBSkUEQCACKAK4ASABQQJ0aigCABC1DiABQQFqIQEMAQsLCw0BAX8gACgCICAAEBgL9QICBH8EfCMAQaABayICJAAgACgCECIDKwMgIQYgAysDECEHIAJB8ABqIAJB0ABqIAFBAWtBAkkiBBsiBUEIaiADKwMoIgggAysDGCIJIAQbOQMAIAUgBzkDACACIAUpAwg3AyggAiAFKQMANwMgIAJBgAFqIAJBIGoQhAIgAkHgAGogAkFAayAEGyIDQQhqIAkgCCAEGzkDACADIAY5AwAgAiADKQMINwMYIAIgAykDADcDECACQZABaiACQRBqEIQCIAAoAhAiAyACKQOAATcDECADIAIpA5gBNwMoIAMgAikDkAE3AyAgAyACKQOIATcDGCAAKAIQKAIMIgMEQCACIANBQGsiBCkDADcDCCACIAMpAzg3AwAgAkEwaiACEIQCIAQgAikDODcDACADIAIpAzA3AzgLQQEhAwNAIAMgACgCECIEKAK0AUpFBEAgBCgCuAEgA0ECdGooAgAgARC3DiADQQFqIQMMAQsLIAJBoAFqJAAL5gECBHwDfyAAKAIgIgcgASgCICIIRwRAQX8hBgJAIActACRFDQAgCC0AJEUNACAAKwMAIgJEAAAAAAAAAABhBEAgACsDCEQAAAAAAAAAAGENAQsgASsDACIDRAAAAAAAAAAAYSABKwMIIgREAAAAAAAAAABhcQ0AIAArAwgiBSAEZARAIAIgA2QEQEEADwtBAkEBIAIgA2MbDwsgBCAFZARAIAIgA2QEQEEGDwtBCEEHIAIgA2MbDwsgAiADZARAQQMPC0EFQX8gAiADYxshBgsgBg8LQd7ZAEHUuQFB0wFBqPUAEAAAC54HAgd/BH4jAEHQAWsiBiQAIAZBADYCpAECQCADBEAgAygCBCIFQQBIDQECfyAFBEAgBiABKQMYNwN4IAYgASkDEDcDcCAGIAEpAwg3A2ggBiABKQMANwNgIwBBwAFrIgUkAAJAIAMEQCADQQhqIQsDQCAIQcAARg0CIAsgCEEobGoiBygCIARAIAUgBykDGDcDuAEgBSAHKQMQNwOwASAFIAcpAwg3A6gBIAUgBykDADcDoAEgBSAHKQMINwNoIAUgBykDEDcDcCAFIAcpAxg3A3ggBSAHKQMANwNgIAVB4ABqEIsDIQ0gBSAGKQNoNwNIIAUgBikDcDcDUCAFIAYpA3g3A1ggBikDYCEOIAUgBSkDqAE3AyggBSAFKQOwATcDMCAFIAUpA7gBNwM4IAUgDjcDQCAFIAUpA6ABNwMgIAVBgAFqIAVBQGsgBUEgahCKAyAFIAUpA5gBNwMYIAUgBSkDkAE3AxAgBSAFKQOIATcDCCAFIAUpA4ABNwMAAn8gBRCLAyANfSIOIA9aIAlxRQRAIA0hDCAOIQ8gCAwBCyANIAwgDiAPUSAMIA1WcSIHGyEMIAggCiAHGwshCkEBIQkLIAhBAWohCAwACwALQc/rAEGMvgFB8ABB2voAEAAACyAFQcABaiQAIAMgCkEobGoiBSgCKCEHIAYgASkDGDcDWCAGIAEpAxA3A1AgBiABKQMINwNIIAYgASkDADcDQCAAIAZBQGsgAiAHIAZBpAFqELkORQRAIAYgASkDCDcDKCAGIAEpAxA3AzAgBiABKQMYNwM4IAYgASkDADcDICAGIAUpAxA3AwggBiAFKQMYNwMQIAYgBSkDIDcDGCAGIAUpAwg3AwAgBkGoAWogBkEgaiAGEIoDIAUgBikDwAE3AyAgBSAGKQO4ATcDGCAFIAYpA7ABNwMQIAUgBikDqAE3AwhBAAwCCyAGQYABaiAFKAIoEPUFIAUgBikDmAE3AyAgBSAGKQOQATcDGCAFIAYpA4gBNwMQIAUgBikDgAE3AwggBiAGKAKkASIBNgLIASAGQagBaiICIAEQ9QUgACACIAMgBBDIBAwBCyAGIAEpAxg3A8ABIAYgASkDEDcDuAEgBiABKQMINwOwASAGIAEpAwA3A6gBIAYgAjYCyAEgACAGQagBaiADIAQQyAQLIAZB0AFqJAAPC0HBFkGvtwFB0gFB8tICEAAAC0GN7wBBr7cBQdMBQfLSAhAAAAv8AwEGfyMAQaABayIDJAACQAJAAkAgAQRAIAEoAgQiBEEASA0BIAFBCGohBiAEDQJBACEBA0AgAUHAAEYEQCAFIQQMBQUCQCAGIAFBKGxqIgQoAiBFDQAgAyACKQMYNwM4IAMgAikDEDcDMCADIAIpAwg3AyggAyACKQMANwMgIAMgBCkDCDcDCCADIAQpAxA3AxAgAyAEKQMYNwMYIAMgBCkDADcDACADQSBqIAMQiQNFDQBBCBD4AyIAIAU2AgAgACAENgIEIAAhBQsgAUEBaiEBDAELAAsAC0HP6wBBr7cBQYUBQbv6ABAAAAtBwZgDQa+3AUGGAUG7+gAQAAALQQAhBANAIAVBwABGDQECQCAGIAVBKGxqIgEoAiBFDQAgAyACKQMYNwOYASADIAIpAxA3A5ABIAMgAikDCDcDiAEgAyACKQMANwOAASADIAEpAwg3A2ggAyABKQMQNwNwIAMgASkDGDcDeCADIAEpAwA3A2AgA0GAAWogA0HgAGoQiQNFDQAgASgCICEBIAMgAikDGDcDWCADIAIpAxA3A1AgAyACKQMINwNIIAMgAikDADcDQCAAIAEgA0FAaxC6DiEHIAQiAUUEQCAHIQQMAQsDQCABIggoAgAiAQ0ACyAIIAc2AgALIAVBAWohBQwACwALIANBoAFqJAAgBAt9AQR/IABBKGohAgJAIAAoAgRBAEoEQANAIAFBwABGDQIgAiABQShsaiIDKAIAIgQEQCAEELsOIAMoAgAQGCAAIAEQvA4LIAFBAWohAQwACwALA0AgAUHAAEYNASACIAFBKGxqKAIABEAgACABELwOCyABQQFqIQEMAAsACwtdAAJAIABFIAFBwABPckUEQCAAIAFBKGxqIgEoAihFDQEgAUEIahC9DiAAIAAoAgBBAWs2AgAPC0Hf3AFBjL4BQa8BQc36ABAAAAtBwqYBQYy+AUGwAUHN+gAQAAALDgAgABC/DiAAQQA2AiALOgEBfyAAQoCAgIBwNwMAIABBCGohAUEAIQADQCAAQcAARwRAIAEgAEEobGoQvQ4gAEEBaiEADAELCwslAQF/A0AgAUEERwRAIAAgAUEDdGpCADcDACABQQFqIQEMAQsLC/IDAQN/IwBB8ABrIgMkAAJAAkACQAJAA0AgBCAAKAAITw0BIAAoAgAgAyAAKQIINwNIIAMgACkCADcDQCADQUBrIAQQGUEcbGooAgAiBUUNAyACRQ0EIAUgAhBNBEAgBEEBaiEEDAELCyAAKAIAIAMgACkCCDcDOCADIAApAgA3AzAgA0EwaiAEEBlBHGxqIAE2AhggACgCACADIAApAgg3AyggAyAAKQIANwMgIANBIGogBBAZQRxsakEEakEEECYhASAAKAIAIAMgACkCCDcDGCADIAApAgA3AxAgA0EQaiAEEBlBHGxqKAIYIQIgACgCACADIAApAgg3AwggAyAAKQIANwMAIAMgBBAZQRxsaigCBCABQQJ0aiACNgIADAELIANBADYCaCADQgA3AmAgAyABNgJsIANCADcCWCADIAI2AlQgA0HYAGpBBBAmIQEgAygCWCABQQJ0aiADKAJsNgIAIAAgAygCbDYCLCAAIAMpAmQ3AiQgACADKQJcNwIcIAAgAykCVDcCFCAAQRwQJiEBIAAoAgAgAUEcbGoiASAAKQIUNwIAIAEgACgCLDYCGCABIAApAiQ3AhAgASAAKQIcNwIICyADQfAAaiQADwtB1NYBQdT7AEEMQeU7EAAAC0GU1gFB1PsAQQ1B5TsQAAAL6woCB38KfCMAQeAAayIEJAADfCABKAIIIAJNBHwgCyAMEEchDSAAKAIQIgIrA1AhDiACKwNgIQ8gAisDWCEQIAIrAxAhCiACKwMYIQkgABAtIAAoAhAiAysDECERIAMrAxghEigCECgC/AEhAiAEIAk5AyggBCAKOQMgIAQgEiAMIA2jIBAgD6AgDiACt6AQIyIOoqAiDDkDWCAEIAkgCaAgDKBEAAAAAAAACECjOQM4IAQgESAOIAsgDaOioCILOQNQIAQgCiAKoCALoEQAAAAAAAAIQKM5AzAgBCAJIAwgDKCgRAAAAAAAAAhAozkDSCAEIAogCyALoKBEAAAAAAAACECjOQNAIARBIGohAyMAQfAAayICJAACQCAAKAIQIgUoAggiBkUNACAGKAIEKAIMIgdFDQAgAkEYaiIGQQBByAAQOBogAiAANgIYIAUrA2AhCiACIAMrAwAgBSsDEKE5A2AgAiADKwMIIAUrAxihOQNoIAIgAikDaDcDECACIAIpA2A3AwggBiACQQhqIAcRAAAhBSAAKAIQIAo5A2AgBiAAIAMgBRDfBgsgAkHwAGokACAAKAIQIgIrAxghCyAEKwMoIAIrA2AhCQJ/IAIrA1giDSAEKwMgIAIrAxChEDIiCqBEAAAAAAAAcECiIA0gCaCjIglEAAAAAAAA8EFjIAlEAAAAAAAAAABmcQRAIAmrDAELQQALIQYgC6EQMgUgASgCACEDIAQgASkCCDcDCCAEIAEpAgA3AwAgDCAAIAMgBCACEBlBAnRqKAIAIgNBUEEAIAMoAgBBA3EiBUECRxtqKAIoIgZGBH8gA0EwQQAgBUEDRxtqKAIoBSAGCygCECIDKwMYIAAoAhAiBSsDGKEiCiADKwMQIAUrAxChIgkgChBHIgqjoCEMIAsgCSAKo6AhCyACQQFqIQIMAQsLIQkDQAJAIAEoAgggCEsEQCABKAIAIAQgASkCCDcDGCAEIAEpAgA3AxAgBEEQaiAIEBlBAnRqIQIDQCACKAIAIgUhAiAFRQ0CA0ACQCACIgNFBEAgBSECA0AgAiIDRQ0CIAAgAiACQTBqIgcgACADQVBBACACKAIAQQNxIgJBAkcbaigCKEYEfyADKAIQIgJBADYCXCACQQA7AVogAkEAOgBZIAIgBjoAWCACQoCAgIAQNwNQIAJCADcDSCACIAk5A0AgAiAKOQM4IAMoAgBBA3EFIAILQQNGGygCKEYEQCADKAIQIgJBADYCNCACQQA7ATIgAkEAOgAxIAIgBjoAMCACQoCAgIAQNwMoIAJCADcDICACIAk5AxggAiAKOQMQC0EAIQIgAygCEC0AcEEBRw0AIAMgByADKAIAQQNxQQNGGygCKCgCECIDLQCsAUEBRw0AIAMoAsQBQQFHDQAgAygCwAEoAgAhAgwACwALIAAgA0EwQQAgACADIANBMGsiByADKAIAQQNxIgJBAkYbKAIoRgR/IAMoAhAiAkEANgJcIAJBADsBWiACQQA6AFkgAiAGOgBYIAJCgICAgBA3A1AgAkIANwNIIAIgCTkDQCACIAo5AzggAygCAEEDcQUgAgtBA0cbaigCKEYEQCADKAIQIgJBADYCNCACQQA7ATIgAkEAOgAxIAIgBjoAMCACQoCAgIAQNwMoIAJCADcDICACIAk5AxggAiAKOQMQC0EAIQIgAygCEC0AcEEBRw0BIAMgByADKAIAQQNxQQJGGygCKCgCECIDLQCsAUEBRw0BIAMoAswBQQFHDQEgAygCyAEoAgAhAgwBCwsgBSgCEEGwAWohAgwACwALIAAoAhBBAToAoQEgBEHgAGokAA8LIAhBAWohCAwACwAL0AoBBn8jAEGQA2siASQAIAFB4AJqQYTFCEEwEB8aIAFBsAJqQYTFCEEwEB8aQYzdCiAAQQJBn7EBQQAQIjYCAEGQ3QogAEECQYTvAEEAECIiAjYCAAJAAkAgAkGM3QooAgByRQ0AIAAQHCEFA0AgBUUEQEEAIQIDQCABKALoAiACTQRAIAFB4AJqIgBBHBAxIAAQNEEAIQIDQCABKAK4AiACTQRAIAFBsAJqIgBBHBAxIAAQNAwGBSABIAEpArgCNwNYIAEgASkCsAI3A1AgAUHQAGogAhAZIQACQAJAIAEoAsACIgMOAgEJAAsgASABKAKwAiAAQRxsaiIAKQIINwM4IAFBQGsgACkCEDcDACABIAAoAhg2AkggASAAKQIANwMwIAFBMGogAxEBAAsgAkEBaiECDAELAAsABSABIAEpAugCNwMoIAEgASkC4AI3AyAgAUEgaiACEBkhAAJAAkAgASgC8AIiAw4CAQcACyABIAEoAuACIABBHGxqIgApAgg3AwggASAAKQIQNwMQIAEgACgCGDYCGCABIAApAgA3AwAgASADEQEACyACQQFqIQIMAQsACwALIAAgBRBuIQIDQEEAIQMCQAJAAkAgAkUEQEEAIQIDQCACIAEoAugCIgRPDQIgASABKQLoAjcDkAEgASABKQLgAjcDiAEgASgC4AIgAUGIAWogAhAZQRxsaigADEECTwRAIAEgASkC6AI3A4ABIAEgASkC4AI3A3ggASABKALgAiABQfgAaiACEBlBHGxqIgQpAhQ3A3AgASAEKQIMNwNoIAEgBCkCBDcDYCAFIAFB4ABqEMEOCyACQQFqIQIMAAsACyACQVBBACACKAIAQQNxIgNBAkcbaigCKCIEIAIgAkEwaiIGIANBA0YbKAIoRg0CAkAgBCAFRw0AQYzdCigCACIERQ0AIAIgBBBFIgMtAAANAiACKAIAQQNxIQMLIAIgBiADQQNGGygCKCAFRw0CQZDdCigCACIDRQ0CIAIgAxBFIgMtAABFDQIgAUGwAmogAiADEMAODAILA0ACQCADIARPBEAgAUHgAmpBHBAxQQAhA0EAIQIDQCACIAEoArgCIgRPDQIgASABKQK4AjcD+AEgASABKQKwAjcD8AEgASgCsAIgAUHwAWogAhAZQRxsaigADEECTwRAIAEgASkCuAI3A+gBIAEgASkCsAI3A+ABIAEgASgCsAIgAUHgAWogAhAZQRxsaiIEKQIUNwPYASABIAQpAgw3A9ABIAEgBCkCBDcDyAEgBSABQcgBahDBDgsgAkEBaiECDAALAAsgASABKQLoAjcDwAEgASABKQLgAjcDuAEgAUG4AWogAxAZIQICQAJAIAEoAvACIgQOAgEJAAsgASABKALgAiACQRxsaiICKQIINwOgASABIAIpAhA3A6gBIAEgAigCGDYCsAEgASACKQIANwOYASABQZgBaiAEEQEACyADQQFqIQMgASgC6AIhBAwBCwsDQCADIARPBEAgAUGwAmpBHBAxIAAgBRAdIQUMBQUgASABKQK4AjcDqAIgASABKQKwAjcDoAIgAUGgAmogAxAZIQICQAJAIAEoAsACIgQOAgEJAAsgASABKAKwAiACQRxsaiICKQIINwOIAiABIAIpAhA3A5ACIAEgAigCGDYCmAIgASACKQIANwOAAiABQYACaiAEEQEACyADQQFqIQMgASgCuAIhBAwBCwALAAsgAUHgAmogAiADEMAOCyAAIAIgBRByIQIMAAsACwALIAFBkANqJAAPC0GwgwRBwgBBAUGI9ggoAgAQOhoQOwALHAEBf0EBIQIgACABENIOBH9BAQUgACABENEOCwtAAQJ/AkAgASAAKAIATw0AIAIgACgCBCIETw0AIAAoAgggASAEbCACaiIAQQN2ai0AACAAQQdxdkEBcSEDCyADC84CAQp/AkACQCAABEAgACgCACIFIAFLIAAoAgQiBCACS3FFBEAgBCACQQFqIgMgAyAESRsiBCAFIAFBAWoiAyADIAVJGyIFbCIDQQN2IANBB3FBAEdqEMYDIQcgACgCACEIA0AgBiAIRwRAIAQgBmwhCSAAKAIEIQpBACEDA0AgAyAKRgRAIAZBAWohBgwDCyAAIAYgAxDEDgRAIAcg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A0HMAGohCgJAA0AgAgRAAkAgAigCECIEIAhqKAIAKAIADQAgBCgCsAENACAEQQE2ArABIAMgAjYCTCADQThqQQQQJiEEIAMoAjggBEECdGogAygCTDYCAANAIAMoAkBFDQEgA0E4aiAKEKEEIAMoAkwiBSgCEC0AtQFBB0cEQCAAIAUQ0A4EQEEAIQIDQCADKAJAIAJNBEBBfyEEDAgFIAMgA0FAaykDADcDMCADIAMpAzg3AyggA0EoaiACEBkhAAJAAkACQCADKAJIIgEOAgIAAQsgAygCOCAAQQJ0aigCABAYDAELIAMoAjggAEECdGooAgAgAREBAAsgAkEBaiECDAELAAsACyADQThqIAUgARDPDgwBCyADQThqIQtBACEEAkAgAUEBaiIMIAUoAhAoAugBIgYoAhAiBSwAkQJGDQAgBSgC6AEhBQNAIAYoAhAiBCgC7AEiByAFTgRAIAVBAnQhByAFQQFqIQUgACAHIAQoAowCaigCABDQDiIERQ0BDAILCyAEKALoASEFA0AgBSAHTARAIAsgBCgCjAIgBUECdGooAgAgARDPDiAFQQFqIQUgBigCECIEKALsASEHDAELCyAEIAw6AJECQQAhBAsgBEUNAAtBACECA0AgAiADKAJATw0EIAMgA0FAaykDADcDICADIAMpAzg3AxggA0EYaiACEBkhAAJAAkACQCADKAJIIgEOAgIAAQsgAygCOCAAQQJ0aigCABAYDAELIAMoAjggAEECdGooAgAgAREBAAsgAkEBaiECDAALAAsgAigCECAJaigCACECDAELC0Ho/QooAgAhBSAAKAIQIgIoAugBIQQDQCACKALsASAETgRAIARByABsIgEgBSgCECgCxAFqQQA6ADECQCACLQB0QQFxRQ0AIAIoAsQBIAFqIgEoAgAiBkEATA0AIAZBAWsiBkEBdkEBaiEHIAEoAgQhAUEAIQIDQCACIAdHBEAgASACQQJ0aigCACABIAYgAmtBAnRqKAIAEJcIIAJBAWohAgwBCwsgACgCECECCyAEQQFqIQQMAQsLAkAgABBhIABHDQAQyQRCAFcNACAAQQAQlggLQQAhBEEAIQIDQCACIAMoAkBPDQEgAyADQUBrKQMANwMQIAMgAykDODcDCCADQQhqIAIQGSEAAkACQAJAIAMoAkgiAQ4CAgABCyADKAI4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IQILIAMgASACIAYQ6w4gASECCyAAIAYQMCEGDAALAAsACyAAEOoODAELIAAgA0EAQQAQ6Q4gAxAcIQEDQCABBEAgASgCECICQQA6ALQBIAJBADYCsAEgAyABEB0hAQwBCwsgAxAcIQEDQCABBEAgAyABEOgOIAMgARAdIQEMAQsLIAMQHCEBA0AgAQRAIAEoAhBBADYCkAEgAyABEB0hAQwBCwtBACEJIAMQHCEBA0AgAQRAIAEoAhAoApABRQRAIAMgASAJQQFqIgkQoAgLIAMgARAdIQEMAQsLAkAgCUECSA0AIANB5xwQygQhAiADEBwhAUEBIQgDQCABRQ0BIAggASgCECgCkAFGBEAgAyACIAFBAEEBEF4aIAhBAWohCAsgAyABEB0hAQwACwALIAMQHCEHA0AgBwRAIAMgBxAsIQEDQCABBEAgBygCECICKALIASACKALMASICQQFqIAJBAmoQ2gEhBCAHKAIQIgIgBDYCyAEgAiACKALMASICQQFqNgLMASAEIAJBAnRqIAE2AgAgBygCECICKALIASACKALMAUECdGpBADYCACABIAFBMGsiBSABKAIAQQNxQQJGGygCKCgCECICKALAASACKALEASICQQFqIAJBAmoQ2gEhAiABIAUgASgCAEEDcUECRhsoAigoAhAgAjYCwAEgASAFIAEoAgBBA3FBAkYbKAIoKAIQIgQgBCgCxAEiAkEBajYCxAEgBCgCwAEgAkECdGogATYCACABIAUgASgCAEEDcUECRhsoAigoAhAiAigCwAEgAigCxAFBAnRqQQA2AgAgAyABEDAhAQwBCwsgAyAHEB0hBwwBCwsgA0EBIBAgAEGnhwEQJyICBH8gAhCRAgVBfwsQ/w4aIAAoAhBC/////3c3A+gBQQAhBwJAIAlBAkgNACAJQQFqIgIQnwghB0EBIQEDQCABIAJGDQEgByABQQJ0akH/////BzYCACABQQFqIQEMAAsACyAAEBwhCANAIAgEQCAIEIYCIQIgCCgCECIBIAIoAhAoAqQBKAIQIgIoAvQBIgU2AvQBIAUgACgCECIEKALsAUoEQCAEIAU2AuwBCyAFIAQoAugBSARAIAQgBTYC6AELIAcEQCABIAIoApABIgI2ApABIAcgAkECdGoiAiACKAIAIgIgBSACIAVIGzYCAAsgACAIEB0hCAwB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IAFCADcDECABQgA3AwggASAANgIcIAFBCGpBBBAmIQAgASgCCCAAQQJ0aiABKAIcNgIAIAFBHGohCkH/////ByEEA0AgASgCEARAIAFBCGogCkEEEL4BQQAhACABKAIcIQcDQCAHKAIQIgIoAsgBIABBAnRqKAIAIgMEQCADQVBBACADKAIAQQNxIgtBAkcbaigCKCIMKAIQIg0oArACIQYCQCADKAIQIg4oAqQBQQBIBEAgBiAITCAGIAlOcQ0BIA0oAvQBIANBMEEAIAtBA0cbaigCKCgCECgC9AEgDigCrAFqayICIAQgBUUgAiAESHIiAhshBCADIAUgAhshBQwBCyAGIAIoArACTg0AIAEgDDYCHCABQQhqQQQQJiECIAEoAgggAkECdGogASgCHDYCAAsgAEEBaiEADAEFQQAhACAEQQBMDQMDQCACKAKYAiAAQQJ0aigCACIDRQ0EIANBMEEAIAMoAgBBA3FBA0cbaigCKCIDKAIQKAKwAiACKAKwAkgEQCABIAM2AhwgAUEIakEEECYhAiABKAIIIAJBAnRqIAEoAhw2AgAgBygCECECCyAAQQFqIQAMAAsACwALAAsLDAELIAQoAhAiACgCsAIhCCAAKAKsAiEJIAFBADYCGCABQgA3AxAgAUIANwMIIAEgBDYCHCABQQhqQQQQJiEAIAEoAgggAEECdGogASgCHDYCACABQRxqIQpB/////wchBANAIAEoAhAEQCABQQhqIApBBBC+AUEAIQAgASgCHCEHA0AgBygCECICKALAASAAQQJ0aigCACIDBEAgA0EwQQAgAygCAEEDcSILQQNHG2ooAigiDCgCECINKAKwAiEGAkAgAygCECIOKAKkAUEASARAIAYgCEwgBiAJTnENASADQVBBACALQQJHG2ooAigoAhAoAvQBIA0oAvQBIA4oAqwBamsiAiAEIAVFIAIgBEhyIgIbIQQgAyAFIAIbIQUMAQsgBiACKAKwAk4NACABIAw2AhwgAUEIakEEECYhAiABKAIIIAJBAnRqIAEoAhw2AgALIABBAWohAAwBBUEAIQAgBEEATA0DA0AgAigCoAIgAEECdGooAgAiA0UNBCADQVBBACADKAIAQQNxQQJHG2ooAigiAygCECgCsAIgAigCsAJIBEAgASADNgIcIAFBCGpBBBAmIQIgASgCCCAC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4woQwgEQcQtBkOMKECQEQCAAQeDjCigCACgCFEGQ4woQwgEQcQtBsOMKECQEQCAAQeDjCigCACgCHEGw4woQwgEQiwYLQcDjChAkBEAgAEHg4wooAgAoAiRBwOMKEMIBEHELQdDjChAkBEAgAEHg4wooAgAoAiBB0OMKEMIBEHELQYilCkKAgICAgICA+D83AwBB+KQKQoCAgICAgID4PzcDAEHopApCgICAgICAgPg/NwMAQeCkCkKAgICAgICA+D83AwBByKQKQoCAgICAgID4PzcDAEHApApCgICAgICAgPg/NwMAQYjkCkIANwMAQfjjCkIANwMAQZzkCkEANgIAQZTkCkEANgIAC30AIAAoAhAoAgghAEHw4goQJARAIABB4OMKKAIAKAIIQfDiChDCARBxC0Gw4woQJARAIABB4OMKKAIAKAIMQbDjChDCARCLBgtBgKUKQoCAgICAgID4PzcDAEHwpApCgICAgICAgPg/NwMAQZjkCkEANgIAQZDkCkEANgIAC3MAIAAoAhAoAggiAEHg4wooAgAoAgBB8OIKEMIBEHEgACgCECgCDARAIABB4OMKKAIAKAIEQbDjChDCARBxC0HYpApCgICAgICAgPg/NwMAQbikCkKAgICAgICA+D83AwBBhOQKQQA2AgBB9OMKQQA2AgALxAMBBH8jAEEQayIDJAAgACgCECgCCCEBQeTjCigCAEUEQEHs4wpBoAI2AgBB6OMKQaECNgIAQeTjCkHw7wkoAgA2AgALIAEoAkwiAigCBCEEIAJB5OMKNgIEAkACQAJAAkACQAJAIAAoAkAOBwEBBAACAgIDCyAAIAEgAEEBEMcIDAQLIAAtAJsBQQhxDQMgASAAENUIDAMLQeDiChAkBEBB4OMKKAIAKAIAIgJFBEAgAUEAQcHDARCIASECQeDjCigCACACNgIACyABIAJB4OIKEMIBEHELIAEoAhAoAgwEQCABQeDjCigCACgCBEGg4woQwgEQiwYLQQAhAiABQb7jAEHg4wooAgAoAiwQkAcDQCACQQhGRQRAIAJBBHRB4OIKahBcIAJBAWohAgwBCwtB4OMKKAIAEBhB0KQKQoCAgICAgID4PzcDAEGwpApCgICAgICAgPg/NwMAQYDkCkEANgIAQfDjCkEANgIAIAAtAJsBQQhxDQIgASAAENUIDAILIANB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IAUoAggoAghB4IYKRwRAIAQgATYCGCAGIQMLIAFBACAEQegAaiACIAQtAGcgAxCWBEUNASABIAIQ3wkMAQsgASAGIARB6ABqIANB6cUBIAMbIgMgBC0AZ0EAEJYERQ0AIAEQISEBIAQgAzYCCCAEIAI2AgQgBCABNgIAQd+9BCAEECoLIARBADYCjAEgACAEQegAakEoEB8aCyAEQZABaiQACxoAIAAoAhAoAgwiAARAIAAoAiwQGCAAEBgLC6kFAgR8CH9BMBBSIQYgACgCECgCCCgCCCgCBCEKAnwgAEHU2wooAgBE////////739EexSuR+F6hD8QTCAAQdDbCigCAET////////vf0R7FK5H4XqUPxBMIgEQKSICvUL/////////9/8AUiABvUL/////////9/8AUnJFBEAgACgCECIFQpqz5syZs+bUPzcDICAFQpqz5syZs+bUPzcDKETNzMzMzMwMQAwBCyACRGEyVTAqqTM/ECMhASAAKAIQIgUgASACIAJEAAAAAAAAAABkGyIBOQMgIAUgATkDKCABRAAAAAAAAFJAogshA0EBIQtBASAAQYjcCigCACAKQQAQYiIHIAdBAU0bIAdBAEcgAEG83AooAgBEAAAAAAAA8D9EAAAAAAAAAAAQTCIERAAAAAAAAAAAZHEiCmoiBUEBdEEQEBoiCCADRAAAAAAAAOA/oiICOQMYIAggAjkDECAIIAKaIgE5AwggCCABOQMAQQIhCQJAIAdBAkkEQCACIQEMAQsgAiEBA0AgByALRkUEQCAIIAlBBHRqIgwgAUQAAAAAAAAQQKAiAZo5AwggDCACRAAAAAAAABBAoCICmjkDACAMIAI5AxAgDCABOQMYIAtBAWohCyAJQQJqIQkMAQsLIAIgAqAhAwsgCkUgBSAHTXJFBEAgCCAJQQR0aiIFIAREAAAAAAAA4D+iIgQgAaAiATkDGCAFIAQgAqAiAjkDECAFIAGaOQMIIAUgApo5AwALIAZCADcDECAGQQI2AgggBiAHNgIEIAZBATYCACAGIAg2AiwgBkIANwMYIAZCADcDICAAKAIQIgAgAiACoEQAAAAAAABSQKMiATkDcCAAIAE5A2ggACADRAAAAAAAAFJAoyIBOQMoIAAgATkDICAAIAY2AgwLwQMCBH8CfCMAQdAAayIBJAAgABAtKAIQKAJ0IQJBoN8KIAAoAhAoAngoAgAiAzYCACAAIAJBBHFFIgRBAUECIAMQQCICIAJBAk0bQQFqQQEQGiIDEMgGIgJFBEAgASAAKAIQKAJ4KAIANgIgQYPxAyABQSBqEDdBoN8KQb3RATYCACAAIARBASADEMgGIQILIAMQGCABQUBrIAAgAhDkCSABIAAoAhAiAysDIEQAAAAAAABSQKIiBTkDQCABIAMrAyhEAAAAAAAAUkCiIgY5A0ggAEGc3AooAgBB+pMBEHoQaEUEQCABIAIrAwAgBRAjIgU5A0AgASACKwMIIAYQIyIGOQNICyAAQfjbCigCAEH6kwEQehBoIQMgASABKQNINwMYIAEgASkDQDcDECACIAFBEGogAxDjCSABIAZEAAAAAAAA4D+iOQM4IAEgASkDODcDCCABIAVEAAAAAAAA4L+iOQMwIAEgASkDMDcDACACIAFBDxDiCSAAKAIQIgAgAisDAEQAAAAAAABSQKM5AyAgAisDCCEFIAAgAjYCDCAAIAVEAAAAAAAA8D+gRAAAAAAAAFJAozkDKCABQdAAaiQAC6IeAw9/GnwDfiMAQYABayIBJABBMBBSIQggACgCECgCCCgCCCIGKwMYIRogBisDICEcIAYrAxAgBigCCCEEIAYoAgQhByAGKAIAQQBHIABBrzsQJxBociENAkAgBkGw/QlGDQAgDQRAIABB1NsKKAIARAAAAAAAAAAARHsUrkfheoQ/EEwgAEHQ2wooAgBEAAAAAAAAAABEexSuR+F6lD8QTBAjRAAAAAAAAFJAoiITIRUgE0QAAAAAAAAAAGQNASAAKAIQIgIrAyAgAisDKBApRAAAAAAAAFJAoiITIRUMAQsgACgCECICKwMoRAAAAAAAAFJAoiETIAIrAyBEAAAAAAAAUkCiIRULIABBiNwKKAIAIAdBABBiIQkgAEGQ3AooAgBEAAAAAAAAAABEAAAAAACAdsAQTCAERQRAIABBlNwKKAIARAAAAAAAAAAARAAAAAAAAFnAEEwhHCAAQYTcCigCAEEEQQAQYiEEIABBmNwKKAIARAAAAAAAAAAARAAAAAAAAFnAEEwhGgsgACgCECgCeCICKwMYIRECQCACKwMgIhZEAAAAAAAAAABkRSARRAAAAAAAAAAAZEF/c3EgBkGw/QlGcg0AIABB1+QAECciAgRAIAFCADcDeCABQgA3A3AgASABQfgAajYCQCABIAFB8ABqNgJEIAJB3IMBIAFBQGsQUSECIAEgASsDeEQAAAAAAAAAABAjIhA5A3ggASABKwNwRAAAAAAAAAAAECMiFzkDcCACQQBKBEAgEEQAAAAAAABSQKIiECAQoCIQIBGgIREgAkEBRwRAIBdEAAAAAAAAUkCiIhAgEKAgFqAhFgwDCyAQIBagIRYMAgsgFkQAAAAAAAAgQKAhFiARRAAAAAAAADBAoCERDAELIBZEAAAAAAAAIECgIRYgEUQAAAAAAAAwQKAhEQsgACgCECgCeCsDGCEUIAAQLSgCECgCCCsDACIQRAAAAAAAAAAAZAR8IBBEAAAAAAAAUkCiIhAgFiAQo5uiIRYgECARIBCjm6IFIBELIR8gASAWAn8CQCAAKAIQKAIIIgItAAxBAUYEQCACKAIAQZ3sABA+RQ0BIABByJoBECchBiABQeAAaiAAEC0gBhDMBiABKAJgIgcgASgCZCICcUF/RgRAIAEgABAhNgIkIAEgBkH/3gEgBhs2AiBBtPwEIAFBIGoQKgwCCyAAEC0oAhBBAToAciAHQQJqIQMgAkECagwCCyAAQb+eARAnIgZFDQAgBi0AAEUNACABQeAAaiAAEC0gBhDMBiABKAJgIgcgASgCZCICcUF/RgRAIAEgABAhNgI0IAEgBjYCMEHh/AQgAUEwahAqDAELIAAQLSgCEEEBOgByIAdBAmohAyACQQJqDAELQQALtyIgECM5A2ggASAfIAO3ECM5A2AgBEH4ACAavSAcvYRQIARBAktyGyEEAn8CQCAAQZmzARAnIgJFDQAgAi0AACICQfQARyACQeIAR3ENACAAKAIQIgMoAnggAjoAUCACQeMARwwBCyAAKAIQIgMoAnhB4wA6AFBBAAshCqAhIgJAAkAgBEEERw0AICIQpweZRAAAAAAAAOA/Y0UgGr1CAFJyDQBBASELIBy9UA0BCyADKAIIKAIIKAIsIgIEQCACKAIAIQIgASABKQNoNwMYIAEgASkDYDcDECABQdAAaiABQRBqIAIRBAAgASABKQNYNwNoIAEgASkDUDcDYEEAIQsMAQsCQCATIAErA2giEETNO39mnqD2P6IiF2RFIApyRQRAIAFEAAAAAAAA8D9EAAAAAAAA8D8gECAToyIXIBeioaOfIAErA2CiIhg5A2AMAQsgASAXOQNoIAEgASsDYETNO39mnqD2P6IiGDkDYCAXIRALQQAhCyAEQQNJDQAgASAQRBgtRFT7IQlAIAS4oxBKIhCjOQNoIAEgGCAQozkDYAsgASsDaCEXAkACQCAAQZzcCigCAEH6kwEQeiICLQAAQfMARw0AIAJBoZYBED5FDQAgASATOQNoIAEgFTkDYCAIIAgoAihBgBByNgIoDAELIAIQaARAAkAgFSAAKAIQKAJ4IgIrAxhjRQRAIBMgAisDIGNFDQELIAAQISECIAEgABAtECE2AgQgASACNgIAQZmRBCABECoLIAEgEzkDaCABIBU5A2AMAQsgASAVIAErA2AQIyIVOQNgIAEgEyABKwNoECMiEzkDaAsgDQRAIAEgFSATECMiEzkDYCABIBM5A2ggEyEVCyARIBShIRACfCAfIhEgAEH42wooAgBB+pMBEHoQaA0AGiALBEAgESABKwNgECMMAQsgHyAWIAErA2giFGNFDQAaIBFEAAAAAAAA8D8gFiAWoiAUIBSio6GfIAErA2CiECMLIREgACgCECgCeCICIBEgEKE5AyggCCgCKEGAEHEiD0UEQCACIBYgICAWoSABKwNoIBehIhGgIBEgFiAgYxugOQMwC0EBIQpBASAJIAlBAU0bIgYgCUEARyAAQbzcCigCAEQAAAAAAADwP0QAAAAAAAAAABBMIiNEAAAAAAAAAABkcWohDEECIQcCQAJAAkAgBEECTQRAIAxBAXRBEBAaIQUgASsDYCEUIAUgASsDaCITRAAAAAAAAOA/oiIROQMYIAUgFEQAAAAAAADgP6IiEDkDECAFIBGaOQMIIAUgEJo5AwAgCUECSQ0BA0AgCSAKRgRAIBEgEaAhEyAQIBCgIRQMAwUgBSAHQQR0aiICIBFEAAAAAAAAEECgIhGaOQMIIAIgEEQAAAAAAAAQQKAiEJo5AwAgAiAQOQMQIAIgETkDGCAKQQFqIQogB0ECaiEHDAELAAsACyAEIAxsQRAQGiEFAkAgACgCECgCCCgCCCgCLCICBEAgBSABQeAAaiACKAIEEQQAIAErA2hEAAAAAAAA4D+iIRkgASsDYEQAAAAAAADgP6IhGAwBC0QYLURU+yEZQCAEuKMiJEQYLURU+yEJwKBEAAAAAAAA4D+iIhREGC1EVPshCUAgJKFEAAAAAAAA4D+ioCEQIBpEzTt/Zp6g9j+iICREAAAAAAAA4D+iIhcQSqMhKCAcRAAAAAAAAOA/oiEpIBQQVyIdRAAAAAAAAOA/oiERIBQQSiIeRAAAAAAAAOA/oiEmQQAhA0QAAAAAAAAAACEYIByZIBqZoEQAAAAAAADwPxBHISAgASsDaCEhIAErA2AhGyAXEFchJyAiRAAAAAAAgGZAo0QYLURU+yEJQKIhFANAIAMgBEYNASAkIBCgIhAQSiESIAUgA0EEdGoiAiAUICcgEBBXoiARoCIRICcgEqIgJqAiJiARICiiICCgoiApIBGioCISEKgBoCIXEFciHSASIBEQRyISoiAhoiIlOQMIIAIgGyASIBcQSiIeoqIiEjkDACADQQFqIQMgJZkgGRAjIRkgEpkgGBAjIRggC0UNAAsgBSASOQMwIAUgJTkDGCAFICWaIhE5AzggBSAROQMoIAUgEpoiETkDICAFIBE5AxALIAEgEyAZIBmgIhEQIyITOQNoIAEgFSAYIBigIhAQIyIUOQNgIBMgEaMhESAUIBCjIRBBACEDA0AgAyAERkUEQCAFIANBBHRqIgIgESACKwMIojkDCCACIBAgAisDAKI5AwAgA0EBaiEDDAELCyAMQQJJDQFBASAEIARBAU0bIQogBSsDCCIZvSEqIAUrAwAiGL0hK0EBIQMDQAJAIAMgCkYEQCASvSEsDAELIAUgBCADayAEcEEEdGoiAisDCCEQIAIrAwAiEr0iLCArUg0AIANBAWohAyAQvSAqUQ0BCwsgKyAsUSAqIBC9UXFFBEBBACELIBkgEKEgGCASoRCoASERIAQgCWxBBHQhBwJAA0AgBCALRgRAQQAhAyAEIAlBAWtsQQR0IQogDEEBayAEbEEEdCEGIBQhECATIREDQCADIARGDQcgBSADQQR0aiIHIApqIgIrAwAgAisDCCAGIAdqIgIrAwAgA0EBaiEDIAIrAwiZIhIgEqAgERAjIRGZIhIgEqAgEBAjIRCZIhIgEqAgExAjIROZIhIgEqAgFBAjIRQMAAsACyAFIAtBBHRqIg4rAwgiFb0hKkEBIQMCQCAOKwMAIhe9IisgEr1SICogEL1SckUEQCARIRIMAQsDQAJAIAMgCkYEQCAYvSEsDAELIAUgAyALaiAEcEEEdGoiAisDCCEZIAIrAwAiGL0iLCArUg0AIANBAWohAyAqIBm9UQ0BCwsgKyAsUSAqIBm9UXENAiARRBgtRFT7IQlAoCAZIBWhIBggF6EQqAEiEqFEAAAAAAAA4D+iIhAQVyEbIBEgEKEiEBBKRAAAAAAAABBAIBujIhGiIR4gEBBXIBGiIR0LQQEhAwJAAkAgHkQAAAAAAAAAAGIEQCAVIREgFyEQDAELIBUhESAXIRAgHUQAAAAAAAAAAGENAQsDQCADIAZGBEAgCSAMSQRAIAcgDmoiAiAjIB2iRAAAAAAAAOA/okQAAAAAAADQP6IgEaA5AwggAiAjIB6iRAAAAAAAAOA/okQAAAAAAADQP6IgEKA5AwALIAtBAWohCyASIREgFSEQIBchEgwDBSAOIAMgBGxBBHRqIgIgHSARoCIROQMIIAIgHiAQoCIQOQMAIANBAWohAwwBCwALAAsLQcCdA0HeuQFBnxJBuiAQAAALQdigA0HeuQFBkhJBuiAQAAALQdigA0HeuQFB/BFBuiAQAAALQQIhBCAJIAxPDQAgBSAJQQV0aiICICNEAAAAAAAA4D+iIhIgEKAiEDkDECACIBIgEaAiEZo5AwggAiAQmjkDACACIBE5AxggESARoCERIBAgEKAhEAwBCyAUIRAgEyERCyAIIBw5AyAgCCAiOQMQIAggBDYCCCAIIAk2AgQgCCANNgIAIAggBTYCLCAIIBo5AxgCQCAPBEAgHyAQECMhECAAKAIQIgMgEEQAAAAAAABSQKM5A2ggAyAWIBMQI0QAAAAAAABSQKM5AyggAyAfIBQQI0QAAAAAAABSQKM5AyAgFiARECMhEQwBCyAAKAIQIgMgEEQAAAAAAABSQKM5A2ggAyATRAAAAAAAAFJAozkDKCADIBREAAAAAAAAUkCjOQMgCyADIAg2AgwgAyARRAAAAAAAAFJAozkDcCABQYABaiQACzMBAX8gACgCFCIBBEAgARDqAwsCQCAAKAJERQ0AIAAoAkwiAUUNACAAIAERAQALIAAQGAsJACAAKAJEEBgLDAAgACgCECgCDBAYC7gFAgh/AnwjAEHACWsiASQAAkACQCAAQciaARAnEPsEIgUEQEGA3wooAgAiAkUEQEGA3wpB/PwJQZTuCSgCABCTASICNgIACyACIAVBgAQgAigCABEDACICRQRAIAVB4zsQnwQiBkUNAkEAIQICQAJAAkACQANAIAFBwAFqIgRBgAggBhCoBwRAIAEgAUHQAGo2AkwgASABQdQAajYCSCABIAFB2ABqNgJEIAEgAUHcAGo2AkBBASEHIARB/LEBIAFBQGsQUUEERiACciICIAEtAMABQSVHBEAgBEGKsQEQsgVBAEcgA3IhAwsgA3FBAXFFDQEMAgsLIAMhByACQQFxRQ0BC0HQABBSIgIgASgCXCIDtzkDICACIAEoAlgiBLc5AyggAiABKAJUIANrtzkDMCABKAJQIQMgAiAFNgIIIAIgAyAEa7c5AzhBiN8KQYjfCigCACIDQQFqNgIAIAIgAzYCDCAGEOoLIAFB4ABqEOgLIAIgASgCeCIEQQFqQQEQGiIDNgJEIAYQ5gMgAyAEQQEgBhC7BUEBRgRAIAMgBGpBADoAAEGA3wooAgAiAyACQQEgAygCABEDABogAiAHQQFxOgAQDAMLIAEgBTYCIEHd+wMgAUEgahAqIAMQGCACEBgMAQsgASAFNgIwQZr7AyABQTBqECoLQQAhAgsgBhDqAyACRQ0DCyACKwMwIQkgACgCECIDIAIrAzgiCkQAAAAAAABSQKM5AyggAyAJRAAAAAAAAFJAozkDIEEYEFIhAyAAKAIQIAM2AgwgAyACKAIMNgIAIAMgAisDIJogCUQAAAAAAADgP6KhOQMIIAMgAisDKJogCkQAAAAAAADgP6KhOQMQDAILIAEgABAhNgIAQYr8AyABECoMAQsgASAFNgIQQcH7AyABQRBqECoLIAFBwAlqJAALPgECfwJ/QX8gACgCACICIAEoAgAiA0kNABpBASACIANLDQAaQX8gACgCBCIAIAEoAgQiAUkNABogACABSwsLMABBGBBSIgEgACgCCDYCCCABIAAoAgw2AgwgASAAKAIQNgIQIAEgACgCFDYCFCABC2MBA38jAEEQayICJAAgAkEIaiABKAIAQQAQ0AECQCAAKAAAIAIoAgggACgABCIBIAIoAgwiAyABIANJIgQbEOoBIgANAEEBIQAgASADSw0AQX9BACAEGyEACyACQRBqJAAgAAv/BAEKfyACQeMAcQRAIAAgASACIAAoAiAoAgARAwAPCwJAAkAgAkGEBHFFBEAgACgCICgCBEEMcSIDIAJBgANxRXINAQsgACEDA0AgA0UEQEEAIQQMAwsgAyABIAIgAygCICgCABEDACIEDQIgAygCKCEDDAALAAsCQAJAAkAgAwRAIAJBmANxRQ0DIAJBkAJxQQBHIQsgAkGIAXFBAEchDCAAIQMDQCADRQ0CAkAgAyABIAIgAygCICgCABEDACIERQ0AIAQgAygCBCIHKAIAaiEGIAcoAgQiCkEASARAIAYoAgAhBgsCQCAFRQ0AIAwCfyAHKAIUIgcEQCAGIAkgBxEAAAwBCyAKQQBMBEAgBiAJEE0MAQsgBiAJIAoQzgELIgdBAEhxDQAgCyAHQQBKcUUNAQsgBCEFIAYhCSADIQgLIAMoAighAwwACwALIAJBGHFFDQICQAJAIAAoAiwiBEUNACAEKAIMIQgCfyAEKAIEKAIIIgNBAEgEQCAIKAIIDAELIAggA2sLIAFHDQAgASEDDAELIAAhBANAIARFBEAgAEEANgIsQQAPCyAEIAFBBCAEKAIgKAIAEQMAIgNFBEAgBCgCKCEEDAELCyAAIAQ2AiwLQYABQYACIAJBCHEbIQEgBCADIAIgBCgCICgCABEDACEFA0AgACEDIAUEQANAIAMgBEYNBCADIAVBBCADKAIgKAIAEQMARQRAIAMoAighAwwBCwsgBCAFIAIgBCgCICgCABEDACEFDAELIAAgBCgCKCIENgIsIARFDQMgBEEAIAEgBCgCICgCABEDACEFDAALAAsgACAINgIsCyAFDwtBAA8LIAAgAzYCLCAECxEAIAAgAaJEAAAAAAAAJECiC2IAIwBBIGsiBiQAIAAgAisDACADKwMAoDkDACAAIAIrAwggAysDCKA5AwggBiACKQMINwMIIAYgAikDADcDACAGIAApAwg3AxggBiAAKQMANwMQIAEgBkECED0gBkEgaiQAC9IEAgJ/BXwjAEHwAGsiByQAIAcgAikDCDcDGCAHIAIpAwA3AxAgBUQAAAAAAADgP6IiCkQAAAAAAADQP6JEAAAAAAAA4D8gBUQAAAAAAAAQQGQbIQsgAysDCCEJIAACfCAGQSBxIggEQCADKwMAIQUgAisDAAwBCyACKwMAIgQgAysDACIFRAAAAAAAAAAAYSAJRAAAAAAAAAAAYXENABogAiACKwMIIAogCSAFmiAJmhBHIgyjoqA5AwggBCAKIAUgDKOioAsiBCAFoDkDACAAIAIrAwgiCiAJoDkDCCAHIAApAwg3AyggByAAKQMANwMgIAcgCiALIAWiIgWhIAsgCZqiIgmhIgs5A2ggByAFIAQgCaGgOQNgIAcgBSAKoCAJoSIKOQM4IAcgBSAEIAmgoDkDMCAFIAlEZmZmZmZm7r+iIASgoCEMIAUgCURmZmZmZmbuP6IgBKCgIQ0gBUQAAAAAAAAQQKJEAAAAAAAACECjIQQgCUQAAAAAAAAQwKJEAAAAAAAACECjIQUCfCAIBEAgCyAFoCEJIAQgDKAhCyAKIAWgIQogBCANoAwBCyALIAWhIQkgDCAEoSELIAogBaEhCiANIAShCyEFIAcgCTkDWCAHIAs5A1AgByAKOQNIIAcgBTkDQCABIAdBEGpBAhA9AkAgBkHAAHEEQCAHIAdBMGoiAEQAAAAAAADgP0EAIAAQoQEMAQsgBkGAAXFFDQAgByAHQTBqIgBEAAAAAAAA4D8gAEEAEKEBCyABIAdBMGpBBEEAEPABIAdB8ABqJAALFAAgACABokQAAAAAAAAkQKIgAqALiwICAX8HfCMAQSBrIgckACACKwMAIQQCQCADKwMAIglEAAAAAAAAAABiIAMrAwgiCkQAAAAAAAAAAGJyRQRAIAIrAwghBQwBCyACKwMIIAVEAAAAAAAA4D+iIgggCpoiBSAJmiILIAUQRyIMo6IiDaEhBSAEIAggCyAMo6IiC6EhBAsgByAJIAoQR0QAAAAAAADgP6IiCCAKRAAAAAAAAOA/oiAFoCIMoDkDGCAHIAggCUQAAAAAAADgP6IgBKAiDqA5AxAgByAMIAihOQMIIAcgDiAIoTkDACABIAcgBkF/c0EEdkEBcRCGBCAAIAogBaAgDaE5AwggACAJIASgIAuhOQMAIAdBIGokAAudAgEBfyMAQaABayIEJAAgBEIANwNIIARCADcDQCAEQgA3AzggBEIANwMYIARCADcDCCAEIAAgAaJEAAAAAAAAJECiOQMwIARCADcDECAEIAQpAzA3AwAgBEEgaiAEQRBqIAQgAiADIARB0ABqEIIKAkACQCAEKwMgRAAAAAAAAOA/oiIARAAAAAAAAAAAZARAIAQrA2ggBCsDiAGhIgFEAAAAAAAAAABkRQ0BIAAgAaIgBCsDgAEgBCsDcKGZoyIBRAAAAAAAAAAAZEUNAiAEQaABaiQAIAAgAKAgACACoiABo6EPC0GDuANBkrkBQYQKQcakARAAAAtB57gDQZK5AUGHCkHGpAEQAAALQbG4A0GSuQFBiwpBxqQBEAAAC6kBAQF/IwBB8ABrIgckACAHIAIpAwg3AxggByACKQMANwMQIAcgAykDCDcDCCAHIAMpAwA3AwAgACAHQRBqIAcgBSAGIAdBIGoQggoCQCAGQcAAcQRAIAEgB0FAa0EDIAZBf3NBBHZBAXEQSAwBCyAGQX9zQQR2QQFxIQAgBkGAAXEEQCABIAdBIGpBAyAAEEgMAQsgASAHQSBqQQQgABBICyAHQfAAaiQAC/EDAgF/CnwjAEFAaiIHJAAgAysDCCIEIAIrAwgiCaAhDiADKwMAIgggAisDACINoCEPIAhEmpmZmZmZ2T+iIQogBESamZmZmZnZv6IhCyAERJqZmZmZmek/oiAJoCEQIAhEmpmZmZmZ6T+iIA2gIRECfCAIRAAAAAAAAAAAYQRARAAAAAAAAAAAIAREAAAAAAAAAABhDQEaCyAFRAAAAAAAAOA/oiIFIASaIgQgCJoiCCAEEEciBKOiIQwgBSAIIASjogshBSACIAkgDKEiCDkDCCACIA0gBaEiCTkDACAAIA4gDKE5AwggACAPIAWhOQMAIAcgCiAQIAyhIgSgOQM4IAcgCyARIAWhIgWgOQMwIAcgBCAKoTkDKCAHIAUgC6E5AyAgByAIIAqhOQMYIAcgCSALoTkDECAHIAogCKA5AwggByALIAmgOQMAIAdBEGohAwJAIAZBwABxBEAgByACKQMANwMAIAcgAikDCDcDCCAHIAQ5AzggByAFOQMwDAELIAZBgAFxRQ0AIAMgAikDADcDACADIAIpAwg3AwggByAEOQMoIAcgBTkDIAsgASAHQQQgBkF/c0EEdkEBcRBIIAcgBDkDCCAHIAU5AwAgAyAAKQMINwMIIAMgACkDADcDACABIAdBAhA9IAdBQGskAAtQACAAIAGiRAAAAAAAACRAoiIARJqZmZmZmcm/oiACRAAAAAAAAOA/oiIBoCAAIABEmpmZmZmZ2b+iIAGgIgGgoCAAIAFEAAAAAAAAAABkGwuIBAIBfwt8IwBBQGoiByQAIAMrAwghBCAAIAMrAwAiCCACKwMAIgmgIhA5AwAgACAEIAIrAwgiDqAiETkDCCAJIAhEMzMzMzMz4z+ioCEKIAkgCESamZmZmZnJP6KgIQsgDiAERDMzMzMzM+M/oqAhDCAOIAREmpmZmZmZyT+ioCENAkAgCCAEEEciD0QAAAAAAAAAAGRFDQAgD0SamZmZmZnJv6IgBUQAAAAAAADgP6KgIg9EAAAAAAAAAABkRQ0AIAIgDiAPIASaIgUgCJoiDiAFEEciEqOiIgWhOQMIIAIgCSAPIA4gEqOiIgmhOQMAIAAgESAFoTkDCCAAIBAgCaE5AwAgDCAFoSEMIAogCaEhCiANIAWhIQ0gCyAJoSELCyAHIAggDKA5AzggByAKIAShOQMwIAcgDCAIoTkDKCAHIAQgCqA5AyAgByANIAihOQMYIAcgBCALoDkDECAHIAggDaA5AwggByALIAShOQMAIAdBEGohAwJAIAZBwABxBEAgByAMOQM4IAcgCjkDMCAHIA05AwggByALOQMADAELIAZBgAFxRQ0AIAcgDDkDKCAHIAo5AyAgByANOQMYIAcgCzkDEAsgASAHQQRBARBIIAcgAikDCDcDCCAHIAIpAwA3AwAgAyAAKQMINwMIIAMgACkDADcDACABIAdBAhA9IAdBQGskAAvTAgIBfwJ8IwBB4AFrIgQkACAEQgA3A0ggBEIANwNAIARCADcDOCAEQgA3AxggBEIANwMIIAQgACABokQAAAAAAAAkQKI5AzAgBEIANwMQIAQgBCkDMDcDACAEQSBqIARBEGogBCABIAIgAyAEQdAAahCECgJAAkACQCAEKwMgIgBEAAAAAAAAAABkBEAgACAEKwOAASAEKwNgIgWhoCIBRAAAAAAAAAAAZEUNASAEKwPIASAEKwNooSIGRAAAAAAAAAAAZEUNAiAGIAGiIAUgBCsDUKGZoyIFRAAAAAAAAAAAZEUNAyAEQeABaiQAIAAgAkQAAAAAAADgP6IgAiABoiAFoyADQSBxG6EPC0GDuANBkrkBQboKQYAUEAAAC0H+sANBkrkBQbwKQYAUEAAAC0HnuANBkrkBQb8KQYAUEAAAC0GxuANBkrkBQcMKQYAUEAAAC5UBAQF/IwBBsAFrIgckACAHIAIpAwg3AxggByACKQMANwMQIAcgAykDCDcDCCAHIAMpAwA3AwAgACAHQRBqIAcgBCAFIAYgB0EgaiIAEIQKAkAgBkHAAHEEQCABIABBBUEBEEgMAQsgBkGAAXEEQCABIAdB4ABqQQVBARBIDAELIAEgB0EgakEIQQEQSAsgB0GwAWokAAuhAgEBfyMAQaABayIEJAAgBEIANwNIIARCADcDQCAEQgA3AzggBEIANwMYIARCADcDCCAEIAAgAaJEAAAAAAAAJECiOQMwIARCADcDECAEIAQpAzA3AwAgBEEgaiAEQRBqIAQgAiADIARB0ABqEIUKAkACQCAEKwMgIgBEAAAAAAAAAABkBEAgBCsDiAEgBCsDaKEiAUQAAAAAAAAAAGRFDQEgACABoiAEKwNgIAQrA3ChmaMiAUQAAAAAAAAAAGRFDQIgBEGgAWokACAAIAIgAKIgAaMgAkQAAAAAAADgP6IgA0EgcRuhDwtBg7gDQZK5AUG1CUHk8QAQAAALQee4A0GSuQFBuAlB5PEAEAAAC0GxuANBkrkBQbwJQeTxABAAAAuoAQEBfyMAQfAAayIHJAAgByACKQMINwMYIAcgAikDADcDECAHIAMpAwg3AwggByADKQMANwMAIAAgB0EQaiAHIAUgBiAHQSBqIgAQhQoCQCAGQcAAcQRAIAEgAEEDIAZBf3NBBHZBAXEQSAwBCyAGQX9zQQR2QQFxIQAgBkGAAXEEQCABIAdBQGtBAyAAEEgMAQsgASAHQTBqQQMgABBICyAHQfAAaiQACzQBAXwgACgCBCsDACABKwMAIAAoAgAiACsDAKEiAiACoiABKwMIIAArAwihIgIgAqKgn2YL9BIBEX8jAEEQayIHJAAgAC0ACUEQcQRAIABBABDnAQsgACgCDCEDIAAoAgQiDCgCCCEJAn8CQAJAIAFFBEBBACACQcADcUUgA0VyDQMaIAJBwABxBEAgDCgCEEUgCUEATnFFBEBBACAJayEEA0AgAygCBCIBBEAgAyABKAIANgIEIAEgAzYCACABIQMMAQsgAygCACAMKAIQIgYEQAJ/IAlBAEgEQCADKAIIDAELIAMgBGoLIAYRAQALIAwoAghBAEgEQCADEBgLIgMNAAsLIABBADYCDCAAQQA2AhhBAAwECwJAIAJBgAJxBEADQCADKAIAIgFFDQIgAyABKAIENgIAIAEgAzYCBCABIQMMAAsACwNAIAMoAgQiAUUNASADIAEoAgA2AgQgASADNgIAIAEhAwwACwALIAAgAzYCDCAJQQBODQEMAgsgDCgCFCEOIAwoAgQhCiAMKAIAIQ8CQAJAAkACQAJAAkAgAkGCIHEiE0UNACAAKAIgKAIEQQhHDQAgASAPaiEIIApBAE4iBkUEQCAIKAIAIQgLIAAgAUEEIAAoAgARAwAhBCAKQQBKIQsDQCAERQ0BIAQgD2ohBSAGRQRAIAUoAgAhBQsCfyAOBEAgCCAFIA4RAAAMAQsgC0UEQCAIIAUQTQwBCyAIIAUgChDOAQsNASABIARGBEAgByAAKAIMIgMoAgQ2AgggByADKAIANgIMIAdBCGohBAwDBSAAIARBCCAAKAIAEQMAIQQMAQsACwALAkACQAJAAkACQAJAAkACQCACQYUEcQRAAn8gASACQYAEcQ0AGiABIA9qIgggCkEATg0AGiAIKAIACyEIIAMNASAHQQhqIgYhBAwDCyACQSBxBEAgDwJ/IAlBAEgEQCABKAIIDAELIAEgCWsLIgVqIQggCkEASARAIAgoAgAhCAsgA0UNAiABIQ0gBSEBDAELIANFBEAgB0EIaiIGIQQMAwsCfyAJQQBIBEAgAygCCAwBCyADIAlrCyABRgRAIAdBCGoiBiEEDAQLIAEgD2ohCCAKQQBODQAgCCgCACEIC0EAIAlrIRAgCUEATiERIAdBCGoiBiELAkADQCADIQQCQAJ/AkACQAJAA0ACfyARRQRAIAQoAggMAQsgBCAQagsgD2ohBSAKQQBOIhJFBEAgBSgCACEFCyAEAn8gDgRAIAggBSAOEQAADAELIApBAEwEQCAIIAUQTQwBCyAIIAUgChDOAQsiBUUNBBogBUEATg0DIAQoAgQiBUUNAgJ/IBFFBEAgBSgCCAwBCyAFIBBqCyAPaiEDIBJFBEAgAygCACEDCwJ/IA4EQCAIIAMgDhEAAAwBCyAKQQBMBEAgCCADEE0MAQsgCCADIAoQzgELIgNBAE4NASAEIAUoAgA2AgQgBSAENgIAIAsgBTYCBCAFIgsoAgQiBA0ACyAFIQQMCAsgA0UEQCALIAQ2AgQgBSEDDAkLIAYgBTYCACALIAQ2AgQgBCELIAUiBigCACIDDQQMBwsgCyAENgIEDAYLIAQoAgAiBUUNAwJ/IBFFBEAgBSgCCAwBCyAFIBBqCyAPaiEDIBJFBEAgAygCACEDCwJ/IA4EQCAIIAMgDhEAAAwBCyAKQQBMBEAgCCADEE0MAQsgCCADIAoQzgELIgNBAEoEQCAEIAUoAgQ2AgAgBSAENgIEIAYgBTYCACAFIgYoAgAiAw0DIAshBAwGCyADDQEgBiAENgIAIAQhBiAFCyEDIAshBAwFCyALIAU2AgQgBiAENgIAIAQhBiAFIgsoAgQiAw0ACyAFIQQMAgsgBiAENgIAIAQhBiALIQQMAQsgB0EIaiIGIQQgASENIAUhAQsgBEEANgIEIAZBADYCACACQQhxDQEgAkEQcQ0DIAJBhARxDQhBACEDIAJBAXENB0EAIQEgAkEgcUUNCCAAIAAoAhhBAWo2AhggDSEDDAkLIAYgAygCBDYCACAEIAMoAgA2AgQgAkGEBHENCCACQQhxRQ0BIAcoAgghBiADQQA2AgAgAyAGNgIEIAcgAzYCCAsgBygCDCIDRQ0GA0AgAygCBCIBBEAgAyABKAIANgIEIAEgAzYCACABIQMMAQsLIAcgAygCADYCDAwHCyACQRBxRQ0BIAcoAgwhBiADQQA2AgQgAyAGNgIAIAcgAzYCDAsgBygCCCIDRQ0EA0AgAygCACIBBEAgAyABKAIENgIAIAEgAzYCBCABIQMMAQsLIAcgAygCBDYCCAwFCyATRQ0BCwJ/IAlBAEgEQCADKAIIDAELIAMgCWsLIQECQCACQQJxRQ0AIAwoAhAiBkUNACABIAYRAQALIAwoAghBAEgEQCADEBgLIAAgACgCGCIDQQFrNgIYIANBAEoNAiAAIANBAms2AhgMAgsgAkEBcQRAIAAoAiAtAARBBHENAyADQQA2AgQgAyAHKAIMNgIAIAcgAzYCDAwBC0EAIAJBIHFFDQUaIAAoAiAtAARBBHEEQCAMKAIQIgQEQCABIAQRAQALIAwoAghBAE4NAyANEBgMAwsgDUEANgIEIA0gBygCDDYCACAHIA02AgwgACAAKAIYQQFqNgIYDAILIAwoAgwiBgRAIAEgDCAGEQAAIQELAkACQAJAIAEEQCAJQQBIDQEgASAJaiEDCyADRQ0DDAELQQwQTyIDRQ0BIAMgATYCCAsgACgCGCIBQQBIDQIgACABQQFqNgIYDAILIAwoAgxFDQAgDCgCECIDRQ0AIAEgAxEBAAsDQCAEIgMoAgQiBA0ACyADIAcoAgg2AgQgACAHKAIMNgIMIAJBHnRBH3UgAXEMAwsgAyAHKAIIIgU2AgQgAyAHKAIMNgIAAkAgAkGEBHFFDQAgACgCICgCBEEIcUUNAAJ/IAlBAEgEQCADKAIIDAELIAMgCWsLIA9qIQEgCkEATiIGRQRAIAEoAgAhAQtBACAJayELIAlBAE4hDQNAIAUiBEUNAQNAIAQoAgAiAgRAIAQgAigCBDYCACACIAQ2AgQgAiEEDAELCyADIAQ2AgQCfyANRQRAIAQoAggMAQsgBCALagsgD2ohBSAGRQRAIAUoAgAhBQsCfyAOBEAgASAFIA4RAAAMAQsgCkEATARAIAEgBRBNDAELIAEgBSAKEM4BCw0BIAMgBCgCADYCBCAEIAM2AgAgBCgCBCEFIAQhAwwACwALIAAgAzYCDCAJQQBIDQELIAMgCWsMAQsgAygCCAsgB0EQaiQAC4QBAQJ/IwBBEGsiAiQAQQFBIBBOIgEEQCAAKAIAIgMEQCABIAMQZDYCAAsgACgCBCIDBEAgASADEGQ2AgQLIAEgACgCGEH/AHE2AhggASAAKwMQOQMQIAEgACgCCDYCCCACQRBqJAAgAQ8LIAJBIDYCAEGI9ggoAgBB9ekDIAIQIBoQLwALFAAgACgCABAYIAAoAgQQGCAAEBgLqAECA38CfCABKAIAIQICQAJAAkACQCAAKAIAIgNFBEAgAkUNAQwECyACRQ0CIAMgAhBNIgINAQsgASgCBCECAkAgACgCBCIDRQRAIAINBAwBCyACRQ0CIAMgAhBNIgINAQtBfyECIAAoAhhB/wBxIgMgASgCGEH/AHEiBEkNACADIARLDQEgACsDECIFIAErAxAiBmMNACAFIAZkIQILIAIPC0EBDwtBfwsEACMACxAAIwAgAGtBcHEiACQAIAALBgAgACQACwwAIAAQrQoaIAAQGAsGAEG09wALBgBBybMBCwYAQZjiAAscACAAIAEoAgggBRDbAQRAIAEgAiADIAQQ7QYLCzkAIAAgASgCCCAFENsBBEAgASACIAMgBBDtBg8LIAAoAggiACABIAIgAyAEIAUgACgCACgCFBELAAuTAgEGfyAAIAEoAgggBRDbAQRAIAEgAiADIAQQ7QYPCyABLQA1IAAoAgwhBiABQQA6ADUgAS0ANCABQQA6ADQgAEEQaiIJIAEgAiADIAQgBRDqBiABLQA0IgpyIQggAS0ANSILciEHAkAgBkECSQ0AIAkgBkEDdGohCSAAQRhqIQYDQCABLQA2DQECQCAKQQFxBEAgASgCGEEBRg0DIAAtAAhBAnENAQwDCyALQQFxRQ0AIAAtAAhBAXFFDQILIAFBADsBNCAGIAEgAiADIAQgBRDqBiABLQA1IgsgB3JBAXEhByABLQA0IgogCHJBAXEhCCAGQQhqIgYgCUkNAAsLIAEgB0EBcToANSABIAhBAXE6ADQLlAEAIAAgASgCCCAEENsBBEAgASACIAMQ7AYPCwJAIAAgASgCACAEENsBRQ0AAkAgASgCECACRwRAIAIgASgCFEcNAQsgA0EBRw0BIAFBATYCIA8LIAEgAjYCFCABIAM2AiAgASABKAIoQQFqNgIoAkAgASgCJEEBRw0AIAEoAhhBAkcNACABQQE6ADYLIAFBBDYCLAsL+AEAIAAgASgCCCAEENsBBEAgASACIAMQ7AYPCwJAIAAgASgCACAEENsBBEACQCABKAIQIAJHBEAgAiABKAIURw0BCyADQQFHDQIgAUEBNgIgDwsgASADNgIgAkAgASgCLEEERg0AIAFBADsBNCAAKAIIIgAgASACIAJBASAEIAAoAgAoAhQRCwAgAS0ANUEBRgRAIAFBAzYCLCABLQA0RQ0BDAMLIAFBBDYCLAsgASACNgIUIAEgASgCKEEBajYCKCABKAIkQQFHDQEgASgCGEECRw0BIAFBAToANg8LIAAoAggiACABIAIgAyAEIAAoAgAoAhgRCgALC7EEAQN/IAAgASgCCCAEENsBBEAgASACIAMQ7AYPCwJAAkAgACABKAIAIAQQ2wEEQAJAIAEoAhAgAkcEQCACIAEoAhRHDQELIANBAUcNAyABQQE2AiAPCyABIAM2AiAgASgCLEEERg0BIABBEGoiBSAAKAIMQQN0aiEHQQAhAwNAAkACQCABAn8CQCAFIAdPDQAgAUEAOwE0IAUgASACIAJBASAEEOoGIAEtADYNACABLQA1QQFHDQMgAS0ANEEBRgRAIAEoAhhBAUYNA0EBIQNBASEGIAAtAAhBAnFFDQMMBAtBASEDIAAtAAhBAXENA0EDDAELQQNBBCADGws2AiwgBg0FDAQLIAFBAzYCLAwECyAFQQhqIQUMAAsACyAAKAIMIQUgAEEQaiIGIAEgAiADIAQQiAUgBUECSQ0BIAYgBUEDdGohBiAAQRhqIQUCQCAAKAIIIgBBAnFFBEAgASgCJEEBRw0BCwNAIAEtADYNAyAFIAEgAiADIAQQiAUgBUEIaiIFIAZJDQALDAILIABBAXFFBEADQCABLQA2DQMgASgCJEEBRg0DIAUgASACIAMgBBCIBSAFQQhqIgUgBkkNAAwDCwALA0AgAS0ANg0CIAEoAiRBAUYEQCABKAIYQQFGDQMLIAUgASACIAMgBBCIBSAFQQhqIgUgBkkNAAsMAQsgASACNgIUIAEgASgCKEEBajYCKCABKAIkQQFHDQAgASgCGEECRw0AIAFBAToANgsLcAECfyAAIAEoAghBABDbAQRAIAEgAiADEO8GDwsgACgCDCEEIABBEGoiBSABIAIgAxCyCgJAIARBAkkNACAFIARBA3RqIQQgAEEYaiEAA0AgACABIAIgAxCyCiABLQA2DQEgAEEIaiIAIARJDQALCwszACAAIAEoAghBABDbAQRAIAEgAiADEO8GDwsgACgCCCIAIAEgAiADIAAoAgAoAhwRBwALGgAgACABKAIIQQAQ2wEEQCABIAIgAxDvBgsLgwUBBn8jAEFAaiIEJAACf0EBIAAgAUEAENsBDQAaQQAgAUUNABojAEEQayIGJAAgBiABKAIAIgNBCGsoAgAiBTYCDCAGIAEgBWo2AgQgBiADQQRrKAIANgIIIAYoAggiA0Ho6AlBABDbASEFIAYoAgQhBwJAIAUEQCAGKAIMIQEjAEFAaiIDJAAgA0FAayQAQQAgByABGyEDDAELIAMhBSMAQUBqIgMkACABIAdOBEAgA0IANwIcIANCADcCJCADQgA3AiwgA0IANwIUIANBADYCECADQejoCTYCDCADIAU2AgQgA0EANgI8IANCgYCAgICAgIABNwI0IAMgATYCCCAFIANBBGogByAHQQFBACAFKAIAKAIUEQsAIAFBACADKAIcGyEICyADQUBrJAAgCCIDDQAjAEFAaiIDJAAgA0EANgIQIANBuOgJNgIMIAMgATYCCCADQejoCTYCBEEAIQEgA0EUakEAQScQOBogA0EANgI8IANBAToAOyAFIANBBGogB0EBQQAgBSgCACgCGBEKAAJAAkACQCADKAIoDgIAAQILIAMoAhhBACADKAIkQQFGG0EAIAMoAiBBAUYbQQAgAygCLEEBRhshAQwBCyADKAIcQQFHBEAgAygCLA0BIAMoAiBBAUcNASADKAIkQQFHDQELIAMoAhQhAQsgA0FAayQAIAEhAwsgBkEQaiQAQQAgA0UNABogBEEIakEAQTgQOBogBEEBOgA7IARBfzYCECAEIAA2AgwgBCADNgIE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KAIIEPgGIghBf0YNBCAGIAcoAgBrIAhJDQYDQCAIBEAgAi0AACEFIAcgBygCACIJQQFqNgIAIAkgBToAACAIQQFrIQggAkEBaiECDAELCyAEIAQoAgBBBGoiAjYCACACIQgDQCADIAhGBEAgAyEIDAULIAgoAgBFDQQgCEEEaiEIDAALAAsgBCACNgIADAMLIAQoAgALIANHIRAMAwsgBygCACEFDAELC0ECIRALIA9BEGokACAQCwkAIAAQ4QoQGAszACMAQRBrIgAkACAAIAQ2AgwgACADIAJrNgIIIABBDGogAEEIahCvCygCACAAQRBqJAALNAADQCABIAJGRQRAIAQgAyABLAAAIgAgAEEASBs6AAAgBEEBaiEEIAFBAWohAQwBCwsgAQsMACACIAEgAUEASBsLKgADQCABIAJGRQRAIAMgAS0AADoAACADQQFqIQMgAUEBaiEBDAELCyABCw8AIAAgASACQbClCRCgCgseACABQQBOBH9BsKUJKAIAIAFBAnRqKAIABSABC8ALDwAgACABIAJBpJkJEKAKCx4AIAFBAE4Ef0GkmQkoAgAgAUECdGooAgAFIAELwAsJACAAENcKEBgLNQADQCABIAJGRQRAIAQgASgCACIAIAMgAEGAAUkbOgAAIARBAWohBCABQQRqIQEMAQsLIAELDgAgASACIAFBgAFJG8ALKgADQCABIAJGRQRAIAMgASwAADYCACADQQRqIQMgAUEBaiEBDAELCyABCw8AIAAgASACQbClCRCfCgseACABQf8ATQR/QbClCSgCACABQQJ0aigCAAUgAQsLDwAgACABIAJBpJkJEJ8KCx4AIAFB/wBNBH9BpJkJKAIAIAFBAnRqKAIABSABCws6AANAAkAgAiADRg0AIAIoAgAiAEH/AEsNACAAQQJ0QYC0CWooAgAgAXFFDQAgAkEEaiECDAELCyACCzoAA0ACQCACIANGDQAgAigCACIAQf8ATQRAIABBAnRBgLQJaigCACABcQ0BCyACQQRqIQIMAQsLIAILSQEBfwNAIAEgAkZFBEBBACEAIAMgASgCACIEQf8ATQR/IARBAnRBgLQJaigCAAVBAAs2AgAgA0EEaiEDIAFBBGohAQwBCwsgAQslAEEAIQAgAkH/AE0EfyACQQJ0QYC0CWooAgAgAXFBAEcFQQALCwkAIAAQ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AkAgAEH8AWogAEH4AWoQWw0AIAAoArABIAEQJSACakYEQCABECUhAyABIAEQJUEBdBBBIAEgARBVEEEgACADIAFBABBDIgJqNgKwAQsgAEH8AWoiAxCDASAAQQdqIABBBmogAiAAQbABaiAALADPASAALADOASAAQcABaiAAQRBqIABBDGogAEEIaiAAQdABahCIBw0AIAMQlgEaDAELCwJAIABBwAFqECVFDQAgAC0AB0EBRw0AIAAoAgwiAyAAQRBqa0GfAUoNACAAIANBBGo2AgwgAyAAKAIINgIACyAFIAIgACgCsAEgBBCPCzgCACAAQcABaiAAQRBqIAAoAgwgBBCvASAAQfwBaiAAQfgBahBbBEAgBCAEKAIAQQJyNgIACyAAKAL8ASABEDUaIABBwAFqEDUaIABBgAJqJAALjwMBAX8jAEGAAmsiACQAIAAgAjYC+AEgACABNgL8ASADEKgCIQYgAEHEAWogAyAAQfcBahClBCAAQbgBahBUIgEgARBVEEEgACABQQAQQyICNgK0ASAAIABBEGo2AgwgAEEANgIIA0ACQCAAQfwBaiAAQfgBahBbDQAgACgCtAEgARAlIAJqRgRAIAEQJSEDIAEgARAlQQF0EEEgASABEFUQQSAAIAMgAUEAEEMiAmo2ArQBCyAAQfwBaiIDEIMBIAYgAiAAQbQBaiAAQQhqIAAsAPcBIABBxAFqIABBEGogAEEMakHAsQkQ2QMNACADEJYBGgwBCwsCQCAAQcQBahAlRQ0AIAAoAgwiAyAAQRBqa0GfAUoNACAAIANBBGo2AgwgAyAAKAIINgIACyAFIAIgACgCtAEgBCAGEJALNwMAIABBxAFqIABBEGogACgCDCAEEK8BIABB/AFqIABB+AFqEFsEQCAEIAQoAgBBAnI2AgALIAAoAvwBIAEQNRogAEHEAWoQNRogAEGAAmokAAuPAwEBfyMAQYACayIAJAAgACACNgL4ASAAIAE2AvwBIAMQqAIhBiAAQcQBaiADIABB9wFqEKUEIABBuAFqEFQiASABEFUQQSAAIAFBABBDIgI2ArQBIAAgAEEQajYCDCAAQQA2AggDQAJAIABB/AFqIABB+AFqEFsNACAAKAK0ASABECUgAmpGBEAgARAlIQMgASABECVBAXQQQSABIAEQVRBBIAAgAyABQQAQQyICajYC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AjgCQCABQeIlQQBBARA2BEAgASgCECgCCA0BCyACLQCbAUEEcQ0AQZqwBEEAEDdBfyEBDAELAkAgBQRAIAVBgCAQTyIGNgIAIAYNAQtBwf4AQQAQN0F/IQEMAQsgAkKAIDcCLCACIAY2AiggACABEJ8GIQEgAhCHBCABRQRAIAUgAigCKDYCACADIAIoAjA2AggLIAAQlQQLIARBEGokACADKAIMIQACQCABRQRAIAAhBwwBCyAAEBgLIANBEGokACAHCwsAEPYMELwMEJMKCzUAIAFB4iVBAEEBEDYEQCABKAIQKAKUASIABEAgASAAEQEAIAEoAhBBADYClAELIAEQ0wkLCwsAIAAgASACEJQGCwwAIAAQlwYgABCWBgsFABCVBgsHACAAELkBCwsAIAAgASACEJAHCw0AIAAgASACQQIQ4wYLDQAgACABIAJBARDjBgsNACAAIAEgAkEAEOMGCwsAIAAgAUEBEJIBCxwAIAAgACABQQEQjQEgACACQQEQjQFBAEEBEF4LCwAgACABQQEQjQELCwAgACABQQEQjAELCwAgACABQQAQjAELCQAgACABENUCCwkAIAAgARCsAQs2AQF/QQBBAUHC8ABBvdEBELUFGhD2DBC8DBCTCiAAENwNA0BBABDcDSIBBEAgARC5AQwBCwsLRwEBfyMAQRBrIgMkACADQQA7AA0gA0EAOgAPIANBAkEAIAIbIAFyOgAMIAMgAygCDDYCCCAAIANBCGpBABDjASADQRBqJAALsAMCBX8BfiMAQRBrIgMkACADQQA2AgwCfxCVBiEEIwBB4ABrIgEkACABQgA3A1ggAUIANwNQIAFCADcDSAJAAkACf0EAIABFDQAaAkADQCACQQVHBEAgACACQQJ0QbCWBWooAgAQLkUNAiACQQFqIQIMAQsLIAEgADYCAEHu+wQgARA3QQAMAQsgBCACQQJ0aigCQCECIAFCADcDQEEAIQADQCACBEAgAUE4aiACKAIEQToQ0AECQCAABEAgASABKQNANwMoIAEgASkDODcDICABQShqIAFBIGoQ+gYNAQsgASgCOCIARQ0EIAAgASgCPCIAEJACIgVFDQUgASAFNgJcIAFByABqQQQQJiEAIAEoAkggAEECdGogASgCXDYCAAsgASABKQM4IgY3A0AgBqchACACKAIAIQIMAQsLIAFB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iAFqQQAQGUECdGogAygCuAEQzgwEQCADIAMpA7gBNwOAASADIAMpA7ABNwN4IAchAiADKAKwASADQfgAakEAEBlBAnRqIAMoArgBENAMIgsNAUEAIQtBouwDQQAQKkEAIQIDQCACIAMoArgBTw0FIAMgAykDuAE3A1AgAyADKQOwATcDSCADQcgAaiACEBkhBAJAAkACQCADKALAASIFDgICAAELIAMoArABIARBAnRqKAIAEBgMAQsgAygCsAEgBEECdGooAgAgBREBAAsgAkEBaiECDAALAAsCQCAMDQAgA0GYAWogABD9AiAAQQhBCBDqBSECQcTtA0EAECogASsDACINIAK3Ig5mIA4gASsDCCIPZXIEQCADQUBrIA85AwAgAyANOQM4IAMgAjYCMEHj8AQgA0EwahCAAQwBCyADKwOYASIOIA1lIAMrA6ABIhAgD2VyRQ0AIAMgDzkDKCADIA05AyAgAyAQOQMYIAMgDjkDEEGV8QQgA0EQahCAAQtBACECA0AgAiADKAK4AU8NBCADIAMpA7gBNwMIIAMgAykDsAE3AwAgAyACEBkhBAJAAkACQCADKALAASIFDgICAAELIAMoArABIARBAnRqKAIAEBgMAQsgAygCsAEgBEECdGooAgAgBREBAAsgAkEBaiECDAALAAsDQCACRQRAQQAhAgNAIAIgAygCuAFPDQYgAyADKQO4ATcDYCADIAMpA7ABNwNYIANB2ABqIAIQGSEEAkACQAJAIAMoAsABIgUOAgIAAQsgAygCsAEgBEECdGooAgAQGAwBCyADKAKwASAEQQJ0aigCACAFEQEACyACQQFqIQIMAAsACyACKAIQIANBmAFqIAIgC0EAEMUMIAMpA5gBNwOQASADKAK4AUEATgRAIANBsAFqQQQQjAIgAyADKQO4ATcDcCADIAMpA7ABNwNoIAIgAygCsAEgA0HoAGpBABAZQQJ0aiADKAK4AUEAEMQMIAIoAhAoArABIQIMAQsLQYnNAUGDugFBggJBzDAQAAALQYnNAUGDugFB4QFBzDAQAAALIAAgChAdIQoMBQtBASEMCyADQbABaiICQQQQMSACEDQLIAAgBxAwIQcMAAsACwsgCwRAIAsQzwwLIANB0AFqJAAgDAtbAQJ/IAAQHCEBA0AgAQRAIAAgARAsIQIDQCACBEAgAhDAAiAA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AAAAUkCjoDkDMCAEIAUrAzhEAAAAAAAAUkCjIAOhOQM4CyAAIAQ2AiQgACAGKAIMIgE2AiAgBCABIAAgAEEQahDnDEEACyAGQRBqJAALEQAgACABQeD+CkHc/goQ5QYLLQECfUF/IAIgACgCAEECdGoqAgAiAyACIAEoAgBBAnRqKgIAIgReIAMgBF0bCxIAIABBNGoQ9QMgAEEoahD1AwsJACAAEJINEBgLGQECfiAAKQMIIgIgASkDCCIDViACIANUawsdACAAKAIAQQR2IgAgASgCAEEEdiIBSyAAIAFJawtEAgF/AnwgACgCBCgCBCABKAIEKAIERgRAIAAoAgBFIAEoAgBBAEdxDwsgACsDECIDIAErAxAiBGQEf0EABSADIARjCwsJACAAEKENEBgLCQAgABDsBxAYC4kIAgl/AnwjAEGgAWsiAyQAIAAQog0gA0EANgKcASAAQQRqIQcgAEEkaiEEAkACQAJAA0AgBCgCACECRP///////+9/IQogBCgCBCIFIQEDfCACIAVGBHwgCkRIr7ya8td6vmNFIAEgBUZyRQRAIAEgBCgCBEEEaygCADYCACAEIAQoAgRBBGs2AgQLIAoFIAogAigCACIGELUCIgtkBEAgAyAGNgKcASALIQogAiEBCyACQQRqIQIMAQsLREivvJry13q+YwRAIAMoApwBIgItABxBAUYNAiADIAIoAgAoAiAiATYCBCADIAIoAgQiBigCICIFNgKYASABIAVHBEAgASAFIAIQrw0MAgsgCEGRzgBODQMgAigCACEJIwBBEGsiBSQAIAEgASgCACgCAEEAEOAFIAUgASAGIAlBAEEAQQAQ8AcgBSgCCCEGIAVBEGokACABIANBBGoiBSADQZgBaiAGEO8HIAFBAToAKCADIAY2AhAgBCADQRBqIgEQwAEgAygCBCADKAKYASACEK8NIAEgByAFEPYDIAhBAWohCAwBCwsgBxDeBUEAIQEDQCABIAAoAhxPDQMgAUECdCABQQFqIQEgACgCGGooAgAiBBC1AkRIr7ya8td6vmNFDQALIANBEGoiAUHIlAk2AjggAUG0lAk2AgAgAUHUlAkoAgAiADYCACABIABBDGsoAgBqQdiUCSgCADYCACABIAEoAgBBDGsoAgBqIgJBADYCFCACIAFBBGoiADYCGCACQQA2AgwgAkKC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ACxBAXEEQCACQQFxRQ0CIAErABAiESADKwAQIhJjDQIgESASZA0BIAErABgiESADKwAYIhJjDQIgESASZCECCyACDQIgAS0AVCECIAMtAFRBAXEEQCACQQFxRQ0CIAErADgiESADKwA4IhJjDQIgESASZA0BIAErAEAiESADKwBAIhJjDQIgESASZCECCyACDQIgBygCECgCpAFBwAFxIgEgACgCECgCpAFBwAFxIgJJDQEgASACSw0AQX8hAiAHKAIAQQR2IgEgACgCAEEEdiIASQ0CIAAgAUkhAgwCC0EBIQIMAQtBfyECCyAFQbAEaiQAIAILQAICfAF/IAArAwAiAiABKwMAIgNkBEAgACsDCCABKwMIZUUPCyACIANjBH9BAEF/IAArAwggASsDCGYbBUEACwv0AgEJfyMAQRBrIgYkACAAKAIwIQEjAEEQayIDJAADQAJAQQAhByACIAEoAgBPDQADQCACQQV0IgUgASgCBGoiCEEIaiEEIAgoABAgB00EQCAEQQQQMSABKAIEIAVqQQhqEDQgAkEBaiECDAMFIAMgBCkCCDcDCCADIAQpAgA3AwAgAyAHEBkhBAJAAkACQCABKAIEIAVqIgUoAhgiCA4CAgABCyAFKAIIIARBAnRqKAIAEBgMAQsgBSgCCCAEQQJ0aigCACAIEQEACyAHQQFqIQcMAQsACwALCyABKAIEEBggARAYIANBEGokACAAQRhqIQEDQCAAKAAgIAlLBEAgBiABKQIINwMIIAYgASkCADcDACAGIAkQGSECAkACQAJAIAAoAigiAw4CAgABCyABKAIAIAJBAnRqKAIAEBgMAQsgASgCACACQQJ0aigCACADEQEACyAJQQFqIQkMAQsLIAFBBBAxIAEQNCAAEBggBkEQaiQACxsBAnxBfyAAKwMAIgIgASsDACIDZCACIANjGwsPACAAKAIQEJkBGiAAEBgLIAECfEEBQX9BACAAKwMAIgIgASsDACIDYxsgAiADZBsLWgIBfAF/QX8gACsDCCABKwMIoSICREivvJry13o+ZCACREivvJry13q+YxsiAwR/IAMFQX8gACsDACABKwMAoSICREivvJry13o+ZCACREivvJry13q+YxsLC1oCAXwBf0F/IAArAwAgASsDAKEiAkRIr7ya8td6PmQgAkRIr7ya8td6vmMbIgMEfyADBUF/IAArAwggASsDCKEiAkRIr7ya8td6PmQgAkRIr7ya8td6vmMbCwuTAQEFfyMAQRBrIgIkACAAQQRqIQEDQCADIAAoAgxPRQRAIAIgASkCCDcDCCACIAEpAgA3AwAgAiADEBkhBAJAAkACQCAAKAIUIgUOAgIAAQsgASgCACAEQQJ0aigCABAYDAELIAEoAgAgBEECdGooAgAgBREBAAsgA0EBaiEDDAELCyABQQQQMSABEDQgAkEQaiQACyUAIAAoAgAoAhAoAvgBIgAgASgCACgCECgC+AEiAUogACABSGsLEgAgAUHatgEgAigCCEEBEDYaCxIAIAFB6bYBIAIoAgRBARA2GgsSACABQcq2ASACKAIAQQEQNhoLGQBBfyAAKAIAIgAgASgCACIBSyAAIAFJGwslACAAKAIAKAIQKAL0ASIAIAEoAgAoAhAoAvQBIgFKIAAgAUhrCyUAIAEoAgAoAhAoAvQBIgEgACgCACgCECgC9AEiAEogACABSmsLIwAgACgCECgCAEEEdiIAIAEoAhAoAgBBBHYiAUsgACABSWsLlQEBBH8jAEEQayIBJAAgAARAA0AgACgACCACTQRAIABBBBAxIAAQNAUgASAAKQIINwMIIAEgACkCADcDACABIAIQGSEDAkACQAJAIAAoAhAiBA4CAgABCyAAKAIAIANBAnRqKAIAEBgMAQsgACgCACADQQJ0aigCACAEEQEACyACQQFqIQIMAQsLCyAAEBggAUEQaiQACxQAIAAoAhBBHGogAEcEQCAAEBgLC44BAgF/BHwjAEEwayIDJAAgAyABKAIIIgQ2AiQgAyAENgIgIABBivwEIANBIGoQHiACKwMAIQUgAisDECEGIAIrAwghByACKwMYIQggAyABKAIINgIQIAMgCCAHoEQAAAAAAADgP6I5AwggAyAGIAWgRAAAAAAAAOA/ojkDACAAQbH5BCADEB4gA0EwaiQACwIAC90DAgF/AnwjAEGgAWsiBCQAAkACQCAABEAgAUUNASABKAIIRQ0CIAEoAkQEQCAEIAIpAwA3A2AgBCACKQMINwNoIAQgAikDGDcDiAEgBCACKQMQNwOAASAEIAQrA2giBTkDmAEgBCAEKwNgIgY5A3AgBCAEKwOAATkDkAEgBCAEKwOIATkDeCADBEBBACECIABBpssDQQAQHgNA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AzggBEIANwMwIABBh9MEIARBMGoQHiAEQfT8CigCAEECazYCICAEQgA3AxAgBEIANwMYIABBptQEIARBEGoQHiAEIAM2AgAgAEHAzgMgBBAeIAMQGAUgASAFQQR0aiIGKwMAIQggBisDCCEJIAArA/gDIQogACsDgAQhCyAEQgA3A4ABIAQgCSALoDkDeCAEIAggCqA5A3AgAEGZ3wEgBEHwAGoQHiAFQQFqIQUMAQsLCwUgASAFQQR0aiIHKwMAIQggBysDCCEJIAArA/gDIQogACsDgAQhCyAEIAAoAhArA6ABOQPoAiAEQgA3A+ACIAQgCSALoDkD2AIgBCAIIAqgOQPQAiAAQZCmBCAEQdACahAeIAVBAWohBQwBCwsgBEGgA2okAAupBQICfwl8IwBB8AJrIgMkACAAQe2uBBAbGkH0/ApB8PwKKAIAQQZrNgIAIAArA4AEIQwgACsD+AMhDSAAKAIQIgQrA6ABIQUgACsD6AMhBiABKwMAIQcgASsDECEIIAArA/ADIQogASsDCCELIAErAxghCSADQbgCaiIBIARBEGpBKBAfGiABQwAAAAAQvAMhASADQgA3A+gCIANCgICAgICAgPg/NwOgAiADQgA3A+ACIAMgBSAGIAggB6GiIgUgCiAJIAuhoiIIoCIJo0QAAAAAAADgP6JEAAAAAAAAFECiOQOoAiADQeACaiIEQfylBCADQaACahB0IAMgCDkDkAIgAyAJRAAAAAAAANA/ojkDiAIgAyAFOQOAAiAEQavTBCADQYACahB0IAMgACgC6AKyuzkD8AEgA0IANwPoASADQoCAgICAgKCrwAA3A+ABIARBh9MEIANB4AFqEHQgA0H0/AooAgA2AtABIAMgBiAHIA2goiIGOQPAASADIAogCyAMoKIiBzkDyAEgBEGm1AQgA0HAAWoQdCADIAE2ArABIARBwM4DIANBsAFqEHQgACAEEP8FEBsaIAEQGCACBEAgA0GIAWoiASAAKAIQQThqQSgQHxogAUMAAAAAELwDIQEgA0IANwOAASADQgA3A3ggA0IANwNwIABBs90EIANB8ABqEB4gA0KAgICAgICA+D83A2AgAyAIOQNYIAMgBTkDUCAAQavTBCADQdAAahAeIANBQGsgACgC6AKyuzkDACADQgA3AzggA0IANwMwIABBh9MEIANBMGoQHiADQfT8CigCADYCICADIAY5AxAgAyAHOQMYIABBptQEIANBEGoQHiADIAE2AgAgAEHAzgMgAxAeIAEQGAsgA0HgAmoQXCADQfACaiQAC+gDAgN/BnwjAEHQAWsiAyQAIAIoAgAhBCACKAIEIgUrAxAhBiADIAUoAgA2ArABIAMgBjkDqAEgAyAENgKgASAAQY/+AyADQaABahAeQfT8CkHw/AooAgBBCWs2AgACfCABKwMAIgYgAi0AMCIEQewARg0AGiAEQfIARgRAIAYgAisDIKEMAQsgBiACKwMgRAAAAAAAAOC/oqALIQYgACsD8AMhByAAKwOABCEIIAErAwghCSAAKwPoAyEKIAArA/gDIQsgA0H4AGoiASAAKAIQQRBqQSgQHxogAUMAAAAAELwDIQEgA0IANwPIASADQgA3A8ABIAIoAgQoAgAhBCACKAIAIQUgA0IANwNwIANCgICAgICAgOg/NwNoIAMgBTYCZCADIAQ2AmAgA0HAAWoiBEGX3AMgA0HgAGoQdCADIAIoAgQrAxAgACsD6AOiOQNQIARB7KUEIANB0ABqEHQgA0FAayAAKALoArK7OQMAIANCADcDOCADQgA3AzAgBEGH0wQgA0EwahB0IANB9PwKKAIANgIgIAMgCiAGIAugojkDECADIAcgCSAIoKI5AxggBEGm1AQgA0EQahB0IAMgATYCACAEQcDOAyADEHQgACAEEP8FEBsaIAQQXCABEBggA0HQAWokAAscACAAQYmyBBAbGkHw/ApB8PwKKAIAQQVqNgIACxwAIABB97EEEBsaQfD8CkHw/AooAgBBBWs2AgALCwAgAEGitAQQGxoLLQEBfyMAQRBrIgEkACABIAAoAhAoAggQITYCACAAQZyBBCABEB4gAUEQaiQACwsAIABB84cEEBsaCxwAIABB3ocEEBsaQfD8CkHw/AooAgBBAms2AgALCwAgAEHYswQQGxoLCwAgAEHGswQQGxoLpgICB38BfiMAQTBrIgQkACAEQQxqQQBBJBA4GiAEIAE2AhwgACABEG4hAgNAIAIEQCAAIAIgARByIAAgAkEAEM4IIQIMAQsLIAEpAwghCkEAIQFBACEDAkAgACgCMCICBEAgCqchBSACKAIAIgYEQEEBIAIoAgh0IQMLIANBAWshBwNAIAEgA0YNAgJAAkAgBiABIAVq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b3BlbkF0dHJpYnV0ZUVudGl0aWVzID09IG9wZW5FbnRpdHkAaW5maW5pdHkAbGlzdC0+c2l6ZSA8IGxpc3QtPmNhcGFjaXR5AHJldC5zaXplIDwgcmV0LmNhcGFjaXR5AGZhbnRhc3kAL3N2Zy9pdm9yeQBvdXQgb2YgbWVtb3J5AEZlYnJ1YXJ5AEphbnVhcnkAZ3ZwbHVnaW5fZG90X2xheW91dF9MVFhfbGlicmFyeQBndnBsdWdpbl9uZWF0b19sYXlvdXRfTFRYX2xpYnJhcnkAZ3ZwbHVnaW5fY29yZV9MVFhfbGlicmFyeQBnYXRoZXJfdGltZV9lbnRyb3B5AGNvcHkAYWxiYW55AEp1bHkAU3BhcnNlTWF0cml4X211bHRpcGx5AGVxdWFsbHkAYXNzZW1ibHkAc3VtbWVyc2t5AHNoeQBzYXRpc2Z5AGJlYXV0aWZ5AG5vanVzdGlmeQBDbGFzc2lmeQAvc3ZnL2xpZ2h0Z3JleQAvc3ZnL2RpbWdyZXkAL3N2Zy9kYXJrZ3JleQAvc3ZnL2xpZ2h0c2xhdGVncmV5AC9zdmcvZGFya3NsYXRlZ3JleQAvc3ZnL3NsYXRlZ3JleQB3ZWJncmV5AHgxMWdyZXkAL3N2Zy9ncmV5AG1vdmUgdG8gZnJvbnQgbG9jayBpbmNvbnNpc3RlbmN5AGV4dHJhY3RfYWRqYWNlbmN5AG1lcmdlX29uZXdheQBhcnJheQBhbGxvY0FycmF5AC9zdmcvbGlnaHRncmF5AC9zdmcvZGltZ3JheQAvc3ZnL2RhcmtncmF5AC9zdmcvbGlnaHRzbGF0ZWdyYXkAL3N2Zy9kYXJrc2xhdGVncmF5AC9zdmcvc2xhdGVncmF5AHdlYmdyYXkAeDExZ3JheQAvc3ZnL2dyYXkAVGh1cnNkYXkAVHVlc2RheQBXZWRuZXNkYXkAU2F0dXJkYXkAU3VuZGF5AE1vbmRheQBGcmlkYXkATWF5AC4uLy4uL2xpYi9jZ3JhcGgvZ3JhbW1hci55ACVtLyVkLyV5AHBvcnRob3l4AHBvcnRob195eAB4eHgAcHgAYm94AHZpZXdCb3gAY2hrQm91bmRCb3gAL01lZGlhQm94AGdldF9lZGdlX2xhYmVsX21hdHJpeABpZGVhbF9kaXN0YW5jZV9tYXRyaXgAbXVzdCBub3QgdW5kZWNsYXJlIHByZWZpeAB1bmJvdW5kIHByZWZpeABodG1sbGV4AG1heAAjJTAyeCUwMnglMDJ4ACMlMnglMnglMnglMngAIyUxeCUxeCUxeAAtKyAgIDBYMHgALTBYKzBYIDBYLTB4KzB4IDB4AHJhcnJvdwBsYXJyb3cASGVsdmV0aWNhLU5hcnJvdwBhcnJvd19sZW5ndGhfY3JvdwAvc3ZnL3Nub3cAc3ByaW5nX2VsZWN0cmljYWxfZW1iZWRkaW5nX3Nsb3cAL3N2Zy9saWdodHllbGxvdwAvc3ZnL2dyZWVueWVsbG93AC9zdmcvbGlnaHRnb2xkZW5yb2R5ZWxsb3cAL3N2Zy95ZWxsb3cAZmF0YWwgZXJyb3IgLSBzY2FubmVyIGlucHV0IGJ1ZmZlciBvdmVyZmxvdwBmbGV4IHNjYW5uZXIgcHVzaC1iYWNrIG92ZXJmbG93AGNvdXJpZXJuZXcAU3ByaW5nU21vb3RoZXJfbmV3AFRyaWFuZ2xlU21vb3RoZXJfbmV3AGRpYWdfcHJlY29uX25ldwBRdWFkVHJlZV9uZXcAU3RyZXNzTWFqb3JpemF0aW9uU21vb3RoZXIyX25ldwBuICYmIG5ldwBza2V3AHN0cnZpZXcAL3N2Zy9ob25leWRldwAgLWFuY2hvciB3AHNvcnR2AHBvdjpwb3YATm92AGludgBlcXVpdgBwaXYAbm9uYW1lLmd2AEdEX3JhbmsoZylbcl0uYXYgPT0gR0RfcmFuayhnKVtyXS52AGNjJXNfJXp1AGNjJXMrJXp1AC9zdmcvcGVydQBudQBtdQAlYyVsbHUAVGh1AHRhdQBUYXUATnUATXUAX3BvcnRfJXNfKCVkKV8oJWQpXyV1AE51bWJlciBvZiBpdGVyYXRpb25zID0gJXUATnVtYmVyIG9mIGluY3JlYXNlcyA9ICV1AHBsYWludGV4dABzdHJlc3N3dABpbnB1dAB0ZXh0bGF5b3V0AGRvdF9sYXlvdXQAbmVhdG9fbGF5b3V0AGluaXRMYXlvdXQAY2x1c3QAbWFwQ2x1c3QAbGFiZWxqdXN0AHNjQWRqdXN0AEF1Z3VzdABlZGdlc2ZpcnN0AG5vZGVzZmlyc3QAbWF4aW1hbF9pbmRlcGVuZGVudF9lZGdlX3NldF9oZWF2ZXN0X2VkZ2VfcGVybm9kZV9zdXBlcm5vZGVzX2ZpcnN0AGV4aXN0AHJlYWxpZ25Ob2RlbGlzdABhcHBlbmROb2RlbGlzdABzbG90X2Zyb21fY29uc3RfbGlzdABzbG90X2Zyb21fbGlzdABkZWZhdWx0ZGlzdABtaW5kaXN0AHBvd2VyX2Rpc3QAZ3JhcGhfZGlzdABhdmdfZGlzdABnZXRFZGdlTGlzdABpcXVlc3QAbG93YXN0AHNwcmluZ19lbGVjdHJpY2FsX2VtYmVkZGluZ19mYXN0AGd2X3NvcnQAdmlld3BvcnQAdGFpbHBvcnQAdW5leHBlY3RlZCBwYXJzZXIgc3RhdGUgLSBwbGVhc2Ugc2VuZCBhIGJ1ZyByZXBvcnQAaGVhZHBvcnQAaHRtbF9wb3J0AGluc2VydABSVHJlZUluc2VydABmaW5kU1ZlcnQAc3RhcnQAcGFydABlc3RpbWF0ZV90ZXh0X3dpZHRoXzFwdABxdW90AH9yb290AG5vdABtYWtlX3ZuX3Nsb3QAZW1pdF94ZG90AHhkb3Q6eGRvdABlcHM6eGRvdABzdmc6eGRvdABqcGc6eGRvdABwbmc6eGRvdABqcGVnOnhkb3QAZ2lmOnhkb3QAanBlOnhkb3QAeGRvdDEuNDp4ZG90AHhkb3QxLjI6eGRvdABzZG90AG1pZGRvdABndjpkb3QAcGxhaW4tZXh0OmRvdABkb3Q6ZG90AGVwczpkb3QAY2Fub246ZG90AHBsYWluOmRvdABzdmc6ZG90AGpwZzpkb3QAcG5nOmRvdABqcGVnOmRvdABnaWY6ZG90AGpwZTpkb3QAf2JvdABkb0RvdABzcGFuLT5mb250AHZhZ3hicHJpbnQAZW5kcG9pbnQAeGRvdF9wb2ludABkZWNpZGVfcG9pbnQAVW5zYXRpc2ZpZWQgY29uc3RyYWludAB0cmFuc3BhcmVudABjb21wb25lbnQAaW52YWxpZCBhcmd1bWVudABjb21tZW50AGp1bmsgYWZ0ZXIgZG9jdW1lbnQgZWxlbWVudABjZW50AGkgPT0gZWNudABhcmlhbG10AGdldF9oYXNoX3NlY3JldF9zYWx0AGNpcmN1aXQAcG9seV9pbml0AE11bHRpbGV2ZWxfaW5pdABuc2xpbWl0AG1jbGltaXQAUG9ydHJhaXQAbGlnaHQAdmlydHVhbF93ZWlnaHQAbGhlaWdodABLUF9SaWdodABCb29rbWFuLUxpZ2h0AGd0AEtQX0xlZnQAY2hhcnNldABpbnNldABiaXRhcnJheV9yZXNldABndl9hcmVuYV9yZXNldABzdWJzZXQAYml0YXJyYXlfc2V0AG1hdHJpeF9zZXQAc2NhcmxldAAvc3ZnL2Rhcmt2aW9sZXQAL3N2Zy9ibHVldmlvbGV0AC9zdmcvdmlvbGV0AFRyZWJ1Y2hldABhZ3hnZXQAdGFpbHRhcmdldABsYWJlbHRhcmdldABlZGdldGFyZ2V0AGhlYWR0YXJnZXQAYml0YXJyYXlfZ2V0AHN0eWxlc2hlZXQAc3RyaWN0AGFnY29weWRpY3QAYWdtYWtlZGF0YWRpY3QAcmVjLT5kaWN0ID09IGRhdGFkaWN0AHdyaXRlX2RpY3QAaGludGVyc2VjdABndmJpc2VjdABlbmNvZGluZyBzcGVjaWZpZWQgaW4gWE1MIGRlY2xhcmF0aW9uIGlzIGluY29ycmVjdABhc3BlY3QAbGF5ZXJzZWxlY3QAS1BfU3VidHJhY3QAUXVhZFRyZWVfcmVwdWxzaXZlX2ZvcmNlX2ludGVyYWN0AGNvbXBhY3QAT2N0AHJlcXVlc3RlZCBmZWF0dXJlIHJlcXVpcmVzIFhNTF9EVEQgc3VwcG9ydCBpbiBFeHBhdABsYWJlbGZsb2F0AGxhYmVsX2Zsb2F0AFNwYXJzZU1hdHJpeF9mcm9tX2Nvb3JkaW5hdGVfZm9ybWF0AC9zdmcvd2hlYXQAbW9uY2hhaW5zX2F0AFNhdABBZ3JhcGhpbmZvX3QAQWdlZGdlaW5mb190AEFnbm9kZWluZm9fdABcdAByb3cgPCBtZS0+bnJvd3MAbWludXMAb3BsdXMAcmFkaXVzAGhlYXJ0cwBzYW1wbGVwb2ludHMAZGlyZWRnZWNvbnN0cmFpbnRzAGxldmVsIGFzc2lnbm1lbnQgY29uc3RyYWludHMAeHkgcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAeXggcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAeHkgb3J0aG9nb25hbCBjb25zdHJhaW50cwB5eCBvcnRob2dvbmFsIGNvbnN0cmFpbnRzAGxpbmUgc2VnbWVudHMAc2V0X2NlbGxfaGVpZ2h0cwByZWN0cwBhY2NvdW50aW5nUmVwb3J0U3RhdHMAZW50aXR5VHJhY2tpbmdSZXBvcnRTdGF0cwBaYXBmRGluZ2JhdHMAcmVtaW5jcm9zcwBjb21wcmVzcwBndnVzZXJzaGFwZV9maWxlX2FjY2VzcwBicmFzcwBjbGFzcwBhcHBseWF0dHJzAGFnbWFrZWF0dHJzAGJpbmRhdHRycwBwYXJzZV9sYXllcnMAbWtDbHVzdGVycwByb3VuZF9jb3JuZXJzAG1ha2VfYmFycmllcnMAY2RhdGEubnRvcGxldmVsID09IGFnbm5vZGVzKGcpIC0gY2RhdGEubnZhcnMAY2Fubm90IHJlYWxsb2Mgb3BzAGNhbm5vdCByZWFsbG9jIHBubHBzAGVwcwBjb3JlX2xvYWRpbWFnZV9wcwBlcHM6cHMAcHMyOnBzAChsaWIpOnBzAGd2X3RyaW1femVyb3MAYWd4YnVmX3RyaW1femVyb3MAdGV4Z3lyZWhlcm9zAGltYWdlcG9zAHRpbm9zAHNldEVkZ2VMYWJlbFBvcwBTZXR0aW5nIGluaXRpYWwgcG9zaXRpb25zAHhsaW50ZXJzZWN0aW9ucwBjb2x1bW5zAGRlamF2dXNhbnMAbmltYnVzc2FucwBsaWJlcmF0aW9uc2FucwBmcmVlc2FucwBzZXRDaGlsZFN1YnRyZWVTcGFucwBPcGVuU2FucwBvZmZzZXQgPT0gbl90ZXJtcwBkaXRlbXMAZGlhbXMAY29sIDwgbWUtPm5jb2xzAGNhbm5vdCByZWFsbG9jIGRxLnBubHMAY2Fubm90IHJlYWxsb2MgcG5scwBsZXZlbHMAZm9yY2VsYWJlbHMAZGlhZ29uYWxzAG1lcmdlX3JhbmtzAHNwbGl0QmxvY2tzAGludmlzAGNhbm5vdCByZWFsbG9jIHRyaXMAc2V0X2NlbGxfd2lkdGhzAENhbGN1bGF0aW5nIHNob3J0ZXN0IHBhdGhzAHllcwBzaG93Ym94ZXMAYmVhdXRpZnlfbGVhdmVzAGF0dGFjaF9lZGdlX2xhYmVsX2Nvb3JkaW5hdGVzAHBvbHlsaW5lcwBzcGxpbmVzAG9ydGhvZ29uYWwgbGluZXMAdGV4Z3lyZXRlcm1lcwBvdGltZXMAVGltZXMAZm9udG5hbWVzAHByZWZpeCBtdXN0IG5vdCBiZSBib3VuZCB0byBvbmUgb2YgdGhlIHJlc2VydmVkIG5hbWVzcGFjZSBuYW1lcwBTcGFyc2VNYXRyaXhfc3VtX3JlcGVhdF9lbnRyaWVzAHBlcmlwaGVyaWVzAEdldEJyYW5jaGVzAGYgPCBncmFwaFtqXS5uZWRnZXMAbWlubWF4X2VkZ2VzAGV4Y2hhbmdlX3RyZWVfZWRnZXMAbWFrZVN0cmFpZ2h0RWRnZXMAdW5kb0NsdXN0ZXJFZGdlcwBjb21wb3VuZEVkZ2VzAG1lcmdlX3RyZWVzAF9fY2x1c3Rlcm5vZGVzAGFnbm5vZGVzAE5EX2lkKG5wKSA9PSBuX25vZGVzAExvYWROb2RlcwBzaWRlcwBzcGFkZXMAdmVydGljZXMAY29vcmRzAHNldGJvdW5kcwBtZHMAY2RzAG1ha2VTZWxmQXJjcwBlbWl0X2VkZ2VfZ3JhcGhpY3MAY2x1YnMAY29uc29sYXMAJWxmJTJzAApTdHJpbmcgc3RhcnRpbmc6PCUuODBzAApTdHJpbmcgc3RhcnRpbmc6IiUuODBzACAlLipzACVzJXMAZXhwYXQ6IEFjY291bnRpbmcoJXApOiBEaXJlY3QgJTEwbGx1LCBpbmRpcmVjdCAlMTBsbHUsIGFtcGxpZmljYXRpb24gJTguMmYlcwAlLipzJWMlcwAgJXM6JXMAX18lZDolcwAvJXMvJXMAJXMtJXMALCVzACBmb250LWZhbWlseT0iJXMAIiBzdHJva2UtZGFzaGFycmF5PSIlcwAiIGNsYXNzPSIlcwBwb2x5ICVzACgoJWYsJWYpLCglZiwlZikpICVzICVzAGNvbG9yICVzAHJvb3QgPSAlcwAgVGl0bGU6ICVzACJzdHJpY3QiOiAlcwBjb3VyAHV0cgBhcHBlbmRhdHRyAGFkZGF0dHIAYmVnaW5zdHIAZnN0cgBzdHJ2aWV3X3N0cgBwb3ZfY29sb3JfYXNfc3RyAHZwc2MhPW51bGxwdHIAYmVuZFRvU3RyAHVhcnIAY3JhcnIAbGFycgBoYXJyAGRhcnIAdUFycgByQXJyAGxBcnIAaEFycgBkQXJyAEFwcgBTcGFyc2VNYXRyaXhfbXVsdGlwbHlfdmVjdG9yAHRlcm1pbmF0b3IAaW5zdWxhdG9yAGludGVybmFsRW50aXR5UHJvY2Vzc29yAHRleGd5cmVjdXJzb3IAc3ludGF4IGVycm9yAG1vbmV5X2dldCBlcnJvcgBFcnJvcgByZmxvb3IAbGZsb29yAGxhYmVsZm9udGNvbG9yAHBlbmNvbG9yAGZpbGxjb2xvcgBiZ2NvbG9yAHJvdyBtYWpvcgBjb2x1bW4gbWFqb3IAbmVpZ2hib3IAc3R5bGVfb3IAbXIAcmFua2RpcgBwYWdlZGlyAGxheWVyAHVwcGVyID49IGxvd2VyAE5vZGVDb3ZlcgAvc3ZnL3NpbHZlcgBjbHVzdGVyAGV4cGFuZENsdXN0ZXIAcnByb21vdGVyAGxwcm9tb3RlcgBjZW50ZXIAbWF4aXRlcgBwYXJ0aWFsIGNoYXJhY3RlcgAhIHJvb3RQYXJzZXItPm1fcGFyZW50UGFyc2VyAGRrZ3JlZW5jb3BwZXIAY29vbGNvcHBlcgBndl9zb3J0X2NvbXBhcl93cmFwcGVyAHRhcGVyAG92ZXJsYXBfYmV6aWVyAGZpZ19iZXppZXIAY291cmllcgBDb3VyaWVyAGhpZXIAZGFnZ2VyAERhZ2dlcgBvdXRwdXRvcmRlcgBwb3N0b3JkZXIAZmxhdF9yZW9yZGVyAGNlbGxib3JkZXIAZml4TGFiZWxPcmRlcgBjeWxpbmRlcgAvc3ZnL2xhdmVuZGVyAHJlbmRlcgBmb2xkZXIAY2x1c3Rlcl9sZWFkZXIATkRfVUZfc2l6ZShuKSA8PSAxIHx8IG4gPT0gbGVhZGVyAE9jdG9iZXIAcmVmZXJlbmNlIHRvIGludmFsaWQgY2hhcmFjdGVyIG51bWJlcgBOb3ZlbWJlcgBTZXB0ZW1iZXIARGVjZW1iZXIAbWFjcgBicgBzdGFyAGZlbGRzcGFyAHJlZ3VsYXIAaW9zX2Jhc2U6OmNsZWFyAGJydmJhcgBNYXIAXHIATkRfcmFuayh2KSA9PSByAHN0cmVxAHN0cnZpZXdfZXEAc3Rydmlld19zdHJfZXEAc3Rydmlld19jYXNlX3N0cl9lcQBzdHJ2aWV3X2Nhc2VfZXEAdnAAJSVCZWdpblByb2xvZwovRG90RGljdCAyMDAgZGljdCBkZWYKRG90RGljdCBiZWdpbgoKL3NldHVwTGF0aW4xIHsKbWFyawovRW5jb2RpbmdWZWN0b3IgMjU2IGFycmF5IGRlZgogRW5jb2RpbmdWZWN0b3IgMAoKSVNPTGF0aW4xRW5jb2RpbmcgMCAyNTUgZ2V0aW50ZXJ2YWwgcHV0aW50ZXJ2YWwKRW5jb2RpbmdWZWN0b3IgNDUgL2h5cGhlbiBwdXQKCiUgU2V0IHVwIElTTyBMYXRpbiAxIGNoYXJhY3RlciBlbmNvZGluZwovc3Rhcm5ldElTTyB7CiAgICAgICAgZHVwIGR1cCBmaW5kZm9udCBkdXAgbGVuZ3RoIGRpY3QgYmVnaW4KICAgICAgICB7IDEgaW5kZXggL0ZJRCBuZSB7IGRlZiB9eyBwb3AgcG9wIH0gaWZlbHNlCiAgICAgICAgfSBmb3JhbGwKICAgICAgICAvRW5jb2RpbmcgRW5jb2RpbmdWZWN0b3IgZGVmCiAgICAgICAgY3VycmVudGRpY3QgZW5kIGRlZmluZWZvbnQKfSBkZWYKL1RpbWVzLVJvbWFuIHN0YXJuZXRJU08gZGVmCi9UaW1lcy1JdGFsaWMgc3Rhcm5ldElTTyBkZWYKL1RpbWVzLUJvbGQgc3Rhcm5ldElTTyBkZWYKL1RpbWVzLUJvbGRJdGFsaWMgc3Rhcm5ldElTTyBkZWYKL0hlbHZldGljYSBzdGFybmV0SVNPIGRlZgovSGVsdmV0aWNhLU9ibGlxdWUgc3Rhcm5ldElTTyBkZWYKL0hlbHZldGljYS1Cb2xkIHN0YXJuZXRJU08gZGVmCi9IZWx2ZXRpY2EtQm9sZE9ibGlxdWUgc3Rhcm5ldElTTyBkZWYKL0NvdXJpZXIgc3Rhcm5ldElTTyBkZWYKL0NvdXJpZXItT2JsaXF1ZSBzdGFybmV0SVNPIGRlZgovQ291cmllci1Cb2xkIHN0YXJuZXRJU08gZGVmCi9Db3VyaWVyLUJvbGRPYmxpcXVlIHN0YXJuZXRJU08gZGVmCmNsZWFydG9tYXJrCn0gYmluZCBkZWYKCiUlQmVnaW5SZXNvdXJjZTogcHJvY3NldCBncmFwaHZpeiAwIDAKL2Nvb3JkLWZvbnQtZmFtaWx5IC9UaW1lcy1Sb21hbiBkZWYKL2RlZmF1bHQtZm9udC1mYW1pbHkgL1RpbWVzLVJvbWFuIGRlZgovY29vcmRmb250IGNvb3JkLWZvbnQtZmFtaWx5IGZpbmRmb250IDggc2NhbGVmb250IGRlZgoKL0ludlNjYWxlRmFjdG9yIDEuMCBkZWYKL3NldF9zY2FsZSB7CiAgICAgICBkdXAgMSBleGNoIGRpdiAvSW52U2NhbGVGYWN0b3IgZXhjaCBkZWYKICAgICAgIHNjYWxlCn0gYmluZCBkZWYKCiUgc3R5bGVzCi9zb2xpZCB7IFtdIDAgc2V0ZGFzaCB9IGJpbmQgZGVmCi9kYXNoZWQgeyBbOSBJbnZTY2FsZUZhY3RvciBtdWwgZHVwIF0gMCBzZXRkYXNoIH0gYmluZCBkZWYKL2RvdHRlZCB7IFsxIEludlNjYWxlRmFjdG9yIG11bCA2IEludlNjYWxlRmFjdG9yIG11bF0gMCBzZXRkYXNoIH0gYmluZCBkZWYKL2ludmlzIHsvZmlsbCB7bmV3cGF0aH0gZGVmIC9zdHJva2Uge25ld3BhdGh9IGRlZiAvc2hvdyB7cG9wIG5ld3BhdGh9IGRlZn0gYmluZCBkZWYKL2JvbGQgeyAyIHNldGxpbmV3aWR0aCB9IGJpbmQgZGVmCi9maWxsZWQgeyB9IGJpbmQgZGVmCi91bmZpbGxlZCB7IH0gYmluZCBkZWYKL3JvdW5kZWQgeyB9IGJpbmQgZGVmCi9kaWFnb25hbHMgeyB9IGJpbmQgZGVmCi90YXBlcmVkIHsgfSBiaW5kIGRlZgoKJSBob29rcyBmb3Igc2V0dGluZyBjb2xvciAKL25vZGVjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYKL2VkZ2Vjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYKL2dyYXBoY29sb3IgeyBzZXRoc2Jjb2xvciB9IGJpbmQgZGVmCi9ub3Bjb2xvciB7cG9wIHBvcCBwb3B9IGJpbmQgZGVmCgovYmVnaW5wYWdlIHsJJSBpIGogbnBhZ2VzCgkvbnBhZ2VzIGV4Y2ggZGVmCgkvaiBleGNoIGRlZgoJL2kgZXhjaCBkZWYKCS9zdHIgMTAgc3RyaW5nIGRlZgoJbnBhZ2VzIDEgZ3QgewoJCWdzYXZlCgkJCWNvb3JkZm9udCBzZXRmb250CgkJCTAgMCBtb3ZldG8KCQkJKFwoKSBzaG93IGkgc3RyIGN2cyBzaG93ICgsKSBzaG93IGogc3RyIGN2cyBzaG93IChcKSkgc2hvdwoJCWdyZXN0b3JlCgl9IGlmCn0gYmluZCBkZWYKCi9zZXRfZm9udCB7CglmaW5kZm9udCBleGNoCglzY2FsZWZvbnQgc2V0Zm9udAp9IGRlZgoKJSBkcmF3IHRleHQgZml0dGVkIHRvIGl0cyBleHBlY3RlZCB3aWR0aAovYWxpZ25lZHRleHQgewkJCSUgd2lkdGggdGV4dAoJL3RleHQgZXhjaCBkZWYKCS93aWR0aCBleGNoIGRlZgoJZ3NhdmUKCQl3aWR0aCAwIGd0IHsKCQkJW10gMCBzZXRkYXNoCgkJCXRleHQgc3RyaW5nd2lkdGggcG9wIHdpZHRoIGV4Y2ggc3ViIHRleHQgbGVuZ3RoIGRpdiAwIHRleHQgYXNob3cKCQl9IGlmCglncmVzdG9yZQp9IGRlZgoKL2JveHByaW0gewkJCQklIHhjb3JuZXIgeWNvcm5lciB4c2l6ZSB5c2l6ZQoJCTQgMiByb2xsCgkJbW92ZXRvCgkJMiBjb3B5CgkJZXhjaCAwIHJsaW5ldG8KCQkwIGV4Y2ggcmxpbmV0bwoJCXBvcCBuZWcgMCBybGluZXRvCgkJY2xvc2VwYXRoCn0gYmluZCBkZWYKCi9lbGxpcHNlX3BhdGggewoJL3J5IGV4Y2ggZGVmCgkvcnggZXhjaCBkZWYKCS95IGV4Y2ggZGVmCgkveCBleGNoIGRlZgoJbWF0cml4IGN1cnJlbnRtYXRyaXgKCW5ld3BhdGgKCXggeSB0cmFuc2xhdGUKCXJ4IHJ5IHNjYWxlCgkwIDAgMSAwIDM2MCBhcmMKCXNldG1hdHJpeAp9IGJpbmQgZGVmCgovZW5kcGFnZSB7IHNob3dwYWdlIH0gYmluZCBkZWYKL3Nob3dwYWdlIHsgfSBkZWYKCi9sYXllcmNvbG9yc2VxCglbCSUgbGF5ZXIgY29sb3Igc2VxdWVuY2UgLSBkYXJrZXN0IHRvIGxpZ2h0ZXN0CgkJWzAgMCAwXQoJCVsuMiAuOCAuOF0KCQlbLjQgLjggLjhdCgkJWy42IC44IC44XQoJCVsuOCAuOCAuOF0KCV0KZGVmCgovbGF5ZXJsZW4gbGF5ZXJjb2xvcnNlcSBsZW5ndGggZGVmCgovc2V0bGF5ZXIgey9tYXhsYXllciBleGNoIGRlZiAvY3VybGF5ZXIgZXhjaCBkZWYKCWxheWVyY29sb3JzZXEgY3VybGF5ZXIgMSBzdWIgbGF5ZXJsZW4gbW9kIGdldAoJYWxvYWQgcG9wIHNldGhzYmNvbG9yCgkvbm9kZWNvbG9yIHtub3Bjb2xvcn0gZGVmCgkvZWRnZWNvbG9yIHtub3Bjb2xvcn0gZGVmCgkvZ3JhcGhjb2xvciB7bm9wY29sb3J9IGRlZgp9IGJpbmQgZGVmCgovb25sYXllciB7IGN1cmxheWVyIG5lIHtpbnZpc30gaWYgfSBkZWYKCi9vbmxheWVycyB7CgkvbXl1cHBlciBleGNoIGRlZgoJL215bG93ZXIgZXhjaCBkZWYKCWN1cmxheWVyIG15bG93ZXIgbHQKCWN1cmxheWVyIG15dXBwZXIgZ3QKCW9yCgl7aW52aXN9IGlmCn0gZGVmCgovY3VybGF5ZXIgMCBkZWYKCiUlRW5kUmVzb3VyY2UKJSVFbmRQcm9sb2cKJSVCZWdpblNldHVwCjE0IGRlZmF1bHQtZm9udC1mYW1pbHkgc2V0X2ZvbnQKJSAvYXJyb3dsZW5ndGggMTAgZGVmCiUgL2Fycm93d2lkdGggNSBkZWYKCiUgbWFrZSBzdXJlIHBkZm1hcmsgaXMgaGFybWxlc3MgZm9yIFBTLWludGVycHJldGVycyBvdGhlciB0aGFuIERpc3RpbGxlcgovcGRmbWFyayB3aGVyZSB7cG9wfSB7dXNlcmRpY3QgL3BkZm1hcmsgL2NsZWFydG9tYXJrIGxvYWQgcHV0fSBpZmVsc2UKJSBtYWtlICc8PCcgYW5kICc+Picgc2FmZSBvbiBQUyBMZXZlbCAxIGRldmljZXMKL2xhbmd1YWdlbGV2ZWwgd2hlcmUge3BvcCBsYW5ndWFnZWxldmVsfXsxfSBpZmVsc2UKMiBsdCB7CiAgICB1c2VyZGljdCAoPDwpIGN2biAoWykgY3ZuIGxvYWQgcHV0CiAgICB1c2VyZGljdCAoPj4pIGN2biAoWykgY3ZuIGxvYWQgcHV0Cn0gaWYKCiUlRW5kU2V0dXAAc3VwAGdyb3VwAGN1cAB0aGluc3AAZW5zcABlbXNwAG5ic3AAcGVycAB3ZWllcnAAZ2VuZXJhdGUtY29uc3RyYWludHMuY3BwAGJsb2NrLmNwcABjc29sdmVfVlBTQy5jcHAAf3RvcABwcm9wAGFneGJwb3AAbm9wAGFzeW1wAGNvbXAAZmluZENDb21wAGJtcABzY2FsZV9jbGFtcAB4bHAAbHAgIT0gY2xwAHRhaWxfbHAAaGVhZF9scAB0YWlsdG9vbHRpcABsYWJlbHRvb2x0aXAAZWRnZXRvb2x0aXAAaGVhZHRvb2x0aXAAaGVsbGlwAHRhaWxjbGlwAGhlYWRjbGlwAC9zdmcvcGFwYXlhd2hpcABocAB0cmFuc3Bvc2Vfc3RlcABjb21wdXRlU3RlcABsYXllcmxpc3RzZXAAbGF5ZXJzZXAAaXBzZXAAcmFua3NlcABub2Rlc2VwAHN1YmdyYXBocyBuZXN0ZWQgbW9yZSB0aGFuICVkIGRlZXAAU2VwAHNmZHAAY3AAd2VicABpZG1hcABjbHVzdGVyX21hcABjbWFweDptYXAAZXBzOm1hcABjbWFweF9ucDptYXAAaW1hcF9ucDptYXAAaXNtYXA6bWFwAGltYXA6bWFwAGNtYXA6bWFwAHN2ZzptYXAAanBnOm1hcABwbmc6bWFwAGpwZWc6bWFwAGdpZjptYXAAanBlOm1hcABvdmVybGFwAGxldmVsc2dhcABjYXAAS1BfVXAAJUk6JU06JVMgJXAAc3RhcnQgPD0gcAByc3F1bwBsc3F1bwByZHF1bwBsZHF1bwBiZHF1bwBzYnF1bwByc2FxdW8AbHNhcXVvAHJhcXVvAGxhcXVvAGF1dG8ATnVuaXRvAC9zdmcvdG9tYXRvAG5lYXRvAGV1cm8AL3N2Zy9nYWluc2Jvcm8ATWV0aG9kWmVybwBtaWNybwBuaW1idXNtb25vAGxpYmVyYXRpb25tb25vAGZyZWVtb25vAGFyaW1vAHJhdGlvAHBvcnRobwByaG8AUmhvAC9zdmcvaW5kaWdvAHBpbmZvAGNjZ3JhcGhpbmZvAGNjZ25vZGVpbmZvAGNsX2VkZ2VfaW5mbwBnZXRQYWNrSW5mbwBtYWtlSW5mbwBwYXJzZVBhY2tNb2RlSW5mbwBjaXJjbwBpY28AXCUwM28AL3N2Zy9yb3N5YnJvd24AL3N2Zy9zYW5keWJyb3duAHZlcnlkYXJrYnJvd24AL3N2Zy9zYWRkbGVicm93bgAvc3ZnL2Jyb3duAEtQX0Rvd24AY2Fubm90IGNoYW5nZSBzZXR0aW5nIG9uY2UgcGFyc2luZyBoYXMgYmVndW4AU3VuAEp1bgB0aG9ybgAvc3ZnL2NyaW1zb24AeGRvdF9qc29uAHhkb3RfanNvbjpqc29uAGpzb24wOmpzb24Ab21pY3JvbgBPbWljcm9uAHNjYXJvbgBTY2Fyb24Ad2VibWFyb29uAHgxMW1hcm9vbgAvc3ZnL21hcm9vbgAvc3ZnL2xpZ2h0c2FsbW9uAC9zdmcvZGFya3NhbG1vbgAvc3ZnL3NhbG1vbgB1cHNpbG9uAGVwc2lsb24AVXBzaWxvbgBFcHNpbG9uAHJlc29sdXRpb24AZGlzdG9ydGlvbgBzdGQ6OmV4Y2VwdGlvbgBwYXJ0aXRpb24AZG90X3Bvc2l0aW9uAFNldHRpbmcgdXAgc3RyZXNzIGZ1bmN0aW9uAHVuY2xvc2VkIENEQVRBIHNlY3Rpb24AcG9zdGFjdGlvbgByb3RhdGlvbgBvcmllbnRhdGlvbgBhYm9taW5hdGlvbgBhY2NvdW50aW5nR2V0Q3VycmVudEFtcGxpZmljYXRpb24AeGRvdHZlcnNpb24AU1RzZXRVbmlvbgA8cG9seWdvbgBoZXhhZ29uAHNlcHRhZ29uAHBlbnRhZ29uAHRyaXBsZW9jdGFnb24AZG91Ymxlb2N0YWdvbgAvc3ZnL2xlbW9uY2hpZmZvbgBNb24AcGx1c21uAG5vdGluAGlzaW4AL3N2Zy9tb2NjYXNpbgBwaW4AbWluAHZvcm9fbWFyZ2luAGluZmluAG9uZWRfb3B0aW1pemVyX3RyYWluAHBsYWluAG1ha2VfY2hhaW4AbWVyZ2VfY2hhaW4AZGVsZXRlTWluAGZpbmRNaW4AdmFsaWduAGJhbGlnbgB5ZW4ATXVsdGlsZXZlbF9jb2Fyc2VuAGN1cnJlbgBQb2Jzb3BlbgBndl9mb3BlbgBndnVzZXJzaGFwZV9vcGVuAGVudGl0eVRyYWNraW5nT25PcGVuAC9zdmcvbGluZW4AZGltZW4AbWlubGVuAHN0eWxlX3Rva2VuAHVuY2xvc2VkIHRva2VuAC9zdmcveWVsbG93Z3JlZW4AbWVkaXVtZm9yZXN0Z3JlZW4AL3N2Zy9mb3Jlc3RncmVlbgAvc3ZnL2xpZ2h0Z3JlZW4AaHVudGVyc2dyZWVuAC9zdmcvbGF3bmdyZWVuAC9zdmcvZGFya2dyZWVuAC9zdmcvbWVkaXVtc3ByaW5nZ3JlZW4AL3N2Zy9zcHJpbmdncmVlbgAvc3ZnL2RhcmtvbGl2ZWdyZWVuAC9zdmcvbGltZWdyZWVuAC9zdmcvcGFsZWdyZWVuAHdlYmdyZWVuAC9zdmcvbGlnaHRzZWFncmVlbgAvc3ZnL21lZGl1bXNlYWdyZWVuAC9zdmcvZGFya3NlYWdyZWVuAC9zdmcvc2VhZ3JlZW4AeDExZ3JlZW4AL3N2Zy9ncmVlbgBHcmVlbgAvc3ZnL2xpZ2h0Y3lhbgAvc3ZnL2RhcmtjeWFuAC9zdmcvY3lhbgBuZXd0YW4AZGFya3RhbgAvc3ZnL3RhbgByb3dzcGFuAGNvbHNwYW4AbmFuAHRpbWVzbmV3cm9tYW4AbmltYnVzcm9tYW4AdGltZXNyb21hbgBUaW1lcy1Sb21hbgBQYWxhdGluby1Sb21hbgBOZXdDZW50dXJ5U2NobGJrLVJvbWFuAEphbgBHRF9yYW5rKGcpW3JdLm4gPD0gR0RfcmFuayhnKVtyXS5hbgBhZ3hicHV0X24AXG4Abl9ub2RlcyA9PSBncmFwaC0+bgBBLT5tID09IEEtPm4Aam9iLT5vYmotPnUubgBuemMgPT0gKHNpemVfdCluAHMsJWxmLCVsZiVuACBlLCVsZiwlbGYlbgAlZCAlMVsiXSVuAHYgPT0gbgBiID09IG4AbmNsdXN0ZXIgPD0gbgBwc3ltAGFsZWZzeW0AdGhldGFzeW0AcXVhbnR1bQBzdW0AL3N2Zy9wbHVtAGludnRyYXBleml1bQBtZWRpdW0AOTpwcmlzbQBscm0AY3VzdG9tAGFwdHItPnRhZyA9PSBUX2F0b20AL2Rldi91cmFuZG9tAGd2X3JhbmRvbQBtbQBybG0Ac2ltAElNRFNfZ2l2ZW5fZGltAG9yZG0AY20AcGFyYWxsZWxvZ3JhbQAvc3ZnL21pbnRjcmVhbQBKdWwAdGwAZnJhc2wAU3ltYm9sAGZpbmRDb2wAPD94bWwAeXVtbAB1dW1sAG91bWwAaXVtbABldW1sAGF1bWwAWXVtbABVdW1sAE91bWwASXVtbABFdW1sAEF1bWwAY29yZV9sb2FkaW1hZ2VfdnJtbABqcGc6dnJtbABwbmc6dnJtbABqcGVnOnZybWwAZ2lmOnZybWwAanBlOnZybWwAYnVsbABmaWxsAC9zdmcvc2Vhc2hlbGwAZm9yYWxsAEFwcmlsAHBlcm1pbAByY2VpbABsY2VpbABjY2VkaWwAQ2NlZGlsAGFycm93dGFpbABsdGFpbABzYW1ldGFpbABsZXZlbCA+PSAwICYmIGxldmVsIDw9IG4tPmxldmVsAHN0cmVzc19tYWpvcml6YXRpb25fa0RfbWtlcm5lbABpc19wYXJhbGxlbABDYWxjdWxhdGluZyBjaXJjdWl0IG1vZGVsAENhbGN1bGF0aW5nIHN1YnNldCBtb2RlbABDYWxjdWxhdGluZyBNRFMgbW9kZWwAeGxhYmVsAHRhaWxsYWJlbABoZWFkbGFiZWwAZ3JhcGggbGFiZWwAaWV4Y2wAb2JqcC0+bGJsAG92YWwAbWVyZ2V2aXJ0dWFsAC9zdmcvbGlnaHRjb3JhbAAvc3ZnL2NvcmFsAFNwYXJzZU1hdHJpeF9mcm9tX2Nvb3JkaW5hdGVfYXJyYXlzX2ludGVybmFsAE11bHRpbGV2ZWxfY29hcnNlbl9pbnRlcm5hbABRdWFkVHJlZV9hZGRfaW50ZXJuYWwAYXJyb3dfbGVuZ3RoX25vcm1hbABhcmlhbAByYWRpYWwAL3N2Zy90ZWFsAHJlYWwAbG9jYWwAZXN0aW1hdGVfY2hhcmFjdGVyX3dpZHRoX2Nhbm9uaWNhbABnbG9iYWwAcS0+bAAuLi8uLi9saWIvY2dyYXBoL3NjYW4ubAB0azp0awBnaWY6dGsAcGF0Y2h3b3JrAHRvawBib29rAEF2YW50R2FyZGUtQm9vawBzaW5rAG92ZXJsYXBfc2hyaW5rAHNwaWN5cGluawAvc3ZnL2hvdHBpbmsAL3N2Zy9saWdodHBpbmsAL3N2Zy9kZWVwcGluawBuZW9ucGluawAvc3ZnL3BpbmsAbmV3cmFuawBjbHVzdGVycmFuawBfbmV3X3JhbmsAaW5zdGFsbF9pbl9yYW5rAHJlbW92ZV9mcm9tX3JhbmsAL3N2Zy9jb3Juc2lsawBvbmVibG9jawB2LT5sZWZ0LT5ibG9jayA9PSB2LT5yaWdodC0+YmxvY2sAL3N2Zy9maXJlYnJpY2sAUFFjaGVjawBwYWNrAC9zdmcvYmxhY2sAQmxhY2sAYmFjawB6d2oAenduagBqb2ItPm9iagBnZXRpbnRyc3hpAHBzaQBQc2kAQ2FsaWJyaQBGcmkAdHdvcGkAZHBpAHZvcm9ub2kAVm9yb25vaQBjaGFuaQBkZW1pAEJvb2ttYW4tRGVtaQBBdmFudEdhcmRlLURlbWkAL3N2Zy9kYXJra2hha2kAL3N2Zy9raGFraQBwaGkAY2hpAFBoaQBDaGkAZGkAWGkAUGkATkRfaWQobnApID09IGkATl9JRFgocHEtPnBxW2ldKSA9PSBpAFN0cmVzc01ham9yaXphdGlvblNtb290aGVyX3Ntb290aABTcHJpbmdTbW9vdGhlcl9zbW9vdGgAYm90aABzdGFydHN3aXRoAGxpbmVsZW5ndGgAYmFkX2FycmF5X25ld19sZW5ndGgAYXZlcmFnZV9lZGdlX2xlbmd0aABldGgAcGVud2lkdGgAbHdpZHRoAHNldGxpbmV3aWR0aABzaG9ydHBhdGgAZm9udHBhdGgAUG9ic3BhdGgAYmVnaW5wYXRoAGltYWdlcGF0aABlbmRwYXRoAHN0cmFpZ2h0X3BhdGgAbWFwX3BhdGgAPHBhdGgAY2Fubm90IGZpbmQgdHJpYW5nbGUgcGF0aAAvc3ZnL2xhdmVuZGVyYmx1c2gAZmxlc2gAb3NsYXNoAE9zbGFzaABkdHN0cmhhc2gAc3RyZGljdF9oYXNoAG5kYXNoAG1kYXNoAGRpZ3JhcGgAc3ViZ3JhcGgAY29uc3RydWN0X2dyYXBoAGNoa1NncmFwaABjbG9zZXN0X3BhaXJzMmdyYXBoAGFnZGVsZXRlIG9uIHdyb25nIGdyYXBoAGNvbm5lY3RHcmFwaAB1cHNpaAAlc2xpbmUtdGhyb3VnaABjaGFuU2VhcmNoAFJUcmVlU2VhcmNoAE1hcmNoAERpc2NvbkJyYW5jaABQaWNrQnJhbmNoAEFkZEJyYW5jaAAuLi8uLi9saWIvdXRpbC9iaXRhcnJheS5oAC4uLy4uL2xpYi91dGlsL3N0cnZpZXcuaAAuLi8uLi9saWIvdXRpbC9zb3J0LmgALi4vLi4vbGliL2NncmFwaC9ub2RlX3NldC5oAC4uLy4uL2xpYi91dGlsL3N0cmVxLmgALi4vLi4vbGliL3V0aWwvc3RhcnRzd2l0aC5oAC4uLy4uL2xpYi91dGlsL2d2X21hdGguaAAuLi8uLi9saWIvdXRpbC9hZ3hidWYuaAAuLi8uLi9saWIvdXRpbC90b2tlbml6ZS5oAC4uLy4uL2xpYi91dGlsL2FsbG9jLmgAYXV4ZwBjb3JlX2xvYWRpbWFnZV9zdmcAc3ZnOnN2ZwBqcGc6c3ZnAHBuZzpzdmcAanBlZzpzdmcAZ2lmOnN2ZwBqcGU6c3ZnAHN2Z19pbmxpbmU6c3ZnAEF1ZwBkb1Byb2xvZwBwb3dlcl9pdGVyYXRpb25fb3J0aG9nAHBuZwBpZGVhbF9kaXN0X3NjaGVtZSB2YWx1ZSB3cm9uZwB4ZG90IHZlcnNpb24gIiVzIiB0b28gbG9uZwBjb25nAGxibGVuY2xvc2luZwBiYXNpY19zdHJpbmcAZmFpbHVyZSBtYWxsb2MnaW5nIGZvciByZXN1bHQgc3RyaW5nAHNwcmluZwBvcmRlcmluZwBnZW5lcmF0ZVJhbmRvbU9yZGVyaW5nAGFyaW5nAEFyaW5nAERhbXBpbmcAV2FybmluZwBvdmVybGFwX3NjYWxpbmcAeCBhbmQgeSBzY2FsaW5nAG9sZCBzY2FsaW5nAHNtb290aGluZwB1bmtub3duIGVuY29kaW5nAG11bHRpbGV2ZWxfc3ByaW5nX2VsZWN0cmljYWxfZW1iZWRkaW5nAHNwcmluZ19lbGVjdHJpY2FsX3NwcmluZ19lbWJlZGRpbmcAY2VsbHBhZGRpbmcAY2VsbHNwYWNpbmcAcmFuZwBsYW5nAGZpdmVwb3ZlcmhhbmcAdGhyZWVwb3ZlcmhhbmcAbm92ZXJoYW5nAGVtaXRfaHRtbF9pbWcAbGcAb3JpZwBzemxpZwBvZWxpZwBhZWxpZwBPRWxpZwBBRWxpZwBjb3JlX2xvYWRpbWFnZV9maWcAanBnOmZpZwBwbmc6ZmlnAGZpZzpmaWcAanBlZzpmaWcAZ2lmOmZpZwBqcGU6ZmlnAGVnZwBuZXh0X3NlZwByZWcAanBlZwBpID09IGRlZwBkZwBjZwBjbG9zZXN1YmcAbWlzbWF0Y2hlZCB0YWcAYmV6LT5zZmxhZwBiZXotPmVmbGFnACEqZmxhZwAhZmxhZwA8ZwAlLjVnLCUuNWcsJS41ZywlLjVnACUuNWcgJS41ZwAlZyAlZwBib3hJbnRlcnNlY3RmAGVwc2YAYWdlZGdlc2VxY21wZgBjY3dyb3RhdGVwZgBmbm9mAGluZgBzZWxmAGhhbGYAJWxmJWxmJWxmJWxmACVsZiwlbGYsJWxmLCVsZiwlbGYAJSpmICUqZiAlbGYgJWxmAGxpYmVyYXRpb25zZXJpZgBmcmVlc2VyaWYAc2Fucy1TZXJpZgBnaWYAL3N2Zy9wZWFjaHB1ZmYAcmlmZgBhY2NvdW50aW5nUmVwb3J0RGlmZgAoWG1sQmlnQ291bnQpLTEgLSByb290UGFyc2VyLT5tX2FsbG9jX3RyYWNrZXIuYnl0ZXNBbGxvY2F0ZWQgPj0gYWJzRGlmZgB0YWlsaHJlZgBsYWJlbGhyZWYAZWRnZWhyZWYAaGVhZGhyZWYAb3JkZgBwZGYAc2lnbWFmAFxmACUuMExmACVMZgB1cy0+ZgAlLjAzZgAlcyB0cmFuc21pdCAlLjNmAHJnYjwlOS4zZiwgJTkuM2YsICU5LjNmPiB0cmFuc21pdCAlLjNmACUuMDJmACUuMmYAJS4wZiwlLjBmLCUuMGYsJS4wZgAgJS4wZiwlLjBmACUuMGYgJS4wZiAlLjBmICUuMGYAIiBmaWxsLW9wYWNpdHk9IiVmACIgc3Ryb2tlLW9wYWNpdHk9IiVmAApmaW5hbCBlID0gJWYAYnJvbnplAGFycm93c2l6ZQBsYWJlbGZvbnRzaXplAHNlYXJjaHNpemUAZml4ZWRzaXplAG5vZGVfc2V0X3NpemUAdGV4dHNwYW5fc2l6ZQBzdmdfc2l6ZQBpbmRleCA8IGxpc3QtPnNpemUAY2FwYWNpdHkgPiBkaWN0LT5zaXplAGNhcGFjaXR5ID4gc2VsZi0+c2l6ZQBiei5zaXplAHBvaW50LXNpemUAU0laRV9NQVggLSBzaXplb2Yoc2l6ZV90KSAtIEVYUEFUX01BTExPQ19QQURESU5HID49IHNpemUAbm9ybWFsaXplAEVMaW5pdGlhbGl6ZQBta01hemUAaWN1cnZlAHRyeV9yZXNlcnZlAG5vZGVfc2V0X3JlbW92ZQBzdHJkaWN0X3JlbW92ZQBzb2x2ZQAhdi0+YWN0aXZlAC1hY3RpdmUAZm9udF9pbl9saXN0X3Blcm1pc3NpdmUAL3N2Zy9vbGl2ZQB1Z3JhdmUAb2dyYXZlAGlncmF2ZQBlZ3JhdmUAYWdyYXZlAFVncmF2ZQBPZ3JhdmUASWdyYXZlAEVncmF2ZQBBZ3JhdmUAdHJ1ZQAvc3ZnL2Jpc3F1ZQBvYmxpcXVlAEF2YW50R2FyZGUtQm9va09ibGlxdWUAQXZhbnRHYXJkZS1EZW1pT2JsaXF1ZQBIZWx2ZXRpY2EtTmFycm93LUJvbGRPYmxpcXVlAENvdXJpZXItQm9sZE9ibGlxdWUASGVsdmV0aWNhLUJvbGRPYmxpcXVlAEhlbHZldGljYS1OYXJyb3ctT2JsaXF1ZQBDb3VyaWVyLU9ibGlxdWUASGVsdmV0aWNhLU9ibGlxdWUAbmF2eWJsdWUAL3N2Zy9saWdodHNreWJsdWUAL3N2Zy9kZWVwc2t5Ymx1ZQAvc3ZnL3NreWJsdWUAbmV3bWlkbmlnaHRibHVlAC9zdmcvbWlkbmlnaHRibHVlAC9zdmcvbGlnaHRibHVlAC9zdmcvY2FkZXRibHVlAC9zdmcvY29ybmZsb3dlcmJsdWUAL3N2Zy9kb2RnZXJibHVlAC9zdmcvcG93ZGVyYmx1ZQBuZW9uYmx1ZQAvc3ZnL21lZGl1bWJsdWUAL3N2Zy9saWdodHN0ZWVsYmx1ZQAvc3ZnL3N0ZWVsYmx1ZQAvc3ZnL3JveWFsYmx1ZQAvc3ZnL2RhcmtibHVlAHJpY2hibHVlAGxpZ2h0c2xhdGVibHVlAC9zdmcvbWVkaXVtc2xhdGVibHVlAC9zdmcvZGFya3NsYXRlYmx1ZQAvc3ZnL3NsYXRlYmx1ZQAvc3ZnL2FsaWNlYmx1ZQAvc3ZnL2JsdWUAY2FsbFN0b3JlRW50aXR5VmFsdWUAc3RvcmVBdHRyaWJ1dGVWYWx1ZQBCbHVlAG5lYXRvX2VucXVldWUAVHVlAHlhY3V0ZQB1YWN1dGUAb2FjdXRlAGlhY3V0ZQBlYWN1dGUAYWFjdXRlAFlhY3V0ZQBVYWN1dGUAT2FjdXRlAElhY3V0ZQBFYWN1dGUAQWFjdXRlAHJlZmVyZW5jZSB0byBleHRlcm5hbCBlbnRpdHkgaW4gYXR0cmlidXRlAGR1cGxpY2F0ZSBhdHRyaWJ1dGUAbm90ZQBwcmltZXJzaXRlAHJpYm9zaXRlAHJlc3RyaWN0aW9uc2l0ZQBwcm90ZWFzZXNpdGUAL3N2Zy9naG9zdHdoaXRlAC9zdmcvbmF2YWpvd2hpdGUAL3N2Zy9mbG9yYWx3aGl0ZQAvc3ZnL2FudGlxdWV3aGl0ZQAvc3ZnL3doaXRlAFdoaXRlAHBvcF9vYmpfc3RhdGUAcGNwX3JvdGF0ZQBjb25jZW50cmF0ZQBkZWNvcmF0ZQBRdWFkVHJlZV9yZXB1bHNpdmVfZm9yY2VfYWNjdW11bGF0ZQBub3RyYW5zbGF0ZQAvc3ZnL2Nob2NvbGF0ZQBwYXJzZXJDcmVhdGUAZ2VvbVVwZGF0ZQBpbnZob3VzZQAvc3ZnL2NoYXJ0cmV1c2UAWE1MX1BhcnNlADxlbGxpcHNlAGR1c3R5cm9zZQAvc3ZnL21pc3R5cm9zZQBTcGFyc2VNYXRyaXhfdHJhbnNwb3NlAGx1X2RlY29tcG9zZQBhZ2Nsb3NlAGVudGl0eVRyYWNraW5nT25DbG9zZQBTcGFyc2VNYXRyaXhfbXVsdGlwbHlfZGVuc2UAZmFsc2UAL3N2Zy9tZWRpdW10dXJxdW9pc2UAL3N2Zy9kYXJrdHVycXVvaXNlAC9zdmcvcGFsZXR1cnF1b2lzZQAvc3ZnL3R1cnF1b2lzZQBwaGFzZQBTSVpFX01BWCAtIHJvb3RQYXJzZXItPm1fYWxsb2NfdHJhY2tlci5ieXRlc0FsbG9jYXRlZCA+PSBpbmNyZWFzZQBzbG90X2Zyb21fYmFzZQAvc3ZnL2F6dXJlAHNpZ25hdHVyZQBtb3JlX2NvcmUATXNxdWFyZQBQYWxhdGlubyBMaW5vdHlwZQBBLT50eXBlID09IEItPnR5cGUAc3VwZQBlbGxpcHNlX3RhbmdlbnRfc2xvcGUAZ3ZyZW5kZXJfdXNlcnNoYXBlAG1pdGVyX3NoYXBlAGxhbmRzY2FwZQBMYW5kc2NhcGUASnVuZQBub25lAGRvY3VtZW50IGlzIG5vdCBzdGFuZGFsb25lAGNvdXNpbmUAL3N2Zy9tZWRpdW1hcXVhbWFyaW5lAC9zdmcvYXF1YW1hcmluZQA8cG9seWxpbmUAJXNvdmVybGluZQB1bmRlcmxpbmUAcmVhbGx5cm91dGVzcGxpbmUAUHJvdXRlc3BsaW5lAGxpbmVhcl9zcGxpbmUAYl9zcGxpbmUAb2xpbmUAYWd4YnVmX2lzX2lubGluZQBzdmdfaW5saW5lAHJlZmluZQBwcmltZQBQcmltZQAvc3ZnL2xpbWUAY29sb3JzY2hlbWUAbGFiZWxfc2NoZW1lAHNhbWUAbGFiZWxmb250bmFtZQBVRl9zZXRuYW1lAGZvbnRfbmFtZQBmb250LT5uYW1lAHVzLT5uYW1lAHJlc2VydmVkIHByZWZpeCAoeG1sKSBtdXN0IG5vdCBiZSB1bmRlY2xhcmVkIG9yIGJvdW5kIHRvIGFub3RoZXIgbmFtZXNwYWNlIG5hbWUAc3R5bGUAL3N2Zy90aGlzdGxlAHRpdGxlAC9zdmcvbWVkaXVtcHVycGxlAGRhcmtwdXJwbGUAd2VicHVycGxlAHJlYmVjY2FwdXJwbGUAdmVyeV9saWdodF9wdXJwbGUAbWVkX3B1cnBsZQB4MTFwdXJwbGUAL3N2Zy9wdXJwbGUAc2hhcGVmaWxlAGdyYWRpZW50YW5nbGUAcmVjdGFuZ2xlAFJlY3RhbmdsZQBsYWJlbGFuZ2xlAGludnRyaWFuZ2xlAGRlc3RpbmF0aW9uIHBvaW50IG5vdCBpbiBhbnkgdHJpYW5nbGUAc291cmNlIHBvaW50IG5vdCBpbiBhbnkgdHJpYW5nbGUAZGZzQ3ljbGUAZG91YmxlY2lyY2xlAE1jaXJjbGUAaW52aXNpYmxlAGV4cGF0X2hlYXBfaW5jcmVhc2VfdG9sZXJhYmxlAHRob3JuZGFsZQBpbnB1dHNjYWxlAG9zY2FsZQBpbWFnZXNjYWxlAC9zdmcvd2hpdGVzbW9rZQBtYW5kYXJpbm9yYW5nZQAvc3ZnL2RhcmtvcmFuZ2UAL3N2Zy9vcmFuZ2UAZXhjaGFuZ2UAL3N2Zy9iZWlnZQBuZXdlZGdlAGRlbGV0ZV9mYXN0X2VkZ2UAZGVsZXRlX2ZsYXRfZWRnZQBhZGRfdHJlZV9lZGdlAHBhdGNod29ya19pbml0X25vZGVfZWRnZQB0d29waV9pbml0X25vZGVfZWRnZQBtYWtlU3RyYWlnaHRFZGdlAG1ha2VTZWxmRWRnZQBtYWtlQ29tcG91bmRFZGdlACF1c2Vfc3RhZ2UAb3NhZ2UAcGFnZQBndmxvYWRpbWFnZQB2ZWUAdGVlAFFVQURfVFJFRV9IWUJSSUQsIHNpemUgbGFyZ2VyIHRoYW4gJWQsIHN3aXRjaCB0byBmYXN0IHF1YWR0cmVlAGZlYXNpYmxlX3RyZWUAbm9kZV9zZXRfZnJlZQBleHBhdF9mcmVlAGd2X2FyZW5hX2ZyZWUAbmV3bm9kZQBpbnN0YWxsbm9kZQBhZ25vZGUAZGVsZXRlX2Zhc3Rfbm9kZQBwYWNrbW9kZQBTcGxpdE5vZGUAb3RpbGRlAG50aWxkZQBhdGlsZGUAT3RpbGRlAE50aWxkZQBBdGlsZGUAZGl2aWRlAHRyYWRlAGdyYXBodml6X25vZGVfaW5kdWNlAHNvdXJjZQByZXB1bHNpdmVmb3JjZQBpbGxlZ2FsIHBhcmFtZXRlciBlbnRpdHkgcmVmZXJlbmNlAGVycm9yIGluIHByb2Nlc3NpbmcgZXh0ZXJuYWwgZW50aXR5IHJlZmVyZW5jZQByZWN1cnNpdmUgZW50aXR5IHJlZmVyZW5jZQBsYWJlbGRpc3RhbmNlAFRCX2JhbGFuY2UAVEJiYWxhbmNlAGRldmljZQBtb25vc3BhY2UAL3N2Zy9vbGRsYWNlAGZhY2UAc3ViZQAgLWFuY2hvciBlAHMxLT5jb21tX2Nvb3JkPT1zMi0+Y29tbV9jb29yZABNcmVjb3JkAGZvcndhcmQAcHJvZABsaWdodGdvbGRlbnJvZABtZWRpdW1nb2xkZW5yb2QAL3N2Zy9kYXJrZ29sZGVucm9kAC9zdmcvcGFsZWdvbGRlbnJvZAAvc3ZnL2dvbGRlbnJvZAAvc3ZnL2J1cmx5d29vZABsaWdodHdvb2QAbWVkaXVtd29vZABkYXJrd29vZABfYmFja2dyb3VuZABjb21wb3VuZABubyBlbGVtZW50IGZvdW5kAGZhdGFsIGZsZXggc2Nhbm5lciBpbnRlcm5hbCBlcnJvci0tbm8gYWN0aW9uIGZvdW5kAC9zdmcvYmxhbmNoZWRhbG1vbmQAYXJyb3dfbGVuZ3RoX2RpYW1vbmQATWRpYW1vbmQAbm9kZV9zZXRfZmluZABzdHJkaWN0X2ZpbmQAZ3Z1c2Vyc2hhcGVfZmluZABFTGxlZnRibmQAZXhwYW5kAGN1bWJlcmxhbmQAYnJpZ2h0Z29sZABvbGRnb2xkAC9zdmcvZ29sZABib2xkAEhlbHZldGljYS1OYXJyb3ctQm9sZABUaW1lcy1Cb2xkAENvdXJpZXItQm9sZABQYWxhdGluby1Cb2xkAE5ld0NlbnR1cnlTY2hsYmstQm9sZABIZWx2ZXRpY2EtQm9sZAAlMCpsbGQAJSpsbGQAKyVsbGQAbi0+YnJhbmNoW2ldLmNoaWxkACUrLjRsZAAlcyVsZABzb2xpZAAvc3ZnL21lZGl1bW9yY2hpZAAvc3ZnL2RhcmtvcmNoaWQAL3N2Zy9vcmNoaWQAaWxsZWdhbCBjaGFyYWN0ZXIocykgaW4gcHVibGljIGlkAGRpamtzdHJhX3NnZABmaXhlZABjdXJ2ZWQAZGVyaXZlZABkb3R0ZWQAbWVtb3J5IGV4aGF1c3RlZABsb2NhbGUgbm90IHN1cHBvcnRlZABwYXJzaW5nIGFib3J0ZWQAcGFyc2VyIG5vdCBzdGFydGVkAGF0dHJpYnV0ZSBtYWNyb3Mgbm90IGltcGxlbWVudGVkAGFjY291bnRpbmdEaWZmVG9sZXJhdGVkAHJvb3RQYXJzZXItPm1fYWxsb2NfdHJhY2tlci5ieXRlc0FsbG9jYXRlZCA+PSBieXRlc0FsbG9jYXRlZABmYXRhbCBmbGV4IHNjYW5uZXIgaW50ZXJuYWwgZXJyb3ItLWVuZCBvZiBidWZmZXIgbWlzc2VkAGNvbmRlbnNlZAAvc3ZnL21lZGl1bXZpb2xldHJlZAAvc3ZnL3BhbGV2aW9sZXRyZWQASW1wcm9wZXIgJXMgdmFsdWUgJXMgLSBpZ25vcmVkACVzIHZhbHVlICVzIDwgJWQgLSB0b28gc21hbGwgLSBpZ25vcmVkACVzIHZhbHVlICVzID4gJWQgLSB0b28gbGFyZ2UgLSBpZ25vcmVkAC9zdmcvaW5kaWFucmVkAC9zdmcvZGFya3JlZABhIHN1Y2Nlc3NmdWwgcHJpb3IgY2FsbCB0byBmdW5jdGlvbiBYTUxfR2V0QnVmZmVyIGlzIHJlcXVpcmVkAHRhcGVyZWQAL3N2Zy9vcmFuZ2VyZWQAcmVzZXJ2ZWQgcHJlZml4ICh4bWxucykgbXVzdCBub3QgYmUgZGVjbGFyZWQgb3IgdW5kZWNsYXJlZAAvc3ZnL3JlZABzdHJpcGVkAGlsbC1jb25kaXRpb25lZAB1bmRlZmluZWQAbm90IGNvbnN0cmFpbmVkAGxhYmVsYWxpZ25lZAB0ZXh0IGRlY2xhcmF0aW9uIG5vdCB3ZWxsLWZvcm1lZABYTUwgZGVjbGFyYXRpb24gbm90IHdlbGwtZm9ybWVkAHVuZmlsbGVkAGlucHV0IGluIGZsZXggc2Nhbm5lciBmYWlsZWQAdHJpYW5ndWxhdGlvbiBmYWlsZWQAcGFyc2luZyBmaW5pc2hlZABkYXNoZWQAbGltaXQgb24gaW5wdXQgYW1wbGlmaWNhdGlvbiBmYWN0b3IgKGZyb20gRFREIGFuZCBlbnRpdGllcykgYnJlYWNoZWQAd2VkZ2VkAHNpemUgPT0gZnJlZWQAcm91bmRlZABzcGxpbmUgWyUuMDNmLCAlLjAzZl0gLS0gWyUuMDNmLCAlLjAzZl0gaXMgaG9yaXpvbnRhbDsgd2lsbCBiZSB0cml2aWFsbHkgYm91bmRlZABzcGxpbmUgWyUuMDNmLCAlLjAzZl0gLS0gWyUuMDNmLCAlLjAzZl0gaXMgdmVydGljYWw7IHdpbGwgYmUgdHJpdmlhbGx5IGJvdW5kZWQAcGFyc2VyIG5vdCBzdXNwZW5kZWQAcGFyc2VyIHN1c3BlbmRlZABXZWQAUmVkAFNwYXJzZU1hdHJpeF9hZGQAbm9kZV9zZXRfYWRkAHN0cmRpY3RfYWRkAGRkICE9IHBhcmVudF9kZABLUF9BZGQAcGFkAHhsaGR4bG9hZAB4bGhkeHVubG9hZAByZWFkAGFycm93aGVhZABsaGVhZABzYW1laGVhZABib3gzZAAlc18lZABfc3Bhbl8lZABfYmxvY2tfJWQAX3dlYWtfJWQAX2Nsb25lXyVkAC4lZAAlWS0lbS0lZAAlbGYsJWQAJXMgaW4gbGluZSAlZAAlJSUlQm91bmRpbmdCb3g6ICVkICVkICVkICVkACJfc3ViZ3JhcGhfY250IjogJWQAIl9ndmlkIjogJWQAImhlYWQiOiAlZABhZ3hicHV0YwB2cHNjAGNwLT5zcmMAdWNpcmMAb2NpcmMAaWNpcmMAZWNpcmMAYWNpcmMAVWNpcmMAT2NpcmMASWNpcmMARWNpcmMAQWNpcmMAcGMAbGFiZWxsb2MAZXhwYXRfbWFsbG9jAGV4cGF0X3JlYWxsb2MAZ3ZfcmVjYWxsb2MAc3RkOjpiYWRfYWxsb2MAZ3ZfYXJlbmFfYWxsb2MAYmFrZXJzY2hvYwBzZW1pU3dlZXRDaG9jAG1jAFNwYXJzZU1hdHJpeF9pc19zeW1tZXRyaWMAQS0+aXNfcGF0dGVybl9zeW1tZXRyaWMAcGljOnBpYwBpdGFsaWMAQm9va21hbi1MaWdodEl0YWxpYwBaYXBmQ2hhbmNlcnktTWVkaXVtSXRhbGljAEJvb2ttYW4tRGVtaUl0YWxpYwBUaW1lcy1Cb2xkSXRhbGljAFBhbGF0aW5vLUJvbGRJdGFsaWMATmV3Q2VudHVyeVNjaGxiay1Cb2xkSXRhbGljAFRpbWVzLUl0YWxpYwBQYWxhdGluby1JdGFsaWMATmV3Q2VudHVyeVNjaGxiay1JdGFsaWMAcmFkaWMAI2ZjZmNmYwByb3V0ZXNwbGluZXM6ICVkIGVkZ2VzLCAlenUgYm94ZXMgJS4yZiBzZWMAOiAlLjJmIHNlYwBsaXN0ZGVscmVjAGxldmVsIGdyYXBoIHJlYwBsZXZlbCBlZGdlIHJlYwBsZXZlbCBub2RlIHJlYwBEZWMAX25lYXRvX2NjAGJjAHZpc2liaWxpdHkuYwBTcGFyc2VNYXRyaXguYwBodG1sbGV4LmMAaW5kZXguYwBzbWFydF9pbmlfeC5jAGd2cmVuZGVyX2NvcmVfcG92LmMAbHUuYwBjdnQuYwBsYXlvdXQuYwB0ZXh0c3Bhbl9sdXQuYwBhZGp1c3QuYwBub2RlbGlzdC5jAHNob3J0ZXN0LmMAY2xvc2VzdC5jAGd2cmVuZGVyX2NvcmVfZG90LmMAY29uc3RyYWludC5jAGRvdGluaXQuYwBuZWF0b2luaXQuYwBwYXRjaHdvcmtpbml0LmMAdHdvcGlpbml0LmMAb3NhZ2Vpbml0LmMAZW1pdC5jAGZsYXQuYwBhcnJvd3MuYwBtaW5jcm9zcy5jAHN0cmVzcy5jAHBvc3RfcHJvY2Vzcy5jAGNjb21wcy5jAG5zLmMAdXRpbHMuYwB4bGFiZWxzLmMAc2hhcGVzLmMAZG90c3BsaW5lcy5jAG5lYXRvc3BsaW5lcy5jAGNsdXN0ZXJlZGdlcy5jAGhlZGdlcy5jAGF0dHIuYwByZWZzdHIuYwBmYXN0Z3IuYwBjbHVzdGVyLmMAdGFwZXIuYwBndnJlbmRlci5jAHNwbGl0LnEuYwBjb21wLmMAZ3ZyZW5kZXJfY29yZV9tYXAuYwBoZWFwLmMAb3J0aG8uYwBndnJlbmRlcl9jb3JlX2pzb24uYwBwYXJ0aXRpb24uYwBwb3NpdGlvbi5jAGd2X2ZvcGVuLmMAdGV4dHNwYW4uYwBnZW9tLmMAcmFuZG9tLmMAcm91dGVzcGwuYwB4bWwuYwBNdWx0aWxldmVsLmMAc3ByaW5nX2VsZWN0cmljYWwuYwBndnJlbmRlcl9jb3JlX3RrLmMAcmFuay5jAHBhY2suYwBkdHN0cmhhc2guYwBncmFwaC5jAGd2cmVuZGVyX2NvcmVfc3ZnLmMAZ3ZyZW5kZXJfY29yZV9maWcuYwBzdHVmZi5jAG1hemUuYwBzcGFyc2Vfc29sdmUuYwByb3V0ZS5jAHdyaXRlLmMAY29seGxhdGUuYwB4bWxwYXJzZS5jAGd2bG9hZGltYWdlX2NvcmUuYwBndnVzZXJzaGFwZS5jAGNpcmNsZS5jAGh0bWx0YWJsZS5jAGVkZ2UuYwBndmxvYWRpbWFnZS5jAGJsb2NrdHJlZS5jAFF1YWRUcmVlLmMAbm9kZS5jAG5vZGVfaW5kdWNlLmMAZ3ZkZXZpY2UuYwBjb21wb3VuZC5jAHRyYXBlem9pZC5jAHNnZC5jAGNvbmMuYwByZWMuYwBkaWprc3RyYS5jAGFyZW5hLmMAZlBRLmMAY2xhc3MyLmMAJWxmLCVsZiwlbGYsJWxmJWMAJWxmLCVsZiwlbGYsJVteLF0lYwBcJWMAJGMAd2IAbnN1YgBzZXRoc2IAcmIAcHJvdGVjdF9yc3FiAGpvYgBjb3JlX2xvYWRpbWFnZV9wc2xpYgBGZWIAb2RiAGluaXRfc3BsaW5lc19iYgBiZXppZXJfYmIAcHJvdGVpbnN0YWIAcm5hc3RhYgAvc3ZnL29saXZlZHJhYgBcYgByd2EAL3N2Zy9hcXVhAGlvdGEASW90YQAvc3ZnL2RhcmttYWdlbnRhAC9zdmcvbWFnZW50YQBkZWx0YQBEZWx0YQB6ZXRhAHRoZXRhAFRoZXRhAGJldGEAWmV0YQBCZXRhAHByZXYgIT0gb2JqLT5kYXRhAG1ha2VHcmFwaERhdGEARXRhAG5pbWJ1c3NhbnNhAHBhcmEAa2FwcGEAS2FwcGEAL3N2Zy9zaWVubmEAVmVyZGFuYQBnYW1tYQBHYW1tYQBzaWdtYQBTaWdtYQBjb25zb2xhAG5hYmxhAC9zdmcvZnVjaHNpYQBHZW9yZ2lhAGFscGhhAEFscGhhAG9tZWdhAE9tZWdhAGFyZWEAbGFtYmRhAExhbWJkYQBoZWx2ZXRpY2EASGVsdmV0aWNhAG1pY2EAPjxhAGAAU3BhcnNlTWF0cml4X2Nvb3JkaW5hdGVfZm9ybV9hZGRfZW50cnlfAGd2X2xpc3RfY29weV8AX3RkcmF3XwBfdGxkcmF3XwBfaGxkcmF3XwBfbGRyYXdfAF9oZHJhd18AX2RyYXdfAGd2X2xpc3Rfc29ydF8AZ3ZfbGlzdF9hcHBlbmRfc2xvdF8AZ3ZfbGlzdF9wcmVwZW5kX3Nsb3RfAGd2X2xpc3RfcG9wX2Zyb250XwBndl9saXN0X3Nocmlua190b19maXRfAGFneHNldF8AZ3ZfbGlzdF9nZXRfAGRvdF9zcGxpbmVzXwAlc18AZ3ZfbGlzdF9jbGVhcl8AZ3ZfbGlzdF9wb3BfYmFja18AZ3ZfbGlzdF9kZXRhY2hfAGd2X2xpc3RfcmVtb3ZlXwBndl9saXN0X3JldmVyc2VfAGd2X2xpc3RfZnJlZV8AZ3ZfbGlzdF90cnlfYXBwZW5kXwBwYWdlJWQsJWRfAGd2X2xpc3Rfc3luY18AX2NjXwAgaWQ9ImFfAF4AU3RhcnRpbmcgcGhhc2UgMiBbZG90X21pbmNyb3NzXQBTdGFydGluZyBwaGFzZSAzIFtkb3RfcG9zaXRpb25dAG5fZWRnZXMgPT0gZ3JhcGgtPnNvdXJjZXNbZ3JhcGgtPm5dAFN0YXJ0aW5nIHBoYXNlIDEgW2RvdF9yYW5rXQBqZFttYXNrW2pjW2tdXV0gPT0gamNba10AamNbbWFza1tqYltrXV1dID09IGpiW2tdAG5lZWRsZVtpXSAhPSBuZWVkbGVbal0AamFbbWFza1tqYVtqXV1dID09IGphW2pdAHEtPnF0c1tpaV0AIXJ0cC0+c3BsaXQuUGFydGl0aW9uc1swXS50YWtlbltpXQByLmJvdW5kYXJ5W2ldIDw9IHIuYm91bmRhcnlbTlVNRElNUyArIGldAFslLjAzZiwlLjAzZl0AW2ludGVybmFsIGhhcmQtY29kZWRdAG5wLT5jZWxsc1sxXQBucC0+Y2VsbHNbMF0AdXMtPm5hbWVbMF0AY3AtPnNyY1swXQBbLi5dAFxcACJwb2ludHMiOiBbACJzdG9wcyI6IFsACVsAWgBjb21wdXRlU2NhbGVYWQB5PD1ZACVhICViICVkICVIOiVNOiVTICVZAFBPU0lYAG56IDw9IElOVF9NQVgAeSA+PSBJTlRfTUlOICYmIHkgPD0gSU5UX01BWAB4ID49IElOVF9NSU4gJiYgeCA8PSBJTlRfTUFYAHcgPj0gMCAmJiB3IDw9IElOVF9NQVgAZV9jbnQgPD0gSU5UX01BWABwYWlyLnJpZ2h0IDw9IElOVF9NQVgAcGFpci5sZWZ0IDw9IElOVF9NQVgAdGFyZ2V0IDw9IElOVF9NQVgAbnNlZ3MgPD0gSU5UX01BWABuX2VkZ2VzIDw9IElOVF9NQVgAc3RwLm52ZXJ0aWNlcyA8PSBJTlRfTUFYAG9ic1twb2x5X2ldLT5wbiA8PSBJTlRfTUFYAGlucHV0X3JvdXRlLnBuIDw9IElOVF9NQVgAZ3JhcGgtPm4gPD0gSU5UX01BWABoID49IDAgJiYgaCA8PSBJTlRfTUFYAGVfY250IC0gMSA8PSBJTlRfTUFYAExJU1RfU0laRSgmbGlzdCkgLSAxIDw9IElOVF9NQVgATElTVF9TSVpFKCZsYXllcklEcykgLSAxIDw9IElOVF9NQVgAc3RybGVuKGFyZ3MpIDw9IElOVF9NQVgATElTVF9TSVpFKCZvYmpsKSA8PSBJTlRfTUFYAExJU1RfU0laRSgmY3R4LT5UcmVlX2VkZ2UpIDw9IElOVF9NQVgAbm9kZV9zZXRfc2l6ZShnLT5uX2lkKSA8PSBJTlRfTUFYAGkgPCBJTlRfTUFYAHJlc3VsdCA8PSAoaW50KVVDSEFSX01BWABzc3ogPD0gVUNIQVJfTUFYAGNvbCA+PSAwICYmIGNvbCA8PSBVSU5UMTZfTUFYAHg8PVgAVwBWAFUAXFQAVEVYVABTVFJFU1NfTUFKT1JJWkFUSU9OX1BPV0VSX0RJU1QAU1RSRVNTX01BSk9SSVpBVElPTl9HUkFQSF9ESVNUAFNUUkVTU19NQUpPUklaQVRJT05fQVZHX0RJU1QARkFTVABGT05UAGIgPT0gQl9SSUdIVABIRUlHSFQAQl9MRUZUAF8lbGx1X1NVU1BFQ1QAQlQAVHJlYnVjaGV0IE1TAElOVklTACVIOiVNOiVTAFZSAFRSAEEtPmZvcm1hdCA9PSBCLT5mb3JtYXQgJiYgQS0+Zm9ybWF0ID09IEZPUk1BVF9DU1IATFIARElSAEhSAENFTlRFUgAlJVRSQUlMRVIAQS0+dHlwZSA9PSBNQVRSSVhfVFlQRV9SRUFMIHx8IEEtPnR5cGUgPT0gTUFUUklYX1RZUEVfSU5URUdFUgBDRUxMQk9SREVSAEJSACpSAFEARVhQAEJfVVAAU1VQAFRPUABPAG1hcE4AXE4AQl9ET1dOAFRIT1JOACUlQkVHSU4AUk9XU1BBTgBDT0xTUEFOAE5BTgBQTQBCT1RUT00AQk0AQU0AJUg6JU0AXEwAdGFpbFVSTABsYWJlbFVSTABlZGdlVVJMAGhlYWRVUkwASFRNTAB4IT1OVUxMAHJvb3RQYXJzZXItPm1fcGFyZW50UGFyc2VyID09IE5VTEwARURfdG9fdmlydChvcmlnKSA9PSBOVUxMAEVEX3RvX3ZpcnQoZSkgPT0gTlVMTABwcmVmaXggIT0gTlVMTABkdGQtPnNjYWZmSW5kZXggIT0gTlVMTABzbS0+THcgIT0gTlVMTABsdSAhPSBOVUxMAGlucHV0ICE9IE5VTEwAbGlzdCAhPSBOVUxMAHJlZmVyZW50ICE9IE5VTEwAZGljdCAhPSBOVUxMAGRpY3QtPmJ1Y2tldHMgIT0gTlVMTABhdHRyICE9IE5VTEwAYWxsb2NhdG9yICE9IE5VTEwAcGFyc2VyICE9IE5VTEwAcm9vdFBhcnNlciAhPSBOVUxMAGxlYWRlciAhPSBOVUxMAGNtcCAhPSBOVUxMAGRhdGFwICE9IE5VTEwAaW50byAhPSBOVUxMAGl0ZW0gIT0gTlVMTABvcnRob2cgIT0gTlVMTABzZWxmICE9IE5VTEwAdmFsdWUgIT0gTlVMTABmaWxlbmFtZSAhPSBOVUxMAGpvYi0+b3V0cHV0X2ZpbGUgIT0gTlVMTABtb2RlICE9IE5VTEwAeGQgIT0gTlVMTABzbS0+THdkICE9IE5VTEwAam9iICE9IE5VTEwAc291cmNlLmRhdGEgIT0gTlVMTABiLmRhdGEgIT0gTlVMTABhLmRhdGEgIT0gTlVMTABhcmVuYSAhPSBOVUxMAGxpc3QgJiYgbGlzdFswXSAhPSBOVUxMAEFGICE9IE5VTEwAc20tPkQgIT0gTlVMTABFRF90b192aXJ0KG9yaWcpICE9IE5VTEwATENfQUxMAEJMAGJlc3Rjb3N0IDwgSFVHRV9WQUwATk9STUFMAFJBRElBTABBLT50eXBlID09IE1BVFJJWF9UWVBFX1JFQUwAVVJXIENoYW5jZXJ5IEwAVVJXIEJvb2ttYW4gTABDZW50dXJ5IFNjaG9vbGJvb2sgTABVUlcgR290aGljIEwAS0sASgBpIDwgTUFYX0kAUC0+ZW5kLnRoZXRhIDwgMiAqIE1fUEkAQVNDSUkAXEgARVRIAFdJRFRIAERPVEZPTlRQQVRIAEdERk9OVFBBVEgAbWtOQ29uc3RyYWludEcAXEcARVhQQVRfRU5USVRZX0RFQlVHAEVYUEFUX0VOVFJPUFlfREVCVUcARVhQQVRfQUNDT1VOVElOR19ERUJVRwBFWFBBVF9NQUxMT0NfREVCVUcAUk5HAFNQUklORwBDRUxMUEFERElORwBDRUxMU1BBQ0lORwBMQU5HAElNRwBceEYAJSVFT0YASU5GAFx4RkYAUklGRgBkZWx0YSA8PSAweEZGRkYAXHhFRgBceERGAFx4Q0YAXHhCRgBceEFGAFx4OUYAXHg4RgBceDdGAFx4MUYAXHhFAFxFAFBPSU5ULVNJWkUAVFJVRQBDTE9TRQBGQUxTRQBrZXkgIT0gVE9NQlNUT05FAHIgIT0gVE9NQlNUT05FAE5PTkUAR1JBRElFTlRBTkdMRQBUUklBTkdMRQBNSURETEUASU5WSVNJQkxFAFRBQkxFAEFHVFlQRShvYmopID09IEFHSU5FREdFIHx8IEFHVFlQRShvYmopID09IEFHT1VURURHRQBceEZFAFx4RUUAXHhERQBCX05PREUAXHhDRQBceEJFAFx4QUUAXHg5RQBceDhFAFx4MUUAVEQAQS0+Zm9ybWF0ID09IEZPUk1BVF9DT09SRABuICYmIGkgPj0gMCAmJiBpIDwgTk9ERUNBUkQAJSVFTkQASFlCUklEAFNPTElEAFx4RkQAXHhFRABET1RURUQAREFTSEVEAFJPVU5ERUQAXHhERABceENEAFx4QkQAXHhBRABceDlEAFx4OEQAXHgxRABceEMAZGVsZXRlVlBTQwBceEZDAFx4RUMAXHhEQwBceENDAFx4QkMAXHhBQwBceDlDAFx4OEMAXHgxQwBceEIAU1VCAFx4RkIAXHhFQgBceERCAFx4Q0IAXHhCQgBceEFCAFx4OUIAXHg4QgBceDFCAEEgJiYgQgBceEZBAFx4RUEAXHhEQQBceENBAFx4QkEAXHhBQQBceDlBAFx4OEEAXHgxQQBAAD8APCVzPgA8bmlsPgA8L3RzcGFuPjwvdGV4dFBhdGg+AAogICAgPCU5LjNmLCAlOS4zZiwgJTkuM2Y+AD4KPHRpdGxlPgA8Rk9OVD4APEJSPgA8SFRNTD4APC9IVE1MPgA8SU1HPgBTeW50YXggZXJyb3I6IG5vbi1zcGFjZSBzdHJpbmcgdXNlZCBiZWZvcmUgPFRBQkxFPgBTeW50YXggZXJyb3I6IG5vbi1zcGFjZSBzdHJpbmcgdXNlZCBhZnRlciA8L1RBQkxFPgA8VEQ+AC0+ACI+AAlba2V5PQA8PQA8ACYjeCV4OwAmcXVvdDsAJmx0OwAmZ3Q7ACZhbXA7ACMlZDsAJiMzOTsAJiM0NTsAJiM5MzsAJiMxMzsAJiMxNjA7ACYjMTA7ADtzdG9wLW9wYWNpdHk6ACUlQm91bmRpbmdCb3g6AGNhbGN1bGF0aW5nIHNob3J0ZXN0IHBhdGhzIGFuZCBzZXR0aW5nIHVwIHN0cmVzcyB0ZXJtczoAPHN0b3Agb2Zmc2V0PSIlLjAzZiIgc3R5bGU9InN0b3AtY29sb3I6ADxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6ADxzdG9wIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6AHNvbHZpbmcgbW9kZWw6AC9cOgBncmV5OQBncmF5OQBceEY5AFx4RTkAXHhEOQBceEM5AFx4QjkAXHhBOQBncmV5OTkAZ3JheTk5AFx4OTkAZ3JleTg5AGdyYXk4OQBceDg5ADAxMjM0NTY3ODkAZ3JleTc5AGdyYXk3OQBncmV5NjkAZ3JheTY5AGdyZXk1OQBncmF5NTkAZ3JleTQ5AGdyYXk0OQBncmV5MzkAZ3JheTM5AGdyZXkyOQBncmF5MjkAZ3JleTE5AGdyYXkxOQBceDE5AC9yZGd5OS85AC9idXB1OS85AC9yZHB1OS85AC9wdWJ1OS85AC95bGduYnU5LzkAL2duYnU5LzkAL3JkeWxidTkvOQAvcmRidTkvOQAvZ3JleXM5LzkAL2dyZWVuczkvOQAvYmx1ZXM5LzkAL3B1cnBsZXM5LzkAL29yYW5nZXM5LzkAL3JlZHM5LzkAL3B1b3I5LzkAL3lsb3JicjkvOQAvcHVidWduOS85AC9idWduOS85AC9wcmduOS85AC9yZHlsZ245LzkAL3lsZ245LzkAL3NwZWN0cmFsOS85AC9waXlnOS85AC9icmJnOS85AC9wdXJkOS85AC95bG9ycmQ5LzkAL29ycmQ5LzkAL3BhaXJlZDkvOQAvc2V0MzkvOQAvc2V0MTkvOQAvcGFzdGVsMTkvOQAvcGFpcmVkMTIvOQAvc2V0MzEyLzkAL3JkZ3kxMS85AC9yZHlsYnUxMS85AC9yZGJ1MTEvOQAvcHVvcjExLzkAL3ByZ24xMS85AC9yZHlsZ24xMS85AC9zcGVjdHJhbDExLzkAL3BpeWcxMS85AC9icmJnMTEvOQAvcGFpcmVkMTEvOQAvc2V0MzExLzkAL3JkZ3kxMC85AC9yZHlsYnUxMC85AC9yZGJ1MTAvOQAvcHVvcjEwLzkAL3ByZ24xMC85AC9yZHlsZ24xMC85AC9zcGVjdHJhbDEwLzkAL3BpeWcxMC85AC9icmJnMTAvOQAvcGFpcmVkMTAvOQAvc2V0MzEwLzkAZ3JleTgAZ3JheTgAXHg4AHV0ZjgAI2Y4ZjhmOAAjZThlOGU4AFx4RjgAR0lGOABceEU4AFx4RDgAXHhDOABceEI4AFx4QTgAZ3JleTk4AGdyYXk5OABceDk4AGdyZXk4OABncmF5ODgAXHg4OABncmV5NzgAZ3JheTc4AGdyZXk2OABncmF5NjgAZ3JleTU4AGdyYXk1OABncmV5NDgAZ3JheTQ4AGdyZXkzOABncmF5MzgAZ3JleTI4AGdyYXkyOABncmV5MTgAZ3JheTE4AFx4MTgAL3JkZ3k5LzgAL2J1cHU5LzgAL3JkcHU5LzgAL3B1YnU5LzgAL3lsZ25idTkvOAAvZ25idTkvOAAvcmR5bGJ1OS84AC9yZGJ1OS84AC9ncmV5czkvOAAvZ3JlZW5zOS84AC9ibHVlczkvOAAvcHVycGxlczkvOAAvb3JhbmdlczkvOAAvcmVkczkvOAAvcHVvcjkvOAAveWxvcmJyOS84AC9wdWJ1Z245LzgAL2J1Z245LzgAL3ByZ245LzgAL3JkeWxnbjkvOAAveWxnbjkvOAAvc3BlY3RyYWw5LzgAL3BpeWc5LzgAL2JyYmc5LzgAL3B1cmQ5LzgAL3lsb3JyZDkvOAAvb3JyZDkvOAAvcGFpcmVkOS84AC9zZXQzOS84AC9zZXQxOS84AC9wYXN0ZWwxOS84AC9yZGd5OC84AC9idXB1OC84AC9yZHB1OC84AC9wdWJ1OC84AC95bGduYnU4LzgAL2duYnU4LzgAL3JkeWxidTgvOAAvcmRidTgvOAAvYWNjZW50OC84AC9ncmV5czgvOAAvZ3JlZW5zOC84AC9ibHVlczgvOAAvcHVycGxlczgvOAAvb3JhbmdlczgvOAAvcmVkczgvOAAvcHVvcjgvOAAveWxvcmJyOC84AC9wdWJ1Z244LzgAL2J1Z244LzgAL3ByZ244LzgAL3JkeWxnbjgvOAAveWxnbjgvOAAvc3BlY3RyYWw4LzgAL3BpeWc4LzgAL2JyYmc4LzgAL3B1cmQ4LzgAL3lsb3JyZDgvOAAvb3JyZDgvOAAvcGFpcmVkOC84AC9zZXQzOC84AC9zZXQyOC84AC9wYXN0ZWwyOC84AC9kYXJrMjgvOAAvc2V0MTgvOAAvcGFzdGVsMTgvOAAvcGFpcmVkMTIvOAAvc2V0MzEyLzgAL3JkZ3kxMS84AC9yZHlsYnUxMS84AC9yZGJ1MTEvOAAvcHVvcjExLzgAL3ByZ24xMS84AC9yZHlsZ24xMS84AC9zcGVjdHJhbDExLzgAL3BpeWcxMS84AC9icmJnMTEvOAAvcGFpcmVkMTEvOAAvc2V0MzExLzgAL3JkZ3kxMC84AC9yZHlsYnUxMC84AC9yZGJ1MTAvOAAvcHVvcjEwLzgAL3ByZ24xMC84AC9yZHlsZ24xMC84AC9zcGVjdHJhbDEwLzgAL3BpeWcxMC84AC9icmJnMTAvOAAvcGFpcmVkMTAvOAAvc2V0MzEwLzgAdXRmLTgAQy5VVEYtOABncmV5NwBncmF5NwBceDcAXHhGNwBceEU3AFx4RDcAXHhDNwBceEI3AFx4QTcAZ3JleTk3AGdyYXk5NwBceDk3AGdyZXk4NwBncmF5ODcAXHg4NwBncmV5NzcAZ3JheTc3AGdyZXk2NwBncmF5NjcAZ3JleTU3AGdyYXk1NwBncmV5NDcAZ3JheTQ3AGdyZXkzNwBncmF5MzcAZ3JleTI3AGdyYXkyNwBncmV5MTcAZ3JheTE3AFx4MTcAL3JkZ3k5LzcAL2J1cHU5LzcAL3JkcHU5LzcAL3B1YnU5LzcAL3lsZ25idTkvNwAvZ25idTkvNwAvcmR5bGJ1OS83AC9yZGJ1OS83AC9ncmV5czkvNwAvZ3JlZW5zOS83AC9ibHVlczkvNwAvcHVycGxlczkvNwAvb3JhbmdlczkvNwAvcmVkczkvNwAvcHVvcjkvNwAveWxvcmJyOS83AC9wdWJ1Z245LzcAL2J1Z245LzcAL3ByZ245LzcAL3JkeWxnbjkvNwAveWxnbjkvNwAvc3BlY3RyYWw5LzcAL3BpeWc5LzcAL2JyYmc5LzcAL3B1cmQ5LzcAL3lsb3JyZDkvNwAvb3JyZDkvNwAvcGFpcmVkOS83AC9zZXQzOS83AC9zZXQxOS83AC9wYXN0ZWwxOS83AC9yZGd5OC83AC9idXB1OC83AC9yZHB1OC83AC9wdWJ1OC83AC95bGduYnU4LzcAL2duYnU4LzcAL3JkeWxidTgvNwAvcmRidTgvNwAvYWNjZW50OC83AC9ncmV5czgvNwAvZ3JlZW5zOC83AC9ibHVlczgvNwAvcHVycGxlczgvNwAvb3JhbmdlczgvNwAvcmVkczgvNwAvcHVvcjgvNwAveWxvcmJyOC83AC9wdWJ1Z244LzcAL2J1Z244LzcAL3ByZ244LzcAL3JkeWxnbjgvNwAveWxnbjgvNwAvc3BlY3RyYWw4LzcAL3BpeWc4LzcAL2JyYmc4LzcAL3B1cmQ4LzcAL3lsb3JyZDgvNwAvb3JyZDgvNwAvcGFpcmVkOC83AC9zZXQzOC83AC9zZXQyOC83AC9wYXN0ZWwyOC83AC9kYXJrMjgvNwAvc2V0MTgvNwAvcGFzdGVsMTgvNwAvcmRneTcvNwAvYnVwdTcvNwAvcmRwdTcvNwAvcHVidTcvNwAveWxnbmJ1Ny83AC9nbmJ1Ny83AC9yZHlsYnU3LzcAL3JkYnU3LzcAL2FjY2VudDcvNwAvZ3JleXM3LzcAL2dyZWVuczcvNwAvYmx1ZXM3LzcAL3B1cnBsZXM3LzcAL29yYW5nZXM3LzcAL3JlZHM3LzcAL3B1b3I3LzcAL3lsb3JicjcvNwAvcHVidWduNy83AC9idWduNy83AC9wcmduNy83AC9yZHlsZ243LzcAL3lsZ243LzcAL3NwZWN0cmFsNy83AC9waXlnNy83AC9icmJnNy83AC9wdXJkNy83AC95bG9ycmQ3LzcAL29ycmQ3LzcAL3BhaXJlZDcvNwAvc2V0MzcvNwAvc2V0MjcvNwAvcGFzdGVsMjcvNwAvZGFyazI3LzcAL3NldDE3LzcAL3Bhc3RlbDE3LzcAL3BhaXJlZDEyLzcAL3NldDMxMi83AC9yZGd5MTEvNwAvcmR5bGJ1MTEvNwAvcmRidTExLzcAL3B1b3IxMS83AC9wcmduMTEvNwAvcmR5bGduMTEvNwAvc3BlY3RyYWwxMS83AC9waXlnMTEvNwAvYnJiZzExLzcAL3BhaXJlZDExLzcAL3NldDMxMS83AC9yZGd5MTAvNwAvcmR5bGJ1MTAvNwAvcmRidTEwLzcAL3B1b3IxMC83AC9wcmduMTAvNwAvcmR5bGduMTAvNwAvc3BlY3RyYWwxMC83AC9waXlnMTAvNwAvYnJiZzEwLzcAL3BhaXJlZDEwLzcAL3NldDMxMC83ADEuNwBncmV5NgBncmF5NgBceDYAXHhGNgBceEU2AFx4RDYAXHhDNgBceEI2AFx4QTYAZ3JleTk2AGdyYXk5NgBceDk2AGdyZXk4NgBncmF5ODYAXHg4NgBncmV5NzYAZ3JheTc2AGdyZXk2NgBncmF5NjYAZ3JleTU2AGdyYXk1NgBncmV5NDYAZ3JheTQ2AGdyZXkzNgBncmF5MzYAZ3JleTI2AGdyYXkyNgBncmV5MTYAZ3JheTE2AFx4MTYAL3JkZ3k5LzYAL2J1cHU5LzYAL3JkcHU5LzYAL3B1YnU5LzYAL3lsZ25idTkvNgAvZ25idTkvNgAvcmR5bGJ1OS82AC9yZGJ1OS82AC9ncmV5czkvNgAvZ3JlZW5zOS82AC9ibHVlczkvNgAvcHVycGxlczkvNgAvb3JhbmdlczkvNgAvcmVkczkvNgAvcHVvcjkvNgAveWxvcmJyOS82AC9wdWJ1Z245LzYAL2J1Z245LzYAL3ByZ245LzYAL3JkeWxnbjkvNgAveWxnbjkvNgAvc3BlY3RyYWw5LzYAL3BpeWc5LzYAL2JyYmc5LzYAL3B1cmQ5LzYAL3lsb3JyZDkvNgAvb3JyZDkvNgAvcGFpcmVkOS82AC9zZXQzOS82AC9zZXQxOS82AC9wYXN0ZWwxOS82AC9yZGd5OC82AC9idXB1OC82AC9yZHB1OC82AC9wdWJ1OC82AC95bGduYnU4LzYAL2duYnU4LzYAL3JkeWxidTgvNgAvcmRidTgvNgAvYWNjZW50OC82AC9ncmV5czgvNgAvZ3JlZW5zOC82AC9ibHVlczgvNgAvcHVycGxlczgvNgAvb3JhbmdlczgvNgAvcmVkczgvNgAvcHVvcjgvNgAveWxvcmJyOC82AC9wdWJ1Z244LzYAL2J1Z244LzYAL3ByZ244LzYAL3JkeWxnbjgvNgAveWxnbjgvNgAvc3BlY3RyYWw4LzYAL3BpeWc4LzYAL2JyYmc4LzYAL3B1cmQ4LzYAL3lsb3JyZDgvNgAvb3JyZDgvNgAvcGFpcmVkOC82AC9zZXQzOC82AC9zZXQyOC82AC9wYXN0ZWwyOC82AC9kYXJrMjgvNgAvc2V0MTgvNgAvcGFzdGVsMTgvNgAvcmRneTcvNgAvYnVwdTcvNgAvcmRwdTcvNgAvcHVidTcvNgAveWxnbmJ1Ny82AC9nbmJ1Ny82AC9yZHlsYnU3LzYAL3JkYnU3LzYAL2FjY2VudDcvNgAvZ3JleXM3LzYAL2dyZWVuczcvNgAvYmx1ZXM3LzYAL3B1cnBsZXM3LzYAL29yYW5nZXM3LzYAL3JlZHM3LzYAL3B1b3I3LzYAL3lsb3JicjcvNgAvcHVidWduNy82AC9idWduNy82AC9wcmduNy82AC9yZHlsZ243LzYAL3lsZ243LzYAL3NwZWN0cmFsNy82AC9waXlnNy82AC9icmJnNy82AC9wdXJkNy82AC95bG9ycmQ3LzYAL29ycmQ3LzYAL3BhaXJlZDcvNgAvc2V0MzcvNgAvc2V0MjcvNgAvcGFzdGVsMjcvNgAvZGFyazI3LzYAL3NldDE3LzYAL3Bhc3RlbDE3LzYAL3JkZ3k2LzYAL2J1cHU2LzYAL3JkcHU2LzYAL3B1YnU2LzYAL3lsZ25idTYvNgAvZ25idTYvNgAvcmR5bGJ1Ni82AC9yZGJ1Ni82AC9hY2NlbnQ2LzYAL2dyZXlzNi82AC9ncmVlbnM2LzYAL2JsdWVzNi82AC9wdXJwbGVzNi82AC9vcmFuZ2VzNi82AC9yZWRzNi82AC9wdW9yNi82AC95bG9yYnI2LzYAL3B1YnVnbjYvNgAvYnVnbjYvNgAvcHJnbjYvNgAvcmR5bGduNi82AC95bGduNi82AC9zcGVjdHJhbDYvNgAvcGl5ZzYvNgAvYnJiZzYvNgAvcHVyZDYvNgAveWxvcnJkNi82AC9vcnJkNi82AC9wYWlyZWQ2LzYAL3NldDM2LzYAL3NldDI2LzYAL3Bhc3RlbDI2LzYAL2RhcmsyNi82AC9zZXQxNi82AC9wYXN0ZWwxNi82AC9wYWlyZWQxMi82AC9zZXQzMTIvNgAvcmRneTExLzYAL3JkeWxidTExLzYAL3JkYnUxMS82AC9wdW9yMTEvNgAvcHJnbjExLzYAL3JkeWxnbjExLzYAL3NwZWN0cmFsMTEvNgAvcGl5ZzExLzYAL2JyYmcxMS82AC9wYWlyZWQxMS82AC9zZXQzMTEvNgAvcmRneTEwLzYAL3JkeWxidTEwLzYAL3JkYnUxMC82AC9wdW9yMTAvNgAvcHJnbjEwLzYAL3JkeWxnbjEwLzYAL3NwZWN0cmFsMTAvNgAvcGl5ZzEwLzYAL2JyYmcxMC82AC9wYWlyZWQxMC82AC9zZXQzMTAvNgBncmV5NQBncmF5NQBceDUAYmlnNQBceEY1AFx4RTUAXHhENQBceEM1AFx4QjUAXHhBNQBncmV5OTUAZ3JheTk1AFx4OTUAZ3JleTg1AGdyYXk4NQBceDg1AGdyZXk3NQBncmF5NzUAZ3JleTY1AGdyYXk2NQBncmV5NTUAZ3JheTU1AGdyZXk0NQBncmF5NDUAZ3JleTM1AGdyYXkzNQBncmV5MjUAZ3JheTI1AGdyZXkxNQBncmF5MTUAXHgxNQBncmF5MDUAL3JkZ3k5LzUAL2J1cHU5LzUAL3JkcHU5LzUAL3B1YnU5LzUAL3lsZ25idTkvNQAvZ25idTkvNQAvcmR5bGJ1OS81AC9yZGJ1OS81AC9ncmV5czkvNQAvZ3JlZW5zOS81AC9ibHVlczkvNQAvcHVycGxlczkvNQAvb3JhbmdlczkvNQAvcmVkczkvNQAvcHVvcjkvNQAveWxvcmJyOS81AC9wdWJ1Z245LzUAL2J1Z245LzUAL3ByZ245LzUAL3JkeWxnbjkvNQAveWxnbjkvNQAvc3BlY3RyYWw5LzUAL3BpeWc5LzUAL2JyYmc5LzUAL3B1cmQ5LzUAL3lsb3JyZDkvNQAvb3JyZDkvNQAvcGFpcmVkOS81AC9zZXQzOS81AC9zZXQxOS81AC9wYXN0ZWwxOS81AC9yZGd5OC81AC9idXB1OC81AC9yZHB1OC81AC9wdWJ1OC81AC95bGduYnU4LzUAL2duYnU4LzUAL3JkeWxidTgvNQAvcmRidTgvNQAvYWNjZW50OC81AC9ncmV5czgvNQAvZ3JlZW5zOC81AC9ibHVlczgvNQAvcHVycGxlczgvNQAvb3JhbmdlczgvNQAvcmVkczgvNQAvcHVvcjgvNQAveWxvcmJyOC81AC9wdWJ1Z244LzUAL2J1Z244LzUAL3ByZ244LzUAL3JkeWxnbjgvNQAveWxnbjgvNQAvc3BlY3RyYWw4LzUAL3BpeWc4LzUAL2JyYmc4LzUAL3B1cmQ4LzUAL3lsb3JyZDgvNQAvb3JyZDgvNQAvcGFpcmVkOC81AC9zZXQzOC81AC9zZXQyOC81AC9wYXN0ZWwyOC81AC9kYXJrMjgvNQAvc2V0MTgvNQAvcGFzdGVsMTgvNQAvcmRneTcvNQAvYnVwdTcvNQAvcmRwdTcvNQAvcHVidTcvNQAveWxnbmJ1Ny81AC9nbmJ1Ny81AC9yZHlsYnU3LzUAL3JkYnU3LzUAL2FjY2VudDcvNQAvZ3JleXM3LzUAL2dyZWVuczcvNQAvYmx1ZXM3LzUAL3B1cnBsZXM3LzUAL29yYW5nZXM3LzUAL3JlZHM3LzUAL3B1b3I3LzUAL3lsb3JicjcvNQAvcHVidWduNy81AC9idWduNy81AC9wcmduNy81AC9yZHlsZ243LzUAL3lsZ243LzUAL3NwZWN0cmFsNy81AC9waXlnNy81AC9icmJnNy81AC9wdXJkNy81AC95bG9ycmQ3LzUAL29ycmQ3LzUAL3BhaXJlZDcvNQAvc2V0MzcvNQAvc2V0MjcvNQAvcGFzdGVsMjcvNQAvZGFyazI3LzUAL3NldDE3LzUAL3Bhc3RlbDE3LzUAL3JkZ3k2LzUAL2J1cHU2LzUAL3JkcHU2LzUAL3B1YnU2LzUAL3lsZ25idTYvNQAvZ25idTYvNQAvcmR5bGJ1Ni81AC9yZGJ1Ni81AC9hY2NlbnQ2LzUAL2dyZXlzNi81AC9ncmVlbnM2LzUAL2JsdWVzNi81AC9wdXJwbGVzNi81AC9vcmFuZ2VzNi81AC9yZWRzNi81AC9wdW9yNi81AC95bG9yYnI2LzUAL3B1YnVnbjYvNQAvYnVnbjYvNQAvcHJnbjYvNQAvcmR5bGduNi81AC95bGduNi81AC9zcGVjdHJhbDYvNQAvcGl5ZzYvNQAvYnJiZzYvNQAvcHVyZDYvNQAveWxvcnJkNi81AC9vcnJkNi81AC9wYWlyZWQ2LzUAL3NldDM2LzUAL3NldDI2LzUAL3Bhc3RlbDI2LzUAL2RhcmsyNi81AC9zZXQxNi81AC9wYXN0ZWwxNi81AC9yZGd5NS81AC9idXB1NS81AC9yZHB1NS81AC9wdWJ1NS81AC95bGduYnU1LzUAL2duYnU1LzUAL3JkeWxidTUvNQAvcmRidTUvNQAvYWNjZW50NS81AC9ncmV5czUvNQAvZ3JlZW5zNS81AC9ibHVlczUvNQAvcHVycGxlczUvNQAvb3JhbmdlczUvNQAvcmVkczUvNQAvcHVvcjUvNQAveWxvcmJyNS81AC9wdWJ1Z241LzUAL2J1Z241LzUAL3ByZ241LzUAL3JkeWxnbjUvNQAveWxnbjUvNQAvc3BlY3RyYWw1LzUAL3BpeWc1LzUAL2JyYmc1LzUAL3B1cmQ1LzUAL3lsb3JyZDUvNQAvb3JyZDUvNQAvcGFpcmVkNS81AC9zZXQzNS81AC9zZXQyNS81AC9wYXN0ZWwyNS81AC9kYXJrMjUvNQAvc2V0MTUvNQAvcGFzdGVsMTUvNQAvcGFpcmVkMTIvNQAvc2V0MzEyLzUAL3JkZ3kxMS81AC9yZHlsYnUxMS81AC9yZGJ1MTEvNQAvcHVvcjExLzUAL3ByZ24xMS81AC9yZHlsZ24xMS81AC9zcGVjdHJhbDExLzUAL3BpeWcxMS81AC9icmJnMTEvNQAvcGFpcmVkMTEvNQAvc2V0MzExLzUAL3JkZ3kxMC81AC9yZHlsYnUxMC81AC9yZGJ1MTAvNQAvcHVvcjEwLzUAL3ByZ24xMC81AC9yZHlsZ24xMC81AC9zcGVjdHJhbDEwLzUAL3BpeWcxMC81AC9icmJnMTAvNQAvcGFpcmVkMTAvNQAvc2V0MzEwLzUAYmlnLTUAQklHLTUAIC1kYXNoIDUAaXZvcnk0AGdyZXk0AGRhcmtzbGF0ZWdyYXk0AFx4NABzbm93NABsaWdodHllbGxvdzQAaG9uZXlkZXc0AHdoZWF0NAB0b21hdG80AHJvc3licm93bjQAbWFyb29uNABsaWdodHNhbG1vbjQAbGVtb25jaGlmZm9uNABzcHJpbmdncmVlbjQAZGFya29saXZlZ3JlZW40AHBhbGVncmVlbjQAZGFya3NlYWdyZWVuNABsaWdodGN5YW40AHRhbjQAcGx1bTQAc2Vhc2hlbGw0AGNvcmFsNABob3RwaW5rNABsaWdodHBpbms0AGRlZXBwaW5rNABjb3Juc2lsazQAZmlyZWJyaWNrNABraGFraTQAbGF2ZW5kZXJibHVzaDQAcGVhY2hwdWZmNABiaXNxdWU0AGxpZ2h0c2t5Ymx1ZTQAZGVlcHNreWJsdWU0AGxpZ2h0Ymx1ZTQAY2FkZXRibHVlNABkb2RnZXJibHVlNABsaWdodHN0ZWVsYmx1ZTQAcm95YWxibHVlNABzbGF0ZWJsdWU0AG5hdmFqb3doaXRlNABhbnRpcXVld2hpdGU0AGNob2NvbGF0ZTQAY2hhcnRyZXVzZTQAbWlzdHlyb3NlNABwYWxldHVycXVvaXNlNABhenVyZTQAdGhlcmU0AGFxdWFtYXJpbmU0AHRoaXN0bGU0AG1lZGl1bXB1cnBsZTQAZGFya29yYW5nZTQAbGlnaHRnb2xkZW5yb2Q0AGRhcmtnb2xkZW5yb2Q0AGJ1cmx5d29vZDQAZ29sZDQAbWVkaXVtb3JjaGlkNABkYXJrb3JjaGlkNABwYWxldmlvbGV0cmVkNABpbmRpYW5yZWQ0AG9yYW5nZXJlZDQAb2xpdmVkcmFiNABtYWdlbnRhNABzaWVubmE0AFx4RjQAXHhFNABceEQ0AFx4QzQAXHhCNABceEE0AGdyZXk5NABncmF5OTQAXHg5NABncmV5ODQAZ3JheTg0AFx4ODQAZ3JleTc0AGdyYXk3NABncmV5NjQAZ3JheTY0AGdyZXk1NABncmF5NTQAMjAyNjAzMDMuMDQ1NABncmV5NDQAZ3JheTQ0AGdyZXkzNABncmF5MzQAZnJhYzM0AGdyZXkyNABncmF5MjQAZ3JleTE0AGdyYXkxNABceDE0AGZyYWMxNAAvcmRneTkvNAAvYnVwdTkvNAAvcmRwdTkvNAAvcHVidTkvNAAveWxnbmJ1OS80AC9nbmJ1OS80AC9yZHlsYnU5LzQAL3JkYnU5LzQAL2dyZXlzOS80AC9ncmVlbnM5LzQAL2JsdWVzOS80AC9wdXJwbGVzOS80AC9vcmFuZ2VzOS80AC9yZWRzOS80AC9wdW9yOS80AC95bG9yYnI5LzQAL3B1YnVnbjkvNAAvYnVnbjkvNAAvcHJnbjkvNAAvcmR5bGduOS80AC95bGduOS80AC9zcGVjdHJhbDkvNAAvcGl5ZzkvNAAvYnJiZzkvNAAvcHVyZDkvNAAveWxvcnJkOS80AC9vcnJkOS80AC9wYWlyZWQ5LzQAL3NldDM5LzQAL3NldDE5LzQAL3Bhc3RlbDE5LzQAL3JkZ3k4LzQAL2J1cHU4LzQAL3JkcHU4LzQAL3B1YnU4LzQAL3lsZ25idTgvNAAvZ25idTgvNAAvcmR5bGJ1OC80AC9yZGJ1OC80AC9hY2NlbnQ4LzQAL2dyZXlzOC80AC9ncmVlbnM4LzQAL2JsdWVzOC80AC9wdXJwbGVzOC80AC9vcmFuZ2VzOC80AC9yZWRzOC80AC9wdW9yOC80AC95bG9yYnI4LzQAL3B1YnVnbjgvNAAvYnVnbjgvNAAvcHJnbjgvNAAvcmR5bGduOC80AC95bGduOC80AC9zcGVjdHJhbDgvNAAvcGl5ZzgvNAAvYnJiZzgvNAAvcHVyZDgvNAAveWxvcnJkOC80AC9vcnJkOC80AC9wYWlyZWQ4LzQAL3NldDM4LzQAL3NldDI4LzQAL3Bhc3RlbDI4LzQAL2RhcmsyOC80AC9zZXQxOC80AC9wYXN0ZWwxOC80AC9yZGd5Ny80AC9idXB1Ny80AC9yZHB1Ny80AC9wdWJ1Ny80AC95bGduYnU3LzQAL2duYnU3LzQAL3JkeWxidTcvNAAvcmRidTcvNAAvYWNjZW50Ny80AC9ncmV5czcvNAAvZ3JlZW5zNy80AC9ibHVlczcvNAAvcHVycGxlczcvNAAvb3JhbmdlczcvNAAvcmVkczcvNAAvcHVvcjcvNAAveWxvcmJyNy80AC9wdWJ1Z243LzQAL2J1Z243LzQAL3ByZ243LzQAL3JkeWxnbjcvNAAveWxnbjcvNAAvc3BlY3RyYWw3LzQAL3BpeWc3LzQAL2JyYmc3LzQAL3B1cmQ3LzQAL3lsb3JyZDcvNAAvb3JyZDcvNAAvcGFpcmVkNy80AC9zZXQzNy80AC9zZXQyNy80AC9wYXN0ZWwyNy80AC9kYXJrMjcvNAAvc2V0MTcvNAAvcGFzdGVsMTcvNAAvcmRneTYvNAAvYnVwdTYvNAAvcmRwdTYvNAAvcHVidTYvNAAveWxnbmJ1Ni80AC9nbmJ1Ni80AC9yZHlsYnU2LzQAL3JkYnU2LzQAL2FjY2VudDYvNAAvZ3JleXM2LzQAL2dyZWVuczYvNAAvYmx1ZXM2LzQAL3B1cnBsZXM2LzQAL29yYW5nZXM2LzQAL3JlZHM2LzQAL3B1b3I2LzQAL3lsb3JicjYvNAAvcHVidWduNi80AC9idWduNi80AC9wcmduNi80AC9yZHlsZ242LzQAL3lsZ242LzQAL3NwZWN0cmFsNi80AC9waXlnNi80AC9icmJnNi80AC9wdXJkNi80AC95bG9ycmQ2LzQAL29ycmQ2LzQAL3BhaXJlZDYvNAAvc2V0MzYvNAAvc2V0MjYvNAAvcGFzdGVsMjYvNAAvZGFyazI2LzQAL3NldDE2LzQAL3Bhc3RlbDE2LzQAL3JkZ3k1LzQAL2J1cHU1LzQAL3JkcHU1LzQAL3B1YnU1LzQAL3lsZ25idTUvNAAvZ25idTUvNAAvcmR5bGJ1NS80AC9yZGJ1NS80AC9hY2NlbnQ1LzQAL2dyZXlzNS80AC9ncmVlbnM1LzQAL2JsdWVzNS80AC9wdXJwbGVzNS80AC9vcmFuZ2VzNS80AC9yZWRzNS80AC9wdW9yNS80AC95bG9yYnI1LzQAL3B1YnVnbjUvNAAvYnVnbjUvNAAvcHJnbjUvNAAvcmR5bGduNS80AC95bGduNS80AC9zcGVjdHJhbDUvNAAvcGl5ZzUvNAAvYnJiZzUvNAAvcHVyZDUvNAAveWxvcnJkNS80AC9vcnJkNS80AC9wYWlyZWQ1LzQAL3NldDM1LzQAL3NldDI1LzQAL3Bhc3RlbDI1LzQAL2RhcmsyNS80AC9zZXQxNS80AC9wYXN0ZWwxNS80AC9yZGd5NC80AC9idXB1NC80AC9yZHB1NC80AC9wdWJ1NC80AC95bGduYnU0LzQAL2duYnU0LzQAL3JkeWxidTQvNAAvcmRidTQvNAAvYWNjZW50NC80AC9ncmV5czQvNAAvZ3JlZW5zNC80AC9ibHVlczQvNAAvcHVycGxlczQvNAAvb3JhbmdlczQvNAAvcmVkczQvNAAvcHVvcjQvNAAveWxvcmJyNC80AC9wdWJ1Z240LzQAL2J1Z240LzQAL3ByZ240LzQAL3JkeWxnbjQvNAAveWxnbjQvNAAvc3BlY3RyYWw0LzQAL3BpeWc0LzQAL2JyYmc0LzQAL3B1cmQ0LzQAL3lsb3JyZDQvNAAvb3JyZDQvNAAvcGFpcmVkNC80AC9zZXQzNC80AC9zZXQyNC80AC9wYXN0ZWwyNC80AC9kYXJrMjQvNAAvc2V0MTQvNAAvcGFzdGVsMTQvNAAvcGFpcmVkMTIvNAAvc2V0MzEyLzQAL3JkZ3kxMS80AC9yZHlsYnUxMS80AC9yZGJ1MTEvNAAvcHVvcjExLzQAL3ByZ24xMS80AC9yZHlsZ24xMS80AC9zcGVjdHJhbDExLzQAL3BpeWcxMS80AC9icmJnMTEvNAAvcGFpcmVkMTEvNAAvc2V0MzExLzQAL3JkZ3kxMC80AC9yZHlsYnUxMC80AC9yZGJ1MTAvNAAvcHVvcjEwLzQAL3ByZ24xMC80AC9yZHlsZ24xMC80AC9zcGVjdHJhbDEwLzQAL3BpeWcxMC80AC9icmJnMTAvNAAvcGFpcmVkMTAvNAAvc2V0MzEwLzQAMS40AG4gPj0gNABzaWRlcyA9PSA0AGl2b3J5MwBTcGFyc2VNYXRyaXhfbXVsdGlwbHkzAGdyZXkzAGRhcmtzbGF0ZWdyYXkzAFx4MwBzbm93MwBsaWdodHllbGxvdzMAaG9uZXlkZXczAHdoZWF0MwBzdXAzAHRvbWF0bzMAcm9zeWJyb3duMwBtYXJvb24zAGxpZ2h0c2FsbW9uMwBsZW1vbmNoaWZmb24zAHNwcmluZ2dyZWVuMwBkYXJrb2xpdmVncmVlbjMAcGFsZWdyZWVuMwBkYXJrc2VhZ3JlZW4zAGxpZ2h0Y3lhbjMAdGFuMwBwbHVtMwBzZWFzaGVsbDMAY29yYWwzAGhvdHBpbmszAGxpZ2h0cGluazMAZGVlcHBpbmszAGNvcm5zaWxrMwBmaXJlYnJpY2szAGtoYWtpMwBsYXZlbmRlcmJsdXNoMwBwZWFjaHB1ZmYzAGJpc3F1ZTMAbGlnaHRza3libHVlMwBkZWVwc2t5Ymx1ZTMAbGlnaHRibHVlMwBjYWRldGJsdWUzAGRvZGdlcmJsdWUzAGxpZ2h0c3RlZWxibHVlMwByb3lhbGJsdWUzAHNsYXRlYmx1ZTMAbmF2YWpvd2hpdGUzAGFudGlxdWV3aGl0ZTMAY2hvY29sYXRlMwBjaGFydHJldXNlMwBtaXN0eXJvc2UzAHBhbGV0dXJxdW9pc2UzAGF6dXJlMwBhcXVhbWFyaW5lMwB0aGlzdGxlMwBtZWRpdW1wdXJwbGUzAGRhcmtvcmFuZ2UzAGxpZ2h0Z29sZGVucm9kMwBkYXJrZ29sZGVucm9kMwBidXJseXdvb2QzAGdvbGQzAG1lZGl1bW9yY2hpZDMAZGFya29yY2hpZDMAcGFsZXZpb2xldHJlZDMAaW5kaWFucmVkMwBvcmFuZ2VyZWQzAG9saXZlZHJhYjMAbWFnZW50YTMAc2llbm5hMwBceEYzAFx4RTMAXHhEMwBceEMzAFx4QjMAXHhBMwBncmV5OTMAZ3JheTkzAFx4OTMAZ3JleTgzAGdyYXk4MwBceDgzAGdyZXk3MwBncmF5NzMAZ3JleTYzAGdyYXk2MwBncmV5NTMAZ3JheTUzAFNUU0laRShuZXh0KSA8PSBVSU5UNjRfQygxKSA8PCA1MwBTVFNJWkUobikgPD0gVUlOVDY0X0MoMSkgPDwgNTMAZ3JleTQzAGdyYXk0MwBncmV5MzMAZ3JheTMzAGdyZXkyMwBncmF5MjMAZ3JleTEzAGdyYXkxMwBceDEzAC9yZGd5OS8zAC9idXB1OS8zAC9yZHB1OS8zAC9wdWJ1OS8zAC95bGduYnU5LzMAL2duYnU5LzMAL3JkeWxidTkvMwAvcmRidTkvMwAvZ3JleXM5LzMAL2dyZWVuczkvMwAvYmx1ZXM5LzMAL3B1cnBsZXM5LzMAL29yYW5nZXM5LzMAL3JlZHM5LzMAL3B1b3I5LzMAL3lsb3JicjkvMwAvcHVidWduOS8zAC9idWduOS8zAC9wcmduOS8zAC9yZHlsZ245LzMAL3lsZ245LzMAL3NwZWN0cmFsOS8zAC9waXlnOS8zAC9icmJnOS8zAC9wdXJkOS8zAC95bG9ycmQ5LzMAL29ycmQ5LzMAL3BhaXJlZDkvMwAvc2V0MzkvMwAvc2V0MTkvMwAvcGFzdGVsMTkvMwAvcmRneTgvMwAvYnVwdTgvMwAvcmRwdTgvMwAvcHVidTgvMwAveWxnbmJ1OC8zAC9nbmJ1OC8zAC9yZHlsYnU4LzMAL3JkYnU4LzMAL2FjY2VudDgvMwAvZ3JleXM4LzMAL2dyZWVuczgvMwAvYmx1ZXM4LzMAL3B1cnBsZXM4LzMAL29yYW5nZXM4LzMAL3JlZHM4LzMAL3B1b3I4LzMAL3lsb3JicjgvMwAvcHVidWduOC8zAC9idWduOC8zAC9wcmduOC8zAC9yZHlsZ244LzMAL3lsZ244LzMAL3NwZWN0cmFsOC8zAC9waXlnOC8zAC9icmJnOC8zAC9wdXJkOC8zAC95bG9ycmQ4LzMAL29ycmQ4LzMAL3BhaXJlZDgvMwAvc2V0MzgvMwAvc2V0MjgvMwAvcGFzdGVsMjgvMwAvZGFyazI4LzMAL3NldDE4LzMAL3Bhc3RlbDE4LzMAL3JkZ3k3LzMAL2J1cHU3LzMAL3JkcHU3LzMAL3B1YnU3LzMAL3lsZ25idTcvMwAvZ25idTcvMwAvcmR5bGJ1Ny8zAC9yZGJ1Ny8zAC9hY2NlbnQ3LzMAL2dyZXlzNy8zAC9ncmVlbnM3LzMAL2JsdWVzNy8zAC9wdXJwbGVzNy8zAC9vcmFuZ2VzNy8zAC9yZWRzNy8zAC9wdW9yNy8zAC95bG9yYnI3LzMAL3B1YnVnbjcvMwAvYnVnbjcvMwAvcHJnbjcvMwAvcmR5bGduNy8zAC95bGduNy8zAC9zcGVjdHJhbDcvMwAvcGl5ZzcvMwAvYnJiZzcvMwAvcHVyZDcvMwAveWxvcnJkNy8zAC9vcnJkNy8zAC9wYWlyZWQ3LzMAL3NldDM3LzMAL3NldDI3LzMAL3Bhc3RlbDI3LzMAL2RhcmsyNy8zAC9zZXQxNy8zAC9wYXN0ZWwxNy8zAC9yZGd5Ni8zAC9idXB1Ni8zAC9yZHB1Ni8zAC9wdWJ1Ni8zAC95bGduYnU2LzMAL2duYnU2LzMAL3JkeWxidTYvMwAvcmRidTYvMwAvYWNjZW50Ni8zAC9ncmV5czYvMwAvZ3JlZW5zNi8zAC9ibHVlczYvMwAvcHVycGxlczYvMwAvb3JhbmdlczYvMwAvcmVkczYvMwAvcHVvcjYvMwAveWxvcmJyNi8zAC9wdWJ1Z242LzMAL2J1Z242LzMAL3ByZ242LzMAL3JkeWxnbjYvMwAveWxnbjYvMwAvc3BlY3RyYWw2LzMAL3BpeWc2LzMAL2JyYmc2LzMAL3B1cmQ2LzMAL3lsb3JyZDYvMwAvb3JyZDYvMwAvcGFpcmVkNi8zAC9zZXQzNi8zAC9zZXQyNi8zAC9wYXN0ZWwyNi8zAC9kYXJrMjYvMwAvc2V0MTYvMwAvcGFzdGVsMTYvMwAvcmRneTUvMwAvYnVwdTUvMwAvcmRwdTUvMwAvcHVidTUvMwAveWxnbmJ1NS8zAC9nbmJ1NS8zAC9yZHlsYnU1LzMAL3JkYnU1LzMAL2FjY2VudDUvMwAvZ3JleXM1LzMAL2dyZWVuczUvMwAvYmx1ZXM1LzMAL3B1cnBsZXM1LzMAL29yYW5nZXM1LzMAL3JlZHM1LzMAL3B1b3I1LzMAL3lsb3JicjUvMwAvcHVidWduNS8zAC9idWduNS8zAC9wcmduNS8zAC9yZHlsZ241LzMAL3lsZ241LzMAL3NwZWN0cmFsNS8zAC9waXlnNS8zAC9icmJnNS8zAC9wdXJkNS8zAC95bG9ycmQ1LzMAL29ycmQ1LzMAL3BhaXJlZDUvMwAvc2V0MzUvMwAvc2V0MjUvMwAvcGFzdGVsMjUvMwAvZGFyazI1LzMAL3NldDE1LzMAL3Bhc3RlbDE1LzMAL3JkZ3k0LzMAL2J1cHU0LzMAL3JkcHU0LzMAL3B1YnU0LzMAL3lsZ25idTQvMwAvZ25idTQvMwAvcmR5bGJ1NC8zAC9yZGJ1NC8zAC9hY2NlbnQ0LzMAL2dyZXlzNC8zAC9ncmVlbnM0LzMAL2JsdWVzNC8zAC9wdXJwbGVzNC8zAC9vcmFuZ2VzNC8zAC9yZWRzNC8zAC9wdW9yNC8zAC95bG9yYnI0LzMAL3B1YnVnbjQvMwAvYnVnbjQvMwAvcHJnbjQvMwAvcmR5bGduNC8zAC95bGduNC8zAC9zcGVjdHJhbDQvMwAvcGl5ZzQvMwAvYnJiZzQvMwAvcHVyZDQvMwAveWxvcnJkNC8zAC9vcnJkNC8zAC9wYWlyZWQ0LzMAL3NldDM0LzMAL3NldDI0LzMAL3Bhc3RlbDI0LzMAL2RhcmsyNC8zAC9zZXQxNC8zAC9wYXN0ZWwxNC8zAC9yZGd5My8zAC9idXB1My8zAC9yZHB1My8zAC9wdWJ1My8zAC95bGduYnUzLzMAL2duYnUzLzMAL3JkeWxidTMvMwAvcmRidTMvMwAvYWNjZW50My8zAC9ncmV5czMvMwAvZ3JlZW5zMy8zAC9ibHVlczMvMwAvcHVycGxlczMvMwAvb3JhbmdlczMvMwAvcmVkczMvMwAvcHVvcjMvMwAveWxvcmJyMy8zAC9wdWJ1Z24zLzMAL2J1Z24zLzMAL3ByZ24zLzMAL3JkeWxnbjMvMwAveWxnbjMvMwAvc3BlY3RyYWwzLzMAL3BpeWczLzMAL2JyYmczLzMAL3B1cmQzLzMAL3lsb3JyZDMvMwAvb3JyZDMvMwAvcGFpcmVkMy8zAC9zZXQzMy8zAC9zZXQyMy8zAC9wYXN0ZWwyMy8zAC9kYXJrMjMvMwAvc2V0MTMvMwAvcGFzdGVsMTMvMwAvcGFpcmVkMTIvMwAvc2V0MzEyLzMAL3JkZ3kxMS8zAC9yZHlsYnUxMS8zAC9yZGJ1MTEvMwAvcHVvcjExLzMAL3ByZ24xMS8zAC9yZHlsZ24xMS8zAC9zcGVjdHJhbDExLzMAL3BpeWcxMS8zAC9icmJnMTEvMwAvcGFpcmVkMTEvMwAvc2V0MzExLzMAL3JkZ3kxMC8zAC9yZHlsYnUxMC8zAC9yZGJ1MTAvMwAvcHVvcjEwLzMAL3ByZ24xMC8zAC9yZHlsZ24xMC8zAC9zcGVjdHJhbDEwLzMAL3BpeWcxMC8zAC9icmJnMTAvMwAvcGFpcmVkMTAvMwAvc2V0MzEwLzMAMTQuMS4zAGl2b3J5MgBncmV5MgBkYXJrc2xhdGVncmF5MgBceDIAc25vdzIAbGlnaHR5ZWxsb3cyAGhvbmV5ZGV3MgBSVHJlZUluc2VydDIAd2hlYXQyAHN1cDIAbm9wMgB0b21hdG8yAHJvc3licm93bjIAbWFyb29uMgBsaWdodHNhbG1vbjIAbGVtb25jaGlmZm9uMgBzcHJpbmdncmVlbjIAZGFya29saXZlZ3JlZW4yAHBhbGVncmVlbjIAZGFya3NlYWdyZWVuMgBsaWdodGN5YW4yAHRhbjIAcGx1bTIAc2Vhc2hlbGwyAGNvcmFsMgBob3RwaW5rMgBsaWdodHBpbmsyAGRlZXBwaW5rMgBjb3Juc2lsazIAZmlyZWJyaWNrMgBraGFraTIAbGF2ZW5kZXJibHVzaDIAcGVhY2hwdWZmMgBicm9uemUyAGJpc3F1ZTIAbGlnaHRza3libHVlMgBkZWVwc2t5Ymx1ZTIAbGlnaHRibHVlMgBjYWRldGJsdWUyAGRvZGdlcmJsdWUyAGxpZ2h0c3RlZWxibHVlMgByb3lhbGJsdWUyAHNsYXRlYmx1ZTIAbmF2YWpvd2hpdGUyAGFudGlxdWV3aGl0ZTIAY2hvY29sYXRlMgBjaGFydHJldXNlMgBtaXN0eXJvc2UyAHBhbGV0dXJxdW9pc2UyAGF6dXJlMgBhcXVhbWFyaW5lMgB0aGlzdGxlMgBtZWRpdW1wdXJwbGUyAGRhcmtvcmFuZ2UyAGxpZ2h0Z29sZGVucm9kMgBkYXJrZ29sZGVucm9kMgBidXJseXdvb2QyAGdvbGQyAG1lZGl1bW9yY2hpZDIAZGFya29yY2hpZDIAcGFsZXZpb2xldHJlZDIAaW5kaWFucmVkMgBvcmFuZ2VyZWQyAG9saXZlZHJhYjIAbWFnZW50YTIAc2llbm5hMgBceEYyAFx4RTIAXHhEMgBceEMyAFx4QjIAXHhBMgBncmV5OTIAZ3JheTkyAFx4OTIAZ3JleTgyAGdyYXk4MgBceDgyAGdyZXk3MgBncmF5NzIAZ3JleTYyAGdyYXk2MgBncmV5NTIAZ3JheTUyAGdyZXk0MgBncmF5NDIAZ3JleTMyAGdyYXkzMgBncmV5MjIAZ3JheTIyAGdyZXkxMgBncmF5MTIAXHgxMgBmcmFjMTIAL3BhaXJlZDEyLzEyAC9zZXQzMTIvMTIAL3JkZ3k5LzIAL2J1cHU5LzIAL3JkcHU5LzIAL3B1YnU5LzIAL3lsZ25idTkvMgAvZ25idTkvMgAvcmR5bGJ1OS8yAC9yZGJ1OS8yAC9ncmV5czkvMgAvZ3JlZW5zOS8yAC9ibHVlczkvMgAvcHVycGxlczkvMgAvb3JhbmdlczkvMgAvcmVkczkvMgAvcHVvcjkvMgAveWxvcmJyOS8yAC9wdWJ1Z245LzIAL2J1Z245LzIAL3ByZ245LzIAL3JkeWxnbjkvMgAveWxnbjkvMgAvc3BlY3RyYWw5LzIAL3BpeWc5LzIAL2JyYmc5LzIAL3B1cmQ5LzIAL3lsb3JyZDkvMgAvb3JyZDkvMgAvcGFpcmVkOS8yAC9zZXQzOS8yAC9zZXQxOS8yAC9wYXN0ZWwxOS8yAC9yZGd5OC8yAC9idXB1OC8yAC9yZHB1OC8yAC9wdWJ1OC8yAC95bGduYnU4LzIAL2duYnU4LzIAL3JkeWxidTgvMgAvcmRidTgvMgAvYWNjZW50OC8yAC9ncmV5czgvMgAvZ3JlZW5zOC8yAC9ibHVlczgvMgAvcHVycGxlczgvMgAvb3JhbmdlczgvMgAvcmVkczgvMgAvcHVvcjgvMgAveWxvcmJyOC8yAC9wdWJ1Z244LzIAL2J1Z244LzIAL3ByZ244LzIAL3JkeWxnbjgvMgAveWxnbjgvMgAvc3BlY3RyYWw4LzIAL3BpeWc4LzIAL2JyYmc4LzIAL3B1cmQ4LzIAL3lsb3JyZDgvMgAvb3JyZDgvMgAvcGFpcmVkOC8yAC9zZXQzOC8yAC9zZXQyOC8yAC9wYXN0ZWwyOC8yAC9kYXJrMjgvMgAvc2V0MTgvMgAvcGFzdGVsMTgvMgAvcmRneTcvMgAvYnVwdTcvMgAvcmRwdTcvMgAvcHVidTcvMgAveWxnbmJ1Ny8yAC9nbmJ1Ny8yAC9yZHlsYnU3LzIAL3JkYnU3LzIAL2FjY2VudDcvMgAvZ3JleXM3LzIAL2dyZWVuczcvMgAvYmx1ZXM3LzIAL3B1cnBsZXM3LzIAL29yYW5nZXM3LzIAL3JlZHM3LzIAL3B1b3I3LzIAL3lsb3JicjcvMgAvcHVidWduNy8yAC9idWduNy8yAC9wcmduNy8yAC9yZHlsZ243LzIAL3lsZ243LzIAL3NwZWN0cmFsNy8yAC9waXlnNy8yAC9icmJnNy8yAC9wdXJkNy8yAC95bG9ycmQ3LzIAL29ycmQ3LzIAL3BhaXJlZDcvMgAvc2V0MzcvMgAvc2V0MjcvMgAvcGFzdGVsMjcvMgAvZGFyazI3LzIAL3NldDE3LzIAL3Bhc3RlbDE3LzIAL3JkZ3k2LzIAL2J1cHU2LzIAL3JkcHU2LzIAL3B1YnU2LzIAL3lsZ25idTYvMgAvZ25idTYvMgAvcmR5bGJ1Ni8yAC9yZGJ1Ni8yAC9hY2NlbnQ2LzIAL2dyZXlzNi8yAC9ncmVlbnM2LzIAL2JsdWVzNi8yAC9wdXJwbGVzNi8yAC9vcmFuZ2VzNi8yAC9yZWRzNi8yAC9wdW9yNi8yAC95bG9yYnI2LzIAL3B1YnVnbjYvMgAvYnVnbjYvMgAvcHJnbjYvMgAvcmR5bGduNi8yAC95bGduNi8yAC9zcGVjdHJhbDYvMgAvcGl5ZzYvMgAvYnJiZzYvMgAvcHVyZDYvMgAveWxvcnJkNi8yAC9vcnJkNi8yAC9wYWlyZWQ2LzIAL3NldDM2LzIAL3NldDI2LzIAL3Bhc3RlbDI2LzIAL2RhcmsyNi8yAC9zZXQxNi8yAC9wYXN0ZWwxNi8yAC9yZGd5NS8yAC9idXB1NS8yAC9yZHB1NS8yAC9wdWJ1NS8yAC95bGduYnU1LzIAL2duYnU1LzIAL3JkeWxidTUvMgAvcmRidTUvMgAvYWNjZW50NS8yAC9ncmV5czUvMgAvZ3JlZW5zNS8yAC9ibHVlczUvMgAvcHVycGxlczUvMgAvb3JhbmdlczUvMgAvcmVkczUvMgAvcHVvcjUvMgAveWxvcmJyNS8yAC9wdWJ1Z241LzIAL2J1Z241LzIAL3ByZ241LzIAL3JkeWxnbjUvMgAveWxnbjUvMgAvc3BlY3RyYWw1LzIAL3BpeWc1LzIAL2JyYmc1LzIAL3B1cmQ1LzIAL3lsb3JyZDUvMgAvb3JyZDUvMgAvcGFpcmVkNS8yAC9zZXQzNS8yAC9zZXQyNS8yAC9wYXN0ZWwyNS8yAC9kYXJrMjUvMgAvc2V0MTUvMgAvcGFzdGVsMTUvMgAvcmRneTQvMgAvYnVwdTQvMgAvcmRwdTQvMgAvcHVidTQvMgAveWxnbmJ1NC8yAC9nbmJ1NC8yAC9yZHlsYnU0LzIAL3JkYnU0LzIAL2FjY2VudDQvMgAvZ3JleXM0LzIAL2dyZWVuczQvMgAvYmx1ZXM0LzIAL3B1cnBsZXM0LzIAL29yYW5nZXM0LzIAL3JlZHM0LzIAL3B1b3I0LzIAL3lsb3JicjQvMgAvcHVidWduNC8yAC9idWduNC8yAC9wcmduNC8yAC9yZHlsZ240LzIAL3lsZ240LzIAL3NwZWN0cmFsNC8yAC9waXlnNC8yAC9icmJnNC8yAC9wdXJkNC8yAC95bG9ycmQ0LzIAL29ycmQ0LzIAL3BhaXJlZDQvMgAvc2V0MzQvMgAvc2V0MjQvMgAvcGFzdGVsMjQvMgAvZGFyazI0LzIAL3NldDE0LzIAL3Bhc3RlbDE0LzIAL3JkZ3kzLzIAL2J1cHUzLzIAL3JkcHUzLzIAL3B1YnUzLzIAL3lsZ25idTMvMgAvZ25idTMvMgAvcmR5bGJ1My8yAC9yZGJ1My8yAC9hY2NlbnQzLzIAL2dyZXlzMy8yAC9ncmVlbnMzLzIAL2JsdWVzMy8yAC9wdXJwbGVzMy8yAC9vcmFuZ2VzMy8yAC9yZWRzMy8yAC9wdW9yMy8yAC95bG9yYnIzLzIAL3B1YnVnbjMvMgAvYnVnbjMvMgAvcHJnbjMvMgAvcmR5bGduMy8yAC95bGduMy8yAC9zcGVjdHJhbDMvMgAvcGl5ZzMvMgAvYnJiZzMvMgAvcHVyZDMvMgAveWxvcnJkMy8yAC9vcnJkMy8yAC9wYWlyZWQzLzIAL3NldDMzLzIAL3NldDIzLzIAL3Bhc3RlbDIzLzIAL2RhcmsyMy8yAC9zZXQxMy8yAC9wYXN0ZWwxMy8yAC9wYWlyZWQxMi8yAC9zZXQzMTIvMgAvcmRneTExLzIAL3JkeWxidTExLzIAL3JkYnUxMS8yAC9wdW9yMTEvMgAvcHJnbjExLzIAL3JkeWxnbjExLzIAL3NwZWN0cmFsMTEvMgAvcGl5ZzExLzIAL2JyYmcxMS8yAC9wYWlyZWQxMS8yAC9zZXQzMTEvMgAvcmRneTEwLzIAL3JkeWxidTEwLzIAL3JkYnUxMC8yAC9wdW9yMTAvMgAvcHJnbjEwLzIAL3JkeWxnbjEwLzIAL3NwZWN0cmFsMTAvMgAvcGl5ZzEwLzIAL2JyYmcxMC8yAC9wYWlyZWQxMC8yAC9zZXQzMTAvMgAxLjIAIC1kYXNoIDIAbGVuID49IDIAZXhwID09IDEgfHwgZXhwID09IDIAZGltID09IDIATkRfb3V0KHYpLnNpemUgPT0gMgBpdm9yeTEAZ3JleTEAZGFya3NsYXRlZ3JheTEAXHgxAHNub3cxAGxpZ2h0eWVsbG93MQBob25leWRldzEAbnNsaW1pdDEAd2hlYXQxAHN1cDEAbm9wMQB0b21hdG8xAHJvc3licm93bjEAbWFyb29uMQBsaWdodHNhbG1vbjEAbGVtb25jaGlmZm9uMQBsYXRpbjEAYWdvcGVuMQBzcHJpbmdncmVlbjEAZGFya29saXZlZ3JlZW4xAHBhbGVncmVlbjEAZGFya3NlYWdyZWVuMQBsaWdodGN5YW4xAHRhbjEAcGx1bTEAc2Vhc2hlbGwxAGNvcmFsMQBob3RwaW5rMQBsaWdodHBpbmsxAGRlZXBwaW5rMQBjb3Juc2lsazEAZmlyZWJyaWNrMQBqMCA8PSBpMSAmJiBpMSA8PSBqMQBraGFraTEAbGF2ZW5kZXJibHVzaDEAcGVhY2hwdWZmMQBiaXNxdWUxAGxpZ2h0c2t5Ymx1ZTEAZGVlcHNreWJsdWUxAGxpZ2h0Ymx1ZTEAY2FkZXRibHVlMQBkb2RnZXJibHVlMQBsaWdodHN0ZWVsYmx1ZTEAcm95YWxibHVlMQBzbGF0ZWJsdWUxAG5hdmFqb3doaXRlMQBhbnRpcXVld2hpdGUxAGNob2NvbGF0ZTEAY2hhcnRyZXVzZTEAbWlzdHlyb3NlMQBwYWxldHVycXVvaXNlMQBhenVyZTEAYXF1YW1hcmluZTEAdGhpc3RsZTEAbWVkaXVtcHVycGxlMQBkYXJrb3JhbmdlMQBhcmdfZTAgJiYgYXJnX2UxAGxpZ2h0Z29sZGVucm9kMQBkYXJrZ29sZGVucm9kMQBidXJseXdvb2QxAGdvbGQxAG1lZGl1bW9yY2hpZDEAZGFya29yY2hpZDEAcGFsZXZpb2xldHJlZDEAaW5kaWFucmVkMQBvcmFuZ2VyZWQxAG9saXZlZHJhYjEAbWFnZW50YTEAc2llbm5hMQBceEYxAFx4RTEAXHhEMQBceEMxAFx4QjEAXHhBMQBncmV5OTEAZ3JheTkxAFx4OTEAZ3JleTgxAGdyYXk4MQBceDgxAGdyZXk3MQBncmF5NzEAZ3JleTYxAGdyYXk2MQBncmV5NTEAZ3JheTUxAGdyZXk0MQBncmF5NDEAZ3JleTMxAGdyYXkzMQBncmV5MjEAZ3JheTIxAGdyZXkxMQBncmF5MTEAXHgxMQAvcGFpcmVkMTIvMTEAL3NldDMxMi8xMQAvcmRneTExLzExAC9yZHlsYnUxMS8xMQAvcmRidTExLzExAC9wdW9yMTEvMTEAL3ByZ24xMS8xMQAvcmR5bGduMTEvMTEAL3NwZWN0cmFsMTEvMTEAL3BpeWcxMS8xMQAvYnJiZzExLzExAC9wYWlyZWQxMS8xMQAvc2V0MzExLzExAGNzW2ldLT5zbGFjaygpPi0wLjAwMDAwMDEAL3JkZ3k5LzEAL2J1cHU5LzEAL3JkcHU5LzEAL3B1YnU5LzEAL3lsZ25idTkvMQAvZ25idTkvMQAvcmR5bGJ1OS8xAC9yZGJ1OS8xAC9ncmV5czkvMQAvZ3JlZW5zOS8xAC9ibHVlczkvMQAvcHVycGxlczkvMQAvb3JhbmdlczkvMQAvcmVkczkvMQAvcHVvcjkvMQAveWxvcmJyOS8xAC9wdWJ1Z245LzEAL2J1Z245LzEAL3ByZ245LzEAL3JkeWxnbjkvMQAveWxnbjkvMQAvc3BlY3RyYWw5LzEAL3BpeWc5LzEAL2JyYmc5LzEAL3B1cmQ5LzEAL3lsb3JyZDkvMQAvb3JyZDkvMQAvcGFpcmVkOS8xAC9zZXQzOS8xAC9zZXQxOS8xAC9wYXN0ZWwxOS8xAC9yZGd5OC8xAC9idXB1OC8xAC9yZHB1OC8xAC9wdWJ1OC8xAC95bGduYnU4LzEAL2duYnU4LzEAL3JkeWxidTgvMQAvcmRidTgvMQAvYWNjZW50OC8xAC9ncmV5czgvMQAvZ3JlZW5zOC8xAC9ibHVlczgvMQAvcHVycGxlczgvMQAvb3JhbmdlczgvMQAvcmVkczgvMQAvcHVvcjgvMQAveWxvcmJyOC8xAC9wdWJ1Z244LzEAL2J1Z244LzEAL3ByZ244LzEAL3JkeWxnbjgvMQAveWxnbjgvMQAvc3BlY3RyYWw4LzEAL3BpeWc4LzEAL2JyYmc4LzEAL3B1cmQ4LzEAL3lsb3JyZDgvMQAvb3JyZDgvMQAvcGFpcmVkOC8xAC9zZXQzOC8xAC9zZXQyOC8xAC9wYXN0ZWwyOC8xAC9kYXJrMjgvMQAvc2V0MTgvMQAvcGFzdGVsMTgvMQAvcmRneTcvMQAvYnVwdTcvMQAvcmRwdTcvMQAvcHVidTcvMQAveWxnbmJ1Ny8xAC9nbmJ1Ny8xAC9yZHlsYnU3LzEAL3JkYnU3LzEAL2FjY2VudDcvMQAvZ3JleXM3LzEAL2dyZWVuczcvMQAvYmx1ZXM3LzEAL3B1cnBsZXM3LzEAL29yYW5nZXM3LzEAL3JlZHM3LzEAL3B1b3I3LzEAL3lsb3JicjcvMQAvcHVidWduNy8xAC9idWduNy8xAC9wcmduNy8xAC9yZHlsZ243LzEAL3lsZ243LzEAL3NwZWN0cmFsNy8xAC9waXlnNy8xAC9icmJnNy8xAC9wdXJkNy8xAC95bG9ycmQ3LzEAL29ycmQ3LzEAL3BhaXJlZDcvMQAvc2V0MzcvMQAvc2V0MjcvMQAvcGFzdGVsMjcvMQAvZGFyazI3LzEAL3NldDE3LzEAL3Bhc3RlbDE3LzEAL3JkZ3k2LzEAL2J1cHU2LzEAL3JkcHU2LzEAL3B1YnU2LzEAL3lsZ25idTYvMQAvZ25idTYvMQAvcmR5bGJ1Ni8xAC9yZGJ1Ni8xAC9hY2NlbnQ2LzEAL2dyZXlzNi8xAC9ncmVlbnM2LzEAL2JsdWVzNi8xAC9wdXJwbGVzNi8xAC9vcmFuZ2VzNi8xAC9yZWRzNi8xAC9wdW9yNi8xAC95bG9yYnI2LzEAL3B1YnVnbjYvMQAvYnVnbjYvMQAvcHJnbjYvMQAvcmR5bGduNi8xAC95bGduNi8xAC9zcGVjdHJhbDYvMQAvcGl5ZzYvMQAvYnJiZzYvMQAvcHVyZDYvMQAveWxvcnJkNi8xAC9vcnJkNi8xAC9wYWlyZWQ2LzEAL3NldDM2LzEAL3NldDI2LzEAL3Bhc3RlbDI2LzEAL2RhcmsyNi8xAC9zZXQxNi8xAC9wYXN0ZWwxNi8xAC9yZGd5NS8xAC9idXB1NS8xAC9yZHB1NS8xAC9wdWJ1NS8xAC95bGduYnU1LzEAL2duYnU1LzEAL3JkeWxidTUvMQAvcmRidTUvMQAvYWNjZW50NS8xAC9ncmV5czUvMQAvZ3JlZW5zNS8xAC9ibHVlczUvMQAvcHVycGxlczUvMQAvb3JhbmdlczUvMQAvcmVkczUvMQAvcHVvcjUvMQAveWxvcmJyNS8xAC9wdWJ1Z241LzEAL2J1Z241LzEAL3ByZ241LzEAL3JkeWxnbjUvMQAveWxnbjUvMQAvc3BlY3RyYWw1LzEAL3BpeWc1LzEAL2JyYmc1LzEAL3B1cmQ1LzEAL3lsb3JyZDUvMQAvb3JyZDUvMQAvcGFpcmVkNS8xAC9zZXQzNS8xAC9zZXQyNS8xAC9wYXN0ZWwyNS8xAC9kYXJrMjUvMQAvc2V0MTUvMQAvcGFzdGVsMTUvMQAvcmRneTQvMQAvYnVwdTQvMQAvcmRwdTQvMQAvcHVidTQvMQAveWxnbmJ1NC8xAC9nbmJ1NC8xAC9yZHlsYnU0LzEAL3JkYnU0LzEAL2FjY2VudDQvMQAvZ3JleXM0LzEAL2dyZWVuczQvMQAvYmx1ZXM0LzEAL3B1cnBsZXM0LzEAL29yYW5nZXM0LzEAL3JlZHM0LzEAL3B1b3I0LzEAL3lsb3JicjQvMQAvcHVidWduNC8xAC9idWduNC8xAC9wcmduNC8xAC9yZHlsZ240LzEAL3lsZ240LzEAL3NwZWN0cmFsNC8xAC9waXlnNC8xAC9icmJnNC8xAC9wdXJkNC8xAC95bG9ycmQ0LzEAL29ycmQ0LzEAL3BhaXJlZDQvMQAvc2V0MzQvMQAvc2V0MjQvMQAvcGFzdGVsMjQvMQAvZGFyazI0LzEAL3NldDE0LzEAL3Bhc3RlbDE0LzEAL3JkZ3kzLzEAL2J1cHUzLzEAL3JkcHUzLzEAL3B1YnUzLzEAL3lsZ25idTMvMQAvZ25idTMvMQAvcmR5bGJ1My8xAC9yZGJ1My8xAC9hY2NlbnQzLzEAL2dyZXlzMy8xAC9ncmVlbnMzLzEAL2JsdWVzMy8xAC9wdXJwbGVzMy8xAC9vcmFuZ2VzMy8xAC9yZWRzMy8xAC9wdW9yMy8xAC95bG9yYnIzLzEAL3B1YnVnbjMvMQAvYnVnbjMvMQAvcHJnbjMvMQAvcmR5bGduMy8xAC95bGduMy8xAC9zcGVjdHJhbDMvMQAvcGl5ZzMvMQAvYnJiZzMvMQAvcHVyZDMvMQAveWxvcnJkMy8xAC9vcnJkMy8xAC9wYWlyZWQzLzEAL3NldDMzLzEAL3NldDIzLzEAL3Bhc3RlbDIzLzEAL2RhcmsyMy8xAC9zZXQxMy8xAC9wYXN0ZWwxMy8xAC9wYWlyZWQxMi8xAC9zZXQzMTIvMQAvcmRneTExLzEAL3JkeWxidTExLzEAL3JkYnUxMS8xAC9wdW9yMTEvMQAvcHJnbjExLzEAL3JkeWxnbjExLzEAL3NwZWN0cmFsMTEvMQAvcGl5ZzExLzEAL2JyYmcxMS8xAC9wYWlyZWQxMS8xAC9zZXQzMTEvMQAvcmRneTEwLzEAL3JkeWxidTEwLzEAL3JkYnUxMC8xAC9wdW9yMTAvMQAvcHJnbjEwLzEAL3JkeWxnbjEwLzEAL3NwZWN0cmFsMTAvMQAvcGl5ZzEwLzEAL2JyYmcxMC8xAC9wYWlyZWQxMC8xAC9zZXQzMTAvMQBsYXRpbi0xAElTT184ODU5LTEASVNPODg1OS0xAElTTy04ODU5LTEAaSA+PSAxAHEtPm4gPT0gMQBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0ucGFydGl0aW9uW2ldID09IDAgfHwgcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLnBhcnRpdGlvbltpXSA9PSAxAGJ6LnNpemUgJSAzID09IDEATElTVF9TSVpFKCZjdHgtPlRyZWVfZWRnZSkgPT0gY3R4LT5OX25vZGVzIC0gMQBub2RlX3NldF9zaXplKGctPm5faWQpID09IG9zaXplICsgMQBuLT5jb3VudCArICgqbm4pLT5jb3VudCA9PSBOT0RFQ0FSRCArIDEAcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzBdICsgcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzFdID09IE5PREVDQVJEICsgMQBncmV5MABncmF5MABqc29uMAAjZjBmMGYwACNlMGUwZTAAeGItPmxvY2F0ZWQgPiBBR1hCVUZfSU5MSU5FX1NJWkVfMABcMABUMABceEYwAFx4RTAAXHhEMABceEMwAFx4QjAAXHhBMABncmV5OTAAZ3JheTkwAFx4OTAAZ3JleTgwAGdyYXk4MABceDgwACM4MDgwODAAZ3JleTcwAGdyYXk3MABjY3dyb3QgPT0gMCB8fCBjY3dyb3QgPT0gOTAgfHwgY2N3cm90ID09IDE4MCB8fCBjY3dyb3QgPT0gMjcwAGN3cm90ID09IDAgfHwgY3dyb3QgPT0gOTAgfHwgY3dyb3QgPT0gMTgwIHx8IGN3cm90ID09IDI3MABncmV5NjAAZ3JheTYwAGdyZXk1MABncmF5NTAAZ3JleTQwAGdyYXk0MAByLndpZHRoKCk8MWU0MABncmV5MzAAZ3JheTMwACMzMDMwMzAAZ3JleTIwAGdyYXkyMABncmV5MTAAZ3JheTEwAFx4MTAAIzEwMTAxMAAvcGFpcmVkMTIvMTAAL3NldDMxMi8xMAAvcmRneTExLzEwAC9yZHlsYnUxMS8xMAAvcmRidTExLzEwAC9wdW9yMTEvMTAAL3ByZ24xMS8xMAAvcmR5bGduMTEvMTAAL3NwZWN0cmFsMTEvMTAAL3BpeWcxMS8xMAAvYnJiZzExLzEwAC9wYWlyZWQxMS8xMAAvc2V0MzExLzEwAC9yZGd5MTAvMTAAL3JkeWxidTEwLzEwAC9yZGJ1MTAvMTAAL3B1b3IxMC8xMAAvcHJnbjEwLzEwAC9yZHlsZ24xMC8xMAAvc3BlY3RyYWwxMC8xMAAvcGl5ZzEwLzEwAC9icmJnMTAvMTAAL3BhaXJlZDEwLzEwAC9zZXQzMTAvMTAAMTIwMABncmV5MTAwAGdyYXkxMDAASVNPLUlSLTEwMAAxMDAwMAAlIVBTLUFkb2JlLTMuMABueiA+IDAAbGlzdC0+Y2FwYWNpdHkgPiAwAGRpc3QgPiAwAHBhdGhjb3VudCA+IDAAd2d0ID4gMABuc2l0ZXMgPiAwAHNpZGVzID4gMABydiA9PSAwIHx8IChORF9vcmRlcihydiktTkRfb3JkZXIodikpKmRpciA+IDAAaW5wbiA+IDAAbGVuID4gMABxdDEtPm4gPiAwICYmIHF0Mi0+biA+IDAAbSA+IDAgJiYgbiA+IDAAbmV3VG90YWwgPiAwAHdpZHRoID4gMABsaXN0LT5zaXplID4gMABkaWN0LT5zaXplID4gMABzcGwtPnNpemUgPiAwAHNlbGYtPnNpemUgPiAwAGJ6LnNpemUgPiAwAGluY3JlYXNlID4gMABib3VuZCA+IDAAZ3JhcGgtPndlaWdodHNbeF0gPiAwAGdyYXBoLT53ZWlnaHRzW25fZWRnZXNdID4gMABpbmRleCA+PSAwAHQgPj0gMABubm9kZXMgPj0gMABuX25vZGVzID49IDAAbl9vYnMgPj0gMABuID49IDAAbi0+bGV2ZWwgPj0gMABvcmlnaW5hbCA+PSAwAE1heHJhbmsgPj0gMABQYWNrID49IDAAaWkgPCAxPDxkaW0gJiYgaWkgPj0gMAB3aWR0aCA+PSAwAGpkaWFnID49IDAAaWRpYWcgPj0gMABkID49IDAAcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzBdID49IDAgJiYgcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzFdID49IDAAViA+PSAwAGFnbm5vZGVzKGdyYXBoKSA+PSAwAGFnbm5vZGVzKGcpID49IDAARURfdHJlZV9pbmRleChlKSA+PSAwAEVEX2NvdW50KGUpID49IDAAb2JqcDEtPnN6LnggPT0gMCAmJiBvYmpwMS0+c3oueSA9PSAwAGNfY250ID09IDAAcmFua19yZXN1bHQgPT0gMABnZXR0aW1lb2ZkYXlfcmVzID09IDAAaiA9PSAwAE5EX2luKHJpZ2h0KS5zaXplICsgTkRfb3V0KHJpZ2h0KS5zaXplID09IDAAYS5zaGFwZSA9PSAwIHx8IGIuc2hhcGUgPT0gMABsaXN0LT5iYXNlICE9IE5VTEwgfHwgaW5kZXggPT0gMCB8fCBzdHJpZGUgPT0gMABkdHNpemUoZGVzdCkgPT0gMABkdHNpemUoZy0+bl9zZXEpID09IDAAZHRzaXplKGctPmdfc2VxKSA9PSAwAGR0c2l6ZShnLT5lX3NlcSkgPT0gMABHRF9taW5yYW5rKGcpID09IDAAZHRzaXplKGctPmdfaWQpID09IDAAZHRzaXplKGctPmVfaWQpID09IDAAY29zeCAhPSAwIHx8IHNpbnggIT0gMAByZXFfYWxpZ25tZW50ICE9IDAAbWVtY21wKCZzdHlsZSwgJihncmFwaHZpel9wb2x5Z29uX3N0eWxlX3QpezB9LCBzaXplb2Yoc3R5bGUpKSAhPSAwAHJlc3VsdCA9PSAoaW50KShzaXplIC0gMSkgfHwgcmVzdWx0IDwgMABtYXNrW2lpXSA8IDAATkRfaGVhcGluZGV4KHYpIDwgMABcLwBYMTEvAGd2UmVuZGVySm9icyAlczogJS4yZiBzZWNzLgAlLipzLgBzcGVjaWZpZWQgcm9vdCBub2RlICIlcyIgd2FzIG5vdCBmb3VuZC4AR3JhcGggJXMgaGFzIGFycmF5IHBhY2tpbmcgd2l0aCB1c2VyIHZhbHVlcyBidXQgbm8gInNvcnR2IiBhdHRyaWJ1dGVzIGFyZSBkZWZpbmVkLgAxLgAtMC4AJSFQUy1BZG9iZS0AJVBERi0APCEtLQAgLAArACoAc3RyZXEoYXB0ci0+dS5uYW1lLEtleSkAIWlzX2V4YWN0bHlfZXF1YWwoUi54LCBRLngpIHx8ICFpc19leGFjdGx5X2VxdWFsKFIueSwgUS55KQBORF9vcmRlcih2KSA8IE5EX29yZGVyKHcpAHUgPT0gVUZfZmluZCh1KQAhTElTVF9JU19FTVBUWShwbGlzdCkAZ3ZfbGlzdF9pc19jb250aWd1b3VzXygqbGlzdCkAb25lIDw9IExJU1RfU0laRShsaXN0KQBucCA8IExJU1RfU0laRShsaXN0KQBpc19wb3dlcl9vZl8yKGFsaWdubWVudCkAc3RkOjppc19oZWFwKGhlYXAuYmVnaW4oKSwgaGVhcC5lbmQoKSwgZ3QpACEocS0+cXRzKQAhTElTVF9JU19FTVBUWSgmbGVhdmVzKQBvbl9oZWFwKHIpAG5vZGVfc2V0X3NpemUoZy0+bl9pZCkgPT0gKHNpemVfdClkdHNpemUoZy0+bl9zZXEpAE5EX3JhbmsoZnJvbSkgPCBORF9yYW5rKHRvKQBub3Qgd2VsbC1mb3JtZWQgKGludmFsaWQgdG9rZW4pAGFnc3VicmVwKGcsbikAbiAhPSBORF9uZXh0KG4pAGZpbmRfZmFzdF9ub2RlKGcsIG4pAChudWxsKQAoIWpjbikgJiYgKCF2YWwpACEocS0+bCkAc3ltLT5pZCA+PSAwICYmIHN5bS0+aWQgPCB0b3BkaWN0c2l6ZShvYmopAExJU1RfU0laRSgmYXJyKSA9PSAoc2l6ZV90KWFnbm5vZGVzKHNnKQBtb3ZlIHRvICglLjBmLCAlLjBmKQA7IHNwbGluZSB0byAoJS4wZiwgJS4wZikAOyBsaW5lIHRvICglLjBmLCAlLjBmKQBTcGFyc2VNYXRyaXhfaXNfc3ltbWV0cmljKEEsIHRydWUpAHZhbHVlICYmIHN0cmxlbih2YWx1ZSkAU3BhcnNlTWF0cml4X2lzX3N5bW1ldHJpYyhBLCBmYWxzZSkAIXVzZV9zdGFnZSB8fCBzaXplIDw9IHNpemVvZihzdGFnZSkARURfbGFiZWwoZmUpACFUUkVFX0VER0UoZSkAIWNvbnN0cmFpbmluZ19mbGF0X2VkZ2UoZywgZSkAbm9kZV9zZXRfaXNfZW1wdHkoZy0+bl9pZCkAcl8lZCkAbF8lZCkAKGxpYikAIVNwYXJzZU1hdHJpeF9oYXNfZGlhZ29uYWwoQSkAIHNjYW5uaW5nIGEgSFRNTCBzdHJpbmcgKG1pc3NpbmcgJz4nPyBiYWQgbmVzdGluZz8gbG9uZ2VyIHRoYW4gJWQ/KQAgc2Nhbm5pbmcgYSBxdW90ZWQgc3RyaW5nIChtaXNzaW5nIGVuZHF1b3RlPyBsb25nZXIgdGhhbiAlZD8pACBzY2FubmluZyBhIC8qLi4uKi8gY29tbWVudCAobWlzc2luZyAnKi8/IGxvbmdlciB0aGFuICVkPykAZmFsbGJhY2soNCkAb25faGVhcChyMCkgfHwgb25faGVhcChyMSkAYWd0YWlsKGUpID09IFVGX2ZpbmQoYWd0YWlsKGUpKQBhZ2hlYWQoZSkgPT0gVUZfZmluZChhZ2hlYWQoZSkpAG91dCBvZiBkeW5hbWljIG1lbW9yeSBpbiB5eV9nZXRfbmV4dF9idWZmZXIoKQBvdXQgb2YgZHluYW1pYyBtZW1vcnkgaW4geXlfY3JlYXRlX2J1ZmZlcigpAG91dCBvZiBkeW5hbWljIG1lbW9yeSBpbiB5eWVuc3VyZV9idWZmZXJfc3RhY2soKQBzdHJlcShtb2RlLCAiciIpIHx8IHN0cmVxKG1vZGUsICJyYiIpIHx8IHN0cmVxKG1vZGUsICJ3IikgfHwgc3RyZXEobW9kZSwgIndiIikAcG5hbWUgIT0gTlVMTCAmJiAhc3RyZXEocG5hbWUsICIiKQBzZXRsaW5ld2lkdGgoACkgcm90YXRlKCVkKSB0cmFuc2xhdGUoACB0cmFuc2Zvcm09InNjYWxlKABOT1RBVElPTigAICgAIG5lYXIgJyVzJwAlbGYsJWxmLCVsZiwnJVteJ10nAGlzZGlnaXQoKGludClkb3RwWzFdKSAmJiBpc2RpZ2l0KChpbnQpZG90cFsyXSkgJiYgZG90cFszXSA9PSAnXDAnACYAJQAkAHVybCgjADx0ZXh0UGF0aCB4bGluazpocmVmPSIjADxhcmVhIHNoYXBlPSJwb2x5IgAgZmlsbD0iIyUwMnglMDJ4JTAyeCIAKHNlcSAmIFNFUV9NQVNLKSA9PSBzZXEgJiYgInNlcXVlbmNlIElEIG92ZXJmbG93IgBndl9zb3J0X2NvbXBhciA9PSBOVUxMICYmIGd2X3NvcnRfYXJnID09IE5VTEwgJiYgInVuc3VwcG9ydGVkIHJlY3Vyc2l2ZSBjYWxsIHRvIGd2X3NvcnQiAGd2X3NvcnRfY29tcGFyICE9IE5VTEwgJiYgIm5vIGNvbXBhcmF0b3Igc2V0IGluIGd2X3NvcnQiAG9wLT5vcC51LnBvbHlnb24uY250IDw9IElOVF9NQVggJiYgInBvbHlnb24gY291bnQgZXhjZWVkcyBndnJlbmRlcl9wb2x5Z29uIHN1cHBvcnQiACB0ZXh0LWFuY2hvcj0ic3RhcnQiAHAueCAhPSBhICYmICJjYW5ub3QgaGFuZGxlIGVsbGlwc2UgdGFuZ2VudCBzbG9wZSBpbiBob3Jpem9udGFsIGV4dHJlbWUgcG9pbnQiAGZ1bGxfbGVuZ3RoX3dpdGhvdXRfc2hhZnQgPiAwICYmICJub24tcG9zaXRpdmUgZnVsbCBsZW5ndGggd2l0aG91dCBzaGFmdCIAPGFyZWEgc2hhcGU9InJlY3QiAHNpemUgPiAwICYmICJhdHRlbXB0IHRvIGFsbG9jYXRlIGFycmF5IG9mIDAtc2l6ZWQgZWxlbWVudHMiAGluZGV4IDwgc2VsZi0+c2l6ZV9iaXRzICYmICJvdXQgb2YgYm91bmRzIGFjY2VzcyIAaW5kZXggPCBzZWxmLnNpemVfYml0cyAmJiAib3V0IG9mIGJvdW5kcyBhY2Nlc3MiACpzMSAhPSAqczIgJiYgImR1cGxpY2F0ZSBzZXBhcmF0b3IgY2hhcmFjdGVycyIAR0RfbWlucmFuayhzdWJnKSA8PSBHRF9tYXhyYW5rKHN1YmcpICYmICJjb3JydXB0ZWQgcmFuayBib3VuZHMiAGluZGV4IDwgbGlzdC5zaXplICYmICJpbmRleCBvdXQgb2YgYm91bmRzIgAodWludHB0cl90KXMgJSAyID09IDAgJiYgImhlYXAgcG9pbnRlciB3aXRoIGxvdyBiaXQgc2V0IHdpbGwgY29sbGlkZSB3aXRoIGFub255bW91cyBJRHMiACAoKyU2bGQgYnl0ZXMgJXN8JXUsIHhtbHBhcnNlLmM6JWQpICUqcyIAIGZvbnQtZmFtaWx5PSIlcyIAIGZvbnQtd2VpZ2h0PSIlcyIAIGZpbGw9IiVzIgAgZm9udC1zdHJldGNoPSIlcyIAIGZvbnQtc3R5bGU9IiVzIgBiYWQgZWRnZSBsZW4gIiVzIgAgYmFzZWxpbmUtc2hpZnQ9InN1cGVyIgBhZ3hibGVuKHhiKSA8PSBzaXplb2YoeGItPnN0b3JlKSAmJiAiYWd4YnVmIGNvcnJ1cHRpb24iAGNlbGwucm93IDwgdGFibGUtPnJvd19jb3VudCAmJiAib3V0IG9mIHJhbmdlIGNlbGwiAGNlbGwuY29sIDwgdGFibGUtPmNvbHVtbl9jb3VudCAmJiAib3V0IG9mIHJhbmdlIGNlbGwiACB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgBmdWxsX2xlbmd0aCA+IDAgJiYgIm5vbi1wb3NpdGl2ZSBmdWxsIGxlbmd0aCIAZnVsbF9iYXNlX3dpZHRoID4gMCAmJiAibm9uLXBvc2l0aXZlIGZ1bGwgYmFzZSB3aWR0aCIAbm9taW5hbF9iYXNlX3dpZHRoID4gMCAmJiAibm9uLXBvc2l0aXZlIG5vbWluYWwgYmFzZSB3aWR0aCIAIiB3aWR0aD0iJWdweCIgaGVpZ2h0PSIlZ3B4IiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0IiB4PSIlZyIgeT0iJWciACIgd2lkdGg9IiVncHgiIGhlaWdodD0iJWdweCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCIgeD0iJWciIHk9IiVnIgAgZm9udC1zaXplPSIlLjJmIgAgZmlsbC1vcGFjaXR5PSIlZiIAPHRleHQgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIAaXNmaW5pdGUobSkgJiYgImVsbGlwc2UgdGFuZ2VudCBzbG9wZSBpcyBpbmZpbml0ZSIAKHhiLT5sb2NhdGVkID09IEFHWEJVRl9PTl9IRUFQIHx8IHhiLT5sb2NhdGVkIDw9IHNpemVvZih4Yi0+c3RvcmUpKSAmJiAiY29ycnVwdGVkIGFneGJ1ZiB0eXBlIgBBLT50eXBlID09IHR5cGUgJiYgImNhbGwgdG8gU3BhcnNlTWF0cml4X2Nvb3JkaW5hdGVfZm9ybV9hZGRfZW50cnkgIiAid2l0aCBpbmNvbXBhdGlibGUgdmFsdWUgdHlwZSIAIHRleHQtYW5jaG9yPSJtaWRkbGUiADxhcmVhIHNoYXBlPSJjaXJjbGUiAGNlbGwtPnJvdyArIGNlbGwtPnJvd3NwYW4gPD0gdGFibGUtPnJvd19jb3VudCAmJiAiY2VsbCBzcGFucyBoaWdoZXIgdGhhbiBjb250YWluaW5nIHRhYmxlIgBjZWxsLnJvdyArIGNlbGwucm93c3BhbiA8PSB0YWJsZS0+cm93X2NvdW50ICYmICJjZWxsIHNwYW5zIGhpZ2hlciB0aGFuIGNvbnRhaW5pbmcgdGFibGUiAGNlbGwtPmNvbCArIGNlbGwtPmNvbHNwYW4gPD0gdGFibGUtPmNvbHVtbl9jb3VudCAmJiAiY2VsbCBzcGFucyB3aWRlciB0aGFuIGNvbnRhaW5pbmcgdGFibGUiAGNlbGwuY29sICsgY2VsbC5jb2xzcGFuIDw9IHRhYmxlLT5jb2x1bW5fY291bnQgJiYgImNlbGwgc3BhbnMgd2lkZXIgdGhhbiBjb250YWluaW5nIHRhYmxlIgBvbGRfbm1lbWIgPCBTSVpFX01BWCAvIHNpemUgJiYgImNsYWltZWQgcHJldmlvdXMgZXh0ZW50IGlzIHRvbyBsYXJnZSIAdGhldGEgPj0gMCAmJiB0aGV0YSA8PSBNX1BJICYmICJ0aGV0YSBvdXQgb2YgcmFuZ2UiAHRhYmxlLT5oZWlnaHRzID09IE5VTEwgJiYgInRhYmxlIGhlaWdodHMgY29tcHV0ZWQgdHdpY2UiAHRhYmxlLT53aWR0aHMgPT0gTlVMTCAmJiAidGFibGUgd2lkdGhzIGNvbXB1dGVkIHR3aWNlIgAgdGV4dC1hbmNob3I9ImVuZCIAIGZvbnQtd2VpZ2h0PSJib2xkIgAgZm9udC1zdHlsZT0iaXRhbGljIgAgYmFzZWxpbmUtc2hpZnQ9InN1YiIAXCIAbGxlbiA8PSBJTlRfTUFYICYmICJYTUwgdG9rZW4gdG9vIGxvbmcgZm9yIGV4cGF0IEFQSSIAIiByeT0iAF9wIiBzdGFydE9mZnNldD0iNTAlIj48dHNwYW4geD0iMCIgZHk9IgAiIGN5PSIAIiB5PSIAIiByeD0iACBjeD0iACB4PSIAIHRhcmdldD0iACBwb2ludHM9IgAgY29vcmRzPSIAIHRleHQtZGVjb3JhdGlvbj0iACBmaWxsPSIAIiBzdHJva2Utd2lkdGg9IgA8aW1hZ2UgeGxpbms6aHJlZj0iADw/eG1sLXN0eWxlc2hlZXQgaHJlZj0iACIgbmFtZT0iACB4bGluazp0aXRsZT0iACB0aXRsZT0iACIgc3Ryb2tlPSIAPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0iADxkZWZzPgo8cmFkaWFsR3JhZGllbnQgaWQ9IgA8bWFwIGlkPSIAPGcgaWQ9IgAgZD0iACIgeTI9IgAiIHgyPSIAIiB5MT0iAHgxPSIAIHZpZXdCb3g9IiVkLjAwICVkLjAwICVkLjAwICVkLjAwIgAgdHJhbnNmb3JtPSJyb3RhdGUoJWQgJWcgJWcpIgBhZ3hibGVuKCZjdHgtPlNidWYpID09IDAgJiYgInBlbmRpbmcgc3RyaW5nIGRhdGEgdGhhdCB3YXMgbm90IGNvbnN1bWVkIChtaXNzaW5nICIgImVuZHN0cigpL2VuZGh0bWxzdHIoKT8pIgAgYWx0PSIiAEN5Y2xlIEVycm9yIQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQA8IS0tIEdlbmVyYXRlZCBieSAAJXMlenUgLSMlMDJ4JTAyeCUwMnglMDJ4IAAlcyV6dSAtIyUwMnglMDJ4JTAyeCAAJWMgJXp1IAB0ICV1IAAgY3JlYXRlIHRleHQgAHhMYXlvdXQgAGRlZmF1bHQgAHN0cmljdCAAJXMlenUgLSVzIAAgLXNtb290aCBiZXppZXIgACBtb3ZldG8gACB2ZXJzaW9uIAAgY3JlYXRlIHBvbHlnb24gACAtdGV4dCB7JXN9IC1maWxsIAAgY3JlYXRlIG92YWwgACAtd2lkdGggAG5ld3BhdGggAGdyYXBoIABzLCUuNWcsJS41ZyAAJS41ZywlLjVnLCUuNWcsJS41ZyAAZSwlLjVnLCUuNWcgACVnICVnIAAlLjAzbGYgACUuM2YgACVkICVkICVkICVkICVkICVkICUuMWYgJS40ZiAlZCAlLjFmICUuMWYgJS4wZiAlLjBmIAAgLW91dGxpbmUgACBjcmVhdGUgbGluZSAAbm9kZSAAW0dyYXBodml6XSAlczolZDogJTA0ZC0lMDJkLSUwMmQgJTAyZDolMDJkOiUwMmQgACVkIABUb3RhbCBzaXplID4gMSBpbiAiJXMiIGNvbG9yIHNwZWMgAFsgL1JlY3QgWyAAVCAAUyAAT1BFTiAASSAARiAARSAAQyAAIC0+IABSYW5rIHNlcGFyYXRpb24gPSAAVW5zYXRpc2ZpZWQgY29uc3RyYWludDogAENhbGN1bGF0aW5nIHNob3J0ZXN0IHBhdGhzOiAAJXM6IABTb2x2aW5nIG1vZGVsOiAAU2V0dGluZyB1cCBzcHJpbmcgbW9kZWw6IABjb252ZXJ0IGdyYXBoOiAAIFRpdGxlOiAAInRleHQiOiAAeyJmcmFjIjogJS4wM2YsICJjb2xvciI6IAAibmFtZSI6IAAic3R5bGUiOiAAImZhY2UiOiAAMiAAPCEtLSAAIC0tIAAlIABfcCIgAGxfJWQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiAADSAgICAgICAgICAgICAgICBpdGVyID0gJWQsIHN0ZXAgPSAlZiBGbm9ybSA9ICVmIG56ID0gJXp1ICBLID0gJWYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgAAogICAgADoJIAAgICAgJXN9CgB0cnlpbmcgdG8gYWRkIHRvIHJlY3QgeyVmICsvLSAlZiwgJWYgKy8tICVmfQoAI2RlZmF1bHQgeyBmaW5pc2ggeyBhbWJpZW50IDAuMSBkaWZmdXNlIDAuOSB9IH0KAHBpZ21lbnQgeyBjb2xvciAlcyB9CgBsaWdodF9zb3VyY2UgeyA8MTUwMCwzMDAwLC0yNTAwPiBjb2xvciBXaGl0ZSB9CgBnbG9iYWxfc2V0dGluZ3MgeyBhc3N1bWVkX2dhbW1hIDEuMCB9CgAgICAgdGV4dHVyZSBJbWFnZVRleHR1cmUgeyB1cmwgIiVzIiB9CgAgICAgfQoALy9za3kKcGxhbmUgeyA8MCwgMSwgMD4sIDEgaG9sbG93CiAgICB0ZXh0dXJlIHsKICAgICAgICBwaWdtZW50IHsgYm96byB0dXJidWxlbmNlIDAuOTUKICAgICAgICAgICAgY29sb3JfbWFwIHsKICAgICAgICAgICAgICAgIFswLjAwIHJnYiA8MC4wNSwgMC4yMCwgMC41MD5dCiAgICAgICAgICAgICAgICBbMC41MCByZ2IgPDAuMDUsIDAuMjAsIDAuNTA+XQogICAgICAgICAgICAgICAgWzAuNzUgcmdiIDwxLjAwLCAxLjAwLCAxLjAwPl0KICAgICAgICAgICAgICAgIFswLjc1IHJnYiA8MC4yNSwgMC4yNSwgMC4yNT5dCiAgICAgICAgICAgICAgICBbMS4wMCByZ2IgPDAuNTAsIDAuNTAsIDAuNTA+XQogICAgICAgICAgICB9CiAgICAgICAgICAgIHNjYWxlIDwxLjAwLCAxLjAwLCAxLjUwPiAqIDIuNTAKICAgICAgICAgICAgdHJhbnNsYXRlIDwwLjAwLCAwLjAwLCAwLjAwPgogICAgICAgIH0KICAgICAgICBmaW5pc2ggeyBhbWJpZW50IDEgZGlmZnVzZSAwIH0KICAgIH0KICAgIHNjYWxlIDEwMDAwCn0KLy9taXN0CmZvZyB7IGZvZ190eXBlIDIKICAgIGRpc3RhbmNlIDUwCiAgICBj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ZCBjZWxsIHNpemUgd2l0aCB1bnNwZWNpZmllZCB3aWR0aCBvciBoZWlnaHQKAGZpeGVkIHRhYmxlIHNpemUgd2l0aCB1bnNwZWNpZmllZCB3aWR0aCBvciBoZWlnaHQKAHBvcyBhdHRyaWJ1dGUgZm9yIGVkZ2UgKCVzLCVzKSBkb2Vzbid0IGhhdmUgM24rMSBwb2ludHMKACAgZ2VuZXJhdGVkICVkIGNvbnN0cmFpbnRzCgBzcGxpbmVzIGFuZCBjbHVzdGVyIGVkZ2VzIG5vdCBzdXBwb3J0ZWQgLSB1c2luZyBsaW5lIHNlZ21lbnRzCgBvYmplY3RzCgBXYXJuaW5nOiBub2RlICVzLCBwb3NpdGlvbiAlcywgZXhwZWN0ZWQgdHdvIGZsb2F0cwoAZm9udCBuYW1lICVzIGNvbnRhaW5zIGNoYXJhY3RlcnMgdGhhdCBtYXkgbm90IGJlIGFjY2VwdGVkIGJ5IHNvbWUgUFMgdmlld2VycwoAZm9udCBuYW1lICVzIGlzIGxvbmdlciB0aGFuIDI5IGNoYXJhY3RlcnMgd2hpY2ggbWF5IGJlIHJlamVjdGVkIGJ5IHNvbWUgUFMgdmlld2VycwoAY2Fubm90IGFsbG9jYXRlIHBzCgBzY2FsZT0xLjAgJXMgcmVxdWlyZWQgZm9yIGNvbXBhcmlzb25zCgBTZXR0aW5nIGluaXRpYWwgcG9zaXRpb25zCgAlcyBEV0IgMiBjb21wYXRpYmlsaXR5IGRlZmluaXRpb25zCgBhcnJheSBwYWNraW5nOiAlcyAlenUgcm93cyAlenUgY29sdW1ucwoAc3ludGF4IGFtYmlndWl0eSAtIGJhZGx5IGRlbGltaXRlZCBudW1iZXIgJyVzJyBpbiBsaW5lICVkIG9mICVzIHNwbGl0cyBpbnRvIHR3byB0b2tlbnMKAGVkZ2UgbGFiZWxzIHdpdGggc3BsaW5lcz1jdXJ2ZWQgbm90IHN1cHBvcnRlZCBpbiBkb3QgLSB1c2UgeGxhYmVscwoAZmxhdCBlZGdlIGJldHdlZW4gYWRqYWNlbnQgbm9kZXMgb25lIG9mIHdoaWNoIGhhcyBhIHJlY29yZCBzaGFwZSAtIHJlcGxhY2UgcmVjb3JkcyB3aXRoIEhUTUwtbGlrZSBsYWJlbHMKAG91dCBvZiBtZW1vcnkgd2hlbiB0cnlpbmcgdG8gYWxsb2NhdGUgJXp1IGJ5dGVzCgBpbnRlZ2VyIG92ZXJmbG93IHdoZW4gdHJ5aW5nIHRvIGFsbG9jYXRlICV6dSAqICV6dSBieXRlcwoAdXBkYXRlOiBtaXNtYXRjaGVkIGxjYSBpbiB0cmVldXBkYXRlcwoAZ3JhcGggJXMsIGNvb3JkICVzLCBleHBlY3RlZCBmb3VyIGRvdWJsZXMKAG5vZGUgJXMsIHBvc2l0aW9uICVzLCBleHBlY3RlZCB0d28gZG91YmxlcwoARm91bmQgJWQgRGlHLUNvTGEgYm91bmRhcmllcwoASW5jaGVzCgAoJTR6dSkgJTd6dSBub2RlcyAlN3p1IGVkZ2VzCgBjb21wb3VuZEVkZ2VzOiBjb3VsZCBub3QgY29uc3RydWN0IG9ic3RhY2xlcyAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgB0aGUgYm91bmRpbmcgYm94ZXMgb2Ygc29tZSBub2RlcyB0b3VjaCAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgBjb21wb3VuZEVkZ2VzOiBub2RlcyB0b3VjaCAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgBzb21lIG5vZGVzIHdpdGggbWFyZ2luICglLjAyZiwlLjAyZikgdG91Y2ggLSBmYWxsaW5nIGJhY2sgdG8gc3RyYWlnaHQgbGluZSBlZGdlcwoAbWVyZ2UyOiBncmFwaCAlcywgcmFuayAlZCBoYXMgb25seSAlZCA8ICVkIG5vZGVzCgBTY2FubmluZyBncmFwaCAlcywgJWQgbm9kZXMKAFdhcm5pbmc6IG5vIGhhcmQtY29kZWQgbWV0cmljcyBmb3IgJyVzJy4gIEZhbGxpbmcgYmFjayB0byAnVGltZXMnIG1ldHJpY3MKAGluIGVkZ2UgJXMlcyVzCgBVc2luZyAlczogJXM6JXMKAEZvcm1hdDogIiVzIiBub3QgcmVjb2duaXplZC4gVXNlIG9uZSBvZjolcwoATGF5b3V0IHR5cGU6ICIlcyIgbm90IHJlY29nbml6ZWQuIFVzZSBvbmUgb2Y6JXMKAGxheW91dCAlcwoALmZ0ICVzCgBiYWQgbGFiZWwgZm9ybWF0ICVzCgBpbiByb3V0ZXNwbGluZXMsIGVkZ2UgaXMgYSBsb29wIGF0ICVzCgAgICAgICAgJTdkIG5vZGVzICU3ZCBlZGdlcyAlN3p1IGNvbXBvbmVudHMgJXMKAGluIGxhYmVsIG9mIGVkZ2UgJXMgJXMgJXMKACAgRWRnZSAlcyAlcyAlcwoAb3J0aG8gJXMgJXMKAHBvbHlsaW5lICVzICVzCgBzcGxpbmUgJXMgJXMKAHJlY3RhbmdsZSAoJS4wZiwlLjBmKSAoJS4wZiwlLjBmKSAlcyAlcwoAaW4gY2x1c3RlciAlcwoAJXMgd2FzIGFscmVhZHkgaW4gYSByYW5rc2V0LCBkZWxldGVkIGZyb20gY2x1c3RlciAlcwoAJXMgLT4gJXM6IHRhaWwgbm90IGluc2lkZSB0YWlsIGNsdXN0ZXIgJXMKACVzIC0+ICVzOiBoZWFkIGlzIGluc2lkZSB0YWlsIGNsdXN0ZXIgJXMKAGhlYWQgY2x1c3RlciAlcyBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgBoZWFkIG5vZGUgJXMgaW5zaWRlIHRhaWwgY2x1c3RlciAlcwoAJXMgLT4gJXM6IGhlYWQgbm90IGluc2lkZSBoZWFkIGNsdXN0ZXIgJXMKACVzIC0+ICVzOiB0YWlsIGlzIGluc2lkZSBoZWFkIGNsdXN0ZXIgJXMKAHRhaWwgY2x1c3RlciAlcyBpbnNpZGUgaGVhZCBjbHVzdGVyICVzCgB0YWlsIG5vZGUgJXMgaW5zaWRlIGhlYWQgY2x1c3RlciAlcwoAVW5oYW5kbGVkIGFkanVzdCBvcHRpb24gJXMKAHJlcG9zaXRpb24gJXMKAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggeGxhYmVsICVzCgBubyBwb3NpdGlvbiBmb3IgZWRnZSB3aXRoIHRhaWwgbGFiZWwgJXMKAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggbGFiZWwgJXMKAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggaGVhZCBsYWJlbCAlcwoALy8qKiogYmVnaW5fZ3JhcGggJXMKAE1heC4gaXRlcmF0aW9ucyAoJWQpIHJlYWNoZWQgb24gZ3JhcGggJXMKAENvdWxkIG5vdCBwYXJzZSAiX2JhY2tncm91bmQiIGF0dHJpYnV0ZSBpbiBncmFwaCAlcwoAaW4gbGFiZWwgb2YgZ3JhcGggJXMKAENyZWF0aW5nIGVkZ2VzIHVzaW5nICVzCgBBZGp1c3RpbmcgJXMgdXNpbmcgJXMKACVzIHdoaWxlIG9wZW5pbmcgJXMKAGRlcml2ZSBncmFwaCBfZGdfJWQgb2YgJXMKACBdICAlenUgdHJ1ZSAlcwoAXSAgJWQgdHJ1ZSAlcwoAIF0gICV6dSBmYWxzZSAlcwoAXSAgJWQgZmFsc2UgJXMKAG1ha2VQb2x5OiB1bmtub3duIHNoYXBlIHR5cGUgJXMKAG1ha2VBZGRQb2x5OiB1bmtub3duIHNoYXBlIHR5cGUgJXMKAHVzaW5nICVzIGZvciB1bmtub3duIHNoYXBlICVzCgAgIG9jdHJlZSBzY2hlbWUgJXMKAGNhbid0IG9wZW4gbGlicmFyeSBmaWxlICVzCgBjYW4ndCBmaW5kIGxpYnJhcnkgZmlsZSAlcwoAQm91bmRpbmdCb3ggbm90IGZvdW5kIGluIGVwc2YgZmlsZSAlcwoAY291bGRuJ3Qgb3BlbiBlcHNmIGZpbGUgJXMKAGNvdWxkbid0IHJlYWQgZnJvbSBlcHNmIGZpbGUgJXMKAGluIG5vZGUgJXMKAHNoYXBlZmlsZSBub3Qgc2V0IG9yIG5vdCBmb3VuZCBmb3IgZXBzZiBub2RlICVzCgBpbiBsYWJlbCBvZiBub2RlICVzCgBlbmQgJXMKAHJhbmtpbmc6IGZhaWx1cmUgdG8gY3JlYXRlIHN0cm9uZyBjb25zdHJhaW50IGVkZ2UgYmV0d2VlbiBub2RlcyAlcyBhbmQgJXMKAG9vcHMsIGludGVybmFsIGVycm9yOiB1bmhhbmRsZWQgY29sb3IgdHlwZT0lZCAlcwoAJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJS4xZiAlZCAlZCAlZCAlZCAlZCAlZAogJWQgJXMKAC8vKioqIHRleHRzcGFuOiAlcywgZm9udHNpemUgPSAlLjNmLCBmb250bmFtZSA9ICVzCgB0cmllcyA9ICVkLCBtb2RlID0gJXMKAC8vKioqIGNvbW1lbnQ6ICVzCgBmYWlsZWQgdG8gcmVzZXJ2ZSAlenUgZWxlbWVudHMgb2Ygc2l6ZSAlenUgYnl0ZXM6ICVzCgBmb250bmFtZTogIiVzIiByZXNvbHZlZCB0bzogJXMKACUlJSVQYWdlT3JpZW50YXRpb246ICVzCgBkZWxhdW5heV90cmlhbmd1bGF0aW9uOiAlcwoAZGVsYXVuYXlfdHJpOiAlcwoAZ3ZwcmludGY6ICVzCgBuZXN0aW5nIG5vdCBhbGxvd2VkIGluIHN0eWxlOiAlcwoAdW5tYXRjaGVkICcpJyBpbiBzdHlsZTogJXMKAHVubWF0Y2hlZCAnKCcgaW4gc3R5bGU6ICVzCgAlJSUlVGl0bGU6ICVzCgAlcyBUaXRsZTogJXMKACMgVGl0bGU6ICVzCgAvLyoqKiBiZWdpbl9ub2RlOiAlcwoAbGliL3BhdGhwbGFuLyVzOiVkOiAlcwoAZ3JpZCglZCwlZCk6ICVzCgBDb3VsZCBub3Qgb3BlbiAiJXMiIGZvciB3cml0aW5nIDogJXMKAHN0YXJ0IHBvcnQ6ICglLjVnLCAlLjVnKSwgdGFuZ2VudCBhbmdsZTogJS41ZywgJXMKAGVuZCBwb3J0OiAoJS41ZywgJS41ZyksIHRhbmdlbnQgYW5nbGU6ICUuNWcsICVzCgAgWyV6dV0gJXAgc2V0ICVkICglLjAyZiwlLjAyZikgKCUuMDJmLCUuMDJmKSAlcwoAJSUgJXMKACMgJXMKACAgbW9kZSAgICVzCgBsaXN0IGVsZW1lbnQgdHlwZSBpcyBub3QgYSBwb2ludGVyLCBidXQgYGZyZWVgIHVzZWQgYXMgZGVzdHJ1Y3RvcgoAY29uanVnYXRlX2dyYWRpZW50OiB1bmV4cGVjdGVkIGxlbmd0aCAwIHZlY3RvcgoAJXMgdG8gY2hhbmdlIGRyYXdpbmcgc2l6ZSwgbXVsdGlwbHkgdGhlIHdpZHRoIGFuZCBoZWlnaHQgb24gdGhlIC5QUyBsaW5lIGFib3ZlIGFuZCB0aGUgbnVtYmVyIG9uIHRoZSB0d28gbGluZXMgYmVsb3cgKHJvdW5kZWQgdG8gdGhlIG5lYXJlc3QgaW50ZWdlcikgYnkgYSBzY2FsZSBmYWN0b3IKAGFkZF9zZWdtZW50OiBlcnJvcgoAJS41ZyAlLjVnICUuNWcgJXNjb2xvcgoAMCAwIDAgZWRnZWNvbG9yCgAwLjggMC44IDAuOCBzZXRyZ2Jjb2xvcgoAMCAwIDEgc2V0cmdiY29sb3IKADEgMCAwIHNldHJnYmNvbG9yCgAwIDAgMCBzZXRyZ2Jjb2xvcgoAJWQgJWQgc2V0bGF5ZXIKAC8vKioqIGVuZF9sYXllcgoAVVRGLTggaW5wdXQgdXNlcyBub24tTGF0aW4xIGNoYXJhY3RlcnMgd2hpY2ggY2Fubm90IGJlIGhhbmRsZWQgYnkgdGhpcyBQb3N0U2NyaXB0IGRyaXZlcgoATGV0dGVyCgAvLyoqKiBiZWdpbl9jbHVzdGVyCgAvLyoqKiBlbmRfY2x1c3RlcgoAcmVtb3ZpbmcgZW1wdHkgY2x1c3RlcgoAQ2VudGVyCgBXYXJuaW5nOiBubyB2YWx1ZSBmb3Igd2lkdGggb2Ygbm9uLUFTQ0lJIGNoYXJhY3RlciAldS4gRmFsbGluZyBiYWNrIHRvIHdpZHRoIG9mIHNwYWNlIGNoYXJhY3RlcgoAYmFzZSByZWZlcmVyCgAlJVBhZ2VUcmFpbGVyCgAlJVRyYWlsZXIKAC8vKioqIGJlemllcgoAIiVzIiB3YXMgbm90IGZvdW5kIGFzIGEgZmlsZSBvciBhcyBhIHNoYXBlIGxpYnJhcnkgbWVtYmVyCgBzdG9wCgAgY3VydmV0bwoAbmV3cGF0aCAlLjBmICUuMGYgbW92ZXRvCgAlLjBmICUuMGYgbGluZXRvCgAgbGF5b3V0PW5lYXRvCgBub2RlICVzIGluIGdyYXBoICVzIGhhcyBubyBwb3NpdGlvbgoAJXMgbWF4cHNodCBhbmQgbWF4cHN3aWQgaGF2ZSBubyBtZWFuaW5nIGluIERXQiAyLjAsIHNldCBwYWdlIGJvdW5kYXJpZXMgaW4gZ3BpYyBhbmQgaW4gMTB0aCBFZGl0aW9uCgAlcyBhcnJvd2hlYWQgaGFzIG5vIG1lYW5pbmcgaW4gRFdCIDIsIGFycm93aGVhZCA9IDcgbWFrZXMgZmlsbGVkIGFycm93aGVhZHMgaW4gZ3BpYyBhbmQgaW4gMTB0aCBFZGl0aW9uCgAlcyBhcnJvd2hlYWQgaXMgdW5kZWZpbmVkIGluIERXQiAyLCBpbml0aWFsbHkgMSBpbiBncGljLCAyIGluIDEwdGggRWRpdGlvbgoAbWFqb3JpemF0aW9uCgAvLyoqKiBwb2x5Z29uCgBvdmVyZmxvdyB3aGVuIGNvbXB1dGluZyBlZGdlIHdlaWdodCBzdW0KAHNmZHAgb25seSBzdXBwb3J0cyBzdGFydD1yYW5kb20KAG5vZGUgcG9zaXRpb25zIGFyZSBpZ25vcmVkIHVubGVzcyBzdGFydD1yYW5kb20KAGNsb3NlcGF0aCBmaWxsCgAgZWxsaXBzZV9wYXRoIGZpbGwKACAgJS4wZiAlLjBmIGNlbGwKACVmICVmICVmICVmIGNlbGwKAGdyYXBoICVzIGlzIGRpc2Nvbm5lY3RlZC4gSGVuY2UsIHRoZSBjaXJjdWl0IG1vZGVsCgBncmFwaCBpcyBkaXNjb25uZWN0ZWQuIEhlbmNlLCB0aGUgY2lyY3VpdCBtb2RlbAoAZWRnZXMgaW4gZ3JhcGggJXMgaGF2ZSBubyBsZW4gYXR0cmlidXRlLiBIZW5jZSwgdGhlIG1kcyBtb2RlbAoAY2lyY3VpdCBtb2RlbCBub3QgeWV0IHN1cHBvcnRlZCBpbiBHbW9kZT1zZ2QsIHJldmVydGluZyB0byBzaG9ydHBhdGggbW9kZWwKAG1kcyBtb2RlbCBub3QgeWV0IHN1cHBvcnRlZCBpbiBHbW9kZT1zZ2QsIHJldmVydGluZyB0byBzaG9ydHBhdGggbW9kZWwKAG5vZGUgJyVzJywgZ3JhcGggJyVzJyBzaXplIHRvbyBzbWFsbCBmb3IgbGFiZWwKACVzIERXQiAyIGRvZXNuJ3QgdXNlIGZpbGwgYW5kIGRvZXNuJ3QgZGVmaW5lIGZpbGx2YWwKAFsge0NhdGFsb2d9IDw8IC9VUkkgPDwgL0Jhc2UgJXMgPj4gPj4KL1BVVCBwZGZtYXJrCgBbIC9Dcm9wQm94IFslZCAlZCAlZCAlZF0gL1BBR0VTIHBkZm1hcmsKACAgL0JvcmRlciBbIDAgMCAwIF0KICAvQWN0aW9uIDw8IC9TdWJ0eXBlIC9VUkkgL1VSSSAlcyA+PgogIC9TdWJ0eXBlIC9MaW5rCi9BTk4gcGRmbWFyawoAdHJvdWJsZSBpbiBpbml0X3JhbmsKAGxpbmV0aGljayA9IDA7IG9sZGxpbmV0aGljayA9IGxpbmV0aGljawoAIHNldGxpbmV3aWR0aAoAZ3NhdmUKJWQgJWQgJWQgJWQgYm94cHJpbSBjbGlwIG5ld3BhdGgKAGdzYXZlICVnICVnIHRyYW5zbGF0ZSBuZXdwYXRoCgAvLyoqKiBlbmRfZ3JhcGgKAGxheW91dCBhdHRyaWJ1dGUgaXMgaW52YWxpZCBleGNlcHQgb24gdGhlIHJvb3QgZ3JhcGgKAGluIGNoZWNrcGF0aCwgYm94ZXMgJXp1IGFuZCAlenUgZG9uJ3QgdG91Y2gKAG1lcmdlX29uZXdheSBnbGl0Y2gKACVzIGRvbid0IGNoYW5nZSBhbnl0aGluZyBiZWxvdyB0aGlzIGxpbmUgaW4gdGhpcyBkcmF3aW5nCgBOb2RlIG5vdCBhZGphY2VudCB0byBjZWxsIC0tIEFib3J0aW5nCgBpbmNvbXBhcmFibGUgc2VnbWVudHMgISEgLS0gQWJvcnRpbmcKAEFsdGVybmF0aXZlbHksIGNvbnNpZGVyIHJ1bm5pbmcgbmVhdG8gdXNpbmcgLUdwYWNrPXRydWUgb3IgZGVjb21wb3NpbmcKAGxhYmVsX3NjaGVtZSA9ICVkID4gNCA6IGlnbm9yaW5nCgBndnJlbmRlcl9zZXRfc3R5bGU6IHVuc3VwcG9ydGVkIHN0eWxlICVzIC0gaWdub3JpbmcKAEFycm93IHR5cGUgIiVzIiB1bmtub3duIC0gaWdub3JpbmcKAGZkcCBkb2VzIG5vdCBzdXBwb3J0IHN0YXJ0PXNlbGYgLSBpZ25vcmluZwoAJXMgYXR0cmlidXRlIHZhbHVlIG11c3QgYmUgMSBvciAyIC0gaWdub3JpbmcKAE1vcmUgdGhhbiAyIGNvbG9ycyBzcGVjaWZpZWQgZm9yIGEgZ3JhZGllbnQgLSBpZ25vcmluZyByZW1haW5pbmcKAGFzIHJlcXVpcmVkIGJ5IHRoZSAtbiBmbGFnCgBiYlslc10gJS41ZyAlLjVnICUuNWcgJS41ZwoAL3BhdGhib3ggewogICAgL1kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIC9YIGV4Y2ggJS41ZyBzdWIgZGVmCiAgICAveSBleGNoICUuNWcgc3ViIGRlZgogICAgL3ggZXhjaCAlLjVnIHN1YiBkZWYKICAgIG5ld3BhdGggeCB5IG1vdmV0bwogICAgWCB5IGxpbmV0bwogICAgWCBZIGxpbmV0bwogICAgeCBZIGxpbmV0bwogICAgY2xvc2VwYXRoIHN0cm9rZQogfSBkZWYKL2RiZ3N0YXJ0IHsgZ3NhdmUgJS41ZyAlLjVnIHRyYW5zbGF0ZSB9IGRlZgovYXJyb3dsZW5ndGggMTAgZGVmCi9hcnJvd3dpZHRoIGFycm93bGVuZ3RoIDIgZGl2IGRlZgovYXJyb3doZWFkIHsKICAgIGdzYXZlCiAgICByb3RhdGUKICAgIGN1cnJlbnRwb2ludAogICAgbmV3cGF0aAogICAgbW92ZXRvCiAgICBhcnJvd2xlbmd0aCBhcnJvd3dpZHRoIDIgZGl2IHJsaW5ldG8KICAgIDAgYXJyb3d3aWR0aCBuZWcgcmxpbmV0bwogICAgY2xvc2VwYXRoIGZpbGwKICAgIGdyZXN0b3JlCn0gYmluZCBkZWYKL21ha2VhcnJvdyB7CiAgICBjdXJyZW50cG9pbnQgZXhjaCBwb3Agc3ViIGV4Y2ggY3VycmVudHBvaW50IHBvcCBzdWIgYXRhbgogICAgYXJyb3doZWFkCn0gYmluZCBkZWYKL3BvaW50IHsgICAgbmV3cGF0aCAgICAyIDAgMzYwIGFyYyBmaWxsfSBkZWYvbWFrZXZlYyB7CiAgICAvWSBleGNoIGRlZgogICAgL1ggZXhjaCBkZWYKICAgIC95IGV4Y2ggZGVmCiAgICAveCBleGNoIGRlZgogICAgbmV3cGF0aCB4IHkgbW92ZXRvCiAgICBYIFkgbGluZXRvIHN0cm9rZQogICAgWCBZIG1vdmV0bwogICAgeCB5IG1ha2VhcnJvdwp9IGRlZgoAL3BhdGhib3ggewogICAgL1ggZXhjaCBuZWcgJS41ZyBzdWIgZGVmCiAgICAvWSBleGNoICUuNWcgc3ViIGRlZgogICAgL3ggZXhjaCBuZWcgJS41ZyBzdWIgZGVmCiAgICAveSBleGNoICUuNWcgc3ViIGRlZgogICAgbmV3cGF0aCB4IHkgbW92ZXRvCiAgICBYIHkgbGluZXRvCiAgICBYIFkgbGluZXRvCiAgICB4IFkgbGluZXRvCiAgICBjbG9zZXBhdGggc3Ryb2tlCn0gZGVmCgAlIVBTLUFkb2JlLTIuMAovbm9kZSB7CiAgL1kgZXhjaCBkZWYKICAvWCBleGNoIGRlZgogIC95IGV4Y2ggZGVmCiAgL3ggZXhjaCBkZWYKICBuZXdwYXRoCiAgeCB5IG1vdmV0bwogIHggWSBsaW5ldG8KICBYIFkgbGluZXRvCiAgWCB5IGxpbmV0bwogIGNsb3NlcGF0aCBmaWxsCn0gZGVmCi9jZWxsIHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgL3kgZXhjaCBkZWYKICAveCBleGNoIGRlZgogIG5ld3BhdGgKICB4IHkgbW92ZXRvCiAgeCBZIGxpbmV0bwogIFggWSBsaW5ldG8KICBYIHkgbGluZXRvCiAgY2xvc2VwYXRoIHN0cm9rZQp9IGRlZgoAfSBiaW5kIGRlZgoALlBTICUuNWYgJS41ZgoAb3ZlcmxhcDogJXMgdmFsdWUgJWQgc2NhbGluZyAlLjA0ZgoAICBiZWF1dGlmeV9sZWF2ZXMgJWQgbm9kZSB3ZWlnaHRzICVkIHJvdGF0aW9uICUuMDNmCgAgIHJlcHVsc2l2ZSBleHBvbmVudDogJS4wM2YKACAgSyA6ICUuMDNmIEMgOiAlLjAzZgoAJXMgJS4zZgoACmludGVyc2VjdGlvbiBhdCAlLjNmICUuM2YKACAgICBzY2FsZSAlLjNmCgB0b3J1cyB7ICUuM2YsICUuM2YKACAgICA8JTkuM2YsICU5LjNmLCAlOS4zZj4sICUuM2YKACBpbiAlcyAtIHNldHRpbmcgdG8gJS4wMmYKAGNpcmNsZSAlcyAlLjBmLCUuMGYsJS4wZgoAcmVjdCAlcyAlLjBmLCUuMGYgJS4wZiwlLjBmCgAlZCAlZCAlZCAlLjBmICVkICVkICVkICVkICVkICUuM2YgJWQgJS40ZiAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYKACAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYgJS4wZiAlLjBmCgAlJSUlUGFnZTogMSAxCiUlJSVQYWdlQm91bmRpbmdCb3g6ICUuMGYgJS4wZiAlLjBmICUuMGYKAHBvc1slenVdICUuMGYgJS4wZgoALm5yIFNGICUuMGYKc2NhbGV0aGlja25lc3MgPSAlLjBmCgAlcyBzYXZlIHBvaW50IHNpemUgYW5kIGZvbnQKLm5yIC5TIFxuKC5zCi5uciBERiBcbiguZgoAc2hvd3BhZ2UKJSUlJVRyYWlsZXIKJSUlJUJvdW5kaW5nQm94OiAlLmYgJS5mICUuZiAlLmYKAGFkZGluZyAlenUgaXRlbXMsIHRvdGFsIGFyZWEgPSAlZiwgdyA9ICVmLCBhcmVhL3c9JWYKAGdhcD0lZiwlZgoAICBhc3BlY3QgJWYKAGEgJWYgYiAlZiBjICVmIGQgJWYgciAlZgoAbW9kZWwgJWQgc21hcnRfaW5pdCAlZCBzdHJlc3N3dCAlZCBpdGVyYXRpb25zICVkIHRvbCAlZgoAU29sdmluZyBtb2RlbCAlZCBpdGVyYXRpb25zICVkIHRvbCAlZgoAJXMgY29vcmQgJS41ZyAlLjVnIGh0ICVmIHdpZHRoICVmCgByZWMgJWYgJWYgJWYgJWYKACVzIDogJWYgJWYgJWYgJWYKACVzIDogJWYgJWYKAG1heHBzaHQgPSAlZgptYXhwc3dpZCA9ICVmCgBtZHNNb2RlbDogZGVsdGEgPSAlZgoAIHIxICVmIHIyICVmCgBQYWNraW5nOiBjb21wdXRlIGdyaWQgc2l6ZQoAZ3NhdmUKACUlRW5kQ29tbWVudHMKc2F2ZQoAVW5yZWNvZ25pemVkIGNoYXJhY3RlciAnJWMnICglZCkgaW4gc2lkZXMgYXR0cmlidXRlCgBJbWFnZXMgdW5zdXBwb3J0ZWQgaW4gImJhY2tncm91bmQiIGF0dHJpYnV0ZQoAJXMgR05VIHBpYyB2cy4gMTB0aCBFZGl0aW9uIGRcKGUndGVudGUKAHJlc2V0ICVzIHNldCB0byBrbm93biBzdGF0ZQoAJWcgJWcgc2V0X3NjYWxlICVkIHJvdGF0ZSAlZyAlZyB0cmFuc2xhdGUKACVmICVmIHRyYW5zbGF0ZQoAJWQgJWQgdHJhbnNsYXRlCgAvLyoqKiBlbGxpcHNlCgBVbnJlY29nbml6ZWQgb3ZlcmxhcCB2YWx1ZSAiJXMiIC0gdXNpbmcgZmFsc2UKAG1lbW9yeSBhbGxvY2F0aW9uIGZhaWx1cmUKACVzOiB2c25wcmludGYgZmFpbHVyZQoAZW5kcGFnZQpzaG93cGFnZQpncmVzdG9yZQoAZW5kCnJlc3RvcmUKAGxheW91dCB3YXMgbm90IGRvbmUKAExheW91dCB3YXMgbm90IGRvbmUKAC8vKioqIHBvbHlsaW5lCgB0cnlpbmcgdG8gZGVsZXRlIGEgbm9uLWxpbmUKACMgZW5kIG9mIEZJRyBmaWxlCgBTaW5nbGUKAHJlbmRlcmVyIGZvciAlcyBpcyB1bmF2YWlsYWJsZQoAZHluYW1pYyBsb2FkaW5nIG5vdCBhdmFpbGFibGUKACUuMGYgJS4wZiBsaW5ldG8gc3Ryb2tlCgBjbG9zZXBhdGggc3Ryb2tlCgAgZWxsaXBzZV9wYXRoIHN0cm9rZQoALy8qKiogYmVnaW5fZWRnZQoALy8qKiogZW5kX2VkZ2UKAGxvc3QgJXMgJXMgZWRnZQoAb3ZlcmZsb3cgd2hlbiBjYWxjdWxhdGluZyB2aXJ0dWFsIHdlaWdodCBvZiBlZGdlCgBhZGRfdHJlZV9lZGdlOiBtaXNzaW5nIHRyZWUgZWRnZQoAaW4gcm91dGVzcGxpbmVzLCBjYW5ub3QgZmluZCBOT1JNQUwgZWRnZQoAc2hvd3BhZ2UKACVkICVkICVkIGJlZ2lucGFnZQoALy8qKiogYmVnaW5fcGFnZQoALy8qKiogZW5kX3BhZ2UKAEZpbGVuYW1lICIlcyIgaXMgdW5zYWZlCgBsYWJlbDogYXJlYSB0b28gbGFyZ2UgZm9yIHJ0cmVlCgAvLyoqKiBlbmRfbm9kZQoAVXNpbmcgZGVmYXVsdCBjYWxjdWxhdGlvbiBmb3Igcm9vdCBub2RlCgBjb250YWluX25vZGVzIGNsdXN0ICVzIHJhbmsgJWQgbWlzc2luZyBub2RlCgAlZiAlZiAlZiAlZiBub2RlCgA8PCAvUGFnZVNpemUgWyVkICVkXSA+PiBzZXRwYWdlZGV2aWNlCgBpbiBjaGVja3BhdGgsIGJveCAlenUgaGFzIExMIGNvb3JkID4gVVIgY29vcmQKAGluIGNoZWNrcGF0aCwgYm94IDAgaGFzIExMIGNvb3JkID4gVVIgY29vcmQKAGNsdXN0ZXIgbmFtZWQgJXMgbm90IGZvdW5kCgBtaW5jcm9zczogcGFzcyAlZCBpdGVyICVkIHRyeWluZyAlZCBjdXJfY3Jvc3MgJWxsZCBiZXN0X2Nyb3NzICVsbGQKAG5vZGUgJXMsIHBvcnQgJXMgdW5yZWNvZ25pemVkCgAlcyVzIHVuc3VwcG9ydGVkCgBjbHVzdGVyIGN5Y2xlICVzIC0tICVzIG5vdCBzdXBwb3J0ZWQKACVzIC0+ICVzOiBzcGxpbmUgc2l6ZSA+IDEgbm90IHN1cHBvcnRlZAoAbGF5b3V0IGFib3J0ZWQKAHBhZ2VkaXI9JXMgaWdub3JlZAoAVHdvIGNsdXN0ZXJzIG5hbWVkICVzIC0gdGhlIHNlY29uZCB3aWxsIGJlIGlnbm9yZWQKAElsbGVnYWwgYXR0cmlidXRlICVzIGluICVzIC0gaWdub3JlZAoAVW5rbm93biB2YWx1ZSAlcyBmb3IgYXR0cmlidXRlICJtb2RlbCIgaW4gZ3JhcGggJXMgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBhdHRyaWJ1dGUgIm1vZGUiIGluIGdyYXBoICVzIC0gaWdub3JlZAoAc3RhcnQ9MCBub3Qgc3VwcG9ydGVkIHdpdGggbW9kZT1zZWxmIC0gaWdub3JlZAoAT3ZlcmxhcCB2YWx1ZSAiJXMiIHVuc3VwcG9ydGVkIC0gaWdub3JlZAoAVW5rbm93biB2YWx1ZSAlcyBmb3IgUk9XUyAtIGlnbm9yZWQKAFVua25vd24gdmFsdWUgJXMgZm9yIENPTFVNTlMgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBWQUxJR04gLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBBTElHTiAtIGlnbm9yZWQKAElsbGVnYWwgdmFsdWUgJXMgZm9yIEZJWEVEU0laRSAtIGlnbm9yZWQKAElsbGVnYWwgdmFsdWUgJS4qcyBmb3IgU1RZTEUgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBCQUxJR04gaW4gVEQgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBBTElHTiBpbiBURCAtIGlnbm9yZWQKAFJPV1NQQU4gdmFsdWUgY2Fubm90IGJlIDAgLSBpZ25vcmVkCgBDT0xTUEFOIHZhbHVlIGNhbm5vdCBiZSAwIC0gaWdub3JlZAoAbm9kZSAlcywgcG9ydCAlcywgdW5yZWNvZ25pemVkIGNvbXBhc3MgcG9pbnQgJyVzJyAtIGlnbm9yZWQKAFVua25vd24gInNwbGluZXMiIHZhbHVlOiAiJXMiIC0gaWdub3JlZAoAaW4gcm91dGVzcGxpbmVzLCBQc2hvcnRlc3RwYXRoIGZhaWxlZAoAaW4gcm91dGVzcGxpbmVzLCBQcm91dGVzcGxpbmUgZmFpbGVkCgAjIHBsdWdpbiBsb2FkaW5nIG9mIGRlcGVuZGVuY3kgIiUuKnMiIGZhaWxlZAoAUGFyc2luZyBvZiAiJXMiIGZhaWxlZAoAJXM6JWQ6IGNsYWltZWQgdW5yZWFjaGFibGUgY29kZSB3YXMgcmVhY2hlZAoAIyB1bnN1Y2Nlc3NmdWwgcGx1Z2luIGxvYWQKACUuNWcgJS41ZyB0cmFuc2xhdGUgbmV3cGF0aCB1c2VyX3NoYXBlXyVkCgBuc2l6ZXNjYWxlPSVmLGl0ZXJhdGlvbnM9JWQKAGN0cmwtPm92ZXJsYXA9JWQKACVzICV6dSBub2RlcyAlenUgZWRnZXMgbWF4aXRlcj0lZCBiYWxhbmNlPSVkCgAvLyoqKiBiZWdpbl9sYXllcjogJXMsICVkLyVkCgBkZWdlbmVyYXRlIGNvbmNlbnRyYXRlZCByYW5rICVzLCVkCgAgIG1heCBsZXZlbHMgJWQKAAklcyAlZAoAICBCYXJuZXMtSHV0dCBjb25zdGFudCAlLjAzZiB0b2xlcmFuY2UgICUuMDNmIG1heGl0ZXIgJWQKAGd2d3JpdGVfbm9feiBwcm9ibGVtICVkCgAgIHF1YWR0cmVlIHNpemUgJWQgbWF4X2xldmVsICVkCgByZWJ1aWxkX3ZsaXN0czogbGVhZCBpcyBudWxsIGZvciByYW5rICVkCgByZWJ1aWxkX3ZsaXN0czogcmFuayBsZWFkICVzIG5vdCBpbiBvcmRlciAlZCBvZiByYW5rICVkCgAgIHNtb290aGluZyAlcyBvdmVybGFwICVkIGluaXRpYWxfc2NhbGluZyAlLjAzZiBkb19zaHJpbmtpbmcgJWQKACAgY29vbGluZyAlLjAzZiBzdGVwIHNpemUgICUuMDNmIGFkYXB0aXZlICVkCgBVbnN1cHBvcnRlZCBjaGFyc2V0IHZhbHVlICVkCgBpbiByb3V0ZXNwbGluZXMsIGlsbGVnYWwgdmFsdWVzIG9mIHByZXYgJWQgYW5kIG5leHQgJWQsIGxpbmUgJWQKACAgZWRnZV9s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bWluYXRpb24sIHZlcnNpb24gMgoAJXMgZmlsbHZhbCBpcyAwLjMgaW4gMTB0aCBFZGl0aW9uIChmaWxsIDAgbWVhbnMgYmxhY2spLCAwLjUgaW4gZ3BpYyAoZmlsbCAwIG1lYW5zIHdoaXRlKSwgdW5kZWZpbmVkIGluIERXQiAyCgAlcyByZXNldCB3b3JrcyBpbiBncGljIGFuZCAxMHRoIGVkaXRpb24sIGJ1dCBpc24ndCBkZWZpbmVkIGluIERXQiAyCgBzZXR1cExhdGluMQoAXDAwMQoAJXMgICAgICAgIHRvbGVyYW5jZSAwLjAxCgAgICAgdG9sZXJhbmNlIDAuMQoAJSVQYWdlczogMQoAICAgICAgICBkaWZmdXNlQ29sb3IgMSAxIDEKADEwMC4wMAoAIEVQU0YtMy4wCgAlcyBib3hyYWQgaXMgbm93IDAuMCBpbiBncGljLCBlbHNlIGl0IHJlbWFpbnMgMi4wCgBzcGhlcmUgezwlOS4zZiwgJTkuM2YsICU5LjNmPiwgMS4wCgBXYXJuaW5nOiBubyB2YWx1ZSBmb3Igd2lkdGggb2YgQVNDSUkgY2hhcmFjdGVyICV1LiBGYWxsaW5nIGJhY2sgdG8gMAoAaW5zdGFsbF9pbl9yYW5rLCBsaW5lICVkOiAlcyAlcyByYW5rICVkIGkgPSAlZCBhbiA9IDAKAGNvbmNlbnRyYXRlPXRydWUgbWF5IG5vdCB3b3JrIGNvcnJlY3RseS4KAE5vIGxpYnogc3VwcG9ydC4KAHR3b3BpOiB1c2Ugb2Ygd2VpZ2h0PTAgY3JlYXRlcyBkaXNjb25uZWN0ZWQgY29tcG9uZW50LgoAdGhlIGdyYXBoIGludG8gY29ubmVjdGVkIGNvbXBvbmVudHMuCgBPcnRob2dvbmFsIGVkZ2VzIGRvIG5vdCBjdXJyZW50bHkgaGFuZGxlIGVkZ2UgbGFiZWxzLiBUcnkgdXNpbmcgeGxhYmVscy4KAG1pbmNyb3NzICVzOiAlbGxkIGNyb3NzaW5ncywgJS4yZiBzZWNzLgoAJXMgaXMgbm90IGEga25vd24gY29sb3IuCgBpcyBpbmFwcHJvcHJpYXRlLiBSZXZlcnRpbmcgdG8gdGhlIHNob3J0ZXN0IHBhdGggbW9kZWwuCgBpcyB1bmRlZmluZWQuIFJldmVydGluZyB0byB0aGUgc2hvcnRlc3QgcGF0aCBtb2RlbC4KAFVuYWJsZSB0byByZWNsYWltIGJveCBzcGFjZSBpbiBzcGxpbmUgcm91dGluZyBmb3IgZWRnZSAiJXMiIC0+ICIlcyIuIFNvbWV0aGluZyBpcyBwcm9iYWJseSBzZXJpb3VzbHkgd3JvbmcuCgBFcnJvciBkdXJpbmcgY29udmVyc2lvbiB0byAiVVRGLTgiLiBRdWl0aW5nLgoAb3JkZXJpbmcgJyVzJyBub3QgcmVjb2duaXplZC4KAGdyYWRpZW50IHBlbiBjb2xvcnMgbm90IHlldCBzdXBwb3J0ZWQuCgAgIGluaXRDTWFqVlBTQyBkb25lOiAlZCBnbG9iYWwgY29uc3RyYWludHMgZ2VuZXJhdGVkLgoAVGhlIGNoYXJhY3RlciAnJWMnIGFwcGVhcnMgaW4gYm90aCB0aGUgbGF5ZXJzZXAgYW5kIGxheWVybGlzdHNlcCBhdHRyaWJ1dGVzIC0gbGF5ZXJsaXN0c2VwIGlnbm9yZWQuCgB0aGUgYXNwZWN0IGF0dHJpYnV0ZSBoYXMgYmVlbiBkaXNhYmxlZCBkdWUgdG8gaW1wbGVtZW50YXRpb24gZmxhd3MgLSBhdHRyaWJ1dGUgaWdub3JlZC4KAFRoZSBsYXllcnNlbGVjdCBhdHRyaWJ1dGUgIiVzIiBkb2VzIG5vdCBtYXRjaCBhbnkgbGF5ZXIgc3BlY2lmZWQgYnkgdGhlIGxheWVycyBhdHRyaWJ1dGUgLSBpZ25vcmVkLgoAZWRnZSAlcyAtPiAlcyA6IHNldCBtb3JlIHRoYW4gb25lIHNwbGluZS4gRmlyc3QgdXNlZCwgb3RoZXIgZHJvcHBlZC4KACV6dSBvdXQgb2YgJXp1IGxhYmVscyBwb3NpdGlvbmVkLgoAJXp1IG91dCBvZiAlenUgZXh0ZXJpb3IgbGFiZWxzIHBvc2l0aW9uZWQuCgAgIGdlbmVyYXRlIGVkZ2UgY29uc3RyYWludHMuLi4KAEdlbmVyYXRpbmcgTm9uLW92ZXJsYXAgQ29uc3RyYWludHMuLi4KAEdlbmVyYXRpbmcgRWRnZSBDb25zdHJhaW50cy4uLgoAR2VuZXJhdGluZyBEaUctQ29MYSBFZGdlIENvbnN0cmFpbnRz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c2V0dGluZyBhIGJvdW5kaW5nIGJveCBzaXplLCBzZWUgZG90KDEpKQoAZXJyb3IgaW4gY29sb3J4bGF0ZSgpCgB0cnVuY2F0aW5nIHN0eWxlICclcycKAElsbGVnYWwgdmFsdWUgaW4gIiVzIiBjb2xvciBhdHRyaWJ1dGU7IGZsb2F0IGV4cGVjdGVkIGFmdGVyICc7JwoAZGVmaW5lIGF0dHJzMCAlJSAlJTsgZGVmaW5lIHVuZmlsbGVkICUlICUlOyBkZWZpbmUgcm91bmRlZCAlJSAlJTsgZGVmaW5lIGRpYWdvbmFscyAlJSAlJQoAPHN2ZyB3aWR0aD0iJWRwdCIgaGVpZ2h0PSIlZHB0IgoAIyBkZXBlbmRlbmNpZXMgIiUuKnMiIGRpZCBub3QgbWF0Y2ggIiUuKnMiCgAjIHR5cGUgIiUuKnMiIGRpZCBub3QgbWF0Y2ggIiUuKnMiCgAkYyBjcmVhdGUgaW1hZ2UgJS4yZiAlLjJmIC1pbWFnZSAicGhvdG9fJXMiCgBObyBvciBpbXByb3BlciBpbWFnZSBmaWxlPSIlcyIKAGZpbGUgbG9hZGluZyBpcyBkaXNhYmxlZCBiZWNhdXNlIHRoZSBlbnZpcm9ubWVudCBjb250YWlucyBTRVJWRVJfTkFNRT0iJXMiCgBDb3VsZCBub3QgcGFyc2UgeGRvdCAiJXMiCgBObyBsb2FkaW1hZ2UgcGx1Z2luIGZvciAiJXMiCgAgWyV6dV0gKCUuMDJmLCUuMDJmKSAoJS4wMmYsJS4wMmYpICVwICIlcyIKAGZvbnRuYW1lOiB1bmFibGUgdG8gcmVzb2x2ZSAiJXMiCgBEdXBsaWNhdGUgY2x1c3RlciBuYW1lICIlcyIKAHVucmVjb2duaXplZCBhcGkgbmFtZSAiJXMiCgBpbWFnZSBjcmVhdGUgcGhvdG8gInBob3RvXyVzIiAtZmlsZSAiJXMiCgBObyBvciBpbXByb3BlciBzaGFwZWZpbGU9IiVzIiBmb3Igbm9kZSAiJXMiCgBObyBvciBpbXByb3BlciBpbWFnZT0iJXMiIGZvciBub2RlICIlcyIKAG5vZGUgIiVzIiBpcyBjb250YWluZWQgaW4gdHdvIG5vbi1jb21wYXJhYmxlIGNsdXN0ZXJzICIlcyIgYW5kICIlcyIKAEVycm9yOiBub2RlICIlcyIgYmVsb25ncyB0byB0d28gbm9uLW5lc3RlZCBjbHVzdGVycyAiJXMiIGFuZCAiJXMiCgAgICIlcyIKACNpbmNsdWRlICJjb2xvcnMuaW5jIgojaW5jbHVkZSAidGV4dHVyZXMuaW5jIgojaW5jbHVkZSAic2hhcGVzLmluYyIKAFVua25vd24gSFRNTCBlbGVtZW50IDwlcz4gb24gbGluZSAlbHUgCgAlcyBpbiBsaW5lICVsdSAKAHNjYWxlIGJ5ICVnLCVnIAoAY29tcHJlc3MgJWcgCgBMYXlvdXQgd2FzIG5vdCBkb25lLiAgTWlzc2luZyBsYXlvdXQgcGx1Z2lucz8gCgCJUE5HDQoaCgAJAEGBgAULtgMBAQEBAQEBAQIDAQECAQEBAQEBAQEBAQEBAQEBAQEBAgEEBQEBAQEBAQYBAQcICQoKCgoKCgoKCgoBAQsBDAENDg8QERITFBUWExMTExcYGRMaGxwdExMTExMBHgEBEwEfICEiIxMkJSYTExMTJygpEyorLC0TExMTEwEBAQEBExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMuExMTLxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTMBMTExMTExMTExMTExMTExMAAAAAAAAEAAQAHAAcACEAIQAkACIACgACABYACQAiACIAIgAVAB0AAQAUABQAFAAUABQAFAAUAAgABAAFABwAGwAXABwAIQAgAB8AHgAJABMAAAAVABIAFQADAAcAFQAVABQAFAAUABQAFAAUABQAFAAIAAQABQAFAAYAHAAaABgAGQAhAAcAFQAUABQAFAAUABQAFAALABQADQAUAAwAFAAUABQADgAUABQAFAAQABQADwAUABEAQcKDBQuVBAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAMABAAHAAMABAAFAAUABgAGAAgABwAHABEAFgASABEAEgAIAAgADwAPABcADwAYAA8AGQAaABoAHgAWADQAHgAFADIABgAiACIAMwAXABgANQAZABoAGgAqADYAKgA0ADcAMgBFADsAPAAzADsAPABGADUARwBIAEwANgAiAEkASgA3AEUATgBQAGIAUQBSAFQARgBHAFUASABMAFYASQBKAFgAWgBOAEQAUABRAFIAVAA4AC8ALABVACkAVgAbABAAWABaAF0AXQBdAF0AXQBdAF0AXgBeAF4AXgBeAF4AXgBfAF8AXwBfAF8AXwBfAGAACQBgAGAAYABgAGAAYQBhAGMAAgBjAGMAYwBjAGMAZAAAAGQAAABkAGQAZABlAAAAZQBlAGUAZQBlAGYAAAAAAGYAZgBmAGYAZwAAAGcAZwBnAGcAaAAAAGgAaABoAGgAaABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAEHkhwULzQGuAC4ALwAzADUAMAA3AKoA2wDbANsA2wAAAD0AhwA3ADcA2wDbAAAAKAA1AC4AMgAvAGIAAAAAAEcAAADbANsAUQAAANsA2wDbAAAA2wCEAFUA2wCCANsAAACBANsAAAA+AEIAQQBIAEQAUgBbAAAAAABeAF8A2wAAANsA2wDbAAAAAAB7AEkAVwBSAFoAWgBdAAAAXwAAAF8AAABlAF0AXwAAAF0AbgBqAAAAaQAAAG4AAADbAJMAmgChAKgAqwBwALEAuAC/AMYAzQDTAEHCiQULzwFcAAEAXQBdAF4AXgBfAF8AXABcAFwAXABcAGAAXABcAFwAYQBcAFwAYgBiAGIAYgBiAGIAYgBjAGQAZQBmAFwAXABcAGcAXABcAFwAYABcAFwAYQBcAGEAXABoAGEAXABiAGIAYgBiAGIAYgBiAGIAYwBkAGUAZQBcAGYAXABcAFwAZwBoAGEAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAAAAXABcAFwAXABcAFwAXABcAFwAXABcAFwAQaGLBQswAQECAwEEAQUBBgcHAQYGBgYGBgYGBgYGBgYGBgYDBgYGBgYGBgYGBgYGBgYGBgYGAEHiiwULowQKAAsADAANAA4ACgAPABAAEQASABMACgAUABUAFQAVABYAFwAVABgAFQAVABkAFQAVABUAGgAVABUACgAVABUAFQAWABcAGAAVABUAGQAVABUAFQAaABUAFQAVABUAGwAMAAwAJAAeAB4AIAAhACAAIQAkACUAJgAtADIALwAuACoAJQAmACgAKQAzACoANAArADUANgA3ADwAMgBHAD0AIgBFACIAPwBAAEYAMwA0AEgANQA2ADcALwBJACoARwBKAEUATABcADwARgBcAD0ATQBIAE4ATwBSAEkAQQBQAFEASgBMAFMAVAAxAFUAVgBXAE0ATgBYAE8AUgBZAFAAUQBaAFsAUwBEAFQAVQBWAFcASwBEACwAWAAsAFkAOAAsAFoAWwAdAB0AHQAdAB0AHQAdAB8AHwAfAB8AHwAfAB8AIwAjACMAIwAjACMAIwAnAFwAJwAnACcAJwAnADAAMAA5ABwAOQA5ADkAOQA5ADoAXAA6AFwAOgA6ADoAOwBcADsAOwA7ADsAOwA+AFwAXAA+AD4APgA+AEIAXABCAEIAQgBCAEMAXABDAEMAQwBDAEMACQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAMAAAADQAAAA4AAAAOAEGQkAUL0QUR7u4TCAPu/u7u7gHu7u4B7u4J/u4SFRfuEgHu7u7uCg3u7u7u7u7u7u4B7u4WCAEBGQ4Y7u4bGBru7h3u7u7uARX77u7u7hAe7u7uAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIWEQICAgICAgICAgICAgISEAITAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIUAhUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4CDwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBAgMEBQYHCAkKCwwNAAAACwMEBQ8HAwwNBgwNDgwNGhUAAQADBw4GDwgM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ADekAAB7Zcx7zMT/AFqXAACMqspDosr/ABiMAACR86wIaKz/APW/AABBEfnw+ej/AOawAABNKevM68X/ANeiAABfPd2o3bX/APqVAAB7Zcx7zMT/ALiKAACMqspDosr/AJWDAACR86wIaKz/AJW+AABBEfnw+ej/AIavAABNKevM68X/AHehAABfPd2o3bX/AJqUAAB7Zcx7zMT/AFiJAACJoNNOs9P/ADWCAACNxb4rjL7/AHp8AACT8p4IWJ7/ADW9AAA8DPz3/PD/ACauAABMGfPg89v/ABegAABNKevM68X/ADqTAABfPd2o3bX/APiHAAB7Zcx7zMT/ANWAAACJoNNOs9P/ABp7AACNxb4rjL7/ALV2AACT8p4IWJ7/AP+7AAA8DPz3/PD/APCsAABMGfPg89v/AOGeAABNKevM68X/AASSAABfPd2o3bX/AMKGAAB7Zcx7zMT/AJ9/AACJoNNOs9P/AOR5AACNxb4rjL7/AH91AACR86wIaKz/AG5yAACW74EIQIH/AEfEAABKFfXl9eD/ADi1AABQSNmh2Zv/ACmnAABisqMxo1T/AOfCAABJD/jt+On/ANizAABONuS65LP/AMmlAABWaMR0xHb/AOyYAABivosji0X/AIfBAABJD/jt+On/AHiyAABONuS65LP/AGmkAABWaMR0xHb/AIyXAABisqMxo1T/AEqMAABm/20AbSz/ACfAAABJD/jt+On/ABixAABNLOnH6cD/AAmjAABQSNmh2Zv/ACyWAABWaMR0xHb/AOqKAABisqMxo1T/AMeDAABm/20AbSz/AMe+AABJD/jt+On/ALivAABNLOnH6cD/AKmhAABQSNmh2Zv/AMyUAABWaMR0xHb/AIqJAABgnqtBq13/AGeCAABivosji0X/AKx8AABs/1oAWjL/AGe9AABIB/z3/PX/AFiuAABKFfXl9eD/AEmgAABNLOnH6cD/AGyTAABQSNmh2Zv/ACqIAABWaMR0xHb/AAeBAABgnqtBq13/AEx7AABivosji0X/AOd2AABs/1oAWjL/ACa8AABIB/z3/PX/ABetAABKFfXl9eD/AAifAABNLOnH6cD/ACuSAABQSNmh2Zv/AOmGAABWaMR0xHb/AMZ/AABgnqtBq13/AAt6AABivosji0X/AKZ1AABm/20AbSz/AJVyAABl/0QARBv/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AG/DAADk3NDQHIv/AGC0AADlPvHxttr/AFGmAAA9Z+G44Yb/AHSZAABIxqxNrCb/AA/CAADk3NDQHIv/AACzAADlPvHxttr/APGkAAAAAPf39/f/ABSYAAA9Z+G44Yb/ANKMAABIxqxNrCb/AK/AAADm3MXFG33/AKCxAADnTOnpo8n/AJGjAADpHf394O//ALSWAAA7JvXm9dD/AHKLAAA/gdeh12r/AE+EAABExZJNkiH/AE+/AADm3MXFG33/AECwAADnTOnpo8n/ADGiAADpHf394O//AFSVAAAAAPf39/f/ABKKAAA7JvXm9dD/AO+CAAA/gdeh12r/ADR9AABExZJNkiH/AO+9AADm3MXFG33/AOCuAADodt7ed67/ANGgAADlPvHxttr/APSTAADpHf394O//ALKIAAA7JvXm9dD/AI+BAAA9Z+G44Yb/ANR7AAA/prx/vEH/AG93AABExZJNkiH/AK68AADm3MXFG33/AJ+tAADodt7ed67/AJCfAADlPvHxttr/ALOSAADpHf394O//AHGHAAAAAPf39/f/AE6AAAA7JvXm9dD/AJN6AAA9Z+G44Yb/AC52AAA/prx/vEH/AB1zAABExZJNkiH/AP7FAADO/0tAAEv/AB7KAABl/0QARBv/AO+2AADOrYN2KoP/AOCoAADHV6uZcKv/AKOaAADHM8/Cpc//AAGOAADSFejn1Oj/AH6FAABMHvDZ8NP/AGN+AABQRNum26D/AJ54AABYe65armH/AC10AABhxXgbeDf/AIbFAADO/0tAAEv/AJvJAABhxXgbeDf/AGG7AABl/0QARBv/AHe2AADOrYN2KoP/AGioAADHV6uZcKv/ACuaAADHM8/Cpc//AImNAADSFejn1Oj/AAaFAAAAAPf39/f/AOt9AABMHvDZ8NP/ACZ4AABQRNum26D/ALVzAABYe65armH/AKXEAADERsOvjcP/AJa1AAAAAPf39/f/AIenAABSWr9/v3v/AEXDAADJqJR7MpT/ADa0AADHM8/Cpc//ACemAABQRNum26D/AEqZAABm/4gAiDf/AOXBAADJqJR7MpT/ANayAADHM8/Cpc//AMekAAAAAPf39/f/AOqXAABQRNum26D/AKiMAABm/4gAiDf/AIXAAADOrYN2KoP/AHaxAADERsOvjcP/AGejAADSFejn1Oj/AIqWAABMHvDZ8NP/AEiLAABSWr9/v3v/ACWEAABhxXgbeDf/ACW/AADOrYN2KoP/ABawAADERsOvjcP/AAeiAADSFejn1Oj/ACqVAAAAAPf39/f/AOiJAABMHvDZ8NP/AMWCAABSWr9/v3v/AAp9AABhxXgbeDf/AMW9AADOrYN2KoP/ALauAADHV6uZcKv/AKegAADHM8/Cpc//AMqTAADSFejn1Oj/AIiIAABMHvDZ8NP/AGWBAABQRNum26D/AKp7AABYe65armH/AEV3AABhxXgbeDf/AIS8AADOrYN2KoP/AHWtAADHV6uZcKv/AGafAADHM8/Cpc//AImSAADSFejn1Oj/AEeHAAAAAPf39/f/ACSAAABMHvDZ8NP/AGl6AABQRNum26D/AAR2AABYe65armH/APNyAABhxXgbeDf/AAHEAAC9C/Ls5/L/APK0AACXPdumvdv/AOOmAACNxb4rjL7/AKHCAAC5CPbx7vb/AJKzAACbKOG9yeH/AIOlAACRcM90qc//AKaYAACP97AFcLD/AEHBAAC5CPbx7vb/ADKyAACbKOG9yeH/ACOkAACRcM90qc//AEaXAACNxb4rjL7/AASMAACP940EWo3/AOG/AAC5CPbx7vb/ANKwAACoGObQ0eb/AMOiAACXPdumvdv/AOaVAACRcM90qc//AKSKAACNxb4rjL7/AIGDAACP940EWo3/AIG+AAC5CPbx7vb/AHKvAACoGObQ0eb/AGOhAACXPdumvdv/AIaUAACRcM90qc//AESJAACOt8A2kMD/ACGCAACP97AFcLD/AGZ8AACP+HsDTnv/ACG9AADpCP//9/v/ABKuAAC9C/Ls5/L/AAOgAACoGObQ0eb/ACaTAACXPdumvdv/AOSHAACRcM90qc//AMGAAACOt8A2kMD/AAZ7AACP97AFcLD/AKF2AACP+HsDTnv/AOu7AADpCP//9/v/ANysAAC9C/Ls5/L/AM2eAACoGObQ0eb/APCRAACXPdumvdv/AK6GAACRcM90qc//AIt/AACOt8A2kMD/ANB5AACP97AFcLD/AGt1AACP940EWo3/AFpyAACP+VgCOFj/AJHEAADIDvDs4vD/AIK1AACXPdumvdv/AHOnAACC0JkckJn/ADHDAADPCPf27/f/ACK0AACbKOG9yeH/ABOmAACPgM9nqc//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ANaZAADPhKOYTqP/AHHCAAD+4eTkGhz/AGKzAACSsrg3frj/AFOlAABTk69Nr0r/AHaYAADPhKOYTqP/ADSNAAAV////fwD/ABHBAAD+4eTkGhz/AAKyAACSsrg3frj/APOjAABTk69Nr0r/ABaXAADPhKOYTqP/ANSLAAAV////fwD/ALGEAAAqzP///zP/ALG/AAD+4eTkGhz/AKKwAACSsrg3frj/AJOiAABTk69Nr0r/ALaVAADPhKOYTqP/AHSKAAAV////fwD/AFGDAAAqzP///zP/AJZ9AAAPwaamVij/AFG+AAD+4eTkGhz/AEKvAACSsrg3frj/ADOhAABTk69Nr0r/AFaUAADPhKOYTqP/ABSJAAAV////fwD/APGBAAAqzP///zP/ADZ8AAAPwaamVij/ANF3AADoeff3gb//APG8AAD+4eTkGhz/AOKtAACSsrg3frj/ANOfAABTk69Nr0r/APaSAADPhKOYTqP/ALSHAAAV////fwD/AJGAAAAqzP///zP/ANZ6AAAPwaamVij/AHF2AADoeff3gb//AGBzAAAAAJmZmZn/ABLFAAByeMJmwqX/AAO2AAALm/z8jWL/APSnAACcTcuNoMv/ALLDAAByeMJmwqX/AKO0AAALm/z8jWL/AJSmAACcTcuNoMv/ALeZAADkZufnisP/AFLCAAByeMJmwqX/AEOzAAALm/z8jWL/ADSlAACcTcuNoMv/AFeYAADkZufnisP/ABWNAAA6m9im2FT/APLAAAByeMJmwqX/AOOxAAALm/z8jWL/ANSjAACcTcuNoMv/APeWAADkZufnisP/ALWLAAA6m9im2FT/AJKEAAAi0P//2S//AJK/AAByeMJmwqX/AIOwAAALm/z8jWL/AHSiAACcTcuNoMv/AJeVAADkZufnisP/AFWKAAA6m9im2FT/ADKDAAAi0P//2S//AHd9AAAZWuXlxJT/ADK+AAByeMJmwqX/ACOvAAALm/z8jWL/ABShAACcTcuNoMv/ADeUAADkZufnisP/APWIAAA6m9im2FT/ANKBAAAi0P//2S//ABd8AAAZWuXlxJT/ALJ3AAAAALOzs7P/AELGAAB4VNON08f/AGjKAADTUr28gL3/ADO3AAAqTP///7P/ACSpAACvJdq+utr/AOeaAAAEi/v7gHL/AEWOAACQZNOAsdP/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ACs6AAAhIv//+Nz/AEYwAAD259zcFDz/AI80AAB///8A////AP9GAACq/4sAAIv/AIE0AAB//4sAi4v/AHdRAAAe77i4hgv/AEEIAAAAAKmpqan/AJ8zAABV/2QAZAD/AHYHAAAAAKmpqan/AAk7AAAnbr29t2v/AD1gAADU/4uLAIv/ANYzAAA6jmtVay//AF5OAAAX////jAD/AHpTAADGwMyZMsz/AIZVAAAA/4uLAAD/AMYwAAAKeenplnr/ADg0AABVPbyPvI//ADpHAACvj4tIPYv/AGMIAAB/Z08vT0//AJgHAAB/Z08vT0//ABVKAACA/9EAztH/AP8QAADH/9OUANP/AMs5AADo6///FJP/ACJGAACK//8Av///ADQIAAAAAGlpaWn/AGkHAAAAAGlpaWn/AJRGAACU4f8ekP//AGQ6AAAAzrKyIiL/AJ5IAAAcD///+vD/AGIzAABVwIsiiyL/AAJhAADU////AP//AO4uAAAAANzc3Nz/AH1IAACqB//4+P//AL9SAAAj////1wD/AJ1RAAAe2drapSD/AJUIAAAAAICAgID/AGE0AABV/4AAgAD/AE4KAAA70P+t/y//AMoHAAAAAICAgID/AFcLAABVD//w//D/AK85AADplv//abT/AHdVAAAAjM3NXFz/AEwvAADC/4JLAIL/AFYGAAAqD/////D/ABg7AAAmavDw5oz/AAIdAACqFPrm5vr/AG08AADwD///8PX/AJAzAABA//x8/AD/ABQyAAAmMf//+s3/AGJGAACJP+at2Ob/AGo4AAAAd/DwgID/AHI0AAB/H//g////AF8KAAAqKPr6+tL/ACUIAAAAANPT09P/AHMzAABVZO6Q7pD/AFoHAAAAANPT09P/ALw5AAD4Sf//tsH/ALUwAAAMhP//oHr/ABE0AAB90bIgsqr/ABBGAACPdfqHzvr/AE8IAACUOJl3iJn/AIQHAACUOJl3iJn/AM1GAACXNN6wxN7/AD0KAAAqH////+D/ABhMAABV//8A/wD/AOozAABVwM0yzTL/AAwzAAAVFPr68Ob/AE5gAADU////AP//AKkwAAAA/4CAAAD/AGhLAABxgM1mzar/AL1GAACq/80AAM3/AGhTAADMmNO6VdP/AOBMAAC3fNuTcNv/ACQ0AABnqbM8s3H/ACVHAACwj+57aO7/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APeqAAAXJO7u38z/AMacAAAXJM3NwLD/AAeQAAAYIouLg3j/AC5gAAB///8A////AINLAABxgP9//9T/AKW5AABxgP9//9T/AD2rAABxgO527sb/AAydAABxgM1mzar/AFSQAABxgItFi3T/AKZKAAB/D//w////AJ65AAB/D//w////ADarAAB/D+7g7u7/AAWdAAB/Ds3Bzc3/AEaQAAB/DouDi4v/AIhOAAAqGvX19dz/AEhFAAAXOv//5MT/AOe4AAAXOv//5MT/AH+qAAAXOu7u1bf/AE6cAAAWOs3Nt57/AI+PAAAXOouLfWv/AIU6AAAAAAAAAAD/ADdSAAAZMf//683/AHBHAACq//8AAP//AEy5AACq//8AAP//AOSqAACq/+4AAO7/ALOcAACq/80AAM3/APSPAACq/4sAAIv/ABQRAADAzuKKK+L/AP0vAAAAvqWlKir/AOi3AAAAv///QED/AJypAAAAv+7uOzv/AHObAAAAv83NMzP/ALSOAAAAvouLIyP/ALFRAAAXY97euIf/AAS6AAAXZP//05v/AIurAAAXY+7uxZH/AFqdAAAXY83Nqn3/AKKQAAAXY4uLc1X/AHZGAACAZ6BfnqD/ABW5AACDZ/+Y9f//AK2qAACDZu6O5e7/AHycAACDZ816xc3/AL2PAACDZotThov/AGVJAAA///9//wD/AHi5AAA///9//wD/ABCrAAA//+527gD/AN+cAAA//81mzQD/ACCQAAA//4tFiwD/ADVJAAAR2tLSaR7/AG25AAAR2///fyT/AAWrAAAR2+7udiH/ANScAAAR2s3NZh3/ABWQAAAR3IuLRRP/AH84AAALr///f1D/AHe4AAAHqf//clb/AByqAAAGqe7ualD/APObAAAGqc3NW0X/ADSPAAAGqIuLPi//AIVGAACak+1kle3/ADA6AAAhIv//+Nz/AJy4AAAhIv//+Nz/AEGqAAAiI+7u6M3/ABicAAAiIs3NyLH/AFmPAAAjIouLiHj/AEswAAD259zcFDz/AJQ0AAB///8A////AFy4AAB///8A////AAGqAAB//+4A7u7/ANibAAB//80Azc3/ABmPAAB//4sAi4v/AARHAACq/4sAAIv/AIY0AAB//4sAi4v/AHxRAAAe77i4hgv/APW5AAAe8P//uQ//AHyrAAAe8O7urQ7/AEudAAAe8M3NlQz/AJOQAAAe8IuLZQj/AEYIAAAAAKmpqan/AKQzAABV/2QAZAD/AHsHAAAAAKmpqan/AA47AAAnbr29t2v/AEJgAADU/4uLAIv/ANszAAA6jmtVay//AC64AAA6j//K/3D/ANOpAAA6j+687mj/AKqbAAA6j82izVr/AOuOAAA6j4tuiz3/AGNOAAAX////jAD/AMi5AAAV////fwD/AGCrAAAV/+7udgD/AC+dAAAV/83NZgD/AHeQAAAV/4uLRQD/AH9TAADGwMyZMsz/ACO6AADGwf+/Pv//AKqrAADGwO6yOu7/AHmdAADGwM2aMs3/AMGQAADGwItoIov/AItVAAAA/4uLAAD/AMswAAAKeenplnr/AD00AABVPbyPvI//AEm4AABVPv/B/8H/AO6pAABVPu607rT/AMWbAABVPs2bzZv/AAaPAABVPotpi2n/AD9HAACvj4tIPYv/AGgIAAB/Z08vT0//AJK3AAB/aP+X////AEKpAAB/Z+6N7u7/ACubAAB/aM15zc3/AHGOAAB/aItSi4v/AJ0HAAB/Z08vT0//ABpKAACA/9EAztH/AAQRAADH/9OUANP/ANA5AADo6///FJP/AJK4AADo6///FJP/ADeqAADo6+7uEon/AA6cAADo683NEHb/AE+PAADn7IuLClD/ACdGAACK//8Av///AP24AACK//8Av///AJWqAACK/+4Asu7/AGScAACK/80Ams3/AKWPAACK/4sAaIv/ADkIAAAAAGlpaWn/AG4HAAAAAGlpaWn/AJlGAACU4f8ekP//ACC5AACU4f8ekP//ALiqAACU4e4chu7/AIecAACU4c0YdM3/AMiPAACU4YsQTov/AGk6AAAAzrKyIiL/AKa4AAAAz///MDD/AEuqAAAAz+7uLCz/ACKcAAAAz83NJib/AGOPAAAAz4uLGhr/AKNIAAAcD///+vD/AGczAABVwIsiiyL/AAdhAADU////AP//APMuAAAAANzc3Nz/AIJIAACqB//4+P//AMRSAAAj////1wD/AA+6AAAj////1wD/AJarAAAj/+7uyQD/AGWdAAAj/83NrQD/AK2QAAAj/4uLdQD/AKJRAAAe2drapSD/APm5AAAe2v//wSX/AICrAAAe2u7utCL/AE+dAAAe2s3Nmx3/AJeQAAAe2ouLaRT/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AFEvAADC/4JLAIL/ALMWAAAqAP////4AAFsGAAAqD/////D/AIW3AAAqD/////D/ADWpAAAqD+7u7uD/AAebAAAqDs3NzcH/AGSOAAAqDouLi4P/AB07AAAmavDw5oz/AMa4AAAncP//9o//AFaqAAAncO7u5oX/AC2cAAAnb83NxnP/AG6PAAAnb4uLhk7/AAcdAACqFPrm5vr/AHI8AADwD///8PX/AM24AADwD///8PX/AF2qAADvD+7u4OX/ADScAADwDs3NwcX/AHWPAADvDouLg4b/AJUzAABA//x8/AD/ABkyAAAmMf//+s3/AAS4AAAmMf//+s3/ALipAAAlMu7u6b//AI+bAAAmMc3NyaX/ANCOAAAnMYuLiXD/AGdGAACJP+at2Ob/AAq5AACKQP+/7///AKKqAACKQO6y3+7/AHGcAACKP82awM3/ALKPAACJQItog4v/AG84AAAAd/DwgID/AHc0AAB/H//g////AFe4AAB/H//g////APypAAB/H+7R7u7/ANObAAB/H820zc3/ABSPAAB/H4t6i4v/AFhRAAAjc+7u3YL/AOW5AAAjdP//7Iv/AGyrAAAjc+7u3IL/ADudAAAjc83NvnD/AIOQAAAjc4uLgUz/AGQKAAAqKPr6+tL/ACoIAAAAANPT09P/AHgzAABVZO6Q7pD/AF8HAAAAANPT09P/AME5AAD4Sf//tsH/AIe4AAD5Uf//rrn/ACyqAAD4Ue7uoq3/AAOcAAD5UM3NjJX/AESPAAD5UIuLX2X/ALowAAAMhP//oHr/APe3AAAMhP//oHr/AKupAAALhO7ulXL/AIKbAAAMhc3NgWL/AMOOAAAMhYuLV0L/ABY0AAB90bIgsqr/ABVGAACPdfqHzvr/AO+4AACPT/+w4v//AIeqAACPT+6k0+7/AFacAACOT82Nts3/AJePAACPTotge4v/ABZHAACvj/+EcP//AFQIAACUOJl3iJn/AIkHAACUOJl3iJn/ANJGAACXNN6wxN7/ACy5AACXNf/K4f//AMSqAACXNe680u7/AJOcAACXNc2itc3/ANSPAACWNYtue4v/AEIKAAAqH////+D/AKu3AAAqH////+D/AFupAAAqH+7u7tH/AESbAAAqH83NzbT/AIqOAAAqH4uLi3r/AB1MAABV//8A/wD/AO8zAABVwM0yzTL/ABEzAAAVFPr68Ob/AFNgAADU////AP//AF+6AADU////AP//AOarAADU/+7uAO7/ALWdAADU/83NAM3/AP2QAADU/4uLAIv/AK4wAADvubCwMGD/AO+3AADky///NLP/AKOpAADky+7uMKf/AHqbAADkzM3NKZD/ALuOAADky4uLHGL/AG1LAABxgM1mzar/AMJGAACq/80AAM3/AG1TAADMmNO6VdP/ABW6AADLmf/gZv//AJyrAADLme7RX+7/AGudAADLmc20Us3/ALOQAADLmot6N4v/AOVMAAC3fNuTcNv/ALq5AAC3ff+rgv//AFKrAAC3fe6fee7/ACGdAAC3fc2JaM3/AGmQAAC3fItdR4v/ACk0AABnqbM8s3H/ACpHAACwj+57aO7/ALMzAABv//oA+pr/AAVKAAB9p9FI0cz/AOdUAADk5MfHFYX/AFVGAACqxnAZGXD/AIQ2AABqCf/1//r/AJJJAAAEHv//5OH/AIS5AAAEHv//5OH/AByrAAAEHu7u1dL/AOucAAADHc3Nt7X/ACyQAAAFHYuLfXv/AEEyAAAaSf//5LX/AJJIAAAZUf//3q3/AFK5AAAZUf//3q3/AOqqAAAZUu7uz6H/ALmcAAAZUs3Ns4v/APqPAAAZUouLeV7/AIcEAACq/4AAAID/AAdGAACq/4AAAID/AEBLAAAqAP////4AAAdRAAAbF/399eb/APJEAAAq/4CAgAD/ABhgAAA4wI5rjiP/AFS6AAA4wf/A/z7/ANurAAA4wO6z7jr/AKqdAAA4wM2azTL/APKQAAA4wItpiyL/AHNOAAAb////pQD/AMy5AAAb////pQD/AGSrAAAb/+7umgD/ADOdAAAb/83NhQD/AHuQAAAb/4uLWgD/AN5VAAAL////RQD/AEm6AAAL////RQD/ANCrAAAL/+7uQAD/AJ+dAAAL/83NNwD/AOeQAAAL/4uLJQD/AI9TAADWe9racNb/ACe6AADWfP//g/r/AK6rAADWfO7ueun/AH2dAADWfM3Nacn/AMWQAADVfIuLR4n/AI9RAAAmSO7u6Kr/AP4zAABVZPuY+5j/AD64AABVZf+a/5r/AOOpAABVZO6Q7pD/ALqbAABVZM18zXz/APuOAABVZItUi1T/AC1KAAB/Q+6v7u7/AI+5AAB/RP+7////ACerAAB/RO6u7u7/APacAAB/RM2Wzc3/ADeQAAB/Q4tmi4v/APxUAADxfNvbcJP/AC+6AADxff//gqv/ALarAADxfe7ueZ//AIWdAADxfc3NaIn/AM2QAADxfIuLR13/AEctAAAaKf//79X/ACJCAAAURv//2rn/ANy4AAAURv//2rn/AGyqAAATRe7uy63/AEOcAAATRc3Nr5X/AISPAAAURYuLd2X/ANULAAAUsM3NhT//AOc5AAD3P///wMv/AJa4AAD1Sf//tcX/ADuqAAD1Se7uqbj/ABKcAAD1Ss3NkZ7/AFOPAAD1SYuLY2z/APg1AADURt3doN3/AGe4AADURP//u///AAyqAADURO7uru7/AOObAADURM3Nls3/ACSPAADUQ4uLZov/AKlGAACEO+aw4Ob/AEFNAADE3fCgIPD/AMC5AAC/z/+bMP//AFirAADAz+6RLO7/ACedAADAz819Js3/AG+QAADAz4tVGov/AAdNAAC/qplmM5n/AChWAAAA////AAD/AE+6AAAA////AAD/ANarAAAA/+7uAAD/AKWdAAAA/83NAAD/AO2QAAAA/4uLAAD/AL8vAAAAPby8j4//AOS3AAAAPv//wcH/AJipAAAAPu7utLT/AG+bAAAAPs3Nm5v/ALCOAAAAPouLaWn/APVGAACfteFBaeH/ADy5AACft/9Idv//ANSqAACft+5Dbu7/AKOcAACfts06X83/AOSPAACft4snQIv/AOwvAAAR3IuLRRP/ANswAAAEivr6gHL/APy3AAAJlv//jGn/ALCpAAAJlu7ugmL/AIebAAAJls3NcFT/AMiOAAAJlouLTDn/AM4vAAATmvT0pGD/AE80AABnqosui1f/AE24AABnq/9U/5//APKpAABnq+5O7pT/AMmbAABnq81DzYD/AAqPAABnqosui1f/AD03AAAREP//9e7/AG24AAAREP//9e7/ABKqAAASEe7u5d7/AOmbAAASEc3Nxb//ACqPAAASEIuLhoL/AM1gAAANt6CgUi3/AGi6AAANuP//gkf/AO+rAAANuO7ueUL/AL6dAAANuM3NaDn/AAaRAAANuYuLRyb/ANsbAAAAAMDAwMD/ADhGAACLbOuHzuv/AAG5AACQeP+Hzv//AJmqAACQeO5+wO7/AGicAACQeM1sps3/AKmPAACRd4tKcIv/AFJHAACvj81qWs3/AEe5AACvkP+Db///AN+qAACvkO56Z+7/AK6cAACvkM1pWc3/AO+PAACvkItHPIv/AHsIAACUOJBwgJD/AJa3AACVOP/G4v//AEapAACVOO650+7/AC+bAACUOc2fts3/AHWOAACVOItse4v/ALAHAACUOJBwgJD/ABcKAAAABf//+vr/AKW3AAAABf//+vr/AFWpAAAABe7u6en/AD6bAAAABM3Nycn/AISOAAAAA4uLiYn/AMozAABq//8A/3//ACG4AABq//8A/3//AMapAABq/+4A7nb/AJ2bAABq/80AzWb/AN6OAABq/4sAi0X/AOZGAACSm7RGgrT/ADG5AACSnP9juP//AMmqAACSnO5crO7/AJicAACSnM1PlM3/ANmPAACTm4s2ZIv/AK00AAAYVNLStIz/AGK4AAAUsP//pU//AAeqAAAUsO7umkn/AN6bAAAUsM3NhT//AB+PAAAUsIuLWiv/AAo5AAB//4AAgID/ANJMAADUHdjYv9j/ALG5AADUHv//4f//AEmrAADUHu7u0u7/ABidAADUHc3Ntc3/AGCQAADUHYuLe4v/ANwuAAAGuP//Y0f/ANy3AAAGuP//Y0f/AJCpAAAGuO7uXEL/AGebAAAGuM3NTzn/AKiOAAAGuYuLNib/ALsPAAAqAP////4AAEBKAAB7tuBA4ND/AJO5AACB//8A9f//ACurAACB/+4A5e7/APqcAACB/80Axc3/ADuQAACB/4sAhov/ACQRAADUc+7ugu7/AABVAADj19DQIJD/ADO6AADrwf//Ppb/ALqrAADrwO7uOoz/AImdAADrwM3NMnj/ANGQAADrwIuLIlL/AIUIAAAAAICAgID/AAg0AABV/4AAgAD/ALoHAAAAAICAgID/AJUwAAAA/4CAAAD/AP1MAADU/4CAAID/AMsSAAAbRPX13rP/AMu3AAAbRf//57r/AH+pAAAbRO7u2K7/AFubAAAbRM3Nupb/AKGOAAAbQ4uLfmb/AMZIAAAAAP//////AEROAAAAAPX19fX/AI0IAAAAAL6+vr7/AFg0AABV//8A/wD/AMIHAAAAAL6+vr7/AJ8wAADvubCwMGD/ADJNAADE3fCgIPD/AH4KAAAq/////wD/ALC3AAAq/////wD/AGCpAAAq/+7u7gD/AEmbAAAq/83NzQD/AI+OAAAq/4uLiwD/AEQzAAA4wM2azTL/AEHAggcLA5R4AgBBzoIHC4UIoED/////////////////////////////////////////////////////////////////////////////////////AAKqAkQDAAQABKoGOQZxAaoCqgIABIMEAAKqAgACOQIABAAEAAQABAAEAAQABAAEAAQABDkCOQKDBIMEgwSNA14HxwVWBVYFxwXjBHMExwXHBaoCHQPHBeMEHQfHBccFcwTHBVYFcwTjBMcFxwWNB8cFxwXjBKoCOQKqAsEDAASqAo0DAASNAwAEjQOqAgAEAAQ5AjkCAAQ5AjkGAAQABAAEAASqAh0DOQIABAAExwUABAAEjQPXA5oB1wNUBP///////////////////////////////////////////////////////////////////////////////////////wACqgJxBAAEAAQACKoGOQKqAqoCAASPBAACqgIAAjkCAAQABAAEAAQABAAEAAQABAAEAASqAqoCjwSPBI8EAARxB8cFVgXHBccFVgXjBDkGOQYdAwAEOQZWBY0HxwU5BuMEOQbHBXMEVgXHBccFAAjHBccFVgWqAjkCqgKmBAAEqgIABHMEjQNzBI0DqgIABHMEOQKqAnMEOQKqBnMEAARzBHMEjQMdA6oCcwQABMcFAAQABI0DJwPDAScDKQT///////////////////////////////////////////////////////////////////////////////////////8AAqoCXAMABAAEqgY5BrYBqgKqAgAEZgUAAqoCAAI5AgAEAAQABAAEAAQABAAEAAQABAAEqgKqAmYFZgVmBQAEXAfjBOMEVgXHBeME4wTHBccFqgKNA1YFcwSqBlYFxwXjBMcF4wQABHMExwXjBKoG4wRzBHMEHQM5Ah0DYAMABKoCAAQABI0DAASNAzkCAAQABDkCOQKNAzkCxwUABAAEAAQABB0DHQM5AgAEjQNWBY0DjQMdAzMDMwIzA1QE////////////////////////////////////////////////////////////////////////////////////////AAIdA3EEAAQABKoGOQY5AqoCqgIABI8EAAKqAgACOQIABAAEAAQABAAEAAQABAAEAAQABKoCqgKPBI8EjwQABKgGVgVWBVYFxwVWBVYFxwU5Bh0DAARWBeMEHQfHBccF4wTHBVYFcwTjBMcFVgUdB1YF4wTjBKoCOQKqAo8EAASqAgAEAASNAwAEjQOqAgAEcwQ5AjkCAAQ5AjkGcwQABAAEAAQdAx0DOQJzBI0DVgUABI0DHQPJAsMByQKPBP//vHgCAEHeigcLhQigQP////////////////////////////////////////////////////////////////////////////////////85AjkC1wJzBHMEHQdWBYcBqgKqAh0DrAQ5AqoCOQI5AnMEcwRzBHMEcwRzBHMEcwRzBHMEOQI5AqwErASsBHMEHwhWBVYFxwXHBVYF4wQ5BscFOQIABFYFcwSqBscFOQZWBTkGxwVWBeMExwVWBY0HVgVWBeMEOQI5AjkCwQNzBKoCcwRzBAAEcwRzBDkCcwRzBMcBxwEABMcBqgZzBHMEcwRzBKoCAAQ5AnMEAATHBQAEAAQABKwCFAKsAqwE////////////////////////////////////////////////////////////////////////////////////////OQKqAssDcwRzBB0HxwXnAaoCqgIdA6wEOQKqAjkCOQJzBHMEcwRzBHMEcwRzBHMEcwRzBKoCqgKsBKwErATjBM0HxwXHBccFxwVWBeMEOQbHBTkCcwTHBeMEqgbHBTkGVgU5BscFVgXjBMcFVgWNB1YFVgXjBKoCOQKqAqwEcwSqAnME4wRzBOMEcwSqAuME4wQ5AjkCcwQ5Ah0H4wTjBOME4wQdA3MEqgLjBHMEOQZzBHMEAAQdAz0CHQOsBP///////////////////////////////////////////////////////////////////////////////////////zkCOQLXAnMEcwQdB1YFhwGqAqoCHQOsBDkCqgI5AjkCcwRzBHMEcwRzBHMEcwRzBHMEcwQ5AjkCrASsBKwEcwQfCFYFVgXHBccFVgXjBDkGxwU5AgAEVgVzBKoGxwU5BlYFOQbHBVYF4wTHBVYFjQdWBVYF4wQ5AjkCOQLBA3MEqgJzBHMEAARzBHMEOQJzBHMExwHHAQAExwGqBnMEcwRzBHMEqgIABDkCcwQABMcFAAQABAAErAIUAqwCrAT///////////////////////////////////////////////////////////////////////////////////////85AqoCywNzBHMEHQfHBecBqgKqAh0DrAQ5AqoCOQI5AnMEcwRzBHMEcwRzBHMEcwRzBHMEqgKqAqwErASsBOMEzQfHBccFxwXHBVYF4wQ5BscFOQJzBMcF4wSqBscFOQZWBTkGxwVWBeMExwVWBY0HVgVWBeMEqgI5AqoCrARzBKoCcwTjBHME4wRzBKoC4wTjBDkCOQJzBDkCHQfjBOME4wTjBB0DcwSqAuMEcwQ5BnMEcwQABB0DPQIdA6wE///weAIAQe6SBwuFCKBA/////////////////////////////////////////////////////////////////////////////////////80EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQT////////////////////////////////////////////////////////////////////////////////////////NBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0E////////////////////////////////////////////////////////////////////////////////////////zQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBP///////////////////////////////////////////////////////////////////////////////////////80EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQT//xh5AgBB/ZoHC4YIQI9AAAD///////////////////////////////8CAf///////////////////////////////////////////////wIB5ACIAVgCWAKiA7UC3QA9AT0BwgFYAuQAqAHkABsBWAJYAlgCWAJYAlgCWAJYAlgCWALkAOQAWAJYAlgCuwGyA9kCpAKhAuYCRwIkAtYC+QIBAUQBcQIfAlcD5AL/AnkC/wKdAmcCWgLYArECTQSKAlQCTQI7ARsBOwFYAvQB9AESAkcCzwFHAhQCTQFKAjgC6ADsAPQBKAFYAzgCLAJHAkcCZgHhAV4BMQIDAkkDDQICAs8BYAEJAWABWAL//wAA////////////////////////////////DwH///////////////////////////////////////////////8PAfgAwAFYAlgCsQPWAvMAZgFmAcUBWAL4ALIB+AA5AVgCWAJYAlgCWAJYAlgCWAJYAlgC+AD4AFgCWAJYAssBtgPoArACqAL6AlUCMgLgAgUDGgFiAZkCMgJkA+wCEQOMAhEDrgJ3Am0C4gLJAlkEoAJqAl0CYgE5AWIBWAL0AfQBIwJYAtgBWAIeAmwBXAJJAv8AAwEYAj8BbQNJAkACWAJYAogB6AGAAUMCDwJVAyICDgLaAYcBIAGHAVgC//8AAP///////////////////////////////wIB////////////////////////////////////////////////AgHkAIgBWAJYAqIDtQLdAD0BPQHCAVgC5ACoAeQAGwFYAlgCWAJYAlgCWAJYAlgCWAJYAuQA5ABYAlgCWAK7AbID2QKkAqEC5gJHAiQC1gL5AgEBRAFxAh8CWAPjAv8CeQL/Ap0CZwJaAtgCsAJNBIoCVAJNAjsBGwE7AVgC9AH0ARICRwLPAUcCFAJNAUoCOALoAOwA9AEoAVgDOAIsAkcCRwJmAeEBXgExAgMCSQMNAgICzwFgAQkBYAFYAv//AAD///////////////////////////////8PAf///////////////////////////////////////////////w8B+ADAAVgCWAKxA9YC8wBmAWYBxQFYAvgAsgH4ADkBWAJYAlgCWAJYAlgCWAJYAlgCWAL4APgAWAJYAlgCywG2A+gCsAKoAvoCVQIyAuACBQMaAWIBmAIyAmUD6wIRA4wCEQOuAncCbQLiAskCWQSgAmoCXQJiATkBYgFYAvQB9AEjAlgC2AFYAh4CbAFcAkkC/wADARgCPwFtA0kCQAJYAlgCiAHoAYABQwIPAlUDIgIOAtoBhwEgAYcBWAL//yB5AgBBjqMHC4UIoED/////////////////////////////////////////////////////////////////////////////////////iwI1A64DtAYXBZoHPQYzAh8DHwMABLQGiwLjAosCsgIXBRcFFwUXBRcFFwUXBRcFFwUXBbICsgK0BrQGtAY/BAAIeQV9BZYFKQYOBZoEMwYEBlwCXAI/BXUE5wb8BUwG0wRMBo8FFAXjBNsFeQXpB3sF4wR7BR8DsgIfA7QGAAQABOcEFAVmBBQF7ATRAhQFEgU5AjkCogQ5AssHEgXlBBQFFAVKAysEIwMSBbwEiwa8BLwEMwQXBbICFwW0Bv///////////////////////////////////////////////////////////////////////////////////////8kCpgMrBLQGkQUECPoGcwKoA6gDLwS0BgoDUgMKA+wCkQWRBZEFkQWRBZEFkQWRBZEFkQUzAzMDtAa0BrQGpAQACDEGGQbfBaQGdwV3BZEGsgb6AvoCMwYZBfYHsgbNBt0FzQYpBsMFdQV/BjEG0wgrBssFzQWoA+wCqAO0BgAEAARmBboFvgS6BW0FewO6BbIFvgK+AlIFvgJWCLIFfwW6BboF8gPDBNMDsgU3BWQHKQU3BagEsgXsArIFtAb///////////////////////////////////////////////////////////////////////////////////////+LAjUDrgO0BhcFmgc9BjMCHwMfAwAEtAaLAuMCiwKyAhcFFwUXBRcFFwUXBRcFFwUXBRcFsgKyArQGtAa0Bj8EAAh5BX0FlgUpBg4FmgQzBgQGXAJcAj8FdQTnBvwFTAbTBEwGjwUUBeME2wV5BekHewXjBHsFHwOyAh8DtAYABAAE5wQUBWYEFAXsBNECFAUSBTkCOQKiBDkCywcSBeUEFAUUBUoDKwQjAxIFvASLBrwEvAQzBBcFsgIXBbQG////////////////////////////////////////////////////////////////////////////////////////yQKmAysEkQWRBQQI+gZzAqgDqAMvBLQGCgNSAwoD7AKRBZEFkQWRBZEFkQWRBZEFkQWRBTMDMwO0BrQGtAakBAAIMQYZBt8FpAZ3BXcFkQayBvoC+gIzBhkF9geyBs0G3QXNBikGwwV1BX8GMQbTCCsGywXNBagD7AKoA7QGAAQABGYFugW+BLoFbQV7A7oFsgW+Ar4CUgW+AlYIsgV/BboFugXyA8ME0wOyBTcFZAcpBTcFqASyBewCsgW0Bv//KHkCAEGeqwcLhQigQGYE////////////////////////////////AAD///////////////////////////////////////////////9mBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYE//9mBP///////////////////////////////wAA////////////////////////////////////////////////ZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBP//ZgT///////////////////////////////8AAP///////////////////////////////////////////////2YEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgT///////////////////////////////////////////////////////////////////////////////////////9mBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYE//80eQIAQa6zBwuFCKBA/////////////////////////////////////////////////////////////////////////////////////2kC8AKZAjIEMgTNBKYFRwHwAvAC8AIyBPAC8ALwAjIEMgQyBDIEMgQyBDIEMgQyBDIEMgTwAvACMgQyBDIE8AIqBrgEhwTJBOgESQQzBGkFPAU6AtADmwQNBK0FGwVkBXYEaAWoBNkDpQQwBbME0QZ0BJAEZwTwAtgC8AIyBDIEMgQ0BHUE9gN1BF0E9QIEBF8ESALvAgkEXAKkBl8ESwR1BHUEHAM9AywDXwTrA/QFAgTyA8wD8AIyBPACMgT///////////////////////////////////////////////////////////////////////////////////////9pAvAC7wKwBLAEeQWmBdYB8ALwAnUDsATwAvAC8AIfA7AEsASwBLAEsASwBLAEsASwBLAE8ALwArAEsASwBIEDKgYRBcME5QQkBY0EqwRfBXgFOgJDBPAEbAT2BVcFoAWyBKwF4wQXBOUEbAX5BBIHzgToBHsENwPYAjcDsASwBLAEQwSnBBgEpQSZBPUCBAS+BGMC7wJiBFwC4Aa5BIcEqQSsBGsDcgMsA7oEOARFBmsERQQ6BHgDsAR4A7AE////////////////////////////////////////////////////////////////////////////////////////aQLwApkCMgTZA80EpgVHAfAC8ALwAjIE8ALwAvACMgQyBDIEMgQyBDIEMgQyBDIEMgQyBPAC8AIyBDIEMgTwAioG4wSHBMkE6ARJBDMEaQU8BToC0AObBA0EFwYbBWQFWQRkBagE2QOlBDAFswTRBnQEkARnBPAC2ALwAjIEMgQyBDQEdQSuA3UETAQ2AwQEdQR0Au8CCQSQAqQGXwRLBHUEdQRVAz0DXAN0BOsD9AUCBPIDzAPwAjIE8AIyBP///////////////////////////////////////////////////////////////////////////////////////2kC8AIgA7AEsATcBaYFaQLwAvACdQOwBPAC8ALwAi0DsASwBLAEsASwBLAEsASwBLAEsATwAvACsASwBLAELQMqBukEuATnBA8FvwSvBGkFbQU6Av0DMwU6BEoGSAWeBasEKAb9BAMEewVLBXcFaQdBBXgF5ATiA9ID4gOwBLAEsAS+BL8E8QO/BGoESANIBH8EnQIaA1EEjwKkBn8EjwTKBMoEkwOsA4EDdQRrBDAGmwSDBEME4gOwBOIDsAT//0B5AgBBvrsHC4UIoED/////////////////////////////////////////////////////////////////////////////////////0AImA6wDjAYWBZwI0AUmAqIDogMWBYwG6QKiA+kCogMWBRYFFgUWBRYFFgUWBRYFFgUWBaIDogOMBowGjAZdBAAIeAV8BZYFKgYPBZkENAYDBl4DowOLBXQEvgb8BUwG0wRMBpAFeAXuBNsFeAXpB3sF7AR7BaIDogOiA4wGFgUWBc4E/AQrBPwExATQAvwEEAUyAsECvAQyAsgHEAXbBPwE/ARqAysEJwMQBbwEjAa8BLwENAQUBaIDFAWMBv///////////////////////////////////////////////////////////////////////////////////////7wCOAOzBPAGsAUtCuYGqAJZBFkEsAXwBuQC1wPkAoQFsAWwBbAFsAWwBbAFsAWwBbAFsAU4AzgD8AbwBvAG7wS2BzYGGAbKBaQGdwU0BX0GswZeBHEEKwYZBZUHxgbNBt0FzQZCBq8FdAV/BhwGBwkcBuUFiQVZBIQFWQTwBrAFsAVYBZgFtQSYBVAFYQOYBbMFvAI5A14FvAJ3CLMFfgWYBZgF+gO/BKUDswUzBdYHWgU1BcYEsAVZBLAF8Ab////////////////////////////////////////////////////////////////////////////////////////QAiYDrAOMBhYFnAjQBSYCogOiAxYFjAbpAqID6QKiAxYFFgUWBRYFFgUWBRYFFgUWBRYFogOiA4wGjAaMBl0EAAh2BXwFlgUgBg8FmQQ0BgMGXgOjA4sFdAS+BvwFTAbTBEwGkAV4Be4E2wV2BewHewXsBHsFogOiA6IDjAYWBRYFzgT8BCsE/ATEBNAC+QQQBTICwQKyBDICyQcQBdsE/AT8BGoDKwQnAxAFugSMBrwEugQ0BBQFogMUBYwG////////////////////////////////////////////////////////////////////////////////////////vAI4A7ME8AawBS0K5gaoAlkEWQSwBfAG5ALXA+QChAWwBbAFsAWwBbAFsAWwBbAFsAWwBTgDOAPwBvAG8AbvBLYHNgYYBsoFpAZ3BTQFfQazBl4EcQQrBhkFlQfGBs0G3QXNBkIGrwV0BX8GHAYHCRwG5QWJBVkEhAVZBPAGsAWwBVgFmAW1BJgFUAVhA5gFswW8AjkDXgW8AncIswV8BZgFmAX6A78EpQOzBTEF1gdaBTUFxgSwBVkEsAXwBv//SHkCAEHOwwcLhQigQP////////////////////////////////////////////////////////////////////////////////////8UAiMCNQMrBZMElgbXBcUBXgJeAmoEkwT2AZMCIQLwApMEkwSTBJMEkwSTBJMEkwSTBJMEIQIhApMEkwSTBG8DMQcQBS8FDAXVBXMEIQTTBecFOwIjAukEJwQ5BwgGOwbRBDsG8gRkBG0E0wXDBGgHngR7BJEEogLwAqICVgSWA54EcwTnBM8D5wR9BLYCYgTpBAYCBgIzBAYCcQfpBNUE5wTnBEQD0QPTAukEAgQ5BjEECAS+AwgDaAQIA5ME////////////////////////////////////////////////////////////////////////////////////////FAJKAscDKwWRBDUHAAYhArYCtgJcBJEEUgKTAkgCTgORBJEEkQSRBJEEkQSRBJEEkQSRBEgCUgKRBJEEkQTRAy0HhQVgBRkF7AV7BGQEywUfBqYCpgJQBYUEiweBBl4GBgVeBkgFaASiBAwGMwW8B1YF/gSiBKYCTgOmAkIESgPbBNUEEAUdBBAFugQZA4UEQgVxAnEC9gRxAtsHQgX0BBAFEAWiA/oDeQNCBY0E2QagBI0E5wMnA2gEJwORBP///////////////////////////////////////////////////////////////////////////////////////xQCEgIXAysFaARYBlwFvAFIAkgCagRoBOwBfwIGAs0CaARoBGgEaARoBGgEaARoBGgEaAQGAgYCaARoBGgEagPHBnEEyQSuBFQFFwTHA2oFbQUvAiMCdQTLA7IGngXDBYcEwwWNBAQE/ANoBWIE0QYnBAYEPwRKAs0CSgIjBCcDbwSFBJ4EmgOeBPIDgQICBJ4ECAIIAucDCAL6Bp4EfQSeBJ4EKwNtA5gCngSyA7wF0wOyA40DywJoBMsCaAT///////////////////////////////////////////////////////////////////////////////////////8UAkoCoAMrBWgE2QaqBQoCtgK2AlwEaAQ5ApMCSAJeA2gEaARoBGgEaARoBGgEaARoBGgESAJIAmgEaARoBKwD2QYGBfYE5QRqBVYEPwSFBZoFkwKmAucEJQQKBwoG1wWkBNcF3wQ9BD8EhwW4BCcH2QSDBEoEpgJeA6YCOQQzA28EwQTDBN0DwQR1BPwCVATVBGACYAKLBGACPQfVBK4EwwTBBF4DyQNIA9UEGQROBj8EJwSkA9cCaATXAmgE//9QeQIAQd7LBwuFCKBA/////////////////////////////////////////////////////////////////////////////////////+4BpgJLAyUF4QSKBq8FuQEAAwADxwMlBSgC/gIoAsAD6QRwA3gEagSFBDoEhwQFBMUEhwSAAoACJQUlBSUF1ANuB14FOwUjBf4FOgXLBM0FhQYeAyQEjgXUBGsHIwb0BeEE9AWdBX0E8wQNBlUFzgevBewE0AQAA8ADAAMlBSUFAAQIBHsEogOYBN4DmgITBKgEWAJWAkkESgIMB7oEUASSBHoERwN1A8MCmgT5A+YFCgTwA40DcQMAA3EDJQX///////////////////////////////////////////////////////////////////////////////////////8IAgMDFASgBSAFCQdlBicCkwOTA9sDoAWgAggDoALGA5wF6wMDBf8EMgXLBC8FbwRpBS8F8ALwAqAFoAWgBWMEvAcRBg8GuQWsBsUFXwV1Bk4HkQPDBIkGfAUwCLcGjwacBY8GYQYxBXkFqwYZBgMJeAbbBYQFkwPGA5MDoAWgBQAExAQqBUAETgWTBCUDnQRwBdQCxQIOBcECIAiFBRYFQwUwBSkEGgQuA2oFiQToBrQEfwQ0BAAEGgMABKAF////////////////////////////////////////////////////////////////////////////////////////7gGmAksDJQXhBIoGrwW5AQADAAPHAyUFKAL+AigCwAPpBHADeARqBIUEOgSHBPkDxQSHBBIDEgMlBSUFJQXUA24HXgU7BSMF/gU6BcsEzQWFBh4DJASOBdQEawcjBtgF4QTYBZ0FfQTzBA0GVQXOB68F7ATQBAADwAMAAyUFJQUABJUEbgShA5oExgOhApUEgARhAlQCOQRIAgkHuARMBKAEcQSxA3MDxwKaBE4ElAYCBHoEjQNxAwADcQMlBf///////////////////////////////////////////////////////////////////////////////////////wgCAwMUBKAFIAUJB2UGJwKTA5MD2wOgBaACCAOgAsYDnAXrAwMF/wQyBcsELwWIBGkFLwXwAvACoAWgBaAFYwS8BxEGEwa5BawGxQVfBXUGTgebA8MEiQZ8BUQIowaPBqYFjwZhBjkFeQWrBhkGAwlrBtsFhAWTA8YDkwOgBaAFAARIBTEFSQRNBXUEDAMyBWcF7QLrAiEF1gIECIUFFgVNBTMFRQQjBFYDewXmBHgHqwRbBSMEAAQaAwAEoAX//1h5AgBB7tMHC8gKoED/////////////////////////////////////////////////////////////////////////////////////zwGbAjUD/AMOBLgFdQXEAW0CbQL8A/wD/wFzAgUCFwMOBA4EDgQOBA4EDgQOBA4EDgQOBCQCJAL8A/wD/AO1AycHoQRaBEQE7AToA60DDAX8BAQCjQIoBF0D1wYqBUwFIgRiBVgErQPmAyIFigQeBycE5gO/A3QCFwN0AvwD/ANUAtUDNARiAzQE+wNxAsQDNATWAeoBowPWAWQGNAQ4BDQENATKAiEDrgI0BJ0DuAV3A58DKQOEAq8DhAL8A///AAD///////////////////////////////8AAP///////////////////////////////////////////////88BmwKCA/wDDgTVBaMF3gF+An4C/AP8AxACcwIjAnADDgQOBA4EDgQOBA4EDgQOBA4EDgQ1AjUC/AP8A/wDtQMwB9kEfAQ8BAsF5wOsAxkFDAUiAqYCYARiA/4GRQVpBUIEfQWBBMgD9gM5BbsEQAdoBCgE0wOZAnADmQL8A/wDZwLzA0sEWQNLBAcEiALLA0sE9wELAtcD9wGCBksETQRLBEsE2AIxA8YCSwTJA/YFrQPKAy4DwALNA8AC/AP////////////////////////////////////////////////////////////////////////////////////////PAZsCNQP8Aw4EuAV1BcQBbQJtAvwD/AP/AXMCBQIaAw4EDgQOBA4EDgQOBA4EDgQOBA4EJAIkAvwD/AP8A7UDJwehBFoELgTsBOgDrQMMBfwEBAKNAigEXQPXBigFPAUiBFAFWASeA+YDIgWKBB8HJwTmA78DdAITA3QC/AP8A1QCHQQdBFQDHQTSA3ECHQQdBNYB6gGjA9YBVAYdBBsEHQQdBL4CHQOuAh0EkQO4BXcDlAMpA4QCrwOEAvwD////////////////////////////////////////////////////////////////////////////////////////zwGbAoID/AMOBNUFowXeAX4CfgL8A/wDEAJzAiMCeQMOBA4EDgQOBA4EDgQOBA4EDgQOBDUCNQL8A/wD/AO1AzAH2QR8BCYECwXnA6wDGQUMBSICpgJgBGID/gZABVkFQgRrBYEEuQP2AzkFuwRBB2gEKATTA5kCZgOZAvwD/ANnAjkEOQRLAzkE7gOIAjkEOAT3AQsC1wP3AW4GOAQ4BDkEOQTRAicDxgI4BMED9gWtA8MDLgPAAs0DwAL8A///DAAAAAQAAAAGAAAAAgAAAAMAAAABAAAACQAAAAgAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABUAAAAWAAAAFwAAABgAAAAZAAAAGgAAABsAAAAcAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAApAAAAKgAAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAPQAAAD4AAAA/AAAAQAAAAEEAAABCAAAAQwAAAEQAAABHAAAASAAAAEkAAABKAAAASwAAAEwAAABNAAAATgAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAFcAAABYAAAAS1EAAAAAAAABAAAAkToAAAEAAAAAAAAAmTsAAAEAAAABAAAAQEsAQdDeBwsFjAQAADEAQeDeBwsluC8AABAAAADjHQAAgAAAAF85AABAAAAAIlEAABAAAAC+QQAAQABBkN8HC2XxOAAAAQAAAA0KAAACAAAASU8AAAMAAAAaCQAABAAAAFxSAAAFAAAAXg8AAAYAAABASwAACAAAAIILAAAhAAAARU8AACIAAAAIMwAAIgAAAKIEAAABAAAAi0QAAAcAAACKRAAAJwBBgOAHCwEBAEGO4AcLC/A/JwAAACgAAAACAEGm4AcLC/A/KQAAACoAAAADAEG+4AcLC+A/KwAAACwAAAAEAEHW4AcLO/A/LQAAAC4AAAAFAAAAAAAAADMzMzMzM/M/LwAAADAAAAAGAAAAAAAAAJqZmZmZmek/MQAAADIAAAAHAEGe4QcLC/A/MwAAADQAAAAIAEG24QcLmhHgPzUAAAA2AAAAsUAAAMYAAAACSAAAwQAAAJBZAADCAAAAN0UAAMAAAAAdYQAAkQMAAJM/AADFAAAAI1AAAMMAAADnNgAAxAAAAIJgAACSAwAAbTcAAMcAAAAvOwAApwMAALYcAAAhIAAAYWAAAJQDAABfbAAA0AAAAPtHAADJAAAAilkAAMoAAAAwRQAAyAAAAPowAACVAwAAp2AAAJcDAADiNgAAywAAAOJgAACTAwAA9EcAAM0AAACEWQAAzgAAAClFAADMAAAAOGAAAJkDAADdNgAAzwAAAMJgAACaAwAAO2EAAJsDAAD2CwAAnAMAABxQAADRAAAA8wsAAJ0DAACrQAAAUgEAAO1HAADTAAAAflkAANQAAAAiRQAA0gAAAClhAACpAwAAfzAAAJ8DAACNPAAA2AAAABVQAADVAAAA2DYAANYAAAArOwAApgMAADk7AACgAwAAEkwAADMgAAC3OgAAqAMAAEgvAAChAwAAjjAAAGABAADuYAAAowMAAMdoAADeAAAA7wsAAKQDAAByYAAAmAMAAOZHAADaAAAAeFkAANsAAAAbRQAA2QAAAPIwAAClAwAA0zYAANwAAAA2OwAAngMAAN9HAADdAAAAzjYAAHgBAAB9YAAAlgMAANhHAADhAAAAclkAAOIAAAADSAAAtAAAAKVAAADmAAAAFEUAAOAAAADWNQAANSEAABdhAACxAwAA1iwAACYAAACoUgAAJyIAAH9AAAAgIgAAjT8AAOUAAAC1LAAASCIAAA5QAADjAAAAyTYAAOQAAAClLgAAHiAAAHhgAACyAwAAxx0AAKYAAAAuNwAAIiAAAGwuAAApIgAAZjcAAOcAAABuNwAAuAAAAAYQAACiAAAAJzsAAMcDAACRWQAAxgIAAOwYAABjJgAAIj8AAEUiAADwBgAAqQAAAJYaAAC1IQAARiwAACoiAADNMgAApAAAAL8aAADTIQAArxwAACAgAACmGgAAkyEAABZBAACwAAAAW2AAALQDAAA9FgAAZiYAACpQAAD3AAAA0UcAAOkAAABsWQAA6gAAAA1FAADoAAAAoQQAAAUiAABWLAAAAyAAAFEsAAACIAAA6jAAALUDAACGCwAAYSIAAINgAAC3AwAA3TsAAPAAAADENgAA6wAAAOkuAACsIAAACw0AAAMiAACwQQAAkgEAAEY3AAAAIgAAoqwAAL0AAADOkQAAvAAAAKaRAAC+AAAAlTYAAEQgAADcYAAAswMAAEJPAABlIgAAoRAAAD4AAAC6GgAA1CEAAKEaAACUIQAALxMAAGUmAAApLQAAJiAAAMpHAADtAAAAZlkAAO4AAABIOAAAoQAAAAZFAADsAAAAP08AABEhAABeMgAAHiIAALcPAAArIgAAM2AAALkDAACTDQAAvwAAADcyAAAIIgAAvzYAAO8AAAC8YAAAugMAALUaAADQIQAANGEAALsDAABXQAAAKSMAAMUuAACrAAAAnBoAAJAhAABgNwAACCMAAJ8uAAAcIAAAPE4AAGQiAABKGwAACiMAAJoNAAAXIgAAVwQAAMolAAAZNgAADiAAALguAAA5IAAAky4AABggAAAvEAAAPAAAAJkdAACvAAAAsTwAABQgAAAILwAAtQAAAPEOAAC3AAAAHBMAABIiAADdCwAAvAMAAPxgAAAHIgAAWywAAKAAAACrPAAAEyAAAAlMAABgIgAA5DoAAAsiAABtDgAArAAAADEyAAAJIgAAqF8AAIQiAAAHUAAA8QAAANoLAAC9AwAAw0cAAPMAAABgWQAA9AAAAJ9AAABTAQAA/0QAAPIAAADjSwAAPiAAACNhAADJAwAAdzAAAL8DAAAiEwAAlSIAAKEbAAAoIgAAs0IAAKoAAABpNgAAugAAAIY8AAD4AAAAAFAAAPUAAABlFwAAlyIAALo2AAD2AAAAt2AAALYAAABFDgAAAiIAAFM3AAAwIAAAYCwAAKUiAAAjOwAAxgMAAM46AADAAwAAjAsAANYDAAAqMgAAsQAAAOhRAACjAAAADEwAADIgAABTUQAADyIAAKQsAAAdIgAAszoAAMgDAABiDgAAIgAAALAaAADSIQAA+1oAABoiAABSQAAAKiMAAL8uAAC7AAAAlxoAAJIhAABaNwAACSMAAJkuAAAdIAAADzkAABwhAAAIQQAArgAAAEMbAAALIwAARC8AAMEDAABSNgAADyAAALEuAAA6IAAAjS4AABkgAACrLgAAGiAAAIcwAABhAQAA7A4AAMUiAADSEQAApwAAADIHAACtAAAA6GAAAMMDAAC8QgAAwgMAAFY2AAA8IgAAoxgAAGAmAACpXwAAgiIAABRRAACGIgAA7zUAABEiAAA8LAAAgyIAANK3AAC5AAAAhqkAALIAAABimwAAswAAAO1KAACHIgAAmUAAAN8AAADrCwAAxAMAAE2QAAA0IgAAbGAAALgDAADeNQAA0QMAAEosAAAJIAAAQDAAAP4AAAAkUAAA3AIAAGYXAADXAAAAMVAAACIhAACrGgAA0SEAALxHAAD6AAAAkRoAAJEhAABaWQAA+wAAAPhEAAD5AAAA6DYAAKgAAAAbPQAA0gMAAOIwAADFAwAAtTYAAPwAAABlLAAAGCEAALA6AAC+AwAAtUcAAP0AAAC2MgAApQAAALA2AAD/AAAAZ2AAALYDAACWOgAADSAAAJo6AAAMIAAA5z8BAAgAAAADAAAA5T4AACLQAAALAAAABgAAAFcVAADzaAAAAgAAAAEAAADKLAAApXQAAAQAAAACAAAAGUIAAAAEAAADAAAABAAAAAxBAAAu0AAABQAAAAUAAAC4QgAABAQAAAQAAAAHAAAALRUAAKo2AAAFAAAACQAAAKw2AAAibQAABAAAAAoAAAAsQgAAQPkBAAQAAAAMAAAAsC8AAAAAAQAAAdDR0tPU1dbX2NkAQebyBwsJ8L8AAAAAAAABAEH48gcLDWludmlzAABmaWxsZWQAQZDzBwsaMBoAACJRAADPNQAAbgsAAPR4AABpxgAAVY4AQdDzBwt5//////////////////////////////////////////8AAAAAAAAABP7//4f+//8HAAAAAAAAAAD//3////9///////////N//v3//////3///////////w/g/////zH8////AAAAAAAAAP//////////////AQD4AwBB4PQHC0FA1///+/////9/f1T9/w8A/t////////////7f/////wMA////////nxn////PPwMAAAAAAAD+////fwL+////fwBBqvUHC7MB////BwcAAAAAAP7//wf+BwAAAAD+//////////98/38vAGAAAADg////////IwAAAP8DAAAA4J/5///9xQMAAACwAwADAOCH+f///W0DAAAAXgAAHADgr/v///3tIwAAAAABAAAA4J/5///9zSMAAACwAwAAAODHPdYYx78DAAAAAAAAAADg3/3///3vAwAAAAADAAAA4N/9///97wMAAABAAwAAAODf/f///f8DAAAAAAMAQfD2BwsZ/v////9/DQA/AAAAAAAAAJYl8P6ubA0gHwBBmPcHCwb//v///wMAQcT3Bwty/////z8A/////38A7doHAAAAAFABUDGCq2IsAAAAAEAAyYD1BwAAAAAIAQL/////////////////////////D///////////////A///Pz//////Pz//qv///z/////////fX9wfzw//H9wfAAAAAEBMAEHA+AcLAQcAQdD4BwsmgAAAAP4DAAD+////////////HwD+/////////////wfg/////x8AQZD5BwsV//////////////////////////8/AEGw+QcLFf//////////////////////////DwBB1fkHC8kCYP8H/v//h/7//wcAAAAAAACAAP//f////3//////AAAAAAAAAP//////////////AQD4AwADAAAAAAD//////////z8AAAADAAAAwNf///v/////f39U/f8PAP7f///////////+3/////97AP///////58Z////zz8DAAAAAAAA/v///38C/v///38A/v/7//+7FgD///8HBwAAAAAA/v//B///BwD/A////////////3z/f+///z3/A+7////////z/z8e/8//AADun/n///3F0585gLDP/wMA5If5///9bdOHOQBewP8fAO6v+////e3zvzsAAMH/AADun/n///3N8485wLDD/wAA7Mc91hjHv8PHPYAAgP8AAO7f/f//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rv+u/67/rv+u/67/rv+u/67/rv+u/67/rv+u/xcArv93AK7/BwAuAK7/JgCu/xcAEQAjAK7/DQCu/67/rv+u/zoArv+u/zUArv+u/67/KACu/wcArv87AEUArv9IAK7/rv+u/67/rv8AQYG1CAvBBgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygAAAAAAAAAAAICAgICAhAMWQEAH1AIAwcSExRXFhcIC2kMHwoFDA4pESsPLRAvMCAyBjQ1GxwdHgsMISIjJCUmJygMGBkXBAobHBogKgohIiMkJSYnKAwKDlMKLFgxWFhYWFhYDBscDy5YMyEiIyQlJicoGxz/U///ISIjJCUmJygM//8F////CRT//////wwbHP8QFRYhIiMkJSYnKBsc/////yEiIyQlJicoDP8SExQRFhf///////8MGxz///8SISIjJCUmJygbHP////8hIiMkJSYnKAz///////8T////////DBsc/////yEiIyQlJicoGxz/////ISIjJCUmJygSExQVFhcYGf///////////yMkJSYnGxITFBYXIjZoAR84ViEgAhsbG14bGzc5cDbSwk8EPCJHIj8iRCIiWCJlIiIFBl9gOQQHCAkKCwwNDgRmZ11qbQUGb1g7cQcICQoLDA0OBHI8W3M+YUYbEhMUFhcEBQY/QWJJBwgJCgsMDQ4FBgBcAAAHCAkKCwwNDgQAAE8AAABTQgAAAAAABAUGAERUVQcICQoLDA0OBQYAAAAABwgJCgsMDQ4EACosLkcxMwAAAAAAAAQFBgAAAEoHCAkKCwwNDgUGAAAAAAcICQoLDA0OBAAAAAAA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X0NUWVBFAAAAAExDX05VTUVSSUMAAExDX1RJTUUAAAAAAExDX0NPTExBVEUAAExDX01PTkVUQVJZAExDX01FU1NBR0VTAEHw9QgLB0MuVVRGLTgAQYj2CAugEDCrAgDIqwIAWKwCAE5vIGVycm9yIGluZm9ybWF0aW9uAElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE11bHRpaG9wIGF0dGVtcHRlZABSZXF1aXJlZCBrZXkgbm90IGF2YWlsYWJsZQBLZXkgaGFzIGV4cGlyZWQAS2V5IGhhcyBiZWVuIHJldm9rZWQAS2V5IHdhcyByZWplY3RlZCBieSBzZXJ2aWNlAAAAAAClAlsA8AG1BYwFJQGDBh0DlAT/AMcDMQMLBrwBjwF/A8oEKwDaBq8AQgNOA9wBDgQVAKEGDQGUAgsCOAZkArwC/wJdA+cECwfPAssF7wXbBeECHgZFAoUAggJsA28E8QDzAxgF2QDaA0wGVAJ7AZ0DvQQAAFEAFQK7ALMDbQD/AYUELwX5BDgAZQFGAZ8AtwaoAXMCUwEAQdiGCQsMIQQAAAAAAAAAAC8CAEH4hgkLBjUERwRWBABBjocJCwKgBABBoocJCyJGBWAFbgVhBgAAzwEAAAAAAAAAAMkG6Qb5Bh4HOQdJB14HAEHQhwkLkQHRdJ4AV529KoBwUg///z4nCgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QUYAAAANQAAAHEAAABr////zvv//5K///8AAAAAAAAAABkACwAZGRkAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAGQAKChkZGQMKBwABAAkLGAAACQYLAAALAAYZAAAAGRkZAEHxiAkLIQ4AAAAAAAAAABkACw0ZGRkADQAAAgAJDgAAAAkADgAADgBBq4kJCwEMAEG3iQkLFRMAAAAAEwAAAAAJDAAAAAAADAAADABB5YkJCwEQAEHxiQkLFQ8AAAAEDwAAAAAJEAAAAAAAEAAAEABBn4oJCwESAEGrigkLHhEAAAAAEQAAAAAJEgAAAAAAEgAAEgAAGgAAABoaGgBB4ooJCw4aAAAAGhoaAAAAAAAACQBBk4sJCwEUAEGfiwkLFRcAAAAAFwAAAAAJFAAAAAAAFAAAFABBzYsJCwEWAEHZiwkLJxUAAAAAFQAAAAAJFgAAAAAAFgAAFgAAMDEyMzQ1Njc4OUFCQ0RFRgBBpIwJCwILAgBBzIwJCwj//////////wBBkI0JC/UI/////////////////////////////////////////////////////////////////wABAgMEBQYHCAn/////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP///////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAQIEBwMGBQAAAAAAAAACAADAAwAAwAQAAMAFAADABgAAwAcAAMAIAADACQAAwAoAAMALAADADAAAwA0AAMAOAADADwAAwBAAAMARAADAEgAAwBMAAMAUAADAFQAAwBYAAMAXAADAGAAAwBkAAMAaAADAGwAAwBwAAMAdAADAHgAAwB8AAMAAAACzAQAAwwIAAMMDAADDBAAAwwUAAMMGAADDBwAAwwgAAMMJAADDCgAAwwsAAMMMAADDDQAA0w4AAMMPAADDAAAMuwEADMMCAAzDAwAMwwQADNsAAAAAVEkCAA0CAAAOAgAADwIAABACAAARAgAAEgIAABMCAAAUAgAAFQIAABYCAAAXAgAAGAIAABkCAAAaAgAABAAAAAAAAACQSQIAGwIAABwCAAD8/////P///5BJAgAdAgAAHgIAALhIAgDMSAIAAAAAANhJAgAfAgAAIAIAAA8CAAAQAgAAIQIAACICAAATAgAAFAIAABUCAAAjAgAAFwIAACQCAAAZAgAAJQIAAMh0AgAoSQIA7EoCAE5TdDNfXzI5YmFzaWNfaW9zSWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFAAAAoHQCAFxJAgBOU3QzX18yMTViYXNpY19zdHJlYW1idWZJY05TXzExY2hhcl90cmFpdHNJY0VFRUUAAAAAJHUCAKhJAgAAAAAAAQAAABxJAgAD9P//TlN0M19fMjEzYmFzaWNfb3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQAAyHQCAORJAgBUSQIATlN0M19fMjE1YmFzaWNfc3RyaW5nYnVmSWNOU18xMWNoYXJfdHJhaXRz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";return y}var hA;function Ae(y){if(y==hA&&E)return new Uint8Array(E);var b=m(y);if(b)return b;throw"both async and sync fetching of the wasm failed"}function pA(y){return Promise.resolve().then(()=>Ae(y))}function te(y,b,R){return pA(y).then(W=>WebAssembly.instantiate(W,b)).then(R,W=>{u(`failed to asynchronously prepare wasm: ${W}`),PA(W)})}function NA(y,b,R,W){return te(b,R,W)}function Ge(){return{a:Vt}}function JA(){var y=Ge();function b(W,_){return It=W.exports,v=It.y,Z(),IA(It.z),bA(),It}HA();function R(W){b(W.instance)}return hA??=YA(),NA(E,hA,y,R).catch(o),{}}function yA(y){return t.agerrMessages.push(Ke(y)),0}function Pt(y){this.name="ExitStatus",this.message=`Program terminated with exit(${y})`,this.status=y}var Dt=y=>{y.forEach(b=>b(t))};function fe(y,b="i8"){switch(b.endsWith("*")&&(b="*"),b){case"i1":return k[y];case"i8":return k[y];case"i16":return x[y>>1];case"i32":return F[y>>2];case"i64":return X[y>>3];case"float":return j[y>>2];case"double":return eA[y>>3];case"*":return z[y>>2];default:PA(`invalid type for getValue: ${b}`)}}var Zt=y=>cn(y),Pe=()=>Rn(),qe=typeof TextDecoder<"u"?new TextDecoder:void 0,vt=(y,b=0,R=NaN)=>{for(var W=b+R,_=b;y[_]&&!(_>=W);)++_;if(_-b>16&&y.buffer&&qe)return qe.decode(y.subarray(b,_));for(var q="";b<_;){var tA=y[b++];if(!(tA&128)){q+=String.fromCharCode(tA);continue}var rA=y[b++]&63;if((tA&224)==192){q+=String.fromCharCode((tA&31)<<6|rA);continue}var DA=y[b++]&63;if((tA&240)==224?tA=(tA&15)<<12|rA<<6|DA:tA=(tA&7)<<18|rA<<12|DA<<6|y[b++]&63,tA<65536)q+=String.fromCharCode(tA);else{var ae=tA-65536;q+=String.fromCharCode(55296|ae>>10,56320|ae&1023)}}return q},Ke=(y,b)=>y?vt(M,y,b):"",Ii=(y,b,R,W)=>{PA(`Assertion failed: ${Ke(y)}, at: `+[b?Ke(b):"unknown filename",R,W?Ke(W):"unknown function"])};class V{constructor(b){this.excPtr=b,this.ptr=b-24}set_type(b){z[this.ptr+4>>2]=b}get_type(){return z[this.ptr+4>>2]}set_destructor(b){z[this.ptr+8>>2]=b}get_destructor(){return z[this.ptr+8>>2]}set_caught(b){b=b?1:0,k[this.ptr+12]=b}get_caught(){return k[this.ptr+12]!=0}set_rethrown(b){b=b?1:0,k[this.ptr+13]=b}get_rethrown(){return k[this.ptr+13]!=0}init(b,R){this.set_adjusted_ptr(0),this.set_type(b),this.set_destructor(R)}set_adjusted_ptr(b){z[this.ptr+16>>2]=b}get_adjusted_ptr(){return z[this.ptr+16>>2]}}var $=0,iA=(y,b,R)=>{var W=new V(y);throw W.init(b,R),$=y,$},oA={isAbs:y=>y.charAt(0)==="/",splitPath:y=>{var b=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return b.exec(y).slice(1)},normalizeArray:(y,b)=>{for(var R=0,W=y.length-1;W>=0;W--){var _=y[W];_==="."?y.splice(W,1):_===".."?(y.splice(W,1),R++):R&&(y.splice(W,1),R--)}if(b)for(;R;R--)y.unshift("..");return y},normalize:y=>{var b=oA.isAbs(y),R=y.substr(-1)==="/";return y=oA.normalizeArray(y.split("/").filter(W=>!!W),!b).join("/"),!y&&!b&&(y="."),y&&R&&(y+="/"),(b?"/":"")+y},dirname:y=>{var b=oA.splitPath(y),R=b[0],W=b[1];return!R&&!W?".":(W&&(W=W.substr(0,W.length-1)),R+W)},basename:y=>{if(y==="/")return"/";y=oA.normalize(y),y=y.replace(/\/$/,"");var b=y.lastIndexOf("/");return b===-1?y:y.substr(b+1)},join:(...y)=>oA.normalize(y.join("/")),join2:(y,b)=>oA.normalize(y+"/"+b)},UA=()=>{if(typeof crypto=="object"&&typeof crypto.getRandomValues=="function")return y=>crypto.getRandomValues(y);PA("initRandomDevice")},he=y=>(he=UA())(y),me={resolve:(...y)=>{for(var b="",R=!1,W=y.length-1;W>=-1&&!R;W--){var _=W>=0?y[W]:J.cwd();if(typeof _!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!_)return"";b=_+"/"+b,R=oA.isAbs(_)}return b=oA.normalizeArray(b.split("/").filter(q=>!!q),!R).join("/"),(R?"/":"")+b||"."},relative:(y,b)=>{y=me.resolve(y).substr(1),b=me.resolve(b).substr(1);function R(ae){for(var ge=0;ge=0&&ae[pe]==="";pe--);return ge>pe?[]:ae.slice(ge,pe-ge+1)}for(var W=R(y.split("/")),_=R(b.split("/")),q=Math.min(W.length,_.length),tA=q,rA=0;rA{for(var b=0,R=0;R=55296&&W<=57343?(b+=4,++R):b+=3}return b},wt=(y,b,R,W)=>{if(!(W>0))return 0;for(var _=R,q=R+W-1,tA=0;tA=55296&&rA<=57343){var DA=y.charCodeAt(++tA);rA=65536+((rA&1023)<<10)|DA&1023}if(rA<=127){if(R>=q)break;b[R++]=rA}else if(rA<=2047){if(R+1>=q)break;b[R++]=192|rA>>6,b[R++]=128|rA&63}else if(rA<=65535){if(R+2>=q)break;b[R++]=224|rA>>12,b[R++]=128|rA>>6&63,b[R++]=128|rA&63}else{if(R+3>=q)break;b[R++]=240|rA>>18,b[R++]=128|rA>>12&63,b[R++]=128|rA>>6&63,b[R++]=128|rA&63}}return b[R]=0,R-_};function rt(y,b,R){var W=R>0?R:OA(y)+1,_=new Array(W),q=wt(y,_,0,_.length);return b&&(_.length=q),_}var je=()=>{if(!GA.length){var y=null;if(typeof window<"u"&&typeof window.prompt=="function"&&(y=window.prompt("Input: "),y!==null&&(y+=` -`)),!y)return null;GA=rt(y,!0)}return GA.shift()},ze={ttys:[],init(){},shutdown(){},register(y,b){ze.ttys[y]={input:[],output:[],ops:b},J.registerDevice(y,ze.stream_ops)},stream_ops:{open(y){var b=ze.ttys[y.node.rdev];if(!b)throw new J.ErrnoError(43);y.tty=b,y.seekable=!1},close(y){y.tty.ops.fsync(y.tty)},fsync(y){y.tty.ops.fsync(y.tty)},read(y,b,R,W,_){if(!y.tty||!y.tty.ops.get_char)throw new J.ErrnoError(60);for(var q=0,tA=0;tA0&&(B(vt(y.output)),y.output=[])},ioctl_tcgets(y){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(y,b,R){return 0},ioctl_tiocgwinsz(y){return[24,80]}},default_tty1_ops:{put_char(y,b){b===null||b===10?(u(vt(y.output)),y.output=[]):b!=0&&y.output.push(b)},fsync(y){y.output&&y.output.length>0&&(u(vt(y.output)),y.output=[])}}},pi=(y,b)=>{M.fill(0,y,y+b)},mn=(y,b)=>Math.ceil(y/b)*b,Sn=y=>{y=mn(y,65536);var b=$i(65536,y);return b&&pi(b,y),b},He={ops_table:null,mount(y){return He.createNode(null,"/",16895,0)},createNode(y,b,R,W){if(J.isBlkdev(R)||J.isFIFO(R))throw new J.ErrnoError(63);He.ops_table||={dir:{node:{getattr:He.node_ops.getattr,setattr:He.node_ops.setattr,lookup:He.node_ops.lookup,mknod:He.node_ops.mknod,rename:He.node_ops.rename,unlink:He.node_ops.unlink,rmdir:He.node_ops.rmdir,readdir:He.node_ops.readdir,symlink:He.node_ops.symlink},stream:{llseek:He.stream_ops.llseek}},file:{node:{getattr:He.node_ops.getattr,setattr:He.node_ops.setattr},stream:{llseek:He.stream_ops.llseek,read:He.stream_ops.read,write:He.stream_ops.write,allocate:He.stream_ops.allocate,mmap:He.stream_ops.mmap,msync:He.stream_ops.msync}},link:{node:{getattr:He.node_ops.getattr,setattr:He.node_ops.setattr,readlink:He.node_ops.readlink},stream:{}},chrdev:{node:{getattr:He.node_ops.getattr,setattr:He.node_ops.setattr},stream:J.chrdev_stream_ops}};var _=J.createNode(y,b,R,W);return J.isDir(_.mode)?(_.node_ops=He.ops_table.dir.node,_.stream_ops=He.ops_table.dir.stream,_.contents={}):J.isFile(_.mode)?(_.node_ops=He.ops_table.file.node,_.stream_ops=He.ops_table.file.stream,_.usedBytes=0,_.contents=null):J.isLink(_.mode)?(_.node_ops=He.ops_table.link.node,_.stream_ops=He.ops_table.link.stream):J.isChrdev(_.mode)&&(_.node_ops=He.ops_table.chrdev.node,_.stream_ops=He.ops_table.chrdev.stream),_.timestamp=Date.now(),y&&(y.contents[b]=_,y.timestamp=_.timestamp),_},getFileDataAsTypedArray(y){return y.contents?y.contents.subarray?y.contents.subarray(0,y.usedBytes):new Uint8Array(y.contents):new Uint8Array(0)},expandFileStorage(y,b){var R=y.contents?y.contents.length:0;if(!(R>=b)){var W=1024*1024;b=Math.max(b,R*(R>>0),R!=0&&(b=Math.max(b,256));var _=y.contents;y.contents=new Uint8Array(b),y.usedBytes>0&&y.contents.set(_.subarray(0,y.usedBytes),0)}},resizeFileStorage(y,b){if(y.usedBytes!=b)if(b==0)y.contents=null,y.usedBytes=0;else{var R=y.contents;y.contents=new Uint8Array(b),R&&y.contents.set(R.subarray(0,Math.min(b,y.usedBytes))),y.usedBytes=b}},node_ops:{getattr(y){var b={};return b.dev=J.isChrdev(y.mode)?y.id:1,b.ino=y.id,b.mode=y.mode,b.nlink=1,b.uid=0,b.gid=0,b.rdev=y.rdev,J.isDir(y.mode)?b.size=4096:J.isFile(y.mode)?b.size=y.usedBytes:J.isLink(y.mode)?b.size=y.link.length:b.size=0,b.atime=new Date(y.timestamp),b.mtime=new Date(y.timestamp),b.ctime=new Date(y.timestamp),b.blksize=4096,b.blocks=Math.ceil(b.size/b.blksize),b},setattr(y,b){b.mode!==void 0&&(y.mode=b.mode),b.timestamp!==void 0&&(y.timestamp=b.timestamp),b.size!==void 0&&He.resizeFileStorage(y,b.size)},lookup(y,b){throw J.genericErrors[44]},mknod(y,b,R,W){return He.createNode(y,b,R,W)},rename(y,b,R){if(J.isDir(y.mode)){var W;try{W=J.lookupNode(b,R)}catch(q){}if(W)for(var _ in W.contents)throw new J.ErrnoError(55)}delete y.parent.contents[y.name],y.parent.timestamp=Date.now(),y.name=R,b.contents[R]=y,b.timestamp=y.parent.timestamp},unlink(y,b){delete y.contents[b],y.timestamp=Date.now()},rmdir(y,b){var R=J.lookupNode(y,b);for(var W in R.contents)throw new J.ErrnoError(55);delete y.contents[b],y.timestamp=Date.now()},readdir(y){var b=[".",".."];for(var R of Object.keys(y.contents))b.push(R);return b},symlink(y,b,R){var W=He.createNode(y,b,41471,0);return W.link=R,W},readlink(y){if(!J.isLink(y.mode))throw new J.ErrnoError(28);return y.link}},stream_ops:{read(y,b,R,W,_){var q=y.node.contents;if(_>=y.node.usedBytes)return 0;var tA=Math.min(y.node.usedBytes-_,W);if(tA>8&&q.subarray)b.set(q.subarray(_,_+tA),R);else for(var rA=0;rA0||R+b{var _=W?"":`al ${y}`;C(y).then(q=>{b(new Uint8Array(q)),_&&bA()},q=>{if(R)R();else throw`Loading data file "${y}" failed.`}),_&&HA()},Gi=(y,b,R,W,_,q)=>{J.createDataFile(y,b,R,W,_,q)},Pi=[],gn=(y,b,R,W)=>{typeof Browser<"u"&&Browser.init();var _=!1;return Pi.forEach(q=>{_||q.canHandle(b)&&(q.handle(y,b,R,W),_=!0)}),_},Rt=(y,b,R,W,_,q,tA,rA,DA,ae)=>{var ge=b?me.resolve(oA.join2(y,b)):y;function pe(Ve){function Ue(Je){ae?.(),rA||Gi(y,b,Je,W,_,DA),q?.(),bA()}gn(Ve,ge,Ue,()=>{tA?.(),bA()})||Ue(Ve)}HA(),typeof R=="string"?En(R,pe,tA):pe(R)},Qn=y=>{var b={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},R=b[y];if(typeof R>"u")throw new Error(`Unknown file open mode: ${y}`);return R},jt=(y,b)=>{var R=0;return y&&(R|=365),b&&(R|=146),R},J={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{constructor(y){this.name="ErrnoError",this.errno=y}},genericErrors:{},filesystems:null,syncFSRequests:0,FSStream:class{constructor(){this.shared={}}get object(){return this.node}set object(y){this.node=y}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(y){this.shared.flags=y}get position(){return this.shared.position}set position(y){this.shared.position=y}},FSNode:class{constructor(y,b,R,W){y||(y=this),this.parent=y,this.mount=y.mount,this.mounted=null,this.id=J.nextInode++,this.name=b,this.mode=R,this.node_ops={},this.stream_ops={},this.rdev=W,this.readMode=365,this.writeMode=146}get read(){return(this.mode&this.readMode)===this.readMode}set read(y){y?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(y){y?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return J.isDir(this.mode)}get isDevice(){return J.isChrdev(this.mode)}},lookupPath(y,b={}){if(y=me.resolve(y),!y)return{path:"",node:null};var R={follow_mount:!0,recurse_count:0};if(b=Object.assign(R,b),b.recurse_count>8)throw new J.ErrnoError(32);for(var W=y.split("/").filter(pe=>!!pe),_=J.root,q="/",tA=0;tA40)throw new J.ErrnoError(32)}}return{path:q,node:_}},getPath(y){for(var b;;){if(J.isRoot(y)){var R=y.mount.mountpoint;return b?R[R.length-1]!=="/"?`${R}/${b}`:R+b:R}b=b?`${y.name}/${b}`:y.name,y=y.parent}},hashName(y,b){for(var R=0,W=0;W>>0)%J.nameTable.length},hashAddNode(y){var b=J.hashName(y.parent.id,y.name);y.name_next=J.nameTable[b],J.nameTable[b]=y},hashRemoveNode(y){var b=J.hashName(y.parent.id,y.name);if(J.nameTable[b]===y)J.nameTable[b]=y.name_next;else for(var R=J.nameTable[b];R;){if(R.name_next===y){R.name_next=y.name_next;break}R=R.name_next}},lookupNode(y,b){var R=J.mayLookup(y);if(R)throw new J.ErrnoError(R);for(var W=J.hashName(y.id,b),_=J.nameTable[W];_;_=_.name_next){var q=_.name;if(_.parent.id===y.id&&q===b)return _}return J.lookup(y,b)},createNode(y,b,R,W){var _=new J.FSNode(y,b,R,W);return J.hashAddNode(_),_},destroyNode(y){J.hashRemoveNode(y)},isRoot(y){return y===y.parent},isMountpoint(y){return!!y.mounted},isFile(y){return(y&61440)===32768},isDir(y){return(y&61440)===16384},isLink(y){return(y&61440)===40960},isChrdev(y){return(y&61440)===8192},isBlkdev(y){return(y&61440)===24576},isFIFO(y){return(y&61440)===4096},isSocket(y){return(y&49152)===49152},flagsToPermissionString(y){var b=["r","w","rw"][y&3];return y&512&&(b+="w"),b},nodePermissions(y,b){return J.ignorePermissions?0:b.includes("r")&&!(y.mode&292)||b.includes("w")&&!(y.mode&146)||b.includes("x")&&!(y.mode&73)?2:0},mayLookup(y){if(!J.isDir(y.mode))return 54;var b=J.nodePermissions(y,"x");return b||(y.node_ops.lookup?0:2)},mayCreate(y,b){try{var R=J.lookupNode(y,b);return 20}catch(W){}return J.nodePermissions(y,"wx")},mayDelete(y,b,R){var W;try{W=J.lookupNode(y,b)}catch(q){return q.errno}var _=J.nodePermissions(y,"wx");if(_)return _;if(R){if(!J.isDir(W.mode))return 54;if(J.isRoot(W)||J.getPath(W)===J.cwd())return 10}else if(J.isDir(W.mode))return 31;return 0},mayOpen(y,b){return y?J.isLink(y.mode)?32:J.isDir(y.mode)&&(J.flagsToPermissionString(b)!=="r"||b&512)?31:J.nodePermissions(y,J.flagsToPermissionString(b)):44},MAX_OPEN_FDS:4096,nextfd(){for(var y=0;y<=J.MAX_OPEN_FDS;y++)if(!J.streams[y])return y;throw new J.ErrnoError(33)},getStreamChecked(y){var b=J.getStream(y);if(!b)throw new J.ErrnoError(8);return b},getStream:y=>J.streams[y],createStream(y,b=-1){return y=Object.assign(new J.FSStream,y),b==-1&&(b=J.nextfd()),y.fd=b,J.streams[b]=y,y},closeStream(y){J.streams[y]=null},dupStream(y,b=-1){var R=J.createStream(y,b);return R.stream_ops?.dup?.(R),R},chrdev_stream_ops:{open(y){var b=J.getDevice(y.node.rdev);y.stream_ops=b.stream_ops,y.stream_ops.open?.(y)},llseek(){throw new J.ErrnoError(70)}},major:y=>y>>8,minor:y=>y&255,makedev:(y,b)=>y<<8|b,registerDevice(y,b){J.devices[y]={stream_ops:b}},getDevice:y=>J.devices[y],getMounts(y){for(var b=[],R=[y];R.length;){var W=R.pop();b.push(W),R.push(...W.mounts)}return b},syncfs(y,b){typeof y=="function"&&(b=y,y=!1),J.syncFSRequests++,J.syncFSRequests>1&&u(`warning: ${J.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var R=J.getMounts(J.root.mount),W=0;function _(tA){return J.syncFSRequests--,b(tA)}function q(tA){if(tA)return q.errored?void 0:(q.errored=!0,_(tA));++W>=R.length&&_(null)}R.forEach(tA=>{if(!tA.type.syncfs)return q(null);tA.type.syncfs(tA,y,q)})},mount(y,b,R){var W=R==="/",_=!R,q;if(W&&J.root)throw new J.ErrnoError(10);if(!W&&!_){var tA=J.lookupPath(R,{follow_mount:!1});if(R=tA.path,q=tA.node,J.isMountpoint(q))throw new J.ErrnoError(10);if(!J.isDir(q.mode))throw new J.ErrnoError(54)}var rA={type:y,opts:b,mountpoint:R,mounts:[]},DA=y.mount(rA);return DA.mount=rA,rA.root=DA,W?J.root=DA:q&&(q.mounted=rA,q.mount&&q.mount.mounts.push(rA)),DA},unmount(y){var b=J.lookupPath(y,{follow_mount:!1});if(!J.isMountpoint(b.node))throw new J.ErrnoError(28);var R=b.node,W=R.mounted,_=J.getMounts(W);Object.keys(J.nameTable).forEach(tA=>{for(var rA=J.nameTable[tA];rA;){var DA=rA.name_next;_.includes(rA.mount)&&J.destroyNode(rA),rA=DA}}),R.mounted=null;var q=R.mount.mounts.indexOf(W);R.mount.mounts.splice(q,1)},lookup(y,b){return y.node_ops.lookup(y,b)},mknod(y,b,R){var W=J.lookupPath(y,{parent:!0}),_=W.node,q=oA.basename(y);if(!q||q==="."||q==="..")throw new J.ErrnoError(28);var tA=J.mayCreate(_,q);if(tA)throw new J.ErrnoError(tA);if(!_.node_ops.mknod)throw new J.ErrnoError(63);return _.node_ops.mknod(_,q,b,R)},create(y,b){return b=b!==void 0?b:438,b&=4095,b|=32768,J.mknod(y,b,0)},mkdir(y,b){return b=b!==void 0?b:511,b&=1023,b|=16384,J.mknod(y,b,0)},mkdirTree(y,b){for(var R=y.split("/"),W="",_=0;_"u"&&(R=b,b=438),b|=8192,J.mknod(y,b,R)},symlink(y,b){if(!me.resolve(y))throw new J.ErrnoError(44);var R=J.lookupPath(b,{parent:!0}),W=R.node;if(!W)throw new J.ErrnoError(44);var _=oA.basename(b),q=J.mayCreate(W,_);if(q)throw new J.ErrnoError(q);if(!W.node_ops.symlink)throw new J.ErrnoError(63);return W.node_ops.symlink(W,_,y)},rename(y,b){var R=oA.dirname(y),W=oA.dirname(b),_=oA.basename(y),q=oA.basename(b),tA,rA,DA;if(tA=J.lookupPath(y,{parent:!0}),rA=tA.node,tA=J.lookupPath(b,{parent:!0}),DA=tA.node,!rA||!DA)throw new J.ErrnoError(44);if(rA.mount!==DA.mount)throw new J.ErrnoError(75);var ae=J.lookupNode(rA,_),ge=me.relative(y,W);if(ge.charAt(0)!==".")throw new J.ErrnoError(28);if(ge=me.relative(b,R),ge.charAt(0)!==".")throw new J.ErrnoError(55);var pe;try{pe=J.lookupNode(DA,q)}catch(Je){}if(ae!==pe){var Ve=J.isDir(ae.mode),Ue=J.mayDelete(rA,_,Ve);if(Ue)throw new J.ErrnoError(Ue);if(Ue=pe?J.mayDelete(DA,q,Ve):J.mayCreate(DA,q),Ue)throw new J.ErrnoError(Ue);if(!rA.node_ops.rename)throw new J.ErrnoError(63);if(J.isMountpoint(ae)||pe&&J.isMountpoint(pe))throw new J.ErrnoError(10);if(DA!==rA&&(Ue=J.nodePermissions(rA,"w"),Ue))throw new J.ErrnoError(Ue);J.hashRemoveNode(ae);try{rA.node_ops.rename(ae,DA,q),ae.parent=DA}catch(Je){throw Je}finally{J.hashAddNode(ae)}}},rmdir(y){var b=J.lookupPath(y,{parent:!0}),R=b.node,W=oA.basename(y),_=J.lookupNode(R,W),q=J.mayDelete(R,W,!0);if(q)throw new J.ErrnoError(q);if(!R.node_ops.rmdir)throw new J.ErrnoError(63);if(J.isMountpoint(_))throw new J.ErrnoError(10);R.node_ops.rmdir(R,W),J.destroyNode(_)},readdir(y){var b=J.lookupPath(y,{follow:!0}),R=b.node;if(!R.node_ops.readdir)throw new J.ErrnoError(54);return R.node_ops.readdir(R)},unlink(y){var b=J.lookupPath(y,{parent:!0}),R=b.node;if(!R)throw new J.ErrnoError(44);var W=oA.basename(y),_=J.lookupNode(R,W),q=J.mayDelete(R,W,!1);if(q)throw new J.ErrnoError(q);if(!R.node_ops.unlink)throw new J.ErrnoError(63);if(J.isMountpoint(_))throw new J.ErrnoError(10);R.node_ops.unlink(R,W),J.destroyNode(_)},readlink(y){var b=J.lookupPath(y),R=b.node;if(!R)throw new J.ErrnoError(44);if(!R.node_ops.readlink)throw new J.ErrnoError(28);return me.resolve(J.getPath(R.parent),R.node_ops.readlink(R))},stat(y,b){var R=J.lookupPath(y,{follow:!b}),W=R.node;if(!W)throw new J.ErrnoError(44);if(!W.node_ops.getattr)throw new J.ErrnoError(63);return W.node_ops.getattr(W)},lstat(y){return J.stat(y,!0)},chmod(y,b,R){var W;if(typeof y=="string"){var _=J.lookupPath(y,{follow:!R});W=_.node}else W=y;if(!W.node_ops.setattr)throw new J.ErrnoError(63);W.node_ops.setattr(W,{mode:b&4095|W.mode&-4096,timestamp:Date.now()})},lchmod(y,b){J.chmod(y,b,!0)},fchmod(y,b){var R=J.getStreamChecked(y);J.chmod(R.node,b)},chown(y,b,R,W){var _;if(typeof y=="string"){var q=J.lookupPath(y,{follow:!W});_=q.node}else _=y;if(!_.node_ops.setattr)throw new J.ErrnoError(63);_.node_ops.setattr(_,{timestamp:Date.now()})},lchown(y,b,R){J.chown(y,b,R,!0)},fchown(y,b,R){var W=J.getStreamChecked(y);J.chown(W.node,b,R)},truncate(y,b){if(b<0)throw new J.ErrnoError(28);var R;if(typeof y=="string"){var W=J.lookupPath(y,{follow:!0});R=W.node}else R=y;if(!R.node_ops.setattr)throw new J.ErrnoError(63);if(J.isDir(R.mode))throw new J.ErrnoError(31);if(!J.isFile(R.mode))throw new J.ErrnoError(28);var _=J.nodePermissions(R,"w");if(_)throw new J.ErrnoError(_);R.node_ops.setattr(R,{size:b,timestamp:Date.now()})},ftruncate(y,b){var R=J.getStreamChecked(y);if((R.flags&2097155)===0)throw new J.ErrnoError(28);J.truncate(R.node,b)},utime(y,b,R){var W=J.lookupPath(y,{follow:!0}),_=W.node;_.node_ops.setattr(_,{timestamp:Math.max(b,R)})},open(y,b,R){if(y==="")throw new J.ErrnoError(44);b=typeof b=="string"?Qn(b):b,b&64?(R=typeof R>"u"?438:R,R=R&4095|32768):R=0;var W;if(typeof y=="object")W=y;else{y=oA.normalize(y);try{var _=J.lookupPath(y,{follow:!(b&131072)});W=_.node}catch(DA){}}var q=!1;if(b&64)if(W){if(b&128)throw new J.ErrnoError(20)}else W=J.mknod(y,R,0),q=!0;if(!W)throw new J.ErrnoError(44);if(J.isChrdev(W.mode)&&(b&=-513),b&65536&&!J.isDir(W.mode))throw new J.ErrnoError(54);if(!q){var tA=J.mayOpen(W,b);if(tA)throw new J.ErrnoError(tA)}b&512&&!q&&J.truncate(W,0),b&=-131713;var rA=J.createStream({node:W,path:J.getPath(W),flags:b,seekable:!0,position:0,stream_ops:W.stream_ops,ungotten:[],error:!1});return rA.stream_ops.open&&rA.stream_ops.open(rA),rA},close(y){if(J.isClosed(y))throw new J.ErrnoError(8);y.getdents&&(y.getdents=null);try{y.stream_ops.close&&y.stream_ops.close(y)}catch(b){throw b}finally{J.closeStream(y.fd)}y.fd=null},isClosed(y){return y.fd===null},llseek(y,b,R){if(J.isClosed(y))throw new J.ErrnoError(8);if(!y.seekable||!y.stream_ops.llseek)throw new J.ErrnoError(70);if(R!=0&&R!=1&&R!=2)throw new J.ErrnoError(28);return y.position=y.stream_ops.llseek(y,b,R),y.ungotten=[],y.position},read(y,b,R,W,_){if(W<0||_<0)throw new J.ErrnoError(28);if(J.isClosed(y))throw new J.ErrnoError(8);if((y.flags&2097155)===1)throw new J.ErrnoError(8);if(J.isDir(y.node.mode))throw new J.ErrnoError(31);if(!y.stream_ops.read)throw new J.ErrnoError(28);var q=typeof _<"u";if(!q)_=y.position;else if(!y.seekable)throw new J.ErrnoError(70);var tA=y.stream_ops.read(y,b,R,W,_);return q||(y.position+=tA),tA},write(y,b,R,W,_,q){if(W<0||_<0)throw new J.ErrnoError(28);if(J.isClosed(y))throw new J.ErrnoError(8);if((y.flags&2097155)===0)throw new J.ErrnoError(8);if(J.isDir(y.node.mode))throw new J.ErrnoError(31);if(!y.stream_ops.write)throw new J.ErrnoError(28);y.seekable&&y.flags&1024&&J.llseek(y,0,2);var tA=typeof _<"u";if(!tA)_=y.position;else if(!y.seekable)throw new J.ErrnoError(70);var rA=y.stream_ops.write(y,b,R,W,_,q);return tA||(y.position+=rA),rA},allocate(y,b,R){if(J.isClosed(y))throw new J.ErrnoError(8);if(b<0||R<=0)throw new J.ErrnoError(28);if((y.flags&2097155)===0)throw new J.ErrnoError(8);if(!J.isFile(y.node.mode)&&!J.isDir(y.node.mode))throw new J.ErrnoError(43);if(!y.stream_ops.allocate)throw new J.ErrnoError(138);y.stream_ops.allocate(y,b,R)},mmap(y,b,R,W,_){if((W&2)!==0&&(_&2)===0&&(y.flags&2097155)!==2)throw new J.ErrnoError(2);if((y.flags&2097155)===1)throw new J.ErrnoError(2);if(!y.stream_ops.mmap)throw new J.ErrnoError(43);if(!b)throw new J.ErrnoError(28);return y.stream_ops.mmap(y,b,R,W,_)},msync(y,b,R,W,_){return y.stream_ops.msync?y.stream_ops.msync(y,b,R,W,_):0},ioctl(y,b,R){if(!y.stream_ops.ioctl)throw new J.ErrnoError(59);return y.stream_ops.ioctl(y,b,R)},readFile(y,b={}){if(b.flags=b.flags||0,b.encoding=b.encoding||"binary",b.encoding!=="utf8"&&b.encoding!=="binary")throw new Error(`Invalid encoding type "${b.encoding}"`);var R,W=J.open(y,b.flags),_=J.stat(y),q=_.size,tA=new Uint8Array(q);return J.read(W,tA,0,q,0),b.encoding==="utf8"?R=vt(tA):b.encoding==="binary"&&(R=tA),J.close(W),R},writeFile(y,b,R={}){R.flags=R.flags||577;var W=J.open(y,R.flags,R.mode);if(typeof b=="string"){var _=new Uint8Array(OA(b)+1),q=wt(b,_,0,_.length);J.write(W,_,0,q,void 0,R.canOwn)}else if(ArrayBuffer.isView(b))J.write(W,b,0,b.byteLength,void 0,R.canOwn);else throw new Error("Unsupported data type");J.close(W)},cwd:()=>J.currentPath,chdir(y){var b=J.lookupPath(y,{follow:!0});if(b.node===null)throw new J.ErrnoError(44);if(!J.isDir(b.node.mode))throw new J.ErrnoError(54);var R=J.nodePermissions(b.node,"x");if(R)throw new J.ErrnoError(R);J.currentPath=b.path},createDefaultDirectories(){J.mkdir("/tmp"),J.mkdir("/home"),J.mkdir("/home/web_user")},createDefaultDevices(){J.mkdir("/dev"),J.registerDevice(J.makedev(1,3),{read:()=>0,write:(W,_,q,tA,rA)=>tA}),J.mkdev("/dev/null",J.makedev(1,3)),ze.register(J.makedev(5,0),ze.default_tty_ops),ze.register(J.makedev(6,0),ze.default_tty1_ops),J.mkdev("/dev/tty",J.makedev(5,0)),J.mkdev("/dev/tty1",J.makedev(6,0));var y=new Uint8Array(1024),b=0,R=()=>(b===0&&(b=he(y).byteLength),y[--b]);J.createDevice("/dev","random",R),J.createDevice("/dev","urandom",R),J.mkdir("/dev/shm"),J.mkdir("/dev/shm/tmp")},createSpecialDirectories(){J.mkdir("/proc");var y=J.mkdir("/proc/self");J.mkdir("/proc/self/fd"),J.mount({mount(){var b=J.createNode(y,"fd",16895,73);return b.node_ops={lookup(R,W){var _=+W,q=J.getStreamChecked(_),tA={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>q.path}};return tA.parent=tA,tA}},b}},{},"/proc/self/fd")},createStandardStreams(y,b,R){y?J.createDevice("/dev","stdin",y):J.symlink("/dev/tty","/dev/stdin"),b?J.createDevice("/dev","stdout",null,b):J.symlink("/dev/tty","/dev/stdout"),R?J.createDevice("/dev","stderr",null,R):J.symlink("/dev/tty1","/dev/stderr"),J.open("/dev/stdin",0),J.open("/dev/stdout",1),J.open("/dev/stderr",1)},staticInit(){[44].forEach(y=>{J.genericErrors[y]=new J.ErrnoError(y),J.genericErrors[y].stack=""}),J.nameTable=new Array(4096),J.mount(He,{},"/"),J.createDefaultDirectories(),J.createDefaultDevices(),J.createSpecialDirectories(),J.filesystems={MEMFS:He}},init(y,b,R){J.initialized=!0,J.createStandardStreams(y,b,R)},quit(){J.initialized=!1;for(var y=0;ythis.length-1||Ue<0)){var Je=Ue%this.chunkSize,Ei=Ue/this.chunkSize|0;return this.getter(Ei)[Je]}}setDataGetter(Ue){this.getter=Ue}cacheLength(){var Ue=new XMLHttpRequest;if(Ue.open("HEAD",R,!1),Ue.send(null),!(Ue.status>=200&&Ue.status<300||Ue.status===304))throw new Error("Couldn't load "+R+". Status: "+Ue.status);var Je=Number(Ue.getResponseHeader("Content-length")),Ei,no=(Ei=Ue.getResponseHeader("Accept-Ranges"))&&Ei==="bytes",AA=(Ei=Ue.getResponseHeader("Content-Encoding"))&&Ei==="gzip",fA=1024*1024;no||(fA=Je);var ZA=(Me,Re)=>{if(Me>Re)throw new Error("invalid range ("+Me+", "+Re+") or no bytes requested!");if(Re>Je-1)throw new Error("only "+Je+" bytes available! programmer error!");var ct=new XMLHttpRequest;if(ct.open("GET",R,!1),Je!==fA&&ct.setRequestHeader("Range","bytes="+Me+"-"+Re),ct.responseType="arraybuffer",ct.overrideMimeType&&ct.overrideMimeType("text/plain; charset=x-user-defined"),ct.send(null),!(ct.status>=200&&ct.status<300||ct.status===304))throw new Error("Couldn't load "+R+". Status: "+ct.status);return ct.response!==void 0?new Uint8Array(ct.response||[]):rt(ct.responseText||"",!0)},Ye=this;Ye.setDataGetter(Me=>{var Re=Me*fA,ct=(Me+1)*fA-1;if(ct=Math.min(ct,Je-1),typeof Ye.chunks[Me]>"u"&&(Ye.chunks[Me]=ZA(Re,ct)),typeof Ye.chunks[Me]>"u")throw new Error("doXHR failed!");return Ye.chunks[Me]}),(AA||!Je)&&(fA=Je=1,Je=this.getter(0).length,fA=Je,B("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=Je,this._chunkSize=fA,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if(typeof XMLHttpRequest<"u"){throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var tA,rA}else var rA={isDevice:!1,url:R};var DA=J.createFile(y,b,rA,W,_);rA.contents?DA.contents=rA.contents:rA.url&&(DA.contents=null,DA.url=rA.url),Object.defineProperties(DA,{usedBytes:{get:function(){return this.contents.length}}});var ae={},ge=Object.keys(DA.stream_ops);ge.forEach(Ve=>{var Ue=DA.stream_ops[Ve];ae[Ve]=(...Je)=>(J.forceLoadFile(DA),Ue(...Je))});function pe(Ve,Ue,Je,Ei,no){var AA=Ve.node.contents;if(no>=AA.length)return 0;var fA=Math.min(AA.length-no,Ei);if(AA.slice)for(var ZA=0;ZA(J.forceLoadFile(DA),pe(Ve,Ue,Je,Ei,no)),ae.mmap=(Ve,Ue,Je,Ei,no)=>{J.forceLoadFile(DA);var AA=Sn(Ue);if(!AA)throw new J.ErrnoError(48);return pe(Ve,k,AA,Ue,Je),{ptr:AA,allocated:!0}},DA.stream_ops=ae,DA}},ut={DEFAULT_POLLMASK:5,calculateAt(y,b,R){if(oA.isAbs(b))return b;var W;if(y===-100)W=J.cwd();else{var _=ut.getStreamFromFD(y);W=_.path}if(b.length==0){if(!R)throw new J.ErrnoError(44);return W}return oA.join2(W,b)},doStat(y,b,R){var W=y(b);F[R>>2]=W.dev,F[R+4>>2]=W.mode,z[R+8>>2]=W.nlink,F[R+12>>2]=W.uid,F[R+16>>2]=W.gid,F[R+20>>2]=W.rdev,X[R+24>>3]=BigInt(W.size),F[R+32>>2]=4096,F[R+36>>2]=W.blocks;var _=W.atime.getTime(),q=W.mtime.getTime(),tA=W.ctime.getTime();return X[R+40>>3]=BigInt(Math.floor(_/1e3)),z[R+48>>2]=_%1e3*1e3*1e3,X[R+56>>3]=BigInt(Math.floor(q/1e3)),z[R+64>>2]=q%1e3*1e3*1e3,X[R+72>>3]=BigInt(Math.floor(tA/1e3)),z[R+80>>2]=tA%1e3*1e3*1e3,X[R+88>>3]=BigInt(W.ino),0},doMsync(y,b,R,W,_){if(!J.isFile(b.node.mode))throw new J.ErrnoError(43);if(W&2)return 0;var q=M.slice(y,y+R);J.msync(b,q,_,R,W)},getStreamFromFD(y){var b=J.getStreamChecked(y);return b},varargs:void 0,getStr(y){var b=Ke(y);return b}};function bi(y,b,R,W){try{if(b=ut.getStr(b),b=ut.calculateAt(y,b),R&-8)return-28;var _=J.lookupPath(b,{follow:!0}),q=_.node;if(!q)return-44;var tA="";return R&4&&(tA+="r"),R&2&&(tA+="w"),R&1&&(tA+="x"),tA&&J.nodePermissions(q,tA)?-2:0}catch(rA){if(typeof J>"u"||rA.name!=="ErrnoError")throw rA;return-rA.errno}}function kn(){var y=F[+ut.varargs>>2];return ut.varargs+=4,y}var _n=kn;function Co(y,b,R){ut.varargs=R;try{var W=ut.getStreamFromFD(y);switch(b){case 0:{var _=kn();if(_<0)return-28;for(;J.streams[_];)_++;var q;return q=J.dupStream(W,_),q.fd}case 1:case 2:return 0;case 3:return W.flags;case 4:{var _=kn();return W.flags|=_,0}case 12:{var _=_n(),tA=0;return x[_+tA>>1]=2,0}case 13:case 14:return 0}return-28}catch(rA){if(typeof J>"u"||rA.name!=="ErrnoError")throw rA;return-rA.errno}}function ia(y,b){try{var R=ut.getStreamFromFD(y);return ut.doStat(J.stat,R.path,b)}catch(W){if(typeof J>"u"||W.name!=="ErrnoError")throw W;return-W.errno}}function So(y,b,R){ut.varargs=R;try{var W=ut.getStreamFromFD(y);switch(b){case 21509:return W.tty?0:-59;case 21505:{if(!W.tty)return-59;if(W.tty.ops.ioctl_tcgets){var _=W.tty.ops.ioctl_tcgets(W),q=_n();F[q>>2]=_.c_iflag||0,F[q+4>>2]=_.c_oflag||0,F[q+8>>2]=_.c_cflag||0,F[q+12>>2]=_.c_lflag||0;for(var tA=0;tA<32;tA++)k[q+tA+17]=_.c_cc[tA]||0;return 0}return 0}case 21510:case 21511:case 21512:return W.tty?0:-59;case 21506:case 21507:case 21508:{if(!W.tty)return-59;if(W.tty.ops.ioctl_tcsets){for(var q=_n(),rA=F[q>>2],DA=F[q+4>>2],ae=F[q+8>>2],ge=F[q+12>>2],pe=[],tA=0;tA<32;tA++)pe.push(k[q+tA+17]);return W.tty.ops.ioctl_tcsets(W.tty,b,{c_iflag:rA,c_oflag:DA,c_cflag:ae,c_lflag:ge,c_cc:pe})}return 0}case 21519:{if(!W.tty)return-59;var q=_n();return F[q>>2]=0,0}case 21520:return W.tty?-28:-59;case 21531:{var q=_n();return J.ioctl(W,b,q)}case 21523:{if(!W.tty)return-59;if(W.tty.ops.ioctl_tiocgwinsz){var Ve=W.tty.ops.ioctl_tiocgwinsz(W.tty),q=_n();x[q>>1]=Ve[0],x[q+2>>1]=Ve[1]}return 0}case 21524:return W.tty?0:-59;case 21515:return W.tty?0:-59;default:return-28}}catch(Ue){if(typeof J>"u"||Ue.name!=="ErrnoError")throw Ue;return-Ue.errno}}function Vo(y,b,R,W){try{b=ut.getStr(b);var _=W&256,q=W&4096;return W=W&-6401,b=ut.calculateAt(y,b,q),ut.doStat(_?J.lstat:J.stat,b,R)}catch(tA){if(typeof J>"u"||tA.name!=="ErrnoError")throw tA;return-tA.errno}}function ga(y,b,R,W){ut.varargs=W;try{b=ut.getStr(b),b=ut.calculateAt(y,b);var _=W?kn():0;return J.open(b,R,_).fd}catch(q){if(typeof J>"u"||q.name!=="ErrnoError")throw q;return-q.errno}}function Ko(y,b){try{return y=ut.getStr(y),ut.doStat(J.stat,y,b)}catch(R){if(typeof J>"u"||R.name!=="ErrnoError")throw R;return-R.errno}}var va=()=>{PA("")},ca=y=>y%4===0&&(y%100!==0||y%400===0),pa=[0,31,60,91,121,152,182,213,244,274,305,335],Uo=[0,31,59,90,120,151,181,212,243,273,304,334],de=y=>{var b=ca(y.getFullYear()),R=b?pa:Uo,W=R[y.getMonth()]+y.getDate()-1;return W},xi=9007199254740992,wn=-9007199254740992,xn=y=>yxi?NaN:Number(y);function na(y,b){y=xn(y);var R=new Date(y*1e3);F[b>>2]=R.getSeconds(),F[b+4>>2]=R.getMinutes(),F[b+8>>2]=R.getHours(),F[b+12>>2]=R.getDate(),F[b+16>>2]=R.getMonth(),F[b+20>>2]=R.getFullYear()-1900,F[b+24>>2]=R.getDay();var W=de(R)|0;F[b+28>>2]=W,F[b+36>>2]=-(R.getTimezoneOffset()*60);var _=new Date(R.getFullYear(),0,1),q=new Date(R.getFullYear(),6,1).getTimezoneOffset(),tA=_.getTimezoneOffset(),rA=(q!=tA&&R.getTimezoneOffset()==Math.min(tA,q))|0;F[b+32>>2]=rA}function Ra(y,b,R,W,_,q,tA){_=xn(_);try{if(isNaN(_))return 61;var rA=ut.getStreamFromFD(W),DA=J.mmap(rA,y,_,b,R),ae=DA.ptr;return F[q>>2]=DA.allocated,z[tA>>2]=ae,0}catch(ge){if(typeof J>"u"||ge.name!=="ErrnoError")throw ge;return-ge.errno}}function Oi(y,b,R,W,_,q){q=xn(q);try{var tA=ut.getStreamFromFD(_);R&2&&ut.doMsync(y,tA,b,W,q)}catch(rA){if(typeof J>"u"||rA.name!=="ErrnoError")throw rA;return-rA.errno}}var ko=(y,b,R)=>wt(y,M,b,R),ar=(y,b,R,W)=>{var _=new Date().getFullYear(),q=new Date(_,0,1),tA=new Date(_,6,1),rA=q.getTimezoneOffset(),DA=tA.getTimezoneOffset(),ae=Math.max(rA,DA);z[y>>2]=ae*60,F[b>>2]=+(rA!=DA);var ge=Ue=>{var Je=Ue>=0?"-":"+",Ei=Math.abs(Ue),no=String(Math.floor(Ei/60)).padStart(2,"0"),AA=String(Ei%60).padStart(2,"0");return`UTC${Je}${no}${AA}`},pe=ge(rA),Ve=ge(DA);DADate.now(),ja=()=>2147483648,to=y=>{var b=v.buffer,R=(y-b.byteLength+65535)/65536|0;try{return v.grow(R),Z(),1}catch(W){}},Wi=y=>{var b=M.length;y>>>=0;var R=ja();if(y>R)return!1;for(var W=1;W<=4;W*=2){var _=b*(1+.2/W);_=Math.min(_,y+100663296);var q=Math.min(R,mn(Math.max(y,_),65536)),tA=to(q);if(tA)return!0}return!1},ei={},qn=()=>s,_o=()=>{if(!_o.strings){var y=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",b={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:y,_:qn()};for(var R in ei)ei[R]===void 0?delete b[R]:b[R]=ei[R];var W=[];for(var R in b)W.push(`${R}=${b[R]}`);_o.strings=W}return _o.strings},qo=(y,b)=>{for(var R=0;R{var R=0;return _o().forEach((W,_)=>{var q=b+R;z[y+_*4>>2]=q,qo(W,q),R+=W.length+1}),0},ee=(y,b)=>{var R=_o();z[y>>2]=R.length;var W=0;return R.forEach(_=>W+=_.length+1),z[b>>2]=W,0},be=y=>{l(y,new Pt(y))},EA=(y,b)=>{be(y)},LA=EA;function Ce(y){try{var b=ut.getStreamFromFD(y);return J.close(b),0}catch(R){if(typeof J>"u"||R.name!=="ErrnoError")throw R;return R.errno}}var Te=(y,b,R,W)=>{for(var _=0,q=0;q>2],rA=z[b+4>>2];b+=8;var DA=J.read(y,k,tA,rA,W);if(DA<0)return-1;if(_+=DA,DA>2]=q,0}catch(tA){if(typeof J>"u"||tA.name!=="ErrnoError")throw tA;return tA.errno}}function dt(y,b,R,W){b=xn(b);try{if(isNaN(b))return 61;var _=ut.getStreamFromFD(y);return J.llseek(_,b,R),X[W>>3]=BigInt(_.position),_.getdents&&b===0&&R===0&&(_.getdents=null),0}catch(q){if(typeof J>"u"||q.name!=="ErrnoError")throw q;return q.errno}}var Ut=(y,b,R,W)=>{for(var _=0,q=0;q>2],rA=z[b+4>>2];b+=8;var DA=J.write(y,k,tA,rA,W);if(DA<0)return-1;if(_+=DA,DA>2]=q,0}catch(tA){if(typeof J>"u"||tA.name!=="ErrnoError")throw tA;return tA.errno}}var Zi=y=>{var b=t["_"+y];return b},nn=(y,b)=>{k.set(y,b)},ai=y=>Io(y),Xi=y=>{var b=OA(y)+1,R=ai(b);return ko(y,R,b),R},Na=(y,b,R,W,_)=>{var q={string:Je=>{var Ei=0;return Je!=null&&Je!==0&&(Ei=Xi(Je)),Ei},array:Je=>{var Ei=ai(Je.length);return nn(Je,Ei),Ei}};function tA(Je){return b==="string"?Ke(Je):b==="boolean"?!!Je:Je}var rA=Zi(y),DA=[],ae=0;if(W)for(var ge=0;ge(t._viz_set_y_invert=It.A)(y),t._viz_set_reduce=y=>(t._viz_set_reduce=It.B)(y),t._viz_get_graphviz_version=()=>(t._viz_get_graphviz_version=It.C)(),t._free=y=>(t._free=It.D)(y),t._malloc=y=>(t._malloc=It.E)(y),t._viz_get_plugin_list=y=>(t._viz_get_plugin_list=It.G)(y),t._viz_create_graph=(y,b,R)=>(t._viz_create_graph=It.H)(y,b,R),t._viz_read_one_graph=y=>(t._viz_read_one_graph=It.I)(y),t._viz_string_dup=(y,b)=>(t._viz_string_dup=It.J)(y,b),t._viz_string_dup_html=(y,b)=>(t._viz_string_dup_html=It.K)(y,b),t._viz_string_free=(y,b)=>(t._viz_string_free=It.L)(y,b),t._viz_string_free_html=(y,b)=>(t._viz_string_free_html=It.M)(y,b),t._viz_add_node=(y,b)=>(t._viz_add_node=It.N)(y,b),t._viz_add_edge=(y,b,R)=>(t._viz_add_edge=It.O)(y,b,R),t._viz_add_subgraph=(y,b)=>(t._viz_add_subgraph=It.P)(y,b),t._viz_set_default_graph_attribute=(y,b,R)=>(t._viz_set_default_graph_attribute=It.Q)(y,b,R),t._viz_set_default_node_attribute=(y,b,R)=>(t._viz_set_default_node_attribute=It.R)(y,b,R),t._viz_set_default_edge_attribute=(y,b,R)=>(t._viz_set_default_edge_attribute=It.S)(y,b,R),t._viz_set_attribute=(y,b,R)=>(t._viz_set_attribute=It.T)(y,b,R),t._viz_free_graph=y=>(t._viz_free_graph=It.U)(y),t._viz_create_context=()=>(t._viz_create_context=It.V)(),t._viz_free_context=y=>(t._viz_free_context=It.W)(y),t._viz_layout=(y,b,R)=>(t._viz_layout=It.X)(y,b,R),t._viz_free_layout=(y,b)=>(t._viz_free_layout=It.Y)(y,b),t._viz_reset_errors=()=>(t._viz_reset_errors=It.Z)(),t._viz_render=(y,b,R)=>(t._viz_render=It._)(y,b,R);var $i=(y,b)=>($i=It.$)(y,b),cn=y=>(cn=It.aa)(y),Io=y=>(Io=It.ba)(y),Rn=()=>(Rn=It.ca)();t.ccall=Na,t.getValue=fe,t.PATH=oA,t.UTF8ToString=Ke,t.stringToUTF8=ko,t.lengthBytesUTF8=OA,t.FS=J;var Tt,fa;qA=function y(){Tt||oa(),Tt||(qA=y)};function oa(){if(xA>0||!fa&&(fa=1,QA(),xA>0))return;function y(){Tt||(Tt=1,t.calledRun=1,!S&&(RA(),n(t),dA()))}y()}return oa(),A=a,A}})(),$$=[[/^Error: (.*)/,"error"],[/^Warning: (.*)/,"warning"]];function r_A(i){return i.map(e=>{for(let A=0;A<$$.length;A++){let[t,n]=$$[A],o;if((o=t.exec(e))!==null)return{message:o[1].trimEnd(),level:n}}return{message:e.trimEnd()}})}function s_A(i){let e=[],A;for(let t=0;t{if(typeof A.name!="string")throw new Error("image name must be a string");if(typeof A.width!="number"&&typeof A.width!="string")throw new Error("image width must be a number or string");if(typeof A.height!="number"&&typeof A.height!="string")throw new Error("image height must be a number or string");let t=i.PATH.join("/",A.name),n=` - -`;return i.FS.createPath("/",i.PATH.dirname(t)),i.FS.writeFile(t,n),t}):[]}function c_A(i,e){for(let A of e)i.FS.analyzePath(A).exists&&i.FS.unlink(A)}function C_A(i,e,A){let t;try{let n=i.lengthBytesUTF8(e);return t=i.ccall("malloc","number",["number"],[n+1]),i.stringToUTF8(e,t,n+1),i.ccall("viz_read_one_graph","number",["number"],[t])}finally{t&&i.ccall("free","number",["number"],[t])}}function d_A(i,e,A){let t=i.ccall("viz_create_graph","number",["string","number","number"],[e.name,typeof e.directed<"u"?e.directed:!0,typeof e.strict<"u"?e.strict:!1]);return iAA(i,t,e),t}function iAA(i,e,A){nAA(i,e,A),A.nodes&&A.nodes.forEach(t=>{if(typeof t.name>"u")throw new Error("nodes must have a name");let n=i.ccall("viz_add_node","number",["number","string"],[e,String(t.name)]);t.attributes&&tAA(i,e,n,t.attributes)}),A.edges&&A.edges.forEach(t=>{if(typeof t.tail>"u")throw new Error("edges must have a tail");if(typeof t.head>"u")throw new Error("edges must have a head");let n=i.ccall("viz_add_edge","number",["number","string","string"],[e,String(t.tail),String(t.head)]);t.attributes&&tAA(i,e,n,t.attributes)}),A.subgraphs&&A.subgraphs.forEach(t=>{let n=i.ccall("viz_add_subgraph","number",["number","string"],[e,typeof t.name<"u"?String(t.name):0]);iAA(i,n,t)})}function nAA(i,e,A){if(A.graphAttributes)for(let[t,n]of Object.entries(A.graphAttributes))ED(i,e,n,o=>{i.ccall("viz_set_default_graph_attribute","number",["number","string","number"],[e,t,o])});if(A.nodeAttributes)for(let[t,n]of Object.entries(A.nodeAttributes))ED(i,e,n,o=>{i.ccall("viz_set_default_node_attribute","number",["number","string","number"],[e,t,o])});if(A.edgeAttributes)for(let[t,n]of Object.entries(A.edgeAttributes))ED(i,e,n,o=>{i.ccall("viz_set_default_edge_attribute","number",["number","string","number"],[e,t,o])})}function tAA(i,e,A,t){for(let[n,o]of Object.entries(t))ED(i,e,o,a=>{i.ccall("viz_set_attribute","number",["number","string","number"],[A,n,a])})}function ED(i,e,A,t){let n;if(typeof A=="object"&&"html"in A?n=i.ccall("viz_string_dup_html","number",["number","string"],[e,String(A.html)]):n=i.ccall("viz_string_dup","number",["number","string"],[e,String(A)]),n==0)throw new Error("couldn't dup string");t(n),typeof A=="object"&&"html"in A?i.ccall("viz_string_free_html","number",["number","number"],[e,n]):i.ccall("viz_string_free","number",["number","number"],[e,n])}var sN=class{constructor(e){this.module=e}get graphvizVersion(){return l_A(this.module)}get formats(){return AAA(this.module,"device")}get engines(){return AAA(this.module,"layout")}renderFormats(e,A,t={}){return eAA(this.module,e,A,P({engine:"dot"},t))}render(e,A={}){let t;A.format===void 0?t="dot":t=A.format;let n=eAA(this.module,e,[t],P({engine:"dot"},A));return n.status==="success"&&(n.output=n.output[t]),n}renderString(e,A={}){let t=this.render(e,A);if(t.status!=="success")throw new Error(t.errors.find(n=>n.level=="error")?.message||"render failed");return t.output}renderSVGElement(e,A={}){let t=this.renderString(e,$A(P({},A),{format:"svg"})),n;return typeof A.trustedTypePolicy<"u"?n=A.trustedTypePolicy.createHTML(t):n=t,new DOMParser().parseFromString(n,"image/svg+xml").documentElement}renderJSON(e,A={}){let t=this.renderString(e,$A(P({},A),{format:"json"}));return JSON.parse(t)}};function oAA(){return a_A().then(i=>new sN(i))}var QD=class i{render(e){return re(this,null,function*(){let A={format:"svg",engine:"dot"};return(yield oAA()).renderString(e,A)})}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var uD=new MA("VideoService");var pD=class i{createMessagePartFromFile(e){return re(this,null,function*(){return{inlineData:{displayName:e.name,data:yield this.readFileAsBytes(e),mimeType:e.type}}})}readFileAsBytes(e){return new Promise((A,t)=>{let n=new FileReader;n.onload=o=>{let a=o.target.result.split(",")[1];A(a)},n.onerror=t,n.readAsDataURL(e)})}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var fD=class i extends wm{sanitizer=w(jC);windowOpen(e,A,t,n){return e.open(A,t,n)}createObjectUrl(e){return URL.createObjectURL(e)}openBlobUrl(e){let A=this.createObjectUrl(e);return this.windowOpen(window,A,"_blank")}setAnchorHref(e,A){e.href=A}bypassSecurityTrustHtml(e){return this.sanitizer.bypassSecurityTrustHtml(e)}bypassSecurityTrustUrl(e){return this.sanitizer.bypassSecurityTrustUrl(e)}static \u0275fac=(()=>{let e;return function(t){return(e||(e=Li(i)))(t||i)}})();static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var mD=class i{constructor(e){this.http=e}apiServerDomain=Rr.getApiServerBaseUrl();createSession(e,A,t){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/apps/${A}/users/${e}/sessions`,o={};return t?o.state=t:o.state={},this.http.post(n,t?o:null)}return new Fi}updateSession(e,A,t,n){let o=this.apiServerDomain+`/apps/${A}/users/${e}/sessions/${t}`;return this.http.patch(o,n)}listSessions(e,A){if(this.apiServerDomain!=null){let t=this.apiServerDomain+`/apps/${A}/users/${e}/sessions`;return this.http.get(t).pipe(Se(n=>({items:n,nextPageToken:""})))}return oe({items:[],nextPageToken:""})}deleteSession(e,A,t){let n=this.apiServerDomain+`/apps/${A}/users/${e}/sessions/${t}`;return this.http.delete(n)}getSession(e,A,t){let n=this.apiServerDomain+`/apps/${A}/users/${e}/sessions/${t}`;return this.http.get(n)}importSession(e,A,t,n){if(this.apiServerDomain!=null){let o=this.apiServerDomain+`/apps/${A}/users/${e}/sessions`,a={events:t};return n&&(a.state=n),this.http.post(o,a)}return new Fi}canEdit(e,A){return oe(!0)}static \u0275fac=function(A){return new(A||i)(Wo(Mr))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var wD=class i{audioRecordingService=w(pB);videoService=w(uD);webSocketService=w(mB);audioIntervalId=void 0;videoIntervalId=void 0;constructor(){}getWsUrl(e,A,t,n){let a=`${window.location.protocol==="https:"?"wss":"ws"}://${Rr.getWSServerUrl()}/run_live?app_name=${e}&user_id=${A}&session_id=${t}`;return n&&(n.proactiveAudio&&(a+="&proactive_audio=true"),n.enableAffectiveDialog&&(a+="&enable_affective_dialog=true"),n.enableSessionResumption&&(a+="&enable_session_resumption=true"),n.saveLiveBlob&&(a+="&save_live_blob=true")),a}startAudioChat(o){return re(this,arguments,function*({appName:e,userId:A,sessionId:t,flags:n}){this.webSocketService.connect(this.getWsUrl(e,A,t,n)),yield this.startAudioStreaming()})}stopAudioChat(){this.stopAudioStreaming(),this.webSocketService.closeConnection()}startAudioStreaming(){return re(this,null,function*(){try{yield this.audioRecordingService.startRecording(),this.audioIntervalId=window.setInterval(()=>this.sendBufferedAudio(),250)}catch(e){console.error("Error accessing microphone:",e)}})}stopAudioStreaming(){clearInterval(this.audioIntervalId),this.audioIntervalId=void 0,this.audioRecordingService.stopRecording()}sendBufferedAudio(){let e=this.audioRecordingService.getCombinedAudioBuffer();if(!e)return;let A={blob:{mime_type:"audio/pcm",data:e}};this.webSocketService.sendMessage(A),this.audioRecordingService.cleanAudioBuffer()}startVideoChat(a){return re(this,arguments,function*({appName:e,userId:A,sessionId:t,videoContainer:n,flags:o}){this.webSocketService.connect(this.getWsUrl(e,A,t,o)),yield this.startAudioStreaming(),yield this.startVideoStreaming(n)})}stopVideoChat(e){this.stopAudioStreaming(),this.stopVideoStreaming(e),this.webSocketService.closeConnection()}startVideoStreaming(e){return re(this,null,function*(){try{yield this.videoService.startRecording(e),this.videoIntervalId=window.setInterval(()=>re(this,null,function*(){return yield this.sendCapturedFrame()}),1e3)}catch(A){console.error("Error accessing camera:",A)}})}sendCapturedFrame(){return re(this,null,function*(){let e=yield this.videoService.getCapturedFrame();if(!e)return;let A={blob:{mime_type:"image/jpeg",data:e}};this.webSocketService.sendMessage(A)})}stopVideoStreaming(e){clearInterval(this.videoIntervalId),this.videoIntervalId=void 0,this.videoService.stopRecording(e)}onStreamClose(){return this.webSocketService.onCloseReason()}closeStream(){this.webSocketService.closeConnection()}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var yD=class i{stc(e,A){let t=this.hashCode(e),n=Math.abs(t%360),o=60+Math.abs((t>>8)%40),a;return A==="dark"?a=15+Math.abs((t>>16)%30):a=40+Math.abs((t>>16)%30),this.hslToHex(n,o,a)}hashCode(e){let A=0;for(let t=0,n=e.length;t{let r=(a+e/30)%12,s=t-n*Math.max(Math.min(r-3,9-r,1),-1);return Math.round(255*s).toString(16).padStart(2,"0")};return`#${o(0)}${o(8)}${o(4)}ff`}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var DD=class i{THEME_STORAGE_KEY="adk-theme-preference";currentTheme=mA(this.getInitialTheme());constructor(){Fn(()=>{this.applyTheme(this.currentTheme())})}getInitialTheme(){let e=window.localStorage.getItem(this.THEME_STORAGE_KEY);return e==="light"||e==="dark"?e:"dark"}applyTheme(e){let A=document.documentElement;A.classList.remove("light-theme","dark-theme"),A.classList.add(`${e}-theme`),A.style.colorScheme=e,window.localStorage.setItem(this.THEME_STORAGE_KEY,e),this.updatePrismTheme(e)}updatePrismTheme(e){let A="prism-theme-style",t=document.getElementById(A);t||(t=document.createElement("link"),t.id=A,t.rel="stylesheet",document.head.appendChild(t)),t.href=e==="light"?"prism-light.css":"prism-dark.css"}toggleTheme(){this.currentTheme.update(e=>e==="light"?"dark":"light")}setTheme(e){this.currentTheme.set(e)}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var vD=class i{selectedTraceRowSource=new gi(void 0);selectedTraceRow$=this.selectedTraceRowSource.asObservable();eventDataSource=new gi(void 0);eventData$=this.eventDataSource.asObservable();messagesSource=new gi([]);messages$=this.messagesSource.asObservable();selectedRow(e){this.selectedTraceRowSource.next(e)}setEventData(e){this.eventDataSource.next(e)}setMessages(e){this.messagesSource.next(e)}resetTraceService(){this.selectedTraceRowSource.next(void 0),this.eventDataSource.next(void 0),this.messagesSource.next([])}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var bD=class i{_isSessionLoading=new gi(!1);_isSessionListLoading=new gi(!1);_isEventRequestResponseLoading=new gi(!1);_isMessagesLoading=new gi(!1);_newMessagesLoadedResponse=new ne;_newMessagesLoadingFailedResponse=new ne;featureFlagService=w(Nr);isSessionLoading(){return this._isSessionLoading.pipe(WE(this.featureFlagService.isLoadingAnimationsEnabled()),Se(([e,A])=>e&&A),Js({bufferSize:1,refCount:!0}))}setIsSessionLoading(e){this._isSessionLoading.next(e)}isSessionListLoading(){return this._isSessionListLoading.pipe(WE(this.featureFlagService.isLoadingAnimationsEnabled()),Se(([e,A])=>e&&A),Js({bufferSize:1,refCount:!0}))}setIsSessionListLoading(e){this._isSessionListLoading.next(e)}isEventRequestResponseLoading(){return this._isEventRequestResponseLoading.pipe(WE(this.featureFlagService.isLoadingAnimationsEnabled()),Se(([e,A])=>e&&A),Js({bufferSize:1,refCount:!0}))}setIsEventRequestResponseLoading(e){this._isEventRequestResponseLoading.next(e)}setIsMessagesLoading(e){this._isMessagesLoading.next(e)}isMessagesLoading(){return this._isMessagesLoading.pipe(WE(this.featureFlagService.isLoadingAnimationsEnabled()),Se(([e,A])=>e&&A),Js({bufferSize:1,refCount:!0}))}lazyLoadMessages(e,A,t){throw new Error("Not implemented")}onNewMessagesLoaded(){return this._newMessagesLoadedResponse}onNewMessagesLoadingFailed(){return this._newMessagesLoadingFailedResponse}static \u0275fac=function(A){return new(A||i)};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var MD=class i{mediaRecorder;stream;renderer;videoElement;videoBuffer=[];constructor(e){this.renderer=e.createRenderer(null,null)}createVideoElement(e){e?.nativeElement&&(this.clearVideoElement(e),this.videoElement=this.renderer.createElement("video"),this.renderer.setAttribute(this.videoElement,"width","400"),this.renderer.setAttribute(this.videoElement,"height","300"),this.renderer.setAttribute(this.videoElement,"autoplay","true"),this.renderer.setAttribute(this.videoElement,"muted","true"),this.renderer.appendChild(e.nativeElement,this.videoElement))}startRecording(e){return re(this,null,function*(){this.createVideoElement(e);try{this.stream=yield navigator.mediaDevices.getUserMedia({video:!0}),this.videoElement&&(this.videoElement.srcObject=this.stream),this.mediaRecorder=new MediaRecorder(this.stream,{mimeType:"video/webm"}),this.mediaRecorder.start(1e3)}catch(A){console.error("Error accessing camera/microphone:",A)}})}getCapturedFrame(){return re(this,null,function*(){try{let e=yield this.captureFrame();return this.blobToUint8Array(e)}catch(e){console.error("Error capturing frame:",e);return}})}blobToUint8Array(e){return re(this,null,function*(){let A=yield e.arrayBuffer();return new Uint8Array(A)})}captureFrame(){return re(this,null,function*(){return new Promise((e,A)=>{try{if(!this.videoElement){A(new Error("Video element not available"));return}let t=document.createElement("canvas");t.width=this.videoElement.videoWidth,t.height=this.videoElement.videoHeight;let n=t.getContext("2d");if(!n){A(new Error("Canvas context not supported"));return}n.drawImage(this.videoElement,0,0,t.width,t.height),t.toBlob(o=>{o?e(o):A(new Error("Failed to create image blob"))},"image/png")}catch(t){A(t)}})})}stopRecording(e){this.mediaRecorder&&this.mediaRecorder.stop(),this.stream&&this.stream.getTracks().forEach(A=>A.stop()),this.clearVideoElement(e)}clearVideoElement(e){let A=e.nativeElement.querySelector("video");A&&this.renderer.removeChild(e.nativeElement,A)}static \u0275fac=function(A){return new(A||i)(Wo(zr))};static \u0275prov=jA({token:i,factory:i.\u0275fac,providedIn:"root"})};var I_A={url:"",deserializer:i=>JSON.parse(i.data),serializer:i=>JSON.stringify(i)},B_A="WebSocketSubject.error must be called with an object with an error code, and an optional reason: { code: number, reason: string }",Hp=class i extends BN{constructor(e,A){if(super(),this._socket=null,e instanceof Fi)this.destination=A,this.source=e;else{let t=this._config=Object.assign({},I_A);if(this._output=new ne,typeof e=="string")t.url=e;else for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);if(!t.WebSocketCtor&&WebSocket)t.WebSocketCtor=WebSocket;else if(!t.WebSocketCtor)throw new Error("no WebSocket constructor can be found");this.destination=new _g}}lift(e){let A=new i(this._config,this.destination);return A.operator=e,A.source=this,A}_resetState(){this._socket=null,this.source||(this.destination=new _g),this._output=new ne}multiplex(e,A,t){let n=this;return new Fi(o=>{try{n.next(e())}catch(r){o.error(r)}let a=n.subscribe({next:r=>{try{t(r)&&o.next(r)}catch(s){o.error(s)}},error:r=>o.error(r),complete:()=>o.complete()});return()=>{try{n.next(A())}catch(r){o.error(r)}a.unsubscribe()}})}_connectSocket(){let{WebSocketCtor:e,protocol:A,url:t,binaryType:n}=this._config,o=this._output,a=null;try{a=A?new e(t,A):new e(t),this._socket=a,n&&(this._socket.binaryType=n)}catch(s){o.error(s);return}let r=new Oo(()=>{this._socket=null,a&&a.readyState===1&&a.close()});a.onopen=s=>{let{_socket:l}=this;if(!l){a.close(),this._resetState();return}let{openObserver:g}=this._config;g&&g.next(s);let C=this.destination;this.destination=CN.create(d=>{if(a.readyState===1)try{let{serializer:B}=this._config;a.send(B(d))}catch(B){this.destination.error(B)}},d=>{let{closingObserver:B}=this._config;B&&B.next(void 0),d&&d.code?a.close(d.code,d.reason):o.error(new TypeError(B_A)),this._resetState()},()=>{let{closingObserver:d}=this._config;d&&d.next(void 0),a.close(),this._resetState()}),C&&C instanceof _g&&r.add(C.subscribe(this.destination))},a.onerror=s=>{this._resetState(),o.error(s)},a.onclose=s=>{a===this._socket&&this._resetState();let{closeObserver:l}=this._config;l&&l.next(s),s.wasClean?o.complete():o.error(s)},a.onmessage=s=>{try{let{deserializer:l}=this._config;o.next(l(s))}catch(l){o.error(l)}}}_subscribe(e){let{source:A}=this;return A?A.subscribe(e):(this._socket||this._connectSocket(),this._output.subscribe(e),e.add(()=>{let{_socket:t}=this;this._output.observers.length===0&&(t&&(t.readyState===1||t.readyState===0)&&t.close(),this._resetState())}),e)}unsubscribe(){let{_socket:e}=this;e&&(e.readyState===1||e.readyState===0)&&e.close(),this._resetState(),super.unsubscribe()}};var SD=class i{audioPlayingService=w(fB);socket$;messages$=new gi("");audioBuffer=[];audioIntervalId=null;closeReasonSubject=new ne;connect(e){this.socket$=new Hp({url:e,serializer:A=>JSON.stringify(A),deserializer:A=>A.data,closeObserver:{next:A=>{this.emitWsCloseReason(A.reason)}}}),this.socket$.subscribe(A=>{this.handleIncomingEvent(A)},A=>{console.error("WebSocket error:",A)}),this.audioIntervalId=setInterval(()=>this.playIncomingAudio(),250)}playIncomingAudio(){this.audioPlayingService.playAudio(this.audioBuffer),this.audioBuffer=[]}sendMessage(e){if(e.blob.data=this.arrayBufferToBase64(e.blob.data.buffer),!this.socket$||this.socket$.closed){console.error("WebSocket is not open.");return}this.socket$.next(e)}closeConnection(){clearInterval(this.audioIntervalId),this.audioIntervalId=null,this.socket$&&this.socket$.complete()}getMessages(){return this.messages$.asObservable()}arrayBufferToBase64(e){let A="",t=new Uint8Array(e),n=t.byteLength;for(let o=0;oi.json()).then(i=>{window.runtimeConfig=i,PN(TE,{providers:[mN(jN,fn,VN,oD,Ws,Za,qi),{provide:tl,useClass:mD},{provide:el,useClass:dE},{provide:iy,useClass:hD},{provide:mB,useClass:SD},{provide:Dm,useValue:"./assets/audio-processor.js"},{provide:pB,useClass:cD},{provide:fB,useClass:gD},{provide:uD,useClass:MD},{provide:ym,useClass:wD},{provide:fm,useClass:ID},{provide:A0,useClass:dD},{provide:EB,useClass:lD},{provide:QB,useClass:CD},{provide:ng,useClass:vD},{provide:Nr,useClass:BD},{provide:uB,useClass:QD},{provide:g2,useClass:yD},{provide:Qs,useClass:fD},{provide:mm,useClass:pD},{provide:WN,useValue:$N},{provide:XN,useValue:X$},{provide:g1,useValue:B1},...i.logo?[{provide:wB,useValue:rD}]:[],{provide:$c,useClass:sD},{provide:My,useValue:Sc},oK(),GQ(),{provide:vm,useClass:Gc},{provide:ag,useClass:bD},{provide:og,useClass:DD}]}).catch(e=>console.error(e))}); diff --git a/src/google/adk/cli/browser/main-56POKOKQ.js b/src/google/adk/cli/browser/main-56POKOKQ.js new file mode 100644 index 0000000000..f318e5bd78 --- /dev/null +++ b/src/google/adk/cli/browser/main-56POKOKQ.js @@ -0,0 +1,4260 @@ +import{a as Ez}from"./chunk-PDRDFWTH.js";import{A as tz,C as rI,b as Vf,c as qJ,e as oQ,g as Yi,h as ZJ,j as i0,m as XJ,p as sn,q as Oi,s as $J,u as aQ,v as ez,x as W7,z as Az}from"./chunk-UFYCV57Y.js";import{a as Qz,b as pz}from"./chunk-ZMOC4H7T.js";import{a as bz}from"./chunk-QL2SWWYM.js";import"./chunk-VZBWMYZM.js";import"./chunk-FDMPUWDP.js";import"./chunk-NRMNZ7EH.js";import"./chunk-VWUZC4UJ.js";import"./chunk-3TW5HJSC.js";import"./chunk-PRKFGJVH.js";import{a as vz,c as Dz}from"./chunk-4V3PIBXT.js";import{A as nM,C as fz,D as CB,E as wz,F as yz,s as mz}from"./chunk-UKZIEWH5.js";import"./chunk-GP6TCC26.js";import{A as gB,B as Iz,C as rQ,E as Bz,N as hz,P as uz,ba as sQ,ca as Xf,g as nz,h as oz,j as az,k as qf,l as AM,m as Zf,n as rz,o as sz,q as Wf,t as tM,u as lz,v as cz,w as gz,x as Cz,y as iM,z as dz}from"./chunk-37QI3DOO.js";import{a as Al,b as X7,d as $7,e as iz,g as EA,i as Ar,j as eM}from"./chunk-JRNAXTJ7.js";import{F as WJ,H as tn,c as Ta}from"./chunk-F57K64GP.js";import"./chunk-URMDZFG4.js";import{$ as iQ,$a as De,$b as ne,$c as GJ,A as Zg,Aa as Ln,Ab as le,Ac as kJ,B as cd,Ba as ai,Bb as Gn,Bc as _i,C as Wg,Ca as Gi,Cb as $n,Cc as MA,D as Nf,Da as dA,Db as eo,Dc as Ho,E as Zi,Ea as Vc,Eb as Ul,Ec as _J,F as gJ,Fa as Gf,Fb as Tl,Fc as nC,G as pt,Ga as Kf,Gb as Bn,Gc as xt,H as CJ,Ha as iI,Hb as ae,Hc as aI,I as tI,Ia as QJ,Ib as Ra,Ic as mA,J as ca,Ja as pJ,Jb as U,Jc as Dn,K as AQ,Ka as qc,Kb as rB,Kc as xJ,L as Ws,La as Xg,Lb as p,Lc as jf,M as No,Ma as wo,Mb as Yt,Mc as RJ,N as tQ,Na as Zc,Nb as tt,Nc as el,O as jc,Oa as oB,Ob as ga,Oc as V7,P as Ff,Pa as Q,Pb as $t,Pc as NJ,Q as ao,Qa as Uf,Qb as cA,Qc as q7,R as z7,Ra as ro,Rb as gA,Rc as FJ,S as gd,Sa as yo,Sb as Pf,Sc as e0,T as Cd,Ta as Wr,Tb as Bs,Tc as LJ,U as Xs,Ua as rn,Ub as Rr,Uc as lc,V as Kl,Va as dt,Vb as Ei,Vc as A0,W as Yn,Wa as Tf,Wb as vt,Wc as sB,X as ki,Xa as Yo,Xb as _e,Xc as cc,Y as Mt,Ya as H7,Yb as yJ,Yc as lB,Z as dJ,Za as mJ,Zb as Ao,Zc as t0,_ as yi,_a as Of,_b as v,_c as hs,a as zo,aa as Kt,ab as at,ac as pA,ad as KJ,b as aJ,ba as IJ,bb as We,bc as Va,bd as cB,c as rJ,ca as er,cb as P7,cc as Ni,cd as Ci,d as Li,da as Ze,db as Jf,dc as vi,dd as oC,e as sJ,ea as ot,eb as _t,ec as Fi,ed as Z7,f as rA,fa as BJ,fb as Nt,fc as so,fd as UJ,g as lJ,ga as Me,gb as zf,gc as lo,gd as TJ,h as di,ha as Xo,hb as fJ,hc as Ti,hd as OJ,i as Pc,ia as w,ib as nI,ic as dd,id as Nr,j as O7,ja as hJ,jb as Yf,jc as nQ,jd as JJ,k as kf,ka as Zr,kb as j7,kc as vJ,kd as zJ,l as tB,la as xr,lb as wJ,lc as yt,ld as Bd,m as mr,ma as uJ,mb as AC,mc as $g,md as YJ,n as eQ,na as L,nb as Hf,nc as sc,nd as HJ,o as iB,oa as G,ob as aA,oc as tC,od as PJ,p as qr,pa as mt,pb as aB,pc as Dt,q as sA,qa as fr,qb as T,qc as Ut,r as _f,ra as Rt,rb as oI,rc as iC,rd as jJ,s as nB,sa as Ii,sb as O,sc as Id,sd as VJ,t as cJ,ta as wr,tb as ja,tc as DJ,u as xf,ua as EJ,ub as ri,uc as bJ,v as xA,va as Le,vb as RA,vc as Ma,w as _r,wa as At,wb as NA,wc as DA,x as qg,xa as Lf,xb as H,xc as MJ,y as J7,ya as Y7,yb as I,yc as SJ,z as Rf,za as fe,zb as h,zc as $s}from"./chunk-2SRK2U7X.js";import{a as Y,b as Ye,c as ld,e as Mf,f as eC,h as Sf,j as nA,k as hA}from"./chunk-RMXJBC7V.js";var yq=Mf(pk=>{"use strict";var wq={b:"\b",f:"\f",n:` +`,r:"\r",t:" ",'"':'"',"/":"/","\\":"\\"},nue=97;pk.parse=function(t,A,e){var i={},n=0,o=0,a=0,r=e&&e.bigint&&typeof BigInt<"u";return{data:s("",!0),pointers:i};function s(j,X){l();var Ae;S(j,"value");var W=u();switch(W){case"t":E("rue"),Ae=!0;break;case"f":E("alse"),Ae=!1;break;case"n":E("ull"),Ae=null;break;case'"':Ae=c();break;case"[":Ae=d(j);break;case"{":Ae=B(j);break;default:m(),"-0123456789".indexOf(W)>=0?Ae=C():x()}return S(j,"valueEnd"),l(),X&&aNumber.MAX_SAFE_INTEGER||Ae="a"&&Ae<="f"?X+=Ae.charCodeAt()-nue+10:Ae>="0"&&Ae<="9"?X+=+Ae:F()}return String.fromCharCode(X)}function D(){for(var j="";t[a]>="0"&&t[a]<="9";)j+=u();if(j.length)return j;P(),x()}function S(j,X){k(j,X,b())}function k(j,X,Ae){i[j]=i[j]||{},i[j][X]=Ae}function b(){return{line:n,column:o,pos:a}}function x(){throw new SyntaxError("Unexpected token "+t[a]+" in JSON at position "+a)}function F(){m(),x()}function P(){if(a>=t.length)throw new SyntaxError("Unexpected end of JSON input")}};pk.stringify=function(t,A,e){if(!X8(t))return;var i=0,n,o,a=typeof e=="object"?e.space:e;switch(typeof a){case"number":var r=a>10?10:a<0?0:Math.floor(a);a=r&&k(r," "),n=r,o=r;break;case"string":a=a.slice(0,10),n=0,o=0;for(var s=0;s=0}var aue=/"|\\/g,rue=/[\b]/g,sue=/\f/g,lue=/\n/g,cue=/\r/g,gue=/\t/g;function $8(t){return t=t.replace(aue,"\\$&").replace(sue,"\\f").replace(rue,"\\b").replace(lue,"\\n").replace(cue,"\\r").replace(gue,"\\t"),'"'+t+'"'}var Cue=/~/g,due=/\//g;function Qk(t){return t.replace(Cue,"~0").replace(due,"~1")}});var lZ=Mf((K0A,sZ)=>{"use strict";var rZ=function(t,A){var e,i,n=1,o=0,a=0,r=String.alphabet;function s(l,c,C){if(C){for(e=c;C=s(l,e),C<76&&C>65;)++e;return+l.slice(c-1,e)}return C=r&&r.indexOf(l.charAt(c)),C>-1?C+76:(C=l.charCodeAt(c)||0,C<45||C>127?C:C<46?65:C<48?C-1:C<58?C+18:C<65?C-11:C<91?C+11:C<97?C-37:C<123?C+5:C-63)}if((t+="")!=(A+="")){for(;n;)if(i=s(t,o++),n=s(A,a++),i<76&&n<76&&i>66&&n>66&&(i=s(t,o,o),n=s(A,a,o=e),a=e),i!=n)return i{"use strict";(function(t){"use strict";function A(V){return V!==null?Object.prototype.toString.call(V)==="[object Array]":!1}function e(V){return V!==null?Object.prototype.toString.call(V)==="[object Object]":!1}function i(V,$){if(V===$)return!0;var ie=Object.prototype.toString.call(V);if(ie!==Object.prototype.toString.call($))return!1;if(A(V)===!0){if(V.length!==$.length)return!1;for(var oe=0;oe",9:"Array"},S="EOF",k="UnquotedIdentifier",b="QuotedIdentifier",x="Rbracket",F="Rparen",P="Comma",j="Colon",X="Rbrace",Ae="Number",W="Current",Ce="Expref",we="Pipe",Be="Or",Ee="And",Ne="EQ",de="GT",Ie="LT",xe="GTE",Xe="LTE",fA="NE",Pe="Flatten",be="Star",qe="Filter",st="Dot",it="Not",He="Lbrace",he="Lbracket",tA="Lparen",pe="Literal",oA={".":st,"*":be,",":P,":":j,"{":He,"}":X,"]":x,"(":tA,")":F,"@":W},Fe={"<":!0,">":!0,"=":!0,"!":!0},OA={" ":!0," ":!0,"\n":!0};function ze(V){return V>="a"&&V<="z"||V>="A"&&V<="Z"||V==="_"}function ye(V){return V>="0"&&V<="9"||V==="-"}function qt(V){return V>="a"&&V<="z"||V>="A"&&V<="Z"||V>="0"&&V<="9"||V==="_"}function St(){}St.prototype={tokenize:function(V){var $=[];this._current=0;for(var ie,oe,Te;this._current")return V[this._current]==="="?(this._current++,{type:xe,value:">=",start:$}):{type:de,value:">",start:$};if(ie==="="&&V[this._current]==="=")return this._current++,{type:Ne,value:"==",start:$}},_consumeLiteral:function(V){this._current++;for(var $=this._current,ie=V.length,oe;V[this._current]!=="`"&&this._current=0)return!0;if(ie.indexOf(V)>=0)return!0;if(oe.indexOf(V[0])>=0)try{return JSON.parse(V),!0}catch(Te){return!1}else return!1}};var yA={};yA[S]=0,yA[k]=0,yA[b]=0,yA[x]=0,yA[F]=0,yA[P]=0,yA[X]=0,yA[Ae]=0,yA[W]=0,yA[Ce]=0,yA[we]=1,yA[Be]=2,yA[Ee]=3,yA[Ne]=5,yA[de]=5,yA[Ie]=5,yA[xe]=5,yA[Xe]=5,yA[fA]=5,yA[Pe]=9,yA[be]=20,yA[qe]=21,yA[st]=40,yA[it]=45,yA[He]=50,yA[he]=55,yA[tA]=60;function ei(){}ei.prototype={parse:function(V){this._loadTokens(V),this.index=0;var $=this.expression(0);if(this._lookahead(0)!==S){var ie=this._lookaheadToken(0),oe=new Error("Unexpected token type: "+ie.type+", value: "+ie.value);throw oe.name="ParserError",oe}return $},_loadTokens:function(V){var $=new St,ie=$.tokenize(V);ie.push({type:S,value:"",start:V.length}),this.tokens=ie},expression:function(V){var $=this._lookaheadToken(0);this._advance();for(var ie=this.nud($),oe=this._lookahead(0);V=0)return this.expression(V);if($===he)return this._match(he),this._parseMultiselectList();if($===He)return this._match(He),this._parseMultiselectHash()},_parseProjectionRHS:function(V){var $;if(yA[this._lookahead(0)]<10)$={type:"Identity"};else if(this._lookahead(0)===he)$=this.expression(V);else if(this._lookahead(0)===qe)$=this.expression(V);else if(this._lookahead(0)===st)this._match(st),$=this._parseDotRHS(V);else{var ie=this._lookaheadToken(0),oe=new Error("Sytanx error, unexpected token: "+ie.value+"("+ie.type+")");throw oe.name="ParserError",oe}return $},_parseMultiselectList:function(){for(var V=[];this._lookahead(0)!==x;){var $=this.expression(0);if(V.push($),this._lookahead(0)===P&&(this._match(P),this._lookahead(0)===x))throw new Error("Unexpected token Rbracket")}return this._match(x),{type:"MultiSelectList",children:V}},_parseMultiselectHash:function(){for(var V=[],$=[k,b],ie,oe,Te,QA;;){if(ie=this._lookaheadToken(0),$.indexOf(ie.type)<0)throw new Error("Expecting an identifier token, got: "+ie.type);if(oe=ie.value,this._advance(),this._match(j),Te=this.expression(0),QA={type:"KeyValuePair",name:oe,value:Te},V.push(QA),this._lookahead(0)===P)this._match(P);else if(this._lookahead(0)===X){this._match(X);break}}return{type:"MultiSelectHash",children:V}}};function WA(V){this.runtime=V}WA.prototype={search:function(V,$){return this.visit(V,$)},visit:function(V,$){var ie,oe,Te,QA,vA,Ke,Je,bt,Ct,XA;switch(V.type){case"Field":return $!==null&&e($)?(Ke=$[V.name],Ke===void 0?null:Ke):null;case"Subexpression":for(Te=this.visit(V.children[0],$),XA=1;XA0)for(XA=kn;XAqA;XA+=En)Te.push($[XA]);return Te;case"Projection":var Ui=this.visit(V.children[0],$);if(!A(Ui))return null;for(Ct=[],XA=0;XAvA;break;case xe:Te=QA>=vA;break;case Ie:Te=QA=V&&($=ie<0?V-1:V),$}};function et(V){this._interpreter=V,this.functionTable={abs:{_func:this._functionAbs,_signature:[{types:[s]}]},avg:{_func:this._functionAvg,_signature:[{types:[m]}]},ceil:{_func:this._functionCeil,_signature:[{types:[s]}]},contains:{_func:this._functionContains,_signature:[{types:[c,C]},{types:[l]}]},ends_with:{_func:this._functionEndsWith,_signature:[{types:[c]},{types:[c]}]},floor:{_func:this._functionFloor,_signature:[{types:[s]}]},length:{_func:this._functionLength,_signature:[{types:[c,C,d]}]},map:{_func:this._functionMap,_signature:[{types:[E]},{types:[C]}]},max:{_func:this._functionMax,_signature:[{types:[m,f]}]},merge:{_func:this._functionMerge,_signature:[{types:[d],variadic:!0}]},max_by:{_func:this._functionMaxBy,_signature:[{types:[C]},{types:[E]}]},sum:{_func:this._functionSum,_signature:[{types:[m]}]},starts_with:{_func:this._functionStartsWith,_signature:[{types:[c]},{types:[c]}]},min:{_func:this._functionMin,_signature:[{types:[m,f]}]},min_by:{_func:this._functionMinBy,_signature:[{types:[C]},{types:[E]}]},type:{_func:this._functionType,_signature:[{types:[l]}]},keys:{_func:this._functionKeys,_signature:[{types:[d]}]},values:{_func:this._functionValues,_signature:[{types:[d]}]},sort:{_func:this._functionSort,_signature:[{types:[f,m]}]},sort_by:{_func:this._functionSortBy,_signature:[{types:[C]},{types:[E]}]},join:{_func:this._functionJoin,_signature:[{types:[c]},{types:[f]}]},reverse:{_func:this._functionReverse,_signature:[{types:[c,C]}]},to_array:{_func:this._functionToArray,_signature:[{types:[l]}]},to_string:{_func:this._functionToString,_signature:[{types:[l]}]},to_number:{_func:this._functionToNumber,_signature:[{types:[l]}]},not_null:{_func:this._functionNotNull,_signature:[{types:[l],variadic:!0}]}}}et.prototype={callFunction:function(V,$){var ie=this.functionTable[V];if(ie===void 0)throw new Error("Unknown function: "+V+"()");return this._validateArgs(V,$,ie._signature),ie._func.call(this,$)},_validateArgs:function(V,$,ie){var oe;if(ie[ie.length-1].variadic){if($.length=0;Te--)oe+=ie[Te];return oe}else{var QA=V[0].slice(0);return QA.reverse(),QA}},_functionAbs:function(V){return Math.abs(V[0])},_functionCeil:function(V){return Math.ceil(V[0])},_functionAvg:function(V){for(var $=0,ie=V[0],oe=0;oe=0},_functionFloor:function(V){return Math.floor(V[0])},_functionLength:function(V){return e(V[0])?Object.keys(V[0]).length:V[0].length},_functionMap:function(V){for(var $=[],ie=this._interpreter,oe=V[0],Te=V[1],QA=0;QA0){var $=this._getTypeName(V[0][0]);if($===s)return Math.max.apply(Math,V[0]);for(var ie=V[0],oe=ie[0],Te=1;Te0){var $=this._getTypeName(V[0][0]);if($===s)return Math.min.apply(Math,V[0]);for(var ie=V[0],oe=ie[0],Te=1;TeZA?1:XATe&&(Te=vA,QA=ie[Ke]);return QA},_functionMinBy:function(V){for(var $=V[1],ie=V[0],oe=this.createKeyFunction($,[s,c]),Te=1/0,QA,vA,Ke=0;Ke"u"?aw.jmespath={}:aw)});var Uae=Mf((bhA,R5)=>{"use strict";var WSe=typeof window<"u"?window:typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope?self:{};var Ot=(function(t){var A=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,e=0,i={},n={manual:t.Prism&&t.Prism.manual,disableWorkerMessageHandler:t.Prism&&t.Prism.disableWorkerMessageHandler,util:{encode:function u(m){return m instanceof o?new o(m.type,u(m.content),m.alias):Array.isArray(m)?m.map(u):m.replace(/&/g,"&").replace(/"u")return null;if(document.currentScript&&document.currentScript.tagName==="SCRIPT")return document.currentScript;try{throw new Error}catch(D){var u=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(D.stack)||[])[1];if(u){var m=document.getElementsByTagName("script");for(var f in m)if(m[f].src==u)return m[f]}return null}},isActive:function(u,m,f){for(var D="no-"+m;u;){var S=u.classList;if(S.contains(m))return!0;if(S.contains(D))return!1;u=u.parentElement}return!!f}},languages:{plain:i,plaintext:i,text:i,txt:i,extend:function(u,m){var f=n.util.clone(n.languages[u]);for(var D in m)f[D]=m[D];return f},insertBefore:function(u,m,f,D){D=D||n.languages;var S=D[u],k={};for(var b in S)if(S.hasOwnProperty(b)){if(b==m)for(var x in f)f.hasOwnProperty(x)&&(k[x]=f[x]);f.hasOwnProperty(b)||(k[b]=S[b])}var F=D[u];return D[u]=k,n.languages.DFS(n.languages,function(P,j){j===F&&P!=u&&(this[P]=k)}),k},DFS:function u(m,f,D,S){S=S||{};var k=n.util.objId;for(var b in m)if(m.hasOwnProperty(b)){f.call(m,b,m[b],D||b);var x=m[b],F=n.util.type(x);F==="Object"&&!S[k(x)]?(S[k(x)]=!0,u(x,f,null,S)):F==="Array"&&!S[k(x)]&&(S[k(x)]=!0,u(x,f,b,S))}}},plugins:{},highlightAll:function(u,m){n.highlightAllUnder(document,u,m)},highlightAllUnder:function(u,m,f){var D={callback:f,container:u,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};n.hooks.run("before-highlightall",D),D.elements=Array.prototype.slice.apply(D.container.querySelectorAll(D.selector)),n.hooks.run("before-all-elements-highlight",D);for(var S=0,k;k=D.elements[S++];)n.highlightElement(k,m===!0,D.callback)},highlightElement:function(u,m,f){var D=n.util.getLanguage(u),S=n.languages[D];n.util.setLanguage(u,D);var k=u.parentElement;k&&k.nodeName.toLowerCase()==="pre"&&n.util.setLanguage(k,D);var b=u.textContent,x={element:u,language:D,grammar:S,code:b};function F(j){x.highlightedCode=j,n.hooks.run("before-insert",x),x.element.innerHTML=x.highlightedCode,n.hooks.run("after-highlight",x),n.hooks.run("complete",x),f&&f.call(x.element)}if(n.hooks.run("before-sanity-check",x),k=x.element.parentElement,k&&k.nodeName.toLowerCase()==="pre"&&!k.hasAttribute("tabindex")&&k.setAttribute("tabindex","0"),!x.code){n.hooks.run("complete",x),f&&f.call(x.element);return}if(n.hooks.run("before-highlight",x),!x.grammar){F(n.util.encode(x.code));return}if(m&&t.Worker){var P=new Worker(n.filename);P.onmessage=function(j){F(j.data)},P.postMessage(JSON.stringify({language:x.language,code:x.code,immediateClose:!0}))}else F(n.highlight(x.code,x.grammar,x.language))},highlight:function(u,m,f){var D={code:u,grammar:m,language:f};if(n.hooks.run("before-tokenize",D),!D.grammar)throw new Error('The language "'+D.language+'" has no grammar.');return D.tokens=n.tokenize(D.code,D.grammar),n.hooks.run("after-tokenize",D),o.stringify(n.util.encode(D.tokens),D.language)},tokenize:function(u,m){var f=m.rest;if(f){for(var D in f)m[D]=f[D];delete m.rest}var S=new s;return l(S,S.head,u),r(u,S,m,S.head,0),C(S)},hooks:{all:{},add:function(u,m){var f=n.hooks.all;f[u]=f[u]||[],f[u].push(m)},run:function(u,m){var f=n.hooks.all[u];if(!(!f||!f.length))for(var D=0,S;S=f[D++];)S(m)}},Token:o};t.Prism=n;function o(u,m,f,D){this.type=u,this.content=m,this.alias=f,this.length=(D||"").length|0}o.stringify=function u(m,f){if(typeof m=="string")return m;if(Array.isArray(m)){var D="";return m.forEach(function(F){D+=u(F,f)}),D}var S={type:m.type,content:u(m.content,f),tag:"span",classes:["token",m.type],attributes:{},language:f},k=m.alias;k&&(Array.isArray(k)?Array.prototype.push.apply(S.classes,k):S.classes.push(k)),n.hooks.run("wrap",S);var b="";for(var x in S.attributes)b+=" "+x+'="'+(S.attributes[x]||"").replace(/"/g,""")+'"';return"<"+S.tag+' class="'+S.classes.join(" ")+'"'+b+">"+S.content+""};function a(u,m,f,D){u.lastIndex=m;var S=u.exec(f);if(S&&D&&S[1]){var k=S[1].length;S.index+=k,S[0]=S[0].slice(k)}return S}function r(u,m,f,D,S,k){for(var b in f)if(!(!f.hasOwnProperty(b)||!f[b])){var x=f[b];x=Array.isArray(x)?x:[x];for(var F=0;F=k.reach);Ee+=Be.value.length,Be=Be.next){var Ne=Be.value;if(m.length>u.length)return;if(!(Ne instanceof o)){var de=1,Ie;if(Ae){if(Ie=a(we,Ee,u,X),!Ie||Ie.index>=u.length)break;var Pe=Ie.index,xe=Ie.index+Ie[0].length,Xe=Ee;for(Xe+=Be.value.length;Pe>=Xe;)Be=Be.next,Xe+=Be.value.length;if(Xe-=Be.value.length,Ee=Xe,Be.value instanceof o)continue;for(var fA=Be;fA!==m.tail&&(Xek.reach&&(k.reach=it);var He=Be.prev;qe&&(He=l(m,He,qe),Ee+=qe.length),c(m,He,de);var he=new o(b,j?n.tokenize(be,j):be,W,be);if(Be=l(m,He,he),st&&l(m,Be,st),de>1){var tA={cause:b+","+F,reach:it};r(u,m,f,Be.prev,Ee,tA),k&&tA.reach>k.reach&&(k.reach=tA.reach)}}}}}}function s(){var u={value:null,prev:null,next:null},m={value:null,prev:u,next:null};u.next=m,this.head=u,this.tail=m,this.length=0}function l(u,m,f){var D=m.next,S={value:f,prev:m,next:D};return m.next=S,D.prev=S,u.length++,S}function c(u,m,f){for(var D=m.next,S=0;S/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]};Ot.languages.markup.tag.inside["attr-value"].inside.entity=Ot.languages.markup.entity;Ot.languages.markup.doctype.inside["internal-subset"].inside=Ot.languages.markup;Ot.hooks.add("wrap",function(t){t.type==="entity"&&(t.attributes.title=t.content.replace(/&/,"&"))});Object.defineProperty(Ot.languages.markup.tag,"addInlined",{value:function(A,e){var i={};i["language-"+e]={pattern:/(^$)/i,lookbehind:!0,inside:Ot.languages[e]},i.cdata=/^$/i;var n={"included-cdata":{pattern://i,inside:i}};n["language-"+e]={pattern:/[\s\S]+/,inside:Ot.languages[e]};var o={};o[A]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,function(){return A}),"i"),lookbehind:!0,greedy:!0,inside:n},Ot.languages.insertBefore("markup","cdata",o)}});Object.defineProperty(Ot.languages.markup.tag,"addAttribute",{value:function(t,A){Ot.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+t+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[A,"language-"+A],inside:Ot.languages[A]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}});Ot.languages.html=Ot.languages.markup;Ot.languages.mathml=Ot.languages.markup;Ot.languages.svg=Ot.languages.markup;Ot.languages.xml=Ot.languages.extend("markup",{});Ot.languages.ssml=Ot.languages.xml;Ot.languages.atom=Ot.languages.xml;Ot.languages.rss=Ot.languages.xml;(function(t){var A=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;t.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+A.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+A.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+A.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+A.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:A,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},t.languages.css.atrule.inside.rest=t.languages.css;var e=t.languages.markup;e&&(e.tag.addInlined("style","css"),e.tag.addAttribute("style","css"))})(Ot);Ot.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/};Ot.languages.javascript=Ot.languages.extend("clike",{"class-name":[Ot.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Ot.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Ot.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Ot.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Ot.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Ot.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Ot.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Ot.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Ot.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Ot.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Ot.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Ot.languages.markup&&(Ot.languages.markup.tag.addInlined("script","javascript"),Ot.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Ot.languages.js=Ot.languages.javascript;(function(){if(typeof Ot>"u"||typeof document>"u")return;Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var t="Loading\u2026",A=function(d,B){return"\u2716 Error "+d+" while fetching file: "+B},e="\u2716 Error: File does not exist or is empty",i={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},n="data-src-status",o="loading",a="loaded",r="failed",s="pre[data-src]:not(["+n+'="'+a+'"]):not(['+n+'="'+o+'"])';function l(d,B,E){var u=new XMLHttpRequest;u.open("GET",d,!0),u.onreadystatechange=function(){u.readyState==4&&(u.status<400&&u.responseText?B(u.responseText):u.status>=400?E(A(u.status,u.statusText)):E(e))},u.send(null)}function c(d){var B=/^\s*(\d+)\s*(?:(,)\s*(?:(\d+)\s*)?)?$/.exec(d||"");if(B){var E=Number(B[1]),u=B[2],m=B[3];return u?m?[E,Number(m)]:[E,void 0]:[E,E]}}Ot.hooks.add("before-highlightall",function(d){d.selector+=", "+s}),Ot.hooks.add("before-sanity-check",function(d){var B=d.element;if(B.matches(s)){d.code="",B.setAttribute(n,o);var E=B.appendChild(document.createElement("CODE"));E.textContent=t;var u=B.getAttribute("data-src"),m=d.language;if(m==="none"){var f=(/\.(\w+)$/.exec(u)||[,"none"])[1];m=i[f]||f}Ot.util.setLanguage(E,m),Ot.util.setLanguage(B,m);var D=Ot.plugins.autoloader;D&&D.loadLanguages(m),l(u,function(S){B.setAttribute(n,a);var k=c(B.getAttribute("data-range"));if(k){var b=S.split(/\r\n?|\n/g),x=k[0],F=k[1]==null?b.length:k[1];x<0&&(x+=b.length),x=Math.max(0,Math.min(x-1,b.length)),F<0&&(F+=b.length),F=Math.max(0,Math.min(F,b.length)),S=b.slice(x,F).join(` +`),B.hasAttribute("data-start")||B.setAttribute("data-start",String(x+1))}E.textContent=S,Ot.highlightElement(E)},function(S){B.setAttribute(n,r),E.textContent=S})}}),Ot.plugins.fileHighlight={highlight:function(B){for(var E=(B||document).querySelectorAll(s),u=0,m;m=E[u++];)Ot.highlightElement(m)}};var C=!1;Ot.fileHighlight=function(){C||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),C=!0),Ot.plugins.fileHighlight.highlight.apply(this,arguments)}})()});var Fz=(()=>{class t{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,i){this._renderer=e,this._elementRef=i}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(i){return new(i||t)(dt(rn),dt(dA))};static \u0275dir=We({type:t})}return t})(),sM=(()=>{class t extends Fz{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,features:[_t]})}return t})(),us=new Me(""),Jce={provide:us,useExisting:er(()=>lM),multi:!0},lM=(()=>{class t extends sM{writeValue(e){this.setProperty("checked",e)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(i,n){i&1&&U("change",function(a){return n.onChange(a.target.checked)})("blur",function(){return n.onTouched()})},standalone:!1,features:[yt([Jce]),_t]})}return t})(),zce={provide:us,useExisting:er(()=>Kn),multi:!0};function Yce(){let t=V7()?V7().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}var Hce=new Me(""),Kn=(()=>{class t extends Fz{_compositionMode;_composing=!1;constructor(e,i,n){super(e,i),this._compositionMode=n,this._compositionMode==null&&(this._compositionMode=!Yce())}writeValue(e){let i=e??"";this.setProperty("value",i)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(i){return new(i||t)(dt(rn),dt(dA),dt(Hce,8))};static \u0275dir=We({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,n){i&1&&U("input",function(a){return n._handleInput(a.target.value)})("blur",function(){return n.onTouched()})("compositionstart",function(){return n._compositionStart()})("compositionend",function(a){return n._compositionEnd(a.target.value)})},standalone:!1,features:[yt([zce]),_t]})}return t})();function cM(t){return t==null||gM(t)===0}function gM(t){return t==null?null:Array.isArray(t)||typeof t=="string"?t.length:t instanceof Set?t.size:null}var n0=new Me(""),hQ=new Me(""),Pce=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,il=class{static min(A){return Lz(A)}static max(A){return jce(A)}static required(A){return Vce(A)}static requiredTrue(A){return qce(A)}static email(A){return Zce(A)}static minLength(A){return Wce(A)}static maxLength(A){return Xce(A)}static pattern(A){return $ce(A)}static nullValidator(A){return e3()}static compose(A){return Jz(A)}static composeAsync(A){return zz(A)}};function Lz(t){return A=>{if(A.value==null||t==null)return null;let e=parseFloat(A.value);return!isNaN(e)&&e{if(A.value==null||t==null)return null;let e=parseFloat(A.value);return!isNaN(e)&&e>t?{max:{max:t,actual:A.value}}:null}}function Vce(t){return cM(t.value)?{required:!0}:null}function qce(t){return t.value===!0?null:{required:!0}}function Zce(t){return cM(t.value)||Pce.test(t.value)?null:{email:!0}}function Wce(t){return A=>{let e=A.value?.length??gM(A.value);return e===null||e===0?null:e{let e=A.value?.length??gM(A.value);return e!==null&&e>t?{maxlength:{requiredLength:t,actualLength:e}}:null}}function $ce(t){if(!t)return e3;let A,e;return typeof t=="string"?(e="",t.charAt(0)!=="^"&&(e+="^"),e+=t,t.charAt(t.length-1)!=="$"&&(e+="$"),A=new RegExp(e)):(e=t.toString(),A=t),i=>{if(cM(i.value))return null;let n=i.value;return A.test(n)?null:{pattern:{requiredPattern:e,actualValue:n}}}}function e3(t){return null}function Gz(t){return t!=null}function Kz(t){return Yf(t)?qr(t):t}function Uz(t){let A={};return t.forEach(e=>{A=e!=null?Y(Y({},A),e):A}),Object.keys(A).length===0?null:A}function Tz(t,A){return A.map(e=>e(t))}function ege(t){return!t.validate}function Oz(t){return t.map(A=>ege(A)?A:e=>A.validate(e))}function Jz(t){if(!t)return null;let A=t.filter(Gz);return A.length==0?null:function(e){return Uz(Tz(e,A))}}function CM(t){return t!=null?Jz(Oz(t)):null}function zz(t){if(!t)return null;let A=t.filter(Gz);return A.length==0?null:function(e){let i=Tz(e,A).map(Kz);return cd(i).pipe(xA(Uz))}}function dM(t){return t!=null?zz(Oz(t)):null}function Mz(t,A){return t===null?[A]:Array.isArray(t)?[...t,A]:[t,A]}function Yz(t){return t._rawValidators}function Hz(t){return t._rawAsyncValidators}function oM(t){return t?Array.isArray(t)?t:[t]:[]}function A3(t,A){return Array.isArray(t)?t.includes(A):t===A}function Sz(t,A){let e=oM(A);return oM(t).forEach(n=>{A3(e,n)||e.push(n)}),e}function kz(t,A){return oM(A).filter(e=>!A3(t,e))}var t3=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(A){this._rawValidators=A||[],this._composedValidatorFn=CM(this._rawValidators)}_setAsyncValidators(A){this._rawAsyncValidators=A||[],this._composedAsyncValidatorFn=dM(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(A){this._onDestroyCallbacks.push(A)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(A=>A()),this._onDestroyCallbacks=[]}reset(A=void 0){this.control?.reset(A)}hasError(A,e){return this.control?this.control.hasError(A,e):!1}getError(A,e){return this.control?this.control.getError(A,e):null}},aC=class extends t3{name;get formDirective(){return null}get path(){return null}},nl=class extends t3{_parent=null;name=null;valueAccessor=null},i3=class{_cd;constructor(A){this._cd=A}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}};var Un=(()=>{class t extends i3{constructor(e){super(e)}static \u0275fac=function(i){return new(i||t)(dt(nl,2))};static \u0275dir=We({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,n){i&2&&_e("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)},standalone:!1,features:[_t]})}return t})(),Pz=(()=>{class t extends i3{constructor(e){super(e)}static \u0275fac=function(i){return new(i||t)(dt(aC,10))};static \u0275dir=We({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["","formArray",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(i,n){i&2&&_e("ng-untouched",n.isUntouched)("ng-touched",n.isTouched)("ng-pristine",n.isPristine)("ng-dirty",n.isDirty)("ng-valid",n.isValid)("ng-invalid",n.isInvalid)("ng-pending",n.isPending)("ng-submitted",n.isSubmitted)},standalone:!1,features:[_t]})}return t})();var lQ="VALID",$f="INVALID",dB="PENDING",cQ="DISABLED",hd=class{},n3=class extends hd{value;source;constructor(A,e){super(),this.value=A,this.source=e}},CQ=class extends hd{pristine;source;constructor(A,e){super(),this.pristine=A,this.source=e}},dQ=class extends hd{touched;source;constructor(A,e){super(),this.touched=A,this.source=e}},IB=class extends hd{status;source;constructor(A,e){super(),this.status=A,this.source=e}},o3=class extends hd{source;constructor(A){super(),this.source=A}},IQ=class extends hd{source;constructor(A){super(),this.source=A}};function IM(t){return(l3(t)?t.validators:t)||null}function Age(t){return Array.isArray(t)?CM(t):t||null}function BM(t,A){return(l3(A)?A.asyncValidators:t)||null}function tge(t){return Array.isArray(t)?dM(t):t||null}function l3(t){return t!=null&&!Array.isArray(t)&&typeof t=="object"}function jz(t,A,e){let i=t.controls;if(!(A?Object.keys(i):i).length)throw new Kt(1e3,"");if(!i[e])throw new Kt(1001,"")}function Vz(t,A,e){t._forEachChild((i,n)=>{if(e[n]===void 0)throw new Kt(1002,"")})}var BB=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(A,e){this._assignValidators(A),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(A){this._rawValidators=this._composedValidatorFn=A}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(A){this._rawAsyncValidators=this._composedAsyncValidatorFn=A}get parent(){return this._parent}get status(){return Ma(this.statusReactive)}set status(A){Ma(()=>this.statusReactive.set(A))}_status=DA(()=>this.statusReactive());statusReactive=fe(void 0);get valid(){return this.status===lQ}get invalid(){return this.status===$f}get pending(){return this.status==dB}get disabled(){return this.status===cQ}get enabled(){return this.status!==cQ}errors;get pristine(){return Ma(this.pristineReactive)}set pristine(A){Ma(()=>this.pristineReactive.set(A))}_pristine=DA(()=>this.pristineReactive());pristineReactive=fe(!0);get dirty(){return!this.pristine}get touched(){return Ma(this.touchedReactive)}set touched(A){Ma(()=>this.touchedReactive.set(A))}_touched=DA(()=>this.touchedReactive());touchedReactive=fe(!1);get untouched(){return!this.touched}_events=new rA;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(A){this._assignValidators(A)}setAsyncValidators(A){this._assignAsyncValidators(A)}addValidators(A){this.setValidators(Sz(A,this._rawValidators))}addAsyncValidators(A){this.setAsyncValidators(Sz(A,this._rawAsyncValidators))}removeValidators(A){this.setValidators(kz(A,this._rawValidators))}removeAsyncValidators(A){this.setAsyncValidators(kz(A,this._rawAsyncValidators))}hasValidator(A){return A3(this._rawValidators,A)}hasAsyncValidator(A){return A3(this._rawAsyncValidators,A)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(A={}){let e=this.touched===!1;this.touched=!0;let i=A.sourceControl??this;A.onlySelf||this._parent?.markAsTouched(Ye(Y({},A),{sourceControl:i})),e&&A.emitEvent!==!1&&this._events.next(new dQ(!0,i))}markAllAsDirty(A={}){this.markAsDirty({onlySelf:!0,emitEvent:A.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsDirty(A))}markAllAsTouched(A={}){this.markAsTouched({onlySelf:!0,emitEvent:A.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(A))}markAsUntouched(A={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let i=A.sourceControl??this;this._forEachChild(n=>{n.markAsUntouched({onlySelf:!0,emitEvent:A.emitEvent,sourceControl:i})}),A.onlySelf||this._parent?._updateTouched(A,i),e&&A.emitEvent!==!1&&this._events.next(new dQ(!1,i))}markAsDirty(A={}){let e=this.pristine===!0;this.pristine=!1;let i=A.sourceControl??this;A.onlySelf||this._parent?.markAsDirty(Ye(Y({},A),{sourceControl:i})),e&&A.emitEvent!==!1&&this._events.next(new CQ(!1,i))}markAsPristine(A={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let i=A.sourceControl??this;this._forEachChild(n=>{n.markAsPristine({onlySelf:!0,emitEvent:A.emitEvent})}),A.onlySelf||this._parent?._updatePristine(A,i),e&&A.emitEvent!==!1&&this._events.next(new CQ(!0,i))}markAsPending(A={}){this.status=dB;let e=A.sourceControl??this;A.emitEvent!==!1&&(this._events.next(new IB(this.status,e)),this.statusChanges.emit(this.status)),A.onlySelf||this._parent?.markAsPending(Ye(Y({},A),{sourceControl:e}))}disable(A={}){let e=this._parentMarkedDirty(A.onlySelf);this.status=cQ,this.errors=null,this._forEachChild(n=>{n.disable(Ye(Y({},A),{onlySelf:!0}))}),this._updateValue();let i=A.sourceControl??this;A.emitEvent!==!1&&(this._events.next(new n3(this.value,i)),this._events.next(new IB(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Ye(Y({},A),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(n=>n(!0))}enable(A={}){let e=this._parentMarkedDirty(A.onlySelf);this.status=lQ,this._forEachChild(i=>{i.enable(Ye(Y({},A),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:A.emitEvent}),this._updateAncestors(Ye(Y({},A),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(A,e){A.onlySelf||(this._parent?.updateValueAndValidity(A),A.skipPristineCheck||this._parent?._updatePristine({},e),this._parent?._updateTouched({},e))}setParent(A){this._parent=A}getRawValue(){return this.value}updateValueAndValidity(A={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===lQ||this.status===dB)&&this._runAsyncValidator(i,A.emitEvent)}let e=A.sourceControl??this;A.emitEvent!==!1&&(this._events.next(new n3(this.value,e)),this._events.next(new IB(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),A.onlySelf||this._parent?.updateValueAndValidity(Ye(Y({},A),{sourceControl:e}))}_updateTreeValidity(A={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(A)),this.updateValueAndValidity({onlySelf:!0,emitEvent:A.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?cQ:lQ}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(A,e){if(this.asyncValidator){this.status=dB,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1,shouldHaveEmitted:A!==!1};let i=Kz(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(n=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(n,{emitEvent:e,shouldHaveEmitted:A})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let A=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,A}return!1}setErrors(A,e={}){this.errors=A,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(A){let e=A;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((i,n)=>i&&i._find(n),this)}getError(A,e){let i=e?this.get(e):this;return i?.errors?i.errors[A]:null}hasError(A,e){return!!this.getError(A,e)}get root(){let A=this;for(;A._parent;)A=A._parent;return A}_updateControlsErrors(A,e,i){this.status=this._calculateStatus(),A&&this.statusChanges.emit(this.status),(A||i)&&this._events.next(new IB(this.status,e)),this._parent&&this._parent._updateControlsErrors(A,e,i)}_initObservables(){this.valueChanges=new Le,this.statusChanges=new Le}_calculateStatus(){return this._allControlsDisabled()?cQ:this.errors?$f:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(dB)?dB:this._anyControlsHaveStatus($f)?$f:lQ}_anyControlsHaveStatus(A){return this._anyControls(e=>e.status===A)}_anyControlsDirty(){return this._anyControls(A=>A.dirty)}_anyControlsTouched(){return this._anyControls(A=>A.touched)}_updatePristine(A,e){let i=!this._anyControlsDirty(),n=this.pristine!==i;this.pristine=i,A.onlySelf||this._parent?._updatePristine(A,e),n&&this._events.next(new CQ(this.pristine,e))}_updateTouched(A={},e){this.touched=this._anyControlsTouched(),this._events.next(new dQ(this.touched,e)),A.onlySelf||this._parent?._updateTouched(A,e)}_onDisabledChange=[];_registerOnCollectionChange(A){this._onCollectionChange=A}_setUpdateStrategy(A){l3(A)&&A.updateOn!=null&&(this._updateOn=A.updateOn)}_parentMarkedDirty(A){return!A&&!!this._parent?.dirty&&!this._parent._anyControlsDirty()}_find(A){return null}_assignValidators(A){this._rawValidators=Array.isArray(A)?A.slice():A,this._composedValidatorFn=Age(this._rawValidators)}_assignAsyncValidators(A){this._rawAsyncValidators=Array.isArray(A)?A.slice():A,this._composedAsyncValidatorFn=tge(this._rawAsyncValidators)}},hB=class extends BB{constructor(A,e,i){super(IM(e),BM(i,e)),this.controls=A,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(A,e){return this.controls[A]?this.controls[A]:(this.controls[A]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(A,e,i={}){this.registerControl(A,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(A,e={}){this.controls[A]&&this.controls[A]._registerOnCollectionChange(()=>{}),delete this.controls[A],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(A,e,i={}){this.controls[A]&&this.controls[A]._registerOnCollectionChange(()=>{}),delete this.controls[A],e&&this.registerControl(A,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(A){return this.controls.hasOwnProperty(A)&&this.controls[A].enabled}setValue(A,e={}){Vz(this,!0,A),Object.keys(A).forEach(i=>{jz(this,!0,i),this.controls[i].setValue(A[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(A,e={}){A!=null&&(Object.keys(A).forEach(i=>{let n=this.controls[i];n&&n.patchValue(A[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(A={},e={}){this._forEachChild((i,n)=>{i.reset(A?A[n]:null,Ye(Y({},e),{onlySelf:!0}))}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e),e?.emitEvent!==!1&&this._events.next(new IQ(this))}getRawValue(){return this._reduceChildren({},(A,e,i)=>(A[i]=e.getRawValue(),A))}_syncPendingControls(){let A=this._reduceChildren(!1,(e,i)=>i._syncPendingControls()?!0:e);return A&&this.updateValueAndValidity({onlySelf:!0}),A}_forEachChild(A){Object.keys(this.controls).forEach(e=>{let i=this.controls[e];i&&A(i,e)})}_setUpControls(){this._forEachChild(A=>{A.setParent(this),A._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(A){for(let[e,i]of Object.entries(this.controls))if(this.contains(e)&&A(i))return!0;return!1}_reduceValue(){let A={};return this._reduceChildren(A,(e,i,n)=>((i.enabled||this.disabled)&&(e[n]=i.value),e))}_reduceChildren(A,e){let i=A;return this._forEachChild((n,o)=>{i=e(i,n,o)}),i}_allControlsDisabled(){for(let A of Object.keys(this.controls))if(this.controls[A].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(A){return this.controls.hasOwnProperty(A)?this.controls[A]:null}};var aM=class extends hB{};var uB=new Me("",{factory:()=>c3}),c3="always";function qz(t,A){return[...A.path,t]}function BQ(t,A,e=c3){hM(t,A),A.valueAccessor.writeValue(t.value),(t.disabled||e==="always")&&A.valueAccessor.setDisabledState?.(t.disabled),nge(t,A),age(t,A),oge(t,A),ige(t,A)}function a3(t,A,e=!0){let i=()=>{};A?.valueAccessor?.registerOnChange(i),A?.valueAccessor?.registerOnTouched(i),s3(t,A),t&&(A._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function r3(t,A){t.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(A)})}function ige(t,A){if(A.valueAccessor.setDisabledState){let e=i=>{A.valueAccessor.setDisabledState(i)};t.registerOnDisabledChange(e),A._registerOnDestroy(()=>{t._unregisterOnDisabledChange(e)})}}function hM(t,A){let e=Yz(t);A.validator!==null?t.setValidators(Mz(e,A.validator)):typeof e=="function"&&t.setValidators([e]);let i=Hz(t);A.asyncValidator!==null?t.setAsyncValidators(Mz(i,A.asyncValidator)):typeof i=="function"&&t.setAsyncValidators([i]);let n=()=>t.updateValueAndValidity();r3(A._rawValidators,n),r3(A._rawAsyncValidators,n)}function s3(t,A){let e=!1;if(t!==null){if(A.validator!==null){let n=Yz(t);if(Array.isArray(n)&&n.length>0){let o=n.filter(a=>a!==A.validator);o.length!==n.length&&(e=!0,t.setValidators(o))}}if(A.asyncValidator!==null){let n=Hz(t);if(Array.isArray(n)&&n.length>0){let o=n.filter(a=>a!==A.asyncValidator);o.length!==n.length&&(e=!0,t.setAsyncValidators(o))}}}let i=()=>{};return r3(A._rawValidators,i),r3(A._rawAsyncValidators,i),e}function nge(t,A){A.valueAccessor.registerOnChange(e=>{t._pendingValue=e,t._pendingChange=!0,t._pendingDirty=!0,t.updateOn==="change"&&Zz(t,A)})}function oge(t,A){A.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,t.updateOn==="blur"&&t._pendingChange&&Zz(t,A),t.updateOn!=="submit"&&t.markAsTouched()})}function Zz(t,A){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),A.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function age(t,A){let e=(i,n)=>{A.valueAccessor.writeValue(i),n&&A.viewToModelUpdate(i)};t.registerOnChange(e),A._registerOnDestroy(()=>{t._unregisterOnChange(e)})}function Wz(t,A){t==null,hM(t,A)}function rge(t,A){return s3(t,A)}function uM(t,A){if(!t.hasOwnProperty("model"))return!1;let e=t.model;return e.isFirstChange()?!0:!Object.is(A,e.currentValue)}function sge(t){return Object.getPrototypeOf(t.constructor)===sM}function Xz(t,A){t._syncPendingControls(),A.forEach(e=>{let i=e.control;i.updateOn==="submit"&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function EM(t,A){if(!A)return null;Array.isArray(A);let e,i,n;return A.forEach(o=>{o.constructor===Kn?e=o:sge(o)?i=o:n=o}),n||i||e||null}function lge(t,A){let e=t.indexOf(A);e>-1&&t.splice(e,1)}var cge={provide:aC,useExisting:er(()=>EB)},gQ=Promise.resolve(),EB=(()=>{class t extends aC{callSetDisabledState;get submitted(){return Ma(this.submittedReactive)}_submitted=DA(()=>this.submittedReactive());submittedReactive=fe(!1);_directives=new Set;form;ngSubmit=new Le;options;constructor(e,i,n){super(),this.callSetDisabledState=n,this.form=new hB({},CM(e),dM(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){gQ.then(()=>{let i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),BQ(e.control,e,this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){gQ.then(()=>{this._findContainer(e.path)?.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){gQ.then(()=>{let i=this._findContainer(e.path),n=new hB({});Wz(n,e),i.registerControl(e.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){gQ.then(()=>{this._findContainer(e.path)?.removeControl?.(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){gQ.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),Xz(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new o3(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1)}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(i){return new(i||t)(dt(n0,10),dt(hQ,10),dt(uB,8))};static \u0275dir=We({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup","",3,"formArray",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,n){i&1&&U("submit",function(a){return n.onSubmit(a)})("reset",function(){return n.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[yt([cge]),_t]})}return t})();function _z(t,A){let e=t.indexOf(A);e>-1&&t.splice(e,1)}function xz(t){return typeof t=="object"&&t!==null&&Object.keys(t).length===2&&"value"in t&&"disabled"in t}var tl=class extends BB{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(A=null,e,i){super(IM(e),BM(i,e)),this._applyFormState(A),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),l3(e)&&(e.nonNullable||e.initialValueIsDefault)&&(xz(A)?this.defaultValue=A.value:this.defaultValue=A)}setValue(A,e={}){this.value=this._pendingValue=A,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(i=>i(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)}patchValue(A,e={}){this.setValue(A,e)}reset(A=this.defaultValue,e={}){this._applyFormState(A),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),e.overwriteDefaultValue&&(this.defaultValue=this.value),this._pendingChange=!1,e?.emitEvent!==!1&&this._events.next(new IQ(this))}_updateValue(){}_anyControls(A){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(A){this._onChange.push(A)}_unregisterOnChange(A){_z(this._onChange,A)}registerOnDisabledChange(A){this._onDisabledChange.push(A)}_unregisterOnDisabledChange(A){_z(this._onDisabledChange,A)}_forEachChild(A){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(A){xz(A)?(this.value=this._pendingValue=A.value,A.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=A}};var gge=t=>t instanceof tl;var Cge={provide:nl,useExisting:er(()=>Po)},Rz=Promise.resolve(),Po=(()=>{class t extends nl{_changeDetectorRef;callSetDisabledState;control=new tl;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new Le;constructor(e,i,n,o,a,r){super(),this._changeDetectorRef=a,this.callSetDisabledState=r,this._parent=e,this._setValidators(i),this._setAsyncValidators(n),this.valueAccessor=EM(this,o)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),uM(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective?.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){BQ(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){Rz.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let i=e.isDisabled.currentValue,n=i!==0&&mA(i);Rz.then(()=>{n&&!this.control.disabled?this.control.disable():!n&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?qz(e,this._parent):[e]}static \u0275fac=function(i){return new(i||t)(dt(aC,9),dt(n0,10),dt(hQ,10),dt(us,10),dt(xt,8),dt(uB,8))};static \u0275dir=We({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[yt([Cge]),_t,ai]})}return t})();var $z=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return t})(),dge={provide:us,useExisting:er(()=>uQ),multi:!0},uQ=(()=>{class t extends sM{writeValue(e){let i=e??"";this.setProperty("value",i)}registerOnChange(e){this.onChange=i=>{e(i==""?null:parseFloat(i))}}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(i,n){i&1&&U("input",function(a){return n.onChange(a.target.value)})("blur",function(){return n.onTouched()})},standalone:!1,features:[yt([dge]),_t]})}return t})();var rM=class extends BB{constructor(A,e,i){super(IM(e),BM(i,e)),this.controls=A,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(A){return this.controls[this._adjustIndex(A)]}push(A,e={}){Array.isArray(A)?A.forEach(i=>{this.controls.push(i),this._registerControl(i)}):(this.controls.push(A),this._registerControl(A)),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(A,e,i={}){this.controls.splice(A,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:i.emitEvent})}removeAt(A,e={}){let i=this._adjustIndex(A);i<0&&(i=0),this.controls[i]&&this.controls[i]._registerOnCollectionChange(()=>{}),this.controls.splice(i,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(A,e,i={}){let n=this._adjustIndex(A);n<0&&(n=0),this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),this.controls.splice(n,1),e&&(this.controls.splice(n,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(A,e={}){Vz(this,!1,A),A.forEach((i,n)=>{jz(this,!1,n),this.at(n).setValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(A,e={}){A!=null&&(A.forEach((i,n)=>{this.at(n)&&this.at(n).patchValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(A=[],e={}){this._forEachChild((i,n)=>{i.reset(A[n],Ye(Y({},e),{onlySelf:!0}))}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e),e?.emitEvent!==!1&&this._events.next(new IQ(this))}getRawValue(){return this.controls.map(A=>A.getRawValue())}clear(A={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:A.emitEvent}))}_adjustIndex(A){return A<0?A+this.length:A}_syncPendingControls(){let A=this.controls.reduce((e,i)=>i._syncPendingControls()?!0:e,!1);return A&&this.updateValueAndValidity({onlySelf:!0}),A}_forEachChild(A){this.controls.forEach((e,i)=>{A(e,i)})}_updateValue(){this.value=this.controls.filter(A=>A.enabled||this.disabled).map(A=>A.value)}_anyControls(A){return this.controls.some(e=>e.enabled&&A(e))}_setUpControls(){this._forEachChild(A=>this._registerControl(A))}_allControlsDisabled(){for(let A of this.controls)if(A.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(A){A.setParent(this),A._registerOnCollectionChange(this._onCollectionChange)}_find(A){return this.at(A)??null}};var Ige=(()=>{class t extends aC{callSetDisabledState;get submitted(){return Ma(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}_submitted=DA(()=>this._submittedReactive());_submittedReactive=fe(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];constructor(e,i,n){super(),this.callSetDisabledState=n,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){this.onChanges(e)}ngOnDestroy(){this.onDestroy()}onChanges(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}onDestroy(){this.form&&(s3(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get path(){return[]}addControl(e){let i=this.form.get(e.path);return BQ(i,e,this.callSetDisabledState),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){a3(e.control||null,e,!1),lge(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}getFormArray(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}updateModel(e,i){this.form.get(e.path).setValue(i)}onReset(){this.resetForm()}resetForm(e=void 0,i={}){this.form.reset(e,i),this._submittedReactive.set(!1)}onSubmit(e){return this.submitted=!0,Xz(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new o3(this.control)),e?.target?.method==="dialog"}_updateDomValue(){this.directives.forEach(e=>{let i=e.control,n=this.form.get(e.path);i!==n&&(a3(i||null,e),gge(n)&&(BQ(n,e,this.callSetDisabledState),e.control=n))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){let i=this.form.get(e.path);Wz(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){let i=this.form?.get(e.path);i&&rge(i,e)&&i.updateValueAndValidity({emitEvent:!1})}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm?._registerOnCollectionChange(()=>{})}_updateValidators(){hM(this.form,this),this._oldForm&&s3(this._oldForm,this)}_checkFormPresent(){this.form}static \u0275fac=function(i){return new(i||t)(dt(n0,10),dt(hQ,10),dt(uB,8))};static \u0275dir=We({type:t,features:[_t,ai]})}return t})();var QM=new Me(""),Bge={provide:nl,useExisting:er(()=>sI)},sI=(()=>{class t extends nl{_ngModelWarningConfig;callSetDisabledState;viewModel;form;set isDisabled(e){}model;update=new Le;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,n,o,a){super(),this._ngModelWarningConfig=o,this.callSetDisabledState=a,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=EM(this,n)}ngOnChanges(e){if(this._isControlChanged(e)){let i=e.form.previousValue;i&&a3(i,this,!1),BQ(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}uM(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&a3(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}static \u0275fac=function(i){return new(i||t)(dt(n0,10),dt(hQ,10),dt(us,10),dt(QM,8),dt(uB,8))};static \u0275dir=We({type:t,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],standalone:!1,features:[yt([Bge]),_t,ai]})}return t})();var hge={provide:nl,useExisting:er(()=>pM)},pM=(()=>{class t extends nl{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(e){}model;update=new Le;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,n,o,a){super(),this._ngModelWarningConfig=a,this._parent=e,this._setValidators(i),this._setAsyncValidators(n),this.valueAccessor=EM(this,o)}ngOnChanges(e){this._added||this._setUpControl(),uM(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective?.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return qz(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}static \u0275fac=function(i){return new(i||t)(dt(aC,13),dt(n0,10),dt(hQ,10),dt(us,10),dt(QM,8))};static \u0275dir=We({type:t,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[yt([hge]),_t,ai]})}return t})();var uge={provide:aC,useExisting:er(()=>ud)},ud=(()=>{class t extends Ige{form=null;ngSubmit=new Le;get control(){return this.form}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","formGroup",""]],hostBindings:function(i,n){i&1&&U("submit",function(a){return n.onSubmit(a)})("reset",function(){return n.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[yt([uge]),_t]})}return t})();function Ege(t){return typeof t=="number"?t:parseFloat(t)}var Qge=(()=>{class t{_validator=e3;_onChange;_enabled;ngOnChanges(e){if(this.inputName in e){let i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):e3,this._onChange?.()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return e!=null}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,features:[ai]})}return t})();var pge={provide:n0,useExisting:er(()=>mM),multi:!0},mM=(()=>{class t extends Qge{min;inputName="min";normalizeInput=e=>Ege(e);createValidator=e=>Lz(e);static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["input","type","number","min","","formControlName",""],["input","type","number","min","","formControl",""],["input","type","number","min","","ngModel",""]],hostVars:1,hostBindings:function(i,n){i&2&&aA("min",n._enabled?n.min:null)},inputs:{min:"min"},standalone:!1,features:[yt([pge]),_t]})}return t})();var eY=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({})}return t})();function Nz(t){return!!t&&(t.asyncValidators!==void 0||t.validators!==void 0||t.updateOn!==void 0)}var AY=(()=>{class t{useNonNullable=!1;get nonNullable(){let e=new t;return e.useNonNullable=!0,e}group(e,i=null){let n=this._reduceControls(e),o={};return Nz(i)?o=i:i!==null&&(o.validators=i.validator,o.asyncValidators=i.asyncValidator),new hB(n,o)}record(e,i=null){let n=this._reduceControls(e);return new aM(n,i)}control(e,i,n){let o={};return this.useNonNullable?(Nz(i)?o=i:(o.validators=i,o.asyncValidators=n),new tl(e,Ye(Y({},o),{nonNullable:!0}))):new tl(e,i,n)}array(e,i,n){let o=e.map(a=>this._createControl(a));return new rM(o,i,n)}_reduceControls(e){let i={};return Object.keys(e).forEach(n=>{i[n]=this._createControl(e[n])}),i}_createControl(e){if(e instanceof tl)return e;if(e instanceof BB)return e;if(Array.isArray(e)){let i=e[0],n=e.length>1?e[1]:null,o=e.length>2?e[2]:null;return this.control(i,n,o)}else return this.control(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var wn=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:uB,useValue:e.callSetDisabledState??c3}]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[eY]})}return t})(),Ed=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:QM,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:uB,useValue:e.callSetDisabledState??c3}]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[eY]})}return t})();function lI(t){return t.buttons===0||t.detail===0}function cI(t){let A=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!!A&&A.identifier===-1&&(A.radiusX==null||A.radiusX===1)&&(A.radiusY==null||A.radiusY===1)}var fM;function tY(){if(fM==null){let t=typeof document<"u"?document.head:null;fM=!!(t&&(t.createShadowRoot||t.attachShadow))}return fM}function wM(t){if(tY()){let A=t.getRootNode?t.getRootNode():null;if(typeof ShadowRoot<"u"&&ShadowRoot&&A instanceof ShadowRoot)return A}return null}function EQ(){let t=typeof document<"u"&&document?document.activeElement:null;for(;t&&t.shadowRoot;){let A=t.shadowRoot.activeElement;if(A===t)break;t=A}return t}function Xr(t){return t.composedPath?t.composedPath()[0]:t.target}var yM;try{yM=typeof Intl<"u"&&Intl.v8BreakIterator}catch(t){yM=!1}var pi=(()=>{class t{_platformId=w(Kf);isBrowser=this._platformId?oC(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||yM)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var QQ;function iY(){if(QQ==null&&typeof window<"u")try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>QQ=!0}))}finally{QQ=QQ||!1}return QQ}function QB(t){return iY()?t:!!t.capture}function ol(t,A=0){return g3(t)?Number(t):arguments.length===2?A:0}function g3(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}function Ls(t){return t instanceof dA?t.nativeElement:t}var nY=new Me("cdk-input-modality-detector-options"),oY={ignoreKeys:[18,17,224,91,16]},aY=650,vM={passive:!0,capture:!0},rY=(()=>{class t{_platform=w(pi);_listenerCleanups;modalityDetected;modalityChanged;get mostRecentModality(){return this._modality.value}_mostRecentTarget=null;_modality=new di(null);_options;_lastTouchMs=0;_onKeydown=e=>{this._options?.ignoreKeys?.some(i=>i===e.keyCode)||(this._modality.next("keyboard"),this._mostRecentTarget=Xr(e))};_onMousedown=e=>{Date.now()-this._lastTouchMs{if(cI(e)){this._modality.next("keyboard");return}this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Xr(e)};constructor(){let e=w(At),i=w(Ii),n=w(nY,{optional:!0});if(this._options=Y(Y({},oY),n),this.modalityDetected=this._modality.pipe(Kl(1)),this.modalityChanged=this.modalityDetected.pipe(jc()),this._platform.isBrowser){let o=w(Wr).createRenderer(null,null);this._listenerCleanups=e.runOutsideAngular(()=>[o.listen(i,"keydown",this._onKeydown,vM),o.listen(i,"mousedown",this._onMousedown,vM),o.listen(i,"touchstart",this._onTouchstart,vM)])}}ngOnDestroy(){this._modality.complete(),this._listenerCleanups?.forEach(e=>e())}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),pQ=(function(t){return t[t.IMMEDIATE=0]="IMMEDIATE",t[t.EVENTUAL=1]="EVENTUAL",t})(pQ||{}),sY=new Me("cdk-focus-monitor-default-options"),C3=QB({passive:!0,capture:!0}),dr=(()=>{class t{_ngZone=w(At);_platform=w(pi);_inputModalityDetector=w(rY);_origin=null;_lastFocusOrigin=null;_windowFocused=!1;_windowFocusTimeoutId;_originTimeoutId;_originFromTouchInteraction=!1;_elementInfo=new Map;_monitoredElementCount=0;_rootNodeFocusListenerCount=new Map;_detectionMode;_windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)};_document=w(Ii);_stopInputModalityDetector=new rA;constructor(){let e=w(sY,{optional:!0});this._detectionMode=e?.detectionMode||pQ.IMMEDIATE}_rootNodeFocusAndBlurListener=e=>{let i=Xr(e);for(let n=i;n;n=n.parentElement)e.type==="focus"?this._onFocus(e,n):this._onBlur(e,n)};monitor(e,i=!1){let n=Ls(e);if(!this._platform.isBrowser||n.nodeType!==1)return sA();let o=wM(n)||this._document,a=this._elementInfo.get(n);if(a)return i&&(a.checkChildren=!0),a.subject;let r={checkChildren:i,subject:new rA,rootNode:o};return this._elementInfo.set(n,r),this._registerGlobalListeners(r),r.subject}stopMonitoring(e){let i=Ls(e),n=this._elementInfo.get(i);n&&(n.subject.complete(),this._setClasses(i),this._elementInfo.delete(i),this._removeGlobalListeners(n))}focusVia(e,i,n){let o=Ls(e),a=this._document.activeElement;o===a?this._getClosestElementsInfo(o).forEach(([r,s])=>this._originChanged(r,i,s)):(this._setOrigin(i),typeof o.focus=="function"&&o.focus(n))}ngOnDestroy(){this._elementInfo.forEach((e,i)=>this.stopMonitoring(i))}_getWindow(){return this._document.defaultView||window}_getFocusOrigin(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:e&&this._isLastInteractionFromInputLabel(e)?"mouse":"program"}_shouldBeAttributedToTouch(e){return this._detectionMode===pQ.EVENTUAL||!!e?.contains(this._inputModalityDetector._mostRecentTarget)}_setClasses(e,i){e.classList.toggle("cdk-focused",!!i),e.classList.toggle("cdk-touch-focused",i==="touch"),e.classList.toggle("cdk-keyboard-focused",i==="keyboard"),e.classList.toggle("cdk-mouse-focused",i==="mouse"),e.classList.toggle("cdk-program-focused",i==="program")}_setOrigin(e,i=!1){this._ngZone.runOutsideAngular(()=>{if(this._origin=e,this._originFromTouchInteraction=e==="touch"&&i,this._detectionMode===pQ.IMMEDIATE){clearTimeout(this._originTimeoutId);let n=this._originFromTouchInteraction?aY:1;this._originTimeoutId=setTimeout(()=>this._origin=null,n)}})}_onFocus(e,i){let n=this._elementInfo.get(i),o=Xr(e);!n||!n.checkChildren&&i!==o||this._originChanged(i,this._getFocusOrigin(o),n)}_onBlur(e,i){let n=this._elementInfo.get(i);!n||n.checkChildren&&e.relatedTarget instanceof Node&&i.contains(e.relatedTarget)||(this._setClasses(i),this._emitOrigin(n,null))}_emitOrigin(e,i){e.subject.observers.length&&this._ngZone.run(()=>e.subject.next(i))}_registerGlobalListeners(e){if(!this._platform.isBrowser)return;let i=e.rootNode,n=this._rootNodeFocusListenerCount.get(i)||0;n||this._ngZone.runOutsideAngular(()=>{i.addEventListener("focus",this._rootNodeFocusAndBlurListener,C3),i.addEventListener("blur",this._rootNodeFocusAndBlurListener,C3)}),this._rootNodeFocusListenerCount.set(i,n+1),++this._monitoredElementCount===1&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(Mt(this._stopInputModalityDetector)).subscribe(o=>{this._setOrigin(o,!0)}))}_removeGlobalListeners(e){let i=e.rootNode;if(this._rootNodeFocusListenerCount.has(i)){let n=this._rootNodeFocusListenerCount.get(i);n>1?this._rootNodeFocusListenerCount.set(i,n-1):(i.removeEventListener("focus",this._rootNodeFocusAndBlurListener,C3),i.removeEventListener("blur",this._rootNodeFocusAndBlurListener,C3),this._rootNodeFocusListenerCount.delete(i))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(e,i,n){this._setClasses(e,i),this._emitOrigin(n,i),this._lastFocusOrigin=i}_getClosestElementsInfo(e){let i=[];return this._elementInfo.forEach((n,o)=>{(o===e||n.checkChildren&&o.contains(e))&&i.push([o,n])}),i}_isLastInteractionFromInputLabel(e){let{_mostRecentTarget:i,mostRecentModality:n}=this._inputModalityDetector;if(n!=="mouse"||!i||i===e||e.nodeName!=="INPUT"&&e.nodeName!=="TEXTAREA"||e.disabled)return!1;let o=e.labels;if(o){for(let a=0;a{class t{_elementRef=w(dA);_focusMonitor=w(dr);_monitorSubscription;_focusOrigin=null;cdkFocusChange=new Le;constructor(){}get focusOrigin(){return this._focusOrigin}ngAfterViewInit(){let e=this._elementRef.nativeElement;this._monitorSubscription=this._focusMonitor.monitor(e,e.nodeType===1&&e.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(i=>{this._focusOrigin=i,this.cdkFocusChange.emit(i)})}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription?.unsubscribe()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"},exportAs:["cdkMonitorFocus"]})}return t})();var d3=new WeakMap,Eo=(()=>{class t{_appRef;_injector=w(Rt);_environmentInjector=w(Zr);load(e){let i=this._appRef=this._appRef||this._injector.get(AC),n=d3.get(i);n||(n={loaders:new Set,refs:[]},d3.set(i,n),i.onDestroy(()=>{d3.get(i)?.refs.forEach(o=>o.destroy()),d3.delete(i)})),n.loaders.has(e)||(n.loaders.add(e),n.refs.push(jf(e,{environmentInjector:this._environmentInjector})))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Qd=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["ng-component"]],exportAs:["cdkVisuallyHidden"],decls:0,vars:0,template:function(i,n){},styles:[`.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap;outline:0;-webkit-appearance:none;-moz-appearance:none;left:0}[dir=rtl] .cdk-visually-hidden{left:auto;right:0} +`],encapsulation:2,changeDetection:0})}return t})(),I3;function mge(){if(I3===void 0&&(I3=null,typeof window<"u")){let t=window;t.trustedTypes!==void 0&&(I3=t.trustedTypes.createPolicy("angular#components",{createHTML:A=>A}))}return I3}function gI(t){return mge()?.createHTML(t)||t}function lY(t,A,e){let i=e.sanitize(qc.HTML,A);t.innerHTML=gI(i||"")}function pB(t){return Array.isArray(t)?t:[t]}var cY=new Set,CI,mB=(()=>{class t{_platform=w(pi);_nonce=w(QJ,{optional:!0});_matchMedia;constructor(){this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):wge}matchMedia(e){return(this._platform.WEBKIT||this._platform.BLINK)&&fge(e,this._nonce),this._matchMedia(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function fge(t,A){if(!cY.has(t))try{CI||(CI=document.createElement("style"),A&&CI.setAttribute("nonce",A),CI.setAttribute("type","text/css"),document.head.appendChild(CI)),CI.sheet&&(CI.sheet.insertRule(`@media ${t} {body{ }}`,0),cY.add(t))}catch(e){console.error(e)}}function wge(t){return{matches:t==="all"||t==="",media:t,addListener:()=>{},removeListener:()=>{}}}var mQ=(()=>{class t{_mediaMatcher=w(mB);_zone=w(At);_queries=new Map;_destroySubject=new rA;constructor(){}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(e){return gY(pB(e)).some(n=>this._registerQuery(n).mql.matches)}observe(e){let n=gY(pB(e)).map(a=>this._registerQuery(a).observable),o=_r(n);return o=Rf(o.pipe(No(1)),o.pipe(Kl(1),Ws(0))),o.pipe(xA(a=>{let r={matches:!1,breakpoints:{}};return a.forEach(({matches:s,query:l})=>{r.matches=r.matches||s,r.breakpoints[l]=s}),r}))}_registerQuery(e){if(this._queries.has(e))return this._queries.get(e);let i=this._mediaMatcher.matchMedia(e),o={observable:new Li(a=>{let r=s=>this._zone.run(()=>a.next(s));return i.addListener(r),()=>{i.removeListener(r)}}).pipe(Yn(i),xA(({matches:a})=>({query:e,matches:a})),Mt(this._destroySubject)),mql:i};return this._queries.set(e,o),o}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function gY(t){return t.map(A=>A.split(",")).reduce((A,e)=>A.concat(e)).map(A=>A.trim())}function yge(t){if(t.type==="characterData"&&t.target instanceof Comment)return!0;if(t.type==="childList"){for(let A=0;A{class t{create(e){return typeof MutationObserver>"u"?null:new MutationObserver(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),dY=(()=>{class t{_mutationObserverFactory=w(CY);_observedElements=new Map;_ngZone=w(At);constructor(){}ngOnDestroy(){this._observedElements.forEach((e,i)=>this._cleanupObserver(i))}observe(e){let i=Ls(e);return new Li(n=>{let a=this._observeElement(i).pipe(xA(r=>r.filter(s=>!yge(s))),pt(r=>!!r.length)).subscribe(r=>{this._ngZone.run(()=>{n.next(r)})});return()=>{a.unsubscribe(),this._unobserveElement(i)}})}_observeElement(e){return this._ngZone.runOutsideAngular(()=>{if(this._observedElements.has(e))this._observedElements.get(e).count++;else{let i=new rA,n=this._mutationObserverFactory.create(o=>i.next(o));n&&n.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:n,stream:i,count:1})}return this._observedElements.get(e).stream})}_unobserveElement(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}_cleanupObserver(e){if(this._observedElements.has(e)){let{observer:i,stream:n}=this._observedElements.get(e);i&&i.disconnect(),n.complete(),this._observedElements.delete(e)}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),IY=(()=>{class t{_contentObserver=w(dY);_elementRef=w(dA);event=new Le;get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._disabled?this._unsubscribe():this._subscribe()}_disabled=!1;get debounce(){return this._debounce}set debounce(e){this._debounce=ol(e),this._subscribe()}_debounce;_currentSubscription=null;constructor(){}ngAfterContentInit(){!this._currentSubscription&&!this.disabled&&this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe();let e=this._contentObserver.observe(this._elementRef);this._currentSubscription=(this.debounce?e.pipe(Ws(this.debounce)):e).subscribe(this.event)}_unsubscribe(){this._currentSubscription?.unsubscribe()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:[2,"cdkObserveContentDisabled","disabled",mA],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]})}return t})(),B3=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({providers:[CY]})}return t})();var fB=(()=>{class t{_platform=w(pi);constructor(){}isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return Dge(e)&&getComputedStyle(e).visibility==="visible"}isTabbable(e){if(!this._platform.isBrowser)return!1;let i=vge(Nge(e));if(i&&(BY(i)===-1||!this.isVisible(i)))return!1;let n=e.nodeName.toLowerCase(),o=BY(e);return e.hasAttribute("contenteditable")?o!==-1:n==="iframe"||n==="object"||this._platform.WEBKIT&&this._platform.IOS&&!xge(e)?!1:n==="audio"?e.hasAttribute("controls")?o!==-1:!1:n==="video"?o===-1?!1:o!==null?!0:this._platform.FIREFOX||e.hasAttribute("controls"):e.tabIndex>=0}isFocusable(e,i){return Rge(e)&&!this.isDisabled(e)&&(i?.ignoreVisibility||this.isVisible(e))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function vge(t){try{return t.frameElement}catch(A){return null}}function Dge(t){return!!(t.offsetWidth||t.offsetHeight||typeof t.getClientRects=="function"&&t.getClientRects().length)}function bge(t){let A=t.nodeName.toLowerCase();return A==="input"||A==="select"||A==="button"||A==="textarea"}function Mge(t){return kge(t)&&t.type=="hidden"}function Sge(t){return _ge(t)&&t.hasAttribute("href")}function kge(t){return t.nodeName.toLowerCase()=="input"}function _ge(t){return t.nodeName.toLowerCase()=="a"}function EY(t){if(!t.hasAttribute("tabindex")||t.tabIndex===void 0)return!1;let A=t.getAttribute("tabindex");return!!(A&&!isNaN(parseInt(A,10)))}function BY(t){if(!EY(t))return null;let A=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(A)?-1:A}function xge(t){let A=t.nodeName.toLowerCase(),e=A==="input"&&t.type;return e==="text"||e==="password"||A==="select"||A==="textarea"}function Rge(t){return Mge(t)?!1:bge(t)||Sge(t)||t.hasAttribute("contenteditable")||EY(t)}function Nge(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}var h3=class{_element;_checker;_ngZone;_document;_injector;_startAnchor=null;_endAnchor=null;_hasAttached=!1;startAnchorListener=()=>this.focusLastTabbableElement();endAnchorListener=()=>this.focusFirstTabbableElement();get enabled(){return this._enabled}set enabled(A){this._enabled=A,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(A,this._startAnchor),this._toggleAnchorTabIndex(A,this._endAnchor))}_enabled=!0;constructor(A,e,i,n,o=!1,a){this._element=A,this._checker=e,this._ngZone=i,this._document=n,this._injector=a,o||this.attachAnchors()}destroy(){let A=this._startAnchor,e=this._endAnchor;A&&(A.removeEventListener("focus",this.startAnchorListener),A.remove()),e&&(e.removeEventListener("focus",this.endAnchorListener),e.remove()),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return this._hasAttached?!0:(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(A){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(A)))})}focusFirstTabbableElementWhenReady(A){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(A)))})}focusLastTabbableElementWhenReady(A){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(A)))})}_getRegionBoundary(A){let e=this._element.querySelectorAll(`[cdk-focus-region-${A}], [cdkFocusRegion${A}], [cdk-focus-${A}]`);return A=="start"?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)}focusInitialElement(A){let e=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");if(e){if(!this._checker.isFocusable(e)){let i=this._getFirstTabbableElement(e);return i?.focus(A),!!i}return e.focus(A),!0}return this.focusFirstTabbableElement(A)}focusFirstTabbableElement(A){let e=this._getRegionBoundary("start");return e&&e.focus(A),!!e}focusLastTabbableElement(A){let e=this._getRegionBoundary("end");return e&&e.focus(A),!!e}hasAttached(){return this._hasAttached}_getFirstTabbableElement(A){if(this._checker.isFocusable(A)&&this._checker.isTabbable(A))return A;let e=A.children;for(let i=0;i=0;i--){let n=e[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[i]):null;if(n)return n}return null}_createAnchor(){let A=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,A),A.classList.add("cdk-visually-hidden"),A.classList.add("cdk-focus-trap-anchor"),A.setAttribute("aria-hidden","true"),A}_toggleAnchorTabIndex(A,e){A?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(A){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(A,this._startAnchor),this._toggleAnchorTabIndex(A,this._endAnchor))}_executeOnStable(A){this._injector?ro(A,{injector:this._injector}):setTimeout(A)}},fQ=(()=>{class t{_checker=w(fB);_ngZone=w(At);_document=w(Ii);_injector=w(Rt);constructor(){w(Eo).load(Qd)}create(e,i=!1){return new h3(e,this._checker,this._ngZone,this._document,i,this._injector)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var QY=new Me("liveAnnouncerElement",{providedIn:"root",factory:()=>null}),pY=new Me("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),Fge=0,wQ=(()=>{class t{_ngZone=w(At);_defaultOptions=w(pY,{optional:!0});_liveElement;_document=w(Ii);_sanitizer=w(Bd);_previousTimeout;_currentPromise;_currentResolve;constructor(){let e=w(QY,{optional:!0});this._liveElement=e||this._createLiveElement()}announce(e,...i){let n=this._defaultOptions,o,a;return i.length===1&&typeof i[0]=="number"?a=i[0]:[o,a]=i,this.clear(),clearTimeout(this._previousTimeout),o||(o=n&&n.politeness?n.politeness:"polite"),a==null&&n&&(a=n.duration),this._liveElement.setAttribute("aria-live",o),this._liveElement.id&&this._exposeAnnouncerToModals(this._liveElement.id),this._ngZone.runOutsideAngular(()=>(this._currentPromise||(this._currentPromise=new Promise(r=>this._currentResolve=r)),clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{!e||typeof e=="string"?this._liveElement.textContent=e:lY(this._liveElement,e,this._sanitizer),typeof a=="number"&&(this._previousTimeout=setTimeout(()=>this.clear(),a)),this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0},100),this._currentPromise))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement?.remove(),this._liveElement=null,this._currentResolve?.(),this._currentPromise=this._currentResolve=void 0}_createLiveElement(){let e="cdk-live-announcer-element",i=this._document.getElementsByClassName(e),n=this._document.createElement("div");for(let o=0;o .cdk-overlay-container [aria-modal="true"]');for(let n=0;n{class t{_platform=w(pi);_hasCheckedHighContrastMode=!1;_document=w(Ii);_breakpointSubscription;constructor(){this._breakpointSubscription=w(mQ).observe("(forced-colors: active)").subscribe(()=>{this._hasCheckedHighContrastMode&&(this._hasCheckedHighContrastMode=!1,this._applyBodyHighContrastModeCssClasses())})}getHighContrastMode(){if(!this._platform.isBrowser)return pd.NONE;let e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);let i=this._document.defaultView||window,n=i&&i.getComputedStyle?i.getComputedStyle(e):null,o=(n&&n.backgroundColor||"").replace(/ /g,"");switch(e.remove(),o){case"rgb(0,0,0)":case"rgb(45,50,54)":case"rgb(32,32,32)":return pd.WHITE_ON_BLACK;case"rgb(255,255,255)":case"rgb(255,250,239)":return pd.BLACK_ON_WHITE}return pd.NONE}ngOnDestroy(){this._breakpointSubscription.unsubscribe()}_applyBodyHighContrastModeCssClasses(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){let e=this._document.body.classList;e.remove(bM,hY,uY),this._hasCheckedHighContrastMode=!0;let i=this.getHighContrastMode();i===pd.BLACK_ON_WHITE?e.add(bM,hY):i===pd.WHITE_ON_BLACK&&e.add(bM,uY)}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),yQ=(()=>{class t{constructor(){w(mY)._applyBodyHighContrastModeCssClasses()}static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[B3]})}return t})();var MM={},bn=class t{_appId=w(Gf);static _infix=`a${Math.floor(Math.random()*1e5).toString()}`;getId(A,e=!1){return this._appId!=="ng"&&(A+=this._appId),MM.hasOwnProperty(A)||(MM[A]=0),`${A}${e?t._infix+"-":""}${MM[A]++}`}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var Lge=200,u3=class{_letterKeyStream=new rA;_items=[];_selectedItemIndex=-1;_pressedLetters=[];_skipPredicateFn;_selectedItem=new rA;selectedItem=this._selectedItem;constructor(A,e){let i=typeof e?.debounceInterval=="number"?e.debounceInterval:Lge;e?.skipPredicate&&(this._skipPredicateFn=e.skipPredicate),this.setItems(A),this._setupKeyHandler(i)}destroy(){this._pressedLetters=[],this._letterKeyStream.complete(),this._selectedItem.complete()}setCurrentSelectedItemIndex(A){this._selectedItemIndex=A}setItems(A){this._items=A}handleKey(A){let e=A.keyCode;A.key&&A.key.length===1?this._letterKeyStream.next(A.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))}isTyping(){return this._pressedLetters.length>0}reset(){this._pressedLetters=[]}_setupKeyHandler(A){this._letterKeyStream.pipe(yi(e=>this._pressedLetters.push(e)),Ws(A),pt(()=>this._pressedLetters.length>0),xA(()=>this._pressedLetters.join("").toLocaleUpperCase())).subscribe(e=>{for(let i=1;it[e]):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}var wB=class{_items;_activeItemIndex=fe(-1);_activeItem=fe(null);_wrap=!1;_typeaheadSubscription=zo.EMPTY;_itemChangesSubscription;_vertical=!0;_horizontal=null;_allowedModifierKeys=[];_homeAndEnd=!1;_pageUpAndDown={enabled:!1,delta:10};_effectRef;_typeahead;_skipPredicateFn=A=>A.disabled;constructor(A,e){this._items=A,A instanceof Vc?this._itemChangesSubscription=A.changes.subscribe(i=>this._itemsChanged(i.toArray())):nI(A)&&(this._effectRef=Ln(()=>this._itemsChanged(A()),{injector:e}))}tabOut=new rA;change=new rA;skipPredicate(A){return this._skipPredicateFn=A,this}withWrap(A=!0){return this._wrap=A,this}withVerticalOrientation(A=!0){return this._vertical=A,this}withHorizontalOrientation(A){return this._horizontal=A,this}withAllowedModifierKeys(A){return this._allowedModifierKeys=A,this}withTypeAhead(A=200){this._typeaheadSubscription.unsubscribe();let e=this._getItemsArray();return this._typeahead=new u3(e,{debounceInterval:typeof A=="number"?A:void 0,skipPredicate:i=>this._skipPredicateFn(i)}),this._typeaheadSubscription=this._typeahead.selectedItem.subscribe(i=>{this.setActiveItem(i)}),this}cancelTypeahead(){return this._typeahead?.reset(),this}withHomeAndEnd(A=!0){return this._homeAndEnd=A,this}withPageUpDown(A=!0,e=10){return this._pageUpAndDown={enabled:A,delta:e},this}setActiveItem(A){let e=this._activeItem();this.updateActiveItem(A),this._activeItem()!==e&&this.change.next(this._activeItemIndex())}onKeydown(A){let e=A.keyCode,n=["altKey","ctrlKey","metaKey","shiftKey"].every(o=>!A[o]||this._allowedModifierKeys.indexOf(o)>-1);switch(e){case 9:this.tabOut.next();return;case 40:if(this._vertical&&n){this.setNextItemActive();break}else return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}else return;case 39:if(this._horizontal&&n){this._horizontal==="rtl"?this.setPreviousItemActive():this.setNextItemActive();break}else return;case 37:if(this._horizontal&&n){this._horizontal==="rtl"?this.setNextItemActive():this.setPreviousItemActive();break}else return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}else return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}else return;case 33:if(this._pageUpAndDown.enabled&&n){let o=this._activeItemIndex()-this._pageUpAndDown.delta;this._setActiveItemByIndex(o>0?o:0,1);break}else return;case 34:if(this._pageUpAndDown.enabled&&n){let o=this._activeItemIndex()+this._pageUpAndDown.delta,a=this._getItemsArray().length;this._setActiveItemByIndex(o-1&&i!==this._activeItemIndex()&&(this._activeItemIndex.set(i),this._typeahead?.setCurrentSelectedItemIndex(i))}}};var vQ=class extends wB{setActiveItem(A){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(A),this.activeItem&&this.activeItem.setActiveStyles()}};var rC=class extends wB{_origin="program";setFocusOrigin(A){return this._origin=A,this}setActiveItem(A){super.setActiveItem(A),this.activeItem&&this.activeItem.focus(this._origin)}};var yY=" ";function _M(t,A,e){let i=Q3(t,A);e=e.trim(),!i.some(n=>n.trim()===e)&&(i.push(e),t.setAttribute(A,i.join(yY)))}function p3(t,A,e){let i=Q3(t,A);e=e.trim();let n=i.filter(o=>o!==e);n.length?t.setAttribute(A,n.join(yY)):t.removeAttribute(A)}function Q3(t,A){return t.getAttribute(A)?.match(/\S+/g)??[]}var vY="cdk-describedby-message",E3="cdk-describedby-host",kM=0,DY=(()=>{class t{_platform=w(pi);_document=w(Ii);_messageRegistry=new Map;_messagesContainer=null;_id=`${kM++}`;constructor(){w(Eo).load(Qd),this._id=w(Gf)+"-"+kM++}describe(e,i,n){if(!this._canBeDescribed(e,i))return;let o=SM(i,n);typeof i!="string"?(wY(i,this._id),this._messageRegistry.set(o,{messageElement:i,referenceCount:0})):this._messageRegistry.has(o)||this._createMessageElement(i,n),this._isElementDescribedByMessage(e,o)||this._addMessageReference(e,o)}removeDescription(e,i,n){if(!i||!this._isElementNode(e))return;let o=SM(i,n);if(this._isElementDescribedByMessage(e,o)&&this._removeMessageReference(e,o),typeof i=="string"){let a=this._messageRegistry.get(o);a&&a.referenceCount===0&&this._deleteMessageElement(o)}this._messagesContainer?.childNodes.length===0&&(this._messagesContainer.remove(),this._messagesContainer=null)}ngOnDestroy(){let e=this._document.querySelectorAll(`[${E3}="${this._id}"]`);for(let i=0;in.indexOf(vY)!=0);e.setAttribute("aria-describedby",i.join(" "))}_addMessageReference(e,i){let n=this._messageRegistry.get(i);_M(e,"aria-describedby",n.messageElement.id),e.setAttribute(E3,this._id),n.referenceCount++}_removeMessageReference(e,i){let n=this._messageRegistry.get(i);n.referenceCount--,p3(e,"aria-describedby",n.messageElement.id),e.removeAttribute(E3)}_isElementDescribedByMessage(e,i){let n=Q3(e,"aria-describedby"),o=this._messageRegistry.get(i),a=o&&o.messageElement.id;return!!a&&n.indexOf(a)!=-1}_canBeDescribed(e,i){if(!this._isElementNode(e))return!1;if(i&&typeof i=="object")return!0;let n=i==null?"":`${i}`.trim(),o=e.getAttribute("aria-label");return n?!o||o.trim()!==n:!1}_isElementNode(e){return e.nodeType===this._document.ELEMENT_NODE}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function SM(t,A){return typeof t=="string"?`${A||""}/${t}`:t}function wY(t,A){t.id||(t.id=`${vY}-${A}-${kM++}`)}var Wc=(function(t){return t[t.NORMAL=0]="NORMAL",t[t.NEGATED=1]="NEGATED",t[t.INVERTED=2]="INVERTED",t})(Wc||{}),m3,uI;function f3(){if(uI==null){if(typeof document!="object"||!document||typeof Element!="function"||!Element)return uI=!1,uI;if(document.documentElement?.style&&"scrollBehavior"in document.documentElement.style)uI=!0;else{let t=Element.prototype.scrollTo;t?uI=!/\{\s*\[native code\]\s*\}/.test(t.toString()):uI=!1}}return uI}function yB(){if(typeof document!="object"||!document)return Wc.NORMAL;if(m3==null){let t=document.createElement("div"),A=t.style;t.dir="rtl",A.width="1px",A.overflow="auto",A.visibility="hidden",A.pointerEvents="none",A.position="absolute";let e=document.createElement("div"),i=e.style;i.width="2px",i.height="1px",t.appendChild(e),document.body.appendChild(t),m3=Wc.NORMAL,t.scrollLeft===0&&(t.scrollLeft=1,m3=t.scrollLeft===0?Wc.NEGATED:Wc.INVERTED),t.remove()}return m3}function xM(){return typeof __karma__<"u"&&!!__karma__||typeof jasmine<"u"&&!!jasmine||typeof jest<"u"&&!!jest||typeof Mocha<"u"&&!!Mocha}var vB,bY=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function RM(){if(vB)return vB;if(typeof document!="object"||!document)return vB=new Set(bY),vB;let t=document.createElement("input");return vB=new Set(bY.filter(A=>(t.setAttribute("type",A),t.type===A))),vB}var MY={XSmall:"(max-width: 599.98px)",Small:"(min-width: 600px) and (max-width: 959.98px)",Medium:"(min-width: 960px) and (max-width: 1279.98px)",Large:"(min-width: 1280px) and (max-width: 1919.98px)",XLarge:"(min-width: 1920px)",Handset:"(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)",Tablet:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait), (min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",Web:"(min-width: 840px) and (orientation: portrait), (min-width: 1280px) and (orientation: landscape)",HandsetPortrait:"(max-width: 599.98px) and (orientation: portrait)",TabletPortrait:"(min-width: 600px) and (max-width: 839.98px) and (orientation: portrait)",WebPortrait:"(min-width: 840px) and (orientation: portrait)",HandsetLandscape:"(max-width: 959.98px) and (orientation: landscape)",TabletLandscape:"(min-width: 960px) and (max-width: 1279.98px) and (orientation: landscape)",WebLandscape:"(min-width: 1280px) and (orientation: landscape)"};var Kge=new Me("MATERIAL_ANIMATIONS"),SY=null;function DQ(){return w(Kge,{optional:!0})?.animationsDisabled||w(iI,{optional:!0})==="NoopAnimations"?"di-disabled":(SY??=w(mB).matchMedia("(prefers-reduced-motion)").matches,SY?"reduced-motion":"enabled")}function hn(){return DQ()!=="enabled"}function tr(t){return t==null?"":typeof t=="string"?t:`${t}px`}function Lr(t){return t!=null&&`${t}`!="false"}var Gs=(function(t){return t[t.FADING_IN=0]="FADING_IN",t[t.VISIBLE=1]="VISIBLE",t[t.FADING_OUT=2]="FADING_OUT",t[t.HIDDEN=3]="HIDDEN",t})(Gs||{}),NM=class{_renderer;element;config;_animationForciblyDisabledThroughCss;state=Gs.HIDDEN;constructor(A,e,i,n=!1){this._renderer=A,this.element=e,this.config=i,this._animationForciblyDisabledThroughCss=n}fadeOut(){this._renderer.fadeOutRipple(this)}},kY=QB({passive:!0,capture:!0}),FM=class{_events=new Map;addHandler(A,e,i,n){let o=this._events.get(e);if(o){let a=o.get(i);a?a.add(n):o.set(i,new Set([n]))}else this._events.set(e,new Map([[i,new Set([n])]])),A.runOutsideAngular(()=>{document.addEventListener(e,this._delegateEventHandler,kY)})}removeHandler(A,e,i){let n=this._events.get(A);if(!n)return;let o=n.get(e);o&&(o.delete(i),o.size===0&&n.delete(e),n.size===0&&(this._events.delete(A),document.removeEventListener(A,this._delegateEventHandler,kY)))}_delegateEventHandler=A=>{let e=Xr(A);e&&this._events.get(A.type)?.forEach((i,n)=>{(n===e||n.contains(e))&&i.forEach(o=>o.handleEvent(A))})}},bQ={enterDuration:225,exitDuration:150},Uge=800,_Y=QB({passive:!0,capture:!0}),xY=["mousedown","touchstart"],RY=["mouseup","mouseleave","touchend","touchcancel"],Tge=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["ng-component"]],hostAttrs:["mat-ripple-style-loader",""],decls:0,vars:0,template:function(i,n){},styles:[`.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale3d(0, 0, 0);background-color:var(--mat-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface) 10%, transparent))}@media(forced-colors: active){.mat-ripple-element{display:none}}.cdk-drag-preview .mat-ripple-element,.cdk-drag-placeholder .mat-ripple-element{display:none} +`],encapsulation:2,changeDetection:0})}return t})(),MQ=class t{_target;_ngZone;_platform;_containerElement;_triggerElement=null;_isPointerDown=!1;_activeRipples=new Map;_mostRecentTransientRipple=null;_lastTouchStartEvent;_pointerUpEventsRegistered=!1;_containerRect=null;static _eventManager=new FM;constructor(A,e,i,n,o){this._target=A,this._ngZone=e,this._platform=n,n.isBrowser&&(this._containerElement=Ls(i)),o&&o.get(Eo).load(Tge)}fadeInRipple(A,e,i={}){let n=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),o=Y(Y({},bQ),i.animation);i.centered&&(A=n.left+n.width/2,e=n.top+n.height/2);let a=i.radius||Oge(A,e,n),r=A-n.left,s=e-n.top,l=o.enterDuration,c=document.createElement("div");c.classList.add("mat-ripple-element"),c.style.left=`${r-a}px`,c.style.top=`${s-a}px`,c.style.height=`${a*2}px`,c.style.width=`${a*2}px`,i.color!=null&&(c.style.backgroundColor=i.color),c.style.transitionDuration=`${l}ms`,this._containerElement.appendChild(c);let C=window.getComputedStyle(c),d=C.transitionProperty,B=C.transitionDuration,E=d==="none"||B==="0s"||B==="0s, 0s"||n.width===0&&n.height===0,u=new NM(this,c,i,E);c.style.transform="scale3d(1, 1, 1)",u.state=Gs.FADING_IN,i.persistent||(this._mostRecentTransientRipple=u);let m=null;return!E&&(l||o.exitDuration)&&this._ngZone.runOutsideAngular(()=>{let f=()=>{m&&(m.fallbackTimer=null),clearTimeout(S),this._finishRippleTransition(u)},D=()=>this._destroyRipple(u),S=setTimeout(D,l+100);c.addEventListener("transitionend",f),c.addEventListener("transitioncancel",D),m={onTransitionEnd:f,onTransitionCancel:D,fallbackTimer:S}}),this._activeRipples.set(u,m),(E||!l)&&this._finishRippleTransition(u),u}fadeOutRipple(A){if(A.state===Gs.FADING_OUT||A.state===Gs.HIDDEN)return;let e=A.element,i=Y(Y({},bQ),A.config.animation);e.style.transitionDuration=`${i.exitDuration}ms`,e.style.opacity="0",A.state=Gs.FADING_OUT,(A._animationForciblyDisabledThroughCss||!i.exitDuration)&&this._finishRippleTransition(A)}fadeOutAll(){this._getActiveRipples().forEach(A=>A.fadeOut())}fadeOutAllNonPersistent(){this._getActiveRipples().forEach(A=>{A.config.persistent||A.fadeOut()})}setupTriggerEvents(A){let e=Ls(A);!this._platform.isBrowser||!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,xY.forEach(i=>{t._eventManager.addHandler(this._ngZone,i,e,this)}))}handleEvent(A){A.type==="mousedown"?this._onMousedown(A):A.type==="touchstart"?this._onTouchStart(A):this._onPointerUp(),this._pointerUpEventsRegistered||(this._ngZone.runOutsideAngular(()=>{RY.forEach(e=>{this._triggerElement.addEventListener(e,this,_Y)})}),this._pointerUpEventsRegistered=!0)}_finishRippleTransition(A){A.state===Gs.FADING_IN?this._startFadeOutTransition(A):A.state===Gs.FADING_OUT&&this._destroyRipple(A)}_startFadeOutTransition(A){let e=A===this._mostRecentTransientRipple,{persistent:i}=A.config;A.state=Gs.VISIBLE,!i&&(!e||!this._isPointerDown)&&A.fadeOut()}_destroyRipple(A){let e=this._activeRipples.get(A)??null;this._activeRipples.delete(A),this._activeRipples.size||(this._containerRect=null),A===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),A.state=Gs.HIDDEN,e!==null&&(A.element.removeEventListener("transitionend",e.onTransitionEnd),A.element.removeEventListener("transitioncancel",e.onTransitionCancel),e.fallbackTimer!==null&&clearTimeout(e.fallbackTimer)),A.element.remove()}_onMousedown(A){let e=lI(A),i=this._lastTouchStartEvent&&Date.now(){let e=A.state===Gs.VISIBLE||A.config.terminateOnPointerUp&&A.state===Gs.FADING_IN;!A.config.persistent&&e&&A.fadeOut()}))}_getActiveRipples(){return Array.from(this._activeRipples.keys())}_removeTriggerEvents(){let A=this._triggerElement;A&&(xY.forEach(e=>t._eventManager.removeHandler(e,A,this)),this._pointerUpEventsRegistered&&(RY.forEach(e=>A.removeEventListener(e,this,_Y)),this._pointerUpEventsRegistered=!1))}};function Oge(t,A,e){let i=Math.max(Math.abs(t-e.left),Math.abs(t-e.right)),n=Math.max(Math.abs(A-e.top),Math.abs(A-e.bottom));return Math.sqrt(i*i+n*n)}var md=new Me("mat-ripple-global-options"),Es=(()=>{class t{_elementRef=w(dA);_animationsDisabled=hn();color;unbounded=!1;centered=!1;radius=0;animation;get disabled(){return this._disabled}set disabled(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}_disabled=!1;get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}_trigger;_rippleRenderer;_globalOptions;_isInitialized=!1;constructor(){let e=w(At),i=w(pi),n=w(md,{optional:!0}),o=w(Rt);this._globalOptions=n||{},this._rippleRenderer=new MQ(this,e,this._elementRef,i,o)}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Y(Y(Y({},this._globalOptions.animation),this._animationsDisabled?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(e,i=0,n){return typeof e=="number"?this._rippleRenderer.fadeInRipple(e,i,Y(Y({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Y(Y({},this.rippleConfig),e))}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(i,n){i&2&&_e("mat-ripple-unbounded",n.unbounded)},inputs:{color:[0,"matRippleColor","color"],unbounded:[0,"matRippleUnbounded","unbounded"],centered:[0,"matRippleCentered","centered"],radius:[0,"matRippleRadius","radius"],animation:[0,"matRippleAnimation","animation"],disabled:[0,"matRippleDisabled","disabled"],trigger:[0,"matRippleTrigger","trigger"]},exportAs:["matRipple"]})}return t})();var Jge={capture:!0},zge=["focus","mousedown","mouseenter","touchstart"],LM="mat-ripple-loader-uninitialized",GM="mat-ripple-loader-class-name",NY="mat-ripple-loader-centered",w3="mat-ripple-loader-disabled",y3=(()=>{class t{_document=w(Ii);_animationsDisabled=hn();_globalRippleOptions=w(md,{optional:!0});_platform=w(pi);_ngZone=w(At);_injector=w(Rt);_eventCleanups;_hosts=new Map;constructor(){let e=w(Wr).createRenderer(null,null);this._eventCleanups=this._ngZone.runOutsideAngular(()=>zge.map(i=>e.listen(this._document,i,this._onInteraction,Jge)))}ngOnDestroy(){let e=this._hosts.keys();for(let i of e)this.destroyRipple(i);this._eventCleanups.forEach(i=>i())}configureRipple(e,i){e.setAttribute(LM,this._globalRippleOptions?.namespace??""),(i.className||!e.hasAttribute(GM))&&e.setAttribute(GM,i.className||""),i.centered&&e.setAttribute(NY,""),i.disabled&&e.setAttribute(w3,"")}setDisabled(e,i){let n=this._hosts.get(e);n?(n.target.rippleDisabled=i,!i&&!n.hasSetUpEvents&&(n.hasSetUpEvents=!0,n.renderer.setupTriggerEvents(e))):i?e.setAttribute(w3,""):e.removeAttribute(w3)}_onInteraction=e=>{let i=Xr(e);if(i instanceof HTMLElement){let n=i.closest(`[${LM}="${this._globalRippleOptions?.namespace??""}"]`);n&&this._createRipple(n)}};_createRipple(e){if(!this._document||this._hosts.has(e))return;e.querySelector(".mat-ripple")?.remove();let i=this._document.createElement("span");i.classList.add("mat-ripple",e.getAttribute(GM)),e.append(i);let n=this._globalRippleOptions,o=this._animationsDisabled?0:n?.animation?.enterDuration??bQ.enterDuration,a=this._animationsDisabled?0:n?.animation?.exitDuration??bQ.exitDuration,r={rippleDisabled:this._animationsDisabled||n?.disabled||e.hasAttribute(w3),rippleConfig:{centered:e.hasAttribute(NY),terminateOnPointerUp:n?.terminateOnPointerUp,animation:{enterDuration:o,exitDuration:a}}},s=new MQ(r,this._ngZone,i,this._platform,this._injector),l=!r.rippleDisabled;l&&s.setupTriggerEvents(e),this._hosts.set(e,{target:r,renderer:s,hasSetUpEvents:l}),e.removeAttribute(LM)}destroyRipple(e){let i=this._hosts.get(e);i&&(i.renderer._removeTriggerEvents(),this._hosts.delete(e))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var yr=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["structural-styles"]],decls:0,vars:0,template:function(i,n){},styles:[`.mat-focus-indicator{position:relative}.mat-focus-indicator::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;display:var(--mat-focus-indicator-display, none);border-width:var(--mat-focus-indicator-border-width, 3px);border-style:var(--mat-focus-indicator-border-style, solid);border-color:var(--mat-focus-indicator-border-color, transparent);border-radius:var(--mat-focus-indicator-border-radius, 4px)}.mat-focus-indicator:focus-visible::before{content:""}@media(forced-colors: active){html{--mat-focus-indicator-display: block}} +`],encapsulation:2,changeDetection:0})}return t})();var Yge=["mat-icon-button",""],Hge=["*"],Pge=new Me("MAT_BUTTON_CONFIG");function FY(t){return t==null?void 0:Dn(t)}var KM=(()=>{class t{_elementRef=w(dA);_ngZone=w(At);_animationsDisabled=hn();_config=w(Pge,{optional:!0});_focusMonitor=w(dr);_cleanupClick;_renderer=w(rn);_rippleLoader=w(y3);_isAnchor;_isFab=!1;color;get disableRipple(){return this._disableRipple}set disableRipple(e){this._disableRipple=e,this._updateRippleDisabled()}_disableRipple=!1;get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._updateRippleDisabled()}_disabled=!1;ariaDisabled;disabledInteractive;tabIndex;set _tabindex(e){this.tabIndex=e}constructor(){w(Eo).load(yr);let e=this._elementRef.nativeElement;this._isAnchor=e.tagName==="A",this.disabledInteractive=this._config?.disabledInteractive??!1,this.color=this._config?.color??null,this._rippleLoader?.configureRipple(e,{className:"mat-mdc-button-ripple"})}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0),this._isAnchor&&this._setupAsAnchor()}ngOnDestroy(){this._cleanupClick?.(),this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement)}focus(e="program",i){e?this._focusMonitor.focusVia(this._elementRef.nativeElement,e,i):this._elementRef.nativeElement.focus(i)}_getAriaDisabled(){return this.ariaDisabled!=null?this.ariaDisabled:this._isAnchor?this.disabled||null:this.disabled&&this.disabledInteractive?!0:null}_getDisabledAttribute(){return this.disabledInteractive||!this.disabled?null:!0}_updateRippleDisabled(){this._rippleLoader?.setDisabled(this._elementRef.nativeElement,this.disableRipple||this.disabled)}_getTabIndex(){return this._isAnchor?this.disabled&&!this.disabledInteractive?-1:this.tabIndex:this.tabIndex}_setupAsAnchor(){this._cleanupClick=this._ngZone.runOutsideAngular(()=>this._renderer.listen(this._elementRef.nativeElement,"click",e=>{this.disabled&&(e.preventDefault(),e.stopImmediatePropagation())}))}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,hostAttrs:[1,"mat-mdc-button-base"],hostVars:13,hostBindings:function(i,n){i&2&&(aA("disabled",n._getDisabledAttribute())("aria-disabled",n._getAriaDisabled())("tabindex",n._getTabIndex()),Ao(n.color?"mat-"+n.color:""),_e("mat-mdc-button-disabled",n.disabled)("mat-mdc-button-disabled-interactive",n.disabledInteractive)("mat-unthemed",!n.color)("_mat-animation-noopable",n._animationsDisabled))},inputs:{color:"color",disableRipple:[2,"disableRipple","disableRipple",mA],disabled:[2,"disabled","disabled",mA],ariaDisabled:[2,"aria-disabled","ariaDisabled",mA],disabledInteractive:[2,"disabledInteractive","disabledInteractive",mA],tabIndex:[2,"tabIndex","tabIndex",FY],_tabindex:[2,"tabindex","_tabindex",FY]}})}return t})(),Di=(()=>{class t extends KM{constructor(){super(),this._rippleLoader.configureRipple(this._elementRef.nativeElement,{centered:!0})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["button","mat-icon-button",""],["a","mat-icon-button",""],["button","matIconButton",""],["a","matIconButton",""]],hostAttrs:[1,"mdc-icon-button","mat-mdc-icon-button"],exportAs:["matButton","matAnchor"],features:[_t],attrs:Yge,ngContentSelectors:Hge,decls:4,vars:0,consts:[[1,"mat-mdc-button-persistent-ripple","mdc-icon-button__ripple"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(i,n){i&1&&(Yt(),eo(0,"span",0),tt(1),eo(2,"span",1)(3,"span",2))},styles:[`.mat-mdc-icon-button{-webkit-user-select:none;user-select:none;display:inline-block;position:relative;box-sizing:border-box;border:none;outline:none;background-color:rgba(0,0,0,0);fill:currentColor;text-decoration:none;cursor:pointer;z-index:0;overflow:visible;border-radius:var(--mat-icon-button-container-shape, var(--mat-sys-corner-full, 50%));flex-shrink:0;text-align:center;width:var(--mat-icon-button-state-layer-size, 40px);height:var(--mat-icon-button-state-layer-size, 40px);padding:calc(calc(var(--mat-icon-button-state-layer-size, 40px) - var(--mat-icon-button-icon-size, 24px)) / 2);font-size:var(--mat-icon-button-icon-size, 24px);color:var(--mat-icon-button-icon-color, var(--mat-sys-on-surface-variant));-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-icon-button .mat-mdc-button-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple,.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-icon-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-icon-button .mdc-button__label,.mat-mdc-icon-button .mat-icon{z-index:1;position:relative}.mat-mdc-icon-button .mat-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit}.mat-mdc-icon-button:focus-visible>.mat-focus-indicator::before{content:"";border-radius:inherit}.mat-mdc-icon-button .mat-ripple-element{background-color:var(--mat-icon-button-ripple-color, color-mix(in srgb, var(--mat-sys-on-surface-variant) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-icon-button-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-icon-button-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-icon-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-icon-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-icon-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-icon-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-icon-button-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-icon-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-icon-button-touch-target-size, 48px);display:var(--mat-icon-button-touch-target-display, block);left:50%;width:var(--mat-icon-button-touch-target-size, 48px);transform:translate(-50%, -50%)}.mat-mdc-icon-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-icon-button[disabled],.mat-mdc-icon-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-icon-button-disabled-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-icon-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-icon-button img,.mat-mdc-icon-button svg{width:var(--mat-icon-button-icon-size, 24px);height:var(--mat-icon-button-icon-size, 24px);vertical-align:baseline}.mat-mdc-icon-button .mat-mdc-button-persistent-ripple{border-radius:var(--mat-icon-button-container-shape, var(--mat-sys-corner-full, 50%))}.mat-mdc-icon-button[hidden]{display:none}.mat-mdc-icon-button.mat-unthemed:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-primary:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-accent:not(.mdc-ripple-upgraded):focus::before,.mat-mdc-icon-button.mat-warn:not(.mdc-ripple-upgraded):focus::before{background:rgba(0,0,0,0);opacity:1} +`,`@media(forced-colors: active){.mat-mdc-button:not(.mdc-button--outlined),.mat-mdc-unelevated-button:not(.mdc-button--outlined),.mat-mdc-raised-button:not(.mdc-button--outlined),.mat-mdc-outlined-button:not(.mdc-button--outlined),.mat-mdc-button-base.mat-tonal-button,.mat-mdc-icon-button.mat-mdc-icon-button,.mat-mdc-outlined-button .mdc-button__ripple{outline:solid 1px}} +`],encapsulation:2,changeDetection:0})}return t})();var jge=new Me("cdk-dir-doc",{providedIn:"root",factory:()=>w(Ii)}),Vge=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function LY(t){let A=t?.toLowerCase()||"";return A==="auto"&&typeof navigator<"u"&&navigator?.language?Vge.test(navigator.language)?"rtl":"ltr":A==="rtl"?"rtl":"ltr"}var Fo=(()=>{class t{get value(){return this.valueSignal()}valueSignal=fe("ltr");change=new Le;constructor(){let e=w(jge,{optional:!0});if(e){let i=e.body?e.body.dir:null,n=e.documentElement?e.documentElement.dir:null;this.valueSignal.set(LY(i||n||"ltr"))}}ngOnDestroy(){this.change.complete()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var bi=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({})}return t})();var o0=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();var qge=["matButton",""],Zge=[[["",8,"material-icons",3,"iconPositionEnd",""],["mat-icon",3,"iconPositionEnd",""],["","matButtonIcon","",3,"iconPositionEnd",""]],"*",[["","iconPositionEnd","",8,"material-icons"],["mat-icon","iconPositionEnd",""],["","matButtonIcon","","iconPositionEnd",""]]],Wge=[".material-icons:not([iconPositionEnd]), mat-icon:not([iconPositionEnd]), [matButtonIcon]:not([iconPositionEnd])","*",".material-icons[iconPositionEnd], mat-icon[iconPositionEnd], [matButtonIcon][iconPositionEnd]"];var GY=new Map([["text",["mat-mdc-button"]],["filled",["mdc-button--unelevated","mat-mdc-unelevated-button"]],["elevated",["mdc-button--raised","mat-mdc-raised-button"]],["outlined",["mdc-button--outlined","mat-mdc-outlined-button"]],["tonal",["mat-tonal-button"]]]),xi=(()=>{class t extends KM{get appearance(){return this._appearance}set appearance(e){this.setAppearance(e||this._config?.defaultAppearance||"text")}_appearance=null;constructor(){super();let e=Xge(this._elementRef.nativeElement);e&&this.setAppearance(e)}setAppearance(e){if(e===this._appearance)return;let i=this._elementRef.nativeElement.classList,n=this._appearance?GY.get(this._appearance):null,o=GY.get(e);n&&i.remove(...n),i.add(...o),this._appearance=e}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["button","matButton",""],["a","matButton",""],["button","mat-button",""],["button","mat-raised-button",""],["button","mat-flat-button",""],["button","mat-stroked-button",""],["a","mat-button",""],["a","mat-raised-button",""],["a","mat-flat-button",""],["a","mat-stroked-button",""]],hostAttrs:[1,"mdc-button"],inputs:{appearance:[0,"matButton","appearance"]},exportAs:["matButton","matAnchor"],features:[_t],attrs:qge,ngContentSelectors:Wge,decls:7,vars:4,consts:[[1,"mat-mdc-button-persistent-ripple"],[1,"mdc-button__label"],[1,"mat-focus-indicator"],[1,"mat-mdc-button-touch-target"]],template:function(i,n){i&1&&(Yt(Zge),eo(0,"span",0),tt(1),Gn(2,"span",1),tt(3,1),$n(),tt(4,2),eo(5,"span",2)(6,"span",3)),i&2&&_e("mdc-button__ripple",!n._isFab)("mdc-fab__ripple",n._isFab)},styles:[`.mat-mdc-button-base{text-decoration:none}.mat-mdc-button-base .mat-icon{min-height:fit-content;flex-shrink:0}@media(hover: none){.mat-mdc-button-base:hover>span.mat-mdc-button-persistent-ripple::before{opacity:0}}.mdc-button{-webkit-user-select:none;user-select:none;position:relative;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:64px;border:none;outline:none;line-height:inherit;-webkit-appearance:none;overflow:visible;vertical-align:middle;background:rgba(0,0,0,0);padding:0 8px}.mdc-button::-moz-focus-inner{padding:0;border:0}.mdc-button:active{outline:none}.mdc-button:hover{cursor:pointer}.mdc-button:disabled{cursor:default;pointer-events:none}.mdc-button[hidden]{display:none}.mdc-button .mdc-button__label{position:relative}.mat-mdc-button{padding:0 var(--mat-button-text-horizontal-padding, 12px);height:var(--mat-button-text-container-height, 40px);font-family:var(--mat-button-text-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-text-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-text-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-text-label-text-transform);font-weight:var(--mat-button-text-label-text-weight, var(--mat-sys-label-large-weight))}.mat-mdc-button,.mat-mdc-button .mdc-button__ripple{border-radius:var(--mat-button-text-container-shape, var(--mat-sys-corner-full))}.mat-mdc-button:not(:disabled){color:var(--mat-button-text-label-text-color, var(--mat-sys-primary))}.mat-mdc-button[disabled],.mat-mdc-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-text-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-button:has(.material-icons,mat-icon,[matButtonIcon]){padding:0 var(--mat-button-text-with-icon-horizontal-padding, 16px)}.mat-mdc-button>.mat-icon{margin-right:var(--mat-button-text-icon-spacing, 8px);margin-left:var(--mat-button-text-icon-offset, -4px)}[dir=rtl] .mat-mdc-button>.mat-icon{margin-right:var(--mat-button-text-icon-offset, -4px);margin-left:var(--mat-button-text-icon-spacing, 8px)}.mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-text-icon-offset, -4px);margin-left:var(--mat-button-text-icon-spacing, 8px)}[dir=rtl] .mat-mdc-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-text-icon-spacing, 8px);margin-left:var(--mat-button-text-icon-offset, -4px)}.mat-mdc-button .mat-ripple-element{background-color:var(--mat-button-text-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-text-state-layer-color, var(--mat-sys-primary))}.mat-mdc-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-text-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-text-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-text-touch-target-size, 48px);display:var(--mat-button-text-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-unelevated-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-filled-container-height, 40px);font-family:var(--mat-button-filled-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-filled-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-filled-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-filled-label-text-transform);font-weight:var(--mat-button-filled-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-filled-horizontal-padding, 24px)}.mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-button-filled-icon-spacing, 8px);margin-left:var(--mat-button-filled-icon-offset, -8px)}[dir=rtl] .mat-mdc-unelevated-button>.mat-icon{margin-right:var(--mat-button-filled-icon-offset, -8px);margin-left:var(--mat-button-filled-icon-spacing, 8px)}.mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-filled-icon-offset, -8px);margin-left:var(--mat-button-filled-icon-spacing, 8px)}[dir=rtl] .mat-mdc-unelevated-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-filled-icon-spacing, 8px);margin-left:var(--mat-button-filled-icon-offset, -8px)}.mat-mdc-unelevated-button .mat-ripple-element{background-color:var(--mat-button-filled-ripple-color, color-mix(in srgb, var(--mat-sys-on-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-filled-state-layer-color, var(--mat-sys-on-primary))}.mat-mdc-unelevated-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-filled-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-unelevated-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-unelevated-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-unelevated-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-filled-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-unelevated-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-filled-touch-target-size, 48px);display:var(--mat-button-filled-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-unelevated-button:not(:disabled){color:var(--mat-button-filled-label-text-color, var(--mat-sys-on-primary));background-color:var(--mat-button-filled-container-color, var(--mat-sys-primary))}.mat-mdc-unelevated-button,.mat-mdc-unelevated-button .mdc-button__ripple{border-radius:var(--mat-button-filled-container-shape, var(--mat-sys-corner-full))}.mat-mdc-unelevated-button[disabled],.mat-mdc-unelevated-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-filled-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-filled-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-unelevated-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-raised-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);box-shadow:var(--mat-button-protected-container-elevation-shadow, var(--mat-sys-level1));height:var(--mat-button-protected-container-height, 40px);font-family:var(--mat-button-protected-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-protected-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-protected-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-protected-label-text-transform);font-weight:var(--mat-button-protected-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-protected-horizontal-padding, 24px)}.mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-button-protected-icon-spacing, 8px);margin-left:var(--mat-button-protected-icon-offset, -8px)}[dir=rtl] .mat-mdc-raised-button>.mat-icon{margin-right:var(--mat-button-protected-icon-offset, -8px);margin-left:var(--mat-button-protected-icon-spacing, 8px)}.mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-protected-icon-offset, -8px);margin-left:var(--mat-button-protected-icon-spacing, 8px)}[dir=rtl] .mat-mdc-raised-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-protected-icon-spacing, 8px);margin-left:var(--mat-button-protected-icon-offset, -8px)}.mat-mdc-raised-button .mat-ripple-element{background-color:var(--mat-button-protected-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-protected-state-layer-color, var(--mat-sys-primary))}.mat-mdc-raised-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-protected-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-raised-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-raised-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-raised-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-protected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-raised-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-protected-touch-target-size, 48px);display:var(--mat-button-protected-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-raised-button:not(:disabled){color:var(--mat-button-protected-label-text-color, var(--mat-sys-primary));background-color:var(--mat-button-protected-container-color, var(--mat-sys-surface))}.mat-mdc-raised-button,.mat-mdc-raised-button .mdc-button__ripple{border-radius:var(--mat-button-protected-container-shape, var(--mat-sys-corner-full))}@media(hover: hover){.mat-mdc-raised-button:hover{box-shadow:var(--mat-button-protected-hover-container-elevation-shadow, var(--mat-sys-level2))}}.mat-mdc-raised-button:focus{box-shadow:var(--mat-button-protected-focus-container-elevation-shadow, var(--mat-sys-level1))}.mat-mdc-raised-button:active,.mat-mdc-raised-button:focus:active{box-shadow:var(--mat-button-protected-pressed-container-elevation-shadow, var(--mat-sys-level1))}.mat-mdc-raised-button[disabled],.mat-mdc-raised-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-protected-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-protected-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-raised-button[disabled].mat-mdc-button-disabled,.mat-mdc-raised-button.mat-mdc-button-disabled.mat-mdc-button-disabled{box-shadow:var(--mat-button-protected-disabled-container-elevation-shadow, var(--mat-sys-level0))}.mat-mdc-raised-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-mdc-outlined-button{border-style:solid;transition:border 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-outlined-container-height, 40px);font-family:var(--mat-button-outlined-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-outlined-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-outlined-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-outlined-label-text-transform);font-weight:var(--mat-button-outlined-label-text-weight, var(--mat-sys-label-large-weight));border-radius:var(--mat-button-outlined-container-shape, var(--mat-sys-corner-full));border-width:var(--mat-button-outlined-outline-width, 1px);padding:0 var(--mat-button-outlined-horizontal-padding, 24px)}.mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-button-outlined-icon-spacing, 8px);margin-left:var(--mat-button-outlined-icon-offset, -8px)}[dir=rtl] .mat-mdc-outlined-button>.mat-icon{margin-right:var(--mat-button-outlined-icon-offset, -8px);margin-left:var(--mat-button-outlined-icon-spacing, 8px)}.mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-outlined-icon-offset, -8px);margin-left:var(--mat-button-outlined-icon-spacing, 8px)}[dir=rtl] .mat-mdc-outlined-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-outlined-icon-spacing, 8px);margin-left:var(--mat-button-outlined-icon-offset, -8px)}.mat-mdc-outlined-button .mat-ripple-element{background-color:var(--mat-button-outlined-ripple-color, color-mix(in srgb, var(--mat-sys-primary) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-outlined-state-layer-color, var(--mat-sys-primary))}.mat-mdc-outlined-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-outlined-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-outlined-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-outlined-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-outlined-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-outlined-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-mdc-outlined-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-outlined-touch-target-size, 48px);display:var(--mat-button-outlined-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-outlined-button:not(:disabled){color:var(--mat-button-outlined-label-text-color, var(--mat-sys-primary));border-color:var(--mat-button-outlined-outline-color, var(--mat-sys-outline))}.mat-mdc-outlined-button[disabled],.mat-mdc-outlined-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-outlined-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));border-color:var(--mat-button-outlined-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-outlined-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-tonal-button{transition:box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);height:var(--mat-button-tonal-container-height, 40px);font-family:var(--mat-button-tonal-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-tonal-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-button-tonal-label-text-tracking, var(--mat-sys-label-large-tracking));text-transform:var(--mat-button-tonal-label-text-transform);font-weight:var(--mat-button-tonal-label-text-weight, var(--mat-sys-label-large-weight));padding:0 var(--mat-button-tonal-horizontal-padding, 24px)}.mat-tonal-button:not(:disabled){color:var(--mat-button-tonal-label-text-color, var(--mat-sys-on-secondary-container));background-color:var(--mat-button-tonal-container-color, var(--mat-sys-secondary-container))}.mat-tonal-button,.mat-tonal-button .mdc-button__ripple{border-radius:var(--mat-button-tonal-container-shape, var(--mat-sys-corner-full))}.mat-tonal-button[disabled],.mat-tonal-button.mat-mdc-button-disabled{cursor:default;pointer-events:none;color:var(--mat-button-tonal-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-tonal-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-tonal-button.mat-mdc-button-disabled-interactive{pointer-events:auto}.mat-tonal-button>.mat-icon{margin-right:var(--mat-button-tonal-icon-spacing, 8px);margin-left:var(--mat-button-tonal-icon-offset, -8px)}[dir=rtl] .mat-tonal-button>.mat-icon{margin-right:var(--mat-button-tonal-icon-offset, -8px);margin-left:var(--mat-button-tonal-icon-spacing, 8px)}.mat-tonal-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-tonal-icon-offset, -8px);margin-left:var(--mat-button-tonal-icon-spacing, 8px)}[dir=rtl] .mat-tonal-button .mdc-button__label+.mat-icon{margin-right:var(--mat-button-tonal-icon-spacing, 8px);margin-left:var(--mat-button-tonal-icon-offset, -8px)}.mat-tonal-button .mat-ripple-element{background-color:var(--mat-button-tonal-ripple-color, color-mix(in srgb, var(--mat-sys-on-secondary-container) calc(var(--mat-sys-pressed-state-layer-opacity) * 100%), transparent))}.mat-tonal-button .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-tonal-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-tonal-button.mat-mdc-button-disabled .mat-mdc-button-persistent-ripple::before{background-color:var(--mat-button-tonal-disabled-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-tonal-button:hover>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-tonal-button.cdk-program-focused>.mat-mdc-button-persistent-ripple::before,.mat-tonal-button.cdk-keyboard-focused>.mat-mdc-button-persistent-ripple::before,.mat-tonal-button.mat-mdc-button-disabled-interactive:focus>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-tonal-button:active>.mat-mdc-button-persistent-ripple::before{opacity:var(--mat-button-tonal-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity))}.mat-tonal-button .mat-mdc-button-touch-target{position:absolute;top:50%;height:var(--mat-button-tonal-touch-target-size, 48px);display:var(--mat-button-tonal-touch-target-display, block);left:0;right:0;transform:translateY(-50%)}.mat-mdc-button,.mat-mdc-unelevated-button,.mat-mdc-raised-button,.mat-mdc-outlined-button,.mat-tonal-button{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple,.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before,.mat-tonal-button .mat-mdc-button-ripple,.mat-tonal-button .mat-mdc-button-persistent-ripple,.mat-tonal-button .mat-mdc-button-persistent-ripple::before{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-button .mat-mdc-button-ripple,.mat-mdc-unelevated-button .mat-mdc-button-ripple,.mat-mdc-raised-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-tonal-button .mat-mdc-button-ripple{overflow:hidden}.mat-mdc-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-unelevated-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-raised-button .mat-mdc-button-persistent-ripple::before,.mat-mdc-outlined-button .mat-mdc-button-persistent-ripple::before,.mat-tonal-button .mat-mdc-button-persistent-ripple::before{content:"";opacity:0}.mat-mdc-button .mdc-button__label,.mat-mdc-button .mat-icon,.mat-mdc-unelevated-button .mdc-button__label,.mat-mdc-unelevated-button .mat-icon,.mat-mdc-raised-button .mdc-button__label,.mat-mdc-raised-button .mat-icon,.mat-mdc-outlined-button .mdc-button__label,.mat-mdc-outlined-button .mat-icon,.mat-tonal-button .mdc-button__label,.mat-tonal-button .mat-icon{z-index:1;position:relative}.mat-mdc-button .mat-focus-indicator,.mat-mdc-unelevated-button .mat-focus-indicator,.mat-mdc-raised-button .mat-focus-indicator,.mat-mdc-outlined-button .mat-focus-indicator,.mat-tonal-button .mat-focus-indicator{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit}.mat-mdc-button:focus-visible>.mat-focus-indicator::before,.mat-mdc-unelevated-button:focus-visible>.mat-focus-indicator::before,.mat-mdc-raised-button:focus-visible>.mat-focus-indicator::before,.mat-mdc-outlined-button:focus-visible>.mat-focus-indicator::before,.mat-tonal-button:focus-visible>.mat-focus-indicator::before{content:"";border-radius:inherit}.mat-mdc-button._mat-animation-noopable,.mat-mdc-unelevated-button._mat-animation-noopable,.mat-mdc-raised-button._mat-animation-noopable,.mat-mdc-outlined-button._mat-animation-noopable,.mat-tonal-button._mat-animation-noopable{transition:none !important;animation:none !important}.mat-mdc-button>.mat-icon,.mat-mdc-unelevated-button>.mat-icon,.mat-mdc-raised-button>.mat-icon,.mat-mdc-outlined-button>.mat-icon,.mat-tonal-button>.mat-icon{display:inline-block;position:relative;vertical-align:top;font-size:1.125rem;height:1.125rem;width:1.125rem}.mat-mdc-outlined-button .mat-mdc-button-ripple,.mat-mdc-outlined-button .mdc-button__ripple{top:-1px;left:-1px;bottom:-1px;right:-1px}.mat-mdc-unelevated-button .mat-focus-indicator::before,.mat-tonal-button .mat-focus-indicator::before,.mat-mdc-raised-button .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-outlined-button .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 3px)*-1)} +`,`@media(forced-colors: active){.mat-mdc-button:not(.mdc-button--outlined),.mat-mdc-unelevated-button:not(.mdc-button--outlined),.mat-mdc-raised-button:not(.mdc-button--outlined),.mat-mdc-outlined-button:not(.mdc-button--outlined),.mat-mdc-button-base.mat-tonal-button,.mat-mdc-icon-button.mat-mdc-icon-button,.mat-mdc-outlined-button .mdc-button__ripple{outline:solid 1px}} +`],encapsulation:2,changeDetection:0})}return t})();function Xge(t){return t.hasAttribute("mat-raised-button")?"elevated":t.hasAttribute("mat-stroked-button")?"outlined":t.hasAttribute("mat-flat-button")?"filled":t.hasAttribute("mat-button")?"text":null}var Wi=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[o0,bi]})}return t})();var UM=class{_box;_destroyed=new rA;_resizeSubject=new rA;_resizeObserver;_elementObservables=new Map;constructor(A){this._box=A,typeof ResizeObserver<"u"&&(this._resizeObserver=new ResizeObserver(e=>this._resizeSubject.next(e)))}observe(A){return this._elementObservables.has(A)||this._elementObservables.set(A,new Li(e=>{let i=this._resizeSubject.subscribe(e);return this._resizeObserver?.observe(A,{box:this._box}),()=>{this._resizeObserver?.unobserve(A),i.unsubscribe(),this._elementObservables.delete(A)}}).pipe(pt(e=>e.some(i=>i.target===A)),Xs({bufferSize:1,refCount:!0}),Mt(this._destroyed))),this._elementObservables.get(A)}destroy(){this._destroyed.next(),this._destroyed.complete(),this._resizeSubject.complete(),this._elementObservables.clear()}},v3=(()=>{class t{_cleanupErrorListener;_observers=new Map;_ngZone=w(At);constructor(){typeof ResizeObserver<"u"}ngOnDestroy(){for(let[,e]of this._observers)e.destroy();this._observers.clear(),this._cleanupErrorListener?.()}observe(e,i){let n=i?.box||"content-box";return this._observers.has(n)||this._observers.set(n,new UM(n)),this._observers.get(n).observe(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var $ge=["notch"],e0e=["matFormFieldNotchedOutline",""],A0e=["*"],KY=["iconPrefixContainer"],UY=["textPrefixContainer"],TY=["iconSuffixContainer"],OY=["textSuffixContainer"],t0e=["textField"],i0e=["*",[["mat-label"]],[["","matPrefix",""],["","matIconPrefix",""]],[["","matTextPrefix",""]],[["","matTextSuffix",""]],[["","matSuffix",""],["","matIconSuffix",""]],[["mat-error"],["","matError",""]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],n0e=["*","mat-label","[matPrefix], [matIconPrefix]","[matTextPrefix]","[matTextSuffix]","[matSuffix], [matIconSuffix]","mat-error, [matError]","mat-hint:not([align='end'])","mat-hint[align='end']"];function o0e(t,A){t&1&&le(0,"span",21)}function a0e(t,A){if(t&1&&(I(0,"label",20),tt(1,1),T(2,o0e,1,0,"span",21),h()),t&2){let e=p(2);H("floating",e._shouldLabelFloat())("monitorResize",e._hasOutline())("id",e._labelId),aA("for",e._control.disableAutomaticLabeling?null:e._control.id),Q(2),O(!e.hideRequiredMarker&&e._control.required?2:-1)}}function r0e(t,A){if(t&1&&T(0,a0e,3,5,"label",20),t&2){let e=p();O(e._hasFloatingLabel()?0:-1)}}function s0e(t,A){t&1&&le(0,"div",7)}function l0e(t,A){}function c0e(t,A){if(t&1&&Nt(0,l0e,0,0,"ng-template",13),t&2){p(2);let e=Ei(1);H("ngTemplateOutlet",e)}}function g0e(t,A){if(t&1&&(I(0,"div",9),T(1,c0e,1,1,null,13),h()),t&2){let e=p();H("matFormFieldNotchedOutlineOpen",e._shouldLabelFloat()),Q(),O(e._forceDisplayInfixLabel()?-1:1)}}function C0e(t,A){t&1&&(I(0,"div",10,2),tt(2,2),h())}function d0e(t,A){t&1&&(I(0,"div",11,3),tt(2,3),h())}function I0e(t,A){}function B0e(t,A){if(t&1&&Nt(0,I0e,0,0,"ng-template",13),t&2){p();let e=Ei(1);H("ngTemplateOutlet",e)}}function h0e(t,A){t&1&&(I(0,"div",14,4),tt(2,4),h())}function u0e(t,A){t&1&&(I(0,"div",15,5),tt(2,5),h())}function E0e(t,A){t&1&&le(0,"div",16)}function Q0e(t,A){t&1&&(I(0,"div",18),tt(1,6),h())}function p0e(t,A){if(t&1&&(I(0,"mat-hint",22),v(1),h()),t&2){let e=p(2);H("id",e._hintLabelId),Q(),ne(e.hintLabel)}}function m0e(t,A){if(t&1&&(I(0,"div",19),T(1,p0e,2,2,"mat-hint",22),tt(2,7),le(3,"div",23),tt(4,8),h()),t&2){let e=p();Q(),O(e.hintLabel?1:-1)}}var Ks=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["mat-label"]]})}return t})(),VY=new Me("MatError"),TM=(()=>{class t{id=w(bn).getId("mat-mdc-error-");constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["mat-error"],["","matError",""]],hostAttrs:[1,"mat-mdc-form-field-error","mat-mdc-form-field-bottom-align"],hostVars:1,hostBindings:function(i,n){i&2&&Ra("id",n.id)},inputs:{id:"id"},features:[yt([{provide:VY,useExisting:t}])]})}return t})(),EI=(()=>{class t{align="start";id=w(bn).getId("mat-mdc-hint-");static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["mat-hint"]],hostAttrs:[1,"mat-mdc-form-field-hint","mat-mdc-form-field-bottom-align"],hostVars:4,hostBindings:function(i,n){i&2&&(Ra("id",n.id),aA("align",null),_e("mat-mdc-form-field-hint-end",n.align==="end"))},inputs:{align:"align",id:"id"}})}return t})(),qY=new Me("MatPrefix"),SQ=(()=>{class t{set _isTextSelector(e){this._isText=!0}_isText=!1;static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matPrefix",""],["","matIconPrefix",""],["","matTextPrefix",""]],inputs:{_isTextSelector:[0,"matTextPrefix","_isTextSelector"]},features:[yt([{provide:qY,useExisting:t}])]})}return t})(),ZY=new Me("MatSuffix"),OM=(()=>{class t{set _isTextSelector(e){this._isText=!0}_isText=!1;static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matSuffix",""],["","matIconSuffix",""],["","matTextSuffix",""]],inputs:{_isTextSelector:[0,"matTextSuffix","_isTextSelector"]},features:[yt([{provide:ZY,useExisting:t}])]})}return t})(),WY=new Me("FloatingLabelParent"),JY=(()=>{class t{_elementRef=w(dA);get floating(){return this._floating}set floating(e){this._floating=e,this.monitorResize&&this._handleResize()}_floating=!1;get monitorResize(){return this._monitorResize}set monitorResize(e){this._monitorResize=e,this._monitorResize?this._subscribeToResize():this._resizeSubscription.unsubscribe()}_monitorResize=!1;_resizeObserver=w(v3);_ngZone=w(At);_parent=w(WY);_resizeSubscription=new zo;constructor(){}ngOnDestroy(){this._resizeSubscription.unsubscribe()}getWidth(){return f0e(this._elementRef.nativeElement)}get element(){return this._elementRef.nativeElement}_handleResize(){setTimeout(()=>this._parent._handleLabelResized())}_subscribeToResize(){this._resizeSubscription.unsubscribe(),this._ngZone.runOutsideAngular(()=>{this._resizeSubscription=this._resizeObserver.observe(this._elementRef.nativeElement,{box:"border-box"}).subscribe(()=>this._handleResize())})}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["label","matFormFieldFloatingLabel",""]],hostAttrs:[1,"mdc-floating-label","mat-mdc-floating-label"],hostVars:2,hostBindings:function(i,n){i&2&&_e("mdc-floating-label--float-above",n.floating)},inputs:{floating:"floating",monitorResize:"monitorResize"}})}return t})();function f0e(t){let A=t;if(A.offsetParent!==null)return A.scrollWidth;let e=A.cloneNode(!0);e.style.setProperty("position","absolute"),e.style.setProperty("transform","translate(-9999px, -9999px)"),document.documentElement.appendChild(e);let i=e.scrollWidth;return e.remove(),i}var zY="mdc-line-ripple--active",D3="mdc-line-ripple--deactivating",YY=(()=>{class t{_elementRef=w(dA);_cleanupTransitionEnd;constructor(){let e=w(At),i=w(rn);e.runOutsideAngular(()=>{this._cleanupTransitionEnd=i.listen(this._elementRef.nativeElement,"transitionend",this._handleTransitionEnd)})}activate(){let e=this._elementRef.nativeElement.classList;e.remove(D3),e.add(zY)}deactivate(){this._elementRef.nativeElement.classList.add(D3)}_handleTransitionEnd=e=>{let i=this._elementRef.nativeElement.classList,n=i.contains(D3);e.propertyName==="opacity"&&n&&i.remove(zY,D3)};ngOnDestroy(){this._cleanupTransitionEnd()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["div","matFormFieldLineRipple",""]],hostAttrs:[1,"mdc-line-ripple"]})}return t})(),HY=(()=>{class t{_elementRef=w(dA);_ngZone=w(At);open=!1;_notch;ngAfterViewInit(){let e=this._elementRef.nativeElement,i=e.querySelector(".mdc-floating-label");i?(e.classList.add("mdc-notched-outline--upgraded"),typeof requestAnimationFrame=="function"&&(i.style.transitionDuration="0s",this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>i.style.transitionDuration="")}))):e.classList.add("mdc-notched-outline--no-label")}_setNotchWidth(e){let i=this._notch.nativeElement;!this.open||!e?i.style.width="":i.style.width=`calc(${e}px * var(--mat-mdc-form-field-floating-label-scale, 0.75) + 9px)`}_setMaxWidth(e){this._notch.nativeElement.style.setProperty("--mat-form-field-notch-max-width",`calc(100% - ${e}px)`)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["div","matFormFieldNotchedOutline",""]],viewQuery:function(i,n){if(i&1&&$t($ge,5),i&2){let o;cA(o=gA())&&(n._notch=o.first)}},hostAttrs:[1,"mdc-notched-outline"],hostVars:2,hostBindings:function(i,n){i&2&&_e("mdc-notched-outline--notched",n.open)},inputs:{open:[0,"matFormFieldNotchedOutlineOpen","open"]},attrs:e0e,ngContentSelectors:A0e,decls:5,vars:0,consts:[["notch",""],[1,"mat-mdc-notch-piece","mdc-notched-outline__leading"],[1,"mat-mdc-notch-piece","mdc-notched-outline__notch"],[1,"mat-mdc-notch-piece","mdc-notched-outline__trailing"]],template:function(i,n){i&1&&(Yt(),eo(0,"div",1),Gn(1,"div",2,0),tt(3),$n(),eo(4,"div",3))},encapsulation:2,changeDetection:0})}return t})(),kQ=(()=>{class t{value=null;stateChanges;id;placeholder;ngControl=null;focused=!1;empty=!1;shouldLabelFloat=!1;required=!1;disabled=!1;errorState=!1;controlType;autofilled;userAriaDescribedBy;disableAutomaticLabeling;describedByIds;static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t})}return t})();var _Q=new Me("MatFormField"),w0e=new Me("MAT_FORM_FIELD_DEFAULT_OPTIONS"),PY="fill",y0e="auto",jY="fixed",v0e="translateY(-50%)",$o=(()=>{class t{_elementRef=w(dA);_changeDetectorRef=w(xt);_platform=w(pi);_idGenerator=w(bn);_ngZone=w(At);_defaults=w(w0e,{optional:!0});_currentDirection;_textField;_iconPrefixContainer;_textPrefixContainer;_iconSuffixContainer;_textSuffixContainer;_floatingLabel;_notchedOutline;_lineRipple;_iconPrefixContainerSignal=Ho("iconPrefixContainer");_textPrefixContainerSignal=Ho("textPrefixContainer");_iconSuffixContainerSignal=Ho("iconSuffixContainer");_textSuffixContainerSignal=Ho("textSuffixContainer");_prefixSuffixContainers=DA(()=>[this._iconPrefixContainerSignal(),this._textPrefixContainerSignal(),this._iconSuffixContainerSignal(),this._textSuffixContainerSignal()].map(e=>e?.nativeElement).filter(e=>e!==void 0));_formFieldControl;_prefixChildren;_suffixChildren;_errorChildren;_hintChildren;_labelChild=nC(Ks);get hideRequiredMarker(){return this._hideRequiredMarker}set hideRequiredMarker(e){this._hideRequiredMarker=Lr(e)}_hideRequiredMarker=!1;color="primary";get floatLabel(){return this._floatLabel||this._defaults?.floatLabel||y0e}set floatLabel(e){e!==this._floatLabel&&(this._floatLabel=e,this._changeDetectorRef.markForCheck())}_floatLabel;get appearance(){return this._appearanceSignal()}set appearance(e){let i=e||this._defaults?.appearance||PY;this._appearanceSignal.set(i)}_appearanceSignal=fe(PY);get subscriptSizing(){return this._subscriptSizing||this._defaults?.subscriptSizing||jY}set subscriptSizing(e){this._subscriptSizing=e||this._defaults?.subscriptSizing||jY}_subscriptSizing=null;get hintLabel(){return this._hintLabel}set hintLabel(e){this._hintLabel=e,this._processHints()}_hintLabel="";_hasIconPrefix=!1;_hasTextPrefix=!1;_hasIconSuffix=!1;_hasTextSuffix=!1;_labelId=this._idGenerator.getId("mat-mdc-form-field-label-");_hintLabelId=this._idGenerator.getId("mat-mdc-hint-");_describedByIds;get _control(){return this._explicitFormFieldControl||this._formFieldControl}set _control(e){this._explicitFormFieldControl=e}_destroyed=new rA;_isFocused=null;_explicitFormFieldControl;_previousControl=null;_previousControlValidatorFn=null;_stateChanges;_valueChanges;_describedByChanges;_outlineLabelOffsetResizeObserver=null;_animationsDisabled=hn();constructor(){let e=this._defaults,i=w(Fo);e&&(e.appearance&&(this.appearance=e.appearance),this._hideRequiredMarker=!!e?.hideRequiredMarker,e.color&&(this.color=e.color)),Ln(()=>this._currentDirection=i.valueSignal()),this._syncOutlineLabelOffset()}ngAfterViewInit(){this._updateFocusState(),this._animationsDisabled||this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-form-field-animations-enabled")},300)}),this._changeDetectorRef.detectChanges()}ngAfterContentInit(){this._assertFormFieldControl(),this._initializeSubscript(),this._initializePrefixAndSuffix()}ngAfterContentChecked(){this._assertFormFieldControl(),this._control!==this._previousControl&&(this._initializeControl(this._previousControl),this._control.ngControl&&this._control.ngControl.control&&(this._previousControlValidatorFn=this._control.ngControl.control.validator),this._previousControl=this._control),this._control.ngControl&&this._control.ngControl.control&&this._control.ngControl.control.validator!==this._previousControlValidatorFn&&this._changeDetectorRef.markForCheck()}ngOnDestroy(){this._outlineLabelOffsetResizeObserver?.disconnect(),this._stateChanges?.unsubscribe(),this._valueChanges?.unsubscribe(),this._describedByChanges?.unsubscribe(),this._destroyed.next(),this._destroyed.complete()}getLabelId=DA(()=>this._hasFloatingLabel()?this._labelId:null);getConnectedOverlayOrigin(){return this._textField||this._elementRef}_animateAndLockLabel(){this._hasFloatingLabel()&&(this.floatLabel="always")}_initializeControl(e){let i=this._control,n="mat-mdc-form-field-type-";e&&this._elementRef.nativeElement.classList.remove(n+e.controlType),i.controlType&&this._elementRef.nativeElement.classList.add(n+i.controlType),this._stateChanges?.unsubscribe(),this._stateChanges=i.stateChanges.subscribe(()=>{this._updateFocusState(),this._changeDetectorRef.markForCheck()}),this._describedByChanges?.unsubscribe(),this._describedByChanges=i.stateChanges.pipe(Yn([void 0,void 0]),xA(()=>[i.errorState,i.userAriaDescribedBy]),gd(),pt(([[o,a],[r,s]])=>o!==r||a!==s)).subscribe(()=>this._syncDescribedByIds()),this._valueChanges?.unsubscribe(),i.ngControl&&i.ngControl.valueChanges&&(this._valueChanges=i.ngControl.valueChanges.pipe(Mt(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()))}_checkPrefixAndSuffixTypes(){this._hasIconPrefix=!!this._prefixChildren.find(e=>!e._isText),this._hasTextPrefix=!!this._prefixChildren.find(e=>e._isText),this._hasIconSuffix=!!this._suffixChildren.find(e=>!e._isText),this._hasTextSuffix=!!this._suffixChildren.find(e=>e._isText)}_initializePrefixAndSuffix(){this._checkPrefixAndSuffixTypes(),Zi(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._checkPrefixAndSuffixTypes(),this._changeDetectorRef.markForCheck()})}_initializeSubscript(){this._hintChildren.changes.subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._validateHints(),this._syncDescribedByIds()}_assertFormFieldControl(){this._control}_updateFocusState(){let e=this._control.focused;e&&!this._isFocused?(this._isFocused=!0,this._lineRipple?.activate()):!e&&(this._isFocused||this._isFocused===null)&&(this._isFocused=!1,this._lineRipple?.deactivate()),this._elementRef.nativeElement.classList.toggle("mat-focused",e),this._textField?.nativeElement.classList.toggle("mdc-text-field--focused",e)}_syncOutlineLabelOffset(){xJ({earlyRead:()=>{if(this._appearanceSignal()!=="outline")return this._outlineLabelOffsetResizeObserver?.disconnect(),null;if(globalThis.ResizeObserver){this._outlineLabelOffsetResizeObserver||=new globalThis.ResizeObserver(()=>{this._writeOutlinedLabelStyles(this._getOutlinedLabelOffset())});for(let e of this._prefixSuffixContainers())this._outlineLabelOffsetResizeObserver.observe(e,{box:"border-box"})}return this._getOutlinedLabelOffset()},write:e=>this._writeOutlinedLabelStyles(e())})}_shouldAlwaysFloat(){return this.floatLabel==="always"}_hasOutline(){return this.appearance==="outline"}_forceDisplayInfixLabel(){return!this._platform.isBrowser&&this._prefixChildren.length&&!this._shouldLabelFloat()}_hasFloatingLabel=DA(()=>!!this._labelChild());_shouldLabelFloat(){return this._hasFloatingLabel()?this._control.shouldLabelFloat||this._shouldAlwaysFloat():!1}_shouldForward(e){let i=this._control?this._control.ngControl:null;return i&&i[e]}_getSubscriptMessageType(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}_handleLabelResized(){this._refreshOutlineNotchWidth()}_refreshOutlineNotchWidth(){!this._hasOutline()||!this._floatingLabel||!this._shouldLabelFloat()?this._notchedOutline?._setNotchWidth(0):this._notchedOutline?._setNotchWidth(this._floatingLabel.getWidth())}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){this._hintChildren}_syncDescribedByIds(){if(this._control){let e=[];if(this._control.userAriaDescribedBy&&typeof this._control.userAriaDescribedBy=="string"&&e.push(...this._control.userAriaDescribedBy.split(" ")),this._getSubscriptMessageType()==="hint"){let o=this._hintChildren?this._hintChildren.find(r=>r.align==="start"):null,a=this._hintChildren?this._hintChildren.find(r=>r.align==="end"):null;o?e.push(o.id):this._hintLabel&&e.push(this._hintLabelId),a&&e.push(a.id)}else this._errorChildren&&e.push(...this._errorChildren.map(o=>o.id));let i=this._control.describedByIds,n;if(i){let o=this._describedByIds||e;n=e.concat(i.filter(a=>a&&!o.includes(a)))}else n=e;this._control.setDescribedByIds(n),this._describedByIds=e}}_getOutlinedLabelOffset(){if(!this._hasOutline()||!this._floatingLabel)return null;if(!this._iconPrefixContainer&&!this._textPrefixContainer)return["",null];if(!this._isAttachedToDom())return null;let e=this._iconPrefixContainer?.nativeElement,i=this._textPrefixContainer?.nativeElement,n=this._iconSuffixContainer?.nativeElement,o=this._textSuffixContainer?.nativeElement,a=e?.getBoundingClientRect().width??0,r=i?.getBoundingClientRect().width??0,s=n?.getBoundingClientRect().width??0,l=o?.getBoundingClientRect().width??0,c=this._currentDirection==="rtl"?"-1":"1",C=`${a+r}px`,B=`calc(${c} * (${C} + var(--mat-mdc-form-field-label-offset-x, 0px)))`,E=`var(--mat-mdc-form-field-label-transform, ${v0e} translateX(${B}))`,u=a+r+s+l;return[E,u]}_writeOutlinedLabelStyles(e){if(e!==null){let[i,n]=e;this._floatingLabel&&(this._floatingLabel.element.style.transform=i),n!==null&&this._notchedOutline?._setMaxWidth(n)}}_isAttachedToDom(){let e=this._elementRef.nativeElement;if(e.getRootNode){let i=e.getRootNode();return i&&i!==e}return document.documentElement.contains(e)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-form-field"]],contentQueries:function(i,n,o){if(i&1&&(Pf(o,n._labelChild,Ks,5),ga(o,kQ,5)(o,qY,5)(o,ZY,5)(o,VY,5)(o,EI,5)),i&2){Rr();let a;cA(a=gA())&&(n._formFieldControl=a.first),cA(a=gA())&&(n._prefixChildren=a),cA(a=gA())&&(n._suffixChildren=a),cA(a=gA())&&(n._errorChildren=a),cA(a=gA())&&(n._hintChildren=a)}},viewQuery:function(i,n){if(i&1&&(Bs(n._iconPrefixContainerSignal,KY,5)(n._textPrefixContainerSignal,UY,5)(n._iconSuffixContainerSignal,TY,5)(n._textSuffixContainerSignal,OY,5),$t(t0e,5)(KY,5)(UY,5)(TY,5)(OY,5)(JY,5)(HY,5)(YY,5)),i&2){Rr(4);let o;cA(o=gA())&&(n._textField=o.first),cA(o=gA())&&(n._iconPrefixContainer=o.first),cA(o=gA())&&(n._textPrefixContainer=o.first),cA(o=gA())&&(n._iconSuffixContainer=o.first),cA(o=gA())&&(n._textSuffixContainer=o.first),cA(o=gA())&&(n._floatingLabel=o.first),cA(o=gA())&&(n._notchedOutline=o.first),cA(o=gA())&&(n._lineRipple=o.first)}},hostAttrs:[1,"mat-mdc-form-field"],hostVars:38,hostBindings:function(i,n){i&2&&_e("mat-mdc-form-field-label-always-float",n._shouldAlwaysFloat())("mat-mdc-form-field-has-icon-prefix",n._hasIconPrefix)("mat-mdc-form-field-has-icon-suffix",n._hasIconSuffix)("mat-form-field-invalid",n._control.errorState)("mat-form-field-disabled",n._control.disabled)("mat-form-field-autofilled",n._control.autofilled)("mat-form-field-appearance-fill",n.appearance=="fill")("mat-form-field-appearance-outline",n.appearance=="outline")("mat-form-field-hide-placeholder",n._hasFloatingLabel()&&!n._shouldLabelFloat())("mat-primary",n.color!=="accent"&&n.color!=="warn")("mat-accent",n.color==="accent")("mat-warn",n.color==="warn")("ng-untouched",n._shouldForward("untouched"))("ng-touched",n._shouldForward("touched"))("ng-pristine",n._shouldForward("pristine"))("ng-dirty",n._shouldForward("dirty"))("ng-valid",n._shouldForward("valid"))("ng-invalid",n._shouldForward("invalid"))("ng-pending",n._shouldForward("pending"))},inputs:{hideRequiredMarker:"hideRequiredMarker",color:"color",floatLabel:"floatLabel",appearance:"appearance",subscriptSizing:"subscriptSizing",hintLabel:"hintLabel"},exportAs:["matFormField"],features:[yt([{provide:_Q,useExisting:t},{provide:WY,useExisting:t}])],ngContentSelectors:n0e,decls:18,vars:21,consts:[["labelTemplate",""],["textField",""],["iconPrefixContainer",""],["textPrefixContainer",""],["textSuffixContainer",""],["iconSuffixContainer",""],[1,"mat-mdc-text-field-wrapper","mdc-text-field",3,"click"],[1,"mat-mdc-form-field-focus-overlay"],[1,"mat-mdc-form-field-flex"],["matFormFieldNotchedOutline","",3,"matFormFieldNotchedOutlineOpen"],[1,"mat-mdc-form-field-icon-prefix"],[1,"mat-mdc-form-field-text-prefix"],[1,"mat-mdc-form-field-infix"],[3,"ngTemplateOutlet"],[1,"mat-mdc-form-field-text-suffix"],[1,"mat-mdc-form-field-icon-suffix"],["matFormFieldLineRipple",""],["aria-atomic","true","aria-live","polite",1,"mat-mdc-form-field-subscript-wrapper","mat-mdc-form-field-bottom-align"],[1,"mat-mdc-form-field-error-wrapper"],[1,"mat-mdc-form-field-hint-wrapper"],["matFormFieldFloatingLabel","",3,"floating","monitorResize","id"],["aria-hidden","true",1,"mat-mdc-form-field-required-marker","mdc-floating-label--required"],[3,"id"],[1,"mat-mdc-form-field-hint-spacer"]],template:function(i,n){if(i&1&&(Yt(i0e),Nt(0,r0e,1,1,"ng-template",null,0,Id),I(2,"div",6,1),U("click",function(a){return n._control.onContainerClick(a)}),T(4,s0e,1,0,"div",7),I(5,"div",8),T(6,g0e,2,2,"div",9),T(7,C0e,3,0,"div",10),T(8,d0e,3,0,"div",11),I(9,"div",12),T(10,B0e,1,1,null,13),tt(11),h(),T(12,h0e,3,0,"div",14),T(13,u0e,3,0,"div",15),h(),T(14,E0e,1,0,"div",16),h(),I(15,"div",17),T(16,Q0e,2,0,"div",18)(17,m0e,5,1,"div",19),h()),i&2){let o;Q(2),_e("mdc-text-field--filled",!n._hasOutline())("mdc-text-field--outlined",n._hasOutline())("mdc-text-field--no-label",!n._hasFloatingLabel())("mdc-text-field--disabled",n._control.disabled)("mdc-text-field--invalid",n._control.errorState),Q(2),O(!n._hasOutline()&&!n._control.disabled?4:-1),Q(2),O(n._hasOutline()?6:-1),Q(),O(n._hasIconPrefix?7:-1),Q(),O(n._hasTextPrefix?8:-1),Q(2),O(!n._hasOutline()||n._forceDisplayInfixLabel()?10:-1),Q(2),O(n._hasTextSuffix?12:-1),Q(),O(n._hasIconSuffix?13:-1),Q(),O(n._hasOutline()?-1:14),Q(),_e("mat-mdc-form-field-subscript-dynamic-size",n.subscriptSizing==="dynamic");let a=n._getSubscriptMessageType();Q(),O((o=a)==="error"?16:o==="hint"?17:-1)}},dependencies:[JY,HY,t0,YY,EI],styles:[`.mdc-text-field{display:inline-flex;align-items:baseline;padding:0 16px;position:relative;box-sizing:border-box;overflow:hidden;will-change:opacity,transform,color;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.mdc-text-field__input{width:100%;min-width:0;border:none;border-radius:0;background:none;padding:0;-moz-appearance:none;-webkit-appearance:none;height:28px}.mdc-text-field__input::-webkit-calendar-picker-indicator,.mdc-text-field__input::-webkit-search-cancel-button{display:none}.mdc-text-field__input::-ms-clear{display:none}.mdc-text-field__input:focus{outline:none}.mdc-text-field__input:invalid{box-shadow:none}.mdc-text-field__input::placeholder{opacity:0}.mdc-text-field__input::-moz-placeholder{opacity:0}.mdc-text-field__input::-webkit-input-placeholder{opacity:0}.mdc-text-field__input:-ms-input-placeholder{opacity:0}.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mdc-text-field--focused .mdc-text-field__input::placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{opacity:1}.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{opacity:1}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::-moz-placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive::-webkit-input-placeholder{opacity:0}.mdc-text-field--disabled:not(.mdc-text-field--no-label) .mdc-text-field__input.mat-mdc-input-disabled-interactive:-ms-input-placeholder{opacity:0}.mdc-text-field--outlined .mdc-text-field__input,.mdc-text-field--filled.mdc-text-field--no-label .mdc-text-field__input{height:100%}.mdc-text-field--outlined .mdc-text-field__input{display:flex;border:none !important;background-color:rgba(0,0,0,0)}.mdc-text-field--disabled .mdc-text-field__input{pointer-events:auto}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mat-form-field-filled-input-text-color, var(--mat-sys-on-surface));caret-color:var(--mat-form-field-filled-caret-color, var(--mat-sys-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-filled-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{color:var(--mat-form-field-outlined-input-text-color, var(--mat-sys-on-surface));caret-color:var(--mat-form-field-outlined-caret-color, var(--mat-sys-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-outlined-input-text-placeholder-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mat-form-field-filled-error-caret-color, var(--mat-sys-error))}.mdc-text-field--outlined.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--mat-form-field-outlined-error-caret-color, var(--mat-sys-error))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-text-field__input{color:var(--mat-form-field-filled-disabled-input-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--mat-form-field-outlined-disabled-input-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mdc-text-field--disabled .mdc-text-field__input{background-color:Window}}.mdc-text-field--filled{height:56px;border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-left-radius:var(--mat-form-field-filled-container-shape, var(--mat-sys-corner-extra-small));border-top-right-radius:var(--mat-form-field-filled-container-shape, var(--mat-sys-corner-extra-small))}.mdc-text-field--filled:not(.mdc-text-field--disabled){background-color:var(--mat-form-field-filled-container-color, var(--mat-sys-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled{background-color:var(--mat-form-field-filled-disabled-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 4%, transparent))}.mdc-text-field--outlined{height:56px;overflow:visible;padding-right:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)));padding-left:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)) + 4px)}[dir=rtl] .mdc-text-field--outlined{padding-right:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)) + 4px);padding-left:max(16px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)))}.mdc-floating-label{position:absolute;left:0;transform-origin:left top;line-height:1.15rem;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:text;overflow:hidden;will-change:transform}[dir=rtl] .mdc-floating-label{right:0;left:auto;transform-origin:right top;text-align:right}.mdc-text-field .mdc-floating-label{top:50%;transform:translateY(-50%);pointer-events:none}.mdc-notched-outline .mdc-floating-label{display:inline-block;position:relative;max-width:100%}.mdc-text-field--outlined .mdc-floating-label{left:4px;right:auto}[dir=rtl] .mdc-text-field--outlined .mdc-floating-label{left:auto;right:4px}.mdc-text-field--filled .mdc-floating-label{left:16px;right:auto}[dir=rtl] .mdc-text-field--filled .mdc-floating-label{left:auto;right:16px}.mdc-text-field--disabled .mdc-floating-label{cursor:default}@media(forced-colors: active){.mdc-text-field--disabled .mdc-floating-label{z-index:1}}.mdc-text-field--filled.mdc-text-field--no-label .mdc-floating-label{display:none}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mat-form-field-filled-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-filled-focus-label-text-color, var(--mat-sys-primary))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mat-form-field-filled-hover-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-floating-label{color:var(--mat-form-field-filled-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mat-form-field-filled-error-label-text-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-filled-error-focus-label-text-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mat-form-field-filled-error-hover-label-text-color, var(--mat-sys-on-error-container))}.mdc-text-field--filled .mdc-floating-label{font-family:var(--mat-form-field-filled-label-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-form-field-filled-label-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-form-field-filled-label-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-form-field-filled-label-text-tracking, var(--mat-sys-body-large-tracking))}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-floating-label{color:var(--mat-form-field-outlined-label-text-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-outlined-focus-label-text-color, var(--mat-sys-primary))}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-floating-label{color:var(--mat-form-field-outlined-hover-label-text-color, var(--mat-sys-on-surface))}.mdc-text-field--outlined.mdc-text-field--disabled .mdc-floating-label{color:var(--mat-form-field-outlined-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-floating-label{color:var(--mat-form-field-outlined-error-label-text-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mdc-floating-label{color:var(--mat-form-field-outlined-error-focus-label-text-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--disabled):hover .mdc-floating-label{color:var(--mat-form-field-outlined-error-hover-label-text-color, var(--mat-sys-on-error-container))}.mdc-text-field--outlined .mdc-floating-label{font-family:var(--mat-form-field-outlined-label-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-form-field-outlined-label-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-form-field-outlined-label-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-form-field-outlined-label-text-tracking, var(--mat-sys-body-large-tracking))}.mdc-floating-label--float-above{cursor:auto;transform:translateY(-106%) scale(0.75)}.mdc-text-field--filled .mdc-floating-label--float-above{transform:translateY(-106%) scale(0.75)}.mdc-text-field--outlined .mdc-floating-label--float-above{transform:translateY(-37.25px) scale(1);font-size:.75rem}.mdc-notched-outline .mdc-floating-label--float-above{text-overflow:clip}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:133.3333333333%}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{transform:translateY(-34.75px) scale(0.75)}.mdc-text-field--outlined.mdc-notched-outline--upgraded .mdc-floating-label--float-above,.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:1rem}.mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:1px;margin-right:0;content:"*"}[dir=rtl] .mdc-floating-label--required:not(.mdc-floating-label--hide-required-marker)::after{margin-left:0;margin-right:1px}.mdc-notched-outline{display:flex;position:absolute;top:0;right:0;left:0;box-sizing:border-box;width:100%;max-width:100%;height:100%;text-align:left;pointer-events:none}[dir=rtl] .mdc-notched-outline{text-align:right}.mdc-text-field--outlined .mdc-notched-outline{z-index:1}.mat-mdc-notch-piece{box-sizing:border-box;height:100%;pointer-events:none;border:none;border-top:1px solid;border-bottom:1px solid}.mdc-text-field--focused .mat-mdc-notch-piece{border-width:2px}.mdc-text-field--outlined:not(.mdc-text-field--disabled) .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-outline-color, var(--mat-sys-outline));border-width:var(--mat-form-field-outlined-outline-width, 1px)}.mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-hover-outline-color, var(--mat-sys-on-surface))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-focus-outline-color, var(--mat-sys-primary))}.mdc-text-field--outlined.mdc-text-field--disabled .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-outline-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-notched-outline .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-hover-outline-color, var(--mat-sys-on-error-container))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid.mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--mat-form-field-outlined-error-focus-outline-color, var(--mat-sys-error))}.mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mdc-notched-outline .mat-mdc-notch-piece{border-width:var(--mat-form-field-outlined-focus-outline-width, 2px)}.mdc-notched-outline__leading{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__leading{width:max(12px,var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small)))}[dir=rtl] .mdc-notched-outline__leading{border-left:none;border-right:1px solid;border-bottom-left-radius:0;border-top-left-radius:0;border-top-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-notched-outline__trailing{flex-grow:1;border-left:none;border-right:1px solid;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-right-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}[dir=rtl] .mdc-notched-outline__trailing{border-left:1px solid;border-right:none;border-top-right-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small));border-bottom-left-radius:var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))}.mdc-notched-outline__notch{flex:0 0 auto;width:auto}.mdc-text-field--outlined .mdc-notched-outline .mdc-notched-outline__notch{max-width:min(var(--mat-form-field-notch-max-width, 100%),calc(100% - max(12px, var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))) * 2))}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{max-width:min(100%,calc(100% - max(12px, var(--mat-form-field-outlined-container-shape, var(--mat-sys-corner-extra-small))) * 2))}.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:1px}.mdc-text-field--focused.mdc-text-field--outlined .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-top:2px}.mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:0;padding-right:8px;border-top:none}[dir=rtl] .mdc-notched-outline--notched .mdc-notched-outline__notch{padding-left:8px;padding-right:0}.mdc-notched-outline--no-label .mdc-notched-outline__notch{display:none}.mdc-line-ripple::before,.mdc-line-ripple::after{position:absolute;bottom:0;left:0;width:100%;border-bottom-style:solid;content:""}.mdc-line-ripple::before{z-index:1;border-bottom-width:var(--mat-form-field-filled-active-indicator-height, 1px)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-active-indicator-color, var(--mat-sys-on-surface-variant))}.mdc-text-field--filled:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-hover-active-indicator-color, var(--mat-sys-on-surface))}.mdc-text-field--filled.mdc-text-field--disabled .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-disabled-active-indicator-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-error-active-indicator-color, var(--mat-sys-error))}.mdc-text-field--filled:not(.mdc-text-field--disabled).mdc-text-field--invalid:not(.mdc-text-field--focused):hover .mdc-line-ripple::before{border-bottom-color:var(--mat-form-field-filled-error-hover-active-indicator-color, var(--mat-sys-on-error-container))}.mdc-line-ripple::after{transform:scaleX(0);opacity:0;z-index:2}.mdc-text-field--filled .mdc-line-ripple::after{border-bottom-width:var(--mat-form-field-filled-focus-active-indicator-height, 2px)}.mdc-text-field--filled:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mat-form-field-filled-focus-active-indicator-color, var(--mat-sys-primary))}.mdc-text-field--filled.mdc-text-field--invalid:not(.mdc-text-field--disabled) .mdc-line-ripple::after{border-bottom-color:var(--mat-form-field-filled-error-focus-active-indicator-color, var(--mat-sys-error))}.mdc-line-ripple--active::after{transform:scaleX(1);opacity:1}.mdc-line-ripple--deactivating::after{opacity:0}.mdc-text-field--disabled{pointer-events:none}.mat-mdc-form-field-textarea-control{vertical-align:middle;resize:vertical;box-sizing:border-box;height:auto;margin:0;padding:0;border:none;overflow:auto}.mat-mdc-form-field-input-control.mat-mdc-form-field-input-control{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font:inherit;letter-spacing:inherit;text-decoration:inherit;text-transform:inherit;border:none}.mat-mdc-form-field .mat-mdc-floating-label.mdc-floating-label{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;line-height:normal;pointer-events:all;will-change:auto}.mat-mdc-form-field:not(.mat-form-field-disabled) .mat-mdc-floating-label.mdc-floating-label{cursor:inherit}.mdc-text-field--no-label:not(.mdc-text-field--textarea) .mat-mdc-form-field-input-control.mdc-text-field__input,.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control{height:auto}.mat-mdc-text-field-wrapper .mat-mdc-form-field-input-control.mdc-text-field__input[type=color]{height:23px}.mat-mdc-text-field-wrapper{height:auto;flex:auto;will-change:auto}.mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-left:0;--mat-mdc-form-field-label-offset-x: -16px}.mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-right:0}[dir=rtl] .mat-mdc-text-field-wrapper{padding-left:16px;padding-right:16px}[dir=rtl] .mat-mdc-form-field-has-icon-suffix .mat-mdc-text-field-wrapper{padding-left:0}[dir=rtl] .mat-mdc-form-field-has-icon-prefix .mat-mdc-text-field-wrapper{padding-right:0}.mat-form-field-disabled .mdc-text-field__input::placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input::-moz-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input::-webkit-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-disabled .mdc-text-field__input:-ms-input-placeholder{color:var(--mat-form-field-disabled-input-text-placeholder-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-label-always-float .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms;opacity:1}.mat-mdc-text-field-wrapper .mat-mdc-form-field-infix .mat-mdc-floating-label{left:auto;right:auto}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-text-field__input{display:inline-block}.mat-mdc-form-field .mat-mdc-text-field-wrapper.mdc-text-field .mdc-notched-outline__notch{padding-top:0}.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:1px solid rgba(0,0,0,0)}[dir=rtl] .mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field.mat-mdc-form-field .mdc-notched-outline__notch{border-left:none;border-right:1px solid rgba(0,0,0,0)}.mat-mdc-form-field-infix{min-height:var(--mat-form-field-container-height, 56px);padding-top:var(--mat-form-field-filled-with-label-container-padding-top, 24px);padding-bottom:var(--mat-form-field-filled-with-label-container-padding-bottom, 8px)}.mdc-text-field--outlined .mat-mdc-form-field-infix,.mdc-text-field--no-label .mat-mdc-form-field-infix{padding-top:var(--mat-form-field-container-vertical-padding, 16px);padding-bottom:var(--mat-form-field-container-vertical-padding, 16px)}.mat-mdc-text-field-wrapper .mat-mdc-form-field-flex .mat-mdc-floating-label{top:calc(var(--mat-form-field-container-height, 56px)/2)}.mdc-text-field--filled .mat-mdc-floating-label{display:var(--mat-form-field-filled-label-display, block)}.mat-mdc-text-field-wrapper.mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{--mat-mdc-form-field-label-transform: translateY(calc(calc(6.75px + var(--mat-form-field-container-height, 56px) / 2) * -1)) scale(var(--mat-mdc-form-field-floating-label-scale, 0.75));transform:var(--mat-mdc-form-field-label-transform)}@keyframes _mat-form-field-subscript-animation{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.mat-mdc-form-field-subscript-wrapper{box-sizing:border-box;width:100%;position:relative}.mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-error-wrapper{position:absolute;top:0;left:0;right:0;padding:0 16px;opacity:1;transform:translateY(0);animation:_mat-form-field-subscript-animation 0ms cubic-bezier(0.55, 0, 0.55, 0.2)}.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field-subscript-dynamic-size .mat-mdc-form-field-error-wrapper{position:static}.mat-mdc-form-field-bottom-align::before{content:"";display:inline-block;height:16px}.mat-mdc-form-field-bottom-align.mat-mdc-form-field-subscript-dynamic-size::before{content:unset}.mat-mdc-form-field-hint-end{order:1}.mat-mdc-form-field-hint-wrapper{display:flex}.mat-mdc-form-field-hint-spacer{flex:1 0 1em}.mat-mdc-form-field-error{display:block;color:var(--mat-form-field-error-text-color, var(--mat-sys-error))}.mat-mdc-form-field-subscript-wrapper,.mat-mdc-form-field-bottom-align::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-subscript-text-font, var(--mat-sys-body-small-font));line-height:var(--mat-form-field-subscript-text-line-height, var(--mat-sys-body-small-line-height));font-size:var(--mat-form-field-subscript-text-size, var(--mat-sys-body-small-size));letter-spacing:var(--mat-form-field-subscript-text-tracking, var(--mat-sys-body-small-tracking));font-weight:var(--mat-form-field-subscript-text-weight, var(--mat-sys-body-small-weight))}.mat-mdc-form-field-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;opacity:0;pointer-events:none;background-color:var(--mat-form-field-state-layer-color, var(--mat-sys-on-surface))}.mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-form-field.mat-focused .mat-mdc-form-field-focus-overlay{opacity:var(--mat-form-field-focus-state-layer-opacity, 0)}select.mat-mdc-form-field-input-control{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(0,0,0,0);display:inline-flex;box-sizing:border-box}select.mat-mdc-form-field-input-control:not(:disabled){cursor:pointer}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option{color:var(--mat-form-field-select-option-text-color, var(--mat-sys-neutral10))}select.mat-mdc-form-field-input-control:not(.mat-mdc-native-select-inline) option:disabled{color:var(--mat-form-field-select-disabled-option-text-color, color-mix(in srgb, var(--mat-sys-neutral10) 38%, transparent))}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{content:"";width:0;height:0;border-left:5px solid rgba(0,0,0,0);border-right:5px solid rgba(0,0,0,0);border-top:5px solid;position:absolute;right:0;top:50%;margin-top:-2.5px;pointer-events:none;color:var(--mat-form-field-enabled-select-arrow-color, var(--mat-sys-on-surface-variant))}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-infix::after{right:auto;left:0}.mat-mdc-form-field-type-mat-native-select.mat-focused .mat-mdc-form-field-infix::after{color:var(--mat-form-field-focus-select-arrow-color, var(--mat-sys-primary))}.mat-mdc-form-field-type-mat-native-select.mat-form-field-disabled .mat-mdc-form-field-infix::after{color:var(--mat-form-field-disabled-select-arrow-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:15px}[dir=rtl] .mat-mdc-form-field-type-mat-native-select .mat-mdc-form-field-input-control{padding-right:0;padding-left:15px}@media(forced-colors: active){.mat-form-field-appearance-fill .mat-mdc-text-field-wrapper{outline:solid 1px}}@media(forced-colors: active){.mat-form-field-appearance-fill.mat-form-field-disabled .mat-mdc-text-field-wrapper{outline-color:GrayText}}@media(forced-colors: active){.mat-form-field-appearance-fill.mat-focused .mat-mdc-text-field-wrapper{outline:dashed 3px}}@media(forced-colors: active){.mat-mdc-form-field.mat-focused .mdc-notched-outline{border:dashed 3px}}.mat-mdc-form-field-input-control[type=date],.mat-mdc-form-field-input-control[type=datetime],.mat-mdc-form-field-input-control[type=datetime-local],.mat-mdc-form-field-input-control[type=month],.mat-mdc-form-field-input-control[type=week],.mat-mdc-form-field-input-control[type=time]{line-height:1}.mat-mdc-form-field-input-control::-webkit-datetime-edit{line-height:1;padding:0;margin-bottom:-2px}.mat-mdc-form-field{--mat-mdc-form-field-floating-label-scale: 0.75;display:inline-flex;flex-direction:column;min-width:0;text-align:left;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-form-field-container-text-font, var(--mat-sys-body-large-font));line-height:var(--mat-form-field-container-text-line-height, var(--mat-sys-body-large-line-height));font-size:var(--mat-form-field-container-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-form-field-container-text-tracking, var(--mat-sys-body-large-tracking));font-weight:var(--mat-form-field-container-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-floating-label--float-above{font-size:calc(var(--mat-form-field-outlined-label-text-populated-size)*var(--mat-mdc-form-field-floating-label-scale))}.mat-mdc-form-field .mdc-text-field--outlined .mdc-notched-outline--upgraded .mdc-floating-label--float-above{font-size:var(--mat-form-field-outlined-label-text-populated-size)}[dir=rtl] .mat-mdc-form-field{text-align:right}.mat-mdc-form-field-flex{display:inline-flex;align-items:baseline;box-sizing:border-box;width:100%}.mat-mdc-text-field-wrapper{width:100%;z-index:0}.mat-mdc-form-field-icon-prefix,.mat-mdc-form-field-icon-suffix{align-self:center;line-height:0;pointer-events:auto;position:relative;z-index:1}.mat-mdc-form-field-icon-prefix>.mat-icon,.mat-mdc-form-field-icon-suffix>.mat-icon{padding:0 12px;box-sizing:content-box}.mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-leading-icon-color, var(--mat-sys-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-prefix{color:var(--mat-form-field-disabled-leading-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-form-field-disabled .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-disabled-trailing-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-form-field-invalid .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-trailing-icon-color, var(--mat-sys-error))}.mat-form-field-invalid:not(.mat-focused):not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper:hover .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-hover-trailing-icon-color, var(--mat-sys-on-error-container))}.mat-form-field-invalid.mat-focused .mat-mdc-text-field-wrapper .mat-mdc-form-field-icon-suffix{color:var(--mat-form-field-error-focus-trailing-icon-color, var(--mat-sys-error))}.mat-mdc-form-field-icon-prefix,[dir=rtl] .mat-mdc-form-field-icon-suffix{padding:0 4px 0 0}.mat-mdc-form-field-icon-suffix,[dir=rtl] .mat-mdc-form-field-icon-prefix{padding:0 0 0 4px}.mat-mdc-form-field-subscript-wrapper .mat-icon,.mat-mdc-form-field label .mat-icon{width:1em;height:1em;font-size:inherit}.mat-mdc-form-field-infix{flex:auto;min-width:0;width:180px;position:relative;box-sizing:border-box}.mat-mdc-form-field-infix:has(textarea[cols]){width:auto}.mat-mdc-form-field .mdc-notched-outline__notch{margin-left:-1px;-webkit-clip-path:inset(-9em -999em -9em 1px);clip-path:inset(-9em -999em -9em 1px)}[dir=rtl] .mat-mdc-form-field .mdc-notched-outline__notch{margin-left:0;margin-right:-1px;-webkit-clip-path:inset(-9em 1px -9em -999em);clip-path:inset(-9em 1px -9em -999em)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-floating-label{transition:transform 150ms cubic-bezier(0.4, 0, 0.2, 1),color 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input{transition:opacity 150ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::-moz-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input::-webkit-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field__input:-ms-input-placeholder{transition:opacity 67ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::-moz-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::-moz-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input::-webkit-input-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input::-webkit-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--no-label .mdc-text-field__input:-ms-input-placeholder,.mat-mdc-form-field.mat-form-field-animations-enabled.mdc-text-field--focused .mdc-text-field__input:-ms-input-placeholder{transition-delay:40ms;transition-duration:110ms}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-text-field--filled:not(.mdc-ripple-upgraded):focus .mdc-text-field__ripple::before{transition-duration:75ms}.mat-mdc-form-field.mat-form-field-animations-enabled .mdc-line-ripple::after{transition:transform 180ms cubic-bezier(0.4, 0, 0.2, 1),opacity 180ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-mdc-form-field.mat-form-field-animations-enabled .mat-mdc-form-field-hint-wrapper,.mat-mdc-form-field.mat-form-field-animations-enabled .mat-mdc-form-field-error-wrapper{animation-duration:300ms}.mdc-notched-outline .mdc-floating-label{max-width:calc(100% + 1px)}.mdc-notched-outline--upgraded .mdc-floating-label--float-above{max-width:calc(133.3333333333% + 1px)} +`],encapsulation:2,changeDetection:0})}return t})();var ir=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[B3,$o,bi]})}return t})();var XY=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["ng-component"]],hostAttrs:["cdk-text-field-style-loader",""],decls:0,vars:0,template:function(i,n){},styles:[`textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{padding:2px 0 !important;box-sizing:content-box !important;height:auto !important;overflow:hidden !important}textarea.cdk-textarea-autosize-measuring-firefox{padding:2px 0 !important;box-sizing:content-box !important;height:0 !important}@keyframes cdk-text-field-autofill-start{/*!*/}@keyframes cdk-text-field-autofill-end{/*!*/}.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){animation:cdk-text-field-autofill-end 0s 1ms} +`],encapsulation:2,changeDetection:0})}return t})(),D0e={passive:!0},$Y=(()=>{class t{_platform=w(pi);_ngZone=w(At);_renderer=w(Wr).createRenderer(null,null);_styleLoader=w(Eo);_monitoredElements=new Map;constructor(){}monitor(e){if(!this._platform.isBrowser)return mr;this._styleLoader.load(XY);let i=Ls(e),n=this._monitoredElements.get(i);if(n)return n.subject;let o=new rA,a="cdk-text-field-autofilled",r=l=>{l.animationName==="cdk-text-field-autofill-start"&&!i.classList.contains(a)?(i.classList.add(a),this._ngZone.run(()=>o.next({target:l.target,isAutofilled:!0}))):l.animationName==="cdk-text-field-autofill-end"&&i.classList.contains(a)&&(i.classList.remove(a),this._ngZone.run(()=>o.next({target:l.target,isAutofilled:!1})))},s=this._ngZone.runOutsideAngular(()=>(i.classList.add("cdk-text-field-autofill-monitored"),this._renderer.listen(i,"animationstart",r,D0e)));return this._monitoredElements.set(i,{subject:o,unlisten:s}),o}stopMonitoring(e){let i=Ls(e),n=this._monitoredElements.get(i);n&&(n.unlisten(),n.subject.complete(),i.classList.remove("cdk-text-field-autofill-monitored"),i.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(i))}ngOnDestroy(){this._monitoredElements.forEach((e,i)=>this.stopMonitoring(i))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var b3=(()=>{class t{_elementRef=w(dA);_platform=w(pi);_ngZone=w(At);_renderer=w(rn);_resizeEvents=new rA;_previousValue;_initialHeight;_destroyed=new rA;_listenerCleanups;_minRows;_maxRows;_enabled=!0;_previousMinRows=-1;_textareaElement;get minRows(){return this._minRows}set minRows(e){this._minRows=ol(e),this._setMinHeight()}get maxRows(){return this._maxRows}set maxRows(e){this._maxRows=ol(e),this._setMaxHeight()}get enabled(){return this._enabled}set enabled(e){this._enabled!==e&&((this._enabled=e)?this.resizeToFitContent(!0):this.reset())}get placeholder(){return this._textareaElement.placeholder}set placeholder(e){this._cachedPlaceholderHeight=void 0,e?this._textareaElement.setAttribute("placeholder",e):this._textareaElement.removeAttribute("placeholder"),this._cacheTextareaPlaceholderHeight()}_cachedLineHeight;_cachedPlaceholderHeight;_document=w(Ii);_hasFocus=!1;_isViewInited=!1;constructor(){w(Eo).load(XY),this._textareaElement=this._elementRef.nativeElement}_setMinHeight(){let e=this.minRows&&this._cachedLineHeight?`${this.minRows*this._cachedLineHeight}px`:null;e&&(this._textareaElement.style.minHeight=e)}_setMaxHeight(){let e=this.maxRows&&this._cachedLineHeight?`${this.maxRows*this._cachedLineHeight}px`:null;e&&(this._textareaElement.style.maxHeight=e)}ngAfterViewInit(){this._platform.isBrowser&&(this._initialHeight=this._textareaElement.style.height,this.resizeToFitContent(),this._ngZone.runOutsideAngular(()=>{this._listenerCleanups=[this._renderer.listen("window","resize",()=>this._resizeEvents.next()),this._renderer.listen(this._textareaElement,"focus",this._handleFocusEvent),this._renderer.listen(this._textareaElement,"blur",this._handleFocusEvent)],this._resizeEvents.pipe(tI(16)).subscribe(()=>{this._cachedLineHeight=this._cachedPlaceholderHeight=void 0,this.resizeToFitContent(!0)})}),this._isViewInited=!0,this.resizeToFitContent(!0))}ngOnDestroy(){this._listenerCleanups?.forEach(e=>e()),this._resizeEvents.complete(),this._destroyed.next(),this._destroyed.complete()}_cacheTextareaLineHeight(){if(this._cachedLineHeight)return;let e=this._textareaElement.cloneNode(!1),i=e.style;e.rows=1,i.position="absolute",i.visibility="hidden",i.border="none",i.padding="0",i.height="",i.minHeight="",i.maxHeight="",i.top=i.bottom=i.left=i.right="auto",i.overflow="hidden",this._textareaElement.parentNode.appendChild(e),this._cachedLineHeight=e.clientHeight,e.remove(),this._setMinHeight(),this._setMaxHeight()}_measureScrollHeight(){let e=this._textareaElement,i=e.style.marginBottom||"",n=this._platform.FIREFOX,o=this._hasFocus,a=n?"cdk-textarea-autosize-measuring-firefox":"cdk-textarea-autosize-measuring";o&&(e.style.marginBottom=`${e.clientHeight}px`),e.classList.add(a);let r=e.scrollHeight-4;return e.classList.remove(a),o&&(e.style.marginBottom=i),r}_cacheTextareaPlaceholderHeight(){if(!this._isViewInited||this._cachedPlaceholderHeight!=null)return;if(!this.placeholder){this._cachedPlaceholderHeight=0;return}let e=this._textareaElement.value;this._textareaElement.value=this._textareaElement.placeholder,this._cachedPlaceholderHeight=this._measureScrollHeight(),this._textareaElement.value=e}_handleFocusEvent=e=>{this._hasFocus=e.type==="focus"};ngDoCheck(){this._platform.isBrowser&&this.resizeToFitContent()}resizeToFitContent(e=!1){if(!this._enabled||(this._cacheTextareaLineHeight(),this._cacheTextareaPlaceholderHeight(),!this._cachedLineHeight))return;let i=this._elementRef.nativeElement,n=i.value;if(!e&&this._minRows===this._previousMinRows&&n===this._previousValue)return;let o=this._measureScrollHeight(),a=Math.max(o,this._cachedPlaceholderHeight||0);i.style.height=`${a}px`,this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame<"u"?requestAnimationFrame(()=>this._scrollToCaretPosition(i)):setTimeout(()=>this._scrollToCaretPosition(i))}),this._previousValue=n,this._previousMinRows=this._minRows}reset(){this._initialHeight!==void 0&&(this._textareaElement.style.height=this._initialHeight)}_noopInputHandler(){}_scrollToCaretPosition(e){let{selectionStart:i,selectionEnd:n}=e;!this._destroyed.isStopped&&this._hasFocus&&e.setSelectionRange(i,n)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["textarea","cdkTextareaAutosize",""]],hostAttrs:["rows","1",1,"cdk-textarea-autosize"],hostBindings:function(i,n){i&1&&U("input",function(){return n._noopInputHandler()})},inputs:{minRows:[0,"cdkAutosizeMinRows","minRows"],maxRows:[0,"cdkAutosizeMaxRows","maxRows"],enabled:[2,"cdkTextareaAutosize","enabled",mA],placeholder:"placeholder"},exportAs:["cdkTextareaAutosize"]})}return t})(),DB=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({})}return t})();var AH=new Me("MAT_INPUT_VALUE_ACCESSOR");var bB=(()=>{class t{isErrorState(e,i){return!!(e&&e.invalid&&(e.touched||i&&i.submitted))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var MB=class{_defaultMatcher;ngControl;_parentFormGroup;_parentForm;_stateChanges;errorState=!1;matcher;constructor(A,e,i,n,o){this._defaultMatcher=A,this.ngControl=e,this._parentFormGroup=i,this._parentForm=n,this._stateChanges=o}updateErrorState(){let A=this.errorState,e=this._parentFormGroup||this._parentForm,i=this.matcher||this._defaultMatcher,n=this.ngControl?this.ngControl.control:null,o=i?.isErrorState(n,e)??!1;o!==A&&(this.errorState=o,this._stateChanges.next())}};var b0e=["button","checkbox","file","hidden","image","radio","range","reset","submit"],M0e=new Me("MAT_INPUT_CONFIG"),Fa=(()=>{class t{_elementRef=w(dA);_platform=w(pi);ngControl=w(nl,{optional:!0,self:!0});_autofillMonitor=w($Y);_ngZone=w(At);_formField=w(_Q,{optional:!0});_renderer=w(rn);_uid=w(bn).getId("mat-input-");_previousNativeValue;_inputValueAccessor;_signalBasedValueAccessor;_previousPlaceholder=null;_errorStateTracker;_config=w(M0e,{optional:!0});_cleanupIosKeyup;_cleanupWebkitWheel;_isServer=!1;_isNativeSelect=!1;_isTextarea=!1;_isInFormField=!1;focused=!1;stateChanges=new rA;controlType="mat-input";autofilled=!1;get disabled(){return this._disabled}set disabled(e){this._disabled=Lr(e),this.focused&&(this.focused=!1,this.stateChanges.next())}_disabled=!1;get id(){return this._id}set id(e){this._id=e||this._uid}_id;placeholder;name;get required(){return this._required??this.ngControl?.control?.hasValidator(il.required)??!1}set required(e){this._required=Lr(e)}_required;get type(){return this._type}set type(e){this._type=e||"text",this._validateType(),!this._isTextarea&&RM().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}_type="text";get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}userAriaDescribedBy;get value(){return this._signalBasedValueAccessor?this._signalBasedValueAccessor.value():this._inputValueAccessor.value}set value(e){e!==this.value&&(this._signalBasedValueAccessor?this._signalBasedValueAccessor.value.set(e):this._inputValueAccessor.value=e,this.stateChanges.next())}get readonly(){return this._readonly}set readonly(e){this._readonly=Lr(e)}_readonly=!1;disabledInteractive;get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}_neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(e=>RM().has(e));constructor(){let e=w(EB,{optional:!0}),i=w(ud,{optional:!0}),n=w(bB),o=w(AH,{optional:!0,self:!0}),a=this._elementRef.nativeElement,r=a.nodeName.toLowerCase();o?nI(o.value)?this._signalBasedValueAccessor=o:this._inputValueAccessor=o:this._inputValueAccessor=a,this._previousNativeValue=this.value,this.id=this.id,this._platform.IOS&&this._ngZone.runOutsideAngular(()=>{this._cleanupIosKeyup=this._renderer.listen(a,"keyup",this._iOSKeyupListener)}),this._errorStateTracker=new MB(n,this.ngControl,i,e,this.stateChanges),this._isServer=!this._platform.isBrowser,this._isNativeSelect=r==="select",this._isTextarea=r==="textarea",this._isInFormField=!!this._formField,this.disabledInteractive=this._config?.disabledInteractive||!1,this._isNativeSelect&&(this.controlType=a.multiple?"mat-native-select-multiple":"mat-native-select"),this._signalBasedValueAccessor&&Ln(()=>{this._signalBasedValueAccessor.value(),this.stateChanges.next()})}ngAfterViewInit(){this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(e=>{this.autofilled=e.isAutofilled,this.stateChanges.next()})}ngOnChanges(){this.stateChanges.next()}ngOnDestroy(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement),this._cleanupIosKeyup?.(),this._cleanupWebkitWheel?.()}ngDoCheck(){this.ngControl&&(this.updateErrorState(),this.ngControl.disabled!==null&&this.ngControl.disabled!==this.disabled&&(this.disabled=this.ngControl.disabled,this.stateChanges.next())),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}focus(e){this._elementRef.nativeElement.focus(e)}updateErrorState(){this._errorStateTracker.updateErrorState()}_focusChanged(e){if(e!==this.focused){if(!this._isNativeSelect&&e&&this.disabled&&this.disabledInteractive){let i=this._elementRef.nativeElement;i.type==="number"?(i.type="text",i.setSelectionRange(0,0),i.type="number"):i.setSelectionRange(0,0)}this.focused=e,this.stateChanges.next()}}_onInput(){}_dirtyCheckNativeValue(){let e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}_dirtyCheckPlaceholder(){let e=this._getPlaceholder();if(e!==this._previousPlaceholder){let i=this._elementRef.nativeElement;this._previousPlaceholder=e,e?i.setAttribute("placeholder",e):i.removeAttribute("placeholder")}}_getPlaceholder(){return this.placeholder||null}_validateType(){b0e.indexOf(this._type)>-1}_isNeverEmpty(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}_isBadInput(){let e=this._elementRef.nativeElement.validity;return e&&e.badInput}get empty(){return!this._isNeverEmpty()&&!this._elementRef.nativeElement.value&&!this._isBadInput()&&!this.autofilled}get shouldLabelFloat(){if(this._isNativeSelect){let e=this._elementRef.nativeElement,i=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&i&&i.label)}else return this.focused&&!this.disabled||!this.empty}get describedByIds(){return this._elementRef.nativeElement.getAttribute("aria-describedby")?.split(" ")||[]}setDescribedByIds(e){let i=this._elementRef.nativeElement;e.length?i.setAttribute("aria-describedby",e.join(" ")):i.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}_isInlineSelect(){let e=this._elementRef.nativeElement;return this._isNativeSelect&&(e.multiple||e.size>1)}_iOSKeyupListener=e=>{let i=e.target;!i.value&&i.selectionStart===0&&i.selectionEnd===0&&(i.setSelectionRange(1,1),i.setSelectionRange(0,0))};_getReadonlyAttribute(){return this._isNativeSelect?null:this.readonly||this.disabled&&this.disabledInteractive?"true":null}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-mdc-input-element"],hostVars:21,hostBindings:function(i,n){i&1&&U("focus",function(){return n._focusChanged(!0)})("blur",function(){return n._focusChanged(!1)})("input",function(){return n._onInput()}),i&2&&(Ra("id",n.id)("disabled",n.disabled&&!n.disabledInteractive)("required",n.required),aA("name",n.name||null)("readonly",n._getReadonlyAttribute())("aria-disabled",n.disabled&&n.disabledInteractive?"true":null)("aria-invalid",n.empty&&n.required?null:n.errorState)("aria-required",n.required)("id",n.id),_e("mat-input-server",n._isServer)("mat-mdc-form-field-textarea-control",n._isInFormField&&n._isTextarea)("mat-mdc-form-field-input-control",n._isInFormField)("mat-mdc-input-disabled-interactive",n.disabledInteractive)("mdc-text-field__input",n._isInFormField)("mat-mdc-native-select-inline",n._isInlineSelect()))},inputs:{disabled:"disabled",id:"id",placeholder:"placeholder",name:"name",required:"required",type:"type",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],value:"value",readonly:"readonly",disabledInteractive:[2,"disabledInteractive","disabledInteractive",mA]},exportAs:["matInput"],features:[yt([{provide:kQ,useExisting:t}]),ai]})}return t})(),al=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[ir,ir,DB,bi]})}return t})();var mn=(function(t){return t[t.State=0]="State",t[t.Transition=1]="Transition",t[t.Sequence=2]="Sequence",t[t.Group=3]="Group",t[t.Animate=4]="Animate",t[t.Keyframes=5]="Keyframes",t[t.Style=6]="Style",t[t.Trigger=7]="Trigger",t[t.Reference=8]="Reference",t[t.AnimateChild=9]="AnimateChild",t[t.AnimateRef=10]="AnimateRef",t[t.Query=11]="Query",t[t.Stagger=12]="Stagger",t})(mn||{}),Xc="*";function tH(t,A=null){return{type:mn.Sequence,steps:t,options:A}}function JM(t){return{type:mn.Style,styles:t,offset:null}}var sC=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(A=0,e=0){this.totalTime=A+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(A=>A()),this._onDoneFns=[])}onStart(A){this._originalOnStartFns.push(A),this._onStartFns.push(A)}onDone(A){this._originalOnDoneFns.push(A),this._onDoneFns.push(A)}onDestroy(A){this._onDestroyFns.push(A)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(A=>A()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(A=>A()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(A){this._position=this.totalTime?A*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(A){let e=A=="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},kB=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(A){this.players=A;let e=0,i=0,n=0,o=this.players.length;o==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(a=>{a.onDone(()=>{++e==o&&this._onFinish()}),a.onDestroy(()=>{++i==o&&this._onDestroy()}),a.onStart(()=>{++n==o&&this._onStart()})}),this.totalTime=this.players.reduce((a,r)=>Math.max(a,r.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(A=>A()),this._onDoneFns=[])}init(){this.players.forEach(A=>A.init())}onStart(A){this._onStartFns.push(A)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(A=>A()),this._onStartFns=[])}onDone(A){this._onDoneFns.push(A)}onDestroy(A){this._onDestroyFns.push(A)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(A=>A.play())}pause(){this.players.forEach(A=>A.pause())}restart(){this.players.forEach(A=>A.restart())}finish(){this._onFinish(),this.players.forEach(A=>A.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(A=>A.destroy()),this._onDestroyFns.forEach(A=>A()),this._onDestroyFns=[])}reset(){this.players.forEach(A=>A.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(A){let e=A*this.totalTime;this.players.forEach(i=>{let n=i.totalTime?Math.min(1,e/i.totalTime):1;i.setPosition(n)})}getPosition(){let A=this.players.reduce((e,i)=>e===null||i.totalTime>e.totalTime?i:e,null);return A!=null?A.getPosition():0}beforeDestroy(){this.players.forEach(A=>{A.beforeDestroy&&A.beforeDestroy()})}triggerCallback(A){let e=A=="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},xQ="!";function iH(t){return new Kt(3e3,!1)}function S0e(){return new Kt(3100,!1)}function k0e(){return new Kt(3101,!1)}function _0e(t){return new Kt(3001,!1)}function x0e(t){return new Kt(3003,!1)}function R0e(t){return new Kt(3004,!1)}function oH(t,A){return new Kt(3005,!1)}function aH(){return new Kt(3006,!1)}function rH(){return new Kt(3007,!1)}function sH(t,A){return new Kt(3008,!1)}function lH(t){return new Kt(3002,!1)}function cH(t,A,e,i,n){return new Kt(3010,!1)}function gH(){return new Kt(3011,!1)}function CH(){return new Kt(3012,!1)}function dH(){return new Kt(3200,!1)}function IH(){return new Kt(3202,!1)}function BH(){return new Kt(3013,!1)}function hH(t){return new Kt(3014,!1)}function uH(t){return new Kt(3015,!1)}function EH(t){return new Kt(3016,!1)}function QH(t,A){return new Kt(3404,!1)}function N0e(t){return new Kt(3502,!1)}function pH(t){return new Kt(3503,!1)}function mH(){return new Kt(3300,!1)}function fH(t){return new Kt(3504,!1)}function wH(t){return new Kt(3301,!1)}function yH(t,A){return new Kt(3302,!1)}function vH(t){return new Kt(3303,!1)}function DH(t,A){return new Kt(3400,!1)}function bH(t){return new Kt(3401,!1)}function MH(t){return new Kt(3402,!1)}function SH(t,A){return new Kt(3505,!1)}function lC(t){switch(t.length){case 0:return new sC;case 1:return t[0];default:return new kB(t)}}function PM(t,A,e=new Map,i=new Map){let n=[],o=[],a=-1,r=null;if(A.forEach(s=>{let l=s.get("offset"),c=l==a,C=c&&r||new Map;s.forEach((d,B)=>{let E=B,u=d;if(B!=="offset")switch(E=t.normalizePropertyName(E,n),u){case xQ:u=e.get(B);break;case Xc:u=i.get(B);break;default:u=t.normalizeStyleValue(B,E,u,n);break}C.set(E,u)}),c||o.push(C),r=C,a=l}),n.length)throw N0e(n);return o}function M3(t,A,e,i){switch(A){case"start":t.onStart(()=>i(e&&zM(e,"start",t)));break;case"done":t.onDone(()=>i(e&&zM(e,"done",t)));break;case"destroy":t.onDestroy(()=>i(e&&zM(e,"destroy",t)));break}}function zM(t,A,e){let i=e.totalTime,n=!!e.disabled,o=S3(t.element,t.triggerName,t.fromState,t.toState,A||t.phaseName,i??t.totalTime,n),a=t._data;return a!=null&&(o._data=a),o}function S3(t,A,e,i,n="",o=0,a){return{element:t,triggerName:A,fromState:e,toState:i,phaseName:n,totalTime:o,disabled:!!a}}function rl(t,A,e){let i=t.get(A);return i||t.set(A,i=e),i}function jM(t){let A=t.indexOf(":"),e=t.substring(1,A),i=t.slice(A+1);return[e,i]}var F0e=typeof document>"u"?null:document.documentElement;function k3(t){let A=t.parentNode||t.host||null;return A===F0e?null:A}function L0e(t){return t.substring(1,6)=="ebkit"}var pI=null,nH=!1;function kH(t){pI||(pI=G0e()||{},nH=pI.style?"WebkitAppearance"in pI.style:!1);let A=!0;return pI.style&&!L0e(t)&&(A=t in pI.style,!A&&nH&&(A="Webkit"+t.charAt(0).toUpperCase()+t.slice(1)in pI.style)),A}function G0e(){return typeof document<"u"?document.body:null}function VM(t,A){for(;A;){if(A===t)return!0;A=k3(A)}return!1}function qM(t,A,e){if(e)return Array.from(t.querySelectorAll(A));let i=t.querySelector(A);return i?[i]:[]}var K0e=1e3,ZM="{{",U0e="}}",WM="ng-enter",_3="ng-leave",RQ="ng-trigger",NQ=".ng-trigger",XM="ng-animating",x3=".ng-animating";function a0(t){if(typeof t=="number")return t;let A=t.match(/^(-?[\.\d]+)(m?s)/);return!A||A.length<2?0:YM(parseFloat(A[1]),A[2])}function YM(t,A){return A==="s"?t*K0e:t}function FQ(t,A,e){return t.hasOwnProperty("duration")?t:O0e(t,A,e)}var T0e=/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i;function O0e(t,A,e){let i,n=0,o="";if(typeof t=="string"){let a=t.match(T0e);if(a===null)return A.push(iH(t)),{duration:0,delay:0,easing:""};i=YM(parseFloat(a[1]),a[2]);let r=a[3];r!=null&&(n=YM(parseFloat(r),a[4]));let s=a[5];s&&(o=s)}else i=t;if(!e){let a=!1,r=A.length;i<0&&(A.push(S0e()),a=!0),n<0&&(A.push(k0e()),a=!0),a&&A.splice(r,0,iH(t))}return{duration:i,delay:n,easing:o}}function _H(t){return t.length?t[0]instanceof Map?t:t.map(A=>new Map(Object.entries(A))):[]}function $c(t,A,e){A.forEach((i,n)=>{let o=R3(n);e&&!e.has(n)&&e.set(n,t.style[o]),t.style[o]=i})}function fd(t,A){A.forEach((e,i)=>{let n=R3(i);t.style[n]=""})}function _B(t){return Array.isArray(t)?t.length==1?t[0]:tH(t):t}function xH(t,A,e){let i=A.params||{},n=$M(t);n.length&&n.forEach(o=>{i.hasOwnProperty(o)||e.push(_0e(o))})}var HM=new RegExp(`${ZM}\\s*(.+?)\\s*${U0e}`,"g");function $M(t){let A=[];if(typeof t=="string"){let e;for(;e=HM.exec(t);)A.push(e[1]);HM.lastIndex=0}return A}function xB(t,A,e){let i=`${t}`,n=i.replace(HM,(o,a)=>{let r=A[a];return r==null&&(e.push(x0e(a)),r=""),r.toString()});return n==i?t:n}var J0e=/-+([a-z0-9])/g;function R3(t){return t.replace(J0e,(...A)=>A[1].toUpperCase())}function RH(t,A){return t===0||A===0}function NH(t,A,e){if(e.size&&A.length){let i=A[0],n=[];if(e.forEach((o,a)=>{i.has(a)||n.push(a),i.set(a,o)}),n.length)for(let o=1;oa.set(r,N3(t,r)))}}return A}function sl(t,A,e){switch(A.type){case mn.Trigger:return t.visitTrigger(A,e);case mn.State:return t.visitState(A,e);case mn.Transition:return t.visitTransition(A,e);case mn.Sequence:return t.visitSequence(A,e);case mn.Group:return t.visitGroup(A,e);case mn.Animate:return t.visitAnimate(A,e);case mn.Keyframes:return t.visitKeyframes(A,e);case mn.Style:return t.visitStyle(A,e);case mn.Reference:return t.visitReference(A,e);case mn.AnimateChild:return t.visitAnimateChild(A,e);case mn.AnimateRef:return t.visitAnimateRef(A,e);case mn.Query:return t.visitQuery(A,e);case mn.Stagger:return t.visitStagger(A,e);default:throw R0e(A.type)}}function N3(t,A){return window.getComputedStyle(t)[A]}var h9=(()=>{class t{validateStyleProperty(e){return kH(e)}containsElement(e,i){return VM(e,i)}getParentElement(e){return k3(e)}query(e,i,n){return qM(e,i,n)}computeStyle(e,i,n){return n||""}animate(e,i,n,o,a,r=[],s){return new sC(n,o)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac})}return t})(),fI=class{static NOOP=new h9},wI=class{};var z0e=new Set(["width","height","minWidth","minHeight","maxWidth","maxHeight","left","top","bottom","right","fontSize","outlineWidth","outlineOffset","paddingTop","paddingLeft","paddingBottom","paddingRight","marginTop","marginLeft","marginBottom","marginRight","borderRadius","borderWidth","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","textIndent","perspective"]),U3=class extends wI{normalizePropertyName(A,e){return R3(A)}normalizeStyleValue(A,e,i,n){let o="",a=i.toString().trim();if(z0e.has(e)&&i!==0&&i!=="0")if(typeof i=="number")o="px";else{let r=i.match(/^[+-]?[\d\.]+([a-z]*)$/);r&&r[1].length==0&&n.push(oH(A,i))}return a+o}};var T3="*";function Y0e(t,A){let e=[];return typeof t=="string"?t.split(/\s*,\s*/).forEach(i=>H0e(i,e,A)):e.push(t),e}function H0e(t,A,e){if(t[0]==":"){let s=P0e(t,e);if(typeof s=="function"){A.push(s);return}t=s}let i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(i==null||i.length<4)return e.push(uH(t)),A;let n=i[1],o=i[2],a=i[3];A.push(FH(n,a));let r=n==T3&&a==T3;o[0]=="<"&&!r&&A.push(FH(a,n))}function P0e(t,A){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(e,i)=>parseFloat(i)>parseFloat(e);case":decrement":return(e,i)=>parseFloat(i) *"}}var F3=new Set(["true","1"]),L3=new Set(["false","0"]);function FH(t,A){let e=F3.has(t)||L3.has(t),i=F3.has(A)||L3.has(A);return(n,o)=>{let a=t==T3||t==n,r=A==T3||A==o;return!a&&e&&typeof n=="boolean"&&(a=n?F3.has(t):L3.has(t)),!r&&i&&typeof o=="boolean"&&(r=o?F3.has(A):L3.has(A)),a&&r}}var HH=":self",j0e=new RegExp(`s*${HH}s*,?`,"g");function PH(t,A,e,i){return new o9(t).build(A,e,i)}var LH="",o9=class{_driver;constructor(A){this._driver=A}build(A,e,i){let n=new a9(e);return this._resetContextStyleTimingState(n),sl(this,_B(A),n)}_resetContextStyleTimingState(A){A.currentQuerySelector=LH,A.collectedStyles=new Map,A.collectedStyles.set(LH,new Map),A.currentTime=0}visitTrigger(A,e){let i=e.queryCount=0,n=e.depCount=0,o=[],a=[];return A.name.charAt(0)=="@"&&e.errors.push(aH()),A.definitions.forEach(r=>{if(this._resetContextStyleTimingState(e),r.type==mn.State){let s=r,l=s.name;l.toString().split(/\s*,\s*/).forEach(c=>{s.name=c,o.push(this.visitState(s,e))}),s.name=l}else if(r.type==mn.Transition){let s=this.visitTransition(r,e);i+=s.queryCount,n+=s.depCount,a.push(s)}else e.errors.push(rH())}),{type:mn.Trigger,name:A.name,states:o,transitions:a,queryCount:i,depCount:n,options:null}}visitState(A,e){let i=this.visitStyle(A.styles,e),n=A.options&&A.options.params||null;if(i.containsDynamicStyles){let o=new Set,a=n||{};i.styles.forEach(r=>{r instanceof Map&&r.forEach(s=>{$M(s).forEach(l=>{a.hasOwnProperty(l)||o.add(l)})})}),o.size&&e.errors.push(sH(A.name,[...o.values()]))}return{type:mn.State,name:A.name,style:i,options:n?{params:n}:null}}visitTransition(A,e){e.queryCount=0,e.depCount=0;let i=sl(this,_B(A.animation),e),n=Y0e(A.expr,e.errors);return{type:mn.Transition,matchers:n,animation:i,queryCount:e.queryCount,depCount:e.depCount,options:mI(A.options)}}visitSequence(A,e){return{type:mn.Sequence,steps:A.steps.map(i=>sl(this,i,e)),options:mI(A.options)}}visitGroup(A,e){let i=e.currentTime,n=0,o=A.steps.map(a=>{e.currentTime=i;let r=sl(this,a,e);return n=Math.max(n,e.currentTime),r});return e.currentTime=n,{type:mn.Group,steps:o,options:mI(A.options)}}visitAnimate(A,e){let i=W0e(A.timings,e.errors);e.currentAnimateTimings=i;let n,o=A.styles?A.styles:JM({});if(o.type==mn.Keyframes)n=this.visitKeyframes(o,e);else{let a=A.styles,r=!1;if(!a){r=!0;let l={};i.easing&&(l.easing=i.easing),a=JM(l)}e.currentTime+=i.duration+i.delay;let s=this.visitStyle(a,e);s.isEmptyStep=r,n=s}return e.currentAnimateTimings=null,{type:mn.Animate,timings:i,style:n,options:null}}visitStyle(A,e){let i=this._makeStyleAst(A,e);return this._validateStyleAst(i,e),i}_makeStyleAst(A,e){let i=[],n=Array.isArray(A.styles)?A.styles:[A.styles];for(let r of n)typeof r=="string"?r===Xc?i.push(r):e.errors.push(lH(r)):i.push(new Map(Object.entries(r)));let o=!1,a=null;return i.forEach(r=>{if(r instanceof Map&&(r.has("easing")&&(a=r.get("easing"),r.delete("easing")),!o)){for(let s of r.values())if(s.toString().indexOf(ZM)>=0){o=!0;break}}}),{type:mn.Style,styles:i,easing:a,offset:A.offset,containsDynamicStyles:o,options:null}}_validateStyleAst(A,e){let i=e.currentAnimateTimings,n=e.currentTime,o=e.currentTime;i&&o>0&&(o-=i.duration+i.delay),A.styles.forEach(a=>{typeof a!="string"&&a.forEach((r,s)=>{let l=e.collectedStyles.get(e.currentQuerySelector),c=l.get(s),C=!0;c&&(o!=n&&o>=c.startTime&&n<=c.endTime&&(e.errors.push(cH(s,c.startTime,c.endTime,o,n)),C=!1),o=c.startTime),C&&l.set(s,{startTime:o,endTime:n}),e.options&&xH(r,e.options,e.errors)})})}visitKeyframes(A,e){let i={type:mn.Keyframes,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push(gH()),i;let n=1,o=0,a=[],r=!1,s=!1,l=0,c=A.steps.map(f=>{let D=this._makeStyleAst(f,e),S=D.offset!=null?D.offset:Z0e(D.styles),k=0;return S!=null&&(o++,k=D.offset=S),s=s||k<0||k>1,r=r||k0&&o{let S=d>0?D==B?1:d*D:a[D],k=S*m;e.currentTime=E+u.delay+k,u.duration=k,this._validateStyleAst(f,e),f.offset=S,i.styles.push(f)}),i}visitReference(A,e){return{type:mn.Reference,animation:sl(this,_B(A.animation),e),options:mI(A.options)}}visitAnimateChild(A,e){return e.depCount++,{type:mn.AnimateChild,options:mI(A.options)}}visitAnimateRef(A,e){return{type:mn.AnimateRef,animation:this.visitReference(A.animation,e),options:mI(A.options)}}visitQuery(A,e){let i=e.currentQuerySelector,n=A.options||{};e.queryCount++,e.currentQuery=A;let[o,a]=V0e(A.selector);e.currentQuerySelector=i.length?i+" "+o:o,rl(e.collectedStyles,e.currentQuerySelector,new Map);let r=sl(this,_B(A.animation),e);return e.currentQuery=null,e.currentQuerySelector=i,{type:mn.Query,selector:o,limit:n.limit||0,optional:!!n.optional,includeSelf:a,animation:r,originalSelector:A.selector,options:mI(A.options)}}visitStagger(A,e){e.currentQuery||e.errors.push(BH());let i=A.timings==="full"?{duration:0,delay:0,easing:"full"}:FQ(A.timings,e.errors,!0);return{type:mn.Stagger,animation:sl(this,_B(A.animation),e),timings:i,options:null}}};function V0e(t){let A=!!t.split(/\s*,\s*/).find(e=>e==HH);return A&&(t=t.replace(j0e,"")),t=t.replace(/@\*/g,NQ).replace(/@\w+/g,e=>NQ+"-"+e.slice(1)).replace(/:animating/g,x3),[t,A]}function q0e(t){return t?Y({},t):null}var a9=class{errors;queryCount=0;depCount=0;currentTransition=null;currentQuery=null;currentQuerySelector=null;currentAnimateTimings=null;currentTime=0;collectedStyles=new Map;options=null;unsupportedCSSPropertiesFound=new Set;constructor(A){this.errors=A}};function Z0e(t){if(typeof t=="string")return null;let A=null;if(Array.isArray(t))t.forEach(e=>{if(e instanceof Map&&e.has("offset")){let i=e;A=parseFloat(i.get("offset")),i.delete("offset")}});else if(t instanceof Map&&t.has("offset")){let e=t;A=parseFloat(e.get("offset")),e.delete("offset")}return A}function W0e(t,A){if(t.hasOwnProperty("duration"))return t;if(typeof t=="number"){let o=FQ(t,A).duration;return e9(o,0,"")}let e=t;if(e.split(/\s+/).some(o=>o.charAt(0)=="{"&&o.charAt(1)=="{")){let o=e9(0,0,"");return o.dynamic=!0,o.strValue=e,o}let n=FQ(e,A);return e9(n.duration,n.delay,n.easing)}function mI(t){return t?(t=Y({},t),t.params&&(t.params=q0e(t.params))):t={},t}function e9(t,A,e){return{duration:t,delay:A,easing:e}}function u9(t,A,e,i,n,o,a=null,r=!1){return{type:1,element:t,keyframes:A,preStyleProps:e,postStyleProps:i,duration:n,delay:o,totalTime:n+o,easing:a,subTimeline:r}}var GQ=class{_map=new Map;get(A){return this._map.get(A)||[]}append(A,e){let i=this._map.get(A);i||this._map.set(A,i=[]),i.push(...e)}has(A){return this._map.has(A)}clear(){this._map.clear()}},X0e=1,$0e=":enter",eCe=new RegExp($0e,"g"),ACe=":leave",tCe=new RegExp(ACe,"g");function jH(t,A,e,i,n,o=new Map,a=new Map,r,s,l=[]){return new r9().buildKeyframes(t,A,e,i,n,o,a,r,s,l)}var r9=class{buildKeyframes(A,e,i,n,o,a,r,s,l,c=[]){l=l||new GQ;let C=new s9(A,e,l,n,o,c,[]);C.options=s;let d=s.delay?a0(s.delay):0;C.currentTimeline.delayNextStep(d),C.currentTimeline.setStyles([a],null,C.errors,s),sl(this,i,C);let B=C.timelines.filter(E=>E.containsAnimation());if(B.length&&r.size){let E;for(let u=B.length-1;u>=0;u--){let m=B[u];if(m.element===e){E=m;break}}E&&!E.allowOnlyTimelineStyles()&&E.setStyles([r],null,C.errors,s)}return B.length?B.map(E=>E.buildKeyframes()):[u9(e,[],[],[],0,d,"",!1)]}visitTrigger(A,e){}visitState(A,e){}visitTransition(A,e){}visitAnimateChild(A,e){let i=e.subInstructions.get(e.element);if(i){let n=e.createSubContext(A.options),o=e.currentTimeline.currentTime,a=this._visitSubInstructions(i,n,n.options);o!=a&&e.transformIntoNewTimeline(a)}e.previousNode=A}visitAnimateRef(A,e){let i=e.createSubContext(A.options);i.transformIntoNewTimeline(),this._applyAnimationRefDelays([A.options,A.animation.options],e,i),this.visitReference(A.animation,i),e.transformIntoNewTimeline(i.currentTimeline.currentTime),e.previousNode=A}_applyAnimationRefDelays(A,e,i){for(let n of A){let o=n?.delay;if(o){let a=typeof o=="number"?o:a0(xB(o,n?.params??{},e.errors));i.delayNextStep(a)}}}_visitSubInstructions(A,e,i){let o=e.currentTimeline.currentTime,a=i.duration!=null?a0(i.duration):null,r=i.delay!=null?a0(i.delay):null;return a!==0&&A.forEach(s=>{let l=e.appendInstructionToTimeline(s,a,r);o=Math.max(o,l.duration+l.delay)}),o}visitReference(A,e){e.updateOptions(A.options,!0),sl(this,A.animation,e),e.previousNode=A}visitSequence(A,e){let i=e.subContextCount,n=e,o=A.options;if(o&&(o.params||o.delay)&&(n=e.createSubContext(o),n.transformIntoNewTimeline(),o.delay!=null)){n.previousNode.type==mn.Style&&(n.currentTimeline.snapshotCurrentStyles(),n.previousNode=O3);let a=a0(o.delay);n.delayNextStep(a)}A.steps.length&&(A.steps.forEach(a=>sl(this,a,n)),n.currentTimeline.applyStylesToKeyframe(),n.subContextCount>i&&n.transformIntoNewTimeline()),e.previousNode=A}visitGroup(A,e){let i=[],n=e.currentTimeline.currentTime,o=A.options&&A.options.delay?a0(A.options.delay):0;A.steps.forEach(a=>{let r=e.createSubContext(A.options);o&&r.delayNextStep(o),sl(this,a,r),n=Math.max(n,r.currentTimeline.currentTime),i.push(r.currentTimeline)}),i.forEach(a=>e.currentTimeline.mergeTimelineCollectedStyles(a)),e.transformIntoNewTimeline(n),e.previousNode=A}_visitTiming(A,e){if(A.dynamic){let i=A.strValue,n=e.params?xB(i,e.params,e.errors):i;return FQ(n,e.errors)}else return{duration:A.duration,delay:A.delay,easing:A.easing}}visitAnimate(A,e){let i=e.currentAnimateTimings=this._visitTiming(A.timings,e),n=e.currentTimeline;i.delay&&(e.incrementTime(i.delay),n.snapshotCurrentStyles());let o=A.style;o.type==mn.Keyframes?this.visitKeyframes(o,e):(e.incrementTime(i.duration),this.visitStyle(o,e),n.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=A}visitStyle(A,e){let i=e.currentTimeline,n=e.currentAnimateTimings;!n&&i.hasCurrentStyleProperties()&&i.forwardFrame();let o=n&&n.easing||A.easing;A.isEmptyStep?i.applyEmptyStep(o):i.setStyles(A.styles,o,e.errors,e.options),e.previousNode=A}visitKeyframes(A,e){let i=e.currentAnimateTimings,n=e.currentTimeline.duration,o=i.duration,r=e.createSubContext().currentTimeline;r.easing=i.easing,A.styles.forEach(s=>{let l=s.offset||0;r.forwardTime(l*o),r.setStyles(s.styles,s.easing,e.errors,e.options),r.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(r),e.transformIntoNewTimeline(n+o),e.previousNode=A}visitQuery(A,e){let i=e.currentTimeline.currentTime,n=A.options||{},o=n.delay?a0(n.delay):0;o&&(e.previousNode.type===mn.Style||i==0&&e.currentTimeline.hasCurrentStyleProperties())&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=O3);let a=i,r=e.invokeQuery(A.selector,A.originalSelector,A.limit,A.includeSelf,!!n.optional,e.errors);e.currentQueryTotal=r.length;let s=null;r.forEach((l,c)=>{e.currentQueryIndex=c;let C=e.createSubContext(A.options,l);o&&C.delayNextStep(o),l===e.element&&(s=C.currentTimeline),sl(this,A.animation,C),C.currentTimeline.applyStylesToKeyframe();let d=C.currentTimeline.currentTime;a=Math.max(a,d)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(a),s&&(e.currentTimeline.mergeTimelineCollectedStyles(s),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=A}visitStagger(A,e){let i=e.parentContext,n=e.currentTimeline,o=A.timings,a=Math.abs(o.duration),r=a*(e.currentQueryTotal-1),s=a*e.currentQueryIndex;switch(o.duration<0?"reverse":o.easing){case"reverse":s=r-s;break;case"full":s=i.currentStaggerTime;break}let c=e.currentTimeline;s&&c.delayNextStep(s);let C=c.currentTime;sl(this,A.animation,e),e.previousNode=A,i.currentStaggerTime=n.currentTime-C+(n.startTime-i.currentTimeline.startTime)}},O3={},s9=class t{_driver;element;subInstructions;_enterClassName;_leaveClassName;errors;timelines;parentContext=null;currentTimeline;currentAnimateTimings=null;previousNode=O3;subContextCount=0;options={};currentQueryIndex=0;currentQueryTotal=0;currentStaggerTime=0;constructor(A,e,i,n,o,a,r,s){this._driver=A,this.element=e,this.subInstructions=i,this._enterClassName=n,this._leaveClassName=o,this.errors=a,this.timelines=r,this.currentTimeline=s||new J3(this._driver,e,0),r.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(A,e){if(!A)return;let i=A,n=this.options;i.duration!=null&&(n.duration=a0(i.duration)),i.delay!=null&&(n.delay=a0(i.delay));let o=i.params;if(o){let a=n.params;a||(a=this.options.params={}),Object.keys(o).forEach(r=>{(!e||!a.hasOwnProperty(r))&&(a[r]=xB(o[r],a,this.errors))})}}_copyOptions(){let A={};if(this.options){let e=this.options.params;if(e){let i=A.params={};Object.keys(e).forEach(n=>{i[n]=e[n]})}}return A}createSubContext(A=null,e,i){let n=e||this.element,o=new t(this._driver,n,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(n,i||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(A),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o}transformIntoNewTimeline(A){return this.previousNode=O3,this.currentTimeline=this.currentTimeline.fork(this.element,A),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(A,e,i){let n={duration:e??A.duration,delay:this.currentTimeline.currentTime+(i??0)+A.delay,easing:""},o=new l9(this._driver,A.element,A.keyframes,A.preStyleProps,A.postStyleProps,n,A.stretchStartingKeyframe);return this.timelines.push(o),n}incrementTime(A){this.currentTimeline.forwardTime(this.currentTimeline.duration+A)}delayNextStep(A){A>0&&this.currentTimeline.delayNextStep(A)}invokeQuery(A,e,i,n,o,a){let r=[];if(n&&r.push(this.element),A.length>0){A=A.replace(eCe,"."+this._enterClassName),A=A.replace(tCe,"."+this._leaveClassName);let s=i!=1,l=this._driver.query(this.element,A,s);i!==0&&(l=i<0?l.slice(l.length+i,l.length):l.slice(0,i)),r.push(...l)}return!o&&r.length==0&&a.push(hH(e)),r}},J3=class t{_driver;element;startTime;_elementTimelineStylesLookup;duration=0;easing=null;_previousKeyframe=new Map;_currentKeyframe=new Map;_keyframes=new Map;_styleSummary=new Map;_localTimelineStyles=new Map;_globalTimelineStyles;_pendingStyles=new Map;_backFill=new Map;_currentEmptyStepKeyframe=null;constructor(A,e,i,n){this._driver=A,this.element=e,this.startTime=i,this._elementTimelineStylesLookup=n,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.hasCurrentStyleProperties();default:return!0}}hasCurrentStyleProperties(){return this._currentKeyframe.size>0}get currentTime(){return this.startTime+this.duration}delayNextStep(A){let e=this._keyframes.size===1&&this._pendingStyles.size;this.duration||e?(this.forwardTime(this.currentTime+A),e&&this.snapshotCurrentStyles()):this.startTime+=A}fork(A,e){return this.applyStylesToKeyframe(),new t(this._driver,A,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=new Map,this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=X0e,this._loadKeyframe()}forwardTime(A){this.applyStylesToKeyframe(),this.duration=A,this._loadKeyframe()}_updateStyle(A,e){this._localTimelineStyles.set(A,e),this._globalTimelineStyles.set(A,e),this._styleSummary.set(A,{time:this.currentTime,value:e})}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(A){A&&this._previousKeyframe.set("easing",A);for(let[e,i]of this._globalTimelineStyles)this._backFill.set(e,i||Xc),this._currentKeyframe.set(e,Xc);this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(A,e,i,n){e&&this._previousKeyframe.set("easing",e);let o=n&&n.params||{},a=iCe(A,this._globalTimelineStyles);for(let[r,s]of a){let l=xB(s,o,i);this._pendingStyles.set(r,l),this._localTimelineStyles.has(r)||this._backFill.set(r,this._globalTimelineStyles.get(r)??Xc),this._updateStyle(r,l)}}applyStylesToKeyframe(){this._pendingStyles.size!=0&&(this._pendingStyles.forEach((A,e)=>{this._currentKeyframe.set(e,A)}),this._pendingStyles.clear(),this._localTimelineStyles.forEach((A,e)=>{this._currentKeyframe.has(e)||this._currentKeyframe.set(e,A)}))}snapshotCurrentStyles(){for(let[A,e]of this._localTimelineStyles)this._pendingStyles.set(A,e),this._updateStyle(A,e)}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){let A=[];for(let e in this._currentKeyframe)A.push(e);return A}mergeTimelineCollectedStyles(A){A._styleSummary.forEach((e,i)=>{let n=this._styleSummary.get(i);(!n||e.time>n.time)&&this._updateStyle(i,e.value)})}buildKeyframes(){this.applyStylesToKeyframe();let A=new Set,e=new Set,i=this._keyframes.size===1&&this.duration===0,n=[];this._keyframes.forEach((r,s)=>{let l=new Map([...this._backFill,...r]);l.forEach((c,C)=>{c===xQ?A.add(C):c===Xc&&e.add(C)}),i||l.set("offset",s/this.duration),n.push(l)});let o=[...A.values()],a=[...e.values()];if(i){let r=n[0],s=new Map(r);r.set("offset",0),s.set("offset",1),n=[r,s]}return u9(this.element,n,o,a,this.duration,this.startTime,this.easing,!1)}},l9=class extends J3{keyframes;preStyleProps;postStyleProps;_stretchStartingKeyframe;timings;constructor(A,e,i,n,o,a,r=!1){super(A,e,a.delay),this.keyframes=i,this.preStyleProps=n,this.postStyleProps=o,this._stretchStartingKeyframe=r,this.timings={duration:a.duration,delay:a.delay,easing:a.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let A=this.keyframes,{delay:e,duration:i,easing:n}=this.timings;if(this._stretchStartingKeyframe&&e){let o=[],a=i+e,r=e/a,s=new Map(A[0]);s.set("offset",0),o.push(s);let l=new Map(A[0]);l.set("offset",GH(r)),o.push(l);let c=A.length-1;for(let C=1;C<=c;C++){let d=new Map(A[C]),B=d.get("offset"),E=e+B*i;d.set("offset",GH(E/a)),o.push(d)}i=a,e=0,n="",A=o}return u9(this.element,A,this.preStyleProps,this.postStyleProps,i,e,n,!0)}};function GH(t,A=3){let e=Math.pow(10,A-1);return Math.round(t*e)/e}function iCe(t,A){let e=new Map,i;return t.forEach(n=>{if(n==="*"){i??=A.keys();for(let o of i)e.set(o,Xc)}else for(let[o,a]of n)e.set(o,a)}),e}function KH(t,A,e,i,n,o,a,r,s,l,c,C,d){return{type:0,element:t,triggerName:A,isRemovalTransition:n,fromState:e,fromStyles:o,toState:i,toStyles:a,timelines:r,queriedElements:s,preStyleProps:l,postStyleProps:c,totalTime:C,errors:d}}var A9={},z3=class{_triggerName;ast;_stateStyles;constructor(A,e,i){this._triggerName=A,this.ast=e,this._stateStyles=i}match(A,e,i,n){return nCe(this.ast.matchers,A,e,i,n)}buildStyles(A,e,i){let n=this._stateStyles.get("*");return A!==void 0&&(n=this._stateStyles.get(A?.toString())||n),n?n.buildStyles(e,i):new Map}build(A,e,i,n,o,a,r,s,l,c){let C=[],d=this.ast.options&&this.ast.options.params||A9,B=r&&r.params||A9,E=this.buildStyles(i,B,C),u=s&&s.params||A9,m=this.buildStyles(n,u,C),f=new Set,D=new Map,S=new Map,k=n==="void",b={params:VH(u,d),delay:this.ast.options?.delay},x=c?[]:jH(A,e,this.ast.animation,o,a,E,m,b,l,C),F=0;return x.forEach(P=>{F=Math.max(P.duration+P.delay,F)}),C.length?KH(e,this._triggerName,i,n,k,E,m,[],[],D,S,F,C):(x.forEach(P=>{let j=P.element,X=rl(D,j,new Set);P.preStyleProps.forEach(W=>X.add(W));let Ae=rl(S,j,new Set);P.postStyleProps.forEach(W=>Ae.add(W)),j!==e&&f.add(j)}),KH(e,this._triggerName,i,n,k,E,m,x,[...f.values()],D,S,F))}};function nCe(t,A,e,i,n){return t.some(o=>o(A,e,i,n))}function VH(t,A){let e=Y({},A);return Object.entries(t).forEach(([i,n])=>{n!=null&&(e[i]=n)}),e}var c9=class{styles;defaultParams;normalizer;constructor(A,e,i){this.styles=A,this.defaultParams=e,this.normalizer=i}buildStyles(A,e){let i=new Map,n=VH(A,this.defaultParams);return this.styles.styles.forEach(o=>{typeof o!="string"&&o.forEach((a,r)=>{a&&(a=xB(a,n,e));let s=this.normalizer.normalizePropertyName(r,e);a=this.normalizer.normalizeStyleValue(r,s,a,e),i.set(r,a)})}),i}};function oCe(t,A,e){return new g9(t,A,e)}var g9=class{name;ast;_normalizer;transitionFactories=[];fallbackTransition;states=new Map;constructor(A,e,i){this.name=A,this.ast=e,this._normalizer=i,e.states.forEach(n=>{let o=n.options&&n.options.params||{};this.states.set(n.name,new c9(n.style,o,i))}),UH(this.states,"true","1"),UH(this.states,"false","0"),e.transitions.forEach(n=>{this.transitionFactories.push(new z3(A,n,this.states))}),this.fallbackTransition=aCe(A,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(A,e,i,n){return this.transitionFactories.find(a=>a.match(A,e,i,n))||null}matchStyles(A,e,i){return this.fallbackTransition.buildStyles(A,e,i)}};function aCe(t,A,e){let i=[(a,r)=>!0],n={type:mn.Sequence,steps:[],options:null},o={type:mn.Transition,animation:n,matchers:i,options:null,queryCount:0,depCount:0};return new z3(t,o,A)}function UH(t,A,e){t.has(A)?t.has(e)||t.set(e,t.get(A)):t.has(e)&&t.set(A,t.get(e))}var rCe=new GQ,C9=class{bodyNode;_driver;_normalizer;_animations=new Map;_playersById=new Map;players=[];constructor(A,e,i){this.bodyNode=A,this._driver=e,this._normalizer=i}register(A,e){let i=[],n=[],o=PH(this._driver,e,i,n);if(i.length)throw pH(i);this._animations.set(A,o)}_buildPlayer(A,e,i){let n=A.element,o=PM(this._normalizer,A.keyframes,e,i);return this._driver.animate(n,o,A.duration,A.delay,A.easing,[],!0)}create(A,e,i={}){let n=[],o=this._animations.get(A),a,r=new Map;if(o?(a=jH(this._driver,e,o,WM,_3,new Map,new Map,i,rCe,n),a.forEach(c=>{let C=rl(r,c.element,new Map);c.postStyleProps.forEach(d=>C.set(d,null))})):(n.push(mH()),a=[]),n.length)throw fH(n);r.forEach((c,C)=>{c.forEach((d,B)=>{c.set(B,this._driver.computeStyle(C,B,Xc))})});let s=a.map(c=>{let C=r.get(c.element);return this._buildPlayer(c,new Map,C)}),l=lC(s);return this._playersById.set(A,l),l.onDestroy(()=>this.destroy(A)),this.players.push(l),l}destroy(A){let e=this._getPlayer(A);e.destroy(),this._playersById.delete(A);let i=this.players.indexOf(e);i>=0&&this.players.splice(i,1)}_getPlayer(A){let e=this._playersById.get(A);if(!e)throw wH(A);return e}listen(A,e,i,n){let o=S3(e,"","","");return M3(this._getPlayer(A),i,o,n),()=>{}}command(A,e,i,n){if(i=="register"){this.register(A,n[0]);return}if(i=="create"){let a=n[0]||{};this.create(A,e,a);return}let o=this._getPlayer(A);switch(i){case"play":o.play();break;case"pause":o.pause();break;case"reset":o.reset();break;case"restart":o.restart();break;case"finish":o.finish();break;case"init":o.init();break;case"setPosition":o.setPosition(parseFloat(n[0]));break;case"destroy":this.destroy(A);break}}},TH="ng-animate-queued",sCe=".ng-animate-queued",t9="ng-animate-disabled",lCe=".ng-animate-disabled",cCe="ng-star-inserted",gCe=".ng-star-inserted",CCe=[],qH={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},dCe={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},eg="__ng_removed",KQ=class{namespaceId;value;options;get params(){return this.options.params}constructor(A,e=""){this.namespaceId=e;let i=A&&A.hasOwnProperty("value"),n=i?A.value:A;if(this.value=BCe(n),i){let o=A,{value:a}=o,r=ld(o,["value"]);this.options=r}else this.options={};this.options.params||(this.options.params={})}absorbOptions(A){let e=A.params;if(e){let i=this.options.params;Object.keys(e).forEach(n=>{i[n]==null&&(i[n]=e[n])})}}},LQ="void",i9=new KQ(LQ),d9=class{id;hostElement;_engine;players=[];_triggers=new Map;_queue=[];_elementListeners=new Map;_hostClassName;constructor(A,e,i){this.id=A,this.hostElement=e,this._engine=i,this._hostClassName="ng-tns-"+A,gc(e,this._hostClassName)}listen(A,e,i,n){if(!this._triggers.has(e))throw yH(i,e);if(i==null||i.length==0)throw vH(e);if(!hCe(i))throw DH(i,e);let o=rl(this._elementListeners,A,[]),a={name:e,phase:i,callback:n};o.push(a);let r=rl(this._engine.statesByElement,A,new Map);return r.has(e)||(gc(A,RQ),gc(A,RQ+"-"+e),r.set(e,i9)),()=>{this._engine.afterFlush(()=>{let s=o.indexOf(a);s>=0&&o.splice(s,1),this._triggers.has(e)||r.delete(e)})}}register(A,e){return this._triggers.has(A)?!1:(this._triggers.set(A,e),!0)}_getTrigger(A){let e=this._triggers.get(A);if(!e)throw bH(A);return e}trigger(A,e,i,n=!0){let o=this._getTrigger(e),a=new UQ(this.id,e,A),r=this._engine.statesByElement.get(A);r||(gc(A,RQ),gc(A,RQ+"-"+e),this._engine.statesByElement.set(A,r=new Map));let s=r.get(e),l=new KQ(i,this.id);if(!(i&&i.hasOwnProperty("value"))&&s&&l.absorbOptions(s.options),r.set(e,l),s||(s=i9),!(l.value===LQ)&&s.value===l.value){if(!QCe(s.params,l.params)){let u=[],m=o.matchStyles(s.value,s.params,u),f=o.matchStyles(l.value,l.params,u);u.length?this._engine.reportError(u):this._engine.afterFlush(()=>{fd(A,m),$c(A,f)})}return}let d=rl(this._engine.playersByElement,A,[]);d.forEach(u=>{u.namespaceId==this.id&&u.triggerName==e&&u.queued&&u.destroy()});let B=o.matchTransition(s.value,l.value,A,l.params),E=!1;if(!B){if(!n)return;B=o.fallbackTransition,E=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:A,triggerName:e,transition:B,fromState:s,toState:l,player:a,isFallbackTransition:E}),E||(gc(A,TH),a.onStart(()=>{RB(A,TH)})),a.onDone(()=>{let u=this.players.indexOf(a);u>=0&&this.players.splice(u,1);let m=this._engine.playersByElement.get(A);if(m){let f=m.indexOf(a);f>=0&&m.splice(f,1)}}),this.players.push(a),d.push(a),a}deregister(A){this._triggers.delete(A),this._engine.statesByElement.forEach(e=>e.delete(A)),this._elementListeners.forEach((e,i)=>{this._elementListeners.set(i,e.filter(n=>n.name!=A))})}clearElementCache(A){this._engine.statesByElement.delete(A),this._elementListeners.delete(A);let e=this._engine.playersByElement.get(A);e&&(e.forEach(i=>i.destroy()),this._engine.playersByElement.delete(A))}_signalRemovalForInnerTriggers(A,e){let i=this._engine.driver.query(A,NQ,!0);i.forEach(n=>{if(n[eg])return;let o=this._engine.fetchNamespacesByElement(n);o.size?o.forEach(a=>a.triggerLeaveAnimation(n,e,!1,!0)):this.clearElementCache(n)}),this._engine.afterFlushAnimationsDone(()=>i.forEach(n=>this.clearElementCache(n)))}triggerLeaveAnimation(A,e,i,n){let o=this._engine.statesByElement.get(A),a=new Map;if(o){let r=[];if(o.forEach((s,l)=>{if(a.set(l,s.value),this._triggers.has(l)){let c=this.trigger(A,l,LQ,n);c&&r.push(c)}}),r.length)return this._engine.markElementAsRemoved(this.id,A,!0,e,a),i&&lC(r).onDone(()=>this._engine.processLeaveNode(A)),!0}return!1}prepareLeaveAnimationListeners(A){let e=this._elementListeners.get(A),i=this._engine.statesByElement.get(A);if(e&&i){let n=new Set;e.forEach(o=>{let a=o.name;if(n.has(a))return;n.add(a);let s=this._triggers.get(a).fallbackTransition,l=i.get(a)||i9,c=new KQ(LQ),C=new UQ(this.id,a,A);this._engine.totalQueuedPlayers++,this._queue.push({element:A,triggerName:a,transition:s,fromState:l,toState:c,player:C,isFallbackTransition:!0})})}}removeNode(A,e){let i=this._engine;if(A.childElementCount&&this._signalRemovalForInnerTriggers(A,e),this.triggerLeaveAnimation(A,e,!0))return;let n=!1;if(i.totalAnimations){let o=i.players.length?i.playersByQueriedElement.get(A):[];if(o&&o.length)n=!0;else{let a=A;for(;a=a.parentNode;)if(i.statesByElement.get(a)){n=!0;break}}}if(this.prepareLeaveAnimationListeners(A),n)i.markElementAsRemoved(this.id,A,!1,e);else{let o=A[eg];(!o||o===qH)&&(i.afterFlush(()=>this.clearElementCache(A)),i.destroyInnerAnimations(A),i._onRemovalComplete(A,e))}}insertNode(A,e){gc(A,this._hostClassName)}drainQueuedTransitions(A){let e=[];return this._queue.forEach(i=>{let n=i.player;if(n.destroyed)return;let o=i.element,a=this._elementListeners.get(o);a&&a.forEach(r=>{if(r.name==i.triggerName){let s=S3(o,i.triggerName,i.fromState.value,i.toState.value);s._data=A,M3(i.player,r.phase,s,r.callback)}}),n.markedForDestroy?this._engine.afterFlush(()=>{n.destroy()}):e.push(i)}),this._queue=[],e.sort((i,n)=>{let o=i.transition.ast.depCount,a=n.transition.ast.depCount;return o==0||a==0?o-a:this._engine.driver.containsElement(i.element,n.element)?1:-1})}destroy(A){this.players.forEach(e=>e.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,A)}},I9=class{bodyNode;driver;_normalizer;players=[];newHostElements=new Map;playersByElement=new Map;playersByQueriedElement=new Map;statesByElement=new Map;disabledNodes=new Set;totalAnimations=0;totalQueuedPlayers=0;_namespaceLookup={};_namespaceList=[];_flushFns=[];_whenQuietFns=[];namespacesByHostElement=new Map;collectedEnterElements=[];collectedLeaveElements=[];onRemovalComplete=(A,e)=>{};_onRemovalComplete(A,e){this.onRemovalComplete(A,e)}constructor(A,e,i){this.bodyNode=A,this.driver=e,this._normalizer=i}get queuedPlayers(){let A=[];return this._namespaceList.forEach(e=>{e.players.forEach(i=>{i.queued&&A.push(i)})}),A}createNamespace(A,e){let i=new d9(A,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?this._balanceNamespaceList(i,e):(this.newHostElements.set(e,i),this.collectEnterElement(e)),this._namespaceLookup[A]=i}_balanceNamespaceList(A,e){let i=this._namespaceList,n=this.namespacesByHostElement;if(i.length-1>=0){let a=!1,r=this.driver.getParentElement(e);for(;r;){let s=n.get(r);if(s){let l=i.indexOf(s);i.splice(l+1,0,A),a=!0;break}r=this.driver.getParentElement(r)}a||i.unshift(A)}else i.push(A);return n.set(e,A),A}register(A,e){let i=this._namespaceLookup[A];return i||(i=this.createNamespace(A,e)),i}registerTrigger(A,e,i){let n=this._namespaceLookup[A];n&&n.register(e,i)&&this.totalAnimations++}destroy(A,e){A&&(this.afterFlush(()=>{}),this.afterFlushAnimationsDone(()=>{let i=this._fetchNamespace(A);this.namespacesByHostElement.delete(i.hostElement);let n=this._namespaceList.indexOf(i);n>=0&&this._namespaceList.splice(n,1),i.destroy(e),delete this._namespaceLookup[A]}))}_fetchNamespace(A){return this._namespaceLookup[A]}fetchNamespacesByElement(A){let e=new Set,i=this.statesByElement.get(A);if(i){for(let n of i.values())if(n.namespaceId){let o=this._fetchNamespace(n.namespaceId);o&&e.add(o)}}return e}trigger(A,e,i,n){if(G3(e)){let o=this._fetchNamespace(A);if(o)return o.trigger(e,i,n),!0}return!1}insertNode(A,e,i,n){if(!G3(e))return;let o=e[eg];if(o&&o.setForRemoval){o.setForRemoval=!1,o.setForMove=!0;let a=this.collectedLeaveElements.indexOf(e);a>=0&&this.collectedLeaveElements.splice(a,1)}if(A){let a=this._fetchNamespace(A);a&&a.insertNode(e,i)}n&&this.collectEnterElement(e)}collectEnterElement(A){this.collectedEnterElements.push(A)}markElementAsDisabled(A,e){e?this.disabledNodes.has(A)||(this.disabledNodes.add(A),gc(A,t9)):this.disabledNodes.has(A)&&(this.disabledNodes.delete(A),RB(A,t9))}removeNode(A,e,i){if(G3(e)){let n=A?this._fetchNamespace(A):null;n?n.removeNode(e,i):this.markElementAsRemoved(A,e,!1,i);let o=this.namespacesByHostElement.get(e);o&&o.id!==A&&o.removeNode(e,i)}else this._onRemovalComplete(e,i)}markElementAsRemoved(A,e,i,n,o){this.collectedLeaveElements.push(e),e[eg]={namespaceId:A,setForRemoval:n,hasAnimation:i,removedBeforeQueried:!1,previousTriggersValues:o}}listen(A,e,i,n,o){return G3(e)?this._fetchNamespace(A).listen(e,i,n,o):()=>{}}_buildInstruction(A,e,i,n,o){return A.transition.build(this.driver,A.element,A.fromState.value,A.toState.value,i,n,A.fromState.options,A.toState.options,e,o)}destroyInnerAnimations(A){let e=this.driver.query(A,NQ,!0);e.forEach(i=>this.destroyActiveAnimationsForElement(i)),this.playersByQueriedElement.size!=0&&(e=this.driver.query(A,x3,!0),e.forEach(i=>this.finishActiveQueriedAnimationOnElement(i)))}destroyActiveAnimationsForElement(A){let e=this.playersByElement.get(A);e&&e.forEach(i=>{i.queued?i.markedForDestroy=!0:i.destroy()})}finishActiveQueriedAnimationOnElement(A){let e=this.playersByQueriedElement.get(A);e&&e.forEach(i=>i.finish())}whenRenderingDone(){return new Promise(A=>{if(this.players.length)return lC(this.players).onDone(()=>A());A()})}processLeaveNode(A){let e=A[eg];if(e&&e.setForRemoval){if(A[eg]=qH,e.namespaceId){this.destroyInnerAnimations(A);let i=this._fetchNamespace(e.namespaceId);i&&i.clearElementCache(A)}this._onRemovalComplete(A,e.setForRemoval)}A.classList?.contains(t9)&&this.markElementAsDisabled(A,!1),this.driver.query(A,lCe,!0).forEach(i=>{this.markElementAsDisabled(i,!1)})}flush(A=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((i,n)=>this._balanceNamespaceList(i,n)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let i=0;ii()),this._flushFns=[],this._whenQuietFns.length){let i=this._whenQuietFns;this._whenQuietFns=[],e.length?lC(e).onDone(()=>{i.forEach(n=>n())}):i.forEach(n=>n())}}reportError(A){throw MH(A)}_flushAnimations(A,e){let i=new GQ,n=[],o=new Map,a=[],r=new Map,s=new Map,l=new Map,c=new Set;this.disabledNodes.forEach(Ee=>{c.add(Ee);let Ne=this.driver.query(Ee,sCe,!0);for(let de=0;de{let de=WM+u++;E.set(Ne,de),Ee.forEach(Ie=>gc(Ie,de))});let m=[],f=new Set,D=new Set;for(let Ee=0;Eef.add(Ie)):D.add(Ne))}let S=new Map,k=zH(d,Array.from(f));k.forEach((Ee,Ne)=>{let de=_3+u++;S.set(Ne,de),Ee.forEach(Ie=>gc(Ie,de))}),A.push(()=>{B.forEach((Ee,Ne)=>{let de=E.get(Ne);Ee.forEach(Ie=>RB(Ie,de))}),k.forEach((Ee,Ne)=>{let de=S.get(Ne);Ee.forEach(Ie=>RB(Ie,de))}),m.forEach(Ee=>{this.processLeaveNode(Ee)})});let b=[],x=[];for(let Ee=this._namespaceList.length-1;Ee>=0;Ee--)this._namespaceList[Ee].drainQueuedTransitions(e).forEach(de=>{let Ie=de.player,xe=de.element;if(b.push(Ie),this.collectedEnterElements.length){let it=xe[eg];if(it&&it.setForMove){if(it.previousTriggersValues&&it.previousTriggersValues.has(de.triggerName)){let He=it.previousTriggersValues.get(de.triggerName),he=this.statesByElement.get(de.element);if(he&&he.has(de.triggerName)){let tA=he.get(de.triggerName);tA.value=He,he.set(de.triggerName,tA)}}Ie.destroy();return}}let Xe=!C||!this.driver.containsElement(C,xe),fA=S.get(xe),Pe=E.get(xe),be=this._buildInstruction(de,i,Pe,fA,Xe);if(be.errors&&be.errors.length){x.push(be);return}if(Xe){Ie.onStart(()=>fd(xe,be.fromStyles)),Ie.onDestroy(()=>$c(xe,be.toStyles)),n.push(Ie);return}if(de.isFallbackTransition){Ie.onStart(()=>fd(xe,be.fromStyles)),Ie.onDestroy(()=>$c(xe,be.toStyles)),n.push(Ie);return}let qe=[];be.timelines.forEach(it=>{it.stretchStartingKeyframe=!0,this.disabledNodes.has(it.element)||qe.push(it)}),be.timelines=qe,i.append(xe,be.timelines);let st={instruction:be,player:Ie,element:xe};a.push(st),be.queriedElements.forEach(it=>rl(r,it,[]).push(Ie)),be.preStyleProps.forEach((it,He)=>{if(it.size){let he=s.get(He);he||s.set(He,he=new Set),it.forEach((tA,pe)=>he.add(pe))}}),be.postStyleProps.forEach((it,He)=>{let he=l.get(He);he||l.set(He,he=new Set),it.forEach((tA,pe)=>he.add(pe))})});if(x.length){let Ee=[];x.forEach(Ne=>{Ee.push(SH(Ne.triggerName,Ne.errors))}),b.forEach(Ne=>Ne.destroy()),this.reportError(Ee)}let F=new Map,P=new Map;a.forEach(Ee=>{let Ne=Ee.element;i.has(Ne)&&(P.set(Ne,Ne),this._beforeAnimationBuild(Ee.player.namespaceId,Ee.instruction,F))}),n.forEach(Ee=>{let Ne=Ee.element;this._getPreviousPlayers(Ne,!1,Ee.namespaceId,Ee.triggerName,null).forEach(Ie=>{rl(F,Ne,[]).push(Ie),Ie.destroy()})});let j=m.filter(Ee=>YH(Ee,s,l)),X=new Map;JH(X,this.driver,D,l,Xc).forEach(Ee=>{YH(Ee,s,l)&&j.push(Ee)});let W=new Map;B.forEach((Ee,Ne)=>{JH(W,this.driver,new Set(Ee),s,xQ)}),j.forEach(Ee=>{let Ne=X.get(Ee),de=W.get(Ee);X.set(Ee,new Map([...Ne?.entries()??[],...de?.entries()??[]]))});let Ce=[],we=[],Be={};a.forEach(Ee=>{let{element:Ne,player:de,instruction:Ie}=Ee;if(i.has(Ne)){if(c.has(Ne)){de.onDestroy(()=>$c(Ne,Ie.toStyles)),de.disabled=!0,de.overrideTotalTime(Ie.totalTime),n.push(de);return}let xe=Be;if(P.size>1){let fA=Ne,Pe=[];for(;fA=fA.parentNode;){let be=P.get(fA);if(be){xe=be;break}Pe.push(fA)}Pe.forEach(be=>P.set(be,xe))}let Xe=this._buildAnimation(de.namespaceId,Ie,F,o,W,X);if(de.setRealPlayer(Xe),xe===Be)Ce.push(de);else{let fA=this.playersByElement.get(xe);fA&&fA.length&&(de.parentPlayer=lC(fA)),n.push(de)}}else fd(Ne,Ie.fromStyles),de.onDestroy(()=>$c(Ne,Ie.toStyles)),we.push(de),c.has(Ne)&&n.push(de)}),we.forEach(Ee=>{let Ne=o.get(Ee.element);if(Ne&&Ne.length){let de=lC(Ne);Ee.setRealPlayer(de)}}),n.forEach(Ee=>{Ee.parentPlayer?Ee.syncPlayerEvents(Ee.parentPlayer):Ee.destroy()});for(let Ee=0;Ee!Xe.destroyed);xe.length?uCe(this,Ne,xe):this.processLeaveNode(Ne)}return m.length=0,Ce.forEach(Ee=>{this.players.push(Ee),Ee.onDone(()=>{Ee.destroy();let Ne=this.players.indexOf(Ee);this.players.splice(Ne,1)}),Ee.play()}),Ce}afterFlush(A){this._flushFns.push(A)}afterFlushAnimationsDone(A){this._whenQuietFns.push(A)}_getPreviousPlayers(A,e,i,n,o){let a=[];if(e){let r=this.playersByQueriedElement.get(A);r&&(a=r)}else{let r=this.playersByElement.get(A);if(r){let s=!o||o==LQ;r.forEach(l=>{l.queued||!s&&l.triggerName!=n||a.push(l)})}}return(i||n)&&(a=a.filter(r=>!(i&&i!=r.namespaceId||n&&n!=r.triggerName))),a}_beforeAnimationBuild(A,e,i){let n=e.triggerName,o=e.element,a=e.isRemovalTransition?void 0:A,r=e.isRemovalTransition?void 0:n;for(let s of e.timelines){let l=s.element,c=l!==o,C=rl(i,l,[]);this._getPreviousPlayers(l,c,a,r,e.toState).forEach(B=>{let E=B.getRealPlayer();E.beforeDestroy&&E.beforeDestroy(),B.destroy(),C.push(B)})}fd(o,e.fromStyles)}_buildAnimation(A,e,i,n,o,a){let r=e.triggerName,s=e.element,l=[],c=new Set,C=new Set,d=e.timelines.map(E=>{let u=E.element;c.add(u);let m=u[eg];if(m&&m.removedBeforeQueried)return new sC(E.duration,E.delay);let f=u!==s,D=ECe((i.get(u)||CCe).map(F=>F.getRealPlayer())).filter(F=>{let P=F;return P.element?P.element===u:!1}),S=o.get(u),k=a.get(u),b=PM(this._normalizer,E.keyframes,S,k),x=this._buildPlayer(E,b,D);if(E.subTimeline&&n&&C.add(u),f){let F=new UQ(A,r,u);F.setRealPlayer(x),l.push(F)}return x});l.forEach(E=>{rl(this.playersByQueriedElement,E.element,[]).push(E),E.onDone(()=>ICe(this.playersByQueriedElement,E.element,E))}),c.forEach(E=>gc(E,XM));let B=lC(d);return B.onDestroy(()=>{c.forEach(E=>RB(E,XM)),$c(s,e.toStyles)}),C.forEach(E=>{rl(n,E,[]).push(B)}),B}_buildPlayer(A,e,i){return e.length>0?this.driver.animate(A.element,e,A.duration,A.delay,A.easing,i):new sC(A.duration,A.delay)}},UQ=class{namespaceId;triggerName;element;_player=new sC;_containsRealPlayer=!1;_queuedCallbacks=new Map;destroyed=!1;parentPlayer=null;markedForDestroy=!1;disabled=!1;queued=!0;totalTime=0;constructor(A,e,i){this.namespaceId=A,this.triggerName=e,this.element=i}setRealPlayer(A){this._containsRealPlayer||(this._player=A,this._queuedCallbacks.forEach((e,i)=>{e.forEach(n=>M3(A,i,void 0,n))}),this._queuedCallbacks.clear(),this._containsRealPlayer=!0,this.overrideTotalTime(A.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(A){this.totalTime=A}syncPlayerEvents(A){let e=this._player;e.triggerCallback&&A.onStart(()=>e.triggerCallback("start")),A.onDone(()=>this.finish()),A.onDestroy(()=>this.destroy())}_queueEvent(A,e){rl(this._queuedCallbacks,A,[]).push(e)}onDone(A){this.queued&&this._queueEvent("done",A),this._player.onDone(A)}onStart(A){this.queued&&this._queueEvent("start",A),this._player.onStart(A)}onDestroy(A){this.queued&&this._queueEvent("destroy",A),this._player.onDestroy(A)}init(){this._player.init()}hasStarted(){return this.queued?!1:this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(A){this.queued||this._player.setPosition(A)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(A){let e=this._player;e.triggerCallback&&e.triggerCallback(A)}};function ICe(t,A,e){let i=t.get(A);if(i){if(i.length){let n=i.indexOf(e);i.splice(n,1)}i.length==0&&t.delete(A)}return i}function BCe(t){return t??null}function G3(t){return t&&t.nodeType===1}function hCe(t){return t=="start"||t=="done"}function OH(t,A){let e=t.style.display;return t.style.display=A??"none",e}function JH(t,A,e,i,n){let o=[];e.forEach(s=>o.push(OH(s)));let a=[];i.forEach((s,l)=>{let c=new Map;s.forEach(C=>{let d=A.computeStyle(l,C,n);c.set(C,d),(!d||d.length==0)&&(l[eg]=dCe,a.push(l))}),t.set(l,c)});let r=0;return e.forEach(s=>OH(s,o[r++])),a}function zH(t,A){let e=new Map;if(t.forEach(r=>e.set(r,[])),A.length==0)return e;let i=1,n=new Set(A),o=new Map;function a(r){if(!r)return i;let s=o.get(r);if(s)return s;let l=r.parentNode;return e.has(l)?s=l:n.has(l)?s=i:s=a(l),o.set(r,s),s}return A.forEach(r=>{let s=a(r);s!==i&&e.get(s).push(r)}),e}function gc(t,A){t.classList?.add(A)}function RB(t,A){t.classList?.remove(A)}function uCe(t,A,e){lC(e).onDone(()=>t.processLeaveNode(A))}function ECe(t){let A=[];return ZH(t,A),A}function ZH(t,A){for(let e=0;en.add(o)):A.set(t,i),e.delete(t),!0}var NB=class{_driver;_normalizer;_transitionEngine;_timelineEngine;_triggerCache={};onRemovalComplete=(A,e)=>{};constructor(A,e,i){this._driver=e,this._normalizer=i,this._transitionEngine=new I9(A.body,e,i),this._timelineEngine=new C9(A.body,e,i),this._transitionEngine.onRemovalComplete=(n,o)=>this.onRemovalComplete(n,o)}registerTrigger(A,e,i,n,o){let a=A+"-"+n,r=this._triggerCache[a];if(!r){let s=[],l=[],c=PH(this._driver,o,s,l);if(s.length)throw QH(n,s);r=oCe(n,c,this._normalizer),this._triggerCache[a]=r}this._transitionEngine.registerTrigger(e,n,r)}register(A,e){this._transitionEngine.register(A,e)}destroy(A,e){this._transitionEngine.destroy(A,e)}onInsert(A,e,i,n){this._transitionEngine.insertNode(A,e,i,n)}onRemove(A,e,i){this._transitionEngine.removeNode(A,e,i)}disableAnimations(A,e){this._transitionEngine.markElementAsDisabled(A,e)}process(A,e,i,n){if(i.charAt(0)=="@"){let[o,a]=jM(i),r=n;this._timelineEngine.command(o,e,a,r)}else this._transitionEngine.trigger(A,e,i,n)}listen(A,e,i,n,o){if(i.charAt(0)=="@"){let[a,r]=jM(i);return this._timelineEngine.listen(a,e,r,o)}return this._transitionEngine.listen(A,e,i,n,o)}flush(A=-1){this._transitionEngine.flush(A)}get players(){return[...this._transitionEngine.players,...this._timelineEngine.players]}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}afterFlushAnimationsDone(A){this._transitionEngine.afterFlushAnimationsDone(A)}};function pCe(t,A){let e=null,i=null;return Array.isArray(A)&&A.length?(e=n9(A[0]),A.length>1&&(i=n9(A[A.length-1]))):A instanceof Map&&(e=n9(A)),e||i?new mCe(t,e,i):null}var mCe=(()=>{class t{_element;_startStyles;_endStyles;static initialStylesByElement=new WeakMap;_state=0;_initialStyles;constructor(e,i,n){this._element=e,this._startStyles=i,this._endStyles=n;let o=t.initialStylesByElement.get(e);o||t.initialStylesByElement.set(e,o=new Map),this._initialStyles=o}start(){this._state<1&&(this._startStyles&&$c(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&($c(this._element,this._initialStyles),this._endStyles&&($c(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(fd(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(fd(this._element,this._endStyles),this._endStyles=null),$c(this._element,this._initialStyles),this._state=3)}}return t})();function n9(t){let A=null;return t.forEach((e,i)=>{fCe(i)&&(A=A||new Map,A.set(i,e))}),A}function fCe(t){return t==="display"||t==="position"}var Y3=class{element;keyframes;options;_specialStyles;_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_duration;_delay;_initialized=!1;_finished=!1;_started=!1;_destroyed=!1;_finalKeyframe;_originalOnDoneFns=[];_originalOnStartFns=[];domPlayer=null;time=0;parentPlayer=null;currentSnapshot=new Map;constructor(A,e,i,n){this.element=A,this.keyframes=e,this.options=i,this._specialStyles=n,this._duration=i.duration,this._delay=i.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(A=>A()),this._onDoneFns=[])}init(){this._buildPlayer()&&this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return this.domPlayer;this._initialized=!0;let A=this.keyframes,e=this._triggerWebAnimation(this.element,A,this.options);if(!e)return this._onFinish(),null;this.domPlayer=e,this._finalKeyframe=A.length?A[A.length-1]:new Map;let i=()=>this._onFinish();return e.addEventListener("finish",i),this.onDestroy(()=>{e.removeEventListener("finish",i)}),e}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer?.pause()}_convertKeyframesToObject(A){let e=[];return A.forEach(i=>{e.push(Object.fromEntries(i))}),e}_triggerWebAnimation(A,e,i){let n=this._convertKeyframesToObject(e);try{return A.animate(n,i)}catch(o){return null}}onStart(A){this._originalOnStartFns.push(A),this._onStartFns.push(A)}onDone(A){this._originalOnDoneFns.push(A),this._onDoneFns.push(A)}onDestroy(A){this._onDestroyFns.push(A)}play(){let A=this._buildPlayer();A&&(this.hasStarted()||(this._onStartFns.forEach(e=>e()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),A.play())}pause(){this.init(),this.domPlayer?.pause()}finish(){this.init(),this.domPlayer&&(this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish())}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}_resetDomPlayerState(){this.domPlayer?.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(A=>A()),this._onDestroyFns=[])}setPosition(A){this.domPlayer||this.init(),this.domPlayer&&(this.domPlayer.currentTime=A*this.time)}getPosition(){return this.domPlayer?+(this.domPlayer.currentTime??0)/this.time:this._initialized?1:0}get totalTime(){return this._delay+this._duration}beforeDestroy(){let A=new Map;this.hasStarted()&&this._finalKeyframe.forEach((i,n)=>{n!=="offset"&&A.set(n,this._finished?i:N3(this.element,n))}),this.currentSnapshot=A}triggerCallback(A){let e=A==="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},H3=class{validateStyleProperty(A){return!0}validateAnimatableStyleProperty(A){return!0}containsElement(A,e){return VM(A,e)}getParentElement(A){return k3(A)}query(A,e,i){return qM(A,e,i)}computeStyle(A,e,i){return N3(A,e)}animate(A,e,i,n,o,a=[]){let r=n==0?"both":"forwards",s={duration:i,delay:n,fill:r};o&&(s.easing=o);let l=new Map,c=a.filter(B=>B instanceof Y3);RH(i,n)&&c.forEach(B=>{B.currentSnapshot.forEach((E,u)=>l.set(u,E))});let C=_H(e).map(B=>new Map(B));C=NH(A,C,l);let d=pCe(A,C);return new Y3(A,C,s,d)}};var K3="@",WH="@.disabled",P3=class{namespaceId;delegate;engine;_onDestroy;\u0275type=0;constructor(A,e,i,n){this.namespaceId=A,this.delegate=e,this.engine=i,this._onDestroy=n}get data(){return this.delegate.data}destroyNode(A){this.delegate.destroyNode?.(A)}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.engine.afterFlushAnimationsDone(()=>{queueMicrotask(()=>{this.delegate.destroy()})}),this._onDestroy?.()}createElement(A,e){return this.delegate.createElement(A,e)}createComment(A){return this.delegate.createComment(A)}createText(A){return this.delegate.createText(A)}appendChild(A,e){this.delegate.appendChild(A,e),this.engine.onInsert(this.namespaceId,e,A,!1)}insertBefore(A,e,i,n=!0){this.delegate.insertBefore(A,e,i),this.engine.onInsert(this.namespaceId,e,A,n)}removeChild(A,e,i,n){if(n){this.delegate.removeChild(A,e,i,n);return}this.parentNode(e)&&this.engine.onRemove(this.namespaceId,e,this.delegate)}selectRootElement(A,e){return this.delegate.selectRootElement(A,e)}parentNode(A){return this.delegate.parentNode(A)}nextSibling(A){return this.delegate.nextSibling(A)}setAttribute(A,e,i,n){this.delegate.setAttribute(A,e,i,n)}removeAttribute(A,e,i){this.delegate.removeAttribute(A,e,i)}addClass(A,e){this.delegate.addClass(A,e)}removeClass(A,e){this.delegate.removeClass(A,e)}setStyle(A,e,i,n){this.delegate.setStyle(A,e,i,n)}removeStyle(A,e,i){this.delegate.removeStyle(A,e,i)}setProperty(A,e,i){e.charAt(0)==K3&&e==WH?this.disableAnimations(A,!!i):this.delegate.setProperty(A,e,i)}setValue(A,e){this.delegate.setValue(A,e)}listen(A,e,i,n){return this.delegate.listen(A,e,i,n)}disableAnimations(A,e){this.engine.disableAnimations(A,e)}},B9=class extends P3{factory;constructor(A,e,i,n,o){super(e,i,n,o),this.factory=A,this.namespaceId=e}setProperty(A,e,i){e.charAt(0)==K3?e.charAt(1)=="."&&e==WH?(i=i===void 0?!0:!!i,this.disableAnimations(A,i)):this.engine.process(this.namespaceId,A,e.slice(1),i):this.delegate.setProperty(A,e,i)}listen(A,e,i,n){if(e.charAt(0)==K3){let o=wCe(A),a=e.slice(1),r="";return a.charAt(0)!=K3&&([a,r]=yCe(a)),this.engine.listen(this.namespaceId,o,a,r,s=>{let l=s._data||-1;this.factory.scheduleListenerCallback(l,i,s)})}return this.delegate.listen(A,e,i,n)}};function wCe(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}function yCe(t){let A=t.indexOf("."),e=t.substring(0,A),i=t.slice(A+1);return[e,i]}var j3=class{delegate;engine;_zone;_currentId=0;_microtaskId=1;_animationCallbacksBuffer=[];_rendererCache=new Map;_cdRecurDepth=0;constructor(A,e,i){this.delegate=A,this.engine=e,this._zone=i,e.onRemovalComplete=(n,o)=>{o?.removeChild(null,n)}}createRenderer(A,e){let n=this.delegate.createRenderer(A,e);if(!A||!e?.data?.animation){let l=this._rendererCache,c=l.get(n);if(!c){let C=()=>l.delete(n);c=new P3("",n,this.engine,C),l.set(n,c)}return c}let o=e.id,a=e.id+"-"+this._currentId;this._currentId++,this.engine.register(a,A);let r=l=>{Array.isArray(l)?l.forEach(r):this.engine.registerTrigger(o,a,A,l.name,l)};return e.data.animation.forEach(r),new B9(this,a,n,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){queueMicrotask(()=>{this._microtaskId++})}scheduleListenerCallback(A,e,i){if(A>=0&&Ae(i));return}let n=this._animationCallbacksBuffer;n.length==0&&queueMicrotask(()=>{this._zone.run(()=>{n.forEach(o=>{let[a,r]=o;a(r)}),this._animationCallbacksBuffer=[]})}),n.push([e,i])}end(){this._cdRecurDepth--,this._cdRecurDepth==0&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}componentReplaced(A){this.engine.flush(),this.delegate.componentReplaced?.(A)}};var DCe=(()=>{class t extends NB{constructor(e,i,n){super(e,i,n)}ngOnDestroy(){this.flush()}static \u0275fac=function(i){return new(i||t)(Xo(Ii),Xo(fI),Xo(wI))};static \u0275prov=Ze({token:t,factory:t.\u0275fac})}return t})();function bCe(){return new U3}function MCe(){return new j3(w(UJ),w(NB),w(At))}var XH=[{provide:wI,useFactory:bCe},{provide:NB,useClass:DCe},{provide:Wr,useFactory:MCe}],wVe=[{provide:fI,useClass:h9},{provide:iI,useValue:"NoopAnimations"},...XH],SCe=[{provide:fI,useFactory:()=>new H3},{provide:iI,useFactory:()=>"BrowserAnimations"},...XH];function $H(){return Uf("NgEagerAnimations"),[...SCe]}function Kr(t){t||(t=w(wr));let A=new Li(e=>{if(t.destroyed){e.next();return}return t.onDestroy(e.next.bind(e))});return e=>e.pipe(Mt(A))}var E9=class{source;destroyed=!1;destroyRef=w(wr);constructor(A){this.source=A,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}subscribe(A){if(this.destroyed)throw new Kt(953,!1);let e=this.source.pipe(Kr(this.destroyRef)).subscribe({next:i=>A(i)});return{unsubscribe:()=>e.unsubscribe()}}};function Hn(t,A){return new E9(t)}function Lo(t,A){let e=A?.injector??w(Rt),i=new Pc(1),n=Ln(()=>{let o;try{o=t()}catch(a){Ma(()=>i.error(a));return}Ma(()=>i.next(o))},{injector:e,manualCleanup:!0});return e.get(wr).onDestroy(()=>{n.destroy(),i.complete()}),i.asObservable()}function Ir(t,A){let i=!A?.manualCleanup?A?.injector?.get(wr)??w(wr):null,n=kCe(A?.equal),o;A?.requireSync?o=fe({kind:0},{equal:n}):o=fe({kind:1,value:A?.initialValue},{equal:n});let a,r=t.subscribe({next:s=>o.set({kind:1,value:s}),error:s=>{o.set({kind:2,error:s}),a?.()},complete:()=>{a?.()}});if(A?.requireSync&&o().kind===0)throw new Kt(601,!1);return a=i?.onDestroy(r.unsubscribe.bind(r)),DA(()=>{let s=o();switch(s.kind){case 1:return s.value;case 2:throw s.error;case 0:throw new Kt(601,!1)}},{equal:A?.equal})}function kCe(t=Object.is){return(A,e)=>A.kind===1&&e.kind===1&&t(A.value,e.value)}function V3(t){return MJ(Ye(Y({},t),{loader:void 0,stream:A=>{let e,i=()=>e?.unsubscribe();A.abortSignal.addEventListener("abort",i);let n=fe({value:void 0}),o,a=new Promise(l=>o=l);function r(l){n.set(l),o?.(n),o=void 0}let s=t.stream;if(s===void 0)throw new Kt(990,!1);return e=s(A).subscribe({next:l=>r({value:l}),error:l=>{r({error:SJ(l)}),A.abortSignal.removeEventListener("abort",i)},complete:()=>{o&&r({error:new Kt(991,!1)}),A.abortSignal.removeEventListener("abort",i)}}),a}}))}function f9(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var DI=f9();function aP(t){DI=t}var yI={exec:()=>null};function to(t,A=""){let e=typeof t=="string"?t:t.source,i={replace:(n,o)=>{let a=typeof o=="string"?o:o.source;return a=a.replace(Us.caret,"$1"),e=e.replace(n,a),i},getRegex:()=>new RegExp(e,A)};return i}var _Ce=(()=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:t=>new RegExp(`^( {0,3}${t})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:t=>new RegExp(`^ {0,${Math.min(3,t-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:t=>new RegExp(`^ {0,${Math.min(3,t-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:t=>new RegExp(`^ {0,${Math.min(3,t-1)}}#`),htmlBeginRegex:t=>new RegExp(`^ {0,${Math.min(3,t-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:t=>new RegExp(`^ {0,${Math.min(3,t-1)}}>`)},xCe=/^(?:[ \t]*(?:\n|$))+/,RCe=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,NCe=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,zQ=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,FCe=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,w9=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,rP=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,sP=to(rP).replace(/bull/g,w9).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),LCe=to(rP).replace(/bull/g,w9).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),y9=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,GCe=/^[^\n]+/,v9=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,KCe=to(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",v9).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),UCe=to(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,w9).getRegex(),X3="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",D9=/|$))/,TCe=to("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",D9).replace("tag",X3).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),lP=to(y9).replace("hr",zQ).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",X3).getRegex(),OCe=to(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",lP).getRegex(),b9={blockquote:OCe,code:RCe,def:KCe,fences:NCe,heading:FCe,hr:zQ,html:TCe,lheading:sP,list:UCe,newline:xCe,paragraph:lP,table:yI,text:GCe},eP=to("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",zQ).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",X3).getRegex(),JCe=Ye(Y({},b9),{lheading:LCe,table:eP,paragraph:to(y9).replace("hr",zQ).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",eP).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",X3).getRegex()}),zCe=Ye(Y({},b9),{html:to(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",D9).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:yI,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:to(y9).replace("hr",zQ).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",sP).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),YCe=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,HCe=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,cP=/^( {2,}|\\)\n(?!\s*$)/,PCe=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",_Ce?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),IP=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,$Ce=to(IP,"u").replace(/punct/g,$3).getRegex(),ede=to(IP,"u").replace(/punct/g,CP).getRegex(),BP="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Ade=to(BP,"gu").replace(/notPunctSpace/g,gP).replace(/punctSpace/g,M9).replace(/punct/g,$3).getRegex(),tde=to(BP,"gu").replace(/notPunctSpace/g,qCe).replace(/punctSpace/g,VCe).replace(/punct/g,CP).getRegex(),ide=to("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,gP).replace(/punctSpace/g,M9).replace(/punct/g,$3).getRegex(),nde=to(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,dP).getRegex(),ode="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",ade=to(ode,"gu").replace(/notPunctSpace/g,WCe).replace(/punctSpace/g,ZCe).replace(/punct/g,dP).getRegex(),rde=to(/\\(punct)/,"gu").replace(/punct/g,$3).getRegex(),sde=to(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),lde=to(D9).replace("(?:-->|$)","-->").getRegex(),cde=to("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",lde).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Z3=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,gde=to(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Z3).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),hP=to(/^!?\[(label)\]\[(ref)\]/).replace("label",Z3).replace("ref",v9).getRegex(),uP=to(/^!?\[(ref)\](?:\[\])?/).replace("ref",v9).getRegex(),Cde=to("reflink|nolink(?!\\()","g").replace("reflink",hP).replace("nolink",uP).getRegex(),AP=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,S9={_backpedal:yI,anyPunctuation:rde,autolink:sde,blockSkip:XCe,br:cP,code:HCe,del:yI,delLDelim:yI,delRDelim:yI,emStrongLDelim:$Ce,emStrongRDelimAst:Ade,emStrongRDelimUnd:ide,escape:YCe,link:gde,nolink:uP,punctuation:jCe,reflink:hP,reflinkSearch:Cde,tag:cde,text:PCe,url:yI},dde=Ye(Y({},S9),{link:to(/^!?\[(label)\]\((.*?)\)/).replace("label",Z3).getRegex(),reflink:to(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Z3).getRegex()}),Q9=Ye(Y({},S9),{emStrongRDelimAst:tde,emStrongLDelim:ede,delLDelim:nde,delRDelim:ade,url:to(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",AP).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:to(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},tP=t=>Bde[t];function r0(t,A){if(A){if(Us.escapeTest.test(t))return t.replace(Us.escapeReplace,tP)}else if(Us.escapeTestNoEncode.test(t))return t.replace(Us.escapeReplaceNoEncode,tP);return t}function iP(t){try{t=encodeURI(t).replace(Us.percentDecode,"%")}catch(A){return null}return t}function nP(t,A){let e=t.replace(Us.findPipe,(o,a,r)=>{let s=!1,l=a;for(;--l>=0&&r[l]==="\\";)s=!s;return s?"|":" |"}),i=e.split(Us.splitPipe),n=0;if(i[0].trim()||i.shift(),i.length>0&&!i.at(-1)?.trim()&&i.pop(),A)if(i.length>A)i.splice(A);else for(;i.length0?-2:-1}function ude(t,A=0){let e=A,i="";for(let n of t)if(n===" "){let o=4-e%4;i+=" ".repeat(o),e+=o}else i+=n,e++;return i}function oP(t,A,e,i,n){let o=A.href,a=A.title||null,r=t[1].replace(n.other.outputLinkReplace,"$1");i.state.inLink=!0;let s={type:t[0].charAt(0)==="!"?"image":"link",raw:e,href:o,title:a,text:r,tokens:i.inlineTokens(r)};return i.state.inLink=!1,s}function Ede(t,A,e){let i=t.match(e.other.indentCodeCompensation);if(i===null)return A;let n=i[1];return A.split(` +`).map(o=>{let a=o.match(e.other.beginningSpace);if(a===null)return o;let[r]=a;return r.length>=n.length?o.slice(n.length):o}).join(` +`)}var W3=class{options;rules;lexer;constructor(t){this.options=t||DI}space(t){let A=this.rules.block.newline.exec(t);if(A&&A[0].length>0)return{type:"space",raw:A[0]}}code(t){let A=this.rules.block.code.exec(t);if(A){let e=A[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:A[0],codeBlockStyle:"indented",text:this.options.pedantic?e:OQ(e,` +`)}}}fences(t){let A=this.rules.block.fences.exec(t);if(A){let e=A[0],i=Ede(e,A[3]||"",this.rules);return{type:"code",raw:e,lang:A[2]?A[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):A[2],text:i}}}heading(t){let A=this.rules.block.heading.exec(t);if(A){let e=A[2].trim();if(this.rules.other.endingHash.test(e)){let i=OQ(e,"#");(this.options.pedantic||!i||this.rules.other.endingSpaceChar.test(i))&&(e=i.trim())}return{type:"heading",raw:A[0],depth:A[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(t){let A=this.rules.block.hr.exec(t);if(A)return{type:"hr",raw:OQ(A[0],` +`)}}blockquote(t){let A=this.rules.block.blockquote.exec(t);if(A){let e=OQ(A[0],` +`).split(` +`),i="",n="",o=[];for(;e.length>0;){let a=!1,r=[],s;for(s=0;s1,n={type:"list",raw:"",ordered:i,start:i?+e.slice(0,-1):"",loose:!1,items:[]};e=i?`\\d{1,9}\\${e.slice(-1)}`:`\\${e}`,this.options.pedantic&&(e=i?e:"[*+-]");let o=this.rules.other.listItemRegex(e),a=!1;for(;t;){let s=!1,l="",c="";if(!(A=o.exec(t))||this.rules.block.hr.test(t))break;l=A[0],t=t.substring(l.length);let C=ude(A[2].split(` +`,1)[0],A[1].length),d=t.split(` +`,1)[0],B=!C.trim(),E=0;if(this.options.pedantic?(E=2,c=C.trimStart()):B?E=A[1].length+1:(E=C.search(this.rules.other.nonSpaceChar),E=E>4?1:E,c=C.slice(E),E+=A[1].length),B&&this.rules.other.blankLine.test(d)&&(l+=d+` +`,t=t.substring(d.length+1),s=!0),!s){let u=this.rules.other.nextBulletRegex(E),m=this.rules.other.hrRegex(E),f=this.rules.other.fencesBeginRegex(E),D=this.rules.other.headingBeginRegex(E),S=this.rules.other.htmlBeginRegex(E),k=this.rules.other.blockquoteBeginRegex(E);for(;t;){let b=t.split(` +`,1)[0],x;if(d=b,this.options.pedantic?(d=d.replace(this.rules.other.listReplaceNesting," "),x=d):x=d.replace(this.rules.other.tabCharGlobal," "),f.test(d)||D.test(d)||S.test(d)||k.test(d)||u.test(d)||m.test(d))break;if(x.search(this.rules.other.nonSpaceChar)>=E||!d.trim())c+=` +`+x.slice(E);else{if(B||C.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||f.test(C)||D.test(C)||m.test(C))break;c+=` +`+d}B=!d.trim(),l+=b+` +`,t=t.substring(b.length+1),C=x.slice(E)}}n.loose||(a?n.loose=!0:this.rules.other.doubleBlankLine.test(l)&&(a=!0)),n.items.push({type:"list_item",raw:l,task:!!this.options.gfm&&this.rules.other.listIsTask.test(c),loose:!1,text:c,tokens:[]}),n.raw+=l}let r=n.items.at(-1);if(r)r.raw=r.raw.trimEnd(),r.text=r.text.trimEnd();else return;n.raw=n.raw.trimEnd();for(let s of n.items){if(this.lexer.state.top=!1,s.tokens=this.lexer.blockTokens(s.text,[]),s.task){if(s.text=s.text.replace(this.rules.other.listReplaceTask,""),s.tokens[0]?.type==="text"||s.tokens[0]?.type==="paragraph"){s.tokens[0].raw=s.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),s.tokens[0].text=s.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let c=this.lexer.inlineQueue.length-1;c>=0;c--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[c].src)){this.lexer.inlineQueue[c].src=this.lexer.inlineQueue[c].src.replace(this.rules.other.listReplaceTask,"");break}}let l=this.rules.other.listTaskCheckbox.exec(s.raw);if(l){let c={type:"checkbox",raw:l[0]+" ",checked:l[0]!=="[ ]"};s.checked=c.checked,n.loose?s.tokens[0]&&["paragraph","text"].includes(s.tokens[0].type)&&"tokens"in s.tokens[0]&&s.tokens[0].tokens?(s.tokens[0].raw=c.raw+s.tokens[0].raw,s.tokens[0].text=c.raw+s.tokens[0].text,s.tokens[0].tokens.unshift(c)):s.tokens.unshift({type:"paragraph",raw:c.raw,text:c.raw,tokens:[c]}):s.tokens.unshift(c)}}if(!n.loose){let l=s.tokens.filter(C=>C.type==="space"),c=l.length>0&&l.some(C=>this.rules.other.anyLine.test(C.raw));n.loose=c}}if(n.loose)for(let s of n.items){s.loose=!0;for(let l of s.tokens)l.type==="text"&&(l.type="paragraph")}return n}}html(t){let A=this.rules.block.html.exec(t);if(A)return{type:"html",block:!0,raw:A[0],pre:A[1]==="pre"||A[1]==="script"||A[1]==="style",text:A[0]}}def(t){let A=this.rules.block.def.exec(t);if(A){let e=A[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),i=A[2]?A[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",n=A[3]?A[3].substring(1,A[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):A[3];return{type:"def",tag:e,raw:A[0],href:i,title:n}}}table(t){let A=this.rules.block.table.exec(t);if(!A||!this.rules.other.tableDelimiter.test(A[2]))return;let e=nP(A[1]),i=A[2].replace(this.rules.other.tableAlignChars,"").split("|"),n=A[3]?.trim()?A[3].replace(this.rules.other.tableRowBlankLine,"").split(` +`):[],o={type:"table",raw:A[0],header:[],align:[],rows:[]};if(e.length===i.length){for(let a of i)this.rules.other.tableAlignRight.test(a)?o.align.push("right"):this.rules.other.tableAlignCenter.test(a)?o.align.push("center"):this.rules.other.tableAlignLeft.test(a)?o.align.push("left"):o.align.push(null);for(let a=0;a({text:r,tokens:this.lexer.inline(r),header:!1,align:o.align[s]})));return o}}lheading(t){let A=this.rules.block.lheading.exec(t);if(A)return{type:"heading",raw:A[0],depth:A[2].charAt(0)==="="?1:2,text:A[1],tokens:this.lexer.inline(A[1])}}paragraph(t){let A=this.rules.block.paragraph.exec(t);if(A){let e=A[1].charAt(A[1].length-1)===` +`?A[1].slice(0,-1):A[1];return{type:"paragraph",raw:A[0],text:e,tokens:this.lexer.inline(e)}}}text(t){let A=this.rules.block.text.exec(t);if(A)return{type:"text",raw:A[0],text:A[0],tokens:this.lexer.inline(A[0])}}escape(t){let A=this.rules.inline.escape.exec(t);if(A)return{type:"escape",raw:A[0],text:A[1]}}tag(t){let A=this.rules.inline.tag.exec(t);if(A)return!this.lexer.state.inLink&&this.rules.other.startATag.test(A[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(A[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(A[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(A[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:A[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:A[0]}}link(t){let A=this.rules.inline.link.exec(t);if(A){let e=A[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;let o=OQ(e.slice(0,-1),"\\");if((e.length-o.length)%2===0)return}else{let o=hde(A[2],"()");if(o===-2)return;if(o>-1){let a=(A[0].indexOf("!")===0?5:4)+A[1].length+o;A[2]=A[2].substring(0,o),A[0]=A[0].substring(0,a).trim(),A[3]=""}}let i=A[2],n="";if(this.options.pedantic){let o=this.rules.other.pedanticHrefTitle.exec(i);o&&(i=o[1],n=o[3])}else n=A[3]?A[3].slice(1,-1):"";return i=i.trim(),this.rules.other.startAngleBracket.test(i)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?i=i.slice(1):i=i.slice(1,-1)),oP(A,{href:i&&i.replace(this.rules.inline.anyPunctuation,"$1"),title:n&&n.replace(this.rules.inline.anyPunctuation,"$1")},A[0],this.lexer,this.rules)}}reflink(t,A){let e;if((e=this.rules.inline.reflink.exec(t))||(e=this.rules.inline.nolink.exec(t))){let i=(e[2]||e[1]).replace(this.rules.other.multipleSpaceGlobal," "),n=A[i.toLowerCase()];if(!n){let o=e[0].charAt(0);return{type:"text",raw:o,text:o}}return oP(e,n,e[0],this.lexer,this.rules)}}emStrong(t,A,e=""){let i=this.rules.inline.emStrongLDelim.exec(t);if(!(!i||i[3]&&e.match(this.rules.other.unicodeAlphaNumeric))&&(!(i[1]||i[2])||!e||this.rules.inline.punctuation.exec(e))){let n=[...i[0]].length-1,o,a,r=n,s=0,l=i[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(l.lastIndex=0,A=A.slice(-1*t.length+n);(i=l.exec(A))!=null;){if(o=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!o)continue;if(a=[...o].length,i[3]||i[4]){r+=a;continue}else if((i[5]||i[6])&&n%3&&!((n+a)%3)){s+=a;continue}if(r-=a,r>0)continue;a=Math.min(a,a+r+s);let c=[...i[0]][0].length,C=t.slice(0,n+i.index+c+a);if(Math.min(n,a)%2){let B=C.slice(1,-1);return{type:"em",raw:C,text:B,tokens:this.lexer.inlineTokens(B)}}let d=C.slice(2,-2);return{type:"strong",raw:C,text:d,tokens:this.lexer.inlineTokens(d)}}}}codespan(t){let A=this.rules.inline.code.exec(t);if(A){let e=A[2].replace(this.rules.other.newLineCharGlobal," "),i=this.rules.other.nonSpaceChar.test(e),n=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return i&&n&&(e=e.substring(1,e.length-1)),{type:"codespan",raw:A[0],text:e}}}br(t){let A=this.rules.inline.br.exec(t);if(A)return{type:"br",raw:A[0]}}del(t,A,e=""){let i=this.rules.inline.delLDelim.exec(t);if(i&&(!i[1]||!e||this.rules.inline.punctuation.exec(e))){let n=[...i[0]].length-1,o,a,r=n,s=this.rules.inline.delRDelim;for(s.lastIndex=0,A=A.slice(-1*t.length+n);(i=s.exec(A))!=null;){if(o=i[1]||i[2]||i[3]||i[4]||i[5]||i[6],!o||(a=[...o].length,a!==n))continue;if(i[3]||i[4]){r+=a;continue}if(r-=a,r>0)continue;a=Math.min(a,a+r);let l=[...i[0]][0].length,c=t.slice(0,n+i.index+l+a),C=c.slice(n,-n);return{type:"del",raw:c,text:C,tokens:this.lexer.inlineTokens(C)}}}}autolink(t){let A=this.rules.inline.autolink.exec(t);if(A){let e,i;return A[2]==="@"?(e=A[1],i="mailto:"+e):(e=A[1],i=e),{type:"link",raw:A[0],text:e,href:i,tokens:[{type:"text",raw:e,text:e}]}}}url(t){let A;if(A=this.rules.inline.url.exec(t)){let e,i;if(A[2]==="@")e=A[0],i="mailto:"+e;else{let n;do n=A[0],A[0]=this.rules.inline._backpedal.exec(A[0])?.[0]??"";while(n!==A[0]);e=A[0],A[1]==="www."?i="http://"+A[0]:i=A[0]}return{type:"link",raw:A[0],text:e,href:i,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(t){let A=this.rules.inline.text.exec(t);if(A){let e=this.lexer.state.inRawBlock;return{type:"text",raw:A[0],text:A[0],escaped:e}}}},Ag=class p9{tokens;options;state;inlineQueue;tokenizer;constructor(A){this.tokens=[],this.tokens.links=Object.create(null),this.options=A||DI,this.options.tokenizer=this.options.tokenizer||new W3,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let e={other:Us,block:q3.normal,inline:TQ.normal};this.options.pedantic?(e.block=q3.pedantic,e.inline=TQ.pedantic):this.options.gfm&&(e.block=q3.gfm,this.options.breaks?e.inline=TQ.breaks:e.inline=TQ.gfm),this.tokenizer.rules=e}static get rules(){return{block:q3,inline:TQ}}static lex(A,e){return new p9(e).lex(A)}static lexInline(A,e){return new p9(e).inlineTokens(A)}lex(A){A=A.replace(Us.carriageReturn,` +`),this.blockTokens(A,this.tokens);for(let e=0;e(n=a.call({lexer:this},A,e))?(A=A.substring(n.raw.length),e.push(n),!0):!1))continue;if(n=this.tokenizer.space(A)){A=A.substring(n.raw.length);let a=e.at(-1);n.raw.length===1&&a!==void 0?a.raw+=` +`:e.push(n);continue}if(n=this.tokenizer.code(A)){A=A.substring(n.raw.length);let a=e.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(` +`)?"":` +`)+n.raw,a.text+=` +`+n.text,this.inlineQueue.at(-1).src=a.text):e.push(n);continue}if(n=this.tokenizer.fences(A)){A=A.substring(n.raw.length),e.push(n);continue}if(n=this.tokenizer.heading(A)){A=A.substring(n.raw.length),e.push(n);continue}if(n=this.tokenizer.hr(A)){A=A.substring(n.raw.length),e.push(n);continue}if(n=this.tokenizer.blockquote(A)){A=A.substring(n.raw.length),e.push(n);continue}if(n=this.tokenizer.list(A)){A=A.substring(n.raw.length),e.push(n);continue}if(n=this.tokenizer.html(A)){A=A.substring(n.raw.length),e.push(n);continue}if(n=this.tokenizer.def(A)){A=A.substring(n.raw.length);let a=e.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(` +`)?"":` +`)+n.raw,a.text+=` +`+n.raw,this.inlineQueue.at(-1).src=a.text):this.tokens.links[n.tag]||(this.tokens.links[n.tag]={href:n.href,title:n.title},e.push(n));continue}if(n=this.tokenizer.table(A)){A=A.substring(n.raw.length),e.push(n);continue}if(n=this.tokenizer.lheading(A)){A=A.substring(n.raw.length),e.push(n);continue}let o=A;if(this.options.extensions?.startBlock){let a=1/0,r=A.slice(1),s;this.options.extensions.startBlock.forEach(l=>{s=l.call({lexer:this},r),typeof s=="number"&&s>=0&&(a=Math.min(a,s))}),a<1/0&&a>=0&&(o=A.substring(0,a+1))}if(this.state.top&&(n=this.tokenizer.paragraph(o))){let a=e.at(-1);i&&a?.type==="paragraph"?(a.raw+=(a.raw.endsWith(` +`)?"":` +`)+n.raw,a.text+=` +`+n.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):e.push(n),i=o.length!==A.length,A=A.substring(n.raw.length);continue}if(n=this.tokenizer.text(A)){A=A.substring(n.raw.length);let a=e.at(-1);a?.type==="text"?(a.raw+=(a.raw.endsWith(` +`)?"":` +`)+n.raw,a.text+=` +`+n.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):e.push(n);continue}if(A){let a="Infinite loop on byte: "+A.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,e}inline(A,e=[]){return this.inlineQueue.push({src:A,tokens:e}),e}inlineTokens(A,e=[]){let i=A,n=null;if(this.tokens.links){let s=Object.keys(this.tokens.links);if(s.length>0)for(;(n=this.tokenizer.rules.inline.reflinkSearch.exec(i))!=null;)s.includes(n[0].slice(n[0].lastIndexOf("[")+1,-1))&&(i=i.slice(0,n.index)+"["+"a".repeat(n[0].length-2)+"]"+i.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(n=this.tokenizer.rules.inline.anyPunctuation.exec(i))!=null;)i=i.slice(0,n.index)+"++"+i.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let o;for(;(n=this.tokenizer.rules.inline.blockSkip.exec(i))!=null;)o=n[2]?n[2].length:0,i=i.slice(0,n.index+o)+"["+"a".repeat(n[0].length-o-2)+"]"+i.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);i=this.options.hooks?.emStrongMask?.call({lexer:this},i)??i;let a=!1,r="";for(;A;){a||(r=""),a=!1;let s;if(this.options.extensions?.inline?.some(c=>(s=c.call({lexer:this},A,e))?(A=A.substring(s.raw.length),e.push(s),!0):!1))continue;if(s=this.tokenizer.escape(A)){A=A.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.tag(A)){A=A.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.link(A)){A=A.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.reflink(A,this.tokens.links)){A=A.substring(s.raw.length);let c=e.at(-1);s.type==="text"&&c?.type==="text"?(c.raw+=s.raw,c.text+=s.text):e.push(s);continue}if(s=this.tokenizer.emStrong(A,i,r)){A=A.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.codespan(A)){A=A.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.br(A)){A=A.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.del(A,i,r)){A=A.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.autolink(A)){A=A.substring(s.raw.length),e.push(s);continue}if(!this.state.inLink&&(s=this.tokenizer.url(A))){A=A.substring(s.raw.length),e.push(s);continue}let l=A;if(this.options.extensions?.startInline){let c=1/0,C=A.slice(1),d;this.options.extensions.startInline.forEach(B=>{d=B.call({lexer:this},C),typeof d=="number"&&d>=0&&(c=Math.min(c,d))}),c<1/0&&c>=0&&(l=A.substring(0,c+1))}if(s=this.tokenizer.inlineText(l)){A=A.substring(s.raw.length),s.raw.slice(-1)!=="_"&&(r=s.raw.slice(-1)),a=!0;let c=e.at(-1);c?.type==="text"?(c.raw+=s.raw,c.text+=s.text):e.push(s);continue}if(A){let c="Infinite loop on byte: "+A.charCodeAt(0);if(this.options.silent){console.error(c);break}else throw new Error(c)}}return e}},wd=class{options;parser;constructor(t){this.options=t||DI}space(t){return""}code({text:t,lang:A,escaped:e}){let i=(A||"").match(Us.notSpaceStart)?.[0],n=t.replace(Us.endingNewline,"")+` +`;return i?'
      '+(e?n:r0(n,!0))+`
      +`:"
      "+(e?n:r0(n,!0))+`
      +`}blockquote({tokens:t}){return`
      +${this.parser.parse(t)}
      +`}html({text:t}){return t}def(t){return""}heading({tokens:t,depth:A}){return`${this.parser.parseInline(t)} +`}hr(t){return`
      +`}list(t){let A=t.ordered,e=t.start,i="";for(let a=0;a +`+i+" +`}listitem(t){return`
    • ${this.parser.parse(t.tokens)}
    • +`}checkbox({checked:t}){return" '}paragraph({tokens:t}){return`

      ${this.parser.parseInline(t)}

      +`}table(t){let A="",e="";for(let n=0;n${i}`),` + +`+A+` +`+i+`
      +`}tablerow({text:t}){return` +${t} +`}tablecell(t){let A=this.parser.parseInline(t.tokens),e=t.header?"th":"td";return(t.align?`<${e} align="${t.align}">`:`<${e}>`)+A+` +`}strong({tokens:t}){return`${this.parser.parseInline(t)}`}em({tokens:t}){return`${this.parser.parseInline(t)}`}codespan({text:t}){return`${r0(t,!0)}`}br(t){return"
      "}del({tokens:t}){return`${this.parser.parseInline(t)}`}link({href:t,title:A,tokens:e}){let i=this.parser.parseInline(e),n=iP(t);if(n===null)return i;t=n;let o='
      ",o}image({href:t,title:A,text:e,tokens:i}){i&&(e=this.parser.parseInline(i,this.parser.textRenderer));let n=iP(t);if(n===null)return r0(e);t=n;let o=`${r0(e)}{let a=n[o].flat(1/0);e=e.concat(this.walkTokens(a,A))}):n.tokens&&(e=e.concat(this.walkTokens(n.tokens,A)))}}return e}use(...t){let A=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(e=>{let i=Y({},e);if(i.async=this.defaults.async||i.async||!1,e.extensions&&(e.extensions.forEach(n=>{if(!n.name)throw new Error("extension name required");if("renderer"in n){let o=A.renderers[n.name];o?A.renderers[n.name]=function(...a){let r=n.renderer.apply(this,a);return r===!1&&(r=o.apply(this,a)),r}:A.renderers[n.name]=n.renderer}if("tokenizer"in n){if(!n.level||n.level!=="block"&&n.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let o=A[n.level];o?o.unshift(n.tokenizer):A[n.level]=[n.tokenizer],n.start&&(n.level==="block"?A.startBlock?A.startBlock.push(n.start):A.startBlock=[n.start]:n.level==="inline"&&(A.startInline?A.startInline.push(n.start):A.startInline=[n.start]))}"childTokens"in n&&n.childTokens&&(A.childTokens[n.name]=n.childTokens)}),i.extensions=A),e.renderer){let n=this.defaults.renderer||new wd(this.defaults);for(let o in e.renderer){if(!(o in n))throw new Error(`renderer '${o}' does not exist`);if(["options","parser"].includes(o))continue;let a=o,r=e.renderer[a],s=n[a];n[a]=(...l)=>{let c=r.apply(n,l);return c===!1&&(c=s.apply(n,l)),c||""}}i.renderer=n}if(e.tokenizer){let n=this.defaults.tokenizer||new W3(this.defaults);for(let o in e.tokenizer){if(!(o in n))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;let a=o,r=e.tokenizer[a],s=n[a];n[a]=(...l)=>{let c=r.apply(n,l);return c===!1&&(c=s.apply(n,l)),c}}i.tokenizer=n}if(e.hooks){let n=this.defaults.hooks||new JQ;for(let o in e.hooks){if(!(o in n))throw new Error(`hook '${o}' does not exist`);if(["options","block"].includes(o))continue;let a=o,r=e.hooks[a],s=n[a];JQ.passThroughHooks.has(o)?n[a]=l=>{if(this.defaults.async&&JQ.passThroughHooksRespectAsync.has(o))return nA(this,null,function*(){let C=yield r.call(n,l);return s.call(n,C)});let c=r.call(n,l);return s.call(n,c)}:n[a]=(...l)=>{if(this.defaults.async)return nA(this,null,function*(){let C=yield r.apply(n,l);return C===!1&&(C=yield s.apply(n,l)),C});let c=r.apply(n,l);return c===!1&&(c=s.apply(n,l)),c}}i.hooks=n}if(e.walkTokens){let n=this.defaults.walkTokens,o=e.walkTokens;i.walkTokens=function(a){let r=[];return r.push(o.call(this,a)),n&&(r=r.concat(n.call(this,a))),r}}this.defaults=Y(Y({},this.defaults),i)}),this}setOptions(t){return this.defaults=Y(Y({},this.defaults),t),this}lexer(t,A){return Ag.lex(t,A??this.defaults)}parser(t,A){return tg.parse(t,A??this.defaults)}parseMarkdown(t){return(A,e)=>{let i=Y({},e),n=Y(Y({},this.defaults),i),o=this.onError(!!n.silent,!!n.async);if(this.defaults.async===!0&&i.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof A>"u"||A===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof A!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(A)+", string expected"));if(n.hooks&&(n.hooks.options=n,n.hooks.block=t),n.async)return nA(this,null,function*(){let a=n.hooks?yield n.hooks.preprocess(A):A,r=yield(n.hooks?yield n.hooks.provideLexer():t?Ag.lex:Ag.lexInline)(a,n),s=n.hooks?yield n.hooks.processAllTokens(r):r;n.walkTokens&&(yield Promise.all(this.walkTokens(s,n.walkTokens)));let l=yield(n.hooks?yield n.hooks.provideParser():t?tg.parse:tg.parseInline)(s,n);return n.hooks?yield n.hooks.postprocess(l):l}).catch(o);try{n.hooks&&(A=n.hooks.preprocess(A));let a=(n.hooks?n.hooks.provideLexer():t?Ag.lex:Ag.lexInline)(A,n);n.hooks&&(a=n.hooks.processAllTokens(a)),n.walkTokens&&this.walkTokens(a,n.walkTokens);let r=(n.hooks?n.hooks.provideParser():t?tg.parse:tg.parseInline)(a,n);return n.hooks&&(r=n.hooks.postprocess(r)),r}catch(a){return o(a)}}}onError(t,A){return e=>{if(e.message+=` +Please report this to https://github.com/markedjs/marked.`,t){let i="

      An error occurred:

      "+r0(e.message+"",!0)+"
      ";return A?Promise.resolve(i):i}if(A)return Promise.reject(e);throw e}}},vI=new Qde;function co(t,A){return vI.parse(t,A)}co.options=co.setOptions=function(t){return vI.setOptions(t),co.defaults=vI.defaults,aP(co.defaults),co};co.getDefaults=f9;co.defaults=DI;co.use=function(...t){return vI.use(...t),co.defaults=vI.defaults,aP(co.defaults),co};co.walkTokens=function(t,A){return vI.walkTokens(t,A)};co.parseInline=vI.parseInline;co.Parser=tg;co.parser=tg.parse;co.Renderer=wd;co.TextRenderer=k9;co.Lexer=Ag;co.lexer=Ag.lex;co.Tokenizer=W3;co.Hooks=JQ;co.parse=co;var FVe=co.options,LVe=co.setOptions,GVe=co.use,KVe=co.walkTokens,UVe=co.parseInline;var TVe=tg.parse,OVe=Ag.lex;var pde=["*"],mde="Copy",fde="Copied",wde=(()=>{class t{constructor(){this._buttonClick$=new rA,this.copied=Ir(this._buttonClick$.pipe(ki(()=>Zi(sA(!0),Nf(3e3).pipe(tQ(!1)))),jc(),Xs(1))),this.copiedText=DA(()=>this.copied()?fde:mde)}onCopyToClipboardClick(){this._buttonClick$.next()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["markdown-clipboard"]],decls:2,vars:3,consts:[[1,"markdown-clipboard-button",3,"click"]],template:function(i,n){i&1&&(Gn(0,"button",0),rB("click",function(){return n.onCopyToClipboardClick()}),v(1),$n()),i&2&&(_e("copied",n.copied()),Q(),ne(n.copiedText()))},encapsulation:2,changeDetection:0})}}return t})(),yde=new Me("CLIPBOARD_OPTIONS");var vde=new Me("MARKED_EXTENSIONS"),Dde=new Me("MARKED_OPTIONS"),bde=new Me("MERMAID_OPTIONS"),Mde=new Me("SANITIZE");function Sde(t){return typeof t=="function"}var kde="[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information",_de="[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information",xde="[ngx-markdown] When using the `mermaid` attribute you *have to* include Mermaid files to `angular.json` or use imports. See README for more information",Rde="[ngx-markdown] When using the `clipboard` attribute you *have to* include Clipboard files to `angular.json` or use imports. See README for more information",Nde="[ngx-markdown] When using the `clipboard` attribute you *have to* provide the `viewContainerRef` parameter to `MarkdownService.render()` function",Fde="[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information";var EP=(()=>{class t{get options(){return this._options}set options(e){this._options=Y(Y({},this.DEFAULT_MARKED_OPTIONS),e)}get renderer(){return this.options.renderer}set renderer(e){this.options.renderer=e}constructor(){this.clipboardOptions=w(yde,{optional:!0}),this.extensions=w(vde,{optional:!0}),this.http=w(Nr,{optional:!0}),this.mermaidOptions=w(bde,{optional:!0}),this.platform=w(Kf),this.sanitize=w(Mde,{optional:!0}),this.sanitizer=w(Bd),this.DEFAULT_MARKED_OPTIONS={renderer:new wd},this.DEFAULT_KATEX_OPTIONS={delimiters:[{left:"$$",right:"$$",display:!0},{left:"$",right:"$",display:!1},{left:"\\(",right:"\\)",display:!1},{left:"\\begin{equation}",right:"\\end{equation}",display:!0},{left:"\\begin{align}",right:"\\end{align}",display:!0},{left:"\\begin{alignat}",right:"\\end{alignat}",display:!0},{left:"\\begin{gather}",right:"\\end{gather}",display:!0},{left:"\\begin{CD}",right:"\\end{CD}",display:!0},{left:"\\[",right:"\\]",display:!0}]},this.DEFAULT_MERMAID_OPTIONS={startOnLoad:!1},this.DEFAULT_CLIPBOARD_OPTIONS={buttonComponent:void 0},this.DEFAULT_PARSE_OPTIONS={decodeHtml:!1,inline:!1,emoji:!1,mermaid:!1,markedOptions:void 0,disableSanitizer:!1},this.DEFAULT_RENDER_OPTIONS={clipboard:!1,clipboardOptions:void 0,katex:!1,katexOptions:void 0,mermaid:!1,mermaidOptions:void 0},this.DEFAULT_SECURITY_CONTEXT=qc.HTML,this._options=null,this._reload$=new rA,this.reload$=this._reload$.asObservable(),this.options=w(Dde,{optional:!0})}parse(e,i=this.DEFAULT_PARSE_OPTIONS){let{decodeHtml:n,inline:o,emoji:a,mermaid:r,disableSanitizer:s}=i,l=Y(Y({},this.options),i.markedOptions),c=l.renderer||this.renderer||new wd;this.extensions&&(this.renderer=this.extendsRendererForExtensions(c)),r&&(this.renderer=this.extendsRendererForMermaid(c));let C=this.trimIndentation(e),d=n?this.decodeHtml(C):C,B=a?this.parseEmoji(d):d,E=this.parseMarked(B,l,o);return s?E:this.sanitizeHtml(E)}render(e,i=this.DEFAULT_RENDER_OPTIONS,n){let{clipboard:o,clipboardOptions:a,katex:r,katexOptions:s,mermaid:l,mermaidOptions:c}=i;r&&this.renderKatex(e,Y(Y({},this.DEFAULT_KATEX_OPTIONS),s)),l&&this.renderMermaid(e,Y(Y(Y({},this.DEFAULT_MERMAID_OPTIONS),this.mermaidOptions),c)),o&&this.renderClipboard(e,n,Y(Y(Y({},this.DEFAULT_CLIPBOARD_OPTIONS),this.clipboardOptions),a)),this.highlight(e)}reload(){this._reload$.next()}getSource(e){if(!this.http)throw new Error(Fde);return this.http.get(e,{responseType:"text"}).pipe(xA(i=>this.handleExtension(e,i)))}highlight(e){if(!oC(this.platform)||typeof Prism>"u"||typeof Prism.highlightAllUnder>"u")return;e||(e=document);let i=e.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(i,n=>n.classList.add("language-none")),Prism.highlightAllUnder(e)}decodeHtml(e){if(!oC(this.platform))return e;let i=document.createElement("textarea");return i.innerHTML=e,i.value}extendsRendererForExtensions(e){let i=e;return i.\u0275NgxMarkdownRendererExtendedForExtensions===!0||(this.extensions&&this.extensions.length>0&&co.use(...this.extensions),i.\u0275NgxMarkdownRendererExtendedForExtensions=!0),e}extendsRendererForMermaid(e){let i=e;if(i.\u0275NgxMarkdownRendererExtendedForMermaid===!0)return e;let n=e.code;return e.code=o=>o.lang==="mermaid"?`
      ${o.text}
      `:n(o),i.\u0275NgxMarkdownRendererExtendedForMermaid=!0,e}handleExtension(e,i){let n=e.lastIndexOf("://"),o=n>-1?e.substring(n+4):e,a=o.lastIndexOf("/"),r=a>-1?o.substring(a+1).split("?")[0]:"",s=r.lastIndexOf("."),l=s>-1?r.substring(s+1):"";return l&&l!=="md"?"```"+l+` +`+i+"\n```":i}parseMarked(e,i,n=!1){if(i.renderer){let o=Y({},i.renderer);delete o.\u0275NgxMarkdownRendererExtendedForExtensions,delete o.\u0275NgxMarkdownRendererExtendedForMermaid,delete i.renderer,co.use({renderer:o})}return n?co.parseInline(e,i):co.parse(e,i)}parseEmoji(e){if(!oC(this.platform))return e;if(typeof joypixels>"u"||typeof joypixels.shortnameToUnicode>"u")throw new Error(kde);return joypixels.shortnameToUnicode(e)}renderKatex(e,i){if(oC(this.platform)){if(typeof katex>"u"||typeof renderMathInElement>"u")throw new Error(_de);renderMathInElement(e,i)}}renderClipboard(e,i,n){if(!oC(this.platform))return;if(typeof ClipboardJS>"u")throw new Error(Rde);if(!i)throw new Error(Nde);let{buttonComponent:o,buttonTemplate:a}=n,r=e.querySelectorAll("pre");for(let s=0;sC.classList.add("hover"),c.onmouseleave=()=>C.classList.remove("hover");let d;if(o){let E=i.createComponent(o);d=E.hostView,E.changeDetectorRef.markForCheck()}else if(a)d=i.createEmbeddedView(a);else{let E=i.createComponent(wde);d=E.hostView,E.changeDetectorRef.markForCheck()}let B;d.rootNodes.forEach(E=>{C.appendChild(E),B=new ClipboardJS(E,{text:()=>l.innerText})}),d.onDestroy(()=>B.destroy())}}renderMermaid(e,i=this.DEFAULT_MERMAID_OPTIONS){if(!oC(this.platform))return;if(typeof mermaid>"u"||typeof mermaid.initialize>"u")throw new Error(xde);let n=e.querySelectorAll(".mermaid");n.length!==0&&(mermaid.initialize(i),mermaid.run({nodes:n}))}trimIndentation(e){if(!e)return"";let i;return e.split(` +`).map(n=>{let o=i;return n.length>0&&(o=isNaN(o)?n.search(/\S|$/):Math.min(n.search(/\S|$/),o)),isNaN(i)&&(i=o),o?n.substring(o):n}).join(` +`)}sanitizeHtml(e){return nA(this,null,function*(){return Sde(this.sanitize)?this.sanitize(yield e):this.sanitize!==qc.NONE?this.sanitizer.sanitize(this.sanitize??this.DEFAULT_SECURITY_CONTEXT,e)??"":e})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),_9=(function(t){return t.CommandLine="command-line",t.LineHighlight="line-highlight",t.LineNumbers="line-numbers",t})(_9||{}),QP=(()=>{class t{constructor(){this.element=w(dA),this.markdownService=w(EP),this.viewContainerRef=w(Yo),this.error=new Le,this.load=new Le,this.ready=new Le,this._clipboard=!1,this._commandLine=!1,this._disableSanitizer=!1,this._emoji=!1,this._inline=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1,this._mermaid=!1,this.destroyed$=new rA}get disableSanitizer(){return this._disableSanitizer}set disableSanitizer(e){this._disableSanitizer=this.coerceBooleanProperty(e)}get inline(){return this._inline}set inline(e){this._inline=this.coerceBooleanProperty(e)}get clipboard(){return this._clipboard}set clipboard(e){this._clipboard=this.coerceBooleanProperty(e)}get emoji(){return this._emoji}set emoji(e){this._emoji=this.coerceBooleanProperty(e)}get katex(){return this._katex}set katex(e){this._katex=this.coerceBooleanProperty(e)}get mermaid(){return this._mermaid}set mermaid(e){this._mermaid=this.coerceBooleanProperty(e)}get lineHighlight(){return this._lineHighlight}set lineHighlight(e){this._lineHighlight=this.coerceBooleanProperty(e)}get lineNumbers(){return this._lineNumbers}set lineNumbers(e){this._lineNumbers=this.coerceBooleanProperty(e)}get commandLine(){return this._commandLine}set commandLine(e){this._commandLine=this.coerceBooleanProperty(e)}ngOnChanges(){this.loadContent()}loadContent(){if(this.data!=null){this.handleData();return}if(this.src!=null){this.handleSrc();return}}ngAfterViewInit(){!this.data&&!this.src&&this.handleTransclusion(),this.markdownService.reload$.pipe(Mt(this.destroyed$)).subscribe(()=>this.loadContent())}ngOnDestroy(){this.destroyed$.next(),this.destroyed$.complete()}render(e,i=!1){return nA(this,null,function*(){let n={decodeHtml:i,inline:this.inline,emoji:this.emoji,mermaid:this.mermaid,disableSanitizer:this.disableSanitizer},o={clipboard:this.clipboard,clipboardOptions:this.getClipboardOptions(),katex:this.katex,katexOptions:this.katexOptions,mermaid:this.mermaid,mermaidOptions:this.mermaidOptions},a=yield this.markdownService.parse(e,n);this.element.nativeElement.innerHTML=a,this.handlePlugins(),this.markdownService.render(this.element.nativeElement,o,this.viewContainerRef),this.ready.emit()})}coerceBooleanProperty(e){return e!=null&&`${String(e)}`!="false"}getClipboardOptions(){if(this.clipboardButtonComponent||this.clipboardButtonTemplate)return{buttonComponent:this.clipboardButtonComponent,buttonTemplate:this.clipboardButtonTemplate}}handleData(){this.render(this.data)}handleSrc(){this.markdownService.getSource(this.src).subscribe({next:e=>{this.render(e).then(()=>{this.load.emit(e)})},error:e=>this.error.emit(e)})}handleTransclusion(){this.render(this.element.nativeElement.innerHTML,!0)}handlePlugins(){this.commandLine&&(this.setPluginClass(this.element.nativeElement,_9.CommandLine),this.setPluginOptions(this.element.nativeElement,{dataFilterOutput:this.filterOutput,dataHost:this.host,dataPrompt:this.prompt,dataOutput:this.output,dataUser:this.user})),this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,_9.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}setPluginClass(e,i){let n=e.querySelectorAll("pre");for(let o=0;o{let r=i[a];if(r){let s=this.toLispCase(a);n.item(o).setAttribute(s,r.toString())}})}toLispCase(e){let i=e.match(/([A-Z])/g);if(!i)return e;let n=e.toString();for(let o=0,a=i.length;o{class t{static forRoot(e){return{ngModule:t,providers:[YQ(e)]}}static forChild(){return{ngModule:t}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=at({type:t})}static{this.\u0275inj=ot({})}}return t})();var Hi="primary",tp=Symbol("RouteTitle"),L9=class{params;constructor(A){this.params=A||{}}has(A){return Object.prototype.hasOwnProperty.call(this.params,A)}get(A){if(this.has(A)){let e=this.params[A];return Array.isArray(e)?e[0]:e}return null}getAll(A){if(this.has(A)){let e=this.params[A];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}};function MI(t){return new L9(t)}function x9(t,A,e){for(let i=0;it.length||e.pathMatch==="full"&&(A.hasChildren()||i.lengtht.length||e.pathMatch==="full"&&A.hasChildren()&&e.path!=="**")return null;let r={};return!x9(o,t.slice(0,o.length),r)||!x9(a,t.slice(t.length-a.length),r)?null:{consumed:t,posParams:r}}function o6(t){return new Promise((A,e)=>{t.pipe(ao()).subscribe({next:i=>A(i),error:i=>e(i)})})}function Kde(t,A){if(t.length!==A.length)return!1;for(let e=0;ei[o]===n)}else return t===A}function Ude(t){return t.length>0?t[t.length-1]:null}function kI(t){return nB(t)?t:Yf(t)?qr(Promise.resolve(t)):sA(t)}function kP(t){return nB(t)?o6(t):Promise.resolve(t)}var Tde={exact:RP,subset:NP},_P={exact:Ode,subset:Jde,ignored:()=>!0},xP={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},K9={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};function mP(t,A,e){return Tde[e.paths](t.root,A.root,e.matrixParams)&&_P[e.queryParams](t.queryParams,A.queryParams)&&!(e.fragment==="exact"&&t.fragment!==A.fragment)}function Ode(t,A){return s0(t,A)}function RP(t,A,e){if(!bI(t.segments,A.segments)||!t6(t.segments,A.segments,e)||t.numberOfChildren!==A.numberOfChildren)return!1;for(let i in A.children)if(!t.children[i]||!RP(t.children[i],A.children[i],e))return!1;return!0}function Jde(t,A){return Object.keys(A).length<=Object.keys(t).length&&Object.keys(A).every(e=>SP(t[e],A[e]))}function NP(t,A,e){return FP(t,A,A.segments,e)}function FP(t,A,e,i){if(t.segments.length>e.length){let n=t.segments.slice(0,e.length);return!(!bI(n,e)||A.hasChildren()||!t6(n,e,i))}else if(t.segments.length===e.length){if(!bI(t.segments,e)||!t6(t.segments,e,i))return!1;for(let n in A.children)if(!t.children[n]||!NP(t.children[n],A.children[n],i))return!1;return!0}else{let n=e.slice(0,t.segments.length),o=e.slice(t.segments.length);return!bI(t.segments,n)||!t6(t.segments,n,i)||!t.children[Hi]?!1:FP(t.children[Hi],A,o,i)}}function t6(t,A,e){return A.every((i,n)=>_P[e](t[n].parameters,i.parameters))}var dc=class{root;queryParams;fragment;_queryParamMap;constructor(A=new vo([],{}),e={},i=null){this.root=A,this.queryParams=e,this.fragment=i}get queryParamMap(){return this._queryParamMap??=MI(this.queryParams),this._queryParamMap}toString(){return Hde.serialize(this)}},vo=class{segments;children;parent=null;constructor(A,e){this.segments=A,this.children=e,Object.values(e).forEach(i=>i.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return i6(this)}},yd=class{path;parameters;_parameterMap;constructor(A,e){this.path=A,this.parameters=e}get parameterMap(){return this._parameterMap??=MI(this.parameters),this._parameterMap}toString(){return GP(this)}};function zde(t,A){return bI(t,A)&&t.every((e,i)=>s0(e.parameters,A[i].parameters))}function bI(t,A){return t.length!==A.length?!1:t.every((e,i)=>e.path===A[i].path)}function Yde(t,A){let e=[];return Object.entries(t.children).forEach(([i,n])=>{i===Hi&&(e=e.concat(A(n,i)))}),Object.entries(t.children).forEach(([i,n])=>{i!==Hi&&(e=e.concat(A(n,i)))}),e}var _I=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:()=>new gC,providedIn:"root"})}return t})(),gC=class{parse(A){let e=new T9(A);return new dc(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(A){let e=`/${HQ(A.root,!0)}`,i=Vde(A.queryParams),n=typeof A.fragment=="string"?`#${Pde(A.fragment)}`:"";return`${e}${i}${n}`}},Hde=new gC;function i6(t){return t.segments.map(A=>GP(A)).join("/")}function HQ(t,A){if(!t.hasChildren())return i6(t);if(A){let e=t.children[Hi]?HQ(t.children[Hi],!1):"",i=[];return Object.entries(t.children).forEach(([n,o])=>{n!==Hi&&i.push(`${n}:${HQ(o,!1)}`)}),i.length>0?`${e}(${i.join("//")})`:e}else{let e=Yde(t,(i,n)=>n===Hi?[HQ(t.children[Hi],!1)]:[`${n}:${HQ(i,!1)}`]);return Object.keys(t.children).length===1&&t.children[Hi]!=null?`${i6(t)}/${e[0]}`:`${i6(t)}/(${e.join("//")})`}}function LP(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function e6(t){return LP(t).replace(/%3B/gi,";")}function Pde(t){return encodeURI(t)}function U9(t){return LP(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function n6(t){return decodeURIComponent(t)}function fP(t){return n6(t.replace(/\+/g,"%20"))}function GP(t){return`${U9(t.path)}${jde(t.parameters)}`}function jde(t){return Object.entries(t).map(([A,e])=>`;${U9(A)}=${U9(e)}`).join("")}function Vde(t){let A=Object.entries(t).map(([e,i])=>Array.isArray(i)?i.map(n=>`${e6(e)}=${e6(n)}`).join("&"):`${e6(e)}=${e6(i)}`).filter(e=>e);return A.length?`?${A.join("&")}`:""}var qde=/^[^\/()?;#]+/;function R9(t){let A=t.match(qde);return A?A[0]:""}var Zde=/^[^\/()?;=#]+/;function Wde(t){let A=t.match(Zde);return A?A[0]:""}var Xde=/^[^=?&#]+/;function $de(t){let A=t.match(Xde);return A?A[0]:""}var e2e=/^[^&#]+/;function A2e(t){let A=t.match(e2e);return A?A[0]:""}var T9=class{url;remaining;constructor(A){this.url=A,this.remaining=A}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new vo([],{}):new vo([],this.parseChildren())}parseQueryParams(){let A={};if(this.consumeOptional("?"))do this.parseQueryParam(A);while(this.consumeOptional("&"));return A}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(A=0){if(A>50)throw new Kt(4010,!1);if(this.remaining==="")return{};this.consumeOptional("/");let e=[];for(this.peekStartsWith("(")||e.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),e.push(this.parseSegment());let i={};this.peekStartsWith("/(")&&(this.capture("/"),i=this.parseParens(!0,A));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1,A)),(e.length>0||Object.keys(i).length>0)&&(n[Hi]=new vo(e,i)),n}parseSegment(){let A=R9(this.remaining);if(A===""&&this.peekStartsWith(";"))throw new Kt(4009,!1);return this.capture(A),new yd(n6(A),this.parseMatrixParams())}parseMatrixParams(){let A={};for(;this.consumeOptional(";");)this.parseParam(A);return A}parseParam(A){let e=Wde(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){let n=R9(this.remaining);n&&(i=n,this.capture(i))}A[n6(e)]=n6(i)}parseQueryParam(A){let e=$de(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){let a=A2e(this.remaining);a&&(i=a,this.capture(i))}let n=fP(e),o=fP(i);if(A.hasOwnProperty(n)){let a=A[n];Array.isArray(a)||(a=[a],A[n]=a),a.push(o)}else A[n]=o}parseParens(A,e){let i={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let n=R9(this.remaining),o=this.remaining[n.length];if(o!=="/"&&o!==")"&&o!==";")throw new Kt(4010,!1);let a;n.indexOf(":")>-1?(a=n.slice(0,n.indexOf(":")),this.capture(a),this.capture(":")):A&&(a=Hi);let r=this.parseChildren(e+1);i[a??Hi]=Object.keys(r).length===1&&r[Hi]?r[Hi]:new vo([],r),this.consumeOptional("//")}return i}peekStartsWith(A){return this.remaining.startsWith(A)}consumeOptional(A){return this.peekStartsWith(A)?(this.remaining=this.remaining.substring(A.length),!0):!1}capture(A){if(!this.consumeOptional(A))throw new Kt(4011,!1)}};function KP(t){return t.segments.length>0?new vo([],{[Hi]:t}):t}function UP(t){let A={};for(let[i,n]of Object.entries(t.children)){let o=UP(n);if(i===Hi&&o.segments.length===0&&o.hasChildren())for(let[a,r]of Object.entries(o.children))A[a]=r;else(o.segments.length>0||o.hasChildren())&&(A[i]=o)}let e=new vo(t.segments,A);return t2e(e)}function t2e(t){if(t.numberOfChildren===1&&t.children[Hi]){let A=t.children[Hi];return new vo(t.segments.concat(A.segments),A.children)}return t}function UB(t){return t instanceof dc}function TP(t,A,e=null,i=null,n=new gC){let o=OP(t);return JP(o,A,e,i,n)}function OP(t){let A;function e(o){let a={};for(let s of o.children){let l=e(s);a[s.outlet]=l}let r=new vo(o.url,a);return o===t&&(A=r),r}let i=e(t.root),n=KP(i);return A??n}function JP(t,A,e,i,n){let o=t;for(;o.parent;)o=o.parent;if(A.length===0)return N9(o,o,o,e,i,n);let a=i2e(A);if(a.toRoot())return N9(o,o,new vo([],{}),e,i,n);let r=n2e(a,o,t),s=r.processChildren?jQ(r.segmentGroup,r.index,a.commands):YP(r.segmentGroup,r.index,a.commands);return N9(o,r.segmentGroup,s,e,i,n)}function a6(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function qQ(t){return typeof t=="object"&&t!=null&&t.outlets}function wP(t,A,e){t||="\u0275";let i=new dc;return i.queryParams={[t]:A},e.parse(e.serialize(i)).queryParams[t]}function N9(t,A,e,i,n,o){let a={};for(let[l,c]of Object.entries(i??{}))a[l]=Array.isArray(c)?c.map(C=>wP(l,C,o)):wP(l,c,o);let r;t===A?r=e:r=zP(t,A,e);let s=KP(UP(r));return new dc(s,a,n)}function zP(t,A,e){let i={};return Object.entries(t.children).forEach(([n,o])=>{o===A?i[n]=e:i[n]=zP(o,A,e)}),new vo(t.segments,i)}var r6=class{isAbsolute;numberOfDoubleDots;commands;constructor(A,e,i){if(this.isAbsolute=A,this.numberOfDoubleDots=e,this.commands=i,A&&i.length>0&&a6(i[0]))throw new Kt(4003,!1);let n=i.find(qQ);if(n&&n!==Ude(i))throw new Kt(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function i2e(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new r6(!0,0,t);let A=0,e=!1,i=t.reduce((n,o,a)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let r={};return Object.entries(o.outlets).forEach(([s,l])=>{r[s]=typeof l=="string"?l.split("/"):l}),[...n,{outlets:r}]}if(o.segmentPath)return[...n,o.segmentPath]}return typeof o!="string"?[...n,o]:a===0?(o.split("/").forEach((r,s)=>{s==0&&r==="."||(s==0&&r===""?e=!0:r===".."?A++:r!=""&&n.push(r))}),n):[...n,o]},[]);return new r6(e,A,i)}var LB=class{segmentGroup;processChildren;index;constructor(A,e,i){this.segmentGroup=A,this.processChildren=e,this.index=i}};function n2e(t,A,e){if(t.isAbsolute)return new LB(A,!0,0);if(!e)return new LB(A,!1,NaN);if(e.parent===null)return new LB(e,!0,0);let i=a6(t.commands[0])?0:1,n=e.segments.length-1+i;return o2e(e,n,t.numberOfDoubleDots)}function o2e(t,A,e){let i=t,n=A,o=e;for(;o>n;){if(o-=n,i=i.parent,!i)throw new Kt(4005,!1);n=i.segments.length}return new LB(i,!1,n-o)}function a2e(t){return qQ(t[0])?t[0].outlets:{[Hi]:t}}function YP(t,A,e){if(t??=new vo([],{}),t.segments.length===0&&t.hasChildren())return jQ(t,A,e);let i=r2e(t,A,e),n=e.slice(i.commandIndex);if(i.match&&i.pathIndexo!==Hi)&&t.children[Hi]&&t.numberOfChildren===1&&t.children[Hi].segments.length===0){let o=jQ(t.children[Hi],A,e);return new vo(t.segments,o.children)}return Object.entries(i).forEach(([o,a])=>{typeof a=="string"&&(a=[a]),a!==null&&(n[o]=YP(t.children[o],A,a))}),Object.entries(t.children).forEach(([o,a])=>{i[o]===void 0&&(n[o]=a)}),new vo(t.segments,n)}}function r2e(t,A,e){let i=0,n=A,o={match:!1,pathIndex:0,commandIndex:0};for(;n=e.length)return o;let a=t.segments[n],r=e[i];if(qQ(r))break;let s=`${r}`,l=i0&&s===void 0)break;if(s&&l&&typeof l=="object"&&l.outlets===void 0){if(!vP(s,l,a))return o;i+=2}else{if(!vP(s,{},a))return o;i++}n++}return{match:!0,pathIndex:n,commandIndex:i}}function O9(t,A,e){let i=t.segments.slice(0,A),n=0;for(;n{typeof i=="string"&&(i=[i]),i!==null&&(A[e]=O9(new vo([],{}),0,i))}),A}function yP(t){let A={};return Object.entries(t).forEach(([e,i])=>A[e]=`${i}`),A}function vP(t,A,e){return t==e.path&&s0(A,e.parameters)}var GB="imperative",vr=(function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t})(vr||{}),Jl=class{id;url;constructor(A,e){this.id=A,this.url=e}},vd=class extends Jl{type=vr.NavigationStart;navigationTrigger;restoredState;constructor(A,e,i="imperative",n=null){super(A,e),this.navigationTrigger=i,this.restoredState=n}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},ig=class extends Jl{urlAfterRedirects;type=vr.NavigationEnd;constructor(A,e,i){super(A,e),this.urlAfterRedirects=i}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},Qs=(function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t[t.Aborted=4]="Aborted",t})(Qs||{}),TB=(function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t})(TB||{}),Cc=class extends Jl{reason;code;type=vr.NavigationCancel;constructor(A,e,i,n){super(A,e),this.reason=i,this.code=n}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}};function HP(t){return t instanceof Cc&&(t.code===Qs.Redirect||t.code===Qs.SupersededByNewNavigation)}var c0=class extends Jl{reason;code;type=vr.NavigationSkipped;constructor(A,e,i,n){super(A,e),this.reason=i,this.code=n}},SI=class extends Jl{error;target;type=vr.NavigationError;constructor(A,e,i,n){super(A,e),this.error=i,this.target=n}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},ZQ=class extends Jl{urlAfterRedirects;state;type=vr.RoutesRecognized;constructor(A,e,i,n){super(A,e),this.urlAfterRedirects=i,this.state=n}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},s6=class extends Jl{urlAfterRedirects;state;type=vr.GuardsCheckStart;constructor(A,e,i,n){super(A,e),this.urlAfterRedirects=i,this.state=n}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},l6=class extends Jl{urlAfterRedirects;state;shouldActivate;type=vr.GuardsCheckEnd;constructor(A,e,i,n,o){super(A,e),this.urlAfterRedirects=i,this.state=n,this.shouldActivate=o}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},c6=class extends Jl{urlAfterRedirects;state;type=vr.ResolveStart;constructor(A,e,i,n){super(A,e),this.urlAfterRedirects=i,this.state=n}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},g6=class extends Jl{urlAfterRedirects;state;type=vr.ResolveEnd;constructor(A,e,i,n){super(A,e),this.urlAfterRedirects=i,this.state=n}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},C6=class{route;type=vr.RouteConfigLoadStart;constructor(A){this.route=A}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},d6=class{route;type=vr.RouteConfigLoadEnd;constructor(A){this.route=A}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},I6=class{snapshot;type=vr.ChildActivationStart;constructor(A){this.snapshot=A}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},B6=class{snapshot;type=vr.ChildActivationEnd;constructor(A){this.snapshot=A}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},h6=class{snapshot;type=vr.ActivationStart;constructor(A){this.snapshot=A}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},u6=class{snapshot;type=vr.ActivationEnd;constructor(A){this.snapshot=A}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},OB=class{routerEvent;position;anchor;scrollBehavior;type=vr.Scroll;constructor(A,e,i,n){this.routerEvent=A,this.position=e,this.anchor=i,this.scrollBehavior=n}toString(){let A=this.position?`${this.position[0]}, ${this.position[1]}`:null;return`Scroll(anchor: '${this.anchor}', position: '${A}')`}},JB=class{},WQ=class{},zB=class{url;navigationBehaviorOptions;constructor(A,e){this.url=A,this.navigationBehaviorOptions=e}};function l2e(t){return!(t instanceof JB)&&!(t instanceof zB)&&!(t instanceof WQ)}var E6=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return this.route?.snapshot._environmentInjector??this.rootInjector}constructor(A){this.rootInjector=A,this.children=new xI(this.rootInjector)}},xI=(()=>{class t{rootInjector;contexts=new Map;constructor(e){this.rootInjector=e}onChildOutletCreated(e,i){let n=this.getOrCreateContext(e);n.outlet=i,this.contexts.set(e,n)}onChildOutletDestroyed(e){let i=this.getContext(e);i&&(i.outlet=null,i.attachRef=null)}onOutletDeactivated(){let e=this.contexts;return this.contexts=new Map,e}onOutletReAttached(e){this.contexts=e}getOrCreateContext(e){let i=this.getContext(e);return i||(i=new E6(this.rootInjector),this.contexts.set(e,i)),i}getContext(e){return this.contexts.get(e)||null}static \u0275fac=function(i){return new(i||t)(Xo(Zr))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Q6=class{_root;constructor(A){this._root=A}get root(){return this._root.value}parent(A){let e=this.pathFromRoot(A);return e.length>1?e[e.length-2]:null}children(A){let e=J9(A,this._root);return e?e.children.map(i=>i.value):[]}firstChild(A){let e=J9(A,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(A){let e=z9(A,this._root);return e.length<2?[]:e[e.length-2].children.map(n=>n.value).filter(n=>n!==A)}pathFromRoot(A){return z9(A,this._root).map(e=>e.value)}};function J9(t,A){if(t===A.value)return A;for(let e of A.children){let i=J9(t,e);if(i)return i}return null}function z9(t,A){if(t===A.value)return[A];for(let e of A.children){let i=z9(t,e);if(i.length)return i.unshift(A),i}return[]}var Ol=class{value;children;constructor(A,e){this.value=A,this.children=e}toString(){return`TreeNode(${this.value})`}};function FB(t){let A={};return t&&t.children.forEach(e=>A[e.value.outlet]=e),A}var XQ=class extends Q6{snapshot;constructor(A,e){super(A),this.snapshot=e,X9(this,A)}toString(){return this.snapshot.toString()}};function PP(t,A){let e=c2e(t,A),i=new di([new yd("",{})]),n=new di({}),o=new di({}),a=new di({}),r=new di(""),s=new ll(i,n,a,r,o,Hi,t,e.root);return s.snapshot=e.root,new XQ(new Ol(s,[]),e)}function c2e(t,A){let e={},i={},n={},a=new YB([],e,n,"",i,Hi,t,null,{},A);return new $Q("",new Ol(a,[]))}var ll=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(A,e,i,n,o,a,r,s){this.urlSubject=A,this.paramsSubject=e,this.queryParamsSubject=i,this.fragmentSubject=n,this.dataSubject=o,this.outlet=a,this.component=r,this._futureSnapshot=s,this.title=this.dataSubject?.pipe(xA(l=>l[tp]))??sA(void 0),this.url=A,this.params=e,this.queryParams=i,this.fragment=n,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(xA(A=>MI(A))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(xA(A=>MI(A))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function W9(t,A,e="emptyOnly"){let i,{routeConfig:n}=t;return A!==null&&(e==="always"||n?.path===""||!A.component&&!A.routeConfig?.loadComponent)?i={params:Y(Y({},A.params),t.params),data:Y(Y({},A.data),t.data),resolve:Y(Y(Y(Y({},t.data),A.data),n?.data),t._resolvedData)}:i={params:Y({},t.params),data:Y({},t.data),resolve:Y(Y({},t.data),t._resolvedData??{})},n&&VP(n)&&(i.resolve[tp]=n.title),i}var YB=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;_environmentInjector;get title(){return this.data?.[tp]}constructor(A,e,i,n,o,a,r,s,l,c){this.url=A,this.params=e,this.queryParams=i,this.fragment=n,this.data=o,this.outlet=a,this.component=r,this.routeConfig=s,this._resolve=l,this._environmentInjector=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=MI(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=MI(this.queryParams),this._queryParamMap}toString(){let A=this.url.map(i=>i.toString()).join("/"),e=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${A}', path:'${e}')`}},$Q=class extends Q6{url;constructor(A,e){super(e),this.url=A,X9(this,e)}toString(){return jP(this._root)}};function X9(t,A){A.value._routerState=t,A.children.forEach(e=>X9(t,e))}function jP(t){let A=t.children.length>0?` { ${t.children.map(jP).join(", ")} } `:"";return`${t.value}${A}`}function F9(t){if(t.snapshot){let A=t.snapshot,e=t._futureSnapshot;t.snapshot=e,s0(A.queryParams,e.queryParams)||t.queryParamsSubject.next(e.queryParams),A.fragment!==e.fragment&&t.fragmentSubject.next(e.fragment),s0(A.params,e.params)||t.paramsSubject.next(e.params),Kde(A.url,e.url)||t.urlSubject.next(e.url),s0(A.data,e.data)||t.dataSubject.next(e.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function Y9(t,A){let e=s0(t.params,A.params)&&zde(t.url,A.url),i=!t.parent!=!A.parent;return e&&!i&&(!t.parent||Y9(t.parent,A.parent))}function VP(t){return typeof t.title=="string"||t.title===null}var qP=new Me(""),$9=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=Hi;activateEvents=new Le;deactivateEvents=new Le;attachEvents=new Le;detachEvents=new Le;routerOutletData=MA();parentContexts=w(xI);location=w(Yo);changeDetector=w(xt);inputBinder=w(ip,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(e){if(e.name){let{firstChange:i,previousValue:n}=e.name;if(i)return;this.isTrackedInParentContexts(n)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(n)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(e){return this.parentContexts.getContext(e)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let e=this.parentContexts.getContext(this.name);e?.route&&(e.attachRef?this.attach(e.attachRef,e.route):this.activateWith(e.route,e.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new Kt(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new Kt(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new Kt(4012,!1);this.location.detach();let e=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(e.instance),e}attach(e,i){this.activated=e,this._activatedRoute=i,this.location.insert(e.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(e.instance)}deactivate(){if(this.activated){let e=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(e)}}activateWith(e,i){if(this.isActivated)throw new Kt(4013,!1);this._activatedRoute=e;let n=this.location,a=e.snapshot.component,r=this.parentContexts.getOrCreateContext(this.name).children,s=new H9(e,r,n.injector,this.routerOutletData);this.activated=n.createComponent(a,{index:n.length,injector:s,environmentInjector:i}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[ai]})}return t})(),H9=class{route;childContexts;parent;outletData;constructor(A,e,i,n){this.route=A,this.childContexts=e,this.parent=i,this.outletData=n}get(A,e){return A===ll?this.route:A===xI?this.childContexts:A===qP?this.outletData:this.parent.get(A,e)}},ip=new Me(""),eS=(()=>{class t{outletDataSubscriptions=new Map;bindActivatedRouteToOutletComponent(e){this.unsubscribeFromRouteData(e),this.subscribeToRouteData(e)}unsubscribeFromRouteData(e){this.outletDataSubscriptions.get(e)?.unsubscribe(),this.outletDataSubscriptions.delete(e)}subscribeToRouteData(e){let{activatedRoute:i}=e,n=_r([i.queryParams,i.params,i.data]).pipe(ki(([o,a,r],s)=>(r=Y(Y(Y({},o),a),r),s===0?sA(r):Promise.resolve(r)))).subscribe(o=>{if(!e.isActivated||!e.activatedComponentRef||e.activatedRoute!==i||i.component===null){this.unsubscribeFromRouteData(e);return}let a=RJ(i.component);if(!a){this.unsubscribeFromRouteData(e);return}for(let{templateName:r}of a.inputs)e.activatedComponentRef.setInput(r,o[r])});this.outletDataSubscriptions.set(e,n)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac})}return t})(),AS=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(i,n){i&1&&le(0,"router-outlet")},dependencies:[$9],encapsulation:2})}return t})();function tS(t){let A=t.children&&t.children.map(tS),e=A?Ye(Y({},t),{children:A}):Y({},t);return!e.component&&!e.loadComponent&&(A||e.loadChildren)&&e.outlet&&e.outlet!==Hi&&(e.component=AS),e}function g2e(t,A,e){let i=ep(t,A._root,e?e._root:void 0);return new XQ(i,A)}function ep(t,A,e){if(e&&t.shouldReuseRoute(A.value,e.value.snapshot)){let i=e.value;i._futureSnapshot=A.value;let n=C2e(t,A,e);return new Ol(i,n)}else{if(t.shouldAttach(A.value)){let o=t.retrieve(A.value);if(o!==null){let a=o.route;return a.value._futureSnapshot=A.value,a.children=A.children.map(r=>ep(t,r)),a}}let i=d2e(A.value),n=A.children.map(o=>ep(t,o));return new Ol(i,n)}}function C2e(t,A,e){return A.children.map(i=>{for(let n of e.children)if(t.shouldReuseRoute(i.value,n.value.snapshot))return ep(t,i,n);return ep(t,i)})}function d2e(t){return new ll(new di(t.url),new di(t.params),new di(t.queryParams),new di(t.fragment),new di(t.data),t.outlet,t.component,t)}var HB=class{redirectTo;navigationBehaviorOptions;constructor(A,e){this.redirectTo=A,this.navigationBehaviorOptions=e}},ZP="ngNavigationCancelingError";function p6(t,A){let{redirectTo:e,navigationBehaviorOptions:i}=UB(A)?{redirectTo:A,navigationBehaviorOptions:void 0}:A,n=WP(!1,Qs.Redirect);return n.url=e,n.navigationBehaviorOptions=i,n}function WP(t,A){let e=new Error(`NavigationCancelingError: ${t||""}`);return e[ZP]=!0,e.cancellationCode=A,e}function I2e(t){return XP(t)&&UB(t.url)}function XP(t){return!!t&&t[ZP]}var P9=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(A,e,i,n,o){this.routeReuseStrategy=A,this.futureState=e,this.currState=i,this.forwardEvent=n,this.inputBindingEnabled=o}activate(A){let e=this.futureState._root,i=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,i,A),F9(this.futureState.root),this.activateChildRoutes(e,i,A)}deactivateChildRoutes(A,e,i){let n=FB(e);A.children.forEach(o=>{let a=o.value.outlet;this.deactivateRoutes(o,n[a],i),delete n[a]}),Object.values(n).forEach(o=>{this.deactivateRouteAndItsChildren(o,i)})}deactivateRoutes(A,e,i){let n=A.value,o=e?e.value:null;if(n===o)if(n.component){let a=i.getContext(n.outlet);a&&this.deactivateChildRoutes(A,e,a.children)}else this.deactivateChildRoutes(A,e,i);else o&&this.deactivateRouteAndItsChildren(e,i)}deactivateRouteAndItsChildren(A,e){A.value.component&&this.routeReuseStrategy.shouldDetach(A.value.snapshot)?this.detachAndStoreRouteSubtree(A,e):this.deactivateRouteAndOutlet(A,e)}detachAndStoreRouteSubtree(A,e){let i=e.getContext(A.value.outlet),n=i&&A.value.component?i.children:e,o=FB(A);for(let a of Object.values(o))this.deactivateRouteAndItsChildren(a,n);if(i&&i.outlet){let a=i.outlet.detach(),r=i.children.onOutletDeactivated();this.routeReuseStrategy.store(A.value.snapshot,{componentRef:a,route:A,contexts:r})}}deactivateRouteAndOutlet(A,e){let i=e.getContext(A.value.outlet),n=i&&A.value.component?i.children:e,o=FB(A);for(let a of Object.values(o))this.deactivateRouteAndItsChildren(a,n);i&&(i.outlet&&(i.outlet.deactivate(),i.children.onOutletDeactivated()),i.attachRef=null,i.route=null)}activateChildRoutes(A,e,i){let n=FB(e);A.children.forEach(o=>{this.activateRoutes(o,n[o.value.outlet],i),this.forwardEvent(new u6(o.value.snapshot))}),A.children.length&&this.forwardEvent(new B6(A.value.snapshot))}activateRoutes(A,e,i){let n=A.value,o=e?e.value:null;if(F9(n),n===o)if(n.component){let a=i.getOrCreateContext(n.outlet);this.activateChildRoutes(A,e,a.children)}else this.activateChildRoutes(A,e,i);else if(n.component){let a=i.getOrCreateContext(n.outlet);if(this.routeReuseStrategy.shouldAttach(n.snapshot)){let r=this.routeReuseStrategy.retrieve(n.snapshot);this.routeReuseStrategy.store(n.snapshot,null),a.children.onOutletReAttached(r.contexts),a.attachRef=r.componentRef,a.route=r.route.value,a.outlet&&a.outlet.attach(r.componentRef,r.route.value),F9(r.route.value),this.activateChildRoutes(A,null,a.children)}else a.attachRef=null,a.route=n,a.outlet&&a.outlet.activateWith(n,a.injector),this.activateChildRoutes(A,null,a.children)}else this.activateChildRoutes(A,null,i)}},m6=class{path;route;constructor(A){this.path=A,this.route=this.path[this.path.length-1]}},KB=class{component;route;constructor(A,e){this.component=A,this.route=e}};function B2e(t,A,e){let i=t._root,n=A?A._root:null;return PQ(i,n,e,[i.value])}function h2e(t){let A=t.routeConfig?t.routeConfig.canActivateChild:null;return!A||A.length===0?null:{node:t,guards:A}}function jB(t,A){let e=Symbol(),i=A.get(t,e);return i===e?typeof t=="function"&&!BJ(t)?t:A.get(t):i}function PQ(t,A,e,i,n={canDeactivateChecks:[],canActivateChecks:[]}){let o=FB(A);return t.children.forEach(a=>{u2e(a,o[a.value.outlet],e,i.concat([a.value]),n),delete o[a.value.outlet]}),Object.entries(o).forEach(([a,r])=>VQ(r,e.getContext(a),n)),n}function u2e(t,A,e,i,n={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,a=A?A.value:null,r=e?e.getContext(t.value.outlet):null;if(a&&o.routeConfig===a.routeConfig){let s=E2e(a,o,o.routeConfig.runGuardsAndResolvers);s?n.canActivateChecks.push(new m6(i)):(o.data=a.data,o._resolvedData=a._resolvedData),o.component?PQ(t,A,r?r.children:null,i,n):PQ(t,A,e,i,n),s&&r&&r.outlet&&r.outlet.isActivated&&n.canDeactivateChecks.push(new KB(r.outlet.component,a))}else a&&VQ(A,r,n),n.canActivateChecks.push(new m6(i)),o.component?PQ(t,null,r?r.children:null,i,n):PQ(t,null,e,i,n);return n}function E2e(t,A,e){if(typeof e=="function")return xr(A._environmentInjector,()=>e(t,A));switch(e){case"pathParamsChange":return!bI(t.url,A.url);case"pathParamsOrQueryParamsChange":return!bI(t.url,A.url)||!s0(t.queryParams,A.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Y9(t,A)||!s0(t.queryParams,A.queryParams);default:return!Y9(t,A)}}function VQ(t,A,e){let i=FB(t),n=t.value;Object.entries(i).forEach(([o,a])=>{n.component?A?VQ(a,A.children.getContext(o),e):VQ(a,null,e):VQ(a,A,e)}),n.component?A&&A.outlet&&A.outlet.isActivated?e.canDeactivateChecks.push(new KB(A.outlet.component,n)):e.canDeactivateChecks.push(new KB(null,n)):e.canDeactivateChecks.push(new KB(null,n))}function np(t){return typeof t=="function"}function Q2e(t){return typeof t=="boolean"}function p2e(t){return t&&np(t.canLoad)}function m2e(t){return t&&np(t.canActivate)}function f2e(t){return t&&np(t.canActivateChild)}function w2e(t){return t&&np(t.canDeactivate)}function y2e(t){return t&&np(t.canMatch)}function $P(t){return t instanceof cJ||t?.name==="EmptyError"}var A6=Symbol("INITIAL_VALUE");function PB(){return ki(t=>_r(t.map(A=>A.pipe(No(1),Yn(A6)))).pipe(xA(A=>{for(let e of A)if(e!==!0){if(e===A6)return A6;if(e===!1||v2e(e))return e}return!0}),pt(A=>A!==A6),No(1)))}function v2e(t){return UB(t)||t instanceof HB}function ej(t){return t.aborted?sA(void 0).pipe(No(1)):new Li(A=>{let e=()=>{A.next(),A.complete()};return t.addEventListener("abort",e),()=>t.removeEventListener("abort",e)})}function Aj(t){return Mt(ej(t))}function D2e(t){return qg(A=>{let{targetSnapshot:e,currentSnapshot:i,guards:{canActivateChecks:n,canDeactivateChecks:o}}=A;return o.length===0&&n.length===0?sA(Ye(Y({},A),{guardsResult:!0})):b2e(o,e,i).pipe(qg(a=>a&&Q2e(a)?M2e(e,n,t):sA(a)),xA(a=>Ye(Y({},A),{guardsResult:a})))})}function b2e(t,A,e){return qr(t).pipe(qg(i=>R2e(i.component,i.route,e,A)),ao(i=>i!==!0,!0))}function M2e(t,A,e){return qr(A).pipe(AQ(i=>Rf(k2e(i.route.parent,e),S2e(i.route,e),x2e(t,i.path),_2e(t,i.route))),ao(i=>i!==!0,!0))}function S2e(t,A){return t!==null&&A&&A(new h6(t)),sA(!0)}function k2e(t,A){return t!==null&&A&&A(new I6(t)),sA(!0)}function _2e(t,A){let e=A.routeConfig?A.routeConfig.canActivate:null;if(!e||e.length===0)return sA(!0);let i=e.map(n=>Zg(()=>{let o=A._environmentInjector,a=jB(n,o),r=m2e(a)?a.canActivate(A,t):xr(o,()=>a(A,t));return kI(r).pipe(ao())}));return sA(i).pipe(PB())}function x2e(t,A){let e=A[A.length-1],n=A.slice(0,A.length-1).reverse().map(o=>h2e(o)).filter(o=>o!==null).map(o=>Zg(()=>{let a=o.guards.map(r=>{let s=o.node._environmentInjector,l=jB(r,s),c=f2e(l)?l.canActivateChild(e,t):xr(s,()=>l(e,t));return kI(c).pipe(ao())});return sA(a).pipe(PB())}));return sA(n).pipe(PB())}function R2e(t,A,e,i){let n=A&&A.routeConfig?A.routeConfig.canDeactivate:null;if(!n||n.length===0)return sA(!0);let o=n.map(a=>{let r=A._environmentInjector,s=jB(a,r),l=w2e(s)?s.canDeactivate(t,A,e,i):xr(r,()=>s(t,A,e,i));return kI(l).pipe(ao())});return sA(o).pipe(PB())}function N2e(t,A,e,i,n){let o=A.canLoad;if(o===void 0||o.length===0)return sA(!0);let a=o.map(r=>{let s=jB(r,t),l=p2e(s)?s.canLoad(A,e):xr(t,()=>s(A,e)),c=kI(l);return n?c.pipe(Aj(n)):c});return sA(a).pipe(PB(),tj(i))}function tj(t){return rJ(yi(A=>{if(typeof A!="boolean")throw p6(t,A)}),xA(A=>A===!0))}function F2e(t,A,e,i,n,o){let a=A.canMatch;if(!a||a.length===0)return sA(!0);let r=a.map(s=>{let l=jB(s,t),c=y2e(l)?l.canMatch(A,e,n):xr(t,()=>l(A,e,n));return kI(c).pipe(Aj(o))});return sA(r).pipe(PB(),tj(i))}var cC=class t extends Error{segmentGroup;constructor(A){super(),this.segmentGroup=A||null,Object.setPrototypeOf(this,t.prototype)}},Ap=class t extends Error{urlTree;constructor(A){super(),this.urlTree=A,Object.setPrototypeOf(this,t.prototype)}};function L2e(t){throw new Kt(4e3,!1)}function G2e(t){throw WP(!1,Qs.GuardRejected)}var j9=class{urlSerializer;urlTree;constructor(A,e){this.urlSerializer=A,this.urlTree=e}lineralizeSegments(A,e){return nA(this,null,function*(){let i=[],n=e.root;for(;;){if(i=i.concat(n.segments),n.numberOfChildren===0)return i;if(n.numberOfChildren>1||!n.children[Hi])throw L2e(`${A.redirectTo}`);n=n.children[Hi]}})}applyRedirectCommands(A,e,i,n,o){return nA(this,null,function*(){let a=yield K2e(e,n,o);if(a instanceof dc)throw new Ap(a);let r=this.applyRedirectCreateUrlTree(a,this.urlSerializer.parse(a),A,i);if(a[0]==="/")throw new Ap(r);return r})}applyRedirectCreateUrlTree(A,e,i,n){let o=this.createSegmentGroup(A,e.root,i,n);return new dc(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(A,e){let i={};return Object.entries(A).forEach(([n,o])=>{if(typeof o=="string"&&o[0]===":"){let r=o.substring(1);i[n]=e[r]}else i[n]=o}),i}createSegmentGroup(A,e,i,n){let o=this.createSegments(A,e.segments,i,n),a={};return Object.entries(e.children).forEach(([r,s])=>{a[r]=this.createSegmentGroup(A,s,i,n)}),new vo(o,a)}createSegments(A,e,i,n){return e.map(o=>o.path[0]===":"?this.findPosParam(A,o,n):this.findOrReturn(o,i))}findPosParam(A,e,i){let n=i[e.path.substring(1)];if(!n)throw new Kt(4001,!1);return n}findOrReturn(A,e){let i=0;for(let n of e){if(n.path===A.path)return e.splice(i),n;i++}return A}};function K2e(t,A,e){if(typeof t=="string")return Promise.resolve(t);let i=t;return o6(kI(xr(e,()=>i(A))))}function U2e(t,A){return t.providers&&!t._injector&&(t._injector=Of(t.providers,A,`Route: ${t.path}`)),t._injector??A}function l0(t){return t.outlet||Hi}function T2e(t,A){let e=t.filter(i=>l0(i)===A);return e.push(...t.filter(i=>l0(i)!==A)),e}var V9={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function ij(t){return{routeConfig:t.routeConfig,url:t.url,params:t.params,queryParams:t.queryParams,fragment:t.fragment,data:t.data,outlet:t.outlet,title:t.title,paramMap:t.paramMap,queryParamMap:t.queryParamMap}}function O2e(t,A,e,i,n,o,a){let r=nj(t,A,e);if(!r.matched)return sA(r);let s=ij(o(r));return i=U2e(A,i),F2e(i,A,e,n,s,a).pipe(xA(l=>l===!0?r:Y({},V9)))}function nj(t,A,e){if(A.path==="")return A.pathMatch==="full"&&(t.hasChildren()||e.length>0)?Y({},V9):{matched:!0,consumedSegments:[],remainingSegments:e,parameters:{},positionalParamSegments:{}};let n=(A.matcher||MP)(e,t,A);if(!n)return Y({},V9);let o={};Object.entries(n.posParams??{}).forEach(([r,s])=>{o[r]=s.path});let a=n.consumed.length>0?Y(Y({},o),n.consumed[n.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:n.consumed,remainingSegments:e.slice(n.consumed.length),parameters:a,positionalParamSegments:n.posParams??{}}}function DP(t,A,e,i){return e.length>0&&Y2e(t,e,i)?{segmentGroup:new vo(A,z2e(i,new vo(e,t.children))),slicedSegments:[]}:e.length===0&&H2e(t,e,i)?{segmentGroup:new vo(t.segments,J2e(t,e,i,t.children)),slicedSegments:e}:{segmentGroup:new vo(t.segments,t.children),slicedSegments:e}}function J2e(t,A,e,i){let n={};for(let o of e)if(w6(t,A,o)&&!i[l0(o)]){let a=new vo([],{});n[l0(o)]=a}return Y(Y({},i),n)}function z2e(t,A){let e={};e[Hi]=A;for(let i of t)if(i.path===""&&l0(i)!==Hi){let n=new vo([],{});e[l0(i)]=n}return e}function Y2e(t,A,e){return e.some(i=>w6(t,A,i)&&l0(i)!==Hi)}function H2e(t,A,e){return e.some(i=>w6(t,A,i))}function w6(t,A,e){return(t.hasChildren()||A.length>0)&&e.pathMatch==="full"?!1:e.path===""}function P2e(t,A,e){return A.length===0&&!t.children[e]}var q9=class{};function j2e(t,A,e,i,n,o,a="emptyOnly",r){return nA(this,null,function*(){return new Z9(t,A,e,i,n,a,o,r).recognize()})}var V2e=31,Z9=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;abortSignal;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(A,e,i,n,o,a,r,s){this.injector=A,this.configLoader=e,this.rootComponentType=i,this.config=n,this.urlTree=o,this.paramsInheritanceStrategy=a,this.urlSerializer=r,this.abortSignal=s,this.applyRedirects=new j9(this.urlSerializer,this.urlTree)}noMatchError(A){return new Kt(4002,`'${A.segmentGroup}'`)}recognize(){return nA(this,null,function*(){let A=DP(this.urlTree.root,[],[],this.config).segmentGroup,{children:e,rootSnapshot:i}=yield this.match(A),n=new Ol(i,e),o=new $Q("",n),a=TP(i,[],this.urlTree.queryParams,this.urlTree.fragment);return a.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(a),{state:o,tree:a}})}match(A){return nA(this,null,function*(){let e=new YB([],Object.freeze({}),Object.freeze(Y({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),Hi,this.rootComponentType,null,{},this.injector);try{return{children:yield this.processSegmentGroup(this.injector,this.config,A,Hi,e),rootSnapshot:e}}catch(i){if(i instanceof Ap)return this.urlTree=i.urlTree,this.match(i.urlTree.root);throw i instanceof cC?this.noMatchError(i):i}})}processSegmentGroup(A,e,i,n,o){return nA(this,null,function*(){if(i.segments.length===0&&i.hasChildren())return this.processChildren(A,e,i,o);let a=yield this.processSegment(A,e,i,i.segments,n,!0,o);return a instanceof Ol?[a]:[]})}processChildren(A,e,i,n){return nA(this,null,function*(){let o=[];for(let s of Object.keys(i.children))s==="primary"?o.unshift(s):o.push(s);let a=[];for(let s of o){let l=i.children[s],c=T2e(e,s),C=yield this.processSegmentGroup(A,c,l,s,n);a.push(...C)}let r=oj(a);return q2e(r),r})}processSegment(A,e,i,n,o,a,r){return nA(this,null,function*(){for(let s of e)try{return yield this.processSegmentAgainstRoute(s._injector??A,e,s,i,n,o,a,r)}catch(l){if(l instanceof cC||$P(l))continue;throw l}if(P2e(i,n,o))return new q9;throw new cC(i)})}processSegmentAgainstRoute(A,e,i,n,o,a,r,s){return nA(this,null,function*(){if(l0(i)!==a&&(a===Hi||!w6(n,o,i)))throw new cC(n);if(i.redirectTo===void 0)return this.matchSegmentAgainstRoute(A,n,i,o,a,s);if(this.allowRedirects&&r)return this.expandSegmentAgainstRouteUsingRedirect(A,n,e,i,o,a,s);throw new cC(n)})}expandSegmentAgainstRouteUsingRedirect(A,e,i,n,o,a,r){return nA(this,null,function*(){let{matched:s,parameters:l,consumedSegments:c,positionalParamSegments:C,remainingSegments:d}=nj(e,n,o);if(!s)throw new cC(e);typeof n.redirectTo=="string"&&n.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>V2e&&(this.allowRedirects=!1));let B=this.createSnapshot(A,n,o,l,r);if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);let E=yield this.applyRedirects.applyRedirectCommands(c,n.redirectTo,C,ij(B),A),u=yield this.applyRedirects.lineralizeSegments(n,E);return this.processSegment(A,i,e,u.concat(d),a,!1,r)})}createSnapshot(A,e,i,n,o){let a=new YB(i,n,Object.freeze(Y({},this.urlTree.queryParams)),this.urlTree.fragment,W2e(e),l0(e),e.component??e._loadedComponent??null,e,X2e(e),A),r=W9(a,o,this.paramsInheritanceStrategy);return a.params=Object.freeze(r.params),a.data=Object.freeze(r.data),a}matchSegmentAgainstRoute(A,e,i,n,o,a){return nA(this,null,function*(){if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);let r=S=>this.createSnapshot(A,i,S.consumedSegments,S.parameters,a),s=yield o6(O2e(e,i,n,A,this.urlSerializer,r,this.abortSignal));if(i.path==="**"&&(e.children={}),!s?.matched)throw new cC(e);A=i._injector??A;let{routes:l}=yield this.getChildConfig(A,i,n),c=i._loadedInjector??A,{parameters:C,consumedSegments:d,remainingSegments:B}=s,E=this.createSnapshot(A,i,d,C,a),{segmentGroup:u,slicedSegments:m}=DP(e,d,B,l);if(m.length===0&&u.hasChildren()){let S=yield this.processChildren(c,l,u,E);return new Ol(E,S)}if(l.length===0&&m.length===0)return new Ol(E,[]);let f=l0(i)===o,D=yield this.processSegment(c,l,u,m,f?Hi:o,!0,E);return new Ol(E,D instanceof Ol?[D]:[])})}getChildConfig(A,e,i){return nA(this,null,function*(){if(e.children)return{routes:e.children,injector:A};if(e.loadChildren){if(e._loadedRoutes!==void 0){let o=e._loadedNgModuleFactory;return o&&!e._loadedInjector&&(e._loadedInjector=o.create(A).injector),{routes:e._loadedRoutes,injector:e._loadedInjector}}if(this.abortSignal.aborted)throw new Error(this.abortSignal.reason);if(yield o6(N2e(A,e,i,this.urlSerializer,this.abortSignal))){let o=yield this.configLoader.loadChildren(A,e);return e._loadedRoutes=o.routes,e._loadedInjector=o.injector,e._loadedNgModuleFactory=o.factory,o}throw G2e(e)}return{routes:[],injector:A}})}};function q2e(t){t.sort((A,e)=>A.value.outlet===Hi?-1:e.value.outlet===Hi?1:A.value.outlet.localeCompare(e.value.outlet))}function Z2e(t){let A=t.value.routeConfig;return A&&A.path===""}function oj(t){let A=[],e=new Set;for(let i of t){if(!Z2e(i)){A.push(i);continue}let n=A.find(o=>i.value.routeConfig===o.value.routeConfig);n!==void 0?(n.children.push(...i.children),e.add(n)):A.push(i)}for(let i of e){let n=oj(i.children);A.push(new Ol(i.value,n))}return A.filter(i=>!e.has(i))}function W2e(t){return t.data||{}}function X2e(t){return t.resolve||{}}function $2e(t,A,e,i,n,o,a){return qg(r=>nA(null,null,function*(){let{state:s,tree:l}=yield j2e(t,A,e,i,r.extractedUrl,n,o,a);return Ye(Y({},r),{targetSnapshot:s,urlAfterRedirects:l})}))}function eIe(t){return qg(A=>{let{targetSnapshot:e,guards:{canActivateChecks:i}}=A;if(!i.length)return sA(A);let n=new Set(i.map(r=>r.route)),o=new Set;for(let r of n)if(!o.has(r))for(let s of aj(r))o.add(s);let a=0;return qr(o).pipe(AQ(r=>n.has(r)?AIe(r,e,t):(r.data=W9(r,r.parent,t).resolve,sA(void 0))),yi(()=>a++),z7(1),qg(r=>a===o.size?sA(A):mr))})}function aj(t){let A=t.children.map(e=>aj(e)).flat();return[t,...A]}function AIe(t,A,e){let i=t.routeConfig,n=t._resolve;return i?.title!==void 0&&!VP(i)&&(n[tp]=i.title),Zg(()=>(t.data=W9(t,t.parent,e).resolve,tIe(n,t,A).pipe(xA(o=>(t._resolvedData=o,t.data=Y(Y({},t.data),o),null)))))}function tIe(t,A,e){let i=G9(t);if(i.length===0)return sA({});let n={};return qr(i).pipe(qg(o=>iIe(t[o],A,e).pipe(ao(),yi(a=>{if(a instanceof HB)throw p6(new gC,a);n[o]=a}))),z7(1),xA(()=>n),ca(o=>$P(o)?mr:_f(o)))}function iIe(t,A,e){let i=A._environmentInjector,n=jB(t,i),o=n.resolve?n.resolve(A,e):xr(i,()=>n(A,e));return kI(o)}function bP(t){return ki(A=>{let e=t(A);return e?qr(e).pipe(xA(()=>A)):sA(A)})}var iS=(()=>{class t{buildTitle(e){let i,n=e.root;for(;n!==void 0;)i=this.getResolvedTitleForRoute(n)??i,n=n.children.find(o=>o.outlet===Hi);return i}getResolvedTitleForRoute(e){return e.data[tp]}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:()=>w(rj),providedIn:"root"})}return t})(),rj=(()=>{class t extends iS{title;constructor(e){super(),this.title=e}updateTitle(e){let i=this.buildTitle(e);i!==void 0&&this.title.setTitle(i)}static \u0275fac=function(i){return new(i||t)(Xo(zJ))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),RI=new Me("",{factory:()=>({})}),VB=new Me(""),y6=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=w(DJ);loadComponent(e,i){return nA(this,null,function*(){if(this.componentLoaders.get(i))return this.componentLoaders.get(i);if(i._loadedComponent)return Promise.resolve(i._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(i);let n=nA(this,null,function*(){try{let o=yield kP(xr(e,()=>i.loadComponent())),a=yield cj(lj(o));return this.onLoadEndListener&&this.onLoadEndListener(i),i._loadedComponent=a,a}finally{this.componentLoaders.delete(i)}});return this.componentLoaders.set(i,n),n})}loadChildren(e,i){if(this.childrenLoaders.get(i))return this.childrenLoaders.get(i);if(i._loadedRoutes)return Promise.resolve({routes:i._loadedRoutes,injector:i._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(i);let n=nA(this,null,function*(){try{let o=yield sj(i,this.compiler,e,this.onLoadEndListener);return i._loadedRoutes=o.routes,i._loadedInjector=o.injector,i._loadedNgModuleFactory=o.factory,o}finally{this.childrenLoaders.delete(i)}});return this.childrenLoaders.set(i,n),n}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function sj(t,A,e,i){return nA(this,null,function*(){let n=yield kP(xr(e,()=>t.loadChildren())),o=yield cj(lj(n)),a;o instanceof mJ||Array.isArray(o)?a=o:a=yield A.compileModuleAsync(o),i&&i(t);let r,s,l=!1,c;return Array.isArray(a)?(s=a,l=!0):(r=a.create(e).injector,c=a,s=r.get(VB,[],{optional:!0,self:!0}).flat()),{routes:s.map(tS),injector:r,factory:c}})}function nIe(t){return t&&typeof t=="object"&&"default"in t}function lj(t){return nIe(t)?t.default:t}function cj(t){return nA(this,null,function*(){return t})}var v6=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:()=>w(oIe),providedIn:"root"})}return t})(),oIe=(()=>{class t{shouldProcessUrl(e){return!0}extract(e){return e}merge(e,i){return e}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),nS=new Me(""),oS=new Me("");function gj(t,A,e){let i=t.get(oS),n=t.get(Ii);if(!n.startViewTransition||i.skipNextTransition)return i.skipNextTransition=!1,new Promise(l=>setTimeout(l));let o,a=new Promise(l=>{o=l}),r=n.startViewTransition(()=>(o(),aIe(t)));r.updateCallbackDone.catch(l=>{}),r.ready.catch(l=>{}),r.finished.catch(l=>{});let{onViewTransitionCreated:s}=i;return s&&xr(t,()=>s({transition:r,from:A,to:e})),a}function aIe(t){return new Promise(A=>{ro({read:()=>setTimeout(A)},{injector:t})})}var rIe=()=>{},aS=new Me(""),D6=(()=>{class t{currentNavigation=fe(null,{equal:()=>!1});currentTransition=null;lastSuccessfulNavigation=fe(null);events=new rA;transitionAbortWithErrorSubject=new rA;configLoader=w(y6);environmentInjector=w(Zr);destroyRef=w(wr);urlSerializer=w(_I);rootContexts=w(xI);location=w(e0);inputBindingEnabled=w(ip,{optional:!0})!==null;titleStrategy=w(iS);options=w(RI,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=w(v6);createViewTransition=w(nS,{optional:!0});navigationErrorHandler=w(aS,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>sA(void 0);rootComponentType=null;destroyed=!1;constructor(){let e=n=>this.events.next(new C6(n)),i=n=>this.events.next(new d6(n));this.configLoader.onLoadEndListener=i,this.configLoader.onLoadStartListener=e,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(e){let i=++this.navigationId;Ma(()=>{this.transitions?.next(Ye(Y({},e),{extractedUrl:this.urlHandlingStrategy.extract(e.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,id:i,routesRecognizeHandler:{},beforeActivateHandler:{}}))})}setupNavigations(e){return this.transitions=new di(null),this.transitions.pipe(pt(i=>i!==null),ki(i=>{let n=!1,o=new AbortController,a=()=>!n&&this.currentTransition?.id===i.id;return sA(i).pipe(ki(r=>{if(this.navigationId>i.id)return this.cancelNavigationTransition(i,"",Qs.SupersededByNewNavigation),mr;this.currentTransition=i;let s=this.lastSuccessfulNavigation();this.currentNavigation.set({id:r.id,initialUrl:r.rawUrl,extractedUrl:r.extractedUrl,targetBrowserUrl:typeof r.extras.browserUrl=="string"?this.urlSerializer.parse(r.extras.browserUrl):r.extras.browserUrl,trigger:r.source,extras:r.extras,previousNavigation:s?Ye(Y({},s),{previousNavigation:null}):null,abort:()=>o.abort(),routesRecognizeHandler:r.routesRecognizeHandler,beforeActivateHandler:r.beforeActivateHandler});let l=!e.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),c=r.extras.onSameUrlNavigation??e.onSameUrlNavigation;if(!l&&c!=="reload")return this.events.next(new c0(r.id,this.urlSerializer.serialize(r.rawUrl),"",TB.IgnoredSameUrlNavigation)),r.resolve(!1),mr;if(this.urlHandlingStrategy.shouldProcessUrl(r.rawUrl))return sA(r).pipe(ki(C=>(this.events.next(new vd(C.id,this.urlSerializer.serialize(C.extractedUrl),C.source,C.restoredState)),C.id!==this.navigationId?mr:Promise.resolve(C))),$2e(this.environmentInjector,this.configLoader,this.rootComponentType,e.config,this.urlSerializer,this.paramsInheritanceStrategy,o.signal),yi(C=>{i.targetSnapshot=C.targetSnapshot,i.urlAfterRedirects=C.urlAfterRedirects,this.currentNavigation.update(d=>(d.finalUrl=C.urlAfterRedirects,d)),this.events.next(new WQ)}),ki(C=>qr(i.routesRecognizeHandler.deferredHandle??sA(void 0)).pipe(xA(()=>C))),yi(()=>{let C=new ZQ(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);this.events.next(C)}));if(l&&this.urlHandlingStrategy.shouldProcessUrl(r.currentRawUrl)){let{id:C,extractedUrl:d,source:B,restoredState:E,extras:u}=r,m=new vd(C,this.urlSerializer.serialize(d),B,E);this.events.next(m);let f=PP(this.rootComponentType,this.environmentInjector).snapshot;return this.currentTransition=i=Ye(Y({},r),{targetSnapshot:f,urlAfterRedirects:d,extras:Ye(Y({},u),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.update(D=>(D.finalUrl=d,D)),sA(i)}else return this.events.next(new c0(r.id,this.urlSerializer.serialize(r.extractedUrl),"",TB.IgnoredByUrlHandlingStrategy)),r.resolve(!1),mr}),xA(r=>{let s=new s6(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);return this.events.next(s),this.currentTransition=i=Ye(Y({},r),{guards:B2e(r.targetSnapshot,r.currentSnapshot,this.rootContexts)}),i}),D2e(r=>this.events.next(r)),ki(r=>{if(i.guardsResult=r.guardsResult,r.guardsResult&&typeof r.guardsResult!="boolean")throw p6(this.urlSerializer,r.guardsResult);let s=new l6(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot,!!r.guardsResult);if(this.events.next(s),!a())return mr;if(!r.guardsResult)return this.cancelNavigationTransition(r,"",Qs.GuardRejected),mr;if(r.guards.canActivateChecks.length===0)return sA(r);let l=new c6(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);if(this.events.next(l),!a())return mr;let c=!1;return sA(r).pipe(eIe(this.paramsInheritanceStrategy),yi({next:()=>{c=!0;let C=new g6(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects),r.targetSnapshot);this.events.next(C)},complete:()=>{c||this.cancelNavigationTransition(r,"",Qs.NoDataFromResolver)}}))}),bP(r=>{let s=c=>{let C=[];if(c.routeConfig?._loadedComponent)c.component=c.routeConfig?._loadedComponent;else if(c.routeConfig?.loadComponent){let d=c._environmentInjector;C.push(this.configLoader.loadComponent(d,c.routeConfig).then(B=>{c.component=B}))}for(let d of c.children)C.push(...s(d));return C},l=s(r.targetSnapshot.root);return l.length===0?sA(r):qr(Promise.all(l).then(()=>r))}),bP(()=>this.afterPreactivation()),ki(()=>{let{currentSnapshot:r,targetSnapshot:s}=i,l=this.createViewTransition?.(this.environmentInjector,r.root,s.root);return l?qr(l).pipe(xA(()=>i)):sA(i)}),No(1),ki(r=>{let s=g2e(e.routeReuseStrategy,r.targetSnapshot,r.currentRouterState);this.currentTransition=i=r=Ye(Y({},r),{targetRouterState:s}),this.currentNavigation.update(c=>(c.targetRouterState=s,c)),this.events.next(new JB);let l=i.beforeActivateHandler.deferredHandle;return l?qr(l.then(()=>r)):sA(r)}),yi(r=>{new P9(e.routeReuseStrategy,i.targetRouterState,i.currentRouterState,s=>this.events.next(s),this.inputBindingEnabled).activate(this.rootContexts),a()&&(n=!0,this.currentNavigation.update(s=>(s.abort=rIe,s)),this.lastSuccessfulNavigation.set(Ma(this.currentNavigation)),this.events.next(new ig(r.id,this.urlSerializer.serialize(r.extractedUrl),this.urlSerializer.serialize(r.urlAfterRedirects))),this.titleStrategy?.updateTitle(r.targetRouterState.snapshot),r.resolve(!0))}),Mt(ej(o.signal).pipe(pt(()=>!n&&!i.targetRouterState),yi(()=>{this.cancelNavigationTransition(i,o.signal.reason+"",Qs.Aborted)}))),yi({complete:()=>{n=!0}}),Mt(this.transitionAbortWithErrorSubject.pipe(yi(r=>{throw r}))),Ff(()=>{o.abort(),n||this.cancelNavigationTransition(i,"",Qs.SupersededByNewNavigation),this.currentTransition?.id===i.id&&(this.currentNavigation.set(null),this.currentTransition=null)}),ca(r=>{if(n=!0,this.destroyed)return i.resolve(!1),mr;if(XP(r))this.events.next(new Cc(i.id,this.urlSerializer.serialize(i.extractedUrl),r.message,r.cancellationCode)),I2e(r)?this.events.next(new zB(r.url,r.navigationBehaviorOptions)):i.resolve(!1);else{let s=new SI(i.id,this.urlSerializer.serialize(i.extractedUrl),r,i.targetSnapshot??void 0);try{let l=xr(this.environmentInjector,()=>this.navigationErrorHandler?.(s));if(l instanceof HB){let{message:c,cancellationCode:C}=p6(this.urlSerializer,l);this.events.next(new Cc(i.id,this.urlSerializer.serialize(i.extractedUrl),c,C)),this.events.next(new zB(l.redirectTo,l.navigationBehaviorOptions))}else throw this.events.next(s),r}catch(l){this.options.resolveNavigationPromiseOnError?i.resolve(!1):i.reject(l)}}return mr}))}))}cancelNavigationTransition(e,i,n){let o=new Cc(e.id,this.urlSerializer.serialize(e.extractedUrl),i,n);this.events.next(o),e.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let e=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),i=Ma(this.currentNavigation),n=i?.targetBrowserUrl??i?.extractedUrl;return e.toString()!==n?.toString()&&!i?.extras.skipLocationChange}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function sIe(t){return t!==GB}var Cj=new Me("");var dj=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:()=>w(lIe),providedIn:"root"})}return t})(),f6=class{shouldDetach(A){return!1}store(A,e){}shouldAttach(A){return!1}retrieve(A){return null}shouldReuseRoute(A,e){return A.routeConfig===e.routeConfig}shouldDestroyInjector(A){return!0}},lIe=(()=>{class t extends f6{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),rS=(()=>{class t{urlSerializer=w(_I);options=w(RI,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=w(e0);urlHandlingStrategy=w(v6);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new dc;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:e,initialUrl:i,targetBrowserUrl:n}){let o=e!==void 0?this.urlHandlingStrategy.merge(e,i):i,a=n??o;return a instanceof dc?this.urlSerializer.serialize(a):a}commitTransition({targetRouterState:e,finalUrl:i,initialUrl:n}){i&&e?(this.currentUrlTree=i,this.rawUrlTree=this.urlHandlingStrategy.merge(i,n),this.routerState=e):this.rawUrlTree=n}routerState=PP(null,w(Zr));getRouterState(){return this.routerState}_stateMemento=this.createStateMemento();get stateMemento(){return this._stateMemento}updateStateMemento(){this._stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}restoredState(){return this.location.getState()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:()=>w(cIe),providedIn:"root"})}return t})(),cIe=(()=>{class t extends rS{currentPageId=0;lastSuccessfulId=-1;get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(e){return this.location.subscribe(i=>{i.type==="popstate"&&setTimeout(()=>{e(i.url,i.state,"popstate",{replaceUrl:!0})})})}handleRouterEvent(e,i){e instanceof vd?this.updateStateMemento():e instanceof c0?this.commitTransition(i):e instanceof ZQ?this.urlUpdateStrategy==="eager"&&(i.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(i),i)):e instanceof JB?(this.commitTransition(i),this.urlUpdateStrategy==="deferred"&&!i.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(i),i)):e instanceof Cc&&!HP(e)?this.restoreHistory(i):e instanceof SI?this.restoreHistory(i,!0):e instanceof ig&&(this.lastSuccessfulId=e.id,this.currentPageId=this.browserPageId)}setBrowserUrl(e,{extras:i,id:n}){let{replaceUrl:o,state:a}=i;if(this.location.isCurrentPathEqualTo(e)||o){let r=this.browserPageId,s=Y(Y({},a),this.generateNgRouterState(n,r));this.location.replaceState(e,"",s)}else{let r=Y(Y({},a),this.generateNgRouterState(n,this.browserPageId+1));this.location.go(e,"",r)}}restoreHistory(e,i=!1){if(this.canceledNavigationResolution==="computed"){let n=this.browserPageId,o=this.currentPageId-n;o!==0?this.location.historyGo(o):this.getCurrentUrlTree()===e.finalUrl&&o===0&&(this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(i&&this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}resetInternalState({finalUrl:e}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(e,i){return this.canceledNavigationResolution==="computed"?{navigationId:e,\u0275routerPageId:i}:{navigationId:e}}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function b6(t,A){t.events.pipe(pt(e=>e instanceof ig||e instanceof Cc||e instanceof SI||e instanceof c0),xA(e=>e instanceof ig||e instanceof c0?0:(e instanceof Cc?e.code===Qs.Redirect||e.code===Qs.SupersededByNewNavigation:!1)?2:1),pt(e=>e!==2),No(1)).subscribe(()=>{A()})}var ps=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=w(fJ);stateManager=w(rS);options=w(RI,{optional:!0})||{};pendingTasks=w(EJ);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=w(D6);urlSerializer=w(_I);location=w(e0);urlHandlingStrategy=w(v6);injector=w(Zr);_events=new rA;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=w(dj);injectorCleanup=w(Cj,{optional:!0});onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=w(VB,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!w(ip,{optional:!0});currentNavigation=this.navigationTransitions.currentNavigation.asReadonly();constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:e=>{}}),this.subscribeToNavigationEvents()}eventsSubscription=new zo;subscribeToNavigationEvents(){let e=this.navigationTransitions.events.subscribe(i=>{try{let n=this.navigationTransitions.currentTransition,o=Ma(this.navigationTransitions.currentNavigation);if(n!==null&&o!==null){if(this.stateManager.handleRouterEvent(i,o),i instanceof Cc&&i.code!==Qs.Redirect&&i.code!==Qs.SupersededByNewNavigation)this.navigated=!0;else if(i instanceof ig)this.navigated=!0,this.injectorCleanup?.(this.routeReuseStrategy,this.routerState,this.config);else if(i instanceof zB){let a=i.navigationBehaviorOptions,r=this.urlHandlingStrategy.merge(i.url,n.currentRawUrl),s=Y({scroll:n.extras.scroll,browserUrl:n.extras.browserUrl,info:n.extras.info,skipLocationChange:n.extras.skipLocationChange,replaceUrl:n.extras.replaceUrl||this.urlUpdateStrategy==="eager"||sIe(n.source)},a);this.scheduleNavigation(r,GB,null,s,{resolve:n.resolve,reject:n.reject,promise:n.promise})}}l2e(i)&&this._events.next(i)}catch(n){this.navigationTransitions.transitionAbortWithErrorSubject.next(n)}});this.eventsSubscription.add(e)}resetRootComponentType(e){this.routerState.root.component=e,this.navigationTransitions.rootComponentType=e}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),GB,this.stateManager.restoredState(),{replaceUrl:!0})}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((e,i,n,o)=>{this.navigateToSyncWithBrowser(e,n,i,o)})}navigateToSyncWithBrowser(e,i,n,o){let a=n?.navigationId?n:null;if(n){let s=Y({},n);delete s.navigationId,delete s.\u0275routerPageId,Object.keys(s).length!==0&&(o.state=s)}let r=this.parseUrl(e);this.scheduleNavigation(r,i,a,o).catch(s=>{this.disposed||this.injector.get(Y7)(s)})}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return Ma(this.navigationTransitions.currentNavigation)}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(e){this.config=e.map(tS),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription?.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0,this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(e,i={}){let{relativeTo:n,queryParams:o,fragment:a,queryParamsHandling:r,preserveFragment:s}=i,l=s?this.currentUrlTree.fragment:a,c=null;switch(r??this.options.defaultQueryParamsHandling){case"merge":c=Y(Y({},this.currentUrlTree.queryParams),o);break;case"preserve":c=this.currentUrlTree.queryParams;break;default:c=o||null}c!==null&&(c=this.removeEmptyProps(c));let C;try{let d=n?n.snapshot:this.routerState.snapshot.root;C=OP(d)}catch(d){(typeof e[0]!="string"||e[0][0]!=="/")&&(e=[]),C=this.currentUrlTree.root}return JP(C,e,c,l??null,this.urlSerializer)}navigateByUrl(e,i={skipLocationChange:!1}){let n=UB(e)?e:this.parseUrl(e),o=this.urlHandlingStrategy.merge(n,this.rawUrlTree);return this.scheduleNavigation(o,GB,null,i)}navigate(e,i={skipLocationChange:!1}){return gIe(e),this.navigateByUrl(this.createUrlTree(e,i),i)}serializeUrl(e){return this.urlSerializer.serialize(e)}parseUrl(e){try{return this.urlSerializer.parse(e)}catch(i){return this.console.warn(IJ(4018,!1)),this.urlSerializer.parse("/")}}isActive(e,i){let n;if(i===!0?n=Y({},xP):i===!1?n=Y({},K9):n=Y(Y({},K9),i),UB(e))return mP(this.currentUrlTree,e,n);let o=this.parseUrl(e);return mP(this.currentUrlTree,o,n)}removeEmptyProps(e){return Object.entries(e).reduce((i,[n,o])=>(o!=null&&(i[n]=o),i),{})}scheduleNavigation(e,i,n,o,a){if(this.disposed)return Promise.resolve(!1);let r,s,l;a?(r=a.resolve,s=a.reject,l=a.promise):l=new Promise((C,d)=>{r=C,s=d});let c=this.pendingTasks.add();return b6(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(c))}),this.navigationTransitions.handleNavigationRequest({source:i,restoredState:n,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:e,extras:o,resolve:r,reject:s,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(Promise.reject.bind(Promise))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function gIe(t){for(let A=0;A{class t{router;injector;preloadingStrategy;loader;subscription;constructor(e,i,n,o){this.router=e,this.injector=i,this.preloadingStrategy=n,this.loader=o}setUpPreloading(){this.subscription=this.router.events.pipe(pt(e=>e instanceof ig),AQ(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription?.unsubscribe()}processRoutes(e,i){let n=[];for(let o of i){o.providers&&!o._injector&&(o._injector=Of(o.providers,e,""));let a=o._injector??e;o._loadedNgModuleFactory&&!o._loadedInjector&&(o._loadedInjector=o._loadedNgModuleFactory.create(a).injector);let r=o._loadedInjector??a;(o.loadChildren&&!o._loadedRoutes&&o.canLoad===void 0||o.loadComponent&&!o._loadedComponent)&&n.push(this.preloadConfig(a,o)),(o.children||o._loadedRoutes)&&n.push(this.processRoutes(r,o.children??o._loadedRoutes))}return qr(n).pipe(J7())}preloadConfig(e,i){return this.preloadingStrategy.preload(i,()=>{if(e.destroyed)return sA(null);let n;i.loadChildren&&i.canLoad===void 0?n=qr(this.loader.loadChildren(e,i)):n=sA(null);let o=n.pipe(qg(a=>a===null?sA(void 0):(i._loadedRoutes=a.routes,i._loadedInjector=a.injector,i._loadedNgModuleFactory=a.factory,this.processRoutes(a.injector??e,a.routes))));if(i.loadComponent&&!i._loadedComponent){let a=this.loader.loadComponent(e,i);return qr([o,a]).pipe(J7())}else return o})}static \u0275fac=function(i){return new(i||t)(Xo(ps),Xo(Zr),Xo(op),Xo(y6))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Bj=new Me(""),dIe=(()=>{class t{options;routerEventsSubscription;scrollEventsSubscription;lastId=0;lastSource=GB;restoredId=0;store={};urlSerializer=w(_I);zone=w(At);viewportScroller=w(Z7);transitions=w(D6);constructor(e){this.options=e,this.options.scrollPositionRestoration||="disabled",this.options.anchorScrolling||="disabled"}init(){this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(e=>{e instanceof vd?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=e.navigationTrigger,this.restoredId=e.restoredState?e.restoredState.navigationId:0):e instanceof ig?(this.lastId=e.id,this.scheduleScrollEvent(e,this.urlSerializer.parse(e.urlAfterRedirects).fragment)):e instanceof c0&&e.code===TB.IgnoredSameUrlNavigation&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(e,this.urlSerializer.parse(e.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(e=>{if(!(e instanceof OB)||e.scrollBehavior==="manual")return;let i={behavior:"instant"};e.position?this.options.scrollPositionRestoration==="top"?this.viewportScroller.scrollToPosition([0,0],i):this.options.scrollPositionRestoration==="enabled"&&this.viewportScroller.scrollToPosition(e.position,i):e.anchor&&this.options.anchorScrolling==="enabled"?this.viewportScroller.scrollToAnchor(e.anchor):this.options.scrollPositionRestoration!=="disabled"&&this.viewportScroller.scrollToPosition([0,0])})}scheduleScrollEvent(e,i){let n=Ma(this.transitions.currentNavigation)?.extras.scroll;this.zone.runOutsideAngular(()=>nA(this,null,function*(){yield new Promise(o=>{setTimeout(o),typeof requestAnimationFrame<"u"&&requestAnimationFrame(o)}),this.zone.run(()=>{this.transitions.events.next(new OB(e,this.lastSource==="popstate"?this.store[this.restoredId]:null,i,n))})}))}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static \u0275fac=function(i){Tf()};static \u0275prov=Ze({token:t,factory:t.\u0275fac})}return t})();function IIe(){return w(ps).routerState.root}function ap(t,A){return{\u0275kind:t,\u0275providers:A}}function BIe(){let t=w(Rt);return A=>{let e=t.get(AC);if(A!==e.components[0])return;let i=t.get(ps),n=t.get(hj);t.get(lS)===1&&i.initialNavigation(),t.get(Qj,null,{optional:!0})?.setUpPreloading(),t.get(Bj,null,{optional:!0})?.init(),i.resetRootComponentType(e.componentTypes[0]),n.closed||(n.next(),n.complete(),n.unsubscribe())}}var hj=new Me("",{factory:()=>new rA}),lS=new Me("",{factory:()=>1});function uj(){let t=[{provide:pJ,useValue:!0},{provide:lS,useValue:0},j7(()=>{let A=w(Rt);return A.get(NJ,Promise.resolve()).then(()=>new Promise(i=>{let n=A.get(ps),o=A.get(hj);b6(n,()=>{i(!0)}),A.get(D6).afterPreactivation=()=>(i(!0),o.closed?sA(void 0):o),n.initialNavigation()}))})];return ap(2,t)}function Ej(){let t=[j7(()=>{w(ps).setUpLocationChangeListener()}),{provide:lS,useValue:2}];return ap(3,t)}var Qj=new Me("");function pj(t){return ap(0,[{provide:Qj,useExisting:Ij},{provide:op,useExisting:t}])}function mj(){return ap(8,[eS,{provide:ip,useExisting:eS}])}function fj(t){Uf("NgRouterViewTransitions");let A=[{provide:nS,useValue:gj},{provide:oS,useValue:Y({skipNextTransition:!!t?.skipInitialTransition},t)}];return ap(9,A)}var wj=[e0,{provide:_I,useClass:gC},ps,xI,{provide:ll,useFactory:IIe},y6,[]],M6=(()=>{class t{constructor(){}static forRoot(e,i){return{ngModule:t,providers:[wj,[],{provide:VB,multi:!0,useValue:e},[],i?.errorHandler?{provide:aS,useValue:i.errorHandler}:[],{provide:RI,useValue:i||{}},i?.useHash?uIe():EIe(),hIe(),i?.preloadingStrategy?pj(i.preloadingStrategy).\u0275providers:[],i?.initialNavigation?QIe(i):[],i?.bindToComponentInputs?mj().\u0275providers:[],i?.enableViewTransitions?fj().\u0275providers:[],pIe()]}}static forChild(e){return{ngModule:t,providers:[{provide:VB,multi:!0,useValue:e}]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({})}return t})();function hIe(){return{provide:Bj,useFactory:()=>{let t=w(Z7),A=w(RI);return A.scrollOffset&&t.setOffset(A.scrollOffset),new dIe(A)}}}function uIe(){return{provide:q7,useClass:LJ}}function EIe(){return{provide:q7,useClass:FJ}}function QIe(t){return[t.initialNavigation==="disabled"?Ej().\u0275providers:[],t.initialNavigation==="enabledBlocking"?uj().\u0275providers:[]]}var sS=new Me("");function pIe(){return[{provide:sS,useFactory:BIe},{provide:wJ,multi:!0,useExisting:sS}]}var wIe=["*"];var yIe=new Me("MAT_CARD_CONFIG"),S6=(()=>{class t{appearance;constructor(){let e=w(yIe,{optional:!0});this.appearance=e?.appearance||"raised"}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-card"]],hostAttrs:[1,"mat-mdc-card","mdc-card"],hostVars:8,hostBindings:function(i,n){i&2&&_e("mat-mdc-card-outlined",n.appearance==="outlined")("mdc-card--outlined",n.appearance==="outlined")("mat-mdc-card-filled",n.appearance==="filled")("mdc-card--filled",n.appearance==="filled")},inputs:{appearance:"appearance"},exportAs:["matCard"],ngContentSelectors:wIe,decls:1,vars:0,template:function(i,n){i&1&&(Yt(),tt(0))},styles:[`.mat-mdc-card{display:flex;flex-direction:column;box-sizing:border-box;position:relative;border-style:solid;border-width:0;background-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-color:var(--mat-card-elevated-container-color, var(--mat-sys-surface-container-low));border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-elevated-container-elevation, var(--mat-sys-level1))}.mat-mdc-card::after{position:absolute;top:0;left:0;width:100%;height:100%;border:solid 1px rgba(0,0,0,0);content:"";display:block;pointer-events:none;box-sizing:border-box;border-radius:var(--mat-card-elevated-container-shape, var(--mat-sys-corner-medium))}.mat-mdc-card-outlined{background-color:var(--mat-card-outlined-container-color, var(--mat-sys-surface));border-radius:var(--mat-card-outlined-container-shape, var(--mat-sys-corner-medium));border-width:var(--mat-card-outlined-outline-width, 1px);border-color:var(--mat-card-outlined-outline-color, var(--mat-sys-outline-variant));box-shadow:var(--mat-card-outlined-container-elevation, var(--mat-sys-level0))}.mat-mdc-card-outlined::after{border:none}.mat-mdc-card-filled{background-color:var(--mat-card-filled-container-color, var(--mat-sys-surface-container-highest));border-radius:var(--mat-card-filled-container-shape, var(--mat-sys-corner-medium));box-shadow:var(--mat-card-filled-container-elevation, var(--mat-sys-level0))}.mdc-card__media{position:relative;box-sizing:border-box;background-repeat:no-repeat;background-position:center;background-size:cover}.mdc-card__media::before{display:block;content:""}.mdc-card__media:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.mdc-card__media:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.mat-mdc-card-actions{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;min-height:52px;padding:8px}.mat-mdc-card-title{font-family:var(--mat-card-title-text-font, var(--mat-sys-title-large-font));line-height:var(--mat-card-title-text-line-height, var(--mat-sys-title-large-line-height));font-size:var(--mat-card-title-text-size, var(--mat-sys-title-large-size));letter-spacing:var(--mat-card-title-text-tracking, var(--mat-sys-title-large-tracking));font-weight:var(--mat-card-title-text-weight, var(--mat-sys-title-large-weight))}.mat-mdc-card-subtitle{color:var(--mat-card-subtitle-text-color, var(--mat-sys-on-surface));font-family:var(--mat-card-subtitle-text-font, var(--mat-sys-title-medium-font));line-height:var(--mat-card-subtitle-text-line-height, var(--mat-sys-title-medium-line-height));font-size:var(--mat-card-subtitle-text-size, var(--mat-sys-title-medium-size));letter-spacing:var(--mat-card-subtitle-text-tracking, var(--mat-sys-title-medium-tracking));font-weight:var(--mat-card-subtitle-text-weight, var(--mat-sys-title-medium-weight))}.mat-mdc-card-title,.mat-mdc-card-subtitle{display:block;margin:0}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle{padding:16px 16px 0}.mat-mdc-card-header{display:flex;padding:16px 16px 0}.mat-mdc-card-content{display:block;padding:0 16px}.mat-mdc-card-content:first-child{padding-top:16px}.mat-mdc-card-content:last-child{padding-bottom:16px}.mat-mdc-card-title-group{display:flex;justify-content:space-between;width:100%}.mat-mdc-card-avatar{height:40px;width:40px;border-radius:50%;flex-shrink:0;margin-bottom:16px;object-fit:cover}.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-avatar~.mat-mdc-card-header-text .mat-mdc-card-title{line-height:normal}.mat-mdc-card-sm-image{width:80px;height:80px}.mat-mdc-card-md-image{width:112px;height:112px}.mat-mdc-card-lg-image{width:152px;height:152px}.mat-mdc-card-xl-image{width:240px;height:240px}.mat-mdc-card-subtitle~.mat-mdc-card-title,.mat-mdc-card-title~.mat-mdc-card-subtitle,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-title,.mat-mdc-card-header .mat-mdc-card-header-text .mat-mdc-card-subtitle,.mat-mdc-card-title-group .mat-mdc-card-title,.mat-mdc-card-title-group .mat-mdc-card-subtitle{padding-top:0}.mat-mdc-card-content>:last-child:not(.mat-mdc-card-footer){margin-bottom:0}.mat-mdc-card-actions-align-end{justify-content:flex-end} +`],encapsulation:2,changeDetection:0})}return t})();var yj=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();var rp=class{};function sp(t){return t&&typeof t.connect=="function"&&!(t instanceof sJ)}var ng=(function(t){return t[t.REPLACED=0]="REPLACED",t[t.INSERTED=1]="INSERTED",t[t.MOVED=2]="MOVED",t[t.REMOVED=3]="REMOVED",t})(ng||{}),k6=class{viewCacheSize=20;_viewCache=[];applyChanges(A,e,i,n,o){A.forEachOperation((a,r,s)=>{let l,c;if(a.previousIndex==null){let C=()=>i(a,r,s);l=this._insertView(C,s,e,n(a)),c=l?ng.INSERTED:ng.REPLACED}else s==null?(this._detachAndCacheView(r,e),c=ng.REMOVED):(l=this._moveView(r,s,e,n(a)),c=ng.MOVED);o&&o({context:l?.context,operation:c,record:a})})}detach(){for(let A of this._viewCache)A.destroy();this._viewCache=[]}_insertView(A,e,i,n){let o=this._insertViewFromCache(e,i);if(o){o.context.$implicit=n;return}let a=A();return i.createEmbeddedView(a.templateRef,a.context,a.index)}_detachAndCacheView(A,e){let i=e.detach(A);this._maybeCacheView(i,e)}_moveView(A,e,i,n){let o=i.get(A);return i.move(o,e),o.context.$implicit=n,o}_maybeCacheView(A,e){if(this._viewCache.length{let l,c;if(a.previousIndex==null){let C=i(a,r,s);l=e.createEmbeddedView(C.templateRef,C.context,C.index),c=ng.INSERTED}else s==null?(e.remove(r),c=ng.REMOVED):(l=e.get(r),e.move(l,s),c=ng.MOVED);o&&o({context:l?.context,operation:c,record:a})})}detach(){}};var CC=class{_multiple;_emitChanges;compareWith;_selection=new Set;_deselectedToEmit=[];_selectedToEmit=[];_selected=null;get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}changed=new rA;constructor(A=!1,e,i=!0,n){this._multiple=A,this._emitChanges=i,this.compareWith=n,e&&e.length&&(A?e.forEach(o=>this._markSelected(o)):this._markSelected(e[0]),this._selectedToEmit.length=0)}select(...A){this._verifyValueAssignment(A),A.forEach(i=>this._markSelected(i));let e=this._hasQueuedChanges();return this._emitChangeEvent(),e}deselect(...A){this._verifyValueAssignment(A),A.forEach(i=>this._unmarkSelected(i));let e=this._hasQueuedChanges();return this._emitChangeEvent(),e}setSelection(...A){this._verifyValueAssignment(A);let e=this.selected,i=new Set(A.map(o=>this._getConcreteValue(o)));A.forEach(o=>this._markSelected(o)),e.filter(o=>!i.has(this._getConcreteValue(o,i))).forEach(o=>this._unmarkSelected(o));let n=this._hasQueuedChanges();return this._emitChangeEvent(),n}toggle(A){return this.isSelected(A)?this.deselect(A):this.select(A)}clear(A=!0){this._unmarkAll();let e=this._hasQueuedChanges();return A&&this._emitChangeEvent(),e}isSelected(A){return this._selection.has(this._getConcreteValue(A))}isEmpty(){return this._selection.size===0}hasValue(){return!this.isEmpty()}sort(A){this._multiple&&this.selected&&this._selected.sort(A)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(A){A=this._getConcreteValue(A),this.isSelected(A)||(this._multiple||this._unmarkAll(),this.isSelected(A)||this._selection.add(A),this._emitChanges&&this._selectedToEmit.push(A))}_unmarkSelected(A){A=this._getConcreteValue(A),this.isSelected(A)&&(this._selection.delete(A),this._emitChanges&&this._deselectedToEmit.push(A))}_unmarkAll(){this.isEmpty()||this._selection.forEach(A=>this._unmarkSelected(A))}_verifyValueAssignment(A){A.length>1&&this._multiple}_hasQueuedChanges(){return!!(this._deselectedToEmit.length||this._selectedToEmit.length)}_getConcreteValue(A,e){if(this.compareWith){e=e??this._selection;for(let i of e)if(this.compareWith(A,i))return i;return A}else return A}};var x6=(()=>{class t{_animationsDisabled=hn();state="unchecked";disabled=!1;appearance="full";constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:12,hostBindings:function(i,n){i&2&&_e("mat-pseudo-checkbox-indeterminate",n.state==="indeterminate")("mat-pseudo-checkbox-checked",n.state==="checked")("mat-pseudo-checkbox-disabled",n.disabled)("mat-pseudo-checkbox-minimal",n.appearance==="minimal")("mat-pseudo-checkbox-full",n.appearance==="full")("_mat-animation-noopable",n._animationsDisabled)},inputs:{state:"state",disabled:"disabled",appearance:"appearance"},decls:0,vars:0,template:function(i,n){},styles:[`.mat-pseudo-checkbox{border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox._mat-animation-noopable{transition:none !important;animation:none !important}.mat-pseudo-checkbox._mat-animation-noopable::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{left:1px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{left:1px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-pseudo-checkbox-minimal-selected-checkmark-color, var(--mat-sys-primary))}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full{border-color:var(--mat-pseudo-checkbox-full-unselected-icon-color, var(--mat-sys-on-surface-variant));border-width:2px;border-style:solid}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-disabled{border-color:var(--mat-pseudo-checkbox-full-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate{background-color:var(--mat-pseudo-checkbox-full-selected-icon-color, var(--mat-sys-primary));border-color:rgba(0,0,0,0)}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{color:var(--mat-pseudo-checkbox-full-selected-checkmark-color, var(--mat-sys-on-primary))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background-color:var(--mat-pseudo-checkbox-full-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled::after,.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled::after{color:var(--mat-pseudo-checkbox-full-disabled-selected-checkmark-color, var(--mat-sys-surface))}.mat-pseudo-checkbox{width:18px;height:18px}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-checked::after{width:14px;height:6px;transform-origin:center;top:-4.2426406871px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-minimal.mat-pseudo-checkbox-indeterminate::after{top:8px;width:16px}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-checked::after{width:10px;height:4px;transform-origin:center;top:-2.8284271247px;left:0;bottom:0;right:0;margin:auto}.mat-pseudo-checkbox-full.mat-pseudo-checkbox-indeterminate::after{top:6px;width:12px} +`],encapsulation:2,changeDetection:0})}return t})();var vIe=["button"],DIe=["*"];function bIe(t,A){if(t&1&&(I(0,"div",2),le(1,"mat-pseudo-checkbox",6),h()),t&2){let e=p();Q(),H("disabled",e.disabled)}}var vj=new Me("MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS",{providedIn:"root",factory:()=>({hideSingleSelectionIndicator:!1,hideMultipleSelectionIndicator:!1,disabledInteractive:!1})}),Dj=new Me("MatButtonToggleGroup"),MIe={provide:us,useExisting:er(()=>cS),multi:!0},R6=class{source;value;constructor(A,e){this.source=A,this.value=e}},cS=(()=>{class t{_changeDetector=w(xt);_dir=w(Fo,{optional:!0});_multiple=!1;_disabled=!1;_disabledInteractive=!1;_selectionModel;_rawValue;_controlValueAccessorChangeFn=()=>{};_onTouched=()=>{};_buttonToggles;appearance;get name(){return this._name}set name(e){this._name=e,this._markButtonsForCheck()}_name=w(bn).getId("mat-button-toggle-group-");vertical=!1;get value(){let e=this._selectionModel?this._selectionModel.selected:[];return this.multiple?e.map(i=>i.value):e[0]?e[0].value:void 0}set value(e){this._setSelectionByValue(e),this.valueChange.emit(this.value)}valueChange=new Le;get selected(){let e=this._selectionModel?this._selectionModel.selected:[];return this.multiple?e:e[0]||null}get multiple(){return this._multiple}set multiple(e){this._multiple=e,this._markButtonsForCheck()}get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._markButtonsForCheck()}get disabledInteractive(){return this._disabledInteractive}set disabledInteractive(e){this._disabledInteractive=e,this._markButtonsForCheck()}get dir(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}change=new Le;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._markButtonsForCheck()}_hideSingleSelectionIndicator;get hideMultipleSelectionIndicator(){return this._hideMultipleSelectionIndicator}set hideMultipleSelectionIndicator(e){this._hideMultipleSelectionIndicator=e,this._markButtonsForCheck()}_hideMultipleSelectionIndicator;constructor(){let e=w(vj,{optional:!0});this.appearance=e&&e.appearance?e.appearance:"standard",this._hideSingleSelectionIndicator=e?.hideSingleSelectionIndicator??!1,this._hideMultipleSelectionIndicator=e?.hideMultipleSelectionIndicator??!1}ngOnInit(){this._selectionModel=new CC(this.multiple,void 0,!1)}ngAfterContentInit(){this._selectionModel.select(...this._buttonToggles.filter(e=>e.checked)),this.multiple||this._initializeTabIndex()}writeValue(e){this.value=e,this._changeDetector.markForCheck()}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}_keydown(e){if(this.multiple||this.disabled||Na(e))return;let n=e.target.id,o=this._buttonToggles.toArray().findIndex(r=>r.buttonId===n),a=null;switch(e.keyCode){case 32:case 13:a=this._buttonToggles.get(o)||null;break;case 38:a=this._getNextButton(o,-1);break;case 37:a=this._getNextButton(o,this.dir==="ltr"?-1:1);break;case 40:a=this._getNextButton(o,1);break;case 39:a=this._getNextButton(o,this.dir==="ltr"?1:-1);break;default:return}a&&(e.preventDefault(),a._onButtonClick(),a.focus())}_emitChangeEvent(e){let i=new R6(e,this.value);this._rawValue=i.value,this._controlValueAccessorChangeFn(i.value),this.change.emit(i)}_syncButtonToggle(e,i,n=!1,o=!1){!this.multiple&&this.selected&&!e.checked&&(this.selected.checked=!1),this._selectionModel?i?this._selectionModel.select(e):this._selectionModel.deselect(e):o=!0,o?Promise.resolve().then(()=>this._updateModelValue(e,n)):this._updateModelValue(e,n)}_isSelected(e){return this._selectionModel&&this._selectionModel.isSelected(e)}_isPrechecked(e){return typeof this._rawValue>"u"?!1:this.multiple&&Array.isArray(this._rawValue)?this._rawValue.some(i=>e.value!=null&&i===e.value):e.value===this._rawValue}_initializeTabIndex(){if(this._buttonToggles.forEach(e=>{e.tabIndex=-1}),this.selected)this.selected.tabIndex=0;else for(let e=0;ethis._selectValue(n,i))):(this._clearSelection(),this._selectValue(e,i)),!this.multiple&&i.every(n=>n.tabIndex===-1)){for(let n of i)if(!n.disabled){n.tabIndex=0;break}}}_clearSelection(){this._selectionModel.clear(),this._buttonToggles.forEach(e=>{e.checked=!1,this.multiple||(e.tabIndex=-1)})}_selectValue(e,i){for(let n of i)if(n.value===e){n.checked=!0,this._selectionModel.select(n),this.multiple||(n.tabIndex=0);break}}_updateModelValue(e,i){i&&this._emitChangeEvent(e),this.valueChange.emit(this.value)}_markButtonsForCheck(){this._buttonToggles?.forEach(e=>e._markForCheck())}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["mat-button-toggle-group"]],contentQueries:function(i,n,o){if(i&1&&ga(o,N6,5),i&2){let a;cA(a=gA())&&(n._buttonToggles=a)}},hostAttrs:[1,"mat-button-toggle-group"],hostVars:6,hostBindings:function(i,n){i&1&&U("keydown",function(a){return n._keydown(a)}),i&2&&(aA("role",n.multiple?"group":"radiogroup")("aria-disabled",n.disabled),_e("mat-button-toggle-vertical",n.vertical)("mat-button-toggle-group-appearance-standard",n.appearance==="standard"))},inputs:{appearance:"appearance",name:"name",vertical:[2,"vertical","vertical",mA],value:"value",multiple:[2,"multiple","multiple",mA],disabled:[2,"disabled","disabled",mA],disabledInteractive:[2,"disabledInteractive","disabledInteractive",mA],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",mA],hideMultipleSelectionIndicator:[2,"hideMultipleSelectionIndicator","hideMultipleSelectionIndicator",mA]},outputs:{valueChange:"valueChange",change:"change"},exportAs:["matButtonToggleGroup"],features:[yt([MIe,{provide:Dj,useExisting:t}])]})}return t})(),N6=(()=>{class t{_changeDetectorRef=w(xt);_elementRef=w(dA);_focusMonitor=w(dr);_idGenerator=w(bn);_animationDisabled=hn();_checked=!1;ariaLabel;ariaLabelledby=null;_buttonElement;buttonToggleGroup;get buttonId(){return`${this.id}-button`}id;name;value;get tabIndex(){return this._tabIndex()}set tabIndex(e){this._tabIndex.set(e)}_tabIndex;disableRipple=!1;get appearance(){return this.buttonToggleGroup?this.buttonToggleGroup.appearance:this._appearance}set appearance(e){this._appearance=e}_appearance;get checked(){return this.buttonToggleGroup?this.buttonToggleGroup._isSelected(this):this._checked}set checked(e){e!==this._checked&&(this._checked=e,this.buttonToggleGroup&&this.buttonToggleGroup._syncButtonToggle(this,this._checked),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled||this.buttonToggleGroup&&this.buttonToggleGroup.disabled}set disabled(e){this._disabled=e}_disabled=!1;get disabledInteractive(){return this._disabledInteractive||this.buttonToggleGroup!==null&&this.buttonToggleGroup.disabledInteractive}set disabledInteractive(e){this._disabledInteractive=e}_disabledInteractive;change=new Le;constructor(){w(Eo).load(yr);let e=w(Dj,{optional:!0}),i=w(new $s("tabindex"),{optional:!0})||"",n=w(vj,{optional:!0});this._tabIndex=fe(parseInt(i)||0),this.buttonToggleGroup=e,this._appearance=n&&n.appearance?n.appearance:"standard",this._disabledInteractive=n?.disabledInteractive??!1}ngOnInit(){let e=this.buttonToggleGroup;this.id=this.id||this._idGenerator.getId("mat-button-toggle-"),e&&(e._isPrechecked(this)?this.checked=!0:e._isSelected(this)!==this._checked&&e._syncButtonToggle(this,this._checked))}ngAfterViewInit(){this._animationDisabled||this._elementRef.nativeElement.classList.add("mat-button-toggle-animations-enabled"),this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){let e=this.buttonToggleGroup;this._focusMonitor.stopMonitoring(this._elementRef),e&&e._isSelected(this)&&e._syncButtonToggle(this,!1,!1,!0)}focus(e){this._buttonElement.nativeElement.focus(e)}_onButtonClick(){if(this.disabled)return;let e=this.isSingleSelector()?!0:!this._checked;if(e!==this._checked&&(this._checked=e,this.buttonToggleGroup&&(this.buttonToggleGroup._syncButtonToggle(this,this._checked,!0),this.buttonToggleGroup._onTouched())),this.isSingleSelector()){let i=this.buttonToggleGroup._buttonToggles.find(n=>n.tabIndex===0);i&&(i.tabIndex=-1),this.tabIndex=0}this.change.emit(new R6(this,this.value))}_markForCheck(){this._changeDetectorRef.markForCheck()}_getButtonName(){return this.isSingleSelector()?this.buttonToggleGroup.name:this.name||null}isSingleSelector(){return this.buttonToggleGroup&&!this.buttonToggleGroup.multiple}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-button-toggle"]],viewQuery:function(i,n){if(i&1&&$t(vIe,5),i&2){let o;cA(o=gA())&&(n._buttonElement=o.first)}},hostAttrs:["role","presentation",1,"mat-button-toggle"],hostVars:14,hostBindings:function(i,n){i&1&&U("focus",function(){return n.focus()}),i&2&&(aA("aria-label",null)("aria-labelledby",null)("id",n.id)("name",null),_e("mat-button-toggle-standalone",!n.buttonToggleGroup)("mat-button-toggle-checked",n.checked)("mat-button-toggle-disabled",n.disabled)("mat-button-toggle-disabled-interactive",n.disabledInteractive)("mat-button-toggle-appearance-standard",n.appearance==="standard"))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],id:"id",name:"name",value:"value",tabIndex:"tabIndex",disableRipple:[2,"disableRipple","disableRipple",mA],appearance:"appearance",checked:[2,"checked","checked",mA],disabled:[2,"disabled","disabled",mA],disabledInteractive:[2,"disabledInteractive","disabledInteractive",mA]},outputs:{change:"change"},exportAs:["matButtonToggle"],ngContentSelectors:DIe,decls:7,vars:13,consts:[["button",""],["type","button",1,"mat-button-toggle-button","mat-focus-indicator",3,"click","id","disabled"],[1,"mat-button-toggle-checkbox-wrapper"],[1,"mat-button-toggle-label-content"],[1,"mat-button-toggle-focus-overlay"],["matRipple","",1,"mat-button-toggle-ripple",3,"matRippleTrigger","matRippleDisabled"],["state","checked","aria-hidden","true","appearance","minimal",3,"disabled"]],template:function(i,n){if(i&1&&(Yt(),I(0,"button",1,0),U("click",function(){return n._onButtonClick()}),T(2,bIe,2,1,"div",2),I(3,"span",3),tt(4),h()(),le(5,"span",4)(6,"span",5)),i&2){let o=Ei(1);H("id",n.buttonId)("disabled",n.disabled&&!n.disabledInteractive||null),aA("role",n.isSingleSelector()?"radio":"button")("tabindex",n.disabled&&!n.disabledInteractive?-1:n.tabIndex)("aria-pressed",n.isSingleSelector()?null:n.checked)("aria-checked",n.isSingleSelector()?n.checked:null)("name",n._getButtonName())("aria-label",n.ariaLabel)("aria-labelledby",n.ariaLabelledby)("aria-disabled",n.disabled&&n.disabledInteractive?"true":null),Q(2),O(n.buttonToggleGroup&&(!n.buttonToggleGroup.multiple&&!n.buttonToggleGroup.hideSingleSelectionIndicator||n.buttonToggleGroup.multiple&&!n.buttonToggleGroup.hideMultipleSelectionIndicator)?2:-1),Q(4),H("matRippleTrigger",o)("matRippleDisabled",n.disableRipple||n.disabled)}},dependencies:[Es,x6],styles:[`.mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);border-radius:var(--mat-button-toggle-legacy-shape);transform:translateZ(0)}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}@media(forced-colors: active){.mat-button-toggle-standalone,.mat-button-toggle-group{outline:solid 1px}}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard .mat-pseudo-checkbox,.mat-button-toggle-group-appearance-standard .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-button-toggle-selected-state-text-color, var(--mat-sys-on-secondary-container))}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}@media(forced-colors: active){.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{outline:0}}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative;color:var(--mat-button-toggle-legacy-text-color);font-family:var(--mat-button-toggle-legacy-label-text-font);font-size:var(--mat-button-toggle-legacy-label-text-size);line-height:var(--mat-button-toggle-legacy-label-text-line-height);font-weight:var(--mat-button-toggle-legacy-label-text-weight);letter-spacing:var(--mat-button-toggle-legacy-label-text-tracking);--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-button-toggle-legacy-selected-state-text-color)}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-legacy-focus-state-layer-opacity)}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle-checkbox-wrapper{display:inline-block;justify-content:flex-start;align-items:center;width:0;height:18px;line-height:18px;overflow:hidden;box-sizing:border-box;position:absolute;top:50%;left:16px;transform:translate3d(0, -50%, 0)}[dir=rtl] .mat-button-toggle-checkbox-wrapper{left:auto;right:16px}.mat-button-toggle-appearance-standard .mat-button-toggle-checkbox-wrapper{left:12px}[dir=rtl] .mat-button-toggle-appearance-standard .mat-button-toggle-checkbox-wrapper{left:auto;right:12px}.mat-button-toggle-checked .mat-button-toggle-checkbox-wrapper{width:18px}.mat-button-toggle-animations-enabled .mat-button-toggle-checkbox-wrapper{transition:width 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-button-toggle-vertical .mat-button-toggle-checkbox-wrapper{transition:none}.mat-button-toggle-checked{color:var(--mat-button-toggle-legacy-selected-state-text-color);background-color:var(--mat-button-toggle-legacy-selected-state-background-color)}.mat-button-toggle-disabled{pointer-events:none;color:var(--mat-button-toggle-legacy-disabled-state-text-color);background-color:var(--mat-button-toggle-legacy-disabled-state-background-color);--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color: var(--mat-button-toggle-legacy-disabled-state-text-color)}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:var(--mat-button-toggle-legacy-disabled-selected-state-background-color)}.mat-button-toggle-disabled-interactive{pointer-events:auto}.mat-button-toggle-appearance-standard{color:var(--mat-button-toggle-text-color, var(--mat-sys-on-surface));background-color:var(--mat-button-toggle-background-color, transparent);font-family:var(--mat-button-toggle-label-text-font, var(--mat-sys-label-large-font));font-size:var(--mat-button-toggle-label-text-size, var(--mat-sys-label-large-size));line-height:var(--mat-button-toggle-label-text-line-height, var(--mat-sys-label-large-line-height));font-weight:var(--mat-button-toggle-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-button-toggle-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:none;border-top:solid 1px var(--mat-button-toggle-divider-color, var(--mat-sys-outline))}.mat-button-toggle-appearance-standard.mat-button-toggle-checked{color:var(--mat-button-toggle-selected-state-text-color, var(--mat-sys-on-secondary-container));background-color:var(--mat-button-toggle-selected-state-background-color, var(--mat-sys-secondary-container))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled{color:var(--mat-button-toggle-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-toggle-disabled-state-background-color, transparent)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-disabled-selected-checkmark-color: var(--mat-button-toggle-disabled-selected-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled.mat-button-toggle-checked{color:var(--mat-button-toggle-disabled-selected-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));background-color:var(--mat-button-toggle-disabled-selected-state-background-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:var(--mat-button-toggle-state-layer-color, var(--mat-sys-on-surface))}.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-button-toggle-appearance-standard.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-button-toggle-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}@media(hover: none){.mat-button-toggle-appearance-standard:hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;user-select:none;display:inline-block;padding:0 16px;line-height:var(--mat-button-toggle-legacy-height);position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px;line-height:var(--mat-button-toggle-height, 40px)}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;pointer-events:none;opacity:0;background-color:var(--mat-button-toggle-legacy-state-layer-color)}@media(forced-colors: active){.mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 500px;opacity:.5;height:0}.mat-button-toggle-checked:hover .mat-button-toggle-focus-overlay{opacity:.6}.mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-animations-enabled .mat-button-toggle-button{transition:padding 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-button-toggle-vertical .mat-button-toggle-button{transition:none}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}.mat-button-toggle-checked .mat-button-toggle-button:has(.mat-button-toggle-checkbox-wrapper){padding-left:30px}[dir=rtl] .mat-button-toggle-checked .mat-button-toggle-button:has(.mat-button-toggle-checkbox-wrapper){padding-left:0;padding-right:30px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{--mat-focus-indicator-border-radius: var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard:not(.mat-button-toggle-vertical) .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard:not(.mat-button-toggle-vertical) .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-bottom-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-bottom-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large));border-top-left-radius:var(--mat-button-toggle-shape, var(--mat-sys-corner-extra-large))} +`],encapsulation:2,changeDetection:0})}return t})(),bj=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[o0,N6,bi]})}return t})();var SIe=20,C0=(()=>{class t{_ngZone=w(At);_platform=w(pi);_renderer=w(Wr).createRenderer(null,null);_cleanupGlobalListener;constructor(){}_scrolled=new rA;_scrolledCount=0;scrollContainers=new Map;register(e){this.scrollContainers.has(e)||this.scrollContainers.set(e,e.elementScrolled().subscribe(()=>this._scrolled.next(e)))}deregister(e){let i=this.scrollContainers.get(e);i&&(i.unsubscribe(),this.scrollContainers.delete(e))}scrolled(e=SIe){return this._platform.isBrowser?new Li(i=>{this._cleanupGlobalListener||(this._cleanupGlobalListener=this._ngZone.runOutsideAngular(()=>this._renderer.listen("document","scroll",()=>this._scrolled.next())));let n=e>0?this._scrolled.pipe(tI(e)).subscribe(i):this._scrolled.subscribe(i);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||(this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0)}}):sA()}ngOnDestroy(){this._cleanupGlobalListener?.(),this._cleanupGlobalListener=void 0,this.scrollContainers.forEach((e,i)=>this.deregister(i)),this._scrolled.complete()}ancestorScrolled(e,i){let n=this.getAncestorScrollContainers(e);return this.scrolled(i).pipe(pt(o=>!o||n.indexOf(o)>-1))}getAncestorScrollContainers(e){let i=[];return this.scrollContainers.forEach((n,o)=>{this._scrollableContainsElement(o,e)&&i.push(o)}),i}_scrollableContainsElement(e,i){let n=Ls(i),o=e.getElementRef().nativeElement;do if(n==o)return!0;while(n=n.parentElement);return!1}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),dC=(()=>{class t{elementRef=w(dA);scrollDispatcher=w(C0);ngZone=w(At);dir=w(Fo,{optional:!0});_scrollElement=this.elementRef.nativeElement;_destroyed=new rA;_renderer=w(rn);_cleanupScroll;_elementScrolled=new rA;constructor(){}ngOnInit(){this._cleanupScroll=this.ngZone.runOutsideAngular(()=>this._renderer.listen(this._scrollElement,"scroll",e=>this._elementScrolled.next(e))),this.scrollDispatcher.register(this)}ngOnDestroy(){this._cleanupScroll?.(),this._elementScrolled.complete(),this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()}elementScrolled(){return this._elementScrolled}getElementRef(){return this.elementRef}scrollTo(e){let i=this.elementRef.nativeElement,n=this.dir&&this.dir.value=="rtl";e.left==null&&(e.left=n?e.end:e.start),e.right==null&&(e.right=n?e.start:e.end),e.bottom!=null&&(e.top=i.scrollHeight-i.clientHeight-e.bottom),n&&yB()!=Wc.NORMAL?(e.left!=null&&(e.right=i.scrollWidth-i.clientWidth-e.left),yB()==Wc.INVERTED?e.left=e.right:yB()==Wc.NEGATED&&(e.left=e.right?-e.right:e.right)):e.right!=null&&(e.left=i.scrollWidth-i.clientWidth-e.right),this._applyScrollToOptions(e)}_applyScrollToOptions(e){let i=this.elementRef.nativeElement;f3()?i.scrollTo(e):(e.top!=null&&(i.scrollTop=e.top),e.left!=null&&(i.scrollLeft=e.left))}measureScrollOffset(e){let i="left",n="right",o=this.elementRef.nativeElement;if(e=="top")return o.scrollTop;if(e=="bottom")return o.scrollHeight-o.clientHeight-o.scrollTop;let a=this.dir&&this.dir.value=="rtl";return e=="start"?e=a?n:i:e=="end"&&(e=a?i:n),a&&yB()==Wc.INVERTED?e==i?o.scrollWidth-o.clientWidth-o.scrollLeft:o.scrollLeft:a&&yB()==Wc.NEGATED?e==i?o.scrollLeft+o.scrollWidth-o.clientWidth:-o.scrollLeft:e==i?o.scrollLeft:o.scrollWidth-o.clientWidth-o.scrollLeft}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]})}return t})(),kIe=20,Ts=(()=>{class t{_platform=w(pi);_listeners;_viewportSize=null;_change=new rA;_document=w(Ii);constructor(){let e=w(At),i=w(Wr).createRenderer(null,null);e.runOutsideAngular(()=>{if(this._platform.isBrowser){let n=o=>this._change.next(o);this._listeners=[i.listen("window","resize",n),i.listen("window","orientationchange",n)]}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){this._listeners?.forEach(e=>e()),this._change.complete()}getViewportSize(){this._viewportSize||this._updateViewportSize();let e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}getViewportRect(){let e=this.getViewportScrollPosition(),{width:i,height:n}=this.getViewportSize();return{top:e.top,left:e.left,bottom:e.top+n,right:e.left+i,height:n,width:i}}getViewportScrollPosition(){if(!this._platform.isBrowser)return{top:0,left:0};let e=this._document,i=this._getWindow(),n=e.documentElement,o=n.getBoundingClientRect(),a=-o.top||e.body?.scrollTop||i.scrollY||n.scrollTop||0,r=-o.left||e.body?.scrollLeft||i.scrollX||n.scrollLeft||0;return{top:a,left:r}}change(e=kIe){return e>0?this._change.pipe(tI(e)):this._change}_getWindow(){return this._document.defaultView||window}_updateViewportSize(){let e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Mj=new Me("CDK_VIRTUAL_SCROLL_VIEWPORT");var g0=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({})}return t})(),F6=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi,g0,bi,g0]})}return t})();var lp=class{_attachedHost=null;attach(A){return this._attachedHost=A,A.attach(this)}detach(){let A=this._attachedHost;A!=null&&(this._attachedHost=null,A.detach())}get isAttached(){return this._attachedHost!=null}setAttachedHost(A){this._attachedHost=A}},Os=class extends lp{component;viewContainerRef;injector;projectableNodes;bindings;constructor(A,e,i,n,o){super(),this.component=A,this.viewContainerRef=e,this.injector=i,this.projectableNodes=n,this.bindings=o||null}},$r=class extends lp{templateRef;viewContainerRef;context;injector;constructor(A,e,i,n){super(),this.templateRef=A,this.viewContainerRef=e,this.context=i,this.injector=n}get origin(){return this.templateRef.elementRef}attach(A,e=this.context){return this.context=e,super.attach(A)}detach(){return this.context=void 0,super.detach()}},gS=class extends lp{element;constructor(A){super(),this.element=A instanceof dA?A.nativeElement:A}},Dd=class{_attachedPortal=null;_disposeFn=null;_isDisposed=!1;hasAttached(){return!!this._attachedPortal}attach(A){if(A instanceof Os)return this._attachedPortal=A,this.attachComponentPortal(A);if(A instanceof $r)return this._attachedPortal=A,this.attachTemplatePortal(A);if(this.attachDomPortal&&A instanceof gS)return this._attachedPortal=A,this.attachDomPortal(A)}attachDomPortal=null;detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(A){this._disposeFn=A}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}},cp=class extends Dd{outletElement;_appRef;_defaultInjector;constructor(A,e,i){super(),this.outletElement=A,this._appRef=e,this._defaultInjector=i}attachComponentPortal(A){let e;if(A.viewContainerRef){let i=A.injector||A.viewContainerRef.injector,n=i.get(H7,null,{optional:!0})||void 0;e=A.viewContainerRef.createComponent(A.component,{index:A.viewContainerRef.length,injector:i,ngModuleRef:n,projectableNodes:A.projectableNodes||void 0,bindings:A.bindings||void 0}),this.setDisposeFn(()=>e.destroy())}else{let i=this._appRef,n=A.injector||this._defaultInjector||Rt.NULL,o=n.get(Zr,i.injector);e=jf(A.component,{elementInjector:n,environmentInjector:o,projectableNodes:A.projectableNodes||void 0,bindings:A.bindings||void 0}),i.attachView(e.hostView),this.setDisposeFn(()=>{i.viewCount>0&&i.detachView(e.hostView),e.destroy()})}return this.outletElement.appendChild(this._getComponentRootNode(e)),this._attachedPortal=A,e}attachTemplatePortal(A){let e=A.viewContainerRef,i=e.createEmbeddedView(A.templateRef,A.context,{injector:A.injector});return i.rootNodes.forEach(n=>this.outletElement.appendChild(n)),i.detectChanges(),this.setDisposeFn(()=>{let n=e.indexOf(i);n!==-1&&e.remove(n)}),this._attachedPortal=A,i}attachDomPortal=A=>{let e=A.element;e.parentNode;let i=this.outletElement.ownerDocument.createComment("dom-portal");e.parentNode.insertBefore(i,e),this.outletElement.appendChild(e),this._attachedPortal=A,super.setDisposeFn(()=>{i.parentNode&&i.parentNode.replaceChild(e,i)})};dispose(){super.dispose(),this.outletElement.remove()}_getComponentRootNode(A){return A.hostView.rootNodes[0]}},Sj=(()=>{class t extends $r{constructor(){let e=w(yo),i=w(Yo);super(e,i)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[_t]})}return t})(),Bc=(()=>{class t extends Dd{_moduleRef=w(H7,{optional:!0});_document=w(Ii);_viewContainerRef=w(Yo);_isInitialized=!1;_attachedRef=null;constructor(){super()}get portal(){return this._attachedPortal}set portal(e){this.hasAttached()&&!e&&!this._isInitialized||(this.hasAttached()&&super.detach(),e&&super.attach(e),this._attachedPortal=e||null)}attached=new Le;get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedRef=this._attachedPortal=null}attachComponentPortal(e){e.setAttachedHost(this);let i=e.viewContainerRef!=null?e.viewContainerRef:this._viewContainerRef,n=i.createComponent(e.component,{index:i.length,injector:e.injector||i.injector,projectableNodes:e.projectableNodes||void 0,ngModuleRef:this._moduleRef||void 0,bindings:e.bindings||void 0});return i!==this._viewContainerRef&&this._getRootNode().appendChild(n.hostView.rootNodes[0]),super.setDisposeFn(()=>n.destroy()),this._attachedPortal=e,this._attachedRef=n,this.attached.emit(n),n}attachTemplatePortal(e){e.setAttachedHost(this);let i=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context,{injector:e.injector});return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=e,this._attachedRef=i,this.attached.emit(i),i}attachDomPortal=e=>{let i=e.element;i.parentNode;let n=this._document.createComment("dom-portal");e.setAttachedHost(this),i.parentNode.insertBefore(n,i),this._getRootNode().appendChild(i),this._attachedPortal=e,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(i,n)})};_getRootNode(){let e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:[0,"cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[_t]})}return t})(),d0=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({})}return t})();var kj=f3();function WB(t){return new L6(t.get(Ts),t.get(Ii))}var L6=class{_viewportRuler;_previousHTMLStyles={top:"",left:""};_previousScrollPosition;_isEnabled=!1;_document;constructor(A,e){this._viewportRuler=A,this._document=e}attach(){}enable(){if(this._canBeEnabled()){let A=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=A.style.left||"",this._previousHTMLStyles.top=A.style.top||"",A.style.left=tr(-this._previousScrollPosition.left),A.style.top=tr(-this._previousScrollPosition.top),A.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){let A=this._document.documentElement,e=this._document.body,i=A.style,n=e.style,o=i.scrollBehavior||"",a=n.scrollBehavior||"";this._isEnabled=!1,i.left=this._previousHTMLStyles.left,i.top=this._previousHTMLStyles.top,A.classList.remove("cdk-global-scrollblock"),kj&&(i.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),kj&&(i.scrollBehavior=o,n.scrollBehavior=a)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;let e=this._document.documentElement,i=this._viewportRuler.getViewportSize();return e.scrollHeight>i.height||e.scrollWidth>i.width}};function Gj(t,A){return new G6(t.get(C0),t.get(At),t.get(Ts),A)}var G6=class{_scrollDispatcher;_ngZone;_viewportRuler;_config;_scrollSubscription=null;_overlayRef;_initialScrollPosition;constructor(A,e,i,n){this._scrollDispatcher=A,this._ngZone=e,this._viewportRuler=i,this._config=n}attach(A){this._overlayRef,this._overlayRef=A}enable(){if(this._scrollSubscription)return;let A=this._scrollDispatcher.scrolled(0).pipe(pt(e=>!e||!this._overlayRef.overlayElement.contains(e.getElementRef().nativeElement)));this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=A.subscribe(()=>{let e=this._viewportRuler.getViewportScrollPosition().top;Math.abs(e-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=A.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}_detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}};var gp=class{enable(){}disable(){}attach(){}};function CS(t,A){return A.some(e=>{let i=t.bottome.bottom,o=t.righte.right;return i||n||o||a})}function _j(t,A){return A.some(e=>{let i=t.tope.bottom,o=t.lefte.right;return i||n||o||a})}function IC(t,A){return new K6(t.get(C0),t.get(Ts),t.get(At),A)}var K6=class{_scrollDispatcher;_viewportRuler;_ngZone;_config;_scrollSubscription=null;_overlayRef;constructor(A,e,i,n){this._scrollDispatcher=A,this._viewportRuler=e,this._ngZone=i,this._config=n}attach(A){this._overlayRef,this._overlayRef=A}enable(){if(!this._scrollSubscription){let A=this._config?this._config.scrollThrottle:0;this._scrollSubscription=this._scrollDispatcher.scrolled(A).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){let e=this._overlayRef.overlayElement.getBoundingClientRect(),{width:i,height:n}=this._viewportRuler.getViewportSize();CS(e,[{width:i,height:n,bottom:n,right:i,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}})}}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}},Kj=(()=>{class t{_injector=w(Rt);constructor(){}noop=()=>new gp;close=e=>Gj(this._injector,e);block=()=>WB(this._injector);reposition=e=>IC(this._injector,e);static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),og=class{positionStrategy;scrollStrategy=new gp;panelClass="";hasBackdrop=!1;backdropClass="cdk-overlay-dark-backdrop";disableAnimations;width;height;minWidth;minHeight;maxWidth;maxHeight;direction;disposeOnNavigation=!1;usePopover;eventPredicate;constructor(A){if(A){let e=Object.keys(A);for(let i of e)A[i]!==void 0&&(this[i]=A[i])}}};var U6=class{connectionPair;scrollableViewProperties;constructor(A,e){this.connectionPair=A,this.scrollableViewProperties=e}};var Uj=(()=>{class t{_attachedOverlays=[];_document=w(Ii);_isAttached=!1;constructor(){}ngOnDestroy(){this.detach()}add(e){this.remove(e),this._attachedOverlays.push(e)}remove(e){let i=this._attachedOverlays.indexOf(e);i>-1&&this._attachedOverlays.splice(i,1),this._attachedOverlays.length===0&&this.detach()}canReceiveEvent(e,i,n){return n.observers.length<1?!1:e.eventPredicate?e.eventPredicate(i):!0}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Tj=(()=>{class t extends Uj{_ngZone=w(At);_renderer=w(Wr).createRenderer(null,null);_cleanupKeydown;add(e){super.add(e),this._isAttached||(this._ngZone.runOutsideAngular(()=>{this._cleanupKeydown=this._renderer.listen("body","keydown",this._keydownListener)}),this._isAttached=!0)}detach(){this._isAttached&&(this._cleanupKeydown?.(),this._isAttached=!1)}_keydownListener=e=>{let i=this._attachedOverlays;for(let n=i.length-1;n>-1;n--){let o=i[n];if(this.canReceiveEvent(o,e,o._keydownEvents)){this._ngZone.run(()=>o._keydownEvents.next(e));break}}};static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Oj=(()=>{class t extends Uj{_platform=w(pi);_ngZone=w(At);_renderer=w(Wr).createRenderer(null,null);_cursorOriginalValue;_cursorStyleIsSet=!1;_pointerDownEventTarget=null;_cleanups;add(e){if(super.add(e),!this._isAttached){let i=this._document.body,n={capture:!0},o=this._renderer;this._cleanups=this._ngZone.runOutsideAngular(()=>[o.listen(i,"pointerdown",this._pointerDownListener,n),o.listen(i,"click",this._clickListener,n),o.listen(i,"auxclick",this._clickListener,n),o.listen(i,"contextmenu",this._clickListener,n)]),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=i.style.cursor,i.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){this._isAttached&&(this._cleanups?.forEach(e=>e()),this._cleanups=void 0,this._platform.IOS&&this._cursorStyleIsSet&&(this._document.body.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1)}_pointerDownListener=e=>{this._pointerDownEventTarget=Xr(e)};_clickListener=e=>{let i=Xr(e),n=e.type==="click"&&this._pointerDownEventTarget?this._pointerDownEventTarget:i;this._pointerDownEventTarget=null;let o=this._attachedOverlays.slice();for(let a=o.length-1;a>-1;a--){let r=o[a],s=r._outsidePointerEvents;if(!(!r.hasAttached()||!this.canReceiveEvent(r,e,s))){if(xj(r.overlayElement,i)||xj(r.overlayElement,n))break;this._ngZone?this._ngZone.run(()=>s.next(e)):s.next(e)}}};static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function xj(t,A){let e=typeof ShadowRoot<"u"&&ShadowRoot,i=A;for(;i;){if(i===t)return!0;i=e&&i instanceof ShadowRoot?i.host:i.parentNode}return!1}var Jj=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["ng-component"]],hostAttrs:["cdk-overlay-style-loader",""],decls:0,vars:0,template:function(i,n){},styles:[`.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed}@layer cdk-overlay{.cdk-overlay-container{z-index:1000}}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute}@layer cdk-overlay{.cdk-global-overlay-wrapper{z-index:1000}}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%}@layer cdk-overlay{.cdk-overlay-pane{z-index:1000}}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);opacity:0;touch-action:manipulation}@layer cdk-overlay{.cdk-overlay-backdrop{z-index:1000;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors: active){.cdk-overlay-backdrop-showing{opacity:.6}}@layer cdk-overlay{.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px}@layer cdk-overlay{.cdk-overlay-connected-position-bounding-box{z-index:1000}}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:auto;top:0;left:0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto} +`],encapsulation:2,changeDetection:0})}return t})(),J6=(()=>{class t{_platform=w(pi);_containerElement;_document=w(Ii);_styleLoader=w(Eo);constructor(){}ngOnDestroy(){this._containerElement?.remove()}getContainerElement(){return this._loadStyles(),this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let e="cdk-overlay-container";if(this._platform.isBrowser||xM()){let n=this._document.querySelectorAll(`.${e}[platform="server"], .${e}[platform="test"]`);for(let o=0;o{let A=this.element;clearTimeout(this._fallbackTimeout),this._cleanupTransitionEnd?.(),this._cleanupTransitionEnd=this._renderer.listen(A,"transitionend",this.dispose),this._fallbackTimeout=setTimeout(this.dispose,500),A.style.pointerEvents="none",A.classList.remove("cdk-overlay-backdrop-showing")})}dispose=()=>{clearTimeout(this._fallbackTimeout),this._cleanupClick?.(),this._cleanupTransitionEnd?.(),this._cleanupClick=this._cleanupTransitionEnd=this._fallbackTimeout=void 0,this.element.remove()}};function IS(t){return t&&t.nodeType===1}var qB=class{_portalOutlet;_host;_pane;_config;_ngZone;_keyboardDispatcher;_document;_location;_outsideClickDispatcher;_animationsDisabled;_injector;_renderer;_backdropClick=new rA;_attachments=new rA;_detachments=new rA;_positionStrategy;_scrollStrategy;_locationChanges=zo.EMPTY;_backdropRef=null;_detachContentMutationObserver;_detachContentAfterRenderRef;_disposed=!1;_previousHostParent;_keydownEvents=new rA;_outsidePointerEvents=new rA;_afterNextRenderRef;constructor(A,e,i,n,o,a,r,s,l,c=!1,C,d){this._portalOutlet=A,this._host=e,this._pane=i,this._config=n,this._ngZone=o,this._keyboardDispatcher=a,this._document=r,this._location=s,this._outsideClickDispatcher=l,this._animationsDisabled=c,this._injector=C,this._renderer=d,n.scrollStrategy&&(this._scrollStrategy=n.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=n.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropRef?.element||null}get hostElement(){return this._host}get eventPredicate(){return this._config?.eventPredicate||null}attach(A){if(this._disposed)return null;this._attachHost();let e=this._portalOutlet.attach(A);return this._positionStrategy?.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._afterNextRenderRef?.destroy(),this._afterNextRenderRef=ro(()=>{this.hasAttached()&&this.updatePosition()},{injector:this._injector}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._completeDetachContent(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),typeof e?.onDestroy=="function"&&e.onDestroy(()=>{this.hasAttached()&&this._ngZone.runOutsideAngular(()=>Promise.resolve().then(()=>this.detach()))}),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();let A=this._portalOutlet.detach();return this._detachments.next(),this._completeDetachContent(),this._keyboardDispatcher.remove(this),this._detachContentWhenEmpty(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),A}dispose(){if(this._disposed)return;let A=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this._backdropRef?.dispose(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host?.remove(),this._afterNextRenderRef?.destroy(),this._previousHostParent=this._pane=this._host=this._backdropRef=null,A&&this._detachments.next(),this._detachments.complete(),this._completeDetachContent(),this._disposed=!0}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(A){A!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=A,this.hasAttached()&&(A.attach(this),this.updatePosition()))}updateSize(A){this._config=Y(Y({},this._config),A),this._updateElementSize()}setDirection(A){this._config=Ye(Y({},this._config),{direction:A}),this._updateElementDirection()}addPanelClass(A){this._pane&&this._toggleClasses(this._pane,A,!0)}removePanelClass(A){this._pane&&this._toggleClasses(this._pane,A,!1)}getDirection(){let A=this._config.direction;return A?typeof A=="string"?A:A.value:"ltr"}updateScrollStrategy(A){A!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=A,this.hasAttached()&&(A.attach(this),A.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;let A=this._pane.style;A.width=tr(this._config.width),A.height=tr(this._config.height),A.minWidth=tr(this._config.minWidth),A.minHeight=tr(this._config.minHeight),A.maxWidth=tr(this._config.maxWidth),A.maxHeight=tr(this._config.maxHeight)}_togglePointerEvents(A){this._pane.style.pointerEvents=A?"":"none"}_attachHost(){if(!this._host.parentElement){let A=this._config.usePopover?this._positionStrategy?.getPopoverInsertionPoint?.():null;IS(A)?A.after(this._host):A?.type==="parent"?A.element.appendChild(this._host):this._previousHostParent?.appendChild(this._host)}if(this._config.usePopover)try{this._host.showPopover()}catch(A){}}_attachBackdrop(){let A="cdk-overlay-backdrop-showing";this._backdropRef?.dispose(),this._backdropRef=new dS(this._document,this._renderer,this._ngZone,e=>{this._backdropClick.next(e)}),this._animationsDisabled&&this._backdropRef.element.classList.add("cdk-overlay-backdrop-noop-animation"),this._config.backdropClass&&this._toggleClasses(this._backdropRef.element,this._config.backdropClass,!0),this._config.usePopover?this._host.prepend(this._backdropRef.element):this._host.parentElement.insertBefore(this._backdropRef.element,this._host),!this._animationsDisabled&&typeof requestAnimationFrame<"u"?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>this._backdropRef?.element.classList.add(A))}):this._backdropRef.element.classList.add(A)}_updateStackingOrder(){!this._config.usePopover&&this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){this._animationsDisabled?(this._backdropRef?.dispose(),this._backdropRef=null):this._backdropRef?.detach()}_toggleClasses(A,e,i){let n=pB(e||[]).filter(o=>!!o);n.length&&(i?A.classList.add(...n):A.classList.remove(...n))}_detachContentWhenEmpty(){let A=!1;try{this._detachContentAfterRenderRef=ro(()=>{A=!0,this._detachContent()},{injector:this._injector})}catch(e){if(A)throw e;this._detachContent()}globalThis.MutationObserver&&this._pane&&(this._detachContentMutationObserver||=new globalThis.MutationObserver(()=>{this._detachContent()}),this._detachContentMutationObserver.observe(this._pane,{childList:!0}))}_detachContent(){(!this._pane||!this._host||this._pane.children.length===0)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._host.remove()),this._completeDetachContent())}_completeDetachContent(){this._detachContentAfterRenderRef?.destroy(),this._detachContentAfterRenderRef=void 0,this._detachContentMutationObserver?.disconnect()}_disposeScrollStrategy(){let A=this._scrollStrategy;A?.disable(),A?.detach?.()}},Rj="cdk-overlay-connected-position-bounding-box",xIe=/([A-Za-z%]+)$/;function FI(t,A){return new T6(A,t.get(Ts),t.get(Ii),t.get(pi),t.get(J6))}var T6=class{_viewportRuler;_document;_platform;_overlayContainer;_overlayRef;_isInitialRender=!1;_lastBoundingBoxSize={width:0,height:0};_isPushed=!1;_canPush=!0;_growAfterOpen=!1;_hasFlexibleDimensions=!0;_positionLocked=!1;_originRect;_overlayRect;_viewportRect;_containerRect;_viewportMargin=0;_scrollables=[];_preferredPositions=[];_origin;_pane;_isDisposed=!1;_boundingBox=null;_lastPosition=null;_lastScrollVisibility=null;_positionChanges=new rA;_resizeSubscription=zo.EMPTY;_offsetX=0;_offsetY=0;_transformOriginSelector;_appliedPanelClasses=[];_previousPushAmount=null;_popoverLocation="global";positionChanges=this._positionChanges;get positions(){return this._preferredPositions}constructor(A,e,i,n,o){this._viewportRuler=e,this._document=i,this._platform=n,this._overlayContainer=o,this.setOrigin(A)}attach(A){this._overlayRef&&this._overlayRef,this._validatePositions(),A.hostElement.classList.add(Rj),this._overlayRef=A,this._boundingBox=A.hostElement,this._pane=A.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition){this.reapplyLastPosition();return}this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._containerRect=this._getContainerRect();let A=this._originRect,e=this._overlayRect,i=this._viewportRect,n=this._containerRect,o=[],a;for(let r of this._preferredPositions){let s=this._getOriginPoint(A,n,r),l=this._getOverlayPoint(s,e,r),c=this._getOverlayFit(l,e,i,r);if(c.isCompletelyWithinViewport){this._isPushed=!1,this._applyPosition(r,s);return}if(this._canFitWithFlexibleDimensions(c,l,i)){o.push({position:r,origin:s,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(s,r)});continue}(!a||a.overlayFit.visibleAreas&&(s=c,r=l)}this._isPushed=!1,this._applyPosition(r.position,r.origin);return}if(this._canPush){this._isPushed=!0,this._applyPosition(a.position,a.originPoint);return}this._applyPosition(a.position,a.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&NI(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Rj),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(this._isDisposed||!this._platform.isBrowser)return;let A=this._lastPosition;A?(this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect(),this._containerRect=this._getContainerRect(),this._applyPosition(A,this._getOriginPoint(this._originRect,this._containerRect,A))):this.apply()}withScrollableContainers(A){return this._scrollables=A,this}withPositions(A){return this._preferredPositions=A,A.indexOf(this._lastPosition)===-1&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(A){return this._viewportMargin=A,this}withFlexibleDimensions(A=!0){return this._hasFlexibleDimensions=A,this}withGrowAfterOpen(A=!0){return this._growAfterOpen=A,this}withPush(A=!0){return this._canPush=A,this}withLockedPosition(A=!0){return this._positionLocked=A,this}setOrigin(A){return this._origin=A,this}withDefaultOffsetX(A){return this._offsetX=A,this}withDefaultOffsetY(A){return this._offsetY=A,this}withTransformOriginOn(A){return this._transformOriginSelector=A,this}withPopoverLocation(A){return this._popoverLocation=A,this}getPopoverInsertionPoint(){return this._popoverLocation==="global"?null:this._popoverLocation!=="inline"?this._popoverLocation:this._origin instanceof dA?this._origin.nativeElement:IS(this._origin)?this._origin:null}_getOriginPoint(A,e,i){let n;if(i.originX=="center")n=A.left+A.width/2;else{let a=this._isRtl()?A.right:A.left,r=this._isRtl()?A.left:A.right;n=i.originX=="start"?a:r}e.left<0&&(n-=e.left);let o;return i.originY=="center"?o=A.top+A.height/2:o=i.originY=="top"?A.top:A.bottom,e.top<0&&(o-=e.top),{x:n,y:o}}_getOverlayPoint(A,e,i){let n;i.overlayX=="center"?n=-e.width/2:i.overlayX==="start"?n=this._isRtl()?-e.width:0:n=this._isRtl()?0:-e.width;let o;return i.overlayY=="center"?o=-e.height/2:o=i.overlayY=="top"?0:-e.height,{x:A.x+n,y:A.y+o}}_getOverlayFit(A,e,i,n){let o=Fj(e),{x:a,y:r}=A,s=this._getOffset(n,"x"),l=this._getOffset(n,"y");s&&(a+=s),l&&(r+=l);let c=0-a,C=a+o.width-i.width,d=0-r,B=r+o.height-i.height,E=this._subtractOverflows(o.width,c,C),u=this._subtractOverflows(o.height,d,B),m=E*u;return{visibleArea:m,isCompletelyWithinViewport:o.width*o.height===m,fitsInViewportVertically:u===o.height,fitsInViewportHorizontally:E==o.width}}_canFitWithFlexibleDimensions(A,e,i){if(this._hasFlexibleDimensions){let n=i.bottom-e.y,o=i.right-e.x,a=Nj(this._overlayRef.getConfig().minHeight),r=Nj(this._overlayRef.getConfig().minWidth),s=A.fitsInViewportVertically||a!=null&&a<=n,l=A.fitsInViewportHorizontally||r!=null&&r<=o;return s&&l}return!1}_pushOverlayOnScreen(A,e,i){if(this._previousPushAmount&&this._positionLocked)return{x:A.x+this._previousPushAmount.x,y:A.y+this._previousPushAmount.y};let n=Fj(e),o=this._viewportRect,a=Math.max(A.x+n.width-o.width,0),r=Math.max(A.y+n.height-o.height,0),s=Math.max(o.top-i.top-A.y,0),l=Math.max(o.left-i.left-A.x,0),c=0,C=0;return n.width<=o.width?c=l||-a:c=A.xE&&!this._isInitialRender&&!this._growAfterOpen&&(a=A.y-E/2)}let s=e.overlayX==="start"&&!n||e.overlayX==="end"&&n,l=e.overlayX==="end"&&!n||e.overlayX==="start"&&n,c,C,d;if(l)d=i.width-A.x+this._getViewportMarginStart()+this._getViewportMarginEnd(),c=A.x-this._getViewportMarginStart();else if(s)C=A.x,c=i.right-A.x-this._getViewportMarginEnd();else{let B=Math.min(i.right-A.x+i.left,A.x),E=this._lastBoundingBoxSize.width;c=B*2,C=A.x-B,c>E&&!this._isInitialRender&&!this._growAfterOpen&&(C=A.x-E/2)}return{top:a,left:C,bottom:r,right:d,width:c,height:o}}_setBoundingBoxStyles(A,e){let i=this._calculateBoundingBoxRect(A,e);!this._isInitialRender&&!this._growAfterOpen&&(i.height=Math.min(i.height,this._lastBoundingBoxSize.height),i.width=Math.min(i.width,this._lastBoundingBoxSize.width));let n={};if(this._hasExactPosition())n.top=n.left="0",n.bottom=n.right="auto",n.maxHeight=n.maxWidth="",n.width=n.height="100%";else{let o=this._overlayRef.getConfig().maxHeight,a=this._overlayRef.getConfig().maxWidth;n.width=tr(i.width),n.height=tr(i.height),n.top=tr(i.top)||"auto",n.bottom=tr(i.bottom)||"auto",n.left=tr(i.left)||"auto",n.right=tr(i.right)||"auto",e.overlayX==="center"?n.alignItems="center":n.alignItems=e.overlayX==="end"?"flex-end":"flex-start",e.overlayY==="center"?n.justifyContent="center":n.justifyContent=e.overlayY==="bottom"?"flex-end":"flex-start",o&&(n.maxHeight=tr(o)),a&&(n.maxWidth=tr(a))}this._lastBoundingBoxSize=i,NI(this._boundingBox.style,n)}_resetBoundingBoxStyles(){NI(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){NI(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(A,e){let i={},n=this._hasExactPosition(),o=this._hasFlexibleDimensions,a=this._overlayRef.getConfig();if(n){let c=this._viewportRuler.getViewportScrollPosition();NI(i,this._getExactOverlayY(e,A,c)),NI(i,this._getExactOverlayX(e,A,c))}else i.position="static";let r="",s=this._getOffset(e,"x"),l=this._getOffset(e,"y");s&&(r+=`translateX(${s}px) `),l&&(r+=`translateY(${l}px)`),i.transform=r.trim(),a.maxHeight&&(n?i.maxHeight=tr(a.maxHeight):o&&(i.maxHeight="")),a.maxWidth&&(n?i.maxWidth=tr(a.maxWidth):o&&(i.maxWidth="")),NI(this._pane.style,i)}_getExactOverlayY(A,e,i){let n={top:"",bottom:""},o=this._getOverlayPoint(e,this._overlayRect,A);if(this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,i)),A.overlayY==="bottom"){let a=this._document.documentElement.clientHeight;n.bottom=`${a-(o.y+this._overlayRect.height)}px`}else n.top=tr(o.y);return n}_getExactOverlayX(A,e,i){let n={left:"",right:""},o=this._getOverlayPoint(e,this._overlayRect,A);this._isPushed&&(o=this._pushOverlayOnScreen(o,this._overlayRect,i));let a;if(this._isRtl()?a=A.overlayX==="end"?"left":"right":a=A.overlayX==="end"?"right":"left",a==="right"){let r=this._document.documentElement.clientWidth;n.right=`${r-(o.x+this._overlayRect.width)}px`}else n.left=tr(o.x);return n}_getScrollVisibility(){let A=this._getOriginRect(),e=this._pane.getBoundingClientRect(),i=this._scrollables.map(n=>n.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:_j(A,i),isOriginOutsideView:CS(A,i),isOverlayClipped:_j(e,i),isOverlayOutsideView:CS(e,i)}}_subtractOverflows(A,...e){return e.reduce((i,n)=>i-Math.max(n,0),A)}_getNarrowedViewportRect(){let A=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,i=this._viewportRuler.getViewportScrollPosition();return{top:i.top+this._getViewportMarginTop(),left:i.left+this._getViewportMarginStart(),right:i.left+A-this._getViewportMarginEnd(),bottom:i.top+e-this._getViewportMarginBottom(),width:A-this._getViewportMarginStart()-this._getViewportMarginEnd(),height:e-this._getViewportMarginTop()-this._getViewportMarginBottom()}}_isRtl(){return this._overlayRef.getDirection()==="rtl"}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(A,e){return e==="x"?A.offsetX==null?this._offsetX:A.offsetX:A.offsetY==null?this._offsetY:A.offsetY}_validatePositions(){}_addPanelClasses(A){this._pane&&pB(A).forEach(e=>{e!==""&&this._appliedPanelClasses.indexOf(e)===-1&&(this._appliedPanelClasses.push(e),this._pane.classList.add(e))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(A=>{this._pane.classList.remove(A)}),this._appliedPanelClasses=[])}_getViewportMarginStart(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.start??0}_getViewportMarginEnd(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.end??0}_getViewportMarginTop(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.top??0}_getViewportMarginBottom(){return typeof this._viewportMargin=="number"?this._viewportMargin:this._viewportMargin?.bottom??0}_getOriginRect(){let A=this._origin;if(A instanceof dA)return A.nativeElement.getBoundingClientRect();if(A instanceof Element)return A.getBoundingClientRect();let e=A.width||0,i=A.height||0;return{top:A.y,bottom:A.y+i,left:A.x,right:A.x+e,height:i,width:e}}_getContainerRect(){let A=this._overlayRef.getConfig().usePopover&&this._popoverLocation!=="global",e=this._overlayContainer.getContainerElement();A&&(e.style.display="block");let i=e.getBoundingClientRect();return A&&(e.style.display=""),i}};function NI(t,A){for(let e in A)A.hasOwnProperty(e)&&(t[e]=A[e]);return t}function Nj(t){if(typeof t!="number"&&t!=null){let[A,e]=t.split(xIe);return!e||e==="px"?parseFloat(A):null}return t||null}function Fj(t){return{top:Math.floor(t.top),right:Math.floor(t.right),bottom:Math.floor(t.bottom),left:Math.floor(t.left),width:Math.floor(t.width),height:Math.floor(t.height)}}function RIe(t,A){return t===A?!0:t.isOriginClipped===A.isOriginClipped&&t.isOriginOutsideView===A.isOriginOutsideView&&t.isOverlayClipped===A.isOverlayClipped&&t.isOverlayOutsideView===A.isOverlayOutsideView}var Lj="cdk-global-overlay-wrapper";function bd(t){return new O6}var O6=class{_overlayRef;_cssPosition="static";_topOffset="";_bottomOffset="";_alignItems="";_xPosition="";_xOffset="";_width="";_height="";_isDisposed=!1;attach(A){let e=A.getConfig();this._overlayRef=A,this._width&&!e.width&&A.updateSize({width:this._width}),this._height&&!e.height&&A.updateSize({height:this._height}),A.hostElement.classList.add(Lj),this._isDisposed=!1}top(A=""){return this._bottomOffset="",this._topOffset=A,this._alignItems="flex-start",this}left(A=""){return this._xOffset=A,this._xPosition="left",this}bottom(A=""){return this._topOffset="",this._bottomOffset=A,this._alignItems="flex-end",this}right(A=""){return this._xOffset=A,this._xPosition="right",this}start(A=""){return this._xOffset=A,this._xPosition="start",this}end(A=""){return this._xOffset=A,this._xPosition="end",this}width(A=""){return this._overlayRef?this._overlayRef.updateSize({width:A}):this._width=A,this}height(A=""){return this._overlayRef?this._overlayRef.updateSize({height:A}):this._height=A,this}centerHorizontally(A=""){return this.left(A),this._xPosition="center",this}centerVertically(A=""){return this.top(A),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;let A=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,i=this._overlayRef.getConfig(),{width:n,height:o,maxWidth:a,maxHeight:r}=i,s=(n==="100%"||n==="100vw")&&(!a||a==="100%"||a==="100vw"),l=(o==="100%"||o==="100vh")&&(!r||r==="100%"||r==="100vh"),c=this._xPosition,C=this._xOffset,d=this._overlayRef.getConfig().direction==="rtl",B="",E="",u="";s?u="flex-start":c==="center"?(u="center",d?E=C:B=C):d?c==="left"||c==="end"?(u="flex-end",B=C):(c==="right"||c==="start")&&(u="flex-start",E=C):c==="left"||c==="start"?(u="flex-start",B=C):(c==="right"||c==="end")&&(u="flex-end",E=C),A.position=this._cssPosition,A.marginLeft=s?"0":B,A.marginTop=l?"0":this._topOffset,A.marginBottom=this._bottomOffset,A.marginRight=s?"0":E,e.justifyContent=u,e.alignItems=l?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;let A=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,i=e.style;e.classList.remove(Lj),i.justifyContent=i.alignItems=A.marginTop=A.marginBottom=A.marginLeft=A.marginRight=A.position="",this._overlayRef=null,this._isDisposed=!0}},z6=(()=>{class t{_injector=w(Rt);constructor(){}global(){return bd()}flexibleConnectedTo(e){return FI(this._injector,e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Cp=new Me("OVERLAY_DEFAULT_CONFIG");function rg(t,A){t.get(Eo).load(Jj);let e=t.get(J6),i=t.get(Ii),n=t.get(bn),o=t.get(AC),a=t.get(Fo),r=t.get(rn,null,{optional:!0})||t.get(Wr).createRenderer(null,null),s=new og(A),l=t.get(Cp,null,{optional:!0})?.usePopover??!0;s.direction=s.direction||a.value,"showPopover"in i.body?s.usePopover=A?.usePopover??l:s.usePopover=!1;let c=i.createElement("div"),C=i.createElement("div");c.id=n.getId("cdk-overlay-"),c.classList.add("cdk-overlay-pane"),C.appendChild(c),s.usePopover&&(C.setAttribute("popover","manual"),C.classList.add("cdk-overlay-popover"));let d=s.usePopover?s.positionStrategy?.getPopoverInsertionPoint?.():null;return IS(d)?d.after(C):d?.type==="parent"?d.element.appendChild(C):e.getContainerElement().appendChild(C),new qB(new cp(c,o,t),C,c,s,t.get(At),t.get(Tj),i,t.get(e0),t.get(Oj),A?.disableAnimations??t.get(iI,null,{optional:!0})==="NoopAnimations",t.get(Zr),r)}var LI=(()=>{class t{scrollStrategies=w(Kj);_positionBuilder=w(z6);_injector=w(Rt);constructor(){}create(e){return rg(this._injector,e)}position(){return this._positionBuilder}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),NIe=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],FIe=new Me("cdk-connected-overlay-scroll-strategy",{providedIn:"root",factory:()=>{let t=w(Rt);return()=>IC(t)}}),ZB=(()=>{class t{elementRef=w(dA);constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]})}return t})(),zj=new Me("cdk-connected-overlay-default-config"),Y6=(()=>{class t{_dir=w(Fo,{optional:!0});_injector=w(Rt);_overlayRef;_templatePortal;_backdropSubscription=zo.EMPTY;_attachSubscription=zo.EMPTY;_detachSubscription=zo.EMPTY;_positionSubscription=zo.EMPTY;_offsetX;_offsetY;_position;_scrollStrategyFactory=w(FIe);_ngZone=w(At);origin;positions;positionStrategy;get offsetX(){return this._offsetX}set offsetX(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}width;height;minWidth;minHeight;backdropClass;panelClass;viewportMargin=0;scrollStrategy;open=!1;disableClose=!1;transformOriginSelector;hasBackdrop=!1;lockPosition=!1;flexibleDimensions=!1;growAfterOpen=!1;push=!1;disposeOnNavigation=!1;usePopover;matchWidth=!1;set _config(e){typeof e!="string"&&this._assignConfig(e)}backdropClick=new Le;positionChange=new Le;attach=new Le;detach=new Le;overlayKeydown=new Le;overlayOutsideClick=new Le;constructor(){let e=w(yo),i=w(Yo),n=w(zj,{optional:!0}),o=w(Cp,{optional:!0});this.usePopover=o?.usePopover===!1?null:"global",this._templatePortal=new $r(e,i),this.scrollStrategy=this._scrollStrategyFactory(),n&&this._assignConfig(n)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef?.dispose()}ngOnChanges(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef?.updateSize({width:this._getWidth(),minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this.attachOverlay():this.detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=NIe);let e=this._overlayRef=rg(this._injector,this._buildConfig());this._attachSubscription=e.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=e.detachments().subscribe(()=>this.detach.emit()),e.keydownEvents().subscribe(i=>{this.overlayKeydown.next(i),i.keyCode===27&&!this.disableClose&&!Na(i)&&(i.preventDefault(),this.detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(i=>{let n=this._getOriginElement(),o=Xr(i);(!n||n!==o&&!n.contains(o))&&this.overlayOutsideClick.next(i)})}_buildConfig(){let e=this._position=this.positionStrategy||this._createPositionStrategy(),i=new og({direction:this._dir||"ltr",positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop,disposeOnNavigation:this.disposeOnNavigation,usePopover:!!this.usePopover});return(this.height||this.height===0)&&(i.height=this.height),(this.minWidth||this.minWidth===0)&&(i.minWidth=this.minWidth),(this.minHeight||this.minHeight===0)&&(i.minHeight=this.minHeight),this.backdropClass&&(i.backdropClass=this.backdropClass),this.panelClass&&(i.panelClass=this.panelClass),i}_updatePositionStrategy(e){let i=this.positions.map(n=>({originX:n.originX,originY:n.originY,overlayX:n.overlayX,overlayY:n.overlayY,offsetX:n.offsetX||this.offsetX,offsetY:n.offsetY||this.offsetY,panelClass:n.panelClass||void 0}));return e.setOrigin(this._getOrigin()).withPositions(i).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector).withPopoverLocation(this.usePopover===null?"global":this.usePopover)}_createPositionStrategy(){let e=FI(this._injector,this._getOrigin());return this._updatePositionStrategy(e),e}_getOrigin(){return this.origin instanceof ZB?this.origin.elementRef:this.origin}_getOriginElement(){return this.origin instanceof ZB?this.origin.elementRef.nativeElement:this.origin instanceof dA?this.origin.nativeElement:typeof Element<"u"&&this.origin instanceof Element?this.origin:null}_getWidth(){return this.width?this.width:this.matchWidth?this._getOriginElement()?.getBoundingClientRect?.().width:void 0}attachOverlay(){this._overlayRef||this._createOverlay();let e=this._overlayRef;e.getConfig().hasBackdrop=this.hasBackdrop,e.updateSize({width:this._getWidth()}),e.hasAttached()||e.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=e.backdropClick().subscribe(i=>this.backdropClick.emit(i)):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(dJ(()=>this.positionChange.observers.length>0)).subscribe(i=>{this._ngZone.run(()=>this.positionChange.emit(i)),this.positionChange.observers.length===0&&this._positionSubscription.unsubscribe()})),this.open=!0}detachOverlay(){this._overlayRef?.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.open=!1}_assignConfig(e){this.origin=e.origin??this.origin,this.positions=e.positions??this.positions,this.positionStrategy=e.positionStrategy??this.positionStrategy,this.offsetX=e.offsetX??this.offsetX,this.offsetY=e.offsetY??this.offsetY,this.width=e.width??this.width,this.height=e.height??this.height,this.minWidth=e.minWidth??this.minWidth,this.minHeight=e.minHeight??this.minHeight,this.backdropClass=e.backdropClass??this.backdropClass,this.panelClass=e.panelClass??this.panelClass,this.viewportMargin=e.viewportMargin??this.viewportMargin,this.scrollStrategy=e.scrollStrategy??this.scrollStrategy,this.disableClose=e.disableClose??this.disableClose,this.transformOriginSelector=e.transformOriginSelector??this.transformOriginSelector,this.hasBackdrop=e.hasBackdrop??this.hasBackdrop,this.lockPosition=e.lockPosition??this.lockPosition,this.flexibleDimensions=e.flexibleDimensions??this.flexibleDimensions,this.growAfterOpen=e.growAfterOpen??this.growAfterOpen,this.push=e.push??this.push,this.disposeOnNavigation=e.disposeOnNavigation??this.disposeOnNavigation,this.usePopover=e.usePopover??this.usePopover,this.matchWidth=e.matchWidth??this.matchWidth}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{origin:[0,"cdkConnectedOverlayOrigin","origin"],positions:[0,"cdkConnectedOverlayPositions","positions"],positionStrategy:[0,"cdkConnectedOverlayPositionStrategy","positionStrategy"],offsetX:[0,"cdkConnectedOverlayOffsetX","offsetX"],offsetY:[0,"cdkConnectedOverlayOffsetY","offsetY"],width:[0,"cdkConnectedOverlayWidth","width"],height:[0,"cdkConnectedOverlayHeight","height"],minWidth:[0,"cdkConnectedOverlayMinWidth","minWidth"],minHeight:[0,"cdkConnectedOverlayMinHeight","minHeight"],backdropClass:[0,"cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:[0,"cdkConnectedOverlayPanelClass","panelClass"],viewportMargin:[0,"cdkConnectedOverlayViewportMargin","viewportMargin"],scrollStrategy:[0,"cdkConnectedOverlayScrollStrategy","scrollStrategy"],open:[0,"cdkConnectedOverlayOpen","open"],disableClose:[0,"cdkConnectedOverlayDisableClose","disableClose"],transformOriginSelector:[0,"cdkConnectedOverlayTransformOriginOn","transformOriginSelector"],hasBackdrop:[2,"cdkConnectedOverlayHasBackdrop","hasBackdrop",mA],lockPosition:[2,"cdkConnectedOverlayLockPosition","lockPosition",mA],flexibleDimensions:[2,"cdkConnectedOverlayFlexibleDimensions","flexibleDimensions",mA],growAfterOpen:[2,"cdkConnectedOverlayGrowAfterOpen","growAfterOpen",mA],push:[2,"cdkConnectedOverlayPush","push",mA],disposeOnNavigation:[2,"cdkConnectedOverlayDisposeOnNavigation","disposeOnNavigation",mA],usePopover:[0,"cdkConnectedOverlayUsePopover","usePopover"],matchWidth:[2,"cdkConnectedOverlayMatchWidth","matchWidth",mA],_config:[0,"cdkConnectedOverlay","_config"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[ai]})}return t})(),hc=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({providers:[LI],imports:[bi,d0,F6,F6]})}return t})();function LIe(t,A){}var Md=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;positionStrategy;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;scrollStrategy;closeOnNavigation=!0;closeOnDestroy=!0;closeOnOverlayDetachments=!0;disableAnimations=!1;providers;container;templateContext};var hS=(()=>{class t extends Dd{_elementRef=w(dA);_focusTrapFactory=w(fQ);_config;_interactivityChecker=w(fB);_ngZone=w(At);_focusMonitor=w(dr);_renderer=w(rn);_changeDetectorRef=w(xt);_injector=w(Rt);_platform=w(pi);_document=w(Ii);_portalOutlet;_focusTrapped=new rA;_focusTrap=null;_elementFocusedBeforeDialogWasOpened=null;_closeInteractionType=null;_ariaLabelledByQueue=[];_isDestroyed=!1;constructor(){super(),this._config=w(Md,{optional:!0})||new Md,this._config.ariaLabelledBy&&this._ariaLabelledByQueue.push(this._config.ariaLabelledBy)}_addAriaLabelledBy(e){this._ariaLabelledByQueue.push(e),this._changeDetectorRef.markForCheck()}_removeAriaLabelledBy(e){let i=this._ariaLabelledByQueue.indexOf(e);i>-1&&(this._ariaLabelledByQueue.splice(i,1),this._changeDetectorRef.markForCheck())}_contentAttached(){this._initializeFocusTrap(),this._captureInitialFocus()}_captureInitialFocus(){this._trapFocus()}ngOnDestroy(){this._focusTrapped.complete(),this._isDestroyed=!0,this._restoreFocus()}attachComponentPortal(e){this._portalOutlet.hasAttached();let i=this._portalOutlet.attachComponentPortal(e);return this._contentAttached(),i}attachTemplatePortal(e){this._portalOutlet.hasAttached();let i=this._portalOutlet.attachTemplatePortal(e);return this._contentAttached(),i}attachDomPortal=e=>{this._portalOutlet.hasAttached();let i=this._portalOutlet.attachDomPortal(e);return this._contentAttached(),i};_recaptureFocus(){this._containsFocus()||this._trapFocus()}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let n=()=>{o(),a(),e.removeAttribute("tabindex")},o=this._renderer.listen(e,"blur",n),a=this._renderer.listen(e,"mousedown",n)})),e.focus(i)}_focusByCssSelector(e,i){let n=this._elementRef.nativeElement.querySelector(e);n&&this._forceFocus(n,i)}_trapFocus(e){this._isDestroyed||ro(()=>{let i=this._elementRef.nativeElement;switch(this._config.autoFocus){case!1:case"dialog":this._containsFocus()||i.focus(e);break;case!0:case"first-tabbable":this._focusTrap?.focusInitialElement(e)||this._focusDialogContainer(e);break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]',e);break;default:this._focusByCssSelector(this._config.autoFocus,e);break}this._focusTrapped.next()},{injector:this._injector})}_restoreFocus(){let e=this._config.restoreFocus,i=null;if(typeof e=="string"?i=this._document.querySelector(e):typeof e=="boolean"?i=e?this._elementFocusedBeforeDialogWasOpened:null:e&&(i=e),this._config.restoreFocus&&i&&typeof i.focus=="function"){let n=EQ(),o=this._elementRef.nativeElement;(!n||n===this._document.body||n===o||o.contains(n))&&(this._focusMonitor?(this._focusMonitor.focusVia(i,this._closeInteractionType),this._closeInteractionType=null):i.focus())}this._focusTrap&&this._focusTrap.destroy()}_focusDialogContainer(e){this._elementRef.nativeElement.focus?.(e)}_containsFocus(){let e=this._elementRef.nativeElement,i=EQ();return e===i||e.contains(i)}_initializeFocusTrap(){this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._document&&(this._elementFocusedBeforeDialogWasOpened=EQ()))}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["cdk-dialog-container"]],viewQuery:function(i,n){if(i&1&&$t(Bc,7),i&2){let o;cA(o=gA())&&(n._portalOutlet=o.first)}},hostAttrs:["tabindex","-1",1,"cdk-dialog-container"],hostVars:6,hostBindings:function(i,n){i&2&&aA("id",n._config.id||null)("role",n._config.role)("aria-modal",n._config.ariaModal)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null)},features:[_t],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(i,n){i&1&&Nt(0,LIe,0,0,"ng-template",0)},dependencies:[Bc],styles:[`.cdk-dialog-container{display:block;width:100%;height:100%;min-height:inherit;max-height:inherit} +`],encapsulation:2})}return t})(),dp=class{overlayRef;config;componentInstance=null;componentRef=null;containerInstance;disableClose;closed=new rA;backdropClick;keydownEvents;outsidePointerEvents;id;_detachSubscription;constructor(A,e){this.overlayRef=A,this.config=e,this.disableClose=e.disableClose,this.backdropClick=A.backdropClick(),this.keydownEvents=A.keydownEvents(),this.outsidePointerEvents=A.outsidePointerEvents(),this.id=e.id,this.keydownEvents.subscribe(i=>{i.keyCode===27&&!this.disableClose&&!Na(i)&&(i.preventDefault(),this.close(void 0,{focusOrigin:"keyboard"}))}),this.backdropClick.subscribe(()=>{!this.disableClose&&this._canClose()?this.close(void 0,{focusOrigin:"mouse"}):this.containerInstance._recaptureFocus?.()}),this._detachSubscription=A.detachments().subscribe(()=>{e.closeOnOverlayDetachments!==!1&&this.close()})}close(A,e){if(this._canClose(A)){let i=this.closed;this.containerInstance._closeInteractionType=e?.focusOrigin||"program",this._detachSubscription.unsubscribe(),this.overlayRef.dispose(),i.next(A),i.complete(),this.componentInstance=this.containerInstance=null}}updatePosition(){return this.overlayRef.updatePosition(),this}updateSize(A="",e=""){return this.overlayRef.updateSize({width:A,height:e}),this}addPanelClass(A){return this.overlayRef.addPanelClass(A),this}removePanelClass(A){return this.overlayRef.removePanelClass(A),this}_canClose(A){let e=this.config;return!!this.containerInstance&&(!e.closePredicate||e.closePredicate(A,e,this.componentInstance))}},GIe=new Me("DialogScrollStrategy",{providedIn:"root",factory:()=>{let t=w(Rt);return()=>WB(t)}}),KIe=new Me("DialogData"),UIe=new Me("DefaultDialogConfig");function TIe(t){let A=fe(t),e=new Le;return{valueSignal:A,get value(){return A()},change:e,ngOnDestroy(){e.complete()}}}var uS=(()=>{class t{_injector=w(Rt);_defaultOptions=w(UIe,{optional:!0});_parentDialog=w(t,{optional:!0,skipSelf:!0});_overlayContainer=w(J6);_idGenerator=w(bn);_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new rA;_afterOpenedAtThisLevel=new rA;_ariaHiddenElements=new Map;_scrollStrategy=w(GIe);get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}afterAllClosed=Zg(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Yn(void 0)));constructor(){}open(e,i){let n=this._defaultOptions||new Md;i=Y(Y({},n),i),i.id=i.id||this._idGenerator.getId("cdk-dialog-"),i.id&&this.getDialogById(i.id);let o=this._getOverlayConfig(i),a=rg(this._injector,o),r=new dp(a,i),s=this._attachContainer(a,r,i);if(r.containerInstance=s,!this.openDialogs.length){let l=this._overlayContainer.getContainerElement();s._focusTrapped?s._focusTrapped.pipe(No(1)).subscribe(()=>{this._hideNonDialogContentFromAssistiveTechnology(l)}):this._hideNonDialogContentFromAssistiveTechnology(l)}return this._attachDialogContent(e,r,s,i),this.openDialogs.push(r),r.closed.subscribe(()=>this._removeOpenDialog(r,!0)),this.afterOpened.next(r),r}closeAll(){BS(this.openDialogs,e=>e.close())}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){BS(this._openDialogsAtThisLevel,e=>{e.config.closeOnDestroy===!1&&this._removeOpenDialog(e,!1)}),BS(this._openDialogsAtThisLevel,e=>e.close()),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete(),this._openDialogsAtThisLevel=[]}_getOverlayConfig(e){let i=new og({positionStrategy:e.positionStrategy||bd().centerHorizontally().centerVertically(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,width:e.width,height:e.height,disposeOnNavigation:e.closeOnNavigation,disableAnimations:e.disableAnimations});return e.backdropClass&&(i.backdropClass=e.backdropClass),i}_attachContainer(e,i,n){let o=n.injector||n.viewContainerRef?.injector,a=[{provide:Md,useValue:n},{provide:dp,useValue:i},{provide:qB,useValue:e}],r;n.container?typeof n.container=="function"?r=n.container:(r=n.container.type,a.push(...n.container.providers(n))):r=hS;let s=new Os(r,n.viewContainerRef,Rt.create({parent:o||this._injector,providers:a}));return e.attach(s).instance}_attachDialogContent(e,i,n,o){if(e instanceof yo){let a=this._createInjector(o,i,n,void 0),r={$implicit:o.data,dialogRef:i};o.templateContext&&(r=Y(Y({},r),typeof o.templateContext=="function"?o.templateContext():o.templateContext)),n.attachTemplatePortal(new $r(e,null,r,a))}else{let a=this._createInjector(o,i,n,this._injector),r=n.attachComponentPortal(new Os(e,o.viewContainerRef,a));i.componentRef=r,i.componentInstance=r.instance}}_createInjector(e,i,n,o){let a=e.injector||e.viewContainerRef?.injector,r=[{provide:KIe,useValue:e.data},{provide:dp,useValue:i}];return e.providers&&(typeof e.providers=="function"?r.push(...e.providers(i,e,n)):r.push(...e.providers)),e.direction&&(!a||!a.get(Fo,null,{optional:!0}))&&r.push({provide:Fo,useValue:TIe(e.direction)}),Rt.create({parent:a||o,providers:r})}_removeOpenDialog(e,i){let n=this.openDialogs.indexOf(e);n>-1&&(this.openDialogs.splice(n,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((o,a)=>{o?a.setAttribute("aria-hidden",o):a.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),i&&this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(e){if(e.parentElement){let i=e.parentElement.children;for(let n=i.length-1;n>-1;n--){let o=i[n];o!==e&&o.nodeName!=="SCRIPT"&&o.nodeName!=="STYLE"&&!o.hasAttribute("aria-live")&&!o.hasAttribute("popover")&&(this._ariaHiddenElements.set(o,o.getAttribute("aria-hidden")),o.setAttribute("aria-hidden","true"))}}}_getAfterAllClosed(){let e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function BS(t,A){let e=t.length;for(;e--;)A(t[e])}var Yj=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({providers:[uS],imports:[hc,d0,yQ,d0]})}return t})();function OIe(t,A){}var P6=class{viewContainerRef;injector;id;role="dialog";panelClass="";hasBackdrop=!0;backdropClass="";disableClose=!1;closePredicate;width="";height="";minWidth;minHeight;maxWidth;maxHeight;position;data=null;direction;ariaDescribedBy=null;ariaLabelledBy=null;ariaLabel=null;ariaModal=!1;autoFocus="first-tabbable";restoreFocus=!0;delayFocusTrap=!0;scrollStrategy;closeOnNavigation=!0;enterAnimationDuration;exitAnimationDuration},ES="mdc-dialog--open",Hj="mdc-dialog--opening",Pj="mdc-dialog--closing",JIe=150,zIe=75,YIe=(()=>{class t extends hS{_animationStateChanged=new Le;_animationsEnabled=!hn();_actionSectionCount=0;_hostElement=this._elementRef.nativeElement;_enterAnimationDuration=this._animationsEnabled?Vj(this._config.enterAnimationDuration)??JIe:0;_exitAnimationDuration=this._animationsEnabled?Vj(this._config.exitAnimationDuration)??zIe:0;_animationTimer=null;_contentAttached(){super._contentAttached(),this._startOpenAnimation()}_startOpenAnimation(){this._animationStateChanged.emit({state:"opening",totalTime:this._enterAnimationDuration}),this._animationsEnabled?(this._hostElement.style.setProperty(jj,`${this._enterAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Hj,ES)),this._waitForAnimationToComplete(this._enterAnimationDuration,this._finishDialogOpen)):(this._hostElement.classList.add(ES),Promise.resolve().then(()=>this._finishDialogOpen()))}_startExitAnimation(){this._animationStateChanged.emit({state:"closing",totalTime:this._exitAnimationDuration}),this._hostElement.classList.remove(ES),this._animationsEnabled?(this._hostElement.style.setProperty(jj,`${this._exitAnimationDuration}ms`),this._requestAnimationFrame(()=>this._hostElement.classList.add(Pj)),this._waitForAnimationToComplete(this._exitAnimationDuration,this._finishDialogClose)):Promise.resolve().then(()=>this._finishDialogClose())}_updateActionSectionCount(e){this._actionSectionCount+=e,this._changeDetectorRef.markForCheck()}_finishDialogOpen=()=>{this._clearAnimationClasses(),this._openAnimationDone(this._enterAnimationDuration)};_finishDialogClose=()=>{this._clearAnimationClasses(),this._animationStateChanged.emit({state:"closed",totalTime:this._exitAnimationDuration})};_clearAnimationClasses(){this._hostElement.classList.remove(Hj,Pj)}_waitForAnimationToComplete(e,i){this._animationTimer!==null&&clearTimeout(this._animationTimer),this._animationTimer=setTimeout(i,e)}_requestAnimationFrame(e){this._ngZone.runOutsideAngular(()=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(e):e()})}_captureInitialFocus(){this._config.delayFocusTrap||this._trapFocus()}_openAnimationDone(e){this._config.delayFocusTrap&&this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})}ngOnDestroy(){super.ngOnDestroy(),this._animationTimer!==null&&clearTimeout(this._animationTimer)}attachComponentPortal(e){let i=super.attachComponentPortal(e);return i.location.nativeElement.classList.add("mat-mdc-dialog-component-host"),i}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275cmp=De({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1",1,"mat-mdc-dialog-container","mdc-dialog"],hostVars:10,hostBindings:function(i,n){i&2&&(Ra("id",n._config.id),aA("aria-modal",n._config.ariaModal)("role",n._config.role)("aria-labelledby",n._config.ariaLabel?null:n._ariaLabelledByQueue[0])("aria-label",n._config.ariaLabel)("aria-describedby",n._config.ariaDescribedBy||null),_e("_mat-animation-noopable",!n._animationsEnabled)("mat-mdc-dialog-container-with-actions",n._actionSectionCount>0))},features:[_t],decls:3,vars:0,consts:[[1,"mat-mdc-dialog-inner-container","mdc-dialog__container"],[1,"mat-mdc-dialog-surface","mdc-dialog__surface"],["cdkPortalOutlet",""]],template:function(i,n){i&1&&(I(0,"div",0)(1,"div",1),Nt(2,OIe,0,0,"ng-template",2),h()())},dependencies:[Bc],styles:[`.mat-mdc-dialog-container{width:100%;height:100%;display:block;box-sizing:border-box;max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;outline:0}.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-max-width, 560px);min-width:var(--mat-dialog-container-min-width, 280px)}@media(max-width: 599px){.cdk-overlay-pane.mat-mdc-dialog-panel{max-width:var(--mat-dialog-container-small-max-width, calc(100vw - 32px))}}.mat-mdc-dialog-inner-container{display:flex;flex-direction:row;align-items:center;justify-content:space-around;box-sizing:border-box;height:100%;opacity:0;transition:opacity linear var(--mat-dialog-transition-duration, 0ms);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit}.mdc-dialog--closing .mat-mdc-dialog-inner-container{transition:opacity 75ms linear;transform:none}.mdc-dialog--open .mat-mdc-dialog-inner-container{opacity:1}._mat-animation-noopable .mat-mdc-dialog-inner-container{transition:none}.mat-mdc-dialog-surface{display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;box-sizing:border-box;width:100%;height:100%;position:relative;overflow-y:auto;outline:0;transform:scale(0.8);transition:transform var(--mat-dialog-transition-duration, 0ms) cubic-bezier(0, 0, 0.2, 1);max-height:inherit;min-height:inherit;min-width:inherit;max-width:inherit;box-shadow:var(--mat-dialog-container-elevation-shadow, none);border-radius:var(--mat-dialog-container-shape, var(--mat-sys-corner-extra-large, 4px));background-color:var(--mat-dialog-container-color, var(--mat-sys-surface, white))}[dir=rtl] .mat-mdc-dialog-surface{text-align:right}.mdc-dialog--open .mat-mdc-dialog-surface,.mdc-dialog--closing .mat-mdc-dialog-surface{transform:none}._mat-animation-noopable .mat-mdc-dialog-surface{transition:none}.mat-mdc-dialog-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:2px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mat-mdc-dialog-title{display:block;position:relative;flex-shrink:0;box-sizing:border-box;margin:0 0 1px;padding:var(--mat-dialog-headline-padding, 6px 24px 13px)}.mat-mdc-dialog-title::before{display:inline-block;width:0;height:40px;content:"";vertical-align:0}[dir=rtl] .mat-mdc-dialog-title{text-align:right}.mat-mdc-dialog-container .mat-mdc-dialog-title{color:var(--mat-dialog-subhead-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-dialog-subhead-font, var(--mat-sys-headline-small-font, inherit));line-height:var(--mat-dialog-subhead-line-height, var(--mat-sys-headline-small-line-height, 1.5rem));font-size:var(--mat-dialog-subhead-size, var(--mat-sys-headline-small-size, 1rem));font-weight:var(--mat-dialog-subhead-weight, var(--mat-sys-headline-small-weight, 400));letter-spacing:var(--mat-dialog-subhead-tracking, var(--mat-sys-headline-small-tracking, 0.03125em))}.mat-mdc-dialog-content{display:block;flex-grow:1;box-sizing:border-box;margin:0;overflow:auto;max-height:65vh}.mat-mdc-dialog-content>:first-child{margin-top:0}.mat-mdc-dialog-content>:last-child{margin-bottom:0}.mat-mdc-dialog-container .mat-mdc-dialog-content{color:var(--mat-dialog-supporting-text-color, var(--mat-sys-on-surface-variant, rgba(0, 0, 0, 0.6)));font-family:var(--mat-dialog-supporting-text-font, var(--mat-sys-body-medium-font, inherit));line-height:var(--mat-dialog-supporting-text-line-height, var(--mat-sys-body-medium-line-height, 1.5rem));font-size:var(--mat-dialog-supporting-text-size, var(--mat-sys-body-medium-size, 1rem));font-weight:var(--mat-dialog-supporting-text-weight, var(--mat-sys-body-medium-weight, 400));letter-spacing:var(--mat-dialog-supporting-text-tracking, var(--mat-sys-body-medium-tracking, 0.03125em))}.mat-mdc-dialog-container .mat-mdc-dialog-content{padding:var(--mat-dialog-content-padding, 20px 24px)}.mat-mdc-dialog-container-with-actions .mat-mdc-dialog-content{padding:var(--mat-dialog-with-actions-content-padding, 20px 24px 0)}.mat-mdc-dialog-container .mat-mdc-dialog-title+.mat-mdc-dialog-content{padding-top:0}.mat-mdc-dialog-actions{display:flex;position:relative;flex-shrink:0;flex-wrap:wrap;align-items:center;box-sizing:border-box;min-height:52px;margin:0;border-top:1px solid rgba(0,0,0,0);padding:var(--mat-dialog-actions-padding, 16px 24px);justify-content:var(--mat-dialog-actions-alignment, flex-end)}@media(forced-colors: active){.mat-mdc-dialog-actions{border-top-color:CanvasText}}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-start,.mat-mdc-dialog-actions[align=start]{justify-content:start}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-center,.mat-mdc-dialog-actions[align=center]{justify-content:center}.mat-mdc-dialog-actions.mat-mdc-dialog-actions-align-end,.mat-mdc-dialog-actions[align=end]{justify-content:flex-end}.mat-mdc-dialog-actions .mat-button-base+.mat-button-base,.mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-mdc-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-mdc-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}.mat-mdc-dialog-component-host{display:contents} +`],encapsulation:2})}return t})(),jj="--mat-dialog-transition-duration";function Vj(t){return t==null?null:typeof t=="number"?t:t.endsWith("ms")?ol(t.substring(0,t.length-2)):t.endsWith("s")?ol(t.substring(0,t.length-1))*1e3:t==="0"?0:null}var H6=(function(t){return t[t.OPEN=0]="OPEN",t[t.CLOSING=1]="CLOSING",t[t.CLOSED=2]="CLOSED",t})(H6||{}),Pn=class{_ref;_config;_containerInstance;componentInstance;componentRef=null;disableClose;id;_afterOpened=new Pc(1);_beforeClosed=new Pc(1);_result;_closeFallbackTimeout;_state=H6.OPEN;_closeInteractionType;constructor(A,e,i){this._ref=A,this._config=e,this._containerInstance=i,this.disableClose=e.disableClose,this.id=A.id,A.addPanelClass("mat-mdc-dialog-panel"),i._animationStateChanged.pipe(pt(n=>n.state==="opened"),No(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),i._animationStateChanged.pipe(pt(n=>n.state==="closed"),No(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),A.overlayRef.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._finishDialogClose()}),Zi(this.backdropClick(),this.keydownEvents().pipe(pt(n=>n.keyCode===27&&!this.disableClose&&!Na(n)))).subscribe(n=>{this.disableClose||(n.preventDefault(),qj(this,n.type==="keydown"?"keyboard":"mouse"))})}close(A){let e=this._config.closePredicate;e&&!e(A,this._config,this.componentInstance)||(this._result=A,this._containerInstance._animationStateChanged.pipe(pt(i=>i.state==="closing"),No(1)).subscribe(i=>{this._beforeClosed.next(A),this._beforeClosed.complete(),this._ref.overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),i.totalTime+100)}),this._state=H6.CLOSING,this._containerInstance._startExitAnimation())}afterOpened(){return this._afterOpened}afterClosed(){return this._ref.closed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._ref.backdropClick}keydownEvents(){return this._ref.keydownEvents}updatePosition(A){let e=this._ref.config.positionStrategy;return A&&(A.left||A.right)?A.left?e.left(A.left):e.right(A.right):e.centerHorizontally(),A&&(A.top||A.bottom)?A.top?e.top(A.top):e.bottom(A.bottom):e.centerVertically(),this._ref.updatePosition(),this}updateSize(A="",e=""){return this._ref.updateSize(A,e),this}addPanelClass(A){return this._ref.addPanelClass(A),this}removePanelClass(A){return this._ref.removePanelClass(A),this}getState(){return this._state}_finishDialogClose(){this._state=H6.CLOSED,this._ref.close(this._result,{focusOrigin:this._closeInteractionType}),this.componentInstance=null}};function qj(t,A,e){return t._closeInteractionType=A,t.close(e)}var Do=new Me("MatMdcDialogData"),HIe=new Me("mat-mdc-dialog-default-options"),PIe=new Me("mat-mdc-dialog-scroll-strategy",{providedIn:"root",factory:()=>{let t=w(Rt);return()=>WB(t)}}),nr=(()=>{class t{_defaultOptions=w(HIe,{optional:!0});_scrollStrategy=w(PIe);_parentDialog=w(t,{optional:!0,skipSelf:!0});_idGenerator=w(bn);_injector=w(Rt);_dialog=w(uS);_animationsDisabled=hn();_openDialogsAtThisLevel=[];_afterAllClosedAtThisLevel=new rA;_afterOpenedAtThisLevel=new rA;dialogConfigClass=P6;_dialogRefConstructor;_dialogContainerType;_dialogDataToken;get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){let e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}afterAllClosed=Zg(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Yn(void 0)));constructor(){this._dialogRefConstructor=Pn,this._dialogContainerType=YIe,this._dialogDataToken=Do}open(e,i){let n;i=Y(Y({},this._defaultOptions||new P6),i),i.id=i.id||this._idGenerator.getId("mat-mdc-dialog-"),i.scrollStrategy=i.scrollStrategy||this._scrollStrategy();let o=this._dialog.open(e,Ye(Y({},i),{positionStrategy:bd(this._injector).centerHorizontally().centerVertically(),disableClose:!0,closePredicate:void 0,closeOnDestroy:!1,closeOnOverlayDetachments:!1,disableAnimations:this._animationsDisabled||i.enterAnimationDuration?.toLocaleString()==="0"||i.exitAnimationDuration?.toString()==="0",container:{type:this._dialogContainerType,providers:()=>[{provide:this.dialogConfigClass,useValue:i},{provide:Md,useValue:i}]},templateContext:()=>({dialogRef:n}),providers:(a,r,s)=>(n=new this._dialogRefConstructor(a,i,s),n.updatePosition(i?.position),[{provide:this._dialogContainerType,useValue:s},{provide:this._dialogDataToken,useValue:r.data},{provide:this._dialogRefConstructor,useValue:n}])}));return n.componentRef=o.componentRef,n.componentInstance=o.componentInstance,this.openDialogs.push(n),this.afterOpened.next(n),n.afterClosed().subscribe(()=>{let a=this.openDialogs.indexOf(n);a>-1&&(this.openDialogs.splice(a,1),this.openDialogs.length||this._getAfterAllClosed().next())}),n}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(e){return this.openDialogs.find(i=>i.id===e)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_closeDialogs(e){let i=e.length;for(;i--;)e[i].close()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Sd=(()=>{class t{dialogRef=w(Pn,{optional:!0});_elementRef=w(dA);_dialog=w(nr);ariaLabel;type="button";dialogResult;_matDialogClose;constructor(){}ngOnInit(){this.dialogRef||(this.dialogRef=Wj(this._elementRef,this._dialog.openDialogs))}ngOnChanges(e){let i=e._matDialogClose||e._matDialogCloseResult;i&&(this.dialogResult=i.currentValue)}_onButtonClick(e){qj(this.dialogRef,e.screenX===0&&e.screenY===0?"keyboard":"mouse",this.dialogResult)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(i,n){i&1&&U("click",function(a){return n._onButtonClick(a)}),i&2&&aA("aria-label",n.ariaLabel||null)("type",n.type)},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],type:"type",dialogResult:[0,"mat-dialog-close","dialogResult"],_matDialogClose:[0,"matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],features:[ai]})}return t})(),Zj=(()=>{class t{_dialogRef=w(Pn,{optional:!0});_elementRef=w(dA);_dialog=w(nr);constructor(){}ngOnInit(){this._dialogRef||(this._dialogRef=Wj(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{this._onAdd()})}ngOnDestroy(){this._dialogRef?._containerInstance&&Promise.resolve().then(()=>{this._onRemove()})}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t})}return t})(),ea=(()=>{class t extends Zj{id=w(bn).getId("mat-mdc-dialog-title-");_onAdd(){this._dialogRef._containerInstance?._addAriaLabelledBy?.(this.id)}_onRemove(){this._dialogRef?._containerInstance?._removeAriaLabelledBy?.(this.id)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-mdc-dialog-title","mdc-dialog__title"],hostVars:1,hostBindings:function(i,n){i&2&&Ra("id",n.id)},inputs:{id:"id"},exportAs:["matDialogTitle"],features:[_t]})}return t})(),pa=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-mdc-dialog-content","mdc-dialog__content"],features:[Jf([dC])]})}return t})(),ma=(()=>{class t extends Zj{align;_onAdd(){this._dialogRef._containerInstance?._updateActionSectionCount?.(1)}_onRemove(){this._dialogRef._containerInstance?._updateActionSectionCount?.(-1)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-mdc-dialog-actions","mdc-dialog__actions"],hostVars:6,hostBindings:function(i,n){i&2&&_e("mat-mdc-dialog-actions-align-start",n.align==="start")("mat-mdc-dialog-actions-align-center",n.align==="center")("mat-mdc-dialog-actions-align-end",n.align==="end")},inputs:{align:"align"},features:[_t]})}return t})();function Wj(t,A){let e=t.nativeElement.parentElement;for(;e&&!e.classList.contains("mat-mdc-dialog-container");)e=e.parentElement;return e?A.find(i=>i.id===e.id):null}var Js=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({providers:[nr],imports:[Yj,hc,d0,bi]})}return t})();function Xj(t){return Error(`Unable to find icon with the name "${t}"`)}function jIe(){return Error("Could not find HttpClient for use with Angular Material icons. Please add provideHttpClient() to your providers.")}function $j(t){return Error(`The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was "${t}".`)}function eV(t){return Error(`The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was "${t}".`)}var BC=class{url;svgText;options;svgElement=null;constructor(A,e,i){this.url=A,this.svgText=e,this.options=i}},tV=(()=>{class t{_httpClient;_sanitizer;_errorHandler;_document;_svgIconConfigs=new Map;_iconSetConfigs=new Map;_cachedIconsByUrl=new Map;_inProgressUrlFetches=new Map;_fontCssClassesByAlias=new Map;_resolvers=[];_defaultFontSetClass=["material-icons","mat-ligature-font"];constructor(e,i,n,o){this._httpClient=e,this._sanitizer=i,this._errorHandler=o,this._document=n}addSvgIcon(e,i,n){return this.addSvgIconInNamespace("",e,i,n)}addSvgIconLiteral(e,i,n){return this.addSvgIconLiteralInNamespace("",e,i,n)}addSvgIconInNamespace(e,i,n,o){return this._addSvgIconConfig(e,i,new BC(n,null,o))}addSvgIconResolver(e){return this._resolvers.push(e),this}addSvgIconLiteralInNamespace(e,i,n,o){let a=this._sanitizer.sanitize(qc.HTML,n);if(!a)throw eV(n);let r=gI(a);return this._addSvgIconConfig(e,i,new BC("",r,o))}addSvgIconSet(e,i){return this.addSvgIconSetInNamespace("",e,i)}addSvgIconSetLiteral(e,i){return this.addSvgIconSetLiteralInNamespace("",e,i)}addSvgIconSetInNamespace(e,i,n){return this._addSvgIconSetConfig(e,new BC(i,null,n))}addSvgIconSetLiteralInNamespace(e,i,n){let o=this._sanitizer.sanitize(qc.HTML,i);if(!o)throw eV(i);let a=gI(o);return this._addSvgIconSetConfig(e,new BC("",a,n))}registerFontClassAlias(e,i=e){return this._fontCssClassesByAlias.set(e,i),this}classNameForFontAlias(e){return this._fontCssClassesByAlias.get(e)||e}setDefaultFontSetClass(...e){return this._defaultFontSetClass=e,this}getDefaultFontSetClass(){return this._defaultFontSetClass}getSvgIconFromUrl(e){let i=this._sanitizer.sanitize(qc.RESOURCE_URL,e);if(!i)throw $j(e);let n=this._cachedIconsByUrl.get(i);return n?sA(j6(n)):this._loadSvgIconFromConfig(new BC(e,null)).pipe(yi(o=>this._cachedIconsByUrl.set(i,o)),xA(o=>j6(o)))}getNamedSvgIcon(e,i=""){let n=AV(i,e),o=this._svgIconConfigs.get(n);if(o)return this._getSvgFromConfig(o);if(o=this._getIconConfigFromResolvers(i,e),o)return this._svgIconConfigs.set(n,o),this._getSvgFromConfig(o);let a=this._iconSetConfigs.get(i);return a?this._getSvgFromIconSetConfigs(e,a):_f(Xj(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(e){return e.svgText?sA(j6(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(xA(i=>j6(i)))}_getSvgFromIconSetConfigs(e,i){let n=this._extractIconWithNameFromAnySet(e,i);if(n)return sA(n);let o=i.filter(a=>!a.svgText).map(a=>this._loadSvgIconSetFromConfig(a).pipe(ca(r=>{let l=`Loading icon set URL: ${this._sanitizer.sanitize(qc.RESOURCE_URL,a.url)} failed: ${r.message}`;return this._errorHandler.handleError(new Error(l)),sA(null)})));return cd(o).pipe(xA(()=>{let a=this._extractIconWithNameFromAnySet(e,i);if(!a)throw Xj(e);return a}))}_extractIconWithNameFromAnySet(e,i){for(let n=i.length-1;n>=0;n--){let o=i[n];if(o.svgText&&o.svgText.toString().indexOf(e)>-1){let a=this._svgElementFromConfig(o),r=this._extractSvgIconFromSet(a,e,o.options);if(r)return r}}return null}_loadSvgIconFromConfig(e){return this._fetchIcon(e).pipe(yi(i=>e.svgText=i),xA(()=>this._svgElementFromConfig(e)))}_loadSvgIconSetFromConfig(e){return e.svgText?sA(null):this._fetchIcon(e).pipe(yi(i=>e.svgText=i))}_extractSvgIconFromSet(e,i,n){let o=e.querySelector(`[id="${i}"]`);if(!o)return null;let a=o.cloneNode(!0);if(a.removeAttribute("id"),a.nodeName.toLowerCase()==="svg")return this._setSvgAttributes(a,n);if(a.nodeName.toLowerCase()==="symbol")return this._setSvgAttributes(this._toSvgElement(a),n);let r=this._svgElementFromString(gI(""));return r.appendChild(a),this._setSvgAttributes(r,n)}_svgElementFromString(e){let i=this._document.createElement("DIV");i.innerHTML=e;let n=i.querySelector("svg");if(!n)throw Error(" tag not found");return n}_toSvgElement(e){let i=this._svgElementFromString(gI("")),n=e.attributes;for(let o=0;ogI(l)),Ff(()=>this._inProgressUrlFetches.delete(a)),Cd());return this._inProgressUrlFetches.set(a,s),s}_addSvgIconConfig(e,i,n){return this._svgIconConfigs.set(AV(e,i),n),this}_addSvgIconSetConfig(e,i){let n=this._iconSetConfigs.get(e);return n?n.push(i):this._iconSetConfigs.set(e,[i]),this}_svgElementFromConfig(e){if(!e.svgElement){let i=this._svgElementFromString(e.svgText);this._setSvgAttributes(i,e.options),e.svgElement=i}return e.svgElement}_getIconConfigFromResolvers(e,i){for(let n=0;n{let t=w(Ii),A=t?t.location:null;return{getPathname:()=>A?A.pathname+A.search:""}}}),iV=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],XIe=iV.map(t=>`[${t}]`).join(", "),$Ie=/^url\(['"]?#(.*?)['"]?\)$/,Vt=(()=>{class t{_elementRef=w(dA);_iconRegistry=w(tV);_location=w(WIe);_errorHandler=w(Lf);_defaultColor;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;inline=!1;get svgIcon(){return this._svgIcon}set svgIcon(e){e!==this._svgIcon&&(e?this._updateSvgIcon(e):this._svgIcon&&this._clearSvgElement(),this._svgIcon=e)}_svgIcon;get fontSet(){return this._fontSet}set fontSet(e){let i=this._cleanupFontValue(e);i!==this._fontSet&&(this._fontSet=i,this._updateFontIconClasses())}_fontSet;get fontIcon(){return this._fontIcon}set fontIcon(e){let i=this._cleanupFontValue(e);i!==this._fontIcon&&(this._fontIcon=i,this._updateFontIconClasses())}_fontIcon;_previousFontSetClass=[];_previousFontIconClass;_svgName=null;_svgNamespace=null;_previousPath;_elementsWithExternalReferences;_currentIconFetch=zo.EMPTY;constructor(){let e=w(new $s("aria-hidden"),{optional:!0}),i=w(ZIe,{optional:!0});i&&(i.color&&(this.color=this._defaultColor=i.color),i.fontSet&&(this.fontSet=i.fontSet)),e||this._elementRef.nativeElement.setAttribute("aria-hidden","true")}_splitIconName(e){if(!e)return["",""];let i=e.split(":");switch(i.length){case 1:return["",i[0]];case 2:return i;default:throw Error(`Invalid icon name: "${e}"`)}}ngOnInit(){this._updateFontIconClasses()}ngAfterViewChecked(){let e=this._elementsWithExternalReferences;if(e&&e.size){let i=this._location.getPathname();i!==this._previousPath&&(this._previousPath=i,this._prependPathToReferences(i))}}ngOnDestroy(){this._currentIconFetch.unsubscribe(),this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear()}_usingFontIcon(){return!this.svgIcon}_setSvgElement(e){this._clearSvgElement();let i=this._location.getPathname();this._previousPath=i,this._cacheChildrenWithExternalReferences(e),this._prependPathToReferences(i),this._elementRef.nativeElement.appendChild(e)}_clearSvgElement(){let e=this._elementRef.nativeElement,i=e.childNodes.length;for(this._elementsWithExternalReferences&&this._elementsWithExternalReferences.clear();i--;){let n=e.childNodes[i];(n.nodeType!==1||n.nodeName.toLowerCase()==="svg")&&n.remove()}}_updateFontIconClasses(){if(!this._usingFontIcon())return;let e=this._elementRef.nativeElement,i=(this.fontSet?this._iconRegistry.classNameForFontAlias(this.fontSet).split(/ +/):this._iconRegistry.getDefaultFontSetClass()).filter(n=>n.length>0);this._previousFontSetClass.forEach(n=>e.classList.remove(n)),i.forEach(n=>e.classList.add(n)),this._previousFontSetClass=i,this.fontIcon!==this._previousFontIconClass&&!i.includes("mat-ligature-font")&&(this._previousFontIconClass&&e.classList.remove(this._previousFontIconClass),this.fontIcon&&e.classList.add(this.fontIcon),this._previousFontIconClass=this.fontIcon)}_cleanupFontValue(e){return typeof e=="string"?e.trim().split(" ")[0]:e}_prependPathToReferences(e){let i=this._elementsWithExternalReferences;i&&i.forEach((n,o)=>{n.forEach(a=>{o.setAttribute(a.name,`url('${e}#${a.value}')`)})})}_cacheChildrenWithExternalReferences(e){let i=e.querySelectorAll(XIe),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let o=0;o{let r=i[o],s=r.getAttribute(a),l=s?s.match($Ie):null;if(l){let c=n.get(r);c||(c=[],n.set(r,c)),c.push({name:a,value:l[1]})}})}_updateSvgIcon(e){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),e){let[i,n]=this._splitIconName(e);i&&(this._svgNamespace=i),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,i).pipe(No(1)).subscribe(o=>this._setSvgElement(o),o=>{let a=`Error retrieving icon ${i}:${n}! ${o.message}`;this._errorHandler.handleError(new Error(a))})}}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:10,hostBindings:function(i,n){i&2&&(aA("data-mat-icon-type",n._usingFontIcon()?"font":"svg")("data-mat-icon-name",n._svgName||n.fontIcon)("data-mat-icon-namespace",n._svgNamespace||n.fontSet)("fontIcon",n._usingFontIcon()?n.fontIcon:null),Ao(n.color?"mat-"+n.color:""),_e("mat-icon-inline",n.inline)("mat-icon-no-color",n.color!=="primary"&&n.color!=="accent"&&n.color!=="warn"))},inputs:{color:"color",inline:[2,"inline","inline",mA],svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],ngContentSelectors:qIe,decls:1,vars:0,template:function(i,n){i&1&&(Yt(),tt(0))},styles:[`mat-icon,mat-icon.mat-primary,mat-icon.mat-accent,mat-icon.mat-warn{color:var(--mat-icon-color, inherit)}.mat-icon{-webkit-user-select:none;user-select:none;background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px;overflow:hidden}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}.mat-icon.mat-ligature-font[fontIcon]::before{content:attr(fontIcon)}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto} +`],encapsulation:2,changeDetection:0})}return t})(),Tn=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();var e1e=["mat-menu-item",""],A1e=[[["mat-icon"],["","matMenuItemIcon",""]],"*"],t1e=["mat-icon, [matMenuItemIcon]","*"];function i1e(t,A){t&1&&(mt(),I(0,"svg",2),le(1,"polygon",3),h())}var n1e=["*"];function o1e(t,A){if(t&1){let e=ae();Gn(0,"div",0),rB("click",function(){L(e);let n=p();return G(n.closed.emit("click"))})("animationstart",function(n){L(e);let o=p();return G(o._onAnimationStart(n.animationName))})("animationend",function(n){L(e);let o=p();return G(o._onAnimationDone(n.animationName))})("animationcancel",function(n){L(e);let o=p();return G(o._onAnimationDone(n.animationName))}),Gn(1,"div",1),tt(2),$n()()}if(t&2){let e=p();Ao(e._classList),_e("mat-menu-panel-animations-disabled",e._animationsDisabled)("mat-menu-panel-exit-animation",e._panelAnimationState==="void")("mat-menu-panel-animating",e._isAnimating()),Ra("id",e.panelId),aA("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby||null)("aria-describedby",e.ariaDescribedby||null)}}var pS=new Me("MAT_MENU_PANEL"),zs=(()=>{class t{_elementRef=w(dA);_document=w(Ii);_focusMonitor=w(dr);_parentMenu=w(pS,{optional:!0});_changeDetectorRef=w(xt);role="menuitem";disabled=!1;disableRipple=!1;_hovered=new rA;_focused=new rA;_highlighted=!1;_triggersSubmenu=!1;constructor(){w(Eo).load(yr),this._parentMenu?.addItem?.(this)}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._getHostElement(),e,i):this._getHostElement().focus(i),this._focused.next(this)}ngAfterViewInit(){this._focusMonitor&&this._focusMonitor.monitor(this._elementRef,!1)}ngOnDestroy(){this._focusMonitor&&this._focusMonitor.stopMonitoring(this._elementRef),this._parentMenu&&this._parentMenu.removeItem&&this._parentMenu.removeItem(this),this._hovered.complete(),this._focused.complete()}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._elementRef.nativeElement}_checkDisabled(e){this.disabled&&(e.preventDefault(),e.stopPropagation())}_handleMouseEnter(){this._hovered.next(this)}getLabel(){let e=this._elementRef.nativeElement.cloneNode(!0),i=e.querySelectorAll("mat-icon, .material-icons");for(let n=0;n({overlapTrigger:!1,xPosition:"after",yPosition:"below",backdropClass:"cdk-overlay-transparent-backdrop"})}),QS="_mat-menu-enter",q6="_mat-menu-exit",fs=(()=>{class t{_elementRef=w(dA);_changeDetectorRef=w(xt);_injector=w(Rt);_keyManager;_xPosition;_yPosition;_firstItemFocusRef;_exitFallbackTimeout;_animationsDisabled=hn();_allItems;_directDescendantItems=new Vc;_classList={};_panelAnimationState="void";_animationDone=new rA;_isAnimating=fe(!1);parentMenu;direction;overlayPanelClass;backdropClass;ariaLabel;ariaLabelledby;ariaDescribedby;get xPosition(){return this._xPosition}set xPosition(e){this._xPosition=e,this.setPositionClasses()}get yPosition(){return this._yPosition}set yPosition(e){this._yPosition=e,this.setPositionClasses()}templateRef;items;lazyContent;overlapTrigger=!1;hasBackdrop;set panelClass(e){let i=this._previousPanelClass,n=Y({},this._classList);i&&i.length&&i.split(" ").forEach(o=>{n[o]=!1}),this._previousPanelClass=e,e&&e.length&&(e.split(" ").forEach(o=>{n[o]=!0}),this._elementRef.nativeElement.className=""),this._classList=n}_previousPanelClass;get classList(){return this.panelClass}set classList(e){this.panelClass=e}closed=new Le;close=this.closed;panelId=w(bn).getId("mat-menu-panel-");constructor(){let e=w(r1e);this.overlayPanelClass=e.overlayPanelClass||"",this._xPosition=e.xPosition,this._yPosition=e.yPosition,this.backdropClass=e.backdropClass,this.overlapTrigger=e.overlapTrigger,this.hasBackdrop=e.hasBackdrop}ngOnInit(){this.setPositionClasses()}ngAfterContentInit(){this._updateDirectDescendants(),this._keyManager=new rC(this._directDescendantItems).withWrap().withTypeAhead().withHomeAndEnd(),this._keyManager.tabOut.subscribe(()=>this.closed.emit("tab")),this._directDescendantItems.changes.pipe(Yn(this._directDescendantItems),ki(e=>Zi(...e.map(i=>i._focused)))).subscribe(e=>this._keyManager.updateActiveItem(e)),this._directDescendantItems.changes.subscribe(e=>{let i=this._keyManager;if(this._panelAnimationState==="enter"&&i.activeItem?._hasFocus()){let n=e.toArray(),o=Math.max(0,Math.min(n.length-1,i.activeItemIndex||0));n[o]&&!n[o].disabled?i.setActiveItem(o):i.setNextItemActive()}})}ngOnDestroy(){this._keyManager?.destroy(),this._directDescendantItems.destroy(),this.closed.complete(),this._firstItemFocusRef?.destroy(),clearTimeout(this._exitFallbackTimeout)}_hovered(){return this._directDescendantItems.changes.pipe(Yn(this._directDescendantItems),ki(i=>Zi(...i.map(n=>n._hovered))))}addItem(e){}removeItem(e){}_handleKeydown(e){let i=e.keyCode,n=this._keyManager;switch(i){case 27:Na(e)||(e.preventDefault(),this.closed.emit("keydown"));break;case 37:this.parentMenu&&this.direction==="ltr"&&this.closed.emit("keydown");break;case 39:this.parentMenu&&this.direction==="rtl"&&this.closed.emit("keydown");break;default:(i===38||i===40)&&n.setFocusOrigin("keyboard"),n.onKeydown(e);return}}focusFirstItem(e="program"){this._firstItemFocusRef?.destroy(),this._firstItemFocusRef=ro(()=>{let i=this._resolvePanel();if(!i||!i.contains(document.activeElement)){let n=this._keyManager;n.setFocusOrigin(e).setFirstItemActive(),!n.activeItem&&i&&i.focus()}},{injector:this._injector})}resetActiveItem(){this._keyManager.setActiveItem(-1)}setElevation(e){}setPositionClasses(e=this.xPosition,i=this.yPosition){this._classList=Ye(Y({},this._classList),{"mat-menu-before":e==="before","mat-menu-after":e==="after","mat-menu-above":i==="above","mat-menu-below":i==="below"}),this._changeDetectorRef.markForCheck()}_onAnimationDone(e){let i=e===q6;(i||e===QS)&&(i&&(clearTimeout(this._exitFallbackTimeout),this._exitFallbackTimeout=void 0),this._animationDone.next(i?"void":"enter"),this._isAnimating.set(!1))}_onAnimationStart(e){(e===QS||e===q6)&&this._isAnimating.set(!0)}_setIsOpen(e){if(this._panelAnimationState=e?"enter":"void",e){if(this._keyManager.activeItemIndex===0){let i=this._resolvePanel();i&&(i.scrollTop=0)}}else this._animationsDisabled||(this._exitFallbackTimeout=setTimeout(()=>this._onAnimationDone(q6),200));this._animationsDisabled&&setTimeout(()=>{this._onAnimationDone(e?QS:q6)}),this._changeDetectorRef.markForCheck()}_updateDirectDescendants(){this._allItems.changes.pipe(Yn(this._allItems)).subscribe(e=>{this._directDescendantItems.reset(e.filter(i=>i._parentMenu===this)),this._directDescendantItems.notifyOnChanges()})}_resolvePanel(){let e=null;return this._directDescendantItems.length&&(e=this._directDescendantItems.first._getHostElement().closest('[role="menu"]')),e}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-menu"]],contentQueries:function(i,n,o){if(i&1&&ga(o,a1e,5)(o,zs,5)(o,zs,4),i&2){let a;cA(a=gA())&&(n.lazyContent=a.first),cA(a=gA())&&(n._allItems=a),cA(a=gA())&&(n.items=a)}},viewQuery:function(i,n){if(i&1&&$t(yo,5),i&2){let o;cA(o=gA())&&(n.templateRef=o.first)}},hostVars:3,hostBindings:function(i,n){i&2&&aA("aria-label",null)("aria-labelledby",null)("aria-describedby",null)},inputs:{backdropClass:"backdropClass",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],xPosition:"xPosition",yPosition:"yPosition",overlapTrigger:[2,"overlapTrigger","overlapTrigger",mA],hasBackdrop:[2,"hasBackdrop","hasBackdrop",e=>e==null?null:mA(e)],panelClass:[0,"class","panelClass"],classList:"classList"},outputs:{closed:"closed",close:"close"},exportAs:["matMenu"],features:[yt([{provide:pS,useExisting:t}])],ngContentSelectors:n1e,decls:1,vars:0,consts:[["tabindex","-1","role","menu",1,"mat-mdc-menu-panel",3,"click","animationstart","animationend","animationcancel","id"],[1,"mat-mdc-menu-content"]],template:function(i,n){i&1&&(Yt(),zf(0,o1e,3,12,"ng-template"))},styles:[`mat-menu{display:none}.mat-mdc-menu-content{margin:0;padding:8px 0;outline:0}.mat-mdc-menu-content,.mat-mdc-menu-content .mat-mdc-menu-item .mat-mdc-menu-item-text{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;flex:1;white-space:normal;font-family:var(--mat-menu-item-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-menu-item-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-menu-item-label-text-size, var(--mat-sys-label-large-size));letter-spacing:var(--mat-menu-item-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-menu-item-label-text-weight, var(--mat-sys-label-large-weight))}@keyframes _mat-menu-enter{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:none}}@keyframes _mat-menu-exit{from{opacity:1}to{opacity:0}}.mat-mdc-menu-panel{min-width:112px;max-width:280px;overflow:auto;box-sizing:border-box;outline:0;animation:_mat-menu-enter 120ms cubic-bezier(0, 0, 0.2, 1);border-radius:var(--mat-menu-container-shape, var(--mat-sys-corner-extra-small));background-color:var(--mat-menu-container-color, var(--mat-sys-surface-container));box-shadow:var(--mat-menu-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12));will-change:transform,opacity}.mat-mdc-menu-panel.mat-menu-panel-exit-animation{animation:_mat-menu-exit 100ms 25ms linear forwards}.mat-mdc-menu-panel.mat-menu-panel-animations-disabled{animation:none}.mat-mdc-menu-panel.mat-menu-panel-animating{pointer-events:none}.mat-mdc-menu-panel.mat-menu-panel-animating:has(.mat-mdc-menu-content:empty){display:none}@media(forced-colors: active){.mat-mdc-menu-panel{outline:solid 1px}}.mat-mdc-menu-panel .mat-divider{border-top-color:var(--mat-menu-divider-color, var(--mat-sys-surface-variant));margin-bottom:var(--mat-menu-divider-bottom-spacing, 8px);margin-top:var(--mat-menu-divider-top-spacing, 8px)}.mat-mdc-menu-item{display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;padding:0;cursor:pointer;width:100%;text-align:left;box-sizing:border-box;color:inherit;font-size:inherit;background:none;text-decoration:none;margin:0;min-height:48px;padding-left:var(--mat-menu-item-leading-spacing, 12px);padding-right:var(--mat-menu-item-trailing-spacing, 12px);-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-menu-item::-moz-focus-inner{border:0}[dir=rtl] .mat-mdc-menu-item{padding-left:var(--mat-menu-item-trailing-spacing, 12px);padding-right:var(--mat-menu-item-leading-spacing, 12px)}.mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-leading-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-trailing-spacing, 12px)}[dir=rtl] .mat-mdc-menu-item:has(.material-icons,mat-icon,[matButtonIcon]){padding-left:var(--mat-menu-item-with-icon-trailing-spacing, 12px);padding-right:var(--mat-menu-item-with-icon-leading-spacing, 12px)}.mat-mdc-menu-item,.mat-mdc-menu-item:visited,.mat-mdc-menu-item:link{color:var(--mat-menu-item-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-menu-item .mat-icon-no-color,.mat-mdc-menu-item .mat-mdc-menu-submenu-icon{color:var(--mat-menu-item-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-menu-item[disabled]{cursor:default;opacity:.38}.mat-mdc-menu-item[disabled]::after{display:block;position:absolute;content:"";top:0;left:0;bottom:0;right:0}.mat-mdc-menu-item:focus{outline:0}.mat-mdc-menu-item .mat-icon{flex-shrink:0;margin-right:var(--mat-menu-item-spacing, 12px);height:var(--mat-menu-item-icon-size, 24px);width:var(--mat-menu-item-icon-size, 24px)}[dir=rtl] .mat-mdc-menu-item{text-align:right}[dir=rtl] .mat-mdc-menu-item .mat-icon{margin-right:0;margin-left:var(--mat-menu-item-spacing, 12px)}.mat-mdc-menu-item:not([disabled]):hover{background-color:var(--mat-menu-item-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-menu-item:not([disabled]).cdk-program-focused,.mat-mdc-menu-item:not([disabled]).cdk-keyboard-focused,.mat-mdc-menu-item:not([disabled]).mat-mdc-menu-item-highlighted{background-color:var(--mat-menu-item-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}@media(forced-colors: active){.mat-mdc-menu-item{margin-top:1px}}.mat-mdc-menu-submenu-icon{width:var(--mat-menu-item-icon-size, 24px);height:10px;fill:currentColor;padding-left:var(--mat-menu-item-spacing, 12px)}[dir=rtl] .mat-mdc-menu-submenu-icon{padding-right:var(--mat-menu-item-spacing, 12px);padding-left:0}[dir=rtl] .mat-mdc-menu-submenu-icon polygon{transform:scaleX(-1);transform-origin:center}@media(forced-colors: active){.mat-mdc-menu-submenu-icon{fill:CanvasText}}.mat-mdc-menu-item .mat-mdc-menu-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none} +`],encapsulation:2,changeDetection:0})}return t})(),s1e=new Me("mat-menu-scroll-strategy",{providedIn:"root",factory:()=>{let t=w(Rt);return()=>IC(t)}});var XB=new WeakMap,l1e=(()=>{class t{_canHaveBackdrop;_element=w(dA);_viewContainerRef=w(Yo);_menuItemInstance=w(zs,{optional:!0,self:!0});_dir=w(Fo,{optional:!0});_focusMonitor=w(dr);_ngZone=w(At);_injector=w(Rt);_scrollStrategy=w(s1e);_changeDetectorRef=w(xt);_animationsDisabled=hn();_portal;_overlayRef=null;_menuOpen=!1;_closingActionsSubscription=zo.EMPTY;_menuCloseSubscription=zo.EMPTY;_pendingRemoval;_parentMaterialMenu;_parentInnerPadding;_openedBy=void 0;get _menu(){return this._menuInternal}set _menu(e){e!==this._menuInternal&&(this._menuInternal=e,this._menuCloseSubscription.unsubscribe(),e&&(this._parentMaterialMenu,this._menuCloseSubscription=e.close.subscribe(i=>{this._destroyMenu(i),(i==="click"||i==="tab")&&this._parentMaterialMenu&&this._parentMaterialMenu.closed.emit(i)})),this._menuItemInstance?._setTriggersSubmenu(this._triggersSubmenu()))}_menuInternal=null;constructor(e){this._canHaveBackdrop=e;let i=w(pS,{optional:!0});this._parentMaterialMenu=i instanceof fs?i:void 0}ngOnDestroy(){this._menu&&this._ownsMenu(this._menu)&&XB.delete(this._menu),this._pendingRemoval?.unsubscribe(),this._menuCloseSubscription.unsubscribe(),this._closingActionsSubscription.unsubscribe(),this._overlayRef&&(this._overlayRef.dispose(),this._overlayRef=null)}get menuOpen(){return this._menuOpen}get dir(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_triggersSubmenu(){return!!(this._menuItemInstance&&this._parentMaterialMenu&&this._menu)}_closeMenu(){this._menu?.close.emit()}_openMenu(e){if(this._triggerIsAriaDisabled())return;let i=this._menu;if(this._menuOpen||!i)return;this._pendingRemoval?.unsubscribe();let n=XB.get(i);XB.set(i,this),n&&n!==this&&n._closeMenu();let o=this._createOverlay(i),a=o.getConfig(),r=a.positionStrategy;this._setPosition(i,r),this._canHaveBackdrop?a.hasBackdrop=i.hasBackdrop==null?!this._triggersSubmenu():i.hasBackdrop:a.hasBackdrop=i.hasBackdrop??!1,o.hasAttached()||(o.attach(this._getPortal(i)),i.lazyContent?.attach(this.menuData)),this._closingActionsSubscription=this._menuClosingActions().subscribe(()=>this._closeMenu()),i.parentMenu=this._triggersSubmenu()?this._parentMaterialMenu:void 0,i.direction=this.dir,e&&i.focusFirstItem(this._openedBy||"program"),this._setIsMenuOpen(!0),i instanceof fs&&(i._setIsOpen(!0),i._directDescendantItems.changes.pipe(Mt(i.close)).subscribe(()=>{r.withLockedPosition(!1).reapplyLastPosition(),r.withLockedPosition(!0)}))}focus(e,i){this._focusMonitor&&e?this._focusMonitor.focusVia(this._element,e,i):this._element.nativeElement.focus(i)}_destroyMenu(e){let i=this._overlayRef,n=this._menu;!i||!this.menuOpen||(this._closingActionsSubscription.unsubscribe(),this._pendingRemoval?.unsubscribe(),n instanceof fs&&this._ownsMenu(n)?(this._pendingRemoval=n._animationDone.pipe(No(1)).subscribe(()=>{i.detach(),XB.has(n)||n.lazyContent?.detach()}),n._setIsOpen(!1)):(i.detach(),n?.lazyContent?.detach()),n&&this._ownsMenu(n)&&XB.delete(n),this.restoreFocus&&(e==="keydown"||!this._openedBy||!this._triggersSubmenu())&&this.focus(this._openedBy),this._openedBy=void 0,this._setIsMenuOpen(!1))}_setIsMenuOpen(e){e!==this._menuOpen&&(this._menuOpen=e,this._menuOpen?this.menuOpened.emit():this.menuClosed.emit(),this._triggersSubmenu()&&this._menuItemInstance._setHighlighted(e),this._changeDetectorRef.markForCheck())}_createOverlay(e){if(!this._overlayRef){let i=this._getOverlayConfig(e);this._subscribeToPositions(e,i.positionStrategy),this._overlayRef=rg(this._injector,i),this._overlayRef.keydownEvents().subscribe(n=>{this._menu instanceof fs&&this._menu._handleKeydown(n)})}return this._overlayRef}_getOverlayConfig(e){return new og({positionStrategy:FI(this._injector,this._getOverlayOrigin()).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".mat-menu-panel, .mat-mdc-menu-panel"),backdropClass:e.backdropClass||"cdk-overlay-transparent-backdrop",panelClass:e.overlayPanelClass,scrollStrategy:this._scrollStrategy(),direction:this._dir||"ltr",disableAnimations:this._animationsDisabled})}_subscribeToPositions(e,i){e.setPositionClasses&&i.positionChanges.subscribe(n=>{this._ngZone.run(()=>{let o=n.connectionPair.overlayX==="start"?"after":"before",a=n.connectionPair.overlayY==="top"?"below":"above";e.setPositionClasses(o,a)})})}_setPosition(e,i){let[n,o]=e.xPosition==="before"?["end","start"]:["start","end"],[a,r]=e.yPosition==="above"?["bottom","top"]:["top","bottom"],[s,l]=[a,r],[c,C]=[n,o],d=0;if(this._triggersSubmenu()){if(C=n=e.xPosition==="before"?"start":"end",o=c=n==="end"?"start":"end",this._parentMaterialMenu){if(this._parentInnerPadding==null){let B=this._parentMaterialMenu.items.first;this._parentInnerPadding=B?B._getHostElement().offsetTop:0}d=a==="bottom"?this._parentInnerPadding:-this._parentInnerPadding}}else e.overlapTrigger||(s=a==="top"?"bottom":"top",l=r==="top"?"bottom":"top");i.withPositions([{originX:n,originY:s,overlayX:c,overlayY:a,offsetY:d},{originX:o,originY:s,overlayX:C,overlayY:a,offsetY:d},{originX:n,originY:l,overlayX:c,overlayY:r,offsetY:-d},{originX:o,originY:l,overlayX:C,overlayY:r,offsetY:-d}])}_menuClosingActions(){let e=this._getOutsideClickStream(this._overlayRef),i=this._overlayRef.detachments(),n=this._parentMaterialMenu?this._parentMaterialMenu.closed:sA(),o=this._parentMaterialMenu?this._parentMaterialMenu._hovered().pipe(pt(a=>this._menuOpen&&a!==this._menuItemInstance)):sA();return Zi(e,n,o,i)}_getPortal(e){return(!this._portal||this._portal.templateRef!==e.templateRef)&&(this._portal=new $r(e.templateRef,this._viewContainerRef)),this._portal}_ownsMenu(e){return XB.get(e)===this}_triggerIsAriaDisabled(){return mA(this._element.nativeElement.getAttribute("aria-disabled"))}static \u0275fac=function(i){Tf()};static \u0275dir=We({type:t})}return t})(),uc=(()=>{class t extends l1e{_cleanupTouchstart;_hoverSubscription=zo.EMPTY;get _deprecatedMatMenuTriggerFor(){return this.menu}set _deprecatedMatMenuTriggerFor(e){this.menu=e}get menu(){return this._menu}set menu(e){this._menu=e}menuData;restoreFocus=!0;menuOpened=new Le;onMenuOpen=this.menuOpened;menuClosed=new Le;onMenuClose=this.menuClosed;constructor(){super(!0);let e=w(rn);this._cleanupTouchstart=e.listen(this._element.nativeElement,"touchstart",i=>{cI(i)||(this._openedBy="touch")},{passive:!0})}triggersSubmenu(){return super._triggersSubmenu()}toggleMenu(){return this.menuOpen?this.closeMenu():this.openMenu()}openMenu(){this._openMenu(!0)}closeMenu(){this._closeMenu()}updatePosition(){this._overlayRef?.updatePosition()}ngAfterContentInit(){this._handleHover()}ngOnDestroy(){super.ngOnDestroy(),this._cleanupTouchstart(),this._hoverSubscription.unsubscribe()}_getOverlayOrigin(){return this._element}_getOutsideClickStream(e){return e.backdropClick()}_handleMousedown(e){lI(e)||(this._openedBy=e.button===0?"mouse":void 0,this.triggersSubmenu()&&e.preventDefault())}_handleKeydown(e){let i=e.keyCode;(i===13||i===32)&&(this._openedBy="keyboard"),this.triggersSubmenu()&&(i===39&&this.dir==="ltr"||i===37&&this.dir==="rtl")&&(this._openedBy="keyboard",this.openMenu())}_handleClick(e){this.triggersSubmenu()?(e.stopPropagation(),this.openMenu()):this.toggleMenu()}_handleHover(){this.triggersSubmenu()&&this._parentMaterialMenu&&(this._hoverSubscription=this._parentMaterialMenu._hovered().subscribe(e=>{e===this._menuItemInstance&&!e.disabled&&this._parentMaterialMenu?._panelAnimationState!=="void"&&(this._openedBy="mouse",this._openMenu(!1))}))}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","mat-menu-trigger-for",""],["","matMenuTriggerFor",""]],hostAttrs:[1,"mat-mdc-menu-trigger"],hostVars:3,hostBindings:function(i,n){i&1&&U("click",function(a){return n._handleClick(a)})("mousedown",function(a){return n._handleMousedown(a)})("keydown",function(a){return n._handleKeydown(a)}),i&2&&aA("aria-haspopup",n.menu?"menu":null)("aria-expanded",n.menuOpen)("aria-controls",n.menuOpen?n.menu==null?null:n.menu.panelId:null)},inputs:{_deprecatedMatMenuTriggerFor:[0,"mat-menu-trigger-for","_deprecatedMatMenuTriggerFor"],menu:[0,"matMenuTriggerFor","menu"],menuData:[0,"matMenuTriggerData","menuData"],restoreFocus:[0,"matMenuTriggerRestoreFocus","restoreFocus"]},outputs:{menuOpened:"menuOpened",onMenuOpen:"onMenuOpen",menuClosed:"menuClosed",onMenuClose:"onMenuClose"},exportAs:["matMenuTrigger"],features:[_t]})}return t})();var kd=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[o0,hc,bi,g0]})}return t})();var c1e=["text"],g1e=[[["mat-icon"]],"*"],C1e=["mat-icon","*"];function d1e(t,A){if(t&1&&le(0,"mat-pseudo-checkbox",1),t&2){let e=p();H("disabled",e.disabled)("state",e.selected?"checked":"unchecked")}}function I1e(t,A){if(t&1&&le(0,"mat-pseudo-checkbox",3),t&2){let e=p();H("disabled",e.disabled)}}function B1e(t,A){if(t&1&&(I(0,"span",4),v(1),h()),t&2){let e=p();Q(),pA("(",e.group.label,")")}}var X6=new Me("MAT_OPTION_PARENT_COMPONENT"),$6=new Me("MatOptgroup");var W6=class{source;isUserInput;constructor(A,e=!1){this.source=A,this.isUserInput=e}},es=(()=>{class t{_element=w(dA);_changeDetectorRef=w(xt);_parent=w(X6,{optional:!0});group=w($6,{optional:!0});_signalDisableRipple=!1;_selected=!1;_active=!1;_mostRecentViewValue="";get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}value;id=w(bn).getId("mat-option-");get disabled(){return this.group&&this.group.disabled||this._disabled()}set disabled(e){this._disabled.set(e)}_disabled=fe(!1);get disableRipple(){return this._signalDisableRipple?this._parent.disableRipple():!!this._parent?.disableRipple}get hideSingleSelectionIndicator(){return!!(this._parent&&this._parent.hideSingleSelectionIndicator)}onSelectionChange=new Le;_text;_stateChanges=new rA;constructor(){let e=w(Eo);e.load(yr),e.load(Qd),this._signalDisableRipple=!!this._parent&&nI(this._parent.disableRipple)}get active(){return this._active}get viewValue(){return(this._text?.nativeElement.textContent||"").trim()}select(e=!0){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}deselect(e=!0){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),e&&this._emitSelectionChangeEvent())}focus(e,i){let n=this._getHostElement();typeof n.focus=="function"&&n.focus(i)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(e){(e.keyCode===13||e.keyCode===32)&&!Na(e)&&(this._selectViaInteraction(),e.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=this.multiple?!this._selected:!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){let e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue&&this._stateChanges.next(),this._mostRecentViewValue=e)}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(e=!1){this.onSelectionChange.emit(new W6(this,e))}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-option"]],viewQuery:function(i,n){if(i&1&&$t(c1e,7),i&2){let o;cA(o=gA())&&(n._text=o.first)}},hostAttrs:["role","option",1,"mat-mdc-option","mdc-list-item"],hostVars:11,hostBindings:function(i,n){i&1&&U("click",function(){return n._selectViaInteraction()})("keydown",function(a){return n._handleKeydown(a)}),i&2&&(Ra("id",n.id),aA("aria-selected",n.selected)("aria-disabled",n.disabled.toString()),_e("mdc-list-item--selected",n.selected)("mat-mdc-option-multiple",n.multiple)("mat-mdc-option-active",n.active)("mdc-list-item--disabled",n.disabled))},inputs:{value:"value",id:"id",disabled:[2,"disabled","disabled",mA]},outputs:{onSelectionChange:"onSelectionChange"},exportAs:["matOption"],ngContentSelectors:C1e,decls:8,vars:5,consts:[["text",""],["aria-hidden","true",1,"mat-mdc-option-pseudo-checkbox",3,"disabled","state"],[1,"mdc-list-item__primary-text"],["state","checked","aria-hidden","true","appearance","minimal",1,"mat-mdc-option-pseudo-checkbox",3,"disabled"],[1,"cdk-visually-hidden"],["aria-hidden","true","mat-ripple","",1,"mat-mdc-option-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled"]],template:function(i,n){i&1&&(Yt(g1e),T(0,d1e,1,2,"mat-pseudo-checkbox",1),tt(1),I(2,"span",2,0),tt(4,1),h(),T(5,I1e,1,1,"mat-pseudo-checkbox",3),T(6,B1e,2,1,"span",4),le(7,"div",5)),i&2&&(O(n.multiple?0:-1),Q(5),O(!n.multiple&&n.selected&&!n.hideSingleSelectionIndicator?5:-1),Q(),O(n.group&&n.group._inert?6:-1),Q(),H("matRippleTrigger",n._getHostElement())("matRippleDisabled",n.disabled||n.disableRipple))},dependencies:[x6,Es],styles:[`.mat-mdc-option{-webkit-user-select:none;user-select:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:flex;position:relative;align-items:center;justify-content:flex-start;overflow:hidden;min-height:48px;padding:0 16px;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0);color:var(--mat-option-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-option-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-option-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-option-label-text-size, var(--mat-sys-body-large-size));letter-spacing:var(--mat-option-label-text-tracking, var(--mat-sys-label-large-tracking));font-weight:var(--mat-option-label-text-weight, var(--mat-sys-body-large-weight))}.mat-mdc-option:hover:not(.mdc-list-item--disabled){background-color:var(--mat-option-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}.mat-mdc-option:focus.mdc-list-item,.mat-mdc-option.mat-mdc-option-active.mdc-list-item{background-color:var(--mat-option-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent));outline:0}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-active,.mat-mdc-option-multiple,:focus,:hover){background-color:var(--mat-option-selected-state-layer-color, var(--mat-sys-secondary-container))}.mat-mdc-option.mdc-list-item--selected:not(.mdc-list-item--disabled):not(.mat-mdc-option-active,.mat-mdc-option-multiple,:focus,:hover) .mdc-list-item__primary-text{color:var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option .mat-pseudo-checkbox{--mat-pseudo-checkbox-minimal-selected-checkmark-color: var(--mat-option-selected-state-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-option.mdc-list-item{align-items:center;background:rgba(0,0,0,0)}.mat-mdc-option.mdc-list-item--disabled{cursor:default;pointer-events:none}.mat-mdc-option.mdc-list-item--disabled .mat-mdc-option-pseudo-checkbox,.mat-mdc-option.mdc-list-item--disabled .mdc-list-item__primary-text,.mat-mdc-option.mdc-list-item--disabled>mat-icon{opacity:.38}.mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:32px}[dir=rtl] .mat-mdc-optgroup .mat-mdc-option:not(.mat-mdc-option-multiple){padding-left:16px;padding-right:32px}.mat-mdc-option .mat-icon,.mat-mdc-option .mat-pseudo-checkbox-full{margin-right:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-icon,[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-full{margin-right:0;margin-left:16px}.mat-mdc-option .mat-pseudo-checkbox-minimal{margin-left:16px;flex-shrink:0}[dir=rtl] .mat-mdc-option .mat-pseudo-checkbox-minimal{margin-right:16px;margin-left:0}.mat-mdc-option .mat-mdc-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-mdc-option .mdc-list-item__primary-text{white-space:normal;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;font-family:inherit;text-decoration:inherit;text-transform:inherit;margin-right:auto}[dir=rtl] .mat-mdc-option .mdc-list-item__primary-text{margin-right:0;margin-left:auto}@media(forced-colors: active){.mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{content:"";position:absolute;top:50%;right:16px;transform:translateY(-50%);width:10px;height:0;border-bottom:solid 10px;border-radius:10px}[dir=rtl] .mat-mdc-option.mdc-list-item--selected:not(:has(.mat-mdc-option-pseudo-checkbox))::after{right:auto;left:16px}}.mat-mdc-option-multiple{--mat-list-list-item-selected-container-color: var(--mat-list-list-item-container-color, transparent)}.mat-mdc-option-active .mat-focus-indicator::before{content:""} +`],encapsulation:2,changeDetection:0})}return t})();function mS(t,A,e){if(e.length){let i=A.toArray(),n=e.toArray(),o=0;for(let a=0;ae+i?Math.max(0,t-i+A):e}var nV=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();var wS=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[o0,nV,es,bi]})}return t})();var h1e=["trigger"],u1e=["panel"],E1e=[[["mat-select-trigger"]],"*"],Q1e=["mat-select-trigger","*"];function p1e(t,A){if(t&1&&(I(0,"span",4),v(1),h()),t&2){let e=p();Q(),ne(e.placeholder)}}function m1e(t,A){t&1&&tt(0)}function f1e(t,A){if(t&1&&(I(0,"span",11),v(1),h()),t&2){let e=p(2);Q(),ne(e.triggerValue)}}function w1e(t,A){if(t&1&&(I(0,"span",5),T(1,m1e,1,0)(2,f1e,2,1,"span",11),h()),t&2){let e=p();Q(),O(e.customTrigger?1:2)}}function y1e(t,A){if(t&1){let e=ae();I(0,"div",12,1),U("keydown",function(n){L(e);let o=p();return G(o._handleKeydown(n))}),tt(2,1),h()}if(t&2){let e=p();Ao(e.panelClass),_e("mat-select-panel-animations-enabled",!e._animationsDisabled)("mat-primary",(e._parentFormField==null?null:e._parentFormField.color)==="primary")("mat-accent",(e._parentFormField==null?null:e._parentFormField.color)==="accent")("mat-warn",(e._parentFormField==null?null:e._parentFormField.color)==="warn")("mat-undefined",!(e._parentFormField!=null&&e._parentFormField.color)),aA("id",e.id+"-panel")("aria-multiselectable",e.multiple)("aria-label",e.ariaLabel||null)("aria-labelledby",e._getPanelAriaLabelledby())}}var v1e=new Me("mat-select-scroll-strategy",{providedIn:"root",factory:()=>{let t=w(Rt);return()=>IC(t)}}),D1e=new Me("MAT_SELECT_CONFIG"),b1e=new Me("MatSelectTrigger"),yS=class{source;value;constructor(A,e){this.source=A,this.value=e}},Ec=(()=>{class t{_viewportRuler=w(Ts);_changeDetectorRef=w(xt);_elementRef=w(dA);_dir=w(Fo,{optional:!0});_idGenerator=w(bn);_renderer=w(rn);_parentFormField=w(_Q,{optional:!0});ngControl=w(nl,{self:!0,optional:!0});_liveAnnouncer=w(wQ);_defaultOptions=w(D1e,{optional:!0});_animationsDisabled=hn();_popoverLocation;_initialized=new rA;_cleanupDetach;options;optionGroups;customTrigger;_positions=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:"mat-mdc-select-panel-above"}];_scrollOptionIntoView(e){let i=this.options.toArray()[e];if(i){let n=this.panel.nativeElement,o=mS(e,this.options,this.optionGroups),a=i._getHostElement();e===0&&o===1?n.scrollTop=0:n.scrollTop=fS(a.offsetTop,a.offsetHeight,n.scrollTop,n.offsetHeight)}}_positioningSettled(){this._scrollOptionIntoView(this._keyManager.activeItemIndex||0)}_getChangeEvent(e){return new yS(this,e)}_scrollStrategyFactory=w(v1e);_panelOpen=!1;_compareWith=(e,i)=>e===i;_uid=this._idGenerator.getId("mat-select-");_triggerAriaLabelledBy=null;_previousControl;_destroy=new rA;_errorStateTracker;stateChanges=new rA;disableAutomaticLabeling=!0;userAriaDescribedBy;_selectionModel;_keyManager;_preferredOverlayOrigin;_overlayWidth;_onChange=()=>{};_onTouched=()=>{};_valueId=this._idGenerator.getId("mat-select-value-");_scrollStrategy;_overlayPanelClass=this._defaultOptions?.overlayPanelClass||"";get focused(){return this._focused||this._panelOpen}_focused=!1;controlType="mat-select";trigger;panel;_overlayDir;panelClass;disabled=!1;get disableRipple(){return this._disableRipple()}set disableRipple(e){this._disableRipple.set(e)}_disableRipple=fe(!1);tabIndex=0;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncParentProperties()}_hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get placeholder(){return this._placeholder}set placeholder(e){this._placeholder=e,this.stateChanges.next()}_placeholder;get required(){return this._required??this.ngControl?.control?.hasValidator(il.required)??!1}set required(e){this._required=e,this.stateChanges.next()}_required;get multiple(){return this._multiple}set multiple(e){this._selectionModel,this._multiple=e}_multiple=!1;disableOptionCentering=this._defaultOptions?.disableOptionCentering??!1;get compareWith(){return this._compareWith}set compareWith(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(e){this._assignValue(e)&&this._onChange(e)}_value;ariaLabel="";ariaLabelledby;get errorStateMatcher(){return this._errorStateTracker.matcher}set errorStateMatcher(e){this._errorStateTracker.matcher=e}typeaheadDebounceInterval;sortComparator;get id(){return this._id}set id(e){this._id=e||this._uid,this.stateChanges.next()}_id;get errorState(){return this._errorStateTracker.errorState}set errorState(e){this._errorStateTracker.errorState=e}panelWidth=this._defaultOptions&&typeof this._defaultOptions.panelWidth<"u"?this._defaultOptions.panelWidth:"auto";canSelectNullableOptions=this._defaultOptions?.canSelectNullableOptions??!1;optionSelectionChanges=Zg(()=>{let e=this.options;return e?e.changes.pipe(Yn(e),ki(()=>Zi(...e.map(i=>i.onSelectionChange)))):this._initialized.pipe(ki(()=>this.optionSelectionChanges))});openedChange=new Le;_openedStream=this.openedChange.pipe(pt(e=>e),xA(()=>{}));_closedStream=this.openedChange.pipe(pt(e=>!e),xA(()=>{}));selectionChange=new Le;valueChange=new Le;constructor(){let e=w(bB),i=w(EB,{optional:!0}),n=w(ud,{optional:!0}),o=w(new $s("tabindex"),{optional:!0}),a=w(Cp,{optional:!0});this.ngControl&&(this.ngControl.valueAccessor=this),this._defaultOptions?.typeaheadDebounceInterval!=null&&(this.typeaheadDebounceInterval=this._defaultOptions.typeaheadDebounceInterval),this._errorStateTracker=new MB(e,this.ngControl,n,i,this.stateChanges),this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=o==null?0:parseInt(o)||0,this._popoverLocation=a?.usePopover===!1?null:"inline",this.id=this.id}ngOnInit(){this._selectionModel=new CC(this.multiple),this.stateChanges.next(),this._viewportRuler.change().pipe(Mt(this._destroy)).subscribe(()=>{this.panelOpen&&(this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._changeDetectorRef.detectChanges())})}ngAfterContentInit(){this._initialized.next(),this._initialized.complete(),this._initKeyManager(),this._selectionModel.changed.pipe(Mt(this._destroy)).subscribe(e=>{e.added.forEach(i=>i.select()),e.removed.forEach(i=>i.deselect())}),this.options.changes.pipe(Yn(null),Mt(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){let e=this._getTriggerAriaLabelledby(),i=this.ngControl;if(e!==this._triggerAriaLabelledBy){let n=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?n.setAttribute("aria-labelledby",e):n.removeAttribute("aria-labelledby")}i&&(this._previousControl!==i.control&&(this._previousControl!==void 0&&i.disabled!==null&&i.disabled!==this.disabled&&(this.disabled=i.disabled),this._previousControl=i.control),this.updateErrorState())}ngOnChanges(e){(e.disabled||e.userAriaDescribedBy)&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this.typeaheadDebounceInterval),e.panelClass&&this.panelClass instanceof Set&&(this.panelClass=Array.from(this.panelClass))}ngOnDestroy(){this._cleanupDetach?.(),this._keyManager?.destroy(),this._destroy.next(),this._destroy.complete(),this.stateChanges.complete(),this._clearFromModal()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._parentFormField&&(this._preferredOverlayOrigin=this._parentFormField.getConnectedOverlayOrigin()),this._cleanupDetach?.(),this._overlayWidth=this._getOverlayWidth(this._preferredOverlayOrigin),this._applyModalPanelOwnership(),this._panelOpen=!0,this._overlayDir.positionChange.pipe(No(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()}),this._overlayDir.attachOverlay(),this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!0)))}_trackedModal=null;_applyModalPanelOwnership(){let e=this._elementRef.nativeElement.closest('body > .cdk-overlay-container [aria-modal="true"]');if(!e)return;let i=`${this.id}-panel`;this._trackedModal&&p3(this._trackedModal,"aria-owns",i),_M(e,"aria-owns",i),this._trackedModal=e}_clearFromModal(){if(!this._trackedModal)return;let e=`${this.id}-panel`;p3(this._trackedModal,"aria-owns",e),this._trackedModal=null}close(){this._panelOpen&&(this._panelOpen=!1,this._exitAndDetach(),this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched(),this.stateChanges.next(),Promise.resolve().then(()=>this.openedChange.emit(!1)))}_exitAndDetach(){if(this._animationsDisabled||!this.panel){this._detachOverlay();return}this._cleanupDetach?.(),this._cleanupDetach=()=>{i(),clearTimeout(n),this._cleanupDetach=void 0};let e=this.panel.nativeElement,i=this._renderer.listen(e,"animationend",o=>{o.animationName==="_mat-select-exit"&&(this._cleanupDetach?.(),this._detachOverlay())}),n=setTimeout(()=>{this._cleanupDetach?.(),this._detachOverlay()},200);e.classList.add("mat-select-panel-exit")}_detachOverlay(){this._overlayDir.detachOverlay(),this._changeDetectorRef.markForCheck()}writeValue(e){this._assignValue(e)}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel?.selected||[]:this._selectionModel?.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){let e=this._selectionModel.selected.map(i=>i.viewValue);return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}updateErrorState(){this._errorStateTracker.updateErrorState()}_isRtl(){return this._dir?this._dir.value==="rtl":!1}_handleKeydown(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}_handleClosedKeydown(e){let i=e.keyCode,n=i===40||i===38||i===37||i===39,o=i===13||i===32,a=this._keyManager;if(!a.isTyping()&&o&&!Na(e)||(this.multiple||e.altKey)&&n)e.preventDefault(),this.open();else if(!this.multiple){let r=this.selected;a.onKeydown(e);let s=this.selected;s&&r!==s&&this._liveAnnouncer.announce(s.viewValue,1e4)}}_handleOpenKeydown(e){let i=this._keyManager,n=e.keyCode,o=n===40||n===38,a=i.isTyping();if(o&&e.altKey)e.preventDefault(),this.close();else if(!a&&(n===13||n===32)&&i.activeItem&&!Na(e))e.preventDefault(),i.activeItem._selectViaInteraction();else if(!a&&this._multiple&&n===65&&e.ctrlKey){e.preventDefault();let r=this.options.some(s=>!s.disabled&&!s.selected);this.options.forEach(s=>{s.disabled||(r?s.select():s.deselect())})}else{let r=i.activeItemIndex;i.onKeydown(e),this._multiple&&o&&e.shiftKey&&i.activeItem&&i.activeItemIndex!==r&&i.activeItem._selectViaInteraction()}}_handleOverlayKeydown(e){e.keyCode===27&&!Na(e)&&(e.preventDefault(),this.close())}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,this._keyManager?.cancelTypeahead(),!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this.ngControl&&(this._value=this.ngControl.value),this._setSelectionByValue(this._value),this.stateChanges.next()})}_setSelectionByValue(e){if(this.options.forEach(i=>i.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(i=>this._selectOptionByValue(i)),this._sortValues();else{let i=this._selectOptionByValue(e);i?this._keyManager.updateActiveItem(i):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectOptionByValue(e){let i=this.options.find(n=>{if(this._selectionModel.isSelected(n))return!1;try{return(n.value!=null||this.canSelectNullableOptions)&&this._compareWith(n.value,e)}catch(o){return!1}});return i&&this._selectionModel.select(i),i}_assignValue(e){return e!==this._value||this._multiple&&Array.isArray(e)?(this.options&&this._setSelectionByValue(e),this._value=e,!0):!1}_skipPredicate=e=>this.panelOpen?!1:e.disabled;_getOverlayWidth(e){return this.panelWidth==="auto"?(e instanceof ZB?e.elementRef:e||this._elementRef).nativeElement.getBoundingClientRect().width:this.panelWidth===null?"":this.panelWidth}_syncParentProperties(){if(this.options)for(let e of this.options)e._changeDetectorRef.markForCheck()}_initKeyManager(){this._keyManager=new vQ(this.options).withTypeAhead(this.typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withPageUpDown().withAllowedModifierKeys(["shiftKey"]).skipPredicate(this._skipPredicate),this._keyManager.tabOut.subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){let e=Zi(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(Mt(e)).subscribe(i=>{this._onSelect(i.source,i.isUserInput),i.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Zi(...this.options.map(i=>i._stateChanges)).pipe(Mt(e)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this.stateChanges.next()})}_onSelect(e,i){let n=this._selectionModel.isSelected(e);!this.canSelectNullableOptions&&e.value==null&&!this._multiple?(e.deselect(),this._selectionModel.clear(),this.value!=null&&this._propagateChanges(e.value)):(n!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),i&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),i&&this.focus())),n!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){let e=this.options.toArray();this._selectionModel.sort((i,n)=>this.sortComparator?this.sortComparator(i,n,e):e.indexOf(i)-e.indexOf(n)),this.stateChanges.next()}}_propagateChanges(e){let i;this.multiple?i=this.selected.map(n=>n.value):i=this.selected?this.selected.value:e,this._value=i,this.valueChange.emit(i),this._onChange(i),this.selectionChange.emit(this._getChangeEvent(i)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){if(this._keyManager)if(this.empty){let e=-1;for(let i=0;i0&&!!this._overlayDir}focus(e){this._elementRef.nativeElement.focus(e)}_getPanelAriaLabelledby(){if(this.ariaLabel)return null;let e=this._parentFormField?.getLabelId()||null,i=e?e+" ":"";return this.ariaLabelledby?i+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){if(this.ariaLabel)return null;let e=this._parentFormField?.getLabelId()||"";return this.ariaLabelledby&&(e+=" "+this.ariaLabelledby),e||(e=this._valueId),e}get describedByIds(){return this._elementRef.nativeElement.getAttribute("aria-describedby")?.split(" ")||[]}setDescribedByIds(e){let i=this._elementRef.nativeElement;e.length?i.setAttribute("aria-describedby",e.join(" ")):i.removeAttribute("aria-describedby")}onContainerClick(e){let i=Xr(e);i&&(i.tagName==="MAT-OPTION"||i.classList.contains("cdk-overlay-backdrop")||i.closest(".mat-mdc-select-panel"))||(this.focus(),this.open())}get shouldLabelFloat(){return this.panelOpen||!this.empty||this.focused&&!!this.placeholder}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-select"]],contentQueries:function(i,n,o){if(i&1&&ga(o,b1e,5)(o,es,5)(o,$6,5),i&2){let a;cA(a=gA())&&(n.customTrigger=a.first),cA(a=gA())&&(n.options=a),cA(a=gA())&&(n.optionGroups=a)}},viewQuery:function(i,n){if(i&1&&$t(h1e,5)(u1e,5)(Y6,5),i&2){let o;cA(o=gA())&&(n.trigger=o.first),cA(o=gA())&&(n.panel=o.first),cA(o=gA())&&(n._overlayDir=o.first)}},hostAttrs:["role","combobox","aria-haspopup","listbox",1,"mat-mdc-select"],hostVars:21,hostBindings:function(i,n){i&1&&U("keydown",function(a){return n._handleKeydown(a)})("focus",function(){return n._onFocus()})("blur",function(){return n._onBlur()}),i&2&&(aA("id",n.id)("tabindex",n.disabled?-1:n.tabIndex)("aria-controls",n.panelOpen?n.id+"-panel":null)("aria-expanded",n.panelOpen)("aria-label",n.ariaLabel||null)("aria-required",n.required.toString())("aria-disabled",n.disabled.toString())("aria-invalid",n.errorState)("aria-activedescendant",n._getAriaActiveDescendant()),_e("mat-mdc-select-disabled",n.disabled)("mat-mdc-select-invalid",n.errorState)("mat-mdc-select-required",n.required)("mat-mdc-select-empty",n.empty)("mat-mdc-select-multiple",n.multiple)("mat-select-open",n.panelOpen))},inputs:{userAriaDescribedBy:[0,"aria-describedby","userAriaDescribedBy"],panelClass:"panelClass",disabled:[2,"disabled","disabled",mA],disableRipple:[2,"disableRipple","disableRipple",mA],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:Dn(e)],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",mA],placeholder:"placeholder",required:[2,"required","required",mA],multiple:[2,"multiple","multiple",mA],disableOptionCentering:[2,"disableOptionCentering","disableOptionCentering",mA],compareWith:"compareWith",value:"value",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",typeaheadDebounceInterval:[2,"typeaheadDebounceInterval","typeaheadDebounceInterval",Dn],sortComparator:"sortComparator",id:"id",panelWidth:"panelWidth",canSelectNullableOptions:[2,"canSelectNullableOptions","canSelectNullableOptions",mA]},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},exportAs:["matSelect"],features:[yt([{provide:kQ,useExisting:t},{provide:X6,useExisting:t}]),ai],ngContentSelectors:Q1e,decls:11,vars:10,consts:[["fallbackOverlayOrigin","cdkOverlayOrigin","trigger",""],["panel",""],["cdk-overlay-origin","",1,"mat-mdc-select-trigger",3,"click"],[1,"mat-mdc-select-value"],[1,"mat-mdc-select-placeholder","mat-mdc-select-min-line"],[1,"mat-mdc-select-value-text"],[1,"mat-mdc-select-arrow-wrapper"],[1,"mat-mdc-select-arrow"],["viewBox","0 0 24 24","width","24px","height","24px","focusable","false","aria-hidden","true"],["d","M7 10l5 5 5-5z"],["cdk-connected-overlay","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"detach","backdropClick","overlayKeydown","cdkConnectedOverlayDisableClose","cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayPositions","cdkConnectedOverlayWidth","cdkConnectedOverlayFlexibleDimensions","cdkConnectedOverlayUsePopover"],[1,"mat-mdc-select-min-line"],["role","listbox","tabindex","-1",1,"mat-mdc-select-panel","mdc-menu-surface","mdc-menu-surface--open",3,"keydown"]],template:function(i,n){if(i&1&&(Yt(E1e),I(0,"div",2,0),U("click",function(){return n.open()}),I(3,"div",3),T(4,p1e,2,1,"span",4)(5,w1e,3,1,"span",5),h(),I(6,"div",6)(7,"div",7),mt(),I(8,"svg",8),le(9,"path",9),h()()()(),Nt(10,y1e,3,16,"ng-template",10),U("detach",function(){return n.close()})("backdropClick",function(){return n.close()})("overlayKeydown",function(a){return n._handleOverlayKeydown(a)})),i&2){let o=Ei(1);Q(3),aA("id",n._valueId),Q(),O(n.empty?4:5),Q(6),H("cdkConnectedOverlayDisableClose",!0)("cdkConnectedOverlayPanelClass",n._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",n._scrollStrategy)("cdkConnectedOverlayOrigin",n._preferredOverlayOrigin||o)("cdkConnectedOverlayPositions",n._positions)("cdkConnectedOverlayWidth",n._overlayWidth)("cdkConnectedOverlayFlexibleDimensions",!0)("cdkConnectedOverlayUsePopover",n._popoverLocation)}},dependencies:[ZB,Y6],styles:[`@keyframes _mat-select-enter{from{opacity:0;transform:scaleY(0.8)}to{opacity:1;transform:none}}@keyframes _mat-select-exit{from{opacity:1}to{opacity:0}}.mat-mdc-select{display:inline-block;width:100%;outline:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-select-enabled-trigger-text-color, var(--mat-sys-on-surface));font-family:var(--mat-select-trigger-text-font, var(--mat-sys-body-large-font));line-height:var(--mat-select-trigger-text-line-height, var(--mat-sys-body-large-line-height));font-size:var(--mat-select-trigger-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-select-trigger-text-weight, var(--mat-sys-body-large-weight));letter-spacing:var(--mat-select-trigger-text-tracking, var(--mat-sys-body-large-tracking))}div.mat-mdc-select-panel{box-shadow:var(--mat-select-container-elevation-shadow, 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12))}.mat-mdc-select-disabled{color:var(--mat-select-disabled-trigger-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-select-disabled .mat-mdc-select-placeholder{color:var(--mat-select-disabled-trigger-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-mdc-select-trigger{display:inline-flex;align-items:center;cursor:pointer;position:relative;box-sizing:border-box;width:100%}.mat-mdc-select-disabled .mat-mdc-select-trigger{-webkit-user-select:none;user-select:none;cursor:default}.mat-mdc-select-value{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-mdc-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-mdc-select-arrow-wrapper{height:24px;flex-shrink:0;display:inline-flex;align-items:center}.mat-form-field-appearance-fill .mdc-text-field--no-label .mat-mdc-select-arrow-wrapper{transform:none}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-invalid .mat-mdc-select-arrow,.mat-form-field-invalid:not(.mat-form-field-disabled) .mat-mdc-form-field-infix::after{color:var(--mat-select-invalid-arrow-color, var(--mat-sys-error))}.mat-mdc-select-arrow{width:10px;height:5px;position:relative;color:var(--mat-select-enabled-arrow-color, var(--mat-sys-on-surface-variant))}.mat-mdc-form-field.mat-focused .mat-mdc-select-arrow{color:var(--mat-select-focused-arrow-color, var(--mat-sys-primary))}.mat-mdc-form-field .mat-mdc-select.mat-mdc-select-disabled .mat-mdc-select-arrow{color:var(--mat-select-disabled-arrow-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-select-open .mat-mdc-select-arrow{transform:rotate(180deg)}.mat-form-field-animations-enabled .mat-mdc-select-arrow{transition:transform 80ms linear}.mat-mdc-select-arrow svg{fill:currentColor;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}@media(forced-colors: active){.mat-mdc-select-arrow svg{fill:CanvasText}.mat-mdc-select-disabled .mat-mdc-select-arrow svg{fill:GrayText}}div.mat-mdc-select-panel{width:100%;max-height:275px;outline:0;overflow:auto;padding:8px 0;border-radius:4px;box-sizing:border-box;position:relative;background-color:var(--mat-select-panel-background-color, var(--mat-sys-surface-container))}@media(forced-colors: active){div.mat-mdc-select-panel{outline:solid 1px}}.cdk-overlay-pane:not(.mat-mdc-select-panel-above) div.mat-mdc-select-panel{border-top-left-radius:0;border-top-right-radius:0;transform-origin:top center}.mat-mdc-select-panel-above div.mat-mdc-select-panel{border-bottom-left-radius:0;border-bottom-right-radius:0;transform-origin:bottom center}.mat-select-panel-animations-enabled{animation:_mat-select-enter 120ms cubic-bezier(0, 0, 0.2, 1)}.mat-select-panel-animations-enabled.mat-select-panel-exit{animation:_mat-select-exit 100ms linear}.mat-mdc-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1);color:var(--mat-select-placeholder-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-form-field:not(.mat-form-field-animations-enabled) .mat-mdc-select-placeholder,._mat-animation-noopable .mat-mdc-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-mdc-select-placeholder{color:rgba(0,0,0,0);-webkit-text-fill-color:rgba(0,0,0,0);transition:none;display:block}.mat-mdc-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-mdc-text-field-wrapper{cursor:pointer}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mat-mdc-floating-label{max-width:calc(100% - 18px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-fill .mdc-floating-label--float-above{max-width:calc(100%/0.75 - 24px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-notched-outline__notch{max-width:calc(100% - 60px)}.mat-mdc-form-field-type-mat-select.mat-form-field-appearance-outline .mdc-text-field--label-floating .mdc-notched-outline__notch{max-width:calc(100% - 24px)}.mat-mdc-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;visibility:hidden}.mat-form-field-appearance-fill .mat-mdc-select-arrow-wrapper{transform:var(--mat-select-arrow-transform, translateY(-8px))} +`],encapsulation:2,changeDetection:0})}return t})();var hC=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[hc,wS,bi,g0,ir,wS]})}return t})();var M1e=["tooltip"],S1e=20;var k1e=new Me("mat-tooltip-scroll-strategy",{providedIn:"root",factory:()=>{let t=w(Rt);return()=>IC(t,{scrollThrottle:S1e})}}),_1e=new Me("mat-tooltip-default-options",{providedIn:"root",factory:()=>({showDelay:0,hideDelay:0,touchendHideDelay:1500})});var aV="tooltip-panel",x1e={passive:!0},R1e=8,N1e=8,F1e=24,L1e=200,ln=(()=>{class t{_elementRef=w(dA);_ngZone=w(At);_platform=w(pi);_ariaDescriber=w(DY);_focusMonitor=w(dr);_dir=w(Fo);_injector=w(Rt);_viewContainerRef=w(Yo);_mediaMatcher=w(mB);_document=w(Ii);_renderer=w(rn);_animationsDisabled=hn();_defaultOptions=w(_1e,{optional:!0});_overlayRef=null;_tooltipInstance=null;_overlayPanelClass;_portal;_position="below";_positionAtOrigin=!1;_disabled=!1;_tooltipClass;_viewInitialized=!1;_pointerExitEventsInitialized=!1;_tooltipComponent=rV;_viewportMargin=8;_currentPosition;_cssClassPrefix="mat-mdc";_ariaDescriptionPending=!1;_dirSubscribed=!1;get position(){return this._position}set position(e){e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),this._tooltipInstance?.show(0),this._overlayRef.updatePosition()))}get positionAtOrigin(){return this._positionAtOrigin}set positionAtOrigin(e){this._positionAtOrigin=Lr(e),this._detach(),this._overlayRef=null}get disabled(){return this._disabled}set disabled(e){let i=Lr(e);this._disabled!==i&&(this._disabled=i,i?this.hide(0):this._setupPointerEnterEventsIfNeeded(),this._syncAriaDescription(this.message))}get showDelay(){return this._showDelay}set showDelay(e){this._showDelay=ol(e)}_showDelay;get hideDelay(){return this._hideDelay}set hideDelay(e){this._hideDelay=ol(e),this._tooltipInstance&&(this._tooltipInstance._mouseLeaveHideDelay=this._hideDelay)}_hideDelay;touchGestures="auto";get message(){return this._message}set message(e){let i=this._message;this._message=e!=null?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage()),this._syncAriaDescription(i)}_message="";get tooltipClass(){return this._tooltipClass}set tooltipClass(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}_eventCleanups=[];_touchstartTimeout=null;_destroyed=new rA;_isDestroyed=!1;constructor(){let e=this._defaultOptions;e&&(this._showDelay=e.showDelay,this._hideDelay=e.hideDelay,e.position&&(this.position=e.position),e.positionAtOrigin&&(this.positionAtOrigin=e.positionAtOrigin),e.touchGestures&&(this.touchGestures=e.touchGestures),e.tooltipClass&&(this.tooltipClass=e.tooltipClass)),this._viewportMargin=R1e}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(Mt(this._destroyed)).subscribe(e=>{e?e==="keyboard"&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){let e=this._elementRef.nativeElement;this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),this._eventCleanups.forEach(i=>i()),this._eventCleanups.length=0,this._destroyed.next(),this._destroyed.complete(),this._isDestroyed=!0,this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}show(e=this.showDelay,i){if(this.disabled||!this.message||this._isTooltipVisible()){this._tooltipInstance?._cancelPendingAnimations();return}let n=this._createOverlay(i);this._detach(),this._portal=this._portal||new Os(this._tooltipComponent,this._viewContainerRef);let o=this._tooltipInstance=n.attach(this._portal).instance;o._triggerElement=this._elementRef.nativeElement,o._mouseLeaveHideDelay=this._hideDelay,o.afterHidden().pipe(Mt(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),o.show(e)}hide(e=this.hideDelay){let i=this._tooltipInstance;i&&(i.isVisible()?i.hide(e):(i._cancelPendingAnimations(),this._detach()))}toggle(e){this._isTooltipVisible()?this.hide():this.show(void 0,e)}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(e){if(this._overlayRef){let a=this._overlayRef.getConfig().positionStrategy;if((!this.positionAtOrigin||!e)&&a._origin instanceof dA)return this._overlayRef;this._detach()}let i=this._injector.get(C0).getAncestorScrollContainers(this._elementRef),n=`${this._cssClassPrefix}-${aV}`,o=FI(this._injector,this.positionAtOrigin?e||this._elementRef:this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(i).withPopoverLocation("global");return o.positionChanges.pipe(Mt(this._destroyed)).subscribe(a=>{this._updateCurrentPositionClass(a.connectionPair),this._tooltipInstance&&a.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=rg(this._injector,{direction:this._dir,positionStrategy:o,panelClass:this._overlayPanelClass?[...this._overlayPanelClass,n]:n,scrollStrategy:this._injector.get(k1e)(),disableAnimations:this._animationsDisabled,eventPredicate:this._overlayEventPredicate}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(Mt(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(Mt(this._destroyed)).subscribe(()=>this._tooltipInstance?._handleBodyInteraction()),this._overlayRef.keydownEvents().pipe(Mt(this._destroyed)).subscribe(a=>{a.preventDefault(),a.stopPropagation(),this._ngZone.run(()=>this.hide(0))}),this._defaultOptions?.disableTooltipInteractivity&&this._overlayRef.addPanelClass(`${this._cssClassPrefix}-tooltip-panel-non-interactive`),this._dirSubscribed||(this._dirSubscribed=!0,this._dir.change.pipe(Mt(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)})),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(e){let i=e.getConfig().positionStrategy,n=this._getOrigin(),o=this._getOverlayPosition();i.withPositions([this._addOffset(Y(Y({},n.main),o.main)),this._addOffset(Y(Y({},n.fallback),o.fallback))])}_addOffset(e){let i=N1e,n=!this._dir||this._dir.value=="ltr";return e.originY==="top"?e.offsetY=-i:e.originY==="bottom"?e.offsetY=i:e.originX==="start"?e.offsetX=n?-i:i:e.originX==="end"&&(e.offsetX=n?i:-i),e}_getOrigin(){let e=!this._dir||this._dir.value=="ltr",i=this.position,n;i=="above"||i=="below"?n={originX:"center",originY:i=="above"?"top":"bottom"}:i=="before"||i=="left"&&e||i=="right"&&!e?n={originX:"start",originY:"center"}:(i=="after"||i=="right"&&e||i=="left"&&!e)&&(n={originX:"end",originY:"center"});let{x:o,y:a}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:o,originY:a}}}_getOverlayPosition(){let e=!this._dir||this._dir.value=="ltr",i=this.position,n;i=="above"?n={overlayX:"center",overlayY:"bottom"}:i=="below"?n={overlayX:"center",overlayY:"top"}:i=="before"||i=="left"&&e||i=="right"&&!e?n={overlayX:"end",overlayY:"center"}:(i=="after"||i=="right"&&e||i=="left"&&!e)&&(n={overlayX:"start",overlayY:"center"});let{x:o,y:a}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:o,overlayY:a}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),ro(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()},{injector:this._injector}))}_setTooltipClass(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e instanceof Set?Array.from(e):e,this._tooltipInstance._markForCheck())}_invertPosition(e,i){return this.position==="above"||this.position==="below"?i==="top"?i="bottom":i==="bottom"&&(i="top"):e==="end"?e="start":e==="start"&&(e="end"),{x:e,y:i}}_updateCurrentPositionClass(e){let{overlayY:i,originX:n,originY:o}=e,a;if(i==="center"?this._dir&&this._dir.value==="rtl"?a=n==="end"?"left":"right":a=n==="start"?"left":"right":a=i==="bottom"&&o==="top"?"above":"below",a!==this._currentPosition){let r=this._overlayRef;if(r){let s=`${this._cssClassPrefix}-${aV}-`;r.removePanelClass(s+this._currentPosition),r.addPanelClass(s+a)}this._currentPosition=a}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._eventCleanups.length||(this._isTouchPlatform()?this.touchGestures!=="off"&&(this._disableNativeGesturesIfNecessary(),this._addListener("touchstart",e=>{let i=e.targetTouches?.[0],n=i?{x:i.clientX,y:i.clientY}:void 0;this._setupPointerExitEventsIfNeeded(),this._touchstartTimeout&&clearTimeout(this._touchstartTimeout);let o=500;this._touchstartTimeout=setTimeout(()=>{this._touchstartTimeout=null,this.show(void 0,n)},this._defaultOptions?.touchLongPressShowDelay??o)})):this._addListener("mouseenter",e=>{this._setupPointerExitEventsIfNeeded();let i;e.x!==void 0&&e.y!==void 0&&(i=e),this.show(void 0,i)}))}_setupPointerExitEventsIfNeeded(){if(!this._pointerExitEventsInitialized){if(this._pointerExitEventsInitialized=!0,!this._isTouchPlatform())this._addListener("mouseleave",e=>{let i=e.relatedTarget;(!i||!this._overlayRef?.overlayElement.contains(i))&&this.hide()}),this._addListener("wheel",e=>{if(this._isTooltipVisible()){let i=this._document.elementFromPoint(e.clientX,e.clientY),n=this._elementRef.nativeElement;i!==n&&!n.contains(i)&&this.hide()}});else if(this.touchGestures!=="off"){this._disableNativeGesturesIfNecessary();let e=()=>{this._touchstartTimeout&&clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions?.touchendHideDelay)};this._addListener("touchend",e),this._addListener("touchcancel",e)}}}_addListener(e,i){this._eventCleanups.push(this._renderer.listen(this._elementRef.nativeElement,e,i,x1e))}_isTouchPlatform(){return this._platform.IOS||this._platform.ANDROID?!0:this._platform.isBrowser?!!this._defaultOptions?.detectHoverCapability&&this._mediaMatcher.matchMedia("(any-hover: none)").matches:!1}_disableNativeGesturesIfNecessary(){let e=this.touchGestures;if(e!=="off"){let i=this._elementRef.nativeElement,n=i.style;(e==="on"||i.nodeName!=="INPUT"&&i.nodeName!=="TEXTAREA")&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),(e==="on"||!i.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}_syncAriaDescription(e){this._ariaDescriptionPending||(this._ariaDescriptionPending=!0,this._ariaDescriber.removeDescription(this._elementRef.nativeElement,e,"tooltip"),this._isDestroyed||ro({write:()=>{this._ariaDescriptionPending=!1,this.message&&!this.disabled&&this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")}},{injector:this._injector}))}_overlayEventPredicate=e=>e.type==="keydown"?this._isTooltipVisible()&&e.keyCode===27&&!Na(e):!0;static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-mdc-tooltip-trigger"],hostVars:2,hostBindings:function(i,n){i&2&&_e("mat-mdc-tooltip-disabled",n.disabled)},inputs:{position:[0,"matTooltipPosition","position"],positionAtOrigin:[0,"matTooltipPositionAtOrigin","positionAtOrigin"],disabled:[0,"matTooltipDisabled","disabled"],showDelay:[0,"matTooltipShowDelay","showDelay"],hideDelay:[0,"matTooltipHideDelay","hideDelay"],touchGestures:[0,"matTooltipTouchGestures","touchGestures"],message:[0,"matTooltip","message"],tooltipClass:[0,"matTooltipClass","tooltipClass"]},exportAs:["matTooltip"]})}return t})(),rV=(()=>{class t{_changeDetectorRef=w(xt);_elementRef=w(dA);_isMultiline=!1;message;tooltipClass;_showTimeoutId;_hideTimeoutId;_triggerElement;_mouseLeaveHideDelay;_animationsDisabled=hn();_tooltip;_closeOnInteraction=!1;_isVisible=!1;_onHide=new rA;_showAnimation="mat-mdc-tooltip-show";_hideAnimation="mat-mdc-tooltip-hide";constructor(){}show(e){this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=setTimeout(()=>{this._toggleVisibility(!0),this._showTimeoutId=void 0},e)}hide(e){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._toggleVisibility(!1),this._hideTimeoutId=void 0},e)}afterHidden(){return this._onHide}isVisible(){return this._isVisible}ngOnDestroy(){this._cancelPendingAnimations(),this._onHide.complete(),this._triggerElement=null}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_handleMouseLeave({relatedTarget:e}){(!e||!this._triggerElement.contains(e))&&(this.isVisible()?this.hide(this._mouseLeaveHideDelay):this._finalizeAnimation(!1))}_onShow(){this._isMultiline=this._isTooltipMultiline(),this._markForCheck()}_isTooltipMultiline(){let e=this._elementRef.nativeElement.getBoundingClientRect();return e.height>F1e&&e.width>=L1e}_handleAnimationEnd({animationName:e}){(e===this._showAnimation||e===this._hideAnimation)&&this._finalizeAnimation(e===this._showAnimation)}_cancelPendingAnimations(){this._showTimeoutId!=null&&clearTimeout(this._showTimeoutId),this._hideTimeoutId!=null&&clearTimeout(this._hideTimeoutId),this._showTimeoutId=this._hideTimeoutId=void 0}_finalizeAnimation(e){e?this._closeOnInteraction=!0:this.isVisible()||this._onHide.next()}_toggleVisibility(e){let i=this._tooltip.nativeElement,n=this._showAnimation,o=this._hideAnimation;if(i.classList.remove(e?o:n),i.classList.add(e?n:o),this._isVisible!==e&&(this._isVisible=e,this._changeDetectorRef.markForCheck()),e&&!this._animationsDisabled&&typeof getComputedStyle=="function"){let a=getComputedStyle(i);(a.getPropertyValue("animation-duration")==="0s"||a.getPropertyValue("animation-name")==="none")&&(this._animationsDisabled=!0)}e&&this._onShow(),this._animationsDisabled&&(i.classList.add("_mat-animation-noopable"),this._finalizeAnimation(e))}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-tooltip-component"]],viewQuery:function(i,n){if(i&1&&$t(M1e,7),i&2){let o;cA(o=gA())&&(n._tooltip=o.first)}},hostAttrs:["aria-hidden","true"],hostBindings:function(i,n){i&1&&U("mouseleave",function(a){return n._handleMouseLeave(a)})},decls:4,vars:5,consts:[["tooltip",""],[1,"mdc-tooltip","mat-mdc-tooltip",3,"animationend"],[1,"mat-mdc-tooltip-surface","mdc-tooltip__surface"]],template:function(i,n){i&1&&(Gn(0,"div",1,0),rB("animationend",function(a){return n._handleAnimationEnd(a)}),Gn(2,"div",2),v(3),$n()()),i&2&&(Ao(n.tooltipClass),_e("mdc-tooltip--multiline",n._isMultiline),Q(3),ne(n.message))},styles:[`.mat-mdc-tooltip{position:relative;transform:scale(0);display:inline-flex}.mat-mdc-tooltip::before{content:"";top:0;right:0;bottom:0;left:0;z-index:-1;position:absolute}.mat-mdc-tooltip-panel-below .mat-mdc-tooltip::before{top:-8px}.mat-mdc-tooltip-panel-above .mat-mdc-tooltip::before{bottom:-8px}.mat-mdc-tooltip-panel-right .mat-mdc-tooltip::before{left:-8px}.mat-mdc-tooltip-panel-left .mat-mdc-tooltip::before{right:-8px}.mat-mdc-tooltip._mat-animation-noopable{animation:none;transform:scale(1)}.mat-mdc-tooltip-surface{word-break:normal;overflow-wrap:anywhere;padding:4px 8px;min-width:40px;max-width:200px;min-height:24px;max-height:40vh;box-sizing:border-box;overflow:hidden;text-align:center;will-change:transform,opacity;background-color:var(--mat-tooltip-container-color, var(--mat-sys-inverse-surface));color:var(--mat-tooltip-supporting-text-color, var(--mat-sys-inverse-on-surface));border-radius:var(--mat-tooltip-container-shape, var(--mat-sys-corner-extra-small));font-family:var(--mat-tooltip-supporting-text-font, var(--mat-sys-body-small-font));font-size:var(--mat-tooltip-supporting-text-size, var(--mat-sys-body-small-size));font-weight:var(--mat-tooltip-supporting-text-weight, var(--mat-sys-body-small-weight));line-height:var(--mat-tooltip-supporting-text-line-height, var(--mat-sys-body-small-line-height));letter-spacing:var(--mat-tooltip-supporting-text-tracking, var(--mat-sys-body-small-tracking))}.mat-mdc-tooltip-surface::before{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;border:1px solid rgba(0,0,0,0);border-radius:inherit;content:"";pointer-events:none}.mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:left}[dir=rtl] .mdc-tooltip--multiline .mat-mdc-tooltip-surface{text-align:right}.mat-mdc-tooltip-panel{line-height:normal}.mat-mdc-tooltip-panel.mat-mdc-tooltip-panel-non-interactive{pointer-events:none}@keyframes mat-mdc-tooltip-show{0%{opacity:0;transform:scale(0.8)}100%{opacity:1;transform:scale(1)}}@keyframes mat-mdc-tooltip-hide{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(0.8)}}.mat-mdc-tooltip-show{animation:mat-mdc-tooltip-show 150ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-mdc-tooltip-hide{animation:mat-mdc-tooltip-hide 75ms cubic-bezier(0.4, 0, 1, 1) forwards} +`],encapsulation:2,changeDetection:0})}return t})();var qa=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[yQ,hc,bi,g0]})}return t})();function G1e(t,A){if(t&1&&(I(0,"mat-option",17),v(1),h()),t&2){let e=A.$implicit;H("value",e),Q(),pA(" ",e," ")}}function K1e(t,A){if(t&1){let e=ae();I(0,"mat-form-field",14)(1,"mat-select",16,0),U("selectionChange",function(n){L(e);let o=p(2);return G(o._changePageSize(n.value))}),RA(3,G1e,2,2,"mat-option",17,ri),h(),I(5,"div",18),U("click",function(){L(e);let n=Ei(2);return G(n.open())}),h()()}if(t&2){let e=p(2);H("appearance",e._formFieldAppearance)("color",e.color),Q(),H("value",e.pageSize)("disabled",e.disabled),Hf("aria-labelledby",e._pageSizeLabelId),H("panelClass",e.selectConfig.panelClass||"")("disableOptionCentering",e.selectConfig.disableOptionCentering),Q(2),NA(e._displayedPageSizeOptions)}}function U1e(t,A){if(t&1&&(I(0,"div",15),v(1),h()),t&2){let e=p(2);Q(),ne(e.pageSize)}}function T1e(t,A){if(t&1&&(I(0,"div",3)(1,"div",13),v(2),h(),T(3,K1e,6,7,"mat-form-field",14),T(4,U1e,2,1,"div",15),h()),t&2){let e=p();Q(),aA("id",e._pageSizeLabelId),Q(),pA(" ",e._intl.itemsPerPageLabel," "),Q(),O(e._displayedPageSizeOptions.length>1?3:-1),Q(),O(e._displayedPageSizeOptions.length<=1?4:-1)}}function O1e(t,A){if(t&1){let e=ae();I(0,"button",19),U("click",function(){L(e);let n=p();return G(n._buttonClicked(0,n._previousButtonsDisabled()))}),mt(),I(1,"svg",8),le(2,"path",20),h()()}if(t&2){let e=p();H("matTooltip",e._intl.firstPageLabel)("matTooltipDisabled",e._previousButtonsDisabled())("disabled",e._previousButtonsDisabled())("tabindex",e._previousButtonsDisabled()?-1:null),aA("aria-label",e._intl.firstPageLabel)}}function J1e(t,A){if(t&1){let e=ae();I(0,"button",21),U("click",function(){L(e);let n=p();return G(n._buttonClicked(n.getNumberOfPages()-1,n._nextButtonsDisabled()))}),mt(),I(1,"svg",8),le(2,"path",22),h()()}if(t&2){let e=p();H("matTooltip",e._intl.lastPageLabel)("matTooltipDisabled",e._nextButtonsDisabled())("disabled",e._nextButtonsDisabled())("tabindex",e._nextButtonsDisabled()?-1:null),aA("aria-label",e._intl.lastPageLabel)}}var GI=(()=>{class t{changes=new rA;itemsPerPageLabel="Items per page:";nextPageLabel="Next page";previousPageLabel="Previous page";firstPageLabel="First page";lastPageLabel="Last page";getRangeLabel=(e,i,n)=>{if(n==0||i==0)return`0 of ${n}`;n=Math.max(n,0);let o=e*i,a=o{class t{_intl=w(GI);_changeDetectorRef=w(xt);_formFieldAppearance;_pageSizeLabelId=w(bn).getId("mat-paginator-page-size-label-");_intlChanges;_isInitialized=!1;_initializedStream=new Pc(1);color;get pageIndex(){return this._pageIndex}set pageIndex(e){this._pageIndex=Math.max(e||0,0),this._changeDetectorRef.markForCheck()}_pageIndex=0;get length(){return this._length}set length(e){this._length=e||0,this._changeDetectorRef.markForCheck()}_length=0;get pageSize(){return this._pageSize}set pageSize(e){this._pageSize=Math.max(e||0,0),this._updateDisplayedPageSizeOptions()}_pageSize;get pageSizeOptions(){return this._pageSizeOptions}set pageSizeOptions(e){this._pageSizeOptions=(e||[]).map(i=>Dn(i,0)),this._updateDisplayedPageSizeOptions()}_pageSizeOptions=[];hidePageSize=!1;showFirstLastButtons=!1;selectConfig={};disabled=!1;page=new Le;_displayedPageSizeOptions;initialized=this._initializedStream;constructor(){let e=this._intl,i=w(Y1e,{optional:!0});if(this._intlChanges=e.changes.subscribe(()=>this._changeDetectorRef.markForCheck()),i){let{pageSize:n,pageSizeOptions:o,hidePageSize:a,showFirstLastButtons:r}=i;n!=null&&(this._pageSize=n),o!=null&&(this._pageSizeOptions=o),a!=null&&(this.hidePageSize=a),r!=null&&(this.showFirstLastButtons=r)}this._formFieldAppearance=i?.formFieldAppearance||"outline"}ngOnInit(){this._isInitialized=!0,this._updateDisplayedPageSizeOptions(),this._initializedStream.next()}ngOnDestroy(){this._initializedStream.complete(),this._intlChanges.unsubscribe()}nextPage(){this.hasNextPage()&&this._navigate(this.pageIndex+1)}previousPage(){this.hasPreviousPage()&&this._navigate(this.pageIndex-1)}firstPage(){this.hasPreviousPage()&&this._navigate(0)}lastPage(){this.hasNextPage()&&this._navigate(this.getNumberOfPages()-1)}hasPreviousPage(){return this.pageIndex>=1&&this.pageSize!=0}hasNextPage(){let e=this.getNumberOfPages()-1;return this.pageIndexe-i),this._changeDetectorRef.markForCheck())}_emitPageEvent(e){this.page.emit({previousPageIndex:e,pageIndex:this.pageIndex,pageSize:this.pageSize,length:this.length})}_navigate(e){let i=this.pageIndex;e!==i&&(this.pageIndex=e,this._emitPageEvent(i))}_buttonClicked(e,i){i||this._navigate(e)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-paginator"]],hostAttrs:["role","group",1,"mat-mdc-paginator"],inputs:{color:"color",pageIndex:[2,"pageIndex","pageIndex",Dn],length:[2,"length","length",Dn],pageSize:[2,"pageSize","pageSize",Dn],pageSizeOptions:"pageSizeOptions",hidePageSize:[2,"hidePageSize","hidePageSize",mA],showFirstLastButtons:[2,"showFirstLastButtons","showFirstLastButtons",mA],selectConfig:"selectConfig",disabled:[2,"disabled","disabled",mA]},outputs:{page:"page"},exportAs:["matPaginator"],decls:14,vars:14,consts:[["selectRef",""],[1,"mat-mdc-paginator-outer-container"],[1,"mat-mdc-paginator-container"],[1,"mat-mdc-paginator-page-size"],[1,"mat-mdc-paginator-range-actions"],["aria-atomic","true","aria-live","polite","role","status",1,"mat-mdc-paginator-range-label"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-first",3,"matTooltip","matTooltipDisabled","disabled","tabindex"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-previous",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["viewBox","0 0 24 24","focusable","false","aria-hidden","true",1,"mat-mdc-paginator-icon"],["d","M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-next",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["d","M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-last",3,"matTooltip","matTooltipDisabled","disabled","tabindex"],["aria-hidden","true",1,"mat-mdc-paginator-page-size-label"],[1,"mat-mdc-paginator-page-size-select",3,"appearance","color"],[1,"mat-mdc-paginator-page-size-value"],["hideSingleSelectionIndicator","",3,"selectionChange","value","disabled","aria-labelledby","panelClass","disableOptionCentering"],[3,"value"],[1,"mat-mdc-paginator-touch-target",3,"click"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-first",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["d","M18.41 16.59L13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"],["matIconButton","","type","button","matTooltipPosition","above","disabledInteractive","",1,"mat-mdc-paginator-navigation-last",3,"click","matTooltip","matTooltipDisabled","disabled","tabindex"],["d","M5.59 7.41L10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"]],template:function(i,n){i&1&&(I(0,"div",1)(1,"div",2),T(2,T1e,5,4,"div",3),I(3,"div",4)(4,"div",5),v(5),h(),T(6,O1e,3,5,"button",6),I(7,"button",7),U("click",function(){return n._buttonClicked(n.pageIndex-1,n._previousButtonsDisabled())}),mt(),I(8,"svg",8),le(9,"path",9),h()(),fr(),I(10,"button",10),U("click",function(){return n._buttonClicked(n.pageIndex+1,n._nextButtonsDisabled())}),mt(),I(11,"svg",8),le(12,"path",11),h()(),T(13,J1e,3,5,"button",12),h()()()),i&2&&(Q(2),O(n.hidePageSize?-1:2),Q(3),pA(" ",n._intl.getRangeLabel(n.pageIndex,n.pageSize,n.length)," "),Q(),O(n.showFirstLastButtons?6:-1),Q(),H("matTooltip",n._intl.previousPageLabel)("matTooltipDisabled",n._previousButtonsDisabled())("disabled",n._previousButtonsDisabled())("tabindex",n._previousButtonsDisabled()?-1:null),aA("aria-label",n._intl.previousPageLabel),Q(3),H("matTooltip",n._intl.nextPageLabel)("matTooltipDisabled",n._nextButtonsDisabled())("disabled",n._nextButtonsDisabled())("tabindex",n._nextButtonsDisabled()?-1:null),aA("aria-label",n._intl.nextPageLabel),Q(3),O(n.showFirstLastButtons?13:-1))},dependencies:[$o,Ec,es,Di,ln],styles:[`.mat-mdc-paginator{display:block;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--mat-paginator-container-text-color, var(--mat-sys-on-surface));background-color:var(--mat-paginator-container-background-color, var(--mat-sys-surface));font-family:var(--mat-paginator-container-text-font, var(--mat-sys-body-small-font));line-height:var(--mat-paginator-container-text-line-height, var(--mat-sys-body-small-line-height));font-size:var(--mat-paginator-container-text-size, var(--mat-sys-body-small-size));font-weight:var(--mat-paginator-container-text-weight, var(--mat-sys-body-small-weight));letter-spacing:var(--mat-paginator-container-text-tracking, var(--mat-sys-body-small-tracking));--mat-form-field-container-height: var(--mat-paginator-form-field-container-height, 40px);--mat-form-field-container-vertical-padding: var(--mat-paginator-form-field-container-vertical-padding, 8px)}.mat-mdc-paginator .mat-mdc-select-value{font-size:var(--mat-paginator-select-trigger-text-size, var(--mat-sys-body-small-size))}.mat-mdc-paginator .mat-mdc-form-field-subscript-wrapper{display:none}.mat-mdc-paginator .mat-mdc-select{line-height:1.5}.mat-mdc-paginator-outer-container{display:flex}.mat-mdc-paginator-container{display:flex;align-items:center;justify-content:flex-end;padding:0 8px;flex-wrap:wrap;width:100%;min-height:var(--mat-paginator-container-size, 56px)}.mat-mdc-paginator-page-size{display:flex;align-items:baseline;margin-right:8px}[dir=rtl] .mat-mdc-paginator-page-size{margin-right:0;margin-left:8px}.mat-mdc-paginator-page-size-label{margin:0 4px}.mat-mdc-paginator-page-size-select{margin:0 4px;width:var(--mat-paginator-page-size-select-width, 84px)}.mat-mdc-paginator-range-label{margin:0 32px 0 24px}.mat-mdc-paginator-range-actions{display:flex;align-items:center}.mat-mdc-paginator-icon{display:inline-block;width:28px;fill:var(--mat-paginator-enabled-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-icon-button[aria-disabled] .mat-mdc-paginator-icon{fill:var(--mat-paginator-disabled-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}[dir=rtl] .mat-mdc-paginator-icon{transform:rotate(180deg)}@media(forced-colors: active){.mat-mdc-icon-button[aria-disabled] .mat-mdc-paginator-icon,.mat-mdc-paginator-icon{fill:currentColor}.mat-mdc-paginator-range-actions .mat-mdc-icon-button{outline:solid 1px}.mat-mdc-paginator-range-actions .mat-mdc-icon-button[aria-disabled]{color:GrayText}}.mat-mdc-paginator-touch-target{display:var(--mat-paginator-touch-target-display, block);position:absolute;top:50%;left:50%;width:var(--mat-paginator-page-size-select-width, 84px);height:var(--mat-paginator-page-size-select-touch-target-height, 48px);background-color:rgba(0,0,0,0);transform:translate(-50%, -50%);cursor:pointer} +`],encapsulation:2,changeDetection:0})}return t})();var sV=["*"],H1e=["content"],P1e=[[["mat-drawer"]],[["mat-drawer-content"]],"*"],j1e=["mat-drawer","mat-drawer-content","*"];function V1e(t,A){if(t&1){let e=ae();I(0,"div",1),U("click",function(){L(e);let n=p();return G(n._onBackdropClicked())}),h()}if(t&2){let e=p();_e("mat-drawer-shown",e._isShowingBackdrop())}}function q1e(t,A){t&1&&(I(0,"mat-drawer-content"),tt(1,2),h())}var Z1e=new Me("MAT_DRAWER_DEFAULT_AUTOSIZE",{providedIn:"root",factory:()=>!1}),lV=new Me("MAT_DRAWER_CONTAINER"),vS=(()=>{class t extends dC{_platform=w(pi);_changeDetectorRef=w(xt);_container=w(bS);constructor(){let e=w(dA),i=w(C0),n=w(At);super(e,i,n)}ngAfterContentInit(){this._container._contentMarginChanges.subscribe(()=>{this._changeDetectorRef.markForCheck()})}_shouldBeHidden(){if(this._platform.isBrowser)return!1;let{start:e,end:i}=this._container;return e!=null&&e.mode!=="over"&&e.opened||i!=null&&i.mode!=="over"&&i.opened}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-drawer-content"]],hostAttrs:[1,"mat-drawer-content"],hostVars:6,hostBindings:function(i,n){i&2&&(vt("margin-left",n._container._contentMargins.left,"px")("margin-right",n._container._contentMargins.right,"px"),_e("mat-drawer-content-hidden",n._shouldBeHidden()))},features:[yt([{provide:dC,useExisting:t}]),_t],ngContentSelectors:sV,decls:1,vars:0,template:function(i,n){i&1&&(Yt(),tt(0))},encapsulation:2,changeDetection:0})}return t})(),DS=(()=>{class t{_elementRef=w(dA);_focusTrapFactory=w(fQ);_focusMonitor=w(dr);_platform=w(pi);_ngZone=w(At);_renderer=w(rn);_interactivityChecker=w(fB);_doc=w(Ii);_container=w(lV,{optional:!0});_focusTrap=null;_elementFocusedBeforeDrawerWasOpened=null;_eventCleanups;_isAttached=!1;_anchor=null;get position(){return this._position}set position(e){e=e==="end"?"end":"start",e!==this._position&&(this._isAttached&&this._updatePositionInParent(e),this._position=e,this.onPositionChanged.emit())}_position="start";get mode(){return this._mode}set mode(e){this._mode=e,this._updateFocusTrapState(),this._modeChanged.next()}_mode="over";get disableClose(){return this._disableClose}set disableClose(e){this._disableClose=Lr(e)}_disableClose=!1;get autoFocus(){let e=this._autoFocus;return e??(this.mode==="side"?"dialog":"first-tabbable")}set autoFocus(e){(e==="true"||e==="false"||e==null)&&(e=Lr(e)),this._autoFocus=e}_autoFocus;get opened(){return this._opened()}set opened(e){this.toggle(Lr(e))}_opened=fe(!1);_openedVia=null;_animationStarted=new rA;_animationEnd=new rA;openedChange=new Le(!0);_openedStream=this.openedChange.pipe(pt(e=>e),xA(()=>{}));openedStart=this._animationStarted.pipe(pt(()=>this.opened),tQ(void 0));_closedStream=this.openedChange.pipe(pt(e=>!e),xA(()=>{}));closedStart=this._animationStarted.pipe(pt(()=>!this.opened),tQ(void 0));_destroyed=new rA;onPositionChanged=new Le;_content;_modeChanged=new rA;_injector=w(Rt);_changeDetectorRef=w(xt);constructor(){this.openedChange.pipe(Mt(this._destroyed)).subscribe(e=>{e?(this._elementFocusedBeforeDrawerWasOpened=this._doc.activeElement,this._takeFocus()):this._isFocusWithinDrawer()&&this._restoreFocus(this._openedVia||"program")}),this._eventCleanups=this._ngZone.runOutsideAngular(()=>{let e=this._renderer,i=this._elementRef.nativeElement;return[e.listen(i,"keydown",n=>{n.keyCode===27&&!this.disableClose&&!Na(n)&&this._ngZone.run(()=>{this.close(),n.stopPropagation(),n.preventDefault()})}),e.listen(i,"transitionrun",this._handleTransitionEvent),e.listen(i,"transitionend",this._handleTransitionEvent),e.listen(i,"transitioncancel",this._handleTransitionEvent)]}),this._animationEnd.subscribe(()=>{this.openedChange.emit(this.opened)})}_forceFocus(e,i){this._interactivityChecker.isFocusable(e)||(e.tabIndex=-1,this._ngZone.runOutsideAngular(()=>{let n=()=>{o(),a(),e.removeAttribute("tabindex")},o=this._renderer.listen(e,"blur",n),a=this._renderer.listen(e,"mousedown",n)})),e.focus(i)}_focusByCssSelector(e,i){let n=this._elementRef.nativeElement.querySelector(e);n&&this._forceFocus(n,i)}_takeFocus(){if(!this._focusTrap)return;let e=this._elementRef.nativeElement;switch(this.autoFocus){case!1:case"dialog":return;case!0:case"first-tabbable":ro(()=>{!this._focusTrap.focusInitialElement()&&typeof e.focus=="function"&&e.focus()},{injector:this._injector});break;case"first-heading":this._focusByCssSelector('h1, h2, h3, h4, h5, h6, [role="heading"]');break;default:this._focusByCssSelector(this.autoFocus);break}}_restoreFocus(e){this.autoFocus!=="dialog"&&(this._elementFocusedBeforeDrawerWasOpened?this._focusMonitor.focusVia(this._elementFocusedBeforeDrawerWasOpened,e):this._elementRef.nativeElement.blur(),this._elementFocusedBeforeDrawerWasOpened=null)}_isFocusWithinDrawer(){let e=this._doc.activeElement;return!!e&&this._elementRef.nativeElement.contains(e)}ngAfterViewInit(){this._isAttached=!0,this._position==="end"&&this._updatePositionInParent("end"),this._platform.isBrowser&&(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement),this._updateFocusTrapState())}ngOnDestroy(){this._eventCleanups.forEach(e=>e()),this._focusTrap?.destroy(),this._anchor?.remove(),this._anchor=null,this._animationStarted.complete(),this._animationEnd.complete(),this._modeChanged.complete(),this._destroyed.next(),this._destroyed.complete()}open(e){return this.toggle(!0,e)}close(){return this.toggle(!1)}_closeViaBackdropClick(){return this._setOpen(!1,!0,"mouse")}toggle(e=!this.opened,i){e&&i&&(this._openedVia=i);let n=this._setOpen(e,!e&&this._isFocusWithinDrawer(),this._openedVia||"program");return e||(this._openedVia=null),n}_setOpen(e,i,n){return e===this.opened?Promise.resolve(e?"open":"close"):(this._opened.set(e),this._container?._transitionsEnabled?this._setIsAnimating(!0):setTimeout(()=>{this._animationStarted.next(),this._animationEnd.next()}),this._elementRef.nativeElement.classList.toggle("mat-drawer-opened",e),!e&&i&&this._restoreFocus(n),this._changeDetectorRef.markForCheck(),this._updateFocusTrapState(),new Promise(o=>{this.openedChange.pipe(No(1)).subscribe(a=>o(a?"open":"close"))}))}_setIsAnimating(e){this._elementRef.nativeElement.classList.toggle("mat-drawer-animating",e)}_getWidth(){return this._elementRef.nativeElement.offsetWidth||0}_updateFocusTrapState(){this._focusTrap&&(this._focusTrap.enabled=this.opened&&!!this._container?._isShowingBackdrop())}_updatePositionInParent(e){if(!this._platform.isBrowser)return;let i=this._elementRef.nativeElement,n=i.parentNode;e==="end"?(this._anchor||(this._anchor=this._doc.createComment("mat-drawer-anchor"),n.insertBefore(this._anchor,i)),n.appendChild(i)):this._anchor&&this._anchor.parentNode.insertBefore(i,this._anchor)}_handleTransitionEvent=e=>{let i=this._elementRef.nativeElement;e.target===i&&this._ngZone.run(()=>{e.type==="transitionrun"?this._animationStarted.next(e):(e.type==="transitionend"&&this._setIsAnimating(!1),this._animationEnd.next(e))})};static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-drawer"]],viewQuery:function(i,n){if(i&1&&$t(H1e,5),i&2){let o;cA(o=gA())&&(n._content=o.first)}},hostAttrs:[1,"mat-drawer"],hostVars:12,hostBindings:function(i,n){i&2&&(aA("align",null)("tabIndex",n.mode!=="side"?"-1":null),vt("visibility",!n._container&&!n.opened?"hidden":null),_e("mat-drawer-end",n.position==="end")("mat-drawer-over",n.mode==="over")("mat-drawer-push",n.mode==="push")("mat-drawer-side",n.mode==="side"))},inputs:{position:"position",mode:"mode",disableClose:"disableClose",autoFocus:"autoFocus",opened:"opened"},outputs:{openedChange:"openedChange",_openedStream:"opened",openedStart:"openedStart",_closedStream:"closed",closedStart:"closedStart",onPositionChanged:"positionChanged"},exportAs:["matDrawer"],ngContentSelectors:sV,decls:3,vars:0,consts:[["content",""],["cdkScrollable","",1,"mat-drawer-inner-container"]],template:function(i,n){i&1&&(Yt(),I(0,"div",1,0),tt(2),h())},dependencies:[dC],encapsulation:2,changeDetection:0})}return t})(),bS=(()=>{class t{_dir=w(Fo,{optional:!0});_element=w(dA);_ngZone=w(At);_changeDetectorRef=w(xt);_animationDisabled=hn();_transitionsEnabled=!1;_allDrawers;_drawers=new Vc;_content;_userContent;get start(){return this._start}get end(){return this._end}get autosize(){return this._autosize}set autosize(e){this._autosize=Lr(e)}_autosize=w(Z1e);get hasBackdrop(){return this._drawerHasBackdrop(this._start)||this._drawerHasBackdrop(this._end)}set hasBackdrop(e){this._backdropOverride=e==null?null:Lr(e)}_backdropOverride=null;backdropClick=new Le;_start=null;_end=null;_left=null;_right=null;_destroyed=new rA;_doCheckSubject=new rA;_contentMargins={left:null,right:null};_contentMarginChanges=new rA;get scrollable(){return this._userContent||this._content}_injector=w(Rt);constructor(){let e=w(pi),i=w(Ts);this._dir?.change.pipe(Mt(this._destroyed)).subscribe(()=>{this._validateDrawers(),this.updateContentMargins()}),i.change().pipe(Mt(this._destroyed)).subscribe(()=>this.updateContentMargins()),!this._animationDisabled&&e.isBrowser&&this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{this._element.nativeElement.classList.add("mat-drawer-transition"),this._transitionsEnabled=!0},200)})}ngAfterContentInit(){this._allDrawers.changes.pipe(Yn(this._allDrawers),Mt(this._destroyed)).subscribe(e=>{this._drawers.reset(e.filter(i=>!i._container||i._container===this)),this._drawers.notifyOnChanges()}),this._drawers.changes.pipe(Yn(null)).subscribe(()=>{this._validateDrawers(),this._drawers.forEach(e=>{this._watchDrawerToggle(e),this._watchDrawerPosition(e),this._watchDrawerMode(e)}),(!this._drawers.length||this._isDrawerOpen(this._start)||this._isDrawerOpen(this._end))&&this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(()=>{this._doCheckSubject.pipe(Ws(10),Mt(this._destroyed)).subscribe(()=>this.updateContentMargins())})}ngOnDestroy(){this._contentMarginChanges.complete(),this._doCheckSubject.complete(),this._drawers.destroy(),this._destroyed.next(),this._destroyed.complete()}open(){this._drawers.forEach(e=>e.open())}close(){this._drawers.forEach(e=>e.close())}updateContentMargins(){let e=0,i=0;if(this._left&&this._left.opened){if(this._left.mode=="side")e+=this._left._getWidth();else if(this._left.mode=="push"){let n=this._left._getWidth();e+=n,i-=n}}if(this._right&&this._right.opened){if(this._right.mode=="side")i+=this._right._getWidth();else if(this._right.mode=="push"){let n=this._right._getWidth();i+=n,e-=n}}e=e||null,i=i||null,(e!==this._contentMargins.left||i!==this._contentMargins.right)&&(this._contentMargins={left:e,right:i},this._ngZone.run(()=>this._contentMarginChanges.next(this._contentMargins)))}ngDoCheck(){this._autosize&&this._isPushed()&&this._ngZone.runOutsideAngular(()=>this._doCheckSubject.next())}_watchDrawerToggle(e){e._animationStarted.pipe(Mt(this._drawers.changes)).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()}),e.mode!=="side"&&e.openedChange.pipe(Mt(this._drawers.changes)).subscribe(()=>this._setContainerClass(e.opened))}_watchDrawerPosition(e){e.onPositionChanged.pipe(Mt(this._drawers.changes)).subscribe(()=>{ro({read:()=>this._validateDrawers()},{injector:this._injector})})}_watchDrawerMode(e){e._modeChanged.pipe(Mt(Zi(this._drawers.changes,this._destroyed))).subscribe(()=>{this.updateContentMargins(),this._changeDetectorRef.markForCheck()})}_setContainerClass(e){let i=this._element.nativeElement.classList,n="mat-drawer-container-has-open";e?i.add(n):i.remove(n)}_validateDrawers(){this._start=this._end=null,this._drawers.forEach(e=>{e.position=="end"?(this._end!=null,this._end=e):(this._start!=null,this._start=e)}),this._right=this._left=null,this._dir&&this._dir.value==="rtl"?(this._left=this._end,this._right=this._start):(this._left=this._start,this._right=this._end)}_isPushed(){return this._isDrawerOpen(this._start)&&this._start.mode!="over"||this._isDrawerOpen(this._end)&&this._end.mode!="over"}_onBackdropClicked(){this.backdropClick.emit(),this._closeModalDrawersViaBackdrop()}_closeModalDrawersViaBackdrop(){[this._start,this._end].filter(e=>e&&!e.disableClose&&this._drawerHasBackdrop(e)).forEach(e=>e._closeViaBackdropClick())}_isShowingBackdrop(){return this._isDrawerOpen(this._start)&&this._drawerHasBackdrop(this._start)||this._isDrawerOpen(this._end)&&this._drawerHasBackdrop(this._end)}_isDrawerOpen(e){return e!=null&&e.opened}_drawerHasBackdrop(e){return this._backdropOverride==null?!!e&&e.mode!=="side":this._backdropOverride}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-drawer-container"]],contentQueries:function(i,n,o){if(i&1&&ga(o,vS,5)(o,DS,5),i&2){let a;cA(a=gA())&&(n._content=a.first),cA(a=gA())&&(n._allDrawers=a)}},viewQuery:function(i,n){if(i&1&&$t(vS,5),i&2){let o;cA(o=gA())&&(n._userContent=o.first)}},hostAttrs:[1,"mat-drawer-container"],hostVars:2,hostBindings:function(i,n){i&2&&_e("mat-drawer-container-explicit-backdrop",n._backdropOverride)},inputs:{autosize:"autosize",hasBackdrop:"hasBackdrop"},outputs:{backdropClick:"backdropClick"},exportAs:["matDrawerContainer"],features:[yt([{provide:lV,useExisting:t}])],ngContentSelectors:j1e,decls:4,vars:2,consts:[[1,"mat-drawer-backdrop",3,"mat-drawer-shown"],[1,"mat-drawer-backdrop",3,"click"]],template:function(i,n){i&1&&(Yt(P1e),T(0,V1e,1,2,"div",0),tt(1),tt(2,1),T(3,q1e,2,0,"mat-drawer-content")),i&2&&(O(n.hasBackdrop?0:-1),Q(3),O(n._content?-1:3))},dependencies:[vS],styles:[`.mat-drawer-container{position:relative;z-index:1;color:var(--mat-sidenav-content-text-color, var(--mat-sys-on-background));background-color:var(--mat-sidenav-content-background-color, var(--mat-sys-background));box-sizing:border-box;display:block;overflow:hidden}.mat-drawer-container[fullscreen]{top:0;left:0;right:0;bottom:0;position:absolute}.mat-drawer-container[fullscreen].mat-drawer-container-has-open{overflow:hidden}.mat-drawer-container.mat-drawer-container-explicit-backdrop .mat-drawer-side{z-index:3}.mat-drawer-container.ng-animate-disabled .mat-drawer-backdrop,.mat-drawer-container.ng-animate-disabled .mat-drawer-content,.ng-animate-disabled .mat-drawer-container .mat-drawer-backdrop,.ng-animate-disabled .mat-drawer-container .mat-drawer-content{transition:none}.mat-drawer-backdrop{top:0;left:0;right:0;bottom:0;position:absolute;display:block;z-index:3;visibility:hidden}.mat-drawer-backdrop.mat-drawer-shown{visibility:visible;background-color:var(--mat-sidenav-scrim-color, color-mix(in srgb, var(--mat-sys-neutral-variant20) 40%, transparent))}.mat-drawer-transition .mat-drawer-backdrop{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:background-color,visibility}@media(forced-colors: active){.mat-drawer-backdrop{opacity:.5}}.mat-drawer-content{position:relative;z-index:1;display:block;height:100%;overflow:auto}.mat-drawer-content.mat-drawer-content-hidden{opacity:0}.mat-drawer-transition .mat-drawer-content{transition-duration:400ms;transition-timing-function:cubic-bezier(0.25, 0.8, 0.25, 1);transition-property:transform,margin-left,margin-right}.mat-drawer{position:relative;z-index:4;color:var(--mat-sidenav-container-text-color, var(--mat-sys-on-surface-variant));box-shadow:var(--mat-sidenav-container-elevation-shadow, none);background-color:var(--mat-sidenav-container-background-color, var(--mat-sys-surface));border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));width:var(--mat-sidenav-container-width, 360px);display:block;position:absolute;top:0;bottom:0;z-index:3;outline:0;box-sizing:border-box;overflow-y:auto;transform:translate3d(-100%, 0, 0)}@media(forced-colors: active){.mat-drawer,[dir=rtl] .mat-drawer.mat-drawer-end{border-right:solid 1px currentColor}}@media(forced-colors: active){[dir=rtl] .mat-drawer,.mat-drawer.mat-drawer-end{border-left:solid 1px currentColor;border-right:none}}.mat-drawer.mat-drawer-side{z-index:2}.mat-drawer.mat-drawer-end{right:0;transform:translate3d(100%, 0, 0);border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .mat-drawer{border-top-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-left-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-right-radius:0;border-bottom-right-radius:0;transform:translate3d(100%, 0, 0)}[dir=rtl] .mat-drawer.mat-drawer-end{border-top-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-bottom-right-radius:var(--mat-sidenav-container-shape, var(--mat-sys-corner-large));border-top-left-radius:0;border-bottom-left-radius:0;left:0;right:auto;transform:translate3d(-100%, 0, 0)}.mat-drawer-transition .mat-drawer{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating){visibility:hidden;box-shadow:none}.mat-drawer:not(.mat-drawer-opened):not(.mat-drawer-animating) .mat-drawer-inner-container{display:none}.mat-drawer.mat-drawer-opened.mat-drawer-opened{transform:none}.mat-drawer-side{box-shadow:none;border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid}.mat-drawer-side.mat-drawer-end{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side{border-left-color:var(--mat-sidenav-container-divider-color, transparent);border-left-width:1px;border-left-style:solid;border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-right-color:var(--mat-sidenav-container-divider-color, transparent);border-right-width:1px;border-right-style:solid;border-left:none}.mat-drawer-inner-container{width:100%;height:100%;overflow:auto}.mat-sidenav-fixed{position:fixed} +`],encapsulation:2,changeDetection:0})}return t})();var W1e=["determinateSpinner"];function X1e(t,A){if(t&1&&(mt(),I(0,"svg",11),le(1,"circle",12),h()),t&2){let e=p();aA("viewBox",e._viewBox()),Q(),vt("stroke-dasharray",e._strokeCircumference(),"px")("stroke-dashoffset",e._strokeCircumference()/2,"px")("stroke-width",e._circleStrokeWidth(),"%"),aA("r",e._circleRadius())}}var $1e=new Me("mat-progress-spinner-default-options",{providedIn:"root",factory:()=>({diameter:cV})}),cV=100,eBe=10,ws=(()=>{class t{_elementRef=w(dA);_noopAnimations;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;_defaultColor="primary";_determinateCircle;constructor(){let e=w($1e),i=DQ(),n=this._elementRef.nativeElement;this._noopAnimations=i==="di-disabled"&&!!e&&!e._forceAnimations,this.mode=n.nodeName.toLowerCase()==="mat-spinner"?"indeterminate":"determinate",!this._noopAnimations&&i==="reduced-motion"&&n.classList.add("mat-progress-spinner-reduced-motion"),e&&(e.color&&(this.color=this._defaultColor=e.color),e.diameter&&(this.diameter=e.diameter),e.strokeWidth&&(this.strokeWidth=e.strokeWidth))}mode;get value(){return this.mode==="determinate"?this._value:0}set value(e){this._value=Math.max(0,Math.min(100,e||0))}_value=0;get diameter(){return this._diameter}set diameter(e){this._diameter=e||0}_diameter=cV;get strokeWidth(){return this._strokeWidth??this.diameter/10}set strokeWidth(e){this._strokeWidth=e||0}_strokeWidth;_circleRadius(){return(this.diameter-eBe)/2}_viewBox(){let e=this._circleRadius()*2+this.strokeWidth;return`0 0 ${e} ${e}`}_strokeCircumference(){return 2*Math.PI*this._circleRadius()}_strokeDashOffset(){return this.mode==="determinate"?this._strokeCircumference()*(100-this._value)/100:null}_circleStrokeWidth(){return this.strokeWidth/this.diameter*100}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-progress-spinner"],["mat-spinner"]],viewQuery:function(i,n){if(i&1&&$t(W1e,5),i&2){let o;cA(o=gA())&&(n._determinateCircle=o.first)}},hostAttrs:["role","progressbar","tabindex","-1",1,"mat-mdc-progress-spinner","mdc-circular-progress"],hostVars:18,hostBindings:function(i,n){i&2&&(aA("aria-valuemin",0)("aria-valuemax",100)("aria-valuenow",n.mode==="determinate"?n.value:null)("mode",n.mode),Ao("mat-"+n.color),vt("width",n.diameter,"px")("height",n.diameter,"px")("--mat-progress-spinner-size",n.diameter+"px")("--mat-progress-spinner-active-indicator-width",n.diameter+"px"),_e("_mat-animation-noopable",n._noopAnimations)("mdc-circular-progress--indeterminate",n.mode==="indeterminate"))},inputs:{color:"color",mode:"mode",value:[2,"value","value",Dn],diameter:[2,"diameter","diameter",Dn],strokeWidth:[2,"strokeWidth","strokeWidth",Dn]},exportAs:["matProgressSpinner"],decls:14,vars:11,consts:[["circle",""],["determinateSpinner",""],["aria-hidden","true",1,"mdc-circular-progress__determinate-container"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__determinate-circle-graphic"],["cx","50%","cy","50%",1,"mdc-circular-progress__determinate-circle"],["aria-hidden","true",1,"mdc-circular-progress__indeterminate-container"],[1,"mdc-circular-progress__spinner-layer"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-left"],[3,"ngTemplateOutlet"],[1,"mdc-circular-progress__gap-patch"],[1,"mdc-circular-progress__circle-clipper","mdc-circular-progress__circle-right"],["xmlns","http://www.w3.org/2000/svg","focusable","false",1,"mdc-circular-progress__indeterminate-circle-graphic"],["cx","50%","cy","50%"]],template:function(i,n){if(i&1&&(Nt(0,X1e,2,8,"ng-template",null,0,Id),I(2,"div",2,1),mt(),I(4,"svg",3),le(5,"circle",4),h()(),fr(),I(6,"div",5)(7,"div",6)(8,"div",7),Bn(9,8),h(),I(10,"div",9),Bn(11,8),h(),I(12,"div",10),Bn(13,8),h()()()),i&2){let o=Ei(1);Q(4),aA("viewBox",n._viewBox()),Q(),vt("stroke-dasharray",n._strokeCircumference(),"px")("stroke-dashoffset",n._strokeDashOffset(),"px")("stroke-width",n._circleStrokeWidth(),"%"),aA("r",n._circleRadius()),Q(4),H("ngTemplateOutlet",o),Q(2),H("ngTemplateOutlet",o),Q(2),H("ngTemplateOutlet",o)}},dependencies:[t0],styles:[`.mat-mdc-progress-spinner{--mat-progress-spinner-animation-multiplier: 1;display:block;overflow:hidden;line-height:0;position:relative;direction:ltr;transition:opacity 250ms cubic-bezier(0.4, 0, 0.6, 1)}.mat-mdc-progress-spinner circle{stroke-width:var(--mat-progress-spinner-active-indicator-width, 4px)}.mat-mdc-progress-spinner._mat-animation-noopable,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__determinate-circle{transition:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__spinner-layer,.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container{animation:none !important}.mat-mdc-progress-spinner._mat-animation-noopable .mdc-circular-progress__indeterminate-container circle{stroke-dasharray:0 !important}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic,.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle{stroke:currentColor;stroke:CanvasText}}.mat-progress-spinner-reduced-motion{--mat-progress-spinner-animation-multiplier: 1.25}.mdc-circular-progress__determinate-container,.mdc-circular-progress__indeterminate-circle-graphic,.mdc-circular-progress__indeterminate-container,.mdc-circular-progress__spinner-layer{position:absolute;width:100%;height:100%}.mdc-circular-progress__determinate-container{transform:rotate(-90deg)}.mdc-circular-progress--indeterminate .mdc-circular-progress__determinate-container{opacity:0}.mdc-circular-progress__indeterminate-container{font-size:0;letter-spacing:0;white-space:nowrap;opacity:0}.mdc-circular-progress--indeterminate .mdc-circular-progress__indeterminate-container{opacity:1;animation:mdc-circular-progress-container-rotate calc(1568.2352941176ms*var(--mat-progress-spinner-animation-multiplier)) linear infinite}.mdc-circular-progress__determinate-circle-graphic,.mdc-circular-progress__indeterminate-circle-graphic{fill:rgba(0,0,0,0)}.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:var(--mat-progress-spinner-active-indicator-color, var(--mat-sys-primary))}@media(forced-colors: active){.mat-mdc-progress-spinner .mdc-circular-progress__determinate-circle,.mat-mdc-progress-spinner .mdc-circular-progress__indeterminate-circle-graphic{stroke:CanvasText}}.mdc-circular-progress__determinate-circle{transition:stroke-dashoffset 500ms cubic-bezier(0, 0, 0.2, 1)}.mdc-circular-progress__gap-patch{position:absolute;top:0;left:47.5%;box-sizing:border-box;width:5%;height:100%;overflow:hidden}.mdc-circular-progress__gap-patch .mdc-circular-progress__indeterminate-circle-graphic{left:-900%;width:2000%;transform:rotate(180deg)}.mdc-circular-progress__circle-clipper .mdc-circular-progress__indeterminate-circle-graphic{width:200%}.mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{left:-100%}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-left .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-left-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress--indeterminate .mdc-circular-progress__circle-right .mdc-circular-progress__indeterminate-circle-graphic{animation:mdc-circular-progress-right-spin calc(1333ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}.mdc-circular-progress__circle-clipper{display:inline-flex;position:relative;width:50%;height:100%;overflow:hidden}.mdc-circular-progress--indeterminate .mdc-circular-progress__spinner-layer{animation:mdc-circular-progress-spinner-layer-rotate calc(5332ms*var(--mat-progress-spinner-animation-multiplier)) cubic-bezier(0.4, 0, 0.2, 1) infinite both}@keyframes mdc-circular-progress-container-rotate{to{transform:rotate(360deg)}}@keyframes mdc-circular-progress-spinner-layer-rotate{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}100%{transform:rotate(1080deg)}}@keyframes mdc-circular-progress-left-spin{from{transform:rotate(265deg)}50%{transform:rotate(130deg)}to{transform:rotate(265deg)}}@keyframes mdc-circular-progress-right-spin{from{transform:rotate(-265deg)}50%{transform:rotate(-130deg)}to{transform:rotate(-265deg)}} +`],encapsulation:2,changeDetection:0})}return t})();var _d=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();function ABe(t,A){if(t&1){let e=ae();I(0,"div",1)(1,"button",2),U("click",function(){L(e);let n=p();return G(n.action())}),v(2),h()()}if(t&2){let e=p();Q(2),pA(" ",e.data.action," ")}}var tBe=["label"];function iBe(t,A){}var nBe=Math.pow(2,31)-1,Ip=class{_overlayRef;instance;containerInstance;_afterDismissed=new rA;_afterOpened=new rA;_onAction=new rA;_durationTimeoutId;_dismissedByAction=!1;constructor(A,e){this._overlayRef=e,this.containerInstance=A,A._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete(),this.dismiss()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(A){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(A,nBe))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}},gV=new Me("MatSnackBarData"),$B=class{politeness="polite";announcementMessage="";viewContainerRef;duration=0;panelClass;direction;data=null;horizontalPosition="center";verticalPosition="bottom"},oBe=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matSnackBarLabel",""]],hostAttrs:[1,"mat-mdc-snack-bar-label","mdc-snackbar__label"]})}return t})(),aBe=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matSnackBarActions",""]],hostAttrs:[1,"mat-mdc-snack-bar-actions","mdc-snackbar__actions"]})}return t})(),rBe=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matSnackBarAction",""]],hostAttrs:[1,"mat-mdc-snack-bar-action","mdc-snackbar__action"]})}return t})(),sBe=(()=>{class t{snackBarRef=w(Ip);data=w(gV);constructor(){}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-mdc-simple-snack-bar"],exportAs:["matSnackBar"],decls:3,vars:2,consts:[["matSnackBarLabel",""],["matSnackBarActions",""],["matButton","","matSnackBarAction","",3,"click"]],template:function(i,n){i&1&&(I(0,"div",0),v(1),h(),T(2,ABe,3,1,"div",1)),i&2&&(Q(),pA(" ",n.data.message,` +`),Q(),O(n.hasAction?2:-1))},dependencies:[xi,oBe,aBe,rBe],styles:[`.mat-mdc-simple-snack-bar{display:flex}.mat-mdc-simple-snack-bar .mat-mdc-snack-bar-label{max-height:50vh;overflow:auto} +`],encapsulation:2,changeDetection:0})}return t})(),SS="_mat-snack-bar-enter",kS="_mat-snack-bar-exit",lBe=(()=>{class t extends Dd{_ngZone=w(At);_elementRef=w(dA);_changeDetectorRef=w(xt);_platform=w(pi);_animationsDisabled=hn();snackBarConfig=w($B);_document=w(Ii);_trackedModals=new Set;_enterFallback;_exitFallback;_injector=w(Rt);_announceDelay=150;_announceTimeoutId;_destroyed=!1;_portalOutlet;_onAnnounce=new rA;_onExit=new rA;_onEnter=new rA;_animationState="void";_live;_label;_role;_liveElementId=w(bn).getId("mat-snack-bar-container-live-");constructor(){super();let e=this.snackBarConfig;e.politeness==="assertive"&&!e.announcementMessage?this._live="assertive":e.politeness==="off"?this._live="off":this._live="polite",this._platform.FIREFOX&&(this._live==="polite"&&(this._role="status"),this._live==="assertive"&&(this._role="alert"))}attachComponentPortal(e){this._assertNotAttached();let i=this._portalOutlet.attachComponentPortal(e);return this._afterPortalAttached(),i}attachTemplatePortal(e){this._assertNotAttached();let i=this._portalOutlet.attachTemplatePortal(e);return this._afterPortalAttached(),i}attachDomPortal=e=>{this._assertNotAttached();let i=this._portalOutlet.attachDomPortal(e);return this._afterPortalAttached(),i};onAnimationEnd(e){e===kS?this._completeExit():e===SS&&(clearTimeout(this._enterFallback),this._ngZone.run(()=>{this._onEnter.next(),this._onEnter.complete()}))}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.markForCheck(),this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce(),this._animationsDisabled?ro(()=>{this._ngZone.run(()=>queueMicrotask(()=>this.onAnimationEnd(SS)))},{injector:this._injector}):(clearTimeout(this._enterFallback),this._enterFallback=setTimeout(()=>{this._elementRef.nativeElement.classList.add("mat-snack-bar-fallback-visible"),this.onAnimationEnd(SS)},200)))}exit(){return this._destroyed?sA(void 0):(this._ngZone.run(()=>{this._animationState="hidden",this._changeDetectorRef.markForCheck(),this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._animationsDisabled?ro(()=>{this._ngZone.run(()=>queueMicrotask(()=>this.onAnimationEnd(kS)))},{injector:this._injector}):(clearTimeout(this._exitFallback),this._exitFallback=setTimeout(()=>this.onAnimationEnd(kS),200))}),this._onExit)}ngOnDestroy(){this._destroyed=!0,this._clearFromModals(),this._completeExit()}_completeExit(){clearTimeout(this._exitFallback),queueMicrotask(()=>{this._onExit.next(),this._onExit.complete()})}_afterPortalAttached(){let e=this._elementRef.nativeElement,i=this.snackBarConfig.panelClass;i&&(Array.isArray(i)?i.forEach(a=>e.classList.add(a)):e.classList.add(i)),this._exposeToModals();let n=this._label.nativeElement,o="mdc-snackbar__label";n.classList.toggle(o,!n.querySelector(`.${o}`))}_exposeToModals(){let e=this._liveElementId,i=this._document.querySelectorAll('body > .cdk-overlay-container [aria-modal="true"]');for(let n=0;n{let i=e.getAttribute("aria-owns");if(i){let n=i.replace(this._liveElementId,"").trim();n.length>0?e.setAttribute("aria-owns",n):e.removeAttribute("aria-owns")}}),this._trackedModals.clear()}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{if(this._destroyed)return;let e=this._elementRef.nativeElement,i=e.querySelector("[aria-hidden]"),n=e.querySelector("[aria-live]");if(i&&n){let o=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&i.contains(document.activeElement)&&(o=document.activeElement),i.removeAttribute("aria-hidden"),n.appendChild(i),o?.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-snack-bar-container"]],viewQuery:function(i,n){if(i&1&&$t(Bc,7)(tBe,7),i&2){let o;cA(o=gA())&&(n._portalOutlet=o.first),cA(o=gA())&&(n._label=o.first)}},hostAttrs:[1,"mdc-snackbar","mat-mdc-snack-bar-container"],hostVars:6,hostBindings:function(i,n){i&1&&U("animationend",function(a){return n.onAnimationEnd(a.animationName)})("animationcancel",function(a){return n.onAnimationEnd(a.animationName)}),i&2&&_e("mat-snack-bar-container-enter",n._animationState==="visible")("mat-snack-bar-container-exit",n._animationState==="hidden")("mat-snack-bar-container-animations-enabled",!n._animationsDisabled)},features:[_t],decls:6,vars:3,consts:[["label",""],[1,"mdc-snackbar__surface","mat-mdc-snackbar-surface"],[1,"mat-mdc-snack-bar-label"],["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(i,n){i&1&&(I(0,"div",1)(1,"div",2,0)(3,"div",3),Nt(4,iBe,0,0,"ng-template",4),h(),le(5,"div"),h()()),i&2&&(Q(5),aA("aria-live",n._live)("role",n._role)("id",n._liveElementId))},dependencies:[Bc],styles:[`@keyframes _mat-snack-bar-enter{from{transform:scale(0.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes _mat-snack-bar-exit{from{opacity:1}to{opacity:0}}.mat-mdc-snack-bar-container{display:flex;align-items:center;justify-content:center;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);margin:8px}.mat-mdc-snack-bar-handset .mat-mdc-snack-bar-container{width:100vw}.mat-snack-bar-container-animations-enabled{opacity:0}.mat-snack-bar-container-animations-enabled.mat-snack-bar-fallback-visible{opacity:1}.mat-snack-bar-container-animations-enabled.mat-snack-bar-container-enter{animation:_mat-snack-bar-enter 150ms cubic-bezier(0, 0, 0.2, 1) forwards}.mat-snack-bar-container-animations-enabled.mat-snack-bar-container-exit{animation:_mat-snack-bar-exit 75ms cubic-bezier(0.4, 0, 1, 1) forwards}.mat-mdc-snackbar-surface{box-shadow:0px 3px 5px -1px rgba(0, 0, 0, 0.2), 0px 6px 10px 0px rgba(0, 0, 0, 0.14), 0px 1px 18px 0px rgba(0, 0, 0, 0.12);display:flex;align-items:center;justify-content:flex-start;box-sizing:border-box;padding-left:0;padding-right:8px}[dir=rtl] .mat-mdc-snackbar-surface{padding-right:0;padding-left:8px}.mat-mdc-snack-bar-container .mat-mdc-snackbar-surface{min-width:344px;max-width:672px}.mat-mdc-snack-bar-handset .mat-mdc-snackbar-surface{width:100%;min-width:0}@media(forced-colors: active){.mat-mdc-snackbar-surface{outline:solid 1px}}.mat-mdc-snack-bar-container .mat-mdc-snackbar-surface{color:var(--mat-snack-bar-supporting-text-color, var(--mat-sys-inverse-on-surface));border-radius:var(--mat-snack-bar-container-shape, var(--mat-sys-corner-extra-small));background-color:var(--mat-snack-bar-container-color, var(--mat-sys-inverse-surface))}.mdc-snackbar__label{width:100%;flex-grow:1;box-sizing:border-box;margin:0;padding:14px 8px 14px 16px}[dir=rtl] .mdc-snackbar__label{padding-left:8px;padding-right:16px}.mat-mdc-snack-bar-container .mdc-snackbar__label{font-family:var(--mat-snack-bar-supporting-text-font, var(--mat-sys-body-medium-font));font-size:var(--mat-snack-bar-supporting-text-size, var(--mat-sys-body-medium-size));font-weight:var(--mat-snack-bar-supporting-text-weight, var(--mat-sys-body-medium-weight));line-height:var(--mat-snack-bar-supporting-text-line-height, var(--mat-sys-body-medium-line-height))}.mat-mdc-snack-bar-actions{display:flex;flex-shrink:0;align-items:center;box-sizing:border-box}.mat-mdc-snack-bar-handset,.mat-mdc-snack-bar-container,.mat-mdc-snack-bar-label{flex:1 1 auto}.mat-mdc-snack-bar-container .mat-mdc-button.mat-mdc-snack-bar-action:not(:disabled).mat-unthemed{color:var(--mat-snack-bar-button-color, var(--mat-sys-inverse-primary))}.mat-mdc-snack-bar-container .mat-mdc-button.mat-mdc-snack-bar-action:not(:disabled){--mat-button-text-state-layer-color: currentColor;--mat-button-text-ripple-color: currentColor}.mat-mdc-snack-bar-container .mat-mdc-button.mat-mdc-snack-bar-action:not(:disabled) .mat-ripple-element{opacity:.1} +`],encapsulation:2})}return t})(),cBe=new Me("mat-snack-bar-default-options",{providedIn:"root",factory:()=>new $B}),CV=(()=>{class t{_live=w(wQ);_injector=w(Rt);_breakpointObserver=w(mQ);_parentSnackBar=w(t,{optional:!0,skipSelf:!0});_defaultConfig=w(cBe);_animationsDisabled=hn();_snackBarRefAtThisLevel=null;simpleSnackBarComponent=sBe;snackBarContainerComponent=lBe;handsetCssClass="mat-mdc-snack-bar-handset";get _openedSnackBarRef(){let e=this._parentSnackBar;return e?e._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(e){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=e:this._snackBarRefAtThisLevel=e}constructor(){}openFromComponent(e,i){return this._attach(e,i)}openFromTemplate(e,i){return this._attach(e,i)}open(e,i="",n){let o=Y(Y({},this._defaultConfig),n);return o.data={message:e,action:i},o.announcementMessage===e&&(o.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,o)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(e,i){let n=i&&i.viewContainerRef&&i.viewContainerRef.injector,o=Rt.create({parent:n||this._injector,providers:[{provide:$B,useValue:i}]}),a=new Os(this.snackBarContainerComponent,i.viewContainerRef,o),r=e.attach(a);return r.instance.snackBarConfig=i,r.instance}_attach(e,i){let n=Y(Y(Y({},new $B),this._defaultConfig),i),o=this._createOverlay(n),a=this._attachSnackBarContainer(o,n),r=new Ip(a,o);if(e instanceof yo){let s=new $r(e,null,{$implicit:n.data,snackBarRef:r});r.instance=a.attachTemplatePortal(s)}else{let s=this._createInjector(n,r),l=new Os(e,void 0,s),c=a.attachComponentPortal(l);r.instance=c.instance}return this._breakpointObserver.observe(MY.HandsetPortrait).pipe(Mt(o.detachments())).subscribe(s=>{o.overlayElement.classList.toggle(this.handsetCssClass,s.matches)}),n.announcementMessage&&a._onAnnounce.subscribe(()=>{this._live.announce(n.announcementMessage,n.politeness)}),this._animateSnackBar(r,n),this._openedSnackBarRef=r,this._openedSnackBarRef}_animateSnackBar(e,i){e.afterDismissed().subscribe(()=>{this._openedSnackBarRef==e&&(this._openedSnackBarRef=null),i.announcementMessage&&this._live.clear()}),i.duration&&i.duration>0&&e.afterOpened().subscribe(()=>e._dismissAfter(i.duration)),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{e.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):e.containerInstance.enter()}_createOverlay(e){let i=new og;i.direction=e.direction;let n=bd(this._injector),o=e.direction==="rtl",a=e.horizontalPosition==="left"||e.horizontalPosition==="start"&&!o||e.horizontalPosition==="end"&&o,r=!a&&e.horizontalPosition!=="center";return a?n.left("0"):r?n.right("0"):n.centerHorizontally(),e.verticalPosition==="top"?n.top("0"):n.bottom("0"),i.positionStrategy=n,i.disableAnimations=this._animationsDisabled,rg(this._injector,i)}_createInjector(e,i){let n=e&&e.viewContainerRef&&e.viewContainerRef.injector;return Rt.create({parent:n||this._injector,providers:[{provide:Ip,useValue:i},{provide:gV,useValue:e.data}]})}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var B0=class t{snackBar=w(CV);MAX_LENGTH=250;open(A,e,i){let n=this.truncate(A,this.MAX_LENGTH);return this.snackBar.open(n,e,i)}truncate(A,e){return A?A.length>e?A.substring(0,e)+"...":A:""}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var gBe=["*",[["mat-toolbar-row"]]],CBe=["*","mat-toolbar-row"],dBe=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]})}return t})(),dV=(()=>{class t{_elementRef=w(dA);_platform=w(pi);_document=w(Ii);color;_toolbarRows;constructor(){}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){this._toolbarRows.length}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-toolbar"]],contentQueries:function(i,n,o){if(i&1&&ga(o,dBe,5),i&2){let a;cA(a=gA())&&(n._toolbarRows=a)}},hostAttrs:[1,"mat-toolbar"],hostVars:6,hostBindings:function(i,n){i&2&&(Ao(n.color?"mat-"+n.color:""),_e("mat-toolbar-multiple-rows",n._toolbarRows.length>0)("mat-toolbar-single-row",n._toolbarRows.length===0))},inputs:{color:"color"},exportAs:["matToolbar"],ngContentSelectors:CBe,decls:2,vars:0,template:function(i,n){i&1&&(Yt(gBe),tt(0),tt(1,1))},styles:[`.mat-toolbar{background:var(--mat-toolbar-container-background-color, var(--mat-sys-surface));color:var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface))}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font-family:var(--mat-toolbar-title-text-font, var(--mat-sys-title-large-font));font-size:var(--mat-toolbar-title-text-size, var(--mat-sys-title-large-size));line-height:var(--mat-toolbar-title-text-line-height, var(--mat-sys-title-large-line-height));font-weight:var(--mat-toolbar-title-text-weight, var(--mat-sys-title-large-weight));letter-spacing:var(--mat-toolbar-title-text-tracking, var(--mat-sys-title-large-tracking));margin:0}@media(forced-colors: active){.mat-toolbar{outline:solid 1px}}.mat-toolbar .mat-form-field-underline,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-focused .mat-form-field-ripple{background-color:currentColor}.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-select-value,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-toolbar .mat-mdc-button-base.mat-mdc-button-base.mat-unthemed{--mat-button-text-label-text-color: var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface));--mat-button-outlined-label-text-color: var(--mat-toolbar-container-text-color, var(--mat-sys-on-surface))}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap;height:var(--mat-toolbar-standard-height, 64px)}@media(max-width: 599px){.mat-toolbar-row,.mat-toolbar-single-row{height:var(--mat-toolbar-mobile-height, 56px)}}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%;min-height:var(--mat-toolbar-standard-height, 64px)}@media(max-width: 599px){.mat-toolbar-multiple-rows{min-height:var(--mat-toolbar-mobile-height, 56px)}} +`],encapsulation:2,changeDetection:0})}return t})();var Ur=class t{static getBaseUrlWithoutPath(){let A=window.location.href;return new URL(A).origin+"/dev-ui/"}static getApiServerBaseUrl(){return window.runtimeConfig?.backendUrl||""}static getWSServerUrl(){let A=t.getApiServerBaseUrl();return!A||A==""?window.location.host:A.startsWith("http://")?A.slice(7):A.startsWith("https://")?A.slice(8):A}};var Bp=class{role;text;thought;isLoading;isEditing;evalStatus;failedMetric;attachments;renderedContent;a2uiData;textParts;executableCode;codeExecutionResult;event;inlineData;functionCalls;functionResponses;actualInvocationToolUses;expectedInvocationToolUses;actualFinalResponse;expectedFinalResponse;evalScore;evalThreshold;invocationIndex;finalResponsePartIndex;toolUseIndex;error;constructor(A){if(Object.assign(this,A),this.event?.actions)for(let[e,i]of Object.entries(this.event.actions))i!==null&&typeof i=="object"&&Object.keys(i).length===0&&delete this.event.actions[e]}get stateDelta(){return this.event?.actions?.stateDelta}get artifactDelta(){return this.event?.actions?.artifactDelta}get route(){return this.event?.actions?.route}get transferToAgent(){return this.event?.actions?.transferToAgent}get nodePath(){return this.event?.nodeInfo?.path||null}get bareNodePath(){let A=this.nodePath;return A?A.split("/").map(e=>e.split("@")[0]).join("/"):null}get author(){return this.event?.author??"root_agent"}};var gl=new Me("AgentService");var h0=new Me("AgentBuilderService");var eh=new Me("ArtifactService");var Ah=new Me("DownloadService");var u0=new Me("EvalService");var A8=new Me("EventService");var IV="edit_function_args";var BV="a2a_card",hV="tests",uV="eval_v2",Tr=new Me("FeatureFlagService");var th=new Me("GraphService");var t8=new Me("LocalFileService");var ys=new Me("SafeValuesService"),i8=class{openBase64InNewTab(A,e){try{if(!A)return;let i=A;if(A.startsWith("data:")&&A.includes(";base64,")&&(i=i.substring(i.indexOf(";base64,")+8)),!e||!i)return;let n=atob(i),o=new Array(n.length);for(let l=0;l{fetch(i,{method:"POST"}).then(o=>{if(!o.body){n.error("No response body");return}let a=o.body.getReader(),r=new TextDecoder("utf-8"),s=()=>{a.read().then(({done:l,value:c})=>{if(l){this.zone.run(()=>n.complete());return}let C=r.decode(c,{stream:!0});this.zone.run(()=>n.next(C)),s()}).catch(l=>{this.zone.run(()=>n.error(l))})};s()}).catch(o=>{this.zone.run(()=>n.error(o))})})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var r8=class t{constructor(A,e){this.el=A;this.renderer=e}sideDrawerMinWidth=360;sideDrawerMaxWidth=window.innerWidth/2;resizeHandle=null;resizingEvent={isResizing:!1,startingCursorX:0,startingWidth:0};ngAfterViewInit(){this.sideDrawerMaxWidth=window.innerWidth/2,this.resizeHandle=document.getElementsByClassName("resize-handler")[0],this.resizeHandle&&this.renderer.listen(this.resizeHandle,"mousedown",A=>this.onResizeHandleMouseDown(A)),document.documentElement.style.setProperty("--side-drawer-width","480px"),this.renderer.setStyle(this.el.nativeElement,"width","var(--side-drawer-width)")}onResizeHandleMouseDown(A){this.resizingEvent={isResizing:!0,startingCursorX:A.clientX,startingWidth:this.sideDrawerWidth},A.preventDefault()}onMouseMove(A){if(!this.resizingEvent.isResizing)return;let e=A.clientX-this.resizingEvent.startingCursorX,i=this.resizingEvent.startingWidth+e;this.sideDrawerWidth=i,this.renderer.addClass(document.body,"resizing")}onMouseUp(){this.resizingEvent.isResizing=!1,this.renderer.removeClass(document.body,"resizing")}onResize(){this.sideDrawerMaxWidth=window.innerWidth/2,this.sideDrawerWidth=this.sideDrawerWidth}set sideDrawerWidth(A){let e=Math.min(Math.max(A,this.sideDrawerMinWidth),this.sideDrawerMaxWidth);document.documentElement.style.setProperty("--side-drawer-width",`${e}px`)}get sideDrawerWidth(){let A=getComputedStyle(document.documentElement).getPropertyValue("--side-drawer-width"),e=parseFloat(A);return isNaN(e)?480:e}static \u0275fac=function(e){return new(e||t)(dt(dA),dt(rn))};static \u0275dir=We({type:t,selectors:[["","appResizableDrawer",""]],hostBindings:function(e,i){e&1&&U("mousemove",function(o){return i.onMouseMove(o)},oB)("mouseup",function(){return i.onMouseUp()},oB)("resize",function(){return i.onResize()},Zc)}})};var s8=Symbol.for("yaml.alias"),l8=Symbol.for("yaml.document"),sg=Symbol.for("yaml.map"),_S=Symbol.for("yaml.pair"),Yl=Symbol.for("yaml.scalar"),uC=Symbol.for("yaml.seq"),Ys=Symbol.for("yaml.node.type"),fc=t=>!!t&&typeof t=="object"&&t[Ys]===s8,lg=t=>!!t&&typeof t=="object"&&t[Ys]===l8,cg=t=>!!t&&typeof t=="object"&&t[Ys]===sg,On=t=>!!t&&typeof t=="object"&&t[Ys]===_S,cn=t=>!!t&&typeof t=="object"&&t[Ys]===Yl,gg=t=>!!t&&typeof t=="object"&&t[Ys]===uC;function bo(t){if(t&&typeof t=="object")switch(t[Ys]){case sg:case uC:return!0}return!1}function jn(t){if(t&&typeof t=="object")switch(t[Ys]){case s8:case sg:case Yl:case uC:return!0}return!1}var c8=t=>(cn(t)||bo(t))&&!!t.anchor;var dl=Symbol("break visit"),EV=Symbol("skip children"),E0=Symbol("remove node");function Q0(t,A){let e=QV(A);lg(t)?rh(null,t.contents,e,Object.freeze([t]))===E0&&(t.contents=null):rh(null,t,e,Object.freeze([]))}Q0.BREAK=dl;Q0.SKIP=EV;Q0.REMOVE=E0;function rh(t,A,e,i){let n=pV(t,A,e,i);if(jn(n)||On(n))return mV(t,i,n),rh(t,n,e,i);if(typeof n!="symbol"){if(bo(A)){i=Object.freeze(i.concat(A));for(let o=0;ot.replace(/[!,[\]{}]/g,A=>IBe[A]),lh=(()=>{class t{constructor(e,i){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},t.defaultYaml,e),this.tags=Object.assign({},t.defaultTags,i)}clone(){let e=new t(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new t(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:t.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},t.defaultTags);break}return e}add(e,i){this.atNextDocument&&(this.yaml={explicit:t.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},t.defaultTags),this.atNextDocument=!1);let n=e.trim().split(/[ \t]+/),o=n.shift();switch(o){case"%TAG":{if(n.length!==2&&(i(0,"%TAG directive should contain exactly two parts"),n.length<2))return!1;let[a,r]=n;return this.tags[a]=r,!0}case"%YAML":{if(this.yaml.explicit=!0,n.length!==1)return i(0,"%YAML directive should contain exactly one part"),!1;let[a]=n;if(a==="1.1"||a==="1.2")return this.yaml.version=a,!0;{let r=/^\d+\.\d+$/.test(a);return i(6,`Unsupported YAML version ${a}`,r),!1}}default:return i(0,`Unknown directive ${o}`,!0),!1}}tagName(e,i){if(e==="!")return"!";if(e[0]!=="!")return i(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let r=e.slice(2,-1);return r==="!"||r==="!!"?(i(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&i("Verbatim tags must end with a >"),r)}let[,n,o]=e.match(/^(.*!)([^!]*)$/s);o||i(`The ${e} tag has no suffix`);let a=this.tags[n];if(a)try{return a+decodeURIComponent(o)}catch(r){return i(String(r)),null}return n==="!"?e:(i(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[i,n]of Object.entries(this.tags))if(e.startsWith(n))return i+BBe(e.substring(n.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let i=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],n=Object.entries(this.tags),o;if(e&&n.length>0&&jn(e.contents)){let a={};Q0(e.contents,(r,s)=>{jn(s)&&s.tag&&(a[s.tag]=!0)}),o=Object.keys(a)}else o=[];for(let[a,r]of n)a==="!!"&&r==="tag:yaml.org,2002:"||(!e||o.some(s=>s.startsWith(r)))&&i.push(`%TAG ${a} ${r}`);return i.join(` +`)}}return t.defaultYaml={explicit:!1,version:"1.2"},t.defaultTags={"!!":"tag:yaml.org,2002:"},t})();function C8(t){if(/[\x00-\x19\s,[\]{}]/.test(t)){let e=`Anchor must not contain whitespace or control characters: ${JSON.stringify(t)}`;throw new Error(e)}return!0}function xS(t){let A=new Set;return Q0(t,{Value(e,i){i.anchor&&A.add(i.anchor)}}),A}function RS(t,A){for(let e=1;;++e){let i=`${t}${e}`;if(!A.has(i))return i}}function fV(t,A){let e=[],i=new Map,n=null;return{onAnchor:o=>{e.push(o),n??(n=xS(t));let a=RS(A,n);return n.add(a),a},setAnchors:()=>{for(let o of e){let a=i.get(o);if(typeof a=="object"&&a.anchor&&(cn(a.node)||bo(a.node)))a.node.anchor=a.anchor;else{let r=new Error("Failed to resolve repeated object (this should not happen)");throw r.source=o,r}}},sourceObjects:i}}function Nd(t,A,e,i){if(i&&typeof i=="object")if(Array.isArray(i))for(let n=0,o=i.length;nDr(i,String(n),e));if(t&&typeof t.toJSON=="function"){if(!e||!c8(t))return t.toJSON(A,e);let i={aliasCount:0,count:1,res:void 0};e.anchors.set(t,i),e.onCreate=o=>{i.res=o,delete e.onCreate};let n=t.toJSON(A,e);return e.onCreate&&e.onCreate(n),n}return typeof t=="bigint"&&!e?.keep?Number(t):t}var Fd=class{constructor(A){Object.defineProperty(this,Ys,{value:A})}clone(){let A=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(A.range=this.range.slice()),A}toJS(A,{mapAsMap:e,maxAliasCount:i,onAnchor:n,reviver:o}={}){if(!lg(A))throw new TypeError("A document argument is required");let a={anchors:new Map,doc:A,keep:!0,mapAsMap:e===!0,mapKeyWarned:!1,maxAliasCount:typeof i=="number"?i:100},r=Dr(this,"",a);if(typeof n=="function")for(let{count:s,res:l}of a.anchors.values())n(l,s);return typeof o=="function"?Nd(o,{"":r},"",r):r}};var EC=class extends Fd{constructor(A){super(s8),this.source=A,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(A,e){let i;e?.aliasResolveCache?i=e.aliasResolveCache:(i=[],Q0(A,{Node:(o,a)=>{(fc(a)||c8(a))&&i.push(a)}}),e&&(e.aliasResolveCache=i));let n;for(let o of i){if(o===this)break;o.anchor===this.source&&(n=o)}return n}toJSON(A,e){if(!e)return{source:this.source};let{anchors:i,doc:n,maxAliasCount:o}=e,a=this.resolve(n,e);if(!a){let s=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(s)}let r=i.get(a);if(r||(Dr(a,null,e),r=i.get(a)),r?.res===void 0){let s="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(s)}if(o>=0&&(r.count+=1,r.aliasCount===0&&(r.aliasCount=d8(n,a,i)),r.count*r.aliasCount>o)){let s="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(s)}return r.res}toString(A,e,i){let n=`*${this.source}`;if(A){if(C8(this.source),A.options.verifyAliasOrder&&!A.anchors.has(this.source)){let o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(A.implicitKey)return`${n} `}return n}};function d8(t,A,e){if(fc(A)){let i=A.resolve(t),n=e&&i&&e.get(i);return n?n.count*n.aliasCount:0}else if(bo(A)){let i=0;for(let n of A.items){let o=d8(t,n,e);o>i&&(i=o)}return i}else if(On(A)){let i=d8(t,A.key,e),n=d8(t,A.value,e);return Math.max(i,n)}return 1}var I8=t=>!t||typeof t!="function"&&typeof t!="object",ti=(()=>{class t extends Fd{constructor(e){super(Yl),this.value=e}toJSON(e,i){return i?.keep?this.value:Dr(this.value,e,i)}toString(){return String(this.value)}}return t.BLOCK_FOLDED="BLOCK_FOLDED",t.BLOCK_LITERAL="BLOCK_LITERAL",t.PLAIN="PLAIN",t.QUOTE_DOUBLE="QUOTE_DOUBLE",t.QUOTE_SINGLE="QUOTE_SINGLE",t})();var hBe="tag:yaml.org,2002:";function uBe(t,A,e){if(A){let i=e.filter(o=>o.tag===A),n=i.find(o=>!o.format)??i[0];if(!n)throw new Error(`Tag ${A} not found`);return n}return e.find(i=>i.identify?.(t)&&!i.format)}function QC(t,A,e){if(lg(t)&&(t=t.contents),jn(t))return t;if(On(t)){let C=e.schema[sg].createNode?.(e.schema,null,e);return C.items.push(t),C}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());let{aliasDuplicateObjects:i,onAnchor:n,onTagObj:o,schema:a,sourceObjects:r}=e,s;if(i&&t&&typeof t=="object"){if(s=r.get(t),s)return s.anchor??(s.anchor=n(t)),new EC(s.anchor);s={anchor:null,node:null},r.set(t,s)}A?.startsWith("!!")&&(A=hBe+A.slice(2));let l=uBe(t,A,a.tags);if(!l){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){let C=new ti(t);return s&&(s.node=C),C}l=t instanceof Map?a[sg]:Symbol.iterator in Object(t)?a[uC]:a[sg]}o&&(o(l),delete e.onTagObj);let c=l?.createNode?l.createNode(e.schema,t,e):typeof l?.nodeClass?.from=="function"?l.nodeClass.from(e.schema,t,e):new ti(t);return A?c.tag=A:l.default||(c.tag=l.tag),s&&(s.node=c),c}function hp(t,A,e){let i=e;for(let n=A.length-1;n>=0;--n){let o=A[n];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){let a=[];a[o]=i,i=a}else i=new Map([[o,i]])}return QC(i,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}var gh=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done,ch=class extends Fd{constructor(A,e){super(A),Object.defineProperty(this,"schema",{value:e,configurable:!0,enumerable:!1,writable:!0})}clone(A){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return A&&(e.schema=A),e.items=e.items.map(i=>jn(i)||On(i)?i.clone(A):i),this.range&&(e.range=this.range.slice()),e}addIn(A,e){if(gh(A))this.add(e);else{let[i,...n]=A,o=this.get(i,!0);if(bo(o))o.addIn(n,e);else if(o===void 0&&this.schema)this.set(i,hp(this.schema,n,e));else throw new Error(`Expected YAML collection at ${i}. Remaining path: ${n}`)}}deleteIn(A){let[e,...i]=A;if(i.length===0)return this.delete(e);let n=this.get(e,!0);if(bo(n))return n.deleteIn(i);throw new Error(`Expected YAML collection at ${e}. Remaining path: ${i}`)}getIn(A,e){let[i,...n]=A,o=this.get(i,!0);return n.length===0?!e&&cn(o)?o.value:o:bo(o)?o.getIn(n,e):void 0}hasAllNullValues(A){return this.items.every(e=>{if(!On(e))return!1;let i=e.value;return i==null||A&&cn(i)&&i.value==null&&!i.commentBefore&&!i.comment&&!i.tag})}hasIn(A){let[e,...i]=A;if(i.length===0)return this.has(e);let n=this.get(e,!0);return bo(n)?n.hasIn(i):!1}setIn(A,e){let[i,...n]=A;if(n.length===0)this.set(i,e);else{let o=this.get(i,!0);if(bo(o))o.setIn(n,e);else if(o===void 0&&this.schema)this.set(i,hp(this.schema,n,e));else throw new Error(`Expected YAML collection at ${i}. Remaining path: ${n}`)}}};var wV=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function wc(t,A){return/^\n+$/.test(t)?t.substring(1):A?t.replace(/^(?! *$)/gm,A):t}var p0=(t,A,e)=>t.endsWith(` +`)?wc(e,A):e.includes(` +`)?` +`+wc(e,A):(t.endsWith(" ")?"":" ")+e;var NS="flow",B8="block",up="quoted";function Ep(t,A,e="flow",{indentAtStart:i,lineWidth:n=80,minContentWidth:o=20,onFold:a,onOverflow:r}={}){if(!n||n<0)return t;nn-Math.max(2,o)?l.push(0):C=n-i);let d,B,E=!1,u=-1,m=-1,f=-1;e===B8&&(u=yV(t,u,A.length),u!==-1&&(C=u+s));for(let S;S=t[u+=1];){if(e===up&&S==="\\"){switch(m=u,t[u+1]){case"x":u+=3;break;case"u":u+=5;break;case"U":u+=9;break;default:u+=1}f=u}if(S===` +`)e===B8&&(u=yV(t,u,A.length)),C=u+A.length+s,d=void 0;else{if(S===" "&&B&&B!==" "&&B!==` +`&&B!==" "){let k=t[u+1];k&&k!==" "&&k!==` +`&&k!==" "&&(d=u)}if(u>=C)if(d)l.push(d),C=d+s,d=void 0;else if(e===up){for(;B===" "||B===" ";)B=S,S=t[u+=1],E=!0;let k=u>f+1?u-2:m-1;if(c[k])return t;l.push(k),c[k]=!0,C=k+s,d=void 0}else E=!0}B=S}if(E&&r&&r(),l.length===0)return t;a&&a();let D=t.slice(0,l[0]);for(let S=0;S({indentAtStart:A?t.indent.length:t.indentAtStart,lineWidth:t.options.lineWidth,minContentWidth:t.options.minContentWidth}),E8=t=>/^(%|---|\.\.\.)/m.test(t);function EBe(t,A,e){if(!A||A<0)return!1;let i=A-e,n=t.length;if(n<=i)return!1;for(let o=0,a=0;oi)return!0;if(a=o+1,n-a<=i)return!1}return!0}function Qp(t,A){let e=JSON.stringify(t);if(A.options.doubleQuotedAsJSON)return e;let{implicitKey:i}=A,n=A.options.doubleQuotedMinMultiLineLength,o=A.indent||(E8(t)?" ":""),a="",r=0;for(let s=0,l=e[s];l;l=e[++s])if(l===" "&&e[s+1]==="\\"&&e[s+2]==="n"&&(a+=e.slice(r,s)+"\\ ",s+=1,r=s,l="\\"),l==="\\")switch(e[s+1]){case"u":{a+=e.slice(r,s);let c=e.substr(s+2,4);switch(c){case"0000":a+="\\0";break;case"0007":a+="\\a";break;case"000b":a+="\\v";break;case"001b":a+="\\e";break;case"0085":a+="\\N";break;case"00a0":a+="\\_";break;case"2028":a+="\\L";break;case"2029":a+="\\P";break;default:c.substr(0,2)==="00"?a+="\\x"+c.substr(2):a+=e.substr(s,6)}s+=5,r=s+1}break;case"n":if(i||e[s+2]==='"'||e.length +`;let C,d;for(d=e.length;d>0;--d){let b=e[d-1];if(b!==` +`&&b!==" "&&b!==" ")break}let B=e.substring(d),E=B.indexOf(` +`);E===-1?C="-":e===B||E!==B.length-1?(C="+",o&&o()):C="",B&&(e=e.slice(0,-B.length),B[B.length-1]===` +`&&(B=B.slice(0,-1)),B=B.replace(LS,`$&${l}`));let u=!1,m,f=-1;for(m=0;m{x=!0});let P=Ep(`${D}${b}${B}`,l,B8,F);if(!x)return`>${k} +${l}${P}`}return e=e.replace(/\n+/g,`$&${l}`),`|${k} +${l}${D}${e}${B}`}function QBe(t,A,e,i){let{type:n,value:o}=t,{actualString:a,implicitKey:r,indent:s,indentStep:l,inFlow:c}=A;if(r&&o.includes(` +`)||c&&/[[\]{},]/.test(o))return Ch(o,A);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return r||c||!o.includes(` +`)?Ch(o,A):h8(t,A,e,i);if(!r&&!c&&n!==ti.PLAIN&&o.includes(` +`))return h8(t,A,e,i);if(E8(o)){if(s==="")return A.forceBlockIndent=!0,h8(t,A,e,i);if(r&&s===l)return Ch(o,A)}let C=o.replace(/\n+/g,`$& +${s}`);if(a){let d=u=>u.default&&u.tag!=="tag:yaml.org,2002:str"&&u.test?.test(C),{compat:B,tags:E}=A.doc.schema;if(E.some(d)||B?.some(d))return Ch(o,A)}return r?C:Ep(C,s,NS,u8(A,!1))}function KI(t,A,e,i){let{implicitKey:n,inFlow:o}=A,a=typeof t.value=="string"?t:Object.assign({},t,{value:String(t.value)}),{type:r}=t;r!==ti.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(a.value)&&(r=ti.QUOTE_DOUBLE);let s=c=>{switch(c){case ti.BLOCK_FOLDED:case ti.BLOCK_LITERAL:return n||o?Ch(a.value,A):h8(a,A,e,i);case ti.QUOTE_DOUBLE:return Qp(a.value,A);case ti.QUOTE_SINGLE:return FS(a.value,A);case ti.PLAIN:return QBe(a,A,e,i);default:return null}},l=s(r);if(l===null){let{defaultKeyType:c,defaultStringType:C}=A.options,d=n&&c||C;if(l=s(d),l===null)throw new Error(`Unsupported default string type ${d}`)}return l}function Q8(t,A){let e=Object.assign({blockQuote:!0,commentString:wV,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trueStr:"true",verifyAliasOrder:!0},t.schema.toStringOptions,A),i;switch(e.collectionStyle){case"block":i=!1;break;case"flow":i=!0;break;default:i=null}return{anchors:new Set,doc:t,flowCollectionPadding:e.flowCollectionPadding?" ":"",indent:"",indentStep:typeof e.indent=="number"?" ".repeat(e.indent):" ",inFlow:i,options:e}}function pBe(t,A){if(A.tag){let n=t.filter(o=>o.tag===A.tag);if(n.length>0)return n.find(o=>o.format===A.format)??n[0]}let e,i;if(cn(A)){i=A.value;let n=t.filter(o=>o.identify?.(i));if(n.length>1){let o=n.filter(a=>a.test);o.length>0&&(n=o)}e=n.find(o=>o.format===A.format)??n.find(o=>!o.format)}else i=A,e=t.find(n=>n.nodeClass&&i instanceof n.nodeClass);if(!e){let n=i?.constructor?.name??(i===null?"null":typeof i);throw new Error(`Tag not resolved for ${n} value`)}return e}function mBe(t,A,{anchors:e,doc:i}){if(!i.directives)return"";let n=[],o=(cn(t)||bo(t))&&t.anchor;o&&C8(o)&&(e.add(o),n.push(`&${o}`));let a=t.tag??(A.default?null:A.tag);return a&&n.push(i.directives.tagString(a)),n.join(" ")}function pC(t,A,e,i){if(On(t))return t.toString(A,e,i);if(fc(t)){if(A.doc.directives)return t.toString(A);if(A.resolvedAliases?.has(t))throw new TypeError("Cannot stringify circular structure without alias nodes");A.resolvedAliases?A.resolvedAliases.add(t):A.resolvedAliases=new Set([t]),t=t.resolve(A.doc)}let n,o=jn(t)?t:A.doc.createNode(t,{onTagObj:s=>n=s});n??(n=pBe(A.doc.schema.tags,o));let a=mBe(o,n,A);a.length>0&&(A.indentAtStart=(A.indentAtStart??0)+a.length+1);let r=typeof n.stringify=="function"?n.stringify(o,A,e,i):cn(o)?KI(o,A,e,i):o.toString(A,e,i);return a?cn(o)||r[0]==="{"||r[0]==="["?`${a} ${r}`:`${a} +${A.indent}${r}`:r}function vV({key:t,value:A},e,i,n){let{allNullValues:o,doc:a,indent:r,indentStep:s,options:{commentString:l,indentSeq:c,simpleKeys:C}}=e,d=jn(t)&&t.comment||null;if(C){if(d)throw new Error("With simple keys, key nodes cannot have comments");if(bo(t)||!jn(t)&&typeof t=="object"){let F="With simple keys, collection cannot be used as a key value";throw new Error(F)}}let B=!C&&(!t||d&&A==null&&!e.inFlow||bo(t)||(cn(t)?t.type===ti.BLOCK_FOLDED||t.type===ti.BLOCK_LITERAL:typeof t=="object"));e=Object.assign({},e,{allNullValues:!1,implicitKey:!B&&(C||!o),indent:r+s});let E=!1,u=!1,m=pC(t,e,()=>E=!0,()=>u=!0);if(!B&&!e.inFlow&&m.length>1024){if(C)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");B=!0}if(e.inFlow){if(o||A==null)return E&&i&&i(),m===""?"?":B?`? ${m}`:m}else if(o&&!C||A==null&&B)return m=`? ${m}`,d&&!E?m+=p0(m,e.indent,l(d)):u&&n&&n(),m;E&&(d=null),B?(d&&(m+=p0(m,e.indent,l(d))),m=`? ${m} +${r}:`):(m=`${m}:`,d&&(m+=p0(m,e.indent,l(d))));let f,D,S;jn(A)?(f=!!A.spaceBefore,D=A.commentBefore,S=A.comment):(f=!1,D=null,S=null,A&&typeof A=="object"&&(A=a.createNode(A))),e.implicitKey=!1,!B&&!d&&cn(A)&&(e.indentAtStart=m.length+1),u=!1,!c&&s.length>=2&&!e.inFlow&&!B&&gg(A)&&!A.flow&&!A.tag&&!A.anchor&&(e.indent=e.indent.substring(2));let k=!1,b=pC(A,e,()=>k=!0,()=>u=!0),x=" ";if(d||f||D){if(x=f?` +`:"",D){let F=l(D);x+=` +${wc(F,e.indent)}`}b===""&&!e.inFlow?x===` +`&&S&&(x=` + +`):x+=` +${e.indent}`}else if(!B&&bo(A)){let F=b[0],P=b.indexOf(` +`),j=P!==-1,X=e.inFlow??A.flow??A.items.length===0;if(j||!X){let Ae=!1;if(j&&(F==="&"||F==="!")){let W=b.indexOf(" ");F==="&"&&W!==-1&&Wt===m8||typeof t=="symbol"&&t.description===m8,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new ti(Symbol(m8)),{addToJSMap:KS}),stringify:()=>m8},DV=(t,A)=>(Cg.identify(A)||cn(A)&&(!A.type||A.type===ti.PLAIN)&&Cg.identify(A.value))&&t?.doc.schema.tags.some(e=>e.tag===Cg.tag&&e.default);function KS(t,A,e){if(e=t&&fc(e)?e.resolve(t.doc):e,gg(e))for(let i of e.items)GS(t,A,i);else if(Array.isArray(e))for(let i of e)GS(t,A,i);else GS(t,A,e)}function GS(t,A,e){let i=t&&fc(e)?e.resolve(t.doc):e;if(!cg(i))throw new Error("Merge sources must be maps or map aliases");let n=i.toJSON(null,t,Map);for(let[o,a]of n)A instanceof Map?A.has(o)||A.set(o,a):A instanceof Set?A.add(o):Object.prototype.hasOwnProperty.call(A,o)||Object.defineProperty(A,o,{value:a,writable:!0,enumerable:!0,configurable:!0});return A}function f8(t,A,{key:e,value:i}){if(jn(e)&&e.addToJSMap)e.addToJSMap(t,A,i);else if(DV(t,e))KS(t,A,i);else{let n=Dr(e,"",t);if(A instanceof Map)A.set(n,Dr(i,n,t));else if(A instanceof Set)A.add(n);else{let o=fBe(e,n,t),a=Dr(i,o,t);o in A?Object.defineProperty(A,o,{value:a,writable:!0,enumerable:!0,configurable:!0}):A[o]=a}}return A}function fBe(t,A,e){if(A===null)return"";if(typeof A!="object")return String(A);if(jn(t)&&e?.doc){let i=Q8(e.doc,{});i.anchors=new Set;for(let o of e.anchors.keys())i.anchors.add(o.anchor);i.inFlow=!0,i.inStringifyKey=!0;let n=t.toString(i);if(!e.mapKeyWarned){let o=JSON.stringify(n);o.length>40&&(o=o.substring(0,36)+'..."'),p8(e.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),e.mapKeyWarned=!0}return n}return JSON.stringify(A)}function dh(t,A,e){let i=QC(t,void 0,e),n=QC(A,void 0,e);return new Za(i,n)}var Za=class t{constructor(A,e=null){Object.defineProperty(this,Ys,{value:_S}),this.key=A,this.value=e}clone(A){let{key:e,value:i}=this;return jn(e)&&(e=e.clone(A)),jn(i)&&(i=i.clone(A)),new t(e,i)}toJSON(A,e){let i=e?.mapAsMap?new Map:{};return f8(e,i,this)}toString(A,e,i){return A?.doc?vV(this,A,e,i):JSON.stringify(this)}};function y8(t,A,e){return(A.inFlow??t.flow?yBe:wBe)(t,A,e)}function wBe({comment:t,items:A},e,{blockItemPrefix:i,flowChars:n,itemIndent:o,onChompKeep:a,onComment:r}){let{indent:s,options:{commentString:l}}=e,c=Object.assign({},e,{indent:o,type:null}),C=!1,d=[];for(let E=0;Em=null,()=>C=!0);m&&(f+=p0(f,o,l(m))),C&&m&&(C=!1),d.push(i+f)}let B;if(d.length===0)B=n.start+n.end;else{B=d[0];for(let E=1;Em=null);Ec||f.includes(` +`))&&(l=!0),C.push(f),c=C.length}let{start:d,end:B}=e;if(C.length===0)return d+B;if(!l){let E=C.reduce((u,m)=>u+m.length+2,2);l=A.options.lineWidth>0&&E>A.options.lineWidth}if(l){let E=d;for(let u of C)E+=u?` +${o}${n}${u}`:` +`;return`${E} +${n}${B}`}else return`${d}${a}${C.join(" ")}${a}${B}`}function w8({indent:t,options:{commentString:A}},e,i,n){if(i&&n&&(i=i.replace(/^\n+/,"")),i){let o=wc(A(i),t);e.push(o.trimStart())}}function Ld(t,A){let e=cn(A)?A.value:A;for(let i of t)if(On(i)&&(i.key===A||i.key===e||cn(i.key)&&i.key.value===e))return i}var or=class extends ch{static get tagName(){return"tag:yaml.org,2002:map"}constructor(A){super(sg,A),this.items=[]}static from(A,e,i){let{keepUndefined:n,replacer:o}=i,a=new this(A),r=(s,l)=>{if(typeof o=="function")l=o.call(e,s,l);else if(Array.isArray(o)&&!o.includes(s))return;(l!==void 0||n)&&a.items.push(dh(s,l,i))};if(e instanceof Map)for(let[s,l]of e)r(s,l);else if(e&&typeof e=="object")for(let s of Object.keys(e))r(s,e[s]);return typeof A.sortMapEntries=="function"&&a.items.sort(A.sortMapEntries),a}add(A,e){let i;On(A)?i=A:!A||typeof A!="object"||!("key"in A)?i=new Za(A,A?.value):i=new Za(A.key,A.value);let n=Ld(this.items,i.key),o=this.schema?.sortMapEntries;if(n){if(!e)throw new Error(`Key ${i.key} already set`);cn(n.value)&&I8(i.value)?n.value.value=i.value:n.value=i.value}else if(o){let a=this.items.findIndex(r=>o(i,r)<0);a===-1?this.items.push(i):this.items.splice(a,0,i)}else this.items.push(i)}delete(A){let e=Ld(this.items,A);return e?this.items.splice(this.items.indexOf(e),1).length>0:!1}get(A,e){let n=Ld(this.items,A)?.value;return(!e&&cn(n)?n.value:n)??void 0}has(A){return!!Ld(this.items,A)}set(A,e){this.add(new Za(A,e),!0)}toJSON(A,e,i){let n=i?new i:e?.mapAsMap?new Map:{};e?.onCreate&&e.onCreate(n);for(let o of this.items)f8(e,n,o);return n}toString(A,e,i){if(!A)return JSON.stringify(this);for(let n of this.items)if(!On(n))throw new Error(`Map items must all be pairs; found ${JSON.stringify(n)} instead`);return!A.allNullValues&&this.hasAllNullValues(!1)&&(A=Object.assign({},A,{allNullValues:!0})),y8(this,A,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:A.indent||"",onChompKeep:i,onComment:e})}};var dg={collection:"map",default:!0,nodeClass:or,tag:"tag:yaml.org,2002:map",resolve(t,A){return cg(t)||A("Expected a mapping for this tag"),t},createNode:(t,A,e)=>or.from(t,A,e)};var vs=class extends ch{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(A){super(uC,A),this.items=[]}add(A){this.items.push(A)}delete(A){let e=v8(A);return typeof e!="number"?!1:this.items.splice(e,1).length>0}get(A,e){let i=v8(A);if(typeof i!="number")return;let n=this.items[i];return!e&&cn(n)?n.value:n}has(A){let e=v8(A);return typeof e=="number"&&e=0?A:null}var Ig={collection:"seq",default:!0,nodeClass:vs,tag:"tag:yaml.org,2002:seq",resolve(t,A){return gg(t)||A("Expected a sequence for this tag"),t},createNode:(t,A,e)=>vs.from(t,A,e)};var Gd={identify:t=>typeof t=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:t=>t,stringify(t,A,e,i){return A=Object.assign({actualString:!0},A),KI(t,A,e,i)}};var UI={identify:t=>t==null,createNode:()=>new ti(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new ti(null),stringify:({source:t},A)=>typeof t=="string"&&UI.test.test(t)?t:A.options.nullStr};var pp={identify:t=>typeof t=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:t=>new ti(t[0]==="t"||t[0]==="T"),stringify({source:t,value:A},e){if(t&&pp.test.test(t)){let i=t[0]==="t"||t[0]==="T";if(A===i)return t}return A?e.options.trueStr:e.options.falseStr}};function Ds({format:t,minFractionDigits:A,tag:e,value:i}){if(typeof i=="bigint")return String(i);let n=typeof i=="number"?i:Number(i);if(!isFinite(n))return isNaN(n)?".nan":n<0?"-.inf":".inf";let o=Object.is(i,-0)?"-0":JSON.stringify(i);if(!t&&A&&(!e||e==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let a=o.indexOf(".");a<0&&(a=o.length,o+=".");let r=A-(o.length-a-1);for(;r-- >0;)o+="0"}return o}var D8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:t=>t.slice(-3).toLowerCase()==="nan"?NaN:t[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Ds},b8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:t=>parseFloat(t),stringify(t){let A=Number(t.value);return isFinite(A)?A.toExponential():Ds(t)}},M8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(t){let A=new ti(parseFloat(t)),e=t.indexOf(".");return e!==-1&&t[t.length-1]==="0"&&(A.minFractionDigits=t.length-e-1),A},stringify:Ds};var S8=t=>typeof t=="bigint"||Number.isInteger(t),US=(t,A,e,{intAsBigInt:i})=>i?BigInt(t):parseInt(t.substring(A),e);function bV(t,A,e){let{value:i}=t;return S8(i)&&i>=0?e+i.toString(A):Ds(t)}var k8={identify:t=>S8(t)&&t>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(t,A,e)=>US(t,2,8,e),stringify:t=>bV(t,8,"0o")},_8={identify:S8,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(t,A,e)=>US(t,0,10,e),stringify:Ds},x8={identify:t=>S8(t)&&t>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(t,A,e)=>US(t,2,16,e),stringify:t=>bV(t,16,"0x")};var MV=[dg,Ig,Gd,UI,pp,k8,_8,x8,D8,b8,M8];function SV(t){return typeof t=="bigint"||Number.isInteger(t)}var R8=({value:t})=>JSON.stringify(t),vBe=[{identify:t=>typeof t=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:t=>t,stringify:R8},{identify:t=>t==null,createNode:()=>new ti(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:R8},{identify:t=>typeof t=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:t=>t==="true",stringify:R8},{identify:SV,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(t,A,{intAsBigInt:e})=>e?BigInt(t):parseInt(t,10),stringify:({value:t})=>SV(t)?t.toString():JSON.stringify(t)},{identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:t=>parseFloat(t),stringify:R8}],DBe={default:!0,tag:"",test:/^/,resolve(t,A){return A(`Unresolved plain scalar ${JSON.stringify(t)}`),t}},kV=[dg,Ig].concat(vBe,DBe);var mp={identify:t=>t instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(t,A){if(typeof atob=="function"){let e=atob(t.replace(/[\n\r]/g,"")),i=new Uint8Array(e.length);for(let n=0;n1&&A("Each pair must have its own sequence indicator");let n=i.items[0]||new Za(new ti(null));if(i.commentBefore&&(n.key.commentBefore=n.key.commentBefore?`${i.commentBefore} +${n.key.commentBefore}`:i.commentBefore),i.comment){let o=n.value??n.key;o.comment=o.comment?`${i.comment} +${o.comment}`:i.comment}i=n}t.items[e]=On(i)?i:new Za(i)}}else A("Expected a sequence for this tag");return t}function OS(t,A,e){let{replacer:i}=e,n=new vs(t);n.tag="tag:yaml.org,2002:pairs";let o=0;if(A&&Symbol.iterator in Object(A))for(let a of A){typeof i=="function"&&(a=i.call(A,String(o++),a));let r,s;if(Array.isArray(a))if(a.length===2)r=a[0],s=a[1];else throw new TypeError(`Expected [key, value] tuple: ${a}`);else if(a&&a instanceof Object){let l=Object.keys(a);if(l.length===1)r=l[0],s=a[r];else throw new TypeError(`Expected tuple with one key, not ${l.length} keys`)}else r=a;n.items.push(dh(r,s,e))}return n}var fp={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:TS,createNode:OS};var JS=(()=>{class t extends vs{constructor(){super(),this.add=or.prototype.add.bind(this),this.delete=or.prototype.delete.bind(this),this.get=or.prototype.get.bind(this),this.has=or.prototype.has.bind(this),this.set=or.prototype.set.bind(this),this.tag=t.tag}toJSON(e,i){if(!i)return super.toJSON(e);let n=new Map;i?.onCreate&&i.onCreate(n);for(let o of this.items){let a,r;if(On(o)?(a=Dr(o.key,"",i),r=Dr(o.value,a,i)):a=Dr(o,"",i),n.has(a))throw new Error("Ordered maps must not include duplicate keys");n.set(a,r)}return n}static from(e,i,n){let o=OS(e,i,n),a=new this;return a.items=o.items,a}}return t.tag="tag:yaml.org,2002:omap",t})(),wp={collection:"seq",identify:t=>t instanceof Map,nodeClass:JS,default:!1,tag:"tag:yaml.org,2002:omap",resolve(t,A){let e=TS(t,A),i=[];for(let{key:n}of e.items)cn(n)&&(i.includes(n.value)?A(`Ordered maps must not include duplicate keys: ${n.value}`):i.push(n.value));return Object.assign(new JS,e)},createNode:(t,A,e)=>JS.from(t,A,e)};function _V({value:t,source:A},e){return A&&(t?zS:YS).test.test(A)?A:t?e.options.trueStr:e.options.falseStr}var zS={identify:t=>t===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new ti(!0),stringify:_V},YS={identify:t=>t===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new ti(!1),stringify:_V};var xV={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:t=>t.slice(-3).toLowerCase()==="nan"?NaN:t[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Ds},RV={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:t=>parseFloat(t.replace(/_/g,"")),stringify(t){let A=Number(t.value);return isFinite(A)?A.toExponential():Ds(t)}},NV={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(t){let A=new ti(parseFloat(t.replace(/_/g,""))),e=t.indexOf(".");if(e!==-1){let i=t.substring(e+1).replace(/_/g,"");i[i.length-1]==="0"&&(A.minFractionDigits=i.length)}return A},stringify:Ds};var yp=t=>typeof t=="bigint"||Number.isInteger(t);function N8(t,A,e,{intAsBigInt:i}){let n=t[0];if((n==="-"||n==="+")&&(A+=1),t=t.substring(A).replace(/_/g,""),i){switch(e){case 2:t=`0b${t}`;break;case 8:t=`0o${t}`;break;case 16:t=`0x${t}`;break}let a=BigInt(t);return n==="-"?BigInt(-1)*a:a}let o=parseInt(t,e);return n==="-"?-1*o:o}function HS(t,A,e){let{value:i}=t;if(yp(i)){let n=i.toString(A);return i<0?"-"+e+n.substr(1):e+n}return Ds(t)}var FV={identify:yp,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(t,A,e)=>N8(t,2,2,e),stringify:t=>HS(t,2,"0b")},LV={identify:yp,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(t,A,e)=>N8(t,1,8,e),stringify:t=>HS(t,8,"0")},GV={identify:yp,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(t,A,e)=>N8(t,0,10,e),stringify:Ds},KV={identify:yp,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(t,A,e)=>N8(t,2,16,e),stringify:t=>HS(t,16,"0x")};var PS=(()=>{class t extends or{constructor(e){super(e),this.tag=t.tag}add(e){let i;On(e)?i=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?i=new Za(e.key,null):i=new Za(e,null),Ld(this.items,i.key)||this.items.push(i)}get(e,i){let n=Ld(this.items,e);return!i&&On(n)?cn(n.key)?n.key.value:n.key:n}set(e,i){if(typeof i!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof i}`);let n=Ld(this.items,e);n&&!i?this.items.splice(this.items.indexOf(n),1):!n&&i&&this.items.push(new Za(e))}toJSON(e,i){return super.toJSON(e,i,Set)}toString(e,i,n){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),i,n);throw new Error("Set items must all have null values")}static from(e,i,n){let{replacer:o}=n,a=new this(e);if(i&&Symbol.iterator in Object(i))for(let r of i)typeof o=="function"&&(r=o.call(i,r,r)),a.items.push(dh(r,null,n));return a}}return t.tag="tag:yaml.org,2002:set",t})(),vp={collection:"map",identify:t=>t instanceof Set,nodeClass:PS,default:!1,tag:"tag:yaml.org,2002:set",createNode:(t,A,e)=>PS.from(t,A,e),resolve(t,A){if(cg(t)){if(t.hasAllNullValues(!0))return Object.assign(new PS,t);A("Set items must all have null values")}else A("Expected a mapping for this tag");return t}};function jS(t,A){let e=t[0],i=e==="-"||e==="+"?t.substring(1):t,n=a=>A?BigInt(a):Number(a),o=i.replace(/_/g,"").split(":").reduce((a,r)=>a*n(60)+n(r),n(0));return e==="-"?n(-1)*o:o}function UV(t){let{value:A}=t,e=a=>a;if(typeof A=="bigint")e=a=>BigInt(a);else if(isNaN(A)||!isFinite(A))return Ds(t);let i="";A<0&&(i="-",A*=e(-1));let n=e(60),o=[A%n];return A<60?o.unshift(0):(A=(A-o[0])/n,o.unshift(A%n),A>=60&&(A=(A-o[0])/n,o.unshift(A))),i+o.map(a=>String(a).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var F8={identify:t=>typeof t=="bigint"||Number.isInteger(t),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(t,A,{intAsBigInt:e})=>jS(t,e),stringify:UV},L8={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:t=>jS(t,!1),stringify:UV},Ih={identify:t=>t instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(t){let A=t.match(Ih.test);if(!A)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,e,i,n,o,a,r]=A.map(Number),s=A[7]?Number((A[7]+"00").substr(1,3)):0,l=Date.UTC(e,i-1,n,o||0,a||0,r||0,s),c=A[8];if(c&&c!=="Z"){let C=jS(c,!1);Math.abs(C)<30&&(C*=60),l-=6e4*C}return new Date(l)},stringify:({value:t})=>t?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};var VS=[dg,Ig,Gd,UI,zS,YS,FV,LV,GV,KV,xV,RV,NV,mp,Cg,wp,fp,vp,F8,L8,Ih];var TV=new Map([["core",MV],["failsafe",[dg,Ig,Gd]],["json",kV],["yaml11",VS],["yaml-1.1",VS]]),OV={binary:mp,bool:pp,float:M8,floatExp:b8,floatNaN:D8,floatTime:L8,int:_8,intHex:x8,intOct:k8,intTime:F8,map:dg,merge:Cg,null:UI,omap:wp,pairs:fp,seq:Ig,set:vp,timestamp:Ih},JV={"tag:yaml.org,2002:binary":mp,"tag:yaml.org,2002:merge":Cg,"tag:yaml.org,2002:omap":wp,"tag:yaml.org,2002:pairs":fp,"tag:yaml.org,2002:set":vp,"tag:yaml.org,2002:timestamp":Ih};function G8(t,A,e){let i=TV.get(A);if(i&&!t)return e&&!i.includes(Cg)?i.concat(Cg):i.slice();let n=i;if(!n)if(Array.isArray(t))n=[];else{let o=Array.from(TV.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${A}"; use one of ${o} or define customTags array`)}if(Array.isArray(t))for(let o of t)n=n.concat(o);else typeof t=="function"&&(n=t(n.slice()));return e&&(n=n.concat(Cg)),n.reduce((o,a)=>{let r=typeof a=="string"?OV[a]:a;if(!r){let s=JSON.stringify(a),l=Object.keys(OV).map(c=>JSON.stringify(c)).join(", ");throw new Error(`Unknown custom tag ${s}; use one of ${l}`)}return o.includes(r)||o.push(r),o},[])}var bBe=(t,A)=>t.keyA.key?1:0,Dp=class t{constructor({compat:A,customTags:e,merge:i,resolveKnownTags:n,schema:o,sortMapEntries:a,toStringDefaults:r}){this.compat=Array.isArray(A)?G8(A,"compat"):A?G8(null,A):null,this.name=typeof o=="string"&&o||"core",this.knownTags=n?JV:{},this.tags=G8(e,this.name,i),this.toStringOptions=r??null,Object.defineProperty(this,sg,{value:dg}),Object.defineProperty(this,Yl,{value:Gd}),Object.defineProperty(this,uC,{value:Ig}),this.sortMapEntries=typeof a=="function"?a:a===!0?bBe:null}clone(){let A=Object.create(t.prototype,Object.getOwnPropertyDescriptors(this));return A.tags=this.tags.slice(),A}};function zV(t,A){let e=[],i=A.directives===!0;if(A.directives!==!1&&t.directives){let s=t.directives.toString(t);s?(e.push(s),i=!0):t.directives.docStart&&(i=!0)}i&&e.push("---");let n=Q8(t,A),{commentString:o}=n.options;if(t.commentBefore){e.length!==1&&e.unshift("");let s=o(t.commentBefore);e.unshift(wc(s,""))}let a=!1,r=null;if(t.contents){if(jn(t.contents)){if(t.contents.spaceBefore&&i&&e.push(""),t.contents.commentBefore){let c=o(t.contents.commentBefore);e.push(wc(c,""))}n.forceBlockIndent=!!t.comment,r=t.contents.comment}let s=r?void 0:()=>a=!0,l=pC(t.contents,n,()=>r=null,s);r&&(l+=p0(l,"",o(r))),(l[0]==="|"||l[0]===">")&&e[e.length-1]==="---"?e[e.length-1]=`--- ${l}`:e.push(l)}else e.push(pC(t.contents,n));if(t.directives?.docEnd)if(t.comment){let s=o(t.comment);s.includes(` +`)?(e.push("..."),e.push(wc(s,""))):e.push(`... ${s}`)}else e.push("...");else{let s=t.comment;s&&a&&(s=s.replace(/^\n+/,"")),s&&((!a||r)&&e[e.length-1]!==""&&e.push(""),e.push(wc(o(s),"")))}return e.join(` +`)+` +`}var mC=class t{constructor(A,e,i){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Ys,{value:l8});let n=null;typeof e=="function"||Array.isArray(e)?n=e:i===void 0&&e&&(i=e,e=void 0);let o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},i);this.options=o;let{version:a}=o;i?._directives?(this.directives=i._directives.atDocument(),this.directives.yaml.explicit&&(a=this.directives.yaml.version)):this.directives=new lh({version:a}),this.setSchema(a,i),this.contents=A===void 0?null:this.createNode(A,n,i)}clone(){let A=Object.create(t.prototype,{[Ys]:{value:l8}});return A.commentBefore=this.commentBefore,A.comment=this.comment,A.errors=this.errors.slice(),A.warnings=this.warnings.slice(),A.options=Object.assign({},this.options),this.directives&&(A.directives=this.directives.clone()),A.schema=this.schema.clone(),A.contents=jn(this.contents)?this.contents.clone(A.schema):this.contents,this.range&&(A.range=this.range.slice()),A}add(A){Bh(this.contents)&&this.contents.add(A)}addIn(A,e){Bh(this.contents)&&this.contents.addIn(A,e)}createAlias(A,e){if(!A.anchor){let i=xS(this);A.anchor=!e||i.has(e)?RS(e||"a",i):e}return new EC(A.anchor)}createNode(A,e,i){let n;if(typeof e=="function")A=e.call({"":A},"",A),n=e;else if(Array.isArray(e)){let m=D=>typeof D=="number"||D instanceof String||D instanceof Number,f=e.filter(m).map(String);f.length>0&&(e=e.concat(f)),n=e}else i===void 0&&e&&(i=e,e=void 0);let{aliasDuplicateObjects:o,anchorPrefix:a,flow:r,keepUndefined:s,onTagObj:l,tag:c}=i??{},{onAnchor:C,setAnchors:d,sourceObjects:B}=fV(this,a||"a"),E={aliasDuplicateObjects:o??!0,keepUndefined:s??!1,onAnchor:C,onTagObj:l,replacer:n,schema:this.schema,sourceObjects:B},u=QC(A,c,E);return r&&bo(u)&&(u.flow=!0),d(),u}createPair(A,e,i={}){let n=this.createNode(A,null,i),o=this.createNode(e,null,i);return new Za(n,o)}delete(A){return Bh(this.contents)?this.contents.delete(A):!1}deleteIn(A){return gh(A)?this.contents==null?!1:(this.contents=null,!0):Bh(this.contents)?this.contents.deleteIn(A):!1}get(A,e){return bo(this.contents)?this.contents.get(A,e):void 0}getIn(A,e){return gh(A)?!e&&cn(this.contents)?this.contents.value:this.contents:bo(this.contents)?this.contents.getIn(A,e):void 0}has(A){return bo(this.contents)?this.contents.has(A):!1}hasIn(A){return gh(A)?this.contents!==void 0:bo(this.contents)?this.contents.hasIn(A):!1}set(A,e){this.contents==null?this.contents=hp(this.schema,[A],e):Bh(this.contents)&&this.contents.set(A,e)}setIn(A,e){gh(A)?this.contents=e:this.contents==null?this.contents=hp(this.schema,Array.from(A),e):Bh(this.contents)&&this.contents.setIn(A,e)}setSchema(A,e={}){typeof A=="number"&&(A=String(A));let i;switch(A){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new lh({version:"1.1"}),i={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=A:this.directives=new lh({version:A}),i={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,i=null;break;default:{let n=JSON.stringify(A);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${n}`)}}if(e.schema instanceof Object)this.schema=e.schema;else if(i)this.schema=new Dp(Object.assign(i,e));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:A,jsonArg:e,mapAsMap:i,maxAliasCount:n,onAnchor:o,reviver:a}={}){let r={anchors:new Map,doc:this,keep:!A,mapAsMap:i===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},s=Dr(this.contents,e??"",r);if(typeof o=="function")for(let{count:l,res:c}of r.anchors.values())o(c,l);return typeof a=="function"?Nd(a,{"":s},"",s):s}toJSON(A,e){return this.toJS({json:!0,jsonArg:A,mapAsMap:!1,onAnchor:e})}toString(A={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in A&&(!Number.isInteger(A.indent)||Number(A.indent)<=0)){let e=JSON.stringify(A.indent);throw new Error(`"indent" option must be a positive integer, not ${e}`)}return zV(this,A)}};function Bh(t){if(bo(t))return!0;throw new Error("Expected a YAML collection as document contents")}var bp=class extends Error{constructor(A,e,i,n){super(),this.name=A,this.code=i,this.message=n,this.pos=e}},Bg=class extends bp{constructor(A,e,i){super("YAMLParseError",A,e,i)}},Mp=class extends bp{constructor(A,e,i){super("YAMLWarning",A,e,i)}},qS=(t,A)=>e=>{if(e.pos[0]===-1)return;e.linePos=e.pos.map(r=>A.linePos(r));let{line:i,col:n}=e.linePos[0];e.message+=` at line ${i}, column ${n}`;let o=n-1,a=t.substring(A.lineStarts[i-1],A.lineStarts[i]).replace(/[\n\r]+$/,"");if(o>=60&&a.length>80){let r=Math.min(o-39,a.length-79);a="\u2026"+a.substring(r),o-=r-1}if(a.length>80&&(a=a.substring(0,79)+"\u2026"),i>1&&/^ *$/.test(a.substring(0,o))){let r=t.substring(A.lineStarts[i-2],A.lineStarts[i-1]);r.length>80&&(r=r.substring(0,79)+`\u2026 +`),a=r+a}if(/[^ ]/.test(a)){let r=1,s=e.linePos[1];s?.line===i&&s.col>n&&(r=Math.max(1,Math.min(s.col-n,80-o)));let l=" ".repeat(o)+"^".repeat(r);e.message+=`: + +${a} +${l} +`}};function m0(t,{flow:A,indicator:e,next:i,offset:n,onError:o,parentIndent:a,startOnNewline:r}){let s=!1,l=r,c=r,C="",d="",B=!1,E=!1,u=null,m=null,f=null,D=null,S=null,k=null,b=null;for(let P of t)switch(E&&(P.type!=="space"&&P.type!=="newline"&&P.type!=="comma"&&o(P.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),E=!1),u&&(l&&P.type!=="comment"&&P.type!=="newline"&&o(u,"TAB_AS_INDENT","Tabs are not allowed as indentation"),u=null),P.type){case"space":!A&&(e!=="doc-start"||i?.type!=="flow-collection")&&P.source.includes(" ")&&(u=P),c=!0;break;case"comment":{c||o(P,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let j=P.source.substring(1)||" ";C?C+=d+j:C=j,d="",l=!1;break}case"newline":l?C?C+=P.source:(!k||e!=="seq-item-ind")&&(s=!0):d+=P.source,l=!0,B=!0,(m||f)&&(D=P),c=!0;break;case"anchor":m&&o(P,"MULTIPLE_ANCHORS","A node can have at most one anchor"),P.source.endsWith(":")&&o(P.offset+P.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),m=P,b??(b=P.offset),l=!1,c=!1,E=!0;break;case"tag":{f&&o(P,"MULTIPLE_TAGS","A node can have at most one tag"),f=P,b??(b=P.offset),l=!1,c=!1,E=!0;break}case e:(m||f)&&o(P,"BAD_PROP_ORDER",`Anchors and tags must be after the ${P.source} indicator`),k&&o(P,"UNEXPECTED_TOKEN",`Unexpected ${P.source} in ${A??"collection"}`),k=P,l=e==="seq-item-ind"||e==="explicit-key-ind",c=!1;break;case"comma":if(A){S&&o(P,"UNEXPECTED_TOKEN",`Unexpected , in ${A}`),S=P,l=!1,c=!1;break}default:o(P,"UNEXPECTED_TOKEN",`Unexpected ${P.type} token`),l=!1,c=!1}let x=t[t.length-1],F=x?x.offset+x.source.length:n;return E&&i&&i.type!=="space"&&i.type!=="newline"&&i.type!=="comma"&&(i.type!=="scalar"||i.source!=="")&&o(i.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),u&&(l&&u.indent<=a||i?.type==="block-map"||i?.type==="block-seq")&&o(u,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:S,found:k,spaceBefore:s,comment:C,hasNewline:B,anchor:m,tag:f,newlineAfterProp:D,end:F,start:b??F}}function Kd(t){if(!t)return null;switch(t.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(t.source.includes(` +`))return!0;if(t.end){for(let A of t.end)if(A.type==="newline")return!0}return!1;case"flow-collection":for(let A of t.items){for(let e of A.start)if(e.type==="newline")return!0;if(A.sep){for(let e of A.sep)if(e.type==="newline")return!0}if(Kd(A.key)||Kd(A.value))return!0}return!1;default:return!0}}function Sp(t,A,e){if(A?.type==="flow-collection"){let i=A.end[0];i.indent===t&&(i.source==="]"||i.source==="}")&&Kd(A)&&e(i,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function K8(t,A,e){let{uniqueKeys:i}=t.options;if(i===!1)return!1;let n=typeof i=="function"?i:(o,a)=>o===a||cn(o)&&cn(a)&&o.value===a.value;return A.some(o=>n(o.key,e))}var YV="All mapping items must start at the same column";function HV({composeNode:t,composeEmptyNode:A},e,i,n,o){let a=o?.nodeClass??or,r=new a(e.schema);e.atRoot&&(e.atRoot=!1);let s=i.offset,l=null;for(let c of i.items){let{start:C,key:d,sep:B,value:E}=c,u=m0(C,{indicator:"explicit-key-ind",next:d??B?.[0],offset:s,onError:n,parentIndent:i.indent,startOnNewline:!0}),m=!u.found;if(m){if(d&&(d.type==="block-seq"?n(s,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in d&&d.indent!==i.indent&&n(s,"BAD_INDENT",YV)),!u.anchor&&!u.tag&&!B){l=u.end,u.comment&&(r.comment?r.comment+=` +`+u.comment:r.comment=u.comment);continue}(u.newlineAfterProp||Kd(d))&&n(d??C[C.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else u.found?.indent!==i.indent&&n(s,"BAD_INDENT",YV);e.atKey=!0;let f=u.end,D=d?t(e,d,u,n):A(e,f,C,null,u,n);e.schema.compat&&Sp(i.indent,d,n),e.atKey=!1,K8(e,r.items,D)&&n(f,"DUPLICATE_KEY","Map keys must be unique");let S=m0(B??[],{indicator:"map-value-ind",next:E,offset:D.range[2],onError:n,parentIndent:i.indent,startOnNewline:!d||d.type==="block-scalar"});if(s=S.end,S.found){m&&(E?.type==="block-map"&&!S.hasNewline&&n(s,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),e.options.strict&&u.startt&&(t.type==="block-map"||t.type==="block-seq");function jV({composeNode:t,composeEmptyNode:A},e,i,n,o){let a=i.start.source==="{",r=a?"flow map":"flow sequence",s=o?.nodeClass??(a?or:vs),l=new s(e.schema);l.flow=!0;let c=e.atRoot;c&&(e.atRoot=!1),e.atKey&&(e.atKey=!1);let C=i.offset+i.start.source.length;for(let m=0;m0){let m=f0(E,u,e.options.strict,n);m.comment&&(l.comment?l.comment+=` +`+m.comment:l.comment=m.comment),l.range=[i.offset,u,m.offset]}else l.range=[i.offset,u,u];return l}function XS(t,A,e,i,n,o){let a=e.type==="block-map"?HV(t,A,e,i,o):e.type==="block-seq"?PV(t,A,e,i,o):jV(t,A,e,i,o),r=a.constructor;return n==="!"||n===r.tagName?(a.tag=r.tagName,a):(n&&(a.tag=n),a)}function VV(t,A,e,i,n){let o=i.tag,a=o?A.directives.tagName(o.source,d=>n(o,"TAG_RESOLVE_FAILED",d)):null;if(e.type==="block-seq"){let{anchor:d,newlineAfterProp:B}=i,E=d&&o?d.offset>o.offset?d:o:d??o;E&&(!B||B.offsetd.tag===a&&d.collection===r);if(!s){let d=A.schema.knownTags[a];if(d?.collection===r)A.schema.tags.push(Object.assign({},d,{default:!1})),s=d;else return d?n(o,"BAD_COLLECTION_TYPE",`${d.tag} used for ${r} collection, but expects ${d.collection??"scalar"}`,!0):n(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${a}`,!0),XS(t,A,e,n,a)}let l=XS(t,A,e,n,a,s),c=s.resolve?.(l,d=>n(o,"TAG_RESOLVE_FAILED",d),A.options)??l,C=jn(c)?c:new ti(c);return C.range=l.range,C.tag=a,s?.format&&(C.format=s.format),C}function $S(t,A,e){let i=A.offset,n=MBe(A,t.options.strict,e);if(!n)return{value:"",type:null,comment:"",range:[i,i,i]};let o=n.mode===">"?ti.BLOCK_FOLDED:ti.BLOCK_LITERAL,a=A.source?SBe(A.source):[],r=a.length;for(let u=a.length-1;u>=0;--u){let m=a[u][1];if(m===""||m==="\r")r=u;else break}if(r===0){let u=n.chomp==="+"&&a.length>0?` +`.repeat(Math.max(1,a.length-1)):"",m=i+n.length;return A.source&&(m+=A.source.length),{value:u,type:o,comment:n.comment,range:[i,m,m]}}let s=A.indent+n.indent,l=A.offset+n.length,c=0;for(let u=0;us&&(s=m.length);else{m.length=r;--u)a[u][0].length>s&&(r=u+1);let C="",d="",B=!1;for(let u=0;us||f[0]===" "?(d===" "?d=` +`:!B&&d===` +`&&(d=` + +`),C+=d+m.slice(s)+f,d=` +`,B=!0):f===""?d===` +`?C+=` +`:d=` +`:(C+=d+f,d=" ",B=!1)}switch(n.chomp){case"-":break;case"+":for(let u=r;ue(i+d,B,E);switch(n){case"scalar":r=ti.PLAIN,s=kBe(o,l);break;case"single-quoted-scalar":r=ti.QUOTE_SINGLE,s=_Be(o,l);break;case"double-quoted-scalar":r=ti.QUOTE_DOUBLE,s=xBe(o,l);break;default:return e(t,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${n}`),{value:"",type:null,comment:"",range:[i,i+o.length,i+o.length]}}let c=i+o.length,C=f0(a,c,A,e);return{value:s,type:r,comment:C.comment,range:[i,c,C.offset]}}function kBe(t,A){let e="";switch(t[0]){case" ":e="a tab character";break;case",":e="flow indicator character ,";break;case"%":e="directive indicator character %";break;case"|":case">":{e=`block scalar indicator ${t[0]}`;break}case"@":case"`":{e=`reserved character ${t[0]}`;break}}return e&&A(0,"BAD_SCALAR_START",`Plain value cannot start with ${e}`),qV(t)}function _Be(t,A){return(t[t.length-1]!=="'"||t.length===1)&&A(t.length,"MISSING_CHAR","Missing closing 'quote"),qV(t.slice(1,-1)).replace(/''/g,"'")}function qV(t){let A,e;try{A=new RegExp(`(.*?)(?o?t.slice(o,i+1):n)}else e+=n}return(t[t.length-1]!=='"'||t.length===1)&&A(t.length,"MISSING_CHAR",'Missing closing "quote'),e}function RBe(t,A){let e="",i=t[A+1];for(;(i===" "||i===" "||i===` +`||i==="\r")&&!(i==="\r"&&t[A+2]!==` +`);)i===` +`&&(e+=` +`),A+=1,i=t[A+1];return e||(e=" "),{fold:e,offset:A}}var NBe={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:` +`,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function FBe(t,A,e,i){let n=t.substr(A,e),a=n.length===e&&/^[0-9a-fA-F]+$/.test(n)?parseInt(n,16):NaN;if(isNaN(a)){let r=t.substr(A-2,e+2);return i(A-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${r}`),r}return String.fromCodePoint(a)}function Ak(t,A,e,i){let{value:n,type:o,comment:a,range:r}=A.type==="block-scalar"?$S(t,A,i):ek(A,t.options.strict,i),s=e?t.directives.tagName(e.source,C=>i(e,"TAG_RESOLVE_FAILED",C)):null,l;t.options.stringKeys&&t.atKey?l=t.schema[Yl]:s?l=LBe(t.schema,n,s,e,i):A.type==="scalar"?l=GBe(t,n,A,i):l=t.schema[Yl];let c;try{let C=l.resolve(n,d=>i(e??A,"TAG_RESOLVE_FAILED",d),t.options);c=cn(C)?C:new ti(C)}catch(C){let d=C instanceof Error?C.message:String(C);i(e??A,"TAG_RESOLVE_FAILED",d),c=new ti(n)}return c.range=r,c.source=n,o&&(c.type=o),s&&(c.tag=s),l.format&&(c.format=l.format),a&&(c.comment=a),c}function LBe(t,A,e,i,n){if(e==="!")return t[Yl];let o=[];for(let r of t.tags)if(!r.collection&&r.tag===e)if(r.default&&r.test)o.push(r);else return r;for(let r of o)if(r.test?.test(A))return r;let a=t.knownTags[e];return a&&!a.collection?(t.tags.push(Object.assign({},a,{default:!1,test:void 0})),a):(n(i,"TAG_RESOLVE_FAILED",`Unresolved tag: ${e}`,e!=="tag:yaml.org,2002:str"),t[Yl])}function GBe({atKey:t,directives:A,schema:e},i,n,o){let a=e.tags.find(r=>(r.default===!0||t&&r.default==="key")&&r.test?.test(i))||e[Yl];if(e.compat){let r=e.compat.find(s=>s.default&&s.test?.test(i))??e[Yl];if(a.tag!==r.tag){let s=A.tagString(a.tag),l=A.tagString(r.tag),c=`Value may be parsed as either ${s} or ${l}`;o(n,"TAG_RESOLVE_FAILED",c,!0)}}return a}function ZV(t,A,e){if(A){e??(e=A.length);for(let i=e-1;i>=0;--i){let n=A[i];switch(n.type){case"space":case"comment":case"newline":t-=n.source.length;continue}for(n=A[++i];n?.type==="space";)t+=n.source.length,n=A[++i];break}}return t}var KBe={composeNode:tk,composeEmptyNode:U8};function tk(t,A,e,i){let n=t.atKey,{spaceBefore:o,comment:a,anchor:r,tag:s}=e,l,c=!0;switch(A.type){case"alias":l=UBe(t,A,i),(r||s)&&i(A,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":l=Ak(t,A,s,i),r&&(l.anchor=r.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":l=VV(KBe,t,A,e,i),r&&(l.anchor=r.source.substring(1));break;default:{let C=A.type==="error"?A.message:`Unsupported token (type: ${A.type})`;i(A,"UNEXPECTED_TOKEN",C),l=U8(t,A.offset,void 0,null,e,i),c=!1}}return r&&l.anchor===""&&i(r,"BAD_ALIAS","Anchor cannot be an empty string"),n&&t.options.stringKeys&&(!cn(l)||typeof l.value!="string"||l.tag&&l.tag!=="tag:yaml.org,2002:str")&&i(s??A,"NON_STRING_KEY","With stringKeys, all keys must be strings"),o&&(l.spaceBefore=!0),a&&(A.type==="scalar"&&A.source===""?l.comment=a:l.commentBefore=a),t.options.keepSourceTokens&&c&&(l.srcToken=A),l}function U8(t,A,e,i,{spaceBefore:n,comment:o,anchor:a,tag:r,end:s},l){let c={type:"scalar",offset:ZV(A,e,i),indent:-1,source:""},C=Ak(t,c,r,l);return a&&(C.anchor=a.source.substring(1),C.anchor===""&&l(a,"BAD_ALIAS","Anchor cannot be an empty string")),n&&(C.spaceBefore=!0),o&&(C.comment=o,C.range[2]=s),C}function UBe({options:t},{offset:A,source:e,end:i},n){let o=new EC(e.substring(1));o.source===""&&n(A,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&n(A+e.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let a=A+e.length,r=f0(i,a,t.strict,n);return o.range=[A,a,r.offset],r.comment&&(o.comment=r.comment),o}function WV(t,A,{offset:e,start:i,value:n,end:o},a){let r=Object.assign({_directives:A},t),s=new mC(void 0,r),l={atKey:!1,atRoot:!0,directives:s.directives,options:s.options,schema:s.schema},c=m0(i,{indicator:"doc-start",next:n??o?.[0],offset:e,onError:a,parentIndent:0,startOnNewline:!0});c.found&&(s.directives.docStart=!0,n&&(n.type==="block-map"||n.type==="block-seq")&&!c.hasNewline&&a(c.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),s.contents=n?tk(l,n,c,a):U8(l,c.end,i,null,c,a);let C=s.contents.range[2],d=f0(o,C,!1,a);return d.comment&&(s.comment=d.comment),s.range=[e,C,d.offset],s}function kp(t){if(typeof t=="number")return[t,t+1];if(Array.isArray(t))return t.length===2?t:[t[0],t[1]];let{offset:A,source:e}=t;return[A,A+(typeof e=="string"?e.length:1)]}function XV(t){let A="",e=!1,i=!1;for(let n=0;n{let a=kp(e);o?this.warnings.push(new Mp(a,i,n)):this.errors.push(new Bg(a,i,n))},this.directives=new lh({version:A.version||"1.2"}),this.options=A}decorate(A,e){let{comment:i,afterEmptyLine:n}=XV(this.prelude);if(i){let o=A.contents;if(e)A.comment=A.comment?`${A.comment} +${i}`:i;else if(n||A.directives.docStart||!o)A.commentBefore=i;else if(bo(o)&&!o.flow&&o.items.length>0){let a=o.items[0];On(a)&&(a=a.key);let r=a.commentBefore;a.commentBefore=r?`${i} +${r}`:i}else{let a=o.commentBefore;o.commentBefore=a?`${i} +${a}`:i}}e?(Array.prototype.push.apply(A.errors,this.errors),Array.prototype.push.apply(A.warnings,this.warnings)):(A.errors=this.errors,A.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:XV(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(A,e=!1,i=-1){for(let n of A)yield*hA(this.next(n));yield*hA(this.end(e,i))}*next(A){switch(A.type){case"directive":this.directives.add(A.source,(e,i,n)=>{let o=kp(A);o[0]+=e,this.onError(o,"BAD_DIRECTIVE",i,n)}),this.prelude.push(A.source),this.atDirectives=!0;break;case"document":{let e=WV(this.options,this.directives,A,this.onError);this.atDirectives&&!e.directives.docStart&&this.onError(A,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(e,!1),this.doc&&(yield this.doc),this.doc=e,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(A.source);break;case"error":{let e=A.source?`${A.message}: ${JSON.stringify(A.source)}`:A.message,i=new Bg(kp(A),"UNEXPECTED_TOKEN",e);this.atDirectives||!this.doc?this.errors.push(i):this.doc.errors.push(i);break}case"doc-end":{if(!this.doc){let i="Unexpected doc-end without preceding document";this.errors.push(new Bg(kp(A),"UNEXPECTED_TOKEN",i));break}this.doc.directives.docEnd=!0;let e=f0(A.end,A.offset+A.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),e.comment){let i=this.doc.comment;this.doc.comment=i?`${i} +${e.comment}`:e.comment}this.doc.range[2]=e.offset;break}default:this.errors.push(new Bg(kp(A),"UNEXPECTED_TOKEN",`Unsupported token ${A.type}`))}}*end(A=!1,e=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(A){let i=Object.assign({_directives:this.directives},this.options),n=new mC(void 0,i);this.atDirectives&&this.onError(e,"MISSING_CHAR","Missing directives-end indicator line"),n.range=[0,e,e],this.decorate(n,!1),yield n}}};var ik=Symbol("break visit"),TBe=Symbol("skip children"),$V=Symbol("remove item");function TI(t,A){"type"in t&&t.type==="document"&&(t={start:t.start,value:t.value}),eq(Object.freeze([]),t,A)}TI.BREAK=ik;TI.SKIP=TBe;TI.REMOVE=$V;TI.itemAtPath=(t,A)=>{let e=t;for(let[i,n]of A){let o=e?.[i];if(o&&"items"in o)e=o.items[n];else return}return e};TI.parentCollection=(t,A)=>{let e=TI.itemAtPath(t,A.slice(0,-1)),i=A[A.length-1][0],n=e?.[i];if(n&&"items"in n)return n;throw new Error("Parent collection not found")};function eq(t,A,e){let i=e(A,t);if(typeof i=="symbol")return i;for(let n of["key","value"]){let o=A[n];if(o&&"items"in o){for(let a=0;a":return"block-scalar-header"}return null}function hg(t){switch(t){case void 0:case" ":case` +`:case"\r":case" ":return!0;default:return!1}}var tq=new Set("0123456789ABCDEFabcdef"),JBe=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),O8=new Set(",[]{}"),zBe=new Set(` ,[]{} +\r `),rk=t=>!t||zBe.has(t),xp=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(A,e=!1){if(A){if(typeof A!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+A:A,this.lineEndPos=null}this.atEnd=!e;let i=this.next??"stream";for(;i&&(e||this.hasChars(1));)i=yield*hA(this.parseNext(i))}atLineEnd(){let A=this.pos,e=this.buffer[A];for(;e===" "||e===" ";)e=this.buffer[++A];return!e||e==="#"||e===` +`?!0:e==="\r"?this.buffer[A+1]===` +`:!1}charAt(A){return this.buffer[this.pos+A]}continueScalar(A){let e=this.buffer[A];if(this.indentNext>0){let i=0;for(;e===" ";)e=this.buffer[++i+A];if(e==="\r"){let n=this.buffer[i+A+1];if(n===` +`||!n&&!this.atEnd)return A+i+1}return e===` +`||i>=this.indentNext||!e&&!this.atEnd?A+i:-1}if(e==="-"||e==="."){let i=this.buffer.substr(A,3);if((i==="---"||i==="...")&&hg(this.buffer[A+3]))return-1}return A}getLine(){let A=this.lineEndPos;return(typeof A!="number"||A!==-1&&Athis.indentValue&&!hg(this.charAt(1))&&(this.indentNext=this.indentValue),yield*hA(this.parseBlockStart())}*parseBlockStart(){let[A,e]=this.peek(2);if(!e&&!this.atEnd)return this.setNext("block-start");if((A==="-"||A==="?"||A===":")&&hg(e)){let i=(yield*hA(this.pushCount(1)))+(yield*hA(this.pushSpaces(!0)));return this.indentNext=this.indentValue+1,this.indentValue+=i,yield*hA(this.parseBlockStart())}return"doc"}*parseDocument(){yield*hA(this.pushSpaces(!0));let A=this.getLine();if(A===null)return this.setNext("doc");let e=yield*hA(this.pushIndicators());switch(A[e]){case"#":yield*hA(this.pushCount(A.length-e));case void 0:return yield*hA(this.pushNewline()),yield*hA(this.parseLineStart());case"{":case"[":return yield*hA(this.pushCount(1)),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*hA(this.pushCount(1)),"doc";case"*":return yield*hA(this.pushUntil(rk)),"doc";case'"':case"'":return yield*hA(this.parseQuotedScalar());case"|":case">":return e+=yield*hA(this.parseBlockScalarHeader()),e+=yield*hA(this.pushSpaces(!0)),yield*hA(this.pushCount(A.length-e)),yield*hA(this.pushNewline()),yield*hA(this.parseBlockScalar());default:return yield*hA(this.parsePlainScalar())}}*parseFlowCollection(){let A,e,i=-1;do A=yield*hA(this.pushNewline()),A>0?(e=yield*hA(this.pushSpaces(!1)),this.indentValue=i=e):e=0,e+=yield*hA(this.pushSpaces(!0));while(A+e>0);let n=this.getLine();if(n===null)return this.setNext("flow");if((i!==-1&&i"0"&&e<="9")this.blockScalarIndent=Number(e)-1;else if(e!=="-")break}return yield*hA(this.pushUntil(e=>hg(e)||e==="#"))}*parseBlockScalar(){let A=this.pos-1,e=0,i;e:for(let o=this.pos;i=this.buffer[o];++o)switch(i){case" ":e+=1;break;case` +`:A=o,e=0;break;case"\r":{let a=this.buffer[o+1];if(!a&&!this.atEnd)return this.setNext("block-scalar");if(a===` +`)break}default:break e}if(!i&&!this.atEnd)return this.setNext("block-scalar");if(e>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=e:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let o=this.continueScalar(A+1);if(o===-1)break;A=this.buffer.indexOf(` +`,o)}while(A!==-1);if(A===-1){if(!this.atEnd)return this.setNext("block-scalar");A=this.buffer.length}}let n=A+1;for(i=this.buffer[n];i===" ";)i=this.buffer[++n];if(i===" "){for(;i===" "||i===" "||i==="\r"||i===` +`;)i=this.buffer[++n];A=n-1}else if(!this.blockScalarKeep)do{let o=A-1,a=this.buffer[o];a==="\r"&&(a=this.buffer[--o]);let r=o;for(;a===" ";)a=this.buffer[--o];if(a===` +`&&o>=this.pos&&o+1+e>r)A=o;else break}while(!0);return yield T8,yield*hA(this.pushToIndex(A+1,!0)),yield*hA(this.parseLineStart())}*parsePlainScalar(){let A=this.flowLevel>0,e=this.pos-1,i=this.pos-1,n;for(;n=this.buffer[++i];)if(n===":"){let o=this.buffer[i+1];if(hg(o)||A&&O8.has(o))break;e=i}else if(hg(n)){let o=this.buffer[i+1];if(n==="\r"&&(o===` +`?(i+=1,n=` +`,o=this.buffer[i+1]):e=i),o==="#"||A&&O8.has(o))break;if(n===` +`){let a=this.continueScalar(i+1);if(a===-1)break;i=Math.max(i,a-2)}}else{if(A&&O8.has(n))break;e=i}return!n&&!this.atEnd?this.setNext("plain-scalar"):(yield T8,yield*hA(this.pushToIndex(e+1,!0)),A?"flow":"doc")}*pushCount(A){return A>0?(yield this.buffer.substr(this.pos,A),this.pos+=A,A):0}*pushToIndex(A,e){let i=this.buffer.slice(this.pos,A);return i?(yield i,this.pos+=i.length,i.length):(e&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*hA(this.pushTag()))+(yield*hA(this.pushSpaces(!0)))+(yield*hA(this.pushIndicators()));case"&":return(yield*hA(this.pushUntil(rk)))+(yield*hA(this.pushSpaces(!0)))+(yield*hA(this.pushIndicators()));case"-":case"?":case":":{let A=this.flowLevel>0,e=this.charAt(1);if(hg(e)||A&&O8.has(e))return A?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*hA(this.pushCount(1)))+(yield*hA(this.pushSpaces(!0)))+(yield*hA(this.pushIndicators()))}}return 0}*pushTag(){if(this.charAt(1)==="<"){let A=this.pos+2,e=this.buffer[A];for(;!hg(e)&&e!==">";)e=this.buffer[++A];return yield*hA(this.pushToIndex(e===">"?A+1:A,!1))}else{let A=this.pos+1,e=this.buffer[A];for(;e;)if(JBe.has(e))e=this.buffer[++A];else if(e==="%"&&tq.has(this.buffer[A+1])&&tq.has(this.buffer[A+2]))e=this.buffer[A+=3];else break;return yield*hA(this.pushToIndex(A,!1))}}*pushNewline(){let A=this.buffer[this.pos];return A===` +`?yield*hA(this.pushCount(1)):A==="\r"&&this.charAt(1)===` +`?yield*hA(this.pushCount(2)):0}*pushSpaces(A){let e=this.pos-1,i;do i=this.buffer[++e];while(i===" "||A&&i===" ");let n=e-this.pos;return n>0&&(yield this.buffer.substr(this.pos,n),this.pos=e),n}*pushUntil(A){let e=this.pos,i=this.buffer[e];for(;!A(i);)i=this.buffer[++e];return yield*hA(this.pushToIndex(e,!1))}};var Rp=class{constructor(){this.lineStarts=[],this.addNewLine=A=>this.lineStarts.push(A),this.linePos=A=>{let e=0,i=this.lineStarts.length;for(;e>1;this.lineStarts[o]=0;)switch(t[A].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;t[++A]?.type==="space";);return t.splice(A,t.length)}function nq(t){if(t.start.type==="flow-seq-start")for(let A of t.items)A.sep&&!A.value&&!Ud(A.start,"explicit-key-ind")&&!Ud(A.sep,"map-value-ind")&&(A.key&&(A.value=A.key),delete A.key,oq(A.value)?A.value.end?Array.prototype.push.apply(A.value.end,A.sep):A.value.end=A.sep:Array.prototype.push.apply(A.start,A.sep),delete A.sep)}var Np=class{constructor(A){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new xp,this.onNewLine=A}*parse(A,e=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let i of this.lexer.lex(A,e))yield*hA(this.next(i));e||(yield*hA(this.end()))}*next(A){if(this.source=A,this.atScalar){this.atScalar=!1,yield*hA(this.step()),this.offset+=A.length;return}let e=Aq(A);if(e)if(e==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=e,yield*hA(this.step()),e){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+A.length);break;case"space":this.atNewLine&&A[0]===" "&&(this.indent+=A.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=A.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=A.length}else{let i=`Not a YAML token: ${A}`;yield*hA(this.pop({type:"error",offset:this.offset,message:i,source:A})),this.offset+=A.length}}*end(){for(;this.stack.length>0;)yield*hA(this.pop())}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let A=this.peek(1);if(this.type==="doc-end"&&A?.type!=="doc-end"){for(;this.stack.length>0;)yield*hA(this.pop());this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!A)return yield*hA(this.stream());switch(A.type){case"document":return yield*hA(this.document(A));case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*hA(this.scalar(A));case"block-scalar":return yield*hA(this.blockScalar(A));case"block-map":return yield*hA(this.blockMap(A));case"block-seq":return yield*hA(this.blockSequence(A));case"flow-collection":return yield*hA(this.flowCollection(A));case"doc-end":return yield*hA(this.documentEnd(A))}yield*hA(this.pop())}peek(A){return this.stack[this.stack.length-A]}*pop(A){let e=A??this.stack.pop();if(!e)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield e;else{let i=this.peek(1);switch(e.type==="block-scalar"?e.indent="indent"in i?i.indent:0:e.type==="flow-collection"&&i.type==="document"&&(e.indent=0),e.type==="flow-collection"&&nq(e),i.type){case"document":i.value=e;break;case"block-scalar":i.props.push(e);break;case"block-map":{let n=i.items[i.items.length-1];if(n.value){i.items.push({start:[],key:e,sep:[]}),this.onKeyLine=!0;return}else if(n.sep)n.value=e;else{Object.assign(n,{key:e,sep:[]}),this.onKeyLine=!n.explicitKey;return}break}case"block-seq":{let n=i.items[i.items.length-1];n.value?i.items.push({start:[],value:e}):n.value=e;break}case"flow-collection":{let n=i.items[i.items.length-1];!n||n.value?i.items.push({start:[],key:e,sep:[]}):n.sep?n.value=e:Object.assign(n,{key:e,sep:[]});return}default:yield*hA(this.pop()),yield*hA(this.pop(e))}if((i.type==="document"||i.type==="block-map"||i.type==="block-seq")&&(e.type==="block-map"||e.type==="block-seq")){let n=e.items[e.items.length-1];n&&!n.sep&&!n.value&&n.start.length>0&&iq(n.start)===-1&&(e.indent===0||n.start.every(o=>o.type!=="comment"||o.indent=A.indent){let i=!this.onKeyLine&&this.indent===A.indent,n=i&&(e.sep||e.explicitKey)&&this.type!=="seq-item-ind",o=[];if(n&&e.sep&&!e.value){let a=[];for(let r=0;rA.indent&&(a.length=0);break;default:a.length=0}}a.length>=2&&(o=e.sep.splice(a[1]))}switch(this.type){case"anchor":case"tag":n||e.value?(o.push(this.sourceToken),A.items.push({start:o}),this.onKeyLine=!0):e.sep?e.sep.push(this.sourceToken):e.start.push(this.sourceToken);return;case"explicit-key-ind":!e.sep&&!e.explicitKey?(e.start.push(this.sourceToken),e.explicitKey=!0):n||e.value?(o.push(this.sourceToken),A.items.push({start:o,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(e.explicitKey)if(e.sep)if(e.value)A.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Ud(e.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:o,key:null,sep:[this.sourceToken]}]});else if(oq(e.key)&&!Ud(e.sep,"newline")){let a=hh(e.start),r=e.key,s=e.sep;s.push(this.sourceToken),delete e.key,delete e.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:r,sep:s}]})}else o.length>0?e.sep=e.sep.concat(o,this.sourceToken):e.sep.push(this.sourceToken);else if(Ud(e.start,"newline"))Object.assign(e,{key:null,sep:[this.sourceToken]});else{let a=hh(e.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]})}else e.sep?e.value||n?A.items.push({start:o,key:null,sep:[this.sourceToken]}):Ud(e.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):e.sep.push(this.sourceToken):Object.assign(e,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);n||e.value?(A.items.push({start:o,key:a,sep:[]}),this.onKeyLine=!0):e.sep?this.stack.push(a):(Object.assign(e,{key:a,sep:[]}),this.onKeyLine=!0);return}default:{let a=this.startBlockValue(A);if(a){if(a.type==="block-seq"){if(!e.explicitKey&&e.sep&&!Ud(e.sep,"newline")){yield*hA(this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source}));return}}else i&&A.items.push({start:o});this.stack.push(a);return}}}}yield*hA(this.pop()),yield*hA(this.step())}*blockSequence(A){let e=A.items[A.items.length-1];switch(this.type){case"newline":if(e.value){let i="end"in e.value?e.value.end:void 0;(Array.isArray(i)?i[i.length-1]:void 0)?.type==="comment"?i?.push(this.sourceToken):A.items.push({start:[this.sourceToken]})}else e.start.push(this.sourceToken);return;case"space":case"comment":if(e.value)A.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(e.start,A.indent)){let n=A.items[A.items.length-2]?.value?.end;if(Array.isArray(n)){Array.prototype.push.apply(n,e.start),n.push(this.sourceToken),A.items.pop();return}}e.start.push(this.sourceToken)}return;case"anchor":case"tag":if(e.value||this.indent<=A.indent)break;e.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==A.indent)break;e.value||Ud(e.start,"seq-item-ind")?A.items.push({start:[this.sourceToken]}):e.start.push(this.sourceToken);return}if(this.indent>A.indent){let i=this.startBlockValue(A);if(i){this.stack.push(i);return}}yield*hA(this.pop()),yield*hA(this.step())}*flowCollection(A){let e=A.items[A.items.length-1];if(this.type==="flow-error-end"){let i;do yield*hA(this.pop()),i=this.peek(1);while(i?.type==="flow-collection")}else if(A.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!e||e.sep?A.items.push({start:[this.sourceToken]}):e.start.push(this.sourceToken);return;case"map-value-ind":!e||e.value?A.items.push({start:[],key:null,sep:[this.sourceToken]}):e.sep?e.sep.push(this.sourceToken):Object.assign(e,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!e||e.value?A.items.push({start:[this.sourceToken]}):e.sep?e.sep.push(this.sourceToken):e.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let n=this.flowScalar(this.type);!e||e.value?A.items.push({start:[],key:n,sep:[]}):e.sep?this.stack.push(n):Object.assign(e,{key:n,sep:[]});return}case"flow-map-end":case"flow-seq-end":A.end.push(this.sourceToken);return}let i=this.startBlockValue(A);i?this.stack.push(i):(yield*hA(this.pop()),yield*hA(this.step()))}else{let i=this.peek(2);if(i.type==="block-map"&&(this.type==="map-value-ind"&&i.indent===A.indent||this.type==="newline"&&!i.items[i.items.length-1].sep))yield*hA(this.pop()),yield*hA(this.step());else if(this.type==="map-value-ind"&&i.type!=="flow-collection"){let n=J8(i),o=hh(n);nq(A);let a=A.end.splice(1,A.end.length);a.push(this.sourceToken);let r={type:"block-map",offset:A.offset,indent:A.indent,items:[{start:o,key:A,sep:a}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=r}else yield*hA(this.lineEnd(A))}}flowScalar(A){if(this.onNewLine){let e=this.source.indexOf(` +`)+1;for(;e!==0;)this.onNewLine(this.offset+e),e=this.source.indexOf(` +`,e)+1}return{type:A,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(A){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let e=J8(A),i=hh(e);return i.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let e=J8(A),i=hh(e);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(A,e){return this.type!=="comment"||this.indent<=e?!1:A.every(i=>i.type==="newline"||i.type==="space")}*documentEnd(A){this.type!=="doc-mode"&&(A.end?A.end.push(this.sourceToken):A.end=[this.sourceToken],this.type==="newline"&&(yield*hA(this.pop())))}*lineEnd(A){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*hA(this.pop()),yield*hA(this.step());break;case"newline":this.onKeyLine=!1;default:A.end?A.end.push(this.sourceToken):A.end=[this.sourceToken],this.type==="newline"&&(yield*hA(this.pop()))}}};function YBe(t){let A=t.prettyErrors!==!1;return{lineCounter:t.lineCounter||A&&new Rp||null,prettyErrors:A}}function aq(t,A={}){let{lineCounter:e,prettyErrors:i}=YBe(A),n=new Np(e?.addNewLine),o=new _p(A),a=null;for(let r of o.compose(n.parse(t),!0,t.length))if(!a)a=r;else if(a.options.logLevel!=="silent"){a.errors.push(new Bg(r.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return i&&e&&(a.errors.forEach(qS(t,e)),a.warnings.forEach(qS(t,e))),a}function uh(t,A,e){let i;typeof A=="function"?i=A:e===void 0&&A&&typeof A=="object"&&(e=A);let n=aq(t,e);if(!n)return null;if(n.warnings.forEach(o=>p8(n.options.logLevel,o)),n.errors.length>0){if(n.options.logLevel!=="silent")throw n.errors[0];n.errors=[]}return n.toJS(Object.assign({reviver:i},e))}function sk(t,A,e){let i=null;if(typeof A=="function"||Array.isArray(A)?i=A:e===void 0&&A&&(e=A),typeof e=="string"&&(e=e.length),typeof e=="number"){let n=Math.round(e);e=n<1?void 0:n>8?{indent:8}:{indent:n}}if(t===void 0){let{keepUndefined:n}=e??A??{};if(!n)return}return lg(t)&&!i?t.toString(e):new mC(t,i,e).toString(e)}var w0=class t{static generateYamlFile(A,e,i,n,o=new Set){if(o.has(A.name))return;o.add(A.name);let a=A.isRoot?"root_agent.yaml":`${A.name}.yaml`,r=`${i}/${a}`,s=A.sub_agents?A.sub_agents.map(E=>({config_path:`./${E.name}.yaml`})):[],l={name:A.name,model:A.model,agent_class:A.agent_class,description:A.description||"",instruction:A.instruction,sub_agents:s,tools:t.buildToolsConfig(A.tools,n)};(!A.description||A.description.trim()==="")&&delete l.description,A.agent_class!="LlmAgent"&&(delete l.model,delete l.instruction,delete l.tools),A.agent_class==="LoopAgent"&&A.max_iterations&&(l.max_iterations=A.max_iterations);let c=t.buildCallbacksConfig(A.callbacks);Object.keys(c).length>0&&Object.assign(l,c);let C=sk(l),d=new Blob([C],{type:"application/x-yaml"}),B=new File([d],r,{type:"application/x-yaml"});e.append("files",B);for(let E of A.sub_agents??[])t.generateYamlFile(E,e,i,n,o);if(A.tools){for(let E of A.tools)if(E.toolType==="Agent Tool"){let u=E.toolAgentName||E.name;if(!u||u==="undefined"||u.trim()==="")continue;let m=n.get(u);m&&t.generateYamlFile(m,e,i,n,o)}}}static buildToolsConfig(A,e){return!A||A.length===0?[]:A.map(i=>{let n={name:i.name};if(i.toolType==="Agent Tool"){n.name="AgentTool";let o=i.toolAgentName||i.name;if(!o||o==="undefined"||o.trim()==="")return null;let a=e.get(o);return n.args={agent:{config_path:`./${o}.yaml`},skip_summarization:a?.skip_summarization||!1},n}return i.args&&Object.keys(i.args).some(a=>{let r=i.args[a];return r!=null&&r!==""})&&(n.args=i.args),n}).filter(i=>i!==null)}static buildCallbacksConfig(A){if(!A||A.length===0)return{};let e={};return A.forEach(i=>{let n=`${i.type}_callbacks`;e[n]||(e[n]=[]),e[n].push({name:i.name})}),e}};function PBe(t,A){t&1&&(I(0,"mat-hint",3),v(1," Start with a letter or underscore, and contain only letters, digits, and underscores. "),h())}var z8=class t{constructor(A,e){this.data=A;this.dialogRef=e}newAppName="";agentService=w(gl);_snackbarService=w(B0);router=w(ps);isNameValid(){let A=this.newAppName.trim();return!(!A||!/^[a-zA-Z_]/.test(A)||!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(A))}createNewApp(){let A=this.newAppName.trim();if(!this.isNameValid()){this._snackbarService.open("App name must start with a letter or underscore and can only contain letters, digits, and underscores.","OK");return}if(this.data.existingAppNames.includes(A)){this._snackbarService.open("App name already exists. Please choose a different name.","OK");return}let e={agent_class:"LlmAgent",instruction:"You are the root agent that coordinates other agents.",isRoot:!0,model:"gemini-2.5-flash",name:A,sub_agents:[],tools:[]},i=new FormData,n=new Map;w0.generateYamlFile(e,i,A,n),this.agentService.agentBuildTmp(A,i).subscribe(o=>{o?(this.router.navigate(["/"],{queryParams:{app:A,mode:"builder"}}).then(()=>{window.location.reload()}),this.dialogRef.close(!0)):this._snackbarService.open("Something went wrong, please try again","OK")})}static \u0275fac=function(e){return new(e||t)(dt(Do),dt(Pn))};static \u0275cmp=De({type:t,selectors:[["app-add-item-dialog"]],decls:10,vars:3,consts:[["mat-dialog-title","",1,"new-app-title"],[2,"padding-left","20px","padding-right","24px"],["matInput","",3,"ngModelChange","keydown.enter","ngModel"],[1,"validation-hint"],["align","end"],["mat-button","","mat-dialog-close",""],["mat-button","","cdkFocusInitial","",3,"click","disabled"]],template:function(e,i){e&1&&(I(0,"h2",0),v(1,"Create a new app"),h(),I(2,"mat-form-field",1)(3,"input",2),Fi("ngModelChange",function(o){return vi(i.newAppName,o)||(i.newAppName=o),o}),U("keydown.enter",function(){return i.createNewApp()}),h(),T(4,PBe,2,0,"mat-hint",3),h(),I(5,"mat-dialog-actions",4)(6,"button",5),v(7,"Cancel"),h(),I(8,"button",6),U("click",function(){return i.createNewApp()}),v(9," Create "),h()()),e&2&&(Q(3),Ni("ngModel",i.newAppName),Q(),O(i.isNameValid()?-1:4),Q(4),H("disabled",!i.isNameValid()))},dependencies:[ea,$o,Fa,wn,Kn,Un,Po,ma,xi,Sd,EI],styles:[".new-app-title[_ngcontent-%COMP%]{color:var(--mdc-dialog-subhead-color)!important;font-family:Google Sans;font-size:24px}.validation-hint[_ngcontent-%COMP%]{font-size:12px;color:var(--mdc-dialog-supporting-text-color)}"]})};function Eh(t,A,e){let i=typeof t=="string"?document.querySelector(t):t;if(!i)return;i.querySelectorAll("g.node").forEach(o=>{let a=o,s=o.querySelector("title")?.textContent||"";s==="__LEGEND__"||s==="__START__"||s==="__END__"||a.classList.contains("unvisited-node")||e&&!e.has(s)||(a.style.cursor="pointer",a.addEventListener("mouseenter",()=>{let l=o.querySelector("ellipse, polygon, path, rect");l&&(l.style.stroke="#42A5F5",l.style.strokeWidth="3")}),a.addEventListener("mouseleave",()=>{let l=o.querySelector("ellipse, polygon, path, rect");l&&(l.style.stroke="",l.style.strokeWidth="")}),A&&a.addEventListener("click",l=>{let C=o.querySelector("title")?.textContent||"";C&&A(C,l)}))})}function sq(t,A,e={}){let{ySpacing:i=200,xSpacing:n=350,startX:o=400,startY:a=100}=e,r=t.map(f=>f.name||f.agent?.name||""),s=new Map,l=new Map;r.forEach(f=>{s.set(f,[]),l.set(f,0)}),A.forEach(f=>{let D=f.from_node?.name||f.from_node?.agent?.name,S=f.to_node?.name||f.to_node?.agent?.name;D&&S&&(s.get(D)?.push(S),l.set(S,(l.get(S)||0)+1))});let c=new Map,C=[],d=new Map(l),B=new Set;for(r.forEach(f=>{d.get(f)===0&&(C.push(f),c.set(f,0),B.add(f))});C.length>0;){let f=C.shift(),D=c.get(f)||0;s.get(f)?.forEach(S=>{let k=c.get(S);if(k!==void 0&&k<=D)return;let b=D+1;k===void 0&&c.set(S,b);let x=d.get(S)||0;d.set(S,x-1),d.get(S)===0&&!B.has(S)&&(C.push(S),B.add(S))})}let E=Math.max(...Array.from(c.values()),0);r.forEach(f=>{c.has(f)||(c.set(f,E+1),E++)});let u=new Map;c.forEach((f,D)=>{u.has(f)||u.set(f,[]),u.get(f)?.push(D)});let m=new Map;return t.forEach(f=>{let D=f.name||f.agent?.name||"",S=c.get(D)||0,k=u.get(S)||[],b=k.indexOf(D),x=k.length,F=(b-(x-1)/2)*n;m.set(D,{x:o+F,y:a+S*i})}),{levels:c,nodesByLevel:u,positions:m}}function ug(t,A=""){return t?.name||t?.agent?.name||A}function lq(t){switch(t){case"start":return"play_arrow";case"function":return"code";case"tool":return"build";case"join":return"merge";default:return"smart_toy"}}function cq(t){switch(t){case"start":return"Start";case"function":return"Function";case"tool":return"Tool";case"join":return"Join";default:return"Agent"}}var Y8={ySpacing:200,xSpacing:350,startX:400,startY:100};function gq(t){return t.map(A=>A.name).join("/")}function fC(t){return!!(t.graph||t.nodes||t.sub_agents&&t.sub_agents.length>0)}function lk(t){return t.graph?.nodes?t.graph.nodes:t.nodes?t.nodes:[]}function Qh(t,A){if(t.nodes){let e=t.nodes.find(i=>i.name===A);if(e)return e}if(t.graph?.nodes){let e=t.graph.nodes.find(i=>i.name===A);if(e)return e}if(t.sub_agents){let e=t.sub_agents.find(i=>i.name===A);if(e)return e}return null}function Cq(t,A){let e=A.split("/"),i=[{name:t.name,data:t}],n=t;for(let o=1;oug(l)===a);if(s)i.push({name:a,data:s}),n=s;else{console.warn(`Could not find node '${a}' in path '${A}'`);break}}return i}function jBe(t,A){t&1&&(I(0,"mat-icon",20),v(1,"chevron_right"),h())}function VBe(t,A){if(t&1){let e=ae();T(0,jBe,2,0,"mat-icon",20),I(1,"button",21),U("click",function(){let n=L(e).$index,o=p(2);return G(o.navigateToLevel(n))}),v(2),h()}if(t&2){let e=A.$implicit,i=A.$index,n=p(2);O(i>0?0:-1),Q(),_e("active",i===n.breadcrumbs().length-1),H("disabled",i===n.breadcrumbs().length-1),Q(),pA(" ",e," ")}}function qBe(t,A){if(t&1&&(I(0,"div",3)(1,"span"),v(2,"Agent Structure:"),h(),I(3,"button",19),v(4),h(),I(5,"mat-icon",20),v(6,"chevron_right"),h(),RA(7,VBe,3,5,null,null,ja),h()),t&2){let e=p();Q(4),ne(e.appName),Q(3),NA(e.breadcrumbs())}}function ZBe(t,A){t&1&&(I(0,"div",15),le(1,"mat-spinner",22),I(2,"p"),v(3,"Loading agent structure..."),h()())}function WBe(t,A){if(t&1&&(I(0,"div",16)(1,"mat-icon",23),v(2,"error_outline"),h(),I(3,"p",24),v(4),h()()),t&2){let e=p();Q(4),ne(e.errorMessage())}}function XBe(t,A){if(t&1){let e=ae();I(0,"div",25),U("wheel",function(n){L(e);let o=p();return G(o.onWheel(n))})("mousedown",function(n){L(e);let o=p();return G(o.onMouseDown(n))})("mousemove",function(n){L(e);let o=p();return G(o.onMouseMove(n))})("mouseup",function(){L(e);let n=p();return G(n.onMouseUp())})("mouseleave",function(){L(e);let n=p();return G(n.onMouseUp())}),h()}if(t&2){let e=p();H("innerHTML",e.renderedGraph(),Xg)}}function $Be(t,A){t&1&&(I(0,"div",18)(1,"mat-icon",26),v(2,"account_tree"),h(),I(3,"p"),v(4,"Agent structure graph not available."),h()())}var H8=class t{appName;preloadedAppData;preloadedLightGraphSvg;preloadedDarkGraphSvg;startPath;close=new Le;agentService=w(gl);graphService=w(th);sanitizer=w(ys);themeService=w(pc);renderedGraph=fe(null);isLoading=fe(!0);errorMessage=fe(null);fullAppData=null;navigationStack=[];breadcrumbs=fe([]);isPanning=!1;wasDragging=!1;dragStartX=0;dragStartY=0;startPanX=0;startPanY=0;scale=1;translateX=0;translateY=0;lastMousedownTarget=null;onOverlayMouseDown(A){this.lastMousedownTarget=A.target}onBackdropClick(A){if(this.wasDragging||this.lastMousedownTarget&&(this.lastMousedownTarget.closest("svg")||this.lastMousedownTarget.closest(".overlay-header")||this.lastMousedownTarget.closest(".loading-container")||this.lastMousedownTarget.closest(".error-container")||this.lastMousedownTarget.closest(".no-graph-container")))return;let e=A.target;!e.closest("svg")&&!e.closest(".overlay-header")&&!e.closest(".loading-container")&&!e.closest(".error-container")&&!e.closest(".no-graph-container")&&this.close.emit()}ngOnInit(){this.loadAgentGraph()}loadAgentGraph(){if(this.isLoading.set(!0),this.errorMessage.set(null),this.renderedGraph.set(null),this.preloadedAppData){if(this.fullAppData=this.preloadedAppData,this.navigationStack=[{name:this.fullAppData.root_agent?.name||this.appName,data:this.fullAppData.root_agent}],this.startPath){let A=this.fullAppData.root_agent,e=this.startPath.split("/");for(let i of e){if(!i)continue;let n=Qh(A,i);if(n)this.navigationStack.push({name:i,data:n}),A=n;else break}}this.updateBreadcrumbs(),this.renderCurrentLevel();return}this.agentService.getAppInfo(this.appName).subscribe({next:A=>{if(this.fullAppData=A,this.navigationStack=[{name:A.root_agent?.name||this.appName,data:A.root_agent}],this.startPath){let e=this.fullAppData.root_agent,i=this.startPath.split("/");for(let n of i){if(!n)continue;let o=Qh(e,n);if(o)this.navigationStack.push({name:n,data:o}),e=o;else break}}this.updateBreadcrumbs(),this.renderCurrentLevel()},error:A=>{console.error("Error loading app data:",A),this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1)}})}renderCurrentLevel(){let A=this.themeService.currentTheme()==="dark",e=this.getCurrentPath(),i=A?this.preloadedDarkGraphSvg:this.preloadedLightGraphSvg,n=i?i[e]:null;if(n){this.renderedGraph.set(this.sanitizer.bypassSecurityTrustHtml(n)),this.isLoading.set(!1),setTimeout(()=>{let o=this.getExpandableNodes();Eh(".svg-container",a=>{this.wasDragging||this.onNodeClick(a)},o),this.initializeSvgTransform()},50);return}this.agentService.getAppGraphImage(this.appName,A,e).subscribe({next:o=>nA(this,null,function*(){try{if(!o?.dotSrc){this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1);return}let a=yield this.graphService.render(o.dotSrc);this.renderedGraph.set(this.sanitizer.bypassSecurityTrustHtml(a)),this.isLoading.set(!1),setTimeout(()=>{let r=this.getExpandableNodes();Eh(".svg-container",s=>{this.wasDragging||this.onNodeClick(s)},r),this.initializeSvgTransform()},50)}catch(a){console.error("Error rendering graph:",a),this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1)}}),error:o=>{console.error("Error loading agent graph:",o),this.errorMessage.set("Agent structure graph not available."),this.isLoading.set(!1)}})}getCurrentPath(){return this.navigationStack.length<=1?"":this.navigationStack.slice(1).map(A=>A.name).join("/")}updateBreadcrumbs(){this.breadcrumbs.set(this.navigationStack.map(A=>A.name))}onNodeClick(A){let e=this.navigationStack[this.navigationStack.length-1].data,i=Qh(e,A);i&&fC(i)&&this.navigateIntoNode(A,i)}navigateIntoNode(A,e){this.navigationStack.push({name:A,data:e}),this.updateBreadcrumbs(),this.isLoading.set(!0),this.renderCurrentLevel()}navigateToLevel(A){A>=0&&A{let a=ug(o);a!==i&&fC(o)&&A.add(a)}),A}getSvgElement(){return document.querySelector(".svg-container svg")}applyTransform(){let A=this.getSvgElement();A&&(A.style.transform=`translate(${this.translateX}px, ${this.translateY}px) scale(${this.scale})`)}initializeSvgTransform(){let A=this.getSvgElement(),e=document.querySelector(".svg-container");if(!A||!e)return;let i=A.getBoundingClientRect(),n=e.getBoundingClientRect(),o=48,a=(n.width-o)/i.width,r=(n.height-o)/i.height;this.scale=Math.min(1,a,r);let s=i.width*this.scale,l=i.height*this.scale;this.translateX=(n.width-s)/2,this.translateY=(n.height-l)/2,this.applyTransform(),requestAnimationFrame(()=>{A.classList.add("ready")})}onWheel(A){let e=document.querySelector(".svg-container"),i=this.getSvgElement();if(!e||!i)return;A.preventDefault();let n=Math.max(-100,Math.min(100,A.deltaY)),o=Math.pow(1.002,-n),a=this.scale*o,r=e.getBoundingClientRect(),s=A.clientX-r.left,l=A.clientY-r.top,c=(s-this.translateX)/this.scale,C=(l-this.translateY)/this.scale;this.translateX=s-c*a,this.translateY=l-C*a,this.scale=a,this.applyTransform()}onMouseDown(A){if(A.button!==0||!A.target.closest("svg"))return;this.isPanning=!0,this.wasDragging=!1,this.dragStartX=A.clientX,this.dragStartY=A.clientY,this.startPanX=A.clientX,this.startPanY=A.clientY;let i=this.getSvgElement();i&&(i.style.cursor="grabbing")}onMouseMove(A){if(this.isPanning){if(!this.wasDragging){let e=A.clientX-this.dragStartX,i=A.clientY-this.dragStartY;e*e+i*i>25&&(this.wasDragging=!0)}this.translateX+=A.clientX-this.startPanX,this.translateY+=A.clientY-this.startPanY,this.startPanX=A.clientX,this.startPanY=A.clientY,this.applyTransform()}}onMouseUp(){this.isPanning=!1;let A=this.getSvgElement();A&&(A.style.cursor=""),setTimeout(()=>{this.wasDragging=!1},50)}resetZoomPan(){this.initializeSvgTransform()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-agent-structure-graph-dialog"]],inputs:{appName:"appName",preloadedAppData:"preloadedAppData",preloadedLightGraphSvg:"preloadedLightGraphSvg",preloadedDarkGraphSvg:"preloadedDarkGraphSvg",startPath:"startPath"},outputs:{close:"close"},decls:35,vars:2,consts:[[1,"overlay-backdrop"],[1,"overlay-panel",3,"mousedown","click"],[1,"overlay-header"],[1,"breadcrumb-container"],[2,"flex","1"],[1,"graph-legend"],[1,"legend-item"],[2,"color","#42a5f5","font-size","16px"],[2,"color","#9333ea","font-size","16px"],[2,"color","#10b981","font-size","16px"],[2,"color","#f59e0b","font-size","16px"],[2,"color","#6b7280","font-size","16px"],["mat-icon-button","","aria-label","Close",3,"click"],[1,"overlay-content"],[1,"graph-container"],[1,"loading-container"],[1,"error-container"],[1,"svg-container",3,"innerHTML"],[1,"no-graph-container"],["disabled","",1,"breadcrumb-item"],[1,"breadcrumb-separator"],[1,"breadcrumb-item",3,"click","disabled"],["diameter","50"],[1,"error-icon"],[1,"error-message"],[1,"svg-container",3,"wheel","mousedown","mousemove","mouseup","mouseleave","innerHTML"],[1,"large-icon"]],template:function(e,i){e&1&&(le(0,"div",0),I(1,"div",1),U("mousedown",function(o){return i.onOverlayMouseDown(o)})("click",function(o){return i.onBackdropClick(o)}),I(2,"div",2),T(3,qBe,9,1,"div",3),le(4,"span",4),I(5,"div",5)(6,"span",6)(7,"span",7),v(8,"\u2726"),h(),v(9," Agent"),h(),I(10,"span",6)(11,"span",8),v(12,"\u22B7"),h(),v(13," Workflow"),h(),I(14,"span",6)(15,"span",9),v(16,"\u0192"),h(),v(17," Function"),h(),I(18,"span",6)(19,"span",10),v(20,"\u2335"),h(),v(21," Join"),h(),I(22,"span",6)(23,"span",11),v(24,"\u{1F527}"),h(),v(25," Tool"),h()(),I(26,"button",12),U("click",function(){return i.close.emit()}),I(27,"mat-icon"),v(28,"close"),h()()(),I(29,"div",13)(30,"div",14),T(31,ZBe,4,0,"div",15)(32,WBe,5,1,"div",16)(33,XBe,1,1,"div",17)(34,$Be,5,0,"div",18),h()()()),e&2&&(Q(3),O(i.renderedGraph()&&i.breadcrumbs().length>0?3:-1),Q(28),O(i.isLoading()?31:i.errorMessage()?32:i.renderedGraph()?33:34))},dependencies:[Ci,Wi,Di,Tn,Vt,_d,ws],styles:["[_nghost-%COMP%]{display:block;position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center}.overlay-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;background-color:#000000b3}.overlay-panel[_ngcontent-%COMP%]{position:relative;width:100vw;height:100vh;display:flex;flex-direction:column;background-color:transparent;color:var(--mat-sys-on-surface);border-radius:0;overflow:hidden;box-shadow:none}.overlay-header[_ngcontent-%COMP%]{display:flex;align-items:center;height:48px;padding:0 16px;box-sizing:border-box;border-bottom:1px solid var(--mat-sys-outline-variant);background-color:var(--mat-sys-surface-container)}.overlay-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden}.graph-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-height:0}.agent-info[_ngcontent-%COMP%]{margin:0 0 8px;font-size:14px;color:var(--mdc-dialog-supporting-text-color)}.agent-info[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600;color:var(--mdc-dialog-supporting-text-color)}.svg-container[_ngcontent-%COMP%]{flex:1;position:relative;overflow:hidden;background-color:transparent}.svg-container[_ngcontent-%COMP%] svg{position:absolute;top:0;left:0;transform-origin:0 0;cursor:grab;border-radius:16px;box-shadow:0 4px 12px #0000004d}.svg-container[_ngcontent-%COMP%] svg>g.graph>polygon:first-child{fill:transparent!important;stroke:transparent!important}.svg-container[_ngcontent-%COMP%] svg{opacity:0;transition:opacity .1s ease-in-out}.svg-container[_ngcontent-%COMP%] svg.ready{opacity:1}.svg-container[_ngcontent-%COMP%] svg:active{cursor:grabbing}.dark-theme[_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg, .dark-theme [_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg{background-color:#0e172a}.light-theme[_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg, .light-theme [_nghost-%COMP%] .svg-container[_ngcontent-%COMP%] svg{background-color:#f9fafc}.loading-container[_ngcontent-%COMP%], .error-container[_ngcontent-%COMP%], .no-graph-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:40px}.loading-container[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .error-container[_ngcontent-%COMP%] p[_ngcontent-%COMP%], .no-graph-container[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-top:16px;font-size:14px;color:var(--mdc-dialog-supporting-text-color)}.error-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px;color:#f44336}.error-message[_ngcontent-%COMP%]{color:#f44336!important}.large-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px;color:var(--mdc-dialog-supporting-text-color);opacity:.6}.breadcrumb-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;margin-left:8px;padding:0;background-color:transparent;flex-wrap:wrap}.breadcrumb-item[_ngcontent-%COMP%]{background:none;border:none;padding:4px 8px;cursor:pointer;color:var(--mat-sys-primary);font-size:13px;border-radius:4px;transition:background-color .2s}.breadcrumb-item[_ngcontent-%COMP%]:hover:not(:disabled){background-color:var(--mat-sys-surface-container-high)}.breadcrumb-item[_ngcontent-%COMP%]:disabled, .breadcrumb-item.active[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);cursor:default;font-weight:600}.breadcrumb-separator[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:var(--mat-sys-on-surface-variant)}.graph-legend[_ngcontent-%COMP%]{display:flex;align-items:center;gap:16px;margin-right:16px;font-size:13px;color:var(--mat-sys-on-surface-variant);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;padding:6px 16px;background-color:var(--mat-sys-surface-container-lowest)}.graph-legend[_ngcontent-%COMP%] .legend-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;font-weight:500}"]})};var ehe=["mat-internal-form-field",""],Ahe=["*"],P8=(()=>{class t{labelPosition="after";static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["div","mat-internal-form-field",""]],hostAttrs:[1,"mdc-form-field","mat-internal-form-field"],hostVars:2,hostBindings:function(i,n){i&2&&_e("mdc-form-field--align-end",n.labelPosition==="before")},inputs:{labelPosition:"labelPosition"},attrs:ehe,ngContentSelectors:Ahe,decls:1,vars:0,template:function(i,n){i&1&&(Yt(),tt(0))},styles:[`.mat-internal-form-field{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-flex;align-items:center;vertical-align:middle}.mat-internal-form-field>label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0;order:0}[dir=rtl] .mat-internal-form-field>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px}.mdc-form-field--align-end>label{margin-left:auto;margin-right:0;padding-left:0;padding-right:4px;order:-1}[dir=rtl] .mdc-form-field--align-end .mdc-form-field--align-end label{margin-left:0;margin-right:auto;padding-left:4px;padding-right:0} +`],encapsulation:2,changeDetection:0})}return t})();var the=["audioPlayer"],ph=class t{base64data=MA("");audioPlayerRef=Ho("audioPlayer");audioSrc="";constructor(){}ngOnChanges(A){A.base64data&&this.base64data()&&this.setAudioSource(this.base64data())}setAudioSource(A){A.startsWith("data:")||A.startsWith("http")||A.startsWith("blob:")?this.audioSrc=A:this.audioSrc=`data:audio/mpeg;base64,${A}`,this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&this.audioPlayerRef().nativeElement.load()}play(){this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&this.audioPlayerRef().nativeElement.play()}pause(){this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&this.audioPlayerRef().nativeElement.pause()}stop(){this.audioPlayerRef()&&this.audioPlayerRef().nativeElement&&(this.audioPlayerRef().nativeElement.pause(),this.audioPlayerRef().nativeElement.currentTime=0)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-audio-player"]],viewQuery:function(e,i){e&1&&Bs(i.audioPlayerRef,the,5),e&2&&Rr()},inputs:{base64data:[1,"base64data"]},features:[ai],decls:3,vars:1,consts:[["audioPlayer",""],["controls","",3,"src"]],template:function(e,i){e&1&&(Gn(0,"div"),eo(1,"audio",1,0),$n()),e&2&&(Q(),Ra("src",i.audioSrc))},styles:[".audio-player-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;padding:15px;border-radius:8px;box-shadow:0 2px 5px var(--audio-player-container-box-shadow-color);margin:20px auto;max-width:350px}audio[_ngcontent-%COMP%]{outline:none;border-radius:5px;width:350px}.custom-controls[_ngcontent-%COMP%]{margin-top:10px;display:flex;gap:10px}.custom-controls[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{padding:8px 15px;border:none;border-radius:5px;color:var(--audio-player-custom-controls-button-color);cursor:pointer;font-size:14px;transition:background-color .2s ease}"]})};function ihe(t,A){if(t&1){let e=ae();I(0,"div",0)(1,"div",4),v(2),h(),I(3,"button",5),U("click",function(){L(e);let n=p();return G(n.close())}),mt(),I(4,"svg",6),le(5,"path",7),h()()()}if(t&2){let e=p();Q(),H("title",e.currentUrl),Q(),ne(e.currentUrl)}}function nhe(t,A){if(t&1){let e=ae();I(0,"button",5),U("click",function(){L(e);let n=p();return G(n.close())}),mt(),I(1,"svg",6),le(2,"path",7),h()()}}function ohe(t,A){if(t&1){let e=ae();I(0,"button",8),U("click",function(){L(e);let n=p();return G(n.prevImage())}),mt(),I(1,"svg",6),le(2,"path",9),h()(),fr(),I(3,"button",10),U("click",function(){L(e);let n=p();return G(n.nextImage())}),mt(),I(4,"svg",6),le(5,"path",11),h()(),fr(),I(6,"div",12),v(7),h()}if(t&2){let e=p();H("disabled",e.currentIndex===0),Q(3),H("disabled",e.currentIndex===e.images.length-1),Q(4),Va("",e.currentIndex+1," / ",e.images.length)}}function ahe(t,A){if(t&1&&le(0,"div",18),t&2){let e=p(3);H("ngStyle",e.getHighlightStyle())}}function rhe(t,A){if(t&1){let e=ae();I(0,"div",16),U("click",function(n){return n.stopPropagation()})("wheel",function(n){L(e);let o=p(2);return G(o.onWheel(n))})("mousedown",function(n){L(e);let o=p(2);return G(o.onMouseDown(n))})("mousemove",function(n){L(e);let o=p(2);return G(o.onMouseMove(n))})("mouseup",function(){L(e);let n=p(2);return G(n.onMouseUp())})("mouseleave",function(){L(e);let n=p(2);return G(n.onMouseUp())}),le(1,"img",17),T(2,ahe,1,1,"div",18),h()}if(t&2){let e=p(2);H("ngStyle",e.getTransformStyle()),Q(),H("src",e.displayContent,wo),Q(),O(e.shouldShowHighlight()?2:-1)}}function she(t,A){t&1&&(I(0,"div",15),v(1," No image data provided. "),h())}function lhe(t,A){if(t&1){let e=ae();I(0,"div",13),U("click",function(){L(e);let n=p();return G(n.close())}),T(1,rhe,3,3,"div",14),T(2,she,2,0,"div",15),h()}if(t&2){let e=p();Q(),O(e.displayContent?1:-1),Q(),O(e.displayContent?-1:2)}}function che(t,A){if(t&1&&le(0,"div",3),t&2){let e=p();H("innerHTML",e.displayContent,Xg)}}var mh=class t{displayContent=null;isSvgContent=!1;images=[];currentIndex=0;currentUrl=null;urls=[];coordinates=[];scale=1;translateX=0;translateY=0;isDragging=!1;startX=0;startY=0;dialogRef=w(Pn);data=w(Do);safeValuesService=w(ys);ngOnInit(){this.images=this.data.images||[],this.currentIndex=this.data.currentIndex||0,this.urls=this.data.urls||[],this.coordinates=this.data.coordinates||[],this.updateImage()}updateImage(){this.scale=1,this.translateX=0,this.translateY=0;let A=this.data.imageData,e="";this.images.length>0&&(A=this.images[this.currentIndex],e=this.urls[this.currentIndex]||""),this.currentUrl=e,this.processImageData(A)}getHighlightStyle(){let A=this.coordinates[this.currentIndex];return A?{left:`${A.x/1e3*100}%`,top:`${A.y/1e3*100}%`}:{}}shouldShowHighlight(){return!!this.coordinates[this.currentIndex]}processImageData(A){if(!A){this.displayContent=null,this.isSvgContent=!1;return}if(A.trim().includes("0&&(this.currentIndex--,this.updateImage())}onWheel(A){A.preventDefault();let e=.1;A.deltaY<0?this.scale+=e:this.scale=Math.max(.5,this.scale-e)}onMouseDown(A){this.isDragging=!0,this.startX=A.clientX-this.translateX,this.startY=A.clientY-this.translateY,A.preventDefault()}onMouseMove(A){this.isDragging&&(this.translateX=A.clientX-this.startX,this.translateY=A.clientY-this.startY)}onMouseUp(){this.isDragging=!1}getTransformStyle(){return{transform:`translate(${this.translateX}px, ${this.translateY}px) scale(${this.scale})`,transformOrigin:"center",cursor:this.isDragging?"grabbing":"grab",transition:this.isDragging?"none":"transform 0.1s ease"}}handleKeyDown(A){A.key==="ArrowLeft"?this.prevImage():A.key==="ArrowRight"&&this.nextImage()}close(){this.dialogRef.close()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-view-image-dialog"]],hostBindings:function(e,i){e&1&&U("keydown",function(o){return i.handleKeyDown(o)},Zc)},decls:6,vars:4,consts:[[1,"header-bar"],[1,"close-button"],[1,"image-wrapper"],[3,"innerHTML"],[1,"image-title",3,"title"],[1,"close-button",3,"click"],["xmlns","http://www.w3.org/2000/svg","viewBox","0 0 24 24","fill","currentColor","width","24px","height","24px"],["d","M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"],[1,"nav-button","prev-button",3,"click","disabled"],["d","M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12z"],[1,"nav-button","next-button",3,"click","disabled"],["d","M10 6L8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"],[1,"image-counter"],[1,"image-wrapper",3,"click"],[1,"image-container",2,"position","relative","display","inline-block",3,"ngStyle"],[1,"no-image-placeholder"],[1,"image-container",2,"position","relative","display","inline-block",3,"click","wheel","mousedown","mousemove","mouseup","mouseleave","ngStyle"],["alt","Viewed Image",3,"src"],[1,"highlight-circle",3,"ngStyle"]],template:function(e,i){e&1&&(I(0,"div"),T(1,ihe,6,2,"div",0)(2,nhe,3,0,"button",1),T(3,ohe,8,4),T(4,lhe,3,2,"div",2),T(5,che,1,1,"div",3),h()),e&2&&(Q(),O(i.currentUrl?1:2),Q(2),O(i.images.length>1?3:-1),Q(),O(i.isSvgContent?-1:4),Q(),O(i.isSvgContent?5:-1))},dependencies:[lB],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;width:100vw;height:100vh;padding:0;overflow:hidden;background-color:#0009}.close-button[_ngcontent-%COMP%]{position:absolute;top:5px;right:10px;border:none;cursor:pointer;padding:8px;border-radius:50%;transition:background-color .2s ease;color:#fff;background:#00000080;display:flex;align-items:center;justify-content:center;margin-bottom:15px;z-index:30}.close-button[_ngcontent-%COMP%]:hover{background-color:#0000000d}.close-button[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:24px;height:24px;fill:currentColor}.image-wrapper[_ngcontent-%COMP%]{flex-grow:1;display:flex;justify-content:center;align-items:center;overflow:hidden}.image-wrapper[_ngcontent-%COMP%] img[_ngcontent-%COMP%], .image-wrapper[_ngcontent-%COMP%] .svg-container[_ngcontent-%COMP%]{max-width:100%;max-height:100%;object-fit:contain;border-radius:0}.no-image-placeholder[_ngcontent-%COMP%]{color:var(--trace-chart-trace-duration-color);font-style:italic;text-align:center;padding:20px}@media(max-width:1768px){.close-button[_ngcontent-%COMP%]{top:5px;right:5px;padding:5px}}.nav-button[_ngcontent-%COMP%]{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease;z-index:10}.nav-button[_ngcontent-%COMP%]:hover:not(:disabled){background:#000000b3}.nav-button[_ngcontent-%COMP%]:disabled{opacity:.3;cursor:default}.nav-button[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:24px;height:24px;fill:currentColor}.prev-button[_ngcontent-%COMP%]{left:20px}.next-button[_ngcontent-%COMP%]{right:20px}.image-counter[_ngcontent-%COMP%]{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#00000080;color:#fff;padding:4px 12px;border-radius:12px;font-size:14px;z-index:10}.header-bar[_ngcontent-%COMP%]{position:absolute;top:0;left:0;width:100%;background:#000000b3;color:#fff;z-index:20;display:flex;align-items:center;justify-content:center;padding:8px 40px;box-sizing:border-box}.image-title[_ngcontent-%COMP%]{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90%}.header-bar[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{position:absolute;top:50%;right:10px;transform:translateY(-50%);color:#fff;margin-bottom:0;background:transparent}.header-bar[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]:hover{background-color:#ffffff1a}.highlight-circle[_ngcontent-%COMP%]{position:absolute;width:30px;height:30px;border-radius:50%;background-color:#ff000080;border:2px solid red;transform:translate(-50%,-50%);pointer-events:none;z-index:5}"]})};function ghe(t,A){t&1&&(I(0,"mat-icon",4),v(1,"image"),h())}function Che(t,A){t&1&&(I(0,"mat-icon",4),v(1,"audiotrack"),h())}function dhe(t,A){t&1&&(I(0,"mat-icon",4),v(1,"movie"),h())}function Ihe(t,A){t&1&&(I(0,"mat-icon",4),v(1,"description"),h())}function Bhe(t,A){t&1&&(I(0,"mat-icon",4),v(1,"text_snippet"),h())}function hhe(t,A){if(t&1&&T(0,Ihe,2,0,"mat-icon",4)(1,Bhe,2,0,"mat-icon",4),t&2){let e=p().$index,i=p();O(i.selectedArtifacts[e].mimeType==="text/html"?0:1)}}function uhe(t,A){t&1&&(I(0,"mat-icon",4),v(1,"insert_drive_file"),h())}function Ehe(t,A){if(t&1&&(I(0,"mat-option",12),v(1),h()),t&2){let e=A.$implicit;H("value",e),Q(),ne(e.versionId)}}function Qhe(t,A){if(t&1){let e=ae();I(0,"div",15)(1,"img",18),U("click",function(){L(e);let n=p().$index,o=p();return G(o.openViewImageDialog(o.selectedArtifacts[n].data))}),h()()}if(t&2){let e=p().$index,i=p();Q(),H("src",i.selectedArtifacts[e].data??"",wo)}}function phe(t,A){if(t&1&&(I(0,"div",16),le(1,"app-audio-player",19),h()),t&2){let e=p().$index,i=p();Q(),H("base64data",i.selectedArtifacts[e].data)}}function mhe(t,A){if(t&1&&(I(0,"div",17),le(1,"video",20),h()),t&2){let e=p().$index,i=p();Q(),H("src",i.selectedArtifacts[e].data,wo)}}function fhe(t,A){if(t&1){let e=ae();I(0,"div",21)(1,"mat-icon",23),v(2,"description"),h(),I(3,"a",24),U("click",function(){L(e);let n=p(2).$index,o=p();return G(o.openArtifact(o.selectedArtifacts[n].data,o.selectedArtifacts[n].mimeType))}),v(4," Preview in new tab "),h()()}}function whe(t,A){if(t&1&&(I(0,"div",22)(1,"pre",25),v(2),h()()),t&2){let e=p(2).$index,i=p();Q(2),ne(i.getTextContent(i.selectedArtifacts[e].data))}}function yhe(t,A){if(t&1&&T(0,fhe,5,0,"div",21)(1,whe,3,1,"div",22),t&2){let e=p().$index,i=p();O(i.selectedArtifacts[e].mimeType==="text/html"?0:1)}}function vhe(t,A){if(t&1){let e=ae();I(0,"div",1)(1,"div",2)(2,"div",3),T(3,ghe,2,0,"mat-icon",4)(4,Che,2,0,"mat-icon",4)(5,dhe,2,0,"mat-icon",4)(6,hhe,2,1)(7,uhe,2,0,"mat-icon",4),I(8,"button",5),U("click",function(){let n=L(e).$index,o=p();return G(o.openArtifact(o.selectedArtifacts[n].data,o.selectedArtifacts[n].mimeType))}),I(9,"span",6),v(10),h(),I(11,"mat-icon",7),v(12,"open_in_new"),h()()(),I(13,"div",8)(14,"div",9)(15,"span",10),v(16,"Version:"),h(),I(17,"mat-select",11),Fi("ngModelChange",function(n){let o=L(e).$index,a=p();return vi(a.selectedArtifacts[o],n)||(a.selectedArtifacts[o]=n),G(n)}),U("selectionChange",function(n){let o=L(e).$index,a=p();return G(a.onArtifactVersionChange(n,o))}),RA(18,Ehe,2,2,"mat-option",12,ri),h()(),I(20,"button",13),U("click",function(){let n=L(e).$index,o=p();return G(o.downloadArtifact(o.selectedArtifacts[n]))}),I(21,"mat-icon"),v(22,"file_download"),h()()()(),I(23,"div",14),T(24,Qhe,2,1,"div",15)(25,phe,2,1,"div",16)(26,mhe,2,1,"div",17)(27,yhe,2,1),h()()}if(t&2){let e,i,n=A.$implicit,o=A.$index,a=p();Q(3),O((e=a.selectedArtifacts[o].mediaType)===a.MediaType.IMAGE?3:e===a.MediaType.AUDIO?4:e===a.MediaType.VIDEO?5:e===a.MediaType.TEXT?6:7),Q(5),H("matTooltip","Open in new tab"),Q(2),ne(a.getArtifactName(n)),Q(7),Ni("ngModel",a.selectedArtifacts[o]),Q(),NA(a.getSortedArtifactsFromId(n)),Q(2),H("matTooltip","Download artifact"),Q(4),O((i=a.selectedArtifacts[o].mediaType)===a.MediaType.IMAGE?24:i===a.MediaType.AUDIO?25:i===a.MediaType.VIDEO?26:i===a.MediaType.TEXT?27:-1)}}var Dhe="default_artifact_name",wC=(o=>(o.IMAGE="image",o.AUDIO="audio",o.VIDEO="video",o.TEXT="text",o.UNSPECIFIED="unspecified",o))(wC||{});function V8(t){let A=t.toLowerCase();for(let e of Object.values(wC))if(e!=="unspecified"&&A.startsWith(e+"/"))return e;return"unspecified"}function bhe(t){return t?t.startsWith("image/"):!1}function Mhe(t){return t?t.startsWith("audio/"):!1}var j8=class t{artifacts=MA([]);selectedArtifacts=[];isArtifactAudio=Mhe;isArtifactImage=bhe;MediaType=wC;downloadService=w(Ah);dialog=w(nr);safeValuesService=w(ys);ngOnChanges(A){if(A.artifacts){this.selectedArtifacts=[];for(let e of this.getDistinctArtifactIds())this.selectedArtifacts.push(this.getSortedArtifactsFromId(e)[0])}}downloadArtifact(A){this.downloadService.downloadBase64Data(A.data,A.mimeType,A.id)}getArtifactName(A){return A??Dhe}getDistinctArtifactIds(){return[...new Set(this.artifacts().map(A=>A.id))]}getSortedArtifactsFromId(A){return this.artifacts().filter(e=>e.id===A).sort((e,i)=>i.versionId-e.versionId)}getTextContent(A){if(!A)return"";let e=A.indexOf(",");if(e===-1)return"";let i=A.substring(e+1);try{return atob(i)}catch(n){return"Failed to decode text content"}}onArtifactVersionChange(A,e){this.selectedArtifacts[e]=A.value}openViewImageDialog(A){if(!A||!A.startsWith("data:")||A.indexOf(";base64,")===-1)return;let e=this.dialog.open(mh,{maxWidth:"90vw",maxHeight:"90vh",data:{imageData:A}})}openArtifact(A,e){this.openBase64InNewTab(A,e)}openBase64InNewTab(A,e){this.safeValuesService.openBase64InNewTab(A,e)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-artifact-tab"]],inputs:{artifacts:[1,"artifacts"]},features:[ai],decls:3,vars:0,consts:[[1,"artifact-container"],[1,"artifact-card"],[1,"artifact-card-header"],[1,"artifact-title-group"],[1,"artifact-icon"],[1,"artifact-title-link",3,"click","matTooltip"],[1,"title-text"],[1,"open-icon"],[1,"artifact-actions"],[1,"version-selector"],[1,"version-label"],["panelClass","compact-select-panel",1,"compact-select",3,"ngModelChange","selectionChange","ngModel"],[3,"value"],["mat-icon-button","",1,"compact-action-button",3,"click","matTooltip"],[1,"artifact-card-content"],[1,"preview-image-container"],[1,"preview-audio-container"],[1,"preview-video-container"],["alt","artifact.id",1,"preview-image",3,"click","src"],[3,"base64data"],["controls","",1,"preview-video",3,"src"],[1,"preview-html-container"],[1,"preview-text-container"],[1,"html-icon"],[1,"html-link",3,"click"],[1,"preview-text"]],template:function(e,i){e&1&&(I(0,"div",0),RA(1,vhe,28,6,"div",1,ri),h()),e&2&&(Q(),NA(i.getDistinctArtifactIds()))},dependencies:[Ec,wn,Un,Po,es,Di,Vt,ph,ln],styles:[".artifact-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;padding:8px}.artifact-card[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-low);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 8px #0000001a}.artifact-card-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;background-color:var(--mat-sys-surface-container);flex-wrap:wrap;gap:8px}.artifact-title-group[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;flex:1;min-width:200px}.artifact-icon[_ngcontent-%COMP%]{color:var(--mat-sys-primary);font-size:20px;width:20px;height:20px}.artifact-title-link[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px;border:none;background:none;padding:0;font-family:inherit;color:var(--mat-sys-on-surface);cursor:pointer;max-width:250px}.artifact-title-link[_ngcontent-%COMP%]:hover{color:var(--mat-sys-primary);text-decoration:underline}.artifact-title-link[_ngcontent-%COMP%]:focus{outline:2px solid var(--mat-sys-primary);outline-offset:2px;border-radius:2px}.title-text[_ngcontent-%COMP%]{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;flex-shrink:0}.artifact-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.version-selector[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.version-label[_ngcontent-%COMP%]{font-size:12px;color:var(--mat-sys-on-surface-variant);font-weight:500}.compact-select[_ngcontent-%COMP%]{width:50px;font-size:10px}.compact-select[_ngcontent-%COMP%] .mat-mdc-select-trigger{padding:2px 4px}.compact-select[_ngcontent-%COMP%] .mat-mdc-select-value{font-size:10px} .compact-select-panel{font-size:10px!important} .compact-select-panel .mat-mdc-option{font-size:10px!important;min-height:28px!important;padding:0 8px!important} .compact-select-panel .mat-mdc-option-pseudo-checkbox{transform:scale(.7)!important}.compact-action-button[_ngcontent-%COMP%]{width:32px;height:32px;display:flex;justify-content:center;align-items:center}.compact-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.artifact-card-content[_ngcontent-%COMP%]{padding:8px 12px;background-color:var(--mat-sys-surface-container-lowest)}.preview-image-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}.preview-image[_ngcontent-%COMP%]{max-width:100%;max-height:300px;border-radius:8px;cursor:pointer}.preview-audio-container[_ngcontent-%COMP%]{width:100%}.preview-video-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}.preview-video[_ngcontent-%COMP%]{max-width:100%;border-radius:8px}.preview-html-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;justify-content:center;padding:20px}.html-icon[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.html-link[_ngcontent-%COMP%]{color:var(--mat-sys-primary);text-decoration:underline;cursor:pointer;font-weight:500;font-size:14px}.html-link[_ngcontent-%COMP%]:hover{color:var(--mat-sys-primary-dark)}.preview-text-container[_ngcontent-%COMP%]{max-height:200px;overflow-y:auto;background:var(--mat-sys-surface-container-highest);padding:12px;border-radius:8px}.preview-text[_ngcontent-%COMP%]{margin:0;white-space:pre-wrap;font-family:Roboto Mono,monospace;font-size:12px;color:var(--mat-sys-on-surface)}"]})};var She=["input"],khe=["label"],_he=["*"],ck={color:"accent",clickAction:"check-indeterminate",disabledInteractive:!1},xhe=new Me("mat-checkbox-default-options",{providedIn:"root",factory:()=>ck}),bs=(function(t){return t[t.Init=0]="Init",t[t.Checked=1]="Checked",t[t.Unchecked=2]="Unchecked",t[t.Indeterminate=3]="Indeterminate",t})(bs||{}),gk=class{source;checked},Eg=(()=>{class t{_elementRef=w(dA);_changeDetectorRef=w(xt);_ngZone=w(At);_animationsDisabled=hn();_options=w(xhe,{optional:!0});focus(){this._inputElement.nativeElement.focus()}_createChangeEvent(e){let i=new gk;return i.source=this,i.checked=e,i}_getAnimationTargetElement(){return this._inputElement?.nativeElement}_animationClasses={uncheckedToChecked:"mdc-checkbox--anim-unchecked-checked",uncheckedToIndeterminate:"mdc-checkbox--anim-unchecked-indeterminate",checkedToUnchecked:"mdc-checkbox--anim-checked-unchecked",checkedToIndeterminate:"mdc-checkbox--anim-checked-indeterminate",indeterminateToChecked:"mdc-checkbox--anim-indeterminate-checked",indeterminateToUnchecked:"mdc-checkbox--anim-indeterminate-unchecked"};ariaLabel="";ariaLabelledby=null;ariaDescribedby;ariaExpanded;ariaControls;ariaOwns;_uniqueId;id;get inputId(){return`${this.id||this._uniqueId}-input`}required=!1;labelPosition="after";name=null;change=new Le;indeterminateChange=new Le;value;disableRipple=!1;_inputElement;_labelElement;tabIndex;color;disabledInteractive;_onTouched=()=>{};_currentAnimationClass="";_currentCheckState=bs.Init;_controlValueAccessorChangeFn=()=>{};_validatorChangeFn=()=>{};constructor(){w(Eo).load(yr);let e=w(new $s("tabindex"),{optional:!0});this._options=this._options||ck,this.color=this._options.color||ck.color,this.tabIndex=e==null?0:parseInt(e)||0,this.id=this._uniqueId=w(bn).getId("mat-mdc-checkbox-"),this.disabledInteractive=this._options?.disabledInteractive??!1}ngOnChanges(e){e.required&&this._validatorChangeFn()}ngAfterViewInit(){this._syncIndeterminate(this.indeterminate)}get checked(){return this._checked}set checked(e){e!=this.checked&&(this._checked=e,this._changeDetectorRef.markForCheck())}_checked=!1;get disabled(){return this._disabled}set disabled(e){e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}_disabled=!1;get indeterminate(){return this._indeterminate()}set indeterminate(e){let i=e!=this._indeterminate();this._indeterminate.set(e),i&&(e?this._transitionCheckState(bs.Indeterminate):this._transitionCheckState(this.checked?bs.Checked:bs.Unchecked),this.indeterminateChange.emit(e)),this._syncIndeterminate(e)}_indeterminate=fe(!1);_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(e){this.checked=!!e}registerOnChange(e){this._controlValueAccessorChangeFn=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}validate(e){return this.required&&e.value!==!0?{required:!0}:null}registerOnValidatorChange(e){this._validatorChangeFn=e}_transitionCheckState(e){let i=this._currentCheckState,n=this._getAnimationTargetElement();if(!(i===e||!n)&&(this._currentAnimationClass&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(i,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);let o=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{n.classList.remove(o)},1e3)})}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.checked),this.change.emit(this._createChangeEvent(this.checked)),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked,this._controlValueAccessorChangeFn(this.checked)}_handleInputClick(){let e=this._options?.clickAction;!this.disabled&&e!=="noop"?(this.indeterminate&&e!=="check"&&Promise.resolve().then(()=>{this._indeterminate.set(!1),this.indeterminateChange.emit(!1)}),this._checked=!this._checked,this._transitionCheckState(this._checked?bs.Checked:bs.Unchecked),this._emitChangeEvent()):(this.disabled&&this.disabledInteractive||!this.disabled&&e==="noop")&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate)}_onInteractionEvent(e){e.stopPropagation()}_onBlur(){Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}_getAnimationClassForCheckStateTransition(e,i){if(this._animationsDisabled)return"";switch(e){case bs.Init:if(i===bs.Checked)return this._animationClasses.uncheckedToChecked;if(i==bs.Indeterminate)return this._checked?this._animationClasses.checkedToIndeterminate:this._animationClasses.uncheckedToIndeterminate;break;case bs.Unchecked:return i===bs.Checked?this._animationClasses.uncheckedToChecked:this._animationClasses.uncheckedToIndeterminate;case bs.Checked:return i===bs.Unchecked?this._animationClasses.checkedToUnchecked:this._animationClasses.checkedToIndeterminate;case bs.Indeterminate:return i===bs.Checked?this._animationClasses.indeterminateToChecked:this._animationClasses.indeterminateToUnchecked}return""}_syncIndeterminate(e){let i=this._inputElement;i&&(i.nativeElement.indeterminate=e)}_onInputClick(){this._handleInputClick()}_onTouchTargetClick(){this._handleInputClick(),this.disabled||this._inputElement.nativeElement.focus()}_preventBubblingFromLabel(e){e.target&&this._labelElement.nativeElement.contains(e.target)&&e.stopPropagation()}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-checkbox"]],viewQuery:function(i,n){if(i&1&&$t(She,5)(khe,5),i&2){let o;cA(o=gA())&&(n._inputElement=o.first),cA(o=gA())&&(n._labelElement=o.first)}},hostAttrs:[1,"mat-mdc-checkbox"],hostVars:16,hostBindings:function(i,n){i&2&&(Ra("id",n.id),aA("tabindex",null)("aria-label",null)("aria-labelledby",null),Ao(n.color?"mat-"+n.color:"mat-accent"),_e("_mat-animation-noopable",n._animationsDisabled)("mdc-checkbox--disabled",n.disabled)("mat-mdc-checkbox-disabled",n.disabled)("mat-mdc-checkbox-checked",n.checked)("mat-mdc-checkbox-disabled-interactive",n.disabledInteractive))},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],ariaExpanded:[2,"aria-expanded","ariaExpanded",mA],ariaControls:[0,"aria-controls","ariaControls"],ariaOwns:[0,"aria-owns","ariaOwns"],id:"id",required:[2,"required","required",mA],labelPosition:"labelPosition",name:"name",value:"value",disableRipple:[2,"disableRipple","disableRipple",mA],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?void 0:Dn(e)],color:"color",disabledInteractive:[2,"disabledInteractive","disabledInteractive",mA],checked:[2,"checked","checked",mA],disabled:[2,"disabled","disabled",mA],indeterminate:[2,"indeterminate","indeterminate",mA]},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[yt([{provide:us,useExisting:er(()=>t),multi:!0},{provide:n0,useExisting:t,multi:!0}]),ai],ngContentSelectors:_he,decls:15,vars:23,consts:[["checkbox",""],["input",""],["label",""],["mat-internal-form-field","",3,"click","labelPosition"],[1,"mdc-checkbox"],["aria-hidden","true",1,"mat-mdc-checkbox-touch-target",3,"click"],["type","checkbox",1,"mdc-checkbox__native-control",3,"blur","click","change","checked","indeterminate","disabled","id","required","tabIndex"],["aria-hidden","true",1,"mdc-checkbox__ripple"],["aria-hidden","true",1,"mdc-checkbox__background"],["focusable","false","viewBox","0 0 24 24",1,"mdc-checkbox__checkmark"],["fill","none","d","M1.73,12.91 8.1,19.28 22.79,4.59",1,"mdc-checkbox__checkmark-path"],[1,"mdc-checkbox__mixedmark"],["mat-ripple","","aria-hidden","true",1,"mat-mdc-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-label",3,"for"]],template:function(i,n){if(i&1&&(Yt(),I(0,"div",3),U("click",function(a){return n._preventBubblingFromLabel(a)}),I(1,"div",4,0)(3,"div",5),U("click",function(){return n._onTouchTargetClick()}),h(),I(4,"input",6,1),U("blur",function(){return n._onBlur()})("click",function(){return n._onInputClick()})("change",function(a){return n._onInteractionEvent(a)}),h(),le(6,"div",7),I(7,"div",8),mt(),I(8,"svg",9),le(9,"path",10),h(),fr(),le(10,"div",11),h(),le(11,"div",12),h(),I(12,"label",13,2),tt(14),h()()),i&2){let o=Ei(2);H("labelPosition",n.labelPosition),Q(4),_e("mdc-checkbox--selected",n.checked),H("checked",n.checked)("indeterminate",n.indeterminate)("disabled",n.disabled&&!n.disabledInteractive)("id",n.inputId)("required",n.required)("tabIndex",n.disabled&&!n.disabledInteractive?-1:n.tabIndex),aA("aria-label",n.ariaLabel||null)("aria-labelledby",n.ariaLabelledby)("aria-describedby",n.ariaDescribedby)("aria-checked",n.indeterminate?"mixed":null)("aria-controls",n.ariaControls)("aria-disabled",n.disabled&&n.disabledInteractive?!0:null)("aria-expanded",n.ariaExpanded)("aria-owns",n.ariaOwns)("name",n.name)("value",n.value),Q(7),H("matRippleTrigger",o)("matRippleDisabled",n.disableRipple||n.disabled)("matRippleCentered",!0),Q(),H("for",n.inputId)}},dependencies:[Es,P8],styles:[`.mdc-checkbox{display:inline-block;position:relative;flex:0 0 18px;box-sizing:content-box;width:18px;height:18px;line-height:0;white-space:nowrap;cursor:pointer;vertical-align:bottom;padding:calc((var(--mat-checkbox-state-layer-size, 40px) - 18px)/2);margin:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox:hover>.mdc-checkbox__ripple{opacity:var(--mat-checkbox-unselected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity));background-color:var(--mat-checkbox-unselected-hover-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox:hover>.mat-mdc-checkbox-ripple>.mat-ripple-element{background-color:var(--mat-checkbox-unselected-hover-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-unselected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity));background-color:var(--mat-checkbox-unselected-focus-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox .mdc-checkbox__native-control:focus~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-unselected-focus-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox:active>.mdc-checkbox__native-control+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-unselected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));background-color:var(--mat-checkbox-unselected-pressed-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:active>.mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-unselected-pressed-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:hover>.mdc-checkbox__native-control:checked+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity));background-color:var(--mat-checkbox-selected-hover-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:hover>.mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-selected-hover-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity));background-color:var(--mat-checkbox-selected-focus-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox .mdc-checkbox__native-control:focus:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-selected-focus-state-layer-color, var(--mat-sys-primary))}.mdc-checkbox:active>.mdc-checkbox__native-control:checked+.mdc-checkbox__ripple{opacity:var(--mat-checkbox-selected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));background-color:var(--mat-checkbox-selected-pressed-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox:active>.mdc-checkbox__native-control:checked~.mat-mdc-checkbox-ripple .mat-ripple-element{background-color:var(--mat-checkbox-selected-pressed-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control~.mat-mdc-checkbox-ripple .mat-ripple-element,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control+.mdc-checkbox__ripple{background-color:var(--mat-checkbox-unselected-hover-state-layer-color, var(--mat-sys-on-surface))}.mdc-checkbox .mdc-checkbox__native-control{position:absolute;margin:0;padding:0;opacity:0;cursor:inherit;z-index:1;width:var(--mat-checkbox-state-layer-size, 40px);height:var(--mat-checkbox-state-layer-size, 40px);top:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2);right:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2);left:calc((var(--mat-checkbox-state-layer-size, 40px) - var(--mat-checkbox-state-layer-size, 40px))/2)}.mdc-checkbox--disabled{cursor:default;pointer-events:none}.mdc-checkbox__background{display:inline-flex;position:absolute;align-items:center;justify-content:center;box-sizing:border-box;width:18px;height:18px;border:2px solid currentColor;border-radius:2px;background-color:rgba(0,0,0,0);pointer-events:none;will-change:background-color,border-color;transition:background-color 90ms cubic-bezier(0.4, 0, 0.6, 1),border-color 90ms cubic-bezier(0.4, 0, 0.6, 1);-webkit-print-color-adjust:exact;color-adjust:exact;border-color:var(--mat-checkbox-unselected-icon-color, var(--mat-sys-on-surface-variant));top:calc((var(--mat-checkbox-state-layer-size, 40px) - 18px)/2);left:calc((var(--mat-checkbox-state-layer-size, 40px) - 18px)/2)}.mdc-checkbox__native-control:enabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:enabled:indeterminate~.mdc-checkbox__background{border-color:var(--mat-checkbox-selected-icon-color, var(--mat-sys-primary));background-color:var(--mat-checkbox-selected-icon-color, var(--mat-sys-primary))}.mdc-checkbox--disabled .mdc-checkbox__background{border-color:var(--mat-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mdc-checkbox--disabled .mdc-checkbox__background{border-color:GrayText}}.mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background{background-color:var(--mat-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));border-color:rgba(0,0,0,0)}@media(forced-colors: active){.mdc-checkbox__native-control:disabled:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:disabled:indeterminate~.mdc-checkbox__background{border-color:GrayText}}.mdc-checkbox:hover>.mdc-checkbox__native-control:not(:checked)~.mdc-checkbox__background,.mdc-checkbox:hover>.mdc-checkbox__native-control:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mat-checkbox-unselected-hover-icon-color, var(--mat-sys-on-surface));background-color:rgba(0,0,0,0)}.mdc-checkbox:hover>.mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox:hover>.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{border-color:var(--mat-checkbox-selected-hover-icon-color, var(--mat-sys-primary));background-color:var(--mat-checkbox-selected-hover-icon-color, var(--mat-sys-primary))}.mdc-checkbox__native-control:focus:focus:not(:checked)~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:not(:indeterminate)~.mdc-checkbox__background{border-color:var(--mat-checkbox-unselected-focus-icon-color, var(--mat-sys-on-surface))}.mdc-checkbox__native-control:focus:focus:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:focus:focus:indeterminate~.mdc-checkbox__background{border-color:var(--mat-checkbox-selected-focus-icon-color, var(--mat-sys-primary));background-color:var(--mat-checkbox-selected-focus-icon-color, var(--mat-sys-primary))}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox:hover>.mdc-checkbox__native-control~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__background{border-color:var(--mat-checkbox-disabled-unselected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox:hover>.mdc-checkbox__native-control~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox .mdc-checkbox__native-control:focus~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__background{border-color:GrayText}}.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{background-color:var(--mat-checkbox-disabled-selected-icon-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent));border-color:rgba(0,0,0,0)}.mdc-checkbox__checkmark{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;opacity:0;transition:opacity 180ms cubic-bezier(0.4, 0, 0.6, 1);color:var(--mat-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}@media(forced-colors: active){.mdc-checkbox__checkmark{color:CanvasText}}.mdc-checkbox--disabled .mdc-checkbox__checkmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:var(--mat-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}@media(forced-colors: active){.mdc-checkbox--disabled .mdc-checkbox__checkmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__checkmark{color:GrayText}}.mdc-checkbox__checkmark-path{transition:stroke-dashoffset 180ms cubic-bezier(0.4, 0, 0.6, 1);stroke:currentColor;stroke-width:3.12px;stroke-dashoffset:29.7833385;stroke-dasharray:29.7833385}.mdc-checkbox__mixedmark{width:100%;height:0;transform:scaleX(0) rotate(0deg);border-width:1px;border-style:solid;opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1);border-color:var(--mat-checkbox-selected-checkmark-color, var(--mat-sys-on-primary))}@media(forced-colors: active){.mdc-checkbox__mixedmark{margin:0 1px}}.mdc-checkbox--disabled .mdc-checkbox__mixedmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__mixedmark{border-color:var(--mat-checkbox-disabled-selected-checkmark-color, var(--mat-sys-surface))}@media(forced-colors: active){.mdc-checkbox--disabled .mdc-checkbox__mixedmark,.mdc-checkbox--disabled.mat-mdc-checkbox-disabled-interactive .mdc-checkbox__mixedmark{border-color:GrayText}}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__background,.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__background,.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__background,.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__background{animation-duration:180ms;animation-timing-function:linear}.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-unchecked-checked-checkmark-path 180ms linear;transition:none}.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-unchecked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__checkmark-path{animation:mdc-checkbox-checked-unchecked-checkmark-path 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__checkmark{animation:mdc-checkbox-checked-indeterminate-checkmark 90ms linear;transition:none}.mdc-checkbox--anim-checked-indeterminate .mdc-checkbox__mixedmark{animation:mdc-checkbox-checked-indeterminate-mixedmark 90ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__checkmark{animation:mdc-checkbox-indeterminate-checked-checkmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-checked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-checked-mixedmark 500ms linear;transition:none}.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__mixedmark{animation:mdc-checkbox-indeterminate-unchecked-mixedmark 300ms linear;transition:none}.mdc-checkbox__native-control:checked~.mdc-checkbox__background,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background{transition:border-color 90ms cubic-bezier(0, 0, 0.2, 1),background-color 90ms cubic-bezier(0, 0, 0.2, 1)}.mdc-checkbox__native-control:checked~.mdc-checkbox__background>.mdc-checkbox__checkmark>.mdc-checkbox__checkmark-path,.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background>.mdc-checkbox__checkmark>.mdc-checkbox__checkmark-path{stroke-dashoffset:0}.mdc-checkbox__native-control:checked~.mdc-checkbox__background>.mdc-checkbox__checkmark{transition:opacity 180ms cubic-bezier(0, 0, 0.2, 1),transform 180ms cubic-bezier(0, 0, 0.2, 1);opacity:1}.mdc-checkbox__native-control:checked~.mdc-checkbox__background>.mdc-checkbox__mixedmark{transform:scaleX(1) rotate(-45deg)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background>.mdc-checkbox__checkmark{transform:rotate(45deg);opacity:0;transition:opacity 90ms cubic-bezier(0.4, 0, 0.6, 1),transform 90ms cubic-bezier(0.4, 0, 0.6, 1)}.mdc-checkbox__native-control:indeterminate~.mdc-checkbox__background>.mdc-checkbox__mixedmark{transform:scaleX(1) rotate(0deg);opacity:1}@keyframes mdc-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:29.7833385}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 1)}100%{stroke-dashoffset:0}}@keyframes mdc-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mdc-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);opacity:1;stroke-dashoffset:0}to{opacity:0;stroke-dashoffset:-29.7833385}}@keyframes mdc-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(45deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(45deg);opacity:0}to{transform:rotate(360deg);opacity:1}}@keyframes mdc-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 1);transform:rotate(-45deg);opacity:0}to{transform:rotate(0deg);opacity:1}}@keyframes mdc-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);transform:rotate(0deg);opacity:1}to{transform:rotate(315deg);opacity:0}}@keyframes mdc-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;transform:scaleX(1);opacity:1}32.8%,100%{transform:scaleX(0);opacity:0}}.mat-mdc-checkbox{display:inline-block;position:relative;-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mat-mdc-checkbox-touch-target,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__native-control,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__ripple,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mat-mdc-checkbox-ripple::before,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background>.mdc-checkbox__checkmark,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background>.mdc-checkbox__checkmark>.mdc-checkbox__checkmark-path,.mat-mdc-checkbox._mat-animation-noopable>.mat-internal-form-field>.mdc-checkbox>.mdc-checkbox__background>.mdc-checkbox__mixedmark{transition:none !important;animation:none !important}.mat-mdc-checkbox label{cursor:pointer}.mat-mdc-checkbox .mat-internal-form-field{color:var(--mat-checkbox-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-checkbox-label-text-font, var(--mat-sys-body-medium-font));line-height:var(--mat-checkbox-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-checkbox-label-text-size, var(--mat-sys-body-medium-size));letter-spacing:var(--mat-checkbox-label-text-tracking, var(--mat-sys-body-medium-tracking));font-weight:var(--mat-checkbox-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive{pointer-events:auto}.mat-mdc-checkbox.mat-mdc-checkbox-disabled.mat-mdc-checkbox-disabled-interactive input{cursor:default}.mat-mdc-checkbox.mat-mdc-checkbox-disabled label{cursor:default;color:var(--mat-checkbox-disabled-label-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}@media(forced-colors: active){.mat-mdc-checkbox.mat-mdc-checkbox-disabled label{color:GrayText}}.mat-mdc-checkbox label:empty{display:none}.mat-mdc-checkbox .mdc-checkbox__ripple{opacity:0}.mat-mdc-checkbox .mat-mdc-checkbox-ripple,.mdc-checkbox__ripple{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-checkbox .mat-mdc-checkbox-ripple:not(:empty),.mdc-checkbox__ripple:not(:empty){transform:translateZ(0)}.mat-mdc-checkbox-ripple .mat-ripple-element{opacity:.1}.mat-mdc-checkbox-touch-target{position:absolute;top:50%;left:50%;height:var(--mat-checkbox-touch-target-size, 48px);width:var(--mat-checkbox-touch-target-size, 48px);transform:translate(-50%, -50%);display:var(--mat-checkbox-touch-target-display, block)}.mat-mdc-checkbox .mat-mdc-checkbox-ripple::before{border-radius:50%}.mdc-checkbox__native-control:focus-visible~.mat-focus-indicator::before{content:""} +`],encapsulation:2,changeDetection:0})}return t})(),dq=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[Eg,bi]})}return t})();var Iq=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({})}return t})();var Bq=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[Iq,d0,bi]})}return t})();var Nhe={google_search:"search",EnterpriseWebSearchTool:"web",VertexAiSearchTool:"search",FilesRetrieval:"find_in_page",load_memory:"memory",preload_memory:"memory",url_context:"link",VertexAiRagRetrieval:"find_in_page",exit_loop:"sync",get_user_choice:"how_to_reg",load_artifacts:"image",LongRunningFunctionTool:"data_object"};function fh(t,A){return A==="Agent Tool"?"smart_toy":A==="Built-in tool"?Nhe[t]||"build":A==="Function tool"?"data_object":"build"}var Qg=class t{static toolMenuTooltips=new Map([["Function tool","Build custom tools for your specific ADK agent needs."],["Built-in tool","Ready-to-use functionality such as Google Search or code executors that provide agents with common capabilities. "],["Agent tool","A sub-agent that can be invoked as a tool by another agent."]]);static toolDetailedInfo=new Map([["Function tool",{shortDescription:"Build custom tools for your specific ADK agent needs.",detailedDescription:"The ADK framework automatically inspects your Python function's signature\u2014including its name, docstring, parameters, type hints, and default values\u2014to generate a schema. This schema is what the LLM uses to understand the tool's purpose, when to use it, and what arguments it requires.",docLink:"https://google.github.io/adk-docs/tools/function-tools/"}],["Agent tool",{shortDescription:"Wraps a sub-agent as a callable tool, enabling modular and hierarchical agent architectures.",detailedDescription:"Agent tools allow you to use one agent as a tool within another agent, creating powerful multi-agent workflows.",docLink:"https://google.github.io/adk-docs/agents/multi-agents/#c-explicit-invocation-agenttool"}]]);static callbackMenuTooltips=new Map([["before_agent","Called immediately before the agent's _run_async_impl (or _run_live_impl) method is executed."],["after_agent","Called immediately after the agent's _run_async_impl (or _run_live_impl) method successfully completes."],["before_model","Called just before the generate_content_async (or equivalent) request is sent to the LLM within an LlmAgent's flow."],["after_model","Called just after a response (LlmResponse) is received from the LLM, before it's processed further by the invoking agent."],["before_tool","Called just before a specific tool's run_async method is invoked, after the LLM has generated a function call for it."],["after_tool","Called just after the tool's run_async method completes successfully."]]);static callbackDialogTooltips=new Map([["before_agent","Called immediately before the agent's _run_async_impl (or _run_live_impl) method is executed."],["after_agent","Called immediately after the agent's _run_async_impl (or _run_live_impl) method successfully completes."],["before_model","Called just before the generate_content_async (or equivalent) request is sent to the LLM within an LlmAgent's flow."],["after_model","Called just after a response (LlmResponse) is received from the LLM, before it's processed further by the invoking agent."],["before_tool","Called just before a specific tool's run_async method is invoked, after the LLM has generated a function call for it."],["after_tool","Called just after the tool's run_async method completes successfully."]]);static callbackDetailedInfo=new Map([["before_agent",{shortDescription:"Called immediately before the agent's _run_async_impl (or _run_live_impl) method is executed. It runs after the agent's InvocationContext is created but before its core logic begins.",detailedDescription:" Ideal for setting up resources or state needed only for this specific agent's run, performing validation checks on the session state (callback_context.state) before execution starts, logging the entry point of the agent's activity, or potentially modifying the invocation context before the core logic uses it.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#before-agent-callback"}],["after_agent",{shortDescription:"Called immediately after the agent's _run_async_impl (or _run_live_impl) method successfully completes.",detailedDescription:"Useful for cleanup tasks, post-execution validation, logging the completion of an agent's activity, modifying final state, or augmenting/replacing the agent's final output.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#after-agent-callback"}],["before_model",{shortDescription:"Called just before the generate_content_async (or equivalent) request is sent to the LLM within an LlmAgent's flow.",detailedDescription:"Allows inspection and modification of the request going to the LLM. Use cases include adding dynamic instructions, injecting few-shot examples based on state, modifying model config, implementing guardrails (like profanity filters), or implementing request-level caching.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#before-model-callback"}],["after_model",{shortDescription:"Called just after a response (LlmResponse) is received from the LLM, before it's processed further by the invoking agent.",detailedDescription:"Allows inspection or modification of the raw LLM response.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#after-model-callback"}],["before_tool",{shortDescription:"Called just before a specific tool's run_async method is invoked, after the LLM has generated a function call for it.",detailedDescription:"Allows inspection and modification of tool arguments, performing authorization checks before execution, logging tool usage attempts, or implementing tool-level caching.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#before-tool-callback"}],["after_tool",{shortDescription:"Called just after the tool's run_async method completes successfully.",detailedDescription:"Allows inspection and modification of the tool's result before it's sent back to the LLM (potentially after summarization). Useful for logging tool results, post-processing or formatting results, or saving specific parts of the result to the session state.",docLink:"https://google.github.io/adk-docs/callbacks/types-of-callbacks/#after-tool-callback"}]]);static getToolMenuTooltips(A){return t.toolMenuTooltips.get(A)}static getToolDetailedInfo(A){return t.toolDetailedInfo.get(A)}static getCallbackMenuTooltips(A){return t.callbackMenuTooltips.get(A)}static getCallbackDialogTooltips(A){return t.callbackDialogTooltips.get(A)}static getCallbackDetailedInfo(A){return t.callbackDetailedInfo.get(A)}};var Fhe=["callbackNameInput"];function Lhe(t,A){if(t&1){let e=ae();Ul(0),I(1,"div",8)(2,"div",9),U("click",function(){L(e);let n=p();return G(n.toggleCallbackInfo())}),I(3,"mat-icon",10),v(4,"info"),h(),I(5,"div",11)(6,"span"),v(7,"Callback Information"),h()(),I(8,"button",12)(9,"mat-icon"),v(10),h()()(),I(11,"div",13)(12,"div",14)(13,"div",15),v(14),h(),I(15,"div",16),v(16),h()(),I(17,"div",17)(18,"a",18)(19,"mat-icon"),v(20,"open_in_new"),h(),I(21,"span"),v(22,"View Official Documentation"),h()()()()(),Tl()}if(t&2){let e,i,n,o=p();Q(10),ne(o.isCallbackInfoExpanded?"expand_less":"expand_more"),Q(),_e("expanded",o.isCallbackInfoExpanded),Q(3),ne((e=o.getCallbackInfo())==null?null:e.shortDescription),Q(2),ne((i=o.getCallbackInfo())==null?null:i.detailedDescription),Q(2),H("href",(n=o.getCallbackInfo())==null?null:n.docLink,wo)}}function Ghe(t,A){if(t&1&&(I(0,"mat-option",21),v(1),h()),t&2){let e=A.$implicit;H("value",e),Q(),ne(e)}}function Khe(t,A){if(t&1){let e=ae();Ul(0),I(1,"mat-form-field",3)(2,"mat-label"),v(3,"Callback Type"),h(),I(4,"mat-select",19),Fi("ngModelChange",function(n){L(e);let o=p();return vi(o.callbackType,n)||(o.callbackType=n),G(n)}),Nt(5,Ghe,2,2,"mat-option",20),h()(),Tl()}if(t&2){let e=p();Q(4),Ni("ngModel",e.callbackType),Q(),H("ngForOf",e.availableCallbackTypes)}}function Uhe(t,A){t&1&&(I(0,"mat-error"),v(1,"Same callback name has been used"),h())}function The(t,A){t&1&&(I(0,"mat-error"),v(1,"Cannot have callback consist of two words"),h())}function Ohe(t,A){t&1&&(I(0,"mat-error"),v(1,"Callback function names cannot have spaces"),h())}var Ck=class{isErrorState(A){return!!(A&&A.invalid)}},Fp=class t{constructor(A,e){this.dialogRef=A;this.data=e;this.callbackType=e?.callbackType??"",this.existingCallbackNames=e?.existingCallbackNames??[],this.isEditMode=!!e?.isEditMode,this.availableCallbackTypes=e?.availableCallbackTypes??[],this.isEditMode&&e?.callback&&(this.callbackName=e.callback.name,this.callbackType=e.callback.type,this.originalCallbackName=e.callback.name,this.existingCallbackNames=this.existingCallbackNames.filter(i=>i!==this.originalCallbackName))}callbackNameInput;callbackName="";callbackType="";existingCallbackNames=[];matcher=new Ck;isEditMode=!1;availableCallbackTypes=[];originalCallbackName="";isCallbackInfoExpanded=!1;addCallback(){if(!this.callbackName.trim()||this.hasSpaces()||this.isDuplicateName())return;let A={name:this.callbackName.trim(),type:this.callbackType,isEditMode:this.isEditMode,originalName:this.originalCallbackName||this.callbackName.trim()};this.dialogRef.close(A)}cancel(){this.dialogRef.close()}isDuplicateName(){if(!Array.isArray(this.existingCallbackNames))return!1;let A=(this.callbackName||"").trim();return this.existingCallbackNames.includes(A)}hasSpaces(){return/\s/.test(this.callbackName||"")}createDisabled(){return!this.callbackName.trim()||this.isDuplicateName()||this.hasSpaces()}validate(){this.hasSpaces()?this.callbackNameInput.control.setErrors({hasSpaces:!0}):this.isDuplicateName()?this.callbackNameInput.control.setErrors({duplicateName:!0}):this.callbackNameInput.control.setErrors(null)}getCallbackInfo(){return Qg.getCallbackDetailedInfo(this.callbackType)}toggleCallbackInfo(){this.isCallbackInfoExpanded=!this.isCallbackInfoExpanded}static \u0275fac=function(e){return new(e||t)(dt(Pn),dt(Do))};static \u0275cmp=De({type:t,selectors:[["app-add-callback-dialog"]],viewQuery:function(e,i){if(e&1&&$t(Fhe,5),e&2){let n;cA(n=gA())&&(i.callbackNameInput=n.first)}},decls:18,vars:10,consts:[["callbackNameInput","ngModel"],["mat-dialog-title",""],[4,"ngIf"],[2,"width","100%"],["matInput","",3,"ngModelChange","keydown.enter","ngModel","errorStateMatcher"],["align","end"],["mat-button","",3,"click"],["mat-raised-button","","color","secondary",3,"click","disabled"],[1,"callback-info-container"],[1,"callback-info-header",3,"click"],[1,"callback-info-icon"],[1,"callback-info-title"],["mat-icon-button","","type","button","aria-label","Toggle callback information",1,"callback-info-toggle"],[1,"callback-info-body"],[1,"callback-info-content"],[1,"callback-info-short"],[1,"callback-info-detailed"],[1,"callback-info-link-container"],["target","_blank","rel","noopener noreferrer",1,"callback-info-link",3,"href"],[3,"ngModelChange","ngModel"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(e,i){if(e&1){let n=ae();I(0,"h2",1),v(1),h(),I(2,"mat-dialog-content"),Nt(3,Lhe,23,6,"ng-container",2)(4,Khe,6,2,"ng-container",2),I(5,"mat-form-field",3)(6,"mat-label"),v(7,"Callback Name"),h(),I(8,"input",4,0),Fi("ngModelChange",function(a){return L(n),vi(i.callbackName,a)||(i.callbackName=a),G(a)}),U("ngModelChange",function(){return i.validate()})("keydown.enter",function(){return i.addCallback()}),h(),Nt(10,Uhe,2,0,"mat-error",2)(11,The,2,0,"mat-error",2)(12,Ohe,2,0,"mat-error",2),h()(),I(13,"mat-dialog-actions",5)(14,"button",6),U("click",function(){return i.cancel()}),v(15,"Cancel"),h(),I(16,"button",7),U("click",function(){return i.addCallback()}),v(17),h()()}if(e&2){let n=Ei(9);Q(),ne(i.isEditMode?"Edit Callback":"Add "+i.callbackType+" Callback"),Q(2),H("ngIf",i.getCallbackInfo()),Q(),H("ngIf",i.isEditMode),Q(4),Ni("ngModel",i.callbackName),H("errorStateMatcher",i.matcher),Q(2),H("ngIf",n.hasError("duplicateName")),Q(),H("ngIf",n.hasError("hasSpaces")),Q(),H("ngIf",n.hasError("hasSpaces")),Q(4),H("disabled",i.createDisabled()),Q(),pA(" ",i.isEditMode?"Save":"Add"," ")}},dependencies:[Ci,sB,cc,wn,Kn,Un,Po,Js,ea,ma,pa,Wi,xi,Di,ir,$o,Ks,TM,al,Fa,hC,Ec,es,Tn,Vt],styles:[".callback-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;min-width:400px;max-width:600px}.full-width[_ngcontent-%COMP%]{width:100%}mat-dialog-content[_ngcontent-%COMP%]{padding:20px 24px;display:flex;flex-direction:column;gap:16px}mat-dialog-actions[_ngcontent-%COMP%]{padding:16px 24px;margin:0}mat-form-field[_ngcontent-%COMP%]{margin-top:8px!important}.callback-info-container[_ngcontent-%COMP%]{border:1px solid rgba(138,180,248,.2);border-radius:8px;padding:16px;margin-bottom:16px}.callback-info-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.callback-info-header[_ngcontent-%COMP%]:hover .callback-info-title[_ngcontent-%COMP%]{color:#a7c8ff}.callback-info-icon[_ngcontent-%COMP%]{color:#8ab4f8;font-size:20px;width:20px;height:20px;flex-shrink:0}.callback-info-title[_ngcontent-%COMP%]{flex:1;font-weight:500;color:#8ab4f8;font-size:14px;transition:color .2s ease}.callback-info-toggle[_ngcontent-%COMP%]{color:#8ab4f8;margin:-8px}.callback-info-toggle[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{transition:transform .2s ease}.callback-info-body[_ngcontent-%COMP%]{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .2s ease,margin-top .3s ease}.callback-info-body.expanded[_ngcontent-%COMP%]{max-height:500px;opacity:1;margin-top:12px}.callback-info-content[_ngcontent-%COMP%]{flex:1}.callback-info-short[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-dialog-content-text-color);margin-bottom:8px;line-height:1.4}.callback-info-detailed[_ngcontent-%COMP%]{color:var(--mat-dialog-content-text-color);font-size:14px;line-height:1.5;opacity:.8}.callback-info-link-container[_ngcontent-%COMP%]{margin-top:12px}.callback-info-link[_ngcontent-%COMP%]{color:#8ab4f8;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease}.callback-info-link[_ngcontent-%COMP%]:hover{color:#a7c8ff}.callback-info-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}"]})};function Jhe(t,A){if(t&1){let e=ae();Ul(0),I(1,"div",6)(2,"div",7),U("click",function(){L(e);let n=p();return G(n.toggleToolInfo())}),I(3,"mat-icon",8),v(4,"info"),h(),I(5,"div",9)(6,"span"),v(7,"Tool Information"),h()(),I(8,"button",10)(9,"mat-icon"),v(10),h()()(),I(11,"div",11)(12,"div",12)(13,"div",13),v(14),h(),I(15,"div",14),v(16),h()(),I(17,"div",15)(18,"a",16)(19,"mat-icon"),v(20,"open_in_new"),h(),I(21,"span"),v(22,"View Official Documentation"),h()()()()(),Tl()}if(t&2){let e,i,n,o=p();Q(10),ne(o.isToolInfoExpanded?"expand_less":"expand_more"),Q(),_e("expanded",o.isToolInfoExpanded),Q(3),ne((e=o.getToolInfo())==null?null:e.shortDescription),Q(2),ne((i=o.getToolInfo())==null?null:i.detailedDescription),Q(2),H("href",(n=o.getToolInfo())==null?null:n.docLink,wo)}}function zhe(t,A){if(t&1){let e=ae();I(0,"mat-form-field",2)(1,"input",17),Fi("ngModelChange",function(n){L(e);let o=p();return vi(o.toolName,n)||(o.toolName=n),G(n)}),U("keydown.enter",function(){L(e);let n=p();return G(n.addTool())}),h()()}if(t&2){let e=p();Q(),Ni("ngModel",e.toolName)}}function Yhe(t,A){if(t&1&&(I(0,"mat-option",20),v(1),h()),t&2){let e=A.$implicit;H("value",e),Q(),pA(" ",e," ")}}function Hhe(t,A){if(t&1){let e=ae();I(0,"mat-form-field",2)(1,"mat-select",18),Fi("ngModelChange",function(n){L(e);let o=p();return vi(o.selectedBuiltInTool,n)||(o.selectedBuiltInTool=n),G(n)}),Nt(2,Yhe,2,2,"mat-option",19),h()()}if(t&2){let e=p();Q(),Ni("ngModel",e.selectedBuiltInTool),Q(),H("ngForOf",e.builtInTools)}}var Td=class t{constructor(A,e){this.data=A;this.dialogRef=e}toolName="";toolType="Function tool";selectedBuiltInTool="google_search";builtInTools=["EnterpriseWebSearchTool","exit_loop","FilesRetrieval","get_user_choice","google_search","load_artifacts","load_memory","LongRunningFunctionTool","preload_memory","url_context","VertexAiRagRetrieval","VertexAiSearchTool"];isEditMode=!1;isToolInfoExpanded=!1;ngOnInit(){this.toolType=this.data.toolType,this.isEditMode=this.data.isEditMode||!1,this.isEditMode&&this.data.toolName&&(this.toolType==="Function tool"?this.toolName=this.data.toolName:this.toolType==="Built-in tool"&&(this.selectedBuiltInTool=this.data.toolName))}addTool(){if(this.toolType==="Function tool"&&!this.toolName.trim())return;let A={toolType:this.toolType,isEditMode:this.isEditMode};this.toolType==="Function tool"?A.name=this.toolName.trim():this.toolType==="Built-in tool"&&(A.name=this.selectedBuiltInTool),this.dialogRef.close(A)}cancel(){this.dialogRef.close()}createDisabled(){return this.toolType==="Function tool"&&!this.toolName.trim()}getToolInfo(){return Qg.getToolDetailedInfo(this.toolType)}toggleToolInfo(){this.isToolInfoExpanded=!this.isToolInfoExpanded}static \u0275fac=function(e){return new(e||t)(dt(Do),dt(Pn))};static \u0275cmp=De({type:t,selectors:[["app-add-tool-dialog"]],decls:11,vars:6,consts:[["mat-dialog-title","",1,"dialog-title"],[4,"ngIf"],[2,"width","100%"],["align","end"],["mat-button","",3,"click"],["mat-button","","cdkFocusInitial","",3,"click","disabled"],[1,"tool-info-container"],[1,"tool-info-header",3,"click"],[1,"tool-info-icon"],[1,"tool-info-title"],["mat-icon-button","","type","button","aria-label","Toggle tool information",1,"tool-info-toggle"],[1,"tool-info-body"],[1,"tool-info-content"],[1,"tool-info-short"],[1,"tool-info-detailed"],[1,"tool-info-link-container"],["target","_blank","rel","noopener noreferrer",1,"tool-info-link",3,"href"],["matInput","","placeholder","Enter full function name",3,"ngModelChange","keydown.enter","ngModel"],["placeholder","Select built-in tool",3,"ngModelChange","ngModel"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(e,i){e&1&&(I(0,"h2",0),v(1),h(),I(2,"mat-dialog-content"),Nt(3,Jhe,23,6,"ng-container",1),T(4,zhe,2,1,"mat-form-field",2),T(5,Hhe,3,2,"mat-form-field",2),h(),I(6,"mat-dialog-actions",3)(7,"button",4),U("click",function(){return i.cancel()}),v(8,"Cancel"),h(),I(9,"button",5),U("click",function(){return i.addTool()}),v(10),h()()),e&2&&(Q(),ne(i.isEditMode?"Editing Tool":"Add New Tool"),Q(2),H("ngIf",i.getToolInfo()),Q(),O(i.toolType==="Function tool"?4:-1),Q(),O(i.toolType==="Built-in tool"?5:-1),Q(4),H("disabled",i.createDisabled()),Q(),pA(" ",i.isEditMode?"Save":"Create"," "))},dependencies:[Ci,sB,cc,wn,Kn,Un,Po,ea,pa,$o,Fa,Ec,es,ma,xi,Di,Vt],styles:[".dialog-title[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;font-family:Google Sans;font-size:24px}mat-dialog-content[_ngcontent-%COMP%]{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.tool-info-container[_ngcontent-%COMP%]{border:1px solid rgba(138,180,248,.2);border-radius:8px;padding:16px;margin-bottom:16px}.tool-info-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.tool-info-header[_ngcontent-%COMP%]:hover .tool-info-title[_ngcontent-%COMP%]{color:#a7c8ff}.tool-info-icon[_ngcontent-%COMP%]{color:#8ab4f8;font-size:20px;width:20px;height:20px;flex-shrink:0}.tool-info-title[_ngcontent-%COMP%]{flex:1;font-weight:500;color:#8ab4f8;font-size:14px;transition:color .2s ease}.tool-info-toggle[_ngcontent-%COMP%]{color:#8ab4f8;margin:-8px}.tool-info-toggle[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{transition:transform .2s ease}.tool-info-body[_ngcontent-%COMP%]{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .2s ease,margin-top .3s ease}.tool-info-body.expanded[_ngcontent-%COMP%]{max-height:500px;opacity:1;margin-top:12px}.tool-info-content[_ngcontent-%COMP%]{flex:1}.tool-info-short[_ngcontent-%COMP%]{font-weight:500;color:#e3e3e3;margin-bottom:8px;line-height:1.4}.tool-info-detailed[_ngcontent-%COMP%]{color:#c4c7ca;font-size:14px;line-height:1.5}.tool-info-link-container[_ngcontent-%COMP%]{margin-top:12px}.tool-info-link[_ngcontent-%COMP%]{color:#8ab4f8;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease}.tool-info-link[_ngcontent-%COMP%]:hover{color:#a7c8ff}.tool-info-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}"]})};function Ca(t){return Array.isArray(t)}function fa(t){return t!==null&&typeof t=="object"&&(t.constructor===void 0||t.constructor.name==="Object")}function dk(t){return t&&typeof t=="object"?t.op==="add":!1}function Ik(t){return t&&typeof t=="object"?t.op==="remove":!1}function q8(t){return t&&typeof t=="object"?t.op==="replace":!1}function Z8(t){return t&&typeof t=="object"?t.op==="copy":!1}function Od(t){return t&&typeof t=="object"?t.op==="move":!1}function hq(t,A){return JSON.stringify(t)===JSON.stringify(A)}function Phe(t,A){return t===A}function Bk(t){return t.slice(0,t.length-1)}function uq(t){return t[t.length-1]}function Eq(t,A){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Phe;if(t.length{A[e]=t[e]}),A}if(fa(t)){let A=Y({},t);return Object.getOwnPropertySymbols(t).forEach(e=>{A[e]=t[e]}),A}return t}function Ek(t,A,e){if(t[A]===e)return t;let i=uk(t);return i[A]=e,i}function nt(t,A){let e=t,i=0;for(;i3&&arguments[3]!==void 0?arguments[3]:!1;if(A.length===0)return e;let n=A[0],o=As(t?t[n]:void 0,A.slice(1),e,i);if(fa(t)||Ca(t))return Ek(t,n,o);if(i){let a=jhe.test(n)?[]:{};return a[n]=o,a}throw new Error("Path does not exist")}var jhe=/^\d+$/;function Lp(t,A,e){if(A.length===0)return e(t);if(!hk(t))throw new Error("Path doesn't exist");let i=A[0],n=Lp(t[i],A.slice(1),e);return Ek(t,i,n)}function OI(t,A){if(A.length===0)return t;if(!hk(t))throw new Error("Path does not exist");if(A.length===1){let n=A[0];if(!(n in t))return t;let o=uk(t);return Ca(o)&&o.splice(Number.parseInt(n),1),fa(o)&&delete o[n],o}let e=A[0],i=OI(t[e],A.slice(1));return Ek(t,e,i)}function Gp(t,A,e){let i=A.slice(0,A.length-1),n=A[A.length-1];return Lp(t,i,o=>{if(!Array.isArray(o))throw new TypeError(`Array expected at path ${JSON.stringify(i)}`);let a=uk(o);return a.splice(Number.parseInt(n),0,e),a})}function Or(t,A){return t===void 0?!1:A.length===0?!0:t===null?!1:Or(t[A[0]],A.slice(1))}function Ms(t){let A=t.split("/");return A.shift(),A.map(e=>e.replace(/~1/g,"/").replace(/~0/g,"~"))}function Lt(t){return t.map(Qq).join("")}function Qq(t){return`/${String(t).replace(/~/g,"~0").replace(/\//g,"~1")}`}function Kp(t,A){return t+Qq(A)}function Bl(t,A,e){let i=t;for(let n=0;n{let r,s=hl(o,a.path);if(a.op==="add")r=fq(o,s);else if(a.op==="remove")r=mq(o,s);else if(a.op==="replace")r=pq(o,s);else if(a.op==="copy")r=tue(o,s);else if(a.op==="move")r=iue(o,s,Up(a.from));else if(a.op==="test")r=[];else throw new Error(`Unknown JSONPatch operation ${JSON.stringify(a)}`);let l;if(e?.before){let c=e.before(o,a,r);if(c?.revertOperations&&(r=c.revertOperations),c?.document&&(l=c.document),c?.json)throw new Error('Deprecation warning: returned object property ".json" has been renamed to ".document"')}if(i=r.concat(i),l!==void 0)return{document:l}}}),i}function pq(t,A){return Or(t,A)?[{op:"replace",path:Lt(A),value:nt(t,A)}]:[]}function mq(t,A){return[{op:"add",path:Lt(A),value:nt(t,A)}]}function fq(t,A){return wh(t,A)||!Or(t,A)?[{op:"remove",path:Lt(A)}]:pq(t,A)}function tue(t,A){return fq(t,A)}function iue(t,A,e){if(A.length="0"&&t<="9"}function Dq(t){return t>=" "}function Tp(t){return`,:[]/{}() ++`.includes(t)}function mk(t){return t>="a"&&t<="z"||t>="A"&&t<="Z"||t==="_"||t==="$"}function fk(t){return t>="a"&&t<="z"||t>="A"&&t<="Z"||t==="_"||t==="$"||t>="0"&&t<="9"}var wk=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,yk=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;function vk(t){return`,[]/{} ++`.includes(t)}function Dk(t){return Op(t)||Iue.test(t)}var Iue=/^[[{\w-]$/;function bq(t){return t===` +`||t==="\r"||t===" "||t==="\b"||t==="\f"}function Jd(t,A){let e=t.charCodeAt(A);return e===32||e===10||e===9||e===13}function Mq(t,A){let e=t.charCodeAt(A);return e===32||e===9||e===13}function Sq(t,A){let e=t.charCodeAt(A);return e===160||e===6158||e>=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function Op(t){return bk(t)||ew(t)}function bk(t){return t==='"'||t==="\u201C"||t==="\u201D"}function Mk(t){return t==='"'}function ew(t){return t==="'"||t==="\u2018"||t==="\u2019"||t==="`"||t==="\xB4"}function Sk(t){return t==="'"}function yh(t,A){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=t.lastIndexOf(A);return i!==-1?t.substring(0,i)+(e?"":t.substring(i+1)):t}function yc(t,A){let e=t.length;if(!Jd(t,e-1))return t+A;for(;Jd(t,e-1);)e--;return t.substring(0,e)+A+t.substring(e)}function kq(t,A,e){return t.substring(0,A)+t.substring(A+e)}function _q(t){return/[,\n][ \t\r]*$/.test(t)}var Bue={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},hue={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` +`,r:"\r",t:" "};function vc(t){let A=0,e="";l(["```","[```","{```"]),o()||we(),l(["```","```]","```}"]);let n=C(",");for(n&&a(),Dk(t[A])&&_q(e)?(n||(e=yc(e,",")),f()):n&&(e=yh(e,","));t[A]==="}"||t[A]==="]";)A++,a();if(A>=t.length)return e;Ce();function o(){a();let de=u()||m()||D()||k()||b()||F(!1)||P();return a(),de}function a(){let de=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,Ie=A,xe=r(de);do xe=s(),xe&&(xe=r(de));while(xe);return A>Ie}function r(de){let Ie=de?Jd:Mq,xe="";for(;;)if(Ie(t,A))xe+=t[A],A++;else if(Sq(t,A))xe+=" ",A++;else break;return xe.length>0?(e+=xe,!0):!1}function s(){if(t[A]==="/"&&t[A+1]==="*"){for(;A=t.length;Xe||(Dk(t[A])||fA?e=yc(e,":"):Ee()),o()||(Xe||fA?e+="null":Ee())}return t[A]==="}"?(e+="}",A++):e=yc(e,"}"),!0}return!1}function m(){if(t[A]==="["){e+="[",A++,a(),d(",")&&a();let de=!0;for(;A0&&arguments[0]!==void 0?arguments[0]:!1,Ie=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,xe=t[A]==="\\";if(xe&&(A++,xe=!0),Op(t[A])){let Xe=Mk(t[A])?Mk:Sk(t[A])?Sk:ew(t[A])?ew:bk,fA=A,Pe=e.length,be='"';for(A++;;){if(A>=t.length){let qe=j(A-1);return!de&&Tp(t.charAt(qe))?(A=fA,e=e.substring(0,Pe),D(!0)):(be=yc(be,'"'),e+=be,!0)}if(A===Ie)return be=yc(be,'"'),e+=be,!0;if(Xe(t[A])){let qe=A,st=be.length;if(be+='"',A++,e+=be,a(!1),de||A>=t.length||Tp(t[A])||Op(t[A])||zd(t[A]))return S(),!0;let it=j(qe-1),He=t.charAt(it);if(He===",")return A=fA,e=e.substring(0,Pe),D(!1,it);if(Tp(He))return A=fA,e=e.substring(0,Pe),D(!0);e=e.substring(0,Pe),A=qe+1,be=`${be.substring(0,st)}\\${be.substring(st)}`}else if(de&&vk(t[A])){if(t[A-1]===":"&&wk.test(t.substring(fA+1,A+2)))for(;A=t.length?A=t.length:Ne()}else be+=qe,A+=2}else{let qe=t.charAt(A);qe==='"'&&t[A-1]!=="\\"?(be+=`\\${qe}`,A++):bq(qe)?(be+=Bue[qe],A++):(Dq(qe)||W(qe),be+=qe,A++)}xe&&B()}}return!1}function S(){let de=!1;for(a();t[A]==="+";){de=!0,A++,a(),e=yh(e,'"',!0);let Ie=e.length;D()?e=kq(e,Ie,1):e=yc(e,'"')}return de}function k(){let de=A;if(t[A]==="-"){if(A++,X())return Ae(de),!0;if(!zd(t[A]))return A=de,!1}for(;zd(t[A]);)A++;if(t[A]==="."){if(A++,X())return Ae(de),!0;if(!zd(t[A]))return A=de,!1;for(;zd(t[A]);)A++}if(t[A]==="e"||t[A]==="E"){if(A++,(t[A]==="-"||t[A]==="+")&&A++,X())return Ae(de),!0;if(!zd(t[A]))return A=de,!1;for(;zd(t[A]);)A++}if(!X())return A=de,!1;if(A>de){let Ie=t.slice(de,A),xe=/^0\d/.test(Ie);return e+=xe?`"${Ie}"`:Ie,!0}return!1}function b(){return x("true","true")||x("false","false")||x("null","null")||x("True","true")||x("False","false")||x("None","null")}function x(de,Ie){return t.slice(A,A+de.length)===de?(e+=Ie,A+=de.length,!0):!1}function F(de){let Ie=A;if(mk(t[A])){for(;AIe){for(;Jd(t,A-1)&&A>0;)A--;let xe=t.slice(Ie,A);return e+=xe==="undefined"?"null":JSON.stringify(xe),t[A]==='"'&&A++,!0}}function P(){if(t[A]==="/"){let de=A;for(A++;A0&&Jd(t,Ie);)Ie--;return Ie}function X(){return A>=t.length||Tp(t[A])||Jd(t,A)}function Ae(de){e+=`${t.slice(de,A)}0`}function W(de){throw new yC(`Invalid character ${JSON.stringify(de)}`,A)}function Ce(){throw new yC(`Unexpected character ${JSON.stringify(t[A])}`,A)}function we(){throw new yC("Unexpected end of json string",t.length)}function Be(){throw new yC("Object key expected",A)}function Ee(){throw new yC("Colon expected",A)}function Ne(){let de=t.slice(A,A+6);throw new yC(`Invalid unicode character "${de}"`,A)}}function uue(t,A){return t[A]==="*"&&t[A+1]==="/"}var Yd=t=>Array.isArray(t),Eue=t=>t!==null&&typeof t=="object"&&!Yd(t),Que=t=>typeof t=="string",JI=(t,A)=>t===A?!0:t!==null&&A!==null&&typeof t=="object"&&typeof A=="object"&&Object.keys(t).length===Object.keys(A).length&&Object.entries(t).every(([e,i])=>JI(i,A[e])),xq=(t,A)=>{let e=t?.[A];if(e!==void 0){if(!Object.hasOwn(t,A)||Array.isArray(t)&&!/^\d+$/.test(A)||typeof t!="object")throw new TypeError(`Unsupported property "${A}"`);return e}};function ar(t){return(...A)=>{let e=A.map(o=>rr(o)),i=e[0],n=e[1];return e.length===1?o=>t(i(o)):e.length===2?o=>t(i(o),n(o)):o=>t(...e.map(a=>a(o)))}}var Yp={boolean:0,number:1,string:2},Rq=3,Lq=(t,A)=>typeof t==typeof A&&typeof t in Yp?t>A:!1,pue=(t,A)=>JI(t,A)||Lq(t,A),Gq=(t,A)=>typeof t==typeof A&&typeof t in Yp?tJI(t,A)||Gq(t,A),zp={pipe:(...t)=>{let A=t.map(e=>rr(e));return e=>A.reduce((i,n)=>n(i),e)},object:t=>{let A=Object.keys(t).map(e=>[e,rr(t[e])]);return e=>{let i={};for(let[n,o]of A)i[n]=o(e);return i}},array:(...t)=>{let A=t.map(e=>rr(e));return e=>A.map(i=>i(e))},get:(...t)=>{if(t.length===0)return A=>A??null;if(t.length===1){let A=t[0];return e=>xq(e,A)??null}return A=>{let e=A;for(let i of t)e=xq(e,i);return e??null}},map:t=>{let A=rr(t);return e=>e.map(A)},mapObject:t=>{let A=rr(t);return e=>{let i={};for(let n of Object.keys(e)){let o=A({key:n,value:e[n]});i[o.key]=o.value}return i}},mapKeys:t=>{let A=rr(t);return e=>{let i={};for(let n of Object.keys(e)){let o=A(n);i[o]=e[n]}return i}},mapValues:t=>{let A=rr(t);return e=>{let i={};for(let n of Object.keys(e))i[n]=A(e[n]);return i}},filter:t=>{let A=rr(t);return e=>e.filter(i=>Nq(A(i)))},sort:(t=["get"],A)=>{let e=rr(t),i=A==="desc"?-1:1;function n(o,a){let r=e(o),s=e(a);if(typeof r!=typeof s){let l=Yp[typeof r]??Rq,c=Yp[typeof s]??Rq;return l>c?i:ls?i:ro.slice().sort(n)},reverse:()=>t=>t.toReversed(),pick:(...t)=>{let A=t.map(([i,...n])=>[n[n.length-1],zp.get(...n)]),e=(i,n)=>{let o={};for(let[a,r]of n)o[a]=r(i);return o};return i=>Yd(i)?i.map(n=>e(n,A)):e(i,A)},groupBy:t=>{let A=rr(t);return e=>{let i={};for(let n of e){let o=A(n);i[o]?i[o].push(n):i[o]=[n]}return i}},keyBy:t=>{let A=rr(t);return e=>{let i={};for(let n of e){let o=A(n);o in i||(i[o]=n)}return i}},flatten:()=>t=>t.flat(),join:(t="")=>A=>A.join(t),split:ar((t,A)=>A!==void 0?t.split(A):t.trim().split(/\s+/)),substring:ar((t,A,e)=>t.slice(Math.max(A,0),e)),uniq:()=>t=>{let A=[];for(let e of t)A.findIndex(i=>JI(i,e))===-1&&A.push(e);return A},uniqBy:t=>A=>Object.values(zp.keyBy(t)(A)),limit:t=>A=>A.slice(0,Math.max(t,0)),size:()=>t=>t.length,keys:()=>Object.keys,values:()=>Object.values,prod:()=>t=>Jp(t,(A,e)=>A*e),sum:()=>t=>Yd(t)?t.reduce((A,e)=>A+e,0):kk(),average:()=>t=>Yd(t)?t.length>0?t.reduce((A,e)=>A+e)/t.length:null:kk(),min:()=>t=>Jp(t,(A,e)=>Math.min(A,e)),max:()=>t=>Jp(t,(A,e)=>Math.max(A,e)),and:ar((...t)=>Jp(t,(A,e)=>!!(A&&e))),or:ar((...t)=>Jp(t,(A,e)=>!!(A||e))),not:ar(t=>!t),exists:t=>{let A=t.slice(1),e=A.pop(),i=zp.get(...A);return n=>{let o=i(n);return!!o&&Object.hasOwnProperty.call(o,e)}},if:(t,A,e)=>{let i=rr(t),n=rr(A),o=rr(e);return a=>Nq(i(a))?n(a):o(a)},in:(t,A)=>{let e=rr(t),i=rr(A);return n=>{let o=e(n);return i(n).findIndex(a=>JI(a,o))!==-1}},"not in":(t,A)=>{let e=zp.in(t,A);return i=>!e(i)},regex:(t,A,e)=>{let i=new RegExp(A,e),n=rr(t);return o=>i.test(n(o))},match:(t,A,e)=>{let i=new RegExp(A,e),n=rr(t);return o=>{let a=n(o).match(i);return a?Fq(a):null}},matchAll:(t,A,e)=>{let i=new RegExp(A,`${e??""}g`),n=rr(t);return o=>Array.from(n(o).matchAll(i)).map(Fq)},eq:ar(JI),gt:ar(Lq),gte:ar(pue),lt:ar(Gq),lte:ar(mue),ne:ar((t,A)=>!JI(t,A)),add:ar((t,A)=>t+A),subtract:ar((t,A)=>t-A),multiply:ar((t,A)=>t*A),divide:ar((t,A)=>t/A),mod:ar((t,A)=>t%A),pow:ar((t,A)=>t**A),abs:ar(Math.abs),round:ar((t,A=0)=>+`${Math.round(+`${t}e${A}`)}e${-A}`),number:ar(t=>{let A=Number(t);return Number.isNaN(Number(t))?null:A}),string:ar(String)},Nq=t=>t!==null&&t!==0&&t!==!1,Jp=(t,A)=>(Yd(t)||kk(),t.length===0?null:t.reduce(A)),Fq=t=>{let[A,...e]=t,i=t.groups;return e.length?i?{value:A,groups:e,namedGroups:i}:{value:A,groups:e}:{value:A}},kk=()=>{_k("Array expected")},_k=t=>{throw new TypeError(t)},Aw=[];function rr(t,A){Aw.unshift(Y(Y(Y({},zp),Aw[0]),A?.functions));try{let e=Yd(t)?fue(t,Aw[0]):Eue(t)?_k(`Function notation ["object", {...}] expected but got ${JSON.stringify(t)}`):()=>t;return i=>{try{return e(i)}catch(n){throw n.jsonquery=[{data:i,query:t},...n.jsonquery??[]],n}}}finally{Aw.shift()}}function fue(t,A){let[e,...i]=t,n=A[e];return n||_k(`Unknown function '${e}'`),n(...i)}var Kq=[{pow:"^"},{multiply:"*",divide:"/",mod:"%"},{add:"+",subtract:"-"},{gt:">",gte:">=",lt:"<",lte:"<=",in:"in","not in":"not in"},{eq:"==",ne:"!="},{and:"and"},{or:"or"},{pipe:"|"}],wue=["|","and","or"],Uq=["|","and","or","*","/","%","+","-"];function Tq(t,A){if(!Yd(A))throw new Error("Invalid custom operators");return A.reduce(yue,t)}function yue(t,{name:A,op:e,at:i,after:n,before:o}){if(i)return t.map(s=>Object.values(s).includes(i)?Ye(Y({},s),{[A]:e}):s);let a=n??o,r=t.findIndex(s=>Object.values(s).includes(a));if(r!==-1)return t.toSpliced(r+(n?1:0),0,{[A]:e});throw new Error("Invalid custom operator")}var vue=/^[a-zA-Z_$][a-zA-Z\d_$]*$/,Due=/^[a-zA-Z_$][a-zA-Z\d_$]*/,bue=/^"(?:[^"\\]|\\.)*"/,Mue=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/,Sue=/^(0|[1-9][0-9]*)/,kue=/^(true|false|null)/,_ue=/^[ \n\t\r]+/;function xk(t,A){let e=A?.operators??[],i=Tq(Kq,e),n=Object.assign({},...i),o=wue.concat(e.filter(X=>X.vararg).map(X=>X.op)),a=Uq.concat(e.filter(X=>X.leftAssociative).map(X=>X.op)),r=(X=i.length-1)=>{let Ae=i[X];if(!Ae)return l();let W=t[P]==="(",Ce=r(X-1);for(;;){if(b(),t[P]==="."&&"pipe"in Ae){let Ie=c();Ce=Ce[0]==="pipe"?[...Ce,Ie]:["pipe",Ce,Ie];continue}let we=P,Be=s(Ae);if(!Be)break;let Ee=r(X-1),Ne=Ce[0],de=Be===Ne&&!W;if(de&&!a.includes(n[Be])){P=we;break}Ce=de&&o.includes(n[Be])?[...Ce,Ee]:[Be,Ce,Ee]}return Ce},s=X=>{let Ae=Object.keys(X).sort((W,Ce)=>Ce.length-W.length);for(let W of Ae){let Ce=X[W];if(t.substring(P,P+Ce.length)===Ce)return P+=Ce.length,b(),W}},l=()=>{if(b(),t[P]==="("){P++;let X=r();return x(")"),X}return c()},c=()=>{if(t[P]==="."){let X=[];for(;t[P]===".";)P++,X.push(E()??u()??f()??F("Property expected")),b();return["get",...X]}return C()},C=()=>{let X=P,Ae=u();if(b(),!Ae||t[P]!=="(")return P=X,d();P++,b();let W=t[P]!==")"?[r()]:[];for(;P{if(t[P]==="{"){P++,b();let X={},Ae=!0;for(;P{if(t[P]==="["){P++,b();let X=[],Ae=!0;for(;Pk(bue,JSON.parse),u=()=>k(Due,X=>X),m=()=>k(Mue,JSON.parse),f=()=>k(Sue,JSON.parse),D=()=>{let X=k(kue,JSON.parse);if(X!==void 0)return X;F("Value expected")},S=()=>{b(),P{let W=t.substring(P).match(X);if(W)return P+=W[0].length,Ae(W[0])},b=()=>k(_ue,X=>X),x=X=>{t[P]!==X&&F(`Character '${X}' expected`),P++},F=(X,Ae=P)=>{throw new SyntaxError(`${X} (pos: ${Ae})`)},P=0,j=r();return S(),j}var xue=40,Rue=" ",Oq=(t,A)=>{let e=A?.indentation??Rue,i=A?.operators??[],n=Tq(Kq,i),o=Object.assign({},...n),a=Uq.concat(i.filter(B=>B.leftAssociative).map(B=>B.op)),r=(B,E,u=!1)=>Yd(B)?s(B,E,u):JSON.stringify(B),s=(B,E,u)=>{let[m,...f]=B;if(m==="get"&&f.length>0)return c(f);if(m==="object")return l(f[0],E);if(m==="array"){let b=f.map(x=>r(x,E));return d(b,["[",", ","]"],[`[ +${E+e}`,`, +${E+e}`,` +${E}]`])}let D=o[m];if(D){let b=u?"(":"",x=u?")":"",F=f.map((P,j)=>{let X=P?.[0],Ae=n.findIndex(we=>m in we),W=n.findIndex(we=>X in we),Ce=Ae0||m===X&&!a.includes(D);return r(P,E+e,Ce)});return d(F,[b,` ${D} `,x],[b,` +${E+e}${D} `,x])}let S=f.length===1?E:E+e,k=f.map(b=>r(b,S));return d(k,[`${m}(`,", ",")"],f.length===1?[`${m}(`,`, +${E}`,")"]:[`${m}( +${S}`,`, +${S}`,` +${E})`])},l=(B,E)=>{let u=E+e,m=Object.entries(B).map(([f,D])=>`${C(f)}: ${r(D,u)}`);return d(m,["{ ",", "," }"],[`{ +${u}`,`, +${u}`,` +${E}}`])},c=B=>B.map(E=>`.${C(E)}`).join(""),C=B=>vue.test(B)?B:JSON.stringify(B),d=(B,[E,u,m],[f,D,S])=>E.length+B.reduce((k,b)=>k+b.length+u.length,0)-u.length+m.length<=(A?.maxLineLength??xue)?E+B.join(u)+m:f+B.join(D)+S;return r(t,"")};function Jq(t,A,e){return rr(Que(A)?xk(A,e):A,e)(t)}var zq={prefix:"far",iconName:"clock",icon:[512,512,[128339,"clock-four"],"f017","M464 256a208 208 0 1 1 -416 0 208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0 256 256 0 1 0 -512 0zM232 120l0 136c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2 280 120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"]};var Nue={prefix:"far",iconName:"square-check",icon:[448,512,[9745,9989,61510,"check-square"],"f14a","M384 32c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l320 0zM64 80c-8.8 0-16 7.2-16 16l0 320c0 8.8 7.2 16 16 16l320 0c8.8 0 16-7.2 16-16l0-320c0-8.8-7.2-16-16-16L64 80zm230.7 89.9c7.8-10.7 22.8-13.1 33.5-5.3 10.7 7.8 13.1 22.8 5.3 33.5L211.4 366.1c-4.1 5.7-10.5 9.3-17.5 9.8-7 .5-13.9-2-18.8-6.9l-55.9-55.9c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l36 36 105.6-145.2z"]},Rk=Nue;var Yq={prefix:"far",iconName:"lightbulb",icon:[384,512,[128161],"f0eb","M296.5 291.1C321 265.2 336 230.4 336 192 336 112.5 271.5 48 192 48S48 112.5 48 192c0 38.4 15 73.2 39.5 99.1 21.3 22.4 44.9 54 53.3 92.9l102.4 0c8.4-39 32-70.5 53.3-92.9zm34.8 33C307.7 349 288 379.4 288 413.7l0 18.3c0 44.2-35.8 80-80 80l-32 0c-44.2 0-80-35.8-80-80l0-18.3C96 379.4 76.3 349 52.7 324.1 20 289.7 0 243.2 0 192 0 86 86 0 192 0S384 86 384 192c0 51.2-20 97.7-52.7 132.1zM144 184c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-48.6 39.4-88 88-88 13.3 0 24 10.7 24 24s-10.7 24-24 24c-22.1 0-40 17.9-40 40z"]};var Nk={prefix:"far",iconName:"square",icon:[448,512,[9632,9723,9724,61590],"f0c8","M384 80c8.8 0 16 7.2 16 16l0 320c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16L48 96c0-8.8 7.2-16 16-16l320 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32z"]};var Hq={prefix:"fas",iconName:"rotate",icon:[512,512,[128260,"sync-alt"],"f2f1","M480.1 192l7.9 0c13.3 0 24-10.7 24-24l0-144c0-9.7-5.8-18.5-14.8-22.2S477.9 .2 471 7L419.3 58.8C375 22.1 318 0 256 0 127 0 20.3 95.4 2.6 219.5 .1 237 12.2 253.2 29.7 255.7s33.7-9.7 36.2-27.1C79.2 135.5 159.3 64 256 64 300.4 64 341.2 79 373.7 104.3L327 151c-6.9 6.9-8.9 17.2-5.2 26.2S334.3 192 344 192l136.1 0zm29.4 100.5c2.5-17.5-9.7-33.7-27.1-36.2s-33.7 9.7-36.2 27.1c-13.3 93-93.4 164.5-190.1 164.5-44.4 0-85.2-15-117.7-40.3L185 361c6.9-6.9 8.9-17.2 5.2-26.2S177.7 320 168 320L24 320c-13.3 0-24 10.7-24 24L0 488c0 9.7 5.8 18.5 14.8 22.2S34.1 511.8 41 505l51.8-51.8C137 489.9 194 512 256 512 385 512 491.7 416.6 509.4 292.5z"]};var Fk={prefix:"fas",iconName:"paste",icon:[512,512,["file-clipboard"],"f0ea","M64 0C28.7 0 0 28.7 0 64L0 384c0 35.3 28.7 64 64 64l112 0 0-224c0-61.9 50.1-112 112-112l64 0 0-48c0-35.3-28.7-64-64-64L64 0zM248 112l-144 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l144 0c13.3 0 24 10.7 24 24s-10.7 24-24 24zm40 48c-35.3 0-64 28.7-64 64l0 224c0 35.3 28.7 64 64 64l160 0c35.3 0 64-28.7 64-64l0-165.5c0-17-6.7-33.3-18.7-45.3l-58.5-58.5c-12-12-28.3-18.7-45.3-18.7L288 160z"]};var Fue={prefix:"fas",iconName:"crop-simple",icon:[512,512,["crop-alt"],"f565","M128 32c0-17.7-14.3-32-32-32S64 14.3 64 32l0 32-32 0C14.3 64 0 78.3 0 96s14.3 32 32 32l32 0 0 256c0 35.3 28.7 64 64 64l208 0 0-64-208 0 0-352zM384 480c0 17.7 14.3 32 32 32s32-14.3 32-32l0-32 32 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-32 0 0-256c0-35.3-28.7-64-64-64l-208 0 0 64 208 0 0 352z"]},Pq=Fue;var Hp={prefix:"fas",iconName:"filter",icon:[512,512,[],"f0b0","M32 64C19.1 64 7.4 71.8 2.4 83.8S.2 109.5 9.4 118.6L192 301.3 192 416c0 8.5 3.4 16.6 9.4 22.6l64 64c9.2 9.2 22.9 11.9 34.9 6.9S320 492.9 320 480l0-178.7 182.6-182.6c9.2-9.2 11.9-22.9 6.9-34.9S492.9 64 480 64L32 64z"]};var Lue={prefix:"fas",iconName:"square-caret-down",icon:[448,512,["caret-square-down"],"f150","M384 480c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0zM224 352c-6.7 0-13-2.8-17.6-7.7l-104-112c-6.5-7-8.2-17.2-4.4-25.9S110.5 192 120 192l208 0c9.5 0 18.2 5.7 22 14.4s2.1 18.9-4.4 25.9l-104 112c-4.5 4.9-10.9 7.7-17.6 7.7z"]},jq=Lue;var vh={prefix:"fas",iconName:"caret-right",icon:[256,512,[],"f0da","M249.3 235.8c10.2 12.6 9.5 31.1-2.2 42.8l-128 128c-9.2 9.2-22.9 11.9-34.9 6.9S64.5 396.9 64.5 384l0-256c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l128 128 2.2 2.4z"]};var Gue={prefix:"fas",iconName:"magnifying-glass",icon:[512,512,[128269,"search"],"f002","M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376C296.3 401.1 253.9 416 208 416 93.1 416 0 322.9 0 208S93.1 0 208 0 416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"]},Pp=Gue;var Vq={prefix:"fas",iconName:"eye",icon:[576,512,[128065],"f06e","M288 32c-80.8 0-145.5 36.8-192.6 80.6-46.8 43.5-78.1 95.4-93 131.1-3.3 7.9-3.3 16.7 0 24.6 14.9 35.7 46.2 87.7 93 131.1 47.1 43.7 111.8 80.6 192.6 80.6s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1 3.3-7.9 3.3-16.7 0-24.6-14.9-35.7-46.2-87.7-93-131.1-47.1-43.7-111.8-80.6-192.6-80.6zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64-11.5 0-22.3-3-31.7-8.4-1 10.9-.1 22.1 2.9 33.2 13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-12.2-45.7-55.5-74.8-101.1-70.8 5.3 9.3 8.4 20.1 8.4 31.7z"]},qq={prefix:"fas",iconName:"caret-left",icon:[256,512,[],"f0d9","M7.7 235.8c-10.3 12.6-9.5 31.1 2.2 42.8l128 128c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6l0-256c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9l-128 128-2.2 2.4z"]};var Zq={prefix:"fas",iconName:"chevron-up",icon:[448,512,[],"f077","M201.4 105.4c12.5-12.5 32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 173.3 54.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z"]};var Wq={prefix:"fas",iconName:"circle-notch",icon:[512,512,[],"f1ce","M222.7 32.1c5 16.9-4.6 34.8-21.5 39.8-79.3 23.6-137.1 97.1-137.1 184.1 0 106 86 192 192 192s192-86 192-192c0-86.9-57.8-160.4-137.1-184.1-16.9-5-26.6-22.9-21.5-39.8s22.9-26.6 39.8-21.5C434.9 42.1 512 140 512 256 512 397.4 397.4 512 256 512S0 397.4 0 256c0-116 77.1-213.9 182.9-245.4 16.9-5 34.8 4.6 39.8 21.5z"]};var Kue={prefix:"fas",iconName:"ellipsis-vertical",icon:[128,512,["ellipsis-v"],"f142","M64 144a56 56 0 1 1 0-112 56 56 0 1 1 0 112zm0 224c30.9 0 56 25.1 56 56s-25.1 56-56 56-56-25.1-56-56 25.1-56 56-56zm56-112c0 30.9-25.1 56-56 56s-56-25.1-56-56 25.1-56 56-56 56 25.1 56 56z"]},Lk=Kue;var Uue={prefix:"fas",iconName:"pen-to-square",icon:[512,512,["edit"],"f044","M471.6 21.7c-21.9-21.9-57.3-21.9-79.2 0L368 46.1 465.9 144 490.3 119.6c21.9-21.9 21.9-57.3 0-79.2L471.6 21.7zm-299.2 220c-6.1 6.1-10.8 13.6-13.5 21.9l-29.6 88.8c-2.9 8.6-.6 18.1 5.8 24.6s15.9 8.7 24.6 5.8l88.8-29.6c8.2-2.7 15.7-7.4 21.9-13.5L432 177.9 334.1 80 172.4 241.7zM96 64C43 64 0 107 0 160L0 416c0 53 43 96 96 96l256 0c53 0 96-43 96-96l0-96c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 96c0 17.7-14.3 32-32 32L96 448c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l96 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 64z"]},Xq=Uue;var Gk={prefix:"fas",iconName:"clone",icon:[512,512,[],"f24d","M288 448l-224 0 0-224 48 0 0-64-48 0c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l224 0c35.3 0 64-28.7 64-64l0-48-64 0 0 48zm-64-96l224 0c35.3 0 64-28.7 64-64l0-224c0-35.3-28.7-64-64-64L224 0c-35.3 0-64 28.7-64 64l0 224c0 35.3 28.7 64 64 64z"]};var Tue={prefix:"fas",iconName:"square-check",icon:[448,512,[9745,9989,61510,"check-square"],"f14a","M384 32c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l320 0zM342 145.7c-10.7-7.8-25.7-5.4-33.5 5.3L189.1 315.2 137 263.1c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l72 72c5 5 11.9 7.5 18.8 7s13.4-4.1 17.5-9.8L347.3 179.2c7.8-10.7 5.4-25.7-5.3-33.5z"]},Kk=Tue;var Oue={prefix:"fas",iconName:"square-caret-up",icon:[448,512,["caret-square-up"],"f151","M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM224 160c6.7 0 13 2.8 17.6 7.7l104 112c6.5 7 8.2 17.2 4.4 25.9S337.5 320 328 320l-208 0c-9.5 0-18.2-5.7-22-14.4s-2.1-18.9 4.4-25.9l104-112c4.5-4.9 10.9-7.7 17.6-7.7z"]},$q=Oue;var jp={prefix:"fas",iconName:"code",icon:[576,512,[],"f121","M360.8 1.2c-17-4.9-34.7 5-39.6 22l-128 448c-4.9 17 5 34.7 22 39.6s34.7-5 39.6-22l128-448c4.9-17-5-34.7-22-39.6zm64.6 136.1c-12.5 12.5-12.5 32.8 0 45.3l73.4 73.4-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l96-96c12.5-12.5 12.5-32.8 0-45.3l-96-96c-12.5-12.5-32.8-12.5-45.3 0zm-274.7 0c-12.5-12.5-32.8-12.5-45.3 0l-96 96c-12.5 12.5-12.5 32.8 0 45.3l96 96c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 150.6 182.6c12.5-12.5 12.5-32.8 0-45.3z"]};var Uk={prefix:"fas",iconName:"angle-right",icon:[256,512,[8250],"f105","M247.1 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L179.2 256 41.9 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"]};var Jue={prefix:"fas",iconName:"gear",icon:[512,512,[9881,"cog"],"f013","M195.1 9.5C198.1-5.3 211.2-16 226.4-16l59.8 0c15.2 0 28.3 10.7 31.3 25.5L332 79.5c14.1 6 27.3 13.7 39.3 22.8l67.8-22.5c14.4-4.8 30.2 1.2 37.8 14.4l29.9 51.8c7.6 13.2 4.9 29.8-6.5 39.9L447 233.3c.9 7.4 1.3 15 1.3 22.7s-.5 15.3-1.3 22.7l53.4 47.5c11.4 10.1 14 26.8 6.5 39.9l-29.9 51.8c-7.6 13.1-23.4 19.2-37.8 14.4l-67.8-22.5c-12.1 9.1-25.3 16.7-39.3 22.8l-14.4 69.9c-3.1 14.9-16.2 25.5-31.3 25.5l-59.8 0c-15.2 0-28.3-10.7-31.3-25.5l-14.4-69.9c-14.1-6-27.2-13.7-39.3-22.8L73.5 432.3c-14.4 4.8-30.2-1.2-37.8-14.4L5.8 366.1c-7.6-13.2-4.9-29.8 6.5-39.9l53.4-47.5c-.9-7.4-1.3-15-1.3-22.7s.5-15.3 1.3-22.7L12.3 185.8c-11.4-10.1-14-26.8-6.5-39.9L35.7 94.1c7.6-13.2 23.4-19.2 37.8-14.4l67.8 22.5c12.1-9.1 25.3-16.7 39.3-22.8L195.1 9.5zM256.3 336a80 80 0 1 0 -.6-160 80 80 0 1 0 .6 160z"]},eZ=Jue;var AZ={prefix:"fas",iconName:"up-right-and-down-left-from-center",icon:[512,512,["expand-alt"],"f424","M344 0L488 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87-39-39c-6.9-6.9-8.9-17.2-5.2-26.2S334.3 0 344 0zM168 512L24 512c-13.3 0-24-10.7-24-24L0 344c0-9.7 5.8-18.5 14.8-22.2S34.1 320.2 41 327l39 39 87-87c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2S177.7 512 168 512z"]};var vC={prefix:"fas",iconName:"wrench",icon:[576,512,[128295],"f0ad","M509.4 98.6c7.6-7.6 20.3-5.7 24.1 4.3 6.8 17.7 10.5 37 10.5 57.1 0 88.4-71.6 160-160 160-17.5 0-34.4-2.8-50.2-8L146.9 498.9c-28.1 28.1-73.7 28.1-101.8 0s-28.1-73.7 0-101.8L232 210.2c-5.2-15.8-8-32.6-8-50.2 0-88.4 71.6-160 160-160 20.1 0 39.4 3.7 57.1 10.5 10 3.8 11.8 16.5 4.3 24.1l-88.7 88.7c-3 3-4.7 7.1-4.7 11.3l0 41.4c0 8.8 7.2 16 16 16l41.4 0c4.2 0 8.3-1.7 11.3-4.7l88.7-88.7z"]},tw={prefix:"fas",iconName:"trash-can",icon:[448,512,[61460,"trash-alt"],"f2ed","M136.7 5.9C141.1-7.2 153.3-16 167.1-16l113.9 0c13.8 0 26 8.8 30.4 21.9L320 32 416 32c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l96 0 8.7-26.1zM32 144l384 0 0 304c0 35.3-28.7 64-64 64L96 512c-35.3 0-64-28.7-64-64l0-304zm88 64c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24zm104 0c-13.3 0-24 10.7-24 24l0 192c0 13.3 10.7 24 24 24s24-10.7 24-24l0-192c0-13.3-10.7-24-24-24z"]};var iw={prefix:"fas",iconName:"check",icon:[448,512,[10003,10004],"f00c","M434.8 70.1c14.3 10.4 17.5 30.4 7.1 44.7l-256 352c-5.5 7.6-14 12.3-23.4 13.1s-18.5-2.7-25.1-9.3l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l101.5 101.5 234-321.7c10.4-14.3 30.4-17.5 44.7-7.1z"]};var tZ={prefix:"fas",iconName:"xmark",icon:[384,512,[128473,10005,10006,10060,215,"close","multiply","remove","times"],"f00d","M55.1 73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L147.2 256 9.9 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192.5 301.3 329.9 438.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.8 256 375.1 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192.5 210.7 55.1 73.4z"]},iZ=tZ;var Vp=tZ;var zI={prefix:"fas",iconName:"pen",icon:[512,512,[128394],"f304","M352.9 21.2L308 66.1 445.9 204 490.8 159.1C504.4 145.6 512 127.2 512 108s-7.6-37.6-21.2-51.1L455.1 21.2C441.6 7.6 423.2 0 404 0s-37.6 7.6-51.1 21.2zM274.1 100L58.9 315.1c-10.7 10.7-18.5 24.1-22.6 38.7L.9 481.6c-2.3 8.3 0 17.3 6.2 23.4s15.1 8.5 23.4 6.2l127.8-35.5c14.6-4.1 27.9-11.8 38.7-22.6L412 237.9 274.1 100z"]};var nZ={prefix:"fas",iconName:"chevron-down",icon:[448,512,[],"f078","M201.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 338.7 54.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z"]};var oZ={prefix:"fas",iconName:"angle-down",icon:[384,512,[8964],"f107","M169.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 306.7 54.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"]};var zue={prefix:"fas",iconName:"arrow-down-short-wide",icon:[576,512,["sort-amount-desc","sort-amount-down-alt"],"f884","M246.6 374.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0l-96-96c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L96 370.7 96 64c0-17.7 14.3-32 32-32s32 14.3 32 32l0 306.7 41.4-41.4c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3zM320 32l32 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-32 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128l96 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-96 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128l160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-160 0c-17.7 0-32-14.3-32-32s14.3-32 32-32zm0 128l224 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32s14.3-32 32-32z"]};var qp=zue;var Yue={prefix:"fas",iconName:"triangle-exclamation",icon:[512,512,[9888,"exclamation-triangle","warning"],"f071","M256 0c14.7 0 28.2 8.1 35.2 21l216 400c6.7 12.4 6.4 27.4-.8 39.5S486.1 480 472 480L40 480c-14.1 0-27.2-7.4-34.4-19.5s-7.5-27.1-.8-39.5l216-400c7-12.9 20.5-21 35.2-21zm0 352a32 32 0 1 0 0 64 32 32 0 1 0 0-64zm0-192c-18.2 0-32.7 15.5-31.4 33.7l7.4 104c.9 12.5 11.4 22.3 23.9 22.3 12.6 0 23-9.7 23.9-22.3l7.4-104c1.3-18.2-13.1-33.7-31.4-33.7z"]},Hd=Yue;var Hue={prefix:"fas",iconName:"scissors",icon:[512,512,[9984,9986,9988,"cut"],"f0c4","M192 256l-39.5 39.5c-12.6-4.9-26.2-7.5-40.5-7.5-61.9 0-112 50.1-112 112s50.1 112 112 112 112-50.1 112-112c0-14.3-2.7-27.9-7.5-40.5L499.2 76.8c7.1-7.1 7.1-18.5 0-25.6-28.3-28.3-74.1-28.3-102.4 0L256 192 216.5 152.5c4.9-12.6 7.5-26.2 7.5-40.5 0-61.9-50.1-112-112-112S0 50.1 0 112 50.1 224 112 224c14.3 0 27.9-2.7 40.5-7.5L192 256zm97.9 97.9L396.8 460.8c28.3 28.3 74.1 28.3 102.4 0 7.1-7.1 7.1-18.5 0-25.6l-145.3-145.3-64 64zM64 112a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zm48 240a48 48 0 1 1 0 96 48 48 0 1 1 0-96z"]},YI=Hue;var Zp={prefix:"fas",iconName:"arrow-right-arrow-left",icon:[512,512,[8644,"exchange"],"f0ec","M502.6 150.6l-96 96c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L402.7 160 32 160c-17.7 0-32-14.3-32-32S14.3 96 32 96l370.7 0-41.4-41.4c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l96 96c12.5 12.5 12.5 32.8 0 45.3zm-397.3 352l-96-96c-12.5-12.5-12.5-32.8 0-45.3l96-96c12.5-12.5 32.8-12.5 45.3 0s12.5 32.8 0 45.3L109.3 352 480 352c17.7 0 32 14.3 32 32s-14.3 32-32 32l-370.7 0 41.4 41.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0z"]};var Tk={prefix:"fas",iconName:"caret-up",icon:[320,512,[],"f0d8","M140.3 135.2c12.6-10.3 31.1-9.5 42.8 2.2l128 128c9.2 9.2 11.9 22.9 6.9 34.9S301.4 320 288.5 320l-256 0c-12.9 0-24.6-7.8-29.6-19.8S.7 274.5 9.9 265.4l128-128 2.4-2.2z"]};var aZ={prefix:"fas",iconName:"down-left-and-up-right-to-center",icon:[512,512,["compress-alt"],"f422","M439.5 7c9.4-9.4 24.6-9.4 33.9 0l32 32c9.4 9.4 9.4 24.6 0 33.9l-87 87 39 39c6.9 6.9 8.9 17.2 5.2 26.2S450.2 240 440.5 240l-144 0c-13.3 0-24-10.7-24-24l0-144c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2l39 39 87-87zM72.5 272l144 0c13.3 0 24 10.7 24 24l0 144c0 9.7-5.8 18.5-14.8 22.2s-19.3 1.7-26.2-5.2l-39-39-87 87c-9.4 9.4-24.6 9.4-33.9 0l-32-32c-9.4-9.4-9.4-24.6 0-33.9l87-87-39-39c-6.9-6.9-8.9-17.2-5.2-26.2S62.8 272 72.5 272z"]};var HI={prefix:"fas",iconName:"plus",icon:[448,512,[10133,61543,"add"],"2b","M256 64c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 160-160 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l160 0 0 160c0 17.7 14.3 32 32 32s32-14.3 32-32l0-160 160 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-160 0 0-160z"]};var DC={prefix:"fas",iconName:"copy",icon:[448,512,[],"f0c5","M192 0c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64l192 0c35.3 0 64-28.7 64-64l0-200.6c0-17.4-7.1-34.1-19.7-46.2L370.6 17.8C358.7 6.4 342.8 0 326.3 0L192 0zM64 128c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l192 0c35.3 0 64-28.7 64-64l0-16-64 0 0 16-192 0 0-256 16 0 0-64-16 0z"]};var Pue={prefix:"fas",iconName:"arrow-rotate-right",icon:[512,512,[8635,"arrow-right-rotate","arrow-rotate-forward","redo"],"f01e","M436.7 74.7L448 85.4 448 32c0-17.7 14.3-32 32-32s32 14.3 32 32l0 128c0 17.7-14.3 32-32 32l-128 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l47.9 0-7.6-7.2c-.2-.2-.4-.4-.6-.6-75-75-196.5-75-271.5 0s-75 196.5 0 271.5 196.5 75 271.5 0c8.2-8.2 15.5-16.9 21.9-26.1 10.1-14.5 30.1-18 44.6-7.9s18 30.1 7.9 44.6c-8.5 12.2-18.2 23.8-29.1 34.7-100 100-262.1 100-362 0S-25 175 75 75c99.9-99.9 261.7-100 361.7-.3z"]};var nw=Pue;var y0={prefix:"fas",iconName:"caret-down",icon:[320,512,[],"f0d7","M140.3 376.8c12.6 10.2 31.1 9.5 42.8-2.2l128-128c9.2-9.2 11.9-22.9 6.9-34.9S301.4 192 288.5 192l-256 0c-12.9 0-24.6 7.8-29.6 19.8S.7 237.5 9.9 246.6l128 128 2.4 2.2z"]};var jue={prefix:"fas",iconName:"arrow-rotate-left",icon:[512,512,[8634,"arrow-left-rotate","arrow-rotate-back","arrow-rotate-backward","undo"],"f0e2","M256 64c-56.8 0-107.9 24.7-143.1 64l47.1 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 192c-17.7 0-32-14.3-32-32L0 32C0 14.3 14.3 0 32 0S64 14.3 64 32l0 54.7C110.9 33.6 179.5 0 256 0 397.4 0 512 114.6 512 256S397.4 512 256 512c-87 0-163.9-43.4-210.1-109.7-10.1-14.5-6.6-34.4 7.9-44.6s34.4-6.6 44.6 7.9c34.8 49.8 92.4 82.3 157.6 82.3 106 0 192-86 192-192S362 64 256 64z"]};var ow=jue;var Ok={prefix:"fas",iconName:"square",icon:[448,512,[9632,9723,9724,61590],"f0c8","M64 32l320 0c35.3 0 64 28.7 64 64l0 320c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32z"]};var Jk={prefix:"fas",iconName:"arrow-down",icon:[384,512,[8595],"f063","M169.4 502.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 402.7 224 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 370.7-105.4-105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"]};var Qte=Sf(lZ(),1);var cZ=Number.isNaN||function(A){return typeof A=="number"&&A!==A};function Vue(t,A){return!!(t===A||cZ(t)&&cZ(A))}function que(t,A){if(t.length!==A.length)return!1;for(var e=0;e{if(typeof n!="object"||!n.name||!n.init)throw new Error("Invalid JSEP plugin format");this.registered[n.name]||(n.init(this.jsep),this.registered[n.name]=n)})}},ul=class t{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+t.version}static addUnaryOp(A){return t.max_unop_len=Math.max(A.length,t.max_unop_len),t.unary_ops[A]=1,t}static addBinaryOp(A,e,i){return t.max_binop_len=Math.max(A.length,t.max_binop_len),t.binary_ops[A]=e,i?t.right_associative.add(A):t.right_associative.delete(A),t}static addIdentifierChar(A){return t.additional_identifier_chars.add(A),t}static addLiteral(A,e){return t.literals[A]=e,t}static removeUnaryOp(A){return delete t.unary_ops[A],A.length===t.max_unop_len&&(t.max_unop_len=t.getMaxKeyLen(t.unary_ops)),t}static removeAllUnaryOps(){return t.unary_ops={},t.max_unop_len=0,t}static removeIdentifierChar(A){return t.additional_identifier_chars.delete(A),t}static removeBinaryOp(A){return delete t.binary_ops[A],A.length===t.max_binop_len&&(t.max_binop_len=t.getMaxKeyLen(t.binary_ops)),t.right_associative.delete(A),t}static removeAllBinaryOps(){return t.binary_ops={},t.max_binop_len=0,t}static removeLiteral(A){return delete t.literals[A],t}static removeAllLiterals(){return t.literals={},t}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(A){this.expr=A,this.index=0}static parse(A){return new t(A).parse()}static getMaxKeyLen(A){return Math.max(0,...Object.keys(A).map(e=>e.length))}static isDecimalDigit(A){return A>=48&&A<=57}static binaryPrecedence(A){return t.binary_ops[A]||0}static isIdentifierStart(A){return A>=65&&A<=90||A>=97&&A<=122||A>=128&&!t.binary_ops[String.fromCharCode(A)]||t.additional_identifier_chars.has(String.fromCharCode(A))}static isIdentifierPart(A){return t.isIdentifierStart(A)||t.isDecimalDigit(A)}throwError(A){let e=new Error(A+" at character "+this.index);throw e.index=this.index,e.description=A,e}runHook(A,e){if(t.hooks[A]){let i={context:this,node:e};return t.hooks.run(A,i),i.node}return e}searchHook(A){if(t.hooks[A]){let e={context:this};return t.hooks[A].find(function(i){return i.call(e.context,e),e.node}),e.node}}gobbleSpaces(){let A=this.code;for(;A===t.SPACE_CODE||A===t.TAB_CODE||A===t.LF_CODE||A===t.CR_CODE;)A=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let A=this.gobbleExpressions(),e=A.length===1?A[0]:{type:t.COMPOUND,body:A};return this.runHook("after-all",e)}gobbleExpressions(A){let e=[],i,n;for(;this.index0;){if(t.binary_ops.hasOwnProperty(A)&&(!t.isIdentifierStart(this.code)||this.index+A.lengtho.right_a&&C.right_a?i>C.prec:i<=C.prec;for(;n.length>2&&c(n[n.length-2]);)r=n.pop(),e=n.pop().value,a=n.pop(),A={type:t.BINARY_EXP,operator:e,left:a,right:r},n.push(A);A=this.gobbleToken(),A||this.throwError("Expected expression after "+l),n.push(o,A)}for(s=n.length-1,A=n[s];s>1;)A={type:t.BINARY_EXP,operator:n[s-1].value,left:n[s-2],right:A},s-=2;return A}gobbleToken(){let A,e,i,n;if(this.gobbleSpaces(),n=this.searchHook("gobble-token"),n)return this.runHook("after-token",n);if(A=this.code,t.isDecimalDigit(A)||A===t.PERIOD_CODE)return this.gobbleNumericLiteral();if(A===t.SQUOTE_CODE||A===t.DQUOTE_CODE)n=this.gobbleStringLiteral();else if(A===t.OBRACK_CODE)n=this.gobbleArray();else{for(e=this.expr.substr(this.index,t.max_unop_len),i=e.length;i>0;){if(t.unary_ops.hasOwnProperty(e)&&(!t.isIdentifierStart(this.code)||this.index+e.length=e.length&&this.throwError("Unexpected token "+String.fromCharCode(A));break}else if(o===t.COMMA_CODE){if(this.index++,n++,n!==e.length){if(A===t.CPAREN_CODE)this.throwError("Unexpected token ,");else if(A===t.CBRACK_CODE)for(let a=e.length;a":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});ul.max_unop_len=ul.getMaxKeyLen(ul.unary_ops);ul.max_binop_len=ul.getMaxKeyLen(ul.binary_ops);var v0=t=>new ul(t).parse(),Wue=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(ul).filter(t=>!Wue.includes(t)&&v0[t]===void 0).forEach(t=>{v0[t]=ul[t]});v0.Jsep=ul;var Xue="ConditionalExpression",$ue={name:"ternary",init(t){t.hooks.add("after-expression",function(e){if(e.node&&this.code===t.QUMARK_CODE){this.index++;let i=e.node,n=this.gobbleExpression();if(n||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===t.COLON_CODE){this.index++;let o=this.gobbleExpression();if(o||this.throwError("Expected expression"),e.node={type:Xue,test:i,consequent:n,alternate:o},i.operator&&t.binary_ops[i.operator]<=.9){let a=i;for(;a.right.operator&&t.binary_ops[a.right.operator]<=.9;)a=a.right;e.node.test=a.right,a.right=e.node,e.node=i}}else this.throwError("Expected :")}})}};v0.plugins.register($ue);var CZ=47,eEe=92,AEe={name:"regex",init(t){t.hooks.add("gobble-token",function(e){if(this.code===CZ){let i=++this.index,n=!1;for(;this.index=97&&s<=122||s>=65&&s<=90||s>=48&&s<=57)a+=this.char;else break}let r;try{r=new RegExp(o,a)}catch(s){this.throwError(s.message)}return e.node={type:t.LITERAL,value:r,raw:this.expr.slice(i-1,this.index)},e.node=this.gobbleTokenProperty(e.node),e.node}this.code===t.OBRACK_CODE?n=!0:n&&this.code===t.CBRACK_CODE&&(n=!1),this.index+=this.code===eEe?2:1}this.throwError("Unclosed Regex")}})}},zk=43,tEe=45,bh={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[zk,tEe],assignmentPrecedence:.9,init(t){let A=[t.IDENTIFIER,t.MEMBER_EXP];bh.assignmentOperators.forEach(i=>t.addBinaryOp(i,bh.assignmentPrecedence,!0)),t.hooks.add("gobble-token",function(n){let o=this.code;bh.updateOperators.some(a=>a===o&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,n.node={type:"UpdateExpression",operator:o===zk?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!n.node.argument||!A.includes(n.node.argument.type))&&this.throwError(`Unexpected ${n.node.operator}`))}),t.hooks.add("after-token",function(n){if(n.node){let o=this.code;bh.updateOperators.some(a=>a===o&&a===this.expr.charCodeAt(this.index+1))&&(A.includes(n.node.type)||this.throwError(`Unexpected ${n.node.operator}`),this.index+=2,n.node={type:"UpdateExpression",operator:o===zk?"++":"--",argument:n.node,prefix:!1})}}),t.hooks.add("after-expression",function(n){n.node&&e(n.node)});function e(i){bh.assignmentOperators.has(i.operator)?(i.type="AssignmentExpression",e(i.left),e(i.right)):i.operator||Object.values(i).forEach(n=>{n&&typeof n=="object"&&e(n)})}}};v0.plugins.register(AEe,bh);v0.addUnaryOp("typeof");v0.addUnaryOp("void");v0.addLiteral("null",null);v0.addLiteral("undefined",void 0);var iEe=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__"]),jo={evalAst(t,A){switch(t.type){case"BinaryExpression":case"LogicalExpression":return jo.evalBinaryExpression(t,A);case"Compound":return jo.evalCompound(t,A);case"ConditionalExpression":return jo.evalConditionalExpression(t,A);case"Identifier":return jo.evalIdentifier(t,A);case"Literal":return jo.evalLiteral(t,A);case"MemberExpression":return jo.evalMemberExpression(t,A);case"UnaryExpression":return jo.evalUnaryExpression(t,A);case"ArrayExpression":return jo.evalArrayExpression(t,A);case"CallExpression":return jo.evalCallExpression(t,A);case"AssignmentExpression":return jo.evalAssignmentExpression(t,A);default:throw SyntaxError("Unexpected expression",t)}},evalBinaryExpression(t,A){return{"||":(i,n)=>i||n(),"&&":(i,n)=>i&&n(),"|":(i,n)=>i|n(),"^":(i,n)=>i^n(),"&":(i,n)=>i&n(),"==":(i,n)=>i==n(),"!=":(i,n)=>i!=n(),"===":(i,n)=>i===n(),"!==":(i,n)=>i!==n(),"<":(i,n)=>i":(i,n)=>i>n(),"<=":(i,n)=>i<=n(),">=":(i,n)=>i>=n(),"<<":(i,n)=>i<>":(i,n)=>i>>n(),">>>":(i,n)=>i>>>n(),"+":(i,n)=>i+n(),"-":(i,n)=>i-n(),"*":(i,n)=>i*n(),"/":(i,n)=>i/n(),"%":(i,n)=>i%n()}[t.operator](jo.evalAst(t.left,A),()=>jo.evalAst(t.right,A))},evalCompound(t,A){let e;for(let i=0;i-jo.evalAst(i,A),"!":i=>!jo.evalAst(i,A),"~":i=>~jo.evalAst(i,A),"+":i=>+jo.evalAst(i,A),typeof:i=>typeof jo.evalAst(i,A),void:i=>{jo.evalAst(i,A)}}[t.operator](t.argument)},evalArrayExpression(t,A){return t.elements.map(e=>jo.evalAst(e,A))},evalCallExpression(t,A){let e=t.arguments.map(n=>jo.evalAst(n,A)),i=jo.evalAst(t.callee,A);if(i===Function)throw new Error("Function constructor is disabled");return i(...e)},evalAssignmentExpression(t,A){if(t.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let e=t.left.name,i=jo.evalAst(t.right,A);return A[e]=i,A[e]}},Pk=class{constructor(A){this.code=A,this.ast=v0(this.code)}runInNewContext(A){let e=Object.assign(Object.create(null),A);return jo.evalAst(this.ast,e)}};function Pd(t,A){return t=t.slice(),t.push(A),t}function jk(t,A){return A=A.slice(),A.unshift(t),A}var Vk=class extends Error{constructor(A){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=A,this.name="NewError"}};function Qo(t,A,e,i,n){if(!(this instanceof Qo))try{return new Qo(t,A,e,i,n)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof t=="string"&&(n=i,i=e,e=A,A=t,t=null);let o=t&&typeof t=="object";if(t=t||{},this.json=t.json||e,this.path=t.path||A,this.resultType=t.resultType||"value",this.flatten=t.flatten||!1,this.wrap=Object.hasOwn(t,"wrap")?t.wrap:!0,this.sandbox=t.sandbox||{},this.eval=t.eval===void 0?"safe":t.eval,this.ignoreEvalErrors=typeof t.ignoreEvalErrors>"u"?!1:t.ignoreEvalErrors,this.parent=t.parent||null,this.parentProperty=t.parentProperty||null,this.callback=t.callback||i||null,this.otherTypeCallback=t.otherTypeCallback||n||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},t.autostart!==!1){let a={path:o?t.path:A};o?"json"in t&&(a.json=t.json):a.json=e;let r=this.evaluate(a);if(!r||typeof r!="object")throw new Vk(r);return r}}Qo.prototype.evaluate=function(t,A,e,i){let n=this.parent,o=this.parentProperty,{flatten:a,wrap:r}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,e=e||this.callback,this.currOtherTypeCallback=i||this.otherTypeCallback,A=A||this.json,t=t||this.path,t&&typeof t=="object"&&!Array.isArray(t)){if(!t.path&&t.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(t,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:A}=t),a=Object.hasOwn(t,"flatten")?t.flatten:a,this.currResultType=Object.hasOwn(t,"resultType")?t.resultType:this.currResultType,this.currSandbox=Object.hasOwn(t,"sandbox")?t.sandbox:this.currSandbox,r=Object.hasOwn(t,"wrap")?t.wrap:r,this.currEval=Object.hasOwn(t,"eval")?t.eval:this.currEval,e=Object.hasOwn(t,"callback")?t.callback:e,this.currOtherTypeCallback=Object.hasOwn(t,"otherTypeCallback")?t.otherTypeCallback:this.currOtherTypeCallback,n=Object.hasOwn(t,"parent")?t.parent:n,o=Object.hasOwn(t,"parentProperty")?t.parentProperty:o,t=t.path}if(n=n||null,o=o||null,Array.isArray(t)&&(t=Qo.toPathString(t)),!t&&t!==""||!A)return;let s=Qo.toPathArray(t);s[0]==="$"&&s.length>1&&s.shift(),this._hasParentSelector=null;let l=this._trace(s,A,["$"],n,o,e).filter(function(c){return c&&!c.isParentSelector});return l.length?!r&&l.length===1&&!l[0].hasArrExpr?this._getPreferredOutput(l[0]):l.reduce((c,C)=>{let d=this._getPreferredOutput(C);return a&&Array.isArray(d)?c=c.concat(d):c.push(d),c},[]):r?[]:void 0};Qo.prototype._getPreferredOutput=function(t){let A=this.currResultType;switch(A){case"all":{let e=Array.isArray(t.path)?t.path:Qo.toPathArray(t.path);return t.pointer=Qo.toPointer(e),t.path=typeof t.path=="string"?t.path:Qo.toPathString(t.path),t}case"value":case"parent":case"parentProperty":return t[A];case"path":return Qo.toPathString(t[A]);case"pointer":return Qo.toPointer(t.path);default:throw new TypeError("Unknown result type")}};Qo.prototype._handleCallback=function(t,A,e){if(A){let i=this._getPreferredOutput(t);t.path=typeof t.path=="string"?t.path:Qo.toPathString(t.path),A(i,e,t)}};Qo.prototype._trace=function(t,A,e,i,n,o,a,r){let s;if(!t.length)return s={path:e,value:A,parent:i,parentProperty:n,hasArrExpr:a},this._handleCallback(s,o,"value"),s;let l=t[0],c=t.slice(1),C=[];function d(B){Array.isArray(B)?B.forEach(E=>{C.push(E)}):C.push(B)}if((typeof l!="string"||r)&&A&&Object.hasOwn(A,l))d(this._trace(c,A[l],Pd(e,l),A,l,o,a));else if(l==="*")this._walk(A,B=>{d(this._trace(c,A[B],Pd(e,B),A,B,o,!0,!0))});else if(l==="..")d(this._trace(c,A,e,i,n,o,a)),this._walk(A,B=>{typeof A[B]=="object"&&d(this._trace(t.slice(),A[B],Pd(e,B),A,B,o,!0))});else{if(l==="^")return this._hasParentSelector=!0,{path:e.slice(0,-1),expr:c,isParentSelector:!0};if(l==="~")return s={path:Pd(e,l),value:n,parent:i,parentProperty:null},this._handleCallback(s,o,"property"),s;if(l==="$")d(this._trace(c,A,e,null,null,o,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(l))d(this._slice(l,c,A,e,i,n,o));else if(l.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let B=l.replace(/^\?\((.*?)\)$/u,"$1"),E=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(B);E?this._walk(A,u=>{let m=[E[2]],f=E[1]?A[u][E[1]]:A[u];this._trace(m,f,e,i,n,o,!0).length>0&&d(this._trace(c,A[u],Pd(e,u),A,u,o,!0))}):this._walk(A,u=>{this._eval(B,A[u],u,e,i,n)&&d(this._trace(c,A[u],Pd(e,u),A,u,o,!0))})}else if(l[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");d(this._trace(jk(this._eval(l,A,e.at(-1),e.slice(0,-1),i,n),c),A,e,i,n,o,a))}else if(l[0]==="@"){let B=!1,E=l.slice(1,-2);switch(E){case"scalar":(!A||!["object","function"].includes(typeof A))&&(B=!0);break;case"boolean":case"string":case"undefined":case"function":typeof A===E&&(B=!0);break;case"integer":Number.isFinite(A)&&!(A%1)&&(B=!0);break;case"number":Number.isFinite(A)&&(B=!0);break;case"nonFinite":typeof A=="number"&&!Number.isFinite(A)&&(B=!0);break;case"object":A&&typeof A===E&&(B=!0);break;case"array":Array.isArray(A)&&(B=!0);break;case"other":B=this.currOtherTypeCallback(A,e,i,n);break;case"null":A===null&&(B=!0);break;default:throw new TypeError("Unknown value type "+E)}if(B)return s={path:e,value:A,parent:i,parentProperty:n},this._handleCallback(s,o,"value"),s}else if(l[0]==="`"&&A&&Object.hasOwn(A,l.slice(1))){let B=l.slice(1);d(this._trace(c,A[B],Pd(e,B),A,B,o,a,!0))}else if(l.includes(",")){let B=l.split(",");for(let E of B)d(this._trace(jk(E,c),A,e,i,n,o,!0))}else!r&&A&&Object.hasOwn(A,l)&&d(this._trace(c,A[l],Pd(e,l),A,l,o,a,!0))}if(this._hasParentSelector)for(let B=0;B{A(e)})};Qo.prototype._slice=function(t,A,e,i,n,o,a){if(!Array.isArray(e))return;let r=e.length,s=t.split(":"),l=s[2]&&Number.parseInt(s[2])||1,c=s[0]&&Number.parseInt(s[0])||0,C=s[1]&&Number.parseInt(s[1])||r;c=c<0?Math.max(0,c+r):Math.min(r,c),C=C<0?Math.max(0,C+r):Math.min(r,C);let d=[];for(let B=c;B{d.push(u)});return d};Qo.prototype._eval=function(t,A,e,i,n,o){this.currSandbox._$_parentProperty=o,this.currSandbox._$_parent=n,this.currSandbox._$_property=e,this.currSandbox._$_root=this.json,this.currSandbox._$_v=A;let a=t.includes("@path");a&&(this.currSandbox._$_path=Qo.toPathString(i.concat([e])));let r=this.currEval+"Script:"+t;if(!Qo.cache[r]){let s=t.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(s=s.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Qo.cache[r]=new this.safeVm.Script(s);else if(this.currEval==="native")Qo.cache[r]=new this.vm.Script(s);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let l=this.currEval;Qo.cache[r]=new l(s)}else if(typeof this.currEval=="function")Qo.cache[r]={runInNewContext:l=>this.currEval(s,l)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Qo.cache[r].runInNewContext(this.currSandbox)}catch(s){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+s.message+": "+t)}};Qo.cache={};Qo.toPathString=function(t){let A=t,e=A.length,i="$";for(let n=1;ntypeof A[l]=="function");let o=i.map(l=>A[l]);e=n.reduce((l,c)=>{let C=A[c].toString();return/function/u.test(C)||(C="function "+C),"var "+c+"="+C+";"+l},"")+e,!/(['"])use strict\1/u.test(e)&&!i.includes("arguments")&&(e="var arguments = undefined;"+e),e=e.replace(/;\s*$/u,"");let r=e.lastIndexOf(";"),s=r!==-1?e.slice(0,r+1)+" return "+e.slice(r+1):" return "+e;return new Function(...i,s)(...o)}};Qo.prototype.vm={Script:qk};var Wk=[],hZ=[];(()=>{let t="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(A=>A?parseInt(A,36):1);for(let A=0,e=0;A>1;if(t=hZ[i])A=i+1;else return!0;if(A==e)return!1}}function dZ(t){return t>=127462&&t<=127487}var IZ=8205;function uZ(t,A,e=!0,i=!0){return(e?EZ:aEe)(t,A,i)}function EZ(t,A,e){if(A==t.length)return A;A&&QZ(t.charCodeAt(A))&&pZ(t.charCodeAt(A-1))&&A--;let i=Zk(t,A);for(A+=BZ(i);A=0&&dZ(Zk(t,a));)o++,a-=2;if(o%2==0)break;A+=2}else break}return A}function aEe(t,A,e){for(;A>0;){let i=EZ(t,A-2,e);if(i=56320&&t<57344}function pZ(t){return t>=55296&&t<56320}function BZ(t){return t<65536?1:2}var Jn=class t{lineAt(A){if(A<0||A>this.length)throw new RangeError(`Invalid position ${A} in document of length ${this.length}`);return this.lineInner(A,!1,1,0)}line(A){if(A<1||A>this.lines)throw new RangeError(`Invalid line number ${A} in ${this.lines}-line document`);return this.lineInner(A,!0,1,0)}replace(A,e,i){[A,e]=xh(this,A,e);let n=[];return this.decompose(0,A,n,2),i.length&&i.decompose(0,i.length,n,3),this.decompose(e,this.length,n,1),Sh.from(n,this.length-(e-A)+i.length)}append(A){return this.replace(this.length,this.length,A)}slice(A,e=this.length){[A,e]=xh(this,A,e);let i=[];return this.decompose(A,e,i,0),Sh.from(i,e-A)}eq(A){if(A==this)return!0;if(A.length!=this.length||A.lines!=this.lines)return!1;let e=this.scanIdentical(A,1),i=this.length-this.scanIdentical(A,-1),n=new VI(this),o=new VI(A);for(let a=e,r=e;;){if(n.next(a),o.next(a),a=0,n.lineBreak!=o.lineBreak||n.done!=o.done||n.value!=o.value)return!1;if(r+=n.value.length,n.done||r>=i)return!0}}iter(A=1){return new VI(this,A)}iterRange(A,e=this.length){return new gw(this,A,e)}iterLines(A,e){let i;if(A==null)i=this.iter();else{e==null&&(e=this.lines+1);let n=this.line(A).from;i=this.iterRange(n,Math.max(n,e==this.lines+1?this.length:e<=1?0:this.line(e-1).to))}return new Cw(i)}toString(){return this.sliceString(0)}toJSON(){let A=[];return this.flatten(A),A}constructor(){}static of(A){if(A.length==0)throw new RangeError("A document must have at least one line");return A.length==1&&!A[0]?t.empty:A.length<=32?new Hl(A):Sh.from(Hl.split(A,[]))}},Hl=class t extends Jn{constructor(A,e=rEe(A)){super(),this.text=A,this.length=e}get lines(){return this.text.length}get children(){return null}lineInner(A,e,i,n){for(let o=0;;o++){let a=this.text[o],r=n+a.length;if((e?i:r)>=A)return new e_(n,r,i,a);n=r+1,i++}}decompose(A,e,i,n){let o=A<=0&&e>=this.length?this:new t(mZ(this.text,A,e),Math.min(e,this.length)-Math.max(0,A));if(n&1){let a=i.pop(),r=cw(o.text,a.text.slice(),0,o.length);if(r.length<=32)i.push(new t(r,a.length+o.length));else{let s=r.length>>1;i.push(new t(r.slice(0,s)),new t(r.slice(s)))}}else i.push(o)}replace(A,e,i){if(!(i instanceof t))return super.replace(A,e,i);[A,e]=xh(this,A,e);let n=cw(this.text,cw(i.text,mZ(this.text,0,A)),e),o=this.length+i.length-(e-A);return n.length<=32?new t(n,o):Sh.from(t.split(n,[]),o)}sliceString(A,e=this.length,i=` +`){[A,e]=xh(this,A,e);let n="";for(let o=0,a=0;o<=e&&aA&&a&&(n+=i),Ao&&(n+=r.slice(Math.max(0,A-o),e-o)),o=s+1}return n}flatten(A){for(let e of this.text)A.push(e)}scanIdentical(){return 0}static split(A,e){let i=[],n=-1;for(let o of A)i.push(o),n+=o.length+1,i.length==32&&(e.push(new t(i,n)),i=[],n=-1);return n>-1&&e.push(new t(i,n)),e}},Sh=class t extends Jn{constructor(A,e){super(),this.children=A,this.length=e,this.lines=0;for(let i of A)this.lines+=i.lines}lineInner(A,e,i,n){for(let o=0;;o++){let a=this.children[o],r=n+a.length,s=i+a.lines-1;if((e?s:r)>=A)return a.lineInner(A,e,i,n);n=r+1,i=s+1}}decompose(A,e,i,n){for(let o=0,a=0;a<=e&&o=a){let l=n&((a<=A?1:0)|(s>=e?2:0));a>=A&&s<=e&&!l?i.push(r):r.decompose(A-a,e-a,i,l)}a=s+1}}replace(A,e,i){if([A,e]=xh(this,A,e),i.lines=o&&e<=r){let s=a.replace(A-o,e-o,i),l=this.lines-a.lines+s.lines;if(s.lines>4&&s.lines>l>>6){let c=this.children.slice();return c[n]=s,new t(c,this.length-(e-A)+i.length)}return super.replace(o,r,s)}o=r+1}return super.replace(A,e,i)}sliceString(A,e=this.length,i=` +`){[A,e]=xh(this,A,e);let n="";for(let o=0,a=0;oA&&o&&(n+=i),Aa&&(n+=r.sliceString(A-a,e-a,i)),a=s+1}return n}flatten(A){for(let e of this.children)e.flatten(A)}scanIdentical(A,e){if(!(A instanceof t))return 0;let i=0,[n,o,a,r]=e>0?[0,0,this.children.length,A.children.length]:[this.children.length-1,A.children.length-1,-1,-1];for(;;n+=e,o+=e){if(n==a||o==r)return i;let s=this.children[n],l=A.children[o];if(s!=l)return i+s.scanIdentical(l,e);i+=s.length+1}}static from(A,e=A.reduce((i,n)=>i+n.length+1,-1)){let i=0;for(let B of A)i+=B.lines;if(i<32){let B=[];for(let E of A)E.flatten(B);return new Hl(B,e)}let n=Math.max(32,i>>5),o=n<<1,a=n>>1,r=[],s=0,l=-1,c=[];function C(B){let E;if(B.lines>o&&B instanceof t)for(let u of B.children)C(u);else B.lines>a&&(s>a||!s)?(d(),r.push(B)):B instanceof Hl&&s&&(E=c[c.length-1])instanceof Hl&&B.lines+E.lines<=32?(s+=B.lines,l+=B.length+1,c[c.length-1]=new Hl(E.text.concat(B.text),E.length+1+B.length)):(s+B.lines>n&&d(),s+=B.lines,l+=B.length+1,c.push(B))}function d(){s!=0&&(r.push(c.length==1?c[0]:t.from(c,l)),l=-1,s=c.length=0)}for(let B of A)C(B);return d(),r.length==1?r[0]:new t(r,e)}};Jn.empty=new Hl([""],0);function rEe(t){let A=-1;for(let e of t)A+=e.length+1;return A}function cw(t,A,e=0,i=1e9){for(let n=0,o=0,a=!0;o=e&&(s>i&&(r=r.slice(0,i-n)),n0?1:(A instanceof Hl?A.text.length:A.children.length)<<1]}nextInner(A,e){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,n=this.nodes[i],o=this.offsets[i],a=o>>1,r=n instanceof Hl?n.text.length:n.children.length;if(a==(e>0?r:0)){if(i==0)return this.done=!0,this.value="",this;e>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((o&1)==(e>0?0:1)){if(this.offsets[i]+=e,A==0)return this.lineBreak=!0,this.value=` +`,this;A--}else if(n instanceof Hl){let s=n.text[a+(e<0?-1:0)];if(this.offsets[i]+=e,s.length>Math.max(0,A))return this.value=A==0?s:e>0?s.slice(A):s.slice(0,s.length-A),this;A-=s.length}else{let s=n.children[a+(e<0?-1:0)];A>s.length?(A-=s.length,this.offsets[i]+=e):(e<0&&this.offsets[i]--,this.nodes.push(s),this.offsets.push(e>0?1:(s instanceof Hl?s.text.length:s.children.length)<<1))}}}next(A=0){return A<0&&(this.nextInner(-A,-this.dir),A=this.value.length),this.nextInner(A,this.dir)}},gw=class{constructor(A,e,i){this.value="",this.done=!1,this.cursor=new VI(A,e>i?-1:1),this.pos=e>i?A.length:0,this.from=Math.min(e,i),this.to=Math.max(e,i)}nextInner(A,e){if(e<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;A+=Math.max(0,e<0?this.pos-this.to:this.from-this.pos);let i=e<0?this.pos-this.from:this.to-this.pos;A>i&&(A=i),i-=A;let{value:n}=this.cursor.next(A);return this.pos+=(n.length+A)*e,this.value=n.length<=i?n:e<0?n.slice(n.length-i):n.slice(0,i),this.done=!this.value,this}next(A=0){return A<0?A=Math.max(A,this.from-this.pos):A>0&&(A=Math.min(A,this.to-this.pos)),this.nextInner(A,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}},Cw=class{constructor(A){this.inner=A,this.afterBreak=!0,this.value="",this.done=!1}next(A=0){let{done:e,lineBreak:i,value:n}=this.inner.next(A);return e&&this.afterBreak?(this.value="",this.afterBreak=!1):e?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=n,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<"u"&&(Jn.prototype[Symbol.iterator]=function(){return this.iter()},VI.prototype[Symbol.iterator]=gw.prototype[Symbol.iterator]=Cw.prototype[Symbol.iterator]=function(){return this});var e_=class{constructor(A,e,i,n){this.from=A,this.to=e,this.number=i,this.text=n}get length(){return this.to-this.from}};function xh(t,A,e){return A=Math.max(0,Math.min(t.length,A)),[A,Math.max(A,Math.min(t.length,e))]}function sr(t,A,e=!0,i=!0){return uZ(t,A,e,i)}function sEe(t){return t>=56320&&t<57344}function lEe(t){return t>=55296&&t<56320}function os(t,A){let e=t.charCodeAt(A);if(!lEe(e)||A+1==t.length)return e;let i=t.charCodeAt(A+1);return sEe(i)?(e-55296<<10)+(i-56320)+65536:e}function t4(t){return t<=65535?String.fromCharCode(t):(t-=65536,String.fromCharCode((t>>10)+55296,(t&1023)+56320))}function Pl(t){return t<65536?1:2}var A_=/\r\n?|\n/,ts=(function(t){return t[t.Simple=0]="Simple",t[t.TrackDel=1]="TrackDel",t[t.TrackBefore=2]="TrackBefore",t[t.TrackAfter=3]="TrackAfter",t})(ts||(ts={})),Vd=class t{constructor(A){this.sections=A}get length(){let A=0;for(let e=0;eA)return o+(A-n);o+=r}else{if(i!=ts.Simple&&l>=A&&(i==ts.TrackDel&&nA||i==ts.TrackBefore&&nA))return null;if(l>A||l==A&&e<0&&!r)return A==n||e<0?o:o+s;o+=s}n=l}if(A>n)throw new RangeError(`Position ${A} is out of range for changeset of length ${n}`);return o}touchesRange(A,e=A){for(let i=0,n=0;i=0&&n<=e&&r>=A)return ne?"cover":!0;n=r}return!1}toString(){let A="";for(let e=0;e=0?":"+n:"")}return A}toJSON(){return this.sections}static fromJSON(A){if(!Array.isArray(A)||A.length%2||A.some(e=>typeof e!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new t(A)}static create(A){return new t(A)}},is=class t extends Vd{constructor(A,e){super(A),this.inserted=e}apply(A){if(this.length!=A.length)throw new RangeError("Applying change set to a document with the wrong length");return t_(this,(e,i,n,o,a)=>A=A.replace(n,n+(i-e),a),!1),A}mapDesc(A,e=!1){return i_(this,A,e,!0)}invert(A){let e=this.sections.slice(),i=[];for(let n=0,o=0;n=0){e[n]=r,e[n+1]=a;let s=n>>1;for(;i.length0&&jd(i,e,o.text),o.forward(c),r+=c}let l=A[a++];for(;r>1].toJSON()))}return A}static of(A,e,i){let n=[],o=[],a=0,r=null;function s(c=!1){if(!c&&!n.length)return;ad||C<0||d>e)throw new RangeError(`Invalid change range ${C} to ${d} (in doc of length ${e})`);let E=B?typeof B=="string"?Jn.of(B.split(i||A_)):B:Jn.empty,u=E.length;if(C==d&&u==0)return;Ca&&Ss(n,C-a,-1),Ss(n,d-C,u),jd(o,n,E),a=d}}return l(A),s(!r),r}static empty(A){return new t(A?[A,-1]:[],[])}static fromJSON(A){if(!Array.isArray(A))throw new RangeError("Invalid JSON representation of ChangeSet");let e=[],i=[];for(let n=0;nr&&typeof a!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(o.length==1)e.push(o[0],0);else{for(;i.length=0&&e<=0&&e==t[n+1]?t[n]+=A:n>=0&&A==0&&t[n]==0?t[n+1]+=e:i?(t[n]+=A,t[n+1]+=e):t.push(A,e)}function jd(t,A,e){if(e.length==0)return;let i=A.length-2>>1;if(i>1])),!(e||a==t.sections.length||t.sections[a+1]<0);)r=t.sections[a++],s=t.sections[a++];A(n,l,o,c,C),n=l,o=c}}}function i_(t,A,e,i=!1){let n=[],o=i?[]:null,a=new qI(t),r=new qI(A);for(let s=-1;;){if(a.done&&r.len||r.done&&a.len)throw new Error("Mismatched change set lengths");if(a.ins==-1&&r.ins==-1){let l=Math.min(a.len,r.len);Ss(n,l,-1),a.forward(l),r.forward(l)}else if(r.ins>=0&&(a.ins<0||s==a.i||a.off==0&&(r.len=0&&s=0){let l=0,c=a.len;for(;c;)if(r.ins==-1){let C=Math.min(c,r.len);l+=C,c-=C,r.forward(C)}else if(r.ins==0&&r.lens||a.ins>=0&&a.len>s)&&(r||i.length>l),o.forward2(s),a.forward(s)}}}}var qI=class{constructor(A){this.set=A,this.i=0,this.next()}next(){let{sections:A}=this.set;this.i>1;return e>=A.length?Jn.empty:A[e]}textBit(A){let{inserted:e}=this.set,i=this.i-2>>1;return i>=e.length&&!A?Jn.empty:e[i].slice(this.off,A==null?void 0:this.off+A)}forward(A){A==this.len?this.next():(this.len-=A,this.off+=A)}forward2(A){this.ins==-1?this.forward(A):A==this.ins?this.next():(this.ins-=A,this.off+=A)}},Mh=class t{constructor(A,e,i){this.from=A,this.to=e,this.flags=i}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get bidiLevel(){let A=this.flags&7;return A==7?null:A}get goalColumn(){let A=this.flags>>6;return A==16777215?void 0:A}map(A,e=-1){let i,n;return this.empty?i=n=A.mapPos(this.from,e):(i=A.mapPos(this.from,1),n=A.mapPos(this.to,-1)),i==this.from&&n==this.to?this:new t(i,n,this.flags)}extend(A,e=A,i=0){if(A<=this.anchor&&e>=this.anchor)return uA.range(A,e,void 0,void 0,i);let n=Math.abs(A-this.anchor)>Math.abs(e-this.anchor)?A:e;return uA.range(this.anchor,n,void 0,void 0,i)}eq(A,e=!1){return this.anchor==A.anchor&&this.head==A.head&&this.goalColumn==A.goalColumn&&(!e||!this.empty||this.assoc==A.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(A){if(!A||typeof A.anchor!="number"||typeof A.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return uA.range(A.anchor,A.head)}static create(A,e,i){return new t(A,e,i)}},uA=class t{constructor(A,e){this.ranges=A,this.mainIndex=e}map(A,e=-1){return A.empty?this:t.create(this.ranges.map(i=>i.map(A,e)),this.mainIndex)}eq(A,e=!1){if(this.ranges.length!=A.ranges.length||this.mainIndex!=A.mainIndex)return!1;for(let i=0;iA.toJSON()),main:this.mainIndex}}static fromJSON(A){if(!A||!Array.isArray(A.ranges)||typeof A.main!="number"||A.main>=A.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new t(A.ranges.map(e=>Mh.fromJSON(e)),A.main)}static single(A,e=A){return new t([t.range(A,e)],0)}static create(A,e=0){if(A.length==0)throw new RangeError("A selection needs at least one range");for(let i=0,n=0;nn.from-o.from),e=A.indexOf(i);for(let n=1;no.head?t.range(s,r):t.range(r,s))}}return new t(A,e)}};function SZ(t,A){for(let e of t.ranges)if(e.to>A)throw new RangeError("Selection points outside of document")}var C_=0,lt=class t{constructor(A,e,i,n,o){this.combine=A,this.compareInput=e,this.compare=i,this.isStatic=n,this.id=C_++,this.default=A([]),this.extensions=typeof o=="function"?o(this):o}get reader(){return this}static define(A={}){return new t(A.combine||(e=>e),A.compareInput||((e,i)=>e===i),A.compare||(A.combine?(e,i)=>e===i:d_),!!A.static,A.enables)}of(A){return new kh([],this,0,A)}compute(A,e){if(this.isStatic)throw new Error("Can't compute a static facet");return new kh(A,this,1,e)}computeN(A,e){if(this.isStatic)throw new Error("Can't compute a static facet");return new kh(A,this,2,e)}from(A,e){return e||(e=i=>i),this.compute([A],i=>e(i.field(A)))}};function d_(t,A){return t==A||t.length==A.length&&t.every((e,i)=>e===A[i])}var kh=class{constructor(A,e,i,n){this.dependencies=A,this.facet=e,this.type=i,this.value=n,this.id=C_++}dynamicSlot(A){var e;let i=this.value,n=this.facet.compareInput,o=this.id,a=A[o]>>1,r=this.type==2,s=!1,l=!1,c=[];for(let C of this.dependencies)C=="doc"?s=!0:C=="selection"?l=!0:(((e=A[C.id])!==null&&e!==void 0?e:1)&1)==0&&c.push(A[C.id]);return{create(C){return C.values[a]=i(C),1},update(C,d){if(s&&d.docChanged||l&&(d.docChanged||d.selection)||n_(C,c)){let B=i(C);if(r?!fZ(B,C.values[a],n):!n(B,C.values[a]))return C.values[a]=B,1}return 0},reconfigure:(C,d)=>{let B,E=d.config.address[o];if(E!=null){let u=Bw(d,E);if(this.dependencies.every(m=>m instanceof lt?d.facet(m)===C.facet(m):m instanceof Oa?d.field(m,!1)==C.field(m,!1):!0)||(r?fZ(B=i(C),u,n):n(B=i(C),u)))return C.values[a]=u,0}else B=i(C);return C.values[a]=B,1}}}};function fZ(t,A,e){if(t.length!=A.length)return!1;for(let i=0;it[s.id]),n=e.map(s=>s.type),o=i.filter(s=>!(s&1)),a=t[A.id]>>1;function r(s){let l=[];for(let c=0;ci===n),A);return A.provide&&(e.provides=A.provide(e)),e}create(A){let e=A.facet(rw).find(i=>i.field==this);return(e?.create||this.createF)(A)}slot(A){let e=A[this.id]>>1;return{create:i=>(i.values[e]=this.create(i),1),update:(i,n)=>{let o=i.values[e],a=this.updateF(o,n);return this.compareF(o,a)?0:(i.values[e]=a,1)},reconfigure:(i,n)=>{let o=i.facet(rw),a=n.facet(rw),r;return(r=o.find(s=>s.field==this))&&r!=a.find(s=>s.field==this)?(i.values[e]=r.create(i),1):n.config.address[this.id]!=null?(i.values[e]=n.field(this),0):(i.values[e]=this.create(i),1)}}}init(A){return[this,rw.of({field:this,create:A})]}get extension(){return this}},PI={lowest:4,low:3,default:2,high:1,highest:0};function Wp(t){return A=>new dw(A,t)}var pg={highest:Wp(PI.highest),high:Wp(PI.high),default:Wp(PI.default),low:Wp(PI.low),lowest:Wp(PI.lowest)},dw=class{constructor(A,e){this.inner=A,this.prec=e}},b0=class t{of(A){return new $p(this,A)}reconfigure(A){return t.reconfigure.of({compartment:this,extension:A})}get(A){return A.config.compartments.get(this)}},$p=class{constructor(A,e){this.compartment=A,this.inner=e}},Iw=class t{constructor(A,e,i,n,o,a){for(this.base=A,this.compartments=e,this.dynamicSlots=i,this.address=n,this.staticValues=o,this.facets=a,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(A,e,i){let n=[],o=Object.create(null),a=new Map;for(let d of gEe(A,e,a))d instanceof Oa?n.push(d):(o[d.facet.id]||(o[d.facet.id]=[])).push(d);let r=Object.create(null),s=[],l=[];for(let d of n)r[d.id]=l.length<<1,l.push(B=>d.slot(B));let c=i?.config.facets;for(let d in o){let B=o[d],E=B[0].facet,u=c&&c[d]||[];if(B.every(m=>m.type==0))if(r[E.id]=s.length<<1|1,d_(u,B))s.push(i.facet(E));else{let m=E.combine(B.map(f=>f.value));s.push(i&&E.compare(m,i.facet(E))?i.facet(E):m)}else{for(let m of B)m.type==0?(r[m.id]=s.length<<1|1,s.push(m.value)):(r[m.id]=l.length<<1,l.push(f=>m.dynamicSlot(f)));r[E.id]=l.length<<1,l.push(m=>cEe(m,E,B))}}let C=l.map(d=>d(r));return new t(A,a,C,r,s,o)}};function gEe(t,A,e){let i=[[],[],[],[],[]],n=new Map;function o(a,r){let s=n.get(a);if(s!=null){if(s<=r)return;let l=i[s].indexOf(a);l>-1&&i[s].splice(l,1),a instanceof $p&&e.delete(a.compartment)}if(n.set(a,r),Array.isArray(a))for(let l of a)o(l,r);else if(a instanceof $p){if(e.has(a.compartment))throw new RangeError("Duplicate use of compartment in extensions");let l=A.get(a.compartment)||a.inner;e.set(a.compartment,l),o(l,r)}else if(a instanceof dw)o(a.inner,a.prec);else if(a instanceof Oa)i[r].push(a),a.provides&&o(a.provides,r);else if(a instanceof kh)i[r].push(a),a.facet.extensions&&o(a.facet.extensions,PI.default);else{let l=a.extension;if(!l)throw new Error(`Unrecognized extension value in extension set (${a}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);o(l,r)}}return o(t,PI.default),i.reduce((a,r)=>a.concat(r))}function Xp(t,A){if(A&1)return 2;let e=A>>1,i=t.status[e];if(i==4)throw new Error("Cyclic dependency between fields and/or facets");if(i&2)return i;t.status[e]=4;let n=t.computeSlot(t,t.config.dynamicSlots[e]);return t.status[e]=2|n}function Bw(t,A){return A&1?t.config.staticValues[A>>1]:t.values[A>>1]}var wZ=lt.define(),Xk=lt.define({combine:t=>t.some(A=>A),static:!0}),kZ=lt.define({combine:t=>t.length?t[0]:void 0,static:!0}),_Z=lt.define(),xZ=lt.define(),RZ=lt.define(),yZ=lt.define({combine:t=>t.length?t[0]:!1}),El=class{constructor(A,e){this.type=A,this.value=e}static define(){return new o_}},o_=class{of(A){return new El(this,A)}},a_=class{constructor(A){this.map=A}of(A){return new gn(this,A)}},gn=(()=>{class t{constructor(e,i){this.type=e,this.value=i}map(e){let i=this.type.map(this.value,e);return i===void 0?void 0:i==this.value?this:new t(this.type,i)}is(e){return this.type==e}static define(e={}){return new a_(e.map||(i=>i))}static mapEffects(e,i){if(!e.length)return e;let n=[];for(let o of e){let a=o.map(i);a&&n.push(a)}return n}}return t.reconfigure=t.define(),t.appendConfig=t.define(),t})(),D0=(()=>{class t{constructor(e,i,n,o,a,r){this.startState=e,this.changes=i,this.selection=n,this.effects=o,this.annotations=a,this.scrollIntoView=r,this._doc=null,this._state=null,n&&SZ(n,i.newLength),a.some(s=>s.type==t.time)||(this.annotations=a.concat(t.time.of(Date.now())))}static create(e,i,n,o,a,r){return new t(e,i,n,o,a,r)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let i of this.annotations)if(i.type==e)return i.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let i=this.annotation(t.userEvent);return!!(i&&(i==e||i.length>e.length&&i.slice(0,e.length)==e&&i[e.length]=="."))}}return t.time=El.define(),t.userEvent=El.define(),t.addToHistory=El.define(),t.remote=El.define(),t})();function CEe(t,A){let e=[];for(let i=0,n=0;;){let o,a;if(i=t[i]))o=t[i++],a=t[i++];else if(n=0;n--){let o=i[n](t);o instanceof D0?t=o:Array.isArray(o)&&o.length==1&&o[0]instanceof D0?t=o[0]:t=FZ(A,_h(o),!1)}return t}function IEe(t){let A=t.startState,e=A.facet(RZ),i=t;for(let n=e.length-1;n>=0;n--){let o=e[n](t);o&&Object.keys(o).length&&(i=NZ(i,r_(A,o,t.changes.newLength),!0))}return i==t?t:D0.create(A,t.changes,t.selection,i.effects,i.annotations,i.scrollIntoView)}var BEe=[];function _h(t){return t==null?BEe:Array.isArray(t)?t:[t]}var Aa=(function(t){return t[t.Word=0]="Word",t[t.Space=1]="Space",t[t.Other=2]="Other",t})(Aa||(Aa={})),hEe=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,s_;try{s_=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(t){}function uEe(t){if(s_)return s_.test(t);for(let A=0;A"\x80"&&(e.toUpperCase()!=e.toLowerCase()||hEe.test(e)))return!0}return!1}function EEe(t){return A=>{if(!/\S/.test(A))return Aa.Space;if(uEe(A))return Aa.Word;for(let e=0;e-1)return Aa.Word;return Aa.Other}}var lr=(()=>{class t{constructor(e,i,n,o,a,r){this.config=e,this.doc=i,this.selection=n,this.values=o,this.status=e.statusTemplate.slice(),this.computeSlot=a,r&&(r._state=this);for(let s=0;so.set(c,l)),i=null),o.set(s.value.compartment,s.value.extension)):s.is(gn.reconfigure)?(i=null,n=s.value):s.is(gn.appendConfig)&&(i=null,n=_h(n).concat(s.value));let a;i?a=e.startState.values.slice():(i=Iw.resolve(n,o,this),a=new t(i,this.doc,this.selection,i.dynamicSlots.map(()=>null),(l,c)=>c.reconfigure(l,this),null).values);let r=e.startState.facet(Xk)?e.newSelection:e.newSelection.asSingle();new t(i,e.newDoc,r,a,(s,l)=>l.update(s,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:e},range:uA.cursor(i.from+e.length)}))}changeByRange(e){let i=this.selection,n=e(i.ranges[0]),o=this.changes(n.changes),a=[n.range],r=_h(n.effects);for(let s=1;sr.spec.fromJSON(s,l)))}}return t.create({doc:e.doc,selection:uA.fromJSON(e.selection),extensions:i.extensions?o.concat([i.extensions]):o})}static create(e={}){let i=Iw.resolve(e.extensions||[],new Map),n=e.doc instanceof Jn?e.doc:Jn.of((e.doc||"").split(i.staticFacet(t.lineSeparator)||A_)),o=e.selection?e.selection instanceof uA?e.selection:uA.single(e.selection.anchor,e.selection.head):uA.single(0);return SZ(o,n.length),i.staticFacet(Xk)||(o=o.asSingle()),new t(i,n,o,i.dynamicSlots.map(()=>null),(a,r)=>r.create(a),null)}get tabSize(){return this.facet(t.tabSize)}get lineBreak(){return this.facet(t.lineSeparator)||` +`}get readOnly(){return this.facet(yZ)}phrase(e,...i){for(let n of this.facet(t.phrases))if(Object.prototype.hasOwnProperty.call(n,e)){e=n[e];break}return i.length&&(e=e.replace(/\$(\$|\d*)/g,(n,o)=>{if(o=="$")return"$";let a=+(o||1);return!a||a>i.length?n:i[a-1]})),e}languageDataAt(e,i,n=-1){let o=[];for(let a of this.facet(wZ))for(let r of a(this,i,n))Object.prototype.hasOwnProperty.call(r,e)&&o.push(r[e]);return o}charCategorizer(e){let i=this.languageDataAt("wordChars",e);return EEe(i.length?i[0]:"")}wordAt(e){let{text:i,from:n,length:o}=this.doc.lineAt(e),a=this.charCategorizer(e),r=e-n,s=e-n;for(;r>0;){let l=sr(i,r,!1);if(a(i.slice(l,r))!=Aa.Word)break;r=l}for(;sA.length?A[0]:4}),t.lineSeparator=kZ,t.readOnly=yZ,t.phrases=lt.define({compare(A,e){let i=Object.keys(A),n=Object.keys(e);return i.length==n.length&&i.every(o=>A[o]==e[o])}}),t.languageData=wZ,t.changeFilter=_Z,t.transactionFilter=xZ,t.transactionExtender=RZ,t})();b0.reconfigure=gn.define();function Jr(t,A,e={}){let i={};for(let n of t)for(let o of Object.keys(n)){let a=n[o],r=i[o];if(r===void 0)i[o]=a;else if(!(r===a||a===void 0))if(Object.hasOwnProperty.call(e,o))i[o]=e[o](r,a);else throw new Error("Config merge conflict for field "+o)}for(let n in A)i[n]===void 0&&(i[n]=A[n]);return i}var Dc=class{eq(A){return this==A}range(A,e=A){return e4.create(A,e,this)}};Dc.prototype.startSide=Dc.prototype.endSide=0;Dc.prototype.point=!1;Dc.prototype.mapMode=ts.TrackDel;function I_(t,A){return t==A||t.constructor==A.constructor&&t.eq(A)}var e4=class t{constructor(A,e,i){this.from=A,this.to=e,this.value=i}static create(A,e,i){return new t(A,e,i)}};function l_(t,A){return t.from-A.from||t.value.startSide-A.value.startSide}var c_=class t{constructor(A,e,i,n){this.from=A,this.to=e,this.value=i,this.maxPoint=n}get length(){return this.to[this.to.length-1]}findIndex(A,e,i,n=0){let o=i?this.to:this.from;for(let a=n,r=o.length;;){if(a==r)return a;let s=a+r>>1,l=o[s]-A||(i?this.value[s].endSide:this.value[s].startSide)-e;if(s==a)return l>=0?a:r;l>=0?r=s:a=s+1}}between(A,e,i,n){for(let o=this.findIndex(e,-1e9,!0),a=this.findIndex(i,1e9,!1,o);oB||d==B&&l.startSide>0&&l.endSide<=0)continue;(B-d||l.endSide-l.startSide)<0||(a<0&&(a=d),l.point&&(r=Math.max(r,B-d)),i.push(l),n.push(d-a),o.push(B-a))}return{mapped:i.length?new t(n,o,i,r):null,pos:a}}},po=(()=>{class t{constructor(e,i,n,o){this.chunkPos=e,this.chunk=i,this.nextLayer=n,this.maxPoint=o}static create(e,i,n,o){return new t(e,i,n,o)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let i of this.chunk)e+=i.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:i=[],sort:n=!1,filterFrom:o=0,filterTo:a=this.length}=e,r=e.filter;if(i.length==0&&!r)return this;if(n&&(i=i.slice().sort(l_)),this.isEmpty)return i.length?t.of(i):this;let s=new hw(this,null,-1).goto(0),l=0,c=[],C=new ns;for(;s.value||l=0){let d=i[l++];C.addInner(d.from,d.to,d.value)||c.push(d)}else s.rangeIndex==1&&s.chunkIndexthis.chunkEnd(s.chunkIndex)||as.to||a=a&&e<=a+r.length&&r.between(a,e-a,i-a,n)===!1)return}this.nextLayer.between(e,i,n)}}iter(e=0){return A4.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,i=0){return A4.from(e).goto(i)}static compare(e,i,n,o,a=-1){let r=e.filter(d=>d.maxPoint>0||!d.isEmpty&&d.maxPoint>=a),s=i.filter(d=>d.maxPoint>0||!d.isEmpty&&d.maxPoint>=a),l=vZ(r,s,n),c=new jI(r,l,a),C=new jI(s,l,a);n.iterGaps((d,B,E)=>DZ(c,d,C,B,E,o)),n.empty&&n.length==0&&DZ(c,0,C,0,0,o)}static eq(e,i,n=0,o){o==null&&(o=999999999);let a=e.filter(C=>!C.isEmpty&&i.indexOf(C)<0),r=i.filter(C=>!C.isEmpty&&e.indexOf(C)<0);if(a.length!=r.length)return!1;if(!a.length)return!0;let s=vZ(a,r),l=new jI(a,s,0).goto(n),c=new jI(r,s,0).goto(n);for(;;){if(l.to!=c.to||!g_(l.active,c.active)||l.point&&(!c.point||!I_(l.point,c.point)))return!1;if(l.to>o)return!0;l.next(),c.next()}}static spans(e,i,n,o,a=-1){let r=new jI(e,null,a).goto(i),s=i,l=r.openStart;for(;;){let c=Math.min(r.to,n);if(r.point){let C=r.activeForPoint(r.to),d=r.pointFroms&&(o.span(s,c,r.active,l),l=r.openEnd(c));if(r.to>n)return l+(r.point&&r.to>n?1:0);s=r.to,r.next()}}static of(e,i=!1){let n=new ns;for(let o of e instanceof e4?[e]:i?QEe(e):e)n.add(o.from,o.to,o.value);return n.finish()}static join(e){if(!e.length)return t.empty;let i=e[e.length-1];for(let n=e.length-2;n>=0;n--)for(let o=e[n];o!=t.empty;o=o.nextLayer)i=new t(o.chunkPos,o.chunk,i,Math.max(o.maxPoint,i.maxPoint));return i}}return t.empty=new t([],[],null,-1),t})();function QEe(t){if(t.length>1)for(let A=t[0],e=1;e0)return t.slice().sort(l_);A=i}return t}po.empty.nextLayer=po.empty;var ns=class t{finishChunk(A){this.chunks.push(new c_(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,A&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(A,e,i){this.addInner(A,e,i)||(this.nextLayer||(this.nextLayer=new t)).add(A,e,i)}addInner(A,e,i){let n=A-this.lastTo||i.startSide-this.last.endSide;if(n<=0&&(A-this.lastFrom||i.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return n<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=A),this.from.push(A-this.chunkStart),this.to.push(e-this.chunkStart),this.last=i,this.lastFrom=A,this.lastTo=e,this.value.push(i),i.point&&(this.maxPoint=Math.max(this.maxPoint,e-A)),!0)}addChunk(A,e){if((A-this.lastTo||e.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,e.maxPoint),this.chunks.push(e),this.chunkPos.push(A);let i=e.value.length-1;return this.last=e.value[i],this.lastFrom=e.from[i]+A,this.lastTo=e.to[i]+A,!0}finish(){return this.finishInner(po.empty)}finishInner(A){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return A;let e=po.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(A):A,this.setMaxPoint);return this.from=null,e}};function vZ(t,A,e){let i=new Map;for(let o of t)for(let a=0;a=this.minPoint)break}}setRangeIndex(A){if(A==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=i&&n.push(new hw(a,e,i,o));return n.length==1?n[0]:new t(n)}get startSide(){return this.value?this.value.startSide:0}goto(A,e=-1e9){for(let i of this.heap)i.goto(A,e);for(let i=this.heap.length>>1;i>=0;i--)$k(this.heap,i);return this.next(),this}forward(A,e){for(let i of this.heap)i.forward(A,e);for(let i=this.heap.length>>1;i>=0;i--)$k(this.heap,i);(this.to-A||this.value.endSide-e)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let A=this.heap[0];this.from=A.from,this.to=A.to,this.value=A.value,this.rank=A.rank,A.value&&A.next(),$k(this.heap,0)}}};function $k(t,A){for(let e=t[A];;){let i=(A<<1)+1;if(i>=t.length)break;let n=t[i];if(i+1=0&&(n=t[i+1],i++),e.compare(n)<0)break;t[i]=e,t[A]=n,A=i}}var jI=class{constructor(A,e,i){this.minPoint=i,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=A4.from(A,e,i)}goto(A,e=-1e9){return this.cursor.goto(A,e),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=A,this.endSide=e,this.openStart=-1,this.next(),this}forward(A,e){for(;this.minActive>-1&&(this.activeTo[this.minActive]-A||this.active[this.minActive].endSide-e)<0;)this.removeActive(this.minActive);this.cursor.forward(A,e)}removeActive(A){sw(this.active,A),sw(this.activeTo,A),sw(this.activeRank,A),this.minActive=bZ(this.active,this.activeTo)}addActive(A){let e=0,{value:i,to:n,rank:o}=this.cursor;for(;e0;)e++;lw(this.active,e,i),lw(this.activeTo,e,n),lw(this.activeRank,e,o),A&&lw(A,e,this.cursor.from),this.minActive=bZ(this.active,this.activeTo)}next(){let A=this.to,e=this.point;this.point=null;let i=this.openStart<0?[]:null;for(;;){let n=this.minActive;if(n>-1&&(this.activeTo[n]-this.cursor.from||this.active[n].endSide-this.cursor.startSide)<0){if(this.activeTo[n]>A){this.to=this.activeTo[n],this.endSide=this.active[n].endSide;break}this.removeActive(n),i&&sw(i,n)}else if(this.cursor.value)if(this.cursor.from>A){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let o=this.cursor.value;if(!o.point)this.addActive(i),this.cursor.next();else if(e&&this.cursor.to==this.to&&this.cursor.from=0&&i[n]=0&&!(this.activeRank[i]A||this.activeTo[i]==A&&this.active[i].endSide>=this.point.endSide)&&e.push(this.active[i]);return e.reverse()}openEnd(A){let e=0;for(let i=this.activeTo.length-1;i>=0&&this.activeTo[i]>A;i--)e++;return e}};function DZ(t,A,e,i,n,o){t.goto(A),e.goto(i);let a=i+n,r=i,s=i-A,l=!!o.boundChange;for(let c=!1;;){let C=t.to+s-e.to,d=C||t.endSide-e.endSide,B=d<0?t.to+s:e.to,E=Math.min(B,a);if(t.point||e.point?(t.point&&e.point&&I_(t.point,e.point)&&g_(t.activeForPoint(t.to),e.activeForPoint(e.to))||o.comparePoint(r,E,t.point,e.point),c=!1):(c&&o.boundChange(r),E>r&&!g_(t.active,e.active)&&o.compareRange(r,E,t.active,e.active),l&&Ea)break;r=B,d<=0&&t.next(),d>=0&&e.next()}}function g_(t,A){if(t.length!=A.length)return!1;for(let e=0;e=A;i--)t[i+1]=t[i];t[A]=e}function bZ(t,A){let e=-1,i=1e9;for(let n=0;n=A)return n;if(n==t.length)break;o+=t.charCodeAt(n)==9?e-o%e:1,n=sr(t,n)}return i===!0?-1:t.length}var LZ=typeof Symbol>"u"?"__\u037C":Symbol.for("\u037C"),B_=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),GZ=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},bc=class{constructor(A,e){this.rules=[];let{finish:i}=e||{};function n(a){return/^@/.test(a)?[a]:a.split(/,\s*/)}function o(a,r,s,l){let c=[],C=/^@(\w+)\b/.exec(a[0]),d=C&&C[1]=="keyframes";if(C&&r==null)return s.push(a[0]+";");for(let B in r){let E=r[B];if(/&/.test(B))o(B.split(/,\s*/).map(u=>a.map(m=>u.replace(/&/,m))).reduce((u,m)=>u.concat(m)),E,s);else if(E&&typeof E=="object"){if(!C)throw new RangeError("The value of a property ("+B+") should be a primitive value.");o(n(B),E,c,d)}else E!=null&&c.push(B.replace(/_.*/,"").replace(/[A-Z]/g,u=>"-"+u.toLowerCase())+": "+E+";")}(c.length||d)&&s.push((i&&!C&&!l?a.map(i):a).join(", ")+" {"+c.join(" ")+"}")}for(let a in A)o(n(a),A[a],this.rules)}getRules(){return this.rules.join(` +`)}static newName(){let A=GZ[LZ]||1;return GZ[LZ]=A+1,"\u037C"+A.toString(36)}static mount(A,e,i){let n=A[B_],o=i&&i.nonce;n?o&&n.setNonce(o):n=new h_(A,o),n.mount(Array.isArray(e)?e:[e],A)}},KZ=new Map,h_=class{constructor(A,e){let i=A.ownerDocument||A,n=i.defaultView;if(!A.head&&A.adoptedStyleSheets&&n.CSSStyleSheet){let o=KZ.get(i);if(o)return A[B_]=o;this.sheet=new n.CSSStyleSheet,KZ.set(i,this)}else this.styleTag=i.createElement("style"),e&&this.styleTag.setAttribute("nonce",e);this.modules=[],A[B_]=this}mount(A,e){let i=this.sheet,n=0,o=0;for(let a=0;a-1&&(this.modules.splice(s,1),o--,s=-1),s==-1){if(this.modules.splice(o++,0,r),i)for(let l=0;l",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},pEe=typeof navigator<"u"&&/Mac/.test(navigator.platform),mEe=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Br=0;Br<10;Br++)MC[48+Br]=MC[96+Br]=String(Br);var Br;for(Br=1;Br<=24;Br++)MC[Br+111]="F"+Br;var Br;for(Br=65;Br<=90;Br++)MC[Br]=String.fromCharCode(Br+32),Rh[Br]=String.fromCharCode(Br);var Br;for(Ew in MC)Rh.hasOwnProperty(Ew)||(Rh[Ew]=MC[Ew]);var Ew;function UZ(t){var A=pEe&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||mEe&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified",e=!A&&t.key||(t.shiftKey?Rh:MC)[t.keyCode]||t.key||"Unidentified";return e=="Esc"&&(e="Escape"),e=="Del"&&(e="Delete"),e=="Left"&&(e="ArrowLeft"),e=="Up"&&(e="ArrowUp"),e=="Right"&&(e="ArrowRight"),e=="Down"&&(e="ArrowDown"),e}function mo(){var t=arguments[0];typeof t=="string"&&(t=document.createElement(t));var A=1,e=arguments[1];if(e&&typeof e=="object"&&e.nodeType==null&&!Array.isArray(e)){for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var n=e[i];typeof n=="string"?t.setAttribute(i,n):n!=null&&(t[i]=n)}A++}for(;A2),ut={mac:zZ||/Mac/.test(Hs.platform),windows:/Win/.test(Hs.platform),linux:/Linux|X11/.test(Hs.platform),ie:Ww,ie_version:MW?M_.documentMode||6:k_?+k_[1]:S_?+S_[1]:0,gecko:OZ,gecko_version:OZ?+(/Firefox\/(\d+)/.exec(Hs.userAgent)||[0,0])[1]:0,chrome:!!u_,chrome_version:u_?+u_[1]:0,ios:zZ,android:/Android\b/.test(Hs.userAgent),webkit:JZ,webkit_version:JZ?+(/\bAppleWebKit\/(\d+)/.exec(Hs.userAgent)||[0,0])[1]:0,safari:__,safari_version:__?+(/\bVersion\/(\d+(\.\d+)?)/.exec(Hs.userAgent)||[0,0])[1]:0,tabSize:M_.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function fx(t,A){for(let e in t)e=="class"&&A.class?A.class+=" "+t.class:e=="style"&&A.style?A.style+=";"+t.style:A[e]=t[e];return A}var Rw=Object.create(null);function wx(t,A,e){if(t==A)return!0;t||(t=Rw),A||(A=Rw);let i=Object.keys(t),n=Object.keys(A);if(i.length-(e&&i.indexOf(e)>-1?1:0)!=n.length-(e&&n.indexOf(e)>-1?1:0))return!1;for(let o of i)if(o!=e&&(n.indexOf(o)==-1||t[o]!==A[o]))return!1;return!0}function fEe(t,A){for(let e=t.attributes.length-1;e>=0;e--){let i=t.attributes[e].name;A[i]==null&&t.removeAttribute(i)}for(let e in A){let i=A[e];e=="style"?t.style.cssText=i:t.getAttribute(e)!=i&&t.setAttribute(e,i)}}function YZ(t,A,e){let i=!1;if(A)for(let n in A)e&&n in e||(i=!0,n=="style"?t.style.cssText="":t.removeAttribute(n));if(e)for(let n in e)A&&A[n]==e[n]||(i=!0,n=="style"?t.style.cssText=e[n]:t.setAttribute(n,e[n]));return i}function wEe(t){let A=Object.create(null);for(let e=0;e0?3e8:-4e8:e>0?1e8:-1e8,new $I(A,e,e,i,A.widget||null,!1)}static replace(A){let e=!!A.block,i,n;if(A.isBlockGap)i=-5e8,n=4e8;else{let{start:o,end:a}=SW(A,e);i=(o?e?-3e8:-1:5e8)-1,n=(a?e?2e8:1:-6e8)+1}return new $I(A,i,n,e,A.widget||null,!0)}static line(A){return new h4(A)}static set(A,e=!1){return po.of(A,e)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}};Tt.none=po.empty;var B4=class t extends Tt{constructor(A){let{start:e,end:i}=SW(A);super(e?-1:5e8,i?1:-6e8,null,A),this.tagName=A.tagName||"span",this.attrs=A.class&&A.attributes?fx(A.attributes,{class:A.class}):A.class?{class:A.class}:A.attributes||Rw}eq(A){return this==A||A instanceof t&&this.tagName==A.tagName&&wx(this.attrs,A.attrs)}range(A,e=A){if(A>=e)throw new RangeError("Mark decorations may not be empty");return super.range(A,e)}};B4.prototype.point=!1;var h4=class t extends Tt{constructor(A){super(-2e8,-2e8,null,A)}eq(A){return A instanceof t&&this.spec.class==A.spec.class&&wx(this.spec.attributes,A.spec.attributes)}range(A,e=A){if(e!=A)throw new RangeError("Line decoration ranges must be zero-length");return super.range(A,e)}};h4.prototype.mapMode=ts.TrackBefore;h4.prototype.point=!0;var $I=class t extends Tt{constructor(A,e,i,n,o,a){super(e,i,o,A),this.block=n,this.isReplace=a,this.mapMode=n?e<=0?ts.TrackBefore:ts.TrackAfter:ts.TrackDel}get type(){return this.startSide!=this.endSide?as.WidgetRange:this.startSide<=0?as.WidgetBefore:as.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(A){return A instanceof t&&yEe(this.widget,A.widget)&&this.block==A.block&&this.startSide==A.startSide&&this.endSide==A.endSide}range(A,e=A){if(this.isReplace&&(A>e||A==e&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&e!=A)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(A,e)}};$I.prototype.point=!0;function SW(t,A=!1){let{inclusiveStart:e,inclusiveEnd:i}=t;return e==null&&(e=t.inclusive),i==null&&(i=t.inclusive),{start:e??A,end:i??A}}function yEe(t,A){return t==A||!!(t&&A&&t.compare(A))}function Uh(t,A,e,i=0){let n=e.length-1;n>=0&&e[n]+i>=t?e[n]=Math.max(e[n],A):e.push(t,A)}var Nw=class t extends Dc{constructor(A,e){super(),this.tagName=A,this.attributes=e}eq(A){return A==this||A instanceof t&&this.tagName==A.tagName&&wx(this.attributes,A.attributes)}static create(A){return new t(A.tagName,A.attributes||Rw)}static set(A,e=!1){return po.of(A,e)}};Nw.prototype.startSide=Nw.prototype.endSide=-1;function u4(t){let A;return t.nodeType==11?A=t.getSelection?t:t.ownerDocument:A=t,A.getSelection()}function x_(t,A){return A?t==A||t.contains(A.nodeType!=1?A.parentNode:A):!1}function a4(t,A){if(!A.anchorNode)return!1;try{return x_(t,A.anchorNode)}catch(e){return!1}}function Mw(t){return t.nodeType==3?E4(t,0,t.nodeValue.length).getClientRects():t.nodeType==1?t.getClientRects():[]}function r4(t,A,e,i){return e?HZ(t,A,e,i,-1)||HZ(t,A,e,i,1):!1}function Wd(t){for(var A=0;;A++)if(t=t.previousSibling,!t)return A}function Fw(t){return t.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(t.nodeName)}function HZ(t,A,e,i,n){for(;;){if(t==e&&A==i)return!0;if(A==(n<0?0:_C(t))){if(t.nodeName=="DIV")return!1;let o=t.parentNode;if(!o||o.nodeType!=1)return!1;A=Wd(t)+(n<0?0:1),t=o}else if(t.nodeType==1){if(t=t.childNodes[A+(n<0?-1:0)],t.nodeType==1&&t.contentEditable=="false")return!1;A=n<0?_C(t):0}else return!1}}function _C(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function Lw(t,A){let e=A?t.left:t.right;return{left:e,right:e,top:t.top,bottom:t.bottom}}function vEe(t){let A=t.visualViewport;return A?{left:0,right:A.width,top:0,bottom:A.height}:{left:0,right:t.innerWidth,top:0,bottom:t.innerHeight}}function kW(t,A){let e=A.width/t.offsetWidth,i=A.height/t.offsetHeight;return(e>.995&&e<1.005||!isFinite(e)||Math.abs(A.width-t.offsetWidth)<1)&&(e=1),(i>.995&&i<1.005||!isFinite(i)||Math.abs(A.height-t.offsetHeight)<1)&&(i=1),{scaleX:e,scaleY:i}}function DEe(t,A,e,i,n,o,a,r){let s=t.ownerDocument,l=s.defaultView||window;for(let c=t,C=!1;c&&!C;)if(c.nodeType==1){let d,B=c==s.body,E=1,u=1;if(B)d=vEe(l);else{if(/^(fixed|sticky)$/.test(getComputedStyle(c).position)&&(C=!0),c.scrollHeight<=c.clientHeight&&c.scrollWidth<=c.clientWidth){c=c.assignedSlot||c.parentNode;continue}let D=c.getBoundingClientRect();({scaleX:E,scaleY:u}=kW(c,D)),d={left:D.left,right:D.left+c.clientWidth*E,top:D.top,bottom:D.top+c.clientHeight*u}}let m=0,f=0;if(n=="nearest")A.top0&&A.bottom>d.bottom+f&&(f=A.bottom-d.bottom+a)):A.bottom>d.bottom&&(f=A.bottom-d.bottom+a,e<0&&A.top-f0&&A.right>d.right+m&&(m=A.right-d.right+o)):A.right>d.right&&(m=A.right-d.right+o,e<0&&A.leftd.bottom||A.leftd.right)&&(A={left:Math.max(A.left,d.left),right:Math.min(A.right,d.right),top:Math.max(A.top,d.top),bottom:Math.min(A.bottom,d.bottom)}),c=c.assignedSlot||c.parentNode}else if(c.nodeType==11)c=c.host;else break}function _W(t,A=!0){let e=t.ownerDocument,i=null,n=null;for(let o=t.parentNode;o&&!(o==e.body||(!A||i)&&n);)if(o.nodeType==1)!n&&o.scrollHeight>o.clientHeight&&(n=o),A&&!i&&o.scrollWidth>o.clientWidth&&(i=o),o=o.assignedSlot||o.parentNode;else if(o.nodeType==11)o=o.host;else break;return{x:i,y:n}}var R_=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(A){return this.anchorNode==A.anchorNode&&this.anchorOffset==A.anchorOffset&&this.focusNode==A.focusNode&&this.focusOffset==A.focusOffset}setRange(A){let{anchorNode:e,focusNode:i}=A;this.set(e,Math.min(A.anchorOffset,e?_C(e):0),i,Math.min(A.focusOffset,i?_C(i):0))}set(A,e,i,n){this.anchorNode=A,this.anchorOffset=e,this.focusNode=i,this.focusOffset=n}},ZI=null;ut.safari&&ut.safari_version>=26&&(ZI=!1);function xW(t){if(t.setActive)return t.setActive();if(ZI)return t.focus(ZI);let A=[];for(let e=t;e&&(A.push(e,e.scrollTop,e.scrollLeft),e!=e.ownerDocument);e=e.parentNode);if(t.focus(ZI==null?{get preventScroll(){return ZI={preventScroll:!0},!0}}:void 0),!ZI){ZI=!1;for(let e=0;eMath.max(0,t.document.documentElement.scrollHeight-t.innerHeight-4):t.scrollTop>Math.max(1,t.scrollHeight-t.clientHeight-4)}function NW(t,A){for(let e=t,i=A;;){if(e.nodeType==3&&i>0)return{node:e,offset:i};if(e.nodeType==1&&i>0){if(e.contentEditable=="false")return null;e=e.childNodes[i-1],i=_C(e)}else if(e.parentNode&&!Fw(e))i=Wd(e),e=e.parentNode;else return null}}function FW(t,A){for(let e=t,i=A;;){if(e.nodeType==3&&i=e){if(r.level==i)return a;(o<0||(n!=0?n<0?r.frome:A[o].level>r.level))&&(o=a)}}if(o<0)throw new RangeError("Index out of range");return o}};function KW(t,A){if(t.length!=A.length)return!1;for(let e=0;e=0;u-=3)if(M0[u+1]==-B){let m=M0[u+2],f=m&2?n:m&4?m&1?o:n:0;f&&(da[C]=da[M0[u]]=f),r=u;break}}else{if(M0.length==189)break;M0[r++]=C,M0[r++]=d,M0[r++]=s}else if((E=da[C])==2||E==1){let u=E==n;s=u?0:1;for(let m=r-3;m>=0;m-=3){let f=M0[m+2];if(f&2)break;if(u)M0[m+2]|=2;else{if(f&4)break;M0[m+2]|=4}}}}}function NEe(t,A,e,i){for(let n=0,o=i;n<=e.length;n++){let a=n?e[n-1].to:t,r=ns;)E==m&&(E=e[--u].from,m=u?e[u-1].to:t),da[--E]=B;s=c}else o=l,s++}}}function F_(t,A,e,i,n,o,a){let r=i%2?2:1;if(i%2==n%2)for(let s=A,l=0;ss&&a.push(new kc(s,u.from,B));let m=u.direction==e1!=!(B%2);L_(t,m?i+1:i,n,u.inner,u.from,u.to,a),s=u.to}E=u.to}else{if(E==e||(c?da[E]!=r:da[E]==r))break;E++}d?F_(t,s,E,i+1,n,d,a):sA;){let c=!0,C=!1;if(!l||s>o[l-1].to){let u=da[s-1];u!=r&&(c=!1,C=u==16)}let d=!c&&r==1?[]:null,B=c?i:i+1,E=s;e:for(;;)if(l&&E==o[l-1].to){if(C)break e;let u=o[--l];if(!c)for(let m=u.from,f=l;;){if(m==A)break e;if(f&&o[f-1].to==m)m=o[--f].from;else{if(da[m-1]==r)break e;break}}if(d)d.push(u);else{u.toda.length;)da[da.length]=256;let i=[],n=A==e1?0:1;return L_(t,n,n,e,0,t.length,i),i}function UW(t){return[new kc(0,t,0)]}var TW="";function LEe(t,A,e,i,n){var o;let a=i.head-t.from,r=kc.find(A,a,(o=i.bidiLevel)!==null&&o!==void 0?o:-1,i.assoc),s=A[r],l=s.side(n,e);if(a==l){let d=r+=n?1:-1;if(d<0||d>=A.length)return null;s=A[r=d],a=s.side(!n,e),l=s.side(n,e)}let c=sr(t.text,a,s.forward(n,e));(cs.to)&&(c=l),TW=t.text.slice(Math.min(a,c),Math.max(a,c));let C=r==(n?A.length-1:0)?null:A[r+(n?1:-1)];return C&&c==l&&C.level+(n?0:1)t.some(A=>A)}),jW=lt.define({combine:t=>t.some(A=>A)}),VW=lt.define(),s4=class t{constructor(A,e="nearest",i="nearest",n=5,o=5,a=!1){this.range=A,this.y=e,this.x=i,this.yMargin=n,this.xMargin=o,this.isSnapshot=a}map(A){return A.empty?this:new t(this.range.map(A),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(A){return this.range.to<=A.doc.length?this:new t(uA.cursor(A.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},Qw=gn.define({map:(t,A)=>t.map(A)}),qW=gn.define();function zr(t,A,e){let i=t.facet(YW);i.length?i[0](A):window.onerror&&window.onerror(String(A),e,void 0,void 0,A)||(e?console.error(e+":",A):console.error(A))}var SC=lt.define({combine:t=>t.length?t[0]:!0}),KEe=0,Fh=lt.define({combine(t){return t.filter((A,e)=>{for(let i=0;i{let s=[];return a&&s.push(Xw.of(l=>{let c=l.plugin(r);return c?a(c):Tt.none})),o&&s.push(o(r)),s})}static fromClass(A,e){return t.define((i,n)=>new A(i,n),e)}},l4=class{constructor(A){this.spec=A,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(A){if(this.value){if(this.mustUpdate){let e=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(e)}catch(i){if(zr(e.state,i,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(n){}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(A,this.spec.arg)}catch(e){zr(A.state,e,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(A){var e;if(!((e=this.value)===null||e===void 0)&&e.destroy)try{this.value.destroy()}catch(i){zr(A.state,i,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},VZ=lt.define(),G_=lt.define(),Xw=lt.define(),ZW=lt.define(),bx=lt.define(),Q4=lt.define(),WW=lt.define();function qZ(t,A){let e=t.state.facet(WW);if(!e.length)return e;let i=e.map(o=>o instanceof Function?o(t):o),n=[];return po.spans(i,A.from,A.to,{point(){},span(o,a,r,s){let l=o-A.from,c=a-A.from,C=n;for(let d=r.length-1;d>=0;d--,s--){let B=r[d].spec.bidiIsolate,E;if(B==null&&(B=GEe(A.text,l,c)),s>0&&C.length&&(E=C[C.length-1]).to==l&&E.direction==B)E.to=c,C=E.inner;else{let u={from:l,to:c,direction:B,inner:[]};C.push(u),C=u.inner}}}}),n}var XW=lt.define();function Mx(t){let A=0,e=0,i=0,n=0;for(let o of t.state.facet(XW)){let a=o(t);a&&(a.left!=null&&(A=Math.max(A,a.left)),a.right!=null&&(e=Math.max(e,a.right)),a.top!=null&&(i=Math.max(i,a.top)),a.bottom!=null&&(n=Math.max(n,a.bottom)))}return{left:A,right:e,top:i,bottom:n}}var i4=lt.define(),fg=class t{constructor(A,e,i,n){this.fromA=A,this.toA=e,this.fromB=i,this.toB=n}join(A){return new t(Math.min(this.fromA,A.fromA),Math.max(this.toA,A.toA),Math.min(this.fromB,A.fromB),Math.max(this.toB,A.toB))}addToSet(A){let e=A.length,i=this;for(;e>0;e--){let n=A[e-1];if(!(n.fromA>i.toA)){if(n.toAn.push(new fg(o,a,r,s))),this.changedRanges=n}static create(A,e,i){return new t(A,e,i)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(A=>A.selection)}get empty(){return this.flags==0&&this.transactions.length==0}},UEe=[],La=class{constructor(A,e,i=0){this.dom=A,this.length=e,this.flags=i,this.parent=null,A.cmTile=this}get breakAfter(){return this.flags&1}get children(){return UEe}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(A){if(this.flags|=2,this.flags&4){this.flags&=-5;let e=this.domAttrs;e&&fEe(this.dom,e)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(A){this.dom=A,A.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(A,e=this.posAtStart){let i=e;for(let n of this.children){if(n==A)return i;i+=n.length+n.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(A){return this.posBefore(A)+A.length}covers(A){return!0}coordsIn(A,e){return null}domPosFor(A,e){let i=Wd(this.dom),n=this.length?A>0:e>0;return new S0(this.parent.dom,i+(n?1:0),A==0||A==this.length)}markDirty(A){this.flags&=-3,A&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let A=this;A;A=A.parent)if(A instanceof Jh)return A;return null}static get(A){return A.cmTile}},Oh=class extends La{constructor(A){super(A,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(A){this.children.push(A),A.parent=this}sync(A){if(this.flags&2)return;super.sync(A);let e=this.dom,i=null,n,o=A?.node==e?A:null,a=0;for(let r of this.children){if(r.sync(A),a+=r.length+r.breakAfter,n=i?i.nextSibling:e.firstChild,o&&n!=r.dom&&(o.written=!0),r.dom.parentNode==e)for(;n&&n!=r.dom;)n=ZZ(n);else e.insertBefore(r.dom,n);i=r.dom}for(n=i?i.nextSibling:e.firstChild,o&&n&&(o.written=!0);n;)n=ZZ(n);this.length=a}};function ZZ(t){let A=t.nextSibling;return t.parentNode.removeChild(t),A}var Jh=class extends Oh{constructor(A,e){super(e),this.view=A}owns(A){for(;A;A=A.parent)if(A==this)return!0;return!1}isBlock(){return!0}nearest(A){for(;;){if(!A)return null;let e=La.get(A);if(e&&this.owns(e))return e;A=A.parentNode}}blockTiles(A){for(let e=[],i=this,n=0,o=0;;)if(n==i.children.length){if(!e.length)return;i=i.parent,i.breakAfter&&o++,n=e.pop()}else{let a=i.children[n++];if(a instanceof kC)e.push(n),i=a,n=0;else{let r=o+a.length,s=A(a,o);if(s!==void 0)return s;o=r+a.breakAfter}}}resolveBlock(A,e){let i,n=-1,o,a=-1;if(this.blockTiles((r,s)=>{let l=s+r.length;if(A>=s&&A<=l){if(r.isWidget()&&e>=-1&&e<=1){if(r.flags&32)return!0;r.flags&16&&(i=void 0)}(sA||A==s&&(e>1?r.length:r.covers(-1)))&&(!o||!r.isWidget()&&o.isWidget())&&(o=r,a=A-s)}}),!i&&!o)throw new Error("No tile at position "+A);return i&&e<0||!o?{tile:i,offset:n}:{tile:o,offset:a}}},kC=class t extends Oh{constructor(A,e){super(A),this.wrapper=e}isBlock(){return!0}covers(A){return this.children.length?A<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(A,e){let i=new t(e||document.createElement(A.tagName),A);return e||(i.flags|=4),i}},zh=class t extends Oh{constructor(A,e){super(A),this.attrs=e}isLine(){return!0}static start(A,e,i){let n=new t(e||document.createElement("div"),A);return(!e||!i)&&(n.flags|=4),n}get domAttrs(){return this.attrs}resolveInline(A,e,i){let n=null,o=-1,a=null,r=-1;function s(c,C){for(let d=0,B=0;d=C&&(E.isComposite()?s(E,C-B):(!a||a.isHidden&&(e>0||i&&OEe(a,E)))&&(u>C||E.flags&32)?(a=E,r=C-B):(Bi&&(A=i);let n=A,o=A,a=0;A==0&&e<0||A==i&&e>=0?ut.chrome||ut.gecko||(A?(n--,a=1):o=0)?0:r.length-1];return ut.safari&&!a&&s.width==0&&(s=Array.prototype.find.call(r,l=>l.width)||s),a?Lw(s,a<0):s||null}static of(A,e){let i=new t(e||document.createTextNode(A),A);return e||(i.flags|=2),i}},A1=class t extends La{constructor(A,e,i,n){super(A,e,n),this.widget=i}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(A){return this.flags&48?!1:(this.flags&(A<0?64:128))>0}coordsIn(A,e){return this.coordsInWidget(A,e,!1)}coordsInWidget(A,e,i){let n=this.widget.coordsAt(this.dom,A,e);if(n)return n;if(i)return Lw(this.dom.getBoundingClientRect(),this.length?A==0:e<=0);{let o=this.dom.getClientRects(),a=null;if(!o.length)return null;let r=this.flags&16?!0:this.flags&32?!1:A>0;for(let s=r?o.length-1:0;a=o[s],!(A>0?s==0:s==o.length-1||a.top0;)if(n.isComposite())if(a){if(!A)break;i&&i.break(),A--,a=!1}else if(o==n.children.length){if(!A&&!r.length)break;i&&i.leave(n),a=!!n.breakAfter,{tile:n,index:o}=r.pop(),o++}else{let s=n.children[o],l=s.breakAfter;(e>0?s.length<=A:s.length=0;r--){let s=e.marks[r],l=n.lastChild;if(l instanceof Ql&&l.mark.eq(s.mark))l.dom!=s.dom&&l.setDOM(Q_(s.dom)),n=l;else{if(this.cache.reused.get(s)){let C=La.get(s.dom);C&&C.setDOM(Q_(s.dom))}let c=Ql.of(s.mark,s.dom);n.append(c),n=c}this.cache.reused.set(s,2)}let o=La.get(A.text);o&&this.cache.reused.set(o,2);let a=new WI(A.text,A.text.nodeValue);a.flags|=8,n.append(a)}addInlineWidget(A,e,i){let n=this.afterWidget&&A.flags&48&&(this.afterWidget.flags&48)==(A.flags&48);n||this.flushBuffer();let o=this.ensureMarks(e,i);!n&&!(A.flags&16)&&o.append(this.getBuffer(1)),o.append(A),this.pos+=A.length,this.afterWidget=A}addMark(A,e,i){this.flushBuffer(),this.ensureMarks(e,i).append(A),this.pos+=A.length,this.afterWidget=null}addBlockWidget(A){this.getBlockPos().append(A),this.pos+=A.length,this.lastBlock=A,this.endLine()}continueWidget(A){let e=this.afterWidget||this.lastBlock;e.length+=A,this.pos+=A}addLineStart(A,e){var i;A||(A=$W);let n=zh.start(A,e||((i=this.cache.find(zh))===null||i===void 0?void 0:i.dom),!!e);this.getBlockPos().append(this.lastBlock=this.curLine=n)}addLine(A){this.getBlockPos().append(A),this.pos+=A.length,this.lastBlock=A,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(A){this.blockPosCovered()||this.addLineStart(A)}ensureLine(A){this.curLine||this.addLineStart(A)}ensureMarks(A,e){var i;let n=this.curLine;for(let o=A.length-1;o>=0;o--){let a=A[o],r;if(e>0&&(r=n.lastChild)&&r instanceof Ql&&r.mark.eq(a))n=r,e--;else{let s=Ql.of(a,(i=this.cache.find(Ql,l=>l.mark.eq(a)))===null||i===void 0?void 0:i.dom);n.append(s),n=s,e=0}}return n}endLine(){if(this.curLine){this.flushBuffer();let A=this.curLine.lastChild;(!A||!WZ(this.curLine,!1)||A.dom.nodeName!="BR"&&A.isWidget()&&!(ut.ios&&WZ(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(p_,0,32)||new A1(p_.toDOM(),0,p_,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let A=this.wrappers.length-1;A>=0;A--)this.wrappers[A].to=this.pos){let e=new U_(A.from,A.to,A.value,A.rank),i=this.wrappers.length;for(;i>0&&(this.wrappers[i-1].rank-e.rank||this.wrappers[i-1].to-e.to)<0;)i--;this.wrappers.splice(i,0,e)}this.wrapperPos=this.pos}getBlockPos(){var A;this.updateBlockWrappers();let e=this.root;for(let i of this.wrappers){let n=e.lastChild;if(i.froma.wrapper.eq(i.wrapper)))===null||A===void 0?void 0:A.dom);e.append(o),e=o}}return e}blockPosCovered(){let A=this.lastBlock;return A!=null&&!A.breakAfter&&(!A.isWidget()||(A.flags&160)>0)}getBuffer(A){let e=2|(A<0?16:32),i=this.cache.find(Yh,void 0,1);return i&&(i.flags=e),i||new Yh(e)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},O_=class{constructor(A){this.skipCount=0,this.text="",this.textOff=0,this.cursor=A.iter()}skip(A){this.textOff+A<=this.text.length?this.textOff+=A:(this.skipCount+=A-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(A){if(this.textOff==this.text.length){let{value:n,lineBreak:o,done:a}=this.cursor.next(this.skipCount);if(this.skipCount=0,a)throw new Error("Ran out of text content when drawing inline views");this.text=n;let r=this.textOff=Math.min(A,n.length);return o?null:n.slice(0,r)}let e=Math.min(this.text.length,this.textOff+A),i=this.text.slice(this.textOff,e);return this.textOff=e,i}},Kw=[A1,zh,WI,Ql,Yh,kC,Jh];for(let t=0;t[]),this.index=Kw.map(()=>0),this.reused=new Map}add(A){let e=A.constructor.bucket,i=this.buckets[e];i.length<6?i.push(A):i[this.index[e]=(this.index[e]+1)%6]=A}find(A,e,i=2){let n=A.bucket,o=this.buckets[n],a=this.index[n];for(let r=o.length-1;r>=0;r--){let s=(r+a)%o.length,l=o[s];if((!e||e(l))&&!this.reused.has(l))return o.splice(s,1),s{if(this.cache.add(a),a.isComposite())return!1},enter:a=>this.cache.add(a),leave:()=>{},break:()=>{}}}run(A,e){let i=e&&this.getCompositionContext(e.text);for(let n=0,o=0,a=0;;){let r=an){let l=s-n;this.preserve(l,!a,!r),n=s,o+=l}if(!r)break;e&&r.fromA<=e.range.fromA&&r.toA>=e.range.toA?(this.forward(r.fromA,e.range.fromA,e.range.fromA{if(a.isWidget())if(this.openWidget)this.builder.continueWidget(s-r);else{let l=s>0||r{a.isLine()?this.builder.addLineStart(a.attrs,this.cache.maybeReuse(a)):(this.cache.add(a),a instanceof Ql&&n.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?n.length&&(n.length=o=0):a instanceof Ql&&(n.shift(),o=Math.min(o,n.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(A)}emit(A,e){let i=null,n=this.builder,o=0,a=po.spans(this.decorations,A,e,{point:(r,s,l,c,C,d)=>{if(l instanceof $I){if(this.disallowBlockEffectsFor[d]){if(l.block)throw new RangeError("Block decorations may not be specified via plugins");if(s>this.view.state.doc.lineAt(r).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(o=c.length,C>c.length)n.continueWidget(s-r);else{let B=l.widget||(l.block?XZ.block:XZ.inline),E=JEe(l),u=this.cache.findWidget(B,s-r,E)||A1.of(B,this.view,s-r,E);l.block?(l.startSide>0&&n.addLineStartIfNotCovered(i),n.addBlockWidget(u)):(n.ensureLine(i),n.addInlineWidget(u,c,C))}i=null}else i=zEe(i,l);s>r&&this.text.skip(s-r)},span:(r,s,l,c)=>{for(let C=r;Co,this.openMarks=a}forward(A,e,i=1){e-A<=10?this.old.advance(e-A,i,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(e-A-10,-1),this.old.advance(5,i,this.reuseWalker))}getCompositionContext(A){let e=[],i=null;for(let n=A.parentNode;;n=n.parentNode){let o=La.get(n);if(n==this.view.contentDOM)break;o instanceof Ql?e.push(o):o?.isLine()?i=o:o instanceof kC||(n.nodeName=="DIV"&&!i&&n!=this.view.contentDOM?i=new zh(n,$W):i||e.push(Ql.of(new B4({tagName:n.nodeName.toLowerCase(),attributes:wEe(n)}),n)))}return{line:i,marks:e}}};function WZ(t,A){let e=i=>{for(let n of i.children)if((A?n.isText():n.length)||e(n))return!0;return!1};return e(t)}function JEe(t){let A=t.isReplace?(t.startSide<0?64:0)|(t.endSide>0?128:0):t.startSide>0?32:16;return t.block&&(A|=256),A}var $W={class:"cm-line"};function zEe(t,A){let e=A.spec.attributes,i=A.spec.class;return!e&&!i||(t||(t={class:"cm-line"}),e&&fx(e,t),i&&(t.class+=" "+i)),t}function YEe(t){let A=[];for(let e=t.parents.length;e>1;e--){let i=e==t.parents.length?t.tile:t.parents[e].tile;i instanceof Ql&&A.push(i.mark)}return A}function Q_(t){let A=La.get(t);return A&&A.setDOM(t.cloneNode()),t}var XZ=(()=>{class t extends pl{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}return t.inline=new t("span"),t.block=new t("div"),t})(),p_=new class extends pl{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},Uw=class{constructor(A){this.view=A,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=Tt.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new Jh(A,A.contentDOM),this.updateInner([new fg(0,0,0,A.state.doc.length)],null)}update(A){var e;let i=A.changedRanges;this.minWidth>0&&i.length&&(i.every(({fromA:c,toA:C})=>Cthis.minWidthTo)?(this.minWidthFrom=A.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=A.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(A);let n=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((e=this.domChanged)===null||e===void 0)&&e.newSel?n=this.domChanged.newSel.head:!XEe(A.changes,this.hasComposition)&&!A.selectionSet&&(n=A.state.selection.main.head));let o=n>-1?PEe(this.view,A.changes,n):null;if(this.domChanged=null,this.hasComposition){let{from:c,to:C}=this.hasComposition;i=new fg(c,C,A.changes.mapPos(c,-1),A.changes.mapPos(C,1)).addToSet(i.slice())}this.hasComposition=o?{from:o.range.fromB,to:o.range.toB}:null,(ut.ie||ut.chrome)&&!o&&A&&A.state.doc.lines!=A.startState.doc.lines&&(this.forceSelection=!0);let a=this.decorations,r=this.blockWrappers;this.updateDeco();let s=qEe(a,this.decorations,A.changes);s.length&&(i=fg.extendWithRanges(i,s));let l=ZEe(r,this.blockWrappers,A.changes);return l.length&&(i=fg.extendWithRanges(i,l)),o&&!i.some(c=>c.fromA<=o.range.fromA&&c.toA>=o.range.toA)&&(i=o.range.addToSet(i.slice())),this.tile.flags&2&&i.length==0?!1:(this.updateInner(i,o),A.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(A,e){this.view.viewState.mustMeasureContent=!0;let{observer:i}=this.view;i.ignore(()=>{if(e||A.length){let a=this.tile,r=new z_(this.view,a,this.blockWrappers,this.decorations,this.dynamicDecorationMap);e&&La.get(e.text)&&r.cache.reused.set(La.get(e.text),2),this.tile=r.run(A,e),Y_(a,r.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let o=ut.chrome||ut.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(o),o&&(o.written||i.selectionRange.focusNode!=o.node||!this.tile.dom.contains(o.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let n=[];if(this.view.viewport.from||this.view.viewport.to-1)&&a4(i,this.view.observer.selectionRange)&&!(n&&i.contains(n));if(!(o||e||a))return;let r=this.forceSelection;this.forceSelection=!1;let s=this.view.state.selection.main,l,c;if(s.empty?c=l=this.inlineDOMNearPos(s.anchor,s.assoc||1):(c=this.inlineDOMNearPos(s.head,s.head==s.from?1:-1),l=this.inlineDOMNearPos(s.anchor,s.anchor==s.from?1:-1)),ut.gecko&&s.empty&&!this.hasComposition&&HEe(l)){let d=document.createTextNode("");this.view.observer.ignore(()=>l.node.insertBefore(d,l.node.childNodes[l.offset]||null)),l=c=new S0(d,0),r=!0}let C=this.view.observer.selectionRange;(r||!C.focusNode||(!r4(l.node,l.offset,C.anchorNode,C.anchorOffset)||!r4(c.node,c.offset,C.focusNode,C.focusOffset))&&!this.suppressWidgetCursorChange(C,s))&&(this.view.observer.ignore(()=>{ut.android&&ut.chrome&&i.contains(C.focusNode)&&WEe(C.focusNode,i)&&(i.blur(),i.focus({preventScroll:!0}));let d=u4(this.view.root);if(d)if(s.empty){if(ut.gecko){let B=jEe(l.node,l.offset);if(B&&B!=3){let E=(B==1?NW:FW)(l.node,l.offset);E&&(l=new S0(E.node,E.offset))}}d.collapse(l.node,l.offset),s.bidiLevel!=null&&d.caretBidiLevel!==void 0&&(d.caretBidiLevel=s.bidiLevel)}else if(d.extend){d.collapse(l.node,l.offset);try{d.extend(c.node,c.offset)}catch(B){}}else{let B=document.createRange();s.anchor>s.head&&([l,c]=[c,l]),B.setEnd(c.node,c.offset),B.setStart(l.node,l.offset),d.removeAllRanges(),d.addRange(B)}a&&this.view.root.activeElement==i&&(i.blur(),n&&n.focus())}),this.view.observer.setSelectionRange(l,c)),this.impreciseAnchor=l.precise?null:new S0(C.anchorNode,C.anchorOffset),this.impreciseHead=c.precise?null:new S0(C.focusNode,C.focusOffset)}suppressWidgetCursorChange(A,e){return this.hasComposition&&e.empty&&r4(A.focusNode,A.focusOffset,A.anchorNode,A.anchorOffset)&&this.posFromDOM(A.focusNode,A.focusOffset)==e.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:A}=this,e=A.state.selection.main,i=u4(A.root),{anchorNode:n,anchorOffset:o}=A.observer.selectionRange;if(!i||!e.empty||!e.assoc||!i.modify)return;let a=this.lineAt(e.head,e.assoc);if(!a)return;let r=a.posAtStart;if(e.head==r||e.head==r+a.length)return;let s=this.coordsAt(e.head,-1),l=this.coordsAt(e.head,1);if(!s||!l||s.bottom>l.top)return;let c=this.domAtPos(e.head+e.assoc,e.assoc);i.collapse(c.node,c.offset),i.modify("move",e.assoc<0?"forward":"backward","lineboundary"),A.observer.readSelectionRange();let C=A.observer.selectionRange;A.docView.posFromDOM(C.anchorNode,C.anchorOffset)!=e.from&&i.collapse(n,o)}posFromDOM(A,e){let i=this.tile.nearest(A);if(!i)return this.tile.dom.compareDocumentPosition(A)&2?0:this.view.state.doc.length;let n=i.posAtStart;if(i.isComposite()){let o;if(A==i.dom)o=i.dom.childNodes[e];else{let a=_C(A)==0?0:e==0?-1:1;for(;;){let r=A.parentNode;if(r==i.dom)break;a==0&&r.firstChild!=r.lastChild&&(A==r.firstChild?a=-1:a=1),A=r}a<0?o=A:o=A.nextSibling}if(o==i.dom.firstChild)return n;for(;o&&!La.get(o);)o=o.nextSibling;if(!o)return n+i.length;for(let a=0,r=n;;a++){let s=i.children[a];if(s.dom==o)return r;r+=s.length+s.breakAfter}}else return i.isText()?A==i.dom?n+e:n+(e?i.length:0):n}domAtPos(A,e){let{tile:i,offset:n}=this.tile.resolveBlock(A,e);return i.isWidget()?i.domPosFor(A,e):i.domIn(n,e)}inlineDOMNearPos(A,e){let i,n=-1,o=!1,a,r=-1,s=!1;return this.tile.blockTiles((l,c)=>{if(l.isWidget()){if(l.flags&32&&c>=A)return!0;l.flags&16&&(o=!0)}else{let C=c+l.length;if(c<=A&&(i=l,n=A-c,o=C=A&&!a&&(a=l,r=A-c,s=c>A),c>A&&a)return!0}}),!i&&!a?this.domAtPos(A,e):(o&&a?i=null:s&&i&&(a=null),i&&e<0||!a?i.domIn(n,e):a.domIn(r,e))}coordsAt(A,e){let{tile:i,offset:n}=this.tile.resolveBlock(A,e);return i.isWidget()?i.widget instanceof c4?null:i.coordsInWidget(n,e,!0):i.coordsIn(n,e)}lineAt(A,e){let{tile:i}=this.tile.resolveBlock(A,e);return i.isLine()?i:null}coordsForChar(A){let{tile:e,offset:i}=this.tile.resolveBlock(A,1);if(!e.isLine())return null;function n(o,a){if(o.isComposite())for(let r of o.children){if(r.length>=a){let s=n(r,a);if(s)return s}if(a-=r.length,a<0)break}else if(o.isText()&&aMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,r=-1,s=this.view.textDirection==Go.LTR,l=0,c=(C,d,B)=>{for(let E=0;En);E++){let u=C.children[E],m=d+u.length,f=u.dom.getBoundingClientRect(),{height:D}=f;if(B&&!E&&(l+=f.top-B.top),u instanceof kC)m>i&&c(u,d,f);else if(d>=i&&(l>0&&e.push(-l),e.push(D+l),l=0,a)){let S=u.dom.lastChild,k=S?Mw(S):[];if(k.length){let b=k[k.length-1],x=s?b.right-f.left:f.right-b.left;x>r&&(r=x,this.minWidth=o,this.minWidthFrom=d,this.minWidthTo=m)}}B&&E==C.children.length-1&&(l+=B.bottom-f.bottom),d=m+u.breakAfter}};return c(this.tile,0,null),e}textDirectionAt(A){let{tile:e}=this.tile.resolveBlock(A,1);return getComputedStyle(e.dom).direction=="rtl"?Go.RTL:Go.LTR}measureTextSize(){let A=this.tile.blockTiles(a=>{if(a.isLine()&&a.children.length&&a.length<=20){let r=0,s;for(let l of a.children){if(!l.isText()||/[^ -~]/.test(l.text))return;let c=Mw(l.dom);if(c.length!=1)return;r+=c[0].width,s=c[0].height}if(r)return{lineHeight:a.dom.getBoundingClientRect().height,charWidth:r/a.length,textHeight:s}}});if(A)return A;let e=document.createElement("div"),i,n,o;return e.className="cm-line",e.style.width="99999px",e.style.position="absolute",e.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(e);let a=Mw(e.firstChild)[0];i=e.getBoundingClientRect().height,n=a&&a.width?a.width/27:7,o=a&&a.height?a.height:i,e.remove()}),{lineHeight:i,charWidth:n,textHeight:o}}computeBlockGapDeco(){let A=[],e=this.view.viewState;for(let i=0,n=0;;n++){let o=n==e.viewports.length?null:e.viewports[n],a=o?o.from-1:this.view.state.doc.length;if(a>i){let r=(e.lineBlockAt(a).bottom-e.lineBlockAt(i).top)/this.view.scaleY;A.push(Tt.replace({widget:new c4(r),block:!0,inclusive:!0,isBlockGap:!0}).range(i,a))}if(!o)break;i=o.to+1}return Tt.set(A)}updateDeco(){let A=1,e=this.view.state.facet(Xw).map(o=>(this.dynamicDecorationMap[A++]=typeof o=="function")?o(this.view):o),i=!1,n=this.view.state.facet(bx).map((o,a)=>{let r=typeof o=="function";return r&&(i=!0),r?o(this.view):o});for(n.length&&(this.dynamicDecorationMap[A++]=i,e.push(po.join(n))),this.decorations=[this.editContextFormatting,...e,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];Atypeof o=="function"?o(this.view):o)}scrollIntoView(A){var e;if(A.isSnapshot){let c=this.view.viewState.lineBlockAt(A.range.head);this.view.scrollDOM.scrollTop=c.top-A.yMargin,this.view.scrollDOM.scrollLeft=A.xMargin;return}for(let c of this.view.state.facet(VW))try{if(c(this.view,A.range,A))return!0}catch(C){zr(this.view.state,C,"scroll handler")}let{range:i}=A,n=this.coordsAt(i.head,(e=i.assoc)!==null&&e!==void 0?e:i.empty?0:i.head>i.anchor?-1:1),o;if(!n)return;!i.empty&&(o=this.coordsAt(i.anchor,i.anchor>i.head?-1:1))&&(n={left:Math.min(n.left,o.left),top:Math.min(n.top,o.top),right:Math.max(n.right,o.right),bottom:Math.max(n.bottom,o.bottom)});let a=Mx(this.view),r={left:n.left-a.left,top:n.top-a.top,right:n.right+a.right,bottom:n.bottom+a.bottom},{offsetWidth:s,offsetHeight:l}=this.view.scrollDOM;if(DEe(this.view.scrollDOM,r,i.head1&&(n.top>window.pageYOffset+window.visualViewport.offsetTop+window.visualViewport.height||n.bottomi.isWidget()||i.children.some(e);return e(this.tile.resolveBlock(A,1).tile)}destroy(){Y_(this.tile)}};function Y_(t,A){let e=A?.get(t);if(e!=1){e==null&&t.destroy();for(let i of t.children)Y_(i,A)}}function HEe(t){return t.node.nodeType==1&&t.node.firstChild&&(t.offset==0||t.node.childNodes[t.offset-1].contentEditable=="false")&&(t.offset==t.node.childNodes.length||t.node.childNodes[t.offset].contentEditable=="false")}function eX(t,A){let e=t.observer.selectionRange;if(!e.focusNode)return null;let i=NW(e.focusNode,e.focusOffset),n=FW(e.focusNode,e.focusOffset),o=i||n;if(n&&i&&n.node!=i.node){let r=La.get(n.node);if(!r||r.isText()&&r.text!=n.node.nodeValue)o=n;else if(t.docView.lastCompositionAfterCursor){let s=La.get(i.node);!s||s.isText()&&s.text!=i.node.nodeValue||(o=n)}}if(t.docView.lastCompositionAfterCursor=o!=i,!o)return null;let a=A-o.offset;return{from:a,to:a+o.node.nodeValue.length,node:o.node}}function PEe(t,A,e){let i=eX(t,e);if(!i)return null;let{node:n,from:o,to:a}=i,r=n.nodeValue;if(/[\n\r]/.test(r)||t.state.doc.sliceString(i.from,i.to)!=r)return null;let s=A.invertedDesc;return{range:new fg(s.mapPos(o),s.mapPos(a),o,a),text:n}}function jEe(t,A){return t.nodeType!=1?0:(A&&t.childNodes[A-1].contentEditable=="false"?1:0)|(A{iA.from&&(e=!0)}),e}var c4=class extends pl{constructor(A){super(),this.height=A}toDOM(){let A=document.createElement("div");return A.className="cm-gap",this.updateDOM(A),A}eq(A){return A.height==this.height}updateDOM(A){return A.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}};function $Ee(t,A,e=1){let i=t.charCategorizer(A),n=t.doc.lineAt(A),o=A-n.from;if(n.length==0)return uA.cursor(A);o==0?e=1:o==n.length&&(e=-1);let a=o,r=o;e<0?a=sr(n.text,o,!1):r=sr(n.text,o);let s=i(n.text.slice(a,r));for(;a>0;){let l=sr(n.text,a,!1);if(i(n.text.slice(l,a))!=s)break;a=l}for(;rt.defaultLineHeight*1.5){let r=t.viewState.heightOracle.textHeight,s=Math.floor((n-e.top-(t.defaultLineHeight-r)*.5)/r);o+=s*t.viewState.heightOracle.lineLength}let a=t.state.sliceDoc(e.from,e.to);return e.from+uw(a,o,t.state.tabSize)}function P_(t,A,e){let i=t.lineBlockAt(A);if(Array.isArray(i.type)){let n;for(let o of i.type){if(o.from>A)break;if(!(o.toA)return o;(!n||o.type==as.Text&&(n.type!=o.type||(e<0?o.fromA)))&&(n=o)}}return n||i}return i}function AQe(t,A,e,i){let n=P_(t,A.head,A.assoc||-1),o=!i||n.type!=as.Text||!(t.lineWrapping||n.widgetLineBreaks)?null:t.coordsAtPos(A.assoc<0&&A.head>n.from?A.head-1:A.head);if(o){let a=t.dom.getBoundingClientRect(),r=t.textDirectionAt(n.from),s=t.posAtCoords({x:e==(r==Go.LTR)?a.right-1:a.left+1,y:(o.top+o.bottom)/2});if(s!=null)return uA.cursor(s,e?-1:1)}return uA.cursor(e?n.to:n.from,e?-1:1)}function $Z(t,A,e,i){let n=t.state.doc.lineAt(A.head),o=t.bidiSpans(n),a=t.textDirectionAt(n.from);for(let r=A,s=null;;){let l=LEe(n,o,a,r,e),c=TW;if(!l){if(n.number==(e?t.state.doc.lines:1))return r;c=` +`,n=t.state.doc.line(n.number+(e?1:-1)),o=t.bidiSpans(n),l=t.visualLineSide(n,!e)}if(s){if(!s(c))return r}else{if(!i)return l;s=i(c)}r=l}}function tQe(t,A,e){let i=t.state.charCategorizer(A),n=i(e);return o=>{let a=i(o);return n==Aa.Space&&(n=a),n==a}}function iQe(t,A,e,i){let n=A.head,o=e?1:-1;if(n==(e?t.state.doc.length:0))return uA.cursor(n,A.assoc);let a=A.goalColumn,r,s=t.contentDOM.getBoundingClientRect(),l=t.coordsAtPos(n,A.assoc||((A.empty?e:A.head==A.from)?1:-1)),c=t.documentTop;if(l)a==null&&(a=l.left-s.left),r=o<0?l.top:l.bottom;else{let E=t.viewState.lineBlockAt(n);a==null&&(a=Math.min(s.right-s.left,t.defaultCharacterWidth*(n-E.from))),r=(o<0?E.top:E.bottom)+c}let C=s.left+a,d=t.viewState.heightOracle.textHeight>>1,B=i??d;for(let E=0;;E+=d){let u=r+(B+E)*o,m=j_(t,{x:C,y:u},!1,o);if(e?u>s.bottom:ur:D{if(A>o&&An(t)),e.from,A.head>e.from?-1:1);return i==e.from?e:uA.cursor(i,it.viewState.docHeight)return new Sc(t.state.doc.length,-1);if(l=t.elementAtHeight(s),i==null)break;if(l.type==as.Text){if(i<0?l.tot.viewport.to)break;let d=t.docView.coordsAt(i<0?l.from:l.to,i>0?-1:1);if(d&&(i<0?d.top<=s+o:d.bottom>=s+o))break}let C=t.viewState.heightOracle.textHeight/2;s=i>0?l.bottom+C:l.top-C}if(t.viewport.from>=l.to||t.viewport.to<=l.from){if(e)return null;if(l.type==as.Text){let C=eQe(t,n,l,a,r);return new Sc(C,C==l.from?1:-1)}}if(l.type!=as.Text)return s<(l.top+l.bottom)/2?new Sc(l.from,1):new Sc(l.to,-1);let c=t.docView.lineAt(l.from,2);return(!c||c.length!=l.length)&&(c=t.docView.lineAt(l.from,-2)),new V_(t,a,r,t.textDirectionAt(l.from)).scanTile(c,l.from)}var V_=class{constructor(A,e,i,n){this.view=A,this.x=e,this.y=i,this.baseDir=n,this.line=null,this.spans=null}bidiSpansAt(A){return(!this.line||this.line.from>A||this.line.to1||i.length&&(i[0].level!=this.baseDir||i[0].to+n.from>1;A:if(o.has(E)){let m=i+Math.floor(Math.random()*B);for(let f=0;f1)){if(f.bottomthis.y)(!s||s.top>f.top)&&(s=f),D=-1;else{let S=f.left>this.x?this.x-f.left:f.right(C.left+C.right)/2==d}}scanText(A,e){let i=[];for(let o=0;o{let a=i[o]-e,r=i[o+1]-e;return E4(A.dom,a,r).getClientRects()});return n.after?new Sc(i[n.i+1],-1):new Sc(i[n.i],1)}scanTile(A,e){if(!A.length)return new Sc(e,1);if(A.children.length==1){let r=A.children[0];if(r.isText())return this.scanText(r,e);if(r.isComposite())return this.scanTile(r,e)}let i=[e];for(let r=0,s=e;r{let s=A.children[r];return s.flags&48?null:(s.dom.nodeType==1?s.dom:E4(s.dom,0,s.length)).getClientRects()}),o=A.children[n.i],a=i[n.i];return o.isText()?this.scanText(o,a):o.isComposite()?this.scanTile(o,a):n.after?new Sc(i[n.i+1],-1):new Sc(a,1)}},Nh="\uFFFF",q_=class{constructor(A,e){this.points=A,this.view=e,this.text="",this.lineSeparator=e.state.facet(lr.lineSeparator)}append(A){this.text+=A}lineBreak(){this.text+=Nh}readRange(A,e){if(!A)return this;let i=A.parentNode;for(let n=A;;){this.findPointBefore(i,n);let o=this.text.length;this.readNode(n);let a=La.get(n),r=n.nextSibling;if(r==e){a?.breakAfter&&!r&&i!=this.view.contentDOM&&this.lineBreak();break}let s=La.get(r);(a&&s?a.breakAfter:(a?a.breakAfter:Fw(n))||Fw(r)&&(n.nodeName!="BR"||a?.isWidget())&&this.text.length>o)&&!oQe(r,e)&&this.lineBreak(),n=r}return this.findPointBefore(i,e),this}readTextNode(A){let e=A.nodeValue;for(let i of this.points)i.node==A&&(i.pos=this.text.length+Math.min(i.offset,e.length));for(let i=0,n=this.lineSeparator?null:/\r\n?|\n/g;;){let o=-1,a=1,r;if(this.lineSeparator?(o=e.indexOf(this.lineSeparator,i),a=this.lineSeparator.length):(r=n.exec(e))&&(o=r.index,a=r[0].length),this.append(e.slice(i,o<0?e.length:o)),o<0)break;if(this.lineBreak(),a>1)for(let s of this.points)s.node==A&&s.pos>this.text.length&&(s.pos-=a-1);i=o+a}}readNode(A){let e=La.get(A),i=e&&e.overrideDOMText;if(i!=null){this.findPointInside(A,i.length);for(let n=i.iter();!n.next().done;)n.lineBreak?this.lineBreak():this.append(n.value)}else A.nodeType==3?this.readTextNode(A):A.nodeName=="BR"?A.nextSibling&&this.lineBreak():A.nodeType==1&&this.readRange(A.firstChild,null)}findPointBefore(A,e){for(let i of this.points)i.node==A&&A.childNodes[i.offset]==e&&(i.pos=this.text.length)}findPointInside(A,e){for(let i of this.points)(A.nodeType==3?i.node==A:A.contains(i.node))&&(i.pos=this.text.length+(nQe(A,i.node,i.offset)?e:0))}};function nQe(t,A,e){for(;;){if(!A||e<_C(A))return!1;if(A==t)return!0;e=Wd(A)+1,A=A.parentNode}}function oQe(t,A){let e;for(;!(t==A||!t);t=t.nextSibling){let i=La.get(t);if(!i?.isWidget())return!1;i&&(e||(e=[])).push(i)}if(e)for(let i of e){let n=i.overrideDOMText;if(n?.length)return!1}return!0}var Tw=class{constructor(A,e){this.node=A,this.offset=e,this.pos=-1}},Z_=class{constructor(A,e,i,n){this.typeOver=n,this.bounds=null,this.text="",this.domChanged=e>-1;let{impreciseHead:o,impreciseAnchor:a}=A.docView,r=A.state.selection;if(A.state.readOnly&&e>-1)this.newSel=null;else if(e>-1&&(this.bounds=tX(A.docView.tile,e,i,0))){let s=o||a?[]:rQe(A),l=new q_(s,A);l.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=l.text,this.newSel=sQe(s,this.bounds.from)}else{let s=A.observer.selectionRange,l=o&&o.node==s.focusNode&&o.offset==s.focusOffset||!x_(A.contentDOM,s.focusNode)?r.main.head:A.docView.posFromDOM(s.focusNode,s.focusOffset),c=a&&a.node==s.anchorNode&&a.offset==s.anchorOffset||!x_(A.contentDOM,s.anchorNode)?r.main.anchor:A.docView.posFromDOM(s.anchorNode,s.anchorOffset),C=A.viewport;if((ut.ios||ut.chrome)&&r.main.empty&&l!=c&&(C.from>0||C.to-1&&r.ranges.length>1)this.newSel=r.replaceRange(uA.range(c,l));else if(A.lineWrapping&&c==l&&!(r.main.empty&&r.main.head==l)&&A.inputState.lastTouchTime>Date.now()-100){let d=A.coordsAtPos(l,-1),B=0;d&&(B=A.inputState.lastTouchY<=d.bottom?-1:1),this.newSel=uA.create([uA.cursor(l,B)])}else this.newSel=uA.single(c,l)}}};function tX(t,A,e,i){if(t.isComposite()){let n=-1,o=-1,a=-1,r=-1;for(let s=0,l=i,c=i;se)return tX(C,A,e,l);if(d>=A&&n==-1&&(n=s,o=l),l>e&&C.dom.parentNode==t.dom){a=s,r=c;break}c=d,l=d+C.breakAfter}return{from:o,to:r<0?i+t.length:r,startDOM:(n?t.children[n-1].dom.nextSibling:null)||t.dom.firstChild,endDOM:a=0?t.children[a].dom:null}}else return t.isText()?{from:i,to:i+t.length,startDOM:t.dom,endDOM:t.dom.nextSibling}:null}function iX(t,A){let e,{newSel:i}=A,{state:n}=t,o=n.selection.main,a=t.inputState.lastKeyTime>Date.now()-100?t.inputState.lastKeyCode:-1;if(A.bounds){let{from:r,to:s}=A.bounds,l=o.from,c=null;(a===8||ut.android&&A.text.length=r&&o.to<=s&&(A.typeOver||C!=A.text)&&C.slice(0,o.from-r)==A.text.slice(0,o.from-r)&&C.slice(o.to-r)==A.text.slice(d=A.text.length-(C.length-(o.to-r)))?e={from:o.from,to:o.to,insert:Jn.of(A.text.slice(o.from-r,d).split(Nh))}:(B=nX(C,A.text,l-r,c))&&(ut.chrome&&a==13&&B.toB==B.from+2&&A.text.slice(B.from,B.toB)==Nh+Nh&&B.toB--,e={from:r+B.from,to:r+B.toA,insert:Jn.of(A.text.slice(B.from,B.toB).split(Nh))})}else i&&(!t.hasFocus&&n.facet(SC)||Ow(i,o))&&(i=null);if(!e&&!i)return!1;if((ut.mac||ut.android)&&e&&e.from==e.to&&e.from==o.head-1&&/^\. ?$/.test(e.insert.toString())&&t.contentDOM.getAttribute("autocorrect")=="off"?(i&&e.insert.length==2&&(i=uA.single(i.main.anchor-1,i.main.head-1)),e={from:e.from,to:e.to,insert:Jn.of([e.insert.toString().replace("."," ")])}):n.doc.lineAt(o.from).toDate.now()-50?e={from:o.from,to:o.to,insert:n.toText(t.inputState.insertingText)}:ut.chrome&&e&&e.from==e.to&&e.from==o.head&&e.insert.toString()==` + `&&t.lineWrapping&&(i&&(i=uA.single(i.main.anchor-1,i.main.head-1)),e={from:o.from,to:o.to,insert:Jn.of([" "])}),e)return Sx(t,e,i,a);if(i&&!Ow(i,o)){let r=!1,s="select";return t.inputState.lastSelectionTime>Date.now()-50&&(t.inputState.lastSelectionOrigin=="select"&&(r=!0),s=t.inputState.lastSelectionOrigin,s=="select.pointer"&&(i=AX(n.facet(Q4).map(l=>l(t)),i))),t.dispatch({selection:i,scrollIntoView:r,userEvent:s}),!0}else return!1}function Sx(t,A,e,i=-1){if(ut.ios&&t.inputState.flushIOSKey(A))return!0;let n=t.state.selection.main;if(ut.android&&(A.to==n.to&&(A.from==n.from||A.from==n.from-1&&t.state.sliceDoc(A.from,n.from)==" ")&&A.insert.length==1&&A.insert.lines==2&&Th(t.contentDOM,"Enter",13)||(A.from==n.from-1&&A.to==n.to&&A.insert.length==0||i==8&&A.insert.lengthn.head)&&Th(t.contentDOM,"Backspace",8)||A.from==n.from&&A.to==n.to+1&&A.insert.length==0&&Th(t.contentDOM,"Delete",46)))return!0;let o=A.insert.toString();t.inputState.composing>=0&&t.inputState.composing++;let a,r=()=>a||(a=aQe(t,A,e));return t.state.facet(HW).some(s=>s(t,A.from,A.to,o,r))||t.dispatch(r()),!0}function aQe(t,A,e){let i,n=t.state,o=n.selection.main,a=-1;if(A.from==A.to&&A.fromo.to){let s=A.fromC(t)),l,s);A.from==c&&(a=c)}if(a>-1)i={changes:A,selection:uA.cursor(A.from+A.insert.length,-1)};else if(A.from>=o.from&&A.to<=o.to&&A.to-A.from>=(o.to-o.from)/3&&(!e||e.main.empty&&e.main.from==A.from+A.insert.length)&&t.inputState.composing<0){let s=o.fromA.to?n.sliceDoc(A.to,o.to):"";i=n.replaceSelection(t.state.toText(s+A.insert.sliceString(0,void 0,t.state.lineBreak)+l))}else{let s=n.changes(A),l=e&&e.main.to<=s.newLength?e.main:void 0;if(n.selection.ranges.length>1&&(t.inputState.composing>=0||t.inputState.compositionPendingChange)&&A.to<=o.to+10&&A.to>=o.to-10){let c=t.state.sliceDoc(A.from,A.to),C,d=e&&eX(t,e.main.head);if(d){let E=A.insert.length-(A.to-A.from);C={from:d.from,to:d.to-E}}else C=t.state.doc.lineAt(o.head);let B=o.to-A.to;i=n.changeByRange(E=>{if(E.from==o.from&&E.to==o.to)return{changes:s,range:l||E.map(s)};let u=E.to-B,m=u-c.length;if(t.state.sliceDoc(m,u)!=c||u>=C.from&&m<=C.to)return{range:E};let f=n.changes({from:m,to:u,insert:A.insert}),D=E.to-o.to;return{changes:f,range:l?uA.range(Math.max(0,l.anchor+D),Math.max(0,l.head+D)):E.map(f)}})}else i={changes:s,selection:l&&n.selection.replaceRange(l)}}let r="input.type";return(t.composing||t.inputState.compositionPendingChange&&t.inputState.compositionEndedAt>Date.now()-50)&&(t.inputState.compositionPendingChange=!1,r+=".compose",t.inputState.compositionFirstChange&&(r+=".start",t.inputState.compositionFirstChange=!1)),n.update(i,{userEvent:r,scrollIntoView:!0})}function nX(t,A,e,i){let n=Math.min(t.length,A.length),o=0;for(;o0&&r>0&&t.charCodeAt(a-1)==A.charCodeAt(r-1);)a--,r--;if(i=="end"){let s=Math.max(0,o-Math.min(a,r));e-=a+s-o}if(a=a?o-e:0;o-=s,r=o+(r-a),a=o}else if(r=r?o-e:0;o-=s,a=o+(a-r),r=o}return{from:o,toA:a,toB:r}}function rQe(t){let A=[];if(t.root.activeElement!=t.contentDOM)return A;let{anchorNode:e,anchorOffset:i,focusNode:n,focusOffset:o}=t.observer.selectionRange;return e&&(A.push(new Tw(e,i)),(n!=e||o!=i)&&A.push(new Tw(n,o))),A}function sQe(t,A){if(t.length==0)return null;let e=t[0].pos,i=t.length==2?t[1].pos:e;return e>-1&&i>-1?uA.single(e+A,i+A):null}function Ow(t,A){return A.head==t.main.head&&A.anchor==t.main.anchor}var W_=class{setSelectionOrigin(A){this.lastSelectionOrigin=A,this.lastSelectionTime=Date.now()}constructor(A){this.view=A,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=A.hasFocus,ut.safari&&A.contentDOM.addEventListener("input",()=>null),ut.gecko&&fQe(A.contentDOM.ownerDocument)}handleEvent(A){!BQe(this.view,A)||this.ignoreDuringComposition(A)||A.type=="keydown"&&this.keydown(A)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(A.type,A)):this.runHandlers(A.type,A))}runHandlers(A,e){let i=this.handlers[A];if(i){for(let n of i.observers)n(this.view,e);for(let n of i.handlers){if(e.defaultPrevented)break;if(n(this.view,e)){e.preventDefault();break}}}}ensureHandlers(A){let e=lQe(A),i=this.handlers,n=this.view.contentDOM;for(let o in e)if(o!="scroll"){let a=!e[o].handlers.length,r=i[o];r&&a!=!r.handlers.length&&(n.removeEventListener(o,this.handleEvent),r=null),r||n.addEventListener(o,this.handleEvent,{passive:a})}for(let o in i)o!="scroll"&&!e[o]&&n.removeEventListener(o,this.handleEvent);this.handlers=e}keydown(A){if(this.lastKeyCode=A.keyCode,this.lastKeyTime=Date.now(),A.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&A.keyCode!=27&&aX.indexOf(A.keyCode)<0&&(this.tabFocusMode=-1),ut.android&&ut.chrome&&!A.synthetic&&(A.keyCode==13||A.keyCode==8))return this.view.observer.delayAndroidKey(A.key,A.keyCode),!0;let e;return ut.ios&&!A.synthetic&&!A.altKey&&!A.metaKey&&!A.shiftKey&&((e=oX.find(i=>i.keyCode==A.keyCode))&&!A.ctrlKey||cQe.indexOf(A.key)>-1&&A.ctrlKey)?(this.pendingIOSKey=e||A,setTimeout(()=>this.flushIOSKey(),250),!0):(A.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(A){let e=this.pendingIOSKey;return!e||e.key=="Enter"&&A&&A.from0?!0:ut.safari&&!ut.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(A){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=A}update(A){this.view.observer.update(A),this.mouseSelection&&this.mouseSelection.update(A),this.draggedContent&&A.docChanged&&(this.draggedContent=this.draggedContent.map(A.changes)),A.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}};function eW(t,A){return(e,i)=>{try{return A.call(t,i,e)}catch(n){zr(e.state,n)}}}function lQe(t){let A=Object.create(null);function e(i){return A[i]||(A[i]={observers:[],handlers:[]})}for(let i of t){let n=i.spec,o=n&&n.plugin.domEventHandlers,a=n&&n.plugin.domEventObservers;if(o)for(let r in o){let s=o[r];s&&e(r).handlers.push(eW(i.value,s))}if(a)for(let r in a){let s=a[r];s&&e(r).observers.push(eW(i.value,s))}}for(let i in wg)e(i).handlers.push(wg[i]);for(let i in ml)e(i).observers.push(ml[i]);return A}var oX=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],cQe="dthko",aX=[16,17,18,20,91,92,224,225],pw=6;function mw(t){return Math.max(0,t)*.7+8}function gQe(t,A){return Math.max(Math.abs(t.clientX-A.clientX),Math.abs(t.clientY-A.clientY))}var X_=class{constructor(A,e,i,n){this.view=A,this.startEvent=e,this.style=i,this.mustSelect=n,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=e,this.scrollParents=_W(A.contentDOM),this.atoms=A.state.facet(Q4).map(a=>a(A));let o=A.contentDOM.ownerDocument;o.addEventListener("mousemove",this.move=this.move.bind(this)),o.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=e.shiftKey,this.multiple=A.state.facet(lr.allowMultipleSelections)&&CQe(A,e),this.dragging=IQe(A,e)&&lX(e)==1?null:!1}start(A){this.dragging===!1&&this.select(A)}move(A){if(A.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&gQe(this.startEvent,A)<10)return;this.select(this.lastEvent=A);let e=0,i=0,n=0,o=0,a=this.view.win.innerWidth,r=this.view.win.innerHeight;this.scrollParents.x&&({left:n,right:a}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:o,bottom:r}=this.scrollParents.y.getBoundingClientRect());let s=Mx(this.view);A.clientX-s.left<=n+pw?e=-mw(n-A.clientX):A.clientX+s.right>=a-pw&&(e=mw(A.clientX-a)),A.clientY-s.top<=o+pw?i=-mw(o-A.clientY):A.clientY+s.bottom>=r-pw&&(i=mw(A.clientY-r)),this.setScrollSpeed(e,i)}up(A){this.dragging==null&&this.select(this.lastEvent),this.dragging||A.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let A=this.view.contentDOM.ownerDocument;A.removeEventListener("mousemove",this.move),A.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(A,e){this.scrollSpeed={x:A,y:e},A||e?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:A,y:e}=this.scrollSpeed;A&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=A,A=0),e&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=e,e=0),(A||e)&&this.view.win.scrollBy(A,e),this.dragging===!1&&this.select(this.lastEvent)}select(A){let{view:e}=this,i=AX(this.atoms,this.style.get(A,this.extend,this.multiple));(this.mustSelect||!i.eq(e.state.selection,this.dragging===!1))&&this.view.dispatch({selection:i,userEvent:"select.pointer"}),this.mustSelect=!1}update(A){A.transactions.some(e=>e.isUserEvent("input.type"))?this.destroy():this.style.update(A)&&setTimeout(()=>this.select(this.lastEvent),20)}};function CQe(t,A){let e=t.state.facet(OW);return e.length?e[0](A):ut.mac?A.metaKey:A.ctrlKey}function dQe(t,A){let e=t.state.facet(JW);return e.length?e[0](A):ut.mac?!A.altKey:!A.ctrlKey}function IQe(t,A){let{main:e}=t.state.selection;if(e.empty)return!1;let i=u4(t.root);if(!i||i.rangeCount==0)return!0;let n=i.getRangeAt(0).getClientRects();for(let o=0;o=A.clientX&&a.top<=A.clientY&&a.bottom>=A.clientY)return!0}return!1}function BQe(t,A){if(!A.bubbles)return!0;if(A.defaultPrevented)return!1;for(let e=A.target,i;e!=t.contentDOM;e=e.parentNode)if(!e||e.nodeType==11||(i=La.get(e))&&i.isWidget()&&!i.isHidden&&i.widget.ignoreEvent(A))return!1;return!0}var wg=Object.create(null),ml=Object.create(null),rX=ut.ie&&ut.ie_version<15||ut.ios&&ut.webkit_version<604;function hQe(t){let A=t.dom.parentNode;if(!A)return;let e=A.appendChild(document.createElement("textarea"));e.style.cssText="position: fixed; left: -10000px; top: 10px",e.focus(),setTimeout(()=>{t.focus(),e.remove(),sX(t,e.value)},50)}function $w(t,A,e){for(let i of t.facet(A))e=i(e,t);return e}function sX(t,A){A=$w(t.state,vx,A);let{state:e}=t,i,n=1,o=e.toText(A),a=o.lines==e.selection.ranges.length;if($_!=null&&e.selection.ranges.every(s=>s.empty)&&$_==o.toString()){let s=-1;i=e.changeByRange(l=>{let c=e.doc.lineAt(l.from);if(c.from==s)return{range:l};s=c.from;let C=e.toText((a?o.line(n++).text:A)+e.lineBreak);return{changes:{from:c.from,insert:C},range:uA.cursor(l.from+C.length)}})}else a?i=e.changeByRange(s=>{let l=o.line(n++);return{changes:{from:s.from,to:s.to,insert:l.text},range:uA.cursor(s.from+l.length)}}):i=e.replaceSelection(o);t.dispatch(i,{userEvent:"input.paste",scrollIntoView:!0})}ml.scroll=t=>{t.inputState.lastScrollTop=t.scrollDOM.scrollTop,t.inputState.lastScrollLeft=t.scrollDOM.scrollLeft};ml.wheel=ml.mousewheel=t=>{t.inputState.lastWheelEvent=Date.now()};wg.keydown=(t,A)=>(t.inputState.setSelectionOrigin("select"),A.keyCode==27&&t.inputState.tabFocusMode!=0&&(t.inputState.tabFocusMode=Date.now()+2e3),!1);ml.touchstart=(t,A)=>{let e=t.inputState,i=A.targetTouches[0];e.lastTouchTime=Date.now(),i&&(e.lastTouchX=i.clientX,e.lastTouchY=i.clientY),e.setSelectionOrigin("select.pointer")};ml.touchmove=t=>{t.inputState.setSelectionOrigin("select.pointer")};wg.mousedown=(t,A)=>{if(t.observer.flush(),t.inputState.lastTouchTime>Date.now()-2e3)return!1;let e=null;for(let i of t.state.facet(zW))if(e=i(t,A),e)break;if(!e&&A.button==0&&(e=EQe(t,A)),e){let i=!t.hasFocus;t.inputState.startMouseSelection(new X_(t,A,e,i)),i&&t.observer.ignore(()=>{xW(t.contentDOM);let o=t.root.activeElement;o&&!o.contains(t.contentDOM)&&o.blur()});let n=t.inputState.mouseSelection;if(n)return n.start(A),n.dragging===!1}else t.inputState.setSelectionOrigin("select.pointer");return!1};function AW(t,A,e,i){if(i==1)return uA.cursor(A,e);if(i==2)return $Ee(t.state,A,e);{let n=t.docView.lineAt(A,e),o=t.state.doc.lineAt(n?n.posAtEnd:A),a=n?n.posAtStart:o.from,r=n?n.posAtEnd:o.to;return rDate.now()-400&&Math.abs(A.clientX-t.clientX)<2&&Math.abs(A.clientY-t.clientY)<2?(iW+1)%3:1}function EQe(t,A){let e=t.posAndSideAtCoords({x:A.clientX,y:A.clientY},!1),i=lX(A),n=t.state.selection;return{update(o){o.docChanged&&(e.pos=o.changes.mapPos(e.pos),n=n.map(o.changes))},get(o,a,r){let s=t.posAndSideAtCoords({x:o.clientX,y:o.clientY},!1),l,c=AW(t,s.pos,s.assoc,i);if(e.pos!=s.pos&&!a){let C=AW(t,e.pos,e.assoc,i),d=Math.min(C.from,c.from),B=Math.max(C.to,c.to);c=d1&&(l=QQe(n,s.pos))?l:r?n.addRange(c):uA.create([c])}}}function QQe(t,A){for(let e=0;e=A)return uA.create(t.ranges.slice(0,e).concat(t.ranges.slice(e+1)),t.mainIndex==e?0:t.mainIndex-(t.mainIndex>e?1:0))}return null}wg.dragstart=(t,A)=>{let{selection:{main:e}}=t.state;if(A.target.draggable){let n=t.docView.tile.nearest(A.target);if(n&&n.isWidget()){let o=n.posAtStart,a=o+n.length;(o>=e.to||a<=e.from)&&(e=uA.range(o,a))}}let{inputState:i}=t;return i.mouseSelection&&(i.mouseSelection.dragging=!0),i.draggedContent=e,A.dataTransfer&&(A.dataTransfer.setData("Text",$w(t.state,Dx,t.state.sliceDoc(e.from,e.to))),A.dataTransfer.effectAllowed="copyMove"),!1};wg.dragend=t=>(t.inputState.draggedContent=null,!1);function oW(t,A,e,i){if(e=$w(t.state,vx,e),!e)return;let n=t.posAtCoords({x:A.clientX,y:A.clientY},!1),{draggedContent:o}=t.inputState,a=i&&o&&dQe(t,A)?{from:o.from,to:o.to}:null,r={from:n,insert:e},s=t.state.changes(a?[a,r]:r);t.focus(),t.dispatch({changes:s,selection:{anchor:s.mapPos(n,-1),head:s.mapPos(n,1)},userEvent:a?"move.drop":"input.drop"}),t.inputState.draggedContent=null}wg.drop=(t,A)=>{if(!A.dataTransfer)return!1;if(t.state.readOnly)return!0;let e=A.dataTransfer.files;if(e&&e.length){let i=Array(e.length),n=0,o=()=>{++n==e.length&&oW(t,A,i.filter(a=>a!=null).join(t.state.lineBreak),!1)};for(let a=0;a{/[\x00-\x08\x0e-\x1f]{2}/.test(r.result)||(i[a]=r.result),o()},r.readAsText(e[a])}return!0}else{let i=A.dataTransfer.getData("Text");if(i)return oW(t,A,i,!0),!0}return!1};wg.paste=(t,A)=>{if(t.state.readOnly)return!0;t.observer.flush();let e=rX?null:A.clipboardData;return e?(sX(t,e.getData("text/plain")||e.getData("text/uri-list")),!0):(hQe(t),!1)};function pQe(t,A){let e=t.dom.parentNode;if(!e)return;let i=e.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.value=A,i.focus(),i.selectionEnd=A.length,i.selectionStart=0,setTimeout(()=>{i.remove(),t.focus()},50)}function mQe(t){let A=[],e=[],i=!1;for(let n of t.selection.ranges)n.empty||(A.push(t.sliceDoc(n.from,n.to)),e.push(n));if(!A.length){let n=-1;for(let{from:o}of t.selection.ranges){let a=t.doc.lineAt(o);a.number>n&&(A.push(a.text),e.push({from:a.from,to:Math.min(t.doc.length,a.to+1)})),n=a.number}i=!0}return{text:$w(t,Dx,A.join(t.lineBreak)),ranges:e,linewise:i}}var $_=null;wg.copy=wg.cut=(t,A)=>{if(!a4(t.contentDOM,t.observer.selectionRange))return!1;let{text:e,ranges:i,linewise:n}=mQe(t.state);if(!e&&!n)return!1;$_=n?e:null,A.type=="cut"&&!t.state.readOnly&&t.dispatch({changes:i,scrollIntoView:!0,userEvent:"delete.cut"});let o=rX?null:A.clipboardData;return o?(o.clearData(),o.setData("text/plain",e),!0):(pQe(t,e),!1)};var cX=El.define();function gX(t,A){let e=[];for(let i of t.facet(PW)){let n=i(t,A);n&&e.push(n)}return e.length?t.update({effects:e,annotations:cX.of(!0)}):null}function CX(t){setTimeout(()=>{let A=t.hasFocus;if(A!=t.inputState.notifiedFocused){let e=gX(t.state,A);e?t.dispatch(e):t.update([])}},10)}ml.focus=t=>{t.inputState.lastFocusTime=Date.now(),!t.scrollDOM.scrollTop&&(t.inputState.lastScrollTop||t.inputState.lastScrollLeft)&&(t.scrollDOM.scrollTop=t.inputState.lastScrollTop,t.scrollDOM.scrollLeft=t.inputState.lastScrollLeft),CX(t)};ml.blur=t=>{t.observer.clearSelectionRange(),CX(t)};ml.compositionstart=ml.compositionupdate=t=>{t.observer.editContext||(t.inputState.compositionFirstChange==null&&(t.inputState.compositionFirstChange=!0),t.inputState.composing<0&&(t.inputState.composing=0))};ml.compositionend=t=>{t.observer.editContext||(t.inputState.composing=-1,t.inputState.compositionEndedAt=Date.now(),t.inputState.compositionPendingKey=!0,t.inputState.compositionPendingChange=t.observer.pendingRecords().length>0,t.inputState.compositionFirstChange=null,ut.chrome&&ut.android?t.observer.flushSoon():t.inputState.compositionPendingChange?Promise.resolve().then(()=>t.observer.flush()):setTimeout(()=>{t.inputState.composing<0&&t.docView.hasComposition&&t.update([])},50))};ml.contextmenu=t=>{t.inputState.lastContextMenu=Date.now()};wg.beforeinput=(t,A)=>{var e,i;if((A.inputType=="insertText"||A.inputType=="insertCompositionText")&&(t.inputState.insertingText=A.data,t.inputState.insertingTextAt=Date.now()),A.inputType=="insertReplacementText"&&t.observer.editContext){let o=(e=A.dataTransfer)===null||e===void 0?void 0:e.getData("text/plain"),a=A.getTargetRanges();if(o&&a.length){let r=a[0],s=t.posAtDOM(r.startContainer,r.startOffset),l=t.posAtDOM(r.endContainer,r.endOffset);return Sx(t,{from:s,to:l,insert:t.state.toText(o)},null),!0}}let n;if(ut.chrome&&ut.android&&(n=oX.find(o=>o.inputType==A.inputType))&&(t.observer.delayAndroidKey(n.key,n.keyCode),n.key=="Backspace"||n.key=="Delete")){let o=((i=window.visualViewport)===null||i===void 0?void 0:i.height)||0;setTimeout(()=>{var a;(((a=window.visualViewport)===null||a===void 0?void 0:a.height)||0)>o+10&&t.hasFocus&&(t.contentDOM.blur(),t.focus())},100)}return ut.ios&&A.inputType=="deleteContentForward"&&t.observer.flushSoon(),ut.safari&&A.inputType=="insertText"&&t.inputState.composing>=0&&setTimeout(()=>ml.compositionend(t,A),20),!1};var aW=new Set;function fQe(t){aW.has(t)||(aW.add(t),t.addEventListener("copy",()=>{}),t.addEventListener("cut",()=>{}))}var rW=["pre-wrap","normal","pre-line","break-spaces"],Hh=!1;function sW(){Hh=!1}var ex=class{constructor(A){this.lineWrapping=A,this.doc=Jn.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(A,e){let i=this.doc.lineAt(e).number-this.doc.lineAt(A).number+1;return this.lineWrapping&&(i+=Math.max(0,Math.ceil((e-A-i*this.lineLength*.5)/this.lineLength))),this.lineHeight*i}heightForLine(A){return this.lineWrapping?(1+Math.max(0,Math.ceil((A-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(A){return this.doc=A,this}mustRefreshForWrapping(A){return rW.indexOf(A)>-1!=this.lineWrapping}mustRefreshForHeights(A){let e=!1;for(let i=0;i-1,s=Math.abs(e-this.lineHeight)>.3||this.lineWrapping!=r||Math.abs(i-this.charWidth)>.1;if(this.lineWrapping=r,this.lineHeight=e,this.charWidth=i,this.textHeight=n,this.lineLength=o,s){this.heightSamples={};for(let l=0;l0}set outdated(A){this.flags=(A?2:0)|this.flags&-3}setHeight(A){this.height!=A&&(Math.abs(this.height-A)>Sw&&(Hh=!0),this.height=A)}replace(A,e,i){return t.of(i)}decomposeLeft(A,e){e.push(this)}decomposeRight(A,e){e.push(this)}applyChanges(A,e,i,n){let o=this,a=i.doc;for(let r=n.length-1;r>=0;r--){let{fromA:s,toA:l,fromB:c,toB:C}=n[r],d=o.lineAt(s,wa.ByPosNoHeight,i.setDoc(e),0,0),B=d.to>=l?d:o.lineAt(l,wa.ByPosNoHeight,i,0,0);for(C+=B.to-l,l=B.to;r>0&&d.from<=n[r-1].toA;)s=n[r-1].fromA,c=n[r-1].fromB,r--,so*2){let r=A[e-1];r.break?A.splice(--e,1,r.left,null,r.right):A.splice(--e,1,r.left,r.right),i+=1+r.break,n-=r.size}else if(o>n*2){let r=A[i];r.break?A.splice(i,1,r.left,null,r.right):A.splice(i,1,r.left,r.right),i+=2+r.break,o-=r.size}else break;else if(n=o&&a(this.lineAt(0,wa.ByPos,i,n,o))}setMeasuredHeight(A){let e=A.heights[A.index++];e<0?(this.spaceAbove=-e,e=A.heights[A.index++]):this.spaceAbove=0,this.setHeight(e)}updateHeight(A,e=0,i=!1,n){return n&&n.from<=e&&n.more&&this.setMeasuredHeight(n),this.outdated=!1,this}toString(){return`block(${this.length})`}},Mc=class t extends zw{constructor(A,e,i){super(A,e,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=i}mainBlock(A,e){return new mg(e,this.length,A+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(A,e,i){let n=i[0];return i.length==1&&(n instanceof t||n instanceof Zd&&n.flags&4)&&Math.abs(this.length-n.length)<10?(n instanceof Zd?n=new t(n.length,this.height,this.spaceAbove):n.height=this.height,this.outdated||(n.outdated=!1),n):jl.of(i)}updateHeight(A,e=0,i=!1,n){return n&&n.from<=e&&n.more?this.setMeasuredHeight(n):(i||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,A.heightForLine(this.length-this.collapsed))+this.breaks*A.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}},Zd=class t extends jl{constructor(A){super(A,0)}heightMetrics(A,e){let i=A.doc.lineAt(e).number,n=A.doc.lineAt(e+this.length).number,o=n-i+1,a,r=0;if(A.lineWrapping){let s=Math.min(this.height,A.lineHeight*o);a=s/o,this.length>o+1&&(r=(this.height-s)/(this.length-o-1))}else a=this.height/o;return{firstLine:i,lastLine:n,perLine:a,perChar:r}}blockAt(A,e,i,n){let{firstLine:o,lastLine:a,perLine:r,perChar:s}=this.heightMetrics(e,n);if(e.lineWrapping){let l=n+(A0){let o=i[i.length-1];o instanceof t?i[i.length-1]=new t(o.length+n):i.push(null,new t(n-1))}if(A>0){let o=i[0];o instanceof t?i[0]=new t(A+o.length):i.unshift(new t(A-1),null)}return jl.of(i)}decomposeLeft(A,e){e.push(new t(A-1),null)}decomposeRight(A,e){e.push(null,new t(this.length-A-1))}updateHeight(A,e=0,i=!1,n){let o=e+this.length;if(n&&n.from<=e+this.length&&n.more){let a=[],r=Math.max(e,n.from),s=-1;for(n.from>e&&a.push(new t(n.from-e-1).updateHeight(A,e));r<=o&&n.more;){let c=A.doc.lineAt(r).length;a.length&&a.push(null);let C=n.heights[n.index++],d=0;C<0&&(d=-C,C=n.heights[n.index++]),s==-1?s=C:Math.abs(C-s)>=Sw&&(s=-2);let B=new Mc(c,C,d);B.outdated=!1,a.push(B),r+=c+1}r<=o&&a.push(null,new t(o-r).updateHeight(A,r));let l=jl.of(a);return(s<0||Math.abs(l.height-this.height)>=Sw||Math.abs(s-this.heightMetrics(A,e).perLine)>=Sw)&&(Hh=!0),Jw(this,l)}else(i||this.outdated)&&(this.setHeight(A.heightForGap(e,e+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}},tx=class extends jl{constructor(A,e,i){super(A.length+e+i.length,A.height+i.height,e|(A.outdated||i.outdated?2:0)),this.left=A,this.right=i,this.size=A.size+i.size}get break(){return this.flags&1}blockAt(A,e,i,n){let o=i+this.left.height;return Ar))return l;let c=e==wa.ByPosNoHeight?wa.ByPosNoHeight:wa.ByPos;return s?l.join(this.right.lineAt(r,c,i,a,r)):this.left.lineAt(r,c,i,n,o).join(l)}forEachLine(A,e,i,n,o,a){let r=n+this.left.height,s=o+this.left.length+this.break;if(this.break)A=s&&this.right.forEachLine(A,e,i,r,s,a);else{let l=this.lineAt(s,wa.ByPos,i,n,o);A=A&&l.from<=e&&a(l),e>l.to&&this.right.forEachLine(l.to+1,e,i,r,s,a)}}replace(A,e,i){let n=this.left.length+this.break;if(ethis.left.length)return this.balanced(this.left,this.right.replace(A-n,e-n,i));let o=[];A>0&&this.decomposeLeft(A,o);let a=o.length;for(let r of i)o.push(r);if(A>0&&lW(o,a-1),e=i&&e.push(null)),A>i&&this.right.decomposeLeft(A-i,e)}decomposeRight(A,e){let i=this.left.length,n=i+this.break;if(A>=n)return this.right.decomposeRight(A-n,e);A2*e.size||e.size>2*A.size?jl.of(this.break?[A,null,e]:[A,e]):(this.left=Jw(this.left,A),this.right=Jw(this.right,e),this.setHeight(A.height+e.height),this.outdated=A.outdated||e.outdated,this.size=A.size+e.size,this.length=A.length+this.break+e.length,this)}updateHeight(A,e=0,i=!1,n){let{left:o,right:a}=this,r=e+o.length+this.break,s=null;return n&&n.from<=e+o.length&&n.more?s=o=o.updateHeight(A,e,i,n):o.updateHeight(A,e,i),n&&n.from<=r+a.length&&n.more?s=a=a.updateHeight(A,r,i,n):a.updateHeight(A,r,i),s?this.balanced(o,a):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function lW(t,A){let e,i;t[A]==null&&(e=t[A-1])instanceof Zd&&(i=t[A+1])instanceof Zd&&t.splice(A-1,3,new Zd(e.length+1+i.length))}var yQe=5,ix=class t{constructor(A,e){this.pos=A,this.oracle=e,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=A}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(A,e){if(this.lineStart>-1){let i=Math.min(e,this.lineEnd),n=this.nodes[this.nodes.length-1];n instanceof Mc?n.length+=i-this.pos:(i>this.pos||!this.isCovered)&&this.nodes.push(new Mc(i-this.pos,-1,0)),this.writtenTo=i,e>i&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=e}point(A,e,i){if(A=yQe)&&this.addLineDeco(n,o,a)}else e>A&&this.span(A,e);this.lineEnd>-1&&this.lineEnd-1)return;let{from:A,to:e}=this.oracle.doc.lineAt(this.pos);this.lineStart=A,this.lineEnd=e,this.writtenToA&&this.nodes.push(new Mc(this.pos-A,-1,0)),this.writtenTo=this.pos}blankContent(A,e){let i=new Zd(e-A);return this.oracle.doc.lineAt(A).to==e&&(i.flags|=4),i}ensureLine(){this.enterLine();let A=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(A instanceof Mc)return A;let e=new Mc(0,-1,0);return this.nodes.push(e),e}addBlock(A){this.enterLine();let e=A.deco;e&&e.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(A),this.writtenTo=this.pos=this.pos+A.length,e&&e.endSide>0&&(this.covering=A)}addLineDeco(A,e,i){let n=this.ensureLine();n.length+=i,n.collapsed+=i,n.widgetHeight=Math.max(n.widgetHeight,A),n.breaks+=e,this.writtenTo=this.pos=this.pos+i}finish(A){let e=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(e instanceof Mc)&&!this.isCovered?this.nodes.push(new Mc(0,-1,0)):(this.writtenToc.clientHeight||c.scrollWidth>c.clientWidth)&&C.overflow!="visible"){let d=c.getBoundingClientRect();o=Math.max(o,d.left),a=Math.min(a,d.right),r=Math.max(r,d.top),s=Math.min(l==t.parentNode?n.innerHeight:s,d.bottom)}l=C.position=="absolute"||C.position=="fixed"?c.offsetParent:c.parentNode}else if(l.nodeType==11)l=l.host;else break;return{left:o-e.left,right:Math.max(o,a)-e.left,top:r-(e.top+A),bottom:Math.max(r,s)-(e.top+A)}}function bQe(t){let A=t.getBoundingClientRect(),e=t.ownerDocument.defaultView||window;return A.left0&&A.top0}function MQe(t,A){let e=t.getBoundingClientRect();return{left:0,right:e.right-e.left,top:A,bottom:e.bottom-(e.top+A)}}var C4=class{constructor(A,e,i,n){this.from=A,this.to=e,this.size=i,this.displaySize=n}static same(A,e){if(A.length!=e.length)return!1;for(let i=0;itypeof n!="function"&&n.class=="cm-lineWrapping");this.heightOracle=new ex(i),this.stateDeco=gW(e),this.heightMap=jl.empty().applyChanges(this.stateDeco,Jn.empty,this.heightOracle.setDoc(e.doc),[new fg(0,0,0,e.doc.length)]);for(let n=0;n<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());n++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Tt.set(this.lineGaps.map(n=>n.draw(this,!1))),this.scrollParent=A.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let A=[this.viewport],{main:e}=this.state.selection;for(let i=0;i<=1;i++){let n=i?e.head:e.anchor;if(!A.some(({from:o,to:a})=>n>=o&&n<=a)){let{from:o,to:a}=this.lineBlockAt(n);A.push(new Lh(o,a))}}return this.viewports=A.sort((i,n)=>i.from-n.from),this.updateScaler()}updateScaler(){let A=this.scaler;return this.scaler=this.heightMap.height<=7e6?cW:new ax(this.heightOracle,this.heightMap,this.viewports),A.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,A=>{this.viewportLines.push(n4(A,this.scaler))})}update(A,e=null){this.state=A.state;let i=this.stateDeco;this.stateDeco=gW(this.state);let n=A.changedRanges,o=fg.extendWithRanges(n,vQe(i,this.stateDeco,A?A.changes:is.empty(this.state.doc.length))),a=this.heightMap.height,r=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);sW(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,A.startState.doc,this.heightOracle.setDoc(this.state.doc),o),(this.heightMap.height!=a||Hh)&&(A.flags|=2),r?(this.scrollAnchorPos=A.changes.mapPos(r.from,-1),this.scrollAnchorHeight=r.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=a);let s=o.length?this.mapViewport(this.viewport,A.changes):this.viewport;(e&&(e.range.heads.to)||!this.viewportIsAppropriate(s))&&(s=this.getViewport(0,e));let l=s.from!=this.viewport.from||s.to!=this.viewport.to;this.viewport=s,A.flags|=this.updateForViewport(),(l||!A.changes.empty||A.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,A.changes))),A.flags|=this.computeVisibleRanges(A.changes),e&&(this.scrollTarget=e),!this.mustEnforceCursorAssoc&&(A.selectionSet||A.focusChanged)&&A.view.lineWrapping&&A.state.selection.main.empty&&A.state.selection.main.assoc&&!A.state.facet(jW)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:A}=this,e=A.contentDOM,i=window.getComputedStyle(e),n=this.heightOracle,o=i.whiteSpace;this.defaultTextDirection=i.direction=="rtl"?Go.RTL:Go.LTR;let a=this.heightOracle.mustRefreshForWrapping(o)||this.mustMeasureContent==="refresh",r=e.getBoundingClientRect(),s=a||this.mustMeasureContent||this.contentDOMHeight!=r.height;this.contentDOMHeight=r.height,this.mustMeasureContent=!1;let l=0,c=0;if(r.width&&r.height){let{scaleX:b,scaleY:x}=kW(e,r);(b>.005&&Math.abs(this.scaleX-b)>.005||x>.005&&Math.abs(this.scaleY-x)>.005)&&(this.scaleX=b,this.scaleY=x,l|=16,a=s=!0)}let C=(parseInt(i.paddingTop)||0)*this.scaleY,d=(parseInt(i.paddingBottom)||0)*this.scaleY;(this.paddingTop!=C||this.paddingBottom!=d)&&(this.paddingTop=C,this.paddingBottom=d,l|=18),this.editorWidth!=A.scrollDOM.clientWidth&&(n.lineWrapping&&(s=!0),this.editorWidth=A.scrollDOM.clientWidth,l|=16);let B=_W(this.view.contentDOM,!1).y;B!=this.scrollParent&&(this.scrollParent=B,this.scrollAnchorHeight=-1,this.scrollOffset=0);let E=this.getScrollOffset();this.scrollOffset!=E&&(this.scrollAnchorHeight=-1,this.scrollOffset=E),this.scrolledToBottom=RW(this.scrollParent||A.win);let u=(this.printing?MQe:DQe)(e,this.paddingTop),m=u.top-this.pixelViewport.top,f=u.bottom-this.pixelViewport.bottom;this.pixelViewport=u;let D=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(D!=this.inView&&(this.inView=D,D&&(s=!0)),!this.inView&&!this.scrollTarget&&!bQe(A.dom))return 0;let S=r.width;if((this.contentDOMWidth!=S||this.editorHeight!=A.scrollDOM.clientHeight)&&(this.contentDOMWidth=r.width,this.editorHeight=A.scrollDOM.clientHeight,l|=16),s){let b=A.docView.measureVisibleLineHeights(this.viewport);if(n.mustRefreshForHeights(b)&&(a=!0),a||n.lineWrapping&&Math.abs(S-this.contentDOMWidth)>n.charWidth){let{lineHeight:x,charWidth:F,textHeight:P}=A.docView.measureTextSize();a=x>0&&n.refresh(o,x,F,P,Math.max(5,S/F),b),a&&(A.docView.minWidth=0,l|=16)}m>0&&f>0?c=Math.max(m,f):m<0&&f<0&&(c=Math.min(m,f)),sW();for(let x of this.viewports){let F=x.from==this.viewport.from?b:A.docView.measureVisibleLineHeights(x);this.heightMap=(a?jl.empty().applyChanges(this.stateDeco,Jn.empty,this.heightOracle,[new fg(0,0,0,A.state.doc.length)]):this.heightMap).updateHeight(n,0,a,new Ax(x.from,F))}Hh&&(l|=2)}let k=!this.viewportIsAppropriate(this.viewport,c)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return k&&(l&2&&(l|=this.updateScaler()),this.viewport=this.getViewport(c,this.scrollTarget),l|=this.updateForViewport()),(l&2||k)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(a?[]:this.lineGaps,A)),l|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,A.docView.enforceCursorAssoc()),l}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(A,e){let i=.5-Math.max(-.5,Math.min(.5,A/1e3/2)),n=this.heightMap,o=this.heightOracle,{visibleTop:a,visibleBottom:r}=this,s=new Lh(n.lineAt(a-i*1e3,wa.ByHeight,o,0,0).from,n.lineAt(r+(1-i)*1e3,wa.ByHeight,o,0,0).to);if(e){let{head:l}=e.range;if(ls.to){let c=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),C=n.lineAt(l,wa.ByPos,o,0,0),d;e.y=="center"?d=(C.top+C.bottom)/2-c/2:e.y=="start"||e.y=="nearest"&&l=r+Math.max(10,Math.min(i,250)))&&n>a-2*1e3&&o>1,a=n<<1;if(this.defaultTextDirection!=Go.LTR&&!i)return[];let r=[],s=(c,C,d,B)=>{if(C-cc&&ff.from>=d.from&&f.to<=d.to&&Math.abs(f.from-c)f.fromD));if(!m){if(CS.from<=C&&S.to>=C)){let S=e.moveToLineBoundary(uA.cursor(C),!1,!0).head;S>c&&(C=S)}let f=this.gapSize(d,c,C,B),D=i||f<2e6?f:2e6;m=new C4(c,C,f,D)}r.push(m)},l=c=>{if(c.length2e6)for(let x of A)x.from>=c.from&&x.fromc.from&&s(c.from,B,c,C),Ee.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(A){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let i=[];po.spans(e,this.viewport.from,this.viewport.to,{span(o,a){i.push({from:o,to:a})},point(){}},20);let n=0;if(i.length!=this.visibleRanges.length)n=12;else for(let o=0;o=this.viewport.from&&A<=this.viewport.to&&this.viewportLines.find(e=>e.from<=A&&e.to>=A)||n4(this.heightMap.lineAt(A,wa.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(A){return A>=this.viewportLines[0].top&&A<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(e=>e.top<=A&&e.bottom>=A)||n4(this.heightMap.lineAt(this.scaler.fromDOM(A),wa.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return(this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top)*this.scaleY}scrollAnchorAt(A){let e=this.lineBlockAtHeight(A+8);return e.from>=this.viewport.from||this.viewportLines[0].top-A>200?e:this.viewportLines[0]}elementAtHeight(A){return n4(this.heightMap.blockAt(this.scaler.fromDOM(A),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}},Lh=class{constructor(A,e){this.from=A,this.to=e}};function SQe(t,A,e){let i=[],n=t,o=0;return po.spans(e,t,A,{span(){},point(a,r){a>n&&(i.push({from:n,to:a}),o+=a-n),n=r}},20),n=1)return A[A.length-1].to;let i=Math.floor(t*e);for(let n=0;;n++){let{from:o,to:a}=A[n],r=a-o;if(i<=r)return o+i;i-=r}}function ww(t,A){let e=0;for(let{from:i,to:n}of t.ranges){if(A<=n){e+=A-i;break}e+=n-i}return e/t.total}function kQe(t,A){for(let e of t)if(A(e))return e}var cW={toDOM(t){return t},fromDOM(t){return t},scale:1,eq(t){return t==this}};function gW(t){let A=t.facet(Xw).filter(i=>typeof i!="function"),e=t.facet(bx).filter(i=>typeof i!="function");return e.length&&A.push(po.join(e)),A}var ax=class t{constructor(A,e,i){let n=0,o=0,a=0;this.viewports=i.map(({from:r,to:s})=>{let l=e.lineAt(r,wa.ByPos,A,0,0).top,c=e.lineAt(s,wa.ByPos,A,0,0).bottom;return n+=c-l,{from:r,to:s,top:l,bottom:c,domTop:0,domBottom:0}}),this.scale=(7e6-n)/(e.height-n);for(let r of this.viewports)r.domTop=a+(r.top-o)*this.scale,a=r.domBottom=r.domTop+(r.bottom-r.top),o=r.bottom}toDOM(A){for(let e=0,i=0,n=0;;e++){let o=ee.from==A.viewports[i].from&&e.to==A.viewports[i].to):!1}};function n4(t,A){if(A.scale==1)return t;let e=A.toDOM(t.top),i=A.toDOM(t.bottom);return new mg(t.from,t.length,e,i-e,Array.isArray(t._content)?t._content.map(n=>n4(n,A)):t._content)}var yw=lt.define({combine:t=>t.join(" ")}),f_=lt.define({combine:t=>t.indexOf(!0)>-1}),rx=bc.newName(),dX=bc.newName(),IX=bc.newName(),BX={"&light":"."+dX,"&dark":"."+IX};function sx(t,A,e){return new bc(A,{finish(i){return/&/.test(i)?i.replace(/&\w*/,n=>{if(n=="&")return t;if(!e||!e[n])throw new RangeError(`Unsupported selector: ${n}`);return e[n]}):t+" "+i}})}var _Qe=sx("."+rx,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},BX),xQe={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},w_=ut.ie&&ut.ie_version<=11,lx=class{constructor(A){this.view=A,this.active=!1,this.editContext=null,this.selectionRange=new R_,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=A.contentDOM,this.observer=new MutationObserver(e=>{for(let i of e)this.queue.push(i);(ut.ie&&ut.ie_version<=11||ut.ios&&A.composing)&&e.some(i=>i.type=="childList"&&i.removedNodes.length||i.type=="characterData"&&i.oldValue.length>i.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&ut.android&&A.constructor.EDIT_CONTEXT!==!1&&!(ut.chrome&&ut.chrome_version<126)&&(this.editContext=new cx(A),A.state.facet(SC)&&(A.contentDOM.editContext=this.editContext.editContext)),w_&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var e;((e=this.view.docView)===null||e===void 0?void 0:e.lastUpdate){this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),e.length>0&&e[e.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(e=>{e.length>0&&e[e.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(A){this.view.inputState.runHandlers("scroll",A),this.intersecting&&this.view.measure()}onScroll(A){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(A)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(A){(A.type=="change"||!A.type)&&!A.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(A){if(this.gapIntersection&&(A.length!=this.gaps.length||this.gaps.some((e,i)=>e!=A[i]))){this.gapIntersection.disconnect();for(let e of A)this.gapIntersection.observe(e);this.gaps=A}}onSelectionChange(A){let e=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:i}=this,n=this.selectionRange;if(i.state.facet(SC)?i.root.activeElement!=this.dom:!a4(this.dom,n))return;let o=n.anchorNode&&i.docView.tile.nearest(n.anchorNode);if(o&&o.isWidget()&&o.widget.ignoreEvent(A)){e||(this.selectionChanged=!1);return}(ut.ie&&ut.ie_version<=11||ut.android&&ut.chrome)&&!i.state.selection.main.empty&&n.focusNode&&r4(n.focusNode,n.focusOffset,n.anchorNode,n.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:A}=this,e=u4(A.root);if(!e)return!1;let i=ut.safari&&A.root.nodeType==11&&A.root.activeElement==this.dom&&RQe(this.view,e)||e;if(!i||this.selectionRange.eq(i))return!1;let n=a4(this.dom,i);return n&&!this.selectionChanged&&A.inputState.lastFocusTime>Date.now()-200&&A.inputState.lastTouchTime{let o=this.delayedAndroidKey;o&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=o.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&o.force&&Th(this.dom,o.key,o.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(n)}(!this.delayedAndroidKey||A=="Enter")&&(this.delayedAndroidKey={key:A,keyCode:e,force:this.lastChange{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let A of this.observer.takeRecords())this.queue.push(A);return this.queue}processRecords(){let A=this.pendingRecords();A.length&&(this.queue=[]);let e=-1,i=-1,n=!1;for(let o of A){let a=this.readMutation(o);a&&(a.typeOver&&(n=!0),e==-1?{from:e,to:i}=a:(e=Math.min(a.from,e),i=Math.max(a.to,i)))}return{from:e,to:i,typeOver:n}}readChange(){let{from:A,to:e,typeOver:i}=this.processRecords(),n=this.selectionChanged&&a4(this.dom,this.selectionRange);if(A<0&&!n)return null;A>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let o=new Z_(this.view,A,e,i);return this.view.docView.domChanged={newSel:o.newSel?o.newSel.main:null},o}flush(A=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;A&&this.readSelectionRange();let e=this.readChange();if(!e)return this.view.requestMeasure(),!1;let i=this.view.state,n=iX(this.view,e);return this.view.state==i&&(e.domChanged||e.newSel&&!Ow(this.view.state.selection,e.newSel.main))&&this.view.update([]),n}readMutation(A){let e=this.view.docView.tile.nearest(A.target);if(!e||e.isWidget())return null;if(e.markDirty(A.type=="attributes"),A.type=="childList"){let i=CW(e,A.previousSibling||A.target.previousSibling,-1),n=CW(e,A.nextSibling||A.target.nextSibling,1);return{from:i?e.posAfter(i):e.posAtStart,to:n?e.posBefore(n):e.posAtEnd,typeOver:!1}}else return A.type=="characterData"?{from:e.posAtStart,to:e.posAtEnd,typeOver:A.target.nodeValue==A.oldValue}:null}setWindow(A){A!=this.win&&(this.removeWindowListeners(this.win),this.win=A,this.addWindowListeners(this.win))}addWindowListeners(A){A.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):A.addEventListener("beforeprint",this.onPrint),A.addEventListener("scroll",this.onScroll),A.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(A){A.removeEventListener("scroll",this.onScroll),A.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):A.removeEventListener("beforeprint",this.onPrint),A.document.removeEventListener("selectionchange",this.onSelectionChange)}update(A){this.editContext&&(this.editContext.update(A),A.startState.facet(SC)!=A.state.facet(SC)&&(A.view.contentDOM.editContext=A.state.facet(SC)?this.editContext.editContext:null))}destroy(){var A,e,i;this.stop(),(A=this.intersection)===null||A===void 0||A.disconnect(),(e=this.gapIntersection)===null||e===void 0||e.disconnect(),(i=this.resizeScroll)===null||i===void 0||i.disconnect();for(let n of this.scrollTargets)n.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}};function CW(t,A,e){for(;A;){let i=La.get(A);if(i&&i.parent==t)return i;let n=A.parentNode;A=n!=t.dom?n:e>0?A.nextSibling:A.previousSibling}return null}function dW(t,A){let e=A.startContainer,i=A.startOffset,n=A.endContainer,o=A.endOffset,a=t.docView.domAtPos(t.state.selection.main.anchor,1);return r4(a.node,a.offset,n,o)&&([e,i,n,o]=[n,o,e,i]),{anchorNode:e,anchorOffset:i,focusNode:n,focusOffset:o}}function RQe(t,A){if(A.getComposedRanges){let n=A.getComposedRanges(t.root)[0];if(n)return dW(t,n)}let e=null;function i(n){n.preventDefault(),n.stopImmediatePropagation(),e=n.getTargetRanges()[0]}return t.contentDOM.addEventListener("beforeinput",i,!0),t.dom.ownerDocument.execCommand("indent"),t.contentDOM.removeEventListener("beforeinput",i,!0),e?dW(t,e):null}var cx=class{constructor(A){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(A.state);let e=this.editContext=new window.EditContext({text:A.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,A.state.selection.main.anchor))),selectionEnd:this.toContextPos(A.state.selection.main.head)});this.handlers.textupdate=i=>{let n=A.state.selection.main,{anchor:o,head:a}=n,r=this.toEditorPos(i.updateRangeStart),s=this.toEditorPos(i.updateRangeEnd);A.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:i.updateRangeStart,editorBase:r,drifted:!1});let l=s-r>i.text.length;r==this.from&&othis.to&&(s=o);let c=nX(A.state.sliceDoc(r,s),i.text,(l?n.from:n.to)-r,l?"end":null);if(!c){let d=uA.single(this.toEditorPos(i.selectionStart),this.toEditorPos(i.selectionEnd));Ow(d,n)||A.dispatch({selection:d,userEvent:"select"});return}let C={from:c.from+r,to:c.toA+r,insert:Jn.of(i.text.slice(c.from,c.toB).split(` +`))};if((ut.mac||ut.android)&&C.from==a-1&&/^\. ?$/.test(i.text)&&A.contentDOM.getAttribute("autocorrect")=="off"&&(C={from:r,to:s,insert:Jn.of([i.text.replace("."," ")])}),this.pendingContextChange=C,!A.state.readOnly){let d=this.to-this.from+(C.to-C.from+C.insert.length);Sx(A,C,uA.single(this.toEditorPos(i.selectionStart,d),this.toEditorPos(i.selectionEnd,d)))}this.pendingContextChange&&(this.revertPending(A.state),this.setSelection(A.state)),C.from=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(e.text.slice(Math.max(0,i.updateRangeStart-1),Math.min(e.text.length,i.updateRangeStart+1)))&&this.handlers.compositionend(i)},this.handlers.characterboundsupdate=i=>{let n=[],o=null;for(let a=this.toEditorPos(i.rangeStart),r=this.toEditorPos(i.rangeEnd);a{let n=[];for(let o of i.getTextFormats()){let a=o.underlineStyle,r=o.underlineThickness;if(!/none/i.test(a)&&!/none/i.test(r)){let s=this.toEditorPos(o.rangeStart),l=this.toEditorPos(o.rangeEnd);if(s{A.inputState.composing<0&&(A.inputState.composing=0,A.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(A.inputState.composing=-1,A.inputState.compositionFirstChange=null,this.composing){let{drifted:i}=this.composing;this.composing=null,i&&this.reset(A.state)}};for(let i in this.handlers)e.addEventListener(i,this.handlers[i]);this.measureReq={read:i=>{this.editContext.updateControlBounds(i.contentDOM.getBoundingClientRect());let n=u4(i.root);n&&n.rangeCount&&this.editContext.updateSelectionBounds(n.getRangeAt(0).getBoundingClientRect())}}}applyEdits(A){let e=0,i=!1,n=this.pendingContextChange;return A.changes.iterChanges((o,a,r,s,l)=>{if(i)return;let c=l.length-(a-o);if(n&&a>=n.to)if(n.from==o&&n.to==a&&n.insert.eq(l)){n=this.pendingContextChange=null,e+=c,this.to+=c;return}else n=null,this.revertPending(A.state);if(o+=e,a+=e,a<=this.from)this.from+=c,this.to+=c;else if(othis.to||this.to-this.from+l.length>3e4){i=!0;return}this.editContext.updateText(this.toContextPos(o),this.toContextPos(a),l.toString()),this.to+=c}e+=c}),n&&!i&&this.revertPending(A.state),!i}update(A){let e=this.pendingContextChange,i=A.startState.selection.main;this.composing&&(this.composing.drifted||!A.changes.touchesRange(i.from,i.to)&&A.transactions.some(n=>!n.isUserEvent("input.type")&&n.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=A.changes.mapPos(this.composing.editorBase)):!this.applyEdits(A)||!this.rangeIsValid(A.state)?(this.pendingContextChange=null,this.reset(A.state)):(A.docChanged||A.selectionSet||e)&&this.setSelection(A.state),(A.geometryChanged||A.docChanged||A.selectionSet)&&A.view.requestMeasure(this.measureReq)}resetRange(A){let{head:e}=A.selection.main;this.from=Math.max(0,e-1e4),this.to=Math.min(A.doc.length,e+1e4)}reset(A){this.resetRange(A),this.editContext.updateText(0,this.editContext.text.length,A.doc.sliceString(this.from,this.to)),this.setSelection(A)}revertPending(A){let e=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(e.from),this.toContextPos(e.from+e.insert.length),A.doc.sliceString(e.from,e.to))}setSelection(A){let{main:e}=A.selection,i=this.toContextPos(Math.max(this.from,Math.min(this.to,e.anchor))),n=this.toContextPos(e.head);(this.editContext.selectionStart!=i||this.editContext.selectionEnd!=n)&&this.editContext.updateSelection(i,n)}rangeIsValid(A){let{head:e}=A.selection.main;return!(this.from>0&&e-this.from<500||this.to1e4*3)}toEditorPos(A,e=this.to-this.from){A=Math.min(A,e);let i=this.composing;return i&&i.drifted?i.editorBase+(A-i.contextBase):A+this.from}toContextPos(A){let e=this.composing;return e&&e.drifted?e.contextBase+(A-e.editorBase):A-this.from}destroy(){for(let A in this.handlers)this.editContext.removeEventListener(A,this.handlers[A])}},mi=(()=>{class t{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var i;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),e.parent&&e.parent.appendChild(this.dom);let{dispatch:n}=e;this.dispatchTransactions=e.dispatchTransactions||n&&(o=>o.forEach(a=>n(a,this)))||(o=>this.update(o)),this.dispatch=this.dispatch.bind(this),this._root=e.root||bEe(e.parent)||document,this.viewState=new Yw(this,e.state||lr.create(e)),e.scrollTo&&e.scrollTo.is(Qw)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Fh).map(o=>new l4(o));for(let o of this.plugins)o.update(this);this.observer=new lx(this),this.inputState=new W_(this),this.inputState.ensureHandlers(this.plugins),this.docView=new Uw(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((i=document.fonts)===null||i===void 0)&&i.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...e){let i=e.length==1&&e[0]instanceof D0?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(i,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let i=!1,n=!1,o,a=this.state;for(let B of e){if(B.startState!=a)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");a=B.state}if(this.destroyed){this.viewState.state=a;return}let r=this.hasFocus,s=0,l=null;e.some(B=>B.annotation(cX))?(this.inputState.notifiedFocused=r,s=1):r!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=r,l=gX(a,r),l||(s=1));let c=this.observer.delayedAndroidKey,C=null;if(c?(this.observer.clearDelayedAndroidKey(),C=this.observer.readChange(),(C&&!this.state.doc.eq(a.doc)||!this.state.selection.eq(a.selection))&&(C=null)):this.observer.clear(),a.facet(lr.phrases)!=this.state.facet(lr.phrases))return this.setState(a);o=Gw.create(this,a,e),o.flags|=s;let d=this.viewState.scrollTarget;try{this.updateState=2;for(let B of e){if(d&&(d=d.map(B.changes)),B.scrollIntoView){let{main:E}=B.state.selection;d=new s4(E.empty?E:uA.cursor(E.head,E.head>E.anchor?-1:1))}for(let E of B.effects)E.is(Qw)&&(d=E.value.clip(this.state))}this.viewState.update(o,d),this.bidiCache=Hw.update(this.bidiCache,o.changes),o.empty||(this.updatePlugins(o),this.inputState.update(o)),i=this.docView.update(o),this.state.facet(i4)!=this.styleModules&&this.mountStyles(),n=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(i,e.some(B=>B.isUserEvent("select.pointer")))}finally{this.updateState=0}if(o.startState.facet(yw)!=o.state.facet(yw)&&(this.viewState.mustMeasureContent=!0),(i||n||d||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),i&&this.docViewUpdate(),!o.empty)for(let B of this.state.facet(E_))try{B(o)}catch(E){zr(this.state,E,"update listener")}(l||C)&&Promise.resolve().then(()=>{l&&this.state==l.startState&&this.dispatch(l),C&&!iX(this,C)&&c.force&&Th(this.contentDOM,c.key,c.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let i=this.hasFocus;try{for(let n of this.plugins)n.destroy(this);this.viewState=new Yw(this,e),this.plugins=e.facet(Fh).map(n=>new l4(n)),this.pluginMap.clear();for(let n of this.plugins)n.update(this);this.docView.destroy(),this.docView=new Uw(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}i&&this.focus(),this.requestMeasure()}updatePlugins(e){let i=e.startState.facet(Fh),n=e.state.facet(Fh);if(i!=n){let o=[];for(let a of n){let r=i.indexOf(a);if(r<0)o.push(new l4(a));else{let s=this.plugins[r];s.mustUpdate=e,o.push(s)}}for(let a of this.plugins)a.mustUpdate!=e&&a.destroy(this);this.plugins=o,this.pluginMap.clear()}else for(let o of this.plugins)o.mustUpdate=e;for(let o=0;o-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,e&&this.observer.forceFlush();let i=null,n=this.viewState.scrollParent,o=this.viewState.getScrollOffset(),{scrollAnchorPos:a,scrollAnchorHeight:r}=this.viewState;Math.abs(o-this.viewState.scrollOffset)>1&&(r=-1),this.viewState.scrollAnchorHeight=-1;try{for(let s=0;;s++){if(r<0)if(RW(n||this.win))a=-1,r=this.viewState.heightMap.height;else{let E=this.viewState.scrollAnchorAt(o);a=E.from,r=E.top}this.updateState=1;let l=this.viewState.measure();if(!l&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(s>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let c=[];l&4||([this.measureRequests,c]=[c,this.measureRequests]);let C=c.map(E=>{try{return E.read(this)}catch(u){return zr(this.state,u),IW}}),d=Gw.create(this,this.state,[]),B=!1;d.flags|=l,i?i.flags|=l:i=d,this.updateState=2,d.empty||(this.updatePlugins(d),this.inputState.update(d),this.updateAttrs(),B=this.docView.update(d),B&&this.docViewUpdate());for(let E=0;E1||u<-1)&&(n==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){o=o+u,n?n.scrollTop+=u:this.win.scrollBy(0,u),r=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(i&&!i.empty)for(let s of this.state.facet(E_))s(i)}get themeClasses(){return rx+" "+(this.state.facet(f_)?IX:dX)+" "+this.state.facet(yw)}updateAttrs(){let e=BW(this,VZ,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),i={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(SC)?"true":"false",class:"cm-content",style:`${ut.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(i["aria-readonly"]="true"),BW(this,G_,i);let n=this.observer.ignore(()=>{let o=YZ(this.contentDOM,this.contentAttrs,i),a=YZ(this.dom,this.editorAttrs,e);return o||a});return this.editorAttrs=e,this.contentAttrs=i,n}showAnnouncements(e){let i=!0;for(let n of e)for(let o of n.effects)if(o.is(t.announce)){i&&(this.announceDOM.textContent=""),i=!1;let a=this.announceDOM.appendChild(document.createElement("div"));a.textContent=o.value}}mountStyles(){this.styleModules=this.state.facet(i4);let e=this.state.facet(t.cspNonce);bc.mount(this.root,this.styleModules.concat(_Qe).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let i=0;in.plugin==e)||null),i&&i.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,i,n){return m_(this,e,$Z(this,e,i,n))}moveByGroup(e,i){return m_(this,e,$Z(this,e,i,n=>tQe(this,e.head,n)))}visualLineSide(e,i){let n=this.bidiSpans(e),o=this.textDirectionAt(e.from),a=n[i?n.length-1:0];return uA.cursor(a.side(i,o)+e.from,a.forward(!i,o)?1:-1)}moveToLineBoundary(e,i,n=!0){return AQe(this,e,i,n)}moveVertically(e,i,n){return m_(this,e,iQe(this,e,i,n))}domAtPos(e,i=1){return this.docView.domAtPos(e,i)}posAtDOM(e,i=0){return this.docView.posFromDOM(e,i)}posAtCoords(e,i=!0){this.readMeasured();let n=j_(this,e,i);return n&&n.pos}posAndSideAtCoords(e,i=!0){return this.readMeasured(),j_(this,e,i)}coordsAtPos(e,i=1){this.readMeasured();let n=this.docView.coordsAt(e,i);if(!n||n.left==n.right)return n;let o=this.state.doc.lineAt(e),a=this.bidiSpans(o),r=a[kc.find(a,e-o.from,-1,i)];return Lw(n,r.dir==Go.LTR==i>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(jZ)||ethis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>NQe)return UW(e.length);let i=this.textDirectionAt(e.from),n;for(let a of this.bidiCache)if(a.from==e.from&&a.dir==i&&(a.fresh||KW(a.isolates,n=qZ(this,e))))return a.order;n||(n=qZ(this,e));let o=FEe(e.text,i,n);return this.bidiCache.push(new Hw(e.from,e.to,i,n,!0,o)),o}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||ut.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{xW(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,i={}){return Qw.of(new s4(typeof e=="number"?uA.cursor(e):e,i.y,i.x,i.yMargin,i.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:i}=this.scrollDOM,n=this.viewState.scrollAnchorAt(e);return Qw.of(new s4(uA.cursor(n.from),"start","start",n.top-e,i,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return Vo.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return Vo.define(()=>({}),{eventObservers:e})}static theme(e,i){let n=bc.newName(),o=[yw.of(n),i4.of(sx(`.${n}`,e))];return i&&i.dark&&o.push(f_.of(!0)),o}static baseTheme(e){return pg.lowest(i4.of(sx("."+rx,e,BX)))}static findFromDOM(e){var i;let n=e.querySelector(".cm-content"),o=n&&La.get(n)||La.get(e);return((i=o?.root)===null||i===void 0?void 0:i.view)||null}}return t.styleModule=i4,t.inputHandler=HW,t.clipboardInputFilter=vx,t.clipboardOutputFilter=Dx,t.scrollHandler=VW,t.focusChangeEffect=PW,t.perLineTextDirection=jZ,t.exceptionSink=YW,t.updateListener=E_,t.editable=SC,t.mouseSelectionStyle=zW,t.dragMovesSelection=JW,t.clickAddsSelectionRange=OW,t.decorations=Xw,t.blockWrappers=ZW,t.outerDecorations=bx,t.atomicRanges=Q4,t.bidiIsolatedRanges=WW,t.scrollMargins=XW,t.darkTheme=f_,t.cspNonce=lt.define({combine:A=>A.length?A[0]:""}),t.contentAttributes=G_,t.editorAttributes=VZ,t.lineWrapping=t.contentAttributes.of({class:"cm-lineWrapping"}),t.announce=gn.define(),t})(),NQe=4096,IW={},Hw=class t{constructor(A,e,i,n,o,a){this.from=A,this.to=e,this.dir=i,this.isolates=n,this.fresh=o,this.order=a}static update(A,e){if(e.empty&&!A.some(o=>o.fresh))return A;let i=[],n=A.length?A[A.length-1].dir:Go.LTR;for(let o=Math.max(0,A.length-10);o=0;n--){let o=i[n],a=typeof o=="function"?o(t):o;a&&fx(a,e)}return e}var FQe=ut.mac?"mac":ut.windows?"win":ut.linux?"linux":"key";function LQe(t,A){let e=t.split(/-(?!$)/),i=e[e.length-1];i=="Space"&&(i=" ");let n,o,a,r;for(let s=0;si.concat(n),[]))),e}function uX(t,A,e){return EX(hX(t.state),A,t,e)}var qd=null,KQe=4e3;function UQe(t,A=FQe){let e=Object.create(null),i=Object.create(null),n=(a,r)=>{let s=i[a];if(s==null)i[a]=r;else if(s!=r)throw new Error("Key binding "+a+" is used both as a regular binding and as a multi-stroke prefix")},o=(a,r,s,l,c)=>{var C,d;let B=e[a]||(e[a]=Object.create(null)),E=r.split(/ (?!$)/).map(f=>LQe(f,A));for(let f=1;f{let k=qd={view:S,prefix:D,scope:a};return setTimeout(()=>{qd==k&&(qd=null)},KQe),!0}]})}let u=E.join(" ");n(u,!1);let m=B[u]||(B[u]={preventDefault:!1,stopPropagation:!1,run:((d=(C=B._any)===null||C===void 0?void 0:C.run)===null||d===void 0?void 0:d.slice())||[]});s&&m.run.push(s),l&&(m.preventDefault=!0),c&&(m.stopPropagation=!0)};for(let a of t){let r=a.scope?a.scope.split(" "):["editor"];if(a.any)for(let l of r){let c=e[l]||(e[l]=Object.create(null));c._any||(c._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:C}=a;for(let d in c)c[d].run.push(B=>C(B,gx))}let s=a[A]||a.key;if(s)for(let l of r)o(l,s,a.run,a.preventDefault,a.stopPropagation),a.shift&&o(l,"Shift-"+s,a.shift,a.preventDefault,a.stopPropagation)}return e}var gx=null;function EX(t,A,e,i){gx=A;let n=UZ(A),o=os(n,0),a=Pl(o)==n.length&&n!=" ",r="",s=!1,l=!1,c=!1;qd&&qd.view==e&&qd.scope==i&&(r=qd.prefix+" ",aX.indexOf(A.keyCode)<0&&(l=!0,qd=null));let C=new Set,d=m=>{if(m){for(let f of m.run)if(!C.has(f)&&(C.add(f),f(e)))return m.stopPropagation&&(c=!0),!0;m.preventDefault&&(m.stopPropagation&&(c=!0),l=!0)}return!1},B=t[i],E,u;return B&&(d(B[r+vw(n,A,!a)])?s=!0:a&&(A.altKey||A.metaKey||A.ctrlKey)&&!(ut.windows&&A.ctrlKey&&A.altKey)&&!(ut.mac&&A.altKey&&!(A.ctrlKey||A.metaKey))&&(E=MC[A.keyCode])&&E!=n?(d(B[r+vw(E,A,!0)])||A.shiftKey&&(u=Rh[A.keyCode])!=n&&u!=E&&d(B[r+vw(u,A,!1)]))&&(s=!0):a&&A.shiftKey&&d(B[r+vw(n,A,!0)])&&(s=!0),!s&&d(B._any)&&(s=!0)),l&&(s=!0),s&&c&&A.stopPropagation(),gx=null,s}var XI=class t{constructor(A,e,i,n,o){this.className=A,this.left=e,this.top=i,this.width=n,this.height=o}draw(){let A=document.createElement("div");return A.className=this.className,this.adjust(A),A}update(A,e){return e.className!=this.className?!1:(this.adjust(A),!0)}adjust(A){A.style.left=this.left+"px",A.style.top=this.top+"px",this.width!=null&&(A.style.width=this.width+"px"),A.style.height=this.height+"px"}eq(A){return this.left==A.left&&this.top==A.top&&this.width==A.width&&this.height==A.height&&this.className==A.className}static forRange(A,e,i){if(i.empty){let n=A.coordsAtPos(i.head,i.assoc||1);if(!n)return[];let o=QX(A);return[new t(e,n.left-o.left,n.top-o.top,null,n.bottom-n.top)]}else return TQe(A,e,i)}};function QX(t){let A=t.scrollDOM.getBoundingClientRect();return{left:(t.textDirection==Go.LTR?A.left:A.right-t.scrollDOM.clientWidth*t.scaleX)-t.scrollDOM.scrollLeft*t.scaleX,top:A.top-t.scrollDOM.scrollTop*t.scaleY}}function uW(t,A,e,i){let n=t.coordsAtPos(A,e*2);if(!n)return i;let o=t.dom.getBoundingClientRect(),a=(n.top+n.bottom)/2,r=t.posAtCoords({x:o.left+1,y:a}),s=t.posAtCoords({x:o.right-1,y:a});return r==null||s==null?i:{from:Math.max(i.from,Math.min(r,s)),to:Math.min(i.to,Math.max(r,s))}}function TQe(t,A,e){if(e.to<=t.viewport.from||e.from>=t.viewport.to)return[];let i=Math.max(e.from,t.viewport.from),n=Math.min(e.to,t.viewport.to),o=t.textDirection==Go.LTR,a=t.contentDOM,r=a.getBoundingClientRect(),s=QX(t),l=a.querySelector(".cm-line"),c=l&&window.getComputedStyle(l),C=r.left+(c?parseInt(c.paddingLeft)+Math.min(0,parseInt(c.textIndent)):0),d=r.right-(c?parseInt(c.paddingRight):0),B=P_(t,i,1),E=P_(t,n,-1),u=B.type==as.Text?B:null,m=E.type==as.Text?E:null;if(u&&(t.lineWrapping||B.widgetLineBreaks)&&(u=uW(t,i,1,u)),m&&(t.lineWrapping||E.widgetLineBreaks)&&(m=uW(t,n,-1,m)),u&&m&&u.from==m.from&&u.to==m.to)return D(S(e.from,e.to,u));{let b=u?S(e.from,null,u):k(B,!1),x=m?S(null,e.to,m):k(E,!0),F=[];return(u||B).to<(m||E).from-(u&&m?1:0)||B.widgetLineBreaks>1&&b.bottom+t.defaultLineHeight/2W&&we.from=Ee)break;xe>Be&&Ae(Math.max(Ie,Be),b==null&&Ie<=W,Math.min(xe,Ee),x==null&&xe>=Ce,de.dir)}if(Be=Ne.to+1,Be>=Ee)break}return X.length==0&&Ae(W,b==null,Ce,x==null,t.textDirection),{top:P,bottom:j,horizontal:X}}function k(b,x){let F=r.top+(x?b.top:b.bottom);return{top:F,bottom:F,horizontal:[]}}}function OQe(t,A){return t.constructor==A.constructor&&t.eq(A)}var Cx=class{constructor(A,e){this.view=A,this.layer=e,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=A.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),e.above&&this.dom.classList.add("cm-layer-above"),e.class&&this.dom.classList.add(e.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(A.state),A.requestMeasure(this.measureReq),e.mount&&e.mount(this.dom,A)}update(A){A.startState.facet(kw)!=A.state.facet(kw)&&this.setOrder(A.state),(this.layer.update(A,this.dom)||A.geometryChanged)&&(this.scale(),A.view.requestMeasure(this.measureReq))}docViewUpdate(A){this.layer.updateOnDocViewUpdate!==!1&&A.requestMeasure(this.measureReq)}setOrder(A){let e=0,i=A.facet(kw);for(;e!OQe(e,this.drawn[i]))){let e=this.dom.firstChild,i=0;for(let n of A)n.update&&e&&n.constructor&&this.drawn[i].constructor&&n.update(e,this.drawn[i])?(e=e.nextSibling,i++):this.dom.insertBefore(n.draw(),e);for(;e;){let n=e.nextSibling;e.remove(),e=n}this.drawn=A,ut.safari&&ut.safari_version>=26&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}},kw=lt.define();function pX(t){return[Vo.define(A=>new Cx(A,t)),kw.of(t)]}var Ph=lt.define({combine(t){return Jr(t,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(A,e)=>Math.min(A,e),drawRangeCursor:(A,e)=>A||e})}});function mX(t={}){return[Ph.of(t),JQe,zQe,YQe,jW.of(!0)]}function fX(t){return t.startState.facet(Ph)!=t.state.facet(Ph)}var JQe=pX({above:!0,markers(t){let{state:A}=t,e=A.facet(Ph),i=[];for(let n of A.selection.ranges){let o=n==A.selection.main;if(n.empty||e.drawRangeCursor&&!(o&&ut.ios&&e.iosSelectionHandles)){let a=o?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",r=n.empty?n:uA.cursor(n.head,n.assoc);for(let s of XI.forRange(t,a,r))i.push(s)}}return i},update(t,A){t.transactions.some(i=>i.selection)&&(A.style.animationName=A.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let e=fX(t);return e&&EW(t.state,A),t.docChanged||t.selectionSet||e},mount(t,A){EW(A.state,t)},class:"cm-cursorLayer"});function EW(t,A){A.style.animationDuration=t.facet(Ph).cursorBlinkRate+"ms"}var zQe=pX({above:!1,markers(t){let A=[],{main:e,ranges:i}=t.state.selection;for(let n of i)if(!n.empty)for(let o of XI.forRange(t,"cm-selectionBackground",n))A.push(o);if(ut.ios&&!e.empty&&t.state.facet(Ph).iosSelectionHandles){for(let n of XI.forRange(t,"cm-selectionHandle cm-selectionHandle-start",uA.cursor(e.from,1)))A.push(n);for(let n of XI.forRange(t,"cm-selectionHandle cm-selectionHandle-end",uA.cursor(e.to,1)))A.push(n)}return A},update(t,A){return t.docChanged||t.selectionSet||t.viewportChanged||fX(t)},class:"cm-selectionLayer"}),YQe=pg.highest(mi.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}})),wX=gn.define({map(t,A){return t==null?null:A.mapPos(t)}}),o4=Oa.define({create(){return null},update(t,A){return t!=null&&(t=A.changes.mapPos(t)),A.effects.reduce((e,i)=>i.is(wX)?i.value:e,t)}}),HQe=Vo.fromClass(class{constructor(t){this.view=t,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(t){var A;let e=t.state.field(o4);e==null?this.cursor!=null&&((A=this.cursor)===null||A===void 0||A.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(t.startState.field(o4)!=e||t.docChanged||t.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:t}=this,A=t.state.field(o4),e=A!=null&&t.coordsAtPos(A);if(!e)return null;let i=t.scrollDOM.getBoundingClientRect();return{left:e.left-i.left+t.scrollDOM.scrollLeft*t.scaleX,top:e.top-i.top+t.scrollDOM.scrollTop*t.scaleY,height:e.bottom-e.top}}drawCursor(t){if(this.cursor){let{scaleX:A,scaleY:e}=this.view;t?(this.cursor.style.left=t.left/A+"px",this.cursor.style.top=t.top/e+"px",this.cursor.style.height=t.height/e+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(t){this.view.state.field(o4)!=t&&this.view.dispatch({effects:wX.of(t)})}},{eventObservers:{dragover(t){this.setDropPos(this.view.posAtCoords({x:t.clientX,y:t.clientY}))},dragleave(t){(t.target==this.view.contentDOM||!this.view.contentDOM.contains(t.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function yX(){return[o4,HQe]}function QW(t,A,e,i,n){A.lastIndex=0;for(let o=t.iterRange(e,i),a=e,r;!o.next().done;a+=o.value.length)if(!o.lineBreak)for(;r=A.exec(o.value);)n(a+r.index,r)}function PQe(t,A){let e=t.visibleRanges;if(e.length==1&&e[0].from==t.viewport.from&&e[0].to==t.viewport.to)return e;let i=[];for(let{from:n,to:o}of e)n=Math.max(t.state.doc.lineAt(n).from,n-A),o=Math.min(t.state.doc.lineAt(o).to,o+A),i.length&&i[i.length-1].to>=n?i[i.length-1].to=o:i.push({from:n,to:o});return i}var dx=class{constructor(A){let{regexp:e,decoration:i,decorate:n,boundary:o,maxLength:a=1e3}=A;if(!e.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=e,n)this.addMatch=(r,s,l,c)=>n(c,l,l+r[0].length,r,s);else if(typeof i=="function")this.addMatch=(r,s,l,c)=>{let C=i(r,s,l);C&&c(l,l+r[0].length,C)};else if(i)this.addMatch=(r,s,l,c)=>c(l,l+r[0].length,i);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=o,this.maxLength=a}createDeco(A){let e=new ns,i=e.add.bind(e);for(let{from:n,to:o}of PQe(A,this.maxLength))QW(A.state.doc,this.regexp,n,o,(a,r)=>this.addMatch(r,A,a,i));return e.finish()}updateDeco(A,e){let i=1e9,n=-1;return A.docChanged&&A.changes.iterChanges((o,a,r,s)=>{s>=A.view.viewport.from&&r<=A.view.viewport.to&&(i=Math.min(r,i),n=Math.max(s,n))}),A.viewportMoved||n-i>1e3?this.createDeco(A.view):n>-1?this.updateRange(A.view,e.map(A.changes),i,n):e}updateRange(A,e,i,n){for(let o of A.visibleRanges){let a=Math.max(o.from,i),r=Math.min(o.to,n);if(r>=a){let s=A.state.doc.lineAt(a),l=s.tos.from;a--)if(this.boundary.test(s.text[a-1-s.from])){c=a;break}for(;rd.push(f.range(u,m));if(s==l)for(this.regexp.lastIndex=c-s.from;(B=this.regexp.exec(s.text))&&B.indexthis.addMatch(m,A,u,E));e=e.update({filterFrom:c,filterTo:C,filter:(u,m)=>uC,add:d})}}return e}},Ix=/x/.unicode!=null?"gu":"g",jQe=new RegExp(`[\0-\b +-\x7F-\x9F\xAD\u061C\u200B\u200E\u200F\u2028\u2029\u202D\u202E\u2066\u2067\u2069\uFEFF\uFFF9-\uFFFC]`,Ix),VQe={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"},y_=null;function qQe(){var t;if(y_==null&&typeof document<"u"&&document.body){let A=document.body.style;y_=((t=A.tabSize)!==null&&t!==void 0?t:A.MozTabSize)!=null}return y_||!1}var _w=lt.define({combine(t){let A=Jr(t,{render:null,specialChars:jQe,addSpecialChars:null});return(A.replaceTabs=!qQe())&&(A.specialChars=new RegExp(" |"+A.specialChars.source,Ix)),A.addSpecialChars&&(A.specialChars=new RegExp(A.specialChars.source+"|"+A.addSpecialChars.source,Ix)),A}});function vX(t={}){return[_w.of(t),ZQe()]}var pW=null;function ZQe(){return pW||(pW=Vo.fromClass(class{constructor(t){this.view=t,this.decorations=Tt.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(t.state.facet(_w)),this.decorations=this.decorator.createDeco(t)}makeDecorator(t){return new dx({regexp:t.specialChars,decoration:(A,e,i)=>{let{doc:n}=e.state,o=os(A[0],0);if(o==9){let a=n.lineAt(i),r=e.state.tabSize,s=bC(a.text,r,i-a.from);return Tt.replace({widget:new hx((r-s%r)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[o]||(this.decorationCache[o]=Tt.replace({widget:new Bx(t,o)}))},boundary:t.replaceTabs?void 0:/[^]/})}update(t){let A=t.state.facet(_w);t.startState.facet(_w)!=A?(this.decorator=this.makeDecorator(A),this.decorations=this.decorator.createDeco(t.view)):this.decorations=this.decorator.updateDeco(t,this.decorations)}},{decorations:t=>t.decorations}))}var WQe="\u2022";function XQe(t){return t>=32?WQe:t==10?"\u2424":String.fromCharCode(9216+t)}var Bx=class extends pl{constructor(A,e){super(),this.options=A,this.code=e}eq(A){return A.code==this.code}toDOM(A){let e=XQe(this.code),i=A.state.phrase("Control character")+" "+(VQe[this.code]||"0x"+this.code.toString(16)),n=this.options.render&&this.options.render(this.code,i,e);if(n)return n;let o=document.createElement("span");return o.textContent=e,o.title=i,o.setAttribute("aria-label",i),o.className="cm-specialChar",o}ignoreEvent(){return!1}},hx=class extends pl{constructor(A){super(),this.width=A}eq(A){return A.width==this.width}toDOM(){let A=document.createElement("span");return A.textContent=" ",A.className="cm-tab",A.style.width=this.width+"px",A}ignoreEvent(){return!1}};function DX(){return epe}var $Qe=Tt.line({class:"cm-activeLine"}),epe=Vo.fromClass(class{constructor(t){this.decorations=this.getDeco(t)}update(t){(t.docChanged||t.selectionSet)&&(this.decorations=this.getDeco(t.view))}getDeco(t){let A=-1,e=[];for(let i of t.state.selection.ranges){let n=t.lineBlockAt(i.head);n.from>A&&(e.push($Qe.range(n.from)),A=n.from)}return Tt.set(e)}},{decorations:t=>t.decorations});var ux=2e3;function Ape(t,A,e){let i=Math.min(A.line,e.line),n=Math.max(A.line,e.line),o=[];if(A.off>ux||e.off>ux||A.col<0||e.col<0){let a=Math.min(A.off,e.off),r=Math.max(A.off,e.off);for(let s=i;s<=n;s++){let l=t.doc.line(s);l.length<=r&&o.push(uA.range(l.from+a,l.to+r))}}else{let a=Math.min(A.col,e.col),r=Math.max(A.col,e.col);for(let s=i;s<=n;s++){let l=t.doc.line(s),c=uw(l.text,a,t.tabSize,!0);if(c<0)o.push(uA.cursor(l.to));else{let C=uw(l.text,r,t.tabSize);o.push(uA.range(l.from+c,l.from+C))}}}return o}function tpe(t,A){let e=t.coordsAtPos(t.viewport.from);return e?Math.round(Math.abs((e.left-A)/t.defaultCharacterWidth)):-1}function mW(t,A){let e=t.posAtCoords({x:A.clientX,y:A.clientY},!1),i=t.state.doc.lineAt(e),n=e-i.from,o=n>ux?-1:n==i.length?tpe(t,A.clientX):bC(i.text,t.state.tabSize,e-i.from);return{line:i.number,col:o,off:n}}function ipe(t,A){let e=mW(t,A),i=t.state.selection;return e?{update(n){if(n.docChanged){let o=n.changes.mapPos(n.startState.doc.line(e.line).from),a=n.state.doc.lineAt(o);e={line:a.number,col:e.col,off:Math.min(e.off,a.length)},i=i.map(n.changes)}},get(n,o,a){let r=mW(t,n);if(!r)return i;let s=Ape(t.state,e,r);return s.length?a?uA.create(s.concat(i.ranges)):uA.create(s):i}}:null}function bX(t){let A=t?.eventFilter||(e=>e.altKey&&e.button==0);return mi.mouseSelectionStyle.of((e,i)=>A(i)?ipe(e,i):null)}var npe={Alt:[18,t=>!!t.altKey],Control:[17,t=>!!t.ctrlKey],Shift:[16,t=>!!t.shiftKey],Meta:[91,t=>!!t.metaKey]},ope={style:"cursor: crosshair"};function MX(t={}){let[A,e]=npe[t.key||"Alt"],i=Vo.fromClass(class{constructor(n){this.view=n,this.isDown=!1}set(n){this.isDown!=n&&(this.isDown=n,this.view.update([]))}},{eventObservers:{keydown(n){this.set(n.keyCode==A||e(n))},keyup(n){(n.keyCode==A||!e(n))&&this.set(!1)},mousemove(n){this.set(e(n))}}});return[i,mi.contentAttributes.of(n=>{var o;return!((o=n.plugin(i))===null||o===void 0)&&o.isDown?ope:null})]}var Dw="-10000px",Pw=class{constructor(A,e,i,n){this.facet=e,this.createTooltipView=i,this.removeTooltipView=n,this.input=A.state.facet(e),this.tooltips=this.input.filter(a=>a);let o=null;this.tooltipViews=this.tooltips.map(a=>o=i(a,o))}update(A,e){var i;let n=A.state.facet(this.facet),o=n.filter(s=>s);if(n===this.input){for(let s of this.tooltipViews)s.update&&s.update(A);return!1}let a=[],r=e?[]:null;for(let s=0;se[l]=s),e.length=r.length),this.input=n,this.tooltips=o,this.tooltipViews=a,!0}};function ape(t){let A=t.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:A.clientHeight,right:A.clientWidth}}var v_=lt.define({combine:t=>{var A,e,i;return{position:ut.ios?"absolute":((A=t.find(n=>n.position))===null||A===void 0?void 0:A.position)||"fixed",parent:((e=t.find(n=>n.parent))===null||e===void 0?void 0:e.parent)||null,tooltipSpace:((i=t.find(n=>n.tooltipSpace))===null||i===void 0?void 0:i.tooltipSpace)||ape}}}),fW=new WeakMap,kx=Vo.fromClass(class{constructor(t){this.view=t,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let A=t.state.facet(v_);this.position=A.position,this.parent=A.parent,this.classes=t.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new Pw(t,Vh,(e,i)=>this.createTooltip(e,i),e=>{this.resizeObserver&&this.resizeObserver.unobserve(e.dom),e.dom.remove()}),this.above=this.manager.tooltips.map(e=>!!e.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(e=>{Date.now()>this.lastTransaction-50&&e.length>0&&e[e.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),t.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let t of this.manager.tooltipViews)this.intersectionObserver.observe(t.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(t){t.transactions.length&&(this.lastTransaction=Date.now());let A=this.manager.update(t,this.above);A&&this.observeIntersection();let e=A||t.geometryChanged,i=t.state.facet(v_);if(i.position!=this.position&&!this.madeAbsolute){this.position=i.position;for(let n of this.manager.tooltipViews)n.dom.style.position=this.position;e=!0}if(i.parent!=this.parent){this.parent&&this.container.remove(),this.parent=i.parent,this.createContainer();for(let n of this.manager.tooltipViews)this.container.appendChild(n.dom);e=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);e&&this.maybeMeasure()}createTooltip(t,A){let e=t.create(this.view),i=A?A.dom:null;if(e.dom.classList.add("cm-tooltip"),t.arrow&&!e.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let n=document.createElement("div");n.className="cm-tooltip-arrow",e.dom.appendChild(n)}return e.dom.style.position=this.position,e.dom.style.top=Dw,e.dom.style.left="0px",this.container.insertBefore(e.dom,i),e.mount&&e.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(e.dom),e}destroy(){var t,A,e;this.view.win.removeEventListener("resize",this.measureSoon);for(let i of this.manager.tooltipViews)i.dom.remove(),(t=i.destroy)===null||t===void 0||t.call(i);this.parent&&this.container.remove(),(A=this.resizeObserver)===null||A===void 0||A.disconnect(),(e=this.intersectionObserver)===null||e===void 0||e.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let t=1,A=1,e=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:o}=this.manager.tooltipViews[0];if(ut.safari){let a=o.getBoundingClientRect();e=Math.abs(a.top+1e4)>1||Math.abs(a.left)>1}else e=!!o.offsetParent&&o.offsetParent!=this.container.ownerDocument.body}if(e||this.position=="absolute")if(this.parent){let o=this.parent.getBoundingClientRect();o.width&&o.height&&(t=o.width/this.parent.offsetWidth,A=o.height/this.parent.offsetHeight)}else({scaleX:t,scaleY:A}=this.view.viewState);let i=this.view.scrollDOM.getBoundingClientRect(),n=Mx(this.view);return{visible:{left:i.left+n.left,top:i.top+n.top,right:i.right-n.right,bottom:i.bottom-n.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((o,a)=>{let r=this.manager.tooltipViews[a];return r.getCoords?r.getCoords(o.pos):this.view.coordsAtPos(o.pos)}),size:this.manager.tooltipViews.map(({dom:o})=>o.getBoundingClientRect()),space:this.view.state.facet(v_).tooltipSpace(this.view),scaleX:t,scaleY:A,makeAbsolute:e}}writeMeasure(t){var A;if(t.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let r of this.manager.tooltipViews)r.dom.style.position="absolute"}let{visible:e,space:i,scaleX:n,scaleY:o}=t,a=[];for(let r=0;r=Math.min(e.bottom,i.bottom)||C.rightMath.min(e.right,i.right)+.1)){c.style.top=Dw;continue}let B=s.arrow?l.dom.querySelector(".cm-tooltip-arrow"):null,E=B?7:0,u=d.right-d.left,m=(A=fW.get(l))!==null&&A!==void 0?A:d.bottom-d.top,f=l.offset||spe,D=this.view.textDirection==Go.LTR,S=d.width>i.right-i.left?D?i.left:i.right-d.width:D?Math.max(i.left,Math.min(C.left-(B?14:0)+f.x,i.right-u)):Math.min(Math.max(i.left,C.left-u+(B?14:0)-f.x),i.right-u),k=this.above[r];!s.strictSide&&(k?C.top-m-E-f.yi.bottom)&&k==i.bottom-C.bottom>C.top-i.top&&(k=this.above[r]=!k);let b=(k?C.top-i.top:i.bottom-C.bottom)-E;if(bS&&P.topx&&(x=k?P.top-m-2-E:P.bottom+E+2);if(this.position=="absolute"?(c.style.top=(x-t.parent.top)/o+"px",wW(c,(S-t.parent.left)/n)):(c.style.top=x/o+"px",wW(c,S/n)),B){let P=C.left+(D?f.x:-f.x)-(S+14-7);B.style.left=P/n+"px"}l.overlap!==!0&&a.push({left:S,top:x,right:F,bottom:x+m}),c.classList.toggle("cm-tooltip-above",k),c.classList.toggle("cm-tooltip-below",!k),l.positioned&&l.positioned(t.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let t of this.manager.tooltipViews)t.dom.style.top=Dw}},{eventObservers:{scroll(){this.maybeMeasure()}}});function wW(t,A){let e=parseInt(t.style.left,10);(isNaN(e)||Math.abs(A-e)>1)&&(t.style.left=A+"px")}var rpe=mi.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),spe={x:0,y:0},Vh=lt.define({enables:[kx,rpe]}),jw=lt.define({combine:t=>t.reduce((A,e)=>A.concat(e),[])}),Vw=class t{static create(A){return new t(A)}constructor(A){this.view=A,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new Pw(A,jw,(e,i)=>this.createHostedView(e,i),e=>e.dom.remove())}createHostedView(A,e){let i=A.create(this.view);return i.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(i.dom,e?e.dom.nextSibling:this.dom.firstChild),this.mounted&&i.mount&&i.mount(this.view),i}mount(A){for(let e of this.manager.tooltipViews)e.mount&&e.mount(A);this.mounted=!0}positioned(A){for(let e of this.manager.tooltipViews)e.positioned&&e.positioned(A)}update(A){this.manager.update(A)}destroy(){var A;for(let e of this.manager.tooltipViews)(A=e.destroy)===null||A===void 0||A.call(e)}passProp(A){let e;for(let i of this.manager.tooltipViews){let n=i[A];if(n!==void 0){if(e===void 0)e=n;else if(e!==n)return}}return e}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}},lpe=Vh.compute([jw],t=>{let A=t.facet(jw);return A.length===0?null:{pos:Math.min(...A.map(e=>e.pos)),end:Math.max(...A.map(e=>{var i;return(i=e.end)!==null&&i!==void 0?i:e.pos})),create:Vw.create,above:A[0].above,arrow:A.some(e=>e.arrow)}}),Ex=class{constructor(A,e,i,n,o){this.view=A,this.source=e,this.field=i,this.setHover=n,this.hoverTime=o,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:A.dom,time:0},this.checkHover=this.checkHover.bind(this),A.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),A.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let A=Date.now()-this.lastMove.time;Ar.bottom||e.xr.right+A.defaultCharacterWidth)return;let s=A.bidiSpans(A.state.doc.lineAt(n)).find(c=>c.from<=n&&c.to>=n),l=s&&s.dir==Go.RTL?-1:1;o=e.x{this.pending==r&&(this.pending=null,s&&!(Array.isArray(s)&&!s.length)&&A.dispatch({effects:this.setHover.of(Array.isArray(s)?s:[s])}))},s=>zr(A.state,s,"hover tooltip"))}else a&&!(Array.isArray(a)&&!a.length)&&A.dispatch({effects:this.setHover.of(Array.isArray(a)?a:[a])})}get tooltip(){let A=this.view.plugin(kx),e=A?A.manager.tooltips.findIndex(i=>i.create==Vw.create):-1;return e>-1?A.manager.tooltipViews[e]:null}mousemove(A){var e,i;this.lastMove={x:A.clientX,y:A.clientY,target:A.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:n,tooltip:o}=this;if(n.length&&o&&!cpe(o.dom,A)||this.pending){let{pos:a}=n[0]||this.pending,r=(i=(e=n[0])===null||e===void 0?void 0:e.end)!==null&&i!==void 0?i:a;(a==r?this.view.posAtCoords(this.lastMove)!=a:!gpe(this.view,a,r,A.clientX,A.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(A){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:e}=this;if(e.length){let{tooltip:i}=this;i&&i.dom.contains(A.relatedTarget)?this.watchTooltipLeave(i.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(A){let e=i=>{A.removeEventListener("mouseleave",e),this.active.length&&!this.view.dom.contains(i.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};A.addEventListener("mouseleave",e)}destroy(){clearTimeout(this.hoverTimeout),clearTimeout(this.restartTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}},bw=4;function cpe(t,A){let{left:e,right:i,top:n,bottom:o}=t.getBoundingClientRect(),a;if(a=t.querySelector(".cm-tooltip-arrow")){let r=a.getBoundingClientRect();n=Math.min(r.top,n),o=Math.max(r.bottom,o)}return A.clientX>=e-bw&&A.clientX<=i+bw&&A.clientY>=n-bw&&A.clientY<=o+bw}function gpe(t,A,e,i,n,o){let a=t.scrollDOM.getBoundingClientRect(),r=t.documentTop+t.documentPadding.top+t.contentHeight;if(a.left>i||a.rightn||Math.min(a.bottom,r)=A&&s<=e}function SX(t,A={}){let e=gn.define(),i=Oa.define({create(){return[]},update(n,o){if(n.length&&(A.hideOnChange&&(o.docChanged||o.selection)?n=[]:A.hideOn&&(n=n.filter(a=>!A.hideOn(o,a))),o.docChanged)){let a=[];for(let r of n){let s=o.changes.mapPos(r.pos,-1,ts.TrackDel);if(s!=null){let l=Object.assign(Object.create(null),r);l.pos=s,l.end!=null&&(l.end=o.changes.mapPos(l.end)),a.push(l)}}n=a}for(let a of o.effects)a.is(e)&&(n=a.value),a.is(Cpe)&&(n=[]);return n},provide:n=>jw.from(n)});return{active:i,extension:[i,Vo.define(n=>new Ex(n,t,i,e,A.hoverTime||300)),lpe]}}function _x(t,A){let e=t.plugin(kx);if(!e)return null;let i=e.manager.tooltips.indexOf(A);return i<0?null:e.manager.tooltipViews[i]}var Cpe=gn.define();var yW=lt.define({combine(t){let A,e;for(let i of t)A=A||i.topContainer,e=e||i.bottomContainer;return{topContainer:A,bottomContainer:e}}});function p4(t,A){let e=t.plugin(kX),i=e?e.specs.indexOf(A):-1;return i>-1?e.panels[i]:null}var kX=Vo.fromClass(class{constructor(t){this.input=t.state.facet(t1),this.specs=this.input.filter(e=>e),this.panels=this.specs.map(e=>e(t));let A=t.state.facet(yW);this.top=new Gh(t,!0,A.topContainer),this.bottom=new Gh(t,!1,A.bottomContainer),this.top.sync(this.panels.filter(e=>e.top)),this.bottom.sync(this.panels.filter(e=>!e.top));for(let e of this.panels)e.dom.classList.add("cm-panel"),e.mount&&e.mount()}update(t){let A=t.state.facet(yW);this.top.container!=A.topContainer&&(this.top.sync([]),this.top=new Gh(t.view,!0,A.topContainer)),this.bottom.container!=A.bottomContainer&&(this.bottom.sync([]),this.bottom=new Gh(t.view,!1,A.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let e=t.state.facet(t1);if(e!=this.input){let i=e.filter(s=>s),n=[],o=[],a=[],r=[];for(let s of i){let l=this.specs.indexOf(s),c;l<0?(c=s(t.view),r.push(c)):(c=this.panels[l],c.update&&c.update(t)),n.push(c),(c.top?o:a).push(c)}this.specs=i,this.panels=n,this.top.sync(o),this.bottom.sync(a);for(let s of r)s.dom.classList.add("cm-panel"),s.mount&&s.mount()}else for(let i of this.panels)i.update&&i.update(t)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:t=>mi.scrollMargins.of(A=>{let e=A.plugin(t);return e&&{top:e.top.scrollMargin(),bottom:e.bottom.scrollMargin()}})}),Gh=class{constructor(A,e,i){this.view=A,this.top=e,this.container=i,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(A){for(let e of this.panels)e.destroy&&A.indexOf(e)<0&&e.destroy();this.panels=A,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let e=this.container||this.view.dom;e.insertBefore(this.dom,this.top?e.firstChild:null)}let A=this.dom.firstChild;for(let e of this.panels)if(e.dom.parentNode==this.dom){for(;A!=e.dom;)A=vW(A);A=A.nextSibling}else this.dom.insertBefore(e.dom,A);for(;A;)A=vW(A)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let A of this.classes.split(" "))A&&this.container.classList.remove(A);for(let A of(this.classes=this.view.themeClasses).split(" "))A&&this.container.classList.add(A)}}};function vW(t){let A=t.nextSibling;return t.remove(),A}var t1=lt.define({enables:kX});function _X(t,A){let e,i=new Promise(a=>e=a),n=a=>dpe(a,A,e);t.state.field(D_,!1)?t.dispatch({effects:xX.of(n)}):t.dispatch({effects:gn.appendConfig.of(D_.init(()=>[n]))});let o=RX.of(n);return{close:o,result:i.then(a=>((t.win.queueMicrotask||(s=>t.win.setTimeout(s,10)))(()=>{t.state.field(D_).indexOf(n)>-1&&t.dispatch({effects:o})}),a))}}var D_=Oa.define({create(){return[]},update(t,A){for(let e of A.effects)e.is(xX)?t=[e.value].concat(t):e.is(RX)&&(t=t.filter(i=>i!=e.value));return t},provide:t=>t1.computeN([t],A=>A.field(t))}),xX=gn.define(),RX=gn.define();function dpe(t,A,e){let i=A.content?A.content(t,()=>a(null)):null;if(!i){if(i=mo("form"),A.input){let r=mo("input",A.input);/^(text|password|number|email|tel|url)$/.test(r.type)&&r.classList.add("cm-textfield"),r.name||(r.name="input"),i.appendChild(mo("label",(A.label||"")+": ",r))}else i.appendChild(document.createTextNode(A.label||""));i.appendChild(document.createTextNode(" ")),i.appendChild(mo("button",{class:"cm-button",type:"submit"},A.submitLabel||"OK"))}let n=i.nodeName=="FORM"?[i]:i.querySelectorAll("form");for(let r=0;r{l.keyCode==27?(l.preventDefault(),a(null)):l.keyCode==13&&(l.preventDefault(),a(s))}),s.addEventListener("submit",l=>{l.preventDefault(),a(s)})}let o=mo("div",i,mo("button",{onclick:()=>a(null),"aria-label":t.state.phrase("close"),class:"cm-dialog-close",type:"button"},["\xD7"]));A.class&&(o.className=A.class),o.classList.add("cm-dialog");function a(r){o.contains(o.ownerDocument.activeElement)&&t.focus(),e(r)}return{dom:o,top:A.top,mount:()=>{if(A.focus){let r;typeof A.focus=="string"?r=i.querySelector(A.focus):r=i.querySelector("input")||i.querySelector("button"),r&&"select"in r?r.select():r&&"focus"in r&&r.focus()}}}}var fl=class extends Dc{compare(A){return this==A||this.constructor==A.constructor&&this.eq(A)}eq(A){return!1}destroy(A){}};fl.prototype.elementClass="";fl.prototype.toDOM=void 0;fl.prototype.mapMode=ts.TrackBefore;fl.prototype.startSide=fl.prototype.endSide=-1;fl.prototype.point=!0;var xw=lt.define(),Ipe=lt.define(),Bpe={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>po.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},d4=lt.define();function ey(t){return[NX(),d4.of(Y(Y({},Bpe),t))]}var Qx=lt.define({combine:t=>t.some(A=>A)});function NX(t){let A=[hpe];return t&&t.fixed===!1&&A.push(Qx.of(!0)),A}var hpe=Vo.fromClass(class{constructor(t){this.view=t,this.domAfter=null,this.prevViewport=t.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=t.state.facet(d4).map(A=>new qw(t,A)),this.fixed=!t.state.facet(Qx);for(let A of this.gutters)A.config.side=="after"?this.getDOMAfter().appendChild(A.dom):this.dom.appendChild(A.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),t.scrollDOM.insertBefore(this.dom,t.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(t){if(this.updateGutters(t)){let A=this.prevViewport,e=t.view.viewport,i=Math.min(A.to,e.to)-Math.max(A.from,e.from);this.syncGutters(i<(e.to-e.from)*.8)}if(t.geometryChanged){let A=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=A,this.domAfter&&(this.domAfter.style.minHeight=A)}this.view.state.facet(Qx)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=t.view.viewport}syncGutters(t){let A=this.dom.nextSibling;t&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let e=po.iter(this.view.state.facet(xw),this.view.viewport.from),i=[],n=this.gutters.map(o=>new mx(o,this.view.viewport,-this.view.documentPadding.top));for(let o of this.view.viewportLineBlocks)if(i.length&&(i=[]),Array.isArray(o.type)){let a=!0;for(let r of o.type)if(r.type==as.Text&&a){px(e,i,r.from);for(let s of n)s.line(this.view,r,i);a=!1}else if(r.widget)for(let s of n)s.widget(this.view,r)}else if(o.type==as.Text){px(e,i,o.from);for(let a of n)a.line(this.view,o,i)}else if(o.widget)for(let a of n)a.widget(this.view,o);for(let o of n)o.finish();t&&(this.view.scrollDOM.insertBefore(this.dom,A),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(t){let A=t.startState.facet(d4),e=t.state.facet(d4),i=t.docChanged||t.heightChanged||t.viewportChanged||!po.eq(t.startState.facet(xw),t.state.facet(xw),t.view.viewport.from,t.view.viewport.to);if(A==e)for(let n of this.gutters)n.update(t)&&(i=!0);else{i=!0;let n=[];for(let o of e){let a=A.indexOf(o);a<0?n.push(new qw(this.view,o)):(this.gutters[a].update(t),n.push(this.gutters[a]))}for(let o of this.gutters)o.dom.remove(),n.indexOf(o)<0&&o.destroy();for(let o of n)o.config.side=="after"?this.getDOMAfter().appendChild(o.dom):this.dom.appendChild(o.dom);this.gutters=n}return i}destroy(){for(let t of this.gutters)t.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:t=>mi.scrollMargins.of(A=>{let e=A.plugin(t);if(!e||e.gutters.length==0||!e.fixed)return null;let i=e.dom.offsetWidth*A.scaleX,n=e.domAfter?e.domAfter.offsetWidth*A.scaleX:0;return A.textDirection==Go.LTR?{left:i,right:n}:{right:i,left:n}})});function DW(t){return Array.isArray(t)?t:[t]}function px(t,A,e){for(;t.value&&t.from<=e;)t.from==e&&A.push(t.value),t.next()}var mx=class{constructor(A,e,i){this.gutter=A,this.height=i,this.i=0,this.cursor=po.iter(A.markers,e.from)}addElement(A,e,i){let{gutter:n}=this,o=(e.top-this.height)/A.scaleY,a=e.height/A.scaleY;if(this.i==n.elements.length){let r=new Zw(A,a,o,i);n.elements.push(r),n.dom.appendChild(r.dom)}else n.elements[this.i].update(A,a,o,i);this.height=e.bottom,this.i++}line(A,e,i){let n=[];px(this.cursor,n,e.from),i.length&&(n=n.concat(i));let o=this.gutter.config.lineMarker(A,e,n);o&&n.unshift(o);let a=this.gutter;n.length==0&&!a.config.renderEmptyElements||this.addElement(A,e,n)}widget(A,e){let i=this.gutter.config.widgetMarker(A,e.widget,e),n=i?[i]:null;for(let o of A.state.facet(Ipe)){let a=o(A,e.widget,e);a&&(n||(n=[])).push(a)}n&&this.addElement(A,e,n)}finish(){let A=this.gutter;for(;A.elements.length>this.i;){let e=A.elements.pop();A.dom.removeChild(e.dom),e.destroy()}}},qw=class{constructor(A,e){this.view=A,this.config=e,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let i in e.domEventHandlers)this.dom.addEventListener(i,n=>{let o=n.target,a;if(o!=this.dom&&this.dom.contains(o)){for(;o.parentNode!=this.dom;)o=o.parentNode;let s=o.getBoundingClientRect();a=(s.top+s.bottom)/2}else a=n.clientY;let r=A.lineBlockAtHeight(a-A.documentTop);e.domEventHandlers[i](A,r,n)&&n.preventDefault()});this.markers=DW(e.markers(A)),e.initialSpacer&&(this.spacer=new Zw(A,0,0,[e.initialSpacer(A)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(A){let e=this.markers;if(this.markers=DW(this.config.markers(A.view)),this.spacer&&this.config.updateSpacer){let n=this.config.updateSpacer(this.spacer.markers[0],A);n!=this.spacer.markers[0]&&this.spacer.update(A.view,0,0,[n])}let i=A.view.viewport;return!po.eq(this.markers,e,i.from,i.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(A):!1)}destroy(){for(let A of this.elements)A.destroy()}},Zw=class{constructor(A,e,i,n){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(A,e,i,n)}update(A,e,i,n){this.height!=e&&(this.height=e,this.dom.style.height=e+"px"),this.above!=i&&(this.dom.style.marginTop=(this.above=i)?i+"px":""),upe(this.markers,n)||this.setMarkers(A,n)}setMarkers(A,e){let i="cm-gutterElement",n=this.dom.firstChild;for(let o=0,a=0;;){let r=a,s=oo(r,s,l)||a(r,s,l):a}return i}})}}),I4=class extends fl{constructor(A){super(),this.number=A}eq(A){return this.number==A.number}toDOM(){return document.createTextNode(this.number)}};function b_(t,A){return t.state.facet(Kh).formatNumber(A,t.state)}var ppe=d4.compute([Kh],t=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(A){return A.state.facet(Epe)},lineMarker(A,e,i){return i.some(n=>n.toDOM)?null:new I4(b_(A,A.state.doc.lineAt(e.from).number))},widgetMarker:(A,e,i)=>{for(let n of A.state.facet(Qpe)){let o=n(A,e,i);if(o)return o}return null},lineMarkerChange:A=>A.startState.facet(Kh)!=A.state.facet(Kh),initialSpacer(A){return new I4(b_(A,bW(A.state.doc.lines)))},updateSpacer(A,e){let i=b_(e.view,bW(e.view.state.doc.lines));return i==A.number?A:new I4(i)},domEventHandlers:t.facet(Kh).domEventHandlers,side:"before"}));function FX(t={}){return[Kh.of(t),NX(),ppe]}function bW(t){let A=9;for(;A{let A=[],e=-1;for(let i of t.selection.ranges){let n=t.doc.lineAt(i.head).from;n>e&&(e=n,A.push(mpe.range(n)))}return po.of(A)});function LX(){return fpe}var wpe=0,m4=class{constructor(A,e){this.from=A,this.to=e}},Pi=class{constructor(A={}){this.id=wpe++,this.perNode=!!A.perNode,this.deserialize=A.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=A.combine||null}add(A){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof A!="function"&&(A=ks.match(A)),e=>{let i=A(e);return i===void 0?null:[this,i]}}};Pi.closedBy=new Pi({deserialize:t=>t.split(" ")});Pi.openedBy=new Pi({deserialize:t=>t.split(" ")});Pi.group=new Pi({deserialize:t=>t.split(" ")});Pi.isolate=new Pi({deserialize:t=>{if(t&&t!="rtl"&&t!="ltr"&&t!="auto")throw new RangeError("Invalid value for isolate: "+t);return t||"auto"}});Pi.contextHash=new Pi({perNode:!0});Pi.lookAhead=new Pi({perNode:!0});Pi.mounted=new Pi({perNode:!0});var i1=class{constructor(A,e,i,n=!1){this.tree=A,this.overlay=e,this.parser=i,this.bracketed=n}static get(A){return A&&A.props&&A.props[Pi.mounted.id]}},ype=Object.create(null),ks=class t{constructor(A,e,i,n=0){this.name=A,this.props=e,this.id=i,this.flags=n}static define(A){let e=A.props&&A.props.length?Object.create(null):ype,i=(A.top?1:0)|(A.skipped?2:0)|(A.error?4:0)|(A.name==null?8:0),n=new t(A.name||"",e,A.id,i);if(A.props){for(let o of A.props)if(Array.isArray(o)||(o=o(n)),o){if(o[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");e[o[0].id]=o[1]}}return n}prop(A){return this.props[A.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(A){if(typeof A=="string"){if(this.name==A)return!0;let e=this.prop(Pi.group);return e?e.indexOf(A)>-1:!1}return this.id==A}static match(A){let e=Object.create(null);for(let i in A)for(let n of i.split(" "))e[n]=A[i];return i=>{for(let n=i.prop(Pi.group),o=-1;o<(n?n.length:0);o++){let a=e[o<0?i.name:n[o]];if(a)return a}}}};ks.none=new ks("",Object.create(null),0,8);var f4=class t{constructor(A){this.types=A;for(let e=0;e0;for(let s=this.cursor(a|Ja.IncludeAnonymous);;){let l=!1;if(s.from<=o&&s.to>=n&&(!r&&s.type.isAnonymous||e(s)!==!1)){if(s.firstChild())continue;l=!0}for(;l&&i&&(r||!s.type.isAnonymous)&&i(s),!s.nextSibling();){if(!s.parent())return;l=!0}}}prop(A){return A.perNode?this.props?this.props[A.id]:void 0:this.type.prop(A)}get propValues(){let A=[];if(this.props)for(let e in this.props)A.push([+e,this.props[e]]);return A}balance(A={}){return this.children.length<=8?this:Kx(ks.none,this.children,this.positions,0,this.children.length,0,this.length,(e,i,n)=>new t(this.type,e,i,n,this.propValues),A.makeTree||((e,i,n)=>new t(ks.none,e,i,n)))}static build(A){return Dpe(A)}};Wa.empty=new Wa(ks.none,[],[],0);var xx=class t{constructor(A,e){this.buffer=A,this.index=e}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new t(this.buffer,this.index)}},Xd=class t{constructor(A,e,i){this.buffer=A,this.length=e,this.set=i}get type(){return ks.none}toString(){let A=[];for(let e=0;e0));s=a[s+3]);return r}slice(A,e,i){let n=this.buffer,o=new Uint16Array(e-A),a=0;for(let r=A,s=0;r=A&&eA;case 1:return e<=A&&i>A;case 2:return i>A;case 4:return!0}}function w4(t,A,e,i){for(var n;t.from==t.to||(e<1?t.from>=A:t.from>A)||(e>-1?t.to<=A:t.to0?r.length:-1;A!=l;A+=e){let c=r[A],C=s[A]+a.from,d;if(!(!(o&Ja.EnterBracketed&&c instanceof Wa&&(d=i1.get(c))&&!d.overlay&&d.bracketed&&i>=C&&i<=C+c.length)&&!TX(n,i,C,C+c.length))){if(c instanceof Xd){if(o&Ja.ExcludeBuffers)continue;let B=c.findChild(0,c.buffer.length,e,i-C,n);if(B>-1)return new y4(new Nx(a,c,A,C),null,B)}else if(o&Ja.IncludeAnonymous||!c.type.isAnonymous||Gx(c)){let B;if(!(o&Ja.IgnoreMounts)&&(B=i1.get(c))&&!B.overlay)return new t(B.tree,C,A,a);let E=new t(c,C,A,a);return o&Ja.IncludeAnonymous||!E.type.isAnonymous?E:E.nextChild(e<0?c.children.length-1:0,e,i,n,o)}}}if(o&Ja.IncludeAnonymous||!a.type.isAnonymous||(a.index>=0?A=a.index+e:A=e<0?-1:a._parent._tree.children.length,a=a._parent,!a))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(A){return this.nextChild(0,1,A,2)}childBefore(A){return this.nextChild(this._tree.children.length-1,-1,A,-2)}prop(A){return this._tree.prop(A)}enter(A,e,i=0){let n;if(!(i&Ja.IgnoreOverlays)&&(n=i1.get(this._tree))&&n.overlay){let o=A-this.from,a=i&Ja.EnterBracketed&&n.bracketed;for(let{from:r,to:s}of n.overlay)if((e>0||a?r<=o:r=o:s>o))return new t(n.tree,n.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,A,e,i)}nextSignificantParent(){let A=this;for(;A.type.isAnonymous&&A._parent;)A=A._parent;return A}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}};function KX(t,A,e,i){let n=t.cursor(),o=[];if(!n.firstChild())return o;if(e!=null){for(let a=!1;!a;)if(a=n.type.is(e),!n.nextSibling())return o}for(;;){if(i!=null&&n.type.is(i))return o;if(n.type.is(A)&&o.push(n.node),!n.nextSibling())return i==null?o:[]}}function Rx(t,A,e=A.length-1){for(let i=t;e>=0;i=i.parent){if(!i)return!1;if(!i.type.isAnonymous){if(A[e]&&A[e]!=i.name)return!1;e--}}return!0}var Nx=class{constructor(A,e,i,n){this.parent=A,this.buffer=e,this.index=i,this.start=n}},y4=class t extends iy{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(A,e,i){super(),this.context=A,this._parent=e,this.index=i,this.type=A.buffer.set.types[A.buffer.buffer[i]]}child(A,e,i){let{buffer:n}=this.context,o=n.findChild(this.index+4,n.buffer[this.index+3],A,e-this.context.start,i);return o<0?null:new t(this.context,this,o)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(A){return this.child(1,A,2)}childBefore(A){return this.child(-1,A,-2)}prop(A){return this.type.prop(A)}enter(A,e,i=0){if(i&Ja.ExcludeBuffers)return null;let{buffer:n}=this.context,o=n.findChild(this.index+4,n.buffer[this.index+3],e>0?1:-1,A-this.context.start,e);return o<0?null:new t(this.context,this,o)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(A){return this._parent?null:this.context.parent.nextChild(this.context.index+A,A,0,4)}get nextSibling(){let{buffer:A}=this.context,e=A.buffer[this.index+3];return e<(this._parent?A.buffer[this._parent.index+3]:A.buffer.length)?new t(this.context,this._parent,e):this.externalSibling(1)}get prevSibling(){let{buffer:A}=this.context,e=this._parent?this._parent.index+4:0;return this.index==e?this.externalSibling(-1):new t(this.context,this._parent,A.findChild(e,this.index,-1,0,4))}get tree(){return null}toTree(){let A=[],e=[],{buffer:i}=this.context,n=this.index+4,o=i.buffer[this.index+3];if(o>n){let a=i.buffer[this.index+1];A.push(i.slice(n,o,a)),e.push(0)}return new Wa(this.type,A,e,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}};function OX(t){if(!t.length)return null;let A=0,e=t[0];for(let o=1;oe.from||a.to=A){let r=new k0(a.tree,a.overlay[0].from+o.from,-1,o);(n||(n=[i])).push(w4(r,A,e,!1))}}return n?OX(n):i}var v4=class{get name(){return this.type.name}constructor(A,e=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=e&~Ja.EnterBracketed,A instanceof k0)this.yieldNode(A);else{this._tree=A.context.parent,this.buffer=A.context;for(let i=A._parent;i;i=i._parent)this.stack.unshift(i.index);this.bufferNode=A,this.yieldBuf(A.index)}}yieldNode(A){return A?(this._tree=A,this.type=A.type,this.from=A.from,this.to=A.to,!0):!1}yieldBuf(A,e){this.index=A;let{start:i,buffer:n}=this.buffer;return this.type=e||n.set.types[n.buffer[A]],this.from=i+n.buffer[A+1],this.to=i+n.buffer[A+2],!0}yield(A){return A?A instanceof k0?(this.buffer=null,this.yieldNode(A)):(this.buffer=A.context,this.yieldBuf(A.index,A.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(A,e,i){if(!this.buffer)return this.yield(this._tree.nextChild(A<0?this._tree._tree.children.length-1:0,A,e,i,this.mode));let{buffer:n}=this.buffer,o=n.findChild(this.index+4,n.buffer[this.index+3],A,e-this.buffer.start,i);return o<0?!1:(this.stack.push(this.index),this.yieldBuf(o))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(A){return this.enterChild(1,A,2)}childBefore(A){return this.enterChild(-1,A,-2)}enter(A,e,i=this.mode){return this.buffer?i&Ja.ExcludeBuffers?!1:this.enterChild(1,A,e):this.yield(this._tree.enter(A,e,i))}parent(){if(!this.buffer)return this.yieldNode(this.mode&Ja.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let A=this.mode&Ja.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(A)}sibling(A){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+A,A,0,4,this.mode)):!1;let{buffer:e}=this.buffer,i=this.stack.length-1;if(A<0){let n=i<0?0:this.stack[i]+4;if(this.index!=n)return this.yieldBuf(e.findChild(n,this.index,-1,0,4))}else{let n=e.buffer[this.index+3];if(n<(i<0?e.buffer.length:e.buffer[this.stack[i]+3]))return this.yieldBuf(n)}return i<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+A,A,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(A){let e,i,{buffer:n}=this;if(n){if(A>0){if(this.index-1)for(let o=e+A,a=A<0?-1:i._tree.children.length;o!=a;o+=A){let r=i._tree.children[o];if(this.mode&Ja.IncludeAnonymous||r instanceof Xd||!r.type.isAnonymous||Gx(r))return!1}return!0}move(A,e){if(e&&this.enterChild(A,0,4))return!0;for(;;){if(this.sibling(A))return!0;if(this.atLastNode(A)||!this.parent())return!1}}next(A=!0){return this.move(1,A)}prev(A=!0){return this.move(-1,A)}moveTo(A,e=0){for(;(this.from==this.to||(e<1?this.from>=A:this.from>A)||(e>-1?this.to<=A:this.to=0;){for(let a=A;a;a=a._parent)if(a.index==n){if(n==this.index)return a;e=a,i=o+1;break e}n=this.stack[--o]}for(let n=i;n=0;o--){if(o<0)return Rx(this._tree,A,n);let a=i[e.buffer[this.stack[o]]];if(!a.isAnonymous){if(A[n]&&A[n]!=a.name)return!1;n--}}return!0}};function Gx(t){return t.children.some(A=>A instanceof Xd||!A.type.isAnonymous||Gx(A))}function Dpe(t){var A;let{buffer:e,nodeSet:i,maxBufferLength:n=1024,reused:o=[],minRepeatType:a=i.types.length}=t,r=Array.isArray(e)?new xx(e,e.length):e,s=i.types,l=0,c=0;function C(b,x,F,P,j,X){let{id:Ae,start:W,end:Ce,size:we}=r,Be=c,Ee=l;if(we<0)if(r.next(),we==-1){let Xe=o[Ae];F.push(Xe),P.push(W-b);return}else if(we==-3){l=Ae;return}else if(we==-4){c=Ae;return}else throw new RangeError(`Unrecognized record size: ${we}`);let Ne=s[Ae],de,Ie,xe=W-b;if(Ce-W<=n&&(Ie=m(r.pos-x,j))){let Xe=new Uint16Array(Ie.size-Ie.skip),fA=r.pos-Ie.size,Pe=Xe.length;for(;r.pos>fA;)Pe=f(Ie.start,Xe,Pe);de=new Xd(Xe,Ce-Ie.start,i),xe=Ie.start-b}else{let Xe=r.pos-we;r.next();let fA=[],Pe=[],be=Ae>=a?Ae:-1,qe=0,st=Ce;for(;r.pos>Xe;)be>=0&&r.id==be&&r.size>=0?(r.end<=st-n&&(E(fA,Pe,W,qe,r.end,st,be,Be,Ee),qe=fA.length,st=r.end),r.next()):X>2500?d(W,Xe,fA,Pe):C(W,Xe,fA,Pe,be,X+1);if(be>=0&&qe>0&&qe-1&&qe>0){let it=B(Ne,Ee);de=Kx(Ne,fA,Pe,0,fA.length,0,Ce-W,it,it)}else de=u(Ne,fA,Pe,Ce-W,Be-Ce,Ee)}F.push(de),P.push(xe)}function d(b,x,F,P){let j=[],X=0,Ae=-1;for(;r.pos>x;){let{id:W,start:Ce,end:we,size:Be}=r;if(Be>4)r.next();else{if(Ae>-1&&Ce=0;we-=3)W[Be++]=j[we],W[Be++]=j[we+1]-Ce,W[Be++]=j[we+2]-Ce,W[Be++]=Be;F.push(new Xd(W,j[2]-Ce,i)),P.push(Ce-b)}}function B(b,x){return(F,P,j)=>{let X=0,Ae=F.length-1,W,Ce;if(Ae>=0&&(W=F[Ae])instanceof Wa){if(!Ae&&W.type==b&&W.length==j)return W;(Ce=W.prop(Pi.lookAhead))&&(X=P[Ae]+W.length+Ce)}return u(b,F,P,j,X,x)}}function E(b,x,F,P,j,X,Ae,W,Ce){let we=[],Be=[];for(;b.length>P;)we.push(b.pop()),Be.push(x.pop()+F-j);b.push(u(i.types[Ae],we,Be,X-j,W-X,Ce)),x.push(j-F)}function u(b,x,F,P,j,X,Ae){if(X){let W=[Pi.contextHash,X];Ae=Ae?[W].concat(Ae):[W]}if(j>25){let W=[Pi.lookAhead,j];Ae=Ae?[W].concat(Ae):[W]}return new Wa(b,x,F,P,Ae)}function m(b,x){let F=r.fork(),P=0,j=0,X=0,Ae=F.end-n,W={size:0,start:0,skip:0};e:for(let Ce=F.pos-b;F.pos>Ce;){let we=F.size;if(F.id==x&&we>=0){W.size=P,W.start=j,W.skip=X,X+=4,P+=4,F.next();continue}let Be=F.pos-we;if(we<0||Be=a?4:0,Ne=F.start;for(F.next();F.pos>Be;){if(F.size<0)if(F.size==-3||F.size==-4)Ee+=4;else break e;else F.id>=a&&(Ee+=4);F.next()}j=Ne,P+=we,X+=Ee}return(x<0||P==b)&&(W.size=P,W.start=j,W.skip=X),W.size>4?W:void 0}function f(b,x,F){let{id:P,start:j,end:X,size:Ae}=r;if(r.next(),Ae>=0&&P4){let Ce=r.pos-(Ae-4);for(;r.pos>Ce;)F=f(b,x,F)}x[--F]=W,x[--F]=X-b,x[--F]=j-b,x[--F]=P}else Ae==-3?l=P:Ae==-4&&(c=P);return F}let D=[],S=[];for(;r.pos>0;)C(t.start||0,t.bufferStart||0,D,S,-1,0);let k=(A=t.length)!==null&&A!==void 0?A:D.length?S[0]+D[0].length:0;return new Wa(s[t.topID],D.reverse(),S.reverse(),k)}var UX=new WeakMap;function ty(t,A){if(!t.isAnonymous||A instanceof Xd||A.type!=t)return 1;let e=UX.get(A);if(e==null){e=1;for(let i of A.children){if(i.type!=t||!(i instanceof Wa)){e=1;break}e+=ty(t,i)}UX.set(A,e)}return e}function Kx(t,A,e,i,n,o,a,r,s){let l=0;for(let E=i;E=c)break;x+=F}if(S==k+1){if(x>c){let F=E[k];B(F.children,F.positions,0,F.children.length,u[k]+D);continue}C.push(E[k])}else{let F=u[S-1]+E[S-1].length-b;C.push(Kx(t,E,u,k,S,b,F,null,s))}d.push(b+D-o)}}return B(A,e,i,n,0),(r||s)(C,d,a)}var n1=class t{constructor(A,e,i,n,o=!1,a=!1){this.from=A,this.to=e,this.tree=i,this.offset=n,this.open=(o?1:0)|(a?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(A,e=[],i=!1){let n=[new t(0,A.length,A,0,!1,i)];for(let o of e)o.to>A.length&&n.push(o);return n}static applyChanges(A,e,i=128){if(!e.length)return A;let n=[],o=1,a=A.length?A[0]:null;for(let r=0,s=0,l=0;;r++){let c=r=i)for(;a&&a.from=d.from||C<=d.to||l){let B=Math.max(d.from,s)-l,E=Math.min(d.to,C)-l;d=B>=E?null:new t(B,E,d.tree,d.offset+l,r>0,!!c)}if(d&&n.push(d),a.to>C)break;a=onew m4(n.from,n.to)):[new m4(0,0)]:[new m4(0,A.length)],this.createParse(A,e||[],i)}parse(A,e,i){let n=this.startParse(A,e,i);for(;;){let o=n.advance();if(o)return o}}},Lx=class{constructor(A){this.string=A}get length(){return this.string.length}chunk(A){return this.string.slice(A)}get lineChunks(){return!1}read(A,e){return this.string.slice(A,e)}};var gCA=new Pi({perNode:!0});var bpe=0,yg=class t{constructor(A,e,i,n){this.name=A,this.set=e,this.base=i,this.modified=n,this.id=bpe++}toString(){let{name:A}=this;for(let e of this.modified)e.name&&(A=`${e.name}(${A})`);return A}static define(A,e){let i=typeof A=="string"?A:"?";if(A instanceof t&&(e=A),e?.base)throw new Error("Can not derive from a modified tag");let n=new t(i,[],null,[]);if(n.set.push(n),e)for(let o of e.set)n.set.push(o);return n}static defineModifier(A){let e=new ry(A);return i=>i.modified.indexOf(e)>-1?i:ry.get(i.base||i,i.modified.concat(e).sort((n,o)=>n.id-o.id))}},Mpe=0,ry=class t{constructor(A){this.name=A,this.instances=[],this.id=Mpe++}static get(A,e){if(!e.length)return A;let i=e[0].instances.find(r=>r.base==A&&Spe(e,r.modified));if(i)return i;let n=[],o=new yg(A.name,n,A,e);for(let r of e)r.instances.push(o);let a=kpe(e);for(let r of A.set)if(!r.modified.length)for(let s of a)n.push(t.get(r,s));return o}};function Spe(t,A){return t.length==A.length&&t.every((e,i)=>e==A[i])}function kpe(t){let A=[[]];for(let e=0;ei.length-e.length)}function sy(t){let A=Object.create(null);for(let e in t){let i=t[e];Array.isArray(i)||(i=[i]);for(let n of e.split(" "))if(n){let o=[],a=2,r=n;for(let C=0;;){if(r=="..."&&C>0&&C+3==n.length){a=1;break}let d=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(r);if(!d)throw new RangeError("Invalid path: "+n);if(o.push(d[0]=="*"?"":d[0][0]=='"'?JSON.parse(d[0]):d[0]),C+=d[0].length,C==n.length)break;let B=n[C++];if(C==n.length&&B=="!"){a=0;break}if(B!="/")throw new RangeError("Invalid path: "+n);r=n.slice(C)}let s=o.length-1,l=o[s];if(!l)throw new RangeError("Invalid path: "+n);let c=new a1(i,a,s>0?o.slice(0,s):null);A[l]=c.sort(A[l])}}return YX.add(A)}var YX=new Pi({combine(t,A){let e,i,n;for(;t||A;){if(!t||A&&t.depth>=A.depth?(n=A,A=A.next):(n=t,t=t.next),e&&e.mode==n.mode&&!n.context&&!e.context)continue;let o=new a1(n.tags,n.mode,n.context);e?e.next=o:i=o,e=o}return i}}),a1=class{constructor(A,e,i,n){this.tags=A,this.mode=e,this.context=i,this.next=n}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(A){return!A||A.depth{let a=n;for(let r of o)for(let s of r.set){let l=e[s.id];if(l){a=a?a+" "+l:l;break}}return a},scope:i}}function _pe(t,A){let e=null;for(let i of t){let n=i.style(A);n&&(e=e?e+" "+n:n)}return e}function HX(t,A,e,i=0,n=t.length){let o=new Tx(i,Array.isArray(A)?A:[A],e);o.highlightRange(t.cursor(),i,n,"",o.highlighters),o.flush(n)}var Tx=class{constructor(A,e,i){this.at=A,this.highlighters=e,this.span=i,this.class=""}startSpan(A,e){e!=this.class&&(this.flush(A),A>this.at&&(this.at=A),this.class=e)}flush(A){A>this.at&&this.class&&this.span(this.at,A,this.class)}highlightRange(A,e,i,n,o){let{type:a,from:r,to:s}=A;if(r>=i||s<=e)return;a.isTop&&(o=this.highlighters.filter(B=>!B.scope||B.scope(a)));let l=n,c=xpe(A)||a1.empty,C=_pe(o,c.tags);if(C&&(l&&(l+=" "),l+=C,c.mode==1&&(n+=(n?" ":"")+C)),this.startSpan(Math.max(e,r),l),c.opaque)return;let d=A.tree&&A.tree.prop(Pi.mounted);if(d&&d.overlay){let B=A.node.enter(d.overlay[0].from+r,1),E=this.highlighters.filter(m=>!m.scope||m.scope(d.tree.type)),u=A.firstChild();for(let m=0,f=r;;m++){let D=m=S||!A.nextSibling())););if(!D||S>i)break;f=D.to+r,f>e&&(this.highlightRange(B.cursor(),Math.max(e,D.from+r),Math.min(i,f),"",E),this.startSpan(Math.min(i,f),l))}u&&A.parent()}else if(A.firstChild()){d&&(n="");do if(!(A.to<=e)){if(A.from>=i)break;this.highlightRange(A,e,i,n,o),this.startSpan(Math.min(i,A.to),l)}while(A.nextSibling());A.parent()}}};function xpe(t){let A=t.type.prop(YX);for(;A&&A.context&&!t.matchContext(A.context);)A=A.next;return A||null}var rt=yg.define,ny=rt(),$d=rt(),JX=rt($d),zX=rt($d),e2=rt(),oy=rt(e2),Ux=rt(e2),R0=rt(),o1=rt(R0),_0=rt(),x0=rt(),Ox=rt(),D4=rt(Ox),ay=rt(),PA={comment:ny,lineComment:rt(ny),blockComment:rt(ny),docComment:rt(ny),name:$d,variableName:rt($d),typeName:JX,tagName:rt(JX),propertyName:zX,attributeName:rt(zX),className:rt($d),labelName:rt($d),namespace:rt($d),macroName:rt($d),literal:e2,string:oy,docString:rt(oy),character:rt(oy),attributeValue:rt(oy),number:Ux,integer:rt(Ux),float:rt(Ux),bool:rt(e2),regexp:rt(e2),escape:rt(e2),color:rt(e2),url:rt(e2),keyword:_0,self:rt(_0),null:rt(_0),atom:rt(_0),unit:rt(_0),modifier:rt(_0),operatorKeyword:rt(_0),controlKeyword:rt(_0),definitionKeyword:rt(_0),moduleKeyword:rt(_0),operator:x0,derefOperator:rt(x0),arithmeticOperator:rt(x0),logicOperator:rt(x0),bitwiseOperator:rt(x0),compareOperator:rt(x0),updateOperator:rt(x0),definitionOperator:rt(x0),typeOperator:rt(x0),controlOperator:rt(x0),punctuation:Ox,separator:rt(Ox),bracket:D4,angleBracket:rt(D4),squareBracket:rt(D4),paren:rt(D4),brace:rt(D4),content:R0,heading:o1,heading1:rt(o1),heading2:rt(o1),heading3:rt(o1),heading4:rt(o1),heading5:rt(o1),heading6:rt(o1),contentSeparator:rt(R0),list:rt(R0),quote:rt(R0),emphasis:rt(R0),strong:rt(R0),link:rt(R0),monospace:rt(R0),strikethrough:rt(R0),inserted:rt(),deleted:rt(),changed:rt(),invalid:rt(),meta:ay,documentMeta:rt(ay),annotation:rt(ay),processingInstruction:rt(ay),definition:yg.defineModifier("definition"),constant:yg.defineModifier("constant"),function:yg.defineModifier("function"),standard:yg.defineModifier("standard"),local:yg.defineModifier("local"),special:yg.defineModifier("special")};for(let t in PA){let A=PA[t];A instanceof yg&&(A.name=t)}var ICA=Jx([{tag:PA.link,class:"tok-link"},{tag:PA.heading,class:"tok-heading"},{tag:PA.emphasis,class:"tok-emphasis"},{tag:PA.strong,class:"tok-strong"},{tag:PA.keyword,class:"tok-keyword"},{tag:PA.atom,class:"tok-atom"},{tag:PA.bool,class:"tok-bool"},{tag:PA.url,class:"tok-url"},{tag:PA.labelName,class:"tok-labelName"},{tag:PA.inserted,class:"tok-inserted"},{tag:PA.deleted,class:"tok-deleted"},{tag:PA.literal,class:"tok-literal"},{tag:PA.string,class:"tok-string"},{tag:PA.number,class:"tok-number"},{tag:[PA.regexp,PA.escape,PA.special(PA.string)],class:"tok-string2"},{tag:PA.variableName,class:"tok-variableName"},{tag:PA.local(PA.variableName),class:"tok-variableName tok-local"},{tag:PA.definition(PA.variableName),class:"tok-variableName tok-definition"},{tag:PA.special(PA.variableName),class:"tok-variableName2"},{tag:PA.definition(PA.propertyName),class:"tok-propertyName tok-definition"},{tag:PA.typeName,class:"tok-typeName"},{tag:PA.namespace,class:"tok-namespace"},{tag:PA.className,class:"tok-className"},{tag:PA.macroName,class:"tok-macroName"},{tag:PA.propertyName,class:"tok-propertyName"},{tag:PA.operator,class:"tok-operator"},{tag:PA.comment,class:"tok-comment"},{tag:PA.meta,class:"tok-meta"},{tag:PA.invalid,class:"tok-invalid"},{tag:PA.punctuation,class:"tok-punctuation"}]);var zx,Zh=new Pi;function Rpe(t){return lt.define({combine:t?A=>A.concat(t):void 0})}var Npe=new Pi,vg=(()=>{class t{constructor(e,i,n=[],o=""){this.data=e,this.name=o,lr.prototype.hasOwnProperty("tree")||Object.defineProperty(lr.prototype,"tree",{get(){return Yr(this)}}),this.parser=i,this.extension=[A2.of(this),lr.languageData.of((a,r,s)=>{let l=PX(a,r,s),c=l.type.prop(Zh);if(!c)return[];let C=a.facet(c),d=l.type.prop(Npe);if(d){let B=l.resolve(r-l.from,s);for(let E of d)if(E.test(B,a)){let u=a.facet(E.facet);return E.type=="replace"?u:u.concat(C)}}return C})].concat(n)}isActiveAt(e,i,n=-1){return PX(e,i,n).type.prop(Zh)==this.data}findRegions(e){let i=e.facet(A2);if(i?.data==this.data)return[{from:0,to:e.doc.length}];if(!i||!i.allowsNesting)return[];let n=[],o=(a,r)=>{if(a.prop(Zh)==this.data){n.push({from:r,to:r+a.length});return}let s=a.prop(Pi.mounted);if(s){if(s.tree.prop(Zh)==this.data){if(s.overlay)for(let l of s.overlay)n.push({from:l.from+r,to:l.to+r});else n.push({from:r,to:r+a.length});return}else if(s.overlay){let l=n.length;if(o(s.tree,s.overlay[0].from+r),n.length>l)return}}for(let l=0;li.isTop?e:void 0)]}),A.name)}configure(A,e){return new t(this.data,this.parser.configure(A),e||this.name)}get allowsNesting(){return this.parser.hasWrappers()}};function Yr(t){let A=t.field(vg.state,!1);return A?A.tree:Wa.empty}function AR(t,A,e=50){var i;let n=(i=t.field(vg.state,!1))===null||i===void 0?void 0:i.context;if(!n)return null;let o=n.viewport;n.updateViewport({from:0,to:A});let a=n.isDone(A)||n.work(e,A)?n.tree:null;return n.updateViewport(o),a}var jx=class{constructor(A){this.doc=A,this.cursorPos=0,this.string="",this.cursor=A.iter()}get length(){return this.doc.length}syncTo(A){return this.string=this.cursor.next(A-this.cursorPos).value,this.cursorPos=A+this.string.length,this.cursorPos-this.string.length}chunk(A){return this.syncTo(A),this.string}get lineChunks(){return!0}read(A,e){let i=this.cursorPos-this.string.length;return A=this.cursorPos?this.doc.sliceString(A,e):this.string.slice(A-i,e-i)}},b4=null,Vx=class t{constructor(A,e,i=[],n,o,a,r,s){this.parser=A,this.state=e,this.fragments=i,this.tree=n,this.treeLen=o,this.viewport=a,this.skipped=r,this.scheduleOn=s,this.parse=null,this.tempSkipped=[]}static create(A,e,i){return new t(A,e,[],Wa.empty,0,i,[],null)}startParse(){return this.parser.startParse(new jx(this.state.doc),this.fragments)}work(A,e){return e!=null&&e>=this.state.doc.length&&(e=void 0),this.tree!=Wa.empty&&this.isDone(e??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var i;if(typeof A=="number"){let n=Date.now()+A;A=()=>Date.now()>n}for(this.parse||(this.parse=this.startParse()),e!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&e=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>A)&&this.parse.stopAt(A),this.withContext(()=>{for(;!(e=this.parse.advance()););}),this.treeLen=A,this.tree=e,this.fragments=this.withoutTempSkipped(n1.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(A){let e=b4;b4=this;try{return A()}finally{b4=e}}withoutTempSkipped(A){for(let e;e=this.tempSkipped.pop();)A=jX(A,e.from,e.to);return A}changes(A,e){let{fragments:i,tree:n,treeLen:o,viewport:a,skipped:r}=this;if(this.takeTree(),!A.empty){let s=[];if(A.iterChangedRanges((l,c,C,d)=>s.push({fromA:l,toA:c,fromB:C,toB:d})),i=n1.applyChanges(i,s),n=Wa.empty,o=0,a={from:A.mapPos(a.from,-1),to:A.mapPos(a.to,1)},this.skipped.length){r=[];for(let l of this.skipped){let c=A.mapPos(l.from,1),C=A.mapPos(l.to,-1);cA.from&&(this.fragments=jX(this.fragments,n,o),this.skipped.splice(i--,1))}return this.skipped.length>=e?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(A,e){this.skipped.push({from:A,to:e})}static getSkippingParser(A){return new class extends qh{createParse(e,i,n){let o=n[0].from,a=n[n.length-1].to;return{parsedPos:o,advance(){let s=b4;if(s){for(let l of n)s.tempSkipped.push(l);A&&(s.scheduleOn=s.scheduleOn?Promise.all([s.scheduleOn,A]):A)}return this.parsedPos=a,new Wa(ks.none,[],[],a-o)},stoppedAt:null,stopAt(){}}}}}isDone(A){A=Math.min(A,this.state.doc.length);let e=this.fragments;return this.treeLen>=A&&e.length&&e[0].from==0&&e[0].to>=A}static get(){return b4}};function jX(t,A,e){return n1.applyChanges(t,[{fromA:A,toA:e,fromB:A,toB:e}])}var S4=class t{constructor(A){this.context=A,this.tree=A.tree}apply(A){if(!A.docChanged&&this.tree==this.context.tree)return this;let e=this.context.changes(A.changes,A.state),i=this.context.treeLen==A.startState.doc.length?void 0:Math.max(A.changes.mapPos(this.context.treeLen),e.viewport.to);return e.work(20,i)||e.takeTree(),new t(e)}static init(A){let e=Math.min(3e3,A.doc.length),i=Vx.create(A.facet(A2).parser,A,{from:0,to:e});return i.work(20,e)||i.takeTree(),new t(i)}};vg.state=Oa.define({create:S4.init,update(t,A){for(let e of A.effects)if(e.is(vg.setState))return e.value;return A.startState.facet(A2)!=A.state.facet(A2)?S4.init(A.state):t.apply(A)}});var e$=t=>{let A=setTimeout(()=>t(),500);return()=>clearTimeout(A)};typeof requestIdleCallback<"u"&&(e$=t=>{let A=-1,e=setTimeout(()=>{A=requestIdleCallback(t,{timeout:400})},100);return()=>A<0?clearTimeout(e):cancelIdleCallback(A)});var Yx=typeof navigator<"u"&&(!((zx=navigator.scheduling)===null||zx===void 0)&&zx.isInputPending)?()=>navigator.scheduling.isInputPending():null,Fpe=Vo.fromClass(class{constructor(A){this.view=A,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(A){let e=this.view.state.field(vg.state).context;(e.updateViewport(A.view.viewport)||this.view.viewport.to>e.treeLen)&&this.scheduleWork(),(A.docChanged||A.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(e)}scheduleWork(){if(this.working)return;let{state:A}=this.view,e=A.field(vg.state);(e.tree!=e.context.tree||!e.context.isDone(A.doc.length))&&(this.working=e$(this.work))}work(A){this.working=null;let e=Date.now();if(this.chunkEndn+1e3,s=o.context.work(()=>Yx&&Yx()||Date.now()>a,n+(r?0:1e5));this.chunkBudget-=Date.now()-e,(s||this.chunkBudget<=0)&&(o.context.takeTree(),this.view.dispatch({effects:vg.setState.of(new S4(o.context))})),this.chunkBudget>0&&!(s&&!r)&&this.scheduleWork(),this.checkAsyncSchedule(o.context)}checkAsyncSchedule(A){A.scheduleOn&&(this.workScheduled++,A.scheduleOn.then(()=>this.scheduleWork()).catch(e=>zr(this.view.state,e)).then(()=>this.workScheduled--),A.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),A2=lt.define({combine(t){return t.length?t[0]:null},enables:t=>[vg.state,Fpe,mi.contentAttributes.compute([t],A=>{let e=A.facet(t);return e&&e.name?{"data-language":e.name}:{}})]}),cy=class{constructor(A,e=[]){this.language=A,this.support=e,this.extension=[A,e]}};var Lpe=lt.define(),l1=lt.define({combine:t=>{if(!t.length)return" ";let A=t[0];if(!A||/\S/.test(A)||Array.from(A).some(e=>e!=A[0]))throw new Error("Invalid indent unit: "+JSON.stringify(t[0]));return A}});function bg(t){let A=t.facet(l1);return A.charCodeAt(0)==9?t.tabSize*A.length:A.length}function $h(t,A){let e="",i=t.tabSize,n=t.facet(l1)[0];if(n==" "){for(;A>=i;)e+=" ",A-=i;n=" "}for(let o=0;o=A?Gpe(t,e,A):null}var r1=class{constructor(A,e={}){this.state=A,this.options=e,this.unit=bg(A)}lineAt(A,e=1){let i=this.state.doc.lineAt(A),{simulateBreak:n,simulateDoubleBreak:o}=this.options;return n!=null&&n>=i.from&&n<=i.to?o&&n==A?{text:"",from:A}:(e<0?n-1&&(o+=a-this.countColumn(i,i.search(/\S|$/))),o}countColumn(A,e=A.length){return bC(A,this.state.tabSize,e)}lineIndent(A,e=1){let{text:i,from:n}=this.lineAt(A,e),o=this.options.overrideIndentation;if(o){let a=o(n);if(a>-1)return a}return this.countColumn(i,i.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}},tR=new Pi;function Gpe(t,A,e){let i=A.resolveStack(e),n=A.resolveInner(e,-1).resolve(e,0).enterUnfinishedNodesBefore(e);if(n!=i.node){let o=[];for(let a=n;a&&!(a.fromi.node.to||a.from==i.node.from&&a.type==i.node.type);a=a.parent)o.push(a);for(let a=o.length-1;a>=0;a--)i={node:o[a],next:i}}return A$(i,t,e)}function A$(t,A,e){for(let i=t;i;i=i.next){let n=Upe(i.node);if(n)return n(qx.create(A,e,i))}return 0}function Kpe(t){return t.pos==t.options.simulateBreak&&t.options.simulateDoubleBreak}function Upe(t){let A=t.type.prop(tR);if(A)return A;let e=t.firstChild,i;if(e&&(i=e.type.prop(Pi.closedBy))){let n=t.lastChild,o=n&&i.indexOf(n.name)>-1;return a=>zpe(a,!0,1,void 0,o&&!Kpe(a)?n.from:void 0)}return t.parent==null?Tpe:null}function Tpe(){return 0}var qx=class t extends r1{constructor(A,e,i){super(A.state,A.options),this.base=A,this.pos=e,this.context=i}get node(){return this.context.node}static create(A,e,i){return new t(A,e,i)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(A){let e=this.state.doc.lineAt(A.from);for(;;){let i=A.resolve(e.from);for(;i.parent&&i.parent.from==i.from;)i=i.parent;if(Ope(i,A))break;e=this.state.doc.lineAt(i.from)}return this.lineIndent(e.from)}continue(){return A$(this.context.next,this.base,this.pos)}};function Ope(t,A){for(let e=A;e;e=e.parent)if(t==e)return!0;return!1}function Jpe(t){let A=t.node,e=A.childAfter(A.from),i=A.lastChild;if(!e)return null;let n=t.options.simulateBreak,o=t.state.doc.lineAt(e.from),a=n==null||n<=o.from?o.to:Math.min(o.to,n);for(let r=e.to;;){let s=A.childAfter(r);if(!s||s==i)return null;if(!s.type.isSkipped){if(s.from>=a)return null;let l=/^ */.exec(o.text.slice(e.to-o.from))[0].length;return{from:e.from,to:e.to+l}}r=s.to}}function zpe(t,A,e,i,n){let o=t.textAfter,a=o.match(/^\s*/)[0].length,r=i&&o.slice(a,a+i.length)==i||n==t.pos+a,s=A?Jpe(t):null;return s?r?t.column(s.from):t.column(s.to):t.baseIndent+(r?0:t.unit*e)}function iR({except:t,units:A=1}={}){return e=>{let i=t&&t.test(e.textAfter);return e.baseIndent+(i?0:A*e.unit)}}var Ype=200;function t$(){return lr.transactionFilter.of(t=>{if(!t.docChanged||!t.isUserEvent("input.type")&&!t.isUserEvent("input.complete"))return t;let A=t.startState.languageDataAt("indentOnInput",t.startState.selection.main.head);if(!A.length)return t;let e=t.newDoc,{head:i}=t.newSelection.main,n=e.lineAt(i);if(i>n.from+Ype)return t;let o=e.sliceString(n.from,i);if(!A.some(l=>l.test(o)))return t;let{state:a}=t,r=-1,s=[];for(let{head:l}of a.selection.ranges){let c=a.doc.lineAt(l);if(c.from==r)continue;r=c.from;let C=Cy(a,c.from);if(C==null)continue;let d=/^\s*/.exec(c.text)[0],B=$h(a,C);d!=B&&s.push({from:c.from,to:c.from+d.length,insert:B})}return s.length?[t,{changes:s,sequential:!0}]:t})}var nR=lt.define(),k4=new Pi;function i$(t){let A=t.firstChild,e=t.lastChild;return A&&A.toe)continue;if(o&&r.from=A&&l.to>e&&(o=l)}}return o}function Ppe(t){let A=t.lastChild;return A&&A.to==t.to&&A.type.isError}function Wh(t,A,e){for(let i of t.facet(nR)){let n=i(t,A,e);if(n)return n}return Hpe(t,A,e)}function n$(t,A){let e=A.mapPos(t.from,1),i=A.mapPos(t.to,-1);return e>=i?void 0:{from:e,to:i}}var eu=gn.define({map:n$}),_4=gn.define({map:n$});function o$(t){let A=[];for(let{head:e}of t.state.selection.ranges)A.some(i=>i.from<=e&&i.to>=e)||A.push(t.lineBlockAt(e));return A}var s1=Oa.define({create(){return Tt.none},update(t,A){A.isUserEvent("delete")&&A.changes.iterChangedRanges((e,i)=>t=VX(t,e,i)),t=t.map(A.changes);for(let e of A.effects)if(e.is(eu)&&!jpe(t,e.value.from,e.value.to)){let{preparePlaceholder:i}=A.state.facet(rR),n=i?Tt.replace({widget:new Zx(i(A.state,e.value))}):qX;t=t.update({add:[n.range(e.value.from,e.value.to)]})}else e.is(_4)&&(t=t.update({filter:(i,n)=>e.value.from!=i||e.value.to!=n,filterFrom:e.value.from,filterTo:e.value.to}));return A.selection&&(t=VX(t,A.selection.main.head)),t},provide:t=>mi.decorations.from(t),toJSON(t,A){let e=[];return t.between(0,A.doc.length,(i,n)=>{e.push(i,n)}),e},fromJSON(t){if(!Array.isArray(t)||t.length%2)throw new RangeError("Invalid JSON for fold state");let A=[];for(let e=0;e{nA&&(i=!0)}),i?t.update({filterFrom:A,filterTo:e,filter:(n,o)=>n>=e||o<=A}):t}function gy(t,A,e){var i;let n=null;return(i=t.field(s1,!1))===null||i===void 0||i.between(A,e,(o,a)=>{(!n||n.from>o)&&(n={from:o,to:a})}),n}function jpe(t,A,e){let i=!1;return t.between(A,A,(n,o)=>{n==A&&o==e&&(i=!0)}),i}function a$(t,A){return t.field(s1,!1)?A:A.concat(gn.appendConfig.of(l$()))}var Vpe=t=>{for(let A of o$(t)){let e=Wh(t.state,A.from,A.to);if(e)return t.dispatch({effects:a$(t.state,[eu.of(e),r$(t,e)])}),!0}return!1},oR=t=>{if(!t.state.field(s1,!1))return!1;let A=[];for(let e of o$(t)){let i=gy(t.state,e.from,e.to);i&&A.push(_4.of(i),r$(t,i,!1))}return A.length&&t.dispatch({effects:A}),A.length>0};function r$(t,A,e=!0){let i=t.state.doc.lineAt(A.from).number,n=t.state.doc.lineAt(A.to).number;return mi.announce.of(`${t.state.phrase(e?"Folded lines":"Unfolded lines")} ${i} ${t.state.phrase("to")} ${n}.`)}var qpe=t=>{let{state:A}=t,e=[];for(let i=0;i{let A=t.state.field(s1,!1);if(!A||!A.size)return!1;let e=[];return A.between(0,t.state.doc.length,(i,n)=>{e.push(_4.of({from:i,to:n}))}),t.dispatch({effects:e}),!0};var s$=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:Vpe},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:oR},{key:"Ctrl-Alt-[",run:qpe},{key:"Ctrl-Alt-]",run:aR}],Zpe={placeholderDOM:null,preparePlaceholder:null,placeholderText:"\u2026"},rR=lt.define({combine(t){return Jr(t,Zpe)}});function l$(t){let A=[s1,Xpe];return t&&A.push(rR.of(t)),A}function c$(t,A){let{state:e}=t,i=e.facet(rR),n=a=>{let r=t.lineBlockAt(t.posAtDOM(a.target)),s=gy(t.state,r.from,r.to);s&&t.dispatch({effects:_4.of(s)}),a.preventDefault()};if(i.placeholderDOM)return i.placeholderDOM(t,n,A);let o=document.createElement("span");return o.textContent=i.placeholderText,o.setAttribute("aria-label",e.phrase("folded code")),o.title=e.phrase("unfold"),o.className="cm-foldPlaceholder",o.onclick=n,o}var qX=Tt.replace({widget:new class extends pl{toDOM(t){return c$(t,null)}}}),Zx=class extends pl{constructor(A){super(),this.value=A}eq(A){return this.value==A.value}toDOM(A){return c$(A,this.value)}},Wpe={openText:"\u2304",closedText:"\u203A",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1},M4=class extends fl{constructor(A,e){super(),this.config=A,this.open=e}eq(A){return this.config==A.config&&this.open==A.open}toDOM(A){if(this.config.markerDOM)return this.config.markerDOM(this.open);let e=document.createElement("span");return e.textContent=this.open?this.config.openText:this.config.closedText,e.title=A.state.phrase(this.open?"Fold line":"Unfold line"),e}};function g$(t={}){let A=Y(Y({},Wpe),t),e=new M4(A,!0),i=new M4(A,!1),n=Vo.fromClass(class{constructor(a){this.from=a.viewport.from,this.markers=this.buildMarkers(a)}update(a){(a.docChanged||a.viewportChanged||a.startState.facet(A2)!=a.state.facet(A2)||a.startState.field(s1,!1)!=a.state.field(s1,!1)||Yr(a.startState)!=Yr(a.state)||A.foldingChanged(a))&&(this.markers=this.buildMarkers(a.view))}buildMarkers(a){let r=new ns;for(let s of a.viewportLineBlocks){let l=gy(a.state,s.from,s.to)?i:Wh(a.state,s.from,s.to)?e:null;l&&r.add(s.from,s.from,l)}return r.finish()}}),{domEventHandlers:o}=A;return[n,ey({class:"cm-foldGutter",markers(a){var r;return((r=a.plugin(n))===null||r===void 0?void 0:r.markers)||po.empty},initialSpacer(){return new M4(A,!1)},domEventHandlers:Ye(Y({},o),{click:(a,r,s)=>{if(o.click&&o.click(a,r,s))return!0;let l=gy(a.state,r.from,r.to);if(l)return a.dispatch({effects:_4.of(l)}),!0;let c=Wh(a.state,r.from,r.to);return c?(a.dispatch({effects:eu.of(c)}),!0):!1}})}),l$()]}var Xpe=mi.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}}),Xh=class t{constructor(A,e){this.specs=A;let i;function n(r){let s=bc.newName();return(i||(i=Object.create(null)))["."+s]=r,s}let o=typeof e.all=="string"?e.all:e.all?n(e.all):void 0,a=e.scope;this.scope=a instanceof vg?r=>r.prop(Zh)==a.data:a?r=>r==a:void 0,this.style=Jx(A.map(r=>({tag:r.tag,class:r.class||n(Object.assign({},r,{tag:null}))})),{all:o}).style,this.module=i?new bc(i):null,this.themeType=e.themeType}static define(A,e){return new t(A,e||{})}},Wx=lt.define(),C$=lt.define({combine(t){return t.length?[t[0]]:null}});function Hx(t){let A=t.facet(Wx);return A.length?A:t.facet(C$)}function sR(t,A){let e=[$pe],i;return t instanceof Xh&&(t.module&&e.push(mi.styleModule.of(t.module)),i=t.themeType),A?.fallback?e.push(C$.of(t)):i?e.push(Wx.computeN([mi.darkTheme],n=>n.facet(mi.darkTheme)==(i=="dark")?[t]:[])):e.push(Wx.of(t)),e}var Xx=class{constructor(A){this.markCache=Object.create(null),this.tree=Yr(A.state),this.decorations=this.buildDeco(A,Hx(A.state)),this.decoratedTo=A.viewport.to}update(A){let e=Yr(A.state),i=Hx(A.state),n=i!=Hx(A.startState),{viewport:o}=A.view,a=A.changes.mapPos(this.decoratedTo,1);e.length=o.to?(this.decorations=this.decorations.map(A.changes),this.decoratedTo=a):(e!=this.tree||A.viewportChanged||n)&&(this.tree=e,this.decorations=this.buildDeco(A.view,i),this.decoratedTo=o.to)}buildDeco(A,e){if(!e||!this.tree.length)return Tt.none;let i=new ns;for(let{from:n,to:o}of A.visibleRanges)HX(this.tree,e,(a,r,s)=>{i.add(a,r,this.markCache[s]||(this.markCache[s]=Tt.mark({class:s})))},n,o);return i.finish()}},$pe=pg.high(Vo.fromClass(Xx,{decorations:t=>t.decorations})),d$=Xh.define([{tag:PA.meta,color:"#404740"},{tag:PA.link,textDecoration:"underline"},{tag:PA.heading,textDecoration:"underline",fontWeight:"bold"},{tag:PA.emphasis,fontStyle:"italic"},{tag:PA.strong,fontWeight:"bold"},{tag:PA.strikethrough,textDecoration:"line-through"},{tag:PA.keyword,color:"#708"},{tag:[PA.atom,PA.bool,PA.url,PA.contentSeparator,PA.labelName],color:"#219"},{tag:[PA.literal,PA.inserted],color:"#164"},{tag:[PA.string,PA.deleted],color:"#a11"},{tag:[PA.regexp,PA.escape,PA.special(PA.string)],color:"#e40"},{tag:PA.definition(PA.variableName),color:"#00f"},{tag:PA.local(PA.variableName),color:"#30a"},{tag:[PA.typeName,PA.namespace],color:"#085"},{tag:PA.className,color:"#167"},{tag:[PA.special(PA.variableName),PA.macroName],color:"#256"},{tag:PA.definition(PA.propertyName),color:"#00c"},{tag:PA.comment,color:"#940"},{tag:PA.invalid,color:"#f00"}]),e4e=mi.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),I$=1e4,B$="()[]{}",h$=lt.define({combine(t){return Jr(t,{afterCursor:!0,brackets:B$,maxScanDistance:I$,renderMatch:i4e})}}),A4e=Tt.mark({class:"cm-matchingBracket"}),t4e=Tt.mark({class:"cm-nonmatchingBracket"});function i4e(t){let A=[],e=t.matched?A4e:t4e;return A.push(e.range(t.start.from,t.start.to)),t.end&&A.push(e.range(t.end.from,t.end.to)),A}function ZX(t){let A=[],e=t.facet(h$);for(let i of t.selection.ranges){if(!i.empty)continue;let n=Dg(t,i.head,-1,e)||i.head>0&&Dg(t,i.head-1,1,e)||e.afterCursor&&(Dg(t,i.head,1,e)||i.headt.decorations}),o4e=[n4e,e4e];function u$(t={}){return[h$.of(t),o4e]}var a4e=new Pi;function $x(t,A,e){let i=t.prop(A<0?Pi.openedBy:Pi.closedBy);if(i)return i;if(t.name.length==1){let n=e.indexOf(t.name);if(n>-1&&n%2==(A<0?1:0))return[e[n+A]]}return null}function eR(t){let A=t.type.prop(a4e);return A?A(t.node):t}function Dg(t,A,e,i={}){let n=i.maxScanDistance||I$,o=i.brackets||B$,a=Yr(t),r=a.resolveInner(A,e);for(let s=r;s;s=s.parent){let l=$x(s.type,e,o);if(l&&s.from0?A>=c.from&&Ac.from&&A<=c.to))return r4e(t,A,e,s,c,l,o)}}return s4e(t,A,e,a,r.type,n,o)}function r4e(t,A,e,i,n,o,a){let r=i.parent,s={from:n.from,to:n.to},l=0,c=r?.cursor();if(c&&(e<0?c.childBefore(i.from):c.childAfter(i.to)))do if(e<0?c.to<=i.from:c.from>=i.to){if(l==0&&o.indexOf(c.type.name)>-1&&c.from0)return null;let l={from:e<0?A-1:A,to:e>0?A+1:A},c=t.doc.iterRange(A,e>0?t.doc.length:0),C=0;for(let d=0;!c.next().done&&d<=o;){let B=c.value;e<0&&(d+=B.length);let E=A+d*e;for(let u=e>0?0:B.length-1,m=e>0?B.length:-1;u!=m;u+=e){let f=a.indexOf(B[u]);if(!(f<0||i.resolveInner(E+u,1).type!=n))if(f%2==0==e>0)C++;else{if(C==1)return{start:l,end:{from:E+u,to:E+u+1},matched:f>>1==s>>1};C--}}e>0&&(d+=B.length)}return c.done?{start:l,matched:!1}:null}var l4e=Object.create(null),WX=[ks.none];var XX=[],$X=Object.create(null),c4e=Object.create(null);for(let[t,A]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])c4e[t]=g4e(l4e,A);function Px(t,A){XX.indexOf(t)>-1||(XX.push(t),console.warn(A))}function g4e(t,A){let e=[];for(let r of A.split(" ")){let s=[];for(let l of r.split(".")){let c=t[l]||PA[l];c?typeof c=="function"?s.length?s=s.map(c):Px(l,`Modifier ${l} used at start of tag`):s.length?Px(l,`Tag ${l} used as modifier`):s=Array.isArray(c)?c:[c]:Px(l,`Unknown highlighting tag ${l}`)}for(let l of s)e.push(l)}if(!e.length)return 0;let i=A.replace(/ /g,"_"),n=i+" "+e.map(r=>r.id),o=$X[n];if(o)return o.id;let a=$X[n]=ks.define({id:WX.length,name:i,props:[sy({[i]:e})]});return WX.push(a),a.id}var fCA={rtl:Tt.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:Go.RTL}),ltr:Tt.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:Go.LTR}),auto:Tt.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var C4e=t=>{let{state:A}=t,e=A.doc.lineAt(A.selection.main.from),i=CR(t.state,e.from);return i.line?d4e(t):i.block?B4e(t):!1};function gR(t,A){return({state:e,dispatch:i})=>{if(e.readOnly)return!1;let n=t(A,e);return n?(i(e.update(n)),!0):!1}}var d4e=gR(E4e,0);var I4e=gR(D$,0);var B4e=gR((t,A)=>D$(t,A,u4e(A)),0);function CR(t,A){let e=t.languageDataAt("commentTokens",A,1);return e.length?e[0]:{}}var x4=50;function h4e(t,{open:A,close:e},i,n){let o=t.sliceDoc(i-x4,i),a=t.sliceDoc(n,n+x4),r=/\s*$/.exec(o)[0].length,s=/^\s*/.exec(a)[0].length,l=o.length-r;if(o.slice(l-A.length,l)==A&&a.slice(s,s+e.length)==e)return{open:{pos:i-r,margin:r&&1},close:{pos:n+s,margin:s&&1}};let c,C;n-i<=2*x4?c=C=t.sliceDoc(i,n):(c=t.sliceDoc(i,i+x4),C=t.sliceDoc(n-x4,n));let d=/^\s*/.exec(c)[0].length,B=/\s*$/.exec(C)[0].length,E=C.length-B-e.length;return c.slice(d,d+A.length)==A&&C.slice(E,E+e.length)==e?{open:{pos:i+d+A.length,margin:/\s/.test(c.charAt(d+A.length))?1:0},close:{pos:n-B-e.length,margin:/\s/.test(C.charAt(E-1))?1:0}}:null}function u4e(t){let A=[];for(let e of t.selection.ranges){let i=t.doc.lineAt(e.from),n=e.to<=i.to?i:t.doc.lineAt(e.to);n.from>i.from&&n.from==e.to&&(n=e.to==i.to+1?i:t.doc.lineAt(e.to-1));let o=A.length-1;o>=0&&A[o].to>i.from?A[o].to=n.to:A.push({from:i.from+/^\s*/.exec(i.text)[0].length,to:n.to})}return A}function D$(t,A,e=A.selection.ranges){let i=e.map(o=>CR(A,o.from).block);if(!i.every(o=>o))return null;let n=e.map((o,a)=>h4e(A,i[a],o.from,o.to));if(t!=2&&!n.every(o=>o))return{changes:A.changes(e.map((o,a)=>n[a]?[]:[{from:o.from,insert:i[a].open+" "},{from:o.to,insert:" "+i[a].close}]))};if(t!=1&&n.some(o=>o)){let o=[];for(let a=0,r;an&&(o==a||a>C.from)){n=C.from;let d=/^\s*/.exec(C.text)[0].length,B=d==C.length,E=C.text.slice(d,d+l.length)==l?d:-1;do.comment<0&&(!o.empty||o.single))){let o=[];for(let{line:r,token:s,indent:l,empty:c,single:C}of i)(C||!c)&&o.push({from:r.from+l,insert:s+" "});let a=A.changes(o);return{changes:a,selection:A.selection.map(a,1)}}else if(t!=1&&i.some(o=>o.comment>=0)){let o=[];for(let{line:a,comment:r,token:s}of i)if(r>=0){let l=a.from+r,c=l+s.length;a.text[c-a.from]==" "&&c++,o.push({from:l,to:c})}return{changes:o}}return null}function Au(t,A){return uA.create(t.ranges.map(A),t.mainIndex)}function Mg(t,A){return t.update({selection:A,scrollIntoView:!0,userEvent:"select"})}function Sg({state:t,dispatch:A},e){let i=Au(t.selection,e);return i.eq(t.selection,!0)?!1:(A(Mg(t,i)),!0)}function Iy(t,A){return uA.cursor(A?t.to:t.from)}function b$(t,A){return Sg(t,e=>e.empty?t.moveByChar(e,A):Iy(e,A))}function _s(t){return t.textDirectionAt(t.state.selection.main.head)==Go.LTR}var M$=t=>b$(t,!_s(t)),S$=t=>b$(t,_s(t));function k$(t,A){return Sg(t,e=>e.empty?t.moveByGroup(e,A):Iy(e,A))}var Q4e=t=>k$(t,!_s(t)),p4e=t=>k$(t,_s(t));var RCA=typeof Intl<"u"&&Intl.Segmenter?new Intl.Segmenter(void 0,{granularity:"word"}):null;function m4e(t,A,e){if(A.type.prop(e))return!0;let i=A.to-A.from;return i&&(i>2||/[^\s,.;:]/.test(t.sliceDoc(A.from,A.to)))||A.firstChild}function By(t,A,e){let i=Yr(t).resolveInner(A.head),n=e?Pi.closedBy:Pi.openedBy;for(let s=A.head;;){let l=e?i.childAfter(s):i.childBefore(s);if(!l)break;m4e(t,l,n)?i=l:s=e?l.to:l.from}let o=i.type.prop(n),a,r;return o&&(a=e?Dg(t,i.from,1):Dg(t,i.to,-1))&&a.matched?r=e?a.end.to:a.end.from:r=e?i.to:i.from,uA.cursor(r,e?-1:1)}var f4e=t=>Sg(t,A=>By(t.state,A,!_s(t))),w4e=t=>Sg(t,A=>By(t.state,A,_s(t)));function _$(t,A){return Sg(t,e=>{if(!e.empty)return Iy(e,A);let i=t.moveVertically(e,A);return i.head!=e.head?i:t.moveToLineBoundary(e,A)})}var x$=t=>_$(t,!1),R$=t=>_$(t,!0);function N$(t){let A=t.scrollDOM.clientHeighta.empty?t.moveVertically(a,A,e.height):Iy(a,A));if(n.eq(i.selection))return!1;let o;if(e.selfScroll){let a=t.coordsAtPos(i.selection.main.head),r=t.scrollDOM.getBoundingClientRect(),s=r.top+e.marginTop,l=r.bottom-e.marginBottom;a&&a.top>s&&a.bottomF$(t,!1),lR=t=>F$(t,!0);function t2(t,A,e){let i=t.lineBlockAt(A.head),n=t.moveToLineBoundary(A,e);if(n.head==A.head&&n.head!=(e?i.to:i.from)&&(n=t.moveToLineBoundary(A,e,!1)),!e&&n.head==i.from&&i.length){let o=/^\s*/.exec(t.state.sliceDoc(i.from,Math.min(i.from+100,i.to)))[0].length;o&&A.head!=i.from+o&&(n=uA.cursor(i.from+o))}return n}var y4e=t=>Sg(t,A=>t2(t,A,!0)),v4e=t=>Sg(t,A=>t2(t,A,!1)),D4e=t=>Sg(t,A=>t2(t,A,!_s(t))),b4e=t=>Sg(t,A=>t2(t,A,_s(t))),M4e=t=>Sg(t,A=>uA.cursor(t.lineBlockAt(A.head).from,1)),S4e=t=>Sg(t,A=>uA.cursor(t.lineBlockAt(A.head).to,-1));function k4e(t,A,e){let i=!1,n=Au(t.selection,o=>{let a=Dg(t,o.head,-1)||Dg(t,o.head,1)||o.head>0&&Dg(t,o.head-1,1)||o.headk4e(t,A,!1);function _c(t,A){let e=Au(t.state.selection,i=>{let n=A(i);return uA.range(i.anchor,n.head,n.goalColumn,n.bidiLevel||void 0,n.assoc)});return e.eq(t.state.selection)?!1:(t.dispatch(Mg(t.state,e)),!0)}function L$(t,A){return _c(t,e=>t.moveByChar(e,A))}var G$=t=>L$(t,!_s(t)),K$=t=>L$(t,_s(t));function U$(t,A){return _c(t,e=>t.moveByGroup(e,A))}var x4e=t=>U$(t,!_s(t)),R4e=t=>U$(t,_s(t));var N4e=t=>_c(t,A=>By(t.state,A,!_s(t))),F4e=t=>_c(t,A=>By(t.state,A,_s(t)));function T$(t,A){return _c(t,e=>t.moveVertically(e,A))}var O$=t=>T$(t,!1),J$=t=>T$(t,!0);function z$(t,A){return _c(t,e=>t.moveVertically(e,A,N$(t).height))}var Q$=t=>z$(t,!1),p$=t=>z$(t,!0),L4e=t=>_c(t,A=>t2(t,A,!0)),G4e=t=>_c(t,A=>t2(t,A,!1)),K4e=t=>_c(t,A=>t2(t,A,!_s(t))),U4e=t=>_c(t,A=>t2(t,A,_s(t))),T4e=t=>_c(t,A=>uA.cursor(t.lineBlockAt(A.head).from)),O4e=t=>_c(t,A=>uA.cursor(t.lineBlockAt(A.head).to)),m$=({state:t,dispatch:A})=>(A(Mg(t,{anchor:0})),!0),f$=({state:t,dispatch:A})=>(A(Mg(t,{anchor:t.doc.length})),!0),w$=({state:t,dispatch:A})=>(A(Mg(t,{anchor:t.selection.main.anchor,head:0})),!0),y$=({state:t,dispatch:A})=>(A(Mg(t,{anchor:t.selection.main.anchor,head:t.doc.length})),!0),J4e=({state:t,dispatch:A})=>(A(t.update({selection:{anchor:0,head:t.doc.length},userEvent:"select"})),!0),z4e=({state:t,dispatch:A})=>{let e=hy(t).map(({from:i,to:n})=>uA.range(i,Math.min(n+1,t.doc.length)));return A(t.update({selection:uA.create(e),userEvent:"select"})),!0},Y4e=({state:t,dispatch:A})=>{let e=Au(t.selection,i=>{let n=Yr(t),o=n.resolveStack(i.from,1);if(i.empty){let a=n.resolveStack(i.from,-1);a.node.from>=o.node.from&&a.node.to<=o.node.to&&(o=a)}for(let a=o;a;a=a.next){let{node:r}=a;if((r.from=i.to||r.to>i.to&&r.from<=i.from)&&a.next)return uA.range(r.to,r.from)}return i});return e.eq(t.selection)?!1:(A(Mg(t,e)),!0)};function Y$(t,A){let{state:e}=t,i=e.selection,n=e.selection.ranges.slice();for(let o of e.selection.ranges){let a=e.doc.lineAt(o.head);if(A?a.to0)for(let r=o;;){let s=t.moveVertically(r,A);if(s.heada.to){n.some(l=>l.head==s.head)||n.push(s);break}else{if(s.head==r.head)break;r=s}}}return n.length==i.ranges.length?!1:(t.dispatch(Mg(e,uA.create(n,n.length-1))),!0)}var H4e=t=>Y$(t,!1),P4e=t=>Y$(t,!0),j4e=({state:t,dispatch:A})=>{let e=t.selection,i=null;return e.ranges.length>1?i=uA.create([e.main]):e.main.empty||(i=uA.create([uA.cursor(e.main.head)])),i?(A(Mg(t,i)),!0):!1};function R4(t,A){if(t.state.readOnly)return!1;let e="delete.selection",{state:i}=t,n=i.changeByRange(o=>{let{from:a,to:r}=o;if(a==r){let s=A(o);sa&&(e="delete.forward",s=dy(t,s,!0)),a=Math.min(a,s),r=Math.max(r,s)}else a=dy(t,a,!1),r=dy(t,r,!0);return a==r?{range:o}:{changes:{from:a,to:r},range:uA.cursor(a,an(t)))i.between(A,A,(n,o)=>{nA&&(A=e?o:n)});return A}var H$=(t,A,e)=>R4(t,i=>{let n=i.from,{state:o}=t,a=o.doc.lineAt(n),r,s;if(e&&!A&&n>a.from&&nH$(t,!1,!0);var P$=t=>H$(t,!0,!1),j$=(t,A)=>R4(t,e=>{let i=e.head,{state:n}=t,o=n.doc.lineAt(i),a=n.charCategorizer(i);for(let r=null;;){if(i==(A?o.to:o.from)){i==e.head&&o.number!=(A?n.doc.lines:1)&&(i+=A?1:-1);break}let s=sr(o.text,i-o.from,A)+o.from,l=o.text.slice(Math.min(i,s)-o.from,Math.max(i,s)-o.from),c=a(l);if(r!=null&&c!=r)break;(l!=" "||i!=e.head)&&(r=c),i=s}return i}),V$=t=>j$(t,!1),V4e=t=>j$(t,!0);var q4e=t=>R4(t,A=>{let e=t.lineBlockAt(A.head).to;return A.headR4(t,A=>{let e=t.moveToLineBoundary(A,!1).head;return A.head>e?e:Math.max(0,A.head-1)}),W4e=t=>R4(t,A=>{let e=t.moveToLineBoundary(A,!0).head;return A.head{if(t.readOnly)return!1;let e=t.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:Jn.of(["",""])},range:uA.cursor(i.from)}));return A(t.update(e,{scrollIntoView:!0,userEvent:"input"})),!0},$4e=({state:t,dispatch:A})=>{if(t.readOnly)return!1;let e=t.changeByRange(i=>{if(!i.empty||i.from==0||i.from==t.doc.length)return{range:i};let n=i.from,o=t.doc.lineAt(n),a=n==o.from?n-1:sr(o.text,n-o.from,!1)+o.from,r=n==o.to?n+1:sr(o.text,n-o.from,!0)+o.from;return{changes:{from:a,to:r,insert:t.doc.slice(n,r).append(t.doc.slice(a,n))},range:uA.cursor(r)}});return e.changes.empty?!1:(A(t.update(e,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function hy(t){let A=[],e=-1;for(let i of t.selection.ranges){let n=t.doc.lineAt(i.from),o=t.doc.lineAt(i.to);if(!i.empty&&i.to==o.from&&(o=t.doc.lineAt(i.to-1)),e>=n.number){let a=A[A.length-1];a.to=o.to,a.ranges.push(i)}else A.push({from:n.from,to:o.to,ranges:[i]});e=o.number+1}return A}function q$(t,A,e){if(t.readOnly)return!1;let i=[],n=[];for(let o of hy(t)){if(e?o.to==t.doc.length:o.from==0)continue;let a=t.doc.lineAt(e?o.to+1:o.from-1),r=a.length+1;if(e){i.push({from:o.to,to:a.to},{from:o.from,insert:a.text+t.lineBreak});for(let s of o.ranges)n.push(uA.range(Math.min(t.doc.length,s.anchor+r),Math.min(t.doc.length,s.head+r)))}else{i.push({from:a.from,to:o.from},{from:o.to,insert:t.lineBreak+a.text});for(let s of o.ranges)n.push(uA.range(s.anchor-r,s.head-r))}}return i.length?(A(t.update({changes:i,scrollIntoView:!0,selection:uA.create(n,t.selection.mainIndex),userEvent:"move.line"})),!0):!1}var eme=({state:t,dispatch:A})=>q$(t,A,!1),Ame=({state:t,dispatch:A})=>q$(t,A,!0);function Z$(t,A,e){if(t.readOnly)return!1;let i=[];for(let o of hy(t))e?i.push({from:o.from,insert:t.doc.slice(o.from,o.to)+t.lineBreak}):i.push({from:o.to,insert:t.lineBreak+t.doc.slice(o.from,o.to)});let n=t.changes(i);return A(t.update({changes:n,selection:t.selection.map(n,e?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}var tme=({state:t,dispatch:A})=>Z$(t,A,!1),ime=({state:t,dispatch:A})=>Z$(t,A,!0),nme=t=>{if(t.state.readOnly)return!1;let{state:A}=t,e=A.changes(hy(A).map(({from:n,to:o})=>(n>0?n--:o{let o;if(t.lineWrapping){let a=t.lineBlockAt(n.head),r=t.coordsAtPos(n.head,n.assoc||1);r&&(o=a.bottom+t.documentTop-r.bottom+t.defaultLineHeight/2)}return t.moveVertically(n,!0,o)}).map(e);return t.dispatch({changes:e,selection:i,scrollIntoView:!0,userEvent:"delete.line"}),!0};function ome(t,A){if(/\(\)|\[\]|\{\}/.test(t.sliceDoc(A-1,A+1)))return{from:A,to:A};let e=Yr(t).resolveInner(A),i=e.childBefore(A),n=e.childAfter(A),o;return i&&n&&i.to<=A&&n.from>=A&&(o=i.type.prop(Pi.closedBy))&&o.indexOf(n.name)>-1&&t.doc.lineAt(i.to).from==t.doc.lineAt(n.from).from&&!/\S/.test(t.sliceDoc(i.to,n.from))?{from:i.to,to:n.from}:null}var v$=W$(!1),ame=W$(!0);function W$(t){return({state:A,dispatch:e})=>{if(A.readOnly)return!1;let i=A.changeByRange(n=>{let{from:o,to:a}=n,r=A.doc.lineAt(o),s=!t&&o==a&&ome(A,o);t&&(o=a=(a<=r.to?r:A.doc.lineAt(a)).to);let l=new r1(A,{simulateBreak:o,simulateDoubleBreak:!!s}),c=Cy(l,o);for(c==null&&(c=bC(/^\s*/.exec(A.doc.lineAt(o).text)[0],A.tabSize));ar.from&&o{let n=[];for(let a=i.from;a<=i.to;){let r=t.doc.lineAt(a);r.number>e&&(i.empty||i.to>r.from)&&(A(r,n,i),e=r.number),a=r.to+1}let o=t.changes(n);return{changes:n,range:uA.range(o.mapPos(i.anchor,1),o.mapPos(i.head,1))}})}var rme=({state:t,dispatch:A})=>{if(t.readOnly)return!1;let e=Object.create(null),i=new r1(t,{overrideIndentation:o=>{let a=e[o];return a??-1}}),n=dR(t,(o,a,r)=>{let s=Cy(i,o.from);if(s==null)return;/\S/.test(o.text)||(s=0);let l=/^\s*/.exec(o.text)[0],c=$h(t,s);(l!=c||r.fromt.readOnly?!1:(A(t.update(dR(t,(e,i)=>{i.push({from:e.from,insert:t.facet(l1)})}),{userEvent:"input.indent"})),!0),$$=({state:t,dispatch:A})=>t.readOnly?!1:(A(t.update(dR(t,(e,i)=>{let n=/^\s*/.exec(e.text)[0];if(!n)return;let o=bC(n,t.tabSize),a=0,r=$h(t,Math.max(0,o-bg(t)));for(;a(t.setTabFocusMode(),!0);var lme=[{key:"Ctrl-b",run:M$,shift:G$,preventDefault:!0},{key:"Ctrl-f",run:S$,shift:K$},{key:"Ctrl-p",run:x$,shift:O$},{key:"Ctrl-n",run:R$,shift:J$},{key:"Ctrl-a",run:M4e,shift:T4e},{key:"Ctrl-e",run:S4e,shift:O4e},{key:"Ctrl-d",run:P$},{key:"Ctrl-h",run:cR},{key:"Ctrl-k",run:q4e},{key:"Ctrl-Alt-h",run:V$},{key:"Ctrl-o",run:X4e},{key:"Ctrl-t",run:$4e},{key:"Ctrl-v",run:lR}],cme=[{key:"ArrowLeft",run:M$,shift:G$,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:Q4e,shift:x4e,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:D4e,shift:K4e,preventDefault:!0},{key:"ArrowRight",run:S$,shift:K$,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:p4e,shift:R4e,preventDefault:!0},{mac:"Cmd-ArrowRight",run:b4e,shift:U4e,preventDefault:!0},{key:"ArrowUp",run:x$,shift:O$,preventDefault:!0},{mac:"Cmd-ArrowUp",run:m$,shift:w$},{mac:"Ctrl-ArrowUp",run:E$,shift:Q$},{key:"ArrowDown",run:R$,shift:J$,preventDefault:!0},{mac:"Cmd-ArrowDown",run:f$,shift:y$},{mac:"Ctrl-ArrowDown",run:lR,shift:p$},{key:"PageUp",run:E$,shift:Q$},{key:"PageDown",run:lR,shift:p$},{key:"Home",run:v4e,shift:G4e,preventDefault:!0},{key:"Mod-Home",run:m$,shift:w$},{key:"End",run:y4e,shift:L4e,preventDefault:!0},{key:"Mod-End",run:f$,shift:y$},{key:"Enter",run:v$,shift:v$},{key:"Mod-a",run:J4e},{key:"Backspace",run:cR,shift:cR,preventDefault:!0},{key:"Delete",run:P$,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:V$,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:V4e,preventDefault:!0},{mac:"Mod-Backspace",run:Z4e,preventDefault:!0},{mac:"Mod-Delete",run:W4e,preventDefault:!0}].concat(lme.map(t=>({mac:t.key,run:t.run,shift:t.shift}))),eee=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:f4e,shift:N4e},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:w4e,shift:F4e},{key:"Alt-ArrowUp",run:eme},{key:"Shift-Alt-ArrowUp",run:tme},{key:"Alt-ArrowDown",run:Ame},{key:"Shift-Alt-ArrowDown",run:ime},{key:"Mod-Alt-ArrowUp",run:H4e},{key:"Mod-Alt-ArrowDown",run:P4e},{key:"Escape",run:j4e},{key:"Mod-Enter",run:ame},{key:"Alt-l",mac:"Ctrl-l",run:z4e},{key:"Mod-i",run:Y4e,preventDefault:!0},{key:"Mod-[",run:$$},{key:"Mod-]",run:X$},{key:"Mod-Alt-\\",run:rme},{key:"Shift-Mod-k",run:nme},{key:"Shift-Mod-\\",run:_4e},{key:"Mod-/",run:C4e},{key:"Alt-A",run:I4e},{key:"Ctrl-m",mac:"Shift-Alt-m",run:sme}].concat(cme),Aee={key:"Tab",run:X$,shift:$$};var Qy=class{constructor(A,e,i){this.from=A,this.to=e,this.diagnostic=i}},c1=class t{constructor(A,e,i){this.diagnostics=A,this.panel=e,this.selected=i}static init(A,e,i){let n=i.facet(N0).markerFilter;n&&(A=n(A,i));let o=A.slice().sort((B,E)=>B.from-E.from||B.to-E.to),a=new ns,r=[],s=0,l=i.doc.iter(),c=0,C=i.doc.length;for(let B=0;;){let E=B==o.length?null:o[B];if(!E&&!r.length)break;let u,m;if(r.length)u=s,m=r.reduce((S,k)=>Math.min(S,k.to),E&&E.from>u?E.from:1e8);else{if(u=E.from,u>C)break;m=E.to,r.push(E),B++}for(;BS.from||S.to==u))r.push(S),B++,m=Math.min(S.to,m);else{m=Math.min(S.from,m);break}}m=Math.min(m,C);let f=!1;if(r.some(S=>S.from==u&&(S.to==m||m==C))&&(f=u==m,!f&&m-u<10)){let S=u-(c+l.value.length);S>0&&(l.next(S),c=u);for(let k=u;;){if(k>=m){f=!0;break}if(!l.lineBreak&&c+l.value.length>k)break;k=c+l.value.length,c+=l.value.length,l.next()}}let D=Cee(r);if(f)a.add(u,u,Tt.widget({widget:new IR(D),diagnostics:r.slice()}));else{let S=r.reduce((k,b)=>b.markClass?k+" "+b.markClass:k,"");a.add(u,m,Tt.mark({class:"cm-lintRange cm-lintRange-"+D+S,diagnostics:r.slice(),inclusiveEnd:r.some(k=>k.to>m)}))}if(s=m,s==C)break;for(let S=0;S{if(!(A&&a.diagnostics.indexOf(A)<0))if(!i)i=new Qy(n,o,A||a.diagnostics[0]);else{if(a.diagnostics.indexOf(i.diagnostic)<0)return!1;i=new Qy(i.from,o,i.diagnostic)}}),i}function nee(t,A){let e=A.pos,i=A.end||e,n=t.state.facet(N0).hideOn(t,e,i);if(n!=null)return n;let o=t.startState.doc.lineAt(A.pos);return!!(t.effects.some(a=>a.is(fy))||t.changes.touchesRange(o.from,Math.max(o.to,i)))}function oee(t,A){return t.field(Vl,!1)?A:A.concat(gn.appendConfig.of(Iee))}function gme(t,A){return{effects:oee(t,[fy.of(A)])}}var fy=gn.define(),hR=gn.define(),aee=gn.define(),Vl=Oa.define({create(){return new c1(Tt.none,null,null)},update(t,A){if(A.docChanged&&t.diagnostics.size){let e=t.diagnostics.map(A.changes),i=null,n=t.panel;if(t.selected){let o=A.changes.mapPos(t.selected.from,1);i=i2(e,t.selected.diagnostic,o)||i2(e,null,o)}!e.size&&n&&A.state.facet(N0).autoPanel&&(n=null),t=new c1(e,n,i)}for(let e of A.effects)if(e.is(fy)){let i=A.state.facet(N0).autoPanel?e.value.length?N4.open:null:t.panel;t=c1.init(e.value,i,A.state)}else e.is(hR)?t=new c1(t.diagnostics,e.value?N4.open:null,t.selected):e.is(aee)&&(t=new c1(t.diagnostics,t.panel,e.value));return t},provide:t=>[t1.from(t,A=>A.panel),mi.decorations.from(t,A=>A.diagnostics)]});var Cme=Tt.mark({class:"cm-lintRange cm-lintRange-active"});function dme(t,A,e){let{diagnostics:i}=t.state.field(Vl),n,o=-1,a=-1;i.between(A-(e<0?1:0),A+(e>0?1:0),(s,l,{spec:c})=>{if(A>=s&&A<=l&&(s==l||(A>s||e>0)&&(Agee(t,e,!1)))}var Ime=t=>{let A=t.state.field(Vl,!1);(!A||!A.panel)&&t.dispatch({effects:oee(t.state,[hR.of(!0)])});let e=p4(t,N4.open);return e&&e.dom.querySelector(".cm-panel-lint ul").focus(),!0},tee=t=>{let A=t.state.field(Vl,!1);return!A||!A.panel?!1:(t.dispatch({effects:hR.of(!1)}),!0)},Bme=t=>{let A=t.state.field(Vl,!1);if(!A)return!1;let e=t.state.selection.main,i=i2(A.diagnostics,null,e.to+1);return!i&&(i=i2(A.diagnostics,null,0),!i||i.from==e.from&&i.to==e.to)?!1:(t.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0}),!0)};var see=[{key:"Mod-Shift-m",run:Ime,preventDefault:!0},{key:"F8",run:Bme}],hme=Vo.fromClass(class{constructor(t){this.view=t,this.timeout=-1,this.set=!0;let{delay:A}=t.state.facet(N0);this.lintTime=Date.now()+A,this.run=this.run.bind(this),this.timeout=setTimeout(this.run,A)}run(){clearTimeout(this.timeout);let t=Date.now();if(tPromise.resolve(i(this.view))),i=>{this.view.state.doc==A.doc&&this.view.dispatch(gme(this.view.state,i.reduce((n,o)=>n.concat(o))))},i=>{zr(this.view.state,i)})}}update(t){let A=t.state.facet(N0);(t.docChanged||A!=t.startState.facet(N0)||A.needsRefresh&&A.needsRefresh(t))&&(this.lintTime=Date.now()+A.delay,this.set||(this.set=!0,this.timeout=setTimeout(this.run,A.delay)))}force(){this.set&&(this.lintTime=Date.now(),this.run())}destroy(){clearTimeout(this.timeout)}});function ume(t,A,e){let i=[],n=-1;for(let o of t)o.then(a=>{i.push(a),clearTimeout(n),i.length==t.length?A(i):n=setTimeout(()=>A(i),200)},e)}var N0=lt.define({combine(t){return Y({sources:t.map(A=>A.source).filter(A=>A!=null)},Jr(t.map(A=>A.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:iee,tooltipFilter:iee,needsRefresh:(A,e)=>A?e?i=>A(i)||e(i):A:e,hideOn:(A,e)=>A?e?(i,n,o)=>A(i,n,o)||e(i,n,o):A:e,autoPanel:(A,e)=>A||e}))}});function iee(t,A){return t?A?(e,i)=>A(t(e,i),i):t:A}function lee(t,A={}){return[N0.of({source:t,config:A}),hme,Iee]}function cee(t){let A=[];if(t)e:for(let{name:e}of t){for(let i=0;io.toLowerCase()==n.toLowerCase())){A.push(n);continue e}}A.push("")}return A}function gee(t,A,e){var i;let n=e?cee(A.actions):[];return mo("li",{class:"cm-diagnostic cm-diagnostic-"+A.severity},mo("span",{class:"cm-diagnosticText"},A.renderMessage?A.renderMessage(t):A.message),(i=A.actions)===null||i===void 0?void 0:i.map((o,a)=>{let r=!1,s=B=>{if(B.preventDefault(),r)return;r=!0;let E=i2(t.state.field(Vl).diagnostics,A);E&&o.apply(t,E.from,E.to)},{name:l}=o,c=n[a]?l.indexOf(n[a]):-1,C=c<0?l:[l.slice(0,c),mo("u",l.slice(c,c+1)),l.slice(c+1)],d=o.markClass?" "+o.markClass:"";return mo("button",{type:"button",class:"cm-diagnosticAction"+d,onclick:s,onmousedown:s,"aria-label":` Action: ${l}${c<0?"":` (access key "${n[a]})"`}.`},C)}),A.source&&mo("div",{class:"cm-diagnosticSource"},A.source))}var IR=class extends pl{constructor(A){super(),this.sev=A}eq(A){return A.sev==this.sev}toDOM(){return mo("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}},py=class{constructor(A,e){this.diagnostic=e,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=gee(A,e,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}},N4=class t{constructor(A){this.view=A,this.items=[];let e=n=>{if(!(n.ctrlKey||n.altKey||n.metaKey)){if(n.keyCode==27)tee(this.view),this.view.focus();else if(n.keyCode==38||n.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(n.keyCode==40||n.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(n.keyCode==36)this.moveSelection(0);else if(n.keyCode==35)this.moveSelection(this.items.length-1);else if(n.keyCode==13)this.view.focus();else if(n.keyCode>=65&&n.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:o}=this.items[this.selectedIndex],a=cee(o.actions);for(let r=0;r{for(let o=0;otee(this.view)},"\xD7")),this.update()}get selectedIndex(){let A=this.view.state.field(Vl).selected;if(!A)return-1;for(let e=0;e{for(let c of l.diagnostics){if(a.has(c))continue;a.add(c);let C=-1,d;for(let B=i;Bi&&(this.items.splice(i,C-i),n=!0)),e&&d.diagnostic==e.diagnostic?d.dom.hasAttribute("aria-selected")||(d.dom.setAttribute("aria-selected","true"),o=d):d.dom.hasAttribute("aria-selected")&&d.dom.removeAttribute("aria-selected"),i++}});i({sel:o.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:r,panel:s})=>{let l=s.height/this.list.offsetHeight;r.tops.bottom&&(this.list.scrollTop+=(r.bottom-s.bottom)/l)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),n&&this.sync()}sync(){let A=this.list.firstChild;function e(){let i=A;A=i.nextSibling,i.remove()}for(let i of this.items)if(i.dom.parentNode==this.list){for(;A!=i.dom;)e();A=i.dom.nextSibling}else this.list.insertBefore(i.dom,A);for(;A;)e()}moveSelection(A){if(this.selectedIndex<0)return;let e=this.view.state.field(Vl),i=i2(e.diagnostics,this.items[A].diagnostic);i&&this.view.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0,effects:aee.of(i)})}static open(A){return new t(A)}};function Ey(t,A='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,${encodeURIComponent(t)}')`}function uy(t){return Ey(``,'width="6" height="3"')}var Eme=mi.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:uy("#d11")},".cm-lintRange-warning":{backgroundImage:uy("orange")},".cm-lintRange-info":{backgroundImage:uy("#999")},".cm-lintRange-hint":{backgroundImage:uy("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function Qme(t){return t=="error"?4:t=="warning"?3:t=="info"?2:1}function Cee(t){let A="hint",e=1;for(let i of t){let n=Qme(i.severity);n>e&&(e=n,A=i.severity)}return A}var my=class extends fl{constructor(A){super(),this.diagnostics=A,this.severity=Cee(A)}toDOM(A){let e=document.createElement("div");e.className="cm-lint-marker cm-lint-marker-"+this.severity;let i=this.diagnostics,n=A.state.facet(wy).tooltipFilter;return n&&(i=n(i,A.state)),i.length&&(e.onmouseover=()=>mme(A,e,i)),e}};function pme(t,A){let e=i=>{let n=A.getBoundingClientRect();if(!(i.clientX>n.left-10&&i.clientXn.top-10&&i.clientYA.getBoundingClientRect()}}})}),A.onmouseout=A.onmousemove=null,pme(t,A)}let{hoverTime:n}=t.state.facet(wy),o=setTimeout(i,n);A.onmouseout=()=>{clearTimeout(o),A.onmouseout=A.onmousemove=null},A.onmousemove=()=>{clearTimeout(o),o=setTimeout(i,n)}}function fme(t,A){let e=Object.create(null);for(let n of A){let o=t.lineAt(n.from);(e[o.from]||(e[o.from]=[])).push(n)}let i=[];for(let n in e)i.push(new my(e[n]).range(+n));return po.of(i,!0)}var wme=ey({class:"cm-gutter-lint",markers:t=>t.state.field(BR),widgetMarker:(t,A,e)=>{let i=[];return t.state.field(BR).between(e.from,e.to,(n,o,a)=>{n>e.from&&ni.is(uR)?i.value:e,t)},provide:t=>Vh.from(t)}),yme=mi.baseTheme({".cm-gutter-lint":{width:"1.4em","& .cm-gutterElement":{padding:".2em"}},".cm-lint-marker":{width:"1em",height:"1em"},".cm-lint-marker-info":{content:Ey('')},".cm-lint-marker-warning":{content:Ey('')},".cm-lint-marker-error":{content:Ey('')}}),Iee=[Vl,mi.decorations.compute([Vl],t=>{let{selected:A,panel:e}=t.field(Vl);return!A||!e||A.from==A.to?Tt.none:Tt.set([Cme.range(A.from,A.to)])}),SX(dme,{hideOn:nee}),Eme],wy=lt.define({combine(t){return Jr(t,{hoverTime:300,markerFilter:null,tooltipFilter:null})}});function Bee(t={}){return[wy.of(t),BR,wme,yme,dee]}var QR=class t{constructor(A,e,i,n,o,a,r,s,l,c=0,C){this.p=A,this.stack=e,this.state=i,this.reducePos=n,this.pos=o,this.score=a,this.buffer=r,this.bufferBase=s,this.curContext=l,this.lookAhead=c,this.parent=C}toString(){return`[${this.stack.filter((A,e)=>e%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(A,e,i=0){let n=A.parser.context;return new t(A,[],e,i,i,0,[],0,n?new yy(n,n.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(A,e){this.stack.push(this.state,e,this.bufferBase+this.buffer.length),this.state=A}reduce(A){var e;let i=A>>19,n=A&65535,{parser:o}=this.p,a=this.reducePos=2e3&&!(!((e=this.p.parser.nodeSet.types[n])===null||e===void 0)&&e.isAnonymous)&&(l==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=c):this.p.lastBigReductionSizes;)this.stack.pop();this.reduceContext(n,l)}storeNode(A,e,i,n=4,o=!1){if(A==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&a.buffer[r-4]==0&&a.buffer[r-1]>-1){if(e==i)return;if(a.buffer[r-2]>=e){a.buffer[r-2]=i;return}}}if(!o||this.pos==i)this.buffer.push(A,e,i,n);else{let a=this.buffer.length;if(a>0&&(this.buffer[a-4]!=0||this.buffer[a-1]<0)){let r=!1;for(let s=a;s>0&&this.buffer[s-2]>i;s-=4)if(this.buffer[s-1]>=0){r=!0;break}if(r)for(;a>0&&this.buffer[a-2]>i;)this.buffer[a]=this.buffer[a-4],this.buffer[a+1]=this.buffer[a-3],this.buffer[a+2]=this.buffer[a-2],this.buffer[a+3]=this.buffer[a-1],a-=4,n>4&&(n-=4)}this.buffer[a]=A,this.buffer[a+1]=e,this.buffer[a+2]=i,this.buffer[a+3]=n}}shift(A,e,i,n){if(A&131072)this.pushState(A&65535,this.pos);else if((A&262144)==0){let o=A,{parser:a}=this.p;this.pos=n;let r=a.stateFlag(o,1);!r&&(n>i||e<=a.maxNode)&&(this.reducePos=n),this.pushState(o,r?i:Math.min(i,this.reducePos)),this.shiftContext(e,i),e<=a.maxNode&&this.buffer.push(e,i,n,4)}else this.pos=n,this.shiftContext(e,i),e<=this.p.parser.maxNode&&this.buffer.push(e,i,n,4)}apply(A,e,i,n){A&65536?this.reduce(A):this.shift(A,e,i,n)}useNode(A,e){let i=this.p.reused.length-1;(i<0||this.p.reused[i]!=A)&&(this.p.reused.push(A),i++);let n=this.pos;this.reducePos=this.pos=n+A.length,this.pushState(e,n),this.buffer.push(i,n,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,A,this,this.p.stream.reset(this.pos-A.length)))}split(){let A=this,e=A.buffer.length;for(;e>0&&A.buffer[e-2]>A.reducePos;)e-=4;let i=A.buffer.slice(e),n=A.bufferBase+e;for(;A&&n==A.bufferBase;)A=A.parent;return new t(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,i,n,this.curContext,this.lookAhead,A)}recoverByDelete(A,e){let i=A<=this.p.parser.maxNode;i&&this.storeNode(A,this.pos,e,4),this.storeNode(0,this.pos,e,i?8:4),this.pos=this.reducePos=e,this.score-=190}canShift(A){for(let e=new pR(this);;){let i=this.p.parser.stateSlot(e.state,4)||this.p.parser.hasAction(e.state,A);if(i==0)return!1;if((i&65536)==0)return!0;e.reduce(i)}}recoverByInsert(A){if(this.stack.length>=300)return[];let e=this.p.parser.nextStates(this.state);if(e.length>8||this.stack.length>=120){let n=[];for(let o=0,a;os&1&&r==a)||n.push(e[o],a)}e=n}let i=[];for(let n=0;n>19,n=e&65535,o=this.stack.length-i*3;if(o<0||A.getGoto(this.stack[o],n,!1)<0){let a=this.findForcedReduction();if(a==null)return!1;e=a}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(e),!0}findForcedReduction(){let{parser:A}=this.p,e=[],i=(n,o)=>{if(!e.includes(n))return e.push(n),A.allActions(n,a=>{if(!(a&393216))if(a&65536){let r=(a>>19)-o;if(r>1){let s=a&65535,l=this.stack.length-r*3;if(l>=0&&A.getGoto(this.stack[l],s,!1)>=0)return r<<19|65536|s}}else{let r=i(a,o+1);if(r!=null)return r}})};return i(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:A}=this.p;return A.data[A.stateSlot(this.state,1)]==65535&&!A.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(A){if(this.state!=A.state||this.stack.length!=A.stack.length)return!1;for(let e=0;e0&&this.emitLookAhead()}},yy=class{constructor(A,e){this.tracker=A,this.context=e,this.hash=A.strict?A.hash(e):0}},pR=class{constructor(A){this.start=A,this.state=A.state,this.stack=A.stack,this.base=this.stack.length}reduce(A){let e=A&65535,i=A>>19;i==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(i-1)*3;let n=this.start.p.parser.getGoto(this.stack[this.base-3],e,!0);this.state=n}},mR=class t{constructor(A,e,i){this.stack=A,this.pos=e,this.index=i,this.buffer=A.buffer,this.index==0&&this.maybeNext()}static create(A,e=A.bufferBase+A.buffer.length){return new t(A,e,e-A.bufferBase)}maybeNext(){let A=this.stack.parent;A!=null&&(this.index=this.stack.bufferBase-A.bufferBase,this.stack=A,this.buffer=A.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new t(this.stack,this.pos,this.index)}};function F4(t,A=Uint16Array){if(typeof t!="string")return t;let e=null;for(let i=0,n=0;i=92&&a--,a>=34&&a--;let s=a-32;if(s>=46&&(s-=46,r=!0),o+=s,r)break;o*=46}e?e[n++]=o:e=new A(o)}return e}var tu=class{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}},hee=new tu,fR=class{constructor(A,e){this.input=A,this.ranges=e,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=hee,this.rangeIndex=0,this.pos=this.chunkPos=e[0].from,this.range=e[0],this.end=e[e.length-1].to,this.readNext()}resolveOffset(A,e){let i=this.range,n=this.rangeIndex,o=this.pos+A;for(;oi.to:o>=i.to;){if(n==this.ranges.length-1)return null;let a=this.ranges[++n];o+=a.from-i.to,i=a}return o}clipPos(A){if(A>=this.range.from&&AA)return Math.max(A,e.from);return this.end}peek(A){let e=this.chunkOff+A,i,n;if(e>=0&&e=this.chunk2Pos&&ir.to&&(this.chunk2=this.chunk2.slice(0,r.to-i)),n=this.chunk2.charCodeAt(0)}}return i>=this.token.lookAhead&&(this.token.lookAhead=i+1),n}acceptToken(A,e=0){let i=e?this.resolveOffset(e,-1):this.pos;if(i==null||i=this.chunk2Pos&&this.posthis.range.to?A.slice(0,this.range.to-this.pos):A,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(A=1){for(this.chunkOff+=A;this.pos+A>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();A-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=A,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(A,e){if(e?(this.token=e,e.start=A,e.lookAhead=A+1,e.value=e.extended=-1):this.token=hee,this.pos!=A){if(this.pos=A,A==this.end)return this.setDone(),this;for(;A=this.range.to;)this.range=this.ranges[++this.rangeIndex];A>=this.chunkPos&&A=this.chunkPos&&e<=this.chunkPos+this.chunk.length)return this.chunk.slice(A-this.chunkPos,e-this.chunkPos);if(A>=this.chunk2Pos&&e<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(A-this.chunk2Pos,e-this.chunk2Pos);if(A>=this.range.from&&e<=this.range.to)return this.input.read(A,e);let i="";for(let n of this.ranges){if(n.from>=e)break;n.to>A&&(i+=this.input.read(Math.max(n.from,A),Math.min(n.to,e)))}return i}},n2=class{constructor(A,e){this.data=A,this.id=e}token(A,e){let{parser:i}=e.p;mee(this.data,A,e,this.id,i.data,i.tokenPrecTable)}};n2.prototype.contextual=n2.prototype.fallback=n2.prototype.extend=!1;var wR=class{constructor(A,e,i){this.precTable=e,this.elseToken=i,this.data=typeof A=="string"?F4(A):A}token(A,e){let i=A.pos,n=0;for(;;){let o=A.next<0,a=A.resolveOffset(1,1);if(mee(this.data,A,e,0,this.data,this.precTable),A.token.value>-1)break;if(this.elseToken==null)return;if(o||n++,a==null)break;A.reset(a,A.token)}n&&(A.reset(i,A.token),A.acceptToken(this.elseToken,n))}};wR.prototype.contextual=n2.prototype.fallback=n2.prototype.extend=!1;function mee(t,A,e,i,n,o){let a=0,r=1<0){let E=t[B];if(s.allows(E)&&(A.token.value==-1||A.token.value==E||Dme(E,A.token.value,n,o))){A.acceptToken(E);break}}let c=A.next,C=0,d=t[a+2];if(A.next<0&&d>C&&t[l+d*3-3]==65535){a=t[l+d*3-1];continue e}for(;C>1,E=l+B+(B<<1),u=t[E],m=t[E+1]||65536;if(c=m)C=B+1;else{a=t[E+2],A.advance();continue e}}break}}function uee(t,A,e){for(let i=A,n;(n=t[i])!=65535;i++)if(n==e)return i-A;return-1}function Dme(t,A,e,i){let n=uee(e,i,A);return n<0||uee(e,i,t)A)&&!i.type.isError)return e<0?Math.max(0,Math.min(i.to-1,A-25)):Math.min(t.length,Math.max(i.from+1,A+25));if(e<0?i.prevSibling():i.nextSibling())break;if(!i.parent())return e<0?0:t.length}}var yR=class{constructor(A,e){this.fragments=A,this.nodeSet=e,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let A=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(A){for(this.safeFrom=A.openStart?Eee(A.tree,A.from+A.offset,1)-A.offset:A.from,this.safeTo=A.openEnd?Eee(A.tree,A.to+A.offset,-1)-A.offset:A.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(A.tree),this.start.push(-A.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(A){if(AA)return this.nextStart=a,null;if(o instanceof Wa){if(a==A){if(a=Math.max(this.safeFrom,A)&&(this.trees.push(o),this.start.push(a),this.index.push(0))}else this.index[e]++,this.nextStart=a+o.length}}},vR=class{constructor(A,e){this.stream=e,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=A.tokenizers.map(i=>new tu)}getActions(A){let e=0,i=null,{parser:n}=A.p,{tokenizers:o}=n,a=n.stateSlot(A.state,3),r=A.curContext?A.curContext.hash:0,s=0;for(let l=0;lC.end+25&&(s=Math.max(C.lookAhead,s)),C.value!=0)){let d=e;if(C.extended>-1&&(e=this.addActions(A,C.extended,C.end,e)),e=this.addActions(A,C.value,C.end,e),!c.extend&&(i=C,e>d))break}}for(;this.actions.length>e;)this.actions.pop();return s&&A.setLookAhead(s),!i&&A.pos==this.stream.end&&(i=new tu,i.value=A.p.parser.eofTerm,i.start=i.end=A.pos,e=this.addActions(A,i.value,i.end,e)),this.mainToken=i,this.actions}getMainToken(A){if(this.mainToken)return this.mainToken;let e=new tu,{pos:i,p:n}=A;return e.start=i,e.end=Math.min(i+1,n.stream.end),e.value=i==n.stream.end?n.parser.eofTerm:0,e}updateCachedToken(A,e,i){let n=this.stream.clipPos(i.pos);if(e.token(this.stream.reset(n,A),i),A.value>-1){let{parser:o}=i.p;for(let a=0;a=0&&i.p.parser.dialect.allows(r>>1)){(r&1)==0?A.value=r>>1:A.extended=r>>1;break}}}else A.value=0,A.end=this.stream.clipPos(n+1)}putAction(A,e,i,n){for(let o=0;oA.bufferLength*4?new yR(i,A.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let A=this.stacks,e=this.minStackPos,i=this.stacks=[],n,o;if(this.bigReductionCount>300&&A.length==1){let[a]=A;for(;a.forceReduce()&&a.stack.length&&a.stack[a.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let a=0;ae)i.push(r);else{if(this.advanceStack(r,i,A))continue;{n||(n=[],o=[]),n.push(r);let s=this.tokens.getMainToken(r);o.push(s.value,s.end)}}break}}if(!i.length){let a=n&&bme(n);if(a)return ql&&console.log("Finish with "+this.stackID(a)),this.stackToTree(a);if(this.parser.strict)throw ql&&n&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+e);this.recovering||(this.recovering=5)}if(this.recovering&&n){let a=this.stoppedAt!=null&&n[0].pos>this.stoppedAt?n[0]:this.runRecovery(n,o,i);if(a)return ql&&console.log("Force-finish "+this.stackID(a)),this.stackToTree(a.forceAll())}if(this.recovering){let a=this.recovering==1?1:this.recovering*3;if(i.length>a)for(i.sort((r,s)=>s.score-r.score);i.length>a;)i.pop();i.some(r=>r.reducePos>e)&&this.recovering--}else if(i.length>1){e:for(let a=0;a500&&l.buffer.length>500)if((r.score-l.score||r.buffer.length-l.buffer.length)>0)i.splice(s--,1);else{i.splice(a--,1);continue e}}}i.length>12&&(i.sort((a,r)=>r.score-a.score),i.splice(12,i.length-12))}this.minStackPos=i[0].pos;for(let a=1;a ":"";if(this.stoppedAt!=null&&n>this.stoppedAt)return A.forceReduce()?A:null;if(this.fragments){let l=A.curContext&&A.curContext.tracker.strict,c=l?A.curContext.hash:0;for(let C=this.fragments.nodeAt(n);C;){let d=this.parser.nodeSet.types[C.type.id]==C.type?o.getGoto(A.state,C.type.id):-1;if(d>-1&&C.length&&(!l||(C.prop(Pi.contextHash)||0)==c))return A.useNode(C,d),ql&&console.log(a+this.stackID(A)+` (via reuse of ${o.getName(C.type.id)})`),!0;if(!(C instanceof Wa)||C.children.length==0||C.positions[0]>0)break;let B=C.children[0];if(B instanceof Wa&&C.positions[0]==0)C=B;else break}}let r=o.stateSlot(A.state,4);if(r>0)return A.reduce(r),ql&&console.log(a+this.stackID(A)+` (via always-reduce ${o.getName(r&65535)})`),!0;if(A.stack.length>=8400)for(;A.stack.length>6e3&&A.forceReduce(););let s=this.tokens.getActions(A);for(let l=0;ln?e.push(E):i.push(E)}return!1}advanceFully(A,e){let i=A.pos;for(;;){if(!this.advanceStack(A,null,null))return!1;if(A.pos>i)return Qee(A,e),!0}}runRecovery(A,e,i){let n=null,o=!1;for(let a=0;a ":"";if(r.deadEnd&&(o||(o=!0,r.restart(),ql&&console.log(c+this.stackID(r)+" (restarted)"),this.advanceFully(r,i))))continue;let C=r.split(),d=c;for(let B=0;B<10&&C.forceReduce()&&(ql&&console.log(d+this.stackID(C)+" (via force-reduce)"),!this.advanceFully(C,i));B++)ql&&(d=this.stackID(C)+" -> ");for(let B of r.recoverByInsert(s))ql&&console.log(c+this.stackID(B)+" (via recover-insert)"),this.advanceFully(B,i);this.stream.end>r.pos?(l==r.pos&&(l++,s=0),r.recoverByDelete(s,l),ql&&console.log(c+this.stackID(r)+` (via recover-delete ${this.parser.getName(s)})`),Qee(r,i)):(!n||n.scoreA.topRules[r][1]),n=[];for(let r=0;r=0)o(c,s,r[l++]);else{let C=r[l+-c];for(let d=-c;d>0;d--)o(r[l++],s,C);l++}}}this.nodeSet=new f4(e.map((r,s)=>ks.define({name:s>=this.minRepeatTerm?void 0:r,id:s,props:n[s],top:i.indexOf(s)>-1,error:s==0,skipped:A.skippedNodes&&A.skippedNodes.indexOf(s)>-1}))),A.propSources&&(this.nodeSet=this.nodeSet.extend(...A.propSources)),this.strict=!1,this.bufferLength=1024;let a=F4(A.tokenData);this.context=A.context,this.specializerSpecs=A.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let r=0;rtypeof r=="number"?new n2(a,r):r),this.topRules=A.topRules,this.dialects=A.dialects||{},this.dynamicPrecedences=A.dynamicPrecedences||null,this.tokenPrecTable=A.tokenPrec,this.termNames=A.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(A,e,i){let n=new DR(this,A,e,i);for(let o of this.wrappers)n=o(n,A,e,i);return n}getGoto(A,e,i=!1){let n=this.goto;if(e>=n[0])return-1;for(let o=n[e+1];;){let a=n[o++],r=a&1,s=n[o++];if(r&&i)return s;for(let l=o+(a>>1);o0}validAction(A,e){return!!this.allActions(A,i=>i==e?!0:null)}allActions(A,e){let i=this.stateSlot(A,4),n=i?e(i):void 0;for(let o=this.stateSlot(A,1);n==null;o+=3){if(this.data[o]==65535)if(this.data[o+1]==1)o=xC(this.data,o+2);else break;n=e(xC(this.data,o+1))}return n}nextStates(A){let e=[];for(let i=this.stateSlot(A,1);;i+=3){if(this.data[i]==65535)if(this.data[i+1]==1)i=xC(this.data,i+2);else break;if((this.data[i+2]&1)==0){let n=this.data[i+1];e.some((o,a)=>a&1&&o==n)||e.push(this.data[i],n)}}return e}configure(A){let e=Object.assign(Object.create(t.prototype),this);if(A.props&&(e.nodeSet=this.nodeSet.extend(...A.props)),A.top){let i=this.topRules[A.top];if(!i)throw new RangeError(`Invalid top rule name ${A.top}`);e.top=i}return A.tokenizers&&(e.tokenizers=this.tokenizers.map(i=>{let n=A.tokenizers.find(o=>o.from==i);return n?n.to:i})),A.specializers&&(e.specializers=this.specializers.slice(),e.specializerSpecs=this.specializerSpecs.map((i,n)=>{let o=A.specializers.find(r=>r.from==i.external);if(!o)return i;let a=Object.assign(Object.assign({},i),{external:o.to});return e.specializers[n]=pee(a),a})),A.contextTracker&&(e.context=A.contextTracker),A.dialect&&(e.dialect=this.parseDialect(A.dialect)),A.strict!=null&&(e.strict=A.strict),A.wrap&&(e.wrappers=e.wrappers.concat(A.wrap)),A.bufferLength!=null&&(e.bufferLength=A.bufferLength),e}hasWrappers(){return this.wrappers.length>0}getName(A){return this.termNames?this.termNames[A]:String(A<=this.maxNode&&this.nodeSet.types[A].name||A)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(A){let e=this.dynamicPrecedences;return e==null?0:e[A]||0}parseDialect(A){let e=Object.keys(this.dialects),i=e.map(()=>!1);if(A)for(let o of A.split(" ")){let a=e.indexOf(o);a>=0&&(i[a]=!0)}let n=null;for(let o=0;oi)&&e.p.parser.stateFlag(e.state,2)&&(!A||A.scoret.external(e,i)<<1|A}return t.get}var Mme=sy({String:PA.string,Number:PA.number,"True False":PA.bool,PropertyName:PA.propertyName,Null:PA.null,", :":PA.separator,"[ ]":PA.squareBracket,"{ }":PA.brace}),fee=vy.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#ClOOQO'#Cr'#CrQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CtOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59W,59WO!iQPO,59WOVQPO,59QOqQPO'#CmO!nQPO,59`OOQO1G.k1G.kOVQPO'#CnO!vQPO,59aOOQO1G.r1G.rOOQO1G.l1G.lOOQO,59X,59XOOQO-E6k-E6kOOQO,59Y,59YOOQO-E6l-E6l",stateData:"#O~OeOS~OQSORSOSSOTSOWQO_ROgPO~OVXOgUO~O^[O~PVO[^O~O]_OVhX~OVaO~O]bO^iX~O^dO~O]_OVha~O]bO^ia~O",goto:"!kjPPPPPPkPPkqwPPPPk{!RPPP!XP!e!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"\u26A0 JsonText True False Null Number String } { Object Property PropertyName : , ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",14,"["],["closedBy",8,"}",15,"]"]],propSources:[Mme],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oe~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Og~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zO]~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yO[~~'OO_~~'TO^~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0});var Sme=ly.define({name:"json",parser:fee.configure({props:[tR.add({Object:iR({except:/^\s*\}/}),Array:iR({except:/^\s*\]/})}),k4.add({"Object Array":i$})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function wee(){return new cy(Sme)}var yee=typeof String.prototype.normalize=="function"?t=>t.normalize("NFKD"):t=>t,a2=class{constructor(A,e,i=0,n=A.length,o,a){this.test=a,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=A.iterRange(i,n),this.bufferStart=i,this.normalize=o?r=>o(yee(r)):yee,this.query=this.normalize(e)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return os(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let A=this.peek();if(A<0)return this.done=!0,this;let e=t4(A),i=this.bufferStart+this.bufferPos;this.bufferPos+=Pl(A);let n=this.normalize(e);if(n.length)for(let o=0,a=i;;o++){let r=n.charCodeAt(o),s=this.match(r,a,this.bufferPos+this.bufferStart);if(o==n.length-1){if(s)return this.value=s,this;break}a==i&&othis.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let A=this.matchPos-this.curLineStart;;){this.re.lastIndex=A;let e=this.matchPos<=this.to&&this.re.exec(this.curLine);if(e){let i=this.curLineStart+e.index,n=i+e[0].length;if(this.matchPos=_y(this.text,n+(i==n?1:0)),i==this.curLineStart+this.curLine.length&&this.nextLine(),(ithis.value.to)&&(!this.test||this.test(i,n,e)))return this.value={from:i,to:n,match:e},this;A=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length=i||n.to<=e){let r=new t(e,A.sliceString(e,i));return MR.set(A,r),r}if(n.from==e&&n.to==i)return n;let{text:o,from:a}=n;return a>e&&(o=A.sliceString(e,a)+o,a=e),n.to=this.to?this.to:this.text.lineAt(A).to}next(){for(;;){let A=this.re.lastIndex=this.matchPos-this.flat.from,e=this.re.exec(this.flat.text);if(e&&!e[0]&&e.index==A&&(this.re.lastIndex=A+1,e=this.re.exec(this.flat.text)),e){let i=this.flat.from+e.index,n=i+e[0].length;if((this.flat.to>=this.to||e.index+e[0].length<=this.flat.text.length-10)&&(!this.test||this.test(i,n,e)))return this.value={from:i,to:n,match:e},this.matchPos=_y(this.text,n+(i==n?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=Sy.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}};typeof Symbol<"u"&&(My.prototype[Symbol.iterator]=ky.prototype[Symbol.iterator]=function(){return this});function kme(t){try{return new RegExp(t,NR),!0}catch(A){return!1}}function _y(t,A){if(A>=t.length)return A;let e=t.lineAt(A),i;for(;A=56320&&i<57344;)A++;return A}var _me=t=>{let{state:A}=t,e=String(A.doc.lineAt(t.state.selection.main.head).number),{close:i,result:n}=_X(t,{label:A.phrase("Go to line"),input:{type:"text",name:"line",value:e},focus:!0,submitLabel:A.phrase("go")});return n.then(o=>{let a=o&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(o.elements.line.value);if(!a){t.dispatch({effects:i});return}let r=A.doc.lineAt(A.selection.main.head),[,s,l,c,C]=a,d=c?+c.slice(1):0,B=l?+l:r.number;if(l&&C){let m=B/100;s&&(m=m*(s=="-"?-1:1)+r.number/A.doc.lines),B=Math.round(A.doc.lines*m)}else l&&s&&(B=B*(s=="-"?-1:1)+r.number);let E=A.doc.line(Math.max(1,Math.min(A.doc.lines,B))),u=uA.cursor(E.from+Math.max(0,Math.min(d,E.length)));t.dispatch({effects:[i,mi.scrollIntoView(u.from,{y:"center"})],selection:u})}),!0},xme={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},Mee=lt.define({combine(t){return Jr(t,xme,{highlightWordAroundCursor:(A,e)=>A||e,minSelectionLength:Math.min,maxMatches:Math.min})}});function See(t){let A=[Gme,Lme];return t&&A.push(Mee.of(t)),A}var Rme=Tt.mark({class:"cm-selectionMatch"}),Nme=Tt.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function vee(t,A,e,i){return(e==0||t(A.sliceDoc(e-1,e))!=Aa.Word)&&(i==A.doc.length||t(A.sliceDoc(i,i+1))!=Aa.Word)}function Fme(t,A,e,i){return t(A.sliceDoc(e,e+1))==Aa.Word&&t(A.sliceDoc(i-1,i))==Aa.Word}var Lme=Vo.fromClass(class{constructor(t){this.decorations=this.getDeco(t)}update(t){(t.selectionSet||t.docChanged||t.viewportChanged)&&(this.decorations=this.getDeco(t.view))}getDeco(t){let A=t.state.facet(Mee),{state:e}=t,i=e.selection;if(i.ranges.length>1)return Tt.none;let n=i.main,o,a=null;if(n.empty){if(!A.highlightWordAroundCursor)return Tt.none;let s=e.wordAt(n.head);if(!s)return Tt.none;a=e.charCategorizer(n.head),o=e.sliceDoc(s.from,s.to)}else{let s=n.to-n.from;if(s200)return Tt.none;if(A.wholeWords){if(o=e.sliceDoc(n.from,n.to),a=e.charCategorizer(n.head),!(vee(a,e,n.from,n.to)&&Fme(a,e,n.from,n.to)))return Tt.none}else if(o=e.sliceDoc(n.from,n.to),!o)return Tt.none}let r=[];for(let s of t.visibleRanges){let l=new a2(e.doc,o,s.from,s.to);for(;!l.next().done;){let{from:c,to:C}=l.value;if((!a||vee(a,e,c,C))&&(n.empty&&c<=n.from&&C>=n.to?r.push(Nme.range(c,C)):(c>=n.to||C<=n.from)&&r.push(Rme.range(c,C)),r.length>A.maxMatches))return Tt.none}}return Tt.set(r)}},{decorations:t=>t.decorations}),Gme=mi.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),Kme=({state:t,dispatch:A})=>{let{selection:e}=t,i=uA.create(e.ranges.map(n=>t.wordAt(n.head)||uA.cursor(n.head)),e.mainIndex);return i.eq(e)?!1:(A(t.update({selection:i})),!0)};function Ume(t,A){let{main:e,ranges:i}=t.selection,n=t.wordAt(e.head),o=n&&n.from==e.from&&n.to==e.to;for(let a=!1,r=new a2(t.doc,A,i[i.length-1].to);;)if(r.next(),r.done){if(a)return null;r=new a2(t.doc,A,0,Math.max(0,i[i.length-1].from-1)),a=!0}else{if(a&&i.some(s=>s.from==r.value.from))continue;if(o){let s=t.wordAt(r.value.from);if(!s||s.from!=r.value.from||s.to!=r.value.to)continue}return r.value}}var Tme=({state:t,dispatch:A})=>{let{ranges:e}=t.selection;if(e.some(o=>o.from===o.to))return Kme({state:t,dispatch:A});let i=t.sliceDoc(e[0].from,e[0].to);if(t.selection.ranges.some(o=>t.sliceDoc(o.from,o.to)!=i))return!1;let n=Ume(t,i);return n?(A(t.update({selection:t.selection.addRange(uA.range(n.from,n.to),!1),effects:mi.scrollIntoView(n.to)})),!0):!1},g1=lt.define({combine(t){return Jr(t,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:A=>new xR(A),scrollToMatch:A=>mi.scrollIntoView(A)})}});function kee(t){return t?[g1.of(t),RR]:RR}var xy=class{constructor(A){this.search=A.search,this.caseSensitive=!!A.caseSensitive,this.literal=!!A.literal,this.regexp=!!A.regexp,this.replace=A.replace||"",this.valid=!!this.search&&(!this.regexp||kme(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!A.wholeWord,this.test=A.test}unquote(A){return this.literal?A:A.replace(/\\([nrt\\])/g,(e,i)=>i=="n"?` +`:i=="r"?"\r":i=="t"?" ":"\\")}eq(A){return this.search==A.search&&this.replace==A.replace&&this.caseSensitive==A.caseSensitive&&this.regexp==A.regexp&&this.wholeWord==A.wholeWord&&this.test==A.test}create(){return this.regexp?new kR(this):new SR(this)}getCursor(A,e=0,i){let n=A.doc?A:lr.create({doc:A});return i==null&&(i=n.doc.length),this.regexp?nu(this,n,e,i):iu(this,n,e,i)}},Ry=class{constructor(A){this.spec=A}};function Ome(t,A,e){return(i,n,o,a)=>{if(e&&!e(i,n,o,a))return!1;let r=i>=a&&n<=a+o.length?o.slice(i-a,n-a):A.doc.sliceString(i,n);return t(r,A,i,n)}}function iu(t,A,e,i){let n;return t.wholeWord&&(n=Jme(A.doc,A.charCategorizer(A.selection.main.head))),t.test&&(n=Ome(t.test,A,n)),new a2(A.doc,t.unquoted,e,i,t.caseSensitive?void 0:o=>o.toLowerCase(),n)}function Jme(t,A){return(e,i,n,o)=>((o>e||o+n.length=e)return null;n.push(i.value)}return n}highlight(A,e,i,n){let o=iu(this.spec,A,Math.max(0,e-this.spec.unquoted.length),Math.min(i+this.spec.unquoted.length,A.doc.length));for(;!o.next().done;)n(o.value.from,o.value.to)}};function zme(t,A,e){return(i,n,o)=>(!e||e(i,n,o))&&t(o[0],A,i,n)}function nu(t,A,e,i){let n;return t.wholeWord&&(n=Yme(A.charCategorizer(A.selection.main.head))),t.test&&(n=zme(t.test,A,n)),new My(A.doc,t.search,{ignoreCase:!t.caseSensitive,test:n},e,i)}function Ny(t,A){return t.slice(sr(t,A,!1),A)}function Fy(t,A){return t.slice(A,sr(t,A))}function Yme(t){return(A,e,i)=>!i[0].length||(t(Ny(i.input,i.index))!=Aa.Word||t(Fy(i.input,i.index))!=Aa.Word)&&(t(Fy(i.input,i.index+i[0].length))!=Aa.Word||t(Ny(i.input,i.index+i[0].length))!=Aa.Word)}var kR=class extends Ry{nextMatch(A,e,i){let n=nu(this.spec,A,i,A.doc.length).next();return n.done&&(n=nu(this.spec,A,0,e).next()),n.done?null:n.value}prevMatchInRange(A,e,i){for(let n=1;;n++){let o=Math.max(e,i-n*1e4),a=nu(this.spec,A,o,i),r=null;for(;!a.next().done;)r=a.value;if(r&&(o==e||r.from>o+10))return r;if(o==e)return null}}prevMatch(A,e,i){return this.prevMatchInRange(A,0,e)||this.prevMatchInRange(A,i,A.doc.length)}getReplacement(A){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(e,i)=>{if(i=="&")return A.match[0];if(i=="$")return"$";for(let n=i.length;n>0;n--){let o=+i.slice(0,n);if(o>0&&o=e)return null;n.push(i.value)}return n}highlight(A,e,i,n){let o=nu(this.spec,A,Math.max(0,e-250),Math.min(i+250,A.doc.length));for(;!o.next().done;)n(o.value.from,o.value.to)}},G4=gn.define(),FR=gn.define(),o2=Oa.define({create(t){return new L4(_R(t).create(),null)},update(t,A){for(let e of A.effects)e.is(G4)?t=new L4(e.value.create(),t.panel):e.is(FR)&&(t=new L4(t.query,e.value?LR:null));return t},provide:t=>t1.from(t,A=>A.panel)});var L4=class{constructor(A,e){this.query=A,this.panel=e}},Hme=Tt.mark({class:"cm-searchMatch"}),Pme=Tt.mark({class:"cm-searchMatch cm-searchMatch-selected"}),jme=Vo.fromClass(class{constructor(t){this.view=t,this.decorations=this.highlight(t.state.field(o2))}update(t){let A=t.state.field(o2);(A!=t.startState.field(o2)||t.docChanged||t.selectionSet||t.viewportChanged)&&(this.decorations=this.highlight(A))}highlight({query:t,panel:A}){if(!A||!t.spec.valid)return Tt.none;let{view:e}=this,i=new ns;for(let n=0,o=e.visibleRanges,a=o.length;no[n+1].from-500;)s=o[++n].to;t.highlight(e.state,r,s,(l,c)=>{let C=e.state.selection.ranges.some(d=>d.from==l&&d.to==c);i.add(l,c,C?Pme:Hme)})}return i.finish()}},{decorations:t=>t.decorations});function K4(t){return A=>{let e=A.state.field(o2,!1);return e&&e.query.spec.valid?t(A,e):Ky(A)}}var Ly=K4((t,{query:A})=>{let{to:e}=t.state.selection.main,i=A.nextMatch(t.state,e,e);if(!i)return!1;let n=uA.single(i.from,i.to),o=t.state.facet(g1);return t.dispatch({selection:n,effects:[GR(t,i),o.scrollToMatch(n.main,t)],userEvent:"select.search"}),xee(t),!0}),Gy=K4((t,{query:A})=>{let{state:e}=t,{from:i}=e.selection.main,n=A.prevMatch(e,i,i);if(!n)return!1;let o=uA.single(n.from,n.to),a=t.state.facet(g1);return t.dispatch({selection:o,effects:[GR(t,n),a.scrollToMatch(o.main,t)],userEvent:"select.search"}),xee(t),!0}),Vme=K4((t,{query:A})=>{let e=A.matchAll(t.state,1e3);return!e||!e.length?!1:(t.dispatch({selection:uA.create(e.map(i=>uA.range(i.from,i.to))),userEvent:"select.search.matches"}),!0)}),qme=({state:t,dispatch:A})=>{let e=t.selection;if(e.ranges.length>1||e.main.empty)return!1;let{from:i,to:n}=e.main,o=[],a=0;for(let r=new a2(t.doc,t.sliceDoc(i,n));!r.next().done;){if(o.length>1e3)return!1;r.value.from==i&&(a=o.length),o.push(uA.range(r.value.from,r.value.to))}return A(t.update({selection:uA.create(o,a),userEvent:"select.search.matches"})),!0},Dee=K4((t,{query:A})=>{let{state:e}=t,{from:i,to:n}=e.selection.main;if(e.readOnly)return!1;let o=A.nextMatch(e,i,i);if(!o)return!1;let a=o,r=[],s,l,c=[];a.from==i&&a.to==n&&(l=e.toText(A.getReplacement(a)),r.push({from:a.from,to:a.to,insert:l}),a=A.nextMatch(e,a.from,a.to),c.push(mi.announce.of(e.phrase("replaced match on line $",e.doc.lineAt(i).number)+".")));let C=t.state.changes(r);return a&&(s=uA.single(a.from,a.to).map(C),c.push(GR(t,a)),c.push(e.facet(g1).scrollToMatch(s.main,t))),t.dispatch({changes:C,selection:s,effects:c,userEvent:"input.replace"}),!0}),Zme=K4((t,{query:A})=>{if(t.state.readOnly)return!1;let e=A.matchAll(t.state,1e9).map(n=>{let{from:o,to:a}=n;return{from:o,to:a,insert:A.getReplacement(n)}});if(!e.length)return!1;let i=t.state.phrase("replaced $ matches",e.length)+".";return t.dispatch({changes:e,effects:mi.announce.of(i),userEvent:"input.replace.all"}),!0});function LR(t){return t.state.facet(g1).createPanel(t)}function _R(t,A){var e,i,n,o,a;let r=t.selection.main,s=r.empty||r.to>r.from+100?"":t.sliceDoc(r.from,r.to);if(A&&!s)return A;let l=t.facet(g1);return new xy({search:((e=A?.literal)!==null&&e!==void 0?e:l.literal)?s:s.replace(/\n/g,"\\n"),caseSensitive:(i=A?.caseSensitive)!==null&&i!==void 0?i:l.caseSensitive,literal:(n=A?.literal)!==null&&n!==void 0?n:l.literal,regexp:(o=A?.regexp)!==null&&o!==void 0?o:l.regexp,wholeWord:(a=A?.wholeWord)!==null&&a!==void 0?a:l.wholeWord})}function _ee(t){let A=p4(t,LR);return A&&A.dom.querySelector("[main-field]")}function xee(t){let A=_ee(t);A&&A==t.root.activeElement&&A.select()}var Ky=t=>{let A=t.state.field(o2,!1);if(A&&A.panel){let e=_ee(t);if(e&&e!=t.root.activeElement){let i=_R(t.state,A.query.spec);i.valid&&t.dispatch({effects:G4.of(i)}),e.focus(),e.select()}}else t.dispatch({effects:[FR.of(!0),A?G4.of(_R(t.state,A.query.spec)):gn.appendConfig.of(RR)]});return!0},Uy=t=>{let A=t.state.field(o2,!1);if(!A||!A.panel)return!1;let e=p4(t,LR);return e&&e.dom.contains(t.root.activeElement)&&t.focus(),t.dispatch({effects:FR.of(!1)}),!0},Ree=[{key:"Mod-f",run:Ky,scope:"editor search-panel"},{key:"F3",run:Ly,shift:Gy,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:Ly,shift:Gy,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:Uy,scope:"editor search-panel"},{key:"Mod-Shift-l",run:qme},{key:"Mod-Alt-g",run:_me},{key:"Mod-d",run:Tme,preventDefault:!0}],xR=class{constructor(A){this.view=A;let e=this.query=A.state.field(o2).query.spec;this.commit=this.commit.bind(this),this.searchField=mo("input",{value:e.search,placeholder:Zl(A,"Find"),"aria-label":Zl(A,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=mo("input",{value:e.replace,placeholder:Zl(A,"Replace"),"aria-label":Zl(A,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=mo("input",{type:"checkbox",name:"case",form:"",checked:e.caseSensitive,onchange:this.commit}),this.reField=mo("input",{type:"checkbox",name:"re",form:"",checked:e.regexp,onchange:this.commit}),this.wordField=mo("input",{type:"checkbox",name:"word",form:"",checked:e.wholeWord,onchange:this.commit});function i(n,o,a){return mo("button",{class:"cm-button",name:n,onclick:o,type:"button"},a)}this.dom=mo("div",{onkeydown:n=>this.keydown(n),class:"cm-search"},[this.searchField,i("next",()=>Ly(A),[Zl(A,"next")]),i("prev",()=>Gy(A),[Zl(A,"previous")]),i("select",()=>Vme(A),[Zl(A,"all")]),mo("label",null,[this.caseField,Zl(A,"match case")]),mo("label",null,[this.reField,Zl(A,"regexp")]),mo("label",null,[this.wordField,Zl(A,"by word")]),...A.state.readOnly?[]:[mo("br"),this.replaceField,i("replace",()=>Dee(A),[Zl(A,"replace")]),i("replaceAll",()=>Zme(A),[Zl(A,"replace all")])],mo("button",{name:"close",onclick:()=>Uy(A),"aria-label":Zl(A,"close"),type:"button"},["\xD7"])])}commit(){let A=new xy({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});A.eq(this.query)||(this.query=A,this.view.dispatch({effects:G4.of(A)}))}keydown(A){uX(this.view,A,"search-panel")?A.preventDefault():A.keyCode==13&&A.target==this.searchField?(A.preventDefault(),(A.shiftKey?Gy:Ly)(this.view)):A.keyCode==13&&A.target==this.replaceField&&(A.preventDefault(),Dee(this.view))}update(A){for(let e of A.transactions)for(let i of e.effects)i.is(G4)&&!i.value.eq(this.query)&&this.setQuery(i.value)}setQuery(A){this.query=A,this.searchField.value=A.search,this.replaceField.value=A.replace,this.caseField.checked=A.caseSensitive,this.reField.checked=A.regexp,this.wordField.checked=A.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(g1).top}};function Zl(t,A){return t.state.phrase(A)}var Dy=30,by=/[\s\.,:;?!]/;function GR(t,{from:A,to:e}){let i=t.state.doc.lineAt(A),n=t.state.doc.lineAt(e).to,o=Math.max(i.from,A-Dy),a=Math.min(n,e+Dy),r=t.state.sliceDoc(o,a);if(o!=i.from){for(let s=0;sr.length-Dy;s--)if(!by.test(r[s-1])&&by.test(r[s])){r=r.slice(0,s);break}}return mi.announce.of(`${t.state.phrase("current match")}. ${r} ${t.state.phrase("on line")} ${i.number}.`)}var Wme=mi.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),RR=[o2,pg.low(jme),Wme];var Oy=class{constructor(A,e,i,n){this.state=A,this.pos=e,this.explicit=i,this.view=n,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(A){let e=Yr(this.state).resolveInner(this.pos,-1);for(;e&&A.indexOf(e.name)<0;)e=e.parent;return e?{from:e.from,to:this.pos,text:this.state.sliceDoc(e.from,this.pos),type:e.type}:null}matchBefore(A){let e=this.state.doc.lineAt(this.pos),i=Math.max(e.from,this.pos-250),n=e.text.slice(i-e.from,this.pos-e.from),o=n.search(Oee(A,!1));return o<0?null:{from:i+o,to:this.pos,text:n.slice(o)}}get aborted(){return this.abortListeners==null}addEventListener(A,e,i){A=="abort"&&this.abortListeners&&(this.abortListeners.push(e),i&&i.onDocChange&&(this.abortOnDocChange=!0))}};function Nee(t){let A=Object.keys(t).join(""),e=/\w/.test(A);return e&&(A=A.replace(/\w/g,"")),`[${e?"\\w":""}${A.replace(/[^\w\s]/g,"\\$&")}]`}function Xme(t){let A=Object.create(null),e=Object.create(null);for(let{label:n}of t){A[n[0]]=!0;for(let o=1;otypeof n=="string"?{label:n}:n),[e,i]=A.every(n=>/^\w+$/.test(n.label))?[/\w*$/,/\w+$/]:Xme(A);return n=>{let o=n.matchBefore(i);return o||n.explicit?{from:o?o.from:n.pos,options:A,validFor:e}:null}}var Jy=class{constructor(A,e,i,n){this.completion=A,this.source=e,this.match=i,this.score=n}};function d1(t){return t.selection.main.from}function Oee(t,A){var e;let{source:i}=t,n=A&&i[0]!="^",o=i[i.length-1]!="$";return!n&&!o?t:new RegExp(`${n?"^":""}(?:${i})${o?"$":""}`,(e=t.flags)!==null&&e!==void 0?e:t.ignoreCase?"i":"")}var Jee=El.define();function efe(t,A,e,i){let{main:n}=t.selection,o=e-n.from,a=i-n.from;return Ye(Y({},t.changeByRange(r=>{if(r!=n&&e!=i&&t.sliceDoc(r.from+o,r.from+a)!=t.sliceDoc(e,i))return{range:r};let s=t.toText(A);return{changes:{from:r.from+o,to:i==n.from?r.to:r.from+a,insert:s},range:uA.cursor(r.from+o+s.length)}})),{scrollIntoView:!0,userEvent:"input.complete"})}var Fee=new WeakMap;function Afe(t){if(!Array.isArray(t))return t;let A=Fee.get(t);return A||Fee.set(t,A=$me(t)),A}var zy=gn.define(),U4=gn.define(),OR=class{constructor(A){this.pattern=A,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let e=0;e=48&&b<=57||b>=97&&b<=122?2:b>=65&&b<=90?1:0:(x=t4(b))!=x.toLowerCase()?1:x!=x.toUpperCase()?2:0;(!D||F==1&&m||k==0&&F!=0)&&(e[C]==b||i[C]==b&&(d=!0)?a[C++]=D:a.length&&(f=!1)),k=F,D+=Pl(b)}return C==s&&a[0]==0&&f?this.result(-100+(d?-200:0),a,A):B==s&&E==0?this.ret(-200-A.length+(u==A.length?0:-100),[0,u]):r>-1?this.ret(-700-A.length,[r,r+this.pattern.length]):B==s?this.ret(-900-A.length,[E,u]):C==s?this.result(-100+(d?-200:0)+-700+(f?0:-1100),a,A):e.length==2?null:this.result((n[0]?-700:0)+-200+-1100,n,A)}result(A,e,i){let n=[],o=0;for(let a of e){let r=a+(this.astral?Pl(os(i,a)):1);o&&n[o-1]==a?n[o-1]=r:(n[o++]=a,n[o++]=r)}return this.ret(A-i.length,n)}},JR=class{constructor(A){this.pattern=A,this.matched=[],this.score=0,this.folded=A.toLowerCase()}match(A){if(A.length!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:tfe,filterStrict:!1,compareCompletions:(A,e)=>(A.sortText||A.label).localeCompare(e.sortText||e.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(A,e)=>A&&e,closeOnBlur:(A,e)=>A&&e,icons:(A,e)=>A&&e,tooltipClass:(A,e)=>i=>Lee(A(i),e(i)),optionClass:(A,e)=>i=>Lee(A(i),e(i)),addToOptions:(A,e)=>A.concat(e),filterStrict:(A,e)=>A||e})}});function Lee(t,A){return t?A?t+" "+A:t:A}function tfe(t,A,e,i,n,o){let a=t.textDirection==Go.RTL,r=a,s=!1,l="top",c,C,d=A.left-n.left,B=n.right-A.right,E=i.right-i.left,u=i.bottom-i.top;if(r&&d=u||D>A.top?c=e.bottom-A.top:(l="bottom",c=A.bottom-e.top)}let m=(A.bottom-A.top)/o.offsetHeight,f=(A.right-A.left)/o.offsetWidth;return{style:`${l}: ${c/m}px; max-width: ${C/f}px`,class:"cm-completionInfo-"+(s?a?"left-narrow":"right-narrow":r?"left":"right")}}var jR=gn.define();function ife(t){let A=t.addToOptions.slice();return t.icons&&A.push({render(e){let i=document.createElement("div");return i.classList.add("cm-completionIcon"),e.type&&i.classList.add(...e.type.split(/\s+/g).map(n=>"cm-completionIcon-"+n)),i.setAttribute("aria-hidden","true"),i},position:20}),A.push({render(e,i,n,o){let a=document.createElement("span");a.className="cm-completionLabel";let r=e.displayLabel||e.label,s=0;for(let l=0;ls&&a.appendChild(document.createTextNode(r.slice(s,c)));let d=a.appendChild(document.createElement("span"));d.appendChild(document.createTextNode(r.slice(c,C))),d.className="cm-completionMatchedText",s=C}return se.position-i.position).map(e=>e.render)}function KR(t,A,e){if(t<=e)return{from:0,to:t};if(A<0&&(A=0),A<=t>>1){let n=Math.floor(A/e);return{from:n*e,to:(n+1)*e}}let i=Math.floor((t-A)/e);return{from:t-(i+1)*e,to:t-i*e}}var zR=class{constructor(A,e,i){this.view=A,this.stateField=e,this.applyCompletion=i,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:s=>this.placeInfo(s),key:this},this.space=null,this.currentClass="";let n=A.state.field(e),{options:o,selected:a}=n.open,r=A.state.facet(Hr);this.optionContent=ife(r),this.optionClass=r.optionClass,this.tooltipClass=r.tooltipClass,this.range=KR(o.length,a,r.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(A.state),this.dom.addEventListener("mousedown",s=>{let{options:l}=A.state.field(e).open;for(let c=s.target,C;c&&c!=this.dom;c=c.parentNode)if(c.nodeName=="LI"&&(C=/-(\d+)$/.exec(c.id))&&+C[1]this.list.lastChild.getBoundingClientRect().bottom?this.range.to:null;c!=null&&(A.dispatch({effects:jR.of(c)}),s.preventDefault())}}),this.dom.addEventListener("focusout",s=>{let l=A.state.field(this.stateField,!1);l&&l.tooltip&&A.state.facet(Hr).closeOnBlur&&s.relatedTarget!=A.contentDOM&&A.dispatch({effects:U4.of(null)})}),this.showOptions(o,n.id)}mount(){this.updateSel()}showOptions(A,e){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(A,e,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(A){var e;let i=A.state.field(this.stateField),n=A.startState.field(this.stateField);if(this.updateTooltipClass(A.state),i!=n){let{options:o,selected:a,disabled:r}=i.open;(!n.open||n.open.options!=o)&&(this.range=KR(o.length,a,A.state.facet(Hr).maxRenderedOptions),this.showOptions(o,i.id)),this.updateSel(),r!=((e=n.open)===null||e===void 0?void 0:e.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!r)}}updateTooltipClass(A){let e=this.tooltipClass(A);if(e!=this.currentClass){for(let i of this.currentClass.split(" "))i&&this.dom.classList.remove(i);for(let i of e.split(" "))i&&this.dom.classList.add(i);this.currentClass=e}}positioned(A){this.space=A,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let A=this.view.state.field(this.stateField),e=A.open;(e.selected>-1&&e.selected=this.range.to)&&(this.range=KR(e.options.length,e.selected,this.view.state.facet(Hr).maxRenderedOptions),this.showOptions(e.options,A.id));let i=this.updateSelectedOption(e.selected);if(i){this.destroyInfo();let{completion:n}=e.options[e.selected],{info:o}=n;if(!o)return;let a=typeof o=="string"?document.createTextNode(o):o(n);if(!a)return;"then"in a?a.then(r=>{r&&this.view.state.field(this.stateField,!1)==A&&this.addInfoPane(r,n)}).catch(r=>zr(this.view.state,r,"completion info")):(this.addInfoPane(a,n),i.setAttribute("aria-describedby",this.info.id))}}addInfoPane(A,e){this.destroyInfo();let i=this.info=document.createElement("div");if(i.className="cm-tooltip cm-completionInfo",i.id="cm-completionInfo-"+Math.floor(Math.random()*65535).toString(16),A.nodeType!=null)i.appendChild(A),this.infoDestroy=null;else{let{dom:n,destroy:o}=A;i.appendChild(n),this.infoDestroy=o||null}this.dom.appendChild(i),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(A){let e=null;for(let i=this.list.firstChild,n=this.range.from;i;i=i.nextSibling,n++)i.nodeName!="LI"||!i.id?n--:n==A?i.hasAttribute("aria-selected")||(i.setAttribute("aria-selected","true"),e=i):i.hasAttribute("aria-selected")&&(i.removeAttribute("aria-selected"),i.removeAttribute("aria-describedby"));return e&&ofe(this.list,e),e}measureInfo(){let A=this.dom.querySelector("[aria-selected]");if(!A||!this.info)return null;let e=this.dom.getBoundingClientRect(),i=this.info.getBoundingClientRect(),n=A.getBoundingClientRect(),o=this.space;if(!o){let a=this.dom.ownerDocument.documentElement;o={left:0,top:0,right:a.clientWidth,bottom:a.clientHeight}}return n.top>Math.min(o.bottom,e.bottom)-10||n.bottom{a.target==n&&a.preventDefault()});let o=null;for(let a=i.from;ai.from||i.from==0))if(o=d,typeof l!="string"&&l.header)n.appendChild(l.header(l));else{let B=n.appendChild(document.createElement("completion-section"));B.textContent=d}}let c=n.appendChild(document.createElement("li"));c.id=e+"-"+a,c.setAttribute("role","option");let C=this.optionClass(r);C&&(c.className=C);for(let d of this.optionContent){let B=d(r,this.view.state,this.view,s);B&&c.appendChild(B)}}return i.from&&n.classList.add("cm-completionListIncompleteTop"),i.tonew zR(e,t,A)}function ofe(t,A){let e=t.getBoundingClientRect(),i=A.getBoundingClientRect(),n=e.height/t.offsetHeight;i.tope.bottom&&(t.scrollTop+=(i.bottom-e.bottom)/n)}function Gee(t){return(t.boost||0)*100+(t.apply?10:0)+(t.info?5:0)+(t.type?1:0)}function afe(t,A){let e=[],i=null,n=null,o=c=>{e.push(c);let{section:C}=c.completion;if(C){i||(i=[]);let d=typeof C=="string"?C:C.name;i.some(B=>B.name==d)||i.push(typeof C=="string"?{name:d}:C)}},a=A.facet(Hr);for(let c of t)if(c.hasResult()){let C=c.result.getMatch;if(c.result.filter===!1)for(let d of c.result.options)o(new Jy(d,c.source,C?C(d):[],1e9-e.length));else{let d=A.sliceDoc(c.from,c.to),B,E=a.filterStrict?new JR(d):new OR(d);for(let u of c.result.options)if(B=E.match(u.label)){let m=u.displayLabel?C?C(u,B.matched):[]:B.matched,f=B.score+(u.boost||0);if(o(new Jy(u,c.source,m,f)),typeof u.section=="object"&&u.section.rank==="dynamic"){let{name:D}=u.section;n||(n=Object.create(null)),n[D]=Math.max(f,n[D]||-1e9)}}}}if(i){let c=Object.create(null),C=0,d=(B,E)=>(B.rank==="dynamic"&&E.rank==="dynamic"?n[E.name]-n[B.name]:0)||(typeof B.rank=="number"?B.rank:1e9)-(typeof E.rank=="number"?E.rank:1e9)||(B.named.score-C.score||l(C.completion,d.completion))){let C=c.completion;!s||s.label!=C.label||s.detail!=C.detail||s.type!=null&&C.type!=null&&s.type!=C.type||s.apply!=C.apply||s.boost!=C.boost?r.push(c):Gee(c.completion)>Gee(s)&&(r[r.length-1]=c),s=c.completion}return r}var YR=class t{constructor(A,e,i,n,o,a){this.options=A,this.attrs=e,this.tooltip=i,this.timestamp=n,this.selected=o,this.disabled=a}setSelected(A,e){return A==this.selected||A>=this.options.length?this:new t(this.options,Kee(e,A),this.tooltip,this.timestamp,A,this.disabled)}static build(A,e,i,n,o,a){if(n&&!a&&A.some(l=>l.isPending))return n.setDisabled();let r=afe(A,e);if(!r.length)return n&&A.some(l=>l.isPending)?n.setDisabled():null;let s=e.facet(Hr).selectOnOpen?0:-1;if(n&&n.selected!=s&&n.selected!=-1){let l=n.options[n.selected].completion;for(let c=0;cc.hasResult()?Math.min(l,c.from):l,1e8),create:Cfe,above:o.aboveCursor},n?n.timestamp:Date.now(),s,!1)}map(A){return new t(this.options,this.attrs,Ye(Y({},this.tooltip),{pos:A.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}setDisabled(){return new t(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}},HR=class t{constructor(A,e,i){this.active=A,this.id=e,this.open=i}static start(){return new t(cfe,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(A){let{state:e}=A,i=e.facet(Hr),o=(i.override||e.languageDataAt("autocomplete",d1(e)).map(Afe)).map(s=>(this.active.find(c=>c.source==s)||new RC(s,this.active.some(c=>c.state!=0)?1:0)).update(A,i));o.length==this.active.length&&o.every((s,l)=>s==this.active[l])&&(o=this.active);let a=this.open,r=A.effects.some(s=>s.is(VR));a&&A.docChanged&&(a=a.map(A.changes)),A.selection||o.some(s=>s.hasResult()&&A.changes.touchesRange(s.from,s.to))||!rfe(o,this.active)||r?a=YR.build(o,e,this.id,a,i,r):a&&a.disabled&&!o.some(s=>s.isPending)&&(a=null),!a&&o.every(s=>!s.isPending)&&o.some(s=>s.hasResult())&&(o=o.map(s=>s.hasResult()?new RC(s.source,0):s));for(let s of A.effects)s.is(jR)&&(a=a&&a.setSelected(s.value,this.id));return o==this.active&&a==this.open?this:new t(o,this.id,a)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?sfe:lfe}};function rfe(t,A){if(t==A)return!0;for(let e=0,i=0;;){for(;e-1&&(e["aria-activedescendant"]=t+"-"+A),e}var cfe=[];function zee(t,A){if(t.isUserEvent("input.complete")){let i=t.annotation(Jee);if(i&&A.activateOnCompletion(i))return 12}let e=t.isUserEvent("input.type");return e&&A.activateOnTyping?5:e?1:t.isUserEvent("delete.backward")?2:t.selection?8:t.docChanged?16:0}var RC=class t{constructor(A,e,i=!1){this.source=A,this.state=e,this.explicit=i}hasResult(){return!1}get isPending(){return this.state==1}update(A,e){let i=zee(A,e),n=this;(i&8||i&16&&this.touches(A))&&(n=new t(n.source,0)),i&4&&n.state==0&&(n=new t(this.source,1)),n=n.updateFor(A,i);for(let o of A.effects)if(o.is(zy))n=new t(n.source,1,o.value);else if(o.is(U4))n=new t(n.source,0);else if(o.is(VR))for(let a of o.value)a.source==n.source&&(n=a);return n}updateFor(A,e){return this.map(A.changes)}map(A){return this}touches(A){return A.changes.touchesRange(d1(A.state))}},Yy=class t extends RC{constructor(A,e,i,n,o,a){super(A,3,e),this.limit=i,this.result=n,this.from=o,this.to=a}hasResult(){return!0}updateFor(A,e){var i;if(!(e&3))return this.map(A.changes);let n=this.result;n.map&&!A.changes.empty&&(n=n.map(n,A.changes));let o=A.changes.mapPos(this.from),a=A.changes.mapPos(this.to,1),r=d1(A.state);if(r>a||!n||e&2&&(d1(A.startState)==this.from||re.map(A))}}),wl=Oa.define({create(){return HR.start()},update(t,A){return t.update(A)},provide:t=>[Vh.from(t,A=>A.tooltip),mi.contentAttributes.from(t,A=>A.attrs)]});function qR(t,A){let e=A.completion.apply||A.completion.label,i=t.state.field(wl).active.find(n=>n.source==A.source);return i instanceof Yy?(typeof e=="string"?t.dispatch(Ye(Y({},efe(t.state,e,i.from,i.to)),{annotations:Jee.of(A.completion)})):e(t,A.completion,i.from,i.to),!0):!1}var Cfe=nfe(wl,qR);function Ty(t,A="option"){return e=>{let i=e.state.field(wl,!1);if(!i||!i.open||i.open.disabled||Date.now()-i.open.timestamp-1?i.open.selected+n*(t?1:-1):t?0:a-1;return r<0?r=A=="page"?0:a-1:r>=a&&(r=A=="page"?a-1:0),e.dispatch({effects:jR.of(r)}),!0}}var dfe=t=>{let A=t.state.field(wl,!1);return t.state.readOnly||!A||!A.open||A.open.selected<0||A.open.disabled||Date.now()-A.open.timestampt.state.field(wl,!1)?(t.dispatch({effects:zy.of(!0)}),!0):!1,Ife=t=>{let A=t.state.field(wl,!1);return!A||!A.active.some(e=>e.state!=0)?!1:(t.dispatch({effects:U4.of(null)}),!0)},PR=class{constructor(A,e){this.active=A,this.context=e,this.time=Date.now(),this.updates=[],this.done=void 0}},Bfe=50,hfe=1e3,ufe=Vo.fromClass(class{constructor(t){this.view=t,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let A of t.state.field(wl).active)A.isPending&&this.startQuery(A)}update(t){let A=t.state.field(wl),e=t.state.facet(Hr);if(!t.selectionSet&&!t.docChanged&&t.startState.field(wl)==A)return;let i=t.transactions.some(o=>{let a=zee(o,e);return a&8||(o.selection||o.docChanged)&&!(a&3)});for(let o=0;oBfe&&Date.now()-a.time>hfe){for(let r of a.context.abortListeners)try{r()}catch(s){zr(this.view.state,s)}a.context.abortListeners=null,this.running.splice(o--,1)}else a.updates.push(...t.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),t.transactions.some(o=>o.effects.some(a=>a.is(zy)))&&(this.pendingStart=!0);let n=this.pendingStart?50:e.activateOnTypingDelay;if(this.debounceUpdate=A.active.some(o=>o.isPending&&!this.running.some(a=>a.active.source==o.source))?setTimeout(()=>this.startUpdate(),n):-1,this.composing!=0)for(let o of t.transactions)o.isUserEvent("input.type")?this.composing=2:this.composing==2&&o.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:t}=this.view,A=t.field(wl);for(let e of A.active)e.isPending&&!this.running.some(i=>i.active.source==e.source)&&this.startQuery(e);this.running.length&&A.open&&A.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Hr).updateSyncTime))}startQuery(t){let{state:A}=this.view,e=d1(A),i=new Oy(A,e,t.explicit,this.view),n=new PR(t,i);this.running.push(n),Promise.resolve(t.source(i)).then(o=>{n.context.aborted||(n.done=o||null,this.scheduleAccept())},o=>{this.view.dispatch({effects:U4.of(null)}),zr(this.view.state,o)})}scheduleAccept(){this.running.every(t=>t.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Hr).updateSyncTime))}accept(){var t;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let A=[],e=this.view.state.facet(Hr),i=this.view.state.field(wl);for(let n=0;nr.source==o.active.source);if(a&&a.isPending)if(o.done==null){let r=new RC(o.active.source,0);for(let s of o.updates)r=r.update(s,e);r.isPending||A.push(r)}else this.startQuery(a)}(A.length||i.open&&i.open.disabled)&&this.view.dispatch({effects:VR.of(A)})}},{eventHandlers:{blur(t){let A=this.view.state.field(wl,!1);if(A&&A.tooltip&&this.view.state.facet(Hr).closeOnBlur){let e=A.open&&_x(this.view,A.open.tooltip);(!e||!e.dom.contains(t.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:U4.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:zy.of(!1)}),20),this.composing=0}}}),Efe=typeof navigator=="object"&&/Win/.test(navigator.platform),Qfe=pg.highest(mi.domEventHandlers({keydown(t,A){let e=A.state.field(wl,!1);if(!e||!e.open||e.open.disabled||e.open.selected<0||t.key.length>1||t.ctrlKey&&!(Efe&&t.altKey)||t.metaKey)return!1;let i=e.open.options[e.open.selected],n=e.active.find(a=>a.source==i.source),o=i.completion.commitCharacters||n.result.commitCharacters;return o&&o.indexOf(t.key)>-1&&qR(A,i),!1}})),pfe=mi.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"\xB7\xB7\xB7"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'\u0192'"}},".cm-completionIcon-class":{"&:after":{content:"'\u25CB'"}},".cm-completionIcon-interface":{"&:after":{content:"'\u25CC'"}},".cm-completionIcon-variable":{"&:after":{content:"'\u{1D465}'"}},".cm-completionIcon-constant":{"&:after":{content:"'\u{1D436}'"}},".cm-completionIcon-type":{"&:after":{content:"'\u{1D461}'"}},".cm-completionIcon-enum":{"&:after":{content:"'\u222A'"}},".cm-completionIcon-property":{"&:after":{content:"'\u25A1'"}},".cm-completionIcon-keyword":{"&:after":{content:"'\u{1F511}\uFE0E'"}},".cm-completionIcon-namespace":{"&:after":{content:"'\u25A2'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});var T4={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},C1=gn.define({map(t,A){let e=A.mapPos(t,-1,ts.TrackAfter);return e??void 0}}),ZR=new class extends Dc{};ZR.startSide=1;ZR.endSide=-1;var Yee=Oa.define({create(){return po.empty},update(t,A){if(t=t.map(A.changes),A.selection){let e=A.state.doc.lineAt(A.selection.main.head);t=t.update({filter:i=>i>=e.from&&i<=e.to})}for(let e of A.effects)e.is(C1)&&(t=t.update({add:[ZR.range(e.value,e.value+1)]}));return t}});function Hee(){return[ffe,Yee]}var TR="()[]{}<>\xAB\xBB\xBB\xAB\uFF3B\uFF3D\uFF5B\uFF5D";function Pee(t){for(let A=0;A{if((mfe?t.composing:t.compositionStarted)||t.state.readOnly)return!1;let n=t.state.selection.main;if(i.length>2||i.length==2&&Pl(os(i,0))==1||A!=n.from||e!=n.to)return!1;let o=yfe(t.state,i);return o?(t.dispatch(o),!0):!1}),wfe=({state:t,dispatch:A})=>{if(t.readOnly)return!1;let i=jee(t,t.selection.main.head).brackets||T4.brackets,n=null,o=t.changeByRange(a=>{if(a.empty){let r=vfe(t.doc,a.head);for(let s of i)if(s==r&&Hy(t.doc,a.head)==Pee(os(s,0)))return{changes:{from:a.head-s.length,to:a.head+s.length},range:uA.cursor(a.head-s.length)}}return{range:n=a}});return n||A(t.update(o,{scrollIntoView:!0,userEvent:"delete.backward"})),!n},Vee=[{key:"Backspace",run:wfe}];function yfe(t,A){let e=jee(t,t.selection.main.head),i=e.brackets||T4.brackets;for(let n of i){let o=Pee(os(n,0));if(A==n)return o==n?Mfe(t,n,i.indexOf(n+n+n)>-1,e):Dfe(t,n,o,e.before||T4.before);if(A==o&&qee(t,t.selection.main.from))return bfe(t,n,o)}return null}function qee(t,A){let e=!1;return t.field(Yee).between(0,t.doc.length,i=>{i==A&&(e=!0)}),e}function Hy(t,A){let e=t.sliceString(A,A+2);return e.slice(0,Pl(os(e,0)))}function vfe(t,A){let e=t.sliceString(A-2,A);return Pl(os(e,0))==e.length?e:e.slice(1)}function Dfe(t,A,e,i){let n=null,o=t.changeByRange(a=>{if(!a.empty)return{changes:[{insert:A,from:a.from},{insert:e,from:a.to}],effects:C1.of(a.to+A.length),range:uA.range(a.anchor+A.length,a.head+A.length)};let r=Hy(t.doc,a.head);return!r||/\s/.test(r)||i.indexOf(r)>-1?{changes:{insert:A+e,from:a.head},effects:C1.of(a.head+A.length),range:uA.cursor(a.head+A.length)}:{range:n=a}});return n?null:t.update(o,{scrollIntoView:!0,userEvent:"input.type"})}function bfe(t,A,e){let i=null,n=t.changeByRange(o=>o.empty&&Hy(t.doc,o.head)==e?{changes:{from:o.head,to:o.head+e.length,insert:e},range:uA.cursor(o.head+e.length)}:i={range:o});return i?null:t.update(n,{scrollIntoView:!0,userEvent:"input.type"})}function Mfe(t,A,e,i){let n=i.stringPrefixes||T4.stringPrefixes,o=null,a=t.changeByRange(r=>{if(!r.empty)return{changes:[{insert:A,from:r.from},{insert:A,from:r.to}],effects:C1.of(r.to+A.length),range:uA.range(r.anchor+A.length,r.head+A.length)};let s=r.head,l=Hy(t.doc,s),c;if(l==A){if(Uee(t,s))return{changes:{insert:A+A,from:s},effects:C1.of(s+A.length),range:uA.cursor(s+A.length)};if(qee(t,s)){let d=e&&t.sliceDoc(s,s+A.length*3)==A+A+A?A+A+A:A;return{changes:{from:s,to:s+d.length,insert:d},range:uA.cursor(s+d.length)}}}else{if(e&&t.sliceDoc(s-2*A.length,s)==A+A&&(c=Tee(t,s-2*A.length,n))>-1&&Uee(t,c))return{changes:{insert:A+A+A+A,from:s},effects:C1.of(s+A.length),range:uA.cursor(s+A.length)};if(t.charCategorizer(s)(l)!=Aa.Word&&Tee(t,s,n)>-1&&!Sfe(t,s,A,n))return{changes:{insert:A+A,from:s},effects:C1.of(s+A.length),range:uA.cursor(s+A.length)}}return{range:o=r}});return o?null:t.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function Uee(t,A){let e=Yr(t).resolveInner(A+1);return e.parent&&e.from==A}function Sfe(t,A,e,i){let n=Yr(t).resolveInner(A,-1),o=i.reduce((a,r)=>Math.max(a,r.length),0);for(let a=0;a<5;a++){let r=t.sliceDoc(n.from,Math.min(n.to,n.from+e.length+o)),s=r.indexOf(e);if(!s||s>-1&&i.indexOf(r.slice(0,s))>-1){let c=n.firstChild;for(;c&&c.from==n.from&&c.to-c.from>e.length+s;){if(t.sliceDoc(c.to-e.length,c.to)==e)return!1;c=c.firstChild}return!0}let l=n.to==A&&n.parent;if(!l)break;n=l}return!1}function Tee(t,A,e){let i=t.charCategorizer(A);if(i(t.sliceDoc(A-1,A))!=Aa.Word)return A;for(let n of e){let o=A-n.length;if(t.sliceDoc(o,A)==n&&i(t.sliceDoc(o-1,o))!=Aa.Word)return o}return-1}function Zee(t={}){return[Qfe,wl,Hr.of(t),ufe,kfe,pfe]}var WR=[{key:"Ctrl-Space",run:UR},{mac:"Alt-`",run:UR},{mac:"Alt-i",run:UR},{key:"Escape",run:Ife},{key:"ArrowDown",run:Ty(!0)},{key:"ArrowUp",run:Ty(!1)},{key:"PageDown",run:Ty(!0,"page")},{key:"PageUp",run:Ty(!1,"page")},{key:"Enter",run:dfe}],kfe=pg.highest(jh.computeN([Hr],t=>t.facet(Hr).defaultKeymap?[WR]:[]));function _fe(t,A=t.state){let e=new Set;for(let{from:i,to:n}of t.visibleRanges){let o=i;for(;o<=n;){let a=A.doc.lineAt(o);e.has(a)||e.add(a),o=a.to+1}}return e}function XR(t){let A=t.selection.main.head;return t.doc.lineAt(A)}function Wee(t,A){let e=0;e:for(let i=0;i=o.level&&this.markerType!=="codeOnly"?this.set(A,0,n.level):n.empty&&n.level===0&&o.level!==0?this.set(A,0,0):o.level>n.level?this.set(A,0,n.level+1):this.set(A,0,o.level)}let e=Wee(A.text,this.state.tabSize),i=Math.floor(e/this.unitWidth);return this.set(A,e,i)}closestNonEmpty(A,e){let i=A.number+e;for(;e===-1?i>=1:i<=this.state.doc.lines;){if(this.has(i)){let a=this.get(i);if(!a.empty)return a}let o=this.state.doc.line(i);if(o.text.trim().length){let a=Wee(o.text,this.state.tabSize),r=Math.floor(a/this.unitWidth);return this.set(o,a,r)}i+=e}let n=this.state.doc.line(e===-1?1:this.state.doc.lines);return this.set(n,0,0)}findAndSetActiveLines(){let A=XR(this.state);if(!this.has(A))return;let e=this.get(A);if(this.has(e.line.number+1)){let o=this.get(e.line.number+1);o.level>e.level&&(e=o)}if(this.has(e.line.number-1)){let o=this.get(e.line.number-1);o.level>e.level&&(e=o)}if(e.level===0)return;e.active=e.level;let i,n;for(i=e.line.number;i>1;i--){if(!this.has(i-1))continue;let o=this.get(i-1);if(o.level0&&s.push(Py("--indent-marker-bg-color",i,A,r,l)),s.push(Py("--indent-marker-active-bg-color",n,A,a-1,1)),a!==o&&s.push(Py("--indent-marker-bg-color",i,A,a,o-a))}else s.push(Py("--indent-marker-bg-color",i,A,r,o-r));return s.join(",")}var eN=class{constructor(A){this.view=A,this.unitWidth=bg(A.state),this.currentLineNumber=XR(A.state).number,this.generate(A.state)}update(A){let e=bg(A.state),i=e!==this.unitWidth;i&&(this.unitWidth=e);let n=XR(A.state).number,o=n!==this.currentLineNumber;this.currentLineNumber=n;let a=A.state.facet(jy).highlightActiveBlock&&o;(A.docChanged||A.viewportChanged||i||a)&&this.generate(A.state)}generate(A){let e=new ns,i=_fe(this.view,A),{hideFirstIndent:n,markerType:o,thickness:a,activeThickness:r}=A.facet(jy),s=new $R(i,A,this.unitWidth,o);for(let l of i){let c=s.get(l.number);if(!c?.level)continue;let C=Rfe(c,this.unitWidth,n,a,r);e.add(l.from,l.from,Tt.line({class:"cm-indent-markers",attributes:{style:`--indent-markers: ${C}`}}))}this.decorations=e.finish()}};function Xee(t={}){return[jy.of(t),xfe(t.colors),Vo.fromClass(eN,{decorations:A=>A.decorations})]}var Nfe=["mainAxis","crossAxis","fallbackPlacements","fallbackStrategy","fallbackAxisSideDirection","flipAlignment"],Ffe=["mainAxis","crossAxis","limiter"];function hte(t,A){if(t==null)return{};var e,i,n=(function(a,r){if(a==null)return{};var s={};for(var l in a)if({}.hasOwnProperty.call(a,l)){if(r.indexOf(l)!==-1)continue;s[l]=a[l]}return s})(t,A);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(i=0;i{};function zfe(t){return t()}function SN(t){for(var A=0;A{t=e,A=i}),resolve:t,reject:A}}var Yfe=1<<24,Ju=16,Jv=32,fte=64,cF=128,Lg=512,ss=1024,Gg=2048,WC=4096,T0=8192,zu=16384,gF=32768,b1=65536,Hfe=1<<17,wte=1<<18,yte=1<<19,LC=1<<25,mv=32768,kN=1<<21,m2=1<<23,O0=Symbol("$state"),vte=Symbol("legacy props"),Pfe=Symbol(""),hu=new class extends Error{constructor(){super(...arguments),L0(this,"name","StaleReactionError"),L0(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};function Bm(t){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function Dte(t){return t===this.v}function bte(t,A){return t!=t?A==A:t!==A||t!==null&&typeof t=="object"||typeof t=="function"}function Mte(t){return!bte(t,this.v)}var So=null;function Su(t){So=t}function k2(t){return Ste().get(t)}function Ht(t){So={p:So,i:!1,c:null,e:null,s:t,x:null,l:Ou&&!(arguments.length>1&&arguments[1]!==void 0&&arguments[1])?{s:null,u:null,$:[]}:null}}function Pt(t){var A=So,e=A.e;if(e!==null)for(var i of(A.e=null,e))Pte(i);return t!==void 0&&(A.x=t),A.i=!0,So=A.p,t??{}}function Yu(){return!Ou||So!==null&&So.l===null}function Ste(t){var A,e;return So===null&&Bm(),(e=(A=So).c)!==null&&e!==void 0?e:A.c=new Map((function(i){for(var n=i.p;n!==null;){var o=n.c;if(o!==null)return o;n=n.p}return null})(So)||void 0)}var m1=[];function kte(){var t=m1;m1=[],SN(t)}function M1(t){if(m1.length===0&&!X4){var A=m1;queueMicrotask(()=>{A===m1&&kte()})}m1.push(t)}function jfe(){for(;m1.length>0;)kte()}function _te(t){var A=Co;if(A===null)return go.f|=m2,t;if((A.f&gF)===0){if((A.f&cF)===0)throw t;A.b.error(t)}else ku(t,A)}function ku(t,A){for(;A!==null;){if((A.f&cF)!==0)try{return void A.b.error(t)}catch(e){t=e}A=A.parent}throw t}var dv=new Set,ia=null,W4=null,Gc=null,Lc=[],zv=null,_N=!1,X4=!1,fv=new WeakMap,Vy=new WeakMap,u1=new WeakMap,E1=new WeakMap,qy=new WeakMap,Iv=new WeakMap,Bv=new WeakMap,Xl=new WeakSet,S1=class t{constructor(){ute(this,Xl),L0(this,"committed",!1),L0(this,"current",new Map),L0(this,"previous",new Map),Ko(this,fv,new Set),Ko(this,Vy,new Set),Ko(this,u1,0),Ko(this,E1,0),Ko(this,qy,null),Ko(this,Iv,[]),Ko(this,Bv,[]),L0(this,"skipped_effects",new Set),L0(this,"is_fork",!1)}is_deferred(){return this.is_fork||FA(E1,this)>0}process(A){Lc=[],W4=null,this.apply();var e,i={parent:null,effect:null,effects:[],render_effects:[],block_effects:[]};for(var n of A)gr(Xl,this,xte).call(this,n,i);this.is_fork||gr(Xl,this,Vfe).call(this),this.is_deferred()?(gr(Xl,this,fu).call(this,i.effects),gr(Xl,this,fu).call(this,i.render_effects),gr(Xl,this,fu).call(this,i.block_effects)):(W4=this,ia=null,nAe(i.render_effects),nAe(i.effects),W4=null,(e=FA(qy,this))===null||e===void 0||e.resolve()),Gc=null}capture(A,e){var i;this.previous.has(A)||this.previous.set(A,e),(A.f&m2)===0&&(this.current.set(A,A.v),(i=Gc)===null||i===void 0||i.set(A,A.v))}activate(){ia=this,this.apply()}deactivate(){ia===this&&(ia=null,Gc=null)}flush(){if(this.activate(),Lc.length>0){if(Nte(),ia!==null&&ia!==this)return}else FA(u1,this)===0&&this.process([]);this.deactivate()}discard(){for(var A of FA(Vy,this))A(this);FA(Vy,this).clear()}increment(A){Mn(u1,this,FA(u1,this)+1),A&&Mn(E1,this,FA(E1,this)+1)}decrement(A){Mn(u1,this,FA(u1,this)-1),A&&Mn(E1,this,FA(E1,this)-1),this.revive()}revive(){for(var A of FA(Iv,this))cs(A,Gg),k1(A);for(var e of FA(Bv,this))cs(e,WC),k1(e);Mn(Iv,this,[]),Mn(Bv,this,[]),this.flush()}oncommit(A){FA(fv,this).add(A)}ondiscard(A){FA(Vy,this).add(A)}settled(){var A;return((A=FA(qy,this))!==null&&A!==void 0?A:Mn(qy,this,mte())).promise}static ensure(){if(ia===null){var A=ia=new t;dv.add(ia),X4||t.enqueue(()=>{ia===A&&A.flush()})}return ia}static enqueue(A){M1(A)}apply(){}};function xte(t,A){t.f^=ss;for(var e=t.first;e!==null;){var i,n=e.f,o=!!(96&n),a=o&&(n&ss)!==0||(n&T0)!==0||this.skipped_effects.has(e);if((e.f&cF)!==0&&(i=e.b)!==null&&i!==void 0&&i.is_pending()&&(A={parent:A,effect:e,effects:[],render_effects:[],block_effects:[]}),!a&&e.fn!==null){o?e.f^=ss:4&n?A.effects.push(e):ju(e)&&((e.f&Ju)!==0&&A.block_effects.push(e),Ru(e));var r=e.first;if(r!==null){e=r;continue}}var s=e.parent;for(e=e.next;e===null&&s!==null;)s===A.effect&&(gr(Xl,this,fu).call(this,A.effects),gr(Xl,this,fu).call(this,A.render_effects),gr(Xl,this,fu).call(this,A.block_effects),A=A.parent),e=s.next,s=s.parent}}function fu(t){for(var A of t)((A.f&Gg)!==0?FA(Iv,this):FA(Bv,this)).push(A),gr(Xl,this,Rte).call(this,A.deps),cs(A,ss)}function Rte(t){if(t!==null)for(var A of t)2&A.f&&(A.f&mv)!==0&&(A.f^=mv,gr(Xl,this,Rte).call(this,A.deps))}function Vfe(){if(FA(E1,this)===0){for(var t of FA(fv,this))t();FA(fv,this).clear()}FA(u1,this)===0&&gr(Xl,this,qfe).call(this)}function qfe(){if(dv.size>1){this.previous.clear();var t=Gc,A=!0,e={parent:null,effect:null,effects:[],render_effects:[],block_effects:[]};for(var i of dv)if(i!==this){var n=[];for(var[o,a]of this.current){if(i.current.has(o)){if(!A||a===i.current.get(o))continue;i.current.set(o,a)}n.push(o)}if(n.length!==0){var r=[...i.current.keys()].filter(B=>!this.current.has(B));if(r.length>0){var s=Lc;Lc=[];var l=new Set,c=new Map;for(var C of n)Fte(C,r,l,c);if(Lc.length>0){for(var d of(ia=i,i.apply(),Lc))gr(Xl,i,xte).call(i,d,e);i.deactivate()}Lc=s}}}else A=!1;ia=null,Gc=t}this.committed=!0,dv.delete(this)}function qo(t){var A=X4;X4=!0;try{for(;;){var e;if(jfe(),Lc.length===0&&((e=ia)===null||e===void 0||e.flush(),Lc.length===0))return void(zv=null);Nte()}}finally{X4=A}}function Nte(){var t=w1;_N=!0;try{var A=0;for(wv(!0);Lc.length>0;){var e=S1.ensure();A++>1e3&&Zfe(),e.process(Lc),f2.clear()}}finally{_N=!1,wv(t),zv=null}}function Zfe(){try{(function(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")})()}catch(t){ku(t,zv)}}var KC=null;function nAe(t){var A=t.length;if(A!==0){for(var e=0;e0)){for(var o of(f2.clear(),KC))if(!(24576&o.f)){for(var a=[o],r=o.parent;r!==null;)KC.has(r)&&(KC.delete(r),a.push(r)),r=r.parent;for(var s=a.length-1;s>=0;s--){var l=a[s];24576&l.f||Ru(l)}}KC.clear()}}KC=null}}function Fte(t,A,e,i){if(!e.has(t)&&(e.add(t),t.reactions!==null))for(var n of t.reactions){var o=n.f;2&o?Fte(n,A,e,i):4194320&o&&(o&Gg)===0&&Lte(n,A,i)&&(cs(n,Gg),k1(n))}}function Lte(t,A,e){var i=e.get(t);if(i!==void 0)return i;if(t.deps!==null)for(var n of t.deps){if(A.includes(n))return!0;if(2&n.f&&Lte(n,A,e))return e.set(n,!0),!0}return e.set(t,!1),!1}function k1(t){for(var A=zv=t;A.parent!==null;){var e=(A=A.parent).f;if(_N&&A===Co&&(e&Ju)!==0&&(e&wte)===0)return;if(96&e){if((e&ss)===0)return;A.f^=ss}}Lc.push(A)}var C2=new WeakMap,u2=new WeakMap,Wfe=new WeakMap,Q1=new WeakMap,iN=new WeakMap,h2=new WeakMap,d2=new WeakMap,OC=new WeakMap,r2=new WeakMap,f1=new WeakMap,wu=new WeakMap,ou=new WeakMap,yu=new WeakMap,J4=new WeakMap,au=new WeakMap,oAe=new WeakMap,l2=new WeakSet,xN=class{constructor(A,e,i){var n,o,a,r;ute(this,l2),L0(this,"parent",void 0),Ko(this,C2,!1),Ko(this,u2,void 0),Ko(this,Wfe,null),Ko(this,Q1,void 0),Ko(this,iN,void 0),Ko(this,h2,void 0),Ko(this,d2,null),Ko(this,OC,null),Ko(this,r2,null),Ko(this,f1,null),Ko(this,wu,null),Ko(this,ou,0),Ko(this,yu,0),Ko(this,J4,!1),Ko(this,au,null),Ko(this,oAe,(n=()=>(Mn(au,this,XC(FA(ou,this))),()=>{Mn(au,this,null)}),a=0,r=XC(0),()=>{em()&&(g(r),Hu(()=>(a===0&&(o=Qe(()=>n(()=>$4(r)))),a+=1,()=>{M1(()=>{var s;(a-=1)==0&&((s=o)===null||s===void 0||s(),o=void 0,$4(r))})})))})),Mn(u2,this,A),Mn(Q1,this,e),Mn(iN,this,i),this.parent=Co.b,Mn(C2,this,!!FA(Q1,this).pending),Mn(h2,this,Pu(()=>{Co.b=this;var s=gr(l2,this,Xfe).call(this);try{Mn(d2,this,J0(()=>i(s)))}catch(l){this.error(l)}return FA(yu,this)>0?gr(l2,this,rAe).call(this):Mn(C2,this,!1),()=>{var l;(l=FA(wu,this))===null||l===void 0||l.remove()}},589952))}is_pending(){return FA(C2,this)||!!this.parent&&this.parent.is_pending()}has_pending_snippet(){return!!FA(Q1,this).pending}update_pending_count(A){gr(l2,this,Gte).call(this,A),Mn(ou,this,FA(ou,this)+A),FA(au,this)&&_u(FA(au,this),FA(ou,this))}get_effect_pending(){return FA(oAe,this).call(this),g(FA(au,this))}error(A){var e=FA(Q1,this).onerror,i=FA(Q1,this).failed;if(FA(J4,this)||!e&&!i)throw A;FA(d2,this)&&(ls(FA(d2,this)),Mn(d2,this,null)),FA(OC,this)&&(ls(FA(OC,this)),Mn(OC,this,null)),FA(r2,this)&&(ls(FA(r2,this)),Mn(r2,this,null));var n=!1,o=!1,a=()=>{n?console.warn("https://svelte.dev/e/svelte_boundary_reset_noop"):(n=!0,o&&(function(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")})(),S1.ensure(),Mn(ou,this,0),FA(r2,this)!==null&&xu(FA(r2,this),()=>{Mn(r2,this,null)}),Mn(C2,this,this.has_pending_snippet()),Mn(d2,this,gr(l2,this,aAe).call(this,()=>(Mn(J4,this,!1),J0(()=>FA(iN,this).call(this,FA(u2,this)))))),FA(yu,this)>0?gr(l2,this,rAe).call(this):Mn(C2,this,!1))},r=go;try{Ml(null),o=!0,e?.(A,a),o=!1}catch(s){ku(s,FA(h2,this)&&FA(h2,this).parent)}finally{Ml(r)}i&&M1(()=>{Mn(r2,this,gr(l2,this,aAe).call(this,()=>{S1.ensure(),Mn(J4,this,!0);try{return J0(()=>{i(FA(u2,this),()=>A,()=>a)})}catch(s){return ku(s,FA(h2,this).parent),null}finally{Mn(J4,this,!1)}}))})}};function Xfe(){var t=FA(u2,this);return FA(C2,this)&&(Mn(wu,this,w2()),FA(u2,this).before(FA(wu,this)),t=FA(wu,this)),t}function aAe(t){var A=Co,e=go,i=So;Uc(FA(h2,this)),Ml(FA(h2,this)),Su(FA(h2,this).ctx);try{return t()}catch(n){return _te(n),null}finally{Uc(A),Ml(e),Su(i)}}function rAe(){var t=FA(Q1,this).pending;FA(d2,this)!==null&&(Mn(f1,this,document.createDocumentFragment()),FA(f1,this).append(FA(wu,this)),eie(FA(d2,this),FA(f1,this))),FA(OC,this)===null&&Mn(OC,this,J0(()=>t(FA(u2,this))))}function Gte(t){var A;this.has_pending_snippet()?(Mn(yu,this,FA(yu,this)+t),FA(yu,this)===0&&(Mn(C2,this,!1),FA(OC,this)&&xu(FA(OC,this),()=>{Mn(OC,this,null)}),FA(f1,this)&&(FA(u2,this).before(FA(f1,this)),Mn(f1,this,null)))):this.parent&&gr(l2,A=this.parent,Gte).call(A,t)}function Kte(t,A,e,i){var n=Yu()?hm:It;if(e.length!==0||t.length!==0){var o=ia,a=Co,r=(function(){var l=Co,c=go,C=So,d=ia;return function(){var B=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];Uc(l),Ml(c),Su(C),B&&d?.activate()}})();t.length>0?Promise.all(t).then(()=>{r();try{return s()}finally{o?.deactivate(),Zy()}}):s()}else i(A.map(n));function s(){Promise.all(e.map(l=>(function(c){var C=Co;C===null&&(function(){throw new Error("https://svelte.dev/e/async_derived_orphan")})();var d=C.b,B=void 0,E=XC(rs),u=!go,m=new Map;return(function(f){Ug(4718592,f,!0)})(()=>{var f=mte();B=f.promise;try{Promise.resolve(c()).then(f.resolve,f.reject).then(()=>{D===ia&&D.committed&&D.deactivate(),Zy()})}catch(x){f.reject(x),Zy()}var D=ia;if(u){var S,k=!d.is_pending();d.update_pending_count(1),D.increment(k),(S=m.get(D))===null||S===void 0||S.reject(hu),m.delete(D),m.set(D,f)}var b=function(x){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0;if(D.activate(),F)F!==hu&&(E.f|=m2,_u(E,F));else for(var[P,j]of((E.f&m2)!==0&&(E.f^=m2),_u(E,x),m)){if(m.delete(P),P===D)break;j.reject(hu)}u&&(d.update_pending_count(-1),D.decrement(k))};f.promise.then(b,x=>b(null,x||"unknown"))}),Hv(()=>{for(var f of m.values())f.reject(hu)}),new Promise(f=>{function D(S){function k(){S===B?f(E):D(B)}S.then(k,k)}D(B)})})(l))).then(l=>{r();try{i([...A.map(n),...l])}catch(c){(a.f&zu)===0&&ku(c,a)}o?.deactivate(),Zy()}).catch(l=>{ku(l,a)})}}function Zy(){Uc(null),Ml(null),Su(null)}function hm(t){var A=go!==null&&2&go.f?go:null;return Co!==null&&(Co.f|=yte),{ctx:So,deps:null,effects:null,equals:Dte,f:2050,fn:t,reactions:null,rv:0,v:rs,wv:0,parent:A??Co,ac:null}}function vl(t){var A=hm(t);return Aie(A),A}function It(t){var A=hm(t);return A.equals=Mte,A}function Ute(t){var A=t.effects;if(A!==null){t.effects=null;for(var e=0;e1&&arguments[1]!==void 0&&arguments[1],n=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],o=XC(t);return i||(o.equals=Mte),Ou&&n&&So!==null&&So.l!==null&&((e=(A=So.l).s)!==null&&e!==void 0?e:A.s=[]).push(o),o}function ec(t,A){return N(t,Qe(()=>g(t))),A}function N(t,A){var e,i=arguments.length>2&&arguments[2]!==void 0&&arguments[2];return go===null||K0&&(go.f&Hfe)===0||!Yu()||!(4325394&go.f)||(e=VC)!==null&&e!==void 0&&e.includes(t)||(function(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")})(),_u(t,i?uu(A):A)}function _u(t,A){if(!t.equals(A)){var e=t.v;G1?f2.set(t,A):f2.set(t,e),t.v=A;var i=S1.ensure();i.capture(t,e),2&t.f&&((t.f&Gg)!==0&&CF(t),cs(t,(t.f&Lg)!==0?ss:WC)),t.wv=iie(),Yte(t,Gg),!Yu()||Co===null||(Co.f&ss)===0||96&Co.f||(xc===null?(function(n){xc=n})([t]):xc.push(t)),!i.is_fork&&nN.size>0&&!sAe&&(function(){sAe=!1;var n=w1;wv(!0);var o=Array.from(nN);try{for(var a of o)(a.f&ss)!==0&&cs(a,WC),ju(a)&&Ru(a)}finally{wv(n)}nN.clear()})()}return A}function lAe(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,e=g(t),i=A===1?e++:e--;return N(t,e),i}function $4(t){N(t,t.v+1)}function Yte(t,A){var e=t.reactions;if(e!==null)for(var i=Yu(),n=e.length,o=0;o{if(y1===o)return r();var s=go,l=y1;Ml(null),dAe(o);var c=r();return Ml(s),dAe(l),c};return i&&e.set("length",GC(t.length)),new Proxy(t,{defineProperty(r,s,l){"value"in l&&l.configurable!==!1&&l.enumerable!==!1&&l.writable!==!1||(function(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")})();var c=e.get(s);return c===void 0?c=a(()=>{var C=GC(l.value);return e.set(s,C),C}):N(c,l.value,!0),!0},deleteProperty(r,s){var l=e.get(s);if(l===void 0){if(s in r){var c=a(()=>GC(rs));e.set(s,c),$4(n)}}else N(l,rs),$4(n);return!0},get(r,s,l){var c;if(s===O0)return t;var C=e.get(s),d=s in r;if(C===void 0&&(!d||(c=PC(r,s))!==null&&c!==void 0&&c.writable)&&(C=a(()=>GC(uu(d?r[s]:rs))),e.set(s,C)),C!==void 0){var B=g(C);return B===rs?void 0:B}return Reflect.get(r,s,l)},getOwnPropertyDescriptor(r,s){var l=Reflect.getOwnPropertyDescriptor(r,s);if(l&&"value"in l){var c=e.get(s);c&&(l.value=g(c))}else if(l===void 0){var C=e.get(s),d=C?.v;if(C!==void 0&&d!==rs)return{enumerable:!0,configurable:!0,value:d,writable:!0}}return l},has(r,s){var l;if(s===O0)return!0;var c=e.get(s),C=c!==void 0&&c.v!==rs||Reflect.has(r,s);return(c!==void 0||Co!==null&&(!C||(l=PC(r,s))!==null&&l!==void 0&&l.writable))&&(c===void 0&&(c=a(()=>GC(C?uu(r[s]):rs)),e.set(s,c)),g(c)===rs)?!1:C},set(r,s,l,c){var C,d=e.get(s),B=s in r;if(i&&s==="length")for(var E=l;EGC(rs)),e.set(E+"",u))}d===void 0?(!B||(C=PC(r,s))!==null&&C!==void 0&&C.writable)&&(N(d=a(()=>GC(void 0)),uu(l)),e.set(s,d)):(B=d.v!==rs,N(d,a(()=>uu(l))));var m=Reflect.getOwnPropertyDescriptor(r,s);if(m!=null&&m.set&&m.set.call(c,l),!B){if(i&&typeof s=="string"){var f=e.get("length"),D=Number(s);Number.isInteger(D)&&D>=f.v&&N(f,D+1)}$4(n)}return!0},ownKeys(r){g(n);var s=Reflect.ownKeys(r).filter(C=>{var d=e.get(C);return d===void 0||d.v!==rs});for(var[l,c]of e)c.v===rs||l in r||s.push(l);return s},setPrototypeOf(){(function(){throw new Error("https://svelte.dev/e/state_prototype_fixed")})()}})}function cAe(t){try{if(t!==null&&typeof t=="object"&&O0 in t)return t[O0]}catch(A){}return t}function $fe(t,A){return Object.is(cAe(t),cAe(A))}function w2(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return document.createTextNode(t)}function Ac(t){return Jte.call(t)}function um(t){return zte.call(t)}function ce(t,A){return Ac(t)}function ct(t){var A=Ac(t);return A instanceof Comment&&A.data===""?um(A):A}function ke(t){for(var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,e=t;A--;)e=um(e);return e}var gAe=!1;function Yv(t){var A=go,e=Co;Ml(null),Uc(null);try{return t()}finally{Ml(A),Uc(e)}}function e3e(t,A,e){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:e;t.addEventListener(A,()=>Yv(e));var n=t.__on_r;t.__on_r=n?()=>{n(),i(!0)}:()=>i(!0),gAe||(gAe=!0,document.addEventListener("reset",o=>{Promise.resolve().then(()=>{if(!o.defaultPrevented)for(var a of o.target.elements){var r;(r=a.__on_r)===null||r===void 0||r.call(a)}})},{capture:!0}))}function Hte(t){Co===null&&(go===null&&(function(){throw new Error("https://svelte.dev/e/effect_orphan")})(),(function(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")})()),G1&&(function(){throw new Error("https://svelte.dev/e/effect_in_teardown")})()}function Ug(t,A,e){var i=Co;i!==null&&(i.f&T0)!==0&&(t|=T0);var n={ctx:So,deps:null,nodes:null,f:t|Gg|Lg,first:null,fn:A,last:null,next:null,parent:i,b:i&&i.b,prev:null,teardown:null,wv:0,ac:null};if(e)try{Ru(n),n.f|=gF}catch(s){throw ls(n),s}else A!==null&&k1(n);var o=n;if(e&&o.deps===null&&o.teardown===null&&o.nodes===null&&o.first===o.last&&(o.f&yte)===0&&(o=o.first,(t&Ju)!==0&&(t&b1)!==0&&o!==null&&(o.f|=b1)),o!==null&&(o.parent=i,i!==null&&(function(s,l){var c=l.last;c===null?l.last=l.first=s:(c.next=s,s.prev=c,l.last=s)})(o,i),go!==null&&2&go.f&&(t&fte)===0)){var a,r=go;((a=r.effects)!==null&&a!==void 0?a:r.effects=[]).push(o)}return n}function em(){return go!==null&&!K0}function Hv(t){var A=Ug(8,null,!1);return cs(A,ss),A.teardown=t,A}function RN(t){Hte();var A=Co.f;if(!(!go&&(A&Jv)!==0&&(A&gF)===0))return Pte(t);var e,i=So;((e=i.e)!==null&&e!==void 0?e:i.e=[]).push(t)}function Pte(t){return Ug(1048580,t,!1)}function Pr(t){return Ug(4,t,!1)}function Ue(t,A){var e={effect:null,ran:!1,deps:t};So.l.$.push(e),e.effect=Hu(()=>{t(),e.ran||(e.ran=!0,Qe(A))})}function qn(){var t=So;Hu(()=>{for(var A of t.l.$){A.deps();var e=A.effect;(e.f&ss)!==0&&cs(e,WC),ju(e)&&Ru(e),A.ran=!1}})}function Hu(t){return Ug(8|(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0),t,!0)}function TA(t){Kte(arguments.length>3&&arguments[3]!==void 0?arguments[3]:[],arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],A=>{Ug(8,()=>t(...A.map(g)),!0)})}function Pu(t){return Ug(Ju|(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0),t,!0)}function jte(t){return Ug(Yfe|(arguments.length>1&&arguments[1]!==void 0?arguments[1]:0),t,!0)}function J0(t){return Ug(524320,t,!0)}function Vte(t){var A=t.teardown;if(A!==null){var e=G1,i=go;CAe(!0),Ml(null);try{A.call(null)}finally{CAe(e),Ml(i)}}}function qte(t){var A=arguments.length>1&&arguments[1]!==void 0&&arguments[1],e=t.first;t.first=t.last=null;for(var i,n=function(){var o=e.ac;o!==null&&Yv(()=>{o.abort(hu)}),i=e.next,(e.f&fte)!==0?e.parent=null:ls(e,A),e=i};e!==null;)n()}function ls(t){var A=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],e=!1;!A&&(t.f&wte)===0||t.nodes===null||t.nodes.end===null||(Zte(t.nodes.start,t.nodes.end),e=!0),qte(t,A&&!e),yv(t,0),cs(t,zu);var i=t.nodes&&t.nodes.t;if(i!==null)for(var n of i)n.stop();Vte(t);var o=t.parent;o!==null&&o.first!==null&&Wte(t),t.next=t.prev=t.teardown=t.ctx=t.deps=t.fn=t.nodes=t.ac=null}function Zte(t,A){for(;t!==null;){var e=t===A?null:um(t);t.remove(),t=e}}function Wte(t){var A=t.parent,e=t.prev,i=t.next;e!==null&&(e.next=i),i!==null&&(i.prev=e),A!==null&&(A.first===t&&(A.first=i),A.last===t&&(A.last=e))}function xu(t,A){var e=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],i=[];Xte(t,i,!0);var n=()=>{e&&ls(t),A&&A()},o=i.length;if(o>0){var a=()=>--o||n();for(var r of i)r.out(a)}else n()}function Xte(t,A,e){if((t.f&T0)===0){t.f^=T0;var i=t.nodes&&t.nodes.t;if(i!==null)for(var n of i)(n.is_global||e)&&A.push(n);for(var o=t.first;o!==null;){var a=o.next;Xte(o,A,((o.f&b1)!==0||(o.f&Jv)!==0&&(t.f&Ju)!==0)&&e),o=a}}}function NN(t){$te(t,!0)}function $te(t,A){if((t.f&T0)!==0){t.f^=T0,(t.f&ss)===0&&(cs(t,Gg),k1(t));for(var e=t.first;e!==null;){var i=e.next;$te(e,((e.f&b1)!==0||(e.f&Jv)!==0)&&A),e=i}var n=t.nodes&&t.nodes.t;if(n!==null)for(var o of n)(o.is_global||A)&&o.in()}}function eie(t,A){if(t.nodes)for(var e=t.nodes.start,i=t.nodes.end;e!==null;){var n=e===i?null:um(e);A.append(e),e=n}}var A3e=null;var w1=!1;function wv(t){w1=t}var G1=!1;function CAe(t){G1=t}var go=null,K0=!1;function Ml(t){go=t}var Co=null;function Uc(t){Co=t}var VC=null;function Aie(t){go!==null&&(VC===null?VC=[t]:VC.push(t))}var Ps=null,Wl=0,xc=null,tie=1,Am=0,y1=Am;function dAe(t){y1=t}function iie(){return++tie}function ju(t){var A=t.f;if((A&Gg)!==0)return!0;if(2&A&&(t.f&=-32769),(A&WC)!==0){var e=t.deps;if(e!==null)for(var i=e.length,n=0;nt.wv)return!0}(A&Lg)!==0&&Gc===null&&cs(t,ss)}return!1}function nie(t,A){var e,i=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],n=t.reactions;if(n!==null&&((e=VC)===null||e===void 0||!e.includes(t)))for(var o=0;o{t.ac.abort(hu)}),t.ac=null);try{t.f|=kN;var c=(0,t.fn)(),C=t.deps;if(Ps!==null){var d;if(yv(t,Wl),C!==null&&Wl>0)for(C.length=Wl+Ps.length,d=0;d1&&arguments[1]!==void 0?arguments[1]:new Set;if(!(typeof t!="object"||t===null||t instanceof EventTarget||A.has(t))){for(var e in A.add(t),t instanceof Date&&t.getTime(),t)try{FN(t[e],A)}catch(r){}var i=lF(t);if(i!==Object.prototype&&i!==Array.prototype&&i!==Map.prototype&&i!==Set.prototype&&i!==Date.prototype){var n=pte(i);for(var o in n){var a=n[o].get;if(a)try{a.call(t)}catch(r){}}}}}var cie=new Set,LN=new Set;function gie(t,A,e){var i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};function n(o){if(i.capture||j4.call(A,o),!o.cancelBubble)return Yv(()=>e?.call(this,o))}return t.startsWith("pointer")||t.startsWith("touch")||t==="wheel"?M1(()=>{A.addEventListener(t,n,i)}):A.addEventListener(t,n,i),n}function bA(t,A,e,i,n){var o={capture:i,passive:n},a=gie(t,A,e,o);(A===document.body||A===window||A===document||A instanceof HTMLMediaElement)&&Hv(()=>{A.removeEventListener(t,a,o)})}function Em(t){for(var A=0;Aa||i});var C=go,d=Co;Ml(null),Uc(null);try{for(var B,E=[];a!==null;){var u=a.assignedSlot||a.parentNode||a.host||null;try{var m=a["__"+n];m==null||a.disabled&&t.target!==a||m.call(a,t)}catch(S){B?E.push(S):B=S}if(t.cancelBubble||u===e||u===null)break;a=u}if(B){var f=function(S){queueMicrotask(()=>{throw S})};for(var D of E)f(D);throw B}}finally{t.__root=e,delete t.currentTarget,Ml(C),Uc(d)}}}function dF(t){var A=document.createElement("template");return A.innerHTML=t.replaceAll("",""),A.content}function _1(t,A){var e=Co;e.nodes===null&&(e.nodes={start:t,end:A,a:null,t:null})}function Oe(t,A){var e,i=!!(1&A),n=!!(2&A),o=!t.startsWith("");return()=>{e===void 0&&(e=dF(o?t:""+t),i||(e=Ac(e)));var a=n||Ote?document.importNode(e,!0):e.cloneNode(!0);return i?_1(Ac(a),a.lastChild):_1(a,a),a}}function _2(t,A){return(function(e,i){var n,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"svg",a=!e.startsWith(""),r=!!(1&i),s="<".concat(o,">").concat(a?e:""+e,"");return()=>{if(!n){var l=Ac(dF(s));if(r)for(n=document.createDocumentFragment();Ac(l);)n.appendChild(Ac(l));else n=Ac(l)}var c=n.cloneNode(!0);return r?_1(Ac(c),c.lastChild):_1(c,c),c}})(t,A,"svg")}function Mr(){var t=w2((arguments.length>0&&arguments[0]!==void 0?arguments[0]:"")+"");return _1(t,t),t}function ji(){var t=document.createDocumentFragment(),A=document.createComment(""),e=w2();return t.append(A,e),_1(A,e),t}function se(t,A){t!==null&&t.before(A)}var n3e=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"],o3e={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"},a3e=["touchstart","touchmove"];function r3e(t){return a3e.includes(t)}function jt(t,A){var e,i=A==null?"":typeof A=="object"?A+"":A;i!==((e=t.__t)!==null&&e!==void 0?e:t.__t=t.nodeValue)&&(t.__t=i,t.nodeValue=i+"")}function s3e(t,A){return(function(e,i){var{target:n,anchor:o,props:a={},events:r,context:s,intro:l=!0}=i;(function(){if(jC===void 0){jC=window,Ote=/Firefox/.test(navigator.userAgent);var E=Element.prototype,u=Node.prototype,m=Text.prototype;Jte=PC(u,"firstChild").get,zte=PC(u,"nextSibling").get,iAe(E)&&(E.__click=void 0,E.__className=void 0,E.__attributes=null,E.__style=void 0,E.__e=void 0),iAe(m)&&(m.__t=void 0)}})();var c=new Set,C=E=>{for(var u=0;u0&&arguments[0]!==void 0?arguments[0]:{};return new Promise(f=>{m.outro?xu(u,()=>{ls(u),f(void 0)}):(ls(u),f(void 0))})}})(()=>{var E=o??n.appendChild(w2());return(function(u,m,f){new xN(u,m,f)})(E,{pending:()=>{}},u=>{s&&(Ht({}),So.c=s),r&&(a.$$events=r),d=e(u,a)||{},s&&Pt()}),()=>{for(var u of c){n.removeEventListener(u,j4);var m=ru.get(u);--m===0?(document.removeEventListener(u,j4),ru.delete(u)):ru.set(u,m)}var f;LN.delete(C),E!==o&&((f=E.parentNode)===null||f===void 0||f.removeChild(E))}});return GN.set(d,B),d})(t,A)}var ru=new Map,GN=new WeakMap,su,NC=new WeakMap,I1=new WeakMap,FC=new WeakMap,z4=new WeakMap,oN=new WeakMap,IAe=new WeakMap,l3e=new WeakMap,Nu=class{constructor(A){var e=this,i=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];L0(this,"anchor",void 0),Ko(this,NC,new Map),Ko(this,I1,new Map),Ko(this,FC,new Map),Ko(this,z4,new Set),Ko(this,oN,!0),Ko(this,IAe,()=>{var n=ia;if(FA(NC,this).has(n)){var o=FA(NC,this).get(n),a=FA(I1,this).get(o);if(a)NN(a),FA(z4,this).delete(o);else{var r=FA(FC,this).get(o);r&&(FA(I1,this).set(o,r.effect),FA(FC,this).delete(o),r.fragment.lastChild.remove(),this.anchor.before(r.fragment),a=r.effect)}for(var[s,l]of FA(NC,this)){if(FA(NC,this).delete(s),s===n)break;var c=FA(FC,this).get(l);c&&(ls(c.effect),FA(FC,this).delete(l))}var C=function(E,u){if(E===o||FA(z4,e).has(E))return 1;var m=()=>{if(Array.from(FA(NC,e).values()).includes(E)){var f=document.createDocumentFragment();eie(u,f),f.append(w2()),FA(FC,e).set(E,{effect:u,fragment:f})}else ls(u);FA(z4,e).delete(E),FA(I1,e).delete(E)};FA(oN,e)||!a?(FA(z4,e).add(E),xu(u,m,!1)):m()};for(var[d,B]of FA(I1,this))C(d,B)}}),Ko(this,l3e,n=>{FA(NC,this).delete(n);var o=Array.from(FA(NC,this).values());for(var[a,r]of FA(FC,this))o.includes(a)||(ls(r.effect),FA(FC,this).delete(a))}),this.anchor=A,Mn(oN,this,i)}ensure(A,e){var i=ia;!e||FA(I1,this).has(A)||FA(FC,this).has(A)||FA(I1,this).set(A,J0(()=>e(this.anchor))),FA(NC,this).set(i,A),FA(IAe,this).call(this)}};function gs(t){So===null&&Bm(),Ou&&So.l!==null?Cie(So).m.push(t):RN(()=>{var A=Qe(t);if(typeof A=="function")return A})}function Tc(t){So===null&&Bm(),gs(()=>()=>Qe(t))}function c3e(){var t=So;return t===null&&Bm(),(A,e,i)=>{var n,o=(n=t.s.$$events)===null||n===void 0?void 0:n[A];if(o){var a=Im(o)?o.slice():[o],r=(function(l,c){var{bubbles:C=!1,cancelable:d=!1}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return new CustomEvent(l,{detail:c,bubbles:C,cancelable:d})})(A,e,i);for(var s of a)s.call(t.x,r);return!r.defaultPrevented}return!0}}function g3e(t){So===null&&Bm(),So.l===null&&(function(){throw new Error("https://svelte.dev/e/lifecycle_legacy_only")})(),Cie(So).b.push(t)}function Cie(t){var A,e=t.l;return(A=e.u)!==null&&A!==void 0?A:e.u={a:[],b:[],m:[]}}function je(t,A){var e=arguments.length>2&&arguments[2]!==void 0&&arguments[2],i=new Nu(t);function n(o,a){i.ensure(o,a)}Pu(()=>{var o=!1;A(function(a){o=!0,n(!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],a)}),o||n(!1,null)},e?b1:0)}function die(t,A,e){var i=new Nu(t),n=!Yu();Pu(()=>{var o=A();n&&o!==null&&typeof o=="object"&&(o={}),i.ensure(o,e)})}function za(t,A){return A}function aN(t){for(var A=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],e=0;e5&&arguments[5]!==void 0?arguments[5]:null,a=t,r=new Map;!(4&A)||(a=t.appendChild(w2()));var s,l=null,c=It(()=>{var u=e();return Im(u)?u:u==null?[]:Cv(u)}),C=!0;function d(){E.fallback=l,(function(u,m,f,D,S){var k,b,x,F,P,j=!!(8&D),X=m.length,Ae=u.items,W=u.effect.first,Ce=null,we=[],Be=[];if(j)for(P=0;P0){var He=4&D&&X===0?f:null;if(j){for(P=0;P{if(OA){if(OA.pending.delete(kt),OA.done.add(kt),OA.pending.size===0){var JA=pe.outrogroups;aN(Cv(OA.done)),JA.delete(OA),JA.size===0&&(pe.outrogroups=null)}}else ye-=1},!1)},St=0;St{if(b!==void 0)for(F of b){var pe;(pe=F.nodes)===null||pe===void 0||(pe=pe.a)===null||pe===void 0||pe.apply()}})})(E,s,a,A,i),l!==null&&(s.length===0?(l.f&LC)===0?NN(l):(l.f^=LC,Y4(l,null,a)):xu(l,()=>{l=null}))}var B=Pu(()=>{for(var u=(s=g(c)).length,m=new Set,f=0;fo(a)):(l=J0(()=>o(su??(su=w2())))).f|=LC),C||d(),g(c)}),E={effect:B,items:r,outrogroups:null,fallback:l};C=!1}function C3e(t,A,e,i,n,o,a,r){var s=1&a?16&a?XC(e):ge(e,!1,!1):null,l=2&a?XC(n):null;return{v:s,i:l,e:J0(()=>(o(A,s??e,l??n,r),()=>{t.delete(i)}))}}function Y4(t,A,e){if(t.nodes)for(var i=t.nodes.start,n=t.nodes.end,o=A&&(A.f&LC)===0?A.nodes.start:e;i!==null;){var a=um(i);if(o.before(i),i===n)return;i=a}}function s2(t,A,e){A===null?t.effect.first=e:A.next=e,e===null?t.effect.last=A:e.prev=A}function Iie(t,A){var e=arguments.length>2&&arguments[2]!==void 0&&arguments[2],i=arguments.length>3&&arguments[3]!==void 0&&arguments[3],n=t,o="";TA(()=>{var a,r=Co;if(o!==(o=(a=A())!==null&&a!==void 0?a:"")&&(r.nodes!==null&&(Zte(r.nodes.start,r.nodes.end),r.nodes=null),o!=="")){var s=o+"";e?s="".concat(s,""):i&&(s="".concat(s,""));var l=dF(s);if((e||i)&&(l=Ac(l)),_1(Ac(l),l.lastChild),e||i)for(;Ac(l);)n.before(Ac(l));else n.before(l)}})}function Sa(t,A,e,i,n){var o,a=(o=A.$$slots)===null||o===void 0?void 0:o[e],r=!1;a===!0&&(a=A[e==="default"?"children":e],r=!0),a===void 0?n!==null&&n(t):a(t,r?()=>i:i)}function Bie(t,A,e){var i=new Nu(t);Pu(()=>{var n,o=(n=A())!==null&&n!==void 0?n:null;i.ensure(o,o&&(a=>e(a,o)))},b1)}function Ns(t,A,e){Pr(()=>{var i=Qe(()=>A(t,e?.())||{});if(e&&i!=null&&i.update){var n=!1,o={};Hu(()=>{var a=e();z(a),n&&bte(o,a)&&(o=a,i.update(a))}),n=!0}if(i!=null&&i.destroy)return()=>i.destroy()})}function d3e(t,A){var e,i=void 0;jte(()=>{i!==(i=A())&&(e&&(ls(e),e=null),i&&(e=J0(()=>{Pr(()=>i(t))})))})}function hie(t){var A,e,i="";if(typeof t=="string"||typeof t=="number")i+=t;else if(typeof t=="object")if(Array.isArray(t)){var n=t.length;for(A=0;A1&&arguments[1]!==void 0&&arguments[1]?" !important;":";",e="";for(var i in t){var n=t[i];n!=null&&n!==""&&(e+=" "+i+": "+n+A)}return e}function rN(t){return t[0]!=="-"||t[1]!=="-"?t.toLowerCase():t}function Bi(t,A,e,i,n,o){var a=t.__className;if(a!==e||a===void 0){var r=(function(c,C,d){var B=c==null?"":""+c;if(C&&(B=B?B+" "+C:C),d){for(var E in d)if(d[E])B=B?B+" "+E:E;else if(B.length)for(var u=E.length,m=0;(m=B.indexOf(E,m))>=0;){var f=m+u;m!==0&&!BAe.includes(B[m-1])||f!==B.length&&!BAe.includes(B[f])?m=f:B=(m===0?"":B.substring(0,m))+B.substring(f+1)}}return B===""?null:B})(e,i,o);r==null?t.removeAttribute("class"):A?t.className=r:t.setAttribute("class",r),t.__className=e}else if(o&&n!==o)for(var s in o){var l=!!o[s];n!=null&&l===!!n[s]||t.classList.toggle(s,l)}return o}function sN(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},e=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0;for(var n in e){var o=e[n];A[n]!==o&&(e[n]==null?t.style.removeProperty(n):t.style.setProperty(n,o,i))}}function Kc(t,A,e,i){if(t.__style!==A){var n=(function(o,a){if(a){var r,s,l="";if(Array.isArray(a)?(r=a[0],s=a[1]):r=a,o){o=String(o).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var c=!1,C=0,d=!1,B=[];r&&B.push(...Object.keys(r).map(rN)),s&&B.push(...Object.keys(s).map(rN));for(var E=0,u=-1,m=o.length,f=0;f2&&arguments[2]!==void 0&&arguments[2];if(t.multiple){if(A==null)return;if(!Im(A))return void console.warn("https://svelte.dev/e/select_multiple_invalid_value");for(var i of t.options)i.selected=A.includes(uAe(i))}else{for(i of t.options)if($fe(uAe(i),A))return void(i.selected=!0);e&&A===void 0||(t.selectedIndex=-1)}}function I3e(t){var A=new MutationObserver(()=>{KN(t,t.__value)});A.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),Hv(()=>{A.disconnect()})}function uAe(t){return"__value"in t?t.__value:t.value}var Iu=Symbol("class"),H4=Symbol("style"),uie=Symbol("is custom element"),Eie=Symbol("is html");function x1(t,A){var e=IF(t);e.value!==(e.value=A??void 0)&&(t.value!==A||A===0&&t.nodeName==="PROGRESS")&&(t.value=A??"")}function Vn(t,A,e,i){var n=IF(t);n[A]!==(n[A]=e)&&(A==="loading"&&(t[Pfe]=e),e==null?t.removeAttribute(A):typeof e!="string"&&Qie(t).includes(A)?t[A]=e:t.setAttribute(A,e))}function B3e(t,A,e,i){var n,o=IF(t),a=o[uie],r=!o[Eie],s=A||{},l=t.tagName==="OPTION";for(var c in A)c in e||(e[c]=null);e.class?e.class=b2(e.class):(i||e[Iu])&&(e.class=null),e[H4]&&((n=e.style)!==null&&n!==void 0||(e.style=null));var C,d,B,E,u,m,f=Qie(t),D=function(k){var b=e[k];if(l&&k==="value"&&b==null)return t.value=t.__value="",s[k]=b,0;if(k==="class")return C=t.namespaceURI==="http://www.w3.org/1999/xhtml",Bi(t,C,b,i,A?.[Iu],e[Iu]),s[k]=b,s[Iu]=e[Iu],0;if(k==="style")return Kc(t,b,A?.[H4],e[H4]),s[k]=b,s[H4]=e[H4],0;if(b===(d=s[k])&&(b!==void 0||!t.hasAttribute(k))||(s[k]=b,(B=k[0]+k[1])==="$$"))return 0;if(B==="on"){var x={},F="$$"+k,P=k.slice(2);if(E=(function(we){return n3e.includes(we)})(P),(function(we){return we.endsWith("capture")&&we!=="gotpointercapture"&&we!=="lostpointercapture"})(P)&&(P=P.slice(0,-7),x.capture=!0),!E&&d){if(b!=null)return 0;t.removeEventListener(P,s[F],x),s[F]=null}if(b!=null)if(E)t["__".concat(P)]=b,Em([P]);else{let we=function(Be){s[k].call(this,Be)};var Ce=we;s[F]=gie(P,t,we,x)}else E&&(t["__".concat(P)]=void 0)}else if(k==="style")Vn(t,k,b);else if(k==="autofocus")(function(we,Be){if(Be){var Ee=document.body;we.autofocus=!0,M1(()=>{document.activeElement===Ee&&we.focus()})}})(t,!!b);else if(a||k!=="__value"&&(k!=="value"||b==null))if(k==="selected"&&l)(function(we,Be){Be?we.hasAttribute("selected")||we.setAttribute("selected",""):we.removeAttribute("selected")})(t,b);else if(u=k,r||(u=(function(we){var Be;return we=we.toLowerCase(),(Be=o3e[we])!==null&&Be!==void 0?Be:we})(u)),m=u==="defaultValue"||u==="defaultChecked",b!=null||a||m)m||f.includes(u)&&(a||typeof b!="string")?(t[u]=b,u in o&&(o[u]=rs)):typeof b!="function"&&Vn(t,u,b);else if(o[k]=null,u==="value"||u==="checked"){var j=t,X=A===void 0;if(u==="value"){var Ae=j.defaultValue;j.removeAttribute(u),j.defaultValue=Ae,j.value=j.__value=X?Ae:null}else{var W=j.defaultChecked;j.removeAttribute(u),j.defaultChecked=W,j.checked=!!X&&W}}else t.removeAttribute(k);else t.value=t.__value=b};for(var S in e)D(S);return s}function hv(t,A){var e=arguments.length>5?arguments[5]:void 0,i=arguments.length>6&&arguments[6]!==void 0&&arguments[6],n=arguments.length>7&&arguments[7]!==void 0&&arguments[7];Kte(arguments.length>4&&arguments[4]!==void 0?arguments[4]:[],arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],arguments.length>3&&arguments[3]!==void 0?arguments[3]:[],o=>{var a=void 0,r={},s=t.nodeName==="SELECT",l=!1;if(jte(()=>{var C=A(...o.map(g)),d=B3e(t,a,C,e,i,n);for(var B of(l&&s&&"value"in C&&KN(t,C.value),Object.getOwnPropertySymbols(r)))C[B]||ls(r[B]);for(var E of Object.getOwnPropertySymbols(C)){var u=C[E];E.description!=="@attach"||a&&u===a[E]||(r[E]&&ls(r[E]),r[E]=J0(()=>d3e(t,()=>u))),d[E]=u}a=d}),s){var c=t;Pr(()=>{KN(c,a.value,!0),I3e(c)})}l=!0})}function IF(t){var A;return(A=t.__attributes)!==null&&A!==void 0?A:t.__attributes={[uie]:t.nodeName.includes("-"),[Eie]:t.namespaceURI==="http://www.w3.org/1999/xhtml"}}var EAe=new Map;function Qie(t){var A,e=t.getAttribute("is")||t.nodeName,i=EAe.get(e);if(i)return i;EAe.set(e,i=[]);for(var n=t,o=Element.prototype;o!==n;){for(var a in A=pte(n))A[a].set&&i.push(a);n=lF(n)}return i}function vv(t,A){var e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:A,i=new WeakSet;e3e(t,"input",(function(){var n=Ai(function*(o){var a=o?t.defaultValue:t.value;if(a=lN(t)?cN(a):a,e(a),ia!==null&&i.add(ia),yield aie(),a!==(a=A())){var r=t.selectionStart,s=t.selectionEnd,l=t.value.length;if(t.value=a??"",s!==null){var c=t.value.length;r===s&&s===l&&c>l?(t.selectionStart=c,t.selectionEnd=c):(t.selectionStart=r,t.selectionEnd=Math.min(s,c))}}});return function(o){return n.apply(this,arguments)}})()),Qe(A)==null&&t.value&&(e(lN(t)?cN(t.value):t.value),ia!==null&&i.add(ia)),Hu(()=>{var n=A();if(t===document.activeElement){var o=W4??ia;if(i.has(o))return}lN(t)&&n===cN(t.value)||(t.type!=="date"||n||t.value)&&n!==t.value&&(t.value=n??"")})}function lN(t){var A=t.type;return A==="number"||A==="range"}function cN(t){return t===""?null:+t}function ii(t,A,e){var i=PC(t,A);i&&i.set&&(t[A]=e,Hv(()=>{t[A]=null}))}function QAe(t,A){return t===A||t?.[O0]===A}function na(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},A=arguments.length>1?arguments[1]:void 0,e=arguments.length>2?arguments[2]:void 0;return Pr(()=>{var i,n;return Hu(()=>{i=n,n=[],Qe(()=>{t!==e(...n)&&(A(t,...n),i&&QAe(e(...i),t)&&A(null,...i))})}),()=>{M1(()=>{n&&QAe(e(...n),t)&&A(null,...n)})}}),t}function UC(t){return function(){for(var A=arguments.length,e=new Array(A),i=0;i0&&arguments[0]!==void 0&&arguments[0],A=So,e=A.l.u;if(e){var i,n=()=>z(A.s);if(t){var o=0,a={},r=hm(()=>{var s=!1,l=A.s;for(var c in l)l[c]!==a[c]&&(a[c]=l[c],s=!0);return s&&o++,o});n=()=>g(r)}e.b.length&&(i=()=>{pAe(A,n),SN(e.b)},Hte(),Ug(1048584,i,!0)),RN(()=>{var s=Qe(()=>e.m.map(zfe));return()=>{for(var l of s)typeof l=="function"&&l()}}),e.a.length&&RN(()=>{pAe(A,n),SN(e.a)})}}function pAe(t,A){if(t.l.s)for(var e of t.l.s)g(e);A()}function Pv(t){var A=XC(0);return function(){return arguments.length===1?(N(A,g(A)+1),arguments[0]):(g(A),t())}}function V4(t,A){var e,i=(e=t.$$events)===null||e===void 0?void 0:e[A.type],n=Im(i)?i.slice():i==null?[]:[i];for(var o of n)o.call(this,A)}var Wy=!1,h3e={get(t,A){if(!t.exclude.includes(A))return g(t.version),A in t.special?t.special[A]():t.props[A]},set(t,A,e){if(!(A in t.special)){var i=Co;try{Uc(t.parent_effect),t.special[A]=K({get[A](){return t.props[A]}},A,4)}finally{Uc(i)}}return t.special[A](e),lAe(t.version),!0},getOwnPropertyDescriptor(t,A){if(!t.exclude.includes(A))return A in t.props?{enumerable:!0,configurable:!0,value:t.props[A]}:void 0},deleteProperty:(t,A)=>(t.exclude.includes(A)||(t.exclude.push(A),lAe(t.version)),!0),has:(t,A)=>!t.exclude.includes(A)&&A in t.props,ownKeys:t=>Reflect.ownKeys(t.props).filter(A=>!t.exclude.includes(A))};function Xy(t,A){return new Proxy({props:t,exclude:A,special:{},version:XC(0),parent_effect:Co},h3e)}var u3e={get(t,A){for(var e=t.props.length;e--;){var i=t.props[e];if(O4(i)&&(i=i()),typeof i=="object"&&i!==null&&A in i)return i[A]}},set(t,A,e){for(var i=t.props.length;i--;){var n=t.props[i];O4(n)&&(n=n());var o=PC(n,A);if(o&&o.set)return o.set(e),!0}return!1},getOwnPropertyDescriptor(t,A){for(var e=t.props.length;e--;){var i=t.props[e];if(O4(i)&&(i=i()),typeof i=="object"&&i!==null&&A in i){var n=PC(i,A);return n&&!n.configurable&&(n.configurable=!0),n}}},has(t,A){if(A===O0||A===vte)return!1;for(var e of t.props)if(O4(e)&&(e=e()),e!=null&&A in e)return!0;return!1},ownKeys(t){var A=[];for(var e of t.props)if(O4(e)&&(e=e()),e){for(var i in e)A.includes(i)||A.push(i);for(var n of Object.getOwnPropertySymbols(e))A.includes(n)||A.push(n)}return A}};function y2(){for(var t=arguments.length,A=new Array(t),e=0;e(c&&(c=!1,l=s?Qe(i):i),l);if(r){var d,B,E=O0 in t||vte in t;n=(d=(B=PC(t,A))===null||B===void 0?void 0:B.set)!==null&&d!==void 0?d:E&&A in t?b=>t[A]=b:void 0}var u,m=!1;if(r?[o,m]=(function(b){var x=Wy;try{return Wy=!1,[b(),Wy]}finally{Wy=x}})(()=>t[A]):o=t[A],o===void 0&&i!==void 0&&(o=C(),n&&(a&&(function(){throw new Error("https://svelte.dev/e/props_invalid_value")})(),n(o))),u=a?()=>{var b=t[A];return b===void 0?C():(c=!0,b)}:()=>{var b=t[A];return b!==void 0&&(l=void 0),b===void 0?l:b},a&&!(4&e))return u;if(n){var f=t.$$legacy;return function(b,x){return arguments.length>0?(a&&x&&!f&&!m||n(x?u():b),b):u()}}var D=!1,S=(1&e?hm:It)(()=>(D=!1,u()));r&&g(S);var k=Co;return function(b,x){if(arguments.length>0){var F=x?g(S):a&&r?uu(b):b;return N(S,F),D=!0,l!==void 0&&(l=F),b}return G1&&D||(k.f&zu)!==0?S.v:g(S)}}function Qr(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:(function(i){var n=(function(o){try{if(typeof window<"u"&&window.localStorage!==void 0)return window.localStorage[o]}catch(a){}})("debug");return n!=null&&n.endsWith("*")?i.startsWith(n.slice(0,-1)):i===n})(t);if(!A)return E3e;var e=(function(i){for(var n=0,o=0;o9466848e5&&isFinite(t)&&Math.floor(t)===t&&!isNaN(new Date(t).valueOf());if(typeof t=="bigint")return UN(Number(t));try{var A=t&&t.valueOf();if(A!==t)return UN(A)}catch(e){return!1}return!1}function pie(t){($y=$y||window.document.createElement("div")).style.color="",$y.style.color=t;var A=$y.style.color;return A!==""?A.replace(/\s+/g,"").toLowerCase():void 0}var $y=void 0;function f3e(t){return typeof t=="string"&&t.length<99&&!!pie(t)}function hF(t,A){if(typeof t=="number"||typeof t=="string"||typeof t=="boolean"||t===void 0)return typeof t;if(typeof t=="bigint")return"number";if(t===null)return"null";if(Array.isArray(t))return"array";if(zn(t))return"object";var e=A.stringify(t);return e&&BF(e)?"number":e==="true"||e==="false"?"boolean":e==="null"?"null":"unknown"}var w3e=/^https?:\/\/\S+$/;function jv(t){return typeof t=="string"&&w3e.test(t)}function Vu(t,A){if(t==="")return"";var e=t.trim();return e==="null"?null:e==="true"||e!=="false"&&(BF(e)?A.parse(e):t)}var y3e=[];function fAe(t,A){if(t.length!==A.length)return!1;for(var e=0;e1&&arguments[1]!==void 0&&arguments[1],e={};if(!Array.isArray(t))throw new TypeError("Array expected");function i(a,r){(!Array.isArray(a)&&!zn(a)||A&&r.length>0)&&(e[Lt(r)]=!0),zn(a)&&Object.keys(a).forEach(s=>{i(a[s],r.concat(s))})}for(var n=Math.min(t.length,1e4),o=0;oA?t.slice(0,A):t}function wAe(t){return UA({},t)}function yAe(t){return Object.values(t)}function vAe(t,A,e,i){var n=t.slice(0),o=n.splice(A,e);return n.splice.apply(n,[A+i,0,...o]),n}function v3e(t,A,e){return t.slice(0,A).concat(e).concat(t.slice(A))}function Qm(t,A){try{return A.parse(t)}catch(e){return A.parse(vc(t))}}function fie(t,A){try{return Qm(t,A)}catch(e){return}}function pm(t,A){t=t.replace(yie,"");try{return A(t)}catch(e){}try{return A("{"+t+"}")}catch(e){}try{return A("["+t+"]")}catch(e){}throw new Error("Failed to parse partial JSON")}function wie(t){t=t.replace(yie,"");try{return vc(t)}catch(i){}try{var A=vc("["+t+"]");return A.substring(1,A.length-1)}catch(i){}try{var e=vc("{"+t+"}");return e.substring(1,e.length-1)}catch(i){}throw new Error("Failed to repair partial JSON")}var yie=/,\s*$/;function Fu(t,A){var e=bAe.exec(A);if(e){var i=jr(e[2]),n=(function(B,E){for(var u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,m=arguments.length>3&&arguments[3]!==void 0?arguments[3]:B.length,f=0,D=u;D"line ".concat(n+1," column ").concat(o+1))}}var a=S3e.exec(A),r=a?jr(a[1]):void 0,s=r!==void 0?r-1:void 0,l=k3e.exec(A),c=l?jr(l[1]):void 0,C=c!==void 0?c-1:void 0,d=s!==void 0&&C!==void 0?(function(B,E,u){for(var m=B.indexOf(` +`),f=1;f1&&arguments[1]!==void 0?arguments[1]:void 0,e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:JSON;return tm(t)?t:{text:e.stringify(t.json,null,A)}}function DAe(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:JSON;return im(t)?t:{json:A.parse(t.text)}}function ON(t,A,e){return D3e(t,A,e).text}function b3e(t,A){return M3e(t,A)>A}function M3e(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1/0;if(tm(t))return t.text.length;var e=t.json,i=0;return(function n(o){if(Array.isArray(o)){if((i+=o.length-1+2)>A)return;for(var a=0;aA)return}else if(zn(o)){var r=Object.keys(o);i+=2+r.length+(r.length-1);for(var s=0;sDie(Sie(String(t))),unescapeValue:t=>kie(bie(t))},R3e={escapeValue:t=>Sie(String(t)),unescapeValue:t=>kie(t)},N3e={escapeValue:t=>Die(String(t)),unescapeValue:t=>bie(t)},F3e={escapeValue:t=>String(t),unescapeValue:t=>t};function Die(t){return t.replace(/[^\x20-\x7F]/g,A=>{var e;return A==="\b"||A==="\f"||A===` +`||A==="\r"||A===" "?A:"\\u"+("000"+((e=A.codePointAt(0))===null||e===void 0?void 0:e.toString(16))).slice(-4)})}function bie(t){return t.replace(/\\u[a-fA-F0-9]{4}/g,A=>{try{var e=JSON.parse('"'+A+'"');return Mie[e]||e}catch(i){return A}})}var Mie={'"':'\\"',"\\":"\\\\","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r"," ":"\\t"},L3e={'\\"':'"',"\\\\":"\\","\\/":"/","\\b":"\b","\\f":"\f","\\n":` +`,"\\r":"\r","\\t":" "};function Sie(t){return t.replace(/["\b\f\n\r\t\\]/g,A=>Mie[A]||A)}function kie(t){return t.replace(/\\["bfnrt\\]/g,A=>L3e[A]||A)}function Lu(t){return typeof t!="string"?String(t):t.endsWith(` +`)?t+` +`:t}function _ie(t,A){return qu(t,e=>e.nodeName.toUpperCase()===A.toUpperCase())}function E2(t,A,e){return qu(t,i=>(function(n,o,a){return typeof n.getAttribute=="function"&&n.getAttribute(o)===a})(i,A,e))}function qu(t,A){return!!EF(t,A)}function EF(t,A){for(var e=t;e&&!A(e);)e=e.parentNode;return e}function mm(t){var A,e;return(A=t==null||(e=t.ownerDocument)===null||e===void 0?void 0:e.defaultView)!==null&&A!==void 0?A:void 0}function QF(t){var A=mm(t),e=A?.document.activeElement;return!!e&&qu(e,i=>i===t)}function xie(t,A){return EF(t,e=>e.nodeName===A)}function dN(t){return E2(t,"data-type","selectable-key")?fo.key:E2(t,"data-type","selectable-value")?fo.value:E2(t,"data-type","insert-selection-area-inside")?fo.inside:E2(t,"data-type","insert-selection-area-after")?fo.after:fo.multi}function uv(t){return encodeURIComponent(Lt(t))}function Rie(t){var A,e=EF(t,n=>!(n==null||!n.hasAttribute)&&n.hasAttribute("data-path")),i=(A=e?.getAttribute("data-path"))!==null&&A!==void 0?A:void 0;return i?Ms(decodeURIComponent(i)):void 0}function G3e(t){var{allElements:A,currentElement:e,direction:i,hasPrio:n=()=>!0,margin:o=10}=t,a=WJ(A.filter(function(f){var D=f.getBoundingClientRect();return D.width>0&&D.height>0}),s),r=s(e);function s(f){var D=f.getBoundingClientRect();return{x:D.left+D.width/2,y:D.top+D.height/2,rect:D,element:f}}function l(f,D){var S=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,k=f.x-D.x,b=(f.y-D.y)*S;return Math.sqrt(k*k+b*b)}var c=f=>l(f,r);if(i==="Left"||i==="Right"){var C=i==="Left"?a.filter(f=>{return D=r,f.rect.left+o{return D=r,f.rect.right>D.rect.right+o;var D}),d=C.filter(f=>{return D=f,S=r,Math.abs(D.y-S.y)l(f,r,10));return B?.element}if(i==="Up"||i==="Down"){var E=i==="Up"?a.filter(f=>{return D=r,f.y+o{return D=r,f.y>D.y+o;var D}),u=E.filter(f=>n(f.element)),m=aQ(u,c)||aQ(E,c);return m?.element}}function pF(){var t,A,e,i;return typeof navigator<"u"&&(t=(A=(e=navigator)===null||e===void 0||(e=e.platform)===null||e===void 0?void 0:e.toUpperCase().includes("MAC"))!==null&&A!==void 0?A:(i=navigator)===null||i===void 0||(i=i.userAgentData)===null||i===void 0||(i=i.platform)===null||i===void 0?void 0:i.toUpperCase().includes("MAC"))!==null&&t!==void 0&&t}function $C(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"+",e=[];mF(t,arguments.length>2&&arguments[2]!==void 0?arguments[2]:pF)&&e.push("Ctrl"),t.altKey&&e.push("Alt"),t.shiftKey&&e.push("Shift");var i=t.key.length===1?t.key.toUpperCase():t.key;return i in K3e||e.push(i),e.join(A)}function mF(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:pF;return t.ctrlKey||t.metaKey&&A()}var K3e={Ctrl:!0,Command:!0,Control:!0,Alt:!0,Option:!0,Shift:!0};function si(t,A){A===void 0&&(A={});var e=A.insertAt;if(t&&typeof document<"u"){var i=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",e==="top"&&i.firstChild?i.insertBefore(n,i.firstChild):i.appendChild(n),n.styleSheet?n.styleSheet.cssText=t:n.appendChild(document.createTextNode(t))}}si(`.jse-absolute-popup.svelte-enkkpn { + position: relative; + left: 0; + top: 0; + width: 0; + height: 0; + z-index: 1001; +} +.jse-absolute-popup.svelte-enkkpn .jse-hidden-input:where(.svelte-enkkpn) { + position: fixed; + left: 0; + top: 0; + width: 0; + height: 0; + padding: 0; + margin: 0; + border: none; + outline: none; + overflow: hidden; +} +.jse-absolute-popup.svelte-enkkpn .jse-absolute-popup-content:where(.svelte-enkkpn) { + position: absolute; +}`);var U3e=Oe('
      '),T3e=Oe('
      ');function O3e(t,A){Ht(A,!1);var e=K(A,"popup",8),i=K(A,"closeAbsolutePopup",8),n=ge(),o=ge();function a(C){e().options&&e().options.closeOnOuterClick&&!qu(C.target,d=>d===g(n))&&i()(e().id)}function r(C){$C(C)==="Escape"&&(C.preventDefault(),C.stopPropagation(),i()(e().id))}gs(function(){g(o)&&g(o).focus()}),hi();var s=T3e();bA("mousedown",jC,function(C){a(C)},!0),bA("keydown",jC,r,!0),bA("wheel",jC,function(C){a(C)},!0);var l=ce(s),c=C=>{var d=U3e(),B=ce(d);na(B,E=>N(o,E),()=>g(o)),Bie(ke(B,2),()=>e().component,(E,u)=>{u(E,y2(()=>e().props))}),TA(E=>Kc(d,E),[()=>(g(n),z(e()),Qe(()=>(function(E,u){var m=E.getBoundingClientRect(),{left:f,top:D,positionAbove:S,positionLeft:k}=(function(){if(u.anchor){var{anchor:b,width:x=0,height:F=0,offsetTop:P=0,offsetLeft:j=0,position:X}=u,{left:Ae,top:W,bottom:Ce,right:we}=b.getBoundingClientRect(),Be=X==="top"||W+F>window.innerHeight&&W>F,Ee=X==="left"||Ae+x>window.innerWidth&&Ae>x;return{left:Ee?we-j:Ae+j,top:Be?W-P:Ce+P,positionAbove:Be,positionLeft:Ee}}if(typeof u.left=="number"&&typeof u.top=="number"){var{left:Ne,top:de,width:Ie=0,height:xe=0}=u;return{left:Ne,top:de,positionAbove:de+xe>window.innerHeight&&de>xe,positionLeft:Ne+Ie>window.innerWidth&&Ne>Ie}}throw new Error('Invalid config: pass either "left" and "top", or pass "anchor"')})();return(S?"bottom: ".concat(m.top-D,"px;"):"top: ".concat(D-m.top,"px;"))+(k?"right: ".concat(m.left-f,"px;"):"left: ".concat(f-m.left,"px;"))})(g(n),e().options)))]),se(C,d)};je(l,C=>{g(n)&&C(c)}),na(s,C=>N(n,C),()=>g(n)),bA("mousedown",s,function(C){C.stopPropagation()}),bA("keydown",s,r),se(t,s),Pt()}var J3e=Oe(" ",1);function JN(t,A){Ht(A,!1);var e=Qr("jsoneditor:AbsolutePopup"),i=ge([],!0);function n(r){var s=g(i).findIndex(c=>c.id===r);if(s!==-1){var l=g(i)[s];l.options.onClose&&l.options.onClose(),N(i,g(i).filter(c=>c.id!==r))}}(function(r,s){Ste().set(r,s)})("absolute-popup",{openAbsolutePopup:function(r,s,l){e("open...",s,l);var c={id:Eu(),component:r,props:s||{},options:l||{}};return N(i,[...g(i),c]),c.id},closeAbsolutePopup:n}),Ue(()=>g(i),()=>{e("popups",g(i))}),qn(),hi(!0);var o=J3e(),a=ct(o);ka(a,1,()=>g(i),za,(r,s)=>{O3e(r,{get popup(){return g(s)},closeAbsolutePopup:n})}),Sa(ke(a,2),A,"default",{},null),se(t,o),Pt()}function fm(t,A){for(var e=new Set(A),i=t.replace(/ \(copy( \d+)?\)$/,""),n=t,o=1;e.has(n);){var a="copy"+(o>1?" "+o:"");n="".concat(i," (").concat(a,")"),o++}return n}function JC(t,A){var e=A-3;return t.length>A?t.substring(0,e)+"...":t}function z3e(t){if(t==="")return"";var A=t.toLowerCase();if(A==="null")return null;if(A==="true")return!0;if(A==="false")return!1;if(A!=="undefined"){var e=Number(t),i=parseFloat(t);return isNaN(e)||isNaN(i)?t:e}}var Y3e={id:"jsonquery",name:"JSONQuery",description:` +

      + Enter a JSON Query function to filter, sort, or transform the data. + You can use functions like get, filter, + sort, pick, groupBy, uniq, etcetera. + Example query: filter(.age >= 18) +

      +`,createQuery:function(t,A){var{filter:e,sort:i,projection:n}=A,o=[];e&&e.path&&e.relation&&e.value&&o.push(["filter",[(a=e.relation,xk("1 ".concat(a," 1"))[0]),ev(e.path),z3e(e.value)]]);var a;return i&&i.path&&i.direction&&o.push(["sort",ev(i.path),i.direction==="desc"?"desc":"asc"]),n&&n.paths&&(n.paths.length>1?o.push(["pick",...n.paths.map(ev)]):o.push(["map",ev(n.paths[0])])),Oq(["pipe",...o])},executeQuery:function(t,A,e){var i=vie(e,JSON)?t:(function(n){var o=e.stringify(n);return o!==void 0?JSON.parse(o):void 0})(t);return A.trim()!==""?Jq(i,A):i}};function ev(t){return["get",...t]}var H3e=_2("");function P3e(t,A){Ht(A,!1);var e=870711,i=ge(""),n=K(A,"data",8);function o(r){if(!r||!r.raw)return"";var s=r.raw,l={};return s=s.replace(/\s(?:xml:)?id=["']?([^"')\s]+)/g,(c,C)=>{var d="fa-".concat((e+=1).toString(16));return l[C]=d,' id="'.concat(d,'"')}),s=s.replace(/#(?:([^'")\s]+)|xpointer\(id\((['"]?)([^')]+)\2\)\))/g,(c,C,d,B)=>{var E=C||B;return E&&l[E]?"#".concat(l[E]):c}),s}Ue(()=>z(n()),()=>{N(i,o(n()))}),qn();var a=H3e();Iie(ce(a),()=>g(i),!0),se(t,a),Pt()}si(` + .fa-icon.svelte-v67cny { + display: inline-block; + fill: currentColor; + } + .fa-flip-horizontal.svelte-v67cny { + transform: scale(-1, 1); + } + .fa-flip-vertical.svelte-v67cny { + transform: scale(1, -1); + } + .fa-spin.svelte-v67cny { + animation: svelte-v67cny-fa-spin 1s 0s infinite linear; + } + .fa-inverse.svelte-v67cny { + color: #fff; + } + .fa-pulse.svelte-v67cny { + animation: svelte-v67cny-fa-spin 1s infinite steps(8); + } + @keyframes svelte-v67cny-fa-spin { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } + } +`);var j3e=_2(""),V3e=_2(""),q3e=_2(""),Z3e=_2("",1);function un(t,A){var e=Xy(A,["children","$$slots","$$events","$$legacy"]),i=Xy(e,["class","data","scale","spin","inverse","pulse","flip","label","style"]);Ht(A,!1);var n=K(A,"class",8,""),o=K(A,"data",8),a=ge(),r=K(A,"scale",8,1),s=K(A,"spin",8,!1),l=K(A,"inverse",8,!1),c=K(A,"pulse",8,!1),C=K(A,"flip",8,void 0),d=K(A,"label",8,""),B=K(A,"style",8,""),E=ge(10),u=ge(10),m=ge(),f=ge();function D(){var k=1;return r()!==void 0&&(k=Number(r())),isNaN(k)||k<=0?(console.warn('Invalid prop: prop "scale" should be a number over 0.'),1):1*k}function S(){return g(a)?Math.max(g(a).width,g(a).height)/16:1}Ue(()=>(z(o()),z(B()),z(r())),()=>{N(a,(function(k){var b;if(k){if(!("definition"in k)){if("iconName"in k&&"icon"in k){k.iconName;var[x,F,,,P]=k.icon;b={width:x,height:F,paths:(Array.isArray(P)?P:[P]).map(j=>({d:j}))}}else b=k[Object.keys(k)[0]];return b}console.error("`import faIconName from '@fortawesome/package-name/faIconName` not supported - Please use `import { faIconName } from '@fortawesome/package-name/faIconName'` instead")}})(o())),B(),r(),N(E,g(a)?g(a).width/S()*D():0),N(u,g(a)?g(a).height/S()*D():0),N(m,(function(){var k="";B()!==null&&(k+=B());var b=D();return b===1?k.length===0?"":k:(k===""||k.endsWith(";")||(k+="; "),"".concat(k,"font-size: ").concat(b,"em"))})()),N(f,g(a)?"0 0 ".concat(g(a).width," ").concat(g(a).height):"0 0 ".concat(g(E)," ").concat(g(u)))}),qn(),hi(),(function(k,b){var x=Xy(b,["children","$$slots","$$events","$$legacy"]),F=Xy(x,["class","width","height","box","spin","inverse","pulse","flip","style","label"]),P=K(b,"class",8,""),j=K(b,"width",8),X=K(b,"height",8),Ae=K(b,"box",8,"0 0 0 0"),W=K(b,"spin",8,!1),Ce=K(b,"inverse",8,!1),we=K(b,"pulse",8,!1),Be=K(b,"flip",8,"none"),Ee=K(b,"style",8,""),Ne=K(b,"label",8,""),de=j3e();hv(de,()=>{var Ie;return UA(UA({version:"1.1",class:"fa-icon ".concat((Ie=P())!==null&&Ie!==void 0?Ie:""),width:j(),height:X(),"aria-label":Ne(),role:Ne()?"img":"presentation",viewBox:Ae(),style:Ee()},F),{},{[Iu]:{"fa-spin":W(),"fa-pulse":we(),"fa-inverse":Ce(),"fa-flip-horizontal":Be()==="horizontal","fa-flip-vertical":Be()==="vertical"}})},void 0,void 0,void 0,"svelte-v67cny"),Sa(ce(de),b,"default",{},null),se(k,de)})(t,y2({get label(){return d()},get width(){return g(E)},get height(){return g(u)},get box(){return g(f)},get style(){return g(m)},get spin(){return s()},get flip(){return C()},get inverse(){return l()},get pulse(){return c()},get class(){return n()}},()=>i,{children:(k,b)=>{var x=ji();Sa(ct(x),A,"default",{},F=>{var P=Z3e(),j=ct(P);ka(j,1,()=>(g(a),Qe(()=>{var Ce;return((Ce=g(a))===null||Ce===void 0?void 0:Ce.paths)||[]})),za,(Ce,we)=>{var Be=V3e();hv(Be,()=>UA({},g(we))),se(Ce,Be)});var X=ke(j);ka(X,1,()=>(g(a),Qe(()=>{var Ce;return((Ce=g(a))===null||Ce===void 0?void 0:Ce.polygons)||[]})),za,(Ce,we)=>{var Be=q3e();hv(Be,()=>UA({},g(we))),se(Ce,Be)});var Ae=ke(X),W=Ce=>{P3e(Ce,{get data(){return g(a)},set data(we){N(a,we)},$$legacy:!0})};je(Ae,Ce=>{g(a),Qe(()=>{var we;return(we=g(a))===null||we===void 0?void 0:we.raw})&&Ce(W)}),se(F,P)}),se(k,x)},$$slots:{default:!0}})),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-boolean-toggle.svelte-eli4ob { + padding: 0; + margin: 1px 0 0; + vertical-align: top; + display: inline-flex; + color: var(--jse-value-color-boolean, #ff8c00); +} + +.jse-boolean-toggle.svelte-eli4ob:not(.jse-readonly) { + cursor: pointer; +}`);var W3e=Oe('
      ');function X3e(t,A){Ht(A,!1);var e=K(A,"path",9),i=K(A,"value",9),n=K(A,"readOnly",9),o=K(A,"onPatch",9),a=K(A,"focus",9);hi(!0);var r,s=W3e(),l=ce(s),c=It(()=>i()===!0?Rk:Nk);un(l,{get data(){return g(c)}}),TA(()=>{Vn(s,"aria-checked",i()===!0),r=Bi(s,1,"jse-boolean-toggle svelte-eli4ob",null,r,{"jse-readonly":n()}),Vn(s,"title",n()?"Boolean value ".concat(i()):"Click to toggle this boolean value")}),bA("mousedown",s,function(C){C.stopPropagation(),n()||(o()([{op:"replace",path:Lt(e()),value:!i()}]),a()())}),se(t,s),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-color-picker-popup.svelte-v77py2 .picker_wrapper.popup, +.jse-color-picker-popup.svelte-v77py2 .picker_wrapper.popup .picker_arrow::before, +.jse-color-picker-popup.svelte-v77py2 .picker_wrapper.popup .picker_arrow::after { + background: var(--jse-color-picker-background, var(--jse-panel-background, #ebebeb)); + line-height: normal; +} +.jse-color-picker-popup.svelte-v77py2 .picker_slider, +.jse-color-picker-popup.svelte-v77py2 .picker_sl, +.jse-color-picker-popup.svelte-v77py2 .picker_editor input, +.jse-color-picker-popup.svelte-v77py2 .picker_sample, +.jse-color-picker-popup.svelte-v77py2 .picker_done button { + box-shadow: var(--jse-color-picker-border-box-shadow, #cbcbcb 0 0 0 1px); +} +.jse-color-picker-popup.svelte-v77py2 .picker_editor input { + background: var(--jse-background-color, #fff); + color: var(--jse-text-color, #4d4d4d); +} +.jse-color-picker-popup.svelte-v77py2 .picker_done button { + background: var(--jse-button-background, #e0e0e0); + color: var(--jse-button-color, var(--jse-text-color, #4d4d4d)); +} +.jse-color-picker-popup.svelte-v77py2 .picker_done button:hover { + background: var(--jse-button-background-highlight, #e7e7e7); +}`);var $3e=Oe('
      ');function e6e(t,A){Ht(A,!1);var e=K(A,"color",8),i=K(A,"onChange",8),n=K(A,"showOnTop",8),o=ge(),a=()=>{};gs(Ai(function*(){var s,l=new((s=yield import("./chunk-HTWWQBR6.js"))===null||s===void 0?void 0:s.default)({parent:g(o),color:e(),popup:n()?"top":"bottom",onDone(c){var C=c.rgba[3]===1?c.hex.substring(0,7):c.hex;i()(C)}});l.show(),a=()=>{l.destroy()}})),Tc(()=>{a()}),hi();var r=$3e();na(r,s=>N(o,s),()=>g(o)),se(t,r),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-color-picker-button.svelte-13mgyo6 { + font-size: var(--jse-font-size-mono, 14px); + width: var(--jse-color-picker-button-size, 1em); + height: var(--jse-color-picker-button-size, 1em); + box-sizing: border-box; + padding: 0; + margin: 2px 0 0 calc(0.5 * var(--jse-padding, 10px)); + display: inline-flex; + vertical-align: top; + border: 1px solid var(--jse-text-color, #4d4d4d); + border-radius: 2px; + background: inherit; + outline: none; +} + +.jse-color-picker-button.svelte-13mgyo6:not(.jse-readonly) { + cursor: pointer; +}`);var A6e=Oe('');function t6e(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),{openAbsolutePopup:n}=k2("absolute-popup"),o=K(A,"path",9),a=K(A,"value",9),r=K(A,"readOnly",9),s=K(A,"onPatch",9),l=K(A,"focus",9);function c(E){s()([{op:"replace",path:Lt(o()),value:E}]),C()}function C(){l()()}Ue(()=>z(a()),()=>{N(e,pie(a()))}),Ue(()=>(z(r()),z(a())),()=>{N(i,r()?"Color ".concat(a()):"Click to open a color picker")}),qn(),hi(!0);var d,B=A6e();TA(()=>{var E;d=Bi(B,1,"jse-color-picker-button svelte-13mgyo6",null,d,{"jse-readonly":r()}),Kc(B,"background: ".concat((E=g(e))!==null&&E!==void 0?E:"")),Vn(B,"title",g(i)),Vn(B,"aria-label",g(i))}),bA("click",B,function(E){var u,m;if(!r()){var f=E.target,D=f.getBoundingClientRect().top,S=((u=(m=mm(f))===null||m===void 0?void 0:m.innerHeight)!==null&&u!==void 0?u:0)-D<300&&D>300,k={color:a(),onChange:c,showOnTop:S};n(e6e,k,{anchor:f,closeOnOuterClick:!0,onClose:C,offsetTop:18,offsetLeft:-8,height:300})}}),se(t,B),Pt()}var IN=1e3,nm=100,Av=100,bv=2e4,vu=[{start:0,end:nm}],i6e=1048576,n6e=1048576,BN=10485760,hN="Insert or paste contents, enter [ insert a new array, enter { to insert a new object, or start typing to insert a new value",fF="Open context menu (Click here, right click on the selection, or use the context menu button or Ctrl+Q)",B1="hover-insert-inside",tv="hover-insert-after",SAe="hover-collection",uN="valid",kAe="repairable",zC=336,YC=260,q4=100,_Ae={[Fc.asc]:"ascending",[Fc.desc]:"descending"};function Nie(t){for(var A=Az(t,r=>r.start),e=[A[0]],i=0;i0&&arguments[0]!==void 0?arguments[0]:{expanded:!1};return{type:"array",expanded:t,visibleSections:vu,items:[]}}function vF(){var{expanded:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{expanded:!1};return{type:"object",expanded:t,properties:{}}}var DF={createObjectDocumentState:vF,createArrayDocumentState:yF,createValueDocumentState:function(){return{type:"value"}}};function Lie(t,A,e,i){var{createObjectDocumentState:n,createArrayDocumentState:o,createValueDocumentState:a}=i;return(function r(s,l,c){if(Array.isArray(s)){var C=ur(l)?l:o();if(c.length===0)return C;var d=jr(c[0]),B=r(s[d],C.items[d],c.slice(1));return As(C,["items",c[0]],B)}if(zn(s)){var E=yl(l)?l:n();if(c.length===0)return E;var u=c[0],m=r(s[u],E.properties[u],c.slice(1));return As(E,["properties",u],m)}return wF(l)?l:a()})(t,A,e)}function $l(t,A){return om(t,A,arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],(e,i)=>{if(e!==void 0&&i!==void 0)return Array.isArray(e)?ur(i)?i:yF({expanded:!!R1(i)&&i.expanded}):zn(e)?yl(i)?i:vF({expanded:!!R1(i)&&i.expanded}):wF(i)?i:void 0},()=>!0)}function om(t,A,e,i,n){var o=i(t,A,e);if(Array.isArray(t)&&ur(o)&&n(o)){var a=[];return bF(t,o.visibleSections,s=>{var l=e.concat(String(s)),c=om(t[s],o.items[s],l,i,n);c!==void 0&&(a[s]=c)}),fAe(a,o.items)?o:UA(UA({},o),{},{items:a})}if(zn(t)&&yl(o)&&n(o)){var r={};return Object.keys(t).forEach(s=>{var l=e.concat(s),c=om(t[s],o.properties[s],l,i,n);c!==void 0&&(r[s]=c)}),fAe(Object.values(r),Object.values(o.properties))?o:UA(UA({},o),{},{properties:r})}return o}function bF(t,A,e){A.forEach(i=>{var{start:n,end:o}=i;mie(n,Math.min(t.length,o),e)})}function am(t,A){for(var e=t,i=[],n=0;n{var C=R1(c)&&!c.expanded?UA(UA({},c),{},{expanded:!0}):c;return ur(C)?(function(d,B){if((function(m,f){return m.some(D=>f>=D.start&&f(function(l,c,C,d){return om(l,c,C,(B,E,u)=>Array.isArray(B)&&d(u)?ur(E)?E.expanded?E:UA(UA({},E),{},{expanded:!0}):yF({expanded:!0}):zn(B)&&d(u)?yl(E)?E.expanded?E:UA(UA({},E),{},{expanded:!0}):vF({expanded:!0}):E,B=>R1(B)&&B.expanded)})(r,s,[],i))}function KAe(t,A,e,i){return Gu(t,A,e,(n,o)=>i?(function(a,r,s){return om(a,r,s,(l,c)=>UAe(c),()=>!0)})(n,o,e):UAe(o))}function UAe(t){return ur(t)&&t.expanded?UA(UA({},t),{},{expanded:!1,visibleSections:vu}):yl(t)&&t.expanded?UA(UA({},t),{},{expanded:!1}):t}function Gie(t,A,e){var i={json:t,documentState:A},n=e.reduce((o,a)=>({json:Bl(o.json,[a]),documentState:l6e(o.json,o.documentState,a)}),i);return{json:n.json,documentState:$l(n.json,n.documentState)}}function l6e(t,A,e){if(dk(e))return TAe(t,A,e,void 0);if(Ik(e))return OAe(t,A,e);if(q8(e)){var i=hl(t,e.path),n=U0(t,A,i);return n?Vv(t,A,i,{type:"value",enforceString:n}):A}return Z8(e)||Od(e)?(function(o,a,r){if(Od(r)&&r.from===r.path)return a;var s=a,l=hl(o,r.from),c=F0(o,s,l);return Od(r)&&(s=OAe(o,s,{path:r.from})),s=TAe(o,s,{path:r.path},c),s})(t,A,e):A}function F0(t,A,e){try{return nt(A,am(t,e))}catch(i){return}}function MF(t,A,e,i,n){var o=Lie(t,A,e,n);return Lp(o,am(t,e),a=>{var r=nt(t,e);return i(r,a)})}function Vv(t,A,e,i){return(function(n,o,a,r,s){var l=Lie(n,o,a,s);return As(l,am(n,a),r)})(t,A,e,i,DF)}function Gu(t,A,e,i){return MF(t,A,e,i,DF)}function TAe(t,A,e,i){var n=hl(t,e.path),o=A;return o=Gu(t,o,sn(n),(a,r)=>{if(!ur(r))return r;var s=jr(Yi(n)),{items:l,visibleSections:c}=r;return UA(UA({},r),{},{items:s{if(!ur(r))return r;var s=jr(Yi(i)),{items:l,visibleSections:c}=r;return UA(UA({},r),{},{items:l.slice(0,s).concat(l.slice(s+1)),visibleSections:Kie(c,s,-1)})}):(function(a,r,s){var l=am(a,s);return Or(r,l)?OI(r,am(a,s)):r})(t,A,i)}function Kie(t,A,e){return(function(i){for(var n=i.slice(0),o=1;o({start:i.start>A?i.start+e:i.start,end:i.end>A?i.end+e:i.end})))}function U0(t,A,e){var i,n=nt(t,e),o=F0(t,A,e),a=wF(o)?o.enforceString:void 0;return typeof a=="boolean"?a:typeof(i=n)=="string"&&typeof Vu(i,JSON)!="string"}function wm(t,A){var e=arguments.length>2&&arguments[2]!==void 0&&arguments[2],i=t.indexOf(A);return i!==-1?e?t.slice(i):t.slice(i+1):[]}function SF(t,A){var e=[];return(function i(n,o,a){e.push(a),Ca(n)&&ur(o)&&o.expanded&&bF(n,o.visibleSections,r=>{i(n[r],o.items[r],a.concat(String(r)))}),fa(n)&&yl(o)&&o.expanded&&Object.keys(n).forEach(r=>{i(n[r],o.properties[r],a.concat(r))})})(t,A,[]),e}function Uie(t,A){var e=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2],i=[];return(function n(o,a){i.push({path:a,type:_g.value});var r=F0(t,A,a);if(o&&R1(r)&&r.expanded){if(e&&i.push({path:a,type:_g.inside}),Ca(o)){var s=ur(r)?r.visibleSections:vu;bF(o,s,l=>{var c=a.concat(String(l));n(o[l],c),e&&i.push({path:c,type:_g.after})})}fa(o)&&Object.keys(o).forEach(l=>{var c=a.concat(l);i.push({path:c,type:_g.key}),n(o[l],c),e&&i.push({path:c,type:_g.after})})}})(t,[]),i}function EN(t,A,e){var i=SF(t,A),n=i.map(Lt).indexOf(Lt(e));if(n!==-1&&n3&&arguments[3]!==void 0?arguments[3]:10240;return kg(t,A,e,b3e({json:nt(t,e)},i)?Z4:kF)}function QN(t,A,e){var i=F0(t,A,e);return R1(i)&&i.expanded?A:N1(t,A,e)}function Z4(t){return t.length===0||t.length===1&&t[0]==="0"}function PN(t){return t.length===0}function kF(){return!0}function Ev(){return!1}function Dl(t){return t&&t.type===fo.after||!1}function cr(t){return t&&t.type===fo.inside||!1}function Er(t){return t&&t.type===fo.key||!1}function Sn(t){return t&&t.type===fo.value||!1}function Mo(t){return t&&t.type===fo.multi||!1}function qv(t){return Mo(t)&&Oi(t.focusPath,t.anchorPath)}function rm(t){return Mo(t)||Dl(t)||cr(t)||Er(t)||Sn(t)}function pN(t){return t&&t.type===fo.text||!1}function M2(t,A){var e=[];return(function(i,n,o){if(n){var a=v1(n),r=ft(n);if(Oi(a,r))return o(a);if(i!==void 0){var s=Oie(a,r);if(a.length===s.length||r.length===s.length)return o(s);var l=xs(a,r),c=HC(i,l),C=D2(i,l),d=ZC(i,l,c),B=ZC(i,l,C);if(!(d===-1||B===-1)){var E=nt(i,s);if(fa(E)){for(var u=Object.keys(E),m=d;m<=B;m++){var f=o(s.concat(u[m]));if(f!==void 0)return f}return}if(Ca(E)){for(var D=d;D<=B;D++){var S=o(s.concat(String(D)));if(S!==void 0)return S}return}throw new Error("Failed to create selection")}}}})(t,A,i=>{e.push(i)}),e}function Tie(t){return cr(t)?t.path:sn(ft(t))}function HC(t,A){if(!Mo(A))return A.path;var e=ZC(t,A,A.anchorPath);return ZC(t,A,A.focusPath)e?A.focusPath:A.anchorPath}function JAe(t,A,e){var i=arguments.length>3&&arguments[3]!==void 0&&arguments[3];if(e){var n=i?ft(e):HC(t,e),o=(function(s,l,c){var C=SF(s,l),d=C.map(Lt),B=Lt(c),E=d.indexOf(B);if(E!==-1&&E>0)return C[E-1]})(t,A,n);if(i)return cr(e)||Dl(e)?o!==void 0?xs(n,n):void 0:o!==void 0?xs(v1(e),o):void 0;if(Dl(e)||cr(e))return nn(n);if(Er(e)){if(o===void 0||o.length===0)return;var a=sn(o),r=nt(t,a);return Array.isArray(r)||tn(o)?nn(o):ed(o)}return Sn(e),o!==void 0?nn(o):void 0}}function zAe(t,A,e,i){if(!e)return{caret:void 0,previous:void 0,next:void 0};var n=Uie(t,A,i),o=n.findIndex(a=>Oi(a.path,ft(e))&&String(a.type)===String(e.type));return{caret:o!==-1?n[o]:void 0,previous:o!==-1&&o>0?n[o-1]:void 0,next:o!==-1&&oe[i].length;)i++;var n=e[i];return n===void 0||n.length===0||Array.isArray(nt(t,sn(n)))?nn(n):ed(n)}function Ku(t,A){if(A.length===1){var e=i0(A);if(e.op==="replace")return nn(hl(t,e.path))}if(!tn(A)&&A.every(a=>a.op==="move")){var i=i0(A),n=A.slice(1);if((Z8(i)||Od(i))&&i.from!==i.path&&n.every(a=>(Z8(a)||Od(a))&&a.from===a.path))return ed(hl(t,i.path))}var o=A.filter(a=>a.op!=="test"&&a.op!=="remove"&&(a.op!=="move"||a.from!==a.path)&&typeof a.path=="string").map(a=>hl(t,a.path));if(!tn(o))return{type:fo.multi,anchorPath:i0(o),focusPath:Yi(o)}}function Oie(t,A){for(var e=0;ee.length&&A.length>e.length;return{type:fo.multi,anchorPath:i?e.concat(t[e.length]):e,focusPath:i?e.concat(A[e.length]):e}}function Jie(t,A,e,i){if(Er(A))return String(Yi(A.path));if(Sn(A)){var n=nt(t,A.path);return typeof n=="string"?n:i.stringify(n,null,e)}if(Mo(A)){if(tn(A.focusPath))return i.stringify(t,null,e);var o=Tie(A),a=nt(t,o);if(Array.isArray(a)){if(qv(A)){var r=nt(t,A.focusPath);return i.stringify(r,null,e)}return M2(t,A).map(s=>{var l=nt(t,s);return"".concat(i.stringify(l,null,e),",")}).join(` +`)}return M2(t,A).map(s=>{var l=Yi(s),c=nt(t,s);return"".concat(i.stringify(l),": ").concat(i.stringify(c,null,e),",")}).join(` +`)}}function hr(t){return(Er(t)||Sn(t))&&t.edit===!0}function Qu(t){return Er(t)||Sn(t)||Mo(t)}function iv(t){return Er(t)||Sn(t)||qv(t)}function jN(t){switch(t.type){case _g.key:return ed(t.path);case _g.value:return nn(t.path);case _g.after:return qC(t.path);case _g.inside:return Ad(t.path)}}function HAe(t,A){switch(t){case fo.key:return ed(A);case fo.value:return nn(A);case fo.after:return qC(A);case fo.inside:return Ad(A);case fo.multi:case fo.text:return xs(A,A)}}function nv(t,A,e){if(A)return sm(t,A,e)||z0(Mo(A)?sn(A.focusPath):A.path,e)?A:void 0}function sm(t,A,e){if(t===void 0||!A)return!1;if(Er(A)||cr(A)||Dl(A))return Oi(A.path,e);if(Sn(A))return z0(e,A.path);if(Mo(A)){var i=HC(t,A),n=D2(t,A),o=sn(A.focusPath);if(!z0(e,o)||e.length<=o.length)return!1;var a=ZC(t,A,i),r=ZC(t,A,n),s=ZC(t,A,e);return s!==-1&&s>=a&&s<=r}return!1}function ZC(t,A,e){var i=sn(A.focusPath);if(!z0(e,i)||e.length<=i.length)return-1;var n=e[i.length],o=nt(t,i);if(fa(o))return Object.keys(o).indexOf(n);if(Ca(o)){var a=jr(n);if(a');function Yie(t,A){Ht(A,!1);var e=Qr("jsoneditor:EditableDiv"),i=K(A,"value",9),n=K(A,"initialValue",9),o=K(A,"shortText",9,!1),a=K(A,"label",9),r=K(A,"onChange",9),s=K(A,"onCancel",9),l=K(A,"onFind",9),c=K(A,"onPaste",9,Ta),C=K(A,"onValueClass",9,()=>""),d=ge(void 0,!0),B=ge(void 0,!0),E=!1;function u(){return g(d)?(function(D){return D.replace(/\n$/,"")})(g(d).innerText):""}function m(D){g(d)&&ec(d,g(d).innerText=Lu(D))}gs(()=>{e("onMount",{value:i(),initialValue:n()}),m(n()!==void 0?n():i()),g(d)&&(function(D){if(D.firstChild!=null){var S=document.createRange(),k=window.getSelection();S.setStart(D,1),S.collapse(!0),k?.removeAllRanges(),k?.addRange(S)}else D.focus()})(g(d))}),Tc(()=>{var D=u();e("onDestroy",{closed:E,value:i(),newValue:D}),E||D===i()||r()(D,v2.no)}),Ue(()=>(z(C()),z(i())),()=>{N(B,C()(i()))}),qn(),hi(!0);var f=c6e();na(f,D=>N(d,D),()=>g(d)),TA(D=>{Vn(f,"aria-label",a()),Bi(f,1,D,"svelte-1r0oryi")},[()=>b2((z(Kg),g(B),z(o()),Qe(()=>Kg("jse-editable-div",g(B),{"jse-short-text":o()}))))]),bA("input",f,function(){var D=u();D===""&&m(""),N(B,C()(D))}),bA("keydown",f,function(D){D.stopPropagation();var S=$C(D);if(S==="Escape"&&(D.preventDefault(),E=!0,s()()),S==="Enter"||S==="Tab"){D.preventDefault(),E=!0;var k=u();r()(k,v2.nextInside)}S==="Ctrl+F"&&(D.preventDefault(),l()(!1)),S==="Ctrl+H"&&(D.preventDefault(),l()(!0))}),bA("paste",f,function(D){if(D.stopPropagation(),c()&&D.clipboardData){var S=D.clipboardData.getData("text/plain");c()(S)}}),bA("blur",f,function(){var D=document.hasFocus(),S=u();e("handleBlur",{hasFocus:D,closed:E,value:i(),newValue:S}),document.hasFocus()&&!E&&(E=!0,S!==i()&&r()(S,v2.self))}),se(t,f),Pt()}function g6e(t,A){Ht(A,!1);var e=K(A,"path",9),i=K(A,"value",9),n=K(A,"selection",9),o=K(A,"mode",9),a=K(A,"parser",9),r=K(A,"normalization",9),s=K(A,"enforceString",9),l=K(A,"onPatch",9),c=K(A,"onPasteJson",9),C=K(A,"onSelect",9),d=K(A,"onFind",9),B=K(A,"focus",9),E=K(A,"findNextInside",9);function u(S){return s()?S:Vu(S,a())}function m(){C()(nn(e())),B()()}hi(!0);var f=It(()=>(z(r()),z(i()),Qe(()=>r().escapeValue(i())))),D=It(()=>(z(hr),z(n()),Qe(()=>hr(n())?n().initialValue:void 0)));Yie(t,{get value(){return g(f)},get initialValue(){return g(D)},label:"Edit value",onChange:function(S,k){l()([{op:"replace",path:Lt(e()),value:u(r().unescapeValue(S))}],(b,x,F)=>{if(!F||Oi(e(),ft(F)))return{state:x,selection:k===v2.nextInside?E()(e()):nn(e())}}),B()()},onCancel:m,onPaste:function(S){try{var k=a().parse(S);ya(k)&&c()({path:e(),contents:k,onPasteAsJson:()=>{m();var b=[{op:"replace",path:Lt(e()),value:k}];l()(b,(x,F)=>({state:N1(x,F,e())}))}})}catch(b){}},get onFind(){return d()},onValueClass:function(S){return zie(u(r().unescapeValue(S)),o(),a())}}),Pt()}function pu(t,A,e){var i=sn(A),n=nt(t,i);if(Ca(n)){var o=jr(Yi(A));return e.map((l,c)=>({op:"add",path:Lt(i.concat(String(o+c))),value:l.value}))}if(fa(n)){var a=Yi(A),r=Object.keys(n),s=a!==void 0?wm(r,a,!0):[];return[...e.map(l=>{var c=fm(l.key,r);return{op:"add",path:Lt(i.concat(c)),value:l.value}}),...s.map(l=>S2(i,l))]}throw new Error("Cannot create insert operations: parent must be an Object or Array")}function VN(t,A,e){var i=nt(t,A);if(Array.isArray(i)){var n=i.length;return e.map((o,a)=>({op:"add",path:Lt(A.concat(String(n+a))),value:o.value}))}return e.map(o=>{var a=fm(o.key,Object.keys(i));return{op:"add",path:Lt(A.concat(a)),value:o.value}})}function ym(t,A,e,i){var n=A.filter(r=>r!==e),o=fm(i,n),a=wm(A,e,!1);return[{op:"move",from:Lt(t.concat(e)),path:Lt(t.concat(o))},...a.map(r=>S2(t,r))]}function Hie(t,A){var e=Yi(A);if(tn(e))throw new Error("Cannot duplicate root object");var i=sn(e),n=Yi(e),o=nt(t,i);if(Ca(o)){var a=Yi(A),r=a?jr(Yi(a))+1:0;return[...A.map((c,C)=>({op:"copy",from:Lt(c),path:Lt(i.concat(String(C+r)))}))]}if(fa(o)){var s=Object.keys(o),l=n!==void 0?wm(s,n,!1):[];return[...A.map(c=>{var C=fm(Yi(c),s);return{op:"copy",from:Lt(c),path:Lt(i.concat(C))}}),...l.map(c=>S2(i,c))]}throw new Error("Cannot create duplicate operations: parent must be an Object or Array")}function Pie(t,A){if(Sn(A))return[{op:"move",from:Lt(A.path),path:""}];if(!Mo(A))throw new Error("Cannot create extract operations: parent must be an Object or Array");var e=sn(A.focusPath),i=nt(t,e);if(Ca(i)){var n=M2(t,A).map(a=>{var r=jr(Yi(a));return i[r]});return[{op:"replace",path:"",value:n}]}if(fa(i)){var o={};return M2(t,A).forEach(a=>{var r=String(Yi(a));o[r]=i[r]}),[{op:"replace",path:"",value:o}]}throw new Error("Cannot extract: unsupported type of selection "+JSON.stringify(A))}function jie(t,A,e,i){if(Er(A)){var n=fie(e,i),o=sn(A.path),a=nt(t,o);return ym(o,Object.keys(a),Yi(A.path),typeof n=="string"?n:e)}if(Sn(A)||Mo(A)&&tn(A.focusPath))try{return[{op:"replace",path:Lt(ft(A)),value:pm(e,x=>Qm(x,i))}]}catch(x){return[{op:"replace",path:Lt(ft(A)),value:e}]}if(Mo(A)){var r=mN(e,i);return(function(x,F,P){var j=i0(F),X=sn(j),Ae=nt(x,X);if(Ca(Ae)){var W=i0(F),Ce=W?jr(Yi(W)):0;return[...xv(F),...P.map((Xe,fA)=>({op:"add",path:Lt(X.concat(String(fA+Ce))),value:Xe.value}))]}if(fa(Ae)){var we=Yi(F),Be=sn(we),Ee=Yi(we),Ne=Object.keys(Ae),de=Ee!==void 0?wm(Ne,Ee,!1):[],Ie=new Set(F.map(Xe=>Yi(Xe))),xe=Ne.filter(Xe=>!Ie.has(Xe));return[...xv(F),...P.map(Xe=>{var fA=fm(Xe.key,xe);return{op:"add",path:Lt(Be.concat(fA)),value:Xe.value}}),...de.map(Xe=>S2(Be,Xe))]}throw new Error("Cannot create replace operations: parent must be an Object or Array")})(t,M2(t,A),r)}if(Dl(A)){var s=mN(e,i),l=A.path,c=sn(l),C=nt(t,c);if(Ca(C)){var d=jr(Yi(l));return pu(t,c.concat(String(d+1)),s)}if(fa(C)){var B=String(Yi(l)),E=Object.keys(C);if(tn(E)||Yi(E)===B)return VN(t,c,s);var u=E.indexOf(B),m=E[u+1];return pu(t,c.concat(m),s)}throw new Error("Cannot create insert operations: parent must be an Object or Array")}if(cr(A)){var f=mN(e,i),D=A.path,S=nt(t,D);if(Ca(S))return pu(t,D.concat("0"),f);if(fa(S)){var k=Object.keys(S);if(tn(k))return VN(t,D,f);var b=i0(k);return pu(t,D.concat(b),f)}throw new Error("Cannot create insert operations: parent must be an Object or Array")}throw new Error("Cannot insert: unsupported type of selection "+JSON.stringify(A))}function xv(t){return t.map(A=>({op:"remove",path:Lt(A)})).reverse()}function S2(t,A){return{op:"move",from:Lt(t.concat(A)),path:Lt(t.concat(A))}}function mN(t,A){var e=/^\s*{/.test(t),i=/^\s*\[/.test(t),n=fie(t,A),o=n!==void 0?n:pm(t,a=>Qm(a,A));return e&&zn(o)||i&&Array.isArray(o)?[{key:"New item",value:o}]:Array.isArray(o)?o.map((a,r)=>({key:"New item "+r,value:a})):zn(o)?Object.keys(o).map(a=>({key:a,value:o[a]})):[{key:"New item",value:o}]}function Vie(t,A){if(Er(A)){var e=sn(A.path),i=nt(t,e),n=ym(e,Object.keys(i),Yi(A.path),"");return{operations:n,newSelection:Ku(t,n)}}if(Sn(A))return{operations:[{op:"replace",path:Lt(A.path),value:""}],newSelection:A};if(Mo(A)){var o=M2(t,A),a=xv(o),r=Yi(o);if(tn(r))return{operations:[{op:"replace",path:"",value:""}],newSelection:nn([])};var s=sn(r),l=nt(t,s);if(Ca(l)){var c=i0(o),C=jr(Yi(c));return{operations:a,newSelection:C===0?Ad(s):qC(s.concat(String(C-1)))}}if(fa(l)){var d=Object.keys(l),B=i0(o),E=Yi(B),u=d.indexOf(E),m=d[u-1];return{operations:a,newSelection:u===0?Ad(s):qC(s.concat(m))}}throw new Error("Cannot create remove operations: parent must be an Object or Array")}throw new Error("Cannot remove: unsupported type of selection "+JSON.stringify(A))}function qie(t,A){var e=(function(i,n){if(tn(n)||!n.every(Od))return n;var o=[];for(var a of n){var r=PAe(Ms(a.from)),s=PAe(Ms(a.path));if(!r||!s)return n;o.push({from:r,path:s,operation:a})}var l=o[0].path.parent,c=nt(i,l);if(!fa(c)||!o.every(E=>(function(u,m){return Oi(u.from.parent,m)&&Oi(u.path.parent,m)})(E,l)))return n;var C=(function(E,u){var m=Object.keys(u),f=m.slice();for(var D of E){var S=f.indexOf(D.from.key);S!==-1&&(f.splice(S,1),f.push(D.path.key))}for(var k=0;kE.operation,B=o.filter(E=>E.operation.from!==E.operation.path);return B.some(E=>E.path.key===C)?B.map(d):[S2(l,C),...B.map(d)]})(t,A);return W8(t,e,{before:(i,n,o)=>{if(Ik(n)){var a=Ms(n.path);return{revertOperations:[...o,...fN(i,a)]}}if(Od(n)){var r=Ms(n.from);return{revertOperations:n.from===n.path?[n,...fN(i,r)]:[...o,...fN(i,r)]}}return{document:i}}})}function PAe(t){return t.length>0?{parent:sn(t),key:Yi(t)}:void 0}function fN(t,A){var e=sn(A),i=Yi(A),n=nt(t,e);return fa(n)?wm(Object.keys(n),i,!1).map(o=>S2(e,o)):[]}function jAe(t){var A=t.activeIndex0?0:-1,e=t.items[A],i=t.items.map((n,o)=>UA(UA({},n),{},{active:o===A}));return UA(UA({},t),{},{items:i,activeItem:e,activeIndex:A})}function VAe(t,A){var e,i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},n=t.toLowerCase(),o=(e=i?.maxResults)!==null&&e!==void 0?e:1/0,a=i?.columns,r=[],s=[];function l(m){r.length>=o||r.push(m)}function c(m,f){if(Ca(f)){var D=s.length;s.push("0");for(var S=0;S=o)return;s.pop()}else if(fa(f)){var k=Object.keys(f),b=s.length;for(var x of(s.push(""),k))if(s[b]=x,qAe(x,m,s,Rg.key,l),c(m,f[x]),r.length>=o)return;s.pop()}else qAe(String(f),m,s,Rg.value,l)}if(t==="")return[];if(a){if(!Array.isArray(A))throw new Error("json must be an Array when option columns is defined");for(var C=0;CE.length+1;)s.pop();c(n,nt(d,E))}if(r.length>=o)break}return r}return c(n,A),r}function qAe(t,A,e,i,n){var o=t.toLowerCase(),a=0,r=-1,s=-1;do(s=o.indexOf(A,r))!==-1&&(r=s+A.length,n({path:e.slice(0),field:i,fieldIndex:a,start:s,end:r}),a++);while(s!==-1)}function qN(t,A,e,i){return t.substring(0,e)+A+t.substring(i)}function ZAe(t,A,e){var i=t;return ZJ(e,n=>{i=qN(i,A,n.start,n.end)}),i}function C6e(t,A,e,i,n){var{field:o,path:a,start:r,end:s}=i;if(o===Rg.key){var l=sn(a),c=nt(t,l),C=Yi(a),d=ym(l,Object.keys(c),C,qN(C,e,r,s));return{newSelection:Ku(t,d),operations:d}}if(o===Rg.value){var B=nt(t,a);if(B===void 0)throw new Error("Cannot replace: path not found ".concat(Lt(a)));var E=typeof B=="string"?B:String(B),u=U0(t,A,a),m=qN(E,e,r,s),f=[{op:"replace",path:Lt(a),value:u?m:Vu(m,n)}];return{newSelection:Ku(t,f),operations:f}}throw new Error("Cannot replace: unknown type of search result field ".concat(o))}function WAe(t){return t.path.concat(t.field,String(t.fieldIndex))}function XAe(t){var A=Fie(t)?t.searchResults.filter(e=>e.field===Rg.key):void 0;return A&&A.length>0?A:void 0}function $Ae(t){var A=Fie(t)?t.searchResults.filter(e=>e.field===Rg.value):void 0;return A&&A.length>0?A:void 0}var d6e={createObjectDocumentState:()=>({type:"object",properties:{}}),createArrayDocumentState:()=>({type:"array",items:[]}),createValueDocumentState:()=>({type:"value"})};function Zie(t,A){return A.reduce((e,i)=>(function(n,o,a,r){return MF(n,o,a,r,d6e)})(t,e,i.path,(n,o)=>UA(UA({},o),{},{searchResults:o.searchResults?o.searchResults.concat(i):[i]})),void 0)}function Rv(t){var A,e=(A=t?.searchResults)!==null&&A!==void 0?A:[],i=yl(t)?Object.values(t.properties).flatMap(Rv):ur(t)?t.items.flatMap(Rv):[];return e.concat(i)}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-highlight.svelte-19qyvy6 { + background-color: var(--jse-search-match-color, #ffe665); + outline: var(--jse-search-match-outline, none); +} +.jse-highlight.jse-active.svelte-19qyvy6 { + background-color: var(--jse-search-match-active-color, var(--jse-search-match-color, #ffe665)); + outline: var(--jse-search-match-outline, 2px solid #e0be00); +}`);var I6e=Oe(" ");function Wie(t,A){Ht(A,!1);var e=ge(),i=K(A,"text",8),n=K(A,"searchResultItems",8);Ue(()=>(z(i()),z(n())),()=>{N(e,(function(a,r){var s=[],l=0;for(var c of r){var C=a.slice(l,c.start);C!==""&&s.push({resultIndex:void 0,type:"normal",text:C,active:!1});var d=a.slice(c.start,c.end);s.push({resultIndex:c.resultIndex,type:"highlight",text:d,active:c.active}),l=c.end}var B=Yi(r);return B&&B.endg(e),za,(a,r)=>{var s=ji(),l=ct(s),c=d=>{var B=Mr();TA(()=>jt(B,(g(r),Qe(()=>g(r).text)))),se(d,B)},C=d=>{var B,E=I6e(),u=ce(E);TA((m,f)=>{B=Bi(E,1,"jse-highlight svelte-19qyvy6",null,B,{"jse-active":g(r).active}),Vn(E,"data-search-result-index",m),jt(u,f)},[()=>(g(r),Qe(()=>String(g(r).resultIndex))),()=>(z(Lu),g(r),Qe(()=>Lu(g(r).text)))]),se(d,E)};je(l,d=>{g(r),Qe(()=>g(r).type==="normal")?d(c):d(C,!1)}),se(a,s)}),se(t,o),Pt()}function Qv(t){var A=1e3;if(t<900)return t.toFixed()+" B";var e=t/A;if(e<900)return e.toFixed(1)+" KB";var i=e/A;if(i<900)return i.toFixed(1)+" MB";var n=i/A;return n<900?n.toFixed(1)+" GB":(n/A).toFixed(1)+" TB"}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-tag.svelte-ubve9r { + border: none; + font-size: 80%; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + color: var(--jse-tag-color, var(--jse-text-color-inverse, #fff)); + background: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); + border-radius: 2px; + cursor: pointer; + display: inline-block; + padding: 0 4px; + line-height: normal; + margin: 1px 0; +} +.jse-tag.svelte-ubve9r:hover { + opacity: 0.8; +} +.jse-tag.disabled.svelte-ubve9r { + opacity: 0.7; + cursor: inherit; +}`);var B6e=Oe('');function pv(t,A){Ht(A,!0);var e,i=vl(()=>A.onclick?o=>{o.preventDefault(),o.stopPropagation(),A.onclick()}:void 0),n=B6e();n.__click=function(){for(var o,a=arguments.length,r=new Array(a),s=0;s2?r-2:0),l=2;l{var C,d=(C=a())!==null&&C!==void 0?C:null;c.ensure(d,d&&(B=>d(B,...s)))},b1)})(ce(n),()=>{var o;return(o=A.children)!==null&&o!==void 0?o:Jfe}),TA(()=>e=Bi(n,1,"jse-tag svelte-ubve9r",null,e,{disabled:!A.onclick})),se(t,n),Pt()}Em(["click"]);si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-value.jse-string.svelte-1saqp8c { + color: var(--jse-value-color-string, #008000); +} +.jse-value.jse-object.svelte-1saqp8c, .jse-value.jse-array.svelte-1saqp8c { + min-width: 16px; + color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); +} +.jse-value.jse-number.svelte-1saqp8c { + color: var(--jse-value-color-number, #ee422e); +} +.jse-value.jse-boolean.svelte-1saqp8c { + color: var(--jse-value-color-boolean, #ff8c00); +} +.jse-value.jse-null.svelte-1saqp8c { + color: var(--jse-value-color-null, #004ed0); +} +.jse-value.jse-invalid.svelte-1saqp8c { + color: var(--jse-text-color, #4d4d4d); +} +.jse-value.jse-url.svelte-1saqp8c { + color: var(--jse-value-color-url, #008000); + text-decoration: underline; +} + +.jse-value.svelte-1saqp8c { + display: inline-block; + min-width: 2em; + padding: 0 5px; + box-sizing: border-box; + outline: none; + border-radius: 1px; + vertical-align: top; + word-break: normal; + overflow-wrap: anywhere; + white-space: pre-wrap; +} +.jse-value.jse-table-cell.svelte-1saqp8c { + overflow-wrap: normal; + white-space: nowrap; +} +.jse-value.jse-empty.svelte-1saqp8c { + min-width: 4em; + outline: 1px dotted var(--jse-tag-background, rgba(0, 0, 0, 0.2)); + -moz-outline-radius: 2px; +} +.jse-value.jse-empty.svelte-1saqp8c::after { + pointer-events: none; + color: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); + content: "value"; +}`);var h6e=Oe('
      ');function u6e(t,A){Ht(A,!0);var e=GC(!0),i=vl(()=>g(e)&&typeof A.value=="string"&&A.value.length>A.truncateTextSize&&(!A.searchResultItems||!A.searchResultItems.some(B=>B.active&&B.end>A.truncateTextSize))),n=vl(()=>g(i)&&typeof A.value=="string"?A.value.substring(0,A.truncateTextSize).trim():A.value),o=vl(()=>jv(A.value));function a(){N(e,!1)}var r=h6e();r.__click=function(B){typeof A.value=="string"&&g(o)&&mF(B)&&(B.preventDefault(),B.stopPropagation(),window.open(A.value,"_blank"))},r.__dblclick=function(B){A.readOnly||(B.preventDefault(),A.onSelect(_v(A.path)))};var s=ce(r),l=B=>{var E=vl(()=>A.normalization.escapeValue(g(n)));Wie(B,{get text(){return g(E)},get searchResultItems(){return A.searchResultItems}})},c=B=>{var E=Mr();TA(u=>jt(E,u),[()=>Lu(A.normalization.escapeValue(g(n)))]),se(B,E)};je(s,B=>{A.searchResultItems?B(l):B(c,!1)});var C=ke(s,2),d=B=>{pv(B,{onclick:a,children:(E,u)=>{var m=Mr();TA(f=>jt(m,"Show more (".concat(f??"",")")),[()=>Qv(A.value.length)]),se(E,m)},$$slots:{default:!0}})};je(C,B=>{g(i)&&typeof A.value=="string"&&B(d)}),TA(B=>{Bi(r,1,B,"svelte-1saqp8c"),Vn(r,"title",g(o)?"Ctrl+Click or Ctrl+Enter to open url in new window":void 0)},[()=>b2(zie(A.value,A.mode,A.parser))]),se(t,r),Pt()}Em(["click","dblclick"]);si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-tooltip.svelte-brt1mq { + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + line-height: normal; + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); + border-radius: 3px; + background: var(--jse-context-menu-background, #656565); + color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); + white-space: nowrap; + box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); +}`);var E6e=Oe('
      ');function Q6e(t,A){var e=K(A,"text",8),i=E6e(),n=ce(i);TA(()=>jt(n,e())),se(t,i)}function Uu(t,A){var e,{text:i,openAbsolutePopup:n,closeAbsolutePopup:o}=A;function a(){e=n(Q6e,{text:i},{position:"top",width:10*i.length,offsetTop:3,anchor:t,closeOnOuterClick:!0})}function r(){o(e)}return t.addEventListener("mouseenter",a),t.addEventListener("mouseleave",r),{destroy(){t.removeEventListener("mouseenter",a),t.removeEventListener("mouseleave",r)}}}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-timestamp.svelte-1jcpman { + padding: 0; + margin: 0; + vertical-align: middle; + display: inline-flex; + color: var(--jse-value-color-number, #ee422e); +}`);var p6e=Oe('
      ');function m6e(t,A){Ht(A,!1);var e=ge(void 0,!0),i=k2("absolute-popup"),n=K(A,"value",9);Ue(()=>z(n()),()=>{N(e,"Time: ".concat(new Date(n()).toString()))}),qn(),hi(!0);var o=p6e();un(ce(o),{get data(){return zq}}),Ns(o,(a,r)=>Uu?.(a,r),()=>UA({text:g(e)},i)),se(t,o),Pt()}function f6e(t){var A=[];return!t.isEditing&&m3e(t.value)&&A.push({component:X3e,props:t}),!t.isEditing&&f3e(t.value)&&A.push({component:t6e,props:t}),t.isEditing&&A.push({component:g6e,props:t}),t.isEditing||A.push({component:u6e,props:t}),!t.isEditing&&UN(t.value)&&A.push({component:m6e,props:t}),A}function bl(t){return t.map((A,e)=>y6e.test(A)?"["+A+"]":/[.[\]]/.test(A)||A===""?'["'+(function(i){return i.replace(/"/g,'\\"')})(A)+'"]':(e>0?".":"")+A).join("")}function w6e(t){for(var A=[],e=0;eo==='"',!0)),n('"')):A.push(i(o=>o==="]")),n("]")):A.push(i(o=>o==="."||o==="["));function i(o){for(var a=arguments.length>1&&arguments[1]!==void 0&&arguments[1],r="";e({x:t,y:t}),b6e={left:"right",right:"left",bottom:"top",top:"bottom"},M6e={start:"end",end:"start"};function ete(t,A,e){return D1(t,Nv(A,e))}function Zv(t,A){return typeof t=="function"?t(A):t}function F1(t){return t.split("-")[0]}function Wv(t){return t.split("-")[1]}function Xie(t){return t==="x"?"y":"x"}function $ie(t){return t==="y"?"height":"width"}var S6e=new Set(["top","bottom"]);function Q2(t){return S6e.has(F1(t))?"y":"x"}function ene(t){return Xie(Q2(t))}function ZN(t){return t.replace(/start|end/g,A=>M6e[A])}var Ate=["left","right"],tte=["right","left"],k6e=["top","bottom"],_6e=["bottom","top"];function x6e(t,A,e,i){var n=Wv(t),o=(function(a,r,s){switch(a){case"top":case"bottom":return s?r?tte:Ate:r?Ate:tte;case"left":case"right":return r?k6e:_6e;default:return[]}})(F1(t),e==="start",i);return n&&(o=o.map(a=>a+"-"+n),A&&(o=o.concat(o.map(ZN)))),o}function av(t){return t.replace(/left|right|bottom|top/g,A=>b6e[A])}function R6e(t){return typeof t!="number"?(function(A){return UA({top:0,right:0,bottom:0,left:0},A)})(t):{top:t,right:t,bottom:t,left:t}}function Lv(t){var{x:A,y:e,width:i,height:n}=t;return{width:i,height:n,top:e,left:A,right:A+i,bottom:e+n,x:A,y:e}}function ite(t,A,e){var i,{reference:n,floating:o}=t,a=Q2(A),r=ene(A),s=$ie(r),l=F1(A),c=a==="y",C=n.x+n.width/2-o.width/2,d=n.y+n.height/2-o.height/2,B=n[s]/2-o[s]/2;switch(l){case"top":i={x:C,y:n.y-o.height};break;case"bottom":i={x:C,y:n.y+n.height};break;case"right":i={x:n.x+n.width,y:d};break;case"left":i={x:n.x-o.width,y:d};break;default:i={x:n.x,y:n.y}}switch(Wv(A)){case"start":i[r]-=B*(e&&c?-1:1);break;case"end":i[r]+=B*(e&&c?-1:1)}return i}var N6e=(function(){var t=Ai(function*(A,e,i){for(var{placement:n="bottom",strategy:o="absolute",middleware:a=[],platform:r}=i,s=a.filter(Boolean),l=yield r.isRTL==null?void 0:r.isRTL(e),c=yield r.getElementRects({reference:A,floating:e,strategy:o}),{x:C,y:d}=ite(c,n,l),B=n,E={},u=0,m=0;m"u")&&(t instanceof ShadowRoot||t instanceof tc(t).ShadowRoot)}var L6e=new Set(["inline","contents"]);function lm(t){var{overflow:A,overflowX:e,overflowY:i,display:n}=Fg(t);return/auto|scroll|overlay|hidden|clip/.test(A+i+e)&&!L6e.has(n)}var G6e=new Set(["table","td","th"]);function K6e(t){return G6e.has(Tu(t))}var U6e=[":popover-open",":modal"];function Gv(t){return U6e.some(A=>{try{return t.matches(A)}catch(e){return!1}})}var T6e=["transform","translate","scale","rotate","perspective"],O6e=["transform","translate","scale","rotate","perspective","filter"],J6e=["paint","layout","strict","content"];function $N(t){var A=xF(),e=Ng(t)?Fg(t):t;return T6e.some(i=>!!e[i]&&e[i]!=="none")||!!e.containerType&&e.containerType!=="normal"||!A&&!!e.backdropFilter&&e.backdropFilter!=="none"||!A&&!!e.filter&&e.filter!=="none"||O6e.some(i=>(e.willChange||"").includes(i))||J6e.some(i=>(e.contain||"").includes(i))}function xF(){return!(typeof CSS>"u"||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}var z6e=new Set(["html","body","#document"]);function Du(t){return z6e.has(Tu(t))}function Fg(t){return tc(t).getComputedStyle(t)}function $v(t){return Ng(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function p2(t){if(Tu(t)==="html")return t;var A=t.assignedSlot||t.parentNode||nte(t)&&t.host||H0(t);return nte(A)?A.host:A}function ine(t){var A=p2(t);return Du(A)?t.ownerDocument?t.ownerDocument.body:t.body:P0(A)&&lm(A)?A:ine(A)}function cm(t,A,e){var i;A===void 0&&(A=[]),e===void 0&&(e=!0);var n=ine(t),o=n===((i=t.ownerDocument)==null?void 0:i.body),a=tc(n);if(o){var r=eF(a);return A.concat(a,a.visualViewport||[],lm(n)?n:[],r&&e?cm(r):[])}return A.concat(n,cm(n,[],e))}function eF(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function nne(t){var A=Fg(t),e=parseFloat(A.width)||0,i=parseFloat(A.height)||0,n=P0(t),o=n?t.offsetWidth:e,a=n?t.offsetHeight:i,r=Fv(e)!==o||Fv(i)!==a;return r&&(e=o,i=a),{width:e,height:i,$:r}}function RF(t){return Ng(t)?t:t.contextElement}function bu(t){var A=RF(t);if(!P0(A))return Y0(1);var e=A.getBoundingClientRect(),{width:i,height:n,$:o}=nne(A),a=(o?Fv(e.width):e.width)/i,r=(o?Fv(e.height):e.height)/n;return a&&Number.isFinite(a)||(a=1),r&&Number.isFinite(r)||(r=1),{x:a,y:r}}var Y6e=Y0(0);function one(t){var A=tc(t);return xF()&&A.visualViewport?{x:A.visualViewport.offsetLeft,y:A.visualViewport.offsetTop}:Y6e}function L1(t,A,e,i){A===void 0&&(A=!1),e===void 0&&(e=!1);var n=t.getBoundingClientRect(),o=RF(t),a=Y0(1);A&&(i?Ng(i)&&(a=bu(i)):a=bu(t));var r=(function(b,x,F){return x===void 0&&(x=!1),!(!F||x&&F!==tc(b))&&x})(o,e,i)?one(o):Y0(0),s=(n.left+r.x)/a.x,l=(n.top+r.y)/a.y,c=n.width/a.x,C=n.height/a.y;if(o)for(var d=tc(o),B=i&&Ng(i)?tc(i):i,E=d,u=eF(E);u&&i&&B!==E;){var m=bu(u),f=u.getBoundingClientRect(),D=Fg(u),S=f.left+(u.clientLeft+parseFloat(D.paddingLeft))*m.x,k=f.top+(u.clientTop+parseFloat(D.paddingTop))*m.y;s*=m.x,l*=m.y,c*=m.x,C*=m.y,s+=S,l+=k,u=eF(E=tc(u))}return Lv({width:c,height:C,x:s,y:l})}function Kv(t,A){var e=$v(t).scrollLeft;return A?A.left+e:L1(H0(t)).left+e}function ane(t,A){var e=t.getBoundingClientRect();return{x:e.left+A.scrollLeft-Kv(t,e),y:e.top+A.scrollTop}}var H6e=new Set(["absolute","fixed"]);function ote(t,A,e){var i;if(A==="viewport")i=(function(o,a){var r=tc(o),s=H0(o),l=r.visualViewport,c=s.clientWidth,C=s.clientHeight,d=0,B=0;if(l){c=l.width,C=l.height;var E=xF();(!E||E&&a==="fixed")&&(d=l.offsetLeft,B=l.offsetTop)}var u=Kv(s);if(u<=0){var m=s.ownerDocument,f=m.body,D=getComputedStyle(f),S=m.compatMode==="CSS1Compat"&&parseFloat(D.marginLeft)+parseFloat(D.marginRight)||0,k=Math.abs(s.clientWidth-f.clientWidth-S);k<=25&&(c-=k)}else u<=25&&(c+=u);return{width:c,height:C,x:d,y:B}})(t,e);else if(A==="document")i=(function(o){var a=H0(o),r=$v(o),s=o.ownerDocument.body,l=D1(a.scrollWidth,a.clientWidth,s.scrollWidth,s.clientWidth),c=D1(a.scrollHeight,a.clientHeight,s.scrollHeight,s.clientHeight),C=-r.scrollLeft+Kv(o),d=-r.scrollTop;return Fg(s).direction==="rtl"&&(C+=D1(a.clientWidth,s.clientWidth)-l),{width:l,height:c,x:C,y:d}})(H0(t));else if(Ng(A))i=(function(o,a){var r=L1(o,!0,a==="fixed"),s=r.top+o.clientTop,l=r.left+o.clientLeft,c=P0(o)?bu(o):Y0(1);return{width:o.clientWidth*c.x,height:o.clientHeight*c.y,x:l*c.x,y:s*c.y}})(A,e);else{var n=one(t);i={x:A.x-n.x,y:A.y-n.y,width:A.width,height:A.height}}return Lv(i)}function rne(t,A){var e=p2(t);return!(e===A||!Ng(e)||Du(e))&&(Fg(e).position==="fixed"||rne(e,A))}function P6e(t,A,e){var i=P0(A),n=H0(A),o=e==="fixed",a=L1(t,!0,o,A),r={scrollLeft:0,scrollTop:0},s=Y0(0);function l(){s.x=Kv(n)}if(i||!i&&!o)if((Tu(A)!=="body"||lm(n))&&(r=$v(A)),i){var c=L1(A,!0,o,A);s.x=c.x+A.clientLeft,s.y=c.y+A.clientTop}else n&&l();o&&!i&&n&&l();var C=!n||i||o?Y0(0):ane(n,r);return{x:a.left+r.scrollLeft-s.x-C.x,y:a.top+r.scrollTop-s.y-C.y,width:a.width,height:a.height}}function wN(t){return Fg(t).position==="static"}function ate(t,A){if(!P0(t)||Fg(t).position==="fixed")return null;if(A)return A(t);var e=t.offsetParent;return H0(t)===e&&(e=e.ownerDocument.body),e}function rte(t,A){var e=tc(t);if(Gv(t))return e;if(!P0(t)){for(var i=p2(t);i&&!Du(i);){if(Ng(i)&&!wN(i))return i;i=p2(i)}return e}for(var n=ate(t,A);n&&K6e(n)&&wN(n);)n=ate(n,A);return n&&Du(n)&&wN(n)&&!$N(n)?e:n||(function(o){for(var a=p2(o);P0(a)&&!Du(a);){if($N(a))return a;if(Gv(a))return null;a=p2(a)}return null})(t)||e}var j6e={convertOffsetParentRelativeRectToViewportRelativeRect:function(t){var{elements:A,rect:e,offsetParent:i,strategy:n}=t,o=n==="fixed",a=H0(i),r=!!A&&Gv(A.floating);if(i===a||r&&o)return e;var s={scrollLeft:0,scrollTop:0},l=Y0(1),c=Y0(0),C=P0(i);if((C||!C&&!o)&&((Tu(i)!=="body"||lm(a))&&(s=$v(i)),P0(i))){var d=L1(i);l=bu(i),c.x=d.x+i.clientLeft,c.y=d.y+i.clientTop}var B=!a||C||o?Y0(0):ane(a,s);return{width:e.width*l.x,height:e.height*l.y,x:e.x*l.x-s.scrollLeft*l.x+c.x+B.x,y:e.y*l.y-s.scrollTop*l.y+c.y+B.y}},getDocumentElement:H0,getClippingRect:function(t){var{element:A,boundary:e,rootBoundary:i,strategy:n}=t,o=e==="clippingAncestors"?Gv(A)?[]:(function(l,c){var C=c.get(l);if(C)return C;for(var d=cm(l,[],!1).filter(D=>Ng(D)&&Tu(D)!=="body"),B=null,E=Fg(l).position==="fixed",u=E?p2(l):l;Ng(u)&&!Du(u);){var m=Fg(u),f=$N(u);f||m.position!=="fixed"||(B=null),(E?!f&&!B:!f&&m.position==="static"&&B&&H6e.has(B.position)||lm(u)&&!f&&rne(l,u))?d=d.filter(D=>D!==u):B=m,u=p2(u)}return c.set(l,d),d})(A,this._c):[].concat(e),a=[...o,i],r=a[0],s=a.reduce((l,c)=>{var C=ote(A,c,n);return l.top=D1(C.top,l.top),l.right=Nv(C.right,l.right),l.bottom=Nv(C.bottom,l.bottom),l.left=D1(C.left,l.left),l},ote(A,r,n));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},getOffsetParent:rte,getElementRects:(function(){var t=Ai(function*(A){var e=this.getOffsetParent||rte,i=this.getDimensions,n=yield i(A.floating);return{reference:P6e(A.reference,yield e(A.floating),A.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}});return function(A){return t.apply(this,arguments)}})(),getClientRects:function(t){return Array.from(t.getClientRects())},getDimensions:function(t){var{width:A,height:e}=nne(t);return{width:A,height:e}},getScale:bu,isElement:Ng,isRTL:function(t){return Fg(t).direction==="rtl"}};function ste(t,A){return t.x===A.x&&t.y===A.y&&t.width===A.width&&t.height===A.height}function V6e(t,A,e,i){i===void 0&&(i={});var{ancestorScroll:n=!0,ancestorResize:o=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:r=typeof IntersectionObserver=="function",animationFrame:s=!1}=i,l=RF(t),c=n||o?[...l?cm(l):[],...cm(A)]:[];c.forEach(m=>{n&&m.addEventListener("scroll",e,{passive:!0}),o&&m.addEventListener("resize",e)});var C,d=l&&r?(function(m,f){var D,S=null,k=H0(m);function b(){var x;clearTimeout(D),(x=S)==null||x.disconnect(),S=null}return(function x(F,P){F===void 0&&(F=!1),P===void 0&&(P=1),b();var j=m.getBoundingClientRect(),{left:X,top:Ae,width:W,height:Ce}=j;if(F||f(),W&&Ce){var we={rootMargin:-ov(Ae)+"px "+-ov(k.clientWidth-(X+W))+"px "+-ov(k.clientHeight-(Ae+Ce))+"px "+-ov(X)+"px",threshold:D1(0,Nv(1,P))||1},Be=!0;try{S=new IntersectionObserver(Ee,UA(UA({},we),{},{root:k.ownerDocument}))}catch(Ne){S=new IntersectionObserver(Ee,we)}S.observe(m)}function Ee(Ne){var de=Ne[0].intersectionRatio;if(de!==P){if(!Be)return x();de?x(!1,de):D=setTimeout(()=>{x(!1,1e-7)},1e3)}de!==1||ste(j,m.getBoundingClientRect())||x(),Be=!1}})(!0),b})(l,e):null,B=-1,E=null;a&&(E=new ResizeObserver(m=>{var[f]=m;f&&f.target===l&&E&&(E.unobserve(A),cancelAnimationFrame(B),B=requestAnimationFrame(()=>{var D;(D=E)==null||D.observe(A)})),e()}),l&&!s&&E.observe(l),E.observe(A));var u=s?L1(t):null;return s&&(function m(){var f=L1(t);u&&!ste(u,f)&&e(),u=f,C=requestAnimationFrame(m)})(),e(),()=>{var m;c.forEach(f=>{n&&f.removeEventListener("scroll",e),o&&f.removeEventListener("resize",e)}),d?.(),(m=E)==null||m.disconnect(),E=null,s&&cancelAnimationFrame(C)}}var q6e=function(t){return t===void 0&&(t=0),{name:"offset",options:t,fn:A=>Ai(function*(){var e,i,{x:n,y:o,placement:a,middlewareData:r}=A,s=yield(function(l,c){return XN.apply(this,arguments)})(A,t);return a===((e=r.offset)==null?void 0:e.placement)&&(i=r.arrow)!=null&&i.alignmentOffset?{}:{x:n+s.x,y:o+s.y,data:UA(UA({},s),{},{placement:a})}})()}},Z6e=function(t){return t===void 0&&(t={}),{name:"shift",options:t,fn:A=>Ai(function*(){var{x:e,y:i,placement:n}=A,o=Zv(t,A),{mainAxis:a=!0,crossAxis:r=!1,limiter:s={fn:S=>{var{x:k,y:b}=S;return{x:k,y:b}}}}=o,l=hte(o,Ffe),c={x:e,y:i},C=yield Ane(A,l),d=Q2(F1(n)),B=Xie(d),E=c[B],u=c[d];if(a){var m=B==="y"?"bottom":"right";E=ete(E+C[B==="y"?"top":"left"],E,E-C[m])}if(r){var f=d==="y"?"bottom":"right";u=ete(u+C[d==="y"?"top":"left"],u,u-C[f])}var D=s.fn(UA(UA({},A),{},{[B]:E,[d]:u}));return UA(UA({},D),{},{data:{x:D.x-e,y:D.y-i,enabled:{[B]:a,[d]:r}}})})()}},W6e=function(t){return t===void 0&&(t={}),{name:"flip",options:t,fn:A=>Ai(function*(){var e,i,{placement:n,middlewareData:o,rects:a,initialPlacement:r,platform:s,elements:l}=A,c=Zv(t,A),{mainAxis:C=!0,crossAxis:d=!0,fallbackPlacements:B,fallbackStrategy:E="bestFit",fallbackAxisSideDirection:u="none",flipAlignment:m=!0}=c,f=hte(c,Nfe);if((e=o.arrow)!=null&&e.alignmentOffset)return{};var D=F1(n),S=Q2(r),k=F1(r)===r,b=yield s.isRTL==null?void 0:s.isRTL(l.floating),x=B||(k||!m?[av(r)]:(function(xe){var Xe=av(xe);return[ZN(xe),Xe,ZN(Xe)]})(r)),F=u!=="none";!B&&F&&x.push(...x6e(r,m,u,b));var P=[r,...x],j=yield Ane(A,f),X=[],Ae=((i=o.flip)==null?void 0:i.overflows)||[];if(C&&X.push(j[D]),d){var W=(function(xe,Xe,fA){fA===void 0&&(fA=!1);var Pe=Wv(xe),be=ene(xe),qe=$ie(be),st=be==="x"?Pe===(fA?"end":"start")?"right":"left":Pe==="start"?"bottom":"top";return Xe.reference[qe]>Xe.floating[qe]&&(st=av(st)),[st,av(st)]})(n,a,b);X.push(j[W[0]],j[W[1]])}if(Ae=[...Ae,{placement:n,overflows:X}],!X.every(xe=>xe<=0)){var Ce,we,Be=(((Ce=o.flip)==null?void 0:Ce.index)||0)+1,Ee=P[Be];if(Ee&&(!(d==="alignment"&&S!==Q2(Ee))||Ae.every(xe=>Q2(xe.placement)!==S||xe.overflows[0]>0)))return{data:{index:Be,overflows:Ae},reset:{placement:Ee}};var Ne=(we=Ae.filter(xe=>xe.overflows[0]<=0).sort((xe,Xe)=>xe.overflows[1]-Xe.overflows[1])[0])==null?void 0:we.placement;if(!Ne)switch(E){case"bestFit":var de,Ie=(de=Ae.filter(xe=>{if(F){var Xe=Q2(xe.placement);return Xe===S||Xe==="y"}return!0}).map(xe=>[xe.placement,xe.overflows.filter(Xe=>Xe>0).reduce((Xe,fA)=>Xe+fA,0)]).sort((xe,Xe)=>xe[1]-Xe[1])[0])==null?void 0:de[0];Ie&&(Ne=Ie);break;case"initialPlacement":Ne=r}if(n!==Ne)return{reset:{placement:Ne}}}return{}})()}};function X6e(t){var A,e,i={autoUpdate:!0},n=t,o=s=>UA(UA(UA({},i),t||{}),s||{}),a=s=>{A&&e&&(n=o(s),((l,c,C)=>{var d=new Map,B=UA({platform:j6e},C),E=UA(UA({},B.platform),{},{_c:d});return N6e(l,c,UA(UA({},B),{},{platform:E}))})(A,e,n).then(l=>{var c;Object.assign(e.style,{position:l.strategy,left:"".concat(l.x,"px"),top:"".concat(l.y,"px")}),!((c=n)===null||c===void 0)&&c.onComputed&&n.onComputed(l)}))},r=s=>{Tc(s.subscribe(l=>{A===void 0?(A=l,a()):(Object.assign(A,l),a())}))};return[s=>{if("subscribe"in s)return r(s),{};A=s,a()},(s,l)=>{var c;e=s,n=o(l),setTimeout(()=>a(l),0),a(l);var C=()=>{c&&(c(),c=void 0)},d=function(){var{autoUpdate:B}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:n||{};C(),B!==!1&&aie().then(()=>V6e(A,e,()=>a(n),B===!0?{}:B))};return c=d(),{update(B){a(B),c=d(B)},destroy(){C()}}},a]}function $6e(t){var{loadOptions:A,filterText:e,items:i,multiple:n,value:o,itemId:a,groupBy:r,filterSelectedItems:s,itemFilter:l,convertStringItemsToObjects:c,filterGroupedItems:C,label:d}=t;if(i&&A)return i;if(!i)return[];i&&i.length>0&&typeof i[0]!="object"&&(i=c(i));var B=i.filter(E=>{var u=l(E[d],e,E);return u&&n&&o!=null&&o.length&&(u=!o.some(m=>!!s&&m[a]===E[a])),u});return r&&(B=C(B)),B}function e8e(t){return sne.apply(this,arguments)}function sne(){return(sne=Ai(function*(t){var{dispatch:A,loadOptions:e,convertStringItemsToObjects:i,filterText:n}=t,o=yield e(n).catch(a=>{console.warn("svelte-select loadOptions error :>> ",a),A("error",{type:"loadOptions",details:a})});if(o&&!o.cancelled)return o?(o&&o.length>0&&typeof o[0]!="object"&&(o=i(o)),A("loaded",{items:o})):o=[],{filteredItems:o,loading:!1,focused:!0,listOpen:!0}})).apply(this,arguments)}si(` + svg.svelte-1kxu7be { + width: var(--chevron-icon-width, 20px); + height: var(--chevron-icon-width, 20px); + color: var(--chevron-icon-colour, currentColor); + } +`);var A8e=_2(``);si(` + svg.svelte-1hraxrc { + width: var(--clear-icon-width, 20px); + height: var(--clear-icon-width, 20px); + color: var(--clear-icon-color, currentColor); + } +`);var t8e=_2(``);function yN(t){se(t,t8e())}si(` + .loading.svelte-y9fi5p { + width: var(--spinner-width, 20px); + height: var(--spinner-height, 20px); + color: var(--spinner-color, var(--icons-color)); + animation: svelte-y9fi5p-rotate 0.75s linear infinite; + transform-origin: center center; + transform: none; + } + + .circle_path.svelte-y9fi5p { + stroke-dasharray: 90; + stroke-linecap: round; + } + + @keyframes svelte-y9fi5p-rotate { + 100% { + transform: rotate(360deg); + } + } +`);var i8e=_2('');si(` + .svelte-select.svelte-1ul7oo4 { + /* deprecating camelCase custom props in favour of kebab-case for v5 */ + --borderRadius: var(--border-radius); + --clearSelectColor: var(--clear-select-color); + --clearSelectWidth: var(--clear-select-width); + --disabledBackground: var(--disabled-background); + --disabledBorderColor: var(--disabled-border-color); + --disabledColor: var(--disabled-color); + --disabledPlaceholderColor: var(--disabled-placeholder-color); + --disabledPlaceholderOpacity: var(--disabled-placeholder-opacity); + --errorBackground: var(--error-background); + --errorBorder: var(--error-border); + --groupItemPaddingLeft: var(--group-item-padding-left); + --groupTitleColor: var(--group-title-color); + --groupTitleFontSize: var(--group-title-font-size); + --groupTitleFontWeight: var(--group-title-font-weight); + --groupTitlePadding: var(--group-title-padding); + --groupTitleTextTransform: var(--group-title-text-transform); + --groupTitleBorderColor: var(--group-title-border-color); + --groupTitleBorderWidth: var(--group-title-border-width); + --groupTitleBorderStyle: var(--group-title-border-style); + --indicatorColor: var(--chevron-color); + --indicatorHeight: var(--chevron-height); + --indicatorWidth: var(--chevron-width); + --inputColor: var(--input-color); + --inputLeft: var(--input-left); + --inputLetterSpacing: var(--input-letter-spacing); + --inputMargin: var(--input-margin); + --inputPadding: var(--input-padding); + --itemActiveBackground: var(--item-active-background); + --itemColor: var(--item-color); + --itemFirstBorderRadius: var(--item-first-border-radius); + --itemHoverBG: var(--item-hover-bg); + --itemHoverColor: var(--item-hover-color); + --itemIsActiveBG: var(--item-is-active-bg); + --itemIsActiveColor: var(--item-is-active-color); + --itemIsNotSelectableColor: var(--item-is-not-selectable-color); + --itemPadding: var(--item-padding); + --listBackground: var(--list-background); + --listBorder: var(--list-border); + --listBorderRadius: var(--list-border-radius); + --listEmptyColor: var(--list-empty-color); + --listEmptyPadding: var(--list-empty-padding); + --listEmptyTextAlign: var(--list-empty-text-align); + --listMaxHeight: var(--list-max-height); + --listPosition: var(--list-position); + --listShadow: var(--list-shadow); + --listZIndex: var(--list-z-index); + --multiItemBG: var(--multi-item-bg); + --multiItemBorderRadius: var(--multi-item-border-radius); + --multiItemDisabledHoverBg: var(--multi-item-disabled-hover-bg); + --multiItemDisabledHoverColor: var(--multi-item-disabled-hover-color); + --multiItemHeight: var(--multi-item-height); + --multiItemMargin: var(--multi-item-margin); + --multiItemPadding: var(--multi-item-padding); + --multiSelectInputMargin: var(--multi-select-input-margin); + --multiSelectInputPadding: var(--multi-select-input-padding); + --multiSelectPadding: var(--multi-select-padding); + --placeholderColor: var(--placeholder-color); + --placeholderOpacity: var(--placeholder-opacity); + --selectedItemPadding: var(--selected-item-padding); + --spinnerColor: var(--spinner-color); + --spinnerHeight: var(--spinner-height); + --spinnerWidth: var(--spinner-width); + + --internal-padding: 0 0 0 16px; + + border: var(--border, 1px solid #d8dbdf); + border-radius: var(--border-radius, 6px); + min-height: var(--height, 42px); + position: relative; + display: flex; + align-items: stretch; + padding: var(--padding, var(--internal-padding)); + background: var(--background, #fff); + margin: var(--margin, 0); + width: var(--width, 100%); + font-size: var(--font-size, 16px); + max-height: var(--max-height); + } + + .svelte-1ul7oo4 { + box-sizing: var(--box-sizing, border-box); + } + + .svelte-select.svelte-1ul7oo4:hover { + border: var(--border-hover, 1px solid #b2b8bf); + } + + .value-container.svelte-1ul7oo4 { + display: flex; + flex: 1 1 0%; + flex-wrap: wrap; + align-items: center; + gap: 5px 10px; + padding: var(--value-container-padding, 5px 0); + position: relative; + overflow: var(--value-container-overflow, hidden); + align-self: stretch; + } + + .prepend.svelte-1ul7oo4, + .indicators.svelte-1ul7oo4 { + display: flex; + flex-shrink: 0; + align-items: center; + } + + .indicators.svelte-1ul7oo4 { + position: var(--indicators-position); + top: var(--indicators-top); + right: var(--indicators-right); + bottom: var(--indicators-bottom); + } + + input.svelte-1ul7oo4 { + position: absolute; + cursor: default; + border: none; + color: var(--input-color, var(--item-color)); + padding: var(--input-padding, 0); + letter-spacing: var(--input-letter-spacing, inherit); + margin: var(--input-margin, 0); + min-width: 10px; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: transparent; + font-size: var(--font-size, 16px); + } + + .svelte-1ul7oo4:not(.multi) > .value-container:where(.svelte-1ul7oo4) > input:where(.svelte-1ul7oo4) { + width: 100%; + height: 100%; + } + + input.svelte-1ul7oo4::placeholder { + color: var(--placeholder-color, #78848f); + opacity: var(--placeholder-opacity, 1); + } + + input.svelte-1ul7oo4:focus { + outline: none; + } + + .svelte-select.focused.svelte-1ul7oo4 { + border: var(--border-focused, 1px solid #006fe8); + border-radius: var(--border-radius-focused, var(--border-radius, 6px)); + } + + .disabled.svelte-1ul7oo4 { + background: var(--disabled-background, #ebedef); + border-color: var(--disabled-border-color, #ebedef); + color: var(--disabled-color, #c1c6cc); + } + + .disabled.svelte-1ul7oo4 input:where(.svelte-1ul7oo4)::placeholder { + color: var(--disabled-placeholder-color, #c1c6cc); + opacity: var(--disabled-placeholder-opacity, 1); + } + + .selected-item.svelte-1ul7oo4 { + position: relative; + overflow: var(--selected-item-overflow, hidden); + padding: var(--selected-item-padding, 0 20px 0 0); + text-overflow: ellipsis; + white-space: nowrap; + color: var(--selected-item-color, inherit); + font-size: var(--font-size, 16px); + } + + .multi.svelte-1ul7oo4 .selected-item:where(.svelte-1ul7oo4) { + position: absolute; + line-height: var(--height, 42px); + height: var(--height, 42px); + } + + .selected-item.svelte-1ul7oo4:focus { + outline: none; + } + + .hide-selected-item.svelte-1ul7oo4 { + opacity: 0; + } + + .icon.svelte-1ul7oo4 { + display: flex; + align-items: center; + justify-content: center; + } + + .clear-select.svelte-1ul7oo4 { + all: unset; + display: flex; + align-items: center; + justify-content: center; + width: var(--clear-select-width, 40px); + height: var(--clear-select-height, 100%); + color: var(--clear-select-color, var(--icons-color)); + margin: var(--clear-select-margin, 0); + pointer-events: all; + flex-shrink: 0; + } + + .clear-select.svelte-1ul7oo4:focus { + outline: var(--clear-select-focus-outline, 1px solid #006fe8); + } + + .loading.svelte-1ul7oo4 { + width: var(--loading-width, 40px); + height: var(--loading-height); + color: var(--loading-color, var(--icons-color)); + margin: var(--loading--margin, 0); + flex-shrink: 0; + } + + .chevron.svelte-1ul7oo4 { + width: var(--chevron-width, 40px); + height: var(--chevron-height, 40px); + background: var(--chevron-background, transparent); + pointer-events: var(--chevron-pointer-events, none); + color: var(--chevron-color, var(--icons-color)); + border: var(--chevron-border, 0 0 0 1px solid #d8dbdf); + flex-shrink: 0; + } + + .multi.svelte-1ul7oo4 { + padding: var(--multi-select-padding, var(--internal-padding)); + } + + .multi.svelte-1ul7oo4 input:where(.svelte-1ul7oo4) { + padding: var(--multi-select-input-padding, 0); + position: relative; + margin: var(--multi-select-input-margin, 5px 0); + flex: 1 1 40px; + } + + .svelte-select.error.svelte-1ul7oo4 { + border: var(--error-border, 1px solid #ff2d55); + background: var(--error-background, #fff); + } + + .a11y-text.svelte-1ul7oo4 { + z-index: 9999; + border: 0px; + clip: rect(1px, 1px, 1px, 1px); + height: 1px; + width: 1px; + position: absolute; + overflow: hidden; + padding: 0px; + white-space: nowrap; + } + + .multi-item.svelte-1ul7oo4 { + background: var(--multi-item-bg, #ebedef); + margin: var(--multi-item-margin, 0); + outline: var(--multi-item-outline, 1px solid #ddd); + border-radius: var(--multi-item-border-radius, 4px); + height: var(--multi-item-height, 25px); + line-height: var(--multi-item-height, 25px); + display: flex; + cursor: default; + padding: var(--multi-item-padding, 0 5px); + overflow: hidden; + gap: var(--multi-item-gap, 4px); + outline-offset: -1px; + max-width: var(--multi-max-width, none); + color: var(--multi-item-color, var(--item-color)); + } + + .multi-item.disabled.svelte-1ul7oo4:hover { + background: var(--multi-item-disabled-hover-bg, #ebedef); + color: var(--multi-item-disabled-hover-color, #c1c6cc); + } + + .multi-item-text.svelte-1ul7oo4 { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + + .multi-item-clear.svelte-1ul7oo4 { + display: flex; + align-items: center; + justify-content: center; + --clear-icon-color: var(--multi-item-clear-icon-color, #000); + } + + .multi-item.active.svelte-1ul7oo4 { + outline: var(--multi-item-active-outline, 1px solid #006fe8); + } + + .svelte-select-list.svelte-1ul7oo4 { + box-shadow: var(--list-shadow, 0 2px 3px 0 rgba(44, 62, 80, 0.24)); + border-radius: var(--list-border-radius, 4px); + max-height: var(--list-max-height, 252px); + overflow-y: auto; + background: var(--list-background, #fff); + position: var(--list-position, absolute); + z-index: var(--list-z-index, 2); + border: var(--list-border); + } + + .prefloat.svelte-1ul7oo4 { + opacity: 0; + pointer-events: none; + } + + .list-group-title.svelte-1ul7oo4 { + color: var(--group-title-color, #8f8f8f); + cursor: default; + font-size: var(--group-title-font-size, 16px); + font-weight: var(--group-title-font-weight, 600); + height: var(--height, 42px); + line-height: var(--height, 42px); + padding: var(--group-title-padding, 0 20px); + text-overflow: ellipsis; + overflow-x: hidden; + white-space: nowrap; + text-transform: var(--group-title-text-transform, uppercase); + border-width: var(--group-title-border-width, medium); + border-style: var(--group-title-border-style, none); + border-color: var(--group-title-border-color, color); + } + + .empty.svelte-1ul7oo4 { + text-align: var(--list-empty-text-align, center); + padding: var(--list-empty-padding, 20px 0); + color: var(--list-empty-color, #78848f); + } + + .item.svelte-1ul7oo4 { + cursor: default; + height: var(--item-height, var(--height, 42px)); + line-height: var(--item-line-height, var(--height, 42px)); + padding: var(--item-padding, 0 20px); + color: var(--item-color, inherit); + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + transition: var(--item-transition, all 0.2s); + align-items: center; + width: 100%; + } + + .item.group-item.svelte-1ul7oo4 { + padding-left: var(--group-item-padding-left, 40px); + } + + .item.svelte-1ul7oo4:active { + background: var(--item-active-background, #b9daff); + } + + .item.active.svelte-1ul7oo4 { + background: var(--item-is-active-bg, #007aff); + color: var(--item-is-active-color, #fff); + } + + .item.first.svelte-1ul7oo4 { + border-radius: var(--item-first-border-radius, 4px 4px 0 0); + } + + .item.hover.svelte-1ul7oo4:not(.active) { + background: var(--item-hover-bg, #e7f2ff); + color: var(--item-hover-color, inherit); + } + + .item.not-selectable.svelte-1ul7oo4, + .item.hover.item.not-selectable.svelte-1ul7oo4, + .item.active.item.not-selectable.svelte-1ul7oo4, + .item.not-selectable.svelte-1ul7oo4:active { + color: var(--item-is-not-selectable-color, #999); + background: transparent; + } + + .required.svelte-1ul7oo4 { + opacity: 0; + z-index: -1; + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + } +`);var n8e=Oe('
      '),o8e=Oe('
      No options
      '),a8e=Oe('
      '),r8e=Oe(' ',1),s8e=Oe('
      '),l8e=Oe('
      '),c8e=Oe("
      "),g8e=Oe(''),C8e=Oe(''),d8e=Oe(''),I8e=Oe(''),B8e=Oe(''),h8e=Oe('
      ');function p1(t,A){var e=(function(ue){var Ge={};for(var IA in ue.children&&(Ge.default=!0),ue.$$slots)Ge[IA]=!0;return Ge})(A);Ht(A,!1);var i,n=ge(),o=ge(),a=ge(),r=ge(),s=ge(),l=ge(),c=ge(),C=ge(),d=ge(),B=c3e(),E=K(A,"justValue",12,null),u=K(A,"filter",8,$6e),m=K(A,"getItems",8,e8e),f=K(A,"id",8,null),D=K(A,"name",8,null),S=K(A,"container",12,void 0),k=K(A,"input",12,void 0),b=K(A,"multiple",8,!1),x=K(A,"multiFullItemClearable",8,!1),F=K(A,"disabled",8,!1),P=K(A,"focused",12,!1),j=K(A,"value",12,null),X=K(A,"filterText",12,""),Ae=K(A,"placeholder",8,"Please select"),W=K(A,"placeholderAlwaysShow",8,!1),Ce=K(A,"items",12,null),we=K(A,"label",8,"label"),Be=K(A,"itemFilter",8,(ue,Ge,IA)=>"".concat(ue).toLowerCase().includes(Ge.toLowerCase())),Ee=K(A,"groupBy",8,void 0),Ne=K(A,"groupFilter",8,ue=>ue),de=K(A,"groupHeaderSelectable",8,!1),Ie=K(A,"itemId",8,"value"),xe=K(A,"loadOptions",8,void 0),Xe=K(A,"containerStyles",8,""),fA=K(A,"hasError",8,!1),Pe=K(A,"filterSelectedItems",8,!0),be=K(A,"required",8,!1),qe=K(A,"closeListOnChange",8,!0),st=K(A,"clearFilterTextOnBlur",8,!0),it=K(A,"createGroupHeaderItem",8,(ue,Ge)=>({value:ue,[we()]:ue})),He=()=>g(c),he=K(A,"searchable",8,!0),tA=K(A,"inputStyles",8,""),pe=K(A,"clearable",8,!0),oA=K(A,"loading",12,!1),Fe=K(A,"listOpen",12,!1),OA=K(A,"debounce",8,function(ue){var Ge=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;clearTimeout(i),i=setTimeout(ue,Ge)}),ze=K(A,"debounceWait",8,300),ye=K(A,"hideEmptyState",8,!1),qt=K(A,"inputAttributes",24,()=>({})),St=K(A,"listAutoWidth",8,!0),yA=K(A,"showChevron",8,!1),ei=K(A,"listOffset",8,5),WA=K(A,"hoverItemIndex",12,0),et=K(A,"floatingConfig",24,()=>({})),kt=K(A,"class",8,""),JA=ge(),ui=ge(),V=ge(),$=ge(),ie=ge();function oe(ue){return ue.map((Ge,IA)=>({index:IA,value:Ge,label:"".concat(Ge)}))}function Te(ue){var Ge=[],IA={};ue.forEach(Bt=>{var Et=Ee()(Bt);Ge.includes(Et)||(Ge.push(Et),IA[Et]=[],Et&&IA[Et].push(Object.assign(it()(Et,Bt),{id:Et,groupHeader:!0,selectable:de()}))),IA[Et].push(Object.assign({groupItem:!!Et},Bt))});var HA=[];return Ne()(Ge).forEach(Bt=>{IA[Bt]&&HA.push(...IA[Bt])}),HA}function QA(){var ue=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,Ge=arguments.length>1?arguments[1]:void 0;WA(ue<0?0:ue),!Ge&&Ee()&&g(c)[WA()]&&!g(c)[WA()].selectable&&Si(1)}function vA(){var ue=!0;if(j()){var Ge=[],IA=[];j().forEach(HA=>{Ge.includes(HA[Ie()])?ue=!1:(Ge.push(HA[Ie()]),IA.push(HA))}),ue||j(IA)}return ue}function Ke(ue){var Ge=ue?ue[Ie()]:j()[Ie()];return Ce().find(IA=>IA[Ie()]===Ge)}function Je(ue){return bt.apply(this,arguments)}function bt(){return(bt=Ai(function*(ue){var Ge=j()[ue];j().length===1?j(void 0):j(j().filter(IA=>IA!==Ge)),B("clear",Ge)})).apply(this,arguments)}function Ct(ue){if(P())switch(ue.stopPropagation(),ue.key){case"Escape":ue.preventDefault(),qA();break;case"Enter":if(ue.preventDefault(),Fe()){if(g(c).length===0)break;var Ge=g(c)[WA()];if(j()&&!b()&&j()[Ie()]===Ge[Ie()]){qA();break}J(g(c)[WA()])}break;case"ArrowDown":ue.preventDefault(),Fe()?Si(1):(Fe(!0),N(JA,void 0));break;case"ArrowUp":ue.preventDefault(),Fe()?Si(-1):(Fe(!0),N(JA,void 0));break;case"Tab":if(Fe()&&P()){if(g(c).length===0||j()&&j()[Ie()]===g(c)[WA()][Ie()])return qA();ue.preventDefault(),J(g(c)[WA()]),qA()}break;case"Backspace":if(!b()||X().length>0)return;if(b()&&j()&&j().length>0){if(Je(g(JA)!==void 0?g(JA):j().length-1),g(JA)===0||g(JA)===void 0)break;N(JA,j().length>g(JA)?g(JA)-1:void 0)}break;case"ArrowLeft":if(!j()||!b()||X().length>0)return;g(JA)===void 0?N(JA,j().length-1):j().length>g(JA)&&g(JA)!==0&&N(JA,g(JA)-1);break;case"ArrowRight":if(!j()||!b()||X().length>0||g(JA)===void 0)return;g(JA)===j().length-1?N(JA,void 0):g(JA)0?Fe(!0):void Fe(!Fe())}function kn(){B("clear",j()),j(void 0),qA(),XA()}function qA(){st()&&X(""),Fe(!1)}g3e(Ai(function*(){N(ui,j()),N(V,X()),N($,b())})),gs(()=>{Fe()&&P(!0),P()&&k()&&k().focus()});var En=K(A,"ariaValues",8,ue=>"Option ".concat(ue,", selected.")),Ui=K(A,"ariaListOpen",8,(ue,Ge)=>"You are currently focused on option ".concat(ue,". There are ").concat(Ge," results available.")),Vi=K(A,"ariaFocused",8,()=>"Select is focused, type to refine list, press down to open the menu."),Cn,Gt=ge(null);function Qn(){clearTimeout(Cn),Cn=setTimeout(()=>{Zt=!1},100)}Tc(()=>{var ue;(ue=g(Gt))===null||ue===void 0||ue.remove()});var Zt=!1;function J(ue){ue&&ue.selectable!==!1&&(function(Ge){if(Ge){X("");var IA=Object.assign({},Ge);if(IA.groupHeader&&!IA.selectable)return;j(b()?j()?j().concat([IA]):[IA]:j(IA)),setTimeout(()=>{qe()&&qA(),N(JA,void 0),B("change",j()),B("select",Ge)})}})(ue)}function wt(ue){Zt||WA(ue)}function Si(ue){if(g(c).filter(IA=>!Object.hasOwn(IA,"selectable")||IA.selectable===!0).length===0)return WA(0);ue>0&&WA()===g(c).length-1?WA(0):ue<0&&WA()===0?WA(g(c).length-1):WA(WA()+ue);var Ge=g(c)[WA()];Ge&&Ge.selectable===!1&&(ue!==1&&ue!==-1||Si(ue))}function _n(ue,Ge,IA){if(!b())return Ge&&Ge[IA]===ue[IA]}var xn=ra,Io=ra;function ra(ue){return{update(Ge){Ge.scroll&&(Qn(),ue.scrollIntoView({behavior:"auto",block:"nearest"}))}}}var ko=ge({strategy:"absolute",placement:"bottom-start",middleware:[q6e(ei()),W6e(),Z6e()],autoUpdate:!1}),[Zo,Ba,To]=X6e(g(ko)),_a=ge(!0);Ue(()=>(z(Ce()),z(j())),()=>{Ce(),j()&&(function(){if(typeof j()=="string"){var ue=(Ce()||[]).find(Ge=>Ge[Ie()]===j());j(ue||{[Ie()]:j(),label:j()})}else b()&&Array.isArray(j())&&j().length>0&&j(j().map(Ge=>typeof Ge=="string"?{value:Ge,label:Ge}:Ge))})()}),Ue(()=>(z(qt()),z(he())),()=>{!qt()&&he()||(N(ie,Object.assign({autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:!1,tabindex:0,type:"text","aria-autocomplete":"list"},qt())),f()&&ec(ie,g(ie).id=f()),he()||ec(ie,g(ie).readonly=!0))}),Ue(()=>z(b()),()=>{b()&&j()&&(Array.isArray(j())?j([...j()]):j([j()]))}),Ue(()=>(g($),z(b())),()=>{g($)&&!b()&&j()&&j(null)}),Ue(()=>(z(b()),z(j())),()=>{b()&&j()&&j().length>1&&vA()}),Ue(()=>z(j()),()=>{j()&&(b()?JSON.stringify(j())!==JSON.stringify(g(ui))&&vA()&&B("input",j()):g(ui)&&JSON.stringify(j()[Ie()])===JSON.stringify(g(ui)[Ie()])||B("input",j()))}),Ue(()=>(z(j()),z(b()),g(ui)),()=>{!j()&&b()&&g(ui)&&B("input",j())}),Ue(()=>(z(P()),z(k())),()=>{!P()&&k()&&qA()}),Ue(()=>(z(X()),g(V)),()=>{X()!==g(V)&&(xe()||X().length!==0)&&(xe()?OA()(Ai(function*(){oA(!0);var ue=yield m()({dispatch:B,loadOptions:xe(),convertStringItemsToObjects:oe,filterText:X()});ue?(oA(ue.loading),Fe(Fe()?ue.listOpen:X().length>0),P(Fe()&&ue.focused),Ce(Ee()?Te(ue.filteredItems):ue.filteredItems)):(oA(!1),P(!0),Fe(!0))}),ze()):(Fe(!0),b()&&N(JA,void 0)))}),Ue(()=>(z(u()),z(xe()),z(X()),z(Ce()),z(b()),z(j()),z(Ie()),z(Ee()),z(we()),z(Pe()),z(Be())),()=>{N(c,u()({loadOptions:xe(),filterText:X(),items:Ce(),multiple:b(),value:j(),itemId:Ie(),groupBy:Ee(),label:we(),filterSelectedItems:Pe(),itemFilter:Be(),convertStringItemsToObjects:oe,filterGroupedItems:Te}))}),Ue(()=>(z(b()),z(Fe()),z(j()),g(c)),()=>{!b()&&Fe()&&j()&&g(c)&&QA(g(c).findIndex(ue=>ue[Ie()]===j()[Ie()]),!0)}),Ue(()=>(z(Fe()),z(b())),()=>{Fe()&&b()&&WA(0)}),Ue(()=>z(X()),()=>{X()&&WA(0)}),Ue(()=>z(WA()),()=>{var ue;ue=WA(),B("hoverItem",ue)}),Ue(()=>(z(b()),z(j())),()=>{N(n,b()?j()&&j().length>0:j())}),Ue(()=>(g(n),z(X())),()=>{N(o,g(n)&&X().length>0)}),Ue(()=>(g(n),z(pe()),z(F()),z(oA())),()=>{N(a,g(n)&&pe()&&!F()&&!oA())}),Ue(()=>(z(W()),z(b()),z(Ae()),z(j())),()=>{var ue;N(r,W()&&b()||b()&&((ue=j())===null||ue===void 0?void 0:ue.length)===0?Ae():j()?"":Ae())}),Ue(()=>(z(j()),z(b())),()=>{var ue,Ge;N(s,j()?(ue=b(),Ge=void 0,Ge=ue&&j().length>0?j().map(IA=>IA[we()]).join(", "):j()[we()],En()(Ge)):"")}),Ue(()=>(g(c),z(WA()),z(P()),z(Fe())),()=>{N(l,(function(){if(!g(c)||g(c).length===0)return"";var ue=g(c)[WA()];if(Fe()&&ue){var Ge=g(c)?g(c).length:0;return Ui()(ue[we()],Ge)}return Vi()()})((g(c),WA(),P(),Fe())))}),Ue(()=>z(Ce()),()=>{(function(ue){ue&&ue.length!==0&&!ue.some(Ge=>typeof Ge!="object")&&j()&&(b()?!j().some(Ge=>!Ge||!Ge[Ie()]):j()[Ie()])&&(Array.isArray(j())?j(j().map(Ge=>Ke(Ge)||Ge)):j(Ke()||j()))})(Ce())}),Ue(()=>(z(b()),z(j()),z(Ie())),()=>{E((b(),j(),Ie(),b()?j()?j().map(ue=>ue[Ie()]):null:j()?j()[Ie()]:j()))}),Ue(()=>(z(b()),g(ui),z(j())),()=>{b()||!g(ui)||j()||B("input",j())}),Ue(()=>(z(Fe()),g(c),z(b()),z(j())),()=>{Fe()&&g(c)&&!b()&&!j()&&QA()}),Ue(()=>g(c),()=>{(function(ue){Fe()&&B("filter",ue)})(g(c))}),Ue(()=>(z(S()),z(et()),g(ko)),()=>{S()&&et()&&To(Object.assign(g(ko),et()))}),Ue(()=>g(Gt),()=>{N(C,!!g(Gt))}),Ue(()=>(g(Gt),z(Fe())),()=>{(function(ue,Ge){if(!ue||!Ge)return N(_a,!0);setTimeout(()=>{N(_a,!1)},0)})(g(Gt),Fe())}),Ue(()=>(z(Fe()),z(S()),g(Gt)),()=>{Fe()&&S()&&g(Gt)&&(function(){var{width:ue}=S().getBoundingClientRect();ec(Gt,g(Gt).style.width=St()?ue+"px":"auto")})()}),Ue(()=>z(WA()),()=>{N(d,WA())}),Ue(()=>(z(k()),z(Fe()),z(P())),()=>{k()&&Fe()&&!P()&&XA()}),Ue(()=>(z(S()),z(et())),()=>{var ue;S()&&((ue=et())===null||ue===void 0?void 0:ue.autoUpdate)===void 0&&ec(ko,g(ko).autoUpdate=!0)}),qn();var ha={getFilteredItems:He,handleClear:kn};hi();var va,Oo=h8e();bA("click",jC,function(ue){var Ge;Fe()||P()||!S()||S().contains(ue.target)||(Ge=g(Gt))!==null&&Ge!==void 0&&Ge.contains(ue.target)||ZA()}),bA("keydown",jC,Ct);var BA=ce(Oo),Ri=ue=>{var Ge,IA=a8e(),HA=ce(IA),Bt=li=>{var en=ji();Sa(ct(en),A,"list-prepend",{},null),se(li,en)};je(HA,li=>{Qe(()=>e["list-prepend"])&&li(Bt)});var Et=ke(HA,2),Jt=li=>{var en=ji();Sa(ct(en),A,"list",{get filteredItems(){return g(c)}},null),se(li,en)},no=li=>{var en=ji(),Ua=ct(en),Wt=An=>{var dn=ji();ka(ct(dn),1,()=>g(c),za,(Bo,Nn,zt)=>{var Da,la=n8e(),y=ce(la);Sa(ce(y),A,"item",{get item(){return g(Nn)},index:zt},M=>{var R=Mr();TA(()=>jt(R,(g(Nn),z(we()),Qe(()=>{var Z;return(Z=g(Nn))===null||Z===void 0?void 0:Z[we()]})))),se(M,R)}),Ns(y,(M,R)=>xn?.(M),()=>({scroll:_n(g(Nn),j(),Ie()),listDom:g(C)})),Ns(y,(M,R)=>Io?.(M),()=>({scroll:g(d)===zt,listDom:g(C)})),TA(M=>Da=Bi(y,1,"item svelte-1ul7oo4",null,Da,M),[()=>{var M,R;return{"list-group-title":g(Nn).groupHeader,active:_n(g(Nn),j(),Ie()),first:(R=zt,R===0),hover:WA()===zt,"group-item":g(Nn).groupItem,"not-selectable":((M=g(Nn))===null||M===void 0?void 0:M.selectable)===!1}}]),bA("mouseover",la,()=>wt(zt)),bA("focus",la,()=>wt(zt)),bA("click",la,UC(()=>(function(M){var{item:R,i:Z}=M;if(R?.selectable!==!1)return j()&&!b()&&j()[Ie()]===R[Ie()]?qA():void((function(_){return _.groupHeader&&_.selectable||_.selectable||!_.hasOwnProperty("selectable")})(R)&&(WA(Z),J(R)))})({item:g(Nn),i:zt}))),bA("keydown",la,c2(UC(function(M){V4.call(this,A,M)}))),se(Bo,la)}),se(An,dn)},Qt=An=>{var dn=ji(),Bo=ct(dn),Nn=zt=>{var Da=ji();Sa(ct(Da),A,"empty",{},la=>{se(la,o8e())}),se(zt,Da)};je(Bo,zt=>{ye()||zt(Nn)},!0),se(An,dn)};je(Ua,An=>{g(c),Qe(()=>g(c).length>0)?An(Wt):An(Qt,!1)},!0),se(li,en)};je(Et,li=>{Qe(()=>e.list)?li(Jt):li(no,!1)});var $i=ke(Et,2),an=li=>{var en=ji();Sa(ct(en),A,"list-append",{},null),se(li,en)};je($i,li=>{Qe(()=>e["list-append"])&&li(an)}),Ns(IA,li=>Ba?.(li)),na(IA,li=>N(Gt,li),()=>g(Gt)),Pr(()=>bA("scroll",IA,Qn)),Pr(()=>bA("pointerup",IA,c2(UC(function(li){V4.call(this,A,li)})))),Pr(()=>bA("mousedown",IA,c2(UC(function(li){V4.call(this,A,li)})))),TA(()=>Ge=Bi(IA,1,"svelte-select-list svelte-1ul7oo4",null,Ge,{prefloat:g(_a)})),se(ue,IA)};je(BA,ue=>{Fe()&&ue(Ri)});var vn=ke(BA,2),Rn=ce(vn),sa=ue=>{var Ge=r8e(),IA=ct(Ge),HA=ce(IA),Bt=ce(ke(IA,2));TA(()=>{jt(HA,g(s)),jt(Bt,g(l))}),se(ue,Ge)};je(Rn,ue=>{P()&&ue(sa)});var Ka=ke(vn,2);Sa(ce(Ka),A,"prepend",{},null);var zi=ke(Ka,2),_o=ce(zi),Cr=ue=>{var Ge=ji(),IA=ct(Ge),HA=Et=>{var Jt=ji();ka(ct(Jt),1,j,za,(no,$i,an)=>{var li,en=l8e(),Ua=ce(en);Sa(ce(Ua),A,"selection",{get selection(){return g($i)},index:an},An=>{var dn=Mr();TA(()=>jt(dn,(g($i),z(we()),Qe(()=>g($i)[we()])))),se(An,dn)});var Wt=ke(Ua,2),Qt=An=>{var dn=s8e();Sa(ce(dn),A,"multi-clear-icon",{},Bo=>{yN(Bo)}),bA("pointerup",dn,c2(UC(()=>Je(an)))),se(An,dn)};je(Wt,An=>{F()||x()||!yN||An(Qt)}),TA(()=>li=Bi(en,1,"multi-item svelte-1ul7oo4",null,li,{active:g(JA)===an,disabled:F()})),bA("click",en,c2(()=>x()?Je(an):{})),bA("keydown",en,c2(UC(function(An){V4.call(this,A,An)}))),se(no,en)}),se(Et,Jt)},Bt=Et=>{var Jt,no=c8e();Sa(ce(no),A,"selection",{get selection(){return j()}},$i=>{var an=Mr();TA(()=>jt(an,(z(j()),z(we()),Qe(()=>j()[we()])))),se($i,an)}),TA(()=>Jt=Bi(no,1,"selected-item svelte-1ul7oo4",null,Jt,{"hide-selected-item":g(o)})),se(Et,no)};je(IA,Et=>{b()?Et(HA):Et(Bt,!1)}),se(ue,Ge)};je(_o,ue=>{g(n)&&ue(Cr)});var Jo=ke(_o,2);hv(Jo,()=>UA(UA({readOnly:!he()},g(ie)),{},{placeholder:g(r),style:tA(),disabled:F()}),void 0,void 0,void 0,"svelte-1ul7oo4",!0),na(Jo,ue=>k(ue),()=>k());var $a=ke(zi,2),io=ce($a),Xi=ue=>{var Ge=g8e();Sa(ce(Ge),A,"loading-icon",{},IA=>{(function(HA){se(HA,i8e())})(IA)}),se(ue,Ge)};je(io,ue=>{oA()&&ue(Xi)});var ni=ke(io,2),Zn=ue=>{var Ge=C8e();Sa(ce(Ge),A,"clear-icon",{},IA=>{yN(IA)}),bA("click",Ge,kn),se(ue,Ge)};je(ni,ue=>{g(a)&&ue(Zn)});var xo=ke(ni,2),Wo=ue=>{var Ge=d8e();Sa(ce(Ge),A,"chevron-icon",{get listOpen(){return Fe()}},IA=>{(function(HA){se(HA,A8e())})(IA)}),se(ue,Ge)};je(xo,ue=>{yA()&&ue(Wo)});var Se=ke($a,2);Sa(Se,A,"input-hidden",{get value(){return j()}},ue=>{var Ge=I8e();TA(IA=>{Vn(Ge,"name",D()),x1(Ge,IA)},[()=>(z(j()),Qe(()=>j()?JSON.stringify(j()):null))]),se(ue,Ge)});var iA=ke(Se,2),kA=ue=>{var Ge=ji();Sa(ct(Ge),A,"required",{get value(){return j()}},IA=>{se(IA,B8e())}),se(ue,Ge)};return je(iA,ue=>{z(be()),z(j()),Qe(()=>be()&&(!j()||j().length===0))&&ue(kA)}),Pr(()=>bA("pointerup",Oo,c2(yn))),na(Oo,ue=>S(ue),()=>S()),Ns(Oo,ue=>Zo?.(ue)),TA(()=>{var ue;va=Bi(Oo,1,"svelte-select ".concat((ue=kt())!==null&&ue!==void 0?ue:""),"svelte-1ul7oo4",va,{multi:b(),disabled:F(),focused:P(),"list-open":Fe(),"show-chevron":yA(),error:fA()}),Kc(Oo,Xe())}),bA("keydown",Jo,Ct),bA("blur",Jo,ZA),bA("focus",Jo,XA),vv(Jo,X),se(t,Oo),ii(A,"getFilteredItems",He),ii(A,"handleClear",kn),Pt(ha)}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +table.jse-transform-wizard.svelte-9wqi8y { + border-collapse: collapse; + border-spacing: 0; + width: 100%; +} +table.jse-transform-wizard.svelte-9wqi8y input:where(.svelte-9wqi8y) { + font-family: inherit; + font-size: inherit; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) th:where(.svelte-9wqi8y) { + font-weight: normal; + text-align: left; + width: 60px; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) { + width: 100%; + display: flex; + flex-direction: row; + margin-bottom: calc(0.5 * var(--jse-padding, 10px)); +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select .multi-item { + align-items: center; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select .value-container { + gap: 0 !important; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-filter-path { + flex: 4; + margin-right: calc(0.5 * var(--jse-padding, 10px)); +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-filter-relation { + flex: 1.5; + margin-right: calc(0.5 * var(--jse-padding, 10px)); +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-sort-path { + flex: 3; + margin-right: calc(0.5 * var(--jse-padding, 10px)); +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-sort-direction { + flex: 1; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select.jse-projection-paths { + flex: 1; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .svelte-select input { + box-sizing: border-box; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .jse-filter-value:where(.svelte-9wqi8y) { + flex: 4; + padding: 4px 8px; + border: var(--jse-input-border, 1px solid #d8dbdf); + border-radius: var(--jse-input-radius, 3px); + outline: none; + background: var(--jse-input-background, var(--jse-background-color, #fff)); + color: inherit; +} +table.jse-transform-wizard.svelte-9wqi8y tr:where(.svelte-9wqi8y) td:where(.svelte-9wqi8y) .jse-horizontal:where(.svelte-9wqi8y) .jse-filter-value:where(.svelte-9wqi8y):focus { + border: var(--jse-input-border-focus, 1px solid var(--jse-input-border-focus, var(--jse-theme-color, #3883fa))); +}`);var u8e=Oe('
      Filter
      Sort
      Pick
      ');function E8e(t,A){var e,i,n,o,a;Ht(A,!1);var r=ge(void 0,!0),s=ge(void 0,!0),l=ge(void 0,!0),c=ge(void 0,!0),C=ge(void 0,!0),d=ge(void 0,!0),B=Qr("jsoneditor:TransformWizard"),E=K(A,"json",9),u=K(A,"queryOptions",29,()=>({})),m=K(A,"onChange",9),f=["==","!=","<","<=",">",">="].map(Pe=>({value:Pe,label:Pe})),D=[{value:"asc",label:"ascending"},{value:"desc",label:"descending"}],S=ge((e=u())!==null&&e!==void 0&&(e=e.filter)!==null&&e!==void 0&&e.path?B2(u().filter.path):void 0,!0),k=ge((i=f.find(Pe=>{var be;return Pe.value===((be=u().filter)===null||be===void 0?void 0:be.relation)}))!==null&&i!==void 0?i:f[0],!0),b=ge(((n=u())===null||n===void 0||(n=n.filter)===null||n===void 0?void 0:n.value)||"",!0),x=ge((o=u())!==null&&o!==void 0&&(o=o.sort)!==null&&o!==void 0&&o.path?B2(u().sort.path):void 0,!0),F=ge((a=D.find(Pe=>{var be;return Pe.value===((be=u().sort)===null||be===void 0?void 0:be.direction)}))!==null&&a!==void 0?a:D[0],!0);Ue(()=>z(E()),()=>{N(r,Array.isArray(E()))}),Ue(()=>(g(r),z(E())),()=>{N(s,g(r)?TN(E()):[])}),Ue(()=>(g(r),z(E())),()=>{N(l,g(r)?TN(E(),!0):[])}),Ue(()=>(g(s),B2),()=>{N(c,g(s).map(B2))}),Ue(()=>(g(l),B2),()=>{N(C,g(l)?g(l).map(B2):[])}),Ue(()=>(z(u()),g(C),Oi),()=>{var Pe;N(d,(Pe=u())!==null&&Pe!==void 0&&(Pe=Pe.projection)!==null&&Pe!==void 0&&Pe.paths&&g(C)?u().projection.paths.map(be=>g(C).find(qe=>Oi(qe.value,be))).filter(be=>!!be):void 0)}),Ue(()=>g(S),()=>{var Pe,be,qe;be=(Pe=g(S))===null||Pe===void 0?void 0:Pe.value,Oi((qe=u())===null||qe===void 0||(qe=qe.filter)===null||qe===void 0?void 0:qe.path,be)||(B("changeFilterPath",be),u(As(u(),["filter","path"],be,!0)),m()(u()))}),Ue(()=>g(k),()=>{var Pe,be,qe;be=(Pe=g(k))===null||Pe===void 0?void 0:Pe.value,Oi((qe=u())===null||qe===void 0||(qe=qe.filter)===null||qe===void 0?void 0:qe.relation,be)||(B("changeFilterRelation",be),u(As(u(),["filter","relation"],be,!0)),m()(u()))}),Ue(()=>g(b),()=>{var Pe,be;Pe=g(b),Oi((be=u())===null||be===void 0||(be=be.filter)===null||be===void 0?void 0:be.value,Pe)||(B("changeFilterValue",Pe),u(As(u(),["filter","value"],Pe,!0)),m()(u()))}),Ue(()=>g(x),()=>{var Pe,be,qe;be=(Pe=g(x))===null||Pe===void 0?void 0:Pe.value,Oi((qe=u())===null||qe===void 0||(qe=qe.sort)===null||qe===void 0?void 0:qe.path,be)||(B("changeSortPath",be),u(As(u(),["sort","path"],be,!0)),m()(u()))}),Ue(()=>g(F),()=>{var Pe,be,qe;be=(Pe=g(F))===null||Pe===void 0?void 0:Pe.value,Oi((qe=u())===null||qe===void 0||(qe=qe.sort)===null||qe===void 0?void 0:qe.direction,be)||(B("changeSortDirection",be),u(As(u(),["sort","direction"],be,!0)),m()(u()))}),Ue(()=>g(d),()=>{(function(Pe){var be;Oi((be=u())===null||be===void 0||(be=be.projection)===null||be===void 0?void 0:be.paths,Pe)||(B("changeProjectionPaths",Pe),u(As(u(),["projection","paths"],Pe,!0)),m()(u()))})(g(d)?g(d).map(Pe=>Pe.value):void 0)}),qn(),hi(!0);var P=u8e(),j=ce(P),X=ce(j),Ae=ke(ce(X)),W=ce(Ae),Ce=ce(W);p1(Ce,{class:"jse-filter-path",showChevron:!0,get items(){return g(c)},get value(){return g(S)},set value(Pe){N(S,Pe)},$$legacy:!0});var we=ke(Ce,2);p1(we,{class:"jse-filter-relation",showChevron:!0,clearable:!1,get items(){return f},get value(){return g(k)},set value(Pe){N(k,Pe)},$$legacy:!0});var Be=ke(we,2),Ee=ke(X),Ne=ke(ce(Ee)),de=ce(Ne),Ie=ce(de);p1(Ie,{class:"jse-sort-path",showChevron:!0,get items(){return g(c)},get value(){return g(x)},set value(Pe){N(x,Pe)},$$legacy:!0}),p1(ke(Ie,2),{class:"jse-sort-direction",showChevron:!0,clearable:!1,get items(){return D},get value(){return g(F)},set value(Pe){N(F,Pe)},$$legacy:!0});var xe=ke(Ee),Xe=ke(ce(xe)),fA=ce(Xe);p1(ce(fA),{class:"jse-projection-paths",multiple:!0,showChevron:!0,get items(){return g(C)},get value(){return g(d)},set value(Pe){N(d,Pe)},$$legacy:!0}),vv(Be,()=>g(b),Pe=>N(b,Pe)),se(t,P),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-select-query-language.svelte-jrd4q2 { + position: relative; + width: 32px; +} +.jse-select-query-language.svelte-jrd4q2 .jse-select-query-language-container:where(.svelte-jrd4q2) { + position: absolute; + top: 0; + right: 0; + display: flex; + flex-direction: column; + box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); +} +.jse-select-query-language.svelte-jrd4q2 .jse-select-query-language-container:where(.svelte-jrd4q2) .jse-query-language:where(.svelte-jrd4q2) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + text-align: left; + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + white-space: nowrap; + color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); + background: var(--jse-context-menu-background, #656565); +} +.jse-select-query-language.svelte-jrd4q2 .jse-select-query-language-container:where(.svelte-jrd4q2) .jse-query-language:where(.svelte-jrd4q2):hover { + background: var(--jse-context-menu-background-highlight, #7a7a7a); +}`);var Q8e=Oe(''),p8e=Oe('
      ');function m8e(t,A){Ht(A,!1);var e=K(A,"queryLanguages",8),i=K(A,"queryLanguageId",12),n=K(A,"onChangeQueryLanguage",8);hi();var o=p8e();ka(ce(o),5,e,za,(a,r)=>{var s,l=Q8e(),c=ce(l),C=E=>{un(E,{get data(){return Rk}})},d=E=>{un(E,{get data(){return Nk}})};je(c,E=>{g(r),z(i()),Qe(()=>g(r).id===i())?E(C):E(d,!1)});var B=ke(c);TA(()=>{var E;s=Bi(l,1,"jse-query-language svelte-jrd4q2",null,s,{selected:g(r).id===i()}),Vn(l,"title",(g(r),Qe(()=>"Select ".concat(g(r).name," as query language")))),jt(B," ".concat((g(r),(E=Qe(()=>g(r).name))!==null&&E!==void 0?E:"")))}),bA("click",l,()=>{return E=g(r).id,i(E),void n()(E);var E}),se(a,l)}),se(t,o),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-header.svelte-1k211ye { + display: flex; + background: var(--jse-theme-color, #3883fa); + color: var(--jse-menu-color, var(--jse-text-color-inverse, #fff)); +} +.jse-header.svelte-1k211ye .jse-title:where(.svelte-1k211ye) { + flex: 1; + padding: 5px; + vertical-align: middle; +} +.jse-header.svelte-1k211ye button:where(.svelte-1k211ye) { + border: none; + background: transparent; + min-width: 32px; + color: inherit; + cursor: pointer; +} +.jse-header.svelte-1k211ye button:where(.svelte-1k211ye):hover { + background: rgba(255, 255, 255, 0.1); +}`);var f8e=Oe(''),w8e=Oe('
      ');function Uv(t,A){Ht(A,!1);var e=K(A,"title",9,"Modal"),i=K(A,"fullScreenButton",9,!1),n=K(A,"fullscreen",13,!1),o=K(A,"onClose",9,void 0);hi(!0);var a=w8e(),r=ce(a),s=ce(r),l=ke(r,2);Sa(l,A,"actions",{},null);var c=ke(l,2),C=B=>{var E=f8e(),u=ce(E),m=It(()=>n()?aZ:AZ);un(u,{get data(){return g(m)}}),bA("click",E,()=>n(!n())),se(B,E)};je(c,B=>{i()&&B(C)});var d=ke(c,2);un(ce(d),{get data(){return Vp}}),TA(()=>jt(s,e())),bA("click",d,()=>{var B;return(B=o())===null||B===void 0?void 0:B()}),se(t,a),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-config.svelte-5gkegr { + border: none; + background: transparent; + min-width: 32px; + color: inherit; + cursor: pointer; +} +.jse-config.svelte-5gkegr:hover { + background: rgba(255, 255, 255, 0.1); +} +.jse-config.hide.svelte-5gkegr { + display: none; +}`);var y8e=Oe(''),vN=Qr("jsoneditor:AutoScrollHandler");function lte(t){var A,e;function i(r){return r<20?200:r<50?400:1200}function n(){if(t){var r=.05*(A||0);t.scrollTop+=r}}function o(r){e&&r===A||(a(),vN("startAutoScroll",r),A=r,e=setInterval(n,50))}function a(){e&&(vN("stopAutoScroll"),clearInterval(e),e=void 0,A=void 0)}return vN("createAutoScrollHandler",t),{onDrag:function(r){if(t){var s=r.clientY,{top:l,bottom:c}=t.getBoundingClientRect();sc?o(i(s-c)):a()}},onDragEnd:function(){a()}}}var v8e=(t,A,e,i)=>(t/=i/2)<1?e/2*t*t+A:-e/2*(--t*(t-2)-1)+A,lne=()=>{var t,A,e,i,n,o,a,r,s,l,c,C,d;function B(m){return m.getBoundingClientRect().top-(t.getBoundingClientRect?t.getBoundingClientRect().top:0)+e}function E(m){t.scrollTo?t.scrollTo(t.scrollLeft,m):t.scrollTop=m}function u(m){l||(l=m),E(o(c=m-l,e,r,s)),d=!0,c1&&arguments[1]!==void 0?arguments[1]:{};switch(s=1e3,n=f.offset||0,C=f.callback,o=f.easing||v8e,a=f.a11y||!1,typeof f.container){case"object":t=f.container;break;case"string":t=document.querySelector(f.container);break;default:t=window.document.documentElement}switch(e=t.scrollTop,typeof m){case"number":A=void 0,a=!1,i=e+m;break;case"object":i=B(A=m);break;case"string":A=document.querySelector(m),i=B(A)}switch(r=i-e+n,typeof f.duration){case"number":s=f.duration;break;case"function":s=f.duration(r)}d?l=0:requestAnimationFrame(u)}};function mu(t,A){var e=Date.now(),i=t();return A(Date.now()-e),i}var Bu=Qr("validation"),D8e={createObjectDocumentState:()=>({type:"object",properties:{}}),createArrayDocumentState:()=>({type:"array",items:[]}),createValueDocumentState:()=>({type:"value"})};function cte(t,A,e,i){return MF(t,A,e,i,D8e)}function cne(t,A,e,i){if(Bu("validateJSON"),!A)return[];if(e!==i){var n=e.stringify(t);return A(n!==void 0?i.parse(n):void 0)}return A(t)}function b8e(t,A,e,i){if(Bu("validateText"),t.length>104857600)return{validationErrors:[{path:[],message:"Validation turned off: the document is too large",severity:xg.info}]};if(t.length!==0)try{var n=mu(()=>e.parse(t),s=>Bu("validate: parsed json in ".concat(s," ms")));if(!A)return;var o=e===i?n:mu(()=>i.parse(t),s=>Bu("validate: parsed json with the validationParser in ".concat(s," ms"))),a=mu(()=>A(o),s=>Bu("validate: validated json in ".concat(s," ms")));return tn(a)?void 0:{validationErrors:a}}catch(s){var r=mu(()=>(function(l,c){if(l.length>i6e)return!1;try{return c.parse(vc(l)),!0}catch(C){return!1}})(t,e),l=>Bu("validate: checked whether repairable in ".concat(l," ms")));return{parseError:Fu(t,s.message||s.toString()),isRepairable:r}}}var rv=Qr("jsoneditor:FocusTracker");function NF(t){var A,{onMount:e,onDestroy:i,getWindow:n,hasFocus:o,onFocus:a,onBlur:r}=t,s=!1;function l(){var C=o();C&&(clearTimeout(A),s||(rv("focus"),a(),s=C))}function c(){s&&(clearTimeout(A),A=setTimeout(()=>{o()||(rv("blur"),s=!1,r())}))}e(()=>{rv("mount FocusTracker");var C=n();C&&(C.addEventListener("focusin",l,!0),C.addEventListener("focusout",c,!0))}),i(()=>{rv("destroy FocusTracker");var C=n();C&&(C.removeEventListener("focusin",l,!0),C.removeEventListener("focusout",c,!0))})}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-message.svelte-cbvd26 { + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + padding: var(--jse-padding, 10px); + display: flex; + gap: var(--jse-padding, 10px); + flex-wrap: wrap; + align-items: stretch; +} +.jse-message.jse-success.svelte-cbvd26 { + background: var(--message-success-background, #9ac45d); + color: var(--jse-message-success-color, #fff); +} +.jse-message.svelte-cbvd26 .jse-text:where(.svelte-cbvd26) { + display: flex; + flex: 1; + min-width: 60%; + align-items: center; +} +.jse-message.svelte-cbvd26 .jse-text.jse-clickable:where(.svelte-cbvd26) { + cursor: pointer; +} +.jse-message.svelte-cbvd26 .jse-text.jse-clickable:where(.svelte-cbvd26):hover { + background-color: rgba(255, 255, 255, 0.1); +} +.jse-message.jse-error.svelte-cbvd26 { + background: var(--jse-message-error-background, var(--jse-error-color, #ee5341)); + color: var(--jse-message-error-color, #fff); +} +.jse-message.jse-warning.svelte-cbvd26 { + background: var(--jse-message-warning-background, #ffde5c); + color: var(--jse-message-warning-color, #4d4d4d); +} +.jse-message.jse-info.svelte-cbvd26 { + background: var(--jse-message-info-background, #4f91ff); + color: var(--jse-message-info-color, #fff); +} +.jse-message.svelte-cbvd26 .jse-actions:where(.svelte-cbvd26) { + display: flex; + gap: var(--jse-padding, 10px); +} +.jse-message.svelte-cbvd26 .jse-actions:where(.svelte-cbvd26) button.jse-action:where(.svelte-cbvd26) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-message-action-background, rgba(255, 255, 255, 0.2)); + color: inherit; + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); +} +.jse-message.svelte-cbvd26 .jse-actions:where(.svelte-cbvd26) button.jse-action:where(.svelte-cbvd26):hover { + background: var(--jse-message-action-background-highlight, rgba(255, 255, 255, 0.3)); +}`);var M8e=Oe(''),S8e=Oe('
      ');function ic(t,A){Ht(A,!1);var e=K(A,"type",9,"success"),i=K(A,"icon",9,void 0),n=K(A,"message",9,void 0),o=K(A,"actions",25,()=>[]),a=K(A,"onClick",9,void 0),r=K(A,"onClose",9,void 0);r()&&Tc(r()),hi(!0);var s,l=S8e(),c=ce(l),C=ce(c),d=ce(C),B=u=>{un(u,{get data(){return i()}})};je(d,u=>{i()&&u(B)});var E=ke(d);ka(ke(c,2),5,o,za,(u,m)=>{var f=M8e(),D=ce(f),S=b=>{un(b,{get data(){return g(m),Qe(()=>g(m).icon)}})};je(D,b=>{g(m),Qe(()=>g(m).icon)&&b(S)});var k=ke(D);TA(()=>{var b;Vn(f,"title",(g(m),Qe(()=>g(m).title))),f.disabled=(g(m),Qe(()=>g(m).disabled)),jt(k," ".concat((g(m),(b=Qe(()=>g(m).text))!==null&&b!==void 0?b:"")))}),bA("click",f,()=>{g(m).onClick&&g(m).onClick()}),bA("mousedown",f,()=>{g(m).onMouseDown&&g(m).onMouseDown()}),se(u,f)}),TA(()=>{var u,m;Bi(l,1,"jse-message jse-".concat((u=e())!==null&&u!==void 0?u:""),"svelte-cbvd26"),s=Bi(c,1,"jse-text svelte-cbvd26",null,s,{"jse-clickable":!!a()}),jt(E," ".concat((m=n())!==null&&m!==void 0?m:""))}),bA("click",c,function(){a()&&a()()}),se(t,l),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-validation-errors-overview.svelte-1342rh4 { + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + overflow: auto; + max-height: 25%; +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) { + border-collapse: collapse; + width: 100%; +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) { + cursor: pointer; +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-error:where(.svelte-1342rh4) { + background: var(--jse-message-error-background, var(--jse-error-color, #ee5341)); + color: var(--jse-message-error-color, #fff); +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-warning:where(.svelte-1342rh4) { + background: var(--jse-message-warning-background, #ffde5c); + color: var(--jse-message-warning-color, #4d4d4d); +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-warning:where(.svelte-1342rh4):hover { + filter: brightness(105%); +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr.jse-validation-info:where(.svelte-1342rh4) { + background: var(--jse-message-info-background, #4f91ff); + color: var(--jse-message-info-color, #fff); +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4):hover { + filter: brightness(110%); +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td:where(.svelte-1342rh4) { + padding: 4px var(--jse-padding, 10px); + vertical-align: middle; +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-icon:where(.svelte-1342rh4) { + width: 36px; + box-sizing: border-box; +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-action:where(.svelte-1342rh4) { + width: 36px; + box-sizing: border-box; + padding: 0; +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-action:where(.svelte-1342rh4) button.jse-validation-errors-collapse:where(.svelte-1342rh4) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + width: 36px; + height: 26px; + cursor: pointer; +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td.jse-validation-error-action:where(.svelte-1342rh4) button.jse-validation-errors-collapse:where(.svelte-1342rh4):hover { + background-color: rgba(255, 255, 255, 0.2); +} +.jse-validation-errors-overview.svelte-1342rh4 table:where(.svelte-1342rh4) tr:where(.svelte-1342rh4) td:where(.svelte-1342rh4) div.jse-validation-errors-expand:where(.svelte-1342rh4) { + display: inline-block; + position: relative; + top: 3px; +}`);var k8e=Oe(''),_8e=Oe(' '),x8e=Oe(' '),R8e=Oe('
      '),N8e=Oe('
      '),F8e=Oe('
      ');function FF(t,A){Ht(A,!1);var e=ge(void 0,!0),i=K(A,"validationErrors",9),n=K(A,"selectError",9),o=ge(!0,!0);function a(){N(o,!1)}function r(){N(o,!0)}Ue(()=>z(i()),()=>{N(e,i().length)}),qn(),hi(!0);var s=ji(),l=ct(s),c=C=>{var d=F8e(),B=ce(d),E=m=>{var f=R8e(),D=ce(f),S=ce(D);ka(S,1,()=>(z(Dv),z(i()),z(Av),Qe(()=>Dv(i(),Av))),za,(x,F,P)=>{var j=_8e(),X=ce(j);un(ce(X),{get data(){return Hd}});var Ae=ke(X),W=ce(Ae),Ce=ke(Ae),we=ce(Ce),Be=ce(ke(Ce)),Ee=Ne=>{var de=k8e();un(ce(de),{get data(){return oZ}}),bA("click",de,UC(a)),se(Ne,de)};je(Be,Ne=>{z(i()),Qe(()=>P===0&&i().length>1)&&Ne(Ee)}),TA(Ne=>{var de;Bi(j,1,"jse-validation-".concat((g(F),(de=Qe(()=>g(F).severity))!==null&&de!==void 0?de:"")),"svelte-1342rh4"),jt(W,Ne),jt(we,(g(F),Qe(()=>g(F).message)))},[()=>(z(bl),g(F),Qe(()=>bl(g(F).path)))]),bA("click",j,()=>{setTimeout(()=>n()(g(F)))}),se(x,j)});var k=ke(S),b=x=>{var F=x8e(),P=ke(ce(F),2),j=ce(P);TA(()=>jt(j,"(and ".concat(g(e)-Av," more errors)"))),se(x,F)};je(k,x=>{g(e)>Av&&x(b)}),se(m,f)},u=m=>{var f=N8e(),D=ce(f),S=ce(D),k=ce(S);un(ce(k),{get data(){return Hd}});var b=ce(ke(k));un(ce(ke(b)),{get data(){return Uk}}),TA(x=>{var F;Bi(S,1,"jse-validation-".concat(x??""),"svelte-1342rh4"),jt(b,"".concat((F=g(e))!==null&&F!==void 0?F:""," validation errors "))},[()=>(z(i()),Qe(()=>{return x=i(),[xg.error,xg.warning,xg.info].find(F=>x.some(P=>P.severity===F));var x}))]),bA("click",S,r),se(m,f)};je(B,m=>{g(o)||g(e)===1?m(E):m(u,!1)}),se(C,d)};je(l,C=>{z(tn),z(i()),Qe(()=>!tn(i()))&&C(c)}),se(t,s),Pt()}function Tv(t,A){if(t)return t.addEventListener("keydown",e),{destroy(){t.removeEventListener("keydown",e)}};function e(i){i.key==="Escape"&&(i.preventDefault(),i.stopPropagation(),A())}}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +dialog.jse-modal.svelte-2aoco4 { + border-radius: 3px; + font-size: var(--jse-padding, 10px); + border: none; + padding: 0; + display: flex; + min-width: 0; + margin: auto; + overflow: visible; + transition: width 0.1s ease-in-out, height 0.1s ease-in-out; +} +dialog.jse-modal.jse-sort-modal.svelte-2aoco4 { + width: 400px; +} +dialog.jse-modal.jse-repair-modal.svelte-2aoco4 { + width: 600px; + height: 500px; +} +dialog.jse-modal.jse-jsoneditor-modal.svelte-2aoco4 { + width: 800px; + height: 600px; +} +dialog.jse-modal.jse-transform-modal.svelte-2aoco4 { + width: 1200px; + height: 800px; +} +dialog.jse-modal.jse-fullscreen.svelte-2aoco4 { + width: 100%; + height: 100%; +} +dialog.jse-modal.svelte-2aoco4::backdrop { + background: var(--jse-overlay-background, rgba(0, 0, 0, 0.3)); +} +dialog.jse-modal[open].svelte-2aoco4 { + animation: svelte-2aoco4-zoom 0.3s cubic-bezier(0.34, 1.56, 0.64, 1); +} +dialog.jse-modal[open].svelte-2aoco4::backdrop { + animation: svelte-2aoco4-fade 0.2s ease-out; +} +dialog.jse-modal.svelte-2aoco4 .jse-modal-inner:where(.svelte-2aoco4) { + flex: 1; + display: flex; + flex-direction: column; + min-width: 0; + min-height: 0; + padding: 0; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + line-height: normal; + background: var(--jse-modal-background, #f5f5f5); + color: var(--jse-text-color, #4d4d4d); +} +@keyframes svelte-2aoco4-zoom { + from { + transform: scale(0.95); + } + to { + transform: scale(1); + } +} +@keyframes svelte-2aoco4-fade { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +dialog.jse-modal.svelte-2aoco4 .svelte-select { + --border: var(--jse-svelte-select-border, 1px solid #d8dbdf); + --item-is-active-bg: var(--jse-item-is-active-bg, #3883fa); + --border-radius: var(--jse-svelte-select-border-radius, 3px); + --background: var(--jse-svelte-select-background, #fff); + --padding: var(--jse-svelte-select-padding, 0 10px); + --multi-select-padding: var(--jse-svelte-select-multi-select-padding, 0 10px); + --font-size: var(--jse-svelte-select-font-size, var(--jse-font-size, 16px)); + --height: 36px; + --multi-item-height: 28px; + --multi-item-margin: 2px; + --multi-item-padding: 2px 8px; + --multi-item-border-radius: 6px; + --indicator-top: 8px; +}`);var L8e=Oe('
      ');function gm(t,A){Ht(A,!1);var e=K(A,"className",8,void 0),i=K(A,"fullscreen",8,!1),n=K(A,"onClose",8),o=ge();function a(){n()()}gs(()=>g(o).showModal()),Tc(()=>g(o).close()),hi();var r,s=L8e(),l=ce(s);Sa(ce(l),A,"default",{},null),na(s,c=>N(o,c),()=>g(o)),Pr(()=>bA("close",s,a)),Pr(()=>{return bA("pointerdown",s,(c=a,function(){for(var C=arguments.length,d=new Array(C),B=0;BbA("cancel",s,c2(function(c){V4.call(this,A,c)}))),Ns(s,(c,C)=>Tv?.(c,C),()=>a),TA(c=>r=Bi(s,1,c,"svelte-2aoco4",r,{"jse-fullscreen":i()}),[()=>b2((z(Kg),z(e()),Qe(()=>Kg("jse-modal",e()))))]),se(t,s),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-modal-contents.svelte-10a6ob6 { + flex: 1; + display: flex; + flex-direction: column; + padding: 20px; + overflow: auto; + min-width: 0; + min-height: 0; +} +.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) { + display: flex; + flex-direction: row; + justify-content: flex-end; + padding-top: var(--jse-padding, 10px); +} +.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) button.jse-primary:where(.svelte-10a6ob6) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); + color: var(--jse-button-primary-color, #fff); + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + border-radius: 3px; +} +.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) button.jse-primary:where(.svelte-10a6ob6):hover { + background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); +} +.jse-modal-contents.svelte-10a6ob6 .jse-actions:where(.svelte-10a6ob6) button.jse-primary:where(.svelte-10a6ob6):disabled { + background: var(--jse-button-primary-background-disabled, #9d9d9d); +} + +.jse-shortcuts.svelte-10a6ob6 { + display: flex; + flex-wrap: wrap; + justify-content: space-around; + margin: calc(2 * var(--jse-padding, 10px)) 0; +} +.jse-shortcuts.svelte-10a6ob6 .jse-shortcut:where(.svelte-10a6ob6) .jse-key:where(.svelte-10a6ob6) { + font-size: 200%; + color: var(--jse-theme-color, #3883fa); +}`);var G8e=Oe('
      Clipboard permission is disabled by your browser. You can use:
      for copy
      for cut
      for paste
      ',1);function gne(t,A){Ht(A,!1);var e=K(A,"onClose",9),i=pF()?"\u2318":"Ctrl";hi(!0),gm(t,{get onClose(){return e()},className:"jse-copy-paste",children:(n,o)=>{var a=G8e(),r=ct(a);Uv(r,{title:"Copying and pasting",get onClose(){return e()}});var s=ke(r,2),l=ke(ce(s),2),c=ce(l),C=ce(c),d=ce(C),B=ke(c,2),E=ce(B),u=ce(E),m=ce(ke(B,2)),f=ce(m),D=ce(ke(l,2));TA(()=>{jt(d,"".concat(i,"+C")),jt(u,"".concat(i,"+X")),jt(f,"".concat(i,"+V"))}),bA("click",D,function(){for(var S,k=arguments.length,b=new Array(k),x=0;x'),U8e=Oe('
      '),T8e=Oe(''),O8e=Oe('
      ');function e5(t,A){Ht(A,!1);var e=K(A,"items",25,()=>[]);hi(!0);var i=O8e(),n=ce(i);Sa(n,A,"left",{},null);var o=ke(n,2);ka(o,1,e,za,(a,r)=>{var s=ji(),l=ct(s),c=d=>{se(d,K8e())},C=d=>{var B=ji(),E=ct(B),u=f=>{se(f,U8e())},m=f=>{var D=ji(),S=ct(D),k=x=>{var F=T8e(),P=ce(F),j=W=>{un(W,{get data(){return g(r),Qe(()=>g(r).icon)}})};je(P,W=>{g(r),Qe(()=>g(r).icon)&&W(j)});var X=ke(P,2),Ae=W=>{var Ce=Mr();TA(()=>jt(Ce,(g(r),Qe(()=>g(r).text)))),se(W,Ce)};je(X,W=>{g(r),Qe(()=>g(r).text)&&W(Ae)}),TA(()=>{var W;Bi(F,1,"jse-button ".concat((g(r),(W=Qe(()=>g(r).className))!==null&&W!==void 0?W:"")),"svelte-3erbu0"),Vn(F,"title",(g(r),Qe(()=>g(r).title))),F.disabled=(g(r),Qe(()=>g(r).disabled||!1))}),bA("click",F,function(){for(var W,Ce=arguments.length,we=new Array(Ce),Be=0;Be{var F=Mr();TA(P=>jt(F,P),[()=>(g(r),Qe(()=>(function(P){return console.error("Unknown type of menu item",P),"???"})(g(r))))]),se(x,F)};je(S,x=>{z(TC),g(r),Qe(()=>TC(g(r)))?x(k):x(b,!1)},!0),se(f,D)};je(E,f=>{z(YN),g(r),Qe(()=>YN(g(r)))?f(u):f(m,!1)},!0),se(d,B)};je(l,d=>{z(I2),g(r),Qe(()=>I2(g(r)))?d(c):d(C,!1)}),se(a,s)}),Sa(ke(o,2),A,"right",{},null),se(t,i),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-json-repair-component.svelte-16jv58j { + flex: 1; + display: flex; + flex-direction: column; + background: var(--jse-background-color, #fff); + color: var(--jse-text-color, #4d4d4d); +} +.jse-json-repair-component.svelte-16jv58j .jse-info:where(.svelte-16jv58j) { + padding: calc(0.5 * var(--jse-padding, 10px)); + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + vertical-align: center; +} +.jse-json-repair-component.svelte-16jv58j .jse-json-text:where(.svelte-16jv58j) { + flex: 1; + border: none; + padding: 2px; + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + background: var(--jse-input-background, var(--jse-background-color, #fff)); + color: var(--jse-text-color, #4d4d4d); + resize: none; + outline: none; +}`);var J8e=Oe('
      Repair invalid JSON, then click apply
      '),z8e=Oe('
      ');function Y8e(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),n=ge(void 0,!0),o=ge(void 0,!0),a=ge(void 0,!0),r=ge(void 0,!0),s=K(A,"text",13,""),l=K(A,"readOnly",9,!1),c=K(A,"onParse",9),C=K(A,"onRepair",9),d=K(A,"onChange",9,void 0),B=K(A,"onApply",9),E=K(A,"onCancel",9),u=Qr("jsoneditor:JSONRepair"),m=ge(void 0,!0);function f(){if(g(m)&&g(e)){var Ae=g(e).position!==void 0?g(e).position:0;g(m).setSelectionRange(Ae,Ae),g(m).focus()}}function D(){B()(s())}function S(){try{s(C()(s())),d()&&d()(s())}catch(Ae){}}var k=ge(void 0,!0);Ue(()=>z(s()),()=>{N(e,(function(Ae){try{return void c()(Ae)}catch(W){return Fu(Ae,W.message)}})(s()))}),Ue(()=>z(s()),()=>{N(i,(function(Ae){try{return C()(Ae),!0}catch(W){return!1}})(s()))}),Ue(()=>g(e),()=>{u("error",g(e))}),Ue(()=>z(E()),()=>{N(k,[{type:"space"},{type:"button",icon:Vp,title:"Cancel repair",className:"jse-cancel",onClick:E()}])}),Ue(()=>Jk,()=>{N(n,{icon:Jk,text:"Show me",title:"Scroll to the error location",onClick:f})}),Ue(()=>vC,()=>{N(o,{icon:vC,text:"Auto repair",title:"Automatically repair JSON",onClick:S})}),Ue(()=>(g(i),g(n),g(o)),()=>{N(a,g(i)?[g(n),g(o)]:[g(n)])}),Ue(()=>z(l()),()=>{N(r,[{icon:iw,text:"Apply",title:"Apply fixed JSON",disabled:l(),onClick:D}])}),qn(),hi(!0);var b=z8e(),x=ce(b);e5(x,{get items(){return g(k)},$$slots:{left:(Ae,W)=>{se(Ae,J8e())}}});var F=ke(x,2),P=Ae=>{var W=It(()=>(g(e),Qe(()=>"Cannot parse JSON: ".concat(g(e).message))));ic(Ae,{type:"error",get icon(){return Hd},get message(){return g(W)},get actions(){return g(a)}})},j=Ae=>{ic(Ae,{type:"success",message:"JSON is valid now and can be parsed.",get actions(){return g(r)}})};je(F,Ae=>{g(e)?Ae(P):Ae(j,!1)});var X=ke(F,2);na(X,Ae=>N(m,Ae),()=>g(m)),TA(()=>{X.readOnly=l(),x1(X,s())}),bA("input",X,function(Ae){u("handleChange");var W=Ae.target.value;s()!==W&&(s(W),d()&&d()(s()))}),se(t,b),Pt()}function Cne(t,A){Ht(A,!1);var e=K(A,"text",13),i=K(A,"onParse",9),n=K(A,"onRepair",9),o=K(A,"onApply",9),a=K(A,"onClose",9);function r(l){o()(l),a()()}function s(){a()()}hi(!0),gm(t,{get onClose(){return a()},className:"jse-repair-modal",children:(l,c)=>{Y8e(l,{get onParse(){return i()},get onRepair(){return n()},onApply:r,onCancel:s,get text(){return e()},set text(C){e(C)},$$legacy:!0})},$$slots:{default:!0}}),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +div.jse-collapsed-items.svelte-1v6dhm4 { + margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + color: var(--jse-collapsed-items-link-color, rgba(0, 0, 0, 0.38)); + padding: calc(0.5 * var(--jse-padding, 10px)); + border: 8px solid transparent; + border-width: 8px 0; + background-color: var(--jse-contents-background-color, transparent); + background-image: linear-gradient(var(--jse-collapsed-items-background-color, #f5f5f5), var(--jse-collapsed-items-background-color, #f5f5f5)), linear-gradient(to bottom right, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%), linear-gradient(to bottom left, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%), linear-gradient(to top right, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%), linear-gradient(to top left, transparent 50.5%, var(--jse-collapsed-items-background-color, #f5f5f5) 50.5%); + background-repeat: repeat, repeat-x, repeat-x, repeat-x, repeat-x; + background-position: 0 0, 8px 0, 8px 0, 8px 100%, 8px 100%; + background-size: auto auto, 16px 16px, 16px 16px, 16px 16px, 16px 16px; + background-clip: padding-box, border-box, border-box, border-box, border-box; + background-origin: padding-box, border-box, border-box, border-box, border-box; + display: flex; +} +div.jse-collapsed-items.jse-selected.svelte-1v6dhm4 { + background-color: var(--jse-selection-background-color, #d3d3d3); + --jse-collapsed-items-background-color: var(--jse-collapsed-items-selected-background-color, #c2c2c2); +} +div.jse-collapsed-items.svelte-1v6dhm4 div.jse-text:where(.svelte-1v6dhm4), +div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4) { + margin: 0 calc(0.5 * var(--jse-padding, 10px)); +} +div.jse-collapsed-items.svelte-1v6dhm4 div.jse-text:where(.svelte-1v6dhm4) { + display: inline; +} +div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4) { + font-family: inherit; + font-size: inherit; + color: var(--jse-collapsed-items-link-color, rgba(0, 0, 0, 0.38)); + background: none; + border: none; + padding: 0; + text-decoration: underline; + cursor: pointer; +} +div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4):hover, div.jse-collapsed-items.svelte-1v6dhm4 button.jse-expand-items:where(.svelte-1v6dhm4):focus { + color: var(--jse-collapsed-items-link-color-highlight, #ee5341); +}`);var H8e=Oe(''),P8e=Oe('
      ');function j8e(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),n=ge(void 0,!0),o=ge(void 0,!0),a=ge(void 0,!0),r=K(A,"visibleSections",9),s=K(A,"sectionIndex",9),l=K(A,"total",9),c=K(A,"path",9),C=K(A,"selection",9),d=K(A,"onExpandSection",9),B=K(A,"context",9);Ue(()=>(z(r()),z(s())),()=>{N(e,r()[s()])}),Ue(()=>g(e),()=>{N(i,g(e).end)}),Ue(()=>(z(r()),z(s()),z(l())),()=>{N(n,r()[s()+1]?r()[s()+1].start:l())}),Ue(()=>(z(B()),z(C()),z(c()),g(i)),()=>{N(o,sm(B().getJson(),C(),c().concat(String(g(i)))))}),Ue(()=>(g(i),g(n)),()=>{N(a,(function(k,b){var x={start:k,end:Math.min(zN(k),b)},F=Math.max(Mv((k+b)/2),k),P={start:F,end:Math.min(zN(F),b)},j=Mv(b),X=j===b?j-nm:j,Ae={start:Math.max(X,k),end:b},W=[x],Ce=P.start>=x.end&&P.end<=Ae.start;return Ce&&W.push(P),Ae.start>=(Ce?P.end:x.end)&&W.push(Ae),W})(g(i),g(n)))}),qn(),hi(!0);var E,u,m=P8e(),f=ce(m),D=ce(f),S=ce(D);ka(ke(D,2),1,()=>g(a),za,(k,b)=>{var x=H8e(),F=ce(x);TA(()=>{var P,j;return jt(F,"show ".concat((g(b),(P=Qe(()=>g(b).start))!==null&&P!==void 0?P:""),"-").concat((g(b),(j=Qe(()=>g(b).end))!==null&&j!==void 0?j:"")))}),bA("click",x,()=>d()(c(),g(b))),se(k,x)}),TA(()=>{var k,b;E=Bi(m,1,"jse-collapsed-items svelte-1v6dhm4",null,E,{"jse-selected":g(o)}),u=Kc(m,"",u,{"--level":(z(c()),Qe(()=>c().length+2))}),jt(S,"Items ".concat((k=g(i))!==null&&k!==void 0?k:"","-").concat((b=g(n))!==null&&b!==void 0?b:""))}),bA("mousemove",m,function(k){k.stopPropagation()}),se(t,m),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-context-menu-pointer.svelte-10ijtzr { + position: absolute; + top: calc(-0.5 * var(--jse-context-menu-pointer-size, calc(1em + 4px))); + right: calc(-0.5 * var(--jse-context-menu-pointer-size, calc(1em + 4px))); + width: var(--jse-context-menu-pointer-size, calc(1em + 4px)); + height: var(--jse-context-menu-pointer-size, calc(1em + 4px)); + padding: 0; + margin: 0; + cursor: pointer; + background: transparent; + border-radius: 2px; + background: var(--jse-context-menu-pointer-hover-background, #b2b2b2); + color: var(--jse-context-menu-pointer-color, var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff))); + border: none; + box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); +} +.jse-context-menu-pointer.jse-root.svelte-10ijtzr { + top: 0; + right: calc(-2px - var(--jse-context-menu-pointer-size, calc(1em + 4px))); +} +.jse-context-menu-pointer.jse-insert.svelte-10ijtzr { + right: -1px; +} +.jse-context-menu-pointer.svelte-10ijtzr:hover { + background: var(--jse-context-menu-pointer-background-highlight, var(--jse-context-menu-background-highlight, #7a7a7a)); +} +.jse-context-menu-pointer.jse-selected.svelte-10ijtzr { + background: var(--jse-context-menu-pointer-background, var(--jse-context-menu-background, #656565)); +} +.jse-context-menu-pointer.jse-selected.svelte-10ijtzr:hover { + background: var(--jse-context-menu-pointer-background-highlight, var(--jse-context-menu-background-highlight, #7a7a7a)); +}`);var V8e=Oe('');function g2(t,A){Ht(A,!1);var e=K(A,"root",9,!1),i=K(A,"insert",9,!1),n=K(A,"selected",9),o=K(A,"onContextMenu",9);hi(!0);var a,r=V8e();un(ce(r),{get data(){return y0}}),TA(()=>{a=Bi(r,1,"jse-context-menu-pointer svelte-10ijtzr",null,a,{"jse-root":e(),"jse-insert":i(),"jse-selected":n()}),Vn(r,"title",fF)}),bA("click",r,function(s){for(var l=s.target;l&&l.nodeName!=="BUTTON";)l=l.parentNode;l&&o()({anchor:l,left:0,top:0,width:YC,height:zC,offsetTop:2,offsetLeft:0,showTip:!0})}),se(t,r),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-key.svelte-1n4cez4 { + display: inline-block; + min-width: 2em; + padding: 0 5px; + box-sizing: border-box; + outline: none; + border-radius: 1px; + vertical-align: top; + color: var(--jse-key-color, #1a1a1a); + word-break: normal; + overflow-wrap: normal; + white-space: pre-wrap; +} +.jse-key.jse-empty.svelte-1n4cez4 { + min-width: 3em; + outline: 1px dotted var(--jse-tag-background, rgba(0, 0, 0, 0.2)); + -moz-outline-radius: 2px; +} +.jse-key.jse-empty.svelte-1n4cez4::after { + pointer-events: none; + color: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); + content: "key"; +}`);var q8e=Oe('
      '),Z8e=Oe(" ",1),W8e=Oe('
      ');function dne(t,A){Ht(A,!0);var e=vl(()=>Sn(A.selection)&&hr(A.selection)),i=vl(()=>A.context.onRenderValue({path:A.path,value:A.value,mode:A.context.mode,truncateTextSize:A.context.truncateTextSize,readOnly:A.context.readOnly,enforceString:A.enforceString,isEditing:g(e),parser:A.context.parser,normalization:A.context.normalization,selection:A.selection,searchResultItems:A.searchResultItems,onPatch:A.context.onPatch,onPasteJson:A.context.onPasteJson,onSelect:A.context.onSelect,onFind:A.context.onFind,findNextInside:A.context.findNextInside,focus:A.context.focus})),n=ji();ka(ct(n),17,()=>g(i),za,(o,a)=>{var r=ji(),s=ct(r),l=C=>{var d=vl(()=>g(a).action),B=W8e();Ns(B,(E,u)=>{var m;return(m=g(d))===null||m===void 0?void 0:m(E,u)},()=>g(a).props),se(C,B)},c=C=>{var d=vl(()=>g(a).component),B=ji();Bie(ct(B),()=>g(d),(E,u)=>{u(E,y2(()=>g(a).props))}),se(C,B)};je(s,C=>{s6e(g(a))?C(l):C(c,!1)}),se(o,r)}),se(t,n),Pt()}var X8e={selecting:!1,selectionAnchor:void 0,selectionAnchorType:void 0,selectionFocus:void 0,dragging:!1};function DN(t){var{json:A,selection:e,deltaY:i,items:n}=t;if(!e)return{operations:void 0,updatedSelection:void 0,offset:0};var o=i<0?(function(c){for(var{json:C,items:d,selection:B,deltaY:E}=c,u=HC(C,B),m=d.findIndex(x=>Oi(x.path,u)),f=()=>{var x;return(x=d[D-1])===null||x===void 0?void 0:x.height},D=m,S=0;f()!==void 0&&Math.abs(E)>S+f()/2;)S+=f(),D-=1;var k=d[D].path,b=D-m;return D!==m&&d[D]!==void 0?{beforePath:k,offset:b}:void 0})({json:A,selection:e,deltaY:i,items:n}):(function(c){for(var C,{json:d,items:B,selection:E,deltaY:u}=c,m=D2(d,E),f=B.findIndex(X=>Oi(X.path,m)),D=0,S=f,k=()=>{var X;return(X=B[S+1])===null||X===void 0?void 0:X.height};k()!==void 0&&Math.abs(u)>D+k()/2;)D+=k(),S+=1;var b=sn(m),x=nt(d,b),F=Array.isArray(x)?S:S+1,P=(C=B[F])===null||C===void 0?void 0:C.path,j=S-f;return P?{beforePath:P,offset:j}:{append:!0,offset:j}})({json:A,selection:e,deltaY:i,items:n});if(!o||o.offset===0)return{operations:void 0,updatedSelection:void 0,offset:0};var a=(function(c,C,d){if(!C)return[];var B="beforePath"in d?d.beforePath:void 0,E="append"in d?d.append:void 0,u=sn(ft(C)),m=nt(c,u);if(!(E||B&&z0(B,u)&&B.length>u.length))return[];var f=HC(c,C),D=D2(c,C),S=Yi(f),k=Yi(D),b=B?B[u.length]:void 0;if(!fa(m)){if(Ca(m)){var x=jr(S),F=jr(k),P=b!==void 0?jr(b):m.length;return tz(F-x+1,P({op:"move",from:Lt(u.concat(String(x+Ce))),path:Lt(u.concat(String(P+Ce)))}):()=>({op:"move",from:Lt(u.concat(String(x))),path:Lt(u.concat(String(P)))}))}throw new Error("Cannot create move operations: parent must be an Object or Array")}var j=Object.keys(m),X=j.indexOf(S),Ae=j.indexOf(k),W=E?j.length:b!==void 0?j.indexOf(b):-1;return X!==-1&&Ae!==-1&&W!==-1?W>X?[...j.slice(X,Ae+1),...j.slice(W,j.length)].map(Ce=>S2(u,Ce)):[...j.slice(W,X),...j.slice(Ae+1,j.length)].map(Ce=>S2(u,Ce)):[]})(A,e,o),r=sn(HC(A,e)),s=nt(A,r);if(Array.isArray(s)){var l=(function(c){var C,d,{items:B,json:E,selection:u,offset:m}=c,f=HC(E,u),D=D2(E,u),S=B.findIndex(F=>Oi(F.path,f)),k=B.findIndex(F=>Oi(F.path,D)),b=(C=B[S+m])===null||C===void 0?void 0:C.path,x=(d=B[k+m])===null||d===void 0?void 0:d.path;return xs(b,x)})({items:n,json:A,selection:e,offset:o.offset});return{operations:a,updatedSelection:l,offset:o.offset}}return{operations:a,updatedSelection:void 0,offset:o.offset}}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +button.jse-validation-error.svelte-q6a061 { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + padding: 0; + margin: 0; + vertical-align: top; + display: inline-flex; + color: var(--jse-error-color, #ee5341); +} + +button.jse-validation-info.svelte-q6a061 { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + padding: 0; + margin: 0; + vertical-align: top; + display: inline-flex; + color: var(--jse-info-color, #4f91ff); +} + +button.jse-validation-warning.svelte-q6a061 { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + padding: 0; + margin: 0; + vertical-align: top; + display: inline-flex; + color: var(--jse-warning-color, #fdc539); +}`);var $8e=Oe('');function Mu(t,A){Ht(A,!1);var e=ge(),i=k2("absolute-popup"),n=K(A,"validationError",8),o=K(A,"onExpand",8);Ue(()=>z(n()),()=>{N(e,r6e(n())&&n().isChildError?"Contains invalid data":n().message)}),qn(),hi();var a=$8e();un(ce(a),{get data(){return Hd}}),Pr(()=>bA("click",a,function(){for(var r,s=arguments.length,l=new Array(s),c=0;cUu?.(r,s),()=>UA({text:g(e)},i)),TA(()=>{var r;return Bi(a,1,"jse-validation-".concat((z(n()),(r=Qe(()=>n().severity))!==null&&r!==void 0?r:"")),"svelte-q6a061")}),se(t,a),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-expand.svelte-1qi6rc1 { + width: var(--jse-indent-size, calc(1em + 4px)); + padding: 0; + margin: 0; + border: none; + cursor: pointer; + background: transparent; + color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); + font-size: var(--jse-font-size-mono, 14px); + height: var(--jse-line-height, calc(1em + 4px)); +} +.jse-expand.svelte-1qi6rc1:hover { + opacity: 0.8; +} + +.jse-meta.svelte-1qi6rc1, +.jse-separator.svelte-1qi6rc1, +.jse-index.svelte-1qi6rc1, +.jse-bracket.svelte-1qi6rc1 { + vertical-align: top; + color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); +} + +.jse-index.svelte-1qi6rc1 { + padding: 0 calc(0.5 * var(--jse-padding, 10px)); +} + +.jse-bracket.svelte-1qi6rc1 { + padding: 0 2px; +} +.jse-bracket.jse-expanded.svelte-1qi6rc1 { + padding-right: var(--jse-padding, 10px); +} + +.jse-identifier.svelte-1qi6rc1 { + vertical-align: top; + position: relative; +} + +.jse-json-node.svelte-1qi6rc1 { + position: relative; + color: var(--jse-text-color, #4d4d4d); +} +.jse-json-node.jse-root.svelte-1qi6rc1 { + min-height: 100%; + padding-bottom: 2px; + box-sizing: border-box; +} +.jse-json-node.jse-root.svelte-1qi6rc1 > .jse-contents-outer:where(.svelte-1qi6rc1) > .jse-contents:where(.svelte-1qi6rc1) { + padding-left: 0; +} +.jse-json-node.svelte-1qi6rc1 .jse-props:where(.svelte-1qi6rc1), +.jse-json-node.svelte-1qi6rc1 .jse-items:where(.svelte-1qi6rc1) { + position: relative; +} +.jse-json-node.svelte-1qi6rc1 .jse-header-outer:where(.svelte-1qi6rc1), +.jse-json-node.svelte-1qi6rc1 .jse-footer-outer:where(.svelte-1qi6rc1) { + display: flex; + margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); +} +.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1) { + position: relative; +} +.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1) .jse-meta:where(.svelte-1qi6rc1) > .jse-meta-inner:where(.svelte-1qi6rc1) { + display: flex; + justify-content: center; +} +.jse-json-node.svelte-1qi6rc1 .jse-contents-outer:where(.svelte-1qi6rc1) { + display: flex; + margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); +} +.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1), +.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1) { + display: flex; + flex-direction: row; + align-items: flex-start; +} +.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1) { + padding-left: var(--jse-indent-size, calc(1em + 4px)); + cursor: var(--jse-contents-cursor, pointer); +} +.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1) .jse-value-outer:where(.svelte-1qi6rc1) { + display: inline-flex; +} +.jse-json-node.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1) { + display: inline-flex; + padding-left: calc(var(--jse-indent-size, calc(1em + 4px)) + 5px); +} +.jse-json-node.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1), +.jse-json-node.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1), +.jse-json-node.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1) { + background: var(--jse-contents-background-color, transparent); +} +.jse-json-node.svelte-1qi6rc1 .jse-insert-selection-area:where(.svelte-1qi6rc1) { + padding: 0 calc(0.5 * var(--jse-padding, 10px)); + flex: 1; +} +.jse-json-node.svelte-1qi6rc1 .jse-insert-selection-area.jse-inside:where(.svelte-1qi6rc1) { + display: inline-flex; + align-items: center; +} +.jse-json-node.svelte-1qi6rc1 .jse-insert-selection-area.jse-after:where(.svelte-1qi6rc1) { + display: flex; + align-items: flex-end; +} +.jse-json-node.svelte-1qi6rc1 .jse-context-menu-pointer-anchor:where(.svelte-1qi6rc1) { + position: relative; +} +.jse-json-node.svelte-1qi6rc1 .jse-insert-area:where(.svelte-1qi6rc1) { + display: flex; + position: relative; + z-index: 1; + margin-left: calc(var(--level) * var(--jse-indent-size, calc(1em + 4px))); + max-width: 250px; + min-width: 100px; + height: 0; + margin-right: calc(0.5 * var(--jse-padding, 10px)); + outline: 1px solid; +} +.jse-json-node.svelte-1qi6rc1 .jse-insert-area.jse-hovered:where(.svelte-1qi6rc1) { + outline-color: var(--jse-context-menu-pointer-hover-background, #b2b2b2); +} +.jse-json-node.svelte-1qi6rc1 .jse-key-outer:where(.svelte-1qi6rc1) { + position: relative; +} +.jse-json-node.svelte-1qi6rc1 .jse-key-outer:where(.svelte-1qi6rc1):hover, +.jse-json-node.svelte-1qi6rc1 .jse-value-outer:where(.svelte-1qi6rc1):hover, +.jse-json-node.svelte-1qi6rc1 .jse-meta:where(.svelte-1qi6rc1):hover, +.jse-json-node.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1):hover { + background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); + cursor: var(--jse-contents-cursor, pointer); +} +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-meta, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-header, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-contents, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-header, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-contents, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-footer { + background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); + cursor: var(--jse-contents-cursor, pointer); +} +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-value-outer .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-value-outer .jse-meta, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-meta .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-meta .jse-meta, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-header .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-header .jse-meta, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-contents .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-items .jse-contents .jse-meta, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-header .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-header .jse-meta, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-contents .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-props .jse-contents .jse-meta, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-footer .jse-value-outer, +.jse-json-node.jse-hovered.svelte-1qi6rc1:not(.jse-selected):not(.jse-selected-value) .jse-footer .jse-meta { + background: none; +} +.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-header:where(.svelte-1qi6rc1), +.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-contents:where(.svelte-1qi6rc1), +.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1) { + background: var(--jse-selection-background-color, #d3d3d3); + cursor: var(--jse-contents-selected-cursor, grab); +} +.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-key-outer:where(.svelte-1qi6rc1):hover, +.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-value-outer:where(.svelte-1qi6rc1):hover, +.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-meta:where(.svelte-1qi6rc1):hover, +.jse-json-node.jse-selected.svelte-1qi6rc1 .jse-footer:where(.svelte-1qi6rc1):hover { + background: inherit; + cursor: inherit; +} +.jse-json-node.svelte-1qi6rc1 .jse-key-outer.jse-selected-key:where(.svelte-1qi6rc1) { + background: var(--jse-selection-background-color, #d3d3d3); + cursor: var(--jse-contents-selected-cursor, grab); +} +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-value-outer, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-meta, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-header, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-contents, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-header, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-contents, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-footer { + background: var(--jse-selection-background-color, #d3d3d3); + cursor: var(--jse-contents-selected-cursor, grab); +} +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-value-outer .jse-key-outer:hover, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-meta .jse-key-outer:hover, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-header .jse-key-outer:hover, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-items .jse-contents .jse-key-outer:hover, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-header .jse-key-outer:hover, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-props .jse-contents .jse-key-outer:hover, +.jse-json-node.jse-selected-value.svelte-1qi6rc1 .jse-footer .jse-key-outer:hover { + background: inherit; + cursor: inherit; +} +.jse-json-node.jse-readonly.svelte-1qi6rc1 { + --jse-contents-selected-cursor: pointer; +} +.jse-json-node.svelte-1qi6rc1 .jse-insert-area.jse-selected:where(.svelte-1qi6rc1) { + outline-color: var(--jse-context-menu-pointer-background, var(--jse-context-menu-background, #656565)); +}`);var ta=Pv(()=>X8e),ewe=Oe('
      :
      '),Awe=Oe('
      [
       ',1),twe=Oe('
      [
      ]
      ',1),iwe=Oe('
      '),nwe=Oe('
      '),owe=Oe('
      '),awe=Oe('
      '),rwe=Oe('
      '),swe=Oe(" ",1),lwe=Oe('
      '),cwe=Oe('
      ',1),gwe=Oe('
      ',1),Cwe=Oe('
      :
      '),dwe=Oe('
      {
      '),Iwe=Oe('
      {
      }
      ',1),Bwe=Oe('
      '),hwe=Oe('
      '),uwe=Oe('
      '),Ewe=Oe('
      '),Qwe=Oe('
      '),pwe=Oe('
      '),mwe=Oe('
      ',1),fwe=Oe('
      ',1),wwe=Oe('
      :
      '),ywe=Oe('
      '),vwe=Oe('
      '),Dwe=Oe('
      '),bwe=Oe('
      '),Mwe=Oe('
      ');function AF(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),n=K(A,"pointer",9),o=K(A,"value",9),a=K(A,"state",9),r=K(A,"validationErrors",9),s=K(A,"searchResults",9),l=K(A,"selection",9),c=K(A,"context",9),C=K(A,"onDragSelectionStart",9),d=Qr("jsoneditor:JSONNode"),B=ge(void 0,!0),E=void 0,u=ge(void 0,!0),m=ge(void 0,!0),f=ge(void 0,!0),D=ge(void 0,!0),S=ge(void 0,!0),k=ge(void 0,!0),b=ge(void 0,!0);function x(He){He.stopPropagation();var he=mF(He);c().onExpand(g(m),!g(f),he)}function F(){c().onExpand(g(m),!0)}function P(He,he){var tA=ym(g(m),Object.keys(o()),He,he);return c().onPatch(tA),Yi(Ms(tA[0].path))}function j(He){c().onDrag(He)}function X(He){ta().selecting&&(ta(ta().selecting=!1),He.stopPropagation()),c().onDragEnd(),document.removeEventListener("mousemove",j,!0),document.removeEventListener("mouseup",X)}function Ae(){var He;return((He=c().findElement([]))===null||He===void 0||(He=He.getBoundingClientRect())===null||He===void 0?void 0:He.top)||0}function W(He,he){var tA=Ae()-He.initialContentTop;return he.clientY-He.initialClientY-tA}function Ce(He){if(!c().readOnly&&l()){var he=sn(ft(l()));if(Oi(g(m),he)){var tA=(function(ze,ye){var qt=[];function St($){var ie=g(m).concat($),oe=c().findElement(ie);oe!==void 0&&qt.push({path:ie,height:oe.clientHeight})}if(Array.isArray(o())){var yA=c().getJson();if(yA===void 0)return;var ei=HC(yA,ze),WA=D2(yA,ze),et=parseInt(Yi(ei),10),kt=parseInt(Yi(WA),10),JA=ye.find($=>et>=$.start&&kt<=$.end);if(!JA)return;var{start:ui,end:V}=JA;mie(ui,Math.min(o().length,V),$=>St(String($)))}else Object.keys(o()).forEach(St);return qt})(l(),g(S)||vu);if(d("dragSelectionStart",{selection:l(),items:tA}),tA){var pe=c().getJson();if(pe!==void 0){var oA=HC(pe,l()),Fe=tA.findIndex(ze=>Oi(ze.path,oA)),{offset:OA}=DN({json:pe,selection:c().getSelection(),deltaY:0,items:tA});N(u,{initialTarget:He.target,initialClientY:He.clientY,initialContentTop:Ae(),selectionStartIndex:Fe,selectionItemsCount:M2(pe,l()).length,items:tA,offset:OA,didMoveItems:!1}),ta(ta().dragging=!0),document.addEventListener("mousemove",we,!0),document.addEventListener("mouseup",Be)}}else d("Cannot drag the current selection (probably spread over multiple sections)")}else C()(He)}}function we(He){if(g(u)){var he=c().getJson();if(he===void 0)return;var tA=W(g(u),He),{offset:pe}=DN({json:he,selection:c().getSelection(),deltaY:tA,items:g(u).items});pe!==g(u).offset&&(d("drag selection",pe,tA),N(u,UA(UA({},g(u)),{},{offset:pe,didMoveItems:!0})))}}function Be(He){if(g(u)){var he=c().getJson();if(he===void 0)return;var tA=W(g(u),He),{operations:pe,updatedSelection:oA}=DN({json:he,selection:c().getSelection(),deltaY:tA,items:g(u).items});if(pe)c().onPatch(pe,(ze,ye)=>({state:ye,selection:oA??l()}));else if(He.target===g(u).initialTarget&&!g(u).didMoveItems){var Fe=dN(He.target),OA=Rie(He.target);OA&&c().onSelect(HAe(Fe,OA))}N(u,void 0),ta(ta().dragging=!1),document.removeEventListener("mousemove",we,!0),document.removeEventListener("mouseup",Be)}}function Ee(He){He.shiftKey||(He.stopPropagation(),He.preventDefault(),c().onSelect(Ad(g(m))))}function Ne(He){He.shiftKey||(He.stopPropagation(),He.preventDefault(),c().onSelect(qC(g(m))))}function de(He){c().onSelect(Ad(g(m))),qo(),c().onContextMenu(He)}function Ie(He){c().onSelect(qC(g(m))),qo(),c().onContextMenu(He)}Ue(()=>z(n()),()=>{N(m,Ms(n()))}),Ue(()=>z(n()),()=>{N(e,encodeURIComponent(n()))}),Ue(()=>z(a()),()=>{N(f,!!R1(a())&&a().expanded)}),Ue(()=>(z(o()),z(a())),()=>{N(D,U0(o(),a(),[]))}),Ue(()=>z(a()),()=>{N(S,ur(a())?a().visibleSections:void 0)}),Ue(()=>z(r()),()=>{var He;N(k,(He=r())===null||He===void 0?void 0:He.validationError)}),Ue(()=>(z(c()),z(l()),g(m)),()=>{N(b,sm(c().getJson(),l(),g(m)))}),Ue(()=>g(m),()=>{N(i,g(m).length===0)}),qn(),hi(!0);var xe,Xe,fA=Mwe(),Pe=ce(fA),be=He=>{var he=gwe(),tA=ct(he),pe=ce(tA),oA=ce(pe),Fe=ce(oA),OA=Ke=>{un(Ke,{get data(){return y0}})},ze=Ke=>{un(Ke,{get data(){return vh}})};je(Fe,Ke=>{g(f)?Ke(OA):Ke(ze,!1)});var ye=ke(oA,2);Sa(ye,A,"identifier",{},null);var qt=ke(ye,2),St=Ke=>{se(Ke,ewe())};je(qt,Ke=>{g(i)||Ke(St)});var yA=ke(qt,2),ei=ce(yA),WA=ce(ei),et=Ke=>{var Je=Awe();pv(ke(ct(Je),2),{children:(bt,Ct)=>{var XA=Mr();TA(()=>{var ZA,fi;return jt(XA,"".concat((z(o()),(ZA=Qe(()=>o().length))!==null&&ZA!==void 0?ZA:""),` + `).concat((z(o()),(fi=Qe(()=>o().length===1?"item":"items"))!==null&&fi!==void 0?fi:"")))}),se(bt,XA)},$$slots:{default:!0}}),se(Ke,Je)},kt=Ke=>{var Je=twe();pv(ke(ct(Je),2),{onclick:F,children:(bt,Ct)=>{var XA=Mr();TA(()=>{var ZA,fi;return jt(XA,"".concat((z(o()),(ZA=Qe(()=>o().length))!==null&&ZA!==void 0?ZA:""),` + `).concat((z(o()),(fi=Qe(()=>o().length===1?"item":"items"))!==null&&fi!==void 0?fi:"")))}),se(bt,XA)},$$slots:{default:!0}}),se(Ke,Je)};je(WA,Ke=>{g(f)?Ke(et):Ke(kt,!1)});var JA=ke(yA,2),ui=Ke=>{var Je=iwe();g2(ce(Je),{get root(){return g(i)},selected:!0,get onContextMenu(){return z(c()),Qe(()=>c().onContextMenu)}}),se(Ke,Je)};je(JA,Ke=>{z(c()),g(b),z(l()),z(Sn),z(Mo),z(hr),z(Oi),z(ft),g(m),Qe(()=>!c().readOnly&&g(b)&&l()&&(Sn(l())||Mo(l()))&&!hr(l())&&Oi(ft(l()),g(m)))&&Ke(ui)});var V=ke(pe,2),$=Ke=>{Mu(Ke,{get validationError(){return g(k)},onExpand:F})};je(V,Ke=>{g(k),g(f),Qe(()=>g(k)&&(!g(f)||!g(k).isChildError))&&Ke($)});var ie=ke(V,2),oe=Ke=>{var Je=nwe();bA("click",Je,Ee),se(Ke,Je)},Te=Ke=>{var Je=owe();bA("click",Je,Ne),se(Ke,Je)};je(ie,Ke=>{g(f)?Ke(oe):Ke(Te,!1)});var QA=ke(tA,2),vA=Ke=>{var Je=cwe(),bt=ct(Je),Ct=ce(bt),XA=kn=>{var qA,En,Ui=awe(),Vi=ce(Ui),Cn=It(()=>(g(b),z(cr),z(l()),Qe(()=>g(b)&&cr(l()))));g2(Vi,{insert:!0,get selected(){return g(Cn)},onContextMenu:de}),TA(Gt=>{qA=Bi(Ui,1,"jse-insert-area jse-inside svelte-1qi6rc1",null,qA,Gt),Vn(Ui,"title",hN),En=Kc(Ui,"",En,{"--level":(g(m),Qe(()=>g(m).length+1))})},[()=>({"jse-hovered":g(B)===B1,"jse-selected":g(b)&&cr(l())})]),se(kn,Ui)};je(Ct,kn=>{z(c()),g(B),z(B1),g(b),z(cr),z(l()),Qe(()=>!c().readOnly&&(g(B)===B1||g(b)&&cr(l())))&&kn(XA)}),ka(ke(Ct,2),1,()=>g(S)||vu,za,(kn,qA,En)=>{var Ui=swe(),Vi=ct(Ui);ka(Vi,1,()=>(z(o()),g(qA),g(u),Qe(()=>(function(Qn,Zt,J){var wt=Zt.start,Si=Math.min(Zt.end,Qn.length),_n=W7(wt,Si);return J&&J.offset!==0?vAe(_n,J.selectionStartIndex,J.selectionItemsCount,J.offset).map((xn,Io)=>({index:xn,gutterIndex:Io})):_n.map(xn=>({index:xn,gutterIndex:xn}))})(o(),g(qA),g(u)))),Qn=>Qn.index,(Qn,Zt)=>{var J=It(()=>(z(ur),z(r()),g(Zt),Qe(()=>ur(r())?r().items[g(Zt).index]:void 0))),wt=It(()=>(z(nv),z(c()),z(l()),g(m),g(Zt),Qe(()=>nv(c().getJson(),l(),g(m).concat(String(g(Zt).index)))))),Si=ji(),_n=ct(Si),xn=It(()=>(z(Kp),z(n()),g(Zt),Qe(()=>Kp(n(),g(Zt).index)))),Io=It(()=>(z(ur),z(a()),g(Zt),Qe(()=>ur(a())?a().items[g(Zt).index]:void 0))),ra=It(()=>(z(ur),z(s()),g(Zt),Qe(()=>ur(s())?s().items[g(Zt).index]:void 0)));AF(_n,{get value(){return z(o()),g(Zt),Qe(()=>o()[g(Zt).index])},get pointer(){return g(xn)},get state(){return g(Io)},get validationErrors(){return g(J)},get searchResults(){return g(ra)},get selection(){return g(wt)},get context(){return c()},onDragSelectionStart:Ce,$$slots:{identifier:(ko,Zo)=>{var Ba=rwe(),To=ce(Ba),_a=ce(To);TA(()=>jt(_a,(g(Zt),Qe(()=>g(Zt).gutterIndex)))),se(ko,Ba)}}}),se(Qn,Si)});var Cn=ke(Vi,2),Gt=Qn=>{var Zt=It(()=>g(S)||vu);j8e(Qn,{get visibleSections(){return g(Zt)},sectionIndex:En,get total(){return z(o()),Qe(()=>o().length)},get path(){return g(m)},get onExpandSection(){return z(c()),Qe(()=>c().onExpandSection)},get selection(){return l()},get context(){return c()}})};je(Cn,Qn=>{g(qA),z(o()),Qe(()=>g(qA).end{var qA=lwe();bA("click",qA,Ne),se(kn,qA)};je(fi,kn=>{g(i)||kn(yn)}),se(Ke,Je)};je(QA,Ke=>{g(f)&&Ke(vA)}),bA("click",oA,x),se(He,he)},qe=He=>{var he=ji(),tA=ct(he),pe=Fe=>{var OA=fwe(),ze=ct(OA),ye=ce(ze),qt=ce(ye),St=ce(qt),yA=ZA=>{un(ZA,{get data(){return y0}})},ei=ZA=>{un(ZA,{get data(){return vh}})};je(St,ZA=>{g(f)?ZA(yA):ZA(ei,!1)});var WA=ke(qt,2);Sa(WA,A,"identifier",{},null);var et=ke(WA,2),kt=ZA=>{se(ZA,Cwe())};je(et,ZA=>{g(i)||ZA(kt)});var JA=ke(et,2),ui=ce(JA),V=ce(ui),$=ZA=>{se(ZA,dwe())},ie=ZA=>{var fi=Iwe();pv(ke(ct(fi),2),{onclick:F,children:(yn,kn)=>{var qA=Mr();TA((En,Ui)=>jt(qA,"".concat(En??"",` + `).concat(Ui??"")),[()=>(z(o()),Qe(()=>Object.keys(o()).length)),()=>(z(o()),Qe(()=>Object.keys(o()).length===1?"prop":"props"))]),se(yn,qA)},$$slots:{default:!0}}),se(ZA,fi)};je(V,ZA=>{g(f)?ZA($):ZA(ie,!1)});var oe=ke(JA,2),Te=ZA=>{var fi=Bwe();g2(ce(fi),{get root(){return g(i)},selected:!0,get onContextMenu(){return z(c()),Qe(()=>c().onContextMenu)}}),se(ZA,fi)};je(oe,ZA=>{z(c()),g(b),z(l()),z(Sn),z(Mo),z(hr),z(Oi),z(ft),g(m),Qe(()=>!c().readOnly&&g(b)&&l()&&(Sn(l())||Mo(l()))&&!hr(l())&&Oi(ft(l()),g(m)))&&ZA(Te)});var QA=ke(ye,2),vA=ZA=>{Mu(ZA,{get validationError(){return g(k)},onExpand:F})};je(QA,ZA=>{g(k),g(f),Qe(()=>g(k)&&(!g(f)||!g(k).isChildError))&&ZA(vA)});var Ke=ke(QA,2),Je=ZA=>{var fi=hwe();bA("click",fi,Ee),se(ZA,fi)},bt=ZA=>{var fi=ji(),yn=ct(fi),kn=qA=>{var En=uwe();bA("click",En,Ne),se(qA,En)};je(yn,qA=>{g(i)||qA(kn)},!0),se(ZA,fi)};je(Ke,ZA=>{g(f)?ZA(Je):ZA(bt,!1)});var Ct=ke(ze,2),XA=ZA=>{var fi=mwe(),yn=ct(fi),kn=ce(yn),qA=Cn=>{var Gt,Qn,Zt=Ewe(),J=ce(Zt),wt=It(()=>(g(b),z(cr),z(l()),Qe(()=>g(b)&&cr(l()))));g2(J,{insert:!0,get selected(){return g(wt)},onContextMenu:de}),TA(Si=>{Gt=Bi(Zt,1,"jse-insert-area jse-inside svelte-1qi6rc1",null,Gt,Si),Vn(Zt,"title",hN),Qn=Kc(Zt,"",Qn,{"--level":(g(m),Qe(()=>g(m).length+1))})},[()=>({"jse-hovered":g(B)===B1,"jse-selected":g(b)&&cr(l())})]),se(Cn,Zt)};je(kn,Cn=>{z(c()),g(B),z(B1),g(b),z(cr),z(l()),Qe(()=>!c().readOnly&&(g(B)===B1||g(b)&&cr(l())))&&Cn(qA)}),ka(ke(kn,2),1,()=>(z(o()),g(u),Qe(()=>(function(Cn,Gt){var Qn=Object.keys(Cn);return Gt&&Gt.offset!==0?vAe(Qn,Gt.selectionStartIndex,Gt.selectionItemsCount,Gt.offset):Qn})(o(),g(u)))),za,(Cn,Gt)=>{var Qn=It(()=>(z(Kp),z(n()),g(Gt),Qe(()=>Kp(n(),g(Gt))))),Zt=It(()=>(z(yl),z(s()),g(Gt),Qe(()=>yl(s())?s().properties[g(Gt)]:void 0))),J=It(()=>(z(yl),z(r()),g(Gt),Qe(()=>yl(r())?r().properties[g(Gt)]:void 0))),wt=It(()=>(g(m),g(Gt),Qe(()=>g(m).concat(g(Gt))))),Si=It(()=>(z(nv),z(c()),z(l()),z(g(wt)),Qe(()=>nv(c().getJson(),l(),g(wt))))),_n=ji(),xn=ct(_n),Io=It(()=>(z(yl),z(a()),g(Gt),Qe(()=>yl(a())?a().properties[g(Gt)]:void 0)));AF(xn,{get value(){return z(o()),g(Gt),Qe(()=>o()[g(Gt)])},get pointer(){return g(Qn)},get state(){return g(Io)},get validationErrors(){return g(J)},get searchResults(){return g(Zt)},get selection(){return g(Si)},get context(){return c()},onDragSelectionStart:Ce,$$slots:{identifier:(ra,ko)=>{var Zo,Ba=Qwe(),To=ce(Ba),_a=It(()=>(z(XAe),z(g(Zt)),Qe(()=>XAe(g(Zt)))));(function(ha,va){Ht(va,!1);var Oo=ge(void 0,!0),BA=ge(void 0,!0),Ri=K(va,"pointer",9),vn=K(va,"key",9),Rn=K(va,"selection",9),sa=K(va,"searchResultItems",9),Ka=K(va,"onUpdateKey",9),zi=K(va,"context",9),_o=ge(void 0,!0);function Cr(Se){g(BA)||zi().readOnly||(Se.preventDefault(),zi().onSelect(_F(g(_o))))}function Jo(Se,iA){var kA=Ka()(vn(),zi().normalization.unescapeValue(Se)),ue=sn(g(_o)).concat(kA);zi().onSelect(iA===v2.nextInside?nn(ue):ed(ue)),iA!==v2.self&&zi().focus()}function $a(){zi().onSelect(ed(g(_o))),zi().focus()}Ue(()=>z(Ri()),()=>{N(_o,Ms(Ri()))}),Ue(()=>(z(Rn()),g(_o)),()=>{N(Oo,Er(Rn())&&Oi(Rn().path,g(_o)))}),Ue(()=>(g(Oo),z(Rn())),()=>{N(BA,g(Oo)&&hr(Rn()))}),qn(),hi(!0);var io=Z8e(),Xi=ct(io),ni=Se=>{var iA=It(()=>(z(zi()),z(vn()),Qe(()=>zi().normalization.escapeValue(vn())))),kA=It(()=>(z(hr),z(Rn()),Qe(()=>hr(Rn())?Rn().initialValue:void 0)));Yie(Se,{get value(){return g(iA)},get initialValue(){return g(kA)},label:"Edit key",shortText:!0,onChange:Jo,onCancel:$a,get onFind(){return z(zi()),Qe(()=>zi().onFind)}})},Zn=Se=>{var iA,kA=q8e(),ue=ce(kA),Ge=HA=>{var Bt=It(()=>(z(zi()),z(vn()),Qe(()=>zi().normalization.escapeValue(vn()))));Wie(HA,{get text(){return g(Bt)},get searchResultItems(){return sa()}})},IA=HA=>{var Bt=Mr();TA(Et=>jt(Bt,Et),[()=>(z(Lu),z(zi()),z(vn()),Qe(()=>Lu(zi().normalization.escapeValue(vn()))))]),se(HA,Bt)};je(ue,HA=>{sa()?HA(Ge):HA(IA,!1)}),TA(()=>iA=Bi(kA,1,"jse-key svelte-1n4cez4",null,iA,{"jse-empty":vn()===""})),bA("dblclick",kA,Cr),se(Se,kA)};je(Xi,Se=>{z(zi()),g(BA),Qe(()=>!zi().readOnly&&g(BA))?Se(ni):Se(Zn,!1)});var xo=ke(Xi,2),Wo=Se=>{g2(Se,{selected:!0,get onContextMenu(){return z(zi()),Qe(()=>zi().onContextMenu)}})};je(xo,Se=>{z(zi()),g(Oo),g(BA),Qe(()=>!zi().readOnly&&g(Oo)&&!g(BA))&&Se(Wo)}),se(ha,io),Pt()})(To,{get pointer(){return g(Qn)},get key(){return g(Gt)},get selection(){return g(Si)},get searchResultItems(){return g(_a)},get context(){return c()},onUpdateKey:P}),TA(ha=>Zo=Bi(Ba,1,"jse-key-outer svelte-1qi6rc1",null,Zo,ha),[()=>({"jse-selected-key":Er(g(Si))&&Oi(g(Si).path,g(wt))})]),se(ra,Ba)}}}),se(Cn,_n)});var En=ke(yn,2),Ui=ke(ce(En),2),Vi=Cn=>{var Gt=pwe();bA("click",Gt,Ne),se(Cn,Gt)};je(Ui,Cn=>{g(i)||Cn(Vi)}),se(ZA,fi)};je(Ct,ZA=>{g(f)&&ZA(XA)}),bA("click",qt,x),se(Fe,OA)},oA=Fe=>{var OA=Dwe(),ze=ce(OA),ye=ce(ze);Sa(ye,A,"identifier",{},null);var qt=ke(ye,2),St=oe=>{se(oe,wwe())};je(qt,oe=>{g(i)||oe(St)});var yA=ke(qt,2),ei=ce(yA),WA=It(()=>g(b)?l():void 0),et=It(()=>(z($Ae),z(s()),Qe(()=>$Ae(s()))));dne(ei,{get path(){return g(m)},get value(){return o()},get enforceString(){return g(D)},get selection(){return g(WA)},get searchResultItems(){return g(et)},get context(){return c()}});var kt=ke(yA,2),JA=oe=>{var Te=ywe();g2(ce(Te),{get root(){return g(i)},selected:!0,get onContextMenu(){return z(c()),Qe(()=>c().onContextMenu)}}),se(oe,Te)};je(kt,oe=>{z(c()),g(b),z(l()),z(Sn),z(Mo),z(hr),z(Oi),z(ft),g(m),Qe(()=>!c().readOnly&&g(b)&&l()&&(Sn(l())||Mo(l()))&&!hr(l())&&Oi(ft(l()),g(m)))&&oe(JA)});var ui=ke(ze,2),V=oe=>{Mu(oe,{get validationError(){return g(k)},onExpand:F})};je(ui,oe=>{g(k)&&oe(V)});var $=ke(ui,2),ie=oe=>{var Te=vwe();bA("click",Te,Ne),se(oe,Te)};je($,oe=>{g(i)||oe(ie)}),se(Fe,OA)};je(tA,Fe=>{z(zn),z(o()),Qe(()=>zn(o()))?Fe(pe):Fe(oA,!1)},!0),se(He,he)};je(Pe,He=>{z(o()),Qe(()=>Array.isArray(o()))?He(be):He(qe,!1)});var st=ke(Pe,2),it=He=>{var he,tA=bwe(),pe=ce(tA),oA=It(()=>(g(b),z(Dl),z(l()),Qe(()=>g(b)&&Dl(l()))));g2(pe,{insert:!0,get selected(){return g(oA)},onContextMenu:Ie}),TA(Fe=>{he=Bi(tA,1,"jse-insert-area jse-after svelte-1qi6rc1",null,he,Fe),Vn(tA,"title",hN)},[()=>({"jse-hovered":g(B)===tv,"jse-selected":g(b)&&Dl(l())})]),se(He,tA)};je(st,He=>{z(c()),g(B),z(tv),g(b),z(Dl),z(l()),Qe(()=>!c().readOnly&&(g(B)===tv||g(b)&&Dl(l())))&&He(it)}),TA((He,he)=>{xe=Bi(fA,1,He,"svelte-1qi6rc1",xe,he),Vn(fA,"data-path",g(e)),Vn(fA,"aria-selected",g(b)),Xe=Kc(fA,"",Xe,{"--level":(g(m),Qe(()=>g(m).length))})},[()=>b2((z(Kg),g(f),z(c()),g(m),z(o()),Qe(()=>Kg("jse-json-node",{"jse-expanded":g(f)},c().onClassName(g(m),o()))))),()=>({"jse-root":g(i),"jse-selected":g(b)&&Mo(l()),"jse-selected-value":g(b)&&Sn(l()),"jse-readonly":c().readOnly,"jse-hovered":g(B)===SAe})]),bA("mousedown",fA,function(He){if((He.buttons===1||He.buttons===2)&&!((he=He.target).nodeName==="DIV"&&he.contentEditable==="true"||He.buttons===1&&_ie(He.target,"BUTTON"))){var he;He.stopPropagation(),He.preventDefault(),c().focus(),document.addEventListener("mousemove",j,!0),document.addEventListener("mouseup",X);var tA=dN(He.target),pe=c().getJson(),oA=c().getDocumentState();if(!l()||tA===fo.after||tA===fo.inside||l().type!==tA&&l().type!==fo.multi||!sm(pe,l(),g(m)))if(ta(ta().selecting=!0),ta(ta().selectionAnchor=g(m)),ta(ta().selectionAnchorType=tA),ta(ta().selectionFocus=g(m)),He.shiftKey){var Fe=c().getSelection();Fe&&c().onSelect(xs(v1(Fe),g(m)))}else if(tA===fo.multi)if(g(i)&&He.target.hasAttribute("data-path")){var OA=Yi(Uie(o(),oA));c().onSelect(jN(OA))}else c().onSelect(xs(g(m),g(m)));else pe!==void 0&&c().onSelect(HAe(tA,g(m)));else He.button===0&&C()(He)}}),bA("mousemove",fA,function(He){if(ta().selecting){He.preventDefault(),He.stopPropagation(),ta().selectionFocus===void 0&&window.getSelection&&window.getSelection().empty();var he=dN(He.target);Oi(g(m),ta().selectionFocus)&&he===ta().selectionAnchorType||(ta(ta().selectionFocus=g(m)),ta(ta().selectionAnchorType=he),c().onSelect(xs(ta().selectionAnchor||ta().selectionFocus,ta().selectionFocus)))}}),bA("mouseover",fA,function(He){ta().selecting||ta().dragging||(He.stopPropagation(),E2(He.target,"data-type","selectable-value")?N(B,SAe):E2(He.target,"data-type","selectable-key")?N(B,void 0):E2(He.target,"data-type","insert-selection-area-inside")?N(B,B1):E2(He.target,"data-type","insert-selection-area-after")&&N(B,tv),clearTimeout(E))}),bA("mouseout",fA,function(He){He.stopPropagation(),E=window.setTimeout(()=>N(B,void 0))}),se(t,fA),Pt()}var Ine={prefix:"fas",iconName:"jsoneditor-expand",icon:[512,512,[],"","M 0,448 V 512 h 512 v -64 z M 0,0 V 64 H 512 V 0 Z M 256,96 128,224 h 256 z M 256,416 384,288 H 128 Z"]},Bne={prefix:"fas",iconName:"jsoneditor-collapse",icon:[512,512,[],"","m 0,224 v 64 h 512 v -64 z M 256,192 384,64 H 128 Z M 256,320 128,448 h 256 z"]},gte={prefix:"fas",iconName:"jsoneditor-format",icon:[512,512,[],"","M 0,32 v 64 h 416 v -64 z M 160,160 v 64 h 352 v -64 z M 160,288 v 64 h 288 v -64 z M 0,416 v 64 h 320 v -64 z"]},Swe={prefix:"fas",iconName:"jsoneditor-compact",icon:[512,512,[],"","M 0,32 v 64 h 512 v -64 z M 0,160 v 64 h 512 v -64 z M 0,288 v 64 h 352 v -64 z"]};si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-welcome.svelte-1lhnan { + flex: 1; + overflow: auto; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + display: flex; + flex-direction: column; + align-items: center; + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-welcome.svelte-1lhnan:last-child { + border-bottom: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-welcome.svelte-1lhnan .jse-space.jse-before:where(.svelte-1lhnan) { + flex: 1; +} +.jse-welcome.svelte-1lhnan .jse-space.jse-after:where(.svelte-1lhnan) { + flex: 2; +} +.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) { + display: flex; + flex-direction: column; + max-width: 300px; + margin: 2em var(--jse-padding, 10px); + gap: var(--jse-padding, 10px); +} +.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) .jse-welcome-info:where(.svelte-1lhnan) { + color: var(--jse-panel-color-readonly, #b2b2b2); +} +.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) button:where(.svelte-1lhnan) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); + color: var(--jse-button-primary-color, #fff); + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + border-radius: 3px; +} +.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) button:where(.svelte-1lhnan):hover { + background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); +} +.jse-welcome.svelte-1lhnan .jse-contents:where(.svelte-1lhnan) button:where(.svelte-1lhnan):disabled { + background: var(--jse-button-primary-background-disabled, #9d9d9d); +}`);var kwe=Oe('
      You can paste clipboard data using Ctrl+V, or use the following options:
      ',1),_we=Oe('
      Empty document
      ');function tF(t,A){var e=typeof t=="string"?t.toLowerCase():t,i=typeof A=="string"?A.toLowerCase():A;return(0,Qte.default)(e,i)}function hne(t){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,n=nt(t,A);if(Ca(n)){if(e===void 0)throw new Error("Cannot sort: no property selected by which to sort the array");return(function(o){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,l=(function(C,d){var B={boolean:0,number:1,string:2,undefined:4},E=3;return function(u,m){var f=nt(u,C),D=nt(m,C);if(typeof f!=typeof D){var S,k,b=(S=B[typeof f])!==null&&S!==void 0?S:E,x=(k=B[typeof D])!==null&&k!==void 0?k:E;return b>x?d:bD?d:f1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,s=nt(o,a),l=Object.keys(s).slice();l.sort((C,d)=>r*tF(C,d));var c={};return l.forEach(C=>c[C]=s[C]),[{op:"replace",path:Lt(a),value:c}]})(t,A,i);throw new Error("Cannot sort: no array or object")}Em(["click"]);si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-navigation-bar-dropdown.svelte-1k47orx { + position: absolute; + top: 100%; + left: 0; + z-index: 3; + background: var(--jse-navigation-bar-background, var(--jse-background-color, #fff)); + color: var(--jse-navigation-bar-dropdown-color, #656565); + box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); + display: flex; + flex-direction: column; + max-height: 300px; + overflow: auto; + min-width: 80px; +} +.jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item:where(.svelte-1k47orx) { + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + border: none; + background: transparent; + color: inherit; + cursor: pointer; + outline: none; + text-align: left; + white-space: nowrap; + box-sizing: border-box; + padding: calc(0.5 * var(--jse-padding, 10px)) 36px; +} +.jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item:where(.svelte-1k47orx):focus, .jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item:where(.svelte-1k47orx):hover { + background: var(--jse-navigation-bar-background-highlight, #e5e5e5); +} +.jse-navigation-bar-dropdown.svelte-1k47orx button.jse-navigation-bar-dropdown-item.jse-selected:where(.svelte-1k47orx) { + background: var(--jse-navigation-bar-dropdown-color, #656565); + color: var(--jse-navigation-bar-background, var(--jse-background-color, #fff)); +}`);var xwe=Oe(''),Rwe=Oe(''),Nwe=Oe('
      ');function Fwe(t,A){Ht(A,!1);var e=K(A,"items",9),i=K(A,"selectedItem",9),n=K(A,"onSelect",9);hi(!0);var o=Nwe(),a=ce(o);ka(a,1,()=>(z(Dv),z(e()),Qe(()=>Dv(e(),100))),l=>l,(l,c)=>{var C,d=xwe(),B=ce(d);TA((E,u)=>{C=Bi(d,1,"jse-navigation-bar-dropdown-item svelte-1k47orx",null,C,{"jse-selected":g(c)===i()}),Vn(d,"title",E),jt(B,u)},[()=>(g(c),Qe(()=>g(c).toString())),()=>(z(JC),g(c),Qe(()=>JC(g(c).toString(),30)))]),bA("click",d,UC(()=>n()(g(c)))),se(l,d)});var r=ke(a,2),s=l=>{var c=Rwe();Vn(c,"title","Limited to 100 items"),se(l,c)};je(r,l=>{z(e()),Qe(()=>e().length>100)&&l(s)}),se(t,o),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-navigation-bar-item.svelte-13sijxb { + position: relative; + display: flex; +} +.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button:where(.svelte-13sijxb) { + font-family: inherit; + font-size: inherit; + padding: calc(0.5 * var(--jse-padding, 10px)) 2px; + border: none; + background: transparent; + color: inherit; + cursor: pointer; + outline: none; + min-width: 2em; + white-space: nowrap; +} +.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button:where(.svelte-13sijxb):focus, .jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button:where(.svelte-13sijxb):hover { + background: var(--jse-panel-button-background-highlight, #e0e0e0); + color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); +} +.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button.jse-navigation-bar-arrow:where(.svelte-13sijxb) { + padding: 2px var(--jse-padding, 10px) 0; +} +.jse-navigation-bar-item.svelte-13sijxb button.jse-navigation-bar-button.jse-navigation-bar-arrow.jse-open:where(.svelte-13sijxb) { + background: var(--jse-navigation-bar-background, var(--jse-background-color, #fff)); + color: var(--jse-navigation-bar-dropdown-color, #656565); +} +.jse-navigation-bar-item.svelte-13sijxb:last-child { + padding-right: var(--jse-padding, 10px); +}`);var Lwe=Oe(''),Gwe=Oe('
      ');function Cte(t,A){Ht(A,!1);var e,i=ge(void 0,!0),n=ge(void 0,!0),{openAbsolutePopup:o,closeAbsolutePopup:a}=k2("absolute-popup"),r=K(A,"path",9),s=K(A,"index",9),l=K(A,"onSelect",9),c=K(A,"getItems",9),C=ge(void 0,!0),d=ge(!1,!0);function B(S){a(e),l()(g(i).concat(S))}Ue(()=>(z(r()),z(s())),()=>{N(i,r().slice(0,s()))}),Ue(()=>(z(r()),z(s())),()=>{N(n,r()[s()])}),qn(),hi(!0);var E,u=Gwe(),m=ce(u);un(ce(m),{get data(){return Uk}});var f=ke(m,2),D=S=>{var k=Lwe(),b=ce(k);TA(()=>jt(b,g(n))),bA("click",k,()=>B(g(n))),se(S,k)};je(f,S=>{g(n)!==void 0&&S(D)}),na(u,S=>N(C,S),()=>g(C)),TA(()=>E=Bi(m,1,"jse-navigation-bar-button jse-navigation-bar-arrow svelte-13sijxb",null,E,{"jse-open":g(d)})),bA("click",m,function(){if(g(C)){N(d,!0);var S={items:c()(g(i)),selectedItem:g(n),onSelect:B};e=o(Fwe,S,{anchor:g(C),closeOnOuterClick:!0,onClose:()=>{N(d,!1)}})}}),se(t,u),Pt()}function LF(t){var A,e;if(navigator.clipboard)return navigator.clipboard.writeText(t);if((A=(e=document).queryCommandSupported)!==null&&A!==void 0&&A.call(e,"copy")){var i=document.createElement("textarea");i.value=t,i.style.position="fixed",i.style.opacity="0",document.body.appendChild(i),i.select();try{document.execCommand("copy")}catch(n){console.error(n)}finally{document.body.removeChild(i)}return Promise.resolve()}return console.error("Copy failed."),Promise.resolve()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-navigation-bar-path-editor.svelte-uyexy4 { + flex: 1; + display: flex; + border: var(--jse-edit-outline, 2px solid #656565); + background: var(--jse-background-color, #fff); +} +.jse-navigation-bar-path-editor.svelte-uyexy4 input.jse-navigation-bar-text:where(.svelte-uyexy4) { + flex: 1; + font-family: inherit; + font-size: inherit; + padding: 0 5px 1px; + background: var(--jse-background-color, #fff); + color: var(--jse-text-color, #4d4d4d); + border: none; + outline: none; +} +.jse-navigation-bar-path-editor.svelte-uyexy4 button:where(.svelte-uyexy4) { + border: none; + background: var(--jse-background-color, #fff); + cursor: pointer; + font-family: inherit; + font-size: 80%; + color: inherit; +} +.jse-navigation-bar-path-editor.svelte-uyexy4 button.jse-navigation-bar-copy.copied:where(.svelte-uyexy4) { + color: var(--message-success-background, #9ac45d); +} +.jse-navigation-bar-path-editor.svelte-uyexy4 button.jse-navigation-bar-validation-error:where(.svelte-uyexy4) { + color: var(--jse-error-color, #ee5341); +} +.jse-navigation-bar-path-editor.error.svelte-uyexy4 { + border-color: var(--jse-error-color, #ee5341); +} +.jse-navigation-bar-path-editor.error.svelte-uyexy4 input.jse-navigation-bar-text:where(.svelte-uyexy4) { + color: var(--jse-error-color, #ee5341); +} +.jse-navigation-bar-path-editor.svelte-uyexy4 .jse-copied-text:where(.svelte-uyexy4) { + background: var(--message-success-background, #9ac45d); + color: var(--jse-message-success-color, #fff); + position: relative; + margin: 2px; + padding: 0 5px; + border-radius: 3px; +}`);var Kwe=Oe(''),Uwe=Oe('
      Copied!
      '),Twe=Oe('
      ');function Owe(t,A){Ht(A,!1);var e=ge(),i=k2("absolute-popup"),n=K(A,"path",8),o=K(A,"pathParser",8),a=K(A,"onChange",8),r=K(A,"onClose",8),s=K(A,"onError",8),l=K(A,"pathExists",8),c=ge(),C=ge(),d=ge(!1),B=void 0,E=ge(!1);function u(){g(c).focus()}function m(X){try{var Ae=o().parse(X);return(function(W){if(!l()(W))throw new Error("Path does not exist in current document")})(Ae),{path:Ae,error:void 0}}catch(W){return{path:void 0,error:W}}}gs(()=>{u()}),Tc(()=>{clearTimeout(B)}),Ue(()=>(z(o()),z(n())),()=>{N(C,o().stringify(n()))}),Ue(()=>(g(d),g(C)),()=>{N(e,g(d)?m(g(C)).error:void 0)}),qn(),hi();var f,D=Twe(),S=ce(D);na(S,X=>N(c,X),()=>g(c));var k=ke(S,2),b=X=>{var Ae=Kwe();un(ce(Ae),{get data(){return Hd}}),Ns(Ae,(W,Ce)=>Uu?.(W,Ce),()=>UA({text:String(g(e)||"")},i)),se(X,Ae)};je(k,X=>{g(e)&&X(b)});var x=ke(k,2),F=X=>{se(X,Uwe())};je(x,X=>{g(E)&&X(F)});var P,j=ke(x,2);un(ce(j),{get data(){return DC}}),TA(()=>{f=Bi(D,1,"jse-navigation-bar-path-editor svelte-uyexy4",null,f,{error:g(e)}),x1(S,g(C)),P=Bi(j,1,"jse-navigation-bar-copy svelte-uyexy4",null,P,{copied:g(E)})}),bA("keydown",S,UC(function(X){var Ae=$C(X);if(Ae==="Escape"&&(X.preventDefault(),r()()),Ae==="Enter"){X.preventDefault(),N(d,!0);var W=m(g(C));W.path!==void 0?a()(W.path):s()(W.error)}})),bA("input",S,function(X){N(C,X.currentTarget.value)}),bA("click",j,function(){LF(g(C)),N(E,!0),B=window.setTimeout(()=>N(E,!1),1e3),u()}),se(t,D),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-navigation-bar.svelte-hjhal6 { + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + background: var(--jse-panel-background, #ebebeb); + color: var(--jse-panel-button-color, inherit); + padding: 0; + margin: 0; + display: flex; + overflow: auto; + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6) { + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); + color: var(--jse-panel-color-readonly, #b2b2b2); + background: transparent; + border: none; + display: flex; + cursor: pointer; + outline: none; + align-items: center; +} +.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit.flex:where(.svelte-hjhal6) { + flex: 1; +} +.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6):focus, .jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6):hover, .jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit.editing:where(.svelte-hjhal6) { + background: var(--jse-panel-button-background-highlight, #e0e0e0); + color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); + transition: color 0.2s ease-in, background 0.2s ease-in; +} +.jse-navigation-bar.svelte-hjhal6 .jse-navigation-bar-edit:where(.svelte-hjhal6) .jse-navigation-bar-space:where(.svelte-hjhal6) { + flex: 1; + text-align: left; +}`);var Jwe=Oe(" ",1),zwe=Oe('
      ');function Ywe(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),n=Qr("jsoneditor:NavigationBar"),o=K(A,"json",9),a=K(A,"selection",9),r=K(A,"onSelect",9),s=K(A,"onError",9),l=K(A,"pathParser",9),c=ge(void 0,!0),C=ge(!1,!0);function d(Ae){n("get items for path",Ae);var W=nt(o(),Ae);if(Array.isArray(W))return W7(0,W.length).map(String);if(zn(W)){var Ce=Object.keys(W).slice(0);return Ce.sort(tF),Ce}return[]}function B(Ae){return Or(o(),Ae)}function E(Ae){n("select path",JSON.stringify(Ae)),r()(xs(Ae,Ae))}function u(){N(C,!1)}function m(Ae){u(),E(Ae)}Ue(()=>(z(a()),ft),()=>{N(e,a()?ft(a()):[])}),Ue(()=>(z(o()),g(e)),()=>{N(i,ya(nt(o(),g(e))))}),Ue(()=>g(e),()=>{g(e),setTimeout(()=>{if(g(c)&&g(c).scrollTo){var Ae=g(c).scrollWidth-g(c).clientWidth;Ae>0&&(n("scrollTo ",Ae),g(c).scrollTo({left:Ae,behavior:"smooth"}))}})}),qn(),hi(!0);var f=zwe(),D=ce(f),S=Ae=>{var W=Jwe(),Ce=ct(W);ka(Ce,1,()=>g(e),za,(Ee,Ne,de)=>{Cte(Ee,{getItems:d,get path(){return g(e)},index:de,onSelect:E})});var we=ke(Ce,2),Be=Ee=>{Cte(Ee,{getItems:d,get path(){return g(e)},get index(){return g(e),Qe(()=>g(e).length)},onSelect:E})};je(we,Ee=>{g(i)&&Ee(Be)}),se(Ae,W)},k=Ae=>{Owe(Ae,{get path(){return g(e)},onClose:u,onChange:m,get onError(){return s()},pathExists:B,get pathParser(){return l()}})};je(D,Ae=>{g(C)?Ae(k,!1):Ae(S)});var b,x=ke(D,2),F=ce(x),P=ce(F),j=ke(F,2),X=It(()=>g(C)?iZ:Xq);un(j,{get data(){return g(X)}}),na(f,Ae=>N(c,Ae),()=>g(c)),TA(Ae=>{b=Bi(x,1,"jse-navigation-bar-edit svelte-hjhal6",null,b,{flex:!g(C),editing:g(C)}),Vn(x,"title",g(C)?"Cancel editing the selected path":"Edit the selected path"),jt(P,Ae)},[()=>(z(ya),z(o()),g(C),Qe(()=>ya(o())||g(C)?"\xA0":"Navigation bar"))]),bA("click",x,function(){N(C,!g(C))}),se(t,f),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-search-box.svelte-1x1x8q0 { + border: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); + border-radius: 3px; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + background: var(--jse-panel-background, #ebebeb); + color: var(--jse-panel-color-readonly, #b2b2b2); + box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); + display: inline-block; + width: 400px; + max-width: 100%; + overflow: auto; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) { + display: flex; + align-items: stretch; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0), +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) input:where(.svelte-1x1x8q0) { + font-family: inherit; + font-size: inherit; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0) { + display: block; + text-align: center; + border: none; + padding: 0 5px; + margin: 0; + cursor: pointer; + color: var(--jse-panel-button-color, inherit); + background: var(--jse-panel-button-background, transparent); +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0):hover { + color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); + background: var(--jse-panel-button-background-highlight, #e0e0e0); +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) input:where(.svelte-1x1x8q0) { + color: var(--jse-panel-color, var(--jse-text-color, #4d4d4d)); + border: var(--jse-input-border, 1px solid #d8dbdf); + border-radius: 3px; + background: var(--jse-input-background, var(--jse-background-color, #fff)); + height: 28px; + padding: 0 5px; + margin: 0; + flex: 1; + width: 0; + min-width: 50px; + outline: none; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-replace-toggle:where(.svelte-1x1x8q0) { + padding: var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)); + min-width: 20px; + background: var(--jse-panel-button-background-highlight, #e0e0e0); +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) { + flex: 1; + display: flex; + flex-direction: column; + padding: calc(0.5 * var(--jse-padding, 10px)); + gap: calc(0.5 * var(--jse-padding, 10px)); +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) { + flex: 1; + display: flex; + align-items: center; + position: relative; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) .jse-search-icon:where(.svelte-1x1x8q0) { + color: inherit; + cursor: inherit; + background: inherit; + width: 32px; + text-align: center; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) label.jse-search-input-label:where(.svelte-1x1x8q0) { + flex: 1; + display: flex; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) .jse-search-count:where(.svelte-1x1x8q0) { + color: inherit; + font-size: 80%; + visibility: hidden; + padding: 0 5px; + min-width: 36px; + text-align: center; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-search-section:where(.svelte-1x1x8q0) .jse-search-count.jse-visible:where(.svelte-1x1x8q0) { + visibility: visible; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-replace-section:where(.svelte-1x1x8q0) { + flex: 1; + display: flex; + padding-left: 32px; +} +.jse-search-box.svelte-1x1x8q0 .jse-search-form:where(.svelte-1x1x8q0) .jse-search-contents:where(.svelte-1x1x8q0) .jse-replace-section:where(.svelte-1x1x8q0) button:where(.svelte-1x1x8q0) { + width: auto; +}`);var Hwe=Oe(''),Pwe=Oe('
      '),jwe=Oe('');function une(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),n=ge(void 0,!0),o=Qr("jsoneditor:SearchBox"),a=K(A,"json",9),r=K(A,"documentState",9),s=K(A,"parser",9),l=K(A,"showSearch",9),c=K(A,"showReplace",13),C=K(A,"readOnly",9),d=K(A,"columns",9),B=K(A,"onSearch",9),E=K(A,"onFocus",9),u=K(A,"onPatch",9),m=K(A,"onClose",9),f=ge("",!0),D="",S=ge("",!0),k=ge(!1,!0),b=ge(void 0,!0),x=oQ(function(Fe){return qe.apply(this,arguments)},300),F=oQ(function(Fe){return st.apply(this,arguments)},300);function P(){c(!c()&&!C())}function j(Fe){Fe.stopPropagation();var OA=$C(Fe);OA==="Enter"&&(Fe.preventDefault(),g(f)!==D?x.flush():de()),OA==="Shift+Enter"&&(Fe.preventDefault(),xe()),OA==="Ctrl+Enter"&&(Fe.preventDefault(),c()?Ce():de()),OA==="Ctrl+H"&&(Fe.preventDefault(),P()),OA==="Escape"&&(Fe.preventDefault(),he())}function X(Fe){$C(Fe)==="Enter"&&(Fe.preventDefault(),Fe.stopPropagation(),Ce())}function Ae(){return W.apply(this,arguments)}function W(){return(W=Ai(function*(){qo(),yield x.flush()})).apply(this,arguments)}function Ce(){return we.apply(this,arguments)}function we(){return(we=Ai(function*(){var Fe;if(!C()){var OA=(Fe=g(b))===null||Fe===void 0?void 0:Fe.activeItem;if(o("handleReplace",{replaceText:g(S),activeItem:OA}),g(b)&&OA&&a()!==void 0){N(b,UA(UA({},jAe(g(b))),{},{activeIndex:g(i)}));var{operations:ze,newSelection:ye}=C6e(a(),r(),g(S),OA,s());u()(ze,(qt,St)=>({state:St,selection:ye})),qo(),yield F.flush(),yield fA()}}})).apply(this,arguments)}function Be(){return Ee.apply(this,arguments)}function Ee(){return(Ee=Ai(function*(){if(!C()){o("handleReplaceAll",{text:g(f),replaceText:g(S)});var{operations:Fe,newSelection:OA}=(function(ze,ye,qt,St,yA){for(var ei=VAe(qt,ze,{maxResults:1/0}),WA=[],et=0;et$.field!==ie.field?$.field===Rg.key?1:-1:ie.path.length-$.path.length);var ui,V=[];return WA.forEach($=>{var{field:ie,path:oe,items:Te}=$;if(ie===Rg.key){var QA=sn(oe),vA=nt(ze,QA),Ke=Yi(oe),Je=ym(QA,Object.keys(vA),Ke,ZAe(Ke,St,Te));V=V.concat(Je),ui=Ku(ze,Je)}else{if(ie!==Rg.value)throw new Error("Cannot replace: unknown type of search result field ".concat(ie));var bt=nt(ze,oe);if(bt===void 0)throw new Error("Cannot replace: path not found ".concat(Lt(oe)));var Ct=typeof bt=="string"?bt:String(bt),XA=U0(ze,ye,oe),ZA=ZAe(Ct,St,Te),fi=[{op:"replace",path:Lt(oe),value:XA?ZA:Vu(ZA,yA)}];V=V.concat(fi),ui=Ku(ze,fi)}}),{operations:V,newSelection:ui}})(a(),r(),g(f),g(S),s());u()(Fe,(ze,ye)=>({state:ye,selection:OA})),yield fA()}})).apply(this,arguments)}function Ne(Fe){Fe.select()}function de(){return Ie.apply(this,arguments)}function Ie(){return(Ie=Ai(function*(){N(b,g(b)?jAe(g(b)):void 0),yield fA()})).apply(this,arguments)}function xe(){return Xe.apply(this,arguments)}function Xe(){return Xe=Ai(function*(){N(b,g(b)?(function(Fe){var OA=Fe.activeIndex>0?Fe.activeIndex-1:Fe.items.length-1,ze=Fe.items[OA],ye=Fe.items.map((qt,St)=>UA(UA({},qt),{},{active:St===OA}));return UA(UA({},Fe),{},{items:ye,activeItem:ze,activeIndex:OA})})(g(b)):void 0),yield fA()}),Xe.apply(this,arguments)}function fA(){return Pe.apply(this,arguments)}function Pe(){return(Pe=Ai(function*(){var Fe;o("handleFocus",g(b));var OA=(Fe=g(b))===null||Fe===void 0?void 0:Fe.activeItem;OA&&a()!==void 0&&(yield E()(OA.path,OA.resultIndex))})).apply(this,arguments)}function be(){return be=Ai(function*(Fe){yield it(Fe,g(f),a())}),be.apply(this,arguments)}function qe(){return qe=Ai(function*(Fe){yield it(l(),Fe,a()),yield fA()}),qe.apply(this,arguments)}function st(){return st=Ai(function*(Fe){yield it(l(),g(f),Fe)}),st.apply(this,arguments)}function it(Fe,OA,ze){return He.apply(this,arguments)}function He(){return He=Ai(function*(Fe,OA,ze){return Fe?(o("applySearch",{showSearch:Fe,text:OA}),OA===""?(o("clearing search result"),g(b)!==void 0&&N(b,void 0),Promise.resolve()):(D=OA,N(k,!0),new Promise(ye=>{setTimeout(()=>{var qt=VAe(OA,ze,{maxResults:IN,columns:d()});N(b,(function(St,yA){var ei=yA!=null&&yA.activeItem?WAe(yA.activeItem):void 0,WA=St.findIndex(JA=>Oi(ei,WAe(JA))),et=WA!==-1?WA:yA?.activeIndex!==void 0&&yA?.activeIndex0?0:-1,kt=St.map((JA,ui)=>UA(UA({resultIndex:ui},JA),{},{active:ui===et}));return{items:kt,activeItem:kt[et],activeIndex:et}})(qt,g(b))),N(k,!1),ye()})}))):(g(b)&&N(b,void 0),Promise.resolve())}),He.apply(this,arguments)}function he(){o("handleClose"),x.cancel(),F.cancel(),it(!1,g(f),a()),m()()}Ue(()=>g(b),()=>{var Fe;N(e,((Fe=g(b))===null||Fe===void 0||(Fe=Fe.items)===null||Fe===void 0?void 0:Fe.length)||0)}),Ue(()=>g(b),()=>{var Fe;N(i,((Fe=g(b))===null||Fe===void 0?void 0:Fe.activeIndex)||0)}),Ue(()=>(g(e),IN),()=>{N(n,g(e)>=IN?"".concat(999,"+"):String(g(e)))}),Ue(()=>(z(B()),g(b)),()=>{B()(g(b))}),Ue(()=>z(l()),()=>{(function(Fe){be.apply(this,arguments)})(l())}),Ue(()=>g(f),()=>{x(g(f))}),Ue(()=>z(a()),()=>{F(a())}),qn(),hi(!0);var tA=ji(),pe=ct(tA),oA=Fe=>{var OA=jwe(),ze=ce(OA),ye=ce(ze),qt=Ke=>{var Je=Hwe(),bt=ce(Je),Ct=It(()=>c()?y0:vh);un(bt,{get data(){return g(Ct)}}),bA("click",Je,P),se(Ke,Je)};je(ye,Ke=>{C()||Ke(qt)});var St=ce(ke(ye,2)),yA=ce(St),ei=ce(yA),WA=Ke=>{un(Ke,{get data(){return Wq},spin:!0})},et=Ke=>{un(Ke,{get data(){return Pp}})};je(ei,Ke=>{g(k)?Ke(WA):Ke(et,!1)});var kt=ke(yA,2),JA=ce(kt);Pr(()=>vv(JA,()=>g(f),Ke=>N(f,Ke))),Ns(JA,Ke=>Ne?.(Ke)),Pr(()=>bA("paste",JA,Ae));var ui,V=ke(kt,2),$=ce(V),ie=ke(V,2);un(ce(ie),{get data(){return nZ}});var oe=ke(ie,2);un(ce(oe),{get data(){return Zq}});var Te=ke(oe,2);un(ce(Te),{get data(){return Vp}});var QA=ke(St,2),vA=Ke=>{var Je=Pwe(),bt=ce(Je),Ct=ke(bt,2),XA=ke(Ct,2);vv(bt,()=>g(S),ZA=>N(S,ZA)),bA("keydown",bt,X),bA("click",Ct,Ce),bA("click",XA,Be),se(Ke,Je)};je(QA,Ke=>{c()&&!C()&&Ke(vA)}),TA(()=>{var Ke;ui=Bi(V,1,"jse-search-count svelte-1x1x8q0",null,ui,{"jse-visible":g(f)!==""}),jt($,"".concat(g(i)!==-1&&g(i){l()&&Fe(oA)}),se(t,tA),Pt()}var Cm=Symbol("path");function Vwe(t,A){var e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1/0,i={};Array.isArray(t)&&(function(o,a,r){if(o.length1?(o.length-1)/(a-1):o.length,l=0;l{zn(o)?Ene(o,i,A):i[Cm]=!0});var n=[];return Cm in i&&n.push([]),Qne(i,[],n,A),n}function Ene(t,A,e){for(var i in t){var n=t[i],o=A[i]||(A[i]={});zn(n)&&e?Ene(n,o,e):o[Cm]===void 0&&(o[Cm]=!0)}}function Qne(t,A,e,i){for(var n in t){var o=A.concat(n),a=t[n];a&&a[Cm]===!0&&e.push(o),fa(a)&&i&&Qne(a,o,e,i)}}function qwe(t,A,e,i,n,o){for(var a=arguments.length>6&&arguments[6]!==void 0?arguments[6]:80,r=Ca(e)?e.length:0,s=(function(D,S){var k=Object.values(D);if(tn(k))return S;var b=(x,F)=>x+F;return k.reduce(b)/k.length})(i,n),l=t-a,c=A+2*a,C=D=>i[D]||n,d=0,B=o;B0&&(B-=C(--d));for(var E=d,u=0;uz0(i,o))}}function h1(t,A){var{rowIndex:e,columnIndex:i}=t;return[String(e),...A[i]]}function Zwe(t,A){var[e,i]=ez(t,a=>BF(a.path[0])),n=XJ(e,Wwe),o=$J(n,a=>{var r={row:[],columns:{}};return a.forEach(s=>{var l=(function(c,C){var d=Rc(c.path,C);return d.columnIndex!==-1?d.columnIndex:-1})(s,A);l!==-1?(r.columns[l]===void 0&&(r.columns[l]=[]),r.columns[l].push(s)):r.row.push(s)}),r});return{root:i,rows:o}}function gu(t,A){if(A&&A.length!==0)return A.length===1?A[0]:{path:t,message:"Multiple validation issues: "+A.map(e=>bl(e.path)+" "+e.message).join(", "),severity:xg.warning}}function Wwe(t){return parseInt(t.path[0],10)}function Xwe(t,A,e){var i=A.some(n=>(function(o,a,r){if(!o)return!1;if(a.op==="replace"){var s=Ms(a.path),{rowIndex:l,columnIndex:c}=Rc(s,r),C=r.findIndex(d=>Oi(d,o.path));if(l!==-1&&c!==-1&&c!==C)return!1}return!0})(t,n,e));return i?void 0:t}var Rs=Qr("jsoneditor:actions");function pne(t){return iF.apply(this,arguments)}function iF(){return iF=Ai(function*(t){var{json:A,selection:e,indentation:i,readOnly:n,parser:o,onPatch:a}=t;if(!n&&A!==void 0&&e&&Qu(e)){var r=Jie(A,e,i,o);if(r!==void 0){Rs("cut",{selection:e,clipboard:r,indentation:i}),yield LF(r);var{operations:s,newSelection:l}=Vie(A,e);a(s,(c,C)=>({state:C,selection:l}))}}}),iF.apply(this,arguments)}function mne(t){return nF.apply(this,arguments)}function nF(){return nF=Ai(function*(t){var{json:A,selection:e,indentation:i,parser:n}=t,o=Jie(A,e,i,n);o!==void 0&&(Rs("copy",{clipboard:o,indentation:i}),yield LF(o))}),nF.apply(this,arguments)}function fne(t){var{clipboardText:A,json:e,selection:i,readOnly:n,parser:o,onPatch:a,onChangeText:r,onPasteMultilineText:s,openRepairModal:l}=t;if(!n)try{c(A)}catch(C){l(A,d=>{Rs("repaired pasted text: ",d),c(d)})}function c(C){if(e!==void 0){var d=i||nn([]),B=jie(e,d,C,o),E=(function(u,m,f){var D=arguments.length>3&&arguments[3]!==void 0?arguments[3]:n6e;if(u.length>D)return!1;var S=/\n/.test(u);if(!S)return!1;var k=m.some(x=>x.op==="replace"&&Array.isArray(x.value)),b=m.filter(x=>x.op==="add").length>1;if(!k&&!b)return!1;try{return pm(u,f.parse),!1}catch(x){return!0}})(A,B,o);Rs("paste",{pastedText:C,operations:B,ensureSelection:d,pasteMultilineText:E}),a(B,(u,m)=>{var f=m;return B.filter(D=>(dk(D)||q8(D))&&ya(D.value)).forEach(D=>{var S=hl(e,D.path);f=N1(u,f,S)}),{state:f}}),E&&s(C)}else Rs("paste text",{pastedText:C}),r(A,(u,m)=>{if(u)return{state:N1(u,m,[])}})}}function wne(t){var{json:A,text:e,selection:i,keepSelection:n,readOnly:o,onChange:a,onPatch:r}=t;if(!o&&i){var s=A!==void 0&&(Er(i)||Sn(i))?xs(i.path,i.path):i;if(tn(ft(i)))Rs("remove root",{selection:i}),a&&a({text:"",json:void 0},A!==void 0?{text:void 0,json:A}:{text:e||"",json:A},{contentErrors:void 0,patchResult:void 0});else if(A!==void 0){var{operations:l,newSelection:c}=Vie(A,s);Rs("remove",{operations:l,selection:i,newSelection:c}),r(l,(C,d)=>({state:d,selection:n?i:c}))}}}function Ov(t){var{insertType:A,selectInside:e,initialValue:i,json:n,selection:o,readOnly:a,parser:r,onPatch:s,onReplaceJson:l}=t;if(!a){var c=(function(u,m,f){if(f==="object")return{};if(f==="array")return[];if(f==="structure"&&u!==void 0){var D=m?Tie(m):[],S=nt(u,D);if(Array.isArray(S)&&!tn(S)){var k=i0(S);return ya(k)?qJ(k,b=>Array.isArray(b)?[]:zn(b)?void 0:""):""}}return""})(n,o,A);if(n!==void 0){var C=r.stringify(c),d=jie(n,o,C,r);Rs("onInsert",{insertType:A,operations:d,newValue:c,data:C});var B=Yi(d.filter(u=>u.op==="add"||u.op==="replace"));s(d,(u,m,f)=>{if(B){var D=hl(u,B.path);if(ya(c))return{state:kg(u,m,D,kF),selection:e?Ad(D):f};if(c===""){var S=tn(D)?void 0:nt(u,sn(D));return{state:kg(u,m,D,Ev),selection:zn(S)?_F(D,i):_v(D,i)}}}}),Rs("after patch")}else{Rs("onInsert",{insertType:A,newValue:c});var E=[];l(c,(u,m)=>({state:N1(u,m,E),selection:ya(c)?Ad(E):_v(E)}))}}}function yne(t){return oF.apply(this,arguments)}function oF(){return oF=Ai(function*(t){var{char:A,selectInside:e,json:i,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s,onSelect:l}=t;o||(Er(n)?l(UA(UA({},n),{},{edit:!0,initialValue:A})):A==="{"?Ov({insertType:"object",selectInside:e,initialValue:void 0,json:i,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s}):A==="["?Ov({insertType:"array",selectInside:e,initialValue:void 0,json:i,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s}):Sn(n)&&i!==void 0?ya(nt(i,n.path))||l(UA(UA({},n),{},{edit:!0,initialValue:A})):(Rs("onInsertValueWithCharacter",{char:A}),yield(function(c){return aF.apply(this,arguments)})({char:A,json:i,selection:n,readOnly:o,parser:a,onPatch:r,onReplaceJson:s})))}),oF.apply(this,arguments)}function aF(){return aF=Ai(function*(t){var{char:A,json:e,selection:i,readOnly:n,parser:o,onPatch:a,onReplaceJson:r}=t;n||Ov({insertType:"value",selectInside:!1,initialValue:A,json:e,selection:i,readOnly:n,parser:o,onPatch:a,onReplaceJson:r})}),aF.apply(this,arguments)}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-json-preview.svelte-25xmyd { + flex: 1; + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + color: var(--jse-panel-color-readonly, #b2b2b2); + overflow: auto; + white-space: pre-wrap; + padding: 2px; + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); + border-bottom: var(--jse-main-border, 1px solid #d7d7d7); +}`);var $we=Oe('
      ');function vne(t,A){Ht(A,!1);var e=ge(),i=ge(),n=K(A,"text",8),o=K(A,"json",8),a=K(A,"indentation",8),r=K(A,"parser",8);Ue(()=>(z(o()),z(n())),()=>{N(e,o()!==void 0?{json:o()}:{text:n()||""})}),Ue(()=>(g(e),z(a()),z(r()),bv),()=>{N(i,JC(ON(g(e),a(),r()),bv))}),qn(),hi();var s=$we(),l=ce(s);TA(()=>jt(l,g(i))),se(t,s),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +button.jse-context-menu-button.svelte-16jz6ui { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + flex: 1; + white-space: nowrap; + padding: var(--jse-padding, 10px); + color: inherit; +} +button.jse-context-menu-button.svelte-16jz6ui:hover { + background: var(--jse-context-menu-background-highlight, #7a7a7a); +} +button.jse-context-menu-button.svelte-16jz6ui:focus { + background: var(--jse-context-menu-background-highlight, #7a7a7a); + z-index: 1; +} +button.jse-context-menu-button.svelte-16jz6ui:disabled { + color: var(--jse-context-menu-color-disabled, #9d9d9d); + background: unset; +} +button.jse-context-menu-button.left.svelte-16jz6ui { + text-align: left; +} +button.jse-context-menu-button.svelte-16jz6ui svg { + width: 16px; +}`);var eye=Oe('');function bN(t,A){Ht(A,!1);var e=K(A,"item",8),i=K(A,"className",8,void 0),n=K(A,"onRequestClose",8);hi();var o=eye(),a=ce(o),r=c=>{un(c,{get data(){return z(e()),Qe(()=>e().icon)}})};je(a,c=>{z(e()),Qe(()=>e().icon)&&c(r)});var s=ke(a,2),l=c=>{var C=Mr();TA(()=>jt(C,(z(e()),Qe(()=>e().text)))),se(c,C)};je(s,c=>{z(e()),Qe(()=>e().text)&&c(l)}),TA(c=>{Bi(o,1,c,"svelte-16jz6ui"),Vn(o,"title",(z(e()),Qe(()=>e().title))),o.disabled=(z(e()),Qe(()=>e().disabled||!1))},[()=>b2((z(Kg),z(i()),z(e()),Qe(()=>Kg("jse-context-menu-button",i(),e().className))))]),bA("click",o,c=>{n()(),e().onClick(c)}),se(t,o),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-dropdown-button.svelte-bov1j6 { + flex: 1; + line-height: normal; + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + position: relative; + padding: 0; + display: flex; +} +.jse-dropdown-button.svelte-bov1j6 ul:where(.svelte-bov1j6) { + margin: 0; + padding: 0; +} +.jse-dropdown-button.svelte-bov1j6 ul:where(.svelte-bov1j6) li:where(.svelte-bov1j6) { + margin: 0; + padding: 0; + list-style-type: none; +} +.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + width: 2em; + background: var(--jse-context-menu-background, #656565); + color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); + border-radius: 0; +} +.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown.jse-visible:where(.svelte-bov1j6) { + background: var(--jse-context-menu-background, #656565); +} +.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6):hover { + background: var(--jse-context-menu-background-highlight, #7a7a7a); +} +.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6):focus { + z-index: 1; +} +.jse-dropdown-button.svelte-bov1j6 button.jse-open-dropdown:where(.svelte-bov1j6):disabled { + color: var(--jse-context-menu-color-disabled, #9d9d9d); + background: unset; +} +.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) { + display: none; + position: absolute; + top: 100%; + left: 0; + z-index: 1; + background: var(--jse-context-menu-background, #656565); + color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); + box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); +} +.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items.jse-visible:where(.svelte-bov1j6) { + display: block; +} +.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) button:where(.svelte-bov1j6) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + width: 100%; + text-align: left; + padding: var(--jse-padding, 10px); + margin: 0; +} +.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) button:where(.svelte-bov1j6):hover { + background: var(--jse-context-menu-background-highlight, #7a7a7a); +} +.jse-dropdown-button.svelte-bov1j6 .jse-dropdown-items:where(.svelte-bov1j6) button:where(.svelte-bov1j6):disabled { + color: var(--jse-context-menu-color-disabled, #9d9d9d); + background: unset; +}`);var Aye=Oe('
    • '),tye=Oe('
        ');si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +button.jse-context-menu-button.svelte-1y5l9l1 { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + flex: 1; + white-space: nowrap; + padding: var(--jse-padding, 10px); + color: inherit; +} +button.jse-context-menu-button.svelte-1y5l9l1:hover { + background: var(--jse-context-menu-background-highlight, #7a7a7a); +} +button.jse-context-menu-button.svelte-1y5l9l1:focus { + background: var(--jse-context-menu-background-highlight, #7a7a7a); + z-index: 1; +} +button.jse-context-menu-button.svelte-1y5l9l1:disabled { + color: var(--jse-context-menu-color-disabled, #9d9d9d); + background: unset; +} +button.jse-context-menu-button.left.svelte-1y5l9l1 { + text-align: left; +} +button.jse-context-menu-button.svelte-1y5l9l1 svg { + width: 16px; +}`);var iye=Oe('');function MN(t,A){Ht(A,!1);var e=ge(),i=K(A,"item",8),n=K(A,"className",8,void 0),o=K(A,"onRequestClose",8);Ue(()=>(z(i()),z(o())),()=>{N(e,i().items.map(a=>UA(UA({},a),{},{onClick:r=>{o()(),a.onClick(r)}})))}),qn(),hi(),(function(a,r){Ht(r,!1);var s=ge(void 0,!0),l=K(r,"items",25,()=>[]),c=K(r,"title",9,void 0),C=K(r,"width",9,"120px"),d=ge(!1,!0);function B(){N(d,!1)}function E(b){$C(b)==="Escape"&&(b.preventDefault(),N(d,!1))}gs(()=>{document.addEventListener("click",B),document.addEventListener("keydown",E)}),Tc(()=>{document.removeEventListener("click",B),document.removeEventListener("keydown",E)}),Ue(()=>z(l()),()=>{N(s,l().every(b=>b.disabled===!0))}),qn(),hi(!0);var u=tye(),m=ce(u);Sa(m,r,"defaultItem",{},null);var f,D=ke(m,2);un(ce(D),{get data(){return y0}});var S,k=ke(D,2);ka(ce(k),5,l,za,(b,x)=>{var F=Aye(),P=ce(F),j=ce(P),X=W=>{un(W,{get data(){return g(x),Qe(()=>g(x).icon)}})};je(j,W=>{g(x),Qe(()=>g(x).icon)&&W(X)});var Ae=ke(j);TA(()=>{var W;Vn(P,"title",(g(x),Qe(()=>g(x).title))),P.disabled=(g(x),Qe(()=>g(x).disabled)),Bi(P,1,b2((g(x),Qe(()=>g(x).className))),"svelte-bov1j6"),jt(Ae," ".concat((g(x),(W=Qe(()=>g(x).text))!==null&&W!==void 0?W:"")))}),bA("click",P,W=>g(x).onClick(W)),se(b,F)}),TA(()=>{var b;Vn(u,"title",c()),f=Bi(D,1,"jse-open-dropdown svelte-bov1j6",null,f,{"jse-visible":g(d)}),D.disabled=g(s),S=Bi(k,1,"jse-dropdown-items svelte-bov1j6",null,S,{"jse-visible":g(d)}),Kc(k,"width: ".concat((b=C())!==null&&b!==void 0?b:"",";"))}),bA("click",D,function(){var b=g(d);setTimeout(()=>N(d,!b))}),bA("click",u,B),se(a,u),Pt()})(t,{get width(){return z(i()),Qe(()=>i().width)},get items(){return g(e)},$$slots:{defaultItem:(a,r)=>{var s=iye(),l=ce(s),c=d=>{un(d,{get data(){return z(i()),Qe(()=>i().main.icon)}})};je(l,d=>{z(i()),Qe(()=>i().main.icon)&&d(c)});var C=ke(l);TA(d=>{var B;Bi(s,1,d,"svelte-1y5l9l1"),Vn(s,"title",(z(i()),Qe(()=>i().main.title))),s.disabled=(z(i()),Qe(()=>i().main.disabled||!1)),jt(C," ".concat((z(i()),(B=Qe(()=>i().main.text))!==null&&B!==void 0?B:"")))},[()=>b2((z(Kg),z(n()),z(i()),Qe(()=>Kg("jse-context-menu-button",n(),i().main.className))))]),bA("click",s,d=>{o()(),i().main.onClick(d)}),se(a,s)}}}),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-contextmenu.svelte-1shjn02 { + box-shadow: var(--jse-controls-box-shadow, 0 2px 6px 0 rgba(0, 0, 0, 0.24)); + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + background: var(--jse-context-menu-background, #656565); + color: var(--jse-context-menu-color, var(--jse-text-color-inverse, #fff)); +} +.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) { + display: flex; + flex-direction: row; + align-items: flex-start; + justify-content: stretch; +} +.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) div.jse-label:where(.svelte-1shjn02) { + flex: 1; + white-space: nowrap; + padding: var(--jse-padding, 10px); + color: var(--jse-context-menu-color-disabled, #9d9d9d); + line-height: normal; +} +.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) div.jse-tip:where(.svelte-1shjn02) { + flex: 1; + background: var(--jse-context-menu-tip-background, rgba(255, 255, 255, 0.2)); + color: var(--context-menu-tip-color, inherit); + margin: calc(0.5 * var(--jse-padding, 10px)); + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); + font-size: 80%; + line-height: 1.3em; + display: flex; + flex-direction: row; + align-items: flex-start; + gap: var(--jse-padding, 10px); + border-radius: 3px; +} +.jse-contextmenu.svelte-1shjn02 .jse-row:where(.svelte-1shjn02) div.jse-tip:where(.svelte-1shjn02) div.jse-tip-icon:where(.svelte-1shjn02) { + padding-top: calc(0.5 * var(--jse-padding, 10px)); +} +.jse-contextmenu.svelte-1shjn02 .jse-column:where(.svelte-1shjn02) { + flex: 1; + display: flex; + flex-direction: column; + align-items: stretch; +} +.jse-contextmenu.svelte-1shjn02 .jse-column:where(.svelte-1shjn02):not(:last-child) { + border-right: 1px solid var(--jse-context-menu-separator-color, #7a7a7a); +} +.jse-contextmenu.svelte-1shjn02 .jse-separator:where(.svelte-1shjn02) { + width: 100%; + height: 1px; + background: var(--jse-context-menu-separator-color, #7a7a7a); +}`);var nye=Oe('
        '),oye=Oe('
        '),aye=Oe('
        '),rye=Oe('
        '),sye=Oe('
        '),lye=Oe('
        '),cye=Oe('
        '),gye=Oe('');function Dne(t,A){Ht(A,!1);var e=K(A,"items",9),i=K(A,"onRequestClose",9),n=K(A,"tip",9),o=ge(void 0,!0);gs(()=>{var d=Array.from(g(o).querySelectorAll("button")).find(B=>!B.disabled);d&&d.focus()});var a={ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right"};function r(d){return console.error("Unknown type of context menu item",d),"???"}hi(!0);var s=gye(),l=ce(s);ka(l,1,e,za,(d,B)=>{var E=ji(),u=ct(E),m=D=>{bN(D,{get item(){return g(B)},get onRequestClose(){return i()}})},f=D=>{var S=ji(),k=ct(S),b=F=>{MN(F,{get item(){return g(B)},get onRequestClose(){return i()}})},x=F=>{var P=ji(),j=ct(P),X=W=>{var Ce=sye();ka(Ce,5,()=>(g(B),Qe(()=>g(B).items)),za,(we,Be)=>{var Ee=ji(),Ne=ct(Ee),de=xe=>{bN(xe,{get item(){return g(Be)},get onRequestClose(){return i()}})},Ie=xe=>{var Xe=ji(),fA=ct(Xe),Pe=qe=>{MN(qe,{get item(){return g(Be)},get onRequestClose(){return i()}})},be=qe=>{var st=ji(),it=ct(st),He=tA=>{var pe=aye();ka(pe,5,()=>(g(Be),Qe(()=>g(Be).items)),za,(oA,Fe)=>{var OA=ji(),ze=ct(OA),ye=St=>{bN(St,{className:"left",get item(){return g(Fe)},get onRequestClose(){return i()}})},qt=St=>{var yA=ji(),ei=ct(yA),WA=kt=>{MN(kt,{className:"left",get item(){return g(Fe)},get onRequestClose(){return i()}})},et=kt=>{var JA=ji(),ui=ct(JA),V=ie=>{se(ie,nye())},$=ie=>{var oe=ji(),Te=ct(oe),QA=Ke=>{var Je=oye(),bt=ce(Je);TA(()=>jt(bt,(g(Fe),Qe(()=>g(Fe).text)))),se(Ke,Je)},vA=Ke=>{var Je=Mr();TA(bt=>jt(Je,bt),[()=>(g(Fe),Qe(()=>r(g(Fe))))]),se(Ke,Je)};je(Te,Ke=>{z(xAe),g(Fe),Qe(()=>xAe(g(Fe)))?Ke(QA):Ke(vA,!1)},!0),se(ie,oe)};je(ui,ie=>{z(I2),g(Fe),Qe(()=>I2(g(Fe)))?ie(V):ie($,!1)},!0),se(kt,JA)};je(ei,kt=>{z(lu),g(Fe),Qe(()=>lu(g(Fe)))?kt(WA):kt(et,!1)},!0),se(St,yA)};je(ze,St=>{z(TC),g(Fe),Qe(()=>TC(g(Fe)))?St(ye):St(qt,!1)}),se(oA,OA)}),se(tA,pe)},he=tA=>{var pe=ji(),oA=ct(pe),Fe=ze=>{se(ze,rye())},OA=ze=>{var ye=Mr();TA(qt=>jt(ye,qt),[()=>(g(Be),Qe(()=>r(g(Be))))]),se(ze,ye)};je(oA,ze=>{z(I2),g(Be),Qe(()=>I2(g(Be)))?ze(Fe):ze(OA,!1)},!0),se(tA,pe)};je(it,tA=>{z(NAe),g(Be),Qe(()=>NAe(g(Be)))?tA(He):tA(he,!1)},!0),se(qe,st)};je(fA,qe=>{z(lu),g(Be),Qe(()=>lu(g(Be)))?qe(Pe):qe(be,!1)},!0),se(xe,Xe)};je(Ne,xe=>{z(TC),g(Be),Qe(()=>TC(g(Be)))?xe(de):xe(Ie,!1)}),se(we,Ee)}),se(W,Ce)},Ae=W=>{var Ce=ji(),we=ct(Ce),Be=Ne=>{se(Ne,lye())},Ee=Ne=>{var de=Mr();TA(Ie=>jt(de,Ie),[()=>(g(B),Qe(()=>r(g(B))))]),se(Ne,de)};je(we,Ne=>{z(I2),g(B),Qe(()=>I2(g(B)))?Ne(Be):Ne(Ee,!1)},!0),se(W,Ce)};je(j,W=>{z(RAe),g(B),Qe(()=>RAe(g(B)))?W(X):W(Ae,!1)},!0),se(F,P)};je(k,F=>{z(lu),g(B),Qe(()=>lu(g(B)))?F(b):F(x,!1)},!0),se(D,S)};je(u,D=>{z(TC),g(B),Qe(()=>TC(g(B)))?D(m):D(f,!1)}),se(d,E)});var c=ke(l,2),C=d=>{var B=cye(),E=ce(B),u=ce(E);un(ce(u),{get data(){return Yq}});var m=ce(ke(u,2));TA(()=>jt(m,n())),se(d,B)};je(c,d=>{n()&&d(C)}),na(s,d=>N(o,d),()=>g(o)),bA("keydown",s,function(d){var B=$C(d),E=a[B];if(E&&d.target){d.preventDefault();var u=G3e({allElements:Array.from(g(o).querySelectorAll("button:not([disabled])")),currentElement:d.target,direction:E,hasPrio:m=>m.getAttribute("data-type")!=="jse-open-dropdown"});u&&u.focus()}}),se(t,s),Pt()}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-value.jse-string.svelte-1htmvf1 { + color: var(--jse-value-color-string, #008000); +} +.jse-value.jse-object.svelte-1htmvf1, .jse-value.jse-array.svelte-1htmvf1 { + min-width: 16px; + color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); +} +.jse-value.jse-number.svelte-1htmvf1 { + color: var(--jse-value-color-number, #ee422e); +} +.jse-value.jse-boolean.svelte-1htmvf1 { + color: var(--jse-value-color-boolean, #ff8c00); +} +.jse-value.jse-null.svelte-1htmvf1 { + color: var(--jse-value-color-null, #004ed0); +} +.jse-value.jse-invalid.svelte-1htmvf1 { + color: var(--jse-text-color, #4d4d4d); +} +.jse-value.jse-url.svelte-1htmvf1 { + color: var(--jse-value-color-url, #008000); + text-decoration: underline; +} + +.jse-enum-value.svelte-1htmvf1 { + background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); + border: none; + padding: 0; + font-family: inherit; + font-size: inherit; + cursor: pointer; + outline: none; +} +.jse-enum-value.jse-selected.svelte-1htmvf1 { + background: var(--jse-selection-background-color, #d3d3d3); + color: inherit; +} +.jse-enum-value.jse-value.svelte-1htmvf1:focus { + color: var(--jse-text-color, #4d4d4d); +}`);var kdA=Oe(""),_dA=Oe("");var sv,lv;function cv(t,A){return sv||(lv=new WeakMap,sv=new ResizeObserver(e=>{for(var i of e){var n=lv.get(i.target);n&&n(i.target)}})),lv.set(t,A),sv.observe(t),{destroy:()=>{lv.delete(t),sv.unobserve(t)}}}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-tree-mode.svelte-10mlrw4 { + flex: 1; + display: flex; + flex-direction: column; + position: relative; + background: var(--jse-background-color, #fff); + min-width: 0; + min-height: 0; + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + color: var(--jse-text-color, #4d4d4d); + line-height: var(--jse-line-height, calc(1em + 4px)); +} +.jse-tree-mode.svelte-10mlrw4 .jse-hidden-input-label:where(.svelte-10mlrw4) .jse-hidden-input:where(.svelte-10mlrw4) { + position: fixed; + top: -10px; + left: -10px; + width: 1px; + height: 1px; + padding: 0; + border: 0; + outline: none; +} +.jse-tree-mode.no-main-menu.svelte-10mlrw4 { + border-top: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-tree-mode.svelte-10mlrw4 .jse-search-box-container:where(.svelte-10mlrw4) { + position: relative; + height: 0; + top: var(--jse-padding, 10px); + margin-right: calc(var(--jse-padding, 10px) + 20px); + margin-left: var(--jse-padding, 10px); + text-align: right; + z-index: 3; +} +.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) { + flex: 1; + overflow: auto; + position: relative; + padding: 2px; + display: flex; + flex-direction: column; + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4):last-child { + border-bottom: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) .jse-loading-space:where(.svelte-10mlrw4) { + flex: 1; +} +.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) .jse-loading:where(.svelte-10mlrw4) { + flex: 2; + text-align: center; + color: var(--jse-panel-color-readonly, #b2b2b2); + box-sizing: border-box; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); +} +.jse-tree-mode.svelte-10mlrw4 .jse-contents:where(.svelte-10mlrw4) .jse-search-box-background:where(.svelte-10mlrw4) { + border: 50px solid var(--jse-modal-background, #f5f5f5); + margin: -2px; + margin-bottom: 2px; + display: inline-block; +}`);var Cye=Oe(" ",1),dye=Oe('
        '),Iye=Oe('
        ',1),Bye=Oe(' ',1),hye=Oe('
        loading...
        '),uye=Oe('
        ',1);function rF(t,A){Ht(A,!1);var e=ge(void 0,!0),i=Qr("jsoneditor:TreeMode"),n=typeof window>"u";i("isSSR:",n);var o=rI(),a=rI(),{openAbsolutePopup:r,closeAbsolutePopup:s}=k2("absolute-popup"),l=ge(void 0,!0),c=ge(void 0,!0),C=ge(void 0,!0),d=!1,B=lne(),E=K(A,"readOnly",9),u=K(A,"externalContent",9),m=K(A,"externalSelection",9),f=K(A,"history",9),D=K(A,"truncateTextSize",9),S=K(A,"mainMenuBar",9),k=K(A,"navigationBar",9),b=K(A,"escapeControlCharacters",9),x=K(A,"escapeUnicodeCharacters",9),F=K(A,"parser",9),P=K(A,"parseMemoizeOne",9),j=K(A,"validator",9),X=K(A,"validationParser",9),Ae=K(A,"pathParser",9),W=K(A,"indentation",9),Ce=K(A,"onError",9),we=K(A,"onChange",9),Be=K(A,"onChangeMode",9),Ee=K(A,"onSelect",9),Ne=K(A,"onUndo",9),de=K(A,"onRedo",9),Ie=K(A,"onRenderValue",9),xe=K(A,"onRenderMenu",9),Xe=K(A,"onRenderContextMenu",9),fA=K(A,"onClassName",9),Pe=K(A,"onFocus",9),be=K(A,"onBlur",9),qe=K(A,"onSortModal",9),st=K(A,"onTransformModal",9),it=K(A,"onJSONEditorModal",9),He=!1,he=ge(!1,!0),tA=ge(void 0,!0);NF({onMount:gs,onDestroy:Tc,getWindow:()=>mm(g(C)),hasFocus:()=>He&&document.hasFocus()||QF(g(C)),onFocus:()=>{d=!0,Pe()&&Pe()()},onBlur:()=>{d=!1,be()&&be()()}});var pe=ge(void 0,!0),oA=ge(void 0,!0),Fe=void 0,OA=!1,ze=ge(HN({json:g(pe)}),!0),ye=ge(rm(m())?m():void 0,!0);function qt(ee){N(ye,ee)}gs(()=>{if(g(ye)){var ee=ft(g(ye));N(ze,kg(g(pe),g(ze),ee,Ev)),setTimeout(()=>Wo(ee))}});var St,yA=ge(void 0,!0),ei=ge(void 0,!0),WA=ge(void 0,!0),et=ge(void 0,!0),kt=ge(!1,!0),JA=ge(!1,!0);function ui(ee){N(et,(St=ee)?Zie(g(pe),St.items):void 0)}function V(ee,me){return $.apply(this,arguments)}function $(){return($=Ai(function*(ee,me){N(ze,kg(g(pe),g(ze),ee,Ev));var eA=xo(me);yield Xi(ee,{element:eA})})).apply(this,arguments)}function ie(){N(kt,!1),N(JA,!1),zt()}function oe(ee){i("select validation error",ee),N(ye,nn(ee.path)),Xi(ee.path)}function Te(ee){var me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:PN;i("expand"),N(ze,kg(g(pe),g(ze),ee,me))}function QA(ee,me){N(ze,KAe(g(pe),g(ze),ee,me)),g(ye)&&(function(eA,VA){return z0(ft(eA),VA)&&(ft(eA).length>VA.length||cr(eA))})(g(ye),ee)&&N(ye,void 0)}var vA=ge(!1,!0),Ke=ge([],!0),Je=ge(void 0,!0),bt=Dh(cne);function Ct(ee,me,eA,VA){mu(()=>{var _A;try{_A=bt(ee,me,eA,VA)}catch(GA){_A=[{path:[],message:"Failed to validate: "+GA.message,severity:xg.warning}]}Oi(_A,g(Ke))||(i("validationErrors changed:",_A),N(Ke,_A),N(Je,(function(GA,ht){var oi;return ht.forEach(qi=>{oi=cte(GA,oi,qi.path,(Wn,In)=>UA(UA({},In),{},{validationError:qi}))}),ht.forEach(qi=>{for(var Wn=qi.path;Wn.length>0;)Wn=sn(Wn),oi=cte(GA,oi,Wn,(In,Ro)=>Ro.validationError?Ro:UA(UA({},Ro),{},{validationError:{isChildError:!0,path:Wn,message:"Contains invalid data",severity:xg.warning}}))}),oi})(ee,g(Ke))))},_A=>i("validationErrors updated in ".concat(_A," ms")))}function XA(){return i("validate"),Fe?{parseError:Fe,isRepairable:!1}:(Ct(g(pe),j(),F(),X()),tn(g(Ke))?void 0:{validationErrors:g(Ke)})}function ZA(){return g(pe)}function fi(){return g(ze)}function yn(){return g(ye)}function kn(ee){i("applyExternalContent",{updatedContent:ee}),im(ee)?(function(me){if(me!==void 0){var eA=!Oi(g(pe),me);if(i("update external json",{isChanged:eA,currentlyText:g(pe)===void 0}),!!eA){var VA={documentState:g(ze),selection:g(ye),json:g(pe),text:g(oA),textIsRepaired:g(vA)};N(pe,me),N(ze,$l(me,g(ze))),qA(g(pe)),N(oA,void 0),N(vA,!1),Fe=void 0,En(g(pe)),Ui(VA)}}})(ee.json):tm(ee)&&(function(me){if(!(me===void 0||im(u()))){var eA=me!==g(oA);if(i("update external text",{isChanged:eA}),!!eA){var VA={documentState:g(ze),selection:g(ye),json:g(pe),text:g(oA),textIsRepaired:g(vA)};try{N(pe,P()(me)),N(ze,$l(g(pe),g(ze))),qA(g(pe)),N(oA,me),N(vA,!1),Fe=void 0}catch(_A){try{N(pe,P()(vc(me))),N(ze,$l(g(pe),g(ze))),qA(g(pe)),N(oA,me),N(vA,!0),Fe=void 0,En(g(pe))}catch(GA){N(pe,void 0),N(ze,void 0),N(oA,u().text),N(vA,!1),Fe=g(oA)!==void 0&&g(oA)!==""?Fu(g(oA),_A.message||String(_A)):void 0}}En(g(pe)),Ui(VA)}}})(ee.text)}function qA(ee){OA||(OA=!0,N(ze,N1(ee,g(ze),[])))}function En(ee){g(ye)&&(Or(ee,v1(g(ye)))&&Or(ee,ft(g(ye)))||(i("clearing selection: path does not exist anymore",g(ye)),N(ye,cu(ee,g(ze)))))}function Ui(ee){if(ee.json!==void 0||ee.text!==void 0){var me=g(pe)!==void 0&&ee.json!==void 0;f().add({type:"tree",undo:{patch:me?[{op:"replace",path:"",value:ee.json}]:void 0,json:ee.json,text:ee.text,documentState:ee.documentState,textIsRepaired:ee.textIsRepaired,selection:G0(ee.selection),sortedColumn:void 0},redo:{patch:me?[{op:"replace",path:"",value:g(pe)}]:void 0,json:g(pe),text:g(oA),documentState:g(ze),textIsRepaired:g(vA),selection:G0(g(ye)),sortedColumn:void 0}})}}function Vi(ee,me){var eA;if(i("patch",ee,me),g(pe)===void 0)throw new Error("Cannot apply patch: no JSON");var VA=g(pe),_A={json:void 0,text:g(oA),documentState:g(ze),selection:G0(g(ye)),textIsRepaired:g(vA),sortedColumn:void 0},GA=qie(g(pe),ee),ht=Gie(g(pe),g(ze),ee),oi=(eA=Ku(g(pe),ee))!==null&&eA!==void 0?eA:g(ye),qi=typeof me=="function"?me(ht.json,ht.documentState,oi):void 0;return N(pe,qi?.json!==void 0?qi.json:ht.json),N(ze,qi?.state!==void 0?qi.state:ht.documentState),N(ye,qi?.selection!==void 0?qi.selection:oi),N(oA,void 0),N(vA,!1),N(ei,void 0),N(WA,void 0),Fe=void 0,En(g(pe)),f().add({type:"tree",undo:UA({patch:GA},_A),redo:{patch:ee,json:void 0,text:g(oA),documentState:g(ze),selection:G0(g(ye)),sortedColumn:void 0,textIsRepaired:g(vA)}}),{json:g(pe),previousJson:VA,undo:GA,redo:ee}}function Cn(){!E()&&g(ye)&&N(ye,_F(ft(g(ye))))}function Gt(){if(!E()&&g(ye)){var ee=ft(g(ye)),me=nt(g(pe),ee);ya(me)?(function(eA,VA){i("openJSONEditorModal",{path:eA,value:VA}),He=!0,it()({content:{json:VA},path:eA,onPatch:g(M).onPatch,onClose:()=>{He=!1,setTimeout(zt)}})})(ee,me):N(ye,_v(ee))}}function Qn(){if(!E()&&Sn(g(ye))){var ee=ft(g(ye)),me=Lt(ee),eA=nt(g(pe),ee),VA=!U0(g(pe),g(ze),ee),_A=VA?String(eA):Vu(String(eA),F());i("handleToggleEnforceString",{enforceString:VA,value:eA,updatedValue:_A}),iA([{op:"replace",path:me,value:_A}],(GA,ht)=>({state:Vv(g(pe),ht,ee,{type:"value",enforceString:VA})}))}}function Zt(){return g(vA)&&g(pe)!==void 0&&kA(g(pe)),g(pe)!==void 0?{json:g(pe)}:{text:g(oA)||""}}function J(){return wt.apply(this,arguments)}function wt(){return wt=Ai(function*(){var ee=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];yield pne({json:g(pe),selection:g(ye),indentation:ee?W():void 0,readOnly:E(),parser:F(),onPatch:iA})}),wt.apply(this,arguments)}function Si(){return _n.apply(this,arguments)}function _n(){return _n=Ai(function*(){var ee=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];g(pe)!==void 0&&(yield mne({json:g(pe),selection:g(ye),indentation:ee?W():void 0,parser:F()}))}),_n.apply(this,arguments)}function xn(ee){var me;ee.preventDefault(),ko((me=ee.clipboardData)===null||me===void 0?void 0:me.getData("text/plain"))}function Io(){return ra.apply(this,arguments)}function ra(){return(ra=Ai(function*(){try{ko(yield navigator.clipboard.readText())}catch(ee){console.error(ee),N(he,!0)}})).apply(this,arguments)}function ko(ee){ee!==void 0&&fne({clipboardText:ee,json:g(pe),selection:g(ye),readOnly:E(),parser:F(),onPatch:iA,onChangeText:ue,onPasteMultilineText:no,openRepairModal:Zo})}function Zo(ee,me){N(tA,{text:ee,onParse:eA=>pm(eA,VA=>Qm(VA,F())),onRepair:wie,onApply:me,onClose:zt})}function Ba(){wne({json:g(pe),text:g(oA),selection:g(ye),keepSelection:!1,readOnly:E(),onChange:we(),onPatch:iA})}function To(){!E()&&g(pe)!==void 0&&g(ye)&&Qu&&!tn(ft(g(ye)))&&(i("duplicate",{selection:g(ye)}),iA(Hie(g(pe),M2(g(pe),g(ye)))))}function _a(){E()||!g(ye)||!Mo(g(ye))&&!Sn(g(ye))||tn(ft(g(ye)))||(i("extract",{selection:g(ye)}),iA(Pie(g(pe),g(ye)),(ee,me)=>{if(ya(ee))return{state:QN(ee,me,[])}}))}function ha(ee){Ov({insertType:ee,selectInside:!0,initialValue:void 0,json:g(pe),selection:g(ye),readOnly:E(),parser:F(),onPatch:iA,onReplaceJson:kA})}function va(ee){Er(g(ye))&&N(ye,nn(g(ye).path)),g(ye)||N(ye,cu(g(pe),g(ze))),ha(ee)}function Oo(ee){if(!E()&&g(ye))if(iv(g(ye)))try{var me=v1(g(ye)),eA=nt(g(pe),me),VA=(function(GA,ht,oi){if(ht==="array"){if(Array.isArray(GA))return GA;if(zn(GA))return yAe(GA);if(typeof GA=="string")try{var qi=oi.parse(GA);if(Array.isArray(qi))return qi;if(zn(qi))return yAe(qi)}catch(In){return[GA]}return[GA]}if(ht==="object"){if(Array.isArray(GA))return wAe(GA);if(zn(GA))return GA;if(typeof GA=="string")try{var Wn=oi.parse(GA);if(zn(Wn))return Wn;if(Array.isArray(Wn))return wAe(Wn)}catch(In){return{value:GA}}return{value:GA}}if(ht==="value")return ya(GA)?oi.stringify(GA):GA;throw new Error("Cannot convert ".concat(hF(GA,oi)," to ").concat(ht))})(eA,ee,F());if(VA===eA)return;var _A=[{op:"replace",path:Lt(me),value:VA}];i("handleConvert",{selection:g(ye),path:me,type:ee,operations:_A}),iA(_A,(GA,ht)=>({state:g(ye)?N1(GA,ht,ft(g(ye))):g(ze)}))}catch(GA){Ce()(GA)}else Ce()(new Error("Cannot convert current selection to ".concat(ee)))}function BA(){if(g(ye)){var ee=JAe(g(pe),g(ze),g(ye),!1),me=sn(ft(g(ye)));ee&&!tn(ft(ee))&&Oi(me,sn(ft(ee)))?N(ye,qC(ft(ee))):N(ye,Ad(me)),i("insert before",{selection:g(ye),selectionBefore:ee,parentPath:me}),qo(),an()}}function Ri(){if(g(ye)){var ee=D2(g(pe),g(ye));i("insert after",ee),N(ye,qC(ee)),qo(),an()}}function vn(ee){return Rn.apply(this,arguments)}function Rn(){return(Rn=Ai(function*(ee){yield yne({char:ee,selectInside:!0,json:g(pe),selection:g(ye),readOnly:E(),parser:F(),onPatch:iA,onReplaceJson:kA,onSelect:qt})})).apply(this,arguments)}function sa(){if(!E()&&f().canUndo){var ee=f().undo();if(Sv(ee)){var me={json:g(pe),text:g(oA)};N(pe,ee.undo.patch?Bl(g(pe),ee.undo.patch):ee.undo.json),N(ze,ee.undo.documentState),N(ye,ee.undo.selection),N(oA,ee.undo.text),N(vA,ee.undo.textIsRepaired),Fe=void 0,i("undo",{item:ee,json:g(pe),documentState:g(ze),selection:g(ye)}),Se(me,ee.undo.patch&&ee.redo.patch?{json:g(pe),previousJson:me.json,redo:ee.undo.patch,undo:ee.redo.patch}:void 0),zt(),g(ye)&&Xi(ft(g(ye)),{scrollToWhenVisible:!1})}else Ne()(ee)}}function Ka(){if(!E()&&f().canRedo){var ee=f().redo();if(Sv(ee)){var me={json:g(pe),text:g(oA)};N(pe,ee.redo.patch?Bl(g(pe),ee.redo.patch):ee.redo.json),N(ze,ee.redo.documentState),N(ye,ee.redo.selection),N(oA,ee.redo.text),N(vA,ee.redo.textIsRepaired),Fe=void 0,i("redo",{item:ee,json:g(pe),documentState:g(ze),selection:g(ye)}),Se(me,ee.undo.patch&&ee.redo.patch?{json:g(pe),previousJson:me.json,redo:ee.redo.patch,undo:ee.undo.patch}:void 0),zt(),g(ye)&&Xi(ft(g(ye)),{scrollToWhenVisible:!1})}else de()(ee)}}function zi(ee){var me;E()||g(pe)===void 0||(He=!0,qe()({id:o,json:g(pe),rootPath:ee,onSort:(me=Ai(function*(eA){var{operations:VA}=eA;i("onSort",ee,VA),iA(VA,(_A,GA)=>({state:QN(_A,GA,ee),selection:nn(ee)}))}),function(eA){return me.apply(this,arguments)}),onClose:()=>{He=!1,setTimeout(zt)}}))}function _o(){g(ye)&&zi(YAe(g(pe),g(ye)))}function Cr(){zi([])}function Jo(ee){if(g(pe)!==void 0){var{id:me,onTransform:eA,onClose:VA}=ee,_A=ee.rootPath||[];He=!0,st()({id:me||a,json:g(pe),rootPath:_A,onTransform:GA=>{eA?eA({operations:GA,json:g(pe),transformedJson:Bl(g(pe),GA)}):(i("onTransform",_A,GA),iA(GA,(ht,oi)=>({state:QN(ht,oi,_A),selection:nn(_A)})))},onClose:()=>{He=!1,setTimeout(zt),VA&&VA()}})}}function $a(){g(ye)&&Jo({rootPath:YAe(g(pe),g(ye))})}function io(){Jo({rootPath:[]})}function Xi(ee){return ni.apply(this,arguments)}function ni(){return ni=Ai(function*(ee){var{scrollToWhenVisible:me=!0,element:eA}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};N(ze,kg(g(pe),g(ze),ee,Ev));var VA=eA??Zn(ee);if(i("scrollTo",{path:ee,elem:VA,refContents:g(l)}),!VA||!g(l))return Promise.resolve();var _A=g(l).getBoundingClientRect(),GA=VA.getBoundingClientRect();if(!me&&GA.bottom>_A.top&&GA.top<_A.bottom)return Promise.resolve();var ht=-_A.height/4;return new Promise(oi=>{B(VA,{container:g(l),offset:ht,duration:300,callback:()=>oi()})})}),ni.apply(this,arguments)}function Zn(ee){var me,eA;return qo(),(me=(eA=g(l))===null||eA===void 0?void 0:eA.querySelector('div[data-path="'.concat(uv(ee),'"]')))!==null&&me!==void 0?me:void 0}function xo(ee){var me,eA;return qo(),(me=(eA=g(l))===null||eA===void 0?void 0:eA.querySelector('span[data-search-result-index="'.concat(ee,'"]')))!==null&&me!==void 0?me:void 0}function Wo(ee){var me=Zn(ee);if(me&&g(l)){var eA=g(l).getBoundingClientRect(),VA=me.getBoundingClientRect(),_A=ya(nt(g(pe),ee))?20:VA.height;VA.topeA.bottom-20&&B(me,{container:g(l),offset:-(eA.height-_A-20),duration:0})}}function Se(ee,me){if(ee.json!==void 0||ee?.text!==void 0){if(g(oA)!==void 0){var eA,VA={text:g(oA),json:void 0};(eA=we())===null||eA===void 0||eA(VA,ee,{contentErrors:XA(),patchResult:me})}else if(g(pe)!==void 0){var _A,GA={text:void 0,json:g(pe)};(_A=we())===null||_A===void 0||_A(GA,ee,{contentErrors:XA(),patchResult:me})}}}function iA(ee,me){i("handlePatch",ee,me);var eA={json:g(pe),text:g(oA)},VA=Vi(ee,me);return Se(eA,VA),VA}function kA(ee,me){var eA={json:g(pe),text:g(oA)},VA={documentState:g(ze),selection:g(ye),json:g(pe),text:g(oA),textIsRepaired:g(vA)},_A=kg(g(pe),$l(ee,g(ze)),[],Z4),GA=typeof me=="function"?me(ee,_A,g(ye)):void 0;N(pe,GA?.json!==void 0?GA.json:ee),N(ze,GA?.state!==void 0?GA.state:_A),N(ye,GA?.selection!==void 0?GA.selection:g(ye)),N(oA,void 0),N(vA,!1),Fe=void 0,En(g(pe)),Ui(VA),Se(eA,void 0)}function ue(ee,me){i("handleChangeText");var eA={json:g(pe),text:g(oA)},VA={documentState:g(ze),selection:g(ye),json:g(pe),text:g(oA),textIsRepaired:g(vA)};try{N(pe,P()(ee)),N(ze,kg(g(pe),$l(g(pe),g(ze)),[],Z4)),N(oA,void 0),N(vA,!1),Fe=void 0}catch(GA){try{N(pe,P()(vc(ee))),N(ze,kg(g(pe),$l(g(pe),g(ze)),[],Z4)),N(oA,ee),N(vA,!0),Fe=void 0}catch(ht){N(pe,void 0),N(ze,HN({json:g(pe),expand:Z4})),N(oA,ee),N(vA,!1),Fe=g(oA)!==""?Fu(g(oA),GA.message||String(GA)):void 0}}if(typeof me=="function"){var _A=me(g(pe),g(ze),g(ye));N(pe,_A?.json!==void 0?_A.json:g(pe)),N(ze,_A?.state!==void 0?_A.state:g(ze)),N(ye,_A?.selection!==void 0?_A.selection:g(ye))}En(g(pe)),Ui(VA),Se(eA,void 0)}function Ge(ee,me){var eA=arguments.length>2&&arguments[2]!==void 0&&arguments[2];i("handleExpand",{path:ee,expanded:me,recursive:eA}),me?Te(ee,eA?kF:PN):QA(ee,eA),zt()}function IA(){Ge([],!0,!0)}function HA(){Ge([],!1,!0)}function Bt(ee){i("openFind",{findAndReplace:ee}),N(kt,!1),N(JA,!1),qo(),N(kt,!0),N(JA,ee)}function Et(ee,me){i("handleExpandSection",ee,me),N(ze,(function(eA,VA,_A,GA){return Gu(eA,VA,_A,(ht,oi)=>{if(!ur(oi))return oi;var qi=Nie(oi.visibleSections.concat(GA));return UA(UA({},oi),{},{visibleSections:qi})})})(g(pe),g(ze),ee,me))}function Jt(ee){i("pasted json as text",ee),N(ei,ee)}function no(ee){i("pasted multiline text",{pastedText:ee}),N(WA,ee)}function $i(ee){var me,{anchor:eA,left:VA,top:_A,width:GA,height:ht,offsetTop:oi,offsetLeft:qi,showTip:Wn}=ee,In=(function(ho){var{json:Ea,documentState:Fn,selection:Xt,readOnly:pn,onEditKey:gi,onEditValue:Ft,onToggleEnforceString:wi,onCut:ba,onCopy:uo,onPaste:Qa,onRemove:xa,onDuplicate:Sr,onExtract:X0,onInsertBefore:Fl,onInsert:Yc,onConvert:jg,onInsertAfter:Hc,onSort:Is,onTransform:kr}=ho,Ll=Ea!==void 0,$0=!!Xt,Gl=!!Xt&&tn(ft(Xt)),Xn=Xt?nt(Ea,ft(Xt)):void 0,Ya=Array.isArray(Xn)?"Edit array":zn(Xn)?"Edit object":"Edit value",Ha=Ll&&(Mo(Xt)||Er(Xt)||Sn(Xt)),X2=Xt&&!Gl?nt(Ea,sn(ft(Xt))):void 0,eB=!pn&&Ll&&kv(Xt)&&!Gl&&!Array.isArray(X2),$2=!pn&&Ll&&Xt!==void 0&&kv(Xt),VE=$2&&!ya(Xn),AB=!pn&&Ha,qE=Ha,K7=!pn&&$0,U7=!pn&&Ll&&Ha&&!Gl,T7=!pn&&Ll&&Xt!==void 0&&(Mo(Xt)||Sn(Xt))&&!Gl,Vg=Ha,eI=Vg?"Convert to:":"Insert:",Pa=!pn&&(cr(Xt)&&Array.isArray(Xn)||Dl(Xt)&&Array.isArray(X2)),rc=!pn&&(Vg?iv(Xt)&&!zn(Xn):$0),ZE=!pn&&(Vg?iv(Xt)&&!Array.isArray(Xn):$0),WE=!pn&&(Vg?iv(Xt)&&ya(Xn):$0),AI=Xt!==void 0&&U0(Ea,Fn,ft(Xt));function Vr(XE){Ha?XE!=="structure"&&jg(XE):Yc(XE)}return[{type:"row",items:[{type:"button",onClick:()=>gi(),icon:zI,text:"Edit key",title:"Edit the key (Double-click on the key)",disabled:!eB},{type:"dropdown-button",main:{type:"button",onClick:()=>Ft(),icon:zI,text:Ya,title:"Edit the value (Double-click on the value)",disabled:!$2},width:"11em",items:[{type:"button",icon:zI,text:Ya,title:"Edit the value (Double-click on the value)",onClick:()=>Ft(),disabled:!$2},{type:"button",icon:AI?Kk:Ok,text:"Enforce string",title:"Enforce keeping the value as string when it contains a numeric value",onClick:()=>wi(),disabled:!VE}]}]},{type:"separator"},{type:"row",items:[{type:"dropdown-button",main:{type:"button",onClick:()=>ba(!0),icon:YI,text:"Cut",title:"Cut selected contents, formatted with indentation (Ctrl+X)",disabled:!AB},width:"10em",items:[{type:"button",icon:YI,text:"Cut formatted",title:"Cut selected contents, formatted with indentation (Ctrl+X)",onClick:()=>ba(!0),disabled:!AB},{type:"button",icon:YI,text:"Cut compacted",title:"Cut selected contents, without indentation (Ctrl+Shift+X)",onClick:()=>ba(!1),disabled:!AB}]},{type:"dropdown-button",main:{type:"button",onClick:()=>uo(!0),icon:DC,text:"Copy",title:"Copy selected contents, formatted with indentation (Ctrl+C)",disabled:!qE},width:"12em",items:[{type:"button",icon:DC,text:"Copy formatted",title:"Copy selected contents, formatted with indentation (Ctrl+C)",onClick:()=>uo(!0),disabled:!qE},{type:"button",icon:DC,text:"Copy compacted",title:"Copy selected contents, without indentation (Ctrl+Shift+C)",onClick:()=>uo(!1),disabled:!qE}]},{type:"button",onClick:()=>Qa(),icon:Fk,text:"Paste",title:"Paste clipboard contents (Ctrl+V)",disabled:!K7}]},{type:"separator"},{type:"row",items:[{type:"column",items:[{type:"button",onClick:()=>Sr(),icon:Gk,text:"Duplicate",title:"Duplicate selected contents (Ctrl+D)",disabled:!U7},{type:"button",onClick:()=>X0(),icon:Pq,text:"Extract",title:"Extract selected contents",disabled:!T7},{type:"button",onClick:()=>Is(),icon:qp,text:"Sort",title:"Sort array or object contents",disabled:pn||!Ha},{type:"button",onClick:()=>kr(),icon:Hp,text:"Transform",title:"Transform array or object contents (filter, sort, project)",disabled:pn||!Ha},{type:"button",onClick:()=>xa(),icon:tw,text:"Remove",title:"Remove selected contents (Delete)",disabled:pn||!Ha}]},{type:"column",items:[{type:"label",text:eI},{type:"button",onClick:()=>Vr("structure"),icon:Vg?Zp:HI,text:"Structure",title:eI+" structure like the first item in the array",disabled:!Pa},{type:"button",onClick:()=>Vr("object"),icon:Vg?Zp:HI,text:"Object",title:eI+" object",disabled:!rc},{type:"button",onClick:()=>Vr("array"),icon:Vg?Zp:HI,text:"Array",title:eI+" array",disabled:!ZE},{type:"button",onClick:()=>Vr("value"),icon:Vg?Zp:HI,text:"Value",title:eI+" value",disabled:!WE}]}]},{type:"separator"},{type:"row",items:[{type:"button",onClick:()=>Fl(),icon:$q,text:"Insert before",title:"Select area before current entry to insert or paste contents",disabled:pn||!Ha||Gl},{type:"button",onClick:()=>Hc(),icon:jq,text:"Insert after",title:"Select area after current entry to insert or paste contents",disabled:pn||!Ha||Gl}]}]})({json:g(pe),documentState:g(ze),selection:g(ye),readOnly:E(),onEditKey:Cn,onEditValue:Gt,onToggleEnforceString:Qn,onCut:J,onCopy:Si,onPaste:Io,onRemove:Ba,onDuplicate:To,onExtract:_a,onInsertBefore:BA,onInsert:va,onInsertAfter:Ri,onConvert:Oo,onSort:_o,onTransform:$a}),Ro=(me=Xe()(In))!==null&&me!==void 0?me:In;if(Ro!==!1){var ci={left:VA,top:_A,offsetTop:oi,offsetLeft:qi,width:GA,height:ht,anchor:eA,closeOnOuterClick:!0,onClose:()=>{He=!1,zt()}};He=!0;var ua=r(Dne,{tip:Wn?"Tip: you can open this context menu via right-click or with Ctrl+Q":void 0,items:Ro,onRequestClose:()=>s(ua)},ci)}}function an(ee){if(!hr(g(ye)))if(ee&&(ee.stopPropagation(),ee.preventDefault()),ee&&ee.type==="contextmenu"&&ee.target!==g(c))$i({left:ee.clientX,top:ee.clientY,width:YC,height:zC,showTip:!1});else{var me,eA=(me=g(l))===null||me===void 0?void 0:me.querySelector(".jse-context-menu-pointer.jse-selected");if(eA)$i({anchor:eA,offsetTop:2,width:YC,height:zC,showTip:!1});else{var VA,_A=(VA=g(l))===null||VA===void 0?void 0:VA.getBoundingClientRect();_A&&$i({top:_A.top+2,left:_A.left+2,width:YC,height:zC,showTip:!1})}}}function li(ee){$i({anchor:xie(ee.target,"BUTTON"),offsetTop:0,width:YC,height:zC,showTip:!0})}function en(){return Ua.apply(this,arguments)}function Ua(){return(Ua=Ai(function*(){if(i("apply pasted json",g(ei)),g(ei)){var{onPasteAsJson:ee}=g(ei);N(ei,void 0),ee(),setTimeout(zt)}})).apply(this,arguments)}function Wt(){return Qt.apply(this,arguments)}function Qt(){return(Qt=Ai(function*(){i("apply pasted multiline text",g(WA)),g(WA)&&(ko(JSON.stringify(g(WA))),setTimeout(zt))})).apply(this,arguments)}function An(){i("clear pasted json"),N(ei,void 0),zt()}function dn(){i("clear pasted multiline text"),N(WA,void 0),zt()}function Bo(){Be()(Ga.text)}function Nn(ee){N(ye,ee),zt(),Xi(ft(ee))}function zt(){i("focus"),g(c)&&(g(c).focus(),g(c).select())}function Da(ee){return(function(me,eA,VA){var _A=sn(VA),GA=[Yi(VA)],ht=nt(me,_A),oi=ht?EN(ht,eA,GA):void 0;return oi?nn(_A.concat(oi)):qC(VA)})(g(pe),g(ze),ee)}function la(ee){g(e)&&g(e).onDrag(ee)}function y(){g(e)&&g(e).onDragEnd()}var M=ge(void 0,!0);Ue(()=>g(ye),()=>{var ee;ee=g(ye),Oi(ee,m())||(i("onSelect",ee),Ee()(ee))}),Ue(()=>(z(b()),z(x())),()=>{N(yA,uF({escapeControlCharacters:b(),escapeUnicodeCharacters:x()}))}),Ue(()=>g(kt),()=>{(function(ee){g(l)&&ee&&g(l).scrollTop===0&&(ec(l,g(l).style.overflowAnchor="none"),ec(l,g(l).scrollTop+=q4),setTimeout(()=>{g(l)&&ec(l,g(l).style.overflowAnchor="")}))})(g(kt))}),Ue(()=>z(u()),()=>{kn(u())}),Ue(()=>z(m()),()=>{(function(ee){Oi(g(ye),ee)||(i("applyExternalSelection",{selection:g(ye),externalSelection:ee}),rm(ee)&&N(ye,ee))})(m())}),Ue(()=>(g(pe),z(j()),z(F()),z(X())),()=>{Ct(g(pe),j(),F(),X())}),Ue(()=>(g(l),lte),()=>{N(e,g(l)?lte(g(l)):void 0)}),Ue(()=>(z(E()),z(D()),z(F()),g(yA),z(Ie()),z(fA())),()=>{N(M,{mode:Ga.tree,readOnly:E(),truncateTextSize:D(),parser:F(),normalization:g(yA),getJson:ZA,getDocumentState:fi,getSelection:yn,findElement:Zn,findNextInside:Da,focus:zt,onPatch:iA,onInsert:ha,onExpand:Ge,onSelect:qt,onFind:Bt,onExpandSection:Et,onPasteJson:Jt,onRenderValue:Ie(),onContextMenu:$i,onClassName:fA()||(()=>{}),onDrag:la,onDragEnd:y})}),Ue(()=>g(M),()=>{i("context changed",g(M))}),qn();var R={expand:Te,collapse:QA,validate:XA,getJson:ZA,patch:Vi,acceptAutoRepair:Zt,openTransformModal:Jo,scrollTo:Xi,findElement:Zn,findSearchResult:xo,focus:zt};hi(!0);var Z=uye();bA("mousedown",jC,function(ee){!qu(ee.target,me=>me===g(C))&&hr(g(ye))&&(i("click outside the editor, exit edit mode"),N(ye,G0(g(ye))),d&&g(c)&&(g(c).focus(),g(c).blur()),i("blur (outside editor)"),g(c)&&g(c).blur())});var _,q=ct(Z),te=ce(q),re=ee=>{(function(me,eA){Ht(eA,!1);var VA=ge(void 0,!0),_A=ge(void 0,!0),GA=ge(void 0,!0),ht=K(eA,"json",9),oi=K(eA,"selection",9),qi=K(eA,"readOnly",9),Wn=K(eA,"showSearch",13,!1),In=K(eA,"history",9),Ro=K(eA,"onExpandAll",9),ci=K(eA,"onCollapseAll",9),ua=K(eA,"onUndo",9),ho=K(eA,"onRedo",9),Ea=K(eA,"onSort",9),Fn=K(eA,"onTransform",9),Xt=K(eA,"onContextMenu",9),pn=K(eA,"onCopy",9),gi=K(eA,"onRenderMenu",9);function Ft(){Wn(!Wn())}var wi=ge(void 0,!0),ba=ge(void 0,!0),uo=ge(void 0,!0),Qa=ge(void 0,!0);Ue(()=>z(ht()),()=>{N(VA,ht()!==void 0)}),Ue(()=>(g(VA),z(oi()),Sn),()=>{N(_A,g(VA)&&(Mo(oi())||Er(oi())||Sn(oi())))}),Ue(()=>(z(Ro()),z(ht())),()=>{N(wi,{type:"button",icon:Ine,title:"Expand all",className:"jse-expand-all",onClick:Ro(),disabled:!ya(ht())})}),Ue(()=>(z(ci()),z(ht())),()=>{N(ba,{type:"button",icon:Bne,title:"Collapse all",className:"jse-collapse-all",onClick:ci(),disabled:!ya(ht())})}),Ue(()=>z(ht()),()=>{N(uo,{type:"button",icon:Pp,title:"Search (Ctrl+F)",className:"jse-search",onClick:Ft,disabled:ht()===void 0})}),Ue(()=>(z(qi()),g(wi),g(ba),z(Ea()),z(ht()),z(Fn()),g(uo),z(Xt()),z(ua()),z(In()),z(ho()),z(pn()),g(_A)),()=>{N(Qa,qi()?[g(wi),g(ba),{type:"separator"},{type:"button",icon:DC,title:"Copy (Ctrl+C)",className:"jse-copy",onClick:pn(),disabled:!g(_A)},{type:"separator"},g(uo),{type:"space"}]:[g(wi),g(ba),{type:"separator"},{type:"button",icon:qp,title:"Sort",className:"jse-sort",onClick:Ea(),disabled:qi()||ht()===void 0},{type:"button",icon:Hp,title:"Transform contents (filter, sort, project)",className:"jse-transform",onClick:Fn(),disabled:qi()||ht()===void 0},g(uo),{type:"button",icon:Lk,title:fF,className:"jse-contextmenu",onClick:Xt()},{type:"separator"},{type:"button",icon:ow,title:"Undo (Ctrl+Z)",className:"jse-undo",onClick:ua(),disabled:!In().canUndo},{type:"button",icon:nw,title:"Redo (Ctrl+Shift+Z)",className:"jse-redo",onClick:ho(),disabled:!In().canRedo},{type:"space"}])}),Ue(()=>(z(gi()),g(Qa)),()=>{N(GA,gi()(g(Qa))||g(Qa))}),qn(),hi(!0),e5(me,{get items(){return g(GA)}}),Pt()})(ee,{get json(){return g(pe)},get selection(){return g(ye)},get readOnly(){return E()},get history(){return f()},onExpandAll:IA,onCollapseAll:HA,onUndo:sa,onRedo:Ka,onSort:Cr,onTransform:io,onContextMenu:li,onCopy:Si,get onRenderMenu(){return xe()},get showSearch(){return g(kt)},set showSearch(me){N(kt,me)},$$legacy:!0})};je(te,ee=>{S()&&ee(re)});var ve=ke(te,2),lA=ee=>{Ywe(ee,{get json(){return g(pe)},get selection(){return g(ye)},onSelect:Nn,get onError(){return Ce()},get pathParser(){return Ae()}})};je(ve,ee=>{k()&&ee(lA)});var CA=ke(ve,2),wA=ee=>{var me=Bye(),eA=ct(me),VA=ce(eA);VA.readOnly=!0,na(VA,oi=>N(c,oi),()=>g(c));var _A=ke(eA,2),GA=oi=>{var qi=ji(),Wn=ct(qi),In=ci=>{(function(ua,ho){function Ea(wi){wi.stopPropagation(),ho.onCreateObject()}function Fn(wi){wi.stopPropagation(),ho.onCreateArray()}Ht(ho,!0);var Xt=_we();Xt.__click=()=>ho.onClick();var pn=ke(ce(Xt),2),gi=ke(ce(pn),2),Ft=wi=>{var ba=kwe(),uo=ke(ct(ba),2);Vn(uo,"title","Create an empty JSON object (press '{')"),uo.__click=Ea;var Qa=ke(uo,2);Vn(Qa,"title","Create an empty JSON array (press '[')"),Qa.__click=Fn,se(wi,ba)};je(gi,wi=>{ho.readOnly||wi(Ft)}),se(ua,Xt),Pt()})(ci,{get readOnly(){return E()},onCreateObject:()=>{zt(),vn("{")},onCreateArray:()=>{zt(),vn("[")},onClick:()=>{zt()}})},Ro=ci=>{var ua=Cye(),ho=ct(ua),Ea=It(()=>E()?[]:[{icon:jp,text:"Repair manually",title:'Open the document in "code" mode and repair it manually',onClick:Bo}]);ic(ho,{type:"error",message:"The loaded JSON document is invalid and could not be repaired automatically.",get actions(){return g(Ea)}}),vne(ke(ho,2),{get text(){return g(oA)},get json(){return g(pe)},get indentation(){return W()},get parser(){return F()}}),se(ci,ua)};je(Wn,ci=>{g(oA)===""||g(oA)===void 0?ci(In):ci(Ro,!1)}),se(oi,qi)},ht=oi=>{var qi=Iye(),Wn=ct(qi);une(ce(Wn),{get json(){return g(pe)},get documentState(){return g(ze)},get parser(){return F()},get showSearch(){return g(kt)},get showReplace(){return g(JA)},get readOnly(){return E()},columns:void 0,onSearch:ui,onFocus:V,onPatch:iA,onClose:ie});var In=ke(Wn,2);Vn(In,"data-jsoneditor-scrollable-contents",!0);var Ro=ce(In),ci=gi=>{se(gi,dye())};je(Ro,gi=>{g(kt)&&gi(ci)}),AF(ke(Ro,2),{get value(){return g(pe)},pointer:"",get state(){return g(ze)},get validationErrors(){return g(Je)},get searchResults(){return g(et)},get selection(){return g(ye)},get context(){return g(M)},get onDragSelectionStart(){return Ta}}),na(In,gi=>N(l,gi),()=>g(l));var ua=ke(In,2),ho=gi=>{var Ft=It(()=>(g(ei),Qe(()=>"You pasted a JSON ".concat(Array.isArray(g(ei).contents)?"array":"object"," as text")))),wi=It(()=>[{icon:vC,text:"Paste as JSON instead",title:"Replace the value with the pasted JSON",onMouseDown:en},{text:"Leave as is",title:"Keep the JSON embedded in the value",onClick:An}]);ic(gi,{type:"info",get message(){return g(Ft)},get actions(){return g(wi)}})};je(ua,gi=>{g(ei)&&gi(ho)});var Ea=ke(ua,2),Fn=gi=>{var Ft=It(()=>[{icon:vC,text:"Paste as string instead",title:"Paste the clipboard data as a single string value instead of an array",onClick:Wt},{text:"Leave as is",title:"Keep the pasted array",onClick:dn}]);ic(gi,{type:"info",message:"Multiline text was pasted as array",get actions(){return g(Ft)}})};je(Ea,gi=>{g(WA)&&gi(Fn)});var Xt=ke(Ea,2),pn=gi=>{var Ft=It(()=>E()?[]:[{icon:iw,text:"Ok",title:"Accept the repaired document",onClick:Zt},{icon:jp,text:"Repair manually instead",title:"Leave the document unchanged and repair it manually instead",onClick:Bo}]);ic(gi,{type:"success",message:"The loaded JSON document was invalid but is successfully repaired.",get actions(){return g(Ft)},onClose:zt})};je(Xt,gi=>{g(vA)&&gi(pn)}),FF(ke(Xt,2),{get validationErrors(){return g(Ke)},selectError:oe}),se(oi,qi)};je(_A,oi=>{g(pe)===void 0?oi(GA):oi(ht,!1)}),bA("paste",VA,xn),se(ee,me)},$A=ee=>{se(ee,hye())};je(CA,ee=>{n?ee($A,!1):ee(wA)}),na(q,ee=>N(C,ee),()=>g(C));var zA=ke(q,2),jA=ee=>{gne(ee,{onClose:()=>N(he,!1)})};je(zA,ee=>{g(he)&&ee(jA)});var Qi=ke(zA,2),oo=ee=>{Cne(ee,y2(()=>g(tA),{onClose:()=>{var me;(me=g(tA))===null||me===void 0||me.onClose(),N(tA,void 0)}}))};return je(Qi,ee=>{g(tA)&&ee(oo)}),TA(()=>_=Bi(q,1,"jse-tree-mode svelte-10mlrw4",null,_,{"no-main-menu":!S()})),bA("keydown",q,function(ee){var me=$C(ee),eA=ee.shiftKey;if(i("keydown",{combo:me,key:ee.key}),me==="Ctrl+X"&&(ee.preventDefault(),J(!0)),me==="Ctrl+Shift+X"&&(ee.preventDefault(),J(!1)),me==="Ctrl+C"&&(ee.preventDefault(),Si(!0)),me==="Ctrl+Shift+C"&&(ee.preventDefault(),Si(!1)),me==="Ctrl+D"&&(ee.preventDefault(),To()),me!=="Delete"&&me!=="Backspace"||(ee.preventDefault(),Ba()),me==="Insert"&&(ee.preventDefault(),ha("structure")),me==="Ctrl+A"&&(ee.preventDefault(),N(ye,nn([]))),me==="Ctrl+Q"&&an(ee),me==="ArrowUp"||me==="Shift+ArrowUp"){ee.preventDefault();var VA=g(ye)?JAe(g(pe),g(ze),g(ye),eA)||g(ye):cu(g(pe),g(ze));N(ye,VA),Wo(ft(VA))}if(me==="ArrowDown"||me==="Shift+ArrowDown"){ee.preventDefault();var _A=g(ye)?(function(In,Ro,ci){var ua=arguments.length>3&&arguments[3]!==void 0&&arguments[3];if(ci){var ho=ua?ft(ci):D2(In,ci),Ea=ya(nt(In,ho))?KAe(In,Ro,ho,!0):Ro,Fn=EN(In,Ro,ho),Xt=EN(In,Ea,ho);if(ua)return cr(ci)?Fn!==void 0?xs(Fn,Fn):void 0:Dl(ci)?Xt!==void 0?xs(Xt,Xt):void 0:Xt!==void 0?xs(v1(ci),Xt):void 0;if(Dl(ci))return Xt!==void 0?nn(Xt):void 0;if(cr(ci)||Sn(ci))return Fn!==void 0?nn(Fn):void 0;if(Er(ci)){if(Fn===void 0||Fn.length===0)return;var pn=sn(Fn),gi=nt(In,pn);return Array.isArray(gi)?nn(Fn):ed(Fn)}return Mo(ci)?Xt!==void 0?nn(Xt):Fn!==void 0?nn(Fn):void 0:void 0}})(g(pe),g(ze),g(ye),eA)||g(ye):cu(g(pe),g(ze));N(ye,_A),Wo(ft(_A))}if(me==="ArrowLeft"||me==="Shift+ArrowLeft"){ee.preventDefault();var GA=g(ye)?(function(In,Ro,ci){var ua=arguments.length>3&&arguments[3]!==void 0&&arguments[3],ho=!(arguments.length>4&&arguments[4]!==void 0)||arguments[4];if(ci){var{caret:Ea,previous:Fn}=zAe(In,Ro,ci,ho);if(ua)return Mo(ci)?void 0:xs(ci.path,ci.path);if(Ea&&Fn)return jN(Fn);var Xt=sn(ft(ci)),pn=nt(In,Xt);return Sn(ci)&&Array.isArray(pn)?xs(ci.path,ci.path):Mo(ci)&&!Array.isArray(pn)?ed(ci.focusPath):void 0}})(g(pe),g(ze),g(ye),eA,!E())||g(ye):cu(g(pe),g(ze));N(ye,GA),Wo(ft(GA))}if(me==="ArrowRight"||me==="Shift+ArrowRight"){ee.preventDefault();var ht=g(ye)&&g(pe)!==void 0?(function(In,Ro,ci){var ua=arguments.length>3&&arguments[3]!==void 0&&arguments[3],ho=!(arguments.length>4&&arguments[4]!==void 0)||arguments[4];if(ci){var{caret:Ea,next:Fn}=zAe(In,Ro,ci,ho);return ua?Mo(ci)?void 0:xs(ci.path,ci.path):Ea&&Fn?jN(Fn):Mo(ci)?nn(ci.focusPath):void 0}})(g(pe),g(ze),g(ye),eA,!E())||g(ye):cu(g(pe),g(ze));N(ye,ht),Wo(ft(ht))}if(me==="Enter"&&g(ye)){if(qv(g(ye))){var oi=g(ye).focusPath,qi=nt(g(pe),sn(oi));Array.isArray(qi)&&(ee.preventDefault(),N(ye,nn(oi)))}Er(g(ye))&&(ee.preventDefault(),N(ye,UA(UA({},g(ye)),{},{edit:!0}))),Sn(g(ye))&&(ee.preventDefault(),ya(nt(g(pe),g(ye).path))?Ge(g(ye).path,!0):N(ye,UA(UA({},g(ye)),{},{edit:!0})))}if(me.replace(/^Shift\+/,"").length===1&&g(ye))return ee.preventDefault(),void vn(ee.key);if(me==="Enter"&&(Dl(g(ye))||cr(g(ye))))return ee.preventDefault(),void vn("");if(me==="Ctrl+Enter"&&Sn(g(ye))){var Wn=nt(g(pe),g(ye).path);jv(Wn)&&window.open(String(Wn),"_blank")}me==="Escape"&&g(ye)&&(ee.preventDefault(),N(ye,void 0)),me==="Ctrl+F"&&(ee.preventDefault(),Bt(!1)),me==="Ctrl+H"&&(ee.preventDefault(),Bt(!0)),me==="Ctrl+Z"&&(ee.preventDefault(),sa()),me==="Ctrl+Shift+Z"&&(ee.preventDefault(),Ka())}),bA("mousedown",q,function(ee){i("handleMouseDown",ee);var me=ee.target;_ie(me,"BUTTON")||me.isContentEditable||(zt(),g(ye)||g(pe)!==void 0||g(oA)!==""&&g(oA)!==void 0||(i("createDefaultSelection"),N(ye,nn([]))))}),bA("contextmenu",q,an),se(t,Z),ii(A,"expand",Te),ii(A,"collapse",QA),ii(A,"validate",XA),ii(A,"getJson",ZA),ii(A,"patch",Vi),ii(A,"acceptAutoRepair",Zt),ii(A,"openTransformModal",Jo),ii(A,"scrollTo",Xi),ii(A,"findElement",Zn),ii(A,"findSearchResult",xo),ii(A,"focus",zt),Pt(R)}function bne(t){return typeof(A=t)!="object"||A===null?t:new Proxy(t,{get:(e,i,n)=>bne(Reflect.get(e,i,n)),set:()=>!1,deleteProperty:()=>!1});var A}var gv=Qr("jsoneditor:History");function Mne(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},A=t.maxItems||1e3,e=[],i=0;function n(){return i0}function a(){return{canUndo:n(),canRedo:o(),items:()=>e.slice().reverse(),add:s,undo:c,redo:C,clear:l}}function r(){t.onChange&&t.onChange(a())}function s(d){gv("add",d),e=[d].concat(e.slice(i)).slice(0,A),i=0,r()}function l(){gv("clear"),e=[],i=0,r()}function c(){if(n()){var d=e[i];return i+=1,gv("undo",d),r(),d}}function C(){if(o())return gv("redo",e[i-=1]),r(),e[i]}return{get:a}}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-transform-modal-inner.svelte-lta8xm { + flex: 1; + display: flex; + flex-direction: column; + min-width: 0; + min-height: 0; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) { + color: inherit; + flex: 1; + display: flex; + flex-direction: column; + padding: 0; + overflow: auto; + min-width: 0; + min-height: 0; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) { + display: flex; + flex-direction: row; + justify-content: flex-end; + padding-top: var(--jse-padding, 10px); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) button.jse-primary:where(.svelte-lta8xm) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); + color: var(--jse-button-primary-color, #fff); + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + border-radius: 3px; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) button.jse-primary:where(.svelte-lta8xm):hover { + background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) button.jse-primary:where(.svelte-lta8xm):disabled { + background: var(--jse-button-primary-background-disabled, #9d9d9d); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) { + flex: 1; + display: flex; + gap: calc(2 * var(--jse-padding, 10px)); + min-height: 0; + box-sizing: border-box; + padding: 0 calc(2 * var(--jse-padding, 10px)) var(--jse-padding, 10px); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) { + flex: 1; + display: flex; + flex-direction: column; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) p { + margin: var(--jse-padding, 10px) 0; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) p:first-child { + margin-top: 0; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) p:last-child { + margin-bottom: 0; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .jse-description:where(.svelte-lta8xm) code { + background: var(--jse-modal-code-background, rgba(0, 0, 0, 0.05)); + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) .query-error:where(.svelte-lta8xm) { + color: var(--jse-error-color, #ee5341); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) textarea.jse-query:where(.svelte-lta8xm) { + flex: 1; + outline: none; + resize: vertical; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) { + flex: 1; + display: flex; + flex-direction: column; + gap: calc(2 * var(--jse-padding, 10px)); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-original-data:where(.svelte-lta8xm) { + flex: 1; + display: flex; + flex-direction: column; + min-height: 0; + box-sizing: border-box; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-original-data.jse-hide:where(.svelte-lta8xm) { + flex: none; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-preview-data:where(.svelte-lta8xm) { + flex: 1; + display: flex; + flex-direction: column; + min-height: 0; + box-sizing: border-box; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents.jse-hide-original-data:where(.svelte-lta8xm) { + flex-direction: column; + gap: 0; + margin-bottom: 0; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-actions:where(.svelte-lta8xm) { + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)) calc(2 * var(--jse-padding, 10px)); +} +@media screen and (max-width: 1200px) { + .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) { + flex-direction: column; + overflow: auto; + } + .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-query-contents:where(.svelte-lta8xm) textarea.jse-query:where(.svelte-lta8xm) { + min-height: 150px; + flex: none; + } + .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-tree-mode { + height: 300px; + flex: none; + } + .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-original-data:where(.svelte-lta8xm), + .jse-transform-modal-inner.svelte-lta8xm .jse-modal-contents:where(.svelte-lta8xm) .jse-main-contents:where(.svelte-lta8xm) .jse-data-contents:where(.svelte-lta8xm) .jse-preview-data:where(.svelte-lta8xm) { + flex: unset; + } +} +.jse-transform-modal-inner.svelte-lta8xm .jse-label:where(.svelte-lta8xm) { + font-weight: bold; + display: block; + box-sizing: border-box; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-label:where(.svelte-lta8xm) .jse-label-inner:where(.svelte-lta8xm) { + margin-top: calc(2 * var(--jse-padding, 10px)); + margin-bottom: calc(0.5 * var(--jse-padding, 10px)); + box-sizing: border-box; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-label:where(.svelte-lta8xm) .jse-label-inner:where(.svelte-lta8xm) button:where(.svelte-lta8xm) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + font-weight: bold; + padding: 0; +} +.jse-transform-modal-inner.svelte-lta8xm .jse-tree-mode { + flex: 1; + background: var(--jse-input-background-readonly, transparent); + box-shadow: none; + box-sizing: border-box; + --jse-main-border: var(--jse-input-border, 1px solid #d8dbdf); +} +.jse-transform-modal-inner.svelte-lta8xm input:where(.svelte-lta8xm), +.jse-transform-modal-inner.svelte-lta8xm textarea:where(.svelte-lta8xm) { + border: var(--jse-input-border, 1px solid #d8dbdf); + outline: none; + box-sizing: border-box; + padding: calc(0.5 * var(--jse-padding, 10px)); + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + color: inherit; + background: var(--jse-input-background, var(--jse-background-color, #fff)); +} +.jse-transform-modal-inner.svelte-lta8xm input:where(.svelte-lta8xm):focus, +.jse-transform-modal-inner.svelte-lta8xm textarea:where(.svelte-lta8xm):focus { + border: var(--jse-input-border-focus, 1px solid var(--jse-input-border-focus, var(--jse-theme-color, #3883fa))); +} +.jse-transform-modal-inner.svelte-lta8xm input:where(.svelte-lta8xm):read-only, +.jse-transform-modal-inner.svelte-lta8xm textarea:where(.svelte-lta8xm):read-only { + background: var(--jse-input-background-readonly, transparent); +} +.jse-transform-modal-inner.svelte-lta8xm .jse-preview.jse-error:where(.svelte-lta8xm) { + flex: 1; + background: var(--jse-input-background-readonly, transparent); + border: var(--jse-input-border, 1px solid #d8dbdf); + color: var(--jse-error-color, #ee5341); + padding: calc(0.5 * var(--jse-padding, 10px)); +} +.jse-transform-modal-inner.svelte-lta8xm a { + color: var(--jse-a-color, #156fc5); +} +.jse-transform-modal-inner.svelte-lta8xm a:hover { + color: var(--jse-a-color-highlight, #0f508d); +}`);var P4=Pv(()=>v6e),Cu=Pv(()=>D6e),Eye=Oe('
        '),Qye=Oe(" ",1),pye=Oe('
        '),mye=Oe('
        Language
        Path
        Query
        Preview
        ',1),fye=Oe('
        ');function wye(t,A){var e,i,n;Ht(A,!1);var o=Qr("jsoneditor:TransformModal"),a=K(A,"id",25,()=>"transform-modal-"+Eu()),r=K(A,"json",9),s=K(A,"rootPath",25,()=>[]),l=K(A,"indentation",9),c=K(A,"truncateTextSize",9),C=K(A,"escapeControlCharacters",9),d=K(A,"escapeUnicodeCharacters",9),B=K(A,"parser",9),E=K(A,"parseMemoizeOne",9),u=K(A,"validationParser",9),m=K(A,"pathParser",9),f=K(A,"queryLanguages",9),D=K(A,"queryLanguageId",13),S=K(A,"onChangeQueryLanguage",9),k=K(A,"onRenderValue",9),b=K(A,"onRenderMenu",9),x=K(A,"onRenderContextMenu",9),F=K(A,"onClassName",9),P=K(A,"onTransform",9),j=K(A,"onClose",9),X=ge(void 0,!0),Ae=ge(Mne({onChange:ze=>N(Ae,ze)}).get(),!0),W=ge(void 0,!0),Ce=ge(void 0,!0),we=ge(!1,!0),Be="".concat(a(),":").concat(Lt(s())),Ee=(e=P4()[Be])!==null&&e!==void 0?e:{},Ne=ge(Cu().showWizard!==!1,!0),de=ge(Cu().showOriginal!==!1,!0),Ie=ge((i=Ee.queryOptions)!==null&&i!==void 0?i:{},!0),xe=ge(D()===Ee.queryLanguageId&&Ee.query?Ee.query:"",!0),Xe=ge((n=Ee.isManual)!==null&&n!==void 0&&n,!0),fA=ge(void 0,!0),Pe=ge(void 0,!0),be=ge({text:""},!0);function qe(ze){var ye;return(ye=f().find(qt=>qt.id===ze))!==null&&ye!==void 0?ye:f()[0]}function st(ze){try{N(Ie,ze),N(xe,qe(D()).createQuery(g(W),ze)),N(fA,void 0),N(Xe,!1),o("updateQueryByWizard",{queryOptions:g(Ie),query:g(xe),isManual:g(Xe)})}catch(ye){N(fA,String(ye))}}function it(ze){N(xe,ze.target.value),N(Xe,!0),o("handleChangeQuery",{query:g(xe),isManual:g(Xe)})}g(Xe)||st(g(Ie)),gs(()=>{var ze;(ze=g(X))===null||ze===void 0||ze.focus()});var He=oQ(function(ze,ye){if(ze===void 0)return N(be,{text:""}),void N(Pe,"Error: No JSON");if(ye.trim()!=="")try{o("previewTransform",{query:ye});var qt=qe(D()).executeQuery(ze,ye,B());N(be,{json:qt}),N(Pe,void 0)}catch(St){N(be,{text:""}),N(Pe,String(St))}else N(be,{json:ze})},300);function he(){if(g(W)===void 0)return N(be,{text:""}),void N(Pe,"Error: No JSON");try{o("handleTransform",{query:g(xe)});var ze=qe(D()).executeQuery(g(W),g(xe),B());P()([{op:"replace",path:Lt(s()),value:ze}]),j()()}catch(ye){console.error(ye),N(be,{text:""}),N(Pe,String(ye))}}function tA(){N(Ne,!g(Ne)),Cu(Cu().showWizard=g(Ne))}function pe(){N(de,!g(de)),Cu(Cu().showOriginal=g(de))}function oA(ze){ze.focus()}function Fe(ze){o("handleChangeQueryLanguage",ze),D(ze),S()(ze),st(g(Ie))}function OA(){g(we)?N(we,!g(we)):j()()}Ue(()=>(z(r()),z(s())),()=>{N(W,bne(nt(r(),s())))}),Ue(()=>g(W),()=>{N(Ce,g(W)?{json:g(W)}:{text:""})}),Ue(()=>(g(W),g(xe)),()=>{He(g(W),g(xe))}),Ue(()=>(P4(),g(Ie),g(xe),z(D()),g(Xe)),()=>{P4(P4()[Be]={queryOptions:g(Ie),query:g(xe),queryLanguageId:D(),isManual:g(Xe)}),o("store state in memory",Be,P4()[Be])}),qn(),hi(!0),gm(t,{get onClose(){return j()},className:"jse-transform-modal",get fullscreen(){return g(we)},children:(ze,ye)=>{var qt=fye();JN(ce(qt),{children:(St,yA)=>{var ei=mye(),WA=ct(ei);(function(J,wt){Ht(wt,!1);var Si,_n=K(wt,"queryLanguages",9),xn=K(wt,"queryLanguageId",9),Io=K(wt,"fullscreen",13),ra=K(wt,"onChangeQueryLanguage",9),ko=K(wt,"onClose",9),Zo=ge(void 0,!0),{openAbsolutePopup:Ba,closeAbsolutePopup:To}=k2("absolute-popup");function _a(){var ha={queryLanguages:_n(),queryLanguageId:xn(),onChangeQueryLanguage:va=>{To(Si),ra()(va)}};Si=Ba(m8e,ha,{offsetTop:-2,offsetLeft:0,anchor:g(Zo),closeOnOuterClick:!0})}hi(!0),Uv(J,{title:"Transform",fullScreenButton:!0,get onClose(){return ko()},get fullscreen(){return Io()},set fullscreen(ha){Io(ha)},$$slots:{actions:(ha,va)=>{var Oo,BA=y8e();un(ce(BA),{get data(){return eZ}}),na(BA,Ri=>N(Zo,Ri),()=>g(Zo)),TA(()=>Oo=Bi(BA,1,"jse-config svelte-5gkegr",null,Oo,{hide:_n().length<=1})),bA("click",BA,_a),se(ha,BA)}},$$legacy:!0}),Pt()})(WA,{get queryLanguages(){return f()},get queryLanguageId(){return D()},onChangeQueryLanguage:Fe,get onClose(){return j()},get fullscreen(){return g(we)},set fullscreen(J){N(we,J)},$$legacy:!0});var et=ce(ke(WA,2)),kt=ce(et),JA=ke(ce(kt),2);Iie(ce(JA),()=>(z(D()),Qe(()=>qe(D()).description)));var ui=ke(JA,4),V=ke(ui,2),$=ce(V),ie=ce($),oe=ce(ie),Te=It(()=>g(Ne)?y0:vh);un(oe,{get data(){return g(Te)}});var QA=ke(V,2),vA=J=>{var wt=ji(),Si=ct(wt),_n=Io=>{var ra=Qye(),ko=ct(ra);E8e(ko,{get queryOptions(){return g(Ie)},get json(){return g(W)},onChange:st});var Zo=ke(ko,2),Ba=To=>{var _a=Eye(),ha=ce(_a);TA(()=>jt(ha,g(fA))),se(To,_a)};je(Zo,To=>{g(fA)&&To(Ba)}),se(Io,ra)},xn=Io=>{se(Io,Mr("(Only available for arrays, not for objects)"))};je(Si,Io=>{g(W),Qe(()=>Array.isArray(g(W)))?Io(_n):Io(xn,!1)}),se(J,wt)};je(QA,J=>{g(Ne)&&J(vA)});var Ke=ke(QA,4);na(Ke,J=>N(X,J),()=>g(X));var Je,bt,Ct=ke(kt,2),XA=ce(Ct),ZA=ce(XA),fi=ce(ZA),yn=ce(fi),kn=ce(yn),qA=It(()=>g(de)?y0:vh);un(kn,{get data(){return g(qA)}});var En=ke(ZA,2),Ui=J=>{rF(J,{get externalContent(){return g(Ce)},externalSelection:void 0,get history(){return g(Ae)},readOnly:!0,get truncateTextSize(){return c()},mainMenuBar:!1,navigationBar:!1,get indentation(){return l()},get escapeControlCharacters(){return C()},get escapeUnicodeCharacters(){return d()},get parser(){return B()},get parseMemoizeOne(){return E()},get onRenderValue(){return k()},get onRenderMenu(){return b()},get onRenderContextMenu(){return x()},onError:Qe(()=>console.error),get onChange(){return Ta},get onChangeMode(){return Ta},get onSelect(){return Ta},get onUndo(){return Ta},get onRedo(){return Ta},get onFocus(){return Ta},get onBlur(){return Ta},get onSortModal(){return Ta},get onTransformModal(){return Ta},get onJSONEditorModal(){return Ta},get onClassName(){return F()},validator:void 0,get validationParser(){return u()},get pathParser(){return m()}})};je(En,J=>{g(de)&&J(Ui)});var Vi=ke(XA,2),Cn=ke(ce(Vi),2),Gt=J=>{rF(J,{get externalContent(){return g(be)},externalSelection:void 0,get history(){return g(Ae)},readOnly:!0,get truncateTextSize(){return c()},mainMenuBar:!1,navigationBar:!1,get indentation(){return l()},get escapeControlCharacters(){return C()},get escapeUnicodeCharacters(){return d()},get parser(){return B()},get parseMemoizeOne(){return E()},get onRenderValue(){return k()},get onRenderMenu(){return b()},get onRenderContextMenu(){return x()},onError:Qe(()=>console.error),get onChange(){return Ta},get onChangeMode(){return Ta},get onSelect(){return Ta},get onUndo(){return Ta},get onRedo(){return Ta},get onFocus(){return Ta},get onBlur(){return Ta},get onSortModal(){return Ta},get onTransformModal(){return Ta},get onJSONEditorModal(){return Ta},get onClassName(){return F()},validator:void 0,get validationParser(){return u()},get pathParser(){return m()}})},Qn=J=>{var wt=pye(),Si=ce(wt);TA(()=>jt(Si,g(Pe))),se(J,wt)};je(Cn,J=>{g(Pe)?J(Qn,!1):J(Gt)});var Zt=ce(ke(et,2));Pr(()=>bA("click",Zt,he)),Ns(Zt,J=>oA?.(J)),TA(J=>{x1(ui,J),x1(Ke,g(xe)),Je=Bi(Ct,1,"jse-data-contents svelte-lta8xm",null,Je,{"jse-hide-original-data":!g(de)}),bt=Bi(XA,1,"jse-original-data svelte-lta8xm",null,bt,{"jse-hide":!g(de)}),Zt.disabled=!!g(Pe)},[()=>(z(tn),z(s()),z(bl),Qe(()=>tn(s())?"(document root)":bl(s())))]),bA("click",ie,tA),bA("input",Ke,it),bA("click",yn,pe),se(St,ei)},$$slots:{default:!0}}),Ns(qt,(St,yA)=>Tv?.(St,yA),()=>OA),se(ze,qt)},$$slots:{default:!0}}),Pt()}function Nc(){}var yye=0,br=class{constructor(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.id=yye++,this.perNode=!!A.perNode,this.deserialize=A.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=A.combine||null}add(A){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof A!="function"&&(A=dm.match(A)),e=>{var i=A(e);return i===void 0?null:[this,i]}}};br.closedBy=new br({deserialize:t=>t.split(" ")}),br.openedBy=new br({deserialize:t=>t.split(" ")}),br.group=new br({deserialize:t=>t.split(" ")}),br.isolate=new br({deserialize:t=>{if(t&&t!="rtl"&&t!="ltr"&&t!="auto")throw new RangeError("Invalid value for isolate: "+t);return t||"auto"}}),br.contextHash=new br({perNode:!0}),br.lookAhead=new br({perNode:!0}),br.mounted=new br({perNode:!0});var Ite,vye=Object.create(null),dm=class t{constructor(A,e,i){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;this.name=A,this.props=e,this.id=i,this.flags=n}static define(A){var e=A.props&&A.props.length?Object.create(null):vye,i=(A.top?1:0)|(A.skipped?2:0)|(A.error?4:0)|(A.name==null?8:0),n=new t(A.name||"",e,A.id,i);if(A.props){for(var o of A.props)if(Array.isArray(o)||(o=o(n)),o){if(o[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");e[o[0].id]=o[1]}}return n}prop(A){return this.props[A.id]}get isTop(){return(1&this.flags)>0}get isSkipped(){return(2&this.flags)>0}get isError(){return(4&this.flags)>0}get isAnonymous(){return(8&this.flags)>0}is(A){if(typeof A=="string"){if(this.name==A)return!0;var e=this.prop(br.group);return!!e&&e.indexOf(A)>-1}return this.id==A}static match(A){var e=Object.create(null);for(var i in A)for(var n of i.split(" "))e[n]=A[i];return o=>{for(var a=o.prop(br.group),r=-1;r<(a?a.length:0);r++){var s=e[r<0?o.name:a[r]];if(s)return s}}}};dm.none=new dm("",Object.create(null),0,8),(function(t){t[t.ExcludeBuffers=1]="ExcludeBuffers",t[t.IncludeAnonymous=2]="IncludeAnonymous",t[t.IgnoreMounts=4]="IgnoreMounts",t[t.IgnoreOverlays=8]="IgnoreOverlays"})(Ite||(Ite={})),new br({perNode:!0});si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-status-bar.svelte-1pmgv9j { + background: var(--jse-panel-background, #ebebeb); + color: var(--jse-panel-color-readonly, #b2b2b2); + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + margin: 0; + border-top: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); + display: flex; + gap: var(--jse-padding, 10px); +} +.jse-status-bar.svelte-1pmgv9j:last-child { + border-bottom: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-status-bar.svelte-1pmgv9j .jse-status-bar-info:where(.svelte-1pmgv9j) { + padding: 2px; +}`);var Dye=Oe('
        '),bye=Oe('
        '),Mye=Oe('
        '),Sye=Oe('
        '),GF=Xh.define([{tag:PA.propertyName,color:"var(--internal-key-color)"},{tag:PA.number,color:"var(--internal-value-color-number)"},{tag:PA.bool,color:"var(--internal-value-color-boolean)"},{tag:PA.string,color:"var(--internal-value-color-string)"},{tag:PA.keyword,color:"var(--internal-value-color-null)"}]),kye=sR(GF),_ye=GF.style;GF.style=t=>_ye(t||[]);var xye=[Vo.fromClass(class{constructor(t){this.view=t,this.indentUnit=bg(t.state),this.initialPaddingLeft=null,this.isChrome=window?.navigator.userAgent.includes("Chrome"),this.generate(t.state)}update(t){var A=bg(t.state);(A!==this.indentUnit||t.docChanged||t.viewportChanged)&&(this.indentUnit=A,this.generate(t.state))}generate(t){var A=new ns;this.initialPaddingLeft?this.addStyleToBuilder(A,t,this.initialPaddingLeft):this.view.requestMeasure({read:e=>{var i=e.contentDOM.querySelector(".cm-line");i&&(this.initialPaddingLeft=window.getComputedStyle(i).getPropertyValue("padding-left"),this.addStyleToBuilder(A,e.state,this.initialPaddingLeft)),this.decorations=A.finish()}}),this.decorations=A.finish()}addStyleToBuilder(t,A,e){var i=this.getVisibleLines(A);for(var n of i){var{numColumns:o,containsTab:a}=this.numColumns(n.text,A.tabSize),r="calc(".concat(o+this.indentUnit,"ch + ").concat(e,")"),s=this.isChrome?"calc(-".concat(o+this.indentUnit,"ch - ").concat(a?1:0,"px)"):"-".concat(o+this.indentUnit,"ch");t.add(n.from,n.from,Tt.line({attributes:{style:"padding-left: ".concat(r,"; text-indent: ").concat(s,";")}}))}}getVisibleLines(t){var A=new Set,e=null;for(var{from:i,to:n}of this.view.visibleRanges)for(var o=i;o<=n;){var a=t.doc.lineAt(o);e!==a&&(A.add(a),e=a),o=a.to+1}return A}numColumns(t,A){var e=0,i=!1;e:for(var n=0;nt.decorations})];si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-text-mode.svelte-k2b9e6 { + --internal-key-color: var(--jse-key-color, #1a1a1a); + --internal-value-color-number: var(--jse-value-color-number, #ee422e); + --internal-value-color-boolean: var(--jse-value-color-boolean, #ff8c00); + --internal-value-color-string: var(--jse-value-color-string, #008000); + --internal-value-color-null: var(--jse-value-color-null, #004ed0); + flex: 1; + box-sizing: border-box; + display: flex; + flex-direction: column; + background: var(--jse-background-color, #fff); +} +.jse-text-mode.no-main-menu.svelte-k2b9e6 { + border-top: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) { + flex: 1; + display: flex; + position: relative; + flex-direction: column; + overflow: hidden; + min-width: 0; + min-height: 0; + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6):last-child { + border-bottom: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents.jse-hidden:where(.svelte-k2b9e6) { + visibility: hidden; + position: absolute; + top: 0; + left: 0; +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor { + flex: 1; + overflow: hidden; +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-scroller { + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + line-height: var(--jse-line-height, calc(1em + 4px)); + color: var(--jse-delimiter-color, rgba(0, 0, 0, 0.38)); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-gutters { + background: var(--jse-panel-background, #ebebeb); + color: var(--jse-panel-color-readonly, #b2b2b2); + border-right: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-activeLine, +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-activeLineGutter { + background: var(--jse-active-line-background-color, rgba(0, 0, 0, 0.06)); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-selectionBackground { + background: var(--jse-selection-background-color, #d3d3d3); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-searchMatch { + background-color: var(--jse-search-match-color, #ffe665); + outline: var(--jse-search-match-outline, none); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-searchMatch.cm-searchMatch-selected { + background-color: var(--jse-search-match-active-color, var(--jse-search-match-color, #ffe665)); + outline: var(--jse-search-match-outline, 2px solid #e0be00); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-selectionMatch { + background-color: var(--jse-search-match-background-color, rgba(153, 255, 119, 0.5019607843)); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-foldPlaceholder { + background: var(--jse-tag-background, rgba(0, 0, 0, 0.2)); + color: var(--jse-tag-color, var(--jse-text-color-inverse, #fff)); + border: none; + padding: 0 var(--jse-padding, 10px); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-tooltip { + font-size: var(--jse-font-size, 16px); + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + color: var(--jse-tooltip-color, var(--jse-text-color, #4d4d4d)); + background: var(--jse-tooltip-background, var(--jse-modal-background, #f5f5f5)); + border: var(--jse-tooltip-border, var(--jse-main-border, 1px solid #d7d7d7)); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-diagnosticAction { + background: var(--jse-tooltip-action-button-color, var(--jse-text-color-inverse, #fff)); + background: var(--jse-tooltip-action-button-background, #4d4d4d); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-panels { + border-bottom: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search { + background: var(--jse-panel-background, #ebebeb); + color: var(--jse-panel-color, var(--jse-text-color, #4d4d4d)); + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search input { + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size-text-mode-search, 80%); + color: var(--jse-input-color, var(--jse-text-color, #4d4d4d)); + border: var(--jse-input-border, 1px solid #d8dbdf); + background: var(--jse-input-background, var(--jse-background-color, #fff)); + margin-right: 2px; +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search button { + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size-text-mode-search, 80%); + color: var(--jse-panel-button-color, inherit); + background: var(--jse-panel-button-background, transparent); + border: none; + cursor: pointer; + text-transform: capitalize; + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px); + margin: 0; +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search button:hover { + color: var(--panel-button-color-highlight, var(--jse-text-color, #4d4d4d)); + background: var(--jse-panel-button-background-highlight, #e0e0e0); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search label { + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size-text-mode-search, 80%); + padding-left: var(--jse-padding, 10px); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search label input { + margin-right: 2px; +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-search button[name='close'] { + width: 32px; + height: 32px; + font-size: 24px; + line-height: 24px; + padding: 0; + right: 0; + top: -4px; +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .cm-editor .cm-cursor-primary { + border-color: var(--jse-text-color, #4d4d4d); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .jse-loading-space:where(.svelte-k2b9e6) { + flex: 1; +} +.jse-text-mode.svelte-k2b9e6 .jse-contents:where(.svelte-k2b9e6) .jse-loading:where(.svelte-k2b9e6) { + flex: 2; + text-align: center; + color: var(--jse-panel-color-readonly, #b2b2b2); + box-sizing: border-box; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); +} +.jse-text-mode.svelte-k2b9e6 .jse-contents.jse-preview:where(.svelte-k2b9e6) { + flex: 1; + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + color: var(--jse-panel-color-readonly, #b2b2b2); + overflow: auto; + white-space: pre-wrap; + word-break: break-word; + padding: 2px; +} +.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) { + display: flex; + align-items: center; + gap: 8px; + padding: 8px 12px; + background: var(--jse-background-color, #fff); + border-top: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); + border-bottom: var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); +} +.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-tip:where(.svelte-k2b9e6) { + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size-mono, 14px); + color: var(--jse-panel-color-readonly, #b2b2b2); +} +.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-progress-track:where(.svelte-k2b9e6) { + flex: 1; + height: 6px; + background: var(--jse-panel-background, #ebebeb); + border-radius: 3px; + overflow: hidden; + border: 1px solid var(--jse-panel-border, var(--jse-main-border, 1px solid #d7d7d7)); +} +.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-progress-fill:where(.svelte-k2b9e6) { + height: 100%; + background: linear-gradient(90deg, var(--jse-theme-color, #3883fa), var(--jse-theme-color-highlight, #5f9dff)); + border-radius: 2px; + transition: width 0.1s ease; + min-width: 2px; +} +.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-cancel-button:where(.svelte-k2b9e6) { + padding: 4px 12px; + font-size: 12px; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + background: var(--jse-theme-color, #3883fa); + color: #fff; + border-radius: 3px; + cursor: pointer; + transition: background-color 0.2s ease; + flex-shrink: 0; + border: 1px solid var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-text-mode.svelte-k2b9e6 .jse-fold-progress:where(.svelte-k2b9e6) .jse-fold-cancel-button:where(.svelte-k2b9e6):hover { + background: var(--jse-theme-color-highlight, #5f9dff); + color: #fff; +}`);var Rye=Oe('
        Collapsing
        '),Nye=Oe('
        ',1),Fye=Oe(" ",1),Lye=Oe("
        ",1),Gye=Oe('
        loading...
        '),Kye=Oe("
        ");function Uye(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),n=K(A,"readOnly",9),o=K(A,"mainMenuBar",9),a=K(A,"statusBar",9),r=K(A,"askToFormat",9),s=K(A,"externalContent",9),l=K(A,"externalSelection",9),c=K(A,"history",9),C=K(A,"indentation",9),d=K(A,"tabSize",9),B=K(A,"escapeUnicodeCharacters",9),E=K(A,"parser",9),u=K(A,"validator",9),m=K(A,"validationParser",9),f=K(A,"onChange",9),D=K(A,"onChangeMode",9),S=K(A,"onSelect",9),k=K(A,"onUndo",9),b=K(A,"onRedo",9),x=K(A,"onError",9),F=K(A,"onFocus",9),P=K(A,"onBlur",9),j=K(A,"onRenderMenu",9),X=K(A,"onSortModal",9),Ae=K(A,"onTransformModal",9),W=Qr("jsoneditor:TextMode"),Ce={key:"Mod-i",run:vA,shift:Ke,preventDefault:!0},we=typeof window>"u";W("isSSR:",we);var Be,Ee=ge(void 0,!0),Ne=ge(void 0,!0),de=ge(void 0,!0),Ie=ge(!1,!0),xe=ge(r(),!0),Xe=ge([],!0),fA=ge(!1,!0),Pe=ge(0,!0),be=ge(0,!0),qe=null,st=new b0,it=new b0,He=new b0,he=new b0,tA=new b0,pe=s(),oA=ge(ON(pe,C(),E()),!0),Fe=El.define(),OA=null;function ze(){if(!OA||OA.length===0)return!1;var Se=OA[0].startState,iA=OA[OA.length-1].state,kA=OA.map(Ge=>Ge.changes).reduce((Ge,IA)=>Ge.compose(IA)),ue={type:"text",undo:{changes:kA.invert(Se.doc).toJSON(),selection:va(Se.selection)},redo:{changes:kA.toJSON(),selection:va(iA.selection)}};return W("add history item",ue),c().add(ue),OA=null,!0}var ye=ge(B(),!0);gs(Ai(function*(){if(!we)try{Be=(function(Se){var{target:iA,initialText:kA,readOnly:ue,indentation:Ge}=Se;W("Create CodeMirror editor",{readOnly:ue,indentation:Ge});var IA=(function(Bt,Et){return pN(Bt)?Bt.ranges.every(Jt=>Jt.anchor{N(de,Bt.state),Bt.docChanged&&(Bt.transactions.some(Et=>!!Et.annotation(Fe))||(OA=[...OA??[],Bt]),Ba()),Bt.selectionSet&&ha()}),wee(),kee({top:!0}),mi.lineWrapping,it.of(lr.readOnly.of(ue)),he.of(lr.tabSize.of(d())),He.of(Zo(Ge)),tA.of(mi.theme({},{dark:Qn()}))]});return Be=new mi({state:HA,parent:iA}),IA&&Be.dispatch(Be.state.update({selection:IA.main,scrollIntoView:!0})),Be})({target:g(Ee),initialText:Oo(g(oA),g(Ie))?"":g(e).escapeValue(g(oA)),readOnly:n(),indentation:C()})}catch(Se){console.error(Se)}})),Tc(()=>{To(),Be&&(W("Destroy CodeMirror editor"),Be.destroy()),ui()});var qt=rI(),St=rI();function yA(){Be&&(W("focus"),Be.focus())}function ei(Se,iA){if(Be)try{(function(){var kA=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],ue=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],Ge=Be.state,IA=Ge.doc.length,HA=AR(Ge,IA,1/0);if(HA){var Bt=[];if(kA.length===0)Bt=kt(HA,Ge,void 0,ue);else{var{from:Et}=gN(g(e).escapeValue(g(oA)),kA);Et!==void 0&&Et!==0&&(Bt=kt(HA,Ge,Et,ue))}Bt.length>0&&(function(Jt){JA.apply(this,arguments)})(Bt)}})(Se,iA)}catch(kA){x()(kA)}}function WA(){return nR.of((Se,iA,kA)=>{var ue=AR(Se,Se.doc.length,1/0);if(!ue||ue.lengthkA)){if(Ge&&HA.from=iA&&Et.to>kA&&(Ge=Et)}}}return Ge})}function et(Se){var iA=Se.lastChild;return iA&&iA.to==Se.to&&iA.type.isError}function kt(Se,iA,kA){var ue=!(arguments.length>3&&arguments[3]!==void 0)||arguments[3],Ge=[],IA=new Set;return Se.iterate({enter(HA){if(kA===void 0||HA.from>=kA){var Bt=Wh(iA,HA.from,HA.to);if(Bt){var Et="".concat(Bt.from,"-").concat(Bt.to);if(!IA.has(Et))if(ue)Ge.push({from:Bt.from,to:Bt.to}),IA.add(Et);else{var Jt=Ge.some(no=>no.from<=Bt.from&&no.to>=Bt.to);Jt||(Ge.push({from:Bt.from,to:Bt.to}),IA.add(Et))}}}}}),Ge}function JA(){return JA=Ai(function*(Se){if(Se.length!==0){var iA=Se.length>5e3;iA&&(N(fA,!0),N(Pe,0),N(be,Se.length),qe=new AbortController);var kA=ue=>new Promise(Ge=>{var IA;iA&&(IA=qe)!==null&&IA!==void 0&&IA.signal.aborted?Ge():requestAnimationFrame(()=>{var HA=Math.min(ue+100,Se.length),Bt=Se.slice(ue,HA);Be.dispatch({effects:Bt.map(Et=>eu.of({from:Et.from,to:Et.to}))}),iA&&N(Pe,HA),HA1&&arguments[1]!==void 0?arguments[1]:PN;if(Be)try{if(Se&&Se.length>0){var{from:kA}=gN(g(e).escapeValue(g(oA)),Se);kA!==void 0&&(Be.dispatch({selection:{anchor:kA,head:kA}}),oR(Be))}else aR(Be);iA?.(Se)}catch(ue){x()(ue)}}function $(){V([],()=>!0)}function ie(){ei([],!0)}var oe=!1;function Te(Se){return QA(Se,!1)}function QA(Se,iA){W("handlePatch",Se,iA);var kA=E().parse(g(oA)),ue=Bl(kA,Se),Ge=W8(kA,Se);return Si({text:E().stringify(ue,null,C())},iA,!1),{json:ue,previousJson:kA,undo:Ge,redo:Se}}function vA(){if(W("format"),n())return!1;try{var Se=E().parse(g(oA));return Si({text:E().stringify(Se,null,C())},!0,!1),N(xe,r()),!0}catch(iA){x()(iA)}return!1}function Ke(){if(W("compact"),n())return!1;try{var Se=E().parse(g(oA));return Si({text:E().stringify(Se)},!0,!1),N(xe,!1),!0}catch(iA){x()(iA)}return!1}function Je(){if(W("repair"),!n())try{Si({text:vc(g(oA))},!0,!1),N(BA,uN),N(Ri,void 0)}catch(Se){x()(Se)}}function bt(){var Se;if(!n())try{var iA=E().parse(g(oA));oe=!0,X()({id:qt,json:iA,rootPath:[],onSort:(Se=Ai(function*(kA){var{operations:ue}=kA;W("onSort",ue),QA(ue,!0)}),function(kA){return Se.apply(this,arguments)}),onClose:()=>{oe=!1,yA()}})}catch(kA){x()(kA)}}function Ct(Se){var{id:iA,rootPath:kA,onTransform:ue,onClose:Ge}=Se;try{var IA=E().parse(g(oA));oe=!0,Ae()({id:iA||St,json:IA,rootPath:kA||[],onTransform:HA=>{ue?ue({operations:HA,json:IA,transformedJson:Bl(IA,HA)}):(W("onTransform",HA),QA(HA,!0))},onClose:()=>{oe=!1,yA(),Ge&&Ge()}})}catch(HA){x()(HA)}}function XA(){n()||Ct({rootPath:[]})}function ZA(){Be&&(g(Ee)&&g(Ee).querySelector(".cm-search")?Uy(Be):Ky(Be))}function fi(){if(n())return!1;To();var Se=c().undo();return W("undo",Se),LAe(Se)?(Be.dispatch({annotations:Fe.of("undo"),changes:is.fromJSON(Se.undo.changes),selection:uA.fromJSON(Se.undo.selection),scrollIntoView:!0}),!0):(k()(Se),!1)}function yn(){if(n())return!1;To();var Se=c().redo();return W("redo",Se),LAe(Se)?(Be.dispatch({annotations:Fe.of("redo"),changes:is.fromJSON(Se.redo.changes),selection:uA.fromJSON(Se.redo.selection),scrollIntoView:!0}),!0):(b()(Se),!1)}function kn(){N(Ie,!0),Si(s(),!0,!0)}function qA(){D()(Ga.tree)}function En(){ra()}function Ui(Se){W("select validation error",Se);var{from:iA,to:kA}=Zt(Se);iA!==void 0&&kA!==void 0&&(Vi(iA,kA),yA())}function Vi(Se,iA){W("setSelection",{anchor:Se,head:iA}),Be&&Be.dispatch(Be.state.update({selection:{anchor:Se,head:iA},scrollIntoView:!0}))}function Cn(Se,iA){if(iA.state.selection.ranges.length===1){var kA=iA.state.selection.ranges[0],ue=g(oA).slice(kA.from,kA.to);if(ue==="{"||ue==="["){var Ge=sF.default.parse(g(oA)),IA=Object.keys(Ge.pointers).find(Bt=>{var Et;return((Et=Ge.pointers[Bt].value)===null||Et===void 0?void 0:Et.pos)===kA.from}),HA=Ge.pointers[IA];IA&&HA&&HA.value&&HA.valueEnd&&(W("pointer found, selecting inner contents of path:",IA,HA),Vi(HA.value.pos+1,HA.valueEnd.pos-1))}}}function Gt(){return lee(vn,{delay:300})}function Qn(){return!!g(Ee)&&getComputedStyle(g(Ee)).getPropertyValue("--jse-theme").includes("dark")}function Zt(Se){var{path:iA,message:kA,severity:ue}=Se,{line:Ge,column:IA,from:HA,to:Bt}=gN(g(e).escapeValue(g(oA)),iA);return{path:iA,line:Ge,column:IA,from:HA,to:Bt,message:kA,severity:ue,actions:[]}}function J(Se,iA){var{line:kA,column:ue,position:Ge,message:IA}=Se;return{path:[],line:kA,column:ue,from:Ge,to:Ge,severity:xg.error,message:IA,actions:iA&&!n()?[{name:"Auto repair",apply:()=>Je()}]:void 0}}function wt(Se){return{from:Se.from||0,to:Se.to||0,message:Se.message||"",actions:Se.actions,severity:Se.severity}}function Si(Se,iA,kA){var ue=ON(Se,C(),E()),Ge=!Oi(Se,pe),IA=pe;W("setCodeMirrorContent",{isChanged:Ge,emitChange:iA,forceUpdate:kA}),Be&&(Ge||kA)&&(pe=Se,N(oA,ue),Oo(g(oA),g(Ie))||Be.dispatch({changes:{from:0,to:Be.state.doc.length,insert:g(e).escapeValue(g(oA))}}),ze(),Ge&&iA&&_a(pe,IA))}function _n(Se){return pN(Se)?uA.fromJSON(Se):void 0}function xn(){return Io.apply(this,arguments)}function Io(){return Io=Ai(function*(){W("refresh"),yield(function(){return ko.apply(this,arguments)})()}),Io.apply(this,arguments)}function ra(){if(Be){var Se=Be?g(e).unescapeValue(Be.state.doc.toString()):"",iA=Se!==g(oA);if(W("onChangeCodeMirrorValue",{isChanged:iA}),iA){var kA=pe;N(oA,Se),pe={text:g(oA)},ze(),_a(pe,kA),qo(),ha()}}}function ko(){return(ko=Ai(function*(){if(qo(),Be){var Se=Qn();return W("updateTheme",{dark:Se}),Be.dispatch({effects:[tA.reconfigure(mi.theme({},{dark:Se}))]}),new Promise(iA=>setTimeout(iA))}return Promise.resolve()})).apply(this,arguments)}function Zo(Se){var iA=l1.of(typeof Se=="number"?" ".repeat(Se):Se);return Se===" "?[iA]:[iA,xye]}NF({onMount:gs,onDestroy:Tc,getWindow:()=>mm(g(Ne)),hasFocus:()=>oe&&document.hasFocus()||QF(g(Ne)),onFocus:F(),onBlur:()=>{To(),P()()}});var Ba=oQ(ra,300);function To(){Ba.flush()}function _a(Se,iA){f()&&f()(Se,iA,{contentErrors:Rn(),patchResult:void 0})}function ha(){S()(va(g(de).selection))}function va(Se){return UA({type:fo.text},Se.toJSON())}function Oo(Se,iA){return!!Se&&Se.length>BN&&!iA}var BA=ge(uN,!0),Ri=ge(void 0,!0);function vn(){if(Oo(g(oA),g(Ie)))return[];var Se=Rn();if(FAe(Se)){var{parseError:iA,isRepairable:kA}=Se;return[wt(J(iA,kA))]}return o6e(Se)?Se.validationErrors.map(Zt).map(wt):[]}function Rn(){W("validate:start"),To();var Se=sa(g(e).escapeValue(g(oA)),u(),E(),m());return FAe(Se)?(N(BA,Se.isRepairable?kAe:"invalid"),N(Ri,Se.parseError),N(Xe,[])):(N(BA,uN),N(Ri,void 0),N(Xe,Se?.validationErrors||[])),W("validate:end"),Se}var sa=Dh(b8e);function Ka(){g(Ri)&&(function(Se){W("select parse error",Se);var iA=J(Se,!1);Vi(iA.from!=null?iA.from:0,iA.to!=null?iA.to:0),yA()})(g(Ri))}var zi={icon:Vq,text:"Show me",title:"Move to the parse error location",onClick:Ka};Ue(()=>z(B()),()=>{N(e,uF({escapeControlCharacters:!1,escapeUnicodeCharacters:B()}))}),Ue(()=>z(s()),()=>{Si(s(),!1,!1)}),Ue(()=>z(l()),()=>{(function(Se){if(pN(Se)){var iA=_n(Se);!Be||!iA||g(de)&&g(de).selection.eq(iA)||(W("applyExternalSelection",iA),Be.dispatch({selection:iA}))}})(l())}),Ue(()=>z(u()),()=>{(function(Se){W("updateLinter",Se),Be&&Be.dispatch({effects:st.reconfigure(Gt())})})(u())}),Ue(()=>z(C()),()=>{(function(Se){Be&&(W("updateIndentation",Se),Be.dispatch({effects:He.reconfigure(Zo(Se))}))})(C())}),Ue(()=>z(d()),()=>{(function(Se){Be&&(W("updateTabSize",Se),Be.dispatch({effects:he.reconfigure(lr.tabSize.of(Se))}))})(d())}),Ue(()=>z(n()),()=>{(function(Se){Be&&(W("updateReadOnly",Se),Be.dispatch({effects:[it.reconfigure(lr.readOnly.of(Se))]}))})(n())}),Ue(()=>(g(ye),z(B())),()=>{g(ye)!==B()&&(N(ye,B()),W("forceUpdateText",{escapeUnicodeCharacters:B()}),Be&&Be.dispatch({changes:{from:0,to:Be.state.doc.length,insert:g(e).escapeValue(g(oA))}}))}),Ue(()=>(g(BA),z(n()),vC),()=>{N(i,g(BA)!==kAe||n()?[zi]:[{icon:vC,text:"Auto repair",title:"Automatically repair JSON",onClick:Je},zi])}),qn();var _o={focus:yA,collapse:ei,expand:V,patch:Te,handlePatch:QA,openTransformModal:Ct,refresh:xn,flush:To,validate:Rn};hi(!0);var Cr,Jo=Kye(),$a=ce(Jo),io=Se=>{var iA=It(()=>(g(oA),Qe(()=>g(oA).length===0))),kA=It(()=>!g(iA)),ue=It(()=>!g(iA)),Ge=It(()=>!g(iA)),IA=It(()=>!g(iA)),HA=It(()=>!g(iA)),Bt=It(()=>!g(iA));(function(Et,Jt){Ht(Jt,!1);var no=ge(void 0,!0),$i=K(Jt,"readOnly",9,!1),an=K(Jt,"onExpandAll",9),li=K(Jt,"onCollapseAll",9),en=K(Jt,"onFormat",9),Ua=K(Jt,"onCompact",9),Wt=K(Jt,"onSort",9),Qt=K(Jt,"onTransform",9),An=K(Jt,"onToggleSearch",9),dn=K(Jt,"onUndo",9),Bo=K(Jt,"onRedo",9),Nn=K(Jt,"canExpandAll",9),zt=K(Jt,"canCollapseAll",9),Da=K(Jt,"canUndo",9),la=K(Jt,"canRedo",9),y=K(Jt,"canFormat",9),M=K(Jt,"canCompact",9),R=K(Jt,"canSort",9),Z=K(Jt,"canTransform",9),_=K(Jt,"onRenderMenu",9),q=ge(void 0,!0),te=ge(void 0,!0),re={type:"button",icon:Pp,title:"Search (Ctrl+F)",className:"jse-search",onClick:An()},ve=ge(void 0,!0);Ue(()=>(z(an()),z(Nn())),()=>{N(q,{type:"button",icon:Ine,title:"Expand all",className:"jse-expand-all",onClick:an(),disabled:!Nn()})}),Ue(()=>(z(li()),z(zt())),()=>{N(te,{type:"button",icon:Bne,title:"Collapse all",className:"jse-collapse-all",onClick:li(),disabled:!zt()})}),Ue(()=>(z($i()),g(q),g(te),z(en()),z(y()),z(Ua()),z(M()),z(Wt()),z(R()),z(Qt()),z(Z()),z(dn()),z(Da()),z(Bo()),z(la())),()=>{N(ve,$i()?[g(q),g(te),{type:"separator"},re,{type:"space"}]:[g(q),g(te),{type:"separator"},{type:"button",icon:gte,title:"Format JSON: add proper indentation and new lines (Ctrl+I)",className:"jse-format",onClick:en(),disabled:$i()||!y()},{type:"button",icon:Swe,title:"Compact JSON: remove all white spacing and new lines (Ctrl+Shift+I)",className:"jse-compact",onClick:Ua(),disabled:$i()||!M()},{type:"separator"},{type:"button",icon:qp,title:"Sort",className:"jse-sort",onClick:Wt(),disabled:$i()||!R()},{type:"button",icon:Hp,title:"Transform contents (filter, sort, project)",className:"jse-transform",onClick:Qt(),disabled:$i()||!Z()},re,{type:"separator"},{type:"button",icon:ow,title:"Undo (Ctrl+Z)",className:"jse-undo",onClick:dn(),disabled:!Da()},{type:"button",icon:nw,title:"Redo (Ctrl+Shift+Z)",className:"jse-redo",onClick:Bo(),disabled:!la()},{type:"space"}])}),Ue(()=>(z(_()),g(ve)),()=>{N(no,_()(g(ve))||g(ve))}),qn(),hi(!0),e5(Et,{get items(){return g(no)}}),Pt()})(Se,{get readOnly(){return n()},onExpandAll:$,onCollapseAll:ie,onFormat:vA,onCompact:Ke,onSort:bt,onTransform:XA,onToggleSearch:ZA,onUndo:fi,onRedo:yn,get canExpandAll(){return g(kA)},get canCollapseAll(){return g(ue)},get canFormat(){return g(Ge)},get canCompact(){return g(IA)},get canSort(){return g(HA)},get canTransform(){return g(Bt)},get canUndo(){return z(c()),Qe(()=>c().canUndo)},get canRedo(){return z(c()),Qe(()=>c().canRedo)},get onRenderMenu(){return j()}})};je($a,Se=>{o()&&Se(io)});var Xi=ke($a,2),ni=Se=>{var iA=Rye(),kA=ke(ce(iA),2),ue=ce(kA),Ge=ke(kA,2);TA(()=>Kc(ue,"width: ".concat(g(be)>0?g(Pe)/g(be)*100:0,"%"))),bA("click",Ge,ui),se(Se,iA)};je(Xi,Se=>{g(fA)&&Se(ni)});var Zn=ke(Xi,2),xo=Se=>{var iA,kA=It(()=>(g(oA),g(Ie),Qe(()=>Oo(g(oA),g(Ie))))),ue=Lye(),Ge=ct(ue);na(Ge,Jt=>N(Ee,Jt),()=>g(Ee));var IA=ke(Ge,2),HA=Jt=>{var no=Nye(),$i=ct(no),an=It(()=>(z(Qv),z(BN),g(oA),Qe(()=>"The JSON document is larger than ".concat(Qv(BN),", ")+"and may crash your browser when loading it in text mode. Actual size: ".concat(Qv(g(oA).length),"."))));ic($i,{get icon(){return Hd},type:"error",get message(){return g(an)},actions:[{text:"Open anyway",title:"Open the document in text mode. This may freeze or crash your browser.",onClick:kn},{text:"Open in tree mode",title:"Open the document in tree mode. Tree mode can handle large documents.",onClick:qA},{text:"Cancel",title:"Cancel opening this large document.",onClick:En}],onClose:yA});var li=ce(ke($i,2));TA(en=>jt(li,en),[()=>(z(JC),g(oA),z(bv),Qe(()=>JC(g(oA)||"",bv)))]),se(Jt,no)};je(IA,Jt=>{g(kA)&&Jt(HA)});var Bt=ke(IA,2),Et=Jt=>{var no=Fye(),$i=ct(no),an=Qt=>{(function(An,dn){Ht(dn,!1);var Bo=K(dn,"editorState",8),Nn=ge(),zt=ge(),Da=ge(),la=ge(),y=ge();Ue(()=>z(Bo()),()=>{var ve;N(Nn,(ve=Bo())===null||ve===void 0||(ve=ve.selection)===null||ve===void 0||(ve=ve.main)===null||ve===void 0?void 0:ve.head)}),Ue(()=>(g(Nn),z(Bo())),()=>{var ve;N(zt,g(Nn)!==void 0?(ve=Bo())===null||ve===void 0||(ve=ve.doc)===null||ve===void 0?void 0:ve.lineAt(g(Nn)):void 0)}),Ue(()=>g(zt),()=>{N(Da,g(zt)!==void 0?g(zt).number:void 0)}),Ue(()=>(g(zt),g(Nn)),()=>{N(la,g(zt)!==void 0&&g(Nn)!==void 0?g(Nn)-g(zt).from+1:void 0)}),Ue(()=>z(Bo()),()=>{var ve;N(y,(ve=Bo())===null||ve===void 0||(ve=ve.selection)===null||ve===void 0||(ve=ve.ranges)===null||ve===void 0?void 0:ve.reduce((lA,CA)=>lA+CA.to-CA.from,0))}),qn(),hi();var M=Sye(),R=ce(M),Z=ve=>{var lA=Dye(),CA=ce(lA);TA(()=>{var wA;return jt(CA,"Line: ".concat((wA=g(Da))!==null&&wA!==void 0?wA:""))}),se(ve,lA)};je(R,ve=>{g(Da)!==void 0&&ve(Z)});var _=ke(R,2),q=ve=>{var lA=bye(),CA=ce(lA);TA(()=>{var wA;return jt(CA,"Column: ".concat((wA=g(la))!==null&&wA!==void 0?wA:""))}),se(ve,lA)};je(_,ve=>{g(la)!==void 0&&ve(q)});var te=ke(_,2),re=ve=>{var lA=Mye(),CA=ce(lA);TA(()=>{var wA;return jt(CA,"Selection: ".concat((wA=g(y))!==null&&wA!==void 0?wA:""," characters"))}),se(ve,lA)};je(te,ve=>{g(y)!==void 0&&g(y)>0&&ve(re)}),se(An,M),Pt()})(Qt,{get editorState(){return g(de)}})};je($i,Qt=>{a()&&Qt(an)});var li=ke($i,2),en=Qt=>{ic(Qt,{type:"error",get icon(){return Hd},get message(){return g(Ri),Qe(()=>g(Ri).message)},get actions(){return g(i)},onClick:Ka,onClose:yA})};je(li,Qt=>{g(Ri)&&Qt(en)});var Ua=ke(li,2),Wt=Qt=>{var An=It(()=>[{icon:gte,text:"Format",title:"Format JSON: add proper indentation and new lines (Ctrl+I)",onClick:vA},{icon:Vp,text:"No thanks",title:"Close this message",onClick:()=>N(xe,!1)}]);ic(Qt,{type:"success",message:"Do you want to format the JSON?",get actions(){return g(An)},onClose:yA})};je(Ua,Qt=>{g(Ri),g(xe),z(MAe),g(oA),Qe(()=>!g(Ri)&&g(xe)&&MAe(g(oA)))&&Qt(Wt)}),FF(ke(Ua,2),{get validationErrors(){return g(Xe)},selectError:Ui}),se(Jt,no)};je(Bt,Jt=>{g(kA)||Jt(Et)}),TA(()=>iA=Bi(Ge,1,"jse-contents svelte-k2b9e6",null,iA,{"jse-hidden":g(kA)})),se(Se,ue)},Wo=Se=>{se(Se,Gye())};return je(Zn,Se=>{we?Se(Wo,!1):Se(xo)}),na(Jo,Se=>N(Ne,Se),()=>g(Ne)),TA(()=>Cr=Bi(Jo,1,"jse-text-mode svelte-k2b9e6",null,Cr,{"no-main-menu":!o()})),se(t,Jo),ii(A,"focus",yA),ii(A,"collapse",ei),ii(A,"expand",V),ii(A,"patch",Te),ii(A,"handlePatch",QA),ii(A,"openTransformModal",Ct),ii(A,"refresh",xn),ii(A,"flush",To),ii(A,"validate",Rn),Pt(_o)}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-inline-value.svelte-1jv89ui { + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + line-height: var(--jse-line-height, calc(1em + 4px)); + border: none; + padding: 0 calc(0.5 * var(--jse-padding, 10px)); + background: transparent; + color: inherit; + cursor: inherit; +} +.jse-inline-value.jse-highlight.svelte-1jv89ui { + background-color: var(--jse-search-match-color, #ffe665); + outline: var(--jse-search-match-outline, none); +} +.jse-inline-value.jse-highlight.jse-active.svelte-1jv89ui { + background-color: var(--jse-search-match-active-color, var(--jse-search-match-color, #ffe665)); + outline: var(--jse-search-match-outline, 2px solid #e0be00); +}`);var Tye=Oe('');si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-column-header.svelte-5pxwfq { + background: none; + border: none; + font-family: inherit; + font-size: inherit; + color: inherit; + display: flex; + gap: var(--jse-padding, 10px); + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)) calc(0.5 * var(--jse-padding, 10px)); + width: 100%; +} +.jse-column-header.svelte-5pxwfq:hover { + background: var(--jse-table-header-background-highlight, #e8e8e8); +} +.jse-column-header.svelte-5pxwfq:not(.jse-column-header.jse-readonly) { + cursor: pointer; +} +.jse-column-header.svelte-5pxwfq span.jse-column-sort-icon:where(.svelte-5pxwfq) { + height: 1em; +}`);var Oye=Oe(''),Jye=Oe('');si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-table-mode-welcome.svelte-1b9gnk8 { + flex: 1; + display: flex; + flex-direction: column; + overflow: auto; + align-items: center; + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-table-mode-welcome.svelte-1b9gnk8:last-child { + border-bottom: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-space.jse-before:where(.svelte-1b9gnk8) { + flex: 1; +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) { + display: flex; + flex-direction: column; + gap: var(--jse-padding, 10px); + max-width: 400px; + margin: 2em var(--jse-padding, 10px); + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-arrays-info:where(.svelte-1b9gnk8) { + color: var(--jse-panel-color-readonly, #b2b2b2); +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-property:where(.svelte-1b9gnk8) { + display: flex; + align-items: center; + gap: var(--jse-padding, 10px); +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-property:where(.svelte-1b9gnk8) .jse-nested-property-path:where(.svelte-1b9gnk8) { + flex: 1; +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) .jse-nested-property:where(.svelte-1b9gnk8) .jse-nested-property-path:where(.svelte-1b9gnk8) .jse-nested-property-count:where(.svelte-1b9gnk8) { + opacity: 0.5; + white-space: nowrap; +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) button.jse-nested-array-action:where(.svelte-1b9gnk8) { + text-align: left; + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); + color: var(--jse-button-primary-color, #fff); + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + border-radius: 3px; +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) button.jse-nested-array-action:where(.svelte-1b9gnk8):hover { + background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-nested-arrays:where(.svelte-1b9gnk8) button.jse-nested-array-action:where(.svelte-1b9gnk8):disabled { + background: var(--jse-button-primary-background-disabled, #9d9d9d); +} +.jse-table-mode-welcome.svelte-1b9gnk8 .jse-space.jse-after:where(.svelte-1b9gnk8) { + flex: 2; +}`);var zye=Oe(`An empty document cannot be opened in table mode. You can go to tree mode instead, or paste + a JSON Array using Ctrl+V.`,1),Yye=Oe(''),Hye=Oe('
        '),Pye=Oe('
        ');function jye(t,A){Ht(A,!0);var e=vl(()=>A.json?(function(u){var m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2,f=[];return(function D(S,k){fa(S)&&k.length{D(S[b],k.concat(b))}),Ca(S)&&f.push(k)})(u,[]),f})(A.json).slice(0,99).filter(u=>u.length>0):[]),i=vl(()=>!tn(g(e))),n=vl(()=>A.json===void 0&&(A.text===""||A.text===void 0)),o=vl(()=>g(i)?"Object with nested arrays":g(n)?"An empty document":fa(A.json)?"An object":Ca(A.json)?"An empty array":"A ".concat(hF(A.json,A.parser))),a=Pye();a.__click=()=>A.onClick();var r=ke(ce(a),2),s=ce(r),l=ce(s),c=ke(s,2),C=ce(c),d=u=>{se(u,Mr(`An object cannot be opened in table mode. You can open a nested array instead, or open the + document in tree mode.`))},B=u=>{var m=ji(),f=ct(m),D=k=>{se(k,zye())},S=k=>{var b=Mr();TA(()=>{var x;return jt(b,"".concat((x=g(o))!==null&&x!==void 0?x:""," cannot be opened in table mode. You can open the document in tree mode instead."))}),se(k,b)};je(f,k=>{g(n)&&!A.readOnly?k(D):k(S,!1)},!0),se(u,m)};je(C,u=>{g(i)?u(d):u(B,!1)});var E=ke(c,2);ka(E,17,()=>g(e),za,(u,m)=>{var f=vl(()=>(function(X){return nt(A.json,X).length})(g(m))),D=Hye(),S=ce(D),k=ce(S),b=ce(ke(k)),x=ke(S,2);x.__click=()=>A.openJSONEditorModal(g(m));var F=ce(x),P=ke(x,2),j=X=>{var Ae=Yye();Ae.__click=()=>A.extractPath(g(m)),se(X,Ae)};je(P,X=>{A.readOnly||X(j)}),TA(X=>{var Ae;jt(k,'"'.concat(X??"",'" ')),jt(b,"(".concat((Ae=g(f))!==null&&Ae!==void 0?Ae:""," ").concat(g(f)!==1?"items":"item",")")),jt(F,A.readOnly?"View":"Edit")},[()=>bl(g(m))]),se(u,D)}),ke(E,2).__click=()=>A.onChangeMode(Ga.tree),TA(()=>jt(l,g(o))),se(t,a),Pt()}Em(["click"]);si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-column-header.svelte-1wgrwv3 { + background: none; + border: none; + font-family: inherit; + font-size: inherit; + color: inherit; + display: flex; + gap: var(--jse-padding, 10px); + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)) calc(0.5 * var(--jse-padding, 10px)); + width: 100%; +} +.jse-column-header.svelte-1wgrwv3:hover { + background: var(--jse-table-header-background-highlight, #e8e8e8); +} +.jse-column-header.svelte-1wgrwv3:not(.jse-column-header.jse-readonly) { + cursor: pointer; +}`);var Vye=Oe('');si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-table-mode.svelte-1p86y3c { + flex: 1; + display: flex; + flex-direction: column; + position: relative; + background: var(--jse-background-color, #fff); + min-width: 0; + min-height: 0; + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + color: var(--jse-text-color, #4d4d4d); + line-height: var(--jse-line-height, calc(1em + 4px)); +} +.jse-table-mode.no-main-menu.svelte-1p86y3c { + border-top: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-table-mode.svelte-1p86y3c .jse-search-box-container:where(.svelte-1p86y3c) { + position: relative; + height: 0; + top: calc(var(--jse-line-height, calc(1em + 4px)) + 2 * var(--jse-padding, 10px)); + margin-right: calc(var(--jse-padding, 10px) + 20px); + margin-left: var(--jse-padding, 10px); + text-align: right; + z-index: 3; +} +.jse-table-mode.svelte-1p86y3c .jse-hidden-input-label:where(.svelte-1p86y3c) { + position: fixed; + right: 0; + top: 0; + width: 0; + height: 0; +} +.jse-table-mode.svelte-1p86y3c .jse-hidden-input-label:where(.svelte-1p86y3c) .jse-hidden-input:where(.svelte-1p86y3c) { + width: 0; + height: 0; + padding: 0; + border: 0; + outline: none; +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) { + flex: 1; + align-items: flex-start; + flex-direction: column; + display: flex; + overflow: auto; + overflow-anchor: none; + scrollbar-gutter: stable; + border-left: var(--jse-main-border, 1px solid #d7d7d7); + border-right: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c):last-child { + border-bottom: var(--jse-main-border, 1px solid #d7d7d7); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) { + border-collapse: collapse; + border-spacing: 0; +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-invisible-start-section:where(.svelte-1p86y3c) td:where(.svelte-1p86y3c), +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-invisible-end-section:where(.svelte-1p86y3c) td:where(.svelte-1p86y3c) { + margin: 0; + padding: 0; +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-search-box-background:where(.svelte-1p86y3c) { + background: var(--jse-table-header-background, #f5f5f5); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-invisible-end-section:where(.svelte-1p86y3c) td:where(.svelte-1p86y3c) { + padding-bottom: var(--jse-padding, 10px); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c):hover { + background-color: var(--jse-table-row-odd-background, rgba(0, 0, 0, 0.05)); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) { + padding: 0 var(--jse-padding, 10px) 0 0; + vertical-align: top; + white-space: nowrap; + height: var(--jse-line-height, calc(1em + 4px)); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-header:where(.svelte-1p86y3c), .jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-gutter:where(.svelte-1p86y3c) { + font-weight: normal; + text-align: left; + color: var(--jse-text-readonly, #8d8d8d); + background: var(--jse-table-header-background, #f5f5f5); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-header:where(.svelte-1p86y3c) { + padding: 0; + position: sticky; + top: 0; +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-header:where(.svelte-1p86y3c) .jse-table-root-error:where(.svelte-1p86y3c) { + padding: calc(0.5 * var(--jse-padding, 10px)) var(--jse-padding, 10px) calc(0.5 * var(--jse-padding, 10px)) calc(0.5 * var(--jse-padding, 10px)); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell.jse-table-cell-gutter:where(.svelte-1p86y3c) { + padding: 0 var(--jse-padding, 10px) 0 calc(0.5 * var(--jse-padding, 10px)); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-value-outer:where(.svelte-1p86y3c) { + display: inline-block; + cursor: var(--jse-contents-cursor, pointer); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-value-outer:where(.svelte-1p86y3c):hover { + background: var(--jse-hover-background-color, rgba(0, 0, 0, 0.06)); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-value-outer.jse-selected-value:where(.svelte-1p86y3c) { + background: var(--jse-selection-background-color, #d3d3d3); +} +.jse-table-mode.svelte-1p86y3c .jse-contents:where(.svelte-1p86y3c) table.jse-table-main:where(.svelte-1p86y3c) .jse-table-row:where(.svelte-1p86y3c) .jse-table-cell:where(.svelte-1p86y3c) .jse-context-menu-anchor:where(.svelte-1p86y3c) { + display: inline-flex; + position: relative; + vertical-align: top; +} +.jse-table-mode.svelte-1p86y3c .jse-contents.jse-contents-loading:where(.svelte-1p86y3c) { + align-items: unset; +} +.jse-table-mode.svelte-1p86y3c .jse-contents.jse-contents-loading:where(.svelte-1p86y3c) .jse-loading-space:where(.svelte-1p86y3c) { + flex: 1; +} +.jse-table-mode.svelte-1p86y3c .jse-contents.jse-contents-loading:where(.svelte-1p86y3c) .jse-loading:where(.svelte-1p86y3c) { + flex: 2; + text-align: center; + color: var(--jse-panel-color-readonly, #b2b2b2); + box-sizing: border-box; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); +}`);var qye=Oe('
        '),Zye=Oe(''),Wye=Oe(''),Xye=Oe(' '),$ye=Oe('
        '),eve=Oe('
        '),Ave=Oe(''),tve=Oe(''),ive=Oe('
        ',1),nve=Oe(" ",1),ove=Oe(' ',1),ave=Oe('
        loading...
        '),rve=Oe('
        ',1);function sve(t,A){Ht(A,!1);var e=ge(void 0,!0),i=ge(void 0,!0),n=ge(void 0,!0),o=Qr("jsoneditor:TableMode"),{openAbsolutePopup:a,closeAbsolutePopup:r}=k2("absolute-popup"),s=lne(),l=rI(),c=rI(),C=typeof window>"u";o("isSSR:",C);var d=K(A,"readOnly",9),B=K(A,"externalContent",9),E=K(A,"externalSelection",9),u=K(A,"history",9),m=K(A,"truncateTextSize",9),f=K(A,"mainMenuBar",9),D=K(A,"escapeControlCharacters",9),S=K(A,"escapeUnicodeCharacters",9),k=K(A,"flattenColumns",9),b=K(A,"parser",9),x=K(A,"parseMemoizeOne",9),F=K(A,"validator",9),P=K(A,"validationParser",9),j=K(A,"indentation",9),X=K(A,"onChange",9),Ae=K(A,"onChangeMode",9),W=K(A,"onSelect",9),Ce=K(A,"onUndo",9),we=K(A,"onRedo",9),Be=K(A,"onRenderValue",9),Ee=K(A,"onRenderMenu",9),Ne=K(A,"onRenderContextMenu",9),de=K(A,"onFocus",9),Ie=K(A,"onBlur",9),xe=K(A,"onSortModal",9),Xe=K(A,"onTransformModal",9),fA=K(A,"onJSONEditorModal",9),Pe=ge(void 0,!0),be=ge(void 0,!0),qe=ge(void 0,!0),st=ge(void 0,!0),it=ge(void 0,!0);NF({onMount:gs,onDestroy:Tc,getWindow:()=>mm(g(be)),hasFocus:()=>JA&&document.hasFocus()||QF(g(be)),onFocus:()=>{ui=!0,de()&&de()()},onBlur:()=>{ui=!1,Ie()&&Ie()()}});var He,he=ge(void 0,!0),tA=ge(void 0,!0),pe=ge(void 0,!0),oA=ge(void 0,!0),Fe=ge(void 0,!0),OA=ge(void 0,!0),ze=ge(!1,!0),ye=ge(!1,!0);function qt(_){N(OA,(He=_)?Zie(g(he),He.items):void 0)}function St(_){return yA.apply(this,arguments)}function yA(){return(yA=Ai(function*(_){N(Je,void 0),yield xn(_)})).apply(this,arguments)}function ei(){N(ze,!1),N(ye,!1),J()}var WA=ge(1e4,!0),et=ge([],!0),kt=ge(void 0,!0),JA=!1,ui=!1,V=ge(!1,!0),$=ge({},!0),ie=ge(600,!0),oe=ge(0,!0),Te=18;function QA(_){N(Je,_)}function vA(_){g(Je)&&_!==void 0&&(Or(_,v1(g(Je)))&&Or(_,ft(g(Je)))||(o("clearing selection: path does not exist anymore",g(Je)),N(Je,void 0)))}var Ke=ge(g(he)!==void 0?HN({json:g(he)}):void 0,!0),Je=ge(rm(E())?E():void 0,!0),bt=ge(void 0,!0),Ct=ge(!1,!0);function XA(_){if(!d()){o("onSortByHeader",_);var q=_.sortDirection===Fc.desc?-1:1;Vi(hne(g(he),[],_.path,q),(te,re)=>({state:re,sortedColumn:_}))}}gs(()=>{g(Je)&&ra(ft(g(Je)))});var ZA=ge(void 0,!0);function fi(_){if(_.json!==void 0||_.text!==void 0){var q=g(he)!==void 0&&_.json!==void 0;u().add({type:"tree",undo:{patch:q?[{op:"replace",path:"",value:_.json}]:void 0,json:_.json,text:_.text,documentState:_.documentState,textIsRepaired:_.textIsRepaired,selection:G0(_.selection),sortedColumn:_.sortedColumn},redo:{patch:q?[{op:"replace",path:"",value:g(he)}]:void 0,json:g(he),text:g(tA),documentState:g(Ke),textIsRepaired:g(Ct),selection:G0(g(Je)),sortedColumn:g(bt)}})}}var yn=ge([],!0),kn=Dh(cne);function qA(_,q,te,re){mu(()=>{var ve;try{ve=kn(_,q,te,re)}catch(lA){ve=[{path:[],message:"Failed to validate: "+lA.message,severity:xg.warning}]}Oi(ve,g(yn))||(o("validationErrors changed:",ve),N(yn,ve))},ve=>o("validationErrors updated in ".concat(ve," ms")))}function En(){return o("validate"),g(pe)?{parseError:g(pe),isRepairable:!1}:(qA(g(he),F(),b(),P()),tn(g(yn))?void 0:{validationErrors:g(yn)})}function Ui(_,q){if(o("patch",_,q),g(he)===void 0)throw new Error("Cannot apply patch: no JSON");var te=g(he),re={json:void 0,text:g(tA),documentState:g(Ke),selection:G0(g(Je)),sortedColumn:g(bt),textIsRepaired:g(Ct)},ve=qie(g(he),_),lA=Gie(g(he),g(Ke),_),CA=Xwe(g(bt),_,g(et)),wA=typeof q=="function"?q(lA.json,lA.documentState,g(Je)):void 0;return N(he,wA?.json!==void 0?wA.json:lA.json),N(Ke,wA?.state!==void 0?wA.state:lA.documentState),N(Je,wA?.selection!==void 0?wA.selection:g(Je)),N(bt,wA?.sortedColumn!==void 0?wA.sortedColumn:CA),N(tA,void 0),N(Ct,!1),N(oA,void 0),N(Fe,void 0),N(pe,void 0),u().add({type:"tree",undo:UA({patch:ve},re),redo:{patch:_,json:void 0,text:void 0,documentState:g(Ke),selection:G0(g(Je)),sortedColumn:g(bt),textIsRepaired:g(Ct)}}),{json:g(he),previousJson:te,undo:ve,redo:_}}function Vi(_,q){o("handlePatch",_,q);var te={json:g(he),text:g(tA)},re=Ui(_,q);return Cn(te,re),re}function Cn(_,q){if((_.json!==void 0||_?.text!==void 0)&&X()){if(g(tA)!==void 0){var te={text:g(tA),json:void 0};X()(te,_,{contentErrors:En(),patchResult:q})}else if(g(he)!==void 0){var re={text:void 0,json:g(he)};X()(re,_,{contentErrors:En(),patchResult:q})}}}function Gt(_){o("pasted json as text",_),N(oA,_)}function Qn(_){o("pasted multiline text",{pastedText:_}),N(Fe,_)}function Zt(_){var q=parseInt(_[0],10),te=[String(q+1),..._.slice(1)];return Or(g(he),te)?nn(te):nn(_)}function J(){o("focus"),g(st)&&(g(st).focus(),g(st).select())}function wt(_){N(oe,_.target.scrollTop)}function Si(){g(Je)||N(Je,(function(){if(Ca(g(he))&&!tn(g(he))&&!tn(g(et)))return nn(["0",...g(et)[0]])})())}function _n(){if(g(Ct)&&g(he)!==void 0){var _={json:g(he),text:g(tA)},q={json:g(he),documentState:g(Ke),selection:g(Je),sortedColumn:g(bt),text:g(tA),textIsRepaired:g(Ct)};N(tA,void 0),N(Ct,!1),vA(g(he)),fi(q),Cn(_,void 0)}return{json:g(he),text:g(tA)}}function xn(_){var{scrollToWhenVisible:q=!0}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},te=g(ze)?q4:0,re=dte(_,g(et),$,Te),ve=re-g(oe)+te+Te,lA=ko(_);if(o("scrollTo",{path:_,top:re,scrollTop:g(oe),elem:lA}),!g(qe))return Promise.resolve();var CA=g(qe).getBoundingClientRect();if(lA&&!q){var wA=lA.getBoundingClientRect();if(wA.bottom>CA.top&&wA.top{s(lA,{container:g(qe),offset:$A,duration:300,callback:()=>{Io(_),zA()}})}:zA=>{s(ve,{container:g(qe),offset:$A,duration:300,callback:()=>{qo(),Io(_),zA()}})})}function Io(_){var q=ko(_);if(q&&g(qe)){var te=g(qe).getBoundingClientRect(),re=q.getBoundingClientRect();if(re.right>te.right){var ve=re.right-te.right;ec(qe,g(qe).scrollLeft+=ve)}if(re.left$A){var zA=ve-$A;ec(qe,g(qe).scrollTop+=zA)}if(rez0(_.slice(1),lA)),ve=re?_.slice(0,1).concat(re):_;return(q=(te=g(qe))===null||te===void 0?void 0:te.querySelector('td[data-path="'.concat(uv(ve),'"]')))!==null&&q!==void 0?q:void 0}function Zo(_){var q,{anchor:te,left:re,top:ve,width:lA,height:CA,offsetTop:wA,offsetLeft:$A,showTip:zA}=_,jA=(function(me){var{json:eA,documentState:VA,selection:_A,readOnly:GA,onEditValue:ht,onEditRow:oi,onToggleEnforceString:qi,onCut:Wn,onCopy:In,onPaste:Ro,onRemove:ci,onDuplicateRow:ua,onInsertBeforeRow:ho,onInsertAfterRow:Ea,onRemoveRow:Fn}=me,Xt=eA!==void 0,pn=!!_A,gi=eA!==void 0&&_A?nt(eA,ft(_A)):void 0,Ft=Xt&&(Mo(_A)||Er(_A)||Sn(_A)),wi=!GA&&Xt&&_A!==void 0&&kv(_A),ba=wi&&!ya(gi),uo=!GA&&Ft,Qa=_A!==void 0&&U0(eA,VA,ft(_A));return[{type:"separator"},{type:"row",items:[{type:"column",items:[{type:"label",text:"Table cell:"},{type:"dropdown-button",main:{type:"button",onClick:()=>ht(),icon:zI,text:"Edit",title:"Edit the value (Double-click on the value)",disabled:!wi},width:"11em",items:[{type:"button",icon:zI,text:"Edit",title:"Edit the value (Double-click on the value)",onClick:()=>ht(),disabled:!wi},{type:"button",icon:Qa?Kk:Ok,text:"Enforce string",title:"Enforce keeping the value as string when it contains a numeric value",onClick:()=>qi(),disabled:!ba}]},{type:"dropdown-button",main:{type:"button",onClick:()=>Wn(!0),icon:YI,text:"Cut",title:"Cut selected contents, formatted with indentation (Ctrl+X)",disabled:!uo},width:"10em",items:[{type:"button",icon:YI,text:"Cut formatted",title:"Cut selected contents, formatted with indentation (Ctrl+X)",onClick:()=>Wn(!0),disabled:GA||!Ft},{type:"button",icon:YI,text:"Cut compacted",title:"Cut selected contents, without indentation (Ctrl+Shift+X)",onClick:()=>Wn(!1),disabled:GA||!Ft}]},{type:"dropdown-button",main:{type:"button",onClick:()=>In(!0),icon:DC,text:"Copy",title:"Copy selected contents, formatted with indentation (Ctrl+C)",disabled:!Ft},width:"12em",items:[{type:"button",icon:DC,text:"Copy formatted",title:"Copy selected contents, formatted with indentation (Ctrl+C)",onClick:()=>In(!1),disabled:!Ft},{type:"button",icon:DC,text:"Copy compacted",title:"Copy selected contents, without indentation (Ctrl+Shift+C)",onClick:()=>In(!1),disabled:!Ft}]},{type:"button",onClick:()=>Ro(),icon:Fk,text:"Paste",title:"Paste clipboard contents (Ctrl+V)",disabled:GA||!pn},{type:"button",onClick:()=>ci(),icon:tw,text:"Remove",title:"Remove selected contents (Delete)",disabled:GA||!Ft}]},{type:"column",items:[{type:"label",text:"Table row:"},{type:"button",onClick:()=>oi(),icon:zI,text:"Edit row",title:"Edit the current row",disabled:GA||!pn||!Xt},{type:"button",onClick:()=>ua(),icon:Gk,text:"Duplicate row",title:"Duplicate the current row (Ctrl+D)",disabled:GA||!pn||!Xt},{type:"button",onClick:()=>ho(),icon:HI,text:"Insert before",title:"Insert a row before the current row",disabled:GA||!pn||!Xt},{type:"button",onClick:()=>Ea(),icon:HI,text:"Insert after",title:"Insert a row after the current row",disabled:GA||!pn||!Xt},{type:"button",onClick:()=>Fn(),icon:tw,text:"Remove row",title:"Remove current row",disabled:GA||!pn||!Xt}]}]}]})({json:g(he),documentState:g(Ke),selection:g(Je),readOnly:d(),onEditValue:_a,onEditRow:ha,onToggleEnforceString:va,onCut:Cr,onCopy:$a,onPaste:Ri,onRemove:Xi,onDuplicateRow:Zn,onInsertBeforeRow:xo,onInsertAfterRow:Wo,onRemoveRow:Se}),Qi=(q=Ne()(jA))!==null&&q!==void 0?q:jA;if(Qi!==!1){var oo={left:re,top:ve,offsetTop:wA,offsetLeft:$A,width:lA,height:CA,anchor:te,closeOnOuterClick:!0,onClose:()=>{JA=!1,J()}};JA=!0;var ee=a(Dne,{tip:zA?"Tip: you can open this context menu via right-click or with Ctrl+Q":void 0,items:Qi,onRequestClose(){r(ee),J()}},oo)}}function Ba(_){if(!hr(g(Je)))if(_&&(_.stopPropagation(),_.preventDefault()),_&&_.type==="contextmenu"&&_.target!==g(st))Zo({left:_.clientX,top:_.clientY,width:YC,height:zC,showTip:!1});else{var q,te=(q=g(qe))===null||q===void 0?void 0:q.querySelector(".jse-table-cell.jse-selected-value");if(te)Zo({anchor:te,offsetTop:2,width:YC,height:zC,showTip:!1});else{var re,ve=(re=g(qe))===null||re===void 0?void 0:re.getBoundingClientRect();ve&&Zo({top:ve.top+2,left:ve.left+2,width:YC,height:zC,showTip:!1})}}}function To(_){Zo({anchor:xie(_.target,"BUTTON"),offsetTop:0,width:YC,height:zC,showTip:!0})}function _a(){if(!d()&&g(Je)){var _=ft(g(Je));ya(nt(g(he),_))?Et(_):N(Je,nn(_))}}function ha(){!d()&&g(Je)&&Et(ft(g(Je)).slice(0,1))}function va(){if(!d()&&Sn(g(Je))){var _=g(Je).path,q=Lt(_),te=nt(g(he),_),re=!U0(g(he),g(Ke),_),ve=re?String(te):Vu(String(te),b());o("handleToggleEnforceString",{enforceString:re,value:te,updatedValue:ve}),Vi([{op:"replace",path:q,value:ve}],(lA,CA)=>({state:Vv(g(he),CA,_,{type:"value",enforceString:re})}))}}function Oo(){return BA.apply(this,arguments)}function BA(){return(BA=Ai(function*(){if(o("apply pasted json",g(oA)),g(oA)){var{onPasteAsJson:_}=g(oA);_(),setTimeout(J)}})).apply(this,arguments)}function Ri(){return vn.apply(this,arguments)}function vn(){return(vn=Ai(function*(){try{ue(yield navigator.clipboard.readText())}catch(_){console.error(_),N(V,!0)}})).apply(this,arguments)}function Rn(){return sa.apply(this,arguments)}function sa(){return(sa=Ai(function*(){o("apply pasted multiline text",g(Fe)),g(Fe)&&(ue(JSON.stringify(g(Fe))),setTimeout(J))})).apply(this,arguments)}function Ka(){o("clear pasted json"),N(oA,void 0),J()}function zi(){o("clear pasted multiline text"),N(Fe,void 0),J()}function _o(){Ae()(Ga.text)}function Cr(_){return Jo.apply(this,arguments)}function Jo(){return(Jo=Ai(function*(_){yield pne({json:g(he),selection:g(Je),indentation:_?j():void 0,readOnly:d(),parser:b(),onPatch:Vi})})).apply(this,arguments)}function $a(){return io.apply(this,arguments)}function io(){return io=Ai(function*(){var _=!(arguments.length>0&&arguments[0]!==void 0)||arguments[0];g(he)!==void 0&&(yield mne({json:g(he),selection:g(Je),indentation:_?j():void 0,parser:b()}))}),io.apply(this,arguments)}function Xi(){wne({json:g(he),text:g(tA),selection:g(Je),keepSelection:!0,readOnly:d(),onChange:X(),onPatch:Vi})}function ni(_){d()||(o("extract",{path:_}),Vi(Pie(g(he),nn(_))))}function Zn(){(function(_){var{json:q,selection:te,columns:re,readOnly:ve,onPatch:lA}=_;if(!ve&&q!==void 0&&te&&Qu(te)){var{rowIndex:CA,columnIndex:wA}=Rc(ft(te),re);Rs("duplicate row",{rowIndex:CA});var $A=[String(CA)];lA(Hie(q,[$A]),(zA,jA)=>({state:jA,selection:nn(h1({rowIndex:CA({state:oo,selection:nn(h1({rowIndex:$A,columnIndex:wA},re))}))}})({json:g(he),selection:g(Je),columns:g(et),readOnly:d(),onPatch:Vi})}function Se(){(function(_){var{json:q,selection:te,columns:re,readOnly:ve,onPatch:lA}=_;if(!ve&&q!==void 0&&te&&Qu(te)){var{rowIndex:CA,columnIndex:wA}=Rc(ft(te),re);Rs("remove row",{rowIndex:CA}),lA(xv([[String(CA)]]),($A,zA)=>{var jA=CA<$A.length?CA:CA>0?CA-1:void 0,Qi=jA!==void 0?nn(h1({rowIndex:jA,columnIndex:wA},re)):void 0;return Rs("remove row new selection",{rowIndex:CA,newRowIndex:jA,newSelection:Qi}),{state:zA,selection:Qi}})}})({json:g(he),selection:g(Je),columns:g(et),readOnly:d(),onPatch:Vi})}function iA(){return(iA=Ai(function*(_){yield yne({char:_,selectInside:!1,json:g(he),selection:g(Je),readOnly:d(),parser:b(),onPatch:Vi,onReplaceJson:Ge,onSelect:QA})})).apply(this,arguments)}function kA(_){var q;_.preventDefault(),ue((q=_.clipboardData)===null||q===void 0?void 0:q.getData("text/plain"))}function ue(_){_!==void 0&&fne({clipboardText:_,json:g(he),selection:g(Je),readOnly:d(),parser:b(),onPatch:Vi,onChangeText:IA,onPasteMultilineText:Qn,openRepairModal:Jt})}function Ge(_,q){var te={json:g(he),text:g(tA)},re={json:g(he),documentState:g(Ke),selection:g(Je),sortedColumn:g(bt),text:g(tA),textIsRepaired:g(Ct)},ve=$l(_,g(Ke)),lA=typeof q=="function"?q(_,ve,g(Je)):void 0;N(he,lA?.json!==void 0?lA.json:_),N(Ke,lA?.state!==void 0?lA.state:ve),N(Je,lA?.selection!==void 0?lA.selection:g(Je)),N(bt,void 0),N(tA,void 0),N(Ct,!1),N(pe,void 0),vA(g(he)),fi(re),Cn(te,void 0)}function IA(_,q){o("handleChangeText");var te={json:g(he),text:g(tA)},re={json:g(he),documentState:g(Ke),selection:g(Je),sortedColumn:g(bt),text:g(tA),textIsRepaired:g(Ct)};try{N(he,x()(_)),N(Ke,$l(g(he),g(Ke))),N(tA,void 0),N(Ct,!1),N(pe,void 0)}catch(lA){try{N(he,x()(vc(_))),N(Ke,$l(g(he),g(Ke))),N(tA,_),N(Ct,!0),N(pe,void 0)}catch(CA){N(he,void 0),N(Ke,void 0),N(tA,_),N(Ct,!1),N(pe,g(tA)!==""?Fu(g(tA),lA.message||String(lA)):void 0)}}if(typeof q=="function"){var ve=q(g(he),g(Ke),g(Je));N(he,ve?.json!==void 0?ve.json:g(he)),N(Ke,ve?.state!==void 0?ve.state:g(Ke)),N(Je,ve?.selection!==void 0?ve.selection:g(Je))}vA(g(he)),fi(re),Cn(te,void 0)}function HA(_){o("select validation error",_),N(Je,nn(_.path)),xn(_.path)}function Bt(_){if(g(he)!==void 0){var{id:q,onTransform:te,onClose:re}=_,ve=_.rootPath||[];JA=!0,Xe()({id:q||c,json:g(he),rootPath:ve||[],onTransform:lA=>{te?te({operations:lA,json:g(he),transformedJson:Bl(g(he),lA)}):(o("onTransform",ve,lA),Vi(lA))},onClose:()=>{JA=!1,setTimeout(J),re&&re()}})}}function Et(_){o("openJSONEditorModal",{path:_}),JA=!0,fA()({content:{json:nt(g(he),_)},path:_,onPatch:Vi,onClose:()=>{JA=!1,setTimeout(J)}})}function Jt(_,q){N(it,{text:_,onParse:te=>pm(te,re=>Qm(re,b())),onRepair:wie,onApply:q,onClose:J})}function no(){(function(_){d()||g(he)===void 0||(JA=!0,xe()({id:l,json:g(he),rootPath:_,onSort:q=>{var{operations:te,itemPath:re,direction:ve}=q;o("onSort",te,_,re,ve),Vi(te,(lA,CA)=>({state:CA,sortedColumn:{path:re,sortDirection:ve===-1?Fc.desc:Fc.asc}}))},onClose:()=>{JA=!1,setTimeout(J)}}))})([])}function $i(){Bt({rootPath:[]})}function an(_){o("openFind",{findAndReplace:_}),N(ze,!1),N(ye,!1),qo(),N(ze,!0),N(ye,_)}function li(){if(!d()&&u().canUndo){var _=u().undo();if(Sv(_)){var q={json:g(he),text:g(tA)};N(he,_.undo.patch?Bl(g(he),_.undo.patch):_.undo.json),N(Ke,_.undo.documentState),N(Je,_.undo.selection),N(bt,_.undo.sortedColumn),N(tA,_.undo.text),N(Ct,_.undo.textIsRepaired),N(pe,void 0),o("undo",{item:_,json:g(he)}),Cn(q,_.undo.patch&&_.redo.patch?{json:g(he),previousJson:q.json,redo:_.undo.patch,undo:_.redo.patch}:void 0),J(),g(Je)&&xn(ft(g(Je)),{scrollToWhenVisible:!1})}else Ce()(_)}}function en(){if(!d()&&u().canRedo){var _=u().redo();if(Sv(_)){var q={json:g(he),text:g(tA)};N(he,_.redo.patch?Bl(g(he),_.redo.patch):_.redo.json),N(Ke,_.redo.documentState),N(Je,_.redo.selection),N(bt,_.redo.sortedColumn),N(tA,_.redo.text),N(Ct,_.redo.textIsRepaired),N(pe,void 0),o("redo",{item:_,json:g(he)}),Cn(q,_.undo.patch&&_.redo.patch?{json:g(he),previousJson:q.json,redo:_.redo.patch,undo:_.undo.patch}:void 0),J(),g(Je)&&xn(ft(g(Je)),{scrollToWhenVisible:!1})}else we()(_)}}function Ua(_){N(ie,_.getBoundingClientRect().height)}Ue(()=>(z(D()),z(S())),()=>{N(Pe,uF({escapeControlCharacters:D(),escapeUnicodeCharacters:S()}))}),Ue(()=>g(ze),()=>{(function(_){if(g(qe)){var q=_?q4:-100;g(qe).scrollTo({top:ec(qe,g(qe).scrollTop+=q),left:g(qe).scrollLeft})}})(g(ze))}),Ue(()=>z(B()),()=>{(function(_){var q={json:g(he)},te=tm(_)?_.text!==g(tA):!Oi(q.json,_.json);if(o("update external content",{isChanged:te}),te){var re={json:g(he),documentState:g(Ke),selection:g(Je),sortedColumn:g(bt),text:g(tA),textIsRepaired:g(Ct)};if(tm(_))try{N(he,x()(_.text)),N(Ke,$l(g(he),g(Ke))),N(tA,_.text),N(Ct,!1),N(pe,void 0)}catch(ve){try{N(he,x()(vc(_.text))),N(Ke,$l(g(he),g(Ke))),N(tA,_.text),N(Ct,!0),N(pe,void 0)}catch(lA){N(he,void 0),N(Ke,void 0),N(tA,_.text),N(Ct,!1),N(pe,g(tA)!==""?Fu(g(tA),ve.message||String(ve)):void 0)}}else N(he,_.json),N(Ke,$l(g(he),g(Ke))),N(tA,void 0),N(Ct,!1),N(pe,void 0);vA(g(he)),N(bt,void 0),fi(re)}})(B())}),Ue(()=>z(E()),()=>{(function(_){Oi(g(Je),_)||(o("applyExternalSelection",{selection:g(Je),externalSelection:_}),rm(_)&&N(Je,_))})(E())}),Ue(()=>(g(et),g(he),z(k()),g(WA)),()=>{N(et,Ca(g(he))?(function(_,q){var te=new Set(q.map(Lt)),re=new Set(_.map(Lt));for(var ve of te)re.has(ve)||te.delete(ve);for(var lA of re)te.has(lA)||te.add(lA);return[...te].map(Ms)})(Vwe(g(he),k(),g(WA)),g(et)):[])}),Ue(()=>(g(he),g(et)),()=>{N(kt,!(!g(he)||tn(g(et))))}),Ue(()=>(g(he),g(WA)),()=>{N(e,Array.isArray(g(he))&&g(he).length>g(WA))}),Ue(()=>(g(oe),g(ie),g(he),g(ze),q4),()=>{N(i,qwe(g(oe),g(ie),g(he),$,Te,g(ze)?q4:0))}),Ue(()=>g(he),()=>{g(he),g(qe)&&g(qe).scrollTo({top:g(qe).scrollTop,left:g(qe).scrollLeft})}),Ue(()=>g(Je),()=>{var _;_=g(Je),Oi(_,E())||(o("onSelect",_),W()(_))}),Ue(()=>(z(d()),z(m()),z(b()),g(Pe),g(he),g(Ke),z(Be())),()=>{N(ZA,{mode:Ga.table,readOnly:d(),truncateTextSize:m(),parser:b(),normalization:g(Pe),getJson:()=>g(he),getDocumentState:()=>g(Ke),findElement:ko,findNextInside:Zt,focus:J,onPatch:(_,q)=>Vi((function(te,re){return te.flatMap(ve=>{if(q8(ve)){var lA=Ms(ve.path);if(lA.length>0){for(var CA=[ve],wA=sn(lA);wA.length>0&&!Or(re,wA);)CA.unshift({op:"add",path:Lt(wA),value:{}}),wA=sn(wA);return CA}}return ve})})(_,g(he)),q),onSelect:QA,onFind:an,onPasteJson:Gt,onRenderValue:Be()})}),Ue(()=>(g(he),z(F()),z(b()),z(P())),()=>{qA(g(he),F(),b(),P())}),Ue(()=>(g(yn),g(et)),()=>{N(n,Zwe(g(yn),g(et)))}),qn();var Wt={validate:En,patch:Ui,focus:J,acceptAutoRepair:_n,scrollTo:xn,findElement:ko,openTransformModal:Bt};hi(!0);var Qt=rve();bA("mousedown",jC,function(_){!qu(_.target,q=>q===g(be))&&hr(g(Je))&&(o("click outside the editor, exit edit mode"),N(Je,G0(g(Je))),ui&&g(st)&&(g(st).focus(),g(st).blur()),o("blur (outside editor)"),g(st)&&g(st).blur())});var An,dn=ct(Qt),Bo=ce(dn),Nn=_=>{(function(q,te){Ht(te,!1);var re=K(te,"containsValidArray",9),ve=K(te,"readOnly",9),lA=K(te,"showSearch",13,!1),CA=K(te,"history",9),wA=K(te,"onSort",9),$A=K(te,"onTransform",9),zA=K(te,"onContextMenu",9),jA=K(te,"onUndo",9),Qi=K(te,"onRedo",9),oo=K(te,"onRenderMenu",9);function ee(){lA(!lA())}var me=ge(void 0,!0),eA=ge(void 0,!0);Ue(()=>(z(ve()),z(wA()),z(re()),z($A()),z(zA()),z(jA()),z(CA()),z(Qi())),()=>{N(me,ve()?[{type:"space"}]:[{type:"button",icon:qp,title:"Sort",className:"jse-sort",onClick:wA(),disabled:ve()||!re()},{type:"button",icon:Hp,title:"Transform contents (filter, sort, project)",className:"jse-transform",onClick:$A(),disabled:ve()||!re()},{type:"button",icon:Pp,title:"Search (Ctrl+F)",className:"jse-search",onClick:ee,disabled:!re()},{type:"button",icon:Lk,title:fF,className:"jse-contextmenu",onClick:zA()},{type:"separator"},{type:"button",icon:ow,title:"Undo (Ctrl+Z)",className:"jse-undo",onClick:jA(),disabled:!CA().canUndo},{type:"button",icon:nw,title:"Redo (Ctrl+Shift+Z)",className:"jse-redo",onClick:Qi(),disabled:!CA().canRedo},{type:"space"}])}),Ue(()=>(z(oo()),g(me)),()=>{N(eA,oo()(g(me))||g(me))}),qn(),hi(!0),e5(q,{get items(){return g(eA)}}),Pt()})(_,{get containsValidArray(){return g(kt)},get readOnly(){return d()},get history(){return u()},onSort:no,onTransform:$i,onUndo:li,onRedo:en,onContextMenu:To,get onRenderMenu(){return Ee()},get showSearch(){return g(ze)},set showSearch(q){N(ze,q)},$$legacy:!0})};je(Bo,_=>{f()&&_(Nn)});var zt=ke(Bo,2),Da=_=>{var q=ove(),te=ct(q),re=ce(te);re.readOnly=!0,na(re,wA=>N(st,wA),()=>g(st));var ve=ke(te,2),lA=wA=>{var $A=ive(),zA=ct($A);une(ce(zA),{get json(){return g(he)},get documentState(){return g(Ke)},get parser(){return b()},get showSearch(){return g(ze)},get showReplace(){return g(ye)},get readOnly(){return d()},get columns(){return g(et)},onSearch:qt,onFocus:St,onPatch:Vi,onClose:ei});var jA=ke(zA,2),Qi=ce(jA),oo=ce(Qi),ee=ce(oo),me=ce(ee),eA=ce(me),VA=Ft=>{var wi=It(()=>(z(gu),g(n),Qe(()=>{var xa;return gu([],(xa=g(n))===null||xa===void 0?void 0:xa.root)}))),ba=ji(),uo=ct(ba),Qa=xa=>{var Sr=qye();Mu(ce(Sr),{get validationError(){return g(wi)},get onExpand(){return Nc}}),se(xa,Sr)};je(uo,xa=>{g(wi)&&xa(Qa)}),se(Ft,ba)};je(eA,Ft=>{z(tn),g(n),Qe(()=>{var wi;return!tn((wi=g(n))===null||wi===void 0?void 0:wi.root)})&&Ft(VA)});var _A=ke(me);ka(_A,1,()=>g(et),za,(Ft,wi)=>{var ba=Zye();(function(uo,Qa){Ht(Qa,!1);var xa=ge(void 0,!0),Sr=ge(void 0,!0),X0=ge(void 0,!0),Fl=K(Qa,"path",9),Yc=K(Qa,"sortedColumn",9),jg=K(Qa,"readOnly",9),Hc=K(Qa,"onSort",9);Ue(()=>(z(Fl()),bl),()=>{N(xa,tn(Fl())?"values":bl(Fl()))}),Ue(()=>(z(Yc()),z(Fl())),()=>{var Ya;N(Sr,Yc()&&Oi(Fl(),(Ya=Yc())===null||Ya===void 0?void 0:Ya.path)?Yc().sortDirection:void 0)}),Ue(()=>(g(Sr),_Ae),()=>{N(X0,g(Sr)?_Ae[g(Sr)]:void 0)}),qn(),hi(!0);var Is,kr=Jye(),Ll=ce(kr),$0=ce(Ll),Gl=ke(Ll,2),Xn=Ya=>{var Ha=Oye(),X2=ce(Ha),eB=It(()=>(g(Sr),z(Fc),z(y0),z(Tk),Qe(()=>g(Sr)===Fc.asc?y0:Tk)));un(X2,{get data(){return g(eB)}}),TA(()=>Vn(Ha,"title","Currently sorted in ".concat(g(X0)," order"))),se(Ya,Ha)};je(Gl,Ya=>{g(Sr)!==void 0&&Ya(Xn)}),TA(Ya=>{Is=Bi(kr,1,"jse-column-header svelte-5pxwfq",null,Is,{"jse-readonly":jg()}),Vn(kr,"title",jg()?g(xa):g(xa)+" (Click to sort the data by this column)"),jt($0,Ya)},[()=>(z(JC),g(xa),z(50),Qe(()=>JC(g(xa),50)))]),bA("click",kr,function(){jg()||Hc()({path:Fl(),sortDirection:g(Sr)===Fc.asc?Fc.desc:Fc.asc})}),se(uo,kr),Pt()})(ce(ba),{get path(){return g(wi)},get sortedColumn(){return g(bt)},get readOnly(){return d()},onSort:XA}),se(Ft,ba)});var GA=ke(_A),ht=Ft=>{var wi=Wye(),ba=ce(wi),uo=It(()=>(g(he),Qe(()=>Array.isArray(g(he))?g(he).length:0)));(function(Qa,xa){Ht(xa,!1);var Sr=K(xa,"count",9),X0=K(xa,"maxSampleCount",9),Fl=K(xa,"readOnly",9),Yc=K(xa,"onRefresh",9);hi(!0);var jg,Hc=Vye();un(ce(Hc),{get data(){return Hq}}),TA(()=>{jg=Bi(Hc,1,"jse-column-header svelte-1wgrwv3",null,jg,{"jse-readonly":Fl()}),Vn(Hc,"title","The Columns are created by sampling ".concat(X0()," items out of ").concat(Sr(),". ")+"If you're missing a column, click here to sample all of the items instead of a subset. This is slower.")}),bA("click",Hc,()=>Yc()()),se(Qa,Hc),Pt()})(ba,{get count(){return g(uo)},get maxSampleCount(){return g(WA)},get readOnly(){return d()},onRefresh:()=>N(WA,1/0)}),se(Ft,wi)};je(GA,Ft=>{g(e)&&Ft(ht)});var oi,qi,Wn=ke(ee),In=ce(Wn),Ro=ke(Wn);ka(Ro,1,()=>(g(i),Qe(()=>g(i).visibleItems)),za,(Ft,wi,ba)=>{var uo=It(()=>(g(i),Qe(()=>g(i).startIndex+ba))),Qa=It(()=>(g(n),z(g(uo)),Qe(()=>g(n).rows[g(uo)]))),xa=It(()=>(z(gu),z(g(uo)),z(g(Qa)),Qe(()=>{var Is;return gu([String(g(uo))],(Is=g(Qa))===null||Is===void 0?void 0:Is.row)}))),Sr=It(()=>(z(F0),g(he),g(OA),z(g(uo)),Qe(()=>F0(g(he),g(OA),[String(g(uo))])))),X0=tve(),Fl=ce(X0);die(Fl,()=>g(uo),Is=>{var kr=Xye(),Ll=ce(kr),$0=ke(Ll),Gl=Xn=>{Mu(Xn,{get validationError(){return g(xa)},get onExpand(){return Nc}})};je($0,Xn=>{g(xa)&&Xn(Gl)}),Ns(kr,(Xn,Ya)=>cv?.(Xn,Ya),()=>Xn=>(function(Ya,Ha){$[Ha]=Ya.getBoundingClientRect().height})(Xn,g(uo))),TA(()=>{var Xn;return jt(Ll,"".concat((Xn=g(uo))!==null&&Xn!==void 0?Xn:""," "))}),se(Is,kr)});var Yc=ke(Fl);ka(Yc,1,()=>g(et),za,(Is,kr,Ll,$0)=>{var Gl,Xn=It(()=>(z(g(uo)),g(kr),Qe(()=>[String(g(uo))].concat(g(kr))))),Ya=It(()=>(z(nt),g(wi),g(kr),Qe(()=>nt(g(wi),g(kr))))),Ha=It(()=>(z(Sn),g(Je),z(z0),z(g(Xn)),Qe(()=>Sn(g(Je))&&z0(g(Je).path,g(Xn))))),X2=It(()=>(z(g(Qa)),Qe(()=>{var Pa;return(Pa=g(Qa))===null||Pa===void 0?void 0:Pa.columns[Ll]}))),eB=It(()=>(z(gu),z(g(Xn)),z(g(X2)),Qe(()=>gu(g(Xn),g(X2))))),$2=eve(),VE=ce($2),AB=ce(VE),qE=Pa=>{var rc=It(()=>(z(Rv),z(F0),g(wi),z(g(Sr)),g(kr),Qe(()=>Rv(F0(g(wi),g(Sr),g(kr)))))),ZE=It(()=>(z(g(rc)),Qe(()=>!!g(rc)&&g(rc).some(AI=>AI.active)))),WE=It(()=>(z(tn),z(g(rc)),Qe(()=>!tn(g(rc)))));(function(AI,Vr){Ht(Vr,!1);var XE=K(Vr,"path",9),iJ=K(Vr,"value",9),nJ=K(Vr,"parser",9),Gce=K(Vr,"isSelected",9),Kce=K(Vr,"containsSearchResult",9),Uce=K(Vr,"containsActiveSearchResult",9),Tce=K(Vr,"onEdit",9);hi(!0);var oJ,bf=Tye(),Oce=ce(bf);TA($E=>{oJ=Bi(bf,1,"jse-inline-value svelte-1jv89ui",null,oJ,{"jse-selected":Gce(),"jse-highlight":Kce(),"jse-active":Uce()}),jt(Oce,$E)},[()=>(z(JC),z(nJ()),z(iJ()),z(50),Qe(()=>{var $E;return JC(($E=nJ().stringify(iJ()))!==null&&$E!==void 0?$E:"",50)}))]),bA("dblclick",bf,()=>Tce()(XE())),se(AI,bf),Pt()})(Pa,{get path(){return g(Xn)},get value(){return g(Ya)},get parser(){return b()},get isSelected(){return g(Ha)},get containsSearchResult(){return g(WE)},get containsActiveSearchResult(){return g(ZE)},onEdit:Et})},K7=Pa=>{var rc=It(()=>(z(F0),g(he),g(OA),z(g(Xn)),Qe(()=>{var Vr;return(Vr=F0(g(he),g(OA),g(Xn)))===null||Vr===void 0?void 0:Vr.searchResults}))),ZE=It(()=>g(Ya)!==void 0?g(Ya):""),WE=It(()=>(z(U0),g(he),g(Ke),z(g(Xn)),Qe(()=>U0(g(he),g(Ke),g(Xn))))),AI=It(()=>g(Ha)?g(Je):void 0);dne(Pa,{get path(){return g(Xn)},get value(){return g(ZE)},get enforceString(){return g(WE)},get selection(){return g(AI)},get searchResultItems(){return g(rc)},get context(){return g(ZA)}})};je(AB,Pa=>{z(ya),z(g(Ya)),Qe(()=>ya(g(Ya)))?Pa(qE):Pa(K7,!1)});var U7=ke(AB),T7=Pa=>{var rc=$ye();g2(ce(rc),{selected:!0,onContextMenu:Zo}),se(Pa,rc)};je(U7,Pa=>{z(d()),z(g(Ha)),z(hr),g(Je),Qe(()=>!d()&&g(Ha)&&!hr(g(Je)))&&Pa(T7)});var Vg=ke(VE,2),eI=Pa=>{Mu(Pa,{get validationError(){return g(eB)},get onExpand(){return Nc}})};je(Vg,Pa=>{g(eB)&&Pa(eI)}),TA(Pa=>{Vn($2,"data-path",Pa),Gl=Bi(VE,1,"jse-value-outer svelte-1p86y3c",null,Gl,{"jse-selected-value":g(Ha)})},[()=>(z(uv),z(g(Xn)),Qe(()=>uv(g(Xn))))]),se(Is,$2)});var jg=ke(Yc),Hc=Is=>{se(Is,Ave())};je(jg,Is=>{g(e)&&Is(Hc)}),se(Ft,X0)});var ci,ua=ce(ke(Ro));na(jA,Ft=>N(qe,Ft),()=>g(qe)),Ns(jA,(Ft,wi)=>cv?.(Ft,wi),()=>Ua),Pr(()=>bA("scroll",jA,wt));var ho=ke(jA,2),Ea=Ft=>{var wi=It(()=>(g(oA),Qe(()=>"You pasted a JSON ".concat(Array.isArray(g(oA).contents)?"array":"object"," as text")))),ba=It(()=>[{icon:vC,text:"Paste as JSON instead",title:"Paste the text as JSON instead of a single value",onMouseDown:Oo},{text:"Leave as is",title:"Keep the pasted content as a single value",onClick:Ka}]);ic(Ft,{type:"info",get message(){return g(wi)},get actions(){return g(ba)}})};je(ho,Ft=>{g(oA)&&Ft(Ea)});var Fn=ke(ho,2),Xt=Ft=>{var wi=It(()=>[{icon:vC,text:"Paste as string instead",title:"Paste the clipboard data as a single string value instead of an array",onClick:Rn},{text:"Leave as is",title:"Keep the pasted array",onClick:zi}]);ic(Ft,{type:"info",message:"Multiline text was pasted as array",get actions(){return g(wi)}})};je(Fn,Ft=>{g(Fe)&&Ft(Xt)});var pn=ke(Fn,2),gi=Ft=>{var wi=It(()=>d()?[]:[{icon:iw,text:"Ok",title:"Accept the repaired document",onClick:_n},{icon:jp,text:"Repair manually instead",title:"Leave the document unchanged and repair it manually instead",onClick:_o}]);ic(Ft,{type:"success",message:"The loaded JSON document was invalid but is successfully repaired.",get actions(){return g(wi)},onClose:J})};je(pn,Ft=>{g(Ct)&&Ft(gi)}),FF(ke(pn,2),{get validationErrors(){return g(yn)},selectError:HA}),TA(()=>{oi=Bi(Wn,1,"jse-table-invisible-start-section svelte-1p86y3c",null,oi,{"jse-search-box-background":g(ze)}),Vn(In,"colspan",(g(et),Qe(()=>g(et).length))),qi=Kc(In,"",qi,{height:(g(i),Qe(()=>g(i).startHeight+"px"))}),Vn(ua,"colspan",(g(et),Qe(()=>g(et).length))),ci=Kc(ua,"",ci,{height:(g(i),Qe(()=>g(i).endHeight+"px"))})}),se(wA,$A)},CA=wA=>{var $A=ji(),zA=ct($A),jA=oo=>{var ee=nve(),me=ct(ee),eA=It(()=>d()?[]:[{icon:jp,text:"Repair manually",title:'Open the document in "code" mode and repair it manually',onClick:_o}]);ic(me,{type:"error",message:"The loaded JSON document is invalid and could not be repaired automatically.",get actions(){return g(eA)}}),vne(ke(me,2),{get text(){return g(tA)},get json(){return g(he)},get indentation(){return j()},get parser(){return b()}}),se(oo,ee)},Qi=oo=>{jye(oo,{get text(){return g(tA)},get json(){return g(he)},get readOnly(){return d()},get parser(){return b()},openJSONEditorModal:Et,extractPath:ni,get onChangeMode(){return Ae()},onClick:()=>{J()}})};je(zA,oo=>{g(pe)&&g(tA)!==void 0&&g(tA)!==""?oo(jA):oo(Qi,!1)},!0),se(wA,$A)};je(ve,wA=>{g(kt)?wA(lA):wA(CA,!1)}),bA("paste",re,kA),se(_,q)},la=_=>{se(_,ave())};je(zt,_=>{C?_(la,!1):_(Da)}),na(dn,_=>N(be,_),()=>g(be));var y=ke(dn,2),M=_=>{gne(_,{onClose:()=>N(V,!1)})};je(y,_=>{g(V)&&_(M)});var R=ke(y,2),Z=_=>{Cne(_,y2(()=>g(it),{onClose:()=>{var q;(q=g(it))===null||q===void 0||q.onClose(),N(it,void 0)}}))};return je(R,_=>{g(it)&&_(Z)}),TA(()=>An=Bi(dn,1,"jse-table-mode svelte-1p86y3c",null,An,{"no-main-menu":!f()})),bA("mousedown",dn,function(_){if(_.buttons===1||_.buttons===2){var q=_.target;q.isContentEditable||J();var te=Rie(q);if(te){if(hr(g(Je))&&sm(g(he),g(Je),te))return;N(Je,nn(te)),_.preventDefault()}}}),bA("keydown",dn,function(_){var q=$C(_);if(o("keydown",{combo:q,key:_.key}),q==="Ctrl+X"&&(_.preventDefault(),Cr(!0)),q==="Ctrl+Shift+X"&&(_.preventDefault(),Cr(!1)),q==="Ctrl+C"&&(_.preventDefault(),$a(!0)),q==="Ctrl+Shift+C"&&(_.preventDefault(),$a(!1)),q==="Ctrl+D"&&(_.preventDefault(),Zn()),q!=="Delete"&&q!=="Backspace"||(_.preventDefault(),Xi()),q==="Insert"&&_.preventDefault(),q==="Ctrl+A"&&_.preventDefault(),q==="Ctrl+Q"&&Ba(_),q==="ArrowLeft"&&(_.preventDefault(),Si(),g(Je))){var te=(function($A,zA){var{rowIndex:jA,columnIndex:Qi}=Rc(ft(zA),$A);return Qi>0?nn(h1({rowIndex:jA,columnIndex:Qi-1},$A)):zA})(g(et),g(Je));N(Je,te),ra(ft(te))}if(q==="ArrowRight"&&(_.preventDefault(),Si(),g(Je))){var re=(function($A,zA){var{rowIndex:jA,columnIndex:Qi}=Rc(ft(zA),$A);return Qi<$A.length-1?nn(h1({rowIndex:jA,columnIndex:Qi+1},$A)):zA})(g(et),g(Je));N(Je,re),ra(ft(re))}if(q==="ArrowUp"&&(_.preventDefault(),Si(),g(Je))){var ve=(function($A,zA){var{rowIndex:jA,columnIndex:Qi}=Rc(ft(zA),$A);return jA>0?nn(h1({rowIndex:jA-1,columnIndex:Qi},$A)):zA})(g(et),g(Je));N(Je,ve),ra(ft(ve))}if(q==="ArrowDown"&&(_.preventDefault(),Si(),g(Je))){var lA=(function($A,zA,jA){var{rowIndex:Qi,columnIndex:oo}=Rc(ft(jA),zA);return Qi<$A.length-1?nn(h1({rowIndex:Qi+1,columnIndex:oo},zA)):jA})(g(he),g(et),g(Je));N(Je,lA),ra(ft(lA))}if(q==="Enter"&&g(Je)&&Sn(g(Je))){_.preventDefault();var CA=g(Je).path;ya(nt(g(he),CA))?Et(CA):d()||N(Je,UA(UA({},g(Je)),{},{edit:!0}))}if(q.replace(/^Shift\+/,"").length===1&&g(Je))return _.preventDefault(),void(function($A){iA.apply(this,arguments)})(_.key);if(q==="Ctrl+Enter"&&Sn(g(Je))){_.preventDefault();var wA=nt(g(he),g(Je).path);jv(wA)&&window.open(String(wA),"_blank")}q==="Escape"&&g(Je)&&(_.preventDefault(),N(Je,void 0)),q==="Ctrl+F"&&(_.preventDefault(),an(!1)),q==="Ctrl+H"&&(_.preventDefault(),an(!0)),q==="Ctrl+Z"&&(_.preventDefault(),li()),q==="Ctrl+Shift+Z"&&(_.preventDefault(),en())}),bA("contextmenu",dn,Ba),se(t,Qt),ii(A,"validate",En),ii(A,"patch",Ui),ii(A,"focus",J),ii(A,"acceptAutoRepair",_n),ii(A,"scrollTo",xn),ii(A,"findElement",ko),ii(A,"openTransformModal",Bt),Pt(Wt)}function Bte(t,A){Ht(A,!1);var e=K(A,"content",8),i=K(A,"selection",12),n=K(A,"readOnly",8),o=K(A,"indentation",8),a=K(A,"tabSize",8),r=K(A,"truncateTextSize",8),s=K(A,"externalMode",8),l=K(A,"mainMenuBar",8),c=K(A,"navigationBar",8),C=K(A,"statusBar",8),d=K(A,"askToFormat",8),B=K(A,"escapeControlCharacters",8),E=K(A,"escapeUnicodeCharacters",8),u=K(A,"flattenColumns",8),m=K(A,"parser",8),f=K(A,"parseMemoizeOne",8),D=K(A,"validator",8),S=K(A,"validationParser",8),k=K(A,"pathParser",8),b=K(A,"insideModal",8),x=K(A,"onChange",8),F=K(A,"onChangeMode",8),P=K(A,"onSelect",8),j=K(A,"onRenderValue",8),X=K(A,"onClassName",8),Ae=K(A,"onRenderMenu",8),W=K(A,"onRenderContextMenu",8),Ce=K(A,"onError",8),we=K(A,"onFocus",8),Be=K(A,"onBlur",8),Ee=K(A,"onSortModal",8),Ne=K(A,"onTransformModal",8),de=K(A,"onJSONEditorModal",8),Ie=ge(),xe=ge(),Xe=ge(),fA=Qr("jsoneditor:JSONEditorRoot"),Pe=ge(Mne({onChange:$=>N(Pe,$)}).get()),be=ge(s());function qe($){if(GAe($)){N(be,$.undo.mode);var ie=g(Pe).items(),oe=ie.findIndex(QA=>QA===$),Te=oe!==-1?ie[oe-1]:void 0;fA("handleUndo",{index:oe,item:$,items:ie,prevItem:Te}),Te&&i(Te.redo.selection),F()(g(be))}}function st($){if(GAe($)){N(be,$.redo.mode);var ie=g(Pe).items(),oe=ie.findIndex(QA=>QA===$),Te=oe!==-1?ie[oe+1]:void 0;fA("handleRedo",{index:oe,item:$,items:ie,nextItem:Te}),Te&&i(Te.undo.selection),F()(g(be))}}var it=ge(),He={type:"separator"},he=ge(),tA=ge();function pe($){if(g(Ie))return g(Ie).patch($);if(g(xe))return g(xe).patch($);if(g(Xe))return g(Xe).patch($);throw new Error('Method patch is not available in mode "'.concat(g(be),'"'))}function oA($,ie){if(g(Ie))return g(Ie).expand($,ie);if(g(Xe))return g(Xe).expand($,ie);throw new Error('Method expand is not available in mode "'.concat(g(be),'"'))}function Fe($,ie){if(g(Ie))return g(Ie).collapse($,ie);if(g(Xe))return g(Xe).collapse($,ie);throw new Error('Method collapse is not available in mode "'.concat(g(be),'"'))}function OA($){if(g(Xe))g(Xe).openTransformModal($);else if(g(Ie))g(Ie).openTransformModal($);else{if(!g(xe))throw new Error('Method transform is not available in mode "'.concat(g(be),'"'));g(xe).openTransformModal($)}}function ze(){if(g(Xe))return g(Xe).validate();if(g(Ie))return g(Ie).validate();if(g(xe))return g(xe).validate();throw new Error('Method validate is not available in mode "'.concat(g(be),'"'))}function ye(){return g(Ie)?g(Ie).acceptAutoRepair():e()}function qt($){if(g(Ie))return g(Ie).scrollTo($);if(g(xe))return g(xe).scrollTo($);throw new Error('Method scrollTo is not available in mode "'.concat(g(be),'"'))}function St($){if(g(Ie))return g(Ie).findElement($);if(g(xe))return g(xe).findElement($);throw new Error('Method findElement is not available in mode "'.concat(g(be),'"'))}function yA(){g(Xe)?g(Xe).focus():g(Ie)?g(Ie).focus():g(xe)&&g(xe).focus()}function ei(){return WA.apply(this,arguments)}function WA(){return(WA=Ai(function*(){g(Xe)&&(yield g(Xe).refresh())})).apply(this,arguments)}Ue(()=>z(s()),()=>{(function($){if($!==g(be)){var ie={type:"mode",undo:{mode:g(be),selection:void 0},redo:{mode:$,selection:void 0}};g(be)==="text"&&g(Xe)&&g(Xe).flush(),fA("add history item",ie),g(Pe).add(ie),N(be,$)}})(s())}),Ue(()=>(g(be),z(F())),()=>{N(it,[{type:"button",text:"text",title:"Switch to text mode (current mode: ".concat(g(be),")"),className:"jse-group-button jse-first"+(g(be)===Ga.text?" jse-selected":""),onClick:()=>F()(Ga.text)},{type:"button",text:"tree",title:"Switch to tree mode (current mode: ".concat(g(be),")"),className:"jse-group-button "+(g(be)===Ga.tree?" jse-selected":""),onClick:()=>F()(Ga.tree)},{type:"button",text:"table",title:"Switch to table mode (current mode: ".concat(g(be),")"),className:"jse-group-button jse-last"+(g(be)===Ga.table?" jse-selected":""),onClick:()=>F()(Ga.table)}])}),Ue(()=>(g(it),z(Ae()),g(be),z(b()),z(n())),()=>{N(he,$=>{var ie=YN($[0])?g(it).concat($):g(it).concat(He,$),oe=Vf(ie);return Ae()(ie,{mode:g(be),modal:b(),readOnly:n()})||oe})}),Ue(()=>(z(W()),g(be),z(b()),z(n()),z(i())),()=>{N(tA,$=>{var ie,oe=Vf($);return(ie=W()($,{mode:g(be),modal:b(),readOnly:n(),selection:i()}))!==null&&ie!==void 0?ie:!n()&&oe})}),qn();var et={patch:pe,expand:oA,collapse:Fe,transform:OA,validate:ze,acceptAutoRepair:ye,scrollTo:qt,findElement:St,focus:yA,refresh:ei};hi();var kt=ji(),JA=ct(kt),ui=$=>{na(Uye($,{get externalContent(){return e()},get externalSelection(){return i()},get history(){return g(Pe)},get readOnly(){return n()},get indentation(){return o()},get tabSize(){return a()},get mainMenuBar(){return l()},get statusBar(){return C()},get askToFormat(){return d()},get escapeUnicodeCharacters(){return E()},get parser(){return m()},get validator(){return D()},get validationParser(){return S()},get onChange(){return x()},get onChangeMode(){return F()},get onSelect(){return P()},onUndo:qe,onRedo:st,get onError(){return Ce()},get onFocus(){return we()},get onBlur(){return Be()},get onRenderMenu(){return g(he)},get onSortModal(){return Ee()},get onTransformModal(){return Ne()},$$legacy:!0}),ie=>N(Xe,ie),()=>g(Xe))},V=$=>{var ie=ji(),oe=ct(ie),Te=vA=>{na(sve(vA,{get externalContent(){return e()},get externalSelection(){return i()},get history(){return g(Pe)},get readOnly(){return n()},get truncateTextSize(){return r()},get mainMenuBar(){return l()},get escapeControlCharacters(){return B()},get escapeUnicodeCharacters(){return E()},get flattenColumns(){return u()},get parser(){return m()},get parseMemoizeOne(){return f()},get validator(){return D()},get validationParser(){return S()},get indentation(){return o()},get onChange(){return x()},get onChangeMode(){return F()},get onSelect(){return P()},onUndo:qe,onRedo:st,get onRenderValue(){return j()},get onFocus(){return we()},get onBlur(){return Be()},get onRenderMenu(){return g(he)},get onRenderContextMenu(){return g(tA)},get onSortModal(){return Ee()},get onTransformModal(){return Ne()},get onJSONEditorModal(){return de()},$$legacy:!0}),Ke=>N(xe,Ke),()=>g(xe))},QA=vA=>{na(rF(vA,{get externalContent(){return e()},get externalSelection(){return i()},get history(){return g(Pe)},get readOnly(){return n()},get indentation(){return o()},get truncateTextSize(){return r()},get mainMenuBar(){return l()},get navigationBar(){return c()},get escapeControlCharacters(){return B()},get escapeUnicodeCharacters(){return E()},get parser(){return m()},get parseMemoizeOne(){return f()},get validator(){return D()},get validationParser(){return S()},get pathParser(){return k()},get onError(){return Ce()},get onChange(){return x()},get onChangeMode(){return F()},get onSelect(){return P()},onUndo:qe,onRedo:st,get onRenderValue(){return j()},get onClassName(){return X()},get onFocus(){return we()},get onBlur(){return Be()},get onRenderMenu(){return g(he)},get onRenderContextMenu(){return g(tA)},get onSortModal(){return Ee()},get onTransformModal(){return Ne()},get onJSONEditorModal(){return de()},$$legacy:!0}),Ke=>N(Ie,Ke),()=>g(Ie))};je(oe,vA=>{g(be),z(Ga),Qe(()=>g(be)===Ga.table)?vA(Te):vA(QA,!1)},!0),se($,ie)};return je(JA,$=>{g(be),z(Ga),Qe(()=>g(be)===Ga.text||String(g(be))==="code")?$(ui):$(V,!1)}),se(t,kt),ii(A,"patch",pe),ii(A,"expand",oA),ii(A,"collapse",Fe),ii(A,"transform",OA),ii(A,"validate",ze),ii(A,"acceptAutoRepair",ye),ii(A,"scrollTo",qt),ii(A,"findElement",St),ii(A,"focus",yA),ii(A,"refresh",ei),Pt(et)}si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-modal-wrapper.svelte-t4zsk3 { + flex: 1; + display: flex; + min-width: 0; + min-height: 0; + flex-direction: column; +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) { + flex: 1; + display: flex; + flex-direction: column; + padding: 20px; + overflow: auto; + min-width: 0; + min-height: 0; +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) { + display: flex; + flex-direction: row; + justify-content: flex-end; + padding-top: var(--jse-padding, 10px); +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) button.jse-primary:where(.svelte-t4zsk3) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); + color: var(--jse-button-primary-color, #fff); + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + border-radius: 3px; +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) button.jse-primary:where(.svelte-t4zsk3):hover { + background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-actions:where(.svelte-t4zsk3) button.jse-primary:where(.svelte-t4zsk3):disabled { + background: var(--jse-button-primary-background-disabled, #9d9d9d); +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-label:where(.svelte-t4zsk3) { + font-weight: bold; + display: block; + box-sizing: border-box; +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-label:where(.svelte-t4zsk3) .jse-label-inner:where(.svelte-t4zsk3) { + margin-top: calc(2 * var(--jse-padding, 10px)); + margin-bottom: calc(0.5 * var(--jse-padding, 10px)); + box-sizing: border-box; +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-modal-contents:where(.svelte-t4zsk3) .jse-modal-inline-editor:where(.svelte-t4zsk3) { + flex: 1; + min-height: 150px; + min-width: 0; + max-width: 100%; + display: flex; + --jse-theme-color: var(--jse-modal-editor-theme-color, #707070); + --jse-theme-color-highlight: var(--jse-modal-editor-theme-color-highlight, #646464); +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) { + gap: var(--jse-padding, 10px); + align-items: center; +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) .jse-error:where(.svelte-t4zsk3) { + flex: 1; + color: var(--jse-error-color, #ee5341); +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) button.jse-secondary:where(.svelte-t4zsk3) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-button-secondary-background, #d3d3d3); + color: var(--jse-button-secondary-color, var(--jse-text-color, #4d4d4d)); + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + border-radius: 3px; +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) button.jse-secondary:where(.svelte-t4zsk3):hover { + background: var(--jse-button-secondary-background-highlight, #e1e1e1); +} +.jse-modal-wrapper.svelte-t4zsk3 .jse-actions:where(.svelte-t4zsk3) button.jse-secondary:where(.svelte-t4zsk3):disabled { + background: var(--jse-button-secondary-background-disabled, #9d9d9d); +} +.jse-modal-wrapper.svelte-t4zsk3 input:where(.svelte-t4zsk3) { + border: var(--jse-input-border, 1px solid #d8dbdf); + outline: none; + box-sizing: border-box; + padding: calc(0.5 * var(--jse-padding, 10px)); + font-family: var(--jse-font-family-mono, consolas, menlo, monaco, "Ubuntu Mono", "source-code-pro", monospace); + font-size: var(--jse-font-size-mono, 14px); + color: inherit; + background: var(--jse-input-background, var(--jse-background-color, #fff)); +} +.jse-modal-wrapper.svelte-t4zsk3 input:where(.svelte-t4zsk3):focus { + border: var(--jse-input-border-focus, 1px solid var(--jse-input-border-focus, var(--jse-theme-color, #3883fa))); +} +.jse-modal-wrapper.svelte-t4zsk3 input:where(.svelte-t4zsk3):read-only { + background: var(--jse-input-background-readonly, transparent); +}`);var lve=Oe('
        '),cve=Oe(''),gve=Oe(''),Cve=Oe(''),dve=Oe('
        Path
        Contents
        ',1),Ive=Oe('
        '),Bve={};si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-modal-contents.svelte-lwzlls { + flex: 1; + display: flex; + flex-direction: column; + padding: 20px; + overflow: auto; + min-width: 0; + min-height: 0; +} +.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) { + display: flex; + flex-direction: row; + justify-content: flex-end; + padding-top: var(--jse-padding, 10px); +} +.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) button.jse-primary:where(.svelte-lwzlls) { + border: none; + background: transparent; + color: inherit; + cursor: pointer; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + padding: 5px; + margin: 0; + background: var(--jse-button-primary-background, var(--jse-theme-color, #3883fa)); + color: var(--jse-button-primary-color, #fff); + padding: var(--jse-padding, 10px) calc(2 * var(--jse-padding, 10px)); + border-radius: 3px; +} +.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) button.jse-primary:where(.svelte-lwzlls):hover { + background: var(--jse-button-primary-background-highlight, var(--jse-theme-color-highlight, #5f9dff)); +} +.jse-modal-contents.svelte-lwzlls .jse-actions:where(.svelte-lwzlls) button.jse-primary:where(.svelte-lwzlls):disabled { + background: var(--jse-button-primary-background-disabled, #9d9d9d); +} +.jse-modal-contents.svelte-lwzlls table:where(.svelte-lwzlls) { + width: 100%; + border-collapse: collapse; + border-spacing: 0; +} +.jse-modal-contents.svelte-lwzlls table:where(.svelte-lwzlls) th:where(.svelte-lwzlls), +.jse-modal-contents.svelte-lwzlls table:where(.svelte-lwzlls) td:where(.svelte-lwzlls) { + text-align: left; + vertical-align: middle; + font-weight: normal; + padding-bottom: var(--jse-padding, 10px); +} +.jse-modal-contents.svelte-lwzlls input.jse-path:where(.svelte-lwzlls) { + width: 100%; + box-sizing: border-box; + padding: 5px 10px; + border: var(--jse-input-border, 1px solid #d8dbdf); + border-radius: var(--jse-input-radius, 3px); + font-family: inherit; + font-size: inherit; + background: inherit; + background: var(--jse-input-background-readonly, transparent); + color: inherit; + outline: none; +} +.jse-modal-contents.svelte-lwzlls .svelte-select input { + box-sizing: border-box; +} +.jse-modal-contents.svelte-lwzlls .jse-space:where(.svelte-lwzlls) { + height: 200px; +} +.jse-modal-contents.svelte-lwzlls .jse-space:where(.svelte-lwzlls) .jse-error:where(.svelte-lwzlls) { + color: var(--jse-error-color, #ee5341); +}`);var du=Pv(()=>Bve),hve=Oe('Property'),uve=Oe('
        '),Eve=Oe('
        Path
        Direction
        ',1);si(`/* over all fonts, sizes, and colors */ +/* "consolas" for Windows, "menlo" for Mac with fallback to "monaco", 'Ubuntu Mono' for Ubuntu */ +/* (at Mac this font looks too large at 14px, but 13px is too small for the font on Windows) */ +/* main, menu, modal */ +/* jsoneditor modal */ +/* tooltip in text mode */ +/* panels: navigation bar, gutter, search box */ +/* navigation-bar */ +/* context menu */ +/* contents: json key and values */ +/* contents: selected or hovered */ +/* contents: section of collapsed items in an array */ +/* contents: highlighting of search matches */ +/* contents: inline tags inside the JSON document */ +/* contents: table */ +/* controls in modals: inputs, buttons, and \`a\` */ +/* messages */ +/* svelte-select */ +/* color picker */ +.jse-main.svelte-1l55585 { + width: 100%; + height: 100%; + min-width: 0; + min-height: 150px; + font-family: var(--jse-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif); + font-size: var(--jse-font-size, 16px); + line-height: normal; + position: relative; + display: flex; + flex-direction: row; +} +.jse-main.svelte-1l55585:not(.jse-focus) { + --jse-selection-background-color: var(--jse-selection-background-inactive-color, #e8e8e8); + --jse-context-menu-pointer-background: var(--jse-context-menu-pointer-hover-background, #b2b2b2); +}`);var Qve=Oe('
        ',1);function pve(t,A){Ht(A,!1);var e=ge(void 0,!0),i=Qr("jsoneditor:JSONEditor"),n={text:""},o=void 0,a=!1,r=Ga.tree,s=!0,l=!0,c=!0,C=!0,d=!1,B=!1,E=!0,u=JSON,m=void 0,f=JSON,D={parse:w6e,stringify:bl},S=[Y3e],k=S[0].id,b=Nc,x=void 0,F=void 0,P=f6e,j=Nc,X=Nc,Ae=Nc,W=Nc,Ce=BA=>{console.error(BA),alert(BA.toString())},we=Nc,Be=Nc,Ee=K(A,"content",13,n),Ne=K(A,"selection",13,o),de=K(A,"readOnly",13,a),Ie=K(A,"indentation",13,2),xe=K(A,"tabSize",13,4),Xe=K(A,"truncateTextSize",13,1e3),fA=K(A,"mode",13,r),Pe=K(A,"mainMenuBar",13,s),be=K(A,"navigationBar",13,l),qe=K(A,"statusBar",13,c),st=K(A,"askToFormat",13,C),it=K(A,"escapeControlCharacters",13,d),He=K(A,"escapeUnicodeCharacters",13,B),he=K(A,"flattenColumns",13,E),tA=K(A,"parser",13,u),pe=K(A,"validator",13,m),oA=K(A,"validationParser",13,f),Fe=K(A,"pathParser",13,D),OA=K(A,"queryLanguages",13,S),ze=K(A,"queryLanguageId",13,k),ye=K(A,"onChangeQueryLanguage",13,b),qt=K(A,"onChange",13,x),St=K(A,"onSelect",13,F),yA=K(A,"onRenderValue",13,P),ei=K(A,"onClassName",13,j),WA=K(A,"onRenderMenu",13,X),et=K(A,"onRenderContextMenu",13,Ae),kt=K(A,"onChangeMode",13,W),JA=K(A,"onError",13,Ce),ui=K(A,"onFocus",13,we),V=K(A,"onBlur",13,Be),$=ge(Eu(),!0),ie=ge(!1,!0),oe=ge(void 0,!0),Te=ge(void 0,!0),QA=ge(void 0,!0),vA=ge(void 0,!0),Ke=ge(tA(),!0);function Je(){return Ee()}function bt(BA){i("set");var Ri=CN(BA);if(Ri)throw new Error(Ri);N($,Eu()),Ee(BA),qo()}function Ct(BA){i("update");var Ri=CN(BA);if(Ri)throw new Error(Ri);Ee(BA),qo()}function XA(BA){var Ri=g(oe).patch(BA);return qo(),Ri}function ZA(BA){Ne(BA),qo()}function fi(BA,Ri){g(oe).expand(BA,Ri),qo()}function yn(BA){var Ri=arguments.length>1&&arguments[1]!==void 0&&arguments[1];g(oe).collapse(BA,Ri),qo()}function kn(){var BA=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};g(oe).transform(BA),qo()}function qA(){return g(oe).validate()}function En(){var BA=g(oe).acceptAutoRepair();return qo(),BA}function Ui(BA){return Vi.apply(this,arguments)}function Vi(){return(Vi=Ai(function*(BA){yield g(oe).scrollTo(BA)})).apply(this,arguments)}function Cn(BA){return g(oe).findElement(BA)}function Gt(){g(oe).focus(),qo()}function Qn(){return Zt.apply(this,arguments)}function Zt(){return(Zt=Ai(function*(){yield g(oe).refresh()})).apply(this,arguments)}function J(BA){var Ri,vn,Rn,sa,Ka,zi,_o,Cr,Jo,$a,io,Xi,ni,Zn,xo,Wo,Se,iA,kA,ue,Ge,IA,HA,Bt,Et,Jt,no,$i,an,li,en,Ua=Object.keys(BA);for(var Wt of Ua)switch(Wt){case"content":Ee((Ri=BA[Wt])!==null&&Ri!==void 0?Ri:n);break;case"selection":Ne((vn=BA[Wt])!==null&&vn!==void 0?vn:o);break;case"readOnly":de((Rn=BA[Wt])!==null&&Rn!==void 0?Rn:a);break;case"indentation":Ie((sa=BA[Wt])!==null&&sa!==void 0?sa:2);break;case"tabSize":xe((Ka=BA[Wt])!==null&&Ka!==void 0?Ka:4);break;case"truncateTextSize":Xe((zi=BA[Wt])!==null&&zi!==void 0?zi:1e3);break;case"mode":fA((_o=BA[Wt])!==null&&_o!==void 0?_o:r);break;case"mainMenuBar":Pe((Cr=BA[Wt])!==null&&Cr!==void 0?Cr:s);break;case"navigationBar":be((Jo=BA[Wt])!==null&&Jo!==void 0?Jo:l);break;case"statusBar":qe(($a=BA[Wt])!==null&&$a!==void 0?$a:c);break;case"askToFormat":st((io=BA[Wt])!==null&&io!==void 0?io:C);break;case"escapeControlCharacters":it((Xi=BA[Wt])!==null&&Xi!==void 0?Xi:d);break;case"escapeUnicodeCharacters":He((ni=BA[Wt])!==null&&ni!==void 0?ni:B);break;case"flattenColumns":he((Zn=BA[Wt])!==null&&Zn!==void 0?Zn:E);break;case"parser":tA((xo=BA[Wt])!==null&&xo!==void 0?xo:u);break;case"validator":pe((Wo=BA[Wt])!==null&&Wo!==void 0?Wo:m);break;case"validationParser":oA((Se=BA[Wt])!==null&&Se!==void 0?Se:f);break;case"pathParser":Fe((iA=BA[Wt])!==null&&iA!==void 0?iA:D);break;case"queryLanguages":OA((kA=BA[Wt])!==null&&kA!==void 0?kA:S);break;case"queryLanguageId":ze((ue=BA[Wt])!==null&&ue!==void 0?ue:k);break;case"onChangeQueryLanguage":ye((Ge=BA[Wt])!==null&&Ge!==void 0?Ge:b);break;case"onChange":qt((IA=BA[Wt])!==null&&IA!==void 0?IA:x);break;case"onRenderValue":yA((HA=BA[Wt])!==null&&HA!==void 0?HA:P);break;case"onClassName":ei((Bt=BA[Wt])!==null&&Bt!==void 0?Bt:j);break;case"onRenderMenu":WA((Et=BA[Wt])!==null&&Et!==void 0?Et:X);break;case"onRenderContextMenu":et((Jt=BA[Wt])!==null&&Jt!==void 0?Jt:Ae);break;case"onChangeMode":kt((no=BA[Wt])!==null&&no!==void 0?no:W);break;case"onSelect":St(($i=BA[Wt])!==null&&$i!==void 0?$i:F);break;case"onError":JA((an=BA[Wt])!==null&&an!==void 0?an:Ce);break;case"onFocus":ui((li=BA[Wt])!==null&&li!==void 0?li:we);break;case"onBlur":V((en=BA[Wt])!==null&&en!==void 0?en:Be);break;default:Qt(Wt)}function Qt(An){i('Unknown property "'.concat(An,'"'))}OA().some(An=>An.id===ze())||ze(OA()[0].id),qo()}function wt(){return Si.apply(this,arguments)}function Si(){return(Si=Ai(function*(){throw new Error("class method destroy() is deprecated. It is replaced with a method destroy() in the vanilla library.")})).apply(this,arguments)}function _n(BA,Ri,vn){Ee(BA),qt()&&qt()(BA,Ri,vn)}function xn(BA){Ne(BA),St()&&St()(Vf(BA))}function Io(){N(ie,!0),ui()&&ui()()}function ra(){N(ie,!1),V()&&V()()}function ko(BA){return Zo.apply(this,arguments)}function Zo(){return(Zo=Ai(function*(BA){fA()!==BA&&(fA(BA),qo(),Gt(),kt()(BA))})).apply(this,arguments)}function Ba(BA){i("handleChangeQueryLanguage",BA),ze(BA),ye()(BA)}function To(BA){var{id:Ri,json:vn,rootPath:Rn,onTransform:sa,onClose:Ka}=BA;de()||N(vA,{id:Ri,json:vn,rootPath:Rn,indentation:Ie(),truncateTextSize:Xe(),escapeControlCharacters:it(),escapeUnicodeCharacters:He(),parser:tA(),parseMemoizeOne:g(e),validationParser:oA(),pathParser:Fe(),queryLanguages:OA(),queryLanguageId:ze(),onChangeQueryLanguage:Ba,onRenderValue:yA(),onRenderMenu:zi=>WA()(zi,{mode:fA(),modal:!0,readOnly:de()}),onRenderContextMenu:zi=>et()(zi,{mode:fA(),modal:!0,readOnly:de(),selection:Ne()}),onClassName:ei(),onTransform:sa,onClose:Ka})}function _a(BA){de()||N(QA,BA)}function ha(BA){var{content:Ri,path:vn,onPatch:Rn,onClose:sa}=BA;i("onJSONEditorModal",{content:Ri,path:vn}),N(Te,{content:Ri,path:vn,onPatch:Rn,readOnly:de(),indentation:Ie(),tabSize:xe(),truncateTextSize:Xe(),mainMenuBar:Pe(),navigationBar:be(),statusBar:qe(),askToFormat:st(),escapeControlCharacters:it(),escapeUnicodeCharacters:He(),flattenColumns:he(),parser:tA(),validator:void 0,validationParser:oA(),pathParser:Fe(),onRenderValue:yA(),onClassName:ei(),onRenderMenu:WA(),onRenderContextMenu:et(),onSortModal:_a,onTransformModal:To,onClose:sa})}function va(BA){BA.stopPropagation()}Ue(()=>(z(tA()),g(Ke),z(Ee()),Eu),()=>{if(!vie(tA(),g(Ke))){if(i("parser changed, recreate editor"),im(Ee())){var BA=g(Ke).stringify(Ee().json);Ee({json:BA!==void 0?tA().parse(BA):void 0})}N(Ke,tA()),N($,Eu())}}),Ue(()=>z(Ee()),()=>{var BA=CN(Ee());BA&&console.error("Error: "+BA)}),Ue(()=>z(Ne()),()=>{Ne()===null&&console.warn("selection is invalid: it is null but should be undefined")}),Ue(()=>z(tA()),()=>{N(e,Dh(tA().parse))}),Ue(()=>z(fA()),()=>{i("mode changed to",fA())}),qn();var Oo={get:Je,set:bt,update:Ct,patch:XA,select:ZA,expand:fi,collapse:yn,transform:kn,validate:qA,acceptAutoRepair:En,scrollTo:Ui,findElement:Cn,focus:Gt,refresh:Qn,updateProps:J,destroy:wt};return hi(!0),JN(t,{children:(BA,Ri)=>{var vn,Rn=Qve(),sa=ct(Rn);die(ce(sa),()=>g($),io=>{na(Bte(io,{get externalMode(){return fA()},get content(){return Ee()},get selection(){return Ne()},get readOnly(){return de()},get indentation(){return Ie()},get tabSize(){return xe()},get truncateTextSize(){return Xe()},get statusBar(){return qe()},get askToFormat(){return st()},get mainMenuBar(){return Pe()},get navigationBar(){return be()},get escapeControlCharacters(){return it()},get escapeUnicodeCharacters(){return He()},get flattenColumns(){return he()},get parser(){return tA()},get parseMemoizeOne(){return g(e)},get validator(){return pe()},get validationParser(){return oA()},get pathParser(){return Fe()},insideModal:!1,get onError(){return JA()},onChange:_n,onChangeMode:ko,onSelect:xn,get onRenderValue(){return yA()},get onClassName(){return ei()},onFocus:Io,onBlur:ra,get onRenderMenu(){return WA()},get onRenderContextMenu(){return et()},onSortModal:_a,onTransformModal:To,onJSONEditorModal:ha,$$legacy:!0}),Xi=>N(oe,Xi),()=>g(oe))});var Ka=ke(sa,2),zi=io=>{(function(Xi,ni){var Zn,xo;Ht(ni,!1);var Wo=ge(void 0,!0),Se=ge(void 0,!0),iA=ge(void 0,!0),kA=ge(void 0,!0),ue=Qr("jsoneditor:SortModal"),Ge=K(ni,"id",9),IA=K(ni,"json",9),HA=K(ni,"rootPath",9),Bt=K(ni,"onSort",9),Et=K(ni,"onClose",9),Jt={value:1,label:"ascending"},no=[Jt,{value:-1,label:"descending"}],$i="".concat(Ge(),":").concat(Lt(HA())),an=ge((Zn=du()[$i])===null||Zn===void 0?void 0:Zn.selectedProperty,!0),li=ge(((xo=du()[$i])===null||xo===void 0?void 0:xo.selectedDirection)||Jt,!0),en=ge(void 0,!0);function Ua(){try{var Qt,An,dn;N(en,void 0);var Bo=((Qt=g(an))===null||Qt===void 0?void 0:Qt.value)||((An=g(kA))===null||An===void 0||(An=An[0])===null||An===void 0?void 0:An.value)||[],Nn=(dn=g(li))===null||dn===void 0?void 0:dn.value,zt=hne(IA(),HA(),Bo,Nn);Bt()!==void 0&&HA()!==void 0&&Bt()({operations:zt,rootPath:HA(),itemPath:Bo,direction:Nn}),Et()()}catch(Da){N(en,String(Da))}}function Wt(Qt){Qt.focus()}Ue(()=>(z(IA()),z(HA())),()=>{N(Wo,nt(IA(),HA()))}),Ue(()=>g(Wo),()=>{N(Se,Array.isArray(g(Wo)))}),Ue(()=>(g(Se),g(Wo)),()=>{N(iA,g(Se)?TN(g(Wo)):void 0)}),Ue(()=>(g(iA),B2),()=>{N(kA,g(iA)?g(iA).map(B2):void 0)}),Ue(()=>(du(),g(an),g(li)),()=>{du(du()[$i]={selectedProperty:g(an),selectedDirection:g(li)}),ue("store state in memory",$i,du()[$i])}),qn(),hi(!0),gm(Xi,{get onClose(){return Et()},className:"jse-sort-modal",children:(Qt,An)=>{var dn=Eve(),Bo=ct(dn),Nn=It(()=>g(Se)?"Sort array items":"Sort object keys");Uv(Bo,{get title(){return g(Nn)},get onClose(){return Et()}});var zt=ce(ke(Bo,2)),Da=ke(ce(zt)),la=ce(Da),y=ke(ce(la)),M=ce(y),R=ke(la),Z=CA=>{var wA=hve(),$A=ke(ce(wA));p1(ce($A),{showChevron:!0,get items(){return g(kA)},get value(){return g(an)},set value(zA){N(an,zA)},$$legacy:!0}),se(CA,wA)};je(R,CA=>{g(Se),g(kA),Qe(()=>{var wA;return g(Se)&&g(kA)&&((wA=g(kA))===null||wA===void 0?void 0:wA.length)>1})&&CA(Z)});var _=ke(R),q=ke(ce(_));p1(ce(q),{showChevron:!0,clearable:!1,get items(){return no},get value(){return g(li)},set value(CA){N(li,CA)},$$legacy:!0});var te=ke(zt,2),re=ce(te),ve=CA=>{var wA=uve(),$A=ce(wA);TA(()=>jt($A,g(en))),se(CA,wA)};je(re,CA=>{g(en)&&CA(ve)});var lA=ce(ke(te,2));Pr(()=>bA("click",lA,Ua)),Ns(lA,CA=>Wt?.(CA)),TA(CA=>{x1(M,CA),lA.disabled=(g(Se),g(kA),g(an),Qe(()=>{var wA;return!!(g(Se)&&g(kA)&&((wA=g(kA))===null||wA===void 0?void 0:wA.length)>1)&&!g(an)}))},[()=>(z(HA()),z(tn),z(bl),Qe(()=>HA()&&!tn(HA())?bl(HA()):"(document root)"))]),se(Qt,dn)},$$slots:{default:!0}}),Pt()})(io,y2(()=>g(QA),{onClose:()=>{var Xi;(Xi=g(QA))===null||Xi===void 0||Xi.onClose(),N(QA,void 0)}}))};je(Ka,io=>{g(QA)&&io(zi)});var _o=ke(Ka,2),Cr=io=>{wye(io,y2(()=>g(vA),{onClose:()=>{var Xi;(Xi=g(vA))===null||Xi===void 0||Xi.onClose(),N(vA,void 0)}}))};je(_o,io=>{g(vA)&&io(Cr)});var Jo=ke(_o,2),$a=io=>{(function(Xi,ni){Ht(ni,!1);var Zn=ge(void 0,!0),xo=ge(void 0,!0),Wo=ge(void 0,!0),Se=ge(void 0,!0),iA=Qr("jsoneditor:JSONEditorModal"),kA=K(ni,"content",9),ue=K(ni,"path",9),Ge=K(ni,"onPatch",9),IA=K(ni,"readOnly",9),HA=K(ni,"indentation",9),Bt=K(ni,"tabSize",9),Et=K(ni,"truncateTextSize",9),Jt=K(ni,"mainMenuBar",9),no=K(ni,"navigationBar",9),$i=K(ni,"statusBar",9),an=K(ni,"askToFormat",9),li=K(ni,"escapeControlCharacters",9),en=K(ni,"escapeUnicodeCharacters",9),Ua=K(ni,"flattenColumns",9),Wt=K(ni,"parser",9),Qt=K(ni,"validator",9),An=K(ni,"validationParser",9),dn=K(ni,"pathParser",9),Bo=K(ni,"onRenderValue",9),Nn=K(ni,"onClassName",9),zt=K(ni,"onRenderMenu",9),Da=K(ni,"onRenderContextMenu",9),la=K(ni,"onSortModal",9),y=K(ni,"onTransformModal",9),M=K(ni,"onClose",9),R=ge(void 0,!0),Z=ge(void 0,!0),_={mode:re(kA()),content:kA(),selection:void 0,relativePath:ue()},q=ge([_],!0),te=ge(void 0,!0);function re(me){return im(me)&&Ca(me.json)?Ga.table:Ga.tree}function ve(){var me,eA=(me=Yi(g(q)))===null||me===void 0?void 0:me.selection;rm(eA)&&g(R).scrollTo(ft(eA))}function lA(){if(iA("handleApply"),!IA())try{N(te,void 0);var me=g(Zn).relativePath,eA=g(Zn).content,VA=[{op:"replace",path:Lt(me),value:DAe(eA,Wt()).json}];if(g(q).length>1){var _A=DAe(g(q)[g(q).length-2].content,Wt()).json,GA={json:Bl(_A,VA)},ht=UA(UA({},g(q)[g(q).length-2]||_),{},{content:GA});N(q,[...g(q).slice(0,g(q).length-2),ht]),qo(),ve()}else Ge()(VA),M()()}catch(oi){N(te,String(oi))}}function CA(){if(iA("handleClose"),g(Z))N(Z,!1);else if(g(q).length>1){var me;N(q,sn(g(q))),qo(),(me=g(R))===null||me===void 0||me.focus(),ve(),N(te,void 0)}else M()()}function wA(me){iA("handleChange",me),jA(eA=>UA(UA({},eA),{},{content:me}))}function $A(me){iA("handleChangeSelection",me),jA(eA=>UA(UA({},eA),{},{selection:me}))}function zA(me){iA("handleChangeMode",me),jA(eA=>UA(UA({},eA),{},{mode:me}))}function jA(me){var eA=me(Yi(g(q)));N(q,[...sn(g(q)),eA])}function Qi(me){N(te,me.toString()),console.error(me)}function oo(me){var eA,{content:VA,path:_A}=me;iA("handleJSONEditorModal",{content:VA,path:_A});var GA={mode:re(VA),content:VA,selection:void 0,relativePath:_A};N(q,[...g(q),GA]),qo(),(eA=g(R))===null||eA===void 0||eA.focus()}function ee(me){me.focus()}gs(()=>{var me;(me=g(R))===null||me===void 0||me.focus()}),Ue(()=>g(q),()=>{N(Zn,Yi(g(q))||_)}),Ue(()=>g(q),()=>{N(xo,g(q).flatMap(me=>me.relativePath))}),Ue(()=>(g(xo),bl),()=>{N(Wo,tn(g(xo))?"(document root)":bl(g(xo)))}),Ue(()=>z(Wt()),()=>{N(Se,Dh(Wt().parse))}),qn(),hi(!0),gm(Xi,{onClose:CA,className:"jse-jsoneditor-modal",get fullscreen(){return g(Z)},children:(me,eA)=>{var VA=Ive();JN(ce(VA),{children:(_A,GA)=>{var ht=dve(),oi=ct(ht),qi=It(()=>(g(q),Qe(()=>g(q).length>1?" (".concat(g(q).length,")"):"")));Uv(oi,{get title(){var gi;return"Edit nested content ".concat((gi=g(qi))!==null&&gi!==void 0?gi:"")},fullScreenButton:!0,onClose:CA,get fullscreen(){return g(Z)},set fullscreen(gi){N(Z,gi)},$$legacy:!0});var Wn=ke(oi,2),In=ke(ce(Wn),2),Ro=ke(In,4);na(Bte(ce(Ro),{get externalMode(){return g(Zn),Qe(()=>g(Zn).mode)},get content(){return g(Zn),Qe(()=>g(Zn).content)},get selection(){return g(Zn),Qe(()=>g(Zn).selection)},get readOnly(){return IA()},get indentation(){return HA()},get tabSize(){return Bt()},get truncateTextSize(){return Et()},get statusBar(){return $i()},get askToFormat(){return an()},get mainMenuBar(){return Jt()},get navigationBar(){return no()},get escapeControlCharacters(){return li()},get escapeUnicodeCharacters(){return en()},get flattenColumns(){return Ua()},get parser(){return Wt()},get parseMemoizeOne(){return g(Se)},get validator(){return Qt()},get validationParser(){return An()},get pathParser(){return dn()},insideModal:!0,onError:Qi,onChange:wA,onChangeMode:zA,onSelect:$A,get onRenderValue(){return Bo()},get onClassName(){return Nn()},get onFocus(){return Nc},get onBlur(){return Nc},get onRenderMenu(){return zt()},get onRenderContextMenu(){return Da()},get onSortModal(){return la()},get onTransformModal(){return y()},onJSONEditorModal:oo,$$legacy:!0}),gi=>N(R,gi),()=>g(R));var ci=ce(ke(Ro,2)),ua=gi=>{var Ft=lve(),wi=ce(Ft);TA(()=>jt(wi,g(te))),se(gi,Ft)};je(ci,gi=>{g(te)&&gi(ua)});var ho=ke(ci,2),Ea=gi=>{var Ft=cve();un(ce(Ft),{get data(){return qq}}),bA("click",Ft,CA),se(gi,Ft)};je(ho,gi=>{g(q),Qe(()=>g(q).length>1)&&gi(Ea)});var Fn=ke(ho,2),Xt=gi=>{var Ft=gve();Pr(()=>bA("click",Ft,lA)),Ns(Ft,wi=>ee?.(wi)),se(gi,Ft)},pn=gi=>{var Ft=Cve();bA("click",Ft,CA),se(gi,Ft)};je(Fn,gi=>{IA()?gi(pn,!1):gi(Xt)}),TA(()=>x1(In,g(Wo))),se(_A,ht)},$$slots:{default:!0}}),se(me,VA)},$$slots:{default:!0}}),Pt()})(io,y2(()=>g(Te),{onClose:()=>{var Xi;(Xi=g(Te))===null||Xi===void 0||Xi.onClose(),N(Te,void 0)}}))};je(Jo,io=>{g(Te)&&io($a)}),TA(()=>vn=Bi(sa,1,"jse-main svelte-1l55585",null,vn,{"jse-focus":g(ie)})),bA("keydown",sa,va),se(BA,Rn)},$$slots:{default:!0}}),ii(A,"get",Je),ii(A,"set",bt),ii(A,"update",Ct),ii(A,"patch",XA),ii(A,"select",ZA),ii(A,"expand",fi),ii(A,"collapse",yn),ii(A,"transform",kn),ii(A,"validate",qA),ii(A,"acceptAutoRepair",En),ii(A,"scrollTo",Ui),ii(A,"findElement",Cn),ii(A,"focus",Gt),ii(A,"refresh",Qn),ii(A,"updateProps",J),ii(A,"destroy",wt),Pt(Oo)}function Sne(t){var{target:A,props:e}=t,i=s3e(pve,{target:A,props:e});return i.destroy=Ai(function*(){return(function(n,o){var a=GN.get(n);return a?(GN.delete(n),a(o)):Promise.resolve()})(i)}),qo(),i}var Tg=class t{constructor(A){this.el=A}jsonString;editor=null;ngAfterViewInit(){let A={text:this.jsonString};setTimeout(()=>{this.editor=Sne({target:document.getElementById("json-editor"),props:{content:A,mode:Ga.text,mainMenuBar:!1,statusBar:!1}})})}getJsonString(){return this.editor?.get().text}static \u0275fac=function(e){return new(e||t)(dt(dA))};static \u0275cmp=De({type:t,selectors:[["app-json-editor"]],inputs:{jsonString:"jsonString"},decls:1,vars:0,consts:[["id","json-editor",1,"json-editor-container","jse-theme-dark"]],template:function(e,i){e&1&&eo(0,"div",0)},styles:[".jse-theme-dark[_ngcontent-%COMP%]{--jse-theme: dark;--jse-theme-color: #2f6dd0;--jse-theme-color-highlight: #467cd2;--jse-background-color: #1e1e1e;--jse-text-color: #d4d4d4;--jse-text-color-inverse: #4d4d4d;--jse-main-border: 1px solid #4f4f4f;--jse-menu-color: #fff;--jse-modal-background: #2f2f2f;--jse-modal-overlay-background: rgba(0, 0, 0, .5);--jse-modal-code-background: #2f2f2f;--jse-tooltip-color: var(--jse-text-color);--jse-tooltip-background: #4b4b4b;--jse-tooltip-border: 1px solid #737373;--jse-tooltip-action-button-color: inherit;--jse-tooltip-action-button-background: #737373;--jse-panel-background: #333333;--jse-panel-background-border: 1px solid #464646;--jse-panel-color: var(--jse-text-color);--jse-panel-color-readonly: #737373;--jse-panel-border: 1px solid #3c3c3c;--jse-panel-button-color-highlight: #e5e5e5;--jse-panel-button-background-highlight: #464646;--jse-navigation-bar-background: #656565;--jse-navigation-bar-background-highlight: #7e7e7e;--jse-navigation-bar-dropdown-color: var(--jse-text-color);--jse-context-menu-background: #4b4b4b;--jse-context-menu-background-highlight: #595959;--jse-context-menu-separator-color: #595959;--jse-context-menu-color: var(--jse-text-color);--jse-context-menu-pointer-background: #737373;--jse-context-menu-pointer-background-highlight: #818181;--jse-context-menu-pointer-color: var(--jse-context-menu-color);--jse-key-color: #9cdcfe;--jse-value-color: var(--jse-text-color);--jse-value-color-number: #b5cea8;--jse-value-color-boolean: #569cd6;--jse-value-color-null: #569cd6;--jse-value-color-string: #ce9178;--jse-value-color-url: #ce9178;--jse-delimiter-color: #949494;--jse-edit-outline: 2px solid var(--jse-text-color);--jse-selection-background-color: #464646;--jse-selection-background-inactive-color: #333333;--jse-hover-background-color: #343434;--jse-active-line-background-color: rgba(255, 255, 255, .06);--jse-search-match-background-color: #343434;--jse-collapsed-items-background-color: #333333;--jse-collapsed-items-selected-background-color: #565656;--jse-collapsed-items-link-color: #b2b2b2;--jse-collapsed-items-link-color-highlight: #ec8477;--jse-search-match-color: #724c27;--jse-search-match-outline: 1px solid #966535;--jse-search-match-active-color: #9f6c39;--jse-search-match-active-outline: 1px solid #bb7f43;--jse-tag-background: #444444;--jse-tag-color: #bdbdbd;--jse-table-header-background: #333333;--jse-table-header-background-highlight: #424242;--jse-table-row-odd-background: rgba(255, 255, 255, .1);--jse-input-background: #3d3d3d;--jse-input-border: var(--jse-main-border);--jse-button-background: #808080;--jse-button-background-highlight: #7a7a7a;--jse-button-color: #e0e0e0;--jse-button-secondary-background: #494949;--jse-button-secondary-background-highlight: #5d5d5d;--jse-button-secondary-background-disabled: #9d9d9d;--jse-button-secondary-color: var(--jse-text-color);--jse-a-color: #55abff;--jse-a-color-highlight: #4387c9;--jse-svelte-select-background: #3d3d3d;--jse-svelte-select-border: 1px solid #4f4f4f;--list-background: #3d3d3d;--item-hover-bg: #505050;--multi-item-bg: #5b5b5b;--input-color: #d4d4d4;--multi-clear-bg: #8a8a8a;--multi-item-clear-icon-color: #d4d4d4;--multi-item-outline: 1px solid #696969;--list-shadow: 0 2px 8px 0 rgba(0, 0, 0, .4);--jse-color-picker-background: #656565;--jse-color-picker-border-box-shadow: #8c8c8c 0 0 0 1px}.json-editor-container[_ngcontent-%COMP%]{height:100%} .jse-message.jse-error{display:none} .cm-gutters.cm-gutters-before{display:none} .jse-text-mode{border-radius:10px} .jse-contents{border-radius:10px;border-bottom:1px solid #4f4f4f}"]})};var mve=(t,A)=>A.name;function fve(t,A){if(t&1&&v(0),t&2){let e=p();pA(" Configure ",e.selectedBuiltInTool," ")}}function wve(t,A){if(t&1&&v(0),t&2){let e=p();pA(" ",e.isEditMode?"Edit Built-in Tool":"Add Built-in Tool"," ")}}function yve(t,A){if(t&1){let e=ae();I(0,"div",8),U("click",function(){let n=L(e).$implicit,o=p(3);return G(o.onToolSelected(n))}),I(1,"mat-icon",9),v(2),h(),I(3,"span",10),v(4),h()()}if(t&2){let e=A.$implicit,i=p(3);_e("selected",i.selectedBuiltInTool===e),Q(2),ne(i.getToolIcon(e)),Q(2),ne(e)}}function vve(t,A){if(t&1&&(I(0,"div",4)(1,"h3",5),v(2),h(),I(3,"div",6),RA(4,yve,5,4,"div",7,ri),h()()),t&2){let e=A.$implicit;Q(2),ne(e.name),Q(2),NA(e.tools)}}function Dve(t,A){if(t&1&&(I(0,"div",1),RA(1,vve,6,1,"div",4,mve),h()),t&2){let e=p();Q(),NA(e.toolCategories)}}function bve(t,A){if(t&1&&(I(0,"div",2)(1,"h3",11),v(2,"Configure Tool Arguments"),h(),le(3,"app-json-editor",12),h()),t&2){let e=p();Q(3),H("jsonString",e.toolArgsString)}}function Mve(t,A){if(t&1){let e=ae();I(0,"button",14),U("click",function(){L(e);let n=p(2);return G(n.backToToolSelection())}),v(1,"Back"),h()}}function Sve(t,A){if(t&1){let e=ae();T(0,Mve,2,0,"button",13),I(1,"button",14),U("click",function(){L(e);let n=p();return G(n.saveArgs())}),v(2),h()}if(t&2){let e=p();O(e.isEditMode?-1:0),Q(2),ne(e.isEditMode?"Save":"Create")}}function kve(t,A){if(t&1){let e=ae();I(0,"button",14),U("click",function(){L(e);let n=p();return G(n.cancel())}),v(1,"Cancel"),h(),I(2,"button",15),U("click",function(){L(e);let n=p();return G(n.addTool())}),v(3),h()}if(t&2){let e=p();Q(3),pA(" ",e.isEditMode?"Save":"Create"," ")}}var K1=class t{constructor(A,e){this.data=A;this.dialogRef=e}jsonEditorComponent;selectedBuiltInTool="google_search";toolCategories=[{name:"Search Tools",tools:["google_search","EnterpriseWebSearchTool","VertexAiSearchTool"]},{name:"Context Tools",tools:["FilesRetrieval","load_memory","preload_memory","url_context","VertexAiRagRetrieval"]},{name:"Agent Function Tools",tools:["exit_loop","get_user_choice","load_artifacts","LongRunningFunctionTool"]}];builtInToolArgs=new Map([["EnterpriseWebSearchTool",[]],["exit_loop",[]],["FilesRetrieval",["name","description","input_dir"]],["get_user_choice",[]],["google_search",[]],["load_artifacts",[]],["load_memory",[]],["LongRunningFunctionTool",["func"]],["preload_memory",[]],["url_context",[]],["VertexAiRagRetrieval",["name","description","rag_corpora","rag_resources","similarity_top_k","vector_distance_threshold"]],["VertexAiSearchTool",["data_store_id","data_store_specs","search_engine_id","filter","max_results"]]]);isEditMode=!1;showArgsEditor=!1;toolArgs={};toolArgsString="";ngOnInit(){if(this.isEditMode=this.data.isEditMode||!1,this.isEditMode&&this.data.toolName){this.selectedBuiltInTool=this.data.toolName;let A=this.builtInToolArgs.get(this.data.toolName);if(A&&A.length>0){if(this.data.toolArgs)this.toolArgs=Y({},this.data.toolArgs),delete this.toolArgs.skip_summarization;else{this.toolArgs={};for(let e of A)this.toolArgs[e]=""}this.toolArgsString=JSON.stringify(this.toolArgs,null,2),this.showArgsEditor=!0}}}onToolSelected(A){this.selectedBuiltInTool=A;let e=this.builtInToolArgs.get(A);e&&e.length>0&&(this.initializeToolArgs(A,e),this.showArgsEditor=!0)}initializeToolArgs(A,e){this.toolArgs={};for(let i of e)this.toolArgs[i]="";this.toolArgsString=JSON.stringify(this.toolArgs,null,2)}backToToolSelection(){this.showArgsEditor=!1,this.toolArgs={},this.toolArgsString=""}saveArgs(){if(this.jsonEditorComponent)try{this.toolArgsString=this.jsonEditorComponent.getJsonString(),this.toolArgs=JSON.parse(this.toolArgsString)}catch(A){alert("Invalid JSON: "+A);return}this.addTool()}addTool(){let A={toolType:"Built-in tool",name:this.selectedBuiltInTool,isEditMode:this.isEditMode};Object.keys(this.toolArgs).length>0&&(A.args=this.toolArgs),this.dialogRef.close(A)}cancel(){this.dialogRef.close()}getToolIcon(A){return fh(A,"Built-in tool")}static \u0275fac=function(e){return new(e||t)(dt(Do),dt(Pn))};static \u0275cmp=De({type:t,selectors:[["app-built-in-tool-dialog"]],viewQuery:function(e,i){if(e&1&&$t(Tg,5),e&2){let n;cA(n=gA())&&(i.jsonEditorComponent=n.first)}},decls:9,vars:3,consts:[["mat-dialog-title","",1,"dialog-title"],[1,"tool-categories-container"],[1,"args-editor-container"],["align","end"],[1,"tool-category"],[1,"category-title"],[1,"tool-list"],[1,"tool-item",3,"selected"],[1,"tool-item",3,"click"],[1,"tool-icon"],[1,"tool-name"],[1,"args-editor-title"],[3,"jsonString"],["mat-button",""],["mat-button","",3,"click"],["mat-button","","cdkFocusInitial","",3,"click"]],template:function(e,i){e&1&&(I(0,"h2",0),T(1,fve,1,1)(2,wve,1,1),h(),I(3,"mat-dialog-content"),T(4,Dve,3,0,"div",1)(5,bve,4,1,"div",2),h(),I(6,"mat-dialog-actions",3),T(7,Sve,3,2)(8,kve,4,1),h()),e&2&&(Q(),O(i.showArgsEditor?1:2),Q(3),O(i.showArgsEditor?5:4),Q(3),O(i.showArgsEditor?7:8))},dependencies:[Ci,wn,ea,pa,Vt,ma,xi,Tg],styles:[".dialog-title[_ngcontent-%COMP%]{color:var(--mdc-dialog-subhead-color)!important;font-family:Google Sans;font-size:24px}.tool-categories-container[_ngcontent-%COMP%]{padding:16px 0}.tool-category[_ngcontent-%COMP%]{margin-bottom:24px}.tool-category[_ngcontent-%COMP%]:last-child{margin-bottom:0}.category-title[_ngcontent-%COMP%]{font-family:Google Sans;font-size:16px;font-weight:500;color:var(--mdc-dialog-supporting-text-color);margin:0 0 12px;padding-left:8px}.tool-list[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tool-item[_ngcontent-%COMP%]{display:flex;align-items:center;padding:12px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease;border:1px solid var(--builder-tool-item-border-color);min-width:0}.tool-item.selected[_ngcontent-%COMP%]{border:1px solid #8ab4f8}.tool-item[_ngcontent-%COMP%] .tool-icon[_ngcontent-%COMP%]{color:#8ab4f8;margin-right:12px;font-size:20px;width:20px;height:20px;flex-shrink:0}.tool-item[_ngcontent-%COMP%] .tool-name[_ngcontent-%COMP%]{font-family:Google Sans;font-size:14px;color:var(--mdc-dialog-supporting-text-color)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.args-editor-container[_ngcontent-%COMP%]{padding:16px 0}.args-editor-title[_ngcontent-%COMP%]{font-family:Google Sans;font-size:16px;font-weight:500;color:var(--mdc-dialog-supporting-text-color);margin:0 0 16px}"]})};function _ve(t,A){if(t&1){let e=ae();Ul(0),I(1,"div",6)(2,"div",7),U("click",function(){L(e);let n=p();return G(n.toggleToolInfo())}),I(3,"mat-icon",8),v(4,"info"),h(),I(5,"div",9)(6,"span"),v(7,"Tool Information"),h()(),I(8,"button",10)(9,"mat-icon"),v(10),h()()(),I(11,"div",11)(12,"div",12)(13,"div",13),v(14),h(),I(15,"div",14),v(16),h()(),I(17,"div",15)(18,"a",16)(19,"mat-icon"),v(20,"open_in_new"),h(),I(21,"span"),v(22,"View Official Documentation"),h()()()()(),Tl()}if(t&2){let e,i,n,o=p();Q(10),ne(o.isToolInfoExpanded?"expand_less":"expand_more"),Q(),_e("expanded",o.isToolInfoExpanded),Q(3),ne((e=o.getToolInfo())==null?null:e.shortDescription),Q(2),ne((i=o.getToolInfo())==null?null:i.detailedDescription),Q(2),H("href",(n=o.getToolInfo())==null?null:n.docLink,wo)}}function xve(t,A){t&1&&(I(0,"mat-hint",19),v(1," Start with a letter or underscore, and contain only letters, digits, and underscores. "),h())}function Rve(t,A){if(t&1){let e=ae();I(0,"mat-form-field",2)(1,"mat-label"),v(2),h(),I(3,"input",17),Fi("ngModelChange",function(n){L(e);let o=p();return vi(o.inputValue,n)||(o.inputValue=n),G(n)}),U("keydown",function(n){L(e);let o=p();return G(o.onKeyDown(n))}),h(),Nt(4,xve,2,0,"mat-hint",18),h()}if(t&2){let e=p();Q(2),ne(e.data.inputLabel||"Input"),Q(),Ni("ngModel",e.inputValue),H("placeholder",e.data.inputPlaceholder||"Enter value"),Q(),H("ngIf",!e.isInputValid())}}var Og=class t{constructor(A,e){this.dialogRef=A;this.data=e;this.inputValue=e.inputValue||""}inputValue="";isToolInfoExpanded=!1;isInputValid(){let A=this.inputValue.trim();return!(!A||!/^[a-zA-Z_]/.test(A)||!/^[a-zA-Z_][a-zA-Z0-9_]*$/.test(A))}onCancel(){this.dialogRef.close()}onConfirm(){if(this.data.showInput){let A=this.inputValue.trim();if(!this.isInputValid())return;this.dialogRef.close(A)}else this.dialogRef.close("confirm")}onKeyDown(A){A.key==="Enter"&&this.data.showInput&&this.onConfirm()}getToolInfo(){if(this.data.toolType)return Qg.getToolDetailedInfo(this.data.toolType)}toggleToolInfo(){this.isToolInfoExpanded=!this.isToolInfoExpanded}static \u0275fac=function(e){return new(e||t)(dt(Pn),dt(Do))};static \u0275cmp=De({type:t,selectors:[["app-confirmation-dialog"]],decls:12,vars:6,consts:[["mat-dialog-title",""],[4,"ngIf"],[2,"width","100%","margin-top","16px"],["align","end"],["mat-button","",3,"click"],["mat-button","","color","primary","cdkFocusInitial","",3,"click","disabled"],[1,"tool-info-container"],[1,"tool-info-header",3,"click"],[1,"tool-info-icon"],[1,"tool-info-title"],["mat-icon-button","","type","button","aria-label","Toggle tool information",1,"tool-info-toggle"],[1,"tool-info-body"],[1,"tool-info-content"],[1,"tool-info-short"],[1,"tool-info-detailed"],[1,"tool-info-link-container"],["target","_blank","rel","noopener noreferrer",1,"tool-info-link",3,"href"],["matInput","","cdkFocusInitial","",3,"ngModelChange","keydown","ngModel","placeholder"],["style","font-size: 11px; color: #666;",4,"ngIf"],[2,"font-size","11px","color","#666"]],template:function(e,i){e&1&&(I(0,"h2",0),v(1),h(),I(2,"mat-dialog-content"),Nt(3,_ve,23,6,"ng-container",1),I(4,"p"),v(5),h(),T(6,Rve,5,4,"mat-form-field",2),h(),I(7,"mat-dialog-actions",3)(8,"button",4),U("click",function(){return i.onCancel()}),v(9,"Cancel"),h(),I(10,"button",5),U("click",function(){return i.onConfirm()}),v(11),h()()),e&2&&(Q(),ne(i.data.title),Q(2),H("ngIf",i.data.showToolInfo&&i.getToolInfo()),Q(2),ne(i.data.message),Q(),O(i.data.showInput?6:-1),Q(4),H("disabled",i.data.showInput&&!i.isInputValid()),Q(),pA(" ",i.data.confirmButtonText||"Confirm"," "))},dependencies:[Ci,cc,Wi,xi,Di,Vt,ea,pa,ma,ir,$o,Ks,EI,al,Fa,wn,Kn,Un,Po],styles:["mat-dialog-content[_ngcontent-%COMP%]{padding:20px 24px;display:flex;flex-direction:column;gap:16px;color:var(--mdc-dialog-supporting-text-color)}mat-dialog-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)}.tool-info-container[_ngcontent-%COMP%]{border:1px solid rgba(138,180,248,.2);border-radius:8px;padding:16px;margin-bottom:16px}.tool-info-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.tool-info-header[_ngcontent-%COMP%]:hover .tool-info-title[_ngcontent-%COMP%]{color:#a7c8ff}.tool-info-icon[_ngcontent-%COMP%]{color:#8ab4f8;font-size:20px;width:20px;height:20px;flex-shrink:0}.tool-info-title[_ngcontent-%COMP%]{flex:1;font-weight:500;color:#8ab4f8;font-size:14px;transition:color .2s ease}.tool-info-toggle[_ngcontent-%COMP%]{color:#8ab4f8;margin:-8px}.tool-info-toggle[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{transition:transform .2s ease}.tool-info-body[_ngcontent-%COMP%]{max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .2s ease,margin-top .3s ease}.tool-info-body.expanded[_ngcontent-%COMP%]{max-height:500px;opacity:1;margin-top:12px}.tool-info-content[_ngcontent-%COMP%]{flex:1}.tool-info-short[_ngcontent-%COMP%]{font-weight:500;color:var(--mdc-dialog-supporting-text-color)!important;margin-bottom:8px;line-height:1.4}.tool-info-detailed[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;font-size:14px;line-height:1.5}.tool-info-link-container[_ngcontent-%COMP%]{margin-top:12px}.tool-info-link[_ngcontent-%COMP%]{color:#8ab4f8;text-decoration:none;font-size:14px;display:inline-flex;align-items:center;gap:4px;transition:color .2s ease}.tool-info-link[_ngcontent-%COMP%]:hover{color:#a7c8ff}.tool-info-link[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}"]})};var xne=["*",[["mat-chip-avatar"],["","matChipAvatar",""]],[["mat-chip-trailing-icon"],["","matChipRemove",""],["","matChipTrailingIcon",""]]],Rne=["*","mat-chip-avatar, [matChipAvatar]","mat-chip-trailing-icon,[matChipRemove],[matChipTrailingIcon]"];function Nve(t,A){t&1&&(I(0,"span",3),tt(1,1),h())}function Fve(t,A){t&1&&(I(0,"span",6),tt(1,2),h())}function Lve(t,A){t&1&&(I(0,"span",3),tt(1,1),I(2,"span",7),mt(),I(3,"svg",8),le(4,"path",9),h()()())}function Gve(t,A){t&1&&(I(0,"span",6),tt(1,2),h())}var Kve=`.mdc-evolution-chip,.mdc-evolution-chip__cell,.mdc-evolution-chip__action{display:inline-flex;align-items:center}.mdc-evolution-chip{position:relative;max-width:100%}.mdc-evolution-chip__cell,.mdc-evolution-chip__action{height:100%}.mdc-evolution-chip__cell--primary{flex-basis:100%;overflow-x:hidden}.mdc-evolution-chip__cell--trailing{flex:1 0 auto}.mdc-evolution-chip__action{align-items:center;background:none;border:none;box-sizing:content-box;cursor:pointer;display:inline-flex;justify-content:center;outline:none;padding:0;text-decoration:none;color:inherit}.mdc-evolution-chip__action--presentational{cursor:auto}.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{pointer-events:none}@media(forced-colors: active){.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{forced-color-adjust:none}}.mdc-evolution-chip__action--primary{font:inherit;letter-spacing:inherit;white-space:inherit;overflow-x:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-outline-width, 1px);border-radius:var(--mat-chip-container-shape-radius, 8px);box-sizing:border-box;content:"";height:100%;left:0;position:absolute;pointer-events:none;top:0;width:100%;z-index:1;border-style:solid}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-outline-color, var(--mat-sys-outline))}.mdc-evolution-chip__action--primary:not(.mdc-evolution-chip__action--presentational):not(.mdc-ripple-upgraded):focus::before{border-color:var(--mat-chip-focus-outline-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-basic-chip .mdc-evolution-chip__action--primary{font:inherit}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip__action--secondary{position:relative;overflow:visible}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip__text-label{-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__text-label{font-family:var(--mat-chip-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-chip-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-chip-label-text-size, var(--mat-sys-label-large-size));font-weight:var(--mat-chip-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-chip-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-label-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label,.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label{color:var(--mat-chip-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-evolution-chip__graphic{align-items:center;display:inline-flex;justify-content:center;overflow:hidden;pointer-events:none;position:relative;flex:1 0 auto}.mat-mdc-standard-chip .mdc-evolution-chip__graphic{width:var(--mat-chip-with-avatar-avatar-size, 24px);height:var(--mat-chip-with-avatar-avatar-size, 24px);font-size:var(--mat-chip-with-avatar-avatar-size, 24px)}.mdc-evolution-chip--selecting .mdc-evolution-chip__graphic{transition:width 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selectable:not(.mdc-evolution-chip--selected):not(.mdc-evolution-chip--with-primary-icon) .mdc-evolution-chip__graphic{width:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__graphic{padding-left:0}.mdc-evolution-chip__checkmark{position:absolute;opacity:0;top:50%;left:50%;height:20px;width:20px}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark{transition:transform 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1);transform:translate(-75%, -50%)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{transform:translate(-50%, -50%);opacity:1}.mdc-evolution-chip__checkmark-svg{display:block}.mdc-evolution-chip__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385;stroke-dashoffset:29.7833385;stroke:currentColor}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark-path{transition:stroke-dashoffset 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark-path{stroke-dashoffset:0}@media(forced-colors: active){.mdc-evolution-chip__checkmark-path{stroke:CanvasText !important}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--trailing{height:18px;width:18px;font-size:18px}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove{opacity:calc(var(--mat-chip-trailing-action-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove:focus{opacity:calc(var(--mat-chip-trailing-action-focus-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mat-mdc-standard-chip{border-radius:var(--mat-chip-container-shape-radius, 8px);height:var(--mat-chip-container-height, 32px)}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-container-color, transparent)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{background-color:var(--mat-chip-elevated-disabled-container-color)}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled{background-color:var(--mat-chip-flat-disabled-selected-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}@media(forced-colors: active){.mat-mdc-standard-chip{outline:solid 1px}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--primary{border-radius:var(--mat-chip-with-avatar-avatar-shape-radius, 24px);width:var(--mat-chip-with-icon-icon-size, 18px);height:var(--mat-chip-with-icon-icon-size, 18px);font-size:var(--mat-chip-with-icon-icon-size, 18px)}.mdc-evolution-chip--selected .mdc-evolution-chip__icon--primary{opacity:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-highlighted{--mat-chip-with-icon-icon-color: var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container));--mat-chip-elevated-container-color: var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container));--mat-chip-label-text-color: var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container));--mat-chip-outline-width: var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-selected .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-hover-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-focus-overlay .mat-mdc-chip-selected:hover,.mat-mdc-chip-highlighted:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-hover-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected.cdk-focused .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-evolution-chip--disabled:not(.mdc-evolution-chip--selected) .mat-mdc-chip-avatar{opacity:var(--mat-chip-with-avatar-disabled-avatar-opacity, 0.38)}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{opacity:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38)}.mdc-evolution-chip--disabled.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{opacity:var(--mat-chip-with-icon-disabled-icon-opacity, 0.38)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{opacity:var(--mat-chip-disabled-container-opacity, 1)}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-trailing-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-edit,.mat-mdc-chip-remove{opacity:var(--mat-chip-trailing-action-opacity, 1)}.mat-mdc-chip-edit:focus,.mat-mdc-chip-remove:focus{opacity:var(--mat-chip-trailing-action-focus-opacity, 1)}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{background-color:var(--mat-chip-trailing-action-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-edit:hover::after,.mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-chip-edit:focus::after,.mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip-selected .mat-mdc-chip-remove::after,.mat-mdc-chip-highlighted .mat-mdc-chip-remove::after{background-color:var(--mat-chip-selected-trailing-action-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:focus::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:hover::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-standard-chip{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-standard-chip .mat-mdc-chip-graphic,.mat-mdc-standard-chip .mat-mdc-chip-trailing-icon{box-sizing:content-box}.mat-mdc-standard-chip._mat-animation-noopable,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__graphic,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark-path{transition-duration:1ms;animation-duration:1ms}.mat-mdc-chip-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity 150ms linear}._mat-animation-noopable .mat-mdc-chip-focus-overlay{transition:none}.mat-mdc-basic-chip .mat-mdc-chip-focus-overlay{display:none}.mat-mdc-chip .mat-ripple.mat-mdc-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-chip-avatar{text-align:center;line-height:1;color:var(--mat-chip-with-icon-icon-color, currentColor)}.mat-mdc-chip{position:relative;z-index:0}.mat-mdc-chip-action-label{text-align:left;z-index:1}[dir=rtl] .mat-mdc-chip-action-label{text-align:right}.mat-mdc-chip.mdc-evolution-chip--with-trailing-action .mat-mdc-chip-action-label{position:relative}.mat-mdc-chip-action-label .mat-mdc-chip-primary-focus-indicator{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mat-mdc-chip-action-label .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-chip-edit::before,.mat-mdc-chip-remove::before{margin:calc(var(--mat-focus-indicator-border-width, 3px)*-1);left:8px;right:8px}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{content:"";display:block;opacity:0;position:absolute;top:-3px;bottom:-3px;left:5px;right:5px;border-radius:50%;box-sizing:border-box;padding:12px;margin:-12px;background-clip:content-box}.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{width:18px;height:18px;font-size:18px;box-sizing:content-box}.mat-chip-edit-input{cursor:text;display:inline-block;color:inherit;outline:0}@media(forced-colors: active){.mat-mdc-chip-selected:not(.mat-mdc-chip-multiple){outline-width:3px}}.mat-mdc-chip-action:focus-visible .mat-focus-indicator::before{content:""}.mdc-evolution-chip__icon,.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{min-height:fit-content}img.mdc-evolution-chip__icon{min-height:0} +`;var Nne=["*"],Uve=`.mat-mdc-chip-set{display:flex}.mat-mdc-chip-set:focus{outline:none}.mat-mdc-chip-set .mdc-evolution-chip-set__chips{min-width:100%;margin-left:-8px;margin-right:0}.mat-mdc-chip-set .mdc-evolution-chip{margin:4px 0 4px 8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip-set__chips{margin-left:0;margin-right:-8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip{margin-left:0;margin-right:8px}.mdc-evolution-chip-set__chips{display:flex;flex-flow:wrap;min-width:0}.mat-mdc-chip-set-stacked{flex-direction:column;align-items:flex-start}.mat-mdc-chip-set-stacked .mat-mdc-chip{width:100%}.mat-mdc-chip-set-stacked .mdc-evolution-chip__graphic{flex-grow:0}.mat-mdc-chip-set-stacked .mdc-evolution-chip__action--primary{flex-basis:100%;justify-content:start}input.mat-mdc-chip-input{flex:1 0 150px;margin-left:8px}[dir=rtl] input.mat-mdc-chip-input{margin-left:0;margin-right:8px}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-moz-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-webkit-input-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input:-ms-input-placeholder{opacity:1}.mat-mdc-chip-set+input.mat-mdc-chip-input{margin-left:0;margin-right:0} +`,OF=new Me("mat-chips-default-options",{providedIn:"root",factory:()=>({separatorKeyCodes:[13]})}),KF=new Me("MatChipAvatar"),kne=new Me("MatChipTrailingIcon"),_ne=new Me("MatChipEdit"),UF=new Me("MatChipRemove"),JF=new Me("MatChip"),Fne=(()=>{class t{_elementRef=w(dA);_parentChip=w(JF);_isPrimary=!0;_isLeading=!1;get disabled(){return this._disabled||this._parentChip?.disabled||!1}set disabled(e){this._disabled=e}_disabled=!1;tabIndex=-1;_allowFocusWhenDisabled=!1;_getDisabledAttribute(){return this.disabled&&!this._allowFocusWhenDisabled?"":null}constructor(){w(Eo).load(yr),this._elementRef.nativeElement.nodeName==="BUTTON"&&this._elementRef.nativeElement.setAttribute("type","button")}focus(){this._elementRef.nativeElement.focus()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matChipContent",""]],hostAttrs:[1,"mat-mdc-chip-action","mdc-evolution-chip__action","mdc-evolution-chip__action--presentational"],hostVars:8,hostBindings:function(i,n){i&2&&(aA("disabled",n._getDisabledAttribute())("aria-disabled",n.disabled),_e("mdc-evolution-chip__action--primary",n._isPrimary)("mdc-evolution-chip__action--secondary",!n._isPrimary)("mdc-evolution-chip__action--trailing",!n._isPrimary&&!n._isLeading))},inputs:{disabled:[2,"disabled","disabled",mA],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?-1:Dn(e)],_allowFocusWhenDisabled:"_allowFocusWhenDisabled"}})}return t})(),zF=(()=>{class t extends Fne{_getTabindex(){return this.disabled&&!this._allowFocusWhenDisabled?null:this.tabIndex.toString()}_handleClick(e){!this.disabled&&this._isPrimary&&(e.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}_handleKeydown(e){(e.keyCode===13||e.keyCode===32)&&!this.disabled&&this._isPrimary&&!this._parentChip._isEditing&&(e.preventDefault(),this._parentChip._handlePrimaryActionInteraction())}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","matChipAction",""]],hostVars:3,hostBindings:function(i,n){i&1&&U("click",function(a){return n._handleClick(a)})("keydown",function(a){return n._handleKeydown(a)}),i&2&&(aA("tabindex",n._getTabindex()),_e("mdc-evolution-chip__action--presentational",!1))},features:[_t]})}return t})(),Lne=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["mat-chip-avatar"],["","matChipAvatar",""]],hostAttrs:["role","img",1,"mat-mdc-chip-avatar","mdc-evolution-chip__icon","mdc-evolution-chip__icon--primary"],features:[yt([{provide:KF,useExisting:t}])]})}return t})();var Gne=(()=>{class t extends zF{_isPrimary=!1;_handleClick(e){this.disabled||(e.stopPropagation(),e.preventDefault(),this._parentChip.remove())}_handleKeydown(e){(e.keyCode===13||e.keyCode===32)&&!this.disabled&&(e.stopPropagation(),e.preventDefault(),this._parentChip.remove())}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","matChipRemove",""]],hostAttrs:["role","button",1,"mat-mdc-chip-remove","mat-mdc-chip-trailing-icon","mat-focus-indicator","mdc-evolution-chip__icon","mdc-evolution-chip__icon--trailing"],hostVars:1,hostBindings:function(i,n){i&2&&aA("aria-hidden",null)},features:[yt([{provide:UF,useExisting:t}]),_t]})}return t})(),vm=(()=>{class t{_changeDetectorRef=w(xt);_elementRef=w(dA);_tagName=w(kJ);_ngZone=w(At);_focusMonitor=w(dr);_globalRippleOptions=w(md,{optional:!0});_document=w(Ii);_onFocus=new rA;_onBlur=new rA;_isBasicChip=!1;role=null;_hasFocusInternal=!1;_pendingFocus=!1;_actionChanges;_animationsDisabled=hn();_allLeadingIcons;_allTrailingIcons;_allEditIcons;_allRemoveIcons;_hasFocus(){return this._hasFocusInternal}id=w(bn).getId("mat-mdc-chip-");ariaLabel=null;ariaDescription=null;_chipListDisabled=!1;_hadFocusOnRemove=!1;_textElement;get value(){return this._value!==void 0?this._value:this._textElement.textContent.trim()}set value(e){this._value=e}_value;color;removable=!0;highlighted=!1;disableRipple=!1;get disabled(){return this._disabled||this._chipListDisabled}set disabled(e){this._disabled=e}_disabled=!1;removed=new Le;destroyed=new Le;basicChipAttrName="mat-basic-chip";leadingIcon;editIcon;trailingIcon;removeIcon;primaryAction;_rippleLoader=w(y3);_injector=w(Rt);constructor(){let e=w(Eo);e.load(yr),e.load(Qd),this._monitorFocus(),this._rippleLoader?.configureRipple(this._elementRef.nativeElement,{className:"mat-mdc-chip-ripple",disabled:this._isRippleDisabled()})}ngOnInit(){this._isBasicChip=this._elementRef.nativeElement.hasAttribute(this.basicChipAttrName)||this._tagName.toLowerCase()===this.basicChipAttrName}ngAfterViewInit(){this._textElement=this._elementRef.nativeElement.querySelector(".mat-mdc-chip-action-label"),this._pendingFocus&&(this._pendingFocus=!1,this.focus())}ngAfterContentInit(){this._actionChanges=Zi(this._allLeadingIcons.changes,this._allTrailingIcons.changes,this._allEditIcons.changes,this._allRemoveIcons.changes).subscribe(()=>this._changeDetectorRef.markForCheck())}ngDoCheck(){this._rippleLoader.setDisabled(this._elementRef.nativeElement,this._isRippleDisabled())}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef),this._rippleLoader?.destroyRipple(this._elementRef.nativeElement),this._actionChanges?.unsubscribe(),this.destroyed.emit({chip:this}),this.destroyed.complete()}remove(){this.removable&&(this._hadFocusOnRemove=this._hasFocus(),this.removed.emit({chip:this}))}_isRippleDisabled(){return this.disabled||this.disableRipple||this._animationsDisabled||this._isBasicChip||!this._hasInteractiveActions()||!!this._globalRippleOptions?.disabled}_hasTrailingIcon(){return!!(this.trailingIcon||this.removeIcon)}_handleKeydown(e){(e.keyCode===8&&!e.repeat||e.keyCode===46)&&(e.preventDefault(),this.remove())}focus(){this.disabled||(this.primaryAction?this.primaryAction.focus():this._pendingFocus=!0)}_getSourceAction(e){return this._getActions().find(i=>{let n=i._elementRef.nativeElement;return n===e||n.contains(e)})}_getActions(){let e=[];return this.editIcon&&e.push(this.editIcon),this.primaryAction&&e.push(this.primaryAction),this.removeIcon&&e.push(this.removeIcon),e}_handlePrimaryActionInteraction(){}_hasInteractiveActions(){return this._getActions().length>0}_edit(e){}_monitorFocus(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{let i=e!==null;i!==this._hasFocusInternal&&(this._hasFocusInternal=i,i?this._onFocus.next({chip:this}):(this._changeDetectorRef.markForCheck(),setTimeout(()=>this._ngZone.run(()=>this._onBlur.next({chip:this})))))})}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-basic-chip"],["","mat-basic-chip",""],["mat-chip"],["","mat-chip",""]],contentQueries:function(i,n,o){if(i&1&&ga(o,KF,5)(o,_ne,5)(o,kne,5)(o,UF,5)(o,KF,5)(o,kne,5)(o,_ne,5)(o,UF,5),i&2){let a;cA(a=gA())&&(n.leadingIcon=a.first),cA(a=gA())&&(n.editIcon=a.first),cA(a=gA())&&(n.trailingIcon=a.first),cA(a=gA())&&(n.removeIcon=a.first),cA(a=gA())&&(n._allLeadingIcons=a),cA(a=gA())&&(n._allTrailingIcons=a),cA(a=gA())&&(n._allEditIcons=a),cA(a=gA())&&(n._allRemoveIcons=a)}},viewQuery:function(i,n){if(i&1&&$t(zF,5),i&2){let o;cA(o=gA())&&(n.primaryAction=o.first)}},hostAttrs:[1,"mat-mdc-chip"],hostVars:31,hostBindings:function(i,n){i&1&&U("keydown",function(a){return n._handleKeydown(a)}),i&2&&(Ra("id",n.id),aA("role",n.role)("aria-label",n.ariaLabel),Ao("mat-"+(n.color||"primary")),_e("mdc-evolution-chip",!n._isBasicChip)("mdc-evolution-chip--disabled",n.disabled)("mdc-evolution-chip--with-trailing-action",n._hasTrailingIcon())("mdc-evolution-chip--with-primary-graphic",n.leadingIcon)("mdc-evolution-chip--with-primary-icon",n.leadingIcon)("mdc-evolution-chip--with-avatar",n.leadingIcon)("mat-mdc-chip-with-avatar",n.leadingIcon)("mat-mdc-chip-highlighted",n.highlighted)("mat-mdc-chip-disabled",n.disabled)("mat-mdc-basic-chip",n._isBasicChip)("mat-mdc-standard-chip",!n._isBasicChip)("mat-mdc-chip-with-trailing-icon",n._hasTrailingIcon())("_mat-animation-noopable",n._animationsDisabled))},inputs:{role:"role",id:"id",ariaLabel:[0,"aria-label","ariaLabel"],ariaDescription:[0,"aria-description","ariaDescription"],value:"value",color:"color",removable:[2,"removable","removable",mA],highlighted:[2,"highlighted","highlighted",mA],disableRipple:[2,"disableRipple","disableRipple",mA],disabled:[2,"disabled","disabled",mA]},outputs:{removed:"removed",destroyed:"destroyed"},exportAs:["matChip"],features:[yt([{provide:JF,useExisting:t}])],ngContentSelectors:Rne,decls:8,vars:2,consts:[[1,"mat-mdc-chip-focus-overlay"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--primary"],["matChipContent",""],[1,"mdc-evolution-chip__graphic","mat-mdc-chip-graphic"],[1,"mdc-evolution-chip__text-label","mat-mdc-chip-action-label"],[1,"mat-mdc-chip-primary-focus-indicator","mat-focus-indicator"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--trailing"]],template:function(i,n){i&1&&(Yt(xne),le(0,"span",0),I(1,"span",1)(2,"span",2),T(3,Nve,2,0,"span",3),I(4,"span",4),tt(5),le(6,"span",5),h()()(),T(7,Fve,2,0,"span",6)),i&2&&(Q(3),O(n.leadingIcon?3:-1),Q(4),O(n._hasTrailingIcon()?7:-1))},dependencies:[Fne],styles:[`.mdc-evolution-chip,.mdc-evolution-chip__cell,.mdc-evolution-chip__action{display:inline-flex;align-items:center}.mdc-evolution-chip{position:relative;max-width:100%}.mdc-evolution-chip__cell,.mdc-evolution-chip__action{height:100%}.mdc-evolution-chip__cell--primary{flex-basis:100%;overflow-x:hidden}.mdc-evolution-chip__cell--trailing{flex:1 0 auto}.mdc-evolution-chip__action{align-items:center;background:none;border:none;box-sizing:content-box;cursor:pointer;display:inline-flex;justify-content:center;outline:none;padding:0;text-decoration:none;color:inherit}.mdc-evolution-chip__action--presentational{cursor:auto}.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{pointer-events:none}@media(forced-colors: active){.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{forced-color-adjust:none}}.mdc-evolution-chip__action--primary{font:inherit;letter-spacing:inherit;white-space:inherit;overflow-x:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-outline-width, 1px);border-radius:var(--mat-chip-container-shape-radius, 8px);box-sizing:border-box;content:"";height:100%;left:0;position:absolute;pointer-events:none;top:0;width:100%;z-index:1;border-style:solid}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-outline-color, var(--mat-sys-outline))}.mdc-evolution-chip__action--primary:not(.mdc-evolution-chip__action--presentational):not(.mdc-ripple-upgraded):focus::before{border-color:var(--mat-chip-focus-outline-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--primary::before{border-color:var(--mat-chip-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__action--primary::before{border-width:var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-basic-chip .mdc-evolution-chip__action--primary{font:inherit}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-leading-action.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip__action--secondary{position:relative;overflow:visible}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--secondary{color:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--secondary{padding-left:8px;padding-right:8px}.mdc-evolution-chip__text-label{-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__text-label{font-family:var(--mat-chip-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mat-chip-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mat-chip-label-text-size, var(--mat-sys-label-large-size));font-weight:var(--mat-chip-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mat-chip-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-label-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label,.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label{color:var(--mat-chip-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-evolution-chip__graphic{align-items:center;display:inline-flex;justify-content:center;overflow:hidden;pointer-events:none;position:relative;flex:1 0 auto}.mat-mdc-standard-chip .mdc-evolution-chip__graphic{width:var(--mat-chip-with-avatar-avatar-size, 24px);height:var(--mat-chip-with-avatar-avatar-size, 24px);font-size:var(--mat-chip-with-avatar-avatar-size, 24px)}.mdc-evolution-chip--selecting .mdc-evolution-chip__graphic{transition:width 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selectable:not(.mdc-evolution-chip--selected):not(.mdc-evolution-chip--with-primary-icon) .mdc-evolution-chip__graphic{width:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-leading-action .mdc-evolution-chip__graphic{padding-left:0}.mdc-evolution-chip__checkmark{position:absolute;opacity:0;top:50%;left:50%;height:20px;width:20px}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__checkmark{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark{transition:transform 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1);transform:translate(-75%, -50%)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{transform:translate(-50%, -50%);opacity:1}.mdc-evolution-chip__checkmark-svg{display:block}.mdc-evolution-chip__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385;stroke-dashoffset:29.7833385;stroke:currentColor}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark-path{transition:stroke-dashoffset 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark-path{stroke-dashoffset:0}@media(forced-colors: active){.mdc-evolution-chip__checkmark-path{stroke:CanvasText !important}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--trailing{height:18px;width:18px;font-size:18px}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove{opacity:calc(var(--mat-chip-trailing-action-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove:focus{opacity:calc(var(--mat-chip-trailing-action-focus-opacity, 1)*var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mat-mdc-standard-chip{border-radius:var(--mat-chip-container-shape-radius, 8px);height:var(--mat-chip-container-height, 32px)}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-container-color, transparent)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{background-color:var(--mat-chip-elevated-disabled-container-color)}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled){background-color:var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled{background-color:var(--mat-chip-flat-disabled-selected-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}@media(forced-colors: active){.mat-mdc-standard-chip{outline:solid 1px}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--primary{border-radius:var(--mat-chip-with-avatar-avatar-shape-radius, 24px);width:var(--mat-chip-with-icon-icon-size, 18px);height:var(--mat-chip-with-icon-icon-size, 18px);font-size:var(--mat-chip-with-icon-icon-size, 18px)}.mdc-evolution-chip--selected .mdc-evolution-chip__icon--primary{opacity:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--primary{color:var(--mat-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-highlighted{--mat-chip-with-icon-icon-color: var(--mat-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container));--mat-chip-elevated-container-color: var(--mat-chip-elevated-selected-container-color, var(--mat-sys-secondary-container));--mat-chip-label-text-color: var(--mat-chip-selected-label-text-color, var(--mat-sys-on-secondary-container));--mat-chip-outline-width: var(--mat-chip-flat-selected-outline-width, 0)}.mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-selected .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-hover-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-focus-overlay .mat-mdc-chip-selected:hover,.mat-mdc-chip-highlighted:hover .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-hover-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mat-chip-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected.cdk-focused .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mat-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-evolution-chip--disabled:not(.mdc-evolution-chip--selected) .mat-mdc-chip-avatar{opacity:var(--mat-chip-with-avatar-disabled-avatar-opacity, 0.38)}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{opacity:var(--mat-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38)}.mdc-evolution-chip--disabled.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{opacity:var(--mat-chip-with-icon-disabled-icon-opacity, 0.38)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{opacity:var(--mat-chip-disabled-container-opacity, 1)}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-trailing-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-edit,.mat-mdc-chip-remove{opacity:var(--mat-chip-trailing-action-opacity, 1)}.mat-mdc-chip-edit:focus,.mat-mdc-chip-remove:focus{opacity:var(--mat-chip-trailing-action-focus-opacity, 1)}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{background-color:var(--mat-chip-trailing-action-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-edit:hover::after,.mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-chip-edit:focus::after,.mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip-selected .mat-mdc-chip-remove::after,.mat-mdc-chip-highlighted .mat-mdc-chip-remove::after{background-color:var(--mat-chip-selected-trailing-action-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:focus::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:focus::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-edit:hover::after,.mat-mdc-chip.cdk-focused .mat-mdc-chip-remove:hover::after{opacity:calc(var(--mat-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity)) + var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity)))}.mat-mdc-standard-chip{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-standard-chip .mat-mdc-chip-graphic,.mat-mdc-standard-chip .mat-mdc-chip-trailing-icon{box-sizing:content-box}.mat-mdc-standard-chip._mat-animation-noopable,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__graphic,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark-path{transition-duration:1ms;animation-duration:1ms}.mat-mdc-chip-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity 150ms linear}._mat-animation-noopable .mat-mdc-chip-focus-overlay{transition:none}.mat-mdc-basic-chip .mat-mdc-chip-focus-overlay{display:none}.mat-mdc-chip .mat-ripple.mat-mdc-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-chip-avatar{text-align:center;line-height:1;color:var(--mat-chip-with-icon-icon-color, currentColor)}.mat-mdc-chip{position:relative;z-index:0}.mat-mdc-chip-action-label{text-align:left;z-index:1}[dir=rtl] .mat-mdc-chip-action-label{text-align:right}.mat-mdc-chip.mdc-evolution-chip--with-trailing-action .mat-mdc-chip-action-label{position:relative}.mat-mdc-chip-action-label .mat-mdc-chip-primary-focus-indicator{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mat-mdc-chip-action-label .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-chip-edit::before,.mat-mdc-chip-remove::before{margin:calc(var(--mat-focus-indicator-border-width, 3px)*-1);left:8px;right:8px}.mat-mdc-chip-edit::after,.mat-mdc-chip-remove::after{content:"";display:block;opacity:0;position:absolute;top:-3px;bottom:-3px;left:5px;right:5px;border-radius:50%;box-sizing:border-box;padding:12px;margin:-12px;background-clip:content-box}.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{width:18px;height:18px;font-size:18px;box-sizing:content-box}.mat-chip-edit-input{cursor:text;display:inline-block;color:inherit;outline:0}@media(forced-colors: active){.mat-mdc-chip-selected:not(.mat-mdc-chip-multiple){outline-width:3px}}.mat-mdc-chip-action:focus-visible .mat-focus-indicator::before{content:""}.mdc-evolution-chip__icon,.mat-mdc-chip-edit .mat-icon,.mat-mdc-chip-remove .mat-icon{min-height:fit-content}img.mdc-evolution-chip__icon{min-height:0} +`],encapsulation:2,changeDetection:0})}return t})();var YF=(()=>{class t extends vm{_defaultOptions=w(OF,{optional:!0});chipListSelectable=!0;_chipListMultiple=!1;_chipListHideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get selectable(){return this._selectable&&this.chipListSelectable}set selectable(e){this._selectable=e,this._changeDetectorRef.markForCheck()}_selectable=!0;get selected(){return this._selected}set selected(e){this._setSelectedState(e,!1,!0)}_selected=!1;get ariaSelected(){return this.selectable?this.selected.toString():null}basicChipAttrName="mat-basic-chip-option";selectionChange=new Le;ngOnInit(){super.ngOnInit(),this.role="presentation"}select(){this._setSelectedState(!0,!1,!0)}deselect(){this._setSelectedState(!1,!1,!0)}selectViaInteraction(){this._setSelectedState(!0,!0,!0)}toggleSelected(e=!1){return this._setSelectedState(!this.selected,e,!0),this.selected}_handlePrimaryActionInteraction(){this.disabled||(this.focus(),this.selectable&&this.toggleSelected(!0))}_hasLeadingGraphic(){return this.leadingIcon?!0:!this._chipListHideSingleSelectionIndicator||this._chipListMultiple}_setSelectedState(e,i,n){e!==this.selected&&(this._selected=e,n&&this.selectionChange.emit({source:this,isUserInput:i,selected:this.selected}),this._changeDetectorRef.markForCheck())}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275cmp=De({type:t,selectors:[["mat-basic-chip-option"],["","mat-basic-chip-option",""],["mat-chip-option"],["","mat-chip-option",""]],hostAttrs:[1,"mat-mdc-chip","mat-mdc-chip-option"],hostVars:37,hostBindings:function(i,n){i&2&&(Ra("id",n.id),aA("tabindex",null)("aria-label",null)("aria-description",null)("role",n.role),_e("mdc-evolution-chip",!n._isBasicChip)("mdc-evolution-chip--filter",!n._isBasicChip)("mdc-evolution-chip--selectable",!n._isBasicChip)("mat-mdc-chip-selected",n.selected)("mat-mdc-chip-multiple",n._chipListMultiple)("mat-mdc-chip-disabled",n.disabled)("mat-mdc-chip-with-avatar",n.leadingIcon)("mdc-evolution-chip--disabled",n.disabled)("mdc-evolution-chip--selected",n.selected)("mdc-evolution-chip--selecting",!n._animationsDisabled)("mdc-evolution-chip--with-trailing-action",n._hasTrailingIcon())("mdc-evolution-chip--with-primary-icon",n.leadingIcon)("mdc-evolution-chip--with-primary-graphic",n._hasLeadingGraphic())("mdc-evolution-chip--with-avatar",n.leadingIcon)("mat-mdc-chip-highlighted",n.highlighted)("mat-mdc-chip-with-trailing-icon",n._hasTrailingIcon()))},inputs:{selectable:[2,"selectable","selectable",mA],selected:[2,"selected","selected",mA]},outputs:{selectionChange:"selectionChange"},features:[yt([{provide:vm,useExisting:t},{provide:JF,useExisting:t}]),_t],ngContentSelectors:Rne,decls:8,vars:6,consts:[[1,"mat-mdc-chip-focus-overlay"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--primary"],["matChipAction","","role","option",3,"_allowFocusWhenDisabled"],[1,"mdc-evolution-chip__graphic","mat-mdc-chip-graphic"],[1,"mdc-evolution-chip__text-label","mat-mdc-chip-action-label"],[1,"mat-mdc-chip-primary-focus-indicator","mat-focus-indicator"],[1,"mdc-evolution-chip__cell","mdc-evolution-chip__cell--trailing"],[1,"mdc-evolution-chip__checkmark"],["viewBox","-2 -3 30 30","focusable","false","aria-hidden","true",1,"mdc-evolution-chip__checkmark-svg"],["fill","none","stroke","currentColor","d","M1.73,12.91 8.1,19.28 22.79,4.59",1,"mdc-evolution-chip__checkmark-path"]],template:function(i,n){i&1&&(Yt(xne),le(0,"span",0),I(1,"span",1)(2,"button",2),T(3,Lve,5,0,"span",3),I(4,"span",4),tt(5),le(6,"span",5),h()()(),T(7,Gve,2,0,"span",6)),i&2&&(Q(2),H("_allowFocusWhenDisabled",!0),aA("aria-description",n.ariaDescription)("aria-label",n.ariaLabel)("aria-selected",n.ariaSelected),Q(),O(n._hasLeadingGraphic()?3:-1),Q(4),O(n._hasTrailingIcon()?7:-1))},dependencies:[zF],styles:[Kve],encapsulation:2,changeDetection:0})}return t})();var HF=(()=>{class t{_elementRef=w(dA);_changeDetectorRef=w(xt);_dir=w(Fo,{optional:!0});_lastDestroyedFocusedChipIndex=null;_keyManager;_destroyed=new rA;_defaultRole="presentation";get chipFocusChanges(){return this._getChipStream(e=>e._onFocus)}get chipDestroyedChanges(){return this._getChipStream(e=>e.destroyed)}get chipRemovedChanges(){return this._getChipStream(e=>e.removed)}get disabled(){return this._disabled}set disabled(e){this._disabled=e,this._syncChipsState()}_disabled=!1;get empty(){return!this._chips||this._chips.length===0}get role(){return this._explicitRole?this._explicitRole:this.empty?null:this._defaultRole}tabIndex=0;set role(e){this._explicitRole=e}_explicitRole=null;get focused(){return this._hasFocusedChip()}_chips;_chipActions=new Vc;constructor(){}ngAfterViewInit(){this._setUpFocusManagement(),this._trackChipSetChanges(),this._trackDestroyedFocusedChip()}ngOnDestroy(){this._keyManager?.destroy(),this._chipActions.destroy(),this._destroyed.next(),this._destroyed.complete()}_hasFocusedChip(){return this._chips&&this._chips.some(e=>e._hasFocus())}_syncChipsState(){this._chips?.forEach(e=>{e._chipListDisabled=this._disabled,e._changeDetectorRef.markForCheck()})}focus(){}_handleKeydown(e){this._originatesFromChip(e)&&this._keyManager.onKeydown(e)}_isValidIndex(e){return e>=0&&ethis._elementRef.nativeElement.tabIndex=e))}_getChipStream(e){return this._chips.changes.pipe(Yn(null),ki(()=>Zi(...this._chips.map(e))))}_originatesFromChip(e){let i=e.target;for(;i&&i!==this._elementRef.nativeElement;){if(i.classList.contains("mat-mdc-chip"))return!0;i=i.parentElement}return!1}_setUpFocusManagement(){this._chips.changes.pipe(Yn(this._chips)).subscribe(e=>{let i=[];e.forEach(n=>n._getActions().forEach(o=>i.push(o))),this._chipActions.reset(i),this._chipActions.notifyOnChanges()}),this._keyManager=new rC(this._chipActions).withVerticalOrientation().withHorizontalOrientation(this._dir?this._dir.value:"ltr").withHomeAndEnd().skipPredicate(e=>this._skipPredicate(e)),this.chipFocusChanges.pipe(Mt(this._destroyed)).subscribe(({chip:e})=>{let i=e._getSourceAction(document.activeElement);i&&this._keyManager.updateActiveItem(i)}),this._dir?.change.pipe(Mt(this._destroyed)).subscribe(e=>this._keyManager.withHorizontalOrientation(e))}_skipPredicate(e){return e.disabled}_trackChipSetChanges(){this._chips.changes.pipe(Yn(null),Mt(this._destroyed)).subscribe(()=>{this.disabled&&Promise.resolve().then(()=>this._syncChipsState()),this._redirectDestroyedChipFocus()})}_trackDestroyedFocusedChip(){this.chipDestroyedChanges.pipe(Mt(this._destroyed)).subscribe(e=>{let n=this._chips.toArray().indexOf(e.chip),o=e.chip._hasFocus(),a=e.chip._hadFocusOnRemove&&this._keyManager.activeItem&&e.chip._getActions().includes(this._keyManager.activeItem),r=o||a;this._isValidIndex(n)&&r&&(this._lastDestroyedFocusedChipIndex=n)})}_redirectDestroyedChipFocus(){if(this._lastDestroyedFocusedChipIndex!=null){if(this._chips.length){let e=Math.min(this._lastDestroyedFocusedChipIndex,this._chips.length-1),i=this._chips.toArray()[e];i.disabled?this._chips.length===1?this.focus():this._keyManager.setPreviousItemActive():i.focus()}else this.focus();this._lastDestroyedFocusedChipIndex=null}}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-chip-set"]],contentQueries:function(i,n,o){if(i&1&&ga(o,vm,5),i&2){let a;cA(a=gA())&&(n._chips=a)}},hostAttrs:[1,"mat-mdc-chip-set","mdc-evolution-chip-set"],hostVars:1,hostBindings:function(i,n){i&1&&U("keydown",function(a){return n._handleKeydown(a)}),i&2&&aA("role",n.role)},inputs:{disabled:[2,"disabled","disabled",mA],role:"role",tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:Dn(e)]},ngContentSelectors:Nne,decls:2,vars:0,consts:[["role","presentation",1,"mdc-evolution-chip-set__chips"]],template:function(i,n){i&1&&(Yt(),Gn(0,"div",0),tt(1),$n())},styles:[`.mat-mdc-chip-set{display:flex}.mat-mdc-chip-set:focus{outline:none}.mat-mdc-chip-set .mdc-evolution-chip-set__chips{min-width:100%;margin-left:-8px;margin-right:0}.mat-mdc-chip-set .mdc-evolution-chip{margin:4px 0 4px 8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip-set__chips{margin-left:0;margin-right:-8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip{margin-left:0;margin-right:8px}.mdc-evolution-chip-set__chips{display:flex;flex-flow:wrap;min-width:0}.mat-mdc-chip-set-stacked{flex-direction:column;align-items:flex-start}.mat-mdc-chip-set-stacked .mat-mdc-chip{width:100%}.mat-mdc-chip-set-stacked .mdc-evolution-chip__graphic{flex-grow:0}.mat-mdc-chip-set-stacked .mdc-evolution-chip__action--primary{flex-basis:100%;justify-content:start}input.mat-mdc-chip-input{flex:1 0 150px;margin-left:8px}[dir=rtl] input.mat-mdc-chip-input{margin-left:0;margin-right:8px}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-moz-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input::-webkit-input-placeholder{opacity:1}.mat-mdc-form-field:not(.mat-form-field-hide-placeholder) input.mat-mdc-chip-input:-ms-input-placeholder{opacity:1}.mat-mdc-chip-set+input.mat-mdc-chip-input{margin-left:0;margin-right:0} +`],encapsulation:2,changeDetection:0})}return t})(),TF=class{source;value;constructor(A,e){this.source=A,this.value=e}},Tve={provide:us,useExisting:er(()=>PF),multi:!0},PF=(()=>{class t extends HF{_onTouched=()=>{};_onChange=()=>{};_defaultRole="listbox";_defaultOptions=w(OF,{optional:!0});get multiple(){return this._multiple}set multiple(e){this._multiple=e,this._syncListboxProperties()}_multiple=!1;get selected(){let e=this._chips.toArray().filter(i=>i.selected);return this.multiple?e:e[0]}ariaOrientation="horizontal";get selectable(){return this._selectable}set selectable(e){this._selectable=e,this._syncListboxProperties()}_selectable=!0;compareWith=(e,i)=>e===i;required=!1;get hideSingleSelectionIndicator(){return this._hideSingleSelectionIndicator}set hideSingleSelectionIndicator(e){this._hideSingleSelectionIndicator=e,this._syncListboxProperties()}_hideSingleSelectionIndicator=this._defaultOptions?.hideSingleSelectionIndicator??!1;get chipSelectionChanges(){return this._getChipStream(e=>e.selectionChange)}get chipBlurChanges(){return this._getChipStream(e=>e._onBlur)}get value(){return this._value}set value(e){this._chips&&this._chips.length&&this._setSelectionByValue(e,!1),this._value=e}_value;change=new Le;_chips=void 0;ngAfterContentInit(){this._chips.changes.pipe(Yn(null),Mt(this._destroyed)).subscribe(()=>{this.value!==void 0&&Promise.resolve().then(()=>{this._setSelectionByValue(this.value,!1)}),this._syncListboxProperties()}),this.chipBlurChanges.pipe(Mt(this._destroyed)).subscribe(()=>this._blur()),this.chipSelectionChanges.pipe(Mt(this._destroyed)).subscribe(e=>{this.multiple||this._chips.forEach(i=>{i!==e.source&&i._setSelectedState(!1,!1,!1)}),e.isUserInput&&this._propagateChanges()})}focus(){if(this.disabled)return;let e=this._getFirstSelectedChip();e&&!e.disabled?e.focus():this._chips.length>0?this._keyManager.setFirstItemActive():this._elementRef.nativeElement.focus()}writeValue(e){e!=null?this.value=e:this.value=void 0}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}setDisabledState(e){this.disabled=e}_setSelectionByValue(e,i=!0){this._clearSelection(),Array.isArray(e)?e.forEach(n=>this._selectValue(n,i)):this._selectValue(e,i)}_blur(){this.disabled||setTimeout(()=>{this.focused||this._markAsTouched()})}_keydown(e){e.keyCode===9&&super._allowFocusEscape()}_markAsTouched(){this._onTouched(),this._changeDetectorRef.markForCheck()}_propagateChanges(){let e=null;Array.isArray(this.selected)?e=this.selected.map(i=>i.value):e=this.selected?this.selected.value:void 0,this._value=e,this.change.emit(new TF(this,e)),this._onChange(e),this._changeDetectorRef.markForCheck()}_clearSelection(e){this._chips.forEach(i=>{i!==e&&i.deselect()})}_selectValue(e,i){let n=this._chips.find(o=>o.value!=null&&this.compareWith(o.value,e));return n&&(i?n.selectViaInteraction():n.select()),n}_syncListboxProperties(){this._chips&&Promise.resolve().then(()=>{this._chips.forEach(e=>{e._chipListMultiple=this.multiple,e.chipListSelectable=this._selectable,e._chipListHideSingleSelectionIndicator=this.hideSingleSelectionIndicator,e._changeDetectorRef.markForCheck()})})}_getFirstSelectedChip(){return Array.isArray(this.selected)?this.selected.length?this.selected[0]:void 0:this.selected}_skipPredicate(e){return!1}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275cmp=De({type:t,selectors:[["mat-chip-listbox"]],contentQueries:function(i,n,o){if(i&1&&ga(o,YF,5),i&2){let a;cA(a=gA())&&(n._chips=a)}},hostAttrs:[1,"mdc-evolution-chip-set","mat-mdc-chip-listbox"],hostVars:10,hostBindings:function(i,n){i&1&&U("focus",function(){return n.focus()})("blur",function(){return n._blur()})("keydown",function(a){return n._keydown(a)}),i&2&&(Ra("tabIndex",n.disabled||n.empty?-1:n.tabIndex),aA("role",n.role)("aria-required",n.role?n.required:null)("aria-disabled",n.disabled.toString())("aria-multiselectable",n.multiple)("aria-orientation",n.ariaOrientation),_e("mat-mdc-chip-list-disabled",n.disabled)("mat-mdc-chip-list-required",n.required))},inputs:{multiple:[2,"multiple","multiple",mA],ariaOrientation:[0,"aria-orientation","ariaOrientation"],selectable:[2,"selectable","selectable",mA],compareWith:"compareWith",required:[2,"required","required",mA],hideSingleSelectionIndicator:[2,"hideSingleSelectionIndicator","hideSingleSelectionIndicator",mA],value:"value"},outputs:{change:"change"},features:[yt([Tve]),_t],ngContentSelectors:Nne,decls:2,vars:0,consts:[["role","presentation",1,"mdc-evolution-chip-set__chips"]],template:function(i,n){i&1&&(Yt(),Gn(0,"div",0),tt(1),$n())},styles:[Uve],encapsulation:2,changeDetection:0})}return t})();var A5=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({providers:[bB,{provide:OF,useValue:{separatorKeyCodes:[13]}}],imports:[o0,bi]})}return t})();var Une=(()=>{class t{get vertical(){return this._vertical}set vertical(e){this._vertical=Lr(e)}_vertical=!1;get inset(){return this._inset}set inset(e){this._inset=Lr(e)}_inset=!1;static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-divider"]],hostAttrs:["role","separator",1,"mat-divider"],hostVars:7,hostBindings:function(i,n){i&2&&(aA("aria-orientation",n.vertical?"vertical":"horizontal"),_e("mat-divider-vertical",n.vertical)("mat-divider-horizontal",!n.vertical)("mat-divider-inset",n.inset))},inputs:{vertical:"vertical",inset:"inset"},decls:0,vars:0,template:function(i,n){},styles:[`.mat-divider{display:block;margin:0;border-top-style:solid;border-top-color:var(--mat-divider-color, var(--mat-sys-outline-variant));border-top-width:var(--mat-divider-width, 1px)}.mat-divider.mat-divider-vertical{border-top:0;border-right-style:solid;border-right-color:var(--mat-divider-color, var(--mat-sys-outline-variant));border-right-width:var(--mat-divider-width, 1px)}.mat-divider.mat-divider-inset{margin-left:80px}[dir=rtl] .mat-divider.mat-divider-inset{margin-left:auto;margin-right:80px} +`],encapsulation:2,changeDetection:0})}return t})(),Tne=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();var t5=class t{themeService=w(pc);get currentTheme(){return this.themeService.currentTheme()}get themeIcon(){return this.currentTheme==="light"?"dark_mode":"light_mode"}get themeTooltip(){return this.currentTheme==="light"?"Switch to dark mode":"Switch to light mode"}toggleTheme(){this.themeService.toggleTheme()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-theme-toggle"]],decls:3,vars:2,consts:[["mat-icon-button","","aria-label","Toggle theme",1,"theme-toggle-button",3,"click","matTooltip"]],template:function(e,i){e&1&&(I(0,"button",0),U("click",function(){return i.toggleTheme()}),I(1,"mat-icon"),v(2),h()()),e&2&&(H("matTooltip",i.themeTooltip),Q(2),ne(i.themeIcon))},dependencies:[Tn,Vt,Wi,Di,qa,ln],styles:[".theme-toggle-button[_ngcontent-%COMP%]{color:var(--side-panel-mat-icon-color);width:24px;height:24px;padding:0}.theme-toggle-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.theme-toggle-button[_ngcontent-%COMP%]:hover{opacity:.8}.builder-mode-action-button[_nghost-%COMP%] .theme-toggle-button[_ngcontent-%COMP%]{color:var(--builder-text-tertiary-color);border-radius:50%;transition:all .2s ease;margin-right:0!important}.builder-mode-action-button[_nghost-%COMP%] .theme-toggle-button[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);opacity:1}.builder-mode-action-button[_nghost-%COMP%] .theme-toggle-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px}"]})};var One=(t,A)=>A.name;function Jve(t,A){if(t&1&&v(0),t&2){let e=p().$implicit;pA(" AgentTool: ",e.name," ")}}function zve(t,A){if(t&1&&v(0),t&2){let e=p().$implicit;pA(" ",e.name," ")}}function Yve(t,A){t&1&&(I(0,"mat-icon",28),v(1,"chevron_right"),h())}function Hve(t,A){if(t&1){let e=ae();I(0,"div",27),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.selectAgentFromBreadcrumb(n))}),T(1,Jve,1,1)(2,zve,1,1),h(),T(3,Yve,2,0,"mat-icon",28)}if(t&2){let e=A.$implicit,i=A.$index,n=p(2);_e("current-agent",(n.currentSelectedAgent==null?null:n.currentSelectedAgent.name)===e.name),Q(),O(i===0&&n.isInAgentToolContext()?1:2),Q(2),O(i0?0:-1)}}function i5e(t,A){if(t&1){let e=ae();I(0,"div",15)(1,"div",16)(2,"div"),v(3," Tools "),h(),I(4,"div")(5,"button",40,2)(7,"mat-icon"),v(8,"add"),h()(),I(9,"mat-menu",null,3)(11,"button",23),U("click",function(){L(e);let n=p();return G(n.addTool("Function tool"))}),I(12,"span"),v(13,"Function tool"),h()(),I(14,"button",23),U("click",function(){L(e);let n=p();return G(n.addTool("Built-in tool"))}),I(15,"span"),v(16,"Built-in tool"),h()(),I(17,"button",23),U("click",function(){L(e);let n=p();return G(n.createAgentTool())}),I(18,"span"),v(19,"Agent tool"),h()()()()(),T(20,t5e,1,1),Dt(21,"async"),h()}if(t&2){let e,i=Ei(10),n=p();Q(5),H("matMenuTriggerFor",i),Q(6),H("matTooltip",n.toolMenuTooltips("Function tool")),Q(3),H("matTooltip",n.toolMenuTooltips("Built-in tool")),Q(3),H("matTooltip",n.toolMenuTooltips("Agent tool")),Q(3),O((e=Ut(21,5,n.toolsMap$))?20:-1,e)}}function n5e(t,A){if(t&1){let e=ae();I(0,"mat-chip",43),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.selectAgent(n))}),I(1,"mat-icon",44),v(2),h(),I(3,"span",45),v(4),h(),I(5,"button",48),U("click",function(n){let o=L(e).$implicit;return p(2).deleteSubAgent(o.name),G(n.stopPropagation())}),I(6,"mat-icon"),v(7,"cancel"),h()()()}if(t&2){let e=A.$implicit,i=p(2);Q(2),ne(i.getAgentIcon(e.agent_class)),Q(2),ne(e.name)}}function o5e(t,A){if(t&1&&(I(0,"div",20)(1,"mat-chip-set",47),RA(2,n5e,8,2,"mat-chip",42,One),h()()),t&2){let e=p();Q(2),NA(e.agentConfig.sub_agents)}}function a5e(t,A){if(t&1){let e=ae();le(0,"mat-divider"),I(1,"div",22),v(2,"Model (LLM) Interaction"),h(),I(3,"button",23),U("click",function(){L(e);let n=p();return G(n.addCallback("before_model"))}),I(4,"span"),v(5,"Before Model"),h()(),I(6,"button",23),U("click",function(){L(e);let n=p();return G(n.addCallback("after_model"))}),I(7,"span"),v(8,"After Model"),h()(),le(9,"mat-divider"),I(10,"div",22),v(11,"Tool Execution"),h(),I(12,"button",23),U("click",function(){L(e);let n=p();return G(n.addCallback("before_tool"))}),I(13,"span"),v(14,"Before Tool"),h()(),I(15,"button",23),U("click",function(){L(e);let n=p();return G(n.addCallback("after_tool"))}),I(16,"span"),v(17,"After Tool"),h()()}if(t&2){let e=p();Q(3),H("matTooltip",e.callbackMenuTooltips("before_model")),Q(3),H("matTooltip",e.callbackMenuTooltips("after_model")),Q(6),H("matTooltip",e.callbackMenuTooltips("before_tool")),Q(3),H("matTooltip",e.callbackMenuTooltips("after_tool"))}}function r5e(t,A){if(t&1){let e=ae();I(0,"div",52),U("click",function(){let n=L(e).$implicit,o=p(3);return G(o.editCallback(n))}),I(1,"mat-chip",53)(2,"span",54)(3,"span",55),v(4),h(),I(5,"span",56),v(6),h()()(),I(7,"button",57),U("click",function(n){let o=L(e).$implicit,a=p(3);return a.deleteCallback(a.agentConfig.name,o),G(n.stopPropagation())}),I(8,"mat-icon"),v(9,"remove"),h()()()}if(t&2){let e=A.$implicit;Q(4),ne(e.type),Q(2),ne(e.name)}}function s5e(t,A){if(t&1&&(I(0,"div",49)(1,"mat-chip-set",50),RA(2,r5e,10,2,"div",51,ri),h()()),t&2){let e=p(),i=p();Q(2),NA(e.get(i.agentConfig.name))}}function l5e(t,A){if(t&1&&T(0,s5e,4,0,"div",49),t&2){let e=A,i=p();O(i.agentConfig&&e.get(i.agentConfig.name)&&e.get(i.agentConfig.name).length>0?0:-1)}}var i5=class t{CALLBACKS_TAB_INDEX=3;jsonEditorComponent;appNameInput="";exitBuilderMode=new Le;closePanel=new Le;featureFlagService=w(Tr);isAlwaysOnSidePanelEnabledObs=this.featureFlagService.isAlwaysOnSidePanelEnabled();toolArgsString=fe("");editingToolArgs=fe(!1);editingTool=null;selectedTabIndex=0;agentConfig={isRoot:!1,name:"",agent_class:"",model:"",instruction:"",sub_agents:[],tools:[],callbacks:[]};hierarchyPath=[];currentSelectedAgent=void 0;isRootAgentEditable=!0;models=["gemini-2.5-flash","gemini-2.5-pro"];agentTypes=["LlmAgent","LoopAgent","ParallelAgent","SequentialAgent"];agentBuilderService=w(h0);dialog=w(nr);agentService=w(gl);snackBar=w(B0);router=w(ps);cdr=w(xt);selectedTool=void 0;toolAgentName="";toolTypes=["Custom tool","Function tool","Built-in tool","Agent Tool"];editingCallback=null;selectedCallback=void 0;callbackTypes=["before_agent","before_model","before_tool","after_tool","after_model","after_agent"];builtInTools=["EnterpriseWebSearchTool","exit_loop","FilesRetrieval","get_user_choice","google_search","load_artifacts","load_memory","LongRunningFunctionTool","preload_memory","url_context","VertexAiRagRetrieval","VertexAiSearchTool"];builtInToolArgs=new Map([["EnterpriseWebSearchTool",[]],["exit_loop",[]],["FilesRetrieval",["name","description","input_dir"]],["get_user_choice",[]],["google_search",[]],["load_artifacts",[]],["load_memory",[]],["LongRunningFunctionTool",["func"]],["preload_memory",[]],["url_context",[]],["VertexAiRagRetrieval",["name","description","rag_corpora","rag_resources","similarity_top_k","vector_distance_threshold"]],["VertexAiSearchTool",["data_store_id","data_store_specs","search_engine_id","filter","max_results"]]]);header="Select an agent or tool to edit";toolsMap$;callbacksMap$;getJsonStringForEditor(A){if(!A)return"{}";let e=Y({},A);return delete e.skip_summarization,JSON.stringify(e,null,2)}constructor(){this.toolsMap$=this.agentBuilderService.getAgentToolsMap(),this.callbacksMap$=this.agentBuilderService.getAgentCallbacksMap(),this.agentBuilderService.getSelectedNode().subscribe(A=>{this.agentConfig=A,this.currentSelectedAgent=A,A&&(this.editingTool=null,this.editingCallback=null,this.header="Agent configuration",this.updateBreadcrumb(A)),this.cdr.markForCheck()}),this.agentBuilderService.getSelectedTool().subscribe(A=>{this.selectedTool=A,!(A&&A.toolType==="Agent Tool")&&(A?(this.editingTool=A,this.editingToolArgs.set(!1),setTimeout(()=>{let e=A.toolType=="Function tool"?"Function tool":A.name;if(A.toolType=="Function tool"&&!A.name&&(A.name="Function tool"),A.toolType==="Custom tool")A.args||(A.args={}),this.toolArgsString.set(this.getJsonStringForEditor(A.args)),this.editingToolArgs.set(!0);else{let i=this.builtInToolArgs.get(e);if(i){A.args||(A.args={});for(let n of i)A.args&&(A.args[n]="")}this.toolArgsString.set(this.getJsonStringForEditor(A.args)),A.args&&this.getObjectKeys(A.args).length>0&&this.editingToolArgs.set(!0)}this.cdr.markForCheck()}),this.selectedTabIndex=2):this.editingTool=null,this.cdr.markForCheck())}),this.agentBuilderService.getSelectedCallback().subscribe(A=>{this.selectedCallback=A,A?(this.selectCallback(A),this.selectedTabIndex=this.CALLBACKS_TAB_INDEX):this.editingCallback=null,this.cdr.markForCheck()}),this.agentBuilderService.getAgentCallbacks().subscribe(A=>{this.agentConfig&&A&&this.agentConfig.name===A.agentName&&(this.agentConfig=Ye(Y({},this.agentConfig),{callbacks:A.callbacks}),this.cdr.markForCheck())}),this.agentBuilderService.getSideTabChangeRequest().subscribe(A=>{A==="tools"?this.selectedTabIndex=2:A==="config"&&(this.selectedTabIndex=0)})}getObjectKeys(A){return A?Object.keys(A).filter(e=>e!=="skip_summarization"):[]}getCallbacksByType(){let A=new Map;return this.callbackTypes.forEach(e=>{A.set(e,[])}),this.agentConfig?.callbacks&&this.agentConfig.callbacks.forEach(e=>{let i=A.get(e.type);i&&i.push(e)}),A}updateBreadcrumb(A){this.hierarchyPath=this.buildHierarchyPath(A)}buildHierarchyPath(A){let e=[],i=this.findContextualRoot(A);return i?A.name===i.name?[i]:this.findPathToAgent(i,A,[i])||[A]:[A]}isInAgentToolContext(){return!this.hierarchyPath||this.hierarchyPath.length===0?!1:this.hierarchyPath[0]?.isAgentTool===!0}findContextualRoot(A){if(A.isAgentTool)return A;let e=this.agentBuilderService.getNodes();for(let n of e)if(n.isAgentTool&&this.findPathToAgent(n,A,[n]))return n;let i=this.agentBuilderService.getRootNode();if(i&&this.findPathToAgent(i,A,[i]))return i;if(A.isRoot)return A;for(let n of e)if(n.isRoot&&this.findPathToAgent(n,A,[n]))return n;return i}findPathToAgent(A,e,i){if(A.name===e.name)return i;for(let n of A.sub_agents){let o=[...i,n],a=this.findPathToAgent(n,e,o);if(a)return a}return null}selectAgentFromBreadcrumb(A){this.agentBuilderService.setSelectedNode(A),this.selectedTabIndex=0}selectAgent(A){this.agentBuilderService.setSelectedNode(A),this.selectedTabIndex=0}selectTool(A){if(A.toolType==="Agent Tool"){let e=A.name;this.agentBuilderService.requestNewTab(e);return}if(A.toolType==="Function tool"||A.toolType==="Built-in tool"){this.editTool(A);return}this.agentBuilderService.setSelectedTool(A)}editTool(A){if(!this.agentConfig)return;let e;A.toolType==="Built-in tool"?e=this.dialog.open(K1,{width:"700px",maxWidth:"90vw",data:{toolName:A.name,isEditMode:!0,toolArgs:A.args}}):e=this.dialog.open(Td,{width:"500px",data:{toolType:A.toolType,toolName:A.name,isEditMode:!0}}),e.afterClosed().subscribe(i=>{if(i&&i.isEditMode){let n=this.agentConfig.tools?.findIndex(o=>o.name===A.name);n!==void 0&&n!==-1&&this.agentConfig.tools&&(this.agentConfig.tools[n].name=i.name,i.args&&(this.agentConfig.tools[n].args=i.args),this.agentBuilderService.setAgentTools(this.agentConfig.name,this.agentConfig.tools))}})}addTool(A){if(this.agentConfig){let e;A==="Built-in tool"?e=this.dialog.open(K1,{width:"700px",maxWidth:"90vw",data:{}}):e=this.dialog.open(Td,{width:"500px",data:{toolType:A}}),e.afterClosed().subscribe(i=>{if(i){let n={toolType:i.toolType,name:i.name};this.agentBuilderService.addTool(this.agentConfig.name,n),this.agentBuilderService.setSelectedTool(n)}})}}addCallback(A){if(this.agentConfig){let e=this.agentConfig?.callbacks?.map(n=>n.name)??[];this.dialog.open(Fp,{width:"500px",data:{callbackType:A,existingCallbackNames:e}}).afterClosed().subscribe(n=>{if(n){let o={name:n.name,type:n.type};this.agentBuilderService.addCallback(this.agentConfig.name,o)}})}}editCallback(A){if(!this.agentConfig)return;let e=this.agentConfig.callbacks?.map(n=>n.name)??[];this.dialog.open(Fp,{width:"500px",data:{callbackType:A.type,existingCallbackNames:e,isEditMode:!0,callback:A,availableCallbackTypes:this.callbackTypes}}).afterClosed().subscribe(n=>{if(n&&n.isEditMode){let o=this.agentBuilderService.updateCallback(this.agentConfig.name,A.name,Ye(Y({},A),{name:n.name,type:n.type}));o.success?this.cdr.markForCheck():console.error("Failed to update callback:",o.error)}})}deleteCallback(A,e){this.dialog.open(Og,{data:{title:"Delete Callback",message:`Are you sure you want to delete ${e.name}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(n=>{if(n==="confirm"){let o=this.agentBuilderService.deleteCallback(A,e);o.success?this.cdr.markForCheck():console.error("Failed to delete callback:",o.error)}})}addSubAgent(A){A&&this.agentBuilderService.setAddSubAgentSubject(A)}deleteSubAgent(A){this.agentBuilderService.setDeleteSubAgentSubject(A)}deleteTool(A,e){let i=e.toolType==="Agent Tool",n=i&&e.toolAgentName||e.name;this.dialog.open(Og,{data:{title:i?"Delete Agent Tool":"Delete Tool",message:i?`Are you sure you want to delete the agent tool "${n}"? This will also delete the corresponding board.`:`Are you sure you want to delete ${n}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(a=>{if(a==="confirm")if(e.toolType==="Agent Tool"){let r=e.toolAgentName||e.name;this.deleteAgentToolAndBoard(A,e,r)}else this.agentBuilderService.deleteTool(A,e)})}deleteAgentToolAndBoard(A,e,i){this.agentBuilderService.deleteTool(A,e),this.agentBuilderService.requestTabDeletion(i)}backToToolList(){this.editingTool=null,this.agentBuilderService.setSelectedTool(void 0)}editToolArgs(){this.editingToolArgs.set(!0)}cancelEditToolArgs(A){this.editingToolArgs.set(!1),this.toolArgsString.set(this.getJsonStringForEditor(A?.args))}saveToolArgs(A){if(this.jsonEditorComponent&&A)try{let e=JSON.parse(this.jsonEditorComponent.getJsonString()),i=A.args?A.args.skip_summarization:!1;A.args=e,A.args.skip_summarization=i,this.toolArgsString.set(JSON.stringify(A.args,null,2)),this.editingToolArgs.set(!1)}catch(e){console.error("Error parsing tool arguments JSON",e)}}onToolTypeSelectionChange(A){A?.toolType==="Built-in tool"?(A.name="google_search",this.onBuiltInToolSelectionChange(A)):A?.toolType==="Custom tool"?(A.args={},this.toolArgsString.set(this.getJsonStringForEditor(A.args)),this.editingToolArgs.set(!0)):A&&(A.name="",A.args={skip_summarization:!1},this.toolArgsString.set("{}"),this.editingToolArgs.set(!1))}onBuiltInToolSelectionChange(A){A&&(this.editingToolArgs.set(!1),setTimeout(()=>{A.args={skip_summarization:!1};let e=this.builtInToolArgs.get(A.name);if(e)for(let i of e)A.args&&(A.args[i]="");this.toolArgsString.set(this.getJsonStringForEditor(A.args)),A.args&&this.getObjectKeys(A.args).length>0&&this.editingToolArgs.set(!0),this.cdr.markForCheck()}))}selectCallback(A){this.editingCallback=A}backToCallbackList(){this.editingCallback=null}onCallbackTypeChange(A){}createAgentTool(){this.dialog.open(Og,{width:"750px",height:"450px",data:{title:"Create Agent Tool",message:"Please enter a name for the agent tool:",confirmButtonText:"Create",showInput:!0,inputLabel:"Agent Tool Name",inputPlaceholder:"Enter agent tool name",showToolInfo:!0,toolType:"Agent tool"}}).afterClosed().subscribe(e=>{if(e&&typeof e=="string"){let i=this.agentConfig?.name||"root_agent";this.agentBuilderService.requestNewTab(e,i)}})}saveChanges(){if(!this.agentBuilderService.getRootNode()){this.snackBar.open("Please create an agent first.","OK");return}this.appNameInput?this.saveAgent(this.appNameInput):this.agentService.getApp().subscribe(e=>{e?this.saveAgent(e):this.snackBar.open("No agent selected. Please select an agent first.","OK")})}cancelChanges(){this.agentService.agentChangeCancel(this.appNameInput).subscribe(A=>{}),this.exitBuilderMode.emit()}saveAgent(A){let e=this.agentBuilderService.getRootNode();if(!e){this.snackBar.open("Please create an agent first.","OK");return}let i=new FormData,n=this.agentBuilderService.getCurrentAgentToolBoards();w0.generateYamlFile(e,i,A,n),this.agentService.agentBuildTmp(A,i).subscribe(o=>{o&&this.agentService.agentBuild(A,i).subscribe(a=>{a?this.router.navigate(["/"],{queryParams:{app:A}}).then(()=>{window.location.reload()}):this.snackBar.open("Something went wrong, please try again","OK")})})}getToolIcon(A){return fh(A.name,A.toolType)}getAgentIcon(A){switch(A){case"SequentialAgent":return"more_horiz";case"LoopAgent":return"sync";case"ParallelAgent":return"density_medium";default:return"psychology"}}addSubAgentWithType(A){if(!this.agentConfig?.name)return;let e=this.agentConfig.agent_class!=="LlmAgent";this.agentBuilderService.setAddSubAgentSubject(this.agentConfig.name,A,e)}callbackMenuTooltips(A){return Qg.getCallbackMenuTooltips(A)}toolMenuTooltips(A){return Qg.getToolMenuTooltips(A)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-builder-tabs"]],viewQuery:function(e,i){if(e&1&&$t(Tg,5),e&2){let n;cA(n=gA())&&(i.jsonEditorComponent=n.first)}},inputs:{appNameInput:"appNameInput"},outputs:{exitBuilderMode:"exitBuilderMode",closePanel:"closePanel"},decls:77,vars:12,consts:[["subAgentMenu","matMenu"],["callbacksMenu","matMenu"],["agentMenuTrigger","matMenuTrigger"],["toolsMenu","matMenu"],[2,"margin-top","20px","margin-left","20px","display","flex"],[2,"width","100%"],[1,"drawer-header"],[1,"drawer-logo"],["src","assets/ADK-512-color.svg","width","32px","height","32px"],[2,"display","flex","align-items","center","gap","8px","margin-right","15px"],["matTooltip","Collapse panel",1,"material-symbols-outlined",2,"color","#c4c7c5","cursor","pointer",3,"click"],[1,"builder-tabs-container"],[1,"builder-tab-content"],[1,"agent-breadcrumb-container"],[1,"content-wrapper"],[1,"builder-panel-wrapper"],[1,"panel-title"],[1,"config-form"],["mat-icon-button","","type","button","aria-label","Add sub agent",1,"panel-action-button",3,"matMenuTriggerFor"],["mat-menu-item","",3,"click"],[1,"tools-chips-container"],["mat-icon-button","","type","button","aria-label","Add callback",1,"panel-action-button",3,"matMenuTriggerFor"],[1,"menu-header"],["mat-menu-item","","matTooltipPosition","right",3,"click","matTooltip"],[1,"action-buttons"],["mat-raised-button","","color","secondary",1,"save-button",3,"click"],["mat-button","",1,"cancel-button",3,"click"],[1,"breadcrumb-chip",3,"click"],[1,"breadcrumb-arrow"],[1,"form-row"],[1,"agent-name-field"],["matInput","",3,"ngModelChange","ngModel","disabled"],[1,"agent-type-field"],["disabled","",3,"ngModelChange","ngModel"],[3,"value"],[3,"ngModel"],[3,"ngModelChange","ngModel"],["matInput","","rows","5",3,"ngModelChange","ngModel"],["matInput","","rows","3",3,"ngModelChange","ngModel"],["matInput","","type","number","min","1",3,"ngModelChange","ngModel"],["mat-icon-button","","type","button","aria-label","Add tool",1,"panel-action-button",3,"matMenuTriggerFor"],["aria-label","Tools"],[1,"tool-chip"],[1,"tool-chip",3,"click"],["matChipAvatar","",1,"tool-icon"],[1,"tool-chip-name"],["matChipRemove","","aria-label","Remove tool",3,"click"],["aria-label","Sub Agents"],["matChipRemove","","aria-label","Remove sub agent",3,"click"],[1,"tools-chips-container","callbacks-list"],["aria-label","Callbacks"],[1,"callback-row"],[1,"callback-row",3,"click"],[1,"callback-chip"],[1,"chip-content"],[1,"chip-type"],[1,"chip-name"],["mat-icon-button","","aria-label","Remove callback",1,"callback-remove",3,"click"]],template:function(e,i){if(e&1&&(I(0,"div",4)(1,"div",5)(2,"div",6)(3,"div",7),le(4,"img",8),v(5," Agent Development Kit "),h(),I(6,"div",9),le(7,"app-theme-toggle"),I(8,"span",10),U("click",function(){return i.closePanel.emit()}),v(9,"left_panel_close"),h()()()()(),I(10,"div",11)(11,"div",12),T(12,Pve,3,0,"div",13),I(13,"div",14)(14,"div",15)(15,"div",16),v(16," Configuration "),h(),I(17,"div"),T(18,$ve,16,7,"div",17),h()(),T(19,i5e,22,7,"div",15),I(20,"div",15)(21,"div",16)(22,"div"),v(23," Sub Agents "),h(),I(24,"div")(25,"button",18)(26,"mat-icon"),v(27,"add"),h()(),I(28,"mat-menu",null,0)(30,"button",19),U("click",function(){return i.addSubAgentWithType("LlmAgent")}),I(31,"mat-icon"),v(32,"psychology"),h(),I(33,"span"),v(34,"LLM Agent"),h()(),I(35,"button",19),U("click",function(){return i.addSubAgentWithType("SequentialAgent")}),I(36,"mat-icon"),v(37,"more_horiz"),h(),I(38,"span"),v(39,"Sequential Agent"),h()(),I(40,"button",19),U("click",function(){return i.addSubAgentWithType("LoopAgent")}),I(41,"mat-icon"),v(42,"sync"),h(),I(43,"span"),v(44,"Loop Agent"),h()(),I(45,"button",19),U("click",function(){return i.addSubAgentWithType("ParallelAgent")}),I(46,"mat-icon"),v(47,"density_medium"),h(),I(48,"span"),v(49,"Parallel Agent"),h()()()()(),T(50,o5e,4,0,"div",20),h(),I(51,"div",15)(52,"div",16)(53,"div"),v(54," Callbacks "),h(),I(55,"div")(56,"button",21)(57,"mat-icon"),v(58,"add"),h()(),I(59,"mat-menu",null,1)(61,"div",22),v(62,"Agent Lifecycle"),h(),I(63,"button",23),U("click",function(){return i.addCallback("before_agent")}),I(64,"span"),v(65,"Before Agent"),h()(),I(66,"button",23),U("click",function(){return i.addCallback("after_agent")}),I(67,"span"),v(68,"After Agent"),h()(),T(69,a5e,18,4),h()()(),T(70,l5e,1,1),Dt(71,"async"),h()(),I(72,"div",24)(73,"button",25),U("click",function(){return i.saveChanges()}),v(74," Save "),h(),I(75,"button",26),U("click",function(){return i.cancelChanges()}),v(76," Cancel "),h()()()()),e&2){let n,o=Ei(29),a=Ei(60);Q(12),O(i.hierarchyPath.length>0?12:-1),Q(6),O(i.agentConfig?18:-1),Q(),O((i.agentConfig==null?null:i.agentConfig.agent_class)==="LlmAgent"?19:-1),Q(6),H("matMenuTriggerFor",o),Q(25),O(i.agentConfig&&i.agentConfig.sub_agents&&i.agentConfig.sub_agents.length>0?50:-1),Q(6),H("matMenuTriggerFor",a),Q(7),H("matTooltip",i.callbackMenuTooltips("before_agent")),Q(3),H("matTooltip",i.callbackMenuTooltips("after_agent")),Q(3),O((i.agentConfig==null?null:i.agentConfig.agent_class)==="LlmAgent"?69:-1),Q(),O((n=Ut(71,10,i.callbacksMap$))?70:-1,n)}},dependencies:[Ci,wn,Kn,uQ,Un,mM,Po,xi,Eg,Bq,$o,Vt,Fa,Di,Ks,es,Ec,ln,fs,uc,zs,A5,vm,Lne,Gne,HF,Tne,Une,t5,hs],styles:[".builder-tabs-container[_ngcontent-%COMP%]{width:100%;margin-top:40px;height:calc(95vh - 20px);display:flex;flex-direction:column}.agent-breadcrumb-container[_ngcontent-%COMP%]{padding:2px 20px 8px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--builder-border-color)}.breadcrumb-chip[_ngcontent-%COMP%]{color:var(--builder-text-muted-color);font-family:Google Sans;font-size:16px;font-weight:500;border:none;cursor:pointer;transition:all .2s ease;padding:4px 8px;border-radius:4px;display:inline-block;-webkit-user-select:none;user-select:none}.breadcrumb-chip[_ngcontent-%COMP%]:hover{color:var(--builder-text-link-color)}.breadcrumb-chip.current-agent[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-weight:500}.breadcrumb-arrow[_ngcontent-%COMP%]{color:var(--builder-breadcrumb-separator-color);font-size:16px;width:16px;height:16px}.builder-tab-content[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);display:flex;flex-direction:column;flex:1;overflow:hidden}.builder-tab-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:8px 0;font-size:14px;line-height:1.5}.components-section[_ngcontent-%COMP%]{margin-bottom:32px}.components-section[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:14px;font-weight:500;margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.config-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;margin-top:20px}.config-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%]{display:flex;gap:16px;align-items:flex-start}.config-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%] .agent-name-field[_ngcontent-%COMP%]{flex:1}.config-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%] .agent-type-field[_ngcontent-%COMP%]{width:32%}.config-form[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.config-form[_ngcontent-%COMP%] mat-checkbox[_ngcontent-%COMP%]{margin-bottom:8px}.config-form[_ngcontent-%COMP%] .tool-code-section[_ngcontent-%COMP%]{margin-top:16px}.config-form[_ngcontent-%COMP%] .tool-code-section[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0 0 8px;color:var(--builder-text-secondary-color);font-size:14px;font-weight:500}.config-form[_ngcontent-%COMP%] .tool-args-header[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:14px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.json-editor-wrapper[_ngcontent-%COMP%]{height:300px;max-height:300px}.tab-content-container[_ngcontent-%COMP%]{margin-top:20px;overflow-y:auto}.agent-list-row[_ngcontent-%COMP%]{display:flex;margin-top:10px}.sub-agent-list-row[_ngcontent-%COMP%]{display:flex;margin-top:10px;margin-left:16px}.tree-view[_ngcontent-%COMP%] expand-button[_ngcontent-%COMP%]{border:0}.node-item[_ngcontent-%COMP%]{display:flex;align-items:center}.node-icon[_ngcontent-%COMP%]{margin-right:14px}.node-name[_ngcontent-%COMP%]{margin-top:2px;display:flex;align-items:center}.no-tools-message[_ngcontent-%COMP%]{display:block;color:var(--builder-text-secondary-color);font-size:16px;margin-top:16px;margin-bottom:16px;text-align:center}.tools-list[_ngcontent-%COMP%]{list-style:none;padding:0}.tool-name[_ngcontent-%COMP%]{cursor:pointer;padding:11px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;color:var(--builder-text-primary-color);font-family:Google Sans Mono,monospace;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.tool-name[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{visibility:hidden}.tool-name[_ngcontent-%COMP%]:hover button[_ngcontent-%COMP%]{visibility:visible}.tool-list-item-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding-right:8px}.tools-chips-container[_ngcontent-%COMP%]{margin-top:12px;padding:0 4px}.tools-chips-container.callbacks-list[_ngcontent-%COMP%]{padding-right:0;padding-left:0}.callback-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;width:100%;cursor:pointer}.callback-remove[_ngcontent-%COMP%]{color:var(--builder-icon-color);cursor:pointer;width:32px;height:32px;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0}.callback-remove[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;line-height:1;display:flex;align-items:center;justify-content:center;transform:translateY(.5px)}.back-button[_ngcontent-%COMP%]{margin-bottom:16px}.add-tool-button[_ngcontent-%COMP%]{width:100%;border:none;border-radius:4px;margin-top:12px;cursor:pointer}.add-tool-button-detail[_ngcontent-%COMP%]{display:flex;padding:8px 16px 8px 12px;justify-content:center}.add-tool-button-text[_ngcontent-%COMP%]{padding-top:2px;color:var(--builder-add-button-text-color);font-family:Google Sans;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.agent-tool-section[_ngcontent-%COMP%]{margin-top:16px;padding:16px;border:1px solid var(--builder-border-color);border-radius:8px}.agent-tool-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:16px;font-weight:500;margin:0 0 8px}.agent-tool-section[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:14px;margin:0 0 16px;line-height:1.5}.agent-tool-section[_ngcontent-%COMP%] .create-agent-tool-btn[_ngcontent-%COMP%]{color:var(--builder-button-primary-text-color);font-weight:500}.no-callbacks-message[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:16px;margin-top:16px;text-align:center}.callback-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding-right:8px}.callback-section[_ngcontent-%COMP%]{margin-top:16px}.callback-section[_ngcontent-%COMP%] .callback-section-label[_ngcontent-%COMP%]{margin:0 0 8px;color:var(--builder-text-secondary-color);font-size:14px;font-weight:500;text-transform:none}.callback-groups-wrapper[_ngcontent-%COMP%]{margin-top:16px}.callback-group[_ngcontent-%COMP%]{margin-top:5px}.callback-list[_ngcontent-%COMP%]{padding:8px 0}.no-callbacks-in-type[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:14px;font-style:italic;padding:12px;text-align:center}.callback-item[_ngcontent-%COMP%]{cursor:pointer;padding:8px 12px;border-radius:4px;display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;color:var(--builder-text-primary-color);font-family:Google Sans Mono,monospace;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.callback-item[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{visibility:hidden}.callback-item[_ngcontent-%COMP%]:hover button[_ngcontent-%COMP%]{visibility:visible}.add-callback-icon[_ngcontent-%COMP%]{color:var(--builder-button-primary-background-color)}mat-tab-group[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:16px 20px 0;min-height:0}mat-tab-group[_ngcontent-%COMP%]{flex:1;padding-bottom:0;display:flex;flex-direction:column;overflow:hidden}.action-buttons[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;padding:16px 20px;border-top:1px solid var(--builder-border-color);flex-shrink:0;margin-top:auto}.action-buttons[_ngcontent-%COMP%] .save-button[_ngcontent-%COMP%]{color:var(--builder-button-primary-text-color);font-weight:500}.action-buttons[_ngcontent-%COMP%] .cancel-button[_ngcontent-%COMP%]{color:var(--builder-button-secondary-text-color);border:1px solid var(--builder-button-secondary-border-color)}.action-buttons[_ngcontent-%COMP%] .cancel-button[_ngcontent-%COMP%]:hover{color:var(--builder-button-secondary-hover-text-color)}.builder-panel-wrapper[_ngcontent-%COMP%]{border-bottom:1px solid var(--builder-border-color);padding:12px 24px}.panel-title[_ngcontent-%COMP%]{color:var(--builder-text-tertiary-color);font-family:Google Sans;font-size:16px;font-style:normal;font-weight:500;line-height:24px;display:flex;justify-content:space-between}.panel-title[_ngcontent-%COMP%] .panel-action-button[_ngcontent-%COMP%]{color:var(--builder-icon-color);width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;padding:0}.panel-title[_ngcontent-%COMP%] .panel-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;line-height:1;display:flex;align-items:center;justify-content:center}.content-wrapper[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.drawer-logo[_ngcontent-%COMP%]{margin-left:9px;display:flex;align-items:center}.drawer-logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{margin-right:9px}.drawer-logo[_ngcontent-%COMP%]{font-size:16px;font-style:normal;font-weight:500;line-height:24px;letter-spacing:.1px}.drawer-header[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:space-between;align-items:center}"],changeDetection:0})};var x2=new Me("MARKDOWN_COMPONENT");var c5e=["chatMessages"],g5e=(t,A)=>({"user-message":t,"bot-message":A}),C5e=t=>({text:t,thought:!1});function d5e(t,A){t&1&&(I(0,"div",7)(1,"mat-icon",12),v(2,"smart_toy"),h(),I(3,"h3"),v(4,"Assistant Ready"),h(),I(5,"p"),v(6,"Your builder assistant is ready to help you build agents."),h()())}function I5e(t,A){t&1&&(I(0,"div",15)(1,"span",16),v(2,"\u30FB\u30FB\u30FB"),h()())}function B5e(t,A){if(t&1&&(I(0,"div",19),v(1),h()),t&2){let e=p(3).$implicit;Q(),ne(e.text)}}function h5e(t,A){if(t&1&&Bn(0,20),t&2){let e=p(3).$implicit,i=p(2);H("ngComponentOutlet",i.markdownComponent)("ngComponentOutletInputs",sc(2,C5e,e.text))}}function u5e(t,A){if(t&1&&(I(0,"div",18),v(1,"Assistant"),h(),T(2,B5e,2,1,"div",19)(3,h5e,1,4,"ng-container",20)),t&2){let e=p(2).$implicit;Q(2),O(e.isError?2:3)}}function E5e(t,A){if(t&1&&(I(0,"div",17),v(1),h()),t&2){let e=p(2).$implicit;Q(),ne(e.text)}}function Q5e(t,A){if(t&1&&T(0,u5e,4,1)(1,E5e,2,1,"div",17),t&2){let e=p().$implicit;O(e.role==="bot"?0:1)}}function p5e(t,A){if(t&1&&(I(0,"div",13)(1,"mat-card",14),T(2,I5e,3,0,"div",15)(3,Q5e,2,1),h()()),t&2){let e=A.$implicit;H("ngClass",tC(2,g5e,e.role==="user",e.role==="bot")),Q(2),O(e.isLoading?2:3)}}function m5e(t,A){if(t&1&&RA(0,p5e,4,5,"div",13,ri),t&2){let e=p();NA(e.messages)}}var n5=class t{isVisible=!0;appName="";closePanel=new Le;reloadCanvas=new Le;assistantAppName="__adk_agent_builder_assistant";userId="user";currentSession="";userMessage="";messages=[];shouldAutoScroll=!1;isGenerating=!1;chatMessages;markdownComponent=w(x2);agentService=w(gl);sessionService=w(Cl);agentBuilderService=w(h0);constructor(){}ngOnInit(){this.sessionService.createSession(this.userId,this.assistantAppName).subscribe(A=>{this.currentSession=A.id;let e={appName:this.assistantAppName,userId:this.userId,sessionId:A.id,newMessage:{role:"user",parts:[{text:"hello"}]},streaming:!1,stateDelta:{root_directory:`${this.appName}/tmp/${this.appName}`}};this.messages.push({role:"bot",text:"",isLoading:!0}),this.shouldAutoScroll=!0,this.isGenerating=!0,this.agentService.runSse(e).subscribe({next:i=>nA(this,null,function*(){if(i.errorCode){let n=this.messages[this.messages.length-1];n.role==="bot"&&n.isLoading&&(n.text=`Error Code: ${i.errorCode}`,n.isLoading=!1,n.isError=!0,this.shouldAutoScroll=!0),this.isGenerating=!1;return}if(i.content){let n="";for(let o of i.content.parts)o.text&&(n+=o.text);if(n){let o=this.messages[this.messages.length-1];o.role==="bot"&&o.isLoading&&(o.text=n,o.isLoading=!1,this.shouldAutoScroll=!0)}}}),error:i=>{console.error("SSE error:",i);let n=this.messages[this.messages.length-1];n.role==="bot"&&n.isLoading&&(n.text="Sorry, I encountered an error. Please try again.",n.isLoading=!1,this.shouldAutoScroll=!0),this.isGenerating=!1},complete:()=>{this.isGenerating=!1}})})}onClosePanel(){this.closePanel.emit()}sendMessage(A){if(A.trim()){this.saveAgent(this.appName),A!="____Something went wrong, please try again"&&this.messages.push({role:"user",text:A});let e=A;this.userMessage="",this.messages.push({role:"bot",text:"",isLoading:!0}),this.shouldAutoScroll=!0,this.isGenerating=!0;let i={appName:this.assistantAppName,userId:this.userId,sessionId:this.currentSession,newMessage:{role:"user",parts:[{text:e}]},streaming:!1};this.agentService.runSse(i).subscribe({next:n=>nA(this,null,function*(){if(n.errorCode){let o=this.messages[this.messages.length-1];o.role==="bot"&&o.isLoading&&(o.text=`Error Code: ${n.errorCode}`,o.isLoading=!1,o.isError=!0,this.shouldAutoScroll=!0),this.isGenerating=!1;return}if(n.content){let o="";for(let a of n.content.parts)a.text&&(o+=a.text);if(o){let a=this.messages[this.messages.length-1];a.role==="bot"&&a.isLoading&&(a.text=o,a.isLoading=!1,this.shouldAutoScroll=!0,this.reloadCanvas.emit())}}}),error:n=>{console.error("SSE error:",n);let o=this.messages[this.messages.length-1];o.role==="bot"&&o.isLoading&&(o.text="Sorry, I encountered an error. Please try again.",o.isLoading=!1,this.shouldAutoScroll=!0),this.isGenerating=!1},complete:()=>{this.isGenerating=!1}})}}ngAfterViewChecked(){this.shouldAutoScroll&&(this.scrollToBottom(),this.shouldAutoScroll=!1)}scrollToBottom(){try{this.chatMessages&&setTimeout(()=>{this.chatMessages.nativeElement.scrollTop=this.chatMessages.nativeElement.scrollHeight},50)}catch(A){console.error("Error scrolling to bottom:",A)}}onKeyDown(A){if(A.key==="Enter"){if(A.shiftKey)return;this.userMessage?.trim()&&this.currentSession&&(A.preventDefault(),this.sendMessage(this.userMessage))}}saveAgent(A){let e=this.agentBuilderService.getRootNode();if(!e)return;let i=new FormData,n=this.agentBuilderService.getCurrentAgentToolBoards();w0.generateYamlFile(e,i,A,n),this.agentService.agentBuildTmp(A,i).subscribe(o=>{console.log(o?"save to tmp":"something went wrong")})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-builder-assistant"]],viewQuery:function(e,i){if(e&1&&$t(c5e,5),e&2){let n;cA(n=gA())&&(i.chatMessages=n.first)}},inputs:{isVisible:"isVisible",appName:"appName"},outputs:{closePanel:"closePanel",reloadCanvas:"reloadCanvas"},decls:21,vars:6,consts:[["chatMessages",""],[1,"builder-assistant-panel"],[1,"panel-header"],[1,"panel-title"],["mat-icon-button","","matTooltip","Close assistant panel",1,"close-btn",3,"click"],[1,"panel-content"],[1,"chat-messages"],[1,"assistant-placeholder"],[1,"chat-input-container"],[1,"input-wrapper"],["cdkTextareaAutosize","","cdkAutosizeMinRows","1","cdkAutosizeMaxRows","5","placeholder","Ask Gemini to build your agent",1,"assistant-input-box",3,"ngModelChange","keydown","ngModel","disabled"],["mat-icon-button","","matTooltip","Send message",1,"send-button",3,"click","disabled"],[1,"large-icon"],[3,"ngClass"],[1,"message-card"],[1,"loading-message"],[1,"dots"],[1,"message-text"],[1,"bot-label"],[1,"error-message"],[3,"ngComponentOutlet","ngComponentOutletInputs"]],template:function(e,i){if(e&1){let n=ae();I(0,"div",1)(1,"div",2)(2,"div",3)(3,"mat-icon"),v(4,"auto_awesome"),h(),I(5,"span"),v(6,"Assistant"),h()(),I(7,"button",4),U("click",function(){return i.onClosePanel()}),I(8,"mat-icon"),v(9,"close"),h()()(),I(10,"div",5)(11,"div",6,0),T(13,d5e,7,0,"div",7)(14,m5e,2,0),h(),I(15,"div",8)(16,"div",9)(17,"textarea",10),Fi("ngModelChange",function(a){return L(n),vi(i.userMessage,a)||(i.userMessage=a),G(a)}),U("keydown",function(a){return i.onKeyDown(a)}),h(),I(18,"button",11),U("click",function(){return i.sendMessage(i.userMessage.trim())}),I(19,"mat-icon"),v(20,"send"),h()()()()()()}e&2&&(_e("hidden",!i.isVisible),Q(13),O(i.messages.length===0?13:14),Q(4),Ni("ngModel",i.userMessage),H("disabled",i.isGenerating),Q(),H("disabled",!i.userMessage.trim()||i.isGenerating))},dependencies:[Ci,lc,A0,wn,Kn,Un,Po,Vt,Di,ln,S6,DB,b3],styles:[".builder-assistant-panel[_ngcontent-%COMP%]{position:fixed;right:0;top:72px;width:400px;height:calc(100vh - 72px);background-color:var(--mat-sys-surface-container);border-left:1px solid var(--mat-sys-outline-variant);box-shadow:-2px 0 10px #0006;display:flex;flex-direction:column;transition:transform .3s ease}.builder-assistant-panel.hidden[_ngcontent-%COMP%]{transform:translate(100%)}.panel-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--mat-sys-outline-variant)}.panel-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-weight:400;font-size:16px;color:var(--mat-sys-on-surface);font-family:Google Sans,Helvetica Neue,sans-serif}.panel-title[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);font-size:20px;width:20px;height:20px}.close-btn[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant)}.close-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-on-surface)}.panel-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden}.assistant-placeholder[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:300px;color:var(--mat-sys-on-surface-variant)}.assistant-placeholder[_ngcontent-%COMP%] .large-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px;margin-bottom:16px;color:var(--mat-sys-primary)}.assistant-placeholder[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0 0 8px;font-size:20px;font-weight:500;color:var(--mat-sys-on-surface);font-family:Google Sans,Helvetica Neue,sans-serif}.assistant-placeholder[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:14px;line-height:1.5;color:var(--mat-sys-on-surface-variant)}.chat-messages[_ngcontent-%COMP%]{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column}.chat-input-container[_ngcontent-%COMP%]{padding:16px 20px 20px;border-top:none}.input-wrapper[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:50px;padding:10px 6px 10px 18px;gap:8px}.assistant-input-box[_ngcontent-%COMP%]{flex:1;color:var(--mat-sys-on-surface);background-color:transparent;border:none;padding:0;resize:none;overflow:hidden;font-family:Google Sans,Helvetica Neue,sans-serif;font-size:14px;line-height:20px;min-height:20px;max-height:120px}.assistant-input-box[_ngcontent-%COMP%]::placeholder{color:var(--mat-sys-on-surface-variant);font-size:14px}.assistant-input-box[_ngcontent-%COMP%]:focus{outline:none}.assistant-input-box[_ngcontent-%COMP%]::-webkit-scrollbar{width:4px}.assistant-input-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background-color:var(--mat-sys-outline);border-radius:4px}.send-button[_ngcontent-%COMP%]{color:var(--mat-sys-primary);width:36px;height:36px;min-width:36px;flex-shrink:0;margin:0;padding:0}.send-button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-outline)}.send-button[_ngcontent-%COMP%]:hover:not(:disabled){color:var(--mat-sys-primary);border-radius:50%}.send-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.message-card[_ngcontent-%COMP%]{padding:10px 16px;margin:6px 0;font-size:14px;font-weight:400;position:relative;display:block;box-shadow:none;line-height:1.5;width:100%}.user-message[_ngcontent-%COMP%]{display:block;width:100%;margin-bottom:12px}.user-message[_ngcontent-%COMP%] .message-card[_ngcontent-%COMP%]{border:1px solid var(--mat-sys-outline-variant);border-radius:4px;color:var(--mat-sys-on-surface);padding:8px 12px}.bot-message[_ngcontent-%COMP%]{display:block;width:100%;margin-bottom:0}.bot-message[_ngcontent-%COMP%] .message-card[_ngcontent-%COMP%]{border:none;border-radius:0;color:var(--mat-sys-on-surface);padding:0;margin:0}.bot-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:var(--mat-sys-on-surface-variant);margin-bottom:8px;font-family:Google Sans,Helvetica Neue,sans-serif}.error-message[_ngcontent-%COMP%]{color:var(--mat-app-warn, #d32f2f);font-family:Google Sans,Helvetica Neue,sans-serif;font-size:14px;white-space:pre-line;word-break:break-word;padding:8px 12px}.message-text[_ngcontent-%COMP%]{white-space:pre-line;word-break:break-word;overflow-wrap:break-word;font-family:Google Sans,Helvetica Neue,sans-serif}.message-text[_ngcontent-%COMP%] p{margin:0;line-height:1.4}.message-text[_ngcontent-%COMP%] p:first-child{margin-top:0}.message-text[_ngcontent-%COMP%] p:last-child{margin-bottom:0}.message-text[_ngcontent-%COMP%] ul, .message-text[_ngcontent-%COMP%] ol{margin:0;padding-left:1.5em}.message-text[_ngcontent-%COMP%] li{margin:0}.message-text[_ngcontent-%COMP%] code{padding:2px 4px;border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em}.message-text[_ngcontent-%COMP%] pre{padding:8px 12px;border-radius:6px;overflow-x:auto;margin:.5em 0}.message-text[_ngcontent-%COMP%] pre code{padding:0}.message-text[_ngcontent-%COMP%] blockquote{border-left:3px solid var(--mat-sys-primary);padding-left:12px;margin:.5em 0;font-style:italic;color:var(--mat-sys-on-surface-variant)}.message-text[_ngcontent-%COMP%] strong{font-weight:600}.message-text[_ngcontent-%COMP%] em{font-style:italic}.loading-message[_ngcontent-%COMP%]{display:flex;align-items:center;color:var(--mat-sys-on-surface-variant);font-family:Google Sans,Helvetica Neue,sans-serif;padding:0;margin:0}.loading-message[_ngcontent-%COMP%] .dots[_ngcontent-%COMP%]{font-size:24px;letter-spacing:-12px;animation:_ngcontent-%COMP%_pulse 1.4s ease-in-out infinite;display:inline-block;line-height:1}@keyframes _ngcontent-%COMP%_pulse{0%,to{opacity:.3}50%{opacity:1}}"]})};var Zu=class t{constructor(A,e){this.http=A;this.zone=e}apiServerDomain=Ur.getApiServerBaseUrl();_currentApp=new di("");currentApp=this._currentApp.asObservable();isLoading=new di(!1);getApp(){return this.currentApp}setApp(A){this._currentApp.next(A)}getLoadingState(){return this.isLoading}runSse(A){let e=this.apiServerDomain+"/run_sse";return this.isLoading.next(!0),new Li(i=>{let n=this,o=new AbortController,a=o.signal,r;return fetch(e,{method:"POST",headers:{"Content-Type":"application/json",Accept:"text/event-stream"},body:JSON.stringify(A),signal:a}).then(s=>{r=s.body?.getReader();let l=new TextDecoder("utf-8"),c="",C=()=>{r?.read().then(({done:d,value:B})=>{if(this.isLoading.next(!0),d)return this.isLoading.next(!1),i.complete();let E=l.decode(B,{stream:!0});c+=E;try{c.split(/\r?\n/).filter(m=>m.startsWith("data:")).forEach(m=>{let f=m.replace(/^data:\s*/,""),D=JSON.parse(f);n.zone.run(()=>i.next(D))}),c=""}catch(u){u instanceof SyntaxError&&C()}C()}).catch(d=>{a.aborted||n.zone.run(()=>i.error(d))})};C()}).catch(s=>{a.aborted||n.zone.run(()=>i.error(s))}),()=>{o.abort(),r?.cancel(),this.isLoading.next(!1)}})}listApps(){if(this.apiServerDomain!=null){let A=this.apiServerDomain+"/list-apps?relative_path=./";return this.http.get(A)}return new Li}getVersion(){if(this.apiServerDomain!=null){let A=this.apiServerDomain+"/version";return this.http.get(A)}return new Li}agentBuild(A,e){if(this.apiServerDomain!=null){let i=this.apiServerDomain+`/dev/apps/${A}/builder/save`;return this.http.post(i,e)}return new Li}agentBuildTmp(A,e){if(this.apiServerDomain!=null){let i=this.apiServerDomain+`/dev/apps/${A}/builder/save?tmp=true`;return this.http.post(i,e)}return new Li}getAgentBuilder(A){if(this.apiServerDomain!=null){let e=this.apiServerDomain+`/dev/apps/${A}/builder?ts=${Date.now()}`;return this.http.get(e,{responseType:"text"})}return new Li}getAgentBuilderTmp(A){if(this.apiServerDomain!=null){let e=this.apiServerDomain+`/dev/apps/${A}/builder?ts=${Date.now()}&tmp=true`;return this.http.get(e,{responseType:"text"})}return new Li}getSubAgentBuilder(A,e){if(this.apiServerDomain!=null){let i=this.apiServerDomain+`/dev/apps/${A}/builder?ts=${Date.now()}&file_path=${e}&tmp=true`;return this.http.get(i,{responseType:"text"})}return new Li}agentChangeCancel(A){if(this.apiServerDomain!=null){let e=this.apiServerDomain+`/dev/apps/${A}/builder/cancel`;return this.http.post(e,{})}return new Li}getAppInfo(A){if(this.apiServerDomain!=null){let e=this.apiServerDomain+`/dev/apps/${A}/build_graph`;return this.http.get(e)}return new Li}getAppGraphImage(A,e,i){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/dev/apps/${A}/build_graph_image`,o={dark_mode:e};return i&&(o.node=i),this.http.get(n,{params:o})}return new Li}static \u0275fac=function(e){return new(e||t)(Xo(Nr),Xo(At))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var w5e=["edgeLabelWrapper"],y5e=["edgeLabel",""];function v5e(t,A){t&1&&Bn(0)}function D5e(t,A){if(t&1&&(mt(),I(0,"foreignObject"),fr(),I(1,"div",1,0),Nt(3,v5e,1,0,"ng-container",2),h()()),t&2){let e=p(2),i=p();aA("x",i.edgeLabelPoint().x)("y",i.edgeLabelPoint().y)("width",e.size().width)("height",e.size().height),Q(3),H("ngTemplateOutlet",A)("ngTemplateOutletContext",i.getLabelContext())}}function b5e(t,A){if(t&1&&T(0,D5e,4,6,":svg:foreignObject"),t&2){let e,i=p(2);O((e=i.htmlTemplate())?0:-1,e)}}function M5e(t,A){if(t&1&&(mt(),I(0,"foreignObject"),fr(),I(1,"div",1,0),v(3),h()()),t&2){let e=p(),i=p();aA("x",i.edgeLabelPoint().x)("y",i.edgeLabelPoint().y)("width",e.size().width)("height",e.size().height),Q(),yJ(i.edgeLabelStyle()),Q(2),pA(" ",e.edgeLabel.text," ")}}function S5e(t,A){if(t&1&&(T(0,b5e,1,1),T(1,M5e,4,7,":svg:foreignObject")),t&2){let e=A,i=p();O(e.edgeLabel.type==="html-template"&&i.htmlTemplate()?0:-1),Q(),O(e.edgeLabel.type==="default"?1:-1)}}var k5e=["edge",""];function _5e(t,A){if(t&1){let e=ae();mt(),le(0,"path",0),I(1,"path",1),U("click",function(){L(e);let n=p();return n.select(),G(n.pull())}),h()}if(t&2){let e=p();_e("edge_selected",e.model().selected()),aA("d",e.model().path().path)("marker-start",e.model().markerStartUrl())("marker-end",e.model().markerEndUrl()),Q(),aA("d",e.model().path().path)}}function x5e(t,A){if(t&1&&Bn(0,2),t&2){let e=p(2);H("ngTemplateOutlet",A)("ngTemplateOutletContext",e.model().context)("ngTemplateOutletInjector",e.injector)}}function R5e(t,A){if(t&1&&T(0,x5e,1,3,"ng-container",2),t&2){let e,i=p();O((e=i.edgeTemplate())?0:-1,e)}}function N5e(t,A){if(t&1&&(mt(),le(0,"g",3)),t&2){let e=p(),i=p();H("model",e)("point",A)("edgeModel",i.model())("htmlTemplate",i.edgeLabelHtmlTemplate())}}function F5e(t,A){if(t&1&&T(0,N5e,1,4,":svg:g",3),t&2){let e,i=p();O((e=(e=i.model().path().labelPoints)==null?null:e.start)?0:-1,e)}}function L5e(t,A){if(t&1&&(mt(),le(0,"g",3)),t&2){let e=p(),i=p();H("model",e)("point",A)("edgeModel",i.model())("htmlTemplate",i.edgeLabelHtmlTemplate())}}function G5e(t,A){if(t&1&&T(0,L5e,1,4,":svg:g",3),t&2){let e,i=p();O((e=(e=i.model().path().labelPoints)==null?null:e.center)?0:-1,e)}}function K5e(t,A){if(t&1&&(mt(),le(0,"g",3)),t&2){let e=p(),i=p();H("model",e)("point",A)("edgeModel",i.model())("htmlTemplate",i.edgeLabelHtmlTemplate())}}function U5e(t,A){if(t&1&&T(0,K5e,1,4,":svg:g",3),t&2){let e,i=p();O((e=(e=i.model().path().labelPoints)==null?null:e.end)?0:-1,e)}}function T5e(t,A){if(t&1){let e=ae();mt(),I(0,"circle",5),U("pointerStart",function(n){L(e);let o=p(2);return G(o.startReconnection(n,o.model().targetHandle()))}),h()}if(t&2){let e=p(2);aA("cx",e.model().sourceHandle().pointAbsolute().x)("cy",e.model().sourceHandle().pointAbsolute().y)}}function O5e(t,A){if(t&1){let e=ae();mt(),I(0,"circle",5),U("pointerStart",function(n){L(e);let o=p(2);return G(o.startReconnection(n,o.model().sourceHandle()))}),h()}if(t&2){let e=p(2);aA("cx",e.model().targetHandle().pointAbsolute().x)("cy",e.model().targetHandle().pointAbsolute().y)}}function J5e(t,A){if(t&1&&(T(0,T5e,1,2,":svg:circle",4),T(1,O5e,1,2,":svg:circle",4)),t&2){let e=p();O(e.model().reconnectable===!0||e.model().reconnectable==="source"?0:-1),Q(),O(e.model().reconnectable===!0||e.model().reconnectable==="target"?1:-1)}}var aL=["*"],z5e=["resizer"],Y5e=["resizable",""];function H5e(t,A){if(t&1){let e=ae();mt(),I(0,"g")(1,"line",1),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("top",n))}),h(),I(2,"line",2),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("left",n))}),h(),I(3,"line",3),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("bottom",n))}),h(),I(4,"line",4),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("right",n))}),h(),I(5,"rect",5),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("top-left",n))}),h(),I(6,"rect",6),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("top-right",n))}),h(),I(7,"rect",7),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("bottom-left",n))}),h(),I(8,"rect",8),U("pointerStart",function(n){L(e);let o=p();return G(o.startResize("bottom-right",n))}),h()()}if(t&2){let e=p();Q(),aA("x1",e.lineGap)("y1",-e.gap())("x2",e.model.size().width-e.lineGap)("y2",-e.gap())("stroke",e.resizerColor()),Q(),aA("x1",-e.gap())("y1",e.lineGap)("x2",-e.gap())("y2",e.model.size().height-e.lineGap)("stroke",e.resizerColor()),Q(),aA("x1",e.lineGap)("y1",e.model.size().height+e.gap())("x2",e.model.size().width-e.lineGap)("y2",e.model.size().height+e.gap())("stroke",e.resizerColor()),Q(),aA("x1",e.model.size().width+e.gap())("y1",e.lineGap)("x2",e.model.size().width+e.gap())("y2",e.model.size().height-e.lineGap)("stroke",e.resizerColor()),Q(),aA("x",-(e.handleSize/2)-e.gap())("y",-(e.handleSize/2)-e.gap())("width",e.handleSize)("height",e.handleSize)("fill",e.resizerColor()),Q(),aA("x",e.model.size().width-e.handleSize/2+e.gap())("y",-(e.handleSize/2)-e.gap())("width",e.handleSize)("height",e.handleSize)("fill",e.resizerColor()),Q(),aA("x",-(e.handleSize/2)-e.gap())("y",e.model.size().height-e.handleSize/2+e.gap())("width",e.handleSize)("height",e.handleSize)("fill",e.resizerColor()),Q(),aA("x",e.model.size().width-e.handleSize/2+e.gap())("y",e.model.size().height-e.handleSize/2+e.gap())("width",e.handleSize)("height",e.handleSize)("fill",e.resizerColor())}}var P5e=["node",""];function j5e(t,A){if(t&1){let e=ae();mt(),I(0,"foreignObject",3),U("click",function(){L(e);let n=p();return n.pullNode(),G(n.selectNode())}),fr(),I(1,"default-node",4),le(2,"div",5)(3,"handle",6)(4,"handle",7),h()()}if(t&2){let e=p();aA("width",e.model().foWidth())("height",e.model().foHeight()),Q(),vt("width",e.model().styleWidth())("height",e.model().styleHeight())("max-width",e.model().styleWidth())("max-height",e.model().styleHeight()),H("selected",e.model().selected()),Q(),H("outerHTML",e.model().text(),Xg)}}function V5e(t,A){if(t&1){let e=ae();mt(),I(0,"foreignObject",3),U("click",function(){L(e);let n=p();return G(n.pullNode())}),fr(),I(1,"div",8),Bn(2,9),h()()}if(t&2){let e=p();aA("width",e.model().foWidth())("height",e.model().foHeight()),Q(),vt("width",e.model().styleWidth())("height",e.model().styleHeight()),Q(),H("ngTemplateOutlet",e.nodeTemplate()??null)("ngTemplateOutletContext",e.model().context)("ngTemplateOutletInjector",e.injector)}}function q5e(t,A){if(t&1){let e=ae();mt(),I(0,"g",10),U("click",function(){L(e);let n=p();return G(n.pullNode())}),Bn(1,9),h()}if(t&2){let e=p();Q(),H("ngTemplateOutlet",e.nodeSvgTemplate()??null)("ngTemplateOutletContext",e.model().context)("ngTemplateOutletInjector",e.injector)}}function Z5e(t,A){if(t&1){let e=ae();mt(),I(0,"foreignObject",3),U("click",function(){L(e);let n=p(2);return G(n.pullNode())}),fr(),I(1,"div",8),Bn(2,11),h()()}if(t&2){let e=p(2);aA("width",e.model().foWidth())("height",e.model().foHeight()),Q(),vt("width",e.model().styleWidth())("height",e.model().styleHeight()),Q(),H("ngComponentOutlet",A)("ngComponentOutletInputs",e.model().componentTypeInputs)("ngComponentOutletInjector",e.injector)}}function W5e(t,A){if(t&1&&(T(0,Z5e,3,9,":svg:foreignObject",0),Dt(1,"async")),t&2){let e,i=p();O((e=Ut(1,1,i.model().componentInstance$))?0:-1,e)}}function X5e(t,A){if(t&1){let e=ae();mt(),I(0,"rect",12),U("click",function(){L(e);let n=p();return n.pullNode(),G(n.selectNode())}),h()}if(t&2){let e=p();vt("stroke",e.model().color())("fill",e.model().color()),_e("default-group-node_selected",e.model().selected()),H("resizable",e.model().resizable())("gap",3)("resizerColor",e.model().color()),aA("width",e.model().size().width)("height",e.model().size().height)}}function $5e(t,A){if(t&1){let e=ae();mt(),I(0,"g",10),U("click",function(){L(e);let n=p();return G(n.pullNode())}),Bn(1,9),h()}if(t&2){let e=p();Q(),H("ngTemplateOutlet",e.groupNodeTemplate()??null)("ngTemplateOutletContext",e.model().context)("ngTemplateOutletInjector",e.injector)}}function eDe(t,A){}function ADe(t,A){if(t&1&&Nt(0,eDe,0,0,"ng-template",13),t&2){let e=p();H("ngTemplateOutlet",e)}}function tDe(t,A){if(t&1&&T(0,ADe,1,1,null,13),t&2){let e=p();O(e.model().resizable()?0:-1)}}function iDe(t,A){if(t&1){let e=ae();mt(),I(0,"circle",17),U("pointerStart",function(n){L(e);let o=p().$implicit,a=p();return G(a.startConnection(n,o))})("pointerEnd",function(){L(e);let n=p(2);return G(n.endConnection())}),h()}if(t&2){let e=p().$implicit;aA("cx",e.hostOffset().x)("cy",e.hostOffset().y)("stroke-width",e.strokeWidth)}}function nDe(t,A){if(t&1){let e=ae();mt(),I(0,"g",18),U("pointerStart",function(n){L(e);let o=p().$implicit,a=p();return G(a.startConnection(n,o))})("pointerEnd",function(){L(e);let n=p(2);return G(n.endConnection())}),h()}if(t&2){let e=p().$implicit;H("handleSizeController",e)}}function oDe(t,A){t&1&&(mt(),Bn(0))}function aDe(t,A){if(t&1){let e=ae();mt(),I(0,"g",18),U("pointerStart",function(n){L(e);let o=p().$implicit,a=p();return G(a.startConnection(n,o))})("pointerEnd",function(){L(e);let n=p(2);return G(n.endConnection())}),Nt(1,oDe,1,0,"ng-container",19),h()}if(t&2){let e=p().$implicit;H("handleSizeController",e),Q(),H("ngTemplateOutlet",e.template)("ngTemplateOutletContext",e.templateContext)}}function rDe(t,A){if(t&1){let e=ae();mt(),I(0,"circle",20),U("pointerEnd",function(){L(e);let n=p().$implicit,o=p();return o.endConnection(),G(o.resetValidateConnection(n))})("pointerOver",function(){L(e);let n=p().$implicit,o=p();return G(o.validateConnection(n))})("pointerOut",function(){L(e);let n=p().$implicit,o=p();return G(o.resetValidateConnection(n))}),h()}if(t&2){let e=p().$implicit,i=p();aA("r",i.model().magnetRadius)("cx",e.hostOffset().x)("cy",e.hostOffset().y)}}function sDe(t,A){if(t&1&&(T(0,iDe,1,3,":svg:circle",14),T(1,nDe,1,1,":svg:g",15),T(2,aDe,2,3,":svg:g",15),T(3,rDe,1,3,":svg:circle",16)),t&2){let e=A.$implicit,i=p();O(e.template===void 0?0:-1),Q(),O(e.template===null?1:-1),Q(),O(e.template?2:-1),Q(),O(i.showMagnet()?3:-1)}}function lDe(t,A){if(t&1&&(mt(),I(0,"foreignObject"),fr(),Bn(1,13),h()),t&2){let e=A.$implicit;aA("width",e.size().width)("height",e.size().height)("transform",e.transform()),Q(),H("ngTemplateOutlet",e.template())}}var cDe=["connection",""];function gDe(t,A){if(t&1&&(mt(),le(0,"path",0)),t&2){let e=p(2);aA("d",A)("marker-end",e.markerUrl())("stroke",e.defaultColor)}}function CDe(t,A){if(t&1&&T(0,gDe,1,3,":svg:path",0),t&2){let e,i=p();O((e=i.path())?0:-1,e)}}function dDe(t,A){t&1&&Bn(0)}function IDe(t,A){if(t&1&&Nt(0,dDe,1,0,"ng-container",1),t&2){let e=p(2);H("ngTemplateOutlet",A)("ngTemplateOutletContext",e.getContext())}}function BDe(t,A){if(t&1&&T(0,IDe,1,2,"ng-container"),t&2){let e,i=p();O((e=i.template())?0:-1,e)}}var hDe=["background",""];function uDe(t,A){if(t&1&&(mt(),Gn(0,"pattern",0),eo(1,"circle"),$n(),eo(2,"rect",1)),t&2){let e=p();aA("id",e.patternId)("x",e.x())("y",e.y())("width",e.scaledGap())("height",e.scaledGap()),Q(),aA("cx",e.patternSize())("cy",e.patternSize())("r",e.patternSize())("fill",e.patternColor()),Q(),aA("fill",e.patternUrl)}}function EDe(t,A){if(t&1&&(mt(),Gn(0,"pattern",0),eo(1,"image"),$n(),eo(2,"rect",1)),t&2){let e=p(2);aA("id",e.patternId)("x",e.imageX())("y",e.imageY())("width",e.scaledImageWidth())("height",e.scaledImageHeight()),Q(),aA("href",e.bgImageSrc())("width",e.scaledImageWidth())("height",e.scaledImageHeight()),Q(),aA("fill",e.patternUrl)}}function QDe(t,A){if(t&1&&(mt(),eo(0,"image")),t&2){let e=p(2);aA("x",e.imageX())("y",e.imageY())("width",e.scaledImageWidth())("height",e.scaledImageHeight())("href",e.bgImageSrc())}}function pDe(t,A){if(t&1&&(T(0,EDe,3,9),T(1,QDe,1,5,":svg:image")),t&2){let e=p();O(e.repeated()?0:-1),Q(),O(e.repeated()?-1:1)}}var mDe=["flowDefs",""];function fDe(t,A){if(t&1&&(mt(),eo(0,"polyline",3)),t&2){let e=p().$implicit,i=p();vt("stroke",e.value.color??i.defaultColor)("stroke-width",e.value.strokeWidth??2)("fill",e.value.color??i.defaultColor)}}function wDe(t,A){if(t&1&&(mt(),eo(0,"polyline",4)),t&2){let e=p().$implicit,i=p();vt("stroke",e.value.color??i.defaultColor)("stroke-width",e.value.strokeWidth??2)}}function yDe(t,A){if(t&1&&(mt(),Gn(0,"marker",0),T(1,fDe,1,6,":svg:polyline",1),T(2,wDe,1,4,":svg:polyline",2),$n()),t&2){let e=A.$implicit;aA("id",e.key)("markerWidth",e.value.width??16.5)("markerHeight",e.value.height??16.5)("orient",e.value.orient??"auto-start-reverse")("markerUnits",e.value.markerUnits??"userSpaceOnUse"),Q(),O(e.value.type==="arrow-closed"||!e.value.type?1:-1),Q(),O(e.value.type==="arrow"?2:-1)}}var vDe=["previewFlow",""],DDe=["alignmentHelper",""];function bDe(t,A){if(t&1&&(mt(),eo(0,"line")),t&2){let e=A.$implicit,i=p(3);aA("stroke",i.lineColor())("stroke-dasharray",e.isCenter?4:null)("x1",e.x)("y1",e.y)("x2",e.x2)("y2",e.y2)}}function MDe(t,A){t&1&&RA(0,bDe,1,6,":svg:line",null,ja),t&2&&NA(A.lines)}function SDe(t,A){if(t&1&&T(0,MDe,2,0),t&2){let e,i=p();O((e=i.intersections())?0:-1,e)}}function kDe(t,A){t&1&&(mt(),le(0,"g",8))}function _De(t,A){if(t&1&&(mt(),le(0,"g",9)),t&2){let e=p();H("tolerance",e.tolerance)("lineColor",e.lineColor)}}function xDe(t,A){t&1&&T(0,kDe,1,0,":svg:g",8)(1,_De,1,2,":svg:g",9),t&2&&O(A===!0?0:1)}function RDe(t,A){if(t&1&&(mt(),le(0,"g",10)),t&2){let e,i=A.$implicit,n=p(2);H("model",i)("groupNodeTemplate",(e=n.groupNodeTemplateDirective())==null?null:e.templateRef),aA("transform",i.pointTransform())}}function NDe(t,A){if(t&1&&(mt(),le(0,"g",11)),t&2){let e,i,n=A.$implicit,o=p(2);H("model",n)("edgeTemplate",(e=o.edgeTemplateDirective())==null?null:e.templateRef)("edgeLabelHtmlTemplate",(i=o.edgeLabelHtmlDirective())==null?null:i.templateRef)}}function FDe(t,A){if(t&1&&(mt(),le(0,"g",12)),t&2){let e,i,n=A.$implicit,o=p(2);H("model",n)("nodeTemplate",(e=o.nodeTemplateDirective())==null?null:e.templateRef)("nodeSvgTemplate",(i=o.nodeSvgTemplateDirective())==null?null:i.templateRef),aA("transform",n.pointTransform())}}function LDe(t,A){if(t&1&&(RA(0,RDe,1,3,":svg:g",10,aB().trackNodes,!0),RA(2,NDe,1,3,":svg:g",11,aB().trackEdges,!0),RA(4,FDe,1,4,":svg:g",12,aB().trackNodes,!0)),t&2){let e=p();NA(e.groups()),Q(2),NA(e.edgeModels()),Q(2),NA(e.nonGroups())}}function GDe(t,A){if(t&1&&(mt(),le(0,"g",11)),t&2){let e,i,n=A.$implicit,o=p(2);H("model",n)("edgeTemplate",(e=o.edgeTemplateDirective())==null?null:e.templateRef)("edgeLabelHtmlTemplate",(i=o.edgeLabelHtmlDirective())==null?null:i.templateRef)}}function KDe(t,A){if(t&1&&(mt(),le(0,"g",13)),t&2){let e,i,n,o=A.$implicit,a=p(2);H("model",o)("nodeTemplate",(e=a.nodeTemplateDirective())==null?null:e.templateRef)("nodeSvgTemplate",(i=a.nodeSvgTemplateDirective())==null?null:i.templateRef)("groupNodeTemplate",(n=a.groupNodeTemplateDirective())==null?null:n.templateRef),aA("transform",o.pointTransform())}}function UDe(t,A){if(t&1&&(RA(0,GDe,1,3,":svg:g",11,aB().trackEdges,!0),RA(2,KDe,1,5,":svg:g",13,aB().trackNodes,!0)),t&2){let e=p();NA(e.edgeModels()),Q(2),NA(e.nodeModels())}}function TDe(t,A){t&1&&(mt(),Bn(0,6)),t&2&&H("ngTemplateOutlet",A.template())}function ODe(t,A){if(t&1&&le(0,"canvas",7),t&2){let e=p();H("width",e.flowWidth())("height",e.flowHeight())}}var JDe=["customTemplateEdge",""],zDe=(t,A)=>{let e=Math.max(0,Math.min(t.x+t.width,A.x+A.width)-Math.max(t.x,A.x)),i=Math.max(0,Math.min(t.y+t.height,A.y+A.height)-Math.max(t.y,A.y));return Math.ceil(e*i)};function toe(t){if(t.length===0)return{x:0,y:0,width:0,height:0};let A={x:1/0,y:1/0,x2:-1/0,y2:-1/0};return t.forEach(e=>{let i=HDe(e);A=jDe(A,i)}),PDe(A)}function YDe(t,A,e){let i=A.find(o=>o.rawNode.id===t);if(!i)return[];let n=a5(i);return A.filter(o=>{if(o.rawNode.id===t)return!1;let a=zDe(a5(o),n);return e?.partially?a>0:a>=n.width*n.height})}function HDe(t){return{x:t.point().x,y:t.point().y,x2:t.point().x+t.size().width,y2:t.point().y+t.size().height}}function a5(t){return{x:t.globalPoint().x,y:t.globalPoint().y,width:t.width(),height:t.height()}}function PDe({x:t,y:A,x2:e,y2:i}){return{x:t,y:A,width:e-t,height:i-A}}function jDe(t,A){return{x:Math.min(t.x,A.x),y:Math.min(t.y,A.y),x2:Math.max(t.x2,A.x2),y2:Math.max(t.y2,A.y2)}}var r5=class{constructor(A){this.settings=A,this.curve=A.curve??"bezier",this.type=A.type??"default",this.mode=A.mode??"strict";let e=this.getValidators(A);this.validator=i=>e.every(n=>n(i))}getValidators(A){let e=[];return e.push(VDe),this.mode==="loose"&&e.push(qDe),A.validator&&e.push(A.validator),e}},VDe=t=>t.source!==t.target,qDe=t=>t.sourceHandle!==void 0&&t.targetHandle!==void 0;function Xu(t){return t.split("").reduce((A,e)=>(A=(A<<5)-A+e.charCodeAt(0),A&A),0)}var kl=(()=>{class t{constructor(){this.nodes=fe([],{equal:(e,i)=>!e.length&&!i.length?!0:e===i}),this.rawNodes=DA(()=>this.nodes().map(e=>e.rawNode)),this.edges=fe([],{equal:(e,i)=>!e.length&&!i.length?!0:e===i}),this.rawEdges=DA(()=>this.edges().map(e=>e.edge)),this.validEdges=DA(()=>{let e=this.nodes();return this.edges().filter(i=>e.includes(i.source())&&e.includes(i.target()))}),this.connection=fe(new r5({})),this.markers=DA(()=>{let e=new Map;this.validEdges().forEach(n=>{if(n.edge.markers?.start){let o=Xu(JSON.stringify(n.edge.markers.start));e.set(o,n.edge.markers.start)}if(n.edge.markers?.end){let o=Xu(JSON.stringify(n.edge.markers.end));e.set(o,n.edge.markers.end)}});let i=this.connection().settings.marker;if(i){let n=Xu(JSON.stringify(i));e.set(n,i)}return e}),this.entities=DA(()=>[...this.nodes(),...this.edges()]),this.minimap=fe(null)}getNode(e){return this.nodes().find(({rawNode:i})=>i.id===e)}getDetachedEdges(){return this.edges().filter(e=>e.detached())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})();function ZDe(t,A,e,i,n,o){let a=A/(t.width*(1+o)),r=e/(t.height*(1+o)),s=Math.min(a,r),l=WDe(s,i,n),c=t.x+t.width/2,C=t.y+t.height/2,d=A/2-c*l,B=e/2-C*l;return{x:d,y:B,zoom:l}}function WDe(t,A=0,e=1){return Math.min(Math.max(t,A),e)}function XDe(t,A,e){let i=t.zoom;return{x:-t.x/i,y:-t.y/i,width:A/i,height:e/i}}function $De(t,A,e,i){let n=XDe(A,e,i);return!(t.x+t.widthn.x+n.width||t.y+t.heightn.y+n.height)}var ebe={detachedGroupsLayer:!1,virtualization:!1,virtualizationZoomThreshold:.5,lazyLoadTrigger:"immediate"},Cs=(()=>{class t{constructor(){this.entitiesSelectable=fe(!0),this.elevateNodesOnSelect=fe(!0),this.elevateEdgesOnSelect=fe(!0),this.view=fe([400,400]),this.computedFlowWidth=fe(0),this.computedFlowHeight=fe(0),this.minZoom=fe(.5),this.maxZoom=fe(3),this.background=fe({type:"solid",color:"#fff"}),this.snapGrid=fe([1,1]),this.optimization=fe(ebe)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),U1=(()=>{class t{constructor(){this.entitiesService=w(kl),this.flowSettingsService=w(Cs),this.writableViewport=fe({changeType:"initial",state:t.getDefaultViewport(),duration:0}),this.readableViewport=fe(t.getDefaultViewport()),this.viewportChangeEnd$=new rA}static getDefaultViewport(){return{zoom:1,x:0,y:0}}fitView(e={padding:.1,duration:0,nodes:[]}){let i=this.getBoundsNodes(e.nodes??[]),n=ZDe(toe(i),this.flowSettingsService.computedFlowWidth(),this.flowSettingsService.computedFlowHeight(),this.flowSettingsService.minZoom(),this.flowSettingsService.maxZoom(),e.padding??.1),o=e.duration??0;this.writableViewport.set({changeType:"absolute",state:n,duration:o})}triggerViewportChangeEvent(e){e==="end"&&this.viewportChangeEnd$.next()}getBoundsNodes(e){return e?.length?e.map(i=>this.entitiesService.nodes().find(({rawNode:n})=>n.id===i)).filter(i=>!!i):this.entitiesService.nodes()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})();function td(t){return t!==void 0}var B5=(()=>{class t{constructor(){this.element=w(dA).nativeElement}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["svg","rootSvgRef",""]]})}}return t})();function Jne(){let t=window.navigator.userAgent.toLowerCase(),A=/(macintosh|macintel|macppc|mac68k|macos)/i,e=/(win32|win64|windows|wince)/i,i=/(iphone|ipad|ipod)/i,n=null;return A.test(t)?n="macos":i.test(t)?n="ios":e.test(t)?n="windows":/android/.test(t)?n="android":!n&&/linux/.test(t)&&(n="linux"),n}var ZF=(()=>{class t{constructor(){this.actions=fe({multiSelection:[Jne()==="macos"?"MetaLeft":"ControlLeft",Jne()==="macos"?"MetaRight":"ControlRight"]}),this.actionsActive={multiSelection:!1},Lo(this.actions).pipe(ki(()=>Zi(Wg(document,"keydown").pipe(yi(e=>{for(let i in this.actions())(this.actions()[i]??[]).includes(e.code)&&(this.actionsActive[i]=!0)})),Wg(document,"keyup").pipe(yi(e=>{for(let i in this.actions())(this.actions()[i]??[]).includes(e.code)&&(this.actionsActive[i]=!1)})))),Kr()).subscribe()}setShortcuts(e){this.actions.update(i=>Y(Y({},i),e))}isActiveAction(e){return this.actionsActive[e]}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),_m=(()=>{class t{constructor(){this.flowEntitiesService=w(kl),this.keyboardService=w(ZF),this.viewport$=new rA,this.resetSelection=this.viewport$.pipe(yi(({start:e,end:i,target:n})=>{if(e&&i&&n){let o=t.delta,a=Math.abs(i.x-e.x),r=Math.abs(i.y-e.y),s=ai.selected.set(!1)),e&&e.selected.set(!0))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),jF=(()=>{class t{constructor(){this.rootSvg=w(B5).element,this.host=w(dA).nativeElement,this.selectionService=w(_m),this.viewportService=w(U1),this.flowSettingsService=w(Cs),this.zone=w(At),this.rootSvgSelection=Al(this.rootSvg),this.transform=fe(""),this.viewportForSelection={},this.manualViewportChangeEffect=Ln(()=>{let e=this.viewportService.writableViewport(),i=e.state;if(e.changeType!=="initial"){if(td(i.zoom)&&!td(i.x)&&!td(i.y)){this.rootSvgSelection.transition().duration(e.duration).call(this.zoomBehavior.scaleTo,i.zoom);return}if(td(i.x)&&td(i.y)&&!td(i.zoom)){let n=Ma(this.viewportService.readableViewport).zoom;this.rootSvgSelection.transition().duration(e.duration).call(this.zoomBehavior.transform,$7.translate(i.x,i.y).scale(n));return}if(td(i.x)&&td(i.y)&&td(i.zoom)){this.rootSvgSelection.transition().duration(e.duration).call(this.zoomBehavior.transform,$7.translate(i.x,i.y).scale(i.zoom));return}}},{allowSignalWrites:!0}),this.handleZoom=({transform:e})=>{this.viewportService.readableViewport.set(VF(e)),this.transform.set(e.toString())},this.handleZoomStart=({transform:e})=>{this.viewportForSelection={start:VF(e)}},this.handleZoomEnd=({transform:e,sourceEvent:i})=>{this.zone.run(()=>{this.viewportForSelection=Ye(Y({},this.viewportForSelection),{end:VF(e),target:Abe(i)}),this.viewportService.triggerViewportChangeEvent("end"),this.selectionService.setViewport(this.viewportForSelection)})},this.filterCondition=e=>e.type==="mousedown"||e.type==="touchstart"?e.target.closest(".vflow-node")===null:!0}ngOnInit(){this.zone.runOutsideAngular(()=>{this.zoomBehavior=iz().scaleExtent([this.flowSettingsService.minZoom(),this.flowSettingsService.maxZoom()]).filter(this.filterCondition).on("start",this.handleZoomStart).on("zoom",this.handleZoom).on("end",this.handleZoomEnd),this.rootSvgSelection.call(this.zoomBehavior).on("dblclick.zoom",null)})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["g","mapContext",""]],hostVars:1,hostBindings:function(i,n){i&2&&aA("transform",n.transform())}})}}return t})(),VF=t=>({zoom:t.k,x:t.x,y:t.y}),Abe=t=>{if(t instanceof Event&&t.target instanceof Element)return t.target},s5=t=>Math.round(t*100)/100;function Sl(t,A){return Math.ceil(t/A)*A}var R2=(()=>{class t{constructor(){this.status=fe({state:"idle",payload:null})}setIdleStatus(){this.status.set({state:"idle",payload:null})}setConnectionStartStatus(e,i){this.status.set({state:"connection-start",payload:{source:e,sourceHandle:i}})}setReconnectionStartStatus(e,i,n){this.status.set({state:"reconnection-start",payload:{source:e,sourceHandle:i,oldEdge:n}})}setConnectionValidationStatus(e,i,n,o,a){this.status.set({state:"connection-validation",payload:{source:i,target:n,sourceHandle:o,targetHandle:a,valid:e}})}setReconnectionValidationStatus(e,i,n,o,a,r){this.status.set({state:"reconnection-validation",payload:{source:i,target:n,sourceHandle:o,targetHandle:a,valid:e,oldEdge:r}})}setConnectionEndStatus(e,i,n,o){this.status.set({state:"connection-end",payload:{source:e,target:i,sourceHandle:n,targetHandle:o}})}setReconnectionEndStatus(e,i,n,o,a){this.status.set({state:"reconnection-end",payload:{source:e,target:i,sourceHandle:n,targetHandle:o,oldEdge:a}})}setNodeDragStartStatus(e){this.status.set({state:"node-drag-start",payload:{node:e}})}setNodeDragEndStatus(e){this.status.set({state:"node-drag-end",payload:{node:e}})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})();function zne(t){return t.state==="node-drag-start"}function tbe(t){return t.state==="node-drag-end"}var ioe=(()=>{class t{constructor(){this.entitiesService=w(kl),this.settingsService=w(Cs),this.flowStatusService=w(R2)}enable(e,i){Al(e).call(this.getDragBehavior(i))}disable(e){Al(e).call(X7().on("drag",null))}destroy(e){Al(e).on(".drag",null)}getDragBehavior(e){let i=[],n=[],o=a=>e.dragHandlesCount()?!!a.target.closest(".vflow-drag-handle"):!0;return X7().filter(o).on("start",a=>{i=this.getDragNodes(e),this.flowStatusService.setNodeDragStartStatus(e),n=i.map(r=>({x:r.point().x-a.x,y:r.point().y-a.y}))}).on("drag",a=>{i.forEach((r,s)=>{let l={x:s5(a.x+n[s].x),y:s5(a.y+n[s].y)};this.moveNode(r,l)})}).on("end",()=>{this.flowStatusService.setNodeDragEndStatus(e)})}getDragNodes(e){return e.selected()?this.entitiesService.nodes().filter(i=>i.selected()&&i.draggable()):[e]}moveNode(e,i){i=this.alignToGrid(i);let n=e.parent();n&&(i.x=Math.min(n.width()-e.width(),i.x),i.x=Math.max(0,i.x),i.y=Math.min(n.height()-e.height(),i.y),i.y=Math.max(0,i.y)),e.setPoint(i)}alignToGrid(e){let[i,n]=this.settingsService.snapGrid();return i>1&&(e.x=Sl(e.x,i)),n>1&&(e.y=Sl(e.y,n)),e}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),l5=(()=>{class t{constructor(){this.templateRef=w(yo)}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["ng-template","edge",""]]})}}return t})(),Yne=(()=>{class t{constructor(){this.templateRef=w(yo)}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["ng-template","connection",""]]})}}return t})(),Hne=(()=>{class t{constructor(){this.templateRef=w(yo)}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["ng-template","edgeLabelHtml",""]]})}}return t})(),$u=(()=>{class t{constructor(){this.templateRef=w(yo)}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["ng-template","nodeHtml",""]]})}}return t})(),Pne=(()=>{class t{constructor(){this.templateRef=w(yo)}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["ng-template","nodeSvg",""]]})}}return t})(),c5=(()=>{class t{constructor(){this.templateRef=w(yo)}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["ng-template","groupNode",""]]})}}return t})();function jne(t,A){let e=t.reduce((i,n)=>(i[n.rawNode.id]=n,i),{});A.forEach(i=>{i.source.set(e[i.edge.source]),i.target.set(e[i.edge.target])})}function Mm(t){try{return new Proxy(t,{apply:()=>{}})(),!0}catch(A){return!1}}var WF=(()=>{class t{constructor(){this._event$=new rA,this.event$=this._event$.asObservable()}pushEvent(e){this._event$.next(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),eE=(()=>{class t{constructor(){this.model=fe(null)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),noe=(()=>{class t{constructor(){this.eventBus=w(WF),this.nodeService=w(eE),this.destroyRef=w(wr),this.selected=this.nodeService.model().selected,this.data=fe(void 0)}ngOnInit(){this.trackEvents().pipe(Kr(this.destroyRef)).subscribe()}trackEvents(){let e=Object.getOwnPropertyNames(this),i=new Map;for(let n of e){let o=this[n];o instanceof Le&&i.set(o,n),o instanceof bJ&&i.set(ibe(o),n)}return Zi(...Array.from(i.keys()).map(n=>n.pipe(yi(o=>{this.eventBus.pushEvent({nodeId:this.nodeService.model()?.rawNode.id??"",eventName:i.get(n),eventPayload:o})}))))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,standalone:!1})}}return t})();function ibe(t){return new Li(A=>{let e=t.subscribe(i=>{A.next(i)});return()=>{e.unsubscribe()}})}var nbe=(()=>{class t extends noe{constructor(){super(...arguments),this.node=MA.required()}ngOnInit(){let e=this.node().data;e&&(this.data=e),super.ngOnInit()}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})()}static{this.\u0275dir=We({type:t,inputs:{node:[1,"node"]},standalone:!1,features:[_t]})}}return t})(),obe=(()=>{class t extends noe{constructor(){super(...arguments),this.node=MA.required()}ngOnInit(){this.node().data&&this.data.set(this.node().data),super.ngOnInit()}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})()}static{this.\u0275dir=We({type:t,inputs:{node:[1,"node"]},standalone:!1,features:[_t]})}}return t})();function ooe(t){return Object.prototype.isPrototypeOf.call(obe,t)}function aoe(t){return Object.prototype.isPrototypeOf.call(nbe,t)}function abe(t){return typeof t.point=="function"}function rbe(t){return ooe(t.type)?!0:Mm(t.type)&&!Mm(t.point)}function sbe(t){return aoe(t.type)?!0:Mm(t.type)&&Mm(t.point)}var g5=2;function lbe(t){return abe(t)?t:Ye(Y({},cbe(t)),{id:t.id,type:t.type})}function cbe(t){let A={};for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&(A[e]=fe(t[e]));return A}function gbe(t,A,e){!A&&uJ(t);let i=A??w(Rt);return e?xr(i,e):i}function Sm(t,A){let e=gbe(Sm,A?.injector),i;return DA(()=>(i||(i=Ma(()=>Ir(t,Ye(Y({},A),{injector:e})))),i()))}function Cbe(t){return t.rawNode.type==="default-group"||t.rawNode.type==="template-group"}var T1=(()=>{class t{constructor(){this.flowEntitiesService=w(kl),this.flowSettingsService=w(Cs),this.viewportService=w(U1),this.nodes=DA(()=>this.flowSettingsService.optimization().virtualization?this.viewportNodesAfterInteraction().sort((e,i)=>e.renderOrder()-i.renderOrder()):[...this.flowEntitiesService.nodes()].sort((e,i)=>e.renderOrder()-i.renderOrder())),this.groups=DA(()=>this.nodes().filter(e=>!!e.children().length||Cbe(e))),this.nonGroups=DA(()=>this.nodes().filter(e=>!this.groups().includes(e))),this.viewportNodes=DA(()=>{let e=this.flowEntitiesService.nodes(),i=this.viewportService.readableViewport(),n=this.flowSettingsService.computedFlowWidth(),o=this.flowSettingsService.computedFlowHeight();return e.filter(a=>{let{x:r,y:s}=a.globalPoint(),l=a.width(),c=a.height();return $De({x:r,y:s,width:l,height:c},i,n,o)})}),this.viewportNodesAfterInteraction=Sm(Zi(Lo(this.flowEntitiesService.nodes).pipe(iB(kf),pt(e=>!!e.length)),this.viewportService.viewportChangeEnd$.pipe(Ws(300))).pipe(xA(()=>{let e=this.viewportService.readableViewport(),i=this.flowSettingsService.optimization().virtualizationZoomThreshold;return e.zoomMath.max(...this.flowEntitiesService.nodes().map(e=>e.renderOrder())))}pullNode(e){e.renderOrder.set(this.maxOrder()+1),e.children().forEach(i=>this.pullNode(i))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})();function C5(t,A){A||(A={equal:Object.is});let e;return DA(()=>e=t(e),A)}var dbe=(()=>{class t{static{this.defaultWidth=100}static{this.defaultHeight=50}static{this.defaultColor="#1b262c"}constructor(e){this.rawNode=e,this.entitiesService=w(kl),this.settingsService=w(Cs),this.nodeRenderingService=w(T1),this.isVisible=fe(!1),this.point=fe({x:0,y:0}),this.width=fe(t.defaultWidth),this.height=fe(t.defaultHeight),this.size=DA(()=>({width:this.width(),height:this.height()})),this.styleWidth=DA(()=>this.controlledByResizer()?`${this.width()}px`:"100%"),this.styleHeight=DA(()=>this.controlledByResizer()?`${this.height()}px`:"100%"),this.foWidth=DA(()=>this.width()+g5),this.foHeight=DA(()=>this.height()+g5),this.renderOrder=fe(0),this.selected=fe(!1),this.preview=fe({style:{}}),this.globalPoint=DA(()=>{let n=this.parent(),o=this.point().x,a=this.point().y;for(;n!==null;)o+=n.point().x,a+=n.point().y,n=n.parent();return{x:o,y:a}}),this.pointTransform=DA(()=>`translate(${this.globalPoint().x}, ${this.globalPoint().y})`),this.handles=fe([]),this.draggable=fe(!0),this.dragHandlesCount=fe(0),this.magnetRadius=20,this.isComponentType=rbe(this.rawNode)||sbe(this.rawNode),this.shouldLoad=C5(n=>{if(n||this.settingsService.optimization().lazyLoadTrigger==="immediate")return!0;if(this.settingsService.optimization().lazyLoadTrigger==="viewport"){if(ooe(this.rawNode.type)||aoe(this.rawNode.type))return!0;if(Mm(this.rawNode.type)||this.rawNode.type==="html-template"||this.rawNode.type==="svg-template"||this.rawNode.type==="template-group")return this.nodeRenderingService.viewportNodes().includes(this)}return!0}),this.componentInstance$=Lo(this.shouldLoad).pipe(pt(Boolean),ki(()=>this.rawNode.type()),ca(()=>sA(this.rawNode.type)),Xs(1)),this.text=fe(""),this.componentTypeInputs={node:this.rawNode},this.parent=DA(()=>this.entitiesService.nodes().find(n=>n.rawNode.id===this.parentId())??null),this.children=DA(()=>this.entitiesService.nodes().filter(n=>n.parentId()===this.rawNode.id)),this.color=fe(t.defaultColor),this.controlledByResizer=fe(!1),this.resizable=fe(!1),this.resizing=fe(!1),this.resizerTemplate=fe(null),this.context={$implicit:{}},this.parentId=fe(null);let i=lbe(e);i.point&&(this.point=i.point),i.width&&(this.width=i.width),i.height&&(this.height=i.height),i.draggable&&(this.draggable=i.draggable),i.parentId&&(this.parentId=i.parentId),i.preview&&(this.preview=i.preview),i.type==="default-group"&&i.color&&(this.color=i.color),i.type==="default-group"&&i.resizable&&(this.resizable=i.resizable),i.type==="default"&&i.text&&(this.text=i.text),i.type==="html-template"&&(this.context={$implicit:{node:e,selected:this.selected.asReadonly(),shouldLoad:this.shouldLoad}}),i.type==="svg-template"&&(this.context={$implicit:{node:e,selected:this.selected.asReadonly(),width:this.width.asReadonly(),height:this.height.asReadonly(),shouldLoad:this.shouldLoad}}),i.type==="template-group"&&(this.context={$implicit:{node:e,selected:this.selected.asReadonly(),width:this.width.asReadonly(),height:this.height.asReadonly(),shouldLoad:this.shouldLoad}}),this.point$=Lo(this.point),this.width$=Lo(this.width),this.height$=Lo(this.height),this.size$=Lo(this.size),this.selected$=Lo(this.selected),this.handles$=Lo(this.handles)}setPoint(e){this.point.set(e)}}return t})(),Dm=class{constructor(A){this.edgeLabel=A,this.size=fe({width:0,height:0})}};function id(t,A,e){return{x:(1-e)*t.x+e*A.x,y:(1-e)*t.y+e*A.y}}function XF({sourcePoint:t,targetPoint:A}){return{path:`M ${t.x},${t.y}L ${A.x},${A.y}`,labelPoints:{start:id(t,A,.15),center:id(t,A,.5),end:id(t,A,.85)}}}function $F({sourcePoint:t,targetPoint:A,sourcePosition:e,targetPosition:i}){let n={x:t.x-A.x,y:t.y-A.y},o=Vne(t,e,n),a=Vne(A,i,n),r=`M${t.x},${t.y} C${o.x},${o.y} ${a.x},${a.y} ${A.x},${A.y}`;return Ibe(r,t,A,o,a)}function Vne(t,A,e){let i={x:0,y:0};switch(A){case"top":i.y=1;break;case"bottom":i.y=-1;break;case"right":i.x=1;break;case"left":i.x=-1;break}let n={x:e.x*Math.abs(i.x),y:e.y*Math.abs(i.y)},a=.25*25*Math.sqrt(Math.abs(n.x+n.y));return{x:t.x+i.x*a,y:t.y-i.y*a}}function Ibe(t,A,e,i,n){return{path:t,labelPoints:{start:qF(A,e,i,n,.1),center:qF(A,e,i,n,.5),end:qF(A,e,i,n,.9)}}}function qF(t,A,e,i,n){let o=id(t,e,n),a=id(e,i,n),r=id(i,A,n);return id(id(o,a,n),id(a,r,n),n)}var qne={left:{x:-1,y:0},right:{x:1,y:0},top:{x:0,y:-1},bottom:{x:0,y:1}};function Bbe(t,A){let e=Math.abs(A.x-t.x)/2,i=A.xA==="left"||A==="right"?t.xMath.sqrt(Math.pow(A.x-t.x,2)+Math.pow(A.y-t.y,2));function ube({source:t,sourcePosition:A="bottom",target:e,targetPosition:i="top",offset:n}){let o=qne[A],a=qne[i],r={x:t.x+o.x*n,y:t.y+o.y*n},s={x:e.x+a.x*n,y:e.y+a.y*n},l=hbe({source:r,sourcePosition:A,target:s}),c=l.x!==0?"x":"y",C=l[c],d=[],B,E,u={x:0,y:0},m={x:0,y:0},[f,D]=Bbe(t,e);if(o[c]*a[c]===-1){B=f,E=D;let k=[{x:B,y:r.y},{x:B,y:s.y}],b=[{x:r.x,y:E},{x:s.x,y:E}];o[c]===C?d=c==="x"?k:b:d=c==="x"?b:k}else{let k=[{x:r.x,y:s.y}],b=[{x:s.x,y:r.y}];if(c==="x"?d=o.x===C?b:k:d=o.y===C?k:b,A===i){let X=Math.abs(t[c]-e[c]);if(X<=n){let Ae=Math.min(n-1,n-X);o[c]===C?u[c]=(r[c]>t[c]?-1:1)*Ae:m[c]=(s[c]>e[c]?-1:1)*Ae}}if(A!==i){let X=c==="x"?"y":"x",Ae=o[c]===a[X],W=r[X]>s[X],Ce=r[X]=j?(B=(x.x+F.x)/2,E=d[0].y):(B=d[0].x,E=(x.y+F.y)/2)}return[[t,{x:r.x+u.x,y:r.y+u.y},...d,{x:s.x+m.x,y:s.y+m.y},e],B,E]}function Ebe(t,A,e,i){let n=Math.min(Zne(t,A)/2,Zne(A,e)/2,i),{x:o,y:a}=A;if(t.x===o&&o===e.x||t.y===a&&a===e.y)return`L${o} ${a}`;if(t.y===a){let l=t.x{let f="";return m>0&&m{let u=d*E;if(u<=0)return o[0];if(u>=d)return o[l-1];let m=0,f=l-1;for(;m>>1;C[F](this.source()?.shouldLoad()??!1)&&(this.target()?.shouldLoad()??!1)),this.renderOrder=fe(0),this.detached=DA(()=>{let e=this.source(),i=this.target();if(!e||!i)return!0;let n=!1,o=!1;return this.edge.sourceHandle?n=!!e.handles().find(a=>a.rawHandle.id===this.edge.sourceHandle):n=!!e.handles().find(a=>a.rawHandle.type==="source"),this.edge.targetHandle?o=!!i.handles().find(a=>a.rawHandle.id===this.edge.targetHandle):o=!!i.handles().find(a=>a.rawHandle.type==="target"),!n||!o}),this.detached$=Lo(this.detached),this.path=DA(()=>{let e=this.sourceHandle(),i=this.targetHandle();if(!e||!i)return{path:""};let n=this.getPathFactoryParams(e,i);switch(this.curve){case"straight":return XF(n);case"bezier":return $F(n);case"smooth-step":return Wu(n);case"step":return Wu(n,0);default:return this.curve(n)}}),this.sourceHandle=C5(e=>{let i=null;return this.floating?i=this.closestHandles().sourceHandle:this.edge.sourceHandle?i=this.source()?.handles().find(n=>n.rawHandle.id===this.edge.sourceHandle)??null:i=this.source()?.handles().find(n=>n.rawHandle.type==="source")??null,i===null?e:i}),this.targetHandle=C5(e=>{let i=null;return this.floating?i=this.closestHandles().targetHandle:this.edge.targetHandle?i=this.target()?.handles().find(n=>n.rawHandle.id===this.edge.targetHandle)??null:i=this.target()?.handles().find(n=>n.rawHandle.type==="target")??null,i===null?e:i}),this.closestHandles=DA(()=>{let e=this.source(),i=this.target();if(!e||!i)return{sourceHandle:null,targetHandle:null};let n=this.flowEntitiesService.connection().mode==="strict"?e.handles().filter(l=>l.rawHandle.type==="source"):e.handles(),o=this.flowEntitiesService.connection().mode==="strict"?i.handles().filter(l=>l.rawHandle.type==="target"):i.handles();if(n.length===0||o.length===0)return{sourceHandle:null,targetHandle:null};let a=1/0,r=null,s=null;for(let l of n)for(let c of o){let C=l.pointAbsolute(),d=c.pointAbsolute(),B=Math.sqrt(Math.pow(C.x-d.x,2)+Math.pow(C.y-d.y,2));B{let e=this.edge.markers?.start;return e?`url(#${Xu(JSON.stringify(e))})`:""}),this.markerEndUrl=DA(()=>{let e=this.edge.markers?.end;return e?`url(#${Xu(JSON.stringify(e))})`:""}),this.context={$implicit:{edge:this.edge,path:DA(()=>this.path().path),markerStart:this.markerStartUrl,markerEnd:this.markerEndUrl,selected:this.selected.asReadonly(),shouldLoad:this.shouldLoad}},this.edgeLabels={},this.type=A.type??"default",this.curve=A.curve??"bezier",this.reconnectable=A.reconnectable??!1,this.floating=A.floating??!1,A.edgeLabels?.start&&(this.edgeLabels.start=new Dm(A.edgeLabels.start)),A.edgeLabels?.center&&(this.edgeLabels.center=new Dm(A.edgeLabels.center)),A.edgeLabels?.end&&(this.edgeLabels.end=new Dm(A.edgeLabels.end))}getPathFactoryParams(A,e){return{mode:"edge",edge:this.edge,sourcePoint:A.pointAbsolute(),targetPoint:e.pointAbsolute(),sourcePosition:A.rawHandle.position,targetPosition:e.rawHandle.position,allEdges:this.flowEntitiesService.rawEdges(),allNodes:this.flowEntitiesService.rawNodes()}}},d5=class{static nodes(A,e){let i=new Map;return e.forEach(n=>i.set(n.rawNode,n)),A.map(n=>i.get(n)??new dbe(n))}static edges(A,e){let i=new Map;return e.forEach(n=>i.set(n.edge,n)),A.map(n=>i.has(n)?i.get(n):new eL(n))}},Qbe=25,AL=(()=>{class t{constructor(){this.entitiesService=w(kl),this.nodesPositionChange$=Lo(this.entitiesService.nodes).pipe(ki(e=>Zi(...e.map(i=>i.point$.pipe(Kl(1),xA(()=>i))))),xA(e=>[{type:"position",id:e.rawNode.id,point:e.point()},...this.entitiesService.nodes().filter(i=>i!==e&&i.selected()).map(i=>({type:"position",id:i.rawNode.id,point:i.point()}))])),this.nodeSizeChange$=Lo(this.entitiesService.nodes).pipe(ki(e=>Zi(...e.map(i=>i.size$.pipe(Kl(1),xA(()=>i))))),xA(e=>[{type:"size",id:e.rawNode.id,size:e.size()}])),this.nodeAddChange$=Lo(this.entitiesService.nodes).pipe(gd(),xA(([e,i])=>i.filter(n=>!e.includes(n))),pt(e=>!!e.length),xA(e=>e.map(i=>({type:"add",id:i.rawNode.id})))),this.nodeRemoveChange$=Lo(this.entitiesService.nodes).pipe(gd(),xA(([e,i])=>e.filter(n=>!i.includes(n))),pt(e=>!!e.length),xA(e=>e.map(i=>({type:"remove",id:i.rawNode.id})))),this.nodeSelectedChange$=Lo(this.entitiesService.nodes).pipe(ki(e=>Zi(...e.map(i=>i.selected$.pipe(jc(),Kl(1),xA(()=>i))))),xA(e=>[{type:"select",id:e.rawNode.id,selected:e.selected()}])),this.changes$=Zi(this.nodesPositionChange$,this.nodeSizeChange$,this.nodeAddChange$,this.nodeRemoveChange$,this.nodeSelectedChange$).pipe(iB(kf,Qbe))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),pbe=(t,A)=>t.length===A.length&&[...new Set([...t,...A])].every(e=>t.filter(i=>i===e).length===A.filter(i=>i===e).length),tL=(()=>{class t{constructor(){this.entitiesService=w(kl),this.edgeDetachedChange$=Zi(Lo(DA(()=>{let e=this.entitiesService.nodes();return Ma(this.entitiesService.edges).filter(({source:n,target:o})=>!e.includes(n())||!e.includes(o()))})),Lo(this.entitiesService.edges).pipe(ki(e=>CJ(...e.map(i=>i.detached$.pipe(xA(()=>i))))),xA(e=>e.filter(i=>i.detached())),Kl(2))).pipe(jc(pbe),pt(e=>!!e.length),xA(e=>e.map(({edge:i})=>({type:"detached",id:i.id})))),this.edgeAddChange$=Lo(this.entitiesService.edges).pipe(gd(),xA(([e,i])=>i.filter(n=>!e.includes(n))),pt(e=>!!e.length),xA(e=>e.map(({edge:i})=>({type:"add",id:i.id})))),this.edgeRemoveChange$=Lo(this.entitiesService.edges).pipe(gd(),xA(([e,i])=>e.filter(n=>!i.includes(n))),pt(e=>!!e.length),xA(e=>e.map(({edge:i})=>({type:"remove",id:i.id})))),this.edgeSelectChange$=Lo(this.entitiesService.edges).pipe(ki(e=>Zi(...e.map(i=>i.selected$.pipe(jc(),Kl(1),xA(()=>i))))),xA(e=>[{type:"select",id:e.edge.id,selected:e.selected()}])),this.changes$=Zi(this.edgeDetachedChange$,this.edgeAddChange$,this.edgeRemoveChange$,this.edgeSelectChange$).pipe(iB(kf))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),mbe=(()=>{class t{constructor(){this.nodesChangeService=w(AL),this.edgesChangeService=w(tL),this.onNodesChange=Hn(this.nodesChangeService.changes$),this.onNodesChangePosition=Hn(this.nodeChangesOfType("position"),{alias:"onNodesChange.position"}),this.onNodesChangePositionSignle=Hn(this.singleChange(this.nodeChangesOfType("position")),{alias:"onNodesChange.position.single"}),this.onNodesChangePositionMany=Hn(this.manyChanges(this.nodeChangesOfType("position")),{alias:"onNodesChange.position.many"}),this.onNodesChangeSize=Hn(this.nodeChangesOfType("size"),{alias:"onNodesChange.size"}),this.onNodesChangeSizeSingle=Hn(this.singleChange(this.nodeChangesOfType("size")),{alias:"onNodesChange.size.single"}),this.onNodesChangeSizeMany=Hn(this.manyChanges(this.nodeChangesOfType("size")),{alias:"onNodesChange.size.many"}),this.onNodesChangeAdd=Hn(this.nodeChangesOfType("add"),{alias:"onNodesChange.add"}),this.onNodesChangeAddSingle=Hn(this.singleChange(this.nodeChangesOfType("add")),{alias:"onNodesChange.add.single"}),this.onNodesChangeAddMany=Hn(this.manyChanges(this.nodeChangesOfType("add")),{alias:"onNodesChange.add.many"}),this.onNodesChangeRemove=Hn(this.nodeChangesOfType("remove"),{alias:"onNodesChange.remove"}),this.onNodesChangeRemoveSingle=Hn(this.singleChange(this.nodeChangesOfType("remove")),{alias:"onNodesChange.remove.single"}),this.onNodesChangeRemoveMany=Hn(this.manyChanges(this.nodeChangesOfType("remove")),{alias:"onNodesChange.remove.many"}),this.onNodesChangeSelect=Hn(this.nodeChangesOfType("select"),{alias:"onNodesChange.select"}),this.onNodesChangeSelectSingle=Hn(this.singleChange(this.nodeChangesOfType("select")),{alias:"onNodesChange.select.single"}),this.onNodesChangeSelectMany=Hn(this.manyChanges(this.nodeChangesOfType("select")),{alias:"onNodesChange.select.many"}),this.onEdgesChange=Hn(this.edgesChangeService.changes$),this.onNodesChangeDetached=Hn(this.edgeChangesOfType("detached"),{alias:"onEdgesChange.detached"}),this.onNodesChangeDetachedSingle=Hn(this.singleChange(this.edgeChangesOfType("detached")),{alias:"onEdgesChange.detached.single"}),this.onNodesChangeDetachedMany=Hn(this.manyChanges(this.edgeChangesOfType("detached")),{alias:"onEdgesChange.detached.many"}),this.onEdgesChangeAdd=Hn(this.edgeChangesOfType("add"),{alias:"onEdgesChange.add"}),this.onEdgeChangeAddSingle=Hn(this.singleChange(this.edgeChangesOfType("add")),{alias:"onEdgesChange.add.single"}),this.onEdgeChangeAddMany=Hn(this.manyChanges(this.edgeChangesOfType("add")),{alias:"onEdgesChange.add.many"}),this.onEdgeChangeRemove=Hn(this.edgeChangesOfType("remove"),{alias:"onEdgesChange.remove"}),this.onEdgeChangeRemoveSingle=Hn(this.singleChange(this.edgeChangesOfType("remove")),{alias:"onEdgesChange.remove.single"}),this.onEdgeChangeRemoveMany=Hn(this.manyChanges(this.edgeChangesOfType("remove")),{alias:"onEdgesChange.remove.many"}),this.onEdgeChangeSelect=Hn(this.edgeChangesOfType("select"),{alias:"onEdgesChange.select"}),this.onEdgeChangeSelectSingle=Hn(this.singleChange(this.edgeChangesOfType("select")),{alias:"onEdgesChange.select.single"}),this.onEdgeChangeSelectMany=Hn(this.manyChanges(this.edgeChangesOfType("select")),{alias:"onEdgesChange.select.many"})}nodeChangesOfType(e){return this.nodesChangeService.changes$.pipe(xA(i=>i.filter(n=>n.type===e)),pt(i=>!!i.length))}edgeChangesOfType(e){return this.edgesChangeService.changes$.pipe(xA(i=>i.filter(n=>n.type===e)),pt(i=>!!i.length))}singleChange(e){return e.pipe(pt(i=>i.length===1),xA(([i])=>i))}manyChanges(e){return e.pipe(pt(i=>i.length>1))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["","changesController",""]],outputs:{onNodesChange:"onNodesChange",onNodesChangePosition:"onNodesChange.position",onNodesChangePositionSignle:"onNodesChange.position.single",onNodesChangePositionMany:"onNodesChange.position.many",onNodesChangeSize:"onNodesChange.size",onNodesChangeSizeSingle:"onNodesChange.size.single",onNodesChangeSizeMany:"onNodesChange.size.many",onNodesChangeAdd:"onNodesChange.add",onNodesChangeAddSingle:"onNodesChange.add.single",onNodesChangeAddMany:"onNodesChange.add.many",onNodesChangeRemove:"onNodesChange.remove",onNodesChangeRemoveSingle:"onNodesChange.remove.single",onNodesChangeRemoveMany:"onNodesChange.remove.many",onNodesChangeSelect:"onNodesChange.select",onNodesChangeSelectSingle:"onNodesChange.select.single",onNodesChangeSelectMany:"onNodesChange.select.many",onEdgesChange:"onEdgesChange",onNodesChangeDetached:"onEdgesChange.detached",onNodesChangeDetachedSingle:"onEdgesChange.detached.single",onNodesChangeDetachedMany:"onEdgesChange.detached.many",onEdgesChangeAdd:"onEdgesChange.add",onEdgeChangeAddSingle:"onEdgesChange.add.single",onEdgeChangeAddMany:"onEdgesChange.add.many",onEdgeChangeRemove:"onEdgesChange.remove",onEdgeChangeRemoveSingle:"onEdgesChange.remove.single",onEdgeChangeRemoveMany:"onEdgesChange.remove.many",onEdgeChangeSelect:"onEdgesChange.select",onEdgeChangeSelectSingle:"onEdgesChange.select.single",onEdgeChangeSelectMany:"onEdgesChange.select.many"}})}}return t})(),h5=(()=>{class t{constructor(){this.host=w(dA).nativeElement,this.initialTouch$=new rA,this.prevTouchEvent=null,this.mouseMovement$=Wg(this.host,"mousemove").pipe(xA(e=>({x:e.clientX,y:e.clientY,movementX:e.movementX,movementY:e.movementY,target:e.target,originalEvent:e})),iB(tB),Cd()),this.touchMovement$=Zi(this.initialTouch$,Wg(this.host,"touchmove")).pipe(yi(e=>e.preventDefault()),xA(e=>{let i=e.touches[0]?.clientX??0,n=e.touches[0]?.clientY??0,o=this.prevTouchEvent?e.touches[0].pageX-this.prevTouchEvent.touches[0].pageX:0,a=this.prevTouchEvent?e.touches[0].pageY-this.prevTouchEvent.touches[0].pageY:0,r=document.elementFromPoint(i,n);return{x:i,y:n,movementX:o,movementY:a,target:r,originalEvent:e}}),yi(e=>this.prevTouchEvent=e.originalEvent),iB(tB),Cd()),this.pointerMovement$=Zi(this.mouseMovement$,this.touchMovement$),this.touchEnd$=Wg(this.host,"touchend").pipe(xA(e=>{let i=e.changedTouches[0]?.clientX??0,n=e.changedTouches[0]?.clientY??0,o=document.elementFromPoint(i,n);return{x:i,y:n,target:o,originalEvent:e}}),yi(()=>this.prevTouchEvent=null),Cd()),this.mouseUp$=Wg(this.host,"mouseup").pipe(xA(e=>{let i=e.clientX,n=e.clientY,o=e.target;return{x:i,y:n,target:o,originalEvent:e}}),Cd()),this.documentPointerEnd$=Zi(Wg(document,"mouseup"),Wg(document,"touchend")).pipe(Cd())}setInitialTouch(e){this.initialTouch$.next(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["svg","rootPointer",""]]})}}return t})(),bm=(()=>{class t{constructor(){this.pointerMovementDirective=w(h5),this.rootSvg=w(B5).element,this.host=w(dA).nativeElement,this.svgCurrentSpacePoint=DA(()=>{let e=this.pointerMovement();return e?this.documentPointToFlowPoint({x:e.x,y:e.y}):{x:0,y:0}}),this.pointerMovement=Ir(this.pointerMovementDirective.pointerMovement$)}documentPointToFlowPoint(e){let i=this.rootSvg.createSVGPoint();return i.x=e.x,i.y=e.y,i.matrixTransform(this.host.getScreenCTM().inverse())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["g","spacePointContext",""]]})}}return t})();function fbe(t){return typeof t=="string"?{type:"solid",color:t}:t}function I5(t,A,e){let i=e.value;return e.value=function(...n){queueMicrotask(()=>{i?.apply(this,n)})},e}var roe=(()=>{class t{constructor(){this.toolbars=fe([]),this.nodeToolbarsMap=DA(()=>{let e=new Map;return this.toolbars().forEach(i=>{let n=e.get(i.node)??[];e.set(i.node,[...n,i])}),e})}addToolbar(e){this.toolbars.update(i=>[...i,e])}removeToolbar(e){this.toolbars.update(i=>i.filter(n=>n!==e))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return eQ([I5],t.prototype,"addToolbar",null),eQ([I5],t.prototype,"removeToolbar",null),t})();function u5(t,A){return new Li(e=>{let i=new ResizeObserver(n=>{A.run(()=>e.next(n))});return t.forEach(n=>i.observe(n)),()=>i.disconnect()})}var wbe=(()=>{class t{constructor(){this.zone=w(At),this.destroyRef=w(wr),this.settingsService=w(Cs),this.model=MA.required(),this.edgeModel=MA.required(),this.point=MA({x:0,y:0}),this.htmlTemplate=MA(),this.edgeLabelWrapperRef=Ho.required("edgeLabelWrapper"),this.edgeLabelPoint=DA(()=>{let e=this.point(),{width:i,height:n}=this.model().size();return{x:e.x-i/2,y:e.y-n/2}}),this.edgeLabelStyle=DA(()=>{let e=this.model().edgeLabel;if(e.type==="default"&&e.style){let i=this.settingsService.background(),n="transparent";return i.type==="dots"&&(n=i.backgroundColor??"#fff"),i.type==="solid"&&(n=i.color),e.style.backgroundColor=e.style.backgroundColor??n,e.style}return null})}ngAfterViewInit(){let e=this.edgeLabelWrapperRef().nativeElement;u5([e],this.zone).pipe(Yn(null),yi(()=>{let i=e.clientWidth+g5,n=e.clientHeight+g5;this.model().size.set({width:i,height:n})}),Kr(this.destroyRef)).subscribe()}getLabelContext(){return{$implicit:{edge:this.edgeModel().edge,label:this.model().edgeLabel}}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["g","edgeLabel",""]],viewQuery:function(i,n){i&1&&Bs(n.edgeLabelWrapperRef,w5e,5),i&2&&Rr()},inputs:{model:[1,"model"],edgeModel:[1,"edgeModel"],point:[1,"point"],htmlTemplate:[1,"htmlTemplate"]},attrs:y5e,decls:1,vars:1,consts:[["edgeLabelWrapper",""],[1,"edge-label-wrapper"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,n){if(i&1&&T(0,S5e,2,2),i&2){let o;O((o=n.model())?0:-1,o)}},dependencies:[t0],styles:[".edge-label-wrapper[_ngcontent-%COMP%]{width:max-content;margin-top:1px;margin-left:1px}"],changeDetection:0})}}return t})();function soe(t){let A={};return t.sourceHandle.rawHandle.type==="source"?(A.source=t.source,A.sourceHandle=t.sourceHandle):(A.source=t.target,A.sourceHandle=t.targetHandle),t.targetHandle.rawHandle.type==="target"?(A.target=t.target,A.targetHandle=t.targetHandle):(A.target=t.source,A.targetHandle=t.sourceHandle),A}var loe=(()=>{class t{constructor(){this.statusService=w(R2),this.flowEntitiesService=w(kl),this.onConnect=Hn(Lo(this.statusService.status).pipe(pt(e=>e.state==="connection-end"),xA(e=>o5(e,this.isStrictMode())),yi(()=>this.statusService.setIdleStatus()),pt(e=>this.flowEntitiesService.connection().validator(e)))),this.connect=Hn(Lo(this.statusService.status).pipe(pt(e=>e.state==="connection-end"),xA(e=>o5(e,this.isStrictMode())),yi(()=>this.statusService.setIdleStatus()),pt(e=>this.flowEntitiesService.connection().validator(e)))),this.onReconnect=Hn(Lo(this.statusService.status).pipe(pt(e=>e.state==="reconnection-end"),xA(e=>{let i=o5(e,this.isStrictMode()),n=e.payload.oldEdge.edge;return{connection:i,oldEdge:n}}),yi(()=>this.statusService.setIdleStatus()),pt(({connection:e})=>this.flowEntitiesService.connection().validator(e)))),this.reconnect=Hn(Lo(this.statusService.status).pipe(pt(e=>e.state==="reconnection-end"),xA(e=>{let i=o5(e,this.isStrictMode()),n=e.payload.oldEdge.edge;return{connection:i,oldEdge:n}}),yi(()=>this.statusService.setIdleStatus()),pt(({connection:e})=>this.flowEntitiesService.connection().validator(e)))),this.isStrictMode=DA(()=>this.flowEntitiesService.connection().mode==="strict")}startConnection(e){this.statusService.setConnectionStartStatus(e.parentNode,e)}startReconnection(e,i){this.statusService.setReconnectionStartStatus(e.parentNode,e,i)}validateConnection(e){let i=this.statusService.status();if(i.state==="connection-start"||i.state==="reconnection-start"){let n=i.state==="reconnection-start",o=i.payload.source,a=e.parentNode,r=i.payload.sourceHandle,s=e;if(this.isStrictMode()){let c=soe({source:i.payload.source,sourceHandle:i.payload.sourceHandle,target:e.parentNode,targetHandle:e});o=c.source,a=c.target,r=c.sourceHandle,s=c.targetHandle}let l=this.flowEntitiesService.connection().validator({source:o.rawNode.id,target:a.rawNode.id,sourceHandle:r.rawHandle.id,targetHandle:s.rawHandle.id});e.state.set(l?"valid":"invalid"),n?this.statusService.setReconnectionValidationStatus(l,i.payload.source,e.parentNode,i.payload.sourceHandle,e,i.payload.oldEdge):this.statusService.setConnectionValidationStatus(l,i.payload.source,e.parentNode,i.payload.sourceHandle,e)}}resetValidateConnection(e){e.state.set("idle");let i=this.statusService.status();(i.state==="connection-validation"||i.state==="reconnection-validation")&&(i.state==="reconnection-validation"?this.statusService.setReconnectionStartStatus(i.payload.source,i.payload.sourceHandle,i.payload.oldEdge):this.statusService.setConnectionStartStatus(i.payload.source,i.payload.sourceHandle))}endConnection(){let e=this.statusService.status();if(e.state==="connection-validation"||e.state==="reconnection-validation"){let i=e.state==="reconnection-validation",n=e.payload.source,o=e.payload.sourceHandle,a=e.payload.target,r=e.payload.targetHandle;i?this.statusService.setReconnectionEndStatus(n,a,o,r,e.payload.oldEdge):this.statusService.setConnectionEndStatus(n,a,o,r)}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["","onConnect",""],["","onReconnect",""],["","connect",""],["","reconnect",""]],outputs:{onConnect:"onConnect",connect:"connect",onReconnect:"onReconnect",reconnect:"reconnect"}})}}return t})();function o5(t,A){let e=t.payload.source,i=t.payload.target,n=t.payload.sourceHandle,o=t.payload.targetHandle;if(A){let c=soe({source:t.payload.source,sourceHandle:t.payload.sourceHandle,target:t.payload.target,targetHandle:t.payload.targetHandle});e=c.source,i=c.target,n=c.sourceHandle,o=c.targetHandle}let a=e.rawNode.id,r=i.rawNode.id,s=n.rawHandle.id,l=o.rawHandle.id;return{source:a,target:r,sourceHandle:s,targetHandle:l}}var km=(()=>{class t{constructor(){this.flowEntitiesService=w(kl),this.flowSettingsService=w(Cs),this.edges=DA(()=>this.flowSettingsService.optimization().virtualization?this.viewportEdges().sort((e,i)=>e.renderOrder()-i.renderOrder()):[...this.flowEntitiesService.validEdges()].sort((e,i)=>e.renderOrder()-i.renderOrder())),this.viewportEdges=DA(()=>this.flowEntitiesService.validEdges().filter(e=>{let i=e.sourceHandle(),n=e.targetHandle();return i&&n})),this.maxOrder=DA(()=>Math.max(...this.flowEntitiesService.validEdges().map(e=>e.renderOrder())))}pull(e){e.renderOrder()!==0&&this.maxOrder()===e.renderOrder()||e.renderOrder.set(this.maxOrder()+1)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})();function ybe(t){return window.TouchEvent&&t instanceof TouchEvent}var rL=(()=>{class t{constructor(){this.hostElement=w(dA).nativeElement,this.pointerMovementDirective=w(h5),this.pointerOver=_i(),this.pointerOut=_i(),this.pointerStart=_i(),this.pointerEnd=_i(),this.wasPointerOver=!1,this.touchEnd=this.pointerMovementDirective.touchEnd$.pipe(pt(({target:e})=>e===this.hostElement),yi(({originalEvent:e})=>this.pointerEnd.emit(e)),Kr()).subscribe(),this.touchOverOut=this.pointerMovementDirective.touchMovement$.pipe(yi(({target:e,originalEvent:i})=>{this.handleTouchOverAndOut(e,i)}),Kr()).subscribe()}onPointerStart(e){this.pointerStart.emit(e),ybe(e)&&this.pointerMovementDirective.setInitialTouch(e)}onPointerEnd(e){this.pointerEnd.emit(e)}onMouseOver(e){this.pointerOver.emit(e)}onMouseOut(e){this.pointerOut.emit(e)}handleTouchOverAndOut(e,i){e===this.hostElement?(this.pointerOver.emit(i),this.wasPointerOver=!0):(this.wasPointerOver&&this.pointerOut.emit(i),this.wasPointerOver=!1)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["","pointerStart",""],["","pointerEnd",""],["","pointerOver",""],["","pointerOut",""]],hostBindings:function(i,n){i&1&&U("mousedown",function(a){return n.onPointerStart(a)})("touchstart",function(a){return n.onPointerStart(a)})("mouseup",function(a){return n.onPointerEnd(a)})("mouseover",function(a){return n.onMouseOver(a)})("mouseout",function(a){return n.onMouseOut(a)})},outputs:{pointerOver:"pointerOver",pointerOut:"pointerOut",pointerStart:"pointerStart",pointerEnd:"pointerEnd"}})}}return t})(),sL=(()=>{class t{constructor(){this.injector=w(Rt),this.selectionService=w(_m),this.flowSettingsService=w(Cs),this.flowStatusService=w(R2),this.edgeRenderingService=w(km),this.connectionController=w(loe,{optional:!0}),this.model=MA.required(),this.edgeTemplate=MA(),this.edgeLabelHtmlTemplate=MA(),this.isReconnecting=DA(()=>{let e=this.flowStatusService.status();return(e.state==="reconnection-start"||e.state==="reconnection-validation")&&e.payload.oldEdge===this.model()})}select(){this.flowSettingsService.entitiesSelectable()&&this.selectionService.select(this.model())}pull(){this.flowSettingsService.elevateEdgesOnSelect()&&this.edgeRenderingService.pull(this.model())}startReconnection(e,i){e.stopPropagation(),this.connectionController?.startReconnection(i,this.model())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["g","edge",""]],hostAttrs:[1,"selectable"],hostVars:2,hostBindings:function(i,n){i&2&&vt("visibility",n.isReconnecting()?"hidden":"visible")},inputs:{model:[1,"model"],edgeTemplate:[1,"edgeTemplate"],edgeLabelHtmlTemplate:[1,"edgeLabelHtmlTemplate"]},attrs:k5e,decls:6,vars:6,consts:[[1,"edge"],[1,"interactive-edge",3,"click"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector"],["edgeLabel","",3,"model","point","edgeModel","htmlTemplate"],["r","10",1,"reconnect-handle"],["r","10",1,"reconnect-handle",3,"pointerStart"]],template:function(i,n){if(i&1&&(T(0,_5e,2,6),T(1,R5e,1,1),T(2,F5e,1,1),T(3,G5e,1,1),T(4,U5e,1,1),T(5,J5e,2,2)),i&2){let o,a,r;O(n.model().type==="default"?0:-1),Q(),O(n.model().type==="template"&&n.edgeTemplate()?1:-1),Q(),O((o=n.model().edgeLabels.start)?2:-1,o),Q(),O((a=n.model().edgeLabels.center)?3:-1,a),Q(),O((r=n.model().edgeLabels.end)?4:-1,r),Q(),O(n.model().sourceHandle()&&n.model().targetHandle()?5:-1)}},dependencies:[t0,wbe,rL],styles:[".edge[_ngcontent-%COMP%]{fill:none;stroke-width:2;stroke:#b1b1b7}.edge_selected[_ngcontent-%COMP%]{stroke-width:2.5;stroke:#0f4c75}.interactive-edge[_ngcontent-%COMP%]{fill:none;stroke-width:20;stroke:transparent}.reconnect-handle[_ngcontent-%COMP%]{fill:transparent;cursor:move}"],changeDetection:0})}}return t})(),iL=(()=>{class t{constructor(){this.node=fe(null)}createHandle(e){let i=this.node();i&&i.handles.update(n=>[...n,e])}destroyHandle(e){let i=this.node();i&&i.handles.update(n=>n.filter(o=>o!==e))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return eQ([I5],t.prototype,"createHandle",null),t})(),vbe=(()=>{class t{constructor(){this.handleModel=MA.required({alias:"handleSizeController"}),this.handleWrapper=w(dA)}ngAfterViewInit(){let e=this.handleWrapper.nativeElement,i=e.getBBox(),n=Dbe(e);this.handleModel().size.set({width:i.width+n,height:i.height+n})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["","handleSizeController",""]],inputs:{handleModel:[1,"handleSizeController","handleModel"]}})}}return t})();function Dbe(t){let A=t.firstElementChild;if(A){let e=getComputedStyle(A).strokeWidth,i=Number(e.replace("px",""));return isNaN(i)?0:i}return 0}var bbe=(()=>{class t{constructor(){this.selected=MA(!1)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["default-node"]],hostVars:2,hostBindings:function(i,n){i&2&&_e("selected",n.selected())},inputs:{selected:[1,"selected"]},ngContentSelectors:aL,decls:1,vars:0,template:function(i,n){i&1&&(Yt(),tt(0))},styles:["[_nghost-%COMP%]{border:1.5px solid #1b262c;border-radius:5px;display:flex;align-items:center;justify-content:center;color:#000;background-color:#fff}.selected[_nghost-%COMP%]{border-width:2px}"],changeDetection:0})}}return t})(),Mbe=(()=>{class t{get model(){return this.nodeAccessor.model()}constructor(){this.nodeAccessor=w(eE),this.rootPointer=w(h5),this.viewportService=w(U1),this.spacePointContext=w(bm),this.settingsService=w(Cs),this.hostRef=w(dA),this.resizable=MA(),this.resizerColor=MA("#2e414c"),this.gap=MA(1.5),this.resizer=Ho.required("resizer"),this.lineGap=3,this.handleSize=6,this.resizeSide=null,this.zoom=DA(()=>this.viewportService.readableViewport().zoom??0),this.minWidth=0,this.minHeight=0,this.maxWidth=1/0,this.maxHeight=1/0,this.resizeOnGlobalMouseMove=this.rootPointer.pointerMovement$.pipe(pt(()=>this.resizeSide!==null),pt(e=>e.movementX!==0||e.movementY!==0),yi(e=>this.resize(e)),Kr()).subscribe(),this.endResizeOnGlobalMouseUp=this.rootPointer.documentPointerEnd$.pipe(yi(()=>this.endResize()),Kr()).subscribe(),Ln(()=>{let e=this.resizable();typeof e=="boolean"?this.model.resizable.set(e):this.model.resizable.set(!0)},{allowSignalWrites:!0})}ngOnInit(){this.model.controlledByResizer.set(!0),this.model.resizerTemplate.set(this.resizer())}ngOnDestroy(){this.model.controlledByResizer.set(!1)}ngAfterViewInit(){this.minWidth=+getComputedStyle(this.hostRef.nativeElement).minWidth.replace("px","")||0,this.minHeight=+getComputedStyle(this.hostRef.nativeElement).minHeight.replace("px","")||0,this.maxWidth=+getComputedStyle(this.hostRef.nativeElement).maxWidth.replace("px","")||1/0,this.maxHeight=+getComputedStyle(this.hostRef.nativeElement).maxHeight.replace("px","")||1/0}startResize(e,i){i.stopPropagation(),this.resizeSide=e,this.model.resizing.set(!0)}resize(e){if(!this.resizeSide)return;let i=Sbe(e.movementX,e.movementY,this.zoom()),n=this.applyResize(this.resizeSide,this.model,i,this.getDistanceToEdge(e)),{x:o,y:a,width:r,height:s}=kbe(n,this.model,this.resizeSide,this.minWidth,this.minHeight,this.maxWidth,this.maxHeight);this.model.setPoint({x:o,y:a}),this.model.width.set(r),this.model.height.set(s)}endResize(){this.resizeSide=null,this.model.resizing.set(!1)}getDistanceToEdge(e){let i=this.spacePointContext.documentPointToFlowPoint({x:e.x,y:e.y}),{x:n,y:o}=this.model.globalPoint();return{left:i.x-n,right:i.x-(n+this.model.width()),top:i.y-o,bottom:i.y-(o+this.model.height())}}applyResize(e,i,n,o){let{x:a,y:r}=i.point(),s=i.width(),l=i.height(),[c,C]=this.settingsService.snapGrid();switch(e){case"left":{let d=n.x+o.left,B=Sl(a+d,c),E=B-a;return{x:B,y:r,width:s-E,height:l}}case"right":{let d=n.x+o.right,B=Sl(s+d,c);return{x:a,y:r,width:B,height:l}}case"top":{let d=n.y+o.top,B=Sl(r+d,C),E=B-r;return{x:a,y:B,width:s,height:l-E}}case"bottom":{let d=n.y+o.bottom,B=Sl(l+d,C);return{x:a,y:r,width:s,height:B}}case"top-left":{let d=n.x+o.left,B=n.y+o.top,E=Sl(a+d,c),u=Sl(r+B,C),m=E-a,f=u-r;return{x:E,y:u,width:s-m,height:l-f}}case"top-right":{let d=n.x+o.right,B=n.y+o.top,E=Sl(r+B,C),u=E-r;return{x:a,y:E,width:Sl(s+d,c),height:l-u}}case"bottom-left":{let d=n.x+o.left,B=n.y+o.bottom,E=Sl(a+d,c),u=E-a;return{x:E,y:r,width:s-u,height:Sl(l+B,C)}}case"bottom-right":{let d=n.x+o.right,B=n.y+o.bottom;return{x:a,y:r,width:Sl(s+d,c),height:Sl(l+B,C)}}}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["","resizable",""]],viewQuery:function(i,n){i&1&&Bs(n.resizer,z5e,5),i&2&&Rr()},inputs:{resizable:[1,"resizable"],resizerColor:[1,"resizerColor"],gap:[1,"gap"]},attrs:Y5e,ngContentSelectors:aL,decls:3,vars:0,consts:[["resizer",""],["stroke-width","2",1,"top",3,"pointerStart"],["stroke-width","2",1,"left",3,"pointerStart"],["stroke-width","2",1,"bottom",3,"pointerStart"],["stroke-width","2",1,"right",3,"pointerStart"],[1,"top-left",3,"pointerStart"],[1,"top-right",3,"pointerStart"],[1,"bottom-left",3,"pointerStart"],[1,"bottom-right",3,"pointerStart"]],template:function(i,n){i&1&&(Yt(),Nt(0,H5e,9,40,"ng-template",null,0,Id),tt(2))},dependencies:[rL],styles:[".top[_ngcontent-%COMP%]{cursor:n-resize}.left[_ngcontent-%COMP%]{cursor:w-resize}.right[_ngcontent-%COMP%]{cursor:e-resize}.bottom[_ngcontent-%COMP%]{cursor:s-resize}.top-left[_ngcontent-%COMP%]{cursor:nw-resize}.top-right[_ngcontent-%COMP%]{cursor:ne-resize}.bottom-left[_ngcontent-%COMP%]{cursor:sw-resize}.bottom-right[_ngcontent-%COMP%]{cursor:se-resize}"],changeDetection:0})}}return eQ([I5],t.prototype,"ngAfterViewInit",null),t})();function Sbe(t,A,e){return{x:s5(t/e),y:s5(A/e)}}function kbe(t,A,e,i,n,o,a){let{x:r,y:s,width:l,height:c}=t;l=Math.max(l,0),c=Math.max(c,0),l=Math.max(i,l),c=Math.max(n,c),l=Math.min(o,l),c=Math.min(a,c),r=Math.min(r,A.point().x+A.width()-i),s=Math.min(s,A.point().y+A.height()-n),r=Math.max(r,A.point().x+A.width()-o),s=Math.max(s,A.point().y+A.height()-a);let C=A.parent();if(C){let B=C.width(),E=C.height(),u=A.point().x,m=A.point().y;r=Math.max(r,0),s=Math.max(s,0),e.includes("left")&&r===0&&(l=Math.min(l,u+A.width())),e.includes("top")&&s===0&&(c=Math.min(c,m+A.height())),l=Math.min(l,B-r),c=Math.min(c,E-s)}let d=toe(A.children());return d&&(e.includes("left")&&(r=Math.min(r,A.point().x+A.width()-(d.x+d.width)),l=Math.max(l,d.x+d.width)),e.includes("right")&&(l=Math.max(l,d.x+d.width)),e.includes("bottom")&&(c=Math.max(c,d.y+d.height)),e.includes("top")&&(s=Math.min(s,A.point().y+A.height()-(d.y+d.height)),c=Math.max(c,d.y+d.height))),{x:r,y:s,width:l,height:c}}var nL=class{constructor(A,e){this.rawHandle=A,this.parentNode=e,this.strokeWidth=2,this.size=fe({width:10+2*this.strokeWidth,height:10+2*this.strokeWidth}),this.pointAbsolute=DA(()=>({x:this.parentNode.globalPoint().x+this.hostOffset().x+this.sizeOffset().x,y:this.parentNode.globalPoint().y+this.hostOffset().y+this.sizeOffset().y})),this.state=fe("idle"),this.updateHostSizeAndPosition$=new rA,this.hostSize=Ir(this.updateHostSizeAndPosition$.pipe(xA(()=>this.getHostSize())),{initialValue:{width:0,height:0}}),this.hostPosition=Ir(this.updateHostSizeAndPosition$.pipe(xA(()=>({x:this.hostReference instanceof HTMLElement?this.hostReference.offsetLeft:0,y:this.hostReference instanceof HTMLElement?this.hostReference.offsetTop:0}))),{initialValue:{x:0,y:0}}),this.hostOffset=DA(()=>{switch(this.rawHandle.position){case"left":return{x:-this.rawHandle.userOffsetX,y:-this.rawHandle.userOffsetY+this.hostPosition().y+this.hostSize().height/2};case"right":return{x:-this.rawHandle.userOffsetX+this.parentNode.size().width,y:-this.rawHandle.userOffsetY+this.hostPosition().y+this.hostSize().height/2};case"top":return{x:-this.rawHandle.userOffsetX+this.hostPosition().x+this.hostSize().width/2,y:-this.rawHandle.userOffsetY};case"bottom":return{x:-this.rawHandle.userOffsetX+this.hostPosition().x+this.hostSize().width/2,y:-this.rawHandle.userOffsetY+this.parentNode.size().height}}}),this.sizeOffset=DA(()=>{switch(this.rawHandle.position){case"left":return{x:-(this.size().width/2),y:0};case"right":return{x:this.size().width/2,y:0};case"top":return{x:0,y:-(this.size().height/2)};case"bottom":return{x:0,y:this.size().height/2}}}),this.hostReference=this.rawHandle.hostReference,this.template=this.rawHandle.template,this.templateContext={$implicit:{point:this.hostOffset,state:this.state,node:this.parentNode.rawNode}}}updateHost(){this.updateHostSizeAndPosition$.next()}getHostSize(){return this.hostReference instanceof HTMLElement?{width:this.hostReference.offsetWidth,height:this.hostReference.offsetHeight}:this.hostReference instanceof SVGGraphicsElement?this.hostReference.getBBox():{width:0,height:0}}},xm=(()=>{class t{constructor(){this.injector=w(Rt),this.handleService=w(iL),this.element=w(dA).nativeElement,this.destroyRef=w(wr),this.position=MA.required(),this.type=MA.required(),this.id=MA(),this.template=MA(),this.offsetX=MA(0),this.offsetY=MA(0)}ngOnInit(){xr(this.injector,()=>{let e=this.handleService.node();if(e){let i=new nL({position:this.position(),type:this.type(),id:this.id(),hostReference:this.element.parentElement,template:this.template(),userOffsetX:this.offsetX(),userOffsetY:this.offsetY()},e);this.handleService.createHandle(i),requestAnimationFrame(()=>i.updateHost()),this.destroyRef.onDestroy(()=>this.handleService.destroyHandle(i))}})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["handle"]],inputs:{position:[1,"position"],type:[1,"type"],id:[1,"id"],template:[1,"template"],offsetX:[1,"offsetX"],offsetY:[1,"offsetY"]},decls:0,vars:0,template:function(i,n){},encapsulation:2,changeDetection:0})}}return t})(),_be=(()=>{class t{constructor(){this.nodeAccessor=w(eE),this.zone=w(At),this.destroyRef=w(wr),this.hostElementRef=w(dA)}ngOnInit(){this.nodeAccessor.model().handles$.pipe(ki(i=>u5([...i.map(n=>n.hostReference),this.hostElementRef.nativeElement],this.zone).pipe(xA(()=>i))),yi(i=>{i.forEach(n=>n.updateHost())}),Kr(this.destroyRef)).subscribe()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["","nodeHandlesController",""]]})}}return t})(),xbe=(()=>{class t{constructor(){this.nodeAccessor=w(eE),this.zone=w(At),this.destroyRef=w(wr),this.hostElementRef=w(dA)}ngOnInit(){let e=this.nodeAccessor.model(),i=this.hostElementRef.nativeElement;Zi(u5([i],this.zone)).pipe(Yn(null),pt(()=>!e.resizing()),yi(()=>{e.width.set(i.clientWidth),e.height.set(i.clientHeight)}),Kr(this.destroyRef)).subscribe()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["","nodeResizeController",""]]})}}return t})(),coe=(()=>{class t{constructor(){this.injector=w(Rt),this.handleService=w(iL),this.draggableService=w(ioe),this.flowStatusService=w(R2),this.nodeRenderingService=w(T1),this.flowSettingsService=w(Cs),this.selectionService=w(_m),this.hostRef=w(dA),this.nodeAccessor=w(eE),this.overlaysService=w(roe),this.connectionController=w(loe,{optional:!0}),this.model=MA.required(),this.nodeTemplate=MA(),this.nodeSvgTemplate=MA(),this.groupNodeTemplate=MA(),this.showMagnet=DA(()=>this.flowStatusService.status().state==="connection-start"||this.flowStatusService.status().state==="connection-validation"||this.flowStatusService.status().state==="reconnection-start"||this.flowStatusService.status().state==="reconnection-validation"),this.toolbars=DA(()=>this.overlaysService.nodeToolbarsMap().get(this.model()))}ngOnInit(){this.model().isVisible.set(!0),this.nodeAccessor.model.set(this.model()),this.handleService.node.set(this.model()),Ln(()=>{this.model().draggable()?this.draggableService.enable(this.hostRef.nativeElement,this.model()):this.draggableService.disable(this.hostRef.nativeElement)},{injector:this.injector})}ngOnDestroy(){this.model().isVisible.set(!1),this.draggableService.destroy(this.hostRef.nativeElement)}startConnection(e,i){e.stopPropagation(),this.connectionController?.startConnection(i)}validateConnection(e){this.connectionController?.validateConnection(e)}resetValidateConnection(e){this.connectionController?.resetValidateConnection(e)}endConnection(){this.connectionController?.endConnection()}pullNode(){this.flowSettingsService.elevateNodesOnSelect()&&this.nodeRenderingService.pullNode(this.model())}selectNode(){this.flowSettingsService.entitiesSelectable()&&this.selectionService.select(this.model())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["g","node",""]],hostAttrs:[1,"vflow-node"],inputs:{model:[1,"model"],nodeTemplate:[1,"nodeTemplate"],nodeSvgTemplate:[1,"nodeSvgTemplate"],groupNodeTemplate:[1,"groupNodeTemplate"]},features:[yt([iL,eE])],attrs:P5e,decls:11,vars:7,consts:[[1,"selectable"],["nodeHandlesController","",1,"selectable"],["rx","5","ry","5",1,"default-group-node",3,"resizable","gap","resizerColor","default-group-node_selected","stroke","fill"],[1,"selectable",3,"click"],["nodeHandlesController","",3,"selected"],[3,"outerHTML"],["type","source","position","right"],["type","target","position","left"],["nodeHandlesController","","nodeResizeController","",1,"wrapper"],[3,"ngTemplateOutlet","ngTemplateOutletContext","ngTemplateOutletInjector"],["nodeHandlesController","",1,"selectable",3,"click"],[3,"ngComponentOutlet","ngComponentOutletInputs","ngComponentOutletInjector"],["rx","5","ry","5",1,"default-group-node",3,"click","resizable","gap","resizerColor"],[3,"ngTemplateOutlet"],["r","5",1,"default-handle"],[3,"handleSizeController"],[1,"magnet"],["r","5",1,"default-handle",3,"pointerStart","pointerEnd"],[3,"pointerStart","pointerEnd","handleSizeController"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"magnet",3,"pointerEnd","pointerOver","pointerOut"]],template:function(i,n){if(i&1&&(T(0,j5e,5,12,":svg:foreignObject",0),T(1,V5e,3,9,":svg:foreignObject",0),T(2,q5e,2,3,":svg:g",1),T(3,W5e,2,3),T(4,X5e,1,11,":svg:rect",2),T(5,$5e,2,3,":svg:g",1),T(6,tDe,1,1),RA(7,sDe,4,4,null,null,ri),RA(9,lDe,2,4,":svg:foreignObject",null,ri)),i&2){let o;O(n.model().rawNode.type==="default"?0:-1),Q(),O(n.model().rawNode.type==="html-template"&&n.nodeTemplate()?1:-1),Q(),O(n.model().rawNode.type==="svg-template"&&n.nodeSvgTemplate()?2:-1),Q(),O(n.model().isComponentType?3:-1),Q(),O(n.model().rawNode.type==="default-group"?4:-1),Q(),O(n.model().rawNode.type==="template-group"&&n.groupNodeTemplate()?5:-1),Q(),O((o=n.model().resizerTemplate())?6:-1,o),Q(),NA(n.model().handles()),Q(2),NA(n.toolbars())}},dependencies:[rL,bbe,xm,t0,A0,Mbe,vbe,_be,xbe,hs],styles:[".magnet[_ngcontent-%COMP%]{opacity:0}.wrapper[_ngcontent-%COMP%]{display:table-cell}.default-group-node[_ngcontent-%COMP%]{stroke-width:1.5px;fill-opacity:.05}.default-group-node_selected[_ngcontent-%COMP%]{stroke-width:2px}.default-handle[_ngcontent-%COMP%]{stroke:#fff;fill:#1b262c}"],changeDetection:0})}}return t})(),Rbe=(()=>{class t{constructor(){this.flowStatusService=w(R2),this.spacePointContext=w(bm),this.flowEntitiesService=w(kl),this.model=MA.required(),this.template=MA(),this.path=DA(()=>{let e=this.flowStatusService.status(),i=this.model().curve;if(e.state==="connection-start"||e.state==="reconnection-start"){let n=e.payload.sourceHandle,o=n.pointAbsolute(),a=n.rawHandle.position,r=this.spacePointContext.svgCurrentSpacePoint(),s=Wne(n.rawHandle.position),l=this.getPathFactoryParams(o,r,a,s);switch(i){case"straight":return XF(l).path;case"bezier":return $F(l).path;case"smooth-step":return Wu(l).path;case"step":return Wu(l,0).path;default:return i(l).path}}if(e.state==="connection-validation"||e.state==="reconnection-validation"){let n=e.payload.sourceHandle,o=n.pointAbsolute(),a=n.rawHandle.position,r=e.payload.targetHandle,s=e.payload.valid?r.pointAbsolute():this.spacePointContext.svgCurrentSpacePoint(),l=e.payload.valid?r.rawHandle.position:Wne(n.rawHandle.position),c=this.getPathFactoryParams(o,s,a,l);switch(i){case"straight":return XF(c).path;case"bezier":return $F(c).path;case"smooth-step":return Wu(c).path;case"step":return Wu(c,0).path;default:return i(c).path}}return null}),this.markerUrl=DA(()=>{let e=this.model().settings.marker;return e?`url(#${Xu(JSON.stringify(e))})`:""}),this.defaultColor="rgb(177, 177, 183)"}getContext(){return{$implicit:{path:this.path,marker:this.markerUrl}}}getPathFactoryParams(e,i,n,o){return{mode:"connection",sourcePoint:e,targetPoint:i,sourcePosition:n,targetPosition:o,allEdges:this.flowEntitiesService.rawEdges(),allNodes:this.flowEntitiesService.rawNodes()}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["g","connection",""]],inputs:{model:[1,"model"],template:[1,"template"]},attrs:cDe,decls:2,vars:2,consts:[["fill","none","stroke-width","2"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,n){i&1&&(T(0,CDe,1,1),T(1,BDe,1,1)),i&2&&(O(n.model().type==="default"?0:-1),Q(),O(n.model().type==="template"?1:-1))},dependencies:[t0],encapsulation:2,changeDetection:0})}}return t})();function Wne(t){switch(t){case"top":return"bottom";case"bottom":return"top";case"left":return"right";case"right":return"left"}}function Nbe(){return String.fromCharCode(65+Math.floor(Math.random()*26))+Date.now()}var Fbe="#fff",Lbe=20,Gbe=2,Xne="rgb(177, 177, 183)",$ne=.1,Kbe=!0,Ube=(()=>{class t{constructor(){this.viewportService=w(U1),this.rootSvg=w(B5).element,this.settingsService=w(Cs),this.backgroundSignal=this.settingsService.background,this.scaledGap=DA(()=>{let e=this.backgroundSignal();return e.type==="dots"?this.viewportService.readableViewport().zoom*(e.gap??Lbe):0}),this.x=DA(()=>this.viewportService.readableViewport().x%this.scaledGap()),this.y=DA(()=>this.viewportService.readableViewport().y%this.scaledGap()),this.patternColor=DA(()=>{let e=this.backgroundSignal();return e.type==="dots"?e.color??Xne:Xne}),this.patternSize=DA(()=>{let e=this.backgroundSignal();return e.type==="dots"?this.viewportService.readableViewport().zoom*(e.size??Gbe)/2:0}),this.bgImageSrc=DA(()=>{let e=this.backgroundSignal();return e.type==="image"?e.src:""}),this.imageSize=Sm(Lo(this.backgroundSignal).pipe(ki(()=>Tbe(this.bgImageSrc())),xA(e=>({width:e.naturalWidth,height:e.naturalHeight}))),{initialValue:{width:0,height:0}}),this.scaledImageWidth=DA(()=>{let e=this.backgroundSignal();if(e.type==="image"){let i=e.fixed?1:this.viewportService.readableViewport().zoom;return this.imageSize().width*i*(e.scale??$ne)}return 0}),this.scaledImageHeight=DA(()=>{let e=this.backgroundSignal();if(e.type==="image"){let i=e.fixed?1:this.viewportService.readableViewport().zoom;return this.imageSize().height*i*(e.scale??$ne)}return 0}),this.imageX=DA(()=>{let e=this.backgroundSignal();return e.type==="image"?e.repeat?e.fixed?0:this.viewportService.readableViewport().x%this.scaledImageWidth():e.fixed?0:this.viewportService.readableViewport().x:0}),this.imageY=DA(()=>{let e=this.backgroundSignal();return e.type==="image"?e.repeat?e.fixed?0:this.viewportService.readableViewport().y%this.scaledImageHeight():e.fixed?0:this.viewportService.readableViewport().y:0}),this.repeated=DA(()=>{let e=this.backgroundSignal();return e.type==="image"&&(e.repeat??Kbe)}),this.patternId=Nbe(),this.patternUrl=`url(#${this.patternId})`,Ln(()=>{let e=this.backgroundSignal();e.type==="dots"&&(this.rootSvg.style.backgroundColor=e.backgroundColor??Fbe),e.type==="solid"&&(this.rootSvg.style.backgroundColor=e.color)})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["g","background",""]],attrs:hDe,decls:2,vars:2,consts:[["patternUnits","userSpaceOnUse"],["x","0","y","0","width","100%","height","100%"]],template:function(i,n){i&1&&(T(0,uDe,3,10),T(1,pDe,2,2)),i&2&&(O(n.backgroundSignal().type==="dots"?0:-1),Q(),O(n.backgroundSignal().type==="image"?1:-1))},encapsulation:2,changeDetection:0})}}return t})();function Tbe(t){let A=new Image;return A.src=t,new Promise(e=>{A.onload=()=>e(A)})}var Obe=(()=>{class t{constructor(){this.markers=MA.required(),this.defaultColor="rgb(177, 177, 183)"}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["defs","flowDefs",""]],inputs:{markers:[1,"markers"]},attrs:mDe,decls:3,vars:2,consts:[["viewBox","-10 -10 20 20","refX","0","refY","0"],["points","-5,-4 1,0 -5,4 -5,-4",1,"marker__arrow_closed",3,"stroke","stroke-width","fill"],["points","-5,-4 0,0 -5,4",1,"marker__arrow_default",3,"stroke","stroke-width"],["points","-5,-4 1,0 -5,4 -5,-4",1,"marker__arrow_closed"],["points","-5,-4 0,0 -5,4",1,"marker__arrow_default"]],template:function(i,n){i&1&&(RA(0,yDe,3,7,":svg:marker",0,ri),Dt(2,"keyvalue")),i&2&&NA(Ut(2,0,n.markers()))},dependencies:[KJ],styles:[".marker__arrow_default[_ngcontent-%COMP%]{stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;fill:none}.marker__arrow_closed[_ngcontent-%COMP%]{stroke-linecap:round;stroke-linejoin:round}"],changeDetection:0})}}return t})(),Jbe=(()=>{class t{constructor(){this.host=w(dA),this.flowSettingsService=w(Cs),this.flowWidth=DA(()=>{let e=this.flowSettingsService.view();return e==="auto"?"100%":e[0]}),this.flowHeight=DA(()=>{let e=this.flowSettingsService.view();return e==="auto"?"100%":e[1]}),u5([this.host.nativeElement],w(At)).pipe(yi(([e])=>{this.flowSettingsService.computedFlowWidth.set(e.contentRect.width),this.flowSettingsService.computedFlowHeight.set(e.contentRect.height)}),Kr()).subscribe()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["svg","flowSizeController",""]],hostVars:2,hostBindings:function(i,n){i&2&&aA("width",n.flowWidth())("height",n.flowHeight())}})}}return t})(),zbe=(()=>{class t{constructor(){this.flowStatusService=w(R2)}resetConnection(){let e=this.flowStatusService.status();(e.state==="connection-start"||e.state==="reconnection-start")&&this.flowStatusService.setIdleStatus()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["svg","rootSvgContext",""]],hostBindings:function(i,n){i&1&&U("mouseup",function(){return n.resetConnection()},oB)("touchend",function(){return n.resetConnection()},oB)("contextmenu",function(){return n.resetConnection()})}})}}return t})();function oL(t,A){let e=[];for(let i of A){let{x:n,y:o}=i.globalPoint();t.x>=n&&t.x<=n+i.width()&&t.y>=o&&t.y<=o+i.height()&&e.push({x:t.x-n,y:t.y-o,spaceNodeId:i.rawNode.id})}return e.reverse(),e.push({spaceNodeId:null,x:t.x,y:t.y}),e}var lL=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})(),Ybe=(()=>{class t extends lL{shouldRenderNode(e){return!e.isVisible()}static{this.\u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})()}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})();function Hbe(t,A){if(Object.keys(A.preview().style).length){Vbe(t,A);return}if(A.rawNode.type==="default"){Pbe(t,A);return}if(A.rawNode.type==="default-group"){jbe(t,A);return}qbe(t,A)}function Pbe(t,A){let e=A.globalPoint(),i=A.width(),n=A.height();goe(t,A,5),t.fillStyle="white",t.fill(),t.strokeStyle="#1b262c",t.lineWidth=1.5,t.stroke(),t.fillStyle="black",t.font="14px Arial",t.textAlign="center",t.textBaseline="middle";let o=e.x+i/2,a=e.y+n/2;t.fillText(A.text(),o,a)}function jbe(t,A){let e=A.globalPoint(),i=A.width(),n=A.height();t.globalAlpha=.05,t.fillStyle=A.color(),t.fillRect(e.x,e.y,i,n),t.globalAlpha=1,t.strokeStyle=A.color(),t.lineWidth=1.5,t.strokeRect(e.x,e.y,i,n)}function Vbe(t,A){let e=A.globalPoint(),i=A.width(),n=A.height(),o=A.preview().style;if(o.borderRadius){let a=parseFloat(o.borderRadius);goe(t,A,a)}else t.beginPath(),t.rect(e.x,e.y,i,n),t.closePath();o.backgroundColor&&(t.fillStyle=o.backgroundColor),o.borderColor&&(t.strokeStyle=o.borderColor),o.borderWidth&&(t.lineWidth=parseFloat(o.borderWidth)),t.fill(),t.stroke()}function qbe(t,A){let e=A.globalPoint(),i=A.width(),n=A.height();t.fillStyle="rgb(0 0 0 / 10%)",t.fillRect(e.x,e.y,i,n)}function goe(t,A,e){let i=A.globalPoint(),n=A.width(),o=A.height();t.beginPath(),t.moveTo(i.x+e,i.y),t.lineTo(i.x+n-e,i.y),t.quadraticCurveTo(i.x+n,i.y,i.x+n,i.y+e),t.lineTo(i.x+n,i.y+o-e),t.quadraticCurveTo(i.x+n,i.y+o,i.x+n-e,i.y+o),t.lineTo(i.x+e,i.y+o),t.quadraticCurveTo(i.x,i.y+o,i.x,i.y+o-e),t.lineTo(i.x,i.y+e),t.quadraticCurveTo(i.x,i.y,i.x+e,i.y),t.closePath()}var Zbe=(()=>{class t{constructor(){this.viewportService=w(U1),this.renderStrategy=w(lL),this.nodeRenderingService=w(T1),this.renderer2=w(rn),this.element=w(dA).nativeElement,this.ctx=this.element.getContext("2d"),this.width=MA(0),this.height=MA(0),this.dpr=window.devicePixelRatio,Ln(()=>{this.renderer2.setProperty(this.element,"width",this.width()*this.dpr),this.renderer2.setProperty(this.element,"height",this.height()*this.dpr),this.renderer2.setStyle(this.element,"width",`${this.width()}px`),this.renderer2.setStyle(this.element,"height",`${this.height()}px`),this.ctx.scale(this.dpr,this.dpr)}),Ln(()=>{let e=this.viewportService.readableViewport();this.ctx.clearRect(0,0,this.width(),this.height()),this.ctx.save(),this.ctx.setTransform(e.zoom*this.dpr,0,0,e.zoom*this.dpr,e.x*this.dpr,e.y*this.dpr);for(let i=0;i{class t{constructor(){this.nodeRenderingService=w(T1),this.edgeRenderingService=w(km),this.flowEntitiesService=w(kl),this.settingsService=w(Cs),this.flowInitialized=fe(!1),w(At).runOutsideAngular(()=>nA(this,null,function*(){yield Wbe(2),this.flowInitialized.set(!0)}))}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=Ze({token:t,factory:t.\u0275fac})}}return t})();function Wbe(t){return new Promise(A=>{let e=0;function i(){e++,e{class t{constructor(){this.nodeRenderingService=w(T1),this.flowStatus=w(R2),this.tolerance=MA(10),this.lineColor=MA("#1b262c"),this.isNodeDragging=DA(()=>zne(this.flowStatus.status())),this.intersections=C5(e=>{let i=this.flowStatus.status();if(zne(i)){let n=i.payload.node,o=Aoe(a5(n)),a=this.nodeRenderingService.viewportNodes().filter(d=>d!==n).filter(d=>!n.children().includes(d)).map(d=>Aoe(a5(d))),r=[],s=o.x,l=o.y,c=1/0,C=1/0;return a.forEach(d=>{let B=o.left+o.width/2,E=d.left+d.width/2;for(let[f,D,S,k]of[[B,E,E-o.width/2,!0],[o.left,d.left,d.left,!1],[o.left,d.right,d.right,!1],[o.right,d.left,d.left-o.width,!1],[o.right,d.right,d.right-o.width,!1]]){let b=Math.abs(f-D);if(b<=this.tolerance()){let x=Math.min(o.top,d.top),F=Math.max(o.bottom,d.bottom);if(r.push({x:D,y:x,x2:D,y2:F,isCenter:k}),be.payload.node),xA(e=>[e,this.intersections()]),yi(([e,i])=>{if(i){let n={x:i.snappedX,y:i.snappedY},o=e.parent()?[e.parent()]:[];e.setPoint(oL(n,o)[0])}}),Kr()).subscribe()}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["g","alignmentHelper",""]],inputs:{tolerance:[1,"tolerance"],lineColor:[1,"lineColor"]},attrs:DDe,decls:1,vars:1,template:function(i,n){i&1&&T(0,SDe,1,1),i&2&&O(n.isNodeDragging()?0:-1)},encapsulation:2,changeDetection:0})}}return t})();var E5=(()=>{class t{constructor(){this.viewportService=w(U1),this.flowEntitiesService=w(kl),this.nodesChangeService=w(AL),this.edgesChangeService=w(tL),this.nodeRenderingService=w(T1),this.edgeRenderingService=w(km),this.flowSettingsService=w(Cs),this.componentEventBusService=w(WF),this.keyboardService=w(ZF),this.injector=w(Rt),this.flowRenderingService=w(eoe),this.alignmentHelper=MA(!1),this.nodeModels=this.nodeRenderingService.nodes,this.groups=this.nodeRenderingService.groups,this.nonGroups=this.nodeRenderingService.nonGroups,this.edgeModels=this.edgeRenderingService.edges,this.onComponentNodeEvent=Hn(this.componentEventBusService.event$),this.nodeTemplateDirective=nC($u),this.nodeSvgTemplateDirective=nC(Pne),this.groupNodeTemplateDirective=nC(c5),this.edgeTemplateDirective=nC(l5),this.edgeLabelHtmlDirective=nC(Hne),this.connectionTemplateDirective=nC(Yne),this.mapContext=Ho(jF),this.spacePointContext=Ho.required(bm),this.viewport=this.viewportService.readableViewport.asReadonly(),this.nodesChange=Sm(this.nodesChangeService.changes$,{initialValue:[]}),this.edgesChange=Sm(this.edgesChangeService.changes$,{initialValue:[]}),this.initialized=this.flowRenderingService.flowInitialized.asReadonly(),this.viewportChange$=Lo(this.viewportService.readableViewport).pipe(Kl(1)),this.nodesChange$=this.nodesChangeService.changes$,this.edgesChange$=this.edgesChangeService.changes$,this.initialized$=Lo(this.flowRenderingService.flowInitialized),this.markers=this.flowEntitiesService.markers,this.minimap=this.flowEntitiesService.minimap,this.flowOptimization=this.flowSettingsService.optimization,this.flowWidth=this.flowSettingsService.computedFlowWidth,this.flowHeight=this.flowSettingsService.computedFlowHeight}set view(e){this.flowSettingsService.view.set(e)}set minZoom(e){this.flowSettingsService.minZoom.set(e)}set maxZoom(e){this.flowSettingsService.maxZoom.set(e)}set background(e){this.flowSettingsService.background.set(fbe(e))}set optimization(e){this.flowSettingsService.optimization.update(i=>Y(Y({},i),e))}set entitiesSelectable(e){this.flowSettingsService.entitiesSelectable.set(e)}set keyboardShortcuts(e){this.keyboardService.setShortcuts(e)}set connection(e){this.flowEntitiesService.connection.set(e)}get connection(){return this.flowEntitiesService.connection()}set snapGrid(e){this.flowSettingsService.snapGrid.set(e)}set elevateNodesOnSelect(e){this.flowSettingsService.elevateNodesOnSelect.set(e)}set elevateEdgesOnSelect(e){this.flowSettingsService.elevateEdgesOnSelect.set(e)}set nodes(e){let i=xr(this.injector,()=>d5.nodes(e,this.flowEntitiesService.nodes()));jne(i,this.flowEntitiesService.edges()),this.flowEntitiesService.nodes.set(i),i.forEach(n=>this.nodeRenderingService.pullNode(n))}set edges(e){let i=xr(this.injector,()=>d5.edges(e,this.flowEntitiesService.edges()));jne(this.flowEntitiesService.nodes(),i),this.flowEntitiesService.edges.set(i)}viewportTo(e){this.viewportService.writableViewport.set({changeType:"absolute",state:e,duration:0})}zoomTo(e){this.viewportService.writableViewport.set({changeType:"absolute",state:{zoom:e},duration:0})}panTo(e){this.viewportService.writableViewport.set({changeType:"absolute",state:e,duration:0})}fitView(e){this.viewportService.fitView(e)}getNode(e){return this.flowEntitiesService.getNode(e)?.rawNode}getDetachedEdges(){return this.flowEntitiesService.getDetachedEdges().map(e=>e.edge)}documentPointToFlowPoint(e,i){let n=this.spacePointContext().documentPointToFlowPoint(e);return i?.spaces?oL(n,this.nodeRenderingService.groups()):n}getIntesectingNodes(e,i={partially:!0}){return YDe(e,this.nodeModels(),i).map(n=>n.rawNode)}toNodeSpace(e,i){let n=this.nodeModels().find(a=>a.rawNode.id===e);if(!n)return{x:1/0,y:1/0};if(i===null)return n.globalPoint();let o=this.nodeModels().find(a=>a.rawNode.id===i);return o?oL(n.globalPoint(),[o])[0]:{x:1/0,y:1/0}}trackNodes(e,{rawNode:i}){return i}trackEdges(e,{edge:i}){return i}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["vflow"]],contentQueries:function(i,n,o){i&1&&Pf(o,n.nodeTemplateDirective,$u,5)(o,n.nodeSvgTemplateDirective,Pne,5)(o,n.groupNodeTemplateDirective,c5,5)(o,n.edgeTemplateDirective,l5,5)(o,n.edgeLabelHtmlDirective,Hne,5)(o,n.connectionTemplateDirective,Yne,5),i&2&&Rr(6)},viewQuery:function(i,n){i&1&&Bs(n.mapContext,jF,5)(n.spacePointContext,bm,5),i&2&&Rr(2)},inputs:{view:"view",minZoom:"minZoom",maxZoom:"maxZoom",background:"background",optimization:"optimization",entitiesSelectable:"entitiesSelectable",keyboardShortcuts:"keyboardShortcuts",connection:[2,"connection","connection",e=>new r5(e)],snapGrid:"snapGrid",elevateNodesOnSelect:"elevateNodesOnSelect",elevateEdgesOnSelect:"elevateEdgesOnSelect",nodes:"nodes",alignmentHelper:[1,"alignmentHelper"],edges:"edges"},outputs:{onComponentNodeEvent:"onComponentNodeEvent"},features:[yt([ioe,U1,R2,kl,AL,tL,T1,km,_m,Cs,WF,ZF,roe,{provide:lL,useClass:Ybe},eoe]),Jf([{directive:mbe,outputs:["onNodesChange","onNodesChange","onNodesChange.position","onNodesChange.position","onNodesChange.position.single","onNodesChange.position.single","onNodesChange.position.many","onNodesChange.position.many","onNodesChange.size","onNodesChange.size","onNodesChange.size.single","onNodesChange.size.single","onNodesChange.size.many","onNodesChange.size.many","onNodesChange.add","onNodesChange.add","onNodesChange.add.single","onNodesChange.add.single","onNodesChange.add.many","onNodesChange.add.many","onNodesChange.remove","onNodesChange.remove","onNodesChange.remove.single","onNodesChange.remove.single","onNodesChange.remove.many","onNodesChange.remove.many","onNodesChange.select","onNodesChange.select","onNodesChange.select.single","onNodesChange.select.single","onNodesChange.select.many","onNodesChange.select.many","onEdgesChange","onEdgesChange","onEdgesChange.detached","onEdgesChange.detached","onEdgesChange.detached.single","onEdgesChange.detached.single","onEdgesChange.detached.many","onEdgesChange.detached.many","onEdgesChange.add","onEdgesChange.add","onEdgesChange.add.single","onEdgesChange.add.single","onEdgesChange.add.many","onEdgesChange.add.many","onEdgesChange.remove","onEdgesChange.remove","onEdgesChange.remove.single","onEdgesChange.remove.single","onEdgesChange.remove.many","onEdgesChange.remove.many","onEdgesChange.select","onEdgesChange.select","onEdgesChange.select.single","onEdgesChange.select.single","onEdgesChange.select.many","onEdgesChange.select.many"]}])],decls:11,vars:8,consts:[["flow",""],["rootSvgRef","","rootSvgContext","","rootPointer","","flowSizeController","",1,"root-svg"],["flowDefs","",3,"markers"],["background",""],["mapContext","","spacePointContext",""],["connection","",3,"model","template"],[3,"ngTemplateOutlet"],["previewFlow","",1,"preview-flow",3,"width","height"],["alignmentHelper",""],["alignmentHelper","",3,"tolerance","lineColor"],["node","",3,"model","groupNodeTemplate"],["edge","",3,"model","edgeTemplate","edgeLabelHtmlTemplate"],["node","",3,"model","nodeTemplate","nodeSvgTemplate"],["node","",3,"model","nodeTemplate","nodeSvgTemplate","groupNodeTemplate"]],template:function(i,n){if(i&1&&(mt(),I(0,"svg",1,0),le(2,"defs",2)(3,"g",3),I(4,"g",4),T(5,xDe,2,1),le(6,"g",5),T(7,LDe,6,0),T(8,UDe,4,0),h(),T(9,TDe,1,1,":svg:ng-container",6),h(),T(10,ODe,1,2,"canvas",7)),i&2){let o,a,r;Q(2),H("markers",n.markers()),Q(3),O((o=n.alignmentHelper())?5:-1,o),Q(),H("model",n.connection)("template",(a=n.connectionTemplateDirective())==null?null:a.templateRef),Q(),O(n.flowOptimization().detachedGroupsLayer?7:-1),Q(),O(n.flowOptimization().detachedGroupsLayer?-1:8),Q(),O((r=n.minimap())?9:-1,r),Q(),O(n.flowOptimization().virtualization?10:-1)}},dependencies:[B5,zbe,h5,Jbe,Obe,Ube,jF,bm,Rbe,coe,sL,t0,Zbe,Xbe],styles:["[_nghost-%COMP%]{display:grid;grid-template-columns:1fr;width:100%;height:100%;-webkit-user-select:none;user-select:none}[_nghost-%COMP%] *{box-sizing:border-box}.root-svg[_ngcontent-%COMP%]{grid-row-start:1;grid-column-start:1}.preview-flow[_ngcontent-%COMP%]{pointer-events:none;grid-row-start:1;grid-column-start:1}"],changeDetection:0})}}return t})();var Q5=(()=>{class t{constructor(){this.flowSettingsService=w(Cs),this.selectionService=w(_m),this.parentEdge=w(sL,{optional:!0}),this.parentNode=w(coe,{optional:!0}),this.host=w(dA),this.selectOnEvent=this.getEvent$().pipe(yi(()=>this.select()),Kr()).subscribe()}select(){let e=this.entity();e&&this.flowSettingsService.entitiesSelectable()&&this.selectionService.select(e)}entity(){return this.parentNode?this.parentNode.model():this.parentEdge?this.parentEdge.model():null}getEvent$(){return Wg(this.host.nativeElement,"click")}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=We({type:t,selectors:[["","selectable",""]]})}}return t})();var Coe=(()=>{class t{constructor(){this.edge=w(sL),this.flowSettingsService=w(Cs),this.edgeRenderingService=w(km),this.model=this.edge.model(),this.context=this.model.context.$implicit}pull(){this.flowSettingsService.elevateEdgesOnSelect()&&this.edgeRenderingService.pull(this.model)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=De({type:t,selectors:[["g","customTemplateEdge",""]],hostBindings:function(i,n){i&1&&U("mousedown",function(){return n.pull()})("touchstart",function(){return n.pull()})},attrs:JDe,ngContentSelectors:aL,decls:3,vars:1,consts:[["interactiveEdge",""],[1,"interactive-edge"]],template:function(i,n){i&1&&(Yt(),tt(0),mt(),eo(1,"path",1,0)),i&2&&(Q(),aA("d",n.context.path()))},styles:[".interactive-edge[_ngcontent-%COMP%]{fill:none;stroke-width:20;stroke:transparent}"],changeDetection:0})}}return t})();var $be=["canvas"],e7e=["svgCanvas"],A7e=()=>({type:"dots",color:"#424242",size:1,gap:12}),t7e=()=>[12,12],i7e=(t,A)=>A.name;function n7e(t,A){if(t&1){let e=ae();I(0,"div",6)(1,"div",11)(2,"button",12),U("click",function(){L(e);let n=p();return G(n.backToMainCanvas())}),I(3,"mat-icon"),v(4,"arrow_back"),h()(),I(5,"div",13)(6,"span",14),v(7,"smart_toy"),h(),I(8,"div",15)(9,"h3",16),v(10),h(),I(11,"p",17),v(12,"Agent Tool"),h()()()()()}if(t&2){let e=p();Q(2),H("matTooltip",e.getBackButtonTooltip()),Q(8),ne(e.currentAgentTool())}}function o7e(t,A){if(t&1){let e=ae();I(0,"span",18),U("click",function(){L(e);let n=p();return G(n.toggleSidePanelRequest.emit())}),v(1,"left_panel_open"),h()}}function a7e(t,A){if(t&1){let e=ae();mt(),I(0,"foreignObject"),fr(),I(1,"div",27),U("click",function(n){return n.stopPropagation()}),I(2,"button",28,0),U("click",function(n){return n.stopPropagation()}),I(4,"mat-icon"),v(5,"add"),h()(),I(6,"span",29),v(7,"Add sub-agent"),h(),I(8,"mat-menu",null,1)(10,"button",30),U("click",function(n){let o;L(e);let a=Ei(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LlmAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(11,"mat-icon"),v(12,"psychology"),h(),I(13,"span"),v(14,"LLM Agent"),h()(),I(15,"button",30),U("click",function(n){let o;L(e);let a=Ei(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("SequentialAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(16,"mat-icon"),v(17,"more_horiz"),h(),I(18,"span"),v(19,"Sequential Agent"),h()(),I(20,"button",30),U("click",function(n){let o;L(e);let a=Ei(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LoopAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(21,"mat-icon"),v(22,"sync"),h(),I(23,"span"),v(24,"Loop Agent"),h()(),I(25,"button",30),U("click",function(n){let o;L(e);let a=Ei(3),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("ParallelAgent",r.node.data==null||(o=r.node.data())==null?null:o.name,a,n,!0))}),I(26,"mat-icon"),v(27,"density_medium"),h(),I(28,"span"),v(29,"Parallel Agent"),h()()()()()}if(t&2){let e=Ei(9),i=p().$implicit;aA("width",200)("height",100)("x",i.width()/2-100)("y",i.height()/2-40),Q(2),H("matMenuTriggerFor",e)}}function r7e(t,A){t&1&&(mt(),le(0,"handle",26))}function s7e(t,A){if(t&1){let e=ae();mt(),I(0,"g")(1,"rect",21),U("click",function(n){let o=L(e).$implicit,a=p(2);return G(a.onGroupClick(o.node,n))})("pointerdown",function(n){let o=L(e).$implicit,a=p(2);return G(a.onGroupPointerDown(o.node,n))}),h(),I(2,"foreignObject",22),fr(),I(3,"div",23)(4,"mat-icon",24),v(5),h(),I(6,"span",25),v(7),h()()(),T(8,a7e,30,5,":svg:foreignObject"),T(9,r7e,1,0,":svg:handle",26),h()}if(t&2){let e,i,n=A.$implicit,o=p(2);Q(),vt("stroke",o.isGroupSelected(n.node)?"rgba(0, 187, 234, 0.8)":"rgba(0, 187, 234, 0.3)")("fill",o.isGroupSelected(n.node)?"rgba(0, 187, 234, 0.1)":"rgba(0, 187, 234, 0.03)")("stroke-width",o.isGroupSelected(n.node)?3:2),aA("width",n.width())("height",n.height()),Q(),aA("width",200)("height",32),Q(3),ne(o.getAgentIcon(n.node.data==null||(e=n.node.data())==null?null:e.agent_class)),Q(2),ne(n.node.data==null||(i=n.node.data())==null?null:i.agent_class),Q(),O(o.isGroupEmpty(n.node.id)?8:-1),Q(),O(o.shouldShowTopHandle(n.node)?9:-1)}}function l7e(t,A){t&1&&(I(0,"span",35),v(1,"Root"),h())}function c7e(t,A){if(t&1){let e=ae();I(0,"button",43),U("click",function(n){L(e),p();let o=Ti(0);return p(2).openDeleteSubAgentDialog(o),G(n.stopPropagation())}),I(1,"mat-icon"),v(2,"delete"),h()()}}function g7e(t,A){if(t&1){let e=ae();I(0,"div",46),U("click",function(n){let o=L(e).$implicit,a=p(2).$implicit;return p(2).selectTool(o,a.node),G(n.stopPropagation())}),I(1,"mat-icon",47),v(2),h(),I(3,"span",48),v(4),h()()}if(t&2){let e=A.$implicit,i=p(4);Q(2),ne(i.getToolIcon(e)),Q(2),ne(e.name)}}function C7e(t,A){if(t&1&&(I(0,"div",38)(1,"div",44),RA(2,g7e,5,2,"div",45,i7e),h()()),t&2){p();let e=Ti(3);Q(2),NA(e)}}function d7e(t,A){if(t&1){let e=ae();I(0,"div",39)(1,"button",49,2),U("click",function(n){return n.stopPropagation()}),I(3,"span",50),v(4,"+"),h()(),I(5,"mat-menu",null,3)(7,"button",30),U("click",function(n){let o;L(e);let a=Ei(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LlmAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(8,"mat-icon"),v(9,"psychology"),h(),I(10,"span"),v(11,"LLM Agent"),h()(),I(12,"button",30),U("click",function(n){let o;L(e);let a=Ei(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("SequentialAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(13,"mat-icon"),v(14,"more_horiz"),h(),I(15,"span"),v(16,"Sequential Agent"),h()(),I(17,"button",30),U("click",function(n){let o;L(e);let a=Ei(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("LoopAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(18,"mat-icon"),v(19,"sync"),h(),I(20,"span"),v(21,"Loop Agent"),h()(),I(22,"button",30),U("click",function(n){let o;L(e);let a=Ei(2),r=p().$implicit,s=p(2);return G(s.handleAgentTypeSelection("ParallelAgent",(o=r.node.data())==null?null:o.name,a,n))}),I(23,"mat-icon"),v(24,"density_medium"),h(),I(25,"span"),v(26,"Parallel Agent"),h()()()()}if(t&2){let e=Ei(6);Q(),H("matMenuTriggerFor",e)}}function I7e(t,A){t&1&&le(0,"handle",40)}function B7e(t,A){t&1&&le(0,"handle",26)}function h7e(t,A){t&1&&le(0,"handle",41)}function u7e(t,A){t&1&&le(0,"handle",42)}function E7e(t,A){if(t&1){let e=ae();so(0)(1),Dt(2,"async"),so(3),I(4,"div",31),U("click",function(n){let o=L(e).$implicit,a=p(2);return G(a.onCustomTemplateNodeClick(o.node,n))})("pointerdown",function(n){let o=L(e).$implicit,a=p(2);return G(a.onNodePointerDown(o.node,n))}),I(5,"div",32)(6,"div",33)(7,"mat-icon",34),v(8),h(),v(9),T(10,l7e,2,0,"span",35),h(),I(11,"div",36),T(12,c7e,3,0,"button",37),h()(),T(13,C7e,4,0,"div",38),T(14,d7e,27,1,"div",39),T(15,I7e,1,0,"handle",40),T(16,B7e,1,0,"handle",26),T(17,h7e,1,0,"handle",41),T(18,u7e,1,0,"handle",42),h()}if(t&2){let e=A.$implicit,i=p(2),n=e.node.data==null?null:e.node.data(),o=lo((n==null?null:n.name)||"root_agent"),a=Ut(2,17,i.toolsMap$);Q(3);let s=lo(i.getToolsForNode(o,a)).length>0;Q(),_e("custom-node_selected",i.isNodeSelected(e.node))("custom-node_has-tools",s)("in-group",e.node.parentId&&e.node.parentId()),Q(4),ne(i.getAgentIcon(n==null?null:n.agent_class)),Q(),pA(" ",o," "),Q(),O(i.isRootAgent(o)?10:-1),Q(2),O(i.isRootAgentForCurrentTab(o)?-1:12),Q(),O(s?13:-1),Q(),O(i.shouldShowAddButton(e.node)?14:-1),Q(),O(i.shouldShowLeftHandle(e.node)?15:-1),Q(),O(i.shouldShowTopHandle(e.node)?16:-1),Q(),O(i.shouldShowRightHandle(e.node)?17:-1),Q(),O(i.shouldShowBottomHandle(e.node)?18:-1)}}function Q7e(t,A){if(t&1&&(I(0,"vflow",8),Nt(1,s7e,10,14,"ng-template",19)(2,E7e,19,20,"ng-template",20),h()),t&2){let e=p();H("nodes",e.vflowNodes())("edges",e.edges())("background",$g(4,A7e))("snapGrid",$g(5,t7e))}}function p7e(t,A){t&1&&(I(0,"div",9)(1,"div",51)(2,"mat-icon",52),v(3,"touch_app"),h(),I(4,"h4"),v(5,"Start Building Your ADK"),h(),I(6,"p"),v(7,"Drag components from the left panel to create your workflow"),h(),I(8,"div",53)(9,"div",54)(10,"mat-icon"),v(11,"drag_indicator"),h(),I(12,"span"),v(13,"Drag to move nodes"),h()(),I(14,"div",54)(15,"mat-icon"),v(16,"link"),h(),I(17,"span"),v(18,"Shift + Click to connect nodes"),h()()()()())}var AE=class t{constructor(A,e,i){this.dialog=A;this.agentService=e;this.router=i;this.toolsMap$=this.agentBuilderService.getAgentToolsMap(),this.agentBuilderService.getSelectedTool().subscribe(n=>{this.selectedTool=n})}_snackbarService=w(B0);canvasRef;svgCanvasRef;agentBuilderService=w(h0);cdr=w(xt);showSidePanel=!0;showBuilderAssistant=!1;appNameInput="";toggleSidePanelRequest=new Le;builderAssistantCloseRequest=new Le;ctx;connections=fe([]);nodeId=1;edgeId=1;callbackId=1;toolId=1;appName="";nodes=fe([]);edges=fe([]);workflowShellWidth=340;workflowGroupWidth=420;workflowGroupHeight=220;workflowGroupYOffset=180;workflowGroupXOffset=-40;workflowInnerNodePoint={x:40,y:80};groupNodes=fe([]);vflowNodes=DA(()=>[...this.groupNodes(),...this.nodes()]);selectedAgents=[];selectedTool;selectedCallback;currentAgentTool=fe(null);agentToolBoards=fe(new Map);isAgentToolMode=!1;navigationStack=[];existingAgent=void 0;toolsMap$;nodePositions=new Map;ngOnInit(){this.agentService.getApp().subscribe(A=>{A&&(this.appName=A)}),this.appNameInput&&(this.appName=this.appNameInput),this.agentBuilderService.getNewTabRequest().subscribe(A=>{if(A){let{tabName:e,currentAgentName:i}=A;this.switchToAgentToolBoard(e,i)}}),this.agentBuilderService.getTabDeletionRequest().subscribe(A=>{A&&this.deleteAgentToolBoard(A)}),this.agentBuilderService.getSelectedCallback().subscribe(A=>{this.selectedCallback=A}),this.agentBuilderService.getAgentCallbacks().subscribe(A=>{if(A){let e=this.nodes().find(i=>i.data?i.data().name===A.agentName:void 0);if(e&&e.data){let i=e.data();i.callbacks=A.callbacks,e.data.set(i)}}}),this.agentBuilderService.getDeleteSubAgentSubject().subscribe(A=>{A&&this.openDeleteSubAgentDialog(A)}),this.agentBuilderService.getAddSubAgentSubject().subscribe(A=>{A.parentAgentName&&this.addSubAgent(A.parentAgentName,A.agentClass,A.isFromEmptyGroup)}),this.agentBuilderService.getSelectedNode().subscribe(A=>{this.selectedAgents=this.nodes().filter(e=>e.data&&e.data().name===A?.name)}),this.toolsMap$.subscribe(A=>{this.nodes().some(i=>i.parentId&&i.parentId())&&this.groupNodes().length>0&&this.updateGroupDimensions()})}ngOnChanges(A){A.appNameInput&&A.appNameInput.currentValue&&(this.appName=A.appNameInput.currentValue)}ngAfterViewInit(){}onCustomTemplateNodeClick(A,e){this.shouldIgnoreNodeInteraction(e.target)||this.selectAgentNode(A,{openConfig:!0})}onNodePointerDown(A,e){this.shouldIgnoreNodeInteraction(e.target)||this.selectAgentNode(A,{openConfig:!1})}onGroupClick(A,e){if(e.stopPropagation(),!A?.data)return;let i=A.data().name,n=this.nodes().find(o=>o.data&&o.data().name===i);n&&this.selectAgentNode(n,{openConfig:!0})}onGroupPointerDown(A,e){if(e.stopPropagation(),!A?.data)return;let i=A.data().name,n=this.nodes().find(o=>o.data&&o.data().name===i);n&&this.selectAgentNode(n,{openConfig:!1})}onCanvasClick(A){let e=A.target;if(!e)return;let i=[".custom-node",".action-button-bar",".add-subagent-btn",".open-panel-btn",".agent-tool-banner",".mat-mdc-menu-panel"];e.closest(i.join(","))||this.clearCanvasSelection()}shouldIgnoreNodeInteraction(A){return A?!!A.closest("mat-chip, .add-subagent-btn, .mat-mdc-menu-panel"):!1}selectAgentNode(A,e={}){if(!A?.data)return;let i=this.agentBuilderService.getNode(A.data().name);i&&(this.agentBuilderService.setSelectedTool(void 0),this.agentBuilderService.setSelectedNode(i),this.nodePositions.set(i.name,Y({},A.point())),e.openConfig&&this.agentBuilderService.requestSideTabChange("config"))}handleAgentTypeSelection(A,e,i,n,o=!1){n.stopPropagation(),i?.closeMenu(),this.onAgentTypeSelected(A,e,o)}clearCanvasSelection(){!this.selectedAgents.length&&!this.selectedTool&&!this.selectedCallback||(this.selectedAgents=[],this.selectedTool=void 0,this.selectedCallback=void 0,this.agentBuilderService.setSelectedNode(void 0),this.agentBuilderService.setSelectedTool(void 0),this.agentBuilderService.setSelectedCallback(void 0),this.cdr.markForCheck())}onAddResource(A){}onAgentTypeSelected(A,e,i=!1){e&&this.addSubAgent(e,A,i)}generateNodeId(){return this.nodeId+=1,this.nodeId.toString()}generateEdgeId(){return this.edgeId+=1,this.edgeId.toString()}createNode(A,e,i){let n=fe(A),a={id:this.generateNodeId(),point:fe(Y({},e)),type:"html-template",data:n};return i&&(a.parentId=fe(i)),this.nodePositions.set(A.name,Y({},a.point())),a}createWorkflowGroup(A,e,i,n,o,a){let r,s=null;if(n){let B=(o||this.groupNodes()).find(E=>E.id===n);if(B){let E=B.point(),u=B.height?B.height():this.workflowGroupHeight;if(a&&o){let m=a.filter(f=>f.parentId&&f.parentId()===B.id);if(m.length>0){let P=0;for(let j of m){let X=j.data?j.data():void 0,Ae=120;X&&X.tools&&X.tools.length>0&&(Ae+=20+X.tools.length*36),P=Math.max(P,Ae)}u=Math.max(220,80+P+40)}}r={x:E.x,y:E.y+u+60},s=null}else r={x:i.x+this.workflowGroupXOffset,y:i.y+this.workflowGroupYOffset}}else r={x:i.x+this.workflowGroupXOffset,y:i.y+this.workflowGroupYOffset};let l=this.generateNodeId(),c={id:l,point:fe(r),type:"template-group",data:fe(A),parentId:fe(s),width:fe(this.workflowGroupWidth),height:fe(this.workflowGroupHeight)},C=A.agent_class==="SequentialAgent"?{id:this.generateEdgeId(),source:e.id,sourceHandle:"source-bottom",target:l,targetHandle:"target-top"}:null;return{groupNode:c,edge:C}}calculateWorkflowChildPosition(A,e){let r=(e-20)/2;return{x:45+A*428,y:r}}createAgentNodeWithGroup(A,e,i,n,o){let a=this.createNode(A,e,i),r=null,s=null;if(this.isWorkflowAgent(A.agent_class)){let l=this.createWorkflowGroup(A,a,e,i,n,o);r=l.groupNode,s=l.edge}return{shellNode:a,groupNode:r,groupEdge:s}}createWorkflowChildEdge(A,e){return this.createWorkflowChildEdgeFromArrays(A,e,this.nodes(),this.groupNodes())}createWorkflowChildEdgeFromArrays(A,e,i,n){if(!e)return null;let o=n.find(r=>r.id===e);if(!o||!o.data)return null;let a=o.data().agent_class;if(a==="LoopAgent"||a==="ParallelAgent"){let r=i.find(s=>s.data&&s.data().name===o.data().name);if(r)return{id:this.generateEdgeId(),source:r.id,sourceHandle:"source-bottom",target:A.id,targetHandle:"target-top"}}if(a==="SequentialAgent"){let r=i.filter(c=>c.parentId&&c.parentId()===e);if(r.length===0)return null;r.sort((c,C)=>c.point().x-C.point().x);let s=r.findIndex(c=>c.id===A.id);if(s<=0)return null;let l=r[s-1];return{id:this.generateEdgeId(),source:l.id,sourceHandle:"source-right",target:A.id,targetHandle:"target-left"}}return null}isWorkflowAgent(A){return A?A==="SequentialAgent"||A==="ParallelAgent"||A==="LoopAgent":!1}addSubAgent(A,e="LlmAgent",i=!1){let n=this.nodes().find(C=>C.data&&C.data().name===A);if(!n||!n.data)return;let a={name:this.agentBuilderService.getNextSubAgentName(),agent_class:e,model:"gemini-2.5-flash",instruction:"You are a sub-agent that performs specialized tasks.",isRoot:!1,sub_agents:[],tools:[]},r=this.isWorkflowAgent(n.data().agent_class),s=n.parentId&&n.parentId()&&this.groupNodes().some(C=>C.id===n.parentId()),l,c=null;if(i&&r){let C=n.data();if(!C)return;let d=this.groupNodes().find(D=>D.data&&D.data()?.name===C.name);if(!d){console.error("Could not find group for workflow node");return}let B=this.agentBuilderService.getNode(n.data().name);if(!B){console.error("Could not find clicked agent data");return}let E=B.sub_agents.length,u=d.height?d.height():this.workflowGroupHeight,m=this.calculateWorkflowChildPosition(E,u),f=this.createAgentNodeWithGroup(a,m,d.id);l=f.shellNode,c=f.groupNode,B.sub_agents.push(a),c&&this.groupNodes.set([...this.groupNodes(),c]),f.groupEdge&&this.edges.set([...this.edges(),f.groupEdge])}else if(s){let C=n.parentId()??void 0,d=this.groupNodes().find(S=>S.id===C);if(!d||!d.data){console.error("Could not find parent group node");return}let B=d.data().name,E=this.agentBuilderService.getNode(B);if(!E){console.error("Could not find workflow parent agent");return}let u=E.sub_agents.length,m=d.height?d.height():this.workflowGroupHeight,f=this.calculateWorkflowChildPosition(u,m),D=this.createAgentNodeWithGroup(a,f,C);l=D.shellNode,c=D.groupNode,E.sub_agents.push(a),c&&this.groupNodes.set([...this.groupNodes(),c]),D.groupEdge&&this.edges.set([...this.edges(),D.groupEdge])}else{let C=n.data().sub_agents.length,d={x:n.point().x+C*400,y:n.point().y+300},B=this.createAgentNodeWithGroup(a,d);l=B.shellNode,c=B.groupNode;let E=this.agentBuilderService.getNode(n.data().name);E&&E.sub_agents.push(a),c&&this.groupNodes.set([...this.groupNodes(),c]),B.groupEdge&&this.edges.set([...this.edges(),B.groupEdge])}if(this.agentBuilderService.addNode(a),this.nodes.set([...this.nodes(),l]),this.selectedAgents=[l],(s||r)&&this.updateGroupDimensions(),r||s){let C=l.parentId?l.parentId()??void 0:void 0,d=this.createWorkflowChildEdge(l,C);d&&this.edges.set([...this.edges(),d])}else{let C={id:this.generateEdgeId(),source:n.id,sourceHandle:"source-bottom",target:l.id,targetHandle:"target-top"};this.edges.set([...this.edges(),C])}this.agentBuilderService.setSelectedNode(a),this.agentBuilderService.requestSideTabChange("config")}addTool(A){let e=this.nodes().find(o=>o.id===A);if(!e||!e.data)return;let i=e.data();if(!i)return;this.dialog.open(Td,{width:"500px"}).afterClosed().subscribe(o=>{if(o)if(o.toolType==="Agent Tool")this.createAgentTool(i.name);else{let a={toolType:o.toolType,name:o.name};this.agentBuilderService.addTool(i.name,a),this.agentBuilderService.setSelectedTool(a)}})}addCallback(A){let e=this.nodes().find(o=>o.id===A);if(!e||!e.data)return;let i={name:`callback_${this.callbackId}`,type:"before_agent",code:`def callback_function(callback_context): + # Add your callback logic here + return None`,description:"Auto-generated callback"};this.callbackId++;let n=this.agentBuilderService.addCallback(e.data().name,i);n.success||this._snackbarService.open(n.error||"Failed to add callback","Close",{duration:3e3,panelClass:["error-snackbar"]})}createAgentTool(A){this.dialog.open(Og,{width:"750px",height:"310px",data:{title:"Create Agent Tool",message:"Please enter a name for the agent tool:",confirmButtonText:"Create",showInput:!0,inputLabel:"Agent Tool Name",inputPlaceholder:"Enter agent tool name"}}).afterClosed().subscribe(i=>{i&&typeof i=="string"&&this.agentBuilderService.requestNewTab(i,A)})}deleteTool(A,e){let i=e.toolType==="Agent Tool",n=i&&e.toolAgentName||e.name;this.dialog.open(Og,{data:{title:i?"Delete Agent Tool":"Delete Tool",message:i?`Are you sure you want to delete the agent tool "${n}"? This will also delete the corresponding board.`:`Are you sure you want to delete ${n}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(a=>{a==="confirm"&&this.deleteToolWithoutDialog(A,e)})}deleteToolWithoutDialog(A,e){if(e.toolType==="Agent Tool"){let i=e.toolAgentName||e.name;this.deleteAgentToolAndBoard(A,e,i)}else this.agentBuilderService.deleteTool(A,e)}deleteAgentToolAndBoard(A,e,i){this.agentBuilderService.deleteTool(A,e),this.agentBuilderService.requestTabDeletion(i)}deleteCallback(A,e){this.dialog.open(Og,{data:{title:"Delete Callback",message:`Are you sure you want to delete ${e.name}?`,confirmButtonText:"Delete"}}).afterClosed().subscribe(n=>{if(n==="confirm"){let o=this.agentBuilderService.deleteCallback(A,e);o.success||this._snackbarService.open(o.error||"Failed to delete callback","Close",{duration:3e3,panelClass:["error-snackbar"]}),this.cdr.detectChanges()}})}openDeleteSubAgentDialog(A){this.dialog.open(Og,{data:{title:"Delete sub agent",message:`Are you sure you want to delete ${A}? This will also delete all the underlying sub agents and tools.`,confirmButtonText:"Delete"}}).afterClosed().subscribe(i=>{i==="confirm"&&this.deleteSubAgent(A)})}deleteSubAgent(A){let e=this.agentBuilderService.getNode(A);if(!e)return;let i=this.agentBuilderService.getParentNode(this.agentBuilderService.getRootNode(),e,void 0,this.agentToolBoards());i&&(this.deleteSubAgentHelper(e,i),this.agentBuilderService.getSelectedNode().pipe(No(1),pt(n=>!!n)).subscribe(n=>{this.agentBuilderService.getNodes().includes(n)||this.agentBuilderService.setSelectedNode(i)}))}isNodeInSequentialWorkflow(A){if(!A.parentId||!A.parentId())return!1;let e=A.parentId(),i=this.groupNodes().find(n=>n.id===e);return!i||!i.data?!1:i.data().agent_class==="SequentialAgent"}getSequentialSiblings(A){if(!A.parentId||!A.parentId())return{previous:void 0,next:void 0};let e=A.parentId(),i=this.nodes().filter(o=>o.parentId&&o.parentId()===e);i.sort((o,a)=>o.point().x-a.point().x);let n=i.findIndex(o=>o.id===A.id);return n===-1?{previous:void 0,next:void 0}:{previous:n>0?i[n-1]:void 0,next:nn.data&&n.data().name===A.name);if(i){let n=this.isNodeInSequentialWorkflow(i),o,a;if(n){let s=this.getSequentialSiblings(i);o=s.previous,a=s.next}this.nodes.set(this.nodes().filter(s=>s.id!==i.id));let r=this.groupNodes().find(s=>s.data&&s.data().name===A.name);if(r){this.groupNodes.set(this.groupNodes().filter(l=>l.id!==r.id));let s=this.edges().filter(l=>l.target!==i.id&&l.source!==i.id&&l.target!==r.id&&l.source!==r.id);this.edges.set(s)}else{let s=this.edges().filter(l=>l.target!==i.id&&l.source!==i.id);this.edges.set(s)}if(n&&o&&a){let s={id:this.generateEdgeId(),source:o.id,sourceHandle:"source-right",target:a.id,targetHandle:"target-left"};this.edges.set([...this.edges(),s])}}this.nodePositions.delete(A.name),e.sub_agents=e.sub_agents.filter(n=>n.name!==A.name),this.agentBuilderService.deleteNode(A),i&&i.parentId&&i.parentId()&&this.updateGroupDimensions()}selectTool(A,e){if(A.toolType==="Agent Tool"){let i=A.name;this.switchToAgentToolBoard(i);return}if(A.toolType==="Function tool"||A.toolType==="Built-in tool"){if(e.data){let i=this.agentBuilderService.getNode(e.data().name);i&&this.editTool(A,i)}return}if(e.data){let i=this.agentBuilderService.getNode(e.data().name);i&&this.agentBuilderService.setSelectedNode(i)}this.agentBuilderService.setSelectedTool(A)}editTool(A,e){let i;A.toolType==="Built-in tool"?i=this.dialog.open(K1,{width:"700px",maxWidth:"90vw",data:{toolName:A.name,isEditMode:!0,toolArgs:A.args}}):i=this.dialog.open(Td,{width:"500px",data:{toolType:A.toolType,toolName:A.name,isEditMode:!0}}),i.afterClosed().subscribe(n=>{if(n&&n.isEditMode){let o=e.tools?.findIndex(a=>a.name===A.name);o!==void 0&&o!==-1&&e.tools&&(e.tools[o].name=n.name,n.args&&(e.tools[o].args=n.args),this.agentBuilderService.setAgentTools(e.name,e.tools))}})}selectCallback(A,e){if(e.data){let i=this.agentBuilderService.getNode(e.data().name);i&&this.agentBuilderService.setSelectedNode(i)}this.agentBuilderService.setSelectedCallback(A)}openToolsTab(A){if(A.data){let e=this.agentBuilderService.getNode(A.data().name);e&&this.agentBuilderService.setSelectedNode(e)}this.agentBuilderService.requestSideTabChange("tools")}saveAgent(A){let e=this.agentBuilderService.getRootNode();if(!e){this._snackbarService.open("Please create an agent first.","OK");return}let i=new FormData,n=this.agentToolBoards();w0.generateYamlFile(e,i,A,n),this.agentService.agentBuild(A,i).subscribe(o=>{o?this.router.navigate(["/"],{queryParams:{app:A}}).then(()=>{window.location.reload()}):this._snackbarService.open("Something went wrong, please try again","OK")})}isRootAgent(A){let e=this.agentBuilderService.getRootNode();return e?e.name===A:!1}isRootAgentForCurrentTab(A){return this.isAgentToolMode&&this.currentAgentTool()?A===this.currentAgentTool():this.isRootAgent(A)}shouldShowHorizontalHandle(A,e){if(!A.parentId||!A.parentId())return!1;let i=A.parentId(),n=this.groupNodes().find(s=>s.id===i);if(!n||!n.data||n.data().agent_class!=="SequentialAgent")return!1;let a=this.nodes().filter(s=>s.parentId&&s.parentId()===i);if(a.length<=1)return!1;a.sort((s,l)=>s.point().x-l.point().x);let r=a.findIndex(s=>s.id===A.id);return e==="left"?r>0:r0):!1}shouldShowTopHandle(A){let e=A.data?A.data():void 0,i=e?.name,n=i?this.isRootAgent(i):!1;if(A.type==="template-group")return e?.agent_class==="SequentialAgent";if(n)return!1;if(A.parentId&&A.parentId()){let a=A.parentId(),r=this.groupNodes().find(s=>s.id===a);if(r&&r.data){let s=r.data().agent_class;if(s==="LoopAgent"||s==="ParallelAgent")return!0}return!1}return!0}getToolsForNode(A,e){return!A||!e?[]:e.get(A)??[]}loadFromYaml(A,e){try{let i=uh(A);this.agentBuilderService.clear(),this.nodePositions.clear(),this.agentToolBoards.set(new Map),this.agentBuilderService.setAgentToolBoards(new Map),this.currentAgentTool.set(null),this.isAgentToolMode=!1,this.navigationStack=[];let n=Ye(Y({name:i.name||"root_agent",agent_class:i.agent_class||"LlmAgent",model:i.model||"gemini-2.5-flash",instruction:i.instruction||"",description:i.description||""},i.max_iterations&&{max_iterations:i.max_iterations}),{isRoot:!0,sub_agents:i.sub_agents||[],tools:this.parseToolsFromYaml(i.tools||[]),callbacks:this.parseCallbacksFromYaml(i)});this.agentBuilderService.addNode(n),this.agentBuilderService.setSelectedNode(n),this.processAgentToolsFromYaml(n.tools||[],e),this.loadAgentBoard(n)}catch(i){console.error("Error parsing YAML:",i)}}parseToolsFromYaml(A){return A.map(e=>{let i={name:e.name,toolType:this.determineToolType(e),toolAgentName:e.name};if(e.name==="AgentTool"&&e.args&&e.args.agent&&e.args.agent.config_path){i.toolType="Agent Tool";let o=e.args.agent.config_path.replace("./","").replace(".yaml","");i.name=o,i.toolAgentName=o,i.args=e.args}else e.args&&(i.args=e.args);return i})}parseCallbacksFromYaml(A){let e=[];return Object.keys(A).forEach(i=>{if(i.endsWith("_callback")&&Array.isArray(A[i])){let n=i.replace("_callback","");A[i].forEach(o=>{o.name&&e.push({name:o.name,type:n})})}}),e}determineToolType(A){return A.name==="AgentTool"&&A.args&&A.args.agent?"Agent Tool":A.name&&A.name.includes(".")&&A.args?"Custom tool":A.name&&A.name.includes(".")&&!A.args?"Function tool":"Built-in tool"}processAgentToolsFromYaml(A,e){let i=A.filter(n=>n.toolType==="Agent Tool");for(let n of i)this.agentToolBoards().has(n.name)||this.loadAgentToolConfiguration(n,e)}loadAgentToolConfiguration(A,e){let i=A.name;this.agentService.getSubAgentBuilder(e,`${i}.yaml`).subscribe({next:n=>{if(n)try{let o=uh(n),a=Ye(Y({name:o.name||i,agent_class:o.agent_class||"LlmAgent",model:o.model||"gemini-2.5-flash",instruction:o.instruction||`You are the ${i} agent that can be used as a tool by other agents.`,description:o.description||""},o.max_iterations&&{max_iterations:o.max_iterations}),{isRoot:!1,sub_agents:o.sub_agents||[],tools:this.parseToolsFromYaml(o.tools||[]),callbacks:this.parseCallbacksFromYaml(o),isAgentTool:!0,skip_summarization:!!A.args?.skip_summarization}),r=this.agentToolBoards();if(r.set(i,a),this.agentToolBoards.set(r),this.agentBuilderService.setAgentToolBoards(r),this.agentBuilderService.addNode(a),this.processAgentToolsFromYaml(a.tools||[],e),a.sub_agents&&a.sub_agents.length>0)for(let s of a.sub_agents)s.config_path&&this.agentService.getSubAgentBuilder(e,s.config_path).subscribe(l=>{if(l){let c=uh(l);this.processAgentToolsFromYaml(this.parseToolsFromYaml(c.tools||[]),e)}})}catch(o){console.error(`Error parsing YAML for agent tool ${i}:`,o),this.createDefaultAgentToolConfiguration(A)}else this.createDefaultAgentToolConfiguration(A)},error:n=>{console.error(`Error loading agent tool configuration for ${i}:`,n),this.createDefaultAgentToolConfiguration(A)}})}createDefaultAgentToolConfiguration(A){let e=A.name,i={name:e,agent_class:"LlmAgent",model:"gemini-2.5-flash",instruction:`You are the ${e} agent that can be used as a tool by other agents.`,isRoot:!1,sub_agents:[],tools:[],isAgentTool:!0,skip_summarization:!!A.args?.skip_summarization},n=this.agentToolBoards();n.set(e,i),this.agentToolBoards.set(n),this.agentBuilderService.setAgentToolBoards(n),this.agentBuilderService.addNode(i)}loadAgentTools(A){A.tools?(A.tools=A.tools.filter(e=>e.name&&e.name.trim()!==""),A.tools.forEach(e=>{e.toolType!=="Agent Tool"&&(e.name.includes(".")&&e.args?e.toolType="Custom tool":e.name.includes(".")&&!e.args?e.toolType="Function tool":e.toolType="Built-in tool")})):A.tools=[]}isNodeSelected(A){return this.selectedAgents.includes(A)}isGroupSelected(A){if(!A.data)return!1;let e=A.data().name,i=this.nodes().find(n=>n.data&&n.data().name===e);return i?this.isNodeSelected(i):!1}loadSubAgents(A,e){return nA(this,null,function*(){let i=[{node:e,depth:1,index:1,parentShellId:void 0,parentAgent:void 0,parentGroupId:void 0}],n=[],o=[],a=[];for(;i.length>0;){let{node:r,depth:s,index:l,parentShellId:c,parentAgent:C,parentGroupId:d}=i.shift(),B=r;if(r.config_path)try{let k=yield xf(this.agentService.getSubAgentBuilder(A,r.config_path));B=uh(k),B.tools&&(B.tools=this.parseToolsFromYaml(B.tools||[])),this.processAgentToolsFromYaml(B.tools||[],A)}catch(k){console.error(`Failed to load agent from ${r.config_path}`,k);continue}if(C&&C.sub_agents){let k=C.sub_agents.indexOf(r);k!==-1&&(C.sub_agents[k]=B,this.agentBuilderService.addNode(C))}this.agentBuilderService.addNode(B);let E=this.nodePositions.get(B.name),u=this.isWorkflowAgent(B.agent_class),m=C?this.isWorkflowAgent(C.agent_class):!1,f,D,S=null;if(m&&!B.isRoot){let k=C?.sub_agents.indexOf(B)??l,b=o.find(P=>P.id===d),x=b?.height?b.height():this.workflowGroupHeight;f=E??this.calculateWorkflowChildPosition(k,x);let F=this.createAgentNodeWithGroup(B,f,d??void 0,o,n);D=F.shellNode,S=F.groupNode,n.push(D),S&&o.push(S),F.groupEdge&&a.push(F.groupEdge)}else{if(E)f=E;else if(!c)f={x:100,y:150};else{let b=n.find(x=>x.id===c);b?f={x:b.point().x+(l-1)*400,y:b.point().y+300}:f={x:100,y:s*150+50}}let k=this.createAgentNodeWithGroup(B,f,void 0,o,n);D=k.shellNode,S=k.groupNode,n.push(D),u&&!B.isRoot&&(S&&o.push(S),k.groupEdge&&a.push(k.groupEdge))}if(c)if(d){let k=this.createWorkflowChildEdgeFromArrays(D,d,n,o);k&&a.push(k)}else{let k={id:this.generateEdgeId(),source:c,sourceHandle:"source-bottom",target:D.id,targetHandle:"target-top"};a.push(k)}if(B.sub_agents&&B.sub_agents.length>0){let k=1,b=u&&S?S.id:d;for(let x of B.sub_agents)i.push({node:x,parentShellId:D.id,depth:s+1,index:k,parentAgent:B,parentGroupId:b}),k++}}this.nodes.set(n),this.groupNodes.set(o),this.edges.set(a),this.updateGroupDimensions()})}switchToAgentToolBoard(A,e){let i=this.currentAgentTool()||"main";i!==A&&this.navigationStack.push(i);let n=this.agentToolBoards(),o=n.get(A);if(!o){o={isRoot:!1,name:A,agent_class:"LlmAgent",model:"gemini-2.5-flash",instruction:`You are the ${A} agent that can be used as a tool by other agents.`,sub_agents:[],tools:[],isAgentTool:!0,skip_summarization:!1};let a=new Map(n);a.set(A,o),this.agentToolBoards.set(a),this.agentBuilderService.setAgentToolBoards(a),e?this.addAgentToolToAgent(A,e):this.addAgentToolToRoot(A)}this.currentAgentTool.set(A),this.isAgentToolMode=!0,this.loadAgentBoard(o),this.agentBuilderService.setSelectedNode(o),this.agentBuilderService.requestSideTabChange("config")}backToMainCanvas(){if(this.navigationStack.length>0){let A=this.navigationStack.pop();if(A==="main"){this.currentAgentTool.set(null),this.isAgentToolMode=!1;let e=this.agentBuilderService.getRootNode();e&&(this.loadAgentBoard(e),this.agentBuilderService.setSelectedNode(e),this.agentBuilderService.requestSideTabChange("config"))}else{let i=this.agentToolBoards().get(A);i&&(this.currentAgentTool.set(A),this.isAgentToolMode=!0,this.loadAgentBoard(i),this.agentBuilderService.setSelectedNode(i),this.agentBuilderService.requestSideTabChange("config"))}}else{this.currentAgentTool.set(null),this.isAgentToolMode=!1;let A=this.agentBuilderService.getRootNode();A&&(this.loadAgentBoard(A),this.agentBuilderService.setSelectedNode(A),this.agentBuilderService.requestSideTabChange("config"))}}loadAgentBoard(A){return nA(this,null,function*(){if(this.captureCurrentNodePositions(),this.nodes.set([]),this.groupNodes.set([]),this.edges.set([]),this.nodeId=0,this.edgeId=0,this.loadAgentTools(A),this.agentBuilderService.addNode(A),A.tools&&A.tools.length>0?this.agentBuilderService.setAgentTools(A.name,A.tools):this.agentBuilderService.setAgentTools(A.name,[]),A.sub_agents&&A.sub_agents.length>0)yield this.loadSubAgents(this.appName,A);else{let e=this.nodePositions.get(A.name)??{x:100,y:150},i=this.createNode(A,e);if(this.nodes.set([i]),this.isWorkflowAgent(A.agent_class)){let{groupNode:n,edge:o}=this.createWorkflowGroup(A,i,e);this.groupNodes.set([n]),o&&this.edges.set([o])}}this.agentBuilderService.setSelectedNode(A)})}addAgentToolToAgent(A,e){let i=this.agentBuilderService.getNode(e);if(i){if(i.tools&&i.tools.some(o=>o.name===A))return;let n={name:A,toolType:"Agent Tool",toolAgentName:A};i.tools||(i.tools=[]),i.tools.push(n),i.tools=i.tools.filter(o=>o.name&&o.name.trim()!==""),this.agentBuilderService.setAgentTools(e,i.tools)}}addAgentToolToRoot(A){let e=this.agentBuilderService.getRootNode();if(e){if(e.tools&&e.tools.some(n=>n.name===A))return;let i={name:A,toolType:"Agent Tool",toolAgentName:A};e.tools||(e.tools=[]),e.tools.push(i),this.agentBuilderService.setAgentTools("root_agent",e.tools)}}deleteAgentToolBoard(A){let e=this.agentToolBoards(),i=new Map(e);i.delete(A),this.agentToolBoards.set(i),this.agentBuilderService.setAgentToolBoards(i);let n=this.agentBuilderService.getNodes();for(let o of n)o.tools&&(o.tools=o.tools.filter(a=>!(a.toolType==="Agent Tool"&&(a.toolAgentName===A||a.name===A))),this.agentBuilderService.setAgentTools(o.name,o.tools));this.navigationStack=this.navigationStack.filter(o=>o!==A),this.currentAgentTool()===A&&this.backToMainCanvas()}getBackButtonTooltip(){if(this.navigationStack.length>0){let A=this.navigationStack[this.navigationStack.length-1];return A==="main"?"Back to Main Canvas":`Back to ${A}`}return"Back to Main Canvas"}onBuilderAssistantClose(){this.builderAssistantCloseRequest.emit()}reloadCanvasFromYaml(){this.appNameInput&&this.agentService.getAgentBuilderTmp(this.appNameInput).subscribe({next:A=>{A&&this.loadFromYaml(A,this.appNameInput)},error:A=>{console.error("Error reloading canvas:",A)}})}captureCurrentNodePositions(){for(let A of this.nodes()){if(!A?.data)continue;let e=A.data();e&&this.nodePositions.set(e.name,Y({},A.point()))}}updateGroupDimensions(){for(let s of this.groupNodes()){if(!s.data)continue;let l=s.data().name,c=this.nodes().filter(f=>f.parentId&&f.parentId()===s.id);if(c.length===0){s.width&&s.width.set(480),s.height&&s.height.set(220);continue}c.sort((f,D)=>f.point().x-D.point().x),c.forEach((f,D)=>{let F={x:45+D*428,y:80};if(f.point.set(F),f.data){let P=f.data();P&&this.nodePositions.set(P.name,F)}});let C=1/0,d=1/0,B=-1/0,E=-1/0;for(let f of c){let D=f.point(),S=f.data?f.data():void 0,k=120;S&&S.tools&&S.tools.length>0&&(k+=20+S.tools.length*36),C=Math.min(C,D.x),d=Math.min(d,D.y),B=Math.max(B,D.x+340+68),E=Math.max(E,D.y+k)}let u=B-C+80,m=E-d+80;s.width&&s.width.set(Math.max(480,u)),s.height&&s.height.set(Math.max(220,m))}}getToolIcon(A){return fh(A.name,A.toolType)}getAgentIcon(A){switch(A){case"SequentialAgent":return"more_horiz";case"LoopAgent":return"sync";case"ParallelAgent":return"density_medium";default:return"psychology"}}isGroupEmpty(A){return!this.nodes().some(i=>i.parentId&&i.parentId()===A)}shouldShowAddButton(A){let e=A.data?A.data():void 0;if(!e)return!1;let i=this.isWorkflowAgent(e.agent_class),n=A.parentId&&A.parentId();if(i&&!n||!this.isNodeSelected(A))return!1;if(n&&A.parentId){let o=A.parentId(),a=this.nodes().filter(s=>s.parentId&&s.parentId()===o);if(a.length===0)return!0;let r=a.reduce((s,l)=>l.point().x>s.point().x?l:s,a[0]);return A.id===r.id}return!0}static \u0275fac=function(e){return new(e||t)(dt(nr),dt(Zu),dt(ps))};static \u0275cmp=De({type:t,selectors:[["app-canvas"]],viewQuery:function(e,i){if(e&1&&$t($be,5)(e7e,5),e&2){let n;cA(n=gA())&&(i.canvasRef=n.first),cA(n=gA())&&(i.svgCanvasRef=n.first)}},inputs:{showSidePanel:"showSidePanel",showBuilderAssistant:"showBuilderAssistant",appNameInput:"appNameInput"},outputs:{toggleSidePanelRequest:"toggleSidePanelRequest",builderAssistantCloseRequest:"builderAssistantCloseRequest"},features:[ai],decls:7,vars:8,consts:[["emptyGroupMenuTrigger","matMenuTrigger"],["emptyGroupMenu","matMenu"],["agentMenuTrigger","matMenuTrigger"],["agentMenu","matMenu"],[1,"canvas-container"],[1,"canvas-workspace",3,"click"],[1,"agent-tool-banner"],["matTooltip","Open panel",1,"material-symbols-outlined","open-panel-btn"],["view","auto",3,"nodes","edges","background","snapGrid"],[1,"canvas-instructions"],[3,"closePanel","reloadCanvas","isVisible","appName"],[1,"banner-content"],["mat-icon-button","",1,"back-to-main-btn",3,"click","matTooltip"],[1,"banner-info"],[1,"material-symbols-outlined","banner-icon"],[1,"banner-text"],[1,"agent-tool-name"],[1,"banner-subtitle"],["matTooltip","Open panel",1,"material-symbols-outlined","open-panel-btn",3,"click"],["groupNode",""],["nodeHtml",""],["selectable","","rx","12","ry","12",3,"click","pointerdown"],["x","12","y","12"],[1,"workflow-group-chip"],[1,"workflow-chip-icon"],[1,"workflow-chip-label"],["type","target","position","top","id","target-top"],[1,"empty-group-placeholder",3,"click"],["mat-icon-button","","matTooltip","Add sub-agent","aria-label","Add sub-agent",3,"click","matMenuTriggerFor"],[1,"empty-group-label"],["mat-menu-item","",3,"click"],["selectable","",1,"custom-node",3,"click","pointerdown"],[1,"node-title-wrapper"],[1,"node-title"],[2,"margin-right","5px"],[1,"node-badge"],[1,"action-button-bar"],["matIconButton","","matTooltip","Delete sub-agent","aria-label","Delete sub-agent",1,"action-btn","delete-subagent-btn"],[1,"tools-container"],[1,"add-subagent-container"],["type","target","position","left","id","target-left"],["type","source","position","right","id","source-right"],["type","source","position","bottom","id","source-bottom"],["matIconButton","","matTooltip","Delete sub-agent","aria-label","Delete sub-agent",1,"action-btn","delete-subagent-btn",3,"click"],[1,"tools-list"],[1,"tool-item"],[1,"tool-item",3,"click"],[1,"tool-item-icon"],[1,"tool-item-name"],["matIconButton","","matTooltip","Add sub-agent","aria-label","Add sub-agent",1,"add-subagent-btn",3,"click","matMenuTriggerFor"],[1,"add-subagent-symbol"],[1,"instruction-content"],[1,"instruction-icon"],[1,"instruction-tips"],[1,"tip"]],template:function(e,i){e&1&&(I(0,"div",4)(1,"div",5),U("click",function(o){return i.onCanvasClick(o)}),T(2,n7e,13,2,"div",6),T(3,o7e,2,0,"span",7),T(4,Q7e,3,6,"vflow",8),T(5,p7e,19,0,"div",9),h(),I(6,"app-builder-assistant",10),U("closePanel",function(){return i.onBuilderAssistantClose()})("reloadCanvas",function(){return i.reloadCanvasFromYaml()}),h()()),e&2&&(Q(),_e("has-banner",i.currentAgentTool()),Q(),O(i.currentAgentTool()?2:-1),Q(),O(i.showSidePanel?-1:3),Q(),O(i.vflowNodes().length>0?4:-1),Q(),O(i.vflowNodes().length===0?5:-1),Q(),H("isVisible",i.showBuilderAssistant)("appName",i.appName))},dependencies:[E5,xm,Q5,$u,c5,Vt,ln,fs,zs,uc,n5,hs],styles:['[_nghost-%COMP%]{width:100%;height:100%;display:flex;flex-direction:column;flex:1;min-height:0}.canvas-container[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;flex-direction:column;border-radius:8px;overflow:hidden;box-shadow:var(--builder-canvas-shadow);flex:1;min-height:0;position:relative}.canvas-header[_ngcontent-%COMP%]{padding:16px 24px;border-bottom:2px solid var(--builder-border-color);display:flex;justify-content:space-between;align-items:center}.canvas-header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0;color:var(--builder-text-primary-color);font-size:18px;font-weight:600;font-family:Google Sans,Helvetica Neue,sans-serif;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.canvas-controls[_ngcontent-%COMP%]{display:flex;gap:8px}.canvas-controls[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border:1px solid var(--builder-button-border-color);color:var(--builder-button-text-color);transition:all .3s ease}.canvas-controls[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover{border-color:var(--builder-button-hover-border-color);transform:translateY(-1px)}.canvas-workspace[_ngcontent-%COMP%]{flex:1;position:relative;overflow:hidden;min-height:0;width:100%;height:100%}.agent-tool-banner[_ngcontent-%COMP%]{position:absolute;top:0;left:0;right:0;border-bottom:2px solid rgba(59,130,246,.3);box-shadow:0 4px 16px #0000004d}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%]{padding:12px 20px;display:flex;align-items:center;gap:16px}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .back-to-main-btn[_ngcontent-%COMP%]{color:#fff;border:1px solid rgba(255,255,255,.2);transition:all .2s ease}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .back-to-main-btn[_ngcontent-%COMP%]:hover{transform:scale(1.05)}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .back-to-main-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;flex:1}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%] .banner-icon[_ngcontent-%COMP%]{font-size:28px;width:28px;height:28px;color:#ffffffe6}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%] .banner-text[_ngcontent-%COMP%] .agent-tool-name[_ngcontent-%COMP%]{margin:0;color:#fff;font-size:18px;font-weight:600;font-family:Google Sans,Helvetica Neue,sans-serif;line-height:1.2}.agent-tool-banner[_ngcontent-%COMP%] .banner-content[_ngcontent-%COMP%] .banner-info[_ngcontent-%COMP%] .banner-text[_ngcontent-%COMP%] .banner-subtitle[_ngcontent-%COMP%]{margin:0;color:#fffc;font-size:12px;font-weight:400;line-height:1}.canvas-workspace[_ngcontent-%COMP%]:has(.agent-tool-banner) vflow[_ngcontent-%COMP%]{padding-top:68px}.canvas-workspace.has-banner[_ngcontent-%COMP%] vflow{padding-top:68px!important} vflow{width:100%!important;height:100%!important;display:block!important} vflow .root-svg{color:var(--builder-text-primary-color)!important;width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important}.diagram-canvas[_ngcontent-%COMP%]{display:block;width:100%;height:100%;cursor:crosshair;transition:cursor .2s ease;object-fit:contain;image-rendering:pixelated}.diagram-canvas[_ngcontent-%COMP%]:active{cursor:grabbing}.canvas-instructions[_ngcontent-%COMP%]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.instruction-content[_ngcontent-%COMP%]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--builder-canvas-instruction-border);border-radius:16px;padding:32px;box-shadow:var(--builder-canvas-shadow)}.instruction-content[_ngcontent-%COMP%] .instruction-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px;color:var(--builder-button-text-color);margin-bottom:16px;animation:_ngcontent-%COMP%_pulse 2s infinite}.instruction-content[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{color:var(--builder-text-primary-color);font-size:20px;font-weight:600;margin:0 0 12px;font-family:Google Sans,Helvetica Neue,sans-serif}.instruction-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-size:14px;margin:0 0 24px;line-height:1.5}.instruction-tips[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.tip[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;color:var(--builder-accent-color);font-size:13px}.tip[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.connection-mode-indicator[_ngcontent-%COMP%]{position:absolute;top:20px;left:50%;transform:translate(-50%);animation:_ngcontent-%COMP%_slideDown .3s ease-out}.connection-indicator-content[_ngcontent-%COMP%]{color:#fff;padding:12px 20px;border-radius:24px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 16px #1b73e866;border:1px solid rgba(255,255,255,.2)}.connection-indicator-content[_ngcontent-%COMP%] .connection-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px;animation:_ngcontent-%COMP%_pulse 1.5s infinite}.connection-indicator-content[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px;font-weight:500;white-space:nowrap}.connection-indicator-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{color:#fff;border:1px solid rgba(255,255,255,.3);width:32px;height:32px;min-width:32px}.connection-indicator-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover{transform:scale(1.1)}.connection-indicator-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}@keyframes _ngcontent-%COMP%_slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.canvas-footer[_ngcontent-%COMP%]{padding:12px 24px;border-top:1px solid var(--builder-border-color);display:flex;justify-content:space-between;align-items:center}.node-count[_ngcontent-%COMP%], .connection-count[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;color:var(--builder-text-secondary-color);font-size:13px;font-weight:500}.node-count[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%], .connection-count[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:var(--builder-accent-color)}@keyframes _ngcontent-%COMP%_pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.canvas-workspace.drag-over[_ngcontent-%COMP%]:before{content:"";position:absolute;inset:0;border:2px dashed #00bbea;border-radius:8px;margin:16px;animation:_ngcontent-%COMP%_dashMove 1s linear infinite}@keyframes _ngcontent-%COMP%_dashMove{0%{border-color:#8ab4f84d}50%{border-color:#8ab4f8cc}to{border-color:#8ab4f84d}}@media(max-width:768px){.canvas-header[_ngcontent-%COMP%]{padding:12px 16px}.canvas-header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-size:16px}.instruction-content[_ngcontent-%COMP%]{padding:24px;margin:16px}.instruction-content[_ngcontent-%COMP%] .instruction-icon[_ngcontent-%COMP%]{font-size:36px;width:36px;height:36px}.instruction-content[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{font-size:18px}.canvas-footer[_ngcontent-%COMP%]{padding:8px 16px;flex-direction:column;gap:8px}}.custom-node[_ngcontent-%COMP%]{width:340px;border:1px solid var(--builder-canvas-node-border);border-radius:8px;align-items:center;position:relative;max-height:none;padding-bottom:0;overflow:visible}.custom-node[_ngcontent-%COMP%]:hover{border-color:var(--builder-canvas-node-hover-border)}.custom-node_selected[_ngcontent-%COMP%]{border:2px solid;border-color:var(--builder-accent-color)}.custom-node_selected[_ngcontent-%COMP%] mat-chip[_ngcontent-%COMP%]{--mdc-chip-outline-color: var(--builder-canvas-node-chip-outline)}.custom-node_selected[_ngcontent-%COMP%]:hover{border-color:var(--builder-accent-color)}[_nghost-%COMP%] .default-group-node{border:2px solid var(--builder-canvas-group-border)!important}.node-title-wrapper[_ngcontent-%COMP%]{padding-top:12px;padding-bottom:12px;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;align-items:center}.node-title[_ngcontent-%COMP%]{padding-left:12px;padding-right:12px;display:flex;align-items:center;color:var(--builder-text-primary-color);font-weight:500}.node-badge[_ngcontent-%COMP%]{margin-left:8px;padding:2px 6px;border-radius:999px;color:var(--builder-accent-color);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tools-container[_ngcontent-%COMP%]{padding:8px 12px;border-top:1px solid var(--builder-border-color)}.tools-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px}.tool-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:4px;cursor:pointer;transition:background-color .2s ease;color:var(--builder-text-primary-color)}.tool-item[_ngcontent-%COMP%] .tool-item-icon[_ngcontent-%COMP%]{font-size:22px;width:22px;height:22px;color:var(--builder-text-primary-color);flex-shrink:0}.tool-item[_ngcontent-%COMP%] .tool-item-name[_ngcontent-%COMP%]{font-family:Google Sans,sans-serif;font-size:15px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-item.more-tools[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-style:italic}.tool-item.more-tools[_ngcontent-%COMP%] .tool-item-icon[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color)}.custom-node_selected[_ngcontent-%COMP%] .node-title-wrapper[_ngcontent-%COMP%]{border-bottom-color:var(--builder-canvas-node-chip-outline)}.custom-node_selected[_ngcontent-%COMP%] .node-title-wrapper[_ngcontent-%COMP%] .node-title[_ngcontent-%COMP%]{color:var(--builder-accent-color)}.tools-header[_ngcontent-%COMP%]{font-family:Google Sans;color:var(--builder-text-muted-color);margin-bottom:10px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between}.callbacks-container[_ngcontent-%COMP%]{padding:12px 6px 12px 12px}.callbacks-header[_ngcontent-%COMP%]{font-family:Google Sans;color:var(--builder-text-muted-color);margin-bottom:10px;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:space-between}.callback-type[_ngcontent-%COMP%]{font-size:11px;color:var(--builder-accent-color);padding:2px 6px;border-radius:4px;margin-left:4px;font-weight:500}.add-callback-btn[_ngcontent-%COMP%]{border:none;cursor:pointer;border-radius:4px;width:28px;height:28px;padding:0}.add-callback-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin:0;font-size:18px;width:18px;height:18px}.add-callback-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);transform:scale(1.1)}.instruction-title[_ngcontent-%COMP%]{font-family:Google Sans;color:var(--builder-text-muted-color);margin-bottom:10px}.instructions[_ngcontent-%COMP%]{font-family:Google Sans;margin-bottom:10px}.agent-resources[_ngcontent-%COMP%]{padding:8px 12px}.empty-resource[_ngcontent-%COMP%]{margin-top:8px;color:var(--builder-text-secondary-color);margin-bottom:8px;display:flex;font-size:13px}.empty-resource[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{display:none}.action-button-bar[_ngcontent-%COMP%]{display:flex;gap:8px;margin-right:4px}.action-button-bar[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);border:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;pointer-events:auto;border-radius:4px}.action-button-bar[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);transform:scale(1.1)}.action-button-bar[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.action-button-bar[_ngcontent-%COMP%] .delete-subagent-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color)}.add-tool-btn[_ngcontent-%COMP%]{border:none;cursor:pointer;border-radius:4px;width:28px;height:28px;padding:0}.add-tool-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin:0;font-size:18px;width:18px;height:18px}.add-tool-btn[_ngcontent-%COMP%]:hover{color:var(--builder-text-primary-color);transform:scale(1.1)}.add-subagent-container[_ngcontent-%COMP%]{position:absolute;left:50%;bottom:-68px;transform:translate(-50%);display:flex;justify-content:center;pointer-events:none}.custom-node.in-group[_ngcontent-%COMP%] .add-subagent-container[_ngcontent-%COMP%]{left:auto;right:-68px;bottom:50%;transform:translateY(50%)}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%]{width:48px;height:48px;border-radius:50%;border:2px solid var(--builder-accent-color);color:var(--builder-accent-color);display:flex;align-items:center;justify-content:center;padding:0;box-sizing:border-box;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;pointer-events:auto}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%] .add-subagent-symbol[_ngcontent-%COMP%]{font-size:28px;line-height:1;font-weight:400}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%]:hover{transform:scale(1.05);box-shadow:var(--builder-canvas-add-btn-shadow)}.add-subagent-container[_ngcontent-%COMP%] .add-subagent-btn[_ngcontent-%COMP%]:focus-visible{outline:none;box-shadow:var(--builder-canvas-add-btn-shadow)}.open-panel-btn[_ngcontent-%COMP%]{position:absolute;width:24px;height:24px;color:var(--builder-text-tertiary-color);cursor:pointer;margin-left:20px;margin-top:20px}.custom-node[_ngcontent-%COMP%]:hover .action-button-bar[_ngcontent-%COMP%], .custom-node.custom-node_selected[_ngcontent-%COMP%] .action-button-bar[_ngcontent-%COMP%]{opacity:1;pointer-events:auto}[_nghost-%COMP%] div[nodehandlescontroller][noderesizecontroller].wrapper{height:0px!important;overflow:visible!important}[_nghost-%COMP%] foreignObject.selectable, [_nghost-%COMP%] foreignObject.selectable>div{overflow:visible!important}[_nghost-%COMP%] .interactive-edge{stroke:var(--builder-accent-color)!important;stroke-width:2!important}[_nghost-%COMP%] .default-handle{stroke:var(--builder-accent-color)!important;stroke-width:1!important;fill:var(--builder-canvas-handle-fill)!important}[_nghost-%COMP%] .reconnect-handle{stroke:var(--builder-accent-color)!important;stroke-width:2!important;fill:var(--builder-canvas-reconnect-handle-fill)!important}[_nghost-%COMP%] .workflow-group-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--builder-canvas-workflow-chip-border);border-radius:16px;color:var(--builder-accent-color);font-family:Google Sans,sans-serif;font-size:12px;font-weight:500;height:32px;box-sizing:border-box;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[_nghost-%COMP%] .workflow-group-chip .workflow-chip-icon{font-size:16px;width:16px;height:16px;line-height:16px}[_nghost-%COMP%] .workflow-group-chip .workflow-chip-label{color:var(--builder-text-primary-color);font-weight:500;font-size:12px;line-height:1}[_nghost-%COMP%] .empty-group-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;border-radius:8px;text-align:center;border:2px dashed var(--builder-canvas-empty-group-border);transition:all .3s ease}[_nghost-%COMP%] .empty-group-placeholder:hover{border-color:var(--builder-canvas-empty-group-hover-border)}[_nghost-%COMP%] .empty-group-placeholder button{border:2px solid var(--builder-accent-color);color:var(--builder-accent-color);width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}[_nghost-%COMP%] .empty-group-placeholder button:hover{transform:scale(1.1);box-shadow:var(--builder-canvas-add-btn-shadow)}[_nghost-%COMP%] .empty-group-placeholder button mat-icon{font-size:24px;width:24px;height:24px}[_nghost-%COMP%] .empty-group-placeholder .empty-group-label{font-size:13px;font-weight:500;color:var(--builder-text-secondary-color);font-family:Google Sans,sans-serif}']})};function m7e(t,A){t&1&&eo(0,"div",2)}var f7e=new Me("MAT_PROGRESS_BAR_DEFAULT_OPTIONS");var tE=(()=>{class t{_elementRef=w(dA);_ngZone=w(At);_changeDetectorRef=w(xt);_renderer=w(rn);_cleanupTransitionEnd;constructor(){let e=DQ(),i=w(f7e,{optional:!0});this._isNoopAnimation=e==="di-disabled",e==="reduced-motion"&&this._elementRef.nativeElement.classList.add("mat-progress-bar-reduced-motion"),i&&(i.color&&(this.color=this._defaultColor=i.color),this.mode=i.mode||this.mode)}_isNoopAnimation;get color(){return this._color||this._defaultColor}set color(e){this._color=e}_color;_defaultColor="primary";get value(){return this._value}set value(e){this._value=Ioe(e||0),this._changeDetectorRef.markForCheck()}_value=0;get bufferValue(){return this._bufferValue||0}set bufferValue(e){this._bufferValue=Ioe(e||0),this._changeDetectorRef.markForCheck()}_bufferValue=0;animationEnd=new Le;get mode(){return this._mode}set mode(e){this._mode=e,this._changeDetectorRef.markForCheck()}_mode="determinate";ngAfterViewInit(){this._ngZone.runOutsideAngular(()=>{this._cleanupTransitionEnd=this._renderer.listen(this._elementRef.nativeElement,"transitionend",this._transitionendHandler)})}ngOnDestroy(){this._cleanupTransitionEnd?.()}_getPrimaryBarTransform(){return`scaleX(${this._isIndeterminate()?1:this.value/100})`}_getBufferBarFlexBasis(){return`${this.mode==="buffer"?this.bufferValue:100}%`}_isIndeterminate(){return this.mode==="indeterminate"||this.mode==="query"}_transitionendHandler=e=>{this.animationEnd.observers.length===0||!e.target||!e.target.classList.contains("mdc-linear-progress__primary-bar")||(this.mode==="determinate"||this.mode==="buffer")&&this._ngZone.run(()=>this.animationEnd.next({value:this.value}))};static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-progress-bar"]],hostAttrs:["role","progressbar","aria-valuemin","0","aria-valuemax","100","tabindex","-1",1,"mat-mdc-progress-bar","mdc-linear-progress"],hostVars:10,hostBindings:function(i,n){i&2&&(aA("aria-valuenow",n._isIndeterminate()?null:n.value)("mode",n.mode),Ao("mat-"+n.color),_e("_mat-animation-noopable",n._isNoopAnimation)("mdc-linear-progress--animation-ready",!n._isNoopAnimation)("mdc-linear-progress--indeterminate",n._isIndeterminate()))},inputs:{color:"color",value:[2,"value","value",Dn],bufferValue:[2,"bufferValue","bufferValue",Dn],mode:"mode"},outputs:{animationEnd:"animationEnd"},exportAs:["matProgressBar"],decls:7,vars:5,consts:[["aria-hidden","true",1,"mdc-linear-progress__buffer"],[1,"mdc-linear-progress__buffer-bar"],[1,"mdc-linear-progress__buffer-dots"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__primary-bar"],[1,"mdc-linear-progress__bar-inner"],["aria-hidden","true",1,"mdc-linear-progress__bar","mdc-linear-progress__secondary-bar"]],template:function(i,n){i&1&&(Gn(0,"div",0),eo(1,"div",1),T(2,m7e,1,0,"div",2),$n(),Gn(3,"div",3),eo(4,"span",4),$n(),Gn(5,"div",5),eo(6,"span",4),$n()),i&2&&(Q(),vt("flex-basis",n._getBufferBarFlexBasis()),Q(),O(n.mode==="buffer"?2:-1),Q(),vt("transform",n._getPrimaryBarTransform()))},styles:[`.mat-mdc-progress-bar{--mat-progress-bar-animation-multiplier: 1;display:block;text-align:start}.mat-mdc-progress-bar[mode=query]{transform:scaleX(-1)}.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__buffer-dots,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__primary-bar,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__secondary-bar,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__bar-inner.mdc-linear-progress__bar-inner{animation:none}.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__primary-bar,.mat-mdc-progress-bar._mat-animation-noopable .mdc-linear-progress__buffer-bar{transition:transform 1ms}.mat-progress-bar-reduced-motion{--mat-progress-bar-animation-multiplier: 2}.mdc-linear-progress{position:relative;width:100%;transform:translateZ(0);outline:1px solid rgba(0,0,0,0);overflow-x:hidden;transition:opacity 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);height:max(var(--mat-progress-bar-track-height, 4px),var(--mat-progress-bar-active-indicator-height, 4px))}@media(forced-colors: active){.mdc-linear-progress{outline-color:CanvasText}}.mdc-linear-progress__bar{position:absolute;top:0;bottom:0;margin:auto 0;width:100%;animation:none;transform-origin:top left;transition:transform 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);height:var(--mat-progress-bar-active-indicator-height, 4px)}.mdc-linear-progress--indeterminate .mdc-linear-progress__bar{transition:none}[dir=rtl] .mdc-linear-progress__bar{right:0;transform-origin:center right}.mdc-linear-progress__bar-inner{display:inline-block;position:absolute;width:100%;animation:none;border-top-style:solid;border-color:var(--mat-progress-bar-active-indicator-color, var(--mat-sys-primary));border-top-width:var(--mat-progress-bar-active-indicator-height, 4px)}.mdc-linear-progress__buffer{display:flex;position:absolute;top:0;bottom:0;margin:auto 0;width:100%;overflow:hidden;height:var(--mat-progress-bar-track-height, 4px);border-radius:var(--mat-progress-bar-track-shape, var(--mat-sys-corner-none))}.mdc-linear-progress__buffer-dots{background-image:radial-gradient(circle, var(--mat-progress-bar-track-color, var(--mat-sys-surface-variant)) calc(var(--mat-progress-bar-track-height, 4px) / 2), transparent 0);background-repeat:repeat-x;background-size:calc(calc(var(--mat-progress-bar-track-height, 4px) / 2)*5);background-position:left;flex:auto;transform:rotate(180deg);animation:mdc-linear-progress-buffering calc(250ms*var(--mat-progress-bar-animation-multiplier)) infinite linear}@media(forced-colors: active){.mdc-linear-progress__buffer-dots{background-color:ButtonBorder}}[dir=rtl] .mdc-linear-progress__buffer-dots{animation:mdc-linear-progress-buffering-reverse calc(250ms*var(--mat-progress-bar-animation-multiplier)) infinite linear;transform:rotate(0)}.mdc-linear-progress__buffer-bar{flex:0 1 100%;transition:flex-basis 250ms 0ms cubic-bezier(0.4, 0, 0.6, 1);background-color:var(--mat-progress-bar-track-color, var(--mat-sys-surface-variant))}.mdc-linear-progress__primary-bar{transform:scaleX(0)}.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar{left:-145.166611%}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar{animation:mdc-linear-progress-primary-indeterminate-translate calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar>.mdc-linear-progress__bar-inner{animation:mdc-linear-progress-primary-indeterminate-scale calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--animation-ready .mdc-linear-progress__primary-bar{animation-name:mdc-linear-progress-primary-indeterminate-translate-reverse}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--indeterminate .mdc-linear-progress__primary-bar{right:-145.166611%;left:auto}.mdc-linear-progress__secondary-bar{display:none}.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar{left:-54.888891%;display:block}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar{animation:mdc-linear-progress-secondary-indeterminate-translate calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}.mdc-linear-progress--indeterminate.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar>.mdc-linear-progress__bar-inner{animation:mdc-linear-progress-secondary-indeterminate-scale calc(2s*var(--mat-progress-bar-animation-multiplier)) infinite linear}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--animation-ready .mdc-linear-progress__secondary-bar{animation-name:mdc-linear-progress-secondary-indeterminate-translate-reverse}[dir=rtl] .mdc-linear-progress.mdc-linear-progress--indeterminate .mdc-linear-progress__secondary-bar{right:-54.888891%;left:auto}@keyframes mdc-linear-progress-buffering{from{transform:rotate(180deg) translateX(calc(var(--mat-progress-bar-track-height, 4px) * -2.5))}}@keyframes mdc-linear-progress-primary-indeterminate-translate{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(83.67142%)}100%{transform:translateX(200.611057%)}}@keyframes mdc-linear-progress-primary-indeterminate-scale{0%{transform:scaleX(0.08)}36.65%{animation-timing-function:cubic-bezier(0.334731, 0.12482, 0.785844, 1);transform:scaleX(0.08)}69.15%{animation-timing-function:cubic-bezier(0.06, 0.11, 0.6, 1);transform:scaleX(0.661479)}100%{transform:scaleX(0.08)}}@keyframes mdc-linear-progress-secondary-indeterminate-translate{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(37.651913%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(84.386165%)}100%{transform:translateX(160.277782%)}}@keyframes mdc-linear-progress-secondary-indeterminate-scale{0%{animation-timing-function:cubic-bezier(0.205028, 0.057051, 0.57661, 0.453971);transform:scaleX(0.08)}19.15%{animation-timing-function:cubic-bezier(0.152313, 0.196432, 0.648374, 1.004315);transform:scaleX(0.457104)}44.15%{animation-timing-function:cubic-bezier(0.257759, -0.003163, 0.211762, 1.38179);transform:scaleX(0.72796)}100%{transform:scaleX(0.08)}}@keyframes mdc-linear-progress-primary-indeterminate-translate-reverse{0%{transform:translateX(0)}20%{animation-timing-function:cubic-bezier(0.5, 0, 0.701732, 0.495819);transform:translateX(0)}59.15%{animation-timing-function:cubic-bezier(0.302435, 0.381352, 0.55, 0.956352);transform:translateX(-83.67142%)}100%{transform:translateX(-200.611057%)}}@keyframes mdc-linear-progress-secondary-indeterminate-translate-reverse{0%{animation-timing-function:cubic-bezier(0.15, 0, 0.515058, 0.409685);transform:translateX(0)}25%{animation-timing-function:cubic-bezier(0.31033, 0.284058, 0.8, 0.733712);transform:translateX(-37.651913%)}48.35%{animation-timing-function:cubic-bezier(0.4, 0.627035, 0.6, 0.902026);transform:translateX(-84.386165%)}100%{transform:translateX(-160.277782%)}}@keyframes mdc-linear-progress-buffering-reverse{from{transform:translateX(-10px)}} +`],encapsulation:2,changeDetection:0})}return t})();function Ioe(t,A=0,e=100){return Math.max(A,Math.min(e,t))}var iE=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();var w7e=["switch"],y7e=["*"];function v7e(t,A){t&1&&(I(0,"span",11),mt(),I(1,"svg",13),le(2,"path",14),h(),I(3,"svg",15),le(4,"path",16),h()())}var D7e=new Me("mat-slide-toggle-default-options",{providedIn:"root",factory:()=>({disableToggleValue:!1,hideIcon:!1,disabledInteractive:!1})}),p5=class{source;checked;constructor(A,e){this.source=A,this.checked=e}},b7e=(()=>{class t{_elementRef=w(dA);_focusMonitor=w(dr);_changeDetectorRef=w(xt);defaults=w(D7e);_onChange=e=>{};_onTouched=()=>{};_validatorOnChange=()=>{};_uniqueId;_checked=!1;_createChangeEvent(e){return new p5(this,e)}_labelId;get buttonId(){return`${this.id||this._uniqueId}-button`}_switchElement;focus(){this._switchElement.nativeElement.focus()}_noopAnimations=hn();_focused=!1;name=null;id;labelPosition="after";ariaLabel=null;ariaLabelledby=null;ariaDescribedby;required=!1;color;disabled=!1;disableRipple=!1;tabIndex=0;get checked(){return this._checked}set checked(e){this._checked=e,this._changeDetectorRef.markForCheck()}hideIcon;disabledInteractive;change=new Le;toggleChange=new Le;get inputId(){return`${this.id||this._uniqueId}-input`}constructor(){w(Eo).load(yr);let e=w(new $s("tabindex"),{optional:!0}),i=this.defaults;this.tabIndex=e==null?0:parseInt(e)||0,this.color=i.color||"accent",this.id=this._uniqueId=w(bn).getId("mat-mdc-slide-toggle-"),this.hideIcon=i.hideIcon??!1,this.disabledInteractive=i.disabledInteractive??!1,this._labelId=this._uniqueId+"-label"}ngAfterContentInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(e=>{e==="keyboard"||e==="program"?(this._focused=!0,this._changeDetectorRef.markForCheck()):e||Promise.resolve().then(()=>{this._focused=!1,this._onTouched(),this._changeDetectorRef.markForCheck()})})}ngOnChanges(e){e.required&&this._validatorOnChange()}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}writeValue(e){this.checked=!!e}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}validate(e){return this.required&&e.value!==!0?{required:!0}:null}registerOnValidatorChange(e){this._validatorOnChange=e}setDisabledState(e){this.disabled=e,this._changeDetectorRef.markForCheck()}toggle(){this.checked=!this.checked,this._onChange(this.checked)}_emitChangeEvent(){this._onChange(this.checked),this.change.emit(this._createChangeEvent(this.checked))}_handleClick(){this.disabled||(this.toggleChange.emit(),this.defaults.disableToggleValue||(this.checked=!this.checked,this._onChange(this.checked),this.change.emit(new p5(this,this.checked))))}_getAriaLabelledBy(){return this.ariaLabelledby?this.ariaLabelledby:this.ariaLabel?null:this._labelId}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-slide-toggle"]],viewQuery:function(i,n){if(i&1&&$t(w7e,5),i&2){let o;cA(o=gA())&&(n._switchElement=o.first)}},hostAttrs:[1,"mat-mdc-slide-toggle"],hostVars:13,hostBindings:function(i,n){i&2&&(Ra("id",n.id),aA("tabindex",null)("aria-label",null)("name",null)("aria-labelledby",null),Ao(n.color?"mat-"+n.color:""),_e("mat-mdc-slide-toggle-focused",n._focused)("mat-mdc-slide-toggle-checked",n.checked)("_mat-animation-noopable",n._noopAnimations))},inputs:{name:"name",id:"id",labelPosition:"labelPosition",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],ariaDescribedby:[0,"aria-describedby","ariaDescribedby"],required:[2,"required","required",mA],color:"color",disabled:[2,"disabled","disabled",mA],disableRipple:[2,"disableRipple","disableRipple",mA],tabIndex:[2,"tabIndex","tabIndex",e=>e==null?0:Dn(e)],checked:[2,"checked","checked",mA],hideIcon:[2,"hideIcon","hideIcon",mA],disabledInteractive:[2,"disabledInteractive","disabledInteractive",mA]},outputs:{change:"change",toggleChange:"toggleChange"},exportAs:["matSlideToggle"],features:[yt([{provide:us,useExisting:er(()=>t),multi:!0},{provide:n0,useExisting:t,multi:!0}]),ai],ngContentSelectors:y7e,decls:14,vars:27,consts:[["switch",""],["mat-internal-form-field","",3,"labelPosition"],["role","switch","type","button",1,"mdc-switch",3,"click","tabIndex","disabled"],[1,"mat-mdc-slide-toggle-touch-target"],[1,"mdc-switch__track"],[1,"mdc-switch__handle-track"],[1,"mdc-switch__handle"],[1,"mdc-switch__shadow"],[1,"mdc-elevation-overlay"],[1,"mdc-switch__ripple"],["mat-ripple","",1,"mat-mdc-slide-toggle-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleCentered"],[1,"mdc-switch__icons"],[1,"mdc-label",3,"click","for"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--on"],["d","M19.69,5.23L8.96,15.96l-4.23-4.23L2.96,13.5l6,6L21.46,7L19.69,5.23z"],["viewBox","0 0 24 24","aria-hidden","true",1,"mdc-switch__icon","mdc-switch__icon--off"],["d","M20 13H4v-2h16v2z"]],template:function(i,n){if(i&1&&(Yt(),I(0,"div",1)(1,"button",2,0),U("click",function(){return n._handleClick()}),le(3,"div",3)(4,"span",4),I(5,"span",5)(6,"span",6)(7,"span",7),le(8,"span",8),h(),I(9,"span",9),le(10,"span",10),h(),T(11,v7e,5,0,"span",11),h()()(),I(12,"label",12),U("click",function(a){return a.stopPropagation()}),tt(13),h()()),i&2){let o=Ei(2);H("labelPosition",n.labelPosition),Q(),_e("mdc-switch--selected",n.checked)("mdc-switch--unselected",!n.checked)("mdc-switch--checked",n.checked)("mdc-switch--disabled",n.disabled)("mat-mdc-slide-toggle-disabled-interactive",n.disabledInteractive),H("tabIndex",n.disabled&&!n.disabledInteractive?-1:n.tabIndex)("disabled",n.disabled&&!n.disabledInteractive),aA("id",n.buttonId)("name",n.name)("aria-label",n.ariaLabel)("aria-labelledby",n._getAriaLabelledBy())("aria-describedby",n.ariaDescribedby)("aria-required",n.required||null)("aria-checked",n.checked)("aria-disabled",n.disabled&&n.disabledInteractive?"true":null),Q(9),H("matRippleTrigger",o)("matRippleDisabled",n.disableRipple||n.disabled)("matRippleCentered",!0),Q(),O(n.hideIcon?-1:11),Q(),H("for",n.buttonId),aA("id",n._labelId)}},dependencies:[Es,P8],styles:[`.mdc-switch{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;flex-shrink:0;margin:0;outline:none;overflow:visible;padding:0;position:relative;width:var(--mat-slide-toggle-track-width, 52px)}.mdc-switch.mdc-switch--disabled{cursor:default;pointer-events:none}.mdc-switch.mat-mdc-slide-toggle-disabled-interactive{pointer-events:auto}.mdc-switch__track{overflow:hidden;position:relative;width:100%;height:var(--mat-slide-toggle-track-height, 32px);border-radius:var(--mat-slide-toggle-track-shape, var(--mat-sys-corner-full))}.mdc-switch--disabled.mdc-switch .mdc-switch__track{opacity:var(--mat-slide-toggle-disabled-track-opacity, 0.12)}.mdc-switch__track::before,.mdc-switch__track::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";height:100%;left:0;position:absolute;width:100%;border-width:var(--mat-slide-toggle-track-outline-width, 2px);border-color:var(--mat-slide-toggle-track-outline-color, var(--mat-sys-outline))}.mdc-switch--selected .mdc-switch__track::before,.mdc-switch--selected .mdc-switch__track::after{border-width:var(--mat-slide-toggle-selected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-selected-track-outline-color, transparent)}.mdc-switch--disabled .mdc-switch__track::before,.mdc-switch--disabled .mdc-switch__track::after{border-width:var(--mat-slide-toggle-disabled-unselected-track-outline-width, 2px);border-color:var(--mat-slide-toggle-disabled-unselected-track-outline-color, var(--mat-sys-on-surface))}@media(forced-colors: active){.mdc-switch__track{border-color:currentColor}}.mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0, 0, 0.2, 1);transform:translateX(0);background:var(--mat-slide-toggle-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__track::before{transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.6, 1);transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch--selected .mdc-switch__track::before{transform:translateX(-100%)}.mdc-switch--selected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::before{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-hover-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-focus-track-color, var(--mat-sys-surface-variant))}.mdc-switch:enabled:active .mdc-switch__track::before{background:var(--mat-slide-toggle-unselected-pressed-track-color, var(--mat-sys-surface-variant))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::before,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::before,.mdc-switch.mdc-switch--disabled .mdc-switch__track::before{background:var(--mat-slide-toggle-disabled-unselected-track-color, var(--mat-sys-surface-variant))}.mdc-switch__track::after{transform:translateX(-100%);background:var(--mat-slide-toggle-selected-track-color, var(--mat-sys-primary))}[dir=rtl] .mdc-switch__track::after{transform:translateX(100%)}.mdc-switch--selected .mdc-switch__track::after{transform:translateX(0)}.mdc-switch--selected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-visible-track-opacity, 1);transition:var(--mat-slide-toggle-visible-track-transition, opacity 75ms)}.mdc-switch--unselected .mdc-switch__track::after{opacity:var(--mat-slide-toggle-hidden-track-opacity, 0);transition:var(--mat-slide-toggle-hidden-track-transition, opacity 75ms)}.mdc-switch:enabled:hover:not(:focus):not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-hover-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:focus:not(:active) .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-focus-track-color, var(--mat-sys-primary))}.mdc-switch:enabled:active .mdc-switch__track::after{background:var(--mat-slide-toggle-selected-pressed-track-color, var(--mat-sys-primary))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__track::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__track::after,.mdc-switch.mdc-switch--disabled .mdc-switch__track::after{background:var(--mat-slide-toggle-disabled-selected-track-color, var(--mat-sys-on-surface))}.mdc-switch__handle-track{height:100%;pointer-events:none;position:absolute;top:0;transition:transform 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);left:0;right:auto;transform:translateX(0);width:calc(100% - var(--mat-slide-toggle-handle-width))}[dir=rtl] .mdc-switch__handle-track{left:auto;right:0}.mdc-switch--selected .mdc-switch__handle-track{transform:translateX(100%)}[dir=rtl] .mdc-switch--selected .mdc-switch__handle-track{transform:translateX(-100%)}.mdc-switch__handle{display:flex;pointer-events:auto;position:absolute;top:50%;transform:translateY(-50%);left:0;right:auto;transition:width 75ms cubic-bezier(0.4, 0, 0.2, 1),height 75ms cubic-bezier(0.4, 0, 0.2, 1),margin 75ms cubic-bezier(0.4, 0, 0.2, 1);width:var(--mat-slide-toggle-handle-width);height:var(--mat-slide-toggle-handle-height);border-radius:var(--mat-slide-toggle-handle-shape, var(--mat-sys-corner-full))}[dir=rtl] .mdc-switch__handle{left:auto;right:0}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle{width:var(--mat-slide-toggle-unselected-handle-size, 16px);height:var(--mat-slide-toggle-unselected-handle-size, 16px);margin:var(--mat-slide-toggle-unselected-handle-horizontal-margin, 0 8px)}.mat-mdc-slide-toggle .mdc-switch--unselected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-unselected-with-icon-handle-horizontal-margin, 0 4px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle{width:var(--mat-slide-toggle-selected-handle-size, 24px);height:var(--mat-slide-toggle-selected-handle-size, 24px);margin:var(--mat-slide-toggle-selected-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch--selected .mdc-switch__handle:has(.mdc-switch__icons){margin:var(--mat-slide-toggle-selected-with-icon-handle-horizontal-margin, 0 24px)}.mat-mdc-slide-toggle .mdc-switch__handle:has(.mdc-switch__icons){width:var(--mat-slide-toggle-with-icon-handle-size, 24px);height:var(--mat-slide-toggle-with-icon-handle-size, 24px)}.mat-mdc-slide-toggle .mdc-switch:active:not(.mdc-switch--disabled) .mdc-switch__handle{width:var(--mat-slide-toggle-pressed-handle-size, 28px);height:var(--mat-slide-toggle-pressed-handle-size, 28px)}.mat-mdc-slide-toggle .mdc-switch--selected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-selected-pressed-handle-horizontal-margin, 0 22px)}.mat-mdc-slide-toggle .mdc-switch--unselected:active:not(.mdc-switch--disabled) .mdc-switch__handle{margin:var(--mat-slide-toggle-unselected-pressed-handle-horizontal-margin, 0 2px)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-selected-handle-opacity, 1)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__handle::after{opacity:var(--mat-slide-toggle-disabled-unselected-handle-opacity, 0.38)}.mdc-switch__handle::before,.mdc-switch__handle::after{border:1px solid rgba(0,0,0,0);border-radius:inherit;box-sizing:border-box;content:"";width:100%;height:100%;left:0;position:absolute;top:0;transition:background-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1),border-color 75ms 0ms cubic-bezier(0.4, 0, 0.2, 1);z-index:-1}@media(forced-colors: active){.mdc-switch__handle::before,.mdc-switch__handle::after{border-color:currentColor}}.mdc-switch--selected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-handle-color, var(--mat-sys-on-primary))}.mdc-switch--selected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-hover-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-focus-handle-color, var(--mat-sys-primary-container))}.mdc-switch--selected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-selected-pressed-handle-color, var(--mat-sys-primary-container))}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:hover:not(:focus):not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:focus:not(:active) .mdc-switch__handle::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled.mdc-switch--selected:active .mdc-switch__handle::after,.mdc-switch--selected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-selected-handle-color, var(--mat-sys-surface))}.mdc-switch--unselected:enabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-handle-color, var(--mat-sys-outline))}.mdc-switch--unselected:enabled:hover:not(:focus):not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-hover-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:focus:not(:active) .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-focus-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected:enabled:active .mdc-switch__handle::after{background:var(--mat-slide-toggle-unselected-pressed-handle-color, var(--mat-sys-on-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__handle::after{background:var(--mat-slide-toggle-disabled-unselected-handle-color, var(--mat-sys-on-surface))}.mdc-switch__handle::before{background:var(--mat-slide-toggle-handle-surface-color)}.mdc-switch__shadow{border-radius:inherit;bottom:0;left:0;position:absolute;right:0;top:0}.mdc-switch:enabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-handle-elevation-shadow)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:hover:not(:focus):not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:focus:not(:active) .mdc-switch__shadow,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:active .mdc-switch__shadow,.mdc-switch.mdc-switch--disabled .mdc-switch__shadow{box-shadow:var(--mat-slide-toggle-disabled-handle-elevation-shadow)}.mdc-switch__ripple{left:50%;position:absolute;top:50%;transform:translate(-50%, -50%);z-index:-1;width:var(--mat-slide-toggle-state-layer-size, 40px);height:var(--mat-slide-toggle-state-layer-size, 40px)}.mdc-switch__ripple::after{content:"";opacity:0}.mdc-switch--disabled .mdc-switch__ripple::after{display:none}.mat-mdc-slide-toggle-disabled-interactive .mdc-switch__ripple::after{display:block}.mdc-switch:hover .mdc-switch__ripple::after{transition:75ms opacity cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:focus .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:active .mdc-switch__ripple::after,.mat-mdc-slide-toggle-disabled-interactive.mdc-switch--disabled:enabled:hover:not(:focus) .mdc-switch__ripple::after,.mdc-switch--unselected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-hover-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--unselected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-focus-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--unselected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-unselected-pressed-state-layer-color, var(--mat-sys-on-surface));opacity:var(--mat-slide-toggle-unselected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch--selected:enabled:hover:not(:focus) .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-hover-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mdc-switch--selected:enabled:focus .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-focus-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-switch--selected:enabled:active .mdc-switch__ripple::after{background:var(--mat-slide-toggle-selected-pressed-state-layer-color, var(--mat-sys-primary));opacity:var(--mat-slide-toggle-selected-pressed-state-layer-opacity, var(--mat-sys-pressed-state-layer-opacity));transition:opacity 75ms linear}.mdc-switch__icons{position:relative;height:100%;width:100%;z-index:1;transform:translateZ(0)}.mdc-switch--disabled.mdc-switch--unselected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-unselected-icon-opacity, 0.38)}.mdc-switch--disabled.mdc-switch--selected .mdc-switch__icons{opacity:var(--mat-slide-toggle-disabled-selected-icon-opacity, 0.38)}.mdc-switch__icon{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;opacity:0;transition:opacity 30ms 0ms cubic-bezier(0.4, 0, 1, 1)}.mdc-switch--unselected .mdc-switch__icon{width:var(--mat-slide-toggle-unselected-icon-size, 16px);height:var(--mat-slide-toggle-unselected-icon-size, 16px);fill:var(--mat-slide-toggle-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--unselected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-unselected-icon-color, var(--mat-sys-surface-variant))}.mdc-switch--selected .mdc-switch__icon{width:var(--mat-slide-toggle-selected-icon-size, 16px);height:var(--mat-slide-toggle-selected-icon-size, 16px);fill:var(--mat-slide-toggle-selected-icon-color, var(--mat-sys-on-primary-container))}.mdc-switch--selected.mdc-switch--disabled .mdc-switch__icon{fill:var(--mat-slide-toggle-disabled-selected-icon-color, var(--mat-sys-on-surface))}.mdc-switch--selected .mdc-switch__icon--on,.mdc-switch--unselected .mdc-switch__icon--off{opacity:1;transition:opacity 45ms 30ms cubic-bezier(0, 0, 0.2, 1)}.mat-mdc-slide-toggle{-webkit-user-select:none;user-select:none;display:inline-block;-webkit-tap-highlight-color:rgba(0,0,0,0);outline:0}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple,.mat-mdc-slide-toggle .mdc-switch__ripple::after{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:50%;pointer-events:none}.mat-mdc-slide-toggle .mat-mdc-slide-toggle-ripple:not(:empty),.mat-mdc-slide-toggle .mdc-switch__ripple::after:not(:empty){transform:translateZ(0)}.mat-mdc-slide-toggle.mat-mdc-slide-toggle-focused .mat-focus-indicator::before{content:""}.mat-mdc-slide-toggle .mat-internal-form-field{color:var(--mat-slide-toggle-label-text-color, var(--mat-sys-on-surface));font-family:var(--mat-slide-toggle-label-text-font, var(--mat-sys-body-medium-font));line-height:var(--mat-slide-toggle-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-slide-toggle-label-text-size, var(--mat-sys-body-medium-size));letter-spacing:var(--mat-slide-toggle-label-text-tracking, var(--mat-sys-body-medium-tracking));font-weight:var(--mat-slide-toggle-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-slide-toggle .mat-ripple-element{opacity:.12}.mat-mdc-slide-toggle .mat-focus-indicator::before{border-radius:50%}.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle-track,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__icon,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__handle::after,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::before,.mat-mdc-slide-toggle._mat-animation-noopable .mdc-switch__track::after{transition:none}.mat-mdc-slide-toggle .mdc-switch:enabled+.mdc-label{cursor:pointer}.mat-mdc-slide-toggle .mdc-switch--disabled+label{color:var(--mat-slide-toggle-disabled-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-slide-toggle label:empty{display:none}.mat-mdc-slide-toggle-touch-target{position:absolute;top:50%;left:50%;height:var(--mat-slide-toggle-touch-target-size, 48px);width:100%;transform:translate(-50%, -50%);display:var(--mat-slide-toggle-touch-target-display, block)}[dir=rtl] .mat-mdc-slide-toggle-touch-target{left:auto;right:50%;transform:translate(50%, -50%)} +`],encapsulation:2,changeDetection:0})}return t})(),hoe=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[b7e,bi]})}return t})();var IL=["*"];function M7e(t,A){t&1&&tt(0)}var S7e=["tabListContainer"],k7e=["tabList"],_7e=["tabListInner"],x7e=["nextPaginator"],R7e=["previousPaginator"],N7e=["content"];function F7e(t,A){}var L7e=["tabBodyWrapper"],G7e=["tabHeader"];function K7e(t,A){}function U7e(t,A){if(t&1&&Nt(0,K7e,0,0,"ng-template",12),t&2){let e=p().$implicit;H("cdkPortalOutlet",e.templateLabel)}}function T7e(t,A){if(t&1&&v(0),t&2){let e=p().$implicit;ne(e.textLabel)}}function O7e(t,A){if(t&1){let e=ae();I(0,"div",7,2),U("click",function(){let n=L(e),o=n.$implicit,a=n.$index,r=p(),s=Ei(1);return G(r._handleClick(o,s,a))})("cdkFocusChange",function(n){let o=L(e).$index,a=p();return G(a._tabFocusChanged(n,o))}),le(2,"span",8)(3,"div",9),I(4,"span",10)(5,"span",11),T(6,U7e,1,1,null,12)(7,T7e,1,1),h()()()}if(t&2){let e=A.$implicit,i=A.$index,n=Ei(1),o=p();Ao(e.labelClass),_e("mdc-tab--active",o.selectedIndex===i),H("id",o._getTabLabelId(e,i))("disabled",e.disabled)("fitInkBarToContent",o.fitInkBarToContent),aA("tabIndex",o._getTabIndex(i))("aria-posinset",i+1)("aria-setsize",o._tabs.length)("aria-controls",o._getTabContentId(i))("aria-selected",o.selectedIndex===i)("aria-label",e.ariaLabel||null)("aria-labelledby",!e.ariaLabel&&e.ariaLabelledby?e.ariaLabelledby:null),Q(3),H("matRippleTrigger",n)("matRippleDisabled",e.disabled||o.disableRipple),Q(3),O(e.templateLabel?6:7)}}function J7e(t,A){t&1&&tt(0)}function z7e(t,A){if(t&1){let e=ae();I(0,"mat-tab-body",13),U("_onCentered",function(){L(e);let n=p();return G(n._removeTabBodyWrapperHeight())})("_onCentering",function(n){L(e);let o=p();return G(o._setTabBodyWrapperHeight(n))})("_beforeCentering",function(n){L(e);let o=p();return G(o._bodyCentered(n))}),h()}if(t&2){let e=A.$implicit,i=A.$index,n=p();Ao(e.bodyClass),H("id",n._getTabContentId(i))("content",e.content)("position",e.position)("animationDuration",n.animationDuration)("preserveContent",n.preserveContent),aA("tabindex",n.contentTabIndex!=null&&n.selectedIndex===i?n.contentTabIndex:null)("aria-labelledby",n._getTabLabelId(e,i))("aria-hidden",n.selectedIndex!==i)}}var Y7e=new Me("MatTabContent"),H7e=(()=>{class t{template=w(yo);constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matTabContent",""]],features:[yt([{provide:Y7e,useExisting:t}])]})}return t})(),P7e=new Me("MatTabLabel"),poe=new Me("MAT_TAB"),Rm=(()=>{class t extends Sj{_closestTab=w(poe,{optional:!0});static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","mat-tab-label",""],["","matTabLabel",""]],features:[yt([{provide:P7e,useExisting:t}]),_t]})}return t})(),moe=new Me("MAT_TAB_GROUP"),Nm=(()=>{class t{_viewContainerRef=w(Yo);_closestTabGroup=w(moe,{optional:!0});disabled=!1;get templateLabel(){return this._templateLabel}set templateLabel(e){this._setTemplateLabelInput(e)}_templateLabel;_explicitContent=void 0;_implicitContent;textLabel="";ariaLabel;ariaLabelledby;labelClass;bodyClass;id=null;_contentPortal=null;get content(){return this._contentPortal}_stateChanges=new rA;position=null;origin=null;isActive=!1;constructor(){w(Eo).load(yr)}ngOnChanges(e){(e.hasOwnProperty("textLabel")||e.hasOwnProperty("disabled"))&&this._stateChanges.next()}ngOnDestroy(){this._stateChanges.complete()}ngOnInit(){this._contentPortal=new $r(this._explicitContent||this._implicitContent,this._viewContainerRef)}_setTemplateLabelInput(e){e&&e._closestTab===this&&(this._templateLabel=e)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-tab"]],contentQueries:function(i,n,o){if(i&1&&ga(o,Rm,5)(o,H7e,7,yo),i&2){let a;cA(a=gA())&&(n.templateLabel=a.first),cA(a=gA())&&(n._explicitContent=a.first)}},viewQuery:function(i,n){if(i&1&&$t(yo,7),i&2){let o;cA(o=gA())&&(n._implicitContent=o.first)}},hostAttrs:["hidden",""],hostVars:1,hostBindings:function(i,n){i&2&&aA("id",null)},inputs:{disabled:[2,"disabled","disabled",mA],textLabel:[0,"label","textLabel"],ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],labelClass:"labelClass",bodyClass:"bodyClass",id:"id"},exportAs:["matTab"],features:[yt([{provide:poe,useExisting:t}]),ai],ngContentSelectors:IL,decls:1,vars:0,template:function(i,n){i&1&&(Yt(),zf(0,M7e,1,0,"ng-template"))},encapsulation:2})}return t})(),cL="mdc-tab-indicator--active",uoe="mdc-tab-indicator--no-transition",gL=class{_items;_currentItem;constructor(A){this._items=A}hide(){this._items.forEach(A=>A.deactivateInkBar()),this._currentItem=void 0}alignToElement(A){let e=this._items.find(n=>n.elementRef.nativeElement===A),i=this._currentItem;if(e!==i&&(i?.deactivateInkBar(),e)){let n=i?.elementRef.nativeElement.getBoundingClientRect?.();e.activateInkBar(n),this._currentItem=e}}},j7e=(()=>{class t{_elementRef=w(dA);_inkBarElement=null;_inkBarContentElement=null;_fitToContent=!1;get fitInkBarToContent(){return this._fitToContent}set fitInkBarToContent(e){this._fitToContent!==e&&(this._fitToContent=e,this._inkBarElement&&this._appendInkBarElement())}activateInkBar(e){let i=this._elementRef.nativeElement;if(!e||!i.getBoundingClientRect||!this._inkBarContentElement){i.classList.add(cL);return}let n=i.getBoundingClientRect(),o=e.width/n.width,a=e.left-n.left;i.classList.add(uoe),this._inkBarContentElement.style.setProperty("transform",`translateX(${a}px) scaleX(${o})`),i.getBoundingClientRect(),i.classList.remove(uoe),i.classList.add(cL),this._inkBarContentElement.style.setProperty("transform","")}deactivateInkBar(){this._elementRef.nativeElement.classList.remove(cL)}ngOnInit(){this._createInkBarElement()}ngOnDestroy(){this._inkBarElement?.remove(),this._inkBarElement=this._inkBarContentElement=null}_createInkBarElement(){let e=this._elementRef.nativeElement.ownerDocument||document,i=this._inkBarElement=e.createElement("span"),n=this._inkBarContentElement=e.createElement("span");i.className="mdc-tab-indicator",n.className="mdc-tab-indicator__content mdc-tab-indicator__content--underline",i.appendChild(this._inkBarContentElement),this._appendInkBarElement()}_appendInkBarElement(){this._inkBarElement;let e=this._fitToContent?this._elementRef.nativeElement.querySelector(".mdc-tab__content"):this._elementRef.nativeElement;e.appendChild(this._inkBarElement)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,inputs:{fitInkBarToContent:[2,"fitInkBarToContent","fitInkBarToContent",mA]}})}return t})();var foe=(()=>{class t extends j7e{elementRef=w(dA);disabled=!1;focus(){this.elementRef.nativeElement.focus()}getOffsetLeft(){return this.elementRef.nativeElement.offsetLeft}getOffsetWidth(){return this.elementRef.nativeElement.offsetWidth}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","matTabLabelWrapper",""]],hostVars:3,hostBindings:function(i,n){i&2&&(aA("aria-disabled",!!n.disabled),_e("mat-mdc-tab-disabled",n.disabled))},inputs:{disabled:[2,"disabled","disabled",mA]},features:[_t]})}return t})(),Eoe={passive:!0},V7e=650,q7e=100,Z7e=(()=>{class t{_elementRef=w(dA);_changeDetectorRef=w(xt);_viewportRuler=w(Ts);_dir=w(Fo,{optional:!0});_ngZone=w(At);_platform=w(pi);_sharedResizeObserver=w(v3);_injector=w(Rt);_renderer=w(rn);_animationsDisabled=hn();_eventCleanups;_scrollDistance=0;_selectedIndexChanged=!1;_destroyed=new rA;_showPaginationControls=!1;_disableScrollAfter=!0;_disableScrollBefore=!0;_tabLabelCount;_scrollDistanceChanged=!1;_keyManager;_currentTextContent;_stopScrolling=new rA;disablePagination=!1;get selectedIndex(){return this._selectedIndex}set selectedIndex(e){let i=isNaN(e)?0:e;this._selectedIndex!=i&&(this._selectedIndexChanged=!0,this._selectedIndex=i,this._keyManager&&this._keyManager.updateActiveItem(i))}_selectedIndex=0;selectFocusedIndex=new Le;indexFocused=new Le;constructor(){this._eventCleanups=this._ngZone.runOutsideAngular(()=>[this._renderer.listen(this._elementRef.nativeElement,"mouseleave",()=>this._stopInterval())])}ngAfterViewInit(){this._eventCleanups.push(this._renderer.listen(this._previousPaginator.nativeElement,"touchstart",()=>this._handlePaginatorPress("before"),Eoe),this._renderer.listen(this._nextPaginator.nativeElement,"touchstart",()=>this._handlePaginatorPress("after"),Eoe))}ngAfterContentInit(){let e=this._dir?this._dir.change:sA("ltr"),i=this._sharedResizeObserver.observe(this._elementRef.nativeElement).pipe(Ws(32),Mt(this._destroyed)),n=this._viewportRuler.change(150).pipe(Mt(this._destroyed)),o=()=>{this.updatePagination(),this._alignInkBarToSelectedTab()};this._keyManager=new rC(this._items).withHorizontalOrientation(this._getLayoutDirection()).withHomeAndEnd().withWrap().skipPredicate(()=>!1),this._keyManager.updateActiveItem(Math.max(this._selectedIndex,0)),ro(o,{injector:this._injector}),Zi(e,n,i,this._items.changes,this._itemsResized()).pipe(Mt(this._destroyed)).subscribe(()=>{this._ngZone.run(()=>{Promise.resolve().then(()=>{this._scrollDistance=Math.max(0,Math.min(this._getMaxScrollDistance(),this._scrollDistance)),o()})}),this._keyManager?.withHorizontalOrientation(this._getLayoutDirection())}),this._keyManager.change.subscribe(a=>{this.indexFocused.emit(a),this._setTabFocus(a)})}_itemsResized(){return typeof ResizeObserver!="function"?mr:this._items.changes.pipe(Yn(this._items),ki(e=>new Li(i=>this._ngZone.runOutsideAngular(()=>{let n=new ResizeObserver(o=>i.next(o));return e.forEach(o=>n.observe(o.elementRef.nativeElement)),()=>{n.disconnect()}}))),Kl(1),pt(e=>e.some(i=>i.contentRect.width>0&&i.contentRect.height>0)))}ngAfterContentChecked(){this._tabLabelCount!=this._items.length&&(this.updatePagination(),this._tabLabelCount=this._items.length,this._changeDetectorRef.markForCheck()),this._selectedIndexChanged&&(this._scrollToLabel(this._selectedIndex),this._checkScrollingControls(),this._alignInkBarToSelectedTab(),this._selectedIndexChanged=!1,this._changeDetectorRef.markForCheck()),this._scrollDistanceChanged&&(this._updateTabScrollPosition(),this._scrollDistanceChanged=!1,this._changeDetectorRef.markForCheck())}ngOnDestroy(){this._eventCleanups.forEach(e=>e()),this._keyManager?.destroy(),this._destroyed.next(),this._destroyed.complete(),this._stopScrolling.complete()}_handleKeydown(e){if(!Na(e))switch(e.keyCode){case 13:case 32:if(this.focusIndex!==this.selectedIndex){let i=this._items.get(this.focusIndex);i&&!i.disabled&&(this.selectFocusedIndex.emit(this.focusIndex),this._itemSelected(e))}break;default:this._keyManager?.onKeydown(e)}}_onContentChanges(){let e=this._elementRef.nativeElement.textContent;e!==this._currentTextContent&&(this._currentTextContent=e||"",this._ngZone.run(()=>{this.updatePagination(),this._alignInkBarToSelectedTab(),this._changeDetectorRef.markForCheck()}))}updatePagination(){this._checkPaginationEnabled(),this._checkScrollingControls(),this._updateTabScrollPosition()}get focusIndex(){return this._keyManager?this._keyManager.activeItemIndex:0}set focusIndex(e){!this._isValidIndex(e)||this.focusIndex===e||!this._keyManager||this._keyManager.setActiveItem(e)}_isValidIndex(e){return this._items?!!this._items.toArray()[e]:!0}_setTabFocus(e){if(this._showPaginationControls&&this._scrollToLabel(e),this._items&&this._items.length){this._items.toArray()[e].focus();let i=this._tabListContainer.nativeElement;this._getLayoutDirection()=="ltr"?i.scrollLeft=0:i.scrollLeft=i.scrollWidth-i.offsetWidth}}_getLayoutDirection(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_updateTabScrollPosition(){if(this.disablePagination)return;let e=this.scrollDistance,i=this._getLayoutDirection()==="ltr"?-e:e;this._tabList.nativeElement.style.transform=`translateX(${Math.round(i)}px)`,(this._platform.TRIDENT||this._platform.EDGE)&&(this._tabListContainer.nativeElement.scrollLeft=0)}get scrollDistance(){return this._scrollDistance}set scrollDistance(e){this._scrollTo(e)}_scrollHeader(e){let i=this._tabListContainer.nativeElement.offsetWidth,n=(e=="before"?-1:1)*i/3;return this._scrollTo(this._scrollDistance+n)}_handlePaginatorClick(e){this._stopInterval(),this._scrollHeader(e)}_scrollToLabel(e){if(this.disablePagination)return;let i=this._items?this._items.toArray()[e]:null;if(!i)return;let n=this._tabListContainer.nativeElement.offsetWidth,{offsetLeft:o,offsetWidth:a}=i.elementRef.nativeElement,r,s;this._getLayoutDirection()=="ltr"?(r=o,s=r+a):(s=this._tabListInner.nativeElement.offsetWidth-o,r=s-a);let l=this.scrollDistance,c=this.scrollDistance+n;rc&&(this.scrollDistance+=Math.min(s-c,r-l))}_checkPaginationEnabled(){if(this.disablePagination)this._showPaginationControls=!1;else{let e=this._tabListInner.nativeElement.scrollWidth,i=this._elementRef.nativeElement.offsetWidth,n=e-i>=5;n||(this.scrollDistance=0),n!==this._showPaginationControls&&(this._showPaginationControls=n,this._changeDetectorRef.markForCheck())}}_checkScrollingControls(){this.disablePagination?this._disableScrollAfter=this._disableScrollBefore=!0:(this._disableScrollBefore=this.scrollDistance==0,this._disableScrollAfter=this.scrollDistance==this._getMaxScrollDistance(),this._changeDetectorRef.markForCheck())}_getMaxScrollDistance(){let e=this._tabListInner.nativeElement.scrollWidth,i=this._tabListContainer.nativeElement.offsetWidth;return e-i||0}_alignInkBarToSelectedTab(){let e=this._items&&this._items.length?this._items.toArray()[this.selectedIndex]:null,i=e?e.elementRef.nativeElement:null;i?this._inkBar.alignToElement(i):this._inkBar.hide()}_stopInterval(){this._stopScrolling.next()}_handlePaginatorPress(e,i){i&&i.button!=null&&i.button!==0||(this._stopInterval(),Nf(V7e,q7e).pipe(Mt(Zi(this._stopScrolling,this._destroyed))).subscribe(()=>{let{maxScrollDistance:n,distance:o}=this._scrollHeader(e);(o===0||o>=n)&&this._stopInterval()}))}_scrollTo(e){if(this.disablePagination)return{maxScrollDistance:0,distance:0};let i=this._getMaxScrollDistance();return this._scrollDistance=Math.max(0,Math.min(i,e)),this._scrollDistanceChanged=!0,this._checkScrollingControls(),{maxScrollDistance:i,distance:this._scrollDistance}}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,inputs:{disablePagination:[2,"disablePagination","disablePagination",mA],selectedIndex:[2,"selectedIndex","selectedIndex",Dn]},outputs:{selectFocusedIndex:"selectFocusedIndex",indexFocused:"indexFocused"}})}return t})(),W7e=(()=>{class t extends Z7e{_items;_tabListContainer;_tabList;_tabListInner;_nextPaginator;_previousPaginator;_inkBar;ariaLabel;ariaLabelledby;disableRipple=!1;ngAfterContentInit(){this._inkBar=new gL(this._items),super.ngAfterContentInit()}_itemSelected(e){e.preventDefault()}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275cmp=De({type:t,selectors:[["mat-tab-header"]],contentQueries:function(i,n,o){if(i&1&&ga(o,foe,4),i&2){let a;cA(a=gA())&&(n._items=a)}},viewQuery:function(i,n){if(i&1&&$t(S7e,7)(k7e,7)(_7e,7)(x7e,5)(R7e,5),i&2){let o;cA(o=gA())&&(n._tabListContainer=o.first),cA(o=gA())&&(n._tabList=o.first),cA(o=gA())&&(n._tabListInner=o.first),cA(o=gA())&&(n._nextPaginator=o.first),cA(o=gA())&&(n._previousPaginator=o.first)}},hostAttrs:[1,"mat-mdc-tab-header"],hostVars:4,hostBindings:function(i,n){i&2&&_e("mat-mdc-tab-header-pagination-controls-enabled",n._showPaginationControls)("mat-mdc-tab-header-rtl",n._getLayoutDirection()=="rtl")},inputs:{ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"],disableRipple:[2,"disableRipple","disableRipple",mA]},features:[_t],ngContentSelectors:IL,decls:13,vars:10,consts:[["previousPaginator",""],["tabListContainer",""],["tabList",""],["tabListInner",""],["nextPaginator",""],["mat-ripple","",1,"mat-mdc-tab-header-pagination","mat-mdc-tab-header-pagination-before",3,"click","mousedown","touchend","matRippleDisabled"],[1,"mat-mdc-tab-header-pagination-chevron"],[1,"mat-mdc-tab-label-container",3,"keydown"],["role","tablist",1,"mat-mdc-tab-list",3,"cdkObserveContent"],[1,"mat-mdc-tab-labels"],["mat-ripple","",1,"mat-mdc-tab-header-pagination","mat-mdc-tab-header-pagination-after",3,"mousedown","click","touchend","matRippleDisabled"]],template:function(i,n){i&1&&(Yt(),I(0,"div",5,0),U("click",function(){return n._handlePaginatorClick("before")})("mousedown",function(a){return n._handlePaginatorPress("before",a)})("touchend",function(){return n._stopInterval()}),le(2,"div",6),h(),I(3,"div",7,1),U("keydown",function(a){return n._handleKeydown(a)}),I(5,"div",8,2),U("cdkObserveContent",function(){return n._onContentChanges()}),I(7,"div",9,3),tt(9),h()()(),I(10,"div",10,4),U("mousedown",function(a){return n._handlePaginatorPress("after",a)})("click",function(){return n._handlePaginatorClick("after")})("touchend",function(){return n._stopInterval()}),le(12,"div",6),h()),i&2&&(_e("mat-mdc-tab-header-pagination-disabled",n._disableScrollBefore),H("matRippleDisabled",n._disableScrollBefore||n.disableRipple),Q(3),_e("_mat-animation-noopable",n._animationsDisabled),Q(2),aA("aria-label",n.ariaLabel||null)("aria-labelledby",n.ariaLabelledby||null),Q(5),_e("mat-mdc-tab-header-pagination-disabled",n._disableScrollAfter),H("matRippleDisabled",n._disableScrollAfter||n.disableRipple))},dependencies:[Es,IY],styles:[`.mat-mdc-tab-header{display:flex;overflow:hidden;position:relative;flex-shrink:0}.mdc-tab-indicator .mdc-tab-indicator__content{transition-duration:var(--mat-tab-animation-duration, 250ms)}.mat-mdc-tab-header-pagination{-webkit-user-select:none;user-select:none;position:relative;display:none;justify-content:center;align-items:center;min-width:32px;cursor:pointer;z-index:2;-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:none;box-sizing:content-box;outline:0}.mat-mdc-tab-header-pagination::-moz-focus-inner{border:0}.mat-mdc-tab-header-pagination .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-header-pagination-controls-enabled .mat-mdc-tab-header-pagination{display:flex}.mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after{padding-left:4px}.mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(-135deg)}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before,.mat-mdc-tab-header-pagination-after{padding-right:4px}.mat-mdc-tab-header-rtl .mat-mdc-tab-header-pagination-before .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-header-pagination-after .mat-mdc-tab-header-pagination-chevron{transform:rotate(45deg)}.mat-mdc-tab-header-pagination-chevron{border-style:solid;border-width:2px 2px 0 0;height:8px;width:8px;border-color:var(--mat-tab-pagination-icon-color, var(--mat-sys-on-surface))}.mat-mdc-tab-header-pagination-disabled{box-shadow:none;cursor:default;pointer-events:none}.mat-mdc-tab-header-pagination-disabled .mat-mdc-tab-header-pagination-chevron{opacity:.4}.mat-mdc-tab-list{flex-grow:1;position:relative;transition:transform 500ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-mdc-tab-list{transition:none}.mat-mdc-tab-label-container{display:flex;flex-grow:1;overflow:hidden;z-index:1;border-bottom-style:solid;border-bottom-width:var(--mat-tab-divider-height, 1px);border-bottom-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.mat-mdc-tab-group-inverted-header .mat-mdc-tab-label-container{border-bottom:none;border-top-style:solid;border-top-width:var(--mat-tab-divider-height, 1px);border-top-color:var(--mat-tab-divider-color, var(--mat-sys-surface-variant))}.mat-mdc-tab-labels{display:flex;flex:1 0 auto}[mat-align-tabs=center]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:center}[mat-align-tabs=end]>.mat-mdc-tab-header .mat-mdc-tab-labels{justify-content:flex-end}.cdk-drop-list .mat-mdc-tab-labels,.mat-mdc-tab-labels.cdk-drop-list{min-height:var(--mat-tab-container-height, 48px)}.mat-mdc-tab::before{margin:5px}@media(forced-colors: active){.mat-mdc-tab[aria-disabled=true]{color:GrayText}} +`],encapsulation:2})}return t})(),X7e=new Me("MAT_TABS_CONFIG"),Qoe=(()=>{class t extends Bc{_host=w(CL);_ngZone=w(At);_centeringSub=zo.EMPTY;_leavingSub=zo.EMPTY;constructor(){super()}ngOnInit(){super.ngOnInit(),this._centeringSub=this._host._beforeCentering.pipe(Yn(this._host._isCenterPosition())).subscribe(e=>{this._host._content&&e&&!this.hasAttached()&&this._ngZone.run(()=>{Promise.resolve().then(),this.attach(this._host._content)})}),this._leavingSub=this._host._afterLeavingCenter.subscribe(()=>{this._host.preserveContent||this._ngZone.run(()=>this.detach())})}ngOnDestroy(){super.ngOnDestroy(),this._centeringSub.unsubscribe(),this._leavingSub.unsubscribe()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","matTabBodyHost",""]],features:[_t]})}return t})(),CL=(()=>{class t{_elementRef=w(dA);_dir=w(Fo,{optional:!0});_ngZone=w(At);_injector=w(Rt);_renderer=w(rn);_diAnimationsDisabled=hn();_eventCleanups;_initialized=!1;_fallbackTimer;_positionIndex;_dirChangeSubscription=zo.EMPTY;_position;_previousPosition;_onCentering=new Le;_beforeCentering=new Le;_afterLeavingCenter=new Le;_onCentered=new Le(!0);_portalHost;_contentElement;_content;animationDuration="500ms";preserveContent=!1;set position(e){this._positionIndex=e,this._computePositionAnimationState()}constructor(){if(this._dir){let e=w(xt);this._dirChangeSubscription=this._dir.change.subscribe(i=>{this._computePositionAnimationState(i),e.markForCheck()})}}ngOnInit(){this._bindTransitionEvents(),this._position==="center"&&(this._setActiveClass(!0),ro(()=>this._onCentering.emit(this._elementRef.nativeElement.clientHeight),{injector:this._injector})),this._initialized=!0}ngOnDestroy(){clearTimeout(this._fallbackTimer),this._eventCleanups?.forEach(e=>e()),this._dirChangeSubscription.unsubscribe()}_bindTransitionEvents(){this._ngZone.runOutsideAngular(()=>{let e=this._elementRef.nativeElement,i=n=>{n.target===this._contentElement?.nativeElement&&(this._elementRef.nativeElement.classList.remove("mat-tab-body-animating"),n.type==="transitionend"&&this._transitionDone())};this._eventCleanups=[this._renderer.listen(e,"transitionstart",n=>{n.target===this._contentElement?.nativeElement&&(this._elementRef.nativeElement.classList.add("mat-tab-body-animating"),this._transitionStarted())}),this._renderer.listen(e,"transitionend",i),this._renderer.listen(e,"transitioncancel",i)]})}_transitionStarted(){clearTimeout(this._fallbackTimer);let e=this._position==="center";this._beforeCentering.emit(e),e&&this._onCentering.emit(this._elementRef.nativeElement.clientHeight)}_transitionDone(){this._position==="center"?this._onCentered.emit():this._previousPosition==="center"&&this._afterLeavingCenter.emit()}_setActiveClass(e){this._elementRef.nativeElement.classList.toggle("mat-mdc-tab-body-active",e)}_getLayoutDirection(){return this._dir&&this._dir.value==="rtl"?"rtl":"ltr"}_isCenterPosition(){return this._positionIndex===0}_computePositionAnimationState(e=this._getLayoutDirection()){this._previousPosition=this._position,this._positionIndex<0?this._position=e=="ltr"?"left":"right":this._positionIndex>0?this._position=e=="ltr"?"right":"left":this._position="center",this._animationsDisabled()?this._simulateTransitionEvents():this._initialized&&(this._position==="center"||this._previousPosition==="center")&&(clearTimeout(this._fallbackTimer),this._fallbackTimer=this._ngZone.runOutsideAngular(()=>setTimeout(()=>this._simulateTransitionEvents(),100)))}_simulateTransitionEvents(){this._transitionStarted(),ro(()=>this._transitionDone(),{injector:this._injector})}_animationsDisabled(){return this._diAnimationsDisabled||this.animationDuration==="0ms"||this.animationDuration==="0s"}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-tab-body"]],viewQuery:function(i,n){if(i&1&&$t(Qoe,5)(N7e,5),i&2){let o;cA(o=gA())&&(n._portalHost=o.first),cA(o=gA())&&(n._contentElement=o.first)}},hostAttrs:[1,"mat-mdc-tab-body"],hostVars:1,hostBindings:function(i,n){i&2&&aA("inert",n._position==="center"?null:"")},inputs:{_content:[0,"content","_content"],animationDuration:"animationDuration",preserveContent:"preserveContent",position:"position"},outputs:{_onCentering:"_onCentering",_beforeCentering:"_beforeCentering",_onCentered:"_onCentered"},decls:3,vars:6,consts:[["content",""],["cdkScrollable","",1,"mat-mdc-tab-body-content"],["matTabBodyHost",""]],template:function(i,n){i&1&&(I(0,"div",1,0),Nt(2,F7e,0,0,"ng-template",2),h()),i&2&&_e("mat-tab-body-content-left",n._position==="left")("mat-tab-body-content-right",n._position==="right")("mat-tab-body-content-can-animate",n._position==="center"||n._previousPosition==="center")},dependencies:[Qoe,dC],styles:[`.mat-mdc-tab-body{top:0;left:0;right:0;bottom:0;position:absolute;display:block;overflow:hidden;outline:0;flex-basis:100%}.mat-mdc-tab-body.mat-mdc-tab-body-active{position:relative;overflow-x:hidden;overflow-y:auto;z-index:1;flex-grow:1}.mat-mdc-tab-group.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body.mat-mdc-tab-body-active{overflow-y:hidden}.mat-mdc-tab-body-content{height:100%;overflow:auto;transform:none;visibility:hidden}.mat-tab-body-animating>.mat-mdc-tab-body-content,.mat-mdc-tab-body-active>.mat-mdc-tab-body-content{visibility:visible}.mat-tab-body-animating>.mat-mdc-tab-body-content{min-height:1px}.mat-mdc-tab-group-dynamic-height .mat-mdc-tab-body-content{overflow:hidden}.mat-tab-body-content-can-animate{transition:transform var(--mat-tab-animation-duration) 1ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable .mat-tab-body-content-can-animate{transition:none}.mat-tab-body-content-left{transform:translate3d(-100%, 0, 0)}.mat-tab-body-content-right{transform:translate3d(100%, 0, 0)} +`],encapsulation:2})}return t})(),nE=(()=>{class t{_elementRef=w(dA);_changeDetectorRef=w(xt);_ngZone=w(At);_tabsSubscription=zo.EMPTY;_tabLabelSubscription=zo.EMPTY;_tabBodySubscription=zo.EMPTY;_diAnimationsDisabled=hn();_allTabs;_tabBodies;_tabBodyWrapper;_tabHeader;_tabs=new Vc;_indexToSelect=0;_lastFocusedTabIndex=null;_tabBodyWrapperHeight=0;color;get fitInkBarToContent(){return this._fitInkBarToContent}set fitInkBarToContent(e){this._fitInkBarToContent=e,this._changeDetectorRef.markForCheck()}_fitInkBarToContent=!1;stretchTabs=!0;alignTabs=null;dynamicHeight=!1;get selectedIndex(){return this._selectedIndex}set selectedIndex(e){this._indexToSelect=isNaN(e)?null:e}_selectedIndex=null;headerPosition="above";get animationDuration(){return this._animationDuration}set animationDuration(e){let i=e+"";this._animationDuration=/^\d+$/.test(i)?e+"ms":i}_animationDuration;get contentTabIndex(){return this._contentTabIndex}set contentTabIndex(e){this._contentTabIndex=isNaN(e)?null:e}_contentTabIndex=null;disablePagination=!1;disableRipple=!1;preserveContent=!1;get backgroundColor(){return this._backgroundColor}set backgroundColor(e){let i=this._elementRef.nativeElement.classList;i.remove("mat-tabs-with-background",`mat-background-${this.backgroundColor}`),e&&i.add("mat-tabs-with-background",`mat-background-${e}`),this._backgroundColor=e}_backgroundColor;ariaLabel;ariaLabelledby;selectedIndexChange=new Le;focusChange=new Le;animationDone=new Le;selectedTabChange=new Le(!0);_groupId;_isServer=!w(pi).isBrowser;constructor(){let e=w(X7e,{optional:!0});this._groupId=w(bn).getId("mat-tab-group-"),this.animationDuration=e&&e.animationDuration?e.animationDuration:"500ms",this.disablePagination=e&&e.disablePagination!=null?e.disablePagination:!1,this.dynamicHeight=e&&e.dynamicHeight!=null?e.dynamicHeight:!1,e?.contentTabIndex!=null&&(this.contentTabIndex=e.contentTabIndex),this.preserveContent=!!e?.preserveContent,this.fitInkBarToContent=e&&e.fitInkBarToContent!=null?e.fitInkBarToContent:!1,this.stretchTabs=e&&e.stretchTabs!=null?e.stretchTabs:!0,this.alignTabs=e&&e.alignTabs!=null?e.alignTabs:null}ngAfterContentChecked(){let e=this._indexToSelect=this._clampTabIndex(this._indexToSelect);if(this._selectedIndex!=e){let i=this._selectedIndex==null;if(!i){this.selectedTabChange.emit(this._createChangeEvent(e));let n=this._tabBodyWrapper.nativeElement;n.style.minHeight=n.clientHeight+"px"}Promise.resolve().then(()=>{this._tabs.forEach((n,o)=>n.isActive=o===e),i||(this.selectedIndexChange.emit(e),this._tabBodyWrapper.nativeElement.style.minHeight="")})}this._tabs.forEach((i,n)=>{i.position=n-e,this._selectedIndex!=null&&i.position==0&&!i.origin&&(i.origin=e-this._selectedIndex)}),this._selectedIndex!==e&&(this._selectedIndex=e,this._lastFocusedTabIndex=null,this._changeDetectorRef.markForCheck())}ngAfterContentInit(){this._subscribeToAllTabChanges(),this._subscribeToTabLabels(),this._tabsSubscription=this._tabs.changes.subscribe(()=>{let e=this._clampTabIndex(this._indexToSelect);if(e===this._selectedIndex){let i=this._tabs.toArray(),n;for(let o=0;o{i[e].isActive=!0,this.selectedTabChange.emit(this._createChangeEvent(e))})}this._changeDetectorRef.markForCheck()})}ngAfterViewInit(){this._tabBodySubscription=this._tabBodies.changes.subscribe(()=>this._bodyCentered(!0))}_subscribeToAllTabChanges(){this._allTabs.changes.pipe(Yn(this._allTabs)).subscribe(e=>{this._tabs.reset(e.filter(i=>i._closestTabGroup===this||!i._closestTabGroup)),this._tabs.notifyOnChanges()})}ngOnDestroy(){this._tabs.destroy(),this._tabsSubscription.unsubscribe(),this._tabLabelSubscription.unsubscribe(),this._tabBodySubscription.unsubscribe()}realignInkBar(){this._tabHeader&&this._tabHeader._alignInkBarToSelectedTab()}updatePagination(){this._tabHeader&&this._tabHeader.updatePagination()}focusTab(e){let i=this._tabHeader;i&&(i.focusIndex=e)}_focusChanged(e){this._lastFocusedTabIndex=e,this.focusChange.emit(this._createChangeEvent(e))}_createChangeEvent(e){let i=new dL;return i.index=e,this._tabs&&this._tabs.length&&(i.tab=this._tabs.toArray()[e]),i}_subscribeToTabLabels(){this._tabLabelSubscription&&this._tabLabelSubscription.unsubscribe(),this._tabLabelSubscription=Zi(...this._tabs.map(e=>e._stateChanges)).subscribe(()=>this._changeDetectorRef.markForCheck())}_clampTabIndex(e){return Math.min(this._tabs.length-1,Math.max(e||0,0))}_getTabLabelId(e,i){return e.id||`${this._groupId}-label-${i}`}_getTabContentId(e){return`${this._groupId}-content-${e}`}_setTabBodyWrapperHeight(e){if(!this.dynamicHeight||!this._tabBodyWrapperHeight){this._tabBodyWrapperHeight=e;return}let i=this._tabBodyWrapper.nativeElement;i.style.height=this._tabBodyWrapperHeight+"px",this._tabBodyWrapper.nativeElement.offsetHeight&&(i.style.height=e+"px")}_removeTabBodyWrapperHeight(){let e=this._tabBodyWrapper.nativeElement;this._tabBodyWrapperHeight=e.clientHeight,e.style.height="",this._ngZone.run(()=>this.animationDone.emit())}_handleClick(e,i,n){i.focusIndex=n,e.disabled||(this.selectedIndex=n)}_getTabIndex(e){let i=this._lastFocusedTabIndex??this.selectedIndex;return e===i?0:-1}_tabFocusChanged(e,i){e&&e!=="mouse"&&e!=="touch"&&(this._tabHeader.focusIndex=i)}_bodyCentered(e){e&&this._tabBodies?.forEach((i,n)=>i._setActiveClass(n===this._selectedIndex))}_animationsDisabled(){return this._diAnimationsDisabled||this.animationDuration==="0"||this.animationDuration==="0ms"}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-tab-group"]],contentQueries:function(i,n,o){if(i&1&&ga(o,Nm,5),i&2){let a;cA(a=gA())&&(n._allTabs=a)}},viewQuery:function(i,n){if(i&1&&$t(L7e,5)(G7e,5)(CL,5),i&2){let o;cA(o=gA())&&(n._tabBodyWrapper=o.first),cA(o=gA())&&(n._tabHeader=o.first),cA(o=gA())&&(n._tabBodies=o)}},hostAttrs:[1,"mat-mdc-tab-group"],hostVars:11,hostBindings:function(i,n){i&2&&(aA("mat-align-tabs",n.alignTabs),Ao("mat-"+(n.color||"primary")),vt("--mat-tab-animation-duration",n.animationDuration),_e("mat-mdc-tab-group-dynamic-height",n.dynamicHeight)("mat-mdc-tab-group-inverted-header",n.headerPosition==="below")("mat-mdc-tab-group-stretch-tabs",n.stretchTabs))},inputs:{color:"color",fitInkBarToContent:[2,"fitInkBarToContent","fitInkBarToContent",mA],stretchTabs:[2,"mat-stretch-tabs","stretchTabs",mA],alignTabs:[0,"mat-align-tabs","alignTabs"],dynamicHeight:[2,"dynamicHeight","dynamicHeight",mA],selectedIndex:[2,"selectedIndex","selectedIndex",Dn],headerPosition:"headerPosition",animationDuration:"animationDuration",contentTabIndex:[2,"contentTabIndex","contentTabIndex",Dn],disablePagination:[2,"disablePagination","disablePagination",mA],disableRipple:[2,"disableRipple","disableRipple",mA],preserveContent:[2,"preserveContent","preserveContent",mA],backgroundColor:"backgroundColor",ariaLabel:[0,"aria-label","ariaLabel"],ariaLabelledby:[0,"aria-labelledby","ariaLabelledby"]},outputs:{selectedIndexChange:"selectedIndexChange",focusChange:"focusChange",animationDone:"animationDone",selectedTabChange:"selectedTabChange"},exportAs:["matTabGroup"],features:[yt([{provide:moe,useExisting:t}])],ngContentSelectors:IL,decls:9,vars:8,consts:[["tabHeader",""],["tabBodyWrapper",""],["tabNode",""],[3,"indexFocused","selectFocusedIndex","selectedIndex","disableRipple","disablePagination","aria-label","aria-labelledby"],["role","tab","matTabLabelWrapper","","cdkMonitorElementFocus","",1,"mdc-tab","mat-mdc-tab","mat-focus-indicator",3,"id","mdc-tab--active","class","disabled","fitInkBarToContent"],[1,"mat-mdc-tab-body-wrapper"],["role","tabpanel",3,"id","class","content","position","animationDuration","preserveContent"],["role","tab","matTabLabelWrapper","","cdkMonitorElementFocus","",1,"mdc-tab","mat-mdc-tab","mat-focus-indicator",3,"click","cdkFocusChange","id","disabled","fitInkBarToContent"],[1,"mdc-tab__ripple"],["mat-ripple","",1,"mat-mdc-tab-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mdc-tab__content"],[1,"mdc-tab__text-label"],[3,"cdkPortalOutlet"],["role","tabpanel",3,"_onCentered","_onCentering","_beforeCentering","id","content","position","animationDuration","preserveContent"]],template:function(i,n){i&1&&(Yt(),I(0,"mat-tab-header",3,0),U("indexFocused",function(a){return n._focusChanged(a)})("selectFocusedIndex",function(a){return n.selectedIndex=a}),RA(2,O7e,8,17,"div",4,ri),h(),T(4,J7e,1,0),I(5,"div",5,1),RA(7,z7e,1,10,"mat-tab-body",6,ri),h()),i&2&&(H("selectedIndex",n.selectedIndex||0)("disableRipple",n.disableRipple)("disablePagination",n.disablePagination),Hf("aria-label",n.ariaLabel)("aria-labelledby",n.ariaLabelledby),Q(2),NA(n._tabs),Q(2),O(n._isServer?4:-1),Q(),_e("_mat-animation-noopable",n._animationsDisabled()),Q(2),NA(n._tabs))},dependencies:[W7e,foe,DM,Es,Bc,CL],styles:[`.mdc-tab{min-width:90px;padding:0 24px;display:flex;flex:1 0 auto;justify-content:center;box-sizing:border-box;border:none;outline:none;text-align:center;white-space:nowrap;cursor:pointer;z-index:1;touch-action:manipulation}.mdc-tab__content{display:flex;align-items:center;justify-content:center;height:inherit;pointer-events:none}.mdc-tab__text-label{transition:150ms color linear;display:inline-block;line-height:1;z-index:2}.mdc-tab--active .mdc-tab__text-label{transition-delay:100ms}._mat-animation-noopable .mdc-tab__text-label{transition:none}.mdc-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.mdc-tab-indicator__content{transition:var(--mat-tab-animation-duration, 250ms) transform cubic-bezier(0.4, 0, 0.2, 1);transform-origin:left;opacity:0}.mdc-tab-indicator__content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.mdc-tab-indicator--active .mdc-tab-indicator__content{opacity:1}._mat-animation-noopable .mdc-tab-indicator__content,.mdc-tab-indicator--no-transition .mdc-tab-indicator__content{transition:none}.mat-mdc-tab-ripple.mat-mdc-tab-ripple{position:absolute;top:0;left:0;bottom:0;right:0;pointer-events:none}.mat-mdc-tab{-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none;background:none;height:var(--mat-tab-container-height, 48px);font-family:var(--mat-tab-label-text-font, var(--mat-sys-title-small-font));font-size:var(--mat-tab-label-text-size, var(--mat-sys-title-small-size));letter-spacing:var(--mat-tab-label-text-tracking, var(--mat-sys-title-small-tracking));line-height:var(--mat-tab-label-text-line-height, var(--mat-sys-title-small-line-height));font-weight:var(--mat-tab-label-text-weight, var(--mat-sys-title-small-weight))}.mat-mdc-tab.mdc-tab{flex-grow:0}.mat-mdc-tab .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-indicator-color, var(--mat-sys-primary));border-top-width:var(--mat-tab-active-indicator-height, 2px);border-radius:var(--mat-tab-active-indicator-shape, 0)}.mat-mdc-tab:hover .mdc-tab__text-label{color:var(--mat-tab-inactive-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab:focus .mdc-tab__text-label{color:var(--mat-tab-inactive-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{color:var(--mat-tab-active-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active .mdc-tab__ripple::before,.mat-mdc-tab.mdc-tab--active .mat-ripple-element{background-color:var(--mat-tab-active-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:hover .mdc-tab__text-label{color:var(--mat-tab-active-hover-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:hover .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-hover-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab.mdc-tab--active:focus .mdc-tab__text-label{color:var(--mat-tab-active-focus-label-text-color, var(--mat-sys-on-surface))}.mat-mdc-tab.mdc-tab--active:focus .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-active-focus-indicator-color, var(--mat-sys-primary))}.mat-mdc-tab.mat-mdc-tab-disabled{opacity:.4;pointer-events:none}.mat-mdc-tab.mat-mdc-tab-disabled .mdc-tab__content{pointer-events:none}.mat-mdc-tab.mat-mdc-tab-disabled .mdc-tab__ripple::before,.mat-mdc-tab.mat-mdc-tab-disabled .mat-ripple-element{background-color:var(--mat-tab-disabled-ripple-color, var(--mat-sys-on-surface-variant))}.mat-mdc-tab .mdc-tab__ripple::before{content:"";display:block;position:absolute;top:0;left:0;right:0;bottom:0;opacity:0;pointer-events:none;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab .mdc-tab__text-label{color:var(--mat-tab-inactive-label-text-color, var(--mat-sys-on-surface));display:inline-flex;align-items:center}.mat-mdc-tab .mdc-tab__content{position:relative;pointer-events:auto}.mat-mdc-tab:hover .mdc-tab__ripple::before{opacity:.04}.mat-mdc-tab.cdk-program-focused .mdc-tab__ripple::before,.mat-mdc-tab.cdk-keyboard-focused .mdc-tab__ripple::before{opacity:.12}.mat-mdc-tab .mat-ripple-element{opacity:.12;background-color:var(--mat-tab-inactive-ripple-color, var(--mat-sys-on-surface))}.mat-mdc-tab-group.mat-mdc-tab-group-stretch-tabs>.mat-mdc-tab-header .mat-mdc-tab{flex-grow:1}.mat-mdc-tab-group{display:flex;flex-direction:column;max-width:100%}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination{background-color:var(--mat-tab-background-color)}.mat-mdc-tab-group.mat-tabs-with-background.mat-primary>.mat-mdc-tab-header .mat-mdc-tab .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background.mat-primary>.mat-mdc-tab-header .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-header .mat-mdc-tab:not(.mdc-tab--active) .mdc-tab__text-label{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background:not(.mat-primary)>.mat-mdc-tab-header .mat-mdc-tab:not(.mdc-tab--active) .mdc-tab-indicator__content--underline{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-focus-indicator::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-focus-indicator::before{border-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mdc-tab__ripple::before,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-ripple-element,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mdc-tab__ripple::before{background-color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header .mat-mdc-tab-header-pagination-chevron,.mat-mdc-tab-group.mat-tabs-with-background>.mat-mdc-tab-header-pagination .mat-mdc-tab-header-pagination-chevron{color:var(--mat-tab-foreground-color)}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header{flex-direction:column-reverse}.mat-mdc-tab-group.mat-mdc-tab-group-inverted-header .mdc-tab-indicator__content--underline{align-self:flex-start}.mat-mdc-tab-body-wrapper{position:relative;overflow:hidden;display:flex;transition:height 500ms cubic-bezier(0.35, 0, 0.25, 1)}.mat-mdc-tab-body-wrapper._mat-animation-noopable{transition:none !important;animation:none !important} +`],encapsulation:2})}return t})(),dL=class{index;tab};var woe=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[bi]})}return t})();var eMe={cancelEditingTooltip:"Cancel editing",saveEvalMessageTooltip:"Save eval case message",thoughtChipLabel:"Thought",outcomeLabel:"Outcome",outputLabel:"Output",actualToolUsesLabel:"Actual tool uses:",expectedToolUsesLabel:"Expected tool uses:",actualResponseLabel:"Actual response:",expectedResponseLabel:"Expected response:",matchScoreLabel:"Match score",thresholdLabel:"Threshold",evalPassLabel:"PASS",evalFailLabel:"FAIL",editEvalMessageTooltip:"Edit eval case message",deleteEvalMessageTooltip:"Delete eval case message",editFunctionArgsTooltip:"Edit function arguments",typeMessagePlaceholder:"Type a message...",sendMessageTooltip:"Send message",stopMessageTooltip:"Stop",uploadFileTooltip:"Upload local file",moreOptionsTooltip:"More options",updateStateMenuLabel:"Update state",updateStateMenuTooltip:"Update the session state",turnOffMicTooltip:"Hang up",useMicTooltip:"Call",turnOffCamTooltip:"Turn off camera",useCamTooltip:"Use camera",updatedSessionStateChipLabel:"Updated session state",proactiveAudioTooltip:"Enable the model to speak spontaneously without waiting for user input",affectiveDialogTooltip:"Enable the model to respond with emotional expression",sessionResumptionTooltip:"Allow the session to resume from a previous state",saveLiveBlobTooltip:"Save the recorded live stream data"},N2=new Me("Chat Panel Messages",{factory:()=>eMe});var m5="comm",f5="rule",w5="decl";var yoe="@import";var voe="@namespace",Doe="@keyframes";var boe="@layer";var BL=Math.abs,Fm=String.fromCharCode;function y5(t){return t.trim()}function Lm(t,A,e){return t.replace(A,e)}function Moe(t,A,e){return t.indexOf(A,e)}function F2(t,A){return t.charCodeAt(A)|0}function L2(t,A,e){return t.slice(A,e)}function nc(t){return t.length}function Soe(t){return t.length}function oE(t,A){return A.push(t),t}var v5=1,aE=1,koe=0,Oc=0,pr=0,sE="";function D5(t,A,e,i,n,o,a,r){return{value:t,root:A,parent:e,type:i,props:n,children:o,line:v5,column:aE,length:a,return:"",siblings:r}}function _oe(){return pr}function xoe(){return pr=Oc>0?F2(sE,--Oc):0,aE--,pr===10&&(aE=1,v5--),pr}function Jc(){return pr=Oc2||rE(pr)>3?"":" "}function Loe(t,A){for(;--A&&Jc()&&!(pr<48||pr>102||pr>57&&pr<65||pr>70&&pr<97););return b5(t,Gm()+(A<6&&nd()==32&&Jc()==32))}function hL(t){for(;Jc();)switch(pr){case t:return Oc;case 34:case 39:t!==34&&t!==39&&hL(pr);break;case 40:t===41&&hL(t);break;case 92:Jc();break}return Oc}function Goe(t,A){for(;Jc()&&t+pr!==57;)if(t+pr===84&&nd()===47)break;return"/*"+b5(A,Oc-1)+"*"+Fm(t===47?t:Jc())}function Koe(t){for(;!rE(nd());)Jc();return b5(t,Oc)}function Ooe(t){return Noe(S5("",null,null,null,[""],t=Roe(t),0,[0],t))}function S5(t,A,e,i,n,o,a,r,s){for(var l=0,c=0,C=a,d=0,B=0,E=0,u=1,m=1,f=1,D=0,S="",k=n,b=o,x=i,F=S;m;)switch(E=D,D=Jc()){case 40:if(E!=108&&F2(F,C-1)==58){Moe(F+=Lm(M5(D),"&","&\f"),"&\f",BL(l?r[l-1]:0))!=-1&&(f=-1);break}case 34:case 39:case 91:F+=M5(D);break;case 9:case 10:case 13:case 32:F+=Foe(E);break;case 92:F+=Loe(Gm()-1,7);continue;case 47:switch(nd()){case 42:case 47:oE(AMe(Goe(Jc(),Gm()),A,e,s),s),(rE(E||1)==5||rE(nd()||1)==5)&&nc(F)&&L2(F,-1,void 0)!==" "&&(F+=" ");break;default:F+="/"}break;case 123*u:r[l++]=nc(F)*f;case 125*u:case 59:case 0:switch(D){case 0:case 125:m=0;case 59+c:f==-1&&(F=Lm(F,/\f/g,"")),B>0&&(nc(F)-C||u===0&&E===47)&&oE(B>32?Toe(F+";",i,e,C-1,s):Toe(Lm(F," ","")+";",i,e,C-2,s),s);break;case 59:F+=";";default:if(oE(x=Uoe(F,A,e,l,c,n,r,S,k=[],b=[],C,o),o),D===123)if(c===0)S5(F,A,x,x,k,o,C,r,b);else{switch(d){case 99:if(F2(F,3)===110)break;case 108:if(F2(F,2)===97)break;default:c=0;case 100:case 109:case 115:}c?S5(t,x,x,i&&oE(Uoe(t,x,x,0,0,n,r,S,n,k=[],C,b),b),n,b,C,r,i?k:b):S5(F,x,x,x,[""],b,0,r,b)}}l=c=B=0,u=f=1,S=F="",C=a;break;case 58:C=1+nc(F),B=E;default:if(u<1){if(D==123)--u;else if(D==125&&u++==0&&xoe()==125)continue}switch(F+=Fm(D),D*u){case 38:f=c>0?1:(F+="\f",-1);break;case 44:r[l++]=(nc(F)-1)*f,f=1;break;case 64:nd()===45&&(F+=M5(Jc())),d=nd(),c=C=nc(S=F+=Koe(Gm())),D++;break;case 45:E===45&&nc(F)==2&&(u=0)}}return o}function Uoe(t,A,e,i,n,o,a,r,s,l,c,C){for(var d=n-1,B=n===0?o:[""],E=Soe(B),u=0,m=0,f=0;u0?B[D]+" "+S:Lm(S,/&\f/g,B[D])))&&(s[f++]=k);return D5(t,A,e,n===0?f5:r,s,l,c,C)}function AMe(t,A,e,i){return D5(t,A,e,m5,Fm(_oe()),L2(t,2,-2),0,i)}function Toe(t,A,e,i,n){return D5(t,A,e,w5,L2(t,0,i),L2(t,i+1,-1),i,n)}function k5(t,A){for(var e="",i=0;i/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(t),"detector"),iMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-OGD5RHV2.js");return{id:joe,diagram:t}}),"loader"),nMe={id:joe,detector:tMe,loader:iMe},oMe=nMe,Voe="flowchart",aMe=EA((t,A)=>A?.flowchart?.defaultRenderer==="dagre-wrapper"||A?.flowchart?.defaultRenderer==="elk"?!1:/^\s*graph/.test(t),"detector"),rMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-VJTRHJAQ.js");return{id:Voe,diagram:t}}),"loader"),sMe={id:Voe,detector:aMe,loader:rMe},lMe=sMe,qoe="flowchart-v2",cMe=EA((t,A)=>A?.flowchart?.defaultRenderer==="dagre-d3"?!1:(A?.flowchart?.defaultRenderer==="elk"&&(A.layout="elk"),/^\s*graph/.test(t)&&A?.flowchart?.defaultRenderer==="dagre-wrapper"?!0:/^\s*flowchart/.test(t)),"detector"),gMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-VJTRHJAQ.js");return{id:qoe,diagram:t}}),"loader"),CMe={id:qoe,detector:cMe,loader:gMe},dMe=CMe,Zoe="er",IMe=EA(t=>/^\s*erDiagram/.test(t),"detector"),BMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-ZO3BTNJM.js");return{id:Zoe,diagram:t}}),"loader"),hMe={id:Zoe,detector:IMe,loader:BMe},uMe=hMe,Woe="gitGraph",EMe=EA(t=>/^\s*gitGraph/.test(t),"detector"),QMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-5YCXLBRD.js");return{id:Woe,diagram:t}}),"loader"),pMe={id:Woe,detector:EMe,loader:QMe},mMe=pMe,Xoe="gantt",fMe=EA(t=>/^\s*gantt/.test(t),"detector"),wMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-RNTHHQWK.js");return{id:Xoe,diagram:t}}),"loader"),yMe={id:Xoe,detector:fMe,loader:wMe},vMe=yMe,$oe="info",DMe=EA(t=>/^\s*info/.test(t),"detector"),bMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-UIM6OFCO.js");return{id:$oe,diagram:t}}),"loader"),MMe={id:$oe,detector:DMe,loader:bMe},eae="pie",SMe=EA(t=>/^\s*pie/.test(t),"detector"),kMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-VYRVJDOJ.js");return{id:eae,diagram:t}}),"loader"),_Me={id:eae,detector:SMe,loader:kMe},Aae="quadrantChart",xMe=EA(t=>/^\s*quadrantChart/.test(t),"detector"),RMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-6HSYUS5O.js");return{id:Aae,diagram:t}}),"loader"),NMe={id:Aae,detector:xMe,loader:RMe},FMe=NMe,tae="xychart",LMe=EA(t=>/^\s*xychart(-beta)?/.test(t),"detector"),GMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-JUE6OUNA.js");return{id:tae,diagram:t}}),"loader"),KMe={id:tae,detector:LMe,loader:GMe},UMe=KMe,iae="requirement",TMe=EA(t=>/^\s*requirement(Diagram)?/.test(t),"detector"),OMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-PVEI6UQ6.js");return{id:iae,diagram:t}}),"loader"),JMe={id:iae,detector:TMe,loader:OMe},zMe=JMe,nae="sequence",YMe=EA(t=>/^\s*sequenceDiagram/.test(t),"detector"),HMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-TULSIPRQ.js");return{id:nae,diagram:t}}),"loader"),PMe={id:nae,detector:YMe,loader:HMe},jMe=PMe,oae="class",VMe=EA((t,A)=>A?.class?.defaultRenderer==="dagre-wrapper"?!1:/^\s*classDiagram/.test(t),"detector"),qMe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-4WEIDHEA.js");return{id:oae,diagram:t}}),"loader"),ZMe={id:oae,detector:VMe,loader:qMe},WMe=ZMe,aae="classDiagram",XMe=EA((t,A)=>/^\s*classDiagram/.test(t)&&A?.class?.defaultRenderer==="dagre-wrapper"?!0:/^\s*classDiagram-v2/.test(t),"detector"),$Me=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-NOA45LO2.js");return{id:aae,diagram:t}}),"loader"),e9e={id:aae,detector:XMe,loader:$Me},A9e=e9e,rae="state",t9e=EA((t,A)=>A?.state?.defaultRenderer==="dagre-wrapper"?!1:/^\s*stateDiagram/.test(t),"detector"),i9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-ROA6Y7BN.js");return{id:rae,diagram:t}}),"loader"),n9e={id:rae,detector:t9e,loader:i9e},o9e=n9e,sae="stateDiagram",a9e=EA((t,A)=>!!(/^\s*stateDiagram-v2/.test(t)||/^\s*stateDiagram/.test(t)&&A?.state?.defaultRenderer==="dagre-wrapper"),"detector"),r9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-ZZBNOZU2.js");return{id:sae,diagram:t}}),"loader"),s9e={id:sae,detector:a9e,loader:r9e},l9e=s9e,lae="journey",c9e=EA(t=>/^\s*journey/.test(t),"detector"),g9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-KDOJMYWA.js");return{id:lae,diagram:t}}),"loader"),C9e={id:lae,detector:c9e,loader:g9e},d9e=C9e,I9e=EA((t,A,e)=>{Ar.debug(`rendering svg for syntax error +`);let i=Ez(A),n=i.append("g");i.attr("viewBox","0 0 2412 512"),hz(i,100,512,!0),n.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),n.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),n.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),n.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),n.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),n.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),n.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),n.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${e}`)},"draw"),cae={draw:I9e},B9e=cae,h9e={db:{},renderer:cae,parser:{parse:EA(()=>{},"parse")}},u9e=h9e,gae="flowchart-elk",E9e=EA((t,A={})=>/^\s*flowchart-elk/.test(t)||/^\s*(flowchart|graph)/.test(t)&&A?.flowchart?.defaultRenderer==="elk"?(A.layout="elk",!0):!1,"detector"),Q9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-VJTRHJAQ.js");return{id:gae,diagram:t}}),"loader"),p9e={id:gae,detector:E9e,loader:Q9e},m9e=p9e,Cae="timeline",f9e=EA(t=>/^\s*timeline/.test(t),"detector"),w9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-NRR3JWGL.js");return{id:Cae,diagram:t}}),"loader"),y9e={id:Cae,detector:f9e,loader:w9e},v9e=y9e,dae="mindmap",D9e=EA(t=>/^\s*mindmap/.test(t),"detector"),b9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-VRRZ3RU5.js");return{id:dae,diagram:t}}),"loader"),M9e={id:dae,detector:D9e,loader:b9e},S9e=M9e,Iae="kanban",k9e=EA(t=>/^\s*kanban/.test(t),"detector"),_9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-LVMBETIL.js");return{id:Iae,diagram:t}}),"loader"),x9e={id:Iae,detector:k9e,loader:_9e},R9e=x9e,Bae="sankey",N9e=EA(t=>/^\s*sankey(-beta)?/.test(t),"detector"),F9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-R7A5HXMQ.js");return{id:Bae,diagram:t}}),"loader"),L9e={id:Bae,detector:N9e,loader:F9e},G9e=L9e,hae="packet",K9e=EA(t=>/^\s*packet(-beta)?/.test(t),"detector"),U9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-OYPVNJ6H.js");return{id:hae,diagram:t}}),"loader"),T9e={id:hae,detector:K9e,loader:U9e},uae="radar",O9e=EA(t=>/^\s*radar-beta/.test(t),"detector"),J9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-47TAWZZ5.js");return{id:uae,diagram:t}}),"loader"),z9e={id:uae,detector:O9e,loader:J9e},Eae="block",Y9e=EA(t=>/^\s*block(-beta)?/.test(t),"detector"),H9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-WEKWG7SS.js");return{id:Eae,diagram:t}}),"loader"),P9e={id:Eae,detector:Y9e,loader:H9e},j9e=P9e,Qae="treeView",V9e=EA(t=>/^\s*treeView-beta/.test(t),"detector"),q9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-DLZFLWPV.js");return{id:Qae,diagram:t}}),"loader"),Z9e={id:Qae,detector:V9e,loader:q9e},W9e=Z9e,pae="architecture",X9e=EA(t=>/^\s*architecture/.test(t),"detector"),$9e=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-2UTQOSKI.js");return{id:pae,diagram:t}}),"loader"),eSe={id:pae,detector:X9e,loader:$9e},ASe=eSe,mae="ishikawa",tSe=EA(t=>/^\s*ishikawa(-beta)?\b/i.test(t),"detector"),iSe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-DS3WV6GO.js");return{id:mae,diagram:t}}),"loader"),nSe={id:mae,detector:tSe,loader:iSe},fae="venn",oSe=EA(t=>/^\s*venn-beta/.test(t),"detector"),aSe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-YL63DAMY.js");return{id:fae,diagram:t}}),"loader"),rSe={id:fae,detector:oSe,loader:aSe},sSe=rSe,wae="treemap",lSe=EA(t=>/^\s*treemap/.test(t),"detector"),cSe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-3M7KSSAK.js");return{id:wae,diagram:t}}),"loader"),gSe={id:wae,detector:lSe,loader:cSe},yae="wardley-beta",CSe=EA(t=>/^\s*wardley-beta/i.test(t),"detector"),dSe=EA(()=>nA(null,null,function*(){let{diagram:t}=yield import("./chunk-3BYZYP23.js");return{id:yae,diagram:t}}),"loader"),ISe={id:yae,detector:CSe,loader:dSe},BSe=ISe,zoe=!1,x5=EA(()=>{zoe||(zoe=!0,sQ("error",u9e,t=>t.toLowerCase().trim()==="error"),sQ("---",{db:{clear:EA(()=>{},"clear")},styles:{},renderer:{draw:EA(()=>{},"draw")},parser:{parse:EA(()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:EA(()=>null,"init")},t=>t.toLowerCase().trimStart().startsWith("---")),Zf(m9e,S9e,ASe),Zf(oMe,R9e,A9e,WMe,uMe,vMe,MMe,_Me,zMe,jMe,dMe,lMe,v9e,mMe,l9e,o9e,d9e,FMe,G9e,T9e,UMe,j9e,W9e,z9e,nSe,gSe,sSe,BSe))},"addDiagrams"),hSe=EA(()=>nA(null,null,function*(){Ar.debug("Loading registered diagrams");let A=(yield Promise.allSettled(Object.entries(qf).map(o=>nA(null,[o],function*([e,{detector:i,loader:n}]){if(n)try{Xf(e)}catch(a){try{let{diagram:r,id:s}=yield n();sQ(s,r,i)}catch(r){throw Ar.error(`Failed to load external diagram with key ${e}. Removing from detectors.`),delete qf[e],r}}})))).filter(e=>e.status==="rejected");if(A.length>0){Ar.error(`Failed to load ${A.length} external diagrams`);for(let e of A)Ar.error(e);throw new Error(`Failed to load ${A.length} external diagrams`)}}),"loadRegisteredDiagrams"),uSe="graphics-document document";function vae(t,A){t.attr("role",uSe),A!==""&&t.attr("aria-roledescription",A)}EA(vae,"setA11yDiagramInfo");function Dae(t,A,e,i){if(t.insert!==void 0){if(e){let n=`chart-desc-${i}`;t.attr("aria-describedby",n),t.insert("desc",":first-child").attr("id",n).text(e)}if(A){let n=`chart-title-${i}`;t.attr("aria-labelledby",n),t.insert("title",":first-child").attr("id",n).text(A)}}}EA(Dae,"addSVGa11yTitleDescription");var EL=class bae{constructor(A,e,i,n,o){this.type=A,this.text=e,this.db=i,this.parser=n,this.renderer=o}static{EA(this,"Diagram")}static fromText(i){return nA(this,arguments,function*(A,e={}){let n=gB(),o=AM(A,n);A=wz(A)+` +`;try{Xf(o)}catch(c){let C=rz(o);if(!C)throw new az(`Diagram ${o} not found.`);let{id:d,diagram:B}=yield C();sQ(d,B)}let{db:a,parser:r,renderer:s,init:l}=Xf(o);return r.parser&&(r.parser.yy=a),a.clear?.(),l?.(n),e.title&&a.setDiagramTitle?.(e.title),yield r.parse(A),new bae(o,A,a,r,s)})}render(A,e){return nA(this,null,function*(){yield this.renderer.draw(this.text,A,e,this)})}getParser(){return this.parser}getType(){return this.type}},Yoe=[],ESe=EA(()=>{Yoe.forEach(t=>{t()}),Yoe=[]},"attachFunctions"),QSe=EA(t=>t.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");function Mae(t){let A=t.match(oz);if(!A)return{text:t,metadata:{}};let e=pz(A[1],{schema:Qz})??{};e=typeof e=="object"&&!Array.isArray(e)?e:{};let i={};return e.displayMode&&(i.displayMode=e.displayMode.toString()),e.title&&(i.title=e.title.toString()),e.config&&(i.config=e.config),{text:t.slice(A[0].length),metadata:i}}EA(Mae,"extractFrontMatter");var pSe=EA(t=>t.replace(/\r\n?/g,` +`).replace(/<(\w+)([^>]*)>/g,(A,e,i)=>"<"+e+i.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),mSe=EA(t=>{let{text:A,metadata:e}=Mae(t),{displayMode:i,title:n,config:o={}}=e;return i&&(o.gantt||(o.gantt={}),o.gantt.displayMode=i),{title:n,config:o,text:A}},"processFrontmatter"),fSe=EA(t=>{let A=CB.detectInit(t)??{},e=CB.detectDirective(t,"wrap");return Array.isArray(e)?A.wrap=e.some(({type:i})=>i==="wrap"):e?.type==="wrap"&&(A.wrap=!0),{text:mz(t),directive:A}},"processDirectives");function pL(t){let A=pSe(t),e=mSe(A),i=fSe(e.text),n=fz(e.config,i.directive);return t=QSe(i.text),{code:t,title:e.title,config:n}}EA(pL,"preprocessDiagram");function Sae(t){let A=new TextEncoder().encode(t),e=Array.from(A,i=>String.fromCodePoint(i)).join("");return btoa(e)}EA(Sae,"toBase64");var wSe=5e4,ySe="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",vSe="sandbox",DSe="loose",bSe="http://www.w3.org/2000/svg",MSe="http://www.w3.org/1999/xlink",SSe="http://www.w3.org/1999/xhtml",kSe="100%",_Se="100%",xSe="border:0;margin:0;",RSe="margin:0",NSe="allow-top-navigation-by-user-activation allow-popups",FSe='The "iframe" tag is not supported by your browser.',LSe=["foreignobject"],GSe=["dominant-baseline"];function mL(t){let A=pL(t);return rQ(),Iz(A.config??{}),A}EA(mL,"processAndSetConfigs");function kae(t,A){return nA(this,null,function*(){x5();try{let{code:e,config:i}=mL(t);return{diagramType:(yield xae(e)).type,config:i}}catch(e){if(A?.suppressErrors)return!1;throw e}})}EA(kae,"parse");var Hoe=EA((t,A,e=[])=>` +.${t} ${A} { ${e.join(" !important; ")} !important; }`,"cssImportantStyles"),KSe=EA((t,A=new Map)=>{let e="";if(t.themeCSS!==void 0&&(e+=` +${t.themeCSS}`),t.fontFamily!==void 0&&(e+=` +:root { --mermaid-font-family: ${t.fontFamily}}`),t.altFontFamily!==void 0&&(e+=` +:root { --mermaid-alt-font-family: ${t.altFontFamily}}`),A instanceof Map){let a=Bz(t)?["> *","span"]:["rect","polygon","ellipse","circle","path"];A.forEach(r=>{tn(r.styles)||a.forEach(s=>{e+=Hoe(r.id,s,r.styles)}),tn(r.textStyles)||(e+=Hoe(r.id,"tspan",(r?.textStyles||[]).map(s=>s.replace("color","fill"))))})}return e},"createCssStyles"),USe=EA((t,A,e,i)=>{let n=KSe(t,e),o=uz(A,n,Ye(Y({},t.themeVariables),{theme:t.theme,look:t.look}),i);return k5(Ooe(`${i}{${o}}`),Joe)},"createUserStyles"),TSe=EA((t="",A,e)=>{let i=t;return!e&&!A&&(i=i.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#')),i=yz(i),i=i.replace(/
        /g,"
        "),i},"cleanUpSvgCode"),OSe=EA((t="",A)=>{let e=A?.viewBox?.baseVal?.height?A.viewBox.baseVal.height+"px":_Se,i=Sae(`${t}`);return``},"putIntoIFrame"),Poe=EA((t,A,e,i,n)=>{let o=t.append("div");o.attr("id",e),i&&o.attr("style",i);let a=o.append("svg").attr("id",A).attr("width","100%").attr("xmlns",bSe);return n&&a.attr("xmlns:xlink",n),a.append("g"),t},"appendDivSvgG");function QL(t,A){return t.append("iframe").attr("id",A).attr("style","width: 100%; height: 100%;").attr("sandbox","")}EA(QL,"sandboxedIframe");var JSe=EA((t,A,e,i)=>{t.getElementById(A)?.remove(),t.getElementById(e)?.remove(),t.getElementById(i)?.remove()},"removeExistingElements"),zSe=EA(function(t,A,e){return nA(this,null,function*(){x5();let i=mL(A);A=i.code;let n=gB();Ar.debug(n),A.length>(n?.maxTextSize??wSe)&&(A=ySe);let o="#"+t,a="i"+t,r="#"+a,s="d"+t,l="#"+s,c=EA(()=>{let Ce=Al(d?r:l).node();Ce&&"remove"in Ce&&Ce.remove()},"removeTempElements"),C=Al("body"),d=n.securityLevel===vSe,B=n.securityLevel===DSe,E=n.fontFamily;if(e!==void 0){if(e&&(e.innerHTML=""),d){let W=QL(Al(e),a);C=Al(W.nodes()[0].contentDocument.body),C.node().style.margin=0}else C=Al(e);Poe(C,t,s,`font-family: ${E}`,MSe)}else{if(JSe(document,t,s,a),d){let W=QL(Al("body"),a);C=Al(W.nodes()[0].contentDocument.body),C.node().style.margin=0}else C=Al("body");Poe(C,t,s)}let u,m;try{u=yield EL.fromText(A,{title:i.title})}catch(W){if(n.suppressErrorRendering)throw c(),W;u=yield EL.fromText("error"),m=W}let f=C.select(l).node(),D=u.type,S=f.firstChild,k=S.firstChild,b=u.renderer.getClasses?.(A,u),x=USe(n,D,b,o),F=document.createElement("style");F.innerHTML=x,S.insertBefore(F,k);try{yield u.renderer.draw(A,t,"11.14.0",u)}catch(W){throw n.suppressErrorRendering?c():B9e.draw(A,t,"11.14.0"),W}let P=C.select(`${l} svg`),j=u.db.getAccTitle?.(),X=u.db.getAccDescription?.();Rae(D,P,j,X),C.select(`[id="${t}"]`).selectAll("foreignobject > *").attr("xmlns",SSe);let Ae=C.select(l).node().innerHTML;if(Ar.debug("config.arrowMarkerAbsolute",n.arrowMarkerAbsolute),Ae=TSe(Ae,d,lz(n.arrowMarkerAbsolute)),d){let W=C.select(l+" svg").node();Ae=OSe(Ae,W)}else B||(Ae=nz.sanitize(Ae,{ADD_TAGS:LSe,ADD_ATTR:GSe,HTML_INTEGRATION_POINTS:{foreignobject:!0}}));if(ESe(),m)throw m;return c(),{diagramType:D,svg:Ae,bindFunctions:u.db.bindFunctions}})},"render");function _ae(t={}){let A=sz({},t);A?.fontFamily&&!A.themeVariables?.fontFamily&&(A.themeVariables||(A.themeVariables={}),A.themeVariables.fontFamily=A.fontFamily),gz(A),A?.theme&&A.theme in Wf?A.themeVariables=Wf[A.theme].getThemeVariables(A.themeVariables):A&&(A.themeVariables=Wf.default.getThemeVariables(A.themeVariables));let e=typeof A=="object"?cz(A):iM();eM(e.logLevel),x5()}EA(_ae,"initialize");var xae=EA((t,A={})=>{let{code:e}=pL(t);return EL.fromText(e,A)},"getDiagramFromText");function Rae(t,A,e,i){vae(A,t),Dae(A,e,i,A.attr("id"))}EA(Rae,"addA11yInfo");var O1=Object.freeze({render:zSe,parse:kae,getDiagramFromText:xae,initialize:_ae,getConfig:gB,setConfig:dz,getSiteConfig:iM,updateSiteConfig:Cz,reset:EA(()=>{rQ()},"reset"),globalReset:EA(()=>{rQ(tM)},"globalReset"),defaultConfig:tM});eM(gB().logLevel);rQ(gB());var YSe=EA((t,A,e)=>{Ar.warn(t),nM(t)?(e&&e(t.str,t.hash),A.push(Ye(Y({},t),{message:t.str,error:t}))):(e&&e(t),t instanceof Error&&A.push({str:t.message,message:t.message,hash:t.name,error:t}))},"handleError"),Nae=EA(function(){return nA(this,arguments,function*(t={querySelector:".mermaid"}){try{yield HSe(t)}catch(A){if(nM(A)&&Ar.error(A.str),od.parseError&&od.parseError(A),!t.suppressErrors)throw Ar.error("Use the suppressErrors option to suppress these errors"),A}})},"run"),HSe=EA(function(){return nA(this,arguments,function*({postRenderCallback:t,querySelector:A,nodes:e}={querySelector:".mermaid"}){let i=O1.getConfig();Ar.debug(`${t?"":"No "}Callback function found`);let n;if(e)n=e;else if(A)n=document.querySelectorAll(A);else throw new Error("Nodes and querySelector are both undefined");Ar.debug(`Found ${n.length} diagrams`),i?.startOnLoad!==void 0&&(Ar.debug("Start On Load: "+i?.startOnLoad),O1.updateSiteConfig({startOnLoad:i?.startOnLoad}));let o=new CB.InitIDGenerator(i.deterministicIds,i.deterministicIDSeed),a,r=[];for(let s of Array.from(n)){if(Ar.info("Rendering diagram: "+s.id),s.getAttribute("data-processed"))continue;s.setAttribute("data-processed","true");let l=`mermaid-${o.next()}`;a=s.innerHTML,a=vz(CB.entityDecode(a)).trim().replace(//gi,"
        ");let c=CB.detectInit(a);c&&Ar.debug("Detected early reinit: ",c);try{let{svg:C,bindFunctions:d}=yield Kae(l,a,s);s.innerHTML=C,t&&(yield t(l)),d&&d(s)}catch(C){YSe(C,r,od.parseError)}}if(r.length>0)throw r[0]})},"runThrowsErrors"),Fae=EA(function(t){O1.initialize(t)},"initialize"),PSe=EA(function(t,A,e){return nA(this,null,function*(){Ar.warn("mermaid.init is deprecated. Please use run instead."),t&&Fae(t);let i={postRenderCallback:e,querySelector:".mermaid"};typeof A=="string"?i.querySelector=A:A&&(A instanceof HTMLElement?i.nodes=[A]:i.nodes=A),yield Nae(i)})},"init"),jSe=EA((e,...i)=>nA(null,[e,...i],function*(t,{lazyLoad:A=!0}={}){x5(),Zf(...t),A===!1&&(yield hSe())}),"registerExternalDiagrams"),Lae=EA(function(){if(od.startOnLoad){let{startOnLoad:t}=O1.getConfig();t&&od.run().catch(A=>Ar.error("Mermaid failed to initialize",A))}},"contentLoaded");typeof document<"u"&&window.addEventListener("load",Lae,!1);var VSe=EA(function(t){od.parseError=t},"setParseErrorHandler"),_5=[],uL=!1,Gae=EA(()=>nA(null,null,function*(){if(!uL){for(uL=!0;_5.length>0;){let t=_5.shift();if(t)try{yield t()}catch(A){Ar.error("Error executing queue",A)}}uL=!1}}),"executeQueue"),qSe=EA((t,A)=>nA(null,null,function*(){return new Promise((e,i)=>{let n=EA(()=>new Promise((o,a)=>{O1.parse(t,A).then(r=>{o(r),e(r)},r=>{Ar.error("Error parsing",r),od.parseError?.(r),a(r),i(r)})}),"performCall");_5.push(n),Gae().catch(i)})}),"parse"),Kae=EA((t,A,e)=>new Promise((i,n)=>{let o=EA(()=>new Promise((a,r)=>{O1.render(t,A,e).then(s=>{a(s),i(s)},s=>{Ar.error("Error parsing",s),od.parseError?.(s),r(s),n(s)})}),"performCall");_5.push(o),Gae().catch(n)}),"render"),ZSe=EA(()=>Object.keys(qf).map(t=>({id:t})),"getRegisteredDiagramsMetadata"),od={startOnLoad:!0,mermaidAPI:O1,parse:qSe,render:Kae,init:PSe,run:Nae,registerExternalDiagrams:jSe,registerLayoutLoaders:bz,initialize:Fae,parseError:void 0,contentLoaded:Lae,setParseErrorHandler:VSe,detectType:AM,registerIconPacks:Dz,getRegisteredDiagramsMetadata:ZSe},fL=od;var GhA=Sf(Uae());Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+(/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source)+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/});Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp(/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)/.source+/\//.source+"(?:"+/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}/.source+"|"+/(?:\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.|\[(?:[^[\]\\\r\n]|\\.)*\])*\])*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}v[dgimyus]{0,7}/.source+")"+/(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/.source),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/});Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}});Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}});Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript"));Prism.languages.js=Prism.languages.javascript;(function(t){t.languages.typescript=t.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),t.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete t.languages.typescript.parameter,delete t.languages.typescript["literal-property"];var A=t.languages.extend("typescript",{});delete A["class-name"],t.languages.typescript["class-name"].inside=A,t.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:A}}}}),t.languages.ts=t.languages.typescript})(Prism);(function(t){var A=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;t.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:"+/[^;{\s"']|\s+(?!\s)/.source+"|"+A.source+")*?"+/(?:;|(?=\s*\{))/.source),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+A.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+A.source+"$"),alias:"url"}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+A.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:A,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},t.languages.css.atrule.inside.rest=t.languages.css;var e=t.languages.markup;e&&(e.tag.addInlined("style","css"),e.tag.addAttribute("style","css"))})(Prism);Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}};Prism.languages.webmanifest=Prism.languages.json;(function(t){var A="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",e={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},i={bash:e,environment:{pattern:RegExp("\\$"+A),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+A),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};t.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+A),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:i},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:e}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:i},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:i.entity}}],environment:{pattern:RegExp("\\$?"+A),alias:"constant"},variable:i.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},e.inside=t.languages.bash;for(var n=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=i.variable[1].inside,a=0;a]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/};Prism.languages.python["string-interpolation"].inside.interpolation.inside.rest=Prism.languages.python;Prism.languages.py=Prism.languages.python;(function(t){var A=/[*&][^\s[\]{},]+/,e=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,i="(?:"+e.source+"(?:[ ]+"+A.source+")?|"+A.source+"(?:[ ]+"+e.source+")?)",n=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source}),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function a(r,s){s=(s||"").replace(/m/g,"")+"m";var l=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,function(){return i}).replace(/<>/g,function(){return r});return RegExp(l,s)}t.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,function(){return i})),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,function(){return i}).replace(/<>/g,function(){return"(?:"+n+"|"+o+")"})),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:a(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:a(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:a(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:a(o),lookbehind:!0,greedy:!0},number:{pattern:a(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:e,important:A,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},t.languages.yml=t.languages.yaml})(Prism);var XSe=t=>({color:t}),G2=class t{constructor(A,e){this.elementRef=A;this.chatPanel=e;Ln(()=>{let i=this.text();setTimeout(()=>{this.renderMermaid(),this.addCopyButtons()},100)})}text=MA("");thought=MA(!1);isReadme=MA(!1);ngOnInit(){fL.initialize({startOnLoad:!1,flowchart:{useMaxWidth:!0,htmlLabels:!0,curve:"basis"},theme:"neutral",themeVariables:{fontSize:"12px",primaryColor:"#e8f0fe",primaryTextColor:"#1a73e8",primaryBorderColor:"#1a73e8",lineColor:"#5f6368",secondaryColor:"#f1f3f4",tertiaryColor:"#ffffff"}})}renderMermaid(){let e=this.elementRef.nativeElement.querySelectorAll("pre code.language-mermaid"),i=!1;e.forEach(n=>{let o=n.parentElement;if(o){let a=n.textContent||"",r=document.createElement("div");r.classList.add("mermaid"),r.textContent=a.trim();let s=document.createElement("div");s.classList.add("mermaid-container"),s.appendChild(r),o.parentNode?.replaceChild(s,o),i=!0}}),i&&fL.run()}addCopyButtons(){let A=this.elementRef.nativeElement;A.querySelectorAll("pre").forEach(o=>{o.querySelector(".copy-code-button")||o.closest(".mermaid-container")||(o.style.position="relative",this.createCopyButton(o,o.querySelector("code")||o))});let i="";A.querySelectorAll("*").forEach(o=>{if(/^H[1-6]$/.test(o.tagName))i=o.textContent||"";else if(o.tagName==="CODE"){let a=o;if(a.closest("pre")||a.querySelector(".copy-code-button")||a.closest(".mermaid-container"))return;this.isReadme()&&i.toLowerCase().includes("sample inputs")&&(a.style.position="relative",this.createCopyButton(a,a),a.classList.add("runnable"),this.createRunButton(a,a))}})}createCopyButton(A,e){let i=document.createElement("button");i.className="copy-code-button",i.setAttribute("aria-label","Copy code"),i.type="button";let n=` + + + + `,o=` + + + + `;i.innerHTML=n,i.addEventListener("click",a=>{a.stopPropagation();let r=(e.textContent||"").trim();navigator.clipboard.writeText(r).then(()=>{i.innerHTML=o,i.classList.add("copied"),setTimeout(()=>{i.innerHTML=n,i.classList.remove("copied")},2e3)}).catch(s=>{console.error("Failed to copy text: ",s)})}),A.appendChild(i)}createRunButton(A,e){if(A.querySelector(".run-code-button"))return;let i=document.createElement("button");i.className="run-code-button",i.setAttribute("aria-label","Run sample input"),i.type="button";let n=` + + + + `;i.innerHTML=n,i.addEventListener("click",o=>{o.stopPropagation();let a=(e.textContent||"").trim();this.chatPanel&&(this.chatPanel.userInput=a,this.chatPanel.userInputChange.emit(a),setTimeout(()=>{this.chatPanel.sendMessage.emit(new Event("submit"))},50))}),A.appendChild(i)}static \u0275fac=function(e){return new(e||t)(dt(dA),dt(K2,8))};static \u0275cmp=De({type:t,selectors:[["app-markdown"]],inputs:{text:[1,"text"],thought:[1,"thought"],isReadme:[1,"isReadme"]},features:[yt([YQ()])],decls:1,vars:4,consts:[[3,"data","ngStyle"]],template:function(e,i){e&1&&le(0,"markdown",0),e&2&&H("data",i.text())("ngStyle",sc(2,XSe,i.thought()?"#9aa0a6":"inherit"))},dependencies:[Ci,lB,pP,QP],styles:[".mermaid-container[_ngcontent-%COMP%]{display:flex;justify-content:center;margin:16px 0}.mermaid[_ngcontent-%COMP%]{font-size:12px!important}.mermaid[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{max-width:100%;height:auto} .copy-code-button{position:absolute;top:4px;right:4px;z-index:10;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:4px;background-color:var(--mat-sys-surface-container-high)!important;color:var(--mat-sys-on-surface-variant);border:none;cursor:pointer;opacity:0;transition:opacity .2s ease-in-out,background-color .2s ease-in-out,color .2s ease-in-out} pre:hover .copy-code-button{opacity:1} .copy-code-button:hover{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important} .copy-code-button:active{transform:scale(.95)} .copy-code-button.copied{color:#81c784!important;background-color:#4caf5026!important;opacity:1} pre:not(:hover) .copy-code-button.copied, code:not(pre code):not(:hover) .copy-code-button.copied{opacity:0!important;transition:none!important} .copy-code-button svg{width:16px;height:16px} .run-code-button{position:absolute;top:4px;right:4px;z-index:10;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:4px;background-color:var(--mat-sys-surface-container-high)!important;color:var(--mat-sys-on-surface-variant);border:none;cursor:pointer;opacity:0;transition:opacity .2s ease-in-out,background-color .2s ease-in-out,color .2s ease-in-out} .run-code-button:hover{background-color:var(--mat-sys-primary-container)!important;color:var(--mat-sys-on-primary-container)!important} .run-code-button:active{transform:scale(.95)} .run-code-button svg{width:16px;height:16px} code:not(pre code){display:inline-block;position:relative;padding:0 4px;background-color:var(--mat-sys-surface-container-high);vertical-align:top} code:not(pre code).runnable:hover{padding-right:68px!important} code:not(pre code) .copy-code-button{position:absolute;top:50%;right:2px;transform:translateY(-50%);width:28px;height:28px;opacity:0;transition:none!important} code:not(pre code):hover .copy-code-button{opacity:1} code:not(pre code).runnable:hover .copy-code-button{right:32px!important} code:not(pre code) .copy-code-button:active{transform:translateY(-50%)!important} code:not(pre code) .run-code-button{position:absolute;top:50%;right:2px;transform:translateY(-50%);width:28px;height:28px;opacity:0;transition:none!important} code:not(pre code).runnable:hover .run-code-button{opacity:1} code:not(pre code) .run-code-button:active{transform:translateY(-50%)!important}"]})};function eke(t,A){if(t&1){let e=ae();I(0,"span",6),U("click",function(n){L(e);let o=p();return G(o.toggleExpand(n))}),h()}if(t&2){let e=p();_e("expanded",e.isExpanded)}}function Ake(t,A){if(t&1){let e=ae();I(0,"button",11),U("click",function(n){L(e);let o=p(2);return G(o.openMarkdownDialog(o.key,o.json,n))}),v(1," MARKDOWN "),h()}}function tke(t,A){if(t&1&&(I(0,"span",7),v(1),h(),I(2,"span",8),v(3,":"),h(),T(4,Ake,2,0,"button",9),I(5,"span",10),v(6,"\xA0"),h()),t&2){let e=p();Q(),ne(e.key),Q(3),O(e.showMarkdown&&e.hasLineBreaks(e.json)?4:-1)}}function ike(t,A){t&1&&(I(0,"span",14),v(1,"..."),h(),I(2,"span",13),v(3,"]"),h())}function nke(t,A){if(t&1&&(I(0,"span",13),v(1,"["),h(),T(2,ike,4,0)),t&2){let e=p(2);Q(2),O(e.isExpanded?-1:2)}}function oke(t,A){t&1&&(I(0,"span",14),v(1,"..."),h())}function ake(t,A){if(t&1&&T(0,oke,2,0,"span",14),t&2){let e=p(2);O(e.isExpanded?-1:0)}}function rke(t,A){if(t&1){let e=ae();I(0,"span",12),U("click",function(n){L(e);let o=p();return G(o.toggleExpand(n))}),T(1,nke,3,1)(2,ake,1,1),h()}if(t&2){let e=p();Q(),O(e.isArray(e.json)?1:2)}}function ske(t,A){if(t&1&&(I(0,"span",15),v(1),h()),t&2){let e=p(2);Q(),pA('"',e.json,'"')}}function lke(t,A){if(t&1&&(I(0,"span",16),v(1),h()),t&2){let e=p(2);Q(),ne(e.json)}}function cke(t,A){if(t&1&&(I(0,"span",17),v(1),h()),t&2){let e=p(2);Q(),ne(e.json)}}function gke(t,A){t&1&&(I(0,"span",18),v(1,"null"),h())}function Cke(t,A){t&1&&(I(0,"span",19),v(1,"undefined"),h())}function dke(t,A){if(t&1&&(I(0,"span",4),T(1,ske,2,1,"span",15)(2,lke,2,1,"span",16)(3,cke,2,1,"span",17)(4,gke,2,0,"span",18)(5,Cke,2,0,"span",19),h()),t&2){let e=p();H("ngClass",e.getTypeClass(e.json)),Q(),O(e.isString(e.json)?1:e.isNumber(e.json)?2:e.isBoolean(e.json)?3:e.isNull(e.json)?4:e.isUndefined(e.json)?5:-1)}}function Ike(t,A){if(t&1&&le(0,"app-custom-json-viewer",22),t&2){let e=A.$implicit,i=A.$index,n=p(3);H("json",e)("key",i)("depth",n.depth+1)("expanded",n.expanded)("showMarkdown",n.showMarkdown)}}function Bke(t,A){if(t&1&&RA(0,Ike,1,5,"app-custom-json-viewer",22,ja),t&2){let e=p(2);NA(e.json)}}function hke(t,A){if(t&1&&le(0,"app-custom-json-viewer",22),t&2){let e=A.$implicit,i=p(3);H("json",i.json[e])("key",e)("depth",i.depth+1)("expanded",i.expanded)("showMarkdown",i.showMarkdown)}}function uke(t,A){if(t&1&&RA(0,hke,1,5,"app-custom-json-viewer",22,ri),t&2){let e=p(2);NA(e.getKeys(e.json))}}function Eke(t,A){t&1&&(I(0,"div",21),v(1,"]"),h())}function Qke(t,A){if(t&1&&(I(0,"div",20),T(1,Bke,2,0)(2,uke,2,0),T(3,Eke,2,0,"div",21),h()),t&2){let e=p();_e("root-children",e.depth===0),Q(),O(e.isArray(e.json)?1:2),Q(2),O(e.isArray(e.json)?3:-1)}}var wL=class t{dialogRef=w(Pn);data=w(Do);close(){this.dialogRef.close()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-markdown-preview-dialog"]],decls:10,vars:2,consts:[[1,"md-dialog-header"],["mat-dialog-title","",1,"md-title"],[1,"title-icon"],["mat-icon-button","",1,"close-button",3,"click"],[1,"md-dialog-content"],[3,"text"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"h2",1)(2,"mat-icon",2),v(3,"article"),h(),v(4),h(),I(5,"button",3),U("click",function(){return i.close()}),I(6,"mat-icon"),v(7,"close"),h()()(),I(8,"mat-dialog-content",4),le(9,"app-markdown",5),h()),e&2&&(Q(4),pA(" Markdown Preview - ",i.data.key," "),Q(5),H("text",i.data.value))},dependencies:[Ci,Js,ea,pa,Vt,Di,G2],styles:[".md-dialog-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:16px 24px 8px;border-bottom:1px solid var(--mat-sys-outline-variant)}.md-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;margin:0;font-size:1.25rem;font-weight:500;color:var(--mat-sys-on-surface)}.title-icon[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.close-button[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant)}.md-dialog-content[_ngcontent-%COMP%]{padding:24px;min-width:500px;max-width:80vw;max-height:70vh;overflow-y:auto;background-color:var(--mat-sys-surface-container-high);color:var(--mat-sys-on-surface)}"],changeDetection:0})},_l=class t{json;key;expanded=!0;depth=0;showMarkdown=!1;dialog=w(nr);isExpanded=!0;ngOnInit(){this.isExpanded=this.expanded}isExpandable(){return this.json!==null&&typeof this.json=="object"}isObject(A){return A!==null&&typeof A=="object"&&!Array.isArray(A)}isArray(A){return Array.isArray(A)}isString(A){return typeof A=="string"}hasLineBreaks(A){return typeof A=="string"&&A.includes(` +`)}isNumber(A){return typeof A=="number"}isBoolean(A){return typeof A=="boolean"}isNull(A){return A===null}isUndefined(A){return A===void 0}getKeys(A){return A?Object.keys(A):[]}getTypeClass(A){return this.isString(A)?"segment-type-string":this.isNumber(A)?"segment-type-number":this.isBoolean(A)?"segment-type-boolean":this.isNull(A)?"segment-type-null":"segment-type-undefined"}toggleExpand(A){A.stopPropagation(),this.isExpanded=!this.isExpanded}openMarkdownDialog(A,e,i){i.stopPropagation(),this.dialog.open(wL,{data:{key:A.toString(),value:e},width:"800px",maxWidth:"90vw",panelClass:"custom-md-dialog"})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-custom-json-viewer"]],inputs:{json:"json",key:"key",expanded:"expanded",depth:"depth",showMarkdown:"showMarkdown"},decls:7,vars:6,consts:[[1,"segment"],[1,"segment-header"],[1,"segment-toggler",3,"expanded"],[1,"segment-value"],[1,"segment-value",3,"ngClass"],[1,"segment-children",3,"root-children"],[1,"segment-toggler",3,"click"],[1,"segment-key"],[1,"segment-separator"],["matTooltip","View in Markdown",1,"md-btn"],[1,"segment-space"],["matTooltip","View in Markdown",1,"md-btn",3,"click"],[1,"segment-value",3,"click"],[1,"bracket"],[1,"collapsed-summary"],[1,"value-string"],[1,"value-number"],[1,"value-boolean"],[1,"value-null"],[1,"value-undefined"],[1,"segment-children"],[1,"bracket","close-bracket"],[3,"json","key","depth","expanded","showMarkdown"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"div",1),T(2,eke,1,2,"span",2),T(3,tke,7,2),T(4,rke,3,1,"span",3)(5,dke,6,2,"span",4),h(),T(6,Qke,4,4,"div",5),h()),e&2&&(_e("segment-expandable",i.isExpandable()),Q(2),O(i.isExpandable()&&i.depth>0?2:-1),Q(),O(i.key!==void 0?3:-1),Q(),O(i.isExpandable()?4:5),Q(2),O(i.isExpandable()&&i.isExpanded?6:-1))},dependencies:[t,Ci,lc,ln,Js],styles:["[_nghost-%COMP%]{display:block;font-family:var(--ngx-json-font-family, monospace);font-size:var(--ngx-json-font-size, 13px);line-height:1.4}.segment[_ngcontent-%COMP%]{margin:2px 0;display:block}.segment-header[_ngcontent-%COMP%]{display:flex;align-items:flex-start;flex-wrap:wrap}.segment-toggler[_ngcontent-%COMP%]{cursor:pointer;display:inline-block;width:0;height:0;border-style:solid;border-width:5px 0 5px 6px;border-color:transparent transparent transparent var(--mat-sys-outline);margin-right:8px;margin-top:4px;transition:transform .15s ease}.segment-toggler.expanded[_ngcontent-%COMP%]{transform:rotate(90deg)}.segment-toggler[_ngcontent-%COMP%]:hover{border-left-color:var(--mat-sys-primary)}.segment-key[_ngcontent-%COMP%]{color:var(--mat-sys-primary);font-weight:400;cursor:pointer}.segment-separator[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.segment-space[_ngcontent-%COMP%]{display:inline-block;width:4px;-webkit-user-select:none;user-select:none}.segment-value[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.bracket[_ngcontent-%COMP%]{color:var(--mat-sys-outline);font-weight:400}.collapsed-summary[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:11px;margin:0 4px}.segment-children[_ngcontent-%COMP%]{margin-left:12px;padding-left:4px}.segment-children.root-children[_ngcontent-%COMP%]{margin-left:0;padding-left:0}.close-bracket[_ngcontent-%COMP%]{display:block}.md-btn[_ngcontent-%COMP%]{border:none;outline:none;cursor:pointer;font-family:Roboto,sans-serif;font-size:10px;font-weight:700;letter-spacing:.5px;color:var(--mat-sys-primary);background-color:var(--mat-sys-primary-container);border-radius:4px;padding:2px 6px;margin-left:4px;margin-right:2px;display:inline-flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease,background-color .2s ease,color .2s ease,transform .2s ease;height:16px}.md-btn[_ngcontent-%COMP%]:hover{opacity:1!important;transform:scale(1.05);background-color:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}.segment-header[_ngcontent-%COMP%]:hover .md-btn[_ngcontent-%COMP%]{opacity:.5;visibility:visible}.segment-type-string[_ngcontent-%COMP%]{color:var(--ngx-json-string, #FF6B6B)}.segment-type-string[_ngcontent-%COMP%] .value-string[_ngcontent-%COMP%]{white-space:pre-wrap;word-break:break-word}.segment-type-number[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.segment-type-boolean[_ngcontent-%COMP%]{color:var(--mat-sys-secondary)}.segment-type-null[_ngcontent-%COMP%], .segment-type-undefined[_ngcontent-%COMP%]{color:var(--mat-sys-outline);font-style:italic} .custom-md-dialog .mat-mdc-dialog-container{border-radius:12px!important;border:1px solid var(--mat-sys-outline-variant);box-shadow:0 12px 40px #0000004d!important;background-color:var(--mat-sys-surface-container-high)!important}"],changeDetection:0})};function pke(t,A){if(t&1&&(I(0,"div",1),v(1),h()),t&2){let e=p();Q(),ne(e.title)}}var N5=class t{title="";set json(A){if(typeof A=="string")try{this.parsedJson=JSON.parse(A)}catch(e){this.parsedJson=A}else this.parsedJson=A}parsedJson={};static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-json-tooltip"]],inputs:{title:"title",json:"json"},decls:4,vars:3,consts:[[1,"tooltip-shell"],[1,"tooltip-title"],[1,"tooltip-content"],[3,"json","expanded"]],template:function(e,i){e&1&&(I(0,"div",0),T(1,pke,2,1,"div",1),I(2,"div",2),le(3,"app-custom-json-viewer",3),h()()),e&2&&(Q(),O(i.title?1:-1),Q(2),H("json",i.parsedJson)("expanded",!0))},dependencies:[_l],styles:["[_nghost-%COMP%]{display:block;font-size:12px;line-height:1.4;word-break:break-word;overflow:hidden}.tooltip-shell[_ngcontent-%COMP%]{display:flex;flex-direction:column;max-width:800px;max-height:80vh;overflow:hidden}.tooltip-content[_ngcontent-%COMP%]{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.tooltip-title[_ngcontent-%COMP%]{font-weight:600;font-size:9px;color:var(--mat-sys-primary);opacity:.5;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;background:inherit;z-index:1}app-custom-json-viewer[_ngcontent-%COMP%]{display:block;height:auto!important;min-width:0}"]})};var U2=class t{json="";title="";overlayRef=null;overlay=w(LI);elementRef=w(dA);show(){if(!this.json)return;let A=this.overlay.position().flexibleConnectedTo(this.elementRef).withPositions([{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetY:-8},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetY:8},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",offsetY:-8},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",offsetY:-8}]).withViewportMargin(16).withPush(!1);this.overlayRef=this.overlay.create({positionStrategy:A,scrollStrategy:this.overlay.scrollStrategies.close(),panelClass:"json-tooltip-panel",maxWidth:"90vw"});let e=new Os(N5),i=this.overlayRef.attach(e);i.instance.json=this.json,i.instance.title=this.title,i.changeDetectorRef.detectChanges(),this.overlayRef.updatePosition()}hide(){this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}ngOnDestroy(){this.hide()}static \u0275fac=function(e){return new(e||t)};static \u0275dir=We({type:t,selectors:[["","appJsonTooltip",""]],hostBindings:function(e,i){e&1&&U("mouseenter",function(){return i.show()})("mouseleave",function(){return i.hide()})},inputs:{json:[0,"appJsonTooltip","json"],title:[0,"appJsonTooltipTitle","title"]}})},F5=class t{tooltipTemplate;context={};disabled=!1;overlayRef=null;overlay=w(LI);elementRef=w(dA);viewContainerRef=w(Yo);show(){if(this.disabled||!this.tooltipTemplate)return;let A=this.overlay.position().flexibleConnectedTo(this.elementRef).withPositions([{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetY:-8},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetY:8},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",offsetY:-8},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",offsetY:-8}]).withViewportMargin(16).withPush(!1);this.overlayRef=this.overlay.create({positionStrategy:A,scrollStrategy:this.overlay.scrollStrategies.close(),panelClass:"html-tooltip-panel",maxWidth:"90vw"});let e=new $r(this.tooltipTemplate,this.viewContainerRef,this.context);this.overlayRef.attach(e)}hide(){this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}ngOnDestroy(){this.hide()}static \u0275fac=function(e){return new(e||t)};static \u0275dir=We({type:t,selectors:[["","appHtmlTooltip",""]],hostBindings:function(e,i){e&1&&U("mouseenter",function(){return i.show()})("mouseleave",function(){return i.hide()})},inputs:{tooltipTemplate:[0,"appHtmlTooltip","tooltipTemplate"],context:[0,"appHtmlTooltipContext","context"],disabled:[0,"appHtmlTooltipDisabled","disabled"]}})};function mke(t,A){if(t&1&&(I(0,"div",3)(1,"mat-icon",4),v(2,"robot_2"),h()()),t&2){let e=p();vt("background-color",e.color),_e("hidden",!e.author),H("appJsonTooltip",e.tooltip)}}function fke(t,A){if(t&1&&(I(0,"div",5),v(1),h()),t&2){let e=p();vt("background-color",e.color),_e("hidden",!e.author),H("appJsonTooltip",e.tooltip),Q(),pA(" ",e.initial," ")}}function wke(t,A){t&1&&(I(0,"div",2)(1,"mat-icon"),v(2,"person"),h()())}var L5=class t{role="user";author="";nodePath="";themeService=w(pc);stringToColorService=w(xd);get tooltip(){if(this.role==="user")return"";let A={author:this.author,nodePath:this.nodePath||""};return JSON.stringify(A,null,2)}get color(){let A=this.getNodeName(this.nodePath||""),e=this.themeService.currentTheme();return this.stringToColorService.stc(A,e)}get initial(){let e=this.getNodeName(this.nodePath||"").match(/[A-Za-z0-9]/);return e?e[0].toUpperCase():"N"}getNodeName(A){return A.split(/[/.>]/).filter(Boolean).pop()||A}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-chat-avatar"]],inputs:{role:"role",author:"author",nodePath:"nodePath"},decls:3,vars:1,consts:[[1,"bot-avatar",3,"appJsonTooltip","hidden","background-color"],[1,"node-circle-icon",3,"background-color","appJsonTooltip","hidden"],[1,"user-avatar"],[1,"bot-avatar",3,"appJsonTooltip"],["fontSet","material-symbols-outlined"],[1,"node-circle-icon",3,"appJsonTooltip"]],template:function(e,i){e&1&&T(0,mke,3,5,"div",0)(1,fke,2,6,"div",1)(2,wke,3,0,"div",2),e&2&&O(i.role==="bot"?0:i.role==="node"?1:i.role==="user"?2:-1)},dependencies:[Ci,Tn,Vt,Wi,U2],styles:["[_nghost-%COMP%]{display:contents}.node-circle-icon[_ngcontent-%COMP%]{width:32px;height:32px;border-radius:50%;margin-left:4px;margin-right:16px;margin-top:2px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;color:#fff;font-size:14px;font-weight:600;line-height:1;text-transform:uppercase}.bot-avatar[_ngcontent-%COMP%], .user-avatar[_ngcontent-%COMP%]{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.bot-avatar[_ngcontent-%COMP%]{margin-right:12px;color:#fff}.user-avatar[_ngcontent-%COMP%]{background-color:var(--mat-sys-primary);color:var(--mat-sys-on-primary)}.hidden[_ngcontent-%COMP%]{visibility:hidden}"]})};var G5=new Me("FeedbackService");var yke={goodResponseTooltip:"Good response",badResponseTooltip:"Bad response",feedbackAdditionalLabel:"Additional feedback (Optional)",feedbackCommentPlaceholderDown:"Share what could be improved in the response",feedbackCommentPlaceholderUp:"Share what you liked about the response",feedbackCancelButton:"Cancel",feedbackSubmitButton:"Submit",feedbackDialogTitle:"Reasons for feedback (Select all that apply)",feedbackReasonHallucination:"Hallucinated libraries / APIs etc",feedbackReasonIncomplete:"Incomplete answer",feedbackReasonFollowup:"Didn't understand followup",feedbackReasonFactual:"Factual errors",feedbackReasonLinks:"Broken/incorrect links",feedbackReasonIrrelevant:"Irrelevant information",feedbackReasonRepetitive:"Repetitive",feedbackReasonAccurate:"Accurate info",feedbackReasonHelpful:"Helpful",feedbackReasonConcise:"Concise",feedbackReasonUnderstanding:"Good understanding",feedbackReasonClear:"Clear and easy to follow"},Tae=new Me("Message Feedback Messages",{factory:()=>yke});function vke(t,A){t&1&&(I(0,"mat-icon"),v(1,"thumb_up_filled"),h())}function Dke(t,A){t&1&&(I(0,"mat-icon"),v(1,"thumb_up"),h())}function bke(t,A){t&1&&(I(0,"mat-icon"),v(1,"thumb_down_filled"),h())}function Mke(t,A){t&1&&(I(0,"mat-icon"),v(1,"thumb_down"),h())}function Ske(t,A){if(t&1&&(I(0,"mat-chip-option",7),v(1),h()),t&2){let e=A.$implicit;H("value",e),Q(),pA(" ",e," ")}}function kke(t,A){if(t&1){let e=ae();I(0,"div",4)(1,"div",5)(2,"h3"),v(3),h(),I(4,"mat-chip-listbox",6),RA(5,Ske,2,2,"mat-chip-option",7,ri),h()(),I(7,"div",8)(8,"h3"),v(9),h(),I(10,"mat-form-field",9)(11,"textarea",10),v(12," "),h()()(),I(13,"div",11)(14,"button",12),U("click",function(){L(e);let n=p();return G(n.onDetailedFeedbackCancelled())}),v(15),h(),I(16,"button",13),U("click",function(){L(e);let n=p();return G(n.onDetailedFeedbackSubmitted())}),v(17),h()()()}if(t&2){let e=p();Q(3),ne(e.i18n.feedbackDialogTitle),Q(),H("formControl",e.selectedReasons),Q(),NA(e.reasons()),Q(4),ne(e.i18n.feedbackAdditionalLabel),Q(2),H("formControl",e.comment)("placeholder",e.feedbackPlaceholder()),Q(4),pA(" ",e.i18n.feedbackCancelButton," "),Q(2),pA(" ",e.i18n.feedbackSubmitButton," ")}}var K5=class t{sessionName=MA.required();eventId=MA.required();i18n=w(Tae);feedbackService=w(G5);existingFeedback=V3({params:()=>({sessionName:this.sessionName(),eventId:this.eventId()}),stream:({params:A})=>this.feedbackService.getFeedback(A.sessionName,A.eventId)});selectedFeedbackDirection=fe(void 0);feedbackDirection=DA(()=>this.selectedFeedbackDirection()??this.existingFeedback.value()?.direction);isDetailedFeedbackVisible=fe(!1);feedbackPlaceholder=DA(()=>this.feedbackDirection()==="up"?this.i18n.feedbackCommentPlaceholderUp:this.i18n.feedbackCommentPlaceholderDown);positiveReasonsResource=V3({stream:()=>this.feedbackService.getPositiveFeedbackReasons()});negativeReasonsResource=V3({stream:()=>this.feedbackService.getNegativeFeedbackReasons()});reasons=DA(()=>this.feedbackDirection()==="up"?this.positiveReasonsResource.value():this.negativeReasonsResource.value());selectedReasons=new tl([]);comment=new tl("");isLoading=fe(!1);sendFeedback(A){this.feedbackDirection()===A?(this.isLoading.set(!0),this.feedbackService.deleteFeedback(this.sessionName(),this.eventId()).subscribe(()=>{this.isLoading.set(!1),this.selectedFeedbackDirection.set(void 0),this.resetDetailedFeedback()})):(this.selectedReasons.reset(),this.isLoading.set(!0),this.feedbackService.sendFeedback(this.sessionName(),this.eventId(),{direction:A}).subscribe(()=>{this.isLoading.set(!1),this.isDetailedFeedbackVisible.set(!0),this.selectedFeedbackDirection.set(A)}))}onDetailedFeedbackSubmitted(){let A=this.feedbackDirection();A&&(this.isLoading.set(!0),this.feedbackService.sendFeedback(this.sessionName(),this.eventId(),{direction:A,reasons:this.selectedReasons.value??[],comment:this.comment.value??void 0}).subscribe(()=>{this.isLoading.set(!1),this.resetDetailedFeedback()}))}onDetailedFeedbackCancelled(){this.selectedFeedbackDirection.set(void 0),this.resetDetailedFeedback()}resetDetailedFeedback(){this.isDetailedFeedbackVisible.set(!1),this.comment.reset(),this.selectedReasons.reset([])}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-message-feedback"]],inputs:{sessionName:[1,"sessionName"],eventId:[1,"eventId"]},decls:9,vars:7,consts:[[1,"message-feedback-container"],[1,"feedback-buttons"],["mat-icon-button","",3,"click","matTooltip","disabled"],["class","feedback-details-container",4,"ngIf"],[1,"feedback-details-container"],[1,"reasons-chips"],["multiple","",3,"formControl"],[3,"value"],[1,"additional-feedback"],["appearance","outline"],["matInput","",3,"formControl","placeholder"],[1,"actions"],["mat-stroked-button","",3,"click"],["mat-flat-button","","color","primary",3,"click"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"div",1)(2,"button",2),U("click",function(){return i.sendFeedback("up")}),T(3,vke,2,0,"mat-icon")(4,Dke,2,0,"mat-icon"),h(),I(5,"button",2),U("click",function(){return i.sendFeedback("down")}),T(6,bke,2,0,"mat-icon")(7,Mke,2,0,"mat-icon"),h()(),Nt(8,kke,18,7,"div",3),h()),e&2&&(Q(2),H("matTooltip",i.i18n.goodResponseTooltip)("disabled",i.isLoading()),Q(),O(i.feedbackDirection()==="up"?3:4),Q(2),H("matTooltip",i.i18n.badResponseTooltip)("disabled",i.isLoading()),Q(),O(i.feedbackDirection()==="down"?6:7),Q(2),H("ngIf",i.isDetailedFeedbackVisible()))},dependencies:[Ci,cc,Ed,Kn,Un,sI,Wi,xi,Di,A5,PF,YF,ir,$o,Tn,Vt,al,Fa,qa,ln],styles:[".message-feedback-container[_ngcontent-%COMP%]{display:block}.feedback-buttons[_ngcontent-%COMP%]{--mat-icon-button-touch-target-size: 32px;--button-size: 32px;--icon-size: 12px;margin-left:96px;display:flex}.feedback-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:var(--button-size);height:var(--button-size);transition:all .2s ease}.feedback-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:var(--icon-size);height:var(--icon-size);width:var(--icon-size);transition:all .2s ease}.feedback-buttons[_ngcontent-%COMP%] button.selected[_ngcontent-%COMP%]{color:var(--side-panel-button-filled-label-text-color, white)}.feedback-buttons[_ngcontent-%COMP%] button.selected[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:inherit}.reasons-chips[_ngcontent-%COMP%]{margin-bottom:20px}.feedback-details-container[_ngcontent-%COMP%]{margin-left:54px;max-width:500px;padding:16px;border-radius:8px;margin-top:8px;border:1px solid var(--builder-border-color)}.feedback-details-container[_ngcontent-%COMP%] .additional-feedback[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-weight:500;margin-bottom:8px;margin-top:0;color:var(--builder-text-secondary-color)}.feedback-details-container[_ngcontent-%COMP%] .additional-feedback[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.feedback-details-container[_ngcontent-%COMP%] .additional-feedback[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{min-height:60px;resize:vertical}.feedback-details-container[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.feedback-details-container[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:18px;padding:0 16px;height:32px;line-height:32px;font-weight:500}"]})};var _ke={cancelButton:"Cancel",saveButton:"Save",invalidJsonAlert:"Invalid JSON: "},Oae=new Me("Edit Json Dialog Messages",{factory:()=>_ke});var J1=class t{constructor(A,e){this.dialogRef=A;this.data=e;this.jsonString=JSON.stringify(e.jsonContent,null,2),this.functionName=e.functionName||""}jsonEditorComponent=Ho(Tg);jsonString="";functionName="";i18n=w(Oae);ngOnInit(){}onSave(){try{this.jsonString=this.jsonEditorComponent().getJsonString();let A=JSON.parse(this.jsonString);this.dialogRef.close(A)}catch(A){alert(this.i18n.invalidJsonAlert+A)}}onCancel(){this.dialogRef.close(null)}static \u0275fac=function(e){return new(e||t)(dt(Pn),dt(Do))};static \u0275cmp=De({type:t,selectors:[["app-edit-json-dialog"]],viewQuery:function(e,i){e&1&&Bs(i.jsonEditorComponent,Tg,5),e&2&&Rr()},decls:11,vars:5,consts:[[1,"dialog-container"],["mat-dialog-title",""],[1,"editor"],[3,"jsonString"],["align","end"],["mat-button","","mat-dialog-close",""],["mat-button","","cdkFocusInitial","",3,"click"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"h2",1),v(2),h(),I(3,"mat-dialog-content",2),v(4),le(5,"app-json-editor",3),h(),I(6,"mat-dialog-actions",4)(7,"button",5),v(8),h(),I(9,"button",6),U("click",function(){return i.onSave()}),v(10),h()()()),e&2&&(Q(2),ne(i.data.dialogHeader),Q(2),pA(" ",i.functionName," "),Q(),H("jsonString",i.jsonString),Q(3),ne(i.i18n.cancelButton),Q(2),ne(i.i18n.saveButton))},dependencies:[ea,pa,Tg,ma,xi,Sd],styles:[".dialog-container[_ngcontent-%COMP%]{border-radius:12px;padding:18px;width:500px;box-shadow:0 8px 16px var(--edit-json-dialog-container-box-shadow-color)}.editor[_ngcontent-%COMP%]{padding-top:12px;height:300px}"]})};function lE(t){if(!t)return!1;if(t.name==="computer"){let i=t.args?.action,n=t.args?.coordinate;return["left_click","right_click","middle_click","double_click"].includes(i)&&Array.isArray(n)&&n.length===2}let A=["click_at","hover_at","type_text_at","scroll_at","drag_and_drop","mouse_move","scroll_document","wait_5_seconds","navigate","open_web_browser"].includes(t.name),e=t.args?.x!=null&&t.args?.y!=null||Array.isArray(t.args?.coordinate)&&t.args?.coordinate.length===2;return A}function j0(t){return t?!!t.response?.image?.data:!1}var yL=(a=>(a[a.INACTIVE=0]="INACTIVE",a[a.PENDING=1]="PENDING",a[a.RUNNING=2]="RUNNING",a[a.COMPLETED=3]="COMPLETED",a[a.INTERRUPTED=4]="INTERRUPTED",a[a.FAILED=5]="FAILED",a))(yL||{});var xke=()=>({type:"dots",color:"#424242",size:1,gap:10});function Rke(t,A){t&1&&(I(0,"span",2),v(1,"(Pinned - Click X to close)"),h())}function Nke(t,A){t&1&&(I(0,"span",2),v(1,"(Click to pin)"),h())}function Fke(t,A){t&1&&(I(0,"mat-icon",10),v(1,"chevron_right"),h())}function Lke(t,A){if(t&1){let e=ae();I(0,"span",9),U("click",function(){let n=L(e).$index,o=p(2);return G(o.navigateToLevel(n))}),v(1),h(),T(2,Fke,2,0,"mat-icon",10)}if(t&2){let e=A.$implicit,i=A.$index,n=p(2);_e("active",i===n.breadcrumbs().length-1),Q(),pA(" ",e," "),Q(),O(i0?17:-1)}}function Oke(t,A){if(t&1&&(mt(),I(0,"g",24),le(1,"path",25),h()),t&2){let e=A.$implicit;Q(),aA("d",e.path())("stroke",e.edge.data!=null&&e.edge.data.isActive?"#42A5F5":"rgba(138, 180, 248, 0.8)")("stroke-width",e.edge.data!=null&&e.edge.data.isActive?"3":"2")("class",e.edge.data!=null&&e.edge.data.isActive?"active-edge":"")("marker-end",e.markerEnd())}}var U5=class t{nodes=null;agentGraphData=null;nodePath=null;allNodes=null;isPinned=!1;onClose;graphNodes=fe([]);graphEdges=fe([]);NodeStatus=yL;connection={mode:"loose"};fullAgentData=null;navigationStack=[];breadcrumbs=fe([]);close(){this.onClose&&this.onClose()}ngOnInit(){this.buildGraph()}buildGraph(){if(this.agentGraphData?.root_agent){this.fullAgentData=this.agentGraphData.root_agent,this.navigationStack=[{name:this.agentGraphData.root_agent.name,data:this.agentGraphData.root_agent}],this.nodePath&&this.navigateToNodePath(this.nodePath),this.updateBreadcrumbs();let A=this.navigationStack[this.navigationStack.length-1].data;this.buildGraphFromStructure(A)}else this.buildGraphFromStateOnly()}buildGraphFromStructure(A){let e=[],i=[];if(A.nodes&&Array.isArray(A.nodes))this.buildMeshGraph(A.nodes,e,i);else if(A.graph&&A.graph.nodes){let n=sq(A.graph.nodes,A.graph.edges||[],Y8);A.graph.nodes.forEach((o,a)=>{let r=ug(o,`node_${a}`),s=this.nodes?this.nodes[r]:null,l=o.type||"agent",c=n.positions.get(r)||{x:Y8.startX,y:Y8.startY},C=fC(o),d=this.getNodeStatusAtLevel(r,o);e.push({id:r,type:"html-template",point:fe({x:c.x,y:c.y}),width:fe(180),height:fe(80),data:fe({name:r,type:l,status:d,input:s?.input,triggeredBy:s?.triggered_by,retryCount:s?.retry_count,runId:s?.run_id,hasNestedStructure:C,nodeData:o})})}),A.graph.edges&&A.graph.edges.forEach((o,a)=>{let r=ug(o.from_node),s=ug(o.to_node);if(r&&s){let l=this.getNodeStatusAtLevel(r,o.from_node),c=this.getNodeStatusAtLevel(s,o.to_node),C=l===2||l===3&&(c===2||c===1);i.push({id:`${r}_to_${s}_${a}`,source:r,target:s,type:"template",data:{isActive:C},markers:{end:{type:"arrow-closed",width:15,height:15,color:C?"#42A5F5":"rgba(138, 180, 248, 0.8)"}}})}})}this.graphNodes.set(e),this.graphEdges.set(i)}buildMeshGraph(A,e,i){let n=A.findIndex(d=>d.name===A[0]?.name||d.type==="coordinator"),o=n>=0?A[n]:null,a=A.filter((d,B)=>B!==n),r=100,s=200,l=300,C=400-(a.length-1)*l/2;if(o){let d=fC(o),B=ug(o),E=this.getNodeStatusAtLevel(B,o);e.push({id:B,type:"html-template",point:fe({x:400,y:r}),width:fe(180),height:fe(80),data:fe({name:B,type:"agent",status:E,hasNestedStructure:d,nodeData:o})})}a.forEach((d,B)=>{let E=C+B*l,u=r+s,m=fC(d),f=ug(d),D=this.getNodeStatusAtLevel(f,d);if(e.push({id:f,type:"html-template",point:fe({x:E,y:u}),width:fe(180),height:fe(80),data:fe({name:f,type:"agent",status:D,hasNestedStructure:m,nodeData:d})}),o){let S=ug(o),k=this.getNodeStatusAtLevel(S,o),b=k===2||k===3&&(D===2||D===1);i.push({id:`${S}_to_${f}`,source:S,target:f,type:"template",floating:!0,data:{isActive:b},markers:{end:{type:"arrow-closed",width:15,height:15,color:b?"#42A5F5":"rgba(138, 180, 248, 0.8)"}}})}})}buildGraphFromStateOnly(){let A=[],e=[];if(!this.nodes){this.graphNodes.set(A),this.graphEdges.set(e);return}let a=Object.keys(this.nodes);a.forEach((r,s)=>{let l=this.nodes[r];A.push({id:r,type:"html-template",point:fe({x:200,y:50+s*120}),width:fe(180),height:fe(80),data:fe({name:r,type:r==="__START__"?"start":"agent",status:l.status,input:l.input,triggeredBy:l.triggered_by,retryCount:l.retry_count,runId:l.run_id})})}),a.forEach(r=>{let s=this.nodes[r];if(s.triggered_by&&a.includes(s.triggered_by)){let c=this.nodes[s.triggered_by]?.status===2;e.push({id:`${s.triggered_by}_to_${r}`,source:s.triggered_by,target:r,type:"template",floating:!0,data:{isActive:c},markers:{end:{type:"arrow-closed",width:15,height:15,color:c?"#42A5F5":"rgba(138, 180, 248, 0.8)"}}})}}),this.graphNodes.set(A),this.graphEdges.set(e)}getStatusColor(A){switch(A){case 0:return"#757575";case 1:return"#FFA726";case 2:return"#42A5F5";case 3:return"#66BB6A";case 4:return"#FFCA28";case 5:return"#EF5350";default:return"#757575"}}getStatusLabel(A){switch(A){case 0:return"INACTIVE";case 1:return"PENDING";case 2:return"RUNNING";case 3:return"COMPLETED";case 4:return"INTERRUPTED";case 5:return"FAILED";default:return"UNKNOWN"}}getStatusIcon(A){switch(A){case 0:return"radio_button_unchecked";case 1:return"schedule";case 2:return"play_circle";case 3:return"check_circle";case 4:return"pause_circle";case 5:return"error";default:return"help"}}updateBreadcrumbs(){this.breadcrumbs.set(this.navigationStack.map(A=>A.name))}navigateIntoNode(A){let e=this.navigationStack[this.navigationStack.length-1].data,i=Qh(e,A);i&&fC(i)&&(this.navigationStack.push({name:A,data:i}),this.updateBreadcrumbs(),this.buildGraphFromStructure(i))}navigateToLevel(A){if(A>=0&&A1?9:-1),Q(2),H("nodes",i.graphNodes())("edges",i.graphEdges())("connection",i.connection)("background",$g(8,xke)))},dependencies:[Ci,Tn,Vt,Wi,Di,E5,xm,Q5,Coe,$u,l5],styles:[".workflow-graph-tooltip[_ngcontent-%COMP%]{width:500px;height:400px;border-radius:8px;padding:12px;display:flex;flex-direction:column;box-shadow:0 4px 16px #0006}.tooltip-header[_ngcontent-%COMP%]{font-size:14px;font-weight:500;color:var(--mdc-dialog-supporting-text-color);margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:8px}.pinned-hint[_ngcontent-%COMP%]{font-size:12px;font-weight:400;opacity:.7;font-style:italic;flex:1}.close-button[_ngcontent-%COMP%]{width:24px;height:24px;line-height:24px;margin-left:auto}.close-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;line-height:18px}.breadcrumb-nav[_ngcontent-%COMP%]{display:flex;align-items:center;margin-bottom:8px;font-size:12px;color:var(--mdc-dialog-supporting-text-color)}.breadcrumb-item[_ngcontent-%COMP%]{cursor:pointer;padding:3px 6px;border-radius:3px;transition:background-color .2s}.breadcrumb-item.active[_ngcontent-%COMP%]{font-weight:500;cursor:default}.breadcrumb-separator[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;opacity:.5;margin:0 2px}.vflow-container[_ngcontent-%COMP%]{flex:1;min-height:0;border:1px solid rgba(255,255,255,.1);border-radius:4px;overflow:hidden;position:relative}.vflow-container[_ngcontent-%COMP%] vflow[_ngcontent-%COMP%]{width:100%;height:100%;display:block}.workflow-node[_ngcontent-%COMP%]{border:2px solid;border-radius:6px;padding:8px 12px;min-width:160px;box-shadow:0 2px 6px #0000004d;transition:all .2s}.workflow-node.expandable[_ngcontent-%COMP%]{cursor:pointer}.workflow-node.expandable[_ngcontent-%COMP%]:hover{box-shadow:0 4px 12px #8ab4f84d;transform:scale(1.02)}.node-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.node-type-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;color:#8ab4f8e6}.status-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;margin-left:auto}.node-label[_ngcontent-%COMP%]{font-weight:500;font-size:13px;color:var(--mdc-dialog-supporting-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.node-type[_ngcontent-%COMP%]{font-size:10px;color:#8ab4f8cc;font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.node-status[_ngcontent-%COMP%]{font-size:11px;font-weight:600;margin-top:2px}.node-retry[_ngcontent-%COMP%]{font-size:10px;color:var(--mdc-dialog-supporting-text-color);opacity:.7;margin-top:2px}[_nghost-%COMP%] .active-edge{animation:_ngcontent-%COMP%_dash 1.5s linear infinite;stroke-dasharray:8 4}@keyframes _ngcontent-%COMP%_dash{to{stroke-dashoffset:-12}}"]})};var T5=class t{appWorkflowGraphTooltip=null;agentGraphData=null;nodePath=null;allNodes=null;overlay=w(LI);overlayPositionBuilder=w(z6);viewContainerRef=w(Yo);overlayRef=null;isPinned=!1;onClick(A){A.stopPropagation(),!(!this.appWorkflowGraphTooltip||Object.keys(this.appWorkflowGraphTooltip).length===0)&&(this.isPinned?this.hide():this.showPinned())}show(){this.isPinned||!this.appWorkflowGraphTooltip||Object.keys(this.appWorkflowGraphTooltip).length===0||this.overlayRef||this.showTooltip(!1)}hide(){this.isPinned||this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null)}showPinned(){this.overlayRef&&(this.overlayRef.dispose(),this.overlayRef=null),this.isPinned=!0,this.showTooltip(!0)}showTooltip(A){if(this.overlayRef)return;let e=this.overlayPositionBuilder.flexibleConnectedTo(this.viewContainerRef.element).withPositions([{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetY:-8},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetY:8}]);this.overlayRef=this.overlay.create({positionStrategy:e,scrollStrategy:this.overlay.scrollStrategies.close(),hasBackdrop:A,backdropClass:A?"cdk-overlay-transparent-backdrop":void 0}),A&&this.overlayRef&&this.overlayRef.backdropClick().subscribe(()=>{this.isPinned=!1,this.hide()});let i=new Os(U5),n=this.overlayRef.attach(i);n.instance.nodes=this.appWorkflowGraphTooltip,n.instance.agentGraphData=this.agentGraphData,n.instance.nodePath=this.nodePath,n.instance.allNodes=this.allNodes,n.instance.isPinned=A,n.instance.onClose=()=>{this.isPinned=!1,this.hide()}}ngOnDestroy(){this.isPinned=!1,this.hide()}static \u0275fac=function(e){return new(e||t)};static \u0275dir=We({type:t,selectors:[["","appWorkflowGraphTooltip",""]],hostBindings:function(e,i){e&1&&U("click",function(o){return i.onClick(o)})("mouseenter",function(){return i.show()})("mouseleave",function(){return i.hide()})},inputs:{appWorkflowGraphTooltip:"appWorkflowGraphTooltip",agentGraphData:"agentGraphData",nodePath:"nodePath",allNodes:"allNodes"}})};function Jke(t,A){if(t&1){let e=ae();I(0,"div",5)(1,"img",10),U("load",function(n){L(e);let o=p(4);return G(o.onImageLoad(n))})("click",function(n){L(e),p(3);let o=Ti(0);return p().openImageViewer(o),G(n.stopPropagation())}),h(),le(2,"div",11),h()}if(t&2){p(3);let e=Ti(0),i=p();Q(),H("src",e,wo),Q(),H("ngStyle",i.getClickBoxStyle())}}function zke(t,A){t&1&&(I(0,"div",6)(1,"mat-icon",12),v(2,"image_not_supported"),h(),I(3,"span",13),v(4,"No screenshot"),h()())}function Yke(t,A){if(t&1){let e=ae();T(0,Jke,3,2,"div",5)(1,zke,5,0,"div",6),I(2,"div",7)(3,"span",8),v(4),h(),I(5,"mat-icon"),v(6,"arrow_forward"),h()(),I(7,"div",5)(8,"img",9),U("click",function(n){L(e),p(2);let o=Ti(1);return p().openImageViewer(o),G(n.stopPropagation())}),h()()}if(t&2){p(2);let e=Ti(0),i=Ti(1),n=p();O(e?0:1),Q(4),ne(n.getActionName()),Q(4),H("src",i,wo)}}function Hke(t,A){if(t&1){let e=ae();I(0,"div",5)(1,"img",10),U("load",function(n){L(e);let o=p(3);return G(o.onImageLoad(n))})("click",function(n){L(e),p(2);let o=Ti(0);return p().openImageViewer(o),G(n.stopPropagation())}),h(),le(2,"div",11),h()}if(t&2){p(2);let e=Ti(0),i=p();Q(),H("src",e,wo),Q(),H("ngStyle",i.getClickBoxStyle())}}function Pke(t,A){if(t&1){let e=ae();I(0,"div",3),U("click",function(){L(e);let n=p(2);return G(n.clickEvent.emit(n.index))}),I(1,"div",4),T(2,Yke,9,3)(3,Hke,3,2,"div",5),h()()}if(t&2){p();let e=Ti(1);_e("dual-images",!!e),Q(2),O(e?2:3)}}function jke(t,A){if(t&1){let e=ae();I(0,"div",14),U("click",function(){L(e);let n=p(2);return G(n.clickEvent.emit(n.index))}),I(1,"div",6)(2,"mat-icon",12),v(3,"image_not_supported"),h(),I(4,"span",13),v(5,"No screenshot"),h()()()}}function Vke(t,A){if(t&1&&(so(0)(1),T(2,Pke,4,3,"div",1)(3,jke,6,0,"div",2)),t&2){let e=p(),i=lo(e.getPreviousComputerUseScreenshot());Q();let n=lo(e.getNextComputerUseScreenshot());Q(),O(i||n?2:3)}}function qke(t,A){if(t&1){let e=ae();I(0,"div",15),U("click",function(){L(e);let n=p();return G(n.clickEvent.emit(n.index))}),I(1,"div",16)(2,"span",17),v(3),h()(),le(4,"img",18),I(5,"div",19)(6,"mat-icon",20),v(7,"computer"),h(),I(8,"span",21),v(9),h()()()}if(t&2){let e=p();Q(3),ne(e.functionResponse.name),Q(),H("src",e.getComputerUseScreenshot(),wo),Q(5),ne(e.getComputerUseUrl())}}var O5=class t{functionCall;functionResponse;allMessages=[];index=0;clickEvent=new Le;openImage=new Le;imageDimensions=new Map;VIRTUAL_WIDTH=1e3;VIRTUAL_HEIGHT=1e3;isComputerUseResponse(){return!!this.functionResponse&&j0(this.functionResponse)}isComputerUseClick(){return!!this.functionCall&&lE(this.functionCall)}getComputerUseScreenshot(){return this.getScreenshotFromPayload(this.functionResponse?.response)}getComputerUseUrl(){return this.isComputerUseResponse()&&(this.functionResponse?.response).url||""}getPreviousComputerUseScreenshot(){for(let A=this.index-1;A>=0;A--){let e=this.allMessages[A];if(this.isMsgComputerUseResponse(e)&&e.functionResponses&&e.functionResponses.length>0)for(let i=e.functionResponses.length-1;i>=0;i--){let n=e.functionResponses[i];if(j0(n)){let a=n.response;return this.getScreenshotFromPayload(a)}let o=n.parts;if(Array.isArray(o))for(let a=o.length-1;a>=0;a--){let r=o[a];if(r.inlineData?.mimeType?.startsWith("image/")&&r.inlineData.data){let s=r.inlineData.mimeType,l=r.inlineData.data.replace(/-/g,"+").replace(/_/g,"/");return`data:${s};base64,${l}`}}}}return""}getNextComputerUseScreenshot(){for(let A=this.index+1;A0)for(let i=0;i0?A.functionResponses.some(e=>{if(j0(e))return!0;let i=e.parts;return Array.isArray(i)?i.some(n=>n.inlineData?.mimeType?.startsWith("image/")):!1}):!1}getScreenshotFromPayload(A){let e=A?.image;if(!e?.data)return"";let i=e.data;return i.startsWith("data:")?i:`data:${e.mimetype||"image/png"};base64,${i}`}getAllComputerUseScreenshots(){let A=[];for(let e of this.allMessages)if(this.isMsgComputerUseResponse(e)&&e.functionResponses)for(let i of e.functionResponses){if(j0(i)){let o=i.response;A.push(this.getScreenshotFromPayload(o))}let n=i.parts;if(Array.isArray(n)){for(let o of n)if(o.inlineData?.mimeType?.startsWith("image/")&&o.inlineData.data){let a=o.inlineData.mimeType,r=o.inlineData.data.replace(/-/g,"+").replace(/_/g,"/");A.push(`data:${a};base64,${r}`)}}}return A}getAllComputerUseUrls(){let A=[],e="";for(let i of this.allMessages)if(this.isMsgComputerUseResponse(i)&&i.functionResponses)for(let n of i.functionResponses){let o=n.response?.url;o&&(e=o),j0(n)&&A.push(e);let a=n.parts;if(Array.isArray(a))for(let r of a)r.inlineData?.mimeType?.startsWith("image/")&&r.inlineData.data&&A.push(e)}return A}getAllComputerUseCoordinates(){let A=[],e=null;for(let i of this.allMessages){let n=i.functionCalls;if(Array.isArray(n))for(let o of n)lE(o)?e=o:o.name==="computer"&&(e=null);if(this.isMsgComputerUseResponse(i)&&i.functionResponses)for(let o of i.functionResponses){let a=!1;j0(o)&&(a=!0);let r=o.parts;if(Array.isArray(r))for(let s of r)s.inlineData?.mimeType?.startsWith("image/")&&s.inlineData.data&&(a=!0);a&&(e&&A.length>0&&(A[A.length-1]=this.getClickCoordinates(e)),A.push(null))}}return A}openImageViewer(A){let e=this.getAllComputerUseScreenshots(),i=this.getAllComputerUseUrls(),n=this.getAllComputerUseCoordinates(),o=e.indexOf(A);this.openImage.emit({images:e,currentIndex:o,urls:i,coordinates:n})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-computer-action"]],inputs:{functionCall:"functionCall",functionResponse:"functionResponse",allMessages:"allMessages",index:"index"},outputs:{clickEvent:"clickEvent",openImage:"openImage"},decls:2,vars:1,consts:[[1,"computer-use-container"],[1,"computer-use-container","click-visualization-container",3,"dual-images"],[1,"computer-use-container","click-visualization-container","fallback"],[1,"computer-use-container","click-visualization-container",3,"click"],[1,"images-wrapper-flex"],[1,"image-wrapper"],[1,"image-wrapper","fallback-image"],[1,"arrow-container"],[1,"action-name-above"],["alt","Next Screenshot",1,"computer-use-screenshot",3,"click","src"],["alt","Computer Use Screenshot",1,"computer-use-screenshot",3,"load","click","src"],[1,"click-overlay-box",3,"ngStyle"],[1,"missing-icon"],[1,"fallback-text"],[1,"computer-use-container","click-visualization-container","fallback",3,"click"],[1,"computer-use-container",3,"click"],[1,"computer-use-header"],[1,"computer-use-tool-name"],["alt","Computer Use Screenshot",1,"computer-use-screenshot",3,"src"],[1,"computer-use-footprint"],[1,"computer-icon"],[1,"url-text"]],template:function(e,i){e&1&&T(0,Vke,4,3)(1,qke,10,3,"div",0),e&2&&O(i.isComputerUseClick()?0:i.isComputerUseResponse()?1:-1)},dependencies:[Ci,lB,Tn,Vt,qa],styles:['[_nghost-%COMP%]{display:block}.computer-use-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;border-radius:12px;border:1px solid var(--chat-panel-input-field-mat-mdc-text-field-wrapper-border-color);overflow:hidden;cursor:pointer;margin:5px 5px 10px;transition:opacity .2s}.computer-use-container[_ngcontent-%COMP%]:hover{opacity:.9}.computer-use-tool-name[_ngcontent-%COMP%]{font-size:12px;font-family:monospace;font-weight:600;color:var(--chat-panel-input-field-textarea-color);opacity:.9;padding:12px}.computer-use-tool-name[_ngcontent-%COMP%] .actual-pixels[_ngcontent-%COMP%]{opacity:.6;margin-left:8px;font-weight:400}.computer-use-screenshot[_ngcontent-%COMP%]{width:100%;height:auto;display:block;border-bottom:1px solid var(--chat-panel-input-field-mat-mdc-text-field-wrapper-border-color)}.computer-use-footprint[_ngcontent-%COMP%]{display:flex;align-items:center;padding:8px 12px;gap:8px}.computer-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;flex-shrink:0}.url-text[_ngcontent-%COMP%]{font-size:11px;font-family:monospace;white-space:normal;word-break:break-all;color:var(--chat-panel-input-field-textarea-color);opacity:.8;min-width:0}.image-wrapper[_ngcontent-%COMP%]{position:relative;width:100%}.images-wrapper-flex[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:580px;gap:12px}.images-wrapper-flex[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%]{flex:1;min-width:0}.images-wrapper-flex[_ngcontent-%COMP%] .image-wrapper[_ngcontent-%COMP%] .computer-use-screenshot[_ngcontent-%COMP%]{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border-radius:8px}.arrow-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--chat-panel-input-field-textarea-color);opacity:.8;gap:4px}.arrow-container[_ngcontent-%COMP%] .action-name-above[_ngcontent-%COMP%]{font-size:11px;font-family:monospace;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.arrow-container[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:32px;width:32px;height:32px}.fallback-image[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high, #e0e0e0);width:240px;height:120px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--chat-panel-input-field-textarea-color);opacity:.7}.fallback-image[_ngcontent-%COMP%] .missing-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px}.fallback-image[_ngcontent-%COMP%] .fallback-text[_ngcontent-%COMP%]{font-size:14px;font-weight:500}.click-overlay-box[_ngcontent-%COMP%]{position:absolute;width:24px;height:24px;border:1px solid rgba(255,255,255,.8);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 4px #00000080;pointer-events:none;display:flex;align-items:center;justify-content:center}.click-overlay-box[_ngcontent-%COMP%]:before{content:"";width:2px;height:2px;border-radius:50%;box-shadow:0 0 2px #fff}.click-overlay-box[_ngcontent-%COMP%]:after{content:"";position:absolute;width:100%;height:100%;border-radius:50%}']})};function Zke(t,A){if(t&1&&(I(0,"mat-icon"),v(1),h()),t&2){let e=p();Q(),ne(e.icon)}}var J5=class t{icon="";text="";tooltipContent=null;tooltipTitle="";disabled=!1;buttonClick=new Le;handleClick(A){this.buttonClick.emit(A)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-hover-info-button"]],inputs:{icon:"icon",text:"text",tooltipContent:"tooltipContent",tooltipTitle:"tooltipTitle",disabled:"disabled"},outputs:{buttonClick:"buttonClick"},decls:3,vars:7,consts:[["mat-stroked-button","",1,"hover-info-button",3,"click","appJsonTooltip","appJsonTooltipTitle","disabled"]],template:function(e,i){e&1&&(I(0,"button",0),U("click",function(o){return i.handleClick(o)}),T(1,Zke,2,1,"mat-icon"),v(2),h()),e&2&&(_e("icon-only",!i.text),H("appJsonTooltip",i.tooltipContent)("appJsonTooltipTitle",i.tooltipTitle)("disabled",i.disabled),Q(),O(i.icon?1:-1),Q(),pA(" ",i.text,` +`))},dependencies:[Ci,Wi,xi,Tn,Vt,U2],styles:[`.hover-info-button[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)!important;background-color:var(--mat-sys-surface-container-high)!important;border-color:transparent!important;margin:5px 5px 5px 0;font-size:11px!important;padding:6px 12px!important;min-height:24px!important;height:24px!important;border-radius:8px!important;font-family:Roboto Mono,monospace!important;max-width:300px;text-align:left;display:inline-flex;align-items:center}.hover-info-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px!important;width:18px!important;height:18px!important;margin-right:6px!important;color:var(--mat-sys-on-surface)!important}.hover-info-button.icon-only[_ngcontent-%COMP%]{padding:0!important;min-width:24px!important;width:24px!important;justify-content:center}.hover-info-button.icon-only[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:-8px!important}.hover-info-button.icon-only[_ngcontent-%COMP%] .mdc-button__label[_ngcontent-%COMP%]{display:none!important}[_nghost-%COMP%] .hover-info-button{background-color:var(--mat-sys-surface-container-high)!important;color:var(--mat-sys-on-surface)!important}[_nghost-%COMP%] .hover-info-button .mdc-button__label{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important} + + + + + + + + + + + + + + + + +`]})};var Jae=(t,A)=>A.key;function Wke(t,A){if(t&1){let e=ae();I(0,"div",7)(1,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("form"))}),v(2,"Form"),h(),I(3,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("json"))}),v(4,"JSON"),h(),I(5,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("payload"))}),v(6,"Payload"),h(),I(7,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("response schema"))}),v(8,"Schema"),h()()}if(t&2){let e=p(3);Q(),_e("active",e.activeTab==="form"),Q(2),_e("active",e.activeTab==="json"),Q(2),_e("active",e.activeTab==="payload"),Q(2),_e("active",e.activeTab==="response schema")}}function Xke(t,A){if(t&1){let e=ae();I(0,"div",9)(1,"div",12),v(2),h(),I(3,"div",13)(4,"div",14),v(5,"Payload"),h(),le(6,"app-custom-json-viewer",15),h(),I(7,"div",16)(8,"div",17)(9,"label",18)(10,"input",19),Fi("ngModelChange",function(n){L(e);let o=p(3);return vi(o.confirmationModel.confirmed,n)||(o.confirmationModel.confirmed=n),G(n)}),h(),I(11,"span"),v(12,"Confirmed"),h()()(),I(13,"button",20),U("click",function(){L(e);let n=p(3);return G(n.onSend())}),v(14," Submit "),h()()()}if(t&2){let e=p(3);Q(2),pA(" ",e.functionCall.args==null||e.functionCall.args.toolConfirmation==null?null:e.functionCall.args.toolConfirmation.hint," "),Q(4),H("json",e.functionCall.args==null||e.functionCall.args.originalFunctionCall==null?null:e.functionCall.args.originalFunctionCall.args),Q(4),H("id",nQ("confirmed-checkbox-",e.functionCall.id)),Ni("ngModel",e.confirmationModel.confirmed)}}function $ke(t,A){t&1&&v(0," *")}function e_e(t,A){if(t&1&&(I(0,"div",28),v(1),h()),t&2){let e=p(2).$implicit;Q(),ne(e.description)}}function A_e(t,A){if(t&1){let e=ae();I(0,"input",27),Fi("ngModelChange",function(n){L(e);let o=p().$implicit,a=p(5);return vi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h(),T(1,e_e,2,1,"div",28)}if(t&2){let e=p().$implicit,i=p(5);H("id",e.key),Ni("ngModel",i.formModel[e.key]),Q(),O(e.description?1:-1)}}function t_e(t,A){if(t&1){let e=ae();I(0,"input",31),Fi("ngModelChange",function(n){L(e);let o=p(2).$implicit,a=p(5);return vi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(t&2){let e=p(2).$implicit,i=p(5);H("id",e.key),Ni("ngModel",i.formModel[e.key])}}function i_e(t,A){if(t&1){let e=ae();I(0,"input",32),Fi("ngModelChange",function(n){L(e);let o=p(2).$implicit,a=p(5);return vi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(t&2){let e=p(2).$implicit,i=p(5);H("id",e.key),Ni("ngModel",i.formModel[e.key])}}function n_e(t,A){if(t&1&&(I(0,"div",28),v(1),h()),t&2){let e=p(2).$implicit;Q(),ne(e.description)}}function o_e(t,A){if(t&1&&(T(0,t_e,1,2,"input",29)(1,i_e,1,2,"input",30),T(2,n_e,2,1,"div",28)),t&2){let e=p().$implicit;O(e.type==="number"||e.type==="integer"?0:1),Q(2),O(e.description?2:-1)}}function a_e(t,A){if(t&1&&(I(0,"div",25),v(1),T(2,$ke,1,0),h(),I(3,"div",26),T(4,A_e,2,3)(5,o_e,3,2),h()),t&2){let e=A.$implicit;Q(),pA(" ",e.title),Q(),O(e.required?2:-1),Q(2),O(e.type==="boolean"?4:5)}}function r_e(t,A){if(t&1){let e=ae();I(0,"div",21),RA(1,a_e,6,3,null,null,Jae),I(3,"div",23)(4,"button",24),U("click",function(){L(e);let n=p(4);return G(n.onSend())}),v(5," Submit "),h()()()}if(t&2){let e=p(4);Q(),NA(e.formFields)}}function s_e(t,A){if(t&1){let e=ae();I(0,"div",22)(1,"textarea",33),Fi("ngModelChange",function(n){L(e);let o=p(4);return vi(o.formModelJson,n)||(o.formModelJson=n),G(n)}),U("ngModelChange",function(n){L(e);let o=p(4);return G(o.onJsonInputChange(n))}),h()(),I(2,"div",23)(3,"button",24),U("click",function(){L(e);let n=p(4);return G(n.onSend())}),v(4," Submit "),h()()}if(t&2){let e=p(4);Q(),Ni("ngModel",e.formModelJson)}}function l_e(t,A){if(t&1&&(I(0,"div",22)(1,"pre"),v(2),h()()),t&2){let e=p(4);Q(2),ne(e.getPayloadJson())}}function c_e(t,A){if(t&1&&(I(0,"div",22)(1,"pre"),v(2),h()()),t&2){let e=p(4);Q(2),ne(e.getResponseSchemaJson())}}function g_e(t,A){if(t&1&&(I(0,"div",10),T(1,r_e,6,0,"div",21)(2,s_e,5,1)(3,l_e,3,1,"div",22)(4,c_e,3,1,"div",22),h()),t&2){let e=p(3);Q(),O(e.activeTab==="form"?1:e.activeTab==="json"?2:e.activeTab==="payload"?3:e.activeTab==="response schema"?4:-1)}}function C_e(t,A){if(t&1){let e=ae();I(0,"input",34),Fi("ngModelChange",function(n){L(e);let o=p(3);return vi(o.functionCall.userResponse,n)||(o.functionCall.userResponse=n),G(n)}),U("keydown.enter",function(){L(e);let n=p(3);return G(n.onSend())}),h(),I(1,"button",35),U("click",function(){L(e);let n=p(3);return G(n.onSend())}),I(2,"mat-icon"),v(3,"send"),h()()}if(t&2){let e=p(3);Ni("ngModel",e.functionCall.userResponse),Q(),H("disabled",!e.functionCall.userResponse)}}function d_e(t,A){if(t&1&&(I(0,"div",2)(1,"div",4),le(2,"app-markdown",5),h(),I(3,"div",6),T(4,Wke,9,8,"div",7),I(5,"div",8),T(6,Xke,15,5,"div",9)(7,g_e,5,1,"div",10)(8,C_e,4,2),h()()()),t&2){let e=p(2);Q(2),H("text",e.getPromptText()),Q(2),O(e.formFields.length>0?4:-1),Q(2),O(e.isConfirmationRequest?6:e.formFields.length>0?7:8)}}function I_e(t,A){if(t&1){let e=ae();I(0,"div",7)(1,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("form"))}),v(2,"Form"),h(),I(3,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("json"))}),v(4,"JSON"),h(),I(5,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("payload"))}),v(6,"Payload"),h(),I(7,"div",11),U("click",function(){L(e);let n=p(3);return G(n.setActiveTab("response schema"))}),v(8,"Schema"),h()()}if(t&2){let e=p(3);Q(),_e("active",e.activeTab==="form"),Q(2),_e("active",e.activeTab==="json"),Q(2),_e("active",e.activeTab==="payload"),Q(2),_e("active",e.activeTab==="response schema")}}function B_e(t,A){if(t&1){let e=ae();I(0,"div",9)(1,"div",12),v(2),h(),I(3,"div",13)(4,"div",14),v(5,"Payload"),h(),le(6,"app-custom-json-viewer",15),h(),I(7,"div",16)(8,"div",17)(9,"label",18)(10,"input",19),Fi("ngModelChange",function(n){L(e);let o=p(3);return vi(o.confirmationModel.confirmed,n)||(o.confirmationModel.confirmed=n),G(n)}),h(),I(11,"span"),v(12,"Confirmed"),h()()(),I(13,"button",20),U("click",function(){L(e);let n=p(3);return G(n.onSend())}),v(14," Submit "),h()()()}if(t&2){let e=p(3);Q(2),pA(" ",e.functionCall.args==null||e.functionCall.args.toolConfirmation==null?null:e.functionCall.args.toolConfirmation.hint," "),Q(4),H("json",e.functionCall.args==null||e.functionCall.args.originalFunctionCall==null?null:e.functionCall.args.originalFunctionCall.args),Q(4),H("id",nQ("confirmed-checkbox-standalone-",e.functionCall.id)),Ni("ngModel",e.confirmationModel.confirmed)}}function h_e(t,A){t&1&&v(0," *")}function u_e(t,A){if(t&1&&(I(0,"div",28),v(1),h()),t&2){let e=p(2).$implicit;Q(),ne(e.description)}}function E_e(t,A){if(t&1){let e=ae();I(0,"input",27),Fi("ngModelChange",function(n){L(e);let o=p().$implicit,a=p(5);return vi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h(),T(1,u_e,2,1,"div",28)}if(t&2){let e=p().$implicit,i=p(5);H("id",e.key),Ni("ngModel",i.formModel[e.key]),Q(),O(e.description?1:-1)}}function Q_e(t,A){if(t&1){let e=ae();I(0,"input",31),Fi("ngModelChange",function(n){L(e);let o=p(2).$implicit,a=p(5);return vi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(t&2){let e=p(2).$implicit,i=p(5);H("id",e.key),Ni("ngModel",i.formModel[e.key])}}function p_e(t,A){if(t&1){let e=ae();I(0,"input",32),Fi("ngModelChange",function(n){L(e);let o=p(2).$implicit,a=p(5);return vi(a.formModel[o.key],n)||(a.formModel[o.key]=n),G(n)}),h()}if(t&2){let e=p(2).$implicit,i=p(5);H("id",e.key),Ni("ngModel",i.formModel[e.key])}}function m_e(t,A){if(t&1&&(I(0,"div",28),v(1),h()),t&2){let e=p(2).$implicit;Q(),ne(e.description)}}function f_e(t,A){if(t&1&&(T(0,Q_e,1,2,"input",29)(1,p_e,1,2,"input",30),T(2,m_e,2,1,"div",28)),t&2){let e=p().$implicit;O(e.type==="number"||e.type==="integer"?0:1),Q(2),O(e.description?2:-1)}}function w_e(t,A){if(t&1&&(I(0,"div",25),v(1),T(2,h_e,1,0),h(),I(3,"div",26),T(4,E_e,2,3)(5,f_e,3,2),h()),t&2){let e=A.$implicit;Q(),pA(" ",e.title),Q(),O(e.required?2:-1),Q(2),O(e.type==="boolean"?4:5)}}function y_e(t,A){if(t&1){let e=ae();I(0,"div",21),RA(1,w_e,6,3,null,null,Jae),I(3,"div",23)(4,"button",24),U("click",function(){L(e);let n=p(4);return G(n.onSend())}),v(5," Submit "),h()()()}if(t&2){let e=p(4);Q(),NA(e.formFields)}}function v_e(t,A){if(t&1){let e=ae();I(0,"div",22)(1,"textarea",33),Fi("ngModelChange",function(n){L(e);let o=p(4);return vi(o.formModelJson,n)||(o.formModelJson=n),G(n)}),U("ngModelChange",function(n){L(e);let o=p(4);return G(o.onJsonInputChange(n))}),h()(),I(2,"div",23)(3,"button",24),U("click",function(){L(e);let n=p(4);return G(n.onSend())}),v(4," Submit "),h()()}if(t&2){let e=p(4);Q(),Ni("ngModel",e.formModelJson)}}function D_e(t,A){if(t&1&&(I(0,"div",22)(1,"pre"),v(2),h()()),t&2){let e=p(4);Q(2),ne(e.getPayloadJson())}}function b_e(t,A){if(t&1&&(I(0,"div",22)(1,"pre"),v(2),h()()),t&2){let e=p(4);Q(2),ne(e.getResponseSchemaJson())}}function M_e(t,A){if(t&1&&(I(0,"div",10),T(1,y_e,6,0,"div",21)(2,v_e,5,1)(3,D_e,3,1,"div",22)(4,b_e,3,1,"div",22),h()),t&2){let e=p(3);Q(),O(e.activeTab==="form"?1:e.activeTab==="json"?2:e.activeTab==="payload"?3:e.activeTab==="response schema"?4:-1)}}function S_e(t,A){if(t&1){let e=ae();I(0,"input",34),Fi("ngModelChange",function(n){L(e);let o=p(3);return vi(o.functionCall.userResponse,n)||(o.functionCall.userResponse=n),G(n)}),U("keydown.enter",function(){L(e);let n=p(3);return G(n.onSend())}),h(),I(1,"button",35),U("click",function(){L(e);let n=p(3);return G(n.onSend())}),I(2,"mat-icon"),v(3,"send"),h()()}if(t&2){let e=p(3);Ni("ngModel",e.functionCall.userResponse),Q(),H("disabled",!e.functionCall.userResponse)}}function k_e(t,A){if(t&1&&(I(0,"div",3),T(1,I_e,9,8,"div",7),I(2,"div",8),T(3,B_e,15,5,"div",9)(4,M_e,5,1,"div",10)(5,S_e,4,2),h()()),t&2){let e=p(2);Q(),O(e.formFields.length>0?1:-1),Q(2),O(e.isConfirmationRequest?3:e.formFields.length>0?4:5)}}function __e(t,A){if(t&1&&(I(0,"div",1),U("click",function(i){return i.stopPropagation()}),T(1,d_e,9,3,"div",2)(2,k_e,6,2,"div",3),h()),t&2){let e=p();Q(),O(e.hasMessage()?1:2)}}var z5=class t{functionCall;appName;userId;sessionId;responseComplete=new Le;formModel={};formFields=[];activeTab="form";formModelJson="";confirmationModel={confirmed:!1,payload:""};get isConfirmationRequest(){return this.functionCall?.name==="adk_request_confirmation"}cdr=w(xt);ngOnChanges(A){A.functionCall&&this.initForm()}initForm(){if(this.formModel={},this.formFields=[],this.isConfirmationRequest){this.confirmationModel.confirmed=this.functionCall.args?.toolConfirmation?.confirmed||!1,this.confirmationModel.payload=JSON.stringify(this.functionCall.args?.originalFunctionCall?.args||{},null,2);return}let A=this.functionCall?.args?.response_schema;if(A&&A.type==="object"&&A.properties)for(let e of Object.keys(A.properties)){let i=A.properties[e],n=i.type;if(!n&&i.anyOf){let o=i.anyOf.find(a=>a.type!=="null");o&&(n=o.type)}this.formFields.push({key:e,type:n,title:i.title||e,description:i.description||"",required:A.required?.includes(e)||!1}),n==="boolean"?this.formModel[e]=!1:n==="number"||n==="integer"?this.formModel[e]=null:this.formModel[e]=""}}getCleanedFormModel(){let A=this.functionCall?.args?.response_schema;if(!A||A.type!=="object"||!A.properties)return this.formModel;let e=Y({},this.formModel);for(let i of Object.keys(A.properties)){let n=A.properties[i],o=e[i];if(o!=null&&o!==""){let a=n.type;if(!a&&n.anyOf){let r=n.anyOf.find(s=>s.type!=="null");r&&(a=r.type)}a==="integer"?e[i]=parseInt(o,10):a==="number"&&(e[i]=parseFloat(o))}else e[i]=null}return e}updateFormModelJson(){this.formModelJson=JSON.stringify(this.getCleanedFormModel(),null,2)}onJsonInputChange(A){try{let e=JSON.parse(A);this.formModel=e}catch(e){}}setActiveTab(A){this.activeTab=A,A==="json"&&this.updateFormModelJson()}hasMessage(){return!!(this.functionCall.args?.prompt||this.functionCall.args?.message)}getPromptText(){return this.functionCall.args?.prompt||this.functionCall.args?.message||"Please provide your response"}hasPayload(){return this.functionCall.args?.payload!==void 0&&this.functionCall.args?.payload!==null}getPayloadJson(){try{return JSON.stringify(this.functionCall.args?.payload||{},null,2)}catch(A){return""}}hasResponseSchema(){return!!this.functionCall.args?.response_schema}getResponseSchemaJson(){try{return JSON.stringify(this.functionCall.args?.response_schema||{},null,2)}catch(A){return""}}onSend(){if(this.isConfirmationRequest){let o={};try{o=JSON.parse(this.confirmationModel.payload)}catch(s){o=this.functionCall.args?.originalFunctionCall?.args||{}}let a={confirmed:this.confirmationModel.confirmed,payload:o};this.functionCall.responseStatus="sent",this.cdr.detectChanges();let r={role:"user",parts:[{functionResponse:{id:this.functionCall.id,name:this.functionCall.name,response:a}}],functionCallEventId:this.functionCall.functionCallEventId};this.responseComplete.emit(r);return}let A,e=this.functionCall?.args?.response_schema;if(e&&e.type==="object"&&e.properties&&this.formFields.length>0){let o=this.getCleanedFormModel();A=o,this.functionCall.userResponse=JSON.stringify(o),this.functionCall.sentUserResponse=this.functionCall.userResponse}else{if(!this.functionCall.userResponse||!this.functionCall.userResponse.trim())return;this.functionCall.sentUserResponse=this.functionCall.userResponse;try{let o=JSON.parse(this.functionCall.userResponse);typeof o=="object"&&o!==null?A=o:A={result:this.functionCall.userResponse}}catch(o){A={result:this.functionCall.userResponse}}}this.functionCall.responseStatus="sent",this.cdr.detectChanges();let n={role:"user",parts:[{functionResponse:{id:this.functionCall.id,name:this.functionCall.name,response:A}}],functionCallEventId:this.functionCall.functionCallEventId};this.responseComplete.emit(n)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-long-running-response"]],inputs:{functionCall:"functionCall",appName:"appName",userId:"userId",sessionId:"sessionId"},outputs:{responseComplete:"responseComplete"},features:[ai],decls:1,vars:1,consts:[[1,"response-chip-container"],[1,"response-chip-container",3,"click"],[1,"message-box"],[1,"request-card-standalone"],[1,"message-content"],[3,"text"],[1,"request-card"],[1,"tabs-header"],[1,"input-container"],[1,"confirmation-container",2,"width","100%"],[1,"tabs-content"],[1,"tab-link",3,"click"],[1,"confirmation-hint",2,"margin-bottom","10px","font-size","13px","font-weight","600","color","var(--mat-sys-on-surface)"],[1,"confirmation-payload",2,"margin-bottom","10px"],[1,"field-label",2,"margin-bottom","5px","font-size","12px","font-weight","500","color","var(--mat-sys-on-surface-variant)"],[3,"json"],[1,"confirmation-footer",2,"display","flex","justify-content","space-between","align-items","center","margin-top","10px"],[1,"confirmation-checkbox",2,"font-size","12px"],[2,"display","flex","align-items","center","gap","6px","cursor","pointer"],["type","checkbox",2,"cursor","pointer",3,"ngModelChange","id","ngModel"],["mat-raised-button","","color","primary",1,"form-submit-button",2,"margin-top","0",3,"click"],[1,"schema-form","grid-layout"],[1,"json-view"],[1,"grid-submit"],["mat-raised-button","","color","primary",1,"form-submit-button",3,"click"],[1,"grid-label"],[1,"grid-value"],["type","checkbox",3,"ngModelChange","id","ngModel"],[1,"field-description"],["type","number",1,"form-input",3,"id","ngModel"],["type","text",1,"form-input",3,"id","ngModel"],["type","number",1,"form-input",3,"ngModelChange","id","ngModel"],["type","text",1,"form-input",3,"ngModelChange","id","ngModel"],[1,"json-textarea",3,"ngModelChange","ngModel"],["placeholder","Enter your response...",1,"response-input",3,"ngModelChange","keydown.enter","ngModel"],["mat-icon-button","",1,"send-button",3,"click","disabled"]],template:function(e,i){e&1&&T(0,__e,3,1,"div",0),e&2&&O(i.functionCall.responseStatus!=="sent"&&i.functionCall.responseStatus!=="sending"?0:-1)},dependencies:[wn,Kn,uQ,lM,Un,Po,Di,xi,Vt,G2,_l],styles:["[_nghost-%COMP%]{display:block}.response-chip-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;margin:5px 5px 5px 0}.message-box[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high);border:1px solid var(--mat-sys-outline-variant);border-radius:20px;padding:12px 16px;box-shadow:none;display:flex;flex-direction:column;gap:12px}.message-content[_ngcontent-%COMP%]{flex:1;font-size:12px}.request-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px;width:100%}.request-card-standalone[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--mat-sys-surface-container-high) 70%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid color-mix(in srgb,var(--mat-sys-outline-variant) 30%,transparent);border-radius:12px;padding:12px;box-shadow:0 4px 16px #0003;display:flex;flex-direction:column;gap:8px;max-width:400px}.data-buttons[_ngcontent-%COMP%]{display:flex;gap:8px}.input-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;width:100%}.input-container[_ngcontent-%COMP%] .response-input[_ngcontent-%COMP%]{flex:1;border:1px solid var(--mat-sys-outline-variant);border-radius:4px;padding:4px 8px;background:var(--mat-sys-surface-container);outline:none;font-size:12px;font-family:inherit;color:var(--mat-sys-on-surface);caret-color:var(--mat-sys-primary)}.input-container[_ngcontent-%COMP%] .response-input[_ngcontent-%COMP%]::placeholder{color:var(--mat-sys-on-surface-variant);opacity:.6}.input-container[_ngcontent-%COMP%] .send-button[_ngcontent-%COMP%]{color:var(--mat-sys-primary);width:24px;height:24px;min-width:24px;padding:0;line-height:24px;box-sizing:border-box}.input-container[_ngcontent-%COMP%] .send-button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface-variant);opacity:.3}.input-container[_ngcontent-%COMP%] .send-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}.tabs-header[_ngcontent-%COMP%]{display:flex;gap:8px;border-bottom:1px solid var(--mat-sys-outline-variant);margin-bottom:8px;padding-bottom:4px}.tab-link[_ngcontent-%COMP%]{font-size:11px;font-weight:500;color:var(--mat-sys-on-surface-variant);cursor:pointer;padding:2px 6px;border-radius:4px}.tab-link[_ngcontent-%COMP%]:hover{background:var(--mat-sys-surface-container-high)}.tab-link.active[_ngcontent-%COMP%]{color:var(--mat-sys-primary);background:var(--mat-sys-primary-container)}.tabs-content[_ngcontent-%COMP%]{width:100%}.json-view[_ngcontent-%COMP%]{padding:4px 0;max-height:200px;overflow:auto}.json-view[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:0;font-size:10px;font-family:monospace;color:var(--mat-sys-on-surface)}.json-view[_ngcontent-%COMP%] .json-textarea[_ngcontent-%COMP%]{width:100%;height:150px;margin:0;font-size:10px;font-family:monospace;color:var(--mat-sys-on-surface);background:transparent;border:1px solid var(--mat-sys-outline-variant);border-radius:4px;padding:4px;resize:vertical;box-sizing:border-box}.json-view[_ngcontent-%COMP%] .json-textarea[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--mat-sys-primary)}.schema-form.grid-layout[_ngcontent-%COMP%]{display:grid;grid-template-columns:max-content 1fr;gap:4px 8px;align-items:start;width:100%;padding:4px 2px}.grid-label[_ngcontent-%COMP%]{font-size:11px;font-weight:500;color:var(--mat-sys-on-surface);text-align:right;white-space:nowrap;padding-top:6px}.grid-value[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px;width:100%}.grid-value[_ngcontent-%COMP%] .form-input[_ngcontent-%COMP%]{width:100%;border:1px solid var(--mat-sys-outline-variant);border-radius:4px;padding:4px 6px;font-size:11px;background:var(--mat-sys-surface-container);color:var(--mat-sys-on-surface);box-sizing:border-box;height:28px}.grid-value[_ngcontent-%COMP%] .form-input[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--mat-sys-primary)}.grid-value[_ngcontent-%COMP%] input[type=checkbox][_ngcontent-%COMP%]{margin:4px 0;align-self:flex-start}.field-description[_ngcontent-%COMP%]{font-size:10px;color:var(--mat-sys-on-surface-variant);opacity:.8}.grid-submit[_ngcontent-%COMP%]{grid-column:1/-1;display:flex;justify-content:flex-end;margin-top:4px}.form-submit-button[_ngcontent-%COMP%]{align-self:flex-end;margin-top:2px;height:28px!important;line-height:28px!important;font-size:11px!important}"]})};function x_e(t,A){if(t&1&&le(0,"a2ui-surface",0),t&2){let e=p();H("surfaceId",e.surfaceId())("surface",e.surface())}}var Y5=class t{processor=w(HJ);beginRendering=null;surfaceUpdate=null;dataModelUpdate=null;surfaceId=fe(null);activeSurface=fe(null);surface=DA(()=>this.activeSurface());constructor(){}ngOnChanges(A){let e=[],i=null;A.beginRendering&&this.beginRendering&&Object.keys(this.beginRendering).length>0&&(e.push(this.beginRendering),i=this.beginRendering?.beginRendering?.surfaceId??i),A.surfaceUpdate&&this.surfaceUpdate&&Object.keys(this.surfaceUpdate).length>0&&(e.push(this.surfaceUpdate),i=this.surfaceUpdate?.surfaceUpdate?.surfaceId??i),A.dataModelUpdate&&this.dataModelUpdate&&Object.keys(this.dataModelUpdate).length>0&&(e.push(this.dataModelUpdate),i=this.dataModelUpdate?.dataModelUpdate?.surfaceId??i),e.length>0&&this.processor.processMessages(e),i&&this.surfaceId.set(i);let n=this.surfaceId();if(n){let o=this.processor.getSurfaces();o.has(n)&&this.activeSurface.set(o.get(n))}}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-a2ui-canvas"]],inputs:{beginRendering:"beginRendering",surfaceUpdate:"surfaceUpdate",dataModelUpdate:"dataModelUpdate"},features:[ai],decls:1,vars:1,consts:[[3,"surfaceId","surface"]],template:function(e,i){e&1&&T(0,x_e,1,2,"a2ui-surface",0),e&2&&O(i.surface()?0:-1)},dependencies:[Ci,VJ],styles:["[_nghost-%COMP%]{display:block;height:100%;width:100%;overflow:auto}[_nghost-%COMP%] *{box-sizing:border-box}.canvas[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px;padding:16px;box-sizing:border-box;min-height:100%}"],changeDetection:0})};var P5=(t,A)=>({text:t,thought:A});function R_e(t,A){if(t&1&&(I(0,"div",1),v(1),h()),t&2){let e=p();Q(),ne(e.type)}}function N_e(t,A){if(t&1&&le(0,"img",8),t&2){let e=p().$implicit;H("src",e.url,wo)}}function F_e(t,A){if(t&1&&(I(0,"a",9),v(1),h()),t&2){let e=p(2).$implicit;H("href",e.url,wo),Q(),ne(e.file.name)}}function L_e(t,A){if(t&1&&v(0),t&2){let e=p(2).$implicit;pA(" ",e.file.name," ")}}function G_e(t,A){if(t&1&&(I(0,"mat-icon"),v(1,"insert_drive_file"),h(),T(2,F_e,2,2,"a",9)(3,L_e,1,1)),t&2){let e=p().$implicit;Q(2),O(e.url?2:3)}}function K_e(t,A){if(t&1&&(I(0,"div",7),T(1,N_e,1,1,"img",8),T(2,G_e,4,1),h()),t&2){let e=A.$implicit;Q(),O(e.file.type.startsWith("image/")?1:-1),Q(),O(e.file.type.startsWith("image/")?-1:2)}}function U_e(t,A){if(t&1&&(I(0,"div",4),RA(1,K_e,3,2,"div",7,ri),h()),t&2){let e=p(2);Q(),NA(e.uiEvent.attachments)}}function T_e(t,A){t&1&&(I(0,"div",1),v(1,"thought"),h())}function O_e(t,A){if(t&1&&(I(0,"div"),T(1,T_e,2,0,"div",1),Bn(2,10),h()),t&2){let e=A.$implicit,i=A.$index,n=p(4);_e("thought-container",e.thought&&n.type!=="thought")("not-first-part",i!==0),Q(),O(e.thought&&n.type!=="thought"?1:-1),Q(),H("ngComponentOutlet",n.markdownComponent)("ngComponentOutletInputs",tC(7,P5,e.text,e.thought))}}function J_e(t,A){if(t&1&&RA(0,O_e,3,10,"div",11,ri),t&2){let e=p(3);NA(e.uiEvent.textParts)}}function z_e(t,A){if(t&1&&Bn(0,10),t&2){let e=p(3);H("ngComponentOutlet",e.markdownComponent)("ngComponentOutletInputs",tC(2,P5,e.uiEvent.text||e.rawMessageText,e.uiEvent.thought))}}function Y_e(t,A){if(t&1&&(I(0,"div",5),T(1,J_e,2,0)(2,z_e,1,5,"ng-container",10),h()),t&2){let e=p(2);H("appJsonTooltip",e.jsonOutputData),Q(),O(e.uiEvent.textParts&&e.uiEvent.textParts.length>0?1:2)}}function H_e(t,A){if(t&1){let e=ae();I(0,"div",13)(1,"textarea",14,0),U("ngModelChange",function(n){L(e);let o=p(4);return G(o.userEditEvalCaseMessageChange.emit(n))})("keydown",function(n){L(e);let o=p(4);return G(o.handleKeydown.emit({event:n,message:o.uiEvent}))}),h(),I(3,"div",15)(4,"span",16),U("click",function(){L(e);let n=p(4);return G(n.cancelEditMessage.emit(n.uiEvent))}),v(5," close "),h(),I(6,"span",17),U("click",function(){L(e);let n=p(4);return G(n.saveEditMessage.emit(n.uiEvent))}),v(7," check "),h()()()}if(t&2){let e=p(4);Q(),H("ngModel",e.userEditEvalCaseMessage),Q(3),H("matTooltip",e.i18n.cancelEditingTooltip),Q(2),H("matTooltip",e.i18n.saveEvalMessageTooltip)}}function P_e(t,A){t&1&&(I(0,"div",1),v(1,"thought"),h())}function j_e(t,A){if(t&1&&(I(0,"div"),T(1,P_e,2,0,"div",1),Bn(2,10),h()),t&2){let e=A.$implicit,i=A.$index,n=p(6);_e("thought-container",e.thought&&n.type!=="thought")("not-first-part",i!==0),Q(),O(e.thought&&n.type!=="thought"?1:-1),Q(),H("ngComponentOutlet",n.markdownComponent)("ngComponentOutletInputs",tC(7,P5,e.text,e.thought))}}function V_e(t,A){if(t&1&&RA(0,j_e,3,10,"div",11,ri),t&2){let e=p(5);NA(e.uiEvent.textParts)}}function q_e(t,A){if(t&1&&Bn(0,10),t&2){let e=p(5);H("ngComponentOutlet",e.markdownComponent)("ngComponentOutletInputs",tC(2,P5,e.uiEvent.text,e.uiEvent.thought))}}function Z_e(t,A){if(t&1&&T(0,V_e,2,0)(1,q_e,1,5,"ng-container",10),t&2){let e=p(4);O(e.uiEvent.textParts&&e.uiEvent.textParts.length>0?0:1)}}function W_e(t,A){if(t&1&&T(0,H_e,8,3,"div",13)(1,Z_e,2,1),t&2){let e=p(3);O(e.uiEvent.isEditing?0:1)}}function X_e(t,A){if(t&1&&(I(0,"div"),le(1,"div",18),h()),t&2){let e=p(3);Q(),H("innerHTML",e.renderGooglerSearch(e.uiEvent.renderedContent),Xg)}}function $_e(t,A){if(t&1&&le(0,"app-a2ui-canvas",12),t&2){let e=p(3);H("beginRendering",e.uiEvent.a2uiData.beginRendering)("surfaceUpdate",e.uiEvent.a2uiData.surfaceUpdate)("dataModelUpdate",e.uiEvent.a2uiData.dataModelUpdate)}}function exe(t,A){if(t&1&&(I(0,"div")(1,"div"),T(2,W_e,2,1),h(),T(3,X_e,2,1,"div"),T(4,$_e,1,3,"app-a2ui-canvas",12),h()),t&2){let e=p(2);Q(2),O(e.uiEvent.text?2:-1),Q(),O(e.uiEvent.renderedContent?3:-1),Q(),O(e.uiEvent.a2uiData?4:-1)}}function Axe(t,A){if(t&1&&(I(0,"code"),v(1),h()),t&2){let e=p(2);Q(),pA(" ",e.uiEvent.executableCode.code," ")}}function txe(t,A){if(t&1&&(I(0,"div")(1,"div"),v(2),h(),I(3,"div"),v(4),h()()),t&2){let e=p(2);Q(2),Va("",e.i18n.outcomeLabel,": ",e.uiEvent.codeExecutionResult.outcome),Q(2),Va("",e.i18n.outputLabel,": ",e.uiEvent.codeExecutionResult.output)}}function ixe(t,A){if(t&1){let e=ae();I(0,"div",19)(1,"img",21),U("click",function(){L(e);let n=p(4);return G(n.openViewImageDialog.emit(n.uiEvent.inlineData.data))}),h()()}if(t&2){let e=p(4);Q(),H("src",e.uiEvent.inlineData.data,wo)}}function nxe(t,A){if(t&1&&(I(0,"div"),le(1,"app-audio-player",22),h()),t&2){let e=p(4);Q(),H("base64data",e.uiEvent.inlineData.data)}}function oxe(t,A){if(t&1&&(I(0,"div",20),le(1,"video",23),h()),t&2){let e=p(4);Q(),H("src",e.uiEvent.inlineData.data,wo)}}function axe(t,A){if(t&1){let e=ae();I(0,"div")(1,"div",25)(2,"mat-icon",26),v(3,"description"),h(),I(4,"a",27),U("click",function(){L(e);let n=p(5);return G(n.openBase64InNewTab.emit({data:n.uiEvent.inlineData.data,mimeType:n.uiEvent.inlineData.mimeType}))}),v(5),h()()()}if(t&2){let e=p(5);Q(5),pA(" ",e.uiEvent.inlineData.name," ")}}function rxe(t,A){if(t&1&&(I(0,"div",24)(1,"pre",28),v(2),h()()),t&2){let e=p(5);Q(2),ne(e.getTextContent(e.uiEvent.inlineData.data))}}function sxe(t,A){if(t&1&&T(0,axe,6,1,"div")(1,rxe,3,1,"div",24),t&2){let e=p(4);O(e.uiEvent.inlineData.mimeType==="text/html"?0:1)}}function lxe(t,A){if(t&1){let e=ae();I(0,"div")(1,"button",29),U("click",function(){L(e);let n=p(4);return G(n.openBase64InNewTab.emit({data:n.uiEvent.inlineData.data,mimeType:n.uiEvent.inlineData.mimeType}))}),v(2),h()()}if(t&2){let e=p(4);Q(2),pA(" ",e.uiEvent.inlineData.name," ")}}function cxe(t,A){if(t&1&&(I(0,"div")(1,"div"),T(2,ixe,2,1,"div",19)(3,nxe,2,1,"div")(4,oxe,2,1,"div",20)(5,sxe,2,1)(6,lxe,3,1,"div"),h()()),t&2){let e,i=p(3);Q(2),O((e=i.uiEvent.inlineData.mediaType)===i.MediaType.IMAGE?2:e===i.MediaType.AUDIO?3:e===i.MediaType.VIDEO?4:e===i.MediaType.TEXT?5:6)}}function gxe(t,A){if(t&1){let e=ae();I(0,"div")(1,"img",30),U("click",function(){L(e);let n=p(4);return G(n.openViewImageDialog.emit(n.uiEvent.inlineData.data))}),h()()}if(t&2){let e=p(4);Q(),H("src",e.uiEvent.inlineData.data,wo)}}function Cxe(t,A){if(t&1&&(I(0,"div",20),le(1,"video",23),h()),t&2){let e=p(4);Q(),H("src",e.uiEvent.inlineData.data,wo)}}function dxe(t,A){if(t&1&&(I(0,"div",7)(1,"mat-icon"),v(2,"insert_drive_file"),h(),I(3,"a",9),v(4),h()()),t&2){let e=p(4);Q(3),H("href",e.uiEvent.inlineData.data,wo),Q(),ne(e.uiEvent.inlineData.displayName)}}function Ixe(t,A){if(t&1&&(I(0,"div"),T(1,gxe,2,1,"div")(2,Cxe,2,1,"div",20)(3,dxe,5,2,"div",7),h()),t&2){let e=p(3);Q(),O(e.uiEvent.inlineData.mimeType.startsWith("image/")?1:e.uiEvent.inlineData.mimeType.startsWith("video/")?2:3)}}function Bxe(t,A){if(t&1&&T(0,cxe,7,1,"div")(1,Ixe,4,1,"div"),t&2){let e=p(2);O(e.uiEvent.role==="bot"?0:1)}}function hxe(t,A){if(t&1&&(I(0,"div",31),le(1,"app-audio-player",22),h()),t&2){let e=p(4);Q(),H("base64data",e.audioUrl||"")}}function uxe(t,A){if(t&1&&T(0,hxe,2,1,"div",31),t&2){let e=A.$implicit;O(e.fileData&&e.fileData.mimeType.startsWith("audio/")?0:-1)}}function Exe(t,A){if(t&1&&RA(0,uxe,1,1,null,null,ri),t&2){let e=p(2);NA(e.uiEvent.event==null||e.uiEvent.event.content==null?null:e.uiEvent.event.content.parts)}}function Qxe(t,A){if(t&1&&(I(0,"div",34)(1,"div",35),v(2),h(),le(3,"app-custom-json-viewer",36),h(),I(4,"div",37)(5,"div",38),v(6),h(),le(7,"app-custom-json-viewer",36),h()),t&2){let e=p(3);Q(2),ne(e.i18n.actualToolUsesLabel),Q(),H("json",e.uiEvent.actualInvocationToolUses),Q(3),ne(e.i18n.expectedToolUsesLabel),Q(),H("json",e.uiEvent.expectedInvocationToolUses)}}function pxe(t,A){if(t&1&&(I(0,"div",34)(1,"div",35),v(2),h(),I(3,"div"),v(4),h()(),I(5,"div",37)(6,"div",38),v(7),h(),I(8,"div"),v(9),h()()),t&2){let e=p(3);Q(2),ne(e.i18n.actualResponseLabel),Q(2),ne(e.uiEvent.actualFinalResponse),Q(3),ne(e.i18n.expectedResponseLabel),Q(2),ne(e.uiEvent.expectedFinalResponse)}}function mxe(t,A){if(t&1&&(I(0,"div",33)(1,"span",39),v(2),h(),I(3,"span",40),v(4),h()()),t&2){let e=p(3);Q(2),Va("",e.i18n.matchScoreLabel,": ",e.uiEvent.evalScore),Q(2),Va("",e.i18n.thresholdLabel,": ",e.uiEvent.evalThreshold)}}function fxe(t,A){if(t&1&&(I(0,"div",6)(1,"div",32),T(2,Qxe,8,4)(3,pxe,10,4),h(),T(4,mxe,5,4,"div",33),h()),t&2){let e=p(2);Q(2),O(e.uiEvent.actualInvocationToolUses?2:e.uiEvent.actualFinalResponse?3:-1),Q(2),O(e.uiEvent.evalScore!==void 0&&e.uiEvent.evalThreshold!==void 0?4:-1)}}function wxe(t,A){if(t&1&&(T(0,U_e,3,0,"div",4),T(1,Y_e,3,2,"div",5)(2,exe,5,3,"div"),T(3,Axe,2,1,"code"),T(4,txe,5,4,"div"),T(5,Bxe,2,1),T(6,Exe,2,0),T(7,fxe,5,2,"div",6)),t&2){let e=p();O(e.uiEvent.attachments?0:-1),Q(),O(e.uiEvent.event.nodeInfo!=null&&e.uiEvent.event.nodeInfo.messageAsOutput?1:e.uiEvent.thought||e.uiEvent.text||e.uiEvent.renderedContent||e.uiEvent.a2uiData||e.uiEvent.event.inputTranscription||e.uiEvent.event.outputTranscription?2:-1),Q(2),O(e.uiEvent.executableCode?3:-1),Q(),O(e.uiEvent.codeExecutionResult?4:-1),Q(),O(e.uiEvent.inlineData?5:-1),Q(),O(!(e.uiEvent.event==null||e.uiEvent.event.content==null)&&e.uiEvent.event.content.parts?6:-1),Q(),O(e.uiEvent.failedMetric&&e.uiEvent.evalStatus===2?7:-1)}}function yxe(t,A){if(t&1&&le(0,"app-custom-json-viewer",2),t&2){let e=p();H("json",e.uiEvent.event.output)("appJsonTooltip",(e.uiEvent.event.nodeInfo==null?null:e.uiEvent.event.nodeInfo.outputFor)||e.uiEvent.nodePath)}}function vxe(t,A){if(t&1&&le(0,"app-custom-json-viewer",3),t&2){let e=p();H("json",e.uiEvent.error)("appJsonTooltip",e.uiEvent.error)}}function Dxe(t,A){if(t&1&&v(0),t&2){let e=p(2);pA(" ",e.uiEvent.event.inputTranscription.text," ")}}function bxe(t,A){if(t&1&&v(0),t&2){let e=p(2);pA(" ",e.uiEvent.event.outputTranscription.text," ")}}function Mxe(t,A){if(t&1&&T(0,Dxe,1,1)(1,bxe,1,1),t&2){let e=p();O(e.role==="user"&&e.uiEvent.event.inputTranscription?0:e.role==="bot"&&e.uiEvent.event.outputTranscription?1:-1)}}var H5=class t{uiEvent;type="message";role="bot";evalStatus;userEditEvalCaseMessage="";userEditEvalCaseMessageChange=new Le;handleKeydown=new Le;cancelEditMessage=new Le;saveEditMessage=new Le;openViewImageDialog=new Le;openBase64InNewTab=new Le;i18n=w(N2);sanitizer=w(ys);markdownComponent=w(x2);MediaType=wC;renderGooglerSearch(A){return this.sanitizer.bypassSecurityTrustHtml(A)}get rawMessageText(){let A=this.uiEvent.event?.content?.parts;return A?A.filter(e=>e.text).map(e=>e.text).join(""):""}get jsonOutputData(){if(this.uiEvent.event?.nodeInfo?.messageAsOutput===!0){let A=this.rawMessageText;if(A)try{return JSON.parse(A)}catch(e){return null}}return null}get hasAudio(){if(this.uiEvent.inlineData?.mediaType==="audio")return!0;let A=this.uiEvent.event?.content?.parts;return A?A.some(e=>e.fileData&&e.fileData.mimeType&&e.fileData.mimeType.startsWith("audio/")):!1}get noBubble(){if(this.uiEvent.text||this.rawMessageText)return!1;if(this.uiEvent.inlineData){let e=this.uiEvent.inlineData.mediaType;if(e==="audio"||e==="image"||e==="video"||e==="text")return!0}if(this.uiEvent.inlineData?.mimeType){let e=this.uiEvent.inlineData.mimeType;if(e.startsWith("audio/")||e.startsWith("image/")||e.startsWith("video/"))return!0}let A=this.uiEvent.event?.content?.parts;return A?A.some(e=>e.fileData&&e.fileData.mimeType&&(e.fileData.mimeType.startsWith("audio/")||e.fileData.mimeType.startsWith("image/")||e.fileData.mimeType.startsWith("video/"))):!1}getTextContent(A){if(!A)return"";let e=A.indexOf(",");if(e===-1)return"";let i=A.substring(e+1);try{return atob(i)}catch(n){return"Failed to decode text content"}}audioUrl=null;ngOnChanges(A){A.uiEvent&&this.uiEvent&&this.checkAndLoadAudio()}http=w(Nr);artifactService=w(eh);changeDetectorRef=w(xt);checkAndLoadAudio(){let A=this.uiEvent.event?.content?.parts;if(A){let e=A.find(i=>i.fileData&&i.fileData.mimeType&&i.fileData.mimeType.startsWith("audio/pcm"));e&&e.fileData&&this.loadAudio(e.fileData.fileUri)}}loadAudio(A){if(!A||!A.startsWith("artifact://"))return;let e=A.substring(11).split("/"),i=e[0],n=e[1],o=e[2],a=e.slice(3).join("/"),r=a.indexOf("#"),s=r!==-1?a.substring(0,r):a,l=r!==-1?a.substring(r+1):"0",c=s.lastIndexOf("/"),C=c!==-1?s.substring(c+1):s;this.artifactService.getLatestArtifact(n,i,o,C).subscribe(d=>{let B="";if(d.inlineData&&d.inlineData.data?B=d.inlineData.data:d.data&&(B=d.data),B){let E=this.base64ToArrayBuffer(B),u=E.byteLength-E.byteLength%2,m=E.slice(0,u),D=this.pcmToWav(m,24e3,1),S=new FileReader;S.onloadend=()=>{this.audioUrl=S.result,this.changeDetectorRef.detectChanges()},S.readAsDataURL(D)}})}base64ToArrayBuffer(A){let e=A.replace(/\s/g,""),i=e.indexOf(",");for(i!==-1&&(e=e.substring(i+1)),e=e.replace(/-/g,"+").replace(/_/g,"/");e.length%4!==0;)e+="=";let n=window.atob(e),o=n.length,a=new Uint8Array(o);for(let r=0;re.toString(16).padStart(2,"0")).join(" ")}pcmToWav(A,e,i){let n=new ArrayBuffer(44),o=new DataView(n);return this.writeString(o,0,"RIFF"),o.setUint32(4,36+A.byteLength,!0),this.writeString(o,8,"WAVE"),this.writeString(o,12,"fmt "),o.setUint32(16,16,!0),o.setUint16(20,1,!0),o.setUint16(22,i,!0),o.setUint32(24,e,!0),o.setUint32(28,e*i*2,!0),o.setUint16(32,i*2,!0),o.setUint16(34,16,!0),this.writeString(o,36,"data"),o.setUint32(40,A.byteLength,!0),new Blob([n,A],{type:"audio/wav"})}writeString(A,e,i){for(let n=0;n0?6:7)}}function Rxe(t,A){if(t&1&&(I(0,"span"),v(1),h()),t&2){let e=A.$implicit;Ao("token-"+e.type),Q(),ne(e.value)}}function Nxe(t,A){if(t&1&&RA(0,Rxe,2,3,"span",24,ja),t&2){let e=p().$implicit;NA(e.right.tokens)}}function Fxe(t,A){if(t&1&&v(0),t&2){let e=p().$implicit;ne(e.right.value)}}function Lxe(t,A){if(t&1&&(I(0,"div",20)(1,"span",21),v(2),h(),I(3,"span",22),v(4),h(),I(5,"span",23),T(6,Nxe,2,0)(7,Fxe,1,1),h()()),t&2){let e=A.$implicit;_e("line-added",e.right.type==="added")("line-empty",e.right.type==="empty")("line-unchanged",e.right.type==="unchanged"),Q(2),ne(e.right.lineNumber||""),Q(2),ne(e.right.type==="added"?"+":""),Q(2),O(e.right.tokens&&e.right.tokens.length>0?6:7)}}var j5=class t{dialogRef=w(Pn);data=w(Do);diffRows=[];ngOnInit(){let A=this.data.precedingInstruction||"",e=this.data.currentInstruction||"",i=this.diffLines(A,e);this.diffRows=this.alignDiff(i)}diffLines(A,e){let i=A.split(` +`),n=e.split(` +`),o=i.length,a=n.length,r=Array.from({length:o+1},()=>Array(a+1).fill(0));for(let C=1;C<=o;C++)for(let d=1;d<=a;d++)i[C-1]===n[d-1]?r[C][d]=r[C-1][d-1]+1:r[C][d]=Math.max(r[C-1][d],r[C][d-1]);let s=[],l=o,c=a;for(;l>0||c>0;)l>0&&c>0&&i[l-1]===n[c-1]?(s.unshift({type:"unchanged",value:i[l-1],leftLineNumber:l,rightLineNumber:c}),l--,c--):c>0&&(l===0||r[l][c-1]>=r[l-1][c])?(s.unshift({type:"added",value:n[c-1],rightLineNumber:c}),c--):(s.unshift({type:"removed",value:i[l-1],leftLineNumber:l}),l--);return s}alignDiff(A){let e=[],i=0;for(;iArray(a+1).fill(0));for(let d=1;d<=o;d++)for(let B=1;B<=a;B++)i[d-1]===n[B-1]?r[d][B]=r[d-1][B-1]+1:r[d][B]=Math.max(r[d-1][B],r[d][B-1]);let s=o,l=a,c=[],C=[];for(;s>0||l>0;)if(s>0&&l>0&&i[s-1]===n[l-1]){let d=i[s-1];c.unshift({type:"unchanged",value:d}),C.unshift({type:"unchanged",value:d}),s--,l--}else l>0&&(s===0||r[s][l-1]>=r[s-1][l])?(C.unshift({type:"added",value:n[l-1]}),l--):(c.unshift({type:"removed",value:i[s-1]}),s--);return{left:this.mergeTokens(c),right:this.mergeTokens(C)}}mergeTokens(A){if(A.length===0)return[];let e=[A[0]];for(let i=1;i({"eval-pass":t,"eval-fail":A}),vL=t=>({hidden:t}),DL=(t,A)=>A.id;function Kxe(t,A){if(t&1){let e=ae();I(0,"app-content-bubble",11),U("userEditEvalCaseMessageChange",function(n){L(e);let o=p();return G(o.userEditEvalCaseMessageChange.emit(n))})("handleKeydown",function(n){L(e);let o=p();return G(o.handleKeydown.emit(n))})("cancelEditMessage",function(n){L(e);let o=p();return G(o.cancelEditMessage.emit(n))})("saveEditMessage",function(n){L(e);let o=p();return G(o.saveEditMessage.emit(n))})("openViewImageDialog",function(n){L(e);let o=p();return G(o.onImageClick(n))})("openBase64InNewTab",function(n){L(e);let o=p();return G(o.openBase64InNewTab.emit(n))}),h()}if(t&2){let e=p();H("type",e.uiEvent.thought?"thought":"message")("role",e.uiEvent.role)("evalStatus",e.uiEvent.evalStatus)("uiEvent",e.uiEvent)("userEditEvalCaseMessage",e.userEditEvalCaseMessage)}}function Uxe(t,A){if(t&1&&le(0,"app-content-bubble",2),t&2){let e=p();H("uiEvent",e.uiEvent)}}function Txe(t,A){if(t&1&&le(0,"app-content-bubble",3),t&2){let e=p();H("role","user")("uiEvent",e.uiEvent)}}function Oxe(t,A){if(t&1&&le(0,"app-content-bubble",3),t&2){let e=p();H("role","bot")("uiEvent",e.uiEvent)}}function Jxe(t,A){if(t&1){let e=ae();I(0,"app-hover-info-button",12),U("buttonClick",function(n){L(e);let o=p();return G(o.openSystemInstructionDiffDialog(n))}),h()}t&2&&H("icon","warning")("text","Performance")("tooltipContent","System instructions modified between turns, causing a context cache miss and increasing latency. Click to compare changes and view the diff.")("tooltipTitle","Performance Warning")}function zxe(t,A){t&1&&le(0,"app-hover-info-button",6),t&2&&H("icon","stop_circle")("text","Turn Complete")("tooltipContent","The agent has completed this turn")("tooltipTitle","Turn Complete")}function Yxe(t,A){t&1&&le(0,"app-hover-info-button",6),t&2&&H("icon","report")("text","Interrupted")("tooltipContent","The stream was interrupted")("tooltipTitle","Interrupted")}function Hxe(t,A){if(t&1&&le(0,"app-hover-info-button",6),t&2){let e=A.$implicit,i=p(2);H("icon","bolt")("text",i.getFunctionCallButtonText(e))("tooltipContent",e.args||"")("tooltipTitle","Function Call")}}function Pxe(t,A){if(t&1){let e=ae();I(0,"app-computer-action",16),U("clickEvent",function(n){L(e);let o=p(3);return G(o.clickEvent.emit(n))})("openImage",function(n){L(e);let o=p(3);return G(o.openViewImageDialog.emit(n))}),h()}if(t&2){let e=p().$implicit,i=p(2);H("functionCall",e)("allMessages",i.uiEvents)("index",i.index)}}function jxe(t,A){if(t&1&&T(0,Pxe,1,3,"app-computer-action",15),t&2){let e=A.$implicit,i=p(2);O(i.isComputerUseClick(e)?0:-1)}}function Vxe(t,A){if(t&1&&(I(0,"div",13),RA(1,Hxe,1,4,"app-hover-info-button",6,DL),h(),I(3,"div",14),RA(4,jxe,1,1,null,null,DL),h()),t&2){let e=p();Q(),NA(e.uiEvent.functionCalls),Q(3),NA(e.uiEvent.functionCalls)}}function qxe(t,A){if(t&1){let e=ae();I(0,"app-computer-action",19),U("clickEvent",function(n){L(e);let o=p(3);return G(o.clickEvent.emit(n))}),h()}if(t&2){let e=p().$implicit,i=p(2);H("functionResponse",e)("allMessages",i.uiEvents)("index",i.index)}}function Zxe(t,A){if(t&1){let e=ae();I(0,"div",18),le(1,"app-hover-info-button",6),I(2,"button",20),U("click",function(n){return n.stopPropagation()}),I(3,"mat-icon",21),v(4,"more_vert"),h()(),I(5,"mat-menu",null,0)(7,"button",22),U("click",function(){L(e);let n=p().$implicit,o=p(2);return G(o.openSendAnotherResponseDialog(n))}),I(8,"span"),v(9,"Send another response"),h()()()()}if(t&2){let e=Ei(6),i=p().$implicit;Q(),H("icon","check")("text",i.name)("tooltipContent",i.response||"")("tooltipTitle","Function Response"),Q(),H("matMenuTriggerFor",e)}}function Wxe(t,A){if(t&1&&T(0,qxe,1,3,"app-computer-action",17)(1,Zxe,10,5,"div",18),t&2){let e=A.$implicit,i=p(2);O(i.isComputerUseResponse(e)?0:1)}}function Xxe(t,A){if(t&1&&RA(0,Wxe,2,1,null,null,ri),t&2){let e=p();NA(e.uiEvent.functionResponses)}}function $xe(t,A){if(t&1&&le(0,"app-hover-info-button",6),t&2){let e=p(),i=Ti(10);H("icon","data_object")("text","State: "+i.join(", "))("tooltipContent",e.getFilteredStateDelta(e.uiEvent.stateDelta))("tooltipTitle","State Update")}}function eRe(t,A){if(t&1&&le(0,"app-hover-info-button",6),t&2){p();let e=Ti(0),i=p();H("icon","attachment")("text","Artifact: "+e.join(", "))("tooltipContent",i.uiEvent.artifactDelta)("tooltipTitle","Artifact")}}function ARe(t,A){if(t&1&&(so(0),T(1,eRe,1,4,"app-hover-info-button",6)),t&2){let e=p(),i=lo(e.Object.keys(e.uiEvent.artifactDelta));Q(),O(i.length>0?1:-1)}}function tRe(t,A){if(t&1&&le(0,"app-content-bubble",7),t&2){let e=p();H("uiEvent",e.uiEvent)}}function iRe(t,A){if(t&1&&le(0,"app-hover-info-button",6),t&2){let e=p();H("icon","route")("text","route: "+e.String(e.uiEvent.route))("tooltipContent",e.uiEvent.route)("tooltipTitle","Route")}}function nRe(t,A){if(t&1&&le(0,"app-hover-info-button",6),t&2){let e=p();H("icon","swap_horiz")("text",e.uiEvent.author+" \u2192 "+e.getTransferTargetName())("tooltipContent",e.uiEvent.transferToAgent)("tooltipTitle","Transfer to Agent")}}function oRe(t,A){if(t&1){let e=ae();I(0,"button",23),U("click",function(n){L(e);let o=p();return G(o.agentStateClick.emit({event:n,index:o.index}))}),I(1,"mat-icon"),v(2,"account_tree"),h(),v(3," Agent State "),h()}if(t&2){let e=p();H("appWorkflowGraphTooltip",e.getWorkflowNodes())("agentGraphData",e.agentGraphData)("nodePath",e.uiEvent.nodePath)("allNodes",e.allWorkflowNodes)}}function aRe(t,A){if(t&1&&le(0,"app-hover-info-button",9),t&2){let e=p();H("icon","check_circle")("text",e.getEndOfAgentAuthor()+" completed!")}}function rRe(t,A){if(t&1){let e=ae();I(0,"app-long-running-response",25),U("responseComplete",function(n){L(e);let o=p(3);return G(o.longRunningResponseComplete.emit(n))}),h()}if(t&2){let e=p().$implicit,i=p(2);H("functionCall",e)("appName",i.appName)("userId",i.userId)("sessionId",i.sessionId)}}function sRe(t,A){if(t&1&&T(0,rRe,1,4,"app-long-running-response",24),t&2){let e=A.$implicit,i=p(2);O(e.needsResponse&&!i.hasFunctionResponse(e.id)?0:-1)}}function lRe(t,A){if(t&1&&RA(0,sRe,1,1,null,null,DL),t&2){let e=p();NA(e.uiEvent.functionCalls)}}function cRe(t,A){if(t&1&&(I(0,"div",10)(1,"span",26),v(2),h()()),t&2){let e=p();H("ngClass",tC(2,Gxe,e.uiEvent.evalStatus===1,e.uiEvent.evalStatus===2)),Q(2),ne(e.uiEvent.evalStatus===1?e.i18n.evalPassLabel:e.uiEvent.evalStatus===2?e.i18n.evalFailLabel:"")}}function gRe(t,A){if(t&1){let e=ae();I(0,"div")(1,"span",27),U("click",function(){L(e);let n=p(2);return G(n.editEvalCaseMessage.emit(n.uiEvent))}),v(2," edit "),h(),I(3,"span",27),U("click",function(){L(e);let n=p(2);return G(n.deleteEvalCaseMessage.emit({message:n.uiEvent,index:n.index}))}),v(4," delete "),h()()}if(t&2){let e=p(2);Q(),H("ngClass",sc(4,vL,e.isEvalCaseEditing))("matTooltip",e.i18n.editEvalMessageTooltip),Q(2),H("ngClass",sc(6,vL,e.isEvalCaseEditing))("matTooltip",e.i18n.deleteEvalMessageTooltip)}}function CRe(t,A){if(t&1){let e=ae();I(0,"div")(1,"span",27),U("click",function(){L(e);let n=p(2);return G(n.editFunctionArgs.emit(n.uiEvent))}),v(2," edit "),h()()}if(t&2){let e=p(2);Q(),H("ngClass",sc(2,vL,e.isEvalCaseEditing))("matTooltip",e.i18n.editFunctionArgsTooltip)}}function dRe(t,A){if(t&1&&T(0,gRe,5,8,"div")(1,CRe,3,4,"div"),t&2){let e=p();O(e.uiEvent.text?0:e.isEditFunctionArgsEnabled&&e.uiEvent.functionCalls&&e.uiEvent.functionCalls.length>0?1:-1)}}var cE=class t{uiEvent;index;uiEvents=[];appName="";userId="";sessionId="";sessionName="";evalCase=null;isEvalEditMode=!1;isEvalCaseEditing=!1;isEditFunctionArgsEnabled=!1;userEditEvalCaseMessage="";agentGraphData=null;allWorkflowNodes=null;handleKeydown=new Le;cancelEditMessage=new Le;saveEditMessage=new Le;userEditEvalCaseMessageChange=new Le;openViewImageDialog=new Le;openBase64InNewTab=new Le;editEvalCaseMessage=new Le;deleteEvalCaseMessage=new Le;editFunctionArgs=new Le;clickEvent=new Le;longRunningResponseComplete=new Le;agentStateClick=new Le;i18n=w(N2);dialog=w(nr);Object=Object;String=String;getFunctionCallButtonText(A){let e=A.args;if(e&&typeof e=="string")try{e=JSON.parse(e)}catch(i){}if(e&&typeof e=="object"){let i={EditFile:"path",WriteFile:"path"};if(A.name in i){let o=i[A.name];if(o in e){let a=this.formatPythonValue(e[o]),r=Object.keys(e).length>1;return`${A.name}(${a}${r?", \u2026":""})`}}let n=Object.keys(e);if(n.length===1){let o=e[n[0]],a=this.formatPythonValue(o);return`${A.name}(${a})`}else if(n.length===0)return`${A.name}()`}else if(!e)return`${A.name}()`;return A.name}formatPythonValue(A){return A==null?"None":typeof A=="boolean"?A?"True":"False":typeof A=="string"?`"${A}"`:typeof A=="object"?JSON.stringify(A).replace(/\btrue\b/g,"True").replace(/\bfalse\b/g,"False").replace(/\bnull\b/g,"None"):String(A)}shouldShowMessageCard(A){return!!(A.text||A.attachments||A.inlineData||A.executableCode||A.codeExecutionResult||A.a2uiData||A.renderedContent||A.isLoading||A.failedMetric&&A.evalStatus===2||A.event?.content?.parts?.some(e=>e.fileData))}isComputerUseClick(A){return lE(A)}isComputerUseResponse(A){return j0(A)}getFilteredStateKeys(A){return A?Object.keys(A).filter(e=>e!=="__llm_request_key__"):[]}getFilteredStateDelta(A){if(!A)return null;let e=Y({},A);return delete e.__llm_request_key__,e}hasWorkflowNodes(){let A=this.uiEvent.event?.actions?.agentState?.nodes;return!!A&&Object.keys(A).length>0}getWorkflowNodes(){return this.uiEvent.event?.actions?.agentState?.nodes||null}hasEndOfAgent(){return this.uiEvent.event?.actions?.endOfAgent===!0}getEndOfAgentAuthor(){return this.uiEvent.event?.author||"Agent"}getTransferTargetName(){let A=this.uiEvent.transferToAgent;return A?typeof A=="string"?A:A.agentName||A.name||A.targetAgent||JSON.stringify(A):""}hasFunctionResponse(A){return A?this.uiEvents.some(e=>e.functionResponses?.some(i=>i.id===A&&i.response?.status!=="pending")):!1}openSendAnotherResponseDialog(A){let e="",i=A.id;if(i){for(let o of this.uiEvents)if(o.functionCalls){let a=o.functionCalls.find(r=>r.id===i);if(a){e=a.functionCallEventId||o.event?.id||"";break}}}this.dialog.open(J1,{data:{dialogHeader:"Send Another Response",functionName:A.name,jsonContent:A.response},width:"600px"}).afterClosed().subscribe(o=>{if(o){let a={role:"user",parts:[{functionResponse:{id:i,name:A.name,response:o}}],functionCallEventId:e};this.longRunningResponseComplete.emit(a)}})}getAllImages(){let A=[],e=new Set,i=n=>{e.has(n)||(e.add(n),A.push(n))};for(let n of this.uiEvents){if(n.attachments)for(let a of n.attachments)a.file.type.startsWith("image/")&&a.url&&i(a.url);n.inlineData?.mimeType?.startsWith("image/")&&n.inlineData.data&&i(n.inlineData.data);let o=n.event?.content?.parts;if(Array.isArray(o)){for(let a of o)if(a.inlineData?.mimeType?.startsWith("image/")&&a.inlineData.data){let r=a.inlineData.mimeType,s=a.inlineData.data.replace(/-/g,"+").replace(/_/g,"/");i(`data:${r};base64,${s}`)}}if(n.functionResponses){for(let a of n.functionResponses)if(this.isComputerUseResponse(a)){let s=a.response?.image;if(s?.data){let l=s.data,c=s.mimetype||"image/png",C=l.startsWith("data:")?l:`data:${c};base64,${l}`;i(C)}}}}return A}onImageClick(A){let e=this.getAllImages(),i=e.indexOf(A);this.openViewImageDialog.emit({images:e,currentIndex:i})}openSystemInstructionDiffDialog(A){A.stopPropagation();let e=this.uiEvent.event.precedingSystemInstruction||"",i=this.uiEvent.event.currentSystemInstruction||"";this.dialog.open(j5,{data:{precedingInstruction:e,currentInstruction:i},maxWidth:"95vw",maxHeight:"95vh",width:"85vw",height:"90vh",panelClass:"system-instruction-diff-dialog-panel"})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-event-content"]],inputs:{uiEvent:"uiEvent",index:"index",uiEvents:"uiEvents",appName:"appName",userId:"userId",sessionId:"sessionId",sessionName:"sessionName",evalCase:"evalCase",isEvalEditMode:"isEvalEditMode",isEvalCaseEditing:"isEvalCaseEditing",isEditFunctionArgsEnabled:"isEditFunctionArgsEnabled",userEditEvalCaseMessage:"userEditEvalCaseMessage",agentGraphData:"agentGraphData",allWorkflowNodes:"allWorkflowNodes"},outputs:{handleKeydown:"handleKeydown",cancelEditMessage:"cancelEditMessage",saveEditMessage:"saveEditMessage",userEditEvalCaseMessageChange:"userEditEvalCaseMessageChange",openViewImageDialog:"openViewImageDialog",openBase64InNewTab:"openBase64InNewTab",editEvalCaseMessage:"editEvalCaseMessage",deleteEvalCaseMessage:"deleteEvalCaseMessage",editFunctionArgs:"editFunctionArgs",clickEvent:"clickEvent",longRunningResponseComplete:"longRunningResponseComplete",agentStateClick:"agentStateClick"},decls:21,vars:20,consts:[["responseMenu","matMenu"],[3,"type","role","evalStatus","uiEvent","userEditEvalCaseMessage"],["type","output",3,"uiEvent"],["type","transcription",3,"role","uiEvent"],[1,"event-chips-container"],[1,"performance-warning-btn",3,"icon","text","tooltipContent","tooltipTitle"],[3,"icon","text","tooltipContent","tooltipTitle"],["type","error",3,"uiEvent"],["mat-stroked-button","",1,"event-action-button",3,"appWorkflowGraphTooltip","agentGraphData","nodePath","allNodes"],[3,"icon","text"],[3,"ngClass"],[3,"userEditEvalCaseMessageChange","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","type","role","evalStatus","uiEvent","userEditEvalCaseMessage"],[1,"performance-warning-btn",3,"buttonClick","icon","text","tooltipContent","tooltipTitle"],[1,"function-calls-buttons"],[1,"function-calls-previews"],[3,"functionCall","allMessages","index"],[3,"clickEvent","openImage","functionCall","allMessages","index"],[3,"functionResponse","allMessages","index"],[1,"function-response-chip-container"],[3,"clickEvent","functionResponse","allMessages","index"],["mat-icon-button","",1,"menu-trigger-btn",3,"click","matMenuTriggerFor"],[1,"more-icon"],["mat-menu-item","",3,"click"],["mat-stroked-button","",1,"event-action-button",3,"click","appWorkflowGraphTooltip","agentGraphData","nodePath","allNodes"],[3,"functionCall","appName","userId","sessionId"],[3,"responseComplete","functionCall","appName","userId","sessionId"],[2,"font-family","monospace"],[1,"material-symbols-outlined","eval-case-edit-button",3,"click","ngClass","matTooltip"]],template:function(e,i){if(e&1&&(T(0,Kxe,1,5,"app-content-bubble",1),T(1,Uxe,1,1,"app-content-bubble",2),T(2,Txe,1,2,"app-content-bubble",3),T(3,Oxe,1,2,"app-content-bubble",3),I(4,"div",4),T(5,Jxe,1,4,"app-hover-info-button",5),T(6,zxe,1,4,"app-hover-info-button",6),T(7,Yxe,1,4,"app-hover-info-button",6),T(8,Vxe,6,0),T(9,Xxe,2,0),so(10),T(11,$xe,1,4,"app-hover-info-button",6),T(12,ARe,2,2),T(13,tRe,1,1,"app-content-bubble",7),T(14,iRe,1,4,"app-hover-info-button",6),T(15,nRe,1,4,"app-hover-info-button",6),T(16,oRe,4,4,"button",8),T(17,aRe,1,2,"app-hover-info-button",9),h(),T(18,lRe,2,0),T(19,cRe,3,5,"div",10),T(20,dRe,2,1)),e&2){O(i.shouldShowMessageCard(i.uiEvent)?0:-1),Q(),O(i.uiEvent.event.output?1:-1),Q(),O(i.uiEvent.event.inputTranscription?2:-1),Q(),O(i.uiEvent.event.outputTranscription?3:-1),Q(2),O(i.uiEvent.event.systemInstructionChanged?5:-1),Q(),O(i.uiEvent.event.turnComplete?6:-1),Q(),O(i.uiEvent.event.interrupted?7:-1),Q(),O(i.uiEvent.functionCalls&&i.uiEvent.functionCalls.length>0?8:-1),Q(),O(i.uiEvent.functionResponses&&i.uiEvent.functionResponses.length>0?9:-1),Q();let n=lo(i.getFilteredStateKeys(i.uiEvent.stateDelta));Q(),O(n.length>0?11:-1),Q(),O(i.uiEvent.artifactDelta?12:-1),Q(),O(i.uiEvent.error?13:-1),Q(),O(i.uiEvent.route?14:-1),Q(),O(i.uiEvent.transferToAgent?15:-1),Q(),O(i.hasWorkflowNodes()?16:-1),Q(),O(i.hasEndOfAgent()?17:-1),Q(),O(i.uiEvent.functionCalls&&i.uiEvent.functionCalls.length>0?18:-1),Q(),O(i.uiEvent.evalStatus===1||i.uiEvent.evalStatus===2?19:-1),Q(),O(i.evalCase&&i.isEvalEditMode?20:-1)}},dependencies:[Ci,lc,Tn,Vt,Wi,xi,Di,qa,ln,T5,O5,z5,J5,H5,kd,fs,zs,uc],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;width:100%}app-content-bubble[_ngcontent-%COMP%] + app-content-bubble[_ngcontent-%COMP%]{margin-top:5px}.event-chips-container[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;width:100%}.user[_nghost-%COMP%] .event-chips-container[_ngcontent-%COMP%], .user [_nghost-%COMP%] .event-chips-container[_ngcontent-%COMP%]{justify-content:flex-end}.eval-case-edit-button[_ngcontent-%COMP%]{cursor:pointer;margin-left:4px;margin-right:4px}.eval-pass[_ngcontent-%COMP%]{display:flex;color:#2e7d32}.eval-fail[_ngcontent-%COMP%]{display:flex;color:var(--mat-sys-error)}.hidden[_ngcontent-%COMP%]{visibility:hidden}.event-action-button[_ngcontent-%COMP%]{margin:5px}.function-calls-previews[_ngcontent-%COMP%]{width:100%}.function-response-chip-container[_ngcontent-%COMP%]{display:inline-flex;align-items:center;position:relative}.function-response-chip-container[_ngcontent-%COMP%] .menu-trigger-btn[_ngcontent-%COMP%]{visibility:hidden;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0;position:absolute;right:10px;top:50%;transform:translateY(-50%);background-color:var(--mat-sys-surface-container-high);border-radius:50%;z-index:2}.function-response-chip-container[_ngcontent-%COMP%] .menu-trigger-btn[_ngcontent-%COMP%] .more-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.function-response-chip-container[_ngcontent-%COMP%]:hover .menu-trigger-btn[_ngcontent-%COMP%]{visibility:visible} .performance-warning-btn.hover-info-button, .performance-warning-btn .hover-info-button{background-color:#ffb3001a!important;border:1px solid rgba(255,179,0,.3)!important} .performance-warning-btn.hover-info-button mat-icon, .performance-warning-btn .hover-info-button mat-icon{color:#ffb300!important} .performance-warning-btn.hover-info-button:hover, .performance-warning-btn .hover-info-button:hover{background-color:#ffb30033!important;box-shadow:0 2px 6px #ffb30026}html.light-theme[_ngcontent-%COMP%] .performance-warning-btn.hover-info-button, html.light-theme[_ngcontent-%COMP%] .performance-warning-btn .hover-info-button{background-color:#e6510014!important;border:1px solid rgba(230,81,0,.3)!important}html.light-theme[_ngcontent-%COMP%] .performance-warning-btn.hover-info-button mat-icon, html.light-theme[_ngcontent-%COMP%] .performance-warning-btn .hover-info-button mat-icon{color:#e65100!important}html.light-theme[_ngcontent-%COMP%] .performance-warning-btn.hover-info-button:hover, html.light-theme[_ngcontent-%COMP%] .performance-warning-btn .hover-info-button:hover{background-color:#e6510026!important;box-shadow:0 2px 6px #e6510026}"]})};function IRe(t,A){if(t&1&&le(0,"app-chat-avatar",1),t&2){let e=p();H("role",e.uiEvent.event.content?"bot":"node")("author",e.uiEvent.author)("nodePath",e.uiEvent.nodePath)}}function BRe(t,A){t&1&&le(0,"div",4)}function hRe(t,A){if(t&1&&RA(0,BRe,1,0,"div",4,ri),t&2){let e=p();NA(e.indentationArray)}}function uRe(t,A){t&1&&le(0,"app-chat-avatar")}function ERe(t,A){if(t&1&&le(0,"app-message-feedback",3),t&2){let e=p();H("sessionName",e.sessionName)("eventId",e.uiEvent.event.id||"")}}var V5=class t{uiEvent;index;uiEvents=[];isSelected=!1;isSelectable=!0;appName="";userId="";sessionId="";sessionName="";evalCase=null;isEvalEditMode=!1;isEvalCaseEditing=!1;isEditFunctionArgsEnabled=!1;userEditEvalCaseMessage="";agentGraphData=null;allWorkflowNodes=null;isUserFeedbackEnabled=!1;isLoadingAgentResponse=!1;rowClick=new Le;handleKeydown=new Le;cancelEditMessage=new Le;saveEditMessage=new Le;userEditEvalCaseMessageChange=new Le;openViewImageDialog=new Le;openBase64InNewTab=new Le;editEvalCaseMessage=new Le;deleteEvalCaseMessage=new Le;editFunctionArgs=new Le;clickEvent=new Le;longRunningResponseComplete=new Le;agentStateClick=new Le;onRowClick(A){this.isSelectable&&this.rowClick.emit({event:A,uiEvent:this.uiEvent,index:this.index})}get indentationDepth(){if(!this.uiEvent.nodePath)return 0;let e=this.uiEvent.nodePath.split("/").filter(Boolean).length;return e>2?e-2:0}get indentationArray(){let A=this.indentationDepth;return A>0?Array.from({length:A},(e,i)=>i):[]}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-event-row"]],hostAttrs:[1,"message-row-container"],hostVars:8,hostBindings:function(e,i){e&1&&U("click",function(o){return i.onRowClick(o)}),e&2&&_e("selected",i.isSelected)("user",i.uiEvent.role==="user")("bot",i.uiEvent.role==="bot")("selectable",i.isSelectable)},inputs:{uiEvent:"uiEvent",index:"index",uiEvents:"uiEvents",isSelected:"isSelected",isSelectable:"isSelectable",appName:"appName",userId:"userId",sessionId:"sessionId",sessionName:"sessionName",evalCase:"evalCase",isEvalEditMode:"isEvalEditMode",isEvalCaseEditing:"isEvalCaseEditing",isEditFunctionArgsEnabled:"isEditFunctionArgsEnabled",userEditEvalCaseMessage:"userEditEvalCaseMessage",agentGraphData:"agentGraphData",allWorkflowNodes:"allWorkflowNodes",isUserFeedbackEnabled:"isUserFeedbackEnabled",isLoadingAgentResponse:"isLoadingAgentResponse"},outputs:{rowClick:"rowClick",handleKeydown:"handleKeydown",cancelEditMessage:"cancelEditMessage",saveEditMessage:"saveEditMessage",userEditEvalCaseMessageChange:"userEditEvalCaseMessageChange",openViewImageDialog:"openViewImageDialog",openBase64InNewTab:"openBase64InNewTab",editEvalCaseMessage:"editEvalCaseMessage",deleteEvalCaseMessage:"deleteEvalCaseMessage",editFunctionArgs:"editFunctionArgs",clickEvent:"clickEvent",longRunningResponseComplete:"longRunningResponseComplete",agentStateClick:"agentStateClick"},decls:7,vars:21,consts:[[1,"event-number-container"],[3,"role","author","nodePath"],[1,"message-content",3,"userEditEvalCaseMessageChange","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","clickEvent","longRunningResponseComplete","agentStateClick","uiEvent","index","uiEvents","appName","userId","sessionId","sessionName","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userEditEvalCaseMessage","agentGraphData","allWorkflowNodes"],[3,"sessionName","eventId"],[1,"indentation-line"]],template:function(e,i){e&1&&(I(0,"div",0),v(1),h(),T(2,IRe,1,3,"app-chat-avatar",1),T(3,hRe,2,0),I(4,"app-event-content",2),U("userEditEvalCaseMessageChange",function(o){return i.userEditEvalCaseMessageChange.emit(o)})("handleKeydown",function(o){return i.handleKeydown.emit(o)})("cancelEditMessage",function(o){return i.cancelEditMessage.emit(o)})("saveEditMessage",function(o){return i.saveEditMessage.emit(o)})("openViewImageDialog",function(o){return i.openViewImageDialog.emit(o)})("openBase64InNewTab",function(o){return i.openBase64InNewTab.emit(o)})("editEvalCaseMessage",function(o){return i.editEvalCaseMessage.emit(o)})("deleteEvalCaseMessage",function(o){return i.deleteEvalCaseMessage.emit(o)})("editFunctionArgs",function(o){return i.editFunctionArgs.emit(o)})("clickEvent",function(o){return i.clickEvent.emit(o)})("longRunningResponseComplete",function(o){return i.longRunningResponseComplete.emit(o)})("agentStateClick",function(o){return i.agentStateClick.emit(o)}),h(),T(5,uRe,1,0,"app-chat-avatar"),T(6,ERe,1,2,"app-message-feedback",3)),e&2&&(_e("hidden",!i.isSelectable),Q(),pA(" #",i.index+1," "),Q(),O(i.uiEvent.role==="bot"&&!i.uiEvent.isLoading?2:-1),Q(),O(i.uiEvent.role==="bot"?3:-1),Q(),H("uiEvent",i.uiEvent)("index",i.index)("uiEvents",i.uiEvents)("appName",i.appName)("userId",i.userId)("sessionId",i.sessionId)("sessionName",i.sessionName)("evalCase",i.evalCase)("isEvalEditMode",i.isEvalEditMode)("isEvalCaseEditing",i.isEvalCaseEditing)("isEditFunctionArgsEnabled",i.isEditFunctionArgsEnabled)("userEditEvalCaseMessage",i.userEditEvalCaseMessage)("agentGraphData",i.agentGraphData)("allWorkflowNodes",i.allWorkflowNodes),Q(),O(i.uiEvent.role==="user"?5:-1),Q(),O(i.isUserFeedbackEnabled&&!i.isLoadingAgentResponse&&i.uiEvent.role==="bot"?6:-1))},dependencies:[Ci,K5,L5,cE],styles:[".generated-image-container[_ngcontent-%COMP%]{max-width:400px;margin-left:20px}.generated-image[_ngcontent-%COMP%]{max-width:100%;min-width:40px;border-radius:8px}.html-artifact-container[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:flex-start;align-items:center}app-content-bubble[_ngcontent-%COMP%] + app-content-bubble[_ngcontent-%COMP%]{margin-top:5px}.event-chips-container[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;align-items:center;width:100%}[_nghost-%COMP%]{display:flex;flex-direction:row;flex-wrap:nowrap;margin-left:-20px;margin-right:-20px;padding:4px 20px;border-radius:4px;transition:all .2s ease}.selectable[_nghost-%COMP%]:hover{box-shadow:inset 0 0 0 2px var(--mat-sys-outline-variant, rgba(0, 0, 0, .12))}.selected[_nghost-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))!important}app-message-feedback[_ngcontent-%COMP%]{width:100%}.user[_nghost-%COMP%]{justify-content:flex-end;align-items:flex-start;gap:15px}.bot[_nghost-%COMP%]{align-items:flex-start;padding-right:48px}.bot[_nghost-%COMP%] app-chat-avatar[_ngcontent-%COMP%]{align-self:flex-start}.message-content[_ngcontent-%COMP%]{display:contents}.bot[_nghost-%COMP%] > .message-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-width:0;align-items:flex-start}.user[_nghost-%COMP%] > .message-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;min-width:0;align-items:flex-end}.bot[_nghost-%COMP%]:focus-within app-content-bubble[_ngcontent-%COMP%] .content-bubble{border:1px solid var(--mat-sys-outline)}.message-textarea[_ngcontent-%COMP%]{max-width:100%;border:none;background-color:transparent;font-family:Google Sans,Helvetica Neue,sans-serif}.message-textarea[_ngcontent-%COMP%]:focus{outline:none}.edit-message-buttons-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}app-content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%]{visibility:hidden;position:absolute;left:10px;overflow:hidden;border-radius:20px;padding:5px 20px;margin-bottom:10px;font-size:16px}app-content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .actual-result[_ngcontent-%COMP%]{border-right:2px solid var(--mat-sys-outline-variant);padding-right:8px;min-width:350px;max-width:350px}app-content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .expected-result[_ngcontent-%COMP%]{padding-left:12px;min-width:350px;max-width:350px}app-content-bubble[_ngcontent-%COMP%]:hover .eval-compare-container[_ngcontent-%COMP%]{visibility:visible}.actual-expected-compare-container[_ngcontent-%COMP%]{display:flex}.score-threshold-container[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:10px;align-items:center;margin-top:15px;font-size:14px;font-weight:600}.eval-response-header[_ngcontent-%COMP%]{padding-bottom:5px;border-bottom:2px solid var(--mat-sys-outline-variant);font-style:italic;font-weight:700}.header-expected[_ngcontent-%COMP%]{color:var(--mat-sys-tertiary)}.header-actual[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.eval-case-edit-button[_ngcontent-%COMP%]{cursor:pointer;margin-left:4px;margin-right:4px}.eval-pass[_ngcontent-%COMP%]{display:flex;color:#2e7d32}.eval-fail[_ngcontent-%COMP%]{display:flex;color:var(--mat-sys-error)}.hidden[_ngcontent-%COMP%]{visibility:hidden}.image-preview-chat[_ngcontent-%COMP%]{max-width:90%;max-height:70vh;width:auto;height:auto;border-radius:8px;cursor:pointer;transition:transform .2s ease-in-out}.attachment[_ngcontent-%COMP%]{display:flex;align-items:center}[_nghost-%COMP%] .message-text p{white-space:pre-line;word-break:break-word;overflow-wrap:break-word}.event-number-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-self:flex-start;min-width:30px;margin-top:10px;margin-right:8px;font-size:12px;font-weight:600;text-align:center;color:var(--mat-sys-on-surface-variant)}[_nghost-%COMP%] pre{white-space:pre-wrap;word-break:break-word;overflow-x:auto;max-width:100%}.link-style-button[_ngcontent-%COMP%]{border:none;padding:0;font:inherit;color:var(--mat-sys-primary)!important;text-decoration:underline;cursor:pointer;outline:none;font-size:14px}.cancel-edit-button[_ngcontent-%COMP%]{width:24px;height:24px;color:var(--mat-sys-outline-variant);cursor:pointer;margin-right:16px}.save-edit-button[_ngcontent-%COMP%]{width:24px;height:24px;color:var(--mat-sys-primary);cursor:pointer;margin-right:16px}.indentation-line[_ngcontent-%COMP%]{width:20px;border-left:1px solid var(--mat-sys-outline-variant);align-self:stretch;opacity:.5;margin-top:-4px;margin-bottom:-4px}@media(max-width:768px){[_nghost-%COMP%]{margin-left:-12px!important;margin-right:-12px!important;padding:4px 12px!important}.bot[_nghost-%COMP%]{padding-right:12px!important}.indentation-line[_ngcontent-%COMP%]{width:12px!important}.event-number-container[_ngcontent-%COMP%]{min-width:20px!important;margin-right:4px!important}}"]})};function QRe(t,A){if(t&1){let e=ae();I(0,"button",3),U("click",function(){L(e);let n=p();return G(n.toggleVideoRecording.emit())}),I(1,"mat-icon"),v(2,"videocam"),h()(),I(3,"div",4),le(4,"div",5)(5,"div",5)(6,"div",5)(7,"div",5),h()}if(t&2){let e=p();_e("recording",e.isVideoRecording),H("matTooltip",e.isVideoRecording?e.i18n.turnOffCamTooltip:e.i18n.useCamTooltip)("disabled",e.disabled||!e.isBidiStreamingEnabled),Q(4),vt("height",4+e.micVolume*16,"px"),Q(),vt("height",4+e.micVolume*24,"px"),Q(),vt("height",4+e.micVolume*18,"px"),Q(),vt("height",4+e.micVolume*14,"px")}}function pRe(t,A){if(t&1){let e=ae();I(0,"div",2)(1,"div",6),v(2,"Live Flags"),h(),I(3,"div",7)(4,"mat-checkbox",8),U("change",function(n){L(e);let o=p();return G(o.flags.proactiveAudio=n.checked)}),v(5,"Proactive Audio"),h()(),I(6,"div",7)(7,"mat-checkbox",8),U("change",function(n){L(e);let o=p();return G(o.flags.enableAffectiveDialog=n.checked)}),v(8,"Affective Dialog"),h()(),I(9,"div",7)(10,"mat-checkbox",8),U("change",function(n){L(e);let o=p();return G(o.flags.enableSessionResumption=n.checked)}),v(11,"Session Resumption"),h()(),I(12,"div",7)(13,"mat-checkbox",8),U("change",function(n){L(e);let o=p();return G(o.flags.saveLiveBlob=n.checked)}),v(14,"Save Live Blob"),h()()()}if(t&2){let e=p();Q(4),H("checked",e.flags.proactiveAudio)("matTooltip",e.i18n.proactiveAudioTooltip)("disabled",e.disabled),Q(3),H("checked",e.flags.enableAffectiveDialog)("matTooltip",e.i18n.affectiveDialogTooltip)("disabled",e.disabled),Q(3),H("checked",e.flags.enableSessionResumption)("matTooltip",e.i18n.sessionResumptionTooltip)("disabled",e.disabled),Q(3),H("checked",e.flags.saveLiveBlob)("matTooltip",e.i18n.saveLiveBlobTooltip)("disabled",e.disabled)}}var q5=class t{get inCall(){return this.isAudioRecording}isAudioRecording=!1;isVideoRecording=!1;micVolume=0;isBidiStreamingEnabled=!1;disabled=!1;toggleAudioRecording=new Le;toggleVideoRecording=new Le;i18n=w(N2);showFlags=!1;flags={proactiveAudio:!1,enableAffectiveDialog:!1,enableSessionResumption:!1,saveLiveBlob:!1};onCallClick(){this.showFlags=!1,this.toggleAudioRecording.emit(this.flags)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-call-controls"]],hostVars:2,hostBindings:function(e,i){e&2&&_e("in-call",i.inCall)},inputs:{isAudioRecording:"isAudioRecording",isVideoRecording:"isVideoRecording",micVolume:"micVolume",isBidiStreamingEnabled:"isBidiStreamingEnabled",disabled:"disabled"},outputs:{toggleAudioRecording:"toggleAudioRecording",toggleVideoRecording:"toggleVideoRecording"},decls:6,vars:6,consts:[[1,"call-btn-container",3,"mouseenter","mouseleave"],["mat-icon-button","",1,"audio-rec-btn",3,"click","disabled"],[1,"flags-panel"],["mat-icon-button","",1,"video-rec-btn",3,"click","matTooltip","disabled"],[1,"mic-visualizer"],[1,"bar"],[1,"flags-title"],[1,"flag-item"],["matTooltipPosition","left",3,"change","checked","matTooltip","disabled"]],template:function(e,i){e&1&&(T(0,QRe,8,12),I(1,"div",0),U("mouseenter",function(){return i.showFlags=!0})("mouseleave",function(){return i.showFlags=!1}),I(2,"button",1),U("click",function(){return i.onCallClick()}),I(3,"mat-icon"),v(4),h()(),T(5,pRe,15,12,"div",2),h()),e&2&&(O(i.isAudioRecording?0:-1),Q(2),_e("recording",i.isAudioRecording),H("disabled",i.disabled||!i.isBidiStreamingEnabled),Q(2),ne(i.isAudioRecording?"call_end":"call"),Q(),O(i.showFlags&&!i.isAudioRecording&&!i.disabled?5:-1))},dependencies:[Ci,Wi,Di,Tn,Vt,qa,ln,dq,Eg],styles:['[_nghost-%COMP%]{display:flex;align-items:center;gap:4px;border-radius:28px;transition:all .2s ease}.in-call[_nghost-%COMP%]{background-color:var(--mat-sys-surface-variant)}button[_ngcontent-%COMP%]:not(:disabled){color:var(--mat-sys-on-surface-variant)!important}button[_ngcontent-%COMP%]:not(:disabled).recording{background-color:var(--mat-sys-error)!important;color:var(--mat-sys-on-error, #ffffff)!important}button.audio-rec-btn[_ngcontent-%COMP%]:not(.recording):not(:disabled){color:#34a853!important}button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface-variant)!important;opacity:.38!important;cursor:not-allowed}.mic-visualizer[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:3px;height:24px;margin-right:8px;width:24px}.mic-visualizer[_ngcontent-%COMP%] .bar[_ngcontent-%COMP%]{width:4px;background-color:#34a853;border-radius:2px;transition:height .1s ease-out}.call-btn-container[_ngcontent-%COMP%]{position:relative;display:inline-block}.flags-panel[_ngcontent-%COMP%]{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:12px;padding:12px;box-shadow:0 4px 20px #00000026;z-index:100;width:250px;display:flex;flex-direction:column;gap:8px;animation:_ngcontent-%COMP%_fadeIn .2s ease-out}.flags-panel[_ngcontent-%COMP%]:before{content:"";position:absolute;bottom:-8px;left:0;right:0;height:8px;background:transparent}.flags-panel[_ngcontent-%COMP%] .flags-title[_ngcontent-%COMP%]{font-weight:600;font-size:14px;color:var(--mat-sys-on-surface);margin-bottom:4px}.flags-panel[_ngcontent-%COMP%] .flag-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--mat-sys-on-surface-variant)}.flags-panel[_ngcontent-%COMP%] .flag-item[_ngcontent-%COMP%] .flag-label[_ngcontent-%COMP%]{font-weight:500}.flags-panel[_ngcontent-%COMP%] .flag-item[_ngcontent-%COMP%] mat-checkbox[_ngcontent-%COMP%]{--mdc-checkbox-state-layer-size: 30px}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}']})};var mRe=t=>({$implicit:t});function fRe(t,A){t&1&&le(0,"div",9)}function wRe(t,A){if(t&1&&(I(0,"span",15),v(1),h()),t&2){let e=p(2).$implicit,i=p();vt("right",100-i.getRelativeStart(e.span),"%"),Q(),ne(i.formatDuration(e.span.end_time-e.span.start_time))}}function yRe(t,A){if(t&1){let e=ae();I(0,"div",6),U("click",function(){L(e);let n=p().$implicit,o=p();return G(o.selectRow(n))}),I(1,"div",7)(2,"div",8),RA(3,fRe,1,0,"div",9,ja),h(),I(5,"span",10),v(6),h(),I(7,"div",11),v(8),h()(),I(9,"div",12)(10,"div",13),v(11),h(),T(12,wRe,2,3,"span",14),h()()}if(t&2){let e=p().$implicit,i=p(),n=Ei(12);_e("selected",i.rowSelected(e)),H("id",nQ("trace-node-",e.span.span_id))("appHtmlTooltip",n)("appHtmlTooltipContext",sc(19,mRe,i.getUiEvent(e)))("appHtmlTooltipDisabled",!i.getUiEvent(e)),Q(3),NA(i.getArray(e.level)),Q(2),_e("is-event-row",i.isEventRow(e)),Q(),pA(" ",i.getSpanIcon(e.span.name)," "),Q(),_e("is-event-row",i.isEventRow(e)),Q(),pA(" ",i.formatSpanName(e.span.name)," "),Q(2),vt("left",i.getRelativeStart(e.span),"%")("width",i.getRelativeWidth(e.span),"%"),Q(),pA(" ",i.formatDuration(e.span.end_time-e.span.start_time)," "),Q(),O(i.getRelativeWidth(e.span)<10?12:-1)}}function vRe(t,A){if(t&1&&T(0,yRe,13,21,"div",5),t&2){let e=A.$implicit,i=p();O(i.shouldShowNode(e)?0:-1)}}function DRe(t,A){if(t&1&&(I(0,"div",16),le(1,"app-event-content",17),h()),t&2){let e=p().$implicit;Q(),H("uiEvent",e)("index",0)}}function bRe(t,A){if(t&1&&T(0,DRe,2,2,"div",16),t&2){let e=A.$implicit;O(e?0:-1)}}var Z5=class t{spans=[];invocationId="";uiEvents=[];shouldShowEvent;tree=[];baseStartTimeMs=0;totalDurationMs=1;rootLatencyNanos=0;flatTree=[];shouldShowNode(A){let e=this.getUiEvent(A);return e&&this.shouldShowEvent?this.shouldShowEvent(e):!0}traceLabelIconMap=new Map([["Invocation","start"],["agent_run","robot"],["invoke_agent","robot_2"],["tool","build"],["execute_tool","build"],["call_llm","chat"]]);selectedRow=void 0;traceService=w(Qc);constructor(){}selectRootSpan(){if(this.tree&&this.tree.length>0){if(this.selectedRow&&this.selectedRow.span_id===this.tree[0].span_id)return;this.traceService.selectedRow(this.tree[0])}}isRootSpanSelected(){return!this.selectedRow||!this.tree||this.tree.length===0?!1:String(this.selectedRow.span_id)===String(this.tree[0].span_id)}ngOnInit(){this.rebuildTree(),this.traceService.selectedTraceRow$.subscribe(A=>{this.selectedRow=A,A&&setTimeout(()=>{let e=document.getElementById("trace-node-"+A.span_id);e&&e.scrollIntoView({behavior:"smooth",block:"nearest"})},50)})}ngOnChanges(A){A.spans&&!A.spans.isFirstChange()&&this.rebuildTree()}rebuildTree(){if(!this.spans||this.spans.length===0){this.tree=[],this.flatTree=[],this.rootLatencyNanos=0;return}this.tree=this.buildSpanTree(this.spans),this.flatTree=[],this.tree.forEach(e=>{e.children&&this.flatTree.push(...this.flattenTree(e.children,0))});let A=this.getGlobalTimes(this.spans);this.baseStartTimeMs=A.start,this.totalDurationMs=A.duration,this.tree&&this.tree.length>0?this.rootLatencyNanos=this.tree[0].end_time-this.tree[0].start_time:this.rootLatencyNanos=0}buildSpanTree(A){let e=A.map(o=>Y({},o)),i=new Map,n=[];return e.forEach(o=>i.set(String(o.span_id),o)),e.forEach(o=>{if(o.parent_span_id&&i.has(String(o.parent_span_id))){let a=i.get(String(o.parent_span_id));a.children=a.children||[],a.children.push(o)}else n.push(o)}),n}getGlobalTimes(A){let e=Math.min(...A.map(n=>this.toMs(n.start_time))),i=Math.max(...A.map(n=>this.toMs(n.end_time)));return{start:e,duration:i-e}}toMs(A){return A/1e6}formatDuration(A){if(A===0)return"0us";if(A<1e3)return`${A}ns`;if(A<1e6)return`${(A/1e3).toFixed(2)}us`;if(A<1e9)return`${(A/1e6).toFixed(2)}ms`;if(A<6e10)return`${(A/1e9).toFixed(2)}s`;let e=Math.floor(A/6e10),i=(A%6e10/1e9).toFixed(2);return`${e}m ${i}s`}getRelativeStart(A){return(this.toMs(A.start_time)-this.baseStartTimeMs)/this.totalDurationMs*100}getRelativeWidth(A){return(this.toMs(A.end_time)-this.toMs(A.start_time))/this.totalDurationMs*100}flattenTree(A,e=0){return A.flatMap(n=>[{span:n,level:e},...n.children?this.flattenTree(n.children,e+1):[]])}getSpanIcon(A){for(let[e,i]of this.traceLabelIconMap.entries())if(A.startsWith(e))return i;return"start"}formatSpanName(A){return A.startsWith("invoke_agent ")||A.startsWith("execute_tool ")?A.substring(13):A.startsWith("invoke_node ")?A.substring(12):A}getArray(A){return Array.from({length:A})}selectRow(A){this.selectedRow&&this.selectedRow.span_id==A.span.span_id||this.traceService.selectedRow(A.span)}rowSelected(A){return!this.selectedRow||!A?.span?!1:String(this.selectedRow.span_id)===String(A.span.span_id)}isEventRow(A){let e=this.getEventId(A);return e&&this.uiEvents&&this.uiEvents.length>0?this.uiEvents.some(i=>i.event?.id===e):!1}getEventId(A){return A?.span?.attrEventId??""}getUiEvent(A){let e=this.getEventId(A);return e&&this.uiEvents&&this.uiEvents.length>0&&this.uiEvents.find(i=>i.event?.id===e)||null}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-trace-tree"]],inputs:{spans:"spans",invocationId:"invocationId",uiEvents:"uiEvents",shouldShowEvent:"shouldShowEvent"},features:[ai],decls:13,vars:6,consts:[["eventTooltip",""],[1,"invocation-id-container",3,"click"],[1,"invocation-id",3,"matTooltip"],[1,"total-latency"],[1,"trace-container"],[1,"trace-row",3,"selected","id","appHtmlTooltip","appHtmlTooltipContext","appHtmlTooltipDisabled"],[1,"trace-row",3,"click","id","appHtmlTooltip","appHtmlTooltipContext","appHtmlTooltipDisabled"],[1,"trace-row-left"],[1,"trace-indent"],[1,"indent-connector"],[1,"material-symbols-outlined",2,"margin-right","8px"],[1,"trace-label"],[1,"trace-bar-container"],[1,"trace-bar"],[1,"short-trace-bar-duration",3,"right"],[1,"short-trace-bar-duration"],[1,"event-tooltip-container"],[3,"uiEvent","index"]],template:function(e,i){e&1&&(I(0,"div")(1,"div",1),U("click",function(){return i.selectRootSpan()}),I(2,"span"),v(3,"Invocation ID: "),h(),I(4,"div",2),v(5),h(),I(6,"span",3),v(7),h()(),I(8,"div",4),RA(9,vRe,1,1,null,null,ri),h()(),Nt(11,bRe,1,1,"ng-template",null,0,Id)),e&2&&(Q(),_e("selected",i.isRootSpanSelected()),aA("id",i.tree&&i.tree.length>0?"trace-node-"+i.tree[0].span_id:null),Q(3),H("matTooltip",i.invocationId),Q(),ne(i.invocationId),Q(2),pA("Total latency: ",i.formatDuration(i.rootLatencyNanos)),Q(2),NA(i.flatTree))},dependencies:[Wi,Tn,qa,ln,F5,cE],styles:[".trace-container[_ngcontent-%COMP%]{white-space:nowrap;font-size:12px;overflow-x:auto;padding:8px}.trace-label[_ngcontent-%COMP%]{color:var(--trace-label-color, #e3e3e3);font-family:Google Sans Mono,monospace;font-style:normal;font-weight:500;line-height:20px;letter-spacing:0px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:12px}.trace-bar-container[_ngcontent-%COMP%]{position:relative;height:18px}.trace-bar[_ngcontent-%COMP%]{position:absolute;height:18px;background-color:var(--mat-sys-primary);border-radius:4px;padding-left:6px;box-sizing:border-box;overflow:hidden;font-size:11px;line-height:18px;color:var(--mat-sys-on-primary);font-family:Google Sans;transition:background-color .2s,color .2s}.trace-duration[_ngcontent-%COMP%]{color:var(--trace-duration-color, #888);font-weight:400;margin-left:4px}.trace-row[_ngcontent-%COMP%]{display:flex;position:relative;height:32px}.trace-indent[_ngcontent-%COMP%]{display:flex;flex-shrink:0;height:100%}.indent-connector[_ngcontent-%COMP%]{width:20px;position:relative;height:100%}.vertical-line[_ngcontent-%COMP%]{position:absolute;top:0;bottom:0;left:9px;width:1px;background-color:#ccc}.horizontal-line[_ngcontent-%COMP%]{position:absolute;top:50%;left:9px;width:10px;height:1px;background-color:#ccc}.trace-label[_ngcontent-%COMP%]{flex:1;min-width:0;font-size:13px}.trace-bar-container[_ngcontent-%COMP%]{flex:1;min-width:0}.short-trace-bar-duration[_ngcontent-%COMP%]{position:absolute;color:var(--trace-tree-short-trace-bar-duration-color);padding-right:6px}.trace-row[_ngcontent-%COMP%]{align-items:center;cursor:pointer;scroll-margin-top:40px}.trace-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant, rgba(0, 0, 0, .04))}.trace-row.selected[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))}.trace-row-left[_ngcontent-%COMP%]{display:flex;min-width:250px;width:20%;max-width:350px}.invocation-id-container[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:11px;font-weight:600;letter-spacing:.3px;margin-bottom:6px;padding:8px 12px;border-radius:12px 12px 0 0;background-color:var(--mat-sys-surface);display:flex;width:100%;box-sizing:border-box;align-items:center;position:sticky;top:-20px;z-index:10;box-shadow:0 2px 4px #0000000d;cursor:pointer}.invocation-id-container[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant)}.invocation-id-container.selected[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))}.invocation-id-container[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]:first-child{opacity:.8;margin-right:6px;text-transform:uppercase}.invocation-id[_ngcontent-%COMP%]{font-family:Google Sans Mono,Roboto Mono,monospace;padding:2px 6px;border-radius:4px;color:var(--mat-sys-on-surface)}.total-latency[_ngcontent-%COMP%]{margin-left:auto;background:transparent;color:var(--mat-sys-on-surface);padding:2px 8px;font-size:11px;font-weight:600;letter-spacing:.2px}.trace-row-left[_ngcontent-%COMP%] span[_ngcontent-%COMP%], .trace-row-left[_ngcontent-%COMP%] div[_ngcontent-%COMP%]{color:var(--trace-tree-trace-row-left-span-div-color)}.trace-row-left[_ngcontent-%COMP%] .is-event-row[_ngcontent-%COMP%]{color:var(--trace-tree-trace-row-left-is-event-row-color)}.event-tooltip-container[_ngcontent-%COMP%]{max-width:800px;max-height:200px;overflow:auto;padding:8px;background:var(--mat-sys-surface-container-low, #202124);color:var(--mat-sys-on-surface, #e8eaed);border-radius:8px;box-shadow:0 4px 16px #00000080;border:1px solid var(--mat-sys-outline-variant, rgba(255, 255, 255, .1))}.event-tooltip-container[_ngcontent-%COMP%] app-content-bubble{max-height:160px;overflow-y:auto;display:block}"]})};var MRe=["videoContainer"],SRe=["autoScroll"],kRe=["messageTextarea"],_Re=t=>({text:t,thought:!1,isReadme:!0}),xRe=()=>[],RRe=(t,A)=>A.metricName,NRe=(t,A)=>A.branchId,FRe=(t,A)=>A.event;function LRe(t,A){t&1&&(I(0,"span",14),v(1,"PASS"),h())}function GRe(t,A){t&1&&(I(0,"span",15),v(1,"FAIL"),h())}function KRe(t,A){if(t&1&&(I(0,"span",21),v(1),h()),t&2){let e=A.$implicit;vt("color",e.evalStatus==1?"var(--app-color-success)":"var(--app-color-error)"),Q(),Va(" ",e.metricName,": ",e.score," ")}}function URe(t,A){if(t&1&&(I(0,"div")(1,"span",17),v(2,"Metrics"),h(),I(3,"div",19),RA(4,KRe,2,4,"span",20,RRe),h()()),t&2){p();let e=Ti(0);Q(4),NA(e.overallEvalMetricResults)}}function TRe(t,A){if(t&1&&(so(0),I(1,"div",8)(2,"div",11)(3,"h3",12),v(4,"Evaluation Result"),h(),I(5,"div",13),T(6,LRe,2,0,"span",14)(7,GRe,2,0,"span",15),h()(),I(8,"div",16)(9,"div")(10,"span",17),v(11,"Case ID"),h(),I(12,"div",18),v(13),h()(),I(14,"div")(15,"span",17),v(16,"Set ID"),h(),I(17,"div",18),v(18),h()(),T(19,URe,6,0,"div"),h()()),t&2){let e=lo(p(2).evalCaseResult());Q(6),O(e.finalEvalStatus==1?6:7),Q(7),ne(e.evalId),Q(5),ne(e.setId),Q(),O(e.overallEvalMetricResults!=null&&e.overallEvalMetricResults.length?19:-1)}}function ORe(t,A){if(t&1&&(I(0,"div",9),Bn(1,22),h()),t&2){let e=p(2);Q(),H("ngComponentOutlet",e.markdownComponent)("ngComponentOutletInputs",sc(2,_Re,e.agentReadme))}}function JRe(t,A){if(t&1&&(I(0,"div",26),le(1,"app-trace-tree",27),h()),t&2){p();let e=Ti(0),i=p(3);vt("display",i.viewMode==="traces"?"":"none"),Q(),H("spans",i.spansByInvocationId.get(e.event.id)||i.spansByInvocationId.get(e.event.invocationId)||$g(6,xRe))("invocationId",e.event.invocationId||e.event.id||"")("uiEvents",i.uiEvents)("shouldShowEvent",i.shouldShowEvent)}}function zRe(t,A){if(t&1){let e=ae();so(0),I(1,"app-event-row",24),U("rowClick",function(n){L(e);let o=p(3);return G(o.handleRowClick(n.event,n.uiEvent,n.index))})("handleKeydown",function(n){L(e);let o=p(3);return G(o.handleKeydown.emit(n))})("cancelEditMessage",function(n){L(e);let o=p(3);return G(o.cancelEditMessage.emit(n))})("saveEditMessage",function(n){L(e);let o=p(3);return G(o.saveEditMessage.emit(n))})("userEditEvalCaseMessageChange",function(n){L(e);let o=p(3);return G(o.userEditEvalCaseMessageChange.emit(n))})("openViewImageDialog",function(n){L(e);let o=p(3);return G(o.openViewImageDialog.emit(n))})("openBase64InNewTab",function(n){L(e);let o=p(3);return G(o.openBase64InNewTab.emit(n))})("editEvalCaseMessage",function(n){L(e);let o=p(3);return G(o.editEvalCaseMessage.emit(n))})("deleteEvalCaseMessage",function(n){L(e);let o=p(3);return G(o.deleteEvalCaseMessage.emit(n))})("editFunctionArgs",function(n){L(e);let o=p(3);return G(o.editFunctionArgs.emit(n))})("clickEvent",function(n){L(e);let o=p(3);return G(o.clickEvent.emit(n))})("longRunningResponseComplete",function(n){L(e);let o=p(3);return G(o.longRunningResponseComplete.emit(n))})("agentStateClick",function(n){L(e);let o=p(3);return G(o.handleAgentStateClick(n.event,n.index))}),h(),T(2,JRe,2,7,"div",25)}if(t&2){let e=p().$implicit,i=p(2),n=lo(e.event),o=i.shouldShowEvent?i.shouldShowEvent(n):!0;Q(),vt("display",i.viewMode==="events"&&o||i.viewMode==="traces"&&n.role==="user"&&o?"":"none"),H("isSelectable",i.viewMode!=="traces")("uiEvent",n)("index",e.index)("uiEvents",i.uiEvents)("isSelected",i.isMessageEventSelected(e.index))("appName",i.appName)("userId",i.userId)("sessionId",i.sessionId)("sessionName",i.sessionName())("evalCase",i.evalCase)("isEvalEditMode",i.isEvalEditMode)("isEvalCaseEditing",i.isEvalCaseEditing)("isEditFunctionArgsEnabled",i.isEditFunctionArgsEnabled)("userEditEvalCaseMessage",i.userEditEvalCaseMessage)("agentGraphData",i.agentGraphData)("allWorkflowNodes",i.getAllWorkflowNodes(e.index))("isUserFeedbackEnabled",i.isUserFeedbackEnabled()??!1)("isLoadingAgentResponse",i.isLoadingAgentResponse()??!1),Q(),O(n.role==="bot"&&i.isFirstEventForInvocation(n,e.index)?2:-1)}}function YRe(t,A){if(t&1&&(I(0,"span",32),v(1),h()),t&2){let e=p().$implicit;H("matTooltip","Branch "+e.branchId),Q(),ne(e.branchId)}}function HRe(t,A){if(t&1){let e=ae();I(0,"app-event-row",24),U("rowClick",function(n){L(e);let o=p(5);return G(o.handleRowClick(n.event,n.uiEvent,n.index))})("handleKeydown",function(n){L(e);let o=p(5);return G(o.handleKeydown.emit(n))})("cancelEditMessage",function(n){L(e);let o=p(5);return G(o.cancelEditMessage.emit(n))})("saveEditMessage",function(n){L(e);let o=p(5);return G(o.saveEditMessage.emit(n))})("userEditEvalCaseMessageChange",function(n){L(e);let o=p(5);return G(o.userEditEvalCaseMessageChange.emit(n))})("openViewImageDialog",function(n){L(e);let o=p(5);return G(o.openViewImageDialog.emit(n))})("openBase64InNewTab",function(n){L(e);let o=p(5);return G(o.openBase64InNewTab.emit(n))})("editEvalCaseMessage",function(n){L(e);let o=p(5);return G(o.editEvalCaseMessage.emit(n))})("deleteEvalCaseMessage",function(n){L(e);let o=p(5);return G(o.deleteEvalCaseMessage.emit(n))})("editFunctionArgs",function(n){L(e);let o=p(5);return G(o.editFunctionArgs.emit(n))})("clickEvent",function(n){L(e);let o=p(5);return G(o.clickEvent.emit(n))})("longRunningResponseComplete",function(n){L(e);let o=p(5);return G(o.longRunningResponseComplete.emit(n))})("agentStateClick",function(n){L(e);let o=p(5);return G(o.handleAgentStateClick(n.event,n.index))}),h()}if(t&2){let e=A.$implicit,i=p(5),n=e.event,o=i.shouldShowEvent?i.shouldShowEvent(n):!0;vt("display",i.viewMode==="events"&&o||i.viewMode==="traces"&&n.role==="user"&&o?"":"none"),H("isSelectable",i.viewMode!=="traces")("uiEvent",n)("index",e.globalIndex)("uiEvents",i.uiEvents)("isSelected",i.isMessageEventSelected(e.globalIndex))("appName",i.appName)("userId",i.userId)("sessionId",i.sessionId)("sessionName",i.sessionName())("evalCase",i.evalCase)("isEvalEditMode",i.isEvalEditMode)("isEvalCaseEditing",i.isEvalCaseEditing)("isEditFunctionArgsEnabled",i.isEditFunctionArgsEnabled)("userEditEvalCaseMessage",i.userEditEvalCaseMessage)("agentGraphData",i.agentGraphData)("allWorkflowNodes",i.getAllWorkflowNodes(e.globalIndex))("isUserFeedbackEnabled",i.isUserFeedbackEnabled()??!1)("isLoadingAgentResponse",i.isLoadingAgentResponse()??!1)}}function PRe(t,A){if(t&1&&(I(0,"mat-tab"),Nt(1,YRe,2,2,"ng-template",29),I(2,"div",30),RA(3,HRe,1,20,"app-event-row",31,FRe),h()()),t&2){let e=A.$implicit;Q(3),NA(e.events)}}function jRe(t,A){if(t&1&&(I(0,"div",23)(1,"mat-tab-group",28),RA(2,PRe,5,0,"mat-tab",null,NRe),h()()),t&2){let e=p().$implicit;Q(2),NA(e.branches)}}function VRe(t,A){if(t&1&&T(0,zRe,3,22)(1,jRe,4,0,"div",23),t&2){let e=A.$implicit;O(e.type==="event"?0:e.type==="branches"?1:-1)}}function qRe(t,A){t&1&&(I(0,"div",10),le(1,"mat-progress-bar",33),h())}function ZRe(t,A){if(t&1){let e=ae();I(0,"div",7,0),U("scroll",function(n){L(e);let o=p();return G(o.onScroll.next(n))})("wheel",function(){L(e);let n=p();return G(n.onManualScroll())})("touchmove",function(){L(e);let n=p();return G(n.onManualScroll())})("mousedown",function(){L(e);let n=p();return G(n.onManualScroll())})("keydown",function(){L(e);let n=p();return G(n.onManualScroll())}),T(2,TRe,20,5,"div",8),T(3,ORe,2,4,"div",9),RA(4,VRe,2,1,null,null,ri),T(6,qRe,2,0,"div",10),h()}if(t&2){let e=p();Q(2),O(e.showEvalSummary()&&e.evalCaseResult()?2:-1),Q(),O(e.uiEvents.length===0&&e.agentReadme?3:-1),Q(),NA(e.displayItems),Q(2),O(e.isLoadingAgentResponse()?6:-1)}}function WRe(t,A){if(t&1){let e=ae();I(0,"div",51),le(1,"img",52),I(2,"button",53),U("click",function(){L(e);let n=p().$index,o=p(4);return G(o.removeFile.emit(n))}),I(3,"mat-icon",54),v(4,"close"),h()()()}if(t&2){let e=p().$implicit;Q(),H("src",e.url,wo)}}function XRe(t,A){if(t&1){let e=ae();I(0,"div",50)(1,"button",53),U("click",function(){L(e);let n=p().$index,o=p(4);return G(o.removeFile.emit(n))}),I(2,"mat-icon",54),v(3,"close"),h()(),I(4,"div",55)(5,"mat-icon"),v(6,"insert_drive_file"),h(),I(7,"span"),v(8),h()()()}if(t&2){let e=p().$implicit;Q(8),ne(e.file.name)}}function $Re(t,A){if(t&1&&(I(0,"div"),T(1,WRe,5,1,"div",51)(2,XRe,9,1,"div",50),h()),t&2){let e=A.$implicit;Q(),O(e.file.type.startsWith("image/")?1:e.file.type.startsWith("image/")?-1:2)}}function eNe(t,A){if(t&1){let e=ae();I(0,"div",50)(1,"button",53),U("click",function(){L(e);let n=p(4);return G(n.removeStateUpdate.emit())}),I(2,"mat-icon",54),v(3,"close"),h()(),I(4,"div",55)(5,"span"),v(6),h()()()}if(t&2){let e=p(4);Q(6),ne(e.i18n.updatedSessionStateChipLabel)}}function ANe(t,A){if(t&1&&(I(0,"div",39),RA(1,$Re,3,1,"div",null,ri),T(3,eNe,7,1,"div",50),h()),t&2){let e=p(3);Q(),NA(e.selectedFiles),Q(2),O(e.updatedSessionState?3:-1)}}function tNe(t,A){if(t&1){let e=ae();I(0,"button",42),Dt(1,"async"),U("click",function(){L(e);let n=p(3);return G(n.updateState.emit())}),I(2,"mat-icon"),v(3,"tune"),h(),I(4,"span"),v(5),h()()}if(t&2){let e=p(3);H("disabled",(e.isLoadingAgentResponse()??!1)||!Ut(1,2,e.isManualStateUpdateEnabledObs)),Q(5),ne(e.i18n.updateStateMenuLabel)}}function iNe(t,A){if(t&1){let e=ae();I(0,"button",56),U("click",function(n){L(e);let o=p(3);return G(o.stopMessage.emit(n))}),I(1,"mat-icon"),v(2,"stop"),h()()}if(t&2){let e=p(3);H("matTooltip",e.i18n.stopMessageTooltip)}}function nNe(t,A){if(t&1){let e=ae();I(0,"button",57),U("click",function(n){L(e);let o=p(3);return G(o.sendMessage.emit(n))}),I(1,"mat-icon"),v(2,"send"),h()()}if(t&2){let e=p(3);H("matTooltip",e.i18n.sendMessageTooltip)}}function oNe(t,A){if(t&1){let e=ae();I(0,"div",35)(1,"input",36,1),U("change",function(n){L(e);let o=p(2);return G(o.fileSelect.emit(n))}),h(),I(3,"div",37)(4,"mat-form-field",38),T(5,ANe,4,1,"div",39),I(6,"button",40)(7,"mat-icon"),v(8,"add"),h()(),I(9,"mat-menu",41,2)(11,"button",42),Dt(12,"async"),U("click",function(){L(e);let n=Ei(2);return G(n.click())}),I(13,"mat-icon"),v(14,"attach_file"),h(),I(15,"span"),v(16),h()(),T(17,tNe,6,4,"button",43),h(),I(18,"textarea",44,3),U("ngModelChange",function(n){L(e);let o=p(2);return G(o.userInputChange.emit(n))})("keydown.enter",function(n){L(e);let o=p(2);return G(!o.isLoadingAgentResponse()&&o.sendMessage.emit(n))}),h(),I(20,"div",45)(21,"app-call-controls",46),Dt(22,"async"),U("toggleAudioRecording",function(n){L(e);let o=p(2);return G(o.toggleAudioRecording.emit(n))})("toggleVideoRecording",function(){L(e);let n=p(2);return G(n.toggleVideoRecording.emit())}),h(),T(23,iNe,3,1,"button",47)(24,nNe,3,1,"button",48),h()(),le(25,"div",49,4),h()()}if(t&2){let e=Ei(10),i=p(2);_e("video-streaming",i.isVideoRecording),Q(5),O(i.selectedFiles.length&&i.appName!=""||i.updatedSessionState?5:-1),Q(),H("matMenuTriggerFor",e)("disabled",i.isLoadingAgentResponse()??!1)("matTooltip","Actions"),Q(5),H("disabled",(i.isLoadingAgentResponse()??!1)||!Ut(12,20,i.isMessageFileUploadEnabledObs)),Q(5),ne(i.i18n.uploadFileTooltip),Q(),O(i.hideMoreOptionsButton()?-1:17),Q(),H("ngModel",i.userInput)("placeholder",i.i18n.typeMessagePlaceholder)("disabled",i.isLoadingAgentResponse()??!1),Q(3),H("isAudioRecording",i.isAudioRecording)("isVideoRecording",i.isVideoRecording)("micVolume",i.micVolume)("isBidiStreamingEnabled",Ut(22,22,i.isBidiStreamingEnabledObs)??!1)("disabled",i.isLoadingAgentResponse()??!1),Q(2),O(i.isLoadingAgentResponse()?23:24),Q(2),_e("visible",i.isVideoRecording)}}function aNe(t,A){if(t&1&&T(0,oNe,27,24,"div",34),t&2){let e=p();O(e.canEditSession()?0:-1)}}function rNe(t,A){t&1&&(I(0,"div",6),le(1,"mat-progress-spinner",58),h())}var K2=class t{appName="";agentReadme="";sessionName=MA("");uiEvents=[];showBranches=!1;traceData=[];isChatMode=!0;evalCase=null;isEvalEditMode=!1;isEvalCaseEditing=!1;agentGraphData=null;isEditFunctionArgsEnabled=!1;isTokenStreamingEnabled=!1;useSse=!1;userInput="";userEditEvalCaseMessage="";selectedFiles=[];updatedSessionState=null;selectedMessageIndex=void 0;isAudioRecording=!1;micVolume=0;isVideoRecording=!1;userId="";sessionId="";viewMode="events";shouldShowEvent;spansByInvocationId=new Map;displayItems=[];eventsScrollTop=-1;tracesScrollTop=-1;userInputChange=new Le;userEditEvalCaseMessageChange=new Le;clickEvent=new Le;handleKeydown=new Le;cancelEditMessage=new Le;saveEditMessage=new Le;openViewImageDialog=new Le;openBase64InNewTab=new Le;editEvalCaseMessage=new Le;deleteEvalCaseMessage=new Le;editFunctionArgs=new Le;fileSelect=new Le;removeFile=new Le;removeStateUpdate=new Le;sendMessage=new Le;stopMessage=new Le;updateState=new Le;toggleAudioRecording=new Le;toggleVideoRecording=new Le;longRunningResponseComplete=new Le;toggleHideIntermediateEvents=new Le;toggleSse=new Le;manualScroll=new Le;videoContainer;scrollContainer;textarea;scrollInterrupted=!1;scrollHeight=0;lastMessageRef=null;nextPageToken="";scrollTimeout=null;mutationObserver=null;i18n=w(N2);uiStateService=w(mc);themeService=w(pc);stringToColorService=w(xd);markdownComponent=w(x2);featureFlagService=w(Tr);agentService=w(gl);sessionService=w(Cl);destroyRef=w(wr);MediaType=wC;JSON=JSON;Object=Object;String=String;isMessageFileUploadEnabledObs=this.featureFlagService.isMessageFileUploadEnabled();isManualStateUpdateEnabledObs=this.featureFlagService.isManualStateUpdateEnabled();isBidiStreamingEnabledObs=this.featureFlagService.isBidiStreamingEnabled();canEditSession=fe(!0);isUserFeedbackEnabled=Ir(this.featureFlagService.isFeedbackServiceEnabled());isLoadingAgentResponse=Ir(this.agentService.getLoadingState());hideMoreOptionsButton=Ir(this.featureFlagService.isMoreOptionsButtonHidden());onScroll=new rA;sanitizer=w(ys);onManualScroll(){this.scrollInterrupted=!0,this.manualScroll.emit()}hideIntermediateEvents=MA(!1);invocationDisplayMap=MA(new Map);evalCaseResult=MA(null);showEvalSummary=MA(!1);constructor(){Ln(()=>{let A=this.sessionName();A&&(this.nextPageToken="",this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(ao(),pt(e=>e)).subscribe(()=>{this.uiStateService.lazyLoadMessages(A,{pageSize:100,pageToken:this.nextPageToken}).pipe(ao()).subscribe()}))}),Ln(()=>{this.isLoadingAgentResponse()||this.focusInput()})}ngOnInit(){this.uiStateService.isSessionLoading().pipe(Kr(this.destroyRef)).subscribe(A=>{A||this.focusInput()}),this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(ao(),pt(A=>A),ki(()=>Zi(this.uiStateService.onNewMessagesLoaded().pipe(yi(A=>{this.nextPageToken=A.nextPageToken??"",A.isBackground||this.restoreScrollPosition()})),this.onScroll.pipe(ki(A=>{let e=A.target;return e.scrollTop!==0?mr:this.nextPageToken?(this.scrollHeight=e.scrollHeight,this.uiStateService.lazyLoadMessages(this.sessionName(),{pageSize:100,pageToken:this.nextPageToken}).pipe(ao(),ca(()=>gJ))):mr})))),Kr(this.destroyRef)).subscribe()}ngAfterViewInit(){if(this.scrollContainer?.nativeElement){let A=this.scrollContainer.nativeElement;A.addEventListener("scroll",()=>{let e=Math.abs(A.scrollHeight-A.scrollTop-A.clientHeight)<50;this.scrollInterrupted=!e}),this.mutationObserver=new MutationObserver(()=>{this.scrollInterrupted||this.scrollToBottom()}),this.mutationObserver.observe(A,{childList:!0,subtree:!0,characterData:!0}),this.destroyRef.onDestroy(()=>{this.mutationObserver?.disconnect()})}}ngOnChanges(A){if(A.viewMode){let e=A.viewMode.previousValue,i=A.viewMode.currentValue;this.scrollContainer?.nativeElement&&(e==="events"?this.eventsScrollTop=this.scrollContainer.nativeElement.scrollTop:e==="traces"&&(this.tracesScrollTop=this.scrollContainer.nativeElement.scrollTop)),setTimeout(()=>{this.scrollContainer?.nativeElement&&(i==="events"&&this.eventsScrollTop!==-1?this.scrollContainer.nativeElement.scrollTop=this.eventsScrollTop:i==="traces"&&this.tracesScrollTop!==-1?this.scrollContainer.nativeElement.scrollTop=this.tracesScrollTop:this.scrollToBottom())})}if(A.appName&&this.focusInput(),(A.appName||A.uiEvents)&&this.uiEvents.length===0&&this.agentReadme&&setTimeout(()=>this.scrollToTop(),0),A.uiEvents){let e=this.uiEvents[this.uiEvents.length-1];e!==this.lastMessageRef&&((e?.role==="user"||e?.isLoading===!0)&&(this.scrollInterrupted=!1),this.scrollToBottom()),this.lastMessageRef=e}A.traceData&&this.traceData&&this.rebuildTrace(),(A.uiEvents||A.showBranches||A.viewMode)&&this.computeDisplayItems()}computeDisplayItems(){if(!this.showBranches||this.viewMode==="traces"){this.displayItems=this.uiEvents.map((i,n)=>({type:"event",event:i,index:n}));return}let A=[],e=null;this.uiEvents.forEach((i,n)=>{let o=i.event?.branch;if(o){e||(e={type:"branches",branchesMap:new Map,startIndex:n});let a=e.branchesMap.get(o)||[];a.push({event:i,globalIndex:n}),e.branchesMap.set(o,a)}else e&&(A.push(this.finalizeGroup(e)),e=null),A.push({type:"event",event:i,index:n})}),e&&A.push(this.finalizeGroup(e)),this.displayItems=A}finalizeGroup(A){let e=[];return A.branchesMap.forEach((i,n)=>{e.push({branchId:n,events:i})}),{type:"branches",branches:e,startIndex:A.startIndex}}rebuildTrace(){let A=this.traceData.reduce((e,i)=>{let n=String(i.trace_id),o=e.get(n);return o?(o.push(i),o.sort((a,r)=>a.start_time-r.start_time)):e.set(n,[i]),e},new Map);this.spansByInvocationId=new Map;for(let[e,i]of A){let n=i.find(o=>o.attrInvocationId!==void 0)?.attrInvocationId;if(!n){let o=i.find(a=>a.attrAssociatedEventIds!==void 0)?.attrAssociatedEventIds;o&&o.length>0&&(n=o[0])}n||(n=e),n&&this.spansByInvocationId.set(String(n),i)}}isFirstEventForInvocation(A,e){let i=A.event?.invocationId||A.event?.id;if(!i)return!1;for(let n=e-1;n>=0;n--){let o=this.uiEvents[n],a=o.event?.invocationId||o.event?.id;if(o.role==="bot"&&a===i)return!1}return!0}scrollToBottom(){this.sessionId&&(this.scrollInterrupted||(this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.scrollTimeout=setTimeout(()=>{this.scrollContainer?.nativeElement.scrollTo({top:this.scrollContainer.nativeElement.scrollHeight,behavior:"auto"}),this.scrollTimeout=null},50)))}scrollToTop(){setTimeout(()=>{this.scrollContainer?.nativeElement.scrollTo({top:0,behavior:"smooth"})},50)}focusInput(){setTimeout(()=>{this.textarea?.nativeElement?.focus()},50)}isMessageEventSelected(A){return A===this.selectedMessageIndex}restoreScrollPosition(){if(!this.scrollHeight){this.scrollInterrupted=!1,this.scrollToBottom();return}let A=this.scrollContainer?.nativeElement;A&&(A.scrollTop=A.scrollHeight-this.scrollHeight,this.scrollHeight=0)}getAllWorkflowNodes(A){let e={};for(let i=0;i<=A;i++){let o=this.uiEvents[i].event,a=o?.actions?.agentState?.nodes,r=o?.nodeInfo?.path;a&&r&&(e[r]||(e[r]={}),Object.assign(e[r],a))}return Object.keys(e).length>0?e:null}handleAgentStateClick(A,e){A.stopPropagation(),e===this.selectedMessageIndex||this.clickEvent.emit(e)}handleRowClick(A,e,i){let n=window.getSelection();n&&n.toString().length>0||this.clickEvent.emit(i)}handleKeyboardNavigation(A){if(this.selectedMessageIndex===void 0)return;let e=document.activeElement;if(e&&(e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.isContentEditable)||A.key!=="ArrowUp"&&A.key!=="ArrowDown")return;A.preventDefault();let i;A.key==="ArrowDown"?i=this.selectedMessageIndex+1>=this.uiEvents.length?0:this.selectedMessageIndex+1:i=this.selectedMessageIndex-1<0?this.uiEvents.length-1:this.selectedMessageIndex-1,this.clickEvent.emit(i),this.scrollToSelectedMessage(i)}scrollToSelectedMessage(A){let e=A!==void 0?A:this.selectedMessageIndex;e!==void 0&&setTimeout(()=>{if(!this.scrollContainer?.nativeElement)return;let i=this.scrollContainer.nativeElement.querySelectorAll(".message-row-container");i&&i[e]&&i[e].scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})},50)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-chat-panel"]],viewQuery:function(e,i){if(e&1&&$t(MRe,5,dA)(SRe,5)(kRe,5),e&2){let n;cA(n=gA())&&(i.videoContainer=n.first),cA(n=gA())&&(i.scrollContainer=n.first),cA(n=gA())&&(i.textarea=n.first)}},hostBindings:function(e,i){e&1&&U("keydown",function(o){return i.handleKeyboardNavigation(o)},Zc)},inputs:{appName:"appName",agentReadme:"agentReadme",sessionName:[1,"sessionName"],uiEvents:"uiEvents",showBranches:"showBranches",traceData:"traceData",isChatMode:"isChatMode",evalCase:"evalCase",isEvalEditMode:"isEvalEditMode",isEvalCaseEditing:"isEvalCaseEditing",agentGraphData:"agentGraphData",isEditFunctionArgsEnabled:"isEditFunctionArgsEnabled",isTokenStreamingEnabled:"isTokenStreamingEnabled",useSse:"useSse",userInput:"userInput",userEditEvalCaseMessage:"userEditEvalCaseMessage",selectedFiles:"selectedFiles",updatedSessionState:"updatedSessionState",selectedMessageIndex:"selectedMessageIndex",isAudioRecording:"isAudioRecording",micVolume:"micVolume",isVideoRecording:"isVideoRecording",userId:"userId",sessionId:"sessionId",viewMode:"viewMode",shouldShowEvent:"shouldShowEvent",hideIntermediateEvents:[1,"hideIntermediateEvents"],invocationDisplayMap:[1,"invocationDisplayMap"],evalCaseResult:[1,"evalCaseResult"],showEvalSummary:[1,"showEvalSummary"]},outputs:{userInputChange:"userInputChange",userEditEvalCaseMessageChange:"userEditEvalCaseMessageChange",clickEvent:"clickEvent",handleKeydown:"handleKeydown",cancelEditMessage:"cancelEditMessage",saveEditMessage:"saveEditMessage",openViewImageDialog:"openViewImageDialog",openBase64InNewTab:"openBase64InNewTab",editEvalCaseMessage:"editEvalCaseMessage",deleteEvalCaseMessage:"deleteEvalCaseMessage",editFunctionArgs:"editFunctionArgs",fileSelect:"fileSelect",removeFile:"removeFile",removeStateUpdate:"removeStateUpdate",sendMessage:"sendMessage",stopMessage:"stopMessage",updateState:"updateState",toggleAudioRecording:"toggleAudioRecording",toggleVideoRecording:"toggleVideoRecording",longRunningResponseComplete:"longRunningResponseComplete",toggleHideIntermediateEvents:"toggleHideIntermediateEvents",toggleSse:"toggleSse",manualScroll:"manualScroll"},features:[ai],decls:5,vars:5,consts:[["autoScroll",""],["fileInput",""],["inputActionsMenu","matMenu"],["messageTextarea",""],["videoContainer",""],[1,"chat-messages"],[1,"loading-spinner-container"],[1,"chat-messages",3,"scroll","wheel","touchmove","mousedown","keydown"],[1,"eval-result-summary",2,"margin","16px","padding","16px","border-radius","8px","background","var(--mat-sys-surface-container)","border","1px solid var(--mat-sys-outline-variant)"],[1,"readme-content"],[1,"agent-loading-indicator"],[2,"display","flex","justify-content","space-between","align-items","center"],[2,"margin","0","color","var(--mat-sys-primary)"],[1,"status-card__summary"],[1,"status-card__passed",2,"font-size","16px","font-weight","600","font-family","monospace"],[1,"status-card__failed",2,"font-size","16px","font-weight","600","font-family","monospace"],[2,"margin-top","12px","display","flex","gap","24px"],[2,"color","var(--mat-sys-on-surface-variant)","font-size","13px"],[2,"font-weight","500"],[2,"display","flex","gap","8px","margin-top","4px"],[2,"font-size","13px","font-weight","500",3,"color"],[2,"font-size","13px","font-weight","500"],[3,"ngComponentOutlet","ngComponentOutletInputs"],[1,"branches-container"],[3,"rowClick","handleKeydown","cancelEditMessage","saveEditMessage","userEditEvalCaseMessageChange","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","clickEvent","longRunningResponseComplete","agentStateClick","isSelectable","uiEvent","index","uiEvents","isSelected","appName","userId","sessionId","sessionName","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userEditEvalCaseMessage","agentGraphData","allWorkflowNodes","isUserFeedbackEnabled","isLoadingAgentResponse"],[1,"trace-tree-container",3,"display"],[1,"trace-tree-container"],[3,"spans","invocationId","uiEvents","shouldShowEvent"],["animationDuration","0ms"],["mat-tab-label",""],[1,"branch-events-content"],[3,"display","isSelectable","uiEvent","index","uiEvents","isSelected","appName","userId","sessionId","sessionName","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userEditEvalCaseMessage","agentGraphData","allWorkflowNodes","isUserFeedbackEnabled","isLoadingAgentResponse"],["matTooltipPosition","above",1,"tab-name",3,"matTooltip"],["mode","indeterminate"],[1,"chat-input",3,"video-streaming"],[1,"chat-input"],["type","file","multiple","","hidden","",3,"change"],[1,"chat-input-content-row"],["appearance","outline","subscriptSizing","dynamic",1,"input-field"],[1,"file-preview"],["mat-icon-button","","matPrefix","",1,"input-prefix-menu-btn",3,"matMenuTriggerFor","disabled","matTooltip"],["xPosition","after"],["mat-menu-item","",3,"click","disabled"],["mat-menu-item","",3,"disabled"],["matInput","","cdkTextareaAutosize","","cdkAutosizeMinRows","1","cdkAutosizeMaxRows","10",1,"chat-input-box",3,"ngModelChange","keydown.enter","ngModel","placeholder","disabled"],["matSuffix","",1,"input-suffix-container"],[3,"toggleAudioRecording","toggleVideoRecording","isAudioRecording","isVideoRecording","micVolume","isBidiStreamingEnabled","disabled"],["mat-icon-button","",1,"stop-message-btn",3,"matTooltip"],["mat-icon-button","",1,"send-message-btn",3,"matTooltip"],[1,"video-container"],[1,"file-container"],[1,"image-container"],["alt","preview",1,"image-preview",3,"src"],["mat-icon-button","",1,"delete-button",3,"click"],["color","warn"],[1,"file-info"],["mat-icon-button","",1,"stop-message-btn",3,"click","matTooltip"],["mat-icon-button","",1,"send-message-btn",3,"click","matTooltip"],["mode","indeterminate","diameter","50"]],template:function(e,i){if(e&1&&(so(0),Dt(1,"async"),T(2,ZRe,7,3,"div",5),T(3,aNe,1,1),T(4,rNe,2,0,"div",6)),e&2){let n=Ut(1,3,i.uiStateService.isSessionLoading());Q(2),O(i.appName!=""&&!n?2:-1),Q(),O(i.appName!=""&&i.isChatMode&&!n?3:-1),Q(),O(n?4:-1)}},dependencies:[Ci,A0,wn,Kn,Un,Po,Tn,Vt,yj,iE,tE,Wi,Di,al,Fa,$o,SQ,OM,b3,DB,ir,kd,fs,zs,uc,_d,ws,hoe,qa,ln,bj,woe,Rm,Nm,nE,hC,V5,q5,Z5,hs],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%}.generated-image-container[_ngcontent-%COMP%]{max-width:400px;margin-left:20px}.generated-image[_ngcontent-%COMP%]{max-width:100%;min-width:40px;border-radius:8px}.html-artifact-container[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:flex-start;align-items:center}.loading-bar[_ngcontent-%COMP%]{width:100px;margin:15px}.chat-messages[_ngcontent-%COMP%]{flex-grow:1;overflow-y:auto;padding:20px;position:relative}.chat-sub-toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 20px;background-color:var(--mat-sys-surface-container);border-bottom:1px solid var(--mat-sys-outline-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%]{border-radius:16px;height:28px;align-items:center}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%] .mat-button-toggle-label-content{line-height:28px;padding:0 12px;font-size:13px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-bar-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;background-color:transparent;border:none;margin-left:16px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;height:28px;cursor:pointer;transition:background-color .2s ease}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-label[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--mat-sys-on-surface-variant);padding:0;margin-left:4px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]:hover{color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:transparent;border:1px dashed var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;font-weight:500;height:28px;cursor:pointer;transition:all .2s ease;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant);border-color:var(--mat-sys-outline);color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;margin-right:4px} .filter-panel{min-width:max-content!important;max-width:50vw} .filter-panel .mat-mdc-menu-item{min-height:32px!important;font-size:12px!important} .filter-panel .mat-mdc-menu-item .mat-mdc-menu-item-text, .filter-panel .mat-mdc-menu-item .mdc-list-item__primary-text{font-size:12px!important;line-height:normal}.trace-tree-container[_ngcontent-%COMP%]{margin:12px 48px 12px 12px;border-radius:12px;border:none;background:var(--mat-sys-surface-container-lowest, #fff);box-shadow:0 4px 20px #0000000d,0 1px 3px #0000000a}.chat-input[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:10px;width:min(960px,88%);margin:0 auto;position:relative;transition:all .3s ease;box-sizing:border-box}.chat-input[_ngcontent-%COMP%] .chat-input-content-row[_ngcontent-%COMP%]{display:flex;gap:16px;align-items:flex-end;width:100%}.video-container[_ngcontent-%COMP%]{display:none;border-radius:12px;overflow:hidden;background:var(--mat-sys-surface-variant);border:1px solid var(--mat-sys-outline-variant);width:200px}.video-container.visible[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;flex-shrink:0;box-shadow:0 8px 24px #00000026}.video-container[_ngcontent-%COMP%] video{width:100%!important;height:auto!important;max-height:280px;object-fit:cover;border-radius:12px;transform:scaleX(-1)}.input-field[_ngcontent-%COMP%]{flex-grow:1;position:relative}.input-field[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);border:none;box-sizing:content-box;caret-color:var(--mat-sys-primary)}.input-field[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]::placeholder{color:var(--mat-sys-on-surface-variant)}.input-field[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:not(:disabled):not(.stop-message-btn){color:var(--mat-sys-primary)!important}.input-field[_ngcontent-%COMP%] .mat-mdc-form-field-flex{align-items:flex-end!important}.input-field[_ngcontent-%COMP%] .mat-mdc-form-field-icon-prefix, .input-field[_ngcontent-%COMP%] .mat-mdc-form-field-icon-suffix{align-self:flex-end!important;margin-bottom:8px!important}button.stop-message-btn[_ngcontent-%COMP%]:not(:disabled){color:#ea4335!important}button.stop-message-btn[_ngcontent-%COMP%]:not(:disabled):hover{background-color:#ea433514!important}button[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface-variant)!important;opacity:.38!important;cursor:not-allowed}button.input-prefix-menu-btn[_ngcontent-%COMP%]{margin-left:12px!important}button.input-prefix-menu-btn[_ngcontent-%COMP%]:not(:disabled){color:var(--mat-sys-on-surface-variant)!important}.input-suffix-container[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:8px;margin-right:12px!important}.file-preview[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;margin-bottom:8px}.image-container[_ngcontent-%COMP%]{position:relative;display:inline-block;border-radius:12px;overflow:hidden}.image-preview[_ngcontent-%COMP%]{display:block;width:100%;height:auto;border-radius:12px;width:80px;height:80px}.delete-button[_ngcontent-%COMP%]{position:absolute;top:1px;right:1px;border:none;border-radius:50%;padding:8px;cursor:pointer;color:var(--mat-sys-error);display:flex;align-items:center;justify-content:center;scale:.7}.delete-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px}.file-container[_ngcontent-%COMP%]{position:relative;display:flex;flex-direction:column;gap:8px;height:80px;border-radius:12px}.file-info[_ngcontent-%COMP%]{margin-right:60px;padding-top:20px;padding-left:16px}.chat-input-box[_ngcontent-%COMP%]{caret-color:#fff}.loading-spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;height:100%}.messages-loading-container[_ngcontent-%COMP%]{margin-top:1em;margin-bottom:1em}.agent-loading-indicator[_ngcontent-%COMP%]{margin-top:16px;margin-bottom:8px;padding:0 20px;width:240px}.readme-content[_ngcontent-%COMP%]{padding:0 20px;font-size:14px;line-height:1.8;color:var(--mat-sys-on-surface)}.readme-content[_ngcontent-%COMP%] pre code{font-size:12px!important}.branches-container[_ngcontent-%COMP%]{margin:8px -20px;border-radius:8px;overflow:hidden}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab-header, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab-header{background:transparent!important}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab{background:var(--mat-sys-surface-container-highest)!important}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active{background:#e8f5e9!important}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mdc-tab-indicator__content--underline, .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .mdc-tab-indicator__content--underline{border-color:#2e7d32!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab-header{height:32px!important;background:transparent!important;justify-content:flex-start!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab-label-container{border-bottom:none!important}.branches-container[_ngcontent-%COMP%] .mdc-tab-indicator__content--underline{border-color:#4caf50!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab{height:32px!important;font-size:12px!important;min-width:auto!important;padding:0 16px!important;flex:0 0 auto!important;border-top-left-radius:8px!important;border-top-right-radius:8px!important;background:var(--mat-sys-surface-container-highest)!important;margin-right:2px;overflow:hidden!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab .mdc-tab__text-label{color:var(--mat-sys-on-surface-variant)!important;opacity:.6}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active{background:#1b4d24!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label{color:var(--mat-sys-on-surface)!important;opacity:1!important}.branches-container[_ngcontent-%COMP%] .mat-mdc-tab-body-content{padding:0!important}.branches-container[_ngcontent-%COMP%] .mdc-tab__text-label{font-size:12px!important}.branches-container[_ngcontent-%COMP%] .tab-name{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.branches-container[_ngcontent-%COMP%] .branch-events-content[_ngcontent-%COMP%]{padding:8px 20px;background:#1b4d24}.light-theme[_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .branch-events-content[_ngcontent-%COMP%], .light-theme [_nghost-%COMP%] .branches-container[_ngcontent-%COMP%] .branch-events-content[_ngcontent-%COMP%]{background:#e8f5e9}@media(max-width:768px){.chat-messages[_ngcontent-%COMP%]{padding:12px!important}.chat-input[_ngcontent-%COMP%]{width:100%!important;padding:8px!important}.chat-input-content-row[_ngcontent-%COMP%]{gap:8px!important}.input-suffix-container[_ngcontent-%COMP%]{gap:4px!important;margin-right:4px!important}button.input-prefix-menu-btn[_ngcontent-%COMP%]{margin-left:4px!important}}"]})};var sNe=[[["caption"]],[["colgroup"],["col"]],"*"],lNe=["caption","colgroup, col","*"];function cNe(t,A){t&1&&tt(0,2)}function gNe(t,A){t&1&&(I(0,"thead",0),Bn(1,1),h(),I(2,"tbody",0),Bn(3,2)(4,3),h(),I(5,"tfoot",0),Bn(6,4),h())}function CNe(t,A){t&1&&Bn(0,1)(1,2)(2,3)(3,4)}var Jg=new Me("CDK_TABLE");var $5=(()=>{class t{template=w(yo);constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkCellDef",""]]})}return t})(),eD=(()=>{class t{template=w(yo);constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkHeaderCellDef",""]]})}return t})(),Hae=(()=>{class t{template=w(yo);constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkFooterCellDef",""]]})}return t})(),gE=(()=>{class t{_table=w(Jg,{optional:!0});_hasStickyChanged=!1;get name(){return this._name}set name(e){this._setNameInput(e)}_name;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;get stickyEnd(){return this._stickyEnd}set stickyEnd(e){e!==this._stickyEnd&&(this._stickyEnd=e,this._hasStickyChanged=!0)}_stickyEnd=!1;cell;headerCell;footerCell;cssClassFriendlyName;_columnCssClassName;constructor(){}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}_updateColumnCssClassName(){this._columnCssClassName=[`cdk-column-${this.cssClassFriendlyName}`]}_setNameInput(e){e&&(this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-"),this._updateColumnCssClassName())}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkColumnDef",""]],contentQueries:function(i,n,o){if(i&1&&ga(o,$5,5)(o,eD,5)(o,Hae,5),i&2){let a;cA(a=gA())&&(n.cell=a.first),cA(a=gA())&&(n.headerCell=a.first),cA(a=gA())&&(n.footerCell=a.first)}},inputs:{name:[0,"cdkColumnDef","name"],sticky:[2,"sticky","sticky",mA],stickyEnd:[2,"stickyEnd","stickyEnd",mA]}})}return t})(),X5=class{constructor(A,e){e.nativeElement.classList.add(...A._columnCssClassName)}},Pae=(()=>{class t extends X5{constructor(){super(w(gE),w(dA))}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["cdk-header-cell"],["th","cdk-header-cell",""]],hostAttrs:["role","columnheader",1,"cdk-header-cell"],features:[_t]})}return t})();var jae=(()=>{class t extends X5{constructor(){let e=w(gE),i=w(dA);super(e,i);let n=e._table?._getCellRole();n&&i.nativeElement.setAttribute("role",n)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["cdk-cell"],["td","cdk-cell",""]],hostAttrs:[1,"cdk-cell"],features:[_t]})}return t})();var ML=(()=>{class t{template=w(yo);_differs=w(aI);columns;_columnsDiffer;constructor(){}ngOnChanges(e){if(!this._columnsDiffer){let i=e.columns&&e.columns.currentValue||[];this._columnsDiffer=this._differs.find(i).create(),this._columnsDiffer.diff(i)}}getColumnsDiff(){return this._columnsDiffer.diff(this.columns)}extractCellTemplate(e){return this instanceof SL?e.headerCell.template:this instanceof kL?e.footerCell.template:e.cell.template}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,features:[ai]})}return t})(),SL=(()=>{class t extends ML{_table=w(Jg,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(w(yo),w(aI))}ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkHeaderRowDef",""]],inputs:{columns:[0,"cdkHeaderRowDef","columns"],sticky:[2,"cdkHeaderRowDefSticky","sticky",mA]},features:[_t,ai]})}return t})(),kL=(()=>{class t extends ML{_table=w(Jg,{optional:!0});_hasStickyChanged=!1;get sticky(){return this._sticky}set sticky(e){e!==this._sticky&&(this._sticky=e,this._hasStickyChanged=!0)}_sticky=!1;constructor(){super(w(yo),w(aI))}ngOnChanges(e){super.ngOnChanges(e)}hasStickyChanged(){let e=this._hasStickyChanged;return this.resetStickyChanged(),e}resetStickyChanged(){this._hasStickyChanged=!1}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkFooterRowDef",""]],inputs:{columns:[0,"cdkFooterRowDef","columns"],sticky:[2,"cdkFooterRowDefSticky","sticky",mA]},features:[_t,ai]})}return t})(),AD=(()=>{class t extends ML{_table=w(Jg,{optional:!0});when;constructor(){super(w(yo),w(aI))}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkRowDef",""]],inputs:{columns:[0,"cdkRowDefColumns","columns"],when:[0,"cdkRowDefWhen","when"]},features:[_t]})}return t})(),Um=(()=>{class t{_viewContainer=w(Yo);cells;context;static mostRecentCellOutlet=null;constructor(){t.mostRecentCellOutlet=this}ngOnDestroy(){t.mostRecentCellOutlet===this&&(t.mostRecentCellOutlet=null)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","cdkCellOutlet",""]]})}return t})();var _L=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["cdk-row"],["tr","cdk-row",""]],hostAttrs:["role","row",1,"cdk-row"],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(i,n){i&1&&Bn(0,0)},dependencies:[Um],encapsulation:2})}return t})(),Vae=(()=>{class t{templateRef=w(yo);_contentClassNames=["cdk-no-data-row","cdk-row"];_cellClassNames=["cdk-cell","cdk-no-data-cell"];_cellSelector="td, cdk-cell, [cdk-cell], .cdk-cell";constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["ng-template","cdkNoDataRow",""]]})}return t})(),zae=["top","bottom","left","right"],bL=class{_isNativeHtmlTable;_stickCellCss;_isBrowser;_needsPositionStickyOnElement;direction;_positionListener;_tableInjector;_elemSizeCache=new WeakMap;_resizeObserver=globalThis?.ResizeObserver?new globalThis.ResizeObserver(A=>this._updateCachedSizes(A)):null;_updatedStickyColumnsParamsToReplay=[];_stickyColumnsReplayTimeout=null;_cachedCellWidths=[];_borderCellCss;_destroyed=!1;constructor(A,e,i=!0,n=!0,o,a,r){this._isNativeHtmlTable=A,this._stickCellCss=e,this._isBrowser=i,this._needsPositionStickyOnElement=n,this.direction=o,this._positionListener=a,this._tableInjector=r,this._borderCellCss={top:`${e}-border-elem-top`,bottom:`${e}-border-elem-bottom`,left:`${e}-border-elem-left`,right:`${e}-border-elem-right`}}clearStickyPositioning(A,e){(e.includes("left")||e.includes("right"))&&this._removeFromStickyColumnReplayQueue(A);let i=[];for(let n of A)n.nodeType===n.ELEMENT_NODE&&i.push(n,...Array.from(n.children));ro({write:()=>{for(let n of i)this._removeStickyStyle(n,e)}},{injector:this._tableInjector})}updateStickyColumns(A,e,i,n=!0,o=!0){if(!A.length||!this._isBrowser||!(e.some(m=>m)||i.some(m=>m))){this._positionListener?.stickyColumnsUpdated({sizes:[]}),this._positionListener?.stickyEndColumnsUpdated({sizes:[]});return}let a=A[0],r=a.children.length,s=this.direction==="rtl",l=s?"right":"left",c=s?"left":"right",C=e.lastIndexOf(!0),d=i.indexOf(!0),B,E,u;o&&this._updateStickyColumnReplayQueue({rows:[...A],stickyStartStates:[...e],stickyEndStates:[...i]}),ro({earlyRead:()=>{B=this._getCellWidths(a,n),E=this._getStickyStartColumnPositions(B,e),u=this._getStickyEndColumnPositions(B,i)},write:()=>{for(let m of A)for(let f=0;f!!m)&&(this._positionListener.stickyColumnsUpdated({sizes:C===-1?[]:B.slice(0,C+1).map((m,f)=>e[f]?m:null)}),this._positionListener.stickyEndColumnsUpdated({sizes:d===-1?[]:B.slice(d).map((m,f)=>i[f+d]?m:null).reverse()}))}},{injector:this._tableInjector})}stickRows(A,e,i){if(!this._isBrowser)return;let n=i==="bottom"?A.slice().reverse():A,o=i==="bottom"?e.slice().reverse():e,a=[],r=[],s=[];ro({earlyRead:()=>{for(let l=0,c=0;l{let l=o.lastIndexOf(!0);for(let c=0;c{let i=A.querySelector("tfoot");i&&(e.some(n=>!n)?this._removeStickyStyle(i,["bottom"]):this._addStickyStyle(i,"bottom",0,!1))}},{injector:this._tableInjector})}destroy(){this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._resizeObserver?.disconnect(),this._destroyed=!0}_removeStickyStyle(A,e){if(!A.classList.contains(this._stickCellCss))return;for(let n of e)A.style[n]="",A.classList.remove(this._borderCellCss[n]);zae.some(n=>e.indexOf(n)===-1&&A.style[n])?A.style.zIndex=this._getCalculatedZIndex(A):(A.style.zIndex="",this._needsPositionStickyOnElement&&(A.style.position=""),A.classList.remove(this._stickCellCss))}_addStickyStyle(A,e,i,n){A.classList.add(this._stickCellCss),n&&A.classList.add(this._borderCellCss[e]),A.style[e]=`${i}px`,A.style.zIndex=this._getCalculatedZIndex(A),this._needsPositionStickyOnElement&&(A.style.cssText+="position: -webkit-sticky; position: sticky; ")}_getCalculatedZIndex(A){let e={top:100,bottom:10,left:1,right:1},i=0;for(let n of zae)A.style[n]&&(i+=e[n]);return i?`${i}`:""}_getCellWidths(A,e=!0){if(!e&&this._cachedCellWidths.length)return this._cachedCellWidths;let i=[],n=A.children;for(let o=0;o0;o--)e[o]&&(i[o]=n,n+=A[o]);return i}_retrieveElementSize(A){let e=this._elemSizeCache.get(A);if(e)return e;let i=A.getBoundingClientRect(),n={width:i.width,height:i.height};return this._resizeObserver&&(this._elemSizeCache.set(A,n),this._resizeObserver.observe(A,{box:"border-box"})),n}_updateStickyColumnReplayQueue(A){this._removeFromStickyColumnReplayQueue(A.rows),this._stickyColumnsReplayTimeout||this._updatedStickyColumnsParamsToReplay.push(A)}_removeFromStickyColumnReplayQueue(A){let e=new Set(A);for(let i of this._updatedStickyColumnsParamsToReplay)i.rows=i.rows.filter(n=>!e.has(n));this._updatedStickyColumnsParamsToReplay=this._updatedStickyColumnsParamsToReplay.filter(i=>!!i.rows.length)}_updateCachedSizes(A){let e=!1;for(let i of A){let n=i.borderBoxSize?.length?{width:i.borderBoxSize[0].inlineSize,height:i.borderBoxSize[0].blockSize}:{width:i.contentRect.width,height:i.contentRect.height};n.width!==this._elemSizeCache.get(i.target)?.width&&dNe(i.target)&&(e=!0),this._elemSizeCache.set(i.target,n)}e&&this._updatedStickyColumnsParamsToReplay.length&&(this._stickyColumnsReplayTimeout&&clearTimeout(this._stickyColumnsReplayTimeout),this._stickyColumnsReplayTimeout=setTimeout(()=>{if(!this._destroyed){for(let i of this._updatedStickyColumnsParamsToReplay)this.updateStickyColumns(i.rows,i.stickyStartStates,i.stickyEndStates,!0,!1);this._updatedStickyColumnsParamsToReplay=[],this._stickyColumnsReplayTimeout=null}},0))}};function dNe(t){return["cdk-cell","cdk-header-cell","cdk-footer-cell"].some(A=>t.classList.contains(A))}var Km=new Me("STICKY_POSITIONING_LISTENER");var xL=(()=>{class t{viewContainer=w(Yo);elementRef=w(dA);constructor(){let e=w(Jg);e._rowOutlet=this,e._outletAssigned()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","rowOutlet",""]]})}return t})(),RL=(()=>{class t{viewContainer=w(Yo);elementRef=w(dA);constructor(){let e=w(Jg);e._headerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","headerRowOutlet",""]]})}return t})(),NL=(()=>{class t{viewContainer=w(Yo);elementRef=w(dA);constructor(){let e=w(Jg);e._footerRowOutlet=this,e._outletAssigned()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","footerRowOutlet",""]]})}return t})(),FL=(()=>{class t{viewContainer=w(Yo);elementRef=w(dA);constructor(){let e=w(Jg);e._noDataRowOutlet=this,e._outletAssigned()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["","noDataRowOutlet",""]]})}return t})(),LL=(()=>{class t{_differs=w(aI);_changeDetectorRef=w(xt);_elementRef=w(dA);_dir=w(Fo,{optional:!0});_platform=w(pi);_viewRepeater;_viewportRuler=w(Ts);_injector=w(Rt);_virtualScrollViewport=w(Mj,{optional:!0,host:!0});_positionListener=w(Km,{optional:!0})||w(Km,{optional:!0,skipSelf:!0});_document=w(Ii);_data;_renderedRange;_onDestroy=new rA;_renderRows;_renderChangeSubscription=null;_columnDefsByName=new Map;_rowDefs;_headerRowDefs;_footerRowDefs;_dataDiffer;_defaultRowDef=null;_customColumnDefs=new Set;_customRowDefs=new Set;_customHeaderRowDefs=new Set;_customFooterRowDefs=new Set;_customNoDataRow=null;_headerRowDefChanged=!0;_footerRowDefChanged=!0;_stickyColumnStylesNeedReset=!0;_forceRecalculateCellWidths=!0;_cachedRenderRowsMap=new Map;_isNativeHtmlTable;_stickyStyler;stickyCssClass="cdk-table-sticky";needsPositionStickyOnElement=!0;_isServer;_isShowingNoDataRow=!1;_hasAllOutlets=!1;_hasInitialized=!1;_headerRowStickyUpdates=new rA;_footerRowStickyUpdates=new rA;_disableVirtualScrolling=!1;_getCellRole(){if(this._cellRoleInternal===void 0){let e=this._elementRef.nativeElement.getAttribute("role");return e==="grid"||e==="treegrid"?"gridcell":"cell"}return this._cellRoleInternal}_cellRoleInternal=void 0;get trackBy(){return this._trackByFn}set trackBy(e){this._trackByFn=e}_trackByFn;get dataSource(){return this._dataSource}set dataSource(e){this._dataSource!==e&&(this._switchDataSource(e),this._changeDetectorRef.markForCheck())}_dataSource;_dataSourceChanges=new rA;_dataStream=new rA;get multiTemplateDataRows(){return this._multiTemplateDataRows}set multiTemplateDataRows(e){this._multiTemplateDataRows=e,this._rowOutlet&&this._rowOutlet.viewContainer.length&&(this._forceRenderDataRows(),this.updateStickyColumnStyles())}_multiTemplateDataRows=!1;get fixedLayout(){return this._virtualScrollEnabled()?!0:this._fixedLayout}set fixedLayout(e){this._fixedLayout=e,this._forceRecalculateCellWidths=!0,this._stickyColumnStylesNeedReset=!0}_fixedLayout=!1;recycleRows=!1;contentChanged=new Le;viewChange=new di({start:0,end:Number.MAX_VALUE});_rowOutlet;_headerRowOutlet;_footerRowOutlet;_noDataRowOutlet;_contentColumnDefs;_contentRowDefs;_contentHeaderRowDefs;_contentFooterRowDefs;_noDataRow;constructor(){w(new $s("role"),{optional:!0})||this._elementRef.nativeElement.setAttribute("role","table"),this._isServer=!this._platform.isBrowser,this._isNativeHtmlTable=this._elementRef.nativeElement.nodeName==="TABLE",this._dataDiffer=this._differs.find([]).create((i,n)=>this.trackBy?this.trackBy(n.dataIndex,n.data):n)}ngOnInit(){this._setupStickyStyler(),this._viewportRuler.change().pipe(Mt(this._onDestroy)).subscribe(()=>{this._forceRecalculateCellWidths=!0})}ngAfterContentInit(){this._viewRepeater=this.recycleRows||this._virtualScrollEnabled()?new k6:new _6,this._virtualScrollEnabled()&&this._setupVirtualScrolling(this._virtualScrollViewport),this._hasInitialized=!0}ngAfterContentChecked(){this._canRender()&&this._render()}ngOnDestroy(){this._stickyStyler?.destroy(),[this._rowOutlet?.viewContainer,this._headerRowOutlet?.viewContainer,this._footerRowOutlet?.viewContainer,this._cachedRenderRowsMap,this._customColumnDefs,this._customRowDefs,this._customHeaderRowDefs,this._customFooterRowDefs,this._columnDefsByName].forEach(e=>{e?.clear()}),this._headerRowDefs=[],this._footerRowDefs=[],this._defaultRowDef=null,this._headerRowStickyUpdates.complete(),this._footerRowStickyUpdates.complete(),this._onDestroy.next(),this._onDestroy.complete(),sp(this.dataSource)&&this.dataSource.disconnect(this)}renderRows(){this._renderRows=this._getAllRenderRows();let e=this._dataDiffer.diff(this._renderRows);if(!e){this._updateNoDataRow(),this.contentChanged.next();return}let i=this._rowOutlet.viewContainer;this._viewRepeater.applyChanges(e,i,(n,o,a)=>this._getEmbeddedViewArgs(n.item,a),n=>n.item.data,n=>{n.operation===ng.INSERTED&&n.context&&this._renderCellTemplateForItem(n.record.item.rowDef,n.context)}),this._updateRowIndexContext(),e.forEachIdentityChange(n=>{let o=i.get(n.currentIndex);o.context.$implicit=n.item.data}),this._updateNoDataRow(),this.contentChanged.next(),this.updateStickyColumnStyles()}addColumnDef(e){this._customColumnDefs.add(e)}removeColumnDef(e){this._customColumnDefs.delete(e)}addRowDef(e){this._customRowDefs.add(e)}removeRowDef(e){this._customRowDefs.delete(e)}addHeaderRowDef(e){this._customHeaderRowDefs.add(e),this._headerRowDefChanged=!0}removeHeaderRowDef(e){this._customHeaderRowDefs.delete(e),this._headerRowDefChanged=!0}addFooterRowDef(e){this._customFooterRowDefs.add(e),this._footerRowDefChanged=!0}removeFooterRowDef(e){this._customFooterRowDefs.delete(e),this._footerRowDefChanged=!0}setNoDataRow(e){this._customNoDataRow=e}updateStickyHeaderRowStyles(){let e=this._getRenderedRows(this._headerRowOutlet);if(this._isNativeHtmlTable){let n=Yae(this._headerRowOutlet,"thead");n&&(n.style.display=e.length?"":"none")}let i=this._headerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(e,["top"]),this._stickyStyler.stickRows(e,i,"top"),this._headerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyFooterRowStyles(){let e=this._getRenderedRows(this._footerRowOutlet);if(this._isNativeHtmlTable){let n=Yae(this._footerRowOutlet,"tfoot");n&&(n.style.display=e.length?"":"none")}let i=this._footerRowDefs.map(n=>n.sticky);this._stickyStyler.clearStickyPositioning(e,["bottom"]),this._stickyStyler.stickRows(e,i,"bottom"),this._stickyStyler.updateStickyFooterContainer(this._elementRef.nativeElement,i),this._footerRowDefs.forEach(n=>n.resetStickyChanged())}updateStickyColumnStyles(){let e=this._getRenderedRows(this._headerRowOutlet),i=this._getRenderedRows(this._rowOutlet),n=this._getRenderedRows(this._footerRowOutlet);(this._isNativeHtmlTable&&!this.fixedLayout||this._stickyColumnStylesNeedReset)&&(this._stickyStyler.clearStickyPositioning([...e,...i,...n],["left","right"]),this._stickyColumnStylesNeedReset=!1),e.forEach((o,a)=>{this._addStickyColumnStyles([o],this._headerRowDefs[a])}),this._rowDefs.forEach(o=>{let a=[];for(let r=0;r{this._addStickyColumnStyles([o],this._footerRowDefs[a])}),Array.from(this._columnDefsByName.values()).forEach(o=>o.resetStickyChanged())}stickyColumnsUpdated(e){this._positionListener?.stickyColumnsUpdated(e)}stickyEndColumnsUpdated(e){this._positionListener?.stickyEndColumnsUpdated(e)}stickyHeaderRowsUpdated(e){this._headerRowStickyUpdates.next(e),this._positionListener?.stickyHeaderRowsUpdated(e)}stickyFooterRowsUpdated(e){this._footerRowStickyUpdates.next(e),this._positionListener?.stickyFooterRowsUpdated(e)}_outletAssigned(){!this._hasAllOutlets&&this._rowOutlet&&this._headerRowOutlet&&this._footerRowOutlet&&this._noDataRowOutlet&&(this._hasAllOutlets=!0,this._canRender()&&this._render())}_canRender(){return this._hasAllOutlets&&this._hasInitialized}_render(){this._cacheRowDefs(),this._cacheColumnDefs(),!this._headerRowDefs.length&&!this._footerRowDefs.length&&this._rowDefs.length;let i=this._renderUpdatedColumns()||this._headerRowDefChanged||this._footerRowDefChanged;this._stickyColumnStylesNeedReset=this._stickyColumnStylesNeedReset||i,this._forceRecalculateCellWidths=i,this._headerRowDefChanged&&(this._forceRenderHeaderRows(),this._headerRowDefChanged=!1),this._footerRowDefChanged&&(this._forceRenderFooterRows(),this._footerRowDefChanged=!1),this.dataSource&&this._rowDefs.length>0&&!this._renderChangeSubscription?this._observeRenderChanges():this._stickyColumnStylesNeedReset&&this.updateStickyColumnStyles(),this._checkStickyStates()}_getAllRenderRows(){if(!Array.isArray(this._data)||!this._renderedRange)return[];let e=[],i=Math.min(this._data.length,this._renderedRange.end),n=this._cachedRenderRowsMap;this._cachedRenderRowsMap=new Map;for(let o=this._renderedRange.start;o{let r=n&&n.has(a)?n.get(a):[];if(r.length){let s=r.shift();return s.dataIndex=i,s}else return{data:e,rowDef:a,dataIndex:i}})}_cacheColumnDefs(){this._columnDefsByName.clear(),W5(this._getOwnDefs(this._contentColumnDefs),this._customColumnDefs).forEach(i=>{this._columnDefsByName.has(i.name),this._columnDefsByName.set(i.name,i)})}_cacheRowDefs(){this._headerRowDefs=W5(this._getOwnDefs(this._contentHeaderRowDefs),this._customHeaderRowDefs),this._footerRowDefs=W5(this._getOwnDefs(this._contentFooterRowDefs),this._customFooterRowDefs),this._rowDefs=W5(this._getOwnDefs(this._contentRowDefs),this._customRowDefs);let e=this._rowDefs.filter(i=>!i.when);this._defaultRowDef=e[0]}_renderUpdatedColumns(){let e=(a,r)=>{let s=!!r.getColumnsDiff();return a||s},i=this._rowDefs.reduce(e,!1);i&&this._forceRenderDataRows();let n=this._headerRowDefs.reduce(e,!1);n&&this._forceRenderHeaderRows();let o=this._footerRowDefs.reduce(e,!1);return o&&this._forceRenderFooterRows(),i||n||o}_switchDataSource(e){this._data=[],sp(this.dataSource)&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||(this._dataDiffer&&this._dataDiffer.diff([]),this._rowOutlet&&this._rowOutlet.viewContainer.clear()),this._dataSource=e}_observeRenderChanges(){if(!this.dataSource)return;let e;sp(this.dataSource)?e=this.dataSource.connect(this):nB(this.dataSource)?e=this.dataSource:Array.isArray(this.dataSource)&&(e=sA(this.dataSource)),this._renderChangeSubscription=_r([e,this.viewChange]).pipe(Mt(this._onDestroy)).subscribe(([i,n])=>{this._data=i||[],this._renderedRange=n,this._dataStream.next(i),this.renderRows()})}_forceRenderHeaderRows(){this._headerRowOutlet.viewContainer.length>0&&this._headerRowOutlet.viewContainer.clear(),this._headerRowDefs.forEach((e,i)=>this._renderRow(this._headerRowOutlet,e,i)),this.updateStickyHeaderRowStyles()}_forceRenderFooterRows(){this._footerRowOutlet.viewContainer.length>0&&this._footerRowOutlet.viewContainer.clear(),this._footerRowDefs.forEach((e,i)=>this._renderRow(this._footerRowOutlet,e,i)),this.updateStickyFooterRowStyles()}_addStickyColumnStyles(e,i){let n=Array.from(i?.columns||[]).map(r=>{let s=this._columnDefsByName.get(r);return s}),o=n.map(r=>r.sticky),a=n.map(r=>r.stickyEnd);this._stickyStyler.updateStickyColumns(e,o,a,!this.fixedLayout||this._forceRecalculateCellWidths)}_getRenderedRows(e){let i=[];for(let n=0;n!o.when||o.when(i,e));else{let o=this._rowDefs.find(a=>a.when&&a.when(i,e))||this._defaultRowDef;o&&n.push(o)}return n.length,n}_getEmbeddedViewArgs(e,i){let n=e.rowDef,o={$implicit:e.data};return{templateRef:n.template,context:o,index:i}}_renderRow(e,i,n,o={}){let a=e.viewContainer.createEmbeddedView(i.template,o,n);return this._renderCellTemplateForItem(i,o),a}_renderCellTemplateForItem(e,i){for(let n of this._getCellTemplates(e))Um.mostRecentCellOutlet&&Um.mostRecentCellOutlet._viewContainer.createEmbeddedView(n,i);this._changeDetectorRef.markForCheck()}_updateRowIndexContext(){let e=this._rowOutlet.viewContainer;for(let i=0,n=e.length;i{let n=this._columnDefsByName.get(i);return e.extractCellTemplate(n)})}_forceRenderDataRows(){this._dataDiffer.diff([]),this._rowOutlet.viewContainer.clear(),this.renderRows()}_checkStickyStates(){let e=(i,n)=>i||n.hasStickyChanged();this._headerRowDefs.reduce(e,!1)&&this.updateStickyHeaderRowStyles(),this._footerRowDefs.reduce(e,!1)&&this.updateStickyFooterRowStyles(),Array.from(this._columnDefsByName.values()).reduce(e,!1)&&(this._stickyColumnStylesNeedReset=!0,this.updateStickyColumnStyles())}_setupStickyStyler(){let e=this._dir?this._dir.value:"ltr",i=this._injector;this._stickyStyler=new bL(this._isNativeHtmlTable,this.stickyCssClass,this._platform.isBrowser,this.needsPositionStickyOnElement,e,this,i),(this._dir?this._dir.change:sA()).pipe(Mt(this._onDestroy)).subscribe(n=>{this._stickyStyler.direction=n,this.updateStickyColumnStyles()})}_setupVirtualScrolling(e){let i=typeof requestAnimationFrame<"u"?tB:O7;this.viewChange.next({start:0,end:0}),e.renderedRangeStream.pipe(tI(0,i),Mt(this._onDestroy)).subscribe(this.viewChange),e.attach({dataStream:this._dataStream,measureRangeSize:(n,o)=>this._measureRangeSize(n,o)}),_r([e.renderedContentOffset,this._headerRowStickyUpdates]).pipe(Mt(this._onDestroy)).subscribe(([n,o])=>{if(!(!o.sizes||!o.offsets||!o.elements))for(let a=0;a{if(!(!o.sizes||!o.offsets||!o.elements))for(let a=0;a!i._table||i._table===this)}_updateNoDataRow(){let e=this._customNoDataRow||this._noDataRow;if(!e)return;let i=this._rowOutlet.viewContainer.length===0;if(i===this._isShowingNoDataRow)return;let n=this._noDataRowOutlet.viewContainer;if(i){let o=n.createEmbeddedView(e.templateRef),a=o.rootNodes[0];if(o.rootNodes.length===1&&a?.nodeType===this._document.ELEMENT_NODE){a.setAttribute("role","row"),a.classList.add(...e._contentClassNames);let r=a.querySelectorAll(e._cellSelector);for(let s=0;s=e.end||i!=="vertical")return 0;let n=this.viewChange.value,o=this._rowOutlet.viewContainer;e.startn.end;let a=e.start-n.start,r=e.end-e.start,s,l;for(let d=0;d-1;d--){let B=o.get(d+a);if(B&&B.rootNodes.length){l=B.rootNodes[B.rootNodes.length-1];break}}let c=s?.getBoundingClientRect?.(),C=l?.getBoundingClientRect?.();return c&&C?C.bottom-c.top:0}_virtualScrollEnabled(){return!this._disableVirtualScrolling&&this._virtualScrollViewport!=null}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["cdk-table"],["table","cdk-table",""]],contentQueries:function(i,n,o){if(i&1&&ga(o,Vae,5)(o,gE,5)(o,AD,5)(o,SL,5)(o,kL,5),i&2){let a;cA(a=gA())&&(n._noDataRow=a.first),cA(a=gA())&&(n._contentColumnDefs=a),cA(a=gA())&&(n._contentRowDefs=a),cA(a=gA())&&(n._contentHeaderRowDefs=a),cA(a=gA())&&(n._contentFooterRowDefs=a)}},hostAttrs:[1,"cdk-table"],hostVars:2,hostBindings:function(i,n){i&2&&_e("cdk-table-fixed-layout",n.fixedLayout)},inputs:{trackBy:"trackBy",dataSource:"dataSource",multiTemplateDataRows:[2,"multiTemplateDataRows","multiTemplateDataRows",mA],fixedLayout:[2,"fixedLayout","fixedLayout",mA],recycleRows:[2,"recycleRows","recycleRows",mA]},outputs:{contentChanged:"contentChanged"},exportAs:["cdkTable"],features:[yt([{provide:Jg,useExisting:t},{provide:Km,useValue:null}])],ngContentSelectors:lNe,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(i,n){i&1&&(Yt(sNe),tt(0),tt(1,1),T(2,cNe,1,0),T(3,gNe,7,0)(4,CNe,4,0)),i&2&&(Q(2),O(n._isServer?2:-1),Q(),O(n._isNativeHtmlTable?3:4))},dependencies:[RL,xL,FL,NL],styles:[`.cdk-table-fixed-layout{table-layout:fixed} +`],encapsulation:2})}return t})();function W5(t,A){return t.concat(Array.from(A))}function Yae(t,A){let e=A.toUpperCase(),i=t.viewContainer.element.nativeElement;for(;i;){let n=i.nodeType===1?i.nodeName:null;if(n===e)return i;if(n==="TABLE")break;i=i.parentNode}return null}var INe=[[["caption"]],[["colgroup"],["col"]],"*"],BNe=["caption","colgroup, col","*"];function hNe(t,A){t&1&&tt(0,2)}function uNe(t,A){t&1&&(I(0,"thead",0),Bn(1,1),h(),I(2,"tbody",2),Bn(3,3)(4,4),h(),I(5,"tfoot",0),Bn(6,5),h())}function ENe(t,A){t&1&&Bn(0,1)(1,3)(2,4)(3,5)}var qae=(()=>{class t extends LL{stickyCssClass="mat-mdc-table-sticky";needsPositionStickyOnElement=!1;static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275cmp=De({type:t,selectors:[["mat-table"],["table","mat-table",""]],hostAttrs:[1,"mat-mdc-table","mdc-data-table__table"],hostVars:2,hostBindings:function(i,n){i&2&&_e("mat-table-fixed-layout",n.fixedLayout)},exportAs:["matTable"],features:[yt([{provide:LL,useExisting:t},{provide:Jg,useExisting:t},{provide:Km,useValue:null}]),_t],ngContentSelectors:BNe,decls:5,vars:2,consts:[["role","rowgroup"],["headerRowOutlet",""],["role","rowgroup",1,"mdc-data-table__content"],["rowOutlet",""],["noDataRowOutlet",""],["footerRowOutlet",""]],template:function(i,n){i&1&&(Yt(INe),tt(0),tt(1,1),T(2,hNe,1,0),T(3,uNe,7,0)(4,ENe,4,0)),i&2&&(Q(2),O(n._isServer?2:-1),Q(),O(n._isNativeHtmlTable?3:4))},dependencies:[RL,xL,FL,NL],styles:[`.mat-mdc-table-sticky{position:sticky !important}mat-table{display:block}mat-header-row{min-height:var(--mat-table-header-container-height, 56px)}mat-row{min-height:var(--mat-table-row-item-container-height, 52px)}mat-footer-row{min-height:var(--mat-table-footer-container-height, 52px)}mat-row,mat-header-row,mat-footer-row{display:flex;border-width:0;border-bottom-width:1px;border-style:solid;align-items:center;box-sizing:border-box}mat-cell:first-of-type,mat-header-cell:first-of-type,mat-footer-cell:first-of-type{padding-left:24px}[dir=rtl] mat-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:first-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:first-of-type:not(:only-of-type){padding-left:0;padding-right:24px}mat-cell:last-of-type,mat-header-cell:last-of-type,mat-footer-cell:last-of-type{padding-right:24px}[dir=rtl] mat-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-header-cell:last-of-type:not(:only-of-type),[dir=rtl] mat-footer-cell:last-of-type:not(:only-of-type){padding-right:0;padding-left:24px}mat-cell,mat-header-cell,mat-footer-cell{flex:1;display:flex;align-items:center;overflow:hidden;word-wrap:break-word;min-height:inherit}.mat-mdc-table{min-width:100%;border:0;border-spacing:0;table-layout:auto;white-space:normal;background-color:var(--mat-table-background-color, var(--mat-sys-surface))}.mat-table-fixed-layout{table-layout:fixed}.mdc-data-table__cell{box-sizing:border-box;overflow:hidden;text-align:start;text-overflow:ellipsis}.mdc-data-table__cell,.mdc-data-table__header-cell{padding:0 16px}.mat-mdc-header-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-header-container-height, 56px);color:var(--mat-table-header-headline-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-header-headline-font, var(--mat-sys-title-small-font, Roboto, sans-serif));line-height:var(--mat-table-header-headline-line-height, var(--mat-sys-title-small-line-height));font-size:var(--mat-table-header-headline-size, var(--mat-sys-title-small-size, 14px));font-weight:var(--mat-table-header-headline-weight, var(--mat-sys-title-small-weight, 500))}.mat-mdc-row{height:var(--mat-table-row-item-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)))}.mat-mdc-row,.mdc-data-table__content{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:var(--mat-table-row-item-label-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-row-item-label-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-row-item-label-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-row-item-label-text-weight, var(--mat-sys-body-medium-weight))}.mat-mdc-footer-row{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;height:var(--mat-table-footer-container-height, 52px);color:var(--mat-table-row-item-label-text-color, var(--mat-sys-on-surface, rgba(0, 0, 0, 0.87)));font-family:var(--mat-table-footer-supporting-text-font, var(--mat-sys-body-medium-font, Roboto, sans-serif));line-height:var(--mat-table-footer-supporting-text-line-height, var(--mat-sys-body-medium-line-height));font-size:var(--mat-table-footer-supporting-text-size, var(--mat-sys-body-medium-size, 14px));font-weight:var(--mat-table-footer-supporting-text-weight, var(--mat-sys-body-medium-weight));letter-spacing:var(--mat-table-footer-supporting-text-tracking, var(--mat-sys-body-medium-tracking))}.mat-mdc-header-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-header-headline-tracking, var(--mat-sys-title-small-tracking));font-weight:inherit;line-height:inherit;box-sizing:border-box;text-overflow:ellipsis;overflow:hidden;outline:none;text-align:start}.mdc-data-table__row:last-child>.mat-mdc-header-cell{border-bottom:none}.mat-mdc-cell{border-bottom-color:var(--mat-table-row-item-outline-color, var(--mat-sys-outline, rgba(0, 0, 0, 0.12)));border-bottom-width:var(--mat-table-row-item-outline-width, 1px);border-bottom-style:solid;letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking));line-height:inherit}.mdc-data-table__row:last-child>.mat-mdc-cell{border-bottom:none}.mat-mdc-footer-cell{letter-spacing:var(--mat-table-row-item-label-text-tracking, var(--mat-sys-body-medium-tracking))}mat-row.mat-mdc-row,mat-header-row.mat-mdc-header-row,mat-footer-row.mat-mdc-footer-row{border-bottom:none}.mat-mdc-table tbody,.mat-mdc-table tfoot,.mat-mdc-table thead,.mat-mdc-cell,.mat-mdc-footer-cell,.mat-mdc-header-row,.mat-mdc-row,.mat-mdc-footer-row,.mat-mdc-table .mat-mdc-header-cell{background:inherit}.mat-mdc-table mat-header-row.mat-mdc-header-row,.mat-mdc-table mat-row.mat-mdc-row,.mat-mdc-table mat-footer-row.mat-mdc-footer-cell{height:unset}mat-header-cell.mat-mdc-header-cell,mat-cell.mat-mdc-cell,mat-footer-cell.mat-mdc-footer-cell{align-self:stretch} +`],encapsulation:2})}return t})(),Zae=(()=>{class t extends $5{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","matCellDef",""]],features:[yt([{provide:$5,useExisting:t}]),_t]})}return t})(),Wae=(()=>{class t extends eD{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","matHeaderCellDef",""]],features:[yt([{provide:eD,useExisting:t}]),_t]})}return t})();var Xae=(()=>{class t extends gE{get name(){return this._name}set name(e){this._setNameInput(e)}_updateColumnCssClassName(){super._updateColumnCssClassName(),this._columnCssClassName.push(`mat-column-${this.cssClassFriendlyName}`)}static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","matColumnDef",""]],inputs:{name:[0,"matColumnDef","name"]},features:[yt([{provide:gE,useExisting:t}]),_t]})}return t})(),$ae=(()=>{class t extends Pae{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["mat-header-cell"],["th","mat-header-cell",""]],hostAttrs:["role","columnheader",1,"mat-mdc-header-cell","mdc-data-table__header-cell"],features:[_t]})}return t})();var ere=(()=>{class t extends jae{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["mat-cell"],["td","mat-cell",""]],hostAttrs:[1,"mat-mdc-cell","mdc-data-table__cell"],features:[_t]})}return t})();var Are=(()=>{class t extends AD{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275dir=We({type:t,selectors:[["","matRowDef",""]],inputs:{columns:[0,"matRowDefColumns","columns"],when:[0,"matRowDefWhen","when"]},features:[yt([{provide:AD,useExisting:t}]),_t]})}return t})();var tre=(()=>{class t extends _L{static \u0275fac=(()=>{let e;return function(n){return(e||(e=Gi(t)))(n||t)}})();static \u0275cmp=De({type:t,selectors:[["mat-row"],["tr","mat-row",""]],hostAttrs:["role","row",1,"mat-mdc-row","mdc-data-table__row"],exportAs:["matRow"],features:[yt([{provide:_L,useExisting:t}]),_t],decls:1,vars:0,consts:[["cdkCellOutlet",""]],template:function(i,n){i&1&&Bn(0,0)},dependencies:[Um],encapsulation:2})}return t})();var QNe=9007199254740991,z1=class extends rp{_data;_renderData=new di([]);_filter=new di("");_internalPageChanges=new rA;_renderChangesSubscription=null;filteredData;get data(){return this._data.value}set data(A){A=Array.isArray(A)?A:[],this._data.next(A),this._renderChangesSubscription||this._filterData(A)}get filter(){return this._filter.value}set filter(A){this._filter.next(A),this._renderChangesSubscription||this._filterData(this.data)}get sort(){return this._sort}set sort(A){this._sort=A,this._updateChangeSubscription()}_sort;get paginator(){return this._paginator}set paginator(A){this._paginator=A,this._updateChangeSubscription()}_paginator;sortingDataAccessor=(A,e)=>{let i=A[e];if(g3(i)){let n=Number(i);return n{let i=e.active,n=e.direction;return!i||n==""?A:A.sort((o,a)=>{let r=this.sortingDataAccessor(o,i),s=this.sortingDataAccessor(a,i),l=typeof r,c=typeof s;l!==c&&(l==="number"&&(r+=""),c==="number"&&(s+=""));let C=0;return r!=null&&s!=null?r>s?C=1:r{let i=e.trim().toLowerCase();return Object.values(A).some(n=>`${n}`.toLowerCase().includes(i))};constructor(A=[]){super(),this._data=new di(A),this._updateChangeSubscription()}_updateChangeSubscription(){let A=this._sort?Zi(this._sort.sortChange,this._sort.initialized):sA(null),e=this._paginator?Zi(this._paginator.page,this._internalPageChanges,this._paginator.initialized):sA(null),i=this._data,n=_r([i,this._filter]).pipe(xA(([r])=>this._filterData(r))),o=_r([n,A]).pipe(xA(([r])=>this._orderData(r))),a=_r([o,e]).pipe(xA(([r])=>this._pageData(r)));this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=a.subscribe(r=>this._renderData.next(r))}_filterData(A){return this.filteredData=this.filter==null||this.filter===""?A:A.filter(e=>this.filterPredicate(e,this.filter)),this.paginator&&this._updatePaginator(this.filteredData.length),this.filteredData}_orderData(A){return this.sort?this.sortData(A.slice(),this.sort):A}_pageData(A){if(!this.paginator)return A;let e=this.paginator.pageIndex*this.paginator.pageSize;return A.slice(e,e+this.paginator.pageSize)}_updatePaginator(A){Promise.resolve().then(()=>{let e=this.paginator;if(e&&(e.length=A,e.pageIndex>0)){let i=Math.ceil(e.length/e.pageSize)-1||0,n=Math.min(e.pageIndex,i);n!==e.pageIndex&&(e.pageIndex=n,this._internalPageChanges.next())}})}connect(){return this._renderChangesSubscription||this._updateChangeSubscription(),this._renderData}disconnect(){this._renderChangesSubscription?.unsubscribe(),this._renderChangesSubscription=null}};var CE=[{metricName:"tool_trajectory_avg_score",threshold:1},{metricName:"response_match_score",threshold:.7}];var tD="0123456789abcdef",iD=class t{constructor(A){this.bytes=A}static ofInner(A){if(A.length!==16)throw new TypeError("not 128-bit length");return new t(A)}static fromFieldsV7(A,e,i,n){if(!Number.isInteger(A)||!Number.isInteger(e)||!Number.isInteger(i)||!Number.isInteger(n)||A<0||e<0||i<0||n<0||A>0xffffffffffff||e>4095||i>1073741823||n>4294967295)throw new RangeError("invalid field value");let o=new Uint8Array(16);return o[0]=A/2**40,o[1]=A/2**32,o[2]=A/2**24,o[3]=A/2**16,o[4]=A/2**8,o[5]=A,o[6]=112|e>>>8,o[7]=e,o[8]=128|i>>>24,o[9]=i>>>16,o[10]=i>>>8,o[11]=i,o[12]=n>>>24,o[13]=n>>>16,o[14]=n>>>8,o[15]=n,new t(o)}static parse(A){var e,i,n,o;let a;switch(A.length){case 32:a=(e=/^[0-9a-f]{32}$/i.exec(A))===null||e===void 0?void 0:e[0];break;case 36:a=(i=/^([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(A))===null||i===void 0?void 0:i.slice(1,6).join("");break;case 38:a=(n=/^\{([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})\}$/i.exec(A))===null||n===void 0?void 0:n.slice(1,6).join("");break;case 45:a=(o=/^urn:uuid:([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})$/i.exec(A))===null||o===void 0?void 0:o.slice(1,6).join("");break;default:break}if(a){let r=new Uint8Array(16);for(let s=0;s<16;s+=4){let l=parseInt(a.substring(2*s,2*s+8),16);r[s+0]=l>>>24,r[s+1]=l>>>16,r[s+2]=l>>>8,r[s+3]=l}return new t(r)}else throw new SyntaxError("could not parse UUID string")}toString(){let A="";for(let e=0;e>>4),A+=tD.charAt(this.bytes[e]&15),(e===3||e===5||e===7||e===9)&&(A+="-");return A}toHex(){let A="";for(let e=0;e>>4),A+=tD.charAt(this.bytes[e]&15);return A}toJSON(){return this.toString()}getVariant(){let A=this.bytes[8]>>>4;if(A<0)throw new Error("unreachable");if(A<=7)return this.bytes.every(e=>e===0)?"NIL":"VAR_0";if(A<=11)return"VAR_10";if(A<=13)return"VAR_110";if(A<=15)return this.bytes.every(e=>e===255)?"MAX":"VAR_RESERVED";throw new Error("unreachable")}getVersion(){return this.getVariant()==="VAR_10"?this.bytes[6]>>>4:void 0}clone(){return new t(this.bytes.slice(0))}equals(A){return this.compareTo(A)===0}compareTo(A){for(let e=0;e<16;e++){let i=this.bytes[e]-A.bytes[e];if(i!==0)return Math.sign(i)}return 0}},GL=class{constructor(A){this.timestamp_biased=0,this.counter=0,this.random=A??pNe()}generate(){return this.generateOrResetCore(Date.now(),1e4)}generateOrAbort(){return this.generateOrAbortCore(Date.now(),1e4)}generateOrResetCore(A,e){let i=this.generateOrAbortCore(A,e);return i===void 0&&(this.timestamp_biased=0,i=this.generateOrAbortCore(A,e)),i}generateOrAbortCore(A,e){if(!Number.isInteger(A)||A<0||A>0xffffffffffff)throw new RangeError("`unixTsMs` must be a 48-bit unsigned integer");if(e<0||e>0xffffffffffff)throw new RangeError("`rollbackAllowance` out of reasonable range");if(A++,A>this.timestamp_biased)this.timestamp_biased=A,this.resetCounter();else if(A+e>=this.timestamp_biased)this.counter++,this.counter>4398046511103&&(this.timestamp_biased++,this.resetCounter());else return;return iD.fromFieldsV7(this.timestamp_biased-1,Math.trunc(this.counter/2**30),this.counter&2**30-1,this.random.nextUint32())}resetCounter(){this.counter=this.random.nextUint32()*1024+(this.random.nextUint32()&1023)}generateV4(){let A=new Uint8Array(Uint32Array.of(this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32(),this.random.nextUint32()).buffer);return A[6]=64|A[6]>>>4,A[8]=128|A[8]>>>2,iD.ofInner(A)}},pNe=()=>{if(typeof crypto<"u"&&typeof crypto.getRandomValues<"u")return new KL;if(typeof UUIDV7_DENY_WEAK_RNG<"u"&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");return{nextUint32:()=>Math.trunc(Math.random()*65536)*65536+Math.trunc(Math.random()*65536)}},KL=class{constructor(){this.buffer=new Uint32Array(8),this.cursor=65535}nextUint32(){return this.cursor>=this.buffer.length&&(crypto.getRandomValues(this.buffer),this.cursor=0),this.buffer[this.cursor++]}},ire;var nD=()=>mNe().toString(),mNe=()=>(ire||(ire=new GL)).generateV4();function fNe(t,A){t&1&&(I(0,"div",1),le(1,"mat-progress-spinner",6),h()),t&2&&(Q(),H("diameter",28)("strokeWidth",3))}function wNe(t,A){if(t&1){let e=ae();I(0,"mat-form-field",2)(1,"input",7),Fi("ngModelChange",function(n){L(e);let o=p();return vi(o.newCaseId,n)||(o.newCaseId=n),G(n)}),U("keydown.enter",function(){L(e);let n=p();return G(n.createNewEvalCase())}),h()()}if(t&2){let e=p();Q(),Ni("ngModel",e.newCaseId)}}var oD=class t{evalService=w(u0);data=w(Do);dialogRef=w(Pn);newCaseId=this.data.defaultName||"case_"+nD().slice(0,6);loading=!1;constructor(){}createNewEvalCase(){if(!this.newCaseId||this.newCaseId=="")alert("Cannot create eval set with empty id!");else{if(this.data.existingCases?.includes(this.newCaseId)&&!confirm(`Eval case "${this.newCaseId}" already exists. Do you want to overwrite it?`))return;this.loading=!0,this.evalService.addCurrentSession(this.data.appName,this.data.evalSetId,this.newCaseId,this.data.sessionId,this.data.userId).subscribe({next:A=>{this.dialogRef.close(!0)},error:A=>{this.loading=!1,alert("Failed to add session to eval set!")}})}}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-add-eval-session-dialog"]],decls:11,vars:3,consts:[["mat-dialog-title",""],[2,"display","flex","justify-content","center","padding","20px"],[2,"padding-left","20px","padding-right","24px"],["align","end"],["mat-button","","mat-dialog-close","",3,"disabled"],["mat-button","","cdkFocusInitial","",3,"click","disabled"],["mode","indeterminate",3,"diameter","strokeWidth"],["matInput","",3,"ngModelChange","keydown.enter","ngModel"]],template:function(e,i){e&1&&(I(0,"h2",0),v(1,"Add Current Session To Eval Set"),h(),I(2,"mat-dialog-content"),v(3,` Please enter the eval case name +`),h(),T(4,fNe,2,2,"div",1)(5,wNe,2,1,"mat-form-field",2),I(6,"mat-dialog-actions",3)(7,"button",4),v(8,"Cancel"),h(),I(9,"button",5),U("click",function(){return i.createNewEvalCase()}),v(10,"Create"),h()()),e&2&&(Q(4),O(i.loading?4:5),Q(3),H("disabled",i.loading),Q(2),H("disabled",i.loading))},dependencies:[ea,pa,$o,Fa,wn,Kn,Un,Po,ma,xi,Sd,ws],styles:["h2[mat-dialog-title][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-dialog-content[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}button[mat-button][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;caret-color:var(--mdc-dialog-supporting-text-color)!important}"]})};var yNe={allEvalSetsHeader:"Eval sets",createNewEvalSetTooltip:"Create new evaluation set",createNewEvalSetTitle:"Create New Evaluation Set",evalSetDescription:"An evaluation set is a curated collection of evaluation cases, where each case includes input-output examples for assessing agent performance.",createEvalSetButton:"Create Evaluation Set",runEvaluationButton:"Run All",runSelectedEvaluationButton:"Run Selected",viewEvalRunHistoryTooltip:"View eval run history",caseIdHeader:"Case ID",resultHeader:"Result",viewEvalRunResultTooltip:"View eval run result",passStatus:"Pass",failStatus:"Fail",passStatusCaps:"PASS",failStatusCaps:"FAIL",passedSuffix:"Passed",failedSuffix:"Failed",addSessionToSetButtonPrefix:"From Current Session",deleteEvalCaseTooltip:"Delete eval case",editEvalCaseTooltip:"Edit eval case",deleteEvalSetTooltip:"Delete eval set"},nre=new Me("Eval Tab Messages",{factory:()=>yNe});function vNe(t,A){if(t&1){let e=ae();I(0,"mat-form-field",1)(1,"mat-label"),v(2,"Execution Mode"),h(),I(3,"mat-select",6),U("selectionChange",function(n){L(e);let o=p();return G(o.executionMode=n.value)}),I(4,"mat-option",7),v(5,"Live"),h(),I(6,"mat-option",8),v(7,"Replay"),h()()()}if(t&2){let e=p();Q(3),H("value",e.executionMode)}}var aD=class t{evalService=w(u0);featureFlagService=w(Tr);data=w(Do);dialogRef=w(Pn);newSetId=this.data.defaultName||"evalset_"+nD().slice(0,6);executionMode="live";isEvalV2Enabled=!1;constructor(){this.featureFlagService.isEvalV2Enabled().subscribe(A=>{this.isEvalV2Enabled=A})}createNewEvalSet(){if(!this.newSetId||this.newSetId=="")alert("Cannot create eval set with empty id!");else{let A=this.isEvalV2Enabled?this.executionMode:void 0;this.evalService.createNewEvalSet(this.data.appName,this.newSetId,A).subscribe(e=>{this.dialogRef.close(!0)})}}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-new-eval-set-dialog-component"]],decls:14,vars:2,consts:[["mat-dialog-title",""],[2,"padding-left","20px","padding-right","24px"],["matInput","",3,"ngModelChange","keydown.enter","ngModel"],["align","end"],["mat-button","","mat-dialog-close",""],["mat-button","","cdkFocusInitial","",3,"click"],[3,"selectionChange","value"],["value","live"],["value","replay"]],template:function(e,i){e&1&&(I(0,"h2",0),v(1,"Create New Eval Set"),h(),I(2,"mat-dialog-content"),v(3,` Please enter the eval set name +`),h(),I(4,"mat-form-field",1)(5,"mat-label"),v(6,"Eval Set Name"),h(),I(7,"input",2),Fi("ngModelChange",function(o){return vi(i.newSetId,o)||(i.newSetId=o),o}),U("keydown.enter",function(){return i.createNewEvalSet()}),h()(),T(8,vNe,8,1,"mat-form-field",1),I(9,"mat-dialog-actions",3)(10,"button",4),v(11,"Cancel"),h(),I(12,"button",5),U("click",function(){return i.createNewEvalSet()}),v(13,"Create"),h()()),e&2&&(Q(7),Ni("ngModel",i.newSetId),Q(),O(i.isEvalV2Enabled?8:-1))},dependencies:[ea,pa,$o,Fa,wn,Kn,Un,Po,ma,xi,Sd,hC,Ks,Ec,es],styles:["h2[mat-dialog-title][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-dialog-content[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}button[mat-button][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-form-field[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important;caret-color:var(--mdc-dialog-supporting-text-color)!important}"]})};var DNe=["knob"],bNe=["valueIndicatorContainer"];function MNe(t,A){if(t&1&&(I(0,"div",2,1)(2,"div",5)(3,"span",6),v(4),h()()()),t&2){let e=p();Q(4),ne(e.valueIndicatorText)}}var SNe=["trackActive"],kNe=["*"];function _Ne(t,A){if(t&1&&le(0,"div"),t&2){let e=A.$implicit,i=A.$index,n=p(3);Ao(e===0?"mdc-slider__tick-mark--active":"mdc-slider__tick-mark--inactive"),vt("transform",n._calcTickMarkTransform(i))}}function xNe(t,A){if(t&1&&RA(0,_Ne,1,4,"div",8,ja),t&2){let e=p(2);NA(e._tickMarks)}}function RNe(t,A){if(t&1&&(I(0,"div",6,1),T(2,xNe,2,0),h()),t&2){let e=p();Q(2),O(e._cachedWidth?2:-1)}}function NNe(t,A){if(t&1&&le(0,"mat-slider-visual-thumb",7),t&2){let e=p();H("discrete",e.discrete)("thumbPosition",1)("valueIndicatorText",e.startValueIndicatorText)}}var Ji=(function(t){return t[t.START=1]="START",t[t.END=2]="END",t})(Ji||{}),dE=(function(t){return t[t.ACTIVE=0]="ACTIVE",t[t.INACTIVE=1]="INACTIVE",t})(dE||{}),UL=new Me("_MatSlider"),ore=new Me("_MatSliderThumb"),FNe=new Me("_MatSliderRangeThumb"),are=new Me("_MatSliderVisualThumb");var LNe=(()=>{class t{_cdr=w(xt);_ngZone=w(At);_slider=w(UL);_renderer=w(rn);_listenerCleanups;discrete=!1;thumbPosition;valueIndicatorText;_ripple;_knob;_valueIndicatorContainer;_sliderInput;_sliderInputEl;_hoverRippleRef;_focusRippleRef;_activeRippleRef;_isHovered=!1;_isActive=!1;_isValueIndicatorVisible=!1;_hostElement=w(dA).nativeElement;_platform=w(pi);constructor(){}ngAfterViewInit(){let e=this._slider._getInput(this.thumbPosition);e&&(this._ripple.radius=24,this._sliderInput=e,this._sliderInputEl=this._sliderInput._hostElement,this._ngZone.runOutsideAngular(()=>{let i=this._sliderInputEl,n=this._renderer;this._listenerCleanups=[n.listen(i,"pointermove",this._onPointerMove),n.listen(i,"pointerdown",this._onDragStart),n.listen(i,"pointerup",this._onDragEnd),n.listen(i,"pointerleave",this._onMouseLeave),n.listen(i,"focus",this._onFocus),n.listen(i,"blur",this._onBlur)]}))}ngOnDestroy(){this._listenerCleanups?.forEach(e=>e())}_onPointerMove=e=>{if(this._sliderInput._isFocused)return;let i=this._hostElement.getBoundingClientRect(),n=this._slider._isCursorOnSliderThumb(e,i);this._isHovered=n,n?this._showHoverRipple():this._hideRipple(this._hoverRippleRef)};_onMouseLeave=()=>{this._isHovered=!1,this._hideRipple(this._hoverRippleRef)};_onFocus=()=>{this._hideRipple(this._hoverRippleRef),this._showFocusRipple(),this._hostElement.classList.add("mdc-slider__thumb--focused")};_onBlur=()=>{this._isActive||this._hideRipple(this._focusRippleRef),this._isHovered&&this._showHoverRipple(),this._hostElement.classList.remove("mdc-slider__thumb--focused")};_onDragStart=e=>{e.button===0&&(this._isActive=!0,this._showActiveRipple())};_onDragEnd=()=>{this._isActive=!1,this._hideRipple(this._activeRippleRef),this._sliderInput._isFocused||this._hideRipple(this._focusRippleRef),this._platform.SAFARI&&this._showHoverRipple()};_showHoverRipple(){this._isShowingRipple(this._hoverRippleRef)||(this._hoverRippleRef=this._showRipple({enterDuration:0,exitDuration:0}),this._hoverRippleRef?.element.classList.add("mat-mdc-slider-hover-ripple"))}_showFocusRipple(){this._isShowingRipple(this._focusRippleRef)||(this._focusRippleRef=this._showRipple({enterDuration:0,exitDuration:0},!0),this._focusRippleRef?.element.classList.add("mat-mdc-slider-focus-ripple"))}_showActiveRipple(){this._isShowingRipple(this._activeRippleRef)||(this._activeRippleRef=this._showRipple({enterDuration:225,exitDuration:400}),this._activeRippleRef?.element.classList.add("mat-mdc-slider-active-ripple"))}_isShowingRipple(e){return e?.state===Gs.FADING_IN||e?.state===Gs.VISIBLE}_showRipple(e,i){if(!this._slider.disabled&&(this._showValueIndicator(),this._slider._isRange&&this._slider._getThumb(this.thumbPosition===Ji.START?Ji.END:Ji.START)._showValueIndicator(),!(this._slider._globalRippleOptions?.disabled&&!i)))return this._ripple.launch({animation:this._slider._noopAnimations?{enterDuration:0,exitDuration:0}:e,centered:!0,persistent:!0})}_hideRipple(e){if(e?.fadeOut(),this._isShowingAnyRipple())return;this._slider._isRange||this._hideValueIndicator();let i=this._getSibling();i._isShowingAnyRipple()||(this._hideValueIndicator(),i._hideValueIndicator())}_showValueIndicator(){this._hostElement.classList.add("mdc-slider__thumb--with-indicator")}_hideValueIndicator(){this._hostElement.classList.remove("mdc-slider__thumb--with-indicator")}_getSibling(){return this._slider._getThumb(this.thumbPosition===Ji.START?Ji.END:Ji.START)}_getValueIndicatorContainer(){return this._valueIndicatorContainer?.nativeElement}_getKnob(){return this._knob.nativeElement}_isShowingAnyRipple(){return this._isShowingRipple(this._hoverRippleRef)||this._isShowingRipple(this._focusRippleRef)||this._isShowingRipple(this._activeRippleRef)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=De({type:t,selectors:[["mat-slider-visual-thumb"]],viewQuery:function(i,n){if(i&1&&$t(Es,5)(DNe,5)(bNe,5),i&2){let o;cA(o=gA())&&(n._ripple=o.first),cA(o=gA())&&(n._knob=o.first),cA(o=gA())&&(n._valueIndicatorContainer=o.first)}},hostAttrs:[1,"mdc-slider__thumb","mat-mdc-slider-visual-thumb"],inputs:{discrete:"discrete",thumbPosition:"thumbPosition",valueIndicatorText:"valueIndicatorText"},features:[yt([{provide:are,useExisting:t}])],decls:4,vars:2,consts:[["knob",""],["valueIndicatorContainer",""],[1,"mdc-slider__value-indicator-container"],[1,"mdc-slider__thumb-knob"],["matRipple","",1,"mat-focus-indicator",3,"matRippleDisabled"],[1,"mdc-slider__value-indicator"],[1,"mdc-slider__value-indicator-text"]],template:function(i,n){i&1&&(T(0,MNe,5,1,"div",2),le(1,"div",3,0)(3,"div",4)),i&2&&(O(n.discrete?0:-1),Q(3),H("matRippleDisabled",!0))},dependencies:[Es],styles:[`.mat-mdc-slider-visual-thumb .mat-ripple{height:100%;width:100%}.mat-mdc-slider .mdc-slider__tick-marks{justify-content:start}.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--active,.mat-mdc-slider .mdc-slider__tick-marks .mdc-slider__tick-mark--inactive{position:absolute;left:2px} +`],encapsulation:2,changeDetection:0})}return t})(),rre=(()=>{class t{_ngZone=w(At);_cdr=w(xt);_elementRef=w(dA);_dir=w(Fo,{optional:!0});_globalRippleOptions=w(md,{optional:!0});_trackActive;_thumbs;_input;_inputs;get disabled(){return this._disabled}set disabled(e){this._disabled=e;let i=this._getInput(Ji.END),n=this._getInput(Ji.START);i&&(i.disabled=this._disabled),n&&(n.disabled=this._disabled)}_disabled=!1;get discrete(){return this._discrete}set discrete(e){this._discrete=e,this._updateValueIndicatorUIs()}_discrete=!1;get showTickMarks(){return this._showTickMarks}set showTickMarks(e){this._showTickMarks=e,this._hasViewInitialized&&(this._updateTickMarkUI(),this._updateTickMarkTrackUI())}_showTickMarks=!1;get min(){return this._min}set min(e){let i=e==null||isNaN(e)?this._min:e;this._min!==i&&this._updateMin(i)}_min=0;color;disableRipple=!1;_updateMin(e){let i=this._min;this._min=e,this._isRange?this._updateMinRange({old:i,new:e}):this._updateMinNonRange(e),this._onMinMaxOrStepChange()}_updateMinRange(e){let i=this._getInput(Ji.END),n=this._getInput(Ji.START),o=i.value,a=n.value;n.min=e.new,i.min=Math.max(e.new,n.value),n.max=Math.min(i.max,i.value),n._updateWidthInactive(),i._updateWidthInactive(),e.newe.old?this._onTranslateXChangeBySideEffect(n,i):this._onTranslateXChangeBySideEffect(i,n),o!==i.value&&this._onValueChange(i),a!==n.value&&this._onValueChange(n)}_updateMaxNonRange(e){let i=this._getInput(Ji.END);if(i){let n=i.value;i.max=e,i._updateThumbUIByValue(),this._updateTrackUI(i),n!==i.value&&this._onValueChange(i)}}get step(){return this._step}set step(e){let i=isNaN(e)?this._step:e;this._step!==i&&this._updateStep(i)}_step=1;_updateStep(e){this._step=e,this._isRange?this._updateStepRange():this._updateStepNonRange(),this._onMinMaxOrStepChange()}_updateStepRange(){let e=this._getInput(Ji.END),i=this._getInput(Ji.START),n=e.value,o=i.value,a=i.value;e.min=this._min,i.max=this._max,e.step=this._step,i.step=this._step,this._platform.SAFARI&&(e.value=e.value,i.value=i.value),e.min=Math.max(this._min,i.value),i.max=Math.min(this._max,e.value),i._updateWidthInactive(),e._updateWidthInactive(),e.value`${e}`;_tickMarks;_noopAnimations=hn();_dirChangeSubscription;_resizeObserver=null;_cachedWidth;_cachedLeft;_rippleRadius=24;startValueIndicatorText="";endValueIndicatorText="";_endThumbTransform;_startThumbTransform;_isRange=!1;_isRtl=!1;_hasViewInitialized=!1;_tickMarkTrackWidth=0;_hasAnimation=!1;_resizeTimer=null;_platform=w(pi);constructor(){w(Eo).load(yr),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>this._onDirChange()),this._isRtl=this._dir.value==="rtl")}_knobRadius=8;_inputPadding;ngAfterViewInit(){this._platform.isBrowser&&this._updateDimensions();let e=this._getInput(Ji.END),i=this._getInput(Ji.START);this._isRange=!!e&&!!i,this._cdr.detectChanges();let n=this._getThumb(Ji.END);this._rippleRadius=n._ripple.radius,this._inputPadding=this._rippleRadius-this._knobRadius,this._isRange?this._initUIRange(e,i):this._initUINonRange(e),this._updateTrackUI(e),this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._observeHostResize(),this._cdr.detectChanges()}_initUINonRange(e){e.initProps(),e.initUI(),this._updateValueIndicatorUI(e),this._hasViewInitialized=!0,e._updateThumbUIByValue()}_initUIRange(e,i){e.initProps(),e.initUI(),i.initProps(),i.initUI(),e._updateMinMax(),i._updateMinMax(),e._updateStaticStyles(),i._updateStaticStyles(),this._updateValueIndicatorUIs(),this._hasViewInitialized=!0,e._updateThumbUIByValue(),i._updateThumbUIByValue()}ngOnDestroy(){this._dirChangeSubscription?.unsubscribe(),this._resizeObserver?.disconnect(),this._resizeObserver=null}_onDirChange(){this._isRtl=this._dir?.value==="rtl",this._isRange?this._onDirChangeRange():this._onDirChangeNonRange(),this._updateTickMarkUI()}_onDirChangeRange(){let e=this._getInput(Ji.END),i=this._getInput(Ji.START);e._setIsLeftThumb(),i._setIsLeftThumb(),e.translateX=e._calcTranslateXByValue(),i.translateX=i._calcTranslateXByValue(),e._updateStaticStyles(),i._updateStaticStyles(),e._updateWidthInactive(),i._updateWidthInactive(),e._updateThumbUIByValue(),i._updateThumbUIByValue()}_onDirChangeNonRange(){this._getInput(Ji.END)._updateThumbUIByValue()}_observeHostResize(){typeof ResizeObserver>"u"||!ResizeObserver||this._ngZone.runOutsideAngular(()=>{this._resizeObserver=new ResizeObserver(()=>{this._isActive()||(this._resizeTimer&&clearTimeout(this._resizeTimer),this._onResize())}),this._resizeObserver.observe(this._elementRef.nativeElement)})}_isActive(){return this._getThumb(Ji.START)._isActive||this._getThumb(Ji.END)._isActive}_getValue(e=Ji.END){let i=this._getInput(e);return i?i.value:this.min}_skipUpdate(){return!!(this._getInput(Ji.START)?._skipUIUpdate||this._getInput(Ji.END)?._skipUIUpdate)}_updateDimensions(){this._cachedWidth=this._elementRef.nativeElement.offsetWidth,this._cachedLeft=this._elementRef.nativeElement.getBoundingClientRect().left}_setTrackActiveStyles(e){let i=this._trackActive.nativeElement.style;i.left=e.left,i.right=e.right,i.transformOrigin=e.transformOrigin,i.transform=e.transform}_calcTickMarkTransform(e){let i=e*(this._tickMarkTrackWidth/(this._tickMarks.length-1));return`translateX(${this._isRtl?this._cachedWidth-6-i:i}px)`}_onTranslateXChange(e){this._hasViewInitialized&&(this._updateThumbUI(e),this._updateTrackUI(e),this._updateOverlappingThumbUI(e))}_onTranslateXChangeBySideEffect(e,i){this._hasViewInitialized&&(e._updateThumbUIByValue(),i._updateThumbUIByValue())}_onValueChange(e){this._hasViewInitialized&&(this._updateValueIndicatorUI(e),this._updateTickMarkUI(),this._cdr.detectChanges())}_onMinMaxOrStepChange(){this._hasViewInitialized&&(this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.markForCheck())}_onResize(){if(this._hasViewInitialized){if(this._updateDimensions(),this._isRange){let e=this._getInput(Ji.END),i=this._getInput(Ji.START);e._updateThumbUIByValue(),i._updateThumbUIByValue(),e._updateStaticStyles(),i._updateStaticStyles(),e._updateMinMax(),i._updateMinMax(),e._updateWidthInactive(),i._updateWidthInactive()}else{let e=this._getInput(Ji.END);e&&e._updateThumbUIByValue()}this._updateTickMarkUI(),this._updateTickMarkTrackUI(),this._cdr.detectChanges()}}_thumbsOverlap=!1;_areThumbsOverlapping(){let e=this._getInput(Ji.START),i=this._getInput(Ji.END);return!e||!i?!1:i.translateX-e.translateX<20}_updateOverlappingThumbClassNames(e){let i=e.getSibling(),n=this._getThumb(e.thumbPosition);this._getThumb(i.thumbPosition)._hostElement.classList.remove("mdc-slider__thumb--top"),n._hostElement.classList.toggle("mdc-slider__thumb--top",this._thumbsOverlap)}_updateOverlappingThumbUI(e){!this._isRange||this._skipUpdate()||this._thumbsOverlap!==this._areThumbsOverlapping()&&(this._thumbsOverlap=!this._thumbsOverlap,this._updateOverlappingThumbClassNames(e))}_updateThumbUI(e){if(this._skipUpdate())return;let i=this._getThumb(e.thumbPosition===Ji.END?Ji.END:Ji.START);i._hostElement.style.transform=`translateX(${e.translateX}px)`}_updateValueIndicatorUI(e){if(this._skipUpdate())return;let i=this.displayWith(e.value);if(this._hasViewInitialized?e._valuetext.set(i):e._hostElement.setAttribute("aria-valuetext",i),this.discrete){e.thumbPosition===Ji.START?this.startValueIndicatorText=i:this.endValueIndicatorText=i;let n=this._getThumb(e.thumbPosition);i.length<3?n._hostElement.classList.add("mdc-slider__thumb--short-value"):n._hostElement.classList.remove("mdc-slider__thumb--short-value")}}_updateValueIndicatorUIs(){let e=this._getInput(Ji.END),i=this._getInput(Ji.START);e&&this._updateValueIndicatorUI(e),i&&this._updateValueIndicatorUI(i)}_updateTickMarkTrackUI(){if(!this.showTickMarks||this._skipUpdate())return;let e=this._step&&this._step>0?this._step:1,n=(Math.floor(this.max/e)*e-this.min)/(this.max-this.min);this._tickMarkTrackWidth=(this._cachedWidth-6)*n}_updateTrackUI(e){this._skipUpdate()||(this._isRange?this._updateTrackUIRange(e):this._updateTrackUINonRange(e))}_updateTrackUIRange(e){let i=e.getSibling();if(!i||!this._cachedWidth)return;let n=Math.abs(i.translateX-e.translateX)/this._cachedWidth;e._isLeftThumb&&this._cachedWidth?this._setTrackActiveStyles({left:"auto",right:`${this._cachedWidth-i.translateX}px`,transformOrigin:"right",transform:`scaleX(${n})`}):this._setTrackActiveStyles({left:`${i.translateX}px`,right:"auto",transformOrigin:"left",transform:`scaleX(${n})`})}_updateTrackUINonRange(e){this._isRtl?this._setTrackActiveStyles({left:"auto",right:"0px",transformOrigin:"right",transform:`scaleX(${1-e.fillPercentage})`}):this._setTrackActiveStyles({left:"0px",right:"auto",transformOrigin:"left",transform:`scaleX(${e.fillPercentage})`})}_updateTickMarkUI(){if(!this.showTickMarks||this.step===void 0||this.min===void 0||this.max===void 0)return;let e=this.step>0?this.step:1;this._isRange?this._updateTickMarkUIRange(e):this._updateTickMarkUINonRange(e)}_updateTickMarkUINonRange(e){let i=this._getValue(),n=Math.max(Math.round((i-this.min)/e),0)+1,o=Math.max(Math.round((this.max-i)/e),0)-1;this._isRtl?n++:o++,this._tickMarks=Array(n).fill(dE.ACTIVE).concat(Array(o).fill(dE.INACTIVE))}_updateTickMarkUIRange(e){let i=this._getValue(),n=this._getValue(Ji.START),o=Math.max(Math.round((n-this.min)/e),0),a=Math.max(Math.round((i-n)/e)+1,0),r=Math.max(Math.round((this.max-i)/e),0);this._tickMarks=Array(o).fill(dE.INACTIVE).concat(Array(a).fill(dE.ACTIVE),Array(r).fill(dE.INACTIVE))}_getInput(e){if(e===Ji.END&&this._input)return this._input;if(this._inputs?.length)return e===Ji.START?this._inputs.first:this._inputs.last}_getThumb(e){return e===Ji.END?this._thumbs?.last:this._thumbs?.first}_setTransition(e){this._hasAnimation=!this._platform.IOS&&e&&!this._noopAnimations,this._elementRef.nativeElement.classList.toggle("mat-mdc-slider-with-animation",this._hasAnimation)}_isCursorOnSliderThumb(e,i){let n=i.width/2,o=i.x+n,a=i.y+n,r=e.clientX-o,s=e.clientY-a;return Math.pow(r,2)+Math.pow(s,2)TL),multi:!0};var TL=(()=>{class t{_ngZone=w(At);_elementRef=w(dA);_cdr=w(xt);_slider=w(UL);_platform=w(pi);_listenerCleanups;get value(){return Dn(this._hostElement.value,0)}set value(e){e===null&&(e=this._getDefaultValue()),e=isNaN(e)?0:e;let i=e+"";if(!this._hasSetInitialValue){this._initialValue=i;return}this._isActive||this._setValue(i)}_setValue(e){this._hostElement.value=e,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges(),this._slider._cdr.markForCheck()}valueChange=new Le;dragStart=new Le;dragEnd=new Le;get translateX(){return this._slider.min>=this._slider.max?(this._translateX=this._tickMarkOffset,this._translateX):(this._translateX===void 0&&(this._translateX=this._calcTranslateXByValue()),this._translateX)}set translateX(e){this._translateX=e}_translateX;thumbPosition=Ji.END;get min(){return Dn(this._hostElement.min,0)}set min(e){this._hostElement.min=e+"",this._cdr.detectChanges()}get max(){return Dn(this._hostElement.max,0)}set max(e){this._hostElement.max=e+"",this._cdr.detectChanges()}get step(){return Dn(this._hostElement.step,0)}set step(e){this._hostElement.step=e+"",this._cdr.detectChanges()}get disabled(){return mA(this._hostElement.disabled)}set disabled(e){this._hostElement.disabled=e,this._cdr.detectChanges(),this._slider.disabled!==this.disabled&&(this._slider.disabled=this.disabled)}get percentage(){return this._slider.min>=this._slider.max?this._slider._isRtl?1:0:(this.value-this._slider.min)/(this._slider.max-this._slider.min)}get fillPercentage(){return this._slider._cachedWidth?this._translateX===0?0:this.translateX/this._slider._cachedWidth:this._slider._isRtl?1:0}_hostElement=this._elementRef.nativeElement;_valuetext=fe("");_knobRadius=8;_tickMarkOffset=3;_isActive=!1;_isFocused=!1;_setIsFocused(e){this._isFocused=e}_hasSetInitialValue=!1;_initialValue;_formControl;_destroyed=new rA;_skipUIUpdate=!1;_onChangeFn;_onTouchedFn=()=>{};_isControlInitialized=!1;constructor(){let e=w(rn);this._ngZone.runOutsideAngular(()=>{this._listenerCleanups=[e.listen(this._hostElement,"pointerdown",this._onPointerDown.bind(this)),e.listen(this._hostElement,"pointermove",this._onPointerMove.bind(this)),e.listen(this._hostElement,"pointerup",this._onPointerUp.bind(this))]})}ngOnDestroy(){this._listenerCleanups.forEach(e=>e()),this._destroyed.next(),this._destroyed.complete(),this.dragStart.complete(),this.dragEnd.complete()}initProps(){this._updateWidthInactive(),this.disabled!==this._slider.disabled&&(this._slider.disabled=!0),this.step=this._slider.step,this.min=this._slider.min,this.max=this._slider.max,this._initValue()}initUI(){this._updateThumbUIByValue()}_initValue(){this._hasSetInitialValue=!0,this._initialValue===void 0?this.value=this._getDefaultValue():(this._hostElement.value=this._initialValue,this._updateThumbUIByValue(),this._slider._onValueChange(this),this._cdr.detectChanges())}_getDefaultValue(){return this.min}_onBlur(){this._setIsFocused(!1),this._onTouchedFn()}_onFocus(){this._slider._setTransition(!1),this._slider._updateTrackUI(this),this._setIsFocused(!0)}_onChange(){this.valueChange.emit(this.value),this._isActive&&this._updateThumbUIByValue({withAnimation:!0})}_onInput(){this._onChangeFn?.(this.value),(this._slider.step||!this._isActive)&&this._updateThumbUIByValue({withAnimation:!0}),this._slider._onValueChange(this)}_onNgControlValueChange(){(!this._isActive||!this._isFocused)&&(this._slider._onValueChange(this),this._updateThumbUIByValue()),this._slider.disabled=this._formControl.disabled}_onPointerDown(e){if(!(this.disabled||e.button!==0)){if(this._platform.IOS){let i=this._slider._isCursorOnSliderThumb(e,this._slider._getThumb(this.thumbPosition)._hostElement.getBoundingClientRect());this._isActive=i,this._updateWidthActive(),this._slider._updateDimensions();return}this._isActive=!0,this._setIsFocused(!0),this._updateWidthActive(),this._slider._updateDimensions(),this._slider.step||this._updateThumbUIByPointerEvent(e,{withAnimation:!0}),this.disabled||(this._handleValueCorrection(e),this.dragStart.emit({source:this,parent:this._slider,value:this.value}))}}_handleValueCorrection(e){this._skipUIUpdate=!0,setTimeout(()=>{this._skipUIUpdate=!1,this._fixValue(e)},0)}_fixValue(e){let i=e.clientX-this._slider._cachedLeft,n=this._slider._cachedWidth,o=this._slider.step===0?1:this._slider.step,a=Math.floor((this._slider.max-this._slider.min)/o),r=this._slider._isRtl?1-i/n:i/n,l=Math.round(r*a)/a*(this._slider.max-this._slider.min)+this._slider.min,c=Math.round(l/o)*o,C=this.value;if(c===C){this._slider._onValueChange(this),this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(e,{withAnimation:this._slider._hasAnimation});return}this.value=c,this.valueChange.emit(this.value),this._onChangeFn?.(this.value),this._slider._onValueChange(this),this._slider.step>0?this._updateThumbUIByValue():this._updateThumbUIByPointerEvent(e,{withAnimation:this._slider._hasAnimation})}_onPointerMove(e){!this._slider.step&&this._isActive&&this._updateThumbUIByPointerEvent(e)}_onPointerUp(){this._isActive&&(this._isActive=!1,this._platform.SAFARI&&this._setIsFocused(!1),this.dragEnd.emit({source:this,parent:this._slider,value:this.value}),setTimeout(()=>this._updateWidthInactive(),this._platform.IOS?10:0))}_clamp(e){let i=this._tickMarkOffset,n=this._slider._cachedWidth-this._tickMarkOffset;return Math.max(Math.min(e,n),i)}_calcTranslateXByValue(){return this._slider._isRtl?(1-this.percentage)*(this._slider._cachedWidth-this._tickMarkOffset*2)+this._tickMarkOffset:this.percentage*(this._slider._cachedWidth-this._tickMarkOffset*2)+this._tickMarkOffset}_calcTranslateXByPointerEvent(e){return e.clientX-this._slider._cachedLeft}_updateWidthActive(){}_updateWidthInactive(){this._hostElement.style.padding=`0 ${this._slider._inputPadding}px`,this._hostElement.style.width=`calc(100% + ${this._slider._inputPadding-this._tickMarkOffset*2}px)`,this._hostElement.style.left=`-${this._slider._rippleRadius-this._tickMarkOffset}px`}_updateThumbUIByValue(e){this.translateX=this._clamp(this._calcTranslateXByValue()),this._updateThumbUI(e)}_updateThumbUIByPointerEvent(e,i){this.translateX=this._clamp(this._calcTranslateXByPointerEvent(e)),this._updateThumbUI(i)}_updateThumbUI(e){this._slider._setTransition(!!e?.withAnimation),this._slider._onTranslateXChange(this)}writeValue(e){(this._isControlInitialized||e!==null)&&(this.value=e)}registerOnChange(e){this._onChangeFn=e,this._isControlInitialized=!0}registerOnTouched(e){this._onTouchedFn=e}setDisabledState(e){this.disabled=e}focus(){this._hostElement.focus()}blur(){this._hostElement.blur()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=We({type:t,selectors:[["input","matSliderThumb",""]],hostAttrs:["type","range",1,"mdc-slider__input"],hostVars:1,hostBindings:function(i,n){i&1&&U("change",function(){return n._onChange()})("input",function(){return n._onInput()})("blur",function(){return n._onBlur()})("focus",function(){return n._onFocus()}),i&2&&aA("aria-valuetext",n._valuetext())},inputs:{value:[2,"value","value",Dn]},outputs:{valueChange:"valueChange",dragStart:"dragStart",dragEnd:"dragEnd"},exportAs:["matSliderThumb"],features:[yt([GNe,{provide:ore,useExisting:t}])]})}return t})();var T2=class t{transform(A){if(!A)return"";let e=A.replace(/(_avg_score|_score|avg_score)$/,"");return e=e.replace(/_/g," "),e.split(" ").map(i=>i.charAt(0).toUpperCase()+i.slice(1).toLowerCase()).join(" ")}static \u0275fac=function(e){return new(e||t)};static \u0275pipe=P7({name:"formatMetricName",type:t,pure:!0})};function KNe(t,A){if(t&1&&(I(0,"div",9)(1,"div",10)(2,"mat-checkbox",11)(3,"div",12)(4,"span",13),v(5),Dt(6,"formatMetricName"),h(),I(7,"span",14),v(8),h()()(),I(9,"div",15)(10,"div",16)(11,"span",17),v(12,"Threshold"),h(),I(13,"div",18)(14,"mat-slider",19),le(15,"input",20),h(),I(16,"span",21),v(17),h()()()()()()),t&2){let e,i=A.$implicit,n=p(2);Q(2),H("formControlName",i.metricName+"_selected"),Q(2),H("matTooltip",i.metricName),Q(),ne(Ut(6,10,i.metricName)),Q(3),ne(i.description),Q(),vt("visibility",(e=n.evalForm.get(i.metricName+"_selected"))!=null&&e.value?"visible":"hidden"),Q(5),H("min",i.metricValueInfo.interval.minValue)("max",i.metricValueInfo.interval.maxValue),Q(),H("formControlName",i.metricName+"_threshold"),Q(2),pA(" ",n.evalForm.controls[i.metricName+"_threshold"].value," ")}}function UNe(t,A){if(t&1&&(I(0,"div"),Nt(1,KNe,18,12,"div",8),h()),t&2){let e=p();Q(),H("ngForOf",e.metricsInfo)}}function TNe(t,A){if(t&1&&(I(0,"div")(1,"div",9)(2,"div",10)(3,"mat-checkbox",22)(4,"span",13),v(5),Dt(6,"formatMetricName"),h()(),I(7,"div",15)(8,"div",16)(9,"span",17),v(10,"Threshold"),h(),I(11,"div",18)(12,"mat-slider",23),le(13,"input",24),h(),I(14,"span",21),v(15),h()()()()()(),I(16,"div",9)(17,"div",10)(18,"mat-checkbox",25)(19,"span",13),v(20),Dt(21,"formatMetricName"),h()(),I(22,"div",15)(23,"div",16)(24,"span",17),v(25,"Threshold"),h(),I(26,"div",18)(27,"mat-slider",23),le(28,"input",26),h(),I(29,"span",21),v(30),h()()()()()()()),t&2){let e,i,n=p();Q(4),H("matTooltip","tool_trajectory_avg_score"),Q(),ne(Ut(6,10,"tool_trajectory_avg_score")),Q(2),vt("visibility",(e=n.evalForm.get("tool_trajectory_avg_score_selected"))!=null&&e.value?"visible":"hidden"),Q(8),pA(" ",n.evalForm.controls.tool_trajectory_avg_score_threshold.value," "),Q(4),H("matTooltip","response_match_score"),Q(),ne(Ut(21,12,"response_match_score")),Q(2),vt("visibility",(i=n.evalForm.get("response_match_score_selected"))!=null&&i.value?"visible":"hidden"),Q(8),pA(" ",n.evalForm.controls.response_match_score_threshold.value," ")}}var rD=class t{constructor(A,e,i){this.dialogRef=A;this.fb=e;this.data=i;this.evalMetrics=this.data.evalMetrics||[],this.metricsInfo=this.data.metricsInfo||[],this.evalForm=this.fb.group({}),this.metricsInfo.forEach(n=>{let o=this.evalMetrics.find(l=>l.metricName===n.metricName),a=!!o,r=o?o.threshold:this.getDefaultThreshold(n);this.evalForm.addControl(`${n.metricName}_selected`,this.fb.control(a));let s=n.metricValueInfo.interval;this.evalForm.addControl(`${n.metricName}_threshold`,this.fb.control(r,[il.required,il.min(s.minValue),il.max(s.maxValue)]))}),this.metricsInfo.length===0&&this.addDefaultControls()}evalForm;evalMetrics=[];metricsInfo=[];addDefaultControls(){[{name:"tool_trajectory_avg_score",min:0,max:1,default:1},{name:"response_match_score",min:0,max:1,default:.7}].forEach(e=>{let i=this.evalMetrics.find(a=>a.metricName===e.name),n=!!i,o=i?i.threshold:e.default;this.evalForm.addControl(`${e.name}_selected`,this.fb.control(n)),this.evalForm.addControl(`${e.name}_threshold`,this.fb.control(o,[il.required,il.min(e.min),il.max(e.max)]))})}getDefaultThreshold(A){return A.metricName==="tool_trajectory_avg_score"?1:A.metricName==="response_match_score"?.7:A.metricValueInfo.interval.maxValue}onReset(){this.metricsInfo.forEach(A=>{let e=CE.find(o=>o.metricName===A.metricName),i=!!e,n=e?e.threshold:this.getDefaultThreshold(A);this.evalForm.get(`${A.metricName}_selected`)?.setValue(i),this.evalForm.get(`${A.metricName}_threshold`)?.setValue(n)}),this.metricsInfo.length===0&&CE.forEach(A=>{this.evalForm.get(`${A.metricName}_selected`)?.setValue(!0),this.evalForm.get(`${A.metricName}_threshold`)?.setValue(A.threshold)})}onStart(){if(this.evalForm.valid){let A=[];this.metricsInfo.length>0?this.metricsInfo.forEach(e=>{if(this.evalForm.get(`${e.metricName}_selected`)?.value){let n=this.evalForm.get(`${e.metricName}_threshold`)?.value;A.push({metricName:e.metricName,threshold:n})}}):["tool_trajectory_avg_score","response_match_score"].forEach(i=>{if(this.evalForm.get(`${i}_selected`)?.value){let o=this.evalForm.get(`${i}_threshold`)?.value;A.push({metricName:i,threshold:o})}}),this.dialogRef.close(A)}}onCancel(){this.dialogRef.close(null)}static \u0275fac=function(e){return new(e||t)(dt(Pn),dt(AY),dt(Do))};static \u0275cmp=De({type:t,selectors:[["app-run-eval-config-dialog"]],decls:14,vars:3,consts:[[1,"dialog-container"],["mat-dialog-title","",1,"dialog-title"],[1,"eval-form",3,"formGroup"],[4,"ngIf"],["align","end",1,"dialog-actions"],["mat-button","",1,"reset-button",3,"click"],["mat-button","",1,"cancel-button",3,"click"],["mat-button","",1,"save-button",3,"click"],["class","metric-container",4,"ngFor","ngForOf"],[1,"metric-container"],[1,"metric-header"],[3,"formControlName"],[2,"display","flex","flex-direction","column"],[1,"metric-title",3,"matTooltip"],[1,"metric-description"],[1,"metric-slider-container","inline-slider"],[2,"display","flex","flex-direction","column","align-items","flex-start"],[1,"slider-label",2,"margin-right","0","font-size","11px","color","var(--mat-sys-on-surface-variant)"],[2,"display","flex","align-items","center"],["step","0.1","thumbLabel","",1,"threshold-slider",3,"min","max"],["matSliderThumb","",3,"formControlName"],[1,"threshold-value"],["formControlName","tool_trajectory_avg_score_selected"],["min","0","max","1","step","0.1","thumbLabel","",1,"threshold-slider"],["matSliderThumb","","formControlName","tool_trajectory_avg_score_threshold"],["formControlName","response_match_score_selected"],["matSliderThumb","","formControlName","response_match_score_threshold"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"h2",1),v(2,"EVALUATION METRICS"),h(),I(3,"mat-dialog-content")(4,"form",2),Nt(5,UNe,2,1,"div",3)(6,TNe,31,14,"div",3),h()(),I(7,"mat-dialog-actions",4)(8,"button",5),U("click",function(){return i.onReset()}),v(9,"Reset to Default"),h(),I(10,"button",6),U("click",function(){return i.onCancel()}),v(11,"Cancel"),h(),I(12,"button",7),U("click",function(){return i.onStart()}),v(13,"Start"),h()()()),e&2&&(Q(4),H("formGroup",i.evalForm),Q(),H("ngIf",i.metricsInfo.length>0),Q(),H("ngIf",i.metricsInfo.length===0))},dependencies:[ea,pa,wn,$z,Kn,Un,Pz,Ed,ud,pM,rre,TL,ma,xi,Eg,Ci,sB,cc,ln,T2],styles:[".dialog-container[_ngcontent-%COMP%]{border-radius:12px;padding:12px;width:680px;box-shadow:0 8px 16px var(--run-eval-config-dialog-container-box-shadow-color)}.metric-container[_ngcontent-%COMP%]{margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid var(--run-eval-config-dialog-border-color, #e0e0e0)}.metric-container[_ngcontent-%COMP%]:last-child{border-bottom:none}.metric-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.metric-title[_ngcontent-%COMP%]{font-weight:600;font-size:1em}.metric-description[_ngcontent-%COMP%]{font-size:.85em;color:var(--run-eval-config-dialog-description-color, #666);margin-top:2px;white-space:normal}.metric-slider-container[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:28px}.inline-slider[_ngcontent-%COMP%]{margin-left:20px;flex:1;display:flex;justify-content:flex-end;align-items:center}.slider-label[_ngcontent-%COMP%]{margin-right:10px;font-size:.9em}.threshold-slider[_ngcontent-%COMP%]{max-width:80px;flex:1}.threshold-value[_ngcontent-%COMP%]{margin-left:10px;min-width:30px;text-align:right}h2[mat-dialog-title][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}mat-dialog-content[_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}button[mat-button][_ngcontent-%COMP%]{color:var(--mdc-dialog-supporting-text-color)!important}"]})};var zg=class t{constructor(A,e){this.dialogRef=A;this.data=e}onConfirm(){this.dialogRef.close(!0)}onCancel(){this.dialogRef.close(!1)}static \u0275fac=function(e){return new(e||t)(dt(Pn),dt(Do))};static \u0275cmp=De({type:t,selectors:[["app-delete-session-dialog"]],decls:11,vars:4,consts:[[1,"confirm-delete-wrapper"],["mat-dialog-title",""],["align","end"],["mat-button","",3,"click"],["mat-button","","cdkFocusInitial","",3,"click"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"h2",1),v(2),h(),I(3,"mat-dialog-content")(4,"p"),v(5),h()(),I(6,"mat-dialog-actions",2)(7,"button",3),U("click",function(){return i.onCancel()}),v(8),h(),I(9,"button",4),U("click",function(){return i.onConfirm()}),v(10),h()()()),e&2&&(Q(2),ne(i.data.title),Q(3),ne(i.data.message),Q(3),ne(i.data.cancelButtonText),Q(2),ne(i.data.confirmButtonText))},dependencies:[ea,pa,ma,xi],encapsulation:2})};var ONe=["app-info-table",""],JNe=["*"];function zNe(t,A){if(t&1&&(Gn(0,"thead")(1,"tr")(2,"th",2),v(3),$n()()()),t&2){let e=p();Q(3),ne(e.title())}}var O2=class t{title=MA();static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["table","app-info-table",""]],hostAttrs:[1,"info-table"],inputs:{title:[1,"title"]},attrs:ONe,ngContentSelectors:JNe,decls:6,vars:1,consts:[[1,"label-col"],[1,"value-col"],["colspan","2"]],template:function(e,i){e&1&&(Yt(),Gn(0,"colgroup"),eo(1,"col",0)(2,"col",1),$n(),T(3,zNe,4,1,"thead"),Gn(4,"tbody"),tt(5),$n()),e&2&&(Q(3),O(i.title()?3:-1))},styles:["[_nghost-%COMP%]{display:table;width:100%;border-collapse:separate;border-spacing:0;font-family:inherit;font-size:13px;background-color:var(--mat-sys-surface);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;overflow:hidden;table-layout:fixed}[_nghost-%COMP%] thead[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-low)}[_nghost-%COMP%] thead[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{text-align:left;padding:12px 16px;font-weight:500;color:var(--mat-sys-on-surface);border-bottom:1px solid var(--mat-sys-outline-variant)}[_nghost-%COMP%] .label-col[_ngcontent-%COMP%]{width:40%}[_nghost-%COMP%] tbody tr td{padding:10px 16px;color:var(--mat-sys-on-surface-variant);border-bottom:1px solid var(--mat-sys-outline-variant);overflow:hidden;overflow-wrap:anywhere}[_nghost-%COMP%] tbody tr td:first-child{font-weight:500;color:var(--mat-sys-on-surface);background-color:var(--mat-sys-surface-container-lowest);border-right:1px solid var(--mat-sys-outline-variant)}[_nghost-%COMP%] tbody tr:last-child td{border-bottom:none}"]})};var sre=(t,A)=>A.timestamp,YNe=(t,A)=>A.evalId;function HNe(t,A){t&1&&(I(0,"span",3),v(1,"Eval Sets"),h())}function PNe(t,A){if(t&1){let e=ae();I(0,"span",9),U("click",function(){L(e);let n=p(2);return G(n.goToEvalSet())}),v(1),h()}if(t&2){let e=p(2);Q(),ne(e.selectedEvalSet())}}function jNe(t,A){if(t&1&&(I(0,"span",8),v(1),h()),t&2){let e=p(2);Q(),ne(e.selectedEvalSet())}}function VNe(t,A){if(t&1&&(I(0,"span",6),v(1,">"),h(),T(2,PNe,2,1,"span",7)(3,jNe,2,1,"span",8)),t&2){let e=p();Q(2),O(e.selectedEvalTab()==="history"||e.selectedHistoryRun()||e.selectedEvalCase()?2:3)}}function qNe(t,A){t&1&&(I(0,"span",6),v(1,">"),h(),I(2,"span",10),v(3,"Eval Cases"),h())}function ZNe(t,A){t&1&&(I(0,"span",6),v(1,">"),h(),I(2,"span",11),v(3,"Runs"),h())}function WNe(t,A){if(t&1&&(I(0,"span",6),v(1,">"),h(),I(2,"span",12),v(3),h()),t&2){let e=p();Q(3),ne(e.formatTimestamp(e.selectedHistoryRun()))}}function XNe(t,A){if(t&1&&(I(0,"span",6),v(1,">"),h(),I(2,"span",13),v(3),h()),t&2){let e,i=p();Q(3),ne((e=i.selectedEvalCase())==null?null:e.evalId)}}function $Ne(t,A){if(t&1){let e=ae();I(0,"button",14),U("click",function(){L(e);let n=p();return G(n.openNewEvalSetDialog())}),I(1,"mat-icon"),v(2,"add"),h(),v(3," New "),h(),I(4,"button",15),U("click",function(){L(e);let n=p();return G(n.getEvalSet())}),I(5,"mat-icon"),v(6,"refresh"),h()()}if(t&2){let e=p();H("matTooltip",e.i18n.createNewEvalSetTooltip)}}function eFe(t,A){}function AFe(t,A){if(t&1){let e=ae();I(0,"div")(1,"div",16)(2,"div",17),v(3),h(),I(4,"div",18),v(5),h(),I(6,"div",19),U("click",function(){L(e);let n=p();return G(n.openNewEvalSetDialog())}),v(7),h()()()}if(t&2){let e=p();Q(3),pA(" ",e.i18n.createNewEvalSetTitle," "),Q(2),pA(" ",e.i18n.evalSetDescription," "),Q(2),pA(" ",e.i18n.createEvalSetButton," ")}}function tFe(t,A){if(t&1){let e=ae();I(0,"div",21),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.selectEvalSet(n))}),I(1,"div",22)(2,"span",23),v(3,"folder"),h(),I(4,"div",24),v(5),h()(),I(6,"div",25)(7,"button",26),U("click",function(n){let o=L(e).$implicit,a=p(2);return G(a.confirmDeleteEvalSet(n,o))}),I(8,"mat-icon"),v(9,"delete"),h()()()()}if(t&2){let e=A.$implicit,i=p(2);Q(5),ne(e),Q(2),H("matTooltip",i.i18n.deleteEvalSetTooltip)}}function iFe(t,A){if(t&1&&(I(0,"div"),RA(1,tFe,10,2,"div",20,ri),h()),t&2){let e=p();Q(),NA(e.evalsets)}}function nFe(t,A){t&1&&(I(0,"div",33),le(1,"mat-progress-spinner",34),h()),t&2&&(Q(),H("diameter",28)("strokeWidth",3))}function oFe(t,A){if(t&1&&(I(0,"tr")(1,"td"),v(2,"Execution Mode"),h(),I(3,"td")(4,"span",37),v(5),h()()()),t&2){let e,i,n=p(4);Q(4),H("matTooltip",((e=n.currentEvalSet())==null?null:e.model_execution_mode)||"N/A"),Q(),ne(((i=n.currentEvalSet())==null?null:i.model_execution_mode)||"N/A")}}function aFe(t,A){if(t&1&&(I(0,"div",35)(1,"table",36)(2,"tr")(3,"td"),v(4,"Name"),h(),I(5,"td")(6,"span",37),v(7),h()()(),T(8,oFe,6,2,"tr"),I(9,"tr")(10,"td"),v(11,"Total Cases"),h(),I(12,"td")(13,"span",37),v(14),h()()(),I(15,"tr")(16,"td"),v(17,"Total Runs"),h(),I(18,"td")(19,"span",37),v(20),h()()()()()),t&2){let e=p(3);Q(6),H("matTooltip",e.selectedEvalSet()),Q(),ne(e.selectedEvalSet()),Q(),O(e.isEvalV2Enabled()?8:-1),Q(5),H("matTooltip",e.evalCases.length.toString()),Q(),ne(e.evalCases.length),Q(5),H("matTooltip",e.getEvalHistoryOfCurrentSetSorted().length.toString()),Q(),ne(e.getEvalHistoryOfCurrentSetSorted().length)}}function rFe(t,A){t&1&&le(0,"mat-progress-spinner",42),t&2&&H("diameter",20)}function sFe(t,A){t&1&&(I(0,"mat-icon"),v(1,"play_arrow"),h())}function lFe(t,A){if(t&1){let e=ae();I(0,"div",46),U("click",function(){let n=L(e).$implicit,o=p(6);return G(o.getEvalCase(n))}),I(1,"mat-checkbox",47),U("click",function(n){return n.stopPropagation()})("change",function(n){let o=L(e).$implicit,a=p(6);return G(n?a.selection.toggle(o):null)}),h(),I(2,"div",48),v(3),h(),I(4,"button",49),U("click",function(n){let o=L(e).$implicit,a=p(6);return G(a.requestEditEvalCase(n,o))}),I(5,"mat-icon"),v(6,"edit"),h()(),I(7,"button",26),U("click",function(n){let o=L(e).$implicit,a=p(6);return G(a.confirmDeleteEvalCase(n,o))}),I(8,"mat-icon"),v(9,"delete"),h()()()}if(t&2){let e,i=A.$implicit,n=p(6);_e("selected-row",i===((e=n.selectedEvalCase())==null?null:e.evalId)),Q(),H("checked",n.selection.isSelected(i)),Q(2),pA(" ",i," "),Q(),H("matTooltip",n.i18n.editEvalCaseTooltip),Q(3),H("matTooltip",n.i18n.deleteEvalCaseTooltip)}}function cFe(t,A){if(t&1&&(I(0,"div",44),RA(1,lFe,10,6,"div",45,ri),h()),t&2){let e=p(5);Q(),NA(e.evalCases)}}function gFe(t,A){if(t&1){let e=ae();I(0,"div",39)(1,"mat-checkbox",40),U("change",function(n){L(e);let o=p(4);return G(n?o.toggleAllRows():null)}),h(),I(2,"button",41),U("click",function(){L(e);let n=p(4);return G(n.openEvalConfigDialog())}),T(3,rFe,1,1,"mat-progress-spinner",42)(4,sFe,2,0,"mat-icon"),v(5),h(),I(6,"button",43),U("click",function(){L(e);let n=p(4);return G(n.openNewEvalCaseDialog())}),I(7,"mat-icon"),v(8,"add"),h(),v(9),h(),le(10,"span",4),I(11,"button",15),U("click",function(){L(e);let n=p(4);return G(n.listEvalCases())}),I(12,"mat-icon"),v(13,"refresh"),h()()(),T(14,cFe,3,0,"div",44)}if(t&2){let e=p(4);Q(),H("checked",e.selection.hasValue()&&e.isAllSelected())("indeterminate",e.selection.hasValue()&&!e.isAllSelected()),Q(),H("disabled",e.evalCases.length==0||e.loadingMetrics()),Q(),O(e.loadingMetrics()?3:4),Q(2),pA(" ",e.isAllSelected()||e.selection.isEmpty()?e.i18n.runEvaluationButton:e.i18n.runSelectedEvaluationButton," "),Q(4),pA(" ",e.i18n.addSessionToSetButtonPrefix," "),Q(5),O(e.evalCases.length>0?14:-1)}}function CFe(t,A){if(t&1){let e=ae();I(0,"div",55),U("click",function(){let n=L(e).$implicit,o=p(5);return G(o.getHistorySession(n.result,n.timestamp))}),I(1,"div",48),v(2),h(),le(3,"div",4),I(4,"div",56)(5,"span",57),v(6),h()()()}if(t&2){let e=A.$implicit,i=A.$index;p();let n=Ti(7),o=p(4);_e("selected-row",e.timestamp==o.selectedHistoryRun()),Q(2),Va(" #",n.length-i," ",o.formatTimestamp(e.timestamp)," "),Q(3),H("ngClass",o.isMetricsSucceed(e.result)?"status-card__passed":"status-card__failed"),Q(),pA(" ",o.getMetricsScore(e.result)," ")}}function dFe(t,A){t&1&&(I(0,"div",54),v(1," No runs found for this case. "),h())}function IFe(t,A){if(t&1&&(I(0,"div",38)(1,"div",50)(2,"h3",51),v(3),h()(),I(4,"h4",52),v(5,"Past Runs"),h(),I(6,"div",44),so(7),RA(8,CFe,7,6,"div",53,sre),T(10,dFe,2,0,"div",54),h()()),t&2){let e=p(4),i=e.selectedEvalCase();Q(3),pA("Case: ",i.evalId),Q(4);let n=lo(e.caseHistory());Q(),NA(n),Q(2),O(n.length===0?10:-1)}}function BFe(t,A){t&1&&(I(0,"div",16)(1,"div",17),v(2,"No Eval Cases"),h(),I(3,"div",18),v(4,"Add a session to this set to get started."),h()())}function hFe(t,A){if(t&1&&(I(0,"div"),T(1,gFe,15,7)(2,IFe,11,3,"div",38),T(3,BFe,5,0,"div",16),h()),t&2){let e=p(3);Q(),O(e.selectedEvalCase()?2:1),Q(2),O(e.evalCases.length===0?3:-1)}}function uFe(t,A){t&1&&(I(0,"div",16)(1,"div",17),v(2,"No Runs"),h(),I(3,"div",18),v(4,"Run an evaluation to see results here."),h()())}function EFe(t,A){if(t&1){let e=ae();I(0,"div",46),U("click",function(){let n=L(e).$implicit,o=p(6);return G(o.selectedHistoryRun.set(n.timestamp))}),I(1,"div",48),v(2),h(),le(3,"div",4),I(4,"div",60)(5,"span",61),v(6),h(),I(7,"span",62),v(8,"|"),h(),I(9,"span",63),v(10),h()()()}if(t&2){let e=A.$implicit,i=A.$index;p(3);let n=Ti(0),o=p(3);Q(2),Va(" #",n.length-i," ",o.formatTimestamp(e.timestamp)," "),Q(4),Va("",o.getPassCountForCurrentResult(e.evaluationResults.evaluationResults)," ",o.i18n.passStatusCaps),Q(3),vt("color",o.getFailCountForCurrentResult(e.evaluationResults.evaluationResults)===0?"gray":""),Q(),Va("",o.getFailCountForCurrentResult(e.evaluationResults.evaluationResults)," ",o.i18n.failStatusCaps)}}function QFe(t,A){if(t&1&&(I(0,"div",44),RA(1,EFe,11,8,"div",59,sre),h()),t&2){p(2);let e=Ti(0);Q(),NA(e)}}function pFe(t,A){if(t&1&&(I(0,"span",62),v(1,"|"),h(),I(2,"span",63),v(3),h()),t&2){p(2);let e=Ti(1),i=p(5);Q(3),Va("",i.getFailCountForCurrentResult(e.evaluationResults)," ",i.i18n.failStatusCaps)}}function mFe(t,A){if(t&1&&(I(0,"span",70)(1,"span",71),v(2),Dt(3,"formatMetricName"),h(),v(4,": "),I(5,"span",72),v(6),Dt(7,"number"),h()()),t&2){let e=A.$implicit;Q(),H("matTooltip",e.metricName),Q(),ne(Ut(3,3,e.metricName)),Q(4),ne(iC(7,5,e.threshold,"1.2-2"))}}function fFe(t,A){if(t&1&&(I(0,"div",67),RA(1,mFe,8,8,"span",70,ri),h()),t&2){let e=p(7);Q(),NA(e.currentHistoryMetrics())}}function wFe(t,A){if(t&1){let e=ae();I(0,"div",73),U("click",function(){let n=L(e).$implicit;p(2);let o=Ti(0),a=p(5);return G(a.getHistorySession(n,o))}),I(1,"span"),v(2),h(),I(3,"span",74),v(4),h()()}if(t&2){let e=A.$implicit,i=p(7);Q(2),pA(" ",e.evalId," "),Q(),H("ngClass",i.isMetricsSucceed(e)?"status-card__passed":"status-card__failed"),Q(),pA(" ",i.getMetricsScore(e)," ")}}function yFe(t,A){if(t&1&&(I(0,"div",64)(1,"div",65)(2,"div",66)(3,"div",60)(4,"span",61),v(5),h(),T(6,pFe,4,2),h(),T(7,fFe,3,0,"div",67),h()()(),I(8,"div",68),RA(9,wFe,5,3,"div",69,YNe),h()),t&2){p();let e=Ti(1),i=p(5);Q(5),Va("",i.getPassCountForCurrentResult(e.evaluationResults)," ",i.i18n.passStatusCaps),Q(),O(i.getFailCountForCurrentResult(e.evaluationResults)>0?6:-1),Q(),O(i.currentHistoryMetrics().length>0?7:-1),Q(2),NA(e.evaluationResults)}}function vFe(t,A){if(t&1&&(so(0)(1),T(2,yFe,11,4)),t&2){let e=p(5),i=lo(e.selectedHistoryRun());Q();let n=lo(e.getEvalHistoryOfCurrentSet()[i]);Q(),O(n?2:-1)}}function DFe(t,A){if(t&1&&(I(0,"div",58),T(1,QFe,3,0,"div",44)(2,vFe,3,3),h()),t&2){let e=p(4);Q(),O(e.selectedHistoryRun()?2:1)}}function bFe(t,A){if(t&1&&(so(0),T(1,uFe,5,0,"div",16)(2,DFe,3,1,"div",58)),t&2){let e=lo(p(3).evalHistorySorted());Q(),O(e.length===0?1:2)}}function MFe(t,A){if(t&1&&(T(0,aFe,21,7,"div",35),T(1,hFe,4,2,"div"),T(2,bFe,3,2)),t&2){let e=p(2);O(e.selectedEvalTab()==="info"?0:-1),Q(),O(e.selectedEvalTab()==="cases"?1:-1),Q(),O(e.selectedEvalTab()==="history"?2:-1)}}function SFe(t,A){if(t&1){let e=ae();I(0,"div",5)(1,"div",27)(2,"div",28)(3,"button",29),U("click",function(){L(e);let n=p();return n.selectedEvalTab.set("info"),n.selectedEvalCase.set(null),G(n.selectedHistoryRun.set(null))}),I(4,"mat-icon"),v(5,"info"),h()(),I(6,"button",30),U("click",function(){L(e);let n=p();return n.selectedEvalTab.set("cases"),n.selectedEvalCase.set(null),G(n.selectedHistoryRun.set(null))}),I(7,"mat-icon"),v(8,"list"),h()(),I(9,"button",31),U("click",function(){L(e);let n=p();return n.selectedEvalTab.set("history"),n.selectedEvalCase.set(null),n.selectedHistoryRun.set(null),G(n.getEvaluationResult())}),I(10,"mat-icon"),v(11,"history"),h()()(),I(12,"div",32),T(13,nFe,2,2,"div",33)(14,MFe,3,3),h()()()}if(t&2){let e=p();Q(3),_e("active",e.selectedEvalTab()==="info"),Q(3),_e("active",e.selectedEvalTab()==="cases"),Q(3),_e("active",e.selectedEvalTab()==="history"),Q(4),O(e.evalRunning()?13:14)}}var sD=new Me("EVAL_TAB_COMPONENT"),Yg=class t{checkboxes=_J(Eg);appName=MA("");userId=MA("");sessionId=MA("");sessionSelected=_i();shouldShowTab=_i();evalNotInstalledMsg=_i();evalCaseSelected=_i();evalSetIdSelected=_i();shouldReturnToSession=_i();editEvalCaseRequested=_i();evalCasesSubject=new di([]);changeDetectorRef=w(xt);flagService=w(Tr);i18n=w(nre);displayedColumns=["select","evalId"];evalsets=[];selectedEvalSet=fe("");currentEvalSet=fe(null);evalHistorySorted=DA(()=>{let A=this.appEvaluationResults[this.appName()]?.[this.selectedEvalSet()]||{};return Object.keys(A).sort((i,n)=>n.localeCompare(i)).map(i=>({timestamp:i,evaluationResults:A[i]}))});currentHistoryMetrics=DA(()=>{let A=this.selectedHistoryRun()||this.evalHistorySorted()[0]?.timestamp;if(!A)return this.evalMetrics;let e=this.evalHistorySorted().find(i=>i.timestamp===A);return e?this.getEvalMetrics(e):this.evalMetrics});caseHistory=DA(()=>{let A=this.selectedEvalCase();if(!A)return[];let e=A.evalId,i=this.evalHistorySorted();return console.log("[DEBUG] caseHistory history:",i.map(n=>n.timestamp),"selectedHistoryRun:",this.selectedHistoryRun()),i.map(n=>{let o=n.evaluationResults.evaluationResults.find(a=>a.evalId===e);return{timestamp:n.timestamp,result:o}}).filter(n=>n.result!==void 0)});evalCases=[];selectedEvalCase=fe(null);deletedEvalCaseIndex=-1;dataSource=new z1(this.evalCases);selection=new CC(!0,[]);showEvalHistory=fe(!1);selectedEvalTab=fe("cases");selectedHistoryRun=fe(null);evalRunning=fe(!1);loadingMetrics=fe(!1);evalMetrics=CE;isEvalV2Enabled=fe(!1);currentEvalResultBySet=new Map;dialog=w(nr);appEvaluationResults={};evalService=w(u0);sessionService=w(Cl);constructor(){this.evalCasesSubject.subscribe(A=>{!this.selectedEvalCase()&&this.deletedEvalCaseIndex>=0&&A.length>0?(this.selectNewEvalCase(A),this.deletedEvalCaseIndex=-1):A.length===0&&this.shouldReturnToSession.emit(!0)})}ngOnChanges(A){A.appName&&(this.selectedEvalSet.set(""),this.evalCases=[],this.getEvalSet(),this.getEvaluationResult())}ngOnInit(){this.flagService.isEvalV2Enabled().pipe(ao()).subscribe(e=>this.isEvalV2Enabled.set(e));let A=window.localStorage.getItem("adk_eval_metrics_selection");if(A)try{this.evalMetrics=JSON.parse(A)}catch(e){console.error("Error parsing saved eval metrics",e),this.evalMetrics=CE}}selectNewEvalCase(A){let e=this.deletedEvalCaseIndex;this.deletedEvalCaseIndex===A.length&&(e=0),this.getEvalCase(A[e])}getEvalSet(){this.appName()!==""&&this.evalService.getEvalSets(this.appName()).pipe(ca(A=>A.status===404&&A.statusText==="Not Found"?(this.shouldShowTab.emit(!1),sA(null)):sA([]))).subscribe(A=>{A!==null&&(this.shouldShowTab.emit(!0),this.evalsets=A,this.changeDetectorRef.detectChanges())})}getNextDefaultEvalSetName(){let A=/^eval_set_(\d+)$/,e=0;for(let i of this.evalsets)if(typeof i=="string"){let n=i.match(A);if(n){let o=parseInt(n[1],10);o>e&&(e=o)}}return`eval_set_${e+1}`}openNewEvalSetDialog(){let A=this.getNextDefaultEvalSetName();this.dialog.open(aD,{width:"600px",data:{appName:this.appName(),defaultName:A}}).afterClosed().subscribe(i=>{i&&(this.getEvalSet(),this.changeDetectorRef.detectChanges())})}openNewEvalCaseDialog(){this.sessionId()&&this.sessionService.getSession(this.userId(),this.appName(),this.sessionId()).subscribe(A=>{let i=(A.state?.__session_metadata__?.displayName||this.sessionId()).replace(/ /g,"_").replace(/[^a-zA-Z0-9_-]/g,"");this.dialog.open(oD,{width:"600px",data:{appName:this.appName(),userId:this.userId(),sessionId:this.sessionId(),evalSetId:this.selectedEvalSet(),defaultName:i,existingCases:this.evalCases}}).afterClosed().subscribe(o=>{o&&(this.listEvalCases(),this.changeDetectorRef.detectChanges())})})}listEvalCases(){this.evalCases=[],this.evalService.listEvalCases(this.appName(),this.selectedEvalSet()).subscribe(A=>{this.evalCases=A,this.dataSource=new z1(this.evalCases),this.evalCasesSubject.next(this.evalCases),this.changeDetectorRef.detectChanges()})}runEval(){this.evalRunning.set(!0),this.evalService.runEval(this.appName(),this.selectedEvalSet(),this.selection.selected.length===0?this.dataSource.data:this.selection.selected,this.evalMetrics).pipe(ca(A=>(A.error?.detail?.includes("not installed")&&this.evalNotInstalledMsg.emit(A.error.detail),sA([])))).subscribe(A=>{this.currentEvalResultBySet.set(this.selectedEvalSet(),A),this.getEvaluationResult(!0),this.changeDetectorRef.detectChanges()})}selectEvalSet(A){this.selectedEvalSet.set(A),this.listEvalCases(),this.isEvalV2Enabled()&&this.evalService.getEvalSet(this.appName(),A).pipe(ca(e=>(console.error("Error fetching eval set details",e),sA(null)))).subscribe(e=>{this.currentEvalSet.set(e),this.changeDetectorRef.detectChanges()})}clearSelectedEvalSet(){if(this.selectedEvalTab()!=="cases"){this.selectedEvalTab.set("cases");return}this.selectedEvalSet.set(""),this.currentEvalSet.set(null)}clearAllNavigation(){this.selectedEvalSet.set(""),this.selectedHistoryRun.set(null),this.selectedEvalCase.set(null),this.currentEvalSet.set(null)}goToEvalSet(){this.selectedHistoryRun.set(null),this.selectedEvalCase.set(null)}isAllSelected(){let A=this.selection.selected.length,e=this.dataSource.data.length;return A===e}toggleAllRows(){if(this.isAllSelected()){this.selection.clear();return}this.selection.select(...this.dataSource.data)}getEvalResultForCase(A){let e=this.currentEvalResultBySet.get(this.selectedEvalSet())?.filter(i=>i.evalId==A);if(!(!e||e.length==0))return e[0].finalEvalStatus}formatToolUses(A){if(!A||!Array.isArray(A))return[];let e=[];for(let i of A)e.push({name:i.name,args:i.args});return e}addEvalCaseResultToEvents(A,e){let i=e.evalMetricResultPerInvocation,n=-1;if(i)for(let o=0;on.evalId==A)[0],i=e.sessionId;this.sessionService.getSession(this.userId(),this.appName(),i).subscribe(n=>{this.addEvalCaseResultToEvents(n,e);let o=this.fromApiResultToSession(n);this.sessionSelected.emit(o)})}toggleEvalHistoryButton(){this.showEvalHistory.set(!this.showEvalHistory())}getEvalHistoryOfCurrentSet(){return this.appEvaluationResults[this.appName()]?this.appEvaluationResults[this.appName()][this.selectedEvalSet()]||{}:{}}getEvalHistoryOfCurrentSetSorted(){let A=this.getEvalHistoryOfCurrentSet();return A?Object.keys(A).sort((n,o)=>o.localeCompare(n)).map(n=>({timestamp:n,evaluationResults:A[n]})):[]}getPassCountForCurrentResult(A){return A.filter(e=>e.finalEvalStatus==1).length}getFailCountForCurrentResult(A){return A.filter(e=>e.finalEvalStatus==2).length}getMetricsCounts(A){if(!A)return{passed:0,total:0};let e=0,i=0;if(A.evalMetricResults&&A.evalMetricResults.length>0)e=A.evalMetricResults.filter(n=>n.evalStatus===1).length,i=A.evalMetricResults.length;else if(A.evalMetricResultPerInvocation)for(let n of A.evalMetricResultPerInvocation)n.evalMetricResults&&(e+=n.evalMetricResults.filter(o=>o.evalStatus===1).length,i+=n.evalMetricResults.length);return{passed:e,total:i}}getMetricsScore(A){let{passed:e,total:i}=this.getMetricsCounts(A);return`${e}/${i}`}isMetricsSucceed(A){let{passed:e,total:i}=this.getMetricsCounts(A);return e===i}formatTimestamp(A){let e=Number(A);if(isNaN(e))return"Invalid timestamp provided";let i=new Date(e*1e3);if(isNaN(i.getTime()))return"Invalid date created from timestamp";let n={month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0};return new Intl.DateTimeFormat("en-US",n).format(i)}getEvaluationStatusCardActionButtonIcon(A){return this.getEvalHistoryOfCurrentSet()[A].isToggled?"keyboard_arrow_up":"keyboard_arrow_down"}toggleHistoryStatusCard(A){this.getEvalHistoryOfCurrentSet()[A].isToggled=!this.getEvalHistoryOfCurrentSet()[A].isToggled}isEvaluationStatusCardToggled(A){return this.getEvalHistoryOfCurrentSet()[A].isToggled}generateHistoryEvaluationDatasource(A){return this.getEvalHistoryOfCurrentSet()[A].evaluationResults}getHistorySession(A,e){let i=A.sessionId,n=A.evalId;this.selectedHistoryRun.set(e),this.evalService.getEvalCase(this.appName(),this.selectedEvalSet(),n).subscribe(o=>{this.sessionService.getSession(this.userId(),this.appName(),i).subscribe(a=>{this.addEvalCaseResultToEvents(a,A);let r=this.fromApiResultToSession(a);r.evalCase=o,r.evalCaseResult=A,r.timestamp=e,this.sessionSelected.emit(r)})})}getEvalCase(A){this.evalService.getEvalCase(this.appName(),this.selectedEvalSet(),A).subscribe(e=>{this.selectedEvalCase.set(e),this.evalCaseSelected.emit(e),this.evalSetIdSelected.emit(this.selectedEvalSet())})}resetEvalCase(){this.selectedEvalCase.set(null)}resetEvalResults(){this.currentEvalResultBySet.clear()}confirmDeleteEvalCase(A,e){A.stopPropagation();let i={title:"Confirm delete",message:`Are you sure you want to delete ${e}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(zg,{width:"600px",data:i}).afterClosed().subscribe(o=>{o&&this.deleteEvalCase(e)})}requestEditEvalCase(A,e){A.stopPropagation(),this.evalService.getEvalCase(this.appName(),this.selectedEvalSet(),e).subscribe(i=>{this.selectedEvalCase.set(i),this.evalCaseSelected.emit(i),this.evalSetIdSelected.emit(this.selectedEvalSet()),this.editEvalCaseRequested.emit(i)})}deleteEvalCase(A){this.evalService.deleteEvalCase(this.appName(),this.selectedEvalSet(),A).subscribe(e=>{this.deletedEvalCaseIndex=this.evalCases.indexOf(A),this.selectedEvalCase.set(null),this.listEvalCases(),this.changeDetectorRef.detectChanges()})}confirmDeleteEvalSet(A,e){A.stopPropagation();let i={title:"Confirm delete",message:`Are you sure you want to delete eval set ${e}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(zg,{width:"600px",data:i}).afterClosed().subscribe(o=>{o&&this.deleteEvalSet(e)})}deleteEvalSet(A){this.evalService.deleteEvalSet(this.appName(),A).subscribe(e=>{this.getEvalSet(),this.changeDetectorRef.detectChanges()})}getEvaluationResult(A=!1){this.evalService.listEvalResults(this.appName()).pipe(ca(e=>e.status===404&&e.statusText==="Not Found"?(this.shouldShowTab.emit(!1),sA(null)):sA([])),ki(e=>{if(!e||e.length===0)return sA([]);let i=e.map(n=>this.evalService.getEvalResult(this.appName(),n));return cd(i)})).subscribe(e=>{if(e.length===0)return;let i="";for(let n of e){this.appEvaluationResults[this.appName()]||(this.appEvaluationResults[this.appName()]={}),this.appEvaluationResults[this.appName()][n.evalSetId]||(this.appEvaluationResults[this.appName()][n.evalSetId]={});let o=n.creationTimestamp;(!i||o>i)&&(i=o);let a={isToggled:!1,evaluationResults:n.evalCaseResults.map(r=>({setId:r.id,evalId:r.evalId,finalEvalStatus:r.finalEvalStatus,evalMetricResults:r.evalMetricResults,evalMetricResultPerInvocation:r.evalMetricResultPerInvocation,sessionId:r.sessionId,sessionDetails:r.sessionDetails,overallEvalMetricResults:r.overallEvalMetricResults??[]}))};this.appEvaluationResults[this.appName()][n.evalSetId][o]=a}this.changeDetectorRef.detectChanges(),A&&i&&(this.selectedEvalTab.set("history"),this.selectedHistoryRun.set(i)),this.evalRunning.set(!1)})}openEvalConfigDialog(){this.loadingMetrics.set(!0),this.evalService.getMetricsInfo(this.appName()).pipe(ca(A=>(console.error("Error fetching metrics info",A),sA({metricsInfo:[]})))).subscribe(A=>{this.loadingMetrics.set(!1),this.dialog.open(rD,{maxWidth:"90vw",maxHeight:"90vh",data:{evalMetrics:this.evalMetrics,metricsInfo:A.metricsInfo||[]}}).afterClosed().subscribe(i=>{i&&(this.evalMetrics=i,window.localStorage.setItem("adk_eval_metrics_selection",JSON.stringify(i)),this.runEval())})})}getEvalMetrics(A){if(!A||!A.evaluationResults||!A.evaluationResults.evaluationResults)return this.evalMetrics;let e=A.evaluationResults.evaluationResults;return e.length===0?this.evalMetrics:typeof e[0].overallEvalMetricResults>"u"||!e[0].overallEvalMetricResults||e[0].overallEvalMetricResults.length===0?this.evalMetrics:e[0].overallEvalMetricResults.map(n=>({metricName:n.metricName,threshold:n.threshold}))}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-eval-tab"]],viewQuery:function(e,i){e&1&&Bs(i.checkboxes,Eg,5),e&2&&Rr()},inputs:{appName:[1,"appName"],userId:[1,"userId"],sessionId:[1,"sessionId"]},outputs:{sessionSelected:"sessionSelected",shouldShowTab:"shouldShowTab",evalNotInstalledMsg:"evalNotInstalledMsg",evalCaseSelected:"evalCaseSelected",evalSetIdSelected:"evalSetIdSelected",shouldReturnToSession:"shouldReturnToSession",editEvalCaseRequested:"editEvalCaseRequested"},features:[ai],decls:17,vars:11,consts:[[1,"eval-container"],[1,"eval-detail-header"],["mat-icon-button","","matTooltip","All Eval Sets",3,"click"],[1,"breadcrumb-item",2,"font-weight","500","color","var(--mat-sys-on-surface)"],[1,"spacer"],[1,"eval-details-container"],[1,"breadcrumb-separator"],["matTooltip","Eval Set",1,"breadcrumb-item","clickable"],["matTooltip","Eval Set",1,"breadcrumb-item"],["matTooltip","Eval Set",1,"breadcrumb-item","clickable",3,"click"],["matTooltip","Eval Cases",1,"breadcrumb-item"],["matTooltip","Runs",1,"breadcrumb-item"],["matTooltip","Run",1,"breadcrumb-item"],["matTooltip","Eval Case",1,"breadcrumb-item"],["mat-button","",3,"click","matTooltip"],["mat-icon-button","","matTooltip","Refresh",3,"click"],[1,"empty-eval-info"],[1,"info-title"],[1,"info-detail"],[1,"info-create",3,"click"],[1,"eval-set-row"],[1,"eval-set-row",3,"click"],[1,"eval-set-left"],[1,"material-symbols-outlined"],[1,"eval-set-name"],[1,"eval-set-right"],["mat-icon-button","",1,"delete-btn",3,"click","matTooltip"],[1,"eval-details-content"],[1,"vertical-tabs-sidebar"],["mat-icon-button","","matTooltip","Info","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Eval Cases","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Runs","matTooltipPosition","right",3,"click"],[1,"vertical-tabs-content"],[2,"display","flex","justify-content","center","align-items","center","padding","20px"],["mode","indeterminate",3,"diameter","strokeWidth"],[1,"info-tables-container"],["app-info-table",""],[3,"matTooltip"],[1,"eval-case-details",2,"padding","16px"],[1,"toolbar",2,"position","sticky","top","0","z-index","1"],[2,"margin-left","6px",3,"change","checked","indeterminate"],["mat-button","","color","primary",3,"click","disabled"],["mode","indeterminate",2,"display","inline-block","vertical-align","middle","margin-right","8px",3,"diameter"],["mat-button","","color","accent",3,"click"],[1,"eval-cases-list"],[1,"eval-case-row",3,"selected-row"],[1,"eval-case-row",3,"click"],[3,"click","change","checked"],[1,"eval-case-id"],["mat-icon-button","",1,"edit-btn",3,"click","matTooltip"],[2,"margin-bottom","16px"],[2,"margin-top","0"],[2,"margin-bottom","8px"],[1,"eval-case-row","clickable",3,"selected-row"],[2,"padding","16px","text-align","center","color","var(--app-color-text-secondary)"],[1,"eval-case-row","clickable",3,"click"],[1,"status-card__summary",2,"width","50px","text-align","center"],[2,"font-family","monospace",3,"ngClass"],[2,"padding","16px"],[1,"eval-case-row"],[1,"status-card__summary"],[1,"status-card__passed",2,"font-family","monospace"],[1,"status-card__separator"],[1,"status-card__failed",2,"font-family","monospace"],[1,"status-card",2,"margin-top","0"],[1,"status-card__overview"],[1,"status-card__info"],[1,"status-card__metrics"],[1,"status-card__history-cases"],[1,"status-card__history-case",2,"display","flex","justify-content","space-between","align-items","center"],[1,"status-card__metric"],[1,"status-card__metric-name",3,"matTooltip"],[1,"status-card__metric-value"],[1,"status-card__history-case",2,"display","flex","justify-content","space-between","align-items","center",3,"click"],[2,"font-family","monospace","width","50px","text-align","center",3,"ngClass"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"div",1)(2,"button",2),U("click",function(){return i.clearAllNavigation()}),I(3,"mat-icon"),v(4,"home"),h()(),T(5,HNe,2,0,"span",3),T(6,VNe,4,1),T(7,qNe,4,0),T(8,ZNe,4,0),T(9,WNe,4,1),T(10,XNe,4,1),le(11,"span",4),T(12,$Ne,7,1),h(),T(13,eFe,0,0),T(14,AFe,8,3,"div"),T(15,iFe,3,0,"div"),T(16,SFe,15,7,"div",5),h()),e&2&&(Q(5),O(i.selectedEvalSet()===""?5:-1),Q(),O(i.selectedEvalSet()!==""?6:-1),Q(),O(i.selectedEvalSet()!==""&&i.selectedEvalTab()==="cases"&&!i.selectedEvalCase()?7:-1),Q(),O(i.selectedEvalSet()!==""&&i.selectedEvalTab()==="history"&&!i.selectedHistoryRun()?8:-1),Q(),O(i.selectedHistoryRun()&&!i.selectedEvalCase()?9:-1),Q(),O(i.selectedEvalCase()?10:-1),Q(2),O(i.selectedEvalSet()===""?12:-1),Q(),O(i.selectedEvalSet()==""?13:-1),Q(),O(i.evalsets.length==0?14:-1),Q(),O(i.evalsets.length>0&&i.selectedEvalSet()==""?15:-1),Q(),O(i.selectedEvalSet()!=""?16:-1))},dependencies:[Vt,xi,Di,ln,Eg,lc,ws,O2,hC,ir,cB,T2],styles:[".eval-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;box-sizing:border-box}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 10px;background-color:var(--mat-sys-surface-container, #f5f5f5);border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0);gap:8px}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{flex:1 1 auto}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{height:32px!important;line-height:normal!important;border-radius:16px!important;font-size:13px!important;font-weight:500!important;display:inline-flex!important;align-items:center;justify-content:center}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%]{padding:0 12px!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:4px!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%]{width:32px!important;min-width:32px!important;padding:0!important;border-radius:50%!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:0!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple{width:32px!important;height:32px!important;border-radius:50%!important}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important;vertical-align:middle}.eval-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{vertical-align:middle}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%]{width:100%;background:transparent;border-top:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-weight:600}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{vertical-align:middle;padding:6px 16px;border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr.mat-header-row[_ngcontent-%COMP%]{display:none}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{cursor:pointer;background:transparent}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.eval-container[_ngcontent-%COMP%] .eval-table[_ngcontent-%COMP%] tr.selected-row[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high, #e0e0e0)}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%]{display:flex;align-items:center;border-bottom:1px solid var(--mat-sys-outline-variant);height:48px;flex-shrink:0;padding:0 16px;gap:8px}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{flex:1 1 auto}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-separator[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);margin:0 4px}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]{font-size:14px;color:var(--mat-sys-on-surface-variant)}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item.clickable[_ngcontent-%COMP%]{color:var(--mat-sys-primary);cursor:pointer}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item.clickable[_ngcontent-%COMP%]:hover{text-decoration:underline}.eval-container[_ngcontent-%COMP%] .eval-detail-header[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]:last-child{color:var(--mat-sys-on-surface);font-weight:500}.eval-container[_ngcontent-%COMP%] .eval-set-title[_ngcontent-%COMP%]{font-size:14px;font-weight:500;color:var(--mat-sys-on-surface);margin-right:16px}.eval-case-id[_ngcontent-%COMP%]{cursor:pointer}.eval-set-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between;color:var(--mat-sys-on-surface);font-style:normal;font-weight:700;font-size:14px}.empty-eval-info[_ngcontent-%COMP%]{margin-top:12px}.info-title[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface);font-size:14px;font-weight:500;padding-top:13px;padding-right:16px;padding-left:16px}.info-detail[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:14px;font-weight:400;padding-top:13px;padding-right:16px;padding-left:16px;letter-spacing:.2px}.info-create[_ngcontent-%COMP%]{color:var(--mat-sys-primary);font-size:14px;font-style:normal;font-weight:500;padding-right:16px;padding-left:16px;margin-top:19px;padding-bottom:16px;cursor:pointer}.eval-set-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:6px 16px;min-height:44px;border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0);background:transparent}.eval-set-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.eval-set-row[_ngcontent-%COMP%]:hover .delete-btn[_ngcontent-%COMP%]{opacity:1}.eval-set-row[_ngcontent-%COMP%] .eval-set-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:10px}.eval-set-row[_ngcontent-%COMP%] .eval-set-left[_ngcontent-%COMP%] span.material-symbols-outlined[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:20px}.eval-set-row[_ngcontent-%COMP%] .eval-set-name[_ngcontent-%COMP%]{font-size:14px;color:var(--mat-sys-on-surface)}.eval-set-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out;color:var(--mat-sys-outline)}.eval-set-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-error)}.eval-set-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important}.selected-eval-case[_ngcontent-%COMP%]{font-weight:900;color:var(--mat-sys-primary)}.save-session-btn[_ngcontent-%COMP%]{width:100%;border:none;border-radius:4px;margin-top:12px;cursor:pointer}.save-session-btn-detail[_ngcontent-%COMP%]{display:flex;padding:8px 16px 8px 12px;justify-content:center}.save-session-btn-text[_ngcontent-%COMP%]{padding-top:2px;color:var(--mat-sys-on-primary);font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.run-eval-btn[_ngcontent-%COMP%]{border-radius:4px;border:1px solid var(--mat-sys-outline);padding:8px 24px;margin-top:16px;color:var(--mat-sys-primary);cursor:pointer}.run-eval-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-high)}.result-btn[_ngcontent-%COMP%]{display:flex;border-radius:4px;border:1px solid var(--mat-sys-outline-variant);margin-top:4px;cursor:pointer}.result-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-high)}.result-btn.pass[_ngcontent-%COMP%]{color:var(--mat-sys-tertiary)}.result-btn.fail[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.evaluation-tab-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;width:100%}.evaluation-history-icon[_ngcontent-%COMP%]{cursor:pointer;margin-top:4px}.status-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;border-radius:8px;padding:12px 16px;margin-top:12px;background-color:var(--mat-sys-surface-container)}.status-card__overview[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;width:100%}.status-card__info[_ngcontent-%COMP%]{display:flex;flex-direction:column}.status-card__timestamp[_ngcontent-%COMP%]{font-size:.9em;color:var(--mat-sys-on-surface-variant);margin-bottom:5px}.status-card__summary[_ngcontent-%COMP%]{display:flex;align-items:center;font-size:.95em;font-weight:500;color:var(--mat-sys-on-surface)}.status-card__metrics[_ngcontent-%COMP%]{display:flex;align-items:center;flex-wrap:wrap;font-size:.75em;margin-top:3px}.status-card__metric[_ngcontent-%COMP%]{width:160px;display:flex;align-items:center;color:var(--mat-sys-on-surface);margin-right:12px;margin-bottom:4px}.status-card__metric-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.status-card__metric-value[_ngcontent-%COMP%]{margin-left:4px;flex-shrink:0}.status-card__failed[_ngcontent-%COMP%]{color:var(--mat-sys-error)}.status-card__separator[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);margin:0 8px}.status-card__passed[_ngcontent-%COMP%]{color:#2e7d32}.status-card__action[_ngcontent-%COMP%]{display:flex;align-items:center}.status-card__action[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);cursor:pointer;transition:transform .2s ease-in-out}.status-card__action[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]:hover{opacity:.8}.status-card__action[_ngcontent-%COMP%] .status-card__icon[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-size:1.2em;cursor:pointer}.status-card__action[_ngcontent-%COMP%] .status-card__icon[_ngcontent-%COMP%]:hover{opacity:.8}.status-card__history-cases[_ngcontent-%COMP%]{display:flex;flex-direction:column;margin-top:3px;justify-content:flex-start;width:100%}.status-card__history-case[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:4px;padding:8px 12px;border-radius:4px;cursor:pointer;box-sizing:border-box}.status-card__history-case[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.eval-spinner[_ngcontent-%COMP%]{margin-top:12px}.eval-details-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;flex:1;overflow:hidden}.eval-details-content[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}.vertical-tabs-sidebar[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:48px;border-right:1px solid var(--mat-sys-outline-variant);padding-top:8px;align-items:center;gap:8px}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.vertical-tabs-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;overflow-y:auto}.eval-cases-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%}.eval-case-row[_ngcontent-%COMP%]{display:flex;align-items:center;cursor:pointer;padding:8px 16px;gap:12px;border-bottom:1px solid var(--mat-sys-outline-variant);background:transparent}.eval-case-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low)}.eval-case-row[_ngcontent-%COMP%]:hover .delete-btn[_ngcontent-%COMP%], .eval-case-row[_ngcontent-%COMP%]:hover .edit-btn[_ngcontent-%COMP%]{opacity:1}.eval-case-row.selected-row[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high)}.eval-case-row[_ngcontent-%COMP%] .eval-case-id[_ngcontent-%COMP%]{font-size:14px;color:var(--mat-sys-on-surface);font-family:Google Sans Mono,monospace;flex:1}.eval-case-row[_ngcontent-%COMP%] .edit-btn[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out;color:var(--mat-sys-on-surface-variant)}.eval-case-row[_ngcontent-%COMP%] .edit-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-primary)}.eval-case-row[_ngcontent-%COMP%] .edit-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important}.eval-case-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out;color:var(--mat-sys-on-surface-variant)}.eval-case-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%]:hover{color:var(--mat-sys-error)}.eval-case-row[_ngcontent-%COMP%] .delete-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important}.eval-case-row.header-row[_ngcontent-%COMP%]{cursor:default;background-color:var(--mat-sys-surface-container-lowest)}.eval-case-row.header-row[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-lowest)}.info-tables-container[_ngcontent-%COMP%]{padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}"]})};var kFe={noSessionsFound:"No sessions found",readonlyChip:"Read-only",filterSessionsLabel:"Search using session ID"},lre=new Me("Session Tab Messages",{factory:()=>kFe});function _Fe(t,A){if(t&1&&(I(0,"div",1)(1,"mat-form-field",4)(2,"mat-label"),v(3),h(),I(4,"mat-icon",5),v(5,"filter_list"),h(),le(6,"input",6),h()()),t&2){let e=p();Q(3),ne(e.i18n.filterSessionsLabel),Q(3),H("formControl",e.filterControl)}}function xFe(t,A){t&1&&(I(0,"div",2),le(1,"mat-progress-bar",7),h())}function RFe(t,A){if(t&1&&(I(0,"div",3),v(1),h()),t&2){let e=p();Q(),Va("",e.i18n.noSessionsFound," for user '",e.userId,"'")}}function NFe(t,A){if(t&1&&(I(0,"div",18),v(1),h()),t&2){let e=p().$implicit;H("title",e.id),Q(),ne(e.id)}}function FFe(t,A){if(t&1&&(I(0,"div",19)(1,"mat-icon"),v(2,"visibility"),h(),v(3),h()),t&2){let e=p(3);Q(3),pA(" ",e.i18n.readonlyChip," ")}}function LFe(t,A){if(t&1){let e=ae();I(0,"div",10),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.getSession(n.id))}),I(1,"div",11)(2,"div",12)(3,"div",13),v(4),h(),I(5,"button",14),U("click",function(n){let o=L(e).$implicit,a=p(2);return G(a.promoteToTest(n,o))}),I(6,"mat-icon"),v(7,"fact_check"),h()(),I(8,"button",15),U("click",function(n){let o=L(e).$implicit,a=p(2);return G(a.deleteSession(n,o))}),I(9,"mat-icon"),v(10,"delete"),h()()(),I(11,"div",16)(12,"div",17),v(13),h(),T(14,NFe,2,2,"div",18),h()(),T(15,FFe,4,1,"div",19),Dt(16,"async"),h()}if(t&2){let e=A.$implicit,i=p(2);H("ngClass",e.id===i.sessionId?"session-item current":"session-item"),Q(3),_e("is-monospace",!i.hasDisplayName(e)),H("title",e.id),Q(),ne(i.getSessionDisplayName(e)),Q(9),ne(i.getDate(e)),Q(),O(i.hasDisplayName(e)?14:-1),Q(),O(Ut(16,8,i.sessionService.canEdit(i.userId,e))===!1?15:-1)}}function GFe(t,A){t&1&&(I(0,"div",2),le(1,"mat-progress-bar",7),h())}function KFe(t,A){if(t&1){let e=ae();T(0,GFe,2,0,"div",2),I(1,"div",20)(2,"button",21),U("click",function(){L(e);let n=p(2);return G(n.loadMoreSessions())}),v(3,"Load more"),h()()}if(t&2){p(2);let e=Ti(3);O(e?0:-1)}}function UFe(t,A){if(t&1&&(I(0,"div",8),RA(1,LFe,17,10,"div",9,ri),h(),T(3,KFe,4,1),Dt(4,"async")),t&2){let e=p();Q(),NA(e.sessionList),Q(2),O(Ut(4,1,e.isSessionFilteringEnabled)&&e.canLoadMoreSessions?3:-1)}}var lD=class t{userId="";appName="";sessionId="";sessionSelected=new Le;sessionReloaded=new Le;SESSIONS_PAGE_LIMIT=100;sessionList=[];canLoadMoreSessions=!1;pageToken="";filterControl=new tl("");editingSessionId=null;sessionNameControl=new tl("");refreshSessionsSubject=new rA;route=w(ll);changeDetectorRef=w(xt);sessionService=w(Cl);uiStateService=w(mc);i18n=w(lre);featureFlagService=w(Tr);dialog=w(nr);testsService=w(Rd);isSessionFilteringEnabled=this.featureFlagService.isSessionFilteringEnabled();isLoadingMoreInProgress=fe(!1);isInitialized=fe(!1);constructor(){this.filterControl.valueChanges.pipe(Ws(300)).subscribe(()=>{this.pageToken="",this.sessionList=[],this.refreshSessionsSubject.next()}),this.refreshSessionsSubject.pipe(yi(()=>{this.uiStateService.setIsSessionListLoading(!0)}),ki(()=>{let A=this.filterControl.value||void 0;return this.isSessionFilteringEnabled?this.sessionService.listSessions(this.userId,this.appName,{filter:A,pageToken:this.pageToken,pageSize:this.SESSIONS_PAGE_LIMIT}).pipe(ca(()=>sA({items:[],nextPageToken:""}))):this.sessionService.listSessions(this.userId,this.appName).pipe(ca(()=>sA({items:[],nextPageToken:""})))}),yi(({items:A,nextPageToken:e})=>{this.isInitialized.set(!0),this.sessionList=Array.from(new Map([...this.sessionList,...A].map(i=>[i.id,i])).values()).sort((i,n)=>Number(n.lastUpdateTime)-Number(i.lastUpdateTime)),this.pageToken=e??"",this.canLoadMoreSessions=!!e,this.changeDetectorRef.markForCheck()})).subscribe(()=>{this.isLoadingMoreInProgress.set(!1),this.uiStateService.setIsSessionListLoading(!1)},()=>{this.isLoadingMoreInProgress.set(!1),this.uiStateService.setIsSessionListLoading(!1)})}ngOnInit(){this.featureFlagService.isSessionFilteringEnabled().subscribe(A=>{if(A){let e=this.route.snapshot.queryParams.session;e&&this.filterControl.setValue(e)}}),setTimeout(()=>{this.refreshSessionsSubject.next()},500)}getSession(A){A&&this.sessionSelected.emit(A)}loadMoreSessions(){this.isLoadingMoreInProgress.set(!0),this.refreshSessionsSubject.next()}getSessionDisplayName(A){return A.state?.__session_metadata__?.displayName||A.id}hasDisplayName(A){return!!A.state?.__session_metadata__?.displayName}startEditSessionName(A){this.editingSessionId=A.id,this.sessionNameControl.setValue(this.getSessionDisplayName(A))}cancelEditSessionName(){this.editingSessionId=null,this.sessionNameControl.setValue("")}saveSessionName(A){if(!this.editingSessionId||!A.id)return;let e=this.sessionNameControl.value,i=A.state||{},n=Ye(Y({},i),{__session_metadata__:Ye(Y({},i.__session_metadata__||{}),{displayName:e})});A.state=n,this.editingSessionId=null,this.sessionService.updateSession(this.userId,this.appName,A.id,{stateDelta:n}).subscribe({error:()=>{}})}deleteSession(A,e){A.stopPropagation();let i=e.id,n=this.getSessionDisplayName(e),o=`Are you sure you want to delete session ${i}?`;n!==i&&(o=`Are you sure you want to delete session "${n}" (${i})?`);let a={title:"Confirm delete",message:o,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(zg,{width:"600px",data:a}).afterClosed().subscribe(s=>{s&&this.sessionService.deleteSession(this.userId,this.appName,i).subscribe(()=>{this.refreshSession(i)})})}promoteToTest(A,e){A.stopPropagation();let i=window.prompt("Enter test name (e.g., test1):");i&&this.sessionService.getSession(this.userId,this.appName,e.id).subscribe(n=>{let o={events:n.events};this.testsService.createTest(this.appName,i,o).subscribe({next:()=>{alert(`Test ${i} created successfully.`)},error:a=>{alert(`Error creating test: ${a.message||a}`)}})})}getDate(A){let e=A.lastUpdateTime||0;return new Date(e*1e3).toLocaleString()}fromApiResultToSession(A){return{id:A.id??"",appName:A.appName??"",userId:A.userId??"",state:A.state??{},events:A.events??[]}}reloadSession(A){this.sessionReloaded.emit(A)}refreshSession(A){let e=null;if(this.sessionList.length>0){let i=this.sessionList.findIndex(n=>n.id===A);i===this.sessionList.length-1&&(i=-1),e=this.sessionList[i+1]}return this.isSessionFilteringEnabled?this.filterControl.setValue(""):(this.sessionList=[],this.refreshSessionsSubject.next()),e}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-session-tab"]],inputs:{userId:"userId",appName:"appName",sessionId:"sessionId"},outputs:{sessionSelected:"sessionSelected",sessionReloaded:"sessionReloaded"},decls:8,vars:7,consts:[[1,"session-wrapper"],[1,"session-filter-container"],[1,"loading-spinner-container"],[1,"empty-state"],["appearance","outline",1,"session-filter"],["matPrefix",""],["matInput","",3,"formControl"],["mode","indeterminate"],[1,"session-tab-container",2,"margin-top","16px"],[3,"ngClass"],[3,"click","ngClass"],[1,"session-info"],[1,"session-header"],[1,"session-id",3,"title"],["mat-icon-button","","title","Promote to test",1,"action-btn","promote-btn",3,"click"],["mat-icon-button","","title","Delete session",1,"action-btn","delete-btn",3,"click"],[1,"session-sub-row"],[1,"session-date"],[1,"session-real-id",3,"title"],[1,"readonly-badge"],[1,"load-more"],["mat-button","","color","primary",3,"click"]],template:function(e,i){if(e&1&&(I(0,"div",0),T(1,_Fe,7,2,"div",1),Dt(2,"async"),so(3),Dt(4,"async"),T(5,xFe,2,0,"div",2)(6,RFe,2,2,"div",3)(7,UFe,5,3),h()),e&2){Q(),O(Ut(2,2,i.isSessionFilteringEnabled)?1:-1),Q(2);let n=lo(Ut(4,4,i.uiStateService.isSessionListLoading()));Q(2),O((n||!i.isInitialized())&&!i.isLoadingMoreInProgress()?5:!n&&i.isInitialized()&&i.sessionList.length===0?6:7)}},dependencies:[lc,tE,Vt,ir,$o,Ks,SQ,al,Fa,wn,Kn,Un,Ed,sI,Wi,xi,Di,Tn,Js,hs],styles:[".session-wrapper[_ngcontent-%COMP%]{padding-left:25px;padding-right:25px;font-size:14px;font-weight:700;color:var(--session-tab-session-wrapper-color);display:flex;flex-direction:column;overflow:hidden;height:100%}.session-wrapper[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{color:initial;padding-top:1em;text-align:center;font-weight:400;font-style:italic}.session-wrapper[_ngcontent-%COMP%] .session-filter-container[_ngcontent-%COMP%]{border-radius:8px;padding:16px;margin-bottom:16px;margin-top:16px}.session-wrapper[_ngcontent-%COMP%] .session-filter[_ngcontent-%COMP%]{width:100%}.session-tab-container[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.session-item[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;border:none;border-radius:8px;margin-bottom:4px;cursor:pointer}.session-item[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant, rgba(0, 0, 0, .04))}.session-item.current[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, rgba(0, 0, 0, .08))}.session-item[_ngcontent-%COMP%] mat-chip[_ngcontent-%COMP%]{margin-right:11px}.session-id[_ngcontent-%COMP%]{color:var(--session-tab-session-id-color);font-family:Roboto,sans-serif;font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px}.session-id.is-monospace[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace}.session-sub-row[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:8px}.session-date[_ngcontent-%COMP%]{color:var(--session-tab-session-date-color);font-family:Roboto;font-size:12px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.3px;white-space:nowrap}.session-real-id[_ngcontent-%COMP%]{color:var(--session-tab-session-id-color);font-family:Google Sans Mono,monospace;font-size:12px;font-style:normal;font-weight:400;line-height:16px;letter-spacing:.3px;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;text-align:right}.session-info[_ngcontent-%COMP%]{padding:11px;flex:1;min-width:0}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;height:24px;margin-bottom:2px}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .session-id[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .session-name-input[_ngcontent-%COMP%]{flex:1;height:20px;padding:0 4px;font-family:inherit;font-size:14px;border:1px solid var(--mat-sys-outline, #ccc);border-radius:4px;background:var(--mat-sys-surface, #fff);color:var(--mat-sys-on-surface, #000);outline:none;min-width:0;margin-right:4px}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .session-name-input[_ngcontent-%COMP%]:focus{border-color:var(--mat-sys-primary, #1976d2)}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%]{width:24px;height:24px;padding:0;display:none}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .action-btn[_ngcontent-%COMP%] .mat-icon{font-size:16px;width:16px;height:16px;line-height:16px}.session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .save-btn[_ngcontent-%COMP%], .session-info[_ngcontent-%COMP%] .session-header[_ngcontent-%COMP%] .cancel-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;margin-left:2px}.session-item[_ngcontent-%COMP%]:hover .action-btn.edit-btn[_ngcontent-%COMP%], .session-item[_ngcontent-%COMP%]:hover .action-btn.delete-btn[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center}.loading-spinner-container[_ngcontent-%COMP%]{margin-left:auto;margin-right:auto;margin-top:2em;width:100%}.load-more[_ngcontent-%COMP%]{display:flex;justify-content:center;margin-top:1em}.readonly-badge[_ngcontent-%COMP%]{color:var(--chat-readonly-badge-color);border-radius:4px;padding:1px 6px;display:flex;align-items:center;margin-right:8px;font-size:12px;line-height:16px;gap:4px;white-space:nowrap}.readonly-badge[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;padding-top:1px;flex-shrink:0}"]})};var TFe=["consoleArea"];function OFe(t,A){t&1&&le(0,"mat-progress-bar",3)}var Tm=class t{constructor(A,e){this.dialogRef=A;this.data=e}consoleOutput=fe("");isLoading=fe(!0);subscription;consoleArea;ngOnInit(){this.subscription=this.data.output$.subscribe({next:A=>{this.consoleOutput.update(e=>e+A),this.scrollToBottom()},complete:()=>{this.isLoading.set(!1)}})}ngOnDestroy(){this.subscription?.unsubscribe()}scrollToBottom(){setTimeout(()=>{if(this.consoleArea){let A=this.consoleArea.nativeElement;A.scrollTop=A.scrollHeight}},0)}close(){this.dialogRef.close()}static \u0275fac=function(e){return new(e||t)(dt(Pn),dt(Do))};static \u0275cmp=De({type:t,selectors:[["app-console-dialog"]],viewQuery:function(e,i){if(e&1&&$t(TFe,5),e&2){let n;cA(n=gA())&&(i.consoleArea=n.first)}},decls:11,vars:3,consts:[["consoleArea",""],["mat-dialog-title",""],[1,"mat-typography"],["mode","indeterminate",2,"margin-bottom","8px"],[1,"console-box"],["align","end"],["mat-button","",3,"click"]],template:function(e,i){e&1&&(I(0,"h2",1),v(1),h(),I(2,"mat-dialog-content",2),T(3,OFe,1,0,"mat-progress-bar",3),I(4,"div",4,0)(6,"pre"),v(7),h()()(),I(8,"mat-dialog-actions",5)(9,"button",6),U("click",function(){return i.close()}),v(10,"Close"),h()()),e&2&&(Q(),ne(i.data.title),Q(2),O(i.isLoading()?3:-1),Q(4),ne(i.consoleOutput()))},dependencies:[Ci,Wi,xi,Js,ea,ma,pa,iE,tE],styles:[".console-box[_ngcontent-%COMP%]{background-color:#1e1e1e;color:#dcdcdc;padding:16px;border-radius:4px;min-height:200px;flex:1;overflow-y:auto;font-family:Roboto Mono,monospace;font-size:12px}.console-box[_ngcontent-%COMP%] pre[_ngcontent-%COMP%]{margin:0;white-space:pre-wrap;word-wrap:break-word} .mat-mdc-dialog-content{max-height:70vh!important;overflow:hidden!important;display:flex;flex-direction:column}"]})};function JFe(t,A){t&1&&(I(0,"div",7),le(1,"mat-spinner",8),h())}var Om=class t{constructor(A,e){this.dialogRef=A;this.data=e;this.inputValue=e.value}inputValue;loading=fe(!1);onCancel(){this.dialogRef.close()}onSubmitClick(){this.inputValue&&(this.loading.set(!0),this.data.onSubmit(this.inputValue).subscribe({next:()=>{this.loading.set(!1),this.dialogRef.close(!0)},error:A=>{this.loading.set(!1),window.alert(`Operation failed: ${A.message||A}`)}}))}static \u0275fac=function(e){return new(e||t)(dt(Pn),dt(Do))};static \u0275cmp=De({type:t,selectors:[["app-prompt-dialog"]],decls:13,vars:7,consts:[["mat-dialog-title",""],[1,"full-width"],["matInput","",3,"ngModelChange","ngModel","disabled"],["class","spinner-container",4,"ngIf"],["align","end"],["mat-button","",3,"click","disabled"],["mat-button","","color","primary",3,"click","disabled"],[1,"spinner-container"],["diameter","40"]],template:function(e,i){e&1&&(I(0,"h2",0),v(1),h(),I(2,"mat-dialog-content")(3,"mat-form-field",1)(4,"mat-label"),v(5),h(),I(6,"input",2),Fi("ngModelChange",function(o){return vi(i.inputValue,o)||(i.inputValue=o),o}),h()(),Nt(7,JFe,2,0,"div",3),h(),I(8,"mat-dialog-actions",4)(9,"button",5),U("click",function(){return i.onCancel()}),v(10,"Cancel"),h(),I(11,"button",6),U("click",function(){return i.onSubmitClick()}),v(12,"Submit"),h()()),e&2&&(Q(),ne(i.data.title),Q(4),ne(i.data.label),Q(),Ni("ngModel",i.inputValue),H("disabled",i.loading()),Q(),H("ngIf",i.loading()),Q(2),H("disabled",i.loading()),Q(2),H("disabled",i.loading()||!i.inputValue))},dependencies:[Ci,cc,Js,ea,ma,pa,Wi,xi,ir,$o,Ks,al,Fa,_d,ws,wn,Kn,Un,Po],styles:[".full-width[_ngcontent-%COMP%]{width:100%}.spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;margin-top:16px}"]})};function zFe(t,A){t&1&&(I(0,"div",6)(1,"mat-icon"),v(2,"assignment_late"),h(),I(3,"span"),v(4,"No tests found for this agent."),h()())}function YFe(t,A){t&1&&(I(0,"th",13),v(1," Test Name "),h())}function HFe(t,A){if(t&1&&(I(0,"td",14),v(1),h()),t&2){let e=A.$implicit;Q(),pA(" ",e.replace(".json","")," ")}}function PFe(t,A){t&1&&(I(0,"th",13),v(1," Actions "),h())}function jFe(t,A){if(t&1){let e=ae();I(0,"td",14)(1,"button",15),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.runTest(n))}),I(2,"mat-icon"),v(3,"play_arrow"),h()(),I(4,"button",16),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.rebuildTest(n))}),I(5,"mat-icon"),v(6,"sync"),h()(),I(7,"button",17),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.renameTest(n))}),I(8,"mat-icon"),v(9,"edit"),h()(),I(10,"button",18),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.deleteTest(n))}),I(11,"mat-icon"),v(12,"delete"),h()()()}if(t&2){let e=p(2);Q(),H("disabled",e.isRunning()||e.isRebuilding()),Q(3),H("disabled",e.isRunning()||e.isRebuilding()),Q(3),H("disabled",e.isRunning()||e.isRebuilding()),Q(3),H("disabled",e.isRunning()||e.isRebuilding())}}function VFe(t,A){if(t&1){let e=ae();I(0,"tr",19),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.selectTest(n))}),h()}if(t&2){let e=A.$implicit,i=p(2);_e("selected-row",e===i.selectedTest())}}function qFe(t,A){if(t&1&&(I(0,"table",7),Ul(1,8),Nt(2,YFe,2,0,"th",9)(3,HFe,2,1,"td",10),Tl(),Ul(4,11),Nt(5,PFe,2,0,"th",9)(6,jFe,13,4,"td",10),Tl(),Nt(7,VFe,1,2,"tr",12),h()),t&2){let e=p();H("dataSource",e.dataSource),Q(7),H("matRowDefColumns",e.displayedColumns)}}var cD=class t{appName=MA("");sessionId=MA("");userId=MA("");isViewOnlySession=MA(!1);testsService=w(Rd);dialog=w(nr);sessionService=w(Cl);dataSource=new z1([]);consoleOutput=fe("");selectedTest=fe(null);testSelected=_i();isRunning=fe(!1);isRebuilding=fe(!1);displayedColumns=["name","actions"];ngOnInit(){this.loadTests()}ngOnChanges(A){A.appName&&!A.appName.isFirstChange()&&this.loadTests()}loadTests(){this.appName()&&this.testsService.listTests(this.appName()).subscribe(A=>{this.dataSource.data=A})}selectTest(A){this.selectedTest.set(A),this.testsService.getTest(this.appName(),A).subscribe(e=>{this.testSelected.emit({testName:A,events:e.events||[]})})}promoteCurrentSessionToTest(){this.sessionId()&&this.sessionService.getSession(this.userId(),this.appName(),this.sessionId()).subscribe(A=>{let i=(A.state?.__session_metadata__?.displayName||this.sessionId()).replace(/ /g,"_").replace(/[^a-zA-Z0-9_-]/g,""),n={events:A.events};this.dialog.open(Om,{data:{title:"Add Current Session as Test",label:"Test Name",value:i,onSubmit:o=>this.testsService.createTest(this.appName(),o,n).pipe(ki(()=>this.testsService.rebuildTests(this.appName(),o)))}}).afterClosed().subscribe(o=>{o&&this.loadTests()})})}renameTest(A){this.dialog.open(Om,{data:{title:"Rename Test",label:"New Name",value:A.replace(".json",""),onSubmit:e=>{let i=e.replace(/ /g,"_").replace(/[^a-zA-Z0-9_-]/g,"");return this.testsService.getTest(this.appName(),A).pipe(ki(n=>this.testsService.createTest(this.appName(),i,n)),ki(()=>this.testsService.deleteTest(this.appName(),A)))}}}).afterClosed().subscribe(e=>{e&&this.loadTests()})}runAllTests(){this.runTest()}runTest(A){this.isRunning.set(!0);let e=new rA;this.dialog.open(Tm,{width:"90vw",maxWidth:"1200px",height:"80vh",data:{title:`Running ${A||"all tests"}`,output$:e.asObservable()}}),this.testsService.runTests(this.appName(),A).subscribe({next:i=>{e.next(i)},error:i=>{e.next(` +Error: ${i.message||i}`),this.isRunning.set(!1),e.complete()},complete:()=>{this.isRunning.set(!1),e.complete()}})}deleteTest(A){confirm(`Are you sure you want to delete test ${A}?`)&&this.testsService.deleteTest(this.appName(),A).subscribe(()=>{this.loadTests()})}rebuildAllTests(){this.rebuildTest()}rebuildTest(A){this.isRebuilding.set(!0);let e=new rA;this.dialog.open(Tm,{width:"90vw",maxWidth:"1200px",height:"80vh",data:{title:`Rebuilding ${A||"all tests"}`,output$:e.asObservable()}}),e.next(`Rebuilding tests... +`),this.testsService.rebuildTests(this.appName(),A).subscribe({next:()=>{e.next(`Successfully rebuilt tests. +`),this.isRebuilding.set(!1),this.loadTests(),e.complete()},error:i=>{e.next(`Error rebuilding tests: ${i.message||i} +`),this.isRebuilding.set(!1),e.complete()}})}clearConsole(){this.consoleOutput.set("")}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-tests-tab"]],inputs:{appName:[1,"appName"],sessionId:[1,"sessionId"],userId:[1,"userId"],isViewOnlySession:[1,"isViewOnlySession"]},outputs:{testSelected:"testSelected"},features:[ai],decls:20,vars:4,consts:[[1,"tests-container"],[1,"toolbar"],["mat-button","","color","primary",3,"click","disabled"],["mat-button","","color","accent",3,"click","disabled"],[1,"spacer"],["mat-icon-button","","matTooltip","Refresh",3,"click"],[1,"empty-state"],["mat-table","",1,"tests-table",3,"dataSource"],["matColumnDef","name"],["mat-header-cell","",4,"matHeaderCellDef"],["mat-cell","",4,"matCellDef"],["matColumnDef","actions"],["mat-row","",3,"selected-row","click",4,"matRowDef","matRowDefColumns"],["mat-header-cell",""],["mat-cell",""],["mat-icon-button","","color","primary","matTooltip","Run Test",3,"click","disabled"],["mat-icon-button","","color","accent","matTooltip","Rebuild Test",3,"click","disabled"],["mat-icon-button","","color","primary","matTooltip","Rename Test",3,"click","disabled"],["mat-icon-button","","color","warn","matTooltip","Delete Test",3,"click","disabled"],["mat-row","",3,"click"]],template:function(e,i){e&1&&(I(0,"div",0)(1,"div",1)(2,"button",2),U("click",function(){return i.promoteCurrentSessionToTest()}),I(3,"mat-icon"),v(4,"add"),h(),v(5," From Current Session "),h(),I(6,"button",2),U("click",function(){return i.runAllTests()}),I(7,"mat-icon"),v(8,"playlist_play"),h(),v(9," Run All "),h(),I(10,"button",3),U("click",function(){return i.rebuildAllTests()}),I(11,"mat-icon"),v(12,"sync"),h(),v(13," Rebuild All "),h(),le(14,"span",4),I(15,"button",5),U("click",function(){return i.loadTests()}),I(16,"mat-icon"),v(17,"refresh"),h()()(),T(18,zFe,5,0,"div",6)(19,qFe,8,2,"table",7),h()),e&2&&(Q(2),H("disabled",!i.sessionId()||i.isViewOnlySession()),Q(4),H("disabled",i.isRunning()||i.isRebuilding()||i.dataSource.data.length===0),Q(4),H("disabled",i.isRunning()||i.isRebuilding()||i.dataSource.data.length===0),Q(8),O(i.dataSource.data.length===0?18:19))},dependencies:[Ci,Wi,xi,Di,Tn,Vt,qae,Xae,Wae,$ae,Zae,ere,Are,tre,qa,ln,_d,iE,Js],styles:[".tests-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;box-sizing:border-box}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 10px;background-color:var(--mat-sys-surface-container);border-bottom:1px solid var(--mat-sys-outline-variant);gap:8px}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] .spacer[_ngcontent-%COMP%]{flex:1 1 auto}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{height:32px!important;line-height:normal!important;border-radius:16px!important;font-size:13px!important;font-weight:500!important;display:inline-flex!important;align-items:center;justify-content:center}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%]{padding:0 12px!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:4px!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%]{width:32px!important;min-width:32px!important;padding:0!important;border-radius:50%!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:0!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button.mat-mdc-icon-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple{width:32px!important;height:32px!important;border-radius:50%!important}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px!important;width:20px!important;height:20px!important;line-height:20px!important;vertical-align:middle}.tests-container[_ngcontent-%COMP%] .toolbar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{vertical-align:middle}.tests-container[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;color:var(--mat-sys-on-surface-variant);font-style:italic;gap:8px}.tests-container[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%]{width:100%;background:transparent;border-top:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] th[_ngcontent-%COMP%]{font-weight:600}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]{vertical-align:middle;padding:6px 16px;border-bottom:1px solid var(--mat-sys-outline-variant, #e0e0e0)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr.mat-header-row[_ngcontent-%COMP%]{display:none}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]{cursor:pointer;background:transparent}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-container-low, #f5f5f5)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%]:hover td.mat-column-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{opacity:1}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr.selected-row[_ngcontent-%COMP%]{background-color:var(--mat-sys-surface-container-high, #e0e0e0)}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td.mat-column-actions[_ngcontent-%COMP%]{text-align:right}.tests-container[_ngcontent-%COMP%] .tests-table[_ngcontent-%COMP%] tr[_ngcontent-%COMP%] td.mat-column-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%]{margin-top:16px;display:flex;flex-direction:column;gap:8px;flex:1;min-height:200px}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0;font-size:1.1rem;font-weight:600}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--mat-sys-on-surface-variant)}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-actions[_ngcontent-%COMP%] .running-status[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_pulse 1.5s infinite}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]{background-color:#1e1e1e;color:#d4d4d4;padding:12px;border-radius:4px;font-family:Courier New,Courier,monospace;font-size:.85rem;overflow:auto;flex:1;margin:0;white-space:pre-wrap;word-break:break-all;border:1px solid #333}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar{width:8px;height:8px}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#777}.tests-container[_ngcontent-%COMP%] .console-section[_ngcontent-%COMP%] .console-box[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:#1e1e1e}@keyframes _ngcontent-%COMP%_pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}"]})};var ZFe={stateIsEmpty:"State is empty"},cre=new Me("State Tab Messages",{factory:()=>ZFe});function WFe(t,A){if(t&1&&(I(0,"div",1),v(1),h()),t&2){let e=p();Q(),ne(e.i18n.stateIsEmpty)}}function XFe(t,A){if(t&1&&(I(0,"div"),le(1,"app-custom-json-viewer",2),h()),t&2){let e=p();Q(),H("json",e.sessionState)}}var gD=class t{sessionState;i18n=w(cre);get isEmptyState(){return!this.sessionState||Object.keys(this.sessionState).length===0}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-state-tab"]],inputs:{sessionState:"sessionState"},decls:3,vars:1,consts:[[1,"state-wrapper"],[1,"empty-state"],[3,"json"]],template:function(e,i){e&1&&(I(0,"div",0),T(1,WFe,2,1,"div",1)(2,XFe,2,1,"div"),h()),e&2&&(Q(),O(i.isEmptyState?1:2))},dependencies:[_l],styles:[".state-wrapper[_ngcontent-%COMP%]{padding-left:25px;padding-right:25px;margin-top:16px}.state-wrapper[_ngcontent-%COMP%] .empty-state[_ngcontent-%COMP%]{text-align:center;font-style:italic}"]})};var $Fe=(t,A)=>A.span_id;function eLe(t,A){if(t&1){let e=ae();I(0,"span",20)(1,"a",24),U("click",function(){let n;L(e);let o=p(3);return G(o.selectSpanById((n=o.selectedSpan())==null?null:n.parent_span_id))}),v(2),h(),I(3,"button",21),U("click",function(){let n;L(e);let o=p(3);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.parent_span_id))}),I(4,"mat-icon"),v(5),h()()()}if(t&2){let e,i,n,o=p(3);Q(),H("matTooltip",((e=o.selectedSpan())==null?null:e.parent_span_id)||""),Q(),ne((i=o.selectedSpan())==null?null:i.parent_span_id),Q(3),ne(o.copiedId===((n=o.selectedSpan())==null?null:n.parent_span_id)?"check":"content_copy")}}function ALe(t,A){t&1&&v(0," None ")}function tLe(t,A){if(t&1){let e=ae();I(0,"tr")(1,"td"),v(2),h(),I(3,"td")(4,"span",20)(5,"a",24),U("click",function(){let n=L(e).$implicit,o=p(4);return G(o.selectSpanById(n.span_id))}),v(6),h(),I(7,"button",21),U("click",function(){let n=L(e).$implicit,o=p(4);return G(o.copyToClipboard(n.span_id))}),I(8,"mat-icon"),v(9),h()()()()()}if(t&2){let e=A.$implicit,i=p(4);Q(2),ne(e.name),Q(3),H("matTooltip",e.span_id),Q(),ne(e.span_id),Q(3),ne(i.copiedId===e.span_id?"check":"content_copy")}}function iLe(t,A){if(t&1&&(I(0,"table",22),RA(1,tLe,10,4,"tr",null,$Fe),h()),t&2){let e=p(3);Q(),NA(e.selectedSpanChildren)}}function nLe(t,A){if(t&1){let e=ae();I(0,"table",23)(1,"tr")(2,"td"),v(3,"Event ID"),h(),I(4,"td")(5,"span",20)(6,"a",24),U("click",function(){L(e),p();let n=Ti(59),o=p(2);return G(o.switchToEvent.emit(n))}),v(7),h(),I(8,"button",21),U("click",function(){L(e),p();let n=Ti(59),o=p(2);return G(o.copyToClipboard(n))}),I(9,"mat-icon"),v(10),h()()()()()()}if(t&2){p();let e=Ti(59),i=p(2);Q(6),H("matTooltip",e||""),Q(),ne(e),Q(3),ne(i.copiedId===e?"check":"content_copy")}}function oLe(t,A){if(t&1){let e=ae();I(0,"div",13)(1,"table",15)(2,"tr")(3,"td"),v(4,"Name"),h(),I(5,"td")(6,"span",16)(7,"span",17),v(8),h(),I(9,"button",18),U("click",function(){let n;L(e);let o=p(2);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.name))}),I(10,"mat-icon"),v(11),h()()()()(),I(12,"tr")(13,"td"),v(14,"Span ID"),h(),I(15,"td",19)(16,"span",20)(17,"span",17),v(18),h(),I(19,"button",21),U("click",function(){let n;L(e);let o=p(2);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.span_id))}),I(20,"mat-icon"),v(21),h()()()()(),I(22,"tr")(23,"td"),v(24,"Parent ID"),h(),I(25,"td"),T(26,eLe,6,3,"span",20)(27,ALe,1,0),h()(),I(28,"tr")(29,"td"),v(30,"Trace ID"),h(),I(31,"td",19)(32,"span",20)(33,"span",17),v(34),h(),I(35,"button",21),U("click",function(){let n;L(e);let o=p(2);return G(o.copyToClipboard((n=o.selectedSpan())==null?null:n.trace_id))}),I(36,"mat-icon"),v(37),h()()()()(),I(38,"tr")(39,"td"),v(40,"Start Time"),h(),I(41,"td")(42,"span",16)(43,"span",17),v(44),h(),I(45,"button",18),U("click",function(){let n;L(e);let o=p(2);return G(o.copyToClipboard(o.formatTime((n=o.selectedSpan())==null?null:n.start_time),"startTime"))}),I(46,"mat-icon"),v(47),h()()()()(),I(48,"tr")(49,"td"),v(50,"End Time"),h(),I(51,"td")(52,"span",16)(53,"span",17),v(54),h(),I(55,"button",18),U("click",function(){let n;L(e);let o=p(2);return G(o.copyToClipboard(o.formatTime((n=o.selectedSpan())==null?null:n.end_time),"endTime"))}),I(56,"mat-icon"),v(57),h()()()()()(),T(58,iLe,3,0,"table",22),so(59),T(60,nLe,11,3,"table",23),h()}if(t&2){let e,i,n,o,a,r,s,l,c,C,d,B,E,u,m=p(2);Q(7),H("matTooltip",((e=m.selectedSpan())==null?null:e.name)||""),Q(),ne((i=m.selectedSpan())==null?null:i.name),Q(3),ne(m.copiedId===((n=m.selectedSpan())==null?null:n.name)?"check":"content_copy"),Q(6),H("matTooltip",((o=m.selectedSpan())==null?null:o.span_id)||""),Q(),ne((a=m.selectedSpan())==null?null:a.span_id),Q(3),ne(m.copiedId===((r=m.selectedSpan())==null?null:r.span_id)?"check":"content_copy"),Q(5),O((s=m.selectedSpan())!=null&&s.parent_span_id?26:27),Q(7),H("matTooltip",((l=m.selectedSpan())==null?null:l.trace_id)||""),Q(),ne((c=m.selectedSpan())==null?null:c.trace_id),Q(3),ne(m.copiedId===((C=m.selectedSpan())==null?null:C.trace_id)?"check":"content_copy"),Q(6),H("matTooltip",m.formatTime((d=m.selectedSpan())==null?null:d.start_time)),Q(),ne(m.formatTime((B=m.selectedSpan())==null?null:B.start_time)),Q(3),ne(m.copiedId==="startTime"?"check":"content_copy"),Q(6),H("matTooltip",m.formatTime((E=m.selectedSpan())==null?null:E.end_time)),Q(),ne(m.formatTime((u=m.selectedSpan())==null?null:u.end_time)),Q(3),ne(m.copiedId==="endTime"?"check":"content_copy"),Q(),O(m.selectedSpanChildren.length>0?58:-1),Q();let f=lo(m.getSelectedSpanEventId());Q(),O(f?60:-1)}}function aLe(t,A){if(t&1){let e=ae();I(0,"tr")(1,"td"),v(2),h(),I(3,"td")(4,"span",16)(5,"span"),v(6),h(),I(7,"button",18),U("click",function(){let n=L(e).$implicit;p(2);let o=Ti(1),a=p(2);return G(a.copyToClipboard(o[n]==null?null:o[n].toString()))}),I(8,"mat-icon"),v(9),h()()()()()}if(t&2){let e=A.$implicit;p(2);let i=Ti(1),n=p(2);Q(2),ne(e),Q(4),ne(i[e]),Q(3),ne(n.copiedId===(i[e]==null?null:i[e].toString())?"check":"content_copy")}}function rLe(t,A){if(t&1&&(I(0,"table",15),RA(1,aLe,10,3,"tr",null,ri),h()),t&2){p();let e=Ti(1),i=p(2);Q(),NA(i.Object.keys(e))}}function sLe(t,A){t&1&&(I(0,"div",1),v(1,"No attributes available"),h())}function lLe(t,A){if(t&1&&(I(0,"div",13),so(1),T(2,rLe,3,0,"table",15)(3,sLe,2,0,"div",1),h()),t&2){let e=p(2);Q();let i=lo(e.getSelectedSpanAttributesView());Q(),O(i&&e.Object.keys(i).length>0?2:3)}}function cLe(t,A){if(t&1){let e=ae();so(0),I(1,"div",14),le(2,"app-custom-json-viewer",25),I(3,"button",26),U("click",function(){L(e);let n=Ti(0),o=p(2);return G(o.copyJsonToClipboard(n,"raw"))}),I(4,"mat-icon"),v(5),h()()()}if(t&2){let e=p(2),i=lo(e.getSelectedSpanRawView());Q(2),H("json",i),Q(3),ne(e.copiedId==="raw"?"check":"content_copy")}}function gLe(t,A){if(t&1){let e=ae();I(0,"div",0)(1,"div",2)(2,"mat-paginator",3),U("page",function(n){L(e);let o=p();return G(o.onPage(n))}),h(),I(3,"div",4),v(4),h(),le(5,"div",5),I(6,"button",6),U("click",function(){L(e);let n=p();return G(n.traceService.selectedRow(void 0))}),I(7,"mat-icon"),v(8,"remove_selection"),h()()(),I(9,"div",7)(10,"div",8)(11,"button",9),U("click",function(){L(e);let n=p();return G(n.selectedDetailTab.set("info"))}),I(12,"mat-icon"),v(13,"info"),h()(),I(14,"button",10),U("click",function(){L(e);let n=p();return G(n.selectedDetailTab.set("attributes"))}),I(15,"mat-icon"),v(16,"list_alt"),h()(),I(17,"button",11),U("click",function(){L(e);let n=p();return G(n.selectedDetailTab.set("raw"))}),I(18,"mat-icon"),v(19,"data_object"),h()()(),I(20,"div",12),T(21,oLe,61,19,"div",13),T(22,lLe,4,2,"div",13),T(23,cLe,6,3,"div",14),h()()()}if(t&2){let e,i=p();Q(2),H("length",i.orderedTraceData.length)("pageSize",1)("pageIndex",i.selectedSpanIndex),Q(2),pA(" ",(e=i.selectedSpan())==null?null:e.name," "),Q(7),_e("active",i.selectedDetailTab()==="info"),Q(3),_e("active",i.selectedDetailTab()==="attributes"),Q(3),_e("active",i.selectedDetailTab()==="raw"),Q(4),O(i.selectedDetailTab()==="info"?21:-1),Q(),O(i.selectedDetailTab()==="attributes"?22:-1),Q(),O(i.selectedDetailTab()==="raw"?23:-1)}}function CLe(t,A){t&1&&(I(0,"div",1),v(1,"Select a trace span to view its details"),h())}var OL=class t extends GI{nextPageLabel="Next Span";previousPageLabel="Previous Span";firstPageLabel="First Span";lastPageLabel="Last Span";getRangeLabel=(A,e,i)=>i===0?"Span 0 of 0":(i=Math.max(i,0),`Span ${A*e+1} of ${i}`);static \u0275fac=(()=>{let A;return function(i){return(A||(A=Gi(t)))(i||t)}})();static \u0275prov=Ze({token:t,factory:t.\u0275fac})},CD=class t{_traceData=[];orderedTraceData=[];set traceData(A){this._traceData=A||[],this.orderedTraceData=this.computeOrdered(this._traceData)}get traceData(){return this._traceData}computeOrdered(A){let e=A.map(a=>Y({},a)),i=new Map,n=[];e.forEach(a=>i.set(String(a.span_id),a)),e.forEach(a=>{if(a.parent_span_id&&i.has(String(a.parent_span_id))){let r=i.get(String(a.parent_span_id));r.children=r.children||[],r.children.push(a)}else n.push(a)});let o=a=>a.flatMap(r=>[r,...r.children?o(r.children):[]]);return o(n)}traceService=w(Qc);selectedSpan=Ir(this.traceService.selectedTraceRow$);static getValidTraceTab(A){return A==="info"||A==="attributes"||A==="raw"?A:"info"}selectedDetailTab=fe(t.getValidTraceTab(window.localStorage.getItem("adk-trace-tab-selected-tab")));switchToEvent=_i();constructor(){Ln(()=>{window.localStorage.setItem("adk-trace-tab-selected-tab",this.selectedDetailTab())})}formatTime(A){return A?new Date(A/1e6).toLocaleString():"N/A"}get selectedSpanChildren(){let A=this.selectedSpan();return A?A.children&&A.children.length>0?A.children:this.traceData.filter(e=>e.parent_span_id&&String(e.parent_span_id)===String(A.span_id)):[]}selectSpanById(A){if(!A)return;let e=this.traceData.find(i=>String(i.span_id)===String(A));e&&this.traceService.selectedRow(e)}get selectedSpanIndex(){let A=this.selectedSpan();if(!A)return;let e=this.orderedTraceData.findIndex(i=>i.span_id===A.span_id);return e===-1?void 0:e}onPage(A){A.pageIndex>=0&&A.pageIndex=this.orderedTraceData.length?0:this.selectedSpanIndex+1:i=this.selectedSpanIndex-1<0?this.orderedTraceData.length-1:this.selectedSpanIndex-1,this.traceService.selectedRow(this.orderedTraceData[i])}Object=Object;copiedId=null;copyToClipboard(A,e){if(A==null||A==="")return;let i=String(A);navigator.clipboard.writeText(i).then(()=>{this.copiedId=e||i,setTimeout(()=>this.copiedId=null,2e3)})}getSelectedSpanEventId(){return this.selectedSpan()?.attrEventId}getSelectedSpanAttributesView(){return this.selectedSpan()?.rawAttributesUseThisFieldOnlyForDisplay??{}}getSelectedSpanRawView(){return this.selectedSpan()?.rawSpanUseThisFieldOnlyForDisplay}copyJsonToClipboard(A,e){if(!A)return;let i=JSON.stringify(A,null,2);navigator.clipboard.writeText(i).then(()=>{this.copiedId=e,setTimeout(()=>this.copiedId=null,2e3)})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-trace-tab"]],hostBindings:function(e,i){e&1&&U("keydown",function(o){return i.handleKeyboardNavigation(o)},Zc)},inputs:{traceData:"traceData"},outputs:{switchToEvent:"switchToEvent"},features:[yt([{provide:GI,useClass:OL}])],decls:2,vars:1,consts:[[1,"event-details-container"],[1,"empty-state"],[1,"event-details-header"],["hidePageSize","","aria-label","Select span",1,"event-paginator",3,"page","length","pageSize","pageIndex"],[1,"span-title"],[2,"flex-grow","1"],["mat-icon-button","","matTooltip","Clear selection",3,"click"],[1,"event-details-content"],[1,"vertical-tabs-sidebar"],["mat-icon-button","","matTooltip","Info","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Attributes","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Raw JSON","matTooltipPosition","right",3,"click"],[1,"vertical-tabs-content"],[1,"info-tables-container"],[1,"json-viewer-container","json-viewer-wrapper"],["app-info-table",""],[1,"value-cell"],[3,"matTooltip"],["mat-icon-button","","matTooltip","Copy",1,"copy-value-button",3,"click"],[1,"id-text"],[1,"id-cell"],["mat-icon-button","","matTooltip","Copy",1,"copy-id-button",3,"click"],["app-info-table","","title","Children"],["app-info-table","","title","Events"],["href","javascript:void(0)",1,"span-link","id-text",3,"click","matTooltip"],[3,"json"],["mat-icon-button","","matTooltip","Copy JSON",1,"floating-copy-button",3,"click"]],template:function(e,i){e&1&&T(0,gLe,24,13,"div",0)(1,CLe,2,0,"div",1),e&2&&O(i.selectedSpan()!==void 0?0:1)},dependencies:[Wi,Di,Tn,Vt,qa,ln,_l,e8,O2],styles:["[_nghost-%COMP%]{display:block;height:100%}.json-viewer-container[_ngcontent-%COMP%]{margin:10px}.event-paginator[_ngcontent-%COMP%]{display:flex;justify-content:center;background-color:transparent}.event-paginator[_ngcontent-%COMP%] .mat-mdc-paginator-range-label{order:2;margin:0 0 0 8px}.span-title[_ngcontent-%COMP%]{font-weight:500;font-family:Google Sans Mono,monospace;font-size:13px;color:var(--mat-sys-on-surface);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:300px;margin-left:16px}.event-details-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%}.event-details-content[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}.vertical-tabs-sidebar[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:48px;border-right:1px solid var(--mat-sys-outline-variant);padding-top:8px;align-items:center;gap:8px}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.vertical-tabs-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;overflow-y:auto}.event-details-header[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--mat-sys-outline-variant);height:48px;flex-shrink:0}.empty-state[_ngcontent-%COMP%]{padding:16px;text-align:center;color:var(--mat-sys-on-surface-variant);font-style:italic;font-size:14px}.info-tables-container[_ngcontent-%COMP%]{padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.span-link[_ngcontent-%COMP%]{color:var(--mat-sys-primary);text-decoration:none;cursor:pointer}.span-link[_ngcontent-%COMP%]:hover{text-decoration:underline}.id-text[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:11px}.id-cell[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;overflow:hidden}.id-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child, .value-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.id-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .id-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%]{opacity:1}.copy-id-button[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%]{width:28px!important;height:28px!important;padding:0!important;line-height:28px!important;flex-shrink:0;margin:-4px 0!important;opacity:0;transition:opacity .2s ease-in-out;border-radius:4px!important;overflow:hidden!important}.copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.copy-id-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.json-viewer-wrapper[_ngcontent-%COMP%]{position:relative}.json-viewer-wrapper[_ngcontent-%COMP%]:hover .floating-copy-button[_ngcontent-%COMP%]{opacity:1}.floating-copy-button[_ngcontent-%COMP%]{position:absolute;top:4px;right:4px;z-index:10;opacity:0;transition:opacity .2s ease-in-out;background-color:var(--mat-sys-surface-container-high)!important;border-radius:4px!important;overflow:hidden!important;width:28px!important;height:28px!important;line-height:28px!important;padding:0!important}.floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.floating-copy-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.floating-copy-button[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}"]})};var dLe={agentDevelopmentKitLabel:"Agent Development Kit",disclosureTooltip:"ADK Web is for development purposes. It has access to all the data and should not be used in production.",collapsePanelTooltip:"Collapse panel",eventsTabLabel:"Events",stateTabLabel:"State",artifactsTabLabel:"Artifacts",sessionsTabLabel:"Sessions",evalTabLabel:"Evals",testsTabLabel:"Tests",selectEventAriaLabel:"Select event",infoTabLabel:"Info",graphTabLabel:"Graph",requestDetailsTabLabel:"Request",responseDetailsTabLabel:"Response",responseIsNotAvailable:"Response is not available",requestIsNotAvailable:"Request is not available",clearSelectionButtonLabel:"Remove selection"},IE=new Me("Side Panel Messages",{factory:()=>dLe});var ILe=["eventMenuTrigger"],BLe=["graphContainer"],hLe=(t,A)=>A.span_id,uLe=(t,A)=>A.modality,gre=(t,A)=>A.key,ELe=(t,A)=>A.id;function QLe(t,A){if(t&1){let e=ae();I(0,"button",10),U("click",function(){L(e);let n=p();return G(n.selectedDetailTab="graph")}),I(1,"mat-icon"),v(2,"account_tree"),h()()}if(t&2){let e=p();_e("active",e.selectedDetailTab==="graph"),H("matTooltip",dd(e.i18n.graphTabLabel))}}function pLe(t,A){if(t&1){let e=ae();I(0,"div",31),le(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(e);let n=p(3);return G(n.copyJsonToClipboard(n.selectedEvent().nodeInfo.outputFor,"nodeInfo.outputFor"))}),I(3,"mat-icon"),v(4),h()()()}if(t&2){let e=p(3);Q(),H("json",e.selectedEvent().nodeInfo.outputFor)("showMarkdown",!0),Q(3),ne(e.copiedId==="nodeInfo.outputFor"?"check":"content_copy")}}function mLe(t,A){t&1&&v(0," N/A ")}function fLe(t,A){if(t&1){let e=ae();I(0,"tr")(1,"td"),v(2,"Message As Output"),h(),I(3,"td")(4,"span",24)(5,"span",22),v(6),h(),I(7,"button",25),U("click",function(){L(e);let n=p(3);return G(n.copyToClipboard(n.selectedEvent().nodeInfo.messageAsOutput))}),I(8,"mat-icon"),v(9),h()()()()()}if(t&2){let e,i=p(3);Q(5),H("matTooltip",((e=i.selectedEvent().nodeInfo.messageAsOutput)==null?null:e.toString())||""),Q(),ne(i.selectedEvent().nodeInfo.messageAsOutput),Q(3),ne(i.copiedId===i.selectedEvent().nodeInfo.messageAsOutput?"check":"content_copy")}}function wLe(t,A){if(t&1){let e=ae();I(0,"table",26)(1,"tr")(2,"td"),v(3,"Node Path"),h(),I(4,"td")(5,"span",24)(6,"span",22),v(7),h(),I(8,"button",25),U("click",function(){L(e);let n=p(2);return G(n.copyToClipboard(n.selectedEvent().nodeInfo.path))}),I(9,"mat-icon"),v(10),h()()()()(),I(11,"tr")(12,"td"),v(13,"Output For"),h(),I(14,"td"),T(15,pLe,5,3,"div",31)(16,mLe,1,0),h()(),T(17,fLe,10,3,"tr"),h()}if(t&2){let e=p(2);Q(6),H("matTooltip",e.selectedEvent().nodeInfo.path||""),Q(),ne(e.selectedEvent().nodeInfo.path||"N/A"),Q(3),ne(e.copiedId===e.selectedEvent().nodeInfo.path?"check":"content_copy"),Q(5),O(e.selectedEvent().nodeInfo.outputFor?15:16),Q(2),O(e.selectedEvent().nodeInfo.messageAsOutput!==void 0?17:-1)}}function yLe(t,A){if(t&1){let e=ae();I(0,"div",31),le(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(e);let n=p().$implicit,o=p(3);return G(o.copyJsonToClipboard(o.selectedEvent().actions[n],"action."+n))}),I(3,"mat-icon"),v(4),h()()()}if(t&2){let e=p().$implicit,i=p(3);Q(),H("json",i.selectedEvent().actions[e])("showMarkdown",!0),Q(3),ne(i.copiedId==="action."+e?"check":"content_copy")}}function vLe(t,A){if(t&1){let e=ae();I(0,"span",24)(1,"span",22),v(2),h(),I(3,"button",25),U("click",function(){let n;L(e);let o=p().$implicit,a=p(3);return G(a.copyToClipboard((n=a.selectedEvent().actions[o])==null?null:n.toString()))}),I(4,"mat-icon"),v(5),h()()()}if(t&2){let e,i,n=p().$implicit,o=p(3);Q(),H("matTooltip",((e=o.selectedEvent().actions[n])==null?null:e.toString())||""),Q(),ne(o.selectedEvent().actions[n]),Q(3),ne(o.copiedId===((i=o.selectedEvent().actions[n])==null?null:i.toString())?"check":"content_copy")}}function DLe(t,A){if(t&1&&(I(0,"tr")(1,"td"),v(2),h(),I(3,"td"),T(4,yLe,5,3,"div",31)(5,vLe,6,3,"span",24),h()()),t&2){let e=A.$implicit,i=p(3);Q(2),ne(e),Q(2),O(i.isObject(i.selectedEvent().actions[e])?4:5)}}function bLe(t,A){if(t&1&&(I(0,"table",27),RA(1,DLe,6,2,"tr",null,ri),h()),t&2){let e=p(2);Q(),NA(e.Object.keys(e.selectedEvent().actions))}}function MLe(t,A){if(t&1){let e=ae();I(0,"tr")(1,"td"),v(2),h(),I(3,"td")(4,"div",31),le(5,"app-custom-json-viewer",32),I(6,"button",33),U("click",function(){let n=L(e),o=n.$implicit,a=n.$index,r=p(3);return G(r.copyJsonToClipboard(o,"fc."+a))}),I(7,"mat-icon"),v(8),h()()()()()}if(t&2){let e=A.$implicit,i=A.$index,n=p(3);Q(2),ne(e==null?null:e.name),Q(3),H("json",e)("showMarkdown",!0),Q(3),ne(n.copiedId==="fc."+i?"check":"content_copy")}}function SLe(t,A){if(t&1&&(I(0,"table",28),RA(1,MLe,9,4,"tr",null,ja),h()),t&2){let e=p(2);Q(),NA(e.functionCalls())}}function kLe(t,A){if(t&1&&(I(0,"div",35),le(1,"img",36),h()),t&2){let e=p().$implicit;Q(),H("src","data:"+e.inlineData.mimeType+";base64,"+e.inlineData.data,wo)}}function _Le(t,A){if(t&1&&(I(0,"div"),le(1,"audio",37),h()),t&2){let e=p().$implicit;Q(),H("src","data:"+e.inlineData.mimeType+";base64,"+e.inlineData.data)}}function xLe(t,A){if(t&1&&(I(0,"div"),le(1,"video",37),h()),t&2){let e=p().$implicit;Q(),H("src","data:"+e.inlineData.mimeType+";base64,"+e.inlineData.data,wo)}}function RLe(t,A){if(t&1&&(I(0,"div"),v(1),h()),t&2){let e=p().$implicit;Q(),pA(" Unsupported media type: ",e.inlineData==null?null:e.inlineData.mimeType," ")}}function NLe(t,A){if(t&1&&T(0,kLe,2,1,"div",35)(1,_Le,2,1,"div")(2,xLe,2,1,"div")(3,RLe,2,1,"div"),t&2){let e=A.$implicit;O(!(e.inlineData==null||e.inlineData.mimeType==null)&&e.inlineData.mimeType.startsWith("image/")?0:!(e.inlineData==null||e.inlineData.mimeType==null)&&e.inlineData.mimeType.startsWith("audio/")?1:!(e.inlineData==null||e.inlineData.mimeType==null)&&e.inlineData.mimeType.startsWith("video/")?2:3)}}function FLe(t,A){if(t&1&&(I(0,"div",34),RA(1,NLe,4,1,null,null,ja),h()),t&2){let e=p().$implicit;Q(),NA(e.mediaParts)}}function LLe(t,A){if(t&1){let e=ae();I(0,"tr")(1,"td"),v(2),h(),I(3,"td"),T(4,FLe,3,0,"div",34),I(5,"div",31),le(6,"app-custom-json-viewer",32),I(7,"button",33),U("click",function(){let n=L(e),o=n.$implicit,a=n.$index,r=p(3);return G(r.copyJsonToClipboard(o.cleanedFr,"pfr."+a))}),I(8,"mat-icon"),v(9),h()()()()()}if(t&2){let e=A.$implicit,i=A.$index,n=p(3);Q(2),ne(e.name),Q(2),O(e.hasMedia?4:-1),Q(2),H("json",e.cleanedFr)("showMarkdown",!0),Q(3),ne(n.copiedId==="pfr."+i?"check":"content_copy")}}function GLe(t,A){if(t&1&&(I(0,"table",29),RA(1,LLe,10,5,"tr",null,ja),h()),t&2){let e=p(2);Q(),NA(e.processedFunctionResponses())}}function KLe(t,A){if(t&1){let e=ae();I(0,"tr")(1,"td"),v(2),h(),I(3,"td")(4,"span",21)(5,"a",38),U("click",function(){let n=L(e).$implicit,o=p(3);return G(o.switchToSpan(n))}),v(6),h(),I(7,"button",23),U("click",function(){let n=L(e).$implicit,o=p(3);return G(o.copyToClipboard(n.span_id))}),I(8,"mat-icon"),v(9),h()()()()()}if(t&2){let e=A.$implicit,i=p(3);Q(2),ne(e.name),Q(3),H("matTooltip",e.span_id),Q(),ne(e.span_id),Q(3),ne(i.copiedId===e.span_id?"check":"content_copy")}}function ULe(t,A){if(t&1&&(I(0,"table",30),RA(1,KLe,10,4,"tr",null,hLe),h()),t&2){let e=p(2);Q(),NA(e.associatedSpans())}}function TLe(t,A){if(t&1){let e=ae();I(0,"div",16)(1,"table",19)(2,"tr")(3,"td"),v(4,"Event ID"),h(),I(5,"td",20)(6,"span",21)(7,"span",22),v(8),h(),I(9,"button",23),U("click",function(){let n;L(e);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.id))}),I(10,"mat-icon"),v(11),h()()()()(),I(12,"tr")(13,"td"),v(14,"Invocation ID"),h(),I(15,"td",20)(16,"span",21)(17,"span",22),v(18),h(),I(19,"button",23),U("click",function(){let n;L(e);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.invocationId))}),I(20,"mat-icon"),v(21),h()()()()(),I(22,"tr")(23,"td"),v(24,"Branch"),h(),I(25,"td")(26,"span",24)(27,"span",22),v(28),h(),I(29,"button",25),U("click",function(){let n;L(e);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.branch))}),I(30,"mat-icon"),v(31),h()()()()(),I(32,"tr")(33,"td"),v(34,"Timestamp"),h(),I(35,"td")(36,"span",24)(37,"span",22),v(38),h(),I(39,"button",25),U("click",function(){let n;L(e);let o=p();return G(o.copyToClipboard(o.formatTime((n=o.selectedEvent())==null?null:n.timestamp),"timestamp"))}),I(40,"mat-icon"),v(41),h()()()()(),I(42,"tr")(43,"td"),v(44,"Author"),h(),I(45,"td")(46,"span",24)(47,"span",22),v(48),h(),I(49,"button",25),U("click",function(){let n;L(e);let o=p();return G(o.copyToClipboard((n=o.selectedEvent())==null?null:n.author))}),I(50,"mat-icon"),v(51),h()()()()()(),T(52,wLe,18,5,"table",26),T(53,bLe,3,0,"table",27),T(54,SLe,3,0,"table",28),T(55,GLe,3,0,"table",29),T(56,ULe,3,0,"table",30),h()}if(t&2){let e,i,n,o,a,r,s,l,c,C,d,B,E,u,m,f,D=p();Q(7),H("matTooltip",((e=D.selectedEvent())==null?null:e.id)||""),Q(),ne((i=D.selectedEvent())==null?null:i.id),Q(3),ne(D.copiedId===((n=D.selectedEvent())==null?null:n.id)?"check":"content_copy"),Q(6),H("matTooltip",((o=D.selectedEvent())==null?null:o.invocationId)||""),Q(),ne(((a=D.selectedEvent())==null?null:a.invocationId)||"N/A"),Q(3),ne(D.copiedId===((r=D.selectedEvent())==null?null:r.invocationId)?"check":"content_copy"),Q(6),H("matTooltip",((s=D.selectedEvent())==null?null:s.branch)||""),Q(),ne(((l=D.selectedEvent())==null?null:l.branch)||"N/A"),Q(3),ne(D.copiedId===((c=D.selectedEvent())==null?null:c.branch)?"check":"content_copy"),Q(6),H("matTooltip",D.formatTime((C=D.selectedEvent())==null?null:C.timestamp)),Q(),ne(D.formatTime((d=D.selectedEvent())==null?null:d.timestamp)),Q(3),ne(D.copiedId==="timestamp"?"check":"content_copy"),Q(6),H("matTooltip",((B=D.selectedEvent())==null?null:B.author)||""),Q(),ne((E=D.selectedEvent())==null?null:E.author),Q(3),ne(D.copiedId===((u=D.selectedEvent())==null?null:u.author)?"check":"content_copy"),Q(),O((m=D.selectedEvent())!=null&&m.nodeInfo?52:-1),Q(),O((f=D.selectedEvent())!=null&&f.actions&&D.Object.keys(D.selectedEvent().actions).length>0?53:-1),Q(),O(D.functionCalls().length>0?54:-1),Q(),O(D.processedFunctionResponses().length>0?55:-1),Q(),O(D.associatedSpans().length>0?56:-1)}}function OLe(t,A){if(t&1&&(I(0,"div",42),Dt(1,"number"),I(2,"span",43),v(3),h(),I(4,"span",44),v(5),Dt(6,"number"),h()()),t&2){let e=A.$implicit;H("matTooltip",e.modality+": "+Ut(1,3,e.tokenCount)),Q(3),ne(e.modality),Q(2),ne(Ut(6,5,e.tokenCount))}}function JLe(t,A){if(t&1&&RA(0,OLe,7,7,"div",42,uLe),t&2){let e=p().$implicit,i=p(3);NA(i.selectedEvent().usageMetadata[e])}}function zLe(t,A){if(t&1&&(I(0,"span",22),Dt(1,"number"),v(2),Dt(3,"number"),h()),t&2){let e=p(2).$implicit,i=p(3);H("matTooltip",Ut(1,2,i.selectedEvent().usageMetadata[e])||""),Q(2),ne(Ut(3,4,i.selectedEvent().usageMetadata[e]))}}function YLe(t,A){if(t&1&&(I(0,"span",22),v(1),h()),t&2){let e,i=p(2).$implicit,n=p(3);H("matTooltip",((e=n.selectedEvent().usageMetadata[i])==null?null:e.toString())||""),Q(),ne(n.selectedEvent().usageMetadata[i])}}function HLe(t,A){if(t&1&&T(0,zLe,4,6,"span",22)(1,YLe,2,2,"span",22),t&2){let e=p().$implicit,i=p(3);O(i.isNumber(i.selectedEvent().usageMetadata[e])?0:1)}}function PLe(t,A){if(t&1&&(I(0,"tr")(1,"td"),v(2),h(),I(3,"td")(4,"span",24)(5,"span"),T(6,JLe,2,0)(7,HLe,2,1),h()()()()),t&2){let e=A.$implicit,i=p(3);Q(2),ne(e),Q(2),_e("numeric-cell",i.isNumericValue(e,i.selectedEvent().usageMetadata[e])),Q(2),O(e==="promptTokensDetails"||e==="promptTokenDetails"||e==="candidatesTokenDetails"||e==="candidatesTokensDetails"||e==="cacheTokensDetails"?6:7)}}function jLe(t,A){if(t&1&&(I(0,"table",39),RA(1,PLe,8,4,"tr",null,ri),h()),t&2){let e=p(2);Q(),NA(e.Object.keys(e.selectedEvent().usageMetadata))}}function VLe(t,A){t&1&&(I(0,"table",39)(1,"tr")(2,"td",45),v(3," Select an LLM response to see usage metadata. "),h()()())}function qLe(t,A){if(t&1&&(I(0,"div",16),T(1,jLe,3,0,"table",39)(2,VLe,4,0,"table",39),I(3,"table",40)(4,"tr")(5,"td"),v(6,"Total Prompt Tokens"),h(),I(7,"td",41),v(8),Dt(9,"number"),h()(),I(10,"tr")(11,"td"),v(12,"Total Candidates Tokens"),h(),I(13,"td",41),v(14),Dt(15,"number"),h()(),I(16,"tr")(17,"td"),v(18,"Total Tokens"),h(),I(19,"td",41),v(20),Dt(21,"number"),h()()()()),t&2){let e,i=p();Q(),O((e=i.selectedEvent())!=null&&e.usageMetadata&&i.Object.keys(i.selectedEvent().usageMetadata).length>0?1:2),Q(7),ne(Ut(9,4,i.sessionUsageMetadata()["Prompt Tokens"])),Q(6),ne(Ut(15,6,i.sessionUsageMetadata()["Candidates Tokens"])),Q(6),ne(Ut(21,8,i.sessionUsageMetadata()["Total Tokens"]))}}function ZLe(t,A){if(t&1){let e=ae();I(0,"div",17),le(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(e);let n=p();return G(n.copyJsonToClipboard(n.filteredSelectedEvent(),"raw"))}),I(3,"mat-icon"),v(4),h()()()}if(t&2){let e=p();Q(),H("json",e.filteredSelectedEvent())("showMarkdown",!0),Q(3),ne(e.copiedId==="raw"?"check":"content_copy")}}function WLe(t,A){if(t&1&&le(0,"app-custom-json-viewer",32),t&2){let e=p().$implicit;H("json",e.oldValue)("showMarkdown",!0)}}function XLe(t,A){if(t&1&&(I(0,"span"),v(1),h()),t&2){let e=p().$implicit;Q(),ne(e.oldValue)}}function $Le(t,A){if(t&1&&le(0,"app-custom-json-viewer",32),t&2){let e=p().$implicit;H("json",e.newValue)("showMarkdown",!0)}}function eGe(t,A){if(t&1&&(I(0,"span"),v(1),h()),t&2){let e=p().$implicit;Q(),ne(e.newValue)}}function AGe(t,A){if(t&1&&(I(0,"div",47)(1,"div",48),v(2),h(),I(3,"div",49)(4,"div",50)(5,"div",51),v(6,"Old Value"),h(),I(7,"div",52),T(8,WLe,1,2,"app-custom-json-viewer",32)(9,XLe,2,1,"span"),h()(),I(10,"div",50)(11,"div",51),v(12,"New Value"),h(),I(13,"div",52),T(14,$Le,1,2,"app-custom-json-viewer",32)(15,eGe,2,1,"span"),h()()()()),t&2){let e=A.$implicit,i=p(3);Q(2),ne(e.key),Q(6),O(i.isObject(e.oldValue)?8:9),Q(6),O(i.isObject(e.newValue)?14:15)}}function tGe(t,A){if(t&1&&RA(0,AGe,16,3,"div",47,gre),t&2){let e=p(2);NA(e.stateChanges())}}function iGe(t,A){t&1&&(I(0,"div",46),v(1," No state changes in this event. "),h())}function nGe(t,A){if(t&1&&(I(0,"div",16),T(1,tGe,2,0)(2,iGe,2,0,"div",46),h()),t&2){let e=p();Q(),O(e.stateChanges().length>0?1:2)}}function oGe(t,A){t&1&&(I(0,"div",53)(1,"mat-icon",66),v(2,"warning"),h(),I(3,"span"),v(4,"The loaded session file was for a different app. The graph may not be accurate."),h()())}function aGe(t,A){if(t&1){let e=ae();I(0,"button",72),U("click",function(){let n=L(e).$implicit,o=p(3);return G(o.onInvocationSelected(n.key))}),I(1,"mat-icon",73),v(2,"check"),h(),v(3),h()}if(t&2){let e,i=A.$implicit,n=p(3);H("matTooltip",i.key),Q(),vt("visibility",((e=n.selectedEvent())==null?null:e.invocationId)===i.key?"visible":"hidden"),Q(2),pA(" ",i.value," ")}}function rGe(t,A){if(t&1&&(I(0,"button",67)(1,"div",68)(2,"span",69),v(3),h(),I(4,"mat-icon",70),v(5,"arrow_drop_down"),h()()(),I(6,"mat-menu",null,3),RA(8,aGe,4,4,"button",71,gre),h()),t&2){let e,i=Ei(7),n=p(2);H("matMenuTriggerFor",i),Q(2),H("matTooltip",((e=n.selectedEvent())==null?null:e.invocationId)||""),Q(),pA(" ",n.invocationDisplayMap().get(n.selectedEvent().invocationId)||n.selectedEvent().invocationId," "),Q(5),NA(n.invocationDisplayEntries())}}function sGe(t,A){if(t&1&&(I(0,"span",57),v(1),h()),t&2){let e,i,n=p(2);H("matTooltip",((e=n.selectedEvent())==null?null:e.invocationId)||""),Q(),ne((i=n.selectedEvent())!=null&&i.invocationId?n.invocationDisplayMap().get(n.selectedEvent().invocationId)||n.selectedEvent().invocationId:"N/A")}}function lGe(t,A){t&1&&(I(0,"mat-icon",75),v(1,"chevron_right"),h())}function cGe(t,A){t&1&&(I(0,"mat-icon",75),v(1,"chevron_right"),h())}function gGe(t,A){if(t&1&&(T(0,cGe,2,0,"mat-icon",75),I(1,"button",74),v(2),h()),t&2){let e=A.$implicit,i=A.$index,n=p(3);O(i>0?0:-1),Q(),_e("active",i===n.breadcrumbs().length-1),Q(),pA(" ",e," ")}}function CGe(t,A){if(t&1&&(I(0,"div",58)(1,"button",74),v(2),h(),T(3,lGe,2,0,"mat-icon",75),RA(4,gGe,3,4,null,null,ja),h()),t&2){let e=p(2);Q(2),ne(e.appName()),Q(),O(e.breadcrumbs().length>0?3:-1),Q(),NA(e.breadcrumbs())}}function dGe(t,A){if(t&1){let e=ae();I(0,"button",76),U("click",function(){L(e);let n=p(2);return G(n.showAgentStructureGraph.emit(!0))}),I(1,"mat-icon"),v(2,"fullscreen"),h()()}}function IGe(t,A){t&1&&(I(0,"div",61),v(1," Graph is not available for this agent. "),h())}function BGe(t,A){t&1&&(I(0,"div",62),le(1,"mat-progress-spinner",77),h())}function hGe(t,A){if(t&1&&le(0,"div",63),t&2){let e=p(2);H("innerHtml",e.renderedEventGraph(),Xg)}}function uGe(t,A){if(t&1){let e=ae();I(0,"button",78),U("click",function(){let n=L(e).$implicit,o=p(2);return G(o.handleMenuSelection(n))}),I(1,"span"),v(2),Dt(3,"date"),h()()}if(t&2){let e=A.$implicit;Q(2),Va("Run ",e.runIndex," (",iC(3,2,e.timestamp,"mediumTime"),")")}}function EGe(t,A){if(t&1&&(I(0,"div",18),T(1,oGe,5,0,"div",53),I(2,"div",54)(3,"div",55)(4,"span",56),v(5,"Invocation:"),h(),T(6,rGe,10,3)(7,sGe,2,2,"span",57),h()(),T(8,CGe,6,2,"div",58),I(9,"div",59,0),T(11,dGe,3,0,"button",60),T(12,IGe,2,0,"div",61)(13,BGe,2,0,"div",62)(14,hGe,1,1,"div",63),h(),le(15,"div",64,1),I(17,"mat-menu",null,2),RA(19,uGe,4,5,"button",65,ELe),h()()),t&2){let e,i=Ei(18),n=p();Q(),O(n.isViewOnlyAppNameMismatch()?1:-1),Q(5),O(n.invocationDisplayMap().size>0&&((e=n.selectedEvent())!=null&&e.invocationId)?6:7),Q(2),O(n.hasSubWorkflows()&&(n.breadcrumbs().length>0||n.appName())?8:-1),Q(3),O(n.graphsAvailable()?11:-1),Q(),O(n.graphsAvailable()?n.renderedEventGraph()?14:13:12),Q(3),vt("left",n.menuPos.x+"px")("top",n.menuPos.y+"px"),H("matMenuTriggerFor",i),Q(4),NA(n.menuEvents)}}function QGe(t,A){t&1&&(I(0,"div",62),le(1,"mat-progress-spinner",77),h())}function pGe(t,A){t&1&&(I(0,"div",61),v(1,"Select an LLM response to see request details."),h())}function mGe(t,A){if(t&1){let e=ae();I(0,"div",17),le(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(e);let n=p(2);return G(n.copyJsonToClipboard(n.llmRequest(),"request"))}),I(3,"mat-icon"),v(4),h()()()}if(t&2){let e=p(2);Q(),H("json",e.llmRequest())("showMarkdown",!0),Q(3),ne(e.copiedId==="request"?"check":"content_copy")}}function fGe(t,A){if(t&1&&(T(0,QGe,2,0,"div",62),Dt(1,"async"),oI(2,pGe,2,0,"div",61)(3,mGe,5,3,"div",17)),t&2){let e=p();O(Ut(1,1,e.uiStateService.isEventRequestResponseLoading())===!0?0:e.llmRequest()?3:2)}}function wGe(t,A){t&1&&(I(0,"div",62),le(1,"mat-progress-spinner",77),h())}function yGe(t,A){t&1&&(I(0,"div",61),v(1,"Select an LLM response to see response details."),h())}function vGe(t,A){if(t&1){let e=ae();I(0,"div",17),le(1,"app-custom-json-viewer",32),I(2,"button",33),U("click",function(){L(e);let n=p(2);return G(n.copyJsonToClipboard(n.llmResponse(),"response"))}),I(3,"mat-icon"),v(4),h()()()}if(t&2){let e=p(2);Q(),H("json",e.llmResponse())("showMarkdown",!0),Q(3),ne(e.copiedId==="response"?"check":"content_copy")}}function DGe(t,A){if(t&1&&(T(0,wGe,2,0,"div",62),Dt(1,"async"),oI(2,yGe,2,0,"div",61)(3,vGe,5,3,"div",17)),t&2){let e=p();O(Ut(1,1,e.uiStateService.isEventRequestResponseLoading())===!0?0:e.llmResponse()?3:2)}}var dD=class t{eventDataSize=MA.required();eventDataMap=MA(new Map);selectedEventIndex=MA();selectedEvent=MA.required();filteredSelectedEvent=MA();renderedEventGraph=MA();rawSvgString=MA(null);llmRequest=MA();llmResponse=MA();traceData=MA([]);appName=MA("");selectedEventGraphPath=MA("");hasSubWorkflows=MA(!1);graphsAvailable=MA(!0);invocationDisplayMap=MA(new Map);forceGraphTab=MA(!1);isViewOnlySession=MA(!1);isViewOnlyAppNameMismatch=MA(!1);invocationDisplayEntries=DA(()=>Array.from(this.invocationDisplayMap().entries()).map(([A,e])=>({key:A,value:e})));breadcrumbs=DA(()=>{let A=this.selectedEventGraphPath();return A?A.split("/").filter(e=>e):[]});functionCalls=DA(()=>(this.selectedEvent()?.content?.parts||[]).filter(e=>!!e.functionCall).map(e=>e.functionCall));functionResponses=DA(()=>(this.selectedEvent()?.content?.parts||[]).filter(e=>!!e.functionResponse).map(e=>e.functionResponse));processedFunctionResponses=DA(()=>this.functionResponses().map(e=>{if(!e)return null;if(e&&Array.isArray(e.parts)){let n=e.parts.filter(a=>!!a.inlineData).map(a=>a.inlineData&&a.inlineData.data?Ye(Y({},a),{inlineData:Ye(Y({},a.inlineData),{data:a.inlineData.data.replace(/-/g,"+").replace(/_/g,"/")})}):a),o=Y({},e);return delete o.parts,{name:e.name,cleanedFr:o,mediaParts:n,hasMedia:n.length>0}}return{name:e.name,cleanedFr:e,mediaParts:[],hasMedia:!1}}).filter(e=>e!==null));page=_i();closeSelectedEvent=_i();openImageDialog=_i();switchToTraceView=_i();showAgentStructureGraph=_i();drillDownNodePath=_i();selectEventById=_i();jumpToInvocation=_i();onInvocationSelected(A){this.jumpToInvocation.emit(A)}eventMenuTrigger;graphContainer;menuEvents=[];menuPos={x:0,y:0};uiStateService=w(mc);traceService=w(Qc);i18n=w(IE);isEventRequestResponseLoadingSignal=Ir(this.uiStateService.isEventRequestResponseLoading(),{initialValue:!1});associatedSpans=DA(()=>{let A=this.selectedEvent();if(!A||!A.id)return[];let e=this.traceData();if(!e)return[];let i=o=>{let a=[];for(let r of o)a.push(r),r.children&&(a=a.concat(i(r.children)));return a};return i(e).filter(o=>o.attrEventId===A.id)});sessionUsageMetadata=DA(()=>{let A=Array.from(this.eventDataMap().values()),e=0,i=0,n=0;return A.forEach(o=>{let a=o.usageMetadata;if(a){let r=a.promptTokenCount??a.promptTokens??0,s=a.candidatesTokenCount??a.candidatesTokens??0,l=a.totalTokenCount??a.totalTokens??0;e+=Number(r),i+=Number(s),n+=Number(l)}}),{"Prompt Tokens":e,"Candidates Tokens":i,"Total Tokens":n}});_selectedDetailTab="event";get selectedDetailTab(){return this._selectedDetailTab}set selectedDetailTab(A){this._selectedDetailTab=A,window.localStorage.setItem("adk-event-tab-selected-tab",A),A==="graph"&&setTimeout(()=>{this.graphContainer?.nativeElement&&Eh(this.graphContainer.nativeElement,(e,i)=>{this.handleNodeClick(e,i)})},50)}copiedId=null;copyToClipboard(A,e){A&&navigator.clipboard.writeText(A).then(()=>{this.copiedId=e||A,setTimeout(()=>this.copiedId=null,2e3)})}copyJsonToClipboard(A,e){if(!A)return;let i=JSON.stringify(A,null,2);navigator.clipboard.writeText(i).then(()=>{this.copiedId=e,setTimeout(()=>this.copiedId=null,2e3)})}switchToSpan(A){this.switchToTraceView.emit(),this.traceService.selectedRow(A)}stateChanges=DA(()=>{let A=this.selectedEvent();if(!A)return[];let e=Array.from(this.eventDataMap().values());e.sort((o,a)=>(o.timestamp||0)-(a.timestamp||0));let i={},n=[];for(let o of e){let a=o.actions?.stateDelta;if(o.id===A.id){if(a)for(let r of Object.keys(a))r!=="__llm_request_key__"&&n.push({key:r,oldValue:i[r]!==void 0?i[r]:"N/A",newValue:a[r]});break}if(a)for(let r of Object.keys(a))r!=="__llm_request_key__"&&(i[r]=a[r])}return n});constructor(){let A=window.localStorage.getItem("adk-event-tab-selected-tab");A&&["event","raw","request","response","graph","metadata","state"].includes(A)&&(this._selectedDetailTab=A),Ln(()=>{let i=this.renderedEventGraph(),n=this._selectedDetailTab;i&&n==="graph"&&setTimeout(()=>{this.graphContainer?.nativeElement&&Eh(this.graphContainer.nativeElement,(o,a)=>{this.handleNodeClick(o,a)})},50)});let e=!1;Ln(()=>{let i=this.forceGraphTab(),n=this.selectedEvent();i&&!e&&(this.selectedDetailTab=this.graphsAvailable()?"graph":"event"),e=i})}formatTime(A){if(!A)return"N/A";let e=A<1e10?A*1e3:A;return new Date(e).toLocaleString()}isNumber(A){return typeof A=="number"}isNumericValue(A,e){return typeof e=="number"?!0:["promptTokensDetails","promptTokenDetails","candidatesTokenDetails","candidatesTokensDetails","cacheTokensDetails"].includes(A)}isObject(A){return A!==null&&typeof A=="object"}handleNodeClick(A,e){let i=Array.from(this.eventDataMap().values()),o=this.selectedEvent()?.invocationId;o&&(i=i.filter(l=>l.invocationId===o));let a=[],r=[],s="";i.forEach(l=>{let c=l.nodeInfo?.path;if(l.author==="user"&&(c="__START__"),!c)return;let C=c;c!=="__START__"&&(C=c.split("/").map(u=>u.split("@")[0]).join("/"));let d=C.split("/"),B=d[d.length-1],E="";if(d.length>=2&&d[d.length-1]==="call_llm"&&d[d.length-2]===l.author?(B=d[d.length-2],E=d.slice(1,-2).join("/")):E=d.slice(1,-1).join("/"),E===this.selectedEventGraphPath()){let u=c.split("/"),m=u[u.length-1],f=A.includes("@")?m:B;f!==s&&(s===A&&r.length>0&&a.push(r),s=f,r=[]),f===A&&r.push(l)}}),s===A&&r.length>0&&a.push(r),a.length!==0&&(a.length===1?this.selectEventById.emit(a[0][0].id):(this.menuEvents=a.map((l,c)=>({id:l[0].id,runIndex:c+1,timestamp:l[0].timestamp})),e&&(this.menuPos={x:e.clientX,y:e.clientY}),this.eventMenuTrigger.openMenu()))}handleMenuSelection(A){this.selectEventById.emit(A.id)}Object=Object;static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-event-tab"]],viewQuery:function(e,i){if(e&1&&$t(ILe,5)(BLe,5),e&2){let n;cA(n=gA())&&(i.eventMenuTrigger=n.first),cA(n=gA())&&(i.graphContainer=n.first)}},inputs:{eventDataSize:[1,"eventDataSize"],eventDataMap:[1,"eventDataMap"],selectedEventIndex:[1,"selectedEventIndex"],selectedEvent:[1,"selectedEvent"],filteredSelectedEvent:[1,"filteredSelectedEvent"],renderedEventGraph:[1,"renderedEventGraph"],rawSvgString:[1,"rawSvgString"],llmRequest:[1,"llmRequest"],llmResponse:[1,"llmResponse"],traceData:[1,"traceData"],appName:[1,"appName"],selectedEventGraphPath:[1,"selectedEventGraphPath"],hasSubWorkflows:[1,"hasSubWorkflows"],graphsAvailable:[1,"graphsAvailable"],invocationDisplayMap:[1,"invocationDisplayMap"],forceGraphTab:[1,"forceGraphTab"],isViewOnlySession:[1,"isViewOnlySession"],isViewOnlyAppNameMismatch:[1,"isViewOnlyAppNameMismatch"]},outputs:{page:"page",closeSelectedEvent:"closeSelectedEvent",openImageDialog:"openImageDialog",switchToTraceView:"switchToTraceView",showAgentStructureGraph:"showAgentStructureGraph",drillDownNodePath:"drillDownNodePath",selectEventById:"selectEventById",jumpToInvocation:"jumpToInvocation"},decls:35,vars:32,consts:[["graphContainer",""],["eventMenuTrigger","matMenuTrigger"],["eventMenu","matMenu"],["invocationSelectorMenu","matMenu"],[1,"event-details-container"],[1,"event-details-header"],["hidePageSize","",1,"event-paginator",3,"page","length","pageSize","pageIndex"],["mat-icon-button","",3,"click","matTooltip"],[1,"event-details-content"],[1,"vertical-tabs-sidebar"],["mat-icon-button","","matTooltipPosition","right",3,"click","matTooltip"],["mat-icon-button","","matTooltipPosition","right",3,"active","matTooltip"],["mat-icon-button","","matTooltip","Usage Metadata","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","State Changes","matTooltipPosition","right",3,"click"],["mat-icon-button","","matTooltip","Raw JSON","matTooltipPosition","right",3,"click"],[1,"vertical-tabs-content"],[1,"info-tables-container"],[1,"json-viewer-container","json-viewer-wrapper"],[1,"event-graph-wrapper"],["app-info-table",""],[1,"id-text"],[1,"id-cell"],[3,"matTooltip"],["mat-icon-button","","matTooltip","Copy",1,"copy-id-button",3,"click"],[1,"value-cell"],["mat-icon-button","","matTooltip","Copy",1,"copy-value-button",3,"click"],["app-info-table","","title","Node Info"],["app-info-table","","title","Actions"],["app-info-table","","title","Function Calls"],["app-info-table","","title","Function Responses"],["app-info-table","","title","Associated Spans"],[1,"json-viewer-wrapper"],[3,"json","showMarkdown"],["mat-icon-button","","matTooltip","Copy JSON",1,"floating-copy-button",3,"click"],[1,"media-container"],[1,"generated-image-container"],["alt","image",3,"src"],["controls","",3,"src"],["href","javascript:void(0)",1,"span-link","id-text",3,"click","matTooltip"],["app-info-table","","title","Usage Summary for Event"],["app-info-table","","title","Usage Summary for Session"],[1,"numeric-cell"],[1,"detail-row",3,"matTooltip"],[1,"modality-label"],[1,"modality-value"],["colspan","2",2,"text-align","center","padding","20px","color","var(--mat-sys-on-surface-variant)"],[1,"empty-state"],[1,"state-change-card"],[1,"state-change-header"],[1,"state-change-values"],[1,"state-value-block"],[1,"state-value-label"],[1,"state-value-content"],[1,"warning-banner",2,"background-color","#fff3cd","color","#856404","padding","8px","margin-bottom","8px","border-radius","4px","display","flex","align-items","center"],[1,"graph-header",2,"justify-content","space-between"],[2,"display","flex","align-items","center","min-width","0","flex","1","width","100%"],[2,"white-space","nowrap","flex-shrink","0"],[2,"margin-left","8px","font-weight","normal",3,"matTooltip"],[1,"breadcrumb-container"],[1,"event-graph-container"],["mat-icon-button","","matTooltip","Full Screen",1,"fullscreen-graph-button"],[1,"request-response-empty-state"],[1,"request-response-loading-spinner-container"],[1,"svg-graph-wrapper",3,"innerHtml"],[2,"visibility","hidden","position","fixed",3,"matMenuTriggerFor"],["mat-menu-item",""],[2,"margin-right","8px"],["mat-button","",1,"invocation-selector-button",2,"margin-left","8px","padding","0 8px","min-width","0","flex","1","height","24px","line-height","24px","width","100%",3,"matMenuTriggerFor"],[2,"display","flex","align-items","center","width","100%","min-width","0","justify-content","space-between"],[2,"font-weight","normal","overflow","hidden","text-overflow","ellipsis","white-space","nowrap","flex","1","text-align","left",3,"matTooltip"],[2,"margin-left","4px","font-size","18px","width","18px","height","18px","flex-shrink","0"],["mat-menu-item","","matTooltipPosition","right",3,"matTooltip"],["mat-menu-item","","matTooltipPosition","right",3,"click","matTooltip"],[2,"font-size","16px","width","16px","height","16px","margin-right","8px","color","var(--mat-sys-primary)"],["disabled","",1,"breadcrumb-item"],[1,"breadcrumb-separator"],["mat-icon-button","","matTooltip","Full Screen",1,"fullscreen-graph-button",3,"click"],["mode","indeterminate","diameter","50"],["mat-menu-item","",3,"click"]],template:function(e,i){e&1&&(I(0,"div",4)(1,"div",5)(2,"mat-paginator",6),U("page",function(o){return i.page.emit(o)}),h(),I(3,"button",7),U("click",function(){return i.closeSelectedEvent.emit()}),I(4,"mat-icon"),v(5,"remove_selection"),h()()(),I(6,"div",8)(7,"div",9)(8,"button",10),U("click",function(){return i.selectedDetailTab="event"}),I(9,"mat-icon"),v(10,"info"),h()(),T(11,QLe,3,4,"button",11),I(12,"button",10),U("click",function(){return i.selectedDetailTab="request"}),I(13,"mat-icon"),v(14,"input"),h()(),I(15,"button",10),U("click",function(){return i.selectedDetailTab="response"}),I(16,"mat-icon"),v(17,"output"),h()(),I(18,"button",12),U("click",function(){return i.selectedDetailTab="metadata"}),I(19,"mat-icon"),v(20,"analytics"),h()(),I(21,"button",13),U("click",function(){return i.selectedDetailTab="state"}),I(22,"mat-icon"),v(23,"published_with_changes"),h()(),I(24,"button",14),U("click",function(){return i.selectedDetailTab="raw"}),I(25,"mat-icon"),v(26,"data_object"),h()()(),I(27,"div",15),T(28,TLe,57,20,"div",16),T(29,qLe,22,10,"div",16),T(30,ZLe,5,3,"div",17),T(31,nGe,3,1,"div",16),T(32,EGe,21,10,"div",18),T(33,fGe,4,3),T(34,DGe,4,3),h()()()),e&2&&(Q(2),H("length",i.eventDataSize())("pageSize",1)("pageIndex",i.selectedEventIndex()),aA("aria-label",i.i18n.selectEventAriaLabel),Q(),H("matTooltip",dd(i.i18n.clearSelectionButtonLabel)),Q(5),_e("active",i.selectedDetailTab==="event"),H("matTooltip",dd(i.i18n.infoTabLabel)),Q(3),O(i.graphsAvailable()?11:-1),Q(),_e("active",i.selectedDetailTab==="request"),H("matTooltip",dd(i.i18n.requestDetailsTabLabel)),Q(3),_e("active",i.selectedDetailTab==="response"),H("matTooltip",dd(i.i18n.responseDetailsTabLabel)),Q(3),_e("active",i.selectedDetailTab==="metadata"),Q(3),_e("active",i.selectedDetailTab==="state"),Q(3),_e("active",i.selectedDetailTab==="raw"),Q(4),O(i.selectedDetailTab==="event"?28:-1),Q(),O(i.selectedDetailTab==="metadata"?29:-1),Q(),O(i.selectedDetailTab==="raw"?30:-1),Q(),O(i.selectedDetailTab==="state"?31:-1),Q(),O(i.selectedDetailTab==="graph"?32:-1),Q(),O(i.selectedDetailTab==="request"?33:-1),Q(),O(i.selectedDetailTab==="response"?34:-1))},dependencies:[Wi,xi,Di,Vt,e8,ws,ln,kd,fs,zs,uc,_l,O2,hs,GJ,cB],styles:["[_nghost-%COMP%]{display:block;height:100%}.json-viewer-container[_ngcontent-%COMP%]{margin:10px}.event-paginator[_ngcontent-%COMP%]{margin-right:auto;display:flex;justify-content:center;background-color:transparent}.event-paginator[_ngcontent-%COMP%] .mat-mdc-paginator-range-label{order:2;margin:0 0 0 8px}.event-details-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%}.event-details-content[_ngcontent-%COMP%]{display:flex;flex:1;overflow:hidden}.vertical-tabs-sidebar[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:48px;border-right:1px solid var(--mat-sys-outline-variant);padding-top:8px;align-items:center;gap:8px}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .vertical-tabs-sidebar[_ngcontent-%COMP%] button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:6px!important}.vertical-tabs-sidebar[_ngcontent-%COMP%] button.active[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.vertical-tabs-content[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;overflow:hidden;overflow-y:auto}.event-details-header[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;border-bottom:1px solid var(--mat-sys-outline-variant);height:48px;flex-shrink:0}.empty-state[_ngcontent-%COMP%]{padding:16px;text-align:center;color:var(--mat-sys-on-surface-variant);font-style:italic}.details-content[_ngcontent-%COMP%]{color:var(--side-panel-details-content-color);font-size:14px}.event-graph-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;width:100%}.breadcrumb-container[_ngcontent-%COMP%]{display:flex;align-items:center;font-size:13px;color:var(--mat-sys-on-surface-variant);padding:8px 12px}.breadcrumb-container[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:500;margin-right:8px;color:var(--mat-sys-on-surface)}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]{background:none;border:none;color:var(--mat-sys-primary);font-size:13px;padding:2px 4px}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-item.active[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface)}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-item[_ngcontent-%COMP%]:disabled{color:var(--mat-sys-on-surface);font-weight:500}.breadcrumb-container[_ngcontent-%COMP%] .breadcrumb-separator[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:var(--mat-sys-on-surface-variant);margin:0 4px}.graph-header[_ngcontent-%COMP%]{display:flex;align-items:center;font-size:13px;color:var(--mat-sys-on-surface-variant);background-color:var(--mat-sys-surface-container-lowest);padding:8px 16px;border-bottom:1px solid var(--mat-sys-outline-variant)}.graph-header[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:500;margin-right:8px;color:var(--mat-sys-on-surface)}.event-graph-container[_ngcontent-%COMP%]{flex:1;overflow:hidden;padding:16px;position:relative}.fullscreen-graph-button[_ngcontent-%COMP%]{position:absolute;top:4px;right:4px;z-index:10;width:48px!important;height:48px!important;padding:0!important;display:flex!important;justify-content:center!important;align-items:center!important}.fullscreen-graph-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:28px!important;width:28px!important;height:28px!important;line-height:28px!important;margin:0!important;padding:0!important}.event-graph-container[_ngcontent-%COMP%] .svg-graph-wrapper[_ngcontent-%COMP%]{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.event-graph-container[_ngcontent-%COMP%] svg{max-width:100%;max-height:100%;width:auto;height:auto;display:block}.event-graph-container[_ngcontent-%COMP%] svg>g.graph>polygon:first-child{fill:transparent!important}.request-response-loading-spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;margin-top:2em}.request-response-empty-state[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;margin-top:2em;font-style:italic}.id-text[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:12px}.id-cell[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;overflow:hidden}.id-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child, .value-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.id-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .id-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-id-button[_ngcontent-%COMP%], .value-cell[_ngcontent-%COMP%]:hover .copy-value-button[_ngcontent-%COMP%]{opacity:1}.numeric-cell[_ngcontent-%COMP%]{text-align:right!important}.value-cell.numeric-cell[_ngcontent-%COMP%]{justify-content:flex-end}.value-cell.numeric-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child{text-align:right;font-family:Google Sans Mono,monospace;font-size:13px;font-weight:500;color:var(--mat-sys-on-surface)}.value-cell.numeric-cell[_ngcontent-%COMP%] > [_ngcontent-%COMP%]:first-child span[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace}td.numeric-cell[_ngcontent-%COMP%]{text-align:right!important;font-family:Google Sans Mono,monospace!important;font-size:13px!important;font-weight:500!important;color:var(--mat-sys-on-surface)!important}.detail-row[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-bottom:4px;font-size:12px;transition:transform .15s ease-in-out}.detail-row[_ngcontent-%COMP%]:hover{transform:translate(-2px)}.detail-row[_ngcontent-%COMP%]:last-child{margin-bottom:0}.detail-row[_ngcontent-%COMP%] .modality-label[_ngcontent-%COMP%]{font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:2px 6px;border-radius:4px;color:var(--mat-sys-primary);background-color:var(--mat-sys-primary-container);opacity:.85}.detail-row[_ngcontent-%COMP%] .modality-value[_ngcontent-%COMP%]{font-weight:500;font-family:Google Sans Mono,monospace;color:var(--mat-sys-on-surface)}.copy-id-button[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%]{width:28px!important;height:28px!important;padding:0!important;line-height:28px!important;flex-shrink:0;margin:-4px 0!important;opacity:0;transition:opacity .2s ease-in-out;border-radius:4px!important;overflow:hidden!important}.copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-id-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .copy-value-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.copy-id-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%], .copy-value-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.info-tables-container[_ngcontent-%COMP%]{padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.invocation-selector-button[_ngcontent-%COMP%] .mdc-button__label{width:100%;flex:1;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between}.media-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;margin-top:8px;margin-bottom:12px}.generated-image-container[_ngcontent-%COMP%]{max-width:100%;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;border:1px solid var(--mat-sys-outline-variant)}.generated-image-container[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:auto;display:block}audio[_ngcontent-%COMP%], video[_ngcontent-%COMP%]{max-width:100%;border-radius:4px}.json-viewer-wrapper[_ngcontent-%COMP%]{position:relative}.json-viewer-wrapper[_ngcontent-%COMP%]:hover .floating-copy-button[_ngcontent-%COMP%]{opacity:1}.floating-copy-button[_ngcontent-%COMP%]{position:absolute;top:4px;right:4px;z-index:10;opacity:0;transition:opacity .2s ease-in-out;background-color:var(--mat-sys-surface-container-high)!important;border-radius:4px!important;overflow:hidden!important;width:28px!important;height:28px!important;line-height:28px!important;padding:0!important}.floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-ripple, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-button-persistent-ripple:before, .floating-copy-button[_ngcontent-%COMP%] .mat-mdc-focus-indicator{border-radius:4px!important}.floating-copy-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}.floating-copy-button[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-secondary-container)!important;color:var(--mat-sys-on-secondary-container)!important}.state-change-card[_ngcontent-%COMP%]{border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}.state-change-header[_ngcontent-%COMP%]{font-weight:600;font-size:14px;color:var(--mat-sys-primary);padding-bottom:4px}.state-change-values[_ngcontent-%COMP%]{display:flex;gap:12px;flex-wrap:wrap}.state-value-block[_ngcontent-%COMP%]{flex:1;min-width:200px;background-color:var(--mat-sys-surface-container-highest);border-radius:6px;padding:8px;display:flex;flex-direction:column;gap:4px}.state-value-label[_ngcontent-%COMP%]{font-size:12px;font-weight:500;color:var(--mat-sys-on-surface-variant)}.state-value-content[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:13px;color:var(--mat-sys-on-surface);word-break:break-all}"],changeDetection:0})};var bGe=["evalTabContainer"];function MGe(t,A){}function SGe(t,A){t&1&&(I(0,"div",1),le(1,"mat-progress-spinner",4),h())}function kGe(t,A){if(t&1&&(I(0,"span",11),v(1),h()),t&2){let e=p(2);Q(),ne(e.i18n.infoTabLabel)}}function _Ge(t,A){if(t&1){let e=ae();I(0,"app-trace-tab",12),U("switchToEvent",function(n){L(e);let o=p(2);return G(o.switchToEvent.emit(n))}),h()}if(t&2){let e=p(2);H("traceData",e.traceData())}}function xGe(t,A){if(t&1){let e=ae();I(0,"app-event-tab",13),U("page",function(n){L(e);let o=p(2);return G(o.page.emit(n))})("closeSelectedEvent",function(){L(e);let n=p(2);return G(n.closeSelectedEvent.emit())})("openImageDialog",function(n){L(e);let o=p(2);return G(o.openImageDialog.emit(n))})("switchToTraceView",function(){L(e);let n=p(2);return G(n.switchToTraceView.emit())})("showAgentStructureGraph",function(n){L(e);let o=p(2);return G(o.showAgentStructureGraph.emit(n))})("drillDownNodePath",function(n){L(e);let o=p(2);return G(o.drillDownNodePath.emit(n))})("selectEventById",function(n){L(e);let o=p(2);return G(o.selectEventById.emit(n))})("jumpToInvocation",function(n){L(e);let o=p(2);return G(o.jumpToInvocation.emit(n))}),h()}if(t&2){let e=p(2);H("eventDataSize",e.eventData().size)("eventDataMap",e.eventData())("selectedEventIndex",e.selectedEventIndex())("selectedEvent",e.selectedEvent())("traceData",e.traceData())("filteredSelectedEvent",e.filteredSelectedEvent())("renderedEventGraph",e.renderedEventGraph())("rawSvgString",e.rawSvgString())("appName",e.appName())("selectedEventGraphPath",e.selectedEventGraphPath())("llmRequest",e.llmRequest())("llmResponse",e.llmResponse())("hasSubWorkflows",e.hasSubWorkflows())("graphsAvailable",e.graphsAvailable())("invocationDisplayMap",e.invocationDisplayMap())("forceGraphTab",e.forceGraphTab())("isViewOnlySession",e.isViewOnlySession())("isViewOnlyAppNameMismatch",e.isViewOnlyAppNameMismatch())}}function RGe(t,A){t&1&&(I(0,"div",9),v(1,"Select an event or trace span to view details"),h())}function NGe(t,A){if(t&1&&(I(0,"span",11),v(1),h()),t&2){let e=p(2);Q(),ne(e.i18n.stateTabLabel)}}function FGe(t,A){if(t&1&&(I(0,"span",11),v(1),h()),t&2){let e=p(3);Q(),ne(e.i18n.artifactsTabLabel)}}function LGe(t,A){if(t&1&&(I(0,"mat-tab"),Nt(1,FGe,2,1,"ng-template",6),le(2,"app-artifact-tab",14),h()),t&2){let e=p(2);Q(2),H("artifacts",e.artifacts())}}function GGe(t,A){if(t&1&&(I(0,"span",11),v(1),h()),t&2){let e=p(3);Q(),ne(e.i18n.testsTabLabel)}}function KGe(t,A){if(t&1){let e=ae();I(0,"mat-tab"),Nt(1,GGe,2,1,"ng-template",6),I(2,"app-tests-tab",15),U("testSelected",function(n){L(e);let o=p(2);return G(o.testSelected.emit(n))}),h()()}if(t&2){let e=p(2);Q(2),H("appName",e.appName())("sessionId",e.sessionId())("userId",e.userId())("isViewOnlySession",e.isViewOnlySession())}}function UGe(t,A){if(t&1&&(I(0,"span",11),v(1),h()),t&2){let e=p(3);Q(),ne(e.i18n.evalTabLabel)}}function TGe(t,A){t&1&&(I(0,"mat-tab"),Nt(1,UGe,2,1,"ng-template",6),Bn(2,null,0),h())}function OGe(t,A){if(t&1){let e=ae();I(0,"div",2)(1,"mat-tab-group",5),Fi("selectedIndexChange",function(n){L(e);let o=p();return vi(o.selectedIndex,n)||(o.selectedIndex=n),G(n)}),U("selectedTabChange",function(n){L(e);let o=p();return G(o.onTabChange(n))}),I(2,"mat-tab"),Nt(3,kGe,2,1,"ng-template",6),T(4,_Ge,1,1,"app-trace-tab",7)(5,xGe,1,18,"app-event-tab",8)(6,RGe,2,0,"div",9),h(),I(7,"mat-tab"),Nt(8,NGe,2,1,"ng-template",6),le(9,"app-state-tab",10),h(),T(10,LGe,3,1,"mat-tab"),Dt(11,"async"),T(12,KGe,3,4,"mat-tab"),Dt(13,"async"),T(14,TGe,4,0,"mat-tab"),Dt(15,"async"),h()()}if(t&2){let e=p(),i=Ti(2);H("hidden",i||!e.showSidePanel()),Q(),Ni("selectedIndex",e.selectedIndex),Q(3),O(e.selectedSpan()?4:e.selectedEvent()?5:6),Q(5),H("sessionState",e.currentSessionState()),Q(),O(Ut(11,7,e.isArtifactsTabEnabledObs)?10:-1),Q(2),O(Ut(13,9,e.isTestsEnabledObs)?12:-1),Q(2),O(Ut(15,11,e.isEvalEnabledObs)?14:-1)}}var BE=class t{Object=Object;appName=MA("");userId=MA("");sessionId=MA("");traceData=MA([]);eventData=MA(new Map);currentSessionState=MA();artifacts=MA([]);selectedEvent=MA();selectedEventIndex=MA();renderedEventGraph=MA();rawSvgString=MA(null);selectedEventGraphPath=MA("");llmRequest=MA();llmResponse=MA();showSidePanel=MA(!1);isApplicationSelectorEnabledObs=MA(sA(!1));isBuilderMode=MA(!1);disableBuilderIcon=MA(!1);hasSubWorkflows=MA(!1);graphsAvailable=MA(!0);invocationDisplayMap=MA(new Map);forceGraphTab=MA(!1);isViewOnlySession=MA(!1);isViewOnlyAppNameMismatch=MA(!1);closePanel=_i();tabChange=_i();sessionSelected=_i();sessionReloaded=_i();evalCaseSelected=_i();editEvalCaseRequested=_i();testSelected=_i();evalSetIdSelected=_i();returnToSession=_i();evalNotInstalled=_i();page=_i();switchToEvent=_i();closeSelectedEvent=_i();openImageDialog=_i();openAddItemDialog=_i();enterBuilderMode=_i();showAgentStructureGraph=_i();switchToTraceView=_i();drillDownNodePath=_i();selectEventById=_i();jumpToInvocation=_i();sessionTabComponent=void 0;evalTabComponent=Ho(Yg);evalTabContainer=Ho("evalTabContainer",{read:Yo});tabGroup=Ho(nE);logoComponent=w(ah,{optional:!0});i18n=w(IE);featureFlagService=w(Tr);evalTabComponentClass=w(sD,{optional:!0});environmentInjector=w(Zr);uiStateService=w(mc);traceService=w(Qc);selectedSpan=Ir(this.traceService.selectedTraceRow$);selectedIndex=0;pendingEvalCaseSelection=fe(void 0);pendingEvalResultSelection=fe(void 0);evalTabRef=fe(null);constructor(){Ln(()=>{let A=this.selectedEvent(),e=this.selectedSpan(),i=this.tabGroup();(A||e)&&i&&i.selectedIndex!==0&&(this.selectedIndex=0)}),Ln(()=>{this.evalTabContainer()?this.initEvalTab():this.evalTabRef.set(null)}),Ln(()=>{let A=this.evalTabRef();A&&(A.setInput("appName",this.appName()),A.setInput("userId",this.userId()),A.setInput("sessionId",this.sessionId()))}),Ln(()=>{let A=this.evalTabRef(),e=this.pendingEvalCaseSelection();A&&e&&(A.instance.selectEvalSet(e.evalSetId),A.instance.selectedEvalTab.set("cases"),A.instance.selectedEvalCase.set(e.evalCase),this.pendingEvalCaseSelection.set(void 0))}),Ln(()=>{let A=this.evalTabRef(),e=this.pendingEvalResultSelection();A&&e&&(A.instance.selectEvalSet(e.evalSetId),A.instance.selectedHistoryRun.set(e.timestamp),e.evalCase?(A.instance.selectedEvalTab.set("cases"),A.instance.selectedEvalCase.set(e.evalCase)):A.instance.selectedEvalTab.set("history"),this.pendingEvalResultSelection.set(void 0))})}ngOnInit(){}onTabChange(A){this.tabChange.emit(A),this.selectedIndex=A.index}switchToEvalTab(){this.isEvalEnabledObs.pipe(ao()).subscribe(A=>{A&&cd([this.isArtifactsTabEnabledObs.pipe(ao()),this.isTestsEnabledObs.pipe(ao())]).subscribe(([e,i])=>{let n=2;e&&n++,i&&n++,this.selectedIndex=n})})}selectEvalCase(A,e){let i=this.evalTabComponent();i?(i.selectEvalSet(A),i.selectedEvalTab.set("cases"),i.selectedEvalCase.set(e)):this.pendingEvalCaseSelection.set({evalSetId:A,evalCase:e})}selectEvalResult(A,e,i){let n=this.evalTabComponent();n?(n.selectEvalSet(A),n.selectedHistoryRun.set(e),i?(n.selectedEvalTab.set("cases"),n.selectedEvalCase.set(i)):n.selectedEvalTab.set("history")):this.pendingEvalResultSelection.set({evalSetId:A,timestamp:e,evalCase:i})}isAlwaysOnSidePanelEnabledObs=this.featureFlagService.isAlwaysOnSidePanelEnabled();isTraceEnabledObs=this.featureFlagService.isTraceEnabled();isArtifactsTabEnabledObs=this.featureFlagService.isArtifactsTabEnabled();isEvalEnabledObs=this.featureFlagService.isEvalEnabled();isTestsEnabledObs=this.featureFlagService.isTestsEnabled();isTokenStreamingEnabledObs=this.featureFlagService.isTokenStreamingEnabled();isMessageFileUploadEnabledObs=this.featureFlagService.isMessageFileUploadEnabled();isManualStateUpdateEnabledObs=this.featureFlagService.isManualStateUpdateEnabled();isBidiStreamingEnabledObs=this.featureFlagService.isBidiStreamingEnabled;filteredSelectedEvent=DA(()=>this.selectedEvent());ngAfterViewInit(){}initEvalTab(){this.isEvalEnabledObs.pipe(ao()).subscribe(A=>{if(A){let e=this.evalTabContainer();if(!e)return;e.clear();let i=e.createComponent(this.evalTabComponentClass??Yg,{environmentInjector:this.environmentInjector});if(!i)return;i.instance.sessionSelected.subscribe(n=>{this.sessionSelected.emit(n)}),i.instance.evalCaseSelected.subscribe(n=>{this.evalCaseSelected.emit(n)}),i.instance.editEvalCaseRequested.subscribe(n=>{this.editEvalCaseRequested.emit(n)}),i.instance.evalSetIdSelected.subscribe(n=>{this.evalSetIdSelected.emit(n)}),i.instance.shouldReturnToSession.subscribe(n=>{this.returnToSession.emit(n)}),i.instance.evalNotInstalledMsg.subscribe(n=>{this.evalNotInstalled.emit(n)}),this.evalTabRef.set(i)}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-side-panel"]],viewQuery:function(e,i){e&1&&Bs(i.evalTabComponent,Yg,5)(i.evalTabContainer,bGe,5,Yo)(i.tabGroup,nE,5),e&2&&Rr(3)},inputs:{appName:[1,"appName"],userId:[1,"userId"],sessionId:[1,"sessionId"],traceData:[1,"traceData"],eventData:[1,"eventData"],currentSessionState:[1,"currentSessionState"],artifacts:[1,"artifacts"],selectedEvent:[1,"selectedEvent"],selectedEventIndex:[1,"selectedEventIndex"],renderedEventGraph:[1,"renderedEventGraph"],rawSvgString:[1,"rawSvgString"],selectedEventGraphPath:[1,"selectedEventGraphPath"],llmRequest:[1,"llmRequest"],llmResponse:[1,"llmResponse"],showSidePanel:[1,"showSidePanel"],isApplicationSelectorEnabledObs:[1,"isApplicationSelectorEnabledObs"],isBuilderMode:[1,"isBuilderMode"],disableBuilderIcon:[1,"disableBuilderIcon"],hasSubWorkflows:[1,"hasSubWorkflows"],graphsAvailable:[1,"graphsAvailable"],invocationDisplayMap:[1,"invocationDisplayMap"],forceGraphTab:[1,"forceGraphTab"],isViewOnlySession:[1,"isViewOnlySession"],isViewOnlyAppNameMismatch:[1,"isViewOnlyAppNameMismatch"]},outputs:{closePanel:"closePanel",tabChange:"tabChange",sessionSelected:"sessionSelected",sessionReloaded:"sessionReloaded",evalCaseSelected:"evalCaseSelected",editEvalCaseRequested:"editEvalCaseRequested",testSelected:"testSelected",evalSetIdSelected:"evalSetIdSelected",returnToSession:"returnToSession",evalNotInstalled:"evalNotInstalled",page:"page",switchToEvent:"switchToEvent",closeSelectedEvent:"closeSelectedEvent",openImageDialog:"openImageDialog",openAddItemDialog:"openAddItemDialog",enterBuilderMode:"enterBuilderMode",showAgentStructureGraph:"showAgentStructureGraph",switchToTraceView:"switchToTraceView",drillDownNodePath:"drillDownNodePath",selectEventById:"selectEventById",jumpToInvocation:"jumpToInvocation"},decls:7,vars:8,consts:[["evalTabContainer",""],[1,"loading-spinner-container"],[1,"tabs-container",3,"hidden"],[1,"resize-handler"],["mode","indeterminate","diameter","50"],["animationDuration","0ms",3,"selectedIndexChange","selectedTabChange","selectedIndex"],["mat-tab-label",""],[3,"traceData"],[3,"eventDataSize","eventDataMap","selectedEventIndex","selectedEvent","traceData","filteredSelectedEvent","renderedEventGraph","rawSvgString","appName","selectedEventGraphPath","llmRequest","llmResponse","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab","isViewOnlySession","isViewOnlyAppNameMismatch"],[1,"empty-state"],[3,"sessionState"],[1,"tab-label"],[3,"switchToEvent","traceData"],[3,"page","closeSelectedEvent","openImageDialog","switchToTraceView","showAgentStructureGraph","drillDownNodePath","selectEventById","jumpToInvocation","eventDataSize","eventDataMap","selectedEventIndex","selectedEvent","traceData","filteredSelectedEvent","renderedEventGraph","rawSvgString","appName","selectedEventGraphPath","llmRequest","llmResponse","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab","isViewOnlySession","isViewOnlyAppNameMismatch"],[3,"artifacts"],[3,"testSelected","appName","sessionId","userId","isViewOnlySession"]],template:function(e,i){if(e&1&&(T(0,MGe,0,0),Dt(1,"async"),so(2),Dt(3,"async"),T(4,SGe,2,0,"div",1),T(5,OGe,16,13,"div",2),le(6,"div",3)),e&2){O(Ut(1,3,i.isAlwaysOnSidePanelEnabledObs)===!1?0:-1),Q(2);let n=lo(Ut(3,5,i.uiStateService.isSessionLoading()));Q(2),O(n?4:-1),Q(),O(i.appName()!=""?5:-1)}},dependencies:[nE,Nm,Rm,CD,gD,j8,dD,ws,cD,hs],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%;position:relative}.drawer-header-wrapper[_ngcontent-%COMP%]{display:flex;height:48px;align-items:center;padding-left:20px}.drawer-header[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:space-between;align-items:center}.tabs-container[_ngcontent-%COMP%]{width:100%;flex:1;overflow:hidden;display:flex;flex-direction:column}.tab-label[_ngcontent-%COMP%]{font-size:14px}.resize-handler[_ngcontent-%COMP%]{width:6px;border-radius:4px;position:absolute;display:block;top:20px;bottom:20px;right:0;z-index:100;cursor:ew-resize}.resize-handler[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-outline-variant)}.empty-state[_ngcontent-%COMP%]{padding:16px;text-align:center;color:var(--mat-sys-on-surface-variant);font-style:italic}mat-tab-group[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;min-height:0}mat-tab-group[_ngcontent-%COMP%] .mdc-tab{padding:0 12px;min-width:48px} .mat-mdc-tab-body-wrapper{flex:1;min-height:0} .mat-mdc-tab-body-wrapper .mat-mdc-tab-body-content{overflow-x:hidden}.drawer-logo[_ngcontent-%COMP%]{margin-left:9px;display:flex;align-items:center}.drawer-logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{margin-right:6px}.drawer-logo[_ngcontent-%COMP%]{font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.1px}.drawer-header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.panel-toggle-icon[_ngcontent-%COMP%]{font-size:20px;width:24px;height:24px;color:var(--side-panel-mat-icon-color, #c4c7c5);cursor:pointer;display:flex;align-items:center;justify-content:center}.powered-by-adk[_ngcontent-%COMP%]{font-size:10px;color:var(--side-panel-powered-by-adk-color);text-align:right;margin-top:-5px}.adk-info-icon[_ngcontent-%COMP%]{font-size:14px;color:var(--side-panel-mat-icon-color, #bdc1c6);cursor:pointer;margin-left:4px;vertical-align:middle}.mode-toggle-container[_ngcontent-%COMP%]{display:flex;align-items:center}.build-mode-button[_ngcontent-%COMP%]{margin:0 4px}.app-actions[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}.loading-spinner-container[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center;height:100%}@media(max-width:768px){.resize-handler[_ngcontent-%COMP%]{display:none!important}.tab-label[_ngcontent-%COMP%]{font-size:12px!important} .mdc-tab{padding:0 8px!important}}"]})};var JGe=["editInput"];function zGe(t,A){if(t&1){let e=ae();I(0,"button",5),U("click",function(){L(e);let n=p();return G(n.startEdit())}),I(1,"mat-icon"),v(2,"edit"),h()()}}function YGe(t,A){if(t&1){let e=ae();I(0,"button",6),U("click",function(){L(e);let n=p();return G(n.saveEdit())}),I(1,"mat-icon"),v(2,"check"),h()(),I(3,"button",7),U("click",function(){L(e);let n=p();return G(n.cancelEdit())}),I(4,"mat-icon"),v(5,"close"),h()()}}var ID=class t{value="";displayValue="";tooltip="";placeholder="";textClass="";save=new Le;isEditing=!1;draftValue="";editInput;startEdit(){this.draftValue=this.value,this.isEditing=!0,setTimeout(()=>{this.editInput.nativeElement.focus()})}cancelEdit(){this.isEditing=!1,this.draftValue=""}saveEdit(){this.save.emit(this.draftValue),this.isEditing=!1}handleKeydown(A){A.key==="Enter"?this.saveEdit():A.key==="Escape"&&this.cancelEdit()}get effectiveDisplayValue(){return this.displayValue||this.value}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-inline-edit"]],viewQuery:function(e,i){if(e&1&&$t(JGe,5),e&2){let n;cA(n=gA())&&(i.editInput=n.first)}},inputs:{value:"value",displayValue:"displayValue",tooltip:"tooltip",placeholder:"placeholder",textClass:"textClass"},outputs:{save:"save"},decls:6,vars:10,consts:[["editInput",""],[1,"inline-edit-container"],[1,"inline-edit-text-wrapper"],[1,"inline-edit-input",3,"ngModelChange","keydown","readonly","ngClass","matTooltip","ngModel"],["mat-icon-button","","aria-label","Edit",1,"inline-edit-action-button"],["mat-icon-button","","aria-label","Edit",1,"inline-edit-action-button",3,"click"],["mat-icon-button","","aria-label","Save",1,"inline-edit-action-button",3,"click"],["mat-icon-button","","aria-label","Cancel",1,"inline-edit-action-button",3,"click"]],template:function(e,i){e&1&&(I(0,"div",1)(1,"div",2)(2,"input",3,0),U("ngModelChange",function(o){return i.draftValue=o})("keydown",function(o){return i.handleKeydown(o)}),h()(),T(4,zGe,3,0,"button",4)(5,YGe,6,0),h()),e&2&&(Q(2),_e("readonly",!i.isEditing),H("readonly",!i.isEditing)("ngClass",i.textClass)("matTooltip",i.isEditing?"":i.tooltip)("ngModel",i.isEditing?i.draftValue:i.effectiveDisplayValue),aA("placeholder",i.isEditing?i.placeholder:"")("aria-label",i.placeholder)("size",((i.isEditing?i.draftValue:i.effectiveDisplayValue)==null?null:(i.isEditing?i.draftValue:i.effectiveDisplayValue).length)||1),Q(2),O(i.isEditing?5:4))},dependencies:[Ci,lc,wn,Kn,Un,Po,Wi,Di,Tn,Vt,qa,ln],styles:["[_nghost-%COMP%]{display:block;max-width:100%;min-width:0;width:100%}.inline-edit-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.inline-edit-text-wrapper[_ngcontent-%COMP%]{flex:0 1 auto;min-width:0;display:flex;align-items:center}.inline-edit-input[_ngcontent-%COMP%]{min-width:48px;max-width:100%;padding:2px 6px;margin:-3px -7px;border:1px solid var(--chat-toolbar-session-text-color, #ccc);border-radius:4px;color:var(--chat-toolbar-session-id-color, inherit);font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;background:transparent;field-sizing:content;transition:all .2s ease}.inline-edit-input[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--primary-color, #1a73e8)}.inline-edit-input.readonly[_ngcontent-%COMP%]{min-width:0;border-color:transparent;cursor:inherit}.inline-edit-input.readonly[_ngcontent-%COMP%]:focus{outline:none;border-color:transparent}.inline-edit-action-button[_ngcontent-%COMP%]{flex-shrink:0;width:28px!important;height:28px!important;padding:0!important;display:flex;align-items:center;justify-content:center}.inline-edit-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;line-height:16px}"]})};var HGe={openPanelTooltip:"Open panel",retrieveLatestSessionTooltip:"Retrieve latest session and show",evalCaseIdLabel:"Eval Case ID",cancelButton:"Cancel",saveButton:"Save",editEvalCaseTooltip:"Edit current eval case",deleteEvalCaseTooltip:"Delete current eval case",sessionIdLabel:"Session",copySessionIdTooltip:"Copy session ID",sessionIdCopiedMessage:"Session ID copied",copySessionIdFailedMessage:"Failed to copy session ID",userIdLabel:"User ID",editUserIdTooltip:"Edit user ID",userIdInputPlaceholder:"Enter user ID",saveUserIdTooltip:"Save user ID",cancelUserIdEditTooltip:"Cancel editing user ID",invalidUserIdMessage:"User ID cannot be empty",loadingSessionLabel:"Loading session...",tokenStreamingLabel:"Token Streaming",moreOptionsTooltip:"More options",createNewSessionTooltip:"Create a new Session",newSessionButton:"New Session",deleteSessionTooltip:"Delete session",exportSessionTooltip:"Export session",importSessionTooltip:"Import session",viewSessionTooltip:"View session",loadingAgentsLabel:"Loading agents, please wait...",welcomeMessage:"Welcome to ADK!",selectAgentMessage:"Select an agent to begin.",failedToLoadAgentsMessage:"Failed to load agents. To get started, run",errorMessageLabel:"Error message:",noAgentsFoundWarning:"Warning: No agents found in current folder.",cannotEditSessionMessage:"Chat is disabled to prevent changes to the end user's session.",viewSessionReadOnlyMessage:'This is a read-only view of a session file. Use "Import Session" if you want to continue this session.',readOnlyBadgeLabel:"Read-only"},Cre=new Me("Chat Messages",{factory:()=>HGe});var AA={};eC(AA,{$brand:()=>zL,$input:()=>cU,$output:()=>lU,NEVER:()=>JL,TimePrecision:()=>IU,ZodAny:()=>iO,ZodArray:()=>rO,ZodBase64:()=>Ob,ZodBase64URL:()=>Jb,ZodBigInt:()=>PE,ZodBigIntFormat:()=>Hb,ZodBoolean:()=>HE,ZodCIDRv4:()=>Ub,ZodCIDRv6:()=>Tb,ZodCUID:()=>xb,ZodCUID2:()=>Rb,ZodCatch:()=>SO,ZodCodec:()=>pf,ZodCustom:()=>mf,ZodCustomStringFormat:()=>zE,ZodDate:()=>Bf,ZodDefault:()=>wO,ZodDiscriminatedUnion:()=>lO,ZodE164:()=>zb,ZodEmail:()=>Sb,ZodEmoji:()=>kb,ZodEnum:()=>OE,ZodError:()=>fTe,ZodExactOptional:()=>pO,ZodFile:()=>EO,ZodFirstPartyTypeKind:()=>JO,ZodFunction:()=>UO,ZodGUID:()=>cf,ZodIPv4:()=>Gb,ZodIPv6:()=>Kb,ZodISODate:()=>wb,ZodISODateTime:()=>fb,ZodISODuration:()=>vb,ZodISOTime:()=>yb,ZodIntersection:()=>cO,ZodIssueCode:()=>yTe,ZodJWT:()=>Yb,ZodKSUID:()=>Lb,ZodLazy:()=>LO,ZodLiteral:()=>uO,ZodMAC:()=>ZT,ZodMap:()=>BO,ZodNaN:()=>_O,ZodNanoID:()=>_b,ZodNever:()=>oO,ZodNonOptional:()=>Wb,ZodNull:()=>AO,ZodNullable:()=>fO,ZodNumber:()=>YE,ZodNumberFormat:()=>X1,ZodObject:()=>uf,ZodOptional:()=>Zb,ZodPipe:()=>Qf,ZodPrefault:()=>vO,ZodPreprocess:()=>xO,ZodPromise:()=>KO,ZodReadonly:()=>RO,ZodRealError:()=>Nl,ZodRecord:()=>TE,ZodSet:()=>hO,ZodString:()=>JE,ZodStringFormat:()=>aa,ZodSuccess:()=>MO,ZodSymbol:()=>$T,ZodTemplateLiteral:()=>FO,ZodTransform:()=>QO,ZodTuple:()=>CO,ZodType:()=>on,ZodULID:()=>Nb,ZodURL:()=>If,ZodUUID:()=>W0,ZodUndefined:()=>eO,ZodUnion:()=>Ef,ZodUnknown:()=>nO,ZodVoid:()=>aO,ZodXID:()=>Fb,ZodXor:()=>sO,_ZodString:()=>Mb,_default:()=>yO,_function:()=>ece,any:()=>_le,array:()=>hf,base64:()=>Ile,base64url:()=>Ble,bigint:()=>Dle,boolean:()=>XT,catch:()=>kO,check:()=>Ace,cidrv4:()=>Cle,cidrv6:()=>dle,clone:()=>js,codec:()=>Zle,coerce:()=>zO,config:()=>Xa,core:()=>sd,cuid:()=>nle,cuid2:()=>ole,custom:()=>tce,date:()=>Rle,decode:()=>zT,decodeAsync:()=>HT,describe:()=>ice,discriminatedUnion:()=>Ule,e164:()=>hle,email:()=>Vse,emoji:()=>tle,encode:()=>JT,encodeAsync:()=>YT,endsWith:()=>kE,enum:()=>Vb,exactOptional:()=>mO,file:()=>Ple,flattenError:()=>qm,float32:()=>fle,float64:()=>wle,formatError:()=>Zm,fromJSONSchema:()=>cce,function:()=>ece,getErrorMap:()=>DTe,globalRegistry:()=>ds,gt:()=>q0,gte:()=>qs,guid:()=>qse,hash:()=>mle,hex:()=>ple,hostname:()=>Qle,httpUrl:()=>Ale,includes:()=>ME,instanceof:()=>oce,int:()=>Db,int32:()=>yle,int64:()=>ble,intersection:()=>gO,invertCodec:()=>Wle,ipv4:()=>lle,ipv6:()=>gle,iso:()=>UE,json:()=>rce,jwt:()=>ule,keyof:()=>Nle,ksuid:()=>sle,lazy:()=>GO,length:()=>Z1,literal:()=>Hle,locales:()=>of,looseObject:()=>Gle,looseRecord:()=>Ole,lowercase:()=>DE,lt:()=>V0,lte:()=>ac,mac:()=>cle,map:()=>Jle,maxLength:()=>q1,maxSize:()=>V2,meta:()=>nce,mime:()=>_E,minLength:()=>rd,minSize:()=>Z0,multipleOf:()=>j2,nan:()=>qle,nanoid:()=>ile,nativeEnum:()=>Yle,negative:()=>Cb,never:()=>Pb,nonnegative:()=>Ib,nonoptional:()=>bO,nonpositive:()=>db,normalize:()=>xE,null:()=>tO,nullable:()=>Cf,nullish:()=>jle,number:()=>WT,object:()=>Fle,optional:()=>gf,overwrite:()=>Pg,parse:()=>KT,parseAsync:()=>UT,partialRecord:()=>Tle,pipe:()=>bb,positive:()=>gb,prefault:()=>DO,preprocess:()=>sce,prettifyError:()=>tG,promise:()=>$le,property:()=>Bb,readonly:()=>NO,record:()=>IO,refine:()=>TO,regex:()=>vE,regexes:()=>oc,registry:()=>YD,safeDecode:()=>jT,safeDecodeAsync:()=>qT,safeEncode:()=>PT,safeEncodeAsync:()=>VT,safeParse:()=>TT,safeParseAsync:()=>OT,set:()=>zle,setErrorMap:()=>vTe,size:()=>V1,slugify:()=>LE,startsWith:()=>SE,strictObject:()=>Lle,string:()=>lf,stringFormat:()=>Ele,stringbool:()=>ace,success:()=>Vle,superRefine:()=>OO,symbol:()=>Sle,templateLiteral:()=>Xle,toJSONSchema:()=>Qb,toLowerCase:()=>NE,toUpperCase:()=>FE,transform:()=>qb,treeifyError:()=>AG,trim:()=>RE,tuple:()=>dO,uint32:()=>vle,uint64:()=>Mle,ulid:()=>ale,undefined:()=>kle,union:()=>jb,unknown:()=>W1,uppercase:()=>bE,url:()=>ele,util:()=>KA,uuid:()=>Zse,uuidv4:()=>Wse,uuidv6:()=>Xse,uuidv7:()=>$se,void:()=>xle,xid:()=>rle,xor:()=>Kle});var sd={};eC(sd,{$ZodAny:()=>_K,$ZodArray:()=>LK,$ZodAsyncError:()=>Hg,$ZodBase64:()=>mK,$ZodBase64URL:()=>fK,$ZodBigInt:()=>LD,$ZodBigIntFormat:()=>bK,$ZodBoolean:()=>ef,$ZodCIDRv4:()=>EK,$ZodCIDRv6:()=>QK,$ZodCUID:()=>aK,$ZodCUID2:()=>rK,$ZodCatch:()=>eU,$ZodCheck:()=>Ia,$ZodCheckBigIntFormat:()=>LG,$ZodCheckEndsWith:()=>VG,$ZodCheckGreaterThan:()=>kD,$ZodCheckIncludes:()=>PG,$ZodCheckLengthEquals:()=>JG,$ZodCheckLessThan:()=>SD,$ZodCheckLowerCase:()=>YG,$ZodCheckMaxLength:()=>TG,$ZodCheckMaxSize:()=>GG,$ZodCheckMimeType:()=>ZG,$ZodCheckMinLength:()=>OG,$ZodCheckMinSize:()=>KG,$ZodCheckMultipleOf:()=>NG,$ZodCheckNumberFormat:()=>FG,$ZodCheckOverwrite:()=>WG,$ZodCheckProperty:()=>qG,$ZodCheckRegex:()=>zG,$ZodCheckSizeEquals:()=>UG,$ZodCheckStartsWith:()=>jG,$ZodCheckStringFormat:()=>wE,$ZodCheckUpperCase:()=>HG,$ZodCodec:()=>tf,$ZodCustom:()=>sU,$ZodCustomStringFormat:()=>vK,$ZodDate:()=>FK,$ZodDefault:()=>ZK,$ZodDiscriminatedUnion:()=>UK,$ZodE164:()=>wK,$ZodEmail:()=>tK,$ZodEmoji:()=>nK,$ZodEncodeError:()=>J2,$ZodEnum:()=>YK,$ZodError:()=>Vm,$ZodExactOptional:()=>VK,$ZodFile:()=>PK,$ZodFunction:()=>oU,$ZodGUID:()=>eK,$ZodIPv4:()=>BK,$ZodIPv6:()=>hK,$ZodISODate:()=>CK,$ZodISODateTime:()=>gK,$ZodISODuration:()=>IK,$ZodISOTime:()=>dK,$ZodIntersection:()=>TK,$ZodJWT:()=>yK,$ZodKSUID:()=>cK,$ZodLazy:()=>rU,$ZodLiteral:()=>HK,$ZodMAC:()=>uK,$ZodMap:()=>JK,$ZodNaN:()=>AU,$ZodNanoID:()=>oK,$ZodNever:()=>RK,$ZodNonOptional:()=>XK,$ZodNull:()=>kK,$ZodNullable:()=>qK,$ZodNumber:()=>FD,$ZodNumberFormat:()=>DK,$ZodObject:()=>zre,$ZodObjectJIT:()=>GK,$ZodOptional:()=>KD,$ZodPipe:()=>UD,$ZodPrefault:()=>WK,$ZodPreprocess:()=>tU,$ZodPromise:()=>aU,$ZodReadonly:()=>iU,$ZodRealError:()=>Rl,$ZodRecord:()=>OK,$ZodRegistry:()=>zD,$ZodSet:()=>zK,$ZodString:()=>j1,$ZodStringFormat:()=>oa,$ZodSuccess:()=>$K,$ZodSymbol:()=>MK,$ZodTemplateLiteral:()=>nU,$ZodTransform:()=>jK,$ZodTuple:()=>GD,$ZodType:()=>Ki,$ZodULID:()=>sK,$ZodURL:()=>iK,$ZodUUID:()=>AK,$ZodUndefined:()=>SK,$ZodUnion:()=>Af,$ZodUnknown:()=>xK,$ZodVoid:()=>NK,$ZodXID:()=>lK,$ZodXor:()=>KK,$brand:()=>zL,$constructor:()=>Re,$input:()=>cU,$output:()=>lU,Doc:()=>$m,JSONSchema:()=>Hse,JSONSchemaGenerator:()=>pb,NEVER:()=>JL,TimePrecision:()=>IU,_any:()=>FU,_array:()=>JU,_base64:()=>rb,_base64url:()=>sb,_bigint:()=>MU,_boolean:()=>DU,_catch:()=>ITe,_check:()=>Yse,_cidrv4:()=>ob,_cidrv6:()=>ab,_coercedBigint:()=>SU,_coercedBoolean:()=>bU,_coercedDate:()=>TU,_coercedNumber:()=>pU,_coercedString:()=>CU,_cuid:()=>XD,_cuid2:()=>$D,_custom:()=>YU,_date:()=>UU,_decode:()=>pD,_decodeAsync:()=>fD,_default:()=>gTe,_discriminatedUnion:()=>$Ue,_e164:()=>lb,_email:()=>HD,_emoji:()=>ZD,_encode:()=>QD,_encodeAsync:()=>mD,_endsWith:()=>kE,_enum:()=>oTe,_file:()=>zU,_float32:()=>fU,_float64:()=>wU,_gt:()=>q0,_gte:()=>qs,_guid:()=>af,_includes:()=>ME,_int:()=>mU,_int32:()=>yU,_int64:()=>kU,_intersection:()=>eTe,_ipv4:()=>ib,_ipv6:()=>nb,_isoDate:()=>hU,_isoDateTime:()=>BU,_isoDuration:()=>EU,_isoTime:()=>uU,_jwt:()=>cb,_ksuid:()=>tb,_lazy:()=>ETe,_length:()=>Z1,_literal:()=>rTe,_lowercase:()=>DE,_lt:()=>V0,_lte:()=>ac,_mac:()=>dU,_map:()=>iTe,_max:()=>ac,_maxLength:()=>q1,_maxSize:()=>V2,_mime:()=>_E,_min:()=>qs,_minLength:()=>rd,_minSize:()=>Z0,_multipleOf:()=>j2,_nan:()=>OU,_nanoid:()=>WD,_nativeEnum:()=>aTe,_negative:()=>Cb,_never:()=>GU,_nonnegative:()=>Ib,_nonoptional:()=>CTe,_nonpositive:()=>db,_normalize:()=>xE,_null:()=>NU,_nullable:()=>cTe,_number:()=>QU,_optional:()=>lTe,_overwrite:()=>Pg,_parse:()=>QE,_parseAsync:()=>pE,_pipe:()=>BTe,_positive:()=>gb,_promise:()=>QTe,_property:()=>Bb,_readonly:()=>hTe,_record:()=>tTe,_refine:()=>HU,_regex:()=>vE,_safeDecode:()=>yD,_safeDecodeAsync:()=>DD,_safeEncode:()=>wD,_safeEncodeAsync:()=>vD,_safeParse:()=>mE,_safeParseAsync:()=>fE,_set:()=>nTe,_size:()=>V1,_slugify:()=>LE,_startsWith:()=>SE,_string:()=>gU,_stringFormat:()=>GE,_stringbool:()=>qU,_success:()=>dTe,_superRefine:()=>PU,_symbol:()=>xU,_templateLiteral:()=>uTe,_toLowerCase:()=>NE,_toUpperCase:()=>FE,_transform:()=>sTe,_trim:()=>RE,_tuple:()=>ATe,_uint32:()=>vU,_uint64:()=>_U,_ulid:()=>eb,_undefined:()=>RU,_union:()=>WUe,_unknown:()=>LU,_uppercase:()=>bE,_url:()=>rf,_uuid:()=>PD,_uuidv4:()=>jD,_uuidv6:()=>VD,_uuidv7:()=>qD,_void:()=>KU,_xid:()=>Ab,_xor:()=>XUe,clone:()=>js,config:()=>Xa,createStandardJSONSchemaMethod:()=>KE,createToJSONSchemaMethod:()=>ZU,decode:()=>QKe,decodeAsync:()=>mKe,describe:()=>jU,encode:()=>EKe,encodeAsync:()=>pKe,extractDefs:()=>Z2,finalize:()=>W2,flattenError:()=>qm,formatError:()=>Zm,globalConfig:()=>Y1,globalRegistry:()=>ds,initializeContext:()=>q2,isValidBase64:()=>pK,isValidBase64URL:()=>Ure,isValidJWT:()=>Tre,locales:()=>of,meta:()=>VU,parse:()=>uD,parseAsync:()=>ED,prettifyError:()=>tG,process:()=>Uo,regexes:()=>oc,registry:()=>YD,safeDecode:()=>wKe,safeDecodeAsync:()=>vKe,safeEncode:()=>fKe,safeEncodeAsync:()=>yKe,safeParse:()=>iG,safeParseAsync:()=>nG,toDotPath:()=>Ere,toJSONSchema:()=>Qb,treeifyError:()=>AG,util:()=>KA,version:()=>XG});var dre,JL=Object.freeze({status:"aborted"});function Re(t,A,e){function i(r,s){if(r._zod||Object.defineProperty(r,"_zod",{value:{def:s,constr:a,traits:new Set},enumerable:!1}),r._zod.traits.has(t))return;r._zod.traits.add(t),A(r,s);let l=a.prototype,c=Object.keys(l);for(let C=0;Ce?.Parent&&r instanceof e.Parent?!0:r?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var zL=Symbol("zod_brand"),Hg=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},J2=class extends Error{constructor(A){super(`Encountered unidirectional transform during encode: ${A}`),this.name="ZodEncodeError"}};(dre=globalThis).__zod_globalConfig??(dre.__zod_globalConfig={});var Y1=globalThis.__zod_globalConfig;function Xa(t){return t&&Object.assign(Y1,t),Y1}var KA={};eC(KA,{BIGINT_FORMAT_RANGES:()=>$L,Class:()=>HL,NUMBER_FORMAT_RANGES:()=>XL,aborted:()=>P2,allowsEval:()=>VL,assert:()=>ZGe,assertEqual:()=>PGe,assertIs:()=>VGe,assertNever:()=>qGe,assertNotEqual:()=>jGe,assignProp:()=>Y2,base64ToUint8Array:()=>Bre,base64urlToUint8Array:()=>dKe,cached:()=>uE,captureStackTrace:()=>hD,cleanEnum:()=>CKe,cleanRegex:()=>Ym,clone:()=>js,cloneDef:()=>XGe,createTransparentProxy:()=>nKe,defineLazy:()=>fn,esc:()=>BD,escapeRegex:()=>zc,explicitlyAborted:()=>eG,extend:()=>rKe,finalizeIssue:()=>Vs,floatSafeRemainder:()=>PL,getElementAtPath:()=>$Ge,getEnumValues:()=>zm,getLengthableOrigin:()=>jm,getParsedType:()=>iKe,getSizableOrigin:()=>Pm,hexToUint8Array:()=>BKe,isObject:()=>H1,isPlainObject:()=>H2,issue:()=>EE,joinValues:()=>Ve,jsonStringifyReplacer:()=>hE,merge:()=>lKe,mergeDefs:()=>ad,normalizeParams:()=>YA,nullish:()=>z2,numKeys:()=>tKe,objectClone:()=>WGe,omit:()=>aKe,optionalKeys:()=>WL,parsedType:()=>LA,partial:()=>cKe,pick:()=>oKe,prefixIssues:()=>xl,primitiveTypes:()=>ZL,promiseAllObject:()=>eKe,propertyKeyTypes:()=>Hm,randomString:()=>AKe,required:()=>gKe,safeExtend:()=>sKe,shallowClone:()=>qL,slugify:()=>jL,stringifyPrimitive:()=>SA,uint8ArrayToBase64:()=>hre,uint8ArrayToBase64url:()=>IKe,uint8ArrayToHex:()=>hKe,unwrapMessage:()=>Jm});function PGe(t){return t}function jGe(t){return t}function VGe(t){}function qGe(t){throw new Error("Unexpected value in exhaustive check")}function ZGe(t){}function zm(t){let A=Object.values(t).filter(i=>typeof i=="number");return Object.entries(t).filter(([i,n])=>A.indexOf(+i)===-1).map(([i,n])=>n)}function Ve(t,A="|"){return t.map(e=>SA(e)).join(A)}function hE(t,A){return typeof A=="bigint"?A.toString():A}function uE(t){return{get value(){{let e=t();return Object.defineProperty(this,"value",{value:e}),e}throw new Error("cached value already set")}}}function z2(t){return t==null}function Ym(t){let A=t.startsWith("^")?1:0,e=t.endsWith("$")?t.length-1:t.length;return t.slice(A,e)}function PL(t,A){let e=t/A,i=Math.round(e),n=Number.EPSILON*Math.max(Math.abs(e),1);return Math.abs(e-i)e?.[i],t):t}function eKe(t){let A=Object.keys(t),e=A.map(i=>t[i]);return Promise.all(e).then(i=>{let n={};for(let o=0;o{};function H1(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var VL=uE(()=>{if(Y1.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch(t){return!1}});function H2(t){if(H1(t)===!1)return!1;let A=t.constructor;if(A===void 0||typeof A!="function")return!0;let e=A.prototype;return!(H1(e)===!1||Object.prototype.hasOwnProperty.call(e,"isPrototypeOf")===!1)}function qL(t){return H2(t)?Y({},t):Array.isArray(t)?[...t]:t instanceof Map?new Map(t):t instanceof Set?new Set(t):t}function tKe(t){let A=0;for(let e in t)Object.prototype.hasOwnProperty.call(t,e)&&A++;return A}var iKe=t=>{let A=typeof t;switch(A){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${A}`)}},Hm=new Set(["string","number","symbol"]),ZL=new Set(["string","number","bigint","boolean","symbol","undefined"]);function zc(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function js(t,A,e){let i=new t._zod.constr(A??t._zod.def);return(!A||e?.parent)&&(i._zod.parent=t),i}function YA(t){let A=t;if(!A)return{};if(typeof A=="string")return{error:()=>A};if(A?.message!==void 0){if(A?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");A.error=A.message}return delete A.message,typeof A.error=="string"?Ye(Y({},A),{error:()=>A.error}):A}function nKe(t){let A;return new Proxy({},{get(e,i,n){return A??(A=t()),Reflect.get(A,i,n)},set(e,i,n,o){return A??(A=t()),Reflect.set(A,i,n,o)},has(e,i){return A??(A=t()),Reflect.has(A,i)},deleteProperty(e,i){return A??(A=t()),Reflect.deleteProperty(A,i)},ownKeys(e){return A??(A=t()),Reflect.ownKeys(A)},getOwnPropertyDescriptor(e,i){return A??(A=t()),Reflect.getOwnPropertyDescriptor(A,i)},defineProperty(e,i,n){return A??(A=t()),Reflect.defineProperty(A,i,n)}})}function SA(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function WL(t){return Object.keys(t).filter(A=>t[A]._zod.optin==="optional"&&t[A]._zod.optout==="optional")}var XL={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},$L={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function oKe(t,A){let e=t._zod.def,i=e.checks;if(i&&i.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let o=ad(t._zod.def,{get shape(){let a={};for(let r in A){if(!(r in e.shape))throw new Error(`Unrecognized key: "${r}"`);A[r]&&(a[r]=e.shape[r])}return Y2(this,"shape",a),a},checks:[]});return js(t,o)}function aKe(t,A){let e=t._zod.def,i=e.checks;if(i&&i.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let o=ad(t._zod.def,{get shape(){let a=Y({},t._zod.def.shape);for(let r in A){if(!(r in e.shape))throw new Error(`Unrecognized key: "${r}"`);A[r]&&delete a[r]}return Y2(this,"shape",a),a},checks:[]});return js(t,o)}function rKe(t,A){if(!H2(A))throw new Error("Invalid input to extend: expected a plain object");let e=t._zod.def.checks;if(e&&e.length>0){let o=t._zod.def.shape;for(let a in A)if(Object.getOwnPropertyDescriptor(o,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let n=ad(t._zod.def,{get shape(){let o=Y(Y({},t._zod.def.shape),A);return Y2(this,"shape",o),o}});return js(t,n)}function sKe(t,A){if(!H2(A))throw new Error("Invalid input to safeExtend: expected a plain object");let e=ad(t._zod.def,{get shape(){let i=Y(Y({},t._zod.def.shape),A);return Y2(this,"shape",i),i}});return js(t,e)}function lKe(t,A){if(t._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let e=ad(t._zod.def,{get shape(){let i=Y(Y({},t._zod.def.shape),A._zod.def.shape);return Y2(this,"shape",i),i},get catchall(){return A._zod.def.catchall},checks:A._zod.def.checks??[]});return js(t,e)}function cKe(t,A,e){let n=A._zod.def.checks;if(n&&n.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let a=ad(A._zod.def,{get shape(){let r=A._zod.def.shape,s=Y({},r);if(e)for(let l in e){if(!(l in r))throw new Error(`Unrecognized key: "${l}"`);e[l]&&(s[l]=t?new t({type:"optional",innerType:r[l]}):r[l])}else for(let l in r)s[l]=t?new t({type:"optional",innerType:r[l]}):r[l];return Y2(this,"shape",s),s},checks:[]});return js(A,a)}function gKe(t,A,e){let i=ad(A._zod.def,{get shape(){let n=A._zod.def.shape,o=Y({},n);if(e)for(let a in e){if(!(a in o))throw new Error(`Unrecognized key: "${a}"`);e[a]&&(o[a]=new t({type:"nonoptional",innerType:n[a]}))}else for(let a in n)o[a]=new t({type:"nonoptional",innerType:n[a]});return Y2(this,"shape",o),o}});return js(A,i)}function P2(t,A=0){if(t.aborted===!0)return!0;for(let e=A;e{var i;return(i=e).path??(i.path=[]),e.path.unshift(t),e})}function Jm(t){return typeof t=="string"?t:t?.message}function Vs(t,A,e){let i=t.message?t.message:Jm(t.inst?._zod.def?.error?.(t))??Jm(A?.error?.(t))??Jm(e.customError?.(t))??Jm(e.localeError?.(t))??"Invalid input",s=t,{inst:n,continue:o,input:a}=s,r=ld(s,["inst","continue","input"]);return r.path??(r.path=[]),r.message=i,A?.reportInput&&(r.input=a),r}function Pm(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function jm(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function LA(t){let A=typeof t;switch(A){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let e=t;if(e&&Object.getPrototypeOf(e)!==Object.prototype&&"constructor"in e&&e.constructor)return e.constructor.name}}return A}function EE(...t){let[A,e,i]=t;return typeof A=="string"?{message:A,code:"custom",input:e,inst:i}:Y({},A)}function CKe(t){return Object.entries(t).filter(([A,e])=>Number.isNaN(Number.parseInt(A,10))).map(A=>A[1])}function Bre(t){let A=atob(t),e=new Uint8Array(A.length);for(let i=0;iA.toString(16).padStart(2,"0")).join("")}var HL=class{constructor(...A){}};var ure=(t,A)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:A,enumerable:!1}),t.message=JSON.stringify(A,hE,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Vm=Re("$ZodError",ure),Rl=Re("$ZodError",ure,{Parent:Error});function qm(t,A=e=>e.message){let e={},i=[];for(let n of t.issues)n.path.length>0?(e[n.path[0]]=e[n.path[0]]||[],e[n.path[0]].push(A(n))):i.push(A(n));return{formErrors:i,fieldErrors:e}}function Zm(t,A=e=>e.message){let e={_errors:[]},i=(n,o=[])=>{for(let a of n.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(r=>i({issues:r},[...o,...a.path]));else if(a.code==="invalid_key")i({issues:a.issues},[...o,...a.path]);else if(a.code==="invalid_element")i({issues:a.issues},[...o,...a.path]);else{let r=[...o,...a.path];if(r.length===0)e._errors.push(A(a));else{let s=e,l=0;for(;le.message){let e={errors:[]},i=(n,o=[])=>{var a,r;for(let s of n.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map(l=>i({issues:l},[...o,...s.path]));else if(s.code==="invalid_key")i({issues:s.issues},[...o,...s.path]);else if(s.code==="invalid_element")i({issues:s.issues},[...o,...s.path]);else{let l=[...o,...s.path];if(l.length===0){e.errors.push(A(s));continue}let c=e,C=0;for(;Ctypeof i=="object"?i.key:i);for(let i of e)typeof i=="number"?A.push(`[${i}]`):typeof i=="symbol"?A.push(`[${JSON.stringify(String(i))}]`):/[^\w$]/.test(i)?A.push(`[${JSON.stringify(i)}]`):(A.length&&A.push("."),A.push(i));return A.join("")}function tG(t){let A=[],e=[...t.issues].sort((i,n)=>(i.path??[]).length-(n.path??[]).length);for(let i of e)A.push(`\u2716 ${i.message}`),i.path?.length&&A.push(` \u2192 at ${Ere(i.path)}`);return A.join(` +`)}var QE=t=>(A,e,i,n)=>{let o=i?Ye(Y({},i),{async:!1}):{async:!1},a=A._zod.run({value:e,issues:[]},o);if(a instanceof Promise)throw new Hg;if(a.issues.length){let r=new(n?.Err??t)(a.issues.map(s=>Vs(s,o,Xa())));throw hD(r,n?.callee),r}return a.value},uD=QE(Rl),pE=t=>(A,e,i,n)=>nA(null,null,function*(){let o=i?Ye(Y({},i),{async:!0}):{async:!0},a=A._zod.run({value:e,issues:[]},o);if(a instanceof Promise&&(a=yield a),a.issues.length){let r=new(n?.Err??t)(a.issues.map(s=>Vs(s,o,Xa())));throw hD(r,n?.callee),r}return a.value}),ED=pE(Rl),mE=t=>(A,e,i)=>{let n=i?Ye(Y({},i),{async:!1}):{async:!1},o=A._zod.run({value:e,issues:[]},n);if(o instanceof Promise)throw new Hg;return o.issues.length?{success:!1,error:new(t??Vm)(o.issues.map(a=>Vs(a,n,Xa())))}:{success:!0,data:o.value}},iG=mE(Rl),fE=t=>(A,e,i)=>nA(null,null,function*(){let n=i?Ye(Y({},i),{async:!0}):{async:!0},o=A._zod.run({value:e,issues:[]},n);return o instanceof Promise&&(o=yield o),o.issues.length?{success:!1,error:new t(o.issues.map(a=>Vs(a,n,Xa())))}:{success:!0,data:o.value}}),nG=fE(Rl),QD=t=>(A,e,i)=>{let n=i?Ye(Y({},i),{direction:"backward"}):{direction:"backward"};return QE(t)(A,e,n)},EKe=QD(Rl),pD=t=>(A,e,i)=>QE(t)(A,e,i),QKe=pD(Rl),mD=t=>(A,e,i)=>nA(null,null,function*(){let n=i?Ye(Y({},i),{direction:"backward"}):{direction:"backward"};return pE(t)(A,e,n)}),pKe=mD(Rl),fD=t=>(A,e,i)=>nA(null,null,function*(){return pE(t)(A,e,i)}),mKe=fD(Rl),wD=t=>(A,e,i)=>{let n=i?Ye(Y({},i),{direction:"backward"}):{direction:"backward"};return mE(t)(A,e,n)},fKe=wD(Rl),yD=t=>(A,e,i)=>mE(t)(A,e,i),wKe=yD(Rl),vD=t=>(A,e,i)=>nA(null,null,function*(){let n=i?Ye(Y({},i),{direction:"backward"}):{direction:"backward"};return fE(t)(A,e,n)}),yKe=vD(Rl),DD=t=>(A,e,i)=>nA(null,null,function*(){return fE(t)(A,e,i)}),vKe=DD(Rl);var oc={};eC(oc,{base64:()=>pG,base64url:()=>bD,bigint:()=>bG,boolean:()=>SG,browserEmail:()=>RKe,cidrv4:()=>EG,cidrv6:()=>QG,cuid:()=>oG,cuid2:()=>aG,date:()=>wG,datetime:()=>vG,domain:()=>LKe,duration:()=>gG,e164:()=>fG,email:()=>dG,emoji:()=>IG,extendedDuration:()=>DKe,guid:()=>CG,hex:()=>GKe,hostname:()=>FKe,html5Email:()=>kKe,httpProtocol:()=>mG,idnEmail:()=>xKe,integer:()=>MG,ipv4:()=>BG,ipv6:()=>hG,ksuid:()=>lG,lowercase:()=>xG,mac:()=>uG,md5_base64:()=>UKe,md5_base64url:()=>TKe,md5_hex:()=>KKe,nanoid:()=>cG,null:()=>kG,number:()=>MD,rfc5322Email:()=>_Ke,sha1_base64:()=>JKe,sha1_base64url:()=>zKe,sha1_hex:()=>OKe,sha256_base64:()=>HKe,sha256_base64url:()=>PKe,sha256_hex:()=>YKe,sha384_base64:()=>VKe,sha384_base64url:()=>qKe,sha384_hex:()=>jKe,sha512_base64:()=>WKe,sha512_base64url:()=>XKe,sha512_hex:()=>ZKe,string:()=>DG,time:()=>yG,ulid:()=>rG,undefined:()=>_G,unicodeEmail:()=>Qre,uppercase:()=>RG,uuid:()=>P1,uuid4:()=>bKe,uuid6:()=>MKe,uuid7:()=>SKe,xid:()=>sG});var oG=/^[cC][0-9a-z]{6,}$/,aG=/^[0-9a-z]+$/,rG=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,sG=/^[0-9a-vA-V]{20}$/,lG=/^[A-Za-z0-9]{27}$/,cG=/^[a-zA-Z0-9_-]{21}$/,gG=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,DKe=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,CG=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,P1=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,bKe=P1(4),MKe=P1(6),SKe=P1(7),dG=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,kKe=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,_Ke=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,Qre=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,xKe=Qre,RKe=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,NKe="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function IG(){return new RegExp(NKe,"u")}var BG=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,hG=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,uG=t=>{let A=zc(t??":");return new RegExp(`^(?:[0-9A-F]{2}${A}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${A}){5}[0-9a-f]{2}$`)},EG=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,QG=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,pG=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,bD=/^[A-Za-z0-9_-]*$/,FKe=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,LKe=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,mG=/^https?$/,fG=/^\+[1-9]\d{6,14}$/,pre="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",wG=new RegExp(`^${pre}$`);function mre(t){let A="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${A}`:t.precision===0?`${A}:[0-5]\\d`:`${A}:[0-5]\\d\\.\\d{${t.precision}}`:`${A}(?::[0-5]\\d(?:\\.\\d+)?)?`}function yG(t){return new RegExp(`^${mre(t)}$`)}function vG(t){let A=mre({precision:t.precision}),e=["Z"];t.local&&e.push(""),t.offset&&e.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let i=`${A}(?:${e.join("|")})`;return new RegExp(`^${pre}T(?:${i})$`)}var DG=t=>{let A=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${A}$`)},bG=/^-?\d+n?$/,MG=/^-?\d+$/,MD=/^-?\d+(?:\.\d+)?$/,SG=/^(?:true|false)$/i,kG=/^null$/i;var _G=/^undefined$/i;var xG=/^[^A-Z]*$/,RG=/^[^a-z]*$/,GKe=/^[0-9a-fA-F]*$/;function Wm(t,A){return new RegExp(`^[A-Za-z0-9+/]{${t}}${A}$`)}function Xm(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var KKe=/^[0-9a-fA-F]{32}$/,UKe=Wm(22,"=="),TKe=Xm(22),OKe=/^[0-9a-fA-F]{40}$/,JKe=Wm(27,"="),zKe=Xm(27),YKe=/^[0-9a-fA-F]{64}$/,HKe=Wm(43,"="),PKe=Xm(43),jKe=/^[0-9a-fA-F]{96}$/,VKe=Wm(64,""),qKe=Xm(64),ZKe=/^[0-9a-fA-F]{128}$/,WKe=Wm(86,"=="),XKe=Xm(86);var Ia=Re("$ZodCheck",(t,A)=>{var e;t._zod??(t._zod={}),t._zod.def=A,(e=t._zod).onattach??(e.onattach=[])}),wre={number:"number",bigint:"bigint",object:"date"},SD=Re("$ZodCheckLessThan",(t,A)=>{Ia.init(t,A);let e=wre[typeof A.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(A.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;A.value{(A.inclusive?i.value<=A.value:i.value{Ia.init(t,A);let e=wre[typeof A.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(A.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;A.value>o&&(A.inclusive?n.minimum=A.value:n.exclusiveMinimum=A.value)}),t._zod.check=i=>{(A.inclusive?i.value>=A.value:i.value>A.value)||i.issues.push({origin:e,code:"too_small",minimum:typeof A.value=="object"?A.value.getTime():A.value,input:i.value,inclusive:A.inclusive,inst:t,continue:!A.abort})}}),NG=Re("$ZodCheckMultipleOf",(t,A)=>{Ia.init(t,A),t._zod.onattach.push(e=>{var i;(i=e._zod.bag).multipleOf??(i.multipleOf=A.value)}),t._zod.check=e=>{if(typeof e.value!=typeof A.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof e.value=="bigint"?e.value%A.value===BigInt(0):PL(e.value,A.value)===0)||e.issues.push({origin:typeof e.value,code:"not_multiple_of",divisor:A.value,input:e.value,inst:t,continue:!A.abort})}}),FG=Re("$ZodCheckNumberFormat",(t,A)=>{Ia.init(t,A),A.format=A.format||"float64";let e=A.format?.includes("int"),i=e?"int":"number",[n,o]=XL[A.format];t._zod.onattach.push(a=>{let r=a._zod.bag;r.format=A.format,r.minimum=n,r.maximum=o,e&&(r.pattern=MG)}),t._zod.check=a=>{let r=a.value;if(e){if(!Number.isInteger(r)){a.issues.push({expected:i,format:A.format,code:"invalid_type",continue:!1,input:r,inst:t});return}if(!Number.isSafeInteger(r)){r>0?a.issues.push({input:r,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,inclusive:!0,continue:!A.abort}):a.issues.push({input:r,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,inclusive:!0,continue:!A.abort});return}}ro&&a.issues.push({origin:"number",input:r,code:"too_big",maximum:o,inclusive:!0,inst:t,continue:!A.abort})}}),LG=Re("$ZodCheckBigIntFormat",(t,A)=>{Ia.init(t,A);let[e,i]=$L[A.format];t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=A.format,o.minimum=e,o.maximum=i}),t._zod.check=n=>{let o=n.value;oi&&n.issues.push({origin:"bigint",input:o,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!A.abort})}}),GG=Re("$ZodCheckMaxSize",(t,A)=>{var e;Ia.init(t,A),(e=t._zod.def).when??(e.when=i=>{let n=i.value;return!z2(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;A.maximum{let n=i.value;n.size<=A.maximum||i.issues.push({origin:Pm(n),code:"too_big",maximum:A.maximum,inclusive:!0,input:n,inst:t,continue:!A.abort})}}),KG=Re("$ZodCheckMinSize",(t,A)=>{var e;Ia.init(t,A),(e=t._zod.def).when??(e.when=i=>{let n=i.value;return!z2(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;A.minimum>n&&(i._zod.bag.minimum=A.minimum)}),t._zod.check=i=>{let n=i.value;n.size>=A.minimum||i.issues.push({origin:Pm(n),code:"too_small",minimum:A.minimum,inclusive:!0,input:n,inst:t,continue:!A.abort})}}),UG=Re("$ZodCheckSizeEquals",(t,A)=>{var e;Ia.init(t,A),(e=t._zod.def).when??(e.when=i=>{let n=i.value;return!z2(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=A.size,n.maximum=A.size,n.size=A.size}),t._zod.check=i=>{let n=i.value,o=n.size;if(o===A.size)return;let a=o>A.size;i.issues.push(Ye(Y({origin:Pm(n)},a?{code:"too_big",maximum:A.size}:{code:"too_small",minimum:A.size}),{inclusive:!0,exact:!0,input:i.value,inst:t,continue:!A.abort}))}}),TG=Re("$ZodCheckMaxLength",(t,A)=>{var e;Ia.init(t,A),(e=t._zod.def).when??(e.when=i=>{let n=i.value;return!z2(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;A.maximum{let n=i.value;if(n.length<=A.maximum)return;let a=jm(n);i.issues.push({origin:a,code:"too_big",maximum:A.maximum,inclusive:!0,input:n,inst:t,continue:!A.abort})}}),OG=Re("$ZodCheckMinLength",(t,A)=>{var e;Ia.init(t,A),(e=t._zod.def).when??(e.when=i=>{let n=i.value;return!z2(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;A.minimum>n&&(i._zod.bag.minimum=A.minimum)}),t._zod.check=i=>{let n=i.value;if(n.length>=A.minimum)return;let a=jm(n);i.issues.push({origin:a,code:"too_small",minimum:A.minimum,inclusive:!0,input:n,inst:t,continue:!A.abort})}}),JG=Re("$ZodCheckLengthEquals",(t,A)=>{var e;Ia.init(t,A),(e=t._zod.def).when??(e.when=i=>{let n=i.value;return!z2(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=A.length,n.maximum=A.length,n.length=A.length}),t._zod.check=i=>{let n=i.value,o=n.length;if(o===A.length)return;let a=jm(n),r=o>A.length;i.issues.push(Ye(Y({origin:a},r?{code:"too_big",maximum:A.length}:{code:"too_small",minimum:A.length}),{inclusive:!0,exact:!0,input:i.value,inst:t,continue:!A.abort}))}}),wE=Re("$ZodCheckStringFormat",(t,A)=>{var e,i;Ia.init(t,A),t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=A.format,A.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(A.pattern))}),A.pattern?(e=t._zod).check??(e.check=n=>{A.pattern.lastIndex=0,!A.pattern.test(n.value)&&n.issues.push(Ye(Y({origin:"string",code:"invalid_format",format:A.format,input:n.value},A.pattern?{pattern:A.pattern.toString()}:{}),{inst:t,continue:!A.abort}))}):(i=t._zod).check??(i.check=()=>{})}),zG=Re("$ZodCheckRegex",(t,A)=>{wE.init(t,A),t._zod.check=e=>{A.pattern.lastIndex=0,!A.pattern.test(e.value)&&e.issues.push({origin:"string",code:"invalid_format",format:"regex",input:e.value,pattern:A.pattern.toString(),inst:t,continue:!A.abort})}}),YG=Re("$ZodCheckLowerCase",(t,A)=>{A.pattern??(A.pattern=xG),wE.init(t,A)}),HG=Re("$ZodCheckUpperCase",(t,A)=>{A.pattern??(A.pattern=RG),wE.init(t,A)}),PG=Re("$ZodCheckIncludes",(t,A)=>{Ia.init(t,A);let e=zc(A.includes),i=new RegExp(typeof A.position=="number"?`^.{${A.position}}${e}`:e);A.pattern=i,t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(i)}),t._zod.check=n=>{n.value.includes(A.includes,A.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:A.includes,input:n.value,inst:t,continue:!A.abort})}}),jG=Re("$ZodCheckStartsWith",(t,A)=>{Ia.init(t,A);let e=new RegExp(`^${zc(A.prefix)}.*`);A.pattern??(A.pattern=e),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(e)}),t._zod.check=i=>{i.value.startsWith(A.prefix)||i.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:A.prefix,input:i.value,inst:t,continue:!A.abort})}}),VG=Re("$ZodCheckEndsWith",(t,A)=>{Ia.init(t,A);let e=new RegExp(`.*${zc(A.suffix)}$`);A.pattern??(A.pattern=e),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(e)}),t._zod.check=i=>{i.value.endsWith(A.suffix)||i.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:A.suffix,input:i.value,inst:t,continue:!A.abort})}});function fre(t,A,e){t.issues.length&&A.issues.push(...xl(e,t.issues))}var qG=Re("$ZodCheckProperty",(t,A)=>{Ia.init(t,A),t._zod.check=e=>{let i=A.schema._zod.run({value:e.value[A.property],issues:[]},{});if(i instanceof Promise)return i.then(n=>fre(n,e,A.property));fre(i,e,A.property)}}),ZG=Re("$ZodCheckMimeType",(t,A)=>{Ia.init(t,A);let e=new Set(A.mime);t._zod.onattach.push(i=>{i._zod.bag.mime=A.mime}),t._zod.check=i=>{e.has(i.value.type)||i.issues.push({code:"invalid_value",values:A.mime,input:i.value.type,inst:t,continue:!A.abort})}}),WG=Re("$ZodCheckOverwrite",(t,A)=>{Ia.init(t,A),t._zod.check=e=>{e.value=A.tx(e.value)}});var $m=class{constructor(A=[]){this.content=[],this.indent=0,this&&(this.args=A)}indented(A){this.indent+=1,A(this),this.indent-=1}write(A){if(typeof A=="function"){A(this,{execution:"sync"}),A(this,{execution:"async"});return}let i=A.split(` +`).filter(a=>a),n=Math.min(...i.map(a=>a.length-a.trimStart().length)),o=i.map(a=>a.slice(n)).map(a=>" ".repeat(this.indent*2)+a);for(let a of o)this.content.push(a)}compile(){let A=Function,e=this?.args,n=[...(this?.content??[""]).map(o=>` ${o}`)];return new A(...e,n.join(` +`))}};var XG={major:4,minor:4,patch:3};var Ki=Re("$ZodType",(t,A)=>{var e;t??(t={}),t._zod.def=A,t._zod.bag=t._zod.bag||{},t._zod.version=XG;let i=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&i.unshift(t);for(let n of i)for(let o of n._zod.onattach)o(t);if(i.length===0)(e=t._zod).deferred??(e.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let n=(a,r,s)=>{let l=P2(a),c;for(let C of r){if(C._zod.def.when){if(eG(a)||!C._zod.def.when(a))continue}else if(l)continue;let d=a.issues.length,B=C._zod.check(a);if(B instanceof Promise&&s?.async===!1)throw new Hg;if(c||B instanceof Promise)c=(c??Promise.resolve()).then(()=>nA(null,null,function*(){yield B,a.issues.length!==d&&(l||(l=P2(a,d)))}));else{if(a.issues.length===d)continue;l||(l=P2(a,d))}}return c?c.then(()=>a):a},o=(a,r,s)=>{if(P2(a))return a.aborted=!0,a;let l=n(r,i,s);if(l instanceof Promise){if(s.async===!1)throw new Hg;return l.then(c=>t._zod.parse(c,s))}return t._zod.parse(l,s)};t._zod.run=(a,r)=>{if(r.skipChecks)return t._zod.parse(a,r);if(r.direction==="backward"){let l=t._zod.parse({value:a.value,issues:[]},Ye(Y({},r),{skipChecks:!0}));return l instanceof Promise?l.then(c=>o(c,a,r)):o(l,a,r)}let s=t._zod.parse(a,r);if(s instanceof Promise){if(r.async===!1)throw new Hg;return s.then(l=>n(l,i,r))}return n(s,i,r)}}fn(t,"~standard",()=>({validate:n=>{try{let o=iG(t,n);return o.success?{value:o.data}:{issues:o.error?.issues}}catch(o){return nG(t,n).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),j1=Re("$ZodString",(t,A)=>{Ki.init(t,A),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??DG(t._zod.bag),t._zod.parse=(e,i)=>{if(A.coerce)try{e.value=String(e.value)}catch(n){}return typeof e.value=="string"||e.issues.push({expected:"string",code:"invalid_type",input:e.value,inst:t}),e}}),oa=Re("$ZodStringFormat",(t,A)=>{wE.init(t,A),j1.init(t,A)}),eK=Re("$ZodGUID",(t,A)=>{A.pattern??(A.pattern=CG),oa.init(t,A)}),AK=Re("$ZodUUID",(t,A)=>{if(A.version){let i={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[A.version];if(i===void 0)throw new Error(`Invalid UUID version: "${A.version}"`);A.pattern??(A.pattern=P1(i))}else A.pattern??(A.pattern=P1());oa.init(t,A)}),tK=Re("$ZodEmail",(t,A)=>{A.pattern??(A.pattern=dG),oa.init(t,A)}),iK=Re("$ZodURL",(t,A)=>{oa.init(t,A),t._zod.check=e=>{try{let i=e.value.trim();if(!A.normalize&&A.protocol?.source===mG.source&&!/^https?:\/\//i.test(i)){e.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:e.value,inst:t,continue:!A.abort});return}let n=new URL(i);A.hostname&&(A.hostname.lastIndex=0,A.hostname.test(n.hostname)||e.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:A.hostname.source,input:e.value,inst:t,continue:!A.abort})),A.protocol&&(A.protocol.lastIndex=0,A.protocol.test(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.protocol)||e.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:A.protocol.source,input:e.value,inst:t,continue:!A.abort})),A.normalize?e.value=n.href:e.value=i;return}catch(i){e.issues.push({code:"invalid_format",format:"url",input:e.value,inst:t,continue:!A.abort})}}}),nK=Re("$ZodEmoji",(t,A)=>{A.pattern??(A.pattern=IG()),oa.init(t,A)}),oK=Re("$ZodNanoID",(t,A)=>{A.pattern??(A.pattern=cG),oa.init(t,A)}),aK=Re("$ZodCUID",(t,A)=>{A.pattern??(A.pattern=oG),oa.init(t,A)}),rK=Re("$ZodCUID2",(t,A)=>{A.pattern??(A.pattern=aG),oa.init(t,A)}),sK=Re("$ZodULID",(t,A)=>{A.pattern??(A.pattern=rG),oa.init(t,A)}),lK=Re("$ZodXID",(t,A)=>{A.pattern??(A.pattern=sG),oa.init(t,A)}),cK=Re("$ZodKSUID",(t,A)=>{A.pattern??(A.pattern=lG),oa.init(t,A)}),gK=Re("$ZodISODateTime",(t,A)=>{A.pattern??(A.pattern=vG(A)),oa.init(t,A)}),CK=Re("$ZodISODate",(t,A)=>{A.pattern??(A.pattern=wG),oa.init(t,A)}),dK=Re("$ZodISOTime",(t,A)=>{A.pattern??(A.pattern=yG(A)),oa.init(t,A)}),IK=Re("$ZodISODuration",(t,A)=>{A.pattern??(A.pattern=gG),oa.init(t,A)}),BK=Re("$ZodIPv4",(t,A)=>{A.pattern??(A.pattern=BG),oa.init(t,A),t._zod.bag.format="ipv4"}),hK=Re("$ZodIPv6",(t,A)=>{A.pattern??(A.pattern=hG),oa.init(t,A),t._zod.bag.format="ipv6",t._zod.check=e=>{try{new URL(`http://[${e.value}]`)}catch(i){e.issues.push({code:"invalid_format",format:"ipv6",input:e.value,inst:t,continue:!A.abort})}}}),uK=Re("$ZodMAC",(t,A)=>{A.pattern??(A.pattern=uG(A.delimiter)),oa.init(t,A),t._zod.bag.format="mac"}),EK=Re("$ZodCIDRv4",(t,A)=>{A.pattern??(A.pattern=EG),oa.init(t,A)}),QK=Re("$ZodCIDRv6",(t,A)=>{A.pattern??(A.pattern=QG),oa.init(t,A),t._zod.check=e=>{let i=e.value.split("/");try{if(i.length!==2)throw new Error;let[n,o]=i;if(!o)throw new Error;let a=Number(o);if(`${a}`!==o)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${n}]`)}catch(n){e.issues.push({code:"invalid_format",format:"cidrv6",input:e.value,inst:t,continue:!A.abort})}}});function pK(t){if(t==="")return!0;if(/\s/.test(t)||t.length%4!==0)return!1;try{return atob(t),!0}catch(A){return!1}}var mK=Re("$ZodBase64",(t,A)=>{A.pattern??(A.pattern=pG),oa.init(t,A),t._zod.bag.contentEncoding="base64",t._zod.check=e=>{pK(e.value)||e.issues.push({code:"invalid_format",format:"base64",input:e.value,inst:t,continue:!A.abort})}});function Ure(t){if(!bD.test(t))return!1;let A=t.replace(/[-_]/g,i=>i==="-"?"+":"/"),e=A.padEnd(Math.ceil(A.length/4)*4,"=");return pK(e)}var fK=Re("$ZodBase64URL",(t,A)=>{A.pattern??(A.pattern=bD),oa.init(t,A),t._zod.bag.contentEncoding="base64url",t._zod.check=e=>{Ure(e.value)||e.issues.push({code:"invalid_format",format:"base64url",input:e.value,inst:t,continue:!A.abort})}}),wK=Re("$ZodE164",(t,A)=>{A.pattern??(A.pattern=fG),oa.init(t,A)});function Tre(t,A=null){try{let e=t.split(".");if(e.length!==3)return!1;let[i]=e;if(!i)return!1;let n=JSON.parse(atob(i));return!("typ"in n&&n?.typ!=="JWT"||!n.alg||A&&(!("alg"in n)||n.alg!==A))}catch(e){return!1}}var yK=Re("$ZodJWT",(t,A)=>{oa.init(t,A),t._zod.check=e=>{Tre(e.value,A.alg)||e.issues.push({code:"invalid_format",format:"jwt",input:e.value,inst:t,continue:!A.abort})}}),vK=Re("$ZodCustomStringFormat",(t,A)=>{oa.init(t,A),t._zod.check=e=>{A.fn(e.value)||e.issues.push({code:"invalid_format",format:A.format,input:e.value,inst:t,continue:!A.abort})}}),FD=Re("$ZodNumber",(t,A)=>{Ki.init(t,A),t._zod.pattern=t._zod.bag.pattern??MD,t._zod.parse=(e,i)=>{if(A.coerce)try{e.value=Number(e.value)}catch(a){}let n=e.value;if(typeof n=="number"&&!Number.isNaN(n)&&Number.isFinite(n))return e;let o=typeof n=="number"?Number.isNaN(n)?"NaN":Number.isFinite(n)?void 0:"Infinity":void 0;return e.issues.push(Y({expected:"number",code:"invalid_type",input:n,inst:t},o?{received:o}:{})),e}}),DK=Re("$ZodNumberFormat",(t,A)=>{FG.init(t,A),FD.init(t,A)}),ef=Re("$ZodBoolean",(t,A)=>{Ki.init(t,A),t._zod.pattern=SG,t._zod.parse=(e,i)=>{if(A.coerce)try{e.value=!!e.value}catch(o){}let n=e.value;return typeof n=="boolean"||e.issues.push({expected:"boolean",code:"invalid_type",input:n,inst:t}),e}}),LD=Re("$ZodBigInt",(t,A)=>{Ki.init(t,A),t._zod.pattern=bG,t._zod.parse=(e,i)=>{if(A.coerce)try{e.value=BigInt(e.value)}catch(n){}return typeof e.value=="bigint"||e.issues.push({expected:"bigint",code:"invalid_type",input:e.value,inst:t}),e}}),bK=Re("$ZodBigIntFormat",(t,A)=>{LG.init(t,A),LD.init(t,A)}),MK=Re("$ZodSymbol",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value;return typeof n=="symbol"||e.issues.push({expected:"symbol",code:"invalid_type",input:n,inst:t}),e}}),SK=Re("$ZodUndefined",(t,A)=>{Ki.init(t,A),t._zod.pattern=_G,t._zod.values=new Set([void 0]),t._zod.parse=(e,i)=>{let n=e.value;return typeof n>"u"||e.issues.push({expected:"undefined",code:"invalid_type",input:n,inst:t}),e}}),kK=Re("$ZodNull",(t,A)=>{Ki.init(t,A),t._zod.pattern=kG,t._zod.values=new Set([null]),t._zod.parse=(e,i)=>{let n=e.value;return n===null||e.issues.push({expected:"null",code:"invalid_type",input:n,inst:t}),e}}),_K=Re("$ZodAny",(t,A)=>{Ki.init(t,A),t._zod.parse=e=>e}),xK=Re("$ZodUnknown",(t,A)=>{Ki.init(t,A),t._zod.parse=e=>e}),RK=Re("$ZodNever",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>(e.issues.push({expected:"never",code:"invalid_type",input:e.value,inst:t}),e)}),NK=Re("$ZodVoid",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value;return typeof n>"u"||e.issues.push({expected:"void",code:"invalid_type",input:n,inst:t}),e}}),FK=Re("$ZodDate",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{if(A.coerce)try{e.value=new Date(e.value)}catch(r){}let n=e.value,o=n instanceof Date;return o&&!Number.isNaN(n.getTime())||e.issues.push(Ye(Y({expected:"date",code:"invalid_type",input:n},o?{received:"Invalid Date"}:{}),{inst:t})),e}});function vre(t,A,e){t.issues.length&&A.issues.push(...xl(e,t.issues)),A.value[e]=t.value}var LK=Re("$ZodArray",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value;if(!Array.isArray(n))return e.issues.push({expected:"array",code:"invalid_type",input:n,inst:t}),e;e.value=Array(n.length);let o=[];for(let a=0;avre(l,e,a))):vre(s,e,a)}return o.length?Promise.all(o).then(()=>e):e}});function ND(t,A,e,i,n,o){let a=e in i;if(t.issues.length){if(n&&o&&!a)return;A.issues.push(...xl(e,t.issues))}if(!a&&!n){t.issues.length||A.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[e]});return}t.value===void 0?a&&(A.value[e]=void 0):A.value[e]=t.value}function Ore(t){let A=Object.keys(t.shape);for(let i of A)if(!t.shape?.[i]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${i}": expected a Zod schema`);let e=WL(t.shape);return Ye(Y({},t),{keys:A,keySet:new Set(A),numKeys:A.length,optionalKeys:new Set(e)})}function Jre(t,A,e,i,n,o){let a=[],r=n.keySet,s=n.catchall._zod,l=s.def.type,c=s.optin==="optional",C=s.optout==="optional";for(let d in A){if(d==="__proto__"||r.has(d))continue;if(l==="never"){a.push(d);continue}let B=s.run({value:A[d],issues:[]},i);B instanceof Promise?t.push(B.then(E=>ND(E,e,d,A,c,C))):ND(B,e,d,A,c,C)}return a.length&&e.issues.push({code:"unrecognized_keys",keys:a,input:A,inst:o}),t.length?Promise.all(t).then(()=>e):e}var zre=Re("$ZodObject",(t,A)=>{if(Ki.init(t,A),!Object.getOwnPropertyDescriptor(A,"shape")?.get){let r=A.shape;Object.defineProperty(A,"shape",{get:()=>{let s=Y({},r);return Object.defineProperty(A,"shape",{value:s}),s}})}let i=uE(()=>Ore(A));fn(t._zod,"propValues",()=>{let r=A.shape,s={};for(let l in r){let c=r[l]._zod;if(c.values){s[l]??(s[l]=new Set);for(let C of c.values)s[l].add(C)}}return s});let n=H1,o=A.catchall,a;t._zod.parse=(r,s)=>{a??(a=i.value);let l=r.value;if(!n(l))return r.issues.push({expected:"object",code:"invalid_type",input:l,inst:t}),r;r.value={};let c=[],C=a.shape;for(let d of a.keys){let B=C[d],E=B._zod.optin==="optional",u=B._zod.optout==="optional",m=B._zod.run({value:l[d],issues:[]},s);m instanceof Promise?c.push(m.then(f=>ND(f,r,d,l,E,u))):ND(m,r,d,l,E,u)}return o?Jre(c,l,r,s,i.value,t):c.length?Promise.all(c).then(()=>r):r}}),GK=Re("$ZodObjectJIT",(t,A)=>{zre.init(t,A);let e=t._zod.parse,i=uE(()=>Ore(A)),n=d=>{let B=new $m(["shape","payload","ctx"]),E=i.value,u=S=>{let k=BD(S);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};B.write("const input = payload.value;");let m=Object.create(null),f=0;for(let S of E.keys)m[S]=`key_${f++}`;B.write("const newResult = {};");for(let S of E.keys){let k=m[S],b=BD(S),x=d[S],F=x?._zod?.optin==="optional",P=x?._zod?.optout==="optional";B.write(`const ${k} = ${u(S)};`),F&&P?B.write(` + if (${k}.issues.length) { + if (${b} in input) { + payload.issues = payload.issues.concat(${k}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${b}, ...iss.path] : [${b}] + }))); + } + } + + if (${k}.value === undefined) { + if (${b} in input) { + newResult[${b}] = undefined; + } + } else { + newResult[${b}] = ${k}.value; + } + + `):F?B.write(` + if (${k}.issues.length) { + payload.issues = payload.issues.concat(${k}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${b}, ...iss.path] : [${b}] + }))); + } + + if (${k}.value === undefined) { + if (${b} in input) { + newResult[${b}] = undefined; + } + } else { + newResult[${b}] = ${k}.value; + } + + `):B.write(` + const ${k}_present = ${b} in input; + if (${k}.issues.length) { + payload.issues = payload.issues.concat(${k}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${b}, ...iss.path] : [${b}] + }))); + } + if (!${k}_present && !${k}.issues.length) { + payload.issues.push({ + code: "invalid_type", + expected: "nonoptional", + input: undefined, + path: [${b}] + }); + } + + if (${k}_present) { + if (${k}.value === undefined) { + newResult[${b}] = undefined; + } else { + newResult[${b}] = ${k}.value; + } + } + + `)}B.write("payload.value = newResult;"),B.write("return payload;");let D=B.compile();return(S,k)=>D(d,S,k)},o,a=H1,r=!Y1.jitless,l=r&&VL.value,c=A.catchall,C;t._zod.parse=(d,B)=>{C??(C=i.value);let E=d.value;return a(E)?r&&l&&B?.async===!1&&B.jitless!==!0?(o||(o=n(A.shape)),d=o(d,B),c?Jre([],E,d,B,C,t):d):e(d,B):(d.issues.push({expected:"object",code:"invalid_type",input:E,inst:t}),d)}});function Dre(t,A,e,i){for(let o of t)if(o.issues.length===0)return A.value=o.value,A;let n=t.filter(o=>!P2(o));return n.length===1?(A.value=n[0].value,n[0]):(A.issues.push({code:"invalid_union",input:A.value,inst:e,errors:t.map(o=>o.issues.map(a=>Vs(a,i,Xa())))}),A)}var Af=Re("$ZodUnion",(t,A)=>{Ki.init(t,A),fn(t._zod,"optin",()=>A.options.some(i=>i._zod.optin==="optional")?"optional":void 0),fn(t._zod,"optout",()=>A.options.some(i=>i._zod.optout==="optional")?"optional":void 0),fn(t._zod,"values",()=>{if(A.options.every(i=>i._zod.values))return new Set(A.options.flatMap(i=>Array.from(i._zod.values)))}),fn(t._zod,"pattern",()=>{if(A.options.every(i=>i._zod.pattern)){let i=A.options.map(n=>n._zod.pattern);return new RegExp(`^(${i.map(n=>Ym(n.source)).join("|")})$`)}});let e=A.options.length===1?A.options[0]._zod.run:null;t._zod.parse=(i,n)=>{if(e)return e(i,n);let o=!1,a=[];for(let r of A.options){let s=r._zod.run({value:i.value,issues:[]},n);if(s instanceof Promise)a.push(s),o=!0;else{if(s.issues.length===0)return s;a.push(s)}}return o?Promise.all(a).then(r=>Dre(r,i,t,n)):Dre(a,i,t,n)}});function bre(t,A,e,i){let n=t.filter(o=>o.issues.length===0);return n.length===1?(A.value=n[0].value,A):(n.length===0?A.issues.push({code:"invalid_union",input:A.value,inst:e,errors:t.map(o=>o.issues.map(a=>Vs(a,i,Xa())))}):A.issues.push({code:"invalid_union",input:A.value,inst:e,errors:[],inclusive:!1}),A)}var KK=Re("$ZodXor",(t,A)=>{Af.init(t,A),A.inclusive=!1;let e=A.options.length===1?A.options[0]._zod.run:null;t._zod.parse=(i,n)=>{if(e)return e(i,n);let o=!1,a=[];for(let r of A.options){let s=r._zod.run({value:i.value,issues:[]},n);s instanceof Promise?(a.push(s),o=!0):a.push(s)}return o?Promise.all(a).then(r=>bre(r,i,t,n)):bre(a,i,t,n)}}),UK=Re("$ZodDiscriminatedUnion",(t,A)=>{A.inclusive=!1,Af.init(t,A);let e=t._zod.parse;fn(t._zod,"propValues",()=>{let n={};for(let o of A.options){let a=o._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${A.options.indexOf(o)}"`);for(let[r,s]of Object.entries(a)){n[r]||(n[r]=new Set);for(let l of s)n[r].add(l)}}return n});let i=uE(()=>{let n=A.options,o=new Map;for(let a of n){let r=a._zod.propValues?.[A.discriminator];if(!r||r.size===0)throw new Error(`Invalid discriminated union option at index "${A.options.indexOf(a)}"`);for(let s of r){if(o.has(s))throw new Error(`Duplicate discriminator value "${String(s)}"`);o.set(s,a)}}return o});t._zod.parse=(n,o)=>{let a=n.value;if(!H1(a))return n.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),n;let r=i.value.get(a?.[A.discriminator]);return r?r._zod.run(n,o):A.unionFallback||o.direction==="backward"?e(n,o):(n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:A.discriminator,options:Array.from(i.value.keys()),input:a,path:[A.discriminator],inst:t}),n)}}),TK=Re("$ZodIntersection",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value,o=A.left._zod.run({value:n,issues:[]},i),a=A.right._zod.run({value:n,issues:[]},i);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([s,l])=>Mre(e,s,l)):Mre(e,o,a)}});function $G(t,A){if(t===A)return{valid:!0,data:t};if(t instanceof Date&&A instanceof Date&&+t==+A)return{valid:!0,data:t};if(H2(t)&&H2(A)){let e=Object.keys(A),i=Object.keys(t).filter(o=>e.indexOf(o)!==-1),n=Y(Y({},t),A);for(let o of i){let a=$G(t[o],A[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};n[o]=a.data}return{valid:!0,data:n}}if(Array.isArray(t)&&Array.isArray(A)){if(t.length!==A.length)return{valid:!1,mergeErrorPath:[]};let e=[];for(let i=0;ir.l&&r.r).map(([r])=>r);if(o.length&&n&&t.issues.push(Ye(Y({},n),{keys:o})),P2(t))return t;let a=$G(A.value,e.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return t.value=a.data,t}var GD=Re("$ZodTuple",(t,A)=>{Ki.init(t,A);let e=A.items;t._zod.parse=(i,n)=>{let o=i.value;if(!Array.isArray(o))return i.issues.push({input:o,inst:t,expected:"tuple",code:"invalid_type"}),i;i.value=[];let a=[],r=Sre(e,"optin"),s=Sre(e,"optout");if(!A.rest){if(o.lengthe.length&&i.issues.push({code:"too_big",maximum:e.length,inclusive:!0,input:o,inst:t,origin:"array"})}let l=new Array(e.length);for(let c=0;c{l[c]=d})):l[c]=C}if(A.rest){let c=e.length-1,C=o.slice(e.length);for(let d of C){c++;let B=A.rest._zod.run({value:d,issues:[]},n);B instanceof Promise?a.push(B.then(E=>kre(E,i,c))):kre(B,i,c)}}return a.length?Promise.all(a).then(()=>_re(l,i,e,o,s)):_re(l,i,e,o,s)}});function Sre(t,A){for(let e=t.length-1;e>=0;e--)if(t[e]._zod[A]!=="optional")return e+1;return 0}function kre(t,A,e){t.issues.length&&A.issues.push(...xl(e,t.issues)),A.value[e]=t.value}function _re(t,A,e,i,n){for(let o=0;o=n){A.value.length=o;break}A.issues.push(...xl(o,a.issues))}A.value[o]=a.value}for(let o=A.value.length-1;o>=i.length&&(e[o]._zod.optout==="optional"&&A.value[o]===void 0);o--)A.value.length=o;return A}var OK=Re("$ZodRecord",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value;if(!H2(n))return e.issues.push({expected:"record",code:"invalid_type",input:n,inst:t}),e;let o=[],a=A.keyType._zod.values;if(a){e.value={};let r=new Set;for(let l of a)if(typeof l=="string"||typeof l=="number"||typeof l=="symbol"){r.add(typeof l=="number"?l.toString():l);let c=A.keyType._zod.run({value:l,issues:[]},i);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(c.issues.length){e.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(B=>Vs(B,i,Xa())),input:l,path:[l],inst:t});continue}let C=c.value,d=A.valueType._zod.run({value:n[l],issues:[]},i);d instanceof Promise?o.push(d.then(B=>{B.issues.length&&e.issues.push(...xl(l,B.issues)),e.value[C]=B.value})):(d.issues.length&&e.issues.push(...xl(l,d.issues)),e.value[C]=d.value)}let s;for(let l in n)r.has(l)||(s=s??[],s.push(l));s&&s.length>0&&e.issues.push({code:"unrecognized_keys",input:n,inst:t,keys:s})}else{e.value={};for(let r of Reflect.ownKeys(n)){if(r==="__proto__"||!Object.prototype.propertyIsEnumerable.call(n,r))continue;let s=A.keyType._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof r=="string"&&MD.test(r)&&s.issues.length){let C=A.keyType._zod.run({value:Number(r),issues:[]},i);if(C instanceof Promise)throw new Error("Async schemas not supported in object keys currently");C.issues.length===0&&(s=C)}if(s.issues.length){A.mode==="loose"?e.value[r]=n[r]:e.issues.push({code:"invalid_key",origin:"record",issues:s.issues.map(C=>Vs(C,i,Xa())),input:r,path:[r],inst:t});continue}let c=A.valueType._zod.run({value:n[r],issues:[]},i);c instanceof Promise?o.push(c.then(C=>{C.issues.length&&e.issues.push(...xl(r,C.issues)),e.value[s.value]=C.value})):(c.issues.length&&e.issues.push(...xl(r,c.issues)),e.value[s.value]=c.value)}}return o.length?Promise.all(o).then(()=>e):e}}),JK=Re("$ZodMap",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value;if(!(n instanceof Map))return e.issues.push({expected:"map",code:"invalid_type",input:n,inst:t}),e;let o=[];e.value=new Map;for(let[a,r]of n){let s=A.keyType._zod.run({value:a,issues:[]},i),l=A.valueType._zod.run({value:r,issues:[]},i);s instanceof Promise||l instanceof Promise?o.push(Promise.all([s,l]).then(([c,C])=>{xre(c,C,e,a,n,t,i)})):xre(s,l,e,a,n,t,i)}return o.length?Promise.all(o).then(()=>e):e}});function xre(t,A,e,i,n,o,a){t.issues.length&&(Hm.has(typeof i)?e.issues.push(...xl(i,t.issues)):e.issues.push({code:"invalid_key",origin:"map",input:n,inst:o,issues:t.issues.map(r=>Vs(r,a,Xa()))})),A.issues.length&&(Hm.has(typeof i)?e.issues.push(...xl(i,A.issues)):e.issues.push({origin:"map",code:"invalid_element",input:n,inst:o,key:i,issues:A.issues.map(r=>Vs(r,a,Xa()))})),e.value.set(t.value,A.value)}var zK=Re("$ZodSet",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value;if(!(n instanceof Set))return e.issues.push({input:n,inst:t,expected:"set",code:"invalid_type"}),e;let o=[];e.value=new Set;for(let a of n){let r=A.valueType._zod.run({value:a,issues:[]},i);r instanceof Promise?o.push(r.then(s=>Rre(s,e))):Rre(r,e)}return o.length?Promise.all(o).then(()=>e):e}});function Rre(t,A){t.issues.length&&A.issues.push(...t.issues),A.value.add(t.value)}var YK=Re("$ZodEnum",(t,A)=>{Ki.init(t,A);let e=zm(A.entries),i=new Set(e);t._zod.values=i,t._zod.pattern=new RegExp(`^(${e.filter(n=>Hm.has(typeof n)).map(n=>typeof n=="string"?zc(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let a=n.value;return i.has(a)||n.issues.push({code:"invalid_value",values:e,input:a,inst:t}),n}}),HK=Re("$ZodLiteral",(t,A)=>{if(Ki.init(t,A),A.values.length===0)throw new Error("Cannot create literal schema with no valid values");let e=new Set(A.values);t._zod.values=e,t._zod.pattern=new RegExp(`^(${A.values.map(i=>typeof i=="string"?zc(i):i?zc(i.toString()):String(i)).join("|")})$`),t._zod.parse=(i,n)=>{let o=i.value;return e.has(o)||i.issues.push({code:"invalid_value",values:A.values,input:o,inst:t}),i}}),PK=Re("$ZodFile",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{let n=e.value;return n instanceof File||e.issues.push({expected:"file",code:"invalid_type",input:n,inst:t}),e}}),jK=Re("$ZodTransform",(t,A)=>{Ki.init(t,A),t._zod.optin="optional",t._zod.parse=(e,i)=>{if(i.direction==="backward")throw new J2(t.constructor.name);let n=A.transform(e.value,e);if(i.async)return(n instanceof Promise?n:Promise.resolve(n)).then(a=>(e.value=a,e.fallback=!0,e));if(n instanceof Promise)throw new Hg;return e.value=n,e.fallback=!0,e}});function Nre(t,A){return A===void 0&&(t.issues.length||t.fallback)?{issues:[],value:void 0}:t}var KD=Re("$ZodOptional",(t,A)=>{Ki.init(t,A),t._zod.optin="optional",t._zod.optout="optional",fn(t._zod,"values",()=>A.innerType._zod.values?new Set([...A.innerType._zod.values,void 0]):void 0),fn(t._zod,"pattern",()=>{let e=A.innerType._zod.pattern;return e?new RegExp(`^(${Ym(e.source)})?$`):void 0}),t._zod.parse=(e,i)=>{if(A.innerType._zod.optin==="optional"){let n=e.value,o=A.innerType._zod.run(e,i);return o instanceof Promise?o.then(a=>Nre(a,n)):Nre(o,n)}return e.value===void 0?e:A.innerType._zod.run(e,i)}}),VK=Re("$ZodExactOptional",(t,A)=>{KD.init(t,A),fn(t._zod,"values",()=>A.innerType._zod.values),fn(t._zod,"pattern",()=>A.innerType._zod.pattern),t._zod.parse=(e,i)=>A.innerType._zod.run(e,i)}),qK=Re("$ZodNullable",(t,A)=>{Ki.init(t,A),fn(t._zod,"optin",()=>A.innerType._zod.optin),fn(t._zod,"optout",()=>A.innerType._zod.optout),fn(t._zod,"pattern",()=>{let e=A.innerType._zod.pattern;return e?new RegExp(`^(${Ym(e.source)}|null)$`):void 0}),fn(t._zod,"values",()=>A.innerType._zod.values?new Set([...A.innerType._zod.values,null]):void 0),t._zod.parse=(e,i)=>e.value===null?e:A.innerType._zod.run(e,i)}),ZK=Re("$ZodDefault",(t,A)=>{Ki.init(t,A),t._zod.optin="optional",fn(t._zod,"values",()=>A.innerType._zod.values),t._zod.parse=(e,i)=>{if(i.direction==="backward")return A.innerType._zod.run(e,i);if(e.value===void 0)return e.value=A.defaultValue,e;let n=A.innerType._zod.run(e,i);return n instanceof Promise?n.then(o=>Fre(o,A)):Fre(n,A)}});function Fre(t,A){return t.value===void 0&&(t.value=A.defaultValue),t}var WK=Re("$ZodPrefault",(t,A)=>{Ki.init(t,A),t._zod.optin="optional",fn(t._zod,"values",()=>A.innerType._zod.values),t._zod.parse=(e,i)=>(i.direction==="backward"||e.value===void 0&&(e.value=A.defaultValue),A.innerType._zod.run(e,i))}),XK=Re("$ZodNonOptional",(t,A)=>{Ki.init(t,A),fn(t._zod,"values",()=>{let e=A.innerType._zod.values;return e?new Set([...e].filter(i=>i!==void 0)):void 0}),t._zod.parse=(e,i)=>{let n=A.innerType._zod.run(e,i);return n instanceof Promise?n.then(o=>Lre(o,t)):Lre(n,t)}});function Lre(t,A){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:A}),t}var $K=Re("$ZodSuccess",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>{if(i.direction==="backward")throw new J2("ZodSuccess");let n=A.innerType._zod.run(e,i);return n instanceof Promise?n.then(o=>(e.value=o.issues.length===0,e)):(e.value=n.issues.length===0,e)}}),eU=Re("$ZodCatch",(t,A)=>{Ki.init(t,A),t._zod.optin="optional",fn(t._zod,"optout",()=>A.innerType._zod.optout),fn(t._zod,"values",()=>A.innerType._zod.values),t._zod.parse=(e,i)=>{if(i.direction==="backward")return A.innerType._zod.run(e,i);let n=A.innerType._zod.run(e,i);return n instanceof Promise?n.then(o=>(e.value=o.value,o.issues.length&&(e.value=A.catchValue(Ye(Y({},e),{error:{issues:o.issues.map(a=>Vs(a,i,Xa()))},input:e.value})),e.issues=[],e.fallback=!0),e)):(e.value=n.value,n.issues.length&&(e.value=A.catchValue(Ye(Y({},e),{error:{issues:n.issues.map(o=>Vs(o,i,Xa()))},input:e.value})),e.issues=[],e.fallback=!0),e)}}),AU=Re("$ZodNaN",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>((typeof e.value!="number"||!Number.isNaN(e.value))&&e.issues.push({input:e.value,inst:t,expected:"nan",code:"invalid_type"}),e)}),UD=Re("$ZodPipe",(t,A)=>{Ki.init(t,A),fn(t._zod,"values",()=>A.in._zod.values),fn(t._zod,"optin",()=>A.in._zod.optin),fn(t._zod,"optout",()=>A.out._zod.optout),fn(t._zod,"propValues",()=>A.in._zod.propValues),t._zod.parse=(e,i)=>{if(i.direction==="backward"){let o=A.out._zod.run(e,i);return o instanceof Promise?o.then(a=>_D(a,A.in,i)):_D(o,A.in,i)}let n=A.in._zod.run(e,i);return n instanceof Promise?n.then(o=>_D(o,A.out,i)):_D(n,A.out,i)}});function _D(t,A,e){return t.issues.length?(t.aborted=!0,t):A._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},e)}var tf=Re("$ZodCodec",(t,A)=>{Ki.init(t,A),fn(t._zod,"values",()=>A.in._zod.values),fn(t._zod,"optin",()=>A.in._zod.optin),fn(t._zod,"optout",()=>A.out._zod.optout),fn(t._zod,"propValues",()=>A.in._zod.propValues),t._zod.parse=(e,i)=>{if((i.direction||"forward")==="forward"){let o=A.in._zod.run(e,i);return o instanceof Promise?o.then(a=>xD(a,A,i)):xD(o,A,i)}else{let o=A.out._zod.run(e,i);return o instanceof Promise?o.then(a=>xD(a,A,i)):xD(o,A,i)}}});function xD(t,A,e){if(t.issues.length)return t.aborted=!0,t;if((e.direction||"forward")==="forward"){let n=A.transform(t.value,t);return n instanceof Promise?n.then(o=>RD(t,o,A.out,e)):RD(t,n,A.out,e)}else{let n=A.reverseTransform(t.value,t);return n instanceof Promise?n.then(o=>RD(t,o,A.in,e)):RD(t,n,A.in,e)}}function RD(t,A,e,i){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:A,issues:t.issues},i)}var tU=Re("$ZodPreprocess",(t,A)=>{UD.init(t,A)}),iU=Re("$ZodReadonly",(t,A)=>{Ki.init(t,A),fn(t._zod,"propValues",()=>A.innerType._zod.propValues),fn(t._zod,"values",()=>A.innerType._zod.values),fn(t._zod,"optin",()=>A.innerType?._zod?.optin),fn(t._zod,"optout",()=>A.innerType?._zod?.optout),t._zod.parse=(e,i)=>{if(i.direction==="backward")return A.innerType._zod.run(e,i);let n=A.innerType._zod.run(e,i);return n instanceof Promise?n.then(Gre):Gre(n)}});function Gre(t){return t.value=Object.freeze(t.value),t}var nU=Re("$ZodTemplateLiteral",(t,A)=>{Ki.init(t,A);let e=[];for(let i of A.parts)if(typeof i=="object"&&i!==null){if(!i._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...i._zod.traits].shift()}`);let n=i._zod.pattern instanceof RegExp?i._zod.pattern.source:i._zod.pattern;if(!n)throw new Error(`Invalid template literal part: ${i._zod.traits}`);let o=n.startsWith("^")?1:0,a=n.endsWith("$")?n.length-1:n.length;e.push(n.slice(o,a))}else if(i===null||ZL.has(typeof i))e.push(zc(`${i}`));else throw new Error(`Invalid template literal part: ${i}`);t._zod.pattern=new RegExp(`^${e.join("")}$`),t._zod.parse=(i,n)=>typeof i.value!="string"?(i.issues.push({input:i.value,inst:t,expected:"string",code:"invalid_type"}),i):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(i.value)||i.issues.push({input:i.value,inst:t,code:"invalid_format",format:A.format??"template_literal",pattern:t._zod.pattern.source}),i)}),oU=Re("$ZodFunction",(t,A)=>(Ki.init(t,A),t._def=A,t._zod.def=A,t.implement=e=>{if(typeof e!="function")throw new Error("implement() must be called with a function");return function(...i){let n=t._def.input?uD(t._def.input,i):i,o=Reflect.apply(e,this,n);return t._def.output?uD(t._def.output,o):o}},t.implementAsync=e=>{if(typeof e!="function")throw new Error("implementAsync() must be called with a function");return function(...i){return nA(this,null,function*(){let n=t._def.input?yield ED(t._def.input,i):i,o=yield Reflect.apply(e,this,n);return t._def.output?yield ED(t._def.output,o):o})}},t._zod.parse=(e,i)=>typeof e.value!="function"?(e.issues.push({code:"invalid_type",expected:"function",input:e.value,inst:t}),e):(t._def.output&&t._def.output._zod.def.type==="promise"?e.value=t.implementAsync(e.value):e.value=t.implement(e.value),e),t.input=(...e)=>{let i=t.constructor;return Array.isArray(e[0])?new i({type:"function",input:new GD({type:"tuple",items:e[0],rest:e[1]}),output:t._def.output}):new i({type:"function",input:e[0],output:t._def.output})},t.output=e=>{let i=t.constructor;return new i({type:"function",input:t._def.input,output:e})},t)),aU=Re("$ZodPromise",(t,A)=>{Ki.init(t,A),t._zod.parse=(e,i)=>Promise.resolve(e.value).then(n=>A.innerType._zod.run({value:n,issues:[]},i))}),rU=Re("$ZodLazy",(t,A)=>{Ki.init(t,A),fn(t._zod,"innerType",()=>{let e=A;return e._cachedInner||(e._cachedInner=A.getter()),e._cachedInner}),fn(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),fn(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),fn(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),fn(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(e,i)=>t._zod.innerType._zod.run(e,i)}),sU=Re("$ZodCustom",(t,A)=>{Ia.init(t,A),Ki.init(t,A),t._zod.parse=(e,i)=>e,t._zod.check=e=>{let i=e.value,n=A.fn(i);if(n instanceof Promise)return n.then(o=>Kre(o,e,i,t));Kre(n,e,i,t)}});function Kre(t,A,e,i){if(!t){let n={code:"custom",input:e,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(n.params=i._zod.def.params),A.issues.push(EE(n))}}var of={};eC(of,{ar:()=>Yre,az:()=>Hre,be:()=>jre,bg:()=>Vre,ca:()=>qre,cs:()=>Zre,da:()=>Wre,de:()=>Xre,el:()=>$re,en:()=>TD,eo:()=>ese,es:()=>Ase,fa:()=>tse,fi:()=>ise,fr:()=>nse,frCA:()=>ose,he:()=>ase,hr:()=>rse,hu:()=>sse,hy:()=>cse,id:()=>gse,is:()=>Cse,it:()=>dse,ja:()=>Ise,ka:()=>Bse,kh:()=>hse,km:()=>OD,ko:()=>use,lt:()=>Qse,mk:()=>pse,ms:()=>mse,nl:()=>fse,no:()=>wse,ota:()=>yse,pl:()=>Dse,ps:()=>vse,pt:()=>bse,ro:()=>Mse,ru:()=>kse,sl:()=>_se,sv:()=>xse,ta:()=>Rse,th:()=>Nse,tr:()=>Fse,ua:()=>Lse,uk:()=>JD,ur:()=>Gse,uz:()=>Kse,vi:()=>Use,yo:()=>Jse,zhCN:()=>Tse,zhTW:()=>Ose});var eUe=()=>{let t={string:{unit:"\u062D\u0631\u0641",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},file:{unit:"\u0628\u0627\u064A\u062A",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},array:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},set:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"}};function A(n){return t[n]??null}let e={regex:"\u0645\u062F\u062E\u0644",email:"\u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",url:"\u0631\u0627\u0628\u0637",emoji:"\u0625\u064A\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u064A\u062E \u0648\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",date:"\u062A\u0627\u0631\u064A\u062E \u0628\u0645\u0639\u064A\u0627\u0631 ISO",time:"\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",duration:"\u0645\u062F\u0629 \u0628\u0645\u0639\u064A\u0627\u0631 ISO",ipv4:"\u0639\u0646\u0648\u0627\u0646 IPv4",ipv6:"\u0639\u0646\u0648\u0627\u0646 IPv6",cidrv4:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv4",cidrv6:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv6",base64:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64-encoded",base64url:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64url-encoded",json_string:"\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",e164:"\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",jwt:"JWT",template_literal:"\u0645\u062F\u062E\u0644"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 instanceof ${n.expected}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${r}`:`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${o}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${r}`}case"invalid_value":return n.values.length===1?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${SA(n.values[0])}`:`\u0627\u062E\u062A\u064A\u0627\u0631 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062A\u0648\u0642\u0639 \u0627\u0646\u062A\u0642\u0627\u0621 \u0623\u062D\u062F \u0647\u0630\u0647 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A: ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?` \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"}`:`\u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()} ${a.unit}`:`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0628\u062F\u0623 \u0628\u0640 "${n.prefix}"`:o.format==="ends_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A \u0628\u0640 "${o.suffix}"`:o.format==="includes"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0636\u0645\u0651\u064E\u0646 "${o.includes}"`:o.format==="regex"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0637\u0627\u0628\u0642 \u0627\u0644\u0646\u0645\u0637 ${o.pattern}`:`${e[o.format]??n.format} \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644`}case"not_multiple_of":return`\u0631\u0642\u0645 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0645\u0646 \u0645\u0636\u0627\u0639\u0641\u0627\u062A ${n.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${n.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${n.keys.length>1?"\u0629":""}: ${Ve(n.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;case"invalid_union":return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644";case"invalid_element":return`\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};function Yre(){return{localeError:eUe()}}var AUe=()=>{let t={string:{unit:"simvol",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"element",verb:"olmal\u0131d\u0131r"},set:{unit:"element",verb:"olmal\u0131d\u0131r"}};function A(n){return t[n]??null}let e={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n instanceof ${n.expected}, daxil olan ${r}`:`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${o}, daxil olan ${r}`}case"invalid_value":return n.values.length===1?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${SA(n.values[0])}`:`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()} ${a.unit??"element"}`:`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Yanl\u0131\u015F m\u0259tn: "${o.prefix}" il\u0259 ba\u015Flamal\u0131d\u0131r`:o.format==="ends_with"?`Yanl\u0131\u015F m\u0259tn: "${o.suffix}" il\u0259 bitm\u0259lidir`:o.format==="includes"?`Yanl\u0131\u015F m\u0259tn: "${o.includes}" daxil olmal\u0131d\u0131r`:o.format==="regex"?`Yanl\u0131\u015F m\u0259tn: ${o.pattern} \u015Fablonuna uy\u011Fun olmal\u0131d\u0131r`:`Yanl\u0131\u015F ${e[o.format]??n.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${n.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${n.keys.length>1?"lar":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`${n.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${n.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};function Hre(){return{localeError:AUe()}}function Pre(t,A,e,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?A:o>=2&&o<=4?e:i}var tUe=()=>{let t={string:{unit:{one:"\u0441\u0456\u043C\u0432\u0430\u043B",few:"\u0441\u0456\u043C\u0432\u0430\u043B\u044B",many:"\u0441\u0456\u043C\u0432\u0430\u043B\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u044B",many:"\u0431\u0430\u0439\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"}};function A(n){return t[n]??null}let e={regex:"\u0443\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0430\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0456 \u0447\u0430\u0441",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0447\u0430\u0441",duration:"ISO \u043F\u0440\u0430\u0446\u044F\u0433\u043B\u0430\u0441\u0446\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0430\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0430\u0441",cidrv4:"IPv4 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",base64:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64",base64url:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64url",json_string:"JSON \u0440\u0430\u0434\u043E\u043A",e164:"\u043D\u0443\u043C\u0430\u0440 E.164",jwt:"JWT",template_literal:"\u0443\u0432\u043E\u0434"},i={nan:"NaN",number:"\u043B\u0456\u043A",array:"\u043C\u0430\u0441\u0456\u045E"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F instanceof ${n.expected}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${r}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F ${o}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${r}`}case"invalid_value":return n.values.length===1?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F ${SA(n.values[0])}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0432\u0430\u0440\u044B\u044F\u043D\u0442: \u0447\u0430\u043A\u0430\u045E\u0441\u044F \u0430\u0434\u0437\u0456\u043D \u0437 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);if(a){let r=Number(n.maximum),s=Pre(r,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.maximum.toString()} ${s}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);if(a){let r=Number(n.minimum),s=Pre(r,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.minimum.toString()} ${s}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u043F\u0430\u0447\u044B\u043D\u0430\u0446\u0446\u0430 \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u0430\u043A\u0430\u043D\u0447\u0432\u0430\u0446\u0446\u0430 \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u043C\u044F\u0448\u0447\u0430\u0446\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0430\u0434\u043F\u0430\u0432\u044F\u0434\u0430\u0446\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B ${e[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043B\u0456\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0431\u044B\u0446\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${n.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434";case"invalid_element":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u0430\u0435 \u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435 \u045E ${n.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};function jre(){return{localeError:tUe()}}var iUe=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},file:{unit:"\u0431\u0430\u0439\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"}};function A(n){return t[n]??null}let e={regex:"\u0432\u0445\u043E\u0434",email:"\u0438\u043C\u0435\u0439\u043B \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0436\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u043F\u0440\u043E\u0434\u044A\u043B\u0436\u0438\u0442\u0435\u043B\u043D\u043E\u0441\u0442",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"base64-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",base64url:"base64url-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",json_string:"JSON \u043D\u0438\u0437",e164:"E.164 \u043D\u043E\u043C\u0435\u0440",jwt:"JWT",template_literal:"\u0432\u0445\u043E\u0434"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${r}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${o}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${r}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${SA(n.values[0])}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u043E\u043F\u0446\u0438\u044F: \u043E\u0447\u0430\u043A\u0432\u0430\u043D\u043E \u0435\u0434\u043D\u043E \u043E\u0442 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430"}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${n.minimum.toString()} ${a.unit}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;if(o.format==="starts_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u0432\u0430 \u0441 "${o.prefix}"`;if(o.format==="ends_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u0432\u044A\u0440\u0448\u0432\u0430 \u0441 "${o.suffix}"`;if(o.format==="includes")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0432\u043A\u043B\u044E\u0447\u0432\u0430 "${o.includes}"`;if(o.format==="regex")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0441\u044A\u0432\u043F\u0430\u0434\u0430 \u0441 ${o.pattern}`;let a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D";return o.format==="emoji"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="datetime"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="date"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),o.format==="time"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="duration"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),`${a} ${e[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E \u0447\u0438\u0441\u043B\u043E: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043A\u0440\u0430\u0442\u043D\u043E \u043D\u0430 ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0437\u043F\u043E\u0437\u043D\u0430\u0442${n.keys.length>1?"\u0438":""} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u043E\u0432\u0435":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434";case"invalid_element":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434"}}};function Vre(){return{localeError:iUe()}}var nUe=()=>{let t={string:{unit:"car\xE0cters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function A(n){return t[n]??null}let e={regex:"entrada",email:"adre\xE7a electr\xF2nica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adre\xE7a IPv4",ipv6:"adre\xE7a IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Tipus inv\xE0lid: s'esperava instanceof ${n.expected}, s'ha rebut ${r}`:`Tipus inv\xE0lid: s'esperava ${o}, s'ha rebut ${r}`}case"invalid_value":return n.values.length===1?`Valor inv\xE0lid: s'esperava ${SA(n.values[0])}`:`Opci\xF3 inv\xE0lida: s'esperava una de ${Ve(n.values," o ")}`;case"too_big":{let o=n.inclusive?"com a m\xE0xim":"menys de",a=A(n.origin);return a?`Massa gran: s'esperava que ${n.origin??"el valor"} contingu\xE9s ${o} ${n.maximum.toString()} ${a.unit??"elements"}`:`Massa gran: s'esperava que ${n.origin??"el valor"} fos ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"com a m\xEDnim":"m\xE9s de",a=A(n.origin);return a?`Massa petit: s'esperava que ${n.origin} contingu\xE9s ${o} ${n.minimum.toString()} ${a.unit}`:`Massa petit: s'esperava que ${n.origin} fos ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Format inv\xE0lid: ha de comen\xE7ar amb "${o.prefix}"`:o.format==="ends_with"?`Format inv\xE0lid: ha d'acabar amb "${o.suffix}"`:o.format==="includes"?`Format inv\xE0lid: ha d'incloure "${o.includes}"`:o.format==="regex"?`Format inv\xE0lid: ha de coincidir amb el patr\xF3 ${o.pattern}`:`Format inv\xE0lid per a ${e[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${n.divisor}`;case"unrecognized_keys":return`Clau${n.keys.length>1?"s":""} no reconeguda${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${n.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${n.origin}`;default:return"Entrada inv\xE0lida"}}};function qre(){return{localeError:nUe()}}var oUe=()=>{let t={string:{unit:"znak\u016F",verb:"m\xEDt"},file:{unit:"bajt\u016F",verb:"m\xEDt"},array:{unit:"prvk\u016F",verb:"m\xEDt"},set:{unit:"prvk\u016F",verb:"m\xEDt"}};function A(n){return t[n]??null}let e={regex:"regul\xE1rn\xED v\xFDraz",email:"e-mailov\xE1 adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a \u010Das ve form\xE1tu ISO",date:"datum ve form\xE1tu ISO",time:"\u010Das ve form\xE1tu ISO",duration:"doba trv\xE1n\xED ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64",base64url:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64url",json_string:"\u0159et\u011Bzec ve form\xE1tu JSON",e164:"\u010D\xEDslo E.164",jwt:"JWT",template_literal:"vstup"},i={nan:"NaN",number:"\u010D\xEDslo",string:"\u0159et\u011Bzec",function:"funkce",array:"pole"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no instanceof ${n.expected}, obdr\u017Eeno ${r}`:`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${o}, obdr\u017Eeno ${r}`}case"invalid_value":return n.values.length===1?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${SA(n.values[0])}`:`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.maximum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.minimum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED za\u010D\xEDnat na "${o.prefix}"`:o.format==="ends_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED kon\u010Dit na "${o.suffix}"`:o.format==="includes"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED obsahovat "${o.includes}"`:o.format==="regex"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED odpov\xEDdat vzoru ${o.pattern}`:`Neplatn\xFD form\xE1t ${e[o.format]??n.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${n.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${Ve(n.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${n.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${n.origin}`;default:return"Neplatn\xFD vstup"}}};function Zre(){return{localeError:oUe()}}var aUe=()=>{let t={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function A(n){return t[n]??null}let e={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkesl\xE6t",date:"ISO-dato",time:"ISO-klokkesl\xE6t",duration:"ISO-varighed",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},i={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"s\xE6t",file:"fil"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ugyldigt input: forventede instanceof ${n.expected}, fik ${r}`:`Ugyldigt input: forventede ${o}, fik ${r}`}case"invalid_value":return n.values.length===1?`Ugyldig v\xE6rdi: forventede ${SA(n.values[0])}`:`Ugyldigt valg: forventede en af f\xF8lgende ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin),r=i[n.origin]??n.origin;return a?`For stor: forventede ${r??"value"} ${a.verb} ${o} ${n.maximum.toString()} ${a.unit??"elementer"}`:`For stor: forventede ${r??"value"} havde ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin),r=i[n.origin]??n.origin;return a?`For lille: forventede ${r} ${a.verb} ${o} ${n.minimum.toString()} ${a.unit}`:`For lille: forventede ${r} havde ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ugyldig streng: skal starte med "${o.prefix}"`:o.format==="ends_with"?`Ugyldig streng: skal ende med "${o.suffix}"`:o.format==="includes"?`Ugyldig streng: skal indeholde "${o.includes}"`:o.format==="regex"?`Ugyldig streng: skal matche m\xF8nsteret ${o.pattern}`:`Ugyldig ${e[o.format]??n.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${n.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${n.origin}`;default:return"Ugyldigt input"}}};function Wre(){return{localeError:aUe()}}var rUe=()=>{let t={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function A(n){return t[n]??null}let e={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},i={nan:"NaN",number:"Zahl",array:"Array"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ung\xFCltige Eingabe: erwartet instanceof ${n.expected}, erhalten ${r}`:`Ung\xFCltige Eingabe: erwartet ${o}, erhalten ${r}`}case"invalid_value":return n.values.length===1?`Ung\xFCltige Eingabe: erwartet ${SA(n.values[0])}`:`Ung\xFCltige Option: erwartet eine von ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ${a.unit??"Elemente"} hat`:`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ist`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ${a.unit} hat`:`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ist`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ung\xFCltiger String: muss mit "${o.prefix}" beginnen`:o.format==="ends_with"?`Ung\xFCltiger String: muss mit "${o.suffix}" enden`:o.format==="includes"?`Ung\xFCltiger String: muss "${o.includes}" enthalten`:o.format==="regex"?`Ung\xFCltiger String: muss dem Muster ${o.pattern} entsprechen`:`Ung\xFCltig: ${e[o.format]??n.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${n.divisor} sein`;case"unrecognized_keys":return`${n.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${n.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${n.origin}`;default:return"Ung\xFCltige Eingabe"}}};function Xre(){return{localeError:rUe()}}var sUe=()=>{let t={string:{unit:"\u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},file:{unit:"bytes",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},array:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},set:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},map:{unit:"\u03BA\u03B1\u03C4\u03B1\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03B9\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"}};function A(n){return t[n]??null}let e={regex:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2",email:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BA\u03B1\u03B9 \u03CE\u03C1\u03B1",date:"ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",time:"ISO \u03CE\u03C1\u03B1",duration:"ISO \u03B4\u03B9\u03AC\u03C1\u03BA\u03B5\u03B9\u03B1",ipv4:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv4",ipv6:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv6",mac:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 MAC",cidrv4:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv4",cidrv6:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv6",base64:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64",base64url:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64url",json_string:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC JSON",e164:"\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 E.164",jwt:"JWT",template_literal:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return typeof n.expected=="string"&&/^[A-Z]/.test(n.expected)?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD instanceof ${n.expected}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${r}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${o}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${r}`}case"invalid_value":return n.values.length===1?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${SA(n.values[0])}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD \u03AD\u03BD\u03B1 \u03B1\u03C0\u03CC ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${n.maximum.toString()} ${a.unit??"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1"}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${n.minimum.toString()} ${a.unit}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03BE\u03B5\u03BA\u03B9\u03BD\u03AC \u03BC\u03B5 "${o.prefix}"`:o.format==="ends_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B5\u03BB\u03B5\u03B9\u03CE\u03BD\u03B5\u03B9 \u03BC\u03B5 "${o.suffix}"`:o.format==="includes"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 "${o.includes}"`:o.format==="regex"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03B5\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03BC\u03BF\u03C4\u03AF\u03B2\u03BF ${o.pattern}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF: ${e[o.format]??n.format}`}case"not_multiple_of":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF\u03C2 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03AC\u03C3\u03B9\u03BF \u03C4\u03BF\u03C5 ${n.divisor}`;case"unrecognized_keys":return`\u0386\u03B3\u03BD\u03C9\u03C3\u03C4${n.keys.length>1?"\u03B1":"\u03BF"} \u03BA\u03BB\u03B5\u03B9\u03B4${n.keys.length>1?"\u03B9\u03AC":"\u03AF"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03C3\u03C4\u03BF ${n.origin}`;case"invalid_union":return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2";case"invalid_element":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C4\u03B9\u03BC\u03AE \u03C3\u03C4\u03BF ${n.origin}`;default:return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"}}};function $re(){return{localeError:sUe()}}var lUe=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function A(n){return t[n]??null}let e={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return`Invalid input: expected ${o}, received ${r}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${SA(n.values[0])}`:`Invalid option: expected one of ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${a.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${a.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${e[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return n.options&&Array.isArray(n.options)&&n.options.length>0?`Invalid discriminator value. Expected ${n.options.map(a=>`'${a}'`).join(" | ")}`:"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function TD(){return{localeError:lUe()}}var cUe=()=>{let t={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function A(n){return t[n]??null}let e={regex:"enigo",email:"retadreso",url:"URL",emoji:"emo\u011Dio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-da\u016Dro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},i={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Nevalida enigo: atendi\u011Dis instanceof ${n.expected}, ricevi\u011Dis ${r}`:`Nevalida enigo: atendi\u011Dis ${o}, ricevi\u011Dis ${r}`}case"invalid_value":return n.values.length===1?`Nevalida enigo: atendi\u011Dis ${SA(n.values[0])}`:`Nevalida opcio: atendi\u011Dis unu el ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Tro granda: atendi\u011Dis ke ${n.origin??"valoro"} havu ${o}${n.maximum.toString()} ${a.unit??"elementojn"}`:`Tro granda: atendi\u011Dis ke ${n.origin??"valoro"} havu ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Tro malgranda: atendi\u011Dis ke ${n.origin} havu ${o}${n.minimum.toString()} ${a.unit}`:`Tro malgranda: atendi\u011Dis ke ${n.origin} estu ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Nevalida karaktraro: devas komenci\u011Di per "${o.prefix}"`:o.format==="ends_with"?`Nevalida karaktraro: devas fini\u011Di per "${o.suffix}"`:o.format==="includes"?`Nevalida karaktraro: devas inkluzivi "${o.includes}"`:o.format==="regex"?`Nevalida karaktraro: devas kongrui kun la modelo ${o.pattern}`:`Nevalida ${e[o.format]??n.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${n.divisor}`;case"unrecognized_keys":return`Nekonata${n.keys.length>1?"j":""} \u015Dlosilo${n.keys.length>1?"j":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${n.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${n.origin}`;default:return"Nevalida enigo"}}};function ese(){return{localeError:cUe()}}var gUe=()=>{let t={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function A(n){return t[n]??null}let e={regex:"entrada",email:"direcci\xF3n de correo electr\xF3nico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duraci\xF3n ISO",ipv4:"direcci\xF3n IPv4",ipv6:"direcci\xF3n IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN",string:"texto",number:"n\xFAmero",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"n\xFAmero grande",symbol:"s\xEDmbolo",undefined:"indefinido",null:"nulo",function:"funci\xF3n",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeraci\xF3n",union:"uni\xF3n",literal:"literal",promise:"promesa",void:"vac\xEDo",never:"nunca",unknown:"desconocido",any:"cualquiera"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entrada inv\xE1lida: se esperaba instanceof ${n.expected}, recibido ${r}`:`Entrada inv\xE1lida: se esperaba ${o}, recibido ${r}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: se esperaba ${SA(n.values[0])}`:`Opci\xF3n inv\xE1lida: se esperaba una de ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin),r=i[n.origin]??n.origin;return a?`Demasiado grande: se esperaba que ${r??"valor"} tuviera ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Demasiado grande: se esperaba que ${r??"valor"} fuera ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin),r=i[n.origin]??n.origin;return a?`Demasiado peque\xF1o: se esperaba que ${r} tuviera ${o}${n.minimum.toString()} ${a.unit}`:`Demasiado peque\xF1o: se esperaba que ${r} fuera ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cadena inv\xE1lida: debe comenzar con "${o.prefix}"`:o.format==="ends_with"?`Cadena inv\xE1lida: debe terminar en "${o.suffix}"`:o.format==="includes"?`Cadena inv\xE1lida: debe incluir "${o.includes}"`:o.format==="regex"?`Cadena inv\xE1lida: debe coincidir con el patr\xF3n ${o.pattern}`:`Inv\xE1lido ${e[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Llave${n.keys.length>1?"s":""} desconocida${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${i[n.origin]??n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${i[n.origin]??n.origin}`;default:return"Entrada inv\xE1lida"}}};function Ase(){return{localeError:gUe()}}var CUe=()=>{let t={string:{unit:"\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},file:{unit:"\u0628\u0627\u06CC\u062A",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},array:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},set:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"}};function A(n){return t[n]??null}let e={regex:"\u0648\u0631\u0648\u062F\u06CC",email:"\u0622\u062F\u0631\u0633 \u0627\u06CC\u0645\u06CC\u0644",url:"URL",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u06CC\u062E \u0648 \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",date:"\u062A\u0627\u0631\u06CC\u062E \u0627\u06CC\u0632\u0648",time:"\u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",duration:"\u0645\u062F\u062A \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",ipv4:"IPv4 \u0622\u062F\u0631\u0633",ipv6:"IPv6 \u0622\u062F\u0631\u0633",cidrv4:"IPv4 \u062F\u0627\u0645\u0646\u0647",cidrv6:"IPv6 \u062F\u0627\u0645\u0646\u0647",base64:"base64-encoded \u0631\u0634\u062A\u0647",base64url:"base64url-encoded \u0631\u0634\u062A\u0647",json_string:"JSON \u0631\u0634\u062A\u0647",e164:"E.164 \u0639\u062F\u062F",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u06CC"},i={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0622\u0631\u0627\u06CC\u0647"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A instanceof ${n.expected} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${r} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`:`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${o} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${r} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`}case"invalid_value":return n.values.length===1?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${SA(n.values[0])} \u0645\u06CC\u200C\u0628\u0648\u062F`:`\u06AF\u0632\u06CC\u0646\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A \u06CC\u06A9\u06CC \u0627\u0632 ${Ve(n.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.prefix}" \u0634\u0631\u0648\u0639 \u0634\u0648\u062F`:o.format==="ends_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.suffix}" \u062A\u0645\u0627\u0645 \u0634\u0648\u062F`:o.format==="includes"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0634\u0627\u0645\u0644 "${o.includes}" \u0628\u0627\u0634\u062F`:o.format==="regex"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 \u0627\u0644\u06AF\u0648\u06CC ${o.pattern} \u0645\u0637\u0627\u0628\u0642\u062A \u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F`:`${e[o.format]??n.format} \u0646\u0627\u0645\u0639\u062A\u0628\u0631`}case"not_multiple_of":return`\u0639\u062F\u062F \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0645\u0636\u0631\u0628 ${n.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${n.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${n.origin}`;case"invalid_union":return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631";case"invalid_element":return`\u0645\u0642\u062F\u0627\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u062F\u0631 ${n.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};function tse(){return{localeError:CUe()}}var dUe=()=>{let t={string:{unit:"merkki\xE4",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"p\xE4iv\xE4m\xE4\xE4r\xE4n"}};function A(n){return t[n]??null}let e={regex:"s\xE4\xE4nn\xF6llinen lauseke",email:"s\xE4hk\xF6postiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-p\xE4iv\xE4m\xE4\xE4r\xE4",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Virheellinen tyyppi: odotettiin instanceof ${n.expected}, oli ${r}`:`Virheellinen tyyppi: odotettiin ${o}, oli ${r}`}case"invalid_value":return n.values.length===1?`Virheellinen sy\xF6te: t\xE4ytyy olla ${SA(n.values[0])}`:`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Liian suuri: ${a.subject} t\xE4ytyy olla ${o}${n.maximum.toString()} ${a.unit}`.trim():`Liian suuri: arvon t\xE4ytyy olla ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Liian pieni: ${a.subject} t\xE4ytyy olla ${o}${n.minimum.toString()} ${a.unit}`.trim():`Liian pieni: arvon t\xE4ytyy olla ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Virheellinen sy\xF6te: t\xE4ytyy alkaa "${o.prefix}"`:o.format==="ends_with"?`Virheellinen sy\xF6te: t\xE4ytyy loppua "${o.suffix}"`:o.format==="includes"?`Virheellinen sy\xF6te: t\xE4ytyy sis\xE4lt\xE4\xE4 "${o.includes}"`:o.format==="regex"?`Virheellinen sy\xF6te: t\xE4ytyy vastata s\xE4\xE4nn\xF6llist\xE4 lauseketta ${o.pattern}`:`Virheellinen ${e[o.format]??n.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${n.divisor} monikerta`;case"unrecognized_keys":return`${n.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${Ve(n.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen sy\xF6te"}}};function ise(){return{localeError:dUe()}}var IUe=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function A(n){return t[n]??null}let e={regex:"entr\xE9e",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},i={string:"cha\xEEne",number:"nombre",int:"entier",boolean:"bool\xE9en",bigint:"grand entier",symbol:"symbole",undefined:"ind\xE9fini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : instanceof ${n.expected} attendu, ${r} re\xE7u`:`Entr\xE9e invalide : ${o} attendu, ${r} re\xE7u`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : ${SA(n.values[0])} attendu`:`Option invalide : une valeur parmi ${Ve(n.values,"|")} attendue`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Trop grand : ${i[n.origin]??"valeur"} doit ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\xE9l\xE9ment(s)"}`:`Trop grand : ${i[n.origin]??"valeur"} doit \xEAtre ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Trop petit : ${i[n.origin]??"valeur"} doit ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : ${i[n.origin]??"valeur"} doit \xEAtre ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au mod\xE8le ${o.pattern}`:`${e[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${Ve(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function nse(){return{localeError:IUe()}}var BUe=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function A(n){return t[n]??null}let e={regex:"entr\xE9e",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : attendu instanceof ${n.expected}, re\xE7u ${r}`:`Entr\xE9e invalide : attendu ${o}, re\xE7u ${r}`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : attendu ${SA(n.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u2264":"<",a=A(n.origin);return a?`Trop grand : attendu que ${n.origin??"la valeur"} ait ${o}${n.maximum.toString()} ${a.unit}`:`Trop grand : attendu que ${n.origin??"la valeur"} soit ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u2265":">",a=A(n.origin);return a?`Trop petit : attendu que ${n.origin} ait ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : attendu que ${n.origin} soit ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au motif ${o.pattern}`:`${e[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${Ve(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function ose(){return{localeError:BUe()}}var hUe=()=>{let t={string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA",gender:"f"},number:{label:"\u05DE\u05E1\u05E4\u05E8",gender:"m"},boolean:{label:"\u05E2\u05E8\u05DA \u05D1\u05D5\u05DC\u05D9\u05D0\u05E0\u05D9",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA",gender:"m"},array:{label:"\u05DE\u05E2\u05E8\u05DA",gender:"m"},object:{label:"\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8",gender:"m"},null:{label:"\u05E2\u05E8\u05DA \u05E8\u05D9\u05E7 (null)",gender:"m"},undefined:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05DE\u05D5\u05D2\u05D3\u05E8 (undefined)",gender:"m"},symbol:{label:"\u05E1\u05D9\u05DE\u05D1\u05D5\u05DC (Symbol)",gender:"m"},function:{label:"\u05E4\u05D5\u05E0\u05E7\u05E6\u05D9\u05D4",gender:"f"},map:{label:"\u05DE\u05E4\u05D4 (Map)",gender:"f"},set:{label:"\u05E7\u05D1\u05D5\u05E6\u05D4 (Set)",gender:"f"},file:{label:"\u05E7\u05D5\u05D1\u05E5",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05D9\u05D3\u05D5\u05E2",gender:"m"},value:{label:"\u05E2\u05E8\u05DA",gender:"m"}},A={string:{unit:"\u05EA\u05D5\u05D5\u05D9\u05DD",shortLabel:"\u05E7\u05E6\u05E8",longLabel:"\u05D0\u05E8\u05D5\u05DA"},file:{unit:"\u05D1\u05D9\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},array:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},set:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},number:{unit:"",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"}},e=l=>l?t[l]:void 0,i=l=>{let c=e(l);return c?c.label:l??t.unknown.label},n=l=>`\u05D4${i(l)}`,o=l=>(e(l)?.gender??"m")==="f"?"\u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05D9\u05D5\u05EA":"\u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA",a=l=>l?A[l]??null:null,r={regex:{label:"\u05E7\u05DC\u05D8",gender:"m"},email:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05D0\u05D9\u05DE\u05D9\u05D9\u05DC",gender:"f"},url:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05E8\u05E9\u05EA",gender:"f"},emoji:{label:"\u05D0\u05D9\u05DE\u05D5\u05D2'\u05D9",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA \u05D5\u05D6\u05DE\u05DF ISO",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA ISO",gender:"m"},time:{label:"\u05D6\u05DE\u05DF ISO",gender:"m"},duration:{label:"\u05DE\u05E9\u05DA \u05D6\u05DE\u05DF ISO",gender:"m"},ipv4:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv4",gender:"f"},ipv6:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv6",gender:"f"},cidrv4:{label:"\u05D8\u05D5\u05D5\u05D7 IPv4",gender:"m"},cidrv6:{label:"\u05D8\u05D5\u05D5\u05D7 IPv6",gender:"m"},base64:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64",gender:"f"},base64url:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05E8\u05E9\u05EA",gender:"f"},json_string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON",gender:"f"},e164:{label:"\u05DE\u05E1\u05E4\u05E8 E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},includes:{label:"\u05E7\u05DC\u05D8",gender:"m"},lowercase:{label:"\u05E7\u05DC\u05D8",gender:"m"},starts_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},uppercase:{label:"\u05E7\u05DC\u05D8",gender:"m"}},s={nan:"NaN"};return l=>{switch(l.code){case"invalid_type":{let c=l.expected,C=s[c??""]??i(c),d=LA(l.input),B=s[d]??t[d]?.label??d;return/^[A-Z]/.test(l.expected)?`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA instanceof ${l.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${B}`:`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${C}, \u05D4\u05EA\u05E7\u05D1\u05DC ${B}`}case"invalid_value":{if(l.values.length===1)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05E2\u05E8\u05DA \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA ${SA(l.values[0])}`;let c=l.values.map(B=>SA(B));if(l.values.length===2)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${c[0]} \u05D0\u05D5 ${c[1]}`;let C=c[c.length-1];return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${c.slice(0,-1).join(", ")} \u05D0\u05D5 ${C}`}case"too_big":{let c=a(l.origin),C=n(l.origin??"value");if(l.origin==="string")return`${c?.longLabel??"\u05D0\u05E8\u05D5\u05DA"} \u05DE\u05D3\u05D9: ${C} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${l.maximum.toString()} ${c?.unit??""} ${l.inclusive?"\u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA":"\u05DC\u05DB\u05DC \u05D4\u05D9\u05D5\u05EA\u05E8"}`.trim();if(l.origin==="number"){let E=l.inclusive?`\u05E7\u05D8\u05DF \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${l.maximum}`:`\u05E7\u05D8\u05DF \u05DE-${l.maximum}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${C} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${E}`}if(l.origin==="array"||l.origin==="set"){let E=l.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA",u=l.inclusive?`${l.maximum} ${c?.unit??""} \u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA`:`\u05E4\u05D7\u05D5\u05EA \u05DE-${l.maximum} ${c?.unit??""}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${C} ${E} \u05DC\u05D4\u05DB\u05D9\u05DC ${u}`.trim()}let d=l.inclusive?"<=":"<",B=o(l.origin??"value");return c?.unit?`${c.longLabel} \u05DE\u05D3\u05D9: ${C} ${B} ${d}${l.maximum.toString()} ${c.unit}`:`${c?.longLabel??"\u05D2\u05D3\u05D5\u05DC"} \u05DE\u05D3\u05D9: ${C} ${B} ${d}${l.maximum.toString()}`}case"too_small":{let c=a(l.origin),C=n(l.origin??"value");if(l.origin==="string")return`${c?.shortLabel??"\u05E7\u05E6\u05E8"} \u05DE\u05D3\u05D9: ${C} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${l.minimum.toString()} ${c?.unit??""} ${l.inclusive?"\u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8":"\u05DC\u05E4\u05D7\u05D5\u05EA"}`.trim();if(l.origin==="number"){let E=l.inclusive?`\u05D2\u05D3\u05D5\u05DC \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${l.minimum}`:`\u05D2\u05D3\u05D5\u05DC \u05DE-${l.minimum}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${C} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${E}`}if(l.origin==="array"||l.origin==="set"){let E=l.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA";if(l.minimum===1&&l.inclusive){let m=(l.origin==="set","\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3");return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${C} ${E} \u05DC\u05D4\u05DB\u05D9\u05DC ${m}`}let u=l.inclusive?`${l.minimum} ${c?.unit??""} \u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8`:`\u05D9\u05D5\u05EA\u05E8 \u05DE-${l.minimum} ${c?.unit??""}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${C} ${E} \u05DC\u05D4\u05DB\u05D9\u05DC ${u}`.trim()}let d=l.inclusive?">=":">",B=o(l.origin??"value");return c?.unit?`${c.shortLabel} \u05DE\u05D3\u05D9: ${C} ${B} ${d}${l.minimum.toString()} ${c.unit}`:`${c?.shortLabel??"\u05E7\u05D8\u05DF"} \u05DE\u05D3\u05D9: ${C} ${B} ${d}${l.minimum.toString()}`}case"invalid_format":{let c=l;if(c.format==="starts_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1 "${c.prefix}"`;if(c.format==="ends_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${c.suffix}"`;if(c.format==="includes")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${c.includes}"`;if(c.format==="regex")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D0\u05D9\u05DD \u05DC\u05EA\u05D1\u05E0\u05D9\u05EA ${c.pattern}`;let C=r[c.format],d=C?.label??c.format,E=(C?.gender??"m")==="f"?"\u05EA\u05E7\u05D9\u05E0\u05D4":"\u05EA\u05E7\u05D9\u05DF";return`${d} \u05DC\u05D0 ${E}`}case"not_multiple_of":return`\u05DE\u05E1\u05E4\u05E8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA \u05DE\u05DB\u05E4\u05DC\u05D4 \u05E9\u05DC ${l.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${l.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${l.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${Ve(l.keys,", ")}`;case"invalid_key":return"\u05E9\u05D3\u05D4 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8";case"invalid_union":return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF";case"invalid_element":return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${n(l.origin??"array")}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};function ase(){return{localeError:hUe()}}var uUe=()=>{let t={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function A(n){return t[n]??null}let e={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},i={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neispravan unos: o\u010Dekuje se instanceof ${n.expected}, a primljeno je ${r}`:`Neispravan unos: o\u010Dekuje se ${o}, a primljeno je ${r}`}case"invalid_value":return n.values.length===1?`Neispravna vrijednost: o\u010Dekivano ${SA(n.values[0])}`:`Neispravna opcija: o\u010Dekivano jedno od ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin),r=i[n.origin]??n.origin;return a?`Preveliko: o\u010Dekivano da ${r??"vrijednost"} ima ${o}${n.maximum.toString()} ${a.unit??"elemenata"}`:`Preveliko: o\u010Dekivano da ${r??"vrijednost"} bude ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin),r=i[n.origin]??n.origin;return a?`Premalo: o\u010Dekivano da ${r} ima ${o}${n.minimum.toString()} ${a.unit}`:`Premalo: o\u010Dekivano da ${r} bude ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neispravan tekst: mora zapo\u010Dinjati s "${o.prefix}"`:o.format==="ends_with"?`Neispravan tekst: mora zavr\u0161avati s "${o.suffix}"`:o.format==="includes"?`Neispravan tekst: mora sadr\u017Eavati "${o.includes}"`:o.format==="regex"?`Neispravan tekst: mora odgovarati uzorku ${o.pattern}`:`Neispravna ${e[o.format]??n.format}`}case"not_multiple_of":return`Neispravan broj: mora biti vi\u0161ekratnik od ${n.divisor}`;case"unrecognized_keys":return`Neprepoznat${n.keys.length>1?"i klju\u010Devi":" klju\u010D"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Neispravan klju\u010D u ${i[n.origin]??n.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${i[n.origin]??n.origin}`;default:return"Neispravan unos"}}};function rse(){return{localeError:uUe()}}var EUe=()=>{let t={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function A(n){return t[n]??null}let e={regex:"bemenet",email:"email c\xEDm",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO id\u0151b\xE9lyeg",date:"ISO d\xE1tum",time:"ISO id\u0151",duration:"ISO id\u0151intervallum",ipv4:"IPv4 c\xEDm",ipv6:"IPv6 c\xEDm",cidrv4:"IPv4 tartom\xE1ny",cidrv6:"IPv6 tartom\xE1ny",base64:"base64-k\xF3dolt string",base64url:"base64url-k\xF3dolt string",json_string:"JSON string",e164:"E.164 sz\xE1m",jwt:"JWT",template_literal:"bemenet"},i={nan:"NaN",number:"sz\xE1m",array:"t\xF6mb"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k instanceof ${n.expected}, a kapott \xE9rt\xE9k ${r}`:`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${o}, a kapott \xE9rt\xE9k ${r}`}case"invalid_value":return n.values.length===1?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${SA(n.values[0])}`:`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`T\xFAl nagy: ${n.origin??"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${o}${n.maximum.toString()} ${a.unit??"elem"}`:`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${n.origin??"\xE9rt\xE9k"} t\xFAl nagy: ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} m\xE9rete t\xFAl kicsi ${o}${n.minimum.toString()} ${a.unit}`:`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} t\xFAl kicsi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\xC9rv\xE9nytelen string: "${o.prefix}" \xE9rt\xE9kkel kell kezd\u0151dnie`:o.format==="ends_with"?`\xC9rv\xE9nytelen string: "${o.suffix}" \xE9rt\xE9kkel kell v\xE9gz\u0151dnie`:o.format==="includes"?`\xC9rv\xE9nytelen string: "${o.includes}" \xE9rt\xE9ket kell tartalmaznia`:o.format==="regex"?`\xC9rv\xE9nytelen string: ${o.pattern} mint\xE1nak kell megfelelnie`:`\xC9rv\xE9nytelen ${e[o.format]??n.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${n.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${n.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${n.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};function sse(){return{localeError:EUe()}}function lse(t,A,e){return Math.abs(t)===1?A:e}function yE(t){if(!t)return"";let A=["\u0561","\u0565","\u0568","\u056B","\u0578","\u0578\u0582","\u0585"],e=t[t.length-1];return t+(A.includes(e)?"\u0576":"\u0568")}var QUe=()=>{let t={string:{unit:{one:"\u0576\u0577\u0561\u0576",many:"\u0576\u0577\u0561\u0576\u0576\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},file:{unit:{one:"\u0562\u0561\u0575\u0569",many:"\u0562\u0561\u0575\u0569\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},array:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},set:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"}};function A(n){return t[n]??null}let e={regex:"\u0574\u0578\u0582\u057F\u0584",email:"\u0567\u056C. \u0570\u0561\u057D\u0581\u0565",url:"URL",emoji:"\u0567\u0574\u0578\u057B\u056B",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E \u0587 \u056A\u0561\u0574",date:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E",time:"ISO \u056A\u0561\u0574",duration:"ISO \u057F\u0587\u0578\u0572\u0578\u0582\u0569\u0575\u0578\u0582\u0576",ipv4:"IPv4 \u0570\u0561\u057D\u0581\u0565",ipv6:"IPv6 \u0570\u0561\u057D\u0581\u0565",cidrv4:"IPv4 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",cidrv6:"IPv6 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",base64:"base64 \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",base64url:"base64url \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",json_string:"JSON \u057F\u0578\u0572",e164:"E.164 \u0570\u0561\u0574\u0561\u0580",jwt:"JWT",template_literal:"\u0574\u0578\u0582\u057F\u0584"},i={nan:"NaN",number:"\u0569\u056B\u057E",array:"\u0566\u0561\u0576\u0563\u057E\u0561\u056E"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 instanceof ${n.expected}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${r}`:`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${o}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${r}`}case"invalid_value":return n.values.length===1?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${SA(n.values[1])}`:`\u054D\u056D\u0561\u056C \u057F\u0561\u0580\u0562\u0565\u0580\u0561\u056F\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 \u0570\u0565\u057F\u0587\u0575\u0561\u056C\u0576\u0565\u0580\u056B\u0581 \u0574\u0565\u056F\u0568\u055D ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);if(a){let r=Number(n.maximum),s=lse(r,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${yE(n.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${n.maximum.toString()} ${s}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${yE(n.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056C\u056B\u0576\u056B ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);if(a){let r=Number(n.minimum),s=lse(r,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${yE(n.origin)} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${n.minimum.toString()} ${s}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${yE(n.origin)} \u056C\u056B\u0576\u056B ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057D\u056F\u057D\u057E\u056B "${o.prefix}"-\u0578\u057E`:o.format==="ends_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0561\u057E\u0561\u0580\u057F\u057E\u056B "${o.suffix}"-\u0578\u057E`:o.format==="includes"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057A\u0561\u0580\u0578\u0582\u0576\u0561\u056F\u056B "${o.includes}"`:o.format==="regex"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0570\u0561\u0574\u0561\u057A\u0561\u057F\u0561\u057D\u056D\u0561\u0576\u056B ${o.pattern} \u0571\u0587\u0561\u0579\u0561\u0583\u056B\u0576`:`\u054D\u056D\u0561\u056C ${e[o.format]??n.format}`}case"not_multiple_of":return`\u054D\u056D\u0561\u056C \u0569\u056B\u057E\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0562\u0561\u0566\u0574\u0561\u057A\u0561\u057F\u056B\u056F \u056C\u056B\u0576\u056B ${n.divisor}-\u056B`;case"unrecognized_keys":return`\u0549\u0573\u0561\u0576\u0561\u0579\u057E\u0561\u056E \u0562\u0561\u0576\u0561\u056C\u056B${n.keys.length>1?"\u0576\u0565\u0580":""}. ${Ve(n.keys,", ")}`;case"invalid_key":return`\u054D\u056D\u0561\u056C \u0562\u0561\u0576\u0561\u056C\u056B ${yE(n.origin)}-\u0578\u0582\u0574`;case"invalid_union":return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574";case"invalid_element":return`\u054D\u056D\u0561\u056C \u0561\u0580\u056A\u0565\u0584 ${yE(n.origin)}-\u0578\u0582\u0574`;default:return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574"}}};function cse(){return{localeError:QUe()}}var pUe=()=>{let t={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function A(n){return t[n]??null}let e={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input tidak valid: diharapkan instanceof ${n.expected}, diterima ${r}`:`Input tidak valid: diharapkan ${o}, diterima ${r}`}case"invalid_value":return n.values.length===1?`Input tidak valid: diharapkan ${SA(n.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Terlalu besar: diharapkan ${n.origin??"value"} memiliki ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: diharapkan ${n.origin??"value"} menjadi ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Terlalu kecil: diharapkan ${n.origin} memiliki ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: diharapkan ${n.origin} menjadi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak valid: harus dimulai dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak valid: harus berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak valid: harus menyertakan "${o.includes}"`:o.format==="regex"?`String tidak valid: harus sesuai pola ${o.pattern}`:`${e[o.format]??n.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${n.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${n.origin}`;default:return"Input tidak valid"}}};function gse(){return{localeError:pUe()}}var mUe=()=>{let t={string:{unit:"stafi",verb:"a\xF0 hafa"},file:{unit:"b\xE6ti",verb:"a\xF0 hafa"},array:{unit:"hluti",verb:"a\xF0 hafa"},set:{unit:"hluti",verb:"a\xF0 hafa"}};function A(n){return t[n]??null}let e={regex:"gildi",email:"netfang",url:"vefsl\xF3\xF0",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og t\xEDmi",date:"ISO dagsetning",time:"ISO t\xEDmi",duration:"ISO t\xEDmalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 t\xF6lugildi",jwt:"JWT",template_literal:"gildi"},i={nan:"NaN",number:"n\xFAmer",array:"fylki"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Rangt gildi: \xDE\xFA sl\xF3st inn ${r} \xFEar sem \xE1 a\xF0 vera instanceof ${n.expected}`:`Rangt gildi: \xDE\xFA sl\xF3st inn ${r} \xFEar sem \xE1 a\xF0 vera ${o}`}case"invalid_value":return n.values.length===1?`Rangt gildi: gert r\xE1\xF0 fyrir ${SA(n.values[0])}`:`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin??"gildi"} hafi ${o}${n.maximum.toString()} ${a.unit??"hluti"}`:`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin??"gildi"} s\xE9 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} hafi ${o}${n.minimum.toString()} ${a.unit}`:`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} s\xE9 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 byrja \xE1 "${o.prefix}"`:o.format==="ends_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 enda \xE1 "${o.suffix}"`:o.format==="includes"?`\xD3gildur strengur: ver\xF0ur a\xF0 innihalda "${o.includes}"`:o.format==="regex"?`\xD3gildur strengur: ver\xF0ur a\xF0 fylgja mynstri ${o.pattern}`:`Rangt ${e[o.format]??n.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${n.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${n.keys.length>1?"ir lyklar":"ur lykill"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${n.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${n.origin}`;default:return"Rangt gildi"}}};function Cse(){return{localeError:mUe()}}var fUe=()=>{let t={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function A(n){return t[n]??null}let e={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"numero",array:"vettore"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input non valido: atteso instanceof ${n.expected}, ricevuto ${r}`:`Input non valido: atteso ${o}, ricevuto ${r}`}case"invalid_value":return n.values.length===1?`Input non valido: atteso ${SA(n.values[0])}`:`Opzione non valida: atteso uno tra ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Troppo grande: ${n.origin??"valore"} deve avere ${o}${n.maximum.toString()} ${a.unit??"elementi"}`:`Troppo grande: ${n.origin??"valore"} deve essere ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Troppo piccolo: ${n.origin} deve avere ${o}${n.minimum.toString()} ${a.unit}`:`Troppo piccolo: ${n.origin} deve essere ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Stringa non valida: deve iniziare con "${o.prefix}"`:o.format==="ends_with"?`Stringa non valida: deve terminare con "${o.suffix}"`:o.format==="includes"?`Stringa non valida: deve includere "${o.includes}"`:o.format==="regex"?`Stringa non valida: deve corrispondere al pattern ${o.pattern}`:`Input non valido: ${e[o.format]??n.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${n.divisor}`;case"unrecognized_keys":return`Chiav${n.keys.length>1?"i":"e"} non riconosciut${n.keys.length>1?"e":"a"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${n.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${n.origin}`;default:return"Input non valido"}}};function dse(){return{localeError:fUe()}}var wUe=()=>{let t={string:{unit:"\u6587\u5B57",verb:"\u3067\u3042\u308B"},file:{unit:"\u30D0\u30A4\u30C8",verb:"\u3067\u3042\u308B"},array:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"},set:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"}};function A(n){return t[n]??null}let e={regex:"\u5165\u529B\u5024",email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",url:"URL",emoji:"\u7D75\u6587\u5B57",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u6642",date:"ISO\u65E5\u4ED8",time:"ISO\u6642\u523B",duration:"ISO\u671F\u9593",ipv4:"IPv4\u30A2\u30C9\u30EC\u30B9",ipv6:"IPv6\u30A2\u30C9\u30EC\u30B9",cidrv4:"IPv4\u7BC4\u56F2",cidrv6:"IPv6\u7BC4\u56F2",base64:"base64\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",base64url:"base64url\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",json_string:"JSON\u6587\u5B57\u5217",e164:"E.164\u756A\u53F7",jwt:"JWT",template_literal:"\u5165\u529B\u5024"},i={nan:"NaN",number:"\u6570\u5024",array:"\u914D\u5217"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u7121\u52B9\u306A\u5165\u529B: instanceof ${n.expected}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${r}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u5165\u529B: ${o}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${r}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`}case"invalid_value":return n.values.length===1?`\u7121\u52B9\u306A\u5165\u529B: ${SA(n.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u9078\u629E: ${Ve(n.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let o=n.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",a=A(n.origin);return a?`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${a.unit??"\u8981\u7D20"}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let o=n.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",a=A(n.origin);return a?`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${a.unit}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.prefix}"\u3067\u59CB\u307E\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="ends_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.suffix}"\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="includes"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.includes}"\u3092\u542B\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="regex"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: \u30D1\u30BF\u30FC\u30F3${o.pattern}\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u7121\u52B9\u306A${e[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${n.divisor}\u306E\u500D\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"unrecognized_keys":return`\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u30AD\u30FC${n.keys.length>1?"\u7FA4":""}: ${Ve(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};function Ise(){return{localeError:wUe()}}var yUe=()=>{let t={string:{unit:"\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},file:{unit:"\u10D1\u10D0\u10D8\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},array:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},set:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"}};function A(n){return t[n]??null}let e={regex:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0",email:"\u10D4\u10DA-\u10E4\u10DD\u10E1\u10E2\u10D8\u10E1 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",url:"URL",emoji:"\u10D4\u10DB\u10DD\u10EF\u10D8",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8-\u10D3\u10E0\u10DD",date:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8",time:"\u10D3\u10E0\u10DD",duration:"\u10EE\u10D0\u10DC\u10D2\u10E0\u10EB\u10DA\u10D8\u10D5\u10DD\u10D1\u10D0",ipv4:"IPv4 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",ipv6:"IPv6 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",cidrv4:"IPv4 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",cidrv6:"IPv6 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",base64:"base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",base64url:"base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",json_string:"JSON \u10D5\u10D4\u10DA\u10D8",e164:"E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",jwt:"JWT",template_literal:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"},i={nan:"NaN",number:"\u10E0\u10D8\u10EA\u10EE\u10D5\u10D8",string:"\u10D5\u10D4\u10DA\u10D8",boolean:"\u10D1\u10E3\u10DA\u10D4\u10D0\u10DC\u10D8",function:"\u10E4\u10E3\u10DC\u10E5\u10EA\u10D8\u10D0",array:"\u10DB\u10D0\u10E1\u10D8\u10D5\u10D8"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 instanceof ${n.expected}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${r}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${o}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${r}`}case"invalid_value":return n.values.length===1?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${SA(n.values[0])}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D0\u10E0\u10D8\u10D0\u10DC\u10E2\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8\u10D0 \u10D4\u10E0\u10D7-\u10D4\u10E0\u10D7\u10D8 ${Ve(n.values,"|")}-\u10D3\u10D0\u10DC`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} \u10D8\u10E7\u10DD\u10E1 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} \u10D8\u10E7\u10DD\u10E1 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${o.prefix}"-\u10D8\u10D7`:o.format==="ends_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${o.suffix}"-\u10D8\u10D7`:o.format==="includes"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${o.includes}"-\u10E1`:o.format==="regex"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${o.pattern}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 ${e[o.format]??n.format}`}case"not_multiple_of":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E0\u10D8\u10EA\u10EE\u10D5\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10E7\u10DD\u10E1 ${n.divisor}-\u10D8\u10E1 \u10EF\u10D4\u10E0\u10D0\u10D3\u10D8`;case"unrecognized_keys":return`\u10E3\u10EA\u10DC\u10DD\u10D1\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1${n.keys.length>1?"\u10D4\u10D1\u10D8":"\u10D8"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1\u10D8 ${n.origin}-\u10E8\u10D8`;case"invalid_union":return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0";case"invalid_element":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0 ${n.origin}-\u10E8\u10D8`;default:return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"}}};function Bse(){return{localeError:yUe()}}var vUe=()=>{let t={string:{unit:"\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},file:{unit:"\u1794\u17C3",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},array:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},set:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"}};function A(n){return t[n]??null}let e={regex:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B",email:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793\u17A2\u17CA\u17B8\u1798\u17C2\u179B",url:"URL",emoji:"\u179F\u1789\u17D2\u1789\u17B6\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 \u1793\u17B7\u1784\u1798\u17C9\u17C4\u1784 ISO",date:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 ISO",time:"\u1798\u17C9\u17C4\u1784 ISO",duration:"\u179A\u1799\u17C8\u1796\u17C1\u179B ISO",ipv4:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",ipv6:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",cidrv4:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",cidrv6:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",base64:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64",base64url:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64url",json_string:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",e164:"\u179B\u17C1\u1781 E.164",jwt:"JWT",template_literal:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"},i={nan:"NaN",number:"\u179B\u17C1\u1781",array:"\u17A2\u17B6\u179A\u17C1 (Array)",null:"\u1782\u17D2\u1798\u17B6\u1793\u178F\u1798\u17D2\u179B\u17C3 (null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A instanceof ${n.expected} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${r}`:`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${o} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${r}`}case"invalid_value":return n.values.length===1?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${SA(n.values[0])}`:`\u1787\u1798\u17D2\u179A\u17BE\u179F\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1787\u17B6\u1798\u17BD\u1799\u1780\u17D2\u1793\u17BB\u1784\u1785\u17C6\u178E\u17C4\u1798 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()} ${a.unit??"\u1792\u17B6\u178F\u17BB"}`:`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()} ${a.unit}`:`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1785\u17B6\u1794\u17CB\u1795\u17D2\u178F\u17BE\u1798\u178A\u17C4\u1799 "${o.prefix}"`:o.format==="ends_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1794\u1789\u17D2\u1785\u1794\u17CB\u178A\u17C4\u1799 "${o.suffix}"`:o.format==="includes"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1798\u17B6\u1793 "${o.includes}"`:o.format==="regex"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1795\u17D2\u1782\u17BC\u1795\u17D2\u1782\u1784\u1793\u17B9\u1784\u1791\u1798\u17D2\u179A\u1784\u17CB\u178A\u17C2\u179B\u1794\u17B6\u1793\u1780\u17C6\u178E\u178F\u17CB ${o.pattern}`:`\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 ${e[o.format]??n.format}`}case"not_multiple_of":return`\u179B\u17C1\u1781\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1787\u17B6\u1796\u17A0\u17BB\u1782\u17BB\u178E\u1793\u17C3 ${n.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${Ve(n.keys,", ")}`;case"invalid_key":return`\u179F\u17C4\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;case"invalid_union":return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C";case"invalid_element":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;default:return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C"}}};function OD(){return{localeError:vUe()}}function hse(){return OD()}var DUe=()=>{let t={string:{unit:"\uBB38\uC790",verb:"to have"},file:{unit:"\uBC14\uC774\uD2B8",verb:"to have"},array:{unit:"\uAC1C",verb:"to have"},set:{unit:"\uAC1C",verb:"to have"}};function A(n){return t[n]??null}let e={regex:"\uC785\uB825",email:"\uC774\uBA54\uC77C \uC8FC\uC18C",url:"URL",emoji:"\uC774\uBAA8\uC9C0",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \uB0A0\uC9DC\uC2DC\uAC04",date:"ISO \uB0A0\uC9DC",time:"ISO \uC2DC\uAC04",duration:"ISO \uAE30\uAC04",ipv4:"IPv4 \uC8FC\uC18C",ipv6:"IPv6 \uC8FC\uC18C",cidrv4:"IPv4 \uBC94\uC704",cidrv6:"IPv6 \uBC94\uC704",base64:"base64 \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",base64url:"base64url \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",json_string:"JSON \uBB38\uC790\uC5F4",e164:"E.164 \uBC88\uD638",jwt:"JWT",template_literal:"\uC785\uB825"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 instanceof ${n.expected}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${r}\uC785\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 ${o}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${r}\uC785\uB2C8\uB2E4`}case"invalid_value":return n.values.length===1?`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${SA(n.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC635\uC158: ${Ve(n.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let o=n.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",a=o==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",r=A(n.origin),s=r?.unit??"\uC694\uC18C";return r?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()}${s} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()} ${o}${a}`}case"too_small":{let o=n.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",a=o==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",r=A(n.origin),s=r?.unit??"\uC694\uC18C";return r?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()}${s} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()} ${o}${a}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.prefix}"(\uC73C)\uB85C \uC2DC\uC791\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="ends_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.suffix}"(\uC73C)\uB85C \uB05D\uB098\uC57C \uD569\uB2C8\uB2E4`:o.format==="includes"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.includes}"\uC744(\uB97C) \uD3EC\uD568\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="regex"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: \uC815\uADDC\uC2DD ${o.pattern} \uD328\uD134\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C ${e[o.format]??n.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${n.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${Ve(n.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${n.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${n.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};function use(){return{localeError:DUe()}}var nf=t=>t.charAt(0).toUpperCase()+t.slice(1);function Ese(t){let A=Math.abs(t),e=A%10,i=A%100;return i>=11&&i<=19||e===0?"many":e===1?"one":"few"}var bUe=()=>{let t={string:{unit:{one:"simbolis",few:"simboliai",many:"simboli\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne ilgesn\u0117 kaip",notInclusive:"turi b\u016Bti trumpesn\u0117 kaip"},bigger:{inclusive:"turi b\u016Bti ne trumpesn\u0117 kaip",notInclusive:"turi b\u016Bti ilgesn\u0117 kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"bait\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne didesnis kaip",notInclusive:"turi b\u016Bti ma\u017Eesnis kaip"},bigger:{inclusive:"turi b\u016Bti ne ma\u017Eesnis kaip",notInclusive:"turi b\u016Bti didesnis kaip"}}},array:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}},set:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}}};function A(n,o,a,r){let s=t[n]??null;return s===null?s:{unit:s.unit[o],verb:s.verb[r][a?"inclusive":"notInclusive"]}}let e={regex:"\u012Fvestis",email:"el. pa\u0161to adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukm\u0117",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 u\u017Ekoduota eilut\u0117",base64url:"base64url u\u017Ekoduota eilut\u0117",json_string:"JSON eilut\u0117",e164:"E.164 numeris",jwt:"JWT",template_literal:"\u012Fvestis"},i={nan:"NaN",number:"skai\u010Dius",bigint:"sveikasis skai\u010Dius",string:"eilut\u0117",boolean:"login\u0117 reik\u0161m\u0117",undefined:"neapibr\u0117\u017Eta reik\u0161m\u0117",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulin\u0117 reik\u0161m\u0117"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Gautas tipas ${r}, o tik\u0117tasi - instanceof ${n.expected}`:`Gautas tipas ${r}, o tik\u0117tasi - ${o}`}case"invalid_value":return n.values.length===1?`Privalo b\u016Bti ${SA(n.values[0])}`:`Privalo b\u016Bti vienas i\u0161 ${Ve(n.values,"|")} pasirinkim\u0173`;case"too_big":{let o=i[n.origin]??n.origin,a=A(n.origin,Ese(Number(n.maximum)),n.inclusive??!1,"smaller");if(a?.verb)return`${nf(o??n.origin??"reik\u0161m\u0117")} ${a.verb} ${n.maximum.toString()} ${a.unit??"element\u0173"}`;let r=n.inclusive?"ne didesnis kaip":"ma\u017Eesnis kaip";return`${nf(o??n.origin??"reik\u0161m\u0117")} turi b\u016Bti ${r} ${n.maximum.toString()} ${a?.unit}`}case"too_small":{let o=i[n.origin]??n.origin,a=A(n.origin,Ese(Number(n.minimum)),n.inclusive??!1,"bigger");if(a?.verb)return`${nf(o??n.origin??"reik\u0161m\u0117")} ${a.verb} ${n.minimum.toString()} ${a.unit??"element\u0173"}`;let r=n.inclusive?"ne ma\u017Eesnis kaip":"didesnis kaip";return`${nf(o??n.origin??"reik\u0161m\u0117")} turi b\u016Bti ${r} ${n.minimum.toString()} ${a?.unit}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Eilut\u0117 privalo prasid\u0117ti "${o.prefix}"`:o.format==="ends_with"?`Eilut\u0117 privalo pasibaigti "${o.suffix}"`:o.format==="includes"?`Eilut\u0117 privalo \u012Ftraukti "${o.includes}"`:o.format==="regex"?`Eilut\u0117 privalo atitikti ${o.pattern}`:`Neteisingas ${e[o.format]??n.format}`}case"not_multiple_of":return`Skai\u010Dius privalo b\u016Bti ${n.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpa\u017Eint${n.keys.length>1?"i":"as"} rakt${n.keys.length>1?"ai":"as"}: ${Ve(n.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga \u012Fvestis";case"invalid_element":{let o=i[n.origin]??n.origin;return`${nf(o??n.origin??"reik\u0161m\u0117")} turi klaiding\u0105 \u012Fvest\u012F`}default:return"Klaidinga \u012Fvestis"}}};function Qse(){return{localeError:bUe()}}var MUe=()=>{let t={string:{unit:"\u0437\u043D\u0430\u0446\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},file:{unit:"\u0431\u0430\u0458\u0442\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},array:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},set:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"}};function A(n){return t[n]??null}let e={regex:"\u0432\u043D\u0435\u0441",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u043D\u0430 \u0435-\u043F\u043E\u0448\u0442\u0430",url:"URL",emoji:"\u0435\u043C\u043E\u045F\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0443\u043C \u0438 \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0443\u043C",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u0432\u0440\u0435\u043C\u0435\u0442\u0440\u0430\u0435\u045A\u0435",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441\u0430",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441\u0430",cidrv4:"IPv4 \u043E\u043F\u0441\u0435\u0433",cidrv6:"IPv6 \u043E\u043F\u0441\u0435\u0433",base64:"base64-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",base64url:"base64url-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",json_string:"JSON \u043D\u0438\u0437\u0430",e164:"E.164 \u0431\u0440\u043E\u0458",jwt:"JWT",template_literal:"\u0432\u043D\u0435\u0441"},i={nan:"NaN",number:"\u0431\u0440\u043E\u0458",array:"\u043D\u0438\u0437\u0430"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 instanceof ${n.expected}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${r}`:`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${o}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${r}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${SA(n.values[0])}`:`\u0413\u0440\u0435\u0448\u0430\u043D\u0430 \u043E\u043F\u0446\u0438\u0458\u0430: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 \u0435\u0434\u043D\u0430 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438"}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.minimum.toString()} ${a.unit}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0443\u0432\u0430 \u0441\u043E "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430 \u0441\u043E "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0432\u043A\u043B\u0443\u0447\u0443\u0432\u0430 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u043E\u0434\u0433\u043E\u0430\u0440\u0430 \u043D\u0430 \u043F\u0430\u0442\u0435\u0440\u043D\u043E\u0442 ${o.pattern}`:`Invalid ${e[o.format]??n.format}`}case"not_multiple_of":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0431\u0440\u043E\u0458: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0431\u0438\u0434\u0435 \u0434\u0435\u043B\u0438\u0432 \u0441\u043E ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D\u0438 \u043A\u043B\u0443\u0447\u0435\u0432\u0438":"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D \u043A\u043B\u0443\u0447"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${n.origin}`;case"invalid_union":return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441";case"invalid_element":return`\u0413\u0440\u0435\u0448\u043D\u0430 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442 \u0432\u043E ${n.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};function pse(){return{localeError:MUe()}}var SUe=()=>{let t={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function A(n){return t[n]??null}let e={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"nombor"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input tidak sah: dijangka instanceof ${n.expected}, diterima ${r}`:`Input tidak sah: dijangka ${o}, diterima ${r}`}case"invalid_value":return n.values.length===1?`Input tidak sah: dijangka ${SA(n.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Terlalu besar: dijangka ${n.origin??"nilai"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: dijangka ${n.origin??"nilai"} adalah ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Terlalu kecil: dijangka ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: dijangka ${n.origin} adalah ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak sah: mesti bermula dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak sah: mesti berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak sah: mesti mengandungi "${o.includes}"`:o.format==="regex"?`String tidak sah: mesti sepadan dengan corak ${o.pattern}`:`${e[o.format]??n.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${Ve(n.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${n.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${n.origin}`;default:return"Input tidak sah"}}};function mse(){return{localeError:SUe()}}var kUe=()=>{let t={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function A(n){return t[n]??null}let e={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},i={nan:"NaN",number:"getal"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ongeldige invoer: verwacht instanceof ${n.expected}, ontving ${r}`:`Ongeldige invoer: verwacht ${o}, ontving ${r}`}case"invalid_value":return n.values.length===1?`Ongeldige invoer: verwacht ${SA(n.values[0])}`:`Ongeldige optie: verwacht \xE9\xE9n van ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin),r=n.origin==="date"?"laat":n.origin==="string"?"lang":"groot";return a?`Te ${r}: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} ${a.unit??"elementen"} ${a.verb}`:`Te ${r}: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} is`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin),r=n.origin==="date"?"vroeg":n.origin==="string"?"kort":"klein";return a?`Te ${r}: verwacht dat ${n.origin} ${o}${n.minimum.toString()} ${a.unit} ${a.verb}`:`Te ${r}: verwacht dat ${n.origin} ${o}${n.minimum.toString()} is`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ongeldige tekst: moet met "${o.prefix}" beginnen`:o.format==="ends_with"?`Ongeldige tekst: moet op "${o.suffix}" eindigen`:o.format==="includes"?`Ongeldige tekst: moet "${o.includes}" bevatten`:o.format==="regex"?`Ongeldige tekst: moet overeenkomen met patroon ${o.pattern}`:`Ongeldig: ${e[o.format]??n.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${n.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${n.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${n.origin}`;default:return"Ongeldige invoer"}}};function fse(){return{localeError:kUe()}}var _Ue=()=>{let t={string:{unit:"tegn",verb:"\xE5 ha"},file:{unit:"bytes",verb:"\xE5 ha"},array:{unit:"elementer",verb:"\xE5 inneholde"},set:{unit:"elementer",verb:"\xE5 inneholde"}};function A(n){return t[n]??null}let e={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"tall",array:"liste"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ugyldig input: forventet instanceof ${n.expected}, fikk ${r}`:`Ugyldig input: forventet ${o}, fikk ${r}`}case"invalid_value":return n.values.length===1?`Ugyldig verdi: forventet ${SA(n.values[0])}`:`Ugyldig valg: forventet en av ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()} ${a.unit??"elementer"}`:`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()} ${a.unit}`:`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ugyldig streng: m\xE5 starte med "${o.prefix}"`:o.format==="ends_with"?`Ugyldig streng: m\xE5 ende med "${o.suffix}"`:o.format==="includes"?`Ugyldig streng: m\xE5 inneholde "${o.includes}"`:o.format==="regex"?`Ugyldig streng: m\xE5 matche m\xF8nsteret ${o.pattern}`:`Ugyldig ${e[o.format]??n.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${n.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${n.origin}`;default:return"Ugyldig input"}}};function wse(){return{localeError:_Ue()}}var xUe=()=>{let t={string:{unit:"harf",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"unsur",verb:"olmal\u0131d\u0131r"},set:{unit:"unsur",verb:"olmal\u0131d\u0131r"}};function A(n){return t[n]??null}let e={regex:"giren",email:"epostag\xE2h",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO heng\xE2m\u0131",date:"ISO tarihi",time:"ISO zaman\u0131",duration:"ISO m\xFCddeti",ipv4:"IPv4 ni\u015F\xE2n\u0131",ipv6:"IPv6 ni\u015F\xE2n\u0131",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-\u015Fifreli metin",base64url:"base64url-\u015Fifreli metin",json_string:"JSON metin",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"giren"},i={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`F\xE2sit giren: umulan instanceof ${n.expected}, al\u0131nan ${r}`:`F\xE2sit giren: umulan ${o}, al\u0131nan ${r}`}case"invalid_value":return n.values.length===1?`F\xE2sit giren: umulan ${SA(n.values[0])}`:`F\xE2sit tercih: m\xFBteberler ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} ${a.unit??"elements"} sahip olmal\u0131yd\u0131.`:`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} ${a.unit} sahip olmal\u0131yd\u0131.`:`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let o=n;return o.format==="starts_with"?`F\xE2sit metin: "${o.prefix}" ile ba\u015Flamal\u0131.`:o.format==="ends_with"?`F\xE2sit metin: "${o.suffix}" ile bitmeli.`:o.format==="includes"?`F\xE2sit metin: "${o.includes}" ihtiv\xE2 etmeli.`:o.format==="regex"?`F\xE2sit metin: ${o.pattern} nak\u015F\u0131na uymal\u0131.`:`F\xE2sit ${e[o.format]??n.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${n.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${n.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};function yse(){return{localeError:xUe()}}var RUe=()=>{let t={string:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},file:{unit:"\u0628\u0627\u06CC\u067C\u0633",verb:"\u0648\u0644\u0631\u064A"},array:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},set:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"}};function A(n){return t[n]??null}let e={regex:"\u0648\u0631\u0648\u062F\u064A",email:"\u0628\u0631\u06CC\u069A\u0646\u0627\u0644\u06CC\u06A9",url:"\u06CC\u0648 \u0622\u0631 \u0627\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0646\u06CC\u067C\u0647 \u0627\u0648 \u0648\u062E\u062A",date:"\u0646\u06D0\u067C\u0647",time:"\u0648\u062E\u062A",duration:"\u0645\u0648\u062F\u0647",ipv4:"\u062F IPv4 \u067E\u062A\u0647",ipv6:"\u062F IPv6 \u067E\u062A\u0647",cidrv4:"\u062F IPv4 \u0633\u0627\u062D\u0647",cidrv6:"\u062F IPv6 \u0633\u0627\u062D\u0647",base64:"base64-encoded \u0645\u062A\u0646",base64url:"base64url-encoded \u0645\u062A\u0646",json_string:"JSON \u0645\u062A\u0646",e164:"\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u064A"},i={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0627\u0631\u06D0"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F instanceof ${n.expected} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${r} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`:`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${o} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${r} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`}case"invalid_value":return n.values.length===1?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${SA(n.values[0])} \u0648\u0627\u06CC`:`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${Ve(n.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0648\u064A`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0648\u064A`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.prefix}" \u0633\u0631\u0647 \u067E\u06CC\u0644 \u0634\u064A`:o.format==="ends_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.suffix}" \u0633\u0631\u0647 \u067E\u0627\u06CC \u062A\u0647 \u0648\u0631\u0633\u064A\u0696\u064A`:o.format==="includes"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F "${o.includes}" \u0648\u0644\u0631\u064A`:o.format==="regex"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F ${o.pattern} \u0633\u0631\u0647 \u0645\u0637\u0627\u0628\u0642\u062A \u0648\u0644\u0631\u064A`:`${e[o.format]??n.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${n.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${n.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${n.origin} \u06A9\u06D0`;case"invalid_union":return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A";case"invalid_element":return`\u0646\u0627\u0633\u0645 \u0639\u0646\u0635\u0631 \u067E\u0647 ${n.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};function vse(){return{localeError:RUe()}}var NUe=()=>{let t={string:{unit:"znak\xF3w",verb:"mie\u0107"},file:{unit:"bajt\xF3w",verb:"mie\u0107"},array:{unit:"element\xF3w",verb:"mie\u0107"},set:{unit:"element\xF3w",verb:"mie\u0107"}};function A(n){return t[n]??null}let e={regex:"wyra\u017Cenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ci\u0105g znak\xF3w zakodowany w formacie base64",base64url:"ci\u0105g znak\xF3w zakodowany w formacie base64url",json_string:"ci\u0105g znak\xF3w w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wej\u015Bcie"},i={nan:"NaN",number:"liczba",array:"tablica"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano instanceof ${n.expected}, otrzymano ${r}`:`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${o}, otrzymano ${r}`}case"invalid_value":return n.values.length===1?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${SA(n.values[0])}`:`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.maximum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.minimum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zaczyna\u0107 si\u0119 od "${o.prefix}"`:o.format==="ends_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi ko\u0144czy\u0107 si\u0119 na "${o.suffix}"`:o.format==="includes"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zawiera\u0107 "${o.includes}"`:o.format==="regex"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi odpowiada\u0107 wzorcowi ${o.pattern}`:`Nieprawid\u0142ow(y/a/e) ${e[o.format]??n.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${n.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${n.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${n.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};function Dse(){return{localeError:NUe()}}var FUe=()=>{let t={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function A(n){return t[n]??null}let e={regex:"padr\xE3o",email:"endere\xE7o de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"dura\xE7\xE3o ISO",ipv4:"endere\xE7o IPv4",ipv6:"endere\xE7o IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN",number:"n\xFAmero",null:"nulo"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Tipo inv\xE1lido: esperado instanceof ${n.expected}, recebido ${r}`:`Tipo inv\xE1lido: esperado ${o}, recebido ${r}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: esperado ${SA(n.values[0])}`:`Op\xE7\xE3o inv\xE1lida: esperada uma das ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Muito grande: esperado que ${n.origin??"valor"} tivesse ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Muito grande: esperado que ${n.origin??"valor"} fosse ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Muito pequeno: esperado que ${n.origin} tivesse ${o}${n.minimum.toString()} ${a.unit}`:`Muito pequeno: esperado que ${n.origin} fosse ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Texto inv\xE1lido: deve come\xE7ar com "${o.prefix}"`:o.format==="ends_with"?`Texto inv\xE1lido: deve terminar com "${o.suffix}"`:o.format==="includes"?`Texto inv\xE1lido: deve incluir "${o.includes}"`:o.format==="regex"?`Texto inv\xE1lido: deve corresponder ao padr\xE3o ${o.pattern}`:`${e[o.format]??n.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Chave${n.keys.length>1?"s":""} desconhecida${n.keys.length>1?"s":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${n.origin}`;default:return"Campo inv\xE1lido"}}};function bse(){return{localeError:FUe()}}var LUe=()=>{let t={string:{unit:"caractere",verb:"s\u0103 aib\u0103"},file:{unit:"octe\u021Bi",verb:"s\u0103 aib\u0103"},array:{unit:"elemente",verb:"s\u0103 aib\u0103"},set:{unit:"elemente",verb:"s\u0103 aib\u0103"},map:{unit:"intr\u0103ri",verb:"s\u0103 aib\u0103"}};function A(n){return t[n]??null}let e={regex:"intrare",email:"adres\u0103 de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dat\u0103 \u0219i or\u0103 ISO",date:"dat\u0103 ISO",time:"or\u0103 ISO",duration:"durat\u0103 ISO",ipv4:"adres\u0103 IPv4",ipv6:"adres\u0103 IPv6",mac:"adres\u0103 MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"\u0219ir codat base64",base64url:"\u0219ir codat base64url",json_string:"\u0219ir JSON",e164:"num\u0103r E.164",jwt:"JWT",template_literal:"intrare"},i={nan:"NaN",string:"\u0219ir",number:"num\u0103r",boolean:"boolean",function:"func\u021Bie",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"num\u0103r mare",void:"void",never:"never",map:"hart\u0103",set:"set"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return`Intrare invalid\u0103: a\u0219teptat ${o}, primit ${r}`}case"invalid_value":return n.values.length===1?`Intrare invalid\u0103: a\u0219teptat ${SA(n.values[0])}`:`Op\u021Biune invalid\u0103: a\u0219teptat una dintre ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Prea mare: a\u0219teptat ca ${n.origin??"valoarea"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"elemente"}`:`Prea mare: a\u0219teptat ca ${n.origin??"valoarea"} s\u0103 fie ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Prea mic: a\u0219teptat ca ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Prea mic: a\u0219teptat ca ${n.origin} s\u0103 fie ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0218ir invalid: trebuie s\u0103 \xEEnceap\u0103 cu "${o.prefix}"`:o.format==="ends_with"?`\u0218ir invalid: trebuie s\u0103 se termine cu "${o.suffix}"`:o.format==="includes"?`\u0218ir invalid: trebuie s\u0103 includ\u0103 "${o.includes}"`:o.format==="regex"?`\u0218ir invalid: trebuie s\u0103 se potriveasc\u0103 cu modelul ${o.pattern}`:`Format invalid: ${e[o.format]??n.format}`}case"not_multiple_of":return`Num\u0103r invalid: trebuie s\u0103 fie multiplu de ${n.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${Ve(n.keys,", ")}`;case"invalid_key":return`Cheie invalid\u0103 \xEEn ${n.origin}`;case"invalid_union":return"Intrare invalid\u0103";case"invalid_element":return`Valoare invalid\u0103 \xEEn ${n.origin}`;default:return"Intrare invalid\u0103"}}};function Mse(){return{localeError:LUe()}}function Sse(t,A,e,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?A:o>=2&&o<=4?e:i}var GUe=()=>{let t={string:{unit:{one:"\u0441\u0438\u043C\u0432\u043E\u043B",few:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",many:"\u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u0430",many:"\u0431\u0430\u0439\u0442"},verb:"\u0438\u043C\u0435\u0442\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"}};function A(n){return t[n]??null}let e={regex:"\u0432\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u044F",duration:"ISO \u0434\u043B\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64",base64url:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64url",json_string:"JSON \u0441\u0442\u0440\u043E\u043A\u0430",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0432\u043E\u0434"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${r}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${o}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${r}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${SA(n.values[0])}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0430\u0440\u0438\u0430\u043D\u0442: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0434\u043D\u043E \u0438\u0437 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);if(a){let r=Number(n.maximum),s=Sse(r,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.maximum.toString()} ${s}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);if(a){let r=Number(n.minimum),s=Sse(r,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.minimum.toString()} ${s}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u043D\u0430\u0447\u0438\u043D\u0430\u0442\u044C\u0441\u044F \u0441 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0442\u044C\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 ${e[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E: \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${n.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0438":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435";case"invalid_element":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"}}};function kse(){return{localeError:GUe()}}var KUe=()=>{let t={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function A(n){return t[n]??null}let e={regex:"vnos",email:"e-po\u0161tni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in \u010Das",date:"ISO datum",time:"ISO \u010Das",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 \u0161tevilka",jwt:"JWT",template_literal:"vnos"},i={nan:"NaN",number:"\u0161tevilo",array:"tabela"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neveljaven vnos: pri\u010Dakovano instanceof ${n.expected}, prejeto ${r}`:`Neveljaven vnos: pri\u010Dakovano ${o}, prejeto ${r}`}case"invalid_value":return n.values.length===1?`Neveljaven vnos: pri\u010Dakovano ${SA(n.values[0])}`:`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} imelo ${o}${n.maximum.toString()} ${a.unit??"elementov"}`:`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Premajhno: pri\u010Dakovano, da bo ${n.origin} imelo ${o}${n.minimum.toString()} ${a.unit}`:`Premajhno: pri\u010Dakovano, da bo ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neveljaven niz: mora se za\u010Deti z "${o.prefix}"`:o.format==="ends_with"?`Neveljaven niz: mora se kon\u010Dati z "${o.suffix}"`:o.format==="includes"?`Neveljaven niz: mora vsebovati "${o.includes}"`:o.format==="regex"?`Neveljaven niz: mora ustrezati vzorcu ${o.pattern}`:`Neveljaven ${e[o.format]??n.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${n.divisor}`;case"unrecognized_keys":return`Neprepoznan${n.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${n.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${n.origin}`;default:return"Neveljaven vnos"}}};function _se(){return{localeError:KUe()}}var UUe=()=>{let t={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att inneh\xE5lla"},set:{unit:"objekt",verb:"att inneh\xE5lla"}};function A(n){return t[n]??null}let e={regex:"regulj\xE4rt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad str\xE4ng",base64url:"base64url-kodad str\xE4ng",json_string:"JSON-str\xE4ng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},i={nan:"NaN",number:"antal",array:"lista"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ogiltig inmatning: f\xF6rv\xE4ntat instanceof ${n.expected}, fick ${r}`:`Ogiltig inmatning: f\xF6rv\xE4ntat ${o}, fick ${r}`}case"invalid_value":return n.values.length===1?`Ogiltig inmatning: f\xF6rv\xE4ntat ${SA(n.values[0])}`:`Ogiltigt val: f\xF6rv\xE4ntade en av ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`F\xF6r stor(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()} ${a.unit??"element"}`:`F\xF6r stor(t): f\xF6rv\xE4ntat ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()} ${a.unit}`:`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ogiltig str\xE4ng: m\xE5ste b\xF6rja med "${o.prefix}"`:o.format==="ends_with"?`Ogiltig str\xE4ng: m\xE5ste sluta med "${o.suffix}"`:o.format==="includes"?`Ogiltig str\xE4ng: m\xE5ste inneh\xE5lla "${o.includes}"`:o.format==="regex"?`Ogiltig str\xE4ng: m\xE5ste matcha m\xF6nstret "${o.pattern}"`:`Ogiltig(t) ${e[o.format]??n.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${Ve(n.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${n.origin??"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${n.origin??"v\xE4rdet"}`;default:return"Ogiltig input"}}};function xse(){return{localeError:UUe()}}var TUe=()=>{let t={string:{unit:"\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},file:{unit:"\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},array:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},set:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"}};function A(n){return t[n]??null}let e={regex:"\u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1",email:"\u0BAE\u0BBF\u0BA9\u0BCD\u0BA9\u0B9E\u0BCD\u0B9A\u0BB2\u0BCD \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0BA4\u0BC7\u0BA4\u0BBF \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",date:"ISO \u0BA4\u0BC7\u0BA4\u0BBF",time:"ISO \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",duration:"ISO \u0B95\u0BBE\u0BB2 \u0B85\u0BB3\u0BB5\u0BC1",ipv4:"IPv4 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",ipv6:"IPv6 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",cidrv4:"IPv4 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",cidrv6:"IPv6 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",base64:"base64-encoded \u0B9A\u0BB0\u0BAE\u0BCD",base64url:"base64url-encoded \u0B9A\u0BB0\u0BAE\u0BCD",json_string:"JSON \u0B9A\u0BB0\u0BAE\u0BCD",e164:"E.164 \u0B8E\u0BA3\u0BCD",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"\u0B8E\u0BA3\u0BCD",array:"\u0B85\u0BA3\u0BBF",null:"\u0BB5\u0BC6\u0BB1\u0BC1\u0BAE\u0BC8"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 instanceof ${n.expected}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${r}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${o}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${r}`}case"invalid_value":return n.values.length===1?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${SA(n.values[0])}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0BAE\u0BCD: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${Ve(n.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} ${a.unit??"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD"} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} ${a.unit} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.prefix}" \u0B87\u0BB2\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="ends_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.suffix}" \u0B87\u0BB2\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BAF \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="includes"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.includes}" \u0B90 \u0B89\u0BB3\u0BCD\u0BB3\u0B9F\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="regex"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: ${o.pattern} \u0BAE\u0BC1\u0BB1\u0BC8\u0BAA\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1\u0B9F\u0BA9\u0BCD \u0BAA\u0BCA\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 ${e[o.format]??n.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${n.divisor} \u0B87\u0BA9\u0BCD \u0BAA\u0BB2\u0BAE\u0BBE\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;case"unrecognized_keys":return`\u0B85\u0B9F\u0BC8\u0BAF\u0BBE\u0BB3\u0BAE\u0BCD \u0BA4\u0BC6\u0BB0\u0BBF\u0BAF\u0BBE\u0BA4 \u0BB5\u0BBF\u0B9A\u0BC8${n.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0B9A\u0BC8`;case"invalid_union":return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1";case"invalid_element":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1`;default:return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1"}}};function Rse(){return{localeError:TUe()}}var OUe=()=>{let t={string:{unit:"\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},file:{unit:"\u0E44\u0E1A\u0E15\u0E4C",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},array:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},set:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"}};function A(n){return t[n]??null}let e={regex:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",email:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",url:"URL",emoji:"\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",date:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",time:"\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",duration:"\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",ipv4:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",ipv6:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",cidrv4:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",cidrv6:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",base64:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",base64url:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",json_string:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",e164:"\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",jwt:"\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",template_literal:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"},i={nan:"NaN",number:"\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",array:"\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",null:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${n.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${r}`:`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${o} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${r}`}case"invalid_value":return n.values.length===1?`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${SA(n.values[0])}`:`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19\u0E2B\u0E19\u0E36\u0E48\u0E07\u0E43\u0E19 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",a=A(n.origin);return a?`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()} ${a.unit??"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`:`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",a=A(n.origin);return a?`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()} ${a.unit}`:`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E02\u0E36\u0E49\u0E19\u0E15\u0E49\u0E19\u0E14\u0E49\u0E27\u0E22 "${o.prefix}"`:o.format==="ends_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E25\u0E07\u0E17\u0E49\u0E32\u0E22\u0E14\u0E49\u0E27\u0E22 "${o.suffix}"`:o.format==="includes"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E21\u0E35 "${o.includes}" \u0E2D\u0E22\u0E39\u0E48\u0E43\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21`:o.format==="regex"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14 ${o.pattern}`:`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: ${e[o.format]??n.format}`}case"not_multiple_of":return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E40\u0E1B\u0E47\u0E19\u0E08\u0E33\u0E19\u0E27\u0E19\u0E17\u0E35\u0E48\u0E2B\u0E32\u0E23\u0E14\u0E49\u0E27\u0E22 ${n.divisor} \u0E44\u0E14\u0E49\u0E25\u0E07\u0E15\u0E31\u0E27`;case"unrecognized_keys":return`\u0E1E\u0E1A\u0E04\u0E35\u0E22\u0E4C\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;case"invalid_union":return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E44\u0E21\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E22\u0E39\u0E40\u0E19\u0E35\u0E22\u0E19\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E44\u0E27\u0E49";case"invalid_element":return`\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};function Nse(){return{localeError:OUe()}}var JUe=()=>{let t={string:{unit:"karakter",verb:"olmal\u0131"},file:{unit:"bayt",verb:"olmal\u0131"},array:{unit:"\xF6\u011Fe",verb:"olmal\u0131"},set:{unit:"\xF6\u011Fe",verb:"olmal\u0131"}};function A(n){return t[n]??null}let e={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO s\xFCre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aral\u0131\u011F\u0131",cidrv6:"IPv6 aral\u0131\u011F\u0131",base64:"base64 ile \u015Fifrelenmi\u015F metin",base64url:"base64url ile \u015Fifrelenmi\u015F metin",json_string:"JSON dizesi",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"\u015Eablon dizesi"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ge\xE7ersiz de\u011Fer: beklenen instanceof ${n.expected}, al\u0131nan ${r}`:`Ge\xE7ersiz de\u011Fer: beklenen ${o}, al\u0131nan ${r}`}case"invalid_value":return n.values.length===1?`Ge\xE7ersiz de\u011Fer: beklenen ${SA(n.values[0])}`:`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\xC7ok b\xFCy\xFCk: beklenen ${n.origin??"de\u011Fer"} ${o}${n.maximum.toString()} ${a.unit??"\xF6\u011Fe"}`:`\xC7ok b\xFCy\xFCk: beklenen ${n.origin??"de\u011Fer"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ge\xE7ersiz metin: "${o.prefix}" ile ba\u015Flamal\u0131`:o.format==="ends_with"?`Ge\xE7ersiz metin: "${o.suffix}" ile bitmeli`:o.format==="includes"?`Ge\xE7ersiz metin: "${o.includes}" i\xE7ermeli`:o.format==="regex"?`Ge\xE7ersiz metin: ${o.pattern} desenine uymal\u0131`:`Ge\xE7ersiz ${e[o.format]??n.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${n.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${n.keys.length>1?"lar":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${n.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};function Fse(){return{localeError:JUe()}}var zUe=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},file:{unit:"\u0431\u0430\u0439\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"}};function A(n){return t[n]??null}let e={regex:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0457 \u043F\u043E\u0448\u0442\u0438",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0434\u0430\u0442\u0430 \u0442\u0430 \u0447\u0430\u0441 ISO",date:"\u0434\u0430\u0442\u0430 ISO",time:"\u0447\u0430\u0441 ISO",duration:"\u0442\u0440\u0438\u0432\u0430\u043B\u0456\u0441\u0442\u044C ISO",ipv4:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv4",ipv6:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv6",cidrv4:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv4",cidrv6:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv6",base64:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64",base64url:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64url",json_string:"\u0440\u044F\u0434\u043E\u043A JSON",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F instanceof ${n.expected}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${r}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${o}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${r}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${SA(n.values[0])}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0430 \u043E\u043F\u0446\u0456\u044F: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F \u043E\u0434\u043D\u0435 \u0437 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432"}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} \u0431\u0443\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043F\u043E\u0447\u0438\u043D\u0430\u0442\u0438\u0441\u044F \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0437\u0430\u043A\u0456\u043D\u0447\u0443\u0432\u0430\u0442\u0438\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043C\u0456\u0441\u0442\u0438\u0442\u0438 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0432\u0456\u0434\u043F\u043E\u0432\u0456\u0434\u0430\u0442\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 ${e[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0447\u0438\u0441\u043B\u043E: \u043F\u043E\u0432\u0438\u043D\u043D\u043E \u0431\u0443\u0442\u0438 \u043A\u0440\u0430\u0442\u043D\u0438\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0456":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456";case"invalid_element":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0443 ${n.origin}`;default:return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"}}};function JD(){return{localeError:zUe()}}function Lse(){return JD()}var YUe=()=>{let t={string:{unit:"\u062D\u0631\u0648\u0641",verb:"\u06C1\u0648\u0646\u0627"},file:{unit:"\u0628\u0627\u0626\u0679\u0633",verb:"\u06C1\u0648\u0646\u0627"},array:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"},set:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"}};function A(n){return t[n]??null}let e={regex:"\u0627\u0646 \u067E\u0679",email:"\u0627\u06CC \u0645\u06CC\u0644 \u0627\u06CC\u0688\u0631\u06CC\u0633",url:"\u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",uuidv4:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 4",uuidv6:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 6",nanoid:"\u0646\u06CC\u0646\u0648 \u0622\u0626\u06CC \u0688\u06CC",guid:"\u062C\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid2:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC 2",ulid:"\u06CC\u0648 \u0627\u06CC\u0644 \u0622\u0626\u06CC \u0688\u06CC",xid:"\u0627\u06CC\u06A9\u0633 \u0622\u0626\u06CC \u0688\u06CC",ksuid:"\u06A9\u06D2 \u0627\u06CC\u0633 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",datetime:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0688\u06CC\u0679 \u0679\u0627\u0626\u0645",date:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u062A\u0627\u0631\u06CC\u062E",time:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0648\u0642\u062A",duration:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0645\u062F\u062A",ipv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0627\u06CC\u0688\u0631\u06CC\u0633",ipv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0627\u06CC\u0688\u0631\u06CC\u0633",cidrv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0631\u06CC\u0646\u062C",cidrv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0631\u06CC\u0646\u062C",base64:"\u0628\u06CC\u0633 64 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",base64url:"\u0628\u06CC\u0633 64 \u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",json_string:"\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",e164:"\u0627\u06CC 164 \u0646\u0645\u0628\u0631",jwt:"\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",template_literal:"\u0627\u0646 \u067E\u0679"},i={nan:"NaN",number:"\u0646\u0645\u0628\u0631",array:"\u0622\u0631\u06D2",null:"\u0646\u0644"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: instanceof ${n.expected} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${r} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`:`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${o} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${r} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`}case"invalid_value":return n.values.length===1?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${SA(n.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`:`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${Ve(n.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0627\u0635\u0631"} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${o}${n.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u06D2 ${o}${n.minimum.toString()} ${a.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u0627 ${o}${n.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.prefix}" \u0633\u06D2 \u0634\u0631\u0648\u0639 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="ends_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.suffix}" \u067E\u0631 \u062E\u062A\u0645 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="includes"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.includes}" \u0634\u0627\u0645\u0644 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="regex"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: \u067E\u06CC\u0679\u0631\u0646 ${o.pattern} \u0633\u06D2 \u0645\u06CC\u0686 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:`\u063A\u0644\u0637 ${e[o.format]??n.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${n.divisor} \u06A9\u0627 \u0645\u0636\u0627\u0639\u0641 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;case"unrecognized_keys":return`\u063A\u06CC\u0631 \u062A\u0633\u0644\u06CC\u0645 \u0634\u062F\u06C1 \u06A9\u06CC${n.keys.length>1?"\u0632":""}: ${Ve(n.keys,"\u060C ")}`;case"invalid_key":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};function Gse(){return{localeError:YUe()}}var HUe=()=>{let t={string:{unit:"belgi",verb:"bo\u2018lishi kerak"},file:{unit:"bayt",verb:"bo\u2018lishi kerak"},array:{unit:"element",verb:"bo\u2018lishi kerak"},set:{unit:"element",verb:"bo\u2018lishi kerak"},map:{unit:"yozuv",verb:"bo\u2018lishi kerak"}};function A(n){return t[n]??null}let e={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},i={nan:"NaN",number:"raqam",array:"massiv"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`Noto\u2018g\u2018ri kirish: kutilgan instanceof ${n.expected}, qabul qilingan ${r}`:`Noto\u2018g\u2018ri kirish: kutilgan ${o}, qabul qilingan ${r}`}case"invalid_value":return n.values.length===1?`Noto\u2018g\u2018ri kirish: kutilgan ${SA(n.values[0])}`:`Noto\u2018g\u2018ri variant: quyidagilardan biri kutilgan ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Juda katta: kutilgan ${n.origin??"qiymat"} ${o}${n.maximum.toString()} ${a.unit} ${a.verb}`:`Juda katta: kutilgan ${n.origin??"qiymat"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Juda kichik: kutilgan ${n.origin} ${o}${n.minimum.toString()} ${a.unit} ${a.verb}`:`Juda kichik: kutilgan ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Noto\u2018g\u2018ri satr: "${o.prefix}" bilan boshlanishi kerak`:o.format==="ends_with"?`Noto\u2018g\u2018ri satr: "${o.suffix}" bilan tugashi kerak`:o.format==="includes"?`Noto\u2018g\u2018ri satr: "${o.includes}" ni o\u2018z ichiga olishi kerak`:o.format==="regex"?`Noto\u2018g\u2018ri satr: ${o.pattern} shabloniga mos kelishi kerak`:`Noto\u2018g\u2018ri ${e[o.format]??n.format}`}case"not_multiple_of":return`Noto\u2018g\u2018ri raqam: ${n.divisor} ning karralisi bo\u2018lishi kerak`;case"unrecognized_keys":return`Noma\u2019lum kalit${n.keys.length>1?"lar":""}: ${Ve(n.keys,", ")}`;case"invalid_key":return`${n.origin} dagi kalit noto\u2018g\u2018ri`;case"invalid_union":return"Noto\u2018g\u2018ri kirish";case"invalid_element":return`${n.origin} da noto\u2018g\u2018ri qiymat`;default:return"Noto\u2018g\u2018ri kirish"}}};function Kse(){return{localeError:HUe()}}var PUe=()=>{let t={string:{unit:"k\xFD t\u1EF1",verb:"c\xF3"},file:{unit:"byte",verb:"c\xF3"},array:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"},set:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"}};function A(n){return t[n]??null}let e={regex:"\u0111\u1EA7u v\xE0o",email:"\u0111\u1ECBa ch\u1EC9 email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ng\xE0y gi\u1EDD ISO",date:"ng\xE0y ISO",time:"gi\u1EDD ISO",duration:"kho\u1EA3ng th\u1EDDi gian ISO",ipv4:"\u0111\u1ECBa ch\u1EC9 IPv4",ipv6:"\u0111\u1ECBa ch\u1EC9 IPv6",cidrv4:"d\u1EA3i IPv4",cidrv6:"d\u1EA3i IPv6",base64:"chu\u1ED7i m\xE3 h\xF3a base64",base64url:"chu\u1ED7i m\xE3 h\xF3a base64url",json_string:"chu\u1ED7i JSON",e164:"s\u1ED1 E.164",jwt:"JWT",template_literal:"\u0111\u1EA7u v\xE0o"},i={nan:"NaN",number:"s\u1ED1",array:"m\u1EA3ng"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i instanceof ${n.expected}, nh\u1EADn \u0111\u01B0\u1EE3c ${r}`:`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${o}, nh\u1EADn \u0111\u01B0\u1EE3c ${r}`}case"invalid_value":return n.values.length===1?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${SA(n.values[0])}`:`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"ph\u1EA7n t\u1EED"}`:`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i b\u1EAFt \u0111\u1EA7u b\u1EB1ng "${o.prefix}"`:o.format==="ends_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i k\u1EBFt th\xFAc b\u1EB1ng "${o.suffix}"`:o.format==="includes"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i bao g\u1ED3m "${o.includes}"`:o.format==="regex"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i kh\u1EDBp v\u1EDBi m\u1EABu ${o.pattern}`:`${e[o.format]??n.format} kh\xF4ng h\u1EE3p l\u1EC7`}case"not_multiple_of":return`S\u1ED1 kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i l\xE0 b\u1ED9i s\u1ED1 c\u1EE7a ${n.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${Ve(n.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;case"invalid_union":return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7";case"invalid_element":return`Gi\xE1 tr\u1ECB kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};function Use(){return{localeError:PUe()}}var jUe=()=>{let t={string:{unit:"\u5B57\u7B26",verb:"\u5305\u542B"},file:{unit:"\u5B57\u8282",verb:"\u5305\u542B"},array:{unit:"\u9879",verb:"\u5305\u542B"},set:{unit:"\u9879",verb:"\u5305\u542B"}};function A(n){return t[n]??null}let e={regex:"\u8F93\u5165",email:"\u7535\u5B50\u90AE\u4EF6",url:"URL",emoji:"\u8868\u60C5\u7B26\u53F7",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u671F\u65F6\u95F4",date:"ISO\u65E5\u671F",time:"ISO\u65F6\u95F4",duration:"ISO\u65F6\u957F",ipv4:"IPv4\u5730\u5740",ipv6:"IPv6\u5730\u5740",cidrv4:"IPv4\u7F51\u6BB5",cidrv6:"IPv6\u7F51\u6BB5",base64:"base64\u7F16\u7801\u5B57\u7B26\u4E32",base64url:"base64url\u7F16\u7801\u5B57\u7B26\u4E32",json_string:"JSON\u5B57\u7B26\u4E32",e164:"E.164\u53F7\u7801",jwt:"JWT",template_literal:"\u8F93\u5165"},i={nan:"NaN",number:"\u6570\u5B57",array:"\u6570\u7EC4",null:"\u7A7A\u503C(null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B instanceof ${n.expected}\uFF0C\u5B9E\u9645\u63A5\u6536 ${r}`:`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${o}\uFF0C\u5B9E\u9645\u63A5\u6536 ${r}`}case"invalid_value":return n.values.length===1?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${SA(n.values[0])}`:`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()} ${a.unit??"\u4E2A\u5143\u7D20"}`:`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.prefix}" \u5F00\u5934`:o.format==="ends_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.suffix}" \u7ED3\u5C3E`:o.format==="includes"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F ${o.pattern}`:`\u65E0\u6548${e[o.format]??n.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${n.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${Ve(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${n.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};function Tse(){return{localeError:jUe()}}var VUe=()=>{let t={string:{unit:"\u5B57\u5143",verb:"\u64C1\u6709"},file:{unit:"\u4F4D\u5143\u7D44",verb:"\u64C1\u6709"},array:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"},set:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"}};function A(n){return t[n]??null}let e={regex:"\u8F38\u5165",email:"\u90F5\u4EF6\u5730\u5740",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u65E5\u671F\u6642\u9593",date:"ISO \u65E5\u671F",time:"ISO \u6642\u9593",duration:"ISO \u671F\u9593",ipv4:"IPv4 \u4F4D\u5740",ipv6:"IPv6 \u4F4D\u5740",cidrv4:"IPv4 \u7BC4\u570D",cidrv6:"IPv6 \u7BC4\u570D",base64:"base64 \u7DE8\u78BC\u5B57\u4E32",base64url:"base64url \u7DE8\u78BC\u5B57\u4E32",json_string:"JSON \u5B57\u4E32",e164:"E.164 \u6578\u503C",jwt:"JWT",template_literal:"\u8F38\u5165"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA instanceof ${n.expected}\uFF0C\u4F46\u6536\u5230 ${r}`:`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${o}\uFF0C\u4F46\u6536\u5230 ${r}`}case"invalid_value":return n.values.length===1?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${SA(n.values[0])}`:`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()} ${a.unit??"\u500B\u5143\u7D20"}`:`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()} ${a.unit}`:`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.prefix}" \u958B\u982D`:o.format==="ends_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.suffix}" \u7D50\u5C3E`:o.format==="includes"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u7B26\u5408\u683C\u5F0F ${o.pattern}`:`\u7121\u6548\u7684 ${e[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${n.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${n.keys.length>1?"\u5011":""}\uFF1A${Ve(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};function Ose(){return{localeError:VUe()}}var qUe=()=>{let t={string:{unit:"\xE0mi",verb:"n\xED"},file:{unit:"bytes",verb:"n\xED"},array:{unit:"nkan",verb:"n\xED"},set:{unit:"nkan",verb:"n\xED"}};function A(n){return t[n]??null}let e={regex:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9",email:"\xE0d\xEDr\u1EB9\u0301s\xEC \xECm\u1EB9\u0301l\xEC",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\xE0k\xF3k\xF2 ISO",date:"\u1ECDj\u1ECD\u0301 ISO",time:"\xE0k\xF3k\xF2 ISO",duration:"\xE0k\xF3k\xF2 t\xF3 p\xE9 ISO",ipv4:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv4",ipv6:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv6",cidrv4:"\xE0gb\xE8gb\xE8 IPv4",cidrv6:"\xE0gb\xE8gb\xE8 IPv6",base64:"\u1ECD\u0300r\u1ECD\u0300 t\xED a k\u1ECD\u0301 n\xED base64",base64url:"\u1ECD\u0300r\u1ECD\u0300 base64url",json_string:"\u1ECD\u0300r\u1ECD\u0300 JSON",e164:"n\u1ECD\u0301mb\xE0 E.164",jwt:"JWT",template_literal:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"},i={nan:"NaN",number:"n\u1ECD\u0301mb\xE0",array:"akop\u1ECD"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=LA(n.input),r=i[a]??a;return/^[A-Z]/.test(n.expected)?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi instanceof ${n.expected}, \xE0m\u1ECD\u0300 a r\xED ${r}`:`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${o}, \xE0m\u1ECD\u0300 a r\xED ${r}`}case"invalid_value":return n.values.length===1?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${SA(n.values[0])}`:`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${Ve(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=A(n.origin);return a?`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin??"iye"} ${a.verb} ${o}${n.maximum} ${a.unit}`:`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.maximum}`}case"too_small":{let o=n.inclusive?">=":">",a=A(n.origin);return a?`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin} ${a.verb} ${o}${n.minimum} ${a.unit}`:`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.minimum}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\u1EB9\u0300r\u1EB9\u0300 p\u1EB9\u0300l\xFA "${o.prefix}"`:o.format==="ends_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 par\xED p\u1EB9\u0300l\xFA "${o.suffix}"`:o.format==="includes"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 n\xED "${o.includes}"`:o.format==="regex"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\xE1 \xE0p\u1EB9\u1EB9r\u1EB9 mu ${o.pattern}`:`A\u1E63\xEC\u1E63e: ${e[o.format]??n.format}`}case"not_multiple_of":return`N\u1ECD\u0301mb\xE0 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 j\u1EB9\u0301 \xE8y\xE0 p\xEDp\xEDn ti ${n.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${Ve(n.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;case"invalid_union":return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e";case"invalid_element":return`Iye a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};function Jse(){return{localeError:qUe()}}var zse,lU=Symbol("ZodOutput"),cU=Symbol("ZodInput"),zD=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(A,...e){let i=e[0];return this._map.set(A,i),i&&typeof i=="object"&&"id"in i&&this._idmap.set(i.id,A),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(A){let e=this._map.get(A);return e&&typeof e=="object"&&"id"in e&&this._idmap.delete(e.id),this._map.delete(A),this}get(A){let e=A._zod.parent;if(e){let i=Y({},this.get(e)??{});delete i.id;let n=Y(Y({},i),this._map.get(A));return Object.keys(n).length?n:void 0}return this._map.get(A)}has(A){return this._map.has(A)}};function YD(){return new zD}(zse=globalThis).__zod_globalRegistry??(zse.__zod_globalRegistry=YD());var ds=globalThis.__zod_globalRegistry;function gU(t,A){return new t(Y({type:"string"},YA(A)))}function CU(t,A){return new t(Y({type:"string",coerce:!0},YA(A)))}function HD(t,A){return new t(Y({type:"string",format:"email",check:"string_format",abort:!1},YA(A)))}function af(t,A){return new t(Y({type:"string",format:"guid",check:"string_format",abort:!1},YA(A)))}function PD(t,A){return new t(Y({type:"string",format:"uuid",check:"string_format",abort:!1},YA(A)))}function jD(t,A){return new t(Y({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4"},YA(A)))}function VD(t,A){return new t(Y({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6"},YA(A)))}function qD(t,A){return new t(Y({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7"},YA(A)))}function rf(t,A){return new t(Y({type:"string",format:"url",check:"string_format",abort:!1},YA(A)))}function ZD(t,A){return new t(Y({type:"string",format:"emoji",check:"string_format",abort:!1},YA(A)))}function WD(t,A){return new t(Y({type:"string",format:"nanoid",check:"string_format",abort:!1},YA(A)))}function XD(t,A){return new t(Y({type:"string",format:"cuid",check:"string_format",abort:!1},YA(A)))}function $D(t,A){return new t(Y({type:"string",format:"cuid2",check:"string_format",abort:!1},YA(A)))}function eb(t,A){return new t(Y({type:"string",format:"ulid",check:"string_format",abort:!1},YA(A)))}function Ab(t,A){return new t(Y({type:"string",format:"xid",check:"string_format",abort:!1},YA(A)))}function tb(t,A){return new t(Y({type:"string",format:"ksuid",check:"string_format",abort:!1},YA(A)))}function ib(t,A){return new t(Y({type:"string",format:"ipv4",check:"string_format",abort:!1},YA(A)))}function nb(t,A){return new t(Y({type:"string",format:"ipv6",check:"string_format",abort:!1},YA(A)))}function dU(t,A){return new t(Y({type:"string",format:"mac",check:"string_format",abort:!1},YA(A)))}function ob(t,A){return new t(Y({type:"string",format:"cidrv4",check:"string_format",abort:!1},YA(A)))}function ab(t,A){return new t(Y({type:"string",format:"cidrv6",check:"string_format",abort:!1},YA(A)))}function rb(t,A){return new t(Y({type:"string",format:"base64",check:"string_format",abort:!1},YA(A)))}function sb(t,A){return new t(Y({type:"string",format:"base64url",check:"string_format",abort:!1},YA(A)))}function lb(t,A){return new t(Y({type:"string",format:"e164",check:"string_format",abort:!1},YA(A)))}function cb(t,A){return new t(Y({type:"string",format:"jwt",check:"string_format",abort:!1},YA(A)))}var IU={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function BU(t,A){return new t(Y({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null},YA(A)))}function hU(t,A){return new t(Y({type:"string",format:"date",check:"string_format"},YA(A)))}function uU(t,A){return new t(Y({type:"string",format:"time",check:"string_format",precision:null},YA(A)))}function EU(t,A){return new t(Y({type:"string",format:"duration",check:"string_format"},YA(A)))}function QU(t,A){return new t(Y({type:"number",checks:[]},YA(A)))}function pU(t,A){return new t(Y({type:"number",coerce:!0,checks:[]},YA(A)))}function mU(t,A){return new t(Y({type:"number",check:"number_format",abort:!1,format:"safeint"},YA(A)))}function fU(t,A){return new t(Y({type:"number",check:"number_format",abort:!1,format:"float32"},YA(A)))}function wU(t,A){return new t(Y({type:"number",check:"number_format",abort:!1,format:"float64"},YA(A)))}function yU(t,A){return new t(Y({type:"number",check:"number_format",abort:!1,format:"int32"},YA(A)))}function vU(t,A){return new t(Y({type:"number",check:"number_format",abort:!1,format:"uint32"},YA(A)))}function DU(t,A){return new t(Y({type:"boolean"},YA(A)))}function bU(t,A){return new t(Y({type:"boolean",coerce:!0},YA(A)))}function MU(t,A){return new t(Y({type:"bigint"},YA(A)))}function SU(t,A){return new t(Y({type:"bigint",coerce:!0},YA(A)))}function kU(t,A){return new t(Y({type:"bigint",check:"bigint_format",abort:!1,format:"int64"},YA(A)))}function _U(t,A){return new t(Y({type:"bigint",check:"bigint_format",abort:!1,format:"uint64"},YA(A)))}function xU(t,A){return new t(Y({type:"symbol"},YA(A)))}function RU(t,A){return new t(Y({type:"undefined"},YA(A)))}function NU(t,A){return new t(Y({type:"null"},YA(A)))}function FU(t){return new t({type:"any"})}function LU(t){return new t({type:"unknown"})}function GU(t,A){return new t(Y({type:"never"},YA(A)))}function KU(t,A){return new t(Y({type:"void"},YA(A)))}function UU(t,A){return new t(Y({type:"date"},YA(A)))}function TU(t,A){return new t(Y({type:"date",coerce:!0},YA(A)))}function OU(t,A){return new t(Y({type:"nan"},YA(A)))}function V0(t,A){return new SD(Ye(Y({check:"less_than"},YA(A)),{value:t,inclusive:!1}))}function ac(t,A){return new SD(Ye(Y({check:"less_than"},YA(A)),{value:t,inclusive:!0}))}function q0(t,A){return new kD(Ye(Y({check:"greater_than"},YA(A)),{value:t,inclusive:!1}))}function qs(t,A){return new kD(Ye(Y({check:"greater_than"},YA(A)),{value:t,inclusive:!0}))}function gb(t){return q0(0,t)}function Cb(t){return V0(0,t)}function db(t){return ac(0,t)}function Ib(t){return qs(0,t)}function j2(t,A){return new NG(Ye(Y({check:"multiple_of"},YA(A)),{value:t}))}function V2(t,A){return new GG(Ye(Y({check:"max_size"},YA(A)),{maximum:t}))}function Z0(t,A){return new KG(Ye(Y({check:"min_size"},YA(A)),{minimum:t}))}function V1(t,A){return new UG(Ye(Y({check:"size_equals"},YA(A)),{size:t}))}function q1(t,A){return new TG(Ye(Y({check:"max_length"},YA(A)),{maximum:t}))}function rd(t,A){return new OG(Ye(Y({check:"min_length"},YA(A)),{minimum:t}))}function Z1(t,A){return new JG(Ye(Y({check:"length_equals"},YA(A)),{length:t}))}function vE(t,A){return new zG(Ye(Y({check:"string_format",format:"regex"},YA(A)),{pattern:t}))}function DE(t){return new YG(Y({check:"string_format",format:"lowercase"},YA(t)))}function bE(t){return new HG(Y({check:"string_format",format:"uppercase"},YA(t)))}function ME(t,A){return new PG(Ye(Y({check:"string_format",format:"includes"},YA(A)),{includes:t}))}function SE(t,A){return new jG(Ye(Y({check:"string_format",format:"starts_with"},YA(A)),{prefix:t}))}function kE(t,A){return new VG(Ye(Y({check:"string_format",format:"ends_with"},YA(A)),{suffix:t}))}function Bb(t,A,e){return new qG(Y({check:"property",property:t,schema:A},YA(e)))}function _E(t,A){return new ZG(Y({check:"mime_type",mime:t},YA(A)))}function Pg(t){return new WG({check:"overwrite",tx:t})}function xE(t){return Pg(A=>A.normalize(t))}function RE(){return Pg(t=>t.trim())}function NE(){return Pg(t=>t.toLowerCase())}function FE(){return Pg(t=>t.toUpperCase())}function LE(){return Pg(t=>jL(t))}function JU(t,A,e){return new t(Y({type:"array",element:A},YA(e)))}function WUe(t,A,e){return new t(Y({type:"union",options:A},YA(e)))}function XUe(t,A,e){return new t(Y({type:"union",options:A,inclusive:!1},YA(e)))}function $Ue(t,A,e,i){return new t(Y({type:"union",options:e,discriminator:A},YA(i)))}function eTe(t,A,e){return new t({type:"intersection",left:A,right:e})}function ATe(t,A,e,i){let n=e instanceof Ki,o=n?i:e,a=n?e:null;return new t(Y({type:"tuple",items:A,rest:a},YA(o)))}function tTe(t,A,e,i){return new t(Y({type:"record",keyType:A,valueType:e},YA(i)))}function iTe(t,A,e,i){return new t(Y({type:"map",keyType:A,valueType:e},YA(i)))}function nTe(t,A,e){return new t(Y({type:"set",valueType:A},YA(e)))}function oTe(t,A,e){let i=Array.isArray(A)?Object.fromEntries(A.map(n=>[n,n])):A;return new t(Y({type:"enum",entries:i},YA(e)))}function aTe(t,A,e){return new t(Y({type:"enum",entries:A},YA(e)))}function rTe(t,A,e){return new t(Y({type:"literal",values:Array.isArray(A)?A:[A]},YA(e)))}function zU(t,A){return new t(Y({type:"file"},YA(A)))}function sTe(t,A){return new t({type:"transform",transform:A})}function lTe(t,A){return new t({type:"optional",innerType:A})}function cTe(t,A){return new t({type:"nullable",innerType:A})}function gTe(t,A,e){return new t({type:"default",innerType:A,get defaultValue(){return typeof e=="function"?e():qL(e)}})}function CTe(t,A,e){return new t(Y({type:"nonoptional",innerType:A},YA(e)))}function dTe(t,A){return new t({type:"success",innerType:A})}function ITe(t,A,e){return new t({type:"catch",innerType:A,catchValue:typeof e=="function"?e:()=>e})}function BTe(t,A,e){return new t({type:"pipe",in:A,out:e})}function hTe(t,A){return new t({type:"readonly",innerType:A})}function uTe(t,A,e){return new t(Y({type:"template_literal",parts:A},YA(e)))}function ETe(t,A){return new t({type:"lazy",getter:A})}function QTe(t,A){return new t({type:"promise",innerType:A})}function YU(t,A,e){let i=YA(e);return i.abort??(i.abort=!0),new t(Y({type:"custom",check:"custom",fn:A},i))}function HU(t,A,e){return new t(Y({type:"custom",check:"custom",fn:A},YA(e)))}function PU(t,A){let e=Yse(i=>(i.addIssue=n=>{if(typeof n=="string")i.issues.push(EE(n,i.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=i.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),i.issues.push(EE(o))}},t(i.value,i)),A);return e}function Yse(t,A){let e=new Ia(Y({check:"custom"},YA(A)));return e._zod.check=t,e}function jU(t){let A=new Ia({check:"describe"});return A._zod.onattach=[e=>{let i=ds.get(e)??{};ds.add(e,Ye(Y({},i),{description:t}))}],A._zod.check=()=>{},A}function VU(t){let A=new Ia({check:"meta"});return A._zod.onattach=[e=>{let i=ds.get(e)??{};ds.add(e,Y(Y({},i),t))}],A._zod.check=()=>{},A}function qU(t,A){let e=YA(A),i=e.truthy??["true","1","yes","on","y","enabled"],n=e.falsy??["false","0","no","off","n","disabled"];e.case!=="sensitive"&&(i=i.map(B=>typeof B=="string"?B.toLowerCase():B),n=n.map(B=>typeof B=="string"?B.toLowerCase():B));let o=new Set(i),a=new Set(n),r=t.Codec??tf,s=t.Boolean??ef,l=t.String??j1,c=new l({type:"string",error:e.error}),C=new s({type:"boolean",error:e.error}),d=new r({type:"pipe",in:c,out:C,transform:(B,E)=>{let u=B;return e.case!=="sensitive"&&(u=u.toLowerCase()),o.has(u)?!0:a.has(u)?!1:(E.issues.push({code:"invalid_value",expected:"stringbool",values:[...o,...a],input:E.value,inst:d,continue:!1}),{})},reverseTransform:(B,E)=>B===!0?i[0]||"true":n[0]||"false",error:e.error});return d}function GE(t,A,e,i={}){let n=YA(i),o=Y(Ye(Y({},YA(i)),{check:"string_format",type:"string",format:A,fn:typeof e=="function"?e:r=>e.test(r)}),n);return e instanceof RegExp&&(o.pattern=e),new t(o)}function q2(t){let A=t?.target??"draft-2020-12";return A==="draft-4"&&(A="draft-04"),A==="draft-7"&&(A="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??ds,target:A,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function Uo(t,A,e={path:[],schemaPath:[]}){var i;let n=t._zod.def,o=A.seen.get(t);if(o)return o.count++,e.schemaPath.includes(t)&&(o.cycle=e.path),o.schema;let a={schema:{},count:1,cycle:void 0,path:e.path};A.seen.set(t,a);let r=t._zod.toJSONSchema?.();if(r)a.schema=r;else{let c=Ye(Y({},e),{schemaPath:[...e.schemaPath,t],path:e.path});if(t._zod.processJSONSchema)t._zod.processJSONSchema(A,a.schema,c);else{let d=a.schema,B=A.processors[n.type];if(!B)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${n.type}`);B(t,A,d,c)}let C=t._zod.parent;C&&(a.ref||(a.ref=C),Uo(C,A,c),A.seen.get(C).isParent=!0)}let s=A.metadataRegistry.get(t);return s&&Object.assign(a.schema,s),A.io==="input"&&Zs(t)&&(delete a.schema.examples,delete a.schema.default),A.io==="input"&&"_prefault"in a.schema&&((i=a.schema).default??(i.default=a.schema._prefault)),delete a.schema._prefault,A.seen.get(t).schema}function Z2(t,A){let e=t.seen.get(A);if(!e)throw new Error("Unprocessed schema. This is a bug in Zod.");let i=new Map;for(let a of t.seen.entries()){let r=t.metadataRegistry.get(a[0])?.id;if(r){let s=i.get(r);if(s&&s!==a[0])throw new Error(`Duplicate schema id "${r}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);i.set(r,a[0])}}let n=a=>{let r=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let C=t.external.registry.get(a[0])?.id,d=t.external.uri??(E=>E);if(C)return{ref:d(C)};let B=a[1].defId??a[1].schema.id??`schema${t.counter++}`;return a[1].defId=B,{defId:B,ref:`${d("__shared")}#/${r}/${B}`}}if(a[1]===e)return{ref:"#"};let l=`#/${r}/`,c=a[1].schema.id??`__schema${t.counter++}`;return{defId:c,ref:l+c}},o=a=>{if(a[1].schema.$ref)return;let r=a[1],{ref:s,defId:l}=n(a);r.def=Y({},r.schema),l&&(r.defId=l);let c=r.schema;for(let C in c)delete c[C];c.$ref=s};if(t.cycles==="throw")for(let a of t.seen.entries()){let r=a[1];if(r.cycle)throw new Error(`Cycle detected: #/${r.cycle?.join("/")}/ + +Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let a of t.seen.entries()){let r=a[1];if(A===a[0]){o(a);continue}if(t.external){let l=t.external.registry.get(a[0])?.id;if(A!==a[0]&&l){o(a);continue}}if(t.metadataRegistry.get(a[0])?.id){o(a);continue}if(r.cycle){o(a);continue}if(r.count>1&&t.reused==="ref"){o(a);continue}}}function W2(t,A){let e=t.seen.get(A);if(!e)throw new Error("Unprocessed schema. This is a bug in Zod.");let i=r=>{let s=t.seen.get(r);if(s.ref===null)return;let l=s.def??s.schema,c=Y({},l),C=s.ref;if(s.ref=null,C){i(C);let B=t.seen.get(C),E=B.schema;if(E.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(l.allOf=l.allOf??[],l.allOf.push(E)):Object.assign(l,E),Object.assign(l,c),r._zod.parent===C)for(let m in l)m==="$ref"||m==="allOf"||m in c||delete l[m];if(E.$ref&&B.def)for(let m in l)m==="$ref"||m==="allOf"||m in B.def&&JSON.stringify(l[m])===JSON.stringify(B.def[m])&&delete l[m]}let d=r._zod.parent;if(d&&d!==C){i(d);let B=t.seen.get(d);if(B?.schema.$ref&&(l.$ref=B.schema.$ref,B.def))for(let E in l)E==="$ref"||E==="allOf"||E in B.def&&JSON.stringify(l[E])===JSON.stringify(B.def[E])&&delete l[E]}t.override({zodSchema:r,jsonSchema:l,path:s.path??[]})};for(let r of[...t.seen.entries()].reverse())i(r[0]);let n={};if(t.target==="draft-2020-12"?n.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?n.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?n.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let r=t.external.registry.get(A)?.id;if(!r)throw new Error("Schema is missing an `id` property");n.$id=t.external.uri(r)}Object.assign(n,e.def??e.schema);let o=t.metadataRegistry.get(A)?.id;o!==void 0&&n.id===o&&delete n.id;let a=t.external?.defs??{};for(let r of t.seen.entries()){let s=r[1];s.def&&s.defId&&(s.def.id===s.defId&&delete s.def.id,a[s.defId]=s.def)}t.external||Object.keys(a).length>0&&(t.target==="draft-2020-12"?n.$defs=a:n.definitions=a);try{let r=JSON.parse(JSON.stringify(n));return Object.defineProperty(r,"~standard",{value:Ye(Y({},A["~standard"]),{jsonSchema:{input:KE(A,"input",t.processors),output:KE(A,"output",t.processors)}}),enumerable:!1,writable:!1}),r}catch(r){throw new Error("Error converting schema to JSON.")}}function Zs(t,A){let e=A??{seen:new Set};if(e.seen.has(t))return!1;e.seen.add(t);let i=t._zod.def;if(i.type==="transform")return!0;if(i.type==="array")return Zs(i.element,e);if(i.type==="set")return Zs(i.valueType,e);if(i.type==="lazy")return Zs(i.getter(),e);if(i.type==="promise"||i.type==="optional"||i.type==="nonoptional"||i.type==="nullable"||i.type==="readonly"||i.type==="default"||i.type==="prefault")return Zs(i.innerType,e);if(i.type==="intersection")return Zs(i.left,e)||Zs(i.right,e);if(i.type==="record"||i.type==="map")return Zs(i.keyType,e)||Zs(i.valueType,e);if(i.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:Zs(i.in,e)||Zs(i.out,e);if(i.type==="object"){for(let n in i.shape)if(Zs(i.shape[n],e))return!0;return!1}if(i.type==="union"){for(let n of i.options)if(Zs(n,e))return!0;return!1}if(i.type==="tuple"){for(let n of i.items)if(Zs(n,e))return!0;return!!(i.rest&&Zs(i.rest,e))}return!1}var ZU=(t,A={})=>e=>{let i=q2(Ye(Y({},e),{processors:A}));return Uo(t,i),Z2(i,t),W2(i,t)},KE=(t,A,e={})=>i=>{let{libraryOptions:n,target:o}=i??{},a=q2(Ye(Y({},n??{}),{target:o,io:A,processors:e}));return Uo(t,a),Z2(a,t),W2(a,t)};var pTe={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},WU=(t,A,e,i)=>{let n=e;n.type="string";let{minimum:o,maximum:a,format:r,patterns:s,contentEncoding:l}=t._zod.bag;if(typeof o=="number"&&(n.minLength=o),typeof a=="number"&&(n.maxLength=a),r&&(n.format=pTe[r]??r,n.format===""&&delete n.format,r==="time"&&delete n.format),l&&(n.contentEncoding=l),s&&s.size>0){let c=[...s];c.length===1?n.pattern=c[0].source:c.length>1&&(n.allOf=[...c.map(C=>Ye(Y({},A.target==="draft-07"||A.target==="draft-04"||A.target==="openapi-3.0"?{type:"string"}:{}),{pattern:C.source}))])}},XU=(t,A,e,i)=>{let n=e,{minimum:o,maximum:a,format:r,multipleOf:s,exclusiveMaximum:l,exclusiveMinimum:c}=t._zod.bag;typeof r=="string"&&r.includes("int")?n.type="integer":n.type="number";let C=typeof c=="number"&&c>=(o??Number.NEGATIVE_INFINITY),d=typeof l=="number"&&l<=(a??Number.POSITIVE_INFINITY),B=A.target==="draft-04"||A.target==="openapi-3.0";C?B?(n.minimum=c,n.exclusiveMinimum=!0):n.exclusiveMinimum=c:typeof o=="number"&&(n.minimum=o),d?B?(n.maximum=l,n.exclusiveMaximum=!0):n.exclusiveMaximum=l:typeof a=="number"&&(n.maximum=a),typeof s=="number"&&(n.multipleOf=s)},$U=(t,A,e,i)=>{e.type="boolean"},eT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},AT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},tT=(t,A,e,i)=>{A.target==="openapi-3.0"?(e.type="string",e.nullable=!0,e.enum=[null]):e.type="null"},iT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},nT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},oT=(t,A,e,i)=>{e.not={}},aT=(t,A,e,i)=>{},rT=(t,A,e,i)=>{},sT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},lT=(t,A,e,i)=>{let n=t._zod.def,o=zm(n.entries);o.every(a=>typeof a=="number")&&(e.type="number"),o.every(a=>typeof a=="string")&&(e.type="string"),e.enum=o},cT=(t,A,e,i)=>{let n=t._zod.def,o=[];for(let a of n.values)if(a===void 0){if(A.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(A.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");o.push(Number(a))}else o.push(a);if(o.length!==0)if(o.length===1){let a=o[0];e.type=a===null?"null":typeof a,A.target==="draft-04"||A.target==="openapi-3.0"?e.enum=[a]:e.const=a}else o.every(a=>typeof a=="number")&&(e.type="number"),o.every(a=>typeof a=="string")&&(e.type="string"),o.every(a=>typeof a=="boolean")&&(e.type="boolean"),o.every(a=>a===null)&&(e.type="null"),e.enum=o},gT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},CT=(t,A,e,i)=>{let n=e,o=t._zod.pattern;if(!o)throw new Error("Pattern not found in template literal");n.type="string",n.pattern=o.source},dT=(t,A,e,i)=>{let n=e,o={type:"string",format:"binary",contentEncoding:"binary"},{minimum:a,maximum:r,mime:s}=t._zod.bag;a!==void 0&&(o.minLength=a),r!==void 0&&(o.maxLength=r),s?s.length===1?(o.contentMediaType=s[0],Object.assign(n,o)):(Object.assign(n,o),n.anyOf=s.map(l=>({contentMediaType:l}))):Object.assign(n,o)},IT=(t,A,e,i)=>{e.type="boolean"},BT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},hT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},uT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},ET=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},QT=(t,A,e,i)=>{if(A.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},pT=(t,A,e,i)=>{let n=e,o=t._zod.def,{minimum:a,maximum:r}=t._zod.bag;typeof a=="number"&&(n.minItems=a),typeof r=="number"&&(n.maxItems=r),n.type="array",n.items=Uo(o.element,A,Ye(Y({},i),{path:[...i.path,"items"]}))},mT=(t,A,e,i)=>{let n=e,o=t._zod.def;n.type="object",n.properties={};let a=o.shape;for(let l in a)n.properties[l]=Uo(a[l],A,Ye(Y({},i),{path:[...i.path,"properties",l]}));let r=new Set(Object.keys(a)),s=new Set([...r].filter(l=>{let c=o.shape[l]._zod;return A.io==="input"?c.optin===void 0:c.optout===void 0}));s.size>0&&(n.required=Array.from(s)),o.catchall?._zod.def.type==="never"?n.additionalProperties=!1:o.catchall?o.catchall&&(n.additionalProperties=Uo(o.catchall,A,Ye(Y({},i),{path:[...i.path,"additionalProperties"]}))):A.io==="output"&&(n.additionalProperties=!1)},ub=(t,A,e,i)=>{let n=t._zod.def,o=n.inclusive===!1,a=n.options.map((r,s)=>Uo(r,A,Ye(Y({},i),{path:[...i.path,o?"oneOf":"anyOf",s]})));o?e.oneOf=a:e.anyOf=a},fT=(t,A,e,i)=>{let n=t._zod.def,o=Uo(n.left,A,Ye(Y({},i),{path:[...i.path,"allOf",0]})),a=Uo(n.right,A,Ye(Y({},i),{path:[...i.path,"allOf",1]})),r=l=>"allOf"in l&&Object.keys(l).length===1,s=[...r(o)?o.allOf:[o],...r(a)?a.allOf:[a]];e.allOf=s},wT=(t,A,e,i)=>{let n=e,o=t._zod.def;n.type="array";let a=A.target==="draft-2020-12"?"prefixItems":"items",r=A.target==="draft-2020-12"||A.target==="openapi-3.0"?"items":"additionalItems",s=o.items.map((d,B)=>Uo(d,A,Ye(Y({},i),{path:[...i.path,a,B]}))),l=o.rest?Uo(o.rest,A,Ye(Y({},i),{path:[...i.path,r,...A.target==="openapi-3.0"?[o.items.length]:[]]})):null;A.target==="draft-2020-12"?(n.prefixItems=s,l&&(n.items=l)):A.target==="openapi-3.0"?(n.items={anyOf:s},l&&n.items.anyOf.push(l),n.minItems=s.length,l||(n.maxItems=s.length)):(n.items=s,l&&(n.additionalItems=l));let{minimum:c,maximum:C}=t._zod.bag;typeof c=="number"&&(n.minItems=c),typeof C=="number"&&(n.maxItems=C)},yT=(t,A,e,i)=>{let n=e,o=t._zod.def;n.type="object";let a=o.keyType,s=a._zod.bag?.patterns;if(o.mode==="loose"&&s&&s.size>0){let c=Uo(o.valueType,A,Ye(Y({},i),{path:[...i.path,"patternProperties","*"]}));n.patternProperties={};for(let C of s)n.patternProperties[C.source]=c}else(A.target==="draft-07"||A.target==="draft-2020-12")&&(n.propertyNames=Uo(o.keyType,A,Ye(Y({},i),{path:[...i.path,"propertyNames"]}))),n.additionalProperties=Uo(o.valueType,A,Ye(Y({},i),{path:[...i.path,"additionalProperties"]}));let l=a._zod.values;if(l){let c=[...l].filter(C=>typeof C=="string"||typeof C=="number");c.length>0&&(n.required=c)}},vT=(t,A,e,i)=>{let n=t._zod.def,o=Uo(n.innerType,A,i),a=A.seen.get(t);A.target==="openapi-3.0"?(a.ref=n.innerType,e.nullable=!0):e.anyOf=[o,{type:"null"}]},DT=(t,A,e,i)=>{let n=t._zod.def;Uo(n.innerType,A,i);let o=A.seen.get(t);o.ref=n.innerType},bT=(t,A,e,i)=>{let n=t._zod.def;Uo(n.innerType,A,i);let o=A.seen.get(t);o.ref=n.innerType,e.default=JSON.parse(JSON.stringify(n.defaultValue))},MT=(t,A,e,i)=>{let n=t._zod.def;Uo(n.innerType,A,i);let o=A.seen.get(t);o.ref=n.innerType,A.io==="input"&&(e._prefault=JSON.parse(JSON.stringify(n.defaultValue)))},ST=(t,A,e,i)=>{let n=t._zod.def;Uo(n.innerType,A,i);let o=A.seen.get(t);o.ref=n.innerType;let a;try{a=n.catchValue(void 0)}catch(r){throw new Error("Dynamic catch values are not supported in JSON Schema")}e.default=a},kT=(t,A,e,i)=>{let n=t._zod.def,o=n.in._zod.traits.has("$ZodTransform"),a=A.io==="input"?o?n.out:n.in:n.out;Uo(a,A,i);let r=A.seen.get(t);r.ref=a},_T=(t,A,e,i)=>{let n=t._zod.def;Uo(n.innerType,A,i);let o=A.seen.get(t);o.ref=n.innerType,e.readOnly=!0},xT=(t,A,e,i)=>{let n=t._zod.def;Uo(n.innerType,A,i);let o=A.seen.get(t);o.ref=n.innerType},Eb=(t,A,e,i)=>{let n=t._zod.def;Uo(n.innerType,A,i);let o=A.seen.get(t);o.ref=n.innerType},RT=(t,A,e,i)=>{let n=t._zod.innerType;Uo(n,A,i);let o=A.seen.get(t);o.ref=n},hb={string:WU,number:XU,boolean:$U,bigint:eT,symbol:AT,null:tT,undefined:iT,void:nT,never:oT,any:aT,unknown:rT,date:sT,enum:lT,literal:cT,nan:gT,template_literal:CT,file:dT,success:IT,custom:BT,function:hT,transform:uT,map:ET,set:QT,array:pT,object:mT,union:ub,intersection:fT,tuple:wT,record:yT,nullable:vT,nonoptional:DT,default:bT,prefault:MT,catch:ST,pipe:kT,readonly:_T,promise:xT,optional:Eb,lazy:RT};function Qb(t,A){if("_idmap"in t){let i=t,n=q2(Ye(Y({},A),{processors:hb})),o={};for(let s of i._idmap.entries()){let[l,c]=s;Uo(c,n)}let a={},r={registry:i,uri:A?.uri,defs:o};n.external=r;for(let s of i._idmap.entries()){let[l,c]=s;Z2(n,c),a[l]=W2(n,c)}if(Object.keys(o).length>0){let s=n.target==="draft-2020-12"?"$defs":"definitions";a.__shared={[s]:o}}return{schemas:a}}let e=q2(Ye(Y({},A),{processors:hb}));return Uo(t,e),Z2(e,t),W2(e,t)}var pb=class{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(A){this.ctx.counter=A}get seen(){return this.ctx.seen}constructor(A){let e=A?.target??"draft-2020-12";e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),this.ctx=q2(Y(Y(Y(Y({processors:hb,target:e},A?.metadata&&{metadata:A.metadata}),A?.unrepresentable&&{unrepresentable:A.unrepresentable}),A?.override&&{override:A.override}),A?.io&&{io:A.io}))}process(A,e={path:[],schemaPath:[]}){return Uo(A,this.ctx,e)}emit(A,e){e&&(e.cycles&&(this.ctx.cycles=e.cycles),e.reused&&(this.ctx.reused=e.reused),e.external&&(this.ctx.external=e.external)),Z2(this.ctx,A);let a=W2(this.ctx,A),{"~standard":n}=a;return ld(a,["~standard"])}};var Hse={};var sf={};eC(sf,{ZodAny:()=>iO,ZodArray:()=>rO,ZodBase64:()=>Ob,ZodBase64URL:()=>Jb,ZodBigInt:()=>PE,ZodBigIntFormat:()=>Hb,ZodBoolean:()=>HE,ZodCIDRv4:()=>Ub,ZodCIDRv6:()=>Tb,ZodCUID:()=>xb,ZodCUID2:()=>Rb,ZodCatch:()=>SO,ZodCodec:()=>pf,ZodCustom:()=>mf,ZodCustomStringFormat:()=>zE,ZodDate:()=>Bf,ZodDefault:()=>wO,ZodDiscriminatedUnion:()=>lO,ZodE164:()=>zb,ZodEmail:()=>Sb,ZodEmoji:()=>kb,ZodEnum:()=>OE,ZodExactOptional:()=>pO,ZodFile:()=>EO,ZodFunction:()=>UO,ZodGUID:()=>cf,ZodIPv4:()=>Gb,ZodIPv6:()=>Kb,ZodIntersection:()=>cO,ZodJWT:()=>Yb,ZodKSUID:()=>Lb,ZodLazy:()=>LO,ZodLiteral:()=>uO,ZodMAC:()=>ZT,ZodMap:()=>BO,ZodNaN:()=>_O,ZodNanoID:()=>_b,ZodNever:()=>oO,ZodNonOptional:()=>Wb,ZodNull:()=>AO,ZodNullable:()=>fO,ZodNumber:()=>YE,ZodNumberFormat:()=>X1,ZodObject:()=>uf,ZodOptional:()=>Zb,ZodPipe:()=>Qf,ZodPrefault:()=>vO,ZodPreprocess:()=>xO,ZodPromise:()=>KO,ZodReadonly:()=>RO,ZodRecord:()=>TE,ZodSet:()=>hO,ZodString:()=>JE,ZodStringFormat:()=>aa,ZodSuccess:()=>MO,ZodSymbol:()=>$T,ZodTemplateLiteral:()=>FO,ZodTransform:()=>QO,ZodTuple:()=>CO,ZodType:()=>on,ZodULID:()=>Nb,ZodURL:()=>If,ZodUUID:()=>W0,ZodUndefined:()=>eO,ZodUnion:()=>Ef,ZodUnknown:()=>nO,ZodVoid:()=>aO,ZodXID:()=>Fb,ZodXor:()=>sO,_ZodString:()=>Mb,_default:()=>yO,_function:()=>ece,any:()=>_le,array:()=>hf,base64:()=>Ile,base64url:()=>Ble,bigint:()=>Dle,boolean:()=>XT,catch:()=>kO,check:()=>Ace,cidrv4:()=>Cle,cidrv6:()=>dle,codec:()=>Zle,cuid:()=>nle,cuid2:()=>ole,custom:()=>tce,date:()=>Rle,describe:()=>ice,discriminatedUnion:()=>Ule,e164:()=>hle,email:()=>Vse,emoji:()=>tle,enum:()=>Vb,exactOptional:()=>mO,file:()=>Ple,float32:()=>fle,float64:()=>wle,function:()=>ece,guid:()=>qse,hash:()=>mle,hex:()=>ple,hostname:()=>Qle,httpUrl:()=>Ale,instanceof:()=>oce,int:()=>Db,int32:()=>yle,int64:()=>ble,intersection:()=>gO,invertCodec:()=>Wle,ipv4:()=>lle,ipv6:()=>gle,json:()=>rce,jwt:()=>ule,keyof:()=>Nle,ksuid:()=>sle,lazy:()=>GO,literal:()=>Hle,looseObject:()=>Gle,looseRecord:()=>Ole,mac:()=>cle,map:()=>Jle,meta:()=>nce,nan:()=>qle,nanoid:()=>ile,nativeEnum:()=>Yle,never:()=>Pb,nonoptional:()=>bO,null:()=>tO,nullable:()=>Cf,nullish:()=>jle,number:()=>WT,object:()=>Fle,optional:()=>gf,partialRecord:()=>Tle,pipe:()=>bb,prefault:()=>DO,preprocess:()=>sce,promise:()=>$le,readonly:()=>NO,record:()=>IO,refine:()=>TO,set:()=>zle,strictObject:()=>Lle,string:()=>lf,stringFormat:()=>Ele,stringbool:()=>ace,success:()=>Vle,superRefine:()=>OO,symbol:()=>Sle,templateLiteral:()=>Xle,transform:()=>qb,tuple:()=>dO,uint32:()=>vle,uint64:()=>Mle,ulid:()=>ale,undefined:()=>kle,union:()=>jb,unknown:()=>W1,url:()=>ele,uuid:()=>Zse,uuidv4:()=>Wse,uuidv6:()=>Xse,uuidv7:()=>$se,void:()=>xle,xid:()=>rle,xor:()=>Kle});var mb={};eC(mb,{endsWith:()=>kE,gt:()=>q0,gte:()=>qs,includes:()=>ME,length:()=>Z1,lowercase:()=>DE,lt:()=>V0,lte:()=>ac,maxLength:()=>q1,maxSize:()=>V2,mime:()=>_E,minLength:()=>rd,minSize:()=>Z0,multipleOf:()=>j2,negative:()=>Cb,nonnegative:()=>Ib,nonpositive:()=>db,normalize:()=>xE,overwrite:()=>Pg,positive:()=>gb,property:()=>Bb,regex:()=>vE,size:()=>V1,slugify:()=>LE,startsWith:()=>SE,toLowerCase:()=>NE,toUpperCase:()=>FE,trim:()=>RE,uppercase:()=>bE});var UE={};eC(UE,{ZodISODate:()=>wb,ZodISODateTime:()=>fb,ZodISODuration:()=>vb,ZodISOTime:()=>yb,date:()=>FT,datetime:()=>NT,duration:()=>GT,time:()=>LT});var fb=Re("ZodISODateTime",(t,A)=>{gK.init(t,A),aa.init(t,A)});function NT(t){return BU(fb,t)}var wb=Re("ZodISODate",(t,A)=>{CK.init(t,A),aa.init(t,A)});function FT(t){return hU(wb,t)}var yb=Re("ZodISOTime",(t,A)=>{dK.init(t,A),aa.init(t,A)});function LT(t){return uU(yb,t)}var vb=Re("ZodISODuration",(t,A)=>{IK.init(t,A),aa.init(t,A)});function GT(t){return EU(vb,t)}var Pse=(t,A)=>{Vm.init(t,A),t.name="ZodError",Object.defineProperties(t,{format:{value:e=>Zm(t,e)},flatten:{value:e=>qm(t,e)},addIssue:{value:e=>{t.issues.push(e),t.message=JSON.stringify(t.issues,hE,2)}},addIssues:{value:e=>{t.issues.push(...e),t.message=JSON.stringify(t.issues,hE,2)}},isEmpty:{get(){return t.issues.length===0}}})},fTe=Re("ZodError",Pse),Nl=Re("ZodError",Pse,{Parent:Error});var KT=QE(Nl),UT=pE(Nl),TT=mE(Nl),OT=fE(Nl),JT=QD(Nl),zT=pD(Nl),YT=mD(Nl),HT=fD(Nl),PT=wD(Nl),jT=yD(Nl),VT=vD(Nl),qT=DD(Nl);var jse=new WeakMap;function df(t,A,e){let i=Object.getPrototypeOf(t),n=jse.get(i);if(n||(n=new Set,jse.set(i,n)),!n.has(A)){n.add(A);for(let o in e){let a=e[o];Object.defineProperty(i,o,{configurable:!0,enumerable:!1,get(){let r=a.bind(this);return Object.defineProperty(this,o,{configurable:!0,writable:!0,enumerable:!0,value:r}),r},set(r){Object.defineProperty(this,o,{configurable:!0,writable:!0,enumerable:!0,value:r})}})}}}var on=Re("ZodType",(t,A)=>(Ki.init(t,A),Object.assign(t["~standard"],{jsonSchema:{input:KE(t,"input"),output:KE(t,"output")}}),t.toJSONSchema=ZU(t,{}),t.def=A,t.type=A.type,Object.defineProperty(t,"_def",{value:A}),t.parse=(e,i)=>KT(t,e,i,{callee:t.parse}),t.safeParse=(e,i)=>TT(t,e,i),t.parseAsync=(e,i)=>nA(null,null,function*(){return UT(t,e,i,{callee:t.parseAsync})}),t.safeParseAsync=(e,i)=>nA(null,null,function*(){return OT(t,e,i)}),t.spa=t.safeParseAsync,t.encode=(e,i)=>JT(t,e,i),t.decode=(e,i)=>zT(t,e,i),t.encodeAsync=(e,i)=>nA(null,null,function*(){return YT(t,e,i)}),t.decodeAsync=(e,i)=>nA(null,null,function*(){return HT(t,e,i)}),t.safeEncode=(e,i)=>PT(t,e,i),t.safeDecode=(e,i)=>jT(t,e,i),t.safeEncodeAsync=(e,i)=>nA(null,null,function*(){return VT(t,e,i)}),t.safeDecodeAsync=(e,i)=>nA(null,null,function*(){return qT(t,e,i)}),df(t,"ZodType",{check(...e){let i=this.def;return this.clone(KA.mergeDefs(i,{checks:[...i.checks??[],...e.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,i){return js(this,e,i)},brand(){return this},register(e,i){return e.add(this,i),this},refine(e,i){return this.check(TO(e,i))},superRefine(e,i){return this.check(OO(e,i))},overwrite(e){return this.check(Pg(e))},optional(){return gf(this)},exactOptional(){return mO(this)},nullable(){return Cf(this)},nullish(){return gf(Cf(this))},nonoptional(e){return bO(this,e)},array(){return hf(this)},or(e){return jb([this,e])},and(e){return gO(this,e)},transform(e){return bb(this,qb(e))},default(e){return yO(this,e)},prefault(e){return DO(this,e)},catch(e){return kO(this,e)},pipe(e){return bb(this,e)},readonly(){return NO(this)},describe(e){let i=this.clone();return ds.add(i,{description:e}),i},meta(...e){if(e.length===0)return ds.get(this);let i=this.clone();return ds.add(i,e[0]),i},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(t,"description",{get(){return ds.get(t)?.description},configurable:!0}),t)),Mb=Re("_ZodString",(t,A)=>{j1.init(t,A),on.init(t,A),t._zod.processJSONSchema=(i,n,o)=>WU(t,i,n,o);let e=t._zod.bag;t.format=e.format??null,t.minLength=e.minimum??null,t.maxLength=e.maximum??null,df(t,"_ZodString",{regex(...i){return this.check(vE(...i))},includes(...i){return this.check(ME(...i))},startsWith(...i){return this.check(SE(...i))},endsWith(...i){return this.check(kE(...i))},min(...i){return this.check(rd(...i))},max(...i){return this.check(q1(...i))},length(...i){return this.check(Z1(...i))},nonempty(...i){return this.check(rd(1,...i))},lowercase(i){return this.check(DE(i))},uppercase(i){return this.check(bE(i))},trim(){return this.check(RE())},normalize(...i){return this.check(xE(...i))},toLowerCase(){return this.check(NE())},toUpperCase(){return this.check(FE())},slugify(){return this.check(LE())}})}),JE=Re("ZodString",(t,A)=>{j1.init(t,A),Mb.init(t,A),t.email=e=>t.check(HD(Sb,e)),t.url=e=>t.check(rf(If,e)),t.jwt=e=>t.check(cb(Yb,e)),t.emoji=e=>t.check(ZD(kb,e)),t.guid=e=>t.check(af(cf,e)),t.uuid=e=>t.check(PD(W0,e)),t.uuidv4=e=>t.check(jD(W0,e)),t.uuidv6=e=>t.check(VD(W0,e)),t.uuidv7=e=>t.check(qD(W0,e)),t.nanoid=e=>t.check(WD(_b,e)),t.guid=e=>t.check(af(cf,e)),t.cuid=e=>t.check(XD(xb,e)),t.cuid2=e=>t.check($D(Rb,e)),t.ulid=e=>t.check(eb(Nb,e)),t.base64=e=>t.check(rb(Ob,e)),t.base64url=e=>t.check(sb(Jb,e)),t.xid=e=>t.check(Ab(Fb,e)),t.ksuid=e=>t.check(tb(Lb,e)),t.ipv4=e=>t.check(ib(Gb,e)),t.ipv6=e=>t.check(nb(Kb,e)),t.cidrv4=e=>t.check(ob(Ub,e)),t.cidrv6=e=>t.check(ab(Tb,e)),t.e164=e=>t.check(lb(zb,e)),t.datetime=e=>t.check(NT(e)),t.date=e=>t.check(FT(e)),t.time=e=>t.check(LT(e)),t.duration=e=>t.check(GT(e))});function lf(t){return gU(JE,t)}var aa=Re("ZodStringFormat",(t,A)=>{oa.init(t,A),Mb.init(t,A)}),Sb=Re("ZodEmail",(t,A)=>{tK.init(t,A),aa.init(t,A)});function Vse(t){return HD(Sb,t)}var cf=Re("ZodGUID",(t,A)=>{eK.init(t,A),aa.init(t,A)});function qse(t){return af(cf,t)}var W0=Re("ZodUUID",(t,A)=>{AK.init(t,A),aa.init(t,A)});function Zse(t){return PD(W0,t)}function Wse(t){return jD(W0,t)}function Xse(t){return VD(W0,t)}function $se(t){return qD(W0,t)}var If=Re("ZodURL",(t,A)=>{iK.init(t,A),aa.init(t,A)});function ele(t){return rf(If,t)}function Ale(t){return rf(If,Y({protocol:oc.httpProtocol,hostname:oc.domain},KA.normalizeParams(t)))}var kb=Re("ZodEmoji",(t,A)=>{nK.init(t,A),aa.init(t,A)});function tle(t){return ZD(kb,t)}var _b=Re("ZodNanoID",(t,A)=>{oK.init(t,A),aa.init(t,A)});function ile(t){return WD(_b,t)}var xb=Re("ZodCUID",(t,A)=>{aK.init(t,A),aa.init(t,A)});function nle(t){return XD(xb,t)}var Rb=Re("ZodCUID2",(t,A)=>{rK.init(t,A),aa.init(t,A)});function ole(t){return $D(Rb,t)}var Nb=Re("ZodULID",(t,A)=>{sK.init(t,A),aa.init(t,A)});function ale(t){return eb(Nb,t)}var Fb=Re("ZodXID",(t,A)=>{lK.init(t,A),aa.init(t,A)});function rle(t){return Ab(Fb,t)}var Lb=Re("ZodKSUID",(t,A)=>{cK.init(t,A),aa.init(t,A)});function sle(t){return tb(Lb,t)}var Gb=Re("ZodIPv4",(t,A)=>{BK.init(t,A),aa.init(t,A)});function lle(t){return ib(Gb,t)}var ZT=Re("ZodMAC",(t,A)=>{uK.init(t,A),aa.init(t,A)});function cle(t){return dU(ZT,t)}var Kb=Re("ZodIPv6",(t,A)=>{hK.init(t,A),aa.init(t,A)});function gle(t){return nb(Kb,t)}var Ub=Re("ZodCIDRv4",(t,A)=>{EK.init(t,A),aa.init(t,A)});function Cle(t){return ob(Ub,t)}var Tb=Re("ZodCIDRv6",(t,A)=>{QK.init(t,A),aa.init(t,A)});function dle(t){return ab(Tb,t)}var Ob=Re("ZodBase64",(t,A)=>{mK.init(t,A),aa.init(t,A)});function Ile(t){return rb(Ob,t)}var Jb=Re("ZodBase64URL",(t,A)=>{fK.init(t,A),aa.init(t,A)});function Ble(t){return sb(Jb,t)}var zb=Re("ZodE164",(t,A)=>{wK.init(t,A),aa.init(t,A)});function hle(t){return lb(zb,t)}var Yb=Re("ZodJWT",(t,A)=>{yK.init(t,A),aa.init(t,A)});function ule(t){return cb(Yb,t)}var zE=Re("ZodCustomStringFormat",(t,A)=>{vK.init(t,A),aa.init(t,A)});function Ele(t,A,e={}){return GE(zE,t,A,e)}function Qle(t){return GE(zE,"hostname",oc.hostname,t)}function ple(t){return GE(zE,"hex",oc.hex,t)}function mle(t,A){let e=A?.enc??"hex",i=`${t}_${e}`,n=oc[i];if(!n)throw new Error(`Unrecognized hash format: ${i}`);return GE(zE,i,n,A)}var YE=Re("ZodNumber",(t,A)=>{FD.init(t,A),on.init(t,A),t._zod.processJSONSchema=(i,n,o)=>XU(t,i,n,o),df(t,"ZodNumber",{gt(i,n){return this.check(q0(i,n))},gte(i,n){return this.check(qs(i,n))},min(i,n){return this.check(qs(i,n))},lt(i,n){return this.check(V0(i,n))},lte(i,n){return this.check(ac(i,n))},max(i,n){return this.check(ac(i,n))},int(i){return this.check(Db(i))},safe(i){return this.check(Db(i))},positive(i){return this.check(q0(0,i))},nonnegative(i){return this.check(qs(0,i))},negative(i){return this.check(V0(0,i))},nonpositive(i){return this.check(ac(0,i))},multipleOf(i,n){return this.check(j2(i,n))},step(i,n){return this.check(j2(i,n))},finite(){return this}});let e=t._zod.bag;t.minValue=Math.max(e.minimum??Number.NEGATIVE_INFINITY,e.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(e.maximum??Number.POSITIVE_INFINITY,e.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(e.format??"").includes("int")||Number.isSafeInteger(e.multipleOf??.5),t.isFinite=!0,t.format=e.format??null});function WT(t){return QU(YE,t)}var X1=Re("ZodNumberFormat",(t,A)=>{DK.init(t,A),YE.init(t,A)});function Db(t){return mU(X1,t)}function fle(t){return fU(X1,t)}function wle(t){return wU(X1,t)}function yle(t){return yU(X1,t)}function vle(t){return vU(X1,t)}var HE=Re("ZodBoolean",(t,A)=>{ef.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>$U(t,e,i,n)});function XT(t){return DU(HE,t)}var PE=Re("ZodBigInt",(t,A)=>{LD.init(t,A),on.init(t,A),t._zod.processJSONSchema=(i,n,o)=>eT(t,i,n,o),t.gte=(i,n)=>t.check(qs(i,n)),t.min=(i,n)=>t.check(qs(i,n)),t.gt=(i,n)=>t.check(q0(i,n)),t.gte=(i,n)=>t.check(qs(i,n)),t.min=(i,n)=>t.check(qs(i,n)),t.lt=(i,n)=>t.check(V0(i,n)),t.lte=(i,n)=>t.check(ac(i,n)),t.max=(i,n)=>t.check(ac(i,n)),t.positive=i=>t.check(q0(BigInt(0),i)),t.negative=i=>t.check(V0(BigInt(0),i)),t.nonpositive=i=>t.check(ac(BigInt(0),i)),t.nonnegative=i=>t.check(qs(BigInt(0),i)),t.multipleOf=(i,n)=>t.check(j2(i,n));let e=t._zod.bag;t.minValue=e.minimum??null,t.maxValue=e.maximum??null,t.format=e.format??null});function Dle(t){return MU(PE,t)}var Hb=Re("ZodBigIntFormat",(t,A)=>{bK.init(t,A),PE.init(t,A)});function ble(t){return kU(Hb,t)}function Mle(t){return _U(Hb,t)}var $T=Re("ZodSymbol",(t,A)=>{MK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>AT(t,e,i,n)});function Sle(t){return xU($T,t)}var eO=Re("ZodUndefined",(t,A)=>{SK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>iT(t,e,i,n)});function kle(t){return RU(eO,t)}var AO=Re("ZodNull",(t,A)=>{kK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>tT(t,e,i,n)});function tO(t){return NU(AO,t)}var iO=Re("ZodAny",(t,A)=>{_K.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>aT(t,e,i,n)});function _le(){return FU(iO)}var nO=Re("ZodUnknown",(t,A)=>{xK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>rT(t,e,i,n)});function W1(){return LU(nO)}var oO=Re("ZodNever",(t,A)=>{RK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>oT(t,e,i,n)});function Pb(t){return GU(oO,t)}var aO=Re("ZodVoid",(t,A)=>{NK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>nT(t,e,i,n)});function xle(t){return KU(aO,t)}var Bf=Re("ZodDate",(t,A)=>{FK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(i,n,o)=>sT(t,i,n,o),t.min=(i,n)=>t.check(qs(i,n)),t.max=(i,n)=>t.check(ac(i,n));let e=t._zod.bag;t.minDate=e.minimum?new Date(e.minimum):null,t.maxDate=e.maximum?new Date(e.maximum):null});function Rle(t){return UU(Bf,t)}var rO=Re("ZodArray",(t,A)=>{LK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>pT(t,e,i,n),t.element=A.element,df(t,"ZodArray",{min(e,i){return this.check(rd(e,i))},nonempty(e){return this.check(rd(1,e))},max(e,i){return this.check(q1(e,i))},length(e,i){return this.check(Z1(e,i))},unwrap(){return this.element}})});function hf(t,A){return JU(rO,t,A)}function Nle(t){let A=t._zod.def.shape;return Vb(Object.keys(A))}var uf=Re("ZodObject",(t,A)=>{GK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>mT(t,e,i,n),KA.defineLazy(t,"shape",()=>A.shape),df(t,"ZodObject",{keyof(){return Vb(Object.keys(this._zod.def.shape))},catchall(e){return this.clone(Ye(Y({},this._zod.def),{catchall:e}))},passthrough(){return this.clone(Ye(Y({},this._zod.def),{catchall:W1()}))},loose(){return this.clone(Ye(Y({},this._zod.def),{catchall:W1()}))},strict(){return this.clone(Ye(Y({},this._zod.def),{catchall:Pb()}))},strip(){return this.clone(Ye(Y({},this._zod.def),{catchall:void 0}))},extend(e){return KA.extend(this,e)},safeExtend(e){return KA.safeExtend(this,e)},merge(e){return KA.merge(this,e)},pick(e){return KA.pick(this,e)},omit(e){return KA.omit(this,e)},partial(...e){return KA.partial(Zb,this,e[0])},required(...e){return KA.required(Wb,this,e[0])}})});function Fle(t,A){let e=Y({type:"object",shape:t??{}},KA.normalizeParams(A));return new uf(e)}function Lle(t,A){return new uf(Y({type:"object",shape:t,catchall:Pb()},KA.normalizeParams(A)))}function Gle(t,A){return new uf(Y({type:"object",shape:t,catchall:W1()},KA.normalizeParams(A)))}var Ef=Re("ZodUnion",(t,A)=>{Af.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>ub(t,e,i,n),t.options=A.options});function jb(t,A){return new Ef(Y({type:"union",options:t},KA.normalizeParams(A)))}var sO=Re("ZodXor",(t,A)=>{Ef.init(t,A),KK.init(t,A),t._zod.processJSONSchema=(e,i,n)=>ub(t,e,i,n),t.options=A.options});function Kle(t,A){return new sO(Y({type:"union",options:t,inclusive:!1},KA.normalizeParams(A)))}var lO=Re("ZodDiscriminatedUnion",(t,A)=>{Ef.init(t,A),UK.init(t,A)});function Ule(t,A,e){return new lO(Y({type:"union",options:A,discriminator:t},KA.normalizeParams(e)))}var cO=Re("ZodIntersection",(t,A)=>{TK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>fT(t,e,i,n)});function gO(t,A){return new cO({type:"intersection",left:t,right:A})}var CO=Re("ZodTuple",(t,A)=>{GD.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>wT(t,e,i,n),t.rest=e=>t.clone(Ye(Y({},t._zod.def),{rest:e}))});function dO(t,A,e){let i=A instanceof Ki,n=i?e:A,o=i?A:null;return new CO(Y({type:"tuple",items:t,rest:o},KA.normalizeParams(n)))}var TE=Re("ZodRecord",(t,A)=>{OK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>yT(t,e,i,n),t.keyType=A.keyType,t.valueType=A.valueType});function IO(t,A,e){return!A||!A._zod?new TE(Y({type:"record",keyType:lf(),valueType:t},KA.normalizeParams(A))):new TE(Y({type:"record",keyType:t,valueType:A},KA.normalizeParams(e)))}function Tle(t,A,e){let i=js(t);return i._zod.values=void 0,new TE(Y({type:"record",keyType:i,valueType:A},KA.normalizeParams(e)))}function Ole(t,A,e){return new TE(Y({type:"record",keyType:t,valueType:A,mode:"loose"},KA.normalizeParams(e)))}var BO=Re("ZodMap",(t,A)=>{JK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>ET(t,e,i,n),t.keyType=A.keyType,t.valueType=A.valueType,t.min=(...e)=>t.check(Z0(...e)),t.nonempty=e=>t.check(Z0(1,e)),t.max=(...e)=>t.check(V2(...e)),t.size=(...e)=>t.check(V1(...e))});function Jle(t,A,e){return new BO(Y({type:"map",keyType:t,valueType:A},KA.normalizeParams(e)))}var hO=Re("ZodSet",(t,A)=>{zK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>QT(t,e,i,n),t.min=(...e)=>t.check(Z0(...e)),t.nonempty=e=>t.check(Z0(1,e)),t.max=(...e)=>t.check(V2(...e)),t.size=(...e)=>t.check(V1(...e))});function zle(t,A){return new hO(Y({type:"set",valueType:t},KA.normalizeParams(A)))}var OE=Re("ZodEnum",(t,A)=>{YK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(i,n,o)=>lT(t,i,n,o),t.enum=A.entries,t.options=Object.values(A.entries);let e=new Set(Object.keys(A.entries));t.extract=(i,n)=>{let o={};for(let a of i)if(e.has(a))o[a]=A.entries[a];else throw new Error(`Key ${a} not found in enum`);return new OE(Ye(Y(Ye(Y({},A),{checks:[]}),KA.normalizeParams(n)),{entries:o}))},t.exclude=(i,n)=>{let o=Y({},A.entries);for(let a of i)if(e.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new OE(Ye(Y(Ye(Y({},A),{checks:[]}),KA.normalizeParams(n)),{entries:o}))}});function Vb(t,A){let e=Array.isArray(t)?Object.fromEntries(t.map(i=>[i,i])):t;return new OE(Y({type:"enum",entries:e},KA.normalizeParams(A)))}function Yle(t,A){return new OE(Y({type:"enum",entries:t},KA.normalizeParams(A)))}var uO=Re("ZodLiteral",(t,A)=>{HK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>cT(t,e,i,n),t.values=new Set(A.values),Object.defineProperty(t,"value",{get(){if(A.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return A.values[0]}})});function Hle(t,A){return new uO(Y({type:"literal",values:Array.isArray(t)?t:[t]},KA.normalizeParams(A)))}var EO=Re("ZodFile",(t,A)=>{PK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>dT(t,e,i,n),t.min=(e,i)=>t.check(Z0(e,i)),t.max=(e,i)=>t.check(V2(e,i)),t.mime=(e,i)=>t.check(_E(Array.isArray(e)?e:[e],i))});function Ple(t){return zU(EO,t)}var QO=Re("ZodTransform",(t,A)=>{jK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>uT(t,e,i,n),t._zod.parse=(e,i)=>{if(i.direction==="backward")throw new J2(t.constructor.name);e.addIssue=o=>{if(typeof o=="string")e.issues.push(KA.issue(o,e.value,A));else{let a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=e.value),a.inst??(a.inst=t),e.issues.push(KA.issue(a))}};let n=A.transform(e.value,e);return n instanceof Promise?n.then(o=>(e.value=o,e.fallback=!0,e)):(e.value=n,e.fallback=!0,e)}});function qb(t){return new QO({type:"transform",transform:t})}var Zb=Re("ZodOptional",(t,A)=>{KD.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>Eb(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function gf(t){return new Zb({type:"optional",innerType:t})}var pO=Re("ZodExactOptional",(t,A)=>{VK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>Eb(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function mO(t){return new pO({type:"optional",innerType:t})}var fO=Re("ZodNullable",(t,A)=>{qK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>vT(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function Cf(t){return new fO({type:"nullable",innerType:t})}function jle(t){return gf(Cf(t))}var wO=Re("ZodDefault",(t,A)=>{ZK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>bT(t,e,i,n),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function yO(t,A){return new wO({type:"default",innerType:t,get defaultValue(){return typeof A=="function"?A():KA.shallowClone(A)}})}var vO=Re("ZodPrefault",(t,A)=>{WK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>MT(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function DO(t,A){return new vO({type:"prefault",innerType:t,get defaultValue(){return typeof A=="function"?A():KA.shallowClone(A)}})}var Wb=Re("ZodNonOptional",(t,A)=>{XK.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>DT(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function bO(t,A){return new Wb(Y({type:"nonoptional",innerType:t},KA.normalizeParams(A)))}var MO=Re("ZodSuccess",(t,A)=>{$K.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>IT(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function Vle(t){return new MO({type:"success",innerType:t})}var SO=Re("ZodCatch",(t,A)=>{eU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>ST(t,e,i,n),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function kO(t,A){return new SO({type:"catch",innerType:t,catchValue:typeof A=="function"?A:()=>A})}var _O=Re("ZodNaN",(t,A)=>{AU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>gT(t,e,i,n)});function qle(t){return OU(_O,t)}var Qf=Re("ZodPipe",(t,A)=>{UD.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>kT(t,e,i,n),t.in=A.in,t.out=A.out});function bb(t,A){return new Qf({type:"pipe",in:t,out:A})}var pf=Re("ZodCodec",(t,A)=>{Qf.init(t,A),tf.init(t,A)});function Zle(t,A,e){return new pf({type:"pipe",in:t,out:A,transform:e.decode,reverseTransform:e.encode})}function Wle(t){let A=t._zod.def;return new pf({type:"pipe",in:A.out,out:A.in,transform:A.reverseTransform,reverseTransform:A.transform})}var xO=Re("ZodPreprocess",(t,A)=>{Qf.init(t,A),tU.init(t,A)}),RO=Re("ZodReadonly",(t,A)=>{iU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>_T(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function NO(t){return new RO({type:"readonly",innerType:t})}var FO=Re("ZodTemplateLiteral",(t,A)=>{nU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>CT(t,e,i,n)});function Xle(t,A){return new FO(Y({type:"template_literal",parts:t},KA.normalizeParams(A)))}var LO=Re("ZodLazy",(t,A)=>{rU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>RT(t,e,i,n),t.unwrap=()=>t._zod.def.getter()});function GO(t){return new LO({type:"lazy",getter:t})}var KO=Re("ZodPromise",(t,A)=>{aU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>xT(t,e,i,n),t.unwrap=()=>t._zod.def.innerType});function $le(t){return new KO({type:"promise",innerType:t})}var UO=Re("ZodFunction",(t,A)=>{oU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>hT(t,e,i,n)});function ece(t){return new UO({type:"function",input:Array.isArray(t?.input)?dO(t?.input):t?.input??hf(W1()),output:t?.output??W1()})}var mf=Re("ZodCustom",(t,A)=>{sU.init(t,A),on.init(t,A),t._zod.processJSONSchema=(e,i,n)=>BT(t,e,i,n)});function Ace(t){let A=new Ia({check:"custom"});return A._zod.check=t,A}function tce(t,A){return YU(mf,t??(()=>!0),A)}function TO(t,A={}){return HU(mf,t,A)}function OO(t,A){return PU(t,A)}var ice=jU,nce=VU;function oce(t,A={}){let e=new mf(Y({type:"custom",check:"custom",fn:i=>i instanceof t,abort:!0},KA.normalizeParams(A)));return e._zod.bag.Class=t,e._zod.check=i=>{i.value instanceof t||i.issues.push({code:"invalid_type",expected:t.name,input:i.value,inst:e,path:[...e._zod.def.path??[]]})},e}var ace=(...t)=>qU({Codec:pf,Boolean:HE,String:JE},...t);function rce(t){let A=GO(()=>jb([lf(t),WT(),XT(),tO(),hf(A),IO(lf(),A)]));return A}function sce(t,A){return new xO({type:"pipe",in:qb(t),out:A})}var yTe={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function vTe(t){Xa({customError:t})}function DTe(){return Xa().customError}var JO;JO||(JO={});var gt=Ye(Y(Y({},sf),mb),{iso:UE}),bTe=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);function MTe(t,A){let e=t.$schema;return e==="https://json-schema.org/draft/2020-12/schema"?"draft-2020-12":e==="http://json-schema.org/draft-07/schema#"?"draft-7":e==="http://json-schema.org/draft-04/schema#"?"draft-4":A??"draft-2020-12"}function STe(t,A){if(!t.startsWith("#"))throw new Error("External $ref is not supported, only local refs (#/...) are allowed");let e=t.slice(1).split("/").filter(Boolean);if(e.length===0)return A.rootSchema;let i=A.version==="draft-2020-12"?"$defs":"definitions";if(e[0]===i){let n=e[1];if(!n||!A.defs[n])throw new Error(`Reference not found: ${t}`);return A.defs[n]}throw new Error(`Reference not found: ${t}`)}function lce(t,A){if(t.not!==void 0){if(typeof t.not=="object"&&Object.keys(t.not).length===0)return gt.never();throw new Error("not is not supported in Zod (except { not: {} } for never)")}if(t.unevaluatedItems!==void 0)throw new Error("unevaluatedItems is not supported");if(t.unevaluatedProperties!==void 0)throw new Error("unevaluatedProperties is not supported");if(t.if!==void 0||t.then!==void 0||t.else!==void 0)throw new Error("Conditional schemas (if/then/else) are not supported");if(t.dependentSchemas!==void 0||t.dependentRequired!==void 0)throw new Error("dependentSchemas and dependentRequired are not supported");if(t.$ref){let n=t.$ref;if(A.refs.has(n))return A.refs.get(n);if(A.processing.has(n))return gt.lazy(()=>{if(!A.refs.has(n))throw new Error(`Circular reference not resolved: ${n}`);return A.refs.get(n)});A.processing.add(n);let o=STe(n,A),a=Fs(o,A);return A.refs.set(n,a),A.processing.delete(n),a}if(t.enum!==void 0){let n=t.enum;if(A.version==="openapi-3.0"&&t.nullable===!0&&n.length===1&&n[0]===null)return gt.null();if(n.length===0)return gt.never();if(n.length===1)return gt.literal(n[0]);if(n.every(a=>typeof a=="string"))return gt.enum(n);let o=n.map(a=>gt.literal(a));return o.length<2?o[0]:gt.union([o[0],o[1],...o.slice(2)])}if(t.const!==void 0)return gt.literal(t.const);let e=t.type;if(Array.isArray(e)){let n=e.map(o=>{let a=Ye(Y({},t),{type:o});return lce(a,A)});return n.length===0?gt.never():n.length===1?n[0]:gt.union(n)}if(!e)return gt.any();let i;switch(e){case"string":{let n=gt.string();if(t.format){let o=t.format;o==="email"?n=n.check(gt.email()):o==="uri"||o==="uri-reference"?n=n.check(gt.url()):o==="uuid"||o==="guid"?n=n.check(gt.uuid()):o==="date-time"?n=n.check(gt.iso.datetime()):o==="date"?n=n.check(gt.iso.date()):o==="time"?n=n.check(gt.iso.time()):o==="duration"?n=n.check(gt.iso.duration()):o==="ipv4"?n=n.check(gt.ipv4()):o==="ipv6"?n=n.check(gt.ipv6()):o==="mac"?n=n.check(gt.mac()):o==="cidr"?n=n.check(gt.cidrv4()):o==="cidr-v6"?n=n.check(gt.cidrv6()):o==="base64"?n=n.check(gt.base64()):o==="base64url"?n=n.check(gt.base64url()):o==="e164"?n=n.check(gt.e164()):o==="jwt"?n=n.check(gt.jwt()):o==="emoji"?n=n.check(gt.emoji()):o==="nanoid"?n=n.check(gt.nanoid()):o==="cuid"?n=n.check(gt.cuid()):o==="cuid2"?n=n.check(gt.cuid2()):o==="ulid"?n=n.check(gt.ulid()):o==="xid"?n=n.check(gt.xid()):o==="ksuid"&&(n=n.check(gt.ksuid()))}typeof t.minLength=="number"&&(n=n.min(t.minLength)),typeof t.maxLength=="number"&&(n=n.max(t.maxLength)),t.pattern&&(n=n.regex(new RegExp(t.pattern))),i=n;break}case"number":case"integer":{let n=e==="integer"?gt.number().int():gt.number();typeof t.minimum=="number"&&(n=n.min(t.minimum)),typeof t.maximum=="number"&&(n=n.max(t.maximum)),typeof t.exclusiveMinimum=="number"?n=n.gt(t.exclusiveMinimum):t.exclusiveMinimum===!0&&typeof t.minimum=="number"&&(n=n.gt(t.minimum)),typeof t.exclusiveMaximum=="number"?n=n.lt(t.exclusiveMaximum):t.exclusiveMaximum===!0&&typeof t.maximum=="number"&&(n=n.lt(t.maximum)),typeof t.multipleOf=="number"&&(n=n.multipleOf(t.multipleOf)),i=n;break}case"boolean":{i=gt.boolean();break}case"null":{i=gt.null();break}case"object":{let n={},o=t.properties||{},a=new Set(t.required||[]);for(let[s,l]of Object.entries(o)){let c=Fs(l,A);n[s]=a.has(s)?c:c.optional()}if(t.propertyNames){let s=Fs(t.propertyNames,A),l=t.additionalProperties&&typeof t.additionalProperties=="object"?Fs(t.additionalProperties,A):gt.any();if(Object.keys(n).length===0){i=gt.record(s,l);break}let c=gt.object(n).passthrough(),C=gt.looseRecord(s,l);i=gt.intersection(c,C);break}if(t.patternProperties){let s=t.patternProperties,l=Object.keys(s),c=[];for(let d of l){let B=Fs(s[d],A),E=gt.string().regex(new RegExp(d));c.push(gt.looseRecord(E,B))}let C=[];if(Object.keys(n).length>0&&C.push(gt.object(n).passthrough()),C.push(...c),C.length===0)i=gt.object({}).passthrough();else if(C.length===1)i=C[0];else{let d=gt.intersection(C[0],C[1]);for(let B=2;BFs(s,A)),r=o&&typeof o=="object"&&!Array.isArray(o)?Fs(o,A):void 0;r?i=gt.tuple(a).rest(r):i=gt.tuple(a),typeof t.minItems=="number"&&(i=i.check(gt.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(gt.maxLength(t.maxItems)))}else if(Array.isArray(o)){let a=o.map(s=>Fs(s,A)),r=t.additionalItems&&typeof t.additionalItems=="object"?Fs(t.additionalItems,A):void 0;r?i=gt.tuple(a).rest(r):i=gt.tuple(a),typeof t.minItems=="number"&&(i=i.check(gt.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(gt.maxLength(t.maxItems)))}else if(o!==void 0){let a=Fs(o,A),r=gt.array(a);typeof t.minItems=="number"&&(r=r.min(t.minItems)),typeof t.maxItems=="number"&&(r=r.max(t.maxItems)),i=r}else i=gt.array(gt.any());break}default:throw new Error(`Unsupported type: ${e}`)}return i}function Fs(t,A){if(typeof t=="boolean")return t?gt.any():gt.never();let e=lce(t,A),i=t.type||t.enum!==void 0||t.const!==void 0;if(t.anyOf&&Array.isArray(t.anyOf)){let r=t.anyOf.map(l=>Fs(l,A)),s=gt.union(r);e=i?gt.intersection(e,s):s}if(t.oneOf&&Array.isArray(t.oneOf)){let r=t.oneOf.map(l=>Fs(l,A)),s=gt.xor(r);e=i?gt.intersection(e,s):s}if(t.allOf&&Array.isArray(t.allOf))if(t.allOf.length===0)e=i?e:gt.any();else{let r=i?e:Fs(t.allOf[0],A),s=i?0:1;for(let l=s;l0&&A.registry.add(e,n),t.description&&(e=e.describe(t.description)),e}function cce(t,A){if(typeof t=="boolean")return t?gt.any():gt.never();let e;try{e=JSON.parse(JSON.stringify(t))}catch(a){throw new Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let i=MTe(e,A?.defaultTarget),n=e.$defs||e.definitions||{},o={version:i,defs:n,refs:new Map,processing:new Set,rootSchema:e,registry:A?.registry??ds};return Fs(e,o)}var zO={};eC(zO,{bigint:()=>RTe,boolean:()=>xTe,date:()=>NTe,number:()=>_Te,string:()=>kTe});function kTe(t){return CU(JE,t)}function _Te(t){return pU(YE,t)}function xTe(t){return bU(HE,t)}function RTe(t){return SU(PE,t)}function NTe(t){return TU(Bf,t)}Xa(TD());var FTe=AA.union([AA.string(),AA.number(),AA.boolean()]),Xb=AA.lazy(()=>AA.union([FTe,AA.array(Xb),AA.record(AA.string(),Xb)]));function $b(t){return t.transform(A=>{if(!A||typeof A!="object")return A;let e={};for(let[i,n]of Object.entries(A))n!==null&&(e[i]=n);return e})}var YO=AA.string().transform((t,A)=>{try{return JSON.parse(t)}catch(e){return A.addIssue({code:"custom",message:"Invalid JSON string"}),AA.NEVER}}),ff=t=>AA.union([t,YO.pipe(t)]);var e7="gen_ai.input.messages",A7="gen_ai.output.messages",t7="gen_ai.system_instructions",i7="gen_ai.tool.definitions",n7="gen_ai.response.finish_reasons",o7="gen_ai.usage.input_tokens",a7="gen_ai.usage.output_tokens",gce="function",yf="gen_ai.client.inference.operation.details",LTe=AA.object({type:AA.literal("text"),content:AA.string()}),GTe=AA.object({type:AA.literal("blob"),mime_type:AA.string(),data:AA.any()}),KTe=AA.object({type:AA.literal("file_data"),mime_type:AA.string(),uri:AA.string()}),UTe=AA.object({type:AA.literal("tool_call"),id:AA.string().nullable().optional(),name:AA.string(),arguments:AA.record(AA.string(),AA.any()).nullable().optional()}),TTe=AA.object({type:AA.literal("tool_call_response"),id:AA.string().nullable().optional(),response:AA.record(AA.string(),AA.any()).nullable().optional()}),HO=AA.discriminatedUnion("type",[LTe,GTe,KTe,UTe,TTe]),OTe=AA.object({role:AA.string(),parts:AA.array(HO)}),JTe=AA.object({role:AA.string(),parts:AA.array(HO),finish_reason:AA.string()}),zTe=AA.object({type:AA.literal(gce),name:AA.string(),description:AA.string().nullable().optional(),parameters:AA.record(AA.string(),AA.any()).nullable().optional()}),YTe=AA.object({name:AA.string(),type:AA.string()}),HTe=AA.union([zTe,YTe]),PTe=ff(AA.array(OTe)),jTe=ff(AA.array(JTe)),VTe=ff(AA.array(HO)),qTe=ff(AA.array(HTe)),PO=AA.array(AA.string()),wf=AA.number(),ZTe=AA.object({[e7]:PTe.optional(),[A7]:jTe.optional(),[t7]:VTe.optional(),[i7]:qTe.optional(),[n7]:PO.optional(),[o7]:wf.optional(),[a7]:wf.optional()}).passthrough(),Cce=AA.object({event_name:AA.literal(yf),body:AA.unknown().optional(),attributes:ZTe.optional()});var r7="gen_ai.system.message",s7="gen_ai.user.message",l7="gen_ai.choice",WTe=$b(AA.object({id:AA.string().nullable().optional(),name:AA.string(),args:AA.record(AA.string(),AA.any()),needsResponse:AA.boolean().nullable().optional()})),XTe=$b(AA.object({id:AA.string().nullable().optional(),name:AA.string(),response:AA.record(AA.string(),AA.any())})),Ice=$b(AA.object({text:AA.string().nullable().optional(),function_call:WTe.nullable().optional(),function_response:XTe.nullable().optional()})),$Te=AA.object({parts:AA.array(Ice),role:AA.string()}),dce=AA.object({content:AA.object({parts:AA.array(Ice),role:AA.string().optional()}),role:AA.string().optional()}).transform(t=>{let A=Y({},t.content);return t.role!==void 0&&(A.role=t.role),{content:A}}).pipe(AA.object({content:$Te})),eOe=AA.object({content:AA.string()}),AOe=AA.object({event_name:AA.enum([s7,l7]),body:AA.union([dce,YO.pipe(dce)])}),tOe=AA.object({event_name:AA.literal(r7),body:eOe}),Bce=AA.union([tOe,AOe]);var iOe="gcp.vertex.agent.llm_request",nOe="gcp.vertex.agent.llm_response";function c7(t){let A=oOe(t);if(A!==void 0)return A;let e=aOe(t);if(e!==void 0)return e;let i=rOe(t);if(i!==void 0)return i}function oOe(t){let A=(t.logs??[]).find(r=>r.event_name===yf);if(A===void 0)return;let e=A.attributes??{},i=e[t7],n=e[e7],o=e[i7],a=e[A7];if(!(i===void 0&&n===void 0&&o===void 0&&a===void 0))return{kind:"experimental",inputs:{system_instruction:i,user_messages:n,tool_definitions:o},outputs:a}}function aOe(t){let A=t.logs??[],e,i=[],n;for(let o of A)switch(o.event_name){case r7:e=o.body;break;case s7:i.push(o.body);break;case l7:n=o.body;break;default:break}if(!(e===void 0&&i.length===0&&n===void 0))return{kind:"stable",inputs:{system_instruction:e,user_messages:i},outputs:n}}function rOe(t){let A=t.attributes??{},e=A[iOe],i=A[nOe];if(!(e===void 0&&i===void 0))return{kind:"legacy",inputs:hce(e),outputs:hce(i)}}function hce(t){if(typeof t!="string")return t;try{return JSON.parse(t)}catch(A){return t}}var sOe=AA.union([Bce,Cce]);var lOe="gen_ai.operation.name",uce="gen_ai.conversation.id",cOe="gen_ai.agent.name",gOe="gen_ai.agent.description",Ece="gcp.vertex.agent.invocation_id",COe="gcp.vertex.agent.associated_event_ids",Qce="gcp.vertex.agent.event_id";var VO="invoke_agent",$1="generate_content",dOe=AA.object({name:AA.string(),start_time:AA.number(),end_time:AA.number(),trace_id:AA.union([AA.string(),AA.number()]),span_id:AA.union([AA.string(),AA.number()]),parent_span_id:AA.union([AA.string(),AA.number()]).nullable().optional(),attributes:AA.record(AA.string(),Xb).optional(),logs:AA.array(sOe).optional()}),IOe=AA.object({attrConversationId:AA.string().optional(),attrInvocationId:AA.string().optional(),attrAssociatedEventIds:AA.array(AA.string()).optional(),attrAgentName:AA.string().optional(),attrAgentDescription:AA.string().optional(),attrEventId:AA.string().optional(),attrResponseFinishReasons:PO.optional(),attrUsageInputTokens:wf.optional(),attrUsageOutputTokens:wf.optional()});function BOe(t){let A=t.attributes??{},e={attrConversationId:A[uce],attrInvocationId:A[Ece],attrAssociatedEventIds:A[COe],attrAgentName:A[cOe],attrAgentDescription:A[gOe],attrEventId:A[Qce],attrResponseFinishReasons:A[n7],attrUsageInputTokens:A[o7],attrUsageOutputTokens:A[a7]};for(let i of Object.keys(e))e[i]===void 0&&delete e[i];return e}var hOe=AA.object({attrConversationId:AA.string({message:`'${uce}' is required on '${VO}' spans`})}),uOe=AA.object({attrEventId:AA.string({message:`'${Qce}' is required on '${$1}' spans`}),attrInvocationId:AA.string({message:`'${Ece}' is required on '${$1}' spans`})});function qO(t,A){for(let e of A)t.addIssue(e)}function jO(t,A,e){let i=BOe(t),n=IOe.safeParse(i);if(!n.success)return qO(e,n.error.issues),null;if(A===null)return n.data;let o=A.safeParse(i);return o.success?Y(Y({},n.data),o.data):(qO(e,o.error.issues),null)}var pce=AA.unknown().transform((t,A)=>{let e=dOe.safeParse(t);if(!e.success)return qO(A,e.error.issues),AA.NEVER;let i=e.data,n=i.attributes?.[lOe],B=i,{logs:o,attributes:a}=B,r=ld(B,["logs","attributes"]),s=a!==void 0?{rawAttributesUseThisFieldOnlyForDisplay:a}:{rawAttributesUseThisFieldOnlyForDisplay:{}},l={rawSpanUseThisFieldOnlyForDisplay:t};if(n===VO){let E=jO(i,hOe,A);return E===null?AA.NEVER:Ye(Y(Y(Y(Y({},r),s),l),E),{attrOperationName:VO})}if(n===$1){let E=jO(i,uOe,A);if(E===null)return AA.NEVER;let u=c7({attributes:i.attributes,logs:o});return Y(Ye(Y(Y(Y(Y({},r),s),l),E),{attrOperationName:$1}),u!==void 0?{io:u}:{})}let c=jO(i,null,A);if(c===null)return AA.NEVER;let C=c7({attributes:i.attributes,logs:o});return Y(Y(Y(Y(Y({},r),s),l),c),C!==void 0?{io:C}:{})});function ZO(t){if(!t)return;let A=t.system_instruction;if(A===void 0&&t.systemInstruction&&(A=t.systemInstruction),A===void 0&&t.config&&(A=t.config.system_instruction!==void 0?t.config.system_instruction:t.config.systemInstruction),typeof A=="string")return A}var EOe=["sideDrawer"],QOe=["drawerSessionTab"],pOe=["appSearchInput"],mOe=["invChipMenuTrigger"],fOe=["nodeChipMenuTrigger"],wOe=["addMenuTrigger"],yOe=[[["","adk-web-chat-container-top",""]]],vOe=["[adk-web-chat-container-top]"],fce=()=>[],DOe=(t,A)=>A.metricName;function bOe(t,A){t&1&&Bn(0)}function MOe(t,A){if(t&1&&Nt(0,bOe,1,0,"ng-container",40),t&2){let e=p();H("ngComponentOutlet",e.logoComponent)}}function SOe(t,A){if(t&1&&(I(0,"span",45),v(1),h()),t&2){let e=p(2);Q(),pA(" ",e.adkVersion())}}function kOe(t,A){if(t&1&&(I(0,"div",48)(1,"div",50)(2,"span",51),v(3,"Version:"),h(),I(4,"span",52),v(5),h()(),I(6,"div",50)(7,"span",51),v(8,"Language:"),h(),I(9,"span",52),v(10),h()(),I(11,"div",50)(12,"span",51),v(13,"Lang Version:"),h(),I(14,"span",52),v(15),h()()()),t&2){let e=p(2);Q(5),ne(e.versionInfo().version),Q(5),ne(e.versionInfo().language),Q(5),ne(e.versionInfo().language_version)}}function _Oe(t,A){if(t&1&&(le(0,"img",41),I(1,"div",42)(2,"div",43)(3,"span",44),v(4,"Agent Development Kit"),h(),T(5,SOe,2,1,"span",45),h(),I(6,"div",46)(7,"div",47),v(8),h(),T(9,kOe,16,3,"div",48),h()(),I(10,"span",49),v(11,"ADK"),h()),t&2){let e=p();Q(5),O(e.adkVersion()?5:-1),Q(3),ne(e.sidePanelI18n.disclosureTooltip),Q(),O(e.versionInfo()?9:-1)}}function xOe(t,A){t&1&&(I(0,"mat-icon",20),v(1,"warning"),h())}function ROe(t,A){if(t&1){let e=ae();I(0,"span",54)(1,"button",56),U("click",function(){L(e);let n=p(2);return G(n.openAgentStructureGraphDialog())}),I(2,"mat-icon"),v(3,"account_tree"),h()()()}if(t&2){let e=p(2);H("matTooltip",e.graphsAvailable()?"View Agent Structure Graph":"Agent structure graph is not available for this agent"),Q(),H("disabled",!e.graphsAvailable())}}function NOe(t,A){if(t&1){let e=ae();le(0,"div",53),T(1,ROe,4,2,"span",54),I(2,"span",54)(3,"button",55),U("click",function(){L(e);let n=p();return G(n.enterBuilderMode())}),I(4,"mat-icon"),v(5,"edit"),h()()()}if(t&2){let e=p();Q(),O(e.graphsAvailable()?1:-1),Q(),H("matTooltip",e.disableBuilderSwitch?"Editing is not available for this agent because it was not built by the builder":"Edit in Builder Mode"),Q(),H("disabled",e.disableBuilderSwitch)}}function FOe(t,A){if(t&1){let e=ae();I(0,"div",57)(1,"mat-icon",62),v(2,"visibility"),h(),I(3,"span",63),v(4),h(),I(5,"button",64),U("click",function(){L(e);let n=p(2);return G(n.closeReadonlySession())}),I(6,"mat-icon",65),v(7,"close"),h()()()}if(t&2){let e=p(2);Q(4),Va("",e.readonlySessionType(),": ",e.readonlySessionName())}}function LOe(t,A){if(t&1){let e=ae();I(0,"button",69),U("click",function(){L(e);let n=p(7);return G(n.onNewSessionClick())}),I(1,"mat-icon",18),v(2,"add_comment"),h(),I(3,"span"),v(4),h()()}if(t&2){let e=p(7);H("matTooltip",e.i18n.createNewSessionTooltip),Q(4),ne(e.i18n.newSessionButton)}}function GOe(t,A){if(t&1){let e=ae();I(0,"button",70),U("click",function(){L(e);let n=p(7);return G(n.onNewSessionClick())}),I(1,"mat-icon",18),v(2,"add_comment"),h()()}if(t&2){let e=p(7);H("matTooltip",e.i18n.createNewSessionTooltip)}}function KOe(t,A){if(t&1&&(le(0,"div",53),T(1,LOe,5,2,"button",67)(2,GOe,3,1,"button",68)),t&2){let e=p(6);Q(),O(e.uiEvents().length>0&&!e.isMobile()?1:2)}}function UOe(t,A){if(t&1&&T(0,KOe,3,1),t&2){let e=p(5);O(e.sessionId?0:-1)}}function TOe(t,A){if(t&1&&(T(0,UOe,1,1),Dt(1,"async")),t&2){let e=p(4);O(Ut(1,1,e.isNewSessionButtonEnabledObs)?0:-1)}}function OOe(t,A){if(t&1&&(so(0),Dt(1,"async"),T(2,TOe,2,3)),t&2){let e=Ut(1,1,p(3).uiStateService.isSessionLoading());Q(2),O(e===!1?2:-1)}}function JOe(t,A){if(t&1){let e=ae();I(0,"div",16)(1,"button",66),U("click",function(){L(e);let n=p(2);return G(n.toggleSessionSelectorDrawer())}),I(2,"mat-icon",18),v(3,"chat"),h(),I(4,"span",19),v(5),h(),I(6,"mat-icon",21),v(7,"arrow_drop_down"),h()(),T(8,OOe,3,3),h()}if(t&2){let e=p(2);Q(5),ne(e.getToolbarSessionId()),Q(3),O(e.evalCase?-1:8)}}function zOe(t,A){if(t&1&&(I(0,"div",57)(1,"span",63),v(2),h(),I(3,"span",71),v(4),h()()),t&2){let e=p(3);Q(2),ne(e.i18n.evalCaseIdLabel),Q(2),ne(e.evalCase.evalId)}}function YOe(t,A){if(t&1){let e=ae();I(0,"button",72),U("click",function(){L(e);let n=p(3);return G(n.cancelEditEvalCase())}),v(1),h(),I(2,"button",73),U("click",function(){L(e);let n=p(3);return G(n.saveEvalCase())}),v(3),h()}if(t&2){let e=p(3);Q(),pA(" ",e.i18n.cancelButton," "),Q(),H("disabled",!e.hasEvalCaseChanged()||e.isEvalCaseEditing()),Q(),pA(" ",e.i18n.saveButton," ")}}function HOe(t,A){}function POe(t,A){if(t&1&&(T(0,zOe,5,2,"div",57),I(1,"div",60),T(2,YOe,4,3)(3,HOe,0,0),h()),t&2){let e=p(2);O(e.isViewOnlySession()?-1:0),Q(2),O(e.isEvalEditMode()?2:3)}}function jOe(t,A){}function VOe(t,A){if(t&1&&(I(0,"div",74),v(1),h()),t&2){let e=p(3);Q(),ne(e.i18n.loadingSessionLabel)}}function qOe(t,A){if(t&1&&(I(0,"div",59),so(1),Dt(2,"async"),T(3,jOe,0,0)(4,VOe,2,1,"div",74),h()),t&2){let e=Ut(2,1,p(2).uiStateService.isSessionLoading());Q(3),O(e===!1?3:4)}}function ZOe(t,A){if(t&1){let e=ae();I(0,"button",75),U("click",function(){L(e);let n=p(2);return G(n.themeService==null?null:n.themeService.toggleTheme())}),I(1,"mat-icon"),v(2),h()()}if(t&2){let e=p(2);H("matTooltip",(e.themeService==null?null:e.themeService.currentTheme())==="dark"?"Switch to Light Mode":"Switch to Dark Mode"),Q(2),ne((e.themeService==null?null:e.themeService.currentTheme())==="dark"?"light_mode":"dark_mode")}}function WOe(t,A){if(t&1&&(I(0,"div",22),T(1,FOe,8,2,"div",57)(2,JOe,9,2,"div",16),I(3,"div",58),T(4,POe,4,2)(5,qOe,5,3,"div",59),h(),I(6,"div",60),so(7),Dt(8,"async"),T(9,ZOe,3,2,"button",61),h()()),t&2){let e=p();Q(),O(e.isViewOnlySession()?1:2),Q(3),O(e.evalCase?4:5);let i=Ut(8,3,e.uiStateService.isSessionLoading());Q(5),O(i===!1?9:-1)}}function XOe(t,A){t&1&&(I(0,"div",85),le(1,"mat-progress-spinner",86),h())}function $Oe(t,A){t&1&&(I(0,"mat-icon",92),v(1,"check"),h())}function eJe(t,A){if(t&1){let e=ae();I(0,"button",89),U("click",function(){let n=L(e).$implicit,o=p(3);return G(o.selectAppFromDrawer(n))}),I(1,"mat-icon",90),v(2,"robot_2"),h(),I(3,"span",91),v(4),h(),T(5,$Oe,2,0,"mat-icon",92),h()}if(t&2){let e=A.$implicit,i=p(3);_e("selected",e===i.appName),Q(4),ne(e),Q(),O(e===i.appName?5:-1)}}function AJe(t,A){t&1&&(I(0,"div",88),v(1,"No apps found"),h())}function tJe(t,A){t&1&&RA(0,eJe,6,4,"button",87,ri,!1,AJe,2,0,"div",88),t&2&&NA(A)}function iJe(t,A){if(t&1){let e=ae();I(0,"div",76)(1,"span",77),v(2,"Select an App"),h(),I(3,"div")(4,"button",78),U("click",function(){L(e);let n=p();return G(n.openAddItemDialog())}),I(5,"mat-icon"),v(6,"add"),h()(),I(7,"button",79),U("click",function(){L(e);let n=p();return G(n.toggleAppSelectorDrawer())}),I(8,"mat-icon"),v(9,"close"),h()()()(),I(10,"div",80)(11,"mat-form-field",81)(12,"mat-icon",82),v(13,"search"),h(),I(14,"input",83,3),U("keydown",function(n){L(e);let o=p();return G(o.handleAppSearchKeydown(n))}),h()()(),I(16,"div",84),U("keydown",function(n){L(e);let o=p();return G(o.handleAppListKeydown(n))}),T(17,XOe,2,0,"div",85),Dt(18,"async"),oI(19,tJe,3,1),h()}if(t&2){let e,i=p();Q(14),H("formControl",i.appDrawerSearchControl),Q(3),O(i.isLoadingApps()?17:(e=Ut(18,2,i.filteredDrawerApps$))?19:-1,e)}}function nJe(t,A){if(t&1){let e=ae();I(0,"button",95),U("click",function(){L(e);let n=p(2);return G(n.importSession())}),I(1,"mat-icon"),v(2,"upload"),h(),I(3,"span"),v(4,"Import"),h()()}if(t&2){let e=p(2);H("matTooltip",e.i18n.importSessionTooltip)}}function oJe(t,A){if(t&1){let e=ae();I(0,"button",108),U("click",function(){L(e);let n=p(3);return G(n.exportSession())}),I(1,"mat-icon"),v(2,"download"),h(),I(3,"span"),v(4,"Export"),h()()}if(t&2){let e=p(3);H("matTooltip",e.i18n.exportSessionTooltip)}}function aJe(t,A){if(t&1){let e=ae();I(0,"button",109),U("click",function(){L(e);let n=p(3);return G(n.deleteSession(n.sessionId))}),I(1,"mat-icon"),v(2,"delete"),h(),I(3,"span"),v(4,"Delete"),h()()}if(t&2){let e=p(3);H("matTooltip",e.i18n.deleteSessionTooltip)}}function rJe(t,A){if(t&1){let e=ae();I(0,"div",97)(1,"span",100),v(2,"Current Session"),h(),I(3,"div",101)(4,"app-inline-edit",102),U("save",function(n){L(e);let o=p(2);return G(o.saveSessionName(n))}),h()(),I(5,"div",103)(6,"span",104),v(7),h(),I(8,"button",105),U("click",function(){L(e);let n=p(2);return G(n.copySessionId())}),I(9,"mat-icon"),v(10,"content_copy"),h()(),T(11,oJe,5,1,"button",106),Dt(12,"async"),T(13,aJe,5,1,"button",107),Dt(14,"async"),h()()}if(t&2){let e=p(2);Q(4),H("value",e.sessionDisplayNameDraft)("displayValue",e.getCurrentSessionDisplayName())("tooltip",e.sessionId),Q(2),H("title",e.sessionId),Q(),ne(e.sessionId),Q(4),O(Ut(12,7,e.isExportSessionEnabledObs)?11:-1),Q(2),O(Ut(14,9,e.isDeleteSessionEnabledObs)?13:-1)}}function sJe(t,A){if(t&1){let e=ae();I(0,"div",76)(1,"span",77),v(2,"Select a Session"),h(),I(3,"div",93),T(4,nJe,5,1,"button",94),Dt(5,"async"),I(6,"button",95),U("click",function(){L(e);let n=p();return G(n.viewSession())}),I(7,"mat-icon"),v(8,"visibility"),h(),I(9,"span"),v(10,"View"),h()(),I(11,"button",96),U("click",function(){L(e);let n=p();return G(n.toggleSessionSelectorDrawer())}),I(12,"mat-icon"),v(13,"close"),h()()()(),T(14,rJe,15,11,"div",97),I(15,"div",98)(16,"app-session-tab",99,4),U("sessionSelected",function(n){L(e);let o=p();return G(o.onSessionSelectedFromDrawer(n))})("sessionReloaded",function(n){L(e);let o=p();return G(o.onSessionReloadedFromDrawer(n))}),h()()}if(t&2){let e=p();Q(4),O(Ut(5,6,e.importSessionEnabledObs)?4:-1),Q(2),H("matTooltip",e.i18n.viewSessionTooltip),Q(8),O(e.sessionId?14:-1),Q(2),H("userId",e.userId)("appName",e.appName)("sessionId",e.sessionId)}}function lJe(t,A){if(t&1){let e=ae();I(0,"app-side-panel",110),U("jumpToInvocation",function(n){L(e);let o=p();return G(o.handleJumpToInvocation(n))})("closePanel",function(){L(e);let n=p();return G(n.toggleSidePanel())})("tabChange",function(n){L(e);let o=p();return G(o.handleTabChange(n))})("sessionSelected",function(n){L(e);let o=p();return G(o.updateWithSelectedSession(n))})("evalCaseSelected",function(n){L(e);let o=p();return G(o.updateWithSelectedEvalCase(n))})("editEvalCaseRequested",function(n){L(e);let o=p();return G(o.handleEditEvalCaseRequested(n))})("testSelected",function(n){L(e);let o=p();return G(o.updateWithSelectedTest(n.testName,n.events))})("evalSetIdSelected",function(n){L(e);let o=p();return G(o.updateSelectedEvalSetId(n))})("returnToSession",function(n){L(e);let o=p();return G(o.handleReturnToSession(n))})("evalNotInstalled",function(n){L(e);let o=p();return G(o.handleEvalNotInstalled(n))})("page",function(n){L(e);let o=p();return G(o.handlePageEvent(n))})("closeSelectedEvent",function(){L(e);let n=p();return G(n.closeSelectedEvent())})("openImageDialog",function(n){L(e);let o=p();return G(o.openViewImageDialog(n))})("openAddItemDialog",function(){L(e);let n=p();return G(n.openAddItemDialog())})("enterBuilderMode",function(){L(e);let n=p();return G(n.enterBuilderMode())})("showAgentStructureGraph",function(){L(e);let n=p();return G(n.openAgentStructureGraphDialog("event"))})("switchToEvent",function(n){L(e);let o=p();return G(o.selectEvent(n))})("switchToTraceView",function(){L(e);let n=p();return G(n.switchToTraceView())})("drillDownNodePath",function(n){L(e);let o=p();return G(o.onEventTabDrillDown(n))})("selectEventById",function(n){L(e);let o=p();return G(o.selectEvent(n))}),h()}if(t&2){let e=p();H("isApplicationSelectorEnabledObs",e.isApplicationSelectorEnabledObs)("showSidePanel",e.showSidePanel)("appName",e.appName)("userId",e.userId)("sessionId",e.sessionId)("isViewOnlySession",e.isViewOnlySession())("isViewOnlyAppNameMismatch",e.isViewOnlyAppNameMismatch())("traceData",e.traceData)("eventData",e.eventData)("currentSessionState",e.currentSessionState)("artifacts",e.artifacts)("selectedEvent",e.selectedEvent)("selectedEventIndex",e.selectedEventIndex)("renderedEventGraph",e.renderedEventGraph)("rawSvgString",e.rawSvgString)("selectedEventGraphPath",e.selectedEventGraphPath)("llmRequest",e.llmRequest)("llmResponse",e.llmResponse)("disableBuilderIcon",e.disableBuilderSwitch)("hasSubWorkflows",e.hasSubWorkflows)("graphsAvailable",e.graphsAvailable())("invocationDisplayMap",e.invocationDisplayMap())("forceGraphTab",e.autoSelectLatestEvent)}}function cJe(t,A){if(t&1){let e=ae();I(0,"app-builder-tabs",111),U("exitBuilderMode",function(){L(e);let n=p();return G(n.exitBuilderMode())})("closePanel",function(){L(e);let n=p();return G(n.toggleSidePanel())}),h(),le(1,"div",112)}if(t&2){let e=p();H("appNameInput",e.appName)}}function gJe(t,A){if(t&1){let e=ae();I(0,"div",37)(1,"div",113)(2,"button",114),U("click",function(){L(e);let n=p();return G(n.saveAgentBuilder())}),I(3,"mat-icon"),v(4,"check"),h()(),I(5,"button",115),U("click",function(){L(e);let n=p();return G(n.exitBuilderMode())}),I(6,"mat-icon"),v(7,"close"),h()(),I(8,"button",116),U("click",function(){L(e);let n=p();return G(n.toggleBuilderAssistant())}),I(9,"mat-icon"),v(10,"assistant"),h()()(),I(11,"app-canvas",117),U("toggleSidePanelRequest",function(){L(e);let n=p();return G(n.toggleSidePanel())})("builderAssistantCloseRequest",function(){L(e);let n=p();return G(n.toggleBuilderAssistant())}),h()()}if(t&2){let e=p();Q(8),_e("active",e.showBuilderAssistant),Q(3),H("showSidePanel",e.showSidePanel)("showBuilderAssistant",e.showBuilderAssistant)("appNameInput",e.appName)}}function CJe(t,A){if(t&1&&(I(0,"div",119)(1,"span"),v(2),h()()),t&2){let e=p(3);Q(2),ne(e.i18n.loadingAgentsLabel)}}function dJe(t,A){if(t&1&&(I(0,"span"),v(1),le(2,"br"),v(3),h()),t&2){let e=p(4);Q(),ne(e.i18n.welcomeMessage),Q(2),pA(" ",e.i18n.selectAgentMessage)}}function IJe(t,A){if(t&1&&(v(0),le(1,"br"),I(2,"pre",121),v(3),h()),t&2){let e=p(5);pA(" ",e.i18n.errorMessageLabel," "),Q(3),ne(e.loadingError())}}function BJe(t,A){if(t&1&&(I(0,"pre",120),v(1),h()),t&2){let e=p(5);Q(),ne(e.i18n.noAgentsFoundWarning)}}function hJe(t,A){if(t&1&&(I(0,"div"),v(1),I(2,"pre"),v(3,"adk web"),h(),v(4," in the folder that contains the agents."),le(5,"br"),T(6,IJe,4,2)(7,BJe,2,1,"pre",120),h()),t&2){let e=p(4);Q(),pA(" ",e.i18n.failedToLoadAgentsMessage," "),Q(5),O(e.loadingError()?6:7)}}function uJe(t,A){if(t&1&&(I(0,"div",119),T(1,dJe,4,2,"span"),Dt(2,"async"),oI(3,hJe,8,2,"div"),h()),t&2){let e=p(3);Q(),O((Ut(2,1,e.apps$)||$g(3,fce)).length>0?1:3)}}function EJe(t,A){if(t&1&&(T(0,CJe,3,1,"div",119),Dt(1,"async"),oI(2,uJe,4,4,"div",119)),t&2){let e=p(2);O(e.isLoadingApps()?0:Ut(1,1,e.isApplicationSelectorEnabledObs)?2:-1)}}function QJe(t,A){if(t&1){let e=ae();I(0,"div",145,8),U("click",function(n){return n.stopPropagation()}),I(2,"span",146),v(3),h(),I(4,"button",147),U("click",function(n){L(e);let o=p(4);return G(o.removeInvocationIdFilter(n))}),I(5,"mat-icon"),v(6,"close"),h()()()}if(t&2){p();let e=Ei(17),i=p(3);H("matMenuTriggerFor",e)("matTooltip",i.invocationIdFilter()?"Invocation: "+(i.invocationDisplayMap().get(i.invocationIdFilter())||i.invocationIdFilter()):"Filter events by a specific invocation"),Q(2),H("title",i.invocationIdFilter()?i.invocationDisplayMap().get(i.invocationIdFilter())||i.invocationIdFilter():"Invocation"),Q(),ne(i.invocationIdFilter()?i.invocationDisplayMap().get(i.invocationIdFilter())||i.invocationIdFilter():"Invocation")}}function pJe(t,A){if(t&1){let e=ae();I(0,"div",145,9),U("click",function(n){return n.stopPropagation()}),I(2,"span",63),v(3,"Node"),h(),I(4,"button",147),U("click",function(n){L(e);let o=p(4);return G(o.removeNodePathFilter(n))}),I(5,"mat-icon"),v(6,"close"),h()()()}if(t&2){p();let e=Ei(21),i=p(3);H("matMenuTriggerFor",e)("matTooltip",i.nodePathFilter()?"Node: "+i.nodePathFilter():"Filter events generated by a specific node")}}function mJe(t,A){if(t&1){let e=ae();I(0,"div",148),U("click",function(n){return n.stopPropagation()}),I(1,"span",63),v(2,"Final"),h(),I(3,"button",147),U("click",function(n){return L(e),p(4).toggleHideIntermediateEvents(),G(n.stopPropagation())}),I(4,"mat-icon"),v(5,"close"),h()()()}}function fJe(t,A){if(t&1&&(I(0,"button",149,10),U("click",function(i){return i.stopPropagation()}),I(2,"mat-icon"),v(3,"add"),h(),I(4,"span"),v(5,"Filter"),h()()),t&2){p();let e=Ei(12);H("matMenuTriggerFor",e)}}function wJe(t,A){if(t&1){let e=ae();I(0,"button",150),U("click",function(n){L(e);let o=p(4);return G(o.clearAllFilters(n))}),I(1,"mat-icon"),v(2,"clear_all"),h(),I(3,"span"),v(4,"Clear"),h()()}}function yJe(t,A){if(t&1){let e=ae();I(0,"button",151),U("click",function(){L(e);let n=p(4);return G(n.addInvocationIdFilter())}),v(1,"Invocation"),h()}}function vJe(t,A){if(t&1){let e=ae();I(0,"button",152),U("click",function(){L(e);let n=p(4);return G(n.addNodePathFilter())}),v(1,"Node"),h()}}function DJe(t,A){if(t&1){let e=ae();I(0,"button",153),U("click",function(){L(e);let n=p(4);return G(n.toggleHideIntermediateEvents())}),v(1,"Final"),h()}}function bJe(t,A){if(t&1){let e=ae();I(0,"button",154),U("click",function(){let n=L(e).$implicit,o=p(4);return G(o.setInvocationIdFilter(n))}),I(1,"mat-icon",155),v(2,"check"),h(),v(3),h()}if(t&2){let e=A.$implicit,i=p(4);H("matTooltip",e),Q(),vt("visibility",i.invocationIdFilter()===e?"visible":"hidden"),Q(2),pA(" ",i.invocationDisplayMap().get(e)||e," ")}}function MJe(t,A){if(t&1){let e=ae();I(0,"button",156),U("click",function(){let n=L(e).$implicit,o=p(4);return G(o.setNodePathFilter(n))}),I(1,"mat-icon",155),v(2,"check"),h(),v(3),h()}if(t&2){let e=A.$implicit,i=p(4);Q(),vt("visibility",i.nodePathFilter()===e?"visible":"hidden"),Q(2),pA(" ",e," ")}}function SJe(t,A){if(t&1){let e=ae();I(0,"mat-button-toggle-group",130),U("change",function(n){L(e);let o=p(3);return G(o.onViewModeChange(n.value))}),I(1,"mat-button-toggle",131),v(2,"Events"),h(),I(3,"mat-button-toggle",132),v(4,"Traces"),h()(),I(5,"div",133),U("click",function(n){L(e);let o=p(3);return G(o.openAddFilterMenu(n))}),T(6,QJe,7,4,"div",134),T(7,pJe,7,2,"div",134),T(8,mJe,6,0,"div",135),T(9,fJe,6,1,"button",136),T(10,wJe,5,0,"button",137),h(),I(11,"mat-menu",138,5),T(13,yJe,2,0,"button",139),T(14,vJe,2,0,"button",140),T(15,DJe,2,0,"button",141),h(),I(16,"mat-menu",142,6),U("closed",function(){L(e);let n=p(3);return G(n.onInvocationMenuClosed())}),RA(18,bJe,4,4,"button",143,ri),h(),I(20,"mat-menu",142,7),U("closed",function(){L(e);let n=p(3);return G(n.onNodePathMenuClosed())}),RA(22,MJe,4,3,"button",144,ri),h()}if(t&2){let e=p(3);H("value",e.viewMode()),Q(6),O(e.invocationIdFilterActive()?6:-1),Q(),O(e.nodePathFilterActive()?7:-1),Q(),O(e.hideIntermediateEvents()?8:-1),Q(),O(!e.invocationIdFilterActive()||!e.nodePathFilterActive()||!e.hideIntermediateEvents()?9:-1),Q(),O(e.invocationIdFilterActive()||e.nodePathFilterActive()||e.hideIntermediateEvents()?10:-1),Q(3),O(e.invocationIdFilterActive()?-1:13),Q(),O(e.nodePathFilterActive()?-1:14),Q(),O(e.hideIntermediateEvents()?-1:15),Q(3),NA(e.invocationIdOptions()),Q(4),NA(e.nodePathOptions())}}function kJe(t,A){t&1&&(I(0,"span",123),v(1,"README.md"),h())}function _Je(t,A){if(t&1){let e=ae();I(0,"button",157),U("click",function(){L(e);let n=p(3);return G(n.isSideBySide.set(!n.isSideBySide()))}),I(1,"mat-icon",158),v(2),h(),I(3,"span",159),v(4,"Compare"),h()()}if(t&2){let e=p(3);vt("color",e.isSideBySide()?"var(--mat-sys-primary)":"var(--mat-sys-on-surface-variant)"),Q(2),ne(e.isSideBySide()?"check_circle":"radio_button_unchecked")}}function xJe(t,A){if(t&1){let e=ae();I(0,"button",156),U("click",function(n){L(e);let o=p(4);return o.showBranches.set(!o.showBranches()),G(n.stopPropagation())}),I(1,"mat-icon",162),v(2),h(),I(3,"span",163),v(4,"Branches"),h()()}if(t&2){let e=p(4);Q(),vt("color",e.showBranches()?"var(--mat-sys-primary)":"var(--mat-sys-on-surface-variant)"),Q(),pA(" ",e.showBranches()?"check_box":"check_box_outline_blank"," ")}}function RJe(t,A){if(t&1){let e=ae();I(0,"button",156),U("click",function(n){return L(e),p(4).toggleSse(),G(n.stopPropagation())}),I(1,"mat-icon",162),v(2),h(),I(3,"span",163),v(4,"Streaming"),h()()}if(t&2){let e=p(4);Q(),vt("color",e.useSse()?"var(--mat-sys-primary)":"var(--mat-sys-on-surface-variant)"),Q(),pA(" ",e.useSse()?"check_box":"check_box_outline_blank"," ")}}function NJe(t,A){if(t&1&&(I(0,"button",160)(1,"mat-icon"),v(2,"more_vert"),h()(),I(3,"mat-menu",161,11),T(5,xJe,5,3,"button",144),T(6,RJe,5,3,"button",144),h()),t&2){let e=Ei(4);p();let i=Ti(10),n=Ti(11),o=p(2);H("matMenuTriggerFor",e)("matTooltip",o.i18n.moreOptionsTooltip),Q(5),O(i?5:-1),Q(),O(n?6:-1)}}function FJe(t,A){if(t&1){let e=ae();I(0,"app-chat-panel",164),Dt(1,"async"),Fi("userInputChange",function(n){L(e);let o=p(3);return vi(o.userInput,n)||(o.userInput=n),G(n)}),U("toggleHideIntermediateEvents",function(){L(e);let n=p(3);return G(n.toggleHideIntermediateEvents())})("toggleSse",function(){L(e);let n=p(3);return G(n.toggleSse())})("clickEvent",function(n){L(e);let o=p(3);return G(o.clickEvent(n))})("handleKeydown",function(n){L(e);let o=p(3);return G(o.handleKeydown(n.event,n.message))})("cancelEditMessage",function(n){L(e);let o=p(3);return G(o.cancelEditMessage(n))})("saveEditMessage",function(n){L(e);let o=p(3);return G(o.saveEditMessage(n))})("openViewImageDialog",function(n){L(e);let o=p(3);return G(o.openViewImageDialog(n))})("openBase64InNewTab",function(n){L(e);let o=p(3);return G(o.openBase64InNewTab(n.data,n.mimeType))})("fileSelect",function(n){L(e);let o=p(3);return G(o.onFileSelect(n))})("removeFile",function(n){L(e);let o=p(3);return G(o.removeFile(n))})("removeStateUpdate",function(){L(e);let n=p(3);return G(n.removeStateUpdate())})("sendMessage",function(n){L(e);let o=p(3);return G(o.handleChatInput(n))})("stopMessage",function(){L(e);let n=p(3);return G(n.handleStopMessage())})("updateState",function(){L(e);let n=p(3);return G(n.updateState())})("toggleAudioRecording",function(n){L(e);let o=p(3);return G(o.toggleAudioRecording(n))})("toggleVideoRecording",function(){L(e);let n=p(3);return G(n.toggleVideoRecording())})("longRunningResponseComplete",function(n){L(e);let o=p(3);return G(o.sendMessage(n))})("manualScroll",function(){L(e);let n=p(3);return G(n.onManualScroll())}),h()}if(t&2){let e=p(3);H("appName",e.appName)("agentReadme",e.agentReadme),Ni("userInput",e.userInput),H("hideIntermediateEvents",e.hideIntermediateEvents())("uiEvents",e.filteredUiEvents())("showBranches",e.showBranches())("traceData",e.traceData)("isTokenStreamingEnabled",Ut(1,23,e.isTokenStreamingEnabledObs)??!1)("useSse",e.useSse())("isChatMode",!0)("selectedFiles",e.selectedFiles)("updatedSessionState",e.updatedSessionState())("agentGraphData",e.agentGraphData())("selectedMessageIndex",e.selectedMessageIndex)("isAudioRecording",e.isAudioRecording)("micVolume",e.micVolume())("isVideoRecording",e.isVideoRecording)("userId",e.userId)("sessionId",e.sessionId)("sessionName",e.sessionId)("invocationDisplayMap",e.invocationDisplayMap())("viewMode",e.viewMode())("shouldShowEvent",e.shouldShowEventFn)}}function LJe(t,A){if(t&1){let e=ae();I(0,"app-chat-panel",165),Dt(1,"async"),Fi("userInputChange",function(n){L(e);let o=p(3);return vi(o.userInput,n)||(o.userInput=n),G(n)})("userEditEvalCaseMessageChange",function(n){L(e);let o=p(3);return vi(o.userEditEvalCaseMessage,n)||(o.userEditEvalCaseMessage=n),G(n)}),U("clickEvent",function(n){L(e);let o=p(3);return G(o.clickEvent(n))})("handleKeydown",function(n){L(e);let o=p(3);return G(o.handleKeydown(n.event,n.message))})("cancelEditMessage",function(n){L(e);let o=p(3);return G(o.cancelEditMessage(n))})("saveEditMessage",function(n){L(e);let o=p(3);return G(o.saveEditMessage(n))})("openViewImageDialog",function(n){L(e);let o=p(3);return G(o.openViewImageDialog(n))})("openBase64InNewTab",function(n){L(e);let o=p(3);return G(o.openBase64InNewTab(n.data,n.mimeType))})("editEvalCaseMessage",function(n){L(e);let o=p(3);return G(o.editEvalCaseMessage(n))})("deleteEvalCaseMessage",function(n){L(e);let o=p(3);return G(o.deleteEvalCaseMessage(n.message,n.index))})("editFunctionArgs",function(n){L(e);let o=p(3);return G(o.editFunctionArgs(n))}),h()}if(t&2){let e=p(3);H("appName",e.appName)("agentReadme",e.agentReadme)("hideIntermediateEvents",e.hideIntermediateEvents())("uiEvents",e.filteredUiEvents())("showBranches",e.showBranches())("isChatMode",!1)("evalCase",e.evalCase)("isEvalEditMode",e.isEvalEditMode())("isEvalCaseEditing",e.isEvalCaseEditing())("isEditFunctionArgsEnabled",Ut(1,20,e.isEditFunctionArgsEnabledObs)??!1),Ni("userInput",e.userInput)("userEditEvalCaseMessage",e.userEditEvalCaseMessage),H("agentGraphData",e.agentGraphData())("selectedMessageIndex",e.selectedMessageIndex)("userId",e.userId)("sessionId",e.sessionId)("sessionName",e.sessionId)("invocationDisplayMap",e.invocationDisplayMap())("viewMode",e.viewMode())("shouldShowEvent",e.shouldShowEventFn)}}function GJe(t,A){if(t&1&&(I(0,"div",179),v(1),h()),t&2){p();let e=Ti(40);Q(),pA(" ",e)}}function KJe(t,A){if(t&1&&(I(0,"div",171)(1,"span",172),v(2),Dt(3,"formatMetricName"),h(),I(4,"div",173)(5,"span",174),v(6),Dt(7,"number"),h(),I(8,"span",175),v(9),Dt(10,"number"),h()(),I(11,"div",176)(12,"div",177),v(13),Dt(14,"formatMetricName"),h(),I(15,"div",178),v(16),h(),I(17,"div",48)(18,"div",50)(19,"span",51),v(20,"Actual:"),h(),I(21,"span",52),v(22),Dt(23,"number"),h()(),I(24,"div",50)(25,"span",51),v(26,"Threshold:"),h(),I(27,"span",52),v(28),Dt(29,"number"),h()(),I(30,"div",50)(31,"span",51),v(32,"Min:"),h(),I(33,"span",52),v(34),h()(),I(35,"div",50)(36,"span",51),v(37,"Max:"),h(),I(38,"span",52),v(39),h()()(),so(40),T(41,GJe,2,1,"div",179),h()()),t&2){let e=A.$implicit,i=p(6);vt("border",e.evalStatus==1?"1px solid #2e7d32":"1px solid var(--mat-sys-error)"),Q(2),ne(Ut(3,16,e.metricName)),Q(3),vt("color",e.evalStatus==1?"#2e7d32":"var(--mat-sys-error)"),Q(),pA(" ",e.score!=null?iC(7,18,e.score,"1.2-2"):"?"," "),Q(3),pA(" / ",iC(10,21,e.threshold,"1.2-2")," "),Q(4),ne(Ut(14,24,e.metricName)),Q(3),ne(e.metricName),Q(5),vt("color",e.evalStatus==1?"#2e7d32":"var(--mat-sys-error)"),Q(),ne(e.score!=null?iC(23,26,e.score,"1.2-2"):"?"),Q(6),ne(iC(29,29,e.threshold,"1.2-2")),Q(6),ne(i.getMetricMin(e.metricName)),Q(5),ne(i.getMetricMax(e.metricName)),Q();let n=lo(i.getMetricDescription(e.metricName));Q(),O(n?41:-1)}}function UJe(t,A){if(t&1&&(I(0,"div",169),RA(1,KJe,42,33,"div",170,DOe),h()),t&2){p();let e=Ti(0);Q(),NA(e.overallEvalMetricResults)}}function TJe(t,A){if(t&1&&(so(0),I(1,"div",166),T(2,UJe,3,0,"div",169),h()),t&2){let e=lo(p(4).evalCaseResult());Q(2),O(e.overallEvalMetricResults!=null&&e.overallEvalMetricResults.length?2:-1)}}function OJe(t,A){if(t&1){let e=ae();I(0,"div",167)(1,"div",180)(2,"div",181),v(3,"Expected"),h(),I(4,"app-chat-panel",182),U("manualScroll",function(){L(e);let n=p(4);return G(n.onManualScroll())}),h()(),I(5,"div",180)(6,"div",181),v(7,"Actual"),h(),I(8,"app-chat-panel",183),Dt(9,"async"),Dt(10,"async"),U("toggleHideIntermediateEvents",function(){L(e);let n=p(4);return G(n.toggleHideIntermediateEvents())})("toggleSse",function(){L(e);let n=p(4);return G(n.toggleSse())}),Fi("userInputChange",function(n){L(e);let o=p(4);return vi(o.userInput,n)||(o.userInput=n),G(n)})("userEditEvalCaseMessageChange",function(n){L(e);let o=p(4);return vi(o.userEditEvalCaseMessage,n)||(o.userEditEvalCaseMessage=n),G(n)}),U("clickEvent",function(n){L(e);let o=p(4);return G(o.clickEvent(n))})("handleKeydown",function(n){L(e);let o=p(4);return G(o.handleKeydown(n.event,n.message))})("cancelEditMessage",function(n){L(e);let o=p(4);return G(o.cancelEditMessage(n))})("saveEditMessage",function(n){L(e);let o=p(4);return G(o.saveEditMessage(n))})("openViewImageDialog",function(n){L(e);let o=p(4);return G(o.openViewImageDialog(n))})("openBase64InNewTab",function(n){L(e);let o=p(4);return G(o.openBase64InNewTab(n.data,n.mimeType))})("editEvalCaseMessage",function(n){L(e);let o=p(4);return G(o.editEvalCaseMessage(n))})("deleteEvalCaseMessage",function(n){L(e);let o=p(4);return G(o.deleteEvalCaseMessage(n.message,n.index))})("editFunctionArgs",function(n){L(e);let o=p(4);return G(o.editFunctionArgs(n))})("fileSelect",function(n){L(e);let o=p(4);return G(o.onFileSelect(n))})("removeFile",function(n){L(e);let o=p(4);return G(o.removeFile(n))})("removeStateUpdate",function(){L(e);let n=p(4);return G(n.removeStateUpdate())})("sendMessage",function(n){L(e);let o=p(4);return G(o.handleChatInput(n))})("updateState",function(){L(e);let n=p(4);return G(n.updateState())})("toggleAudioRecording",function(n){L(e);let o=p(4);return G(o.toggleAudioRecording(n))})("toggleVideoRecording",function(){L(e);let n=p(4);return G(n.toggleVideoRecording())})("longRunningResponseComplete",function(n){L(e);let o=p(4);return G(o.sendMessage(n))})("manualScroll",function(){L(e);let n=p(4);return G(n.onManualScroll())}),h()()()}if(t&2){let e=p(4);Q(4),H("appName",e.appName)("agentReadme",e.agentReadme)("hideIntermediateEvents",e.hideIntermediateEvents())("uiEvents",e.filteredExpectedUiEvents())("showBranches",e.showBranches())("isChatMode",!1)("evalCase",e.evalCase)("isEvalEditMode",!1)("isEvalCaseEditing",!1)("isEditFunctionArgsEnabled",!1)("userInput","")("selectedFiles",$g(56,fce))("updatedSessionState",null)("agentGraphData",e.agentGraphData())("selectedMessageIndex",-1)("isAudioRecording",!1)("micVolume",0)("isVideoRecording",!1)("userId",e.userId)("sessionId",e.sessionId)("sessionName",e.sessionId)("invocationDisplayMap",e.invocationDisplayMap())("viewMode",e.viewMode())("shouldShowEvent",e.shouldShowEventFn),Q(4),H("appName",e.appName)("agentReadme",e.agentReadme)("hideIntermediateEvents",e.hideIntermediateEvents())("uiEvents",e.filteredUiEvents())("showBranches",e.showBranches())("traceData",e.traceData)("isTokenStreamingEnabled",Ut(9,52,e.isTokenStreamingEnabledObs)??!1)("useSse",e.useSse())("isChatMode",!1)("evalCase",e.evalCase)("isEvalEditMode",e.isEvalEditMode())("isEvalCaseEditing",e.isEvalCaseEditing())("isEditFunctionArgsEnabled",Ut(10,54,e.isEditFunctionArgsEnabledObs)??!1),Ni("userInput",e.userInput)("userEditEvalCaseMessage",e.userEditEvalCaseMessage),H("selectedFiles",e.selectedFiles)("updatedSessionState",e.updatedSessionState())("agentGraphData",e.agentGraphData())("selectedMessageIndex",e.selectedMessageIndex)("isAudioRecording",e.isAudioRecording)("micVolume",e.micVolume())("isVideoRecording",e.isVideoRecording)("userId",e.userId)("sessionId",e.sessionId)("sessionName",e.sessionId)("invocationDisplayMap",e.invocationDisplayMap())("viewMode",e.viewMode())("shouldShowEvent",e.shouldShowEventFn)}}function JJe(t,A){if(t&1){let e=ae();I(0,"app-chat-panel",184),U("manualScroll",function(){L(e);let n=p(4);return G(n.onManualScroll())}),h()}if(t&2){let e=p(4);H("appName",e.appName)("agentReadme",e.agentReadme)("hideIntermediateEvents",e.hideIntermediateEvents())("uiEvents",e.filteredUiEvents())("showBranches",e.showBranches())("traceData",e.traceData)("isChatMode",!1)("evalCase",e.evalCase)("agentGraphData",e.agentGraphData())("selectedMessageIndex",e.selectedMessageIndex)("userId",e.userId)("sessionId",e.sessionId)("sessionName",e.sessionId)("invocationDisplayMap",e.invocationDisplayMap())("viewMode",e.viewMode())("shouldShowEvent",e.shouldShowEventFn)}}function zJe(t,A){if(t&1&&(T(0,TJe,3,2,"div",166),T(1,OJe,11,57,"div",167)(2,JJe,1,16,"app-chat-panel",168)),t&2){let e=p(3);O(e.evalCaseResult()?0:-1),Q(),O(e.isSideBySide()?1:2)}}function YJe(t,A){t&1&&(I(0,"div",129)(1,"mat-icon",185),v(2,"insert_drive_file"),h(),I(3,"h3",186),v(4,"File View"),h(),I(5,"p",187),v(6,"File content lost on refresh. Please re-upload the file to view or use it."),h()())}function HJe(t,A){if(t&1){let e=ae();I(0,"div",122),T(1,SJe,24,9)(2,kJe,2,0,"span",123),le(3,"div",124),I(4,"button",125),Dt(5,"async"),U("click",function(){L(e);let n=p(2);return G(n.refreshLatestSession())}),I(6,"mat-icon",18),Dt(7,"async"),v(8,"refresh"),h()(),T(9,_Je,5,3,"button",126),so(10)(11),Dt(12,"async"),T(13,NJe,7,4),h(),T(14,FJe,2,25,"app-chat-panel",127)(15,LJe,2,22,"app-chat-panel",128)(16,zJe,3,2)(17,YJe,7,0,"div",129)}if(t&2){let e,i=p(2);Q(),O(i.uiEvents().length===0&&i.agentReadme?2:1),Q(3),H("matTooltip",i.i18n.retrieveLatestSessionTooltip)("disabled",Ut(5,8,i.uiStateService.isSessionLoading())===!0),Q(2),_e("spinning",Ut(7,10,i.uiStateService.isSessionLoading())),Q(3),O(i.chatType()==="eval-result"?9:-1),Q();let n=lo(i.viewMode()!=="traces");Q();let o=lo(Ut(12,13,i.isTokenStreamingEnabledObs)&&i.canEditSession());Q(2),O(n||o?13:-1),Q(),O((e=i.chatType())==="session"?14:e==="eval-case"?15:e==="eval-result"?16:e==="file"?17:-1)}}function PJe(t,A){if(t&1&&(I(0,"div",38),tt(1),I(2,"mat-card",118),T(3,EJe,3,3),T(4,HJe,18,16),h()()),t&2){let e=p();Q(2),_e("no-side-panel",!e.showSidePanel),Q(),O(e.selectedAppControl.value?-1:3),Q(),O(e.appName!=""?4:-1)}}function jJe(t,A){if(t&1){let e=ae();I(0,"app-agent-structure-graph-dialog",188),U("close",function(){L(e);let n=p();return G(n.showAgentStructureOverlay=!1)}),h()}if(t&2){let e=p();H("appName",e.appName)("preloadedAppData",e.agentGraphData())("preloadedLightGraphSvg",e.agentStructureOverlayMode==="event"?e.eventGraphSvgLight:e.sessionGraphSvgLight)("preloadedDarkGraphSvg",e.agentStructureOverlayMode==="event"?e.eventGraphSvgDark:e.sessionGraphSvgDark)("startPath",e.agentStructureOverlayMode==="event"?e.selectedEventGraphPath:"")}}var VJe="root_agent",g7="q",qJe="hideSidePanel",WO="",XO="",mce="application/json+a2ui";function $O(t){for(t=t.replace(/-/g,"+").replace(/_/g,"/");t.length%4!==0;)t+="=";return t}var eJ=class t extends GI{nextPageLabel="Next Event";previousPageLabel="Previous Event";firstPageLabel="First Event";lastPageLabel="Last Event";getRangeLabel=(A,e,i)=>i===0?`Event 0 of ${i}`:(i=Math.max(i,0),`Event ${A*e+1} of ${i}`);static \u0275fac=(()=>{let A;return function(i){return(A||(A=Gi(t)))(i||t)}})();static \u0275prov=Ze({token:t,factory:t.\u0275fac})},ZJe="Restarting bidirectional streaming is not currently supported. Please refresh the page or start a new session.",C7=class t{i18n=w(Cre);sidePanelI18n=w(IE);_snackbarService=w(B0);activatedRoute=w(ll);agentService=w(gl);artifactService=w(eh);changeDetectorRef=w(xt);dialog=w(nr);document=w(Ii);downloadService=w(Ah);evalService=w(u0);eventService=w(A8);featureFlagService=w(Tr);graphService=w(th);localFileService=w(t8);location=w(a8);renderer=w(rn);router=w(ps);safeValuesService=w(ys);testsService=w(Rd);sessionService=w(Cl);streamChatService=w(n8);webSocketService=w(oh);audioRecordingService=w(ih);audioPlayingService=w(nh);stringToColorService=w(xd);traceService=w(Qc);uiStateService=w(mc);agentBuilderService=w(h0);themeService=w(pc,{optional:!0});logoComponent=w(ah,{optional:!0});activeSseSubscription;chatPanel=Ho(K2);canvasComponent=Ho.required(AE);sideDrawer=Ho.required("sideDrawer");sidePanel=Ho.required(BE);drawerSessionTab=Ho("drawerSessionTab");evalTab=Ho(Yg);appSearchInput=Ho("appSearchInput");canChat=DA(()=>this.chatType()==="session");isEvalCaseEditing=fe(!1);hasEvalCaseChanged=fe(!1);isEvalEditMode=fe(!1);isBuilderMode=fe(!1);chatType=fe("session");currentEvalCaseId=null;currentEvalTimestamp=null;videoElement;currentMessage="";uiEvents=fe([]);invocationDisplayMap=DA(()=>{let A=new Map,e=1,i="";for(let n of this.uiEvents()){if(n.role==="user")if(n.text)i=n.text;else if(n.event?.content?.parts?.length){let o=n.event.content.parts.find(a=>a.text);o&&o.text&&(i=o.text)}else i="User Message";if(n.event?.invocationId){let o=n.event.invocationId;if(!A.has(o)){let a=i||"User Message";a.length>50&&(a=a.substring(0,47)+"..."),A.set(o,`#${e} (${a})`),e++}}}return A});artifacts=[];userInput="";userEditEvalCaseMessage="";userId="user";appName="";sessionId="";sessionIdOfLoadedMessages="";evalCase=null;evalCaseResult=fe(null);metricsInfo=this.evalService.metricsInfo;updatedEvalCase=null;adkVersion=fe("");versionInfo=fe(null);evalSetId="";isAudioRecording=!1;micVolume=this.audioRecordingService.volumeLevel;isVideoRecording=!1;longRunningEvents=[];functionCallEventId="";redirectUri=Ur.getBaseUrlWithoutPath();isMobile=fe(window.innerWidth<=768);showSidePanel=window.localStorage.getItem("adk-side-panel-visible")!=="false";showBuilderAssistant=!0;showAppSelectorDrawer=!1;showSessionSelectorDrawer=!1;useSse=fe(window.localStorage.getItem("adk-use-sse")==="true");currentSessionState={};root_agent=VJe;updatedSessionState=fe(null);canEditSession=fe(!0);isViewOnlySession=fe(!1);isViewOnlyAppNameMismatch=fe(!1);isLoadedAppUnavailable=fe(!1);unavailableAppName=fe("");readonlySessionType=fe("");readonlySessionName=fe("");isSideBySide=fe(!1);showBranches=fe(!1);expectedUiEvents=fe([]);viewMode=fe(window.localStorage.getItem("chat-view-mode")||"events");invocationIdFilterActive=fe(!1);nodePathFilterActive=fe(!1);invocationIdFilter=fe("");nodePathFilter=fe("");invocationIdOptions=DA(()=>{let A=new Set;for(let e of this.uiEvents())e.event?.invocationId&&A.add(e.event.invocationId);return Array.from(A)});nodePathOptions=DA(()=>{let A=new Set;for(let e of this.uiEvents()){let i=e.bareNodePath;i&&A.add(i)}return Array.from(A)});invChipMenuTrigger=Ho("invChipMenuTrigger");nodeChipMenuTrigger=Ho("nodeChipMenuTrigger");addMenuTrigger=Ho("addMenuTrigger");openAddFilterMenu(A){A.stopPropagation(),this.addMenuTrigger()?.openMenu()}addInvocationIdFilter(){this.invocationIdFilterActive.set(!0),setTimeout(()=>{this.invChipMenuTrigger()?.openMenu()})}addNodePathFilter(){this.nodePathFilterActive.set(!0),setTimeout(()=>{this.nodeChipMenuTrigger()?.openMenu()})}removeInvocationIdFilter(A){A.stopPropagation(),this.invocationIdFilterActive.set(!1),this.invocationIdFilter.set("")}removeNodePathFilter(A){A.stopPropagation(),this.nodePathFilterActive.set(!1),this.nodePathFilter.set("")}setInvocationIdFilter(A){this.invocationIdFilter.set(A)}setNodePathFilter(A){this.nodePathFilter.set(A)}onInvocationMenuClosed(){this.invocationIdFilter()||this.invocationIdFilterActive.set(!1)}onNodePathMenuClosed(){this.nodePathFilter()||this.nodePathFilterActive.set(!1)}clearAllFilters(A){A.stopPropagation(),this.invocationIdFilterActive()&&(this.invocationIdFilterActive.set(!1),this.invocationIdFilter.set("")),this.nodePathFilterActive()&&(this.nodePathFilterActive.set(!1),this.nodePathFilter.set("")),this.hideIntermediateEvents()&&this.toggleHideIntermediateEvents()}shouldShowEvent(A){let e=this.invocationIdFilter();if(e&&!(A.event?.invocationId||"").includes(e))return!1;let i=this.nodePathFilter();if(i&&!(A.bareNodePath||"").includes(i))return!1;if(!this.hideIntermediateEvents()||A.role==="user")return!0;if(A.event?.content!==void 0){let n=A.event.content.parts||[];if(n.length>0&&n.every(a=>a.functionCall||a.functionResponse)){if(n.some(r=>{let s=r.functionCall?.id||r.functionResponse?.id;return s&&A.event?.longRunningToolIds?.includes(s)}))return!0}else return!0}if(A.event?.output!==void 0){let n=A.event?.nodeInfo,o=!1,a=n?.outputFor;if(Array.isArray(a)?o=a.some(r=>!r.includes("/")):typeof a=="string"?o=!a.includes("/"):n?.path&&(o=!n.path.includes("/")),o)return!0}return!1}shouldShowEventFn=this.shouldShowEvent.bind(this);getMetricTooltip(A,e,i){let n=this.metricsInfo().find(c=>c.metricName===A),o=n?.description||"",a=n?.metricValueInfo?.interval?.minValue??"?",r=n?.metricValueInfo?.interval?.maxValue??"?",s=e!=null?parseFloat(e).toFixed(2):"?",l=i!=null?parseFloat(i).toFixed(2):"?";return`${o?o+" | ":""}Actual: ${s} | Threshold: ${l} | Min: ${a} | Max: ${r}`}getMetricDescription(A){return this.metricsInfo().find(i=>i.metricName===A)?.description||""}getMetricMin(A){let i=this.metricsInfo().find(n=>n.metricName===A)?.metricValueInfo?.interval?.minValue;return i!=null?i.toFixed(2):"?"}getMetricMax(A){let i=this.metricsInfo().find(n=>n.metricName===A)?.metricValueInfo?.interval?.maxValue;return i!=null?i.toFixed(2):"?"}getVersionTooltip(){let A=this.versionInfo();return A?`Version: ${A.version} | Language: ${A.language} | Language Version: ${A.language_version}`:""}getMergedTooltip(){let A=this.sidePanelI18n.disclosureTooltip||"",e=this.getVersionTooltip();return e?`${A} | ${e}`:A}filteredUiEvents=DA(()=>this.uiEvents().filter(A=>this.shouldShowEvent(A)));filteredExpectedUiEvents=DA(()=>this.expectedUiEvents().filter(A=>this.shouldShowEvent(A)));onViewModeChange(A){this.viewMode.set(A);try{window.localStorage.setItem("chat-view-mode",A)}catch(e){}}originalSessionId="";hideIntermediateEvents=fe(window.localStorage.getItem("adk-hide-intermediate-events")==="true");toggleHideIntermediateEvents(){let A=!this.hideIntermediateEvents();this.hideIntermediateEvents.set(A),window.localStorage.setItem("adk-hide-intermediate-events",String(A))}sessionHasUsedBidi=new Set;eventData=new Map;traceData=[];renderedEventGraph;rawSvgString=null;agentGraphData=fe(null);sessionGraphSvgLight={};sessionGraphSvgDark={};sessionGraphDot={};dynamicGraphDot={};agentReadme="";graphsAvailable=fe(!0);get hasSubWorkflows(){return Object.keys(this.sessionGraphSvgLight).length>1}selectedEvent=void 0;selectedEventIndex=void 0;selectedMessageIndex=void 0;llmRequest=void 0;llmResponse=void 0;getMediaTypeFromMimetype=V8;selectedFiles=[];MediaType=wC;selectedAppControl=new tl("",{nonNullable:!0});appDrawerSearchControl=new tl("",{nonNullable:!0});openBase64InNewTab(A,e){this.safeValuesService.openBase64InNewTab(A,e)}isLoadingApps=fe(!1);loadingError=fe("");apps$=sA([]).pipe(yi(()=>{this.isLoadingApps.set(!0),this.selectedAppControl.disable()}),ki(()=>this.agentService.listApps().pipe(ca(A=>(this.loadingError.set(A.message),sA(void 0))))),No(1),yi(A=>{this.isLoadingApps.set(!1),this.selectedAppControl.enable(),A?.length==1&&this.router.navigate([],{relativeTo:this.activatedRoute,queryParams:{app:A[0]},queryParamsHandling:"merge"})}),Xs());filteredDrawerApps$=this.apps$.pipe(ki(A=>_r([sA(A),this.appDrawerSearchControl.valueChanges.pipe(Yn(""))])),xA(([A,e])=>{if(!A||!e||e.trim()==="")return A;let i=e.toLowerCase().trim();return A.filter(n=>n.toLowerCase().includes(i))}));importSessionEnabledObs=this.featureFlagService.isImportSessionEnabled();isEditFunctionArgsEnabledObs=this.featureFlagService.isEditFunctionArgsEnabled();isSessionUrlEnabledObs=this.featureFlagService.isSessionUrlEnabled();isApplicationSelectorEnabledObs=this.featureFlagService.isApplicationSelectorEnabled();isTokenStreamingEnabledObs=this.featureFlagService.isTokenStreamingEnabled();isExportSessionEnabledObs=this.featureFlagService.isExportSessionEnabled();isNewSessionButtonEnabledObs=this.featureFlagService.isNewSessionButtonEnabled();isEventFilteringEnabled=Ir(this.featureFlagService.isEventFilteringEnabled());isApplicationSelectorEnabled=Ir(this.featureFlagService.isApplicationSelectorEnabled());isDeleteSessionEnabledObs=this.featureFlagService.isDeleteSessionEnabled();isUserIdOnToolbarEnabledObs=this.featureFlagService.isUserIdOnToolbarEnabled();isDeveloperUiDisclaimerEnabledObs=this.featureFlagService.isDeveloperUiDisclaimerEnabled();disableBuilderSwitch=!1;autoSelectLatestEvent=!1;constructor(){Ln(()=>{this.themeService?.currentTheme()&&this.updateRenderedGraph()})}ngOnInit(){if(this.checkScreenSize(),this.isMobile()?this.showSidePanel=!1:this.showSidePanel=window.localStorage.getItem("adk-side-panel-visible")!=="false",this.syncSelectedAppFromUrl(),this.updateSelectedAppUrl(),this.hideSidePanelIfNeeded(),this.agentService.getVersion().subscribe(i=>{this.adkVersion.set(i.version||""),this.versionInfo.set(i)}),_r([this.agentService.getApp(),this.activatedRoute.queryParams]).pipe(pt(([i,n])=>!!i&&!!n[g7]),ao(),xA(([,i])=>i[g7])).subscribe(i=>{setTimeout(()=>{this.userInput=i})}),this.streamChatService.onStreamClose().subscribe(i=>{let n=`Please check server log for full details: +`+i;this.openSnackBar(n,"OK")}),this.webSocketService.getMessages().subscribe(i=>{if(i)try{let n=JSON.parse(i);(n.interrupted||n.inputTranscription!==void 0&&n.partial)&&this.audioPlayingService.stopAudio(),this.appendEventRow(n),this.changeDetectorRef.detectChanges()}catch(n){}}),new URL(window.location.href).searchParams.has("code")){let i=window.location.href;window.opener?.postMessage({authResponseUrl:i},window.origin),window.close()}this.agentService.getApp().subscribe(i=>{this.appName=i,this.evalService.metricsInfo.set([])}),this.traceService.selectedTraceRow$.subscribe(i=>{i&&(this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0,this.showSidePanel||(this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true"),this.sideDrawer()?.open()),this.changeDetectorRef.detectChanges())}),this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(ao()).subscribe(i=>{i&&(this.uiStateService.onNewMessagesLoaded().subscribe(n=>{this.populateMessages(n.items,!0,!n.isBackground),this.loadTraceData()}),this.uiStateService.onNewMessagesLoadingFailed().subscribe(n=>{this.openSnackBar(n.message,"OK")}))})}get sessionTab(){return this.drawerSessionTab()}switchToTraceView(){this.onViewModeChange("traces")}ngAfterViewInit(){this.showSidePanel&&this.sideDrawer()?.open(),this.isApplicationSelectorEnabled()||this.loadSessionByUrlOrReset()}selectApp(A){if(this.isLoadedAppUnavailable.set(!1),A!=this.appName){let e=!this.appName;this.agentService.setApp(A),e?this.loadSessionByUrlOrReset():this.createSessionAndReset()}}loadSessionByUrlOrReset(){this.isSessionUrlEnabledObs.subscribe(A=>{let e=this.activatedRoute.snapshot?.queryParams,i=e.session,n=e.userId,o=e.evalCase,a=e.evalResult,r=e.file;if(n&&(this.userId=n),o){this.chatType.set("eval-case");let s=o.split("/");if(s.length===2){let l=s[0],c=s[1];this.evalSetId=l,this.evalService.getEvalCase(this.appName,l,c).subscribe(C=>{C&&(this.updateWithSelectedEvalCase(C),setTimeout(()=>{let d=this.sidePanel();d.switchToEvalTab(),d.selectEvalCase(l,C)},600))})}return}if(a){this.chatType.set("eval-result");let s=a.split("/");if(console.log("loadSessionByUrlOrReset evalResultUrl parts:",s),s.length===3){let l=s[0],c=s[1],C=s[2];this.evalSetId=l;let d=`${this.appName}_${l}_${C}`;console.log("loadSessionByUrlOrReset runId:",d),this.evalService.getEvalResult(this.appName,d).subscribe(B=>{if(console.log("loadSessionByUrlOrReset runResult:",B),B){let E=B.evalCaseResults?.find(u=>u.evalId===c);if(console.log("loadSessionByUrlOrReset evalCaseResult:",E),E){let u=E.sessionId;this.evalService.getEvalCase(this.appName,l,c).subscribe(m=>{this.sessionService.getSession(this.userId,this.appName,u).subscribe(f=>{this.addEvalCaseResultToEvents(f,E);let D={id:f?.id??"",appName:f?.appName??"",userId:f?.userId??"",state:f?.state??[],events:f?.events??[],isEvalResult:!0,evalCase:m,evalCaseResult:E,timestamp:C};this.updateWithSelectedSession(D),setTimeout(()=>{let S=this.sidePanel();S.switchToEvalTab(),S.selectEvalResult(l,C,m)},600)})})}}})}return}if(r){this.chatType.set("file");return}if(!A||!i){this.chatType.set("session"),this.createSessionAndReset();return}i&&(this.chatType.set("session"),this.sessionId=i,this.loadSession(i,!0))})}loadSession(A,e=!1){this.uiStateService.setIsSessionLoading(!0),this.isViewOnlySession.set(!1),this.isViewOnlyAppNameMismatch.set(!1),_r([this.sessionService.getSession(this.userId,this.appName,A).pipe(ca(i=>(e&&(this.openSnackBar("Cannot find specified session. Creating a new one.",void 0,3e3),this.createSessionAndReset()),sA(null)))),this.featureFlagService.isInfinityMessageScrollingEnabled()]).pipe(ao()).subscribe(([i,n])=>{this.uiStateService.setIsSessionLoading(!1),i&&(n&&i.id&&this.uiStateService.lazyLoadMessages(i.id,{pageSize:100,pageToken:""}).pipe(ao()).subscribe(),this.updateWithSelectedSession(i))})}hideSidePanelIfNeeded(){this.activatedRoute.queryParams.pipe(pt(A=>A[qJe]==="true"),No(1)).subscribe(()=>{this.showSidePanel=!1,this.sideDrawer()?.close()})}createSessionAndReset(){this.resetToNewSession(),this.chatType.set("session"),this.isViewOnlySession.set(!1),this.isViewOnlyAppNameMismatch.set(!1),this.canEditSession.set(!0),this.chatPanel()?.canEditSession?.set(!0),this.eventData=new Map,this.uiEvents.set([]),this.artifacts=[],this.userInput="",this.longRunningEvents=[],this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0,this.traceService.resetTraceService()}resetToNewSession(){this.sessionId="",this.currentSessionState={},this.sessionTab?.refreshSession(),this.clearSessionUrl()}createSession(){this.uiStateService.setIsSessionListLoading(!0),this.sessionService.createSession(this.userId,this.appName).subscribe(A=>{this.currentSessionState=A.state,this.sessionId=A.id??"",this.sessionTab?.refreshSession(),this.sessionTab?.reloadSession(this.sessionId),this.isSessionUrlEnabledObs.subscribe(e=>{e&&this.updateSelectedSessionUrl()})},()=>{this.uiStateService.setIsSessionListLoading(!1)})}refreshLatestSession(){this.appName&&(this.uiStateService.setIsSessionLoading(!0),this.sessionService.listSessions(this.userId,this.appName).pipe(ao()).subscribe({next:A=>{if(A.items&&A.items.length>0){let i=A.items.sort((n,o)=>{let a=Number(n.lastUpdateTime||0);return Number(o.lastUpdateTime||0)-a})[0];i.id?this.loadSession(i.id):this.uiStateService.setIsSessionLoading(!1)}else this.uiStateService.setIsSessionLoading(!1),this.openSnackBar("No sessions found for this app.","OK");this.sessionTab?.refreshSession()},error:A=>{this.uiStateService.setIsSessionLoading(!1),this.openSnackBar("Failed to refresh sessions.","OK"),console.error("Error listing sessions:",A)}}))}handleChatInput(A){return nA(this,null,function*(){if(A.preventDefault(),!this.userInput.trim()&&this.selectedFiles.length<=0||A instanceof KeyboardEvent&&(A.isComposing||A.keyCode===229))return;let e={role:"user",parts:yield this.getUserMessageParts()};this.userInput="",this.selectedFiles=[];let i=this.router.parseUrl(this.location.path());i.queryParams[g7]&&(delete i.queryParams[g7],this.location.replaceState(i.toString())),yield this.sendMessage(e)})}ensureSessionActive(A){return nA(this,null,function*(){if(this.sessionId)return!0;try{let e="";A?.parts&&A.parts[0]?.text&&(e=A.parts[0].text,e.length>50&&(e=e.substring(0,47)+"..."));let i=e?{__session_metadata__:{displayName:e}}:void 0,n=yield xf(this.sessionService.createSession(this.userId,this.appName,i));return this.currentSessionState=n.state||i||{},this.sessionId=n.id??"",this.sessionTab?.refreshSession(),this.sessionTab?.reloadSession(this.sessionId),this.drawerSessionTab()?.refreshSession(),this.drawerSessionTab()?.reloadSession(this.sessionId),this.isSessionUrlEnabledObs.pipe(ao()).subscribe(o=>{o&&this.updateSelectedSessionUrl()}),!0}catch(e){return this.openSnackBar("Failed to create session","OK"),!1}})}sendMessage(A){return nA(this,null,function*(){if(!(yield this.ensureSessionActive(A)))return;let i=A.functionCallEventId;i&&delete A.functionCallEventId;let n=`user_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,o={id:n,author:A.role||"user",content:A},a=this.buildUiEventFromEvent(o);this.uiEvents.update(s=>[...s,a]),setTimeout(()=>this.changeDetectorRef.detectChanges(),0),this.eventData.set(n,o),this.eventData=new Map(this.eventData);let r={appName:this.appName,userId:this.userId,sessionId:this.sessionId,newMessage:A,streaming:this.useSse(),stateDelta:this.updatedSessionState()};i&&(r.functionCallEventId=i),this.submitAgentRunRequest(r),this.changeDetectorRef.detectChanges()})}submitAgentRunRequest(A){this.autoSelectLatestEvent=!0,this.activeSseSubscription=this.agentService.runSse(A).subscribe({next:e=>nA(this,null,function*(){if(e.error){this.openSnackBar(e.error,"OK");return}this.appendEventRow(e);let i=this.sidePanel().selectedIndex===0;this.autoSelectLatestEvent&&e.id&&i&&this.selectEvent(e.id,void 0,!1),e.actions&&this.processActionStateDelta(e),this.changeDetectorRef.detectChanges()}),error:e=>{this.activeSseSubscription=void 0,console.error("Send message error:",e);let i=String(e);i.includes("aborted")||i.includes("AbortError")||this.openSnackBar(e,"OK")},complete:()=>{this.activeSseSubscription=void 0,this.updatedSessionState()&&(this.currentSessionState=this.updatedSessionState(),this.updatedSessionState.set(null)),this.featureFlagService.isSessionReloadOnNewMessageEnabled().pipe(ao()).subscribe(e=>{e&&this.sessionTab?.reloadSession(this.sessionId)}),this.loadTraceData()}})}handleStopMessage(){this.activeSseSubscription&&(this.activeSseSubscription.unsubscribe(),this.activeSseSubscription=void 0)}appendEventRow(A,e=!1){if(A.inputTranscription!==void 0?A.author="user":A.outputTranscription!==void 0&&(A.author="bot"),A.errorMessage&&A.id&&!this.eventData.has(A.id)&&(this.eventData.set(A.id,A),this.eventData=new Map(this.eventData)),A.id&&!this.eventData.has(A.id)&&(this.eventData.set(A.id,A),this.eventData=new Map(this.eventData)),this.traceService.setEventData(this.eventData),A?.longRunningToolIds&&A.longRunningToolIds.length>0){let i=this.longRunningEvents.length;this.getAsyncFunctionsFromParts(A.longRunningToolIds,A.content.parts,A.invocationId),this.functionCallEventId=A.id;for(let n=i;n{this.sendOAuthResponse(o,s,this.redirectUri)}).catch(s=>{console.error("OAuth Error:",s)});break}}}if(A.partial)this.uiEvents.update(i=>{if(i.length>0){let o=i.length-1,a=i[o],r=!!(a.event?.inputTranscription||a.event?.outputTranscription),s=!!(A.inputTranscription||A.outputTranscription);if(a.event?.partial&&a.role===(A.author==="user"?"user":"bot")&&r===s){let l=this.mergePartialEvent(a,A),c=[...i];return c[o]=l,c}}let n=this.buildUiEventFromEvent(A,e);return e?[n,...i]:[...i,n]});else{let i=this.buildUiEventFromEvent(A,e);this.uiEvents.update(n=>{let o=n.findIndex(a=>a.event?.id===A.id&&A.id);if(o<0&&n.length>0){let a=A.inputTranscription!==void 0,r=A.outputTranscription!==void 0,s=A.content?.parts?.some(l=>l.thought);if(a||r||s)if(e)for(let l=0;lC.thought))){o=l;break}}}else for(let l=n.length-1;l>=0;l--){let c=n[l].event;if(c?.partial){if(a&&c.inputTranscription!==void 0){o=l;break}if(r&&c.outputTranscription!==void 0){o=l;break}if(s&&(n[l].thought||c.content?.parts?.some(C=>C.thought))){o=l;break}}}else{let l=e?0:n.length-1,c=n[l];if(c.event?.partial){let C=!!(c.event?.inputTranscription||c.event?.outputTranscription),d=!!(A.inputTranscription||A.outputTranscription);C===d&&(o=l)}}}if(o>=0){let a=n[o];(!i.functionResponses||i.functionResponses.length===0)&&(i.functionResponses=a.functionResponses),(!i.functionCalls||i.functionCalls.length===0)&&(i.functionCalls=a.functionCalls);let r=[...n];return r[o]=i,r}else return e?[i,...n]:[...n,i]})}if(A.actions?.artifactDelta){let i=this.uiEvents().find(n=>n.event?.id===A.id);if(i)for(let n in A.actions.artifactDelta)A.actions.artifactDelta.hasOwnProperty(n)&&this.renderArtifact(n,A.actions.artifactDelta[n],i)}}mergePartialEvent(A,e){let i=new Bp(Ye(Y({},A),{event:e,textParts:A.textParts?A.textParts.map(o=>Y({},o)):void 0})),n=e.content?.parts||[];if(this.isEventA2aResponse(e)&&(n=this.combineA2uiDataParts(n)),n=this.combineTextParts(n),n.forEach(o=>{if(o.text!==void 0&&o.text!==null){let a=o.thought?this.processThoughtText(o.text):o.text;i.text=(i.text||"")+a;let r=!!o.thought;this.addTextToParts(i,a,r)}else this.processPartIntoMessage(o,e,i)}),i.thought=i.textParts?.every(o=>o.thought)??!1,e.inputTranscription){let o=A.event?.inputTranscription?.text||"";i.event.inputTranscription={text:o+(e.inputTranscription.text||"")}}if(e.outputTranscription){let o=A.event?.outputTranscription?.text||"";i.event.outputTranscription={text:o+(e.outputTranscription.text||"")}}return i}getUserMessageParts(){return nA(this,null,function*(){let A=[];if(this.userInput.trim()&&A.push({text:`${this.userInput}`}),this.selectedFiles.length>0)for(let e of this.selectedFiles)A.push(yield this.localFileService.createMessagePartFromFile(e.file));return A})}processActionStateDelta(A){A.actions&&A.actions.stateDelta&&Object.keys(A.actions.stateDelta).length>0&&(this.currentSessionState=Y(Y({},this.currentSessionState||{}),A.actions.stateDelta))}combineTextParts(A){let e=[],i;for(let n of A)if(n.text){let o=!!n.thought;i&&i.text&&!!i.thought===o?i.text+=n.text:(i={text:n.text,thought:o},e.push(i))}else i=void 0,e.push(n);return e}isEventA2aResponse(A){return!!A?.customMetadata?.["a2a:response"]}isA2aDataPart(A){if(!A.inlineData||A.inlineData.mimeType!=="text/plain")return!1;let e=atob($O(A.inlineData.data));return e.startsWith(WO)&&e.endsWith(XO)}isA2uiDataPart(A){let e=this.extractA2aDataPartJson(A);return e&&e.kind==="data"&&e.metadata?.mimeType===mce}extractA2aDataPartJson(A){if(!this.isA2aDataPart(A))return null;let e=atob($O(A.inlineData.data)),i=e.substring(WO.length,e.length-XO.length),n;try{n=JSON.parse(i)}catch(o){return null}return n}combineA2uiDataParts(A){let e=[],i=[],n;for(let o of A)this.isA2uiDataPart(o)?(i.push(this.extractA2aDataPartJson(o)),n||(n={inlineData:{mimeType:"text/plain",data:o.inlineData.data}},e.push(n))):e.push(o);if(n?.inlineData){let a=WO+JSON.stringify({kind:"data",metadata:{mimeType:mce},data:i})+XO;n.inlineData.data=btoa(a)}return e}processA2uiPartIntoMessage(A){let e={};return A.a2ui.forEach(i=>{i.data.beginRendering?e.beginRendering=i.data:i.data.surfaceUpdate?e.surfaceUpdate=i.data:i.data.dataModelUpdate&&(e.dataModelUpdate=i.data)}),e}extractA2uiJsonFromText(A){if(!A.text)return;let e="",i="",n=A.text.indexOf(e);if(n===-1)return;let o=A.text.indexOf(i,n+e.length);if(o===-1)return;let a=A.text.substring(n+e.length,o).trim();try{let r=JSON.parse(a);Array.isArray(r)||(r=[r]);let s={};r.forEach(C=>{C.beginRendering?s.beginRendering=C:C.surfaceUpdate?s.surfaceUpdate=C:C.dataModelUpdate&&(s.dataModelUpdate=C)}),A.a2uiData=s;let l=A.text.substring(0,n),c=A.text.substring(o+i.length);if(A.text=(l+c).trim(),A.textParts){for(let C of A.textParts){let d=C.text.indexOf(e);if(d!==-1){let B=C.text.indexOf(i,d+e.length);if(B!==-1){let E=C.text.substring(0,d),u=C.text.substring(B+i.length);C.text=(E+u).trim()}}}A.textParts=A.textParts.filter(C=>C.text.trim().length>0)}}catch(r){console.warn("Failed to parse inline block from text:",r)}}updateRedirectUri(A,e){try{let i=new URL(A);return i.searchParams.set("redirect_uri",e),i.toString()}catch(i){return console.warn("Failed to update redirect URI: ",i),A}}formatBase64Data(A,e){let i=$O(A);return`data:${e};base64,${i}`}addTextToParts(A,e,i){if(!e)return;A.textParts||(A.textParts=[]);let n=A.textParts[A.textParts.length-1];n&&!!n.thought===i?n.text+=e:A.textParts.push({text:e,thought:i})}processPartIntoMessage(A,e,i){if(A)if(e&&(i.event=e,e.invocationIndex!==void 0&&(i.invocationIndex=e.invocationIndex),e.toolUseIndex!==void 0&&(i.toolUseIndex=e.toolUseIndex),e.finalResponsePartIndex!==void 0&&(i.finalResponsePartIndex=e.finalResponsePartIndex)),A.text){let n=A.thought?this.processThoughtText(A.text):A.text;i.text=(i.text||"")+n,this.addTextToParts(i,n,!!A.thought),i.thought=i.textParts?.every(o=>o.thought)??!1,e?.groundingMetadata&&e.groundingMetadata.searchEntryPoint&&e.groundingMetadata.searchEntryPoint.renderedContent&&(i.renderedContent=e.groundingMetadata.searchEntryPoint.renderedContent),e?.id&&(i.event=e)}else if(A.inlineData){let n=this.formatBase64Data(A.inlineData.data,A.inlineData.mimeType),o=V8(A.inlineData.mimeType);i.inlineData={displayName:A.inlineData.displayName,data:n,mimeType:A.inlineData.mimeType,mediaType:o},i.role==="user"&&e?.id&&(i.event=e)}else if(A.functionCall){i.functionCalls||(i.functionCalls=[]);let n=e?.longRunningToolIds?.includes(A.functionCall.id),o=A.functionCall;n&&(o=Ye(Y({},A.functionCall),{isLongRunning:!0,invocationId:e.invocationId,functionCallEventId:e.id,needsResponse:!0,responseStatus:A.functionCall.responseStatus||"pending",userResponse:A.functionCall.userResponse||""}));let a=i.functionCalls.findIndex(r=>r.id===A.functionCall.id);a>=0?i.functionCalls[a]=Y(Y({},i.functionCalls[a]),o):i.functionCalls.push(o),e?.id&&(i.event=e)}else A.functionResponse?(i.functionResponses||(i.functionResponses=[]),i.functionResponses.push(A.functionResponse),e?.id&&(i.event=e)):A.executableCode?i.executableCode=A.executableCode:A.codeExecutionResult?i.codeExecutionResult=A.codeExecutionResult:A.a2ui&&(i.a2uiData=this.processA2uiPartIntoMessage(A))}handleArtifactFetchFailure(A,e,i,n){this.openSnackBar("Failed to fetch artifact data","OK"),A.error={errorMessage:"Failed to fetch artifact data"+(n?": "+(n.message||n):"")},this.changeDetectorRef.detectChanges(),this.artifacts=this.artifacts.filter(o=>o.id!==e||o.versionId!==i)}renderArtifact(A,e,i){if(this.artifacts.some(a=>a.id===A&&a.versionId===e))return;i.inlineData={data:"",mimeType:"image/png"};let o={id:A,versionId:e,data:"",mimeType:"image/png",mediaType:"image"};this.artifacts=[...this.artifacts,o],this.artifactService.getArtifactVersion(this.userId,this.appName,this.sessionId,A,e).subscribe({next:a=>{let r=a.mimeType,s=a.data;if((!r||!s)&&a.inlineData&&(r=a.inlineData.mimeType,s=a.inlineData.data),!r&&!s&&a.text){r="text/plain";try{s=btoa(unescape(encodeURIComponent(a.text)))}catch(d){console.error("Failed to encode text to base64",d),this.handleArtifactFetchFailure(i,A,e,{message:"Failed to encode text data"});return}}if(!r||!s){this.handleArtifactFetchFailure(i,A,e,{message:"Invalid response data: missing mimeType or data or text"});return}let l=this.formatBase64Data(s,r),c=V8(r),C={name:this.createDefaultArtifactName(r),data:l,mimeType:r,mediaType:c};i.inlineData=C,this.changeDetectorRef.detectChanges(),this.artifacts=this.artifacts.map(d=>d.id===A&&d.versionId===e?{id:A,versionId:e,data:l,mimeType:r,mediaType:c}:d)},error:a=>{this.handleArtifactFetchFailure(i,A,e,a)}})}sendOAuthResponse(A,e,i){this.longRunningEvents.pop();var n=structuredClone(A.args.authConfig);n.exchangedAuthCredential.oauth2.authResponseUri=e,n.exchangedAuthCredential.oauth2.redirectUri=i;let o={role:"user",parts:[{functionResponse:{id:A.id,name:A.name,response:n}}],functionCallEventId:this.functionCallEventId};this.sendMessage(o)}clickEvent(A){let e=this.uiEvents()[A],i=e.event.id;if(i){if(this.selectedMessageIndex===A){this.sideDrawer()?.open(),this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true");return}if(e.role==="user"){this.selectedEvent=this.eventData.get(i),this.selectedEventIndex=this.getIndexOfKeyInMap(i),this.selectedMessageIndex=A,this.llmRequest=void 0,this.llmResponse=void 0,this.sideDrawer()?.open(),this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true"),this.updateRenderedGraph(),this.viewMode()!=="events"&&this.onViewModeChange("events");return}this.sideDrawer()?.open(),this.showSidePanel=!0,window.localStorage.setItem("adk-side-panel-visible","true"),this.selectEvent(i,A)}}handleJumpToInvocation(A){let e=this.uiEvents(),i=-1,n=-1;for(let o=0;o{this.chatPanel()?.scrollToSelectedMessage(i)},100))}ngOnDestroy(){this.handleStopMessage(),this.streamChatService.closeStream()}onAppSelection(A){this.isAudioRecording&&(this.stopAudioRecording(),this.isAudioRecording=!1),this.isVideoRecording&&(this.stopVideoRecording(),this.isVideoRecording=!1),this.evalTab()?.resetEvalResults(),this.traceData=[]}toggleAudioRecording(A){return nA(this,null,function*(){this.isAudioRecording?this.stopAudioRecording():yield this.startAudioRecording(A)})}startAudioRecording(A){return nA(this,null,function*(){if(this.sessionId&&this.sessionHasUsedBidi.has(this.sessionId)){this.openSnackBar(ZJe,"OK");return}(yield this.ensureSessionActive())&&(this.isAudioRecording=!0,this.streamChatService.startAudioChat({appName:this.appName,userId:this.userId,sessionId:this.sessionId,flags:A}),this.sessionHasUsedBidi.add(this.sessionId))})}stopAudioRecording(){this.audioPlayingService.stopAudio(),this.streamChatService.stopAudioChat(),this.isAudioRecording=!1,this.isVideoRecording&&this.stopVideoRecording()}toggleVideoRecording(){this.isVideoRecording?this.stopVideoRecording():this.startVideoRecording()}startVideoRecording(){let A=this.chatPanel()?.videoContainer;A&&(this.isVideoRecording=!0,this.streamChatService.startVideoStreaming(A))}stopVideoRecording(){let A=this.chatPanel()?.videoContainer;A&&(this.streamChatService.stopVideoStreaming(A),this.isVideoRecording=!1)}getAsyncFunctionsFromParts(A,e,i){for(let n of e)n.functionCall&&A.includes(n.functionCall.id)&&this.longRunningEvents.push({function:n.functionCall,invocationId:i})}openOAuthPopup(A){return new Promise((e,i)=>{if(!this.safeValuesService.windowOpen(window,A,"oauthPopup","width=600,height=700")){i("Popup blocked!");return}let o=a=>{if(a.origin!==window.location.origin)return;let{authResponseUrl:r}=a.data;r?(e(r),window.removeEventListener("message",o)):console.log("OAuth failed",a)};window.addEventListener("message",o)})}toggleSidePanel(){this.showSidePanel?(this.sideDrawer()?.close(),this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0):this.sideDrawer()?.open(),this.showSidePanel=!this.showSidePanel,window.localStorage.setItem("adk-side-panel-visible",this.showSidePanel.toString())}toggleAppSelectorDrawer(){this.showSessionSelectorDrawer=!1,this.showAppSelectorDrawer=!this.showAppSelectorDrawer,this.showAppSelectorDrawer&&this.appDrawerSearchControl.setValue("")}onSelectorDrawerOpened(){this.showAppSelectorDrawer&&this.appSearchInput()?.nativeElement.focus()}handleAppSearchKeydown(A){if(A.key==="ArrowDown"){A.preventDefault(),A.stopPropagation();let e=this.document.querySelector(".app-selector-list .app-selector-item");e&&e.focus()}}handleAppListKeydown(A){if(A.key!=="ArrowDown"&&A.key!=="ArrowUp")return;A.stopPropagation();let e=Array.from(this.document.querySelectorAll(".app-selector-list .app-selector-item")),i=e.indexOf(this.document.activeElement);if(i>-1){if(A.preventDefault(),A.key==="ArrowDown"){let n=i+1;n=0?e[n].focus():this.appSearchInput()?.nativeElement.focus()}}}onAppSelectorDrawerClosed(){this.showAppSelectorDrawer=!1}toggleSessionSelectorDrawer(){this.showAppSelectorDrawer=!1,this.showSessionSelectorDrawer=!this.showSessionSelectorDrawer}onSessionSelectorDrawerClosed(){this.showSessionSelectorDrawer=!1}onSelectorDrawerClosed(){this.showAppSelectorDrawer=!1,this.showSessionSelectorDrawer=!1}onSessionSelectedFromDrawer(A){this.showSessionSelectorDrawer=!1,this.loadSession(A)}onSessionReloadedFromDrawer(A){this.loadSession(A)}selectAppFromDrawer(A){this.selectedAppControl.setValue(A),this.showAppSelectorDrawer=!1}handleTabChange(A){this.canChat()||(this.resetEditEvalCaseVars(),this.handleReturnToSession(!0))}handleReturnToSession(A){this.sessionTab?.getSession(this.sessionId),this.evalTab()?.resetEvalCase(),this.chatType.set("session")}handleEvalNotInstalled(A){A&&this.openSnackBar(A,"OK")}resetEventsAndMessages({keepMessages:A}={}){A||(this.eventData.clear(),this.uiEvents.set([]),this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0),this.artifacts=[]}loadTraceData(){this.sessionId&&(this.uiStateService.setIsEventRequestResponseLoading(!0),this.eventService.getTrace(this.appName,this.sessionId).pipe(ao(),ca(A=>(console.error("[DEBUG] getTrace error:",A),sA([])))).subscribe(A=>{this.traceData=A,this.updateSystemInstructionFlags(),this.traceService.setEventData(this.eventData),this.traceService.setMessages(this.uiEvents()),this.selectedEvent&&this.populateLlmRequestResponse(),this.uiStateService.setIsEventRequestResponseLoading(!1),this.changeDetectorRef.detectChanges()}),this.changeDetectorRef.detectChanges())}updateSystemInstructionFlags(){if(!this.traceData||this.traceData.length===0||this.eventData.size===0)return;let A=n=>{let o=[];for(let a of n)o.push(a),a.children&&(o=o.concat(A(a.children)));return o},i=A(this.traceData).filter(n=>{let o=n.attrOperationName===$1,a=n.name==="call_llm";return(o||a)&&n.io?.inputs!==void 0}).sort((n,o)=>(n.start_time||0)-(o.start_time||0));for(let n of this.eventData.values())n.systemInstructionChanged=!1,n.precedingSystemInstruction=void 0,n.currentSystemInstruction=void 0;for(let n=1;n{r==="bot"&&i&&this.isA2uiDataPart(l)&&(l={a2ui:this.extractA2aDataPartJson(l).data}),this.processPartIntoMessage(l,A,s)}),this.extractA2uiJsonFromText(s),s}populateMessages(A,e=!1,i=!1){this.resetEventsAndMessages({keepMessages:i&&this.sessionIdOfLoadedMessages===this.sessionId}),A.forEach(n=>{this.appendEventRow(n,e)}),this.sessionIdOfLoadedMessages=this.sessionId}restorePendingLongRunningCalls(){let A=this.uiEvents(),e=new Set;this.uiEvents().forEach(i=>{i.functionResponses&&i.functionResponses.forEach(n=>{n.id&&e.add(n.id)})}),this.uiEvents().forEach(i=>{i.functionCalls&&i.functionCalls.forEach(n=>{let o=i.event.id?this.eventData.get(i.event.id):null;(n.isLongRunning||o?.longRunningToolIds?.includes(n.id))&&!e.has(n.id)&&(n.isLongRunning=!0,n.invocationId=o?.invocationId,n.functionCallEventId=i.event.id||"",n.needsResponse=!0,n.responseStatus="pending",n.userResponse=n.userResponse||"")})})}updateWithSelectedSession(A){if(!(!A||!A.id)){if(this.traceService.resetTraceService(),this.traceData=[],this.sessionId=A.id,this.currentSessionState=A.state||{},this.evalCase=null,this.resetEventsAndMessages(),A.isEvalResult){this.isViewOnlySession.set(!0),this.readonlySessionType.set("Eval Result");let e=A.evalCase?.evalId,i=A.timestamp;this.currentEvalCaseId=e,this.currentEvalTimestamp=i;let n=i;if(i){let o=Number(i);isNaN(o)||(n=new Date(o*1e3).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0}))}this.readonlySessionName.set(e&&n?`${n} > ${e}`:A.id),this.canEditSession.set(!1),this.chatPanel()?.canEditSession?.set(!1)}else this.isViewOnlySession.set(!1);A.evalCase?this.expectedUiEvents.set(this.buildUiEventsFromEvalCase(A.evalCase)):this.expectedUiEvents.set([]),A.evalCaseResult?this.evalCaseResult.set(A.evalCaseResult):this.evalCaseResult.set(null),A.isEvalResult?this.chatType.set("eval-result"):(this.chatType.set("session"),this.isSideBySide.set(!1)),this.isSessionUrlEnabledObs.subscribe(e=>{e&&this.updateSelectedSessionUrl()}),A.events&&A.state&&(A.events.forEach(e=>{this.appendEventRow(e,!1)}),this.restorePendingLongRunningCalls()),this.changeDetectorRef.detectChanges(),this.loadTraceData(),A.isEvalResult||this.sessionService.canEdit(this.userId,A).pipe(ao(),ca(()=>sA(!0))).subscribe(e=>{this.chatPanel()?.canEditSession?.set(e),this.canEditSession.set(e)}),this.featureFlagService.isInfinityMessageScrollingEnabled().pipe(ao()).subscribe(e=>{e||this.populateMessages(A.events||[]),this.loadTraceData()})}}formatToolUses(A){if(!A||!Array.isArray(A))return[];let e=[];for(let i of A)e.push({name:i.name,args:i.args});return e}addEvalCaseResultToEvents(A,e){let i=e.evalMetricResultPerInvocation,n=-1;if(i)for(let o=0;o{this.appendEventRow(i,!1)}),this.canEditSession.set(!1),this.chatPanel()?.canEditSession?.set(!1),this.isViewOnlySession.set(!0),this.changeDetectorRef.detectChanges()}buildUiEventsFromEvalCase(A){let e=this.uiEvents(),i=this.eventData,n=this.chatType(),o=this.isViewOnlySession(),a=this.readonlySessionType(),r=this.readonlySessionName();this.uiEvents.set([]),this.eventData=new Map,this.updateWithSelectedEvalCase(A);let s=this.uiEvents();return this.uiEvents.set(e),this.eventData=i,this.chatType.set(n),this.isViewOnlySession.set(o),this.readonlySessionType.set(a),this.readonlySessionName.set(r),s}updateWithSelectedEvalCase(A){if(this.evalCase=A,this.chatType.set("eval-case"),this.isViewOnlySession.set(!0),this.readonlySessionType.set("Eval Case"),this.readonlySessionName.set(A.evalId),this.chatType.set("eval-case"),this.isSessionUrlEnabledObs.subscribe(e=>{e&&this.updateSelectedSessionUrl()}),this.resetEventsAndMessages(),A.events&&A.events.length>0)for(let e of A.events)this.appendEventRow(e,!1);else{A.events=[];let e=0;for(let i of A.conversation){if(i.userContent?.parts&&A.events.push({author:"user",content:i.userContent,invocationIndex:e}),i.intermediateData?.invocationEvents){let n=0;for(let o of i.intermediateData.invocationEvents)o.invocationIndex=e,o.content?.parts?.[0]?.functionCall&&(o.toolUseIndex=n,n++),A.events.push(o)}else if(i.intermediateData?.toolUses){let n=0;for(let o of i.intermediateData.toolUses)A.events.push({author:"bot",content:{parts:[{functionCall:{name:o.name,args:o.args}}]},invocationIndex:e,toolUseIndex:n}),n++,A.events.push({author:"bot",content:{parts:[{functionResponse:{name:o.name}}]},invocationIndex:e})}i.finalResponse?.parts&&A.events.push({author:"bot",content:i.finalResponse,invocationIndex:e}),e++}for(let i of A.events)this.appendEventRow(i,!1)}}handleEditEvalCaseRequested(A){this.updateWithSelectedEvalCase(A),this.editEvalCase()}updateSelectedEvalSetId(A){this.evalSetId=A}editEvalCaseMessage(A){this.isEvalCaseEditing.set(!0),this.userEditEvalCaseMessage=A.text,A.isEditing=!0,setTimeout(()=>{let e=this.chatPanel()?.textarea?.nativeElement;if(!e)return;e.focus();let i=e.value.length;A.text.charAt(i-1)===` +`&&i--,e.setSelectionRange(i,i)},0)}editFunctionArgs(A){this.isEvalCaseEditing.set(!0),this.dialog.open(J1,{maxWidth:"90vw",maxHeight:"90vh",data:{dialogHeader:"Edit function arguments",functionName:A.functionCall.name,jsonContent:A.functionCall.args}}).afterClosed().subscribe(i=>{this.isEvalCaseEditing.set(!1),i&&(this.hasEvalCaseChanged.set(!0),A.functionCall.args=i,this.updatedEvalCase=structuredClone(this.evalCase),this.updatedEvalCase.conversation[A.invocationIndex].intermediateData.toolUses[A.toolUseIndex].args=i)})}saveEvalCase(){this.evalService.updateEvalCase(this.appName,this.evalSetId,this.updatedEvalCase.evalId,this.updatedEvalCase).subscribe(A=>{this.openSnackBar("Eval case updated","OK"),this.resetEditEvalCaseVars()})}cancelEditEvalCase(){this.resetEditEvalCaseVars(),this.updateWithSelectedEvalCase(this.evalCase)}resetEditEvalCaseVars(){this.hasEvalCaseChanged.set(!1),this.isEvalCaseEditing.set(!1),this.isEvalEditMode.set(!1),this.updatedEvalCase=null}cancelEditMessage(A){A.isEditing=!1,this.isEvalCaseEditing.set(!1)}saveEditMessage(A){this.hasEvalCaseChanged.set(!0),this.isEvalCaseEditing.set(!1),A.isEditing=!1,A.text=this.userEditEvalCaseMessage?this.userEditEvalCaseMessage:" ",this.updatedEvalCase=structuredClone(this.evalCase),this.updatedEvalCase.conversation[A.invocationIndex].finalResponse.parts[A.finalResponsePartIndex]={text:this.userEditEvalCaseMessage},this.userEditEvalCaseMessage=""}handleKeydown(A,e){A.key==="Enter"&&!A.shiftKey?(A.preventDefault(),this.saveEditMessage(e)):A.key==="Escape"&&this.cancelEditMessage(e)}deleteEvalCaseMessage(A,e){this.hasEvalCaseChanged.set(!0),this.uiEvents.update(i=>i.filter((n,o)=>o!==e)),this.updatedEvalCase=structuredClone(this.evalCase),this.updatedEvalCase.conversation[A.invocationIndex].finalResponse.parts.splice(A.finalResponsePartIndex,1)}editEvalCase(){this.isEvalEditMode.set(!0),this.isViewOnlySession.set(!1)}deleteEvalCase(){let A={title:"Confirm delete",message:`Are you sure you want to delete ${this.evalCase.evalId}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(zg,{width:"600px",data:A}).afterClosed().subscribe(i=>{i&&(this.evalTab()?.deleteEvalCase(this.evalCase.evalId),this.openSnackBar("Eval case deleted","OK"))})}onNewSessionClick(){this.resetToNewSession(),this.eventData.clear(),this.uiEvents.set([]),this.artifacts=[],this.traceData=[],this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0,this.traceService.resetTraceService(),this.chatPanel()?.focusInput(),this.evalTab()?.showEvalHistory&&this.evalTab()?.toggleEvalHistoryButton()}getToolbarSessionId(){if(!this.sessionId)return"NEW SESSION";if(this.isViewOnlySession())return this.sessionId;let A=this.currentSessionState?.__session_metadata__;return A?.displayName?A.displayName:this.sessionId}getCurrentSessionDisplayName(){return this.sessionId?this.currentSessionState?.__session_metadata__?.displayName||this.sessionId:"NEW SESSION"}copySessionId(){return nA(this,null,function*(){if(this.sessionId)try{yield navigator.clipboard.writeText(this.sessionId),this.openSnackBar(this.i18n.sessionIdCopiedMessage,"OK")}catch(A){this.openSnackBar(this.i18n.copySessionIdFailedMessage,"OK")}})}saveSessionName(A){if(!this.sessionId)return;let e={__session_metadata__:Ye(Y({},this.currentSessionState?.__session_metadata__||{}),{displayName:A})};this.currentSessionState=Y(Y({},this.currentSessionState),e),this.updatedSessionState.set(Y(Y({},this.updatedSessionState()),e)),this.sessionService.updateSession(this.userId,this.appName,this.sessionId,{stateDelta:e}).subscribe({next:()=>{this.sessionTab&&this.sessionTab.reloadSession(this.sessionId),this.drawerSessionTab()&&this.drawerSessionTab().reloadSession(this.sessionId)}})}get sessionDisplayNameDraft(){return this.currentSessionState?.__session_metadata__?.displayName||""}saveUserId(A){if(A=A.trim(),!A){this.openSnackBar(this.i18n.invalidUserIdMessage,"OK");return}this.userId=A,this.isSessionUrlEnabledObs.pipe(No(1)).subscribe(e=>{e&&this.updateSelectedSessionUrl()})}onFileSelect(A){let e=A.target;if(e.files)for(let i=0;i{A&&this.canvasComponent()?.loadFromYaml(A,this.appName)},error:A=>{console.error("Error loading agent configuration:",A),this.openSnackBar("Error loading agent configuration","OK")}})}exitBuilderMode(){let A=this.router.createUrlTree([],{queryParams:{mode:null},queryParamsHandling:"merge"}).toString();this.location.replaceState(A),this.isBuilderMode.set(!1),this.agentBuilderService.clear()}toggleBuilderAssistant(){this.showBuilderAssistant=!this.showBuilderAssistant}openAddItemDialog(){this.apps$.pipe(No(1)).subscribe(A=>{let e=this.dialog.open(z8,{width:"600px",data:{existingAppNames:A??[]}})})}eventGraphSvgLight={};eventGraphSvgDark={};selectedEventGraphPath="";showAgentStructureOverlay=!1;agentStructureOverlayMode="session";openAgentStructureGraphDialog(A="session"){this.agentStructureOverlayMode=A,this.showAgentStructureOverlay=!0}saveAgentBuilder(){this.canvasComponent()?.saveAgent(this.appName)}onEventTabDrillDown(A){this.updateRenderedGraph(void 0,A)}updateRenderedGraph(A,e){return nA(this,null,function*(){let i=this.sessionGraphSvgLight,n=this.sessionGraphSvgDark;if(Object.keys(i).length===0||Object.keys(n).length===0){this.renderedEventGraph=void 0;return}let o=A||this.selectedEvent?.nodeInfo?.path;!A&&this.selectedEvent?.author==="user"&&(o="__START__");let a=o;o&&o!=="__START__"&&(a=o.split("/").map(f=>f.split("@")[0]).join("/"));let r=e!==void 0?e:"",s="";if(a&&e===void 0){let f=a.split("/");if(s=f[f.length-1],f.length>=2&&f[f.length-1]==="call_llm"&&f[f.length-2]===this.selectedEvent?.author?(s=f[f.length-2],r=f.slice(1,-2).join("/")):r=f.slice(1,-1).join("/"),r&&!(r in i&&!(r in this.dynamicGraphDot))){let S=this.tryGenerateDynamicGraph(r);if(S&&this.dynamicGraphDot[r]!==S)try{let k=yield this.graphService.render(S);this.sessionGraphSvgLight[r]=k,this.sessionGraphSvgDark[r]=k,this.dynamicGraphDot[r]=S}catch(k){console.error("Failed to render dynamic graph",k)}}for(;r&&!(r in i);){let D=r.split("/");D.pop(),r=D.join("/")}}let l=this.sessionGraphDot[r]||this.sessionGraphDot[""]||"",c=l,C=!1;if(this.selectedEvent){let f=this.getV1HighlightPairs(this.selectedEvent);for(let[D,S]of f)if(D&&S&&S===this.selectedEvent.author){let k=new RegExp(`("${S}"|${S})\\s*->\\s*("${D}"|${D})`,"g");k.test(l)&&(c=l.replace(k,"$& [dir=back]"),C=!0)}}let d="",B="";if(C)try{d=yield this.graphService.render(c),B=d}catch(f){console.error("Failed to render modified graph",f),d=i[r]||i[""]||"",B=n[r]||n[""]||""}else d=i[r]||i[""]||"",B=n[r]||n[""]||"";if(this.selectedEvent){let f=this.getV1HighlightPairs(this.selectedEvent);f.length>0&&(d=this.applyV1Highlighting(d,f,!1),B=this.applyV1Highlighting(B,f,!0))}let E=[],u=[];if(this.selectedEventIndex!==void 0){let f=Array.from(this.eventData.values()),S=f[this.selectedEventIndex]?.invocationId;for(let k=0;kP.split("@")[0]).join("/")),F){let P=F.split("/"),j=P[P.length-1],X="";P.length>=2&&P[P.length-1]==="call_llm"&&P[P.length-2]===b.author?(j=P[P.length-2],X=P.slice(1,-2).join("/")):X=P.slice(1,-1).join("/");let Ae=r in this.dynamicGraphDot,W=x?x.split("/"):[],Ce=W.length>0?W[W.length-1]:"",we=Ae?Ce:j;X===r&&(k<=this.selectedEventIndex&&(E.length===0||E[E.length-1]!==we)&&E.push(we),(u.length===0||u[u.length-1]!==we)&&u.push(we))}}}if(this.selectedEvent){let f=this.getV1HighlightPairs(this.selectedEvent);for(let[D,S]of f)S&&S!==""&&(u.includes(S)||u.push(S),E.includes(S)||E.push(S)),D&&D!==""&&(u.includes(D)||u.push(D),E.includes(D)||E.push(D))}u.length>0&&d&&B&&(d=this.highlightExecutionPathInSvg(d,E,u,"light"),B=this.highlightExecutionPathInSvg(B,E,u,"dark")),this.selectedEventGraphPath=r,this.eventGraphSvgLight=Ye(Y({},i),{[r]:d}),this.eventGraphSvgDark=Ye(Y({},n),{[r]:B});let m=this.themeService?.currentTheme()==="dark"?B:d;this.rawSvgString=m,this.renderedEventGraph=this.safeValuesService.bypassSecurityTrustHtml(m),this.changeDetectorRef.detectChanges()})}tryGenerateDynamicGraph(A){let e=Array.from(this.eventData.values()),i=[];for(let l of e){let c=l.nodeInfo?.path;if(!c)continue;let C=c.split("/"),d=C.map(E=>E.split("@")[0]),B="";if(d.length>=2&&d[d.length-1]==="call_llm"&&d[d.length-2]===l.author?B=d.slice(1,-2).join("/"):B=d.slice(1,-1).join("/"),B===A){let E=C[C.length-1];i.push({run:E,branch:l.branch})}}if(i.length===0)return null;let n=new Set,o=new Map;for(let l of i)n.add(l.run),l.branch&&o.set(l.run,l.branch);if(n.size===0)return null;let a=`digraph G { +`;a+=` rankdir=TB; +`,a+=` node [shape=box, style=filled, fillcolor="#e6f4ea", color="#34a853"]; +`,a+=` "START" [shape=ellipse, style=filled, fillcolor="#fce8e6", color="#ea4335"]; +`;let r=new Map;for(let l of n){let c=l.split("@")[0];r.has(c)||r.set(c,[]),r.get(c).push(l)}for(let[l,c]of Array.from(r.entries())){a+=` subgraph cluster_${l} { +`,a+=` label="${l}"; +`,a+=` style=dashed; +`,a+=` color="#b0b0b0"; +`;for(let C of c){let d=C.split("@")[1]||"";a+=` "${C}" [label="@${d}"]; +`}a+=` } +`}let s=new Set;for(let l of n){let c=o.get(l);if(c){let C=c.split(".");if(C.length>=2){let d=C[C.length-2],B=C[C.length-1];s.add(`"${d}" -> "${B}"`)}else C.length===1&&s.add(`"START" -> "${C[0]}"`)}else s.add(`"START" -> "${l}"`)}for(let l of s)a+=` ${l}; +`;return a+="}",a}highlightExecutionPathInSvg(A,e,i,n="light"){if(!i||i.length===0)return A;let a=new DOMParser().parseFromString(A,"image/svg+xml"),r=new Map,s=new Map,l=a.querySelectorAll("g.edge");l.forEach(X=>{let W=X.querySelector("title")?.textContent?.trim()||"";if(W.includes("->")){let Ce=W.split("->"),we=Ce[0].trim().replace(/^"|"$/g,""),Be=Ce[1].trim().replace(/^"|"$/g,"");r.has(Be)||r.set(Be,[]),r.get(Be).push(we),s.has(we)||s.set(we,[]),s.get(we).push(Be)}});let c=new Map,C=a.querySelectorAll("g.node");C.forEach(X=>{let W=Array.from(X.querySelectorAll("text")).map(Ee=>Ee.textContent?.trim()||"").join(""),we=X.querySelector("title")?.textContent?.trim()||"",Be=we.replace(/^"|"$/g,"");c.set(W,Be),we&&c.set(we,Be)});let d=X=>{let Ae=X.toLowerCase();for(let[W,Ce]of c.entries()){let we=W.toLowerCase().replace(/\s+/g,"_");if(we===Ae||we===`"${Ae}"`)return Ce}for(let[W,Ce]of c.entries())if(W.toLowerCase().replace(/\s+/g,"_").includes(Ae))return Ce;return null},B=e.map(X=>d(X)).filter(X=>X),E=i.map(X=>d(X)).filter(X=>X),{visitedNodes:u,visitedEdges:m}=this.calculateVisitedPath(B,r),{visitedNodes:f}=this.calculateVisitedPath(E,r),D=this.calculateEdgeCounts(B,u,m,s),S=n==="dark"?"#34a853":"#a1c2a1",k=n==="dark"?"#ceead6":"#0d652d",b=n==="dark"?"#137333":"#a6d8b5",x=n==="dark"?"#34a853":"#a1c2a1",F=n==="dark"?"#0d652d":"#e6f4ea",P=null,j=B[B.length-1];if(B.length>0&&j){let X=[...B],Ae=Array.from(u).find(Ce=>Ce.toLowerCase()==="__start__");X.length>0&&X[0].toLowerCase()!=="__start__"&&Ae&&X.unshift(Ae);let W=X.lastIndexOf(j);if(W>0){let Ce=X[W-1],we=X[W],Be=[],Ee=new Set,Ne=s.get(Ce)||[];for(let de of Ne){let Ie=`${Ce}->${de}`;m.has(Ie)&&(Be.push({node:de,path:[Ie]}),Ee.add(de))}for(;Be.length>0;){let de=Be.shift();if(de.node===we){de.path.length>0&&(P=de.path[de.path.length-1]);break}let Ie=s.get(de.node)||[];for(let xe of Ie){let Xe=`${de.node}->${xe}`;m.has(Xe)&&!Ee.has(xe)&&(Ee.add(xe),Be.push({node:xe,path:[...de.path,Xe]}))}}}}return l.forEach(X=>{let W=X.querySelector("title")?.textContent?.trim()||"";if(W.includes("->")){let Ce=W.split("->"),we=Ce[0].trim().replace(/^"|"$/g,""),Be=Ce[1].trim().replace(/^"|"$/g,""),Ee=`${we}->${Be}`;if(m.has(Ee)){let Ne=Ee===P,de=X.querySelector("path");de&&(de.setAttribute("stroke",Ne?k:S),de.setAttribute("stroke-width",Ne?"4":"2"));let Ie=X.querySelector("polygon");Ie&&(Ie.setAttribute("fill",Ne?k:S),Ie.setAttribute("stroke",Ne?k:S));let xe=D.get(Ee)||0;if(xe>1){let Xe=X.querySelector("text");if(Xe)Xe.textContent=`${Xe.textContent} (${xe}x)`,Xe.setAttribute("fill",n==="dark"?"#ffffff":"#000000"),Xe.setAttribute("font-weight","bold");else if(de){let Pe=[...(de.getAttribute("d")||"").matchAll(/[-+]?[0-9]*\.?[0-9]+/g)];if(Pe.length>=4){let be=Pe.map(tA=>parseFloat(tA[0])),qe=(be[0]+be[be.length-2])/2,st=(be[1]+be[be.length-1])/2,it=a.createElementNS("http://www.w3.org/2000/svg","g"),He=a.createElementNS("http://www.w3.org/2000/svg","rect");He.setAttribute("x",(qe-14).toString()),He.setAttribute("y",(st-10).toString()),He.setAttribute("width","28"),He.setAttribute("height","20"),He.setAttribute("rx","4"),He.setAttribute("fill",n==="dark"?"#0d652d":"#e6f4ea"),He.setAttribute("stroke",S),He.setAttribute("stroke-width","1"),it.appendChild(He);let he=a.createElementNS("http://www.w3.org/2000/svg","text");he.setAttribute("x",qe.toString()),he.setAttribute("y",(st+4).toString()),he.setAttribute("text-anchor","middle"),he.setAttribute("fill",n==="dark"?"#ffffff":"#000000"),he.setAttribute("font-size","12px"),he.setAttribute("font-weight","bold"),he.textContent=xe.toString()+"x",it.appendChild(he),X.appendChild(it)}}}}}}),C.forEach(X=>{let Ae=X.querySelector("title"),W=Ae?.textContent?.trim().replace(/^"|"$/g,"")||"";if(u.has(W)){let Ce=X.querySelector("ellipse, polygon, path, rect");if(Ce){let we=W===j||W.toLowerCase()==="__end__";Ce.setAttribute("stroke",we?k:x),Ce.setAttribute("fill",we?b:F),Ce.setAttribute("stroke-width",we?"4":"2")}}if(!f.has(W)){X.classList.add("unvisited-node");let Ce=X.querySelector("ellipse, polygon, path, rect");if(Ce){Ce.setAttribute("stroke",n==="dark"?"#666666":"#b0b0b0"),Ce.setAttribute("fill",n==="dark"?"#424242":"#e0e0e0");let Ee=a.createElementNS("http://www.w3.org/2000/svg","title");Ee.textContent="Not run in this invocation",Ce.appendChild(Ee)}if(X.querySelectorAll("text").forEach(Ee=>{Ee.setAttribute("fill",n==="dark"?"#888888":"#757575");let Ne=a.createElementNS("http://www.w3.org/2000/svg","title");Ne.textContent="Not run in this invocation",Ee.appendChild(Ne)}),Ae)Ae.textContent="Not run in this invocation";else{let Ee=a.createElementNS("http://www.w3.org/2000/svg","title");Ee.textContent="Not run in this invocation",X.appendChild(Ee)}X.querySelectorAll("a").forEach(Ee=>{Ee.title="Not run in this invocation"})}}),new XMLSerializer().serializeToString(a)}getV1HighlightPairs(A){let e=[],i=A.content?.parts?.filter(o=>o.functionCall)||[],n=A.content?.parts?.filter(o=>o.functionResponse)||[];if(i.length>0)for(let o of i)o.functionCall?.name&&A.author&&e.push([A.author,o.functionCall.name]);else if(n.length>0)for(let o of n)o.functionResponse?.name&&A.author&&e.push([o.functionResponse.name,A.author]);else A.author&&e.push([A.author,""]);return e}applyV1Highlighting(A,e,i){let o=new DOMParser().parseFromString(A,"image/svg+xml"),a="#0F5223",r="#69CB87",s=i?"#cccccc":"#000000",l=new Set;for(let[d,B]of e)d&&l.add(d),B&&l.add(B);return o.querySelectorAll("g.node").forEach(d=>{let E=d.querySelector("title")?.textContent?.trim().replace(/^"|"$/g,"")||"",u=Array.from(d.querySelectorAll("text")),m=u.map(D=>D.textContent?.trim()||"").join("").toLowerCase().replace(/\s+/g,"_"),f=l.has(E);if(!f)for(let D of l){let S=D.toLowerCase().replace(/\s+/g,"_");if(m.includes(S)){f=!0;break}}if(f){let D=d.querySelector("ellipse, polygon, path, rect");D&&(D.setAttribute("fill",a),D.setAttribute("stroke",a)),u.forEach(S=>S.setAttribute("fill",s))}else u.forEach(D=>D.setAttribute("fill",s))}),o.querySelectorAll("g.edge").forEach(d=>{let E=d.querySelector("title")?.textContent?.trim()||"";if(E.includes("->")){let[u,m]=E.split("->"),f=u.trim().replace(/^"|"$/g,""),D=m.trim().replace(/^"|"$/g,"");for(let[S,k]of e)if(f===S&&D===k||f===k&&D===S){let b=d.querySelector("path");b&&b.setAttribute("stroke",r);let x=d.querySelector("polygon");x&&(x.setAttribute("stroke",r),x.setAttribute("fill",r));break}}}),new XMLSerializer().serializeToString(o)}calculateVisitedPath(A,e){let i=new Set(A),n=!0;for(;n;){n=!1;let a=Array.from(i);for(let r of a){let s=e.get(r)||[];if(s.length===1){let l=s[0];i.has(l)||(i.add(l),n=!0)}}}for(let[a,r]of e.entries())if(a.toLowerCase()==="__end__"){for(let s of r)if(i.has(s)){i.add(a);break}}let o=new Set;for(let a of i){if(a==="__start__")continue;let r=e.get(a)||[];if(r.length===1)o.add(`${r[0]}->${a}`);else if(r.length>1)for(let s of r)(i.has(s)||s==="__start__")&&o.add(`${s}->${a}`)}return{visitedNodes:i,visitedEdges:o}}calculateEdgeCounts(A,e,i,n){let o=new Map,a=[...A],r=Array.from(e).find(l=>l.toLowerCase()==="__start__"),s=Array.from(e).find(l=>l.toLowerCase()==="__end__");a.length>0&&a[0].toLowerCase()!=="__start__"&&r&&a.unshift(r),a.length>0&&s&&a[a.length-1].toLowerCase()!=="__end__"&&a.push(s);for(let l=0;l${m}`;i.has(f)&&(B.push({node:m,path:[f]}),E.add(m))}for(;B.length>0;){let m=B.shift();if(m.node===C){d=m.path;break}let f=n.get(m.node)||[];for(let D of f){let S=`${m.node}->${D}`;i.has(S)&&!E.has(D)&&(E.add(D),B.push({node:D,path:[...m.path,S]}))}}if(d)for(let m of d)o.set(m,(o.get(m)||0)+1)}return o}onManualScroll(){this.autoSelectLatestEvent=!1}selectEvent(A,e,i=!0){i&&(this.autoSelectLatestEvent=!1),this.traceService.selectedRow(void 0),this.selectedEvent=this.eventData.get(A),this.selectedEventIndex=this.getIndexOfKeyInMap(A),this.selectedMessageIndex=e!==void 0?e:this.uiEvents().findIndex(n=>n.event.id===A),i&&this.viewMode()!=="events"&&this.onViewModeChange("events"),this.chatPanel()?.scrollToSelectedMessage(this.selectedMessageIndex),this.populateLlmRequestResponse(),this.updateRenderedGraph()}populateLlmRequestResponse(){if(this.llmRequest=void 0,this.llmResponse=void 0,!this.selectedEvent)return;let A=this.findSpanIoForSelectedEvent();A!==void 0&&(this.llmRequest=A.inputs,this.llmResponse=A.outputs)}findSpanIoForSelectedEvent(){let A=this.selectedEvent?.id;if(A===void 0)return;let e=this.traceData?.find(n=>n.attrOperationName===$1&&n.attrEventId===A);return e?.io!==void 0?e.io:this.traceData?.find(n=>n.attrEventId===A&&n.name==="call_llm")?.io}deleteSession(A){let e={title:"Confirm delete",message:`Are you sure you want to delete this session ${this.sessionId}?`,confirmButtonText:"Delete",cancelButtonText:"Cancel"};this.dialog.open(zg,{width:"600px",data:e}).afterClosed().subscribe(n=>{n&&this.sessionService.deleteSession(this.userId,this.appName,A).subscribe(o=>{let a=this.sessionTab?.refreshSession(A);a?this.sessionTab?.getSession(a.id):window.location.reload()})})}syncSelectedAppFromUrl(){let A=this.activatedRoute.snapshot?.queryParams?.app;A&&(this.selectedAppControl.setValue(A,{emitEvent:!1}),this.selectApp(A)),_r([this.activatedRoute.queryParams,this.apps$]).subscribe(([e,i])=>{let n=e.app;if(i&&i.length&&n){if(!i.includes(n)){this.openSnackBar(`Agent '${n}' not found`,"OK");return}n!==this.appName&&(this.selectedAppControl.setValue(n,{emitEvent:!1}),this.selectApp(n)),this.agentService.getAppInfo(n).subscribe(o=>{setTimeout(()=>{this.agentGraphData.set(o),this.agentReadme=o?.readme||""})}),this.sessionGraphSvgLight={},this.sessionGraphSvgDark={},this.dynamicGraphDot={},setTimeout(()=>this.graphsAvailable.set(!0)),this.agentService.getAppGraphImage(n,!1).pipe(ca(o=>(console.error("Error fetching light mode graphs:",o),this.graphsAvailable.set(!1),sA(null)))).subscribe({next:o=>nA(this,null,function*(){try{if(o){console.log("Light mode graph response:",o),this.sessionGraphSvgLight={},this.dynamicGraphDot={};for(let[a,r]of Object.entries(o))if(r?.dotSrc){let l=a.split("/").map(C=>C.split("@")[0]).join("/").split("/"),c=l.length>1?l.slice(1).join("/"):l[0]==="root_agent"||l[0]===n?"":l[0];this.sessionGraphDot[c]=r.dotSrc,this.sessionGraphSvgLight[c]=yield this.graphService.render(r.dotSrc)}console.log("sessionGraphSvgLight after rendering:",Object.keys(this.sessionGraphSvgLight)),console.log("graphsAvailable:",this.graphsAvailable()),this.selectedEvent&&this.selectedEventIndex!==void 0&&this.updateRenderedGraph()}}catch(a){console.error("Error rendering light mode graphs:",a),setTimeout(()=>this.graphsAvailable.set(!1))}}),error:o=>{console.error("Error fetching light mode graphs:",o),setTimeout(()=>this.graphsAvailable.set(!1))}}),this.agentService.getAppGraphImage(n,!0).pipe(ca(o=>(console.error("Error fetching dark mode graphs:",o),sA(null)))).subscribe({next:o=>nA(this,null,function*(){try{if(o){this.sessionGraphSvgDark={};for(let[a,r]of Object.entries(o))if(r?.dotSrc){let l=a.split("/").map(C=>C.split("@")[0]).join("/").split("/"),c=l.length>1?l.slice(1).join("/"):l[0]==="root_agent"||l[0]===n?"":l[0];this.sessionGraphSvgDark[c]=yield this.graphService.render(r.dotSrc)}this.selectedEvent&&this.selectedEventIndex!==void 0&&this.updateRenderedGraph()}}catch(a){console.error("Error rendering dark mode graphs:",a),setTimeout(()=>this.graphsAvailable.set(!1))}}),error:o=>{console.error("Error fetching dark mode graphs:",o),setTimeout(()=>this.graphsAvailable.set(!1))}}),this.agentService.getAgentBuilder(n).pipe(ca(o=>(setTimeout(()=>this.disableBuilderSwitch=!0),this.agentBuilderService.setLoadedAgentData(void 0),sA("")))).subscribe(o=>{!o||o==""?(setTimeout(()=>this.disableBuilderSwitch=!0),this.agentBuilderService.setLoadedAgentData(void 0)):(setTimeout(()=>this.disableBuilderSwitch=!1),this.agentBuilderService.setLoadedAgentData(o))}),this.isBuilderMode.set(!1)}e.mode==="builder"&&this.enterBuilderMode()})}updateSelectedAppUrl(){this.selectedAppControl.valueChanges.pipe(jc(),pt(Boolean)).subscribe(A=>{this.selectApp(A);let e=this.activatedRoute.snapshot?.queryParams?.app;A!==e&&this.router.navigate([],{queryParams:{app:A,mode:null},queryParamsHandling:"merge"})})}updateSelectedSessionUrl(){let A=this.chatType(),e={userId:this.userId};switch(e.session=null,e.evalCase=null,e.evalResult=null,e.file=null,A){case"session":e.session=this.sessionId;break;case"eval-case":e.evalCase=`${this.evalSetId}/${this.evalCase?.evalId}`;break;case"eval-result":e.evalResult=`${this.evalSetId}/${this.currentEvalCaseId}/${this.currentEvalTimestamp}`;break;case"file":e.file=this.readonlySessionName();break}let i=this.router.createUrlTree([],{queryParams:e,queryParamsHandling:"merge"}).toString();this.location.replaceState(i)}clearSessionUrl(){this.isSessionUrlEnabledObs.pipe(ao()).subscribe(A=>{if(A){let e=this.router.createUrlTree([],{queryParams:{session:null},queryParamsHandling:"merge"}).toString();this.location.replaceState(e)}})}handlePageEvent(A){if(A.pageIndex>=0){let e=this.getKeyAtIndexInMap(A.pageIndex);e&&(this.selectEvent(e),setTimeout(()=>{let i=this.uiEvents().findIndex(n=>n.event.id===e);if(i!==-1){let n=this.chatPanel()?.scrollContainer?.nativeElement;if(!n)return;let o=n.querySelectorAll(".message-row-container");o&&o[i]&&o[i].scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"})}},0))}}closeSelectedEvent(){this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0}handleEscapeKey(A){A.key==="Escape"&&this.selectedEvent&&(A.preventDefault(),this.selectedEvent=void 0,this.selectedEventIndex=void 0,this.selectedMessageIndex=void 0)}getIndexOfKeyInMap(A){let e=0,i=(o,a)=>0,n=Array.from(this.eventData.keys()).sort(i);for(let o of n){if(o===A)return e;e++}}getKeyAtIndexInMap(A){let e=(n,o)=>0,i=Array.from(this.eventData.keys()).sort(e);if(A>=0&&A{console.log(A);let i=(A.state?.__session_metadata__||this.currentSessionState?.__session_metadata__)?.displayName,n=i&&i.trim()?`${i.trim().replace(/[/\\?%*:|"<>]/g,"_")}.json`:`session-${this.sessionId}.json`;this.downloadService.downloadObjectAsJson(A,n)})}updateState(){this.dialog.open(J1,{maxWidth:"90vw",maxHeight:"90vh",data:{dialogHeader:"Update state",jsonContent:this.currentSessionState}}).afterClosed().subscribe(e=>{e&&this.updatedSessionState.set(e)})}removeStateUpdate(){this.updatedSessionState.set(null)}importSession(){let A=document.createElement("input");A.type="file",A.accept="application/json",A.onchange=()=>{if(!A.files||A.files.length===0)return;let e=A.files[0],i=new FileReader;i.onload=n=>{if(n.target?.result)try{let o=JSON.parse(n.target.result);if(!o.events||o.events.length===0){this.openSnackBar("Invalid session file: no events found","OK");return}if(o.appName&&o.appName!==this.appName){let a={title:"App name mismatch",message:`The session file was exported from app "${o.appName}" but the current app is "${this.appName}". Do you want to import it anyway?`,confirmButtonText:"Import",cancelButtonText:"Cancel"};this.dialog.open(zg,{width:"600px",data:a}).afterClosed().subscribe(s=>{s&&this.doImportSession(o)})}else this.doImportSession(o)}catch(o){this.openSnackBar("Error parsing session file","OK")}},i.readAsText(e)},A.click()}viewSession(){let A=document.createElement("input");A.type="file",A.accept="application/json",A.onchange=()=>{if(!A.files||A.files.length===0)return;let e=A.files[0],i=new FileReader;i.onload=n=>{if(n.target?.result)try{let o=JSON.parse(n.target.result);if(!o.events||o.events.length===0){this.openSnackBar("Invalid session file: no events found","OK");return}this.doViewSession(o,e.name)}catch(o){this.openSnackBar("Error parsing session file","OK")}},i.readAsText(e)},A.click()}doViewSession(A,e){let i=A.appName;i&&i!==this.appName?this.apps$.pipe(No(1)).subscribe(n=>{n?.includes(i)?this.router.navigate([],{queryParams:{app:i},queryParamsHandling:"merge"}).then(()=>{this.openSnackBar(`Switched to app '${i}'`,"OK"),this.performViewSessionLoading(A,e)}):(this.isLoadedAppUnavailable.set(!0),this.unavailableAppName.set(i),this.performViewSessionLoading(A,e))}):this.performViewSessionLoading(A,e)}performViewSessionLoading(A,e){this.traceService.resetTraceService(),this.traceData=[],this.isViewOnlySession()||(this.originalSessionId=this.sessionId),this.readonlySessionType.set("File"),this.readonlySessionName.set(e),this.sessionId=`File: ${e}`,this.currentSessionState=A.state||{},this.evalCase=null,this.chatType.set("session"),this.updateSelectedSessionUrl(),this.showSessionSelectorDrawer=!1,this.resetEventsAndMessages(),this.isViewOnlySession.set(!0),this.canEditSession.set(!1),this.chatPanel()?.canEditSession?.set(!1);let i=!!(A.appName&&A.appName!==this.appName);this.isViewOnlyAppNameMismatch.set(i),A.events&&A.events.forEach(n=>{this.appendEventRow(n,!1)}),this.changeDetectorRef.detectChanges()}closeReadonlySession(){this.isViewOnlySession.set(!1),this.readonlySessionType.set(""),this.readonlySessionName.set(""),this.evalCase=null,this.router.navigate([],{queryParams:{session:null,evalCase:null,evalResult:null,file:null},queryParamsHandling:"merge"}),this.createSessionAndReset(),this.originalSessionId=""}doImportSession(A){let e=Date.now()/1e3,i=A.events.map(n=>Ye(Y({},n),{timestamp:e}));this.sessionService.importSession(this.userId,this.appName,i,A.state).subscribe(n=>{this.openSnackBar(`Session imported successfully (ID: ${n.id})`,"OK"),this.sessionTab?.refreshSession(),this.showSessionSelectorDrawer=!1,this.updateWithSelectedSession(n)})}onResize(){this.checkScreenSize()}checkScreenSize(){let A=window.innerWidth<=768;this.isMobile.set(A)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-chat"]],viewQuery:function(e,i){e&1&&Bs(i.chatPanel,K2,5)(i.canvasComponent,AE,5)(i.sideDrawer,EOe,5)(i.sidePanel,BE,5)(i.drawerSessionTab,QOe,5)(i.evalTab,Yg,5)(i.appSearchInput,pOe,5)(i.invChipMenuTrigger,mOe,5)(i.nodeChipMenuTrigger,fOe,5)(i.addMenuTrigger,wOe,5),e&2&&Rr(10)},hostBindings:function(e,i){e&1&&U("keydown",function(o){return i.handleEscapeKey(o)},Zc)("resize",function(){return i.onResize()},Zc)},features:[yt([{provide:GI,useClass:eJ}])],ngContentSelectors:vOe,decls:47,vars:17,consts:[["userMenu","matMenu"],["selectorDrawer",""],["sideDrawer",""],["appSearchInput",""],["drawerSessionTab",""],["addFilterMenu","matMenu"],["invocationMenu","matMenu"],["nodePathMenu","matMenu"],["invChipMenuTrigger","matMenuTrigger"],["nodeChipMenuTrigger","matMenuTrigger"],["addMenuTrigger","matMenuTrigger"],["moreOptionsMenu","matMenu"],[1,"app-toolbar"],[1,"toolbar-group","toolbar-agent-group"],["mat-icon-button","","aria-label","Toggle side panel",1,"toolbar-icon-button",3,"click"],[1,"toolbar-logo"],[1,"selector-group"],["matTooltip","Select an app",1,"selector-button",3,"click"],["fontSet","material-symbols-outlined"],[1,"selector-label"],["color","warn","matTooltip","The app for the loaded file is not available",2,"margin-left","4px"],["fontSet","material-symbols-outlined",1,"selector-caret"],[1,"toolbar-group","toolbar-session-group"],["mat-icon-button","","matTooltip","User","aria-label","User menu",1,"toolbar-icon-button","user-avatar-button",3,"matMenuTriggerFor"],["xPosition","before","panelClass","user-avatar-menu"],[1,"user-menu-panel",3,"click"],[1,"user-menu-header"],[1,"user-menu-label"],[2,"flex","1"],["mat-icon-button","","matTooltip","Reset to default user",1,"small-icon-button",3,"click"],[1,"user-menu-content"],["textClass","user-menu-id",3,"save","value","placeholder"],["autosize","",1,"drawer-container"],["mode","over","position","start",1,"selector-drawer",3,"closedStart","opened","autoFocus"],["autosize","",1,"side-panel-container"],["appResizableDrawer","",1,"side-drawer",3,"mode"],[3,"isApplicationSelectorEnabledObs","showSidePanel","appName","userId","sessionId","isViewOnlySession","isViewOnlyAppNameMismatch","traceData","eventData","currentSessionState","artifacts","selectedEvent","selectedEventIndex","renderedEventGraph","rawSvgString","selectedEventGraphPath","llmRequest","llmResponse","disableBuilderIcon","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab"],[1,"builder-mode-container"],[1,"chat-container"],[3,"appName","preloadedAppData","preloadedLightGraphSvg","preloadedDarkGraphSvg","startPath"],[4,"ngComponentOutlet"],["src","assets/ADK-512-color.svg","width","20px","height","20px","alt","ADK Logo"],[1,"logo-title-container"],[1,"logo-text-wrapper"],[1,"toolbar-logo-text","logo-wide"],[1,"toolbar-logo-text","logo-wide",2,"color","var(--mat-sys-outline)"],[1,"custom-tooltip"],[1,"tooltip-desc"],[1,"tooltip-grid"],[1,"toolbar-logo-text","logo-narrow"],[1,"tooltip-item"],[1,"tooltip-label"],[1,"tooltip-value"],[1,"selector-group-divider"],["matTooltipPosition","below",3,"matTooltip"],["mat-icon-button","",1,"toolbar-icon-button",3,"click","disabled"],["mat-icon-button","","matTooltipPosition","below",1,"toolbar-icon-button",3,"click","disabled"],[1,"readonly-chip"],[1,"toolbar-content"],[2,"display","flex","align-items","center"],[1,"toolbar-actions"],["mat-icon-button","",1,"toolbar-icon-button",3,"matTooltip"],["fontSet","material-symbols-outlined",2,"font-size","18px","width","18px","height","18px","line-height","18px"],[1,"chip-label"],["mat-icon-button","","aria-label","Close readonly view",1,"chip-close-button",3,"click"],[2,"font-size","16px","width","16px","height","16px"],["matTooltip","Select a session",1,"selector-button",3,"click"],["id","toolbar-new-session-button",1,"selector-button","new-session-button",3,"matTooltip"],["id","toolbar-new-session-button",1,"selector-button","new-session-button","icon-only",3,"matTooltip"],["id","toolbar-new-session-button",1,"selector-button","new-session-button",3,"click","matTooltip"],["id","toolbar-new-session-button",1,"selector-button","new-session-button","icon-only",3,"click","matTooltip"],[1,"chip-value"],["mat-button","",2,"height","30px",3,"click"],["mat-flat-button","",2,"height","30px",3,"click","disabled"],[1,"toolbar-session-text"],["mat-icon-button","",1,"toolbar-icon-button",3,"click","matTooltip"],[1,"selector-drawer-header"],[1,"selector-drawer-title"],["mat-icon-button","","matTooltip","Create new agent","matTooltipPosition","below","aria-label","Create new agent",1,"toolbar-icon-button",3,"click"],["mat-icon-button","","aria-label","Close app selector",1,"toolbar-icon-button",3,"click"],[1,"app-selector-search"],["subscriptSizing","dynamic","appearance","outline",1,"app-selector-search-field"],["matPrefix",""],["matInput","","placeholder","Search apps...",3,"keydown","formControl"],[1,"app-selector-list",3,"keydown"],[1,"app-selector-loading"],["mode","indeterminate","diameter","32"],[1,"app-selector-item",3,"selected"],[1,"app-selector-empty"],[1,"app-selector-item",3,"click"],["fontSet","material-symbols-outlined",1,"app-selector-item-icon"],[1,"app-selector-item-name"],[1,"app-selector-check"],[2,"display","flex","gap","4px"],["mat-button","",1,"toolbar-button",3,"matTooltip"],["mat-button","",1,"toolbar-button",3,"click","matTooltip"],["mat-icon-button","","aria-label","Close session selector",1,"toolbar-icon-button",3,"click"],[1,"session-selector-current-id"],[1,"session-selector-drawer-content"],[3,"sessionSelected","sessionReloaded","userId","appName","sessionId"],[1,"session-selector-current-id-label"],[1,"session-selector-current-id-row"],["textClass","session-selector-current-id-value",3,"save","value","displayValue","tooltip"],[1,"session-selector-current-real-id-row",2,"display","flex","align-items","center","gap","4px"],[1,"session-selector-current-real-id-value",3,"title"],["mat-icon-button","","matTooltip","Copy session ID","aria-label","Copy session ID",1,"session-selector-action-button",3,"click"],["mat-button","",3,"matTooltip"],["mat-button","","color","warn",3,"matTooltip"],["mat-button","",3,"click","matTooltip"],["mat-button","","color","warn",3,"click","matTooltip"],[3,"jumpToInvocation","closePanel","tabChange","sessionSelected","evalCaseSelected","editEvalCaseRequested","testSelected","evalSetIdSelected","returnToSession","evalNotInstalled","page","closeSelectedEvent","openImageDialog","openAddItemDialog","enterBuilderMode","showAgentStructureGraph","switchToEvent","switchToTraceView","drillDownNodePath","selectEventById","isApplicationSelectorEnabledObs","showSidePanel","appName","userId","sessionId","isViewOnlySession","isViewOnlyAppNameMismatch","traceData","eventData","currentSessionState","artifacts","selectedEvent","selectedEventIndex","renderedEventGraph","rawSvgString","selectedEventGraphPath","llmRequest","llmResponse","disableBuilderIcon","hasSubWorkflows","graphsAvailable","invocationDisplayMap","forceGraphTab"],[3,"exitBuilderMode","closePanel","appNameInput"],[1,"resize-handler"],[1,"builder-exit-button"],["mat-icon-button","","matTooltip","Accept",1,"builder-mode-action-button",3,"click"],["mat-icon-button","","matTooltip","Exit Builder Mode",1,"builder-mode-action-button",3,"click"],["mat-icon-button","","matTooltip","Builder Assistant",1,"builder-mode-action-button",3,"click"],[3,"toggleSidePanelRequest","builderAssistantCloseRequest","showSidePanel","showBuilderAssistant","appNameInput"],[1,"chat-card"],[1,"empty-state-container"],[1,"warning"],[1,"error"],[1,"chat-sub-toolbar"],[2,"font-weight","500","font-size","14px","color","var(--mat-sys-on-surface)"],[2,"flex-grow","1"],["mat-icon-button","",1,"toolbar-icon-button",3,"click","matTooltip","disabled"],["mat-button","","matTooltip","Compare with expected",2,"height","32px","line-height","32px","padding","0 12px","border-radius","16px","margin-left","8px","margin-right","8px",3,"color"],[3,"appName","agentReadme","userInput","hideIntermediateEvents","uiEvents","showBranches","traceData","isTokenStreamingEnabled","useSse","isChatMode","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","userEditEvalCaseMessage","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[1,"file-view-container",2,"padding","20px","display","flex","flex-direction","column","align-items","center","justify-content","center","height","100%"],["hideSingleSelectionIndicator","",3,"change","value"],["value","events"],["value","traces"],[1,"filter-bar-container",3,"click"],[1,"filter-chip",3,"matMenuTriggerFor","matTooltip"],["matTooltip","Hide intermediate events to only show final results",1,"filter-chip"],["type","button","matTooltip","Add a filter",1,"add-filter-btn",3,"matMenuTriggerFor"],["type","button","matTooltip","Clear all filters",1,"add-filter-btn"],[1,"filter-panel"],["mat-menu-item","","matTooltip","Filter events by a specific invocation","matTooltipPosition","right"],["mat-menu-item","","matTooltip","Filter events generated by a specific node","matTooltipPosition","right"],["mat-menu-item","","matTooltip","Hide intermediate events to only show final results","matTooltipPosition","right"],[1,"filter-panel",3,"closed"],["mat-menu-item","","matTooltipPosition","right",3,"matTooltip"],["mat-menu-item",""],[1,"filter-chip",3,"click","matMenuTriggerFor","matTooltip"],[1,"chip-label",3,"title"],[1,"chip-remove",3,"click"],["matTooltip","Hide intermediate events to only show final results",1,"filter-chip",3,"click"],["type","button","matTooltip","Add a filter",1,"add-filter-btn",3,"click","matMenuTriggerFor"],["type","button","matTooltip","Clear all filters",1,"add-filter-btn",3,"click"],["mat-menu-item","","matTooltip","Filter events by a specific invocation","matTooltipPosition","right",3,"click"],["mat-menu-item","","matTooltip","Filter events generated by a specific node","matTooltipPosition","right",3,"click"],["mat-menu-item","","matTooltip","Hide intermediate events to only show final results","matTooltipPosition","right",3,"click"],["mat-menu-item","","matTooltipPosition","right",3,"click","matTooltip"],[2,"font-size","16px","width","16px","height","16px","margin-right","8px","color","var(--mat-sys-primary)"],["mat-menu-item","",3,"click"],["mat-button","","matTooltip","Compare with expected",2,"height","32px","line-height","32px","padding","0 12px","border-radius","16px","margin-left","8px","margin-right","8px",3,"click"],[2,"font-size","20px","width","20px","height","20px","line-height","20px","margin-right","4px","vertical-align","middle"],[2,"font-size","13px","font-weight","500","vertical-align","middle"],["mat-icon-button","","aria-label","More options",1,"toolbar-icon-button",3,"matMenuTriggerFor","matTooltip"],["xPosition","before"],[2,"font-size","20px","width","20px","height","20px","line-height","20px","margin-right","8px","vertical-align","middle"],[2,"vertical-align","middle"],[3,"userInputChange","toggleHideIntermediateEvents","toggleSse","clickEvent","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","fileSelect","removeFile","removeStateUpdate","sendMessage","stopMessage","updateState","toggleAudioRecording","toggleVideoRecording","longRunningResponseComplete","manualScroll","appName","agentReadme","userInput","hideIntermediateEvents","uiEvents","showBranches","traceData","isTokenStreamingEnabled","useSse","isChatMode","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"userInputChange","userEditEvalCaseMessageChange","clickEvent","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","userEditEvalCaseMessage","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[1,"eval-result-summary",2,"margin","0","padding","8px 24px","background","var(--mat-sys-surface-container)","border-bottom","1px solid var(--mat-sys-outline-variant)","display","flex","align-items","center"],[1,"side-by-side-layout"],[3,"appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","traceData","isChatMode","evalCase","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[2,"display","flex","gap","12px","align-items","center","flex-wrap","wrap"],[1,"metric-block",2,"position","relative","display","flex","flex-direction","column","gap","2px","background","var(--mat-sys-surface-container-high)","padding","6px 12px","border-radius","6px","flex-shrink","0","cursor","pointer",3,"border"],[1,"metric-block",2,"position","relative","display","flex","flex-direction","column","gap","2px","background","var(--mat-sys-surface-container-high)","padding","6px 12px","border-radius","6px","flex-shrink","0","cursor","pointer"],[2,"color","var(--mat-sys-on-surface-variant)","font-size","11px","font-weight","500"],[2,"display","flex","align-items","baseline","gap","4px"],[2,"font-size","16px","font-weight","600"],[2,"color","var(--mat-sys-on-surface-variant)","font-size","14px","font-weight","500"],[1,"metric-tooltip"],[1,"tooltip-title"],[1,"tooltip-subtitle",2,"font-size","10px","color","var(--mat-sys-on-surface-variant)","margin-bottom","4px"],[1,"tooltip-desc",2,"margin-top","8px","border-top","1px solid var(--mat-sys-outline-variant)","padding-top","6px","margin-bottom","0"],[1,"side-panel-half"],[1,"panel-header"],[3,"manualScroll","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"toggleHideIntermediateEvents","toggleSse","userInputChange","userEditEvalCaseMessageChange","clickEvent","handleKeydown","cancelEditMessage","saveEditMessage","openViewImageDialog","openBase64InNewTab","editEvalCaseMessage","deleteEvalCaseMessage","editFunctionArgs","fileSelect","removeFile","removeStateUpdate","sendMessage","updateState","toggleAudioRecording","toggleVideoRecording","longRunningResponseComplete","manualScroll","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","traceData","isTokenStreamingEnabled","useSse","isChatMode","evalCase","isEvalEditMode","isEvalCaseEditing","isEditFunctionArgsEnabled","userInput","userEditEvalCaseMessage","selectedFiles","updatedSessionState","agentGraphData","selectedMessageIndex","isAudioRecording","micVolume","isVideoRecording","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[3,"manualScroll","appName","agentReadme","hideIntermediateEvents","uiEvents","showBranches","traceData","isChatMode","evalCase","agentGraphData","selectedMessageIndex","userId","sessionId","sessionName","invocationDisplayMap","viewMode","shouldShowEvent"],[2,"font-size","48px","width","48px","height","48px","color","var(--mat-sys-on-surface-variant)"],[2,"margin-top","16px"],[2,"color","var(--mat-sys-on-surface-variant)"],[3,"close","appName","preloadedAppData","preloadedLightGraphSvg","preloadedDarkGraphSvg","startPath"]],template:function(e,i){if(e&1&&(Yt(yOe),I(0,"mat-toolbar",12)(1,"div",13)(2,"button",14),U("click",function(){return i.toggleSidePanel()}),I(3,"mat-icon"),v(4,"menu"),h()(),I(5,"div",15),T(6,MOe,1,1,"ng-container")(7,_Oe,12,3),h(),I(8,"div",16)(9,"button",17),U("click",function(){return i.toggleAppSelectorDrawer()}),I(10,"mat-icon",18),v(11,"robot_2"),h(),I(12,"span",19),v(13),h(),T(14,xOe,2,0,"mat-icon",20),I(15,"mat-icon",21),v(16,"arrow_drop_down"),h()(),T(17,NOe,6,3),h()(),T(18,WOe,10,5,"div",22),I(19,"button",23)(20,"mat-icon"),v(21,"account_circle"),h()(),I(22,"mat-menu",24,0)(24,"div",25),U("click",function(o){return o.stopPropagation()}),I(25,"div",26)(26,"span",27),v(27,"User ID"),h(),le(28,"span",28),I(29,"button",29),U("click",function(){return i.saveUserId("user")}),I(30,"mat-icon"),v(31,"restart_alt"),h()()(),I(32,"div",30)(33,"app-inline-edit",31),U("save",function(o){return i.saveUserId(o)}),h()()()()(),I(34,"mat-drawer-container",32)(35,"mat-drawer",33,1),U("closedStart",function(){return i.onSelectorDrawerClosed()})("opened",function(){return i.onSelectorDrawerOpened()}),T(37,iJe,20,4)(38,sJe,18,8),h(),I(39,"mat-drawer-container",34)(40,"mat-drawer",35,2),T(42,lJe,1,23,"app-side-panel",36)(43,cJe,2,1),h(),T(44,gJe,12,5,"div",37)(45,PJe,5,4,"div",38),h()(),T(46,jJe,1,5,"app-agent-structure-graph-dialog",39)),e&2){let n=Ei(23);Q(6),O(i.logoComponent?6:7),Q(7),ne(i.isLoadedAppUnavailable()?i.unavailableAppName():i.appName||"Select an app"),Q(),O(i.isLoadedAppUnavailable()?14:-1),Q(3),O(i.isBuilderMode()?-1:17),Q(),O(i.appName?18:-1),Q(),H("matMenuTriggerFor",n),Q(14),H("value",i.userId)("placeholder",i.i18n.userIdInputPlaceholder),Q(2),_e("match-side-panel-width",i.showSidePanel),H("opened",i.showAppSelectorDrawer||i.showSessionSelectorDrawer)("autoFocus",!1),Q(2),O(i.showAppSelectorDrawer?37:i.showSessionSelectorDrawer?38:-1),Q(3),H("mode",i.isMobile()?"over":"side"),Q(2),O(i.isBuilderMode()?43:42),Q(2),O(i.isBuilderMode()?44:45),Q(2),O(i.showAgentStructureOverlay?46:-1)}},dependencies:[bS,cS,N6,ln,DS,r8,wn,Kn,Un,Ed,sI,Vt,xi,Di,kd,fs,zs,uc,S6,dV,A0,$o,Fa,ws,K2,H8,BE,AE,i5,lD,ID,hs,cB,T2],styles:['.expand-side-drawer[_ngcontent-%COMP%]{position:relative;top:4%;left:1%}.chat-container[_ngcontent-%COMP%]{width:100%;height:100%;max-width:100%;margin:auto;display:flex;flex-direction:column;flex:1}.chat-container.side-by-side[_ngcontent-%COMP%]{max-width:100%}.side-by-side-layout[_ngcontent-%COMP%]{display:flex;flex-direction:row;width:100%;height:100%;flex:1;overflow:hidden;gap:16px;padding:16px;box-sizing:border-box}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;height:100%;min-width:0;background-color:var(--mat-sys-surface-container-low);border-radius:8px;overflow:hidden}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%] .panel-header[_ngcontent-%COMP%]{padding:6px 16px;font-size:14px;font-weight:600;color:var(--mat-sys-on-surface);border-bottom:1px solid var(--mat-sys-outline-variant)}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%] app-chat-panel[_ngcontent-%COMP%]{flex:1;overflow:hidden;display:flex;flex-direction:column}.event-container[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface)}.chat-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow:hidden;flex:1;min-height:12%;min-width:300px;box-shadow:none;border-radius:12px 0 0}.chat-card[_ngcontent-%COMP%] app-chat-panel[_ngcontent-%COMP%]{flex:1;min-height:0}.chat-card.no-side-panel[_ngcontent-%COMP%]{border-radius:0}.loading-bar[_ngcontent-%COMP%]{width:100px;margin:15px}.chat-messages[_ngcontent-%COMP%]{flex-grow:1;overflow-y:auto;padding:20px;margin-top:16px}.content-bubble[_ngcontent-%COMP%]{padding:5px 20px;margin:5px;border-radius:20px;max-width:80%;font-size:14px;font-weight:400;position:relative;display:inline-block}.function-event-button[_ngcontent-%COMP%]{margin:5px 5px 10px}.function-event-button-highlight[_ngcontent-%COMP%]{border-color:var(--mat-sys-primary)!important;color:var(--mat-sys-on-primary)!important}.role-user[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center}.role-user[_ngcontent-%COMP%] .content-bubble[_ngcontent-%COMP%]{align-self:flex-end;color:var(--mat-sys-on-primary-container);background-color:var(--mat-sys-primary-container);box-shadow:none}.role-bot[_ngcontent-%COMP%]{display:flex;align-items:center}.role-bot[_ngcontent-%COMP%] .content-bubble[_ngcontent-%COMP%]{align-self:flex-start;color:var(--mat-sys-on-surface);background-color:var(--mat-sys-surface-container-high);box-shadow:none}.role-bot[_ngcontent-%COMP%]:focus-within .content-bubble[_ngcontent-%COMP%]{border:1px solid var(--mat-sys-outline)}.message-textarea[_ngcontent-%COMP%]{max-width:100%;border:none;font-family:Google Sans,Helvetica Neue,sans-serif}.message-textarea[_ngcontent-%COMP%]:focus{outline:none}.edit-message-buttons-container[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}.content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%]{visibility:hidden;position:absolute;left:10px;overflow:hidden;border-radius:20px;padding:5px 20px;margin-bottom:10px;font-size:16px}.content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .actual-result[_ngcontent-%COMP%]{border-right:2px solid var(--mat-sys-outline-variant);padding-right:8px;min-width:350px;max-width:350px}.content-bubble[_ngcontent-%COMP%] .eval-compare-container[_ngcontent-%COMP%] .expected-result[_ngcontent-%COMP%]{padding-left:12px;min-width:350px;max-width:350px}.content-bubble[_ngcontent-%COMP%]:hover .eval-compare-container[_ngcontent-%COMP%]{visibility:visible}.actual-expected-compare-container[_ngcontent-%COMP%]{display:flex}.score-threshold-container[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:10px;align-items:center;margin-top:15px;font-size:14px;font-weight:600}.eval-response-header[_ngcontent-%COMP%]{padding-bottom:5px;border-bottom:2px solid var(--mat-sys-outline-variant);font-style:italic;font-weight:700}.header-expected[_ngcontent-%COMP%]{color:var(--mat-sys-tertiary)}.header-actual[_ngcontent-%COMP%]{color:var(--mat-sys-primary)}.eval-case-edit-button[_ngcontent-%COMP%]{cursor:pointer;margin-left:4px;margin-right:4px}.eval-pass[_ngcontent-%COMP%]{display:flex;color:#2e7d32}.eval-fail[_ngcontent-%COMP%]{display:flex;color:var(--mat-sys-error)}.navigation-button-sidepanel[_ngcontent-%COMP%]{margin-left:auto;margin-right:20px}.fab-button[_ngcontent-%COMP%]{position:fixed;bottom:200px;right:100px}.sidepanel-toggle[_ngcontent-%COMP%]{position:relative;top:100px}.side-drawer[_ngcontent-%COMP%]{color:var(--chat-side-drawer-color);border-radius:0}.file-preview[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;margin-bottom:8px}.file-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:5px;padding:5px;border-radius:4px}.empty-state-container[_ngcontent-%COMP%]{color:var(--chat-empty-state-container-color);height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;font-family:Google Sans,sans-serif;font-weight:400;letter-spacing:normal;line-height:24px;font-size:18px}.empty-state-container[_ngcontent-%COMP%] pre.warning[_ngcontent-%COMP%]{color:var(--chat-warning-color)}.empty-state-container[_ngcontent-%COMP%] pre.error[_ngcontent-%COMP%]{color:var(--chat-error-color)}.new-session-button[_ngcontent-%COMP%]{margin-top:0;width:130px;height:28px;font-size:14px}.adk-checkbox[_ngcontent-%COMP%]{position:fixed;bottom:0;left:0;right:0;margin-bottom:20px;margin-left:20px}.app-toolbar[_ngcontent-%COMP%]{height:48px;min-height:48px!important;display:flex;align-items:center;font-family:Google Sans,sans-serif;font-size:13px;padding:0 8px!important;z-index:1}.toolbar-group[_ngcontent-%COMP%]{display:flex;align-items:center;flex-shrink:0}.toolbar-agent-group[_ngcontent-%COMP%]{margin-right:6px}.toolbar-session-group[_ngcontent-%COMP%]{flex-shrink:1;min-width:0;flex:1}.toolbar-logo[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;margin-right:16px;flex-shrink:0}.toolbar-logo-text[_ngcontent-%COMP%]{font-family:Google Sans,sans-serif;font-size:14px;font-weight:500;white-space:nowrap}.disclosure-info-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;opacity:.7;cursor:pointer;margin-right:16px;color:var(--chat-toolbar-icon-color)}.toolbar-content[_ngcontent-%COMP%]{display:flex;align-items:center;flex:1;min-width:0}.drawer-container[_ngcontent-%COMP%]{height:calc(100% - 48px)}.side-panel-container[_ngcontent-%COMP%]{width:100%;height:100%}.toolbar-actions[_ngcontent-%COMP%]{margin-left:auto;display:flex;align-items:center;flex-shrink:0}.toolbar-session-text[_ngcontent-%COMP%]{color:var(--chat-toolbar-session-text-color);font-family:Google Sans,sans-serif;font-size:13px;font-style:normal;font-weight:500;text-transform:uppercase;flex-shrink:0}.toolbar-session-id[_ngcontent-%COMP%]{color:var(--chat-toolbar-session-id-color);font-family:Google Sans Mono,monospace;font-size:13px;margin-left:5px}.readonly-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;background-color:var(--mat-sys-primary-container)!important;color:var(--mat-sys-on-primary-container)!important;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500;gap:6px}.readonly-chip[_ngcontent-%COMP%] .chip-label[_ngcontent-%COMP%]{text-transform:uppercase;font-size:11px;font-weight:700;opacity:.9}.readonly-chip[_ngcontent-%COMP%] .chip-value[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace}.readonly-chip[_ngcontent-%COMP%] .chip-close-button[_ngcontent-%COMP%]{width:24px!important;height:24px!important;min-width:24px!important;padding:0!important;display:flex!important;align-items:center;justify-content:center;color:inherit!important;opacity:.8;margin-left:4px}.readonly-chip[_ngcontent-%COMP%] .chip-close-button[_ngcontent-%COMP%]:hover{opacity:1;background-color:#fff3!important}.toolbar-session-id-container[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:5px}.toolbar-session-id-container[_ngcontent-%COMP%] .toolbar-session-id[_ngcontent-%COMP%]{margin-left:0}.toolbar-icon-button[_ngcontent-%COMP%]{color:var(--chat-toolbar-icon-color);background:transparent!important;border:none!important;box-shadow:none!important}.toolbar-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.small-icon-button[_ngcontent-%COMP%]{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:0!important}.small-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px!important;width:18px!important;height:18px!important}.toolbar-user-id-container[_ngcontent-%COMP%]{display:flex;align-items:center;margin-left:5px}.toolbar-user-id-input[_ngcontent-%COMP%]{width:140px;height:24px;border:1px solid var(--chat-toolbar-session-text-color);border-radius:4px;color:var(--chat-toolbar-session-id-color);padding:0 6px;font-family:Google Sans Mono,monospace;font-size:12px}.toolbar-user-id-input[_ngcontent-%COMP%]:focus{outline:1px solid var(--chat-toolbar-icon-color)}.user-avatar-button[_ngcontent-%COMP%]{margin-left:auto;flex-shrink:0}.user-avatar-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:24px;width:24px;height:24px}.user-menu-panel[_ngcontent-%COMP%]{padding:16px;min-width:240px}.user-menu-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.user-menu-avatar-icon[_ngcontent-%COMP%]{font-size:36px;width:36px;height:36px;color:var(--chat-toolbar-icon-color)}.user-menu-label[_ngcontent-%COMP%]{font-size:14px;font-weight:500;color:var(--chat-toolbar-session-text-color);text-transform:uppercase}.user-menu-content[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.user-menu-id[_ngcontent-%COMP%]{font-family:Google Sans Mono,monospace;font-size:14px;color:var(--chat-toolbar-session-id-color);word-break:break-all}.user-menu-input[_ngcontent-%COMP%]{flex:1;height:28px;border:1px solid var(--chat-toolbar-session-text-color);border-radius:4px;color:var(--chat-toolbar-session-id-color);padding:0 8px;font-family:Google Sans Mono,monospace;font-size:13px;background:transparent}.user-menu-input[_ngcontent-%COMP%]:focus{outline:1px solid var(--chat-toolbar-icon-color)}[_nghost-%COMP%] pre{white-space:pre-wrap;word-break:break-word;overflow-x:auto;max-width:100%}.readonly-badge[_ngcontent-%COMP%]{color:var(--mat-sys-on-primary-container)!important;background-color:var(--mat-sys-primary-container)!important;border-radius:16px;padding:4px 12px;display:flex;align-items:center;margin-left:8px;font-family:Google Sans,sans-serif;font-size:13px;line-height:18px;gap:4px;white-space:nowrap}.readonly-badge[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px;flex-shrink:0}.readonly-session-message[_ngcontent-%COMP%]{display:block;color:var(--chat-toolbar-session-text-color);font-family:Google Sans,sans-serif;font-size:13px;margin-left:1em;font-weight:400;line-height:18px;letter-spacing:.3px;flex-shrink:1}.builder-mode-container[_ngcontent-%COMP%]{position:relative;width:100%;height:100vh;display:flex;flex-direction:column}.builder-exit-button[_ngcontent-%COMP%]{position:absolute;top:20px;right:20px;display:flex;gap:8px}.builder-mode-action-button[_ngcontent-%COMP%]{color:var(--builder-text-tertiary-color)!important;border-radius:50%!important;transition:all .2s ease!important;margin:0!important;padding:0!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;border:1px solid var(--builder-tool-item-border-color)!important;box-shadow:0 2px 4px #0000001a!important;display:flex!important;align-items:center!important;justify-content:center!important}.builder-mode-action-button[_ngcontent-%COMP%]:hover{box-shadow:0 4px 8px #00000026!important}.builder-mode-action-button.active[_ngcontent-%COMP%]{color:#fff!important;border-color:var(--builder-button-primary-background-color)!important}.builder-mode-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}app-canvas[_ngcontent-%COMP%]{width:100%!important;height:100%!important;flex:1!important;display:flex!important;flex-direction:column!important;min-height:0!important}.build-mode-container[_ngcontent-%COMP%]{display:flex;width:100%;height:100%}.build-left-panel[_ngcontent-%COMP%], .build-right-panel[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;border:1px solid var(--builder-border-color);margin:10px;border-radius:8px}.selector-group[_ngcontent-%COMP%]{display:flex;align-items:center;border-radius:6px;border:1px solid var(--mat-sys-outline-variant, #c4c7c5);margin-right:8px;flex-shrink:0;height:32px;overflow:hidden}.selector-group[_ngcontent-%COMP%] .toolbar-icon-button[_ngcontent-%COMP%]{width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.selector-group[_ngcontent-%COMP%] .toolbar-icon-button[_ngcontent-%COMP%] .mdc-icon-button__ripple{border-radius:4px;inset:1px}.selector-group[_ngcontent-%COMP%] .toolbar-icon-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.selector-group-divider[_ngcontent-%COMP%]{width:1px;height:16px;background-color:var(--mat-sys-outline-variant, #c4c7c5);flex-shrink:0}.selector-button[_ngcontent-%COMP%]{display:flex;align-items:center;gap:6px;padding:4px 12px;margin-right:1px;border-radius:6px;border:none;background:transparent;cursor:pointer;color:var(--chat-toolbar-icon-color);font-family:Google Sans,sans-serif;font-size:13px;font-weight:500;height:100%;flex-shrink:0;white-space:nowrap;width:auto;max-width:220px;overflow:hidden;transition:background-color .15s ease;position:relative;z-index:0}.selector-button[_ngcontent-%COMP%]:before{content:"";position:absolute;inset:1px;border-radius:4px;background-color:var(--mat-icon-button-state-layer-color, var(--mat-sys-on-surface-variant));opacity:0;pointer-events:none;z-index:-1;transition:opacity .15s ease}.selector-button[_ngcontent-%COMP%]:hover:before{opacity:var(--mat-icon-button-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.selector-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;flex-shrink:0}.new-session-button[_ngcontent-%COMP%]{width:auto!important}.new-session-button.icon-only[_ngcontent-%COMP%]{width:32px!important;padding:0!important;justify-content:center}.selector-label[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.selector-caret[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px;flex-shrink:0;margin-left:auto;opacity:.7}.selector-drawer-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 20px;height:48px;flex-shrink:0}.selector-drawer-title[_ngcontent-%COMP%]{font-size:16px;font-weight:500;font-family:Google Sans,sans-serif}.selector-drawer[_ngcontent-%COMP%]{width:320px;background-color:var(--mat-sys-surface, #fff)}.selector-drawer[_ngcontent-%COMP%] .mat-drawer-inner-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.selector-drawer.match-side-panel-width[_ngcontent-%COMP%]{width:var(--side-drawer-width)}.app-selector-search[_ngcontent-%COMP%]{padding:0 12px 4px;flex-shrink:0}.app-selector-search-field[_ngcontent-%COMP%]{width:100%;font-size:13px}.app-selector-search-field[_ngcontent-%COMP%] .mat-mdc-form-field-infix[_ngcontent-%COMP%]{min-height:36px;padding-top:6px!important;padding-bottom:6px!important}.app-selector-search-field[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--chat-toolbar-session-text-color);font-size:18px;width:18px;height:18px}.app-selector-list[_ngcontent-%COMP%]{flex:1;overflow-y:auto;padding:0 8px}.app-selector-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:transparent;cursor:pointer;border-radius:8px;font-family:Google Sans Mono,monospace;font-size:13px;color:var(--chat-toolbar-icon-color);text-align:left;transition:background-color .15s ease}.app-selector-item[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant, rgba(0, 0, 0, .04))}.app-selector-item.selected[_ngcontent-%COMP%]{background-color:var(--mat-sys-secondary-container, #d7e3f7);font-weight:500}.app-selector-item-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px;flex-shrink:0;color:var(--chat-toolbar-session-text-color)}.app-selector-check[_ngcontent-%COMP%]{margin-left:auto;font-size:18px;width:18px;height:18px}.app-selector-item-name[_ngcontent-%COMP%]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-selector-loading[_ngcontent-%COMP%]{display:flex;justify-content:center;padding:24px}.app-selector-empty[_ngcontent-%COMP%]{text-align:center;padding:24px;color:var(--chat-toolbar-session-text-color);font-style:italic}.session-selector-current-id[_ngcontent-%COMP%]{padding:8px 20px;border-bottom:1px solid var(--mat-sys-outline-variant, #c4c7c5)}.session-selector-current-id-label[_ngcontent-%COMP%]{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--mat-sys-on-surface-variant, #444746)}.session-selector-current-id-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.session-selector-current-id-value[_ngcontent-%COMP%]{font-size:14px;font-style:normal;font-weight:500;line-height:20px;letter-spacing:.25px;font-family:Google Sans,sans-serif;color:var(--mat-sys-on-surface, #1a1c20);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0}.session-selector-current-real-id-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px}.session-selector-current-real-id-value[_ngcontent-%COMP%]{font-size:11px;font-family:Google Sans Mono,monospace;color:var(--chat-toolbar-session-id-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto;min-width:0;opacity:.7}.session-selector-action-button[_ngcontent-%COMP%]{flex-shrink:0;width:28px!important;height:28px!important;padding:0!important}.session-selector-action-button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}.session-selector-drawer-content[_ngcontent-%COMP%]{flex:1;overflow-y:auto}.build-panel-header[_ngcontent-%COMP%]{padding:16px 20px;border-bottom:1px solid var(--builder-border-color);border-radius:8px 8px 0 0}.build-panel-header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{margin:0;color:var(--builder-text-primary-color);font-size:16px;font-weight:500;font-family:Google Sans,Helvetica Neue,sans-serif}.build-panel-content[_ngcontent-%COMP%]{flex:1;padding:20px;color:var(--builder-text-secondary-color);overflow-y:auto}.build-panel-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:14px;line-height:1.5}.app-name-option[_ngcontent-%COMP%], .app-select[_ngcontent-%COMP%]{color:var(--builder-text-secondary-color);font-family:Google Sans Mono,monospace;font-style:normal;font-weight:400;padding-left:unset}.adk-web-developer-ui-disclaimer[_ngcontent-%COMP%]{padding-left:4px;padding-bottom:4px;font-size:10px;color:var(--adk-web-text-color-light-gray)}.menu-check-icon.inactive[_ngcontent-%COMP%]{visibility:hidden}.logo-narrow[_ngcontent-%COMP%]{display:none}@media(max-width:900px){.logo-wide[_ngcontent-%COMP%]{display:none}.logo-narrow[_ngcontent-%COMP%]{display:inline}}@media(max-width:768px){.toolbar-agent-group[_ngcontent-%COMP%] .selector-label[_ngcontent-%COMP%], .toolbar-session-group[_ngcontent-%COMP%] .selector-label[_ngcontent-%COMP%]{display:none!important}.selector-caret[_ngcontent-%COMP%]{margin-left:2px!important}.selector-group[_ngcontent-%COMP%], .toolbar-agent-group[_ngcontent-%COMP%]{margin-right:4px!important}.chat-card[_ngcontent-%COMP%]{min-width:0!important}.side-drawer[_ngcontent-%COMP%]{width:85vw!important;max-width:360px!important}.selector-drawer[_ngcontent-%COMP%]{width:100vw!important;max-width:100%!important}.side-by-side-layout[_ngcontent-%COMP%]{flex-direction:column!important;overflow-y:auto!important;gap:12px!important;padding:12px!important}.side-by-side-layout[_ngcontent-%COMP%] .side-panel-half[_ngcontent-%COMP%]{height:400px!important;flex:none!important}.chat-sub-toolbar[_ngcontent-%COMP%]{padding:0 8px!important;gap:4px!important;overflow-x:auto;white-space:nowrap}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-bar-container[_ngcontent-%COMP%]{margin-left:8px!important;gap:4px!important}}@media(max-width:400px){.toolbar-logo[_ngcontent-%COMP%]{display:none!important}}.chat-sub-toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center;height:48px;flex-shrink:0;padding:0 8px 0 20px;background-color:var(--mat-sys-surface-container);border-bottom:1px solid var(--mat-sys-outline-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%]{border-radius:16px;height:28px;align-items:center}.chat-sub-toolbar[_ngcontent-%COMP%] mat-button-toggle-group[_ngcontent-%COMP%] .mat-button-toggle-label-content{line-height:28px;padding:0 12px;font-size:13px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-bar-container[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;background-color:transparent;border:none;margin-left:16px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;height:28px;cursor:pointer;transition:background-color .2s ease}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-label[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--mat-sys-on-surface-variant);padding:0;margin-left:4px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px}.chat-sub-toolbar[_ngcontent-%COMP%] .filter-chip[_ngcontent-%COMP%] .chip-remove[_ngcontent-%COMP%]:hover{color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]{display:flex;align-items:center;background-color:transparent;border:1px dashed var(--mat-sys-outline-variant);border-radius:14px;padding:0 10px;font-size:13px;font-weight:500;height:28px;cursor:pointer;transition:all .2s ease;color:var(--mat-sys-on-surface-variant)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%]:hover{background-color:var(--mat-sys-surface-variant);border-color:var(--mat-sys-outline);color:var(--mat-sys-on-surface)}.chat-sub-toolbar[_ngcontent-%COMP%] .add-filter-btn[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:14px;width:14px;height:14px;margin-right:4px} .filter-panel{min-width:max-content!important;max-width:50vw} .filter-panel .mat-mdc-menu-item{min-height:32px!important;font-size:12px!important} .filter-panel .mat-mdc-menu-item .mat-mdc-menu-item-text, .filter-panel .mat-mdc-menu-item .mdc-list-item__primary-text{font-size:12px!important;line-height:normal}.metric-block[_ngcontent-%COMP%]:hover .metric-tooltip[_ngcontent-%COMP%]{visibility:visible!important;opacity:1!important}.metric-tooltip[_ngcontent-%COMP%]{visibility:hidden;opacity:0;position:absolute;z-index:100;top:110%;left:0;background:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;padding:12px;width:220px;box-shadow:0 4px 12px #00000026;transition:opacity .15s ease,visibility .15s ease;pointer-events:none}.metric-tooltip[_ngcontent-%COMP%] .tooltip-title[_ngcontent-%COMP%]{font-weight:600;font-size:13px;margin-bottom:4px;color:var(--mat-sys-on-surface)}.metric-tooltip[_ngcontent-%COMP%] .tooltip-desc[_ngcontent-%COMP%]{font-size:11px;color:var(--mat-sys-on-surface-variant);margin-bottom:8px;white-space:normal;line-height:1.4}.metric-tooltip[_ngcontent-%COMP%] .tooltip-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:11px;border-top:1px solid var(--mat-sys-outline-variant);padding-top:6px}.metric-tooltip[_ngcontent-%COMP%] .tooltip-item[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:4px}.metric-tooltip[_ngcontent-%COMP%] .tooltip-label[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-weight:400}.metric-tooltip[_ngcontent-%COMP%] .tooltip-value[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface)}.logo-title-container[_ngcontent-%COMP%]{position:relative;display:inline-flex;align-items:center;cursor:default}.logo-title-container[_ngcontent-%COMP%]:hover .custom-tooltip[_ngcontent-%COMP%]{visibility:visible;opacity:1}.custom-tooltip[_ngcontent-%COMP%]{visibility:hidden;opacity:0;position:absolute;z-index:100;top:110%;left:50%;transform:translate(-50%);background:var(--mat-sys-surface-container-highest);border:1px solid var(--mat-sys-outline-variant);border-radius:8px;padding:12px;width:250px;box-shadow:0 4px 12px #00000026;transition:opacity .15s ease,visibility .15s ease;pointer-events:none;white-space:normal}.custom-tooltip[_ngcontent-%COMP%] .tooltip-title[_ngcontent-%COMP%]{font-weight:600;font-size:13px;margin-bottom:4px;color:var(--mat-sys-on-surface)}.custom-tooltip[_ngcontent-%COMP%] .tooltip-desc[_ngcontent-%COMP%]{font-size:11px;color:var(--mat-sys-on-surface-variant);margin-bottom:8px;line-height:1.4}.custom-tooltip[_ngcontent-%COMP%] .tooltip-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr;gap:4px;font-size:11px;border-top:1px solid var(--mat-sys-outline-variant);padding-top:6px}.custom-tooltip[_ngcontent-%COMP%] .tooltip-item[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:4px}.custom-tooltip[_ngcontent-%COMP%] .tooltip-label[_ngcontent-%COMP%]{color:var(--mat-sys-on-surface-variant);font-weight:400}.custom-tooltip[_ngcontent-%COMP%] .tooltip-value[_ngcontent-%COMP%]{font-weight:500;color:var(--mat-sys-on-surface)}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_spin 1s linear infinite}']})};var jE=class t{static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-root"]],decls:1,vars:0,template:function(e,i){e&1&&le(0,"app-chat")},dependencies:[C7],encapsulation:2})};var WJe=[{path:"",component:jE}],d7=class t{static \u0275fac=function(e){return new(e||t)};static \u0275mod=at({type:t});static \u0275inj=ot({imports:[M6.forRoot(WJe),M6]})};var I7=class{static getRuntimeConfig(){return window.runtimeConfig}};function XJe(t,A){if(t&1&&(Gn(0,"a",0),eo(1,"img",1),v(2),$n()),t&2){p();let e=Ti(0),i=Ti(1);Q(),Ra("src",dd(e),wo),Q(),pA(" ",i," ")}}function $Je(t,A){t&1&&(Gn(0,"div"),v(1," Invalid custom logo config. Make sure that your runtime config specifies both imgUrl and text in the logo field. "),$n())}var B7=class t{logoConfig=I7.getRuntimeConfig().logo;static \u0275fac=function(e){return new(e||t)};static \u0275cmp=De({type:t,selectors:[["app-custom-logo"]],decls:4,vars:3,consts:[["href","/"],["width","32px","height","32px",1,"orcas-logo",3,"src"]],template:function(e,i){if(e&1&&(so(0)(1),T(2,XJe,3,3,"a",0)(3,$Je,2,0,"div")),e&2){let n=lo(i.logoConfig==null?null:i.logoConfig.imageUrl);Q();let o=lo(i.logoConfig==null?null:i.logoConfig.text);Q(),O(n&&o?2:3)}},styles:[`a[_ngcontent-%COMP%]{color:inherit;text-decoration:none;display:flex;align-items:center;gap:8px} + + + + + + + + + + + + + + + + +`]})};var eze={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-500":!0,"layout-as-n":!0,"layout-dis-iflx":!0,"layout-al-c":!0},Aze={"layout-w-100":!0},tze={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-mt-0":!0,"layout-mb-2":!0,"typography-sz-bm":!0,"color-c-n10":!0},ize={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-500":!0,"layout-pt-3":!0,"layout-pb-3":!0,"layout-pl-5":!0,"layout-pr-5":!0,"layout-mb-1":!0,"border-br-16":!0,"border-bw-0":!0,"border-c-n70":!0,"border-bs-s":!0,"color-bgc-s30":!0,"color-c-n100":!0,"behavior-ho-80":!0},AJ={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mb-2":!0,"color-c-n10":!0},nze=Ye(Y({},AJ),{"typography-sz-tl":!0}),oze=Ye(Y({},AJ),{"typography-sz-tm":!0}),aze=Ye(Y({},AJ),{"typography-sz-ts":!0}),rze={"behavior-sw-n":!0},Mce={"typography-f-sf":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-pl-4":!0,"layout-pr-4":!0,"layout-pt-2":!0,"layout-pb-2":!0,"border-br-6":!0,"border-bw-1":!0,"color-bc-s70":!0,"border-bs-s":!0,"layout-as-n":!0,"color-c-n10":!0},sze={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0,"color-c-n10":!0},lze={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0},cze={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0},gze={"typography-f-s":!0,"typography-fs-n":!0,"typography-w-400":!0,"layout-m-0":!0,"typography-sz-bm":!0,"layout-as-n":!0},Cze={"typography-f-c":!0,"typography-fs-n":!0,"typography-w-400":!0,"typography-sz-bm":!0,"typography-ws-p":!0,"layout-as-n":!0},dze=Ye(Y({},Mce),{"layout-r-none":!0,"layout-fs-c":!0}),Ize={"layout-el-cv":!0},wce=el.merge(eze,{"color-c-p30":!0}),Bze=el.merge(Mce,{"color-c-n5":!0}),hze=el.merge(dze,{"color-c-n5":!0}),uze=el.merge(ize,{"color-c-n100":!0}),yce=el.merge(nze,{"color-c-n5":!0}),vce=el.merge(oze,{"color-c-n5":!0}),Dce=el.merge(aze,{"color-c-n5":!0}),Eze=el.merge(tze,{"color-c-n5":!0}),bce=el.merge(sze,{"color-c-n60":!0}),Qze=el.merge(Cze,{"color-c-n35":!0}),pze=el.merge(lze,{"color-c-n35":!0}),mze=el.merge(cze,{"color-c-n35":!0}),fze=el.merge(gze,{"color-c-n35":!0}),Sce={additionalStyles:{Card:{},Button:{"--n-60":"var(--n-100)"},Image:{"max-width":"120px","max-height":"120px",marginLeft:"auto",marginRight:"auto"}},components:{AudioPlayer:{},Button:{"layout-pt-2":!0,"layout-pb-2":!0,"layout-pl-5":!0,"layout-pr-5":!0,"border-br-2":!0,"border-bw-0":!0,"border-bs-s":!0,"color-bgc-p30":!0,"color-c-n100":!0,"behavior-ho-70":!0},Card:{"border-br-4":!0,"color-bgc-p100":!0,"color-bc-n90":!0,"border-bw-1":!0,"border-bs-s":!0,"layout-pt-4":!0,"layout-pb-4":!0,"layout-pl-4":!0,"layout-pr-4":!0},CheckBox:{element:{"layout-m-0":!0,"layout-mr-2":!0,"layout-p-2":!0,"border-br-12":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bgc-p100":!0,"color-bc-p60":!0,"color-c-n30":!0,"color-c-p30":!0},label:{"color-c-p30":!0,"typography-f-sf":!0,"typography-v-r":!0,"typography-w-400":!0,"layout-flx-1":!0,"typography-sz-ll":!0},container:{"layout-dsp-iflex":!0,"layout-al-c":!0}},Column:{},DateTimeInput:{container:{},label:{},element:{"layout-pt-2":!0,"layout-pb-2":!0,"layout-pl-3":!0,"layout-pr-3":!0,"border-br-12":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bgc-p100":!0,"color-bc-p60":!0,"color-c-n30":!0}},Divider:{"color-bgc-n90":!0,"layout-mt-6":!0,"layout-mb-6":!0},Image:{all:{"border-br-50pc":!0,"layout-el-cv":!0,"layout-w-100":!0,"layout-h-100":!0,"layout-dsp-flexhor":!0,"layout-al-c":!0,"layout-sp-c":!0,"layout-mb-3":!0},avatar:{},header:{},icon:{},largeFeature:{},mediumFeature:{},smallFeature:{}},Icon:{"border-br-1":!0,"layout-p-2":!0,"color-bgc-n98":!0,"layout-dsp-flexhor":!0,"layout-al-c":!0,"layout-sp-c":!0},List:{"layout-g-4":!0,"layout-p-2":!0},Modal:{backdrop:{"color-bbgc-p60_20":!0},element:{"border-br-2":!0,"color-bgc-p100":!0,"layout-p-4":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bc-p80":!0}},MultipleChoice:{container:{},label:{},element:{}},Row:{"layout-g-4":!0},Slider:{container:{},label:{},element:{}},Tabs:{container:{},controls:{all:{},selected:{}},element:{}},Text:{all:{"layout-w-100":!0,"layout-g-2":!0,"color-c-p30":!0},h1:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-2":!0,"layout-p-0":!0,"typography-sz-tl":!0},h2:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-2":!0,"layout-p-0":!0,"typography-sz-tl":!0},h3:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-0":!0,"layout-p-0":!0,"typography-sz-ts":!0},h4:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-0":!0,"layout-p-0":!0,"typography-sz-bl":!0},h5:{"typography-f-sf":!0,"typography-ta-c":!0,"typography-v-r":!0,"typography-w-500":!0,"layout-mt-0":!0,"layout-mr-0":!0,"layout-ml-0":!0,"layout-mb-0":!0,"layout-p-0":!0,"color-c-n30":!0,"typography-sz-bm":!0,"layout-mb-1":!0},body:{},caption:{}},TextField:{container:{"typography-sz-bm":!0,"layout-w-100":!0,"layout-g-2":!0,"layout-dsp-flexhor":!0,"layout-al-c":!0},label:{"layout-flx-0":!0},element:{"typography-sz-bm":!0,"layout-pt-2":!0,"layout-pb-2":!0,"layout-pl-3":!0,"layout-pr-3":!0,"border-br-12":!0,"border-bw-1":!0,"border-bs-s":!0,"color-bgc-p100":!0,"color-bc-p60":!0,"color-c-n30":!0,"color-c-p30":!0}},Video:{"border-br-5":!0,"layout-el-cv":!0}},elements:{a:wce,audio:Aze,body:Eze,button:uze,h1:yce,h2:vce,h3:Dce,h4:{},h5:{},iframe:rze,input:Bze,p:bce,pre:Qze,textarea:hze,video:Ize},markdown:{p:[...Object.keys(bce)],h1:[...Object.keys(yce)],h2:[...Object.keys(vce)],h3:[...Object.keys(Dce)],h4:[],h5:[],ul:[...Object.keys(mze)],ol:[...Object.keys(pze)],li:[...Object.keys(fze)],a:[...Object.keys(wce)],strong:[],em:[]}};var h7=class t{nodes=[];subAgentIdCounter=1;selectedToolSubject=new di(void 0);selectedNodeSubject=new di(void 0);selectedCallbackSubject=new di(void 0);loadedAgentDataSubject=new di(void 0);agentToolsMapSubject=new di(new Map);agentToolsSubject=new di(void 0);newAgentToolBoardSubject=new di(void 0);agentCallbacksMapSubject=new di(new Map);agentCallbacksSubject=new di(void 0);agentToolDeletionSubject=new di(void 0);deleteSubAgentSubject=new di("");addSubAgentSubject=new di({parentAgentName:""});tabChangeSubject=new di(void 0);agentToolBoardsSubject=new di(new Map);constructor(){}getNode(A){return this.nodes.find(i=>i.name===A)}getRootNode(){return this.nodes.find(e=>!!e.isRoot)}addNode(A){let e=this.nodes.findIndex(l=>l.name===A.name);e!==-1?this.nodes[e]=A:this.nodes.push(A);let i=/^sub_agent_(\d+)$/,n=A.name.match(i);if(n){let l=parseInt(n[1],10);l>=this.subAgentIdCounter&&(this.subAgentIdCounter=l+1)}let o=this.agentToolsMapSubject.value,a=new Map(o);a.set(A.name,A.tools||[]),this.agentToolsMapSubject.next(a);let r=this.agentCallbacksMapSubject.value,s=new Map(r);s.set(A.name,A.callbacks||[]),this.agentCallbacksMapSubject.next(s),this.setSelectedNode(this.selectedNodeSubject.value)}getNodes(){return this.nodes}clear(){this.nodes=[],this.subAgentIdCounter=1,this.setSelectedNode(void 0),this.setSelectedTool(void 0),this.agentToolsMapSubject.next(new Map),this.agentCallbacksMapSubject.next(new Map),this.setSelectedCallback(void 0),this.setAgentTools(),this.setAgentCallbacks()}getSelectedNode(){return this.selectedNodeSubject.asObservable()}setSelectedNode(A){this.selectedNodeSubject.next(A)}getSelectedTool(){return this.selectedToolSubject.asObservable()}setSelectedTool(A){this.selectedToolSubject.next(A)}getSelectedCallback(){return this.selectedCallbackSubject.asObservable()}setSelectedCallback(A){this.selectedCallbackSubject.next(A)}getNextSubAgentName(){return`sub_agent_${this.subAgentIdCounter++}`}addTool(A,e){let i=this.getNode(A);if(i){let n=i.tools||[];i.tools=[e,...n];let o=this.agentToolsMapSubject.value,a=new Map(o);a.set(A,i.tools),this.agentToolsMapSubject.next(a)}}deleteTool(A,e){let i=this.getNode(A);if(i&&i.tools){let n=i.tools.length;if(i.tools=i.tools.filter(o=>o.name!==e.name),i.tools.lengthr.name===e.name))return{success:!1,error:`Callback with name '${e.name}' already exists`};i.callbacks.push(e),this.agentCallbacksSubject.next({agentName:A,callbacks:i.callbacks});let o=this.agentCallbacksMapSubject.value,a=new Map(o);return a.set(A,i.callbacks),this.agentCallbacksMapSubject.next(a),{success:!0}}catch(i){return{success:!1,error:"Failed to add callback: "+i.message}}}updateCallback(A,e,i){try{let n=this.getNode(A);if(!n)return{success:!1,error:"Agent not found"};if(!n.callbacks)return{success:!1,error:"No callbacks found for this agent"};let o=n.callbacks.findIndex(c=>c.name===e);if(o===-1)return{success:!1,error:"Callback not found"};if(n.callbacks.some((c,C)=>C!==o&&c.name===i.name))return{success:!1,error:`Callback with name '${i.name}' already exists`};let r=Y(Y({},n.callbacks[o]),i);n.callbacks[o]=r,this.agentCallbacksSubject.next({agentName:A,callbacks:n.callbacks});let s=this.agentCallbacksMapSubject.value,l=new Map(s);return l.set(A,n.callbacks),this.agentCallbacksMapSubject.next(l),this.selectedCallbackSubject.value?.name===e&&this.setSelectedCallback(r),{success:!0}}catch(n){return{success:!1,error:"Failed to update callback: "+n.message}}}deleteCallback(A,e){try{let i=this.getNode(A);if(!i)return{success:!1,error:"Agent not found"};if(!i.callbacks)return{success:!1,error:"No callbacks found for this agent"};let n=i.callbacks.findIndex(r=>r.name===e.name);if(n===-1)return{success:!1,error:"Callback not found"};i.callbacks.splice(n,1),this.agentCallbacksSubject.next({agentName:A,callbacks:i.callbacks});let o=this.agentCallbacksMapSubject.value,a=new Map(o);return a.set(A,i.callbacks),this.agentCallbacksMapSubject.next(a),this.selectedCallbackSubject.value?.name===e.name&&this.setSelectedCallback(void 0),{success:!0}}catch(i){return{success:!1,error:"Failed to delete callback: "+i.message}}}setLoadedAgentData(A){this.loadedAgentDataSubject.next(A)}getLoadedAgentData(){return this.loadedAgentDataSubject.asObservable()}getAgentToolsMap(){return this.agentToolsMapSubject.asObservable()}getAgentCallbacksMap(){return this.agentCallbacksMapSubject.asObservable()}requestSideTabChange(A){this.tabChangeSubject.next(A)}getSideTabChangeRequest(){return this.tabChangeSubject.asObservable()}requestNewTab(A,e){this.newAgentToolBoardSubject.next({toolName:A,currentAgentName:e})}getNewTabRequest(){return this.newAgentToolBoardSubject.asObservable().pipe(xA(e=>e?{tabName:e.toolName,currentAgentName:e.currentAgentName}:void 0))}requestTabDeletion(A){this.agentToolDeletionSubject.next(A)}getTabDeletionRequest(){return this.agentToolDeletionSubject.asObservable()}setAgentToolBoards(A){this.agentToolBoardsSubject.next(A)}getAgentToolBoards(){return this.agentToolBoardsSubject.asObservable()}getCurrentAgentToolBoards(){return this.agentToolBoardsSubject.value}getAgentTools(){return this.agentToolsSubject.asObservable()}getDeleteSubAgentSubject(){return this.deleteSubAgentSubject.asObservable()}setDeleteSubAgentSubject(A){this.deleteSubAgentSubject.next(A)}getAddSubAgentSubject(){return this.addSubAgentSubject.asObservable()}setAddSubAgentSubject(A,e,i){this.addSubAgentSubject.next({parentAgentName:A,agentClass:e,isFromEmptyGroup:i})}setAgentTools(A,e){if(A&&e){this.agentToolsSubject.next({agentName:A,tools:e});let i=this.agentToolsMapSubject.value,n=new Map(i);n.set(A,e),this.agentToolsMapSubject.next(n)}else this.agentToolsSubject.next(void 0)}getAgentCallbacks(){return this.agentCallbacksSubject.asObservable()}setAgentCallbacks(A,e){A&&e?this.agentCallbacksSubject.next({agentName:A,callbacks:e}):this.agentCallbacksSubject.next(void 0)}getParentNode(A,e,i,n){if(A){if(A.name===e.name)return i;for(let o of A.sub_agents){let a=this.getParentNode(o,e,A,n);if(a)return a}if(A.tools){for(let o of A.tools)if(o.toolType==="Agent Tool"){let a=n.get(o.toolAgentName||o.name);if(a){let r=this.getParentNode(a,e,A,n);if(r)return r}}}}}deleteNode(A){this.nodes=this.nodes.filter(e=>e.name!==A.name),this.setSelectedNode(this.selectedNodeSubject.value)}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var u7=class t{constructor(A){this.http=A}apiServerDomain=Ur.getApiServerBaseUrl();getLatestArtifact(A,e,i,n){let o=this.apiServerDomain+`/apps/${e}/users/${A}/sessions/${i}/artifacts/${n}`;return this.http.get(o)}getArtifactVersion(A,e,i,n,o){let a=this.apiServerDomain+`/apps/${e}/users/${A}/sessions/${i}/artifacts/${n}/versions/${o}`;return this.http.get(a)}static \u0275fac=function(e){return new(e||t)(Xo(Nr))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var E7=class t{audioContext=new AudioContext({sampleRate:22e3});lastAudioTime=0;scheduledAudioSources=new Set;playAudio(A){let e=this.combineAudioBuffer(A);e&&this.playPCM(e)}stopAudio(){for(let A of this.scheduledAudioSources)A.onended=null,A.stop();this.scheduledAudioSources.clear(),this.lastAudioTime=this.audioContext.currentTime}combineAudioBuffer(A){if(A.length===0)return;let e=A.reduce((o,a)=>o+a.length,0),i=new Uint8Array(e),n=0;for(let o of A)i.set(o,n),n+=o.length;return i}playPCM(A){let e=new Float32Array(A.length/2);for(let r=0;r=32768&&(s-=65536),e[r]=s/32768}let i=this.audioContext.createBuffer(1,e.length,22e3);i.copyToChannel(e,0);let n=this.audioContext.createBufferSource();n.buffer=i,n.connect(this.audioContext.destination),n.onended=()=>{this.scheduledAudioSources.delete(n)},this.scheduledAudioSources.add(n);let o=this.audioContext.currentTime,a=Math.max(this.lastAudioTime,o);n.start(a),this.lastAudioTime=a+i.duration}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var Q7=class t{audioWorkletModulePath=w(o8);stream;audioContext;source;audioBuffer=[];volumeLevel=fe(0);lastVolumeUpdate=0;startRecording(){return nA(this,null,function*(){try{this.stream=yield navigator.mediaDevices.getUserMedia({audio:!0}),this.audioContext=new AudioContext,yield this.audioContext.audioWorklet.addModule(this.audioWorkletModulePath),this.source=this.audioContext.createMediaStreamSource(this.stream);let A=new AudioWorkletNode(this.audioContext,"audio-processor");A.port.onmessage=e=>{let i=e.data,n=Date.now();if(n-this.lastVolumeUpdate>100){let a=0;for(let l=0;lA.stop()),this.volumeLevel.set(0)}getCombinedAudioBuffer(){if(this.audioBuffer.length===0)return;let A=this.audioBuffer.reduce((n,o)=>n+o.length,0),e=new Uint8Array(A),i=0;for(let n of this.audioBuffer)e.set(n,i),i+=n.length;return e}cleanAudioBuffer(){this.audioBuffer=[]}float32ToPCM(A){let e=new ArrayBuffer(A.length*2),i=new DataView(e);for(let n=0;n{let n=i.metricsInfo||[];this.metricsInfoCache.set(A,n),this.metricsInfo.set(n)}))}return new Li}createNewEvalSet(A,e,i="live"){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/dev/apps/${A}/eval-sets`;return this.http.post(n,{eval_set:{eval_set_id:e,model_execution_mode:i,tool_execution_mode:i,eval_cases:[]}})}return new Li}getEvalSet(A,e){if(this.apiServerDomain!=null){let i=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}`;return this.http.get(i,{})}return new Li}listEvalCases(A,e){if(this.apiServerDomain!=null){let i=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}/evals`;return this.http.get(i,{})}return new Li}addCurrentSession(A,e,i,n,o){let a=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}/add_session`;return this.http.post(a,{evalId:i,sessionId:n,userId:o})}runEval(A,e,i,n){let o=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}/run_eval`;return this.http.post(o,{evalIds:i,evalMetrics:n})}listEvalResults(A){if(this.apiServerDomain!=null){let e=this.apiServerDomain+`/dev/apps/${A}/eval_results`;return this.http.get(e,{})}return new Li}getEvalResult(A,e){if(this.apiServerDomain!=null){let i=this.apiServerDomain+`/dev/apps/${A}/eval_results/${encodeURIComponent(e)}`;return this.http.get(i,{})}return new Li}getEvalCase(A,e,i){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}/evals/${i}`;return this.http.get(n,{})}return new Li}updateEvalCase(A,e,i,n){let o=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}/evals/${i}`;return this.http.put(o,{evalId:i,conversation:n.conversation,sessionInput:n.sessionInput,creationTimestamp:n.creationTimestamp})}deleteEvalCase(A,e,i){let n=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}/evals/${i}`;return this.http.delete(n,{})}deleteEvalSet(A,e){let i=this.apiServerDomain+`/dev/apps/${A}/eval_sets/${e}`;return this.http.delete(i,{})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var f7=class t{constructor(A){this.http=A}apiServerDomain=Ur.getApiServerBaseUrl();getEventTrace(A,e){let i=this.apiServerDomain+`/dev/apps/${A}/debug/trace/${e.id}`;return this.http.get(i)}getTrace(A,e){let i=this.apiServerDomain+`/dev/apps/${A}/debug/trace/session/${e}`;return this.http.get(i).pipe(xA(o=>{let a=pce.array().safeParse(o);if(a.success)return a.data;throw new Error(a.error.issues.map(r=>`${r.path.join(".")}: ${r.message}`).join(", "))}))}getEvent(A,e,i,n){let o=this.apiServerDomain+`/dev/apps/${e}/users/${A}/sessions/${i}/events/${n}/graph`;return this.http.get(o)}static \u0275fac=function(e){return new(e||t)(Xo(Nr))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var w7=class t{route=w(ll);constructor(){}isImportSessionEnabled(){return sA(!0)}isEditFunctionArgsEnabled(){return this.route.queryParams.pipe(xA(A=>A[IV]==="true"))}isSessionUrlEnabled(){return sA(!0)}isA2ACardEnabled(){return this.route.queryParams.pipe(xA(A=>A[BV]==="true"))}isApplicationSelectorEnabled(){return sA(!0)}isAlwaysOnSidePanelEnabled(){return sA(!1)}isTraceEnabled(){return sA(!0)}isArtifactsTabEnabled(){return sA(!0)}isEvalEnabled(){return sA(!0)}isEvalV2Enabled(){return this.route.queryParams.pipe(xA(A=>A[uV]==="true"))}isTestsEnabled(){return this.route.queryParams.pipe(xA(A=>A[hV]==="true"))}isTokenStreamingEnabled(){return sA(!0)}isMessageFileUploadEnabled(){return sA(!0)}isManualStateUpdateEnabled(){return sA(!0)}isBidiStreamingEnabled(){return sA(!0)}isExportSessionEnabled(){return sA(!0)}isEventFilteringEnabled(){return sA(!1)}isDeleteSessionEnabled(){return sA(!0)}isLoadingAnimationsEnabled(){return sA(!0)}isSessionsTabReorderingEnabled(){return sA(!1)}isSessionFilteringEnabled(){return sA(!1)}isSessionReloadOnNewMessageEnabled(){return sA(!1)}isUserIdOnToolbarEnabled(){return sA(!0)}isDeveloperUiDisclaimerEnabled(){return sA(!0)}isFeedbackServiceEnabled(){return sA(!1)}isInfinityMessageScrollingEnabled(){return sA(!1)}isMoreOptionsButtonHidden(){return sA(!1)}isNewSessionButtonEnabled(){return sA(!0)}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var y7=class t{sendFeedback(A,e,i){return sA(void 0)}getFeedback(A,e){return sA(void 0)}deleteFeedback(A,e){return sA(void 0)}getPositiveFeedbackReasons(){return sA([])}getNegativeFeedbackReasons(){return sA([])}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var wze=(()=>{var t=import.meta.url;return function(A={}){var e,i=A,n,o,a=new Promise((y,M)=>{n=y,o=M});i.agerrMessages=[],i.stderrMessages=[],E=y=>i.stderrMessages.push(y);var r=Object.assign({},i),s="./this.program",l=(y,M)=>{throw M},c="",C,d;typeof document<"u"&&document.currentScript&&(c=document.currentScript.src),t&&(c=t),c.startsWith("blob:")?c="":c=c.substr(0,c.replace(/[?#].*/,"").lastIndexOf("/")+1),C=y=>fetch(y,{credentials:"same-origin"}).then(M=>M.ok?M.arrayBuffer():Promise.reject(new Error(M.status+" : "+M.url)));var B=console.log.bind(console),E=console.error.bind(console);Object.assign(i,r),r=null;var u;function m(y){for(var M=atob(y),R=new Uint8Array(M.length),Z=0;Zy.startsWith(st);function He(){var y="data:application/octet-stream;base64,AGFzbQEAAAABmAd0YAJ/fwF/YAF/AGABfwF/YAN/f38Bf2ACf38AYAN/f38AYAR/f39/AX9gBH9/f38AYAV/f39/fwF/YAZ/f39/f38Bf2AFf39/f38AYAZ/f39/f38AYAh/f39/f39/fwF/YAAAYAABf2AHf39/f39/fwF/YAF8AXxgAn9/AXxgAX8BfGAHf39/f39/fwBgA39/fwF8YAd/f39/fHx/AGACf3wAYAR8fHx/AXxgAnx8AXxgA398fABgBX9+fn5+AGAEf39/fABgCn9/f39/f39/f38Bf2ADf35/AX5gBH9/fHwBf2ADfHx8AXxgCX9/f39/f39/fwBgA39/fgBgAAF8YAR/f39/AXxgAn9/AX5gBX9/f39+AX9gA39/fgF/YAp/f39/f39/f39/AGAEf35+fwBgBH9/fH8AYAJ/fgBgAnx/AXxgBH9/f3wBf2ABfwF+YAJ/fgF/YAJ/fAF/YAN8fH8BfGADf3x/AGAIf39/f39/f38AYAV/f39/fAF/YAt/f39/f39/f39/fwF/YAN/f3wAYAV/f35/fwBgBH9/fH8Bf2AAAX5gB39/f398f38Bf2AFf39/f3wAYAN/f3wBf2ADf35/AX9gAn19AX1gBH9/fX8AYAZ/fHx8fHwBfGADf39/AX5gDH9/f39/f39/f39/fwF/YAV/f3x/fwF/YAd/f398fH9/AGAGf39/fH9/AGAGf39/f35/AX9gD39/f39/f39/f39/f39/fwBgBH9/f38BfmAGf3x/f39/AX9gB39/f39/fn4Bf2AGf39/f35+AX9gB39/f39+f38Bf2AGf39/f39+AX9gAn5/AGAEf35/fwF/YAR/f3x8AXxgBX9/fH9/AGAJf39/f39/f39/AX9gBH9/fHwAYAR+fn5+AX9gAn99AX9gAn5/AX9gCH9/f398fHx/AGADf31/AGAGf39+fn5/AGABfAF/YAJ+fgF9YAJ/fQBgBH9/f34BfmAGf31/f39/AGADf3x8AX9gBX9/f3x/AGAFf398fH8AYAZ8fHx/f38AYAJ+fgF8YAJ8fwF/YAR/fHx8AGAGf39/f398AGAEf3x/fwBgBnx8f3x8fwBgB398fHx8fHwAYAV/fHx8fAF/YAF/AX1gA39/fwF9YAN+fn4Bf2AEf35+fgBgBH98f38Bf2AKf3x/f39/f39/fwBg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AgBB9ekDIAJBEGoQIBoQLwALFwBBAUF/IAAgASABEEAiABChAiAARhsLJQEBfyAAKAIsIgBBAEGAASAAKAIAEQMAIgAEfyAAKAIQBUEACws0AQF/AkAgACABEOYBIgFFDQAgACgCLCIAIAFBCCAAKAIAEQMAIgBFDQAgACgCECECCyACC28BAX8jAEEgayIDJAAgA0IANwMYIANCADcDECADIAI2AgwCQCADQRBqIAEgAhCzCiIBQQBIBEAgA0H8gAsoAgAQswU2AgBBioAEIAMQNwwBCyAAIANBEGoiABCNBSABEKECGiAAEFwLIANBIGokAAszAQF/IAIEQCAAIQMDQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQQFrIgINAAsLIAALJAEBfyMAQRBrIgMkACADIAI2AgwgACABIAIQzQsgA0EQaiQAC6QBAQN/IwBBEGsiAiQAAkAgABAtIgMgACgCAEEDcSAAKQMIEOgJIgEEfyABKAIYBUEACyIBDQAgAygCTCIBKAIAKAIMIgMEQCABKAIIIAAoAgBBA3EgACkDCCADESYAIgENAQtBACEBIAAoAgBBA3FBAkYNACACIAApAwg3AwggAkElNgIAQfDdCiEBQfDdCkEgQeAXIAIQtAEaCyACQRBqJAAgAQsPACAAIAEgAiADQQAQ8QsLQwAgACAAIAGlIAG9Qv///////////wCDQoCAgICAgID4/wBWGyABIAC9Qv///////////wCDQoCAgICAgID4/wBYGwsUACAAECgEQCAALQAPDwsgACgCBAsVACAAEKMBBEAgACgCBA8LIAAQpQMLowEBAn8CQAJAIAAEQCAAKAIIIgMgACgCDCICRgRAIAAgA0EBdEEBIAMbIAEQ/AEgACgCDCECCyACRQ0BIAAoAggiAyACTw0CIAAgACgCBCADaiACcCICIAEQ3wEaIAAgACgCCEEBajYCCCACDwtB0dMBQYm4AUE7QdbDARAAAAtBr5UDQYm4AUHDAEHWwwEQAAALQZoMQYm4AUHEAEHWwwEQAAALJgAgACABEK4HIgFFBEBBAA8LIAAQ7AEoAgwgASgCEEECdGooAgALLgAgAC0ADyIAQQFqQf8BcUERTwRAQbS7A0Gg/ABB3ABB6ZcBEAAACyAAQf8BRwtDACAAIAAgAaQgAb1C////////////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AkHYmQshASAAQdiZC0EYEM4BRQ0CQRgQTyIBRQ0BCyABIAIpAgg3AgAgASACKQIYNwIQIAEgAikCEDcCCAwBC0EAIQELIAJBIGokAEHkmwtBAToAAEHgmwsgATYCACABC60BAgF/An4CQAJAIAAEQCABBEAgAEEAEL8CIgMoAvQDDQIgAykDsAQiBCABQQhrIgEoAgBBCGqtIgVUDQMgAyAEIAV9IgQ3A7AEIAMoAsAEQQJPBEAgA0EtIAUgBCADKQO4BCACEJEECyABIAAoAhQRAQALDwtBsdQBQZ+9AUGKB0GonwEQAAALQbDSAUGfvQFBkQdBqJ8BEAAAC0HjqAFBn70BQZoHQaifARAAAAsJACAAQQAQ2AYLvwoCBX8PfiMAQeAAayIFJAAgBEL///////8/gyEMIAIgBIVCgICAgICAgICAf4MhCiACQv///////z+DIg1CIIghDiAEQjCIp0H//wFxIQcCQAJAIAJCMIinQf//AXEiCUH//wFrQYKAfk8EQCAHQf//AWtBgYB+Sw0BCyABUCACQv///////////wCDIgtCgICAgICAwP//AFQgC0KAgICAgIDA//8AURtFBEAgAkKAgICAgIAghCEKDAILIANQIARC////////////AIMiAkKAgICAgIDA//8AVCACQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQogAyEBDAILIAEgC0KAgICAgIDA//8AhYRQBEAgAiADhFAEQEKAgICAgIDg//8AIQpCACEBDAMLIApCgICAgICAwP//AIQhCkIAIQEMAgsgAyACQoCAgICAgMD//wCFhFAEQCABIAuEQgAhAVAEQEKAgICAgIDg//8AIQoMAwsgCkKAgICAgIDA//8AhCEKDAILIAEgC4RQBEBCACEBDAILIAIgA4RQBEBCACEBDAILIAtC////////P1gEQCAFQdAAaiABIA0gASANIA1QIgYbeSAGQQZ0rXynIgZBD2sQsQFBECAGayEGIAUpA1giDUIgiCEOIAUpA1AhAQsgAkL///////8/Vg0AIAVBQGsgAyAMIAMgDCAMUCIIG3kgCEEGdK18pyIIQQ9rELEBIAYgCGtBEGohBiAFKQNIIQwgBSkDQCEDCyADQg+GIgtCgID+/w+DIgIgAUIgiCIEfiIQIAtCIIgiEyABQv////8P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AQRAIAEoAgQiAkUNAQNAIAEgAigCADYCBCACIAE2AgAgAiIBKAIEIgINAAsgBCABNgIADAELCyAAKAIIIQULIAAgAzYCDCAAIAVBgCByNgIIIAMLoQEBAn8CQCAAECVFIAIgAWtBBUhyDQAgASACEJYFIAJBBGshBCAAEEYiAiAAECVqIQUCQANAAkAgAiwAACEAIAEgBE8NACAAQQBMIABB/wBOckUEQCABKAIAIAIsAABHDQMLIAFBBGohASACIAUgAmtBAUpqIQIMAQsLIABBAEwgAEH/AE5yDQEgAiwAACAEKAIAQQFrSw0BCyADQQQ2AgALC4QBAQJ/IwBBEGsiAiQAIAAQowEEQCAAKAIAIAAQ9gIaEKEFCyABECUaIAEQowEhAyAAIAEoAgg2AgggACABKQIANwIAIAFBABDTASACQQA6AA8gASACQQ9qENIBAkAgACABRiIBIANyRQ0ACyAAEKMBIAFyRQRAIAAQpQMaCyACQRBqJAALUAEBfgJAIANBwABxBEAgASADQUBqrYYhAkIAIQEMAQsgA0UNACACIAOtIgSGIAFBwAAgA2utiIQhAiABIASGIQELIAAgATcDACAAIAI3AwgLzgkCBH8EfiMAQfAAayIGJAAgBEL///////////8AgyEJAkACQCABUCIFIAJC////////////AIMiCkKAgICAgIDA//8AfUKAgICAgIDAgIB/VCAKUBtFBEAgA0IAUiAJQoCAgICAgMD//wB9IgtCgICAgICAwICAf1YgC0KAgICAgIDAgIB/URsNAQsgBSAKQoCAgICAgMD//wBUIApCgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhBCABIQMMAgsgA1AgCUKAgICAgIDA//8AVCAJQoCAgICAgMD//wBRG0UEQCAEQoCAgICAgCCEIQQMAgsgASAKQoCAgICAgMD//wCFhFAEQEKAgICAgIDg//8AIAIgASADhSACIASFQoCAgICAgICAgH+FhFAiBRshBEIAIAEgBRshAwwCCyADIAlCgICAgICAwP//AIWEUA0BIAEgCoRQBEAgAyAJhEIAUg0CIAEgA4MhAyACIASDIQQMAgsgAyAJhFBFDQAgASEDIAIhBAwBCyADIAEgASADVCAJIApWIAkgClEbIggbIQogBCACIAgbIgxC////////P4MhCSACIAQgCBsiC0IwiKdB//8BcSEHIAxCMIinQf//AXEiBUUEQCAGQeAAaiAKIAkgCiAJIAlQIgUbeSAFQQZ0rXynIgVBD2sQsQEgBikDaCEJIAYpA2AhCkEQIAVrIQULIAEgAyAIGyEDIAtC////////P4MhASAHBH4gAQUgBkHQAGogAyABIAMgASABUCIHG3kgB0EGdK18pyIHQQ9rELEBQRAgB2shByAGKQNQIQMgBikDWAtCA4YgA0I9iIRCgICAgICAgASEIQEgCUIDhiAKQj2IhCACIASFIQQCfiADQgOGIgIgBSAHRg0AGiAFIAdrIgdB/wBLBEBCACEBQgEMAQsgBkFAayACIAFBgAEgB2sQsQEgBkEwaiACIAEgBxCnAyAGKQM4IQEgBikDMCAGKQNAIAYpA0iEQgBSrYQLIQlCgICAgICAgASEIQsgCkIDhiEKAkAgBEIAUwRAQgAhA0IAIQQgCSAKhSABIAuFhFANAiAKIAl9IQIgCyABfSAJIApWrX0iBEL/////////A1YNASAGQSBqIAIgBCACIAQgBFAiBxt5IAdBBnStfKdBDGsiBxCxASAFIAdrIQUgBikDKCEEIAYpAyAhAgwBCyAJIAp8IgIgCVStIAEgC3x8IgRCgICAgICAgAiDUA0AIAlCAYMgBEI/hiACQgGIhIQhAiAFQQFqIQUgBEIBiCEECyAMQoCAgICAgICAgH+DIQMgBUH//wFOBEAgA0KAgICAgIDA//8AhCEEQgAhAwwBC0EAIQcCQCAFQQBKBEAgBSEHDAELIAZBEGogAiAEIAVB/wBqELEBIAYgAiAEQQEgBWsQpwMgBikDACAGKQMQIAYpAxiEQgBSrYQhAiAGKQMIIQQLIARCPYYgAkIDiIQhASAEQgOIQv///////z+DIAetQjCGhCADhCEEAkACQCACp0EHcSIFQQRHBEAgBCABIAEgBUEES618IgNWrXwhBAwBCyAEIAEgASABQgGDfCIDVq18IQQMAQsgBUUNAQsLIAAgAzcDACAAIAQ3AwggBkHwAGokAAtrAQF/IwBBgAJrIgUkACAEQYDABHEgAiADTHJFBEAgBSABIAIgA2siA0GAAiADQYACSSIBGxA4GiABRQRAA0AgACAFQYACEKQBIANBgAJrIgNB/wFLDQALCyAAIAUgAxCkAQsgBUGAAmokAAslAQF/IwBBEGsiBCQAIAQgAzYCDCAAIAEgAiADEGAgBEEQaiQAC8UEAQZ/IAAhBSMAQdABayIEJAAgBEIBNwMIAkAgASACbCIIRQ0AIAQgAjYCECAEIAI2AhRBACACayEJIAIiACEHQQIhBgNAIARBEGogBkECdGogACIBIAIgB2pqIgA2AgAgBkEBaiEGIAEhByAAIAhJDQALAkAgBSAIaiAJaiIBIAVNBEBBASEADAELQQEhBkEBIQADQAJ/IAZBA3FBA0YEQCAFIAIgAyAAIARBEGoQoQcgBEEIakECELkFIABBAmoMAQsCQCAEQRBqIgcgAEEBayIGQQJ0aigCACABIAVrTwRAIAUgAiADIARBCGogAEEAIAcQuAUMAQsgBSACIAMgACAEQRBqEKEHCyAAQQFGBEAgBEEIakEBELcFQQAMAQsgBEEIaiAGELcFQQELIQAgBCAEKAIIQQFyIgY2AgggAiAFaiIFIAFJDQALCyAFIAIgAyAEQQhqIABBACAEQRBqELgFAkAgAEEBRw0AIAQoAghBAUcNACAEKAIMRQ0BCwNAAn8gAEEBTARAIARBCGoiASABEOELIgEQuQUgACABagwBCyAEQQhqIgFBAhC3BSAEIAQoAghBB3M2AgggAUEBELkFIAUgCWoiCCAEQRBqIgcgAEECayIGQQJ0aigCAGsgAiADIAEgAEEBa0EBIAcQuAUgAUEBELcFIAQgBCgCCEEBcjYCCCAIIAIgAyABIAZBASAHELgFIAYLIQAgBSAJaiEFIABBAUcNACAEKAIIQQFHDQAgBCgCDA0ACwsgBEHQAWokAAtKAQF/IAAgAUkEQCAAIAEgAhAfDwsgAgRAIAAgAmohAyABIAJqIQEDQCADQQFrIgMgAUEBayIBLQAAOgAAIAJBAWsiAg0ACwsgAAtZAQF/AkACQAJAAkAgASgCACICQQNxBH8gAgUgACABKAJERw0EIAEoAgALQQNxQQFrDgMAAQECCyAAIAEQ0QQPCyAAIAEQjQYPCyABELkBDwtB9vkAQQAQNwteAQF/IwBBIGsiAiQAIAIgACgCADYCCCACIAAoAgQ2AgwgAiAAKAIINgIQIABCADcCBCACIAArAxA5AxggACABEJ4BIAEgAkEIaiIAEJ4BIABBBHIQ2QEgAkEgaiQAC8EGAQR/IAAoAkQhAyAAEHkhAQNAIAEEQCABEHggARC5ASEBDAELCyAAEBwhAQNAIAEEQCAAIAEQHSAAIAEQ0QQhAQwBCwsgACgCTEEsahDgCSAAKAJMQThqEOAJIAAgABDPBwJAAkACQAJAAkACQCAAKAIwIgEEQCABELsDDQECQCAAQTBqIgEEQCABKAIAIgIEfyACKAIAEBggASgCAAVBAAsQGCABQQA2AgAMAQtBpdUBQYy+AUGoBEGanwEQAAALIAAoAiwQmgENAgJAIAAgACgCLBDmAg0AIAAoAjgQmgENBCAAIAAoAjgQ5gINACAAKAI0EJoBDQUgACAAKAI0EOYCDQAgACgCPBCaAQ0GIAAgACgCPBDmAg0AIAAoAkAQmgENByAAIAAoAkAQ5gINACAALQAYQSBxBEBBACECIAAQ7AEiAQRAIAAgARDKCyAAIAEoAgAQ4gELAkAgAEEAELECIgFFDQBBASECIAAgASgCCBDmAg0AIAAgASgCDBDmAg0AIAAgASgCEBDmAg0AIAAgASgCABDiAUEAIQILIAINAQsgABCzByAAQQAgACkDCBC/BgJAIAMEQCADIAAQ/gwMAQsDQCAAKAJMIgEoAigiAgRAIAIoAgAhAyAAKAJMIgIoAigiAUUNAQJAIAMgASgCAEYEQCACIAEoAgg2AigMAQsDQCABIgIoAggiASgCACADRw0ACyACIAEoAgg2AgggAiEBCyABEBgMAQsLIAEoAgggASgCACgCEBEBAAJ/QQAiASAAEL4DIgMoAgAiAkUNABogAiACKAIARQ0AGgN/IAIoAgAhBCABIAIoAgh2BH8gBBAYIAMoAgAFIAQgAUECdGooAgAiBEF/RwRAIAQQGCADKAIAIQILIAFBAWohAQwBCwsLEBggA0EANgIAIAAoAkwQGAsgABAYCw8LQaXVAUG4+wBBOEGVCRAAAAtBo6cDQba8AUH1AEHAkwEQAAALQcGcA0G2vAFB9wBBwJMBEAAAC0GrnQNBtrwBQfoAQcCTARAAAAtB7ZwDQba8AUH8AEHAkwEQAAALQdecA0G2vAFB/wBBwJMBEAAAC0GWnQNBtrwBQYIBQcCTARAAAAuhBQIOfwJ8IwBB4ABrIgUkAEGk/gpBpP4KKAIAQQFqIg42AgBBmP4KKAIAIgYgA0E4bGohCSAGIAJBOGxqIgpBEGohDEQAAAAAAAAQwCESA0AgBEEERkUEQAJAIAwgBEECdGooAgAiB0EATA0AIAogBiAHQThsaiAJEKkOIhMgEmRFDQAgEyESIAQhCAsgBEEBaiEEDAELCyAJQRBqIQ9EAAAAAAAAEMAhEkEAIQRBACEHA0AgBEEERkUEQAJAIA8gBEECdGooAgAiDUEATA0AIAkgBiANQThsaiAKEKkOIhMgEmRFDQAgEyESIAQhBwsgBEEBaiEEDAELCyAJQSBqIg0gB0ECdGooAgAhBiAKQSBqIhAgCEECdCIRaigCACEHQaD+CkGg/gooAgAiBEECaiIINgIAIAAgBEEBaiIEEO4BIAI2AgAgACAIEO4BIAM2AgAgBUHQAGogACAHEP0DIAUoAlQhCyAAIAQQ7gEgCzYCBCAFQUBrIAAgBxD9AyAAIAUoAkQQ7gEgBDYCCCAAIAQQ7gEgCDYCCCAAIAgQ7gEgBDYCBCAFQTBqIAAgBhD9AyAFKAI4IQsgACAIEO4BIAs2AgggBUEgaiAAIAYQ/QMgACAFKAIoEO4BIAg2AgQgACAHEO4BIAY2AgQgACAGEO4BIAc2AgggCSgCMCEGIAooAjAhCyAMIBFqIAM2AgAgECALQQJ0IgNqIAQ2AgAgBUEQaiAAIAQQ/QMgBSAAIAUoAhQQ/QMgAyAMaiAFKAIANgIAIA0gBkECdCIAaiAINgIAIAAgD2ogAjYCACAKIAooAjBBAWo2AjAgCSAJKAIwQQFqNgIwQZz+CigCACIAIAFBAnRqIAc2AgAgACAOQQJ0aiAENgIAIAVB4ABqJAAgDgtFAAJAIAAQKARAIAAQJEEPRg0BCyAAQQAQ1gQLAkAgABAoBEAgAEEAOgAPDAELIABBADYCBAsgABAoBH8gAAUgACgCAAsLQQEBfyAABEAgACgCABAYIAAoAkghAQJAIAAtAFJBAUYEQCABRQ0BIAFBARCqBgwBCyABIAAoAkwQ9QgLIAAQGAsLkgIBBH8jAEEgayIEJAAgABBLIgMgAWoiASADQQF0QYAIIAMbIgIgASACSxshASAAECQhBQJAAkACQAJAIAAtAA9B/wFGBEAgA0F/Rg0CIAAoAgAhAiABRQRAIAIQGEEAIQIMAgsgAiABEGoiAkUNAyABIANNDQEgAiADakEAIAEgA2sQOBoMAQtBACABIAFBARBOIgIbDQMgAiAAIAUQHxogACAFNgIECyAAQf8BOgAPIAAgATYCCCAAIAI2AgAgBEEgaiQADwtBjsADQdL8AEHNAEG9swEQAAALIAQgATYCAEGI9ggoAgBB9ekDIAQQIBoQLwALIAQgATYCEEGI9ggoAgBB9ekDIARBEGoQIBoQLwALpgEBAn8jAEEQayIDJAACQAJAIAAEQCAAKAIIIgRFDQEgAUUNAiADIAApAgg3AwggAyAAKQIANwMAIAAgAyAEQQFrEBkgAhDfASEEIAIEQCABIAQgAhAfGgsgACAAKAIIQQFrNgIIIANBEGokAA8LQdHTAUGJuAFBmANB4MQBEAAAC0H0lgNBibgBQZkDQeDEARAAAAtB/NQBQYm4AUGaA0HgxAEQAAALCQAgACABNgIEC54CAQR/IAACfyAAKAIEIgIgACgCCEkEQCACIAEoAgA2AgAgAkEEagwBCyMAQSBrIgUkACAFQQxqIAAgACgCBCAAKAIAa0ECdUEBahDuByAAKAIEIAAoAgBrQQJ1IABBCGoQqg0iAigCCCABKAIANgIAIAIgAigCCEEEajYCCCACKAIEIQMgACgCACEBIAAoAgQhBANAIAEgBEcEQCADQQRrIgMgBEEEayIEKAIANgIADAELCyACIAM2AgQgACgCACEBIAAgAzYCACACIAE2AgQgACgCBCEBIAAgAigCCDYCBCACIAE2AgggACgCCCEBIAAgAigCDDYCCCACIAE2AgwgAiACKAIENgIAIAAoAgQgAhCpDSAFQSBqJAALNgIECyQAIAAgASACQQJ0aigCACgCACIBKQMANwMAIAAgASkDCDcDCAs6AAJAIAAQKARAIAAQJEEPRg0BCyAAQQAQfwsCQCAAECgEQCAAQQA6AA8MAQsgAEEANgIECyAAEIcFCxEAIABBA0EIQYCAgIACEOYGCyoBAX8CQCAAKAI8IgVFDQAgBSgCSCIFRQ0AIAAgASACIAMgBCAFEQoACwsxAQF/QQEhAQJAIAAgACgCSEYNACAAECFB4jdBBxCAAkUNACAAQeI3ECcQaCEBCyABC0ECAn8BfCMAQRBrIgIkACAAIAJBDGoQ4QEhBAJAIAAgAigCDCIDRgRAQQAhAwwBCyABIAQ5AwALIAJBEGokACADC2IAAkAgAARAIAFFDQEgACADEIwCIAEgACgCADYAACACBEAgAiAAKAIINgIACyAAQgA3AgAgAEIANwIIDwtB0dMBQYm4AUGoA0HyxAEQAAALQe7UAUGJuAFBqQNB8sQBEAAACxEAIAAgASABKAIAKAIUEQQACw8AIAAgACgCACgCEBECAAsGABCRAQALCwAgAEGYnQsQqQILCwAgAEGgnQsQqQILGgAgACABELQFIgBBACAALQAAIAFB/wFxRhsLQwEDfwJAIAJFDQADQCAALQAAIgQgAS0AACIFRgRAIAFBAWohASAAQQFqIQAgAkEBayICDQEMAgsLIAQgBWshAwsgAwsRACAAQQJBBEGAgICABBDmBgs+ACABBEAgAAJ/IAEgAhDNASICBEAgAiABawwBCyABEEALNgIEIAAgATYCAA8LQd7TAUGJ+wBBHEHPFhAAAAsRACAAIAEgACgCACgCLBEAAAsMACAAIAEtAAA6AAALJQAgACAALQALQYABcSABQf8AcXI6AAsgACAALQALQf8AcToACwsoAQF/IAAoAkQiAUEBRgRAIAAQ5wsgAEEANgJEDwsgACABQQFrNgJEC5kBAQR/AkACQEH8ggsoAgAiBCAAKAJMIgNB/////3txRgRAQX8hAiAAKAJEIgFB/////wdGDQIgACABQQFqNgJEDAELIABBzABqIQFBfyECAkAgA0EASARAIAFBADYCAAwBCyADDQILIAEgASgCACIBIAQgARs2AgAgAQ0BIABB5IILEOYLC0EAIQILIAIEQCAAQeSCCxDmCwsLMwEBfAJ+EAJEAAAAAABAj0CjIgCZRAAAAAAAAOBDYwRAIACwDAELQoCAgICAgICAgH8LC3YBAX5BoNYKQazWCjMBAEGm1go1AQBBqtYKMwEAQiCGhEGg1go1AQBBpNYKMwEAQiCGhH58IgA9AQBBpNYKIABCIIg9AQBBotYKIABCEIg9AQAgAEL///////8/g0IEhkKAgICAgICA+D+Ev0QAAAAAAADwv6ALZAICfwJ8IAFBACABQQBKGyEFIAAgASADbEEDdGohAyAAIAEgAmxBA3RqIQADQCAEIAVGRQRAIAAgBEEDdCIBaisDACABIANqKwMAoSIHIAeiIAagIQYgBEEBaiEEDAELCyAGnwtXAQF/IAAoAgQiAARAIAAgACgCBCIBQQFrNgIEIAFFBEAgACAAKAIAKAIIEQEAAkAgAEEIaiIBKAIABEAgARD5BkF/Rw0BCyAAIAAoAgAoAhARAQALCwsLGwAgACABIAJBBEECQYCAgIAEQf////8DEKMKCywAIAJFBEAgACgCBCABKAIERg8LIAAgAUYEQEEBDwsgACgCBCABKAIEEE1FCwwAIAAgASgCADYCAAtDAQF/IwBBEGsiBSQAIAUgAjYCDCAFIAQ2AgggBUEEaiAFQQxqEI4CIAAgASADIAUoAggQYCEAEI0CIAVBEGokACAACwkAIAAQRhCBBwtFAAJAIAAEQCACRSABRXIgACgCACIAckUNASAAIAEgAmxqDwtB0dMBQYm4AUEdQcUaEAAAC0H/mwNBibgBQR5BxRoQAAALfwICfwF+IwBBEGsiAyQAIAACfiABRQRAQgAMAQsgAyABIAFBH3UiAnMgAmsiAq1CACACZyICQdEAahCxASADKQMIQoCAgICAgMAAhUGegAEgAmutQjCGfCABQYCAgIB4ca1CIIaEIQQgAykDAAs3AwAgACAENwMIIANBEGokAAsuAgF/AXwjAEEQayICJAAgAiAAIAFBARCcByACKQMAIAIpAwgQlwcgAkEQaiQAC5QBAQR/IAAQLSEDIAAgAUEAEGsiAkUEQA8LIAAoAhAiBSEBAkADQCABKAIEIgQgAkYNASAEIgEgBUcNAAtBh8EBQdC+AUGFAUG/tgEQAAALIAEgAigCBDYCBAJAIAAtAABBA3FFBEAgBCAAIAIQqgwMAQsgAxA5IABBGyACQQAQyAMaCyADIAIoAgBBABCMARogAhAYC9UBAQR/IwBBEGsiBSQAQcgAEPgDIgYCfyACRQRAQeDuCSEEQfDvCQwBCyACKAIAIgRB4O4JIAQbIQQgAigCBCIDQfDvCSADGws2AgQgBiAENgIAQdAAEPgDIgMgBjYCTCADIAMoAgBBfHE2AgAgAyABKAIAIgE2AhggAyABQQhyOgAYIAMgAzYCSCADIAIgBCgCABEAACEBIAMoAkwgATYCCCADQQAgACAFQQhqQQEQlQMEQCADIAUpAwg3AwgLIAMQxQ0iAEEAIAAQ7wQgBUEQaiQAIAALDgAgACABIAIQqAgQ9Q4LtwIBA38jAEEQayIDJAAgACgCPCEEIAAoAhAiAiABNgKoAQJAIAFFIARFcg0AA0AgASgCACIARQ0BIAFBBGohASAAQeKmARBjBEAgAkEDNgKYAQwBCyAAQfitARBjBEAgAkEBNgKYAQwBCyAAQdqnARBjBEAgAkECNgKYAQwBCwJAIABBsy0QY0UEQCAAQfCbARBjRQ0BCyACQQA2ApgBDAELIABByaUBEGMEQCACQoCAgICAgICAwAA3A6ABDAELIABB8fcAEGMEQANAIAAtAAAgAEEBaiEADQALIAIgABCuAjkDoAEMAQsgAEGurQEQYwRAIAJBATYCnAEMAQsgAEGsrQEQYwRAIAJBADYCnAEMAQsgAEHRqwEQYw0AIAMgADYCAEHElwQgAxAqDAALAAsgA0EQaiQACyAAIAEoAhggAEYEQCABQRxqDwsgACgCMCABKQMIELcIC/kBAQN/IAAoAiAoAgAhBAJAAn8gAUUEQCAAKAIIIgNBgCBxRQ0CIAAoAgwMAQsgACgCGA0BIAAoAgghAyABCyECIAAgA0H/X3E2AggCQCADQQFxBEAgAEEANgIMIAFFBEAgACgCECIBIAAoAhRBAnRqIQMDQCABIANPDQMgASgCACIABEAgASACNgIAIAAoAgAhAiAAQQA2AgALIAFBBGohAQwACwALIABBADYCGANAIAJFDQIgAigCACAAIAJBICAEEQMAGiECDAALAAsgACADQQxxBH8gAgUgACACNgIQQQALNgIMIAEEQCAAIAAoAhhBAWs2AhgLCwsLaAECfyMAQRBrIgIkACACQgA3AwggAkIANwMAIAIgASsDABCWCiAAIAIQjQUiAyADEEAQoQIaIABBvs4DQQEQoQIaIAIgASsDCBCWCiAAIAIQjQUiACAAEEAQoQIaIAIQXCACQRBqJAALOgEBfwJAIAJFDQAgABAtIAIQywMiAyACRw0AIAMQdkUNACAAIAEgAkEBEMMLDwsgACABIAJBABDDCwtfAQJ/IAJFBEBBAA8LIAAtAAAiAwR/AkADQCADIAEtAAAiBEcgBEVyDQEgAkEBayICRQ0BIAFBAWohASAALQABIQMgAEEBaiEAIAMNAAtBACEDCyADBUEACyABLQAAawsuABDjCyAAKQMAQcSBCxAPQeyBC0H8gQtB+IELQeSBCygCABsoAgA2AgBBxIELCwwAIABBlZYFQQAQaws9AQJ/IABBACAAQQBKGyEAA0AgACAERkUEQCADIARBA3QiBWogAiABIAVqKwMAojkDACAEQQFqIQQMAQsLC54BAQN/IwBBEGsiAyQAIAFBAE4EQCAAQRRqIQIDQCABIAAoAAhJRQRAIAJCADcCACACQgA3AgggAEEQECYhBCAAKAIAIARBBHRqIgQgAikCADcCACAEIAIpAgg3AggMAQsLIAAoAgAgAyAAKQIINwMIIAMgACkCADcDACADIAEQGSADQRBqJABBBHRqDwtBhJgDQZq7AUHgAEHRJRAAAAsJACAAQSgQoQoLZAECfwJAIAAoAjwiBEUNACAEKAJoIgVFDQAgACgCECgCmAFFDQAgAC0AmQFBIHEEQCAAIAEgAiADIAURBwAPCyAAIAAgASACQRAQGiACEJgCIgAgAiADIAQoAmgRBwAgABAYCwu/AQECfyMAQSBrIgQkAAJAAkBBfyADbiIFIAFLBEAgAiAFSw0BAkAgAiADbCICRQRAIAAQGEEAIQAMAQsgACACEGoiAEUNAyACIAEgA2wiAU0NACAAIAFqQQAgAiABaxA4GgsgBEEgaiQAIAAPC0GOwANB0vwAQc0AQb2zARAAAAsgBCADNgIEIAQgAjYCAEGI9ggoAgBBpuoDIAQQIBoQLwALIAQgAjYCEEGI9ggoAgBB9ekDIARBEGoQIBoQLwALoQEBAn8CQAJAIAEQQCICRQ0AIAAQSyAAECRrIAJJBEAgACACELcCCyAAECQhAyAAECgEQCAAIANqIAEgAhAfGiACQYACTw0CIAAgAC0ADyACajoADyAAECRBEEkNAUGTtgNBoPwAQZcCQcTqABAAAAsgACgCACADaiABIAIQHxogACAAKAIEIAJqNgIECw8LQZLOAUGg/ABBlQJBxOoAEAAAC2UBAX8CQCABKwMAIAErAxBjRQ0AIAErAwggASsDGGNFDQAgACAAKAJQIgJBAWo2AlAgACgCVCACQQV0aiIAIAEpAxg3AxggACABKQMQNwMQIAAgASkDCDcDCCAAIAEpAwA3AwALCwcAIAAQVBoLDwAgACAAKAIAKAIMEQIACwcAIAAQJUULEQAgACABIAEoAgAoAhwRBAALEQAgACABIAEoAgAoAhgRBAALLgAgACAAKAIIQYCAgIB4cSABQf////8HcXI2AgggACAAKAIIQYCAgIB4cjYCCAsJACAAIAE2AgALCwAgACABIAIQogULTQEBfyMAQRBrIgMkACAAIAEgAhCMByIABEAgAyAAELMFNgIIIAMgAjYCBCADIAE2AgBBiPYIKAIAQe3+AyADECAaEC8ACyADQRBqJAALEwAgACABIAIgACgCACgCDBEDAAsjAQF/IAJBAE4EfyAAKAIIIAJBAnRqKAIAIAFxQQBHBUEACwsTACAAQSByIAAgAEHBAGtBGkkbC4IBAQJ/IAJFBEBBAA8LIAAtAAAiAwR/AkADQCABLQAAIgRFDQEgAkEBayICRQ0BAkAgAyAERg0AIAMQ/wEgAS0AABD/AUYNACAALQAAIQMMAgsgAUEBaiEBIAAtAAEhAyAAQQFqIQAgAw0AC0EAIQMLIAMFQQALEP8BIAEtAAAQ/wFrCz0BA38jAEEQayIBJAAgASAANgIMIAEoAgwiAigCACIDBEAgAiADNgIEIAIoAggaIAMQGAsgAUEQaiQAIAALCgAgAC0AGEEBcQvdAwMHfwR8AX4jAEHQAGsiByQAIAIoAggiC0EAIAtBAEobIQwgAbchDiAAtyEPIAIoAgQhCAJAA0AgCSAMRwRAIAcgCCkDCDcDSCAIKQMAIRIgByAHKwNIIA6gOQNIIAcgBykDSDcDOCAHIBI3A0AgByAHKwNAIA+gOQNAIAcgBykDQDcDMCMAQSBrIgokACAKIAcpAzg3AxggCiAHKQMwNwMQIAMgCkEIakEEIAMoAgARAwAgCkEgaiQABEBBACEIDAMFIAlBAWohCSAIQRBqIQgMAgsACwsgBiACKAIMQQV0aiIGKwMIEDIhECAGKwMAIREgBCABIAVstyAQoTkDCCAEIAAgBWy3IBEQMqE5AwAgAigCBCEIQQAhCQNAIAkgDEcEQCAHIAgpAwg3A0ggCCkDACESIAcgBysDSCAOoDkDSCAHIAcpA0g3AyggByASNwNAIAcgBysDQCAPoDkDQCAHIAcpA0A3AyAgAyAHQSBqEIcJIAlBAWohCSAIQRBqIQgMAQsLQQEhCEHs2gotAABBAkkNACAEKwMAIQ4gByAEKwMIOQMYIAcgDjkDECAHIAE2AgggByAANgIEIAcgCzYCAEGI9ggoAgBB6PIEIAcQMwsgB0HQAGokACAIC4kBAQF/IwBBIGsiAiQAIAIgASkDCDcDCCACIAEpAwA3AwAgAkEQaiACQYD+CigCAEHaAGwQmwMgASACKQMYNwMIIAEgAikDEDcDACABIAErAwBBiP4KKwMAoTkDACABIAErAwhBkP4KKwMAoTkDCCAAIAEpAwA3AwAgACABKQMINwMIIAJBIGokAAuiEQIGfwx8IwBBoARrIgQkAAJAIAIoAiAiBgRAIABCADcDACAAQgA3AwggACAGKQMYNwMYIAAgBikDEDcDECABKAIEIQUDQCAFIAhGBEAgACAJNgIAIARBwANqIAIQ9AUgASgCGCIIKAIAIQEgBCAEKQPYAzcDmAMgBCAEKQPQAzcDkAMgBCAEKQPIAzcDiAMgBCAEKQPAAzcDgAMgCCABIARBgANqELoOIgFFDQMgASEIA0AgCARAAkAgCCgCBCgCICIGIAJGDQAgBEGgA2ogBhCRCCAEIAQpA8gDNwPoAiAEIAQpA9ADNwPwAiAEIAQpA9gDNwP4AiAEIAQpA6gDNwPIAiAEIAQpA7ADNwPQAiAEIAQpA7gDNwPYAiAEIAQpA8ADNwPgAiAEIAQpA6ADNwPAAiAEKwPYAyEPIAQrA9ADIRAgBCsDyAMhCyAEKwO4AyERIAQrA7ADIQ4gBCsDqAMhDCAEKwPAAyENIAQrA6ADIQoCQCAEQeACaiAEQcACahCJA0UNACALIAwQIyELIA8gERApIQwgDSAKECMhCiAQIA4QKSAKoSAMIAuhoiIMRAAAAAAAAAAAZEUNACAEIAQpA9gDNwP4AyAEIAQpA9ADNwPwAyAEIAQpA8gDNwPoAyAEIAQpA8ADNwPgAwJAIANBBSACIAYQuA4iBSAFQQBIG0ECdGoiBygCACIFBEAgBEGABGogBRCRCCAEIAQpA8gDNwOoAiAEIAQpA9ADNwOwAiAEIAQpA9gDNwO4AiAEIAQpA4gENwOIAiAEIAQpA5AENwOQAiAEIAQpA5gENwOYAiAEIAQpA8ADNwOgAiAEIAQpA4AENwOAAiAEKwOYBCESIAQrA5AEIRMgBCsDiAQhDUQAAAAAAAAAACEKIAQrA/gDIQ8gBCsD8AMhECAEKwPoAyELIAQrA+ADIREgBCsDgAQhDiAEQaACaiAEQYACahCJAwRAIAsgDRAjIQ0gDyASECkhCyARIA4QIyEKIBAgExApIAqhIAsgDaGiIQoLIApEAAAAAAAAAAAgCiAMZBshCgJAIAcoAgAiBSgCIEUNACAEQYAEaiAFEPQFIAQgBCkD6AM3A+gBIAQgBCkD8AM3A/ABIAQgBCkD+AM3A/gBIAQgBCkDiAQ3A8gBIAQgBCkDkAQ3A9ABIAQgBCkDmAQ3A9gBIAQgBCkD4AM3A+ABIAQgBCkDgAQ3A8ABIAQrA/gDIRIgBCsD8AMhEyAEKwPoAyEOIAQrA5gEIQ8gBCsDkAQhECAEKwOIBCENRAAAAAAAAAAAIRQgBCsD4AMhESAEKwOABCELIARB4AFqIARBwAFqEIkDBEAgDiANECMhDiASIA8QKSENIBEgCxAjIQsgEyAQECkgC6EgDSAOoaIhFAsgDCAUY0UNACAUIAoQIyEKCyAKRAAAAAAAAAAAZA0BCyAHIAY2AgAgDCEKCyAKIBWgIRUgCUEBaiEJCyAGKAIgIgVFDQAgBS0AJEUNACAEQaADaiAGEPQFIAQgBCkDyAM3A6gBIAQgBCkD0AM3A7ABIAQgBCkD2AM3A7gBIAQgBCkDqAM3A4gBIAQgBCkDsAM3A5ABIAQgBCkDuAM3A5gBIAQgBCkDwAM3A6ABIAQgBCkDoAM3A4ABIAQrA9gDIAQrA9ADIRAgBCsDyAMgBCsDuAMhESAEKwOwAyEOIAQrA6gDIAQrA8ADIQ0gBCsDoAMhCiAEQaABaiAEQYABahCJA0UNABAjIQsgERApIQwgDSAKECMhCiAQIA4QKSAKoSAMIAuhoiIMRAAAAAAAAAAAZEUNAAJAIANBBSACIAYQuA4iBSAFQQBIG0ECdGoiBygCACIFBEAgBEGABGogBRCRCCAEIAQpA8gDNwNoIAQgBCkD0AM3A3AgBCAEKQPYAzcDeCAEIAQpA4gENwNIIAQgBCkDkAQ3A1AgBCAEKQOYBDcDWCAEIAQpA8ADNwNgIAQgBCkDgAQ3A0AgBCsD2AMhEiAEKwPQAyETIAQrA8gDIQ0gBCsDmAQhDyAEKwOQBCEQIAQrA4gEIQtEAAAAAAAAAAAhCiAEKwPAAyERIAQrA4AEIQ4gBEHgAGogBEFAaxCJAwRAIA0gCxAjIQ0gEiAPECkhCyARIA4QIyEKIBMgEBApIAqhIAsgDaGiIQoLIApEAAAAAAAAAAAgCiAMZBshCgJAIAcoAgAiBSgCIEUNACAEQYAEaiAFEPQFIAQgBCkDyAM3AyggBCAEKQPQAzcDMCAEIAQpA9gDNwM4IAQgBCkDiAQ3AwggBCAEKQOQBDcDECAEIAQpA5gENwMYIAQgBCkDwAM3AyAgBCAEKQOABDcDACAEKwPYAyESIAQrA9ADIRMgBCsDyAMhDiAEKwOYBCEPIAQrA5AEIRAgBCsDiAQhDUQAAAAAAAAAACEUIAQrA8ADIREgBCsDgAQhCyAEQSBqIAQQiQMEQCAOIA0QIyEOIBIgDxApIQ0gESALECMhCyATIBAQKSALoSANIA6hoiEUCyAMIBRjRQ0AIBQgChAjIQoLIApEAAAAAAAAAABkDQELIAcgBjYCACAMIQoLIAogFaAhFSAJQQFqIQkLIAgoAgAhCAwBBSAAIBU5AwggACAJNgIAA0AgASgCACABEBgiAQ0ACwwFCwALAAsCQAJAIAIgASgCACAIQShsaiIHRg0AIAcrAxAiCkQAAAAAAAAAAGQEQCAHKwMYRAAAAAAAAAAAZA0BCyAKRAAAAAAAAAAAYg0BIAcrAxhEAAAAAAAAAABiDQEgBysDACIMIAYrAxAiCmRFDQAgDCAKIAYrAwCgY0UNACAHKwMIIgwgBisDGCIKZEUNACAMIAogBisDCKBjRQ0AIAlBAWohCQsgCEEBaiEIDAELCyAAIAk2AgBB2JoDQdS5AUGhAUGn/gAQAAALQc7wAEHUuQFBsAJBwCsQAAALIARBoARqJAALQQECfwJAIAAoAhAiAigCqAEiAQRAIAAgAUYNASABEIYCIQEgACgCECABNgKoASABDwsgAiAANgKoASAAIQELIAELFQAgACgCPARAIAAoAhAgATkDoAELC24BAX8jAEFAaiIDJAAgAyABKQMANwMAIAMgASkDCDcDCCADIAEpAxg3AyggAyABKQMQNwMgIAMgAysDCDkDOCADIAMrAwA5AxAgAyADKwMgOQMwIAMgAysDKDkDGCAAIANBBCACEEggA0FAayQAC6ECAQN/IwBBEGsiBCQAAkACQCAAQb4uECciAkUNACACLQAAIgNFDQECQCADQTBHBEAgA0Exa0H/AXFBCUkNASACQcunARAuRQRAQQQhAwwECyACQeWjARAuRQRAQQwhAwwEC0ECIQMgAkH6kwEQLkUNAyACQYCYARAuRQ0DIAJBwJYBEC5FBEBBACEDDAQLIAJBrt4AEC5FDQMgAkG+3gAQLkUEQEEIIQMMBAsgAkGPlwEQLkUEQEEGIQMMBAsgAkHclwEQLkUNASACQb6KARAuRQ0BQQohAyACQfgtEC5FDQMgBCACNgIAQZy+BCAEECoMAgtBAiEDDAILQQohAwwBCyABIQMLIAAoAhAiACAALwGIASADcjsBiAEgBEEQaiQAC70CAgJ/A3wjAEFAaiICJAAgACgCECIAKAJ0IQMgAiAAKQMoNwMYIAIgACkDIDcDECACIAApAxg3AwggAiAAKQMQNwMAIAErAzgiBCABQSBBGCADQQFxIgMbaisDAEQAAAAAAADgP6IiBaAhBiAEIAWhIgQgAisDAGMEQCACIAQ5AwALIAFBGEEgIAMbaisDACEFIAErA0AhBCACKwMQIAZjBEAgAiAGOQMQCyAEIAVEAAAAAAAA4D+iIgWgIQYgBCAFoSIEIAIrAwhjBEAgAiAEOQMICyACKwMYIAZjBEAgAiAGOQMYCyACIAIpAwA3AyAgAiACKQMYNwM4IAIgAikDEDcDMCACIAIpAwg3AyggACACKQM4NwMoIAAgAikDMDcDICAAIAIpAyg3AxggACACKQMgNwMQIAJBQGskAAtfAQN/IwBBEGsiAyQAQfH/BCEFA0AgAiAERgRAIANBEGokAAUgACAFEBsaIAMgASAEQQR0aiIFKQMINwMIIAMgBSkDADcDACAAIAMQ6AEgBEEBaiEEQb7OAyEFDAELCwvTAQEDfwJAAkAgAARAIAAoAgQhAgNAIAIEQEEAIQIgACgCDEUNAwNAIAEgAkYEQCAAIAAoAgRBAWsiAjYCBAwDBSAAKAIAIgMtAAAhBCADIANBAWogACgCDCABbEEBayIDELYBGiAAKAIAIANqIAQ6AAAgAkEBaiECDAELAAsACwsgACgACCICIAAoAAxLDQIgACACIAEQ3wEaDwtB0dMBQYm4AUGzAkHQxQEQAAALQa+VA0GJuAFBvQJB0MUBEAAAC0HToQNBibgBQcoCQdDFARAAAAsSACAAKAIAIgAEQCAAEJkLGgsLEQAgACABKAIAEJkLNgIAIAALQQEBfyAAIAE3A3AgACAAKAIsIAAoAgQiAmusNwN4IAAgAVAgASAAKAIIIgAgAmusWXIEfyAABSACIAGnags2AmgLLAEBfyAAIAEQ3AsiAkEBahBPIgEEQCABIAAgAhAfGiABIAJqQQA6AAALIAELhQEBA38DQCAAIgJBAWohACACLAAAIgEQygINAAtBASEDAkACQAJAIAFB/wFxQStrDgMBAgACC0EAIQMLIAAsAAAhASAAIQILQQAhACABQTBrIgFBCU0EQANAIABBCmwgAWshACACLAABIAJBAWohAkEwayIBQQpJDQALC0EAIABrIAAgAxsLCgAgACgCAEEDcQs6AQJ/IABBACAAQQBKGyEAA0AgACADRkUEQCACIANBA3QiBGogASAEaisDADkDACADQQFqIQMMAQsLC14AIABFBEBB7dUBQau6AUHvAEGWnQEQAAALIABBMEEAIAAoAgBBA3FBA0cbaigCKCgCEEHIAWogABD+BSAAQVBBACAAKAIAQQNxQQJHG2ooAigoAhBBwAFqIAAQ/gULfAICfwN8IwBBIGsiAiQAIAEEQEGtvwEhAyABKwMAIQQgASsDCCEFIAErAxAhBiACIAAoAhAoAgQiAUEDTQR/IAFBAnRB4MAIaigCAAVBrb8BCzYCGCACIAY5AxAgAiAFOQMIIAIgBDkDACAAQeCFBCACEB4LIAJBIGokAAsxAQF/IwBBEGsiAiQAIAIgATkDACAAQZSGASACEIQBIAAQjAYgAEEgEH8gAkEQaiQACyIBAX8CQCAAKAI8IgFFDQAgASgCTCIBRQ0AIAAgAREBAAsLzAECAn8FfCAAKwPgAiIGIAArA5AEoiEHIAYgACsDiASiIQYgACsDgAQhCCAAKwP4AyEJAkAgACgC6AJFBEADQCADIARGDQIgAiAEQQR0IgBqIgUgBiAJIAAgAWoiACsDAKCiOQMAIAUgByAIIAArAwigojkDCCAEQQFqIQQMAAsACwNAIAMgBEYNASABIARBBHQiAGoiBSsDCCEKIAAgAmoiACAHIAkgBSsDAKCiOQMIIAAgBiAIIAqgmqI5AwAgBEEBaiEEDAALAAsgAgupAQECfyMAQTBrIgUkACAAIAVBLGoQmgchBgJ/IAAgBSgCLEYEQCAFIAA2AgQgBSABNgIAQYqqASAFECpBAQwBCyADIAZIBEAgBSADNgIYIAUgADYCFCAFIAE2AhBB0KoBIAVBEGoQKkEBDAELIAIgBkoEQCAFIAI2AiggBSAANgIkIAUgATYCIEGpqgEgBUEgahAqQQEMAQsgBCAGNgIAQQALIAVBMGokAAuBAwICfgR/AkACQAJAAkACQCAABEAgAUUEQCAAIAIgAxCYAQ8LIAJFBEAgACABIAMQZwwGCyAAQQAQvwIiBigC9AMNASACIAFBCGsiCCgCACIBayEHIAEgAk8iCUUEQCAGIAetIAMQtQlFDQYLIAJBeE8NAiAIIAJBCGogACgCEBEAACIARQ0FIAEgAmshCCAGKQOwBCEEIAYCfiAJRQRAIAetIgUgBEJ/hVYNBSAEIAV8DAELIAQgCK0iBVQNBSAEIAV9CyIENwOwBCAGKALABEECTwRAIAcgCCABIAJJIgEbIQcgBkErQS0gARsgB60gBCAGKQO4BCIFIARUBH4gBiAENwO4BCAEBSAFCyADEJEECyAAIAI2AgAgAEEIag8LQbHUAUGfvQFBrgdBr7MBEAAAC0Gw0gFBn70BQboHQa+zARAAAAtBs4gBQZ+9AUHPB0GvswEQAAALQcaEAUGfvQFB3AdBr7MBEAAAC0HYhAFBn70BQd8HQa+zARAAAAtBAAuJBAMDfwJ+AX0jAEEgayIGJAACQAJAAkACQCABQQRqIgFBBU8EQEEBIQcgBUECRg0CDAELQQEhB0EdIAF2QQFxIAVBAkZyDQELIAAgBkEcahC/AiIBKAL0Aw0BQQAhByABQZgEQZAEQZgEIAAgAUYbIAUbaiIAKQMAIgkgAyACayIIrCIKQn+FVg0AIAAgCSAKfDcDACABKQOQBCEJIAEpA5gEIQogARCjCSELQQEhByABKQOoBCAJIAp8WARAIAsgASoCpARfIQcLIAEoAqAEQQJJDQAgAUHx/wQQogkgASgC9AMNAiAGQQo2AhAgBkHx/wQ2AhQgBiAGKAIcNgIIIAYgBDYCDCAGQaXRAUG80AEgBRs2AgQgBiAINgIAQQAhBUGI9ggoAgAiAEHttAMgBhAgGgJAAkACQCAIQRlIDQAgASgCoARBA08NAANAIAVBCkYNAiACIAVqLQAAELkGIAAQiwEaIAVBAWohBQwACwALA0AgAiADTw0CIAItAAAQuQYgABCLARogAkEBaiECDAALAAtB+8gBQQRBASAAEDoaIANBCmshAQNAIAEgA08NASABLQAAELkGIAAQiwEaIAFBAWohAQwACwALQdz+BEECQQEgABA6GgsgBkEgaiQAIAcPC0GtOEGfvQFB9sIAQcuoARAAAAtBrThBn70BQcHCAEGxhAEQAAALWwEDfyAAKAIAIQECQCAAKAIEIgJFBEAgACABNgIEDAELA0AgAUUNASABKAIAIAEgAjYCACAAIAE2AgQgASECIQEMAAsACyAAQQA2AhAgAEEANgIAIABCADcCCAspAQF/IwBBEGsiASQAIAEgADYCAEGI9ggoAgBBrIMEIAEQIBpBAhAHAAtKAQN/A0AgASAERwRAIAAQrQIhBSAAEOwLBEBBAA8FIARBAWohBCAFIANBCHRyIQMMAgsACwsgA0EATgR/IAIgAzYCAEEBBUEACwtNAQN/A0AgASADRwRAIAAQrQIhBSAAEOwLBEBBAA8FIAUgA0EDdHQgBHIhBCADQQFqIQMMAgsACwsgBEEATgR/IAIgBDYCAEEBBUEACwsJACAAIAEQkwELwAIBA38jAEEQayIFJAACQAJAAkACQCABRSACRXJFBEAgAC0AmQFBBHENAQJAAn8gACgCACgCbCIDBEAgACABIAIgAxEDAAwBCyAAKAIoIgMEQCAAKAIsIAAoAjAiBEF/c2ogAkkEQCAAIAIgBGpBAWoiBDYCLCAAIAMgBBBqIgM2AiggA0UNBiAAKAIwIQQLIAMgBGogASACEB8aIAAgACgCMCACaiIBNgIwIAAoAiggAWpBADoAAAwCCyAAKAIkIgNFDQUgAUEBIAIgAxA6CyACRw0FCyACIQMLIAVBEGokACADDwtB/t4EQQAgACgCDCgCEBEEABAvAAtBq68EQQAgACgCDCgCEBEEABAvAAtB0dUBQaG+AUHRAEHkCBAAAAsgACgCDCgCECEAIAUgAjYCAEG+wgQgBSAAEQQAEC8ACwsAIAAgATYCACAAC4QBAQJ/IwBBEGsiAiQAIAAQowEEQCAAKAIAIAAQ9gIaEJwECyABECUaIAEQowEhAyAAIAEoAgg2AgggACABKQIANwIAIAFBABDTASACQQA2AgwgASACQQxqENwBAkAgACABRiIBIANyRQ0ACyAAEKMBIAFyRQRAIAAQpQMaCyACQRBqJAALugEBAn8jAEEQayIFJAAgBSABNgIMQQAhAQJAIAICf0EGIAAgBUEMahBaDQAaQQQgA0HAACAAEIIBIgYQ/QFFDQAaIAMgBhDVAyEBA0ACQCAAEJUBGiABQTBrIQEgACAFQQxqEFogBEECSHINACADQcAAIAAQggEiBhD9AUUNAyAEQQFrIQQgAyAGENUDIAFBCmxqIQEMAQsLIAAgBUEMahBaRQ0BQQILIAIoAgByNgIACyAFQRBqJAAgAQu6AQECfyMAQRBrIgUkACAFIAE2AgxBACEBAkAgAgJ/QQYgACAFQQxqEFsNABpBBCADQcAAIAAQgwEiBhD+AUUNABogAyAGENYDIQEDQAJAIAAQlgEaIAFBMGshASAAIAVBDGoQWyAEQQJIcg0AIANBwAAgABCDASIGEP4BRQ0DIARBAWshBCADIAYQ1gMgAUEKbGohAQwBCwsgACAFQQxqEFtFDQFBAgsgAigCAHI2AgALIAVBEGokACABC5UBAQN/IwBBEGsiBCQAIAQgATYCDCAEIAM2AgggBEEEaiAEQQxqEI4CIAQoAgghAyMAQRBrIgEkACABIAM2AgwgASADNgIIQX8hBQJAQQBBACACIAMQYCIDQQBIDQAgACADQQFqIgMQTyIANgIAIABFDQAgACADIAIgASgCDBBgIQULIAFBEGokABCNAiAEQRBqJAAgBQtjACACKAIEQbABcSICQSBGBEAgAQ8LAkAgAkEQRw0AAkACQCAALQAAIgJBK2sOAwABAAELIABBAWoPCyACQTBHIAEgAGtBAkhyDQAgAC0AAUEgckH4AEcNACAAQQJqIQALIAALLgACQCAAKAIEQcoAcSIABEAgAEHAAEYEQEEIDwsgAEEIRw0BQRAPC0EADwtBCgtGAQF/IAAoAgAhAiABEG8hACACQQhqIgEQxAIgAEsEfyABIAAQnQMoAgBBAEcFQQALRQRAEJEBAAsgAkEIaiAAEJ0DKAIAC30BAn8jAEEQayIEJAAjAEEgayIDJAAgA0EYaiABIAEgAmoQpAUgA0EQaiADKAIYIAMoAhwgABCtCyADIAEgAygCEBCjBTYCDCADIAAgAygCFBCkAzYCCCAEQQhqIANBDGogA0EIahD7ASADQSBqJAAgBCgCDBogBEEQaiQAC+MBAgR+An8jAEEQayIGJAAgAb0iBUL/////////B4MhAiAAAn4gBUI0iEL/D4MiA1BFBEAgA0L/D1IEQCACQgSIIQQgA0KA+AB8IQMgAkI8hgwCCyACQgSIIQRC//8BIQMgAkI8hgwBCyACUARAQgAhA0IADAELIAYgAkIAIAWnZ0EgciACQiCIp2cgAkKAgICAEFQbIgdBMWoQsQFBjPgAIAdrrSEDIAYpAwhCgICAgICAwACFIQQgBikDAAs3AwAgACAFQoCAgICAgICAgH+DIANCMIaEIASENwMIIAZBEGokAAsrAQF+An8gAawhAyAAKAJMQQBIBEAgACADIAIQugUMAQsgACADIAIQugULC40BAQJ/AkAgACgCTCIBQQBOBEAgAUUNAUH8ggsoAgAgAUH/////A3FHDQELIAAoAgQiASAAKAIIRwRAIAAgAUEBajYCBCABLQAADwsgABC9BQ8LIABBzABqIgIQ6wsaAn8gACgCBCIBIAAoAghHBEAgACABQQFqNgIEIAEtAAAMAQsgABC9BQsgAhDoAxoLCQAgAEEAEOEBC64CAwF8AX4BfyAAvSICQiCIp0H/////B3EiA0GAgMD/A08EQCACpyADQYCAwP8Da3JFBEBEAAAAAAAAAABEGC1EVPshCUAgAkIAWRsPC0QAAAAAAAAAACAAIAChow8LAnwgA0H////+A00EQEQYLURU+yH5PyADQYGAgOMDSQ0BGkQHXBQzJqaRPCAAIAAgAKIQsASioSAAoUQYLURU+yH5P6APCyACQgBTBEBEGC1EVPsh+T8gAEQAAAAAAADwP6BEAAAAAAAA4D+iIgCfIgEgASAAELAEokQHXBQzJqaRvKCgoSIAIACgDwtEAAAAAAAA8D8gAKFEAAAAAAAA4D+iIgCfIgEgABCwBKIgACABvUKAgICAcIO/IgAgAKKhIAEgAKCjoCAAoCIAIACgCwssAQF/QYj2CCgCACEBA0AgAEEATEUEQEG5zgMgARCLARogAEEBayEADAELCwt2AQJ/IABB6PAJQQAQayICIAFFcgR/IAIFIAAQOSIBIAFBHUEAQQEQyAMaIAEQHCEDA0AgAwRAIAAgAxDBBSABIAMQLCECA0AgAgRAIAAgAhDBBSABIAIQMCECDAELCyABIAMQHSEDDAELCyAAQejwCUEAEGsLCxgAIAAgASACIAMQ2AFEFlbnnq8D0jwQIwu3AQECfyADIANBH3UiBXMgBWshBQJAAkACQCABDgQAAQEBAgsgACACIAUgBBA2GiADQQBODQEgABB5IQEDQCABRQ0CIAFBACACIAMgBBCzAiABEHghAQwACwALIAAQHCEDIAFBAUchBgNAIANFDQECQCAGRQRAIAMgAiAFIAQQNhoMAQsgACADECwhAQNAIAFFDQEgASACIAUgBBA2GiAAIAEQMCEBDAALAAsgACADEB0hAwwACwALCy4BAn8gABAcIQEDQCABBEAgACABQQBBARD2ByACaiECIAAgARAdIQEMAQsLIAILMQEBfyAAKAIEIgEoAiArAxAgASsDGKAgACsDCKEgACgCACIAKAIgKwMQIAArAxigoQuEAQECfyMAQRBrIgUkAAJAAkACQAJAAkAgA0EEaw4FAAQEBAECC0EEIQYMAgsMAQtBCCEGIANBAUcNAQsgACABIAMgBiAEEMINIQAgAgRAIAAgAhDADQsgBUEQaiQAIAAPCyAFQSg2AgQgBUGWtwE2AgBBiPYIKAIAQdi/BCAFECAaEDsAC+kBAQR/IwBBEGsiBCQAIAAQSyIDIAFqIgEgA0EBdEGACCADGyICIAEgAksbIQEgABAkIQUCQAJAAkAgAC0AD0H/AUYEQCADQX9GDQIgACgCACECIAFFBEAgAhAYQQAhAgwCCyACIAEQaiICRQ0DIAEgA00NASACIANqQQAgASADaxA4GgwBCyABQQEQGiICIAAgBRAfGiAAIAU2AgQLIABB/wE6AA8gACABNgIIIAAgAjYCACAEQRBqJAAPC0GOwANB0vwAQc0AQb2zARAAAAsgBCABNgIAQYj2CCgCAEH16QMgBBAgGhAvAAv9AwEHfyAFQRhBFCAALQAAG2ooAgAgABC1AyIGKAIwIAAoAiggASgCKBDwBSAEQQAgBEEAShtBAWohDEEBIQsDQCALIAxGRQRAIAAiBCACELQDIQAgASIHIAMQtAMhAQJ/IAQtAABFBEAgBSgCGCAAELUDIQkgBygCKCEHIAQoAighCCAGKAIwIQYgACsDCCAEKwMQYQRAIAQoAiAgBiAIIAcQtgMhBiAJKAIwIQRBAUYEQCAAIAEgBhshByABIAAgBhshCCAJDAMLIAEgACAGGyEHIAAgASAGGyEIIAkMAgsgBCgCJCAGIAggBxC2AyEGIAkoAjAhBEEBRgRAIAEgACAGGyEHIAAgASAGGyEIIAkMAgsgACABIAYbIQcgASAAIAYbIQggCQwBCyAFKAIUIAAQtQMhCSAHKAIoIQcgBCgCKCEIIAYoAjAhBgJ/IAArAwggBCsDEGEEQCAEKAIgIAYgCCAHELYDIQYgCSgCMCEEQQJGBEAgACABIAYbIQggASAAIAYbDAILIAEgACAGGyEIIAAgASAGGwwBCyAEKAIkIAYgCCAHELYDIQYgCSgCMCEEQQJGBEAgASAAIAYbIQggACABIAYbDAELIAAgASAGGyEIIAEgACAGGwshByAJCyEGIAQgCCgCKCAHKAIoEPAFIAtBAWohCwwBCwsLEwAgACABKAIAEJAOIAFCADcCAAukAQEDf0HAABD9BSICIAIoAgBBfHFBAXI2AgAgAkHAAhD9BSIBNgIQIAIgABA5NgIYIAFCgICAgICAgPg/NwNgIAFBAToArAEgAUKAgICAgICA+D83A1ggAUEBNgLsASABQoCAgICAgID4PzcDUCABQQA2AsQBQQVBBBDUAiEDIAFBADYCzAEgASADNgLAASABQQVBBBDUAjYCyAEgACACEKcIIAIL6wEBAn8gAS0ABEEBRgRAIAAQmgQhAAsgAkEiEGUgACEEA0ACQAJAAkACQAJAAkACQAJAAkAgBC0AACIDDg4IBgYGBgYGBgEFAwYCBAALAkAgA0HcAEcEQCADQS9GDQEgA0EiRw0HIAJBysIDEBsaDAgLIAJBgMkBEBsaDAcLIAJB9p4DEBsaDAYLIAJBosABEBsaDAULIAJBw4UBEBsaDAQLIAJBzuoAEBsaDAMLIAJB0jsQGxoMAgsgAkGJJhAbGgwBCyACIAPAEGULIARBAWohBAwBCwsgAkEiEGUgAS0ABEEBRgRAIAAQGAsLRQEBfyACEEBBAXRBA2oQTyIERQRAQX8PCyABAn8gAwRAIAIgBBDBAwwBCyACIAQQ1ggLIAAoAkwoAgQoAgQRAAAgBBAYC0IBAX8gACABEOYBIgFFBEBBAA8LIAAoAjQgASgCHBDnASAAKAI0IgJBAEGAASACKAIAEQMAIAEgACgCNBDcAjYCHAsuAQF/QRgQUiIDIAI5AxAgAyABOQMIIAAgA0EBIAAoAgARAwAgA0cEQCADEBgLCyoBA38DQCACIgNBAWohAiAAIgQoAvQDIgANAAsgAQRAIAEgAzYCAAsgBAtGACAAKAIQKAKQARAYIAAQmQQgACgCECgCYBC8ASAAKAIQKAJsELwBIAAoAhAoAmQQvAEgACgCECgCaBC8ASAAQe8lEOIBC4EMAgp/CXwCQCAAEDxFBEAgACgCECgCtAFFDQELRAAAwP///99BIQxEAADA////38EhDSAAEBwhA0QAAMD////fwSEORAAAwP///99BIQ8DQAJAAkACQCADRQRAIAAoAhAiACgCtAEiAUEAIAFBAEobQQFqIQJBASEBDAELIAMoAhAiAisDYCERIAIrA1ghCyACKAKUASIFKwMAIRIgAigCfCEBIA0gBSsDCEQAAAAAAABSQKIiDSACKwNQRAAAAAAAAOA/oiIToBAjIRAgDiASRAAAAAAAAFJAoiISIAsgEaBEAAAAAAAA4D+iIhGgECMhDiAMIA0gE6EQKSEMIA8gEiARoRApIQ8gAUUNASABLQBRQQFHDQEgASsDQCINIAFBGEEgIAAoAhAtAHRBAXEiAhtqKwMARAAAAAAAAOA/oiIRoSILIAwgCyAMYxshDCABKwM4IgsgAUEgQRggAhtqKwMARAAAAAAAAOA/oiISoCITIA4gDiATYxshDiALIBKhIgsgDyALIA9jGyEPIA0gEaAiDSAQZEUNAQwCCwNAIAEgAkZFBEAgACgCuAEgAUECdGooAgAoAhAiAysDECEQIAMrAxghESADKwMgIQsgDSADKwMoECMhDSAOIAsQIyEOIAwgERApIQwgDyAQECkhDyABQQFqIQEMAQsLAkACQCAAKAIMIgFFDQAgAS0AUUEBRw0AIAErA0AiECABQRhBICAALQB0QQFxIgMbaisDAEQAAAAAAADgP6IiEaEiCyAMIAsgDGMbIQwgASsDOCILIAFBIEEYIAMbaisDAEQAAAAAAADgP6IiEqAiEyAOIA4gE2MbIQ4gCyASoSILIA8gCyAPYxshDyAQIBGgIhAgDWQNAQsgDSEQCyAAIBA5AyggACAOOQMgIAAgDDkDGCAAIA85AxAMAwsgECENCyAAIAMQLCECA0ACQAJAAkAgAgRAIAIoAhAiBSgCCCIGRQ0DIAYoAgQhB0EAIQQDQAJAAkAgBCAHRwRAIAYoAgAgBEEwbGoiCCgCBCEJQQAhAQwBCyAFKAJgIgENAQwECwNAIAEgCUZFBEAgCCgCACABQQR0aiIKKwMAIRAgDSAKKwMIIhEQIyENIA4gEBAjIQ4gDCARECkhDCAPIBAQKSEPIAFBAWohAQwBCwsgBEEBaiEEDAELCyABLQBRQQFHDQEgASsDQCIQIAFBGEEgIAAoAhAtAHRBAXEiBBtqKwMARAAAAAAAAOA/oiIRoSILIAwgCyAMYxshDCABKwM4IgsgAUEgQRggBBtqKwMARAAAAAAAAOA/oiISoCITIA4gDiATYxshDiALIBKhIgsgDyALIA9jGyEPIBAgEaAiECANZEUNAQwCCyAAIAMQHSEDDAQLIA0hEAsCQAJAIAUoAmQiAUUNACABLQBRQQFHDQAgASsDQCINIAFBGEEgIAAoAhAtAHRBAXEiBBtqKwMARAAAAAAAAOA/oiIRoSILIAwgCyAMYxshDCABKwM4IgsgAUEgQRggBBtqKwMARAAAAAAAAOA/oiISoCITIA4gDiATYxshDiALIBKhIgsgDyALIA9jGyEPIA0gEaAiDSAQZA0BCyAQIQ0LAkACQCAFKAJoIgFFDQAgAS0AUUEBRw0AIAErA0AiECABQRhBICAAKAIQLQB0QQFxIgQbaisDAEQAAAAAAADgP6IiEaEiCyAMIAsgDGMbIQwgASsDOCILIAFBIEEYIAQbaisDAEQAAAAAAADgP6IiEqAiEyAOIA4gE2MbIQ4gCyASoSILIA8gCyAPYxshDyAQIBGgIhAgDWQNAQsgDSEQCwJAIAUoAmwiAUUNACABLQBRQQFHDQAgASsDQCINIAFBGEEgIAAoAhAtAHRBAXEiBRtqKwMARAAAAAAAAOA/oiIRoSILIAwgCyAMYxshDCABKwM4IgsgAUEgQRggBRtqKwMARAAAAAAAAOA/oiISoCITIA4gDiATYxshDiALIBKhIgsgDyALIA9jGyEPIA0gEaAiDSAQZA0BCyAQIQ0LIAAgAhAwIQIMAAsACwALCz4AAkAgAARAIAFFDQEgACABIAEQQBDqAUUPC0GI1AFB6/sAQQxBnvcAEAAAC0GC0wFB6/sAQQ1BnvcAEAAAC0UAIAFBD0YEQCAIDwsCQCABIAdGBEAgBiECIAUhAwwBC0F/IQJBngEhAyABQRxHDQAgACgCEA0AQTsPCyAAIAM2AgAgAgsQACAAKAIEIAAoAgBrQQJ1C7wDAQN/IwBBEGsiCCQAIAggAjYCCCAIIAE2AgwgCEEEaiIBIAMQUyABEMsBIQkgARBQIARBADYCAEEAIQECQANAIAYgB0YgAXINAQJAIAhBDGogCEEIahBaDQACQCAJIAYoAgAQ1QNBJUYEQCAGQQRqIAdGDQJBACECAn8CQCAJIAYoAgQQ1QMiAUHFAEYNAEEEIQogAUH/AXFBMEYNACABDAELIAZBCGogB0YNA0EIIQogASECIAkgBigCCBDVAwshASAIIAAgCCgCDCAIKAIIIAMgBCAFIAEgAiAAKAIAKAIkEQwANgIMIAYgCmpBBGohBgwBCyAJQQEgBigCABD9AQRAA0AgByAGQQRqIgZHBEAgCUEBIAYoAgAQ/QENAQsLA0AgCEEMaiIBIAhBCGoQWg0CIAlBASABEIIBEP0BRQ0CIAEQlQEaDAALAAsgCSAIQQxqIgEQggEQmwEgCSAGKAIAEJsBRgRAIAZBBGohBiABEJUBGgwBCyAEQQQ2AgALIAQoAgAhAQwBCwsgBEEENgIACyAIQQxqIAhBCGoQWgRAIAQgBCgCAEECcjYCAAsgCCgCDCAIQRBqJAALvAMBA38jAEEQayIIJAAgCCACNgIIIAggATYCDCAIQQRqIgEgAxBTIAEQzAEhCSABEFAgBEEANgIAQQAhAQJAA0AgBiAHRiABcg0BAkAgCEEMaiAIQQhqEFsNAAJAIAkgBiwAABDWA0ElRgRAIAZBAWogB0YNAkEAIQICfwJAIAkgBiwAARDWAyIBQcUARg0AQQEhCiABQf8BcUEwRg0AIAEMAQsgBkECaiAHRg0DQQIhCiABIQIgCSAGLAACENYDCyEBIAggACAIKAIMIAgoAgggAyAEIAUgASACIAAoAgAoAiQRDAA2AgwgBiAKakEBaiEGDAELIAlBASAGLAAAEP4BBEADQCAHIAZBAWoiBkcEQCAJQQEgBiwAABD+AQ0BCwsDQCAIQQxqIgEgCEEIahBbDQIgCUEBIAEQgwEQ/gFFDQIgARCWARoMAAsACyAJIAhBDGoiARCDARCcBSAJIAYsAAAQnAVGBEAgBkEBaiEGIAEQlgEaDAELIARBBDYCAAsgBCgCACEBDAELCyAEQQQ2AgALIAhBDGogCEEIahBbBEAgBCAEKAIAQQJyNgIACyAIKAIMIAhBEGokAAsWACAAIAEgAiADIAAoAgAoAjARBgAaCwcAIAAgAUYLtQEBA38jAEEgayIDJAACQAJAIAEsAAAiAgRAIAEtAAENAQsgACACELQFIQEMAQsgA0EAQSAQOBogAS0AACICBEADQCADIAJBA3ZBHHFqIgQgBCgCAEEBIAJ0cjYCACABLQABIQIgAUEBaiEBIAINAAsLIAAiAS0AACICRQ0AA0AgAyACQQN2QRxxaigCACACdkEBcQ0BIAEtAAEhAiABQQFqIQEgAg0ACwsgA0EgaiQAIAEgAGsLEAAgAEEgRiAAQQlrQQVJcgtBAQF/IAAoAgQiAiABTQRAQcmyA0Hv+gBBwgBB6SIQAAALIAFBA3YgACAAKAIAIAJBIUkbai0AACABQQdxdkEBcQuUAQIDfAF/IAArAwAhAwJ/IAAoAhAiBigCBCAARgRAIAYoAgAMAQsgAEEYagsiBisDACEEAkAgAkUNACABKAIQIgIoAgQgAUYEQCACKAIAIQEMAQsgAUEYaiEBCyABKwMAIQUgAyAEYQRAIAMgBWIEQEEADwsgACsDCCABKwMIIAYrAwgQyQxBf0cPCyADIAUgBBDJDAsRACAAQQRBEEGAgICAARDmBgtFAgJ/AXwgAEEAIABBAEobIQADQCAAIANGRQRAIAUgASADQQJ0IgRqKgIAIAIgBGoqAgCUu6AhBSADQQFqIQMMAQsLIAULXQIBfAJ/IAAhAyABIQQDQCADBEAgA0EBayEDIAIgBCsDAKAhAiAEQQhqIQQMAQsLIAIgALejIQIDQCAABEAgASABKwMAIAKhOQMAIABBAWshACABQQhqIQEMAQsLC3oBAn8gASAAIAMoAgARAAAhBSACIAEgAygCABEAACEEAkAgBUUEQCAERQRADwsgASACELgBIAEgACADKAIAEQAARQ0BIAAgARC4AQwBCyAEBEAgACACELgBDAELIAAgARC4ASACIAEgAygCABEAAEUNACABIAIQuAELC5MDAQt/IAEQQCECIwBBEGsiCiQAAkAgCkEIaiAAEKkFIgwtAABBAUcNACAAIAAoAgBBDGsoAgBqIgUoAhghAyABIAJqIgsgASAFKAIEQbABcUEgRhshCSAFKAJMIgJBf0YEQCMAQRBrIgQkACAEQQxqIgcgBRBTIAdBoJ0LEKkCIgJBICACKAIAKAIcEQAAIQIgBxBQIARBEGokACAFIAI2AkwLIALAIQdBACECIwBBEGsiCCQAAkAgA0UNACAFKAIMIQYgCSABayIEQQBKBEAgAyABIAQgAygCACgCMBEDACAERw0BCyAGIAsgAWsiAWtBACABIAZIGyIGQQBKBEAgCEEEaiIEIAYgBxC1CiADIAgoAgQgBCAILAAPQQBIGyAGIAMoAgAoAjARAwAgBBA1GiAGRw0BCyALIAlrIgFBAEoEQCADIAkgASADKAIAKAIwEQMAIAFHDQELIAVBADYCDCADIQILIAhBEGokACACDQAgACAAKAIAQQxrKAIAakEFELMNCyAMEKgFIApBEGokACAAC+AIARB/IwBBEGsiDSQAAkACQCAARQ0AAn8CQAJAAkACQAJAIAAoAiBFBEBBASECIAAtACQiA0ECcQ0IIAEEQCADQQFxDQkLIAAoAgAgACgCBEcNB0EAIQIgABD9ByILRQ0IIAAoAgAiBEEAIARBAEobIQ4gCygCGCEMIAsoAhQhCCAAKAIYIQ8gACgCFCEJIARBBBA/IQcDQCACIA5GRQRAIAcgAkECdGpBfzYCACACQQFqIQIMAQsLQQAhAwJAQQggACgCECABGyICQQRrDgUEAgICAwALIAJBAUcNAUF/IAQgBEEASBtBAWohBCALKAIcIRAgACgCHCERQQAhAgNAIAIgBEYEQANAIAUgDkYNByAJIAVBAnQiA2ooAgAiBCAJIAVBAWoiBUECdCIGaigCACICIAIgBEgbIQogBCECA0AgAiAKRkUEQCAHIA8gAkECdGooAgBBAnRqIAI2AgAgAkEBaiECDAELCyADIAhqKAIAIgMgBiAIaigCACICIAIgA0gbIQYgAyECA0AgAiAGRwRAIAJBAnQhCiACQQFqIQIgBCAHIAogDGooAgBBAnRqKAIATA0BDAoLCwNAIAMgBkYNASADQQN0IANBAnQhBCADQQFqIQMgEGorAwAgESAHIAQgDGooAgBBAnRqKAIAQQN0aisDAKGZREivvJry13o+ZEUNAAsMCAsACyACQQJ0IQMgAkEBaiECIAMgCWooAgAgAyAIaigCAEYNAAsMBQtBodABQZa3AUGVAUGDtAEQAAALIA1B2wE2AgQgDUGWtwE2AgBBiPYIKAIAQdi/BCANECAaEDsACwNAIAMgDkYNAiAJIANBAnRqKAIAIgUgCSADQQFqIgRBAnRqKAIAIgIgAiAFSBshBiAFIQIDQCACIAZGRQRAIAcgDyACQQJ0aigCAEECdGogAjYCACACQQFqIQIMAQsLIAggA0ECdGooAgAiAiAIIARBAnRqKAIAIgMgAiADShshAwNAIAIgA0YEQCAEIQMMAgsgAkECdCEGIAJBAWohAiAFIAcgBiAMaigCAEECdGooAgBMDQALCwwCCyALKAIcIRAgACgCHCERA0AgBSAORg0BIAkgBUECdCIDaigCACIEIAkgBUEBaiIFQQJ0IgZqKAIAIgIgAiAESBshCiAEIQIDQCACIApGRQRAIAcgDyACQQJ0aigCAEECdGogAjYCACACQQFqIQIMAQsLIAMgCGooAgAiAyAGIAhqKAIAIgIgAiADSBshBiADIQIDQCACIAZHBEAgAkECdCEKIAJBAWohAiAEIAcgCiAMaigCAEECdGooAgBMDQEMBAsLA0AgAyAGRg0BIANBAnQhAiADQQFqIQMgAiAQaigCACARIAcgAiAMaigCAEECdGooAgBBAnRqKAIARg0ACwsMAQsgACAALQAkIgAgAEECciABG0EBcjoAJEEBDAELQQALIQIgBxAYIAsQbQwBC0EAIQILIA1BEGokACACC6wBAQF/AkAgABAoBEAgABAkQQ9GDQELIAAQJCAAEEtPBEAgAEEBELcCCyAAECQhASAAECgEQCAAIAFqQQA6AAAgACAALQAPQQFqOgAPIAAQJEEQSQ0BQZO2A0Gg/ABBrwJBxLIBEAAACyAAKAIAIAFqQQA6AAAgACAAKAIEQQFqNgIECwJAIAAQKARAIABBADoADwwBCyAAQQA2AgQLIAAQKAR/IAAFIAAoAgALCz8BAn8jAEEQayICJAAgACABEE4iA0UEQCACIAAgAWw2AgBBiPYIKAIAQfXpAyACECAaEC8ACyACQRBqJAAgAwsLACAAIAFBARDPCAvNAQEEfyMAQRBrIgQkAAJAIAIgACABQTBBACABKAIAQQNxQQNHG2ooAiggAhCFASIDckUNACADRSAAIAFBUEEAIAEoAgBBA3FBAkcbaigCKCACEIUBIgZFcg0AIAQgASkDCDcDCCAEIAEpAwA3AwACQCAAIAMgBiAEENkCIgMgAkVyRQRAIAAgARCYBiABIQMMAQsgA0UNAQsgAygCAEEDcSIAIAEoAgBBA3FGBEAgAyEFDAELIANBUEEwIABBA0YbaiEFCyAEQRBqJAAgBQtKAgF/AXwgACABKwMAEJYCQeDjCigCACICRQRAQffVAUGluAFBhwFBjB8QAAALIAAgAisDMCABKwMIIgOhIANBuNsKLQAAGxCWAgs5ACACKAIMIQIDQCACQQBMBEBBAA8LIAJBAWshAiABQfD/BCAAKAJMKAIEKAIEEQAAQX9HDQALQX8LeAECfyMAQTBrIgQkAAJAIAFFIAJFcg0AIAQgAykDCDcDCCAEIAMpAwA3AwAgBCABNgIoIAAgAhDmASIBRQ0AIAAoAjggASgCFBDnASAAKAI4IgIgBEEEIAIoAgARAwAhBSABIAAoAjgQ3AI2AhQLIARBMGokACAFC2kBAX9BxOIKKAIAIQECQCAABEBBxOIKIAFBAWo2AgAgAQ0BQcDiCkEAEJ8HEGQ2AgBBi94BEJ8HGg8LIAFBAEwNAEHE4gogAUEBayIANgIAIAANAEHA4gooAgAQnwcaQcDiCigCABAYCwu1NwMbfwJ+AXwjAEEwayITJABBAUHYABAaIQwgAQRAIAEtAABBAEchBwJ/AkACQAJAIAAQkgJBAWsOAgECAAsgACgCSCEUIAAhHUEADAILIAAQLRA5IRQgACEeQQAMAQsgAEFQQQAgACgCAEEDcUECRxtqKAIoEC0QOSEUIAALIRkgAiAHcSECIAwgBDkDECAMIAY2AgggDCAFNgIEIAwgFCgCEC0AcyIFNgIMAkAgAwRAIAwgARBkNgIAIAJFDQEgDEEBOgBSDAELIAIEQCABEGQhASAMQQE6AFIgDCABNgIAIwBBkAFrIgkkACAJIAA2AnAgCQJ/AkACQAJAIAAQkgJBAWsOAgECAAsgACgCSAwCCyAAEC0MAQsgAEFQQQAgACgCAEEDcUECRxtqKAIoEC0LIgE2AnQgASgCSCEbIAkgDCsDEDkDYCAJIAwoAgQ2AlAgDCgCCCEBIAlBADYCaCAJIAE2AlQCQAJ/IAwoAgAhASMAQZADayIIJAAgCEIANwOIAyAIQgA3A4ADIAhBiAFqIgdBAEH4ARA4GiAIQeQCaiIaQQQQJiECIAgoAuQCIAJBAnRqIAgoAvgCNgIAIAhBgwI2ArgCIAhBhAI2AugBIAggCUFAayIKKAI0KAIQKAKQATYC/AIgCCAIQYADaiICNgLgAiAHQgA3AhAgByACNgIMIAcgATYCBCAHQgA3AiwgB0IANwIgIAdBATsBKCAHQgA3AhggB0IANwI0IAooAjQoAhAtAHMhASMAQRBrIgIkAAJ/IAFBA08EQCACIAE2AgBBysQEIAIQN0H08QEMAQsgAUECdEGg8wdqKAIACyEFIAJBEGokACAHAn8CQEHwBBBPIgJFDQAgAkHNATYCGCACQc4BNgIUIAJB6AQ2AgAgAkIANwO4BCACQQo2AhwgAkIANwPABCACQgA3A8gEIAJCADcD0ARB0NkBEOwEIQEgAkKAgIAgNwPQBCACQYCAoJYENgLMBCACIAE2AsgEIAJCADcDmAQgAkEANgL8AwJAAkAgAkEIaiIBQQAQvwIiAygC9ANFBEAgAykDsAQiIkKAgICAEH1CkHtaDQEgAyAiQvAEfCIiNwOwBCADKALABEECTwRAIANBK0LwBCAiIAMpA7gEIiMgIlQEfiADICI3A7gEICIFICMLQZ8LEJEECyACQRA2ApwDIAJBADYCKCACQQA2AhAgAiABQYACQakLEJgBIgM2AqgDIANFBEAgASABQasLEGdBAAwFCyACIAFBgAhBtgsQmAEiAzYCQCADRQRAIAEgAigCqANBuAsQZyABIAFBvAsQZwwECyACIANBgAhqNgJEQQAiBkUEQCABQbwBQcw6EJgBIgZFDQMgBkIANwJQIAZCADcCaCAGIAE2AmQgBiABNgJ8IAZCADcCCCAGQQA6AAQgBkIANwIcIAZBADoAGCAGIAE2AhAgBkEANgIAIAZCADcCMCAGQQA6ACwgBiABNgIkIAZBADYCFCAGQQA2AmAgBkIANwJYIAZCADcCcCAGQQA2AnggBkIANwJEIAZBADoAQCAGIAE2AjggBkEANgIoIAZBADYCPCAGIAE2AkwgBkIANwKMASAGQQA6AIgBIAZCATcCgAEgBiABNgKUASAGQgA3ApgBIAZBADoAoAEgBkIANwKkASAGQgA3AqwBIAZCADcCtAELIAJBADYCmAMgAiAGNgKEAyACQQA2ApADIAJBADYC0AIgAkEANgLIAiACQQA2AsACIAJCADcD8AMgAkEhOgD4AyACQQA2AogCIAJBADYCkAEgAkEAOwH8ASACQgA3AsADIAJBADYC+AEgAkIANwKsAyACIAE2AtQDIAJCADcCyAMgAkEANgLQAyACQQA6ALQDIAJBADYC6AMgAkIANwLgAyACQgA3AtgDIAIgATYC7AMgAUHPATYCoAIgAUGbATYCiAIgAUEANgKcAiABQoCAgIAQNwKUAiAFBEBBACEGA0AgBSAGaiAGQQFqIQYtAAANAAsgASAGQYjCABCYASIDBEAgAyAFIAYQHxoLIAEgAzYC8AELIAFBADYCgAMgAUGgAWogAUGcAWpBABDBBhogAUIANwMAIAFBQGtBAEHAABA4GiABQgA3AowBIAFBADYChAEgAUIANwKUASABQgA3A7ADIAFBADYCNCABQQE6ADAgAUEANgIsIAFCADcCJCABQQA2AsQCIAFBADYCvAIgAUIANwKkAiABQgA3AqwCIAFBADYCtAIg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akECED0MGgUgESADQQR0IhJqIhQgASASaiISKQMANwMAIBQgEikDCDcDCCADQQFqIQMMAQsACwALIAJBAmoiA0EQEBoiAiABKQMINwMIIAIgASkDADcDACACIBApAyA3AxAgAiAQKQMoNwMYIAIgECsDICAQKwMwIgYgECsDQKFEAAAAAAAACECjIgegOQMgIBArAyghCCAQKwNIIQkgECsDOCEFIAIgBiAHoDkDMCACIAUgBSAJoUQAAAAAAAAIQKMiBaA5AzggAiAIIAWgOQMoQQQgAyADQQRNGyERIAFBIGshE0EEIQEDQCABIBFGBEAgACACIAMgBBBIIAIQGCAPIBApAzg3AyggDyAQKQMwNwMgIA8gECkDKDcDOCAPIBApAyA3AzAgACAPQSBqQQIQPQwZBSACIAFBBHQiEmoiFCASIBNqIhIpAwA3AwAgFCASKQMINwMIIAFBAWohAQwBCwALAAsgAkEDaiIDQRAQGiICIAFBCGopAwA3AwggAiABKQMANwMAIAIgASsDACIFIAUgECsDEKEiBkQAAAAAAADQv6KgOQMQIAErAwghCCAQKwNIIQkgAiAQKwM4Igc5AzggAiAFIAZEAAAAAAAAAsCioDkDMCACIAUgBiAGoKE5AyAgAiAIIAcgCaFEAAAAAAAACECjoCIFOQMoIAIgBTkDGCAQKwMwIQUgAiAHOQNIIAIgBTkDQEEEIAMgA0EETRshESABQTBrIRNBBCEBA0AgASARRgRAIAAgAiADIAQQSCACEBgMGAUgAiABQQR0IhJqIhQgEiATaiISKQMANwMAIBQgEikDCDcDCCABQQFqIQEMAQsACwALIAJBBEcNG0EGQRAQGiICIAEpAwg3AwggAiABKQMANwMAIAIgECkDKDcDGCACIBApAyA3AxAgAiAQKQNINwMoIAIgECkDQDcDICACIAEpAyg3AzggAiABKQMgNwMwIAIgECkDgAE3A0AgAiAQKQOIATcDSCACIBApA6ABNwNQIAIgECkDqAE3A1ggACACQQYgBBBIIAIQGCAPIBArAxAgECsDsAEgECsDAKGgOQMgIA8gECsDGCAQKwO4ASAQKwMIoaA5AyggDyAQKQNINwM4IA8gECkDQDcDMCAAIA9BIGoiAUECED0gDyAQKQOIATcDOCAPIBApA4ABNwMwIAAgAUECED0gDyAQ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AgsgACABNwMAIAAgAjcDCAvbAQIBfwJ+QQEhBAJAIABCAFIgAUL///////////8AgyIFQoCAgICAgMD//wBWIAVCgICAgICAwP//AFEbDQAgAkIAUiADQv///////////wCDIgZCgICAgICAwP//AFYgBkKAgICAgIDA//8AURsNACAAIAKEIAUgBoSEUARAQQAPCyABIAODQgBZBEAgACACVCABIANTIAEgA1EbBEBBfw8LIAAgAoUgASADhYRCAFIPCyAAIAJWIAEgA1UgASADURsEQEF/DwsgACAChSABIAOFhEIAUiEECyAECxYAIABFBEBBAA8LQfyACyAANgIAQX8LCwAgACABIAIRAAALZAECfyMAQRBrIgMkAAJAIABBABCxAiIARQ0AAkACQAJAAkAgAQ4EAAECAgMLIAAoAhAhAgwDCyAAKAIIIQIMAgsgACgCDCECDAELIAMgATYCAEHExQQgAxA3CyADQRBqJAAgAgukAQIDfwJ8IwBBEGsiAiQAIAAQwQIgACgCECIBKwMYRAAAAAAAAFJAoyEEIAErAxBEAAAAAAAAUkCjIQUgABAcIQEDQCABBEAgASgCECgClAEiAyADKwMAIAWhOQMAIAMgAysDCCAEoTkDCCAAIAEQHSEBDAELCyACIAAoAhAiASkDGDcDCCACIAEpAxA3AwAgACACEMAMIABBARDKBSACQRBqJAALDwAgAUEBaiAAIAAQqgGfC6gBAgR/AnwgASgCACECIABBBGoiAyEAIAMhAQNAIAAoAgAiAARAIAAoAhAiBCsDCCIGIAIrAwgiB2MEQCAAQQRqIQAMAgUgACABIAAgAiAESyIEGyAGIAdkIgUbIQEgACAAIARBAnRqIAUbIQAMAgsACwsCQAJAIAEgA0YNACACKwMIIgYgASgCECIAKwMIIgdjDQAgACACTSAGIAdkcg0BCyADIQELIAELZAEBfyMAQRBrIgQkACAAQQA7ARwgAEEANgIYIAAgAzkDCCAAIAI2AgQgACABNgIAIAQgADYCDCABQTRqIARBDGoQwAEgACgCBCAEIAA2AghBKGogBEEIahDAASAEQRBqJAAgAAs8ACAAIAEQ0gIEQCAAEMMEDwsgABD9ByIBRQRAQQAPCyAAIAEQ/AchACABEG0gACAALQAkQQNyOgAkIAALrAEBAX8CQCAAECgE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IAUgBCsDCDkDECAFQShqIAMgFiAUIAsRHgBFBEAgBUIANwNYIAUgAzYCACAFIAc2AhggB0EBaiEHIAAgAxAdIQMMAQsLQZj/CigCABAYQZj/CkEANgIAENcMDAILQQAhByACQbADakEAQdAAEDgaIAUEQEGY/wooAgAhBET////////vfyEURP///////+//IRhE////////7/8hG0T////////vfyEZA0AgBSAHRgRARJqZmZmZmak/IRYCQCAAQdLkABAnIgBFDQAgAC0AAEUNACAAEK4CIRYLQbD/CiAbIBsgGaEgFqIiE6AiFzkDAEG4/wogGSAToSIVOQMAQaj/CiAUIBggFKEgFqIiE6EiFDkDAEGg/wogGCAToCITOQMAIAIgFTkD2AMgAiAXOQPoAyACIBU5A7gDIAIgEzkD0AMgAiAXOQPIAyACIBQ5A/ADIAIgEzkDwAMgAiAUOQPgAyABKAIAIQBBABDQByELAkACQCAAQQJGBEAgC0UNAiACQbADahDWDEEAIQMDQEGY/wooAgAhAUHk/gooAgAhAEEAIQQDQCAAIARHBEAgASAEQeAAbGoiCyALKwMIRM3MzMzMzPA/ojkDCCALIAsrAxBEzczMzMzM8D+iOQMQIARBAWohBAwBCwsgA0EBaiIDENAHDQALQezaCi0AAEUNASACIAM2AhBBiPYIKAIAQezdAyACQRBqECAaDAELIAtFDQEgAkGwA2oQ1gxBACEHQQAhBANAIAJBsANqIgEhACAHBEAgABDUDAtB+P4KQv////////93NwMAQfD+CkL/////////9/8ANwMAAkBB5P4KKAIAIgUEQCAAKAIAIQZE////////738hFET////////v/yEWQQAhAANAIAAgBUYNAkHw/gogFCAGIABBAnRqKAIAIgMrAwAQKSIUOQMAQfj+CiAWIAMrAwAQIyIWOQMAIABBAWohAAwACwALQeGVA0H8twFBzwFBzJIBEAAAC0GA/wogBigCACsDCDkDACAGIAVBAnRqQQRrKAIAKwMIIRNBkP8KIBYgFKE5AwBBiP8KIBM5AwBEAAAAAAAAAAAhFUQAAAAAAAAAACEUIwBBMGsiDiQAQQFBEBAaIg9B6P4KKAIAQQJ0IgA2AgQgDyAAQSgQGjYCAEHA/wogARDNBTYCACAOQgA3AyggDkIANwMg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AmRBByAHLwGMAkECdkEBcSAHKALoASAHKAL4ASAHKAKIAiAHKALcAUEAENoEIAAgCSgCECgCaEEGIAcvAYwCQQF2QQFxIAcoAuQBIAcoAvQBIAcoAoQCIAcoAtwBQQAQ2gQCQCAAKAI8IgFFDQAgASgCRCIBRQ0AIAAgAREBAAsgABCMBCAaEOwCIBoQGBAYCyACQeAVaiQADwtBsIMEQcIAQQFBiPYIKAIAEDoaEDsAC84GAQJ/IwBBgAJrIgMkACADQdABaiIEQYi/CEEwEB8aIAFCADcCAAJAAkACQAJAIAAgBBDeBA0AIAMoAtgBQQJJDQAgAyADKQPYATcDyAEgAyADKQPQATcDwAEgAygC0AEgA0HAAWpBABAZQRhsaigCAA0BC0EAIQBBACEBA0AgASADKALYAU8NAiADIAMpA9gBNwMgIAMgAykD0AE3AxggA0EYaiABEBkhAgJAAkAgAygC4AEiBA4CAQUACyADIAMoAtABIAJBGGxqIgIpAwg3AwggAyACKQMQNwMQIAMgAikDADcDACADIAQRAQALIAFBAWohAQwACwALIAMoAtgBQQNPBEBB95gEQQAQKgsgAyADKQPYATcDuAEgAyADKQPQATcDsAEgASADKALQASADQbABakEAEBlBGGxqKAIAEGQ2AgAgAyADKQPYATcDqAEgAyADKQPQATcDoAEgAygC0AEgA0GgAWpBARAZQRhsaigCAARAIAMgAykD2AE3A5gBIAMgAykD0AE3A5ABIAEgAygC0AEgA0GQAWpBARAZQRhsaigCABBkNgIECyADIAMpA9gBNwOIASADIAMpA9ABNwOAASADKALQASEBIANBgAFqQQAQGSEEIAMoAtABIQAgAgJ8IAEgBEEYbGotABBBAUYEQCADIAMpA9gBNwNYIAMgAykD0AE3A1AgACADQdAAakEAEBlBGGxqKwMIDAELIAMgAykD2AE3A3ggAyADKQPQATcDcEQAAAAAAAAAACAAIANB8ABqQQEQGUEYbGotABBBAUcNABogAyADKQPYATcDaCADIAMpA9ABNwNgRAAAAAAAAPA/IAMoAtABIANB4ABqQQEQGUEYbGorAwihCzkDAEEAIQFBASEAA0AgASADKALYAU8NASADIAMpA9gBNwNIIAMgAykD0AE3A0AgA0FAayABEBkhAgJAAkAgAygC4AEiBA4CAQQACyADIAMoAtABIAJBGGxqIgIpAwg3AzAgAyACKQMQNwM4IAMgAikDADcDKCADQShqIAQRAQALIAFBAWohAQwACwALIANB0AFqIgFBGBAxIAEQNCADQYACaiQAIAAPC0GwgwRBwgBBAUGI9ggoAgAQOhoQOwALrwEBAX8gACgCECIBRQRAQaT1AEGEuQFBiAFB0pEBEAAACyABKALcARAYIAEoAtgBEBggASgC4AEQGCABKALkARAYIAEoAugBEBggASgC7AEQGCABKALwARAYIAEoAvQBEBggASgC+AEQGCABKAL8ARAYIAEoAoACEBggASgChAIQGCABKAKIAhAYIAEoApgCEBggASgCpAIQGCABKAKgAhAYIAAgASgCADYCECABEBgLngEBAn9BuAIQxgMiASAAKAIQIgI2AgAgACABNgIQIAIEQCABQRBqIAJBEGpBKBAfGiABQThqIAJBOGpBKBAfGiABIAIoApgBNgKYASABIAIoApwBNgKcASABIAIrA6ABOQOgASABIAIoAogBNgKIASABQeAAaiACQeAAakEoEB8aIAEPCyABQoCAgICAgID4PzcDoAEgAUIDNwOYASABC6AGAQV/IwBBMGsiAyQAA0BBgOAKKAIAIAJNBEACQEH43wpBEBAxQZDgCiAAKAIAIgQpAwA3AwBBmOAKIAQpAwg3AwBB+N8KQRAQJiECQfjfCigCACACQQR0aiICQZDgCikDADcDACACQZjgCikDADcDCEGQ4AogBCkDADcDAEGY4AogBCkDCDcDAEH43wpBEBAmIQJB+N8KKAIAIAJBBHRqIgJBkOAKKQMANwMAIAJBmOAKKQMANwMIQQIgACgCBCIAIABBAk0bQQFrIQZBASECA0AgAiAGRg0BQZDgCiAEIAJBBHRqIgApAwA3AwBBmOAKIAApAwg3AwBB+N8KQRAQJiEFQfjfCigCACAFQQR0aiIFQZDgCikDADcDACAFQZjgCikDADcDCEGQ4AogACkDADcDAEGY4AogACkDCDcDAEH43wpBEBAmIQVB+N8KKAIAIAVBBHRqIgVBkOAKKQMANwMAIAVBmOAKKQMANwMIQZDgCiAAKQMANwMAQZjgCiAAKQMINwMAQfjfCkEQECYhAEH43wooAgAgAEEEdGoiAEGQ4AopAwA3AwAgAEGY4AopAwA3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qgIgA0EAOgAHIAIgBGogA0EHahDSASADQRBqJAAMAQsQygEACyAFQRBqJAALFwAgACADNgIQIAAgAjYCDCAAIAE2AggLDQAgACABIAJBARCiBwsSACAAIAEgAkL/////DxCwBacLzAEBA38jAEEgayIDQgA3AxggA0IANwMQIANCADcDCCADQgA3AwAgAS0AACICRQRAQQAPCyABLQABRQRAIAAhAQNAIAEiA0EBaiEBIAMtAAAgAkYNAAsgAyAAaw8LA0AgAyACQQN2QRxxaiIEIAQoAgBBASACdHI2AgAgAS0AASECIAFBAWohASACDQALAkAgACIBLQAAIgJFDQADQCADIAJBA3ZBHHFqKAIAIAJ2QQFxRQ0BIAEtAAEhAiABQQFqIQEgAg0ACwsgASAAawuAAQEEfyAAIABBPRC0BSIBRgRAQQAPCwJAIAAgASAAayIEai0AAA0AQYiBCygCACIBRQ0AIAEoAgAiAkUNAANAAkAgACACIAQQ6gFFBEAgASgCACAEaiICLQAAQT1GDQELIAEoAgQhAiABQQRqIQEgAg0BDAILCyACQQFqIQMLIAMLTgEBf0EBQRwQGiIGIAU6ABQgBiAAIAEQrAE2AggCfyADBEAgACACENUCDAELIAAgAhCsAQshBSAGIAA2AhggBiAENgIQIAYgBTYCDCAGCwkAIAC9QjSIpwuZAQEDfCAAIACiIgMgAyADoqIgA0R81c9aOtnlPaJE65wriublWr6goiADIANEff6xV+Mdxz6iRNVhwRmgASq/oKJEpvgQERERgT+goCEFIAAgA6IhBCACRQRAIAQgAyAFokRJVVVVVVXFv6CiIACgDwsgACADIAFEAAAAAAAA4D+iIAQgBaKhoiABoSAERElVVVVVVcU/oqChC5IBAQN8RAAAAAAAAPA/IAAgAKIiAkQAAAAAAADgP6IiA6EiBEQAAAAAAADwPyAEoSADoSACIAIgAiACRJAVyxmgAfo+okR3UcEWbMFWv6CiRExVVVVVVaU/oKIgAiACoiIDIAOiIAIgAkTUOIi+6fqovaJExLG0vZ7uIT6gokStUpyAT36SvqCioKIgACABoqGgoAuNAQAgACAAIAAgACAAIABECff9DeE9Aj+iRIiyAXXg70k/oKJEO49otSiCpL+gokRVRIgOVcHJP6CiRH1v6wMS1tS/oKJE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EC4BmgFsrHwhEAwBCwsgAkEBaiECDAALAAtBACEAA0AgDCAAQQJ0aigCACICBEAgCCACQVBBACACKAIAQQNxQQJHG2ooAigoAhAoAvgBIgVBAnRqIgogCigCACACKAIQLgGaAWo2AgAgBSABIAEgBUgbIQEgAEEBaiEADAELCyADQQFqIQMMAQsACwALIAZBEGokACARDwsgECARfCERDAALAAuDAQECfyAAIAFBARCNASIBKAIQQQA2AsQBQQUQnwghAiABKAIQIgNBADYCzAEgAyACNgLAAUEFEJ8IIQIgASgCECIDIAI2AsgBQdz9CigCACICIAAgAhsoAhBBuAFBwAEgAhtqIAE2AgAgAyACNgK8AUHc/QogATYCACADQQA2ArgBIAELuQEBA38gACAAQTBqIgIgACgCAEEDcUEDRhsoAigoAhAiASgC4AEgASgC5AEiAUEBaiABQQJqENoBIQEgACACIAAoAgBBA3FBA0YbKAIoKAIQIAE2AuABIAAgAiAAKAIAQQNxQQNGGygCKCgCECIBIAEoAuQBIgNBAWo2AuQBIAEoAuABIANBAnRqIAA2AgAgACACIAAoAgBBA3FBA0YbKAIoKAIQIgAoAuABIAAoAuQBQQJ0akEANgIACyAAIAAgASACIABBp4cBECciAAR/IAAQkQIFQR4LEP8OC00AIAEoAhBBwAFqIQEDQCABKAIAIgEEQCABKAIQKAKYAhAYIAEoAhAoAqACEBggASgCECIBQQA2ArABIAFBuAFqIQEMAQUgABD4DgsLCz8BAn8gACgCECgCqAIhAANAIAAiASgCDCIARSAAIAFGckUEQCAAKAIMIgJFDQEgASACNgIMIAIhAAwBCwsgAQsLACAAIAFBARCFDwsLACAAIAFBABCFDwuGAQECfwJAIAAgASkDCBC/A0UNACAAEDkgAEYEQCAAIAEQbiECA0AgAgRAIAAgAiABEHIgACACEI0GIQIMAQsLIAAtABhBIHEEQCABEMcLCyAAIAEQzwcgARCzByAAQQEgASkDCBC/BgsgACABQRJBAEEAEMgDDQAgABA5IABGBEAgARAYCwsLgwEBA38jAEEgayIBJAAgACgCECICKAIMIgNBDE8EQCABQeQANgIUIAFBibwBNgIQQYj2CCgCAEHYvwQgAUEQahAgGhA7AAsgASACKAIINgII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ACAAIAEQRSIBRQ0AIAEtAABFDQAgACABIAEQdkEAR0EAIAcgAiADENsCIQEgACgCECABNgJ8IAAQLSgCECIBIAEtAHFBEHI6AHELIABBgNwKKAIAQQBBABBiIQEgACgCECICQf8BIAEgAUH/AU4bOgCgASAAIAIoAggoAgQoAgARAQALRAACQCAAECgEQCAAECRBD0YNAQsgAEEAEH8LAkAgABAoBEAgAEEAOgAPDAELIABBADYCBAsgABAoBH8gAAUgACgCAAsLlAYBBH8jAEGQAWsiASQAAkACQCAARQ0AIAAtAABFDQBB8NoKKAIAIgMEQEG+3gotAAANASABIAM2AnBB/vkEIAFB8ABqECpBvt4KQQE6AAAMAQtBwN4KKAIAIQMCQEHk2gooAgAEQCADDQEDQEHM3gooAgAgAk0EQEHE3gpBCBAxQcTeChA0QcDeCkHk2gooAgAiAjYCACABQfQAaiACEP4JQdzeCiABKAKMATYCAEHU3gogASkChAE3AgBBzN4KIAEpAnw3AgBBxN4KIAEpAnQ3AgAMAwUgAUHM3gopAgA3A0ggAUHE3gopAgA3A0AgAUFAayACEBkhAwJAAkBB1N4KKAIAIgQOAgEHAAsgAUHE3gooAgAgA0EDdGopAgA3AzggAUE4aiAEEQEACyACQQFqIQIMAQsACwALAkAgA0Ho2gooAgBGDQADQEHM3gooAgAgAk0EQEHE3gpBCBAxQcTeChA0QcDeCkHo2gooAgAiAjYCACACRQ0CIAItAABFDQIgAUH0AGogAhD+CUHc3gogASgCjAE2AgBB1N4KIAEpAoQBNwIAQczeCiABKQJ8NwIAQcTeCiABKQJ0NwIABSABQczeCikCADcDMCABQcTeCikCADcDKCABQShqIAIQGSEDAkACQEHU3gooAgAiBA4CAQcACyABQcTeCigCACADQQN0aikCADcDICABQSBqIAQRAQALIAJBAWohAgwBCwsLAkAgAC0AAEEvRg0AQczeCigCAEUNACABQdzeCigCADYCGCABQdTeCikCADcDECABQczeCikCADcDCCABQcTeCikCADcDACABIAAQ/QkhAgwCCyAAIQIMAQtBACECA0AgAkEDRwRAIAAgAkH54gFqLAAAIAAQQEEBahDkCyIDQQFqIAAgAxshACACQQFqIQIMAQsLIAFB3N4K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AUEHcXRyOgAADwtBl7IDQe/6AEHRAEHfIRAAAAtQAQF/IAEoAhAoApwBRQRAQQAPCyAAIAFBMEEAIAEoAgBBA3FBA0cbaigCKBDDDgR/IAAgAUFQQQAgASgCAEEDcUECRxtqKAIoEMMOBUEACws1AQJ/AkAgABAcIgFFBEAMAQsgARCGAiECA0AgACABEB0iAUUNASACIAEQnggaDAALAAsgAguGAwEDfyABIAFBMGoiAyABKAIAQQNxQQNGGygCKCgCECICKALQASACKALUASICQQFqIAJBAmoQ2gEhAiABIAMgASgCAEEDcUEDRhsoAigoAhAgAjYC0AEgASADIAEoAgBBA3FBA0YbKAIoKAIQIgIgAigC1AEiBEEBajYC1AEgAigC0AEgBEECdGogATYCACABIAMgASgCAEEDcUEDRhsoAigoAhAiAygC0AEgAygC1AFBAnRqQQA2AgAgASABQTBrIgMgASgCAEEDcUECRhsoAigoAhAiAigC2AEgAigC3AEiAkEBaiACQQJqENoBIQIgASADIAEoAgBBA3FBAkYbKAIoKAIQIAI2AtgBIAEgAyABKAIAQQNxQQJGGygCKCgCECICIAIoAtwBIgRBAWo2AtwBIAIoAtgBIARBAnRqIAE2AgAgASADIAEoAgBBA3FBAkYbKAIoKAIQIgEoAtgBIAEoAtwBQQJ0akEANgIAIAAoAhBBAToA8AEgABBhKAIQQQE6APABC4ABAQJ/QcABIQMgACECA0AgAigCECADaigCACICBEBBuAEhAyABIAJHDQELCyACBEAgASgCECICKAK8ASEBIAIoArgBIgIEQCACKAIQIAE2ArwBCyABIAAgARsoAhBBuAFBwAEgARtqIAI2AgAPC0GbpANBq7oBQb8BQdyfARAAAAsJAEEBIAAQ1AILYQEEfyAAKAIEIQQCQANAIAIgBEYNASACQQJ0IAJBAWohAiAAKAIAIgVqIgMoAgAgAUcNAAsgACAEQQFrIgE2AgQgAyAFIAFBAnQiAWooAgA2AgAgACgCACABakEANgIACwtDAAJAIAAQKARAIAAQJEEPRg0BCyAAEI4PCwJAIAAQKARAIABBADoADwwBCyAAQQA2AgQLIAAQKAR/IAAFIAAoAgALC3QBAn8jAEEgayICJAACQCAArSABrX5CIIhQBEAgACABEE4iA0UNASACQSBqJAAgAw8LIAIgATYCBCACIAA2AgBBiPYIKAIAQabqAyACECAaEC8ACyACIAAgAWw2AhBBiPYIKAIAQfXpAyACQRBqECAaEC8AC7cNAgh/A3wjAEHAAmsiBCQAAkAgABA5IgkgACgCAEEDcSIKQQAQ5QMiBUUNAANAIAVFDQECQCAAIAUQRSIDRQ0AIAMtAABFBEAgBSgCCEHC8AAQPkUNAQsgAUG57QQQGxogASACKAIAEEQgBSgCCCACIAEQuwIgAUGTzQMQGxoCQCACLQAFQQFHDQACQCAFKAIIIgNBwcMBED4NACADQbHDARA+DQAgA0G5wwEQPg0AIANBl8MBED4NACADQajDARA+DQAgA0GfwwEQPkUNAQsgACAFEEUiA0UNASADLQAARQ0BIANBABCQCiIIRQRAIAQgAzYCAEHK+gQgBBAqDAILIAFB7v8EEBsaIAIgAigCACIDQQFqNgIAIAEgAxBEIAFB/s0EEBsaQQAhBwNAIAgoAgAgB00EQCACIAIoAgBBAWs2AgAgAUHu/wQQGxogASACKAIAEEQgAUH+yAEQGxogCBCOCgwDCyAHBEAgAUG57QQQGxoLIAgoAgghAyACIAIoAgAiBkEBajYCACABIAYQRCABQfDYAxAbGiABIAIoAgAQRAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADIAdB0ABsaiIDKAIAIgYOEAoKAAABAQIDBAQGBwsFBQgJCyAEQdAAQfAAIAZBAkYbNgJQIAFB7+wEIARB0ABqEB4gASACKAIAEEQgASADQQhqELQIDAoLIARBwgBB4gAgBkEERhs2AmAgAUHv7AQgBEHgAGoQHiABIAIoAgAQRCABIANBCGoQtAgMCQsgAUGk7QRBABAeIAEgAigCABBEIAEgA0EIahC0CAwICyABQYztBEEAEB4gASACKAIAEEQgAysDCCELIAQgAysDEDkDmAEgBCALOQOQASABQffqBCAEQZABahAeIAEgAigCABBEIARB4wBB8gAgAygCGCIGQQFGG0HsACAGGzYCgAEgAUH87AQgBEGAAWoQHiABIAIoAgAQRCAEIAMrAyA5A3AgAUG76gQgBEHwAGoQHiABIAIoAgAQRCABQdfMAxAbGiADKAIoIAIgARC7AiABQQoQZQwHCyAEQcMAQeMAIAZBCEYbNgKgASABQe/sBCAEQaABahAeIAEgAigCABBEIAFBo+wEQQAQHiABIAIoAgAQRCABQfDMAxAbGiADKAIIIAIgARC7AiABQQoQZQwGCyAEQcMAQeMAIAZBDUYbNgKQAiABQe/sBCAEQZACahAeIAEgAigCABBEAkACQAJAIAMoAggOAgABAgsgAUGj7ARBABAeIAEgAigCABBEIAFB8MwDEBsaIAMoAhAgAiABELsCIAFBChBlDAcLIAFB/esEQQAQHiABIAIoAgAQRCABIAIoAgAQRCADKwMQIQsgBCADKwMYOQOIAiAEIAs5A4ACIAFBo+sEIARBgAJqEB4gASACKAIAEEQgAysDICELIAQgAysDKDkD+AEgBCALOQPwASABQY3rBCAEQfABahAeIAEgAigCABBEIAEgAygCMCADKAI0IAIQkA8MBgsgAUGQ7ARBABAeIAEgAigCABBEIAEgAigCABBEIAMrAxAhCyADKwMYIQwgBCADKwMgOQPgASAEIAw5A9gBIAQgCzkD0AEgAUHV6wQgBEHQAWoQHiABIAIoAgAQRCADKwMoIQsgAysDMCEMIAQgAysDODkDwAEgBCAMOQO4ASAEIAs5A7ABIAFBuesEIARBsAFqEB4gASACKAIAEEQgASADKAJAIAMoAkQgAhCQDwwFCyABQbDtBEEAEB4gASACKAIAEEQgBCADKwMIOQOgAiABQczqBCAEQaACahAeIAEgAigCABBEIAFBjc0DEBsaIAMoAhAgAiABELsCIAFBChBlDAQLIAFBmO0EQQAQHiABIAIoAgAQRCABQYPNAxAbGiADKAIIIAIgARC7AiABQQoQZQwDCyABQfHrBEEAEB4gASACKAIAEEQgBCADKAIINgKwAiABQe7HBCAEQbACahAeDAILIARBsgI2AhQgBEGFuwE2AhBBiPYIKAIAQdi/BCAEQRBqECAaEDsACyAEQeUAQcUAIAYbNgJAIAFB7+wEIARBQGsQHiABIAIoAgAQRCADKwMIIQsgAysDECEMIAMrAxghDSAEIAMrAyA5AzggBCANOQMwIAQgDDkDKCAEIAs5AyAgAUHJygQgBEEgahAeCyACIAIoAgBBAWsiAzYCACABIAMQRCABQa8IEBsaIAdBAWohBwwACwALIAAgBRBFIAIgARC7AgsgCSAKIAUQ5QMhBQwACwALIARBwAJqJAAL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IAM2AgAgAUEgakG4MiABEIQBA0AgAi0AACACQQFqIQINAAtBuqADIQMMAQUgAUEgakEpEH8LCwsgAEGsywMgAUEgahDCARDAAwwACwALIAFBIGoQXCABQTBqJAALaQECfyMAQRBrIgMkACADQgA3AwggA0IANwMAA0ACQCACLQAAIgRB3ABHBEAgBA0BIAAgASADEMIBEHEgAxBcIANBEGokAA8LIANB3AAQfyACLQAAIQQLIAMgBMAQfyACQQFqIQIMAAsAC5ICAQV/IAAQhwUhAyAAECQhAQJAAkACQANAIAEiAkUNASADIAFBAWsiAWotAABBLkcNAAsgABAkIQEDQCABQQFrIQUgASACRwRAIAMgBWotAABBMEcNAgsCQCAAECgEQCAALQAPIgRFDQQgACAEQQFrOgAPDAELIAAgACgCBEEBazYCBAsgASACRyAFIQENAAsgABAkIgFBAkkNACABIANqIgFBAmsiAi0AAEEtRw0AIAFBAWstAABBMEcNACACQTA6AAAgABAoBEAgAC0ADyIBRQ0DIAAgAUEBazoADw8LIAAgACgCBEEBazYCBAsPC0HijwNBoPwAQZIDQegqEAAAC0HijwNBoPwAQagDQegqEAAAC8cBAQN/IwBBEGsiAiQAIAFBUEEAIAEoAgBBA3FBAkcbaiIBQVBBACABKAIAQQNxIgNBAkcbaigCKCEEIAFBMEEAIANBA0cbaigCKCEDIAIgASkDCDcDCCACIAEpAwA3AwACQCAAIAMgBCACENkCRQ0AIAAQOSAARgRAIAAtABhBIHEEQCABEMcLCyAAIAEQzwcgARCzByAAQQIgASkDCBC/BgsgACABQQ9BAEEAEMgDDQAgABA5IABGBEAgARAYCwsgAkEQaiQACxoAIAAgARCsASIBIAIQwQMgACABQQAQjAEaC0UAIAAgAUG+zgMgAisDAEQAAAAAAABSQKMQjQMgACABQb7OAyADIAIrAwgiA6EgA0G42wotAAAbRAAAAAAAAFJAoxCNAwt9AQN/IwBBMGsiAiQAIAAQISEDIAAQLSEEAkACQCADBEBBfyEAIAQgASADEJIGQX9HDQEMAgsgAiAAKQMINwMAIAJBEGoiA0EeQdTPASACELQBGkF/IQAgASADIAQoAkwoAgQoAgQRAABBf0YNAQtBACEACyACQTBqJAAgAAvN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ABCPATYCuAJBAEHk2wooAgBEAAAAAAAALEBEAAAAAAAA8D8QTCEOIABBnKAKNgLIAiAAIA45A8ACIAAgARAhNgK0ASAAKAKoAhAYIABBADYCqAIgACgCrAIQGCAAQQA2AqwCIAAoArQCEBggAEEANgK0AgJAAkAgAUGqKRAnIgUEQCAAIAFB/doAECciAkG8zgMgAhs2AqACIAAgAUHw2gAQJyICQbqgAyACGyIENgKkAiAAKAKgAiICIAQQyQIgAmoiAkEAIAItAAAbIgIEQCADIAIsAAA2AtACQYLkBCADQdACahAqIABB8f8ENgKkAgsgACAFEGQ2AqgCIANCADcD0AQgA0IANwPIBCADQgA3A8AEIANBwARqQQQQJiECIAMoAsAEIAJBAnRqIAMoAtQENgIAIAAoAqgCIQIDQCACIAAoAqACELEFIgIEQCADIAI2AtQEIANBwARqQQQQJiECIAMoAsAEIAJBAnRqIAMoAtQENgIAQQAhAgwBCwsgAygCyAQiAkEBayIFQQBIDQIgAkECTwRAIANBADYC1AQgA0HABGoiBEEEECYhAiADKALABCACQQJ0aiADKALUBDYCACAEIABBrAJqQQBBBBDHAQtBACECA0AgAygCyAQgAksEQCADIAMpA8gENwO4AiADIAMpA8AENwOwAiADQbACaiACEBkhCQJAAkACQCADKALQBCIEDgICAAELIAMoAsAEIAlBAnRqKAIAEBgMAQsgAygCwAQgCUECdGooAgAgBBEBAAsgAkEBaiECDAELCyADQcAEaiICQQQQMSACEDQgACAFNgKwAiABQZEkECciBUUNASAFLQAARQ0BQQAhBiAAKAKwAkECakEEED8hB0EBIQIDQCAAKAKwAiIEIAJOBEAgACACIAQgBRDfCARAIAcgBkEBaiIGQQJ0aiACNgIACyACQQFqIQIMAQsLAkAgBgRAIAcgBjYCACAHIAZBAnRqIARBAWo2AgQMAQsgAyAFNgLAAkHA5QQgA0HAAmoQKiAHEBhBACEHCyAAIAc2ArQCDAELIABBATYCsAILQQEQ2gIgA0GoBGohDCADQcgEaiENQYC/CCgCACEIIAAgACgCmAEiAjYCnAEDQAJAAkACQCACBEACfyAAKAI8IgRFBEBBACEGQQAMAQsgBCgCDCEGIAQoAggLIQQgAiAGNgIYIAIg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/////////w+DhCICQoGAgICAgICACFoEQCAAQgF8IQAMAQsgAkKAgICAgICAgAhSDQAgAEIBgyAAfCEACyAAQoCAgICAgIAIhSAAIABC/////////wdWIgQbIQAgBK0LIQIgBUEgaiQAIAFCgICAgICAgICAf4MgAkI0hoQgAIS/C4kCAAJAIAAEfyABQf8ATQ0BAkBBxIMLKAIAKAIARQRAIAFBgH9xQYC/A0YNAwwBCyABQf8PTQRAIAAgAUE/cUGAAXI6AAEgACABQQZ2QcABcjoAAEECDwsgAUGAQHFBgMADRyABQYCwA09xRQRAIAAgAUE/cUGAAXI6AAIgACABQQx2QeABcjoAACAAIAFBBnZBP3FBgAFyOgABQQMPCyABQYCABGtB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBA8LC0H8gAtBGTYCAEF/BUEBCw8LIAAgAToAAEEBC8ICAQR/IwBB0AFrIgUkACAFIAI2AswBIAVBoAFqIgJBAEEoEDgaIAUgBSgCzAE2AsgBAkBBACABIAVByAFqIAVB0ABqIAIgAyAEENELQQBIBEBBfyEEDAELIAAoAkxBAEggACAAKAIAIghBX3E2AgACfwJAAkAgACgCMEUEQCAAQdAANgIwIABBADYCHCAAQgA3AxAgACgCLCEGIAAgBTYCLAwBCyAAKAIQDQELQX8gABCmBw0BGgsgACABIAVByAFqIAVB0ABqIAVBoAFqIAMgBBDRCwshAiAGBEAgAEEAQQAgACgCJBEDABogAEEANgIwIAAgBjYCLCAAQQA2AhwgACgCFCEBIABCADcDECACQX8gARshAgsgACAAKAIAIgAgCEEgcXI2AgBBfyACIABBIHEbIQQNAAsgBUHQAWokACAECxIAIAAgAUEKQoCAgIAIELAFpwthAAJAIAANACACKAIAIgANAEEADwsgACABEKoEIABqIgAtAABFBEAgAkEANgIAQQAPCyAAIAEQyQIgAGoiAS0AAARAIAIgAUEBajYCACABQQA6AAAgAA8LIAJBADYCACAAC38CAn8CfiMAQaABayIEJAAgBCABNgI8IAQgATYCFCAEQX82AhggBEEQaiIFQgAQjwIgBCAFIANBARDYCyAE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IABCADcCBCAAIAAoAiwiATYCHCAAIAE2AhQgACABIAAoAjBqNgIQQQALlAMCA34CfwJAIAC9IgJCNIinQf8PcSIEQf8PRw0AIABEAAAAAACAVkCiIgAgAKMPCyACQgGGIgFCgICAgICAwNaAf1gEQCAARAAAAAAAAAAAoiAAIAFCgICAgICAwNaAf1EbDwsCfiAERQRAQQAhBCACQgyGIgFCAFkEQANAIARBAWshBCABQgGGIgFCAFkNAAsLIAJBASAEa62GDAELIAJC/////////weDQoCAgICAgIAIhAshASAEQYUISgRAA0ACQCABQoCAgICAgKALfSIDQgBTDQAgAyIBQgBSDQAgAEQAAAAAAAAAAKIPCyABQgGGIQEgBEEBayIEQYUISg0AC0GFCCEECwJAIAFCgICAgICAoAt9IgNCAFMNACADIgFCAFINACAARAAAAAAAAAAAog8LIAFC/////////wdYBEADQCAEQQFrIQQgAUKAgICAgICABFQgAUIBhiEBDQALCyACQoCAgICAgICAgH+DIAFCgICAgICAgAh9IAStQjSGhCABQQEgBGutiCAEQQBKG4S/C+ICAQV/AkACQAJAIAIoAkxBAE4EQCABQQJIDQEMAgtBASEGIAFBAUoNAQsgAiACKAJIIgJBAWsgAnI2AkggAUEBRw0BIABBADoAACAADwsgAUEBayEEIAAhAQJAA0ACQAJAAkAgAigCBCIDIAIoAggiBUYNAAJ/IANBCiAFIANrEPoCIgcEQCAHIAIoAgQiA2tBAWoMAQsgAigCCCACKAIEIgNrCyEFIAEgAyAFIAQgBCAFSxsiAxAfGiACIAIoAgQgA2oiBTYCBCABIANqIQEgBw0CIAQgA2siBEUNAiAFIAIoAghGDQAgAiAFQQFqNgIEIAUtAAAhAwwBCyACEL0FIgNBAE4NAEEAIQQgACABRg0DIAItAABBEHENAQwDCyABIAM6AAAgAUEBaiEBIANB/wFxQQpGDQAgBEEBayIEDQELCyAARQRAQQAhBAwBCyABQQA6AAAgACEECyAGDQALIAQLpBgDE38EfAF+IwBBMGsiCSQAAkACQAJAIAC9IhlCIIinIgNB/////wdxIgZB+tS9gARNBEAgA0H//z9xQfvDJEYNASAGQfyyi4AETQRAIBlCAFkEQCABIABEAABAVPsh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IABEAAAAAAAA4D+ioiIDob1CgICAgHCDvyIERAAAIGVHFfc/oiIBIAkgCEEUdmq3IgKgIgUgASACIAWhoCAAIABEAAAAAAAAAECgoyIBIAMgASABoiICIAKiIgEgASABRJ/GeNAJmsM/okSveI4dxXHMP6CiRAT6l5mZmdk/oKIgAiABIAEgAUREUj7fEvHCP6JE3gPLlmRGxz+gokRZkyKUJEnSP6CiRJNVVVVVVeU/oKKgoKIgACAEoSADoaAiACAEoEQAou8u/AXnPaIgAEQAACBlRxX3P6KgoKAhAAsgAAtZAQF/IwBBIGsiAiQAIAAQ7AEiAAR/IAAoAgghACACQgA3AwggAkEANgIYIAJCADcDECACIAE2AgggAkIANwMAIAAgAkEEIAAoAgARAwAFQQALIAJBIGokAAuVAQIDfwV8IAMQVyIImiEJIAAoAgghBiADEEohByAGEBwhBANAIAQEQCAEKAIQKAKUASIFIAIgBSsDACIKIAiiIAcgBSsDCCILoqCgOQMIIAUgASAKIAeiIAsgCaKgoDkDACAGIAQQHSEEDAELCyAAQThqIQQDQCAEKAIAIgAEQCAAIAEgAiADEK8HIABBBGohBAwBCwsLtQIBBX8jAEEwayIDJAAgACgACCABTwRAIABBADYCFCAAQQQQJiEEIAAoAgAgBEECdGogACgCFDYCACAAQQQQjAIgACgACCABQX9zakECdCIEBEAgACgCACADIAApAgg3AyggAyAAKQIANwMgIANBIGogAUEBahAZIAAoAgAhByADIAApAgg3AxggAyAAKQIANwMQQQJ0aiAHIANBEGogARAZQQJ0aiAEELYBGgsgACACNgIUIAMgACkCCDcDCCADIAApAgA3AwAgAyABEBkhAQJAAkACQCAAKAIQIgIOAgIAAQsgACgCACABQQJ0aigCABAYDAELIAAoAgAgAUECdGooAgAgAhEBAAsgACgCACABQQJ0aiAAKAIUNgIAIANBMGokAA8LQfGhA0GFuAFBFkGhGhAAAAsdACAAKAIIIAFBARCFARogASgCECgCgAEgADYCDAtEAQF/IAAEQCAAKAIEIgEEQCABEG0LIAAoAggiAQRAIAEQbQsgACgCDBAYIAAoAhQiAQRAIAEgACgCEBEBAAsgABAYCws+AQN/IAAQLSECIAAoAhAiAQRAA0Ag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/wotAABB1P8KQQE6AABBAXFFBEAgCkEwQQAgCigCAEEDcUEDRxtqKAIoECEhACAEIApBUEEAIAooAgBBA3FBAkcbaigCKBAhNgIEIAQgADYCAEHo7QQgBBAqCyAGEBggChCZBAwFBSAEKAKMASENIAQrA1ghEyAFIAQrA4ABOQMIIAUgEzkDACABQQFrIQEgBUEQaiEFIAIgDWohAgwCCwALCwNAIAItAAAiBUEJayIBQRdLQQEgAXRBn4CABHFFckUEQCACQQFqIQIMAQsLIAogABDeBiEJIBIEQCAEKAJ8IQEgCSAVOQMYIAkgFjkDECAJIAE2AggLIAgEQCAEKAJ4IQEgCSAXOQMoIAkgFDkDICAJIAE2AgwLIAIgBUEARyIRaiECQQAhBQNAIAAgBUcEQCAFQQR0IgEgCSgCAGoiDSABIAZqIgEpAwA3AwAgDSABKQMINwMIIAVBAWohBQwBCwsgBhAYDAELCyAKKAIQIgUoAmAiAARAIAogAEH12QAQsQQgCigCECEFCyAFKAJsIgAEQCAKIABB2tkAELEEIAooAhAhBQsgBSgCZCIABH8gCiAAQfDZABCxBCAKKAIQBSAFCygCaCIABEAgCiAAQejZABCxBAsgC0EBaiELCyADIAoQMCEKDAELCyADIA8QHSEPDAELCyALRQRAQQAhAQwBC0ECQQEgAxC0AiALRhshAQtBACEAQQAhCiADKAIQKAIIIgIoAlgiCARAIAJBADYCVEEBIQoLAkAgCA0AQfjaCigCAEEBRw0AIAMQtgRFDQBBASEAIAMoAhAoAgwiAkUNACACQQA6AFELIAMQwQIgCARAIAMoAhAhD0QAAAAAAAAAACEVRAAAAAAAAAAAIRZBACERQQAhEkEAIQ4jAEFAaiILJAAgAygCECICKAKQASENIARB2ABqIgkgAikDEDcDACAJIAIpAyg3AxggCSACKQMgNwMQIAkgAikDGDcDCAJAIAIoAggoAlgiBkUNAAJAIAkrAwAgCSsDEGINACAJKwMIIAkrAxhiDQAgCUL/////////dzcDGCAJQv/////////3/wA3AwAgCUL/////////9/8ANwMIIAlC/////////3c3AxALIAYoAgghBwNAIBEgBigCAE8NASALQgA3AzggC0IANwMwIAtCADcDKCALQgA3AyACQAJAAkACQAJA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AisDAKEiGyAboiACKwMYIAIrAwihIhsgG6KgIAUrAxAgBSsDAKEgBCsDOKAgBCsDKKEiGyAbokQAAAAAAADQP6JlIQMMAQsgBSgCICEDIAUoAiQgASACKQMYNwPIAiABIAIpAxA3A8ACIAMgAUHAAmoQ5gwhBiAEKAJIIQMgBCgCTCABIAIpAwg3A7gCIAEgAikDADcDsAIgAyABQbACahDmDCEHIAQoAkgiEUEBdCEXIAUoAiAiDkEBdCEYIBFBAWshGSAOQQFrIRpBACEDQQAhCAJAA0AgASAGIAhBBHRqIgkpAwg3A6gCIAEgCSkDADcDoAIgASAGIAggGmogDm9BBHRqIhIpAwg3A5gCIAEgEikDADcDkAIgAUHABGogAUGgAmogAUGQAmoQ6wwgASAHIAxBBHRqIgspAwg3A4gCIAEgCykDADcDgAIgASAHIAwgGWogEW9BBHRqIhMpAwg3A/gBIAEgEykDADcD8AEgAUGwBGogAUGAAmogAUHwAWoQ6wwgAUIANwOYBCABQgA3A+gBIAEgASkDyAQ3A9gBIAEgASkDuAQ3A8gBIAFCADcDkAQgAUIANwPgASABIAEpA8AENwPQASABIAEpA7AENwPAASABKwPoASABKwPYASIboSABKwPAASABKwPQASIcoaIgASsDyAEgG6EgASsD4AEgHKGioSEfIAEgEikDCDcDuAEgASASKQMANwOwASABIAkpAwg3A6gBIAEgCSkDADcDoAEgASALKQMINwOYASABIAspAwA3A5ABIAFBsAFqIAFBoAFqIAFBkAFqEOoMIRUgASATKQMINwOIASABIBMpAwA3A4ABIAEgCykDCDcDeCABIAspAwA3A3AgASAJKQMINwNoIAEgCSkDADcDYCABQYABaiABQfAAaiABQeAAahDqDCEWIAEgEikDCDcDWCABIBIpAwA3A1AgASAJKQMINwNIIAEgCSkDADcDQCABIBMpAwg3AzggASATKQMANwMwIAEgCykDCDcDKCABIAspAwA3AyAgASsDMCIgIAErA1giGyABQUBrIgkrAwgiIaGiIAErAyAiJSAhIBuhIiKiIAErA1AiHiABKwMoIh0gASsDOCIcoaIiJiAJKwMAIiMgHCAdoaKgoKAiJEQAAAAAAAAAAGIEfyABICUgHCAboaIgJiAgIBsgHaGioKAgJKMi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AgAiESAKKAIASARAIBAgAkECdCIRaiAMNgIAIAMgEWogBCAFaigCADYCACACQQFqIQIMAQsgAyARQQJ0aiIMIAwoAgAgBCAFaigCAGo2AgALIABBAWohAAwBCwsgByAJaiACNgIAIAEhAAwACwALIANBACADQQBKGyEJQQAhAANAIAAgCUYNByAPIABBAWoiAUECdCIDaiEEIA8gAEECdCIFaigCACEAA0AgACAEKAIATkUEQCAGIBQgAEECdGooAgAiCEECdGogAjYCACAQIAJBAnRqIAg2AgAgAEEBaiEAIAJBAWohAgwBCwsgBSAHaiEEIAMgDmohCCAFIA5qKAIAIQADQCAAIAgoAgBORQRAIAYgEyAAQQJ0aigCACIFQQJ0aigCACAEKAIASARAIBAgAkECdGogBTYCACACQQFqIQILIABBAWohAAwBCwsgAyAHaiACNgIAIAEhAAwACwALIAVBAUYNBAsgEkHqBDYCBCASQZa3ATYCAEGI9ggoAgBB2L8EIBIQIBoQOwALQcLeAUGWtwFBlQRBr7ABEAAAC0GH0AFBlrcBQZYEQa+wARAAAAtB2pUBQZa3AUGXBEGvsAEQAAALIANBACADQQBKGyEIIA0oAhwhAyABKAIcIQUgACgCHCEVQQAhAANAIAAgCEYNASAPIABBAWoiAUECdCIJaiEKIA8gAEECdCIEaigCACEAA0AgACAKKAIATkUEQCAGIBQgAEECdGooAgAiC0ECdGogAjYCACAQIAJBAnRqIAs2AgAgAyACQQN0aiAVIABBA3RqKwMAOQMAIABBAWohACACQQFqIQIMAQsLIAQgB2ohCiAJIA5qIQsgBCAOaigCACEAA0AgACALKAIATkUEQAJAIAYgEyAAQQJ0aigCACIEQQJ0aigCACIMIAooAgBIBEAgECACQQJ0aiAENgIAIAMgAkEDdGogBSAAQQN0aisDADkDACACQQFqIQIMAQsgAyAMQQN0aiIEIAUgAEEDdGorAwAgBCsDAKA5AwALIABBAWohAAwBCwsgByAJaiACNgIAIAEhAAwACwALIA0gAjYCCCAGEBgLIBJBEGokACANC8sHAg9/AXwjAEEQayINJAACQCAARQRADAELAkACQCAAKAIgRQRAIAAoAhghDiAAKAIUIQcgACgCBCIIIAAoAgAiAiAAKAIIIgEgACgCEEEAELYCIgkgATYCCCAJKAIYIQ8gCSgCFCEDQX8gCCAIQQBIG0EBaiEKQQAhAQNAIAEgCkYEQEEAIQEgAkEAIAJBAEobIQogA0EEaiEFA0ACQCABIApGBEBBACEBIAhBACAIQQBKGyECDAELIAcgAUEBaiICQQJ0aiEEIAcgAUECdGooAgAhAQNAIAQoAgAgAUwEQCACIQEMAwUgBSAOIAFBAnRqKAIAQQJ0aiILIAsoAgBBAWo2AgAgAUEBaiEBDAELAAsACwsDQCABIAJGRQRAIAFBAnQhBSADIAFBAWoiAUECdGoiBCAEKAIAIAMgBWooAgBqNgIADAELC0EAIQICQAJAAkACQCAAKAIQIgFBBGsOBQADAwMBAgsgCSgCHCEFIAAoAhwhBEEAIQADQCAAIApGDQggByAAQQFqIgJBAnRqIQsgByAAQQJ0aigCACEBA0AgCygCACABTARAIAIhAAwCBSAPIAMgDiABQQJ0IgZqIgwoAgBBAnRqKAIAQQJ0aiAANgIAIAQgBmooAgAhBiADIAwoAgBBAnRqIgwgDCgCACIMQQFqNgIAIAUgDEECdGogBjYCACABQQFqIQEMAQsACwALAAsDQCACIApGDQcgByACQQFqIgBBAnRqIQUgByACQQJ0aigCACEBA0AgBSgCACABTARAIAAhAgwCBSADIA4gAUECdGooAgBBAnRqIgQgBCgCACIEQQFqNgIAIA8gBEECdGogAjYCACABQQFqIQEMAQsACwALAAsgAUEBRg0ECyANQfQANgIEIA1BlrcBNgIAQYj2CCgCAEHYvwQgDRAgGhA7AAUgAyABQQJ0akEANgIAIAFBAWohAQwBCwALAAtBodABQZa3AUHFAEGckwEQAAALIAkoAhwhBSAAKAIcIQQDQCACIApGDQEgByACQQFqIgBBAnRqIQsgByACQQJ0aigCACEBA0AgCygCACABTARAIAAhAgwCBSAPIAMgDiABQQJ0aiIGKAIAQQJ0aigCAEECdGogAjYCACAEIAFBA3RqKwMAIRAgAyAGKAIAQQJ0aiIGIAYoAgAiBkEBajYCACAFIAZBA3RqIBA5AwAgAUEBaiEBDAELAAsACwALA0AgCEEATEUEQCADIAhBAnRqIAMgCEEBayIIQQJ0aigCADYCAAwBCwsgA0EANgIACyANQRBqJAAgCQsLACAAIAFBAhD/Bws+AQJ8IAG3IQMDQEGc2wovAQAgAkoEQBDXASEEIAAoAhAoApQBIAJBA3RqIAQgA6I5AwAgAkEBaiECDAELCwv3AQICfwJ8IwBBMGsiAyQAIAAgARAsIQEDQCABBEACQAJAIAJFDQAgASACEEUiBC0AAEUNACADIANBKGo2AiACQCAEQfCDASADQSBqEFFBAEwNACADKwMoIgVEAAAAAAAAAABjDQAgBUQAAAAAAAAAAGINAkH42gooAgANAgsgAyAENgIQQem1AyADQRBqECogABAhIQQgA0KAgICAgICA+D83AwggAyAENgIAQbGmBCADEIABCyADQoCAgICAgID4PzcDKEQAAAAAAADwPyEFCyABKAIQIAU5A4gBIAYgBaAhBiAAIAEQMCEBDAELCyADQTBqJAAgBguQAQEFfyMAQeAAayIDJAAgAEEBQab0AEHx/wQQIiEFIABBAUHlOUHx/wQQIiEGIAAQHCECIAFBAkkhAQNAIAIEQCADQTdqIgQgAigCEDQC9AEQzA0gAiAFIAQQcSABRQRAIANBDmoiBCACKAIQNAL4ARDMDSACIAYgBBBxCyAAIAIQHSECDAELCyADQeAAaiQAC9gBAQJ/IAAQeSEBA0AgAQRAIAEQggggARB4IQEMAQsLAkAgAEHiJUEAQQEQNkUNACAAKAIQKAIIEBggACgCECIBQQA2AgggASgCuAEQGCAAKAIQKAKMAhAYIAAoAhAoAtgBEBggACgCECICKALEAQRAIAIoAugBIQEDQCABIAIoAuwBSkUEQCACKALEASABQcgAbGooAgwQGCABQQFqIQEgACgCECECDAELCyACKALEAUG4f0EAIAIoAugBQX9GG2oQGAsgABA5IABGDQAgACgCECgCDBC8AQsLzgIBA38jAEHQAGsiAiQAIAJCADcDSCACQgA3A0ACfyAAEDxFBEAgAUEANgIAQQAMAQsgAkIANwM4IAJCADcDMCACQgA3AyggAkIANwMYIAJCADcDECACQgA3AwggAkG6AzYCJCACQbsDNgIgIAAQHCEDA0AgAwRAIAMoAhBBADYCsAEgACADEB0hAwwBCwsgABAcIQMDQCADBEAgA0F/IAIoAiQRAABFBEAgAkFAayIEQQAQ6AUgAiACKAIwNgIAIAQgAhDnBSAAIAQQsQNBARCSASIEQeIl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AigCACAFIAIpAgg3A7gGIAUgAikCADcDsAYgBUGwBmogAxAZQcgAbGooAixBAWtBfUsNACACKAIAIAUgAikCCDcD+AMgBSACKQIANwPwAyAFQfADaiADEBlByABsaigCPCACKAIAIQAgBSACKQIINwPoAyAFIAIpAgA3A+ADIAVB4ANqIAMQGSEBQQFrQX1NBEAgAigCACEGAn8gACABQcgAbGooAkBBAUYEQCAFIAIpAgg3A8gBIAUgAikCADcDwAEgBiAFQcABaiADEBlByABsaigCLCEAIAIoAgAgBSACKQIINwO4ASAFIAIpAgA3A7ABIAVBsAFqIAQQGUHIAGxqIAA2AiggAigCACAFIAIpAgg3A6gBIAUgAikCADcDoAEgBUGgAWogAxAZQcgAbGpBfzYCLCACKAIAIAUgAikCCDcDmAEgBSACKQIANwOQASAFQZABaiADEBlByABsaigCPCEAIAIoAgAgBSACKQIINwOIASAFIAIpAgA3A4ABIAVBgAFqIAQQGUHIAGxqIAA2AiwgAigCACEAIAUgAikCCDcDeCAFIAIpAgA3A3AgACAFQfAAaiADEBlByABsaigCKCEBIAUgAikCCDcDaCAFIAIpAgA3A2AgACAFQeAAaiABEBlByABsaiADNgIwIAIoAgAhACAFIAIpAgg3A1ggBSACKQIANwNQIAAgBUHQAGogBBAZQcgAbGooAighASAFIAIpAgg3A0ggBSACKQIANwNAIAAgBUFAayABEBlByABsaiAENgIwIAIoAgAhACAFIAIpAgg3AzggBSACKQIANwMwIAAgBUEwaiAEEBlByABsakEsagwBCyAFIAIpAgg3A4gDIAUgAikCADcDgAMgBiAFQYADaiAEEBlByABsakF/NgIsIAIoAgAgBSACKQIINwP4AiAFIAIpAgA3A/ACIAVB8AJqIAMQGUHIAGxqKAIsIQAgAigCACAFIAIpAgg3A+gCIAUgAikCADcD4AIgBUHgAmogBBAZQcgAbGogADYCKCACKAIAIAUgAikCCDcD2AIgBSACKQIANwPQAiAFQdACaiADEBlByABsaigCKCEAIAIoAgAgBSACKQIINwPIAiAFIAIpAgA3A8ACIAVBwAJqIAMQGUHIAGxqIAA2AiwgAigCACAFIAIpAgg3A7gCIAUgAikCADcDsAIgBUGwAmogAxAZQcgAbGooAjwhACACKAIAIAUgAikCCDcDqAIgBSACKQIANwOgAiAFQaACaiADEBlByABsaiAANgIoIAIoAgAhACAFIAIpAgg3A5gCIAUgAikCADcDkAIgACAFQZACaiADEBlByABsaigCKCEBIAUgAikCCDcDiAIgBSACKQIANwOAAiAAIAVBgAJqIAEQGUHIAGxqIAM2AjAgAigCACEAIAUgAikCCDcD+AEgBSACKQIANwPwASAAIAVB8AFqIAMQGUHIAGxqKAIsIQEgBSACKQIINwPoASAFIAIpAgA3A+ABIAAgBUHgAWogARAZQcgAbGogAzYCMCACKAIAIQAgBSACKQIINwPYASAFIAIpAgA3A9ABIAAgBUHQAWogBBAZQcgAbGpBKGoLKAIAIQEgBSACKQIINwMoIAUgAikCADcDICAAIAVBIGogARAZQcgAbGogBDYCMCACKAIAIAUgAikCCDcDGCAFIAIpAgA3AxAgBUEQaiADEBlByABsakEANgI8IAIoAgAgBSACKQIINwMIIAUgAikCADcDACAFIAQQGUHIAGxqQQA2AjwMAgsgACABQcgAbGooAiwhACACKAIAIAUgAikCCDcD2AMgBSACKQIANwPQAyAFQdADaiAEEBlByABsaiAANgIoIAIoAgAgBSACKQIINwPIAyAFIAIpAgA3A8ADIAVBwANqIAMQGUHIAGxqQX82AiwgAigCACAFIAIpAgg3A7gDIAUgAikCADcDsAMgBUGwA2ogBBAZQcgAbGpBfzYCLCACKAIAIQAgBSACKQIINwOoAyAFIAIpAgA3A6ADIAAgBUGgA2ogBBAZQcgAbGooAighASAFIAIpAgg3A5gDIAUgAikCADcDkAMgACAFQZADaiABEBlByABsaiAENgIwDAELIAIoAgAgBSACKQIINwOoBiAFIAIpAgA3A6AGIAVBoAZqIAMQGUHIAGxqKAIoIQYgAigCACEHIAUgAikCCDcDmAYgBSACKQIANwOQBgJAIAcgBUGQBmogBhAZQcgAbGooAjAiB0EBa0F9Sw0AIAIoAgAgBSACKQIINwOIBiAFIAIpAgA3A4AGIAVBgAZqIAYQGUHIAGxqKAI0QQFrQX1LDQAgAigCACEGIAUgAikCCDcDuAUgBSACKQIANwOwBQJAIAYgBUGwBWogBxAZQcgAbGooAgRBAEwNACACKAIAIAUgAikCCDcDqAUgBSACKQIANwOgBSAFQaAFaiAHEBlByABsaigCBCABIABBEGoQxwQNACACKAIAIAUgAikCCDcDmAUgBSACKQIANwOQBSAFQZAFaiADEBlByABsakF/NgIoIAIoAgAgBSACKQIINwOIBSAFIAIpAgA3A4AFIAVBgAVqIAMQGUHIAGxqQX82AiwgAigCACAFIAIpAgg3A/gEIAUgAikCADcD8AQgBUHwBGogBBAZQcgAbGpBfzYCLCACKAIAIQAgBSACKQIINwPoBCAFIAIpAgA3A+AEIAAgBUHgBGogBBAZQcgAbGooAighASAFIAIpAgg3A9gEIAUgAikCADcD0AQgACAFQdAEaiABEBlByABsaiAENgI0DAILIAIoAgAgBSACKQIINwPIBCAFIAIpAgA3A8AEIAVBwARqIAQQGUHIAGxqQX82AiggAigCACAFIAIpAgg3A7gEIAUgAikCADcDsAQgBUGwBGogBBAZQcgAbGpBfzYCLCACKAIAIAUgAikCCDcDqAQgBSACKQIANwOgBCAFQaAEaiADEBlByABsakF/NgIsIAIoAgAhACAFIAIpAgg3A5gEIAUgAikCADcDkAQgACAFQZAEaiADEBlByABsaigCKCEBIAUgAikCCDcDiAQgBSACKQIANwOABCAAIAVBgARqIAEQGUHIAGxqIAM2AjAMAQsgAigCACEAIAUgAikCCDcD+AUgBSACKQIANwPwBSAAIAVB8AVqIAMQGUHIAGxqKAIoIQEgBSACKQIINwPoBSAFIAIpAgA3A+AFIAAgBUHgBWogARAZQcgAbGogAzYCMCACKAIAIQAgBSACKQIINwPYBSAFIAIpAgA3A9AFIAAgBUHQBWogAxAZQcgAbGooAighASAFIAIpAgg3A8gFIAUgAikCADcDwAUgACAFQcAFaiABEBlByABsaiAENgI0CyAFQdAGaiQAC1UCAnwBfyABQQAgAUEAShshASAAtyIDIQIDfyABIARGBH8gAyACo5siAplEAAAAAAAA4EFjBEAgAqoPC0GAgICAeAUgBEEBaiEEIAIQrQchAgwBCwsLPgECfCAAIAErAwAiAhAyOQMAIAAgASsDCCIDEDI5AwggACACIAErAxCgEDI5AxAgACADIAErAxigEDI5AxgLLAEBfyAAKAIEIgIE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RQRAAkAgASADKAK4ASACQQJ0aigCACIDECEiBUGABCABKAIAEQMABEAgBCAFNgIAQaG4BCAEECoMAQtBEBBSIgYgAzYCDCAGIAU2AgggASAGQQEgASgCABEDABoLIAMgARD0CSACQQFqIQIMAQsLIARBEGokAAsoAQF/A38gAAR/IAAoAgQQ9QkgAWpBAWohASAAKAIAIQAMAQUgAQsLC00BAn8gARAhIgMEQAJAIANB4jdBBxDqAQ0AIAAgARAhQYAEIAAoAgARAwAiAEUNACAAKAIMIQILIAIPC0GI1AFB6/sAQQxBnvcAEAAACxkAIABB5PwJQZTuCSgCABCTASIAEPQJIAAL8gECA38GfCAAIAEoAiwgASgCCCIDIAEoAgQiAUEBayICQQAgASACTxtsQQR0aiICKQMANwMQIAAgAikDCDcDGCAAIAIpAwg3AwggACACKQMANwMAQQEgAyADQQFNGyEDIAArAxghBSAAKwMIIQYgACsDECEHIAArAwAhCEEBIQEDQCABIANGBEAgACAFOQMYIAAgBjkDCCAAIAc5AxAgACAIOQMABSAFIAIgAUEEdGoiBCsDCCIJIAUgCWQbIQUgByAEKwMAIgogByAKZBshByAGIAkgBiAJYxshBiAIIAogCCAKYxshCCABQQFqIQEMAQsLCyoBAX8CQCABRQ0AIAAgARBFIgBFDQAgAC0AAEUNACAAEGhBAXMhAgsgAgtRAQF/AkACQCADRQ0AIANBOhDNASIERQ0AIARBADoAACAAIAIgAyAEQQFqIgMgAREHACAEQTo6AAAMAQsgACACIANBACABEQcACyAAIAM2AiQLXAAgASgCCEUEQCAAIAEQ1QYLIAIgAEGc3QooAgAgASsDAEQAAAAAAADwPxBMOQMAIAIgAEGg3QooAgAgASgCCBCPATYCCCACIABBpN0KKAIAIAEoAgwQjwE2AgwLlwQCCHwIfyMAQUBqIgwkACABKAIAIQ8gAisDCCEGIAIrAwAhByABKAIEIRBE////////738hA0F/IQ1BfyECA0ACQCALIBBGBEAgDyANQTBsaiIBKAIAIAIgAiABKAIEQQFrRmsiASABQQNwa0EEdGohAkEAIQEMAQsgDyALQTBsaiIBKAIEIREgASgCACESQQAhAQNAIAEgEUYEQCALQQFqIQsMAwUgEiABQQR0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dSAGQRBqJAAgBUHomws2AghBhJ0LIAUoAggQogIaQYidC0EBOgAACyAFQRBqJABBjJ0LQYSdCxDcCkGQnQtBAToAAAsgAEGMnQsoAgAiADYCACAAENsKCxEAIABB6JsLRwRAIAAQ3goLCxMAIAAgASgCACIANgIAIAAQ2woLnQEBBH8gAEG4swk2AgAgAEEIaiEBA0AgARDEAiACSwRAIAEgAhCdAygCAARAIAEgAhCdAygCABCRBQsgAkEBaiECDAELCyAAQZABahA1GiMAQRBrIgIkACACQQxqIAEQogIiASgCACIDKAIABEAgAxDfCiABKAIAGiABKAIAEJwDIAEoAgAiASgCACABEL8KGhC+CgsgAkEQaiQAIAALDwAgACAAKAIEQQFqNgIECwwAIAAgACgCABDACgt7AQN/IwBBEGsiBCQAIARBBGoiAiAANgIAIAIgACgCBCIDNgIEIAIgAyABQQJ0ajYCCCACIgMoAgQhASACKAIIIQIDQCABIAJGBEAgAygCACADKAIENgIEIARBEGokAAUgABCcAxogARDBCiADIAFBBGoiATYCBAwBCwsLIAAgAEGIvAk2AgAgACgCCBBmRwRAIAAoAggQmwsLIAALBABBfwumAQEDfyMAQRBrIgQkACMAQSBrIgMkACADQRhqIAAgARDGCiADQRBqIAMoAhggAygCHCACEKsLIAMoAhAhBSMAQRBrIgEkACABIAA2AgwgAUEMaiIAIAUgABD1BmtBAnUQ+wYhACABQRBqJAAgAyAANgIMIAMgAiADKAIUEKQDNgIIIARBCGogA0EMaiADQQhqEPsBIANBIGokACAEKAIMIARBEGokAAuBBgEKfyMAQRBrIhMkACACIAA2AgBBBEEAIAcbIRUgA0GABHEhFgNAIBRBBEYEQCANECVBAUsEQCATIA0Q3gE2AgwgAiATQQxqQQEQ+wYgDRDyAiACKAIAEOMKNgIACyADQbABcSIDQRBHBEAgASADQSBGBH8gAigCAAUgAAs2AgALIBNBEGokAAUCQAJAAkACQAJAAkAgCCAUai0AAA4FAAEDAgQFCyABIAIoAgA2AgAMBAsgASACKAIANgIAIAZBIBDRASEHIAIgAigCACIPQQRqNgIAIA8gBzYCAAwDCyANEPYBDQIgDUEAEJoFKAIAIQcgAiACKAIAIg9BBGo2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QQFqIQUgAUEBaiEBDAELCyADQQA6AAcgBSADQQdqENIBIANBEGokAAwBCxDKAQALCw8AIAAgACgCGCABajYCGAsXACAAIAI2AhwgACABNgIUIAAgATYCGAtXAQJ/AkAgACgCACICRQ0AAn8gAigCGCIDIAIoAhxGBEAgAiABIAIoAgAoAjQRAAAMAQsgAiADQQRqNgIYIAMgATYCACABC0F/EMgCRQ0AIABBADYCAAsLMQEBfyAAKAIMIgEgACgCEEYEQCAAIAAoAgAoAigRAgAPCyAAIAFBBGo2AgwgASgCAAsnAQF/IAAoAgwiASAAKAIQRgRAIAAgACgCACgCJBECAA8LIAEoAgALJwEBfwJAIAAoAgAiAkUNACACIAEQvQtBfxDIAkUNACAAQQA2AgALC1MBA38CQEF/IAAoAkwQyAJFBEAgACgCTCEADAELIAAjAEEQayIBJAAgAUEMaiICIAAQUyACEMwBQSAQmwEhACACEFAgAUEQaiQAIAA2AkwLIADACxoAIAAgASABKAIAQQxrKAIAaigCGDYCACAACwsAIABB4JoLEKkCCw0AIAAgASACQQAQogcLCQAgABCSBxAYCz0BAX8gACgCGCICIAAoAhxGBEAgACABEKYDIAAoAgAoAjQRAAAPCyAAIAJBAWo2AhggAiABOgAAIAEQpgMLNAEBfyAAKAIMIgEgACgCEEYEQCAAIAAoAgAoAigRAgAPCyAAIAFBAWo2AgwgASwAABCmAwsqAQF/IAAoAgwiASAAKAIQRgRAIAAgACgCACgCJBECAA8LIAEsAAAQpgMLDwAgACAAKAIAKAIYEQIACwgAIAAoAhBFCwQAQX8LLAAgACABEK4HIgFFBEAPCwJAIAMEQCAAIAEgAhCoBAwBCyAAIAEgAhC7CwsLCAAgABCLBxoLvg8CBX8PfiMAQdACayIFJAAgBEL///////8/gyEKIAJC////////P4MhCyACIASFQoCAgICAgICAgH+DIQwgBEIwiKdB//8BcSEIAkACQCACQjCIp0H//wFxIglB//8Ba0GCgH5PBEAgCEH//wFrQYGAfksNAQsgAVAgAkL///////////8AgyINQoCAgICAgMD//wBUIA1CgICAgICAwP//AFEbRQRAIAJCgICAgICAIIQhDAwCCyADUCAEQv///////////wCDIgJC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dGpBADYCAAsgDEUEQEEAIQwMAQsgBCAMakEAOgAACyACIQALIAMoAgQgAygCLGusIAMpA3ggFXx8IRUgDiAIQQBHaiEOCyABQQFqIQQgAS0AASIBDQEMCAsLIAIhAAwBC0EBIQVBACEMQQAhAAwCCyAPIQUMAgsgDyEFCyAOQX8gDhshDgsgBUUNASAMEBggABAYDAELQX8hDgsgBkGwAmokACADQZABaiQAIA4LQwACQCAARQ0AAkACQAJAAkAgAUECag4GAAECAgQDBAsgACACPAAADwsgACACPQEADwsgACACPgIADwsgACACNwMACwsPACAAIAEgAkEAQQAQmQcLFQEBfxDtAyEAQQ9B0N0KKAIAIAAbC7wCAAJAAkACQAJAAkACQAJAAkACQAJAAkAgAUEJaw4SAAgJCggJAQIDBAoJCgoICQUGBwsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRBAALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC28BBX8gACgCACIDLAAAQTBrIgFBCUsEQEEADwsDQEF/IQQgAkHMmbPmAE0EQEF/IAEgAkEKbCIFaiABIAVB/////wdzSxshBAsgACADQQFqIgU2AgAgAywAASAEIQIgBSEDQTBrIgFBCkkNAAsgAgv1EgISfwJ+IwBBQGoiCCQAIAggATYCPCAIQSdqIRYgCEEoaiERAkACQAJAAkADQEEAIQcDQCABIQ0gByAOQf////8Hc0oNAiAHIA5qIQ4CQAJAAkACQCABIgctAAAiCwRAA0ACQAJAIAtB/wFxIgFFBEAgByEBDAELIAFBJUcNASAHIQsDQCALLQABQSVHBEAgCyEBDAILIAdBAWohByALLQACIAtBAmoiASELQSVGDQALCyAHIA1rIgcgDkH/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KQOIAyAWIAJBAE4iARshFiAEKQOAAyAXIAEbIRcgCSAGIAhHIAJBAEhycSAVIBhCAEIAEKgDQQBHcUUgFCABIA1qIg1B7gBqTnENAEH8gAtBxAA2AgALIARB8AJqIBcgFiANENoLIAQpA/gCIRUgBCkD8AILIRYgDiAVNwMoIA4gFjcDICAEQZDGAGokACAOKQMoIRUgDikDICEWDAELQgAhFQsgACAWNwMAIAAgFTcDCCAOQTBqJAALwwYCBH8DfiMAQYABayIFJAACQAJAAkAgAyAEQgBCABCoA0UNAAJ/IARC////////P4MhCgJ/IARCMIinQf//AXEiB0H//wFHBEBBBCAHDQEaQQJBAyADIAqEUBsMAgsgAyAKhFALC0UNACACQjCIpyIIQf//AXEiBkH//wFHDQELIAVBEGogASACIAMgBBBpIAUgBSkDECICIAUpAxgiASACIAEQxQsgBSkDCCECIAUpAwAhBAwBCyABIAJC////////////AIMiCiADIARC////////////AIMiCRCoA0EATARAIAEgCiADIAkQqAMEQCABIQQMAgsgBUHwAGogASACQgBCABBpIAUpA3ghAiAFKQNwIQQMAQsgBEIwiKdB//8BcSEHIAYEfiABBSAFQeAAaiABIApCAEKAgICAgIDAu8AAEGkgBSkDaCIKQjCIp0H4AGshBiAFKQNgCyEEIAdFBEAgBUHQAGogAyAJQgBCgICAgICAwLvAABBpIAUpA1giCUIwiKdB+ABrIQcgBSkDUCEDCyAJQv///////z+DQoCAgICAgMAAhCELIApC////////P4NCgICAgICAwACEIQogBiAHSgRAA0ACfiAKIAt9IAMgBFatfSIJQgBZBEAgCSAEIAN9IgSEUARAIAVBIGogASACQgBCABBpIAUpAyghAiAFKQMgIQQMBQsgCUIBhiAEQj+IhAwBCyAKQgGGIARCP4iECyEKIARCAYYhBCAGQQFrIgYgB0oNAAsgByEGCwJAIAogC30gAyAEVq19IglCAFMEQCAKIQkMAQsgCSAEIAN9IgSEQgBSDQAgBUEwaiABIAJCAEIAEGkgBSkDOCECIAUpAzAhBAwBCyAJQv///////z9YBEADQCAEQj+IIAZBAWshBiAEQgGGIQQgCUIBhoQiCUKAgICAgIDAAFQNAAsLIAhB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QfWrBCADQTBqEDMLIAAgAhAdIQIMAAsACyABQQFqIQdBASEEA0AgACgCECICKAK0ASAETgRAIAIoArgBIARBAnRqKAIAIQUgAQRAIAkgBSgCECICKwMooCEIIAogAisDIKAhCyAJIAIrAxigIQwgCiACKwMQoCENQezaCi0AAEECTwRAIAEQsAIgBRAhIQIgAyAIOQMgIAMgCzkDGCADIAw5AxAgAyANOQMIIAMgAjYCACAGQeOrBCADEDMgBSgCECECCyACIAg5AyggAiALOQMgIAIgDDkDGCACIA05AxALIAUgBxDzCyAEQQFqIQQMAQsLIANB4ABqJAALyhoDD38LfAF+IwBBwARrIgIkACAAKAJIIQpB7NoKLQAAQQJPBEAgARCwAiACIAAQITYCsANBiPYIKAIAQfDwAyACQbADahAgGgsgAUEBaiEJQQEhBANAIAAoAhAiAygCtAEgBEgEQAJAAkAgABA8IAdrIhBBACAAKAIQIgMoArQBayILRw0AIAMoAgwNACADQgA3AxAgA0KAgICAgICAmcAANwMoIANCgICAgICAgJnAADcDICADQgA3AxgMAQsCQAJ/AkAgAEEEQQQgAkGgBGoQ+QNBAk0EQCACQQM2ArAEDAELQQAgAigCsARBBEcNARpBACEJIAItALwEQQJxRQ0CIApBAEHwFkEAECIiCSAKQQFB8BZBABAiIgZyDQIgAiAAECE2AqADQcifAyACQaADahAqC0EACyEGQQAhCQsgAkHoA2pBAEE4EDgaIAJCADcD4AMgAkIANwPYAyACQgA3A9ADIAJCADcDyAMgAkIANwPAAyACQgA3A7gDQQEhBwNAAkAgACgCECIDKAK0ASAHSARAIBBBAEwNASAAEBwhBwNAIAdFDQIgBygCECIDKAKAAUUEQCADIAA2AoABIAJCADcDiAQgAkIANwOABCADKwNgIRIgAysDWCERIAIgAysDUDkDmAQgAiARIBKgOQOQBCACQegDakEgECYhAyACKALoAyADQQV0aiIDIAIpA4AENwMAIAMgAikDmAQ3AxggAyACKQOQBDcDECADIAIpA4gENwMIIAYEQCACIAcgBkEAQQAQYjYCzAMgAkG4A2pBBBAmIQMgAigCuAMgA0ECdGogAigCzAM2AgALIAIgBzYC5AMgAkHQA2pBBBAmIQMgAigC0AMg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EBwhAwNAIAMEQCADKAIQQQA2ArgBIAAgAxAdIQMMAQsLQezaCi0AAEECTwRAIAEoAhAhAyAFIAAQITYC5AEgBSADNgLgAUGI9ggoAgBBjfkDIAVB4AFqECAaCyABIAEoAhBBAWo2AhAgBUG88AkoAgA2AtwBQdKnASAFQdwBakEAEOMBIgpB4iVBmAJBARA2GkE4EFIhAyAKKAIQIAM2AowBIAAQOSEDIAooAhAgAygCEC8BsAE7AbABIAAgCkHa3AAQuQcgACAKQZjbABC5ByAAIApBsNgBELkHIAVBqAJqIQggBUGgAmohDCAFQZgCaiELQQEhDwNAIAAoAhAiAygCtAEgD04EQCADKAK4ASAPQQJ0aigCACIEEJQEIAogBBAhELgHIgYoAhAiAyAJNgKIASADIAQ2AugBAkACQCABKAIEIgdFBEBE////////738hG0T////////v/yEaDAELRP///////+9/IRtE////////7/8hGiAEIAcQRSIDLQAARQ0AIAEoAgAgBEcEQCADIAQoAkQgBxBFEE1FDQELIAVBADoA+AEgBSALNgLEASAFIAw2AsgBIAUgCDYCzAEgBSAFQfgBajYC0AEgBSAFQZACajYCwAEgA0H4vgEgBUHAAWoQUUEETgRAIAUrA6gCIRogBSsDoAIhHSAFKwOYAiEbIAUrA5ACIRxBgNsKKwMAIh5EAAAAAAAAAABkBEAgGyAeoyEbIBwgHqMhHCAdIB6jIR0gGiAeoyEaCyAGKAIQQQNBAkEBIAUtAPgBIgNBP0YbIANBIUYbOgCHAQwCCyAEECEhByAFIAM2ArQBIAUgBzYCsAFBh+sDIAVBsAFqECoLRP///////+//IR1E////////738hHAsgCUEBaiEJIAQQHCEDA0AgAwRAIAMoAhAgBjYCuAEgBCADEB0hAwwBCwsgBigCECIDLQCHAQRAIAMoApQBIgMgGiAboEQAAAAAAADgP6I5AwggAyAdIBygRAAAAAAAAOA/ojkDAAsgD0EBaiEPDAELCyAAEBwhAwJ/AkADQCADBEACQCADKAIQIgQoArgBDQACQCAEKALoASIGRQ0AIAYgACgCECgCjAEoAjBGDQAgAxAhIQEgABAhIQAgBSADKAIQKALoARAhNgKoASAFIAA2AqQBIAUgATYCoAFBiv0EIAVBoAFqEDcM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QRhqCyILKwMIIQggCysDACEHAn8gASgCECIAKAIEIAFGBEAgACgCAAwBCyABQRhqCyIAKwMIIQkgACsDACEKIAJBfyAHIAShIgcgBSADoaIgCCADoSIFIAYgBKGioSIGRAAAAAAAAAAAZCAGRAAAAAAAAAAAYxsiADYCACACQX8gByAJIAOhoiAFIAogBKGioSIDRAAAAAAAAAAAZCADRAAAAAAAAAAAYxsiATYCBCACIAAgAWw2AggLTQECfAJ/QQEgACgCACIAKwMAIgIgASgCACIBKwMAIgNkDQAaQX8gAiADYw0AGkEBIAArAwgiAiABKwMIIgNkDQAaQX9BACACIANjGwsLzg8DEH8KfAF+IwBBsAFrIgIkACABQQAgAUEAShshDyABQSgQGiENA0AgAyAPRkUEQCAAIANBAnRqKAIAKAIEIApqIQogA0EBaiEDDAELCyAKQRgQGiIOQRhrIQYDQCAIIA9HBEAgDSAIQShsaiIEIA4gB0EYbGo2AgAgACAIQQJ0aigCACILKAIEIQxBACEDRP///////+9/IRJE////////7/8hE0T////////v/yEVRP///////+9/IRQDQCADIAxGBEAgBCATOQMgIAQgFTkDGCAEIBI5AxAgBCAUOQMIIAQgBiAHQRhsajYCBCAIQQFqIQgMAwUgCygCACADQQR0aiIFKwMAIRYgBSsDCCEXIA4gB0EYbGoiBUEANgIUIAUgBDYCECAFIBc5AwggBSAWOQMAIANBAWohAyAHQQFqIQcgEyAXECMhEyAVIBYQIyEVIBIgFxApIRIgFCAWECkhFAwBCwALAAsLIAJCADcDiAEgAkIANwOAASACQgA3A3hBACEDIApBBBAaIQwCQANAIAMgCkYEQAJAIAwgCkEEQeADELUBIAJBjAFqIRBBACELA0AgCiALRg0BIAIgDCALQQJ0aiIRKAIAIgM2AnQgAgJ/IAMoAhAiBCgCACADRgRAIAQoAgQMAQsgA0EYawsiBTYCcEEAIQgDQAJAAkAgCEECRwRAAkAgAkH0AGogAkHwAGoQzQxBAWoOAwADAgMLIAVBGGohB0EAIQMDQAJAIAIoAoABIANLBEAgAiACKQOAATcDWCACIAIpA3g3A1AgAigCeCACQdAAaiADEBlBAnRqKAIAIgYgBSACQZQBaiIJEMwMIAIoApwB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dGohBAJAIAZBAkgNACAGQQJrQQF2IgkgBCAFayIAQQJ1SA0AIAUgAEEBdSIBQQFyIgJBAnRqIQAgBiABQQJqIgFKBEAgASACIAAoAgAgACgCBCADKAIMEQAAIgEbIQIgAEEEaiAAIAEbIQALIAAoAgAgBCgCACADKAIMEQAADQAgBCgCACEBA0ACQCAEIAAiBCgCADYCACACIAlKDQAgBSACQQF0IgdBAXIiAkECdGohACAGIAdBAmoiB0oEQCAHIAIgACgCACAAKAIEIAMoAgwRAAAiBxshAiAAQQRqIAAgBxshAAsgACgCACABIAMoAgwRAABFDQELCyAEIAE2AgALIAhBAWshCAwACwALIANBEGokAAtGAgF8An8gACgCBCEDIAAoAgAhAAN8IAAgA0YEfCABBSAAKAIAIgIrAwggAisDGKEgAisDEKIgAaAhASAAQQRqIQAMAQsLC2wCAX8CfCMAQRBrIgIkACACIAE2AgwgASAANgIgIAAgAkEMahDAASAAIAIoAgwiASsDECIDIAArAxigIgQ5AxggACADIAErAwggASsDGKGiIAArAyCgIgM5AyAgACADIASjOQMQIAJBEGokAAsnACAAIAAoAhhFIAAoAhAgAXJyIgE2AhAgACgCFCABcQRAEJEBAAsLMQEDfyAAKAIEIgQgAUEEaiICayEDIAIgBEcEQCABIAIgAxC2ARoLIAAgASADajYCBAt+AQN/IAAoAgAiAUE0aiABKAI4IQMgASgCNCEBA0ACQCABIANGDQAgASgCACAARg0AIAFBBGohAQwBCwsgARC0DSAAKAIEIgFBKGogASgCLCEDIAEoAighAQNAAkAgASADRg0AIAEoAgAgAEYNACABQQRqIQEMAQsLIAEQtA0L6gEBCH8gAEHTrAMQ0QIhAiABKAIAIQYjAEEQayIDJAAgA0EIaiIEIAIQqQUaAkAgBC0AAEUNACACIAIoAgBBDGsoAgBqIgUoAgQaIANBBGoiBCAFEFMgBBC6CyEFIAQQUCADIAIQuQshByACIAIoAgBBDGsoAgBqIggQuAshCSADIAUgBygCACAIIAkgBiAFKAIAKAIQEQgANgIEIAQQpwVFDQAgAiACKAIAQQxrKAIAakEFEKoFCyADQQhqEKgFIANBEGokACACQdjgARDRAiABKAIgKwMQIAErAxigEJEH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EiACQQJ0akF/NgIAIAJBAWohAgwBCwtBhscBQZa3AUGLBkGBDhAAAAtBhscBQZa3AUGkBkGBDhAAAAtBhscBQZa3AUG4BkGBDhAAAAtBh9ABQZa3AUHQBUGBDhAAAAsgFEEQaiQAIA8L2AYCCn8BfCMAQRBrIgokACAAKAIgRQRAAkACQCAAKAIQQQFrIgQOBAEAAAEAC0HU0AFBlrcBQZAFQcg1EAAACyACKAIAIQUgACgCACEDIAAoAhghBiAAKAIUIQcCQAJAAkACQCAEDgQAAgIBAgsgACgCHCEJIAEEQCAFRQRAIANBCBA/IQULQQAhBCADQQAgA0EAShshAwNAIAMgBEYNBCAFIARBA3RqIgtCADcDACAHIARBAnRqKAIAIgAgByAEQQFqIgRBAnRqKAIAIgggACAIShshCEQAAAAAAAAAACENA0AgACAIRgRADAIFIAsgCSAAQQN0aisDACABIAYgAEECdGooAgBBA3RqKwMAoiANoCINOQMAIABBAWohAAwBCwALAAsACyAFRQRAIANBCBA/IQULQQAhASADQQAgA0EAShshBANAIAEgBEYNAyAFIAFBA3RqIgNCADcDACAHIAFBAnRqKAIAIgAgByABQQFqIgFBAnRqKAIAIgYgACAGShshBkQAAAAAAAAAACENA0AgACAGRgRADAIFIAMgCSAAQQN0aisDACANoCINOQMAIABBAWohAAwBCwALAAsACyAAKAIcIQkgAQRAIAVFBEAgA0EIED8hBQtBACEEIANBACADQQBKGyEDA0AgAyAERg0DIAUgBEEDdGoiC0IANwMAIAcgBEECdGooAgAiACAHIARBAWoiBEECdGooAgAiCCAAIAhKGyEIRAAAAAAAAAAAIQ0DQCAAIAhGBEAMAgUgCyAJIABBAnQiDGooAgC3IAEgBiAMaigCAEEDdGorAwCiIA2gIg05AwAgAEEBaiEADAELAAsACwALIAVFBEAgA0EIED8hBQtBACEBIANBACADQQBKGyEEA0AgASAERg0CIAUgAUEDdGoiA0IANwMAIAcgAUECdGooAgAiACAHIAFBAWoiAUECdGooAgAiBiAAIAZKGyEGRAAAAAAAAAAAIQ0DQCAAIAZGBEAMAgUgAyANIAkgAEECdGooAgC3oCINOQMAIABBAWohAAwBCwALAAsACyAKQcMFNgIEIApBlrcBNgIAQYj2CCgCAEHYvwQgChAgGhA7AAsgAiAFNgIAIApBEGokAA8LQaHQAUGWtwFBjwVByDUQAAALxgIBDX8CQCAAKAIgRQRAIAAoAhBBAUcNASADQQAgA0EAShshBiAAKAIAIgRBACAEQQBKGyEJIAAoAhghCiAAKAIUIQcgACgCHCELA0AgBSAJRwRAIAIgAyAFbEEDdGohCEEAIQADQCAAIAZGRQRAIAggAEEDdGpCADcDACAAQQFqIQAMAQsLIAcgBUECdGooAgAiBCAHIAVBAWoiBUECdGooAgAiACAAIARIGyEMA0AgBCAMRg0CIAogBEECdGohDSALIARBA3RqIQ5BACEAA0AgACAGRkUEQCAIIABBA3QiD2oiECAOKwMAIAEgDSgCACADbEEDdGogD2orAwCiIBArAwCgOQMAIABBAWohAAwBCwsgBEEBaiEEDAALAAsLDwtBodABQZa3AUH6BEHekwEQAAALQdTXAUGWtwFB+wRB3pMBEAAAC0kAIAAoAiBBAUcEQEHF3AFBlrcBQYcDQaIlEAAACyAAKAIIIAAoAgAgACgCBCAAKAIUIAAoAhggACgCHCAAKAIQIAAoAigQ9wMLHwAgACABIAMgBCAFEMINIQAgAgRAIAAgAhDADQsgAAtmAQJ/IABBADYCHCAAKAIgIQMgAUEEED8hAgJAAkAgA0EBRgRAIAAgAjYCFCAAIAFBBBA/NgIYIAAoAighAgwBCyAAIAI2AhggACgCKCICRQ0BCyAAIAEgAhA/NgIcCyAAIAE2AgwLIwEBfiAAKAJMIAFBA3RqIgBBEGogACkDEEIBfCICNwMAIAILWwEBf0EBQSwQPyIFIAM2AiggBSACNgIQIAVCADcCCCAFIAE2AgQgBSAANgIAQQAhAyAEQQFHBEAgAEEBakEEED8hAwsgBSAENgIgIAVCADcCGCAFIAM2AhQgBQuXBgIKfwJ8IwBBEGsiCSQAQcz+CiABQQFqQQQQGjYCAEHs2gotAAAEQEHyywNBHEEBQYj2CCgCABA6GhCtAQsgABAcIQEDQCABBEBBACECQajbCisDACEMIAAoAhAoApgBIQMDQCADIAJBAnRqKAIAIgQEQCAEKAIQIAw5A5gBIAJBAWohAgwBCwtB0P4KIAE2AgAgASgCECICQQA2ApABIAJCADcDmAEgARDGDQNAQQAhA0EAIQpByP4KKAIAIgIEQEHM/gooAgAiBigCACEKQcj+CiACQQFrIgs2AgAgBiAGIAtBAnRqKAIAIgg2AgAgCCgCEEEANgKMAQJAIAJBA0gNAANAIANBAXQiAkEBciIFIAtODQECQAJ8IAsgAkECaiICTARAIAYgBUECdGooAgAiBCgCECsDmAEMAQsgBiACQQJ0aigCACIEKAIQKwOYASIMIAYgBUECdGooAgAiBygCECsDmAEiDWMNASAHIQQgDQshDCAFIQILIAgoAhArA5gBIAxlDQEgBiACQQJ0aiAINgIAIAgoAhAgAjYCjAEgBiADQQJ0aiAENgIAIAQoAhAgAzYCjAEgAiEDDAALAAsgCigCEEF/NgKMAQsgCiIDBEBB0P4KKAIAIgIgA0cEQCAAKAIQKAKgASIEIAMoAhAiBSgCiAEiB0ECdGooAgAgAigCECgCiAEiAkEDdGogBSsDmAEiDDkDACAEIAJBAnRqKAIAIAdBA3RqIAw5AwALIAAgAxBuIQIDQCACRQ0CIAMgAkEwQQAgAigCAEEDcSIFQQNHG2ooAigiBEYEQCACQVBBACAFQQJHG2ooAighBAsCQCADKAIQIgcrA5gBIAIoAhArA4gBoCIMIAQoAhAiBSsDmAFjRQ0AIAUgDDkDmAEgBSgCjAFBAE4EQCAEEMQNDAELIAUgBygCkAFBAWo2ApABIAQQxg0LIAAgAiADEHIhAgwACwALCyAAIAEQHSEBDAELC0Hs2gotAAAEQCAJEI4BOQMAQYj2CCgCAEGrygQgCRAzC0HM/gooAgAQGCAJQRBqJAALfwEFf0HM/gooAgAhAiAAKAIQKAKMASEBA0ACQCABQQBMDQAgAiABQQFrQQF2IgNBAnRqIgUoAgAiBCgCECsDmAEgACgCECsDmAFlDQAgBSAANgIAIAAoAhAgAzYCjAEgAiABQQJ0aiAENgIAIAQoAhAgATYCjAEgAyEBDAELCwudAgICfwF+IABB2O8JQazuCSgCABCgAjYCLCAAQSAQUjYCMCAAQfjuCUGQ7wkgABA5IABGG0Gs7gkoAgAQoAI2AjQgAEGo7wlBwO8JIAAQOSAARhtBrO4JKAIAEKACNgI4IABBiPAJQazuCSgCABCgAjYCPCAAQaDwCUGs7gkoAgAQoAI2AkACQAJAIAAoAkQiAgRAIAIoAkwiASABKQMQQgF8IgM3AxAgA0KAgICAAVoNAiAAIAAoAgBBD3EgA6dBBHRyNgIAIAIoAjwiASAAQQEgASgCABEDABogAigCQCIBIABBASABKAIAEQMAGiACLQAYQSBxRQ0BCyAAEN0LCyAAIAAQ2AcgAA8LQYOuA0G2vAFB0wBBmfACEAAAC2IBAn8gACgCECICKAKMAUEASARAQcj+CkHI/gooAgAiAUEBajYCACACIAE2AowBQcz+CigCACABQQJ0aiAANgIAIAFBAEoEQCAAEMQNCw8LQeKeA0HmvAFB4ARBo48BEAAAC1ECA38CfEGc2wovAQAhBQNAIAMgBUZFBEAgAiADQQN0IgRqIAAgBGorAwAgASAEaisDAKEiBzkDACAHIAeiIAagIQYgA0EBaiEDDAELCyAGnwvZAQIBfwF8QezaCi0AAARAQYjnA0EaQQFBiPYIKAIAEDoaCwJAAkACQCAAIAFBAhC1DA4CAAIBC0G4/gotAABBuP4KQQE6AABBAXENAEH2uQRBABAqC0EAIQEDQCAAKAIQKAKYASABQQJ0aigCACICRQ0BIAIoAhAtAIcBRQRAENcBIQMgAigCECgClAEgA0QAAAAAAADwP6I5AwAQ1wEhAyACKAIQKAKUASADRAAAAAAAAPA/ojkDCEGc2wovAQBBA08EQCACQQEQ/gcLCyABQQFqIQEMAAsACwutAQEGfyAAKAIQKAKYARAYQfjaCigCAEUEQCAAKAIQKAKgARCFAyAAKAIQKAKkARCFAyAAKAIQKAKoARCFAyAAKAIQIgEoAqwBIgQEfwNAQQAhASAEIAJBAnRqIgUoAgAiAwRAA0AgAyABQQJ0aigCACIGBEAgBhAYIAFBAWohASAFKAIAIQMMAQsLIAMQGCACQQFqIQIMAQsLIAQQGCAAKAIQBSABC0EANgKsAQsLkQEBBX8gACABEG4hAwNAIANFBEAgBQ8LAkAgA0FQQQAgAygCAEEDcSIEQQJHG2ooAigiByADQTBBACAEQQNHG2ooAigiBEYNACAFBEBBASEFIAEgBEYgBiAHRnEgASAHRiAEIAZGcXINAUECDwsgAiAHIAQgASAERhsiBjYCAEEBIQULIAAgAyABEHIhAwwACwALqggCCn8BfCMAQRBrIgUkAEHs2gotAAAEQCAAECEhAyAFIAAQPDYCBCAFIAM2AgBBiPYIKAIAQYrvAyAFECAaCwJAQe3aCi0AAEEBRw0AIAAQHCEEA0AgBCIDRQ0BIAAgAxAdIQQCQAJAIAAgAyAFQQhqEMoNDgIAAQILIAAoAkggAxC3AQwBCyAAKAJIIAMQtwEgBSgCCCEDA0AgAyICRQ0BQQAhAwJAAkAgACACIAVBDGoQyg0OAgABAgsgAiAERgRAIAAgAhAdIQQLIAAoAkggAhC3AQwBCyACIARGBEAgACACEB0hBAsgACgCSCACELcBIAUoAgwhAwwACwALAAsgABA8IQQgABC0AiEHQQAhAyAAQQJBoOYAQQAQIiEGAkACQAJAAkAgAQ4FAAICAgECC0GQ2wogBLdELUMc6+I2Gj+iOQMAIAAQwwZBsNsKIAAoAkhBmf8AECciAgR8IAIQrgIFRK5H4XoUru8/CzkDACAEQQFqQQQQGiECIAAoAhAgAjYCmAEgABAcIQIDQCACRQ0DIAAoAhAoApgBIANBAnRqIAI2AgAgAigCECIIQX82AowBIAggAzYCiAEgDCAAIAIgBhCACKAhDCADQQFqIQMgACACEB0hAgwACwALQZDbCkL7qLi9lNyewj83AwAgABDDBiAEQQFqQQQQGiECIAAoAhAgAjYCmAEgABAcIQIDQCACRQ0CIAAoAhAoApgBIANBAnRqIAI2AgAgAigCECADNgKIASAMIAAgAiAGEIAIoCEMIANBAWohAyAAIAIQHSECDAALAAtBkNsKQq2G8diu3I2NPzcDACAAEMMGIAAQHCECA0AgAkUNASACKAIQIAM2AogBIAwgACACIAYQgAigIQwgA0EBaiEDIAAgAhAdIQIMAAsAC0Go2woCfAJAIABB1BoQJyIDRQ0AIAMtAABFDQBBkNsKKwMAIAMQrgIQIwwBCyAMQQEgByAHQQFMG7ijIAS3n6JEAAAAAAAA8D+gCyIMOQMAQfjaCigCACABckUEQCAEIAQgDBCGAyEBIAAoAhAgATYCoAEgBCAERAAAAAAAAPA/EIYDIQEgACgCECABNgKkASAEQZzbCi8BAEQAAAAAAADwPxCGAyEBIAAoAhAgATYCqAEgBEEAIARBAEobIQFBnNsKLwEAIQggBEEBaiIKQQQQGiEHQQAhAwNAIAEgA0ZFBEAgByADQQJ0aiAKQQQQGiIJNgIAQQAhBgNAIAEgBkZFBEAgCSAGQQJ0aiAIQQgQGiILNgIAQQAhAgNAIAIgCEZFBEAgCyACQQN0akIANwMAIAJBAWohAgwBCwsgBkEBaiEGDAELCyAJIAFBAnRqQQA2AgAgA0EBaiEDDAELCyAHIAFBAnRqQQA2AgAgACgCECAHNgKsAQsgBUEQaiQAIAQLKQEBfyMAQRBrIgIkACACIAE3AwAgAEEpQb2mASACELQBGiACQRBqJAALSwAgABA5IABHBEAgAEHiJUGYAkEBEDYaCyAAIAFGBEAgABA5KAIQIAE2ArwBCyAAEHkhAANAIAAEQCAAIAEQzQ0gABB4IQAMAQsLC5ECAQR/IAFB4iVBmAJBARA2GiABKAIQIgIgACgCECIDKQMQNwMQIAIgAykDKDcDKCACIAMpAyA3AyAgAiADKQMYNwMYIAEoAhAiAiAAKAIQIgMtAJMCOgCTAiACQTBqIANBMGpBwAAQHxogASgCECAAKAIQKAK0ASICNgK0ASACQQFqQQQQGiEDIAEoAhAgAzYCuAEgAkEAIAJBAEobQQFqIQVBASECA0AgACgCECEDIAIgBUZFBEAgAkECdCIEIAMoArgBaigCABDWDSEDIAEoAhAoArgBIARqIAM2AgAgACgCECgCuAEgBGooAgAgAxDODSACQQFqIQIMAQsLIAEoAhAgAygCDDYCDCADQQA2AgwLcwEBfyAAKAIQKALAARAYIAAoAhAoAsgBEBggACgCECgC0AEQGCAAKAIQKALYARAYIAAoAhAoAuABEBggACgCECgCeBC8ASAAKAIQKAJ8ELwBIAAoAhAoAggiAQRAIAAgASgCBCgCBBEBAAsgAEH8JRDiAQuPAgEEfyAAKAIQKALAASEEA0AgBCIBBEAgASgCECIEKALEASECIAQoArgBIQQDQCACBEAgASgCECgCwAEgAkEBayICQQJ0aigCACIDEJQCIAMoAhAQGCADEBgMAQUgASgCECgCzAEhAgNAIAIEQCABKAIQKALIASACQQFrIgJBAnRqKAIAIgMQlAIgAygCEBAYIAMQGAwBCwsgASgCECICLQCsAUEBRw0DIAIoAsgBEBggASgCECgCwAEQGCABKAIQEBggARAYDAMLAAsACwsgABAcIQEDQCABBEAgACABECwhAgNAIAIEQCACEMACIAAgAhAwIQIMAQsLIAEQzw0gACABEB0hAQwBCwsgABCCCAujBAEFfyAAEBwhAQNAIAEEQCABQfwlQcACQQEQNhogARD5BCABIAEQLSgCECgCdEEBcRCYBCABKAIQQQA2AsQBQQVBBBAaIQMgASgCECICQQA2AswBIAIgAzYCwAFBBUEEEBohAyABKAIQIgJBADYC3AEgAiADNgLIAUEDQQQQGiEDIAEoAhAiAkEANgLUASACIAM2AtgBQQNBBBAaIQMgASgCECICQQA2AuQBIAIgAzYC0AFBA0EEEBohAyABKAIQIgJBATYC7AEgAiADNgLgASAAIAEQHSEBDAELCyAAEBwhAwNAIAMEQCAAIAMQLCEBA0AgAQRAIAFB7yVBuAFBARA2GiABEJgDIAFBxNwKKAIAQQFBABBiIQIgASgCECACNgKcASABQTBBACABKAIAQQNxQQNHG2ooAihBrNwKKAIAQfH/BBB6IQQgAUFQQQAgASgCAEEDcUECRxtqKAIoQazcCigCAEHx/wQQeiEFIAEoAhAiAkEBOwGoASACQQE7AZoBIAQtAABFIAQgBUdyRQRAIAJB6Ac7AZoBIAIgAigCnAFB5ABsNgKcAQsgARDhDQRAIAEoAhAiAkEANgKcASACQQA7AZoBCyABQfTcCigCAEEAQQAQYiECIAEoAhBB/wEgAiACQf8BThs6AJgBIAFByNwKKAIAQQFBABBiIQIgASgCECACNgKsASAAIAEQMCEBDAELCyAAIAMQHSEDDAELCwv7AwIBfwJ8IwBB0ABrIgIkACACIAApAwA3AxAgAiAAKQMINwMYIAIgACkDGDcDKCACIAApAxA3AyAgAiAAKQMoNwM4IAIgACkDIDcDMCACIAApAzg3A0ggAiAAKQMwNwNARAAAAAAAAABAIQMgAEQAAAAAAAAAAEQAAAAAAADwPyABKwMAIAErAwggASsDGBDkBSIERAAAAAAAAAAAZkUgBEQAAAAAAAAAQGNFckUEQCACIAJBEGogBCAAQQAQoQEgBCEDCyAARAAAAAAAAAAARAAAAAAAAPA/IAMgA0QAAAAAAADwP2QbIAErAxAgASsDCCABKwMYEOQFIgREAAAAAAAAAABmRSADIARkRXJFBEAgAiACQRBqIAQgAEEAEKEBIAQhAwsgAEQAAAAAAAAAAEQAAAAAAADwPyADIANEAAAAAAAA8D9kGyABKwMIIAErAwAgASsDEBDjBSIERAAAAAAAAAAAZkUgAyAEZEVyRQRAIAIgAkEQaiAEIABBABChASAEIQMLIABEAAAAAAAAAABEAAAAAAAA8D8gAyADRAAAAAAAAPA/ZBsgASsDGCABKwMAIAErAxAQ4wUiBEQAAAAAAAAAAGZFIAMgBGRFckUEQCACIAJBEGogBCAAQQAQoQEgBCEDCyACQdAAaiQAIANEAAAAAAAAAEBjC1kBAn8jAEEQayICJAACQCAARQ0AIAAtAABFDQAgASAAQYAEIAEoAgARAwAiAQR/IAEoAgwFQQALIgMNACACIAA2AgBBnbYEIAIQKkEAIQMLIAJBEGokACADC9EBAQN/IAAQeSEDA0AgAwRAAkAgA0He3gBBABBrLQAIDQBBACEEIAMQHCEAA0AgAARAIAEgABAhQQAQjQEiBQRAIARFBEAgASADECFBARCSASEECyAEIAVBARCFARoLIAMgABAdIQAMAQsLIAJFIARyRQRAIAEgAxAhQQEQkgEhBAsgBEUNACAEIAMQsgMaIAMgBBClBSAEEMUBBEAgBEGUgQFBDEEAEDYgAzYCCAtBASEAIAMgBCACBH9BAQUgAxDFAQsQ1A0LIAMQeCEDDAELCwvYAQEGfyMAQRBrIgMkAEGI9ggoAgAhBSABEHkhAgNAIAIEQAJAIAIQxQEEQCAAIAIQIUEBEI0BIgRB6t4AQRBBARA2GiAEKAIQIAI2AgwgAhAcIQEDQCABRQ0CIAFB6t4AQQAQaygCDARAIAEQISEGIAIQISEHIAMgAUHq3gBBABBrKAIMECE2AgggAyAHNgIEIAMgBjYCACAFQc/9BCADECAaCyABQereAEEAEGsgBDYCDCACIAEQHSEBDAALAAsgACACENUNCyACEHghAgwBCwsgA0EQaiQACygAIABBlIEBQQAQayIARQRAQbLZAEG+uQFB7gJBjxkQAAALIAAoAggLMQAgAUEBIAAoAhwRAAAaIAAgATYCFCAAQQQQJiEBIAAoAgAgAUECdGogACgCFDYCAAt1AQF/IwBBIGsiAiQAQYDwCUH07wkpAgA3AgAgAiABNgIUIAEQQCEBIAJBADYCHCACIAE2AhggAkH87wk2AhAgAkHg7gk2AgwCfyAABEAgACACQRRqIAJBDGoQmg4MAQsgAkEUaiACQQxqEIsICyACQSBqJAALJQAgAUUEQEGC0wFB6/sAQQ1BnvcAEAAACyAAIAEgARBAEOoBRQuQBQIQfwR8IAAgASACIAMQ4A0iC0UEQEEBDwsgAy0ADCEOAkAgAEUNAANAIAAgBkYNASALIAZBBHRqIgMrAwgiFEQAAAAAAABSQKMhFiADKwMAIhVEAAAAAAAAUkCjIRcgAiABIAZBAnRqKAIAIgkgAhshDCAJEBwhBwNAAkAgBwRAIAcoAhAiAygClAEiBSAXIAUrAwCgOQMAIAUgFiAFKwMIoDkDCCADIBUgAysDEKA5AxAgAyAUIAMrAxigOQMYIAMoAnwiAwRAIAMgFSADKwM4oDkDOCADIBQgAysDQKA5A0ALIA5FDQEgDCAHECwhBQNAIAVFDQIgBSgCECIDKAJgIgQEQCAEIBUgBCsDOKA5AzggBCAUIAQrA0CgOQNACyADKAJsIgQEQCAEIBUgBCsDOKA5AzggBCAUIAQrA0CgOQNACyADKAJkIgQEQCAEIBUgBCsDOKA5AzggBCAUIAQrA0CgOQNACyADKAJoIgQEQCAEIBUgBCsDOKA5AzggBCAUIAQrA0CgOQNACwJAIAMoAggiDUUNACANKAIEIQ9BACEEA0AgBCAPRg0BIA0oAgAgBEEwbGoiAygCDCEQIAMoAgghESADKAIEIRIgAygCACETQQAhCANAIAggEkYEQCARBEAgAyAVIAMrAxCgOQMQIAMgFCADKwMYoDkDGAsgEARAIAMgFSADKwMgoDkDICADIBQgAysDKKA5AygLIARBAWohBAwCBSATIAhBBHRqIgogFSAKKwMAoDkDACAKIBQgCisDCKA5AwggCEEBaiEIDAELAAsACwALIAwgBRAwIQUMAAsACyAJIBUgFBDbDSAGQQFqIQYMAgsgCSAHEB0hBwwACwALAAsgCxAYQQALqAEBAn8gACgCECIDIAIgAysDKKA5AyggAyABIAMrAyCgOQMgIAMgAiADKwMYoDkDGCADIAEgAysDEKA5AxACQCADKAIMIgRFDQAgBC0AUUEBRw0AIAQgASAEKwM4oDkDOCAEIAIgBCsDQKA5A0ALQQEhBANAIAQgAygCtAFKRQRAIAMoArgBIARBAnRqKAIAIAEgAhDbDSAEQQFqIQQgACgCECEDDAELCwsJAEEAIAAQ2A0L7AoCE38FfCMAQSBrIgUkACAAQRAQGiESIAIoAgQhBwJAIAIoAhxBAXEiDwRAIAdBAEoEQCAAIAdqQQFrIAduIQkMAgsCfyAAuJ+bIhZEAAAAAAAA8EFjIBZEAAAAAAAAAABmcQRAIBarDAELQQALIgcgAGpBAWsgB24hCQwBCyAHQQBKBEAgByIJIABqQQFrIAduIQcMAQsCfyAAuJ+bIhZEAAAAAAAA8EFjIBZEAAAAAAAAAABmcQRAIBarDAELQQALIgkgAGpBAWsgCW4hBwtB7NoKLQAABEAgBSAJNgIIIAUgBzYCBCAFQYU3Qfs2IA8bNgIAQYj2CCgCAEHH5wMgBRAgGgsgCUEBaiIQQQgQGiELIAdBAWpBCBAaIQogAEEYEBohESACKAIIuCEWIBEhAwNAIAAgBEYEQEEAIQQgAEEEEBohDANAIAAgBEYEQAJAAkAgAigCGCIDBEBBsP4KKAIAQbT+CigCAHINAkG0/gogAzYCAEGw/gpBtwM2AgAgAEECTwRAIAwgAEEEQbgDELUBC0G0/gpBADYCAEGw/gpBADYCAAwBCyACLQAcQcAAcQ0AIAwgAEEEQbkDELUBC0EAIQQgBUEANgIcIAVBADYCGEEAIQMDQCAAIANGBEBEAAAAAAAAAAAhFgNAIAQgEEYEQEQAAAAAAAAAACEWIAchBAUgCyAEQQN0aiIDKwMAIRcgAyAWOQMAIARBAWohBCAWIBegIRYMAQsLA0AgBARAIAogBEEDdGoiAyAWOQMAIARBAWshBCAWIANBCGsrAwCgIRYMAQsLIAogFjkDACAFQQA2AhwgBUEANgIYIApBCGohDiALQQhqIQ0gAigCHCICQSBxIRAgAkEIcSETIAJBEHEhFCACQQRxIRVBACEEA0AgACAERkUEQCABIAwgBEECdGooAgAoAhAiBkEFdGohAyAFKAIYIQICfCAVBEAgCyACQQN0aisDAAwBCyADKwMQIRYgAysDACEXIBMEQCANIAJBA3RqKwMAIBYgF6GhDAELIAsgAkEDdGoiCCsDACAIKwMIoCAWoSAXoUQAAAAAAADgP6ILIRYgAysDGCEXIAMrAwghGCASIAZBBHRqIgYgFhAyOQMAIAUoAhwhAyAGAnwgFARAIAogA0EDdGorAwAgFyAYoaEMAQsgEARAIA4gA0EDdGorAwAMAQsgCiADQQN0aiIIKwMAIAgrAwigIBehIBihRAAAAAAAAOA/ogsQMjkDCAJAAn8gD0UEQCAFIAJBAWoiAjYCGCACIAlHDQIgBUEYaiEIIAVBHGoMAQsgBSADQQFqIgM2AhwgAyAHRw0BIAVBHGohCCACIQMgBUEYagsgCEEANgIAIANBAWo2AgALIARBAWohBAwBCwsgERAYIAwQGCALEBggChAYIAVBIGokACASDwUgCyAFKAIYIghBA3RqIgYgBisDACAMIANBAnRqKAIAIg4rAwAQIzkDACAKIAUoAhwiBkEDdGoiDSANKwMAIA4rAwgQIzkDAAJAAn8gD0UEQCAFIAhBAWoiCDYCGCAIIAlHDQIgBUEYaiENIAVBHGoMAQsgBSAGQQFqIgY2AhwgBiAHRw0BIAVBHGohDSAIIQYgBUEYagsgDUEANgIAIAZBAWo2AgALIANBAWohAwwBCwALAAtBta4DQaL7AEEcQcIbEAAABSAMIARBAnRqIBEgBEEYbGo2AgAgBEEBaiEEDAELAAsABSABIARBBXRqIgYrAxAhFyAGKwMAIRggBisDGCEZIAYrAwghGiADIAQ2AhAgAyAZIBqhIBagOQMIIAMgFyAYoSAWoDkDACADQRhqIQMgBEEBaiEEDAELAAsAC4oFAgp8An8jAEEgayIQJAAgACsDACELIAArAxAhDCAAKwMIIQ0gACsDGCEOEMkDIQAgBCsDCCIHIAO4IgahIQggByAOEDKgIA0QMiAEKwMAIg8gDBAyoCALEDKhIAagIQqhIAagIQkgCCACuKMgCEQAAAAAAADwP6AgArijRAAAAAAAAPC/oCAIRAAAAAAAAAAAZhsQMiEIAnwgDyAGoSIGRAAAAAAAAAAAZgRAIAYgArijDAELIAZEAAAAAAAA8D+gIAK4o0QAAAAAAADwv6ALEDIhByAJIAK4oyAJRAAAAAAAAPA/oCACuKNEAAAAAAAA8L+gIAlEAAAAAAAAAABmGxAyIQkgCiACuKMgCkQAAAAAAADwP6AgArijRAAAAAAAAPC/oCAKRAAAAAAAAAAAZhsQMiEKA0AgCCEGIAcgCmUEQANAIAYgCWUEQCAAIAcgBhC+AiAGRAAAAAAAAPA/oCEGDAELCyAHRAAAAAAAAPA/oCEHDAELCyABIAAQhgk2AgQgASAAEJoBIhE2AgggAQJ/IAwgC6EgA0EBdLgiBqAgArgiCKObIgeZRAAAAAAAAOBBYwRAIAeqDAELQYCAgIB4CyICAn8gDiANoSAGoCAIo5siBplEAAAAAAAA4EFjBEAgBqoMAQtBgICAgHgLIgNqNgIAQQAhBAJAQezaCi0AAEEDSQ0AIBAgAzYCHCAQIAI2AhggECARNgIUIBAgBTYCEEGI9ggoAgAiAkH6xgQgEEEQahAgGgNAIAQgASgCCE4NASABKAIEIARBBHRqIgMrAwAhBiAQIAMrAwg5AwggECAGOQMAIAJBvY4EIBAQMyAEQQFqIQQMAAsACyAAEN0CIBBBIGokAAvaAwICfwd8IwBB4ABrIgMkACACQQF0uCEHIAC4IQhBACECA0AgACACRgRAAkAgBiAGoiAIRAAAAAAAAFlAokQAAAAAAADwv6AiB0QAAAAAAAAQwKIgCaKgIgVEAAAAAAAAAABmRQ0AQQECfyAFnyIKIAahIAcgB6AiC6MiCJlEAAAAAAAA4EFjBEAgCKoMAQtBgICAgHgLIgIgAkEBTRshAkHs2gotAABBA08EQEHBrARBG0EBQYj2CCgCACIBEDoaIAMgCjkDUCADIAU5A0ggA0FAayAJOQMAIAMgBzkDMCADIAY5AzggAUG1qgQgA0EwahAzIAMgBpogCqEgC6MiBTkDKCADAn8gBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLNgIgIAMgAjYCECADIAg5AxggAUHm8wQgA0EQahAzIAMgCSAHIAiiIAiiIAYgCKKgoDkDACADIAkgByAFoiAFoiAGIAWioKA5AwggAUGzrAQgAxAzCyADQeAAaiQAIAIPCwUgCSABIAJBBXRqIgQrAxAgBCsDAKEgB6AiBSAEKwMYIAQrAwihIAegIgqioSEJIAYgBSAKoKEhBiACQQFqIQIMAQsLQayZA0GjvAFB0gBB5NoAEAAAC5wfAxF/DXwBfiMAQdACayIFJAACQAJAIABFDQAgAygCEEEDTQRAQYj2CCgCACENIAMoAhQhDgNAAkAgACAGRgRAQQAhBiAAQSAQGiEPDAELIAEgBkECdGooAgAiBxDBAgJAIA5FDQAgBiAOai0AAEEBRw0AIAcoAhAiCCsDECAIKwMYIAgrAyAgCCsDKBAyIRcQMiEYEDIhGhAyIRsCfCAERQRAIBchGSAYIRUgGiEWIBsMAQsgFyAZECMhGSAYIBUQIyEVIBogFhApIRYgGyAcECkLIRwgBEEBaiEEC0Hs2gotAABBA08EQCAHECEhCCAHKAIQIgcrAxAhFyAHKwMYIRggBysDICEaIAUgBysDKDkDgAIgBSAaOQP4ASAFIBg5A/ABIAUgFzkD6AEgBSAINgLgASANQdWZBCAFQeABahAzCyAGQQFqIQYMAQsLA0AgACAGRwRAIA8gBkEFdGoiBCABIAZBAnRqKAIAKAIQIgcpAxA3AwAgBCAHKQMoNwMYIAQgBykDIDcDECAEIAcpAxg3AwggBkEBaiEGDAELCyAAIA8gAygCCBDfDSEIQezaCi0AAARAIAUgCDYC0AEgDUGxxwQgBUHQAWoQIBoLIAhBAEwEQCAPEBgMAgsgBUIANwOoAiAFQgA3A6ACIA4EQCAFIBkgFqBEAAAAAAAA4D+iEDIiIDkDqAIgBSAVIBygRAAAAAAAAOA/ohAyIiE5A6ACCyAIuCEWIABBEBAaIREDQAJAAkACQCAAIAxHBEAgASAMQQJ0aigCACEGIBEgDEEEdGoiCiAMNgIMIAMoAhBBA0YEQCAGKAIQIQQgAygCCCEHIAYQISEGIAUgBCkDKDcDeCAFIAQpAyA3A3AgBSAEKQMYNwNoIAQpAxAhIiAFIAUpA6gCNwNYIAUgIjcDYCAFIAUpA6ACNwNQIAVB4ABqIAogCCAHIAVB0ABqIAYQ3g0MBAsgAiAGIAIbIQsgAy0ADCESIAMoAgghExDJAyEJICAgBigCECIEKwMYEDKhIRsgISAEKwMQEDKhIRwgAygCEEEBRw0BQQAhByAGEDxBBBAaIRQgBhAcIQQDQCAEBEAgFCAHQQJ0aiAEKAIQIhAoAoABNgIAIBBBADYCgAEgB0EBaiEHIAYgBBAdIQQMAQUgE7ghHUEBIQcDQCAGKAIQIgQoArQBIAdOBEAgBCgCuAEgB0ECdGooAgAiECgCECIEKwMgIAQrAxAQMiEXEDIhFSAEKwMYIRkCQCAVIBdkRSAEKwMoEDIiGCAZEDIiGWRFcg0AIBwgFaAgHaAhFSAbIBigIB2gIRggGyAZoCAdoSIZIBajIBlEAAAAAAAA8D+gIBajRAAAAAAAAPC/oCAZRAAAAAAAAAAAZhsQMiEZAnwgHCAXoCAdoSIXRAAAAAAAAAAAZgRAIBcgFqMMAQsgF0QAAAAAAADwP6AgFqNEAAAAAAAA8L+gCxAyIRcgGCAWoyAYRAAAAAAAAPA/oCAWo0QAAAAAAADwv6AgGEQAAAAAAAAAAGYbEDIhGCAVIBajIBVEAAAAAAAA8D+gIBajRAAAAAAAAPC/oCAVRAAAAAAAAAAAZhsQMiEaA0AgGSEVIBcgGmUEQANAIBUgGGUEQCAJIBcgFRC+AiAVRAAAAAAAAPA/oCEVDAELCyAXRAAAAAAAAPA/oCEXDAEFIBAQHCEEA0AgBEUNAyAEKAIQIBA2AugBIBAgBBAdIQQMAAsACwALAAsgB0EBaiEHDAELCyAGEBwhBwNAIAcEQCAFQcACaiAHENcGIBsgBSsDyAIQMqAhGCAcIAUrA8ACEDKgIRoCQCAHKAIQIgQoAugBRQRAIBggBCsDUEQAAAAAAADgP6IgHaAQMiIeoSEVAnwgGiAEKwNYIAQrA2CgRAAAAAAAAOA/oiAdoBAyIh+hIhlEAAAAAAAAAABmBEAgGSAWowwBCyAZRAAAAAAAAPA/oCAWo0QAAAAAAADwv6ALIBUgFqMgFUQAAAAAAADwP6AgFqNEAAAAAAAA8L+gIBVEAAAAAAAAAABmGxAyIRkQMiEXIBggHqAiFSAWoyAVRAAAAAAAAPA/oCAWo0QAAAAAAADwv6AgFUQAAAAAAAAAAGYbEDIhHiAaIB+gIhUgFqMgFUQAAAAAAADwP6AgFqNEAAAAAAAA8L+gIBVEAAAAAAAAAABmGxAyIR8CfANAAkAgGSEVIBcgH2UEQANAIBUgHmUEQCAJIBcgFRC+AiAVRAAAAAAAAPA/oCEVDAELCyAXRAAAAAAAAPA/oCEXDAIFIBpEAAAAAAAAAABmRQ0BIBogFqMMAwsACwsgGkQAAAAAAADwP6AgFqNEAAAAAAAA8L+gCyEVIAUgGCAWoyAYRAAAAAAAAPA/oCAWo0QAAAAAAADwv6AgGEQAAAAAAAAAAGYbEDI5A7gCIAUgFRAyOQOwAiALIAcQLCEEA0AgBEUNAiAFIAUpA7gCNwOoASAFIAUpA7ACNwOgASAEIAVBoAFqIAkgHCAbIAggEkEBcRCHCCALIAQQMCEEDAALAAsgBSAYIBajIBhEAAAAAAAA8D+gIBajRAAAAAAAAPC/oCAYRAAAAAAAAAAAZhsQMjkDuAIgBSAaIBajIBpEAAAAAAAA8D+gIBajRAAAAAAAAPC/oCAaRAAAAAAAAAAAZhsQMjkDsAIgCyAHECwhBANAIARFDQEgBygCECgC6AEgBEFQQQAgBCgCAEEDcUECRxtqKAIoKAIQKALoAUcEQCAFIAUpA7gCNwO4ASAFIAUpA7ACNwOwASAEIAVBsAFqIAkgHCAbIAggEkEBcRCHCAsgCyAEEDAhBAwACwALIAYgBxAdIQcMAQsLQQAhByAGEBwhBANAIAQEQCAEKAIQIBQgB0ECdGooAgA2AoABIAdBAWohByAGIAQQHSEEDAELCyAUEBgMBAsACwALQQAhBiAAQQQQGiEBAkADQCAAIAZGBEACQCABIABBBEG2AxC1ARDJAyEKIABBEBAaIQIgDg0AQQAhBgNAIAAgBkYNBCAGIAEgBkECdGooAgAiBCAKIAIgBCgCDEEEdGogCCADKAIIIA8QhgggBkEBaiEGDAALAAsFIAEgBkECdGogESAGQQR0ajYCACAGQQFqIQYMAQsLICCaIRUgIZohGUEAIQdBACEJA0AgACAJRgRAA0AgACAHRg0DIAcgDmotAABFBEAgByABIAdBAnRqKAIAIgYgCiACIAYoAgxBBHRqIAggAygCCCAPEIYICyAHQQFqIQcMAAsABQJAIAkgDmotAABBAUcNACABIAlBAnRqKAIAIgQoAgQhBiAEKAIIIQsgAiAEKAIMQQR0aiIEIBU5AwggBCAZOQMAQQAhBCALQQAgC0EAShshDANAIAQgDEcEQCAFIAYpAwg3A0ggBSAGKQMANwNAIAogBUFAaxCHCSAEQQFqIQQgBkEQaiEGDAELC0Hs2gotAABBAkkNACAFIBU5AzAgBSAZOQMoIAUgCzYCICANQcryBCAFQSBqEDMLIAlBAWohCQwBCwALAAsgARAYQQAhBgNAIAAgBkYEQCAREBggChDdAiAPEBhBACEGQezaCi0AAEEBTQ0IA0AgACAGRg0JIAIgBkEEdGoiASsDACEVIAUgASsDCDkDECAFIBU5AwggBSAGNgIAIA1BwqgEIAUQMyAGQQFqIQYMAAsABSARIAZBBHRqKAIEEBggBkEBaiEGDAELAAsACyATuCEdIAYQHCEHA0AgB0UNASAFQcACaiAHENcGIBsgBSsDyAIQMqAiGCAHKAIQIgQrA1BEAAAAAAAA4D+iIB2gEDIiHqEhFQJ8IBwgBSsDwAIQMqAiGiAEKwNYIAQrA2CgRAAAAAAAAOA/oiAdoBAyIh+hIhlEAAAAAAAAAABmBEAgGSAWowwBCyAZRAAAAAAAAPA/oCAWo0QAAAAAAADwv6ALIBUgFqMgFUQAAAAAAADwP6AgFqNEAAAAAAAA8L+gIBVEAAAAAAAAAABmGxAyIRkQMiEXIBggHqAiFSAWoyAVRAAAAAAAAPA/oCAWo0QAAAAAAADwv6AgFUQAAAAAAAAAAGYbEDIhHiAaIB+gIhUgFqMgFUQAAAAAAADwP6AgFqNEAAAAAAAA8L+gIBVEAAAAAAAAAABmGxAyIR8CfANAAkAgGSEVIBcgH2UEQANAIBUgHmUEQCAJIBcgFRC+AiAVRAAAAAAAAPA/oCEVDAELCyAXRAAAAAAAAPA/oCEXDAIFIBpEAAAAAAAAAABmRQ0BIBogFqMMAwsACwsgGkQAAAAAAADwP6AgFqNEAAAAAAAA8L+gCyEVIAUgGCAWoyAYRAAAAAAAAPA/oCAWo0QAAAAAAADwv6AgGEQAAAAAAAAAAGYbEDI5A7gCIAUgFRAyOQOwAiALIAcQLCEEA0AgBARAIAUgBSkDuAI3A8gBIAUgBSkDsAI3A8ABIAQgBUHAAWogCSAcIBsgCCASQQFxEIcIIAsgBBAwIQQMAQsLIAYgBxAdIQcMAAsACyAKIAkQhgk2AgQgCiAJEJoBNgIIAn8gBigCECIEKwMgIAQrAxChIBNBAXS4IhWgIBajmyIZmUQAAAAAAADgQWMEQCAZqgwBC0GAgICAeAshByAKIAcCfyAEKwMoIAQrAxihIBWgIBajmyIVmUQAAAAAAADgQWMEQCAVqgwBC0GAgICAeAsiBGo2AgACQEHs2gotAABBA0kNACAGECEhBiAKKAIIIQsgBSAENgKcASAFIAc2ApgBIAUgCzYClAEgBSAGNgKQASANQfrGBCAFQZABahAgGkEAIQQDQCAEIAooAghODQEgCigCBCAEQQR0aiIGKwMAIRUgBSAGKwMIOQOIASAFIBU5A4ABIA1BvY4EIAVBgAFqEDMgBEEBaiEEDAALAAsgCRDdAgsgDEEBaiEMDAALAAsgAEEgEBohBANAIAAgBkYEQEEAIQICQCADKAIQQQRHDQACQCADLQAcQQJxRQ0AIAMgAEEEEBo2AhhBACEGA0AgACAGRg0BAkAgASAGQQJ0IgJqKAIAQfAWECciB0UNACAFIAVBwAJqNgKQAiAHQcGyASAFQZACahBRQQBMDQAgBSgCwAIiB0EASA0AIAMoAhggAmogBzYCAAsgBkEBaiEGDAALAAsgACAEIAMQ3Q0hAiADLQAcQQJxRQ0AIAMoAhgQGAsgBBAYDAMFIAEgBkECdGooAgAiBxDBAiAEIAZBBXRqIgIgBygCECIHKQMQNwMAIAIgBykDKDcDGCACIAcpAyA3AxAgAiAHKQMYNwMIIAZBAWohBgwBCwALAAtBACECCyAFQdACaiQAIAILNQEBfwJ/AkBB/NwKKAIAIgFFDQAgACABEEUiAUUNACABLQAARQ0AQQEgARBoRQ0BGgtBAAsLOwECfwJAIAAoAhAiAigC6AEiAUUNACABKAIQIgEtAJACDQAgASgCjAIgAigC9AFBAnRqKAIAIQALIAAL8gEBBn9BASEBA0AgASAAKAIQIgIoArQBSkUEQCACKAK4ASABQQJ0aigCABDjDSABQQFqIQEMAQsLIAAQHCECA0AgAgRAIAIoAhAiASgC6AFFBEAgASAANgLoAQsgACACECwhAwNAIAMEQAJAIAMoAhAoArABIgFFDQADQCABIAFBMGsiBSABKAIAQQNxIgZBAkYbKAIoKAIQIgQtAKwBQQFHDQEgASAFIAQoAugBBH8gBgUgBCAANgLoASABKAIAQQNxC0ECRhsoAigoAhAoAsgBKAIAIgENAAsLIAAgAxAwIQMMAQsLIAAgAhAdIQIMAQsLC7UDAQh/IwBBEGsiBCQAIAAQHCEBA38gAQR/IAEoAhAiBi0AtQFBB0YEfyABEP8JIAEoAhAFIAYLQQA2AugBIAAgARAdIQEMAQVBAQsLIQUDQAJAIAAoAhAiASgCtAEgBU4EQCABKAK4ASAFQQJ0aigCACIDEBwhAQNAIAFFDQIgAyABEB0CQCABKAIQLQC1AQRAIAEQISECIAQgABAhNgIEIAQgAjYCAEH98gMgBBAqIAMgARC3AQwBCyADKAIQKAKIAiECIAEQogEgAUcEQEGtoQNBzLkBQZgBQc6YARAAAAsgASgCECIHIAI2AvABIAIoAhAiAiACKALsASAHKALsAWo2AuwBIAEoAhAiAkEHOgC1ASACIAM2AugBIAMgARAsIQIDQCACRQ0BAkAgAigCECgCsAEiAUUNAANAIAEgAUEwayIHIAEoAgBBA3FBAkYbKAIoKAIQIggtAKwBQQFHDQEgCCADNgLoASABIAcgASgCAEEDcUECRhsoAigoAhAoAsgBKAIAIgENAAsLIAMgAhAwIQIMAAsACyEBDAALAAsgBEEQaiQADwsgBUEBaiEFDAALAAv3BgEJfyAAEOINIQQgARDiDSIFKAIQKAL0ASIHIAQoAhAoAvQBIgZKBEACQCAEIAIoAhAiCCgCsAEiA0EwQQAgAygCAEEDcSIJQQNHG2ooAihGBEAgA0FQQQAgCUECRxtqKAIoIAVGDQELQQVBAUEFIAEgBUYbIAAgBEcbIQkgAygCEC4BqAFBAk4EQCAIQQA2ArABAkAgByAGa0EBRw0AIAQgBRC5AyIARQ0AIAIgABDFBEUNACACIAAQjAMgBCgCEC0ArAENAiAFKAIQLQCsAQ0CIAIQywQPCyAEKAIQKAL0ASEBIAQhBwNAIAEgBSgCECgC9AEiBk4NAiAFIQAgBkEBayABSgRAIAQQYSIKIANBUEEAIAMoAgBBA3FBAkcbaigCKCIIKAIQIgAoAvQBIgsgACgC+AFBAhDmDSAKELoCIgAoAhAiBiAIKAIQIggrA1g5A1ggBiAIKwNgOQNgIAYgCCgC9AE2AvQBIAYgCCgC+AFBAWoiBjYC+AEgCigCECgCxAEgC0HIAGxqKAIEIAZBAnRqIAA2AgALIAcgACACEOQBKAIQIAk6AHAgAygCECIHIAcvAagBQQFrOwGoASABQQFqIQEgA0FQQQAgAygCAEEDcUECRxtqKAIoKAIQKALIASgCACEDIAAhBwwACwALAkAgByAGa0EBRw0AAkAgBCAFELkDIgNFDQAgAiADEMUERQ0AIAIoAhAgAzYCsAEgAygCECIAIAk6AHAgACAALwGoAUEBajsBqAEgBCgCEC0ArAENASAFKAIQLQCsAQ0BIAIQywQMAQsgAigCEEEANgKwASAEIAUgAhDkASIDKAIQIAk6AHALIAUoAhAoAvQBIgAgBCgCECgC9AFrQQJIDQACQCAEIANBMEEAIAMoAgBBA3FBA0cbaigCKEYEQCADIQEMAQsgAigCEEEANgKwASAEIANBUEEAIAMoAgBBA3FBAkcbaigCKCACEOQBIQEgAigCECABNgKwASADEJQCIAUoAhAoAvQBIQALA0AgAUFQQQAgASgCAEEDcSIHQQJHG2ooAigiAygCECIEKAL0ASAARkUEQCAEKALIASgCACEBDAELCyADIAVGDQAgAUEwQQAgB0EDRxtqKAIoIAUgAhDkASgCECAJOgBwIAEQlAILDwtBwaMDQbS6AUHQAEHE+AAQAAAL4wIBBX8gACgCECgCxAEiBCABQcgAbCIIaiIFKAIEIQYCQCADQQBMBEAgAiADayECA0AgAkEBaiIHIAQgCGooAgAiBU5FBEAgBiAHQQJ0aigCACIEKAIQIAIgA2oiAjYC+AEgBiACQQJ0aiAENgIAIAAoAhAoAsQBIQQgByECDAELCyADQQFrIgcgBWohAiABQcgAbCEDA0AgAiAFTg0CIAYgAkECdGpBADYCACACQQFqIQIgACgCECgCxAEiBCADaigCACEFDAALAAsgA0EBayEHIAUoAgAhBAN/IAIgBEEBayIETgR/IAIgA2ohAwNAIAJBAWoiAiADTkUEQCAGIAJBAnRqQQA2AgAMAQsLIAAoAhAoAsQBIgQgAUHIAGxqKAIABSAGIARBAnRqKAIAIgUoAhAgBCAHaiIINgL4ASAGIAhBAnRqIAU2AgAMAQsLIQULIAQgAUHIAGxqIAUgB2o2AgALNQEBfyAAKAIQIgEtALUBQQdHBEAgABCiAQ8LIAEoAugBKAIQKAKMAiABKAL0AUECdGooAgALvhABC38jAEEQayIKJAAgACgCEEEANgLAASAAEOQNQQEhAgNAIAAoAhAiASgCtAEgAk4EQCABKAK4ASACQQJ0aigCACEGIwBBIGsiByQAAkACQCAGKAIQIgMoAuwBIgRBAmoiAUGAgICABEkEQEEAIAEgAUEEEE4iBRsNASADIAU2AowCIAMoAugBIQVBACEDA0AgBCAFTgRAIAAQugIhASAGKAIQKAKMAiAFQQJ0aiABNgIAIAEoAhAiBCAGNgLoASAEQQc6ALUBIAQgBTYC9AEgAwRAIAMgAUEAEOQBKAIQIgMgAy8BmgFB6AdsOwGaAQsgBUEBaiEFIAYoAhAoAuwBIQQgASEDDAELCyAGEBwhAQNAIAYoAhAhAyABBEAgAygCjAIgASgCECgC9AFBAnRqKAIAIgkoAhAiAyADKALsAUEBajYC7AEgBiABECwhBANAIAQEQCAEQShqIQggBEEwQQAgBCgCACIDQQNxQQNHG2ooAigoAhAoAvQBIQUDQCAIQVBBACADQQNxQQJHG2ooAgAoAhAoAvQBIAVKBEAgCSgCECgCyAEoAgAoAhAiAyADLwGoAUEBajsBqAEgBUEBaiEFIAQoAgAhAwwBCwsgBiAEEDAhBAwBCwsgBiABEB0hAQwBCwsgAygC7AEhASADKALoASEFA0AgASAFTgRAIAMoAowCIAVBAnRqKAIAKAIQIgQoAuwBIgZBAk4EQCAEIAZBAWs2AuwBCyAFQQFqIQUMAQsLIAdBIGokAAwCCyAHQQQ2AgQgByABNgIAQYj2CCgCAEGm6gMgBxAgGhAvAAsgByABQQJ0NgIQQYj2CCgCAEH16QMgB0EQahAgGhAvAAsgAkEBaiECDAELCyAAEBwhAQNAIAEEQCAAIAEQLCECA0AgAgRAIAJBMEEAIAJBUEEAIAIoAgBBA3EiA0ECRxtqKAIoKAIQIgUsALYBIgRBAkwEfyAFIARBAWo6ALYBIAIoAgBBA3EFIAMLQQNHG2ooAigoAhAiAywAtgEiBUECTARAIAMgBUEBajoAtgELIAAgAhAwIQIMAQsLIAAgARAdIQEMAQsLIAAQHCEFA0AgBQRAAkAgBSgCECgC6AENACAFEKIBIAVHDQAgACAFEKcIC0EAIQEgACAFECwhAgNAIAEhAwJ/AkACQAJAIAIEQCACIAIoAhAiBCgCsAENBBoCQAJAIAJBMEEAIAIoAgBBA3EiAUEDRxtqKAIoIgYoAhAiBy0AtQFBB0cEQCACQVBBACABQQJHG2ooAigiCSgCECIILQC1AUEHRw0BCyADIAIQ6Q0EQCADKAIQKAKwASIBBEAgACACIAFBABDEBAwGCyACQTBBACACKAIAQQNxIgFBA0cbaigCKCgCECgC9AEgAkFQQQAgAUECRxtqKAIoKAIQKAL0AUcNBgwECyACQTBBACACKAIAQQNxQQNHG2ooAigQ5w0hASACIAJBUEEAIAIoAgBBA3FBAkcbaigCKBDnDSIDIAEgASgCECgC9AEgAygCECgC9AFKIgYbIgQoAhAoAugBIAEgAyAGGyIDKAIQKALoAUYNBhogBCADELkDIgEEQCAAIAIgAUEBEMQEDAILIAIgBCgCECgC9AEgAygCECgC9AFGDQYaIAAgBCADIAIQ7AUgAigCEEGwAWohAQNAIAEoAgAiAUUNAiABIAFBMGsiBCABKAIAQQNxQQJGGygCKCgCECgC9AEgAygCECgC9AFKDQIgASgCEEEFOgBwIAEgBCABKAIAQQNxQQJGGygCKCgCECgCyAEhAQwACwALAkACQAJAIANFDQAgBiADQTBBACADKAIAQQNxIgtBA0cbaigCKEcNACAJIANBUEEAIAtBAkcbaigCKEcNACAHKAL0ASAIKAL0AUYNBSAEKAJgDQAgAygCECgCYA0AIAIgAxDFBA0BIAIoAgBBA3EhAQsgAiACQTBqIgYgAUEDRhsoAigiByACIAJBMGsiBCABQQJGGygCKEcNASACEMsEDAILQYzbCi0AAEEBRgRAIAIoAhBBBjoAcAwGCyAAIAIgAygCECgCsAFBARDEBAwECyAHEKIBIAIgBCACKAIAQQNxQQJGGygCKBCiASEJIAIgBiACKAIAQQNxIghBA0YbKAIoIgdHDQQgAiAEIAhBAkYbKAIoIgEgCUcNBCAHKAIQKAL0ASIJIAEoAhAoAvQBIghGBEAgACACEPsFDAELIAggCUoEQCAAIAcgASACEOwFDAELIAAgARAsIQEDQCABBEACQCABQVBBACABKAIAQQNxIglBAkcbaigCKCIHIAIgBiACKAIAQQNxIghBA0YbKAIoRw0AIAcgAiAEIAhBAkYbKAIoRg0AIAEoAhAiCC0AcEEGRg0AIAgoArABRQRAIAAgAUEwQQAgCUEDRxtqKAIoIAcgARDsBQsgAigCECgCYA0AIAEoAhAoAmANACACIAEQxQRFDQBBjNsKLQAAQQFGBEAgAigCEEEGOgBwIAEoAhBBAToAmQEMCAsgAhDLBCAAIAIgASgCECgCsAFBARDEBAwHCyAAIAEQMCEBDAELCyAAIAIgBCACKAIAQQNxIgFBAkYbKAIoIAIgBiABQQNGGygCKCACEOwFCyACDAQLIAAgBRAdIQUMBgsgAiADEIwDCyACEMsECyADCyEBIAAgAhAwIQIMAAsACwsCQCAAEGEgAEcEQCAAKAIQKALYARAYQQFBBBBOIgFFDQEgACgCECIAIAE2AtgBIAEgACgCwAE2AgALIApBEGokAA8LIApBBDYCAEGI9ggoAgBB9ekDIAoQIBoQLwALhwEBA38CQCAARSABRXINACAAQTBBACAAKAIAQQNxIgNBA0cbaigCKCABQTBBACABKAIAQQNxIgRBA0cbaigCKEcNACAAQVBBACADQQJHG2ooAiggAUFQQQAgBEECRxtqKAIoRw0AIAAoAhAoAmAgASgCECgCYEcNACAAIAEQxQRBAEchAgsgAgswAQF8IAEoAhAiASABKwNYIAAoAhAoAvgBQQJttyICoDkDWCABIAErA2AgAqA5A2ALcgEBfwJ/QQAgASgCECIBLQCsAUEBRw0AGiABKAKQAigCACECA0AgAiIBKAIQKAJ4IgINAAtBACAAIAFBMEEAIAEoAgBBA3FBA0cbaigCKBCpAQ0AGiAAIAFBUEEAIAEoAgBBA3FBAkcbaigCKBCpAUULC+AFAgZ/BnwgABBhKAIQKALEASEGIAAQYSAARgR/QQAFIABBzNsKKAIAQQhBABBiCyICIAFqIQUgArchCiAAKAIQIgIrA4ABIQggAisDeCEJQQEhAwNAIAMgAigCtAFKRQRAIAIoArgBIANBAnRqKAIAIgIgBRDsDSACKAIQIgQoAuwBIAAoAhAiAigC7AFGBEAgCSAEKwN4IAqgECMhCQsgBCgC6AEgAigC6AFGBEAgCCAEKwOAASAKoBAjIQgLIANBAWohAwwBCwsgAiAIOQOAASACIAk5A3gCQCAAEGEgAEYNACAAKAIQIgIoAgxFDQAgAisDaCIKIAIrA0giCyAKIAtkGyAIIAkgBiACKALoAUHIAGxqKAIEKAIAKAIQKwMYIAYgAigC7AFByABsaigCBCgCACgCECsDGKGgoKEiCUQAAAAAAAAAAGRFDQAgABBhIQMgACgCECIEKALoASECAkACfCAJRAAAAAAAAPA/oEQAAAAAAADgP6IiCiAEKwN4oCIMIAMoAhAiBygCxAEiBSAEKALsASIDQcgAbGorAxAgAbciDaGhIghEAAAAAAAAAABkBEADQCACIANMBEAgBSADQcgAbGoiASgCAEEASgRAIAEoAgQoAgAoAhAiASAIIAErAxigOQMYCyADQQFrIQMMAQsLIAggCSAKoSAEKwOAASILoKAMAQsgCSAKoSAEKwOAASILoAsgDSAFIAJByABsaisDGKGgIghEAAAAAAAAAABkRQ0AIAcoAugBIQEDQCABIAJODQEgBSACQQFrIgJByABsaiIDKAIAQQBMDQAgAygCBCgCACgCECIDIAggAysDGKA5AxgMAAsACyAEIAw5A3ggBCAJIAqhIAugOQOAAQsgABBhIABHBEAgBiAAKAIQIgAoAugBQcgAbGoiASABKwMYIAArA4ABECM5AxggBiAAKALsAUHIAGxqIgEgASsDECAAKwN4ECM5AxALC4kDAgZ/BHwgABBhKAIQKALEASEFIAAQYSAARgR8RAAAAAAAACBABSAAQczbCigCAEEIQQAQYrcLIQkgACgCECIBKwOAASEHIAErA3ghCEEBIQIDQCACIAEoArQBSkUEQCABKAK4ASACQQJ0aigCACIBEO0NIQYgASgCECIEKALsASAAKAIQIgEoAuwBRgRAIAggCSAEKwN4oCIKIAggCmQbIQgLIAQoAugBIAEoAugBRgRAIAcgCSAEKwOAAaAiCiAHIApkGyEHCyADIAZyIQMgAkEBaiECDAELCyAAEGEhAiAAKAIQIQECQCAAIAJGDQAgASgCDEUNACAAEDlBASEDIAAoAhAhASgCEC0AdEEBcQ0AIAcgASsDWKAhByAIIAErAzigIQgLIAEgBzkDgAEgASAIOQN4IAAQYSAARwRAIAUgACgCECIAKALoAUHIAGxqIgEgASsDGCIJIAcgByAJYxs5AxggBSAAKALsAUHIAGxqIgAgACsDECIHIAggByAIZBs5AxALIAMLcAECf0EBIQQDQCAEIAAoAhAiAygCtAFKRQRAIAMoArgBIARBAnRqKAIAIAEgAhDuDSAEQQFqIQQMAQsLIAMgASADKwMQojkDECADIAIgAysDGKI5AxggAyABIAMrAyCiOQMgIAMgAiADKwMoojkDKAvlBAIIfwR8QQEhAgNAIAIgACgCECIDKAK0AUpFBEAgAygCuAEgAkECdGooAgAgARDvDSACQQFqIQIMAQsLIAAQYSECIAAoAhAhAwJAIAAgAkYEQCADKALsASEFRAAAwP///9/BIQpEAADA////30EhCyADKALoASIIIQQDQCAEIAVKBEAgAygCtAEiAEEAIABBAEobQQFqIQBBASECA0AgACACRg0EIAogAygCuAEgAkECdGooAgAoAhAiBCsDIEQAAAAAAAAgQKAiDCAKIAxkGyEKIAsgBCsDEEQAAAAAAAAgwKAiDCALIAxjGyELIAJBAWohAgwACwAFAkAgAygCxAEgBEHIAGxqIgAoAgAiBkUNAEEBIQIgACgCBCIHKAIAIgBFDQADQCAAKAIQIgAtAKwBIglFIAIgBk5yRQRAIAcgAkECdGooAgAhACACQQFqIQIMAQsLIAkNACAGQQJrIQIgACsDECAAKwNYoSEMIAcgBkECdGpBBGshAANAIAAoAgAoAhAiAC0ArAEEQCAHIAJBAnRqIQAgAkEBayECDAELCyAKIAArAxAgACsDYKAiDSAKIA1kGyEKIAsgDCALIAxjGyELCyAEQQFqIQQMAQsACwALIAMoAugBIQggAygC7AEhBSADKAKEAigCECgC9AG3IQogAygCgAIoAhAoAvQBtyELCyABKAIQKALEASIAIAVByABsaigCBCgCACgCECsDGCEMIAAgCEHIAGxqKAIEKAIAKAIQKwMYIQ0gAyAKOQMgIAMgCzkDECADIA0gAysDgAGgOQMoIAMgDCADKwN4oTkDGAuiAQICfAF/AkACf0H/////ByAAQdQgECciA0UNABogABA8IQAgAxCuAiEBIABBAEgNAUEAIAFEAAAAAAAAAABjDQAaIAC4IQIgAUQAAAAAAADwP2QEQEH/////B0QAAMD////fQSABoyACYw0BGgsgASACoiIBmUQAAAAAAADgQWMEQCABqg8LQYCAgIB4Cw8LQc+YA0GH/ABBzQBBztkAEAAAC4gCAgd/AXwjAEEQayIEJAAgAEHM2wooAgBBCEEAEGIgABDtBbchCCAAKAIQIgEoAugBIQMgASgChAIhBSABKAKAAiEGA0AgAyABKALsAUpFBEACQCADQcgAbCIHIAEoAsQBaiICKAIARQ0AIAIoAgQoAgAiAkUEQCAAECEhASAEIAM2AgQgBCABNgIAQdu0BCAEEDcMAQsgBiACIAIoAhArA1ggCKAgASsDYKBBABCfARogACgCECIBKALEASAHaiICKAIEIAIoAgBBAnRqQQRrKAIAIgIgBSACKAIQKwNgIAigIAErA0CgQQAQnwEaCyADQQFqIQMgACgCECEBDAELCyAEQRBqJAAL2wICCn8BfCAAQczbCigCAEEIQQAQYiEHQQEhAQNAIAAoAhAiBSgCtAEiBCABSARAIAe3IQtBASEBA0AgASAESkUEQCABQQJ0IQkgAUEBaiIHIQEDQCAFKAK4ASICIAlqKAIAIQMgASAESkUEQCACIAFBAnRqKAIAIgYgAyADKAIQKALoASAGKAIQKALoAUoiAhsiCCgCECIKKALsASADIAYgAhsiAygCECIGKALoASICTgRAIAggAyACQcgAbCICIAooAsQBaigCBCgCACgCECgC+AEg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P2UNACAAEPENIAAoAhAiASgCgAIgASgChAIgEiARIAEoAnRBAXEbIhFEAAAAAOD/70AgEUQAAAAA4P/vQGMbQegHEJ8BGgsCQCAAQQIgABDwDRDMBEUNACAAKAIQIgIoAugBIQUDQAJAAkAgAigC7AEiCiAFTgRAQQAhCCACKALEASAFQcgAbGoiBygCACIJQQAgCUEAShshA0EAIQEDQCABIANGDQNBACEEAkAgBygCBCABQQJ0aigCACIIKAIQIgsoApACIg1FDQADQCANIARBAnRqKAIAIgZFDQEgBkFQQQAgBigCAEEDcSIMQQJHG2ooAigoAhAoAvQBIAVKDQQgBEEBaiEEIAZBMEEAIAxBA0cbaigCKCgCECgC9AEgBUwNAAsMAwtBACEEAkAgCygCiAIiC0UNAANAIAsgBEECdGooAgAiBkUNASAGQTBBACAGKAIAQQNxIg1BA0cbaigCKCgCECgC9AEgBUoNBCAEQQFqIQQgBSAGQVBBACANQQJHG2ooAigoAhAoAvQBTg0ACwwDCyABQQFqIQEMAAsACyAAQQIgABDwDRDMBEUNA0GImwNBprsBQY0BQbHiABAAAAsgASEDCwJAIAhFIAMgCUhyRQRAIAdBzABBvH8gBSAKSBtqKAIAKAIAIgJFDQEgBygCBCgCACEDIAAQugIiASgCEEECOgCsASABIANEAAAAAAAAAABBABCfARogASACRAAAAAAAAAAAQQAQnwEaIAEoAhAgAygCECgC9AEiASACKAIQKAL0ASICIAEgAkgbNgL0ASAAKAIQIQILIAVBAWohBQwBCwtB0toAQaa7AUH2AEGO+gAQAAALIAAoAhAiASgC7AEhBSABKALoASECIAEoAsQBIQQDQCACIAVMBEBBACEBIAQgAkHIAGxqIgcoAgAiA0EAIANBAEobIQYDQCABIAZHBEAgBygCBCABQQJ0aigCACgCECIDKAL0ASEIIAMgAjYC9AEgAyAItzkDECABQQFqIQEMAQsLIAJBAWohAgwBCwsgACAAEO8NAkAgACgCECIBKALsAUEATA0AIAEoAggiAigCVCIFRQ0AIAErACgiESABKwAYoSIUIAErACAiEiABKwAQoSIVIAEoAnRBAXEiAxshEyAVIBQgAxshFAJAAnwCQAJAAkACQAJAIAVBAWsOBQQABwEDBwsgAisD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IAJB7BxqENAEIQcgAigC7BwhAwwBCyACQegMaiACQewcahDPBCEHIBogAigC7BwiA0EFSXINACAHIAcpAwA3AxAgByAHKQMINwMYIAcgByADQQR0akEQayIDKQMANwMgIAcgAykDCDcDKCADKQMAIWUgByADKQMINwM4IAcgZTcDMCACQQQ2AuwcQQQMAQsgA0UNASADCyEGQQAhAwwBCyAHEBhBACEDA0AgAigCmB0gA00EQCACQZAdaiIDQSAQMSADEDRBACEDA0AgAigC+B0gA00EQCACQfAdaiIDQRAQMSADEDRBACEDA0AgAigC0B0gA00EQCACQcgdaiIDQRAQMSADEDQMCwUgAkHwCWogAkHQHWopAwA3AwAgAiACKQPIHTcD6AkgAkHoCWogAxAZIQUCQAJAIAIoAtgdIgQOAgETAAsgAkHgCWogAigCyB0gBUEEdGoiBSkDCDcDACACIAUpAwA3A9gJIAJB2AlqIAQRAQALIANBAWohAwwBCwALAAUgAkHQCWogAkH4HWopAwA3AwAgAiACKQPwHTcDyAkgAkHICWogAxAZIQUCQAJAIAIoAoAeIgQOAgERAAsgAkHACWogAigC8B0gBUEEdGoiBSkDCDcDACACIAUpAwA3A7gJIAJBuAlqIAQRAQALIANBAWohAwwBCwALAAUgAkGwCWogAkGYHWopAwA3AwAgAiACKQOQHTcDqAkgAkGoCWogAxAZIQUCQAJAIAIoAqAdIgQOAgEPAAsgAkGQCWogAigCkB0gBUEFdGoiBSkDCDcDACACQZgJaiAFKQMQNwMAIAJBoAlqIAUpAxg3AwAgAiAFKQMANwOICSACQYgJaiAEEQEACyADQQFqIQMMAQsACwALA0AgAyAGSQRAIAwgByADQQR0aiIGKQMANwMAIAwgBikDCDcDCCACQfAdakEQECYhBiACKALwHSAGQQR0aiIGIAwpAwA3AwAgBiAMKQMINwMIIANBAWohAyACKALsHCEGDAELCyAHEBggCiEDA0AgCCgCACgCyAEoAgAhBiADBEAgA0EBayEDIAZBUEEAIAYoAgBBA3FBAkcbaigCKEEQaiEIDAELCyACKAL4HSIHBEAgAkHoCmogAkH4HWoiAykDADcDACACIAIpA/AdNwPgCiAMIAIoAvAdIAJB4ApqIAdBAWsQGUEEdGoiBykD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Dg0FIAIoAqwEIQggAigCqAQhCwJAAkACQCAJQQFqDgMAAQIDCyADKAIAIAIgAykCCDcDYCACIAMpAgA3A1ggAkHYAGogABAZQQJ0aigCACADKAIAIAIgAykCCDcDUCACIAMpAgA3A0ggAkHIAGogBRAZQQJ0aigCACAEQQAgBiABELgCIAMoAgAgAkFAayADKQIINwMAIAIgAykCADcDOCACQThqIAAQGUECdGooAgAgAygCACACIAMpAgg3AzAgAiADKQIANwMoIAJBKGogBRAZQQJ0aigCACAHQQEgCyABELgCIAhBAUcNAiADKAIAIAIgAykCCDcDICACIAMpAgA3AxggAkEYaiAFEBlBAnRqKAIAIAMoAgAgAiADKQIINwMQIAIgAykCADcDCCACQQhqIAAQGUECdGooAgAgByABEJcODAILAkACQAJAIAhBAWoOAwABAgQLIAMoAgAgAiADKQIINwOgASACIAMpAgA3A5gBIAJBmAFqIAAQGUECdGooAgAgAygCACACIAMpAgg3A5ABIAIgAykCADcDiAEgAkGIAWogBRAZQQJ0aigCACAEQQAgBiABELgCIAMoAgAgAiADKQIINwOAASACIAMpAgA3A3ggAkH4AGogABAZQQJ0aigCACADKAIAIAIgAykCCDcDcCACIAMpAgA3A2ggAkHoAGogBRAZQQJ0aigCACAHQQEgCyABELgCDAMLIAMoAgAgAiADKQIINwPgASACIAMpAgA3A9gBIAJB2AFqIAUQGUECdGooAgAgAygCACACIAMpAgg3A9ABIAIgAykCADcDyAEgAkHIAWogABAZQQJ0aigCAEEAIAQgBiABELgCIAMoAgAgAiADKQIINwPAASACIAMpAgA3A7gBIAJBuAFqIAUQGUECdGooAgAgAygCACACIAMpAgg3A7ABIAIgAykCADcDqAEgAkGoAWogABAZQQJ0aigCAEEBIAcgCyABELgCDAILIAMoAgAgAiADKQIINwOgAiACIAMpAgA3A5gCIAJBmAJqIAUQGUECdGooAgAgAygCACACIAMpAgg3A5ACIAIgAykCADcDiAIgAkGIAmogABAZQQJ0aigCAEEAIAQgBiABELgCIAMoAgAgAiADKQIINwOAAiACIAMpAgA3A/gBIAJB+AFqIAUQGUECdGooAgAgAygCACACIAMpAgg3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QbgCakEEECYhCiAEKAK4AiAKQQJ0aiAEKALMAjYCACACKAIAIAE2AhggCSACQQggCSgCABEDACECDAELCyAIIARB0AJqQYAEIAgoAgARAwAhAgNAAkAgASsDQCEbIAJFDQAgAisDECAbY0UNACAEIAIoAgA2AswCIARBuAJqQQQQJiEKIAQoArgCIApBAnRqIAQoAswCNgIAIAIoAgAgATYCGCAIIAJBCCAIKAIAEQMAIQIMAQsLIAQgGzkD2AIgCSAEQdACakGABCAJKAIAEQMAIQIDQAJAIAErAzghGyACRQ0AIAIrAwggG2NFDQAgBCACKAIANgLMAiAEQbgCakEEECYhCiAEKAK4AiAKQQJ0aiAEKALMAjYCACACKAIAIAE2AhQgCSACQQggCSgCABEDACECDAELCyAEIBs5A9ACIAQgASsDMDkD2AIgCCAEQdACakGABCAIKAIAEQMAIQIDQAJAIAJFDQAgAisDECABKwNAY0UNACAEIAIoAgA2AswCIARBuAJqQQQQJiEKIAQoArgCIApBAnRqIAQoAswCNgIAIAIoAgAgATYCFCAIIAJBCCAIKAIAEQMAIQIMAQsLIARBuAJqIAFBJGogAUEgakEEEMcBIAEoAiAiASAMIAEgDEsbIQwgBkEBaiEGDAELCwNAIBAgEUYEQCAAKAIQIAAoAgAiAUEobGoiAyABNgIgIAMgAUEBajYCSEEAIQMgACgCAEEGbCAMQQF0akEEEBohAiAAIAAoAgBBA2wgDGpBGBAaNgIUIAAoAgAiBkEAIAZBAEobIQEDQCABIANGBEAgBkECaiEDA0AgASADSARAIAAoAhAgAUEobGogAjYCHCABQQFqIQEgAiAMQQJ0aiECDAELCwUgACgCECADQShsaiACNgIcIANBAWohAyACQRhqIQIMAQsLQQAhBgJAAkADQCAGIA9GBEACQCAIEJkBGiAJEJkBGiALEBhBACEBQYj2CCgCACECA0AgASAAKAIATg0BIAAoAhAgAUEobGoiAygCFEUEQCAEIAE2AhAgAkH4zAQgBEEQahAgGiADKAIURQ0FCyADKAIYRQRAIAQgATYCACACQeLMBCAEECAaIAMoAhhFDQYLIAFBAWohAQwACwALBSASIAZByABsaiIBKwM4IAErAyihIhsgASsDQCABKwMwoSIfoEQAAAAAAADg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EmogBhAZQcgAbGogBTYCKAsgAigCACEGIARBkBJqIAIpAgg3AwAgBCACKQIANwOIEgJAIAYgBEGIEmogBRAZQcgAbGooAjQiBkEBa0F9Sw0AIAIoAgAgBEGAEmogAikCCDcDACAEIAIpAgA3A/gRIARB+BFqIAYQGUHIAGxqKAIsIAlHDQAgAigCACAEQfARaiACKQIINwMAIAQgAikCADcD6BEgBEHoEWogBhAZQcgAbGogBTYCLAsgAxDvASEHIAMQ7wEhCiACKAIAIARB4BFqIAIpAgg3AwAgBCACKQIANwPYESAEQdgRaiAJEBlByABsaigCOCEGIAMoAgAgBEHQEWogAykCCDcDACAEIAMpAgA3A8gRIARByBFqIAYQGUEobGpBAjYCACADKAIAIARBwBFqIAMpAgg3AwAgBCADKQIANwO4ESAEQbgRaiAGEBlBKGxqIg4gCCkDADcDCCAOIAgpAwg3AxAgAygCACAEQbARaiADKQIINwMAIAQgAykCADcDqBEgBEGoEWogBhAZQShsaiAANgIEIAMoAgAgBEGgEWogAykCCDcDACAEIAMpAgA3A5gRIARBmBFqIAYQGUEobGogCjYCICADKAIAIARBkBFqIAMpAgg3AwAgBCADKQIANwOIESAEQYgRaiAGEBlBKGxqIAc2AiQgAygCACAEQYARaiADKQIINwMAIAQgAykCADcD+BAgBEH4EGogBxAZQShsakEDNgIAIAMoAgAgBEHwEGogAykCCDcDACAEIAMpAgA3A+gQIARB6BBqIAcQGUEobGogCTYCGCADKAIAIARB4BBqIAMpAgg3AwAgBCADKQIANwPYECAEQdgQaiAHEBlBKGxqIAY2AhwgAygCACAEQdAQaiADKQIINwMAIAQgAykCADcDyBAgBEHIEGogChAZQShsakEDNgIAIAMoAgAgBEHAEGogAykCCDcDACAEIAMpAgA3A7gQIARBuBBqIAoQGUEobGogBTYCGCADKAIAIARBsBBqIAMpAgg3AwAgBCADKQIANwOoECAEQagQaiAKEBlBKGxqIAY2AhwgAigCACAEQaAQaiACKQIINwMAIAQgAikCADcDmBAgBEGYEGogCRAZQcgAbGogBzYCOCACKAIAIARBkBBqIAIpAgg3AwAgBCACKQIANwOIECAEQYgQaiAFEBlByABsaiAK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IAIoAgAgBEGIDGogAikCCDcDACAEIAIpAgA3A4AMIARBgAxqIAkQGUHIAGxqKwMYoZlESK+8mvLXej5lRSALRXINAAJAIBMoAgAiBUEATA0AIAUgASAHEMcERQ0AIAIoAgAhBSAEQbgLaiACKQIINwMAIAQgAikCADcDsAsgBSAEQbALaiAIEBlByABsaigCMCEHIARBqAtqIAIpAgg3AwAgBCACKQIANwOgCyAFIARBoAtqIAcQGUHIAGxqIAg2AiggAigCACAEQZgLaiACKQIINwMAIAQgAikCADcDkAsgBEGQC2ogBhAZQcgAbGpBfzYCMCACKAIAIARBiAtqIAIpAgg3AwAgBCACKQIANwOACyAEQYALaiAGEBlByABsakF/NgI0DAILIAIoAgAhBSAEQfgLaiACKQIINwMAIAQgAikCADcD8AsgBSAEQfALaiAGEBlByABsaigCMCEHIARB6AtqIAIpAgg3AwAgBCACKQIANwPgCyAFIARB4AtqIAcQGUHIAGxqIAY2AiwgAigCACAEQdgLaiACKQIINwMAIAQgAikCADcD0AsgBEHQC2ogCBAZQcgAbGpBfzYCMCACKAIAIARByAtqIAIpAgg3AwAgBCACKQIANwPACyAEQcALaiAIEBlByABsakF/NgI0DAELIAIoAgAhBSAEQfgKaiACKQIINwMAIAQgAikCADcD8AogBSAEQfAKaiAIEBlByABsaigCMCEHIARB6ApqIAIpAgg3AwAgBCACKQIANwPgCgJAIAUgBEHgCmogBxAZQcgAbGooAihBAWtBfUsNACACKAIAIQUgBEHYCmogAikCCDcDACAEIAIpAgA3A9AKIAUgBEHQCmogCBAZQcgAbGooAjAhByAEQcgKaiACKQIINwMAIAQgAikCADcDwAogBSAEQcAKaiAHEBlByABsaigCLEEBa0F9Sw0AIAIoAgAhBSAEQbgKaiACKQIINwMAIAQgAikCADcDsAogBSAEQbAKaiAIEBlByABsaigCMCEHIARBqApqIAIpAgg3AwAgBCACKQIANwOgCiAFIARBoApqIAcQGUHIAGxqKAIoIQcgAigCACEFIARBmApqIAIpAgg3AwAgBCACKQIANwOQCiAFIARBkApqIAgQGUHIAGxqKAIwIQogBEGICmogAikCCDcDACAEIAIpAgA3A4AKIAUg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aCAEIAIpAgA3A2AgBSAEQeAAaiAHEBlByABsaiAGNgIoIAIoAgAhBSAEIAIpAgg3A1ggBCACKQIANwNQIAUgBEHQAGogCBAZQcgAbGooAjQhByAEIAIpAgg3A0ggBCACKQIANwNAIAUgBEFAayAHEBlByABsakF/NgIsIAIoAgAgBCACKQIINwM4IAQgAikCADcDMCAEQTBqIAgQGUHIAGxqQX82AjQgAigCACAEIAIpAgg3AyggBCACKQIANwMgIARBIGogCBAZQcgAbGpBMGoMAQsgB0F/NgIsIAIoAgAhBSAEIAIpAgg3A/gBIAQgAikCADcD8AEgBSAEQfABaiAIEBlByABsaigCNCEHIAQgAikCCDcD6AEgBCACKQIANwPgASAFIARB4AFqIAcQGUHIAGxqIAg2AiggAigCACEFIAQgAikCCDcD2AEgBCACKQIANwPQASAFIARB0AFqIAgQGUHIAGxqKAI0IQcgBCACKQIINwPIASAEIAIpAgA3A8ABIAUgBEHAAWogBxAZQcgAbGogBjYCLCACKAIAIAQgAikCCDcDuAEgBCACKQIANwOwASAEQbABaiAIEBlByABsaigCNCEFIAIoAgAgBCACKQIINwOoASAEIAIpAgA3A6ABIARBoAFqIAYQGUHIAGxqIAU2AjAgAigCACAEIAIpAgg3A5gBIAQgAikCADcDkAEgBEGQAWogBhAZQcgAbGpBfzYCNCACKAIAIAQgAikCCDcDiAEgBCACKQIANwOAASAEQYABaiAIEBlByABsakE0agsoAgAhBSACKAIAIAQgAikCCDcDGCAEIAIpAgA3AxAgBEEQaiAIEBlByABsaiAANgIEIAIoAgAgBCACKQIINwMIIAQgAikCADcDACAEIAYQGUHIAGxqIAA2AgAMAAsAC0GwgwRBwgBBAUGI9ggoAgAQOhoQOwALySADEH8CfAJ+IwBBkAlrIgQkACAEQaAIaiIJQQBBwAAQOBogAEEAQeAAEDgiBUHIABAmIQAgBSgCACAAQcgAbGogBUEYakHIABAfGiADKAIAIRMgCRDvASEJIARBmAhqIARBqAhqIgApAwA3AwAgBCAEKQOgCDcDkAggBCgCoAggBEGQCGogCRAZQShsakECNgIAIARBiAhqIAApAwA3AwAgBCAEKQOgCDcDgAggBCgCoAggBEGACGog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AiACKAIAQQNxIQMLIAIgBiADQQNGGygCKCAFRw0CQZDdCigCACIDRQ0CIAIgAxBFIgMtAABFDQIgAUGwAmogAiADEMAODAILA0ACQCADIARPBEAgAUHgAmpBHBAxQQAhA0EAIQIDQCACIAEoArgCIgRPDQIgASABKQK4AjcD+AEgASABKQKwAjcD8AEgASgCsAIgAUHwAWogAhAZQRxsaigADEECTwRAIAEgASkCuAI3A+gBIAEgASkCsAI3A+ABIAEgASgCsAIgAUHgAWogAhAZQRxsaiIEKQIUNwPYASABIAQpAgw3A9ABIAEgBCkCBDcDyAEgBSABQcgBahDBDgsgAkEBaiECDAALAAsgASABKQLoAjcDwAEgASABKQLgAjcDuAEgAUG4AWogAxAZIQICQAJAIAEoAvACIgQOAgEJAAsgASABKALgAiACQRxsaiICKQIINwOgASABIAIpAhA3A6gBIAEgAigCGDYCsAEgASACKQIANwOYASABQZgBaiAEEQEACyADQQFqIQMgASgC6AIhBAwBCwsDQCADIARPBEAgAUGwAmpBHBAxIAAgBRAdIQUMBQUgASABKQK4AjcDqAIgASABKQKwAjcDoAIgAUGgAmogAxAZIQICQAJAIAEoAsACIgQOAgEJAAsgASABKAKwAiACQRxsaiICKQIINwOIAiABIAIpAhA3A5ACIAEgAigCGDYCmAIgASACKQIANwOAAiABQYACaiAEEQEACyADQQFqIQMgASgCuAIhBAwBCwALAAsgAUHgAmogAiADEMAOCyAAIAIgBRByIQIMAAsACwALIAFBkANqJAAPC0GwgwRBwgBBAUGI9ggoAgAQOhoQOwALHAEBf0EBIQIgACABENIOBH9BAQUgACABENEOCwtAAQJ/AkAgASAAKAIATw0AIAIgACgCBCIETw0AIAAoAgggASAEbCACaiIAQQN2ai0AACAAQQdxdkEBcSEDCyADC84CAQp/AkACQCAABEAgACgCACIFIAFLIAAoAgQiBCACS3FFBEAgBCACQQFqIgMgAyAESRsiBCAFIAFBAWoiAyADIAVJGyIFbCIDQQN2IANBB3FBAEdqEMYDIQcgACgCACEIA0AgBiAIRwRAIAQgBmwhCSAAKAIEIQpBACEDA0AgAyAKRgRAIAZBAWohBgwDCyAAIAYgAxDEDgRAIAcg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A0HMAGohCgJAA0AgAgRAAkAgAigCECIEIAhqKAIAKAIADQAgBCgCsAENACAEQQE2ArABIAMgAjYCTCADQThqQQQQJiEEIAMoAjggBEECdGogAygCTDYCAANAIAMoAkBFDQEgA0E4aiAKEKEEIAMoAkwiBSgCEC0AtQFBB0cEQCAAIAUQ0A4EQEEAIQIDQCADKAJAIAJNBEBBfyEEDAgFIAMgA0FAaykDADcDMCADIAMpAzg3AyggA0EoaiACEBkhAAJAAkACQCADKAJIIgEOAgIAAQsgAygCOCAAQQJ0aigCABAYDAELIAMoAjggAEECdGooAgAgAREBAAsgAkEBaiECDAELAAsACyADQThqIAUgARDPDgwBCyADQThqIQtBACEEAkAgAUEBaiIMIAUoAhAoAugBIgYoAhAiBSwAkQJGDQAgBSgC6AEhBQNAIAYoAhAiBCgC7AEiByAFTgRAIAVBAnQhByAFQQFqIQUgACAHIAQoAowCaigCABDQDiIERQ0BDAILCyAEKALoASEFA0AgBSAHTARAIAsgBCgCjAIgBUECdGooAgAgARDPDiAFQQFqIQUgBigCECIEKALsASEHDAELCyAEIAw6AJECQQAhBAsgBEUNAAtBACECA0AgAiADKAJATw0EIAMgA0FAaykDADcDICADIAMpAzg3AxggA0EYaiACEBkhAAJAAkACQCADKAJIIgEOAgIAAQsgAygCOCAAQQJ0aigCABAYDAELIAMoAjggAEECdGooAgAgAREBAAsgAkEBaiECDAALAAsgAigCECAJaigCACECDAELC0Ho/QooAgAhBSAAKAIQIgIoAugBIQQDQCACKALsASAETgRAIARByABsIgEgBSgCECgCxAFqQQA6ADECQCACLQB0QQFxRQ0AIAIoAsQBIAFqIgEoAgAiBkEATA0AIAZBAWsiBkEBdkEBaiEHIAEoAgQhAUEAIQIDQCACIAdHBEAgASACQQJ0aigCACABIAYgAmtBAnRqKAIAEJcIIAJBAWohAgwBCwsgACgCECECCyAEQQFqIQQMAQsLAkAgABBhIABHDQAQyQRCAFcNACAAQQAQlggLQQAhBEEAIQIDQCACIAMoAkBPDQEgAyADQUBrKQMANwMQIAMgAykDODcDCCADQQhqIAIQGSEAAkACQAJAIAMoAkgiAQ4CAgABCyADKAI4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IQILIAMgASACIAYQ6w4gASECCyAAIAYQMCEGDAALAAsACyAAEOoODAELIAAgA0EAQQAQ6Q4gAxAcIQEDQCABBEAgASgCECICQQA6ALQBIAJBADYCsAEgAyABEB0hAQwBCwsgAxAcIQEDQCABBEAgAyABEOgOIAMgARAdIQEMAQsLIAMQHCEBA0AgAQRAIAEoAhBBADYCkAEgAyABEB0hAQwBCwtBACEJIAMQHCEBA0AgAQRAIAEoAhAoApABRQRAIAMgASAJQQFqIgkQoAgLIAMgARAdIQEMAQsLAkAgCUECSA0AIANB5xwQygQhAiADEBwhAUEBIQgDQCABRQ0BIAggASgCECgCkAFGBEAgAyACIAFBAEEBEF4aIAhBAWohCAsgAyABEB0hAQwACwALIAMQHCEHA0AgBwRAIAMgBxAsIQEDQCABBEAgBygCECICKALIASACKALMASICQQFqIAJBAmoQ2gEhBCAHKAIQIgIgBDYCyAEgAiACKALMASICQQFqNgLMASAEIAJBAnRqIAE2AgAgBygCECICKALIASACKALMAUECdGpBADYCACABIAFBMGsiBSABKAIAQQNxQQJGGygCKCgCECICKALAASACKALEASICQQFqIAJBAmoQ2gEhAiABIAUgASgCAEEDcUECRhsoAigoAhAgAjYCwAEgASAFIAEoAgBBA3FBAkYbKAIoKAIQIgQgBCgCxAEiAkEBajYCxAEgBCgCwAEgAkECdGogATYCACABIAUgASgCAEEDcUECRhsoAigoAhAiAigCwAEgAigCxAFBAnRqQQA2AgAgAyABEDAhAQwBCwsgAyAHEB0hBwwBCwsgA0EBIBAgAEGnhwEQJyICBH8gAhCRAgVBfwsQ/w4aIAAoAhBC/////3c3A+gBQQAhBwJAIAlBAkgNACAJQQFqIgIQnwghB0EBIQEDQCABIAJGDQEgByABQQJ0akH/////BzYCACABQQFqIQEMAAsACyAAEBwhCANAIAgEQCAIEIYCIQIgCCgCECIBIAIoAhAoAqQBKAIQIgIoAvQBIgU2AvQBIAUgACgCECIEKALsAUoEQCAEIAU2AuwBCyAFIAQoAugBSARAIAQgBTYC6AELIAcEQCABIAIoApABIgI2ApABIAcgAkECdGoiAiACKAIAIgIgBSACIAVIGzYCAAsgACAIEB0hCAwB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IAFCADcDECABQgA3AwggASAANgIcIAFBCGpBBBAmIQAgASgCCCAAQQJ0aiABKAIcNgIAIAFBHGohCkH/////ByEEA0AgASgCEARAIAFBCGogCkEEEL4BQQAhACABKAIcIQcDQCAHKAIQIgIoAsgBIABBAnRqKAIAIgMEQCADQVBBACADKAIAQQNxIgtBAkcbaigCKCIMKAIQIg0oArACIQYCQCADKAIQIg4oAqQBQQBIBEAgBiAITCAGIAlOcQ0BIA0oAvQBIANBMEEAIAtBA0cbaigCKCgCECgC9AEgDigCrAFqayICIAQgBUUgAiAESHIiAhshBCADIAUgAhshBQwBCyAGIAIoArACTg0AIAEgDDYCHCABQQhqQQQQJiECIAEoAgggAkECdGogASgCHDYCAAsgAEEBaiEADAEFQQAhACAEQQBMDQMDQCACKAKYAiAAQQJ0aigCACIDRQ0EIANBMEEAIAMoAgBBA3FBA0cbaigCKCIDKAIQKAKwAiACKAKwAkgEQCABIAM2AhwgAUEIakEEECYhAiABKAIIIAJBAnRqIAEoAhw2AgAgBygCECECCyAAQQFqIQAMAAsACwALAAsLDAELIAQoAhAiACgCsAIhCCAAKAKsAiEJIAFBADYCGCABQgA3AxAgAUIANwMIIAEgBDYCHCABQQhqQQQQJiEAIAEoAgggAEECdGogASgCHDYCACABQRxqIQpB/////wchBANAIAEoAhAEQCABQQhqIApBBBC+AUEAIQAgASgCHCEHA0AgBygCECICKALAASAAQQJ0aigCACIDBEAgA0EwQQAgAygCAEEDcSILQQNHG2ooAigiDCgCECINKAKwAiEGAkAgAygCECIOKAKkAUEASARAIAYgCEwgBiAJTnENASADQVBBACALQQJHG2ooAigoAhAoAvQBIA0oAvQBIA4oAqwBamsiAiAEIAVFIAIgBEhyIgIbIQQgAyAFIAIbIQUMAQsgBiACKAKwAk4NACABIAw2AhwgAUEIakEEECYhAiABKAIIIAJBAnRqIAEoAhw2AgALIABBAWohAAwBBUEAIQAgBEEATA0DA0AgAigCoAIgAEECdGooAgAiA0UNBCADQVBBACADKAIAQQNxQQJHG2ooAigiAygCECgCsAIgAigCsAJIBEAgASADNgIcIAFBCGpBBBAmIQIgASgCCCACQQJ0aiABKAIcNgIAIAcoAhAhAgsgAEEBaiEADAALAAsACwALCwsgAUEIaiIAQQQQMSAAEDQgAUEgaiQAIAUL2QEBBH8gAEEwQQAgACgCAEEDcSIFQQNHG2ooAigiBiEDAn8CQCABIAZGBH8gAEFQQQAgBUECRxtqKAIoBSADCygCECgCsAIiAyABKAIQIgQoAqwCTgRAIAMgBCgCsAJMDQELIAAoAhAoApwBIQNBAAwBC0EAIQMgACgCECIEKAKkAUEATgR/IAQoAqABBUEACyAEKAKcAWshA0EBCyEEQQAgA2sgA0EBQX8gAkEATAR/IAEgBkYFIABBUEEAIAVBAkcbaigCKCABRgsbIgBBACAAayAEG0EASBsLgUsCEH8BfiMAQaAFayIEJAAgBEHQxAgvAQA7AfAEIARByMQIKQMANwPoBCAEQcDECCkDADcD4AQgBEG0BGpBAEEsEDgaQezaCi0AAARAIAAoAhBBwAFqIQUDQCAFKAIAIgUEQCAFKAIQIgooAsgBIQlBACEFA0AgCSAFQQJ0aigCAARAIAVBAWohBSAGQQFqIQYMAQUgCkG4AWohBSAHQQFqIQcMAwsACwALCyAEIAE2ArAEIAQgAjYCrAQgBCAGNgKoBCAEIAc2AqQEIAQgBEHgBGo2AqAEQYj2CCgCAEH7wAQgBEGgBGoQIBoQrQELIAQgADYCtARBACEGIARBuARqQQBBKBA4IQ4gACgCEEHAAWohBUEAIQkDQAJAIAUoAgAiB0UEQCAEIAY2AtQEIAQgCTYC2AQgDiAJQQQQ/AEgACgCEEHAAWohBUEBIQgDQCAFKAIAIgcEQEEAIQUgBygCECIKQQA2ArQCIAooAsABIQkDQCAFQQFqIQYgCSAFQQJ0aigCACIFBEAgCiAGNgK0AiAFKAIQIgxCgICAgHA3A6ABIAggDCgCrAEgBUFQQQAgBSgCAEEDcSIIQQJHG2ooAigoAhAoAvQBIAVBMEEAIAhBA0cbaigCKCgCECgC9AFrTHEhCCAGIQUMAQsLIAZBBBAaIQpBACEFIAcoAhAiBkEANgKcAiAGIAo2ApgCIAYoAsgBIQYDQCAFQQJ0IQogBUEBaiEFIAYgCmooAgANAAsgBUEEEBohBiAHKAIQIgVBADYCpAIgBSAGNgKgAiAFQbgBaiEFDAELCwJAIAhBAXENACAEQgA3A4gFIARCADcDgAUgBEIANwP4BCAEQfgEaiAEKALYBEEEEPwBIAQoArQEKAIQQcABaiEFIARBjAVqIQwDQCAFKAIAIgUEQCAFKAIQIgYoArQCBH8gBgUgBCAFNgKMBSAEQfgEakEEECYhBiAEKAL4BCAGQQJ0aiAEKAKMBTYCACAFKAIQC0G4AWohBQwBBUEAIQoLCwNAAkAgBCgCgAUEQCAEQfgEaiAMEKEEQQAhBiAEKAKMBSILKAIQIglBADYC9AEgCSgCwAEhDUEAIQdBACEIA0AgDSAIQQJ0aigCACIFBEAgCSAHIAUoAhAoAqwBIAVBMEEAIAUoAgBBA3FBA0cbaigCKCgCECgC9AFqIgUgBSAHSBsiBzYC9AEgCEEBaiEIDAELCwNAIAkoAsgBIAZBAnRqKAIAIgVFDQIgBSAFQTBrIgcgBSgCAEEDcUECRhsoAigoAhAiCCAIKAK0AiIIQQFrNgK0AiAIQQFMBEAgBCAFIAcgBSgCAEEDcUECRhsoAig2AowFIARB+ARqQQQQJiEFIAQoAvgEIAVBAnRqIAQoAowFNgIAIAsoAhAhCQsgBkEBaiEGDAALAAsCQCAKIAQoAtgERg0AQbWTBEEAEDcgBCgCtAQoAhBBwAFqIQUDQCAFKAIAIgVFDQEgBSgCECIGKAK0AgR/IAUQISEGIAQgBSgCECgCtAI2ApQEIAQgBjYCkARB/MEEIARBkARqEIABIAUoAhAFIAYLQbgBaiEFDAALAAtBACEFA0AgBSAEKAKABU9FBEAgBCAEKQOABTcDiAQgBCAEKQP4BDcDgAQgBEGABGogBRAZIQYCQAJAAkAgBCgCiAUiBw4CAgABCyAEKAL4BCAGQQJ0aigCABAYDAELIAQoAvgEIAZBAnRqKAIAIAcRAQALIAVBAWohBQwBCwsgBEH4BGoiBUEEEDEgBRA0DAILIApBAWohCgwACwALIARBHiADIANBAEgbNgLcBCAEKAK0BCgCEEHAAWohBQJAAkADQCAFKAIAIgMEQCADKAIQIgNBADYCqAIgA0G4AWohBQwBBQJAIAQoAtgEQQQQGiENIAQoArQEKAIQQcABaiEFIARBjAVqIQdBACEKA0AgBSgCACIMBEAgDCgCECIFKAKoAgR/IAUFQRAQUiIJIAw2AgAgDCgCECAJNgKoAiAEQQA2AogFIARCADcDgAUgBEIANwP4BEEBIQUgBEEBNgKYBSAEQgA3A5AFIAQgDDYCjAUgBEH4BGpBEBAmIQMgBCgC+AQgA0EEdGoiAyAHKQIANwIAIAMgBykCCDcCCANAAkAgBSEDIAQoAoAFIgVFDQAgBCAEKQOABTcD+AMgBCAEKQP4BDcD8AMgBCgC+AQgBEHwA2ogBUEBaxAZQQR0aiIIKAIEIQYgCCgCACgCECIPKALAASEQA0ACQCAQIAZBAnRqKAIAIgVFBEAgCCgCCCEGIA8oAsgBIQ8MAQsCQCAFKAIQIhEoAqQBQQBODQAgBSAFQTBqIgsgBSgCAEEDcSISQQNGGygCKCgCECITKAKoAg0AIAVBUEEAIBJBAkcbaigCKCgCECgC9AEgESgCrAEgEygC9AFqRw0AIARBtARqIAUQrAgEQCAEIAQpA4AFNwPoAyAEIAQpA/gENwPgAyAEQeADaiAEKAKABUEBaxAZIQUCQAJAIAQoAogFIgYOAgERAAsgBCAEKAL4BCAFQQR0aiIFKQIINwPYAyAEIAUpAgA3A9ADIARB0ANqIAYRAQALIARB+ARqIAdBEBC+AUF/IQUgBCgCgAUiBkUNBSAEIAQpA4AFNwPIAyAEIAQpA/gENwPAAyAEKAL4BCAEQcADaiAGQQFrEBlBBHRqIgUgBSgCDEEBazYCDCADIQUMBQsgCCAIKAIEQQFqNgIEIAUgCyAFKAIAQQNxQQNGGygCKCgCECAJNgKoAiAFIAsgBSgCAEEDcUEDRhsoAighBSAEQQE2ApgFIARCADcDkAUgBCAFNgKMBSAEQfgEakEQECYhBSAEKAL4BCAFQQR0aiIFIAcpAgA3AgAgBSAHKQIINwIIIAMhBQwECyAIIAZBAWoiBjYCBAwBCwsCQANAIA8gBkECdGooAgAiBUUNAQJAAkAgBSgCECIQKAKkAUEATg0AIAUgBUEwayILIAUoAgBBA3EiEUECRhsoAigoAhAiEigCqAINACASKAL0ASAQKAKsASAFQTBBACARQQNHG2ooAigoAhAoAvQBakYNAQsgCCAGQQFqIgY2AggMAQsLIARBtARqIAUQrAgEQCAEIAQpA4AFNwO4AyAEIAQpA/gENwOwAyAEQbADaiAEKAKABUEBaxAZIQUCQAJAIAQoAogFIgYOAgEPAAsgBCAEKAL4BCAFQQR0aiIFKQIINwOoAyAEIAUpAgA3A6ADIARBoANqIAYRAQALIARB+ARqIAdBEBC+AUF/IQUgBCgCgAUiBkUNAyAEIAQpA4AFNwOYAyAEIAQpA/gENwOQAyAEKAL4BCAEQZADaiAGQQFrEBlBBHRqIgUgBSgCDEEBazYCDCADIQUMAwsgCCAIKAIIQQFqNgIIIAUgCyAFKAIAQQNxQQJGGygCKCgCECAJNgKoAiAFIAsgBSgCAEEDcUECRhsoAighBSAEQQE2ApgFIARCADcDkAUgBCAFNgKMBSAEQfgEakEQECYhBSAEKAL4BCAFQQR0aiIFIAcpAgA3AgAgBSAHKQIINwIIIAMhBQwCCyAEQfgEaiAHQRAQvgEgBCgCmAUhBSAEKAKABSIGRQ0BIAQgBCkDgAU3A4gDIAQgBCkD+AQ3A4ADIAQoAvgEIARBgANqIAZBAWsQGUEEdGoiBiAGKAIMIAVqNgIMIAMhBQwBCwsgBEH4BGoiBUEQEDEgBRA0IAkgAzYCBCADQQBIDQMgCSAJNgIMIA0gCkECdGogCTYCACAKQQFqIQogDCgCEAtBuAFqIQUMAQsLQQgQUiIHIAo2AgQgByANNgIAQQAhBQNAIAUgCkYEQCAKQQF2IQUDQCAFQX9GBEACQCANQQRrIRBBACEMIAohCQNAIAlBAkkiDw0KIA0oAgAiA0F/NgIIIA0gECAJQQJ0aiIFKAIAIgY2AgAgBkEANgIIIAUgAzYCACAHIAlBAWsiCTYCBCAHQQAQqwggAygCAEEAQQAQqggiCEUEQEEBIQwMCwsgCCgCECgCpAFBAE4NASAIIAhBMGoiAyAIKAIAQQNxQQNGGygCKBDOBCEFIAggCEEwayILIAgoAgBBA3FBAkYbKAIoEM4EIQYgCCgCECgCrAEgCCADIAgoAgBBA3EiEUEDRhsoAigoAhAoAvQBaiEDIAggCyARQQJGGygCKCgCECgC9AEhCwJAAn8gBSgCCEF/RgRAIAMgC0YNAiALIANrIQsgBQwBCyADIAtGDQEgAyALayELIAYLKAIAQQAgCxCpCAsgBEG0BGogCBCsCA0JA0AgBSIDKAIMIgUEQCADIAVHDQELCwNAIAYiBSgCDCIGBEAgBSAGRw0BCwsCQCADIAVHBEAgBSgCCCEGAn8gAygCCEF/RgRAIAZBf0cEQCAFIQZBAAwCC0G3qQNBx7kBQbkDQcrjABAAAAsgBkF/RgRAIAMhBkEADAELIAMgBSAFKAIEIAMoAgRIGyIGKAIIQX9GCyAFIAY2AgwgAyAGNgIMIAYgBSgCBCADKAIEajYCBEUNAUGDowNBx7kBQcEDQcrjABAAAAsgAyIGRQ0KCyAHIAYoAggQqwgMAAsACwUgByAFEKsIIAVBAWshBQwBCwtB96YDQce5AUGrBEHaMBAAAAUgDSAFQQJ0aigCACAFNgIIIAVBAWohBQwBCwALAAsLCyAJEBhBAiEMQQAhDyANIApBAnRqQQA2AgBBACEHDAELQQIhDAsgBxAYQQAhBQJAAkACQAJAAkADQCAFIApGBEACQCANEBggD0UNBiAEKALABCAEKALYBEEBa0YEQCAEKAK0BCgCECgCwAEhAyAEQQA2AogFIARCADcDgAUgBEIANwP4BCADKAIQQoCAgIAQNwOoAiAEQgA3A5gFIARCgICAgBA3A5AFIAQgAzYCjAUgBEH4BGpBFBAmIQMgBCgC+AQgA0EUbGoiAyAEKQKMBTcCACADIAQoApwFNgIQIAMgBCkClAU3AgggBEGMBWohBQNAIAQoAoAFIgMEQCAEIAQpA4AFNwP4AiAEIAQpA/gENwPwAiAEKAL4BCAEQfACaiADQQFrEBlBFGxqIgMoAgwhBiADKAIAKAIQIgooAqACIQkCQANAIAkgBkECdGooAgAiB0UEQCADKAIQIQYgCigCmAIhCQNAIAkgBkECdGooAgAiB0UNAyADIAZBAWoiBjYCECAHIAMoAgRGDQALIAdBMEEAIAcoAgBBA3FBA0cbaigCKCIGKAIQIgogBzYCqAIgCiADKAIIIgM2AqwCIARCADcDmAUgBCADNgKUBSAEIAc2ApAFIAQgBjYCjAUgBEH4BGpBFBAmIQMgBCgC+AQgA0EUbGoiAyAFKQIANwIAIAMgBSgCEDYCECADIAUpAgg3AggMBAsgAyAGQQFqIgY2AgwgByADKAIERg0ACyAHQVBBACAHKAIAQQNxQQJHG2ooAigiBigCECIKIAc2AqgCIAogAygCCCIDNgKsAiAEQgA3A5gFIAQgAzYClAUgBCAHNgKQBSAEIAY2AowFIARB+ARqQRQQJiEDIAQoAvgEIANBFGxqIgMgBSkCADcCACADIAUoAhA2AhAgAyAFKQIINwIIDAILIAogAygCCCIGNgKwAiAEIAQpA4AFNwPoAiAEIAQpA/gENwPgAiAEQeACaiAEKAKABUEBaxAZIQMCQAJAIAQoAogFIgcOAgEOAAsgBCAEKAL4BCADQRRsaiIDKQIINwPQAiAEIAMoAhA2AtgCIAQgAykCADcDyAIgBEHIAmogBxEBAAsgBEH4BGogBUEUEL4BIAQoAoAFIgNFDQEgBCAEKQOABTcDwAIgBCAEKQP4BDcDuAIgBCgC+AQgBEG4AmogA0EBaxAZQRRsaiAGQQFqNgIIDAELCyAEQfgEaiIFQRQQMSAFEDQgBCgCtAQoAhAoAsABIQMgBEEANgKIBSAEQgA3A4AFIARCADcD+AQgBEEANgKYBSAEQgA3A5AFIAQgAzYCjAUgBUEQECYhAyAEKAL4BCADQQR0aiIDIAQpAowFNwIAIAMgBCkClAU3AgggBEGMBWohCgJAAkADQCAEKAKABSIDBEAgBCAEKQOABTcDsAIgBCAEKQP4BDcDqAIgBCgC+AQgBEGoAmogA0EBaxAZQQR0aiIDKAIIIQUgAygCACgCECIJKAKgAiEHAkADQCAHIAVBAnRqKAIAIgZFBEAgAygCBCEHIAMoAgwhBSAJKAKYAiEJA0AgCSAFQQJ0aigCACIGRQ0DIAMgBUEBaiIFNgIMIAYgB0YNAAsgBkEwQQAgBigCAEEDcUEDRxtqKAIoIQMgBEIANwKUBSAEIAY2ApAFIAQgAzYCjAUgBEH4BGpBEBAmIQMgBCgC+AQgA0EEdGoiAyAKKQIANwIAIAMgCikCCDcCCAwECyADIAVBAWoiBTYCCCAGIAMoAgRGDQALIAZBUEEAIAYoAgBBA3FBAkcbaigCKCEDIARCADcClAUgBCAGNgKQBSAEIAM2AowFIARB+ARqQRAQJiEDIAQoAvgEIANBBHRqIgMgCikCADcCACADIAopAgg3AggMAgsgBwRAIAcgB0EwQQAgBygCAEEDcSIFQQNHG2ooAigiCCgCECIDKAKoAkYEf0EBBSAHQVBBACAFQQJHG2ooAigiCCgCECEDQX8LIQkgAygCyAEhDEEAIQVBACEGA0ACQCAMIAZBAnRqKAIAIgtFBEAgAygCwAEhA0EAIQYDQCADIAZBAnRqKAIAIgxFDQIgDCAIIAkQ/g4iDEEASCAFIAUgDGoiBUpHDQcgBkEBaiEGDAALAAsgCyAIIAkQ/g4iC0EASCAFIAUgC2oiBUpHDQYgBkEBaiEGDAELCyAHKAIQIAU2AqABCyAEIAQpA4AFNwOgAiAEIAQpA/gENwOYAiAEQZgCaiAEKAKABUEBaxAZIQMCQAJAIAQoAogFIgUOAgEQAAsgBCAEKAL4BCADQQR0aiIDKQIINwOQAiAEIAMpAgA3A4gCIARBiAJqIAURAQALIARB+ARqIApBEBC+AQwBCwsgBEH4BGoiA0EQEDEgAxA0IAJBAEwNCEGI9ggoAgAhDSAEQYwFaiEKQQAhAwJAA0AgBCgC0AQiByEGQQAhBUEAIQkCQANAIAQoAsAEIAZLBEAgBCAOKQIINwPgASAEIA4pAgA3A9gBIAQoArgEIARB2AFqIAYQGUECdGooAgAiBigCECgCoAEiCEEASARAAn8gBQRAIAYgBSAFKAIQKAKgASAIShsMAQsgBCAOKQIINwPQASAEIA4pAgA3A8gBIAQoArgEIARByAFqIAQoAtAEEBlBAnRqKAIACyEFIAlBAWoiCSAEKALcBE4NAwsgBCAEKALQBEEBaiIGNgLQBAwBCwtBACEGIAdFDQADQCAEIAY2AtAEIAYgB08NASAEIA4pAgg3A4ACIAQgDikCADcD+AEgBCgCuAQgBEH4AWogBhAZQQJ0aigCACIGKAIQKAKgASIIQQBIBEACfyAFBEAgBiAFIAUoAhAoAqABIAhKGwwBCyAEIA4pAgg3A/ABIAQgDikCADcD6AEgBCgCuAQgBEHoAWogBCgC0AQQGUECdGooAgALIQUgCUEBaiIJIAQoAtwETg0CCyAEKALQBEEBaiEGDAALAAsgBUUNAQJAIAUQ/Q4iByAHQTBrIgYgBygCAEEDcSIJQQJGGygCKCgCECgC9AEgByAHQTBqIgggCUEDRhsoAigoAhAoAvQBIAcoAhAoAqwBamsiCUEATA0AAkAgBUEwQQAgBSgCAEEDcSILQQNHG2ooAigiECgCECIMKAKkAiAMKAKcAmpBAUYNACAFQVBBACALQQJHG2ooAigiCygCECIPKAKkAiAPKAKcAmpBAUYEQCALQQAgCWsQugMMAgsgDCgCsAIgDygCsAJIDQAgC0EAIAlrELoDDAELIBAgCRC6AwsgByAIIAcoAgBBA3EiCUEDRhsoAiggByAGIAlBAkYbKAIoIAUoAhAoAqABIgtBARD8DiIJIAcgBiAHKAIAQQNxIgxBAkYbKAIoIAcgCCAMQQNGGygCKCALQQAQ/A5HDQkgCSgCECgCrAIhDCAJIAcgBiAHKAIAQQNxQQJGGygCKBD7DiAJIAcgCCAHKAIAQQNxQQNGGygCKBD7DiAHKAIQIgZBACALazYCoAEgBSgCECIIQQA2AqABIAYgCCgCpAEiBjYCpAECQCAGQQBOBEAgBCAHNgLMBCAEIA4pAgg3A8ABIAQgDikCADcDuAEgBEG4AWogBhAZIQYCQAJAAkAgBCgCyAQiCA4CAgABCyAEKAK4BCAGQQJ0aigCABAYDAELIAQoArgEIAZBAnRqKAIAIAgRAQALIAQoArgEIAZBAnRqIAQoAswENgIAIAUoAhBBfzYCpAFBACEGIAVBMEEAIAUoAgBBA3FBA0cbaigCKCIPKAIQIgggCCgCpAJBAWsiCzYCpAIgCCgCoAIhCANAAkAgBiALSw0AIAggBkECdGooAgAgBUYNACAGQQFqIQYMAQsLIAggBkECdGogCCALQQJ0IgtqKAIANgIAQQAhBiAPKAIQKAKgAiALakEANgIAIAVBUEEAIAUoAgBBA3FBAkcbaigCKCIPKAIQIgggCCgCnAJBAWsiCzYCnAIgCCgCmAIhCANAAkAgBiALSw0AIAggBkECdGooAgAgBUYNACAGQQFqIQYMAQsLIAggBkECdGogCCALQQJ0IgVqKAIANgIAIA8oAhAoApgCIAVqQQA2AgAgB0EwQQAgBygCAEEDcUEDRxtqKAIoIgYoAhAiBSAFKAKkAiIIQQFqNgKkAiAFKAKgAiAIQQJ0aiAHNgIAIAYoAhAiBSgCoAIgBSgCpAJBAnRqQQA2AgAgB0FQQQAgBygCAEEDcUECRxtqKAIoIgYoAhAiBSAFKAKcAiIIQQFqNgKcAiAFKAKYAiAIQQJ0aiAHNgIAIAYoAhAiBSgCmAIgBSgCnAJBAnRqQQA2AgAgCSgCECIFKAKsAiAMRg0BIAUoAqgCIQYgBEEANgKIBSAEQgA3A4AFIARCADcD+AQgBSAMNgKsAiAEQgA3A5gFIAQgDDYClAUgBCAGNgKQBSAEIAk2AowFIARB+ARqQRQQJiEFIAQoAvgEIAVBFGxqIgUgCikCADcCACAFIAooAhA2AhAgBSAKKQIINwIIA0ACQAJAIAQoAoAFIgUEQCAEIAQpA4AFNwOwASAEIAQpA/gENwOoASAEKAL4BCAEQagBaiAFQQFrEBlBFGxqIgUoAgwhBiAFKAIAKAIQIgcoAqACIQgCQAJAA0AgCCAGQQJ0aigCACIJRQRAIAUoAhAhBiAHKAKYAiEIA0AgCCAGQQJ0aigCACIJRQ0EIAUgBkEBaiIGNgIQIAkgBSgCBEYNAAsgCUEwQQAgCSgCAEEDcUEDRxtqKAIoIggoAhAiBigCqAIgCUYNAiAFKAIIIQcMBgsgBSAGQQFqIgY2AgwgCSAFKAIERg0ACyAJIAlBUEEAIAkoAgBBA3FBAkcbaigCKCIIKAIQIgYoAqgCRwRAIAUoAgghBwwECyAFKAIIIgcgBigCrAJHDQMgBSAGKAKwAkEBajYCCAwFCyAFKAIIIgcgBigCrAJHDQMgBSAGKAKwAkEBajYCCAwECyAHIAUoAggiBjYCsAIgBCAEKQOABTcDoAEgBCAEKQP4BDcDmAEgBEGYAWogBCgCgAVBAWsQGSEFAkACQAJAIAQoAogFIgcOAgIAAQtBsIMEQcIAQQEgDRA6GhA7AAsgBCAEKAL4BCAFQRRsaiIFKQIINwOIASAEIAUoAhA2ApABIAQgBSkCADcDgAEgBEGAAWogBxEBAAsgBEH4BGogCkEUEL4BIAQoAoAFIgVFDQMgBCAEKQOABTcDeCAEIAQpA/gENwNwIAQoAvgEIARB8ABqIAVBAWsQGUEUbGogBkEBajYCCAwDCyAEQfgEaiIFQRQQMSAFEDQMBAsgBiAHNgKsAiAGIAk2AqgCIARCADcDmAUgBCAHNgKUBSAEIAk2ApAFIAQgCDYCjAUgBEH4BGpBFBAmIQUgBCgC+AQgBUEUbGoiBSAKKQIANwIAIAUgCigCEDYCECAFIAopAgg3AggMAQsgBiAHNgKsAiAGIAk2AqgCIARCADcDmAUgBCAHNgKUBSAEIAk2ApAFIAQgCDYCjAUgBEH4BGpBFBAmIQUgBCgC+AQgBUEUbGoiBSAKKQIANwIAIAUgCigCEDYCECAFIAopAgg3AggMAAsAC0GxmgNBx7kBQfUAQZUwEAAACwJAQezaCi0AAEUgA0EBaiIDQeQAcHINACADQegHcCIFQeQARgRAIARB4ARqIA0QiwEaCyAEIAM2AmAgDUH3ygMgBEHgAGoQIBogBQ0AQQogDRCnARoLIAIgA0cNAAsgAiEDC0EAIQUCQAJAAkACQCABQQFrDgIAAQILIARBtARqEPkOIgBBAEgNAkEBIQdBACEKIABBAWpBBBAaIQEgBCgCtARB56EBECciAkUNBiACQc7kABBjIgZFBEBBAiEHIAJBmRMQY0UNBwsgBCgCtAQoAhBBwAFqIQUgBkEBcyEKA0AgBSgCACICBEACQCACKAIQIgItAKwBDQAgCiACKALEAUEAR3JFBEAgAkEANgL0AQsgBiACKALMAXINACACIAA2AvQBCyACQbgBaiEFDAEFIAchCgwICwALAAsDQCAFIAQoAsAET0UEQCAEIA4pAgg3A1ggBCAOKQIANwNQAkAgBCgCuAQgBEHQAGogBRAZQQJ0aigCACIAKAIQKAKgAQ0AIAAQ/Q4iAUUNACABQVBBACABKAIAQQNxIgJBAkcbaigCKCgCECgC9AEgAUEwQQAgAkEDRxtqKAIoKAIQKAL0ASABKAIQKAKsAWprIgFBAkgNACABQQF2IQEgAEEwQQAgACgCAEEDcSICQQNHG2ooAigiBigCECgCsAIgAEFQQQAgAkECRxtqKAIoIgAoAhAoArACSARAIAYgARC6AwwBCyAAQQAgAWsQugMLIAVBAWohBQwBCwsgBEG0BGogBCgCtAQQzQQMCAsgBEG0BGoiABD5DhogACAEKAK0BBDNBAwHC0HdmANBx7kBQY4GQdyhARAAAAtBn40EQQAQNxAvAAtBn40EQQAQNxAvAAtB740DQce5AUH0BEGMnwEQAAALBSANIAVBAnRqKAIAEBggBUEBaiEFDAELCyAEQgA3A4gFIARCADcDgAUgBEIANwP4BCAEQfgEaiAEKALYBEEEEPwBIAQoArQEKAIQQcABaiEFA0AgBSgCACICBEAgBCACNgKMBSAEQfgEakEEECYhBSAEKAL4BCAFQQJ0aiAEKAKMBTYCACACKAIQQbgBaiEFDAELCyAEQfgEakGeA0GfAyAKQQFKG0EEEKIDQQAhBgNAIAQoAoAFIgUgBk0EQEEAIQwDQCAFIAxNBEBBACEGA0AgBSAGTUUEQCAEIAQpA4AFNwNIIAQgBCkD+AQ3A0AgBEFAayAGEBkhAAJAAkACQCAEKAKIBSICDgICAAELIAQoAvgEIABBAnRqKAIAEBgMAQsgBCgC+AQgAEECdGooAgAgAhEBAAsgBkEBaiEGIAQoAoAFIQUMAQsLIARB+ARqIgBBBBAxIAAQNCABEBggBEG0BGoQ+A4MBAsgBCAEKQOABTcDOCAEIAQpA/gENwMwIAQoAvgEIARBMGogDBAZQQJ0aigCACIOKAIQIgItAKwBRQRAIAIoAsABIQdBACEJQQAhBkEAIQgDQCAHIAhBAnRqKAIAIgUEQCAGIAUoAhAiCygCrAEgBUEwQQAgBSgCAEEDcUEDRxtqKAIoKAIQKAL0AWoiBSAFIAZIGyEGIAhBAWohCCALKAKcASAJaiEJDAEFAkAgAigCyAEhD0EAIQsgACEHQQAhCANAIA8gCEECdGooAgAiBQRAIAcgBUFQQQAgBSgCAEEDcUECRxtqKAIoKAIQKAL0ASAFKAIQIgUoAqwBayIQIAcgEEgbIQcgCEEBaiEIIAUoApwBIAtqIQsMAQUgCgRAIAkgC0cNAyACIAYgByAKQQFGGzYC9AEMAwsgCSALRw0CIAcgBiAGIAdIGyEHIAYhBQNAIAUgB0YEQCABIAIoAvQBQQJ0aiIFIAUoAgBBAWs2AgAgASAGQQJ0aiIFIAUoAgBBAWo2AgAgAiAGNgL0AQUgBUEBaiIFIAYgASAFQQJ0aigCACABIAZBAnRqKAIASBshBgwBCwsLCwsLCyACKAKYAhAYIA4oAhAoAqACEBggDigCEEEANgKwAQsgDEEBaiEMIAQoAoAFIQUMAAsACyAEIAQpA4AFNwMoIAQgBCkD+AQ3AyAgBCgC+AQgBEEgaiAGEBlBAnRqKAIAKAIQIgItAKwBRQRAIAEgAigC9AFBAnRqIgIgAigCAEEBajYCAAsgBkEBaiEGDAALAAtBACEMQezaCi0AAEUNAyADQeQATgRAQQogDRCnARoLIAQpAtQEIRQgBBCOATkDECAEIAM2AgwgBCAUQiCJNwIEIAQgBEHgBGo2AgAgDUHqyQQgBBAzDAMLQeDqA0EAEDcgBEG0BGogABDNBEECIQwMAgsgBEG0BGogABDNBEEAIQwMAQsgBEG0BGogABDNBAsgBEGgBWokACAMDwtBACEFIAcoAhAiB0EANgKwASAHKALIASEKA0AgCiAFQQJ0aigCAARAIAVBAWohBSAGQQFqIQYMAQUgB0G4AWohBSAJQQFqIQkMAwsACwALC0GwgwRBwgBBAUGI9ggoAgAQOhoQOwAL5wQBA38jAEGAAWsiBSQAIAUgATYCfCAFIAIpAgg3A2AgBSACKQIANwNYIAVB2ABqIAVB/ABqEIcHIQYgBSgCfCEBAkAgBgRAIAEgA0cNASACKAAIIQZBACEAA0AgBCgACCAASwRAIAQoAgAhAyAFIAQpAgg3AzAgBSAEKQIANwMoQQAhASAGIAMgBUEoaiAAEBlBAnRqKAIAIgMoAAhGBEADQCABIAZGDQUgAygCACEHIAUgAykCCDcDICAFIAMpAgA3AxggBSAHIAVBGGogARAZQQJ0aigCADYCbCAFIAIpAgg3AxAgBSACKQIANwMIIAFBAWohASAFQQhqIAVB7ABqEIcHDQALCyAAQQFqIQAMAQsLEIEPIQAgBUFAayACKQIINwMAIAUgAikCADcDOCAFQewAaiAFQThqEIsLIABBADYCFCAAIAUpAmw3AgAgACAFKQJ0NwIIIAAgAigCEDYCECAEIAA2AhQgBEEEECYhACAEKAIAIABBAnRqIAQoAhQ2AgAMAQsgAiABNgIUIAJBBBAmIQEgAigCACABQQJ0aiACKAIUNgIAIAAgBSgCfBAsIQEDQCABBEAgACABQVBBACABKAIAQQNxQQJHG2ooAiggAiADIAQQgA8gACABEDAhAQwBCwsgAigACCIARQ0AIAJBFGohASAFIAIpAgg3A1AgBSACKQIANwNIIAVByABqIABBAWsQGSEAAkACQAJAIAIoAhAiAw4CAgABCyACKAIAIABBAnRqKAIAEBgMAQsgAigCACAAQQJ0aigCACADEQEACyACIAFBBBC+AQsgBUGAAWokAAsIAEEBQRgQGgu/EgMLfwl8An4jAEHQAmsiBSQAIAEoAgAiBiAGQTBrIgkgBigCAEEDcSIHQQJGGygCKCEKIAZBMEEAIAdBA0cbaigCKCgCECIIKwAQIRAgBigCECIHKwAQIREgBSAHKwAYIAgrABigIhM5A5gCIAUgBSkDmAI3A6gCIAUgESAQoCIROQOQAiAFIAUpA5ACNwOgAiAKKAIQIggrABAhECAHKwA4IRIgBSAHKwBAIAgrABigIhQ5A8gCIAUgEiAQoCIQOQPAAiAFIAUpA8gCNwO4AiAFIAUpA8ACNwOwAgJAAkACQCACQQFHBEBBjNsKLQAAQQFHDQELIANBBEcNASAFQbjECCkCACIZNwPgASAFQbDECCkCACIaNwPYASAFIBo3A5gBIAUgGTcDoAEgBUGoxAgpAgAiGTcD0AEgBSAZNwOQASAAEBwhAwNAIAMEQCAFEIEPIgE2AuQBIAVB0AFqQQQQJiECIAUoAtABIAJBAnRqIAUoAuQBNgIAIAAgAyABIAMgBUGQAWoQgA8gACADEB0hAwwBBUEAIQMDQCAFKALYASADSwRAIAUgBSkD2AE3AxAgBSAFKQPQATcDCCAFQQhqIAMQGSEBAkACQAJAIAUoAuABIgIOAgIAAQsgBSgC0AEgAUECdGooAgAQGAwBCyAFKALQASABQQJ0aigCACACEQEACyADQQFqIQMMAQsLIAVB0AFqIgFBBBAxIAZBKGohCCABEDRBACEKQQAhAQNAAkACQCAFKAKYASIDIApLBEAgBUFAayAFKQOYATcDACAFIAUpA5ABNwM4IAUoApABIAVBOGogChAZQQJ0aigCACIHKAAIIgJBA0kNAiABBEAgASgACCACTQ0DC0EAIQMgCEFQQQAgBigCAEEDcSILQQJHG2ooAgAhDSAIQTBBACALQQNHG2ooAgAhCwNAIAIgA0YEQCACIQMMAwsgBygCACAFIAcpAgg3AzAgBSAHKQIANwMoIAVBKGogAyACIAMbQQFrEBlBAnRqKAIAIQwgBygCACEOIAUgBykCCDcDICAFIAcpAgA3AxggBUEYaiADEBkhDyALIAxGBEAgDiAPQQJ0aigCACANRg0DCyADQQFqIQMMAAsACwJAAkAgAQRAQQAhA0QAAAAAAAAAACERRAAAAAAAAAAAIRBEAAAAAAAAAAAhEwwBC0EAIQEDQCABIANPBEAgBUGQAWoiAUEEEDEgARA0IAAoAhAiACsDGCAAKwMooEQAAAAAAADgP6IhEiAAKwMQIAArAyCgRAAAAAAAAOA/oiEVDAMFIAUgBSkDmAE3A1AgBSAFKQOQATcDSCAFQcgAaiABEBkhAgJAAkACQCAFKAKgASIDDgICAAELIAUoApABIAJBAnRqKAIAEBgMAQsgBSgCkAEgAkECdGooAgAgAxEBAAsgAUEBaiEBIAUoApgBIQMMAQsACwALA0AgASgACCADSwRAIAEoAgAhACAFIAEpAgg3A2AgBSABKQIANwNYIBFEAAAAAAAA8D+gIREgECAAIAVB2ABqIAMQGUECdGooAgAoAhAiACsDGKAhECATIAArAxCgIRMgA0EBaiEDDAELC0EAIQMDfCAFKAKYASADTQR8IAVBkAFqIgBBBBAxIBAgEaMhEiATIBGjIRUgABA0IAUrA5gCIRMgBSsDyAIhFCAFKwPAAiEQIAUrA5ACBSAFIAUpA5gBNwNwIAUgBSkDkAE3A2ggBUHoAGogAxAZIQACQAJAAkAgBSgCoAEiAQ4CAgABCyAFKAKQASAAQQJ0aigCABAYDAELIAUoApABIABBAnRqKAIAIAERAQALIANBAWohAwwBCwshEQsgFSAQIBGgRAAAAAAAAOA/oiIVoSIWIBIgFCAToEQAAAAAAADgP6IiF6EiGBBHIhJEAAAAAAAAAABhDQYgBSAXIBggEqMgECARoSIQIBCiIBQgE6EiECAQoqCfRAAAAAAAABRAoyIQoqEiETkDuAIgBSAVIBYgEqMgEKKhIhA5A6ACIAUgEDkDsAIgBSAROQOoAgwGCyAHIAEgAiADSxshAQsgCkEBaiEKDAALAAsACwALAkACfCARIBChIhIgEqIgEyAUoSISIBKioESN7bWg98awPmMEQCAFIAUpA5ACNwOgAiAFIAUpA5gCNwOoAiAFIAUpA8ACNwOwAiAFIAUpA8gCNwO4AkQAAAAAAAAAACEQRAAAAAAAAAAADAELIAJBAWsiBkEASA0BIAUgFCAQIBGhIhUgACgCSCgCECgC+AEiACAGbEECbbciFqIgEiAVEEciFKMiF6A5A7gCIAUgECASIBaiIBSjIhCgOQOwAiAFIBMgF6A5A6gCIAUgESAQoDkDoAIgFUEAIABrtyIRoiAUoyEQIBIgEaIgFKMLIRFBACEGIANBBkchCANAIAIgBkYNA0EAIQMCQCAKIAEgBkECdGooAgAiACAAQTBrIgcgACgCAEEDcUECRhsoAihGBEADQCADQQRGDQIgA0EEdCIJIAVB0AFqaiILIAVBkAJqIAlqIgkpAwg3AwggCyAJKQMANwMAIANBAWohAwwACwALA0AgA0EERg0BQQAgA2tBBHQgBWoiCSAFQZACaiADQQR0aiILKQMINwOIAiAJIAspAwA3A4ACIANBAWohAwwACwALAkAgCEUEQCAFIAUpA9ABNwOQASAFKQPYASEZIAUgBSkD4AE3A6ABIAUgGTcDmAEgBSAFKQPoATcDqAEgBSAFKQPwATcDsAEgBSAFKQP4ATcDuAEgBSAFKQOIAjcDyAEgBSAFKQOAAjcDwAEgBUEENgKEASAFIAVBkAFqNgKAASAFIAUpAoABNwN4IAVB+ABqIAVBiAFqEI4EIAAgACAHIAAoAgBBA3FBAkYbKAIoIAUoAogBIAUoAowBIAQQlAEMAQsgACAAIAcgACgCAEEDcUECRhsoAiggBUHQAWpBBCAEEJQBCyAAEJoDIAUgECAFKwOoAqA5A6gCIAUgESAFKwOgAqA5A6ACIAUgESAFKwOwAqA5A7ACIAUgECAFKwO4AqA5A7gCIAZBAWohBgwACwALQZjMAUHXuwFB7wdBqTAQAAALIAYgBiAJIAYoAgBBA3FBAkYbKAIoIAVBkAJqQQQgBBCUASAGEJoDCyAFQdACaiQAC/UCAgV8BX8gBCABuKIhCANAIAMgCkEDaiINSwRAIAIgDUEEdGohDkQAAAAAAAAAACEHIAIgCkEEdGohCwNAIAcgCGVFBEAgDSEKDAMLIAcgCKMiBCAEIAQgDisDCCALKwMoIgWhoiAFoCAEIAUgCysDGCIFoaIgBaAiBqGiIAagIAQgBiAEIAUgCysDCCIFoaIgBaAiBaGiIAWgIgWhoiAFoCEFIAQgBCAEIA4rAwAgCysDICIGoaIgBqAgBCAGIAsrAxAiBqGiIAagIgmhoiAJoCAEIAkgBCAGIAsrAwAiBKGiIASgIgShoiAEoCIEoaIgBKAhBEEAIQoDQCABIApGBEAgB0QAAAAAAADwP6AhBwwCBQJAIAUgACAKQQV0aiIMKwMYRC1DHOviNho/oGVFDQAgBSAMKwMIRC1DHOviNhq/oGZFDQAgDCAMKwMAIAQQKTkDACAMIAwrAxAgBBAjOQMQCyAKQQFqIQoMAQsACwALAAsLC4wBAgF8AX8CQCABIAJlIAAgA2ZyBHxEAAAAAAAAAAAFIAAgAmVFIAEgA2ZFckUEQCABIAChDwsgACACZiIFRSABIANlRXJFBEAgAyACoQ8LIAVFIAAgA2VFckUEQCADIAChDwsgASACZkUgASADZUVyDQEgASACoQsPC0Gx8QJB17sBQe0EQdrcABAAAAvSIQIRfwh8IwBB0AJrIgQkACABQQA2AgBBzP0KQcz9CigCAEEBajYCAEHQ/QogACgCUCIMQdD9CigCAGo2AgAgAEHYAGohAwJAAkACQANAIAMoAgAiDkUNASAOKAIQIgdB+ABqIQMgBy0AcA0ACyAAKAJUIQhBACEDAkADQCADIAxGBEACQCAIKwMAIAgrAxBkDQAgCCsDCCAIKwMYZA0AQQEgCiAKQQFNG0EBayERQYj2CCgCACEPQQAhAwwDCwUCQCAIIANBBXRqIgcrAwggBysDGKGZRHsUrkfheoQ/Yw0AIAcrAwAgBysDEKGZRHsUrkfheoQ/Yw0AIAggCkEFdGoiBSAHKQMANwMAIAUgBykDGDcDGCAFIAcpAxA3AxAgBSAHKQMINwMIIApBAWohCgsgA0EBaiEDDAELC0HwtQRBABA3IAAQrQgMAwsDQCADIBFHBEACQCAIIANBAWoiB0EFdGoiBSsDACIWIAUrAxAiFGRFBEAgBSsDCCIXIAUrAxgiGGRFDQELIAQgBzYC0AFBwbUEIARB0AFqEDcgABCtCEEAIQYMBQsCQAJAAkAgCCADQQV0aiIGKwMAIhUgFGQiCSAGKwMQIhkgFmMiEmogBisDGCIaIBdjIg1qIAYrAwgiGyAYZCILaiIQRQ0AQezaCi0AAEUNACAEIAc2AuQBIAQgAzYC4AEgD0GRlQQgBEHgAWoQIBogABCtCAwBCyAQRQ0BCwJAIBIEQCAGKwMQIRQgBiAFKwMAOQMQIAUgFDkDAAwBCyAUIBVjBEAgBisDACEUIAYgBSsDEDkDACAFIBQ5AxBBACEJDAELIBcgGmQEQCAGKwMYIRQgBiAFKwMIOQMYIAUgFDkDCEEAIQlBACENDAELQQAhCUEAIQ1BACELIBggG2NFDQAgBisDCCEUIAYgBSsDGDkDCCAFIBQ5AxgLIBBBAWshEEEAIQMDQCADIBBHBEACQCAJQQFxBEAgBSAGKwMAIAUrAxCgRAAAAAAAAOA/okQAAAAAAADgP6AiFDkDECAGIBQ5AwAMAQsgDUEBRgRAIAUgBisDGCAFKwMIoEQAAAAAAADgP6JEAAAAAAAA4D+gIhQ5AwggBiAUOQMYQQAhDQwBC0EAIQ0gCwRAIAUgBisDCCAFKwMYoEQAAAAAAADgP6JEAAAAAAAA4D+gIhQ5AxggBiAUOQMIC0EAIQsLIANBAWohA0EAIQkMAQsLIAUrAxAhFCAFKwMAIRYgBisDECEZIAYrAwAhFQsgByEDIBUgGSAWIBQQhA8iFEQAAAAAAAAAAGRFIAYrAwggBisDGCAFKwMIIAUrAxgQhA8iFUQAAAAAAAAAAGRFcg0BAkAgFCAVYwRAIAYrAxAiFCAGKwMAIhahIAUrAxAiFSAFKwMAIhehZARAIBQgFWNFBEAgBiAVOQMADAMLIAYgFzkDEAwCCyAUIBVjBEAgBSAUOQMADAILIAUgFjkDEAwBCyAGKwMYIhQgBisDCCIWoSAFKwMYIhUgBSsDCCIXoWQEQCAUIBVjBEAgBiAXOQMYDAILIAYgFTkDCAwBCyAUIBVjBEAgBSAUOQMIDAELIAUgFjkDGAsMAQsLIAgrAxAhFAJAAkAgACsDACIWIAgrAwAiF2MEQCAIKwMIIRUMAQsgCCsDCCEVIBQgFmMNACAAKwMIIhggFWMNACAYIAgrAxhkRQ0BCyAAIBYgFxAjIBQQKTkDACAIKwMYIRQgACAAKwMIIBUQIyAUECk5AwgLIAggCkEFdGoiA0EYaysDACEUAkAgACsDKCIVIANBIGsrAwAiF2MgFSADQRBrKwMAIhhkciAAKwMwIhYgFGNyRQRAIBYgA0EIaysDAGRFDQELIAAgFSAXECMgGBApOQMoIANBCGsrAwAhFSAAIBYgFBAjIBUQKTkDMAtBACEGIAxBA3RBEBAaIQsgDEECSQ0BIAgrAwggCCsDKGRFDQEDQCAGIAxGBEBBASEGDAMFIAggBkEFdGoiAysDGCEUIAMgAysDCJo5AxggAyAUmjkDCCAGQQFqIQYMAQsACwALQf6yBEEAEDcMAQsgDiAOQTBqIhEgDigCAEEDcSIDQQNGGygCKCAOIA5BMGsiECADQQJGGygCKEcEQCALQRhqIRIgCEEYayETQQAhCkEAIQUDQAJAIAwgBSIDRgRAIAhBOGshCSAMIQMMAQtBACENQQAhCSASIApBBHRqAn8gAwRAQX9BASAIIANBBXQiB2orAwggByATaisDAGQbIQkLIAwgA0EBaiIFSwRAQQFBfyAIIAVBBXRqKwMIIAggA0EFdGorAwhkGyENCwJAIAkgDUcEQCAIIANBBXRqIQMgDUF/RyAJQQFHcQ0BIAsgCkEEdGoiByADKwMAIhQ5AwAgAysDGCEVIAcgFDkDECAHIBU5AwggA0EIagwCCwJAAkAgCUEBag4CBQABCyALIApBBHRqIgcgCCADQQV0aiIDKwMAIhQ5AwAgAysDGCEVIAcgFDkDECAHIBU5AwggA0EIagwCCyALEBggBEH6AjYCyAEgBCAJNgLEASAEIAk2AsABQejEBCAEQcABahA3QQAhBgwFCyALIApBBHRqIgcgAysDECIUOQMAIAMrAwghFSAHIBQ5AxAgByAVOQMIIANBGGoLKwMAOQMAIApBAmohCgwBCwsDQAJ/AkAgAwRAIANBAWshB0EAIQ1BACEFIAMgDEkEQEF/QQEgCCAHQQV0aisDCCAIIANBBXRqKwMIZBshBQsgBwRAQQFBfyAJIANBBXRqKwMAIAggB0EFdGorAwhkGyENCyAFIA1HBEAgCCAHQQV0aiEDIA1Bf0cgBUEBR3FFBEAgCyAKQQR0aiIFIAMrAwAiFDkDACADKwMYIRUgBSAUOQMQIAUgFTkDCCAFIAMrAwg5AxgMAwsgCyAKQQR0aiIFIAMrAxAiFDkDACADKwMIIRUgBSAUOQMQIAUgFTkDCCAFIAMrAxg5AxgMAgsCQAJAAkAgBUEBag4CAAECCyALIApBBHRqIgMgCCAHQQV0aiIFKwMQIhQ5AwAgBSsDCCEVIAMgFDkDECADIBU5AwggAyAFKwMYIhQ5AxggAyAFKwMAIhU5AzAgAyAUOQMoIAMgFTkDICADIAUrAwg5AzggCkEEagwECyALIApBBHRqIgMgCCAHQQV0aiIFKwMQIhQ5AwAgBSsDCCEVIAMgFDkDECADIBU5AwggAyAFKwMYOQMYDAILIAsQGCAEQZwDNgK4ASAEIAU2ArQBIAQgBTYCsAFB6MQEIARBsAFqEDdBACEGDAULAkAgBkUNAEEAIQMDQCADIAxGBEBBACEDA0AgAyAKRg0DIAsgA0EEdGoiByAHKwMImjkDCCADQQFqIQMMAAsABSAIIANBBXRqIgcrAxghFCAHIAcrAwiaOQMYIAcgFJo5AwggA0EBaiEDDAELAAsAC0EAIQMDQCADIAxGBEACQCAEIAo2AswCIAQgCzYCyAIgBCAAKwMAOQOQAiAEIAArAwg5A5gCIAQgACsDKDkDoAIgBCAAKwMwOQOoAkEAIQYgBEHIAmogBEGQAmogBEHAAmoQjA9BAEgEQCALEBhBxb4EQQAQNwwICyACBEAgBCAEKQLAAjcDqAEgBEGoAWogBEG4AmoQjgQMAQsgBCgCzAJBIBAaIQIgBCgCzAIhB0EAIQMDQCADIAdGBEAgBEIANwOIAiAEQgA3A4ACIARCADcD+AEgBEIANwPwASAALQAdBEAgBCAAKwMQIhQQVzkD+AEgBCAUEEo5A/ABCyAALQBFQQFGBEAgBCAAKwM4IhQQV5o5A4gCIAQgFBBKmjkDgAILIAQgBCkCwAI3A6ABIAIgByAEQaABaiAEQfABaiAEQbgCahCwCCACEBhBACEGQQBODQIgCxAYQey+BEEAEDcMCQUgAiADQQV0aiIFIAsgA0EEdGoiBikDADcDACAFIAYpAwg3AwggBSALIANBAWoiA0EAIAMgB0cbQQR0aiIGKQMANwMQIAUgBikDCDcDGAwBCwALAAsFIAggA0EFdGoiB0L/////////dzcDECAHQv/////////3/wA3AwAgA0EBaiEDDAELCwJAAkACQCAEKAK8AiIJQRAQTiIGBEBBACEDIAQoArgCIQADQCADIAlGBEBBACEDIAlBAEchBQJAAkADQCADIAlGDQEgA0EEdCEAIANBAWohAyAGKwMIIAAgBmorAwihmUQtQxzr4jYaP2RFDQALQQAhBQwBCyAJRQ0AQezaCi0AAEUNACAPENUBIAQQ1gE3A/ABIARB8AFqEOsBIgAoAhQhAiAAKAIQIQMgACgCDCEHIAAoAgghBSAAKAIEIQkgBCAAKAIANgKcASAEIAk2ApgBIAQgBTYClAEgBCAHNgKQASAEQYgENgKEASAEQde7ATYCgAFBASEFIAQgA0EBajYCjAEgBCACQewOajYCiAEgD0HGygMgBEGAAWoQIBogBiAEKAK8AkEEdGoiAEEIaysDACEUIAYrAwghFSAGKwMAIRYgBCAAQRBrKwMAOQNwIAQgFDkDeCAEIBY5A2AgBCAVOQNoIA9B4a4BIARB4ABqEDNBCiAPEKcBGiAPENQBIAQoArwCIQkLQQAhAyAJQQBHIQ0CQANAIAMgCUYNASADQQR0IQAgA0EBaiEDIAYrAwAgACAGaisDAKGZRC1DHOviNho/ZEUNAAtBACENDAQLIAlFDQNB7NoKLQAARQ0DIA8Q1QEgBBDWATcD8AEgBEHwAWoQ6wEiACgCFCECIAAoAhAhAyAAKAIMIQcgACgCCCEFIAAoAgQhCSAEIAAoAgA2AlwgBCAJNgJYIAQgBTYCVCAEIAc2AlAgBEGWBDYCRCAEQde7ATYCQCAEIANBAWo2AkwgBCACQewOajYCSCAPQcbKAyAEQUBrECAaIAYgBCgCvAJBBHRqIgBBCGsrAwAhFCAGKwMIIRUgBisDACEWIAQgAEEQaysDADkDMCAEIBQ5AzggBCAWOQMgIAQgFTkDKCAPQbKvASAEQSBqEDNBCiAPEKcBGiAPENQBDAQFIAYgA0EEdCICaiIHIAAgAmoiAikDADcDACAHIAIpAwg3AwggA0EBaiEDDAELAAsACyALEBhBACEGQc3mA0EAEDcMBwtBASEDIAUgDXJBAUcNAQtBACEDQQAhCQNAIAkgDEYNASAIIAlBBXRqIgAgBisDACIUOQMQIAAgFDkDACAJQQFqIQkMAAsAC0QAAAAAAAAkQCEUQQAhCgNAIANBAXFFIApBDktyRQRAIAggDCAGIAQoArwCIBQQgw9BACEDA0ACQAJAIAMgDEYEQCAMIQMMAQsgCCADQQV0aiIAKQMAQv/////////3/wBSBEAgACkDEEL/////////d1INAgsgFCAUoCEUCyAKQQFqIQogAyAMRyEDDAMLIANBAWohAwwACwALCyADQQFxBEAgDiARIA4oAgBBA3FBA0YbKAIoECEhACAEIA4gECAOKAIAQQNxQQJGGygCKBAhNgIUIAQgADYCEEHp4QQgBEEQahAqIAQgBCkCwAI3AwggBEEIaiAEQfABahCOBCAIIAwgBCgC8AEgBCgC9AFEAAAAAAAAJEAQgw8LIAEgBCgCvAI2AgAgCxAYDAQLIApBAmoLIQogByEDDAALAAsgCxAYIAQgDiAQIA4oAgBBA3FBAkYbKAIoECE2AgBBmPEDIAQQN0EAIQYLIARB0AJqJAAgBgurAwEDfyMAQeAAayIFJAAgBSAAKwMAOQMwIAUgACsDCDkDOCAFIAErAwA5A0AgBSABKwMIOQNIQQAhAQJAIAIgBUEwaiAFQdgAahCMD0EASA0AAkAgBARAIAUgBSkCWDcDCCAFQQhqIAVB0ABqEI4EDAELIAIoAgRBIBAaIQEgAigCACEGIAIoAgQhAkEAIQADQCAAIAJGBEAgBUIANwMoIAVCADcDICAFQgA3AxggBUIANwMQIAUgBSkCWDcDACABIAIgBSAFQRBqIAVB0ABqELAIIAEQGEEATg0CQQAhAQwDBSABIABBBXRqIgQgBiAAQQR0aiIHKQMANwMAIAQgBykDCDcDCCAEIAYgAEEBaiIAQQAgACACRxtBBHRqIgcpAwA3AxAgBCAHKQMINwMYDAELAAsACyAFKAJUIgJBEBBOIgEEQEEAIQAgBSgCUCEEA0AgACACRgRAIAMgAjYCAAwDBSABIABBBHQiBmoiByAEIAZqIgYpAwA3AwAgByAGKQMINwMIIABBAWohAAwBCwALAAtBACEBQc3mA0EAEDcLIAVB4ABqJAAgAQtMAgJ/AXxBASECA0AgASACRkUEQCAEIAAgAkEEdGoiAysDACADQRBrKwMAoSADKwMIIANBCGsrAwChEEegIQQgAkEBaiECDAELCyAEC+0CAQJ/IwBBEGsiAyQAQbD9CkF/NgIAQaz9CiAANgIAQaj9CiACNgIAQaT9CkF/NgIAQaD9CiACNgIAQZz9CiABNgIAQZj9CkF/NgIAQZT9CiABNgIAQZD9CiAANgIAQYz9CkEANgIAAn9BACECAkACQAJAQYD9CigCACIBQYT9CigCACIARw0AAkAgAUEASARAIAEhAAwBC0H4/AogAUEBdEEBIAEbQSgQjAdBhP0KKAIAIQBFDQELIABBf0YNAUH4/AogAEEBakEoEIwHDQFBhP0KKAIAIQALQYD9CigCACIBIABPDQFB+PwKQfz8CigCACABaiAAcEEoEN8BQYz9CkEoEB8aQQEhAkGA/QpBgP0KKAIAQQFqNgIACyACDAELQZoMQYm4AUHDAUGxxQEQAAALRQRAIANBuS02AgggA0HgAjYCBCADQZC4ATYCAEGI9ggoAgBBsoEEIAMQIBpBfyEECyADQRBqJAAgBAvbAgEGfyMAQeAAayICJAAgACgCCCEEAkADQCAEIgMgACgCECIFSQRAIAAoAgAiByADQQJ0aigCACgCACEFIAEoAgAhBiACIAcgA0EBaiIEQQJ0aigCACgCACIHKQMINwMoIAIgBykDADcDICACIAUpAwg3AxggAiAFKQMANwMQIAIgBikDCDcDCCACIAYpAwA3AwAgAkEgaiACQRBqIAIQgARBAUcNAQwCCwsgACgCDCEEIAUhAwN/IAMgBE8NASAAKAIAIARBAnRqIgYoAgAoAgAhAyABKAIAIQUgAiAGQQRrKAIAKAIAIgYpAwg3A1ggAiAGKQMANwNQIAIgAykDCDcDSCACIAMpAwA3A0AgAiAFKQMINwM4IAIgBSkDADcDMCACQdAAaiACQUBrIAJBMGoQgARBAkYEfyAEBSAEQQFrIQQgACgCECEDDAELCyEDCyACQeAAaiQAIAMLrQIBBX8jAEFAaiICJAAgAkGA/QopAgA3AzggAkH4/AopAgA3AzACf0EAQfj8CigCACACQTBqIAAQGUEobGooAgANABogAkGA/QopAgA3AyggAkH4/AopAgA3AyBB+PwKKAIAIAJBIGogABAZQShsakEBNgIAQQEgACABRg0AGgNAAkAgAkGA/QopAgA3AxggAkH4/AopAgA3AxBB+PwKKAIAIQUgAkEQaiAAEBkhBiADQQNGDQACQCADQQxsIgQgBSAGQShsamooAgxBf0YNACACQYD9CikCADcDCCACQfj8CikCADcDAEH4/AooAgAgAiAAEBlBKGxqIARqKAIMIAEQig9FDQBBAQwDCyADQQFqIQMMAQsLIAUgBkEobGpBADYCAEEACyACQUBrJAAL+gEBBX8jAEHQAGsiAiQAA0AgA0EDRkUEQCACQYD9CikCADcDSCACQfj8CikCADcDQCADQQxsIgVB+PwKKAIAIAJBQGsgABAZQShsamooAgQoAgAhBiACQYD9CikCADcDOCACQfj8CikCADcDMEH4/AooAgAgAkEwaiAAEBlBKGxqIAVqKAIIKAIAIQUgAiAGKQMINwMoIAIgBikDADcDICACIAUpAwg3AxggAiAFKQMANwMQIAIgASkDCDcDCCACIAEpAwA3AwAgA0EBaiEDIAQgAkEgaiACQRBqIAIQgARBAkdqIQQMAQsLIAJB0ABqJAAgBEUgBEEDRnIL3iMCEn8NfCMAQdADayIDJAACQAJAIAAoAgQiBkEIEE4iDiAGRXJFBEAgA0HqLDYCCCADQd8ANgIEIANBkLgBNgIAQYj2CCgCAEGygQQgAxAgGgwBCwJAIAZBBBBOIgkgBkVyRQRAIANBmCo2AhggA0HkADYCFCADQZC4ATYCEEGI9ggoAgBBsoEEIANBEGoQIBoMAQsCQAJAAkADQEGA/QooAgAgBE0EQAJAQfj8CkEoEDFBACEEIANBADYCvAMgAyAAKAIEIgVBAXQiBjYCsAMgAyAGQQQQTiILNgKsAyALDQAgA0HTLDYCaCADQe4ANgJkIANBkLgBNgJgQYj2CCgCAEGygQQgA0HgAGoQIBoMAwsFIANBgP0KKQIANwNYIANB+PwKKQIANwNQIANB0ABqIAQQGSEGAkACQAJAQYj9CigCACIIDgICAAELQbCDBEHCAEEBQYj2CCgCABA6GhA7AAsgA0EoaiIHQfj8CigCACAGQShsakEoEB8aIAcgCBEBAAsgBEEBaiEEDAELCyADIAVB/////wdxIhE2ArQDQX8hBiADIBFBAWsiDzYCuANEAAAAAAAA8H8hFQNAIAQgBUcEQCAAKAIAIARBBHRqKwMAIhcgFSAVIBdkIggbIRUgBCAGIAgbIQYgBEEBaiEEDAELCyADIAAoAgAiBCAGQQR0aiIIKQMINwOgAyADIAgpAwA3A5gDIAMgBCAGIAUgBhtBBHRqQRBrIggpAwg3A5ADIAMgCCkDADcDiAMgBCAGQQFqIAVwQQR0aiEEAkACQAJAIAMrA5gDIhUgAysDiANiDQAgFSAEKwMAYg0AIAQrAwggAysDoANkDQELIAMgAykDkAM3A4ADIAMgAykDoAM3A/ACIAMgAykDmAM3A+gCIAMgAykDiAM3A/gCIAMgBCkDCDcD4AIgAyAEKQMANwPYAiADQfgCaiADQegCaiADQdgCahCABCAAKAIEIQVBAUcNAEEAIQdBACEEA0AgBCAFRg0CIAAoAgAhCAJAAkAgBEUNACAIIARBBHRqIgYrAwAgBkEQaysDAGINACAGKwMIIAZBCGsrAwBhDQELIA4gB0EDdGoiBiAIIARBBHRqNgIAIAYgDiAHIAVwQQN0ajYCBCAJIAdBAnRqIAY2AgAgB0EBaiEHCyAEQQFqIQQMAAsACyAFQQFrIQpBACEHIAUhBgNAIAYhBANAIARFDQIgACgCACEIAkAgBEEBayIGIApPDQAgCCAGQQR0aiIMKwMAIAggBEEEdGoiDSsDAGINACAGIQQgDCsDCCANKwMIYQ0BCwsgDiAHQQN0aiIEIAggBkEEdGo2AgAgBCAOIAcgBXBBA3RqNgIEIAkgB0ECdGogBDYCACAHQQFqIQcMAAsACyMAQRBrIgwkAAJ/AkACQAJAA0ACQEEAIQAgB0EESQ0AA0AgACIEIAdGDQMgBEEBaiEAIARBAmogB3AhCkEAIQ0jAEGAAmsiBSQAIAVB8AFqIAkgBCAHakEBayAHcCIIEMEBIAVB4AFqIAkgBBDBASAFQdABaiAJIAAgB3AiBhDBAQJAAkAgBSsD+AEgBSsD6AEiFaEgBSsD0AEgBSsD4AEiF6GiIAUrA9gBIBWhIAUrA/ABIBehoqFEAAAAAAAAAABjBEAgBUHAAWogCSAEEMEBIAVBsAFqIAkgChDBASAFQaABaiAJIAgQwQEgBSsDyAEgBSsDuAEiFaEgBSsDoAEgBSsDsAEiF6GiIAUrA6gBIBWhIAUrA8ABIBehoqFEAAAAAAAAAABjRQ0CIAVBkAFqIAkgChDBASAFQYABaiAJIAQQwQEgBUHwAGogCSAGEMEBIAUrA5gBIAUrA4gBIhWhIAUrA3AgBSsDgAEiF6GiIAUrA3ggFaEgBSsDkAEgF6GioUQAAAAAAAAAAGNFDQIMAQsgBUHgAGogCSAEEMEBIAVB0ABqIAkgChDBASAFQUBrIAkgBhDBASAFKwNoIAUrA1giFaEgBSsDQCAFKwNQIhehoiAFKwNIIBWhIAUrA2AgF6GioUQAAAAAAAAAAGRFDQELQQAhCANAIAgiBiAHRiINDQEgBkEBaiIIQQAgByAIRxsiECAKRiAGIApGciAEIAZGIAQgEEZycg0AIAVBMGogCSAEEMEBIAVBIGogCSAKEMEBIAVBEGogCSAGEMEBIAUgCSAQEMEBIAUrAzAiGiAFKwMgIhWhIhaaIRsCQAJAIAUrAzgiHCAFKwMoIhehIh4gBSsDECIfIBWhoiAFKwMYIiAgF6EgFqKhIhZEAAAAAAAAAABkIBZEAAAAAAAAAABjIgZyIhBFDQAgHiAFKwMAIhYgFaGiIAUrAwgiGCAXoSAboqAiGUQAAAAAAAAAAGQgGUQAAAAAAAAAAGMiEnJFDQAgICAYoSIZIBogFqGiIBwgGKEgHyAWoSIdoqEiIUQAAAAAAAAAAGQgIUQAAAAAAAAAAGMiE3JFDQAgGSAVIBahoiAXIBihIB2aoqAiFkQAAAAAAAAAAGQgFkQAAAAAAAAAAGMiFHINAQsgFyAcoSEWIBUgGqEhGAJAIBANACAfIBqhIhkgGKIgFiAgIByhIh2ioEQAAAAAAAAAAGZFDQAgGSAZoiAdIB2ioCAYIBiiIBYgFqKgZQ0DCwJAIB4gBSsDACIeIBWhoiAFKwMIIhkgF6EgG6KgIhtEAAAAAAAAAABkIBtEAAAAAAAAAABjcg0AIB4gGqEiGyAYoiAWIBkgHKEiHaKgRAAAAAAAAAAAZkUNACAbIBuiIB0gHaKgIBggGKIgFiAWoqBlDQMLIBkgIKEhFiAeIB+hIRgCQCAgIBmhIhsgGiAeoaIgHCAZoSAfIB6hIh2ioSIhRAAAAAAAAAAAZCAhRAAAAAAAAAAAY3INACAaIB+hIhogGKIgHCAgoSIcIBaioEQAAAAAAAAAAGZFDQAgGiAaoiAcIByioCAYIBiiIBYgFqKgZQ0DCyAbIBUgHqGiIBcgGaEgHZqioCIaRAAAAAAAAAAAZCAaRAAAAAAAAAAAY3INASAVIB+hIhUgGKIgFyAgoSIXIBaioEQAAAAAAAAAAGZFIBUgFaIgFyAXoqAgGCAYoiAWIBaioGVFcg0BDAILIBMgFHNFIAYgEkZyDQALCyAFQYACaiQAIA1FDQALIAkgBEECdGooAgAgCSAAQQAgACAHRxsiAEECdGooAgAgCSAKQQJ0aigCABCIDw0EIAAgB0EBayIHIAAgB0sbIQQDQCAAIARGDQIgCSAAQQJ0aiAJIABBAWoiAEECdGooAgA2AgAMAAsACwsgCSgCACAJKAIEIAkoAggQiA8NAgwBCyAMQdKtATYCCCAMQc0CNgIEIAxBkLgBNgIAQYj2CCgCAEGygQQgDBAgGgtBAAwBC0F/CyEAIAxBEGokAAJAIABFBEBBACEMQYD9CigCACEEQQAhCANAIAQgCE0EQANAIAQgDE0NBCAMIAEQiw9BgP0KKAIAIQQNBCAMQQFqIQwMAAsACyAIQQFqIgAhCgNAQQAhBiAEIApNBEAgACEIDAILA0BBACEEAkAgBkEDRwRAA0AgBEEDRg0CIANBgP0KKQIANwOIASADQfj8CikCADcDgAFB+PwKKAIAIQcgA0GAAWogCBAZIQUgA0GA/QopAgA3A3ggA0H4/AopAgA3A3BB+PwKKAIAIQ0gA0HwAGogChAZIRACQAJAAkAgByAFQShsaiAGQQxsaiIHKAIEKAIAIhIgDSAQQShsaiAEQQxsaiIFKAIEKAIAIhBHBEAgBSgCCCgCACENDAELIAUoAggoAgAiDSAHKAIIKAIARg0BCyANIBJHDQEgBygCCCgCACAQRw0BCyAHIAo2AgwgBSAINgIMCyAEQQFqIQQMAAsACyAKQQFqIQpBgP0KKAIAIQQMAgsgBkEBaiEGDAALAAsACwALIAsQGAwBCwJAIAQgDEcEQCABQRBqIQZBACEAA0AgACAETw0CIAAgBhCLD0GA/QooAgAhBA0CIABBAWohAAwACwALIANBsZsBNgKYASADQbYBNgKUASADQZC4ATYCkAFBiPYIKAIAQbKBBCADQZABahAgGgwDCyAAIARGBEAgA0GLmwE2AqgBIANBwQE2AqQBIANBkLgBNgKgAUGI9ggoAgBBsoEEIANBoAFqECAaDAMLIAwgABCKD0UEQCADQdP4ADYCyAIgA0HLATYCxAIgA0GQuAE2AsACQQAhBEGI9ggoAgBBsoEEIANBwAJqECAaIAsQGCAJEBggDhAYQQIQsggNBSACQQI2AgRBtP0KKAIAIgAgASkDADcDACAAIAEpAwg3AwggACAGKQMANwMQIAAgBikDCDcDGCACIAA2AgAMBgsgACAMRgRAIAsQGCAJEBggDhAYQQIQsggNBSACQQI2AgRBACEEQbT9CigCACIAIAEpAwA3AwAgACABKQMINwMIIAAgBikDADcDECAAIAYpAwg3AxggAiAANgIADAYLIANBADYCzAMgAyAGNgLIAyADQQA2AsQDIAMgATYCwAMgEUUEQCADIAsoAgA2AsQDCyADQcADaiIAQQhyIQggAyAPNgK0AyALIA9BAnRqIAA2AgAgAyAPNgK8AyAPIgchBSAMIQoDQCAKQX9HBEBBACEEIANBgP0KKQIANwO4AiADQfj8CikCADcDsAJB+PwKKAIAIANBsAJqIAoQGUEobGoiAEECNgIAIABBDGohEQJ/AkADQCAEQQNHBEAgESAEQQxsIgFqKAIAIg1Bf0cEQCADQYD9CikCADcDqAIgA0H4/AopAgA3A6ACQfj8CigCACADQaACaiANEBlBKGxqKAIAQQFGDQMLIARBAWohBAwBCwsgCyAHQQJ0aiIEKAIAKAIAIQAgCyAFQQJ0aigCACgCACEBIAMgBikDCDcD6AEgAyAGKQMANwPgASADIAEpAwg3A9gBIAMgASkDADcD0AEgAyAAKQMINwPIASADIAApAwA3A8ABIANB4AFqIANB0AFqIANBwAFqEIAEIQAgCCAEKAIAIgEgAEEBRiIAGyEEIAEgCCAAGwwBCyAAQQRqIg0gAWoiACgCBCgCACEBIA0gBEEBakEDcEEMbGooAgQoAgAhBCADIAAoAgAoAgAiDSkDCDcDmAIgAyANKQMANwOQAiADIAQpAwg3A4gCIAMgBCkDADcDgAIgAyABKQMINwP4ASADIAEpAwA3A/ABIANBkAJqIANBgAJqIANB8AFqEIAEQQFGBEAgACgCACEEIAAoAgQMAQsgACgCBCEEIAAoAgALIQACQCAKIAxGBEAgBSAHTQRAIAAgCyAHQQJ0aigCADYCBAsgAyAHQQFqIgc2ArgDIAsgB0ECdGogADYCACAFIAdNBEAgBCALIAVBAnRqKAIANgIECyADIAVBAWsiBTYCtAMgCyAFQQJ0aiAENgIADAELIAMCfwJAIAsgBUECdGooAgAgBEYNACALIAdBAnRqKAIAIARGDQAgA0GsA2ogBBCJDyIAIAdNBEAgBCALIABBAnRqKAIANgIECyADIABBAWsiBTYCtAMgCyAFQQJ0aiAENgIAIAAgDyAAIA9LGwwBCyAFIANBrANqIAAQiQ8iAU0EQCAAIAsgAUECdGooAgA2AgQLIAMgAUEBaiIHNgK4AyALIAdBAnRqIAA2AgAgASAPIAEgD0kbCyIPNgK8AwtBACEEA0AgBEEDRgRAQX8hCgwDCwJAIBEgBEEMbGoiACgCACIBQX9GDQAgA0GA/QopAgA3A7gBIANB+PwKKQIANwOwAUH4/AooAgAgA0GwAWogARAZQShsaigCAEEBRw0AIAAoAgAhCgwDCyAEQQFqIQQMAAsACwsgCxAYQQAhACAIIQQDQCAEBEAgAEEBaiEAIAQoAgQhBAwBCwsgABCyCEUNAQsgCRAYDAILIAIgADYCBEG0/QooAgAhAQNAIAgEQCABIABBAWsiAEEEdGoiBCAIKAIAIgYpAwA3AwAgBCAGKQMINwMIIAgoAgQhCAwBCwsgAiABNgIAIAkQGCAOEBhBACEEDAMLIAsQGCAJEBggDhAYQX8hBAwCCyAOEBgLQX4hBAsgA0HQA2okACAEC44EAgh/AX4jAEEwayICJAACQAJAIAAEQCABRQ0BIAAoAgRB5ABsIAAoAgAEf0EBIAAoAgh0BUEACyIFQcYAbEkNAkEBIAUEfyAAKAIIQQFqBUEKCyIDdEEEEBohBCACQgA3AxggAkIANwMoIAJCADcDICACIAM2AhggAkIANwMQIAIgBDYCEEEAIQMDQCAAKAIAIQQgAyAFRgRAIAQQGCAAIAIpAyg3AxggACACKQMgNwMQIAAgAikDGDcDCCAAIAIpAxA3AwAMBAsgBCADQQJ0aigCACIEQQFqQQJPBEAgAkEQaiAEEI0PCyADQQFqIQMMAAsAC0Gl1QFBjL4BQaMDQcCwARAAAAtBidUBQYy+AUGkA0HAsAEQAAALIAEoAhApAwghCgJAIAAtAAxBAUYEQCAKIAApAxBaDQELIAAgCjcDECAAQQE6AAwLIAApAxggClQEQCAAIAo3AxgLAkAgACgCACIEBEBBASAAKAIIdCIFIAAoAgQiBksNAQtBiogBQYy+AUHRA0HAsAEQAAALIAVBAWshByAKpyEIQQAhAwJAA0AgAyAFRwRAIAQgAyAIaiAHcUECdGoiCSgCAEEBakECSQ0CIANBAWohAwwBCwsgAkHgAzYCBCACQYy+ATYCAEGI9ggoAgBB2L8EIAIQIBoQOwALIAkgATYCACAAIAZBAWo2AgQgAkEwaiQAC3MBAX8gABAkIAAQS08EQCAAQQEQvQELIAAQJCEBAkAgABAoBEAgACABakEAOgAAIAAgAC0AD0EBajoADyAAECRBEEkNAUGTtgNBoPwAQa8CQcSyARAAAAsgACgCACABakEAOgAAIAAgACgCBEEBajYCBAsLuAECA38BfCMAQTBrIgQkAANAIAIgBUYEQCADBEAgASsDACEHIAQgASsDCDkDCCAEIAc5AwAgAEHRpQMgBBAeCyAAQe7/BBAbGiAEQTBqJAAFAkAgBUUEQCABKwMAIQcgBCABKwMIOQMYIAQgBzkDECAAQaOlAyAEQRBqEB4MAQsgASAFQQR0aiIGKwMAIQcgBCAGKwMIOQMoIAQgBzkDICAAQdGlAyAEQSBqEB4LIAVBAWohBQwBCwsLigEBA38jAEEQayIEJAAgAEGPyQFBABAeIAFBACABQQBKGyEFQQAhAQNAIAEgBUcEQCABBEAgAEG6oANBABAeCyAEIAIgAUEEdGoiBisDADkDACAAQeDMAyAEEB4gBigCCCADIAAQuwIgAEH9ABBlIAFBAWohAQwBCwsgAEHAzQRBABAeIARBEGokAAu7AQECfwJAAkAgACgCMBC7AyAAKAIsEJoBRgRAIAAoAjAQuwMhAyAAEDkgAEYEfyABQRxqBUEkEFILIgIgATYCECAAKAIwIAIQjQ8gACgCLCIBIAJBASABKAIAEQMAGiAAKAIwELsDIAAoAiwQmgFHDQEgACgCMBC7AyADQQFqRw0CDwtBjqMDQYy+AUHiAEHJnwEQAAALQY6jA0GMvgFB6QBByZ8BEAAAC0GejgNBjL4BQeoAQcmfARAAAAsjACAAKAIAKAIAQQR2IgAgASgCACgCAEEEdiIBSyAAIAFJaws1ACAAIAFBACACEJUPIAAQeSEAA0AgAARAIAFBue0EEBsaIAAgASACEJMPIAAQeCEADAELCwucAgEFfyMAQSBrIgQkAAJAAkACQCAAEDkgAEYNACAAQbWnAUEAEGsgATYCCCAAECEiA0UNASABQQFqIQEgA0HiN0EHEOoBDQAgABAhIQMgAEG1pwFBABBrKAIIIQYgAiADQYAEIAIoAgARAwAiBQRAIAUoAgwgBkYNASAEIAM2AhBB0fsEIARBEGoQKgwBC0EBQRAQgAYhBSADEKUBIgdFDQIgBSAGNgIMIAUgBzYCCCACIAVBASACKAIAEQMAGgsgABB5IQADQCAABEAgACABIAIQlA8hASAAEHghAAwBCwsgBEEgaiQAIAEPC0GI1AFB6/sAQQxBnvcAEAAACyAEIAMQQEEBajYCAEGI9ggoAgBB9ekDIAQQIBoQLwAL0A4BCH8jAEGwAWsiBiQAIAIEQEHkuQpBlO4JKAIAEJMBIQogAEEBQbWnAUEMQQAQswIgAEECQbWnAUEMQQAQswIgAEEAQbWnAUF0QQAQswIgAEEAIAoQlA8hCyAAEBwhCANAIAgEQAJAIAgoAhAtAIYBQQFGBEAgCiAIECFBgAQgCigCABEDACIFRQRAQX8hBAwCCyAFKAIMIQQMAQsgCSALaiEEIAlBAWohCQsgCEG1pwFBABBrIAQ2AgggACAIECwhBANAIAQEQCAEQbWnAUEAEGsgBzYCCCAHQQFqIQcgACAEEDAhBAwBCwsgACAIEB0hCAwBCwsgChCZARoLIAMgAygCACIFQQFqNgIAIAEgBRBEIAFB8NgDEBsaIAAQISABIAMoAgAQRCABQfrMAxAbGiADIAEQuwICQCACBEAgAUG57QQQGxogASADKAIAEEQgBkG+igFB+pMBIAAQggIbNgKQASABQarqBCAGQZABahAeIAEgAygCABBEIAZBvooBQfqTASAAENwFGzYCgAEgAUGlNCAGQYABahAeIAAgASADEIEGIAFBue0EEBsaIAEgAygCABBEIAYgCzYCcCABQZmyASAGQfAAahAeDAELIAAgASADEIEGIAFBue0EEBsaIAEgAygCABBEIAYgAEG1pwFBABBrKAIINgKgASABQa2yASAGQaABahAeCwJAIAAQeSIFRQ0AIAFBue0EEBsaIAMgAygCACIEQQFqNgIAIAEgBBBEAkAgAgRAIAFBy80EEBsaDAELIAFB2c0EEBsaIAEgAygCABBEC0Hx/wQhByAFIQQDQCAEBEAgASAHEBsaAkAgAgRAIAQgASADEJMPDAELIAYgBEG1pwFBABBrKAIINgJgIAFBwbIBIAZB4ABqEB4LQbntBCEHIAQQeCEEDAELCyACDQAgAyADKAIAQQFrNgIAIAFB7v8EEBsaIAEgAygCABBEIAFB/sgBEBsaCyAAEBwhBAJAAkACQANAIAQEQCAEKAIQLQCGAUEBRw0CIAAgBBAdIQQMAQsLIAJFIAVFcg0CDAELIAFBue0EEBsaAkAgAgRAIAUNASADIAMoAgAiBUEBajYCACABIAUQRCABQcvNBBAbGgwBCyADIAMoAgAiBUEBajYCACABIAUQRCABQfXNBBAbGiABIAMoAgAQRAtB8f8EIQcgABAcIQQDQCAERQ0BAkAgBCgCEC0AhgENACABIAcQGxogAgRAIAMgAygCACIFQQFqNgIAIAEgBRBEIAFB8NgDEBsaIAEgAygCABBEIAYgBEG1pwFBABBrKAIINgJAIAFB6eoEIAZBQGsQHiABIAMoAgAQRCABQfrMAxAbGiAEECEgAyABELsCIAQgASADEIEGIAFB7v8EEBsaIAMgAygCAEEBayIFNgIAIAEgBRBEIAFBrwgQGxpBue0EIQcMAQsgBiAEQbWnAUEAEGsoAgg2AlAgAUHBsgEgBkHQAGoQHkG6oAMhBwsgACAEEB0hBAwACwALIAMgAygCAEEBazYCACABQe7/BBAbGiABIAMoAgAQRCABQf7IARAbGgtBACEHIAAQHCEIA0ACQCAIRQRAIAdFDQFBACEIIAdBBBCABiEJIAAQHCEFA0AgBUUEQCAJIAdBBEHoAhC1ASABQbntBBAbGiADIAMoAgAiAEEBajYCACABIAAQRCABQenNBBAbGiACRQRAIAEgAygCABBEC0EAIQQDQCAEIAdGBEAgCRAYIAMgAygCAEEBazYCACABQe7/BBAbGiABIAMoAgAQRCABQf7IARAbGgwFBQJAIAYCfwJAAkAgBARAIAkgBEECdGohACACRQ0CIAFBue0EEBsaIAAoAgAhAAwBCyAJKAIAIgAgAkUNAhoLIAMgAygCACIFQQFqNgIAIAEgBRBEIAFB8NgDEBsaIAEgAygCABBEIAYgAEG1pwFBABBrKAIINgIgIAFB6eoEIAZBIGoQHiABIAMoAgAQRCAGIABBMEEAIAAoAgBBA3FBA0cbaigCKEG1pwFBABBrKAIINgIQIAFB3OoEIAZBEGoQHiABIAMoAgAQRCAGIABBUEEAIAAoAgBBA3FBAkcbaigCKEG1pwFBABBrKAIINgIAIAFBubIBIAYQHiAAIAEgAxCBBiABQe7/BBAbGiADIAMoAgBBAWsiADYCACABIAAQRCABQa8IEBsaDAILIAFBuqADEBsaIAAoAgALQbWnAUEAEGsoAgg2AjAgAUHBsgEgBkEwahAeCyAEQQFqIQQMAQsACwALIAAgBRAsIQQDQCAEBEAgCSAIQQJ0aiAENgIAIAhBAWohCCAAIAQQMCEEDAEFIAAgBRAdIQUMAgsACwALAAsgACAIECwhBANAIAQEQCAHQQFqIQcgACAEEDAhBAwBBSAAIAgQHSEIDAMLAAsACwsgAUHu/wQQGxogAyADKAIAQQFrIgA2AgAgASAAEEQgAUGW2ANBrwggAhsQGxogBkGwAWokAAuDAQEBfyAAIAAoAgBBd3E2AgAgABB5IQIDQCACBEAgAkEAEJYPIAIQeCECDAELCwJAIAFFDQAgABAcIQEDQCABRQ0BIAEgASgCAEF3cTYCACAAIAEQLCECA0AgAgRAIAIgAigCAEF3cTYCACAAIAIQMCECDAELCyAAIAEQHSEBDAALAAsLvwEBA38jAEEgayICJAACQAJAAkACQAJAIAEoAiBBAWsOBAECAgACCyABKAIAIgFBicEIEE0NAiAAQfzACBAbGgwDCyABLQADRQRAIABB/MAIEBsaDAMLIAEtAAAhAyABLQABIQQgAiABLQACNgIYIAIgBDYCFCACIAM2AhAgAEGdEyACQRBqEB4MAgsgAkGIATYCBCACQb68ATYCAEGI9ggoAgBB2L8EIAIQIBoQOwALIAAgARAbGgsgAkEgaiQAC+sDAQd/IwBBIGsiAyQAAkAgAARAAkACQAJAIAFBAWoOAgEAAgtB2NQBQaK6AUGlAUHNsAEQAAALQZjbAUGiugFBpgFBzbABEAAACyAAKAIEQeQAbCAAKAIAIgIEf0EBIAAoAgh0BUEACyIFQcYAbEkNAUEBIAUEfyAAKAIIQQFqBUEKCyICdEEEEBohBCADIAI2AhxBACECIANBADYCGCADIAQ2AhQDQCAAKAIAIQQgAiAFRgRAIAQQGCAAIAMoAhw2AgggACADKQIUNwIAIAAoAgAhAgwDCyAEIAJBAnRqKAIAIgRBAWpBAk8EQCADQRRqIAQQmA8LIAJBAWohAgwACwALQe/TAUGiugFBpAFBzbABEAAACwJAIAIEQEEBIAAoAgh0IgUgACgCBE0NASAFQQFrIQQgAUEIaiABKQMAQj+IpxC+BiEGIAAoAgAhB0EAIQICQANAIAIgBUcEQCAHIAIgBmogBHFBAnRqIggoAgBBAWpBAkkNAiACQQFqIQIMAQsLIANB2gE2AgQgA0GiugE2AgBBiPYIKAIAQdi/BCADECAaEDsACyAIIAE2AgAgACAAKAIEQQFqNgIEIANBIGokAA8LQfzTAUGiugFByAFBzbABEAAAC0H0hwFBoroBQcoBQc2wARAAAAubAQEBfwJAAkACQCACQQJrDgIAAQILIAAgAUECEIQGIQMMAQsgABC1CCEDCyAAQfqSARAbGiAAIAIgAxCDBiAAQcbDAxAbGiAAIAErAwAQeyAAQbLDAxAbGiAAIAErAwiaEHsgAEG/wwMQGxogACABKwMQIAErAwChEHsgAEGDwwMQGxogACABKwMYIAErAwihEHsgAEHM1AQQGxoL/gcCBn8BfCMAQdABayIDJAAgACgCECEGIABB5roDEBsaIABBm7ADQfjBA0H3vAMgAi0AMCIEQfIARhsgBEHsAEYbEBsaIAIrAxggASsDCKAhCSAGLQCNAkECcUUEQCAAQczDAxAbGiAAIAErAwAQeyAAQbnDAxAbGiAAIAmaEHsgAEGPxwMQGxoLAn8CQCACKAIEIgQoAggiAQRAQRAhB0EIIQUgASEEAkACQAJAIAAoAgAoAqABKAIQKAL0AUEBaw4CAgABCyABQRhqIQRBICEHQRwhBQwBCyABQQRqIQQLIAEgBWooAgAhBSABIAdqKAIAIQcgASgCDCEIIAMgBCgCACIENgLAASAAQbMzIANBwAFqEB4gASgCGCIBRSABIARGckUEQCADIAE2ArABIABBrzMgA0GwAWoQHgsgAEEiEGUgBQRAIAMgBTYCoAEgAEGotQMgA0GgAWoQHgsgCARAIAMgCDYCkAEgAEHFtQMgA0GQAWoQHgsgB0UNASADIAc2AoABIABB2LUDIANBgAFqEB5BAQwCCyADIAQoAgA2AnAgAEGWtQMgA0HwAGoQHgtBAAshBAJAIAIoAgQoAhgiAUH/AHFFDQAgAUEBcUUgBXJFBEAgAEGLwgMQGxoLIAQgAUECcUVyRQRAIABBn8IDEBsaCyABQeQAcQRAIABB78MDEBsaQQAhBSABQQRxIgQEQCAAQaOXARAbGkEBIQULIAFBwABxBEAgA0G6oANB8f8EIAQbNgJgIABBmJcBIANB4ABqEB5BASEFCyABQSBxBEAgA0G6oANB8f8EIAUbNgJQIABBofoAIANB0ABqEB4LIABBIhBlCyABQQhxBEAgAEH7tQMQGxoLIAFBEHFFDQAgAEG0wgMQGxoLIAMgAigCBCsDEDkDQCAAQcG6AyADQUBrEB4CQAJAAkACQCAGKAIwQQFrDgQBAwMAAwsgBigCECIBQfDACBAuRQ0BIAMgATYCECAAQbq1AyADQRBqEB4MAQsgBi0AECEBIAYtABEhBCADIAYtABI2AjggAyAENgI0IAMgATYCMCAAQe2tAyADQTBqEB4gBi0AEyIBQf8BRg0AIAMgAbhEAAAAAADgb0CjOQMgIABB07oDIANBIGoQHgsgAEE+EGUgBi0AjQJBAnEEQCAAQcKtAxAbGiAAIAYoAtwBEIoBIABBisMDEBsaIAAgCZoQeyAAQc3gARAbGgsgAigCACADQfjACCgCADYCDCADQQxqQdICIAAQngQgBi0AjQJBAnEEQCAAQYXfARAbGgsgAEGt0gQQGxogA0HQAWokAA8LIANBmAQ2AgQgA0G+vAE2AgBBiPYIKAIAQdi/BCADECAaEDsACwsAIABB/NIEEBsaC+YBAQF/IwBBEGsiBSQAIABB3IIBEBsaIAQEQCAAQePFARAbGiAAIAQQigEgAEEiEGULIABB28IBEBsaAkAgAUUNACABLQAARQ0AIABBocQDEBsaIAVBADYCCCAFQQA2AgwgASAFQQhqQdICIAAQngQgAEEiEGULAkAgAkUNACACLQAARQ0AIABB0MQDEBsaIAVB+MAIKAIANgIEIAIgBUEEakHSAiAAEJ4EIABBIhBlCwJAIANFDQAgAy0AAEUNACAAQdHDAxAbGiAAIAMQigEgAEEiEGULIABBl9YEEBsaIAVBEGokAAtIAQF/IAAgACgCECIBKALcAUEAQe+dASABKAIIEIIEIABBtN8BEBsaIABB6NoBIAEoAggQgQEiARCKASABEBggAEHP0wQQGxoLXgEDfyAAIAAoAhAiASgC3AEgACgCoAEiA0ECTgR/IAAoAgAoAqwCIANBAnRqKAIABUEAC0HonwEgASgCCBCCBCAAQbTfARAbGiAAIAEoAggQIRCKASAAQc/TBBAbGgs8AQF/IAAgACgCECIBKALcAUEAQeI3IAEoAggQggQgAEG03wEQGxogACABKAIIECEQigEgAEHP0wQQGxoL2gECAn8BfCMAQSBrIgEkACAAIAAoAhAiAigC3AFBAEGI+gAgAigCCBCCBCAAQbWsAxAbGiAAKwPoAyEDIAEgACsD8AM5AxggASADOQMQIABB/YIBIAFBEGoQHiABQQAgACgC6AJrNgIAIABBnawDIAEQHiAAIAArA/gDEHsgAEEgEGUgACAAKwOABJoQeyAAQdPVBBAbGgJAIAIoAggQIS0AAEUNACACKAIIECEtAABBJUYNACAAQbbfARAbGiAAIAIoAggQIRCKASAAQc/TBBAbGgsgAUEgaiQACx8AIAAgAUEAQbc3IAAoAhAoAggQggQgAEGX1gQQGxoLCwAgAEH00gQQGxoL0gECAn8BfiMAQTBrIgEkACAAKAIQIQIgAEG0oAMQGxoCQCACKAIIECEtAABFDQAgAigCCBAhLQAAQSVGDQAgAEHOzAMQGxogACACKAIIECEQigELIAEgACgCqAEgACgCpAFsNgIgIABB0dQEIAFBIGoQHiABIAApA8ADNwMQIABBwPgEIAFBEGoQHiAAKQPIAyEDIAEgACkD0AM3AwggASADNwMAIABB3MUDIAEQHiAAKAJAQQJHBEAgAEG0twMQGxoLIABBl9YEEBsaIAFBMGokAAusAQEBfyAAKAJAQQJHBEAgAEHu0wQQGxoCQCAAKAIAKAKgAUH2IhAnIgFFDQAgAS0AAEUNACAAQa/EAxAbGiAAIAEQGxogAEHZ0wQQGxoLIABB7tQEEBsaCyAAQbzHAxAbGiAAIAAoAgwoAgAoAgAQigEgAEHayAMQGxogACAAKAIMKAIAKAIEEIoBIABB0qwDEBsaIAAgACgCDCgCACgCCBCKASAAQeHUBBAbGguJAgEBfyMAQUBqIgUkAAJAIARFDQAgACgCECIEKwNQRAAAAAAAAOA/ZEUNACAAIARBOGoQlQIgAEGmywMQGxogACACIAMQiwIgAEG+zgMQGxogBSACKQMINwM4IAUgAikDADcDMCAAIAVBMGoQ6AEgBSABNgIkIAUgAzYCICAAQaj5AyAFQSBqEB4LIAAoAhArAyhEAAAAAAAA4D9kBEAgABCDBCAAIAAoAhBBEGoQlQIgAEGmywMQGxogACACIAMQiwIgAEG+zgMQGxogBSACKQMINwMYIAUgAikDADcDECAAIAVBEGoQ6AEgBSABNgIEIAUgAzYCACAAQcj5AyAFEB4LIAVBQGskAAsbACAAQaTNAxAbGiAAIAEQGxogAEHu/wQQGxoLxQEBA38jAEEgayIDJAAgACgCECsDKEQAAAAAAADgP2QEQCAAEIMEIAAgACgCEEEQahCVAiAAQZ/JAxAbGiADIAEpAwg3AxggAyABKQMANwMQIAAgA0EQahDoASAAQZmKBBAbGkEBIAIgAkEBTRshBEEBIQIDQCACIARGBEAgAEHvsQQQGxoFIAMgASACQQR0aiIFKQMINwMIIAMgBSkDADcDACAAIAMQ6AEgAEGrigQQGxogAkEBaiECDAELCwsgA0EgaiQAC7UCAQF/IwBBIGsiBCQAAkAgA0UNACAAKAIQIgMrA1BEAAAAAAAA4D9kRQ0AIAAgA0E4ahCVAiAAQZ/JAxAbGiAEIAEpAwg3AxggBCABKQMANwMQIAAgBEEQahDoASAAQZmKBBAbGkEBIQMDQCACIANNBEAgAEGZjgQQGxoFIAAgASADQQR0akEDEIsCIABB/okEEBsaIANBA2ohAwwBCwsLIAAoAhArAyhEAAAAAAAA4D9kBEAgABCDBCAAIAAoAhBBEGoQlQIgAEGfyQMQGxogBCABKQMINwMIIAQgASkDADcDACAAIAQQ6AEgAEGZigQQGxpBASEDA0AgAiADTQRAIABB77EEEBsaBSAAIAEgA0EEdGpBAxCLAiAAQf6JBBAbGiADQQNqIQMMAQsLCyAEQSBqJAAL+wIBA38jAEFAaiIEJAACQCADRQ0AIAAoAhAiAysDUEQAAAAAAADgP2RFDQAgACADQThqEJUCIABBn8kDEBsaIAQgASkDCDcDOCAEIAEpAwA3AzAgACAEQTBqEOgBIABBmYoEEBsaQQEgAiACQQFNGyEFQQEhAwNAIAMgBUYEQCAAQZmOBBAbGgUgBCABIANBBHRqIgYpAwg3AyggBCAGKQMANwMgIAAgBEEgahDoASAAQauKBBAbGiADQQFqIQMMAQsLCyAAKAIQKwMoRAAAAAAAAOA/ZARAIAAQgwQgACAAKAIQQRBqEJUCIABBn8kDEBsaIAQgASkDCDcDGCAEIAEpAwA3AxAgACAEQRBqEOgBIABBmYoEEBsaQQEgAiACQQFNGyECQQEhAwNAIAIgA0YEQCAAQc+xBBAbGgUgBCABIANBBHRqIgUpAwg3AwggBCAFKQMANwMAIAAgBBDoASAAQauKBBAbGiADQQFqIQMMAQsLCyAEQUBrJAALvAEBAX8jAEEgayIDJAAgAyABKQMANwMAIAMgASkDCDcDCCADIAErAxAgASsDAKE5AxAgAyABKwMYIAErAwihOQMYAkAgAkUNACAAKAIQIgErA1BEAAAAAAAA4D9kRQ0AIAAgAUE4ahCVAiAAIANBAhCLAiAAQamOBBAbGgsgACgCECsDKEQAAAAAAADgP2QEQCAAEIMEIAAgACgCEEEQahCVAiAAIANBAhCLAiAAQeGxBBAbGgsgA0EgaiQAC+4CAQR/IwBB0ABrIgMkACAAKAIQIgQrAyhEAAAAAAAA4D9jRQRAIAAgBEEQahCVAiAAIAIoAgQrAxAQeyACKAIEKAIAIgQQQEEeTwRAIAMgBDYCQEH55QMgA0FAaxAqCyAEIQUCQANAIAUtAAAiBkUNASAGQSBGIAbAQQBIciAGQSBJckUEQCAFQQFqIQUgBkH/AEcNAQsLIAMgBDYCMEGr5QMgA0EwahAqCyADIAIoAgQoAgA2AiAgAEGz4QMgA0EgahAeIAIoAgBBtPwKKAIAEM4GIQQgAi0AMCIFQewARwRAIAEgASsDAAJ8IAVB8gBGBEAgAisDIAwBCyACKwMgRAAAAAAAAOA/oguhOQMACyABIAIrAxggASsDCKA5AwggAyABKQMINwMYIAMgASkDADcDECAAIANBEGoQ6AEgAEHRyAMQGxogACACKwMgEHsgAyAENgIAIABBmt4DIAMQHiAEEBgLIANB0ABqJAALaAAjAEEQayICJAACQCABRQ0AIAAoAhAiAygCmAJFDQAgAEGeywMQGxogACADKAKYAkECEIsCIABBv80EEBsaIAIgAUG0/AooAgAQzgYiATYCACAAQdySBCACEB4gARAYCyACQRBqJAALNgEBfyMAQRBrIgEkACABIAAoAhAoAggQITYCACAAQZaDBCABEB4gAEHdrAQQGxogAUEQaiQAC2MBAX8jAEEQayIBJAAgACgCDCgCFARAIABB+IUEEBsaIABBACAAKAIMKAIUQQRqEM8GCyAAQd2vBBAbGiAAQZWJBBAbGiABIAAoAgwoAhw2AgAgAEHdxwQgARAeIAFBEGokAAuUBAMGfwF+A3wjAEGwAWsiASQAIAAoAtQDIQIgACgC0AMhAyAAKALMAyEFIAAoAsgDIQYgASAAKAIMKAIcQQFqIgQ2AqQBIAEgBDYCoAEgAEHpxgQgAUGgAWoQHiAAKAIMKAIURQRAIAEgAjYCnAEgASADNgKYASABIAU2ApQBIAEgBjYCkAEgAEGpxgQgAUGQAWoQHgsgAUGxlgFB5CAgACgC6AIbNgKAASAAQcP/AyABQYABahAeIAAoAkBBAUYEQCABIAI2AnQgASADNgJwIABBmrUEIAFB8ABqEB4LIAApAsQBIQcgASAAKALMATYCaCABIAc3A2AgAEGyswQgAUHgAGoQHiAAKAIMKAIURQRAIAEgBTYCVCABIAIgBWs2AlwgASAGNgJQIAEgAyAGazYCWCAAQYOUBCABQdAAahAeCyAAKwPoAyEIIAArA/ADIQkgACgC6AIhBCAAKwP4AyEKIAFBQGsgACsDgAQ5AwAgASAKOQM4IAEgBDYCMCABIAk5AyggASAIOQMgIABBoK4EIAFBIGoQHiAAKAJAQQFGBEAgAkHA8ABIIANBv/AATHFFBEAgACgCDCgCECEEIAFBwPAANgIYIAEgAjYCFCABIAM2AhBBmPYEIAFBEGogBBEEAAsgASACNgIMIAEgAzYCCCABIAU2AgQgASAGNgIAIABBs5IEIAEQHgsgAUGwAWokAAsqACMAQRBrIgEkACABIAM2AgQgASACNgIAIABB24YEIAEQHiABQRBqJAAL6AMCBX8BfiMAQTBrIgIkACAAKAIQIQNBsPwKQQA6AAACQCAAKAIMKAIcDQAgAiADKAIIECE2AiAgAEHygAQgAkEgahAeIABBxdwEQbn0BCAAKAJAQQJGGxAbGgJAIAAoAgwoAhQNACAAKAJAQQJHBEAgAEGh9AQQGxoMAQsgACkDyAMhBiACIAApA9ADNwMYIAIgBjcDECAAQcvGBCACQRBqEB4LIABB5KwEEBsaIAAgACgCDCgCGEHgrgoQzwYjAEEQayIEJAACQEGA3wooAgAiAUUNACABQQBBgAEgASgCABEDACEBA0AgAUUNASABLQAQRQRAIAQgASgCDDYCACAAQdbYAyAEEB4gAEH62AQQGxogACABEO0JIABBoeIDEBsaIABBn6QEEBsaC0GA3wooAgAiBSABQQggBSgCABEDACEBDAALAAsgBEEQaiQAIAAoAgwoAhQiAUUNACABKAIAIQEgAkEANgIsIAIgATYCKCAAQQAgAkEoahDPBgtBtPwKQQFBfyADKAIIKAIQLQBzQQFGGzYCAEGw/AotAABFBEAgAEGF3AQQGxpBsPwKQQE6AAALIAMoAtgBIgEEQCACIAFBtPwKKAIAEM4GIgE2AgAgAEH/kQQgAhAeIAEQGAsgAkEwaiQAC5EBAgF/AX4jAEEgayIBJAAgAEGkiQQQGxogACgCQEECRwRAIAEgACgCDCgCHDYCECAAQcHHBCABQRBqEB4LAkAgACgCDCgCFA0AIAAoAkBBAkYNACAAKQPYAyECIAEgACkD4AM3AwggASACNwMAIABBy8YEIAEQHgsgAEH4rwQQGxogAEHizwQQGxogAUEgaiQAC18CAn8BfiMAQRBrIgEkACAAQZmVAxAbGiAAQfXcBEHu/wQgACgCQEECRhsQGxogACgCDCgCACICKQIAIQMgASACKAIINgIIIAEgAzcDACAAQanvBCABEB4gAUEQaiQACyYAIAAgACgCECIAKAKQAiAAKAKYAiAAKAKUAiABIAIgAyAEEIYGC4kBAQF/IAAoAhAhAQJAAkACQCAAKAJAQQJrDgIAAQILIAAgASgCkAIgASgCmAIgASgClAIgASgC2AEgASgC7AEgASgC/AEgASgC3AEQhgYPCyAAIAEoApACIAEoApgCIAEoApQCIAEoAtgBIAEoAuwBIAEoAvwBIAEoAtwBEIYGIABB7NIEEBsaCwvPAQECfyAAKAIQIQECQCAAAn8CQAJAAkAgACgCQA4EAAEEAgQLIABBh4kEEBsaIAEoAtgBIgJFDQMgAi0AAEUNAyAAQaTIAxAbGkHu/wQhAiABKALYAQwCCyABKALYASICRQ0CIAItAABFDQIgAEGkyAMQGxogACABKALYARCKASAAQb7OAxAbGkHu/wQhAiABKAIIECEMAQsgAEGrxQMQGxogACABKAIIECEQigEgAEHHxAMQGxpBkdYEIQIgASgCCBAhCxCKASAAIAIQGxoLC2oCAX8CfkF/IQICQCAAKAIoKQMIIgMgASgCKCkDCCIEVA0AIAMgBFYEQEEBDwsCQCAALQAAQQNxRQ0AIAEtAABBA3FFDQAgACkDCCIDIAEpAwgiBFQNAUEBIQIgAyAEVg0BC0EAIQILIAILxAECA38BfCMAQdAAayIDJAAgACgCECIEKAKYASEFIAQrA6ABIQYgAyAEKAIQNgIYIANBADYCHCADQaDkCigCADYCICADQgA3AiQgA0EANgI4IANCADcCPCADQgA3AkQgAyACNgJMIAMgBhAyOQMQIANEAAAAAAAAJEBEAAAAAAAAAAAgBUEBa0ECSSIEGzkDMCADQoKAgIAQNwMAIAMgBUEAIAQbNgIIIABB1NwDIAMQHiAAIAEgAkEAELwIIANB0ABqJAAL/AYCDX8EfCMAQfABayIEJABBoOQKKAIAIQwgACgCECIHKAIQIQ0gBysDoAEgBEIANwOoASAEQgA3A6ABEDIhEiACQQNLBEBBfyEIIAcoApgBIgZBAWtBAkkhBUEEIQsgAwRAIAcoAjghCkEFIQtBFCEIC0QAAAAAAAAkQEQAAAAAAAAAACAFGyETIAZBACAFGyEOIAQgASsDACIUOQPgASABKwMIIREgBCAUOQOAASAEIBE5A+gBIAQgETkDiAEgBEGgAWogBEGAAWoQuwhBASEFQQAhAwNAAkACQCACIANBA2oiB00EQCAEIAU2AnQgBEEANgJwIARCADcDaCAEIBM5A2AgBCAINgJYIARBADYCVCAEIAw2AlAgBCAKNgJMIAQgDTYCSCAEQUBrIBI5AwAgBCAONgI4IAQgCzYCNCAEQQM2AjAgAEH6xQQgBEEwahAeAkAgBEGgAWoiARAoBEAgARAkQQ9GDQELIARBoAFqIgEQJCABEEtPBEAgAUEBEL0BCyAEQaABaiICECQhASACECgEQCABIAJqQQA6AAAgBCAELQCvAUEBajoArwEgAhAkQRBJDQFBk7YDQaD8AEGvAkHEsgEQAAALIAQoAqABIAFqQQA6AAAgBCAEKAKkAUEBajYCpAELAkAgBEGgAWoQKARAIARBADoArwEMAQsgBEEANgKkAQsgBEGgAWoiAhAoIQEgBCACIAQoAqABIAEbNgIgIABBq4MEIARBIGoQHiAELQCvAUH/AUYEQCAEKAKgARAYCyAFQQAgBUEAShshASAFQQFrIQJBACEDA0AgASADRg0CIAQgAyACb0EARzYCECAAQcCyASAEQRBqEB4gA0EBaiEDDAALAAsgBCAEKQPgATcDsAEgBCAEKQPoATcDuAEgASADQQR0aiEPQQEhA0EBIQYDQCAGQQRGRQRAIAZBBHQiCSAEQbABamoiECAJIA9qIgkrAwA5AwAgECAJKwMIOQMIIAZBAWohBgwBCwsDQCADQQdGDQIgBEGQAWogBEGwAWogA7hEAAAAAAAAGECjQQBBABChASAEIAQrA5ABOQMAIAQgBCsDmAE5AwggBEGgAWogBBC7CCADQQFqIQMMAAsACyAAQe7/BBAbGiAEQfABaiQADwsgBUEGaiEFIAchAwwACwALQfW1AkHSvAFBvwJBjzkQAAAL2gECBH8BfCMAQdAAayIEJAAgACgCECIFKAKYASEGIAUrA6ABIQggBSgCOCEHIAQgBSgCEDYCGCAEIAc2AhwgBEGg5AooAgA2AiAgBEEANgIkIARBFEF/IAMbNgIoIARBADYCOCAEQgA3AjwgBEIANwJEIAQgAkEBajYCTCAEIAgQMjkDECAERAAAAAAAACRARAAAAAAAAAAAIAZBAWtBAkkiAxs5AzAgBEKCgICAMDcDACAEIAZBACADGzYCCCAAQdTcAyAEEB4gACABIAJBARC8CCAEQdAAaiQAC6wCAgN/B3wjAEGQAWsiAyQAIAAoAhAiBCgCmAEhBSAEKwOgASEKIAErAxghBiABKwMQIQcgASsDCCEIIAErAwAhCSAEKAI4IQEgAyAEKAIQNgIYIAMgATYCHCADQaDkCigCADYCICADQQA2AiQgA0EUQX8gAhs2AiggA0EANgI4IANBQGtCADcDACADIAkQMiILOQNIIAMgCBAyIgw5A1AgAyALOQNoIAMgDDkDcCADIAcQMjkDeCADIAYQMjkDgAEgAyAKEDI5AxAgAyAHIAmhEDI5A1ggAyAGIAihEDI5A2AgA0QAAAAAAAAkQEQAAAAAAAAAACAFQQFrQQJJIgEbOQMwIANCgYCAgBA3AwAgAyAFQQAgARs2AgggAEGDpwQgAxAeIANBkAFqJAALxgMBC38jAEEwayIDJABBfyEFAkACQAJAAkACQAJAAkAgASgCIEEBaw4EAQICAAILIAEoAgAhAANAIAJBCEYNBSAARQ0GIAJBAnRBsMAIaigCACAAEE1FDQQgAkEBaiECDAALAAtBpOQKKAIAIgZBACAGQQBKGyEHIAEtAAIhCCABLQABIQkgAS0AACEKQYP0CyELAkADQCACIAdHBEACQCACQQF0IgxBsOwKai4BACAJayIEIARsIAxBsOQKai4BACAKayIEIARsaiAMQbD0CmouAQAgCGsiBCAEbGoiBCALTg0AIAIhBSAEIgsNAAwDCyACQQFqIQIMAQsLIAZBgARHDQILIAVBIGohAgwCCyADQfUANgIEIANB0rwBNgIAQYj2CCgCAEHYvwQgAxAgGhA7AAtBpOQKIAZBAWo2AgAgB0EBdCIFQbDkCmogCjsBACAFQbDsCmogCTsBACAFQbD0CmogCDsBACADIAg2AiAgAyAJNgIcIAMgCjYCGCADIAdBIGoiAjYCFCADQQA2AhAgAEHz2wMgA0EQahAeCyABIAI2AgALIAFBBTYCICADQTBqJAAPC0GU1gFB1PsAQQ1B5TsQAAALxwICB38EfCMAQdAAayIDJAAgACgC6AIhBiAAKwPgAiEKQaDkCigCACEHIAIoAgQiBCsDECELIAAoAhAoAhAhCCACKAIAEEAhCSAEKAIIIgQEfyAEKAIUBUF/CyEEIAItADAhBSABKwMIIQwgASsDACENIAMgCyAKoiIKOQMwIANBBjYCKCADRBgtRFT7Ifk/RAAAAAAAAAAAIAYbOQMgIAMgCjkDGCADIAQ2AhQgA0EANgIQIANBQGsgDRAyOQMAIAMgDEQAAAAAAABSwKAQMjkDSCADIAogCqBEAAAAAAAACECjIAm4okQAAAAAAADgP6I5AzggAyAHNgIMIAMgCDYCCCADQQQ2AgAgA0ECQQEgBUHyAEYbQQAgBUHsAEcbNgIEIABB88kDIAMQHiAAIAIoAgAQxAogAEGS3AQQGxogA0HQAGokAAsLAEGg5ApBADYCAAsLAEGg5ApBATYCAAuCAQECfwJAAkAgAEUgAUVyRQRAAkAgACgCKCICIAEoAigiA0cEQCACKAIAQQR2IgAgAygCAEEEdiIBSQ0EIAAgAU0NAQwDCyAAKAIAQQR2IgAgASgCAEEEdiIBSQ0DIAAgAUsNAgtBAA8LQdTzAkHgvQFBhwNBloMBEAAAC0EBDwtBfwsLACAAQdywBBAbGgvZAQIDfwF+IwBBMGsiASQAIAAoAhAhAiAAQYjaBBAbGiAAKAIMKAIAIgMpAgAhBCABIAMoAgg2AiggASAENwMgIABBhu8EIAFBIGoQHiABIAIoAggQITYCECAAQY+BBCABQRBqEB4gASAAKAKoASAAKAKkAWw2AgAgAEHQxwQgARAeIABB6+IDEBsaIABBnogEEBsaIABB/OsDEBsaIABB1ocEEBsaIABB7dwEEBsaIABB77AEEBsaIABBktoEEBsaIABB85QDEBsaIABBgdwEEBsaIAFBMGokAAsYACAAEIoGIAAQ1QQgAEHMACABIAIQvwgLEwAgACABIAIgA0HCAEHiABCXCgsTACAAIAEgAiADQfAAQdAAEJcKC6MBAQJ/IwBBEGsiAyQAIAAoAhAoAgwgABCKBiAAENUEIAIEfwJAIAJBfnFBAkYEQCAAIAIgAUECEMAIDAELIAAQiQYLQbvLAwVBw8oDCyECQQJ0QfC/CGooAgAiACACEPIBIAMgASkDCDcDCCADIAEpAwA3AwAgACADENcCIAAgASsDECABKwMAoRCWAiAAIAErAxggASsDCKEQlgIgA0EQaiQAC78CAQZ/IwBBMGsiAyQAIAAoAhAoAgwiB0ECdEHwvwhqKAIAIgRBuMsDEPIBIAQgAigCBCsDEBCWAiAAQfH/BCACKAIEKAIAEMADIAAQ1QQgAigCBCIGBEAgBigCGEH/AHEhBQsgAi0AMCEGAkBB4OMKKAIALwEoIghBD0kNACAIQQ9rIghBAksNACAIQQJ0QaDACGooAgAgBXEiBSAHQQJ0QfDjCmoiBygCAEYNACADIAU2AiAgBEGHyAMgA0EgahCEASAHIAU2AgALIAEgAisDGCABKwMIoDkDCCAEQanLAxDyASADIAEpAwg3AxggAyABKQMANwMQIAQgA0EQahDXAiADQX8gBkHyAEYgBkHsAEYbNgIAIARB98oDIAMQhAEgBCACKwMgEJYCIABB8f8EIAIoAgAQwAMgA0EwaiQAC8sCACAAKAIQKAIIIQBB8OIKECQEQCAAQeDjCigCACgCEEHw4goQwgEQcQtBgOMKECQEQCAAQeDjCigCACgCGEGA4woQwgEQcQtBkOMKECQEQCAAQeDjCigCACgCFEGQ4woQwgEQcQtBsOMKECQEQCAAQeDjCigCACgCHEGw4woQwgEQiwYLQcDjChAkBEAgAEHg4wooAgAoAiRBwOMKEMIBEHELQdDjChAkBEAgAEHg4wooAgAoAiBB0OMKEMIBEHELQYilCkKAgICAgICA+D83AwBB+KQKQoCAgICAgID4PzcDAEHopApCgICAgICAgPg/NwMAQeCkCkKAgICAgICA+D83AwBByKQKQoCAgICAgID4PzcDAEHApApCgICAgICAgPg/NwMAQYjkCkIANwMAQfjjCkIANwMAQZzkCkEANgIAQZTkCkEANgIAC30AIAAoAhAoAgghAEHw4goQJARAIABB4OMKKAIAKAIIQfDiChDCARBxC0Gw4woQJARAIABB4OMKKAIAKAIMQbDjChDCARCLBgtBgKUKQoCAgICAgID4PzcDAEHwpApCgICAgICAgPg/NwMAQZjkCkEANgIAQZDkCkEANgIAC3MAIAAoAhAoAggiAEHg4wooAgAoAgBB8OIKEMIBEHEgACgCECgCDARAIABB4OMKKAIAKAIEQbDjChDCARBxC0HYpApCgICAgICAgPg/NwMAQbikCkKAgICAgICA+D83AwBBhOQKQQA2AgBB9OMKQQA2AgALxAMBBH8jAEEQayIDJAAgACgCECgCCCEBQeTjCigCAEUEQEHs4wpBoAI2AgBB6OMKQaECNgIAQeTjCkHw7wkoAgA2AgALIAEoAkwiAigCBCEEIAJB5OMKNgIEAkACQAJAAkACQAJAIAAoAkAOBwEBBAACAgIDCyAAIAEgAEEBEMcIDAQLIAAtAJsBQQhxDQMgASAAENUIDAMLQeDiChAkBEBB4OMKKAIAKAIAIgJFBEAgAUEAQcHDARCIASECQeDjCigCACACNgIACyABIAJB4OIKEMIBEHELIAEoAhAoAgwEQCABQeDjCigCACgCBEGg4woQwgEQiwYLQQAhAiABQb7jAEHg4wooAgAoAiwQkAcDQCACQQhGRQRAIAJBBHRB4OIKahBcIAJBAWohAgwBCwtB4OMKKAIAEBhB0KQKQoCAgICAgID4PzcDAEGwpApCgICAgICAgPg/NwMAQYDkCkEANgIAQfDjCkEANgIAIAAtAJsBQQhxDQIgASAAENUIDAILIANB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IAUoAggoAghB4IYKRwRAIAQgATYCGCAGIQMLIAFBACAEQegAaiACIAQtAGcgAxCWBEUNASABIAIQ3wkMAQsgASAGIARB6ABqIANB6cUBIAMbIgMgBC0AZ0EAEJYERQ0AIAEQISEBIAQgAzYCCCAEIAI2AgQgBCABNgIAQd+9BCAEECoLIARBADYCjAEgACAEQegAakEoEB8aCyAEQZABaiQACxoAIAAoAhAoAgwiAARAIAAoAiwQGCAAEBgLC6kFAgR8CH9BMBBSIQYgACgCECgCCCgCCCgCBCEKAnwgAEHU2wooAgBE////////739EexSuR+F6hD8QTCAAQdDbCigCAET////////vf0R7FK5H4XqUPxBMIgEQKSICvUL/////////9/8AUiABvUL/////////9/8AUnJFBEAgACgCECIFQpqz5syZs+bUPzcDICAFQpqz5syZs+bUPzcDKETNzMzMzMwMQAwBCyACRGEyVTAqqTM/ECMhASAAKAIQIgUgASACIAJEAAAAAAAAAABkGyIBOQMgIAUgATkDKCABRAAAAAAAAFJAogshA0EBIQtBASAAQYjcCigCACAKQQAQYiIHIAdBAU0bIAdBAEcgAEG83AooAgBEAAAAAAAA8D9EAAAAAAAAAAAQTCIERAAAAAAAAAAAZHEiCmoiBUEBdEEQEBoiCCADRAAAAAAAAOA/oiICOQMYIAggAjkDECAIIAKaIgE5AwggCCABOQMAQQIhCQJAIAdBAkkEQCACIQEMAQsgAiEBA0AgByALRkUEQCAIIAlBBHRqIgwgAUQAAAAAAAAQQKAiAZo5AwggDCACRAAAAAAAABBAoCICmjkDACAMIAI5AxAgDCABOQMYIAtBAWohCyAJQQJqIQkMAQsLIAIgAqAhAwsgCkUgBSAHTXJFBEAgCCAJQQR0aiIFIAREAAAAAAAA4D+iIgQgAaAiATkDGCAFIAQgAqAiAjkDECAFIAGaOQMIIAUgApo5AwALIAZCADcDECAGQQI2AgggBiAHNgIEIAZBATYCACAGIAg2AiwgBkIANwMYIAZCADcDICAAKAIQIgAgAiACoEQAAAAAAABSQKMiATkDcCAAIAE5A2ggACADRAAAAAAAAFJAoyIBOQMoIAAgATkDICAAIAY2AgwLwQMCBH8CfCMAQdAAayIBJAAgABAtKAIQKAJ0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IAMgBBCIBSAFQQhqIgUgBkkNAAwDCwALA0AgAS0ANg0CIAEoAiRBAUYEQCABKAIYQQFGDQMLIAUgASACIAMgBBCIBSAFQQhqIgUgBkkNAAsMAQsgASACNgIUIAEgASgCKEEBajYCKCABKAIkQQFHDQAgASgCGEECRw0AIAFBAToANgsLcAECfyAAIAEoAghBABDbAQRAIAEgAiADEO8GDwsgACgCDCEEIABBEGoiBSABIAIgAxCyCgJAIARBAkkNACAFIARBA3RqIQQgAEEYaiEAA0AgACABIAIgAxCyCiABLQA2DQEgAEEIaiIAIARJDQALCwszACAAIAEoAghBABDbAQRAIAEgAiADEO8GDwsgACgCCCIAIAEgAiADIAAoAgAoAhwRBwALGgAgACABKAIIQQAQ2wEEQCABIAIgAxDvBgsLgwUBBn8jAEFAaiIEJAACf0EBIAAgAUEAENsBDQAaQQAgAUUNABojAEEQayIGJAAgBiABKAIAIgNBCGsoAgAiBTYCDCAGIAEgBWo2AgQgBiADQQRrKAIANgIIIAYoAggiA0Ho6AlBABDbASEFIAYoAgQhBwJAIAUEQCAGKAIMIQEjAEFAaiIDJAAgA0FAayQAQQAgByABGyEDDAELIAMhBSMAQUBqIgMkACABIAdOBEAgA0IANwIcIANCADcCJCADQgA3AiwgA0IANwIUIANBADYCECADQejoCTYCDCADIAU2AgQgA0EANgI8IANCgYCAgICAgIABNwI0IAMgATYCCCAFIANBBGogByAHQQFBACAFKAIAKAIUEQsAIAFBACADKAIcGyEICyADQUBrJAAgCCIDDQAjAEFAaiIDJAAgA0EANgIQIANBuOgJNgIMIAMgATYCCCADQejoCTYCBEEAIQEgA0EUakEAQScQOBogA0EANgI8IANBAToAOyAFIANBBGogB0EBQQAgBSgCACgCGBEKAAJAAkACQCADKAIoDgIAAQILIAMoAhhBACADKAIkQQFGG0EAIAMoAiBBAUYbQQAgAygCLEEBRhshAQwBCyADKAIcQQFHBEAgAygCLA0BIAMoAiBBAUcNASADKAIkQQFHDQELIAMoAhQhAQsgA0FAayQAIAEhAwsgBkEQaiQAQQAgA0UNABogBEEIakEAQTgQOBogBEEBOgA7IARBfzYCECAEIAA2AgwgBCADNgIE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KAIIEPgGIghBf0YNBCAGIAcoAgBrIAhJDQYDQCAIBEAgAi0AACEFIAcgBygCACIJQQFqNgIAIAkgBToAACAIQQFrIQggAkEBaiECDAELCyAEIAQoAgBBBGoiAjYCACACIQgDQCADIAhGBEAgAyEIDAULIAgoAgBFDQQgCEEEaiEIDAALAAsgBCACNgIADAMLIAQoAgALIANHIRAMAwsgBygCACEFDAELC0ECIRALIA9BEGokACAQCwkAIAAQ4QoQGAszACMAQRBrIgAkACAAIAQ2AgwgACADIAJrNgIIIABBDGogAEEIahCvCygCACAAQRBqJAALNAADQCABIAJGRQRAIAQgAyABLAAAIgAgAEEASBs6AAAgBEEBaiEEIAFBAWohAQwBCwsgAQsMACACIAEgAUEASBsLKgADQCABIAJGRQRAIAMgAS0AADoAACADQQFqIQMgAUEBaiEBDAELCyABCw8AIAAgASACQbClCRCgCgseACABQQBOBH9BsKUJKAIAIAFBAnRqKAIABSABC8ALDwAgACABIAJBpJkJEKAKCx4AIAFBAE4Ef0GkmQkoAgAgAUECdGooAgAFIAELwAsJACAAENcKEBgLNQADQCABIAJGRQRAIAQgASgCACIAIAMgAEGAAUkbOgAAIARBAWohBCABQQRqIQEMAQsLIAELDgAgASACIAFBgAFJG8ALKgADQCABIAJGRQRAIAMgASwAADYCACADQQRqIQMgAUEBaiEBDAELCyABCw8AIAAgASACQbClCRCfCgseACABQf8ATQR/QbClCSgCACABQQJ0aigCAAUgAQsLDwAgACABIAJBpJkJEJ8KCx4AIAFB/wBNBH9BpJkJKAIAIAFBAnRqKAIABSABCws6AANAAkAgAiADRg0AIAIoAgAiAEH/AEsNACAAQQJ0QYC0CWooAgAgAXFFDQAgAkEEaiECDAELCyACCzoAA0ACQCACIANGDQAgAigCACIAQf8ATQRAIABBAnRBgLQJaigCACABcQ0BCyACQQRqIQIMAQsLIAILSQEBfwNAIAEgAkZFBEBBACEAIAMgASgCACIEQf8ATQR/IARBAnRBgLQJaigCAAVBAAs2AgAgA0EEaiEDIAFBBGohAQwBCwsgAQslAEEAIQAgAkH/AE0EfyACQQJ0QYC0CWooAgAgAXFBAEcFQQALCwkAIAAQ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AkAgAEH8AWogAEH4AWoQWw0AIAAoArABIAEQJSACakYEQCABECUhAyABIAEQJUEBdBBBIAEgARBVEEEgACADIAFBABBDIgJqNgKwAQsgAEH8AWoiAxCDASAAQQdqIABBBmogAiAAQbABaiAALADPASAALADOASAAQcABaiAAQRBqIABBDGogAEEIaiAAQdABahCIBw0AIAMQlgEaDAELCwJAIABBwAFqECVFDQAgAC0AB0EBRw0AIAAoAgwiAyAAQRBqa0GfAUoNACAAIANBBGo2AgwgAyAAKAIINgIACyAFIAIgACgCsAEgBBCPCzgCACAAQcABaiAAQRBqIAAoAgwgBBCvASAAQfwBaiAAQfgBahBbBEAgBCAEKAIAQQJyNgIACyAAKAL8ASABEDUaIABBwAFqEDUaIABBgAJqJAALjwMBAX8jAEGAAmsiACQAIAAgAjYC+AEgACABNgL8ASADEKgCIQYgAEHEAWogAyAAQfcBahClBCAAQbgBahBUIgEgARBVEEEgACABQQAQQyICNgK0ASAAIABBEGo2AgwgAEEANgIIA0ACQCAAQfwBaiAAQfgBahBbDQAgACgCtAEgARAlIAJqRgRAIAEQJSEDIAEgARAlQQF0EEEgASABEFUQQSAAIAMgAUEAEEMiAmo2ArQBCyAAQfwBaiIDEIMBIAYgAiAAQbQBaiAAQQhqIAAsAPcBIABBxAFqIABBEGogAEEMakHAsQkQ2QMNACADEJYBGgwBCwsCQCAAQcQBahAlRQ0AIAAoAgwiAyAAQRBqa0GfAUoNACAAIANBBGo2AgwgAyAAKAIINgIACyAFIAIgACgCtAEgBCAGEJALNwMAIABBxAFqIABBEGogACgCDCAEEK8BIABB/AFqIABB+AFqEFsEQCAEIAQoAgBBAnI2AgALIAAoAvwBIAEQNRogAEHEAWoQNRogAEGAAmokAAuPAwEBfyMAQYACayIAJAAgACACNgL4ASAAIAE2AvwBIAMQqAIhBiAAQcQBaiADIABB9wFqEKUEIABBuAFqEFQiASABEFUQQSAAIAFBABBDIgI2ArQBIAAgAEEQajYCDCAAQQA2AggDQAJAIABB/AFqIABB+AFqEFsNACAAKAK0ASABECUgAmpGBEAgARAlIQMgASABECVBAXQQQSABIAEQVRBBIAAgAyABQQAQQyICajYC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AjgCQCABQeIlQQBBARA2BEAgASgCECgCCA0BCyACLQCbAUEEcQ0AQZqwBEEAEDdBfyEBDAELAkAgBQRAIAVBgCAQTyIGNgIAIAYNAQtBwf4AQQAQN0F/IQEMAQsgAkKAIDcCLCACIAY2AiggACABEJ8GIQEgAhCHBCABRQRAIAUgAigCKDYCACADIAIoAjA2AggLIAAQlQQLIARBEGokACADKAIMIQACQCABRQRAIAAhBwwBCyAAEBgLIANBEGokACAHCwsAEPYMELwMEJMKCzUAIAFB4iVBAEEBEDYEQCABKAIQKAKUASIABEAgASAAEQEAIAEoAhBBADYClAELIAEQ0wkLCwsAIAAgASACEJQGCwwAIAAQlwYgABCWBgsFABCVBgsHACAAELkBCwsAIAAgASACEJAHCw0AIAAgASACQQIQ4wYLDQAgACABIAJBARDjBgsNACAAIAEgAkEAEOMGCwsAIAAgAUEBEJIBCxwAIAAgACABQQEQjQEgACACQQEQjQFBAEEBEF4LCwAgACABQQEQjQELCwAgACABQQEQjAELCwAgACABQQAQjAELCQAgACABENUCCwkAIAAgARCsAQs2AQF/QQBBAUHC8ABBvdEBELUFGhD2DBC8DBCTCiAAENwNA0BBABDcDSIBBEAgARC5AQwBCwsLRwEBfyMAQRBrIgMkACADQQA7AA0gA0EAOgAPIANBAkEAIAIbIAFyOgAMIAMgAygCDDYCCCAAIANBCGpBABDjASADQRBqJAALsAMCBX8BfiMAQRBrIgMkACADQQA2AgwCfxCVBiEEIwBB4ABrIgEkACABQgA3A1ggAUIANwNQIAFCADcDSAJAAkACf0EAIABFDQAaAkADQCACQQVHBEAgACACQQJ0QbCWBWooAgAQLkUNAiACQQFqIQIMAQsLIAEgADYCAEHu+wQgARA3QQAMAQsgBCACQQJ0aigCQCECIAFCADcDQEEAIQADQCACBEAgAUE4aiACKAIEQToQ0AECQCAABEAgASABKQNANwMoIAEgASkDODcDICABQShqIAFBIGoQ+gYNAQsgASgCOCIARQ0EIAAgASgCPCIAEJACIgVFDQUgASAFNgJcIAFByABqQQQQJiEAIAEoAkggAEECdGogASgCXDYCAAsgASABKQM4IgY3A0AgBqchACACKAIAIQIMAQsLIAFB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iAFqQQAQGUECdGogAygCuAEQzgwEQCADIAMpA7gBNwOAASADIAMpA7ABNwN4IAchAiADKAKwASADQfgAakEAEBlBAnRqIAMoArgBENAMIgsNAUEAIQtBouwDQQAQKkEAIQIDQCACIAMoArgBTw0FIAMgAykDuAE3A1AgAyADKQOwATcDSCADQcgAaiACEBkhBAJAAkACQCADKALAASIFDgICAAELIAMoArABIARBAnRqKAIAEBgMAQsgAygCsAEgBEECdGooAgAgBREBAAsgAkEBaiECDAALAAsCQCAMDQAgA0GYAWogABD9AiAAQQhBCBDqBSECQcTtA0EAECogASsDACINIAK3Ig5mIA4gASsDCCIPZXIEQCADQUBrIA85AwAgAyANOQM4IAMgAjYCMEHj8AQgA0EwahCAAQwBCyADKwOYASIOIA1lIAMrA6ABIhAgD2VyRQ0AIAMgDzkDKCADIA05AyAgAyAQOQMYIAMgDjkDEEGV8QQgA0EQahCAAQtBACECA0AgAiADKAK4AU8NBCADIAMpA7gBNwMIIAMgAykDsAE3AwAgAyACEBkhBAJAAkACQCADKALAASIFDgICAAELIAMoArABIARBAnRqKAIAEBgMAQsgAygCsAEgBEECdGooAgAgBREBAAsgAkEBaiECDAALAAsDQCACRQRAQQAhAgNAIAIgAygCuAFPDQYgAyADKQO4ATcDYCADIAMpA7ABNwNYIANB2ABqIAIQGSEEAkACQAJAIAMoAsABIgUOAgIAAQsgAygCsAEgBEECdGooAgAQGAwBCyADKAKwASAEQQJ0aigCACAFEQEACyACQQFqIQIMAAsACyACKAIQIANBmAFqIAIgC0EAEMUMIAMpA5gBNwOQASADKAK4AUEATgRAIANBsAFqQQQQjAIgAyADKQO4ATcDcCADIAMpA7ABNwNoIAIgAygCsAEgA0HoAGpBABAZQQJ0aiADKAK4AUEAEMQMIAIoAhAoArABIQIMAQsLQYnNAUGDugFBggJBzDAQAAALQYnNAUGDugFB4QFBzDAQAAALIAAgChAdIQoMBQtBASEMCyADQbABaiICQQQQMSACEDQLIAAgBxAwIQcMAAsACwsgCwRAIAsQzwwLIANB0AFqJAAgDAtbAQJ/IAAQHCEBA0AgAQRAIAAgARAsIQIDQCACBEAgAhDAAiAA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AAAAUkCjoDkDMCAEIAUrAzhEAAAAAAAAUkCjIAOhOQM4CyAAIAQ2AiQgACAGKAIMIgE2AiAgBCABIAAgAEEQahDnDEEACyAGQRBqJAALEQAgACABQeD+CkHc/goQ5QYLLQECfUF/IAIgACgCAEECdGoqAgAiAyACIAEoAgBBAnRqKgIAIgReIAMgBF0bCxIAIABBNGoQ9QMgAEEoahD1AwsJACAAEJINEBgLGQECfiAAKQMIIgIgASkDCCIDViACIANUawsdACAAKAIAQQR2IgAgASgCAEEEdiIBSyAAIAFJawtEAgF/AnwgACgCBCgCBCABKAIEKAIERgRAIAAoAgBFIAEoAgBBAEdxDwsgACsDECIDIAErAxAiBGQEf0EABSADIARjCwsJACAAEKENEBgLCQAgABDsBxAYC4kIAgl/AnwjAEGgAWsiAyQAIAAQog0gA0EANgKcASAAQQRqIQcgAEEkaiEEAkACQAJAA0AgBCgCACECRP///////+9/IQogBCgCBCIFIQEDfCACIAVGBHwgCkRIr7ya8td6vmNFIAEgBUZyRQRAIAEgBCgCBEEEaygCADYCACAEIAQoAgRBBGs2AgQLIAoFIAogAigCACIGELUCIgtkBEAgAyAGNgKcASALIQogAiEBCyACQQRqIQIMAQsLREivvJry13q+YwRAIAMoApwBIgItABxBAUYNAiADIAIoAgAoAiAiATYCBCADIAIoAgQiBigCICIFNgKYASABIAVHBEAgASAFIAIQrw0MAgsgCEGRzgBODQMgAigCACEJIwBBEGsiBSQAIAEgASgCACgCAEEAEOAFIAUgASAGIAlBAEEAQQAQ8AcgBSgCCCEGIAVBEGokACABIANBBGoiBSADQZgBaiAGEO8HIAFBAToAKCADIAY2AhAgBCADQRBqIgEQwAEgAygCBCADKAKYASACEK8NIAEgByAFEPYDIAhBAWohCAwBCwsgBxDeBUEAIQEDQCABIAAoAhxPDQMgAUECdCABQQFqIQEgACgCGGooAgAiBBC1AkRIr7ya8td6vmNFDQALIANBEGoiAUHIlAk2AjggAUG0lAk2AgAgAUHUlAkoAgAiADYCACABIABBDGsoAgBqQdiUCSgCADYCACABIAEoAgBBDGsoAgBqIgJBADYCFCACIAFBBGoiADYCGCACQQA2AgwgAkKC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ACxBAXEEQCACQQFxRQ0CIAErABAiESADKwAQIhJjDQIgESASZA0BIAErABgiESADKwAYIhJjDQIgESASZCECCyACDQIgAS0AVCECIAMtAFRBAXEEQCACQQFxRQ0CIAErADgiESADKwA4IhJjDQIgESASZA0BIAErAEAiESADKwBAIhJjDQIgESASZCECCyACDQIgBygCECgCpAFBwAFxIgEgACgCECgCpAFBwAFxIgJJDQEgASACSw0AQX8hAiAHKAIAQQR2IgEgACgCAEEEdiIASQ0CIAAgAUkhAgwCC0EBIQIMAQtBfyECCyAFQbAEaiQAIAILQAICfAF/IAArAwAiAiABKwMAIgNkBEAgACsDCCABKwMIZUUPCyACIANjBH9BAEF/IAArAwggASsDCGYbBUEACwv0AgEJfyMAQRBrIgYkACAAKAIwIQEjAEEQayIDJAADQAJAQQAhByACIAEoAgBPDQADQCACQQV0IgUgASgCBGoiCEEIaiEEIAgoABAgB00EQCAEQQQQMSABKAIEIAVqQQhqEDQgAkEBaiECDAMFIAMgBCkCCDcDCCADIAQpAgA3AwAgAyAHEBkhBAJAAkACQCABKAIEIAVqIgUoAhgiCA4CAgABCyAFKAIIIARBAnRqKAIAEBgMAQsgBSgCCCAEQQJ0aigCACAIEQEACyAHQQFqIQcMAQsACwALCyABKAIEEBggARAYIANBEGokACAAQRhqIQEDQCAAKAAgIAlLBEAgBiABKQIINwMIIAYgASkCADcDACAGIAkQGSECAkACQAJAIAAoAigiAw4CAgABCyABKAIAIAJBAnRqKAIAEBgMAQsgASgCACACQQJ0aigCACADEQEACyAJQQFqIQkMAQsLIAFBBBAxIAEQNCAAEBggBkEQaiQACxsBAnxBfyAAKwMAIgIgASsDACIDZCACIANjGwsPACAAKAIQEJkBGiAAEBgLIAECfEEBQX9BACAAKwMAIgIgASsDACIDYxsgAiADZBsLWgIBfAF/QX8gACsDCCABKwMIoSICREivvJry13o+ZCACREivvJry13q+YxsiAwR/IAMFQX8gACsDACABKwMAoSICREivvJry13o+ZCACREivvJry13q+YxsLC1oCAXwBf0F/IAArAwAgASsDAKEiAkRIr7ya8td6PmQgAkRIr7ya8td6vmMbIgMEfyADBUF/IAArAwggASsDCKEiAkRIr7ya8td6PmQgAkRIr7ya8td6vmMbCwuTAQEFfyMAQRBrIgIkACAAQQRqIQEDQCADIAAoAgxPRQRAIAIgASkCCDcDCCACIAEpAgA3AwAgAiADEBkhBAJAAkACQCAAKAIUIgUOAgIAAQsgASgCACAEQQJ0aigCABAYDAELIAEoAgAgBEECdGooAgAgBREBAAsgA0EBaiEDDAELCyABQQQQMSABEDQgAkEQaiQACyUAIAAoAgAoAhAoAvgBIgAgASgCACgCECgC+AEiAUogACABSGsLEgAgAUHatgEgAigCCEEBEDYaCxIAIAFB6bYBIAIoAgRBARA2GgsSACABQcq2ASACKAIAQQEQNhoLGQBBfyAAKAIAIgAgASgCACIBSyAAIAFJGwslACAAKAIAKAIQKAL0ASIAIAEoAgAoAhAoAvQBIgFKIAAgAUhrCyUAIAEoAgAoAhAoAvQBIgEgACgCACgCECgC9AEiAEogACABSmsLIwAgACgCECgCAEEEdiIAIAEoAhAoAgBBBHYiAUsgACABSWsLlQEBBH8jAEEQayIBJAAgAARAA0AgACgACCACTQRAIABBBBAxIAAQNAUgASAAKQIINwMIIAEgACkCADcDACABIAIQGSEDAkACQAJAIAAoAhAiBA4CAgABCyAAKAIAIANBAnRqKAIAEBgMAQsgACgCACADQQJ0aigCACAEEQEACyACQQFqIQIMAQsLCyAAEBggAUEQaiQACxQAIAAoAhBBHGogAEcEQCAAEBgLC44BAgF/BHwjAEEwayIDJAAgAyABKAIIIgQ2AiQgAyAENgIgIABBivwEIANBIGoQHiACKwMAIQUgAisDECEGIAIrAwghByACKwMYIQggAyABKAIINgIQIAMgCCAHoEQAAAAAAADgP6I5AwggAyAGIAWgRAAAAAAAAOA/ojkDACAAQbH5BCADEB4gA0EwaiQACwIAC90DAgF/AnwjAEGgAWsiBCQAAkACQCAABEAgAUUNASABKAIIRQ0CIAEoAkQEQCAEIAIpAwA3A2AgBCACKQMINwNoIAQgAikDGDcDiAEgBCACKQMQNwOAASAEIAQrA2giBTkDmAEgBCAEKwNgIgY5A3AgBCAEKwOAATkDkAEgBCAEKwOIATkDeCADBEBBACECIABBpssDQQAQHgNA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AzggBEIANwMwIABBh9MEIARBMGoQHiAEQfT8CigCAEECazYCICAEQgA3AxAgBEIANwMYIABBptQEIARBEGoQHiAEIAM2AgAgAEHAzgMgBBAeIAMQGAUgASAFQQR0aiIGKwMAIQggBisDCCEJIAArA/gDIQogACsDgAQhCyAEQgA3A4ABIAQgCSALoDkDeCAEIAggCqA5A3AgAEGZ3wEgBEHwAGoQHiAFQQFqIQUMAQsLCwUgASAFQQR0aiIHKwMAIQggBysDCCEJIAArA/gDIQogACsDgAQhCyAEIAAoAhArA6ABOQPoAiAEQgA3A+ACIAQgCSALoDkD2AIgBCAIIAqgOQPQAiAAQZCmBCAEQdACahAeIAVBAWohBQwBCwsgBEGgA2okAAupBQICfwl8IwBB8AJrIgMkACAAQe2uBBAbGkH0/ApB8PwKKAIAQQZrNgIAIAArA4AEIQwgACsD+AMhDSAAKAIQIgQrA6ABIQUgACsD6AMhBiABKwMAIQcgASsDECEIIAArA/ADIQogASsDCCELIAErAxghCSADQbgCaiIBIARBEGpBKBAfGiABQwAAAAAQvAMhASADQgA3A+gCIANCgICAgICAgPg/NwOgAiADQgA3A+ACIAMgBSAGIAggB6GiIgUgCiAJIAuhoiIIoCIJo0QAAAAAAADgP6JEAAAAAAAAFECiOQOoAiADQeACaiIEQfylBCADQaACahB0IAMgCDkDkAIgAyAJRAAAAAAAANA/ojkDiAIgAyAFOQOAAiAEQavTBCADQYACahB0IAMgACgC6AKyuzkD8AEgA0IANwPoASADQoCAgICAgKCrwAA3A+ABIARBh9MEIANB4AFqEHQgA0H0/AooAgA2AtABIAMgBiAHIA2goiIGOQPAASADIAogCyAMoKIiBzkDyAEgBEGm1AQgA0HAAWoQdCADIAE2ArABIARBwM4DIANBsAFqEHQgACAEEP8FEBsaIAEQGCACBEAgA0GIAWoiASAAKAIQQThqQSgQHxogAUMAAAAAELwDIQEgA0IANwOAASADQgA3A3ggA0IANwNwIABBs90EIANB8ABqEB4gA0KAgICAgICA+D83A2AgAyAIOQNYIAMgBTkDUCAAQavTBCADQdAAahAeIANBQGsgACgC6AKyuzkDACADQgA3AzggA0IANwMwIABBh9MEIANBMGoQHiADQfT8CigCADYCICADIAY5AxAgAyAHOQMYIABBptQEIANBEGoQHiADIAE2AgAgAEHAzgMgAxAeIAEQGAsgA0HgAmoQXCADQfACaiQAC+gDAgN/BnwjAEHQAWsiAyQAIAIoAgAhBCACKAIEIgUrAxAhBiADIAUoAgA2ArABIAMgBjkDqAEgAyAENgKgASAAQY/+AyADQaABahAeQfT8CkHw/AooAgBBCWs2AgACfCABKwMAIgYgAi0AMCIEQewARg0AGiAEQfIARgRAIAYgAisDIKEMAQsgBiACKwMgRAAAAAAAAOC/oqALIQYgACsD8AMhByAAKwOABCEIIAErAwghCSAAKwPoAyEKIAArA/gDIQsgA0H4AGoiASAAKAIQQRBqQSgQHxogAUMAAAAAELwDIQEgA0IANwPIASADQgA3A8ABIAIoAgQoAgAhBCACKAIAIQUgA0IANwNwIANCgICAgICAgOg/NwNoIAMgBTYCZCADIAQ2AmAgA0HAAWoiBEGX3AMgA0HgAGoQdCADIAIoAgQrAxAgACsD6AOiOQNQIARB7KUEIANB0ABqEHQgA0FAayAAKALoArK7OQMAIANCADcDOCADQgA3AzAgBEGH0wQgA0EwahB0IANB9PwKKAIANgIgIAMgCiAGIAugojkDECADIAcgCSAIoKI5AxggBEGm1AQgA0EQahB0IAMgATYCACAEQcDOAyADEHQgACAEEP8FEBsaIAQQXCABEBggA0HQAWokAAscACAAQYmyBBAbGkHw/ApB8PwKKAIAQQVqNgIACxwAIABB97EEEBsaQfD8CkHw/AooAgBBBWs2AgALCwAgAEGitAQQGxoLLQEBfyMAQRBrIgEkACABIAAoAhAoAggQITYCACAAQZyBBCABEB4gAUEQaiQACwsAIABB84cEEBsaCxwAIABB3ocEEBsaQfD8CkHw/AooAgBBAms2AgALCwAgAEHYswQQGxoLCwAgAEHGswQQGxoLpgICB38BfiMAQTBrIgQkACAEQQxqQQBBJBA4GiAEIAE2AhwgACABEG4hAgNAIAIEQCAAIAIgARByIAAgAkEAEM4IIQIMAQsLIAEpAwghCkEAIQFBACEDAkAgACgCMCICBEAgCqchBSACKAIAIgYEQEEBIAIoAgh0IQMLIANBAWshBwNAIAEgA0YNAgJAAkAgBiABIAVq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b3BlbkF0dHJpYnV0ZUVudGl0aWVzID09IG9wZW5FbnRpdHkAaW5maW5pdHkAbGlzdC0+c2l6ZSA8IGxpc3QtPmNhcGFjaXR5AHJldC5zaXplIDwgcmV0LmNhcGFjaXR5AGZhbnRhc3kAL3N2Zy9pdm9yeQBvdXQgb2YgbWVtb3J5AEZlYnJ1YXJ5AEphbnVhcnkAZ3ZwbHVnaW5fZG90X2xheW91dF9MVFhfbGlicmFyeQBndnBsdWdpbl9uZWF0b19sYXlvdXRfTFRYX2xpYnJhcnkAZ3ZwbHVnaW5fY29yZV9MVFhfbGlicmFyeQBnYXRoZXJfdGltZV9lbnRyb3B5AGNvcHkAYWxiYW55AEp1bHkAU3BhcnNlTWF0cml4X211bHRpcGx5AGVxdWFsbHkAYXNzZW1ibHkAc3VtbWVyc2t5AHNoeQBzYXRpc2Z5AGJlYXV0aWZ5AG5vanVzdGlmeQBDbGFzc2lmeQAvc3ZnL2xpZ2h0Z3JleQAvc3ZnL2RpbWdyZXkAL3N2Zy9kYXJrZ3JleQAvc3ZnL2xpZ2h0c2xhdGVncmV5AC9zdmcvZGFya3NsYXRlZ3JleQAvc3ZnL3NsYXRlZ3JleQB3ZWJncmV5AHgxMWdyZXkAL3N2Zy9ncmV5AG1vdmUgdG8gZnJvbnQgbG9jayBpbmNvbnNpc3RlbmN5AGV4dHJhY3RfYWRqYWNlbmN5AG1lcmdlX29uZXdheQBhcnJheQBhbGxvY0FycmF5AC9zdmcvbGlnaHRncmF5AC9zdmcvZGltZ3JheQAvc3ZnL2RhcmtncmF5AC9zdmcvbGlnaHRzbGF0ZWdyYXkAL3N2Zy9kYXJrc2xhdGVncmF5AC9zdmcvc2xhdGVncmF5AHdlYmdyYXkAeDExZ3JheQAvc3ZnL2dyYXkAVGh1cnNkYXkAVHVlc2RheQBXZWRuZXNkYXkAU2F0dXJkYXkAU3VuZGF5AE1vbmRheQBGcmlkYXkATWF5AC4uLy4uL2xpYi9jZ3JhcGgvZ3JhbW1hci55ACVtLyVkLyV5AHBvcnRob3l4AHBvcnRob195eAB4eHgAcHgAYm94AHZpZXdCb3gAY2hrQm91bmRCb3gAL01lZGlhQm94AGdldF9lZGdlX2xhYmVsX21hdHJpeABpZGVhbF9kaXN0YW5jZV9tYXRyaXgAbXVzdCBub3QgdW5kZWNsYXJlIHByZWZpeAB1bmJvdW5kIHByZWZpeABodG1sbGV4AG1heAAjJTAyeCUwMnglMDJ4ACMlMnglMnglMnglMngAIyUxeCUxeCUxeAAtKyAgIDBYMHgALTBYKzBYIDBYLTB4KzB4IDB4AHJhcnJvdwBsYXJyb3cASGVsdmV0aWNhLU5hcnJvdwBhcnJvd19sZW5ndGhfY3JvdwAvc3ZnL3Nub3cAc3ByaW5nX2VsZWN0cmljYWxfZW1iZWRkaW5nX3Nsb3cAL3N2Zy9saWdodHllbGxvdwAvc3ZnL2dyZWVueWVsbG93AC9zdmcvbGlnaHRnb2xkZW5yb2R5ZWxsb3cAL3N2Zy95ZWxsb3cAZmF0YWwgZXJyb3IgLSBzY2FubmVyIGlucHV0IGJ1ZmZlciBvdmVyZmxvdwBmbGV4IHNjYW5uZXIgcHVzaC1iYWNrIG92ZXJmbG93AGNvdXJpZXJuZXcAU3ByaW5nU21vb3RoZXJfbmV3AFRyaWFuZ2xlU21vb3RoZXJfbmV3AGRpYWdfcHJlY29uX25ldwBRdWFkVHJlZV9uZXcAU3RyZXNzTWFqb3JpemF0aW9uU21vb3RoZXIyX25ldwBuICYmIG5ldwBza2V3AHN0cnZpZXcAL3N2Zy9ob25leWRldwAgLWFuY2hvciB3AHNvcnR2AHBvdjpwb3YATm92AGludgBlcXVpdgBwaXYAbm9uYW1lLmd2AEdEX3JhbmsoZylbcl0uYXYgPT0gR0RfcmFuayhnKVtyXS52AGNjJXNfJXp1AGNjJXMrJXp1AC9zdmcvcGVydQBudQBtdQAlYyVsbHUAVGh1AHRhdQBUYXUATnUATXUAX3BvcnRfJXNfKCVkKV8oJWQpXyV1AE51bWJlciBvZiBpdGVyYXRpb25zID0gJXUATnVtYmVyIG9mIGluY3JlYXNlcyA9ICV1AHBsYWludGV4dABzdHJlc3N3dABpbnB1dAB0ZXh0bGF5b3V0AGRvdF9sYXlvdXQAbmVhdG9fbGF5b3V0AGluaXRMYXlvdXQAY2x1c3QAbWFwQ2x1c3QAbGFiZWxqdXN0AHNjQWRqdXN0AEF1Z3VzdABlZGdlc2ZpcnN0AG5vZGVzZmlyc3QAbWF4aW1hbF9pbmRlcGVuZGVudF9lZGdlX3NldF9oZWF2ZXN0X2VkZ2VfcGVybm9kZV9zdXBlcm5vZGVzX2ZpcnN0AGV4aXN0AHJlYWxpZ25Ob2RlbGlzdABhcHBlbmROb2RlbGlzdABzbG90X2Zyb21fY29uc3RfbGlzdABzbG90X2Zyb21fbGlzdABkZWZhdWx0ZGlzdABtaW5kaXN0AHBvd2VyX2Rpc3QAZ3JhcGhfZGlzdABhdmdfZGlzdABnZXRFZGdlTGlzdABpcXVlc3QAbG93YXN0AHNwcmluZ19lbGVjdHJpY2FsX2VtYmVkZGluZ19mYXN0AGd2X3NvcnQAdmlld3BvcnQAdGFpbHBvcnQAdW5leHBlY3RlZCBwYXJzZXIgc3RhdGUgLSBwbGVhc2Ugc2VuZCBhIGJ1ZyByZXBvcnQAaGVhZHBvcnQAaHRtbF9wb3J0AGluc2VydABSVHJlZUluc2VydABmaW5kU1ZlcnQAc3RhcnQAcGFydABlc3RpbWF0ZV90ZXh0X3dpZHRoXzFwdABxdW90AH9yb290AG5vdABtYWtlX3ZuX3Nsb3QAZW1pdF94ZG90AHhkb3Q6eGRvdABlcHM6eGRvdABzdmc6eGRvdABqcGc6eGRvdABwbmc6eGRvdABqcGVnOnhkb3QAZ2lmOnhkb3QAanBlOnhkb3QAeGRvdDEuNDp4ZG90AHhkb3QxLjI6eGRvdABzZG90AG1pZGRvdABndjpkb3QAcGxhaW4tZXh0OmRvdABkb3Q6ZG90AGVwczpkb3QAY2Fub246ZG90AHBsYWluOmRvdABzdmc6ZG90AGpwZzpkb3QAcG5nOmRvdABqcGVnOmRvdABnaWY6ZG90AGpwZTpkb3QAf2JvdABkb0RvdABzcGFuLT5mb250AHZhZ3hicHJpbnQAZW5kcG9pbnQAeGRvdF9wb2ludABkZWNpZGVfcG9pbnQAVW5zYXRpc2ZpZWQgY29uc3RyYWludAB0cmFuc3BhcmVudABjb21wb25lbnQAaW52YWxpZCBhcmd1bWVudABjb21tZW50AGp1bmsgYWZ0ZXIgZG9jdW1lbnQgZWxlbWVudABjZW50AGkgPT0gZWNudABhcmlhbG10AGdldF9oYXNoX3NlY3JldF9zYWx0AGNpcmN1aXQAcG9seV9pbml0AE11bHRpbGV2ZWxfaW5pdABuc2xpbWl0AG1jbGltaXQAUG9ydHJhaXQAbGlnaHQAdmlydHVhbF93ZWlnaHQAbGhlaWdodABLUF9SaWdodABCb29rbWFuLUxpZ2h0AGd0AEtQX0xlZnQAY2hhcnNldABpbnNldABiaXRhcnJheV9yZXNldABndl9hcmVuYV9yZXNldABzdWJzZXQAYml0YXJyYXlfc2V0AG1hdHJpeF9zZXQAc2NhcmxldAAvc3ZnL2Rhcmt2aW9sZXQAL3N2Zy9ibHVldmlvbGV0AC9zdmcvdmlvbGV0AFRyZWJ1Y2hldABhZ3hnZXQAdGFpbHRhcmdldABsYWJlbHRhcmdldABlZGdldGFyZ2V0AGhlYWR0YXJnZXQAYml0YXJyYXlfZ2V0AHN0eWxlc2hlZXQAc3RyaWN0AGFnY29weWRpY3QAYWdtYWtlZGF0YWRpY3QAcmVjLT5kaWN0ID09IGRhdGFkaWN0AHdyaXRlX2RpY3QAaGludGVyc2VjdABndmJpc2VjdABlbmNvZGluZyBzcGVjaWZpZWQgaW4gWE1MIGRlY2xhcmF0aW9uIGlzIGluY29ycmVjdABhc3BlY3QAbGF5ZXJzZWxlY3QAS1BfU3VidHJhY3QAUXVhZFRyZWVfcmVwdWxzaXZlX2ZvcmNlX2ludGVyYWN0AGNvbXBhY3QAT2N0AHJlcXVlc3RlZCBmZWF0dXJlIHJlcXVpcmVzIFhNTF9EVEQgc3VwcG9ydCBpbiBFeHBhdABsYWJlbGZsb2F0AGxhYmVsX2Zsb2F0AFNwYXJzZU1hdHJpeF9mcm9tX2Nvb3JkaW5hdGVfZm9ybWF0AC9zdmcvd2hlYXQAbW9uY2hhaW5zX2F0AFNhdABBZ3JhcGhpbmZvX3QAQWdlZGdlaW5mb190AEFnbm9kZWluZm9fdABcdAByb3cgPCBtZS0+bnJvd3MAbWludXMAb3BsdXMAcmFkaXVzAGhlYXJ0cwBzYW1wbGVwb2ludHMAZGlyZWRnZWNvbnN0cmFpbnRzAGxldmVsIGFzc2lnbm1lbnQgY29uc3RyYWludHMAeHkgcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAeXggcHNldWRvLW9ydGhvZ29uYWwgY29uc3RyYWludHMAeHkgb3J0aG9nb25hbCBjb25zdHJhaW50cwB5eCBvcnRob2dvbmFsIGNvbnN0cmFpbnRzAGxpbmUgc2VnbWVudHMAc2V0X2NlbGxfaGVpZ2h0cwByZWN0cwBhY2NvdW50aW5nUmVwb3J0U3RhdHMAZW50aXR5VHJhY2tpbmdSZXBvcnRTdGF0cwBaYXBmRGluZ2JhdHMAcmVtaW5jcm9zcwBjb21wcmVzcwBndnVzZXJzaGFwZV9maWxlX2FjY2VzcwBicmFzcwBjbGFzcwBhcHBseWF0dHJzAGFnbWFrZWF0dHJzAGJpbmRhdHRycwBwYXJzZV9sYXllcnMAbWtDbHVzdGVycwByb3VuZF9jb3JuZXJzAG1ha2VfYmFycmllcnMAY2RhdGEubnRvcGxldmVsID09IGFnbm5vZGVzKGcpIC0gY2RhdGEubnZhcnMAY2Fubm90IHJlYWxsb2Mgb3BzAGNhbm5vdCByZWFsbG9jIHBubHBzAGVwcwBjb3JlX2xvYWRpbWFnZV9wcwBlcHM6cHMAcHMyOnBzAChsaWIpOnBzAGd2X3RyaW1femVyb3MAYWd4YnVmX3RyaW1femVyb3MAdGV4Z3lyZWhlcm9zAGltYWdlcG9zAHRpbm9zAHNldEVkZ2VMYWJlbFBvcwBTZXR0aW5nIGluaXRpYWwgcG9zaXRpb25zAHhsaW50ZXJzZWN0aW9ucwBjb2x1bW5zAGRlamF2dXNhbnMAbmltYnVzc2FucwBsaWJlcmF0aW9uc2FucwBmcmVlc2FucwBzZXRDaGlsZFN1YnRyZWVTcGFucwBPcGVuU2FucwBvZmZzZXQgPT0gbl90ZXJtcwBkaXRlbXMAZGlhbXMAY29sIDwgbWUtPm5jb2xzAGNhbm5vdCByZWFsbG9jIGRxLnBubHMAY2Fubm90IHJlYWxsb2MgcG5scwBsZXZlbHMAZm9yY2VsYWJlbHMAZGlhZ29uYWxzAG1lcmdlX3JhbmtzAHNwbGl0QmxvY2tzAGludmlzAGNhbm5vdCByZWFsbG9jIHRyaXMAc2V0X2NlbGxfd2lkdGhzAENhbGN1bGF0aW5nIHNob3J0ZXN0IHBhdGhzAHllcwBzaG93Ym94ZXMAYmVhdXRpZnlfbGVhdmVzAGF0dGFjaF9lZGdlX2xhYmVsX2Nvb3JkaW5hdGVzAHBvbHlsaW5lcwBzcGxpbmVzAG9ydGhvZ29uYWwgbGluZXMAdGV4Z3lyZXRlcm1lcwBvdGltZXMAVGltZXMAZm9udG5hbWVzAHByZWZpeCBtdXN0IG5vdCBiZSBib3VuZCB0byBvbmUgb2YgdGhlIHJlc2VydmVkIG5hbWVzcGFjZSBuYW1lcwBTcGFyc2VNYXRyaXhfc3VtX3JlcGVhdF9lbnRyaWVzAHBlcmlwaGVyaWVzAEdldEJyYW5jaGVzAGYgPCBncmFwaFtqXS5uZWRnZXMAbWlubWF4X2VkZ2VzAGV4Y2hhbmdlX3RyZWVfZWRnZXMAbWFrZVN0cmFpZ2h0RWRnZXMAdW5kb0NsdXN0ZXJFZGdlcwBjb21wb3VuZEVkZ2VzAG1lcmdlX3RyZWVzAF9fY2x1c3Rlcm5vZGVzAGFnbm5vZGVzAE5EX2lkKG5wKSA9PSBuX25vZGVzAExvYWROb2RlcwBzaWRlcwBzcGFkZXMAdmVydGljZXMAY29vcmRzAHNldGJvdW5kcwBtZHMAY2RzAG1ha2VTZWxmQXJjcwBlbWl0X2VkZ2VfZ3JhcGhpY3MAY2x1YnMAY29uc29sYXMAJWxmJTJzAApTdHJpbmcgc3RhcnRpbmc6PCUuODBzAApTdHJpbmcgc3RhcnRpbmc6IiUuODBzACAlLipzACVzJXMAZXhwYXQ6IEFjY291bnRpbmcoJXApOiBEaXJlY3QgJTEwbGx1LCBpbmRpcmVjdCAlMTBsbHUsIGFtcGxpZmljYXRpb24gJTguMmYlcwAlLipzJWMlcwAgJXM6JXMAX18lZDolcwAvJXMvJXMAJXMtJXMALCVzACBmb250LWZhbWlseT0iJXMAIiBzdHJva2UtZGFzaGFycmF5PSIlcwAiIGNsYXNzPSIlcwBwb2x5ICVzACgoJWYsJWYpLCglZiwlZikpICVzICVzAGNvbG9yICVzAHJvb3QgPSAlcwAgVGl0bGU6ICVzACJzdHJpY3QiOiAlcwBjb3VyAHV0cgBhcHBlbmRhdHRyAGFkZGF0dHIAYmVnaW5zdHIAZnN0cgBzdHJ2aWV3X3N0cgBwb3ZfY29sb3JfYXNfc3RyAHZwc2MhPW51bGxwdHIAYmVuZFRvU3RyAHVhcnIAY3JhcnIAbGFycgBoYXJyAGRhcnIAdUFycgByQXJyAGxBcnIAaEFycgBkQXJyAEFwcgBTcGFyc2VNYXRyaXhfbXVsdGlwbHlfdmVjdG9yAHRlcm1pbmF0b3IAaW5zdWxhdG9yAGludGVybmFsRW50aXR5UHJvY2Vzc29yAHRleGd5cmVjdXJzb3IAc3ludGF4IGVycm9yAG1vbmV5X2dldCBlcnJvcgBFcnJvcgByZmxvb3IAbGZsb29yAGxhYmVsZm9udGNvbG9yAHBlbmNvbG9yAGZpbGxjb2xvcgBiZ2NvbG9yAHJvdyBtYWpvcgBjb2x1bW4gbWFqb3IAbmVpZ2hib3IAc3R5bGVfb3IAbXIAcmFua2RpcgBwYWdlZGlyAGxheWVyAHVwcGVyID49IGxvd2VyAE5vZGVDb3ZlcgAvc3ZnL3NpbHZlcgBjbHVzdGVyAGV4cGFuZENsdXN0ZXIAcnByb21vdGVyAGxwcm9tb3RlcgBjZW50ZXIAbWF4aXRlcgBwYXJ0aWFsIGNoYXJhY3RlcgAhIHJvb3RQYXJzZXItPm1fcGFyZW50UGFyc2VyAGRrZ3JlZW5jb3BwZXIAY29vbGNvcHBlcgBndl9zb3J0X2NvbXBhcl93cmFwcGVyAHRhcGVyAG92ZXJsYXBfYmV6aWVyAGZpZ19iZXppZXIAY291cmllcgBDb3VyaWVyAGhpZXIAZGFnZ2VyAERhZ2dlcgBvdXRwdXRvcmRlcgBwb3N0b3JkZXIAZmxhdF9yZW9yZGVyAGNlbGxib3JkZXIAZml4TGFiZWxPcmRlcgBjeWxpbmRlcgAvc3ZnL2xhdmVuZGVyAHJlbmRlcgBmb2xkZXIAY2x1c3Rlcl9sZWFkZXIATkRfVUZfc2l6ZShuKSA8PSAxIHx8IG4gPT0gbGVhZGVyAE9jdG9iZXIAcmVmZXJlbmNlIHRvIGludmFsaWQgY2hhcmFjdGVyIG51bWJlcgBOb3ZlbWJlcgBTZXB0ZW1iZXIARGVjZW1iZXIAbWFjcgBicgBzdGFyAGZlbGRzcGFyAHJlZ3VsYXIAaW9zX2Jhc2U6OmNsZWFyAGJydmJhcgBNYXIAXHIATkRfcmFuayh2KSA9PSByAHN0cmVxAHN0cnZpZXdfZXEAc3Rydmlld19zdHJfZXEAc3Rydmlld19jYXNlX3N0cl9lcQBzdHJ2aWV3X2Nhc2VfZXEAdnAAJSVCZWdpblByb2xvZwovRG90RGljdCAyMDAgZGljdCBkZWYKRG90RGljdCBiZWdpbgoKL3NldHVwTGF0aW4xIHsKbWFyawovRW5jb2RpbmdWZWN0b3IgMjU2IGFycmF5IGRlZgogRW5jb2RpbmdWZWN0b3IgMAoKSVNPTGF0aW4xRW5jb2RpbmcgMCAyNTUgZ2V0aW50ZXJ2YWwgcHV0aW50ZXJ2YWwKRW5jb2RpbmdWZWN0b3IgNDUgL2h5cGhlbiBwdXQKCiUgU2V0IHVwIElTTyBMYXRpbiAxIGNoYXJhY3RlciBlbmNvZGluZwovc3Rhcm5ldElTTyB7CiAgICAgICAgZHVwIGR1cCBmaW5kZm9udCBkdXAgbGVuZ3RoIGRpY3QgYmVnaW4KICAgICAgICB7IDEgaW5kZXggL0ZJRCBuZSB7IGRlZiB9eyBwb3AgcG9wIH0gaWZlbHNlCiAgICAgICAgfSBmb3JhbGwKICAgICAgICAvRW5jb2RpbmcgRW5jb2RpbmdWZWN0b3IgZGVmCiAgICAgICAgY3VycmVudGRpY3QgZW5kIGRlZmluZWZvbnQKfSBkZWYKL1RpbWVzLVJvbWFuIHN0YXJuZXRJU08gZGVmCi9UaW1lcy1JdGFsaWMgc3Rhcm5ldElTTyBkZWYKL1RpbWVzLUJvbGQgc3Rhcm5ldElTTyBkZWYKL1RpbWVzLUJvbGRJdGFsaWMgc3Rhcm5ldElTTyBkZWYKL0hlbHZldGljYSBzdGFybmV0SVNPIGRlZgovSGVsdmV0aWNhLU9ibGlxdWUgc3Rhcm5ldElTTyBkZWYKL0hlbHZldGljYS1Cb2xkIHN0YXJuZXRJU08gZGVmCi9IZWx2ZXRpY2EtQm9sZE9ibGlxdWUgc3Rhcm5ldElTTyBkZWYKL0NvdXJpZXIgc3Rhcm5ldElTTyBkZWYKL0NvdXJpZXItT2JsaXF1ZSBzdGFybmV0SVNPIGRlZgovQ291cmllci1Cb2xkIHN0YXJuZXRJU08gZGVmCi9Db3VyaWVyLUJvbGRPYmxpcXVlIHN0YXJuZXRJU08gZGVmCmNsZWFydG9tYXJrCn0gYmluZCBkZWYKCiUlQmVnaW5SZXNvdXJjZTogcHJvY3NldCBncmFwaHZpeiAwIDAKL2Nvb3JkLWZvbnQtZmFtaWx5IC9UaW1lcy1Sb21hbiBkZWYKL2RlZmF1bHQtZm9udC1mYW1pbHkgL1RpbWVzLVJvbWFuIGRlZgovY29vcmRmb250IGNvb3JkLWZvbnQtZmFtaWx5IGZpbmRmb250IDggc2NhbGVmb250IGRlZgoKL0ludlNjYWxlRmFjdG9yIDEuMCBkZWYKL3NldF9zY2FsZSB7CiAgICAgICBkdXAgMSBleGNoIGRpdiAvSW52U2NhbGVGYWN0b3IgZXhjaCBkZWYKICAgICAgIHNjYWxlCn0gYmluZCBkZWYKCiUgc3R5bGVzCi9zb2xpZCB7IFtdIDAgc2V0ZGFzaCB9IGJpbmQgZGVmCi9kYXNoZWQgeyBbOSBJbnZTY2FsZUZhY3RvciBtdWwgZHVwIF0gMCBzZXRkYXNoIH0gYmluZCBkZWYKL2RvdHRlZCB7IFsxIEludlNjYWxlRmFjdG9yIG11bCA2IEludlNjYWxlRmFjdG9yIG11bF0gMCBzZXRkYXNoIH0gYmluZCBkZWYKL2ludmlzIHsvZmlsbCB7bmV3cGF0aH0gZGVmIC9zdHJva2Uge25ld3BhdGh9IGRlZiAvc2hvdyB7cG9wIG5ld3BhdGh9IGRlZn0gYmluZCBkZWYKL2JvbGQgeyAyIHNldGxpbmV3aWR0aCB9IGJpbmQgZGVmCi9maWxsZWQgeyB9IGJpbmQgZGVmCi91bmZpbGxlZCB7IH0gYmluZCBkZWYKL3JvdW5kZWQgeyB9IGJpbmQgZGVmCi9kaWFnb25hbHMgeyB9IGJpbmQgZGVmCi90YXBlcmVkIHsgfSBiaW5kIGRlZgoKJSBob29rcyBmb3Igc2V0dGluZyBjb2xvciAKL25vZGVjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYKL2VkZ2Vjb2xvciB7IHNldGhzYmNvbG9yIH0gYmluZCBkZWYKL2dyYXBoY29sb3IgeyBzZXRoc2Jjb2xvciB9IGJpbmQgZGVmCi9ub3Bjb2xvciB7cG9wIHBvcCBwb3B9IGJpbmQgZGVmCgovYmVnaW5wYWdlIHsJJSBpIGogbnBhZ2VzCgkvbnBhZ2VzIGV4Y2ggZGVmCgkvaiBleGNoIGRlZgoJL2kgZXhjaCBkZWYKCS9zdHIgMTAgc3RyaW5nIGRlZgoJbnBhZ2VzIDEgZ3QgewoJCWdzYXZlCgkJCWNvb3JkZm9udCBzZXRmb250CgkJCTAgMCBtb3ZldG8KCQkJKFwoKSBzaG93IGkgc3RyIGN2cyBzaG93ICgsKSBzaG93IGogc3RyIGN2cyBzaG93IChcKSkgc2hvdwoJCWdyZXN0b3JlCgl9IGlmCn0gYmluZCBkZWYKCi9zZXRfZm9udCB7CglmaW5kZm9udCBleGNoCglzY2FsZWZvbnQgc2V0Zm9udAp9IGRlZgoKJSBkcmF3IHRleHQgZml0dGVkIHRvIGl0cyBleHBlY3RlZCB3aWR0aAovYWxpZ25lZHRleHQgewkJCSUgd2lkdGggdGV4dAoJL3RleHQgZXhjaCBkZWYKCS93aWR0aCBleGNoIGRlZgoJZ3NhdmUKCQl3aWR0aCAwIGd0IHsKCQkJW10gMCBzZXRkYXNoCgkJCXRleHQgc3RyaW5nd2lkdGggcG9wIHdpZHRoIGV4Y2ggc3ViIHRleHQgbGVuZ3RoIGRpdiAwIHRleHQgYXNob3cKCQl9IGlmCglncmVzdG9yZQp9IGRlZgoKL2JveHByaW0gewkJCQklIHhjb3JuZXIgeWNvcm5lciB4c2l6ZSB5c2l6ZQoJCTQgMiByb2xsCgkJbW92ZXRvCgkJMiBjb3B5CgkJZXhjaCAwIHJsaW5ldG8KCQkwIGV4Y2ggcmxpbmV0bwoJCXBvcCBuZWcgMCBybGluZXRvCgkJY2xvc2VwYXRoCn0gYmluZCBkZWYKCi9lbGxpcHNlX3BhdGggewoJL3J5IGV4Y2ggZGVmCgkvcnggZXhjaCBkZWYKCS95IGV4Y2ggZGVmCgkveCBleGNoIGRlZgoJbWF0cml4IGN1cnJlbnRtYXRyaXgKCW5ld3BhdGgKCXggeSB0cmFuc2xhdGUKCXJ4IHJ5IHNjYWxlCgkwIDAgMSAwIDM2MCBhcmMKCXNldG1hdHJpeAp9IGJpbmQgZGVmCgovZW5kcGFnZSB7IHNob3dwYWdlIH0gYmluZCBkZWYKL3Nob3dwYWdlIHsgfSBkZWYKCi9sYXllcmNvbG9yc2VxCglbCSUgbGF5ZXIgY29sb3Igc2VxdWVuY2UgLSBkYXJrZXN0IHRvIGxpZ2h0ZXN0CgkJWzAgMCAwXQoJCVsuMiAuOCAuOF0KCQlbLjQgLjggLjhdCgkJWy42IC44IC44XQoJCVsuOCAuOCAuOF0KCV0KZGVmCgovbGF5ZXJsZW4gbGF5ZXJjb2xvcnNlcSBsZW5ndGggZGVmCgovc2V0bGF5ZXIgey9tYXhsYXllciBleGNoIGRlZiAvY3VybGF5ZXIgZXhjaCBkZWYKCWxheWVyY29sb3JzZXEgY3VybGF5ZXIgMSBzdWIgbGF5ZXJsZW4gbW9kIGdldAoJYWxvYWQgcG9wIHNldGhzYmNvbG9yCgkvbm9kZWNvbG9yIHtub3Bjb2xvcn0gZGVmCgkvZWRnZWNvbG9yIHtub3Bjb2xvcn0gZGVmCgkvZ3JhcGhjb2xvciB7bm9wY29sb3J9IGRlZgp9IGJpbmQgZGVmCgovb25sYXllciB7IGN1cmxheWVyIG5lIHtpbnZpc30gaWYgfSBkZWYKCi9vbmxheWVycyB7CgkvbXl1cHBlciBleGNoIGRlZgoJL215bG93ZXIgZXhjaCBkZWYKCWN1cmxheWVyIG15bG93ZXIgbHQKCWN1cmxheWVyIG15dXBwZXIgZ3QKCW9yCgl7aW52aXN9IGlmCn0gZGVmCgovY3VybGF5ZXIgMCBkZWYKCiUlRW5kUmVzb3VyY2UKJSVFbmRQcm9sb2cKJSVCZWdpblNldHVwCjE0IGRlZmF1bHQtZm9udC1mYW1pbHkgc2V0X2ZvbnQKJSAvYXJyb3dsZW5ndGggMTAgZGVmCiUgL2Fycm93d2lkdGggNSBkZWYKCiUgbWFrZSBzdXJlIHBkZm1hcmsgaXMgaGFybWxlc3MgZm9yIFBTLWludGVycHJldGVycyBvdGhlciB0aGFuIERpc3RpbGxlcgovcGRmbWFyayB3aGVyZSB7cG9wfSB7dXNlcmRpY3QgL3BkZm1hcmsgL2NsZWFydG9tYXJrIGxvYWQgcHV0fSBpZmVsc2UKJSBtYWtlICc8PCcgYW5kICc+Picgc2FmZSBvbiBQUyBMZXZlbCAxIGRldmljZXMKL2xhbmd1YWdlbGV2ZWwgd2hlcmUge3BvcCBsYW5ndWFnZWxldmVsfXsxfSBpZmVsc2UKMiBsdCB7CiAgICB1c2VyZGljdCAoPDwpIGN2biAoWykgY3ZuIGxvYWQgcHV0CiAgICB1c2VyZGljdCAoPj4pIGN2biAoWykgY3ZuIGxvYWQgcHV0Cn0gaWYKCiUlRW5kU2V0dXAAc3VwAGdyb3VwAGN1cAB0aGluc3AAZW5zcABlbXNwAG5ic3AAcGVycAB3ZWllcnAAZ2VuZXJhdGUtY29uc3RyYWludHMuY3BwAGJsb2NrLmNwcABjc29sdmVfVlBTQy5jcHAAf3RvcABwcm9wAGFneGJwb3AAbm9wAGFzeW1wAGNvbXAAZmluZENDb21wAGJtcABzY2FsZV9jbGFtcAB4bHAAbHAgIT0gY2xwAHRhaWxfbHAAaGVhZF9scAB0YWlsdG9vbHRpcABsYWJlbHRvb2x0aXAAZWRnZXRvb2x0aXAAaGVhZHRvb2x0aXAAaGVsbGlwAHRhaWxjbGlwAGhlYWRjbGlwAC9zdmcvcGFwYXlhd2hpcABocAB0cmFuc3Bvc2Vfc3RlcABjb21wdXRlU3RlcABsYXllcmxpc3RzZXAAbGF5ZXJzZXAAaXBzZXAAcmFua3NlcABub2Rlc2VwAHN1YmdyYXBocyBuZXN0ZWQgbW9yZSB0aGFuICVkIGRlZXAAU2VwAHNmZHAAY3AAd2VicABpZG1hcABjbHVzdGVyX21hcABjbWFweDptYXAAZXBzOm1hcABjbWFweF9ucDptYXAAaW1hcF9ucDptYXAAaXNtYXA6bWFwAGltYXA6bWFwAGNtYXA6bWFwAHN2ZzptYXAAanBnOm1hcABwbmc6bWFwAGpwZWc6bWFwAGdpZjptYXAAanBlOm1hcABvdmVybGFwAGxldmVsc2dhcABjYXAAS1BfVXAAJUk6JU06JVMgJXAAc3RhcnQgPD0gcAByc3F1bwBsc3F1bwByZHF1bwBsZHF1bwBiZHF1bwBzYnF1bwByc2FxdW8AbHNhcXVvAHJhcXVvAGxhcXVvAGF1dG8ATnVuaXRvAC9zdmcvdG9tYXRvAG5lYXRvAGV1cm8AL3N2Zy9nYWluc2Jvcm8ATWV0aG9kWmVybwBtaWNybwBuaW1idXNtb25vAGxpYmVyYXRpb25tb25vAGZyZWVtb25vAGFyaW1vAHJhdGlvAHBvcnRobwByaG8AUmhvAC9zdmcvaW5kaWdvAHBpbmZvAGNjZ3JhcGhpbmZvAGNjZ25vZGVpbmZvAGNsX2VkZ2VfaW5mbwBnZXRQYWNrSW5mbwBtYWtlSW5mbwBwYXJzZVBhY2tNb2RlSW5mbwBjaXJjbwBpY28AXCUwM28AL3N2Zy9yb3N5YnJvd24AL3N2Zy9zYW5keWJyb3duAHZlcnlkYXJrYnJvd24AL3N2Zy9zYWRkbGVicm93bgAvc3ZnL2Jyb3duAEtQX0Rvd24AY2Fubm90IGNoYW5nZSBzZXR0aW5nIG9uY2UgcGFyc2luZyBoYXMgYmVndW4AU3VuAEp1bgB0aG9ybgAvc3ZnL2NyaW1zb24AeGRvdF9qc29uAHhkb3RfanNvbjpqc29uAGpzb24wOmpzb24Ab21pY3JvbgBPbWljcm9uAHNjYXJvbgBTY2Fyb24Ad2VibWFyb29uAHgxMW1hcm9vbgAvc3ZnL21hcm9vbgAvc3ZnL2xpZ2h0c2FsbW9uAC9zdmcvZGFya3NhbG1vbgAvc3ZnL3NhbG1vbgB1cHNpbG9uAGVwc2lsb24AVXBzaWxvbgBFcHNpbG9uAHJlc29sdXRpb24AZGlzdG9ydGlvbgBzdGQ6OmV4Y2VwdGlvbgBwYXJ0aXRpb24AZG90X3Bvc2l0aW9uAFNldHRpbmcgdXAgc3RyZXNzIGZ1bmN0aW9uAHVuY2xvc2VkIENEQVRBIHNlY3Rpb24AcG9zdGFjdGlvbgByb3RhdGlvbgBvcmllbnRhdGlvbgBhYm9taW5hdGlvbgBhY2NvdW50aW5nR2V0Q3VycmVudEFtcGxpZmljYXRpb24AeGRvdHZlcnNpb24AU1RzZXRVbmlvbgA8cG9seWdvbgBoZXhhZ29uAHNlcHRhZ29uAHBlbnRhZ29uAHRyaXBsZW9jdGFnb24AZG91Ymxlb2N0YWdvbgAvc3ZnL2xlbW9uY2hpZmZvbgBNb24AcGx1c21uAG5vdGluAGlzaW4AL3N2Zy9tb2NjYXNpbgBwaW4AbWluAHZvcm9fbWFyZ2luAGluZmluAG9uZWRfb3B0aW1pemVyX3RyYWluAHBsYWluAG1ha2VfY2hhaW4AbWVyZ2VfY2hhaW4AZGVsZXRlTWluAGZpbmRNaW4AdmFsaWduAGJhbGlnbgB5ZW4ATXVsdGlsZXZlbF9jb2Fyc2VuAGN1cnJlbgBQb2Jzb3BlbgBndl9mb3BlbgBndnVzZXJzaGFwZV9vcGVuAGVudGl0eVRyYWNraW5nT25PcGVuAC9zdmcvbGluZW4AZGltZW4AbWlubGVuAHN0eWxlX3Rva2VuAHVuY2xvc2VkIHRva2VuAC9zdmcveWVsbG93Z3JlZW4AbWVkaXVtZm9yZXN0Z3JlZW4AL3N2Zy9mb3Jlc3RncmVlbgAvc3ZnL2xpZ2h0Z3JlZW4AaHVudGVyc2dyZWVuAC9zdmcvbGF3bmdyZWVuAC9zdmcvZGFya2dyZWVuAC9zdmcvbWVkaXVtc3ByaW5nZ3JlZW4AL3N2Zy9zcHJpbmdncmVlbgAvc3ZnL2RhcmtvbGl2ZWdyZWVuAC9zdmcvbGltZWdyZWVuAC9zdmcvcGFsZWdyZWVuAHdlYmdyZWVuAC9zdmcvbGlnaHRzZWFncmVlbgAvc3ZnL21lZGl1bXNlYWdyZWVuAC9zdmcvZGFya3NlYWdyZWVuAC9zdmcvc2VhZ3JlZW4AeDExZ3JlZW4AL3N2Zy9ncmVlbgBHcmVlbgAvc3ZnL2xpZ2h0Y3lhbgAvc3ZnL2RhcmtjeWFuAC9zdmcvY3lhbgBuZXd0YW4AZGFya3RhbgAvc3ZnL3RhbgByb3dzcGFuAGNvbHNwYW4AbmFuAHRpbWVzbmV3cm9tYW4AbmltYnVzcm9tYW4AdGltZXNyb21hbgBUaW1lcy1Sb21hbgBQYWxhdGluby1Sb21hbgBOZXdDZW50dXJ5U2NobGJrLVJvbWFuAEphbgBHRF9yYW5rKGcpW3JdLm4gPD0gR0RfcmFuayhnKVtyXS5hbgBhZ3hicHV0X24AXG4Abl9ub2RlcyA9PSBncmFwaC0+bgBBLT5tID09IEEtPm4Aam9iLT5vYmotPnUubgBuemMgPT0gKHNpemVfdCluAHMsJWxmLCVsZiVuACBlLCVsZiwlbGYlbgAlZCAlMVsiXSVuAHYgPT0gbgBiID09IG4AbmNsdXN0ZXIgPD0gbgBwc3ltAGFsZWZzeW0AdGhldGFzeW0AcXVhbnR1bQBzdW0AL3N2Zy9wbHVtAGludnRyYXBleml1bQBtZWRpdW0AOTpwcmlzbQBscm0AY3VzdG9tAGFwdHItPnRhZyA9PSBUX2F0b20AL2Rldi91cmFuZG9tAGd2X3JhbmRvbQBtbQBybG0Ac2ltAElNRFNfZ2l2ZW5fZGltAG9yZG0AY20AcGFyYWxsZWxvZ3JhbQAvc3ZnL21pbnRjcmVhbQBKdWwAdGwAZnJhc2wAU3ltYm9sAGZpbmRDb2wAPD94bWwAeXVtbAB1dW1sAG91bWwAaXVtbABldW1sAGF1bWwAWXVtbABVdW1sAE91bWwASXVtbABFdW1sAEF1bWwAY29yZV9sb2FkaW1hZ2VfdnJtbABqcGc6dnJtbABwbmc6dnJtbABqcGVnOnZybWwAZ2lmOnZybWwAanBlOnZybWwAYnVsbABmaWxsAC9zdmcvc2Vhc2hlbGwAZm9yYWxsAEFwcmlsAHBlcm1pbAByY2VpbABsY2VpbABjY2VkaWwAQ2NlZGlsAGFycm93dGFpbABsdGFpbABzYW1ldGFpbABsZXZlbCA+PSAwICYmIGxldmVsIDw9IG4tPmxldmVsAHN0cmVzc19tYWpvcml6YXRpb25fa0RfbWtlcm5lbABpc19wYXJhbGxlbABDYWxjdWxhdGluZyBjaXJjdWl0IG1vZGVsAENhbGN1bGF0aW5nIHN1YnNldCBtb2RlbABDYWxjdWxhdGluZyBNRFMgbW9kZWwAeGxhYmVsAHRhaWxsYWJlbABoZWFkbGFiZWwAZ3JhcGggbGFiZWwAaWV4Y2wAb2JqcC0+bGJsAG92YWwAbWVyZ2V2aXJ0dWFsAC9zdmcvbGlnaHRjb3JhbAAvc3ZnL2NvcmFsAFNwYXJzZU1hdHJpeF9mcm9tX2Nvb3JkaW5hdGVfYXJyYXlzX2ludGVybmFsAE11bHRpbGV2ZWxfY29hcnNlbl9pbnRlcm5hbABRdWFkVHJlZV9hZGRfaW50ZXJuYWwAYXJyb3dfbGVuZ3RoX25vcm1hbABhcmlhbAByYWRpYWwAL3N2Zy90ZWFsAHJlYWwAbG9jYWwAZXN0aW1hdGVfY2hhcmFjdGVyX3dpZHRoX2Nhbm9uaWNhbABnbG9iYWwAcS0+bAAuLi8uLi9saWIvY2dyYXBoL3NjYW4ubAB0azp0awBnaWY6dGsAcGF0Y2h3b3JrAHRvawBib29rAEF2YW50R2FyZGUtQm9vawBzaW5rAG92ZXJsYXBfc2hyaW5rAHNwaWN5cGluawAvc3ZnL2hvdHBpbmsAL3N2Zy9saWdodHBpbmsAL3N2Zy9kZWVwcGluawBuZW9ucGluawAvc3ZnL3BpbmsAbmV3cmFuawBjbHVzdGVycmFuawBfbmV3X3JhbmsAaW5zdGFsbF9pbl9yYW5rAHJlbW92ZV9mcm9tX3JhbmsAL3N2Zy9jb3Juc2lsawBvbmVibG9jawB2LT5sZWZ0LT5ibG9jayA9PSB2LT5yaWdodC0+YmxvY2sAL3N2Zy9maXJlYnJpY2sAUFFjaGVjawBwYWNrAC9zdmcvYmxhY2sAQmxhY2sAYmFjawB6d2oAenduagBqb2ItPm9iagBnZXRpbnRyc3hpAHBzaQBQc2kAQ2FsaWJyaQBGcmkAdHdvcGkAZHBpAHZvcm9ub2kAVm9yb25vaQBjaGFuaQBkZW1pAEJvb2ttYW4tRGVtaQBBdmFudEdhcmRlLURlbWkAL3N2Zy9kYXJra2hha2kAL3N2Zy9raGFraQBwaGkAY2hpAFBoaQBDaGkAZGkAWGkAUGkATkRfaWQobnApID09IGkATl9JRFgocHEtPnBxW2ldKSA9PSBpAFN0cmVzc01ham9yaXphdGlvblNtb290aGVyX3Ntb290aABTcHJpbmdTbW9vdGhlcl9zbW9vdGgAYm90aABzdGFydHN3aXRoAGxpbmVsZW5ndGgAYmFkX2FycmF5X25ld19sZW5ndGgAYXZlcmFnZV9lZGdlX2xlbmd0aABldGgAcGVud2lkdGgAbHdpZHRoAHNldGxpbmV3aWR0aABzaG9ydHBhdGgAZm9udHBhdGgAUG9ic3BhdGgAYmVnaW5wYXRoAGltYWdlcGF0aABlbmRwYXRoAHN0cmFpZ2h0X3BhdGgAbWFwX3BhdGgAPHBhdGgAY2Fubm90IGZpbmQgdHJpYW5nbGUgcGF0aAAvc3ZnL2xhdmVuZGVyYmx1c2gAZmxlc2gAb3NsYXNoAE9zbGFzaABkdHN0cmhhc2gAc3RyZGljdF9oYXNoAG5kYXNoAG1kYXNoAGRpZ3JhcGgAc3ViZ3JhcGgAY29uc3RydWN0X2dyYXBoAGNoa1NncmFwaABjbG9zZXN0X3BhaXJzMmdyYXBoAGFnZGVsZXRlIG9uIHdyb25nIGdyYXBoAGNvbm5lY3RHcmFwaAB1cHNpaAAlc2xpbmUtdGhyb3VnaABjaGFuU2VhcmNoAFJUcmVlU2VhcmNoAE1hcmNoAERpc2NvbkJyYW5jaABQaWNrQnJhbmNoAEFkZEJyYW5jaAAuLi8uLi9saWIvdXRpbC9iaXRhcnJheS5oAC4uLy4uL2xpYi91dGlsL3N0cnZpZXcuaAAuLi8uLi9saWIvdXRpbC9zb3J0LmgALi4vLi4vbGliL2NncmFwaC9ub2RlX3NldC5oAC4uLy4uL2xpYi91dGlsL3N0cmVxLmgALi4vLi4vbGliL3V0aWwvc3RhcnRzd2l0aC5oAC4uLy4uL2xpYi91dGlsL2d2X21hdGguaAAuLi8uLi9saWIvdXRpbC9hZ3hidWYuaAAuLi8uLi9saWIvdXRpbC90b2tlbml6ZS5oAC4uLy4uL2xpYi91dGlsL2FsbG9jLmgAYXV4ZwBjb3JlX2xvYWRpbWFnZV9zdmcAc3ZnOnN2ZwBqcGc6c3ZnAHBuZzpzdmcAanBlZzpzdmcAZ2lmOnN2ZwBqcGU6c3ZnAHN2Z19pbmxpbmU6c3ZnAEF1ZwBkb1Byb2xvZwBwb3dlcl9pdGVyYXRpb25fb3J0aG9nAHBuZwBpZGVhbF9kaXN0X3NjaGVtZSB2YWx1ZSB3cm9uZwB4ZG90IHZlcnNpb24gIiVzIiB0b28gbG9uZwBjb25nAGxibGVuY2xvc2luZwBiYXNpY19zdHJpbmcAZmFpbHVyZSBtYWxsb2MnaW5nIGZvciByZXN1bHQgc3RyaW5nAHNwcmluZwBvcmRlcmluZwBnZW5lcmF0ZVJhbmRvbU9yZGVyaW5nAGFyaW5nAEFyaW5nAERhbXBpbmcAV2FybmluZwBvdmVybGFwX3NjYWxpbmcAeCBhbmQgeSBzY2FsaW5nAG9sZCBzY2FsaW5nAHNtb290aGluZwB1bmtub3duIGVuY29kaW5nAG11bHRpbGV2ZWxfc3ByaW5nX2VsZWN0cmljYWxfZW1iZWRkaW5nAHNwcmluZ19lbGVjdHJpY2FsX3NwcmluZ19lbWJlZGRpbmcAY2VsbHBhZGRpbmcAY2VsbHNwYWNpbmcAcmFuZwBsYW5nAGZpdmVwb3ZlcmhhbmcAdGhyZWVwb3ZlcmhhbmcAbm92ZXJoYW5nAGVtaXRfaHRtbF9pbWcAbGcAb3JpZwBzemxpZwBvZWxpZwBhZWxpZwBPRWxpZwBBRWxpZwBjb3JlX2xvYWRpbWFnZV9maWcAanBnOmZpZwBwbmc6ZmlnAGZpZzpmaWcAanBlZzpmaWcAZ2lmOmZpZwBqcGU6ZmlnAGVnZwBuZXh0X3NlZwByZWcAanBlZwBpID09IGRlZwBkZwBjZwBjbG9zZXN1YmcAbWlzbWF0Y2hlZCB0YWcAYmV6LT5zZmxhZwBiZXotPmVmbGFnACEqZmxhZwAhZmxhZwA8ZwAlLjVnLCUuNWcsJS41ZywlLjVnACUuNWcgJS41ZwAlZyAlZwBib3hJbnRlcnNlY3RmAGVwc2YAYWdlZGdlc2VxY21wZgBjY3dyb3RhdGVwZgBmbm9mAGluZgBzZWxmAGhhbGYAJWxmJWxmJWxmJWxmACVsZiwlbGYsJWxmLCVsZiwlbGYAJSpmICUqZiAlbGYgJWxmAGxpYmVyYXRpb25zZXJpZgBmcmVlc2VyaWYAc2Fucy1TZXJpZgBnaWYAL3N2Zy9wZWFjaHB1ZmYAcmlmZgBhY2NvdW50aW5nUmVwb3J0RGlmZgAoWG1sQmlnQ291bnQpLTEgLSByb290UGFyc2VyLT5tX2FsbG9jX3RyYWNrZXIuYnl0ZXNBbGxvY2F0ZWQgPj0gYWJzRGlmZgB0YWlsaHJlZgBsYWJlbGhyZWYAZWRnZWhyZWYAaGVhZGhyZWYAb3JkZgBwZGYAc2lnbWFmAFxmACUuMExmACVMZgB1cy0+ZgAlLjAzZgAlcyB0cmFuc21pdCAlLjNmAHJnYjwlOS4zZiwgJTkuM2YsICU5LjNmPiB0cmFuc21pdCAlLjNmACUuMDJmACUuMmYAJS4wZiwlLjBmLCUuMGYsJS4wZgAgJS4wZiwlLjBmACUuMGYgJS4wZiAlLjBmICUuMGYAIiBmaWxsLW9wYWNpdHk9IiVmACIgc3Ryb2tlLW9wYWNpdHk9IiVmAApmaW5hbCBlID0gJWYAYnJvbnplAGFycm93c2l6ZQBsYWJlbGZvbnRzaXplAHNlYXJjaHNpemUAZml4ZWRzaXplAG5vZGVfc2V0X3NpemUAdGV4dHNwYW5fc2l6ZQBzdmdfc2l6ZQBpbmRleCA8IGxpc3QtPnNpemUAY2FwYWNpdHkgPiBkaWN0LT5zaXplAGNhcGFjaXR5ID4gc2VsZi0+c2l6ZQBiei5zaXplAHBvaW50LXNpemUAU0laRV9NQVggLSBzaXplb2Yoc2l6ZV90KSAtIEVYUEFUX01BTExPQ19QQURESU5HID49IHNpemUAbm9ybWFsaXplAEVMaW5pdGlhbGl6ZQBta01hemUAaWN1cnZlAHRyeV9yZXNlcnZlAG5vZGVfc2V0X3JlbW92ZQBzdHJkaWN0X3JlbW92ZQBzb2x2ZQAhdi0+YWN0aXZlAC1hY3RpdmUAZm9udF9pbl9saXN0X3Blcm1pc3NpdmUAL3N2Zy9vbGl2ZQB1Z3JhdmUAb2dyYXZlAGlncmF2ZQBlZ3JhdmUAYWdyYXZlAFVncmF2ZQBPZ3JhdmUASWdyYXZlAEVncmF2ZQBBZ3JhdmUAdHJ1ZQAvc3ZnL2Jpc3F1ZQBvYmxpcXVlAEF2YW50R2FyZGUtQm9va09ibGlxdWUAQXZhbnRHYXJkZS1EZW1pT2JsaXF1ZQBIZWx2ZXRpY2EtTmFycm93LUJvbGRPYmxpcXVlAENvdXJpZXItQm9sZE9ibGlxdWUASGVsdmV0aWNhLUJvbGRPYmxpcXVlAEhlbHZldGljYS1OYXJyb3ctT2JsaXF1ZQBDb3VyaWVyLU9ibGlxdWUASGVsdmV0aWNhLU9ibGlxdWUAbmF2eWJsdWUAL3N2Zy9saWdodHNreWJsdWUAL3N2Zy9kZWVwc2t5Ymx1ZQAvc3ZnL3NreWJsdWUAbmV3bWlkbmlnaHRibHVlAC9zdmcvbWlkbmlnaHRibHVlAC9zdmcvbGlnaHRibHVlAC9zdmcvY2FkZXRibHVlAC9zdmcvY29ybmZsb3dlcmJsdWUAL3N2Zy9kb2RnZXJibHVlAC9zdmcvcG93ZGVyYmx1ZQBuZW9uYmx1ZQAvc3ZnL21lZGl1bWJsdWUAL3N2Zy9saWdodHN0ZWVsYmx1ZQAvc3ZnL3N0ZWVsYmx1ZQAvc3ZnL3JveWFsYmx1ZQAvc3ZnL2RhcmtibHVlAHJpY2hibHVlAGxpZ2h0c2xhdGVibHVlAC9zdmcvbWVkaXVtc2xhdGVibHVlAC9zdmcvZGFya3NsYXRlYmx1ZQAvc3ZnL3NsYXRlYmx1ZQAvc3ZnL2FsaWNlYmx1ZQAvc3ZnL2JsdWUAY2FsbFN0b3JlRW50aXR5VmFsdWUAc3RvcmVBdHRyaWJ1dGVWYWx1ZQBCbHVlAG5lYXRvX2VucXVldWUAVHVlAHlhY3V0ZQB1YWN1dGUAb2FjdXRlAGlhY3V0ZQBlYWN1dGUAYWFjdXRlAFlhY3V0ZQBVYWN1dGUAT2FjdXRlAElhY3V0ZQBFYWN1dGUAQWFjdXRlAHJlZmVyZW5jZSB0byBleHRlcm5hbCBlbnRpdHkgaW4gYXR0cmlidXRlAGR1cGxpY2F0ZSBhdHRyaWJ1dGUAbm90ZQBwcmltZXJzaXRlAHJpYm9zaXRlAHJlc3RyaWN0aW9uc2l0ZQBwcm90ZWFzZXNpdGUAL3N2Zy9naG9zdHdoaXRlAC9zdmcvbmF2YWpvd2hpdGUAL3N2Zy9mbG9yYWx3aGl0ZQAvc3ZnL2FudGlxdWV3aGl0ZQAvc3ZnL3doaXRlAFdoaXRlAHBvcF9vYmpfc3RhdGUAcGNwX3JvdGF0ZQBjb25jZW50cmF0ZQBkZWNvcmF0ZQBRdWFkVHJlZV9yZXB1bHNpdmVfZm9yY2VfYWNjdW11bGF0ZQBub3RyYW5zbGF0ZQAvc3ZnL2Nob2NvbGF0ZQBwYXJzZXJDcmVhdGUAZ2VvbVVwZGF0ZQBpbnZob3VzZQAvc3ZnL2NoYXJ0cmV1c2UAWE1MX1BhcnNlADxlbGxpcHNlAGR1c3R5cm9zZQAvc3ZnL21pc3R5cm9zZQBTcGFyc2VNYXRyaXhfdHJhbnNwb3NlAGx1X2RlY29tcG9zZQBhZ2Nsb3NlAGVudGl0eVRyYWNraW5nT25DbG9zZQBTcGFyc2VNYXRyaXhfbXVsdGlwbHlfZGVuc2UAZmFsc2UAL3N2Zy9tZWRpdW10dXJxdW9pc2UAL3N2Zy9kYXJrdHVycXVvaXNlAC9zdmcvcGFsZXR1cnF1b2lzZQAvc3ZnL3R1cnF1b2lzZQBwaGFzZQBTSVpFX01BWCAtIHJvb3RQYXJzZXItPm1fYWxsb2NfdHJhY2tlci5ieXRlc0FsbG9jYXRlZCA+PSBpbmNyZWFzZQBzbG90X2Zyb21fYmFzZQAvc3ZnL2F6dXJlAHNpZ25hdHVyZQBtb3JlX2NvcmUATXNxdWFyZQBQYWxhdGlubyBMaW5vdHlwZQBBLT50eXBlID09IEItPnR5cGUAc3VwZQBlbGxpcHNlX3RhbmdlbnRfc2xvcGUAZ3ZyZW5kZXJfdXNlcnNoYXBlAG1pdGVyX3NoYXBlAGxhbmRzY2FwZQBMYW5kc2NhcGUASnVuZQBub25lAGRvY3VtZW50IGlzIG5vdCBzdGFuZGFsb25lAGNvdXNpbmUAL3N2Zy9tZWRpdW1hcXVhbWFyaW5lAC9zdmcvYXF1YW1hcmluZQA8cG9seWxpbmUAJXNvdmVybGluZQB1bmRlcmxpbmUAcmVhbGx5cm91dGVzcGxpbmUAUHJvdXRlc3BsaW5lAGxpbmVhcl9zcGxpbmUAYl9zcGxpbmUAb2xpbmUAYWd4YnVmX2lzX2lubGluZQBzdmdfaW5saW5lAHJlZmluZQBwcmltZQBQcmltZQAvc3ZnL2xpbWUAY29sb3JzY2hlbWUAbGFiZWxfc2NoZW1lAHNhbWUAbGFiZWxmb250bmFtZQBVRl9zZXRuYW1lAGZvbnRfbmFtZQBmb250LT5uYW1lAHVzLT5uYW1lAHJlc2VydmVkIHByZWZpeCAoeG1sKSBtdXN0IG5vdCBiZSB1bmRlY2xhcmVkIG9yIGJvdW5kIHRvIGFub3RoZXIgbmFtZXNwYWNlIG5hbWUAc3R5bGUAL3N2Zy90aGlzdGxlAHRpdGxlAC9zdmcvbWVkaXVtcHVycGxlAGRhcmtwdXJwbGUAd2VicHVycGxlAHJlYmVjY2FwdXJwbGUAdmVyeV9saWdodF9wdXJwbGUAbWVkX3B1cnBsZQB4MTFwdXJwbGUAL3N2Zy9wdXJwbGUAc2hhcGVmaWxlAGdyYWRpZW50YW5nbGUAcmVjdGFuZ2xlAFJlY3RhbmdsZQBsYWJlbGFuZ2xlAGludnRyaWFuZ2xlAGRlc3RpbmF0aW9uIHBvaW50IG5vdCBpbiBhbnkgdHJpYW5nbGUAc291cmNlIHBvaW50IG5vdCBpbiBhbnkgdHJpYW5nbGUAZGZzQ3ljbGUAZG91YmxlY2lyY2xlAE1jaXJjbGUAaW52aXNpYmxlAGV4cGF0X2hlYXBfaW5jcmVhc2VfdG9sZXJhYmxlAHRob3JuZGFsZQBpbnB1dHNjYWxlAG9zY2FsZQBpbWFnZXNjYWxlAC9zdmcvd2hpdGVzbW9rZQBtYW5kYXJpbm9yYW5nZQAvc3ZnL2RhcmtvcmFuZ2UAL3N2Zy9vcmFuZ2UAZXhjaGFuZ2UAL3N2Zy9iZWlnZQBuZXdlZGdlAGRlbGV0ZV9mYXN0X2VkZ2UAZGVsZXRlX2ZsYXRfZWRnZQBhZGRfdHJlZV9lZGdlAHBhdGNod29ya19pbml0X25vZGVfZWRnZQB0d29waV9pbml0X25vZGVfZWRnZQBtYWtlU3RyYWlnaHRFZGdlAG1ha2VTZWxmRWRnZQBtYWtlQ29tcG91bmRFZGdlACF1c2Vfc3RhZ2UAb3NhZ2UAcGFnZQBndmxvYWRpbWFnZQB2ZWUAdGVlAFFVQURfVFJFRV9IWUJSSUQsIHNpemUgbGFyZ2VyIHRoYW4gJWQsIHN3aXRjaCB0byBmYXN0IHF1YWR0cmVlAGZlYXNpYmxlX3RyZWUAbm9kZV9zZXRfZnJlZQBleHBhdF9mcmVlAGd2X2FyZW5hX2ZyZWUAbmV3bm9kZQBpbnN0YWxsbm9kZQBhZ25vZGUAZGVsZXRlX2Zhc3Rfbm9kZQBwYWNrbW9kZQBTcGxpdE5vZGUAb3RpbGRlAG50aWxkZQBhdGlsZGUAT3RpbGRlAE50aWxkZQBBdGlsZGUAZGl2aWRlAHRyYWRlAGdyYXBodml6X25vZGVfaW5kdWNlAHNvdXJjZQByZXB1bHNpdmVmb3JjZQBpbGxlZ2FsIHBhcmFtZXRlciBlbnRpdHkgcmVmZXJlbmNlAGVycm9yIGluIHByb2Nlc3NpbmcgZXh0ZXJuYWwgZW50aXR5IHJlZmVyZW5jZQByZWN1cnNpdmUgZW50aXR5IHJlZmVyZW5jZQBsYWJlbGRpc3RhbmNlAFRCX2JhbGFuY2UAVEJiYWxhbmNlAGRldmljZQBtb25vc3BhY2UAL3N2Zy9vbGRsYWNlAGZhY2UAc3ViZQAgLWFuY2hvciBlAHMxLT5jb21tX2Nvb3JkPT1zMi0+Y29tbV9jb29yZABNcmVjb3JkAGZvcndhcmQAcHJvZABsaWdodGdvbGRlbnJvZABtZWRpdW1nb2xkZW5yb2QAL3N2Zy9kYXJrZ29sZGVucm9kAC9zdmcvcGFsZWdvbGRlbnJvZAAvc3ZnL2dvbGRlbnJvZAAvc3ZnL2J1cmx5d29vZABsaWdodHdvb2QAbWVkaXVtd29vZABkYXJrd29vZABfYmFja2dyb3VuZABjb21wb3VuZABubyBlbGVtZW50IGZvdW5kAGZhdGFsIGZsZXggc2Nhbm5lciBpbnRlcm5hbCBlcnJvci0tbm8gYWN0aW9uIGZvdW5kAC9zdmcvYmxhbmNoZWRhbG1vbmQAYXJyb3dfbGVuZ3RoX2RpYW1vbmQATWRpYW1vbmQAbm9kZV9zZXRfZmluZABzdHJkaWN0X2ZpbmQAZ3Z1c2Vyc2hhcGVfZmluZABFTGxlZnRibmQAZXhwYW5kAGN1bWJlcmxhbmQAYnJpZ2h0Z29sZABvbGRnb2xkAC9zdmcvZ29sZABib2xkAEhlbHZldGljYS1OYXJyb3ctQm9sZABUaW1lcy1Cb2xkAENvdXJpZXItQm9sZABQYWxhdGluby1Cb2xkAE5ld0NlbnR1cnlTY2hsYmstQm9sZABIZWx2ZXRpY2EtQm9sZAAlMCpsbGQAJSpsbGQAKyVsbGQAbi0+YnJhbmNoW2ldLmNoaWxkACUrLjRsZAAlcyVsZABzb2xpZAAvc3ZnL21lZGl1bW9yY2hpZAAvc3ZnL2RhcmtvcmNoaWQAL3N2Zy9vcmNoaWQAaWxsZWdhbCBjaGFyYWN0ZXIocykgaW4gcHVibGljIGlkAGRpamtzdHJhX3NnZABmaXhlZABjdXJ2ZWQAZGVyaXZlZABkb3R0ZWQAbWVtb3J5IGV4aGF1c3RlZABsb2NhbGUgbm90IHN1cHBvcnRlZABwYXJzaW5nIGFib3J0ZWQAcGFyc2VyIG5vdCBzdGFydGVkAGF0dHJpYnV0ZSBtYWNyb3Mgbm90IGltcGxlbWVudGVkAGFjY291bnRpbmdEaWZmVG9sZXJhdGVkAHJvb3RQYXJzZXItPm1fYWxsb2NfdHJhY2tlci5ieXRlc0FsbG9jYXRlZCA+PSBieXRlc0FsbG9jYXRlZABmYXRhbCBmbGV4IHNjYW5uZXIgaW50ZXJuYWwgZXJyb3ItLWVuZCBvZiBidWZmZXIgbWlzc2VkAGNvbmRlbnNlZAAvc3ZnL21lZGl1bXZpb2xldHJlZAAvc3ZnL3BhbGV2aW9sZXRyZWQASW1wcm9wZXIgJXMgdmFsdWUgJXMgLSBpZ25vcmVkACVzIHZhbHVlICVzIDwgJWQgLSB0b28gc21hbGwgLSBpZ25vcmVkACVzIHZhbHVlICVzID4gJWQgLSB0b28gbGFyZ2UgLSBpZ25vcmVkAC9zdmcvaW5kaWFucmVkAC9zdmcvZGFya3JlZABhIHN1Y2Nlc3NmdWwgcHJpb3IgY2FsbCB0byBmdW5jdGlvbiBYTUxfR2V0QnVmZmVyIGlzIHJlcXVpcmVkAHRhcGVyZWQAL3N2Zy9vcmFuZ2VyZWQAcmVzZXJ2ZWQgcHJlZml4ICh4bWxucykgbXVzdCBub3QgYmUgZGVjbGFyZWQgb3IgdW5kZWNsYXJlZAAvc3ZnL3JlZABzdHJpcGVkAGlsbC1jb25kaXRpb25lZAB1bmRlZmluZWQAbm90IGNvbnN0cmFpbmVkAGxhYmVsYWxpZ25lZAB0ZXh0IGRlY2xhcmF0aW9uIG5vdCB3ZWxsLWZvcm1lZABYTUwgZGVjbGFyYXRpb24gbm90IHdlbGwtZm9ybWVkAHVuZmlsbGVkAGlucHV0IGluIGZsZXggc2Nhbm5lciBmYWlsZWQAdHJpYW5ndWxhdGlvbiBmYWlsZWQAcGFyc2luZyBmaW5pc2hlZABkYXNoZWQAbGltaXQgb24gaW5wdXQgYW1wbGlmaWNhdGlvbiBmYWN0b3IgKGZyb20gRFREIGFuZCBlbnRpdGllcykgYnJlYWNoZWQAd2VkZ2VkAHNpemUgPT0gZnJlZWQAcm91bmRlZABzcGxpbmUgWyUuMDNmLCAlLjAzZl0gLS0gWyUuMDNmLCAlLjAzZl0gaXMgaG9yaXpvbnRhbDsgd2lsbCBiZSB0cml2aWFsbHkgYm91bmRlZABzcGxpbmUgWyUuMDNmLCAlLjAzZl0gLS0gWyUuMDNmLCAlLjAzZl0gaXMgdmVydGljYWw7IHdpbGwgYmUgdHJpdmlhbGx5IGJvdW5kZWQAcGFyc2VyIG5vdCBzdXNwZW5kZWQAcGFyc2VyIHN1c3BlbmRlZABXZWQAUmVkAFNwYXJzZU1hdHJpeF9hZGQAbm9kZV9zZXRfYWRkAHN0cmRpY3RfYWRkAGRkICE9IHBhcmVudF9kZABLUF9BZGQAcGFkAHhsaGR4bG9hZAB4bGhkeHVubG9hZAByZWFkAGFycm93aGVhZABsaGVhZABzYW1laGVhZABib3gzZAAlc18lZABfc3Bhbl8lZABfYmxvY2tfJWQAX3dlYWtfJWQAX2Nsb25lXyVkAC4lZAAlWS0lbS0lZAAlbGYsJWQAJXMgaW4gbGluZSAlZAAlJSUlQm91bmRpbmdCb3g6ICVkICVkICVkICVkACJfc3ViZ3JhcGhfY250IjogJWQAIl9ndmlkIjogJWQAImhlYWQiOiAlZABhZ3hicHV0YwB2cHNjAGNwLT5zcmMAdWNpcmMAb2NpcmMAaWNpcmMAZWNpcmMAYWNpcmMAVWNpcmMAT2NpcmMASWNpcmMARWNpcmMAQWNpcmMAcGMAbGFiZWxsb2MAZXhwYXRfbWFsbG9jAGV4cGF0X3JlYWxsb2MAZ3ZfcmVjYWxsb2MAc3RkOjpiYWRfYWxsb2MAZ3ZfYXJlbmFfYWxsb2MAYmFrZXJzY2hvYwBzZW1pU3dlZXRDaG9jAG1jAFNwYXJzZU1hdHJpeF9pc19zeW1tZXRyaWMAQS0+aXNfcGF0dGVybl9zeW1tZXRyaWMAcGljOnBpYwBpdGFsaWMAQm9va21hbi1MaWdodEl0YWxpYwBaYXBmQ2hhbmNlcnktTWVkaXVtSXRhbGljAEJvb2ttYW4tRGVtaUl0YWxpYwBUaW1lcy1Cb2xkSXRhbGljAFBhbGF0aW5vLUJvbGRJdGFsaWMATmV3Q2VudHVyeVNjaGxiay1Cb2xkSXRhbGljAFRpbWVzLUl0YWxpYwBQYWxhdGluby1JdGFsaWMATmV3Q2VudHVyeVNjaGxiay1JdGFsaWMAcmFkaWMAI2ZjZmNmYwByb3V0ZXNwbGluZXM6ICVkIGVkZ2VzLCAlenUgYm94ZXMgJS4yZiBzZWMAOiAlLjJmIHNlYwBsaXN0ZGVscmVjAGxldmVsIGdyYXBoIHJlYwBsZXZlbCBlZGdlIHJlYwBsZXZlbCBub2RlIHJlYwBEZWMAX25lYXRvX2NjAGJjAHZpc2liaWxpdHkuYwBTcGFyc2VNYXRyaXguYwBodG1sbGV4LmMAaW5kZXguYwBzbWFydF9pbmlfeC5jAGd2cmVuZGVyX2NvcmVfcG92LmMAbHUuYwBjdnQuYwBsYXlvdXQuYwB0ZXh0c3Bhbl9sdXQuYwBhZGp1c3QuYwBub2RlbGlzdC5jAHNob3J0ZXN0LmMAY2xvc2VzdC5jAGd2cmVuZGVyX2NvcmVfZG90LmMAY29uc3RyYWludC5jAGRvdGluaXQuYwBuZWF0b2luaXQuYwBwYXRjaHdvcmtpbml0LmMAdHdvcGlpbml0LmMAb3NhZ2Vpbml0LmMAZW1pdC5jAGZsYXQuYwBhcnJvd3MuYwBtaW5jcm9zcy5jAHN0cmVzcy5jAHBvc3RfcHJvY2Vzcy5jAGNjb21wcy5jAG5zLmMAdXRpbHMuYwB4bGFiZWxzLmMAc2hhcGVzLmMAZG90c3BsaW5lcy5jAG5lYXRvc3BsaW5lcy5jAGNsdXN0ZXJlZGdlcy5jAGhlZGdlcy5jAGF0dHIuYwByZWZzdHIuYwBmYXN0Z3IuYwBjbHVzdGVyLmMAdGFwZXIuYwBndnJlbmRlci5jAHNwbGl0LnEuYwBjb21wLmMAZ3ZyZW5kZXJfY29yZV9tYXAuYwBoZWFwLmMAb3J0aG8uYwBndnJlbmRlcl9jb3JlX2pzb24uYwBwYXJ0aXRpb24uYwBwb3NpdGlvbi5jAGd2X2ZvcGVuLmMAdGV4dHNwYW4uYwBnZW9tLmMAcmFuZG9tLmMAcm91dGVzcGwuYwB4bWwuYwBNdWx0aWxldmVsLmMAc3ByaW5nX2VsZWN0cmljYWwuYwBndnJlbmRlcl9jb3JlX3RrLmMAcmFuay5jAHBhY2suYwBkdHN0cmhhc2guYwBncmFwaC5jAGd2cmVuZGVyX2NvcmVfc3ZnLmMAZ3ZyZW5kZXJfY29yZV9maWcuYwBzdHVmZi5jAG1hemUuYwBzcGFyc2Vfc29sdmUuYwByb3V0ZS5jAHdyaXRlLmMAY29seGxhdGUuYwB4bWxwYXJzZS5jAGd2bG9hZGltYWdlX2NvcmUuYwBndnVzZXJzaGFwZS5jAGNpcmNsZS5jAGh0bWx0YWJsZS5jAGVkZ2UuYwBndmxvYWRpbWFnZS5jAGJsb2NrdHJlZS5jAFF1YWRUcmVlLmMAbm9kZS5jAG5vZGVfaW5kdWNlLmMAZ3ZkZXZpY2UuYwBjb21wb3VuZC5jAHRyYXBlem9pZC5jAHNnZC5jAGNvbmMuYwByZWMuYwBkaWprc3RyYS5jAGFyZW5hLmMAZlBRLmMAY2xhc3MyLmMAJWxmLCVsZiwlbGYsJWxmJWMAJWxmLCVsZiwlbGYsJVteLF0lYwBcJWMAJGMAd2IAbnN1YgBzZXRoc2IAcmIAcHJvdGVjdF9yc3FiAGpvYgBjb3JlX2xvYWRpbWFnZV9wc2xpYgBGZWIAb2RiAGluaXRfc3BsaW5lc19iYgBiZXppZXJfYmIAcHJvdGVpbnN0YWIAcm5hc3RhYgAvc3ZnL29saXZlZHJhYgBcYgByd2EAL3N2Zy9hcXVhAGlvdGEASW90YQAvc3ZnL2RhcmttYWdlbnRhAC9zdmcvbWFnZW50YQBkZWx0YQBEZWx0YQB6ZXRhAHRoZXRhAFRoZXRhAGJldGEAWmV0YQBCZXRhAHByZXYgIT0gb2JqLT5kYXRhAG1ha2VHcmFwaERhdGEARXRhAG5pbWJ1c3NhbnNhAHBhcmEAa2FwcGEAS2FwcGEAL3N2Zy9zaWVubmEAVmVyZGFuYQBnYW1tYQBHYW1tYQBzaWdtYQBTaWdtYQBjb25zb2xhAG5hYmxhAC9zdmcvZnVjaHNpYQBHZW9yZ2lhAGFscGhhAEFscGhhAG9tZWdhAE9tZWdhAGFyZWEAbGFtYmRhAExhbWJkYQBoZWx2ZXRpY2EASGVsdmV0aWNhAG1pY2EAPjxhAGAAU3BhcnNlTWF0cml4X2Nvb3JkaW5hdGVfZm9ybV9hZGRfZW50cnlfAGd2X2xpc3RfY29weV8AX3RkcmF3XwBfdGxkcmF3XwBfaGxkcmF3XwBfbGRyYXdfAF9oZHJhd18AX2RyYXdfAGd2X2xpc3Rfc29ydF8AZ3ZfbGlzdF9hcHBlbmRfc2xvdF8AZ3ZfbGlzdF9wcmVwZW5kX3Nsb3RfAGd2X2xpc3RfcG9wX2Zyb250XwBndl9saXN0X3Nocmlua190b19maXRfAGFneHNldF8AZ3ZfbGlzdF9nZXRfAGRvdF9zcGxpbmVzXwAlc18AZ3ZfbGlzdF9jbGVhcl8AZ3ZfbGlzdF9wb3BfYmFja18AZ3ZfbGlzdF9kZXRhY2hfAGd2X2xpc3RfcmVtb3ZlXwBndl9saXN0X3JldmVyc2VfAGd2X2xpc3RfZnJlZV8AZ3ZfbGlzdF90cnlfYXBwZW5kXwBwYWdlJWQsJWRfAGd2X2xpc3Rfc3luY18AX2NjXwAgaWQ9ImFfAF4AU3RhcnRpbmcgcGhhc2UgMiBbZG90X21pbmNyb3NzXQBTdGFydGluZyBwaGFzZSAzIFtkb3RfcG9zaXRpb25dAG5fZWRnZXMgPT0gZ3JhcGgtPnNvdXJjZXNbZ3JhcGgtPm5dAFN0YXJ0aW5nIHBoYXNlIDEgW2RvdF9yYW5rXQBqZFttYXNrW2pjW2tdXV0gPT0gamNba10AamNbbWFza1tqYltrXV1dID09IGpiW2tdAG5lZWRsZVtpXSAhPSBuZWVkbGVbal0AamFbbWFza1tqYVtqXV1dID09IGphW2pdAHEtPnF0c1tpaV0AIXJ0cC0+c3BsaXQuUGFydGl0aW9uc1swXS50YWtlbltpXQByLmJvdW5kYXJ5W2ldIDw9IHIuYm91bmRhcnlbTlVNRElNUyArIGldAFslLjAzZiwlLjAzZl0AW2ludGVybmFsIGhhcmQtY29kZWRdAG5wLT5jZWxsc1sxXQBucC0+Y2VsbHNbMF0AdXMtPm5hbWVbMF0AY3AtPnNyY1swXQBbLi5dAFxcACJwb2ludHMiOiBbACJzdG9wcyI6IFsACVsAWgBjb21wdXRlU2NhbGVYWQB5PD1ZACVhICViICVkICVIOiVNOiVTICVZAFBPU0lYAG56IDw9IElOVF9NQVgAeSA+PSBJTlRfTUlOICYmIHkgPD0gSU5UX01BWAB4ID49IElOVF9NSU4gJiYgeCA8PSBJTlRfTUFYAHcgPj0gMCAmJiB3IDw9IElOVF9NQVgAZV9jbnQgPD0gSU5UX01BWABwYWlyLnJpZ2h0IDw9IElOVF9NQVgAcGFpci5sZWZ0IDw9IElOVF9NQVgAdGFyZ2V0IDw9IElOVF9NQVgAbnNlZ3MgPD0gSU5UX01BWABuX2VkZ2VzIDw9IElOVF9NQVgAc3RwLm52ZXJ0aWNlcyA8PSBJTlRfTUFYAG9ic1twb2x5X2ldLT5wbiA8PSBJTlRfTUFYAGlucHV0X3JvdXRlLnBuIDw9IElOVF9NQVgAZ3JhcGgtPm4gPD0gSU5UX01BWABoID49IDAgJiYgaCA8PSBJTlRfTUFYAGVfY250IC0gMSA8PSBJTlRfTUFYAExJU1RfU0laRSgmbGlzdCkgLSAxIDw9IElOVF9NQVgATElTVF9TSVpFKCZsYXllcklEcykgLSAxIDw9IElOVF9NQVgAc3RybGVuKGFyZ3MpIDw9IElOVF9NQVgATElTVF9TSVpFKCZvYmpsKSA8PSBJTlRfTUFYAExJU1RfU0laRSgmY3R4LT5UcmVlX2VkZ2UpIDw9IElOVF9NQVgAbm9kZV9zZXRfc2l6ZShnLT5uX2lkKSA8PSBJTlRfTUFYAGkgPCBJTlRfTUFYAHJlc3VsdCA8PSAoaW50KVVDSEFSX01BWABzc3ogPD0gVUNIQVJfTUFYAGNvbCA+PSAwICYmIGNvbCA8PSBVSU5UMTZfTUFYAHg8PVgAVwBWAFUAXFQAVEVYVABTVFJFU1NfTUFKT1JJWkFUSU9OX1BPV0VSX0RJU1QAU1RSRVNTX01BSk9SSVpBVElPTl9HUkFQSF9ESVNUAFNUUkVTU19NQUpPUklaQVRJT05fQVZHX0RJU1QARkFTVABGT05UAGIgPT0gQl9SSUdIVABIRUlHSFQAQl9MRUZUAF8lbGx1X1NVU1BFQ1QAQlQAVHJlYnVjaGV0IE1TAElOVklTACVIOiVNOiVTAFZSAFRSAEEtPmZvcm1hdCA9PSBCLT5mb3JtYXQgJiYgQS0+Zm9ybWF0ID09IEZPUk1BVF9DU1IATFIARElSAEhSAENFTlRFUgAlJVRSQUlMRVIAQS0+dHlwZSA9PSBNQVRSSVhfVFlQRV9SRUFMIHx8IEEtPnR5cGUgPT0gTUFUUklYX1RZUEVfSU5URUdFUgBDRUxMQk9SREVSAEJSACpSAFEARVhQAEJfVVAAU1VQAFRPUABPAG1hcE4AXE4AQl9ET1dOAFRIT1JOACUlQkVHSU4AUk9XU1BBTgBDT0xTUEFOAE5BTgBQTQBCT1RUT00AQk0AQU0AJUg6JU0AXEwAdGFpbFVSTABsYWJlbFVSTABlZGdlVVJMAGhlYWRVUkwASFRNTAB4IT1OVUxMAHJvb3RQYXJzZXItPm1fcGFyZW50UGFyc2VyID09IE5VTEwARURfdG9fdmlydChvcmlnKSA9PSBOVUxMAEVEX3RvX3ZpcnQoZSkgPT0gTlVMTABwcmVmaXggIT0gTlVMTABkdGQtPnNjYWZmSW5kZXggIT0gTlVMTABzbS0+THcgIT0gTlVMTABsdSAhPSBOVUxMAGlucHV0ICE9IE5VTEwAbGlzdCAhPSBOVUxMAHJlZmVyZW50ICE9IE5VTEwAZGljdCAhPSBOVUxMAGRpY3QtPmJ1Y2tldHMgIT0gTlVMTABhdHRyICE9IE5VTEwAYWxsb2NhdG9yICE9IE5VTEwAcGFyc2VyICE9IE5VTEwAcm9vdFBhcnNlciAhPSBOVUxMAGxlYWRlciAhPSBOVUxMAGNtcCAhPSBOVUxMAGRhdGFwICE9IE5VTEwAaW50byAhPSBOVUxMAGl0ZW0gIT0gTlVMTABvcnRob2cgIT0gTlVMTABzZWxmICE9IE5VTEwAdmFsdWUgIT0gTlVMTABmaWxlbmFtZSAhPSBOVUxMAGpvYi0+b3V0cHV0X2ZpbGUgIT0gTlVMTABtb2RlICE9IE5VTEwAeGQgIT0gTlVMTABzbS0+THdkICE9IE5VTEwAam9iICE9IE5VTEwAc291cmNlLmRhdGEgIT0gTlVMTABiLmRhdGEgIT0gTlVMTABhLmRhdGEgIT0gTlVMTABhcmVuYSAhPSBOVUxMAGxpc3QgJiYgbGlzdFswXSAhPSBOVUxMAEFGICE9IE5VTEwAc20tPkQgIT0gTlVMTABFRF90b192aXJ0KG9yaWcpICE9IE5VTEwATENfQUxMAEJMAGJlc3Rjb3N0IDwgSFVHRV9WQUwATk9STUFMAFJBRElBTABBLT50eXBlID09IE1BVFJJWF9UWVBFX1JFQUwAVVJXIENoYW5jZXJ5IEwAVVJXIEJvb2ttYW4gTABDZW50dXJ5IFNjaG9vbGJvb2sgTABVUlcgR290aGljIEwAS0sASgBpIDwgTUFYX0kAUC0+ZW5kLnRoZXRhIDwgMiAqIE1fUEkAQVNDSUkAXEgARVRIAFdJRFRIAERPVEZPTlRQQVRIAEdERk9OVFBBVEgAbWtOQ29uc3RyYWludEcAXEcARVhQQVRfRU5USVRZX0RFQlVHAEVYUEFUX0VOVFJPUFlfREVCVUcARVhQQVRfQUNDT1VOVElOR19ERUJVRwBFWFBBVF9NQUxMT0NfREVCVUcAUk5HAFNQUklORwBDRUxMUEFERElORwBDRUxMU1BBQ0lORwBMQU5HAElNRwBceEYAJSVFT0YASU5GAFx4RkYAUklGRgBkZWx0YSA8PSAweEZGRkYAXHhFRgBceERGAFx4Q0YAXHhCRgBceEFGAFx4OUYAXHg4RgBceDdGAFx4MUYAXHhFAFxFAFBPSU5ULVNJWkUAVFJVRQBDTE9TRQBGQUxTRQBrZXkgIT0gVE9NQlNUT05FAHIgIT0gVE9NQlNUT05FAE5PTkUAR1JBRElFTlRBTkdMRQBUUklBTkdMRQBNSURETEUASU5WSVNJQkxFAFRBQkxFAEFHVFlQRShvYmopID09IEFHSU5FREdFIHx8IEFHVFlQRShvYmopID09IEFHT1VURURHRQBceEZFAFx4RUUAXHhERQBCX05PREUAXHhDRQBceEJFAFx4QUUAXHg5RQBceDhFAFx4MUUAVEQAQS0+Zm9ybWF0ID09IEZPUk1BVF9DT09SRABuICYmIGkgPj0gMCAmJiBpIDwgTk9ERUNBUkQAJSVFTkQASFlCUklEAFNPTElEAFx4RkQAXHhFRABET1RURUQAREFTSEVEAFJPVU5ERUQAXHhERABceENEAFx4QkQAXHhBRABceDlEAFx4OEQAXHgxRABceEMAZGVsZXRlVlBTQwBceEZDAFx4RUMAXHhEQwBceENDAFx4QkMAXHhBQwBceDlDAFx4OEMAXHgxQwBceEIAU1VCAFx4RkIAXHhFQgBceERCAFx4Q0IAXHhCQgBceEFCAFx4OUIAXHg4QgBceDFCAEEgJiYgQgBceEZBAFx4RUEAXHhEQQBceENBAFx4QkEAXHhBQQBceDlBAFx4OEEAXHgxQQBAAD8APCVzPgA8bmlsPgA8L3RzcGFuPjwvdGV4dFBhdGg+AAogICAgPCU5LjNmLCAlOS4zZiwgJTkuM2Y+AD4KPHRpdGxlPgA8Rk9OVD4APEJSPgA8SFRNTD4APC9IVE1MPgA8SU1HPgBTeW50YXggZXJyb3I6IG5vbi1zcGFjZSBzdHJpbmcgdXNlZCBiZWZvcmUgPFRBQkxFPgBTeW50YXggZXJyb3I6IG5vbi1zcGFjZSBzdHJpbmcgdXNlZCBhZnRlciA8L1RBQkxFPgA8VEQ+AC0+ACI+AAlba2V5PQA8PQA8ACYjeCV4OwAmcXVvdDsAJmx0OwAmZ3Q7ACZhbXA7ACMlZDsAJiMzOTsAJiM0NTsAJiM5MzsAJiMxMzsAJiMxNjA7ACYjMTA7ADtzdG9wLW9wYWNpdHk6ACUlQm91bmRpbmdCb3g6AGNhbGN1bGF0aW5nIHNob3J0ZXN0IHBhdGhzIGFuZCBzZXR0aW5nIHVwIHN0cmVzcyB0ZXJtczoAPHN0b3Agb2Zmc2V0PSIlLjAzZiIgc3R5bGU9InN0b3AtY29sb3I6ADxzdG9wIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6ADxzdG9wIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6AHNvbHZpbmcgbW9kZWw6AC9cOgBncmV5OQBncmF5OQBceEY5AFx4RTkAXHhEOQBceEM5AFx4QjkAXHhBOQBncmV5OTkAZ3JheTk5AFx4OTkAZ3JleTg5AGdyYXk4OQBceDg5ADAxMjM0NTY3ODkAZ3JleTc5AGdyYXk3OQBncmV5NjkAZ3JheTY5AGdyZXk1OQBncmF5NTkAZ3JleTQ5AGdyYXk0OQBncmV5MzkAZ3JheTM5AGdyZXkyOQBncmF5MjkAZ3JleTE5AGdyYXkxOQBceDE5AC9yZGd5OS85AC9idXB1OS85AC9yZHB1OS85AC9wdWJ1OS85AC95bGduYnU5LzkAL2duYnU5LzkAL3JkeWxidTkvOQAvcmRidTkvOQAvZ3JleXM5LzkAL2dyZWVuczkvOQAvYmx1ZXM5LzkAL3B1cnBsZXM5LzkAL29yYW5nZXM5LzkAL3JlZHM5LzkAL3B1b3I5LzkAL3lsb3JicjkvOQAvcHVidWduOS85AC9idWduOS85AC9wcmduOS85AC9yZHlsZ245LzkAL3lsZ245LzkAL3NwZWN0cmFsOS85AC9waXlnOS85AC9icmJnOS85AC9wdXJkOS85AC95bG9ycmQ5LzkAL29ycmQ5LzkAL3BhaXJlZDkvOQAvc2V0MzkvOQAvc2V0MTkvOQAvcGFzdGVsMTkvOQAvcGFpcmVkMTIvOQAvc2V0MzEyLzkAL3JkZ3kxMS85AC9yZHlsYnUxMS85AC9yZGJ1MTEvOQAvcHVvcjExLzkAL3ByZ24xMS85AC9yZHlsZ24xMS85AC9zcGVjdHJhbDExLzkAL3BpeWcxMS85AC9icmJnMTEvOQAvcGFpcmVkMTEvOQAvc2V0MzExLzkAL3JkZ3kxMC85AC9yZHlsYnUxMC85AC9yZGJ1MTAvOQAvcHVvcjEwLzkAL3ByZ24xMC85AC9yZHlsZ24xMC85AC9zcGVjdHJhbDEwLzkAL3BpeWcxMC85AC9icmJnMTAvOQAvcGFpcmVkMTAvOQAvc2V0MzEwLzkAZ3JleTgAZ3JheTgAXHg4AHV0ZjgAI2Y4ZjhmOAAjZThlOGU4AFx4RjgAR0lGOABceEU4AFx4RDgAXHhDOABceEI4AFx4QTgAZ3JleTk4AGdyYXk5OABceDk4AGdyZXk4OABncmF5ODgAXHg4OABncmV5NzgAZ3JheTc4AGdyZXk2OABncmF5NjgAZ3JleTU4AGdyYXk1OABncmV5NDgAZ3JheTQ4AGdyZXkzOABncmF5MzgAZ3JleTI4AGdyYXkyOABncmV5MTgAZ3JheTE4AFx4MTgAL3JkZ3k5LzgAL2J1cHU5LzgAL3JkcHU5LzgAL3B1YnU5LzgAL3lsZ25idTkvOAAvZ25idTkvOAAvcmR5bGJ1OS84AC9yZGJ1OS84AC9ncmV5czkvOAAvZ3JlZW5zOS84AC9ibHVlczkvOAAvcHVycGxlczkvOAAvb3JhbmdlczkvOAAvcmVkczkvOAAvcHVvcjkvOAAveWxvcmJyOS84AC9wdWJ1Z245LzgAL2J1Z245LzgAL3ByZ245LzgAL3JkeWxnbjkvOAAveWxnbjkvOAAvc3BlY3RyYWw5LzgAL3BpeWc5LzgAL2JyYmc5LzgAL3B1cmQ5LzgAL3lsb3JyZDkvOAAvb3JyZDkvOAAvcGFpcmVkOS84AC9zZXQzOS84AC9zZXQxOS84AC9wYXN0ZWwxOS84AC9yZGd5OC84AC9idXB1OC84AC9yZHB1OC84AC9wdWJ1OC84AC95bGduYnU4LzgAL2duYnU4LzgAL3JkeWxidTgvOAAvcmRidTgvOAAvYWNjZW50OC84AC9ncmV5czgvOAAvZ3JlZW5zOC84AC9ibHVlczgvOAAvcHVycGxlczgvOAAvb3JhbmdlczgvOAAvcmVkczgvOAAvcHVvcjgvOAAveWxvcmJyOC84AC9wdWJ1Z244LzgAL2J1Z244LzgAL3ByZ244LzgAL3JkeWxnbjgvOAAveWxnbjgvOAAvc3BlY3RyYWw4LzgAL3BpeWc4LzgAL2JyYmc4LzgAL3B1cmQ4LzgAL3lsb3JyZDgvOAAvb3JyZDgvOAAvcGFpcmVkOC84AC9zZXQzOC84AC9zZXQyOC84AC9wYXN0ZWwyOC84AC9kYXJrMjgvOAAvc2V0MTgvOAAvcGFzdGVsMTgvOAAvcGFpcmVkMTIvOAAvc2V0MzEyLzgAL3JkZ3kxMS84AC9yZHlsYnUxMS84AC9yZGJ1MTEvOAAvcHVvcjExLzgAL3ByZ24xMS84AC9yZHlsZ24xMS84AC9zcGVjdHJhbDExLzgAL3BpeWcxMS84AC9icmJnMTEvOAAvcGFpcmVkMTEvOAAvc2V0MzExLzgAL3JkZ3kxMC84AC9yZHlsYnUxMC84AC9yZGJ1MTAvOAAvcHVvcjEwLzgAL3ByZ24xMC84AC9yZHlsZ24xMC84AC9zcGVjdHJhbDEwLzgAL3BpeWcxMC84AC9icmJnMTAvOAAvcGFpcmVkMTAvOAAvc2V0MzEwLzgAdXRmLTgAQy5VVEYtOABncmV5NwBncmF5NwBceDcAXHhGNwBceEU3AFx4RDcAXHhDNwBceEI3AFx4QTcAZ3JleTk3AGdyYXk5NwBceDk3AGdyZXk4NwBncmF5ODcAXHg4NwBncmV5NzcAZ3JheTc3AGdyZXk2NwBncmF5NjcAZ3JleTU3AGdyYXk1NwBncmV5NDcAZ3JheTQ3AGdyZXkzNwBncmF5MzcAZ3JleTI3AGdyYXkyNwBncmV5MTcAZ3JheTE3AFx4MTcAL3JkZ3k5LzcAL2J1cHU5LzcAL3JkcHU5LzcAL3B1YnU5LzcAL3lsZ25idTkvNwAvZ25idTkvNwAvcmR5bGJ1OS83AC9yZGJ1OS83AC9ncmV5czkvNwAvZ3JlZW5zOS83AC9ibHVlczkvNwAvcHVycGxlczkvNwAvb3JhbmdlczkvNwAvcmVkczkvNwAvcHVvcjkvNwAveWxvcmJyOS83AC9wdWJ1Z245LzcAL2J1Z245LzcAL3ByZ245LzcAL3JkeWxnbjkvNwAveWxnbjkvNwAvc3BlY3RyYWw5LzcAL3BpeWc5LzcAL2JyYmc5LzcAL3B1cmQ5LzcAL3lsb3JyZDkvNwAvb3JyZDkvNwAvcGFpcmVkOS83AC9zZXQzOS83AC9zZXQxOS83AC9wYXN0ZWwxOS83AC9yZGd5OC83AC9idXB1OC83AC9yZHB1OC83AC9wdWJ1OC83AC95bGduYnU4LzcAL2duYnU4LzcAL3JkeWxidTgvNwAvcmRidTgvNwAvYWNjZW50OC83AC9ncmV5czgvNwAvZ3JlZW5zOC83AC9ibHVlczgvNwAvcHVycGxlczgvNwAvb3JhbmdlczgvNwAvcmVkczgvNwAvcHVvcjgvNwAveWxvcmJyOC83AC9wdWJ1Z244LzcAL2J1Z244LzcAL3ByZ244LzcAL3JkeWxnbjgvNwAveWxnbjgvNwAvc3BlY3RyYWw4LzcAL3BpeWc4LzcAL2JyYmc4LzcAL3B1cmQ4LzcAL3lsb3JyZDgvNwAvb3JyZDgvNwAvcGFpcmVkOC83AC9zZXQzOC83AC9zZXQyOC83AC9wYXN0ZWwyOC83AC9kYXJrMjgvNwAvc2V0MTgvNwAvcGFzdGVsMTgvNwAvcmRneTcvNwAvYnVwdTcvNwAvcmRwdTcvNwAvcHVidTcvNwAveWxnbmJ1Ny83AC9nbmJ1Ny83AC9yZHlsYnU3LzcAL3JkYnU3LzcAL2FjY2VudDcvNwAvZ3JleXM3LzcAL2dyZWVuczcvNwAvYmx1ZXM3LzcAL3B1cnBsZXM3LzcAL29yYW5nZXM3LzcAL3JlZHM3LzcAL3B1b3I3LzcAL3lsb3JicjcvNwAvcHVidWduNy83AC9idWduNy83AC9wcmduNy83AC9yZHlsZ243LzcAL3lsZ243LzcAL3NwZWN0cmFsNy83AC9waXlnNy83AC9icmJnNy83AC9wdXJkNy83AC95bG9ycmQ3LzcAL29ycmQ3LzcAL3BhaXJlZDcvNwAvc2V0MzcvNwAvc2V0MjcvNwAvcGFzdGVsMjcvNwAvZGFyazI3LzcAL3NldDE3LzcAL3Bhc3RlbDE3LzcAL3BhaXJlZDEyLzcAL3NldDMxMi83AC9yZGd5MTEvNwAvcmR5bGJ1MTEvNwAvcmRidTExLzcAL3B1b3IxMS83AC9wcmduMTEvNwAvcmR5bGduMTEvNwAvc3BlY3RyYWwxMS83AC9waXlnMTEvNwAvYnJiZzExLzcAL3BhaXJlZDExLzcAL3NldDMxMS83AC9yZGd5MTAvNwAvcmR5bGJ1MTAvNwAvcmRidTEwLzcAL3B1b3IxMC83AC9wcmduMTAvNwAvcmR5bGduMTAvNwAvc3BlY3RyYWwxMC83AC9waXlnMTAvNwAvYnJiZzEwLzcAL3BhaXJlZDEwLzcAL3NldDMxMC83ADEuNwBncmV5NgBncmF5NgBceDYAXHhGNgBceEU2AFx4RDYAXHhDNgBceEI2AFx4QTYAZ3JleTk2AGdyYXk5NgBceDk2AGdyZXk4NgBncmF5ODYAXHg4NgBncmV5NzYAZ3JheTc2AGdyZXk2NgBncmF5NjYAZ3JleTU2AGdyYXk1NgBncmV5NDYAZ3JheTQ2AGdyZXkzNgBncmF5MzYAZ3JleTI2AGdyYXkyNgBncmV5MTYAZ3JheTE2AFx4MTYAL3JkZ3k5LzYAL2J1cHU5LzYAL3JkcHU5LzYAL3B1YnU5LzYAL3lsZ25idTkvNgAvZ25idTkvNgAvcmR5bGJ1OS82AC9yZGJ1OS82AC9ncmV5czkvNgAvZ3JlZW5zOS82AC9ibHVlczkvNgAvcHVycGxlczkvNgAvb3JhbmdlczkvNgAvcmVkczkvNgAvcHVvcjkvNgAveWxvcmJyOS82AC9wdWJ1Z245LzYAL2J1Z245LzYAL3ByZ245LzYAL3JkeWxnbjkvNgAveWxnbjkvNgAvc3BlY3RyYWw5LzYAL3BpeWc5LzYAL2JyYmc5LzYAL3B1cmQ5LzYAL3lsb3JyZDkvNgAvb3JyZDkvNgAvcGFpcmVkOS82AC9zZXQzOS82AC9zZXQxOS82AC9wYXN0ZWwxOS82AC9yZGd5OC82AC9idXB1OC82AC9yZHB1OC82AC9wdWJ1OC82AC95bGduYnU4LzYAL2duYnU4LzYAL3JkeWxidTgvNgAvcmRidTgvNgAvYWNjZW50OC82AC9ncmV5czgvNgAvZ3JlZW5zOC82AC9ibHVlczgvNgAvcHVycGxlczgvNgAvb3JhbmdlczgvNgAvcmVkczgvNgAvcHVvcjgvNgAveWxvcmJyOC82AC9wdWJ1Z244LzYAL2J1Z244LzYAL3ByZ244LzYAL3JkeWxnbjgvNgAveWxnbjgvNgAvc3BlY3RyYWw4LzYAL3BpeWc4LzYAL2JyYmc4LzYAL3B1cmQ4LzYAL3lsb3JyZDgvNgAvb3JyZDgvNgAvcGFpcmVkOC82AC9zZXQzOC82AC9zZXQyOC82AC9wYXN0ZWwyOC82AC9kYXJrMjgvNgAvc2V0MTgvNgAvcGFzdGVsMTgvNgAvcmRneTcvNgAvYnVwdTcvNgAvcmRwdTcvNgAvcHVidTcvNgAveWxnbmJ1Ny82AC9nbmJ1Ny82AC9yZHlsYnU3LzYAL3JkYnU3LzYAL2FjY2VudDcvNgAvZ3JleXM3LzYAL2dyZWVuczcvNgAvYmx1ZXM3LzYAL3B1cnBsZXM3LzYAL29yYW5nZXM3LzYAL3JlZHM3LzYAL3B1b3I3LzYAL3lsb3JicjcvNgAvcHVidWduNy82AC9idWduNy82AC9wcmduNy82AC9yZHlsZ243LzYAL3lsZ243LzYAL3NwZWN0cmFsNy82AC9waXlnNy82AC9icmJnNy82AC9wdXJkNy82AC95bG9ycmQ3LzYAL29ycmQ3LzYAL3BhaXJlZDcvNgAvc2V0MzcvNgAvc2V0MjcvNgAvcGFzdGVsMjcvNgAvZGFyazI3LzYAL3NldDE3LzYAL3Bhc3RlbDE3LzYAL3JkZ3k2LzYAL2J1cHU2LzYAL3JkcHU2LzYAL3B1YnU2LzYAL3lsZ25idTYvNgAvZ25idTYvNgAvcmR5bGJ1Ni82AC9yZGJ1Ni82AC9hY2NlbnQ2LzYAL2dyZXlzNi82AC9ncmVlbnM2LzYAL2JsdWVzNi82AC9wdXJwbGVzNi82AC9vcmFuZ2VzNi82AC9yZWRzNi82AC9wdW9yNi82AC95bG9yYnI2LzYAL3B1YnVnbjYvNgAvYnVnbjYvNgAvcHJnbjYvNgAvcmR5bGduNi82AC95bGduNi82AC9zcGVjdHJhbDYvNgAvcGl5ZzYvNgAvYnJiZzYvNgAvcHVyZDYvNgAveWxvcnJkNi82AC9vcnJkNi82AC9wYWlyZWQ2LzYAL3NldDM2LzYAL3NldDI2LzYAL3Bhc3RlbDI2LzYAL2RhcmsyNi82AC9zZXQxNi82AC9wYXN0ZWwxNi82AC9wYWlyZWQxMi82AC9zZXQzMTIvNgAvcmRneTExLzYAL3JkeWxidTExLzYAL3JkYnUxMS82AC9wdW9yMTEvNgAvcHJnbjExLzYAL3JkeWxnbjExLzYAL3NwZWN0cmFsMTEvNgAvcGl5ZzExLzYAL2JyYmcxMS82AC9wYWlyZWQxMS82AC9zZXQzMTEvNgAvcmRneTEwLzYAL3JkeWxidTEwLzYAL3JkYnUxMC82AC9wdW9yMTAvNgAvcHJnbjEwLzYAL3JkeWxnbjEwLzYAL3NwZWN0cmFsMTAvNgAvcGl5ZzEwLzYAL2JyYmcxMC82AC9wYWlyZWQxMC82AC9zZXQzMTAvNgBncmV5NQBncmF5NQBceDUAYmlnNQBceEY1AFx4RTUAXHhENQBceEM1AFx4QjUAXHhBNQBncmV5OTUAZ3JheTk1AFx4OTUAZ3JleTg1AGdyYXk4NQBceDg1AGdyZXk3NQBncmF5NzUAZ3JleTY1AGdyYXk2NQBncmV5NTUAZ3JheTU1AGdyZXk0NQBncmF5NDUAZ3JleTM1AGdyYXkzNQBncmV5MjUAZ3JheTI1AGdyZXkxNQBncmF5MTUAXHgxNQBncmF5MDUAL3JkZ3k5LzUAL2J1cHU5LzUAL3JkcHU5LzUAL3B1YnU5LzUAL3lsZ25idTkvNQAvZ25idTkvNQAvcmR5bGJ1OS81AC9yZGJ1OS81AC9ncmV5czkvNQAvZ3JlZW5zOS81AC9ibHVlczkvNQAvcHVycGxlczkvNQAvb3JhbmdlczkvNQAvcmVkczkvNQAvcHVvcjkvNQAveWxvcmJyOS81AC9wdWJ1Z245LzUAL2J1Z245LzUAL3ByZ245LzUAL3JkeWxnbjkvNQAveWxnbjkvNQAvc3BlY3RyYWw5LzUAL3BpeWc5LzUAL2JyYmc5LzUAL3B1cmQ5LzUAL3lsb3JyZDkvNQAvb3JyZDkvNQAvcGFpcmVkOS81AC9zZXQzOS81AC9zZXQxOS81AC9wYXN0ZWwxOS81AC9yZGd5OC81AC9idXB1OC81AC9yZHB1OC81AC9wdWJ1OC81AC95bGduYnU4LzUAL2duYnU4LzUAL3JkeWxidTgvNQAvcmRidTgvNQAvYWNjZW50OC81AC9ncmV5czgvNQAvZ3JlZW5zOC81AC9ibHVlczgvNQAvcHVycGxlczgvNQAvb3JhbmdlczgvNQAvcmVkczgvNQAvcHVvcjgvNQAveWxvcmJyOC81AC9wdWJ1Z244LzUAL2J1Z244LzUAL3ByZ244LzUAL3JkeWxnbjgvNQAveWxnbjgvNQAvc3BlY3RyYWw4LzUAL3BpeWc4LzUAL2JyYmc4LzUAL3B1cmQ4LzUAL3lsb3JyZDgvNQAvb3JyZDgvNQAvcGFpcmVkOC81AC9zZXQzOC81AC9zZXQyOC81AC9wYXN0ZWwyOC81AC9kYXJrMjgvNQAvc2V0MTgvNQAvcGFzdGVsMTgvNQAvcmRneTcvNQAvYnVwdTcvNQAvcmRwdTcvNQAvcHVidTcvNQAveWxnbmJ1Ny81AC9nbmJ1Ny81AC9yZHlsYnU3LzUAL3JkYnU3LzUAL2FjY2VudDcvNQAvZ3JleXM3LzUAL2dyZWVuczcvNQAvYmx1ZXM3LzUAL3B1cnBsZXM3LzUAL29yYW5nZXM3LzUAL3JlZHM3LzUAL3B1b3I3LzUAL3lsb3JicjcvNQAvcHVidWduNy81AC9idWduNy81AC9wcmduNy81AC9yZHlsZ243LzUAL3lsZ243LzUAL3NwZWN0cmFsNy81AC9waXlnNy81AC9icmJnNy81AC9wdXJkNy81AC95bG9ycmQ3LzUAL29ycmQ3LzUAL3BhaXJlZDcvNQAvc2V0MzcvNQAvc2V0MjcvNQAvcGFzdGVsMjcvNQAvZGFyazI3LzUAL3NldDE3LzUAL3Bhc3RlbDE3LzUAL3JkZ3k2LzUAL2J1cHU2LzUAL3JkcHU2LzUAL3B1YnU2LzUAL3lsZ25idTYvNQAvZ25idTYvNQAvcmR5bGJ1Ni81AC9yZGJ1Ni81AC9hY2NlbnQ2LzUAL2dyZXlzNi81AC9ncmVlbnM2LzUAL2JsdWVzNi81AC9wdXJwbGVzNi81AC9vcmFuZ2VzNi81AC9yZWRzNi81AC9wdW9yNi81AC95bG9yYnI2LzUAL3B1YnVnbjYvNQAvYnVnbjYvNQAvcHJnbjYvNQAvcmR5bGduNi81AC95bGduNi81AC9zcGVjdHJhbDYvNQAvcGl5ZzYvNQAvYnJiZzYvNQAvcHVyZDYvNQAveWxvcnJkNi81AC9vcnJkNi81AC9wYWlyZWQ2LzUAL3NldDM2LzUAL3NldDI2LzUAL3Bhc3RlbDI2LzUAL2RhcmsyNi81AC9zZXQxNi81AC9wYXN0ZWwxNi81AC9yZGd5NS81AC9idXB1NS81AC9yZHB1NS81AC9wdWJ1NS81AC95bGduYnU1LzUAL2duYnU1LzUAL3JkeWxidTUvNQAvcmRidTUvNQAvYWNjZW50NS81AC9ncmV5czUvNQAvZ3JlZW5zNS81AC9ibHVlczUvNQAvcHVycGxlczUvNQAvb3JhbmdlczUvNQAvcmVkczUvNQAvcHVvcjUvNQAveWxvcmJyNS81AC9wdWJ1Z241LzUAL2J1Z241LzUAL3ByZ241LzUAL3JkeWxnbjUvNQAveWxnbjUvNQAvc3BlY3RyYWw1LzUAL3BpeWc1LzUAL2JyYmc1LzUAL3B1cmQ1LzUAL3lsb3JyZDUvNQAvb3JyZDUvNQAvcGFpcmVkNS81AC9zZXQzNS81AC9zZXQyNS81AC9wYXN0ZWwyNS81AC9kYXJrMjUvNQAvc2V0MTUvNQAvcGFzdGVsMTUvNQAvcGFpcmVkMTIvNQAvc2V0MzEyLzUAL3JkZ3kxMS81AC9yZHlsYnUxMS81AC9yZGJ1MTEvNQAvcHVvcjExLzUAL3ByZ24xMS81AC9yZHlsZ24xMS81AC9zcGVjdHJhbDExLzUAL3BpeWcxMS81AC9icmJnMTEvNQAvcGFpcmVkMTEvNQAvc2V0MzExLzUAL3JkZ3kxMC81AC9yZHlsYnUxMC81AC9yZGJ1MTAvNQAvcHVvcjEwLzUAL3ByZ24xMC81AC9yZHlsZ24xMC81AC9zcGVjdHJhbDEwLzUAL3BpeWcxMC81AC9icmJnMTAvNQAvcGFpcmVkMTAvNQAvc2V0MzEwLzUAYmlnLTUAQklHLTUAIC1kYXNoIDUAaXZvcnk0AGdyZXk0AGRhcmtzbGF0ZWdyYXk0AFx4NABzbm93NABsaWdodHllbGxvdzQAaG9uZXlkZXc0AHdoZWF0NAB0b21hdG80AHJvc3licm93bjQAbWFyb29uNABsaWdodHNhbG1vbjQAbGVtb25jaGlmZm9uNABzcHJpbmdncmVlbjQAZGFya29saXZlZ3JlZW40AHBhbGVncmVlbjQAZGFya3NlYWdyZWVuNABsaWdodGN5YW40AHRhbjQAcGx1bTQAc2Vhc2hlbGw0AGNvcmFsNABob3RwaW5rNABsaWdodHBpbms0AGRlZXBwaW5rNABjb3Juc2lsazQAZmlyZWJyaWNrNABraGFraTQAbGF2ZW5kZXJibHVzaDQAcGVhY2hwdWZmNABiaXNxdWU0AGxpZ2h0c2t5Ymx1ZTQAZGVlcHNreWJsdWU0AGxpZ2h0Ymx1ZTQAY2FkZXRibHVlNABkb2RnZXJibHVlNABsaWdodHN0ZWVsYmx1ZTQAcm95YWxibHVlNABzbGF0ZWJsdWU0AG5hdmFqb3doaXRlNABhbnRpcXVld2hpdGU0AGNob2NvbGF0ZTQAY2hhcnRyZXVzZTQAbWlzdHlyb3NlNABwYWxldHVycXVvaXNlNABhenVyZTQAdGhlcmU0AGFxdWFtYXJpbmU0AHRoaXN0bGU0AG1lZGl1bXB1cnBsZTQAZGFya29yYW5nZTQAbGlnaHRnb2xkZW5yb2Q0AGRhcmtnb2xkZW5yb2Q0AGJ1cmx5d29vZDQAZ29sZDQAbWVkaXVtb3JjaGlkNABkYXJrb3JjaGlkNABwYWxldmlvbGV0cmVkNABpbmRpYW5yZWQ0AG9yYW5nZXJlZDQAb2xpdmVkcmFiNABtYWdlbnRhNABzaWVubmE0AFx4RjQAXHhFNABceEQ0AFx4QzQAXHhCNABceEE0AGdyZXk5NABncmF5OTQAXHg5NABncmV5ODQAZ3JheTg0AFx4ODQAZ3JleTc0AGdyYXk3NABncmV5NjQAZ3JheTY0AGdyZXk1NABncmF5NTQAMjAyNjAzMDMuMDQ1NABncmV5NDQAZ3JheTQ0AGdyZXkzNABncmF5MzQAZnJhYzM0AGdyZXkyNABncmF5MjQAZ3JleTE0AGdyYXkxNABceDE0AGZyYWMxNAAvcmRneTkvNAAvYnVwdTkvNAAvcmRwdTkvNAAvcHVidTkvNAAveWxnbmJ1OS80AC9nbmJ1OS80AC9yZHlsYnU5LzQAL3JkYnU5LzQAL2dyZXlzOS80AC9ncmVlbnM5LzQAL2JsdWVzOS80AC9wdXJwbGVzOS80AC9vcmFuZ2VzOS80AC9yZWRzOS80AC9wdW9yOS80AC95bG9yYnI5LzQAL3B1YnVnbjkvNAAvYnVnbjkvNAAvcHJnbjkvNAAvcmR5bGduOS80AC95bGduOS80AC9zcGVjdHJhbDkvNAAvcGl5ZzkvNAAvYnJiZzkvNAAvcHVyZDkvNAAveWxvcnJkOS80AC9vcnJkOS80AC9wYWlyZWQ5LzQAL3NldDM5LzQAL3NldDE5LzQAL3Bhc3RlbDE5LzQAL3JkZ3k4LzQAL2J1cHU4LzQAL3JkcHU4LzQAL3B1YnU4LzQAL3lsZ25idTgvNAAvZ25idTgvNAAvcmR5bGJ1OC80AC9yZGJ1OC80AC9hY2NlbnQ4LzQAL2dyZXlzOC80AC9ncmVlbnM4LzQAL2JsdWVzOC80AC9wdXJwbGVzOC80AC9vcmFuZ2VzOC80AC9yZWRzOC80AC9wdW9yOC80AC95bG9yYnI4LzQAL3B1YnVnbjgvNAAvYnVnbjgvNAAvcHJnbjgvNAAvcmR5bGduOC80AC95bGduOC80AC9zcGVjdHJhbDgvNAAvcGl5ZzgvNAAvYnJiZzgvNAAvcHVyZDgvNAAveWxvcnJkOC80AC9vcnJkOC80AC9wYWlyZWQ4LzQAL3NldDM4LzQAL3NldDI4LzQAL3Bhc3RlbDI4LzQAL2RhcmsyOC80AC9zZXQxOC80AC9wYXN0ZWwxOC80AC9yZGd5Ny80AC9idXB1Ny80AC9yZHB1Ny80AC9wdWJ1Ny80AC95bGduYnU3LzQAL2duYnU3LzQAL3JkeWxidTcvNAAvcmRidTcvNAAvYWNjZW50Ny80AC9ncmV5czcvNAAvZ3JlZW5zNy80AC9ibHVlczcvNAAvcHVycGxlczcvNAAvb3JhbmdlczcvNAAvcmVkczcvNAAvcHVvcjcvNAAveWxvcmJyNy80AC9wdWJ1Z243LzQAL2J1Z243LzQAL3ByZ243LzQAL3JkeWxnbjcvNAAveWxnbjcvNAAvc3BlY3RyYWw3LzQAL3BpeWc3LzQAL2JyYmc3LzQAL3B1cmQ3LzQAL3lsb3JyZDcvNAAvb3JyZDcvNAAvcGFpcmVkNy80AC9zZXQzNy80AC9zZXQyNy80AC9wYXN0ZWwyNy80AC9kYXJrMjcvNAAvc2V0MTcvNAAvcGFzdGVsMTcvNAAvcmRneTYvNAAvYnVwdTYvNAAvcmRwdTYvNAAvcHVidTYvNAAveWxnbmJ1Ni80AC9nbmJ1Ni80AC9yZHlsYnU2LzQAL3JkYnU2LzQAL2FjY2VudDYvNAAvZ3JleXM2LzQAL2dyZWVuczYvNAAvYmx1ZXM2LzQAL3B1cnBsZXM2LzQAL29yYW5nZXM2LzQAL3JlZHM2LzQAL3B1b3I2LzQAL3lsb3JicjYvNAAvcHVidWduNi80AC9idWduNi80AC9wcmduNi80AC9yZHlsZ242LzQAL3lsZ242LzQAL3NwZWN0cmFsNi80AC9waXlnNi80AC9icmJnNi80AC9wdXJkNi80AC95bG9ycmQ2LzQAL29ycmQ2LzQAL3BhaXJlZDYvNAAvc2V0MzYvNAAvc2V0MjYvNAAvcGFzdGVsMjYvNAAvZGFyazI2LzQAL3NldDE2LzQAL3Bhc3RlbDE2LzQAL3JkZ3k1LzQAL2J1cHU1LzQAL3JkcHU1LzQAL3B1YnU1LzQAL3lsZ25idTUvNAAvZ25idTUvNAAvcmR5bGJ1NS80AC9yZGJ1NS80AC9hY2NlbnQ1LzQAL2dyZXlzNS80AC9ncmVlbnM1LzQAL2JsdWVzNS80AC9wdXJwbGVzNS80AC9vcmFuZ2VzNS80AC9yZWRzNS80AC9wdW9yNS80AC95bG9yYnI1LzQAL3B1YnVnbjUvNAAvYnVnbjUvNAAvcHJnbjUvNAAvcmR5bGduNS80AC95bGduNS80AC9zcGVjdHJhbDUvNAAvcGl5ZzUvNAAvYnJiZzUvNAAvcHVyZDUvNAAveWxvcnJkNS80AC9vcnJkNS80AC9wYWlyZWQ1LzQAL3NldDM1LzQAL3NldDI1LzQAL3Bhc3RlbDI1LzQAL2RhcmsyNS80AC9zZXQxNS80AC9wYXN0ZWwxNS80AC9yZGd5NC80AC9idXB1NC80AC9yZHB1NC80AC9wdWJ1NC80AC95bGduYnU0LzQAL2duYnU0LzQAL3JkeWxidTQvNAAvcmRidTQvNAAvYWNjZW50NC80AC9ncmV5czQvNAAvZ3JlZW5zNC80AC9ibHVlczQvNAAvcHVycGxlczQvNAAvb3JhbmdlczQvNAAvcmVkczQvNAAvcHVvcjQvNAAveWxvcmJyNC80AC9wdWJ1Z240LzQAL2J1Z240LzQAL3ByZ240LzQAL3JkeWxnbjQvNAAveWxnbjQvNAAvc3BlY3RyYWw0LzQAL3BpeWc0LzQAL2JyYmc0LzQAL3B1cmQ0LzQAL3lsb3JyZDQvNAAvb3JyZDQvNAAvcGFpcmVkNC80AC9zZXQzNC80AC9zZXQyNC80AC9wYXN0ZWwyNC80AC9kYXJrMjQvNAAvc2V0MTQvNAAvcGFzdGVsMTQvNAAvcGFpcmVkMTIvNAAvc2V0MzEyLzQAL3JkZ3kxMS80AC9yZHlsYnUxMS80AC9yZGJ1MTEvNAAvcHVvcjExLzQAL3ByZ24xMS80AC9yZHlsZ24xMS80AC9zcGVjdHJhbDExLzQAL3BpeWcxMS80AC9icmJnMTEvNAAvcGFpcmVkMTEvNAAvc2V0MzExLzQAL3JkZ3kxMC80AC9yZHlsYnUxMC80AC9yZGJ1MTAvNAAvcHVvcjEwLzQAL3ByZ24xMC80AC9yZHlsZ24xMC80AC9zcGVjdHJhbDEwLzQAL3BpeWcxMC80AC9icmJnMTAvNAAvcGFpcmVkMTAvNAAvc2V0MzEwLzQAMS40AG4gPj0gNABzaWRlcyA9PSA0AGl2b3J5MwBTcGFyc2VNYXRyaXhfbXVsdGlwbHkzAGdyZXkzAGRhcmtzbGF0ZWdyYXkzAFx4MwBzbm93MwBsaWdodHllbGxvdzMAaG9uZXlkZXczAHdoZWF0MwBzdXAzAHRvbWF0bzMAcm9zeWJyb3duMwBtYXJvb24zAGxpZ2h0c2FsbW9uMwBsZW1vbmNoaWZmb24zAHNwcmluZ2dyZWVuMwBkYXJrb2xpdmVncmVlbjMAcGFsZWdyZWVuMwBkYXJrc2VhZ3JlZW4zAGxpZ2h0Y3lhbjMAdGFuMwBwbHVtMwBzZWFzaGVsbDMAY29yYWwzAGhvdHBpbmszAGxpZ2h0cGluazMAZGVlcHBpbmszAGNvcm5zaWxrMwBmaXJlYnJpY2szAGtoYWtpMwBsYXZlbmRlcmJsdXNoMwBwZWFjaHB1ZmYzAGJpc3F1ZTMAbGlnaHRza3libHVlMwBkZWVwc2t5Ymx1ZTMAbGlnaHRibHVlMwBjYWRldGJsdWUzAGRvZGdlcmJsdWUzAGxpZ2h0c3RlZWxibHVlMwByb3lhbGJsdWUzAHNsYXRlYmx1ZTMAbmF2YWpvd2hpdGUzAGFudGlxdWV3aGl0ZTMAY2hvY29sYXRlMwBjaGFydHJldXNlMwBtaXN0eXJvc2UzAHBhbGV0dXJxdW9pc2UzAGF6dXJlMwBhcXVhbWFyaW5lMwB0aGlzdGxlMwBtZWRpdW1wdXJwbGUzAGRhcmtvcmFuZ2UzAGxpZ2h0Z29sZGVucm9kMwBkYXJrZ29sZGVucm9kMwBidXJseXdvb2QzAGdvbGQzAG1lZGl1bW9yY2hpZDMAZGFya29yY2hpZDMAcGFsZXZpb2xldHJlZDMAaW5kaWFucmVkMwBvcmFuZ2VyZWQzAG9saXZlZHJhYjMAbWFnZW50YTMAc2llbm5hMwBceEYzAFx4RTMAXHhEMwBceEMzAFx4QjMAXHhBMwBncmV5OTMAZ3JheTkzAFx4OTMAZ3JleTgzAGdyYXk4MwBceDgzAGdyZXk3MwBncmF5NzMAZ3JleTYzAGdyYXk2MwBncmV5NTMAZ3JheTUzAFNUU0laRShuZXh0KSA8PSBVSU5UNjRfQygxKSA8PCA1MwBTVFNJWkUobikgPD0gVUlOVDY0X0MoMSkgPDwgNTMAZ3JleTQzAGdyYXk0MwBncmV5MzMAZ3JheTMzAGdyZXkyMwBncmF5MjMAZ3JleTEzAGdyYXkxMwBceDEzAC9yZGd5OS8zAC9idXB1OS8zAC9yZHB1OS8zAC9wdWJ1OS8zAC95bGduYnU5LzMAL2duYnU5LzMAL3JkeWxidTkvMwAvcmRidTkvMwAvZ3JleXM5LzMAL2dyZWVuczkvMwAvYmx1ZXM5LzMAL3B1cnBsZXM5LzMAL29yYW5nZXM5LzMAL3JlZHM5LzMAL3B1b3I5LzMAL3lsb3JicjkvMwAvcHVidWduOS8zAC9idWduOS8zAC9wcmduOS8zAC9yZHlsZ245LzMAL3lsZ245LzMAL3NwZWN0cmFsOS8zAC9waXlnOS8zAC9icmJnOS8zAC9wdXJkOS8zAC95bG9ycmQ5LzMAL29ycmQ5LzMAL3BhaXJlZDkvMwAvc2V0MzkvMwAvc2V0MTkvMwAvcGFzdGVsMTkvMwAvcmRneTgvMwAvYnVwdTgvMwAvcmRwdTgvMwAvcHVidTgvMwAveWxnbmJ1OC8zAC9nbmJ1OC8zAC9yZHlsYnU4LzMAL3JkYnU4LzMAL2FjY2VudDgvMwAvZ3JleXM4LzMAL2dyZWVuczgvMwAvYmx1ZXM4LzMAL3B1cnBsZXM4LzMAL29yYW5nZXM4LzMAL3JlZHM4LzMAL3B1b3I4LzMAL3lsb3JicjgvMwAvcHVidWduOC8zAC9idWduOC8zAC9wcmduOC8zAC9yZHlsZ244LzMAL3lsZ244LzMAL3NwZWN0cmFsOC8zAC9waXlnOC8zAC9icmJnOC8zAC9wdXJkOC8zAC95bG9ycmQ4LzMAL29ycmQ4LzMAL3BhaXJlZDgvMwAvc2V0MzgvMwAvc2V0MjgvMwAvcGFzdGVsMjgvMwAvZGFyazI4LzMAL3NldDE4LzMAL3Bhc3RlbDE4LzMAL3JkZ3k3LzMAL2J1cHU3LzMAL3JkcHU3LzMAL3B1YnU3LzMAL3lsZ25idTcvMwAvZ25idTcvMwAvcmR5bGJ1Ny8zAC9yZGJ1Ny8zAC9hY2NlbnQ3LzMAL2dyZXlzNy8zAC9ncmVlbnM3LzMAL2JsdWVzNy8zAC9wdXJwbGVzNy8zAC9vcmFuZ2VzNy8zAC9yZWRzNy8zAC9wdW9yNy8zAC95bG9yYnI3LzMAL3B1YnVnbjcvMwAvYnVnbjcvMwAvcHJnbjcvMwAvcmR5bGduNy8zAC95bGduNy8zAC9zcGVjdHJhbDcvMwAvcGl5ZzcvMwAvYnJiZzcvMwAvcHVyZDcvMwAveWxvcnJkNy8zAC9vcnJkNy8zAC9wYWlyZWQ3LzMAL3NldDM3LzMAL3NldDI3LzMAL3Bhc3RlbDI3LzMAL2RhcmsyNy8zAC9zZXQxNy8zAC9wYXN0ZWwxNy8zAC9yZGd5Ni8zAC9idXB1Ni8zAC9yZHB1Ni8zAC9wdWJ1Ni8zAC95bGduYnU2LzMAL2duYnU2LzMAL3JkeWxidTYvMwAvcmRidTYvMwAvYWNjZW50Ni8zAC9ncmV5czYvMwAvZ3JlZW5zNi8zAC9ibHVlczYvMwAvcHVycGxlczYvMwAvb3JhbmdlczYvMwAvcmVkczYvMwAvcHVvcjYvMwAveWxvcmJyNi8zAC9wdWJ1Z242LzMAL2J1Z242LzMAL3ByZ242LzMAL3JkeWxnbjYvMwAveWxnbjYvMwAvc3BlY3RyYWw2LzMAL3BpeWc2LzMAL2JyYmc2LzMAL3B1cmQ2LzMAL3lsb3JyZDYvMwAvb3JyZDYvMwAvcGFpcmVkNi8zAC9zZXQzNi8zAC9zZXQyNi8zAC9wYXN0ZWwyNi8zAC9kYXJrMjYvMwAvc2V0MTYvMwAvcGFzdGVsMTYvMwAvcmRneTUvMwAvYnVwdTUvMwAvcmRwdTUvMwAvcHVidTUvMwAveWxnbmJ1NS8zAC9nbmJ1NS8zAC9yZHlsYnU1LzMAL3JkYnU1LzMAL2FjY2VudDUvMwAvZ3JleXM1LzMAL2dyZWVuczUvMwAvYmx1ZXM1LzMAL3B1cnBsZXM1LzMAL29yYW5nZXM1LzMAL3JlZHM1LzMAL3B1b3I1LzMAL3lsb3JicjUvMwAvcHVidWduNS8zAC9idWduNS8zAC9wcmduNS8zAC9yZHlsZ241LzMAL3lsZ241LzMAL3NwZWN0cmFsNS8zAC9waXlnNS8zAC9icmJnNS8zAC9wdXJkNS8zAC95bG9ycmQ1LzMAL29ycmQ1LzMAL3BhaXJlZDUvMwAvc2V0MzUvMwAvc2V0MjUvMwAvcGFzdGVsMjUvMwAvZGFyazI1LzMAL3NldDE1LzMAL3Bhc3RlbDE1LzMAL3JkZ3k0LzMAL2J1cHU0LzMAL3JkcHU0LzMAL3B1YnU0LzMAL3lsZ25idTQvMwAvZ25idTQvMwAvcmR5bGJ1NC8zAC9yZGJ1NC8zAC9hY2NlbnQ0LzMAL2dyZXlzNC8zAC9ncmVlbnM0LzMAL2JsdWVzNC8zAC9wdXJwbGVzNC8zAC9vcmFuZ2VzNC8zAC9yZWRzNC8zAC9wdW9yNC8zAC95bG9yYnI0LzMAL3B1YnVnbjQvMwAvYnVnbjQvMwAvcHJnbjQvMwAvcmR5bGduNC8zAC95bGduNC8zAC9zcGVjdHJhbDQvMwAvcGl5ZzQvMwAvYnJiZzQvMwAvcHVyZDQvMwAveWxvcnJkNC8zAC9vcnJkNC8zAC9wYWlyZWQ0LzMAL3NldDM0LzMAL3NldDI0LzMAL3Bhc3RlbDI0LzMAL2RhcmsyNC8zAC9zZXQxNC8zAC9wYXN0ZWwxNC8zAC9yZGd5My8zAC9idXB1My8zAC9yZHB1My8zAC9wdWJ1My8zAC95bGduYnUzLzMAL2duYnUzLzMAL3JkeWxidTMvMwAvcmRidTMvMwAvYWNjZW50My8zAC9ncmV5czMvMwAvZ3JlZW5zMy8zAC9ibHVlczMvMwAvcHVycGxlczMvMwAvb3JhbmdlczMvMwAvcmVkczMvMwAvcHVvcjMvMwAveWxvcmJyMy8zAC9wdWJ1Z24zLzMAL2J1Z24zLzMAL3ByZ24zLzMAL3JkeWxnbjMvMwAveWxnbjMvMwAvc3BlY3RyYWwzLzMAL3BpeWczLzMAL2JyYmczLzMAL3B1cmQzLzMAL3lsb3JyZDMvMwAvb3JyZDMvMwAvcGFpcmVkMy8zAC9zZXQzMy8zAC9zZXQyMy8zAC9wYXN0ZWwyMy8zAC9kYXJrMjMvMwAvc2V0MTMvMwAvcGFzdGVsMTMvMwAvcGFpcmVkMTIvMwAvc2V0MzEyLzMAL3JkZ3kxMS8zAC9yZHlsYnUxMS8zAC9yZGJ1MTEvMwAvcHVvcjExLzMAL3ByZ24xMS8zAC9yZHlsZ24xMS8zAC9zcGVjdHJhbDExLzMAL3BpeWcxMS8zAC9icmJnMTEvMwAvcGFpcmVkMTEvMwAvc2V0MzExLzMAL3JkZ3kxMC8zAC9yZHlsYnUxMC8zAC9yZGJ1MTAvMwAvcHVvcjEwLzMAL3ByZ24xMC8zAC9yZHlsZ24xMC8zAC9zcGVjdHJhbDEwLzMAL3BpeWcxMC8zAC9icmJnMTAvMwAvcGFpcmVkMTAvMwAvc2V0MzEwLzMAMTQuMS4zAGl2b3J5MgBncmV5MgBkYXJrc2xhdGVncmF5MgBceDIAc25vdzIAbGlnaHR5ZWxsb3cyAGhvbmV5ZGV3MgBSVHJlZUluc2VydDIAd2hlYXQyAHN1cDIAbm9wMgB0b21hdG8yAHJvc3licm93bjIAbWFyb29uMgBsaWdodHNhbG1vbjIAbGVtb25jaGlmZm9uMgBzcHJpbmdncmVlbjIAZGFya29saXZlZ3JlZW4yAHBhbGVncmVlbjIAZGFya3NlYWdyZWVuMgBsaWdodGN5YW4yAHRhbjIAcGx1bTIAc2Vhc2hlbGwyAGNvcmFsMgBob3RwaW5rMgBsaWdodHBpbmsyAGRlZXBwaW5rMgBjb3Juc2lsazIAZmlyZWJyaWNrMgBraGFraTIAbGF2ZW5kZXJibHVzaDIAcGVhY2hwdWZmMgBicm9uemUyAGJpc3F1ZTIAbGlnaHRza3libHVlMgBkZWVwc2t5Ymx1ZTIAbGlnaHRibHVlMgBjYWRldGJsdWUyAGRvZGdlcmJsdWUyAGxpZ2h0c3RlZWxibHVlMgByb3lhbGJsdWUyAHNsYXRlYmx1ZTIAbmF2YWpvd2hpdGUyAGFudGlxdWV3aGl0ZTIAY2hvY29sYXRlMgBjaGFydHJldXNlMgBtaXN0eXJvc2UyAHBhbGV0dXJxdW9pc2UyAGF6dXJlMgBhcXVhbWFyaW5lMgB0aGlzdGxlMgBtZWRpdW1wdXJwbGUyAGRhcmtvcmFuZ2UyAGxpZ2h0Z29sZGVucm9kMgBkYXJrZ29sZGVucm9kMgBidXJseXdvb2QyAGdvbGQyAG1lZGl1bW9yY2hpZDIAZGFya29yY2hpZDIAcGFsZXZpb2xldHJlZDIAaW5kaWFucmVkMgBvcmFuZ2VyZWQyAG9saXZlZHJhYjIAbWFnZW50YTIAc2llbm5hMgBceEYyAFx4RTIAXHhEMgBceEMyAFx4QjIAXHhBMgBncmV5OTIAZ3JheTkyAFx4OTIAZ3JleTgyAGdyYXk4MgBceDgyAGdyZXk3MgBncmF5NzIAZ3JleTYyAGdyYXk2MgBncmV5NTIAZ3JheTUyAGdyZXk0MgBncmF5NDIAZ3JleTMyAGdyYXkzMgBncmV5MjIAZ3JheTIyAGdyZXkxMgBncmF5MTIAXHgxMgBmcmFjMTIAL3BhaXJlZDEyLzEyAC9zZXQzMTIvMTIAL3JkZ3k5LzIAL2J1cHU5LzIAL3JkcHU5LzIAL3B1YnU5LzIAL3lsZ25idTkvMgAvZ25idTkvMgAvcmR5bGJ1OS8yAC9yZGJ1OS8yAC9ncmV5czkvMgAvZ3JlZW5zOS8yAC9ibHVlczkvMgAvcHVycGxlczkvMgAvb3JhbmdlczkvMgAvcmVkczkvMgAvcHVvcjkvMgAveWxvcmJyOS8yAC9wdWJ1Z245LzIAL2J1Z245LzIAL3ByZ245LzIAL3JkeWxnbjkvMgAveWxnbjkvMgAvc3BlY3RyYWw5LzIAL3BpeWc5LzIAL2JyYmc5LzIAL3B1cmQ5LzIAL3lsb3JyZDkvMgAvb3JyZDkvMgAvcGFpcmVkOS8yAC9zZXQzOS8yAC9zZXQxOS8yAC9wYXN0ZWwxOS8yAC9yZGd5OC8yAC9idXB1OC8yAC9yZHB1OC8yAC9wdWJ1OC8yAC95bGduYnU4LzIAL2duYnU4LzIAL3JkeWxidTgvMgAvcmRidTgvMgAvYWNjZW50OC8yAC9ncmV5czgvMgAvZ3JlZW5zOC8yAC9ibHVlczgvMgAvcHVycGxlczgvMgAvb3JhbmdlczgvMgAvcmVkczgvMgAvcHVvcjgvMgAveWxvcmJyOC8yAC9wdWJ1Z244LzIAL2J1Z244LzIAL3ByZ244LzIAL3JkeWxnbjgvMgAveWxnbjgvMgAvc3BlY3RyYWw4LzIAL3BpeWc4LzIAL2JyYmc4LzIAL3B1cmQ4LzIAL3lsb3JyZDgvMgAvb3JyZDgvMgAvcGFpcmVkOC8yAC9zZXQzOC8yAC9zZXQyOC8yAC9wYXN0ZWwyOC8yAC9kYXJrMjgvMgAvc2V0MTgvMgAvcGFzdGVsMTgvMgAvcmRneTcvMgAvYnVwdTcvMgAvcmRwdTcvMgAvcHVidTcvMgAveWxnbmJ1Ny8yAC9nbmJ1Ny8yAC9yZHlsYnU3LzIAL3JkYnU3LzIAL2FjY2VudDcvMgAvZ3JleXM3LzIAL2dyZWVuczcvMgAvYmx1ZXM3LzIAL3B1cnBsZXM3LzIAL29yYW5nZXM3LzIAL3JlZHM3LzIAL3B1b3I3LzIAL3lsb3JicjcvMgAvcHVidWduNy8yAC9idWduNy8yAC9wcmduNy8yAC9yZHlsZ243LzIAL3lsZ243LzIAL3NwZWN0cmFsNy8yAC9waXlnNy8yAC9icmJnNy8yAC9wdXJkNy8yAC95bG9ycmQ3LzIAL29ycmQ3LzIAL3BhaXJlZDcvMgAvc2V0MzcvMgAvc2V0MjcvMgAvcGFzdGVsMjcvMgAvZGFyazI3LzIAL3NldDE3LzIAL3Bhc3RlbDE3LzIAL3JkZ3k2LzIAL2J1cHU2LzIAL3JkcHU2LzIAL3B1YnU2LzIAL3lsZ25idTYvMgAvZ25idTYvMgAvcmR5bGJ1Ni8yAC9yZGJ1Ni8yAC9hY2NlbnQ2LzIAL2dyZXlzNi8yAC9ncmVlbnM2LzIAL2JsdWVzNi8yAC9wdXJwbGVzNi8yAC9vcmFuZ2VzNi8yAC9yZWRzNi8yAC9wdW9yNi8yAC95bG9yYnI2LzIAL3B1YnVnbjYvMgAvYnVnbjYvMgAvcHJnbjYvMgAvcmR5bGduNi8yAC95bGduNi8yAC9zcGVjdHJhbDYvMgAvcGl5ZzYvMgAvYnJiZzYvMgAvcHVyZDYvMgAveWxvcnJkNi8yAC9vcnJkNi8yAC9wYWlyZWQ2LzIAL3NldDM2LzIAL3NldDI2LzIAL3Bhc3RlbDI2LzIAL2RhcmsyNi8yAC9zZXQxNi8yAC9wYXN0ZWwxNi8yAC9yZGd5NS8yAC9idXB1NS8yAC9yZHB1NS8yAC9wdWJ1NS8yAC95bGduYnU1LzIAL2duYnU1LzIAL3JkeWxidTUvMgAvcmRidTUvMgAvYWNjZW50NS8yAC9ncmV5czUvMgAvZ3JlZW5zNS8yAC9ibHVlczUvMgAvcHVycGxlczUvMgAvb3JhbmdlczUvMgAvcmVkczUvMgAvcHVvcjUvMgAveWxvcmJyNS8yAC9wdWJ1Z241LzIAL2J1Z241LzIAL3ByZ241LzIAL3JkeWxnbjUvMgAveWxnbjUvMgAvc3BlY3RyYWw1LzIAL3BpeWc1LzIAL2JyYmc1LzIAL3B1cmQ1LzIAL3lsb3JyZDUvMgAvb3JyZDUvMgAvcGFpcmVkNS8yAC9zZXQzNS8yAC9zZXQyNS8yAC9wYXN0ZWwyNS8yAC9kYXJrMjUvMgAvc2V0MTUvMgAvcGFzdGVsMTUvMgAvcmRneTQvMgAvYnVwdTQvMgAvcmRwdTQvMgAvcHVidTQvMgAveWxnbmJ1NC8yAC9nbmJ1NC8yAC9yZHlsYnU0LzIAL3JkYnU0LzIAL2FjY2VudDQvMgAvZ3JleXM0LzIAL2dyZWVuczQvMgAvYmx1ZXM0LzIAL3B1cnBsZXM0LzIAL29yYW5nZXM0LzIAL3JlZHM0LzIAL3B1b3I0LzIAL3lsb3JicjQvMgAvcHVidWduNC8yAC9idWduNC8yAC9wcmduNC8yAC9yZHlsZ240LzIAL3lsZ240LzIAL3NwZWN0cmFsNC8yAC9waXlnNC8yAC9icmJnNC8yAC9wdXJkNC8yAC95bG9ycmQ0LzIAL29ycmQ0LzIAL3BhaXJlZDQvMgAvc2V0MzQvMgAvc2V0MjQvMgAvcGFzdGVsMjQvMgAvZGFyazI0LzIAL3NldDE0LzIAL3Bhc3RlbDE0LzIAL3JkZ3kzLzIAL2J1cHUzLzIAL3JkcHUzLzIAL3B1YnUzLzIAL3lsZ25idTMvMgAvZ25idTMvMgAvcmR5bGJ1My8yAC9yZGJ1My8yAC9hY2NlbnQzLzIAL2dyZXlzMy8yAC9ncmVlbnMzLzIAL2JsdWVzMy8yAC9wdXJwbGVzMy8yAC9vcmFuZ2VzMy8yAC9yZWRzMy8yAC9wdW9yMy8yAC95bG9yYnIzLzIAL3B1YnVnbjMvMgAvYnVnbjMvMgAvcHJnbjMvMgAvcmR5bGduMy8yAC95bGduMy8yAC9zcGVjdHJhbDMvMgAvcGl5ZzMvMgAvYnJiZzMvMgAvcHVyZDMvMgAveWxvcnJkMy8yAC9vcnJkMy8yAC9wYWlyZWQzLzIAL3NldDMzLzIAL3NldDIzLzIAL3Bhc3RlbDIzLzIAL2RhcmsyMy8yAC9zZXQxMy8yAC9wYXN0ZWwxMy8yAC9wYWlyZWQxMi8yAC9zZXQzMTIvMgAvcmRneTExLzIAL3JkeWxidTExLzIAL3JkYnUxMS8yAC9wdW9yMTEvMgAvcHJnbjExLzIAL3JkeWxnbjExLzIAL3NwZWN0cmFsMTEvMgAvcGl5ZzExLzIAL2JyYmcxMS8yAC9wYWlyZWQxMS8yAC9zZXQzMTEvMgAvcmRneTEwLzIAL3JkeWxidTEwLzIAL3JkYnUxMC8yAC9wdW9yMTAvMgAvcHJnbjEwLzIAL3JkeWxnbjEwLzIAL3NwZWN0cmFsMTAvMgAvcGl5ZzEwLzIAL2JyYmcxMC8yAC9wYWlyZWQxMC8yAC9zZXQzMTAvMgAxLjIAIC1kYXNoIDIAbGVuID49IDIAZXhwID09IDEgfHwgZXhwID09IDIAZGltID09IDIATkRfb3V0KHYpLnNpemUgPT0gMgBpdm9yeTEAZ3JleTEAZGFya3NsYXRlZ3JheTEAXHgxAHNub3cxAGxpZ2h0eWVsbG93MQBob25leWRldzEAbnNsaW1pdDEAd2hlYXQxAHN1cDEAbm9wMQB0b21hdG8xAHJvc3licm93bjEAbWFyb29uMQBsaWdodHNhbG1vbjEAbGVtb25jaGlmZm9uMQBsYXRpbjEAYWdvcGVuMQBzcHJpbmdncmVlbjEAZGFya29saXZlZ3JlZW4xAHBhbGVncmVlbjEAZGFya3NlYWdyZWVuMQBsaWdodGN5YW4xAHRhbjEAcGx1bTEAc2Vhc2hlbGwxAGNvcmFsMQBob3RwaW5rMQBsaWdodHBpbmsxAGRlZXBwaW5rMQBjb3Juc2lsazEAZmlyZWJyaWNrMQBqMCA8PSBpMSAmJiBpMSA8PSBqMQBraGFraTEAbGF2ZW5kZXJibHVzaDEAcGVhY2hwdWZmMQBiaXNxdWUxAGxpZ2h0c2t5Ymx1ZTEAZGVlcHNreWJsdWUxAGxpZ2h0Ymx1ZTEAY2FkZXRibHVlMQBkb2RnZXJibHVlMQBsaWdodHN0ZWVsYmx1ZTEAcm95YWxibHVlMQBzbGF0ZWJsdWUxAG5hdmFqb3doaXRlMQBhbnRpcXVld2hpdGUxAGNob2NvbGF0ZTEAY2hhcnRyZXVzZTEAbWlzdHlyb3NlMQBwYWxldHVycXVvaXNlMQBhenVyZTEAYXF1YW1hcmluZTEAdGhpc3RsZTEAbWVkaXVtcHVycGxlMQBkYXJrb3JhbmdlMQBhcmdfZTAgJiYgYXJnX2UxAGxpZ2h0Z29sZGVucm9kMQBkYXJrZ29sZGVucm9kMQBidXJseXdvb2QxAGdvbGQxAG1lZGl1bW9yY2hpZDEAZGFya29yY2hpZDEAcGFsZXZpb2xldHJlZDEAaW5kaWFucmVkMQBvcmFuZ2VyZWQxAG9saXZlZHJhYjEAbWFnZW50YTEAc2llbm5hMQBceEYxAFx4RTEAXHhEMQBceEMxAFx4QjEAXHhBMQBncmV5OTEAZ3JheTkxAFx4OTEAZ3JleTgxAGdyYXk4MQBceDgxAGdyZXk3MQBncmF5NzEAZ3JleTYxAGdyYXk2MQBncmV5NTEAZ3JheTUxAGdyZXk0MQBncmF5NDEAZ3JleTMxAGdyYXkzMQBncmV5MjEAZ3JheTIxAGdyZXkxMQBncmF5MTEAXHgxMQAvcGFpcmVkMTIvMTEAL3NldDMxMi8xMQAvcmRneTExLzExAC9yZHlsYnUxMS8xMQAvcmRidTExLzExAC9wdW9yMTEvMTEAL3ByZ24xMS8xMQAvcmR5bGduMTEvMTEAL3NwZWN0cmFsMTEvMTEAL3BpeWcxMS8xMQAvYnJiZzExLzExAC9wYWlyZWQxMS8xMQAvc2V0MzExLzExAGNzW2ldLT5zbGFjaygpPi0wLjAwMDAwMDEAL3JkZ3k5LzEAL2J1cHU5LzEAL3JkcHU5LzEAL3B1YnU5LzEAL3lsZ25idTkvMQAvZ25idTkvMQAvcmR5bGJ1OS8xAC9yZGJ1OS8xAC9ncmV5czkvMQAvZ3JlZW5zOS8xAC9ibHVlczkvMQAvcHVycGxlczkvMQAvb3JhbmdlczkvMQAvcmVkczkvMQAvcHVvcjkvMQAveWxvcmJyOS8xAC9wdWJ1Z245LzEAL2J1Z245LzEAL3ByZ245LzEAL3JkeWxnbjkvMQAveWxnbjkvMQAvc3BlY3RyYWw5LzEAL3BpeWc5LzEAL2JyYmc5LzEAL3B1cmQ5LzEAL3lsb3JyZDkvMQAvb3JyZDkvMQAvcGFpcmVkOS8xAC9zZXQzOS8xAC9zZXQxOS8xAC9wYXN0ZWwxOS8xAC9yZGd5OC8xAC9idXB1OC8xAC9yZHB1OC8xAC9wdWJ1OC8xAC95bGduYnU4LzEAL2duYnU4LzEAL3JkeWxidTgvMQAvcmRidTgvMQAvYWNjZW50OC8xAC9ncmV5czgvMQAvZ3JlZW5zOC8xAC9ibHVlczgvMQAvcHVycGxlczgvMQAvb3JhbmdlczgvMQAvcmVkczgvMQAvcHVvcjgvMQAveWxvcmJyOC8xAC9wdWJ1Z244LzEAL2J1Z244LzEAL3ByZ244LzEAL3JkeWxnbjgvMQAveWxnbjgvMQAvc3BlY3RyYWw4LzEAL3BpeWc4LzEAL2JyYmc4LzEAL3B1cmQ4LzEAL3lsb3JyZDgvMQAvb3JyZDgvMQAvcGFpcmVkOC8xAC9zZXQzOC8xAC9zZXQyOC8xAC9wYXN0ZWwyOC8xAC9kYXJrMjgvMQAvc2V0MTgvMQAvcGFzdGVsMTgvMQAvcmRneTcvMQAvYnVwdTcvMQAvcmRwdTcvMQAvcHVidTcvMQAveWxnbmJ1Ny8xAC9nbmJ1Ny8xAC9yZHlsYnU3LzEAL3JkYnU3LzEAL2FjY2VudDcvMQAvZ3JleXM3LzEAL2dyZWVuczcvMQAvYmx1ZXM3LzEAL3B1cnBsZXM3LzEAL29yYW5nZXM3LzEAL3JlZHM3LzEAL3B1b3I3LzEAL3lsb3JicjcvMQAvcHVidWduNy8xAC9idWduNy8xAC9wcmduNy8xAC9yZHlsZ243LzEAL3lsZ243LzEAL3NwZWN0cmFsNy8xAC9waXlnNy8xAC9icmJnNy8xAC9wdXJkNy8xAC95bG9ycmQ3LzEAL29ycmQ3LzEAL3BhaXJlZDcvMQAvc2V0MzcvMQAvc2V0MjcvMQAvcGFzdGVsMjcvMQAvZGFyazI3LzEAL3NldDE3LzEAL3Bhc3RlbDE3LzEAL3JkZ3k2LzEAL2J1cHU2LzEAL3JkcHU2LzEAL3B1YnU2LzEAL3lsZ25idTYvMQAvZ25idTYvMQAvcmR5bGJ1Ni8xAC9yZGJ1Ni8xAC9hY2NlbnQ2LzEAL2dyZXlzNi8xAC9ncmVlbnM2LzEAL2JsdWVzNi8xAC9wdXJwbGVzNi8xAC9vcmFuZ2VzNi8xAC9yZWRzNi8xAC9wdW9yNi8xAC95bG9yYnI2LzEAL3B1YnVnbjYvMQAvYnVnbjYvMQAvcHJnbjYvMQAvcmR5bGduNi8xAC95bGduNi8xAC9zcGVjdHJhbDYvMQAvcGl5ZzYvMQAvYnJiZzYvMQAvcHVyZDYvMQAveWxvcnJkNi8xAC9vcnJkNi8xAC9wYWlyZWQ2LzEAL3NldDM2LzEAL3NldDI2LzEAL3Bhc3RlbDI2LzEAL2RhcmsyNi8xAC9zZXQxNi8xAC9wYXN0ZWwxNi8xAC9yZGd5NS8xAC9idXB1NS8xAC9yZHB1NS8xAC9wdWJ1NS8xAC95bGduYnU1LzEAL2duYnU1LzEAL3JkeWxidTUvMQAvcmRidTUvMQAvYWNjZW50NS8xAC9ncmV5czUvMQAvZ3JlZW5zNS8xAC9ibHVlczUvMQAvcHVycGxlczUvMQAvb3JhbmdlczUvMQAvcmVkczUvMQAvcHVvcjUvMQAveWxvcmJyNS8xAC9wdWJ1Z241LzEAL2J1Z241LzEAL3ByZ241LzEAL3JkeWxnbjUvMQAveWxnbjUvMQAvc3BlY3RyYWw1LzEAL3BpeWc1LzEAL2JyYmc1LzEAL3B1cmQ1LzEAL3lsb3JyZDUvMQAvb3JyZDUvMQAvcGFpcmVkNS8xAC9zZXQzNS8xAC9zZXQyNS8xAC9wYXN0ZWwyNS8xAC9kYXJrMjUvMQAvc2V0MTUvMQAvcGFzdGVsMTUvMQAvcmRneTQvMQAvYnVwdTQvMQAvcmRwdTQvMQAvcHVidTQvMQAveWxnbmJ1NC8xAC9nbmJ1NC8xAC9yZHlsYnU0LzEAL3JkYnU0LzEAL2FjY2VudDQvMQAvZ3JleXM0LzEAL2dyZWVuczQvMQAvYmx1ZXM0LzEAL3B1cnBsZXM0LzEAL29yYW5nZXM0LzEAL3JlZHM0LzEAL3B1b3I0LzEAL3lsb3JicjQvMQAvcHVidWduNC8xAC9idWduNC8xAC9wcmduNC8xAC9yZHlsZ240LzEAL3lsZ240LzEAL3NwZWN0cmFsNC8xAC9waXlnNC8xAC9icmJnNC8xAC9wdXJkNC8xAC95bG9ycmQ0LzEAL29ycmQ0LzEAL3BhaXJlZDQvMQAvc2V0MzQvMQAvc2V0MjQvMQAvcGFzdGVsMjQvMQAvZGFyazI0LzEAL3NldDE0LzEAL3Bhc3RlbDE0LzEAL3JkZ3kzLzEAL2J1cHUzLzEAL3JkcHUzLzEAL3B1YnUzLzEAL3lsZ25idTMvMQAvZ25idTMvMQAvcmR5bGJ1My8xAC9yZGJ1My8xAC9hY2NlbnQzLzEAL2dyZXlzMy8xAC9ncmVlbnMzLzEAL2JsdWVzMy8xAC9wdXJwbGVzMy8xAC9vcmFuZ2VzMy8xAC9yZWRzMy8xAC9wdW9yMy8xAC95bG9yYnIzLzEAL3B1YnVnbjMvMQAvYnVnbjMvMQAvcHJnbjMvMQAvcmR5bGduMy8xAC95bGduMy8xAC9zcGVjdHJhbDMvMQAvcGl5ZzMvMQAvYnJiZzMvMQAvcHVyZDMvMQAveWxvcnJkMy8xAC9vcnJkMy8xAC9wYWlyZWQzLzEAL3NldDMzLzEAL3NldDIzLzEAL3Bhc3RlbDIzLzEAL2RhcmsyMy8xAC9zZXQxMy8xAC9wYXN0ZWwxMy8xAC9wYWlyZWQxMi8xAC9zZXQzMTIvMQAvcmRneTExLzEAL3JkeWxidTExLzEAL3JkYnUxMS8xAC9wdW9yMTEvMQAvcHJnbjExLzEAL3JkeWxnbjExLzEAL3NwZWN0cmFsMTEvMQAvcGl5ZzExLzEAL2JyYmcxMS8xAC9wYWlyZWQxMS8xAC9zZXQzMTEvMQAvcmRneTEwLzEAL3JkeWxidTEwLzEAL3JkYnUxMC8xAC9wdW9yMTAvMQAvcHJnbjEwLzEAL3JkeWxnbjEwLzEAL3NwZWN0cmFsMTAvMQAvcGl5ZzEwLzEAL2JyYmcxMC8xAC9wYWlyZWQxMC8xAC9zZXQzMTAvMQBsYXRpbi0xAElTT184ODU5LTEASVNPODg1OS0xAElTTy04ODU5LTEAaSA+PSAxAHEtPm4gPT0gMQBydHAtPnNwbGl0LlBhcnRpdGlvbnNbMF0ucGFydGl0aW9uW2ldID09IDAgfHwgcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLnBhcnRpdGlvbltpXSA9PSAxAGJ6LnNpemUgJSAzID09IDEATElTVF9TSVpFKCZjdHgtPlRyZWVfZWRnZSkgPT0gY3R4LT5OX25vZGVzIC0gMQBub2RlX3NldF9zaXplKGctPm5faWQpID09IG9zaXplICsgMQBuLT5jb3VudCArICgqbm4pLT5jb3VudCA9PSBOT0RFQ0FSRCArIDEAcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzBdICsgcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzFdID09IE5PREVDQVJEICsgMQBncmV5MABncmF5MABqc29uMAAjZjBmMGYwACNlMGUwZTAAeGItPmxvY2F0ZWQgPiBBR1hCVUZfSU5MSU5FX1NJWkVfMABcMABUMABceEYwAFx4RTAAXHhEMABceEMwAFx4QjAAXHhBMABncmV5OTAAZ3JheTkwAFx4OTAAZ3JleTgwAGdyYXk4MABceDgwACM4MDgwODAAZ3JleTcwAGdyYXk3MABjY3dyb3QgPT0gMCB8fCBjY3dyb3QgPT0gOTAgfHwgY2N3cm90ID09IDE4MCB8fCBjY3dyb3QgPT0gMjcwAGN3cm90ID09IDAgfHwgY3dyb3QgPT0gOTAgfHwgY3dyb3QgPT0gMTgwIHx8IGN3cm90ID09IDI3MABncmV5NjAAZ3JheTYwAGdyZXk1MABncmF5NTAAZ3JleTQwAGdyYXk0MAByLndpZHRoKCk8MWU0MABncmV5MzAAZ3JheTMwACMzMDMwMzAAZ3JleTIwAGdyYXkyMABncmV5MTAAZ3JheTEwAFx4MTAAIzEwMTAxMAAvcGFpcmVkMTIvMTAAL3NldDMxMi8xMAAvcmRneTExLzEwAC9yZHlsYnUxMS8xMAAvcmRidTExLzEwAC9wdW9yMTEvMTAAL3ByZ24xMS8xMAAvcmR5bGduMTEvMTAAL3NwZWN0cmFsMTEvMTAAL3BpeWcxMS8xMAAvYnJiZzExLzEwAC9wYWlyZWQxMS8xMAAvc2V0MzExLzEwAC9yZGd5MTAvMTAAL3JkeWxidTEwLzEwAC9yZGJ1MTAvMTAAL3B1b3IxMC8xMAAvcHJnbjEwLzEwAC9yZHlsZ24xMC8xMAAvc3BlY3RyYWwxMC8xMAAvcGl5ZzEwLzEwAC9icmJnMTAvMTAAL3BhaXJlZDEwLzEwAC9zZXQzMTAvMTAAMTIwMABncmV5MTAwAGdyYXkxMDAASVNPLUlSLTEwMAAxMDAwMAAlIVBTLUFkb2JlLTMuMABueiA+IDAAbGlzdC0+Y2FwYWNpdHkgPiAwAGRpc3QgPiAwAHBhdGhjb3VudCA+IDAAd2d0ID4gMABuc2l0ZXMgPiAwAHNpZGVzID4gMABydiA9PSAwIHx8IChORF9vcmRlcihydiktTkRfb3JkZXIodikpKmRpciA+IDAAaW5wbiA+IDAAbGVuID4gMABxdDEtPm4gPiAwICYmIHF0Mi0+biA+IDAAbSA+IDAgJiYgbiA+IDAAbmV3VG90YWwgPiAwAHdpZHRoID4gMABsaXN0LT5zaXplID4gMABkaWN0LT5zaXplID4gMABzcGwtPnNpemUgPiAwAHNlbGYtPnNpemUgPiAwAGJ6LnNpemUgPiAwAGluY3JlYXNlID4gMABib3VuZCA+IDAAZ3JhcGgtPndlaWdodHNbeF0gPiAwAGdyYXBoLT53ZWlnaHRzW25fZWRnZXNdID4gMABpbmRleCA+PSAwAHQgPj0gMABubm9kZXMgPj0gMABuX25vZGVzID49IDAAbl9vYnMgPj0gMABuID49IDAAbi0+bGV2ZWwgPj0gMABvcmlnaW5hbCA+PSAwAE1heHJhbmsgPj0gMABQYWNrID49IDAAaWkgPCAxPDxkaW0gJiYgaWkgPj0gMAB3aWR0aCA+PSAwAGpkaWFnID49IDAAaWRpYWcgPj0gMABkID49IDAAcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzBdID49IDAgJiYgcnRwLT5zcGxpdC5QYXJ0aXRpb25zWzBdLmNvdW50WzFdID49IDAAViA+PSAwAGFnbm5vZGVzKGdyYXBoKSA+PSAwAGFnbm5vZGVzKGcpID49IDAARURfdHJlZV9pbmRleChlKSA+PSAwAEVEX2NvdW50KGUpID49IDAAb2JqcDEtPnN6LnggPT0gMCAmJiBvYmpwMS0+c3oueSA9PSAwAGNfY250ID09IDAAcmFua19yZXN1bHQgPT0gMABnZXR0aW1lb2ZkYXlfcmVzID09IDAAaiA9PSAwAE5EX2luKHJpZ2h0KS5zaXplICsgTkRfb3V0KHJpZ2h0KS5zaXplID09IDAAYS5zaGFwZSA9PSAwIHx8IGIuc2hhcGUgPT0gMABsaXN0LT5iYXNlICE9IE5VTEwgfHwgaW5kZXggPT0gMCB8fCBzdHJpZGUgPT0gMABkdHNpemUoZGVzdCkgPT0gMABkdHNpemUoZy0+bl9zZXEpID09IDAAZHRzaXplKGctPmdfc2VxKSA9PSAwAGR0c2l6ZShnLT5lX3NlcSkgPT0gMABHRF9taW5yYW5rKGcpID09IDAAZHRzaXplKGctPmdfaWQpID09IDAAZHRzaXplKGctPmVfaWQpID09IDAAY29zeCAhPSAwIHx8IHNpbnggIT0gMAByZXFfYWxpZ25tZW50ICE9IDAAbWVtY21wKCZzdHlsZSwgJihncmFwaHZpel9wb2x5Z29uX3N0eWxlX3QpezB9LCBzaXplb2Yoc3R5bGUpKSAhPSAwAHJlc3VsdCA9PSAoaW50KShzaXplIC0gMSkgfHwgcmVzdWx0IDwgMABtYXNrW2lpXSA8IDAATkRfaGVhcGluZGV4KHYpIDwgMABcLwBYMTEvAGd2UmVuZGVySm9icyAlczogJS4yZiBzZWNzLgAlLipzLgBzcGVjaWZpZWQgcm9vdCBub2RlICIlcyIgd2FzIG5vdCBmb3VuZC4AR3JhcGggJXMgaGFzIGFycmF5IHBhY2tpbmcgd2l0aCB1c2VyIHZhbHVlcyBidXQgbm8gInNvcnR2IiBhdHRyaWJ1dGVzIGFyZSBkZWZpbmVkLgAxLgAtMC4AJSFQUy1BZG9iZS0AJVBERi0APCEtLQAgLAArACoAc3RyZXEoYXB0ci0+dS5uYW1lLEtleSkAIWlzX2V4YWN0bHlfZXF1YWwoUi54LCBRLngpIHx8ICFpc19leGFjdGx5X2VxdWFsKFIueSwgUS55KQBORF9vcmRlcih2KSA8IE5EX29yZGVyKHcpAHUgPT0gVUZfZmluZCh1KQAhTElTVF9JU19FTVBUWShwbGlzdCkAZ3ZfbGlzdF9pc19jb250aWd1b3VzXygqbGlzdCkAb25lIDw9IExJU1RfU0laRShsaXN0KQBucCA8IExJU1RfU0laRShsaXN0KQBpc19wb3dlcl9vZl8yKGFsaWdubWVudCkAc3RkOjppc19oZWFwKGhlYXAuYmVnaW4oKSwgaGVhcC5lbmQoKSwgZ3QpACEocS0+cXRzKQAhTElTVF9JU19FTVBUWSgmbGVhdmVzKQBvbl9oZWFwKHIpAG5vZGVfc2V0X3NpemUoZy0+bl9pZCkgPT0gKHNpemVfdClkdHNpemUoZy0+bl9zZXEpAE5EX3JhbmsoZnJvbSkgPCBORF9yYW5rKHRvKQBub3Qgd2VsbC1mb3JtZWQgKGludmFsaWQgdG9rZW4pAGFnc3VicmVwKGcsbikAbiAhPSBORF9uZXh0KG4pAGZpbmRfZmFzdF9ub2RlKGcsIG4pAChudWxsKQAoIWpjbikgJiYgKCF2YWwpACEocS0+bCkAc3ltLT5pZCA+PSAwICYmIHN5bS0+aWQgPCB0b3BkaWN0c2l6ZShvYmopAExJU1RfU0laRSgmYXJyKSA9PSAoc2l6ZV90KWFnbm5vZGVzKHNnKQBtb3ZlIHRvICglLjBmLCAlLjBmKQA7IHNwbGluZSB0byAoJS4wZiwgJS4wZikAOyBsaW5lIHRvICglLjBmLCAlLjBmKQBTcGFyc2VNYXRyaXhfaXNfc3ltbWV0cmljKEEsIHRydWUpAHZhbHVlICYmIHN0cmxlbih2YWx1ZSkAU3BhcnNlTWF0cml4X2lzX3N5bW1ldHJpYyhBLCBmYWxzZSkAIXVzZV9zdGFnZSB8fCBzaXplIDw9IHNpemVvZihzdGFnZSkARURfbGFiZWwoZmUpACFUUkVFX0VER0UoZSkAIWNvbnN0cmFpbmluZ19mbGF0X2VkZ2UoZywgZSkAbm9kZV9zZXRfaXNfZW1wdHkoZy0+bl9pZCkAcl8lZCkAbF8lZCkAKGxpYikAIVNwYXJzZU1hdHJpeF9oYXNfZGlhZ29uYWwoQSkAIHNjYW5uaW5nIGEgSFRNTCBzdHJpbmcgKG1pc3NpbmcgJz4nPyBiYWQgbmVzdGluZz8gbG9uZ2VyIHRoYW4gJWQ/KQAgc2Nhbm5pbmcgYSBxdW90ZWQgc3RyaW5nIChtaXNzaW5nIGVuZHF1b3RlPyBsb25nZXIgdGhhbiAlZD8pACBzY2FubmluZyBhIC8qLi4uKi8gY29tbWVudCAobWlzc2luZyAnKi8/IGxvbmdlciB0aGFuICVkPykAZmFsbGJhY2soNCkAb25faGVhcChyMCkgfHwgb25faGVhcChyMSkAYWd0YWlsKGUpID09IFVGX2ZpbmQoYWd0YWlsKGUpKQBhZ2hlYWQoZSkgPT0gVUZfZmluZChhZ2hlYWQoZSkpAG91dCBvZiBkeW5hbWljIG1lbW9yeSBpbiB5eV9nZXRfbmV4dF9idWZmZXIoKQBvdXQgb2YgZHluYW1pYyBtZW1vcnkgaW4geXlfY3JlYXRlX2J1ZmZlcigpAG91dCBvZiBkeW5hbWljIG1lbW9yeSBpbiB5eWVuc3VyZV9idWZmZXJfc3RhY2soKQBzdHJlcShtb2RlLCAiciIpIHx8IHN0cmVxKG1vZGUsICJyYiIpIHx8IHN0cmVxKG1vZGUsICJ3IikgfHwgc3RyZXEobW9kZSwgIndiIikAcG5hbWUgIT0gTlVMTCAmJiAhc3RyZXEocG5hbWUsICIiKQBzZXRsaW5ld2lkdGgoACkgcm90YXRlKCVkKSB0cmFuc2xhdGUoACB0cmFuc2Zvcm09InNjYWxlKABOT1RBVElPTigAICgAIG5lYXIgJyVzJwAlbGYsJWxmLCVsZiwnJVteJ10nAGlzZGlnaXQoKGludClkb3RwWzFdKSAmJiBpc2RpZ2l0KChpbnQpZG90cFsyXSkgJiYgZG90cFszXSA9PSAnXDAnACYAJQAkAHVybCgjADx0ZXh0UGF0aCB4bGluazpocmVmPSIjADxhcmVhIHNoYXBlPSJwb2x5IgAgZmlsbD0iIyUwMnglMDJ4JTAyeCIAKHNlcSAmIFNFUV9NQVNLKSA9PSBzZXEgJiYgInNlcXVlbmNlIElEIG92ZXJmbG93IgBndl9zb3J0X2NvbXBhciA9PSBOVUxMICYmIGd2X3NvcnRfYXJnID09IE5VTEwgJiYgInVuc3VwcG9ydGVkIHJlY3Vyc2l2ZSBjYWxsIHRvIGd2X3NvcnQiAGd2X3NvcnRfY29tcGFyICE9IE5VTEwgJiYgIm5vIGNvbXBhcmF0b3Igc2V0IGluIGd2X3NvcnQiAG9wLT5vcC51LnBvbHlnb24uY250IDw9IElOVF9NQVggJiYgInBvbHlnb24gY291bnQgZXhjZWVkcyBndnJlbmRlcl9wb2x5Z29uIHN1cHBvcnQiACB0ZXh0LWFuY2hvcj0ic3RhcnQiAHAueCAhPSBhICYmICJjYW5ub3QgaGFuZGxlIGVsbGlwc2UgdGFuZ2VudCBzbG9wZSBpbiBob3Jpem9udGFsIGV4dHJlbWUgcG9pbnQiAGZ1bGxfbGVuZ3RoX3dpdGhvdXRfc2hhZnQgPiAwICYmICJub24tcG9zaXRpdmUgZnVsbCBsZW5ndGggd2l0aG91dCBzaGFmdCIAPGFyZWEgc2hhcGU9InJlY3QiAHNpemUgPiAwICYmICJhdHRlbXB0IHRvIGFsbG9jYXRlIGFycmF5IG9mIDAtc2l6ZWQgZWxlbWVudHMiAGluZGV4IDwgc2VsZi0+c2l6ZV9iaXRzICYmICJvdXQgb2YgYm91bmRzIGFjY2VzcyIAaW5kZXggPCBzZWxmLnNpemVfYml0cyAmJiAib3V0IG9mIGJvdW5kcyBhY2Nlc3MiACpzMSAhPSAqczIgJiYgImR1cGxpY2F0ZSBzZXBhcmF0b3IgY2hhcmFjdGVycyIAR0RfbWlucmFuayhzdWJnKSA8PSBHRF9tYXhyYW5rKHN1YmcpICYmICJjb3JydXB0ZWQgcmFuayBib3VuZHMiAGluZGV4IDwgbGlzdC5zaXplICYmICJpbmRleCBvdXQgb2YgYm91bmRzIgAodWludHB0cl90KXMgJSAyID09IDAgJiYgImhlYXAgcG9pbnRlciB3aXRoIGxvdyBiaXQgc2V0IHdpbGwgY29sbGlkZSB3aXRoIGFub255bW91cyBJRHMiACAoKyU2bGQgYnl0ZXMgJXN8JXUsIHhtbHBhcnNlLmM6JWQpICUqcyIAIGZvbnQtZmFtaWx5PSIlcyIAIGZvbnQtd2VpZ2h0PSIlcyIAIGZpbGw9IiVzIgAgZm9udC1zdHJldGNoPSIlcyIAIGZvbnQtc3R5bGU9IiVzIgBiYWQgZWRnZSBsZW4gIiVzIgAgYmFzZWxpbmUtc2hpZnQ9InN1cGVyIgBhZ3hibGVuKHhiKSA8PSBzaXplb2YoeGItPnN0b3JlKSAmJiAiYWd4YnVmIGNvcnJ1cHRpb24iAGNlbGwucm93IDwgdGFibGUtPnJvd19jb3VudCAmJiAib3V0IG9mIHJhbmdlIGNlbGwiAGNlbGwuY29sIDwgdGFibGUtPmNvbHVtbl9jb3VudCAmJiAib3V0IG9mIHJhbmdlIGNlbGwiACB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgBmdWxsX2xlbmd0aCA+IDAgJiYgIm5vbi1wb3NpdGl2ZSBmdWxsIGxlbmd0aCIAZnVsbF9iYXNlX3dpZHRoID4gMCAmJiAibm9uLXBvc2l0aXZlIGZ1bGwgYmFzZSB3aWR0aCIAbm9taW5hbF9iYXNlX3dpZHRoID4gMCAmJiAibm9uLXBvc2l0aXZlIG5vbWluYWwgYmFzZSB3aWR0aCIAIiB3aWR0aD0iJWdweCIgaGVpZ2h0PSIlZ3B4IiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWluWU1pbiBtZWV0IiB4PSIlZyIgeT0iJWciACIgd2lkdGg9IiVncHgiIGhlaWdodD0iJWdweCIgcHJlc2VydmVBc3BlY3RSYXRpbz0ieE1pZFlNaWQgbWVldCIgeD0iJWciIHk9IiVnIgAgZm9udC1zaXplPSIlLjJmIgAgZmlsbC1vcGFjaXR5PSIlZiIAPHRleHQgeG1sOnNwYWNlPSJwcmVzZXJ2ZSIAaXNmaW5pdGUobSkgJiYgImVsbGlwc2UgdGFuZ2VudCBzbG9wZSBpcyBpbmZpbml0ZSIAKHhiLT5sb2NhdGVkID09IEFHWEJVRl9PTl9IRUFQIHx8IHhiLT5sb2NhdGVkIDw9IHNpemVvZih4Yi0+c3RvcmUpKSAmJiAiY29ycnVwdGVkIGFneGJ1ZiB0eXBlIgBBLT50eXBlID09IHR5cGUgJiYgImNhbGwgdG8gU3BhcnNlTWF0cml4X2Nvb3JkaW5hdGVfZm9ybV9hZGRfZW50cnkgIiAid2l0aCBpbmNvbXBhdGlibGUgdmFsdWUgdHlwZSIAIHRleHQtYW5jaG9yPSJtaWRkbGUiADxhcmVhIHNoYXBlPSJjaXJjbGUiAGNlbGwtPnJvdyArIGNlbGwtPnJvd3NwYW4gPD0gdGFibGUtPnJvd19jb3VudCAmJiAiY2VsbCBzcGFucyBoaWdoZXIgdGhhbiBjb250YWluaW5nIHRhYmxlIgBjZWxsLnJvdyArIGNlbGwucm93c3BhbiA8PSB0YWJsZS0+cm93X2NvdW50ICYmICJjZWxsIHNwYW5zIGhpZ2hlciB0aGFuIGNvbnRhaW5pbmcgdGFibGUiAGNlbGwtPmNvbCArIGNlbGwtPmNvbHNwYW4gPD0gdGFibGUtPmNvbHVtbl9jb3VudCAmJiAiY2VsbCBzcGFucyB3aWRlciB0aGFuIGNvbnRhaW5pbmcgdGFibGUiAGNlbGwuY29sICsgY2VsbC5jb2xzcGFuIDw9IHRhYmxlLT5jb2x1bW5fY291bnQgJiYgImNlbGwgc3BhbnMgd2lkZXIgdGhhbiBjb250YWluaW5nIHRhYmxlIgBvbGRfbm1lbWIgPCBTSVpFX01BWCAvIHNpemUgJiYgImNsYWltZWQgcHJldmlvdXMgZXh0ZW50IGlzIHRvbyBsYXJnZSIAdGhldGEgPj0gMCAmJiB0aGV0YSA8PSBNX1BJICYmICJ0aGV0YSBvdXQgb2YgcmFuZ2UiAHRhYmxlLT5oZWlnaHRzID09IE5VTEwgJiYgInRhYmxlIGhlaWdodHMgY29tcHV0ZWQgdHdpY2UiAHRhYmxlLT53aWR0aHMgPT0gTlVMTCAmJiAidGFibGUgd2lkdGhzIGNvbXB1dGVkIHR3aWNlIgAgdGV4dC1hbmNob3I9ImVuZCIAIGZvbnQtd2VpZ2h0PSJib2xkIgAgZm9udC1zdHlsZT0iaXRhbGljIgAgYmFzZWxpbmUtc2hpZnQ9InN1YiIAXCIAbGxlbiA8PSBJTlRfTUFYICYmICJYTUwgdG9rZW4gdG9vIGxvbmcgZm9yIGV4cGF0IEFQSSIAIiByeT0iAF9wIiBzdGFydE9mZnNldD0iNTAlIj48dHNwYW4geD0iMCIgZHk9IgAiIGN5PSIAIiB5PSIAIiByeD0iACBjeD0iACB4PSIAIHRhcmdldD0iACBwb2ludHM9IgAgY29vcmRzPSIAIHRleHQtZGVjb3JhdGlvbj0iACBmaWxsPSIAIiBzdHJva2Utd2lkdGg9IgA8aW1hZ2UgeGxpbms6aHJlZj0iADw/eG1sLXN0eWxlc2hlZXQgaHJlZj0iACIgbmFtZT0iACB4bGluazp0aXRsZT0iACB0aXRsZT0iACIgc3Ryb2tlPSIAPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0iADxkZWZzPgo8cmFkaWFsR3JhZGllbnQgaWQ9IgA8bWFwIGlkPSIAPGcgaWQ9IgAgZD0iACIgeTI9IgAiIHgyPSIAIiB5MT0iAHgxPSIAIHZpZXdCb3g9IiVkLjAwICVkLjAwICVkLjAwICVkLjAwIgAgdHJhbnNmb3JtPSJyb3RhdGUoJWQgJWcgJWcpIgBhZ3hibGVuKCZjdHgtPlNidWYpID09IDAgJiYgInBlbmRpbmcgc3RyaW5nIGRhdGEgdGhhdCB3YXMgbm90IGNvbnN1bWVkIChtaXNzaW5nICIgImVuZHN0cigpL2VuZGh0bWxzdHIoKT8pIgAgYWx0PSIiAEN5Y2xlIEVycm9yIQBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQA8IS0tIEdlbmVyYXRlZCBieSAAJXMlenUgLSMlMDJ4JTAyeCUwMnglMDJ4IAAlcyV6dSAtIyUwMnglMDJ4JTAyeCAAJWMgJXp1IAB0ICV1IAAgY3JlYXRlIHRleHQgAHhMYXlvdXQgAGRlZmF1bHQgAHN0cmljdCAAJXMlenUgLSVzIAAgLXNtb290aCBiZXppZXIgACBtb3ZldG8gACB2ZXJzaW9uIAAgY3JlYXRlIHBvbHlnb24gACAtdGV4dCB7JXN9IC1maWxsIAAgY3JlYXRlIG92YWwgACAtd2lkdGggAG5ld3BhdGggAGdyYXBoIABzLCUuNWcsJS41ZyAAJS41ZywlLjVnLCUuNWcsJS41ZyAAZSwlLjVnLCUuNWcgACVnICVnIAAlLjAzbGYgACUuM2YgACVkICVkICVkICVkICVkICVkICUuMWYgJS40ZiAlZCAlLjFmICUuMWYgJS4wZiAlLjBmIAAgLW91dGxpbmUgACBjcmVhdGUgbGluZSAAbm9kZSAAW0dyYXBodml6XSAlczolZDogJTA0ZC0lMDJkLSUwMmQgJTAyZDolMDJkOiUwMmQgACVkIABUb3RhbCBzaXplID4gMSBpbiAiJXMiIGNvbG9yIHNwZWMgAFsgL1JlY3QgWyAAVCAAUyAAT1BFTiAASSAARiAARSAAQyAAIC0+IABSYW5rIHNlcGFyYXRpb24gPSAAVW5zYXRpc2ZpZWQgY29uc3RyYWludDogAENhbGN1bGF0aW5nIHNob3J0ZXN0IHBhdGhzOiAAJXM6IABTb2x2aW5nIG1vZGVsOiAAU2V0dGluZyB1cCBzcHJpbmcgbW9kZWw6IABjb252ZXJ0IGdyYXBoOiAAIFRpdGxlOiAAInRleHQiOiAAeyJmcmFjIjogJS4wM2YsICJjb2xvciI6IAAibmFtZSI6IAAic3R5bGUiOiAAImZhY2UiOiAAMiAAPCEtLSAAIC0tIAAlIABfcCIgAGxfJWQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiAADSAgICAgICAgICAgICAgICBpdGVyID0gJWQsIHN0ZXAgPSAlZiBGbm9ybSA9ICVmIG56ID0gJXp1ICBLID0gJWYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgAAogICAgADoJIAAgICAgJXN9CgB0cnlpbmcgdG8gYWRkIHRvIHJlY3QgeyVmICsvLSAlZiwgJWYgKy8tICVmfQoAI2RlZmF1bHQgeyBmaW5pc2ggeyBhbWJpZW50IDAuMSBkaWZmdXNlIDAuOSB9IH0KAHBpZ21lbnQgeyBjb2xvciAlcyB9CgBsaWdodF9zb3VyY2UgeyA8MTUwMCwzMDAwLC0yNTAwPiBjb2xvciBXaGl0ZSB9CgBnbG9iYWxfc2V0dGluZ3MgeyBhc3N1bWVkX2dhbW1hIDEuMCB9CgAgICAgdGV4dHVyZSBJbWFnZVRleHR1cmUgeyB1cmwgIiVzIiB9CgAgICAgfQoALy9za3kKcGxhbmUgeyA8MCwgMSwgMD4sIDEgaG9sbG93CiAgICB0ZXh0dXJlIHsKICAgICAgICBwaWdtZW50IHsgYm96byB0dXJidWxlbmNlIDAuOTUKICAgICAgICAgICAgY29sb3JfbWFwIHsKICAgICAgICAgICAgICAgIFswLjAwIHJnYiA8MC4wNSwgMC4yMCwgMC41MD5dCiAgICAgICAgICAgICAgICBbMC41MCByZ2IgPDAuMDUsIDAuMjAsIDAuNTA+XQogICAgICAgICAgICAgICAgWzAuNzUgcmdiIDwxLjAwLCAxLjAwLCAxLjAwPl0KICAgICAgICAgICAgICAgIFswLjc1IHJnYiA8MC4yNSwgMC4yNSwgMC4yNT5dCiAgICAgICAgICAgICAgICBbMS4wMCByZ2IgPDAuNTAsIDAuNTAsIDAuNTA+XQogICAgICAgICAgICB9CiAgICAgICAgICAgIHNjYWxlIDwxLjAwLCAxLjAwLCAxLjUwPiAqIDIuNTAKICAgICAgICAgICAgdHJhbnNsYXRlIDwwLjAwLCAwLjAwLCAwLjAwPgogICAgICAgIH0KICAgICAgICBmaW5pc2ggeyBhbWJpZW50IDEgZGlmZnVzZSAwIH0KICAgIH0KICAgIHNjYWxlIDEwMDAwCn0KLy9taXN0CmZvZyB7IGZvZ190eXBlIDIKICAgIGRpc3RhbmNlIDUwCiAgICBj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ZCBjZWxsIHNpemUgd2l0aCB1bnNwZWNpZmllZCB3aWR0aCBvciBoZWlnaHQKAGZpeGVkIHRhYmxlIHNpemUgd2l0aCB1bnNwZWNpZmllZCB3aWR0aCBvciBoZWlnaHQKAHBvcyBhdHRyaWJ1dGUgZm9yIGVkZ2UgKCVzLCVzKSBkb2Vzbid0IGhhdmUgM24rMSBwb2ludHMKACAgZ2VuZXJhdGVkICVkIGNvbnN0cmFpbnRzCgBzcGxpbmVzIGFuZCBjbHVzdGVyIGVkZ2VzIG5vdCBzdXBwb3J0ZWQgLSB1c2luZyBsaW5lIHNlZ21lbnRzCgBvYmplY3RzCgBXYXJuaW5nOiBub2RlICVzLCBwb3NpdGlvbiAlcywgZXhwZWN0ZWQgdHdvIGZsb2F0cwoAZm9udCBuYW1lICVzIGNvbnRhaW5zIGNoYXJhY3RlcnMgdGhhdCBtYXkgbm90IGJlIGFjY2VwdGVkIGJ5IHNvbWUgUFMgdmlld2VycwoAZm9udCBuYW1lICVzIGlzIGxvbmdlciB0aGFuIDI5IGNoYXJhY3RlcnMgd2hpY2ggbWF5IGJlIHJlamVjdGVkIGJ5IHNvbWUgUFMgdmlld2VycwoAY2Fubm90IGFsbG9jYXRlIHBzCgBzY2FsZT0xLjAgJXMgcmVxdWlyZWQgZm9yIGNvbXBhcmlzb25zCgBTZXR0aW5nIGluaXRpYWwgcG9zaXRpb25zCgAlcyBEV0IgMiBjb21wYXRpYmlsaXR5IGRlZmluaXRpb25zCgBhcnJheSBwYWNraW5nOiAlcyAlenUgcm93cyAlenUgY29sdW1ucwoAc3ludGF4IGFtYmlndWl0eSAtIGJhZGx5IGRlbGltaXRlZCBudW1iZXIgJyVzJyBpbiBsaW5lICVkIG9mICVzIHNwbGl0cyBpbnRvIHR3byB0b2tlbnMKAGVkZ2UgbGFiZWxzIHdpdGggc3BsaW5lcz1jdXJ2ZWQgbm90IHN1cHBvcnRlZCBpbiBkb3QgLSB1c2UgeGxhYmVscwoAZmxhdCBlZGdlIGJldHdlZW4gYWRqYWNlbnQgbm9kZXMgb25lIG9mIHdoaWNoIGhhcyBhIHJlY29yZCBzaGFwZSAtIHJlcGxhY2UgcmVjb3JkcyB3aXRoIEhUTUwtbGlrZSBsYWJlbHMKAG91dCBvZiBtZW1vcnkgd2hlbiB0cnlpbmcgdG8gYWxsb2NhdGUgJXp1IGJ5dGVzCgBpbnRlZ2VyIG92ZXJmbG93IHdoZW4gdHJ5aW5nIHRvIGFsbG9jYXRlICV6dSAqICV6dSBieXRlcwoAdXBkYXRlOiBtaXNtYXRjaGVkIGxjYSBpbiB0cmVldXBkYXRlcwoAZ3JhcGggJXMsIGNvb3JkICVzLCBleHBlY3RlZCBmb3VyIGRvdWJsZXMKAG5vZGUgJXMsIHBvc2l0aW9uICVzLCBleHBlY3RlZCB0d28gZG91YmxlcwoARm91bmQgJWQgRGlHLUNvTGEgYm91bmRhcmllcwoASW5jaGVzCgAoJTR6dSkgJTd6dSBub2RlcyAlN3p1IGVkZ2VzCgBjb21wb3VuZEVkZ2VzOiBjb3VsZCBub3QgY29uc3RydWN0IG9ic3RhY2xlcyAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgB0aGUgYm91bmRpbmcgYm94ZXMgb2Ygc29tZSBub2RlcyB0b3VjaCAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgBjb21wb3VuZEVkZ2VzOiBub2RlcyB0b3VjaCAtIGZhbGxpbmcgYmFjayB0byBzdHJhaWdodCBsaW5lIGVkZ2VzCgBzb21lIG5vZGVzIHdpdGggbWFyZ2luICglLjAyZiwlLjAyZikgdG91Y2ggLSBmYWxsaW5nIGJhY2sgdG8gc3RyYWlnaHQgbGluZSBlZGdlcwoAbWVyZ2UyOiBncmFwaCAlcywgcmFuayAlZCBoYXMgb25seSAlZCA8ICVkIG5vZGVzCgBTY2FubmluZyBncmFwaCAlcywgJWQgbm9kZXMKAFdhcm5pbmc6IG5vIGhhcmQtY29kZWQgbWV0cmljcyBmb3IgJyVzJy4gIEZhbGxpbmcgYmFjayB0byAnVGltZXMnIG1ldHJpY3MKAGluIGVkZ2UgJXMlcyVzCgBVc2luZyAlczogJXM6JXMKAEZvcm1hdDogIiVzIiBub3QgcmVjb2duaXplZC4gVXNlIG9uZSBvZjolcwoATGF5b3V0IHR5cGU6ICIlcyIgbm90IHJlY29nbml6ZWQuIFVzZSBvbmUgb2Y6JXMKAGxheW91dCAlcwoALmZ0ICVzCgBiYWQgbGFiZWwgZm9ybWF0ICVzCgBpbiByb3V0ZXNwbGluZXMsIGVkZ2UgaXMgYSBsb29wIGF0ICVzCgAgICAgICAgJTdkIG5vZGVzICU3ZCBlZGdlcyAlN3p1IGNvbXBvbmVudHMgJXMKAGluIGxhYmVsIG9mIGVkZ2UgJXMgJXMgJXMKACAgRWRnZSAlcyAlcyAlcwoAb3J0aG8gJXMgJXMKAHBvbHlsaW5lICVzICVzCgBzcGxpbmUgJXMgJXMKAHJlY3RhbmdsZSAoJS4wZiwlLjBmKSAoJS4wZiwlLjBmKSAlcyAlcwoAaW4gY2x1c3RlciAlcwoAJXMgd2FzIGFscmVhZHkgaW4gYSByYW5rc2V0LCBkZWxldGVkIGZyb20gY2x1c3RlciAlcwoAJXMgLT4gJXM6IHRhaWwgbm90IGluc2lkZSB0YWlsIGNsdXN0ZXIgJXMKACVzIC0+ICVzOiBoZWFkIGlzIGluc2lkZSB0YWlsIGNsdXN0ZXIgJXMKAGhlYWQgY2x1c3RlciAlcyBpbnNpZGUgdGFpbCBjbHVzdGVyICVzCgBoZWFkIG5vZGUgJXMgaW5zaWRlIHRhaWwgY2x1c3RlciAlcwoAJXMgLT4gJXM6IGhlYWQgbm90IGluc2lkZSBoZWFkIGNsdXN0ZXIgJXMKACVzIC0+ICVzOiB0YWlsIGlzIGluc2lkZSBoZWFkIGNsdXN0ZXIgJXMKAHRhaWwgY2x1c3RlciAlcyBpbnNpZGUgaGVhZCBjbHVzdGVyICVzCgB0YWlsIG5vZGUgJXMgaW5zaWRlIGhlYWQgY2x1c3RlciAlcwoAVW5oYW5kbGVkIGFkanVzdCBvcHRpb24gJXMKAHJlcG9zaXRpb24gJXMKAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggeGxhYmVsICVzCgBubyBwb3NpdGlvbiBmb3IgZWRnZSB3aXRoIHRhaWwgbGFiZWwgJXMKAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggbGFiZWwgJXMKAG5vIHBvc2l0aW9uIGZvciBlZGdlIHdpdGggaGVhZCBsYWJlbCAlcwoALy8qKiogYmVnaW5fZ3JhcGggJXMKAE1heC4gaXRlcmF0aW9ucyAoJWQpIHJlYWNoZWQgb24gZ3JhcGggJXMKAENvdWxkIG5vdCBwYXJzZSAiX2JhY2tncm91bmQiIGF0dHJpYnV0ZSBpbiBncmFwaCAlcwoAaW4gbGFiZWwgb2YgZ3JhcGggJXMKAENyZWF0aW5nIGVkZ2VzIHVzaW5nICVzCgBBZGp1c3RpbmcgJXMgdXNpbmcgJXMKACVzIHdoaWxlIG9wZW5pbmcgJXMKAGRlcml2ZSBncmFwaCBfZGdfJWQgb2YgJXMKACBdICAlenUgdHJ1ZSAlcwoAXSAgJWQgdHJ1ZSAlcwoAIF0gICV6dSBmYWxzZSAlcwoAXSAgJWQgZmFsc2UgJXMKAG1ha2VQb2x5OiB1bmtub3duIHNoYXBlIHR5cGUgJXMKAG1ha2VBZGRQb2x5OiB1bmtub3duIHNoYXBlIHR5cGUgJXMKAHVzaW5nICVzIGZvciB1bmtub3duIHNoYXBlICVzCgAgIG9jdHJlZSBzY2hlbWUgJXMKAGNhbid0IG9wZW4gbGlicmFyeSBmaWxlICVzCgBjYW4ndCBmaW5kIGxpYnJhcnkgZmlsZSAlcwoAQm91bmRpbmdCb3ggbm90IGZvdW5kIGluIGVwc2YgZmlsZSAlcwoAY291bGRuJ3Qgb3BlbiBlcHNmIGZpbGUgJXMKAGNvdWxkbid0IHJlYWQgZnJvbSBlcHNmIGZpbGUgJXMKAGluIG5vZGUgJXMKAHNoYXBlZmlsZSBub3Qgc2V0IG9yIG5vdCBmb3VuZCBmb3IgZXBzZiBub2RlICVzCgBpbiBsYWJlbCBvZiBub2RlICVzCgBlbmQgJXMKAHJhbmtpbmc6IGZhaWx1cmUgdG8gY3JlYXRlIHN0cm9uZyBjb25zdHJhaW50IGVkZ2UgYmV0d2VlbiBub2RlcyAlcyBhbmQgJXMKAG9vcHMsIGludGVybmFsIGVycm9yOiB1bmhhbmRsZWQgY29sb3IgdHlwZT0lZCAlcwoAJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJWQgJS4xZiAlZCAlZCAlZCAlZCAlZCAlZAogJWQgJXMKAC8vKioqIHRleHRzcGFuOiAlcywgZm9udHNpemUgPSAlLjNmLCBmb250bmFtZSA9ICVzCgB0cmllcyA9ICVkLCBtb2RlID0gJXMKAC8vKioqIGNvbW1lbnQ6ICVzCgBmYWlsZWQgdG8gcmVzZXJ2ZSAlenUgZWxlbWVudHMgb2Ygc2l6ZSAlenUgYnl0ZXM6ICVzCgBmb250bmFtZTogIiVzIiByZXNvbHZlZCB0bzogJXMKACUlJSVQYWdlT3JpZW50YXRpb246ICVzCgBkZWxhdW5heV90cmlhbmd1bGF0aW9uOiAlcwoAZGVsYXVuYXlfdHJpOiAlcwoAZ3ZwcmludGY6ICVzCgBuZXN0aW5nIG5vdCBhbGxvd2VkIGluIHN0eWxlOiAlcwoAdW5tYXRjaGVkICcpJyBpbiBzdHlsZTogJXMKAHVubWF0Y2hlZCAnKCcgaW4gc3R5bGU6ICVzCgAlJSUlVGl0bGU6ICVzCgAlcyBUaXRsZTogJXMKACMgVGl0bGU6ICVzCgAvLyoqKiBiZWdpbl9ub2RlOiAlcwoAbGliL3BhdGhwbGFuLyVzOiVkOiAlcwoAZ3JpZCglZCwlZCk6ICVzCgBDb3VsZCBub3Qgb3BlbiAiJXMiIGZvciB3cml0aW5nIDogJXMKAHN0YXJ0IHBvcnQ6ICglLjVnLCAlLjVnKSwgdGFuZ2VudCBhbmdsZTogJS41ZywgJXMKAGVuZCBwb3J0OiAoJS41ZywgJS41ZyksIHRhbmdlbnQgYW5nbGU6ICUuNWcsICVzCgAgWyV6dV0gJXAgc2V0ICVkICglLjAyZiwlLjAyZikgKCUuMDJmLCUuMDJmKSAlcwoAJSUgJXMKACMgJXMKACAgbW9kZSAgICVzCgBsaXN0IGVsZW1lbnQgdHlwZSBpcyBub3QgYSBwb2ludGVyLCBidXQgYGZyZWVgIHVzZWQgYXMgZGVzdHJ1Y3RvcgoAY29uanVnYXRlX2dyYWRpZW50OiB1bmV4cGVjdGVkIGxlbmd0aCAwIHZlY3RvcgoAJXMgdG8gY2hhbmdlIGRyYXdpbmcgc2l6ZSwgbXVsdGlwbHkgdGhlIHdpZHRoIGFuZCBoZWlnaHQgb24gdGhlIC5QUyBsaW5lIGFib3ZlIGFuZCB0aGUgbnVtYmVyIG9uIHRoZSB0d28gbGluZXMgYmVsb3cgKHJvdW5kZWQgdG8gdGhlIG5lYXJlc3QgaW50ZWdlcikgYnkgYSBzY2FsZSBmYWN0b3IKAGFkZF9zZWdtZW50OiBlcnJvcgoAJS41ZyAlLjVnICUuNWcgJXNjb2xvcgoAMCAwIDAgZWRnZWNvbG9yCgAwLjggMC44IDAuOCBzZXRyZ2Jjb2xvcgoAMCAwIDEgc2V0cmdiY29sb3IKADEgMCAwIHNldHJnYmNvbG9yCgAwIDAgMCBzZXRyZ2Jjb2xvcgoAJWQgJWQgc2V0bGF5ZXIKAC8vKioqIGVuZF9sYXllcgoAVVRGLTggaW5wdXQgdXNlcyBub24tTGF0aW4xIGNoYXJhY3RlcnMgd2hpY2ggY2Fubm90IGJlIGhhbmRsZWQgYnkgdGhpcyBQb3N0U2NyaXB0IGRyaXZlcgoATGV0dGVyCgAvLyoqKiBiZWdpbl9jbHVzdGVyCgAvLyoqKiBlbmRfY2x1c3RlcgoAcmVtb3ZpbmcgZW1wdHkgY2x1c3RlcgoAQ2VudGVyCgBXYXJuaW5nOiBubyB2YWx1ZSBmb3Igd2lkdGggb2Ygbm9uLUFTQ0lJIGNoYXJhY3RlciAldS4gRmFsbGluZyBiYWNrIHRvIHdpZHRoIG9mIHNwYWNlIGNoYXJhY3RlcgoAYmFzZSByZWZlcmVyCgAlJVBhZ2VUcmFpbGVyCgAlJVRyYWlsZXIKAC8vKioqIGJlemllcgoAIiVzIiB3YXMgbm90IGZvdW5kIGFzIGEgZmlsZSBvciBhcyBhIHNoYXBlIGxpYnJhcnkgbWVtYmVyCgBzdG9wCgAgY3VydmV0bwoAbmV3cGF0aCAlLjBmICUuMGYgbW92ZXRvCgAlLjBmICUuMGYgbGluZXRvCgAgbGF5b3V0PW5lYXRvCgBub2RlICVzIGluIGdyYXBoICVzIGhhcyBubyBwb3NpdGlvbgoAJXMgbWF4cHNodCBhbmQgbWF4cHN3aWQgaGF2ZSBubyBtZWFuaW5nIGluIERXQiAyLjAsIHNldCBwYWdlIGJvdW5kYXJpZXMgaW4gZ3BpYyBhbmQgaW4gMTB0aCBFZGl0aW9uCgAlcyBhcnJvd2hlYWQgaGFzIG5vIG1lYW5pbmcgaW4gRFdCIDIsIGFycm93aGVhZCA9IDcgbWFrZXMgZmlsbGVkIGFycm93aGVhZHMgaW4gZ3BpYyBhbmQgaW4gMTB0aCBFZGl0aW9uCgAlcyBhcnJvd2hlYWQgaXMgdW5kZWZpbmVkIGluIERXQiAyLCBpbml0aWFsbHkgMSBpbiBncGljLCAyIGluIDEwdGggRWRpdGlvbgoAbWFqb3JpemF0aW9uCgAvLyoqKiBwb2x5Z29uCgBvdmVyZmxvdyB3aGVuIGNvbXB1dGluZyBlZGdlIHdlaWdodCBzdW0KAHNmZHAgb25seSBzdXBwb3J0cyBzdGFydD1yYW5kb20KAG5vZGUgcG9zaXRpb25zIGFyZSBpZ25vcmVkIHVubGVzcyBzdGFydD1yYW5kb20KAGNsb3NlcGF0aCBmaWxsCgAgZWxsaXBzZV9wYXRoIGZpbGwKACAgJS4wZiAlLjBmIGNlbGwKACVmICVmICVmICVmIGNlbGwKAGdyYXBoICVzIGlzIGRpc2Nvbm5lY3RlZC4gSGVuY2UsIHRoZSBjaXJjdWl0IG1vZGVsCgBncmFwaCBpcyBkaXNjb25uZWN0ZWQuIEhlbmNlLCB0aGUgY2lyY3VpdCBtb2RlbAoAZWRnZXMgaW4gZ3JhcGggJXMgaGF2ZSBubyBsZW4gYXR0cmlidXRlLiBIZW5jZSwgdGhlIG1kcyBtb2RlbAoAY2lyY3VpdCBtb2RlbCBub3QgeWV0IHN1cHBvcnRlZCBpbiBHbW9kZT1zZ2QsIHJldmVydGluZyB0byBzaG9ydHBhdGggbW9kZWwKAG1kcyBtb2RlbCBub3QgeWV0IHN1cHBvcnRlZCBpbiBHbW9kZT1zZ2QsIHJldmVydGluZyB0byBzaG9ydHBhdGggbW9kZWwKAG5vZGUgJyVzJywgZ3JhcGggJyVzJyBzaXplIHRvbyBzbWFsbCBmb3IgbGFiZWwKACVzIERXQiAyIGRvZXNuJ3QgdXNlIGZpbGwgYW5kIGRvZXNuJ3QgZGVmaW5lIGZpbGx2YWwKAFsge0NhdGFsb2d9IDw8IC9VUkkgPDwgL0Jhc2UgJXMgPj4gPj4KL1BVVCBwZGZtYXJrCgBbIC9Dcm9wQm94IFslZCAlZCAlZCAlZF0gL1BBR0VTIHBkZm1hcmsKACAgL0JvcmRlciBbIDAgMCAwIF0KICAvQWN0aW9uIDw8IC9TdWJ0eXBlIC9VUkkgL1VSSSAlcyA+PgogIC9TdWJ0eXBlIC9MaW5rCi9BTk4gcGRmbWFyawoAdHJvdWJsZSBpbiBpbml0X3JhbmsKAGxpbmV0aGljayA9IDA7IG9sZGxpbmV0aGljayA9IGxpbmV0aGljawoAIHNldGxpbmV3aWR0aAoAZ3NhdmUKJWQgJWQgJWQgJWQgYm94cHJpbSBjbGlwIG5ld3BhdGgKAGdzYXZlICVnICVnIHRyYW5zbGF0ZSBuZXdwYXRoCgAvLyoqKiBlbmRfZ3JhcGgKAGxheW91dCBhdHRyaWJ1dGUgaXMgaW52YWxpZCBleGNlcHQgb24gdGhlIHJvb3QgZ3JhcGgKAGluIGNoZWNrcGF0aCwgYm94ZXMgJXp1IGFuZCAlenUgZG9uJ3QgdG91Y2gKAG1lcmdlX29uZXdheSBnbGl0Y2gKACVzIGRvbid0IGNoYW5nZSBhbnl0aGluZyBiZWxvdyB0aGlzIGxpbmUgaW4gdGhpcyBkcmF3aW5nCgBOb2RlIG5vdCBhZGphY2VudCB0byBjZWxsIC0tIEFib3J0aW5nCgBpbmNvbXBhcmFibGUgc2VnbWVudHMgISEgLS0gQWJvcnRpbmcKAEFsdGVybmF0aXZlbHksIGNvbnNpZGVyIHJ1bm5pbmcgbmVhdG8gdXNpbmcgLUdwYWNrPXRydWUgb3IgZGVjb21wb3NpbmcKAGxhYmVsX3NjaGVtZSA9ICVkID4gNCA6IGlnbm9yaW5nCgBndnJlbmRlcl9zZXRfc3R5bGU6IHVuc3VwcG9ydGVkIHN0eWxlICVzIC0gaWdub3JpbmcKAEFycm93IHR5cGUgIiVzIiB1bmtub3duIC0gaWdub3JpbmcKAGZkcCBkb2VzIG5vdCBzdXBwb3J0IHN0YXJ0PXNlbGYgLSBpZ25vcmluZwoAJXMgYXR0cmlidXRlIHZhbHVlIG11c3QgYmUgMSBvciAyIC0gaWdub3JpbmcKAE1vcmUgdGhhbiAyIGNvbG9ycyBzcGVjaWZpZWQgZm9yIGEgZ3JhZGllbnQgLSBpZ25vcmluZyByZW1haW5pbmcKAGFzIHJlcXVpcmVkIGJ5IHRoZSAtbiBmbGFnCgBiYlslc10gJS41ZyAlLjVnICUuNWcgJS41ZwoAL3BhdGhib3ggewogICAgL1kgZXhjaCAlLjVnIHN1YiBkZWYKICAgIC9YIGV4Y2ggJS41ZyBzdWIgZGVmCiAgICAveSBleGNoICUuNWcgc3ViIGRlZgogICAgL3ggZXhjaCAlLjVnIHN1YiBkZWYKICAgIG5ld3BhdGggeCB5IG1vdmV0bwogICAgWCB5IGxpbmV0bwogICAgWCBZIGxpbmV0bwogICAgeCBZIGxpbmV0bwogICAgY2xvc2VwYXRoIHN0cm9rZQogfSBkZWYKL2RiZ3N0YXJ0IHsgZ3NhdmUgJS41ZyAlLjVnIHRyYW5zbGF0ZSB9IGRlZgovYXJyb3dsZW5ndGggMTAgZGVmCi9hcnJvd3dpZHRoIGFycm93bGVuZ3RoIDIgZGl2IGRlZgovYXJyb3doZWFkIHsKICAgIGdzYXZlCiAgICByb3RhdGUKICAgIGN1cnJlbnRwb2ludAogICAgbmV3cGF0aAogICAgbW92ZXRvCiAgICBhcnJvd2xlbmd0aCBhcnJvd3dpZHRoIDIgZGl2IHJsaW5ldG8KICAgIDAgYXJyb3d3aWR0aCBuZWcgcmxpbmV0bwogICAgY2xvc2VwYXRoIGZpbGwKICAgIGdyZXN0b3JlCn0gYmluZCBkZWYKL21ha2VhcnJvdyB7CiAgICBjdXJyZW50cG9pbnQgZXhjaCBwb3Agc3ViIGV4Y2ggY3VycmVudHBvaW50IHBvcCBzdWIgYXRhbgogICAgYXJyb3doZWFkCn0gYmluZCBkZWYKL3BvaW50IHsgICAgbmV3cGF0aCAgICAyIDAgMzYwIGFyYyBmaWxsfSBkZWYvbWFrZXZlYyB7CiAgICAvWSBleGNoIGRlZgogICAgL1ggZXhjaCBkZWYKICAgIC95IGV4Y2ggZGVmCiAgICAveCBleGNoIGRlZgogICAgbmV3cGF0aCB4IHkgbW92ZXRvCiAgICBYIFkgbGluZXRvIHN0cm9rZQogICAgWCBZIG1vdmV0bwogICAgeCB5IG1ha2VhcnJvdwp9IGRlZgoAL3BhdGhib3ggewogICAgL1ggZXhjaCBuZWcgJS41ZyBzdWIgZGVmCiAgICAvWSBleGNoICUuNWcgc3ViIGRlZgogICAgL3ggZXhjaCBuZWcgJS41ZyBzdWIgZGVmCiAgICAveSBleGNoICUuNWcgc3ViIGRlZgogICAgbmV3cGF0aCB4IHkgbW92ZXRvCiAgICBYIHkgbGluZXRvCiAgICBYIFkgbGluZXRvCiAgICB4IFkgbGluZXRvCiAgICBjbG9zZXBhdGggc3Ryb2tlCn0gZGVmCgAlIVBTLUFkb2JlLTIuMAovbm9kZSB7CiAgL1kgZXhjaCBkZWYKICAvWCBleGNoIGRlZgogIC95IGV4Y2ggZGVmCiAgL3ggZXhjaCBkZWYKICBuZXdwYXRoCiAgeCB5IG1vdmV0bwogIHggWSBsaW5ldG8KICBYIFkgbGluZXRvCiAgWCB5IGxpbmV0bwogIGNsb3NlcGF0aCBmaWxsCn0gZGVmCi9jZWxsIHsKICAvWSBleGNoIGRlZgogIC9YIGV4Y2ggZGVmCiAgL3kgZXhjaCBkZWYKICAveCBleGNoIGRlZgogIG5ld3BhdGgKICB4IHkgbW92ZXRvCiAgeCBZIGxpbmV0bwogIFggWSBsaW5ldG8KICBYIHkgbGluZXRvCiAgY2xvc2VwYXRoIHN0cm9rZQp9IGRlZgoAfSBiaW5kIGRlZgoALlBTICUuNWYgJS41ZgoAb3ZlcmxhcDogJXMgdmFsdWUgJWQgc2NhbGluZyAlLjA0ZgoAICBiZWF1dGlmeV9sZWF2ZXMgJWQgbm9kZSB3ZWlnaHRzICVkIHJvdGF0aW9uICUuMDNmCgAgIHJlcHVsc2l2ZSBleHBvbmVudDogJS4wM2YKACAgSyA6ICUuMDNmIEMgOiAlLjAzZgoAJXMgJS4zZgoACmludGVyc2VjdGlvbiBhdCAlLjNmICUuM2YKACAgICBzY2FsZSAlLjNmCgB0b3J1cyB7ICUuM2YsICUuM2YKACAgICA8JTkuM2YsICU5LjNmLCAlOS4zZj4sICUuM2YKACBpbiAlcyAtIHNldHRpbmcgdG8gJS4wMmYKAGNpcmNsZSAlcyAlLjBmLCUuMGYsJS4wZgoAcmVjdCAlcyAlLjBmLCUuMGYgJS4wZiwlLjBmCgAlZCAlZCAlZCAlLjBmICVkICVkICVkICVkICVkICUuM2YgJWQgJS40ZiAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYKACAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYgJS4wZiAlLjBmICUuMGYgJS4wZiAlLjBmCgAlJSUlUGFnZTogMSAxCiUlJSVQYWdlQm91bmRpbmdCb3g6ICUuMGYgJS4wZiAlLjBmICUuMGYKAHBvc1slenVdICUuMGYgJS4wZgoALm5yIFNGICUuMGYKc2NhbGV0aGlja25lc3MgPSAlLjBmCgAlcyBzYXZlIHBvaW50IHNpemUgYW5kIGZvbnQKLm5yIC5TIFxuKC5zCi5uciBERiBcbiguZgoAc2hvd3BhZ2UKJSUlJVRyYWlsZXIKJSUlJUJvdW5kaW5nQm94OiAlLmYgJS5mICUuZiAlLmYKAGFkZGluZyAlenUgaXRlbXMsIHRvdGFsIGFyZWEgPSAlZiwgdyA9ICVmLCBhcmVhL3c9JWYKAGdhcD0lZiwlZgoAICBhc3BlY3QgJWYKAGEgJWYgYiAlZiBjICVmIGQgJWYgciAlZgoAbW9kZWwgJWQgc21hcnRfaW5pdCAlZCBzdHJlc3N3dCAlZCBpdGVyYXRpb25zICVkIHRvbCAlZgoAU29sdmluZyBtb2RlbCAlZCBpdGVyYXRpb25zICVkIHRvbCAlZgoAJXMgY29vcmQgJS41ZyAlLjVnIGh0ICVmIHdpZHRoICVmCgByZWMgJWYgJWYgJWYgJWYKACVzIDogJWYgJWYgJWYgJWYKACVzIDogJWYgJWYKAG1heHBzaHQgPSAlZgptYXhwc3dpZCA9ICVmCgBtZHNNb2RlbDogZGVsdGEgPSAlZgoAIHIxICVmIHIyICVmCgBQYWNraW5nOiBjb21wdXRlIGdyaWQgc2l6ZQoAZ3NhdmUKACUlRW5kQ29tbWVudHMKc2F2ZQoAVW5yZWNvZ25pemVkIGNoYXJhY3RlciAnJWMnICglZCkgaW4gc2lkZXMgYXR0cmlidXRlCgBJbWFnZXMgdW5zdXBwb3J0ZWQgaW4gImJhY2tncm91bmQiIGF0dHJpYnV0ZQoAJXMgR05VIHBpYyB2cy4gMTB0aCBFZGl0aW9uIGRcKGUndGVudGUKAHJlc2V0ICVzIHNldCB0byBrbm93biBzdGF0ZQoAJWcgJWcgc2V0X3NjYWxlICVkIHJvdGF0ZSAlZyAlZyB0cmFuc2xhdGUKACVmICVmIHRyYW5zbGF0ZQoAJWQgJWQgdHJhbnNsYXRlCgAvLyoqKiBlbGxpcHNlCgBVbnJlY29nbml6ZWQgb3ZlcmxhcCB2YWx1ZSAiJXMiIC0gdXNpbmcgZmFsc2UKAG1lbW9yeSBhbGxvY2F0aW9uIGZhaWx1cmUKACVzOiB2c25wcmludGYgZmFpbHVyZQoAZW5kcGFnZQpzaG93cGFnZQpncmVzdG9yZQoAZW5kCnJlc3RvcmUKAGxheW91dCB3YXMgbm90IGRvbmUKAExheW91dCB3YXMgbm90IGRvbmUKAC8vKioqIHBvbHlsaW5lCgB0cnlpbmcgdG8gZGVsZXRlIGEgbm9uLWxpbmUKACMgZW5kIG9mIEZJRyBmaWxlCgBTaW5nbGUKAHJlbmRlcmVyIGZvciAlcyBpcyB1bmF2YWlsYWJsZQoAZHluYW1pYyBsb2FkaW5nIG5vdCBhdmFpbGFibGUKACUuMGYgJS4wZiBsaW5ldG8gc3Ryb2tlCgBjbG9zZXBhdGggc3Ryb2tlCgAgZWxsaXBzZV9wYXRoIHN0cm9rZQoALy8qKiogYmVnaW5fZWRnZQoALy8qKiogZW5kX2VkZ2UKAGxvc3QgJXMgJXMgZWRnZQoAb3ZlcmZsb3cgd2hlbiBjYWxjdWxhdGluZyB2aXJ0dWFsIHdlaWdodCBvZiBlZGdlCgBhZGRfdHJlZV9lZGdlOiBtaXNzaW5nIHRyZWUgZWRnZQoAaW4gcm91dGVzcGxpbmVzLCBjYW5ub3QgZmluZCBOT1JNQUwgZWRnZQoAc2hvd3BhZ2UKACVkICVkICVkIGJlZ2lucGFnZQoALy8qKiogYmVnaW5fcGFnZQoALy8qKiogZW5kX3BhZ2UKAEZpbGVuYW1lICIlcyIgaXMgdW5zYWZlCgBsYWJlbDogYXJlYSB0b28gbGFyZ2UgZm9yIHJ0cmVlCgAvLyoqKiBlbmRfbm9kZQoAVXNpbmcgZGVmYXVsdCBjYWxjdWxhdGlvbiBmb3Igcm9vdCBub2RlCgBjb250YWluX25vZGVzIGNsdXN0ICVzIHJhbmsgJWQgbWlzc2luZyBub2RlCgAlZiAlZiAlZiAlZiBub2RlCgA8PCAvUGFnZVNpemUgWyVkICVkXSA+PiBzZXRwYWdlZGV2aWNlCgBpbiBjaGVja3BhdGgsIGJveCAlenUgaGFzIExMIGNvb3JkID4gVVIgY29vcmQKAGluIGNoZWNrcGF0aCwgYm94IDAgaGFzIExMIGNvb3JkID4gVVIgY29vcmQKAGNsdXN0ZXIgbmFtZWQgJXMgbm90IGZvdW5kCgBtaW5jcm9zczogcGFzcyAlZCBpdGVyICVkIHRyeWluZyAlZCBjdXJfY3Jvc3MgJWxsZCBiZXN0X2Nyb3NzICVsbGQKAG5vZGUgJXMsIHBvcnQgJXMgdW5yZWNvZ25pemVkCgAlcyVzIHVuc3VwcG9ydGVkCgBjbHVzdGVyIGN5Y2xlICVzIC0tICVzIG5vdCBzdXBwb3J0ZWQKACVzIC0+ICVzOiBzcGxpbmUgc2l6ZSA+IDEgbm90IHN1cHBvcnRlZAoAbGF5b3V0IGFib3J0ZWQKAHBhZ2VkaXI9JXMgaWdub3JlZAoAVHdvIGNsdXN0ZXJzIG5hbWVkICVzIC0gdGhlIHNlY29uZCB3aWxsIGJlIGlnbm9yZWQKAElsbGVnYWwgYXR0cmlidXRlICVzIGluICVzIC0gaWdub3JlZAoAVW5rbm93biB2YWx1ZSAlcyBmb3IgYXR0cmlidXRlICJtb2RlbCIgaW4gZ3JhcGggJXMgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBhdHRyaWJ1dGUgIm1vZGUiIGluIGdyYXBoICVzIC0gaWdub3JlZAoAc3RhcnQ9MCBub3Qgc3VwcG9ydGVkIHdpdGggbW9kZT1zZWxmIC0gaWdub3JlZAoAT3ZlcmxhcCB2YWx1ZSAiJXMiIHVuc3VwcG9ydGVkIC0gaWdub3JlZAoAVW5rbm93biB2YWx1ZSAlcyBmb3IgUk9XUyAtIGlnbm9yZWQKAFVua25vd24gdmFsdWUgJXMgZm9yIENPTFVNTlMgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBWQUxJR04gLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBBTElHTiAtIGlnbm9yZWQKAElsbGVnYWwgdmFsdWUgJXMgZm9yIEZJWEVEU0laRSAtIGlnbm9yZWQKAElsbGVnYWwgdmFsdWUgJS4qcyBmb3IgU1RZTEUgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBCQUxJR04gaW4gVEQgLSBpZ25vcmVkCgBJbGxlZ2FsIHZhbHVlICVzIGZvciBBTElHTiBpbiBURCAtIGlnbm9yZWQKAFJPV1NQQU4gdmFsdWUgY2Fubm90IGJlIDAgLSBpZ25vcmVkCgBDT0xTUEFOIHZhbHVlIGNhbm5vdCBiZSAwIC0gaWdub3JlZAoAbm9kZSAlcywgcG9ydCAlcywgdW5yZWNvZ25pemVkIGNvbXBhc3MgcG9pbnQgJyVzJyAtIGlnbm9yZWQKAFVua25vd24gInNwbGluZXMiIHZhbHVlOiAiJXMiIC0gaWdub3JlZAoAaW4gcm91dGVzcGxpbmVzLCBQc2hvcnRlc3RwYXRoIGZhaWxlZAoAaW4gcm91dGVzcGxpbmVzLCBQcm91dGVzcGxpbmUgZmFpbGVkCgAjIHBsdWdpbiBsb2FkaW5nIG9mIGRlcGVuZGVuY3kgIiUuKnMiIGZhaWxlZAoAUGFyc2luZyBvZiAiJXMiIGZhaWxlZAoAJXM6JWQ6IGNsYWltZWQgdW5yZWFjaGFibGUgY29kZSB3YXMgcmVhY2hlZAoAIyB1bnN1Y2Nlc3NmdWwgcGx1Z2luIGxvYWQKACUuNWcgJS41ZyB0cmFuc2xhdGUgbmV3cGF0aCB1c2VyX3NoYXBlXyVkCgBuc2l6ZXNjYWxlPSVmLGl0ZXJhdGlvbnM9JWQKAGN0cmwtPm92ZXJsYXA9JWQKACVzICV6dSBub2RlcyAlenUgZWRnZXMgbWF4aXRlcj0lZCBiYWxhbmNlPSVkCgAvLyoqKiBiZWdpbl9sYXllcjogJXMsICVkLyVkCgBkZWdlbmVyYXRlIGNvbmNlbnRyYXRlZCByYW5rICVzLCVkCgAgIG1heCBsZXZlbHMgJWQKAAklcyAlZAoAICBCYXJuZXMtSHV0dCBjb25zdGFudCAlLjAzZiB0b2xlcmFuY2UgICUuMDNmIG1heGl0ZXIgJWQKAGd2d3JpdGVfbm9feiBwcm9ibGVtICVkCgAgIHF1YWR0cmVlIHNpemUgJWQgbWF4X2xldmVsICVkCgByZWJ1aWxkX3ZsaXN0czogbGVhZCBpcyBudWxsIGZvciByYW5rICVkCgByZWJ1aWxkX3ZsaXN0czogcmFuayBsZWFkICVzIG5vdCBpbiBvcmRlciAlZCBvZiByYW5rICVkCgAgIHNtb290aGluZyAlcyBvdmVybGFwICVkIGluaXRpYWxfc2NhbGluZyAlLjAzZiBkb19zaHJpbmtpbmcgJWQKACAgY29vbGluZyAlLjAzZiBzdGVwIHNpemUgICUuMDNmIGFkYXB0aXZlICVkCgBVbnN1cHBvcnRlZCBjaGFyc2V0IHZhbHVlICVkCgBpbiByb3V0ZXNwbGluZXMsIGlsbGVnYWwgdmFsdWVzIG9mIHByZXYgJWQgYW5kIG5leHQgJWQsIGxpbmUgJWQKACAgZWRnZV9s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bWluYXRpb24sIHZlcnNpb24gMgoAJXMgZmlsbHZhbCBpcyAwLjMgaW4gMTB0aCBFZGl0aW9uIChmaWxsIDAgbWVhbnMgYmxhY2spLCAwLjUgaW4gZ3BpYyAoZmlsbCAwIG1lYW5zIHdoaXRlKSwgdW5kZWZpbmVkIGluIERXQiAyCgAlcyByZXNldCB3b3JrcyBpbiBncGljIGFuZCAxMHRoIGVkaXRpb24sIGJ1dCBpc24ndCBkZWZpbmVkIGluIERXQiAyCgBzZXR1cExhdGluMQoAXDAwMQoAJXMgICAgICAgIHRvbGVyYW5jZSAwLjAxCgAgICAgdG9sZXJhbmNlIDAuMQoAJSVQYWdlczogMQoAICAgICAgICBkaWZmdXNlQ29sb3IgMSAxIDEKADEwMC4wMAoAIEVQU0YtMy4wCgAlcyBib3hyYWQgaXMgbm93IDAuMCBpbiBncGljLCBlbHNlIGl0IHJlbWFpbnMgMi4wCgBzcGhlcmUgezwlOS4zZiwgJTkuM2YsICU5LjNmPiwgMS4wCgBXYXJuaW5nOiBubyB2YWx1ZSBmb3Igd2lkdGggb2YgQVNDSUkgY2hhcmFjdGVyICV1LiBGYWxsaW5nIGJhY2sgdG8gMAoAaW5zdGFsbF9pbl9yYW5rLCBsaW5lICVkOiAlcyAlcyByYW5rICVkIGkgPSAlZCBhbiA9IDAKAGNvbmNlbnRyYXRlPXRydWUgbWF5IG5vdCB3b3JrIGNvcnJlY3RseS4KAE5vIGxpYnogc3VwcG9ydC4KAHR3b3BpOiB1c2Ugb2Ygd2VpZ2h0PTAgY3JlYXRlcyBkaXNjb25uZWN0ZWQgY29tcG9uZW50LgoAdGhlIGdyYXBoIGludG8gY29ubmVjdGVkIGNvbXBvbmVudHMuCgBPcnRob2dvbmFsIGVkZ2VzIGRvIG5vdCBjdXJyZW50bHkgaGFuZGxlIGVkZ2UgbGFiZWxzLiBUcnkgdXNpbmcgeGxhYmVscy4KAG1pbmNyb3NzICVzOiAlbGxkIGNyb3NzaW5ncywgJS4yZiBzZWNzLgoAJXMgaXMgbm90IGEga25vd24gY29sb3IuCgBpcyBpbmFwcHJvcHJpYXRlLiBSZXZlcnRpbmcgdG8gdGhlIHNob3J0ZXN0IHBhdGggbW9kZWwuCgBpcyB1bmRlZmluZWQuIFJldmVydGluZyB0byB0aGUgc2hvcnRlc3QgcGF0aCBtb2RlbC4KAFVuYWJsZSB0byByZWNsYWltIGJveCBzcGFjZSBpbiBzcGxpbmUgcm91dGluZyBmb3IgZWRnZSAiJXMiIC0+ICIlcyIuIFNvbWV0aGluZyBpcyBwcm9iYWJseSBzZXJpb3VzbHkgd3JvbmcuCgBFcnJvciBkdXJpbmcgY29udmVyc2lvbiB0byAiVVRGLTgiLiBRdWl0aW5nLgoAb3JkZXJpbmcgJyVzJyBub3QgcmVjb2duaXplZC4KAGdyYWRpZW50IHBlbiBjb2xvcnMgbm90IHlldCBzdXBwb3J0ZWQuCgAgIGluaXRDTWFqVlBTQyBkb25lOiAlZCBnbG9iYWwgY29uc3RyYWludHMgZ2VuZXJhdGVkLgoAVGhlIGNoYXJhY3RlciAnJWMnIGFwcGVhcnMgaW4gYm90aCB0aGUgbGF5ZXJzZXAgYW5kIGxheWVybGlzdHNlcCBhdHRyaWJ1dGVzIC0gbGF5ZXJsaXN0c2VwIGlnbm9yZWQuCgB0aGUgYXNwZWN0IGF0dHJpYnV0ZSBoYXMgYmVlbiBkaXNhYmxlZCBkdWUgdG8gaW1wbGVtZW50YXRpb24gZmxhd3MgLSBhdHRyaWJ1dGUgaWdub3JlZC4KAFRoZSBsYXllcnNlbGVjdCBhdHRyaWJ1dGUgIiVzIiBkb2VzIG5vdCBtYXRjaCBhbnkgbGF5ZXIgc3BlY2lmZWQgYnkgdGhlIGxheWVycyBhdHRyaWJ1dGUgLSBpZ25vcmVkLgoAZWRnZSAlcyAtPiAlcyA6IHNldCBtb3JlIHRoYW4gb25lIHNwbGluZS4gRmlyc3QgdXNlZCwgb3RoZXIgZHJvcHBlZC4KACV6dSBvdXQgb2YgJXp1IGxhYmVscyBwb3NpdGlvbmVkLgoAJXp1IG91dCBvZiAlenUgZXh0ZXJpb3IgbGFiZWxzIHBvc2l0aW9uZWQuCgAgIGdlbmVyYXRlIGVkZ2UgY29uc3RyYWludHMuLi4KAEdlbmVyYXRpbmcgTm9uLW92ZXJsYXAgQ29uc3RyYWludHMuLi4KAEdlbmVyYXRpbmcgRWRnZSBDb25zdHJhaW50cy4uLgoAR2VuZXJhdGluZyBEaUctQ29MYSBFZGdlIENvbnN0cmFpbnRz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c2V0dGluZyBhIGJvdW5kaW5nIGJveCBzaXplLCBzZWUgZG90KDEpKQoAZXJyb3IgaW4gY29sb3J4bGF0ZSgpCgB0cnVuY2F0aW5nIHN0eWxlICclcycKAElsbGVnYWwgdmFsdWUgaW4gIiVzIiBjb2xvciBhdHRyaWJ1dGU7IGZsb2F0IGV4cGVjdGVkIGFmdGVyICc7JwoAZGVmaW5lIGF0dHJzMCAlJSAlJTsgZGVmaW5lIHVuZmlsbGVkICUlICUlOyBkZWZpbmUgcm91bmRlZCAlJSAlJTsgZGVmaW5lIGRpYWdvbmFscyAlJSAlJQoAPHN2ZyB3aWR0aD0iJWRwdCIgaGVpZ2h0PSIlZHB0IgoAIyBkZXBlbmRlbmNpZXMgIiUuKnMiIGRpZCBub3QgbWF0Y2ggIiUuKnMiCgAjIHR5cGUgIiUuKnMiIGRpZCBub3QgbWF0Y2ggIiUuKnMiCgAkYyBjcmVhdGUgaW1hZ2UgJS4yZiAlLjJmIC1pbWFnZSAicGhvdG9fJXMiCgBObyBvciBpbXByb3BlciBpbWFnZSBmaWxlPSIlcyIKAGZpbGUgbG9hZGluZyBpcyBkaXNhYmxlZCBiZWNhdXNlIHRoZSBlbnZpcm9ubWVudCBjb250YWlucyBTRVJWRVJfTkFNRT0iJXMiCgBDb3VsZCBub3QgcGFyc2UgeGRvdCAiJXMiCgBObyBsb2FkaW1hZ2UgcGx1Z2luIGZvciAiJXMiCgAgWyV6dV0gKCUuMDJmLCUuMDJmKSAoJS4wMmYsJS4wMmYpICVwICIlcyIKAGZvbnRuYW1lOiB1bmFibGUgdG8gcmVzb2x2ZSAiJXMiCgBEdXBsaWNhdGUgY2x1c3RlciBuYW1lICIlcyIKAHVucmVjb2duaXplZCBhcGkgbmFtZSAiJXMiCgBpbWFnZSBjcmVhdGUgcGhvdG8gInBob3RvXyVzIiAtZmlsZSAiJXMiCgBObyBvciBpbXByb3BlciBzaGFwZWZpbGU9IiVzIiBmb3Igbm9kZSAiJXMiCgBObyBvciBpbXByb3BlciBpbWFnZT0iJXMiIGZvciBub2RlICIlcyIKAG5vZGUgIiVzIiBpcyBjb250YWluZWQgaW4gdHdvIG5vbi1jb21wYXJhYmxlIGNsdXN0ZXJzICIlcyIgYW5kICIlcyIKAEVycm9yOiBub2RlICIlcyIgYmVsb25ncyB0byB0d28gbm9uLW5lc3RlZCBjbHVzdGVycyAiJXMiIGFuZCAiJXMiCgAgICIlcyIKACNpbmNsdWRlICJjb2xvcnMuaW5jIgojaW5jbHVkZSAidGV4dHVyZXMuaW5jIgojaW5jbHVkZSAic2hhcGVzLmluYyIKAFVua25vd24gSFRNTCBlbGVtZW50IDwlcz4gb24gbGluZSAlbHUgCgAlcyBpbiBsaW5lICVsdSAKAHNjYWxlIGJ5ICVnLCVnIAoAY29tcHJlc3MgJWcgCgBMYXlvdXQgd2FzIG5vdCBkb25lLiAgTWlzc2luZyBsYXlvdXQgcGx1Z2lucz8gCgCJUE5HDQoaCgAJAEGBgAULtgMBAQEBAQEBAQIDAQECAQEBAQEBAQEBAQEBAQEBAQEBAgEEBQEBAQEBAQYBAQcICQoKCgoKCgoKCgoBAQsBDAENDg8QERITFBUWExMTExcYGRMaGxwdExMTExMBHgEBEwEfICEiIxMkJSYTExMTJygpEyorLC0TExMTEwEBAQEBExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMuExMTLxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTMBMTExMTExMTExMTExMTExMAAAAAAAAEAAQAHAAcACEAIQAkACIACgACABYACQAiACIAIgAVAB0AAQAUABQAFAAUABQAFAAUAAgABAAFABwAGwAXABwAIQAgAB8AHgAJABMAAAAVABIAFQADAAcAFQAVABQAFAAUABQAFAAUABQAFAAIAAQABQAFAAYAHAAaABgAGQAhAAcAFQAUABQAFAAUABQAFAALABQADQAUAAwAFAAUABQADgAUABQAFAAQABQADwAUABEAQcKDBQuVBAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAMABAAHAAMABAAFAAUABgAGAAgABwAHABEAFgASABEAEgAIAAgADwAPABcADwAYAA8AGQAaABoAHgAWADQAHgAFADIABgAiACIAMwAXABgANQAZABoAGgAqADYAKgA0ADcAMgBFADsAPAAzADsAPABGADUARwBIAEwANgAiAEkASgA3AEUATgBQAGIAUQBSAFQARgBHAFUASABMAFYASQBKAFgAWgBOAEQAUABRAFIAVAA4AC8ALABVACkAVgAbABAAWABaAF0AXQBdAF0AXQBdAF0AXgBeAF4AXgBeAF4AXgBfAF8AXwBfAF8AXwBfAGAACQBgAGAAYABgAGAAYQBhAGMAAgBjAGMAYwBjAGMAZAAAAGQAAABkAGQAZABlAAAAZQBlAGUAZQBlAGYAAAAAAGYAZgBmAGYAZwAAAGcAZwBnAGcAaAAAAGgAaABoAGgAaABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAEHkhwULzQGuAC4ALwAzADUAMAA3AKoA2wDbANsA2wAAAD0AhwA3ADcA2wDbAAAAKAA1AC4AMgAvAGIAAAAAAEcAAADbANsAUQAAANsA2wDbAAAA2wCEAFUA2wCCANsAAACBANsAAAA+AEIAQQBIAEQAUgBbAAAAAABeAF8A2wAAANsA2wDbAAAAAAB7AEkAVwBSAFoAWgBdAAAAXwAAAF8AAABlAF0AXwAAAF0AbgBqAAAAaQAAAG4AAADbAJMAmgChAKgAqwBwALEAuAC/AMYAzQDTAEHCiQULzwFcAAEAXQBdAF4AXgBfAF8AXABcAFwAXABcAGAAXABcAFwAYQBcAFwAYgBiAGIAYgBiAGIAYgBjAGQAZQBmAFwAXABcAGcAXABcAFwAYABcAFwAYQBcAGEAXABoAGEAXABiAGIAYgBiAGIAYgBiAGIAYwBkAGUAZQBcAGYAXABcAFwAZwBoAGEAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAGIAYgBiAAAAXABcAFwAXABcAFwAXABcAFwAXABcAFwAQaGLBQswAQECAwEEAQUBBgcHAQYGBgYGBgYGBgYGBgYGBgYDBgYGBgYGBgYGBgYGBgYGBgYGAEHiiwULowQKAAsADAANAA4ACgAPABAAEQASABMACgAUABUAFQAVABYAFwAVABgAFQAVABkAFQAVABUAGgAVABUACgAVABUAFQAWABcAGAAVABUAGQAVABUAFQAaABUAFQAVABUAGwAMAAwAJAAeAB4AIAAhACAAIQAkACUAJgAtADIALwAuACoAJQAmACgAKQAzACoANAArADUANgA3ADwAMgBHAD0AIgBFACIAPwBAAEYAMwA0AEgANQA2ADcALwBJACoARwBKAEUATABcADwARgBcAD0ATQBIAE4ATwBSAEkAQQBQAFEASgBMAFMAVAAxAFUAVgBXAE0ATgBYAE8AUgBZAFAAUQBaAFsAUwBEAFQAVQBWAFcASwBEACwAWAAsAFkAOAAsAFoAWwAdAB0AHQAdAB0AHQAdAB8AHwAfAB8AHwAfAB8AIwAjACMAIwAjACMAIwAnAFwAJwAnACcAJwAnADAAMAA5ABwAOQA5ADkAOQA5ADoAXAA6AFwAOgA6ADoAOwBcADsAOwA7ADsAOwA+AFwAXAA+AD4APgA+AEIAXABCAEIAQgBCAEMAXABDAEMAQwBDAEMACQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAMAAAADQAAAA4AAAAOAEGQkAUL0QUR7u4TCAPu/u7u7gHu7u4B7u4J/u4SFRfuEgHu7u7uCg3u7u7u7u7u7u4B7u4WCAEBGQ4Y7u4bGBru7h3u7u7uARX77u7u7hAe7u7uAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIWEQICAgICAgICAgICAgISEAITAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIUAhUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4CDwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIBAgMEBQYHCAkKCwwNAAAACwMEBQ8HAwwNBgwNDgwNGhUAAQADBw4GDwgM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ADekAAB7Zcx7zMT/AFqXAACMqspDosr/ABiMAACR86wIaKz/APW/AABBEfnw+ej/AOawAABNKevM68X/ANeiAABfPd2o3bX/APqVAAB7Zcx7zMT/ALiKAACMqspDosr/AJWDAACR86wIaKz/AJW+AABBEfnw+ej/AIavAABNKevM68X/AHehAABfPd2o3bX/AJqUAAB7Zcx7zMT/AFiJAACJoNNOs9P/ADWCAACNxb4rjL7/AHp8AACT8p4IWJ7/ADW9AAA8DPz3/PD/ACauAABMGfPg89v/ABegAABNKevM68X/ADqTAABfPd2o3bX/APiHAAB7Zcx7zMT/ANWAAACJoNNOs9P/ABp7AACNxb4rjL7/ALV2AACT8p4IWJ7/AP+7AAA8DPz3/PD/APCsAABMGfPg89v/AOGeAABNKevM68X/AASSAABfPd2o3bX/AMKGAAB7Zcx7zMT/AJ9/AACJoNNOs9P/AOR5AACNxb4rjL7/AH91AACR86wIaKz/AG5yAACW74EIQIH/AEfEAABKFfXl9eD/ADi1AABQSNmh2Zv/ACmnAABisqMxo1T/AOfCAABJD/jt+On/ANizAABONuS65LP/AMmlAABWaMR0xHb/AOyYAABivosji0X/AIfBAABJD/jt+On/AHiyAABONuS65LP/AGmkAABWaMR0xHb/AIyXAABisqMxo1T/AEqMAABm/20AbSz/ACfAAABJD/jt+On/ABixAABNLOnH6cD/AAmjAABQSNmh2Zv/ACyWAABWaMR0xHb/AOqKAABisqMxo1T/AMeDAABm/20AbSz/AMe+AABJD/jt+On/ALivAABNLOnH6cD/AKmhAABQSNmh2Zv/AMyUAABWaMR0xHb/AIqJAABgnqtBq13/AGeCAABivosji0X/AKx8AABs/1oAWjL/AGe9AABIB/z3/PX/AFiuAABKFfXl9eD/AEmgAABNLOnH6cD/AGyTAABQSNmh2Zv/ACqIAABWaMR0xHb/AAeBAABgnqtBq13/AEx7AABivosji0X/AOd2AABs/1oAWjL/ACa8AABIB/z3/PX/ABetAABKFfXl9eD/AAifAABNLOnH6cD/ACuSAABQSNmh2Zv/AOmGAABWaMR0xHb/AMZ/AABgnqtBq13/AAt6AABivosji0X/AKZ1AABm/20AbSz/AJVyAABl/0QARBv/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AG/DAADk3NDQHIv/AGC0AADlPvHxttr/AFGmAAA9Z+G44Yb/AHSZAABIxqxNrCb/AA/CAADk3NDQHIv/AACzAADlPvHxttr/APGkAAAAAPf39/f/ABSYAAA9Z+G44Yb/ANKMAABIxqxNrCb/AK/AAADm3MXFG33/AKCxAADnTOnpo8n/AJGjAADpHf394O//ALSWAAA7JvXm9dD/AHKLAAA/gdeh12r/AE+EAABExZJNkiH/AE+/AADm3MXFG33/AECwAADnTOnpo8n/ADGiAADpHf394O//AFSVAAAAAPf39/f/ABKKAAA7JvXm9dD/AO+CAAA/gdeh12r/ADR9AABExZJNkiH/AO+9AADm3MXFG33/AOCuAADodt7ed67/ANGgAADlPvHxttr/APSTAADpHf394O//ALKIAAA7JvXm9dD/AI+BAAA9Z+G44Yb/ANR7AAA/prx/vEH/AG93AABExZJNkiH/AK68AADm3MXFG33/AJ+tAADodt7ed67/AJCfAADlPvHxttr/ALOSAADpHf394O//AHGHAAAAAPf39/f/AE6AAAA7JvXm9dD/AJN6AAA9Z+G44Yb/AC52AAA/prx/vEH/AB1zAABExZJNkiH/AP7FAADO/0tAAEv/AB7KAABl/0QARBv/AO+2AADOrYN2KoP/AOCoAADHV6uZcKv/AKOaAADHM8/Cpc//AAGOAADSFejn1Oj/AH6FAABMHvDZ8NP/AGN+AABQRNum26D/AJ54AABYe65armH/AC10AABhxXgbeDf/AIbFAADO/0tAAEv/AJvJAABhxXgbeDf/AGG7AABl/0QARBv/AHe2AADOrYN2KoP/AGioAADHV6uZcKv/ACuaAADHM8/Cpc//AImNAADSFejn1Oj/AAaFAAAAAPf39/f/AOt9AABMHvDZ8NP/ACZ4AABQRNum26D/ALVzAABYe65armH/AKXEAADERsOvjcP/AJa1AAAAAPf39/f/AIenAABSWr9/v3v/AEXDAADJqJR7MpT/ADa0AADHM8/Cpc//ACemAABQRNum26D/AEqZAABm/4gAiDf/AOXBAADJqJR7MpT/ANayAADHM8/Cpc//AMekAAAAAPf39/f/AOqXAABQRNum26D/AKiMAABm/4gAiDf/AIXAAADOrYN2KoP/AHaxAADERsOvjcP/AGejAADSFejn1Oj/AIqWAABMHvDZ8NP/AEiLAABSWr9/v3v/ACWEAABhxXgbeDf/ACW/AADOrYN2KoP/ABawAADERsOvjcP/AAeiAADSFejn1Oj/ACqVAAAAAPf39/f/AOiJAABMHvDZ8NP/AMWCAABSWr9/v3v/AAp9AABhxXgbeDf/AMW9AADOrYN2KoP/ALauAADHV6uZcKv/AKegAADHM8/Cpc//AMqTAADSFejn1Oj/AIiIAABMHvDZ8NP/AGWBAABQRNum26D/AKp7AABYe65armH/AEV3AABhxXgbeDf/AIS8AADOrYN2KoP/AHWtAADHV6uZcKv/AGafAADHM8/Cpc//AImSAADSFejn1Oj/AEeHAAAAAPf39/f/ACSAAABMHvDZ8NP/AGl6AABQRNum26D/AAR2AABYe65armH/APNyAABhxXgbeDf/AAHEAAC9C/Ls5/L/APK0AACXPdumvdv/AOOmAACNxb4rjL7/AKHCAAC5CPbx7vb/AJKzAACbKOG9yeH/AIOlAACRcM90qc//AKaYAACP97AFcLD/AEHBAAC5CPbx7vb/ADKyAACbKOG9yeH/ACOkAACRcM90qc//AEaXAACNxb4rjL7/AASMAACP940EWo3/AOG/AAC5CPbx7vb/ANKwAACoGObQ0eb/AMOiAACXPdumvdv/AOaVAACRcM90qc//AKSKAACNxb4rjL7/AIGDAACP940EWo3/AIG+AAC5CPbx7vb/AHKvAACoGObQ0eb/AGOhAACXPdumvdv/AIaUAACRcM90qc//AESJAACOt8A2kMD/ACGCAACP97AFcLD/AGZ8AACP+HsDTnv/ACG9AADpCP//9/v/ABKuAAC9C/Ls5/L/AAOgAACoGObQ0eb/ACaTAACXPdumvdv/AOSHAACRcM90qc//AMGAAACOt8A2kMD/AAZ7AACP97AFcLD/AKF2AACP+HsDTnv/AOu7AADpCP//9/v/ANysAAC9C/Ls5/L/AM2eAACoGObQ0eb/APCRAACXPdumvdv/AK6GAACRcM90qc//AIt/AACOt8A2kMD/ANB5AACP97AFcLD/AGt1AACP940EWo3/AFpyAACP+VgCOFj/AJHEAADIDvDs4vD/AIK1AACXPdumvdv/AHOnAACC0JkckJn/ADHDAADPCPf27/f/ACK0AACbKOG9yeH/ABOmAACPgM9nqc//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ANaZAADPhKOYTqP/AHHCAAD+4eTkGhz/AGKzAACSsrg3frj/AFOlAABTk69Nr0r/AHaYAADPhKOYTqP/ADSNAAAV////fwD/ABHBAAD+4eTkGhz/AAKyAACSsrg3frj/APOjAABTk69Nr0r/ABaXAADPhKOYTqP/ANSLAAAV////fwD/ALGEAAAqzP///zP/ALG/AAD+4eTkGhz/AKKwAACSsrg3frj/AJOiAABTk69Nr0r/ALaVAADPhKOYTqP/AHSKAAAV////fwD/AFGDAAAqzP///zP/AJZ9AAAPwaamVij/AFG+AAD+4eTkGhz/AEKvAACSsrg3frj/ADOhAABTk69Nr0r/AFaUAADPhKOYTqP/ABSJAAAV////fwD/APGBAAAqzP///zP/ADZ8AAAPwaamVij/ANF3AADoeff3gb//APG8AAD+4eTkGhz/AOKtAACSsrg3frj/ANOfAABTk69Nr0r/APaSAADPhKOYTqP/ALSHAAAV////fwD/AJGAAAAqzP///zP/ANZ6AAAPwaamVij/AHF2AADoeff3gb//AGBzAAAAAJmZmZn/ABLFAAByeMJmwqX/AAO2AAALm/z8jWL/APSnAACcTcuNoMv/ALLDAAByeMJmwqX/AKO0AAALm/z8jWL/AJSmAACcTcuNoMv/ALeZAADkZufnisP/AFLCAAByeMJmwqX/AEOzAAALm/z8jWL/ADSlAACcTcuNoMv/AFeYAADkZufnisP/ABWNAAA6m9im2FT/APLAAAByeMJmwqX/AOOxAAALm/z8jWL/ANSjAACcTcuNoMv/APeWAADkZufnisP/ALWLAAA6m9im2FT/AJKEAAAi0P//2S//AJK/AAByeMJmwqX/AIOwAAALm/z8jWL/AHSiAACcTcuNoMv/AJeVAADkZufnisP/AFWKAAA6m9im2FT/ADKDAAAi0P//2S//AHd9AAAZWuXlxJT/ADK+AAByeMJmwqX/ACOvAAALm/z8jWL/ABShAACcTcuNoMv/ADeUAADkZufnisP/APWIAAA6m9im2FT/ANKBAAAi0P//2S//ABd8AAAZWuXlxJT/ALJ3AAAAALOzs7P/AELGAAB4VNON08f/AGjKAADTUr28gL3/ADO3AAAqTP///7P/ACSpAACvJdq+utr/AOeaAAAEi/v7gHL/AEWOAACQZNOAsdP/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ACs6AAAhIv//+Nz/AEYwAAD259zcFDz/AI80AAB///8A////AP9GAACq/4sAAIv/AIE0AAB//4sAi4v/AHdRAAAe77i4hgv/AEEIAAAAAKmpqan/AJ8zAABV/2QAZAD/AHYHAAAAAKmpqan/AAk7AAAnbr29t2v/AD1gAADU/4uLAIv/ANYzAAA6jmtVay//AF5OAAAX////jAD/AHpTAADGwMyZMsz/AIZVAAAA/4uLAAD/AMYwAAAKeenplnr/ADg0AABVPbyPvI//ADpHAACvj4tIPYv/AGMIAAB/Z08vT0//AJgHAAB/Z08vT0//ABVKAACA/9EAztH/AP8QAADH/9OUANP/AMs5AADo6///FJP/ACJGAACK//8Av///ADQIAAAAAGlpaWn/AGkHAAAAAGlpaWn/AJRGAACU4f8ekP//AGQ6AAAAzrKyIiL/AJ5IAAAcD///+vD/AGIzAABVwIsiiyL/AAJhAADU////AP//AO4uAAAAANzc3Nz/AH1IAACqB//4+P//AL9SAAAj////1wD/AJ1RAAAe2drapSD/AJUIAAAAAICAgID/AGE0AABV/4AAgAD/AE4KAAA70P+t/y//AMoHAAAAAICAgID/AFcLAABVD//w//D/AK85AADplv//abT/AHdVAAAAjM3NXFz/AEwvAADC/4JLAIL/AFYGAAAqD/////D/ABg7AAAmavDw5oz/AAIdAACqFPrm5vr/AG08AADwD///8PX/AJAzAABA//x8/AD/ABQyAAAmMf//+s3/AGJGAACJP+at2Ob/AGo4AAAAd/DwgID/AHI0AAB/H//g////AF8KAAAqKPr6+tL/ACUIAAAAANPT09P/AHMzAABVZO6Q7pD/AFoHAAAAANPT09P/ALw5AAD4Sf//tsH/ALUwAAAMhP//oHr/ABE0AAB90bIgsqr/ABBGAACPdfqHzvr/AE8IAACUOJl3iJn/AIQHAACUOJl3iJn/AM1GAACXNN6wxN7/AD0KAAAqH////+D/ABhMAABV//8A/wD/AOozAABVwM0yzTL/AAwzAAAVFPr68Ob/AE5gAADU////AP//AKkwAAAA/4CAAAD/AGhLAABxgM1mzar/AL1GAACq/80AAM3/AGhTAADMmNO6VdP/AOBMAAC3fNuTcNv/ACQ0AABnqbM8s3H/ACVHAACwj+57aO7/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APeqAAAXJO7u38z/AMacAAAXJM3NwLD/AAeQAAAYIouLg3j/AC5gAAB///8A////AINLAABxgP9//9T/AKW5AABxgP9//9T/AD2rAABxgO527sb/AAydAABxgM1mzar/AFSQAABxgItFi3T/AKZKAAB/D//w////AJ65AAB/D//w////ADarAAB/D+7g7u7/AAWdAAB/Ds3Bzc3/AEaQAAB/DouDi4v/AIhOAAAqGvX19dz/AEhFAAAXOv//5MT/AOe4AAAXOv//5MT/AH+qAAAXOu7u1bf/AE6cAAAWOs3Nt57/AI+PAAAXOouLfWv/AIU6AAAAAAAAAAD/ADdSAAAZMf//683/AHBHAACq//8AAP//AEy5AACq//8AAP//AOSqAACq/+4AAO7/ALOcAACq/80AAM3/APSPAACq/4sAAIv/ABQRAADAzuKKK+L/AP0vAAAAvqWlKir/AOi3AAAAv///QED/AJypAAAAv+7uOzv/AHObAAAAv83NMzP/ALSOAAAAvouLIyP/ALFRAAAXY97euIf/AAS6AAAXZP//05v/AIurAAAXY+7uxZH/AFqdAAAXY83Nqn3/AKKQAAAXY4uLc1X/AHZGAACAZ6BfnqD/ABW5AACDZ/+Y9f//AK2qAACDZu6O5e7/AHycAACDZ816xc3/AL2PAACDZotThov/AGVJAAA///9//wD/AHi5AAA///9//wD/ABCrAAA//+527gD/AN+cAAA//81mzQD/ACCQAAA//4tFiwD/ADVJAAAR2tLSaR7/AG25AAAR2///fyT/AAWrAAAR2+7udiH/ANScAAAR2s3NZh3/ABWQAAAR3IuLRRP/AH84AAALr///f1D/AHe4AAAHqf//clb/AByqAAAGqe7ualD/APObAAAGqc3NW0X/ADSPAAAGqIuLPi//AIVGAACak+1kle3/ADA6AAAhIv//+Nz/AJy4AAAhIv//+Nz/AEGqAAAiI+7u6M3/ABicAAAiIs3NyLH/AFmPAAAjIouLiHj/AEswAAD259zcFDz/AJQ0AAB///8A////AFy4AAB///8A////AAGqAAB//+4A7u7/ANibAAB//80Azc3/ABmPAAB//4sAi4v/AARHAACq/4sAAIv/AIY0AAB//4sAi4v/AHxRAAAe77i4hgv/APW5AAAe8P//uQ//AHyrAAAe8O7urQ7/AEudAAAe8M3NlQz/AJOQAAAe8IuLZQj/AEYIAAAAAKmpqan/AKQzAABV/2QAZAD/AHsHAAAAAKmpqan/AA47AAAnbr29t2v/AEJgAADU/4uLAIv/ANszAAA6jmtVay//AC64AAA6j//K/3D/ANOpAAA6j+687mj/AKqbAAA6j82izVr/AOuOAAA6j4tuiz3/AGNOAAAX////jAD/AMi5AAAV////fwD/AGCrAAAV/+7udgD/AC+dAAAV/83NZgD/AHeQAAAV/4uLRQD/AH9TAADGwMyZMsz/ACO6AADGwf+/Pv//AKqrAADGwO6yOu7/AHmdAADGwM2aMs3/AMGQAADGwItoIov/AItVAAAA/4uLAAD/AMswAAAKeenplnr/AD00AABVPbyPvI//AEm4AABVPv/B/8H/AO6pAABVPu607rT/AMWbAABVPs2bzZv/AAaPAABVPotpi2n/AD9HAACvj4tIPYv/AGgIAAB/Z08vT0//AJK3AAB/aP+X////AEKpAAB/Z+6N7u7/ACubAAB/aM15zc3/AHGOAAB/aItSi4v/AJ0HAAB/Z08vT0//ABpKAACA/9EAztH/AAQRAADH/9OUANP/ANA5AADo6///FJP/AJK4AADo6///FJP/ADeqAADo6+7uEon/AA6cAADo683NEHb/AE+PAADn7IuLClD/ACdGAACK//8Av///AP24AACK//8Av///AJWqAACK/+4Asu7/AGScAACK/80Ams3/AKWPAACK/4sAaIv/ADkIAAAAAGlpaWn/AG4HAAAAAGlpaWn/AJlGAACU4f8ekP//ACC5AACU4f8ekP//ALiqAACU4e4chu7/AIecAACU4c0YdM3/AMiPAACU4YsQTov/AGk6AAAAzrKyIiL/AKa4AAAAz///MDD/AEuqAAAAz+7uLCz/ACKcAAAAz83NJib/AGOPAAAAz4uLGhr/AKNIAAAcD///+vD/AGczAABVwIsiiyL/AAdhAADU////AP//APMuAAAAANzc3Nz/AIJIAACqB//4+P//AMRSAAAj////1wD/AA+6AAAj////1wD/AJarAAAj/+7uyQD/AGWdAAAj/83NrQD/AK2QAAAj/4uLdQD/AKJRAAAe2drapSD/APm5AAAe2v//wSX/AICrAAAe2u7utCL/AE+dAAAe2s3Nmx3/AJeQAAAe2ouLaRT/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AFEvAADC/4JLAIL/ALMWAAAqAP////4AAFsGAAAqD/////D/AIW3AAAqD/////D/ADWpAAAqD+7u7uD/AAebAAAqDs3NzcH/AGSOAAAqDouLi4P/AB07AAAmavDw5oz/AMa4AAAncP//9o//AFaqAAAncO7u5oX/AC2cAAAnb83NxnP/AG6PAAAnb4uLhk7/AAcdAACqFPrm5vr/AHI8AADwD///8PX/AM24AADwD///8PX/AF2qAADvD+7u4OX/ADScAADwDs3NwcX/AHWPAADvDouLg4b/AJUzAABA//x8/AD/ABkyAAAmMf//+s3/AAS4AAAmMf//+s3/ALipAAAlMu7u6b//AI+bAAAmMc3NyaX/ANCOAAAnMYuLiXD/AGdGAACJP+at2Ob/AAq5AACKQP+/7///AKKqAACKQO6y3+7/AHGcAACKP82awM3/ALKPAACJQItog4v/AG84AAAAd/DwgID/AHc0AAB/H//g////AFe4AAB/H//g////APypAAB/H+7R7u7/ANObAAB/H820zc3/ABSPAAB/H4t6i4v/AFhRAAAjc+7u3YL/AOW5AAAjdP//7Iv/AGyrAAAjc+7u3IL/ADudAAAjc83NvnD/AIOQAAAjc4uLgUz/AGQKAAAqKPr6+tL/ACoIAAAAANPT09P/AHgzAABVZO6Q7pD/AF8HAAAAANPT09P/AME5AAD4Sf//tsH/AIe4AAD5Uf//rrn/ACyqAAD4Ue7uoq3/AAOcAAD5UM3NjJX/AESPAAD5UIuLX2X/ALowAAAMhP//oHr/APe3AAAMhP//oHr/AKupAAALhO7ulXL/AIKbAAAMhc3NgWL/AMOOAAAMhYuLV0L/ABY0AAB90bIgsqr/ABVGAACPdfqHzvr/AO+4AACPT/+w4v//AIeqAACPT+6k0+7/AFacAACOT82Nts3/AJePAACPTotge4v/ABZHAACvj/+EcP//AFQIAACUOJl3iJn/AIkHAACUOJl3iJn/ANJGAACXNN6wxN7/ACy5AACXNf/K4f//AMSqAACXNe680u7/AJOcAACXNc2itc3/ANSPAACWNYtue4v/AEIKAAAqH////+D/AKu3AAAqH////+D/AFupAAAqH+7u7tH/AESbAAAqH83NzbT/AIqOAAAqH4uLi3r/AB1MAABV//8A/wD/AO8zAABVwM0yzTL/ABEzAAAVFPr68Ob/AFNgAADU////AP//AF+6AADU////AP//AOarAADU/+7uAO7/ALWdAADU/83NAM3/AP2QAADU/4uLAIv/AK4wAADvubCwMGD/AO+3AADky///NLP/AKOpAADky+7uMKf/AHqbAADkzM3NKZD/ALuOAADky4uLHGL/AG1LAABxgM1mzar/AMJGAACq/80AAM3/AG1TAADMmNO6VdP/ABW6AADLmf/gZv//AJyrAADLme7RX+7/AGudAADLmc20Us3/ALOQAADLmot6N4v/AOVMAAC3fNuTcNv/ALq5AAC3ff+rgv//AFKrAAC3fe6fee7/ACGdAAC3fc2JaM3/AGmQAAC3fItdR4v/ACk0AABnqbM8s3H/ACpHAACwj+57aO7/ALMzAABv//oA+pr/AAVKAAB9p9FI0cz/AOdUAADk5MfHFYX/AFVGAACqxnAZGXD/AIQ2AABqCf/1//r/AJJJAAAEHv//5OH/AIS5AAAEHv//5OH/AByrAAAEHu7u1dL/AOucAAADHc3Nt7X/ACyQAAAFHYuLfXv/AEEyAAAaSf//5LX/AJJIAAAZUf//3q3/AFK5AAAZUf//3q3/AOqqAAAZUu7uz6H/ALmcAAAZUs3Ns4v/APqPAAAZUouLeV7/AIcEAACq/4AAAID/AAdGAACq/4AAAID/AEBLAAAqAP////4AAAdRAAAbF/399eb/APJEAAAq/4CAgAD/ABhgAAA4wI5rjiP/AFS6AAA4wf/A/z7/ANurAAA4wO6z7jr/AKqdAAA4wM2azTL/APKQAAA4wItpiyL/AHNOAAAb////pQD/AMy5AAAb////pQD/AGSrAAAb/+7umgD/ADOdAAAb/83NhQD/AHuQAAAb/4uLWgD/AN5VAAAL////RQD/AEm6AAAL////RQD/ANCrAAAL/+7uQAD/AJ+dAAAL/83NNwD/AOeQAAAL/4uLJQD/AI9TAADWe9racNb/ACe6AADWfP//g/r/AK6rAADWfO7ueun/AH2dAADWfM3Nacn/AMWQAADVfIuLR4n/AI9RAAAmSO7u6Kr/AP4zAABVZPuY+5j/AD64AABVZf+a/5r/AOOpAABVZO6Q7pD/ALqbAABVZM18zXz/APuOAABVZItUi1T/AC1KAAB/Q+6v7u7/AI+5AAB/RP+7////ACerAAB/RO6u7u7/APacAAB/RM2Wzc3/ADeQAAB/Q4tmi4v/APxUAADxfNvbcJP/AC+6AADxff//gqv/ALarAADxfe7ueZ//AIWdAADxfc3NaIn/AM2QAADxfIuLR13/AEctAAAaKf//79X/ACJCAAAURv//2rn/ANy4AAAURv//2rn/AGyqAAATRe7uy63/AEOcAAATRc3Nr5X/AISPAAAURYuLd2X/ANULAAAUsM3NhT//AOc5AAD3P///wMv/AJa4AAD1Sf//tcX/ADuqAAD1Se7uqbj/ABKcAAD1Ss3NkZ7/AFOPAAD1SYuLY2z/APg1AADURt3doN3/AGe4AADURP//u///AAyqAADURO7uru7/AOObAADURM3Nls3/ACSPAADUQ4uLZov/AKlGAACEO+aw4Ob/AEFNAADE3fCgIPD/AMC5AAC/z/+bMP//AFirAADAz+6RLO7/ACedAADAz819Js3/AG+QAADAz4tVGov/AAdNAAC/qplmM5n/AChWAAAA////AAD/AE+6AAAA////AAD/ANarAAAA/+7uAAD/AKWdAAAA/83NAAD/AO2QAAAA/4uLAAD/AL8vAAAAPby8j4//AOS3AAAAPv//wcH/AJipAAAAPu7utLT/AG+bAAAAPs3Nm5v/ALCOAAAAPouLaWn/APVGAACfteFBaeH/ADy5AACft/9Idv//ANSqAACft+5Dbu7/AKOcAACfts06X83/AOSPAACft4snQIv/AOwvAAAR3IuLRRP/ANswAAAEivr6gHL/APy3AAAJlv//jGn/ALCpAAAJlu7ugmL/AIebAAAJls3NcFT/AMiOAAAJlouLTDn/AM4vAAATmvT0pGD/AE80AABnqosui1f/AE24AABnq/9U/5//APKpAABnq+5O7pT/AMmbAABnq81DzYD/AAqPAABnqosui1f/AD03AAAREP//9e7/AG24AAAREP//9e7/ABKqAAASEe7u5d7/AOmbAAASEc3Nxb//ACqPAAASEIuLhoL/AM1gAAANt6CgUi3/AGi6AAANuP//gkf/AO+rAAANuO7ueUL/AL6dAAANuM3NaDn/AAaRAAANuYuLRyb/ANsbAAAAAMDAwMD/ADhGAACLbOuHzuv/AAG5AACQeP+Hzv//AJmqAACQeO5+wO7/AGicAACQeM1sps3/AKmPAACRd4tKcIv/AFJHAACvj81qWs3/AEe5AACvkP+Db///AN+qAACvkO56Z+7/AK6cAACvkM1pWc3/AO+PAACvkItHPIv/AHsIAACUOJBwgJD/AJa3AACVOP/G4v//AEapAACVOO650+7/AC+bAACUOc2fts3/AHWOAACVOItse4v/ALAHAACUOJBwgJD/ABcKAAAABf//+vr/AKW3AAAABf//+vr/AFWpAAAABe7u6en/AD6bAAAABM3Nycn/AISOAAAAA4uLiYn/AMozAABq//8A/3//ACG4AABq//8A/3//AMapAABq/+4A7nb/AJ2bAABq/80AzWb/AN6OAABq/4sAi0X/AOZGAACSm7RGgrT/ADG5AACSnP9juP//AMmqAACSnO5crO7/AJicAACSnM1PlM3/ANmPAACTm4s2ZIv/AK00AAAYVNLStIz/AGK4AAAUsP//pU//AAeqAAAUsO7umkn/AN6bAAAUsM3NhT//AB+PAAAUsIuLWiv/AAo5AAB//4AAgID/ANJMAADUHdjYv9j/ALG5AADUHv//4f//AEmrAADUHu7u0u7/ABidAADUHc3Ntc3/AGCQAADUHYuLe4v/ANwuAAAGuP//Y0f/ANy3AAAGuP//Y0f/AJCpAAAGuO7uXEL/AGebAAAGuM3NTzn/AKiOAAAGuYuLNib/ALsPAAAqAP////4AAEBKAAB7tuBA4ND/AJO5AACB//8A9f//ACurAACB/+4A5e7/APqcAACB/80Axc3/ADuQAACB/4sAhov/ACQRAADUc+7ugu7/AABVAADj19DQIJD/ADO6AADrwf//Ppb/ALqrAADrwO7uOoz/AImdAADrwM3NMnj/ANGQAADrwIuLIlL/AIUIAAAAAICAgID/AAg0AABV/4AAgAD/ALoHAAAAAICAgID/AJUwAAAA/4CAAAD/AP1MAADU/4CAAID/AMsSAAAbRPX13rP/AMu3AAAbRf//57r/AH+pAAAbRO7u2K7/AFubAAAbRM3Nupb/AKGOAAAbQ4uLfmb/AMZIAAAAAP//////AEROAAAAAPX19fX/AI0IAAAAAL6+vr7/AFg0AABV//8A/wD/AMIHAAAAAL6+vr7/AJ8wAADvubCwMGD/ADJNAADE3fCgIPD/AH4KAAAq/////wD/ALC3AAAq/////wD/AGCpAAAq/+7u7gD/AEmbAAAq/83NzQD/AI+OAAAq/4uLiwD/AEQzAAA4wM2azTL/AEHAggcLA5R4AgBBzoIHC4UIoED/////////////////////////////////////////////////////////////////////////////////////AAKqAkQDAAQABKoGOQZxAaoCqgIABIMEAAKqAgACOQIABAAEAAQABAAEAAQABAAEAAQABDkCOQKDBIMEgwSNA14HxwVWBVYFxwXjBHMExwXHBaoCHQPHBeMEHQfHBccFcwTHBVYFcwTjBMcFxwWNB8cFxwXjBKoCOQKqAsEDAASqAo0DAASNAwAEjQOqAgAEAAQ5AjkCAAQ5AjkGAAQABAAEAASqAh0DOQIABAAExwUABAAEjQPXA5oB1wNUBP///////////////////////////////////////////////////////////////////////////////////////wACqgJxBAAEAAQACKoGOQKqAqoCAASPBAACqgIAAjkCAAQABAAEAAQABAAEAAQABAAEAASqAqoCjwSPBI8EAARxB8cFVgXHBccFVgXjBDkGOQYdAwAEOQZWBY0HxwU5BuMEOQbHBXMEVgXHBccFAAjHBccFVgWqAjkCqgKmBAAEqgIABHMEjQNzBI0DqgIABHMEOQKqAnMEOQKqBnMEAARzBHMEjQMdA6oCcwQABMcFAAQABI0DJwPDAScDKQT///////////////////////////////////////////////////////////////////////////////////////8AAqoCXAMABAAEqgY5BrYBqgKqAgAEZgUAAqoCAAI5AgAEAAQABAAEAAQABAAEAAQABAAEqgKqAmYFZgVmBQAEXAfjBOMEVgXHBeME4wTHBccFqgKNA1YFcwSqBlYFxwXjBMcF4wQABHMExwXjBKoG4wRzBHMEHQM5Ah0DYAMABKoCAAQABI0DAASNAzkCAAQABDkCOQKNAzkCxwUABAAEAAQABB0DHQM5AgAEjQNWBY0DjQMdAzMDMwIzA1QE////////////////////////////////////////////////////////////////////////////////////////AAIdA3EEAAQABKoGOQY5AqoCqgIABI8EAAKqAgACOQIABAAEAAQABAAEAAQABAAEAAQABKoCqgKPBI8EjwQABKgGVgVWBVYFxwVWBVYFxwU5Bh0DAARWBeMEHQfHBccF4wTHBVYFcwTjBMcFVgUdB1YF4wTjBKoCOQKqAo8EAASqAgAEAASNAwAEjQOqAgAEcwQ5AjkCAAQ5AjkGcwQABAAEAAQdAx0DOQJzBI0DVgUABI0DHQPJAsMByQKPBP//vHgCAEHeigcLhQigQP////////////////////////////////////////////////////////////////////////////////////85AjkC1wJzBHMEHQdWBYcBqgKqAh0DrAQ5AqoCOQI5AnMEcwRzBHMEcwRzBHMEcwRzBHMEOQI5AqwErASsBHMEHwhWBVYFxwXHBVYF4wQ5BscFOQIABFYFcwSqBscFOQZWBTkGxwVWBeMExwVWBY0HVgVWBeMEOQI5AjkCwQNzBKoCcwRzBAAEcwRzBDkCcwRzBMcBxwEABMcBqgZzBHMEcwRzBKoCAAQ5AnMEAATHBQAEAAQABKwCFAKsAqwE////////////////////////////////////////////////////////////////////////////////////////OQKqAssDcwRzBB0HxwXnAaoCqgIdA6wEOQKqAjkCOQJzBHMEcwRzBHMEcwRzBHMEcwRzBKoCqgKsBKwErATjBM0HxwXHBccFxwVWBeMEOQbHBTkCcwTHBeMEqgbHBTkGVgU5BscFVgXjBMcFVgWNB1YFVgXjBKoCOQKqAqwEcwSqAnME4wRzBOMEcwSqAuME4wQ5AjkCcwQ5Ah0H4wTjBOME4wQdA3MEqgLjBHMEOQZzBHMEAAQdAz0CHQOsBP///////////////////////////////////////////////////////////////////////////////////////zkCOQLXAnMEcwQdB1YFhwGqAqoCHQOsBDkCqgI5AjkCcwRzBHMEcwRzBHMEcwRzBHMEcwQ5AjkCrASsBKwEcwQfCFYFVgXHBccFVgXjBDkGxwU5AgAEVgVzBKoGxwU5BlYFOQbHBVYF4wTHBVYFjQdWBVYF4wQ5AjkCOQLBA3MEqgJzBHMEAARzBHMEOQJzBHMExwHHAQAExwGqBnMEcwRzBHMEqgIABDkCcwQABMcFAAQABAAErAIUAqwCrAT///////////////////////////////////////////////////////////////////////////////////////85AqoCywNzBHMEHQfHBecBqgKqAh0DrAQ5AqoCOQI5AnMEcwRzBHMEcwRzBHMEcwRzBHMEqgKqAqwErASsBOMEzQfHBccFxwXHBVYF4wQ5BscFOQJzBMcF4wSqBscFOQZWBTkGxwVWBeMExwVWBY0HVgVWBeMEqgI5AqoCrARzBKoCcwTjBHME4wRzBKoC4wTjBDkCOQJzBDkCHQfjBOME4wTjBB0DcwSqAuMEcwQ5BnMEcwQABB0DPQIdA6wE///weAIAQe6SBwuFCKBA/////////////////////////////////////////////////////////////////////////////////////80EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQT////////////////////////////////////////////////////////////////////////////////////////NBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0E////////////////////////////////////////////////////////////////////////////////////////zQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBP///////////////////////////////////////////////////////////////////////////////////////80EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQTNBM0EzQT//xh5AgBB/ZoHC4YIQI9AAAD///////////////////////////////8CAf///////////////////////////////////////////////wIB5ACIAVgCWAKiA7UC3QA9AT0BwgFYAuQAqAHkABsBWAJYAlgCWAJYAlgCWAJYAlgCWALkAOQAWAJYAlgCuwGyA9kCpAKhAuYCRwIkAtYC+QIBAUQBcQIfAlcD5AL/AnkC/wKdAmcCWgLYArECTQSKAlQCTQI7ARsBOwFYAvQB9AESAkcCzwFHAhQCTQFKAjgC6ADsAPQBKAFYAzgCLAJHAkcCZgHhAV4BMQIDAkkDDQICAs8BYAEJAWABWAL//wAA////////////////////////////////DwH///////////////////////////////////////////////8PAfgAwAFYAlgCsQPWAvMAZgFmAcUBWAL4ALIB+AA5AVgCWAJYAlgCWAJYAlgCWAJYAlgC+AD4AFgCWAJYAssBtgPoArACqAL6AlUCMgLgAgUDGgFiAZkCMgJkA+wCEQOMAhEDrgJ3Am0C4gLJAlkEoAJqAl0CYgE5AWIBWAL0AfQBIwJYAtgBWAIeAmwBXAJJAv8AAwEYAj8BbQNJAkACWAJYAogB6AGAAUMCDwJVAyICDgLaAYcBIAGHAVgC//8AAP///////////////////////////////wIB////////////////////////////////////////////////AgHkAIgBWAJYAqIDtQLdAD0BPQHCAVgC5ACoAeQAGwFYAlgCWAJYAlgCWAJYAlgCWAJYAuQA5ABYAlgCWAK7AbID2QKkAqEC5gJHAiQC1gL5AgEBRAFxAh8CWAPjAv8CeQL/Ap0CZwJaAtgCsAJNBIoCVAJNAjsBGwE7AVgC9AH0ARICRwLPAUcCFAJNAUoCOALoAOwA9AEoAVgDOAIsAkcCRwJmAeEBXgExAgMCSQMNAgICzwFgAQkBYAFYAv//AAD///////////////////////////////8PAf///////////////////////////////////////////////w8B+ADAAVgCWAKxA9YC8wBmAWYBxQFYAvgAsgH4ADkBWAJYAlgCWAJYAlgCWAJYAlgCWAL4APgAWAJYAlgCywG2A+gCsAKoAvoCVQIyAuACBQMaAWIBmAIyAmUD6wIRA4wCEQOuAncCbQLiAskCWQSgAmoCXQJiATkBYgFYAvQB9AEjAlgC2AFYAh4CbAFcAkkC/wADARgCPwFtA0kCQAJYAlgCiAHoAYABQwIPAlUDIgIOAtoBhwEgAYcBWAL//yB5AgBBjqMHC4UIoED/////////////////////////////////////////////////////////////////////////////////////iwI1A64DtAYXBZoHPQYzAh8DHwMABLQGiwLjAosCsgIXBRcFFwUXBRcFFwUXBRcFFwUXBbICsgK0BrQGtAY/BAAIeQV9BZYFKQYOBZoEMwYEBlwCXAI/BXUE5wb8BUwG0wRMBo8FFAXjBNsFeQXpB3sF4wR7BR8DsgIfA7QGAAQABOcEFAVmBBQF7ATRAhQFEgU5AjkCogQ5AssHEgXlBBQFFAVKAysEIwMSBbwEiwa8BLwEMwQXBbICFwW0Bv///////////////////////////////////////////////////////////////////////////////////////8kCpgMrBLQGkQUECPoGcwKoA6gDLwS0BgoDUgMKA+wCkQWRBZEFkQWRBZEFkQWRBZEFkQUzAzMDtAa0BrQGpAQACDEGGQbfBaQGdwV3BZEGsgb6AvoCMwYZBfYHsgbNBt0FzQYpBsMFdQV/BjEG0wgrBssFzQWoA+wCqAO0BgAEAARmBboFvgS6BW0FewO6BbIFvgK+AlIFvgJWCLIFfwW6BboF8gPDBNMDsgU3BWQHKQU3BagEsgXsArIFtAb///////////////////////////////////////////////////////////////////////////////////////+LAjUDrgO0BhcFmgc9BjMCHwMfAwAEtAaLAuMCiwKyAhcFFwUXBRcFFwUXBRcFFwUXBRcFsgKyArQGtAa0Bj8EAAh5BX0FlgUpBg4FmgQzBgQGXAJcAj8FdQTnBvwFTAbTBEwGjwUUBeME2wV5BekHewXjBHsFHwOyAh8DtAYABAAE5wQUBWYEFAXsBNECFAUSBTkCOQKiBDkCywcSBeUEFAUUBUoDKwQjAxIFvASLBrwEvAQzBBcFsgIXBbQG////////////////////////////////////////////////////////////////////////////////////////yQKmAysEkQWRBQQI+gZzAqgDqAMvBLQGCgNSAwoD7AKRBZEFkQWRBZEFkQWRBZEFkQWRBTMDMwO0BrQGtAakBAAIMQYZBt8FpAZ3BXcFkQayBvoC+gIzBhkF9geyBs0G3QXNBikGwwV1BX8GMQbTCCsGywXNBagD7AKoA7QGAAQABGYFugW+BLoFbQV7A7oFsgW+Ar4CUgW+AlYIsgV/BboFugXyA8ME0wOyBTcFZAcpBTcFqASyBewCsgW0Bv//KHkCAEGeqwcLhQigQGYE////////////////////////////////AAD///////////////////////////////////////////////9mBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYE//9mBP///////////////////////////////wAA////////////////////////////////////////////////ZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBP//ZgT///////////////////////////////8AAP///////////////////////////////////////////////2YEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgT///////////////////////////////////////////////////////////////////////////////////////9mBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYEZgRmBGYE//80eQIAQa6zBwuFCKBA/////////////////////////////////////////////////////////////////////////////////////2kC8AKZAjIEMgTNBKYFRwHwAvAC8AIyBPAC8ALwAjIEMgQyBDIEMgQyBDIEMgQyBDIEMgTwAvACMgQyBDIE8AIqBrgEhwTJBOgESQQzBGkFPAU6AtADmwQNBK0FGwVkBXYEaAWoBNkDpQQwBbME0QZ0BJAEZwTwAtgC8AIyBDIEMgQ0BHUE9gN1BF0E9QIEBF8ESALvAgkEXAKkBl8ESwR1BHUEHAM9AywDXwTrA/QFAgTyA8wD8AIyBPACMgT///////////////////////////////////////////////////////////////////////////////////////9pAvAC7wKwBLAEeQWmBdYB8ALwAnUDsATwAvAC8AIfA7AEsASwBLAEsASwBLAEsASwBLAE8ALwArAEsASwBIEDKgYRBcME5QQkBY0EqwRfBXgFOgJDBPAEbAT2BVcFoAWyBKwF4wQXBOUEbAX5BBIHzgToBHsENwPYAjcDsASwBLAEQwSnBBgEpQSZBPUCBAS+BGMC7wJiBFwC4Aa5BIcEqQSsBGsDcgMsA7oEOARFBmsERQQ6BHgDsAR4A7AE////////////////////////////////////////////////////////////////////////////////////////aQLwApkCMgTZA80EpgVHAfAC8ALwAjIE8ALwAvACMgQyBDIEMgQyBDIEMgQyBDIEMgQyBPAC8AIyBDIEMgTwAioG4wSHBMkE6ARJBDMEaQU8BToC0AObBA0EFwYbBWQFWQRkBagE2QOlBDAFswTRBnQEkARnBPAC2ALwAjIEMgQyBDQEdQSuA3UETAQ2AwQEdQR0Au8CCQSQAqQGXwRLBHUEdQRVAz0DXAN0BOsD9AUCBPIDzAPwAjIE8AIyBP///////////////////////////////////////////////////////////////////////////////////////2kC8AIgA7AEsATcBaYFaQLwAvACdQOwBPAC8ALwAi0DsASwBLAEsASwBLAEsASwBLAEsATwAvACsASwBLAELQMqBukEuATnBA8FvwSvBGkFbQU6Av0DMwU6BEoGSAWeBasEKAb9BAMEewVLBXcFaQdBBXgF5ATiA9ID4gOwBLAEsAS+BL8E8QO/BGoESANIBH8EnQIaA1EEjwKkBn8EjwTKBMoEkwOsA4EDdQRrBDAGmwSDBEME4gOwBOIDsAT//0B5AgBBvrsHC4UIoED/////////////////////////////////////////////////////////////////////////////////////0AImA6wDjAYWBZwI0AUmAqIDogMWBYwG6QKiA+kCogMWBRYFFgUWBRYFFgUWBRYFFgUWBaIDogOMBowGjAZdBAAIeAV8BZYFKgYPBZkENAYDBl4DowOLBXQEvgb8BUwG0wRMBpAFeAXuBNsFeAXpB3sF7AR7BaIDogOiA4wGFgUWBc4E/AQrBPwExATQAvwEEAUyAsECvAQyAsgHEAXbBPwE/ARqAysEJwMQBbwEjAa8BLwENAQUBaIDFAWMBv///////////////////////////////////////////////////////////////////////////////////////7wCOAOzBPAGsAUtCuYGqAJZBFkEsAXwBuQC1wPkAoQFsAWwBbAFsAWwBbAFsAWwBbAFsAU4AzgD8AbwBvAG7wS2BzYGGAbKBaQGdwU0BX0GswZeBHEEKwYZBZUHxgbNBt0FzQZCBq8FdAV/BhwGBwkcBuUFiQVZBIQFWQTwBrAFsAVYBZgFtQSYBVAFYQOYBbMFvAI5A14FvAJ3CLMFfgWYBZgF+gO/BKUDswUzBdYHWgU1BcYEsAVZBLAF8Ab////////////////////////////////////////////////////////////////////////////////////////QAiYDrAOMBhYFnAjQBSYCogOiAxYFjAbpAqID6QKiAxYFFgUWBRYFFgUWBRYFFgUWBRYFogOiA4wGjAaMBl0EAAh2BXwFlgUgBg8FmQQ0BgMGXgOjA4sFdAS+BvwFTAbTBEwGkAV4Be4E2wV2BewHewXsBHsFogOiA6IDjAYWBRYFzgT8BCsE/ATEBNAC+QQQBTICwQKyBDICyQcQBdsE/AT8BGoDKwQnAxAFugSMBrwEugQ0BBQFogMUBYwG////////////////////////////////////////////////////////////////////////////////////////vAI4A7ME8AawBS0K5gaoAlkEWQSwBfAG5ALXA+QChAWwBbAFsAWwBbAFsAWwBbAFsAWwBTgDOAPwBvAG8AbvBLYHNgYYBsoFpAZ3BTQFfQazBl4EcQQrBhkFlQfGBs0G3QXNBkIGrwV0BX8GHAYHCRwG5QWJBVkEhAVZBPAGsAWwBVgFmAW1BJgFUAVhA5gFswW8AjkDXgW8AncIswV8BZgFmAX6A78EpQOzBTEF1gdaBTUFxgSwBVkEsAXwBv//SHkCAEHOwwcLhQigQP////////////////////////////////////////////////////////////////////////////////////8UAiMCNQMrBZMElgbXBcUBXgJeAmoEkwT2AZMCIQLwApMEkwSTBJMEkwSTBJMEkwSTBJMEIQIhApMEkwSTBG8DMQcQBS8FDAXVBXMEIQTTBecFOwIjAukEJwQ5BwgGOwbRBDsG8gRkBG0E0wXDBGgHngR7BJEEogLwAqICVgSWA54EcwTnBM8D5wR9BLYCYgTpBAYCBgIzBAYCcQfpBNUE5wTnBEQD0QPTAukEAgQ5BjEECAS+AwgDaAQIA5ME////////////////////////////////////////////////////////////////////////////////////////FAJKAscDKwWRBDUHAAYhArYCtgJcBJEEUgKTAkgCTgORBJEEkQSRBJEEkQSRBJEEkQSRBEgCUgKRBJEEkQTRAy0HhQVgBRkF7AV7BGQEywUfBqYCpgJQBYUEiweBBl4GBgVeBkgFaASiBAwGMwW8B1YF/gSiBKYCTgOmAkIESgPbBNUEEAUdBBAFugQZA4UEQgVxAnEC9gRxAtsHQgX0BBAFEAWiA/oDeQNCBY0E2QagBI0E5wMnA2gEJwORBP///////////////////////////////////////////////////////////////////////////////////////xQCEgIXAysFaARYBlwFvAFIAkgCagRoBOwBfwIGAs0CaARoBGgEaARoBGgEaARoBGgEaAQGAgYCaARoBGgEagPHBnEEyQSuBFQFFwTHA2oFbQUvAiMCdQTLA7IGngXDBYcEwwWNBAQE/ANoBWIE0QYnBAYEPwRKAs0CSgIjBCcDbwSFBJ4EmgOeBPIDgQICBJ4ECAIIAucDCAL6Bp4EfQSeBJ4EKwNtA5gCngSyA7wF0wOyA40DywJoBMsCaAT///////////////////////////////////////////////////////////////////////////////////////8UAkoCoAMrBWgE2QaqBQoCtgK2AlwEaAQ5ApMCSAJeA2gEaARoBGgEaARoBGgEaARoBGgESAJIAmgEaARoBKwD2QYGBfYE5QRqBVYEPwSFBZoFkwKmAucEJQQKBwoG1wWkBNcF3wQ9BD8EhwW4BCcH2QSDBEoEpgJeA6YCOQQzA28EwQTDBN0DwQR1BPwCVATVBGACYAKLBGACPQfVBK4EwwTBBF4DyQNIA9UEGQROBj8EJwSkA9cCaATXAmgE//9QeQIAQd7LBwuFCKBA/////////////////////////////////////////////////////////////////////////////////////+4BpgJLAyUF4QSKBq8FuQEAAwADxwMlBSgC/gIoAsAD6QRwA3gEagSFBDoEhwQFBMUEhwSAAoACJQUlBSUF1ANuB14FOwUjBf4FOgXLBM0FhQYeAyQEjgXUBGsHIwb0BeEE9AWdBX0E8wQNBlUFzgevBewE0AQAA8ADAAMlBSUFAAQIBHsEogOYBN4DmgITBKgEWAJWAkkESgIMB7oEUASSBHoERwN1A8MCmgT5A+YFCgTwA40DcQMAA3EDJQX///////////////////////////////////////////////////////////////////////////////////////8IAgMDFASgBSAFCQdlBicCkwOTA9sDoAWgAggDoALGA5wF6wMDBf8EMgXLBC8FbwRpBS8F8ALwAqAFoAWgBWMEvAcRBg8GuQWsBsUFXwV1Bk4HkQPDBIkGfAUwCLcGjwacBY8GYQYxBXkFqwYZBgMJeAbbBYQFkwPGA5MDoAWgBQAExAQqBUAETgWTBCUDnQRwBdQCxQIOBcECIAiFBRYFQwUwBSkEGgQuA2oFiQToBrQEfwQ0BAAEGgMABKAF////////////////////////////////////////////////////////////////////////////////////////7gGmAksDJQXhBIoGrwW5AQADAAPHAyUFKAL+AigCwAPpBHADeARqBIUEOgSHBPkDxQSHBBIDEgMlBSUFJQXUA24HXgU7BSMF/gU6BcsEzQWFBh4DJASOBdQEawcjBtgF4QTYBZ0FfQTzBA0GVQXOB68F7ATQBAADwAMAAyUFJQUABJUEbgShA5oExgOhApUEgARhAlQCOQRIAgkHuARMBKAEcQSxA3MDxwKaBE4ElAYCBHoEjQNxAwADcQMlBf///////////////////////////////////////////////////////////////////////////////////////wgCAwMUBKAFIAUJB2UGJwKTA5MD2wOgBaACCAOgAsYDnAXrAwMF/wQyBcsELwWIBGkFLwXwAvACoAWgBaAFYwS8BxEGEwa5BawGxQVfBXUGTgebA8MEiQZ8BUQIowaPBqYFjwZhBjkFeQWrBhkGAwlrBtsFhAWTA8YDkwOgBaAFAARIBTEFSQRNBXUEDAMyBWcF7QLrAiEF1gIECIUFFgVNBTMFRQQjBFYDewXmBHgHqwRbBSMEAAQaAwAEoAX//1h5AgBB7tMHC8gKoED/////////////////////////////////////////////////////////////////////////////////////zwGbAjUD/AMOBLgFdQXEAW0CbQL8A/wD/wFzAgUCFwMOBA4EDgQOBA4EDgQOBA4EDgQOBCQCJAL8A/wD/AO1AycHoQRaBEQE7AToA60DDAX8BAQCjQIoBF0D1wYqBUwFIgRiBVgErQPmAyIFigQeBycE5gO/A3QCFwN0AvwD/ANUAtUDNARiAzQE+wNxAsQDNATWAeoBowPWAWQGNAQ4BDQENATKAiEDrgI0BJ0DuAV3A58DKQOEAq8DhAL8A///AAD///////////////////////////////8AAP///////////////////////////////////////////////88BmwKCA/wDDgTVBaMF3gF+An4C/AP8AxACcwIjAnADDgQOBA4EDgQOBA4EDgQOBA4EDgQ1AjUC/AP8A/wDtQMwB9kEfAQ8BAsF5wOsAxkFDAUiAqYCYARiA/4GRQVpBUIEfQWBBMgD9gM5BbsEQAdoBCgE0wOZAnADmQL8A/wDZwLzA0sEWQNLBAcEiALLA0sE9wELAtcD9wGCBksETQRLBEsE2AIxA8YCSwTJA/YFrQPKAy4DwALNA8AC/AP////////////////////////////////////////////////////////////////////////////////////////PAZsCNQP8Aw4EuAV1BcQBbQJtAvwD/AP/AXMCBQIaAw4EDgQOBA4EDgQOBA4EDgQOBA4EJAIkAvwD/AP8A7UDJwehBFoELgTsBOgDrQMMBfwEBAKNAigEXQPXBigFPAUiBFAFWASeA+YDIgWKBB8HJwTmA78DdAITA3QC/AP8A1QCHQQdBFQDHQTSA3ECHQQdBNYB6gGjA9YBVAYdBBsEHQQdBL4CHQOuAh0EkQO4BXcDlAMpA4QCrwOEAvwD////////////////////////////////////////////////////////////////////////////////////////zwGbAoID/AMOBNUFowXeAX4CfgL8A/wDEAJzAiMCeQMOBA4EDgQOBA4EDgQOBA4EDgQOBDUCNQL8A/wD/AO1AzAH2QR8BCYECwXnA6wDGQUMBSICpgJgBGID/gZABVkFQgRrBYEEuQP2AzkFuwRBB2gEKATTA5kCZgOZAvwD/ANnAjkEOQRLAzkE7gOIAjkEOAT3AQsC1wP3AW4GOAQ4BDkEOQTRAicDxgI4BMED9gWtA8MDLgPAAs0DwAL8A///DAAAAAQAAAAGAAAAAgAAAAMAAAABAAAACQAAAAgAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAEgAAABUAAAAWAAAAFwAAABgAAAAZAAAAGgAAABsAAAAcAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAApAAAAKgAAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAPQAAAD4AAAA/AAAAQAAAAEEAAABCAAAAQwAAAEQAAABHAAAASAAAAEkAAABKAAAASwAAAEwAAABNAAAATgAAAFEAAABSAAAAUwAAAFQAAABV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APUAAABlFwAAlyIAALo2AAD2AAAAt2AAALYAAABFDgAAAiIAAFM3AAAwIAAAYCwAAKUiAAAjOwAAxgMAAM46AADAAwAAjAsAANYDAAAqMgAAsQAAAOhRAACjAAAADEwAADIgAABTUQAADyIAAKQsAAAdIgAAszoAAMgDAABiDgAAIgAAALAaAADSIQAA+1oAABoiAABSQAAAKiMAAL8uAAC7AAAAlxoAAJIhAABaNwAACSMAAJkuAAAdIAAADzkAABwhAAAIQQAArgAAAEMbAAALIwAARC8AAMEDAABSNgAADyAAALEuAAA6IAAAjS4AABkgAACrLgAAGiAAAIcwAABhAQAA7A4AAMUiAADSEQAApwAAADIHAACtAAAA6GAAAMMDAAC8QgAAwgMAAFY2AAA8IgAAoxgAAGAmAACpXwAAgiIAABRRAACGIgAA7zUAABEiAAA8LAAAgyIAANK3AAC5AAAAhqkAALIAAABimwAAswAAAO1KAACHIgAAmUAAAN8AAADrCwAAxAMAAE2QAAA0IgAAbGAAALgDAADeNQAA0QMAAEosAAAJIAAAQDAAAP4AAAAkUAAA3AIAAGYXAADXAAAAMVAAACIhAACrGgAA0SEAALxHAAD6AAAAkRoAAJEhAABaWQAA+wAAAPhEAAD5AAAA6DYAAKgAAAAbPQAA0gMAAOIwAADFAwAAtTYAAPwAAABlLAAAGCEAALA6AAC+AwAAtUcAAP0AAAC2MgAApQAAALA2AAD/AAAAZ2AAALYDAACWOgAADSAAAJo6AAAMIAAA5z8BAAgAAAADAAAA5T4AACLQAAALAAAABgAAAFcVAADzaAAAAgAAAAEAAADKLAAApXQAAAQAAAACAAAAGUIAAAAEAAADAAAABAAAAAxBAAAu0AAABQAAAAUAAAC4QgAABAQAAAQAAAAHAAAALRUAAKo2AAAFAAAACQAAAKw2AAAibQAABAAAAAoAAAAsQgAAQPkBAAQAAAAMAAAAsC8AAAAAAQAAAdDR0tPU1dbX2NkAQebyBwsJ8L8AAAAAAAABAEH48gcLDWludmlzAABmaWxsZWQAQZDzBwsaMBoAACJRAADPNQAAbgsAAPR4AABpxgAAVY4AQdDzBwt5//////////////////////////////////////////8AAAAAAAAABP7//4f+//8HAAAAAAAAAAD//3////9///////////N//v3//////3///////////w/g/////zH8////AAAAAAAAAP//////////////AQD4AwBB4PQHC0FA1///+/////9/f1T9/w8A/t////////////7f/////wMA////////nxn////PPwMAAAAAAAD+////fwL+////fwBBqvUHC7MB////BwcAAAAAAP7//wf+BwAAAAD+//////////98/38vAGAAAADg////////IwAAAP8DAAAA4J/5///9xQMAAACwAwADAOCH+f///W0DAAAAXgAAHADgr/v///3tIwAAAAABAAAA4J/5///9zSMAAACwAwAAAODHPdYYx78DAAAAAAAAAADg3/3///3vAwAAAAADAAAA4N/9///97wMAAABAAwAAAODf/f///f8DAAAAAAMAQfD2BwsZ/v////9/DQA/AAAAAAAAAJYl8P6ubA0gHwBBmPcHCwb//v///wMAQcT3Bwty/////z8A/////38A7doHAAAAAFABUDGCq2IsAAAAAEAAyYD1BwAAAAAIAQL/////////////////////////D///////////////A///Pz//////Pz//qv///z/////////fX9wfzw//H9wfAAAAAEBMAEHA+AcLAQcAQdD4BwsmgAAAAP4DAAD+////////////HwD+/////////////wfg/////x8AQZD5BwsV//////////////////////////8/AEGw+QcLFf//////////////////////////DwBB1fkHC8kCYP8H/v//h/7//wcAAAAAAACAAP//f////3//////AAAAAAAAAP//////////////AQD4AwADAAAAAAD//////////z8AAAADAAAAwNf///v/////f39U/f8PAP7f///////////+3/////97AP///////58Z////zz8DAAAAAAAA/v///38C/v///38A/v/7//+7FgD///8HBwAAAAAA/v//B///BwD/A////////////3z/f+///z3/A+7////////z/z8e/8//AADun/n///3F0585gLDP/wMA5If5///9bdOHOQBewP8fAO6v+////e3zvzsAAMH/AADun/n///3N8485wLDD/wAA7Mc91hjHv8PHPYAAgP8AAO7f/f//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rv+u/67/rv+u/67/rv+u/67/rv+u/67/rv+u/xcArv93AK7/BwAuAK7/JgCu/xcAEQAjAK7/DQCu/67/rv+u/zoArv+u/zUArv+u/67/KACu/wcArv87AEUArv9IAK7/rv+u/67/rv8AQYG1CAvBBgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygAAAAAAAAAAAICAgICAhAMWQEAH1AIAwcSExRXFhcIC2kMHwoFDA4pESsPLRAvMCAyBjQ1GxwdHgsMISIjJCUmJygMGBkXBAobHBogKgohIiMkJSYnKAwKDlMKLFgxWFhYWFhYDBscDy5YMyEiIyQlJicoGxz/U///ISIjJCUmJygM//8F////CRT//////wwbHP8QFRYhIiMkJSYnKBsc/////yEiIyQlJicoDP8SExQRFhf///////8MGxz///8SISIjJCUmJygbHP////8hIiMkJSYnKAz///////8T////////DBsc/////yEiIyQlJicoGxz/////ISIjJCUmJygSExQVFhcYGf///////////yMkJSYnGxITFBYXIjZoAR84ViEgAhsbG14bGzc5cDbSwk8EPCJHIj8iRCIiWCJlIiIFBl9gOQQHCAkKCwwNDgRmZ11qbQUGb1g7cQcICQoLDA0OBHI8W3M+YUYbEhMUFhcEBQY/QWJJBwgJCgsMDQ4FBgBcAAAHCAkKCwwNDgQAAE8AAABTQgAAAAAABAUGAERUVQcICQoLDA0OBQYAAAAABwgJCgsMDQ4EACosLkcxMwAAAAAAAAQFBgAAAEoHCAkKCwwNDgUGAAAAAAcICQoLDA0OBAAAAAAA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X0NUWVBFAAAAAExDX05VTUVSSUMAAExDX1RJTUUAAAAAAExDX0NPTExBVEUAAExDX01PTkVUQVJZAExDX01FU1NBR0VTAEHw9QgLB0MuVVRGLTgAQYj2CAugEDCrAgDIqwIAWKwCAE5vIGVycm9yIGluZm9ybWF0aW9uAElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE11bHRpaG9wIGF0dGVtcHRlZABSZXF1aXJlZCBrZXkgbm90IGF2YWlsYWJsZQBLZXkgaGFzIGV4cGlyZWQAS2V5IGhhcyBiZWVuIHJldm9rZWQAS2V5IHdhcyByZWplY3RlZCBieSBzZXJ2aWNlAAAAAAClAlsA8AG1BYwFJQGDBh0DlAT/AMcDMQMLBrwBjwF/A8oEKwDaBq8AQgNOA9wBDgQVAKEGDQGUAgsCOAZkArwC/wJdA+cECwfPAssF7wXbBeECHgZFAoUAggJsA28E8QDzAxgF2QDaA0wGVAJ7AZ0DvQQAAFEAFQK7ALMDbQD/AYUELwX5BDgAZQFGAZ8AtwaoAXMCUwEAQdiGCQsMIQQAAAAAAAAAAC8CAEH4hgkLBjUERwRWBABBjocJCwKgBABBoocJCyJGBWAFbgVhBgAAzwEAAAAAAAAAAMkG6Qb5Bh4HOQdJB14HAEHQhwkLkQHRdJ4AV529KoBwUg///z4nCgAAAGQAAADoAwAAECcAAKCGAQBAQg8AgJaYAADh9QUYAAAANQAAAHEAAABr////zvv//5K///8AAAAAAAAAABkACwAZGRkAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAGQAKChkZGQMKBwABAAkLGAAACQYLAAALAAYZAAAAGRkZAEHxiAkLIQ4AAAAAAAAAABkACw0ZGRkADQAAAgAJDgAAAAkADgAADgBBq4kJCwEMAEG3iQkLFRMAAAAAEwAAAAAJDAAAAAAADAAADABB5YkJCwEQAEHxiQkLFQ8AAAAEDwAAAAAJEAAAAAAAEAAAEABBn4oJCwESAEGrigkLHhEAAAAAEQAAAAAJEgAAAAAAEgAAEgAAGgAAABoaGgBB4ooJCw4aAAAAGhoaAAAAAAAACQBBk4sJCwEUAEGfiwkLFRcAAAAAFwAAAAAJFAAAAAAAFAAAFABBzYsJCwEWAEHZiwkLJxUAAAAAFQAAAAAJFgAAAAAAFgAAFgAAMDEyMzQ1Njc4OUFCQ0RFRgBBpIwJCwILAgBBzIwJCwj//////////wBBkI0JC/UI/////////////////////////////////////////////////////////////////wABAgMEBQYHCAn/////////CgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiP///////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAQIEBwMGBQAAAAAAAAACAADAAwAAwAQAAMAFAADABgAAwAcAAMAIAADACQAAwAoAAMALAADADAAAwA0AAMAOAADADwAAwBAAAMARAADAEgAAwBMAAMAUAADAFQAAwBYAAMAXAADAGAAAwBkAAMAaAADAGwAAwBwAAMAdAADAHgAAwB8AAMAAAACzAQAAwwIAAMMDAADDBAAAwwUAAMMGAADDBwAAwwgAAMMJAADDCgAAwwsAAMMMAADDDQAA0w4AAMMPAADDAAAMuwEADMMCAAzDAwAMwwQADNsAAAAAVEkCAA0CAAAOAgAADwIAABACAAARAgAAEgIAABMCAAAUAgAAFQIAABYCAAAXAgAAGAIAABkCAAAaAgAABAAAAAAAAACQSQIAGwIAABwCAAD8/////P///5BJAgAdAgAAHgIAALhIAgDMSAIAAAAAANhJAgAfAgAAIAIAAA8CAAAQAgAAIQIAACICAAATAgAAFAIAABUCAAAjAgAAFwIAACQCAAAZAgAAJQIAAMh0AgAoSQIA7EoCAE5TdDNfXzI5YmFzaWNfaW9zSWNOU18xMWNoYXJfdHJhaXRzSWNFRUVFAAAAoHQCAFxJAgBOU3QzX18yMTViYXNpY19zdHJlYW1idWZJY05TXzExY2hhcl90cmFpdHNJY0VFRUUAAAAAJHUCAKhJAgAAAAAAAQAAABxJAgAD9P//TlN0M19fMjEzYmFzaWNfb3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVFRQAAyHQCAORJAgBUSQIATlN0M19fMjE1YmFzaWNfc3RyaW5nYnVmSWNOU18xMWNoYXJfdHJhaXRz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";return y}var he;function tA(y){if(y==he&&u)return new Uint8Array(u);var M=f(y);if(M)return M;throw"both async and sync fetching of the wasm failed"}function pe(y){return Promise.resolve().then(()=>tA(y))}function oA(y,M,R){return pe(y).then(Z=>WebAssembly.instantiate(Z,M)).then(R,Z=>{E(`failed to asynchronously prepare wasm: ${Z}`),qe(Z)})}function Fe(y,M,R,Z){return oA(M,R,Z)}function OA(){return{a:Wt}}function ze(){var y=OA();function M(Z,_){return Qt=Z.exports,D=Qt.y,W(),Ie(Qt.z),be(),Qt}Pe();function R(Z){M(Z.instance)}return he??=He(),Fe(u,he,y,R).catch(o),{}}function ye(y){return i.agerrMessages.push(JA(y)),0}function qt(y){this.name="ExitStatus",this.message=`Program terminated with exit(${y})`,this.status=y}var St=y=>{y.forEach(M=>M(i))};function yA(y,M="i8"){switch(M.endsWith("*")&&(M="*"),M){case"i1":return k[y];case"i8":return k[y];case"i16":return x[y>>1];case"i32":return F[y>>2];case"i64":return X[y>>3];case"float":return j[y>>2];case"double":return Ae[y>>3];case"*":return P[y>>2];default:qe(`invalid type for getValue: ${M}`)}}var ei=y=>dn(y),WA=()=>Nn(),et=typeof TextDecoder<"u"?new TextDecoder:void 0,kt=(y,M=0,R=NaN)=>{for(var Z=M+R,_=M;y[_]&&!(_>=Z);)++_;if(_-M>16&&y.buffer&&et)return et.decode(y.subarray(M,_));for(var q="";M<_;){var te=y[M++];if(!(te&128)){q+=String.fromCharCode(te);continue}var re=y[M++]&63;if((te&224)==192){q+=String.fromCharCode((te&31)<<6|re);continue}var ve=y[M++]&63;if((te&240)==224?te=(te&15)<<12|re<<6|ve:te=(te&7)<<18|re<<12|ve<<6|y[M++]&63,te<65536)q+=String.fromCharCode(te);else{var lA=te-65536;q+=String.fromCharCode(55296|lA>>10,56320|lA&1023)}}return q},JA=(y,M)=>y?kt(b,y,M):"",ui=(y,M,R,Z)=>{qe(`Assertion failed: ${JA(y)}, at: `+[M?JA(M):"unknown filename",R,Z?JA(Z):"unknown function"])};class V{constructor(M){this.excPtr=M,this.ptr=M-24}set_type(M){P[this.ptr+4>>2]=M}get_type(){return P[this.ptr+4>>2]}set_destructor(M){P[this.ptr+8>>2]=M}get_destructor(){return P[this.ptr+8>>2]}set_caught(M){M=M?1:0,k[this.ptr+12]=M}get_caught(){return k[this.ptr+12]!=0}set_rethrown(M){M=M?1:0,k[this.ptr+13]=M}get_rethrown(){return k[this.ptr+13]!=0}init(M,R){this.set_adjusted_ptr(0),this.set_type(M),this.set_destructor(R)}set_adjusted_ptr(M){P[this.ptr+16>>2]=M}get_adjusted_ptr(){return P[this.ptr+16>>2]}}var $=0,ie=(y,M,R)=>{var Z=new V(y);throw Z.init(M,R),$=y,$},oe={isAbs:y=>y.charAt(0)==="/",splitPath:y=>{var M=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return M.exec(y).slice(1)},normalizeArray:(y,M)=>{for(var R=0,Z=y.length-1;Z>=0;Z--){var _=y[Z];_==="."?y.splice(Z,1):_===".."?(y.splice(Z,1),R++):R&&(y.splice(Z,1),R--)}if(M)for(;R;R--)y.unshift("..");return y},normalize:y=>{var M=oe.isAbs(y),R=y.substr(-1)==="/";return y=oe.normalizeArray(y.split("/").filter(Z=>!!Z),!M).join("/"),!y&&!M&&(y="."),y&&R&&(y+="/"),(M?"/":"")+y},dirname:y=>{var M=oe.splitPath(y),R=M[0],Z=M[1];return!R&&!Z?".":(Z&&(Z=Z.substr(0,Z.length-1)),R+Z)},basename:y=>{if(y==="/")return"/";y=oe.normalize(y),y=y.replace(/\/$/,"");var M=y.lastIndexOf("/");return M===-1?y:y.substr(M+1)},join:(...y)=>oe.normalize(y.join("/")),join2:(y,M)=>oe.normalize(y+"/"+M)},Te=()=>{if(typeof crypto=="object"&&typeof crypto.getRandomValues=="function")return y=>crypto.getRandomValues(y);qe("initRandomDevice")},QA=y=>(QA=Te())(y),vA={resolve:(...y)=>{for(var M="",R=!1,Z=y.length-1;Z>=-1&&!R;Z--){var _=Z>=0?y[Z]:J.cwd();if(typeof _!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!_)return"";M=_+"/"+M,R=oe.isAbs(_)}return M=oe.normalizeArray(M.split("/").filter(q=>!!q),!R).join("/"),(R?"/":"")+M||"."},relative:(y,M)=>{y=vA.resolve(y).substr(1),M=vA.resolve(M).substr(1);function R(lA){for(var CA=0;CA=0&&lA[wA]==="";wA--);return CA>wA?[]:lA.slice(CA,wA-CA+1)}for(var Z=R(y.split("/")),_=R(M.split("/")),q=Math.min(Z.length,_.length),te=q,re=0;re{for(var M=0,R=0;R=55296&&Z<=57343?(M+=4,++R):M+=3}return M},bt=(y,M,R,Z)=>{if(!(Z>0))return 0;for(var _=R,q=R+Z-1,te=0;te=55296&&re<=57343){var ve=y.charCodeAt(++te);re=65536+((re&1023)<<10)|ve&1023}if(re<=127){if(R>=q)break;M[R++]=re}else if(re<=2047){if(R+1>=q)break;M[R++]=192|re>>6,M[R++]=128|re&63}else if(re<=65535){if(R+2>=q)break;M[R++]=224|re>>12,M[R++]=128|re>>6&63,M[R++]=128|re&63}else{if(R+3>=q)break;M[R++]=240|re>>18,M[R++]=128|re>>12&63,M[R++]=128|re>>6&63,M[R++]=128|re&63}}return M[R]=0,R-_};function Ct(y,M,R){var Z=R>0?R:Je(y)+1,_=new Array(Z),q=bt(y,_,0,_.length);return M&&(_.length=q),_}var XA=()=>{if(!Ke.length){var y=null;if(typeof window<"u"&&typeof window.prompt=="function"&&(y=window.prompt("Input: "),y!==null&&(y+=` +`)),!y)return null;Ke=Ct(y,!0)}return Ke.shift()},ZA={ttys:[],init(){},shutdown(){},register(y,M){ZA.ttys[y]={input:[],output:[],ops:M},J.registerDevice(y,ZA.stream_ops)},stream_ops:{open(y){var M=ZA.ttys[y.node.rdev];if(!M)throw new J.ErrnoError(43);y.tty=M,y.seekable=!1},close(y){y.tty.ops.fsync(y.tty)},fsync(y){y.tty.ops.fsync(y.tty)},read(y,M,R,Z,_){if(!y.tty||!y.tty.ops.get_char)throw new J.ErrnoError(60);for(var q=0,te=0;te0&&(B(kt(y.output)),y.output=[])},ioctl_tcgets(y){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(y,M,R){return 0},ioctl_tiocgwinsz(y){return[24,80]}},default_tty1_ops:{put_char(y,M){M===null||M===10?(E(kt(y.output)),y.output=[]):M!=0&&y.output.push(M)},fsync(y){y.output&&y.output.length>0&&(E(kt(y.output)),y.output=[])}}},fi=(y,M)=>{b.fill(0,y,y+M)},yn=(y,M)=>Math.ceil(y/M)*M,kn=y=>{y=yn(y,65536);var M=An(65536,y);return M&&fi(M,y),M},qA={ops_table:null,mount(y){return qA.createNode(null,"/",16895,0)},createNode(y,M,R,Z){if(J.isBlkdev(R)||J.isFIFO(R))throw new J.ErrnoError(63);qA.ops_table||={dir:{node:{getattr:qA.node_ops.getattr,setattr:qA.node_ops.setattr,lookup:qA.node_ops.lookup,mknod:qA.node_ops.mknod,rename:qA.node_ops.rename,unlink:qA.node_ops.unlink,rmdir:qA.node_ops.rmdir,readdir:qA.node_ops.readdir,symlink:qA.node_ops.symlink},stream:{llseek:qA.stream_ops.llseek}},file:{node:{getattr:qA.node_ops.getattr,setattr:qA.node_ops.setattr},stream:{llseek:qA.stream_ops.llseek,read:qA.stream_ops.read,write:qA.stream_ops.write,allocate:qA.stream_ops.allocate,mmap:qA.stream_ops.mmap,msync:qA.stream_ops.msync}},link:{node:{getattr:qA.node_ops.getattr,setattr:qA.node_ops.setattr,readlink:qA.node_ops.readlink},stream:{}},chrdev:{node:{getattr:qA.node_ops.getattr,setattr:qA.node_ops.setattr},stream:J.chrdev_stream_ops}};var _=J.createNode(y,M,R,Z);return J.isDir(_.mode)?(_.node_ops=qA.ops_table.dir.node,_.stream_ops=qA.ops_table.dir.stream,_.contents={}):J.isFile(_.mode)?(_.node_ops=qA.ops_table.file.node,_.stream_ops=qA.ops_table.file.stream,_.usedBytes=0,_.contents=null):J.isLink(_.mode)?(_.node_ops=qA.ops_table.link.node,_.stream_ops=qA.ops_table.link.stream):J.isChrdev(_.mode)&&(_.node_ops=qA.ops_table.chrdev.node,_.stream_ops=qA.ops_table.chrdev.stream),_.timestamp=Date.now(),y&&(y.contents[M]=_,y.timestamp=_.timestamp),_},getFileDataAsTypedArray(y){return y.contents?y.contents.subarray?y.contents.subarray(0,y.usedBytes):new Uint8Array(y.contents):new Uint8Array(0)},expandFileStorage(y,M){var R=y.contents?y.contents.length:0;if(!(R>=M)){var Z=1024*1024;M=Math.max(M,R*(R>>0),R!=0&&(M=Math.max(M,256));var _=y.contents;y.contents=new Uint8Array(M),y.usedBytes>0&&y.contents.set(_.subarray(0,y.usedBytes),0)}},resizeFileStorage(y,M){if(y.usedBytes!=M)if(M==0)y.contents=null,y.usedBytes=0;else{var R=y.contents;y.contents=new Uint8Array(M),R&&y.contents.set(R.subarray(0,Math.min(M,y.usedBytes))),y.usedBytes=M}},node_ops:{getattr(y){var M={};return M.dev=J.isChrdev(y.mode)?y.id:1,M.ino=y.id,M.mode=y.mode,M.nlink=1,M.uid=0,M.gid=0,M.rdev=y.rdev,J.isDir(y.mode)?M.size=4096:J.isFile(y.mode)?M.size=y.usedBytes:J.isLink(y.mode)?M.size=y.link.length:M.size=0,M.atime=new Date(y.timestamp),M.mtime=new Date(y.timestamp),M.ctime=new Date(y.timestamp),M.blksize=4096,M.blocks=Math.ceil(M.size/M.blksize),M},setattr(y,M){M.mode!==void 0&&(y.mode=M.mode),M.timestamp!==void 0&&(y.timestamp=M.timestamp),M.size!==void 0&&qA.resizeFileStorage(y,M.size)},lookup(y,M){throw J.genericErrors[44]},mknod(y,M,R,Z){return qA.createNode(y,M,R,Z)},rename(y,M,R){if(J.isDir(y.mode)){var Z;try{Z=J.lookupNode(M,R)}catch(q){}if(Z)for(var _ in Z.contents)throw new J.ErrnoError(55)}delete y.parent.contents[y.name],y.parent.timestamp=Date.now(),y.name=R,M.contents[R]=y,M.timestamp=y.parent.timestamp},unlink(y,M){delete y.contents[M],y.timestamp=Date.now()},rmdir(y,M){var R=J.lookupNode(y,M);for(var Z in R.contents)throw new J.ErrnoError(55);delete y.contents[M],y.timestamp=Date.now()},readdir(y){var M=[".",".."];for(var R of Object.keys(y.contents))M.push(R);return M},symlink(y,M,R){var Z=qA.createNode(y,M,41471,0);return Z.link=R,Z},readlink(y){if(!J.isLink(y.mode))throw new J.ErrnoError(28);return y.link}},stream_ops:{read(y,M,R,Z,_){var q=y.node.contents;if(_>=y.node.usedBytes)return 0;var te=Math.min(y.node.usedBytes-_,Z);if(te>8&&q.subarray)M.set(q.subarray(_,_+te),R);else for(var re=0;re0||R+M{var _=Z?"":`al ${y}`;C(y).then(q=>{M(new Uint8Array(q)),_&&be()},q=>{if(R)R();else throw`Loading data file "${y}" failed.`}),_&&Pe()},Ui=(y,M,R,Z,_,q)=>{J.createDataFile(y,M,R,Z,_,q)},Vi=[],Cn=(y,M,R,Z)=>{typeof Browser<"u"&&Browser.init();var _=!1;return Vi.forEach(q=>{_||q.canHandle(M)&&(q.handle(y,M,R,Z),_=!0)}),_},Gt=(y,M,R,Z,_,q,te,re,ve,lA)=>{var CA=M?vA.resolve(oe.join2(y,M)):y;function wA($A){function zA(jA){lA?.(),re||Ui(y,M,jA,Z,_,ve),q?.(),be()}Cn($A,CA,zA,()=>{te?.(),be()})||zA($A)}Pe(),typeof R=="string"?En(R,wA,te):wA(R)},Qn=y=>{var M={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},R=M[y];if(typeof R>"u")throw new Error(`Unknown file open mode: ${y}`);return R},Zt=(y,M)=>{var R=0;return y&&(R|=365),M&&(R|=146),R},J={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{constructor(y){this.name="ErrnoError",this.errno=y}},genericErrors:{},filesystems:null,syncFSRequests:0,FSStream:class{constructor(){this.shared={}}get object(){return this.node}set object(y){this.node=y}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(y){this.shared.flags=y}get position(){return this.shared.position}set position(y){this.shared.position=y}},FSNode:class{constructor(y,M,R,Z){y||(y=this),this.parent=y,this.mount=y.mount,this.mounted=null,this.id=J.nextInode++,this.name=M,this.mode=R,this.node_ops={},this.stream_ops={},this.rdev=Z,this.readMode=365,this.writeMode=146}get read(){return(this.mode&this.readMode)===this.readMode}set read(y){y?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(y){y?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return J.isDir(this.mode)}get isDevice(){return J.isChrdev(this.mode)}},lookupPath(y,M={}){if(y=vA.resolve(y),!y)return{path:"",node:null};var R={follow_mount:!0,recurse_count:0};if(M=Object.assign(R,M),M.recurse_count>8)throw new J.ErrnoError(32);for(var Z=y.split("/").filter(wA=>!!wA),_=J.root,q="/",te=0;te40)throw new J.ErrnoError(32)}}return{path:q,node:_}},getPath(y){for(var M;;){if(J.isRoot(y)){var R=y.mount.mountpoint;return M?R[R.length-1]!=="/"?`${R}/${M}`:R+M:R}M=M?`${y.name}/${M}`:y.name,y=y.parent}},hashName(y,M){for(var R=0,Z=0;Z>>0)%J.nameTable.length},hashAddNode(y){var M=J.hashName(y.parent.id,y.name);y.name_next=J.nameTable[M],J.nameTable[M]=y},hashRemoveNode(y){var M=J.hashName(y.parent.id,y.name);if(J.nameTable[M]===y)J.nameTable[M]=y.name_next;else for(var R=J.nameTable[M];R;){if(R.name_next===y){R.name_next=y.name_next;break}R=R.name_next}},lookupNode(y,M){var R=J.mayLookup(y);if(R)throw new J.ErrnoError(R);for(var Z=J.hashName(y.id,M),_=J.nameTable[Z];_;_=_.name_next){var q=_.name;if(_.parent.id===y.id&&q===M)return _}return J.lookup(y,M)},createNode(y,M,R,Z){var _=new J.FSNode(y,M,R,Z);return J.hashAddNode(_),_},destroyNode(y){J.hashRemoveNode(y)},isRoot(y){return y===y.parent},isMountpoint(y){return!!y.mounted},isFile(y){return(y&61440)===32768},isDir(y){return(y&61440)===16384},isLink(y){return(y&61440)===40960},isChrdev(y){return(y&61440)===8192},isBlkdev(y){return(y&61440)===24576},isFIFO(y){return(y&61440)===4096},isSocket(y){return(y&49152)===49152},flagsToPermissionString(y){var M=["r","w","rw"][y&3];return y&512&&(M+="w"),M},nodePermissions(y,M){return J.ignorePermissions?0:M.includes("r")&&!(y.mode&292)||M.includes("w")&&!(y.mode&146)||M.includes("x")&&!(y.mode&73)?2:0},mayLookup(y){if(!J.isDir(y.mode))return 54;var M=J.nodePermissions(y,"x");return M||(y.node_ops.lookup?0:2)},mayCreate(y,M){try{var R=J.lookupNode(y,M);return 20}catch(Z){}return J.nodePermissions(y,"wx")},mayDelete(y,M,R){var Z;try{Z=J.lookupNode(y,M)}catch(q){return q.errno}var _=J.nodePermissions(y,"wx");if(_)return _;if(R){if(!J.isDir(Z.mode))return 54;if(J.isRoot(Z)||J.getPath(Z)===J.cwd())return 10}else if(J.isDir(Z.mode))return 31;return 0},mayOpen(y,M){return y?J.isLink(y.mode)?32:J.isDir(y.mode)&&(J.flagsToPermissionString(M)!=="r"||M&512)?31:J.nodePermissions(y,J.flagsToPermissionString(M)):44},MAX_OPEN_FDS:4096,nextfd(){for(var y=0;y<=J.MAX_OPEN_FDS;y++)if(!J.streams[y])return y;throw new J.ErrnoError(33)},getStreamChecked(y){var M=J.getStream(y);if(!M)throw new J.ErrnoError(8);return M},getStream:y=>J.streams[y],createStream(y,M=-1){return y=Object.assign(new J.FSStream,y),M==-1&&(M=J.nextfd()),y.fd=M,J.streams[M]=y,y},closeStream(y){J.streams[y]=null},dupStream(y,M=-1){var R=J.createStream(y,M);return R.stream_ops?.dup?.(R),R},chrdev_stream_ops:{open(y){var M=J.getDevice(y.node.rdev);y.stream_ops=M.stream_ops,y.stream_ops.open?.(y)},llseek(){throw new J.ErrnoError(70)}},major:y=>y>>8,minor:y=>y&255,makedev:(y,M)=>y<<8|M,registerDevice(y,M){J.devices[y]={stream_ops:M}},getDevice:y=>J.devices[y],getMounts(y){for(var M=[],R=[y];R.length;){var Z=R.pop();M.push(Z),R.push(...Z.mounts)}return M},syncfs(y,M){typeof y=="function"&&(M=y,y=!1),J.syncFSRequests++,J.syncFSRequests>1&&E(`warning: ${J.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var R=J.getMounts(J.root.mount),Z=0;function _(te){return J.syncFSRequests--,M(te)}function q(te){if(te)return q.errored?void 0:(q.errored=!0,_(te));++Z>=R.length&&_(null)}R.forEach(te=>{if(!te.type.syncfs)return q(null);te.type.syncfs(te,y,q)})},mount(y,M,R){var Z=R==="/",_=!R,q;if(Z&&J.root)throw new J.ErrnoError(10);if(!Z&&!_){var te=J.lookupPath(R,{follow_mount:!1});if(R=te.path,q=te.node,J.isMountpoint(q))throw new J.ErrnoError(10);if(!J.isDir(q.mode))throw new J.ErrnoError(54)}var re={type:y,opts:M,mountpoint:R,mounts:[]},ve=y.mount(re);return ve.mount=re,re.root=ve,Z?J.root=ve:q&&(q.mounted=re,q.mount&&q.mount.mounts.push(re)),ve},unmount(y){var M=J.lookupPath(y,{follow_mount:!1});if(!J.isMountpoint(M.node))throw new J.ErrnoError(28);var R=M.node,Z=R.mounted,_=J.getMounts(Z);Object.keys(J.nameTable).forEach(te=>{for(var re=J.nameTable[te];re;){var ve=re.name_next;_.includes(re.mount)&&J.destroyNode(re),re=ve}}),R.mounted=null;var q=R.mount.mounts.indexOf(Z);R.mount.mounts.splice(q,1)},lookup(y,M){return y.node_ops.lookup(y,M)},mknod(y,M,R){var Z=J.lookupPath(y,{parent:!0}),_=Z.node,q=oe.basename(y);if(!q||q==="."||q==="..")throw new J.ErrnoError(28);var te=J.mayCreate(_,q);if(te)throw new J.ErrnoError(te);if(!_.node_ops.mknod)throw new J.ErrnoError(63);return _.node_ops.mknod(_,q,M,R)},create(y,M){return M=M!==void 0?M:438,M&=4095,M|=32768,J.mknod(y,M,0)},mkdir(y,M){return M=M!==void 0?M:511,M&=1023,M|=16384,J.mknod(y,M,0)},mkdirTree(y,M){for(var R=y.split("/"),Z="",_=0;_"u"&&(R=M,M=438),M|=8192,J.mknod(y,M,R)},symlink(y,M){if(!vA.resolve(y))throw new J.ErrnoError(44);var R=J.lookupPath(M,{parent:!0}),Z=R.node;if(!Z)throw new J.ErrnoError(44);var _=oe.basename(M),q=J.mayCreate(Z,_);if(q)throw new J.ErrnoError(q);if(!Z.node_ops.symlink)throw new J.ErrnoError(63);return Z.node_ops.symlink(Z,_,y)},rename(y,M){var R=oe.dirname(y),Z=oe.dirname(M),_=oe.basename(y),q=oe.basename(M),te,re,ve;if(te=J.lookupPath(y,{parent:!0}),re=te.node,te=J.lookupPath(M,{parent:!0}),ve=te.node,!re||!ve)throw new J.ErrnoError(44);if(re.mount!==ve.mount)throw new J.ErrnoError(75);var lA=J.lookupNode(re,_),CA=vA.relative(y,Z);if(CA.charAt(0)!==".")throw new J.ErrnoError(28);if(CA=vA.relative(M,R),CA.charAt(0)!==".")throw new J.ErrnoError(55);var wA;try{wA=J.lookupNode(ve,q)}catch(jA){}if(lA!==wA){var $A=J.isDir(lA.mode),zA=J.mayDelete(re,_,$A);if(zA)throw new J.ErrnoError(zA);if(zA=wA?J.mayDelete(ve,q,$A):J.mayCreate(ve,q),zA)throw new J.ErrnoError(zA);if(!re.node_ops.rename)throw new J.ErrnoError(63);if(J.isMountpoint(lA)||wA&&J.isMountpoint(wA))throw new J.ErrnoError(10);if(ve!==re&&(zA=J.nodePermissions(re,"w"),zA))throw new J.ErrnoError(zA);J.hashRemoveNode(lA);try{re.node_ops.rename(lA,ve,q),lA.parent=ve}catch(jA){throw jA}finally{J.hashAddNode(lA)}}},rmdir(y){var M=J.lookupPath(y,{parent:!0}),R=M.node,Z=oe.basename(y),_=J.lookupNode(R,Z),q=J.mayDelete(R,Z,!0);if(q)throw new J.ErrnoError(q);if(!R.node_ops.rmdir)throw new J.ErrnoError(63);if(J.isMountpoint(_))throw new J.ErrnoError(10);R.node_ops.rmdir(R,Z),J.destroyNode(_)},readdir(y){var M=J.lookupPath(y,{follow:!0}),R=M.node;if(!R.node_ops.readdir)throw new J.ErrnoError(54);return R.node_ops.readdir(R)},unlink(y){var M=J.lookupPath(y,{parent:!0}),R=M.node;if(!R)throw new J.ErrnoError(44);var Z=oe.basename(y),_=J.lookupNode(R,Z),q=J.mayDelete(R,Z,!1);if(q)throw new J.ErrnoError(q);if(!R.node_ops.unlink)throw new J.ErrnoError(63);if(J.isMountpoint(_))throw new J.ErrnoError(10);R.node_ops.unlink(R,Z),J.destroyNode(_)},readlink(y){var M=J.lookupPath(y),R=M.node;if(!R)throw new J.ErrnoError(44);if(!R.node_ops.readlink)throw new J.ErrnoError(28);return vA.resolve(J.getPath(R.parent),R.node_ops.readlink(R))},stat(y,M){var R=J.lookupPath(y,{follow:!M}),Z=R.node;if(!Z)throw new J.ErrnoError(44);if(!Z.node_ops.getattr)throw new J.ErrnoError(63);return Z.node_ops.getattr(Z)},lstat(y){return J.stat(y,!0)},chmod(y,M,R){var Z;if(typeof y=="string"){var _=J.lookupPath(y,{follow:!R});Z=_.node}else Z=y;if(!Z.node_ops.setattr)throw new J.ErrnoError(63);Z.node_ops.setattr(Z,{mode:M&4095|Z.mode&-4096,timestamp:Date.now()})},lchmod(y,M){J.chmod(y,M,!0)},fchmod(y,M){var R=J.getStreamChecked(y);J.chmod(R.node,M)},chown(y,M,R,Z){var _;if(typeof y=="string"){var q=J.lookupPath(y,{follow:!Z});_=q.node}else _=y;if(!_.node_ops.setattr)throw new J.ErrnoError(63);_.node_ops.setattr(_,{timestamp:Date.now()})},lchown(y,M,R){J.chown(y,M,R,!0)},fchown(y,M,R){var Z=J.getStreamChecked(y);J.chown(Z.node,M,R)},truncate(y,M){if(M<0)throw new J.ErrnoError(28);var R;if(typeof y=="string"){var Z=J.lookupPath(y,{follow:!0});R=Z.node}else R=y;if(!R.node_ops.setattr)throw new J.ErrnoError(63);if(J.isDir(R.mode))throw new J.ErrnoError(31);if(!J.isFile(R.mode))throw new J.ErrnoError(28);var _=J.nodePermissions(R,"w");if(_)throw new J.ErrnoError(_);R.node_ops.setattr(R,{size:M,timestamp:Date.now()})},ftruncate(y,M){var R=J.getStreamChecked(y);if((R.flags&2097155)===0)throw new J.ErrnoError(28);J.truncate(R.node,M)},utime(y,M,R){var Z=J.lookupPath(y,{follow:!0}),_=Z.node;_.node_ops.setattr(_,{timestamp:Math.max(M,R)})},open(y,M,R){if(y==="")throw new J.ErrnoError(44);M=typeof M=="string"?Qn(M):M,M&64?(R=typeof R>"u"?438:R,R=R&4095|32768):R=0;var Z;if(typeof y=="object")Z=y;else{y=oe.normalize(y);try{var _=J.lookupPath(y,{follow:!(M&131072)});Z=_.node}catch(ve){}}var q=!1;if(M&64)if(Z){if(M&128)throw new J.ErrnoError(20)}else Z=J.mknod(y,R,0),q=!0;if(!Z)throw new J.ErrnoError(44);if(J.isChrdev(Z.mode)&&(M&=-513),M&65536&&!J.isDir(Z.mode))throw new J.ErrnoError(54);if(!q){var te=J.mayOpen(Z,M);if(te)throw new J.ErrnoError(te)}M&512&&!q&&J.truncate(Z,0),M&=-131713;var re=J.createStream({node:Z,path:J.getPath(Z),flags:M,seekable:!0,position:0,stream_ops:Z.stream_ops,ungotten:[],error:!1});return re.stream_ops.open&&re.stream_ops.open(re),re},close(y){if(J.isClosed(y))throw new J.ErrnoError(8);y.getdents&&(y.getdents=null);try{y.stream_ops.close&&y.stream_ops.close(y)}catch(M){throw M}finally{J.closeStream(y.fd)}y.fd=null},isClosed(y){return y.fd===null},llseek(y,M,R){if(J.isClosed(y))throw new J.ErrnoError(8);if(!y.seekable||!y.stream_ops.llseek)throw new J.ErrnoError(70);if(R!=0&&R!=1&&R!=2)throw new J.ErrnoError(28);return y.position=y.stream_ops.llseek(y,M,R),y.ungotten=[],y.position},read(y,M,R,Z,_){if(Z<0||_<0)throw new J.ErrnoError(28);if(J.isClosed(y))throw new J.ErrnoError(8);if((y.flags&2097155)===1)throw new J.ErrnoError(8);if(J.isDir(y.node.mode))throw new J.ErrnoError(31);if(!y.stream_ops.read)throw new J.ErrnoError(28);var q=typeof _<"u";if(!q)_=y.position;else if(!y.seekable)throw new J.ErrnoError(70);var te=y.stream_ops.read(y,M,R,Z,_);return q||(y.position+=te),te},write(y,M,R,Z,_,q){if(Z<0||_<0)throw new J.ErrnoError(28);if(J.isClosed(y))throw new J.ErrnoError(8);if((y.flags&2097155)===0)throw new J.ErrnoError(8);if(J.isDir(y.node.mode))throw new J.ErrnoError(31);if(!y.stream_ops.write)throw new J.ErrnoError(28);y.seekable&&y.flags&1024&&J.llseek(y,0,2);var te=typeof _<"u";if(!te)_=y.position;else if(!y.seekable)throw new J.ErrnoError(70);var re=y.stream_ops.write(y,M,R,Z,_,q);return te||(y.position+=re),re},allocate(y,M,R){if(J.isClosed(y))throw new J.ErrnoError(8);if(M<0||R<=0)throw new J.ErrnoError(28);if((y.flags&2097155)===0)throw new J.ErrnoError(8);if(!J.isFile(y.node.mode)&&!J.isDir(y.node.mode))throw new J.ErrnoError(43);if(!y.stream_ops.allocate)throw new J.ErrnoError(138);y.stream_ops.allocate(y,M,R)},mmap(y,M,R,Z,_){if((Z&2)!==0&&(_&2)===0&&(y.flags&2097155)!==2)throw new J.ErrnoError(2);if((y.flags&2097155)===1)throw new J.ErrnoError(2);if(!y.stream_ops.mmap)throw new J.ErrnoError(43);if(!M)throw new J.ErrnoError(28);return y.stream_ops.mmap(y,M,R,Z,_)},msync(y,M,R,Z,_){return y.stream_ops.msync?y.stream_ops.msync(y,M,R,Z,_):0},ioctl(y,M,R){if(!y.stream_ops.ioctl)throw new J.ErrnoError(59);return y.stream_ops.ioctl(y,M,R)},readFile(y,M={}){if(M.flags=M.flags||0,M.encoding=M.encoding||"binary",M.encoding!=="utf8"&&M.encoding!=="binary")throw new Error(`Invalid encoding type "${M.encoding}"`);var R,Z=J.open(y,M.flags),_=J.stat(y),q=_.size,te=new Uint8Array(q);return J.read(Z,te,0,q,0),M.encoding==="utf8"?R=kt(te):M.encoding==="binary"&&(R=te),J.close(Z),R},writeFile(y,M,R={}){R.flags=R.flags||577;var Z=J.open(y,R.flags,R.mode);if(typeof M=="string"){var _=new Uint8Array(Je(M)+1),q=bt(M,_,0,_.length);J.write(Z,_,0,q,void 0,R.canOwn)}else if(ArrayBuffer.isView(M))J.write(Z,M,0,M.byteLength,void 0,R.canOwn);else throw new Error("Unsupported data type");J.close(Z)},cwd:()=>J.currentPath,chdir(y){var M=J.lookupPath(y,{follow:!0});if(M.node===null)throw new J.ErrnoError(44);if(!J.isDir(M.node.mode))throw new J.ErrnoError(54);var R=J.nodePermissions(M.node,"x");if(R)throw new J.ErrnoError(R);J.currentPath=M.path},createDefaultDirectories(){J.mkdir("/tmp"),J.mkdir("/home"),J.mkdir("/home/web_user")},createDefaultDevices(){J.mkdir("/dev"),J.registerDevice(J.makedev(1,3),{read:()=>0,write:(Z,_,q,te,re)=>te}),J.mkdev("/dev/null",J.makedev(1,3)),ZA.register(J.makedev(5,0),ZA.default_tty_ops),ZA.register(J.makedev(6,0),ZA.default_tty1_ops),J.mkdev("/dev/tty",J.makedev(5,0)),J.mkdev("/dev/tty1",J.makedev(6,0));var y=new Uint8Array(1024),M=0,R=()=>(M===0&&(M=QA(y).byteLength),y[--M]);J.createDevice("/dev","random",R),J.createDevice("/dev","urandom",R),J.mkdir("/dev/shm"),J.mkdir("/dev/shm/tmp")},createSpecialDirectories(){J.mkdir("/proc");var y=J.mkdir("/proc/self");J.mkdir("/proc/self/fd"),J.mount({mount(){var M=J.createNode(y,"fd",16895,73);return M.node_ops={lookup(R,Z){var _=+Z,q=J.getStreamChecked(_),te={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>q.path}};return te.parent=te,te}},M}},{},"/proc/self/fd")},createStandardStreams(y,M,R){y?J.createDevice("/dev","stdin",y):J.symlink("/dev/tty","/dev/stdin"),M?J.createDevice("/dev","stdout",null,M):J.symlink("/dev/tty","/dev/stdout"),R?J.createDevice("/dev","stderr",null,R):J.symlink("/dev/tty1","/dev/stderr"),J.open("/dev/stdin",0),J.open("/dev/stdout",1),J.open("/dev/stderr",1)},staticInit(){[44].forEach(y=>{J.genericErrors[y]=new J.ErrnoError(y),J.genericErrors[y].stack=""}),J.nameTable=new Array(4096),J.mount(qA,{},"/"),J.createDefaultDirectories(),J.createDefaultDevices(),J.createSpecialDirectories(),J.filesystems={MEMFS:qA}},init(y,M,R){J.initialized=!0,J.createStandardStreams(y,M,R)},quit(){J.initialized=!1;for(var y=0;ythis.length-1||zA<0)){var jA=zA%this.chunkSize,Qi=zA/this.chunkSize|0;return this.getter(Qi)[jA]}}setDataGetter(zA){this.getter=zA}cacheLength(){var zA=new XMLHttpRequest;if(zA.open("HEAD",R,!1),zA.send(null),!(zA.status>=200&&zA.status<300||zA.status===304))throw new Error("Couldn't load "+R+". Status: "+zA.status);var jA=Number(zA.getResponseHeader("Content-length")),Qi,oo=(Qi=zA.getResponseHeader("Accept-Ranges"))&&Qi==="bytes",ee=(Qi=zA.getResponseHeader("Content-Encoding"))&&Qi==="gzip",me=1024*1024;oo||(me=jA);var eA=(_A,GA)=>{if(_A>GA)throw new Error("invalid range ("+_A+", "+GA+") or no bytes requested!");if(GA>jA-1)throw new Error("only "+jA+" bytes available! programmer error!");var ht=new XMLHttpRequest;if(ht.open("GET",R,!1),jA!==me&&ht.setRequestHeader("Range","bytes="+_A+"-"+GA),ht.responseType="arraybuffer",ht.overrideMimeType&&ht.overrideMimeType("text/plain; charset=x-user-defined"),ht.send(null),!(ht.status>=200&&ht.status<300||ht.status===304))throw new Error("Couldn't load "+R+". Status: "+ht.status);return ht.response!==void 0?new Uint8Array(ht.response||[]):Ct(ht.responseText||"",!0)},VA=this;VA.setDataGetter(_A=>{var GA=_A*me,ht=(_A+1)*me-1;if(ht=Math.min(ht,jA-1),typeof VA.chunks[_A]>"u"&&(VA.chunks[_A]=eA(GA,ht)),typeof VA.chunks[_A]>"u")throw new Error("doXHR failed!");return VA.chunks[_A]}),(ee||!jA)&&(me=jA=1,jA=this.getter(0).length,me=jA,B("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=jA,this._chunkSize=me,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if(typeof XMLHttpRequest<"u"){throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var te,re}else var re={isDevice:!1,url:R};var ve=J.createFile(y,M,re,Z,_);re.contents?ve.contents=re.contents:re.url&&(ve.contents=null,ve.url=re.url),Object.defineProperties(ve,{usedBytes:{get:function(){return this.contents.length}}});var lA={},CA=Object.keys(ve.stream_ops);CA.forEach($A=>{var zA=ve.stream_ops[$A];lA[$A]=(...jA)=>(J.forceLoadFile(ve),zA(...jA))});function wA($A,zA,jA,Qi,oo){var ee=$A.node.contents;if(oo>=ee.length)return 0;var me=Math.min(ee.length-oo,Qi);if(ee.slice)for(var eA=0;eA(J.forceLoadFile(ve),wA($A,zA,jA,Qi,oo)),lA.mmap=($A,zA,jA,Qi,oo)=>{J.forceLoadFile(ve);var ee=kn(zA);if(!ee)throw new J.ErrnoError(48);return wA($A,k,ee,zA,jA),{ptr:ee,allocated:!0}},ve.stream_ops=lA,ve}},wt={DEFAULT_POLLMASK:5,calculateAt(y,M,R){if(oe.isAbs(M))return M;var Z;if(y===-100)Z=J.cwd();else{var _=wt.getStreamFromFD(y);Z=_.path}if(M.length==0){if(!R)throw new J.ErrnoError(44);return Z}return oe.join2(Z,M)},doStat(y,M,R){var Z=y(M);F[R>>2]=Z.dev,F[R+4>>2]=Z.mode,P[R+8>>2]=Z.nlink,F[R+12>>2]=Z.uid,F[R+16>>2]=Z.gid,F[R+20>>2]=Z.rdev,X[R+24>>3]=BigInt(Z.size),F[R+32>>2]=4096,F[R+36>>2]=Z.blocks;var _=Z.atime.getTime(),q=Z.mtime.getTime(),te=Z.ctime.getTime();return X[R+40>>3]=BigInt(Math.floor(_/1e3)),P[R+48>>2]=_%1e3*1e3*1e3,X[R+56>>3]=BigInt(Math.floor(q/1e3)),P[R+64>>2]=q%1e3*1e3*1e3,X[R+72>>3]=BigInt(Math.floor(te/1e3)),P[R+80>>2]=te%1e3*1e3*1e3,X[R+88>>3]=BigInt(Z.ino),0},doMsync(y,M,R,Z,_){if(!J.isFile(M.node.mode))throw new J.ErrnoError(43);if(Z&2)return 0;var q=b.slice(y,y+R);J.msync(M,q,_,R,Z)},getStreamFromFD(y){var M=J.getStreamChecked(y);return M},varargs:void 0,getStr(y){var M=JA(y);return M}};function Si(y,M,R,Z){try{if(M=wt.getStr(M),M=wt.calculateAt(y,M),R&-8)return-28;var _=J.lookupPath(M,{follow:!0}),q=_.node;if(!q)return-44;var te="";return R&4&&(te+="r"),R&2&&(te+="w"),R&1&&(te+="x"),te&&J.nodePermissions(q,te)?-2:0}catch(re){if(typeof J>"u"||re.name!=="ErrnoError")throw re;return-re.errno}}function _n(){var y=F[+wt.varargs>>2];return wt.varargs+=4,y}var xn=_n;function Io(y,M,R){wt.varargs=R;try{var Z=wt.getStreamFromFD(y);switch(M){case 0:{var _=_n();if(_<0)return-28;for(;J.streams[_];)_++;var q;return q=J.dupStream(Z,_),q.fd}case 1:case 2:return 0;case 3:return Z.flags;case 4:{var _=_n();return Z.flags|=_,0}case 12:{var _=xn(),te=0;return x[_+te>>1]=2,0}case 13:case 14:return 0}return-28}catch(re){if(typeof J>"u"||re.name!=="ErrnoError")throw re;return-re.errno}}function ra(y,M){try{var R=wt.getStreamFromFD(y);return wt.doStat(J.stat,R.path,M)}catch(Z){if(typeof J>"u"||Z.name!=="ErrnoError")throw Z;return-Z.errno}}function ko(y,M,R){wt.varargs=R;try{var Z=wt.getStreamFromFD(y);switch(M){case 21509:return Z.tty?0:-59;case 21505:{if(!Z.tty)return-59;if(Z.tty.ops.ioctl_tcgets){var _=Z.tty.ops.ioctl_tcgets(Z),q=xn();F[q>>2]=_.c_iflag||0,F[q+4>>2]=_.c_oflag||0,F[q+8>>2]=_.c_cflag||0,F[q+12>>2]=_.c_lflag||0;for(var te=0;te<32;te++)k[q+te+17]=_.c_cc[te]||0;return 0}return 0}case 21510:case 21511:case 21512:return Z.tty?0:-59;case 21506:case 21507:case 21508:{if(!Z.tty)return-59;if(Z.tty.ops.ioctl_tcsets){for(var q=xn(),re=F[q>>2],ve=F[q+4>>2],lA=F[q+8>>2],CA=F[q+12>>2],wA=[],te=0;te<32;te++)wA.push(k[q+te+17]);return Z.tty.ops.ioctl_tcsets(Z.tty,M,{c_iflag:re,c_oflag:ve,c_cflag:lA,c_lflag:CA,c_cc:wA})}return 0}case 21519:{if(!Z.tty)return-59;var q=xn();return F[q>>2]=0,0}case 21520:return Z.tty?-28:-59;case 21531:{var q=xn();return J.ioctl(Z,M,q)}case 21523:{if(!Z.tty)return-59;if(Z.tty.ops.ioctl_tiocgwinsz){var $A=Z.tty.ops.ioctl_tiocgwinsz(Z.tty),q=xn();x[q>>1]=$A[0],x[q+2>>1]=$A[1]}return 0}case 21524:return Z.tty?0:-59;case 21515:return Z.tty?0:-59;default:return-28}}catch(zA){if(typeof J>"u"||zA.name!=="ErrnoError")throw zA;return-zA.errno}}function Zo(y,M,R,Z){try{M=wt.getStr(M);var _=Z&256,q=Z&4096;return Z=Z&-6401,M=wt.calculateAt(y,M,q),wt.doStat(_?J.lstat:J.stat,M,R)}catch(te){if(typeof J>"u"||te.name!=="ErrnoError")throw te;return-te.errno}}function Ba(y,M,R,Z){wt.varargs=Z;try{M=wt.getStr(M),M=wt.calculateAt(y,M);var _=Z?_n():0;return J.open(M,R,_).fd}catch(q){if(typeof J>"u"||q.name!=="ErrnoError")throw q;return-q.errno}}function To(y,M){try{return y=wt.getStr(y),wt.doStat(J.stat,y,M)}catch(R){if(typeof J>"u"||R.name!=="ErrnoError")throw R;return-R.errno}}var _a=()=>{qe("")},ha=y=>y%4===0&&(y%100!==0||y%400===0),va=[0,31,60,91,121,152,182,213,244,274,305,335],Oo=[0,31,59,90,120,151,181,212,243,273,304,334],BA=y=>{var M=ha(y.getFullYear()),R=M?va:Oo,Z=R[y.getMonth()]+y.getDate()-1;return Z},Ri=9007199254740992,vn=-9007199254740992,Rn=y=>yRi?NaN:Number(y);function sa(y,M){y=Rn(y);var R=new Date(y*1e3);F[M>>2]=R.getSeconds(),F[M+4>>2]=R.getMinutes(),F[M+8>>2]=R.getHours(),F[M+12>>2]=R.getDate(),F[M+16>>2]=R.getMonth(),F[M+20>>2]=R.getFullYear()-1900,F[M+24>>2]=R.getDay();var Z=BA(R)|0;F[M+28>>2]=Z,F[M+36>>2]=-(R.getTimezoneOffset()*60);var _=new Date(R.getFullYear(),0,1),q=new Date(R.getFullYear(),6,1).getTimezoneOffset(),te=_.getTimezoneOffset(),re=(q!=te&&R.getTimezoneOffset()==Math.min(te,q))|0;F[M+32>>2]=re}function Ka(y,M,R,Z,_,q,te){_=Rn(_);try{if(isNaN(_))return 61;var re=wt.getStreamFromFD(Z),ve=J.mmap(re,y,_,M,R),lA=ve.ptr;return F[q>>2]=ve.allocated,P[te>>2]=lA,0}catch(CA){if(typeof J>"u"||CA.name!=="ErrnoError")throw CA;return-CA.errno}}function zi(y,M,R,Z,_,q){q=Rn(q);try{var te=wt.getStreamFromFD(_);R&2&&wt.doMsync(y,te,M,Z,q)}catch(re){if(typeof J>"u"||re.name!=="ErrnoError")throw re;return-re.errno}}var _o=(y,M,R)=>bt(y,b,M,R),Cr=(y,M,R,Z)=>{var _=new Date().getFullYear(),q=new Date(_,0,1),te=new Date(_,6,1),re=q.getTimezoneOffset(),ve=te.getTimezoneOffset(),lA=Math.max(re,ve);P[y>>2]=lA*60,F[M>>2]=+(re!=ve);var CA=zA=>{var jA=zA>=0?"-":"+",Qi=Math.abs(zA),oo=String(Math.floor(Qi/60)).padStart(2,"0"),ee=String(Qi%60).padStart(2,"0");return`UTC${jA}${oo}${ee}`},wA=CA(re),$A=CA(ve);veDate.now(),$a=()=>2147483648,io=y=>{var M=D.buffer,R=(y-M.byteLength+65535)/65536|0;try{return D.grow(R),W(),1}catch(Z){}},Xi=y=>{var M=b.length;y>>>=0;var R=$a();if(y>R)return!1;for(var Z=1;Z<=4;Z*=2){var _=M*(1+.2/Z);_=Math.min(_,y+100663296);var q=Math.min(R,yn(Math.max(y,_),65536)),te=io(q);if(te)return!0}return!1},ni={},Zn=()=>s,xo=()=>{if(!xo.strings){var y=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",M={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:y,_:Zn()};for(var R in ni)ni[R]===void 0?delete M[R]:M[R]=ni[R];var Z=[];for(var R in M)Z.push(`${R}=${M[R]}`);xo.strings=Z}return xo.strings},Wo=(y,M)=>{for(var R=0;R{var R=0;return xo().forEach((Z,_)=>{var q=M+R;P[y+_*4>>2]=q,Wo(Z,q),R+=Z.length+1}),0},iA=(y,M)=>{var R=xo();P[y>>2]=R.length;var Z=0;return R.forEach(_=>Z+=_.length+1),P[M>>2]=Z,0},kA=y=>{l(y,new qt(y))},ue=(y,M)=>{kA(y)},Ge=ue;function IA(y){try{var M=wt.getStreamFromFD(y);return J.close(M),0}catch(R){if(typeof J>"u"||R.name!=="ErrnoError")throw R;return R.errno}}var HA=(y,M,R,Z)=>{for(var _=0,q=0;q>2],re=P[M+4>>2];M+=8;var ve=J.read(y,k,te,re,Z);if(ve<0)return-1;if(_+=ve,ve>2]=q,0}catch(te){if(typeof J>"u"||te.name!=="ErrnoError")throw te;return te.errno}}function Et(y,M,R,Z){M=Rn(M);try{if(isNaN(M))return 61;var _=wt.getStreamFromFD(y);return J.llseek(_,M,R),X[Z>>3]=BigInt(_.position),_.getdents&&M===0&&R===0&&(_.getdents=null),0}catch(q){if(typeof J>"u"||q.name!=="ErrnoError")throw q;return q.errno}}var Jt=(y,M,R,Z)=>{for(var _=0,q=0;q>2],re=P[M+4>>2];M+=8;var ve=J.write(y,k,te,re,Z);if(ve<0)return-1;if(_+=ve,ve>2]=q,0}catch(te){if(typeof J>"u"||te.name!=="ErrnoError")throw te;return te.errno}}var $i=y=>{var M=i["_"+y];return M},an=(y,M)=>{k.set(y,M)},li=y=>Bo(y),en=y=>{var M=Je(y)+1,R=li(M);return _o(y,R,M),R},Ua=(y,M,R,Z,_)=>{var q={string:jA=>{var Qi=0;return jA!=null&&jA!==0&&(Qi=en(jA)),Qi},array:jA=>{var Qi=li(jA.length);return an(jA,Qi),Qi}};function te(jA){return M==="string"?JA(jA):M==="boolean"?!!jA:jA}var re=$i(y),ve=[],lA=0;if(Z)for(var CA=0;CA(i._viz_set_y_invert=Qt.A)(y),i._viz_set_reduce=y=>(i._viz_set_reduce=Qt.B)(y),i._viz_get_graphviz_version=()=>(i._viz_get_graphviz_version=Qt.C)(),i._free=y=>(i._free=Qt.D)(y),i._malloc=y=>(i._malloc=Qt.E)(y),i._viz_get_plugin_list=y=>(i._viz_get_plugin_list=Qt.G)(y),i._viz_create_graph=(y,M,R)=>(i._viz_create_graph=Qt.H)(y,M,R),i._viz_read_one_graph=y=>(i._viz_read_one_graph=Qt.I)(y),i._viz_string_dup=(y,M)=>(i._viz_string_dup=Qt.J)(y,M),i._viz_string_dup_html=(y,M)=>(i._viz_string_dup_html=Qt.K)(y,M),i._viz_string_free=(y,M)=>(i._viz_string_free=Qt.L)(y,M),i._viz_string_free_html=(y,M)=>(i._viz_string_free_html=Qt.M)(y,M),i._viz_add_node=(y,M)=>(i._viz_add_node=Qt.N)(y,M),i._viz_add_edge=(y,M,R)=>(i._viz_add_edge=Qt.O)(y,M,R),i._viz_add_subgraph=(y,M)=>(i._viz_add_subgraph=Qt.P)(y,M),i._viz_set_default_graph_attribute=(y,M,R)=>(i._viz_set_default_graph_attribute=Qt.Q)(y,M,R),i._viz_set_default_node_attribute=(y,M,R)=>(i._viz_set_default_node_attribute=Qt.R)(y,M,R),i._viz_set_default_edge_attribute=(y,M,R)=>(i._viz_set_default_edge_attribute=Qt.S)(y,M,R),i._viz_set_attribute=(y,M,R)=>(i._viz_set_attribute=Qt.T)(y,M,R),i._viz_free_graph=y=>(i._viz_free_graph=Qt.U)(y),i._viz_create_context=()=>(i._viz_create_context=Qt.V)(),i._viz_free_context=y=>(i._viz_free_context=Qt.W)(y),i._viz_layout=(y,M,R)=>(i._viz_layout=Qt.X)(y,M,R),i._viz_free_layout=(y,M)=>(i._viz_free_layout=Qt.Y)(y,M),i._viz_reset_errors=()=>(i._viz_reset_errors=Qt.Z)(),i._viz_render=(y,M,R)=>(i._viz_render=Qt._)(y,M,R);var An=(y,M)=>(An=Qt.$)(y,M),dn=y=>(dn=Qt.aa)(y),Bo=y=>(Bo=Qt.ba)(y),Nn=()=>(Nn=Qt.ca)();i.ccall=Ua,i.getValue=yA,i.PATH=oe,i.UTF8ToString=JA,i.stringToUTF8=_o,i.lengthBytesUTF8=Je,i.FS=J;var zt,Da;Xe=function y(){zt||la(),zt||(Xe=y)};function la(){if(xe>0||!Da&&(Da=1,Ee(),xe>0))return;function y(){zt||(zt=1,i.calledRun=1,!S&&(Ne(),n(i),de()))}y()}return la(),e=a,e}})(),kce=[[/^Error: (.*)/,"error"],[/^Warning: (.*)/,"warning"]];function yze(t){return t.map(A=>{for(let e=0;e{if(typeof e.name!="string")throw new Error("image name must be a string");if(typeof e.width!="number"&&typeof e.width!="string")throw new Error("image width must be a number or string");if(typeof e.height!="number"&&typeof e.height!="string")throw new Error("image height must be a number or string");let i=t.PATH.join("/",e.name),n=` + +`;return t.FS.createPath("/",t.PATH.dirname(i)),t.FS.writeFile(i,n),i}):[]}function Mze(t,A){for(let e of A)t.FS.analyzePath(e).exists&&t.FS.unlink(e)}function Sze(t,A,e){let i;try{let n=t.lengthBytesUTF8(A);return i=t.ccall("malloc","number",["number"],[n+1]),t.stringToUTF8(A,i,n+1),t.ccall("viz_read_one_graph","number",["number"],[i])}finally{i&&t.ccall("free","number",["number"],[i])}}function kze(t,A,e){let i=t.ccall("viz_create_graph","number",["string","number","number"],[A.name,typeof A.directed<"u"?A.directed:!0,typeof A.strict<"u"?A.strict:!1]);return Nce(t,i,A),i}function Nce(t,A,e){Fce(t,A,e),e.nodes&&e.nodes.forEach(i=>{if(typeof i.name>"u")throw new Error("nodes must have a name");let n=t.ccall("viz_add_node","number",["number","string"],[A,String(i.name)]);i.attributes&&Rce(t,A,n,i.attributes)}),e.edges&&e.edges.forEach(i=>{if(typeof i.tail>"u")throw new Error("edges must have a tail");if(typeof i.head>"u")throw new Error("edges must have a head");let n=t.ccall("viz_add_edge","number",["number","string","string"],[A,String(i.tail),String(i.head)]);i.attributes&&Rce(t,A,n,i.attributes)}),e.subgraphs&&e.subgraphs.forEach(i=>{let n=t.ccall("viz_add_subgraph","number",["number","string"],[A,typeof i.name<"u"?String(i.name):0]);Nce(t,n,i)})}function Fce(t,A,e){if(e.graphAttributes)for(let[i,n]of Object.entries(e.graphAttributes))v7(t,A,n,o=>{t.ccall("viz_set_default_graph_attribute","number",["number","string","number"],[A,i,o])});if(e.nodeAttributes)for(let[i,n]of Object.entries(e.nodeAttributes))v7(t,A,n,o=>{t.ccall("viz_set_default_node_attribute","number",["number","string","number"],[A,i,o])});if(e.edgeAttributes)for(let[i,n]of Object.entries(e.edgeAttributes))v7(t,A,n,o=>{t.ccall("viz_set_default_edge_attribute","number",["number","string","number"],[A,i,o])})}function Rce(t,A,e,i){for(let[n,o]of Object.entries(i))v7(t,A,o,a=>{t.ccall("viz_set_attribute","number",["number","string","number"],[e,n,a])})}function v7(t,A,e,i){let n;if(typeof e=="object"&&"html"in e?n=t.ccall("viz_string_dup_html","number",["number","string"],[A,String(e.html)]):n=t.ccall("viz_string_dup","number",["number","string"],[A,String(e)]),n==0)throw new Error("couldn't dup string");i(n),typeof e=="object"&&"html"in e?t.ccall("viz_string_free_html","number",["number","number"],[A,n]):t.ccall("viz_string_free","number",["number","number"],[A,n])}var tJ=class{constructor(A){this.module=A}get graphvizVersion(){return Dze(this.module)}get formats(){return _ce(this.module,"device")}get engines(){return _ce(this.module,"layout")}renderFormats(A,e,i={}){return xce(this.module,A,e,Y({engine:"dot"},i))}render(A,e={}){let i;e.format===void 0?i="dot":i=e.format;let n=xce(this.module,A,[i],Y({engine:"dot"},e));return n.status==="success"&&(n.output=n.output[i]),n}renderString(A,e={}){let i=this.render(A,e);if(i.status!=="success")throw new Error(i.errors.find(n=>n.level=="error")?.message||"render failed");return i.output}renderSVGElement(A,e={}){let i=this.renderString(A,Ye(Y({},e),{format:"svg"})),n;return typeof e.trustedTypePolicy<"u"?n=e.trustedTypePolicy.createHTML(i):n=i,new DOMParser().parseFromString(n,"image/svg+xml").documentElement}renderJSON(A,e={}){let i=this.renderString(A,Ye(Y({},e),{format:"json"}));return JSON.parse(i)}};function Lce(){return wze().then(t=>new tJ(t))}var D7=class t{render(A){return nA(this,null,function*(){let e={format:"svg",engine:"dot"};return(yield Lce()).renderString(A,e)})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var b7=new Me("VideoService");var M7=class t{createMessagePartFromFile(A){return nA(this,null,function*(){return{inlineData:{displayName:A.name,data:yield this.readFileAsBytes(A),mimeType:A.type}}})}readFileAsBytes(A){return new Promise((e,i)=>{let n=new FileReader;n.onload=o=>{let a=o.target.result.split(",")[1];e(a)},n.onerror=i,n.readAsDataURL(A)})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var S7=class t extends i8{sanitizer=w(Bd);windowOpen(A,e,i,n){return A.open(e,i,n)}createObjectUrl(A){return URL.createObjectURL(A)}openBlobUrl(A){let e=this.createObjectUrl(A);return this.windowOpen(window,e,"_blank")}setAnchorHref(A,e){A.href=e}bypassSecurityTrustHtml(A){return this.sanitizer.bypassSecurityTrustHtml(A)}bypassSecurityTrustUrl(A){return this.sanitizer.bypassSecurityTrustUrl(A)}static \u0275fac=(()=>{let A;return function(i){return(A||(A=Gi(t)))(i||t)}})();static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var k7=class t{constructor(A){this.http=A}apiServerDomain=Ur.getApiServerBaseUrl();createSession(A,e,i){if(this.apiServerDomain!=null){let n=this.apiServerDomain+`/apps/${e}/users/${A}/sessions`,o={};return i?o.state=i:o.state={},this.http.post(n,i?o:null)}return new Li}updateSession(A,e,i,n){let o=this.apiServerDomain+`/apps/${e}/users/${A}/sessions/${i}`;return this.http.patch(o,n)}listSessions(A,e){if(this.apiServerDomain!=null){let i=this.apiServerDomain+`/apps/${e}/users/${A}/sessions`;return this.http.get(i).pipe(xA(n=>({items:n,nextPageToken:""})))}return sA({items:[],nextPageToken:""})}deleteSession(A,e,i){let n=this.apiServerDomain+`/apps/${e}/users/${A}/sessions/${i}`;return this.http.delete(n)}getSession(A,e,i){let n=this.apiServerDomain+`/apps/${e}/users/${A}/sessions/${i}`;return this.http.get(n)}importSession(A,e,i,n){if(this.apiServerDomain!=null){let o=this.apiServerDomain+`/apps/${e}/users/${A}/sessions`,a={events:i};return n&&(a.state=n),this.http.post(o,a)}return new Li}canEdit(A,e){return sA(!0)}static \u0275fac=function(e){return new(e||t)(Xo(Nr))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var _7=class t{audioRecordingService=w(ih);videoService=w(b7);webSocketService=w(oh);audioIntervalId=void 0;videoIntervalId=void 0;constructor(){}getWsUrl(A,e,i,n){let a=`${window.location.protocol==="https:"?"wss":"ws"}://${Ur.getWSServerUrl()}/run_live?app_name=${A}&user_id=${e}&session_id=${i}`;return n&&(n.proactiveAudio&&(a+="&proactive_audio=true"),n.enableAffectiveDialog&&(a+="&enable_affective_dialog=true"),n.enableSessionResumption&&(a+="&enable_session_resumption=true"),n.saveLiveBlob&&(a+="&save_live_blob=true")),a}startAudioChat(o){return nA(this,arguments,function*({appName:A,userId:e,sessionId:i,flags:n}){this.webSocketService.connect(this.getWsUrl(A,e,i,n)),yield this.startAudioStreaming()})}stopAudioChat(){this.stopAudioStreaming(),this.webSocketService.closeConnection()}startAudioStreaming(){return nA(this,null,function*(){try{yield this.audioRecordingService.startRecording(),this.audioIntervalId=window.setInterval(()=>this.sendBufferedAudio(),250)}catch(A){console.error("Error accessing microphone:",A)}})}stopAudioStreaming(){clearInterval(this.audioIntervalId),this.audioIntervalId=void 0,this.audioRecordingService.stopRecording()}sendBufferedAudio(){let A=this.audioRecordingService.getCombinedAudioBuffer();if(!A)return;let e={blob:{mime_type:"audio/pcm",data:A}};this.webSocketService.sendMessage(e),this.audioRecordingService.cleanAudioBuffer()}startVideoChat(a){return nA(this,arguments,function*({appName:A,userId:e,sessionId:i,videoContainer:n,flags:o}){this.webSocketService.connect(this.getWsUrl(A,e,i,o)),yield this.startAudioStreaming(),yield this.startVideoStreaming(n)})}stopVideoChat(A){this.stopAudioStreaming(),this.stopVideoStreaming(A),this.webSocketService.closeConnection()}startVideoStreaming(A){return nA(this,null,function*(){try{yield this.videoService.startRecording(A),this.videoIntervalId=window.setInterval(()=>nA(this,null,function*(){return yield this.sendCapturedFrame()}),1e3)}catch(e){console.error("Error accessing camera:",e)}})}sendCapturedFrame(){return nA(this,null,function*(){let A=yield this.videoService.getCapturedFrame();if(!A)return;let e={blob:{mime_type:"image/jpeg",data:A}};this.webSocketService.sendMessage(e)})}stopVideoStreaming(A){clearInterval(this.videoIntervalId),this.videoIntervalId=void 0,this.videoService.stopRecording(A)}onStreamClose(){return this.webSocketService.onCloseReason()}closeStream(){this.webSocketService.closeConnection()}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var x7=class t{stc(A,e){let i=this.hashCode(A),n=Math.abs(i%360),o=60+Math.abs((i>>8)%40),a;return e==="dark"?a=15+Math.abs((i>>16)%30):a=40+Math.abs((i>>16)%30),this.hslToHex(n,o,a)}hashCode(A){let e=0;for(let i=0,n=A.length;i{let r=(a+A/30)%12,s=i-n*Math.max(Math.min(r-3,9-r,1),-1);return Math.round(255*s).toString(16).padStart(2,"0")};return`#${o(0)}${o(8)}${o(4)}ff`}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var R7=class t{THEME_STORAGE_KEY="adk-theme-preference";currentTheme=fe(this.getInitialTheme());constructor(){Ln(()=>{this.applyTheme(this.currentTheme())})}getInitialTheme(){let A=window.localStorage.getItem(this.THEME_STORAGE_KEY);return A==="light"||A==="dark"?A:"dark"}applyTheme(A){let e=document.documentElement;e.classList.remove("light-theme","dark-theme"),e.classList.add(`${A}-theme`),e.style.colorScheme=A,window.localStorage.setItem(this.THEME_STORAGE_KEY,A),this.updatePrismTheme(A)}updatePrismTheme(A){let e="prism-theme-style",i=document.getElementById(e);i||(i=document.createElement("link"),i.id=e,i.rel="stylesheet",document.head.appendChild(i)),i.href=A==="light"?"prism-light.css":"prism-dark.css"}toggleTheme(){this.currentTheme.update(A=>A==="light"?"dark":"light")}setTheme(A){this.currentTheme.set(A)}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var N7=class t{selectedTraceRowSource=new di(void 0);selectedTraceRow$=this.selectedTraceRowSource.asObservable();eventDataSource=new di(void 0);eventData$=this.eventDataSource.asObservable();messagesSource=new di([]);messages$=this.messagesSource.asObservable();selectedRow(A){this.selectedTraceRowSource.next(A)}setEventData(A){this.eventDataSource.next(A)}setMessages(A){this.messagesSource.next(A)}resetTraceService(){this.selectedTraceRowSource.next(void 0),this.eventDataSource.next(void 0),this.messagesSource.next([])}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var F7=class t{_isSessionLoading=new di(!1);_isSessionListLoading=new di(!1);_isEventRequestResponseLoading=new di(!1);_isMessagesLoading=new di(!1);_newMessagesLoadedResponse=new rA;_newMessagesLoadingFailedResponse=new rA;featureFlagService=w(Tr);isSessionLoading(){return this._isSessionLoading.pipe(iQ(this.featureFlagService.isLoadingAnimationsEnabled()),xA(([A,e])=>A&&e),Xs({bufferSize:1,refCount:!0}))}setIsSessionLoading(A){this._isSessionLoading.next(A)}isSessionListLoading(){return this._isSessionListLoading.pipe(iQ(this.featureFlagService.isLoadingAnimationsEnabled()),xA(([A,e])=>A&&e),Xs({bufferSize:1,refCount:!0}))}setIsSessionListLoading(A){this._isSessionListLoading.next(A)}isEventRequestResponseLoading(){return this._isEventRequestResponseLoading.pipe(iQ(this.featureFlagService.isLoadingAnimationsEnabled()),xA(([A,e])=>A&&e),Xs({bufferSize:1,refCount:!0}))}setIsEventRequestResponseLoading(A){this._isEventRequestResponseLoading.next(A)}setIsMessagesLoading(A){this._isMessagesLoading.next(A)}isMessagesLoading(){return this._isMessagesLoading.pipe(iQ(this.featureFlagService.isLoadingAnimationsEnabled()),xA(([A,e])=>A&&e),Xs({bufferSize:1,refCount:!0}))}lazyLoadMessages(A,e,i){throw new Error("Not implemented")}onNewMessagesLoaded(){return this._newMessagesLoadedResponse}onNewMessagesLoadingFailed(){return this._newMessagesLoadingFailedResponse}static \u0275fac=function(e){return new(e||t)};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var L7=class t{mediaRecorder;stream;renderer;videoElement;videoBuffer=[];constructor(A){this.renderer=A.createRenderer(null,null)}createVideoElement(A){A?.nativeElement&&(this.clearVideoElement(A),this.videoElement=this.renderer.createElement("video"),this.renderer.setAttribute(this.videoElement,"width","400"),this.renderer.setAttribute(this.videoElement,"height","300"),this.renderer.setAttribute(this.videoElement,"autoplay","true"),this.renderer.setAttribute(this.videoElement,"muted","true"),this.renderer.appendChild(A.nativeElement,this.videoElement))}startRecording(A){return nA(this,null,function*(){this.createVideoElement(A);try{this.stream=yield navigator.mediaDevices.getUserMedia({video:!0}),this.videoElement&&(this.videoElement.srcObject=this.stream),this.mediaRecorder=new MediaRecorder(this.stream,{mimeType:"video/webm"}),this.mediaRecorder.start(1e3)}catch(e){console.error("Error accessing camera/microphone:",e)}})}getCapturedFrame(){return nA(this,null,function*(){try{let A=yield this.captureFrame();return this.blobToUint8Array(A)}catch(A){console.error("Error capturing frame:",A);return}})}blobToUint8Array(A){return nA(this,null,function*(){let e=yield A.arrayBuffer();return new Uint8Array(e)})}captureFrame(){return nA(this,null,function*(){return new Promise((A,e)=>{try{if(!this.videoElement){e(new Error("Video element not available"));return}let i=document.createElement("canvas");i.width=this.videoElement.videoWidth,i.height=this.videoElement.videoHeight;let n=i.getContext("2d");if(!n){e(new Error("Canvas context not supported"));return}n.drawImage(this.videoElement,0,0,i.width,i.height),i.toBlob(o=>{o?A(o):e(new Error("Failed to create image blob"))},"image/png")}catch(i){e(i)}})})}stopRecording(A){this.mediaRecorder&&this.mediaRecorder.stop(),this.stream&&this.stream.getTracks().forEach(e=>e.stop()),this.clearVideoElement(A)}clearVideoElement(A){let e=A.nativeElement.querySelector("video");e&&this.renderer.removeChild(A.nativeElement,e)}static \u0275fac=function(e){return new(e||t)(Xo(Wr))};static \u0275prov=Ze({token:t,factory:t.\u0275fac,providedIn:"root"})};var _ze={url:"",deserializer:t=>JSON.parse(t.data),serializer:t=>JSON.stringify(t)},xze="WebSocketSubject.error must be called with an object with an error code, and an optional reason: { code: number, reason: string }",Df=class t extends lJ{constructor(A,e){if(super(),this._socket=null,A instanceof Li)this.destination=e,this.source=A;else{let i=this._config=Object.assign({},_ze);if(this._output=new rA,typeof A=="string")i.url=A;else for(let n in A)A.hasOwnProperty(n)&&(i[n]=A[n]);if(!i.WebSocketCtor&&WebSocket)i.WebSocketCtor=WebSocket;else if(!i.WebSocketCtor)throw new Error("no WebSocket constructor can be found");this.destination=new Pc}}lift(A){let e=new t(this._config,this.destination);return e.operator=A,e.source=this,e}_resetState(){this._socket=null,this.source||(this.destination=new Pc),this._output=new rA}multiplex(A,e,i){let n=this;return new Li(o=>{try{n.next(A())}catch(r){o.error(r)}let a=n.subscribe({next:r=>{try{i(r)&&o.next(r)}catch(s){o.error(s)}},error:r=>o.error(r),complete:()=>o.complete()});return()=>{try{n.next(e())}catch(r){o.error(r)}a.unsubscribe()}})}_connectSocket(){let{WebSocketCtor:A,protocol:e,url:i,binaryType:n}=this._config,o=this._output,a=null;try{a=e?new A(i,e):new A(i),this._socket=a,n&&(this._socket.binaryType=n)}catch(s){o.error(s);return}let r=new zo(()=>{this._socket=null,a&&a.readyState===1&&a.close()});a.onopen=s=>{let{_socket:l}=this;if(!l){a.close(),this._resetState();return}let{openObserver:c}=this._config;c&&c.next(s);let C=this.destination;this.destination=aJ.create(d=>{if(a.readyState===1)try{let{serializer:B}=this._config;a.send(B(d))}catch(B){this.destination.error(B)}},d=>{let{closingObserver:B}=this._config;B&&B.next(void 0),d&&d.code?a.close(d.code,d.reason):o.error(new TypeError(xze)),this._resetState()},()=>{let{closingObserver:d}=this._config;d&&d.next(void 0),a.close(),this._resetState()}),C&&C instanceof Pc&&r.add(C.subscribe(this.destination))},a.onerror=s=>{this._resetState(),o.error(s)},a.onclose=s=>{a===this._socket&&this._resetState();let{closeObserver:l}=this._config;l&&l.next(s),s.wasClean?o.complete():o.error(s)},a.onmessage=s=>{try{let{deserializer:l}=this._config;o.next(l(s))}catch(l){o.error(l)}}}_subscribe(A){let{source:e}=this;return e?e.subscribe(A):(this._socket||this._connectSocket(),this._output.subscribe(A),A.add(()=>{let{_socket:i}=this;this._output.observers.length===0&&(i&&(i.readyState===1||i.readyState===0)&&i.close(),this._resetState())}),A)}unsubscribe(){let{_socket:A}=this;A&&(A.readyState===1||A.readyState===0)&&A.close(),this._resetState(),super.unsubscribe()}};var G7=class t{audioPlayingService=w(nh);socket$;messages$=new di("");audioBuffer=[];audioIntervalId=null;closeReasonSubject=new rA;connect(A){this.socket$=new Df({url:A,serializer:e=>JSON.stringify(e),deserializer:e=>e.data,closeObserver:{next:e=>{this.emitWsCloseReason(e.reason)}}}),this.socket$.subscribe(e=>{this.handleIncomingEvent(e)},e=>{console.error("WebSocket error:",e)}),this.audioIntervalId=setInterval(()=>this.playIncomingAudio(),250)}playIncomingAudio(){this.audioPlayingService.playAudio(this.audioBuffer),this.audioBuffer=[]}sendMessage(A){if(A.blob.data=this.arrayBufferToBase64(A.blob.data.buffer),!this.socket$||this.socket$.closed){console.error("WebSocket is not open.");return}this.socket$.next(A)}closeConnection(){clearInterval(this.audioIntervalId),this.audioIntervalId=null,this.socket$&&this.socket$.complete()}getMessages(){return this.messages$.asObservable()}arrayBufferToBase64(A){let e="",i=new Uint8Array(A),n=i.byteLength;for(let o=0;ot.json()).then(t=>{window.runtimeConfig=t,TJ(jE,{providers:[hJ(OJ,wn,JJ,d7,al,ir,Wi),{provide:Cl,useClass:k7},{provide:gl,useClass:Zu},{provide:G5,useClass:y7},{provide:oh,useClass:G7},{provide:o8,useValue:"./assets/audio-processor.js"},{provide:ih,useClass:Q7},{provide:nh,useClass:E7},{provide:b7,useClass:L7},{provide:n8,useClass:_7},{provide:A8,useClass:f7},{provide:u0,useClass:m7},{provide:eh,useClass:u7},{provide:Ah,useClass:p7},{provide:Qc,useClass:N7},{provide:Tr,useClass:w7},{provide:th,useClass:D7},{provide:xd,useClass:x7},{provide:ys,useClass:S7},{provide:t8,useClass:M7},{provide:YJ,useValue:jJ},{provide:PJ,useValue:Sce},{provide:x2,useValue:G2},...t.logo?[{provide:ah,useValue:B7}]:[],{provide:h0,useClass:h7},{provide:sD,useValue:Yg},$H(),YQ(),{provide:a8,useClass:e0},{provide:mc,useClass:F7},{provide:pc,useClass:R7}]}).catch(A=>console.error(A))});